aboutsummaryrefslogtreecommitdiff
path: root/docs/api/pl.treksoft.kvision.panel
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.panel
parentbafcdb6fc3f1d4ec4f1a0f4fcce776ba10d8136c (diff)
downloadkvision-4191287261b46b95908469c2ec3fa9d886681861.tar.gz
kvision-4191287261b46b95908469c2ec3fa9d886681861.tar.bz2
kvision-4191287261b46b95908469c2ec3fa9d886681861.zip
Updated API doc
Diffstat (limited to 'docs/api/pl.treksoft.kvision.panel')
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-dock-panel/-init-.html6
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-dock-panel/dock-panel.html16
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-dock-panel/index.html16
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-flex-panel/-init-.html6
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-flex-panel/index.html2
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-grid-panel/-init-.html6
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-grid-panel/grid-panel.html16
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-grid-panel/index.html16
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-h-panel/-init-.html6
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-h-panel/h-panel.html16
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-h-panel/index.html16
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-responsive-grid-panel/-init-.html6
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-responsive-grid-panel/index.html16
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-responsive-grid-panel/responsive-grid-panel.html16
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-root/-init-.html6
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-root/index.html2
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-simple-panel/-init-.html6
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-simple-panel/index.html25
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-simple-panel/simple-panel.html16
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-split-panel/-init-.html6
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-split-panel/index.html16
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-split-panel/split-panel.html16
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-stack-panel/-init-.html6
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-stack-panel/index.html16
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-stack-panel/stack-panel.html16
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-tab-panel/-init-.html6
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-tab-panel/index.html16
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-tab-panel/tab-panel.html16
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-v-panel/-init-.html6
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-v-panel/index.html16
-rw-r--r--docs/api/pl.treksoft.kvision.panel/-v-panel/v-panel.html16
31 files changed, 334 insertions, 33 deletions
diff --git a/docs/api/pl.treksoft.kvision.panel/-dock-panel/-init-.html b/docs/api/pl.treksoft.kvision.panel/-dock-panel/-init-.html
index 6df120b4..c58664d2 100644
--- a/docs/api/pl.treksoft.kvision.panel/-dock-panel/-init-.html
+++ b/docs/api/pl.treksoft.kvision.panel/-dock-panel/-init-.html
@@ -8,11 +8,13 @@
<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.panel</a>&nbsp;/&nbsp;<a href="index.html">DockPanel</a>&nbsp;/&nbsp;<a href="./-init-.html">&lt;init&gt;</a><br/>
<br/>
<h1>&lt;init&gt;</h1>
-<a name="pl.treksoft.kvision.panel.DockPanel$&lt;init&gt;(kotlin.collections.Set((kotlin.String)))"></a>
-<code><span class="identifier">DockPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.DockPanel$<init>(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.panel.DockPanel$&lt;init&gt;(kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.DockPanel, kotlin.Unit)))"></a>
+<code><span class="identifier">DockPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.DockPanel$<init>(kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.DockPanel, 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.panel.DockPanel$<init>(kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.DockPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">DockPanel</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="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.panel/-dock-panel/dock-panel.html b/docs/api/pl.treksoft.kvision.panel/-dock-panel/dock-panel.html
new file mode 100644
index 00000000..a62caffa
--- /dev/null
+++ b/docs/api/pl.treksoft.kvision.panel/-dock-panel/dock-panel.html
@@ -0,0 +1,16 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>DockPanel.dockPanel - 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.panel</a>&nbsp;/&nbsp;<a href="index.html">DockPanel</a>&nbsp;/&nbsp;<a href="./dock-panel.html">dockPanel</a><br/>
+<br/>
+<h1>dockPanel</h1>
+<a name="pl.treksoft.kvision.panel.DockPanel.Companion$dockPanel(pl.treksoft.kvision.core.Container, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.DockPanel, 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">dockPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.DockPanel.Companion$dockPanel(pl.treksoft.kvision.core.Container, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.DockPanel, 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.panel.DockPanel.Companion$dockPanel(pl.treksoft.kvision.core.Container, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.DockPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">DockPanel</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.panel/-dock-panel/index.html b/docs/api/pl.treksoft.kvision.panel/-dock-panel/index.html
index 5b24aa72..27a38726 100644
--- a/docs/api/pl.treksoft.kvision.panel/-dock-panel/index.html
+++ b/docs/api/pl.treksoft.kvision.panel/-dock-panel/index.html
@@ -18,7 +18,7 @@
<p><a href="-init-.html">&lt;init&gt;</a></p>
</td>
<td>
-<code><span class="identifier">DockPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.DockPanel$<init>(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">DockPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.DockPanel$<init>(kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.DockPanel, 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.panel.DockPanel$<init>(kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.DockPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">DockPanel</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>
@@ -115,5 +115,19 @@
</tr>
</tbody>
</table>
+<h3>Companion Object Functions</h3>
+<table>
+<tbody>
+<tr>
+<td>
+<p><a href="dock-panel.html">dockPanel</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">dockPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.DockPanel.Companion$dockPanel(pl.treksoft.kvision.core.Container, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.DockPanel, 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.panel.DockPanel.Companion$dockPanel(pl.treksoft.kvision.core.Container, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.DockPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">DockPanel</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.panel/-flex-panel/-init-.html b/docs/api/pl.treksoft.kvision.panel/-flex-panel/-init-.html
index df97a1d1..bdb29e3a 100644
--- a/docs/api/pl.treksoft.kvision.panel/-flex-panel/-init-.html
+++ b/docs/api/pl.treksoft.kvision.panel/-flex-panel/-init-.html
@@ -8,8 +8,8 @@
<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.panel</a>&nbsp;/&nbsp;<a href="index.html">FlexPanel</a>&nbsp;/&nbsp;<a href="./-init-.html">&lt;init&gt;</a><br/>
<br/>
<h1>&lt;init&gt;</h1>
-<a name="pl.treksoft.kvision.panel.FlexPanel$&lt;init&gt;(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)))"></a>
-<code><span class="identifier">FlexPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)))/direction">direction</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-d-i-r/index.html"><span class="identifier">FLEXDIR</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)))/wrap">wrap</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-w-r-a-p/index.html"><span class="identifier">FLEXWRAP</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)))/justify">justify</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-j-u-s-t-i-f-y/index.html"><span class="identifier">FLEXJUSTIFY</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)))/alignItems">alignItems</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-a-l-i-g-n-i-t-e-m-s/index.html"><span class="identifier">FLEXALIGNITEMS</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)))/alignContent">alignContent</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-a-l-i-g-n-c-o-n-t-e-n-t/index.html"><span class="identifier">FLEXALIGNCONTENT</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)))/spacing">spacing</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, 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.panel.FlexPanel$&lt;init&gt;(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.FlexPanel, kotlin.Unit)))"></a>
+<code><span class="identifier">FlexPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.FlexPanel, kotlin.Unit)))/direction">direction</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-d-i-r/index.html"><span class="identifier">FLEXDIR</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.FlexPanel, kotlin.Unit)))/wrap">wrap</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-w-r-a-p/index.html"><span class="identifier">FLEXWRAP</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.FlexPanel, kotlin.Unit)))/justify">justify</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-j-u-s-t-i-f-y/index.html"><span class="identifier">FLEXJUSTIFY</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.FlexPanel, kotlin.Unit)))/alignItems">alignItems</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-a-l-i-g-n-i-t-e-m-s/index.html"><span class="identifier">FLEXALIGNITEMS</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.FlexPanel, kotlin.Unit)))/alignContent">alignContent</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-a-l-i-g-n-c-o-n-t-e-n-t/index.html"><span class="identifier">FLEXALIGNCONTENT</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.FlexPanel, kotlin.Unit)))/spacing">spacing</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.FlexPanel, 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.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.FlexPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">FlexPanel</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="direction"></a>
<code>direction</code> - flexbox direction</p>
@@ -25,6 +25,8 @@
<code>spacing</code> - spacing between columns/rows</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.panel/-flex-panel/index.html b/docs/api/pl.treksoft.kvision.panel/-flex-panel/index.html
index dff9a6e2..797d59a3 100644
--- a/docs/api/pl.treksoft.kvision.panel/-flex-panel/index.html
+++ b/docs/api/pl.treksoft.kvision.panel/-flex-panel/index.html
@@ -18,7 +18,7 @@
<p><a href="-init-.html">&lt;init&gt;</a></p>
</td>
<td>
-<code><span class="identifier">FlexPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)))/direction">direction</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-d-i-r/index.html"><span class="identifier">FLEXDIR</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)))/wrap">wrap</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-w-r-a-p/index.html"><span class="identifier">FLEXWRAP</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)))/justify">justify</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-j-u-s-t-i-f-y/index.html"><span class="identifier">FLEXJUSTIFY</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)))/alignItems">alignItems</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-a-l-i-g-n-i-t-e-m-s/index.html"><span class="identifier">FLEXALIGNITEMS</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)))/alignContent">alignContent</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-a-l-i-g-n-c-o-n-t-e-n-t/index.html"><span class="identifier">FLEXALIGNCONTENT</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)))/spacing">spacing</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, 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">FlexPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.FlexPanel, kotlin.Unit)))/direction">direction</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-d-i-r/index.html"><span class="identifier">FLEXDIR</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.FlexPanel, kotlin.Unit)))/wrap">wrap</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-w-r-a-p/index.html"><span class="identifier">FLEXWRAP</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.FlexPanel, kotlin.Unit)))/justify">justify</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-j-u-s-t-i-f-y/index.html"><span class="identifier">FLEXJUSTIFY</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.FlexPanel, kotlin.Unit)))/alignItems">alignItems</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-a-l-i-g-n-i-t-e-m-s/index.html"><span class="identifier">FLEXALIGNITEMS</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.FlexPanel, kotlin.Unit)))/alignContent">alignContent</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-a-l-i-g-n-c-o-n-t-e-n-t/index.html"><span class="identifier">FLEXALIGNCONTENT</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.FlexPanel, kotlin.Unit)))/spacing">spacing</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.FlexPanel, 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.panel.FlexPanel$<init>(pl.treksoft.kvision.panel.FLEXDIR, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, pl.treksoft.kvision.panel.FLEXALIGNCONTENT, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.FlexPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">FlexPanel</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>
diff --git a/docs/api/pl.treksoft.kvision.panel/-grid-panel/-init-.html b/docs/api/pl.treksoft.kvision.panel/-grid-panel/-init-.html
index a845560e..afd18444 100644
--- a/docs/api/pl.treksoft.kvision.panel/-grid-panel/-init-.html
+++ b/docs/api/pl.treksoft.kvision.panel/-grid-panel/-init-.html
@@ -8,8 +8,8 @@
<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.panel</a>&nbsp;/&nbsp;<a href="index.html">GridPanel</a>&nbsp;/&nbsp;<a href="./-init-.html">&lt;init&gt;</a><br/>
<br/>
<h1>&lt;init&gt;</h1>
-<a name="pl.treksoft.kvision.panel.GridPanel$&lt;init&gt;(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))"></a>
-<code><span class="identifier">GridPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/autoColumns">autoColumns</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.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/autoRows">autoRows</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.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/autoFlow">autoFlow</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-f-l-o-w/index.html"><span class="identifier">GRIDFLOW</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/templateColumns">templateColumns</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.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/templateRows">templateRows</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.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/templateAreas">templateAreas</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.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/columnGap">columnGap</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/rowGap">rowGap</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/justifyItems">justifyItems</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-j-u-s-t-i-f-y/index.html"><span class="identifier">GRIDJUSTIFY</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/alignItems">alignItems</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-a-l-i-g-n/index.html"><span class="identifier">GRIDALIGN</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/justifyContent">justifyContent</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-j-u-s-t-i-f-y-c-o-n-t-e-n-t/index.html"><span class="identifier">GRIDJUSTIFYCONTENT</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/alignContent">alignContent</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-a-l-i-g-n-c-o-n-t-e-n-t/index.html"><span class="identifier">GRIDALIGNCONTENT</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, 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.panel.GridPanel$&lt;init&gt;(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))"></a>
+<code><span class="identifier">GridPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/autoColumns">autoColumns</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.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/autoRows">autoRows</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.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/autoFlow">autoFlow</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-f-l-o-w/index.html"><span class="identifier">GRIDFLOW</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/templateColumns">templateColumns</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.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/templateRows">templateRows</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.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/templateAreas">templateAreas</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.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/columnGap">columnGap</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/rowGap">rowGap</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/justifyItems">justifyItems</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-j-u-s-t-i-f-y/index.html"><span class="identifier">GRIDJUSTIFY</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/alignItems">alignItems</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-a-l-i-g-n/index.html"><span class="identifier">GRIDALIGN</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/justifyContent">justifyContent</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-j-u-s-t-i-f-y-c-o-n-t-e-n-t/index.html"><span class="identifier">GRIDJUSTIFYCONTENT</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/alignContent">alignContent</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-a-l-i-g-n-c-o-n-t-e-n-t/index.html"><span class="identifier">GRIDALIGNCONTENT</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, 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.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">GridPanel</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="autoColumns"></a>
<code>autoColumns</code> - grid auto columns</p>
@@ -37,6 +37,8 @@
<code>alignContent</code> - flexbox content alignment</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.panel/-grid-panel/grid-panel.html b/docs/api/pl.treksoft.kvision.panel/-grid-panel/grid-panel.html
new file mode 100644
index 00000000..2984b1c1
--- /dev/null
+++ b/docs/api/pl.treksoft.kvision.panel/-grid-panel/grid-panel.html
@@ -0,0 +1,16 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>GridPanel.gridPanel - 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.panel</a>&nbsp;/&nbsp;<a href="index.html">GridPanel</a>&nbsp;/&nbsp;<a href="./grid-panel.html">gridPanel</a><br/>
+<br/>
+<h1>gridPanel</h1>
+<a name="pl.treksoft.kvision.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, 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">gridPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/autoColumns">autoColumns</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.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/autoRows">autoRows</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.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/autoFlow">autoFlow</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-f-l-o-w/index.html"><span class="identifier">GRIDFLOW</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/templateColumns">templateColumns</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.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/templateRows">templateRows</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.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/templateAreas">templateAreas</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.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/columnGap">columnGap</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/rowGap">rowGap</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/justifyItems">justifyItems</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-j-u-s-t-i-f-y/index.html"><span class="identifier">GRIDJUSTIFY</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/alignItems">alignItems</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-a-l-i-g-n/index.html"><span class="identifier">GRIDALIGN</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/justifyContent">justifyContent</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-j-u-s-t-i-f-y-c-o-n-t-e-n-t/index.html"><span class="identifier">GRIDJUSTIFYCONTENT</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/alignContent">alignContent</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-a-l-i-g-n-c-o-n-t-e-n-t/index.html"><span class="identifier">GRIDALIGNCONTENT</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, 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.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">GridPanel</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.panel/-grid-panel/index.html b/docs/api/pl.treksoft.kvision.panel/-grid-panel/index.html
index 1dadb4ac..5939efd0 100644
--- a/docs/api/pl.treksoft.kvision.panel/-grid-panel/index.html
+++ b/docs/api/pl.treksoft.kvision.panel/-grid-panel/index.html
@@ -18,7 +18,7 @@
<p><a href="-init-.html">&lt;init&gt;</a></p>
</td>
<td>
-<code><span class="identifier">GridPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/autoColumns">autoColumns</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.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/autoRows">autoRows</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.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/autoFlow">autoFlow</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-f-l-o-w/index.html"><span class="identifier">GRIDFLOW</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/templateColumns">templateColumns</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.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/templateRows">templateRows</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.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/templateAreas">templateAreas</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.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/columnGap">columnGap</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/rowGap">rowGap</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/justifyItems">justifyItems</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-j-u-s-t-i-f-y/index.html"><span class="identifier">GRIDJUSTIFY</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/alignItems">alignItems</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-a-l-i-g-n/index.html"><span class="identifier">GRIDALIGN</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/justifyContent">justifyContent</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-j-u-s-t-i-f-y-c-o-n-t-e-n-t/index.html"><span class="identifier">GRIDJUSTIFYCONTENT</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)))/alignContent">alignContent</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-a-l-i-g-n-c-o-n-t-e-n-t/index.html"><span class="identifier">GRIDALIGNCONTENT</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, 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">GridPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/autoColumns">autoColumns</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.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/autoRows">autoRows</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.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/autoFlow">autoFlow</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-f-l-o-w/index.html"><span class="identifier">GRIDFLOW</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/templateColumns">templateColumns</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.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/templateRows">templateRows</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.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/templateAreas">templateAreas</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.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/columnGap">columnGap</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/rowGap">rowGap</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/justifyItems">justifyItems</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-j-u-s-t-i-f-y/index.html"><span class="identifier">GRIDJUSTIFY</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/alignItems">alignItems</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-a-l-i-g-n/index.html"><span class="identifier">GRIDALIGN</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/justifyContent">justifyContent</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-j-u-s-t-i-f-y-c-o-n-t-e-n-t/index.html"><span class="identifier">GRIDJUSTIFYCONTENT</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/alignContent">alignContent</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-a-l-i-g-n-c-o-n-t-e-n-t/index.html"><span class="identifier">GRIDALIGNCONTENT</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, 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.panel.GridPanel$<init>(kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">GridPanel</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>
@@ -228,5 +228,19 @@
</tr>
</tbody>
</table>
+<h3>Companion Object Functions</h3>
+<table>
+<tbody>
+<tr>
+<td>
+<p><a href="grid-panel.html">gridPanel</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">gridPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/autoColumns">autoColumns</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.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/autoRows">autoRows</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.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/autoFlow">autoFlow</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-f-l-o-w/index.html"><span class="identifier">GRIDFLOW</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/templateColumns">templateColumns</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.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/templateRows">templateRows</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.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/templateAreas">templateAreas</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.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/columnGap">columnGap</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/rowGap">rowGap</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/justifyItems">justifyItems</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-j-u-s-t-i-f-y/index.html"><span class="identifier">GRIDJUSTIFY</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/alignItems">alignItems</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-a-l-i-g-n/index.html"><span class="identifier">GRIDALIGN</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/justifyContent">justifyContent</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-j-u-s-t-i-f-y-c-o-n-t-e-n-t/index.html"><span class="identifier">GRIDJUSTIFYCONTENT</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/alignContent">alignContent</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-a-l-i-g-n-c-o-n-t-e-n-t/index.html"><span class="identifier">GRIDALIGNCONTENT</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, 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.panel.GridPanel.Companion$gridPanel(pl.treksoft.kvision.core.Container, kotlin.String, kotlin.String, pl.treksoft.kvision.panel.GRIDFLOW, kotlin.String, kotlin.String, kotlin.collections.List((kotlin.String)), kotlin.Int, kotlin.Int, pl.treksoft.kvision.panel.GRIDJUSTIFY, pl.treksoft.kvision.panel.GRIDALIGN, pl.treksoft.kvision.panel.GRIDJUSTIFYCONTENT, pl.treksoft.kvision.panel.GRIDALIGNCONTENT, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.GridPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">GridPanel</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.panel/-h-panel/-init-.html b/docs/api/pl.treksoft.kvision.panel/-h-panel/-init-.html
index c8658fcd..373f80b1 100644
--- a/docs/api/pl.treksoft.kvision.panel/-h-panel/-init-.html
+++ b/docs/api/pl.treksoft.kvision.panel/-h-panel/-init-.html
@@ -8,8 +8,8 @@
<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.panel</a>&nbsp;/&nbsp;<a href="index.html">HPanel</a>&nbsp;/&nbsp;<a href="./-init-.html">&lt;init&gt;</a><br/>
<br/>
<h1>&lt;init&gt;</h1>
-<a name="pl.treksoft.kvision.panel.HPanel$&lt;init&gt;(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)))"></a>
-<code><span class="identifier">HPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel$<init>(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)))/wrap">wrap</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-w-r-a-p/index.html"><span class="identifier">FLEXWRAP</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel$<init>(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)))/justify">justify</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-j-u-s-t-i-f-y/index.html"><span class="identifier">FLEXJUSTIFY</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel$<init>(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)))/alignItems">alignItems</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-a-l-i-g-n-i-t-e-m-s/index.html"><span class="identifier">FLEXALIGNITEMS</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel$<init>(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)))/spacing">spacing</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel$<init>(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, 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.panel.HPanel$&lt;init&gt;(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, kotlin.Unit)))"></a>
+<code><span class="identifier">HPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel$<init>(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, kotlin.Unit)))/wrap">wrap</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-w-r-a-p/index.html"><span class="identifier">FLEXWRAP</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel$<init>(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, kotlin.Unit)))/justify">justify</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-j-u-s-t-i-f-y/index.html"><span class="identifier">FLEXJUSTIFY</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel$<init>(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, kotlin.Unit)))/alignItems">alignItems</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-a-l-i-g-n-i-t-e-m-s/index.html"><span class="identifier">FLEXALIGNITEMS</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel$<init>(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, kotlin.Unit)))/spacing">spacing</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel$<init>(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, 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.panel.HPanel$<init>(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">HPanel</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="wrap"></a>
<code>wrap</code> - flexbox wrap</p>
@@ -21,6 +21,8 @@
<code>spacing</code> - spacing between columns/rows</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.panel/-h-panel/h-panel.html b/docs/api/pl.treksoft.kvision.panel/-h-panel/h-panel.html
new file mode 100644
index 00000000..0f720a56
--- /dev/null
+++ b/docs/api/pl.treksoft.kvision.panel/-h-panel/h-panel.html
@@ -0,0 +1,16 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>HPanel.hPanel - 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.panel</a>&nbsp;/&nbsp;<a href="index.html">HPanel</a>&nbsp;/&nbsp;<a href="./h-panel.html">hPanel</a><br/>
+<br/>
+<h1>hPanel</h1>
+<a name="pl.treksoft.kvision.panel.HPanel.Companion$hPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, 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">hPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel.Companion$hPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, kotlin.Unit)))/wrap">wrap</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-w-r-a-p/index.html"><span class="identifier">FLEXWRAP</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel.Companion$hPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, kotlin.Unit)))/justify">justify</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-j-u-s-t-i-f-y/index.html"><span class="identifier">FLEXJUSTIFY</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel.Companion$hPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, kotlin.Unit)))/alignItems">alignItems</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-a-l-i-g-n-i-t-e-m-s/index.html"><span class="identifier">FLEXALIGNITEMS</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel.Companion$hPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, kotlin.Unit)))/spacing">spacing</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel.Companion$hPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, 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.panel.HPanel.Companion$hPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">HPanel</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.panel/-h-panel/index.html b/docs/api/pl.treksoft.kvision.panel/-h-panel/index.html
index 957eddbc..47b5c322 100644
--- a/docs/api/pl.treksoft.kvision.panel/-h-panel/index.html
+++ b/docs/api/pl.treksoft.kvision.panel/-h-panel/index.html
@@ -19,7 +19,7 @@
<p><a href="-init-.html">&lt;init&gt;</a></p>
</td>
<td>
-<code><span class="identifier">HPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel$<init>(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)))/wrap">wrap</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-w-r-a-p/index.html"><span class="identifier">FLEXWRAP</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel$<init>(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)))/justify">justify</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-j-u-s-t-i-f-y/index.html"><span class="identifier">FLEXJUSTIFY</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel$<init>(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)))/alignItems">alignItems</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-a-l-i-g-n-i-t-e-m-s/index.html"><span class="identifier">FLEXALIGNITEMS</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel$<init>(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)))/spacing">spacing</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel$<init>(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, 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">HPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel$<init>(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, kotlin.Unit)))/wrap">wrap</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-w-r-a-p/index.html"><span class="identifier">FLEXWRAP</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel$<init>(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, kotlin.Unit)))/justify">justify</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-j-u-s-t-i-f-y/index.html"><span class="identifier">FLEXJUSTIFY</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel$<init>(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, kotlin.Unit)))/alignItems">alignItems</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-a-l-i-g-n-i-t-e-m-s/index.html"><span class="identifier">FLEXALIGNITEMS</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel$<init>(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, kotlin.Unit)))/spacing">spacing</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel$<init>(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, 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.panel.HPanel$<init>(pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">HPanel</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>
@@ -134,5 +134,19 @@
</tr>
</tbody>
</table>
+<h3>Companion Object Functions</h3>
+<table>
+<tbody>
+<tr>
+<td>
+<p><a href="h-panel.html">hPanel</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">hPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel.Companion$hPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, kotlin.Unit)))/wrap">wrap</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-w-r-a-p/index.html"><span class="identifier">FLEXWRAP</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel.Companion$hPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, kotlin.Unit)))/justify">justify</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-j-u-s-t-i-f-y/index.html"><span class="identifier">FLEXJUSTIFY</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel.Companion$hPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, kotlin.Unit)))/alignItems">alignItems</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-a-l-i-g-n-i-t-e-m-s/index.html"><span class="identifier">FLEXALIGNITEMS</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel.Companion$hPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, kotlin.Unit)))/spacing">spacing</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.HPanel.Companion$hPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, 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.panel.HPanel.Companion$hPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXWRAP, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.HPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">HPanel</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.panel/-responsive-grid-panel/-init-.html b/docs/api/pl.treksoft.kvision.panel/-responsive-grid-panel/-init-.html
index 212c6111..dd06bab3 100644
--- a/docs/api/pl.treksoft.kvision.panel/-responsive-grid-panel/-init-.html
+++ b/docs/api/pl.treksoft.kvision.panel/-responsive-grid-panel/-init-.html
@@ -8,8 +8,8 @@
<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.panel</a>&nbsp;/&nbsp;<a href="index.html">ResponsiveGridPanel</a>&nbsp;/&nbsp;<a href="./-init-.html">&lt;init&gt;</a><br/>
<br/>
<h1>&lt;init&gt;</h1>
-<a name="pl.treksoft.kvision.panel.ResponsiveGridPanel$&lt;init&gt;(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)))"></a>
-<code><span class="identifier">ResponsiveGridPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel$<init>(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)))/gridsize">gridsize</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-s-i-z-e/index.html"><span class="identifier">GRIDSIZE</span></a>&nbsp;<span class="symbol">=</span>&nbsp;GRIDSIZE.MD<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel$<init>(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)))/rows">rows</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a>&nbsp;<span class="symbol">=</span>&nbsp;0<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel$<init>(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)))/cols">cols</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a>&nbsp;<span class="symbol">=</span>&nbsp;0<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel$<init>(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)))/align">align</span><span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.html/-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.panel.ResponsiveGridPanel$<init>(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, 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.panel.ResponsiveGridPanel$&lt;init&gt;(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, kotlin.Unit)))"></a>
+<code><span class="identifier">ResponsiveGridPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel$<init>(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, kotlin.Unit)))/gridsize">gridsize</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-s-i-z-e/index.html"><span class="identifier">GRIDSIZE</span></a>&nbsp;<span class="symbol">=</span>&nbsp;GRIDSIZE.MD<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel$<init>(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, kotlin.Unit)))/rows">rows</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a>&nbsp;<span class="symbol">=</span>&nbsp;0<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel$<init>(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, kotlin.Unit)))/cols">cols</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a>&nbsp;<span class="symbol">=</span>&nbsp;0<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel$<init>(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, kotlin.Unit)))/align">align</span><span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.html/-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.panel.ResponsiveGridPanel$<init>(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, 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.panel.ResponsiveGridPanel$<init>(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">ResponsiveGridPanel</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="gridsize"></a>
<code>gridsize</code> - grid size</p>
@@ -21,6 +21,8 @@
<code>align</code> - text align of grid cells</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.panel/-responsive-grid-panel/index.html b/docs/api/pl.treksoft.kvision.panel/-responsive-grid-panel/index.html
index 6939014c..c4dd0165 100644
--- a/docs/api/pl.treksoft.kvision.panel/-responsive-grid-panel/index.html
+++ b/docs/api/pl.treksoft.kvision.panel/-responsive-grid-panel/index.html
@@ -18,7 +18,7 @@
<p><a href="-init-.html">&lt;init&gt;</a></p>
</td>
<td>
-<code><span class="identifier">ResponsiveGridPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel$<init>(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)))/gridsize">gridsize</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-s-i-z-e/index.html"><span class="identifier">GRIDSIZE</span></a>&nbsp;<span class="symbol">=</span>&nbsp;GRIDSIZE.MD<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel$<init>(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)))/rows">rows</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a>&nbsp;<span class="symbol">=</span>&nbsp;0<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel$<init>(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)))/cols">cols</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a>&nbsp;<span class="symbol">=</span>&nbsp;0<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel$<init>(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)))/align">align</span><span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.html/-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.panel.ResponsiveGridPanel$<init>(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, 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">ResponsiveGridPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel$<init>(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, kotlin.Unit)))/gridsize">gridsize</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-s-i-z-e/index.html"><span class="identifier">GRIDSIZE</span></a>&nbsp;<span class="symbol">=</span>&nbsp;GRIDSIZE.MD<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel$<init>(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, kotlin.Unit)))/rows">rows</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a>&nbsp;<span class="symbol">=</span>&nbsp;0<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel$<init>(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, kotlin.Unit)))/cols">cols</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a>&nbsp;<span class="symbol">=</span>&nbsp;0<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel$<init>(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, kotlin.Unit)))/align">align</span><span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.html/-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.panel.ResponsiveGridPanel$<init>(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, 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.panel.ResponsiveGridPanel$<init>(pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">ResponsiveGridPanel</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>
@@ -129,5 +129,19 @@
</tr>
</tbody>
</table>
+<h3>Companion Object Functions</h3>
+<table>
+<tbody>
+<tr>
+<td>
+<p><a href="responsive-grid-panel.html">responsiveGridPanel</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">responsiveGridPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel.Companion$responsiveGridPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, kotlin.Unit)))/gridsize">gridsize</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-s-i-z-e/index.html"><span class="identifier">GRIDSIZE</span></a>&nbsp;<span class="symbol">=</span>&nbsp;GRIDSIZE.MD<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel.Companion$responsiveGridPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, kotlin.Unit)))/rows">rows</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a>&nbsp;<span class="symbol">=</span>&nbsp;0<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel.Companion$responsiveGridPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, kotlin.Unit)))/cols">cols</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a>&nbsp;<span class="symbol">=</span>&nbsp;0<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel.Companion$responsiveGridPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, kotlin.Unit)))/align">align</span><span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.html/-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.panel.ResponsiveGridPanel.Companion$responsiveGridPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, 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.panel.ResponsiveGridPanel.Companion$responsiveGridPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">ResponsiveGridPanel</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.panel/-responsive-grid-panel/responsive-grid-panel.html b/docs/api/pl.treksoft.kvision.panel/-responsive-grid-panel/responsive-grid-panel.html
new file mode 100644
index 00000000..18af1202
--- /dev/null
+++ b/docs/api/pl.treksoft.kvision.panel/-responsive-grid-panel/responsive-grid-panel.html
@@ -0,0 +1,16 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>ResponsiveGridPanel.responsiveGridPanel - 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.panel</a>&nbsp;/&nbsp;<a href="index.html">ResponsiveGridPanel</a>&nbsp;/&nbsp;<a href="./responsive-grid-panel.html">responsiveGridPanel</a><br/>
+<br/>
+<h1>responsiveGridPanel</h1>
+<a name="pl.treksoft.kvision.panel.ResponsiveGridPanel.Companion$responsiveGridPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, 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">responsiveGridPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel.Companion$responsiveGridPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, kotlin.Unit)))/gridsize">gridsize</span><span class="symbol">:</span>&nbsp;<a href="../-g-r-i-d-s-i-z-e/index.html"><span class="identifier">GRIDSIZE</span></a>&nbsp;<span class="symbol">=</span>&nbsp;GRIDSIZE.MD<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel.Companion$responsiveGridPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, kotlin.Unit)))/rows">rows</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a>&nbsp;<span class="symbol">=</span>&nbsp;0<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel.Companion$responsiveGridPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, kotlin.Unit)))/cols">cols</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a>&nbsp;<span class="symbol">=</span>&nbsp;0<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.ResponsiveGridPanel.Companion$responsiveGridPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, kotlin.Unit)))/align">align</span><span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.html/-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.panel.ResponsiveGridPanel.Companion$responsiveGridPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, 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.panel.ResponsiveGridPanel.Companion$responsiveGridPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.GRIDSIZE, kotlin.Int, kotlin.Int, pl.treksoft.kvision.html.ALIGN, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.ResponsiveGridPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">ResponsiveGridPanel</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.panel/-root/-init-.html b/docs/api/pl.treksoft.kvision.panel/-root/-init-.html
index bdefb012..9250bc87 100644
--- a/docs/api/pl.treksoft.kvision.panel/-root/-init-.html
+++ b/docs/api/pl.treksoft.kvision.panel/-root/-init-.html
@@ -8,14 +8,16 @@
<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.panel</a>&nbsp;/&nbsp;<a href="index.html">Root</a>&nbsp;/&nbsp;<a href="./-init-.html">&lt;init&gt;</a><br/>
<br/>
<h1>&lt;init&gt;</h1>
-<a name="pl.treksoft.kvision.panel.Root$&lt;init&gt;(kotlin.String, kotlin.Boolean)"></a>
-<code><span class="identifier">Root</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.Root$<init>(kotlin.String, kotlin.Boolean)/id">id</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.panel.Root$<init>(kotlin.String, kotlin.Boolean)/fixed">fixed</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></code>
+<a name="pl.treksoft.kvision.panel.Root$&lt;init&gt;(kotlin.String, kotlin.Boolean, kotlin.Function1((pl.treksoft.kvision.panel.Root, kotlin.Unit)))"></a>
+<code><span class="identifier">Root</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.Root$<init>(kotlin.String, kotlin.Boolean, kotlin.Function1((pl.treksoft.kvision.panel.Root, kotlin.Unit)))/id">id</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.panel.Root$<init>(kotlin.String, kotlin.Boolean, kotlin.Function1((pl.treksoft.kvision.panel.Root, kotlin.Unit)))/fixed">fixed</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.panel.Root$<init>(kotlin.String, kotlin.Boolean, kotlin.Function1((pl.treksoft.kvision.panel.Root, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">Root</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="id"></a>
<code>id</code> - ID attribute of element in the main HTML file</p>
<p><a name="fixed"></a>
<code>fixed</code> - if false, the container is rendered with Bootstrap "container-fluid" class,
otherwise it's rendered with "container" class (default is false)</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.panel/-root/index.html b/docs/api/pl.treksoft.kvision.panel/-root/index.html
index 72570a47..6b8debb7 100644
--- a/docs/api/pl.treksoft.kvision.panel/-root/index.html
+++ b/docs/api/pl.treksoft.kvision.panel/-root/index.html
@@ -21,7 +21,7 @@ Snabbdom virtual DOM.</p>
<p><a href="-init-.html">&lt;init&gt;</a></p>
</td>
<td>
-<code><span class="identifier">Root</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.Root$<init>(kotlin.String, kotlin.Boolean)/id">id</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.panel.Root$<init>(kotlin.String, kotlin.Boolean)/fixed">fixed</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></code></td>
+<code><span class="identifier">Root</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.Root$<init>(kotlin.String, kotlin.Boolean, kotlin.Function1((pl.treksoft.kvision.panel.Root, kotlin.Unit)))/id">id</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.panel.Root$<init>(kotlin.String, kotlin.Boolean, kotlin.Function1((pl.treksoft.kvision.panel.Root, kotlin.Unit)))/fixed">fixed</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.panel.Root$<init>(kotlin.String, kotlin.Boolean, kotlin.Function1((pl.treksoft.kvision.panel.Root, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">Root</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>
diff --git a/docs/api/pl.treksoft.kvision.panel/-simple-panel/-init-.html b/docs/api/pl.treksoft.kvision.panel/-simple-panel/-init-.html
index a5c6b2b7..30e86dd0 100644
--- a/docs/api/pl.treksoft.kvision.panel/-simple-panel/-init-.html
+++ b/docs/api/pl.treksoft.kvision.panel/-simple-panel/-init-.html
@@ -8,11 +8,13 @@
<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.panel</a>&nbsp;/&nbsp;<a href="index.html">SimplePanel</a>&nbsp;/&nbsp;<a href="./-init-.html">&lt;init&gt;</a><br/>
<br/>
<h1>&lt;init&gt;</h1>
-<a name="pl.treksoft.kvision.panel.SimplePanel$&lt;init&gt;(kotlin.collections.Set((kotlin.String)))"></a>
-<code><span class="identifier">SimplePanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.SimplePanel$<init>(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.panel.SimplePanel$&lt;init&gt;(kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SimplePanel, kotlin.Unit)))"></a>
+<code><span class="identifier">SimplePanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.SimplePanel$<init>(kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SimplePanel, 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.panel.SimplePanel$<init>(kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SimplePanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">SimplePanel</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="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.panel/-simple-panel/index.html b/docs/api/pl.treksoft.kvision.panel/-simple-panel/index.html
index 62847644..404f707b 100644
--- a/docs/api/pl.treksoft.kvision.panel/-simple-panel/index.html
+++ b/docs/api/pl.treksoft.kvision.panel/-simple-panel/index.html
@@ -18,7 +18,7 @@
<p><a href="-init-.html">&lt;init&gt;</a></p>
</td>
<td>
-<code><span class="identifier">SimplePanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.SimplePanel$<init>(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">SimplePanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.SimplePanel$<init>(kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SimplePanel, 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.panel.SimplePanel$<init>(kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SimplePanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">SimplePanel</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>
@@ -280,6 +280,15 @@
</tr>
<tr>
<td>
+<p><a href="../../pl.treksoft.kvision.core/-container/invoke.html">invoke</a></p>
+</td>
+<td>
+<code><span class="keyword">open</span> <span class="keyword">operator</span> <span class="keyword">fun </span><span class="identifier">invoke</span><span class="symbol">(</span><span class="keyword">vararg</span> <span class="identifier" id="pl.treksoft.kvision.core.Container$invoke(kotlin.Array((pl.treksoft.kvision.core.Component)))/children">children</span><span class="symbol">:</span>&nbsp;<a href="../../pl.treksoft.kvision.core/-component/index.html"><span class="identifier">Component</span></a><span class="symbol">)</span><span class="symbol">: </span><a href="../../pl.treksoft.kvision.core/-container/index.html"><span class="identifier">Container</span></a></code>
+<p>Operator function for adding children in a DSL style.</p>
+</td>
+</tr>
+<tr>
+<td>
<p><a href="../../pl.treksoft.kvision.core/-widget/remove-css-class.html">removeCssClass</a></p>
</td>
<td>
@@ -346,6 +355,20 @@
</tr>
</tbody>
</table>
+<h3>Companion Object Functions</h3>
+<table>
+<tbody>
+<tr>
+<td>
+<p><a href="simple-panel.html">simplePanel</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">simplePanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.SimplePanel.Companion$simplePanel(pl.treksoft.kvision.core.Container, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SimplePanel, 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.panel.SimplePanel.Companion$simplePanel(pl.treksoft.kvision.core.Container, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SimplePanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">SimplePanel</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.panel/-simple-panel/simple-panel.html b/docs/api/pl.treksoft.kvision.panel/-simple-panel/simple-panel.html
new file mode 100644
index 00000000..0597a11f
--- /dev/null
+++ b/docs/api/pl.treksoft.kvision.panel/-simple-panel/simple-panel.html
@@ -0,0 +1,16 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>SimplePanel.simplePanel - 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.panel</a>&nbsp;/&nbsp;<a href="index.html">SimplePanel</a>&nbsp;/&nbsp;<a href="./simple-panel.html">simplePanel</a><br/>
+<br/>
+<h1>simplePanel</h1>
+<a name="pl.treksoft.kvision.panel.SimplePanel.Companion$simplePanel(pl.treksoft.kvision.core.Container, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SimplePanel, 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">simplePanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.SimplePanel.Companion$simplePanel(pl.treksoft.kvision.core.Container, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SimplePanel, 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.panel.SimplePanel.Companion$simplePanel(pl.treksoft.kvision.core.Container, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SimplePanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">SimplePanel</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.panel/-split-panel/-init-.html b/docs/api/pl.treksoft.kvision.panel/-split-panel/-init-.html
index 7795464c..a9db59f4 100644
--- a/docs/api/pl.treksoft.kvision.panel/-split-panel/-init-.html
+++ b/docs/api/pl.treksoft.kvision.panel/-split-panel/-init-.html
@@ -8,13 +8,15 @@
<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.panel</a>&nbsp;/&nbsp;<a href="index.html">SplitPanel</a>&nbsp;/&nbsp;<a href="./-init-.html">&lt;init&gt;</a><br/>
<br/>
<h1>&lt;init&gt;</h1>
-<a name="pl.treksoft.kvision.panel.SplitPanel$&lt;init&gt;(pl.treksoft.kvision.panel.DIRECTION, kotlin.collections.Set((kotlin.String)))"></a>
-<code><span class="identifier">SplitPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.SplitPanel$<init>(pl.treksoft.kvision.panel.DIRECTION, kotlin.collections.Set((kotlin.String)))/direction">direction</span><span class="symbol">:</span>&nbsp;<a href="../-d-i-r-e-c-t-i-o-n/index.html"><span class="identifier">DIRECTION</span></a>&nbsp;<span class="symbol">=</span>&nbsp;DIRECTION.VERTICAL<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.SplitPanel$<init>(pl.treksoft.kvision.panel.DIRECTION, 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.panel.SplitPanel$&lt;init&gt;(pl.treksoft.kvision.panel.DIRECTION, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SplitPanel, kotlin.Unit)))"></a>
+<code><span class="identifier">SplitPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.SplitPanel$<init>(pl.treksoft.kvision.panel.DIRECTION, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SplitPanel, kotlin.Unit)))/direction">direction</span><span class="symbol">:</span>&nbsp;<a href="../-d-i-r-e-c-t-i-o-n/index.html"><span class="identifier">DIRECTION</span></a>&nbsp;<span class="symbol">=</span>&nbsp;DIRECTION.VERTICAL<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.SplitPanel$<init>(pl.treksoft.kvision.panel.DIRECTION, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SplitPanel, 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.panel.SplitPanel$<init>(pl.treksoft.kvision.panel.DIRECTION, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SplitPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">SplitPanel</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="direction"></a>
<code>direction</code> - direction of the splitter</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.panel/-split-panel/index.html b/docs/api/pl.treksoft.kvision.panel/-split-panel/index.html
index a619c945..0c74018b 100644
--- a/docs/api/pl.treksoft.kvision.panel/-split-panel/index.html
+++ b/docs/api/pl.treksoft.kvision.panel/-split-panel/index.html
@@ -20,7 +20,7 @@ rendered as empty.</p>
<p><a href="-init-.html">&lt;init&gt;</a></p>
</td>
<td>
-<code><span class="identifier">SplitPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.SplitPanel$<init>(pl.treksoft.kvision.panel.DIRECTION, kotlin.collections.Set((kotlin.String)))/direction">direction</span><span class="symbol">:</span>&nbsp;<a href="../-d-i-r-e-c-t-i-o-n/index.html"><span class="identifier">DIRECTION</span></a>&nbsp;<span class="symbol">=</span>&nbsp;DIRECTION.VERTICAL<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.SplitPanel$<init>(pl.treksoft.kvision.panel.DIRECTION, 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">SplitPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.SplitPanel$<init>(pl.treksoft.kvision.panel.DIRECTION, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SplitPanel, kotlin.Unit)))/direction">direction</span><span class="symbol">:</span>&nbsp;<a href="../-d-i-r-e-c-t-i-o-n/index.html"><span class="identifier">DIRECTION</span></a>&nbsp;<span class="symbol">=</span>&nbsp;DIRECTION.VERTICAL<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.SplitPanel$<init>(pl.treksoft.kvision.panel.DIRECTION, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SplitPanel, 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.panel.SplitPanel$<init>(pl.treksoft.kvision.panel.DIRECTION, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SplitPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">SplitPanel</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>
@@ -106,5 +106,19 @@ rendered as empty.</p>
</tr>
</tbody>
</table>
+<h3>Companion Object Functions</h3>
+<table>
+<tbody>
+<tr>
+<td>
+<p><a href="split-panel.html">splitPanel</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">splitPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.SplitPanel.Companion$splitPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.DIRECTION, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SplitPanel, kotlin.Unit)))/direction">direction</span><span class="symbol">:</span>&nbsp;<a href="../-d-i-r-e-c-t-i-o-n/index.html"><span class="identifier">DIRECTION</span></a>&nbsp;<span class="symbol">=</span>&nbsp;DIRECTION.VERTICAL<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.SplitPanel.Companion$splitPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.DIRECTION, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SplitPanel, 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.panel.SplitPanel.Companion$splitPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.DIRECTION, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SplitPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">SplitPanel</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.panel/-split-panel/split-panel.html b/docs/api/pl.treksoft.kvision.panel/-split-panel/split-panel.html
new file mode 100644
index 00000000..9d1dd963
--- /dev/null
+++ b/docs/api/pl.treksoft.kvision.panel/-split-panel/split-panel.html
@@ -0,0 +1,16 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>SplitPanel.splitPanel - 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.panel</a>&nbsp;/&nbsp;<a href="index.html">SplitPanel</a>&nbsp;/&nbsp;<a href="./split-panel.html">splitPanel</a><br/>
+<br/>
+<h1>splitPanel</h1>
+<a name="pl.treksoft.kvision.panel.SplitPanel.Companion$splitPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.DIRECTION, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SplitPanel, 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">splitPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.SplitPanel.Companion$splitPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.DIRECTION, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SplitPanel, kotlin.Unit)))/direction">direction</span><span class="symbol">:</span>&nbsp;<a href="../-d-i-r-e-c-t-i-o-n/index.html"><span class="identifier">DIRECTION</span></a>&nbsp;<span class="symbol">=</span>&nbsp;DIRECTION.VERTICAL<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.SplitPanel.Companion$splitPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.DIRECTION, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SplitPanel, 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.panel.SplitPanel.Companion$splitPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.DIRECTION, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.SplitPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">SplitPanel</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.panel/-stack-panel/-init-.html b/docs/api/pl.treksoft.kvision.panel/-stack-panel/-init-.html
index 16a0981f..3048853c 100644
--- a/docs/api/pl.treksoft.kvision.panel/-stack-panel/-init-.html
+++ b/docs/api/pl.treksoft.kvision.panel/-stack-panel/-init-.html
@@ -8,13 +8,15 @@
<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.panel</a>&nbsp;/&nbsp;<a href="index.html">StackPanel</a>&nbsp;/&nbsp;<a href="./-init-.html">&lt;init&gt;</a><br/>
<br/>
<h1>&lt;init&gt;</h1>
-<a name="pl.treksoft.kvision.panel.StackPanel$&lt;init&gt;(kotlin.Boolean, kotlin.collections.Set((kotlin.String)))"></a>
-<code><span class="identifier">StackPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.StackPanel$<init>(kotlin.Boolean, kotlin.collections.Set((kotlin.String)))/activateLast">activateLast</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;true<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.StackPanel$<init>(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.panel.StackPanel$&lt;init&gt;(kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.StackPanel, kotlin.Unit)))"></a>
+<code><span class="identifier">StackPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.StackPanel$<init>(kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.StackPanel, kotlin.Unit)))/activateLast">activateLast</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;true<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.StackPanel$<init>(kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.StackPanel, 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.panel.StackPanel$<init>(kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.StackPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">StackPanel</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="activateLast"></a>
<code>activateLast</code> - determines if added component is automatically activated (default true)</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.panel/-stack-panel/index.html b/docs/api/pl.treksoft.kvision.panel/-stack-panel/index.html
index 858201c6..a19babf8 100644
--- a/docs/api/pl.treksoft.kvision.panel/-stack-panel/index.html
+++ b/docs/api/pl.treksoft.kvision.panel/-stack-panel/index.html
@@ -19,7 +19,7 @@
<p><a href="-init-.html">&lt;init&gt;</a></p>
</td>
<td>
-<code><span class="identifier">StackPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.StackPanel$<init>(kotlin.Boolean, kotlin.collections.Set((kotlin.String)))/activateLast">activateLast</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;true<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.StackPanel$<init>(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">StackPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.StackPanel$<init>(kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.StackPanel, kotlin.Unit)))/activateLast">activateLast</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;true<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.StackPanel$<init>(kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.StackPanel, 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.panel.StackPanel$<init>(kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.StackPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">StackPanel</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>
@@ -121,5 +121,19 @@
</tr>
</tbody>
</table>
+<h3>Companion Object Functions</h3>
+<table>
+<tbody>
+<tr>
+<td>
+<p><a href="stack-panel.html">stackPanel</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">stackPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.StackPanel.Companion$stackPanel(pl.treksoft.kvision.core.Container, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.StackPanel, kotlin.Unit)))/activateLast">activateLast</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;true<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.StackPanel.Companion$stackPanel(pl.treksoft.kvision.core.Container, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.StackPanel, 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.panel.StackPanel.Companion$stackPanel(pl.treksoft.kvision.core.Container, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.StackPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">StackPanel</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.panel/-stack-panel/stack-panel.html b/docs/api/pl.treksoft.kvision.panel/-stack-panel/stack-panel.html
new file mode 100644
index 00000000..1d78d5d1
--- /dev/null
+++ b/docs/api/pl.treksoft.kvision.panel/-stack-panel/stack-panel.html
@@ -0,0 +1,16 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>StackPanel.stackPanel - 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.panel</a>&nbsp;/&nbsp;<a href="index.html">StackPanel</a>&nbsp;/&nbsp;<a href="./stack-panel.html">stackPanel</a><br/>
+<br/>
+<h1>stackPanel</h1>
+<a name="pl.treksoft.kvision.panel.StackPanel.Companion$stackPanel(pl.treksoft.kvision.core.Container, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.StackPanel, 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">stackPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.StackPanel.Companion$stackPanel(pl.treksoft.kvision.core.Container, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.StackPanel, kotlin.Unit)))/activateLast">activateLast</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;true<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.StackPanel.Companion$stackPanel(pl.treksoft.kvision.core.Container, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.StackPanel, 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.panel.StackPanel.Companion$stackPanel(pl.treksoft.kvision.core.Container, kotlin.Boolean, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.StackPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">StackPanel</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.panel/-tab-panel/-init-.html b/docs/api/pl.treksoft.kvision.panel/-tab-panel/-init-.html
index bc67233a..c581a361 100644
--- a/docs/api/pl.treksoft.kvision.panel/-tab-panel/-init-.html
+++ b/docs/api/pl.treksoft.kvision.panel/-tab-panel/-init-.html
@@ -8,11 +8,13 @@
<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.panel</a>&nbsp;/&nbsp;<a href="index.html">TabPanel</a>&nbsp;/&nbsp;<a href="./-init-.html">&lt;init&gt;</a><br/>
<br/>
<h1>&lt;init&gt;</h1>
-<a name="pl.treksoft.kvision.panel.TabPanel$&lt;init&gt;(kotlin.collections.Set((kotlin.String)))"></a>
-<code><span class="identifier">TabPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.TabPanel$<init>(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.panel.TabPanel$&lt;init&gt;(kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.TabPanel, kotlin.Unit)))"></a>
+<code><span class="identifier">TabPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.TabPanel$<init>(kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.TabPanel, 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.panel.TabPanel$<init>(kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.TabPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">TabPanel</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="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.panel/-tab-panel/index.html b/docs/api/pl.treksoft.kvision.panel/-tab-panel/index.html
index cb33462e..b29ce775 100644
--- a/docs/api/pl.treksoft.kvision.panel/-tab-panel/index.html
+++ b/docs/api/pl.treksoft.kvision.panel/-tab-panel/index.html
@@ -19,7 +19,7 @@
<p><a href="-init-.html">&lt;init&gt;</a></p>
</td>
<td>
-<code><span class="identifier">TabPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.TabPanel$<init>(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">TabPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.TabPanel$<init>(kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.TabPanel, 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.panel.TabPanel$<init>(kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.TabPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">TabPanel</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>
@@ -137,5 +137,19 @@
</tr>
</tbody>
</table>
+<h3>Companion Object Functions</h3>
+<table>
+<tbody>
+<tr>
+<td>
+<p><a href="tab-panel.html">tabPanel</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">tabPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.TabPanel.Companion$tabPanel(pl.treksoft.kvision.core.Container, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.TabPanel, 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.panel.TabPanel.Companion$tabPanel(pl.treksoft.kvision.core.Container, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.TabPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">TabPanel</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.panel/-tab-panel/tab-panel.html b/docs/api/pl.treksoft.kvision.panel/-tab-panel/tab-panel.html
new file mode 100644
index 00000000..a859d02e
--- /dev/null
+++ b/docs/api/pl.treksoft.kvision.panel/-tab-panel/tab-panel.html
@@ -0,0 +1,16 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>TabPanel.tabPanel - 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.panel</a>&nbsp;/&nbsp;<a href="index.html">TabPanel</a>&nbsp;/&nbsp;<a href="./tab-panel.html">tabPanel</a><br/>
+<br/>
+<h1>tabPanel</h1>
+<a name="pl.treksoft.kvision.panel.TabPanel.Companion$tabPanel(pl.treksoft.kvision.core.Container, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.TabPanel, 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">tabPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.TabPanel.Companion$tabPanel(pl.treksoft.kvision.core.Container, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.TabPanel, 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.panel.TabPanel.Companion$tabPanel(pl.treksoft.kvision.core.Container, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.TabPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">TabPanel</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.panel/-v-panel/-init-.html b/docs/api/pl.treksoft.kvision.panel/-v-panel/-init-.html
index e8ce4332..82a98c2a 100644
--- a/docs/api/pl.treksoft.kvision.panel/-v-panel/-init-.html
+++ b/docs/api/pl.treksoft.kvision.panel/-v-panel/-init-.html
@@ -8,8 +8,8 @@
<a href="../../index.html">kvision</a>&nbsp;/&nbsp;<a href="../index.html">pl.treksoft.kvision.panel</a>&nbsp;/&nbsp;<a href="index.html">VPanel</a>&nbsp;/&nbsp;<a href="./-init-.html">&lt;init&gt;</a><br/>
<br/>
<h1>&lt;init&gt;</h1>
-<a name="pl.treksoft.kvision.panel.VPanel$&lt;init&gt;(pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)))"></a>
-<code><span class="identifier">VPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel$<init>(pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)))/justify">justify</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-j-u-s-t-i-f-y/index.html"><span class="identifier">FLEXJUSTIFY</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel$<init>(pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)))/alignItems">alignItems</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-a-l-i-g-n-i-t-e-m-s/index.html"><span class="identifier">FLEXALIGNITEMS</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel$<init>(pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)))/spacing">spacing</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel$<init>(pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, 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.panel.VPanel$&lt;init&gt;(pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.VPanel, kotlin.Unit)))"></a>
+<code><span class="identifier">VPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel$<init>(pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.VPanel, kotlin.Unit)))/justify">justify</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-j-u-s-t-i-f-y/index.html"><span class="identifier">FLEXJUSTIFY</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel$<init>(pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.VPanel, kotlin.Unit)))/alignItems">alignItems</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-a-l-i-g-n-i-t-e-m-s/index.html"><span class="identifier">FLEXALIGNITEMS</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel$<init>(pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.VPanel, kotlin.Unit)))/spacing">spacing</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel$<init>(pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.VPanel, 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.panel.VPanel$<init>(pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.VPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">VPanel</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="justify"></a>
<code>justify</code> - flexbox content justification</p>
@@ -19,6 +19,8 @@
<code>spacing</code> - spacing between columns/rows</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.panel/-v-panel/index.html b/docs/api/pl.treksoft.kvision.panel/-v-panel/index.html
index 9ed64555..52c24799 100644
--- a/docs/api/pl.treksoft.kvision.panel/-v-panel/index.html
+++ b/docs/api/pl.treksoft.kvision.panel/-v-panel/index.html
@@ -19,7 +19,7 @@
<p><a href="-init-.html">&lt;init&gt;</a></p>
</td>
<td>
-<code><span class="identifier">VPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel$<init>(pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)))/justify">justify</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-j-u-s-t-i-f-y/index.html"><span class="identifier">FLEXJUSTIFY</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel$<init>(pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)))/alignItems">alignItems</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-a-l-i-g-n-i-t-e-m-s/index.html"><span class="identifier">FLEXALIGNITEMS</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel$<init>(pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)))/spacing">spacing</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel$<init>(pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, 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">VPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel$<init>(pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.VPanel, kotlin.Unit)))/justify">justify</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-j-u-s-t-i-f-y/index.html"><span class="identifier">FLEXJUSTIFY</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel$<init>(pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.VPanel, kotlin.Unit)))/alignItems">alignItems</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-a-l-i-g-n-i-t-e-m-s/index.html"><span class="identifier">FLEXALIGNITEMS</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel$<init>(pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.VPanel, kotlin.Unit)))/spacing">spacing</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel$<init>(pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.VPanel, 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.panel.VPanel$<init>(pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.VPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">VPanel</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>
@@ -134,5 +134,19 @@
</tr>
</tbody>
</table>
+<h3>Companion Object Functions</h3>
+<table>
+<tbody>
+<tr>
+<td>
+<p><a href="v-panel.html">vPanel</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">vPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel.Companion$vPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.VPanel, kotlin.Unit)))/justify">justify</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-j-u-s-t-i-f-y/index.html"><span class="identifier">FLEXJUSTIFY</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel.Companion$vPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.VPanel, kotlin.Unit)))/alignItems">alignItems</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-a-l-i-g-n-i-t-e-m-s/index.html"><span class="identifier">FLEXALIGNITEMS</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel.Companion$vPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.VPanel, kotlin.Unit)))/spacing">spacing</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel.Companion$vPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.VPanel, 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.panel.VPanel.Companion$vPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.VPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="./index.html"><span class="identifier">VPanel</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.panel/-v-panel/v-panel.html b/docs/api/pl.treksoft.kvision.panel/-v-panel/v-panel.html
new file mode 100644
index 00000000..3c0a6f1d
--- /dev/null
+++ b/docs/api/pl.treksoft.kvision.panel/-v-panel/v-panel.html
@@ -0,0 +1,16 @@
+<HTML>
+<HEAD>
+<meta charset="UTF-8">
+<title>VPanel.vPanel - 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.panel</a>&nbsp;/&nbsp;<a href="index.html">VPanel</a>&nbsp;/&nbsp;<a href="./v-panel.html">vPanel</a><br/>
+<br/>
+<h1>vPanel</h1>
+<a name="pl.treksoft.kvision.panel.VPanel.Companion$vPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.VPanel, 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">vPanel</span><span class="symbol">(</span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel.Companion$vPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.VPanel, kotlin.Unit)))/justify">justify</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-j-u-s-t-i-f-y/index.html"><span class="identifier">FLEXJUSTIFY</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel.Companion$vPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.VPanel, kotlin.Unit)))/alignItems">alignItems</span><span class="symbol">:</span>&nbsp;<a href="../-f-l-e-x-a-l-i-g-n-i-t-e-m-s/index.html"><span class="identifier">FLEXALIGNITEMS</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel.Companion$vPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.VPanel, kotlin.Unit)))/spacing">spacing</span><span class="symbol">:</span>&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html"><span class="identifier">Int</span></a><span class="symbol">?</span>&nbsp;<span class="symbol">=</span>&nbsp;null<span class="symbol">, </span><span class="identifier" id="pl.treksoft.kvision.panel.VPanel.Companion$vPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.VPanel, 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.panel.VPanel.Companion$vPanel(pl.treksoft.kvision.core.Container, pl.treksoft.kvision.panel.FLEXJUSTIFY, pl.treksoft.kvision.panel.FLEXALIGNITEMS, kotlin.Int, kotlin.collections.Set((kotlin.String)), kotlin.Function1((pl.treksoft.kvision.panel.VPanel, kotlin.Unit)))/init">init</span><span class="symbol">:</span>&nbsp;<a href="index.html"><span class="identifier">VPanel</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>