summaryrefslogtreecommitdiffhomepage
path: root/packages/ui/src
diff options
context:
space:
mode:
authorAdam <[email protected]>2026-01-16 13:13:27 -0600
committerAdam <[email protected]>2026-01-16 13:55:59 -0600
commit086603494691fa832239d79bf844880f87f1299c (patch)
treeb9ddb2d20659af633d02b4b1fa09e1f8c207f50a /packages/ui/src
parent2ccaa10e7961657322beff670b5522f404278c33 (diff)
downloadopencode-086603494691fa832239d79bf844880f87f1299c.tar.gz
opencode-086603494691fa832239d79bf844880f87f1299c.zip
feat(app): edit project and session titles
Diffstat (limited to 'packages/ui/src')
-rw-r--r--packages/ui/src/components/inline-input.css17
-rw-r--r--packages/ui/src/components/inline-input.tsx11
-rw-r--r--packages/ui/src/styles/index.css1
3 files changed, 29 insertions, 0 deletions
diff --git a/packages/ui/src/components/inline-input.css b/packages/ui/src/components/inline-input.css
new file mode 100644
index 000000000..1d8a00e08
--- /dev/null
+++ b/packages/ui/src/components/inline-input.css
@@ -0,0 +1,17 @@
+[data-component="inline-input"] {
+ color: inherit;
+ background: transparent;
+ border: 0;
+ border-radius: var(--radius-md);
+ padding: 0;
+ min-width: 0;
+ font: inherit;
+ letter-spacing: inherit;
+ line-height: inherit;
+ box-sizing: border-box;
+
+ &:focus {
+ outline: none;
+ box-shadow: 0 0 0 1px var(--border-interactive-focus);
+ }
+}
diff --git a/packages/ui/src/components/inline-input.tsx b/packages/ui/src/components/inline-input.tsx
new file mode 100644
index 000000000..72711a197
--- /dev/null
+++ b/packages/ui/src/components/inline-input.tsx
@@ -0,0 +1,11 @@
+import type { ComponentProps } from "solid-js"
+import { splitProps } from "solid-js"
+
+export type InlineInputProps = ComponentProps<"input"> & {
+ width?: string
+}
+
+export function InlineInput(props: InlineInputProps) {
+ const [local, others] = splitProps(props, ["class", "width"])
+ return <input data-component="inline-input" class={local.class} style={{ width: local.width }} {...others} />
+}
diff --git a/packages/ui/src/styles/index.css b/packages/ui/src/styles/index.css
index 6e8bbe385..8ab4d6ca4 100644
--- a/packages/ui/src/styles/index.css
+++ b/packages/ui/src/styles/index.css
@@ -25,6 +25,7 @@
@import "../components/icon-button.css" layer(components);
@import "../components/image-preview.css" layer(components);
@import "../components/text-field.css" layer(components);
+@import "../components/inline-input.css" layer(components);
@import "../components/list.css" layer(components);
@import "../components/logo.css" layer(components);
@import "../components/markdown.css" layer(components);