@setsquare/ui 0.6.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,63 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.7.0 — 2026-10-13
4
+
5
+ - **`Rail`, new: layout option C's navigation.** A full-height rail, `--rail-width` wide (72px at AA, 88px at AAA),
6
+ used in a `DashboardShell` instead of `Sidebar`, for a product that needs every destination visible but can't give
7
+ up the sidebar's 256px. Each item shows its icon over its name, always; names are 13px and wrap inside the tile,
8
+ hyphenating where the browser can and breaking a word that still doesn't fit rather than cutting it off. It never
9
+ collapses or expands. Its parts mirror the Sidebar's: `Rail`, `RailHeader`, `RailContent` (a positioned scroller),
10
+ `RailGroup` (named by a visually hidden heading, with a rule above each one after the first), `RailList`,
11
+ `RailFooter` (pinned to the bottom) and `RailItem` (`href` or `onPress`, `icon`, its name, `isCurrent`). Items are
12
+ in three layers like `SidebarItem`. The current page has the `brand-subtle` fill, a 3px `sidebar-primary` edge along
13
+ the tile's start that follows its rounded corners, and its icon and name in `brand` at weight 700; in forced colours
14
+ a bar in `Highlight` takes the edge's place. Nothing in the rail transitions or animates, at AA or AAA. On phones it is the Sidebar's Sheet,
15
+ with the items as rows.
16
+ - **`DashboardShell` takes `navigation`**: `'sidebar'` (the default) or `'rail'`, and `useShell()` returns it. With
17
+ `'rail'`, `AppHeader` shows no collapse toggle and no rule after it, only the phone's menu button, which a container
18
+ query hides from `bp-md` up until the shell has measured itself. It's a prop rather than something the Rail
19
+ registers, so the server renders the right header. A `Rail` in a shell without it logs an error to the console.
20
+ - **Words:** `RailLabels` (`primary`, `navigation`), and `SetsquareLabels.rail`, laid over `SetsquareLabels.sidebar`,
21
+ so a product that switches keeps its translations.
22
+ - **Live status on `SidebarItem` and `RailItem`.** `status` (`'working'` or `'attention'`) puts a badge on the icon,
23
+ in the tab badges' language, with a cut-out in the row's own ground: working is a hollow `brand` ring, attention a
24
+ `destructive` dot inside a ring, so the two differ in shape as well as colour. Working pulses three times in 4.5s as
25
+ it appears and then holds still, inside the five seconds 2.2.2 allows for motion people can't stop; it never
26
+ pulses at AAA or under reduced motion. Attention never moves. `statusLabel` is required with `status` (a type
27
+ error without it, and a console error from plain JavaScript): it is said after the name and any count, and is in
28
+ the collapsed sidebar's tooltip. `detail` is a short value ("4/8", "$1.20"), right-aligned in the sidebar and under
29
+ the name in a rail, in tabular numbers and read as part of the name; `detailTone="warning"` adds a warning icon,
30
+ the `warning` colour and words in the name ("Spend, $1.20, warning"). In forced colours the badges are drawn in
31
+ `CanvasText` and `Highlight`. `count` works as before, and is read before the detail and status.
32
+ - **An item's icon can be a drawing of the product's own**, such as a progress ring: `IconProp` already took an
33
+ element, and the item now wraps the icon in a box that carries its colour, so a drawing in `currentColor` turns
34
+ `brand` on the current page even if it ignores `className`.
35
+ - **Words:** `SidebarLabels` gains `detail`, `detailWarning`, `status`, `tipDetail`, `tipDetailWarning` and
36
+ `tipStatus`; `RailLabels` gains `detail`, `detailWarning` and `status`. New types: `NavStatus`, `NavDetailTone`,
37
+ `NavItemLiveProps`; `SidebarItemProps` is exported, and it and `RailItemProps` are now type aliases (an
38
+ intersection with `NavItemLiveProps`), so code that `extends` either interface needs a `type` instead.
39
+ - **Contrast:** the audit promises the pairs the status uses: `brand`, `destructive` and `warning` on `sidebar` and
40
+ `sidebar-accent` at 3:1, `warning` on `brand-subtle` at 3:1, `warning` text on `sidebar`, `sidebar-accent` and
41
+ `brand-subtle`, and `muted-foreground` on `sidebar-accent` (a count or detail on the hovered row).
42
+ - **The Sidebar's current page is marked as the Rail's is.** `SidebarItem` and a `SidebarDisclosure`'s pages had a
43
+ rounded bar inset from the top and bottom and the name in `foreground`; they now have a 3px `sidebar-primary` edge
44
+ along the row's start, drawn as an inset shadow so it follows the rounded corners, and the icon and name in
45
+ `brand`. Hovered, a current item kept the hover ground before, which under brand text would be a pair the contrast
46
+ audit doesn't promise; in both components it now keeps its `brand-subtle` fill. In forced colours the Sidebar's
47
+ marker used to disappear (forced colours drop the background it was drawn with); like the Rail's, it is now a bar in
48
+ `Highlight`.
49
+ - **`brand-subtle` is stronger**, so a current nav item, a selected row or tab, an info alert or a brand badge stands
50
+ off its ground: against the sidebar it was 1.07:1 in light, 1.11:1 in light AAA, 1.19:1 in dark and 1.25:1 in dark
51
+ AAA, and is now 1.24, 1.22, 1.37 and 1.35 (`#dadef5`, `#dcdff0`, `#242c55`, `#20274f`). Every pair on it still clears
52
+ its floor; the tightest are muted text in light (4.64:1), warning text in light AAA (7.31:1) and brand text in dark
53
+ AAA (7.96:1). Everything that uses it looks a little deeper. A product with its own palette is unaffected.
54
+ - `w-rail` (`--spacing-rail`) is a utility, and `cn()` merges it.
55
+ - **Docs.** A Rail page on ui.setsquare.dev, and the DashboardShell page shows the shell with a Rail under the shell
56
+ with a Sidebar, at each size. The Sidebar and Rail pages' frames and cards show live status and details. Design-system cards: Rail, DashboardShellRail, DashboardShellRailTablet and
57
+ DashboardShellRailMobileNav.
58
+ - **Tests.** `test/browser/rail.mjs` and `test/browser/nav-status.mjs`, in all four themes and two brands, and unit
59
+ tests for what the server renders and for the collapsed sidebar's tooltip (see What is tested in the README).
60
+
3
61
  ## 0.6.0 — 2026-10-13
4
62
 
5
63
  Breaking: every word is an ICU MessageFormat template, and the package writes no sentence in code. None of 0.5's
package/README.md CHANGED
@@ -18,7 +18,7 @@ Controls are built in three layers, so the switch changes targets without changi
18
18
  pnpm add @setsquare/ui react-aria-components @internationalized/date
19
19
  ```
20
20
 
21
- It needs React 19.2 or later, React Aria Components 1.21 or later, and Tailwind CSS 4 in the app. A module is a client component (`'use client'`) only when it needs to be: React Aria, a hook, a context or an event handler. The rest — `StatusBadge`, `Avatar`, `ProductMark`, `Kbd`, `EmptyState`, `IconButton`, `PageHeader`, `PageContent`, the site shell's `SiteShell`, `SiteMain`, `SiteHeader`, `SiteNav`, `SiteFooter` and `SiteFooterGroup`, the content components `Section`, `SectionHeader`, `Container`, `Eyebrow`, `Hero`, `HeroHighlight`, `Card`, `CardGrid`, `Prose`, `Steps`, `Step`, `Split`, `Tag`, `StatList` and `Stat`, `CodeBlock`, `ThemeScript`, `buttonTargetStyles()` and `buttonVisualStyles()` — have no directive, so a server component uses them without shipping them to the browser. Server components can render either kind. A server component that gives a client component an icon (`Alert`, `MenuItem`, `SidebarItem`, a search item) passes the element, `icon={<Folder />}`: a component can't cross into a client component.
21
+ It needs React 19.2 or later, React Aria Components 1.21 or later, and Tailwind CSS 4 in the app. A module is a client component (`'use client'`) only when it needs to be: React Aria, a hook, a context or an event handler. The rest — `StatusBadge`, `Avatar`, `ProductMark`, `Kbd`, `EmptyState`, `IconButton`, `PageHeader`, `PageContent`, the site shell's `SiteShell`, `SiteMain`, `SiteHeader`, `SiteNav`, `SiteFooter` and `SiteFooterGroup`, the content components `Section`, `SectionHeader`, `Container`, `Eyebrow`, `Hero`, `HeroHighlight`, `Card`, `CardGrid`, `Prose`, `Steps`, `Step`, `Split`, `Tag`, `StatList` and `Stat`, `CodeBlock`, `ThemeScript`, `buttonTargetStyles()` and `buttonVisualStyles()` — have no directive, so a server component uses them without shipping them to the browser. Server components can render either kind. A server component that gives a client component an icon (`Alert`, `MenuItem`, `SidebarItem`, `RailItem`, a search item) passes the element, `icon={<Folder />}`: a component can't cross into a client component.
22
22
 
23
23
  In the app's global stylesheet, after Tailwind:
24
24
 
@@ -344,7 +344,7 @@ The positioning, target, link, reflow, text-spacing and motion scans run in the
344
344
 
345
345
  - **Types:** `tsc` on React 19.
346
346
  - **Lint rules:** ESLint's `RuleTester`, and oxlint loading the built plugin through `jsPlugins`.
347
- - **Unit:** the pagination window: seven slots on every page of an 8-, 20- and 239-page list, and a gap only where two or more pages are left out.
347
+ - **Unit:** the pagination window: seven slots on every page of an 8-, 20- and 239-page list, and a gap only where two or more pages are left out. The `Rail` and `AppHeader` as the server renders them: with `navigation="rail"`, no collapse toggle and no rule, only the phone's trigger (hidden by a container query until the shell measures, absent at a forced size wider than a phone), and the rail's words over the sidebar's app-wide ones. Live status on `SidebarItem` and `RailItem`: the status label, detail and warning words in the name (after a count), the badges hidden from it, a type error for `status` without `statusLabel`, a custom drawing as the icon, and the collapsed sidebar's tooltip in English and in a product's words.
348
348
  - **Words:** a lint rule of this repository's (`scripts/lint/words.mjs`) fails English written into the components' JSX, a template that builds a sentence, a list joined in code, and `Intl` formatting in the runtime's locale; its tests fail each way 0.5.0 did it. Unit tests cover the ICU formatter, its development and production fallbacks, `SetsquareLocale`'s layering, and every count label in Polish (one, few, many).
349
349
  - **Contrast:** `scripts/check-contrast.mjs` computes every token pair the usage notes promise, in all four themes. It doesn't check colours a product adds.
350
350
  - **Browser (Chromium only):** the design-system previews on React 19, loaded as the design-system artifact loads them:
@@ -360,6 +360,9 @@ The positioning, target, link, reflow, text-spacing and motion scans run in the
360
360
  - every control a keyboard reaches visibly changing when it takes focus, in two themes;
361
361
  - every link in running text underlined, and every target showing the cursor the rule gives it, across its whole area;
362
362
  - toasts measured against the focused control;
363
+ - the `Rail`, in all four themes and two brands: `--rail-width` at AA and AAA, every target at least `--target-min`, "Art direction" and "Brand kits" in two lines or fewer (in the system face the suites render with: they load no web fonts), no name cut off, the current page's weight, fill, edge, and icon and name in brand, groups named by hidden headings with a rule between them, the footer pinned while the items scroll, no transition or animation on hover or focus but a working badge's pulse, the current page's marker in `Highlight` under Chromium's emulated forced colours, no collapse toggle at 1280px and 768px, the phone's Sheet from the menu button with the items as rows and focus back on the button after Escape, and the Sidebar's shell keeping its toggle;
364
+ - the current page marked alike in a `Rail`, a `SidebarItem` and a `SidebarDisclosure`'s page: the fill, the 3px edge, and the name in brand at 700, the same when hovered, and a bar in `Highlight` under emulated forced colours;
365
+ - live status on nav items, in all four themes and two brands: working a hollow ring and attention a dot in a ring, each in its colour, with a cut-out that matches the ground at rest, hovered, current and current while hovered; working pulsing three times at AA and not at all at AAA or under reduced motion, attention never moving, and nothing on a badge moving after five seconds; names with the status, detail and warning words; details in tabular numbers, under the name in a rail and right-aligned with a count in the sidebar, the warning one with its icon and colour; a product's own drawing as the icon at 20px; the collapsed sidebar's tooltips and badges; and both badges in `CanvasText` and `Highlight` under Chromium's emulated forced colours;
363
366
  - tabs: the arrow keys in a row and a rail, Home and End, names with counts and badges, tooltips on hover (after 500ms, hoverable, closed by Escape and by a press) and on keyboard focus, the rail becoming a row below 480px, the three `hiddenPanels` modes (a draft surviving, a hidden panel's effects stopping, a Suspense read loading while pre-rendered), an important badge's pulse ending inside five seconds and replaying when its count rises, clear-on-open calling `onBadgeClear`, only opacity and colour changing at AAA, nothing animating under reduced motion, and no badge, ring or halo over any text in all three displays at full width and 360px;
364
367
  - pagination: the tiers at 1, 4, 7, 8, 20, 21 and 239 pages, a row that never changes length, the names of page links and arrows, hrefs that keep the query and never use `meta.links`, rows per page keeping the first row in view, focus after paging, the page field's validation and alert, the pending mark and its message after 400ms (and the mark stopping inside five seconds), and motion at AA, AAA and under reduced motion;
365
368
  - nothing on any preview running off its width, no text cut off or spilling with WCAG 1.4.12's spacing applied, and nothing but a loading indicator moving past five seconds, at AA and AAA;
package/dist/index.d.ts CHANGED
@@ -40,10 +40,13 @@ export type { SheetLabels } from './ui/sheet.js';
40
40
  export { AppSearch, CommandSearch, SearchTrigger } from './ui/search.js';
41
41
  export type { SearchItem, SearchSection, SearchLabels } from './ui/search.js';
42
42
  export { DashboardShell, ShellInset, ShellBody, ShellMain, useShell, useOptionalShell, } from './shell/dashboard-shell.js';
43
- export type { ShellSize, PanelMode, DashboardShellProps } from './shell/dashboard-shell.js';
43
+ export type { ShellSize, PanelMode, ShellNavigation, DashboardShellProps, } from './shell/dashboard-shell.js';
44
44
  export type { ShellLabels, SiteNavLabels } from './shell/landmarks.js';
45
45
  export { Sidebar, SidebarHeader, SidebarContent, SidebarFooter, SidebarGroup, SidebarList, SidebarItem, SidebarDisclosure, SidebarSwitcher, SidebarTrigger, useSidebarCollapsed, } from './shell/sidebar.js';
46
- export type { SidebarLabels, SidebarTriggerLabels, SidebarDisclosureProps, SidebarSubItem, } from './shell/sidebar.js';
46
+ export type { SidebarItemProps, SidebarLabels, SidebarTriggerLabels, SidebarDisclosureProps, SidebarSubItem, } from './shell/sidebar.js';
47
+ export { Rail, RailHeader, RailContent, RailFooter, RailGroup, RailList, RailItem, } from './shell/rail.js';
48
+ export type { RailProps, RailLabels, RailItemProps } from './shell/rail.js';
49
+ export type { NavStatus, NavDetailTone, NavItemLiveProps } from './shell/nav-status.js';
47
50
  export { AppHeader } from './shell/app-header.js';
48
51
  export { SiteShell, SiteMain } from './shell/site-shell.js';
49
52
  export type { SiteShellProps, SiteMainProps } from './shell/site-shell.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -29,6 +29,7 @@ export { Sheet } from './ui/sheet.js';
29
29
  export { AppSearch, CommandSearch, SearchTrigger } from './ui/search.js';
30
30
  export { DashboardShell, ShellInset, ShellBody, ShellMain, useShell, useOptionalShell, } from './shell/dashboard-shell.js';
31
31
  export { Sidebar, SidebarHeader, SidebarContent, SidebarFooter, SidebarGroup, SidebarList, SidebarItem, SidebarDisclosure, SidebarSwitcher, SidebarTrigger, useSidebarCollapsed, } from './shell/sidebar.js';
32
+ export { Rail, RailHeader, RailContent, RailFooter, RailGroup, RailList, RailItem, } from './shell/rail.js';
32
33
  export { AppHeader } from './shell/app-header.js';
33
34
  // The site shell, for public pages. SiteShell, SiteMain, SiteHeader, SiteNav, SiteFooter and SiteFooterGroup
34
35
  // have no 'use client'; SiteMenu and SiteNavLink do.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cn.d.ts","sourceRoot":"","sources":["../../src/lib/cn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAM,MAAM,CAAC;AAwD7C,4EAA4E;AAC5E,wBAAgB,EAAE,CAAC,GAAG,KAAK,EAAE,UAAU,EAAE,GAAG,MAAM,CAEjD"}
1
+ {"version":3,"file":"cn.d.ts","sourceRoot":"","sources":["../../src/lib/cn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAM,MAAM,CAAC;AAyD7C,4EAA4E;AAC5E,wBAAgB,EAAE,CAAC,GAAG,KAAK,EAAE,UAAU,EAAE,GAAG,MAAM,CAEjD"}
package/dist/lib/cn.js CHANGED
@@ -18,6 +18,7 @@ const merge = extendTailwindMerge({
18
18
  'header',
19
19
  'sidebar',
20
20
  'sidebar-collapsed',
21
+ 'rail',
21
22
  'panel',
22
23
  'choice',
23
24
  ],
@@ -1 +1 @@
1
- {"version":3,"file":"cn.js","sourceRoot":"","sources":["../../src/lib/cn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAmB,MAAM,MAAM,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAErD;;;GAGG;AACH,MAAM,KAAK,GAAG,mBAAmB,CAA6D;IAC5F,MAAM,EAAE;QACN,4FAA4F;QAC5F,KAAK,EAAE;YACL,OAAO,EAAE;gBACP,QAAQ;gBACR,gBAAgB;gBAChB,SAAS;gBACT,YAAY;gBACZ,YAAY;gBACZ,UAAU;gBACV,QAAQ;gBACR,SAAS;gBACT,mBAAmB;gBACnB,OAAO;gBACP,QAAQ;aACT;SACF;QACD,WAAW,EAAE;YACX,+FAA+F;YAC/F,WAAW,EAAE;gBACX;oBACE,IAAI,EAAE;wBACJ,SAAS;wBACT,cAAc;wBACd,iBAAiB;wBACjB,MAAM;wBACN,OAAO;wBACP,SAAS;wBACT,YAAY;wBACZ,MAAM;wBACN,IAAI;wBACJ,WAAW;wBACX,SAAS;wBACT,gBAAgB;wBAChB,MAAM;qBACP;iBACF;aACF;YACD,YAAY,EAAE,CAAC,YAAY,EAAE,kBAAkB,CAAC;YAChD,+FAA+F;YAC/F,aAAa,EAAE,CAAC,aAAa,CAAC;YAC9B,aAAa,EAAE,CAAC,aAAa,CAAC;YAC9B,gGAAgG;YAChG,WAAW,EAAE,CAAC,WAAW,CAAC;SAC3B;KACF;CACF,CAAC,CAAC;AAEH,4EAA4E;AAC5E,MAAM,UAAU,EAAE,CAAC,GAAG,KAAmB;IACvC,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AAC5B,CAAC"}
1
+ {"version":3,"file":"cn.js","sourceRoot":"","sources":["../../src/lib/cn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAmB,MAAM,MAAM,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAErD;;;GAGG;AACH,MAAM,KAAK,GAAG,mBAAmB,CAA6D;IAC5F,MAAM,EAAE;QACN,4FAA4F;QAC5F,KAAK,EAAE;YACL,OAAO,EAAE;gBACP,QAAQ;gBACR,gBAAgB;gBAChB,SAAS;gBACT,YAAY;gBACZ,YAAY;gBACZ,UAAU;gBACV,QAAQ;gBACR,SAAS;gBACT,mBAAmB;gBACnB,MAAM;gBACN,OAAO;gBACP,QAAQ;aACT;SACF;QACD,WAAW,EAAE;YACX,+FAA+F;YAC/F,WAAW,EAAE;gBACX;oBACE,IAAI,EAAE;wBACJ,SAAS;wBACT,cAAc;wBACd,iBAAiB;wBACjB,MAAM;wBACN,OAAO;wBACP,SAAS;wBACT,YAAY;wBACZ,MAAM;wBACN,IAAI;wBACJ,WAAW;wBACX,SAAS;wBACT,gBAAgB;wBAChB,MAAM;qBACP;iBACF;aACF;YACD,YAAY,EAAE,CAAC,YAAY,EAAE,kBAAkB,CAAC;YAChD,+FAA+F;YAC/F,aAAa,EAAE,CAAC,aAAa,CAAC;YAC9B,aAAa,EAAE,CAAC,aAAa,CAAC;YAC9B,gGAAgG;YAChG,WAAW,EAAE,CAAC,WAAW,CAAC;SAC3B;KACF;CACF,CAAC,CAAC;AAEH,4EAA4E;AAC5E,MAAM,UAAU,EAAE,CAAC,GAAG,KAAmB;IACvC,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AAC5B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"english.d.ts","sourceRoot":"","sources":["../../src/lib/english.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AA4BnD,kHAAkH;AAClH,eAAO,MAAM,aAAa,EAAE;KACzB,CAAC,IAAI,MAAM,eAAe,CAAC,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;CAqC1E,CAAC"}
1
+ {"version":3,"file":"english.d.ts","sourceRoot":"","sources":["../../src/lib/english.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AA6BnD,kHAAkH;AAClH,eAAO,MAAM,aAAa,EAAE;KACzB,CAAC,IAAI,MAAM,eAAe,CAAC,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;CAsC1E,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { shellLabels, siteNavLabels } from '../shell/landmarks.js';
2
+ import { railLabels } from '../shell/rail.js';
2
3
  import { rightPanelLabels } from '../shell/right-panel.js';
3
4
  import { sidebarLabels, sidebarTriggerLabels } from '../shell/sidebar.js';
4
5
  import { siteMenuLabels } from '../shell/site-menu.js';
@@ -47,6 +48,7 @@ export const englishLabels = {
47
48
  fileUpload: fileUploadLabels,
48
49
  offlineAlert: offlineAlertLabels,
49
50
  pagination: paginationLabels,
51
+ rail: railLabels,
50
52
  rangeSlider: rangeSliderLabels,
51
53
  rightPanel: rightPanelLabels,
52
54
  search: searchLabels,
@@ -1 +1 @@
1
- {"version":3,"file":"english.js","sourceRoot":"","sources":["../../src/lib/english.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"english.js","sourceRoot":"","sources":["../../src/lib/english.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { type ReactNode } from 'react';
2
2
  import { type LabelValues } from './labels.js';
3
3
  import type { ShellLabels, SiteNavLabels } from '../shell/landmarks.js';
4
+ import type { RailLabels } from '../shell/rail.js';
4
5
  import type { RightPanelLabels } from '../shell/right-panel.js';
5
6
  import type { SidebarLabels, SidebarTriggerLabels } from '../shell/sidebar.js';
6
7
  import type { SiteMenuLabels } from '../shell/site-menu.js';
@@ -40,9 +41,9 @@ export interface SetsquareLabels {
40
41
  comboBox?: Partial<Omit<ComboBoxLabels, keyof FieldLabels>>;
41
42
  confirmDialog?: Partial<ConfirmDialogLabels>;
42
43
  copyButton?: Partial<CopyButtonLabels>;
43
- /** DateField, TimeField, DatePicker and DateRangePicker, over `field`. */
44
44
  /** DashboardShell's skip link. */
45
45
  dashboardShell?: Partial<ShellLabels>;
46
+ /** DateField, TimeField, DatePicker and DateRangePicker, over `field`. */
46
47
  dateField?: Partial<Omit<DateFieldLabels, keyof FieldLabels>>;
47
48
  dialog?: Partial<DialogLabels>;
48
49
  errorState?: Partial<ErrorStateLabels>;
@@ -54,6 +55,8 @@ export interface SetsquareLabels {
54
55
  fileUpload?: Partial<FileUploadLabels>;
55
56
  offlineAlert?: Partial<OfflineAlertLabels>;
56
57
  pagination?: Partial<PaginationLabels>;
58
+ /** Rail, the navigation of layout option C, laid over `sidebar`'s words for the same keys. */
59
+ rail?: Partial<RailLabels>;
57
60
  rangeSlider?: Partial<RangeSliderLabels>;
58
61
  /** RightPanel and PanelToggle. */
59
62
  rightPanel?: Partial<RightPanelLabels>;
@@ -1 +1 @@
1
- {"version":3,"file":"locale.d.ts","sourceRoot":"","sources":["../../src/lib/locale.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"locale.d.ts","sourceRoot":"","sources":["../../src/lib/locale.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"locale.js","sourceRoot":"","sources":["../../src/lib/locale.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,OAAO,EAAkB,MAAM,OAAO,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAoB,MAAM,aAAa,CAAC;AAkFjE,MAAM,aAAa,GAAG,aAAa,CAAqB,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;AAmB3F;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAwB;IAChF,MAAM,KAAK,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;IACxC,MAAM,QAAQ,GAAG,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC;IACxC,MAAM,KAAK,GAAG,OAAO,CAAqB,GAAG,EAAE;QAC7C,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;QAC/D,MAAM,MAAM,GAAuC,EAAE,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QACvE,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAmC,EAAE,CAAC;YACpF,MAAM,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,CAAC;QACrD,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAyB,EAAE,CAAC;IACjE,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IACrC,MAAM,QAAQ,GAAG,KAAC,aAAa,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YAAG,QAAQ,GAA0B,CAAC;IAC3F,OAAO,QAAQ,CAAC,CAAC,CAAC,KAAC,YAAY,IAAC,MAAM,EAAE,QAAQ,YAAG,QAAQ,GAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC;AACzF,CAAC;AAKD;;;GAGG;AACH,MAAM,UAAU,SAAS,CACvB,KAAwD,EACxD,QAAW,EACX,KAA6B;IAE7B,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;IACtD,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,CAAC;IAC/B,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CACzD,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAA2B,CAClD,CAAC;IACF,gHAAgH;IAChH,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,EAAE,GAAG,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IACrE,OAAO,OAAO,CAAC,GAAG,EAAE;QAClB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAA2B,CAAC;QAC3D,MAAM,OAAO,GAAG,QAAkC,CAAC;QACnD,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1E,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"locale.js","sourceRoot":"","sources":["../../src/lib/locale.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,OAAO,EAAkB,MAAM,OAAO,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAoB,MAAM,aAAa,CAAC;AAqFjE,MAAM,aAAa,GAAG,aAAa,CAAqB,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;AAmB3F;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAwB;IAChF,MAAM,KAAK,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;IACxC,MAAM,QAAQ,GAAG,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC;IACxC,MAAM,KAAK,GAAG,OAAO,CAAqB,GAAG,EAAE;QAC7C,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;QAC/D,MAAM,MAAM,GAAuC,EAAE,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QACvE,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAmC,EAAE,CAAC;YACpF,MAAM,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,CAAC;QACrD,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAyB,EAAE,CAAC;IACjE,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IACrC,MAAM,QAAQ,GAAG,KAAC,aAAa,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YAAG,QAAQ,GAA0B,CAAC;IAC3F,OAAO,QAAQ,CAAC,CAAC,CAAC,KAAC,YAAY,IAAC,MAAM,EAAE,QAAQ,YAAG,QAAQ,GAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC;AACzF,CAAC;AAKD;;;GAGG;AACH,MAAM,UAAU,SAAS,CACvB,KAAwD,EACxD,QAAW,EACX,KAA6B;IAE7B,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;IACtD,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,CAAC;IAC/B,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CACzD,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAA2B,CAClD,CAAC;IACF,gHAAgH;IAChH,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,EAAE,GAAG,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IACrE,OAAO,OAAO,CAAC,GAAG,EAAE;QAClB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAA2B,CAAC;QAC3D,MAAM,OAAO,GAAG,QAAkC,CAAC;QACnD,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1E,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;AAChC,CAAC"}
@@ -17,6 +17,9 @@ export interface AppHeaderProps {
17
17
  labels?: Partial<SidebarTriggerLabels>;
18
18
  className?: string;
19
19
  }
20
- /** The inset's top bar: sidebar trigger, where you are, search and the fixed actions. */
20
+ /**
21
+ * The inset's top bar: the navigation trigger, where you are, search and the fixed actions. With a Sidebar the
22
+ * trigger collapses it (or opens it on phones); with a Rail it is there on phones only.
23
+ */
21
24
  export declare function AppHeader({ breadcrumbs, brand, search, actions, labels, className, }: AppHeaderProps): import("react").JSX.Element;
22
25
  //# sourceMappingURL=app-header.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"app-header.d.ts","sourceRoot":"","sources":["../../src/shell/app-header.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,OAAO,EAAkB,KAAK,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEzE,MAAM,WAAW,cAAc;IAC7B,8DAA8D;IAC9D,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB;;;;OAIG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,2BAA2B;IAC3B,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,qHAAqH;IACrH,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,yFAAyF;AACzF,wBAAgB,SAAS,CAAC,EACxB,WAAW,EACX,KAAK,EACL,MAAM,EACN,OAAO,EACP,MAAM,EACN,SAAS,GACV,EAAE,cAAc,+BAuBhB"}
1
+ {"version":3,"file":"app-header.d.ts","sourceRoot":"","sources":["../../src/shell/app-header.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,OAAO,EAAkB,KAAK,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEzE,MAAM,WAAW,cAAc;IAC7B,8DAA8D;IAC9D,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB;;;;OAIG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,2BAA2B;IAC3B,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,qHAAqH;IACrH,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,EACxB,WAAW,EACX,KAAK,EACL,MAAM,EACN,OAAO,EACP,MAAM,EACN,SAAS,GACV,EAAE,cAAc,+BA0BhB"}
@@ -3,10 +3,13 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { cn } from '../lib/cn.js';
4
4
  import { useShell } from './dashboard-shell.js';
5
5
  import { SidebarTrigger } from './sidebar.js';
6
- /** The inset's top bar: sidebar trigger, where you are, search and the fixed actions. */
6
+ /**
7
+ * The inset's top bar: the navigation trigger, where you are, search and the fixed actions. With a Sidebar the
8
+ * trigger collapses it (or opens it on phones); with a Rail it is there on phones only.
9
+ */
7
10
  export function AppHeader({ breadcrumbs, brand, search, actions, labels, className, }) {
8
- const { size, productName } = useShell();
9
- return (_jsxs("header", { style: { viewTransitionName: 'shell-header' }, className: cn('flex h-header shrink-0 items-center gap-2 border-b border-border px-3 @min-[48rem]/shell:px-4', className), children: [_jsx(SidebarTrigger, { labels: labels }), _jsx("span", { "aria-hidden": "true", className: "mx-1 h-6 w-px bg-border @max-[48rem]/shell:hidden" }), _jsx("div", { className: "flex min-w-0 flex-1 items-center", children: size === 'mobile'
11
+ const { size, productName, navigation } = useShell();
12
+ return (_jsxs("header", { style: { viewTransitionName: 'shell-header' }, className: cn('flex h-header shrink-0 items-center gap-2 border-b border-border px-3 @min-[48rem]/shell:px-4', className), children: [_jsx(SidebarTrigger, { labels: labels }), navigation !== 'rail' && (_jsx("span", { "aria-hidden": "true", className: "mx-1 h-6 w-px bg-border @max-[48rem]/shell:hidden" })), _jsx("div", { className: "flex min-w-0 flex-1 items-center", children: size === 'mobile'
10
13
  ? (brand ?? _jsx("span", { className: "truncate text-base font-bold", children: productName }))
11
14
  : breadcrumbs }), _jsxs("div", { className: "flex shrink-0 items-center gap-1", children: [search, actions] })] }));
12
15
  }
@@ -1 +1 @@
1
- {"version":3,"file":"app-header.js","sourceRoot":"","sources":["../../src/shell/app-header.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAGb,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,cAAc,EAA6B,MAAM,cAAc,CAAC;AAoBzE,yFAAyF;AACzF,MAAM,UAAU,SAAS,CAAC,EACxB,WAAW,EACX,KAAK,EACL,MAAM,EACN,OAAO,EACP,MAAM,EACN,SAAS,GACM;IACf,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,QAAQ,EAAE,CAAC;IACzC,OAAO,CACL,kBACE,KAAK,EAAE,EAAE,kBAAkB,EAAE,cAAc,EAAE,EAC7C,SAAS,EAAE,EAAE,CACX,+FAA+F,EAC/F,SAAS,CACV,aAED,KAAC,cAAc,IAAC,MAAM,EAAE,MAAM,GAAI,EAClC,8BAAkB,MAAM,EAAC,SAAS,EAAC,mDAAmD,GAAG,EACzF,cAAK,SAAS,EAAC,kCAAkC,YAC9C,IAAI,KAAK,QAAQ;oBAChB,CAAC,CAAC,CAAC,KAAK,IAAI,eAAM,SAAS,EAAC,8BAA8B,YAAE,WAAW,GAAQ,CAAC;oBAChF,CAAC,CAAC,WAAW,GACX,EACN,eAAK,SAAS,EAAC,kCAAkC,aAC9C,MAAM,EACN,OAAO,IACJ,IACC,CACV,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"app-header.js","sourceRoot":"","sources":["../../src/shell/app-header.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAGb,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,cAAc,EAA6B,MAAM,cAAc,CAAC;AAoBzE;;;GAGG;AACH,MAAM,UAAU,SAAS,CAAC,EACxB,WAAW,EACX,KAAK,EACL,MAAM,EACN,OAAO,EACP,MAAM,EACN,SAAS,GACM;IACf,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,QAAQ,EAAE,CAAC;IACrD,OAAO,CACL,kBACE,KAAK,EAAE,EAAE,kBAAkB,EAAE,cAAc,EAAE,EAC7C,SAAS,EAAE,EAAE,CACX,+FAA+F,EAC/F,SAAS,CACV,aAED,KAAC,cAAc,IAAC,MAAM,EAAE,MAAM,GAAI,EAEjC,UAAU,KAAK,MAAM,IAAI,CACxB,8BAAkB,MAAM,EAAC,SAAS,EAAC,mDAAmD,GAAG,CAC1F,EACD,cAAK,SAAS,EAAC,kCAAkC,YAC9C,IAAI,KAAK,QAAQ;oBAChB,CAAC,CAAC,CAAC,KAAK,IAAI,eAAM,SAAS,EAAC,8BAA8B,YAAE,WAAW,GAAQ,CAAC;oBAChF,CAAC,CAAC,WAAW,GACX,EACN,eAAK,SAAS,EAAC,kCAAkC,aAC9C,MAAM,EACN,OAAO,IACJ,IACC,CACV,CAAC;AACJ,CAAC"}
@@ -2,6 +2,8 @@ import { type CSSProperties, type ReactNode, type RefObject } from 'react';
2
2
  import { type ShellLabels } from './landmarks.js';
3
3
  export type ShellSize = 'mobile' | 'tablet' | 'laptop' | 'desktop';
4
4
  export type PanelMode = 'inline' | 'sheet';
5
+ /** What the shell's navigation is: `Sidebar` (option B) or `Rail` (option C). */
6
+ export type ShellNavigation = 'sidebar' | 'rail';
5
7
  export interface ShellContextValue {
6
8
  size: ShellSize;
7
9
  sidebarCollapsed: boolean;
@@ -13,6 +15,8 @@ export interface ShellContextValue {
13
15
  panelMode: PanelMode;
14
16
  panelToggleRef: RefObject<HTMLButtonElement | null>;
15
17
  productName: string;
18
+ /** The navigation the shell holds, from its `navigation` prop. */
19
+ navigation: ShellNavigation;
16
20
  /** True when `size` was forced, so container-query fallbacks stand down. */
17
21
  isSizeForced: boolean;
18
22
  }
@@ -30,6 +34,12 @@ export interface DashboardShellProps {
30
34
  defaultSidebarCollapsed?: boolean;
31
35
  /** Force a size instead of measuring (previews, tests, Storybook). */
32
36
  size?: ShellSize;
37
+ /**
38
+ * The navigation it holds: `sidebar` (default) or `rail`. With `rail`, AppHeader's trigger only appears where it
39
+ * opens the phone's Sheet, since a rail has nothing to collapse. A prop rather than the Rail registering itself,
40
+ * so the server renders the right header and nothing changes when the page hydrates.
41
+ */
42
+ navigation?: ShellNavigation;
33
43
  /** @deprecated Use `labels.skipLink`. Kept for one release. */
34
44
  skipLinkLabel?: string;
35
45
  labels?: Partial<ShellLabels>;
@@ -37,12 +47,13 @@ export interface DashboardShellProps {
37
47
  style?: CSSProperties;
38
48
  }
39
49
  /**
40
- * Option B — the inset shell. Measures its own width and decides:
50
+ * The inset shell. Measures its own width and decides:
41
51
  * desktop ≥ bp-xl: sidebar expanded, panel inline · laptop ≥ bp-lg: sidebar icons, panel inline ·
42
52
  * tablet ≥ bp-md: sidebar icons, panel as a Sheet · mobile: sidebar and panel both Sheets.
53
+ * With `navigation="rail"` (option C) the Rail stays as it is at every width from bp-md, and is a Sheet on phones.
43
54
  * CSS container queries on `shell` do the first layout, so there is no flash before measuring.
44
55
  */
45
- export declare function DashboardShell({ children, productName, defaultPanelOpen, defaultMobileNavOpen, defaultSidebarCollapsed, size: forcedSize, skipLinkLabel, labels, className, style, }: DashboardShellProps): import("react").JSX.Element;
56
+ export declare function DashboardShell({ children, productName, defaultPanelOpen, defaultMobileNavOpen, defaultSidebarCollapsed, size: forcedSize, navigation, skipLinkLabel, labels, className, style, }: DashboardShellProps): import("react").JSX.Element;
46
57
  /** The raised surface that holds the header, the page and the right panel. Edge to edge on phones. */
47
58
  export declare function ShellInset({ children, className }: {
48
59
  children: ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard-shell.d.ts","sourceRoot":"","sources":["../../src/shell/dashboard-shell.tsx"],"names":[],"mappings":"AAEA,OAAO,EASL,KAAK,aAAa,EAClB,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,OAAO,EAAY,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE5D,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;AACnE,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE3C,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,SAAS,CAAC;IAChB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,aAAa,EAAE,OAAO,CAAC;IACvB,gBAAgB,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,SAAS,EAAE,SAAS,CAAC;IACrB,cAAc,EAAE,SAAS,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC;IACpD,WAAW,EAAE,MAAM,CAAC;IACpB,4EAA4E;IAC5E,YAAY,EAAE,OAAO,CAAC;CACvB;AAID,wBAAgB,QAAQ,IAAI,iBAAiB,CAI5C;AACD,wFAAwF;AACxF,wBAAgB,gBAAgB,IAAI,iBAAiB,GAAG,IAAI,CAE3D;AAeD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,SAAS,CAAC;IACpB,wFAAwF;IACxF,WAAW,EAAE,MAAM,CAAC;IACpB,+FAA+F;IAC/F,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,kFAAkF;IAClF,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,sEAAsE;IACtE,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,+DAA+D;IAC/D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,WAAW,EACX,gBAAgB,EAChB,oBAA4B,EAC5B,uBAAuB,EACvB,IAAI,EAAE,UAAU,EAChB,aAAa,EACb,MAAM,EACN,SAAS,EACT,KAAK,GACN,EAAE,mBAAmB,+BA4FrB;AAED,sGAAsG;AACtG,wBAAgB,UAAU,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,+BAY9F;AAED,6DAA6D;AAC7D,wBAAgB,SAAS,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,+BAE7F;AAMD;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,SAAS,EACT,iBAAiB,EAAE,UAAU,GAC9B,EAAE;IACD,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,+BAsDA"}
1
+ {"version":3,"file":"dashboard-shell.d.ts","sourceRoot":"","sources":["../../src/shell/dashboard-shell.tsx"],"names":[],"mappings":"AAEA,OAAO,EASL,KAAK,aAAa,EAClB,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,OAAO,EAAY,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE5D,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;AACnE,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;AAC3C,iFAAiF;AACjF,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,MAAM,CAAC;AAEjD,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,SAAS,CAAC;IAChB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,aAAa,EAAE,OAAO,CAAC;IACvB,gBAAgB,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,SAAS,EAAE,SAAS,CAAC;IACrB,cAAc,EAAE,SAAS,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC;IACpD,WAAW,EAAE,MAAM,CAAC;IACpB,kEAAkE;IAClE,UAAU,EAAE,eAAe,CAAC;IAC5B,4EAA4E;IAC5E,YAAY,EAAE,OAAO,CAAC;CACvB;AAID,wBAAgB,QAAQ,IAAI,iBAAiB,CAI5C;AACD,wFAAwF;AACxF,wBAAgB,gBAAgB,IAAI,iBAAiB,GAAG,IAAI,CAE3D;AAeD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,SAAS,CAAC;IACpB,wFAAwF;IACxF,WAAW,EAAE,MAAM,CAAC;IACpB,+FAA+F;IAC/F,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,kFAAkF;IAClF,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,sEAAsE;IACtE,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB;;;;OAIG;IACH,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,+DAA+D;IAC/D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,WAAW,EACX,gBAAgB,EAChB,oBAA4B,EAC5B,uBAAuB,EACvB,IAAI,EAAE,UAAU,EAChB,UAAsB,EACtB,aAAa,EACb,MAAM,EACN,SAAS,EACT,KAAK,GACN,EAAE,mBAAmB,+BA8FrB;AAED,sGAAsG;AACtG,wBAAgB,UAAU,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,+BAY9F;AAED,6DAA6D;AAC7D,wBAAgB,SAAS,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,+BAE7F;AAMD;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,SAAS,EACT,iBAAiB,EAAE,UAAU,GAC9B,EAAE;IACD,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,+BAsDA"}
@@ -30,12 +30,13 @@ function sizeFor(width, bp) {
30
30
  return 'desktop';
31
31
  }
32
32
  /**
33
- * Option B — the inset shell. Measures its own width and decides:
33
+ * The inset shell. Measures its own width and decides:
34
34
  * desktop ≥ bp-xl: sidebar expanded, panel inline · laptop ≥ bp-lg: sidebar icons, panel inline ·
35
35
  * tablet ≥ bp-md: sidebar icons, panel as a Sheet · mobile: sidebar and panel both Sheets.
36
+ * With `navigation="rail"` (option C) the Rail stays as it is at every width from bp-md, and is a Sheet on phones.
36
37
  * CSS container queries on `shell` do the first layout, so there is no flash before measuring.
37
38
  */
38
- export function DashboardShell({ children, productName, defaultPanelOpen, defaultMobileNavOpen = false, defaultSidebarCollapsed, size: forcedSize, skipLinkLabel, labels, className, style, }) {
39
+ export function DashboardShell({ children, productName, defaultPanelOpen, defaultMobileNavOpen = false, defaultSidebarCollapsed, size: forcedSize, navigation = 'sidebar', skipLinkLabel, labels, className, style, }) {
39
40
  const ref = useRef(null);
40
41
  const [measured, setMeasured] = useState(null);
41
42
  const size = forcedSize ?? measured ?? 'desktop';
@@ -87,6 +88,7 @@ export function DashboardShell({ children, productName, defaultPanelOpen, defaul
87
88
  panelMode,
88
89
  panelToggleRef,
89
90
  productName,
91
+ navigation,
90
92
  isSizeForced: !!forcedSize,
91
93
  }), [
92
94
  size,
@@ -97,6 +99,7 @@ export function DashboardShell({ children, productName, defaultPanelOpen, defaul
97
99
  setPanelOpen,
98
100
  panelMode,
99
101
  productName,
102
+ navigation,
100
103
  forcedSize,
101
104
  ]);
102
105
  return (_jsx(ShellContext.Provider, { value: value, children: _jsxs("div", { ref: ref, "data-size": size, style: style, className: cn('@container/shell relative flex h-dvh min-h-0 w-full overflow-hidden bg-sidebar text-foreground', className), children: [_jsx(SkipLink, { href: "#main", shell: "dashboardShell", label: skipLinkLabel, labels: labels }), children] }) }));
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard-shell.js","sourceRoot":"","sources":["../../src/shell/dashboard-shell.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dashboard-shell.js","sourceRoot":"","sources":["../../src/shell/dashboard-shell.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ import type { ReactElement } from 'react';
2
+ import { type IconProp } from '../ui/icon.js';
3
+ /** What a nav item is doing: something is being worked on, or something waits for the person. */
4
+ export type NavStatus = 'working' | 'attention';
5
+ /** A detail's tone. `warning` adds an icon, the warning colour and words in the item's name. */
6
+ export type NavDetailTone = 'neutral' | 'warning';
7
+ /**
8
+ * A nav item's live status and detail, on SidebarItem and RailItem. `statusLabel` comes with `status`: it is said as
9
+ * part of the item's name, and is in the tooltip where the name is one.
10
+ */
11
+ export type NavItemLiveProps = {
12
+ /**
13
+ * A short value: "4/8", "$1.20". Under the name in a rail, after it in the sidebar; read as part of the name, in
14
+ * tabular numbers.
15
+ */
16
+ detail?: string;
17
+ /** Default `neutral`. `warning` ("near the budget") adds an icon and the label's words to the name. */
18
+ detailTone?: NavDetailTone;
19
+ } & ({
20
+ status?: undefined;
21
+ statusLabel?: undefined;
22
+ } | {
23
+ /** A badge on the icon: `working` is a ring that pulses as it appears, `attention` a dot in a ring. */
24
+ status: NavStatus;
25
+ /** Said as part of the name: "Claude is working", "A draft is waiting for you". */
26
+ statusLabel: string;
27
+ });
28
+ /** A status with no words to say it would be colour and shape alone: say so in the console. */
29
+ export declare function warnUnlabelledStatus(component: string, status?: NavStatus, label?: string): void;
30
+ /**
31
+ * The item's icon in a box that holds its status badge. The icon is rendered by `renderIcon`, so a component, an
32
+ * element or a custom drawing (a progress ring) all work; the box carries the colour, so a drawing that uses
33
+ * `currentColor` turns brand on the current page even if it ignores `className`.
34
+ */
35
+ export declare function NavIcon({ icon, status, className, }: {
36
+ icon: IconProp;
37
+ status?: NavStatus;
38
+ className?: string;
39
+ }): ReactElement;
40
+ /** The detail as shown: muted and tabular, or the warning colour after a warning icon. Hidden from assistive tech. */
41
+ export declare function NavDetail({ detail, tone, className, }: {
42
+ detail: string;
43
+ tone?: NavDetailTone;
44
+ className?: string;
45
+ }): ReactElement;
46
+ //# sourceMappingURL=nav-status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nav-status.d.ts","sourceRoot":"","sources":["../../src/shell/nav-status.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAG1C,OAAO,EAAc,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE1D,iGAAiG;AACjG,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;AAChD,gGAAgG;AAChG,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,SAAS,CAAC;AAElD;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uGAAuG;IACvG,UAAU,CAAC,EAAE,aAAa,CAAC;CAC5B,GAAG,CACA;IAAE,MAAM,CAAC,EAAE,SAAS,CAAC;IAAC,WAAW,CAAC,EAAE,SAAS,CAAA;CAAE,GAC/C;IACE,uGAAuG;IACvG,MAAM,EAAE,SAAS,CAAC;IAClB,mFAAmF;IACnF,WAAW,EAAE,MAAM,CAAC;CACrB,CACJ,CAAC;AAIF,+FAA+F;AAC/F,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE,MAAM,QAMzF;AAED;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,EACtB,IAAI,EACJ,MAAM,EACN,SAAS,GACV,EAAE;IACD,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,YAAY,CAUf;AAED,sHAAsH;AACtH,wBAAgB,SAAS,CAAC,EACxB,MAAM,EACN,IAAI,EACJ,SAAS,GACV,EAAE;IACD,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,YAAY,CAef"}
@@ -0,0 +1,26 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { TriangleAlert } from 'lucide-react';
3
+ import { cn } from '../lib/cn.js';
4
+ import { renderIcon } from '../ui/icon.js';
5
+ // Developer-facing: said once per page.
6
+ let warned = false;
7
+ /** A status with no words to say it would be colour and shape alone: say so in the console. */
8
+ export function warnUnlabelledStatus(component, status, label) {
9
+ if (!status || label || warned)
10
+ return;
11
+ warned = true;
12
+ console.error(`<${component} status="${status}"> has no statusLabel: the badge is then shown but never said. Give it statusLabel.`);
13
+ }
14
+ /**
15
+ * The item's icon in a box that holds its status badge. The icon is rendered by `renderIcon`, so a component, an
16
+ * element or a custom drawing (a progress ring) all work; the box carries the colour, so a drawing that uses
17
+ * `currentColor` turns brand on the current page even if it ignores `className`.
18
+ */
19
+ export function NavIcon({ icon, status, className, }) {
20
+ return (_jsxs("span", { className: cn('nav-icon size-5', className), children: [renderIcon(icon, 'size-5 shrink-0'), status && (_jsx("span", { "aria-hidden": "true", "data-status": status, className: "nav-status" }, status))] }));
21
+ }
22
+ /** The detail as shown: muted and tabular, or the warning colour after a warning icon. Hidden from assistive tech. */
23
+ export function NavDetail({ detail, tone, className, }) {
24
+ return (_jsxs("span", { "aria-hidden": "true", "data-tone": tone ?? 'neutral', className: cn('inline-flex items-center gap-1 text-[13px] leading-4 font-medium whitespace-nowrap text-muted-foreground tabular-nums', tone === 'warning' && 'font-semibold text-warning', className), children: [tone === 'warning' && _jsx(TriangleAlert, { className: "size-3.5 shrink-0" }), detail] }));
25
+ }
26
+ //# sourceMappingURL=nav-status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nav-status.js","sourceRoot":"","sources":["../../src/shell/nav-status.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,UAAU,EAAiB,MAAM,eAAe,CAAC;AA6B1D,wCAAwC;AACxC,IAAI,MAAM,GAAG,KAAK,CAAC;AACnB,+FAA+F;AAC/F,MAAM,UAAU,oBAAoB,CAAC,SAAiB,EAAE,MAAkB,EAAE,KAAc;IACxF,IAAI,CAAC,MAAM,IAAI,KAAK,IAAI,MAAM;QAAE,OAAO;IACvC,MAAM,GAAG,IAAI,CAAC;IACd,OAAO,CAAC,KAAK,CACX,IAAI,SAAS,YAAY,MAAM,qFAAqF,CACrH,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,OAAO,CAAC,EACtB,IAAI,EACJ,MAAM,EACN,SAAS,GAKV;IACC,OAAO,CACL,gBAAM,SAAS,EAAE,EAAE,CAAC,iBAAiB,EAAE,SAAS,CAAC,aAC9C,UAAU,CAAC,IAAI,EAAE,iBAAiB,CAAC,EACnC,MAAM,IAAI,CAET,8BAA+B,MAAM,iBAAc,MAAM,EAAE,SAAS,EAAC,YAAY,IAAtE,MAAM,CAAmE,CACrF,IACI,CACR,CAAC;AACJ,CAAC;AAED,sHAAsH;AACtH,MAAM,UAAU,SAAS,CAAC,EACxB,MAAM,EACN,IAAI,EACJ,SAAS,GAKV;IACC,OAAO,CACL,+BACc,MAAM,eACP,IAAI,IAAI,SAAS,EAC5B,SAAS,EAAE,EAAE,CACX,uHAAuH,EACvH,IAAI,KAAK,SAAS,IAAI,4BAA4B,EAClD,SAAS,CACV,aAEA,IAAI,KAAK,SAAS,IAAI,KAAC,aAAa,IAAC,SAAS,EAAC,mBAAmB,GAAG,EACrE,MAAM,IACF,CACR,CAAC;AACJ,CAAC"}
@@ -0,0 +1,73 @@
1
+ import { type ReactNode } from 'react';
2
+ import type { IconProp } from '../ui/icon.js';
3
+ import { type NavItemLiveProps } from './nav-status.js';
4
+ /** The rail's words, for the `labels` prop. App-wide, `SetsquareLabels.rail` over `SetsquareLabels.sidebar`. */
5
+ export interface RailLabels {
6
+ /** Names the Sheet it becomes on phones; `{product}` is the shell's `productName`. */
7
+ navigation: string;
8
+ /** Names the navigation landmark. */
9
+ primary: string;
10
+ /** Added to an item's name for its `detail`: "Spend, $1.20". */
11
+ detail: string;
12
+ /** The same for a `detailTone="warning"` detail, with words for the warning: "Spend, $1.20, warning". */
13
+ detailWarning: string;
14
+ /** Added to an item's name for its `statusLabel`: "Scenes, Claude is working". */
15
+ status: string;
16
+ }
17
+ export declare const railLabels: RailLabels;
18
+ export interface RailProps {
19
+ children: ReactNode;
20
+ labels?: Partial<RailLabels>;
21
+ className?: string;
22
+ }
23
+ /**
24
+ * Layout option C: a labelled navigation rail, `--rail-width` wide, used in a DashboardShell instead of Sidebar. Every
25
+ * item shows its icon over its name, so every destination is visible without the sidebar's width. It never
26
+ * collapses or expands. On phones it is the same Sheet the Sidebar becomes, with the items as rows. Give the shell
27
+ * `navigation="rail"`, so AppHeader shows its trigger only where it opens that Sheet.
28
+ */
29
+ export declare function Rail({ children, labels: given, className }: RailProps): import("react").JSX.Element;
30
+ /** The product's mark, at the top. In the phone's Sheet it sits at the start of the row, as the items do. */
31
+ export declare function RailHeader({ children, className }: {
32
+ children: ReactNode;
33
+ className?: string;
34
+ }): import("react").JSX.Element;
35
+ /**
36
+ * The items. Scrolls when they are taller than the shell, and is positioned, so the visually hidden group names
37
+ * inside it scroll with it rather than being laid out against the shell.
38
+ */
39
+ export declare function RailContent({ children, className }: {
40
+ children: ReactNode;
41
+ className?: string;
42
+ }): import("react").JSX.Element;
43
+ /** Pinned to the bottom: help, settings, the account. Put items in a `RailList`, as in a SidebarFooter. */
44
+ export declare function RailFooter({ children, className }: {
45
+ children: ReactNode;
46
+ className?: string;
47
+ }): import("react").JSX.Element;
48
+ /**
49
+ * A labelled group of items. Its name is visually hidden and names the group for assistive technology; a rule above
50
+ * it separates it from what comes before. Groups are `role="group"`, not landmarks, so the landmark list stays short.
51
+ */
52
+ export declare function RailGroup({ label, children, className, }: {
53
+ label: string;
54
+ children: ReactNode;
55
+ className?: string;
56
+ }): import("react").JSX.Element;
57
+ /** Items outside a group: a list, as a group's are. */
58
+ export declare function RailList({ children, className }: {
59
+ children: ReactNode;
60
+ className?: string;
61
+ }): import("react").JSX.Element;
62
+ export type RailItemProps = {
63
+ href?: string;
64
+ onPress?: () => void;
65
+ /** A component, an element, or a drawing of the product's own (a progress ring) that takes `className`. */
66
+ icon: IconProp;
67
+ /** The name, always shown under the icon: two lines at most, hyphenated rather than cut off. */
68
+ children: string;
69
+ /** Marks the current page: brand-subtle fill, a marker edge, the icon and name in brand at weight 700, and aria-current. */
70
+ isCurrent?: boolean;
71
+ } & NavItemLiveProps;
72
+ export declare function RailItem({ href, onPress, icon, children, isCurrent, detail, detailTone, status, statusLabel, }: RailItemProps): import("react").JSX.Element;
73
+ //# sourceMappingURL=rail.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rail.d.ts","sourceRoot":"","sources":["../../src/shell/rail.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAoB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAIzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAG9C,OAAO,EAA4C,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAElG,gHAAgH;AAChH,MAAM,WAAW,UAAU;IACzB,sFAAsF;IACtF,UAAU,EAAE,MAAM,CAAC;IACnB,qCAAqC;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,gEAAgE;IAChE,MAAM,EAAE,MAAM,CAAC;IACf,yGAAyG;IACzG,aAAa,EAAE,MAAM,CAAC;IACtB,kFAAkF;IAClF,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,UAAU,EAAE,UAMxB,CAAC;AAEF,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAKD;;;;;GAKG;AACH,wBAAgB,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,SAAS,+BA4CrE;AAED,6GAA6G;AAC7G,wBAAgB,UAAU,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,+BAY9F;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,+BAY/F;AAED,2GAA2G;AAC3G,wBAAgB,UAAU,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,+BAY9F;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,EACxB,KAAK,EACL,QAAQ,EACR,SAAS,GACV,EAAE;IACD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,+BAcA;AAED,uDAAuD;AACvD,wBAAgB,QAAQ,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,+BAE5F;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,2GAA2G;IAC3G,IAAI,EAAE,QAAQ,CAAC;IACf,gGAAgG;IAChG,QAAQ,EAAE,MAAM,CAAC;IACjB,4HAA4H;IAC5H,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,GAAG,gBAAgB,CAAC;AAErB,wBAAgB,QAAQ,CAAC,EACvB,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,MAAM,EACN,UAAU,EACV,MAAM,EACN,WAAW,GACZ,EAAE,aAAa,+BAkEf"}
@@ -0,0 +1,87 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useEffect, useId } from 'react';
4
+ import { Link } from 'react-aria-components';
5
+ import { cn } from '../lib/cn.js';
6
+ import { useLabels } from '../lib/locale.js';
7
+ import { Sheet } from '../ui/sheet.js';
8
+ import { useShell } from './dashboard-shell.js';
9
+ import { NavDetail, NavIcon, warnUnlabelledStatus } from './nav-status.js';
10
+ export const railLabels = {
11
+ navigation: '{product} navigation',
12
+ primary: 'Primary',
13
+ detail: ', {detail}',
14
+ detailWarning: ', {detail}, warning',
15
+ status: ', {status}',
16
+ };
17
+ // Developer-facing: said once per page, not once per render.
18
+ let warned = false;
19
+ /**
20
+ * Layout option C: a labelled navigation rail, `--rail-width` wide, used in a DashboardShell instead of Sidebar. Every
21
+ * item shows its icon over its name, so every destination is visible without the sidebar's width. It never
22
+ * collapses or expands. On phones it is the same Sheet the Sidebar becomes, with the items as rows. Give the shell
23
+ * `navigation="rail"`, so AppHeader shows its trigger only where it opens that Sheet.
24
+ */
25
+ export function Rail({ children, labels: given, className }) {
26
+ const { size, mobileNavOpen, setMobileNavOpen, productName, isSizeForced, navigation } = useShell();
27
+ // The sidebar's app-wide words, then the rail's: a product that switches keeps its translations.
28
+ const t = useLabels(['sidebar', 'rail'], railLabels, given);
29
+ useEffect(() => {
30
+ if (navigation === 'rail' || warned)
31
+ return;
32
+ warned = true;
33
+ console.error('<Rail> is inside a <DashboardShell> without navigation="rail": AppHeader will show a sidebar toggle that does nothing. Pass navigation="rail" to the shell.');
34
+ }, [navigation]);
35
+ if (size === 'mobile') {
36
+ return (_jsx(Sheet, { side: "left", isOpen: mobileNavOpen, onOpenChange: setMobileNavOpen, "aria-label": t('navigation', { product: productName }), children: _jsx("nav", { "aria-label": t('primary'), "data-layout": "rows", className: "group/rail flex h-full min-h-0 flex-col text-sidebar-foreground", children: children }) }));
37
+ }
38
+ return (_jsx("nav", { "aria-label": t('primary'), "data-layout": "tiles", style: { viewTransitionName: 'shell-sidebar' }, className: cn('group/rail flex h-full min-h-0 w-rail shrink-0 flex-col text-sidebar-foreground', !isSizeForced && '@max-[48rem]/shell:hidden', className), children: children }));
39
+ }
40
+ /** The product's mark, at the top. In the phone's Sheet it sits at the start of the row, as the items do. */
41
+ export function RailHeader({ children, className }) {
42
+ return (_jsx("div", { className: cn('flex min-h-[calc(var(--nav-item-height)+12px)] shrink-0 items-center justify-center px-1 pt-3', 'group-data-[layout=rows]/rail:justify-start group-data-[layout=rows]/rail:px-[22px]', className), children: children }));
43
+ }
44
+ /**
45
+ * The items. Scrolls when they are taller than the shell, and is positioned, so the visually hidden group names
46
+ * inside it scroll with it rather than being laid out against the shell.
47
+ */
48
+ export function RailContent({ children, className }) {
49
+ return (_jsx("div", { className: cn('relative flex min-h-0 flex-1 flex-col gap-(--nav-item-gap) overflow-y-auto px-1 py-3', 'group-data-[layout=rows]/rail:px-3', className), children: children }));
50
+ }
51
+ /** Pinned to the bottom: help, settings, the account. Put items in a `RailList`, as in a SidebarFooter. */
52
+ export function RailFooter({ children, className }) {
53
+ return (_jsx("div", { className: cn('flex shrink-0 flex-col gap-(--nav-item-gap) border-t border-sidebar-border px-1 py-3', 'group-data-[layout=rows]/rail:px-3', className), children: children }));
54
+ }
55
+ /**
56
+ * A labelled group of items. Its name is visually hidden and names the group for assistive technology; a rule above
57
+ * it separates it from what comes before. Groups are `role="group"`, not landmarks, so the landmark list stays short.
58
+ */
59
+ export function RailGroup({ label, children, className, }) {
60
+ const id = useId();
61
+ return (_jsxs("div", { role: "group", "aria-labelledby": id, className: cn('not-first:border-t not-first:border-sidebar-border not-first:pt-3', className), children: [_jsx("h2", { id: id, className: "sr-only", children: label }), _jsx(RailList, { children: children })] }));
62
+ }
63
+ /** Items outside a group: a list, as a group's are. */
64
+ export function RailList({ children, className }) {
65
+ return _jsx("ul", { className: cn('flex flex-col gap-(--nav-item-gap)', className), children: children });
66
+ }
67
+ export function RailItem({ href, onPress, icon, children, isCurrent, detail, detailTone, status, statusLabel, }) {
68
+ const t = useLabels(['sidebar', 'rail'], railLabels, undefined);
69
+ warnUnlabelledStatus('RailItem', status, statusLabel);
70
+ return (_jsx("li", { children: _jsx(Link, { href: href, onPress: onPress, "aria-current": isCurrent ? 'page' : undefined, className: cn(
71
+ // Layer 1: the row is the target, the rail's full width and at least --target-min tall.
72
+ 'group/item relative flex min-h-target w-full cursor-pointer items-center text-sidebar-foreground no-underline outline-none'), children: _jsxs("span", { className: cn('relative flex w-full min-w-0 flex-col items-center gap-1 rounded-md px-0.5 py-2', 'group-data-hovered/item:bg-sidebar-accent group-data-hovered/item:text-sidebar-accent-foreground group-data-focus-visible/item:focus-ring', 'group-aria-[current=page]/item:bg-brand-subtle group-aria-[current=page]/item:text-foreground',
73
+ // The marker: a 3px edge along the tile's start, an inset shadow so it follows the rounded corners.
74
+ 'group-aria-[current=page]/item:shadow-[inset_3px_0_0_var(--sidebar-primary)]',
75
+ // Hovered, the current page keeps its fill: the hover ground under brand text would be a pair the audit doesn't
76
+ // promise. Stacked variants, so this is more specific than the hover rule whatever order they're written in.
77
+ 'group-data-hovered/item:group-aria-[current=page]/item:bg-brand-subtle group-data-hovered/item:group-aria-[current=page]/item:text-foreground',
78
+ // Forced colours drop shadows and fills: there the marker is a bar in Highlight.
79
+ 'forced-colors:group-aria-[current=page]/item:before:absolute forced-colors:group-aria-[current=page]/item:before:inset-y-0 forced-colors:group-aria-[current=page]/item:before:start-0 forced-colors:group-aria-[current=page]/item:before:w-[3px] forced-colors:group-aria-[current=page]/item:before:rounded-s-md forced-colors:group-aria-[current=page]/item:before:bg-[Highlight] forced-colors:group-aria-[current=page]/item:before:forced-color-adjust-none',
80
+ // In the phone's Sheet, a row: the icon beside the name, as the Sidebar's are.
81
+ 'group-data-[layout=rows]/rail:min-h-nav-item group-data-[layout=rows]/rail:flex-row group-data-[layout=rows]/rail:gap-3 group-data-[layout=rows]/rail:px-3 group-data-[layout=rows]/rail:py-0',
82
+ // The status badge's cut-out follows the ground: the rail, the hovered tile, the current one.
83
+ '[--nav-cut:var(--sidebar)] group-data-hovered/item:[--nav-cut:var(--sidebar-accent)] group-aria-[current=page]/item:[--nav-cut:var(--brand-subtle)] group-data-hovered/item:group-aria-[current=page]/item:[--nav-cut:var(--brand-subtle)]'), children: [_jsx(NavIcon, { icon: icon, status: status, className: "group-aria-[current=page]/item:text-brand" }), _jsxs("span", { "data-name": "", className: cn('w-full min-w-0 text-center text-[13px] leading-4 font-medium [overflow-wrap:anywhere] hyphens-auto', 'group-aria-[current=page]/item:font-bold group-aria-[current=page]/item:text-brand', 'group-data-[layout=rows]/rail:flex-1 group-data-[layout=rows]/rail:text-start group-data-[layout=rows]/rail:text-sm group-data-[layout=rows]/rail:leading-5'), children: [children, detail && (_jsx("span", { className: "sr-only", children: t(detailTone === 'warning' ? 'detailWarning' : 'detail', { detail }) })), statusLabel && _jsx("span", { className: "sr-only", children: t('status', { status: statusLabel }) })] }), detail && (_jsx(NavDetail, { detail: detail, tone: detailTone,
84
+ // Under the name in a tile, wrapping rather than running out of it; after the name in a row.
85
+ className: "max-w-full flex-wrap justify-center text-center whitespace-normal [overflow-wrap:anywhere] group-data-[layout=rows]/rail:whitespace-nowrap" }))] }) }) }));
86
+ }
87
+ //# sourceMappingURL=rail.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rail.js","sourceRoot":"","sources":["../../src/shell/rail.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { type ReactNode } from 'react';
2
2
  import { type Key } from 'react-aria-components';
3
3
  import { type IconProp } from '../ui/icon.js';
4
+ import { type NavItemLiveProps } from './nav-status.js';
4
5
  /** True when the sidebar shows icons only (never inside the mobile Sheet). */
5
6
  export declare const useSidebarCollapsed: () => boolean;
6
7
  /** The sidebar's words, for the `labels` prop. */
@@ -13,6 +14,18 @@ export interface SidebarLabels {
13
14
  count: string;
14
15
  /** A collapsed item's tooltip, with its count: "Projects (12)". */
15
16
  tipCount: string;
17
+ /** Added to an item's name for its `detail`: "Spend, $1.20". */
18
+ detail: string;
19
+ /** The same for a `detailTone="warning"` detail, with words for the warning: "Spend, $1.20, warning". */
20
+ detailWarning: string;
21
+ /** Added to an item's name for its `statusLabel`: "Drafts, A draft is waiting for you". */
22
+ status: string;
23
+ /** A collapsed item's tooltip with its detail: `{name}` is the tooltip so far. "Spend ($1.20)". */
24
+ tipDetail: string;
25
+ /** The same for a warning detail: "Spend ($1.20, warning)". */
26
+ tipDetailWarning: string;
27
+ /** A collapsed item's tooltip with its status: `{tip}` is the tooltip so far. "Scenes: Claude is working". */
28
+ tipStatus: string;
16
29
  }
17
30
  export declare const sidebarLabels: SidebarLabels;
18
31
  export interface SidebarProps {
@@ -49,17 +62,25 @@ export declare function SidebarList({ children, className }: {
49
62
  children: ReactNode;
50
63
  className?: string;
51
64
  }): import("react").JSX.Element;
52
- export interface SidebarItemProps {
65
+ export type SidebarItemProps = {
53
66
  href?: string;
67
+ /** A component, an element, or a drawing of the product's own (a progress ring) that takes `className`. */
54
68
  icon: IconProp;
55
69
  children: string;
56
- /** Marks the current page: brand-subtle fill, marker bar and weight 700, plus aria-current. */
70
+ /** Marks the current page: brand-subtle fill, a marker edge, the icon and name in brand at weight 700, and aria-current. */
57
71
  isCurrent?: boolean;
58
72
  /** Shown beside the label and read as part of it: "Projects, 12". */
59
73
  count?: number;
60
74
  onPress?: () => void;
61
- }
62
- export declare function SidebarItem({ href, icon, children, isCurrent, count, onPress }: SidebarItemProps): import("react").JSX.Element;
75
+ } & NavItemLiveProps;
76
+ /** A collapsed item's tooltip: its name, then its count, detail and status, each through its own template. */
77
+ export declare function navTooltip(t: (key: 'tipCount' | 'tipDetail' | 'tipDetailWarning' | 'tipStatus', values: Record<string, string | number>) => string, name: string, { count, detail, detailTone, statusLabel, }: {
78
+ count?: number;
79
+ detail?: string;
80
+ detailTone?: string;
81
+ statusLabel?: string;
82
+ }): string;
83
+ export declare function SidebarItem({ href, icon, children, isCurrent, count, onPress, detail, detailTone, status, statusLabel, }: SidebarItemProps): import("react").JSX.Element;
63
84
  export interface SidebarSubItem {
64
85
  href: string;
65
86
  label: string;
@@ -105,9 +126,13 @@ export interface SidebarTriggerLabels {
105
126
  toggleSidebar: string;
106
127
  }
107
128
  export declare const sidebarTriggerLabels: SidebarTriggerLabels;
108
- /** Collapses the sidebar to icons, or opens it as a Sheet on phones. */
129
+ /**
130
+ * Collapses the sidebar to icons, or opens it as a Sheet on phones. In a shell with `navigation="rail"` there is
131
+ * nothing to collapse, so it is only there on phones, where it opens the rail's Sheet: before the shell has measured
132
+ * itself a container query hides it from bp-md up, and once it has (or its size is forced) it isn't rendered there.
133
+ */
109
134
  export declare function SidebarTrigger({ labels: given, className, }: {
110
135
  labels?: Partial<SidebarTriggerLabels>;
111
136
  className?: string;
112
- }): import("react").JSX.Element;
137
+ }): import("react").JSX.Element | null;
113
138
  //# sourceMappingURL=sidebar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar.d.ts","sourceRoot":"","sources":["../../src/shell/sidebar.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sidebar.d.ts","sourceRoot":"","sources":["../../src/shell/sidebar.tsx"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ import { Menu, MenuItem, MenuTrigger, Popover } from '../ui/menu.js';
11
11
  import { Sheet } from '../ui/sheet.js';
12
12
  import { Tooltip, TooltipTrigger } from '../ui/tooltip.js';
13
13
  import { useShell } from './dashboard-shell.js';
14
+ import { NavDetail, NavIcon, warnUnlabelledStatus } from './nav-status.js';
14
15
  const SidebarCollapsedContext = createContext(false);
15
16
  /** True when the sidebar shows icons only (never inside the mobile Sheet). */
16
17
  export const useSidebarCollapsed = () => useContext(SidebarCollapsedContext);
@@ -19,6 +20,12 @@ export const sidebarLabels = {
19
20
  primary: 'Primary',
20
21
  count: ', {count, number}',
21
22
  tipCount: '{name} ({count, number})',
23
+ detail: ', {detail}',
24
+ detailWarning: ', {detail}, warning',
25
+ status: ', {status}',
26
+ tipDetail: '{name} ({detail})',
27
+ tipDetailWarning: '{name} ({detail}, warning)',
28
+ tipStatus: '{tip}: {status}',
22
29
  };
23
30
  /**
24
31
  * The full-height sidebar. Expanded, collapsed to icons (labels stay in the accessibility tree
@@ -52,14 +59,33 @@ export function SidebarGroup({ label, children, className, }) {
52
59
  export function SidebarList({ children, className }) {
53
60
  return _jsx("ul", { className: cn('flex flex-col gap-(--nav-item-gap)', className), children: children });
54
61
  }
55
- export function SidebarItem({ href, icon, children, isCurrent, count, onPress }) {
62
+ /** A collapsed item's tooltip: its name, then its count, detail and status, each through its own template. */
63
+ export function navTooltip(t, name, { count, detail, detailTone, statusLabel, }) {
64
+ let tip = count != null ? t('tipCount', { name, count }) : name;
65
+ if (detail)
66
+ tip = t(detailTone === 'warning' ? 'tipDetailWarning' : 'tipDetail', { name: tip, detail });
67
+ if (statusLabel)
68
+ tip = t('tipStatus', { tip, status: statusLabel });
69
+ return tip;
70
+ }
71
+ export function SidebarItem({ href, icon, children, isCurrent, count, onPress, detail, detailTone, status, statusLabel, }) {
56
72
  const collapsed = useSidebarCollapsed();
57
73
  const t = useLabels('sidebar', sidebarLabels, undefined);
58
74
  const { locale } = useLocale();
75
+ warnUnlabelledStatus('SidebarItem', status, statusLabel);
59
76
  const link = (_jsx(Link, { href: href, onPress: onPress, "aria-current": isCurrent ? 'page' : undefined, className: cn(
60
77
  // Layer 1: the row is the target, full width and at least --target-min tall.
61
- 'group/item relative flex min-h-target w-full cursor-pointer items-center text-sm font-medium text-sidebar-foreground no-underline outline-none', 'group-data-collapsed/sidebar:justify-center'), children: _jsxs("span", { className: cn('relative flex min-h-nav-item w-full min-w-0 items-center gap-3 rounded-md px-3', 'group-data-hovered/item:bg-sidebar-accent group-data-hovered/item:text-sidebar-accent-foreground group-data-focus-visible/item:focus-ring', 'group-aria-[current=page]/item:bg-brand-subtle group-aria-[current=page]/item:font-bold group-aria-[current=page]/item:text-foreground', 'group-aria-[current=page]/item:before:absolute group-aria-[current=page]/item:before:inset-y-2 group-aria-[current=page]/item:before:left-0 group-aria-[current=page]/item:before:w-[3px] group-aria-[current=page]/item:before:rounded-full group-aria-[current=page]/item:before:bg-sidebar-primary', 'group-data-collapsed/sidebar:w-nav-item group-data-collapsed/sidebar:justify-center group-data-collapsed/sidebar:px-0'), children: [renderIcon(icon, 'size-5 shrink-0 group-aria-[current=page]/item:text-brand'), _jsxs("span", { className: "min-w-0 flex-1 truncate group-data-collapsed/sidebar:sr-only", children: [children, count != null && _jsx("span", { className: "sr-only", children: t('count', { count }) })] }), count != null && (_jsx("span", { "aria-hidden": "true", className: "text-[13px] font-medium text-muted-foreground tabular-nums group-data-collapsed/sidebar:hidden", children: new Intl.NumberFormat(locale).format(count) }))] }) }));
62
- return (_jsx("li", { children: collapsed ? (_jsxs(TooltipTrigger, { delay: 300, children: [link, _jsx(Tooltip, { placement: "right", children: count != null ? t('tipCount', { name: children, count }) : children })] })) : (link) }));
78
+ 'group/item relative flex min-h-target w-full cursor-pointer items-center text-sm font-medium text-sidebar-foreground no-underline outline-none', 'group-data-collapsed/sidebar:justify-center'), children: _jsxs("span", { className: cn('relative flex min-h-nav-item w-full min-w-0 items-center gap-3 rounded-md px-3', 'group-data-hovered/item:bg-sidebar-accent group-data-hovered/item:text-sidebar-accent-foreground group-data-focus-visible/item:focus-ring',
79
+ // The current page, as RailItem marks it: the fill, the name in brand at weight 700, and a 3px edge along
80
+ // the start, an inset shadow so it follows the rounded corners. Forced colours drop shadows and fills, so
81
+ // there the edge is a bar in Highlight.
82
+ 'group-aria-[current=page]/item:bg-brand-subtle group-aria-[current=page]/item:font-bold group-aria-[current=page]/item:text-brand', 'group-aria-[current=page]/item:shadow-[inset_3px_0_0_var(--sidebar-primary)]',
83
+ // Hovered, the current page keeps its fill: the hover ground under brand text would be a pair the audit doesn't
84
+ // promise. Stacked variants, so this is more specific than the hover rule whatever order they're written in.
85
+ 'group-data-hovered/item:group-aria-[current=page]/item:bg-brand-subtle group-data-hovered/item:group-aria-[current=page]/item:text-brand', 'forced-colors:group-aria-[current=page]/item:before:absolute forced-colors:group-aria-[current=page]/item:before:inset-y-0 forced-colors:group-aria-[current=page]/item:before:start-0 forced-colors:group-aria-[current=page]/item:before:w-[3px] forced-colors:group-aria-[current=page]/item:before:rounded-s-md forced-colors:group-aria-[current=page]/item:before:bg-[Highlight] forced-colors:group-aria-[current=page]/item:before:forced-color-adjust-none', 'group-data-collapsed/sidebar:w-nav-item group-data-collapsed/sidebar:justify-center group-data-collapsed/sidebar:px-0',
86
+ // The status badge's cut-out follows the ground: the sidebar, the hovered row, the current one.
87
+ '[--nav-cut:var(--sidebar)] group-data-hovered/item:[--nav-cut:var(--sidebar-accent)] group-aria-[current=page]/item:[--nav-cut:var(--brand-subtle)] group-data-hovered/item:group-aria-[current=page]/item:[--nav-cut:var(--brand-subtle)]'), children: [_jsx(NavIcon, { icon: icon, status: status, className: "group-aria-[current=page]/item:text-brand" }), _jsxs("span", { className: "min-w-0 flex-1 truncate group-data-collapsed/sidebar:sr-only", children: [children, count != null && _jsx("span", { className: "sr-only", children: t('count', { count }) }), detail && (_jsx("span", { className: "sr-only", children: t(detailTone === 'warning' ? 'detailWarning' : 'detail', { detail }) })), statusLabel && _jsx("span", { className: "sr-only", children: t('status', { status: statusLabel }) })] }), count != null && (_jsx("span", { "aria-hidden": "true", className: "text-[13px] font-medium text-muted-foreground tabular-nums group-data-collapsed/sidebar:hidden", children: new Intl.NumberFormat(locale).format(count) })), detail && (_jsx(NavDetail, { detail: detail, tone: detailTone, className: "shrink-0 group-data-collapsed/sidebar:hidden" }))] }) }));
88
+ return (_jsx("li", { children: collapsed ? (_jsxs(TooltipTrigger, { delay: 300, children: [link, _jsx(Tooltip, { placement: "right", children: navTooltip(t, children, { count, detail, detailTone, statusLabel }) })] })) : (link) }));
63
89
  }
64
90
  /**
65
91
  * A sidebar row with rows under it. Expanded (and in the phone's Sheet), the row is a button that opens and closes
@@ -78,7 +104,11 @@ export function SidebarDisclosure({ icon, children, items, defaultExpanded, }) {
78
104
  if (collapsed) {
79
105
  return (_jsx("li", { children: _jsxs(MenuTrigger, { children: [_jsxs(TooltipTrigger, { delay: 300, children: [_jsx(RACButton, { className: target, children: _jsxs("span", { className: paint, children: [renderIcon(icon, iconClass), _jsx("span", { className: "sr-only", children: children })] }) }), _jsx(Tooltip, { placement: "right", children: children })] }), _jsx(Popover, { placement: "right top", className: "min-w-56", children: _jsx(Menu, { "aria-label": children, selectionMode: "single", selectedKeys: current ? [current.href] : [], children: items.map((item) => (_jsx(MenuItem, { id: item.href, href: item.href, children: item.label }, item.href))) }) })] }) }));
80
106
  }
81
- return (_jsx("li", { children: _jsxs(RACDisclosure, { defaultExpanded: defaultExpanded ?? !!current, className: "group/disclosure", children: [_jsx(RACButton, { slot: "trigger", className: target, children: _jsxs("span", { className: paint, children: [renderIcon(icon, iconClass), _jsx("span", { className: "min-w-0 flex-1 truncate", children: children }), _jsx(ChevronDown, { "aria-hidden": "true", className: "size-4 shrink-0 text-muted-foreground group-data-expanded/disclosure:rotate-180" })] }) }), _jsx(DisclosurePanel, { children: _jsx("ul", { className: "flex flex-col gap-(--nav-item-gap) pt-(--nav-item-gap)", children: items.map((item) => (_jsx("li", { children: _jsx(Link, { href: item.href, "aria-current": item.isCurrent ? 'page' : undefined, className: "group/sub relative flex min-h-target w-full cursor-pointer items-center text-sm font-medium text-sidebar-foreground no-underline outline-none", children: _jsx("span", { className: cn('relative flex min-h-nav-item w-full min-w-0 items-center rounded-md ps-11 pe-3', 'group-data-hovered/sub:bg-sidebar-accent group-data-hovered/sub:text-sidebar-accent-foreground group-data-focus-visible/sub:focus-ring', 'group-aria-[current=page]/sub:bg-brand-subtle group-aria-[current=page]/sub:font-bold group-aria-[current=page]/sub:text-foreground', 'group-aria-[current=page]/sub:before:absolute group-aria-[current=page]/sub:before:inset-y-2 group-aria-[current=page]/sub:before:left-0 group-aria-[current=page]/sub:before:w-[3px] group-aria-[current=page]/sub:before:rounded-full group-aria-[current=page]/sub:before:bg-sidebar-primary'), children: _jsx("span", { className: "min-w-0 flex-1 truncate", children: item.label }) }) }) }, item.href))) }) })] }) }));
107
+ return (_jsx("li", { children: _jsxs(RACDisclosure, { defaultExpanded: defaultExpanded ?? !!current, className: "group/disclosure", children: [_jsx(RACButton, { slot: "trigger", className: target, children: _jsxs("span", { className: paint, children: [renderIcon(icon, iconClass), _jsx("span", { className: "min-w-0 flex-1 truncate", children: children }), _jsx(ChevronDown, { "aria-hidden": "true", className: "size-4 shrink-0 text-muted-foreground group-data-expanded/disclosure:rotate-180" })] }) }), _jsx(DisclosurePanel, { children: _jsx("ul", { className: "flex flex-col gap-(--nav-item-gap) pt-(--nav-item-gap)", children: items.map((item) => (_jsx("li", { children: _jsx(Link, { href: item.href, "aria-current": item.isCurrent ? 'page' : undefined, className: "group/sub relative flex min-h-target w-full cursor-pointer items-center text-sm font-medium text-sidebar-foreground no-underline outline-none", children: _jsx("span", { className: cn('relative flex min-h-nav-item w-full min-w-0 items-center rounded-md ps-11 pe-3', 'group-data-hovered/sub:bg-sidebar-accent group-data-hovered/sub:text-sidebar-accent-foreground group-data-focus-visible/sub:focus-ring',
108
+ // The current page, as RailItem marks it: the fill, the name in brand at weight 700, and a 3px edge along
109
+ // the start, an inset shadow so it follows the rounded corners. Forced colours drop shadows and fills, so
110
+ // there the edge is a bar in Highlight.
111
+ 'group-aria-[current=page]/sub:bg-brand-subtle group-aria-[current=page]/sub:font-bold group-aria-[current=page]/sub:text-brand', 'group-aria-[current=page]/sub:shadow-[inset_3px_0_0_var(--sidebar-primary)]', 'group-data-hovered/sub:group-aria-[current=page]/sub:bg-brand-subtle group-data-hovered/sub:group-aria-[current=page]/sub:text-brand', 'forced-colors:group-aria-[current=page]/sub:before:absolute forced-colors:group-aria-[current=page]/sub:before:inset-y-0 forced-colors:group-aria-[current=page]/sub:before:start-0 forced-colors:group-aria-[current=page]/sub:before:w-[3px] forced-colors:group-aria-[current=page]/sub:before:rounded-s-md forced-colors:group-aria-[current=page]/sub:before:bg-[Highlight] forced-colors:group-aria-[current=page]/sub:before:forced-color-adjust-none'), children: _jsx("span", { className: "min-w-0 flex-1 truncate", children: item.label }) }) }) }, item.href))) }) })] }) }));
82
112
  }
83
113
  /** A sidebar row that opens a menu: the workspace switcher at the top, the account menu at the foot. */
84
114
  export function SidebarSwitcher({ leading, title, subtitle, menuLabel, children, onAction, selectedKey, placement = 'bottom start', }) {
@@ -103,11 +133,18 @@ export const sidebarTriggerLabels = {
103
133
  openNavigation: 'Open navigation',
104
134
  toggleSidebar: 'Toggle sidebar',
105
135
  };
106
- /** Collapses the sidebar to icons, or opens it as a Sheet on phones. */
136
+ /**
137
+ * Collapses the sidebar to icons, or opens it as a Sheet on phones. In a shell with `navigation="rail"` there is
138
+ * nothing to collapse, so it is only there on phones, where it opens the rail's Sheet: before the shell has measured
139
+ * itself a container query hides it from bp-md up, and once it has (or its size is forced) it isn't rendered there.
140
+ */
107
141
  export function SidebarTrigger({ labels: given, className, }) {
108
- const { size, sidebarCollapsed, toggleSidebar, mobileNavOpen, setMobileNavOpen } = useShell();
109
- const mobile = size === 'mobile';
142
+ const { size, sidebarCollapsed, toggleSidebar, mobileNavOpen, setMobileNavOpen, navigation, isSizeForced, } = useShell();
143
+ const rail = navigation === 'rail';
144
+ const mobile = size === 'mobile' || (rail && !isSizeForced);
110
145
  const t = useLabels('sidebarTrigger', sidebarTriggerLabels, given);
111
- return (_jsx(IconButton, { className: className, label: mobile ? t('openNavigation') : t('toggleSidebar'), icon: mobile ? MenuIcon : PanelLeft, "aria-expanded": mobile ? mobileNavOpen : !sidebarCollapsed, "aria-haspopup": mobile ? 'dialog' : undefined, onPress: () => (mobile ? setMobileNavOpen(true) : toggleSidebar()) }));
146
+ if (rail && isSizeForced && size !== 'mobile')
147
+ return null;
148
+ return (_jsx(IconButton, { className: cn(rail && !isSizeForced && '@min-[48rem]/shell:hidden', className), label: mobile ? t('openNavigation') : t('toggleSidebar'), icon: mobile ? MenuIcon : PanelLeft, "aria-expanded": mobile ? mobileNavOpen : !sidebarCollapsed, "aria-haspopup": mobile ? 'dialog' : undefined, onPress: () => (mobile ? setMobileNavOpen(true) : toggleSidebar()) }));
112
149
  }
113
150
  //# sourceMappingURL=sidebar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar.js","sourceRoot":"","sources":["../../src/shell/sidebar.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sidebar.js","sourceRoot":"","sources":["../../src/shell/sidebar.tsx"],"names":[],"mappings":"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"}
@@ -74,6 +74,7 @@
74
74
  --spacing-header: var(--header-height);
75
75
  --spacing-sidebar: var(--sidebar-width);
76
76
  --spacing-sidebar-collapsed: var(--sidebar-width-collapsed);
77
+ --spacing-rail: var(--rail-width);
77
78
  --spacing-panel: var(--panel-width);
78
79
  --spacing-choice: var(--choice-size);
79
80
  }
@@ -831,6 +832,83 @@
831
832
  }
832
833
  }
833
834
  }
835
+ /* ---------- A nav item's status (SidebarItem, RailItem): a badge on its icon, in the tab badges' language ----------
836
+ nav-icon wraps the icon and holds the badge at its top right, with a 2px cut-out in the item's own ground
837
+ (--nav-cut: the sidebar, the hovered row or the current one). Never colour alone: working is a hollow ring,
838
+ attention a solid dot inside a ring that stays. Working pulses as it appears: a halo swells three times in 4.5s
839
+ and stops, inside the five seconds 2.2.2 allows, then the ring holds still for as long as the work goes on. At AAA
840
+ and under reduced motion it never pulses. */
841
+ @keyframes setsquare-status-halo { 0% { scale: 0.6; opacity: 0.7; } 100% { scale: 1.7; opacity: 0; } }
842
+ @utility nav-icon {
843
+ position: relative;
844
+ display: inline-flex;
845
+ flex: none;
846
+ align-items: center;
847
+ justify-content: center;
848
+ }
849
+ @utility nav-status {
850
+ position: absolute;
851
+ top: -3px;
852
+ right: -4px;
853
+ width: 10px;
854
+ height: 10px;
855
+ border-radius: 999px;
856
+ box-shadow: 0 0 0 2px var(--nav-cut, var(--sidebar));
857
+ pointer-events: none;
858
+ &[data-status='working'] {
859
+ border: 2px solid var(--brand);
860
+ background-color: var(--nav-cut, var(--sidebar));
861
+ }
862
+ &[data-status='working']::before {
863
+ content: '';
864
+ position: absolute;
865
+ inset: -2px;
866
+ border: 2px solid var(--brand);
867
+ border-radius: 999px;
868
+ opacity: 0;
869
+ animation: setsquare-status-halo 1500ms cubic-bezier(0, 0, 0.2, 1) 3;
870
+ }
871
+ /* As specific as the rule above and after it, so it wins; nested in ::before, the variant would follow the
872
+ pseudo-element, and the browser drops a selector like that. */
873
+ @variant aaa {
874
+ &[data-status='working']::before {
875
+ animation: none;
876
+ }
877
+ }
878
+ &[data-status='attention'] {
879
+ background-color: var(--destructive);
880
+ }
881
+ &[data-status='attention']::after {
882
+ content: '';
883
+ position: absolute;
884
+ inset: -4px;
885
+ border: 2px solid var(--destructive);
886
+ border-radius: 999px;
887
+ }
888
+ @media (prefers-reduced-motion: reduce) {
889
+ &::before {
890
+ animation: none !important;
891
+ }
892
+ }
893
+ /* Forced colours drop box shadows and repaint borders and fills: draw both shapes in system colours. */
894
+ @media (forced-colors: active) {
895
+ forced-color-adjust: none;
896
+ box-shadow: none;
897
+ &[data-status='working'] {
898
+ border-color: CanvasText;
899
+ background-color: Canvas;
900
+ }
901
+ &[data-status='working']::before {
902
+ border-color: CanvasText;
903
+ }
904
+ &[data-status='attention'] {
905
+ background-color: Highlight;
906
+ }
907
+ &[data-status='attention']::after {
908
+ border-color: Highlight;
909
+ }
910
+ }
911
+ }
834
912
  /* A tooltip for a tab whose name isn't showing. It sits inside the tab, so the pointer can move onto it across an
835
913
  8px bridge without leaving. Hidden from assistive tech: the name is the tab's own. */
836
914
  @utility tabs-tip {
@@ -135,7 +135,7 @@
135
135
  /* Light · AA */
136
136
  :root {
137
137
  --brand: #2f47c9;
138
- --brand-subtle: #eceffc;
138
+ --brand-subtle: #dadef5;
139
139
  --background: #ffffff;
140
140
  --foreground: #161a1f;
141
141
  --card: #ffffff;
@@ -180,7 +180,7 @@
180
180
  /* Dark · AA */
181
181
  :root.dark {
182
182
  --brand: #8fa3ff;
183
- --brand-subtle: #1b2246;
183
+ --brand-subtle: #242c55;
184
184
  --background: #0e1116;
185
185
  --foreground: #e7eaee;
186
186
  --card: #151a21;
@@ -225,7 +225,7 @@
225
225
  /* Light · AAA */
226
226
  :root[data-conformance="aaa"] {
227
227
  --brand: #22369f;
228
- --brand-subtle: #e6eafb;
228
+ --brand-subtle: #dcdff0;
229
229
  --background: #ffffff;
230
230
  --foreground: #0c0e11;
231
231
  --card: #ffffff;
@@ -270,7 +270,7 @@
270
270
  /* Dark · AAA */
271
271
  :root[data-conformance="aaa"].dark {
272
272
  --brand: #b0beff;
273
- --brand-subtle: #1a2148;
273
+ --brand-subtle: #20274f;
274
274
  --background: #07090c;
275
275
  --foreground: #f5f7f9;
276
276
  --card: #0e1217;
package/dist/tokens.json CHANGED
@@ -34,10 +34,10 @@
34
34
  {
35
35
  "name": "brand-subtle",
36
36
  "value": {
37
- "light": "#eceffc",
38
- "dark": "#1b2246",
39
- "light-aaa": "#e6eafb",
40
- "dark-aaa": "#1a2148"
37
+ "light": "#dadef5",
38
+ "dark": "#242c55",
39
+ "light-aaa": "#dcdff0",
40
+ "dark-aaa": "#20274f"
41
41
  },
42
42
  "usage": "Tinted ground behind brand text: the current nav item, selected table rows, info notices."
43
43
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@setsquare/ui",
3
- "version": "0.6.0",
3
+ "version": "0.7.0",
4
4
  "description": "React Aria components, design tokens, a dashboard shell and a site shell, with a switch between WCAG 2.2 AA and AAA sizing, spacing and contrast.",
5
5
  "license": "Apache-2.0",
6
6
  "homepage": "https://github.com/Worktree-Amigos/setsquare-ui#readme",