@camunda/design-system 0.61.1 → 0.62.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/dist/src/components/ui/app-sidebar.d.ts +9 -0
- package/dist/src/components/ui/app-sidebar.d.ts.map +1 -1
- package/dist/src/components/ui/app-sidebar.js +212 -25
- package/dist/src/components/ui/app-sidebar.js.map +1 -1
- package/dist/src/components/ui/breadcrumb.d.ts +2 -2
- package/dist/src/components/ui/breadcrumb.d.ts.map +1 -1
- package/dist/src/components/ui/breadcrumb.js +43 -4
- package/dist/src/components/ui/breadcrumb.js.map +1 -1
- package/dist/src/components/ui/data-table.d.ts +2 -2
- package/dist/src/components/ui/data-table.js +3 -3
- package/dist/src/components/ui/data-table.js.map +1 -1
- package/dist/src/components/ui/input.d.ts +3 -1
- package/dist/src/components/ui/input.d.ts.map +1 -1
- package/dist/src/components/ui/input.js +2 -2
- package/dist/src/components/ui/input.js.map +1 -1
- package/dist/src/components/ui/label.d.ts +3 -1
- package/dist/src/components/ui/label.d.ts.map +1 -1
- package/dist/src/components/ui/label.js +3 -3
- package/dist/src/components/ui/label.js.map +1 -1
- package/dist/src/components/ui/login-screen.d.ts +24 -0
- package/dist/src/components/ui/login-screen.d.ts.map +1 -0
- package/dist/src/components/ui/login-screen.js +59 -0
- package/dist/src/components/ui/login-screen.js.map +1 -0
- package/dist/src/components/ui/multi-select.d.ts.map +1 -1
- package/dist/src/components/ui/multi-select.js +2 -2
- package/dist/src/components/ui/multi-select.js.map +1 -1
- package/dist/src/components/ui/nav-icon.d.ts +8 -2
- package/dist/src/components/ui/nav-icon.d.ts.map +1 -1
- package/dist/src/components/ui/nav-icon.js +3 -1
- package/dist/src/components/ui/nav-icon.js.map +1 -1
- package/dist/src/components/ui/notifications.d.ts.map +1 -1
- package/dist/src/components/ui/notifications.js.map +1 -1
- package/dist/src/components/ui/tooltip.d.ts +4 -3
- package/dist/src/components/ui/tooltip.d.ts.map +1 -1
- package/dist/src/components/ui/tooltip.js +27 -12
- package/dist/src/components/ui/tooltip.js.map +1 -1
- package/dist/src/icons/camunda-app-icons.js +2 -2
- package/dist/src/icons/camunda-app-icons.js.map +1 -1
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/lib/i18n/dictionary.d.ts +8 -0
- package/dist/src/lib/i18n/dictionary.d.ts.map +1 -1
- package/dist/src/lib/i18n/dictionary.js +8 -0
- package/dist/src/lib/i18n/dictionary.js.map +1 -1
- package/dist/styles.css +23 -0
- package/package.json +1 -1
|
@@ -67,6 +67,15 @@ export interface SidebarSection {
|
|
|
67
67
|
key: string;
|
|
68
68
|
title?: string;
|
|
69
69
|
compact?: boolean;
|
|
70
|
+
/**
|
|
71
|
+
* `"entities"` for a section that lists instances of a thing — environments, clusters,
|
|
72
|
+
* workspaces — rather than destinations within the product. Both of its effects are
|
|
73
|
+
* collapsed-rail only, because both compensate for what the rail drops there: the title, which
|
|
74
|
+
* goes `sr-only`, is replaced by a rule above the section, and rows with no icon of their own
|
|
75
|
+
* show their initials only there, where the icon is the row's only visual. Expanded, the title
|
|
76
|
+
* separates the section and the label identifies the row, so neither is drawn.
|
|
77
|
+
*/
|
|
78
|
+
variant?: "default" | "entities";
|
|
70
79
|
children: SidebarNode[];
|
|
71
80
|
}
|
|
72
81
|
export type SidebarNode = SidebarItem | SidebarGroupItem | SidebarGroup | SidebarSection;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-sidebar.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/app-sidebar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"app-sidebar.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/app-sidebar.tsx"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ import { ChevronDown, ChevronRight, ChevronLeft, PanelLeftClose, PanelLeft, X, }
|
|
|
5
5
|
import { cn } from "../../lib/utils.js";
|
|
6
6
|
import { useC4Dictionary } from "../../lib/i18n/context.js";
|
|
7
7
|
import { Text } from "./typography.js";
|
|
8
|
-
import { Popover, PopoverContent, PopoverTrigger } from "./popover.js";
|
|
8
|
+
import { Popover, PopoverContent, PopoverHeader, PopoverTitle, PopoverTrigger, } from "./popover.js";
|
|
9
9
|
import { Tooltip, TooltipContent, TooltipTrigger } from "./tooltip.js";
|
|
10
10
|
import { Sheet, SheetClose, SheetContent, SheetTitle } from "./sheet.js";
|
|
11
11
|
import { useSidebar } from "./sidebar-provider.js";
|
|
@@ -14,6 +14,12 @@ import { useIsTruncated } from "../../hooks/use-is-truncated.js";
|
|
|
14
14
|
import { linkDestination, resolveActive, resolveLinkProps, } from "./nav-data.js";
|
|
15
15
|
import { NavRowIcon } from "./nav-icon.js";
|
|
16
16
|
const NAV_ROW_BASE = "group/navbtn flex w-full items-center overflow-hidden rounded-md transition-colors";
|
|
17
|
+
/**
|
|
18
|
+
* The type a section title reads at. Shared with the collapsed rail's flyout header,
|
|
19
|
+
* which titles a group the same way the expanded rail titles a section — one constant
|
|
20
|
+
* so the two cannot drift apart.
|
|
21
|
+
*/
|
|
22
|
+
const SECTION_LABEL_TYPE = "text-xs leading-4 font-medium text-neutral-foreground-subtle";
|
|
17
23
|
// Hides the scrollbar track; scroll itself still works.
|
|
18
24
|
const HIDDEN_SCROLLBAR = "[scrollbar-width:none] [&::-webkit-scrollbar]:hidden";
|
|
19
25
|
const navButton = cva(cn(NAV_ROW_BASE, "gap-3 min-h-10 text-sm text-left whitespace-nowrap focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset"), {
|
|
@@ -55,7 +61,7 @@ function renderNode(node, ctx) {
|
|
|
55
61
|
return _jsx(NavSection, { node: node, ...ctx }, node.key);
|
|
56
62
|
}
|
|
57
63
|
}
|
|
58
|
-
function NavItemRow({ node, expanded, depth, LinkEl, isMobile, onNavigate, hasLinkComponent, activeItemKey, }) {
|
|
64
|
+
function NavItemRow({ node, expanded, depth, LinkEl, isMobile, onNavigate, hasLinkComponent, activeItemKey, hideIconFallback, }) {
|
|
59
65
|
const isLink = linkDestination(node.linkProps) !== undefined;
|
|
60
66
|
const Comp = isLink ? LinkEl : "button";
|
|
61
67
|
const isActive = resolveActive(node.isActive, node.key, activeItemKey);
|
|
@@ -71,7 +77,7 @@ function NavItemRow({ node, expanded, depth, LinkEl, isMobile, onNavigate, hasLi
|
|
|
71
77
|
: { type: "button" }), "data-slot": "app-sidebar-item", className: cn(navButton({ active: isActive, expanded })), style: indentStyle(depth), "aria-current": isActive ? "page" : undefined, onClick: () => {
|
|
72
78
|
node.onClick?.();
|
|
73
79
|
onNavigate?.();
|
|
74
|
-
}, onPointerEnter: measure, onFocus: measure, children: [_jsx(NavRowIcon, { icon: node.icon, label: node.label }), _jsx("span", { ref: labelRef, className: cn("flex-1 truncate", !expanded && "sr-only"), children: node.label }), expanded && node.trailingElement] }));
|
|
80
|
+
}, onPointerEnter: measure, onFocus: measure, children: [_jsx(NavRowIcon, { icon: node.icon, label: node.label, hideFallback: hideIconFallback }), _jsx("span", { ref: labelRef, className: cn("flex-1 truncate", !expanded && "sr-only"), children: node.label }), expanded && node.trailingElement] }));
|
|
75
81
|
// Collapsed icon rail: name the icon with a tooltip. Not on mobile (the Sheet
|
|
76
82
|
// shows full labels) and not when expanded (the label is already visible).
|
|
77
83
|
if (!expanded && !isMobile) {
|
|
@@ -82,7 +88,53 @@ function NavItemRow({ node, expanded, depth, LinkEl, isMobile, onNavigate, hasLi
|
|
|
82
88
|
// "Truncated Text" in `docs/specs/shadcn/patterns.md`.
|
|
83
89
|
return isTruncated ? (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: row }), _jsx(TooltipContent, { children: node.label })] })) : (row);
|
|
84
90
|
}
|
|
85
|
-
|
|
91
|
+
/**
|
|
92
|
+
* The collapsed rail's single flyout slot.
|
|
93
|
+
*
|
|
94
|
+
* Group flyouts share one slot, so opening one closes whichever was open —
|
|
95
|
+
* including a pinned or keyboard-opened flyout, which ignores hover-out and
|
|
96
|
+
* would otherwise stay on screen beside the new one. It lives above the rows
|
|
97
|
+
* because a row cannot close a sibling it has no reference to.
|
|
98
|
+
*/
|
|
99
|
+
const FlyoutSlotContext = React.createContext(null);
|
|
100
|
+
function useFlyoutSlot(nodeKey) {
|
|
101
|
+
const slot = React.useContext(FlyoutSlotContext);
|
|
102
|
+
// A row rendered without the rail around it keeps a slot of its own.
|
|
103
|
+
const [localKey, setLocalKey] = React.useState(null);
|
|
104
|
+
const openKey = slot ? slot.openKey : localKey;
|
|
105
|
+
const setOpenKey = slot ? slot.setOpenKey : setLocalKey;
|
|
106
|
+
return {
|
|
107
|
+
flyoutOpen: openKey === nodeKey,
|
|
108
|
+
setFlyoutOpen: (next) => setOpenKey((prev) => (next ? nodeKey : prev === nodeKey ? null : prev)),
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
// Hover intent for the collapsed-rail flyout. The open delay keeps a pointer
|
|
112
|
+
// crossing the rail vertically from flashing every group's flyout in turn; the
|
|
113
|
+
// close delay covers the gap between the trigger and the flyout, which the
|
|
114
|
+
// pointer has to traverse to reach the children (WCAG 1.4.13, hoverable).
|
|
115
|
+
const FLYOUT_HOVER_OPEN_DELAY = 120;
|
|
116
|
+
const FLYOUT_HOVER_CLOSE_DELAY = 240;
|
|
117
|
+
/**
|
|
118
|
+
* Whether anything below this node resolves active.
|
|
119
|
+
*
|
|
120
|
+
* A pure `group` has no active state of its own — see `SidebarGroup`, and the C3 contract in
|
|
121
|
+
* `nav-c3-compat.specs.ts`, which both leave the field off deliberately. Expanded that costs
|
|
122
|
+
* nothing, because the active descendant is on screen carrying its own highlight. Collapsed it
|
|
123
|
+
* leaves the rail with no current-location signal at all: the descendant lives in a flyout
|
|
124
|
+
* nobody has opened yet.
|
|
125
|
+
*/
|
|
126
|
+
function hasActiveDescendant(nodes, activeItemKey) {
|
|
127
|
+
return nodes.some((child) => {
|
|
128
|
+
if (child.type === "section" || child.type === "group") {
|
|
129
|
+
return hasActiveDescendant(child.children, activeItemKey);
|
|
130
|
+
}
|
|
131
|
+
if (resolveActive(child.isActive, child.key, activeItemKey))
|
|
132
|
+
return true;
|
|
133
|
+
return (child.type === "group-item" &&
|
|
134
|
+
hasActiveDescendant(child.children, activeItemKey));
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
function NavGroupRow({ node, expanded, depth, LinkEl, hasLinkComponent, activeItemKey, isMobile, onNavigate, hideIconFallback, }) {
|
|
86
138
|
const isGroupControlled = node.isExpanded !== undefined;
|
|
87
139
|
const [openInternal, setOpenInternal] = React.useState(!!node.isExpanded);
|
|
88
140
|
const open = isGroupControlled ? !!node.isExpanded : openInternal;
|
|
@@ -95,11 +147,58 @@ function NavGroupRow({ node, expanded, depth, LinkEl, hasLinkComponent, activeIt
|
|
|
95
147
|
// Collapsed-rail flyout visibility is its own concern — decoupled from group
|
|
96
148
|
// expansion so collapsing the rail never auto-opens a flyout and opening a
|
|
97
149
|
// flyout never mutates expansion state.
|
|
98
|
-
const
|
|
150
|
+
const { flyoutOpen, setFlyoutOpen } = useFlyoutSlot(node.key);
|
|
151
|
+
const hoverTimerRef = React.useRef(null);
|
|
152
|
+
// Which input opened the flyout. A pointer-driven open must not pull focus
|
|
153
|
+
// into the flyout: the pointer only crossed the rail, and Radix's default
|
|
154
|
+
// open-autofocus would yank focus off whatever the user was actually on.
|
|
155
|
+
const openedByPointerRef = React.useRef(false);
|
|
156
|
+
// The group trigger's tooltip is keyboard-only: on hover the flyout itself
|
|
157
|
+
// names the group, and with `delayDuration = 0` a hover tooltip would appear
|
|
158
|
+
// instantly, then be force-closed 120ms later when the flyout opens — a flash
|
|
159
|
+
// on every pass over the rail. Keyboard focus has no flyout until Enter, so it
|
|
160
|
+
// still needs the tooltip. Leaf rows keep their ordinary hover tooltip.
|
|
161
|
+
const [labelTooltipOpen, setLabelTooltipOpen] = React.useState(false);
|
|
162
|
+
const pointerInsideRef = React.useRef(false);
|
|
163
|
+
const triggerRef = React.useRef(null);
|
|
164
|
+
// Readable from the hover timer, which captured an older render's props.
|
|
165
|
+
const flyoutOpenRef = React.useRef(flyoutOpen);
|
|
166
|
+
React.useEffect(() => {
|
|
167
|
+
flyoutOpenRef.current = flyoutOpen;
|
|
168
|
+
}, [flyoutOpen]);
|
|
169
|
+
const cancelHoverTimer = () => {
|
|
170
|
+
if (hoverTimerRef.current !== null) {
|
|
171
|
+
window.clearTimeout(hoverTimerRef.current);
|
|
172
|
+
hoverTimerRef.current = null;
|
|
173
|
+
}
|
|
174
|
+
};
|
|
175
|
+
React.useEffect(() => cancelHoverTimer, []);
|
|
176
|
+
const scheduleFlyout = (next) => {
|
|
177
|
+
cancelHoverTimer();
|
|
178
|
+
hoverTimerRef.current = window.setTimeout(() => {
|
|
179
|
+
hoverTimerRef.current = null;
|
|
180
|
+
if (next) {
|
|
181
|
+
// Only an open this timer actually performs counts as pointer-opened.
|
|
182
|
+
// Re-entering the trigger of an already-pinned flyout also runs here,
|
|
183
|
+
// and marking that one as pointer-opened would silently un-pin it —
|
|
184
|
+
// the next hover-out would dismiss it.
|
|
185
|
+
if (!flyoutOpenRef.current)
|
|
186
|
+
openedByPointerRef.current = true;
|
|
187
|
+
setFlyoutOpen(true);
|
|
188
|
+
return;
|
|
189
|
+
}
|
|
190
|
+
// Only a hover-opened flyout closes on hover-out. A click- or
|
|
191
|
+
// keyboard-opened one holds focus inside itself, so a pointer merely
|
|
192
|
+
// crossing the rail must not close it and snap focus back to the
|
|
193
|
+
// trigger.
|
|
194
|
+
if (openedByPointerRef.current)
|
|
195
|
+
setFlyoutOpen(false);
|
|
196
|
+
}, next ? FLYOUT_HOVER_OPEN_DELAY : FLYOUT_HOVER_CLOSE_DELAY);
|
|
197
|
+
};
|
|
99
198
|
const isGroupItem = node.type === "group-item";
|
|
100
199
|
const isActive = isGroupItem
|
|
101
200
|
? resolveActive(node.isActive, node.key, activeItemKey)
|
|
102
|
-
:
|
|
201
|
+
: !expanded && hasActiveDescendant(node.children, activeItemKey);
|
|
103
202
|
const isLink = isGroupItem && linkDestination(node.linkProps) !== undefined;
|
|
104
203
|
const LabelComp = isLink ? LinkEl : "button";
|
|
105
204
|
// Truncation reveal — expanded state only (see the collapsed-rail flyout's
|
|
@@ -108,17 +207,86 @@ function NavGroupRow({ node, expanded, depth, LinkEl, hasLinkComponent, activeIt
|
|
|
108
207
|
React.useLayoutEffect(() => {
|
|
109
208
|
measure();
|
|
110
209
|
});
|
|
111
|
-
const label = (_jsxs(_Fragment, { children: [_jsx(NavRowIcon, { icon: node.icon, label: node.label }), _jsx("span", { ref: labelRef, className: cn("flex-1 truncate", !expanded && "sr-only"), children: node.label }), expanded && node.trailingElement] }));
|
|
210
|
+
const label = (_jsxs(_Fragment, { children: [_jsx(NavRowIcon, { icon: node.icon, label: node.label, hideFallback: hideIconFallback }), _jsx("span", { ref: labelRef, className: cn("flex-1 truncate", !expanded && "sr-only"), children: node.label }), expanded && node.trailingElement] }));
|
|
112
211
|
if (!expanded) {
|
|
113
|
-
return (_jsxs(Popover, { open: flyoutOpen, onOpenChange:
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
212
|
+
return (_jsxs(Popover, { open: flyoutOpen, onOpenChange: (next) => {
|
|
213
|
+
cancelHoverTimer();
|
|
214
|
+
setFlyoutOpen(next);
|
|
215
|
+
}, children: [_jsxs(Tooltip, { open: labelTooltipOpen && !flyoutOpen,
|
|
216
|
+
// Controlled, so Radix's own dismissal has to be accepted or Escape
|
|
217
|
+
// leaves the tooltip up until blur (WCAG 1.4.13, dismissible). Only
|
|
218
|
+
// the close request is honoured: an open request would reinstate the
|
|
219
|
+
// hover tooltip this trigger deliberately does not have.
|
|
220
|
+
onOpenChange: (next) => {
|
|
221
|
+
if (!next)
|
|
222
|
+
setLabelTooltipOpen(false);
|
|
223
|
+
}, children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx(PopoverTrigger, { asChild: true, children: _jsxs("button", { ref: triggerRef, type: "button", "data-slot": "app-sidebar-group-trigger", "aria-label": node.label, "aria-expanded": flyoutOpen, className: cn(navButton({ active: isActive, expanded: false })), onMouseEnter: () => {
|
|
224
|
+
pointerInsideRef.current = true;
|
|
225
|
+
scheduleFlyout(true);
|
|
226
|
+
}, onMouseLeave: () => {
|
|
227
|
+
pointerInsideRef.current = false;
|
|
228
|
+
scheduleFlyout(false);
|
|
229
|
+
}, onFocus: () => {
|
|
230
|
+
if (!pointerInsideRef.current)
|
|
231
|
+
setLabelTooltipOpen(true);
|
|
232
|
+
}, onBlur: () => setLabelTooltipOpen(false), onClick: (event) => {
|
|
233
|
+
cancelHoverTimer();
|
|
234
|
+
// Hover has already opened it; Radix's trigger toggle would
|
|
235
|
+
// close it again, so a click on the icon the pointer is
|
|
236
|
+
// sitting on would dismiss the flyout it just opened. The
|
|
237
|
+
// toggle is composed behind this handler and skips on
|
|
238
|
+
// `defaultPrevented`.
|
|
239
|
+
if (flyoutOpen) {
|
|
240
|
+
event.preventDefault();
|
|
241
|
+
}
|
|
242
|
+
// Either way the open is now an explicit one: it stays until
|
|
243
|
+
// Escape, an outside pointer-down, or a child is selected.
|
|
244
|
+
openedByPointerRef.current = false;
|
|
245
|
+
}, children: [_jsx(NavRowIcon, { icon: node.icon, label: node.label }), _jsx("span", { className: "sr-only", children: node.label })] }) }) }), _jsx(TooltipContent, { side: "right", children: node.label })] }), _jsxs(PopoverContent, { side: "right", align: "start", className: "w-56 gap-0 p-1", "aria-label": node.label,
|
|
246
|
+
// The launcher Popover captures at open time is whatever was focused
|
|
247
|
+
// when the pointer crossed the rail, which is not this trigger. Name
|
|
248
|
+
// the trigger explicitly so an explicit close returns focus to it.
|
|
249
|
+
restoreFocusRef: triggerRef, onMouseEnter: cancelHoverTimer, onMouseLeave: () => scheduleFlyout(false), onOpenAutoFocus: (event) => {
|
|
250
|
+
if (openedByPointerRef.current)
|
|
251
|
+
event.preventDefault();
|
|
252
|
+
}, onFocusOutside: (event) => {
|
|
253
|
+
// A hover-opened flyout holds no focus, so every focus-outside is
|
|
254
|
+
// spurious for it — and one in particular is fatal: displacing a
|
|
255
|
+
// keyboard-opened sibling returns that sibling's focus to its
|
|
256
|
+
// trigger, which would dismiss the flyout the pointer just opened.
|
|
257
|
+
// Keyboard and click opens keep the default (tabbing out closes).
|
|
258
|
+
if (openedByPointerRef.current)
|
|
259
|
+
event.preventDefault();
|
|
260
|
+
}, onCloseAutoFocus: (event) => {
|
|
261
|
+
// A hover-opened flyout never held focus, so restoring would drag
|
|
262
|
+
// it off whatever the user is really on. One that was opened by
|
|
263
|
+
// click or keyboard does hold it, and still returns it to the
|
|
264
|
+
// trigger — including when a sibling flyout displaces this one,
|
|
265
|
+
// which would otherwise drop focus to <body>. (Asking the DOM
|
|
266
|
+
// here instead does not work: by the time this fires Radix has
|
|
267
|
+
// already detached the content, so `activeElement` is `<body>`.)
|
|
268
|
+
if (openedByPointerRef.current)
|
|
269
|
+
event.preventDefault();
|
|
270
|
+
// Cleared here rather than in `onOpenChange`, which Radix calls
|
|
271
|
+
// first on an outside pointer-down: clearing there would make this
|
|
272
|
+
// handler read a hover-opened flyout as a focus-holding one and
|
|
273
|
+
// pull focus to the trigger, off whatever was just clicked.
|
|
274
|
+
openedByPointerRef.current = false;
|
|
275
|
+
}, children: [_jsx(PopoverHeader, { className: "px-2 pt-1.5 pb-1", children: _jsx(PopoverTitle, { className: SECTION_LABEL_TYPE, children: node.label }) }), node.children.map((child) => renderNode(child, {
|
|
276
|
+
expanded: true,
|
|
277
|
+
depth: 0,
|
|
278
|
+
LinkEl,
|
|
279
|
+
hasLinkComponent,
|
|
280
|
+
activeItemKey,
|
|
281
|
+
isMobile,
|
|
282
|
+
// Selecting a child dismisses the flyout. Navigation alone does
|
|
283
|
+
// not: the rail survives an in-app route change, so the flyout
|
|
284
|
+
// would otherwise stay open over the destination.
|
|
285
|
+
onNavigate: () => {
|
|
286
|
+
setFlyoutOpen(false);
|
|
287
|
+
onNavigate?.();
|
|
288
|
+
},
|
|
289
|
+
}))] })] }));
|
|
122
290
|
}
|
|
123
291
|
const labelElement = (_jsx(LabelComp, { ...(isLink ? node.linkProps : { type: "button" }), className: cn("flex flex-1 min-w-0 items-center gap-3 min-h-10 py-2 text-sm text-left transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset", isActive
|
|
124
292
|
? "text-neutral-foreground-strong font-medium"
|
|
@@ -144,10 +312,12 @@ function NavGroupRow({ node, expanded, depth, LinkEl, hasLinkComponent, activeIt
|
|
|
144
312
|
activeItemKey,
|
|
145
313
|
isMobile,
|
|
146
314
|
onNavigate,
|
|
315
|
+
hideIconFallback,
|
|
147
316
|
}))] }));
|
|
148
317
|
}
|
|
149
318
|
function NavSection({ node, expanded, depth, LinkEl, hasLinkComponent, activeItemKey, isMobile, onNavigate, }) {
|
|
150
|
-
|
|
319
|
+
const isEntities = node.variant === "entities";
|
|
320
|
+
return (_jsxs("div", { "data-slot": "app-sidebar-section", "data-variant": node.variant, className: cn(!node.compact && "pt-2", isEntities && !expanded && "mt-2 border-t border-border pt-2"), children: [node.title && (_jsx("div", { className: cn("px-3 pt-4 pb-1", SECTION_LABEL_TYPE, node.compact && "pt-0", !expanded && "sr-only"), children: node.title })), node.children.map((child) => renderNode(child, {
|
|
151
321
|
expanded,
|
|
152
322
|
depth,
|
|
153
323
|
LinkEl,
|
|
@@ -155,6 +325,7 @@ function NavSection({ node, expanded, depth, LinkEl, hasLinkComponent, activeIte
|
|
|
155
325
|
activeItemKey,
|
|
156
326
|
isMobile,
|
|
157
327
|
onNavigate,
|
|
328
|
+
hideIconFallback: isEntities && expanded,
|
|
158
329
|
}))] }));
|
|
159
330
|
}
|
|
160
331
|
function BackNavHeader({ backNav, expanded, LinkEl, }) {
|
|
@@ -255,6 +426,19 @@ export function AppSidebar({ ariaLabel, items, backNav, expandedWidth = "16rem",
|
|
|
255
426
|
const LinkEl = linkComponent ?? "a";
|
|
256
427
|
const hasLinkComponent = linkComponent !== undefined;
|
|
257
428
|
const toggleRef = React.useRef(null);
|
|
429
|
+
const [openFlyoutKey, setOpenFlyoutKey] = React.useState(null);
|
|
430
|
+
const flyoutSlot = React.useMemo(() => ({ openKey: openFlyoutKey, setOpenKey: setOpenFlyoutKey }), [openFlyoutKey]);
|
|
431
|
+
// Expanding the rail unmounts the flyouts without clearing the slot, so a
|
|
432
|
+
// later collapse would remount the last one still open, with no hover behind
|
|
433
|
+
// it. Resetting in an effect (rather than on the toggle) is what also covers
|
|
434
|
+
// an expansion driven by the provider or by a controlled `expanded` prop.
|
|
435
|
+
React.useEffect(() => {
|
|
436
|
+
// Resetting one key on an expansion change: there is no external system to
|
|
437
|
+
// sync with, and no `key` to reset by that would not remount every row.
|
|
438
|
+
// eslint-disable-next-line react-hooks/set-state-in-effect
|
|
439
|
+
if (expanded)
|
|
440
|
+
setOpenFlyoutKey(null);
|
|
441
|
+
}, [expanded]);
|
|
258
442
|
// Truncation reveal for the collapse-toggle's own label — declared above
|
|
259
443
|
// the mobile early return below (hooks can't follow a conditional return).
|
|
260
444
|
// Only relevant once `expanded` (the collapsed state hides the label via
|
|
@@ -287,13 +471,16 @@ export function AppSidebar({ ariaLabel, items, backNav, expandedWidth = "16rem",
|
|
|
287
471
|
setExpanded(!expanded);
|
|
288
472
|
toggleRef.current?.focus();
|
|
289
473
|
}, onPointerEnter: measureCollapseText, onFocus: measureCollapseText, className: cn("flex min-h-10 items-center py-2 text-sm text-neutral-foreground-subtle hover:bg-neutral-background-strong hover:text-neutral-foreground-strong border-t border-border focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset", expanded ? "gap-3 px-3" : "justify-center px-2"), children: [expanded ? (_jsx(PanelLeftClose, { "aria-hidden": true, className: "size-4 shrink-0" })) : (_jsx(PanelLeft, { "aria-hidden": true, className: "size-4 shrink-0" })), _jsx("span", { ref: collapseTextRef, className: cn(expanded ? "flex-1 truncate text-left" : "sr-only"), children: resolvedCollapseText })] }));
|
|
290
|
-
return (
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
474
|
+
return (
|
|
475
|
+
// The flyout slot is provided only here: the mobile Sheet renders every row
|
|
476
|
+
// expanded, so no flyout is reachable on that path.
|
|
477
|
+
_jsx(FlyoutSlotContext.Provider, { value: flyoutSlot, children: _jsxs("nav", { "data-slot": "app-sidebar", "aria-label": ariaLabel, style: { width, ["--app-sidebar-width"]: width }, className: cn("fixed left-0 top-12 bottom-0 z-40 flex flex-col bg-background border-r border-border transition-[width] duration-150 ease-out", className), children: [backNav && (_jsx(BackNavHeader, { backNav: backNav, expanded: expanded, LinkEl: LinkEl })), _jsx("div", { className: cn("flex-1 min-h-0 flex flex-col gap-0.5 px-2 py-2 overflow-y-auto overflow-x-hidden", HIDDEN_SCROLLBAR), children: items.map((node) => renderNode(node, {
|
|
478
|
+
expanded,
|
|
479
|
+
depth: 0,
|
|
480
|
+
LinkEl,
|
|
481
|
+
hasLinkComponent,
|
|
482
|
+
activeItemKey,
|
|
483
|
+
isMobile: false,
|
|
484
|
+
})) }), footer && _jsx("div", { className: "border-t border-border p-2", children: footer }), expanded ? (collapseTextTruncated ? (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: collapseToggle }), _jsx(TooltipContent, { children: resolvedCollapseText })] })) : (collapseToggle)) : (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: collapseToggle }), _jsx(TooltipContent, { side: "right", children: resolvedExpandLabel })] })), resizable && expanded && (_jsx(SidebarResizeHandle, { width: resizedWidth, minWidth: minWidth, maxWidth: maxWidth, onResize: setResizedWidth, resizeLabel: resizeLabel, resizeValueTextLabel: resizeValueTextLabel }))] }) }));
|
|
298
485
|
}
|
|
299
486
|
//# sourceMappingURL=app-sidebar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-sidebar.js","sourceRoot":"","sources":["../../../../src/components/ui/app-sidebar.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"app-sidebar.js","sourceRoot":"","sources":["../../../../src/components/ui/app-sidebar.tsx"],"names":[],"mappings":"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"}
|
|
@@ -2,10 +2,10 @@ import * as React from "react";
|
|
|
2
2
|
declare function Breadcrumb({ ...props }: React.ComponentProps<"nav">): React.JSX.Element;
|
|
3
3
|
declare function BreadcrumbList({ className, ...props }: React.ComponentProps<"ol">): React.JSX.Element;
|
|
4
4
|
declare function BreadcrumbItem({ className, ...props }: React.ComponentProps<"li">): React.JSX.Element;
|
|
5
|
-
declare function BreadcrumbLink({ asChild, className, ...props }: React.ComponentProps<"a"> & {
|
|
5
|
+
declare function BreadcrumbLink({ asChild, className, children, ref, onPointerEnter, onFocus, ...props }: React.ComponentProps<"a"> & {
|
|
6
6
|
asChild?: boolean;
|
|
7
7
|
}): React.JSX.Element;
|
|
8
|
-
declare function BreadcrumbPage({ className, ...props }: React.ComponentProps<"span">): React.JSX.Element;
|
|
8
|
+
declare function BreadcrumbPage({ className, children, ref, onPointerEnter, onFocus, ...props }: React.ComponentProps<"span">): React.JSX.Element;
|
|
9
9
|
declare function BreadcrumbSeparator({ children, className, ...props }: React.ComponentProps<"li">): React.JSX.Element;
|
|
10
10
|
declare function BreadcrumbEllipsis({ className, label, ...props }: React.ComponentProps<"span"> & {
|
|
11
11
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"breadcrumb.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/breadcrumb.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"breadcrumb.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/breadcrumb.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAY/B,iBAAS,UAAU,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,qBAK5D;AAED,iBAAS,cAAc,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,qBAe1E;AAED,iBAAS,cAAc,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,qBAQ1E;AAED,iBAAS,cAAc,CAAC,EACtB,OAAO,EACP,SAAS,EACT,QAAQ,EACR,GAAG,EACH,cAAc,EACd,OAAO,EACP,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,qBAuDnD;AAED,iBAAS,cAAc,CAAC,EACtB,SAAS,EACT,QAAQ,EACR,GAAG,EACH,cAAc,EACd,OAAO,EACP,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,qBAkD9B;AAED,iBAAS,mBAAmB,CAAC,EAC3B,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,qBAgB5B;AAED,iBAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG;IAChC;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,qBAcA;AAED,OAAO,EACL,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,cAAc,EACd,cAAc,EACd,mBAAmB,GACpB,CAAC"}
|
|
@@ -5,6 +5,9 @@ import { Slot } from "radix-ui";
|
|
|
5
5
|
import { MoreHorizontal } from "../../icons/lucide.js";
|
|
6
6
|
import { cn } from "../../lib/utils.js";
|
|
7
7
|
import { useC4Dictionary } from "../../lib/i18n/context.js";
|
|
8
|
+
import { mergeRefs } from "../../lib/merge-refs.js";
|
|
9
|
+
import { useIsTruncated } from "../../hooks/use-is-truncated.js";
|
|
10
|
+
import { Tooltip, TooltipContent, TooltipTrigger } from "./tooltip.js";
|
|
8
11
|
import { typographyVariants } from "./typography.js";
|
|
9
12
|
function Breadcrumb({ ...props }) {
|
|
10
13
|
const { t } = useC4Dictionary();
|
|
@@ -20,12 +23,48 @@ function BreadcrumbList({ className, ...props }) {
|
|
|
20
23
|
function BreadcrumbItem({ className, ...props }) {
|
|
21
24
|
return (_jsx("li", { "data-slot": "breadcrumb-item", className: cn("inline-flex items-center gap-1.5", className), ...props }));
|
|
22
25
|
}
|
|
23
|
-
function BreadcrumbLink({ asChild, className, ...props }) {
|
|
26
|
+
function BreadcrumbLink({ asChild, className, children, ref, onPointerEnter, onFocus, ...props }) {
|
|
24
27
|
const Comp = asChild ? Slot.Root : "a";
|
|
25
|
-
|
|
28
|
+
const { ref: truncateRef, isTruncated, measure, } = useIsTruncated();
|
|
29
|
+
// A consumer `ref` (e.g. onto the router Link this slots in) may still be
|
|
30
|
+
// supplied — merged rather than replaced, same as `select.tsx`'s trigger.
|
|
31
|
+
const mergedRef = React.useMemo(() => mergeRefs(ref, truncateRef), [ref, truncateRef]);
|
|
32
|
+
React.useLayoutEffect(() => {
|
|
33
|
+
measure();
|
|
34
|
+
});
|
|
35
|
+
// Already a focusable element (an `<a>`, or the router Link `asChild` slots
|
|
36
|
+
// in) — measure and mount the tooltip on IT, not the text inside, per the
|
|
37
|
+
// "Truncated Text" pattern (docs/specs/shadcn/patterns.md): a screen reader
|
|
38
|
+
// reads the full label regardless, so the reveal only has to reach sighted
|
|
39
|
+
// hover/keyboard-focus users, both of which land on this element already.
|
|
40
|
+
const link = (_jsx(Comp, { ref: mergedRef, "data-slot": "breadcrumb-link", onPointerEnter: (e) => {
|
|
41
|
+
onPointerEnter?.(e);
|
|
42
|
+
measure();
|
|
43
|
+
}, onFocus: (e) => {
|
|
44
|
+
onFocus?.(e);
|
|
45
|
+
measure();
|
|
46
|
+
}, className: cn("max-w-[200px] truncate rounded-sm text-sm font-normal text-neutral-foreground-subtle underline underline-offset-4 decoration-neutral-border-strong transition-colors hover:text-neutral-foreground-strong focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", className), ...props, children: children }));
|
|
47
|
+
// Mounted only when actually clipped — an always-mounted Tooltip still runs
|
|
48
|
+
// Radix's open-request handling on every hover/focus of a short label too.
|
|
49
|
+
return isTruncated ? (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: link }), _jsx(TooltipContent, { children: children })] })) : (link);
|
|
26
50
|
}
|
|
27
|
-
function BreadcrumbPage({ className, ...props }) {
|
|
28
|
-
|
|
51
|
+
function BreadcrumbPage({ className, children, ref, onPointerEnter, onFocus, ...props }) {
|
|
52
|
+
const { ref: truncateRef, isTruncated, measure, } = useIsTruncated();
|
|
53
|
+
const mergedRef = React.useMemo(() => mergeRefs(ref, truncateRef), [ref, truncateRef]);
|
|
54
|
+
React.useLayoutEffect(() => {
|
|
55
|
+
measure();
|
|
56
|
+
});
|
|
57
|
+
// Plain static text with no focusable ancestor of its own — gets its own
|
|
58
|
+
// minimal focus stop (`tabIndex={0}`) rather than borrowing one from a
|
|
59
|
+
// wrapping row, per the "Truncated Text" pattern's decision tree.
|
|
60
|
+
const page = (_jsx("span", { ref: mergedRef, "data-slot": "breadcrumb-page", "aria-current": "page", tabIndex: 0, onPointerEnter: (e) => {
|
|
61
|
+
onPointerEnter?.(e);
|
|
62
|
+
measure();
|
|
63
|
+
}, onFocus: (e) => {
|
|
64
|
+
onFocus?.(e);
|
|
65
|
+
measure();
|
|
66
|
+
}, className: cn("max-w-[200px] truncate font-normal text-neutral-foreground-strong outline-none focus-visible:ring-2 focus-visible:ring-ring", className), ...props, children: children }));
|
|
67
|
+
return isTruncated ? (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: page }), _jsx(TooltipContent, { children: children })] })) : (page);
|
|
29
68
|
}
|
|
30
69
|
function BreadcrumbSeparator({ children, className, ...props }) {
|
|
31
70
|
return (_jsx("li", { "data-slot": "breadcrumb-separator", role: "presentation", "aria-hidden": "true", className: cn("select-none text-xs text-neutral-border-strong", children != null && "[&>svg]:size-3.5", className), ...props, children: children ?? "/" }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"breadcrumb.js","sourceRoot":"","sources":["../../../../src/components/ui/breadcrumb.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"breadcrumb.js","sourceRoot":"","sources":["../../../../src/components/ui/breadcrumb.tsx"],"names":[],"mappings":"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"}
|
|
@@ -51,8 +51,8 @@ export interface DataTableRowAction<TData> {
|
|
|
51
51
|
* The icon node should carry `aria-hidden="true"` — `aria-label` is the
|
|
52
52
|
* button's accessible name and the Tooltip does not replace it.
|
|
53
53
|
*
|
|
54
|
-
*
|
|
55
|
-
*
|
|
54
|
+
* Expects exactly one DS `<TooltipProvider>` up the tree; without one each
|
|
55
|
+
* tooltip runs on a provider of its own. See the spec's parent constraints.
|
|
56
56
|
*/
|
|
57
57
|
iconOnly?: boolean;
|
|
58
58
|
/** Render a `<DropdownMenuSeparator>` above this item. Skipped for the first item. */
|
|
@@ -433,9 +433,9 @@ function renderInlineActionsCell(visible, row) {
|
|
|
433
433
|
}
|
|
434
434
|
else {
|
|
435
435
|
return (
|
|
436
|
-
//
|
|
437
|
-
//
|
|
438
|
-
//
|
|
436
|
+
// The consumer's app root owns the `TooltipProvider`; DataTable
|
|
437
|
+
// does not nest one of its own, and `Tooltip` runs on a
|
|
438
|
+
// provider of its own if none is above (see tooltip.tsx).
|
|
439
439
|
_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx(Button, { variant: isDestructive ? "destructive" : "ghost",
|
|
440
440
|
// size-8 matches the labelled inline button's h-8, so
|
|
441
441
|
// mixing the two does not shift row height.
|