Builds on the clarify/needs-input work with a cross-cutting pass to make the desktop surfaces feel like one app. - Global Cmd+K command palette (cmdk): nav, settings deep-links, async API-key / MCP-server / archived-session groups, reusable theme sub-page (light/dark groups, stays open on pick), loop nav, fuzzy match. Replaces per-page settings search. - Shared SearchField: borderless, underline-on-focus, `field-sizing` auto-width. Unifies sessions sidebar, pages, overlays, command center, cron; drops bespoke OverlaySearchInput. - Cron & Profiles converted to OverlayView; flat token-driven panels (no card-in-card / divider borders) matching command center. - `r` refresh hotkey via useRefreshHotkey; drop the visible refresh buttons. - Button text/textStrong link variants applied across settings & views; shared PAGE_INSET_X content gutters. - Math/ascii loaders replace "Loading…" text placeholders; x-icon close over text "Close"; cursor-pointer at the dropdown/select primitive level.
13 lines
749 B
TypeScript
13 lines
749 B
TypeScript
// Responsive horizontal gutter for primary content bodies (settings right side,
|
|
// skills, artifacts, command center / sessions). Ratio-based so it scales with
|
|
// the window, but clamped so it never collapses on narrow widths or runs away
|
|
// on ultrawide displays. Headers/tabs intentionally keep their own tighter
|
|
// padding.
|
|
//
|
|
// NOTE: these must stay literal strings — Tailwind's scanner only picks up
|
|
// complete class names, so do not build them via template interpolation.
|
|
export const PAGE_INSET_X = 'px-[clamp(1.25rem,4vw,4rem)]'
|
|
|
|
// Matching negative inline-margin to bleed an element (e.g. a sticky header bar)
|
|
// out to the gutter edges before re-applying PAGE_INSET_X.
|
|
export const PAGE_INSET_NEG_X = '-mx-[clamp(1.25rem,4vw,4rem)]'
|