name={{ name }} size={{ paneSize }}
diff --git a/lib/basic/oui-separator.styl b/lib/basic/oui-separator.styl
new file mode 100644
index 0000000..5f1c1cd
--- /dev/null
+++ b/lib/basic/oui-separator.styl
@@ -0,0 +1,50 @@
+@require "../../stylus/index.styl";
+
+.oui-separator {
+ background: var(--separator, transparent);
+
+ &:hover {
+ background: var(--separator-hover, var(--fg));
+ }
+
+ &._active {
+ background: var(--separator-active, var(--p1-fg));
+ }
+
+ &._left, &._right {
+ position: absolute;
+ width: 1px;
+ height: 100%;
+ cursor: unquote("col-resize");
+
+ &:after {
+ position: absolute;
+ background: var(--separator-handle, transparent);
+ top: 0;
+ left: unquote("calc(-1 * 0.5 * var(--separator-handle-size, 5px))");
+ width: unquote("calc(var(--separator-handle-size, 5px) + 1px)");
+ height: 100%;
+ content: " ";
+ z-index: -z-index-floating;
+ }
+ }
+
+ &._top, &._bottom {
+ position: absolute;
+ height: 1px;
+ width: 100%;
+ cursor: unquote("row-resize");
+ sepHandleSize = px(5);
+
+ &:after {
+ position: absolute;
+ background: var(--separator-handle, transparent);
+ left: 0;
+ top: unquote("calc(-1 * 0.5 * var(--separator-handle-size, 5px))");
+ height: unquote("calc(var(--separator-handle-size, 5px) + 1px)");
+ width: 100%;
+ content: " ";
+ z-index: -z-index-floating;
+ }
+ }
+}
diff --git a/lib/basic/oui-separator.vue b/lib/basic/oui-separator.vue
index 7ac0a4d..bf9abf5 100644
--- a/lib/basic/oui-separator.vue
+++ b/lib/basic/oui-separator.vue
@@ -1,37 +1,33 @@
- Complex example
+ Tableview
- widths[i] = Math.max(columns[i].minWidth ?? 80, Math.min(columns[i].maxWidth ?? 300, widths[i] + deltaX))"
/>
diff --git a/src/app-resizeable.styl b/src/app-resizeable.styl
index 1a74e1e..6400546 100644
--- a/src/app-resizeable.styl
+++ b/src/app-resizeable.styl
@@ -1,6 +1,9 @@
@require "../stylus/index";
.app-resizeable {
+ --separator: var(--t3-fg);
+ --separator-hover: var(--fg);
+ --separator-active: var(--p1-fg);
use: stack-y;
width: 100%;
height: 600;
@@ -8,6 +11,7 @@
.left {
background: -red-100;
+ border: 3px dotted -red-500;
}
.middle {
@@ -16,13 +20,16 @@
.right {
background: -green-100;
+ border: 3px dotted -green-500;
}
.top {
background: -purple-100;
+ border: 3px dotted -purple-500;
}
.bottom {
background: -orange-100;
+ border: 3px dotted -orange-500;
}
}
\ No newline at end of file
diff --git a/src/app-resizeable.vue b/src/app-resizeable.vue
index dbc9562..d1f628f 100644
--- a/src/app-resizeable.vue
+++ b/src/app-resizeable.vue
@@ -21,7 +21,7 @@ const size = 200