diff options
| author | Adam <[email protected]> | 2026-01-16 13:13:27 -0600 |
|---|---|---|
| committer | Adam <[email protected]> | 2026-01-16 13:55:59 -0600 |
| commit | 086603494691fa832239d79bf844880f87f1299c (patch) | |
| tree | b9ddb2d20659af633d02b4b1fa09e1f8c207f50a /packages/ui/src | |
| parent | 2ccaa10e7961657322beff670b5522f404278c33 (diff) | |
| download | opencode-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.css | 17 | ||||
| -rw-r--r-- | packages/ui/src/components/inline-input.tsx | 11 | ||||
| -rw-r--r-- | packages/ui/src/styles/index.css | 1 |
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); |
