@sableui/react 0.14.0 → 0.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +131 -0
- package/DESIGN.md +3 -1
- package/bin/sable-lint.mjs +5 -1
- package/dist/{_contract-CkqXDVww.d.ts → _contract-CDa9-NdB.d.ts} +47 -1
- package/dist/blocks/index.d.ts +12 -1
- package/dist/blocks/index.js +4 -0
- package/dist/blocks/message-reactions-block.js +87 -0
- package/dist/blocks/message-reactions-block.meta.js +23 -0
- package/dist/blocks/wallet-block.js +2 -2
- package/dist/components/app-shell/app-shell-frame.js +16 -0
- package/dist/components/app-shell/app-shell-main.js +12 -0
- package/dist/components/app-shell/app-shell.js +28 -4
- package/dist/components/app-shell/app-shell.meta.js +88 -4
- package/dist/components/area-chart/area-chart.meta.js +6 -1
- package/dist/components/attachment/attachment.meta.js +2 -1
- package/dist/components/attachment/attachment.variants.js +1 -1
- package/dist/components/badge/badge.meta.js +8 -1
- package/dist/components/badge/badge.variants.js +7 -7
- package/dist/components/banner/banner.meta.js +6 -1
- package/dist/components/banner/banner.variants.js +5 -5
- package/dist/components/bar-chart/bar-chart.meta.js +6 -1
- package/dist/components/bubble/bubble.js +105 -5
- package/dist/components/bubble/bubble.meta.js +42 -6
- package/dist/components/bubble/bubble.variants.js +1 -1
- package/dist/components/bubble/index.js +2 -0
- package/dist/components/caret-menu/caret-menu.js +5 -6
- package/dist/components/chat-composer/chat-composer.meta.js +2 -2
- package/dist/components/chat-composer/chat-composer.variants.js +1 -1
- package/dist/components/color-field/color-field.js +6 -8
- package/dist/components/combobox/combobox.js +27 -5
- package/dist/components/combobox/combobox.meta.js +10 -2
- package/dist/components/command-menu/command-menu.js +14 -3
- package/dist/components/command-menu/command-menu.meta.js +9 -1
- package/dist/components/date-picker/date-picker.meta.js +2 -2
- package/dist/components/feedback/feedback.js +9 -2
- package/dist/components/feedback/feedback.meta.js +8 -1
- package/dist/components/gradient-art/gradient-art.js +8 -5
- package/dist/components/gradient-art/gradient-art.meta.js +35 -2
- package/dist/components/input/input.meta.js +11 -3
- package/dist/components/input-group/input-group.js +1 -1
- package/dist/components/input-group/input-group.meta.js +1 -1
- package/dist/components/like-button/index.js +7 -0
- package/dist/components/like-button/like-button.js +89 -0
- package/dist/components/like-button/like-button.meta.js +132 -0
- package/dist/components/line-chart/line-chart.meta.js +6 -1
- package/dist/components/menu/menu.js +1 -1
- package/dist/components/meter/meter.js +53 -7
- package/dist/components/meter/meter.meta.js +51 -4
- package/dist/components/meter/meter.variants.js +43 -7
- package/dist/components/note/note.meta.js +5 -1
- package/dist/components/note/note.variants.js +4 -4
- package/dist/components/number-field/number-field.meta.js +2 -2
- package/dist/components/otp-field/otp-field.meta.js +2 -2
- package/dist/components/panel-group/panel-group.js +5 -8
- package/dist/components/pie-chart/pie-chart.meta.js +6 -1
- package/dist/components/radar-chart/radar-chart.meta.js +6 -1
- package/dist/components/radial-chart/radial-chart.meta.js +6 -1
- package/dist/components/reaction-picker/index.js +13 -0
- package/dist/components/reaction-picker/reaction-picker.js +104 -0
- package/dist/components/reaction-picker/reaction-picker.meta.js +156 -0
- package/dist/components/search-input/search-input.meta.js +11 -3
- package/dist/components/segmented-bar/segmented-bar.meta.js +8 -1
- package/dist/components/segmented-bar/segmented-bar.variants.js +7 -7
- package/dist/components/select/select.js +1 -1
- package/dist/components/select/select.meta.js +2 -2
- package/dist/components/sheet/sheet.js +5 -4
- package/dist/components/sidebar/sidebar.js +16 -1
- package/dist/components/sidebar/sidebar.meta.js +7 -2
- package/dist/components/sparkline/sparkline.meta.js +8 -1
- package/dist/components/status-dot/status-dot.meta.js +8 -1
- package/dist/components/status-dot/status-dot.variants.js +7 -7
- package/dist/components/stepper/stepper.meta.js +2 -1
- package/dist/components/stepper/stepper.variants.js +1 -1
- package/dist/components/table/table.meta.js +4 -4
- package/dist/components/textarea/textarea.js +5 -0
- package/dist/components/textarea/textarea.meta.js +3 -3
- package/dist/components/toast/toast.js +25 -13
- package/dist/components/toast/toast.meta.js +7 -1
- package/dist/file-hashes.json +112 -100
- package/dist/foundations/accessibility.js +5 -0
- package/dist/foundations/motion.js +21 -1
- package/dist/icon-sets/reicon.js +11 -1
- package/dist/index.d.ts +425 -84
- package/dist/index.js +11 -1
- package/dist/lib/chart/types.js +8 -8
- package/dist/lib/chart/use-arrival.js +5 -4
- package/dist/lib/field-shell.js +1 -1
- package/dist/lib/highlight-glide.js +6 -6
- package/dist/lib/scrub-gesture.js +6 -6
- package/dist/lib/taxonomy.js +2 -0
- package/dist/lib/use-caret-trigger.js +11 -18
- package/dist/lib/use-match-highlight.js +69 -0
- package/dist/lib/use-smooth-wheel.js +10 -8
- package/dist/motion/Burst.js +79 -0
- package/dist/motion/index.js +2 -0
- package/dist/presets/index.d.ts +13 -2
- package/dist/presets/index.js +17 -1
- package/dist/styles.css +241 -0
- package/dist/{theme-provider-CdSicAad.d.ts → theme-provider-BydfM5Z0.d.ts} +1 -1
- package/dist/themes/_contract.js +14 -0
- package/dist/themes/atelier/atelier.css +18 -0
- package/dist/themes/atelier/index.d.ts +1 -1
- package/dist/themes/contrast.js +48 -1
- package/dist/themes/ember/ember.css +18 -0
- package/dist/themes/ember/index.d.ts +1 -1
- package/dist/themes/index.d.ts +2 -2
- package/dist/themes/meridian/index.d.ts +1 -1
- package/dist/themes/meridian/meridian.css +18 -0
- package/dist/themes/poppy/index.d.ts +1 -1
- package/dist/themes/poppy/poppy.css +18 -0
- package/dist/themes/prism/index.d.ts +1 -1
- package/dist/themes/prism/prism.css +18 -0
- package/dist/themes/sable/index.d.ts +1 -1
- package/dist/themes/sable/sable.css +18 -0
- package/dist/themes/verdant/index.d.ts +1 -1
- package/dist/themes/verdant/verdant.css +18 -0
- package/llms/blocks/message-reactions-block.md +116 -0
- package/llms/blocks/wallet-block.md +5 -4
- package/llms/components/app-shell.md +72 -3
- package/llms/components/area-chart.md +1 -1
- package/llms/components/attachment.md +1 -1
- package/llms/components/badge.md +1 -1
- package/llms/components/banner.md +1 -1
- package/llms/components/bar-chart.md +1 -1
- package/llms/components/bubble.md +17 -7
- package/llms/components/chat-composer.md +1 -1
- package/llms/components/combobox.md +2 -1
- package/llms/components/command-menu.md +3 -2
- package/llms/components/date-picker.md +1 -1
- package/llms/components/feedback.md +2 -1
- package/llms/components/gradient-art.md +28 -1
- package/llms/components/input-group.md +1 -1
- package/llms/components/input.md +4 -2
- package/llms/components/like-button.md +91 -0
- package/llms/components/line-chart.md +1 -1
- package/llms/components/meter.md +33 -4
- package/llms/components/note.md +1 -1
- package/llms/components/number-field.md +1 -1
- package/llms/components/otp-field.md +1 -1
- package/llms/components/pie-chart.md +1 -1
- package/llms/components/radar-chart.md +1 -1
- package/llms/components/radial-chart.md +1 -1
- package/llms/components/reaction-picker.md +115 -0
- package/llms/components/search-input.md +20 -2
- package/llms/components/segmented-bar.md +1 -1
- package/llms/components/select.md +1 -1
- package/llms/components/sidebar.md +3 -2
- package/llms/components/sparkline.md +1 -1
- package/llms/components/status-dot.md +1 -1
- package/llms/components/stepper.md +1 -1
- package/llms/components/table.md +2 -2
- package/llms/components/textarea.md +2 -2
- package/llms/components/toast.md +2 -1
- package/llms/foundations/accessibility.md +1 -0
- package/llms/foundations/motion.md +18 -2
- package/llms/reference/token-intent.md +22 -2
- package/llms/reference/utilities.md +9 -3
- package/llms-full.txt +596 -61
- package/llms.txt +10 -7
- package/package.json +1 -1
- package/registry.json +968 -68
- package/scripts/lint-rules.mjs +6 -3
- package/targets/ios.json +18 -0
package/dist/index.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { ClassValue } from 'clsx';
|
|
2
2
|
import { C as ComponentMeta } from './meta-DX5r5wQL.js';
|
|
3
3
|
export { A as AnatomyMeta, a as BestPracticeMeta, E as ExampleMeta, M as MotionMeta, b as MotionSlot, c as PropMeta, R as RelatedMeta, S as SubcomponentMeta, U as UsageMeta } from './meta-DX5r5wQL.js';
|
|
4
|
-
import { T as ThemeManifest, a as ThemeMode$1 } from './_contract-
|
|
5
|
-
export { A as ART_TOKENS, D as DENSITY_TOKENS,
|
|
6
|
-
import { T as ThemeId } from './theme-provider-
|
|
7
|
-
export { D as DEFAULT_THEME_ID, S as SABLE_COLOR_STORAGE_KEY, a as SABLE_THEME_ATTRIBUTE, b as SABLE_THEME_STORAGE_KEY, c as SableColorMode, d as SableThemeContextValue, e as SableThemePreference, f as SableThemeProvider, g as SableThemeProviderProps, h as applySableColorMode, i as applySableTheme, k as defaultThemeId, m as getThemeManifest, o as isThemeId, t as themeIds, p as themeManifestById, q as themeManifests, u as useSableTheme } from './theme-provider-
|
|
4
|
+
import { T as ThemeManifest, a as ThemeMode$1 } from './_contract-CDa9-NdB.js';
|
|
5
|
+
export { A as APP_SHELL_TOKENS, b as ART_TOKENS, D as DENSITY_TOKENS, c as DensityToken, F as FIELD_TOKENS, M as MARK_TOKENS, d as MOTION_TOKENS, e as MotionToken, P as PALETTE_TOKENS, R as RADIUS_TOKENS, f as RHYTHM_TOKENS, g as RadiusToken, h as RhythmToken, S as SEMANTIC_TOKENS, i as SemanticToken, j as TYPE_OVERLINE_TOKENS, k as TYPE_REFINEMENT_TOKENS, l as TYPE_SCALE_TOKENS, m as TYPE_UI_TOKENS, n as TypeOverlineToken, o as TypeRefinementToken, p as TypeScaleToken, q as TypeUiToken, W as WORKSPACE_SURFACE_TOKENS, r as WorkspaceSurfaceToken } from './_contract-CDa9-NdB.js';
|
|
6
|
+
import { T as ThemeId } from './theme-provider-BydfM5Z0.js';
|
|
7
|
+
export { D as DEFAULT_THEME_ID, S as SABLE_COLOR_STORAGE_KEY, a as SABLE_THEME_ATTRIBUTE, b as SABLE_THEME_STORAGE_KEY, c as SableColorMode, d as SableThemeContextValue, e as SableThemePreference, f as SableThemeProvider, g as SableThemeProviderProps, h as applySableColorMode, i as applySableTheme, k as defaultThemeId, m as getThemeManifest, o as isThemeId, t as themeIds, p as themeManifestById, q as themeManifests, u as useSableTheme } from './theme-provider-BydfM5Z0.js';
|
|
8
8
|
export { AspectBox, AspectBoxProps, Bleed, BleedProps, Breakpoint, Center, CenterProps, Col, ColProps, Columns, ColumnsProps, Grid, GridOverlay, GridOverlayProps, GridProps, Page, PageProps, Region, RegionMax, RegionProps, Responsive, Row, RowProps, SafeArea, SafeAreaProps, Spacer, SpacerProps, SplitPane, SplitPaneProps, Stack, StackProps } from './layout/index.js';
|
|
9
9
|
export { Icon, IconContextValue, IconProps, IconProvider, IconProviderProps, composeIconSets, useIconSet } from './icon/index.js';
|
|
10
10
|
export { a as IconRenderProps, I as IconSet, b as IconVariant } from './registry-CyL28OzJ.js';
|
|
@@ -440,6 +440,118 @@ declare namespace Presence {
|
|
|
440
440
|
var displayName: string;
|
|
441
441
|
}
|
|
442
442
|
|
|
443
|
+
/**
|
|
444
|
+
* The palette: nine colour families and a scale under every tone, generated
|
|
445
|
+
* for whatever theme is painting. `scripts/build-palette.mjs` writes this into
|
|
446
|
+
* `src/palette.css`; `palette.test.ts` holds every built-in theme to it.
|
|
447
|
+
*
|
|
448
|
+
* The contract is roles, and roles are not enough for a product. Tags, avatars,
|
|
449
|
+
* labels and illustration need more colours than three tones, and raw Tailwind
|
|
450
|
+
* steps ignore the theme, so they were banned outright. These follow it:
|
|
451
|
+
*
|
|
452
|
+
* - A **family** (red, orange, yellow, green, teal, blue, purple, pink) keeps
|
|
453
|
+
* its own hue and leans toward the brand by half the gap, at most 15°, and
|
|
454
|
+
* only as far as the brand has colour to lean toward (an ink-black primary
|
|
455
|
+
* pulls nothing). Material 3's harmonize, the same lean the customizer gives
|
|
456
|
+
* status colours. Lightness and chroma are fixed per step, fitted inside sRGB
|
|
457
|
+
* across the whole lean, so no brand can push a step out of gamut.
|
|
458
|
+
* - **neutral** is the theme's own page and ink mixed in steps, so it carries
|
|
459
|
+
* whatever tint the theme's surfaces do.
|
|
460
|
+
* - Every **tone** (tone-1…3, info, warning, success, destructive) gets a scale
|
|
461
|
+
* on one shared ladder of depths, and the tone lands exactly on the step
|
|
462
|
+
* nearest its own lightness: a light status colour in dark mode is 800, a
|
|
463
|
+
* mid one is 500. The steps either side stretch to keep the ladder's ends,
|
|
464
|
+
* so a tone near one end does not crush five steps into the little room
|
|
465
|
+
* left past it, and tone-1-100 and success-100 are the same depth.
|
|
466
|
+
*
|
|
467
|
+
* Steps follow the mode rather than literal lightness: a low step is always
|
|
468
|
+
* near the page and a high step always far from it, so 800 text on a 100
|
|
469
|
+
* wash reads in both modes with no `dark:` (Sable has none).
|
|
470
|
+
*/
|
|
471
|
+
declare const PALETTE_STEPS: readonly [50, 100, 200, 300, 400, 500, 600, 700, 800, 900, 950];
|
|
472
|
+
type PaletteStep = (typeof PALETTE_STEPS)[number];
|
|
473
|
+
interface PaletteFamily {
|
|
474
|
+
name: string;
|
|
475
|
+
/** The family's own hue, before the lean. */
|
|
476
|
+
hue: number;
|
|
477
|
+
/** Step 500, per mode: lightness and the chroma the family is aiming for. */
|
|
478
|
+
light: {
|
|
479
|
+
l: number;
|
|
480
|
+
c: number;
|
|
481
|
+
};
|
|
482
|
+
dark: {
|
|
483
|
+
l: number;
|
|
484
|
+
c: number;
|
|
485
|
+
};
|
|
486
|
+
}
|
|
487
|
+
declare const PALETTE_FAMILIES: readonly PaletteFamily[];
|
|
488
|
+
/** The hue families by name — the values Badge, Pill and StatusDot take on `tone`. */
|
|
489
|
+
declare const PALETTE_COLORS: readonly ["red", "orange", "yellow", "green", "teal", "blue", "purple", "pink"];
|
|
490
|
+
type PaletteColor = (typeof PALETTE_COLORS)[number];
|
|
491
|
+
declare const isPaletteColor: (value: unknown) => value is PaletteColor;
|
|
492
|
+
/** Tokens that get a scale of their own, `--<token>-50` … `--<token>-950`. */
|
|
493
|
+
declare const PALETTE_TONES: readonly ["tone-1", "tone-2", "tone-3", "tone-info", "tone-warning", "success", "destructive"];
|
|
494
|
+
/** Everything the palette names: neutral, the families, then the tone scales. */
|
|
495
|
+
declare const PALETTE_SCALES: readonly ["neutral", ...string[], "tone-1", "tone-2", "tone-3", "tone-info", "tone-warning", "success", "destructive"];
|
|
496
|
+
|
|
497
|
+
interface BurstProps {
|
|
498
|
+
/**
|
|
499
|
+
* Plays the burst each time this value changes. Nothing plays on mount, so
|
|
500
|
+
* a page that loads with a post already liked stays still. A counter that
|
|
501
|
+
* goes up on each "on" is the usual trigger; leave it alone on "off" so
|
|
502
|
+
* un-liking is quiet.
|
|
503
|
+
*/
|
|
504
|
+
trigger: unknown;
|
|
505
|
+
/**
|
|
506
|
+
* The palette families the dots take in turn. The ring blooms in the host's
|
|
507
|
+
* `currentColor` and fades into the first. Families, not colours: the
|
|
508
|
+
* palette is generated from the active theme, so the confetti re-themes
|
|
509
|
+
* with everything else. @default ["pink", "purple", "blue", "orange"]
|
|
510
|
+
*/
|
|
511
|
+
palette?: readonly PaletteColor[];
|
|
512
|
+
/** How many places dots fly from; each throws a pair. @default 7 */
|
|
513
|
+
count?: number;
|
|
514
|
+
/**
|
|
515
|
+
* Throw this instead of dots: copies of the glyph being celebrated (an
|
|
516
|
+
* emoji reaction), larger than a dot and with no ring, the way a reaction
|
|
517
|
+
* sprays its own emoji. Text only — it is repeated once per piece.
|
|
518
|
+
*/
|
|
519
|
+
particle?: ReactNode;
|
|
520
|
+
/**
|
|
521
|
+
* Also play once when it mounts. For a glyph that arrives BECAUSE of the
|
|
522
|
+
* action — a reaction pill that did not exist until the reader chose it —
|
|
523
|
+
* where mounting is the change. Never for a page that loads.
|
|
524
|
+
* @default false
|
|
525
|
+
*/
|
|
526
|
+
playOnMount?: boolean;
|
|
527
|
+
/** Sizing (`[--burst-size:…]`) or placement. */
|
|
528
|
+
className?: string;
|
|
529
|
+
/**
|
|
530
|
+
* How much motion this component uses. A burst is pure flourish, so it
|
|
531
|
+
* renders only at `full`: `subtle` and `off` render nothing.
|
|
532
|
+
*/
|
|
533
|
+
motion?: MotionLevel;
|
|
534
|
+
}
|
|
535
|
+
/**
|
|
536
|
+
* Burst — the follow-through after a small celebratory toggle: a disc that
|
|
537
|
+
* hollows into a ring, then dots thrown outward that shrink as they go. Place
|
|
538
|
+
* it inside a `relative` wrapper around the glyph it celebrates, beside a
|
|
539
|
+
* `motion-bloom` on the glyph itself:
|
|
540
|
+
*
|
|
541
|
+
* <span className="relative inline-flex">
|
|
542
|
+
* <span key={likes} className={liked ? "motion-bloom" : undefined}><Icon name="heart" /></span>
|
|
543
|
+
* <Burst trigger={likes} />
|
|
544
|
+
* </span>
|
|
545
|
+
*
|
|
546
|
+
* It sizes from `--burst-size` (the ring's diameter, default 2.25em — about
|
|
547
|
+
* twice the glyph) and colours from the themed palette families. Decorative and
|
|
548
|
+
* `aria-hidden`; it draws outside its box and never takes pointer events.
|
|
549
|
+
* Use it for a moment of delight on an action a person chose — a like, a
|
|
550
|
+
* star, a finished task — never on something the system did, and never on
|
|
551
|
+
* every row of a list at once.
|
|
552
|
+
*/
|
|
553
|
+
declare function Burst({ trigger, palette, count, particle, playOnMount, className, motion, }: BurstProps): react.JSX.Element | null;
|
|
554
|
+
|
|
443
555
|
/** Is the cross-document/SPA View Transitions API available? */
|
|
444
556
|
declare function supportsViewTransitions(): boolean;
|
|
445
557
|
/**
|
|
@@ -468,7 +580,7 @@ declare namespace ViewTransitionName {
|
|
|
468
580
|
}
|
|
469
581
|
|
|
470
582
|
declare const buttonVariants: (props?: ({
|
|
471
|
-
variant?: "link" | "primary" | "secondary" | "destructive" | "
|
|
583
|
+
variant?: "link" | "primary" | "secondary" | "destructive" | "field" | "outline" | "ghost" | "floating" | "on-color" | "on-color-outline" | "on-color-ghost" | null | undefined;
|
|
472
584
|
size?: "icon" | "sm" | "md" | "xs" | "cta" | "icon-sm" | "icon-xs" | null | undefined;
|
|
473
585
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
474
586
|
|
|
@@ -643,6 +755,67 @@ declare namespace ConfirmButton {
|
|
|
643
755
|
|
|
644
756
|
declare const confirmButtonMeta: ComponentMeta;
|
|
645
757
|
|
|
758
|
+
type LabelledSize = "xs" | "sm" | "md";
|
|
759
|
+
interface LikeButtonProps extends Omit<ButtonProps, "children" | "variant" | "size" | "iconStart" | "iconEnd" | "badge" | "loading" | "loadingLabel" | "render" | "type"> {
|
|
760
|
+
/** Pressed (liked), controlled. */
|
|
761
|
+
pressed?: boolean;
|
|
762
|
+
/** Pressed (liked) at first, uncontrolled. @default false */
|
|
763
|
+
defaultPressed?: boolean;
|
|
764
|
+
/** Called when a press turns it on or off, with the new state. */
|
|
765
|
+
onPressedChange?: (pressed: boolean, event: MouseEvent<HTMLButtonElement>) => void;
|
|
766
|
+
/**
|
|
767
|
+
* The total, shown beside the glyph and rolled when it changes. Pressing
|
|
768
|
+
* adds or removes the viewer's like at once, before your handler has saved
|
|
769
|
+
* it, and the button goes back to showing `count` exactly whenever `count`
|
|
770
|
+
* changes — so pass the server's total and update it when the save lands.
|
|
771
|
+
* Omit it for a bare glyph.
|
|
772
|
+
*/
|
|
773
|
+
count?: number;
|
|
774
|
+
/** How to write the count — `{ notation: "compact" }` for 1.2K. Passed to `Intl.NumberFormat`. */
|
|
775
|
+
format?: Intl.NumberFormatOptions;
|
|
776
|
+
/** The glyph, by icon name. Its `solid` variant is shown while pressed. @default "heart" */
|
|
777
|
+
icon?: string;
|
|
778
|
+
/**
|
|
779
|
+
* The palette family the glyph fills with while pressed; the burst blooms
|
|
780
|
+
* from it. A family, not a colour, so it follows the theme. @default "red"
|
|
781
|
+
*/
|
|
782
|
+
tone?: PaletteColor;
|
|
783
|
+
/** The accessible name, read before the count. @default "Like" */
|
|
784
|
+
label?: string;
|
|
785
|
+
/** @default "ghost" */
|
|
786
|
+
variant?: "ghost" | "outline" | "secondary";
|
|
787
|
+
/** @default "sm" */
|
|
788
|
+
size?: LabelledSize;
|
|
789
|
+
/**
|
|
790
|
+
* How much motion this component uses: `full` (default) inherits the app's
|
|
791
|
+
* policy, `subtle` keeps feedback and drops the flourish, `off` stills it.
|
|
792
|
+
* It can only turn motion down — it never overrides a reader's reduce-motion
|
|
793
|
+
* setting. The bloom and burst are the flourish; the fill and the count
|
|
794
|
+
* changing stay.
|
|
795
|
+
*/
|
|
796
|
+
motion?: MotionLevel;
|
|
797
|
+
}
|
|
798
|
+
/**
|
|
799
|
+
* LikeButton — a pressed-or-not toggle for a like, a star, a save. Pressing
|
|
800
|
+
* it on fills the glyph, which blooms past its size and settles while a ring
|
|
801
|
+
* and a spray of dots burst from it, and the count rolls up a digit. Pressing
|
|
802
|
+
* it off is quiet: the glyph empties and the count rolls back.
|
|
803
|
+
*
|
|
804
|
+
* <LikeButton count={post.likes} defaultPressed={post.liked} onPressedChange={(on) => save(on)} />
|
|
805
|
+
* <LikeButton icon="star" tone="yellow" label="Star" count={repo.stars} />
|
|
806
|
+
*
|
|
807
|
+
* A Sable Button carrying `aria-pressed`, with Toggle's controlled/uncontrolled
|
|
808
|
+
* contract (`pressed` / `defaultPressed` / `onPressedChange`). It composes
|
|
809
|
+
* Button rather than Toggle: Toggle's pressed fill is the one thing a like
|
|
810
|
+
* must not show — its state is the glyph.
|
|
811
|
+
*/
|
|
812
|
+
declare function LikeButton({ className, count, format, icon, tone, label, variant, size, motion, pressed: pressedProp, defaultPressed, onPressedChange, onClick, ...props }: LikeButtonProps): react.JSX.Element;
|
|
813
|
+
declare namespace LikeButton {
|
|
814
|
+
var displayName: string;
|
|
815
|
+
}
|
|
816
|
+
|
|
817
|
+
declare const likeButtonMeta: ComponentMeta;
|
|
818
|
+
|
|
646
819
|
interface CardProps extends ComponentPropsWithRef<"div"> {
|
|
647
820
|
/** "default" = raised surface (bg-card + edge + soft shadow). "flat" = transparent. */
|
|
648
821
|
variant?: "default" | "flat";
|
|
@@ -1306,7 +1479,9 @@ interface InputProps$1 extends Omit<ComponentPropsWithRef<"input">, "size"> {
|
|
|
1306
1479
|
}
|
|
1307
1480
|
/**
|
|
1308
1481
|
* Input — a styled native `<input>`. Soft-square (rounded-sm, 8px), never a pill.
|
|
1309
|
-
*
|
|
1482
|
+
* Wears the theme's field surface (`field` fill, 1px `field-border` outline — outlined
|
|
1483
|
+
* on the card by default, a filled well in a theme that fills its fields); focus
|
|
1484
|
+
* raises a 2px ring.
|
|
1310
1485
|
* Set `aria-invalid` (Base UI form fields do this for you) to surface the
|
|
1311
1486
|
* destructive error treatment on border + ring.
|
|
1312
1487
|
*
|
|
@@ -1375,7 +1550,7 @@ interface TextareaProps extends ComponentPropsWithRef<"textarea"> {
|
|
|
1375
1550
|
}
|
|
1376
1551
|
/**
|
|
1377
1552
|
* Textarea — a styled native multi-line text control. Soft-square (rounded-sm,
|
|
1378
|
-
* like all inputs, never a pill). Sits on the
|
|
1553
|
+
* like all inputs, never a pill). Sits on the field surface with a 1px field
|
|
1379
1554
|
* border; the focus ring uses the --ring token. Set `aria-invalid` to surface
|
|
1380
1555
|
* the destructive error treatment on border + ring (same as Input). Pass `autoResize` to grow with content.
|
|
1381
1556
|
*
|
|
@@ -2452,6 +2627,12 @@ type RootProps$3 = Omit<ComponentProps<typeof Meter$1.Root>, "className"> & {
|
|
|
2452
2627
|
strokeWidth?: number;
|
|
2453
2628
|
/** Print the value in the ring's centre. */
|
|
2454
2629
|
showValue?: boolean;
|
|
2630
|
+
/**
|
|
2631
|
+
* Draw the bar as this many separate ticks instead of a continuous fill —
|
|
2632
|
+
* a quota, score or spend limit read at a glance (▮▮▮▮▮▮▯▯▯▯). Any reading
|
|
2633
|
+
* above `min` fills at least one tick. Bar only: ignored for `shape="ring"`.
|
|
2634
|
+
*/
|
|
2635
|
+
segments?: number;
|
|
2455
2636
|
};
|
|
2456
2637
|
/**
|
|
2457
2638
|
* Meter — a static measurement within a known range, over Base UI's Meter.
|
|
@@ -2473,8 +2654,10 @@ type RootProps$3 = Omit<ComponentProps<typeof Meter$1.Root>, "className"> & {
|
|
|
2473
2654
|
* </Meter>
|
|
2474
2655
|
*
|
|
2475
2656
|
* `shape="ring"` draws the same measurement as a circular gauge (it was Gauge).
|
|
2657
|
+
* `segments={20}` draws the bar as a row of ticks — a spend limit or a score
|
|
2658
|
+
* read at a glance (bar only).
|
|
2476
2659
|
*/
|
|
2477
|
-
declare function Meter({ className, children, tone, shape, size, strokeWidth, showValue, ...props }: RootProps$3): react.JSX.Element;
|
|
2660
|
+
declare function Meter({ className, children, tone, shape, size, strokeWidth, showValue, segments, ...props }: RootProps$3): react.JSX.Element;
|
|
2478
2661
|
declare namespace Meter {
|
|
2479
2662
|
var displayName: string;
|
|
2480
2663
|
}
|
|
@@ -2483,7 +2666,11 @@ type TrackProps$1 = Omit<ComponentProps<typeof Meter$1.Track>, "className"> & {
|
|
|
2483
2666
|
/** Bar thickness. Inherits the Meter's `size` unless set here. @default "md" */
|
|
2484
2667
|
size?: MeterSize;
|
|
2485
2668
|
};
|
|
2486
|
-
/**
|
|
2669
|
+
/**
|
|
2670
|
+
* The rail. Renders a MeterIndicator child by default — or, when the Meter has
|
|
2671
|
+
* `segments`, its row of ticks (children are not rendered then: there is no
|
|
2672
|
+
* single fill to put in it).
|
|
2673
|
+
*/
|
|
2487
2674
|
declare function MeterTrack({ className, children, size, ...props }: TrackProps$1): react.JSX.Element;
|
|
2488
2675
|
declare namespace MeterTrack {
|
|
2489
2676
|
var displayName: string;
|
|
@@ -2663,9 +2850,9 @@ declare const CHART_SERIES_COUNT = 8;
|
|
|
2663
2850
|
declare function chartColor(index: number): string;
|
|
2664
2851
|
/**
|
|
2665
2852
|
* The CSS colour for a tone as a chart fill — for a series that names its role
|
|
2666
|
-
* (`tone: "success"`), not for default series (see chartColor).
|
|
2667
|
-
*
|
|
2668
|
-
*
|
|
2853
|
+
* (`tone: "success"`), not for default series (see chartColor). Status and
|
|
2854
|
+
* decorative tones plot at graphic strength (their `-mark` tokens, which each
|
|
2855
|
+
* theme tunes), held in the chart lightness band with a chroma floor, so a quiet
|
|
2669
2856
|
* tone (a slate "3") still reads as colour rather than grey.
|
|
2670
2857
|
*/
|
|
2671
2858
|
declare function toneColor(tone: ChartTone): string;
|
|
@@ -4177,7 +4364,7 @@ declare const datePickerMeta: ComponentMeta;
|
|
|
4177
4364
|
* binds it via Base UI's `toastManager` prop.
|
|
4178
4365
|
*/
|
|
4179
4366
|
declare const toastManager: _base_ui_react.ToastManager<any>;
|
|
4180
|
-
/** Visual/semantic type of a toast — drives the
|
|
4367
|
+
/** Visual/semantic type of a toast — drives the status glyph and (for loading) a spinner. */
|
|
4181
4368
|
type ToastType = "success" | "error" | "warning" | "info" | "loading";
|
|
4182
4369
|
/** Screen anchor for the toast stack. */
|
|
4183
4370
|
type ToastPosition = "top-left" | "top-center" | "top-right" | "bottom-left" | "bottom-center" | "bottom-right";
|
|
@@ -4616,7 +4803,16 @@ interface ComboboxItemGroup<Item = unknown> {
|
|
|
4616
4803
|
/** The rows under it. */
|
|
4617
4804
|
items: readonly Item[];
|
|
4618
4805
|
}
|
|
4619
|
-
type ComboboxProps<Value, Multiple extends boolean | undefined = false> = ComboboxRootProps<Value, Multiple
|
|
4806
|
+
type ComboboxProps<Value, Multiple extends boolean | undefined = false> = ComboboxRootProps<Value, Multiple> & {
|
|
4807
|
+
/**
|
|
4808
|
+
* Paint the typed text wherever it appears in a row's label, on the
|
|
4809
|
+
* `highlight` token pair. Only typed text: a field that still holds the
|
|
4810
|
+
* selected item's label lists everything, and lighting that label in every
|
|
4811
|
+
* row would mark matches nobody searched for. See useMatchHighlight.
|
|
4812
|
+
* @default true
|
|
4813
|
+
*/
|
|
4814
|
+
highlightMatches?: boolean;
|
|
4815
|
+
};
|
|
4620
4816
|
/**
|
|
4621
4817
|
* Root of the combobox. Owns selection, input value, filtering and open state —
|
|
4622
4818
|
* all of it Base UI's, passed straight through.
|
|
@@ -4627,7 +4823,7 @@ type ComboboxProps<Value, Multiple extends boolean | undefined = false> = Combob
|
|
|
4627
4823
|
* highlight is forwarded to the virtual list, which knows every row's offset
|
|
4628
4824
|
* whether or not it exists. Your own `onItemHighlighted` still fires, first.
|
|
4629
4825
|
*/
|
|
4630
|
-
declare function Combobox<Value, Multiple extends boolean | undefined = false>({ onItemHighlighted, ...props }: ComboboxProps<Value, Multiple>): react.JSX.Element;
|
|
4826
|
+
declare function Combobox<Value, Multiple extends boolean | undefined = false>({ onItemHighlighted, onInputValueChange, highlightMatches, ...props }: ComboboxProps<Value, Multiple>): react.JSX.Element;
|
|
4631
4827
|
declare const ComboboxValue: typeof Combobox$1.Value;
|
|
4632
4828
|
declare const ComboboxClear: react.ForwardRefExoticComponent<Omit<_base_ui_react.AutocompleteClearProps, "ref"> & react.RefAttributes<HTMLButtonElement>>;
|
|
4633
4829
|
declare const ComboboxPortal: {
|
|
@@ -4706,7 +4902,7 @@ type ContentProps$2 = Omit<ComponentProps<typeof Combobox$1.Popup>, "className">
|
|
|
4706
4902
|
* callers pass items/children directly. Defaults to the `bottom` side, `start`
|
|
4707
4903
|
* aligned, 6px offset; matches the input width via `--anchor-width`.
|
|
4708
4904
|
*/
|
|
4709
|
-
declare function ComboboxContent({ className, children, side, align, sideOffset, scroll, ...props }: ContentProps$2): react.JSX.Element;
|
|
4905
|
+
declare function ComboboxContent({ className, children, side, align, sideOffset, scroll, ref, ...props }: ContentProps$2): react.JSX.Element;
|
|
4710
4906
|
type ItemProps$1 = Omit<ComponentProps<typeof Combobox$1.Item>, "className"> & {
|
|
4711
4907
|
className?: string;
|
|
4712
4908
|
};
|
|
@@ -5949,6 +6145,9 @@ declare function hueColor(h: number): string;
|
|
|
5949
6145
|
|
|
5950
6146
|
declare const colorFieldMeta: ComponentMeta;
|
|
5951
6147
|
|
|
6148
|
+
/** How AppShell frames its main content on desktop. See `AppShellProps.frame`. */
|
|
6149
|
+
type AppShellFrame = "flush" | "inset";
|
|
6150
|
+
|
|
5952
6151
|
interface AppShellProps extends Omit<ComponentProps<"div">, "title"> {
|
|
5953
6152
|
/**
|
|
5954
6153
|
* Full-width status banners pinned above the frame (offline / chain-down).
|
|
@@ -5981,6 +6180,23 @@ interface AppShellProps extends Omit<ComponentProps<"div">, "title"> {
|
|
|
5981
6180
|
dock?: ReactNode;
|
|
5982
6181
|
/** Floating overlays (a message launcher, FAB, modal mount points). */
|
|
5983
6182
|
overlays?: ReactNode;
|
|
6183
|
+
/**
|
|
6184
|
+
* How the desktop frame (`lg` and up) holds the content. Below `lg` the two
|
|
6185
|
+
* are identical: mobile header, plain main, page scroll, bottom nav.
|
|
6186
|
+
* - `flush` (default) — main sits directly on the page beside the rail and
|
|
6187
|
+
* the document scrolls.
|
|
6188
|
+
* - `inset` — the shell's ground (`shell-ground`, one step off the rail's
|
|
6189
|
+
* surface) holds the rail and the gap, and main
|
|
6190
|
+
* is a raised, rounded, bordered panel inset from the window edges that
|
|
6191
|
+
* scrolls inside itself while the rail stays put. For dense, multi-pane
|
|
6192
|
+
* product apps. The Sidebar in the `sidebar` slot reads the frame (see
|
|
6193
|
+
* `app-shell-frame.tsx`), drops its right border — the gap is the divider
|
|
6194
|
+
* now — and fills the body row. Pair it with `surface="rail"`; with
|
|
6195
|
+
* `surface="page"` the ground turns page-coloured and the panel's border
|
|
6196
|
+
* alone lifts it.
|
|
6197
|
+
* @default "flush"
|
|
6198
|
+
*/
|
|
6199
|
+
frame?: AppShellFrame;
|
|
5984
6200
|
/** Main content. */
|
|
5985
6201
|
children?: ReactNode;
|
|
5986
6202
|
}
|
|
@@ -5992,7 +6208,9 @@ interface AppShellProps extends Omit<ComponentProps<"div">, "title"> {
|
|
|
5992
6208
|
* It is layout-agnostic about the breakpoint switch: each slot component owns
|
|
5993
6209
|
* its own `hidden`/`lg:*` visibility (Sidebar is `hidden lg:flex`, AppHeader and
|
|
5994
6210
|
* BottomNav are `lg:hidden`), so the same shell drives mobile and desktop. The
|
|
5995
|
-
* only
|
|
6211
|
+
* only couplings AppShell adds are reserving bottom space for a fixed
|
|
6212
|
+
* `bottomNav` and, with `frame="inset"`, telling the Sidebar in its slot to drop
|
|
6213
|
+
* its border and fill the row (`AppShellFrameProvider`, app-shell-frame.tsx).
|
|
5996
6214
|
*
|
|
5997
6215
|
* <AppShell
|
|
5998
6216
|
* banners={<NetworkBanner />}
|
|
@@ -6003,7 +6221,7 @@ interface AppShellProps extends Omit<ComponentProps<"div">, "title"> {
|
|
|
6003
6221
|
* <Region max="feed">…</Region>
|
|
6004
6222
|
* </AppShell>
|
|
6005
6223
|
*/
|
|
6006
|
-
declare function AppShell({ banners, header, sidebar, bottomNav, dock, overlays, className, children, ...rest }: AppShellProps): react.JSX.Element;
|
|
6224
|
+
declare function AppShell({ banners, header, sidebar, bottomNav, dock, overlays, frame, className, children, ...rest }: AppShellProps): react.JSX.Element;
|
|
6007
6225
|
declare namespace AppShell {
|
|
6008
6226
|
var displayName: string;
|
|
6009
6227
|
}
|
|
@@ -6080,6 +6298,12 @@ interface SidebarProps extends ComponentPropsWithRef<"aside"> {
|
|
|
6080
6298
|
* - `page` — the page's own surface and ink, no border. Use it when a
|
|
6081
6299
|
* full-width header sits above the rail: a tinted column that starts
|
|
6082
6300
|
* under a page-coloured bar reads as pasted on, not as chrome.
|
|
6301
|
+
*
|
|
6302
|
+
* Inside `<AppShell frame="inset">` the rail's surface is also the shell's
|
|
6303
|
+
* ground, so from `lg` the `rail` border is dropped (the gap around the main
|
|
6304
|
+
* panel divides them) and the rail fills the shell's body row rather than
|
|
6305
|
+
* sizing itself to the viewport. AppShell signals this through its
|
|
6306
|
+
* `sidebar` slot only (`useAppShellFrame`), so a rail elsewhere is unaffected.
|
|
6083
6307
|
* @default "rail"
|
|
6084
6308
|
*/
|
|
6085
6309
|
surface?: "rail" | "page";
|
|
@@ -6425,7 +6649,7 @@ interface SearchInputProps extends Omit<ComponentPropsWithRef<"input">, "onChang
|
|
|
6425
6649
|
}
|
|
6426
6650
|
/**
|
|
6427
6651
|
* SearchInput — a styled search field with a leading magnifier and a clearable
|
|
6428
|
-
* X. Soft-square (rounded-sm),
|
|
6652
|
+
* X. Soft-square (rounded-sm), field surface, 2px focus ring — same shell as
|
|
6429
6653
|
* Input, padded to make room for the leading and trailing affordances. The
|
|
6430
6654
|
* clear button only renders while the value is non-empty.
|
|
6431
6655
|
*
|
|
@@ -7532,6 +7756,14 @@ interface CommandMenuProps extends Omit<ComponentPropsWithRef<"div">, "title"> {
|
|
|
7532
7756
|
* self-filtering — if you own which rows exist, you own all of them.
|
|
7533
7757
|
*/
|
|
7534
7758
|
filter?: CommandFilter;
|
|
7759
|
+
/**
|
|
7760
|
+
* Paint the query wherever it appears in a row's label, on the `highlight`
|
|
7761
|
+
* token pair. A literal, case-insensitive match — so under a fuzzy `filter`
|
|
7762
|
+
* a row that matched as a subsequence keeps an unpainted label, which is
|
|
7763
|
+
* honest: nothing in it reads as the query. See useMatchHighlight.
|
|
7764
|
+
* @default true
|
|
7765
|
+
*/
|
|
7766
|
+
highlightMatches?: boolean;
|
|
7535
7767
|
/**
|
|
7536
7768
|
* Classes for the scrolling list, which is a `Scroller` — so `className`
|
|
7537
7769
|
* (which lands on the dialog surface) cannot reach it, and the list's own
|
|
@@ -7620,7 +7852,7 @@ type CommandMenuPanelProps = Omit<CommandMenuProps, "open" | "onOpenChange" | "f
|
|
|
7620
7852
|
* top-aligned Dialog with a combobox search header and a scrollable listbox of
|
|
7621
7853
|
* command options.
|
|
7622
7854
|
*/
|
|
7623
|
-
declare function CommandMenu({ open, onOpenChange, items, query: queryProp, onQueryChange, filter, listClassName, placeholder, emptyMessage, title, description, finalFocus, scope, inputProps, children, className, ...props }: CommandMenuProps): react.JSX.Element;
|
|
7855
|
+
declare function CommandMenu({ open, onOpenChange, items, query: queryProp, onQueryChange, filter, highlightMatches, listClassName, placeholder, emptyMessage, title, description, finalFocus, scope, inputProps, children, className, ...props }: CommandMenuProps): react.JSX.Element;
|
|
7624
7856
|
/**
|
|
7625
7857
|
* The same palette rendered in place: search header, filtered and grouped
|
|
7626
7858
|
* listbox, the full keyboard model — on a card in the page instead of in a
|
|
@@ -7634,7 +7866,7 @@ declare function CommandMenu({ open, onOpenChange, items, query: queryProp, onQu
|
|
|
7634
7866
|
* once the query is empty, so a Popover around the panel still closes on it.
|
|
7635
7867
|
* Choosing a row runs its onSelect and leaves the panel as it was.
|
|
7636
7868
|
*/
|
|
7637
|
-
declare function CommandMenuPanel({ items, query: queryProp, onQueryChange, filter, listClassName, placeholder, emptyMessage, title, scope, inputProps, children, className, ...props }: CommandMenuPanelProps): react.JSX.Element;
|
|
7869
|
+
declare function CommandMenuPanel({ items, query: queryProp, onQueryChange, filter, highlightMatches, listClassName, placeholder, emptyMessage, title, scope, inputProps, children, className, ...props }: CommandMenuPanelProps): react.JSX.Element;
|
|
7638
7870
|
interface CommandMenuGroupProps extends Omit<ComponentPropsWithRef<"div">, "title"> {
|
|
7639
7871
|
/** Group heading shown above the items. */
|
|
7640
7872
|
label: string;
|
|
@@ -7714,7 +7946,7 @@ interface CommandMenuTriggerProps extends Omit<ComponentPropsWithRef<"button">,
|
|
|
7714
7946
|
}
|
|
7715
7947
|
/**
|
|
7716
7948
|
* CommandMenuTrigger — the search field in a header that is really a button:
|
|
7717
|
-
* it wears SearchInput's shell (
|
|
7949
|
+
* it wears SearchInput's shell (the field fill and outline, leading magnifier,
|
|
7718
7950
|
* muted placeholder) and opens a `CommandMenu` on click or on ⌘K / Ctrl+K.
|
|
7719
7951
|
*
|
|
7720
7952
|
* const [open, setOpen] = useState(false)
|
|
@@ -8324,6 +8556,8 @@ type ArtVariant = "mesh" | "grain";
|
|
|
8324
8556
|
|
|
8325
8557
|
/** The decorative tones art can be painted from — the palette's `--tone-*` family. */
|
|
8326
8558
|
type ArtTone = "info" | "3" | "2" | "1" | "warning";
|
|
8559
|
+
/** How strongly the art is painted: the preset's art as-is, or a pastel wash of it. */
|
|
8560
|
+
type ArtIntensity = "vivid" | "soft";
|
|
8327
8561
|
interface GradientArtProps extends ComponentProps<"div"> {
|
|
8328
8562
|
/**
|
|
8329
8563
|
* `mesh` (default) — soft spots of colour pulled together by gentle waves
|
|
@@ -8342,6 +8576,14 @@ interface GradientArtProps extends ComponentProps<"div"> {
|
|
|
8342
8576
|
* item keeps its own look across renders and reloads.
|
|
8343
8577
|
*/
|
|
8344
8578
|
seed?: string | number;
|
|
8579
|
+
/**
|
|
8580
|
+
* `vivid` (default) paints the preset's art at full strength. `soft` turns
|
|
8581
|
+
* every colour and the ground into a light pastel of itself — a wash to
|
|
8582
|
+
* stage white chips, logo tiles or a card's header band on, in light and
|
|
8583
|
+
* dark alike. It is a light ground: put content on a card or chip over it,
|
|
8584
|
+
* not overlay-foreground text straight on it.
|
|
8585
|
+
*/
|
|
8586
|
+
intensity?: ArtIntensity;
|
|
8345
8587
|
}
|
|
8346
8588
|
/**
|
|
8347
8589
|
* GradientArt — placeholder artwork painted from the theme's art direction:
|
|
@@ -8358,7 +8600,7 @@ interface GradientArtProps extends ComponentProps<"div"> {
|
|
|
8358
8600
|
*
|
|
8359
8601
|
* Children render above the art: initials, a play glyph, a caption.
|
|
8360
8602
|
*/
|
|
8361
|
-
declare function GradientArt({ variant, tones, seed, className, style, children, ...props }: GradientArtProps): react.JSX.Element;
|
|
8603
|
+
declare function GradientArt({ variant, tones, seed, intensity, className, style, children, ...props }: GradientArtProps): react.JSX.Element;
|
|
8362
8604
|
declare namespace GradientArt {
|
|
8363
8605
|
var displayName: string;
|
|
8364
8606
|
}
|
|
@@ -8937,6 +9179,68 @@ declare namespace Message {
|
|
|
8937
9179
|
|
|
8938
9180
|
declare const messageMeta: ComponentMeta;
|
|
8939
9181
|
|
|
9182
|
+
/** One choice in a reaction picker: the emoji and the name a screen reader says for it. */
|
|
9183
|
+
interface Reaction {
|
|
9184
|
+
emoji: string;
|
|
9185
|
+
/** The accessible name, e.g. "Heart". An emoji's own spoken name varies by platform. */
|
|
9186
|
+
label: string;
|
|
9187
|
+
}
|
|
9188
|
+
/** The quick set a picker offers when you pass none — the reactions most chats lead with. */
|
|
9189
|
+
declare const DEFAULT_REACTIONS: readonly Reaction[];
|
|
9190
|
+
interface ReactionChoiceProps {
|
|
9191
|
+
/** The choices, in order. @default DEFAULT_REACTIONS */
|
|
9192
|
+
reactions?: readonly Reaction[];
|
|
9193
|
+
/** The emoji the reader has already reacted with: shown pressed, and choosing one again removes it. */
|
|
9194
|
+
selected?: readonly string[];
|
|
9195
|
+
/** Called with the emoji the reader chose. Toggle it in or out of `selected`. */
|
|
9196
|
+
onSelect?: (emoji: string) => void;
|
|
9197
|
+
/**
|
|
9198
|
+
* How much motion this component uses: `full` (default) inherits the app's
|
|
9199
|
+
* policy, `subtle` keeps the press and drops the wave of emoji blooming in,
|
|
9200
|
+
* `off` stills it. It can only turn motion down.
|
|
9201
|
+
*/
|
|
9202
|
+
motion?: MotionLevel;
|
|
9203
|
+
}
|
|
9204
|
+
interface ReactionPickerProps extends ReactionChoiceProps, Omit<ToolbarProps, "children" | "onSelect"> {
|
|
9205
|
+
/** Trailing controls after the emoji — a "more" button that opens a full picker. */
|
|
9206
|
+
children?: ReactNode;
|
|
9207
|
+
}
|
|
9208
|
+
/**
|
|
9209
|
+
* ReactionPicker — the quick row of emoji you react to a message with. A
|
|
9210
|
+
* toolbar: one stop in the tab order, the arrow keys move along it, and each
|
|
9211
|
+
* emoji is a toggle reporting `aria-pressed`. Opening it plays a short wave as
|
|
9212
|
+
* the emoji bloom in one after another, and the one under the pointer
|
|
9213
|
+
* magnifies. Put it in a Popover from an add-reaction control — or use
|
|
9214
|
+
* `BubbleReactionAdd`, which is exactly that — and use `MenuReactions` for the
|
|
9215
|
+
* same row inside a right-click menu.
|
|
9216
|
+
*
|
|
9217
|
+
* <ReactionPicker selected={mine} onSelect={(emoji) => toggle(message.id, emoji)} />
|
|
9218
|
+
*/
|
|
9219
|
+
declare function ReactionPicker({ reactions, selected, onSelect, motion, className, children, "aria-label": ariaLabel, ...props }: ReactionPickerProps): react.JSX.Element;
|
|
9220
|
+
declare namespace ReactionPicker {
|
|
9221
|
+
var displayName: string;
|
|
9222
|
+
}
|
|
9223
|
+
interface MenuReactionsProps extends ReactionChoiceProps, Omit<ComponentProps<typeof Menu$1.Group>, "className" | "children" | "onSelect"> {
|
|
9224
|
+
className?: string;
|
|
9225
|
+
}
|
|
9226
|
+
/**
|
|
9227
|
+
* The same quick row as the first group of a menu — the reactions above Reply
|
|
9228
|
+
* and Copy when a message is right-clicked or long-pressed. Each emoji is a
|
|
9229
|
+
* checkbox menu item (checked when the reader has reacted with it), so the
|
|
9230
|
+
* arrow keys and typeahead reach it like any other row, and choosing one
|
|
9231
|
+
* closes the menu. Works in `MenuContent` and `ContextMenuContent` alike.
|
|
9232
|
+
*
|
|
9233
|
+
* <ContextMenuContent>
|
|
9234
|
+
* <MenuReactions selected={mine} onSelect={toggle} />
|
|
9235
|
+
* <ContextMenuSeparator />
|
|
9236
|
+
* <ContextMenuItem>Reply</ContextMenuItem>
|
|
9237
|
+
* </ContextMenuContent>
|
|
9238
|
+
*/
|
|
9239
|
+
declare function MenuReactions({ reactions, selected, onSelect, motion, className, "aria-label": ariaLabel, ...props }: MenuReactionsProps): react.JSX.Element;
|
|
9240
|
+
declare namespace MenuReactions {
|
|
9241
|
+
var displayName: string;
|
|
9242
|
+
}
|
|
9243
|
+
|
|
8940
9244
|
interface BubbleProps extends ComponentPropsWithRef<"div"> {
|
|
8941
9245
|
/**
|
|
8942
9246
|
* Surface treatment. `muted` for the other party, `primary` for the reader's
|
|
@@ -8971,8 +9275,9 @@ interface BubbleProps extends ComponentPropsWithRef<"div"> {
|
|
|
8971
9275
|
* <Message>
|
|
8972
9276
|
* <Bubble>Shipping it now.</Bubble>
|
|
8973
9277
|
* <BubbleReactions>
|
|
8974
|
-
* <BubbleReaction emoji="🎉" count={3} active onClick={() => toggle("🎉")} />
|
|
8975
|
-
* <BubbleReaction emoji="👀" count={1} onClick={() => toggle("👀")} />
|
|
9278
|
+
* <BubbleReaction emoji="🎉" label="Party" count={3} active onClick={() => toggle("🎉")} />
|
|
9279
|
+
* <BubbleReaction emoji="👀" label="Eyes" count={1} onClick={() => toggle("👀")} />
|
|
9280
|
+
* <BubbleReactionAdd selected={mine} onSelect={toggle} />
|
|
8976
9281
|
* </BubbleReactions>
|
|
8977
9282
|
* </Message>
|
|
8978
9283
|
*
|
|
@@ -8989,31 +9294,82 @@ interface BubbleReactionsProps extends ComponentPropsWithRef<"div"> {
|
|
|
8989
9294
|
/** Match the enclosing `<Bubble align>` so the row hangs off the right edge. @default "start" */
|
|
8990
9295
|
align?: "start" | "end";
|
|
8991
9296
|
}
|
|
8992
|
-
/**
|
|
8993
|
-
|
|
9297
|
+
/**
|
|
9298
|
+
* The row of reaction pills belonging to one bubble. Render it for every
|
|
9299
|
+
* message, even one with no reactions yet: it hides itself while empty, and
|
|
9300
|
+
* staying mounted is how it knows the first reaction someone adds is new
|
|
9301
|
+
* (and so celebrates) rather than one the page loaded with.
|
|
9302
|
+
*/
|
|
9303
|
+
declare function BubbleReactions({ align, className, children, ...props }: BubbleReactionsProps): react.JSX.Element;
|
|
8994
9304
|
declare namespace BubbleReactions {
|
|
8995
9305
|
var displayName: string;
|
|
8996
9306
|
}
|
|
8997
9307
|
interface BubbleReactionProps extends Omit<ComponentPropsWithRef<"button">, "children"> {
|
|
8998
9308
|
/** The reaction glyph. Rendered as text, so any emoji works with no icon mapping. */
|
|
8999
9309
|
emoji: ReactNode;
|
|
9310
|
+
/**
|
|
9311
|
+
* What the emoji means, for the accessible name ("Party, 3"). An emoji's own
|
|
9312
|
+
* spoken name varies by platform; without a label the pill is named by its
|
|
9313
|
+
* count alone.
|
|
9314
|
+
*/
|
|
9315
|
+
label?: string;
|
|
9000
9316
|
/** How many people reacted this way. Hidden at 1 — the pill already says "one". */
|
|
9001
9317
|
count?: number;
|
|
9002
9318
|
/** The reader reacted this way. Drives `aria-pressed`, not just the styling. */
|
|
9003
9319
|
active?: boolean;
|
|
9320
|
+
/**
|
|
9321
|
+
* How much motion this component uses: `full` (default) inherits the app's
|
|
9322
|
+
* policy, `subtle` keeps the tint and the count changing and drops the
|
|
9323
|
+
* bloom and the spray of emoji, `off` stills it. It can only turn motion down.
|
|
9324
|
+
*/
|
|
9325
|
+
motion?: MotionLevel;
|
|
9004
9326
|
}
|
|
9005
9327
|
/**
|
|
9006
9328
|
* One reaction pill — a toggle, not a label. It reports `aria-pressed` because
|
|
9007
9329
|
* "did I react to this" is state a screen-reader user needs before deciding
|
|
9008
9330
|
* whether pressing it adds or removes their reaction.
|
|
9331
|
+
*
|
|
9332
|
+
* When it becomes the reader's own — pressed on, or added from a picker — the
|
|
9333
|
+
* emoji blooms and a spray of copies of it bursts out, the way a chat app
|
|
9334
|
+
* answers a reaction, and the count rolls. Pressing it off is quiet. A pill
|
|
9335
|
+
* the page loads with never plays.
|
|
9009
9336
|
*/
|
|
9010
|
-
declare function BubbleReaction({ emoji, count, active, className, ...props }: BubbleReactionProps): react.JSX.Element;
|
|
9337
|
+
declare function BubbleReaction({ emoji, label, count, active, motion, className, ...props }: BubbleReactionProps): react.JSX.Element;
|
|
9011
9338
|
declare namespace BubbleReaction {
|
|
9012
9339
|
var displayName: string;
|
|
9013
9340
|
}
|
|
9341
|
+
interface BubbleReactionAddProps extends Omit<ComponentPropsWithRef<"button">, "children" | "onSelect"> {
|
|
9342
|
+
/** The choices the picker offers. @default DEFAULT_REACTIONS */
|
|
9343
|
+
reactions?: readonly Reaction[];
|
|
9344
|
+
/** The emoji the reader has already reacted with, shown pressed in the picker. */
|
|
9345
|
+
selected?: readonly string[];
|
|
9346
|
+
/** Called with the emoji the reader chose; the picker closes. Toggle it in or out of `selected`. */
|
|
9347
|
+
onSelect?: (emoji: string) => void;
|
|
9348
|
+
/** The accessible name. @default "Add reaction" */
|
|
9349
|
+
label?: string;
|
|
9350
|
+
/** Passed to the picker: how much motion it uses. */
|
|
9351
|
+
motion?: MotionLevel;
|
|
9352
|
+
}
|
|
9353
|
+
/**
|
|
9354
|
+
* The add-reaction pill at the end of a reaction row: a smiley that opens a
|
|
9355
|
+
* ReactionPicker above it. Choosing an emoji closes the picker and hands the
|
|
9356
|
+
* emoji to `onSelect`; add it to the row and the new pill celebrates as it
|
|
9357
|
+
* arrives.
|
|
9358
|
+
*
|
|
9359
|
+
* <BubbleReactions>
|
|
9360
|
+
* {pills}
|
|
9361
|
+
* <BubbleReactionAdd selected={mine} onSelect={toggle} />
|
|
9362
|
+
* </BubbleReactions>
|
|
9363
|
+
*/
|
|
9364
|
+
declare function BubbleReactionAdd({ reactions, selected, onSelect, label, motion, className, ...props }: BubbleReactionAddProps): react.JSX.Element;
|
|
9365
|
+
declare namespace BubbleReactionAdd {
|
|
9366
|
+
var displayName: string;
|
|
9367
|
+
}
|
|
9014
9368
|
|
|
9015
9369
|
declare const bubbleMeta: ComponentMeta;
|
|
9016
9370
|
|
|
9371
|
+
declare const reactionPickerMeta: ComponentMeta;
|
|
9372
|
+
|
|
9017
9373
|
interface AttachmentProps extends Omit<ComponentPropsWithRef<"div">, "onClick"> {
|
|
9018
9374
|
/**
|
|
9019
9375
|
* File name. When it runs out of room the stem truncates and the extension
|
|
@@ -9397,6 +9753,45 @@ declare function usePresentation(): Presentation;
|
|
|
9397
9753
|
*/
|
|
9398
9754
|
declare function useScrollActivity(): (node: HTMLElement | null) => void;
|
|
9399
9755
|
|
|
9756
|
+
/**
|
|
9757
|
+
* useMatchHighlight — paint every occurrence of a query inside a region, without
|
|
9758
|
+
* touching the region's DOM.
|
|
9759
|
+
*
|
|
9760
|
+
* const results = useMatchHighlight<HTMLUListElement>(query)
|
|
9761
|
+
* <SearchInput value={query} onValueChange={setQuery} />
|
|
9762
|
+
* <ul ref={results}>{rows}</ul>
|
|
9763
|
+
*
|
|
9764
|
+
* The obvious way to mark a match is to split the label around it and wrap the
|
|
9765
|
+
* hit in a `<mark>`. That means every row renders its label as three nodes, the
|
|
9766
|
+
* component owning the row has to know the query, and the text a screen reader
|
|
9767
|
+
* walks is cut into fragments. The CSS Custom Highlight API marks a Range
|
|
9768
|
+
* instead: the text nodes stay exactly as React rendered them, and the paint is
|
|
9769
|
+
* `::highlight(sable-match)` in styles.css, on the `highlight` token pair —
|
|
9770
|
+
* whose stated intent is search hits.
|
|
9771
|
+
*
|
|
9772
|
+
* Returns a callback ref rather than taking a ref object, because the regions
|
|
9773
|
+
* this is for (a popup list, a results panel) usually mount after the component
|
|
9774
|
+
* holding the query does, and an effect keyed on the query never sees a ref
|
|
9775
|
+
* object fill in.
|
|
9776
|
+
*
|
|
9777
|
+
* Matching is case-insensitive and literal, within one text node: a match split
|
|
9778
|
+
* across elements (`<b>Re</b>port`) is not painted. That is the same text the
|
|
9779
|
+
* built-in filters compare, so whatever survives a substring filter is lit.
|
|
9780
|
+
* `selector` narrows the search to parts of the region — a row's label and not
|
|
9781
|
+
* its shortcut hint.
|
|
9782
|
+
*
|
|
9783
|
+
* Purely visual, and that is fine here: the query is already in the field, and
|
|
9784
|
+
* the row's accessible name is unchanged. Where the API is missing it does
|
|
9785
|
+
* nothing at all.
|
|
9786
|
+
*/
|
|
9787
|
+
declare function useMatchHighlight<T extends Element = HTMLElement>(query: string, options?: UseMatchHighlightOptions): (element: T | null) => void;
|
|
9788
|
+
interface UseMatchHighlightOptions {
|
|
9789
|
+
/** Only search inside elements matching this, within the region. */
|
|
9790
|
+
selector?: string;
|
|
9791
|
+
/** Turn the paint off without unmounting anything. @default true */
|
|
9792
|
+
enabled?: boolean;
|
|
9793
|
+
}
|
|
9794
|
+
|
|
9400
9795
|
interface UseCopyOptions {
|
|
9401
9796
|
/** How long `copied` stays true after a successful copy, in ms. @default 1500 */
|
|
9402
9797
|
timeout?: number;
|
|
@@ -9485,60 +9880,6 @@ interface SmoothWheelOptions {
|
|
|
9485
9880
|
*/
|
|
9486
9881
|
declare function useSmoothWheel({ axis, mapVertical, smooth, }?: SmoothWheelOptions): (node: HTMLElement | null) => void;
|
|
9487
9882
|
|
|
9488
|
-
|
|
9489
|
-
* The palette: nine colour families and a scale under every tone, generated
|
|
9490
|
-
* for whatever theme is painting. `scripts/build-palette.mjs` writes this into
|
|
9491
|
-
* `src/palette.css`; `palette.test.ts` holds every built-in theme to it.
|
|
9492
|
-
*
|
|
9493
|
-
* The contract is roles, and roles are not enough for a product. Tags, avatars,
|
|
9494
|
-
* labels and illustration need more colours than three tones, and raw Tailwind
|
|
9495
|
-
* steps ignore the theme, so they were banned outright. These follow it:
|
|
9496
|
-
*
|
|
9497
|
-
* - A **family** (red, orange, yellow, green, teal, blue, purple, pink) keeps
|
|
9498
|
-
* its own hue and leans toward the brand by half the gap, at most 15°, and
|
|
9499
|
-
* only as far as the brand has colour to lean toward (an ink-black primary
|
|
9500
|
-
* pulls nothing). Material 3's harmonize, the same lean the customizer gives
|
|
9501
|
-
* status colours. Lightness and chroma are fixed per step, fitted inside sRGB
|
|
9502
|
-
* across the whole lean, so no brand can push a step out of gamut.
|
|
9503
|
-
* - **neutral** is the theme's own page and ink mixed in steps, so it carries
|
|
9504
|
-
* whatever tint the theme's surfaces do.
|
|
9505
|
-
* - Every **tone** (tone-1…3, info, warning, success, destructive) gets a scale
|
|
9506
|
-
* on one shared ladder of depths, and the tone lands exactly on the step
|
|
9507
|
-
* nearest its own lightness: a light status colour in dark mode is 800, a
|
|
9508
|
-
* mid one is 500. The steps either side stretch to keep the ladder's ends,
|
|
9509
|
-
* so a tone near one end does not crush five steps into the little room
|
|
9510
|
-
* left past it, and tone-1-100 and success-100 are the same depth.
|
|
9511
|
-
*
|
|
9512
|
-
* Steps follow the mode rather than literal lightness: a low step is always
|
|
9513
|
-
* near the page and a high step always far from it, so 800 text on a 100
|
|
9514
|
-
* wash reads in both modes with no `dark:` (Sable has none).
|
|
9515
|
-
*/
|
|
9516
|
-
declare const PALETTE_STEPS: readonly [50, 100, 200, 300, 400, 500, 600, 700, 800, 900, 950];
|
|
9517
|
-
type PaletteStep = (typeof PALETTE_STEPS)[number];
|
|
9518
|
-
interface PaletteFamily {
|
|
9519
|
-
name: string;
|
|
9520
|
-
/** The family's own hue, before the lean. */
|
|
9521
|
-
hue: number;
|
|
9522
|
-
/** Step 500, per mode: lightness and the chroma the family is aiming for. */
|
|
9523
|
-
light: {
|
|
9524
|
-
l: number;
|
|
9525
|
-
c: number;
|
|
9526
|
-
};
|
|
9527
|
-
dark: {
|
|
9528
|
-
l: number;
|
|
9529
|
-
c: number;
|
|
9530
|
-
};
|
|
9531
|
-
}
|
|
9532
|
-
declare const PALETTE_FAMILIES: readonly PaletteFamily[];
|
|
9533
|
-
/** The hue families by name — the values Badge, Pill and StatusDot take on `tone`. */
|
|
9534
|
-
declare const PALETTE_COLORS: readonly ["red", "orange", "yellow", "green", "teal", "blue", "purple", "pink"];
|
|
9535
|
-
type PaletteColor = (typeof PALETTE_COLORS)[number];
|
|
9536
|
-
declare const isPaletteColor: (value: unknown) => value is PaletteColor;
|
|
9537
|
-
/** Tokens that get a scale of their own, `--<token>-50` … `--<token>-950`. */
|
|
9538
|
-
declare const PALETTE_TONES: readonly ["tone-1", "tone-2", "tone-3", "tone-info", "tone-warning", "success", "destructive"];
|
|
9539
|
-
/** Everything the palette names: neutral, the families, then the tone scales. */
|
|
9540
|
-
declare const PALETTE_SCALES: readonly ["neutral", ...string[], "tone-1", "tone-2", "tone-3", "tone-info", "tone-warning", "success", "destructive"];
|
|
9541
|
-
|
|
9542
|
-
declare const SABLE_UI_VERSION: "0.14.0";
|
|
9883
|
+
declare const SABLE_UI_VERSION: "0.16.0";
|
|
9543
9884
|
|
|
9544
|
-
export { Accordion, AccordionItem, AccordionPanel, AccordionTrigger, AlertDialog, AlertDialogClose, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogTitle, AlertDialogTrigger, AppHeader, type AppHeaderProps, AppShell, type AppShellProps, AreaChart, type AreaChartProps, type ArtTone, Attachment, type AttachmentProps, Avatar, AvatarFallback, AvatarGroup, AvatarGroupCount, type AvatarGroupCountProps, type AvatarGroupProps, AvatarImage, type AvatarProps, AvatarRoot, BADGE_APPEARANCES, BADGE_TONES, Badge, type BadgeAppearance, type BadgeProps, type BadgeTone, Banner, type BannerProps, BarChart, type BarChartProps, BottomNav, BottomNavItem, type BottomNavItemProps, BreadcrumbItem, type BreadcrumbItemProps, BreadcrumbLink, type BreadcrumbLinkProps, BreadcrumbPage, type BreadcrumbPageProps, BreadcrumbSeparator, type BreadcrumbSeparatorProps, Breadcrumbs, type BreadcrumbsProps, Browser, type BrowserProps, Bubble, type BubbleProps, BubbleReaction, type BubbleReactionProps, BubbleReactions, type BubbleReactionsProps, Button, type ButtonBleed, ButtonGroup, type ButtonGroupProps, type ButtonProps, CHART_SERIES_COUNT, COMPONENT_GROUPS, COMPONENT_TAXONOMY, Calendar, type CalendarProps, Card, CardAction, CardContent, type CardContentProps, CardDescription, CardFooter, type CardFooterProps, CardHeader, CardList, type CardProps, CardTitle, type CardTitleProps, CaretMenu, CaretMenuItem, type CaretMenuItemProps, type CaretMenuProps, type CaretTrigger, type CaretTriggerField, type CaretTriggerMatch, Carousel, type CarouselProps, type CarouselSlidesToShow, type ChartCategories, type ChartCenterLabel, type ChartCurve, type ChartDatum, type ChartSeries, type ChartTone, type ChartTooltipIndicator, type ChartTooltipOptions, type ChartValueFormatter, ChatComposer, type ChatComposerProps, Checkbox, CheckboxCard, type CheckboxCardProps, type CheckboxCardTone, CheckboxGroup, type CheckboxGroupProps, Code, CodeBlock, type CodeBlockProps, CodeHighlightProvider, type CodeHighlighter, type CodeProps, Collapsible, CollapsibleIndicator, CollapsiblePanel, CollapsibleTrigger, ColorField, type ColorFieldProps, Combobox, ComboboxChips, ComboboxClear, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxGroupLabel, ComboboxInput, ComboboxItem, type ComboboxItemGroup, ComboboxItemIndicator, ComboboxList, ComboboxPortal, type ComboboxProps, ComboboxValue, ComboboxVirtualList, type ComboboxVirtualListProps, type CommandFilter, type CommandItem, CommandMenu, CommandMenuGroup, type CommandMenuGroupProps, CommandMenuItem, type CommandMenuItemProps, CommandMenuPanel, type CommandMenuPanelProps, type CommandMenuProps, CommandMenuTrigger, type CommandMenuTriggerProps, type ComponentGroup, type ComponentGuidance, ComponentMeta, type ComponentRegister, ConfirmButton, type ConfirmButtonProps, type ConstraintFlag, ContextCard, ContextCardArrow, ContextCardContent, ContextCardPortal, ContextCardTrigger, ContextMenu, ContextMenuContent, ContextMenuGroup, ContextMenuGroupLabel, ContextMenuItem, ContextMenuPortal, ContextMenuSeparator, ContextMenuTrigger, type CopySource, DataTable, type DataTableColumn, type DataTableProps, type DataTableRowKey, DatePicker, type DatePickerProps, DateTile, type DateTileProps, Density, DensityProvider, Density as DensityValue, DestructiveActionModal, type DestructiveActionModalProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, type DialogSize, DialogTitle, DialogTrigger, DisclosurePicker, DisclosurePickerEmpty, DisclosurePickerList, type DisclosurePickerListProps, DisclosurePickerOption, type DisclosurePickerOptionProps, DisclosurePickerPanel, type DisclosurePickerPanelProps, type DisclosurePickerProps, type DisclosurePickerSearch, DisclosurePickerTrigger, type DisclosurePickerTriggerProps, EmptyState, type EmptyStateProps, Entity, type EntityProps, Feedback, type FeedbackData, type FeedbackProps, type FeedbackRating, Field, type FieldProps, Fieldset, FieldsetContent, FieldsetDescription, FieldsetFooter, FieldsetLegend, type FieldsetVariant, FileDropzone, type FileDropzoneProps, type FileRejection, type FileRejectionCode, FontPicker, type FontPickerFont, type FontPickerOption, type FontPickerProps, Form, type FormProps, GlidingHighlight, type GlidingHighlightProps, GradientArt, type GradientArtProps, type Hsv, InlineStatus, type InlineStatusProps, type StatusTone as InlineTone, Input, InputGroup, type InputGroupProps, type InputProps$1 as InputProps, Kbd, KbdGroup, type KbdGroupProps, type KbdProps, Label, type LabelProps$2 as LabelProps, LineChart, type LineChartProps, Marker, type MarkerProps, Marquee, type MarqueeProps, MediaImage, type MediaImageProps, MediaTile, type MediaTileProps, Menu, MenuCheckboxItem, MenuContent, MenuGroup, MenuGroupLabel, MenuItem, MenuLinkItem, MenuPortal, MenuRadioGroup, MenuRadioItem, MenuSeparator, MenuSubmenu, MenuSubmenuTrigger, MenuTrigger, Menubar, type MenubarProps, MenubarTrigger, type MenubarTriggerProps, Message, type MessageProps, MessageScroller, type MessageScrollerHandle, type MessageScrollerProps, Meter, MeterIndicator, MeterLabel, type MeterSize, type MeterTone, MeterTrack, MeterValue, MiddleTruncate, type MiddleTruncateProps, type MotionLevel, type MotionPolicy, MotionProvider, type MotionProviderProps, MotionScope, type MotionScopeProps, NavigationMenu, NavigationMenuContent, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, Note, type NoteAction, type NoteProps, NotificationBadge, type NotificationBadgeProps, NumberField, type NumberFieldProps, NumberTicker, type NumberTickerProps, type OrbMode, type OrbSize, OtpField, type OtpFieldProps, OverflowMenu, type OverflowMenuProps, PALETTE_COLORS, PALETTE_FAMILIES, PALETTE_SCALES, PALETTE_STEPS, PALETTE_TONES, PageHeader, type PageHeaderProps, PageLoader, type PageLoaderProps, Pagination, type PaginationProps, type PaletteColor, type PaletteFamily, type PaletteStep, Panel, PanelGroup, PanelResizer, type PanelResizerProps, PanelSection, type PanelWidthBounds, Phone, type PhoneProps, PieChart, type PieChartProps, Pill, type PillProps, Popover, PopoverArrow, PopoverClose, PopoverContent, PopoverDescription, PopoverPortal, PopoverTitle, PopoverTrigger, Presence, type PresenceProps, type Presentation, PresentationProvider, Progress, ProgressIndicator, ProgressLabel, type ProgressSize, ProgressTrack, ProgressValue, PropertyGroup, PropertyPair, PropertyRow, RadarChart, type RadarChartProps, RadialChart, type RadialChartProps, Radio, RadioCard, type RadioCardProps, type RadioCardTone, RadioGroup, RelativeTime, type RelativeTimeProps, Reveal, type RevealProps, type Rgb, SABLE_UI_VERSION, SEGMENTED_BAR_TONES, STATUS_TONES, STATUS_TONE_ICON, type ScrollCommandOptions, Scroller, type ScrollerProps, ScrubField, type ScrubFieldProps, SearchInput, type SearchInputProps, SectionHeader, type SectionHeaderProps, SegmentedBar, type SegmentedBarProps, type SegmentedBarSegment, type SegmentedBarTone, Select, SelectContent, SelectGroup, SelectGroupLabel, SelectItem, SelectPortal, SelectSeparator, SelectTrigger, SelectValue, Separator, type SeparatorProps$2 as SeparatorProps, SettingsMenu, type SettingsMenuProps, SettingsRow, type SettingsRowProps, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetList, SheetPortal, type SheetProps, type SheetSnapPoint, SheetTitle, SheetTrigger, ShowMore, type ShowMoreProps, SideNav, type SideNavActiveVariant, SideNavGroup, type SideNavGroupProps, SideNavItem, type SideNavItemProps, type SideNavProps, type SideNavSize, Sidebar, SidebarBrand, type SidebarBrandProps, SidebarFooter, SidebarHeader, SidebarItem, type SidebarItemProps, SidebarNav, type SidebarProps, SimpleTooltip, Skeleton, SkipLink, Slider, SliderControl, SliderIndicator, SliderRoot, SliderThumb, SliderTrack, SliderValue, type SmoothWheelOptions, Sparkline, type SparklineProps, Spinner, type SpinnerProps, StatusBar, StatusBarGroup, StatusBarSeparator, StatusDot, type StatusDotProps, type StatusTone, type StepStatus, Stepper, StepperItem, type StepperItemProps, type StepperOrientation, type StepperProps, StreamingText, type StreamingTextProps, Switch, TOOL_CALL_STATUS_LABELS, TRANSPARENT, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsPanel as TabsContent, TabsList, TabsPanel, TabsTrigger, TextReveal, type TextRevealProps, Textarea, type TextareaProps, ThemeId, ThemeManifest, ThemeMode$1 as ThemeManifestMode, type ThemeMode, ThemePreview, type ThemePreviewProps, ThemeSelector, type ThemeSelectorProps, ThemeSwitcher, type ThemeSwitcherProps, ThinkingOrb, type ThinkingOrbProps, ToastAction, type ToastApi, ToastClose, ToastContent, ToastDescription, type ToastManagerApi, type ToastOptions, type ToastPosition, ToastProvider, type ToastProviderProps, ToastRoot, ToastTitle, type ToastType, ToastViewport, Toggle, ToggleGroup, type ToggleGroupAppearance, Toggle as ToggleGroupItem, ToolCall, type ToolCallProps, type ToolCallStatus, Toolbar, ToolbarButton, type ToolbarButtonProps, ToolbarGroup, type ToolbarGroupProps, ToolbarInput, type ToolbarInputProps, ToolbarLink, type ToolbarLinkProps, type ToolbarProps, ToolbarSeparator, type ToolbarSeparatorProps, Tooltip, TooltipArrow, TooltipContent, TooltipGroup, type TooltipGroupProps, TooltipPortal, TooltipProvider, TooltipTrigger, Tree, TreeAddRow, TreeEmpty, TreeRow, TreeSection, type UseCaretTriggerOptions, type UseCaretTriggerResult, type UseCopyOptions, type UseCopyResult, type UseInViewOptions, type UsePanelWidthOptions, Video, type VideoProps, ViewTransitionName, type ViewTransitionNameProps, Workspace, WorkspaceBar, WorkspaceCanvas, accordionMeta, appHeaderMeta, appShellMeta, areaChartMeta, attachmentMeta, avatarGroupVariants, avatarMeta, avatarVariants, badgeMeta, badgeVariants, bannerMeta, bannerVariants, barChartMeta, bottomNavMeta, breadcrumbsMeta, browserMeta, bubbleMeta, buttonGroupMeta, buttonMeta, buttonVariants, calendarMeta, cardMeta, caretMenuMeta, carouselMeta, chartColor, toneColor as chartToneColor, chatComposerMeta, checkboxCardMeta, checkboxMeta, cn, codeBlockMeta, codeMeta, collapsibleMeta, colorFieldMeta, comboboxMeta, commandMenuMeta, componentGuidance, componentLabel, componentSlug, componentsInGroup, confirmButtonMeta, contextCardMeta, contextMenuMeta, dataTableMeta, datePickerMeta, dateTileMeta, destructiveActionModalMeta, dialogMeta, disclosurePickerMeta, emptyStateMeta, entityMeta, feedbackMeta, fieldsetMeta, fileDropzoneMeta, fileDropzoneVariants, fontPickerMeta, formMeta, formatFileSize, formatHex, glidingHighlightMeta, gradientArtMeta, hsvToRgb, hueColor, inlineStatusMeta, inputGroupMeta, inputMeta, isPaletteColor, isTransparent, kbdMeta, labelMeta, lineChartMeta, markerMeta, marqueeMeta, mediaImageMeta, mediaTileMeta, menuMeta, menubarMeta, messageMeta, messageScrollerMeta, meterIndicatorVariants, meterMeta, meterTrackVariants, middleTruncateMeta, motionAttribute, navigationMenuMeta, noteMeta, noteVariants, notificationBadgeMeta, notificationCountVariants, notificationDotVariants, numberFieldMeta, numberTickerMeta, otpFieldMeta, overflowMenuMeta, pageHeaderMeta, pageLoaderMeta, paginationMeta, panelGroupMeta, panelSectionMeta, parseHex, phoneMeta, pieChartMeta, pillMeta, pillVariants, popoverMeta, progressMeta, progressTrackVariants, radarChartMeta, radialChartMeta, radioCardMeta, radioMeta, relativeTimeMeta, rgbToHsv, scrollerMeta, scrubFieldMeta, searchInputMeta, sectionHeaderMeta, segmentedBarMeta, segmentedBarSegmentVariants, segmentedBarVariants, selectMeta, separatorMeta, settingsMenuMeta, sheetMeta, sheetVariants, showMoreMeta, sideNavMeta, sidebarMeta, skeletonMeta, sliderMeta, sparklineMeta, spinnerMeta, startViewTransition, statusBarMeta, statusDotMeta, statusDotVariants, stepperConnectorVariants, stepperIndicatorVariants, stepperMeta, streamingTextMeta, supportsViewTransitions, switchMeta, tableMeta, tabsMeta, textareaMeta, themeSelectorMeta, themeSwitcherMeta, thinkingOrbMeta, toast, toastMeta, toggleMeta, toolCallMeta, toolbarGroupVariants, toolbarMeta, toolbarSeparatorVariants, toolbarVariants, tooltipMeta, treeIndent, treeMeta, useAnchoredDensity, useAutoSize, useCaretTrigger, useComboboxFilteredItems, useCommandMenuShortcut, useCopy, useDensity, useDisclosurePicker, useInView, useMotion, useMotionLevel, usePanelWidth, usePresentation, useReducedMotion, useScrollActivity, useShake, useSidebar, useSmoothWheel, useToast, useToastManager, useTypeTier, videoMeta, workspaceMeta };
|
|
9885
|
+
export { Accordion, AccordionItem, AccordionPanel, AccordionTrigger, AlertDialog, AlertDialogClose, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogTitle, AlertDialogTrigger, AppHeader, type AppHeaderProps, AppShell, type AppShellProps, AreaChart, type AreaChartProps, type ArtIntensity, type ArtTone, Attachment, type AttachmentProps, Avatar, AvatarFallback, AvatarGroup, AvatarGroupCount, type AvatarGroupCountProps, type AvatarGroupProps, AvatarImage, type AvatarProps, AvatarRoot, BADGE_APPEARANCES, BADGE_TONES, Badge, type BadgeAppearance, type BadgeProps, type BadgeTone, Banner, type BannerProps, BarChart, type BarChartProps, BottomNav, BottomNavItem, type BottomNavItemProps, BreadcrumbItem, type BreadcrumbItemProps, BreadcrumbLink, type BreadcrumbLinkProps, BreadcrumbPage, type BreadcrumbPageProps, BreadcrumbSeparator, type BreadcrumbSeparatorProps, Breadcrumbs, type BreadcrumbsProps, Browser, type BrowserProps, Bubble, type BubbleProps, BubbleReaction, BubbleReactionAdd, type BubbleReactionAddProps, type BubbleReactionProps, BubbleReactions, type BubbleReactionsProps, Burst, type BurstProps, Button, type ButtonBleed, ButtonGroup, type ButtonGroupProps, type ButtonProps, CHART_SERIES_COUNT, COMPONENT_GROUPS, COMPONENT_TAXONOMY, Calendar, type CalendarProps, Card, CardAction, CardContent, type CardContentProps, CardDescription, CardFooter, type CardFooterProps, CardHeader, CardList, type CardProps, CardTitle, type CardTitleProps, CaretMenu, CaretMenuItem, type CaretMenuItemProps, type CaretMenuProps, type CaretTrigger, type CaretTriggerField, type CaretTriggerMatch, Carousel, type CarouselProps, type CarouselSlidesToShow, type ChartCategories, type ChartCenterLabel, type ChartCurve, type ChartDatum, type ChartSeries, type ChartTone, type ChartTooltipIndicator, type ChartTooltipOptions, type ChartValueFormatter, ChatComposer, type ChatComposerProps, Checkbox, CheckboxCard, type CheckboxCardProps, type CheckboxCardTone, CheckboxGroup, type CheckboxGroupProps, Code, CodeBlock, type CodeBlockProps, CodeHighlightProvider, type CodeHighlighter, type CodeProps, Collapsible, CollapsibleIndicator, CollapsiblePanel, CollapsibleTrigger, ColorField, type ColorFieldProps, Combobox, ComboboxChips, ComboboxClear, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxGroupLabel, ComboboxInput, ComboboxItem, type ComboboxItemGroup, ComboboxItemIndicator, ComboboxList, ComboboxPortal, type ComboboxProps, ComboboxValue, ComboboxVirtualList, type ComboboxVirtualListProps, type CommandFilter, type CommandItem, CommandMenu, CommandMenuGroup, type CommandMenuGroupProps, CommandMenuItem, type CommandMenuItemProps, CommandMenuPanel, type CommandMenuPanelProps, type CommandMenuProps, CommandMenuTrigger, type CommandMenuTriggerProps, type ComponentGroup, type ComponentGuidance, ComponentMeta, type ComponentRegister, ConfirmButton, type ConfirmButtonProps, type ConstraintFlag, ContextCard, ContextCardArrow, ContextCardContent, ContextCardPortal, ContextCardTrigger, ContextMenu, ContextMenuContent, ContextMenuGroup, ContextMenuGroupLabel, ContextMenuItem, ContextMenuPortal, ContextMenuSeparator, ContextMenuTrigger, type CopySource, DEFAULT_REACTIONS, DataTable, type DataTableColumn, type DataTableProps, type DataTableRowKey, DatePicker, type DatePickerProps, DateTile, type DateTileProps, Density, DensityProvider, Density as DensityValue, DestructiveActionModal, type DestructiveActionModalProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, type DialogSize, DialogTitle, DialogTrigger, DisclosurePicker, DisclosurePickerEmpty, DisclosurePickerList, type DisclosurePickerListProps, DisclosurePickerOption, type DisclosurePickerOptionProps, DisclosurePickerPanel, type DisclosurePickerPanelProps, type DisclosurePickerProps, type DisclosurePickerSearch, DisclosurePickerTrigger, type DisclosurePickerTriggerProps, EmptyState, type EmptyStateProps, Entity, type EntityProps, Feedback, type FeedbackData, type FeedbackProps, type FeedbackRating, Field, type FieldProps, Fieldset, FieldsetContent, FieldsetDescription, FieldsetFooter, FieldsetLegend, type FieldsetVariant, FileDropzone, type FileDropzoneProps, type FileRejection, type FileRejectionCode, FontPicker, type FontPickerFont, type FontPickerOption, type FontPickerProps, Form, type FormProps, GlidingHighlight, type GlidingHighlightProps, GradientArt, type GradientArtProps, type Hsv, InlineStatus, type InlineStatusProps, type StatusTone as InlineTone, Input, InputGroup, type InputGroupProps, type InputProps$1 as InputProps, Kbd, KbdGroup, type KbdGroupProps, type KbdProps, Label, type LabelProps$2 as LabelProps, LikeButton, type LikeButtonProps, LineChart, type LineChartProps, Marker, type MarkerProps, Marquee, type MarqueeProps, MediaImage, type MediaImageProps, MediaTile, type MediaTileProps, Menu, MenuCheckboxItem, MenuContent, MenuGroup, MenuGroupLabel, MenuItem, MenuLinkItem, MenuPortal, MenuRadioGroup, MenuRadioItem, MenuReactions, type MenuReactionsProps, MenuSeparator, MenuSubmenu, MenuSubmenuTrigger, MenuTrigger, Menubar, type MenubarProps, MenubarTrigger, type MenubarTriggerProps, Message, type MessageProps, MessageScroller, type MessageScrollerHandle, type MessageScrollerProps, Meter, MeterIndicator, MeterLabel, type MeterSize, type MeterTone, MeterTrack, MeterValue, MiddleTruncate, type MiddleTruncateProps, type MotionLevel, type MotionPolicy, MotionProvider, type MotionProviderProps, MotionScope, type MotionScopeProps, NavigationMenu, NavigationMenuContent, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, Note, type NoteAction, type NoteProps, NotificationBadge, type NotificationBadgeProps, NumberField, type NumberFieldProps, NumberTicker, type NumberTickerProps, type OrbMode, type OrbSize, OtpField, type OtpFieldProps, OverflowMenu, type OverflowMenuProps, PALETTE_COLORS, PALETTE_FAMILIES, PALETTE_SCALES, PALETTE_STEPS, PALETTE_TONES, PageHeader, type PageHeaderProps, PageLoader, type PageLoaderProps, Pagination, type PaginationProps, type PaletteColor, type PaletteFamily, type PaletteStep, Panel, PanelGroup, PanelResizer, type PanelResizerProps, PanelSection, type PanelWidthBounds, Phone, type PhoneProps, PieChart, type PieChartProps, Pill, type PillProps, Popover, PopoverArrow, PopoverClose, PopoverContent, PopoverDescription, PopoverPortal, PopoverTitle, PopoverTrigger, Presence, type PresenceProps, type Presentation, PresentationProvider, Progress, ProgressIndicator, ProgressLabel, type ProgressSize, ProgressTrack, ProgressValue, PropertyGroup, PropertyPair, PropertyRow, RadarChart, type RadarChartProps, RadialChart, type RadialChartProps, Radio, RadioCard, type RadioCardProps, type RadioCardTone, RadioGroup, type Reaction, ReactionPicker, type ReactionPickerProps, RelativeTime, type RelativeTimeProps, Reveal, type RevealProps, type Rgb, SABLE_UI_VERSION, SEGMENTED_BAR_TONES, STATUS_TONES, STATUS_TONE_ICON, type ScrollCommandOptions, Scroller, type ScrollerProps, ScrubField, type ScrubFieldProps, SearchInput, type SearchInputProps, SectionHeader, type SectionHeaderProps, SegmentedBar, type SegmentedBarProps, type SegmentedBarSegment, type SegmentedBarTone, Select, SelectContent, SelectGroup, SelectGroupLabel, SelectItem, SelectPortal, SelectSeparator, SelectTrigger, SelectValue, Separator, type SeparatorProps$2 as SeparatorProps, SettingsMenu, type SettingsMenuProps, SettingsRow, type SettingsRowProps, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetList, SheetPortal, type SheetProps, type SheetSnapPoint, SheetTitle, SheetTrigger, ShowMore, type ShowMoreProps, SideNav, type SideNavActiveVariant, SideNavGroup, type SideNavGroupProps, SideNavItem, type SideNavItemProps, type SideNavProps, type SideNavSize, Sidebar, SidebarBrand, type SidebarBrandProps, SidebarFooter, SidebarHeader, SidebarItem, type SidebarItemProps, SidebarNav, type SidebarProps, SimpleTooltip, Skeleton, SkipLink, Slider, SliderControl, SliderIndicator, SliderRoot, SliderThumb, SliderTrack, SliderValue, type SmoothWheelOptions, Sparkline, type SparklineProps, Spinner, type SpinnerProps, StatusBar, StatusBarGroup, StatusBarSeparator, StatusDot, type StatusDotProps, type StatusTone, type StepStatus, Stepper, StepperItem, type StepperItemProps, type StepperOrientation, type StepperProps, StreamingText, type StreamingTextProps, Switch, TOOL_CALL_STATUS_LABELS, TRANSPARENT, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsPanel as TabsContent, TabsList, TabsPanel, TabsTrigger, TextReveal, type TextRevealProps, Textarea, type TextareaProps, ThemeId, ThemeManifest, ThemeMode$1 as ThemeManifestMode, type ThemeMode, ThemePreview, type ThemePreviewProps, ThemeSelector, type ThemeSelectorProps, ThemeSwitcher, type ThemeSwitcherProps, ThinkingOrb, type ThinkingOrbProps, ToastAction, type ToastApi, ToastClose, ToastContent, ToastDescription, type ToastManagerApi, type ToastOptions, type ToastPosition, ToastProvider, type ToastProviderProps, ToastRoot, ToastTitle, type ToastType, ToastViewport, Toggle, ToggleGroup, type ToggleGroupAppearance, Toggle as ToggleGroupItem, ToolCall, type ToolCallProps, type ToolCallStatus, Toolbar, ToolbarButton, type ToolbarButtonProps, ToolbarGroup, type ToolbarGroupProps, ToolbarInput, type ToolbarInputProps, ToolbarLink, type ToolbarLinkProps, type ToolbarProps, ToolbarSeparator, type ToolbarSeparatorProps, Tooltip, TooltipArrow, TooltipContent, TooltipGroup, type TooltipGroupProps, TooltipPortal, TooltipProvider, TooltipTrigger, Tree, TreeAddRow, TreeEmpty, TreeRow, TreeSection, type UseCaretTriggerOptions, type UseCaretTriggerResult, type UseCopyOptions, type UseCopyResult, type UseInViewOptions, type UseMatchHighlightOptions, type UsePanelWidthOptions, Video, type VideoProps, ViewTransitionName, type ViewTransitionNameProps, Workspace, WorkspaceBar, WorkspaceCanvas, accordionMeta, appHeaderMeta, appShellMeta, areaChartMeta, attachmentMeta, avatarGroupVariants, avatarMeta, avatarVariants, badgeMeta, badgeVariants, bannerMeta, bannerVariants, barChartMeta, bottomNavMeta, breadcrumbsMeta, browserMeta, bubbleMeta, buttonGroupMeta, buttonMeta, buttonVariants, calendarMeta, cardMeta, caretMenuMeta, carouselMeta, chartColor, toneColor as chartToneColor, chatComposerMeta, checkboxCardMeta, checkboxMeta, cn, codeBlockMeta, codeMeta, collapsibleMeta, colorFieldMeta, comboboxMeta, commandMenuMeta, componentGuidance, componentLabel, componentSlug, componentsInGroup, confirmButtonMeta, contextCardMeta, contextMenuMeta, dataTableMeta, datePickerMeta, dateTileMeta, destructiveActionModalMeta, dialogMeta, disclosurePickerMeta, emptyStateMeta, entityMeta, feedbackMeta, fieldsetMeta, fileDropzoneMeta, fileDropzoneVariants, fontPickerMeta, formMeta, formatFileSize, formatHex, glidingHighlightMeta, gradientArtMeta, hsvToRgb, hueColor, inlineStatusMeta, inputGroupMeta, inputMeta, isPaletteColor, isTransparent, kbdMeta, labelMeta, likeButtonMeta, lineChartMeta, markerMeta, marqueeMeta, mediaImageMeta, mediaTileMeta, menuMeta, menubarMeta, messageMeta, messageScrollerMeta, meterIndicatorVariants, meterMeta, meterTrackVariants, middleTruncateMeta, motionAttribute, navigationMenuMeta, noteMeta, noteVariants, notificationBadgeMeta, notificationCountVariants, notificationDotVariants, numberFieldMeta, numberTickerMeta, otpFieldMeta, overflowMenuMeta, pageHeaderMeta, pageLoaderMeta, paginationMeta, panelGroupMeta, panelSectionMeta, parseHex, phoneMeta, pieChartMeta, pillMeta, pillVariants, popoverMeta, progressMeta, progressTrackVariants, radarChartMeta, radialChartMeta, radioCardMeta, radioMeta, reactionPickerMeta, relativeTimeMeta, rgbToHsv, scrollerMeta, scrubFieldMeta, searchInputMeta, sectionHeaderMeta, segmentedBarMeta, segmentedBarSegmentVariants, segmentedBarVariants, selectMeta, separatorMeta, settingsMenuMeta, sheetMeta, sheetVariants, showMoreMeta, sideNavMeta, sidebarMeta, skeletonMeta, sliderMeta, sparklineMeta, spinnerMeta, startViewTransition, statusBarMeta, statusDotMeta, statusDotVariants, stepperConnectorVariants, stepperIndicatorVariants, stepperMeta, streamingTextMeta, supportsViewTransitions, switchMeta, tableMeta, tabsMeta, textareaMeta, themeSelectorMeta, themeSwitcherMeta, thinkingOrbMeta, toast, toastMeta, toggleMeta, toolCallMeta, toolbarGroupVariants, toolbarMeta, toolbarSeparatorVariants, toolbarVariants, tooltipMeta, treeIndent, treeMeta, useAnchoredDensity, useAutoSize, useCaretTrigger, useComboboxFilteredItems, useCommandMenuShortcut, useCopy, useDensity, useDisclosurePicker, useInView, useMatchHighlight, useMotion, useMotionLevel, usePanelWidth, usePresentation, useReducedMotion, useScrollActivity, useShake, useSidebar, useSmoothWheel, useToast, useToastManager, useTypeTier, videoMeta, workspaceMeta };
|