@leta-io/components 0.2.0 → 0.4.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/README.md +36 -0
- package/dist/assets/calendar.png +0 -0
- package/dist/assets/calendar.webp +0 -0
- package/dist/index.d.ts +495 -41
- package/dist/index.js +1852 -1178
- package/package.json +11 -5
package/dist/index.d.ts
CHANGED
|
@@ -204,8 +204,11 @@ interface BadgeProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, 'childr
|
|
|
204
204
|
declare const Badge: React.ForwardRefExoticComponent<BadgeProps & React.RefAttributes<HTMLSpanElement>>;
|
|
205
205
|
|
|
206
206
|
interface TagProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, 'children'> {
|
|
207
|
-
/**
|
|
208
|
-
|
|
207
|
+
/**
|
|
208
|
+
* Tag label. Usually text; a node is accepted so a host can wrap the text in a
|
|
209
|
+
* hover target (the group filter's tag tooltip) without the ✕ joining it.
|
|
210
|
+
*/
|
|
211
|
+
label: React.ReactNode;
|
|
209
212
|
/**
|
|
210
213
|
* When provided, renders a trailing Cancel icon as a <button>.
|
|
211
214
|
* Callback fires on button click.
|
|
@@ -213,7 +216,17 @@ interface TagProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, 'children
|
|
|
213
216
|
onRemove?: (e: React.MouseEvent<HTMLButtonElement>) => void;
|
|
214
217
|
/** Accessible label for the remove button. Default: "Remove". */
|
|
215
218
|
removeLabel?: string;
|
|
219
|
+
/**
|
|
220
|
+
* Colour family (Figma `Tags` `7751:28982` `Color` axis, added 2026-09-25).
|
|
221
|
+
*
|
|
222
|
+
* `information` is the original Sky Blue; `neutral` was added alongside it and
|
|
223
|
+
* is what completed the `--surface/border-neutral-desktop-badge-*` token family
|
|
224
|
+
* in the same Figma change. Neutral takes `--text-default-label` rather than a
|
|
225
|
+
* `--text-neutral-label`, which does not exist.
|
|
226
|
+
*/
|
|
227
|
+
color?: TagColor;
|
|
216
228
|
}
|
|
229
|
+
type TagColor = 'information' | 'neutral';
|
|
217
230
|
declare const Tag: React.ForwardRefExoticComponent<TagProps & React.RefAttributes<HTMLSpanElement>>;
|
|
218
231
|
|
|
219
232
|
interface ChipProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'children'> {
|
|
@@ -221,6 +234,12 @@ interface ChipProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>,
|
|
|
221
234
|
label: string;
|
|
222
235
|
/** Optional icon before the label. */
|
|
223
236
|
leadingIcon?: IconName;
|
|
237
|
+
/**
|
|
238
|
+
* Colour for the leading icon (a CSS colour / `var(--…)`). Defaults to the
|
|
239
|
+
* neutral button icon. For a chip that names a state with its own colour — the
|
|
240
|
+
* Deliveries "Filter by: Delayed" chip draws its SLA icon in the error colour.
|
|
241
|
+
*/
|
|
242
|
+
leadingIconColor?: string;
|
|
224
243
|
/** Optional icon after the label. */
|
|
225
244
|
trailingIcon?: IconName;
|
|
226
245
|
/** When true the chip renders in the Active (selected) state. Caller-controlled. */
|
|
@@ -288,6 +307,12 @@ interface FeaturedIconProps extends React.HTMLAttributes<HTMLSpanElement> {
|
|
|
288
307
|
* @default false
|
|
289
308
|
*/
|
|
290
309
|
outlined?: boolean;
|
|
310
|
+
/**
|
|
311
|
+
* Replace the glyph with your own node (sized to the icon box, coloured via
|
|
312
|
+
* `currentColor`) — e.g. an animated version of the same icon. `icon` still
|
|
313
|
+
* names what it is for assistive tech's sake.
|
|
314
|
+
*/
|
|
315
|
+
glyph?: React.ReactNode;
|
|
291
316
|
}
|
|
292
317
|
/**
|
|
293
318
|
* Featured Icon — a rounded-square container with a centered icon, used as a
|
|
@@ -883,20 +908,53 @@ interface TopFilterProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonEleme
|
|
|
883
908
|
/** Filter label. Typically the dimension being filtered (e.g. "Status"). */
|
|
884
909
|
label?: string;
|
|
885
910
|
/**
|
|
886
|
-
*
|
|
887
|
-
*
|
|
888
|
-
*
|
|
911
|
+
* Advanced type: a **joined split control** — the label side (label + optional
|
|
912
|
+
* tag) and, flush against it, a Secondary / Medium / Icon-Only `Chevron-Down`
|
|
913
|
+
* button (Figma `1572:12741`, restructured 2026-10-09). Basic is the label alone.
|
|
889
914
|
*/
|
|
890
915
|
advanced?: boolean;
|
|
891
916
|
/**
|
|
892
|
-
* When true, the filter is currently applied
|
|
893
|
-
* border to the secondary (active) treatment and, at rest, fills
|
|
894
|
-
* active surface. Exposed to assistive tech via `aria-pressed`.
|
|
917
|
+
* When true, the filter is currently applied (Figma's `-Selected` states).
|
|
918
|
+
* Switches the border to the secondary (active) treatment and, at rest, fills
|
|
919
|
+
* with the active surface. Exposed to assistive tech via `aria-pressed`.
|
|
895
920
|
*/
|
|
896
921
|
selected?: boolean;
|
|
897
922
|
/**
|
|
898
|
-
*
|
|
899
|
-
*
|
|
923
|
+
* Advanced only — Figma's `Tags` chip (`Show Tag`), a Neutral Tag naming what the
|
|
924
|
+
* filter holds, e.g. "Pending, +1". It shows whether or not the filter is
|
|
925
|
+
* selected, so a dispatcher can see what each group will show before choosing it
|
|
926
|
+
* (Doc 3 §11). Its ✕ fires {@link onTagClear}.
|
|
927
|
+
*/
|
|
928
|
+
tag?: string;
|
|
929
|
+
/** The tag's ✕. Clears the filter's selection; never activates the filter. */
|
|
930
|
+
onTagClear?: () => void;
|
|
931
|
+
/**
|
|
932
|
+
* Tooltip shown when the pointer is over the **tag's text** (not its ✕, which
|
|
933
|
+
* is about to be clicked). The group filter lists every selected status with
|
|
934
|
+
* its count here, since the tag names only the first (Doc 3 §11). A function is
|
|
935
|
+
* resolved each time the tip opens. Hugs its content up to 232px and is centred
|
|
936
|
+
* on the tag; never shown while the chevron's options are open.
|
|
937
|
+
*/
|
|
938
|
+
tagTooltip?: React.ReactNode | (() => React.ReactNode);
|
|
939
|
+
/**
|
|
940
|
+
* Advanced only. When set, the chevron is **its own button** — the split-button
|
|
941
|
+
* form (Doc 3 §11): the body (`onClick`) activates the filter, the chevron opens
|
|
942
|
+
* its options. Without it the whole pill is one button and the chevron is only
|
|
943
|
+
* an affordance, the older single-target form.
|
|
944
|
+
*/
|
|
945
|
+
onChevronClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;
|
|
946
|
+
/** Whether the chevron's options are open — `aria-expanded` on the chevron. */
|
|
947
|
+
expanded?: boolean;
|
|
948
|
+
/** Accessible name for the chevron button. Default "Show {label} statuses". */
|
|
949
|
+
chevronLabel?: string;
|
|
950
|
+
/**
|
|
951
|
+
* Forces a visual state — for catalogs and docs that show every Figma variant at
|
|
952
|
+
* rest. Real use leaves it unset and lets hover/press drive the state.
|
|
953
|
+
*/
|
|
954
|
+
state?: 'idle' | 'hover' | 'pressed';
|
|
955
|
+
/**
|
|
956
|
+
* @deprecated Use {@link tag}. A free-form node shown before the chevron while
|
|
957
|
+
* `advanced && selected`; kept so existing callers keep rendering.
|
|
900
958
|
*/
|
|
901
959
|
badge?: React.ReactNode;
|
|
902
960
|
}
|
|
@@ -915,8 +973,29 @@ interface TopFilterProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonEleme
|
|
|
915
973
|
* - As a general-purpose chip/tag — use Chip or Tag.
|
|
916
974
|
*
|
|
917
975
|
* 2 types (Basic / Advanced) × 6 states (Idle / Hover / Pressed and their
|
|
918
|
-
* `-Selected` counterparts) = 12 Figma variants (`1572:12741
|
|
919
|
-
*
|
|
976
|
+
* `-Selected` counterparts) = 12 Figma variants (`1572:12741`, re-enumerated
|
|
977
|
+
* 2026-10-09).
|
|
978
|
+
*
|
|
979
|
+
* **Basic** — one pill: pad 8/12, `Main Title` (pad 4/0, gap 8) holding the label.
|
|
980
|
+
* Fill/border follow the state; selected draws a 1.5px secondary border (1px
|
|
981
|
+
* otherwise) and, at rest, the *active* surface.
|
|
982
|
+
*
|
|
983
|
+
* **Advanced** (restructured 2026-10-09) — a joined split control, no padding of
|
|
984
|
+
* its own:
|
|
985
|
+
* - **Container** (the label side): pad 8/12, left corners rounded, border on
|
|
986
|
+
* left/top/bottom only — the seam is the chevron button's own left border. In
|
|
987
|
+
* Pressed the container's border closes on the right too and the button's left
|
|
988
|
+
* edge drops, so the darker pressed border reads as the seam.
|
|
989
|
+
* - **Chevron**: a real Desktop Button, Secondary / Medium / Icon Only
|
|
990
|
+
* `Chevron-Down`, 40×40, right corners rounded, its own idle/hover/pressed.
|
|
991
|
+
* - **Selected**: the container goes transparent, the *root* takes the fill
|
|
992
|
+
* (`top-filter-tab-idle/hover/pressed` — the idle one, not `-active`, at rest)
|
|
993
|
+
* and a 1.5px secondary ring drawn over both halves.
|
|
994
|
+
*
|
|
995
|
+
* **Two forms.** Pass `onChevronClick` for the split control the group filter uses
|
|
996
|
+
* (Doc 3 §11): body, tag ✕ and chevron are separate targets, since a button cannot
|
|
997
|
+
* contain buttons. Without it the whole control is one `<button>` and the chevron
|
|
998
|
+
* half is drawn, not interactive.
|
|
920
999
|
*/
|
|
921
1000
|
declare const TopFilter: React.ForwardRefExoticComponent<TopFilterProps & React.RefAttributes<HTMLButtonElement>>;
|
|
922
1001
|
|
|
@@ -928,8 +1007,24 @@ interface TopFilterSectionItem {
|
|
|
928
1007
|
advanced?: boolean;
|
|
929
1008
|
/** When true, this filter is currently applied. Caller-controlled. */
|
|
930
1009
|
selected?: boolean;
|
|
931
|
-
/**
|
|
1010
|
+
/** @deprecated Use `tag`. Free-form node shown inside Advanced filters when selected. */
|
|
932
1011
|
badge?: React.ReactNode;
|
|
1012
|
+
/** Advanced: the Neutral Tag naming what this filter holds, e.g. "Pending, +1". */
|
|
1013
|
+
tag?: string;
|
|
1014
|
+
/** The tag's ✕ — clears this filter's selection. */
|
|
1015
|
+
onTagClear?: () => void;
|
|
1016
|
+
/** Advanced: makes the chevron its own button (the split form, Doc 3 §11). */
|
|
1017
|
+
onChevronClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;
|
|
1018
|
+
/** Whether this filter's options are open. */
|
|
1019
|
+
expanded?: boolean;
|
|
1020
|
+
/**
|
|
1021
|
+
* Shown on hover over the **tag's text** (passed to TopFilter's `tagTooltip`)
|
|
1022
|
+
* — what the tag abbreviates ("Pending, +1" hides which statuses the "+1" is).
|
|
1023
|
+
* Pass a sentence such as "Pending (40), Broadcasted (50)." so the selection is
|
|
1024
|
+
* readable without opening the checklist (Doc 3 §11). Suppressed while the
|
|
1025
|
+
* checklist is open.
|
|
1026
|
+
*/
|
|
1027
|
+
tooltip?: React.ReactNode | (() => React.ReactNode);
|
|
933
1028
|
}
|
|
934
1029
|
interface TopFilterSectionProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'children'> {
|
|
935
1030
|
/** The filters to render, left to right. */
|
|
@@ -1346,7 +1441,7 @@ interface PaginationProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'on
|
|
|
1346
1441
|
* `7292:86007`: **Table** — count + page-number controls + rows-per-page selector;
|
|
1347
1442
|
* **Stacked List** — same controls, condensed; **Combobox** — compact count +
|
|
1348
1443
|
* prev/next only. Prev/next reuse Ghost icon Buttons; the page cell is a 32×32
|
|
1349
|
-
* numbered button (Active = `--surface-secondary-pagination-active`).
|
|
1444
|
+
* numbered button (Active = light `--surface-secondary-pagination-active` + 1px border, dark number).
|
|
1350
1445
|
*/
|
|
1351
1446
|
declare const Pagination: React.ForwardRefExoticComponent<PaginationProps & React.RefAttributes<HTMLDivElement>>;
|
|
1352
1447
|
|
|
@@ -1534,6 +1629,13 @@ interface ModalHeadersProps extends Omit<React.HTMLAttributes<HTMLDivElement>, '
|
|
|
1534
1629
|
leadingIcon?: IconName;
|
|
1535
1630
|
/** Color of the leading icon. Defaults to `--icons-neutral-default`. */
|
|
1536
1631
|
leadingIconColor?: string;
|
|
1632
|
+
/**
|
|
1633
|
+
* Draw the leading icon's outline glyph. Default `true`, the library-wide
|
|
1634
|
+
* default. Pass `false` where Figma binds the filled glyph — the Alert Dialog's
|
|
1635
|
+
* warning header uses `Icon/Warning` (filled), and once `Warning` gained an
|
|
1636
|
+
* outline (2026-10-05) the default would have silently swapped it.
|
|
1637
|
+
*/
|
|
1638
|
+
leadingIconOutlined?: boolean;
|
|
1537
1639
|
/**
|
|
1538
1640
|
* Controls the **Secondary Content** slot (Figma `9200:38903`). Defaults to
|
|
1539
1641
|
* `true` to mirror Figma, where the slot frame is visible. The slot reserves
|
|
@@ -1614,6 +1716,169 @@ interface ModalShellProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
|
1614
1716
|
*/
|
|
1615
1717
|
declare const ModalShell: React.ForwardRefExoticComponent<ModalShellProps & React.RefAttributes<HTMLDivElement>>;
|
|
1616
1718
|
|
|
1719
|
+
type PopoverPlacement = 'bottom-start' | 'bottom-end' | 'top-start' | 'top-end';
|
|
1720
|
+
interface PopoverProps$1 {
|
|
1721
|
+
/** The trigger's bounding rect (e.g. from `el.getBoundingClientRect()`). */
|
|
1722
|
+
anchorRect: DOMRect | null;
|
|
1723
|
+
/**
|
|
1724
|
+
* The trigger ELEMENT, for a panel that must stay attached to it as it moves.
|
|
1725
|
+
*
|
|
1726
|
+
* `anchorRect` is a snapshot taken when the panel opened. That is right for most
|
|
1727
|
+
* triggers, which never move while their panel is open — but not for one whose
|
|
1728
|
+
* own panel changes it: a status filter whose checklist rewrites the filter's
|
|
1729
|
+
* tag ("Pending, +1" → nothing) resizes the pill under the open panel, and a
|
|
1730
|
+
* snapshot leaves the panel stranded where the pill used to be (reported
|
|
1731
|
+
* 2026-10-05). With `anchorEl` the anchor is re-read on every render, whenever
|
|
1732
|
+
* the element resizes, and on window resize — so the panel follows it.
|
|
1733
|
+
* `anchorRect` still provides the first frame and the fallback if the element
|
|
1734
|
+
* leaves the DOM.
|
|
1735
|
+
*/
|
|
1736
|
+
anchorEl?: HTMLElement | null;
|
|
1737
|
+
onClose: () => void;
|
|
1738
|
+
placement?: PopoverPlacement;
|
|
1739
|
+
/**
|
|
1740
|
+
* Whether a `bottom-*` panel may flip above the trigger when it would overflow
|
|
1741
|
+
* the viewport bottom. Default `true`.
|
|
1742
|
+
*
|
|
1743
|
+
* Pass `false` for an anchored panel that must **never** appear on top of or
|
|
1744
|
+
* beside its trigger — a panel hanging off a top-bar control, for instance.
|
|
1745
|
+
* Flipping is not the only thing this turns off: the
|
|
1746
|
+
* default path also *shifts* a too-tall panel upward to fit, which drags it over
|
|
1747
|
+
* the very control it is anchored to. With `flip: false` the top edge stays
|
|
1748
|
+
* `offset` below the trigger, and the panel is expected to constrain its own
|
|
1749
|
+
* height (see `maxHeight` on the child) so its content scrolls instead.
|
|
1750
|
+
*/
|
|
1751
|
+
flip?: boolean;
|
|
1752
|
+
/** Gap between the trigger and the panel. Default 4px. */
|
|
1753
|
+
offset?: number;
|
|
1754
|
+
children: React.ReactNode;
|
|
1755
|
+
}
|
|
1756
|
+
/**
|
|
1757
|
+
* Popover — a portal-based overlay positioned from a trigger's bounding rect.
|
|
1758
|
+
*
|
|
1759
|
+
* Renders into `document.body` (escaping any ancestor stacking context — e.g. the
|
|
1760
|
+
* Table's bordered/overflow card that previously buried dropdowns *under* page
|
|
1761
|
+
* content) with a click-catching backdrop and a `zIndex` above the Toast region
|
|
1762
|
+
* (1000) and the fixed Bulk Actions Toolbar (50).
|
|
1763
|
+
*
|
|
1764
|
+
* The panel is unstyled — the caller supplies a design-system surface
|
|
1765
|
+
* (`DesktopDropdowns` / `DateTimePicker` render their own chrome; composed
|
|
1766
|
+
* `DesktopMenuOptions` menus use {@link MenuPanel}). The panel is clamped to the
|
|
1767
|
+
* viewport and flips above the trigger when it would overflow the bottom edge.
|
|
1768
|
+
*
|
|
1769
|
+
* **Single-open (Doc 3 §1):** opening a Popover force-closes any other open
|
|
1770
|
+
* Popover, platform-wide. **Escape (Doc 3 §10):** registered on the shared
|
|
1771
|
+
* `@leta-io/components` overlay stack, so Escape closes only the topmost overlay
|
|
1772
|
+
* even when a Popover is nested inside a modal/drawer. **Focus-return (Doc 3
|
|
1773
|
+
* §1.3/§10):** the element focused at the moment this Popover opened (almost
|
|
1774
|
+
* always its trigger — clicking a button focuses it) regains focus once the
|
|
1775
|
+
* Popover closes, however it closed.
|
|
1776
|
+
*/
|
|
1777
|
+
declare function Popover({ anchorRect, anchorEl, onClose, placement, flip, offset, children, }: PopoverProps$1): React.ReactElement | null;
|
|
1778
|
+
/**
|
|
1779
|
+
* MenuPanel — the design-system dropdown card chrome (white surface, 1px border,
|
|
1780
|
+
* `--rounding-xl`, `--shadow-neutral-3`, 8px padding) for composed
|
|
1781
|
+
* `DesktopMenuOptions` menus rendered inside a {@link Popover}. Mirrors the
|
|
1782
|
+
* chrome `DesktopDropdowns` applies to its own panels.
|
|
1783
|
+
*/
|
|
1784
|
+
declare function MenuPanel({ width, children, }: {
|
|
1785
|
+
width?: number;
|
|
1786
|
+
children: React.ReactNode;
|
|
1787
|
+
}): React.ReactElement;
|
|
1788
|
+
/**
|
|
1789
|
+
* A 1px section demarcator inside a {@link MenuPanel}.
|
|
1790
|
+
*
|
|
1791
|
+
* **Default: full-bleed** — negative horizontal margin cancels the panel's 8px
|
|
1792
|
+
* padding so the line spans edge-to-edge (the Figma Actions Dropdown's full-width
|
|
1793
|
+
* section borders), while the rows keep their padding.
|
|
1794
|
+
*
|
|
1795
|
+
* **`inset`** — the line spans only the padded content width (panel − 16), sitting
|
|
1796
|
+
* within the 8px gutter — e.g. a 344px divider inside a 360px, 8px-padded panel.
|
|
1797
|
+
*/
|
|
1798
|
+
declare function MenuDivider({ inset }?: {
|
|
1799
|
+
inset?: boolean;
|
|
1800
|
+
}): React.ReactElement;
|
|
1801
|
+
/**
|
|
1802
|
+
* **A cascading submenu, layered above an open `Popover`.**
|
|
1803
|
+
*
|
|
1804
|
+
* A menu row that opens a further menu cannot use `Popover`: it is single-open
|
|
1805
|
+
* platform-wide, so mounting a second one force-closes the menu the row belongs to.
|
|
1806
|
+
* This is the standing answer — its own `position: fixed` portal at zIndex 2001,
|
|
1807
|
+
* one layer above a `Popover` panel (2000), so the parent menu stays open behind it.
|
|
1808
|
+
* The parent's backdrop still handles click-away (dismissing both) and its Escape
|
|
1809
|
+
* layer still closes the pair, so the submenu needs neither of its own.
|
|
1810
|
+
*
|
|
1811
|
+
* Placement is measured after layout, so the panel's real height and width clamp it
|
|
1812
|
+
* to the viewport rather than a guessed size. `prefer` picks the side it opens on
|
|
1813
|
+
* first; it flips to the other side only when that one would clip. A cascading
|
|
1814
|
+
* submenu opens to the **right** (the Figma context menu draws it there), while a
|
|
1815
|
+
* panel hanging off a right-anchored menu (one at the top-right of the page) wants
|
|
1816
|
+
* `left`.
|
|
1817
|
+
*
|
|
1818
|
+
* Callers own the content — pass a `MenuPanel`.
|
|
1819
|
+
*/
|
|
1820
|
+
declare function MenuFlyout({ rowRect, prefer, children, }: {
|
|
1821
|
+
/** The parent row's viewport rect — the flyout anchors beside it. */
|
|
1822
|
+
rowRect: DOMRect;
|
|
1823
|
+
/** Which side to try first. Flips only if that side would clip. */
|
|
1824
|
+
prefer?: 'left' | 'right';
|
|
1825
|
+
children: React.ReactNode;
|
|
1826
|
+
}): React.ReactElement;
|
|
1827
|
+
|
|
1828
|
+
/** Props of {@link Popover} — derived, since the component declares them inline. */
|
|
1829
|
+
type PopoverProps = React.ComponentProps<typeof Popover>;
|
|
1830
|
+
type MenuPanelProps = React.ComponentProps<typeof MenuPanel>;
|
|
1831
|
+
type MenuFlyoutProps = React.ComponentProps<typeof MenuFlyout>;
|
|
1832
|
+
|
|
1833
|
+
/**
|
|
1834
|
+
* Scrim + animated, centred panel for a dialog — enter and exit choreographed
|
|
1835
|
+
* with interruptible CSS transitions (ease-out in, ease-in out), so every dialog
|
|
1836
|
+
* built on it opens and closes the same way.
|
|
1837
|
+
*
|
|
1838
|
+
* The dialog's own `onCancel`/`onClose`/`onConfirm` must call the `close` (or
|
|
1839
|
+
* `closeAnd`) helper handed to the render-prop children — NOT the `onClose`
|
|
1840
|
+
* prop directly — so the exit animation plays before the parent actually
|
|
1841
|
+
* unmounts this component (a parent that clears its own state synchronously on
|
|
1842
|
+
* confirm/close would otherwise skip the exit entirely).
|
|
1843
|
+
*
|
|
1844
|
+
* ## Stacking (`tier`)
|
|
1845
|
+
*
|
|
1846
|
+
* `tier` is the **scrim's** z-index; the panel sits one above it. The default
|
|
1847
|
+
* suits a dialog over a page. A dialog opened from *inside* another overlay — a
|
|
1848
|
+
* drawer, say — must sit above that overlay, and only the host knows how its
|
|
1849
|
+
* overlays stack, so it passes the tier explicitly.
|
|
1850
|
+
*
|
|
1851
|
+
* ⚠ A dialog that shares its host's z-index ties with it and wins only on DOM
|
|
1852
|
+
* order — which is how a proof viewer once rendered underneath the drawer that
|
|
1853
|
+
* opened it. Keep a named tier map in the host app rather than scattering bare
|
|
1854
|
+
* numbers, so "above that drawer" is something you express instead of something
|
|
1855
|
+
* you get away with.
|
|
1856
|
+
*/
|
|
1857
|
+
/** The default scrim z-index — a dialog opened over a page. */
|
|
1858
|
+
declare const DIALOG_OVERLAY_DEFAULT_TIER = 1600;
|
|
1859
|
+
interface DialogOverlayHelpers {
|
|
1860
|
+
/** Plays the exit animation, then calls the parent's `onClose`. */
|
|
1861
|
+
close: () => void;
|
|
1862
|
+
/** Plays the exit animation, then calls `fn` (e.g. the parent's `onConfirm`). */
|
|
1863
|
+
closeAnd: (fn: () => void) => void;
|
|
1864
|
+
}
|
|
1865
|
+
declare function DialogOverlay({ onClose, children, extra, tier, }: {
|
|
1866
|
+
onClose: () => void;
|
|
1867
|
+
children: (helpers: DialogOverlayHelpers) => React.ReactNode;
|
|
1868
|
+
/** Additional portal content rendered as a sibling of the animated panel
|
|
1869
|
+
* (e.g. a date picker popover the dialog opens) — not itself animated. */
|
|
1870
|
+
extra?: React.ReactNode;
|
|
1871
|
+
/**
|
|
1872
|
+
* The scrim's z-index, with the panel one above. Defaults to a dialog over the
|
|
1873
|
+
* page ({@link DIALOG_OVERLAY_DEFAULT_TIER}); pass the owning overlay's tier when
|
|
1874
|
+
* the dialog opens from inside one, or it renders underneath it.
|
|
1875
|
+
*/
|
|
1876
|
+
tier?: number;
|
|
1877
|
+
}): React.ReactElement;
|
|
1878
|
+
|
|
1879
|
+
/** Props of {@link DialogOverlay} — derived, since the component declares them inline. */
|
|
1880
|
+
type DialogOverlayProps = React.ComponentProps<typeof DialogOverlay>;
|
|
1881
|
+
|
|
1617
1882
|
/**
|
|
1618
1883
|
* Registers this overlay on the shared {@link pushOverlay} stack while
|
|
1619
1884
|
* `active`, so Escape closes only the topmost overlay (Doc 3 §10) no matter
|
|
@@ -1661,6 +1926,8 @@ interface ContentPrimitivesProps extends Omit<React.HTMLAttributes<HTMLDivElemen
|
|
|
1661
1926
|
* that instance unreproducible.
|
|
1662
1927
|
*/
|
|
1663
1928
|
featuredIconColor?: FeaturedIconColor;
|
|
1929
|
+
/** Replaces the Featured Icon's glyph (see `FeaturedIcon.glyph`). */
|
|
1930
|
+
featuredIconGlyph?: React.ReactNode;
|
|
1664
1931
|
showMonogramIcon?: boolean;
|
|
1665
1932
|
monogramLabel?: string;
|
|
1666
1933
|
showTrailingContent?: boolean;
|
|
@@ -1678,13 +1945,32 @@ interface ContentPrimitivesProps extends Omit<React.HTMLAttributes<HTMLDivElemen
|
|
|
1678
1945
|
contentAlign?: 'center' | 'top';
|
|
1679
1946
|
showDescriptionLeadingIcon?: boolean;
|
|
1680
1947
|
descriptionLeadingIcon?: IconName;
|
|
1948
|
+
/**
|
|
1949
|
+
* Colour of the value line's leading icon. Default `--icons-neutral-default`,
|
|
1950
|
+
* the Library's binding. An instance may tint it — the cancelled order's
|
|
1951
|
+
* "Cancellation reason" card draws its Note in `--icons-warning-default`
|
|
1952
|
+
* (Figma `2734:163256`).
|
|
1953
|
+
*/
|
|
1954
|
+
descriptionLeadingIconColor?: string;
|
|
1955
|
+
/**
|
|
1956
|
+
* Text-style class for the value line. Default `text-body-m-medium`, the
|
|
1957
|
+
* Library's binding. The cancellation reason card overrides it to
|
|
1958
|
+
* `text-label-m-medium` (Figma `2734:163256`; the two differ only in kerning).
|
|
1959
|
+
*/
|
|
1960
|
+
listRowTextClassName?: string;
|
|
1681
1961
|
onCopy?: () => void;
|
|
1682
1962
|
showMetricVariance?: boolean;
|
|
1683
1963
|
metricVarianceLabel?: string;
|
|
1684
|
-
/**
|
|
1964
|
+
/**
|
|
1965
|
+
* Direction of the variance figure (Figma "Variance": Neutral→neutral,
|
|
1966
|
+
* Positive→success, Negative→error). Colours the figure only — the variance is
|
|
1967
|
+
* plain text since 2026-10-06, no longer a Badge.
|
|
1968
|
+
*/
|
|
1685
1969
|
metricVarianceColor?: BadgeColor;
|
|
1686
|
-
/**
|
|
1970
|
+
/** @deprecated No longer drawn — the variance stopped being a Badge (Figma 2026-10-06). */
|
|
1687
1971
|
metricVarianceIcon?: IconName;
|
|
1972
|
+
/** The muted phrase after the figure. Default "vs last period". */
|
|
1973
|
+
metricVarianceContext?: string;
|
|
1688
1974
|
showMetricSubtext?: boolean;
|
|
1689
1975
|
showEyebrowTrailingIcon?: boolean;
|
|
1690
1976
|
eyebrowTrailingIcon?: IconName;
|
|
@@ -1707,7 +1993,16 @@ interface NotificationBannerProps extends Omit<React.HTMLAttributes<HTMLDivEleme
|
|
|
1707
1993
|
type?: NotificationBannerType;
|
|
1708
1994
|
variant?: NotificationBannerVariant;
|
|
1709
1995
|
title?: string;
|
|
1710
|
-
|
|
1996
|
+
/**
|
|
1997
|
+
* The banner's body copy.
|
|
1998
|
+
*
|
|
1999
|
+
* A **node** is accepted as well as a string so copy that quotes a *changing*
|
|
2000
|
+
* figure can style just that figure — a live countdown needs tabular figures and
|
|
2001
|
+
* a reserved width, or the rest of the sentence shifts each time the number
|
|
2002
|
+
* loses a digit. Plain copy should stay a string: `\n` line breaks are honoured
|
|
2003
|
+
* via `white-space: pre-line`, which a node has to author itself.
|
|
2004
|
+
*/
|
|
2005
|
+
description: React.ReactNode;
|
|
1711
2006
|
/** Override the leading icon (defaults to the icon derived from `type`). */
|
|
1712
2007
|
icon?: IconName;
|
|
1713
2008
|
onDismiss?: () => void;
|
|
@@ -1725,7 +2020,7 @@ interface NotificationBannerProps extends Omit<React.HTMLAttributes<HTMLDivEleme
|
|
|
1725
2020
|
declare const NotificationBanner: React.ForwardRefExoticComponent<NotificationBannerProps & React.RefAttributes<HTMLDivElement>>;
|
|
1726
2021
|
|
|
1727
2022
|
type MetricVariance = 'none' | 'neutral' | 'positive' | 'negative';
|
|
1728
|
-
interface DesktopMetricCardProps extends Omit<React.
|
|
2023
|
+
interface DesktopMetricCardProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'children'> {
|
|
1729
2024
|
/** The large metric value, e.g. "10". */
|
|
1730
2025
|
metric?: string;
|
|
1731
2026
|
/** Eyebrow / period label above the metric, e.g. "This week". */
|
|
@@ -1736,27 +2031,49 @@ interface DesktopMetricCardProps extends Omit<React.ButtonHTMLAttributes<HTMLBut
|
|
|
1736
2031
|
leadingIconOutlined?: boolean;
|
|
1737
2032
|
/** Show the outlined Question help icon after the eyebrow text. Default true. */
|
|
1738
2033
|
showEyebrowTrailingIcon?: boolean;
|
|
1739
|
-
/**
|
|
2034
|
+
/** Direction of change. Default "none" (no variance line). */
|
|
1740
2035
|
variance?: MetricVariance;
|
|
1741
|
-
/**
|
|
2036
|
+
/** The variance figure, e.g. "+10%". Shown when variance ≠ "none". */
|
|
1742
2037
|
varianceLabel?: string;
|
|
2038
|
+
/** The muted phrase after the figure. Default "vs last period". */
|
|
2039
|
+
varianceContext?: string;
|
|
1743
2040
|
/** Optional subtext below the metric. Hidden by default (mirrors Figma). */
|
|
1744
2041
|
subtext?: string;
|
|
1745
2042
|
/** Show the metric subtext row. Default false. */
|
|
1746
2043
|
showMetricSubtext?: boolean;
|
|
1747
2044
|
/**
|
|
1748
|
-
*
|
|
1749
|
-
*
|
|
2045
|
+
* Makes the card explorable: renders Figma's trailing **Secondary / Medium / Icon
|
|
2046
|
+
* Only `Open`** button, which calls this. Omit it for a card whose number is the
|
|
2047
|
+
* whole story — the trailing slot is then empty.
|
|
1750
2048
|
*/
|
|
1751
|
-
|
|
2049
|
+
onExplore?: () => void;
|
|
2050
|
+
/** Accessible name for the explore button. Default "View details". */
|
|
2051
|
+
exploreLabel?: string;
|
|
1752
2052
|
/**
|
|
1753
|
-
*
|
|
1754
|
-
*
|
|
2053
|
+
* Custom trailing content (Figma's trailing **Slot**), replacing the explore
|
|
2054
|
+
* button — e.g. the Deliveries cards' SLA shortcuts. `null` renders nothing.
|
|
1755
2055
|
*/
|
|
2056
|
+
trailingContent?: React.ReactNode;
|
|
2057
|
+
/** The 24px leading icon (Figma `Visual Anchor`). Default `true`. */
|
|
2058
|
+
showVisualAnchor?: boolean;
|
|
2059
|
+
/** @deprecated The card no longer has states — it is always Default. Ignored. */
|
|
1756
2060
|
state?: MetricCardState;
|
|
2061
|
+
/** @deprecated The card is never a button now; interactivity lives in its trailing slot. Ignored. */
|
|
2062
|
+
interactive?: boolean;
|
|
1757
2063
|
}
|
|
1758
|
-
|
|
1759
|
-
|
|
2064
|
+
/** @deprecated Figma removed Hover / Pressed / Focus (2026-10-06); only Default remains. */
|
|
2065
|
+
type MetricCardState = 'default';
|
|
2066
|
+
/**
|
|
2067
|
+
* Desktop Metric Card (Figma `4239:74634`) — a KPI on a bordered card.
|
|
2068
|
+
*
|
|
2069
|
+
* **The card itself is not interactive** (Figma removed its Hover / Pressed / Focus
|
|
2070
|
+
* variants, 2026-10-06). When its data can be explored further, the affordance lives
|
|
2071
|
+
* in the trailing slot: by default a Secondary icon-only `Open` button
|
|
2072
|
+
* ({@link DesktopMetricCardProps.onExplore}), or any caller content — the Deliveries
|
|
2073
|
+
* summary cards put their clickable SLA shortcuts there. One target per action, and the
|
|
2074
|
+
* card never competes with the controls inside it.
|
|
2075
|
+
*/
|
|
2076
|
+
declare const DesktopMetricCard: React.ForwardRefExoticComponent<DesktopMetricCardProps & React.RefAttributes<HTMLDivElement>>;
|
|
1760
2077
|
|
|
1761
2078
|
interface OptionCardProps extends Omit<React.LabelHTMLAttributes<HTMLLabelElement>, 'onChange'> {
|
|
1762
2079
|
/** Card title (Label/M/SemiBold). */
|
|
@@ -1966,12 +2283,20 @@ declare function AccordionHeader({ open, onToggle, children }: AccordionHeaderPr
|
|
|
1966
2283
|
* - `plain` — **Plain / Icon-Only / Small**, a bare glyph hugging the icon with no
|
|
1967
2284
|
* hover fill. Used by the Activity-tab timeline entries (Figma `1487:173235`,
|
|
1968
2285
|
* where the chevron instance is `Variant=Plain, Type=Icon Only, Size=Small`
|
|
1969
|
-
* at 16×16).
|
|
2286
|
+
* at 16×16) and the Trip Route Accordions (`2594:161717`). Its glyph takes the
|
|
2287
|
+
* **Plain button's own colour**, `Icons/secondary/plain-button-idle`, darkening to
|
|
2288
|
+
* `-hover` while the header is hovered — not the neutral icon colour the ghost
|
|
2289
|
+
* variant uses, which is what it painted until 2026-10-05.
|
|
2290
|
+
*
|
|
2291
|
+
* `color` overrides the glyph colour outright, for an instance that rebinds it in
|
|
2292
|
+
* Figma (the Broadcast Event Accordion binds `Icons/neutral/default`).
|
|
1970
2293
|
*/
|
|
1971
|
-
declare function AccordionChevron({ open, onToggle, size, variant, label, }: {
|
|
2294
|
+
declare function AccordionChevron({ open, onToggle, size, variant, label, color, }: {
|
|
1972
2295
|
open: boolean;
|
|
1973
2296
|
onToggle: () => void;
|
|
1974
2297
|
size?: number;
|
|
2298
|
+
/** Overrides the glyph colour (a CSS colour / `var(--…)`). See the doc comment. */
|
|
2299
|
+
color?: string;
|
|
1975
2300
|
/** Visual treatment — see the doc comment. Defaults to `ghost`. */
|
|
1976
2301
|
variant?: 'ghost' | 'plain';
|
|
1977
2302
|
/**
|
|
@@ -2183,6 +2508,13 @@ interface TooltipProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'title
|
|
|
2183
2508
|
* is an *instance*, not the component.
|
|
2184
2509
|
*/
|
|
2185
2510
|
width?: number;
|
|
2511
|
+
/**
|
|
2512
|
+
* `standard` only — **hug the content** up to this width, px, instead of a
|
|
2513
|
+
* fixed width. Short copy ("Broadcasted (18).") gets a snug panel; longer copy
|
|
2514
|
+
* wraps once it reaches the cap. Takes precedence over `width`. The group-filter
|
|
2515
|
+
* tag tooltip uses 232 (Playground spec `2784:408287`, ruled 2026-10-09).
|
|
2516
|
+
*/
|
|
2517
|
+
maxWidth?: number;
|
|
2186
2518
|
step?: number;
|
|
2187
2519
|
totalSteps?: number;
|
|
2188
2520
|
skipLabel?: string;
|
|
@@ -2239,6 +2571,8 @@ interface HoverTipProps {
|
|
|
2239
2571
|
ariaLabel?: string;
|
|
2240
2572
|
/** Body width override, px — see {@link TooltipProps.width}. */
|
|
2241
2573
|
width?: number;
|
|
2574
|
+
/** Hug the content up to this width, px — see {@link TooltipProps.maxWidth}. */
|
|
2575
|
+
maxWidth?: number;
|
|
2242
2576
|
/**
|
|
2243
2577
|
* Which `Tooltip` surface to render. Default `small` — the compact dark chip
|
|
2244
2578
|
* used for terse labels ("Copy ID", a truncated value).
|
|
@@ -2292,7 +2626,7 @@ interface HoverTipProps {
|
|
|
2292
2626
|
* name (e.g. the Copy button's `aria-label`); for plain decorative icons the
|
|
2293
2627
|
* label is also exposed via `aria-label` on the wrapper.
|
|
2294
2628
|
*/
|
|
2295
|
-
declare function HoverTip({ label, ariaLabel, width, variant, children, delay, placement, shouldShow, style }: HoverTipProps): React.ReactElement;
|
|
2629
|
+
declare function HoverTip({ label, ariaLabel, width, maxWidth, variant, children, delay, placement, shouldShow, style }: HoverTipProps): React.ReactElement;
|
|
2296
2630
|
|
|
2297
2631
|
/** Which side of the trigger the panel ended up on. */
|
|
2298
2632
|
type TooltipSide = 'above' | 'below' | 'right';
|
|
@@ -2341,7 +2675,46 @@ interface TooltipPosition {
|
|
|
2341
2675
|
}
|
|
2342
2676
|
declare function computeTooltipPosition({ trigger, panel, placement, boundary, margin, }: TooltipPositionInput): TooltipPosition;
|
|
2343
2677
|
|
|
2344
|
-
|
|
2678
|
+
interface TruncatedTextProps {
|
|
2679
|
+
/** The full value. Rendered on one line, clipped with an ellipsis. */
|
|
2680
|
+
text: string;
|
|
2681
|
+
/** Typography class, e.g. `text-label-m-regular`. */
|
|
2682
|
+
className?: string;
|
|
2683
|
+
/** Text colour, e.g. `var(--text-default-label)`. */
|
|
2684
|
+
color?: string;
|
|
2685
|
+
/**
|
|
2686
|
+
* What the tooltip says. Defaults to `text` — the whole value, which is the
|
|
2687
|
+
* point for an address. Order ids pass a head/tail abbreviation instead.
|
|
2688
|
+
*/
|
|
2689
|
+
tipLabel?: React.ReactNode;
|
|
2690
|
+
/** Accessible name for the tip when `tipLabel` isn't the full text. */
|
|
2691
|
+
ariaLabel?: string;
|
|
2692
|
+
/**
|
|
2693
|
+
* Tooltip surface. `standard` (default) fits a long value such as an address on
|
|
2694
|
+
* a 288px paragraph; `small` suits a short label.
|
|
2695
|
+
*/
|
|
2696
|
+
variant?: 'small' | 'standard';
|
|
2697
|
+
/** Wrapper style overrides (the wrapper is `display:block`, full width). */
|
|
2698
|
+
style?: React.CSSProperties;
|
|
2699
|
+
}
|
|
2700
|
+
/**
|
|
2701
|
+
* TruncatedText — one line of text that ellipsises inside its column and shows
|
|
2702
|
+
* the **full value on hover, only when it was actually cut off**.
|
|
2703
|
+
*
|
|
2704
|
+
* Whether it truncates depends on the rendered width, not the string, so it's
|
|
2705
|
+
* measured — and measured **when the pointer arrives** (`shouldShow`), not at
|
|
2706
|
+
* mount. A mount-time read happens before the parent has sized its columns and
|
|
2707
|
+
* reports "not clipped" for everything; by hover time layout has settled. A line
|
|
2708
|
+
* that fits shows no tooltip at all, so the tip never just repeats what's on
|
|
2709
|
+
* screen.
|
|
2710
|
+
*
|
|
2711
|
+
* Shared by the table's Order ID cell (abbreviated tip) and every address line
|
|
2712
|
+
* (pickup / drop-off in tables, trip route cards) — ruled 2026-10-09: every
|
|
2713
|
+
* truncated address reveals itself, and only the line you hover.
|
|
2714
|
+
*/
|
|
2715
|
+
declare function TruncatedText({ text, className, color, tipLabel, ariaLabel, variant, style, }: TruncatedTextProps): React.ReactElement;
|
|
2716
|
+
|
|
2717
|
+
type EmptyStateType = 'no-results' | 'no-reviews' | 'no-broadcast-logs' | 'image-upload' | 'file-upload' | 'no-suspensions' | 'no-items' | 'no-orders' | 'no-network' | 'new-update' | 'no-data' | 'no-trips' | 'no-drivers' | 'no-products' | 'error' | 'comments' | 'notifications' | 'calendar';
|
|
2345
2718
|
type EmptyStateSize = 'mobile' | 'desktop';
|
|
2346
2719
|
interface EmptyStateProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'title'> {
|
|
2347
2720
|
/** Preset scenario — sets the illustration + default copy. Default `no-orders`. */
|
|
@@ -2816,8 +3189,12 @@ interface MapSearchInputProps extends Omit<React.InputHTMLAttributes<HTMLInputEl
|
|
|
2816
3189
|
disabled?: boolean;
|
|
2817
3190
|
}
|
|
2818
3191
|
/**
|
|
2819
|
-
*
|
|
2820
|
-
*
|
|
3192
|
+
* Overlay search — the `Search Input` type of Data Entry `38:42`, **Overlay** variant
|
|
3193
|
+
* (renamed from "Web Map", 2026-10-06; the component keeps its name so imports don't
|
|
3194
|
+
* break). Use it when search is **overlaid on top of a screen**: map interfaces with
|
|
3195
|
+
* search, and the global search reachable from the Top Bar on any screen. Closed it is
|
|
3196
|
+
* a 350px field; open, a 480px card on `--surface-neutral-search-field` with the
|
|
3197
|
+
* results attached.
|
|
2821
3198
|
* The `state` prop drives the panel (Figma states):
|
|
2822
3199
|
* - `idle` — field only.
|
|
2823
3200
|
* - `no-history` — "No recent searches" helper.
|
|
@@ -2846,7 +3223,7 @@ interface MobileMapSearchInputProps extends Omit<React.InputHTMLAttributes<HTMLI
|
|
|
2846
3223
|
}
|
|
2847
3224
|
/**
|
|
2848
3225
|
* Mobile-map search — the `Search Input` type of Data Entry `38:42` (Mobile Map
|
|
2849
|
-
* variant): a pill `--surface-neutral-
|
|
3226
|
+
* variant): a pill `--surface-neutral-search-field` field with an attached
|
|
2850
3227
|
* `MobileDropdown` results panel holding a list of `MobileMenuOptions` rows
|
|
2851
3228
|
* (pass your own via `children`).
|
|
2852
3229
|
*
|
|
@@ -2990,6 +3367,12 @@ interface DesktopMenuOptionsProps extends Omit<React.HTMLAttributes<HTMLDivEleme
|
|
|
2990
3367
|
active?: boolean;
|
|
2991
3368
|
/** Caller-controlled selected (checkbox/radio selection rows; filter-group reveals tags). */
|
|
2992
3369
|
selected?: boolean;
|
|
3370
|
+
/**
|
|
3371
|
+
* `checkbox-selection` only — draw the checkbox as **indeterminate** (a dash),
|
|
3372
|
+
* for an "All" row whose options are partly ticked. The native checkbox carries
|
|
3373
|
+
* it, so assistive tech hears "mixed". Takes precedence over `selected`.
|
|
3374
|
+
*/
|
|
3375
|
+
indeterminate?: boolean;
|
|
2993
3376
|
disabled?: boolean;
|
|
2994
3377
|
/** Force a visual state for catalogs/stories — overrides interaction + active/selected/disabled. */
|
|
2995
3378
|
state?: DesktopMenuOptionState;
|
|
@@ -3027,7 +3410,7 @@ interface DesktopMenuOptionsProps extends Omit<React.HTMLAttributes<HTMLDivEleme
|
|
|
3027
3410
|
/** Fired on activation (click / Enter / Space). For selection rows, fired with the next checked value. */
|
|
3028
3411
|
onSelect?: (next: boolean) => void;
|
|
3029
3412
|
}
|
|
3030
|
-
type DesktopMenuOptionState = 'idle' | 'hover' | 'pressed' | 'active' | 'disabled' | 'idle-selected' | 'hover-selected' | 'pressed-selected' | 'active-selected';
|
|
3413
|
+
type DesktopMenuOptionState = 'idle' | 'hover' | 'pressed' | 'active' | 'disabled' | 'disabled-selected' | 'idle-selected' | 'hover-selected' | 'pressed-selected' | 'active-selected';
|
|
3031
3414
|
/**
|
|
3032
3415
|
* Desktop Menu Options — a single row inside a desktop menu, dropdown, sidebar,
|
|
3033
3416
|
* calendar, or pager. It's the basic building block of the things people pick
|
|
@@ -3156,6 +3539,12 @@ interface FilterGroupDimension {
|
|
|
3156
3539
|
interface DesktopDropdownsProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'children'> {
|
|
3157
3540
|
/** Which assembled dropdown panel to render (Figma `8230:26475`). Default `combobox`. */
|
|
3158
3541
|
variant?: DesktopDropdownVariant;
|
|
3542
|
+
/**
|
|
3543
|
+
* Move focus onto the panel when it opens, so arrow keys work at once. Default
|
|
3544
|
+
* `true`. Pass `false` for a combobox opened from a field the user is still
|
|
3545
|
+
* typing in (an autocomplete) — the field must keep focus.
|
|
3546
|
+
*/
|
|
3547
|
+
focusOnOpen?: boolean;
|
|
3159
3548
|
/** Row labels for the main list (combobox / timepicker / basic-filter / filter list / actions). */
|
|
3160
3549
|
options?: string[];
|
|
3161
3550
|
/** Initially-selected option index (combobox / timepicker). */
|
|
@@ -3375,6 +3764,14 @@ interface CellProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'title' |
|
|
|
3375
3764
|
indeterminate?: boolean;
|
|
3376
3765
|
/** `header-checkbox` / `default-checkbox`: fired with the next checked value. */
|
|
3377
3766
|
onCheckedChange?: (checked: boolean) => void;
|
|
3767
|
+
/** `header-checkbox` / `default-checkbox`: render the checkbox disabled. */
|
|
3768
|
+
checkboxDisabled?: boolean;
|
|
3769
|
+
/**
|
|
3770
|
+
* `default-checkbox`: tooltip explaining why the checkbox is disabled, shown on
|
|
3771
|
+
* hover (a dark Standard tooltip, as wireframe `2721:178853`). A disabled input
|
|
3772
|
+
* fires no pointer events, so the tooltip is bound to a wrapper around it.
|
|
3773
|
+
*/
|
|
3774
|
+
checkboxDisabledTooltip?: string;
|
|
3378
3775
|
/** `sample`: the plain text value. Right-align numerics for scanning. Default "Content". */
|
|
3379
3776
|
text?: string;
|
|
3380
3777
|
/** `sample`: right-align the value (numeric quantities/amounts). Default false. */
|
|
@@ -3391,7 +3788,24 @@ interface CellProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'title' |
|
|
|
3391
3788
|
/** `text-link`: the link text. Default "contact@gmail.com". */
|
|
3392
3789
|
link?: string;
|
|
3393
3790
|
/** `text-link`: fired when the link is clicked. */
|
|
3394
|
-
onLinkClick?: () => void;
|
|
3791
|
+
onLinkClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;
|
|
3792
|
+
/**
|
|
3793
|
+
* `text-link`: a trailing icon on the link — e.g. `Open` for an identifier that
|
|
3794
|
+
* opens its own drawer ("TRP-103 ↗", "BC-4202 ↗").
|
|
3795
|
+
*
|
|
3796
|
+
* **Use `text-link`, not `actions`, for a link that names a record.** The Actions
|
|
3797
|
+
* cell CENTRES its content (it was built for the ⋯ column, Library `Type=Actions`
|
|
3798
|
+
* `CENTER`, padding 8), while every text cell is left-aligned at 12px, level with
|
|
3799
|
+
* its header. A Trip or Batch ID link rendered in an Actions cell therefore sat
|
|
3800
|
+
* centred while the "—" on rows without one sat flush left — a visible stagger
|
|
3801
|
+
* down the column (reported 2026-10-05). The Library's Text Link cell is `MIN`,
|
|
3802
|
+
* padding 10/12, so the link, the dash and the header share one left edge.
|
|
3803
|
+
*/
|
|
3804
|
+
linkIcon?: IconName;
|
|
3805
|
+
/** `text-link`: draw the link's underline. Default `true` (the Library default). */
|
|
3806
|
+
linkShowUnderline?: boolean;
|
|
3807
|
+
/** `text-link`: a tooltip on the link (e.g. "View Trip"). */
|
|
3808
|
+
linkTooltip?: string;
|
|
3395
3809
|
/** `list-item`: the title (truncates with ellipsis). Default "Text". */
|
|
3396
3810
|
title?: string;
|
|
3397
3811
|
/** `list-item`: the description (truncates with ellipsis). Default "Enter description here". */
|
|
@@ -3745,6 +4159,15 @@ interface TableRow {
|
|
|
3745
4159
|
* changes needs this — currently {@link TableProps.highlightedIds}.
|
|
3746
4160
|
*/
|
|
3747
4161
|
id?: string;
|
|
4162
|
+
/**
|
|
4163
|
+
* The row stays in the table but **cannot be selected** — its checkbox renders
|
|
4164
|
+
* disabled and select-all skips it (ruled 2026-10-02: Returning rows in the
|
|
4165
|
+
* Dispatched group keep the group's Checkbox column with the control off).
|
|
4166
|
+
* Pair with {@link selectionDisabledReason} so the dispatcher learns why.
|
|
4167
|
+
*/
|
|
4168
|
+
selectionDisabled?: boolean;
|
|
4169
|
+
/** Tooltip shown when the pointer is over a disabled row checkbox. */
|
|
4170
|
+
selectionDisabledReason?: string;
|
|
3748
4171
|
}
|
|
3749
4172
|
interface TableProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'children' | 'rows'> {
|
|
3750
4173
|
/** Column definitions (drive the header + shared column widths). */
|
|
@@ -3905,6 +4328,20 @@ declare const ORDER_TABLE_COLUMNS: TableColumn[];
|
|
|
3905
4328
|
* checkbox column the finished shape must not have.
|
|
3906
4329
|
*/
|
|
3907
4330
|
declare const ORDER_TABLE_COLUMNS_FINISHED: TableColumn[];
|
|
4331
|
+
/**
|
|
4332
|
+
* Instance A — Order Table, **Cancelled view** (ruled 2026-09-30). The finished
|
|
4333
|
+
* shape **without Driver and Trip**: cancelling releases the order from any trip
|
|
4334
|
+
* and driver, and many cancelled orders never had either, so the two columns would
|
|
4335
|
+
* be blank on most rows. Route/Recipient keep Instance B's weights.
|
|
4336
|
+
*
|
|
4337
|
+
* At the 1320 design canvas: Order ID 191 · Route 321 · Recipient 222 · Distance 90
|
|
4338
|
+
* · Duration 110 · Created 120 · Status 140 · Actions 126 (minimum 1106 — it
|
|
4339
|
+
* flex-fills). Like the finished shape, **consume with `<Table selectable={false}>`**.
|
|
4340
|
+
*
|
|
4341
|
+
* When Delivered and Cancelled are selected together, the union rule (Table spec,
|
|
4342
|
+
* Part II preamble) brings Trip and Driver back and the Cancelled rows read "—".
|
|
4343
|
+
*/
|
|
4344
|
+
declare const CANCELLED_ORDER_COLUMNS: TableColumn[];
|
|
3908
4345
|
/**
|
|
3909
4346
|
* Instance B — Unassigned Orders, **Pending view**. No driver and no trip yet, so
|
|
3910
4347
|
* both columns are removed; Route/Recipient re-weight to 60/40 automatically.
|
|
@@ -4208,7 +4645,10 @@ interface SideBarProps extends Omit<React.HTMLAttributes<HTMLElement>, 'children
|
|
|
4208
4645
|
footerItems?: SideBarItem[];
|
|
4209
4646
|
/** Footer version string. Default "Leta Technologies v.3.1.5". */
|
|
4210
4647
|
version?: string;
|
|
4211
|
-
/**
|
|
4648
|
+
/**
|
|
4649
|
+
* @deprecated Global search moved to the Top Bar (Figma 2026-10-06) — the Side Bar
|
|
4650
|
+
* no longer shows it. Defaults to `false`; kept only so existing callers compile.
|
|
4651
|
+
*/
|
|
4212
4652
|
showSearch?: boolean;
|
|
4213
4653
|
/** Search placeholder. Default "Global Search". */
|
|
4214
4654
|
searchPlaceholder?: string;
|
|
@@ -4246,11 +4686,23 @@ interface TopBarProps extends Omit<React.HTMLAttributes<HTMLElement>, 'children'
|
|
|
4246
4686
|
onNotificationsClick?: () => void;
|
|
4247
4687
|
/** Fired when the User-Menu is clicked. */
|
|
4248
4688
|
onUserMenuClick?: () => void;
|
|
4689
|
+
/**
|
|
4690
|
+
* Show the global search field in the centre of the bar (Figma 2026-10-06 — it
|
|
4691
|
+
* moved here from the Side Bar). Default `true`.
|
|
4692
|
+
*/
|
|
4693
|
+
showSearch?: boolean;
|
|
4694
|
+
/** Props for the default global search field (placeholder, value, handlers…). */
|
|
4695
|
+
searchProps?: SearchInputProps;
|
|
4696
|
+
/** Replace the default search field entirely (Figma's centre Data Entry). */
|
|
4697
|
+
search?: React.ReactNode;
|
|
4249
4698
|
}
|
|
4250
4699
|
/**
|
|
4251
4700
|
* Top Bar — the persistent application header: contextual wayfinding
|
|
4252
|
-
* (breadcrumbs) on the left,
|
|
4253
|
-
*
|
|
4701
|
+
* (breadcrumbs) on the left, the **global search** in the centre (a fixed 350px
|
|
4702
|
+
* Search Input, "Search anything..." — moved here from the Side Bar, Figma
|
|
4703
|
+
* 2026-10-06), and global controls — notifications and the User-Menu — on the
|
|
4704
|
+
* right. Left and right share the remaining width equally, so the search stays
|
|
4705
|
+
* centred whatever the breadcrumb length. The `active` variant shows an unread-notification dot
|
|
4254
4706
|
* on the bell. Composes Breadcrumbs, Button, and User-Menu.
|
|
4255
4707
|
*
|
|
4256
4708
|
* **Width:** the bar fills its container (`width: 100%`) — in a real app it
|
|
@@ -4598,7 +5050,9 @@ declare function useScrollEdges(containerRef: React.RefObject<HTMLElement | null
|
|
|
4598
5050
|
* `Escape` is not handled here: overlays own dismissal through the shared Escape
|
|
4599
5051
|
* stack, which is the only thing that knows which layer is on top.
|
|
4600
5052
|
*/
|
|
4601
|
-
declare function useRovingFocus<T extends HTMLElement>(ref: React.RefObject<T | null
|
|
5053
|
+
declare function useRovingFocus<T extends HTMLElement>(ref: React.RefObject<T | null>, { focusOnMount }?: {
|
|
5054
|
+
focusOnMount?: boolean;
|
|
5055
|
+
}): void;
|
|
4602
5056
|
|
|
4603
5057
|
/**
|
|
4604
5058
|
* Smoothly animate an element's `scrollTop`, and **guarantee it lands**.
|
|
@@ -4716,4 +5170,4 @@ interface ExtraLargeModalProps extends Omit<React.HTMLAttributes<HTMLDivElement>
|
|
|
4716
5170
|
*/
|
|
4717
5171
|
declare const ExtraLargeModal: React.ForwardRefExoticComponent<ExtraLargeModalProps & React.RefAttributes<HTMLDivElement>>;
|
|
4718
5172
|
|
|
4719
|
-
export { ALL_ORDER_COLUMNS, AVATAR_PHOTOS, AccordionChevron, AccordionContent, AccordionHeader, type AccordionHeaderProps, AlertDialog, type AlertDialogProps, type AlertDialogVariant, Avatar, type AvatarProps, type AvatarSize, type AvatarTone, BROADCASTED_ORDER_COLUMNS, Badge, type BadgeColor, type BadgeProps, type BreadcrumbCrumb, Breadcrumbs, type BreadcrumbsProps, type BreadcrumbsType, BulkActionsToolbar, type BulkActionsToolbarProps, Button, type ButtonPlatform, type ButtonProps, type ButtonSize, type ButtonVariant, CARET_SIDE, CREATED_BY_COLUMN, Calendar, type CalendarProps, type CaretAlign, type CaretSide, CarouselPagination, type CarouselPaginationProps, Cell, type CellProps, type CellState, type CellType, Checkbox, type CheckboxProps, Chip, type ChipProps, CollapsedSidebarLogo, type CollapsedSidebarLogoProps, ConfigurationCard, type ConfigurationCardProps, ConfigurationCardRow, type ConfigurationCardRowProps, type ConfigurationCardVariant, ContentCard, type ContentCardProps, ContentPrimitives, type ContentPrimitivesProps, type ContentPrimitivesType, DOORSTEP_DELIVERY_IMAGE, type DataRowCell, DataRows, type DataRowsProps, type DataRowsState, type DataRowsVariant, DateTimePicker, type DateTimePickerProps, type DateTimePickerType, type DesktopDropdownVariant, DesktopDropdowns, type DesktopDropdownsProps, type DesktopMenuOptionState, type DesktopMenuOptionType, DesktopMenuOptions, type DesktopMenuOptionsProps, DesktopMetricCard, type DesktopMetricCardProps, DesktopProgressIndicator, type DesktopProgressIndicatorProps, type DesktopProgressIndicatorVariant, DesktopSegmentControl, type DesktopSegmentControlItem, type DesktopSegmentControlProps, type DesktopSegmentControlVariant, DurationLabel, type DurationLabelProps, type DurationLabelStatus, type DurationLabelVariant, EmptyState, type EmptyStateProps, type EmptyStateSize, type EmptyStateType, ExtraLargeModal, type ExtraLargeModalProps, FeaturedIcon, type FeaturedIconColor, type FeaturedIconProps, type FeaturedIconSize, FileUpload, FileUploadCard, type FileUploadCardProps, type FileUploadCardStatus, type FileUploadProps, type FilterGroupDimension, Flag, type FlagProps, FooterFrame, type FooterFrameProps, type FooterFrameVariant, FormDemarcator, GroupedInput, type GroupedInputProps, type GroupedInputVariant, HoverTip, type HoverTipProps, InputField, type InputFieldProps, type InputFieldVariant, InputGroup, type InputGroupProps, InputSection, type InputSectionProps, LAST_UPDATED_COLUMN, LargeModal, type LargeModalProps, type LargeModalVariant, LeadingInputFieldElement, type LeadingInputFieldElementProps, type LeadingInputFieldElementVariant, LetaLogo, type LetaLogoProps, ListGroup, type ListGroupProps, type ListItemData, ListSection, type ListSectionProps, LoadingOverlay, type LoadingOverlayProps, MAP_ROUTE_DRIVEN, MAP_ROUTE_PLANNED, MapIcon, type MapIconProps, type MapIconVariant, MapLegend, type MapLegendEntry, type MapLegendProps, MapSearchInput, type MapSearchInputProps, MapView, type MapViewProps, MapZoomControl, type MapZoomControlProps, type MetricCardState, type MetricVariance, MobileBadge, type MobileBadgeColor, type MobileBadgeProps, type MobileBadgeVariant, MobileChip, type MobileChipProps, MobileDropdown, type MobileDropdownOption, type MobileDropdownProps, MobileFeaturedIcon, type MobileFeaturedIconColor, type MobileFeaturedIconProps, type MobileFeaturedIconSize, type MobileFeaturedIconVariant, MobileFileUpload, type MobileFileUploadImage, type MobileFileUploadProps, MobileMapSearchInput, type MobileMapSearchInputProps, type MobileMenuOptionState, type MobileMenuOptionType, MobileMenuOptions, type MobileMenuOptionsProps, MobileNavTab, type MobileNavTabProps, MobileSearchInput, type MobileSearchInputProps, MobileSegment, type MobileSegmentProps, ModalDialog, type ModalDialogProps, type ModalDialogVariant, ModalHeaders, type ModalHeadersProps, type ModalHeadersVariant, ModalShell, type ModalShellProps, NotificationBanner, type NotificationBannerProps, type NotificationBannerType, type NotificationBannerVariant, ORDER_TABLE_COLUMNS, ORDER_TABLE_COLUMNS_FINISHED, OptionCard, type OptionCardProps, type OptionCardState, Page, type PageProps, PageTab, type PageTabProps, PageTabsControl, type PageTabsControlItem, type PageTabsControlProps, type PageTabsControlVariant, type PageVariant, Pagination, type PaginationProps, type PaginationVariant, Placeholder, type PlaceholderProps, ProgressTracker, type ProgressTrackerProps, RadioButton, type RadioButtonProps, SCHEDULED_ORDER_COLUMNS, SIGNATURE_IMAGE, type ScrollEdges, SearchInput, type SearchInputProps, SegmentSwitcherTab, type SegmentSwitcherTabProps, Select, type SelectProps, SelectionControl, type SelectionControlProps, type SelectionControlVariant, Shortcut, type ShortcutProps, SideBar, type SideBarGroup, type SideBarItem, type SideBarProps, type SideBarVariant, Sidetab, type SidetabItem, type SidetabProps, Skeleton, type SkeletonProps, StackedCards, type StackedCardsProps, Stepper, StepperInput, type StepperInputProps, type StepperProps, type StepperVariant, Table, type TableColumn, type TableColumnRole, TableContainer, type TableContainerProps, type TableContainerVariant, TableDataControl, type TableDataControlProps, type TableDataControlVariant, type TableProps, type TableRow, TableSection, type TableSectionProps, Tag, type TagProps, TextArea, type TextAreaBasicProps, type TextAreaProps, type TextAreaRichProps, type TextAreaVariant, Title, type TitleProps, type TitleVariant, Toast, type ToastProps, type ToastType, Toggle, ToggleButton, type ToggleButtonProps, type ToggleProps, Tooltip, type TooltipPlatform, type TooltipPosition, type TooltipPositionInput, type TooltipProps, type TooltipRect, type TooltipSide, type TooltipVariant, TopBar, type TopBarProps, type TopBarVariant, TopFilter, type TopFilterProps, TopFilterSection, type TopFilterSectionItem, type TopFilterSectionProps, TrailingInputFieldElement, type TrailingInputFieldElementProps, type TrailingInputFieldElementVariant, UNASSIGNED_ORDER_COLUMNS, UserMenu, type UserMenuProps, type UserMenuState, ViewSwitcherTab, type ViewSwitcherTabProps, WizardTab, type WizardTabProps, animateScrollTop, computeTooltipPosition, downloadFile, htmlToPlainText, sanitizeRichText, useAccordion, useEscapeLayer, useRovingFocus, useScrollEdges, useScrollShadow };
|
|
5173
|
+
export { ALL_ORDER_COLUMNS, AVATAR_PHOTOS, AccordionChevron, AccordionContent, AccordionHeader, type AccordionHeaderProps, AlertDialog, type AlertDialogProps, type AlertDialogVariant, Avatar, type AvatarProps, type AvatarSize, type AvatarTone, BROADCASTED_ORDER_COLUMNS, Badge, type BadgeColor, type BadgeProps, type BreadcrumbCrumb, Breadcrumbs, type BreadcrumbsProps, type BreadcrumbsType, BulkActionsToolbar, type BulkActionsToolbarProps, Button, type ButtonPlatform, type ButtonProps, type ButtonSize, type ButtonVariant, CANCELLED_ORDER_COLUMNS, CARET_SIDE, CREATED_BY_COLUMN, Calendar, type CalendarProps, type CaretAlign, type CaretSide, CarouselPagination, type CarouselPaginationProps, Cell, type CellProps, type CellState, type CellType, Checkbox, type CheckboxProps, Chip, type ChipProps, CollapsedSidebarLogo, type CollapsedSidebarLogoProps, ConfigurationCard, type ConfigurationCardProps, ConfigurationCardRow, type ConfigurationCardRowProps, type ConfigurationCardVariant, ContentCard, type ContentCardProps, ContentPrimitives, type ContentPrimitivesProps, type ContentPrimitivesType, DIALOG_OVERLAY_DEFAULT_TIER, DOORSTEP_DELIVERY_IMAGE, type DataRowCell, DataRows, type DataRowsProps, type DataRowsState, type DataRowsVariant, DateTimePicker, type DateTimePickerProps, type DateTimePickerType, type DesktopDropdownVariant, DesktopDropdowns, type DesktopDropdownsProps, type DesktopMenuOptionState, type DesktopMenuOptionType, DesktopMenuOptions, type DesktopMenuOptionsProps, DesktopMetricCard, type DesktopMetricCardProps, DesktopProgressIndicator, type DesktopProgressIndicatorProps, type DesktopProgressIndicatorVariant, DesktopSegmentControl, type DesktopSegmentControlItem, type DesktopSegmentControlProps, type DesktopSegmentControlVariant, DialogOverlay, type DialogOverlayHelpers, type DialogOverlayProps, DurationLabel, type DurationLabelProps, type DurationLabelStatus, type DurationLabelVariant, EmptyState, type EmptyStateProps, type EmptyStateSize, type EmptyStateType, ExtraLargeModal, type ExtraLargeModalProps, FeaturedIcon, type FeaturedIconColor, type FeaturedIconProps, type FeaturedIconSize, FileUpload, FileUploadCard, type FileUploadCardProps, type FileUploadCardStatus, type FileUploadProps, type FilterGroupDimension, Flag, type FlagProps, FooterFrame, type FooterFrameProps, type FooterFrameVariant, FormDemarcator, GroupedInput, type GroupedInputProps, type GroupedInputVariant, HoverTip, type HoverTipProps, InputField, type InputFieldProps, type InputFieldVariant, InputGroup, type InputGroupProps, InputSection, type InputSectionProps, LAST_UPDATED_COLUMN, LargeModal, type LargeModalProps, type LargeModalVariant, LeadingInputFieldElement, type LeadingInputFieldElementProps, type LeadingInputFieldElementVariant, LetaLogo, type LetaLogoProps, ListGroup, type ListGroupProps, type ListItemData, ListSection, type ListSectionProps, LoadingOverlay, type LoadingOverlayProps, MAP_ROUTE_DRIVEN, MAP_ROUTE_PLANNED, MapIcon, type MapIconProps, type MapIconVariant, MapLegend, type MapLegendEntry, type MapLegendProps, MapSearchInput, type MapSearchInputProps, MapView, type MapViewProps, MapZoomControl, type MapZoomControlProps, MenuDivider, MenuFlyout, type MenuFlyoutProps, MenuPanel, type MenuPanelProps, type MetricCardState, type MetricVariance, MobileBadge, type MobileBadgeColor, type MobileBadgeProps, type MobileBadgeVariant, MobileChip, type MobileChipProps, MobileDropdown, type MobileDropdownOption, type MobileDropdownProps, MobileFeaturedIcon, type MobileFeaturedIconColor, type MobileFeaturedIconProps, type MobileFeaturedIconSize, type MobileFeaturedIconVariant, MobileFileUpload, type MobileFileUploadImage, type MobileFileUploadProps, MobileMapSearchInput, type MobileMapSearchInputProps, type MobileMenuOptionState, type MobileMenuOptionType, MobileMenuOptions, type MobileMenuOptionsProps, MobileNavTab, type MobileNavTabProps, MobileSearchInput, type MobileSearchInputProps, MobileSegment, type MobileSegmentProps, ModalDialog, type ModalDialogProps, type ModalDialogVariant, ModalHeaders, type ModalHeadersProps, type ModalHeadersVariant, ModalShell, type ModalShellProps, NotificationBanner, type NotificationBannerProps, type NotificationBannerType, type NotificationBannerVariant, ORDER_TABLE_COLUMNS, ORDER_TABLE_COLUMNS_FINISHED, OptionCard, type OptionCardProps, type OptionCardState, Page, type PageProps, PageTab, type PageTabProps, PageTabsControl, type PageTabsControlItem, type PageTabsControlProps, type PageTabsControlVariant, type PageVariant, Pagination, type PaginationProps, type PaginationVariant, Placeholder, type PlaceholderProps, Popover, type PopoverPlacement, type PopoverProps, ProgressTracker, type ProgressTrackerProps, RadioButton, type RadioButtonProps, SCHEDULED_ORDER_COLUMNS, SIGNATURE_IMAGE, type ScrollEdges, SearchInput, type SearchInputProps, SegmentSwitcherTab, type SegmentSwitcherTabProps, Select, type SelectProps, SelectionControl, type SelectionControlProps, type SelectionControlVariant, Shortcut, type ShortcutProps, SideBar, type SideBarGroup, type SideBarItem, type SideBarProps, type SideBarVariant, Sidetab, type SidetabItem, type SidetabProps, Skeleton, type SkeletonProps, StackedCards, type StackedCardsProps, Stepper, StepperInput, type StepperInputProps, type StepperProps, type StepperVariant, Table, type TableColumn, type TableColumnRole, TableContainer, type TableContainerProps, type TableContainerVariant, TableDataControl, type TableDataControlProps, type TableDataControlVariant, type TableProps, type TableRow, TableSection, type TableSectionProps, Tag, type TagProps, TextArea, type TextAreaBasicProps, type TextAreaProps, type TextAreaRichProps, type TextAreaVariant, Title, type TitleProps, type TitleVariant, Toast, type ToastProps, type ToastType, Toggle, ToggleButton, type ToggleButtonProps, type ToggleProps, Tooltip, type TooltipPlatform, type TooltipPosition, type TooltipPositionInput, type TooltipProps, type TooltipRect, type TooltipSide, type TooltipVariant, TopBar, type TopBarProps, type TopBarVariant, TopFilter, type TopFilterProps, TopFilterSection, type TopFilterSectionItem, type TopFilterSectionProps, TrailingInputFieldElement, type TrailingInputFieldElementProps, type TrailingInputFieldElementVariant, TruncatedText, type TruncatedTextProps, UNASSIGNED_ORDER_COLUMNS, UserMenu, type UserMenuProps, type UserMenuState, ViewSwitcherTab, type ViewSwitcherTabProps, WizardTab, type WizardTabProps, animateScrollTop, computeTooltipPosition, downloadFile, htmlToPlainText, sanitizeRichText, useAccordion, useEscapeLayer, useRovingFocus, useScrollEdges, useScrollShadow };
|