@sequenceholdings/atlas-ui 0.1.3 → 0.1.5
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/charts.d.ts +8 -5
- package/dist/charts.mjs +64 -30
- package/dist/index.d.ts +441 -338
- package/dist/index.mjs +28439 -28308
- package/dist/tokens.css +0 -36
- package/dist/{utils-BZS7Y02J.js → utils-D-IFNYlh.js} +566 -514
- package/package.json +16 -4
- package/theme.v2.css +225 -0
- package/tokens.v2.css +537 -0
package/dist/index.d.ts
CHANGED
|
@@ -5,8 +5,10 @@ import { ClassValue } from 'clsx';
|
|
|
5
5
|
import { ColumnDef } from '@tanstack/react-table';
|
|
6
6
|
import { ColumnFiltersState } from '@tanstack/react-table';
|
|
7
7
|
import { Command as Command_2 } from 'cmdk';
|
|
8
|
+
import { ComponentProps } from 'react';
|
|
8
9
|
import * as ContextMenuPrimitive from '@radix-ui/react-context-menu';
|
|
9
10
|
import { DayPicker } from 'react-day-picker';
|
|
11
|
+
import { default as default_2 } from 'react';
|
|
10
12
|
import * as DialogPrimitive from '@radix-ui/react-dialog';
|
|
11
13
|
import { Dispatch } from 'react';
|
|
12
14
|
import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
|
|
@@ -18,6 +20,7 @@ import * as PopoverPrimitive from '@radix-ui/react-popover';
|
|
|
18
20
|
import { QueryKey } from '@tanstack/react-query';
|
|
19
21
|
import * as React_2 from 'react';
|
|
20
22
|
import { ReactNode } from 'react';
|
|
23
|
+
import * as RechartsPrimitive from 'recharts';
|
|
21
24
|
import { Row } from '@tanstack/react-table';
|
|
22
25
|
import * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area';
|
|
23
26
|
import * as SelectPrimitive from '@radix-ui/react-select';
|
|
@@ -36,62 +39,42 @@ import * as TooltipPrimitive from '@radix-ui/react-tooltip';
|
|
|
36
39
|
import { UseMutationResult } from '@tanstack/react-query';
|
|
37
40
|
import { VariantProps } from 'class-variance-authority';
|
|
38
41
|
|
|
39
|
-
export declare function AckBadges({ ack1, ack2, currentUserId, requiredAcks, onAck, onUnack, disabled, disabledReason, className, }: AckBadgesProps): JSX.Element;
|
|
40
|
-
|
|
41
|
-
export declare interface AckBadgesProps {
|
|
42
|
-
ack1?: AckUser;
|
|
43
|
-
ack2?: AckUser;
|
|
44
|
-
currentUserId: string;
|
|
45
|
-
requiredAcks: 1 | 2;
|
|
46
|
-
onAck?: () => void;
|
|
47
|
-
onUnack?: () => void;
|
|
48
|
-
disabled?: boolean;
|
|
49
|
-
disabledReason?: string;
|
|
50
|
-
className?: string;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
export declare interface AckUser {
|
|
54
|
-
userId: string;
|
|
55
|
-
displayName: string;
|
|
56
|
-
at: string;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
42
|
export declare const AGENT_TINTS: {
|
|
60
43
|
readonly teal: {
|
|
61
|
-
readonly bg: "bg-teal-50";
|
|
62
|
-
readonly fg: "text-teal-700";
|
|
44
|
+
readonly bg: "bg-teal-50 dark:bg-teal-500/10";
|
|
45
|
+
readonly fg: "text-teal-700 dark:text-teal-300";
|
|
63
46
|
};
|
|
64
47
|
readonly violet: {
|
|
65
|
-
readonly bg: "bg-violet-50";
|
|
66
|
-
readonly fg: "text-violet-700";
|
|
48
|
+
readonly bg: "bg-violet-50 dark:bg-violet-500/10";
|
|
49
|
+
readonly fg: "text-violet-700 dark:text-violet-300";
|
|
67
50
|
};
|
|
68
51
|
readonly amber: {
|
|
69
|
-
readonly bg: "bg-amber-50";
|
|
70
|
-
readonly fg: "text-amber-700";
|
|
52
|
+
readonly bg: "bg-amber-50 dark:bg-amber-500/10";
|
|
53
|
+
readonly fg: "text-amber-700 dark:text-amber-300";
|
|
71
54
|
};
|
|
72
55
|
readonly rose: {
|
|
73
|
-
readonly bg: "bg-rose-50";
|
|
74
|
-
readonly fg: "text-rose-700";
|
|
56
|
+
readonly bg: "bg-rose-50 dark:bg-rose-500/10";
|
|
57
|
+
readonly fg: "text-rose-700 dark:text-rose-300";
|
|
75
58
|
};
|
|
76
59
|
readonly sky: {
|
|
77
|
-
readonly bg: "bg-sky-50";
|
|
78
|
-
readonly fg: "text-sky-700";
|
|
60
|
+
readonly bg: "bg-sky-50 dark:bg-sky-500/10";
|
|
61
|
+
readonly fg: "text-sky-700 dark:text-sky-300";
|
|
79
62
|
};
|
|
80
63
|
readonly emerald: {
|
|
81
|
-
readonly bg: "bg-emerald-50";
|
|
82
|
-
readonly fg: "text-emerald-700";
|
|
64
|
+
readonly bg: "bg-emerald-50 dark:bg-emerald-500/10";
|
|
65
|
+
readonly fg: "text-emerald-700 dark:text-emerald-300";
|
|
83
66
|
};
|
|
84
67
|
readonly orange: {
|
|
85
|
-
readonly bg: "bg-orange-50";
|
|
86
|
-
readonly fg: "text-orange-700";
|
|
68
|
+
readonly bg: "bg-orange-50 dark:bg-orange-500/10";
|
|
69
|
+
readonly fg: "text-orange-700 dark:text-orange-300";
|
|
87
70
|
};
|
|
88
71
|
readonly indigo: {
|
|
89
|
-
readonly bg: "bg-indigo-50";
|
|
90
|
-
readonly fg: "text-indigo-700";
|
|
72
|
+
readonly bg: "bg-indigo-50 dark:bg-indigo-500/10";
|
|
73
|
+
readonly fg: "text-indigo-700 dark:text-indigo-300";
|
|
91
74
|
};
|
|
92
75
|
readonly graphite: {
|
|
93
|
-
readonly bg: "bg-
|
|
94
|
-
readonly fg: "text-
|
|
76
|
+
readonly bg: "bg-muted";
|
|
77
|
+
readonly fg: "text-foreground";
|
|
95
78
|
};
|
|
96
79
|
};
|
|
97
80
|
|
|
@@ -103,7 +86,14 @@ export declare const AlertDialogAction: React_2.ForwardRefExoticComponent<Omit<A
|
|
|
103
86
|
|
|
104
87
|
export declare const AlertDialogCancel: React_2.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogCancelProps & React_2.RefAttributes<HTMLButtonElement>, "ref"> & React_2.RefAttributes<HTMLButtonElement>>;
|
|
105
88
|
|
|
106
|
-
export declare const AlertDialogContent: React_2.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogContentProps & React_2.RefAttributes<HTMLDivElement>, "ref"> &
|
|
89
|
+
export declare const AlertDialogContent: React_2.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogContentProps & React_2.RefAttributes<HTMLDivElement>, "ref"> & {
|
|
90
|
+
/**
|
|
91
|
+
* Classes for the scrim behind the dialog. Pair with `className` when
|
|
92
|
+
* raising z-index — a lone `className="z-modal"` lifts only the panel and
|
|
93
|
+
* leaves the overlay at `z-50` (DES-315). Additive; defaults unchanged.
|
|
94
|
+
*/
|
|
95
|
+
overlayClassName?: string;
|
|
96
|
+
} & React_2.RefAttributes<HTMLDivElement>>;
|
|
107
97
|
|
|
108
98
|
export declare const AlertDialogDescription: React_2.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogDescriptionProps & React_2.RefAttributes<HTMLParagraphElement>, "ref"> & React_2.RefAttributes<HTMLParagraphElement>>;
|
|
109
99
|
|
|
@@ -194,24 +184,113 @@ declare interface BadgeProps extends React_2.HTMLAttributes<HTMLSpanElement>, Va
|
|
|
194
184
|
}
|
|
195
185
|
|
|
196
186
|
export declare const badgeVariants: (props?: ({
|
|
197
|
-
variant?: "
|
|
187
|
+
variant?: "default" | "success" | "secondary" | "neutral" | "destructive" | "outline" | "warning" | "info" | "danger" | "identity" | "ghost" | "alpha" | "beta" | null | undefined;
|
|
188
|
+
size?: "default" | "sm" | null | undefined;
|
|
198
189
|
} & ClassProp) | undefined) => string;
|
|
199
190
|
|
|
200
|
-
export declare function Breadcrumb({
|
|
191
|
+
export declare function Breadcrumb({ items, interactive, maxItems, variant, renderLink, ariaLabel, className, }: BreadcrumbProps): JSX.Element | null;
|
|
201
192
|
|
|
202
|
-
|
|
193
|
+
declare function Breadcrumb_2({ ...props }: React_2.ComponentProps<"nav">): JSX.Element;
|
|
203
194
|
|
|
204
|
-
|
|
195
|
+
/**
|
|
196
|
+
* Breadcrumb — the app-facing, presentational breadcrumb.
|
|
197
|
+
*
|
|
198
|
+
* App-agnostic on purpose so it ships in the published `atlas-ui` package and
|
|
199
|
+
* artifacts can use it: it takes the full `items` trail as a prop and does NOT
|
|
200
|
+
* touch any app registry, router, or `next/navigation`. Navigation defaults to
|
|
201
|
+
* plain `<a href>`; inject `renderLink` (e.g. a SPA `Link`) for client routing,
|
|
202
|
+
* or mount `BreadcrumbLinkProvider` once to supply it to a whole subtree (the
|
|
203
|
+
* Atlas shell does this). For the app-root crumb, prepend `useAppRootCrumb()`
|
|
204
|
+
* (`@platform/hooks/useAppRootCrumb`).
|
|
205
|
+
*
|
|
206
|
+
* Depth drives the affordance (`variant='auto'`): 0 ancestors → nothing, 1 →
|
|
207
|
+
* back button, 2+ → breadcrumb. Long trails collapse into an ellipsis dropdown
|
|
208
|
+
* (`maxItems`); every crumb truncates with a tooltip; `loading` crumbs show a
|
|
209
|
+
* pulsing skeleton.
|
|
210
|
+
*/
|
|
211
|
+
export declare interface BreadcrumbCrumb {
|
|
212
|
+
label: React_2.ReactNode;
|
|
213
|
+
/** Navigation target for an ancestor crumb. Ignored on the last crumb (it
|
|
214
|
+
* renders as the current page). Prefer `href`; use `onClick` for custom nav. */
|
|
215
|
+
href?: string;
|
|
216
|
+
onClick?: () => void;
|
|
217
|
+
/** Render a pulsing skeleton in place of the label while its value loads. */
|
|
218
|
+
loading?: boolean;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
declare function BreadcrumbEllipsis({ className, ...props }: React_2.ComponentProps<"span">): JSX.Element;
|
|
205
222
|
|
|
206
|
-
|
|
223
|
+
declare function BreadcrumbItem({ className, ...props }: React_2.ComponentProps<"li">): JSX.Element;
|
|
224
|
+
|
|
225
|
+
declare function BreadcrumbLink({ asChild, className, ...props }: React_2.ComponentProps<"a"> & {
|
|
207
226
|
asChild?: boolean;
|
|
208
227
|
}): JSX.Element;
|
|
209
228
|
|
|
210
|
-
|
|
229
|
+
/**
|
|
230
|
+
* Supplies the router link that `Breadcrumb` uses for ancestor crumbs. Mount it
|
|
231
|
+
* once in the app shell with your SPA `Link` so every breadcrumb navigates
|
|
232
|
+
* client-side; without it (e.g. in a standalone artifact) breadcrumbs fall back
|
|
233
|
+
* to plain `<a href>`. A `renderLink` prop on an individual `Breadcrumb` still
|
|
234
|
+
* wins over this.
|
|
235
|
+
*/
|
|
236
|
+
export declare function BreadcrumbLinkProvider({ renderLink, children, }: {
|
|
237
|
+
renderLink: BreadcrumbLinkRenderer;
|
|
238
|
+
children: React_2.ReactNode;
|
|
239
|
+
}): JSX.Element;
|
|
240
|
+
|
|
241
|
+
/** Renders a navigable crumb. Default is a plain `<a href>`; a host injects its
|
|
242
|
+
* router link (e.g. `<Link to={href}>`) so SPA nav works without coupling the
|
|
243
|
+
* shared component to any router. */
|
|
244
|
+
export declare type BreadcrumbLinkRenderer = (props: {
|
|
245
|
+
href: string;
|
|
246
|
+
onClick?: () => void;
|
|
247
|
+
className?: string;
|
|
248
|
+
children: React_2.ReactNode;
|
|
249
|
+
}) => React_2.ReactElement;
|
|
250
|
+
|
|
251
|
+
declare function BreadcrumbList({ className, ...props }: React_2.ComponentProps<"ol">): JSX.Element;
|
|
252
|
+
|
|
253
|
+
declare function BreadcrumbPage({ className, ...props }: React_2.ComponentProps<"span">): JSX.Element;
|
|
254
|
+
|
|
255
|
+
/**
|
|
256
|
+
* shadcn breadcrumb primitives, grouped under one namespace so the bare name
|
|
257
|
+
* `Breadcrumb` names the app-facing smart component (`./breadcrumb-nav`).
|
|
258
|
+
* Compose these directly only when building a bespoke trail; almost all code
|
|
259
|
+
* should use the smart `Breadcrumb` instead.
|
|
260
|
+
*/
|
|
261
|
+
export declare const BreadcrumbPrimitive: {
|
|
262
|
+
Root: typeof Breadcrumb_2;
|
|
263
|
+
List: typeof BreadcrumbList;
|
|
264
|
+
Item: typeof BreadcrumbItem;
|
|
265
|
+
Link: typeof BreadcrumbLink;
|
|
266
|
+
Page: typeof BreadcrumbPage;
|
|
267
|
+
Separator: typeof BreadcrumbSeparator;
|
|
268
|
+
Ellipsis: typeof BreadcrumbEllipsis;
|
|
269
|
+
};
|
|
211
270
|
|
|
212
|
-
export declare
|
|
271
|
+
export declare interface BreadcrumbProps {
|
|
272
|
+
/** The full trail; the last item renders as the current page. */
|
|
273
|
+
items: BreadcrumbCrumb[];
|
|
274
|
+
/** When false, ancestor crumbs render as static text (e.g. loading states). */
|
|
275
|
+
interactive?: boolean;
|
|
276
|
+
/** Collapse the middle of long trails to an ellipsis-dropdown once the count
|
|
277
|
+
* exceeds this (clamped to >= 2 so the root + current page always show). */
|
|
278
|
+
maxItems?: number;
|
|
279
|
+
/**
|
|
280
|
+
* Which affordance to render. Defaults to `'auto'`, which picks by depth so
|
|
281
|
+
* callers never decide: **0 ancestors** → nothing; **1 ancestor** → a back
|
|
282
|
+
* button (a full breadcrumb is overkill one level deep); **2+ ancestors** →
|
|
283
|
+
* the breadcrumb trail. Force `'breadcrumb'` / `'back'` for a deliberate
|
|
284
|
+
* exception.
|
|
285
|
+
*/
|
|
286
|
+
variant?: "auto" | "breadcrumb" | "back";
|
|
287
|
+
/** Injected router link. Defaults to a plain `<a href>`. */
|
|
288
|
+
renderLink?: BreadcrumbLinkRenderer;
|
|
289
|
+
ariaLabel?: string;
|
|
290
|
+
className?: string;
|
|
291
|
+
}
|
|
213
292
|
|
|
214
|
-
|
|
293
|
+
declare function BreadcrumbSeparator({ children, className, ...props }: React_2.ComponentProps<"li">): JSX.Element;
|
|
215
294
|
|
|
216
295
|
/**
|
|
217
296
|
* Generate heat-colored columns for time-period keys (dates, weeks, months).
|
|
@@ -242,12 +321,26 @@ export declare interface ButtonProps extends React_2.ButtonHTMLAttributes<HTMLBu
|
|
|
242
321
|
}
|
|
243
322
|
|
|
244
323
|
export declare const buttonVariants: (props?: ({
|
|
245
|
-
variant?: "
|
|
246
|
-
size?: "default" | "
|
|
324
|
+
variant?: "default" | "link" | "secondary" | "destructive" | "outline" | "ghost" | "submit" | null | undefined;
|
|
325
|
+
size?: "default" | "sm" | "icon" | "lg" | "xs" | "icon-xs" | "icon-sm" | "icon-lg" | null | undefined;
|
|
247
326
|
} & ClassProp) | undefined) => string;
|
|
248
327
|
|
|
249
328
|
export declare function Calendar({ className, classNames, showOutsideDays, ...props }: React_2.ComponentProps<typeof DayPicker>): JSX.Element;
|
|
250
329
|
|
|
330
|
+
export declare function CalendarGrid({ startHour, endHour, hourHeight, maxHeight, initialScrollHour, dayHeaders, children, loading, loadingText, }: CalendarGridProps): JSX.Element;
|
|
331
|
+
|
|
332
|
+
export declare interface CalendarGridProps {
|
|
333
|
+
startHour?: number;
|
|
334
|
+
endHour?: number;
|
|
335
|
+
hourHeight?: number;
|
|
336
|
+
maxHeight?: number;
|
|
337
|
+
initialScrollHour?: number;
|
|
338
|
+
dayHeaders?: default_2.ReactNode[];
|
|
339
|
+
children: (dayIdx: number) => default_2.ReactNode;
|
|
340
|
+
loading?: boolean;
|
|
341
|
+
loadingText?: string;
|
|
342
|
+
}
|
|
343
|
+
|
|
251
344
|
/**
|
|
252
345
|
* Card — the foundational surface for grouped content (dashboards,
|
|
253
346
|
* metrics, forms, lists, detail pages).
|
|
@@ -266,11 +359,11 @@ export declare function Calendar({ className, classNames, showOutsideDays, ...pr
|
|
|
266
359
|
* Drop shadows on cards quickly compound against each other in
|
|
267
360
|
* dense dashboards (card-inside-card, kpi-tile-inside-card, etc.)
|
|
268
361
|
* and visually muddy the hierarchy.
|
|
269
|
-
* - Radius: `rounded-
|
|
270
|
-
*
|
|
362
|
+
* - Radius: `rounded-surface` (DES-313) — the top-level-container
|
|
363
|
+
* radius role. Cards own their radius; call sites never pass one.
|
|
271
364
|
*
|
|
272
365
|
* When a card genuinely needs elevation (modal/popover-adjacent lifts,
|
|
273
|
-
* drag affordances), opt in explicitly with `shadow-
|
|
366
|
+
* drag affordances), opt in explicitly with `shadow-resting`
|
|
274
367
|
* at the call site rather than baking it into the base.
|
|
275
368
|
*/
|
|
276
369
|
export declare const Card: React_2.ForwardRefExoticComponent<React_2.HTMLAttributes<HTMLDivElement> & React_2.RefAttributes<HTMLDivElement>>;
|
|
@@ -283,10 +376,51 @@ export declare const CardHeader: React_2.ForwardRefExoticComponent<React_2.HTMLA
|
|
|
283
376
|
|
|
284
377
|
export declare const CardTitle: React_2.ForwardRefExoticComponent<React_2.HTMLAttributes<HTMLDivElement> & React_2.RefAttributes<HTMLDivElement>>;
|
|
285
378
|
|
|
286
|
-
declare
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
379
|
+
export declare type ChartConfig = {
|
|
380
|
+
[key: string]: {
|
|
381
|
+
label?: React_2.ReactNode;
|
|
382
|
+
icon?: React_2.ComponentType;
|
|
383
|
+
} & ({
|
|
384
|
+
color?: string;
|
|
385
|
+
theme?: never;
|
|
386
|
+
} | {
|
|
387
|
+
color?: never;
|
|
388
|
+
theme: Record<keyof typeof THEMES, string>;
|
|
389
|
+
});
|
|
390
|
+
};
|
|
391
|
+
|
|
392
|
+
export declare function ChartContainer({ id, className, children, config, ...props }: React_2.ComponentProps<'div'> & {
|
|
393
|
+
config: ChartConfig;
|
|
394
|
+
children: React_2.ComponentProps<typeof RechartsPrimitive.ResponsiveContainer>['children'];
|
|
395
|
+
}): JSX.Element;
|
|
396
|
+
|
|
397
|
+
export declare const ChartLegend: typeof RechartsPrimitive.Legend;
|
|
398
|
+
|
|
399
|
+
export declare function ChartLegendContent({ className, hideIcon, payload, verticalAlign, nameKey, }: {
|
|
400
|
+
className?: string;
|
|
401
|
+
hideIcon?: boolean;
|
|
402
|
+
payload?: LegendPayloadItem[];
|
|
403
|
+
verticalAlign?: 'top' | 'bottom';
|
|
404
|
+
nameKey?: string;
|
|
405
|
+
}): JSX.Element | null;
|
|
406
|
+
|
|
407
|
+
export declare const ChartTooltip: typeof RechartsPrimitive.Tooltip;
|
|
408
|
+
|
|
409
|
+
export declare function ChartTooltipContent({ active, payload, className, indicator, hideLabel, hideIndicator, label, labelFormatter, labelClassName, formatter, color, nameKey, labelKey, }: {
|
|
410
|
+
active?: boolean;
|
|
411
|
+
payload?: TooltipPayloadItem[];
|
|
412
|
+
className?: string;
|
|
413
|
+
indicator?: 'line' | 'dot' | 'dashed';
|
|
414
|
+
hideLabel?: boolean;
|
|
415
|
+
hideIndicator?: boolean;
|
|
416
|
+
label?: React_2.ReactNode;
|
|
417
|
+
labelFormatter?: (value: React_2.ReactNode, payload: TooltipPayloadItem[]) => React_2.ReactNode;
|
|
418
|
+
labelClassName?: string;
|
|
419
|
+
formatter?: (value: number | string, name: string | number, item: TooltipPayloadItem, index: number, payloadItem: Record<string, unknown> | undefined) => React_2.ReactNode;
|
|
420
|
+
color?: string;
|
|
421
|
+
nameKey?: string;
|
|
422
|
+
labelKey?: string;
|
|
423
|
+
}): JSX.Element | null;
|
|
290
424
|
|
|
291
425
|
/**
|
|
292
426
|
* Checkbox — matches shadcn's canonical 16×16 design:
|
|
@@ -337,10 +471,10 @@ export declare interface CheckboxOption<T extends string> {
|
|
|
337
471
|
}
|
|
338
472
|
|
|
339
473
|
declare const CHIP_TONES: {
|
|
340
|
-
readonly default: "border-
|
|
341
|
-
readonly danger: "border-red-200 bg-red-50 text-red-700";
|
|
342
|
-
readonly warning: "border-amber-200 bg-amber-50 text-amber-700";
|
|
343
|
-
readonly success: "border-emerald-200 bg-emerald-50 text-emerald-700";
|
|
474
|
+
readonly default: "border-border bg-accent text-muted-foreground";
|
|
475
|
+
readonly danger: "border-red-200 bg-red-50 text-red-700 dark:border-red-500/30 dark:bg-red-500/15 dark:text-red-300";
|
|
476
|
+
readonly warning: "border-amber-200 bg-amber-50 text-amber-700 dark:border-amber-500/30 dark:bg-amber-500/15 dark:text-amber-300";
|
|
477
|
+
readonly success: "border-emerald-200 bg-emerald-50 text-emerald-700 dark:border-emerald-500/30 dark:bg-emerald-500/15 dark:text-emerald-300";
|
|
344
478
|
};
|
|
345
479
|
|
|
346
480
|
export declare const ChoiceCard: React_2.ForwardRefExoticComponent<ChoiceCardProps & React_2.RefAttributes<HTMLLabelElement>>;
|
|
@@ -472,6 +606,26 @@ declare interface ChoiceCardProps {
|
|
|
472
606
|
className?: string;
|
|
473
607
|
}
|
|
474
608
|
|
|
609
|
+
export declare function CitationChip({ fileName, url, kind, resolved, className, }: CitationChipProps): JSX.Element;
|
|
610
|
+
|
|
611
|
+
/**
|
|
612
|
+
* Inline citation chip — the rendered form of a resolved `[[cite:...]]` anchor.
|
|
613
|
+
* A `document` chip shows the source filename; a `web` chip shows the site (or
|
|
614
|
+
* host) and links out; an unresolved anchor renders a muted "source" pill so a
|
|
615
|
+
* fabricated/dropped citation is still visible rather than a raw token.
|
|
616
|
+
*
|
|
617
|
+
* The label truncates and reveals its full value on hover (via `TruncatedText`).
|
|
618
|
+
* When a `url` is present the chip is an anchor that opens in a new tab.
|
|
619
|
+
*/
|
|
620
|
+
export declare interface CitationChipProps {
|
|
621
|
+
fileName?: string | null;
|
|
622
|
+
url?: string | null;
|
|
623
|
+
kind?: 'web' | 'document';
|
|
624
|
+
/** False renders the muted unresolved state. Defaults to true. */
|
|
625
|
+
resolved?: boolean;
|
|
626
|
+
className?: string;
|
|
627
|
+
}
|
|
628
|
+
|
|
475
629
|
export declare function cn(...inputs: ClassValue[]): string;
|
|
476
630
|
|
|
477
631
|
export declare const CodeBadge: React_2.ForwardRefExoticComponent<CodeBadgeProps & React_2.RefAttributes<HTMLSpanElement>>;
|
|
@@ -646,7 +800,7 @@ export declare function DashboardShell({ title, range, actions, children, classN
|
|
|
646
800
|
* - Don't render a page subtitle (e.g. "N total") under the title — those
|
|
647
801
|
* belong in section headers or on the table itself.
|
|
648
802
|
* - Don't nest a `<DashboardShell>` inside another scroll container.
|
|
649
|
-
* - Title renders at 16px (
|
|
803
|
+
* - Title renders at 16px (`text-base`).
|
|
650
804
|
*/
|
|
651
805
|
declare interface DashboardShellProps {
|
|
652
806
|
/** Page title — 16px, semibold. Usually a short noun ("Agents", "Schedules"). */
|
|
@@ -661,83 +815,6 @@ declare interface DashboardShellProps {
|
|
|
661
815
|
bodyClassName?: string;
|
|
662
816
|
}
|
|
663
817
|
|
|
664
|
-
export declare function DataReviewTable<T extends {
|
|
665
|
-
id: string;
|
|
666
|
-
_version?: number;
|
|
667
|
-
}>({ columns, data, selectedRows: controlledSelected, onSelectionChange, defaultSort, emptyMessage, className, maxHeight, highlightedRowIds, enableSorting, selectionDisabled, enableCellSelection, selectedCells: controlledCells, onCellSelectionChange, }: DataReviewTableProps<T>): JSX.Element;
|
|
668
|
-
|
|
669
|
-
export declare interface DataReviewTableProps<T extends {
|
|
670
|
-
id: string;
|
|
671
|
-
_version?: number;
|
|
672
|
-
}> {
|
|
673
|
-
columns: ColumnDef<T, unknown>[];
|
|
674
|
-
data: T[];
|
|
675
|
-
/**
|
|
676
|
-
* Controlled selection. When provided, the table reflects this value and
|
|
677
|
-
* fires `onSelectionChange` on user interaction without mutating internal
|
|
678
|
-
* state. When omitted, the table manages selection itself (uncontrolled
|
|
679
|
-
* mode) — useful when the caller only needs the callback or no callback
|
|
680
|
-
* at all. Mixing controlled/uncontrolled across renders is undefined
|
|
681
|
-
* behavior (standard React convention).
|
|
682
|
-
*/
|
|
683
|
-
selectedRows?: string[];
|
|
684
|
-
onSelectionChange?: (rowIds: string[]) => void;
|
|
685
|
-
defaultSort?: SortingState;
|
|
686
|
-
emptyMessage?: string;
|
|
687
|
-
className?: string;
|
|
688
|
-
/**
|
|
689
|
-
* Height cap on the internal scroll container. Required for the virtualized
|
|
690
|
-
* path (rows >= VIRTUALIZATION_THRESHOLD) — without a bounded scroll
|
|
691
|
-
* element, `useVirtualizer` only sees the initial viewport and rows below
|
|
692
|
-
* the fold stay unreachable. Accepts any CSS length (`'70vh'`, `'600px'`,
|
|
693
|
-
* `'calc(100vh - 12rem)'`) or a pixel `number`. Default is `'70vh'`.
|
|
694
|
-
*/
|
|
695
|
-
maxHeight?: string | number;
|
|
696
|
-
/**
|
|
697
|
-
* Row IDs to highlight with a transient amber background — typically used
|
|
698
|
-
* to flash rows that conflicted during a batch mutation so the user can
|
|
699
|
-
* see which rows changed underneath them. The caller owns the lifecycle
|
|
700
|
-
* (populate on conflict, clear on timer).
|
|
701
|
-
*/
|
|
702
|
-
highlightedRowIds?: Set<string>;
|
|
703
|
-
/**
|
|
704
|
-
* When false, column headers do not respond to clicks and rows are
|
|
705
|
-
* rendered in `data` order. Use this when sorting is implemented server-
|
|
706
|
-
* side or when sorting a paginated subset would produce cross-page
|
|
707
|
-
* inconsistencies. Default `true` preserves the previous client-side
|
|
708
|
-
* sort behavior.
|
|
709
|
-
*/
|
|
710
|
-
enableSorting?: boolean;
|
|
711
|
-
/**
|
|
712
|
-
* When true, the leading checkbox column is removed entirely AND any
|
|
713
|
-
* internal/uncontrolled selection state is dropped. Use this for
|
|
714
|
-
* read-only views (e.g. a LOCKED migration table) where ack actions
|
|
715
|
-
* are forbidden — without this prop the table would silently keep its
|
|
716
|
-
* own selection in uncontrolled mode even when the parent thinks
|
|
717
|
-
* selection is disabled, surfacing a checkbox column the user can
|
|
718
|
-
* tick but never act on.
|
|
719
|
-
*/
|
|
720
|
-
selectionDisabled?: boolean;
|
|
721
|
-
/**
|
|
722
|
-
* When true, switches the table into Excel-grade cell selection mode.
|
|
723
|
-
* The leading checkbox column is NOT rendered and row-selection plumbing
|
|
724
|
-
* is disabled; users interact with individual cells instead. Supports
|
|
725
|
-
* click, shift-click (rectangular range), cmd/ctrl-click (additive),
|
|
726
|
-
* mouse drag, Escape to clear, and Cmd/Ctrl+A to select all visible
|
|
727
|
-
* cells. The caller can observe or drive selection via
|
|
728
|
-
* `selectedCells` / `onCellSelectionChange`.
|
|
729
|
-
*/
|
|
730
|
-
enableCellSelection?: boolean;
|
|
731
|
-
/**
|
|
732
|
-
* Controlled cell selection. When provided, the table reflects this
|
|
733
|
-
* value and fires `onCellSelectionChange` on user interaction without
|
|
734
|
-
* mutating internal state. Only applies when `enableCellSelection` is
|
|
735
|
-
* true.
|
|
736
|
-
*/
|
|
737
|
-
selectedCells?: CellCoord[];
|
|
738
|
-
onCellSelectionChange?: (cells: CellCoord[]) => void;
|
|
739
|
-
}
|
|
740
|
-
|
|
741
818
|
export declare function DataTable<T>({ columns, data, pageSize, defaultSort, emptyMessage, onRowClick, rowClassName, className, }: DataTableProps<T>): JSX.Element;
|
|
742
819
|
|
|
743
820
|
declare interface DataTableProps<T> {
|
|
@@ -851,15 +928,6 @@ declare interface DateFieldSingleProps extends DateFieldCommonProps {
|
|
|
851
928
|
onChange: (next: Date | null) => void;
|
|
852
929
|
}
|
|
853
930
|
|
|
854
|
-
export declare function DatePicker({ value, onChange, placeholder, className }: DatePickerProps): JSX.Element;
|
|
855
|
-
|
|
856
|
-
declare interface DatePickerProps {
|
|
857
|
-
value: string | null;
|
|
858
|
-
onChange: (date: string | null) => void;
|
|
859
|
-
placeholder?: string;
|
|
860
|
-
className?: string;
|
|
861
|
-
}
|
|
862
|
-
|
|
863
931
|
export declare interface DateRange {
|
|
864
932
|
from: Date;
|
|
865
933
|
to: Date;
|
|
@@ -941,8 +1009,11 @@ export declare type DefaultTaskStatus = 'todo' | 'in_progress' | 'blocked' | 'do
|
|
|
941
1009
|
* `aria-hidden` bookkeeping for nested layers.
|
|
942
1010
|
* - Title renders at `text-base` (16px) semibold — NOT `text-lg`
|
|
943
1011
|
* (which in Atlas's token scale is 26px / hero size).
|
|
944
|
-
* - Overlay is `bg-
|
|
945
|
-
*
|
|
1012
|
+
* - Overlay is `bg-overlay` with a light backdrop blur — a
|
|
1013
|
+
* mode-independent dark scrim, NOT an alpha of `--foreground`
|
|
1014
|
+
* (see `DialogOverlay`).
|
|
1015
|
+
* - Content rounds to `rounded-surface` (DES-313) — the top-level
|
|
1016
|
+
* container radius role shared with Card.
|
|
946
1017
|
*/
|
|
947
1018
|
export declare const Dialog: React_2.FC<DialogPrimitive.DialogProps>;
|
|
948
1019
|
|
|
@@ -973,6 +1044,12 @@ export declare const DialogContent: React_2.ForwardRefExoticComponent<Omit<Dialo
|
|
|
973
1044
|
* controlled `open` + an `onOpenChange` guard for full lockout.
|
|
974
1045
|
*/
|
|
975
1046
|
showCloseButton?: boolean;
|
|
1047
|
+
/**
|
|
1048
|
+
* Classes for the scrim behind the dialog. Pair with `className` when
|
|
1049
|
+
* raising z-index — a lone `className="z-modal"` lifts only the panel and
|
|
1050
|
+
* leaves the overlay at `z-50` (DES-315). Additive; defaults unchanged.
|
|
1051
|
+
*/
|
|
1052
|
+
overlayClassName?: string;
|
|
976
1053
|
} & React_2.RefAttributes<HTMLDivElement>>;
|
|
977
1054
|
|
|
978
1055
|
export declare const DialogDescription: React_2.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogDescriptionProps & React_2.RefAttributes<HTMLParagraphElement>, "ref"> & React_2.RefAttributes<HTMLParagraphElement>>;
|
|
@@ -997,25 +1074,6 @@ export declare const DialogTitle: React_2.ForwardRefExoticComponent<Omit<DialogP
|
|
|
997
1074
|
|
|
998
1075
|
export declare const DialogTrigger: React_2.ForwardRefExoticComponent<DialogPrimitive.DialogTriggerProps & React_2.RefAttributes<HTMLButtonElement>>;
|
|
999
1076
|
|
|
1000
|
-
export declare function DiffCell({ before, after, editable, onChange, className, }: DiffCellProps): JSX.Element;
|
|
1001
|
-
|
|
1002
|
-
export declare interface DiffCellProps {
|
|
1003
|
-
before: string | number | null;
|
|
1004
|
-
after: string | number | null;
|
|
1005
|
-
editable?: boolean;
|
|
1006
|
-
onChange?: (newValue: string) => void;
|
|
1007
|
-
className?: string;
|
|
1008
|
-
}
|
|
1009
|
-
|
|
1010
|
-
export declare function DotLabel({ color, children, bold, className }: DotLabelProps): JSX.Element;
|
|
1011
|
-
|
|
1012
|
-
declare interface DotLabelProps {
|
|
1013
|
-
color: string;
|
|
1014
|
-
children: string;
|
|
1015
|
-
bold?: boolean;
|
|
1016
|
-
className?: string;
|
|
1017
|
-
}
|
|
1018
|
-
|
|
1019
1077
|
export declare const DropdownMenu: React_2.FC<DropdownMenuPrimitive.DropdownMenuProps>;
|
|
1020
1078
|
|
|
1021
1079
|
export declare const DropdownMenuCheckboxItem: React_2.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuCheckboxItemProps & React_2.RefAttributes<HTMLDivElement>, "ref"> & React_2.RefAttributes<HTMLDivElement>>;
|
|
@@ -1264,6 +1322,15 @@ export declare interface EmptyStateProps {
|
|
|
1264
1322
|
className?: string;
|
|
1265
1323
|
}
|
|
1266
1324
|
|
|
1325
|
+
/**
|
|
1326
|
+
* The canonical inline failure banner — one treatment for "this panel could not
|
|
1327
|
+
* load", used across apps so a failure reads the same everywhere.
|
|
1328
|
+
*
|
|
1329
|
+
* The red hue is fixed on purpose: it carries meaning, not theme. What it does
|
|
1330
|
+
* carry is a dark pair — the `-50`/`-200`/`-700` triplet is tuned for a white
|
|
1331
|
+
* surface and goes near-illegible on a dark one, so `.dark` lifts the fill to a
|
|
1332
|
+
* translucent step and lightens the ink. Light is byte-identical.
|
|
1333
|
+
*/
|
|
1267
1334
|
export declare function ErrorState({ message, className }: ErrorStateProps): JSX.Element;
|
|
1268
1335
|
|
|
1269
1336
|
declare interface ErrorStateProps {
|
|
@@ -1426,6 +1493,7 @@ export declare interface FileRejection {
|
|
|
1426
1493
|
message: string;
|
|
1427
1494
|
}
|
|
1428
1495
|
|
|
1496
|
+
/** @deprecated Use `MultiSelectOption` from `./multi-select`. */
|
|
1429
1497
|
export declare interface FilterOption<T extends string> {
|
|
1430
1498
|
value: T;
|
|
1431
1499
|
label: string;
|
|
@@ -1455,8 +1523,14 @@ export declare function FilterPill({ label, options, selected, onChange }: Filte
|
|
|
1455
1523
|
*
|
|
1456
1524
|
* - Height: h-9 (36px)
|
|
1457
1525
|
* - Radius: rounded-sm (8px, `--radius-sm`)
|
|
1458
|
-
* - Border/bg: `border bg-
|
|
1459
|
-
*
|
|
1526
|
+
* - Border/bg: `border bg-card` — `--input` border, raised surface,
|
|
1527
|
+
* same palette as Select/Input. NOT `background`: that is
|
|
1528
|
+
* the PAGE role (ds-neutral-50 under v2, not white), which
|
|
1529
|
+
* rendered the pill as a grey chip next to the white
|
|
1530
|
+
* outline controls beside it. `Button variant="outline"`
|
|
1531
|
+
* carries the same note and the same `dark:bg-input/30`
|
|
1532
|
+
* lift, since in dark the resting fill matches the darkest
|
|
1533
|
+
* surface and vanishes.
|
|
1460
1534
|
* - Padding: px-3 py-1
|
|
1461
1535
|
* - Text: text-base md:text-sm (14px on desktop)
|
|
1462
1536
|
* - Focus ring: focus:ring-1 focus:ring-ring (keyboard-visible)
|
|
@@ -1483,6 +1557,13 @@ declare interface FilterPillProps {
|
|
|
1483
1557
|
}
|
|
1484
1558
|
|
|
1485
1559
|
/**
|
|
1560
|
+
* @deprecated Do not use in new code, and migrate existing usages off it.
|
|
1561
|
+
* `FilterSelect` is retired in favor of `MultiSelect` (searchable cmdk list,
|
|
1562
|
+
* always-visible checkboxes, stacked trigger icons). It is still exported from
|
|
1563
|
+
* `@sequenceholdings/atlas-ui` (deprecated) so remaining consumers keep
|
|
1564
|
+
* compiling — remove only after the blast-radius scan is clean (FilterPill /
|
|
1565
|
+
* DES-261 deprecate-before-delete pattern).
|
|
1566
|
+
*
|
|
1486
1567
|
* A compact multi-select filter for a table/list toolbar: a trigger with a count
|
|
1487
1568
|
* chip when active, and a popover of swatch + label rows with a check on the
|
|
1488
1569
|
* selected ones. Reusable for any short enum filter (status, health, type, …).
|
|
@@ -1493,6 +1574,7 @@ declare interface FilterPillProps {
|
|
|
1493
1574
|
*/
|
|
1494
1575
|
export declare function FilterSelect<T extends string>({ label, options, selected, onChange, }: FilterSelectProps<T>): JSX.Element;
|
|
1495
1576
|
|
|
1577
|
+
/** @deprecated Use `MultiSelect` props instead. */
|
|
1496
1578
|
export declare interface FilterSelectProps<T extends string> {
|
|
1497
1579
|
label: string;
|
|
1498
1580
|
options: FilterOption<T>[];
|
|
@@ -1571,7 +1653,7 @@ export declare interface FormDialogProps {
|
|
|
1571
1653
|
* FormField does is still reachable as individual primitives. Use FormField
|
|
1572
1654
|
* when you want the 90% case in one line.
|
|
1573
1655
|
*/
|
|
1574
|
-
export declare function FormField({ label, required, error, description, id: providedId, children, className, }: FormFieldProps): JSX.Element;
|
|
1656
|
+
export declare function FormField({ label, required, error, description, descriptionPlacement, id: providedId, children, className, }: FormFieldProps): JSX.Element;
|
|
1575
1657
|
|
|
1576
1658
|
export declare interface FormFieldProps {
|
|
1577
1659
|
/**
|
|
@@ -1593,11 +1675,19 @@ export declare interface FormFieldProps {
|
|
|
1593
1675
|
*/
|
|
1594
1676
|
error?: string;
|
|
1595
1677
|
/**
|
|
1596
|
-
* Helper text rendered
|
|
1597
|
-
*
|
|
1598
|
-
* takes the same slot.
|
|
1678
|
+
* Helper text rendered in muted color (field hint, input format, etc).
|
|
1679
|
+
* Placement is controlled by {@link descriptionPlacement}. When placed
|
|
1680
|
+
* `below` (default), an `error` takes the same slot and hides it.
|
|
1599
1681
|
*/
|
|
1600
1682
|
description?: React_2.ReactNode;
|
|
1683
|
+
/**
|
|
1684
|
+
* Where the {@link description} sits relative to the control:
|
|
1685
|
+
* - `below` (default) — the classic helper-text slot beneath the control.
|
|
1686
|
+
* - `above` — a caption between the label and the control, for fields
|
|
1687
|
+
* where the description explains what to pick before you pick it
|
|
1688
|
+
* (e.g. a multi-select of capabilities). An `error` still renders below.
|
|
1689
|
+
*/
|
|
1690
|
+
descriptionPlacement?: 'above' | 'below';
|
|
1601
1691
|
/**
|
|
1602
1692
|
* DOM id for the control. If omitted, `useId()` generates one so
|
|
1603
1693
|
* `<label htmlFor>` and `aria-describedby` wire up automatically.
|
|
@@ -1633,7 +1723,7 @@ export declare function heatColor(value: number, min: number, max: number): stri
|
|
|
1633
1723
|
* Pair with `buildPeriodColumns` and `buildTotalColumn` for time-series
|
|
1634
1724
|
* data, or supply your own `ColumnDef` array for any tabular layout.
|
|
1635
1725
|
*/
|
|
1636
|
-
export declare function HeatmapTable<T>({ data, columns, pageSize, defaultSort, onRowClick, entityLabel, className, }: HeatmapTableProps<T>): JSX.Element;
|
|
1726
|
+
export declare function HeatmapTable<T>({ data, columns, pageSize, defaultSort, onRowClick, entityLabel, density, className, }: HeatmapTableProps<T>): JSX.Element;
|
|
1637
1727
|
|
|
1638
1728
|
export declare interface HeatmapTableProps<T> {
|
|
1639
1729
|
data: T[];
|
|
@@ -1643,6 +1733,8 @@ export declare interface HeatmapTableProps<T> {
|
|
|
1643
1733
|
onRowClick?: (row: T) => void;
|
|
1644
1734
|
/** Label used in pagination ("1–10 of 42 {entityLabel}") and empty state. */
|
|
1645
1735
|
entityLabel?: string;
|
|
1736
|
+
/** Tightens cell padding for dense, many-column matrices. */
|
|
1737
|
+
density?: 'default' | 'compact' | 'dense';
|
|
1646
1738
|
className?: string;
|
|
1647
1739
|
}
|
|
1648
1740
|
|
|
@@ -1815,6 +1907,12 @@ declare interface LabelOwnProps {
|
|
|
1815
1907
|
required?: boolean;
|
|
1816
1908
|
}
|
|
1817
1909
|
|
|
1910
|
+
declare type LegendPayloadItem = {
|
|
1911
|
+
value?: string | number;
|
|
1912
|
+
dataKey?: string | number;
|
|
1913
|
+
color?: string;
|
|
1914
|
+
};
|
|
1915
|
+
|
|
1818
1916
|
export declare function LineSparklineCell({ values, width, height, scaleMax, color, label, className, }: LineSparklineCellProps): JSX.Element;
|
|
1819
1917
|
|
|
1820
1918
|
declare interface LineSparklineCellProps {
|
|
@@ -1844,7 +1942,7 @@ export declare interface MetricAreaChartPoint {
|
|
|
1844
1942
|
|
|
1845
1943
|
export declare interface MetricAreaChartProps {
|
|
1846
1944
|
points: MetricAreaChartPoint[];
|
|
1847
|
-
/** Stroke / fill color for the area. Defaults to
|
|
1945
|
+
/** Stroke / fill color for the area. Defaults to the semantic "positive series" token. */
|
|
1848
1946
|
color?: string;
|
|
1849
1947
|
height?: number;
|
|
1850
1948
|
/** `spark` = compact, axis-less (cards); `full` = axes + grid + tooltip. */
|
|
@@ -1922,7 +2020,7 @@ declare interface MultiSelectListProps extends MultiSelectCoreProps {
|
|
|
1922
2020
|
* - Checkbox (Radix) for per-row selection state.
|
|
1923
2021
|
*
|
|
1924
2022
|
* Visual contract for the trigger mirrors `SelectTrigger` (h-9, rounded-sm,
|
|
1925
|
-
* border + bg-
|
|
2023
|
+
* border + bg-field) so a toolbar of MultiSelect + Input + Select reads
|
|
1926
2024
|
* as one coherent control row. Active state stacks up to `maxStackedIcons`
|
|
1927
2025
|
* selected-row icons (with a generic silhouette for icon-less rows) and
|
|
1928
2026
|
* shows "{count} {countLabel}" alongside.
|
|
@@ -2256,7 +2354,7 @@ declare interface ProColumnMetaSticky extends ProColumnMetaBase {
|
|
|
2256
2354
|
grow?: never;
|
|
2257
2355
|
}
|
|
2258
2356
|
|
|
2259
|
-
export declare function ProDataTable<T>({ columns, data, searchable, filters, toolbar, actions, footer, pageSize, disablePagination, resizableColumns, columnSizingStorageKey, defaultSort, manualPagination, rowCount, pageIndex, onPageChange, manualSorting, sorting: controlledSorting, onSortingChange, manualFiltering, columnFilters: controlledColumnFilters, onColumnFiltersChange, loading, emptyMessage, onRowClick, rowHref, rowClassName, minWidth, height, bordered, variant, ariaLabel, className, }: ProDataTableProps<T>): JSX.Element;
|
|
2357
|
+
export declare function ProDataTable<T>({ columns, data, selectable, getRowId, selectedRowIds, onSelectionChange, enableRowSelection, rowActions, getRowLabel, searchable, filters, toolbar, actions, footer, pageSize, disablePagination, resizableColumns, columnSizingStorageKey, defaultSort, manualPagination, rowCount, pageIndex, onPageChange, manualSorting, sorting: controlledSorting, onSortingChange, manualFiltering, columnFilters: controlledColumnFilters, onColumnFiltersChange, loading, emptyMessage, onRowClick, rowHref, rowClassName, minWidth, height, bordered, variant, ariaLabel, className, }: ProDataTableProps<T>): JSX.Element;
|
|
2260
2358
|
|
|
2261
2359
|
/**
|
|
2262
2360
|
* Native segmented filter for the toolbar (e.g. All / Groups / People). The
|
|
@@ -2295,6 +2393,40 @@ declare interface ProDataTablePaginationProps<T> {
|
|
|
2295
2393
|
declare interface ProDataTableProps<T> {
|
|
2296
2394
|
columns: ProColumnDef<T>[];
|
|
2297
2395
|
data: T[];
|
|
2396
|
+
/**
|
|
2397
|
+
* Render a leading, left-pinned selection checkbox column (with a select-all
|
|
2398
|
+
* header), backed by TanStack's row-selection model. The table owns the
|
|
2399
|
+
* column and the state — pass `getRowId` for stable keys and read the result
|
|
2400
|
+
* via `onSelectionChange`, or drive it with `selectedRowIds`. Prefer this
|
|
2401
|
+
* over hand-rolling a checkbox column + selection `Set`.
|
|
2402
|
+
*/
|
|
2403
|
+
selectable?: boolean;
|
|
2404
|
+
/**
|
|
2405
|
+
* Stable id per row. Strongly recommended with `selectable` — without it
|
|
2406
|
+
* selection is keyed by row index and won't survive sort/filter/paging.
|
|
2407
|
+
*/
|
|
2408
|
+
getRowId?: (row: T) => string;
|
|
2409
|
+
/** Controlled selection (row ids). Omit for uncontrolled; read via `onSelectionChange`. */
|
|
2410
|
+
selectedRowIds?: string[];
|
|
2411
|
+
/** Called with the selected row ids whenever selection changes. */
|
|
2412
|
+
onSelectionChange?: (ids: string[]) => void;
|
|
2413
|
+
/** Gate which rows can be selected. Defaults to all rows selectable. */
|
|
2414
|
+
enableRowSelection?: (row: T) => boolean;
|
|
2415
|
+
/**
|
|
2416
|
+
* Render a trailing, right-pinned overflow (⋯) menu, resolved per row. Return
|
|
2417
|
+
* the actions for that row — an empty array (or all `hidden`) renders no
|
|
2418
|
+
* button. Destructive actions automatically drop below a divider. Prefer this
|
|
2419
|
+
* over hand-rolling an end-of-row action button + `DropdownMenu`.
|
|
2420
|
+
*/
|
|
2421
|
+
rowActions?: (row: T) => RowAction[];
|
|
2422
|
+
/**
|
|
2423
|
+
* Human-readable per-row label for accessibility. When set, the injected
|
|
2424
|
+
* selection checkbox and row-actions (⋯) trigger get row-specific aria-labels
|
|
2425
|
+
* ("Select <label>" / "Actions for <label>") instead of generic repeated ones,
|
|
2426
|
+
* so screen-reader users can tell which record they're acting on. Recommended
|
|
2427
|
+
* whenever `selectable` or `rowActions` is used.
|
|
2428
|
+
*/
|
|
2429
|
+
getRowLabel?: (row: T) => string;
|
|
2298
2430
|
/**
|
|
2299
2431
|
* Enable a client-side search input in the table header. Filters rows by
|
|
2300
2432
|
* concatenating every cell's accessor value (default) or via a custom
|
|
@@ -2423,7 +2555,7 @@ declare interface ProDataTableProps<T> {
|
|
|
2423
2555
|
bordered?: boolean;
|
|
2424
2556
|
/**
|
|
2425
2557
|
* `table` (default) renders column headers (sortable). `list` hides the
|
|
2426
|
-
* header row for a clean borderless list — rows still carry the `
|
|
2558
|
+
* header row for a clean borderless list — rows still carry the `border`
|
|
2427
2559
|
* inset dividers. Use for identity lists (people / groups) where column
|
|
2428
2560
|
* labels are noise. Sorting via header click isn't available in `list`;
|
|
2429
2561
|
* pass `defaultSort` for a fixed order.
|
|
@@ -2452,13 +2584,30 @@ declare interface ProDataTableSearchable<T> {
|
|
|
2452
2584
|
/**
|
|
2453
2585
|
* Controlled (server-side) search. When `onChange` is provided the table
|
|
2454
2586
|
* stops filtering client-side and hands the debounced query to the parent,
|
|
2455
|
-
* which refetches — pair with `manualPagination`.
|
|
2456
|
-
*
|
|
2457
|
-
*
|
|
2587
|
+
* which refetches — pair with `manualPagination`. Omit both for the default
|
|
2588
|
+
* client-side filter over the loaded `data`.
|
|
2589
|
+
*
|
|
2590
|
+
* Once `value` is provided it is the source of truth for the input:
|
|
2591
|
+
* keystrokes show instantly, but as soon as the debounce emits, the field
|
|
2592
|
+
* renders `value` again. So rejecting or rewriting the query in `onChange` is
|
|
2593
|
+
* reflected in the box rather than leaving a stale private copy behind, and a
|
|
2594
|
+
* `value` the parent changes on its own cancels any unsent keystroke.
|
|
2595
|
+
*
|
|
2596
|
+
* Set your state to the emitted value synchronously inside `onChange` — the
|
|
2597
|
+
* normal controlled-input contract. A `value` that only catches up after a
|
|
2598
|
+
* round-trip leaves the field showing the pre-emit query until it does, and
|
|
2599
|
+
* anything typed while that update is in flight is dropped when it lands.
|
|
2458
2600
|
*/
|
|
2459
2601
|
value?: string;
|
|
2460
2602
|
onChange?: (value: string) => void;
|
|
2461
|
-
/**
|
|
2603
|
+
/**
|
|
2604
|
+
* Debounce before a controlled `onChange` fires, in ms. Default 300.
|
|
2605
|
+
*
|
|
2606
|
+
* `0` (or negative) means no debounce at all — `onChange` fires inline on the
|
|
2607
|
+
* keystroke, with no timer. Use it for search that filters rows already in
|
|
2608
|
+
* memory: a debounce only adds keystroke lag there, and emitting inline also
|
|
2609
|
+
* means the field is never showing a query the parent has not been handed.
|
|
2610
|
+
*/
|
|
2462
2611
|
debounceMs?: number;
|
|
2463
2612
|
}
|
|
2464
2613
|
|
|
@@ -2487,32 +2636,6 @@ declare interface ProgressBarProps {
|
|
|
2487
2636
|
className?: string;
|
|
2488
2637
|
}
|
|
2489
2638
|
|
|
2490
|
-
export declare function ProgressCard({ title, description, total, counts, assignees, footer, onClick, locked, className, }: ProgressCardProps): JSX.Element;
|
|
2491
|
-
|
|
2492
|
-
export declare interface ProgressCardAssignee {
|
|
2493
|
-
id: string;
|
|
2494
|
-
displayName: string;
|
|
2495
|
-
avatarUrl?: string;
|
|
2496
|
-
}
|
|
2497
|
-
|
|
2498
|
-
export declare interface ProgressCardCounts {
|
|
2499
|
-
todo: number;
|
|
2500
|
-
pending: number;
|
|
2501
|
-
done: number;
|
|
2502
|
-
}
|
|
2503
|
-
|
|
2504
|
-
export declare interface ProgressCardProps {
|
|
2505
|
-
title: string;
|
|
2506
|
-
description?: string;
|
|
2507
|
-
total: number;
|
|
2508
|
-
counts: ProgressCardCounts;
|
|
2509
|
-
assignees?: ProgressCardAssignee[];
|
|
2510
|
-
footer?: React_2.ReactNode;
|
|
2511
|
-
onClick?: () => void;
|
|
2512
|
-
locked?: boolean;
|
|
2513
|
-
className?: string;
|
|
2514
|
-
}
|
|
2515
|
-
|
|
2516
2639
|
/**
|
|
2517
2640
|
* A quiet live/refresh indicator: a small green dot (muted when paused) that
|
|
2518
2641
|
* pulses subtly while a refresh is in flight, doubling as a manual-refresh
|
|
@@ -2560,6 +2683,23 @@ export declare interface RouteLoadingProps {
|
|
|
2560
2683
|
|
|
2561
2684
|
export { Row }
|
|
2562
2685
|
|
|
2686
|
+
/**
|
|
2687
|
+
* A single entry in a row's overflow (⋯) menu. The consumer resolves these
|
|
2688
|
+
* per-row via `rowActions`, so `onSelect` closes over the row itself — no row
|
|
2689
|
+
* argument needed here.
|
|
2690
|
+
*/
|
|
2691
|
+
declare interface RowAction {
|
|
2692
|
+
label: React_2.ReactNode;
|
|
2693
|
+
onSelect: () => void;
|
|
2694
|
+
/** Optional leading icon (e.g. `<IconPencil />`). */
|
|
2695
|
+
icon?: React_2.ReactNode;
|
|
2696
|
+
/** Render below a divider with destructive styling (Delete, Remove, …). */
|
|
2697
|
+
destructive?: boolean;
|
|
2698
|
+
disabled?: boolean;
|
|
2699
|
+
/** Omit this action for this row entirely. */
|
|
2700
|
+
hidden?: boolean;
|
|
2701
|
+
}
|
|
2702
|
+
|
|
2563
2703
|
export declare function scoreBand(value: number): 'green' | 'amber' | 'red';
|
|
2564
2704
|
|
|
2565
2705
|
export declare function ScoreBarCell({ value, className, }: {
|
|
@@ -2714,7 +2854,7 @@ export declare const SheetTitle: React_2.ForwardRefExoticComponent<Omit<DialogPr
|
|
|
2714
2854
|
export declare const SheetTrigger: React_2.ForwardRefExoticComponent<DialogPrimitive.DialogTriggerProps & React_2.RefAttributes<HTMLButtonElement>>;
|
|
2715
2855
|
|
|
2716
2856
|
declare const sheetVariants: (props?: ({
|
|
2717
|
-
side?: "
|
|
2857
|
+
side?: "bottom" | "left" | "right" | "top" | null | undefined;
|
|
2718
2858
|
} & ClassProp) | undefined) => string;
|
|
2719
2859
|
|
|
2720
2860
|
/**
|
|
@@ -2727,78 +2867,6 @@ export declare function showFieldInline({ show, hasValue, }: {
|
|
|
2727
2867
|
hasValue: boolean;
|
|
2728
2868
|
}): boolean;
|
|
2729
2869
|
|
|
2730
|
-
/**
|
|
2731
|
-
* SidebarNav — shared primitives for app-sidebar navigation.
|
|
2732
|
-
*
|
|
2733
|
-
* Two levels:
|
|
2734
|
-
* - `SidebarNavItem` — the top-level row with icon + label (app entry)
|
|
2735
|
-
* - `SidebarNavSubList` — the indented, rail-connected secondary nav
|
|
2736
|
-
* rendered directly beneath a parent SidebarNavItem
|
|
2737
|
-
*
|
|
2738
|
-
* The pattern mirrors what Atlas's shell sidebar has been rendering
|
|
2739
|
-
* inline for a long time, but extracted here so every consumer
|
|
2740
|
-
* (Atlas, embedded MFEs, the design system gallery) gets the same
|
|
2741
|
-
* visual treatment and spacing rules for free.
|
|
2742
|
-
*
|
|
2743
|
-
* Spacing contract
|
|
2744
|
-
* ----------------
|
|
2745
|
-
* Parent item label x-position = `itemPaddingX + iconSize + iconGap`.
|
|
2746
|
-
* The sub-list is designed so its labels land at the SAME x-position
|
|
2747
|
-
* by default — with defaults of `itemPaddingX=8`, `iconSize=24`,
|
|
2748
|
-
* `iconGap=12` the sub-list labels indent by 44px. A rail sits at the
|
|
2749
|
-
* horizontal center of the parent icon (x = 8 + 24/2 = 20).
|
|
2750
|
-
*
|
|
2751
|
-
* If a consumer uses a different parent item geometry, pass
|
|
2752
|
-
* `labelIndent` / `railIndent` to match.
|
|
2753
|
-
*/
|
|
2754
|
-
export declare interface SidebarNavSubItem {
|
|
2755
|
-
id: string;
|
|
2756
|
-
label: string;
|
|
2757
|
-
/** Link href. Omit when using `onSelect` with a custom navigator. */
|
|
2758
|
-
href?: string;
|
|
2759
|
-
/** True for the currently-selected item — gets weight + color emphasis. */
|
|
2760
|
-
active?: boolean;
|
|
2761
|
-
/** Optional tail counter (e.g., "12"). Rendered right-aligned. */
|
|
2762
|
-
count?: number | string;
|
|
2763
|
-
/** Optional uppercase chip (e.g., "NEW", "BETA"). Rendered right-aligned. */
|
|
2764
|
-
tag?: string;
|
|
2765
|
-
/**
|
|
2766
|
-
* Render as visible but non-interactive. Use for placeholder items that
|
|
2767
|
-
* will become clickable later (feature gating, coming-soon, etc.).
|
|
2768
|
-
*/
|
|
2769
|
-
parked?: boolean;
|
|
2770
|
-
}
|
|
2771
|
-
|
|
2772
|
-
/**
|
|
2773
|
-
* Indented secondary navigation with a vertical connector rail. Renders
|
|
2774
|
-
* nothing when `items` is empty.
|
|
2775
|
-
*/
|
|
2776
|
-
export declare function SidebarNavSubList({ items, onSelect, labelIndent, railIndent, className, ariaLabel, }: SidebarNavSubListProps): JSX.Element | null;
|
|
2777
|
-
|
|
2778
|
-
export declare interface SidebarNavSubListProps {
|
|
2779
|
-
items: SidebarNavSubItem[];
|
|
2780
|
-
/**
|
|
2781
|
-
* Called when the user activates an item (click, keyboard enter).
|
|
2782
|
-
* Use this to route with your SPA router; if omitted, the `<a href>`
|
|
2783
|
-
* does a full navigation. Parked items never fire this.
|
|
2784
|
-
*/
|
|
2785
|
-
onSelect?: (item: SidebarNavSubItem, event: React_2.MouseEvent<HTMLAnchorElement>) => void;
|
|
2786
|
-
/**
|
|
2787
|
-
* Horizontal distance (px) from the list's left edge at which item
|
|
2788
|
-
* labels begin. Should equal the parent item's label x-position so
|
|
2789
|
-
* the two stacks visually line up. Default 44.
|
|
2790
|
-
*/
|
|
2791
|
-
labelIndent?: number;
|
|
2792
|
-
/**
|
|
2793
|
-
* X-position (px) of the vertical connector rail. Usually the center
|
|
2794
|
-
* of the parent item's icon. Default 20.
|
|
2795
|
-
*/
|
|
2796
|
-
railIndent?: number;
|
|
2797
|
-
className?: string;
|
|
2798
|
-
/** Accessible name for the list (e.g., "Agent Builder pages"). */
|
|
2799
|
-
ariaLabel?: string;
|
|
2800
|
-
}
|
|
2801
|
-
|
|
2802
2870
|
/**
|
|
2803
2871
|
* SingleSelectList — the single-select sibling of `MultiSelectList`. Same
|
|
2804
2872
|
* searchable cmdk body, pinned grouping, and icon column, but rows carry a
|
|
@@ -2876,74 +2944,74 @@ export declare const spinnerVariants: (props?: ({
|
|
|
2876
2944
|
|
|
2877
2945
|
export declare const STATUS_TONES: {
|
|
2878
2946
|
readonly healthy: {
|
|
2879
|
-
readonly bg: "bg-emerald-50";
|
|
2880
|
-
readonly fg: "text-emerald-700";
|
|
2947
|
+
readonly bg: "bg-emerald-50 dark:bg-emerald-500/15";
|
|
2948
|
+
readonly fg: "text-emerald-700 dark:text-emerald-300";
|
|
2881
2949
|
readonly dot: "bg-emerald-500";
|
|
2882
2950
|
};
|
|
2883
2951
|
readonly active: {
|
|
2884
|
-
readonly bg: "bg-emerald-50";
|
|
2885
|
-
readonly fg: "text-emerald-700";
|
|
2952
|
+
readonly bg: "bg-emerald-50 dark:bg-emerald-500/15";
|
|
2953
|
+
readonly fg: "text-emerald-700 dark:text-emerald-300";
|
|
2886
2954
|
readonly dot: "bg-emerald-500";
|
|
2887
2955
|
};
|
|
2888
2956
|
readonly completed: {
|
|
2889
|
-
readonly bg: "bg-emerald-50";
|
|
2890
|
-
readonly fg: "text-emerald-700";
|
|
2957
|
+
readonly bg: "bg-emerald-50 dark:bg-emerald-500/15";
|
|
2958
|
+
readonly fg: "text-emerald-700 dark:text-emerald-300";
|
|
2891
2959
|
readonly dot: "bg-emerald-500";
|
|
2892
2960
|
};
|
|
2893
2961
|
readonly success: {
|
|
2894
|
-
readonly bg: "bg-emerald-50";
|
|
2895
|
-
readonly fg: "text-emerald-700";
|
|
2962
|
+
readonly bg: "bg-emerald-50 dark:bg-emerald-500/15";
|
|
2963
|
+
readonly fg: "text-emerald-700 dark:text-emerald-300";
|
|
2896
2964
|
readonly dot: "bg-emerald-500";
|
|
2897
2965
|
};
|
|
2898
2966
|
readonly running: {
|
|
2899
|
-
readonly bg: "bg-sky-50";
|
|
2900
|
-
readonly fg: "text-sky-700";
|
|
2967
|
+
readonly bg: "bg-sky-50 dark:bg-sky-500/15";
|
|
2968
|
+
readonly fg: "text-sky-700 dark:text-sky-300";
|
|
2901
2969
|
readonly dot: "bg-sky-500";
|
|
2902
2970
|
};
|
|
2903
2971
|
readonly info: {
|
|
2904
|
-
readonly bg: "bg-sky-50";
|
|
2905
|
-
readonly fg: "text-sky-700";
|
|
2972
|
+
readonly bg: "bg-sky-50 dark:bg-sky-500/15";
|
|
2973
|
+
readonly fg: "text-sky-700 dark:text-sky-300";
|
|
2906
2974
|
readonly dot: "bg-sky-500";
|
|
2907
2975
|
};
|
|
2908
2976
|
readonly queued: {
|
|
2909
|
-
readonly bg: "bg-sky-50";
|
|
2910
|
-
readonly fg: "text-sky-700";
|
|
2977
|
+
readonly bg: "bg-sky-50 dark:bg-sky-500/15";
|
|
2978
|
+
readonly fg: "text-sky-700 dark:text-sky-300";
|
|
2911
2979
|
readonly dot: "bg-sky-500";
|
|
2912
2980
|
};
|
|
2913
2981
|
readonly drift: {
|
|
2914
|
-
readonly bg: "bg-amber-50";
|
|
2915
|
-
readonly fg: "text-amber-700";
|
|
2982
|
+
readonly bg: "bg-amber-50 dark:bg-amber-500/15";
|
|
2983
|
+
readonly fg: "text-amber-700 dark:text-amber-300";
|
|
2916
2984
|
readonly dot: "bg-amber-500";
|
|
2917
2985
|
};
|
|
2918
2986
|
readonly warn: {
|
|
2919
|
-
readonly bg: "bg-amber-50";
|
|
2920
|
-
readonly fg: "text-amber-700";
|
|
2987
|
+
readonly bg: "bg-amber-50 dark:bg-amber-500/15";
|
|
2988
|
+
readonly fg: "text-amber-700 dark:text-amber-300";
|
|
2921
2989
|
readonly dot: "bg-amber-500";
|
|
2922
2990
|
};
|
|
2923
2991
|
readonly failing: {
|
|
2924
|
-
readonly bg: "bg-rose-50";
|
|
2925
|
-
readonly fg: "text-rose-700";
|
|
2992
|
+
readonly bg: "bg-rose-50 dark:bg-rose-500/15";
|
|
2993
|
+
readonly fg: "text-rose-700 dark:text-rose-300";
|
|
2926
2994
|
readonly dot: "bg-rose-500";
|
|
2927
2995
|
};
|
|
2928
2996
|
readonly failed: {
|
|
2929
|
-
readonly bg: "bg-rose-50";
|
|
2930
|
-
readonly fg: "text-rose-700";
|
|
2997
|
+
readonly bg: "bg-rose-50 dark:bg-rose-500/15";
|
|
2998
|
+
readonly fg: "text-rose-700 dark:text-rose-300";
|
|
2931
2999
|
readonly dot: "bg-rose-500";
|
|
2932
3000
|
};
|
|
2933
3001
|
readonly error: {
|
|
2934
|
-
readonly bg: "bg-rose-50";
|
|
2935
|
-
readonly fg: "text-rose-700";
|
|
3002
|
+
readonly bg: "bg-rose-50 dark:bg-rose-500/15";
|
|
3003
|
+
readonly fg: "text-rose-700 dark:text-rose-300";
|
|
2936
3004
|
readonly dot: "bg-rose-500";
|
|
2937
3005
|
};
|
|
2938
3006
|
readonly paused: {
|
|
2939
|
-
readonly bg: "bg-
|
|
2940
|
-
readonly fg: "text-
|
|
2941
|
-
readonly dot: "bg-
|
|
3007
|
+
readonly bg: "bg-muted";
|
|
3008
|
+
readonly fg: "text-muted-foreground";
|
|
3009
|
+
readonly dot: "bg-muted-foreground";
|
|
2942
3010
|
};
|
|
2943
3011
|
readonly neutral: {
|
|
2944
|
-
readonly bg: "bg-
|
|
2945
|
-
readonly fg: "text-
|
|
2946
|
-
readonly dot: "bg-
|
|
3012
|
+
readonly bg: "bg-muted";
|
|
3013
|
+
readonly fg: "text-muted-foreground";
|
|
3014
|
+
readonly dot: "bg-muted-foreground";
|
|
2947
3015
|
};
|
|
2948
3016
|
};
|
|
2949
3017
|
|
|
@@ -2992,14 +3060,6 @@ export declare const TableHeader: React_2.ForwardRefExoticComponent<React_2.HTML
|
|
|
2992
3060
|
|
|
2993
3061
|
export declare const TableRow: React_2.ForwardRefExoticComponent<React_2.HTMLAttributes<HTMLTableRowElement> & React_2.RefAttributes<HTMLTableRowElement>>;
|
|
2994
3062
|
|
|
2995
|
-
export declare function TabPage({ children, maxWidth, className }: TabPageProps): JSX.Element;
|
|
2996
|
-
|
|
2997
|
-
declare interface TabPageProps {
|
|
2998
|
-
children: ReactNode;
|
|
2999
|
-
maxWidth?: 'md' | 'lg' | 'xl' | '2xl' | '4xl' | '6xl' | '7xl' | 'full';
|
|
3000
|
-
className?: string;
|
|
3001
|
-
}
|
|
3002
|
-
|
|
3003
3063
|
export declare const Tabs: React_2.ForwardRefExoticComponent<TabsPrimitive.TabsProps & React_2.RefAttributes<HTMLDivElement>>;
|
|
3004
3064
|
|
|
3005
3065
|
export declare const TabsContent: React_2.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsContentProps & React_2.RefAttributes<HTMLDivElement>, "ref"> & React_2.RefAttributes<HTMLDivElement>>;
|
|
@@ -3493,6 +3553,22 @@ declare interface TextareaOwnProps {
|
|
|
3493
3553
|
|
|
3494
3554
|
export declare type TextareaProps = React_2.ComponentProps<"textarea"> & TextareaOwnProps;
|
|
3495
3555
|
|
|
3556
|
+
/**
|
|
3557
|
+
* shadcn/ui chart primitive (recharts-based).
|
|
3558
|
+
*
|
|
3559
|
+
* Provides a themeable container + tooltip/legend chrome so charts across
|
|
3560
|
+
* Atlas share one styling contract instead of each app hand-rolling recharts
|
|
3561
|
+
* markup. New charts should compose `ChartContainer` + a `ChartConfig` and let
|
|
3562
|
+
* this primitive resolve colors from the `--chart-*` design tokens.
|
|
3563
|
+
*
|
|
3564
|
+
* Jarvis is migrating its bespoke recharts usage onto this primitive — prefer
|
|
3565
|
+
* it over importing recharts directly in new code.
|
|
3566
|
+
*/
|
|
3567
|
+
declare const THEMES: {
|
|
3568
|
+
readonly light: "";
|
|
3569
|
+
readonly dark: ".dark";
|
|
3570
|
+
};
|
|
3571
|
+
|
|
3496
3572
|
export declare function tintForString(seed: string): AgentTint;
|
|
3497
3573
|
|
|
3498
3574
|
export { toast }
|
|
@@ -3514,7 +3590,7 @@ export { toast }
|
|
|
3514
3590
|
* the same without re-specifying options at the call site.
|
|
3515
3591
|
* 2. Binds Sonner's internal classes to Atlas design tokens via
|
|
3516
3592
|
* `toastOptions.classNames` — `bg-card`, `border-border`,
|
|
3517
|
-
* `shadow-
|
|
3593
|
+
* `shadow-popover`, `rounded-md`, and the `--destructive` /
|
|
3518
3594
|
* `--primary` / `--muted` pairs. Matches Dialog / Popover /
|
|
3519
3595
|
* DropdownMenu so all floating UI reads as one visual family.
|
|
3520
3596
|
* 3. Uses `richColors` for the semantic variants
|
|
@@ -3602,6 +3678,15 @@ export declare const TooltipContent: React_2.ForwardRefExoticComponent<Omit<Tool
|
|
|
3602
3678
|
container?: HTMLElement | null;
|
|
3603
3679
|
} & React_2.RefAttributes<HTMLDivElement>>;
|
|
3604
3680
|
|
|
3681
|
+
declare type TooltipPayloadItem = {
|
|
3682
|
+
name?: string | number;
|
|
3683
|
+
dataKey?: string | number;
|
|
3684
|
+
value?: number | string;
|
|
3685
|
+
color?: string;
|
|
3686
|
+
payload?: Record<string, unknown>;
|
|
3687
|
+
fill?: string;
|
|
3688
|
+
};
|
|
3689
|
+
|
|
3605
3690
|
/**
|
|
3606
3691
|
* Tooltip — contextual helper text anchored to a trigger.
|
|
3607
3692
|
*
|
|
@@ -3651,6 +3736,41 @@ declare interface TrendBadgeProps {
|
|
|
3651
3736
|
invertColors?: boolean;
|
|
3652
3737
|
}
|
|
3653
3738
|
|
|
3739
|
+
/**
|
|
3740
|
+
* Text that truncates with an ellipsis and reveals its full value in a tooltip —
|
|
3741
|
+
* **but only when actually clipped**. The one place the overflow-detection +
|
|
3742
|
+
* tooltip pattern lives, so every truncating title/label gets it for free.
|
|
3743
|
+
*
|
|
3744
|
+
* Use for **titles and labels** (page/tab titles, table cells, breadcrumbs, list
|
|
3745
|
+
* rows) — anything single-line that must fit a bounded width. Do **not** use for
|
|
3746
|
+
* body or long-form copy: that should wrap, not truncate.
|
|
3747
|
+
*
|
|
3748
|
+
* ```tsx
|
|
3749
|
+
* <TruncatedText className="max-w-[16rem]">{customer.name}</TruncatedText>
|
|
3750
|
+
*
|
|
3751
|
+
* // asChild — the link itself truncates; pass the text as `tooltip`:
|
|
3752
|
+
* <TruncatedText asChild tooltip={repo.name}>
|
|
3753
|
+
* <a href={href} className="max-w-[14rem]">{repo.name}</a>
|
|
3754
|
+
* </TruncatedText>
|
|
3755
|
+
* ```
|
|
3756
|
+
*/
|
|
3757
|
+
export declare function TruncatedText({ asChild, tooltip, side, className, children, ref: forwardedRef, ...props }: TruncatedTextProps): JSX.Element;
|
|
3758
|
+
|
|
3759
|
+
declare type TruncatedTextProps = ComponentProps<'span'> & {
|
|
3760
|
+
/**
|
|
3761
|
+
* Merge the truncation + tooltip onto the child element instead of rendering a
|
|
3762
|
+
* `<span>` (shadcn `asChild`). Use when the truncating element must be a link,
|
|
3763
|
+
* button, or heading. When set, pass `tooltip` explicitly — `children` is an
|
|
3764
|
+
* element, not the text.
|
|
3765
|
+
*/
|
|
3766
|
+
asChild?: boolean;
|
|
3767
|
+
/** Tooltip content. Defaults to `children` (correct only when they're the raw
|
|
3768
|
+
* text — i.e. not `asChild`). */
|
|
3769
|
+
tooltip?: ReactNode;
|
|
3770
|
+
/** Tooltip side; forwarded to `TooltipContent`. */
|
|
3771
|
+
side?: ComponentProps<typeof TooltipContent>['side'];
|
|
3772
|
+
};
|
|
3773
|
+
|
|
3654
3774
|
export declare function useAppClassName(): string | undefined;
|
|
3655
3775
|
|
|
3656
3776
|
/**
|
|
@@ -3909,23 +4029,6 @@ export declare interface UserChipUser {
|
|
|
3909
4029
|
initials?: string;
|
|
3910
4030
|
}
|
|
3911
4031
|
|
|
3912
|
-
/**
|
|
3913
|
-
* A person rendered as one inline unit: a neutral avatar icon followed by their
|
|
3914
|
-
* full name. For lightweight person references (a lead, an assignee label) where
|
|
3915
|
-
* you only have a name. When you have full identity (email/org) and want the
|
|
3916
|
-
* hover card, use `UserChip` instead.
|
|
3917
|
-
*
|
|
3918
|
-
* Inherits font size/color from its container so it drops into any context.
|
|
3919
|
-
*/
|
|
3920
|
-
export declare function UserLabel({ name, size, className }: UserLabelProps): JSX.Element;
|
|
3921
|
-
|
|
3922
|
-
export declare interface UserLabelProps {
|
|
3923
|
-
name: string;
|
|
3924
|
-
/** Avatar size in px. Defaults to 18. */
|
|
3925
|
-
size?: number;
|
|
3926
|
-
className?: string;
|
|
3927
|
-
}
|
|
3928
|
-
|
|
3929
4032
|
/**
|
|
3930
4033
|
* Resolve a `ParsedDate` (year/month/day, any of which may be null)
|
|
3931
4034
|
* into a concrete `Date`, using the reference date and `dayDefault`
|