Skip to content

CL-5971: Shell mock wants — component API additions - #17

Merged
TheGreatAxios merged 7 commits into
cl-5879-shell-mock-v2-react-uifrom
cl-shell-mock-wants
Aug 14, 2026
Merged

CL-5971: Shell mock wants — component API additions#17
TheGreatAxios merged 7 commits into
cl-5879-shell-mock-v2-react-uifrom
cl-shell-mock-wants

Conversation

@TheGreatAxios

@TheGreatAxios TheGreatAxios commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

Summary

  • RichEmptyState: optional actionSize to match denser host chrome
  • FilterChip: visible border on the unselected state
  • CommandPalette: inputAccessory and footer slots
  • SidebarRailItem: forwards rest props (per-item data-*, render id)
  • New BlockCard and RiskBadge primitives, lifted from Workbench's chat-ui, with --ok/--warn tokens
  • SidebarItemRow: row radius and selected background exposed as tokens

Linear: CL-5971

@TheGreatAxios TheGreatAxios changed the title cl shell mock wants Aug 14, 2026
@TheGreatAxios
TheGreatAxios marked this pull request as ready for review August 14, 2026 00:27
Base automatically changed from cl-5940-toast-system to cl-5879-shell-mock-v2-react-ui August 14, 2026 00:28
ActionControl hardcoded Button size="md". A stage empty-state embedded
under a top bar wants its actions at the same sm scale as the bar
around it, so actionSize is now threaded through, defaulting to md.
Unselected chips rendered as border-transparent bg-transparent — bare
text with no affordance that they are clickable. The unselected state
now carries the same border-border ring the selected state's card
treatment sits inside, so both states read as one pill family.
No slot existed for a leading scope chip in the input row or a
keyboard-hint legend under the results. inputAccessory renders inside
the input row, ahead of the input; footer renders as a pinned strip
below the results (independent of the load-more control).
SidebarRailItem carried no way to attach a DOM id or data-* attribute
to a specific item, so a consumer had no hook to target one rail
button (a tour, a spotlight). Extra item keys now spread onto the
rendered button, and the item's id renders as the button's DOM id.
Generic versions of Workbench's generative-UI block frame and risk
callout: a zero-radius bordered card with a pulse-dot header, and a
tone-driven risk label. Adds --ok/--warn theme tokens (light/dark,
matching Workbench's app.css) since the risk tones need colours the
theme did not carry yet.
rounded-md and bg-primary/10 were hardcoded utilities a consumer's own
stylesheet could not out-cascade without matching specificity. The row
now reads --sidebar-row-radius and --sidebar-row-selected-bg (defined
in theme.css, defaulting to the previous values), so a consumer can
override them once on a scoping element instead of fighting the
utility.
The shell mock's only approve card renders its risk line in --warn
regardless of level — there's no green "all clear" treatment for risk.
Map low to --muted-foreground so only medium/high draw the eye; --ok
stays reserved for step/delivery "done" states.
@TheGreatAxios
TheGreatAxios merged commit fe973ba into cl-5879-shell-mock-v2-react-ui Aug 14, 2026
@TheGreatAxios
TheGreatAxios deleted the cl-shell-mock-wants branch August 14, 2026 00:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

1 participant