Skip to content

Let shared selects name themselves and open like buttons, and point the Console at u4 - #242

Merged
matuscongrady merged 4 commits into
mainfrom
ui/u4-shared-controls-2
Oct 20, 2026
Merged

matuscongrady merged 4 commits into
mainfrom
ui/u4-shared-controls-2

Conversation

@matuscongrady

Copy link
Copy Markdown
Contributor

These are the shared-package half of the Console's shared controls round 2 (stacktape/console-app#94), plus the submodule pointer. Merge the Console PR first, then point this PR at its merge commit.

packages/ui-react changes:

  • Select. inlineLabel draws a muted name inside the control ("Region eu-west-1") for toolbars where a label above does not fit. An option's valueLabel gives the closed control a shorter form than the menu (the region's flag and code, without the name). A non-searchable select wears the secondary button's surface and shadows. Its default height now follows --stp-control-height. Values start 14px in, where a text field's do. The menu is as wide as its longest option (up to 420px) but never past the window's right edge.
  • Field inset. --stp-field-inset moves text field, select and radio group labels, help text and errors to where the field content starts. It defaults to 0, so the docs site and the init wizard look as before. The Console sets it to 14px.
  • Dialog. It opens with the first field of its content focused, not the close button, which used to show a focus ring on every open. The scrolling body uses a thin scrollbar.

Effects on other consumers: the init wizard's region picker gets the 14px value inset and the wider menu. Nothing else in apps/init-ui or apps/docs uses Select or Dialog.

Checks: pnpm check:integrated passed on this tree, with ui-react unit tests 141/141, the Console's offline browser lane 48/48, and the isolated browser lane 14/14 files.

matuscongrady and others added 4 commits October 20, 2026 00:46
…he Console at u4

- Select: `inlineLabel` draws a muted name inside the control. An option's
  `valueLabel` gives the closed control a shorter form (the region's flag and
  code). A non-searchable select wears the secondary button's surface. The
  control height follows `--stp-control-height`. Content starts 14px in,
  like a text field. Menus are as wide as their longest option (up to 420px)
  but stop at the window edge.
- Text field, select and radio group: `--stp-field-inset` moves labels, help
  text and errors to where the field's content starts. It defaults to 0, so
  other consumers are unchanged.
- Dialog: opens with its first field focused instead of the close button,
  and its body has a thin scrollbar.
- Console pointer: shared controls round 2 (console-app#94).

Co-Authored-By: Claude Opus 5.5 <[email protected]>
@matuscongrady
matuscongrady merged commit 2717fd6 into main Oct 20, 2026
2 checks passed
@matuscongrady
matuscongrady deleted the ui/u4-shared-controls-2 branch October 20, 2026 07:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant