@cueplusplus/ui 0.1.0 → 0.3.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 +705 -0
- package/dist/brand/_chassis.d.ts +54 -0
- package/dist/brand/_chassis.js +81 -0
- package/dist/brand/_geometry.js +41 -0
- package/dist/brand/cue-logotype.d.ts +29 -0
- package/dist/brand/cue-logotype.js +60 -0
- package/dist/brand/cue-mark.d.ts +30 -0
- package/dist/brand/cue-mark.js +61 -0
- package/dist/brand/index.d.ts +5 -0
- package/dist/brand/plussie.d.ts +67 -0
- package/dist/brand/plussie.js +125 -0
- package/dist/chat/agent-pile.js +1 -1
- package/dist/chat/ask-box.js +2 -2
- package/dist/chat/delegation-card.js +1 -1
- package/dist/chat/message.js +2 -2
- package/dist/chrome/_edge-scroller.d.ts +45 -0
- package/dist/chrome/_edge-scroller.js +149 -0
- package/dist/chrome/_glyphs.js +19 -1
- package/dist/chrome/_tabs-scroll.d.ts +13 -8
- package/dist/chrome/_tabs-scroll.js +13 -8
- package/dist/chrome/app-bar.d.ts +103 -0
- package/dist/chrome/app-bar.js +175 -0
- package/dist/chrome/app-shell.d.ts +125 -0
- package/dist/chrome/app-shell.js +167 -0
- package/dist/chrome/footer.d.ts +75 -0
- package/dist/chrome/footer.js +68 -0
- package/dist/chrome/index.d.ts +5 -1
- package/dist/chrome/index.js +4 -1
- package/dist/chrome/navigation-menu.js +1 -1
- package/dist/chrome/page-shell.d.ts +1 -1
- package/dist/chrome/page-shell.js +15 -5
- package/dist/chrome/segmented-control.d.ts +19 -0
- package/dist/chrome/segmented-control.js +40 -21
- package/dist/chrome/tabs.js +21 -65
- package/dist/chrome/toolbar.d.ts +22 -0
- package/dist/chrome/toolbar.js +26 -5
- package/dist/configurator/_overrides.js +22 -8
- package/dist/configurator/configurator.js +1 -1
- package/dist/configurator/panel-sections.js +10 -4
- package/dist/dmx/channel-matrix.js +1 -1
- package/dist/forms/otp-field.js +1 -1
- package/dist/index.d.ts +18 -9
- package/dist/index.js +16 -10
- package/dist/instruments/data-table.js +1 -1
- package/dist/instruments/index.d.ts +2 -2
- package/dist/instruments/index.js +2 -2
- package/dist/instruments/table.d.ts +14 -1
- package/dist/instruments/table.js +20 -1
- package/dist/layout/carousel.js +1 -1
- package/dist/layout/container.d.ts +1 -1
- package/dist/layout/container.js +6 -3
- package/dist/layout/index.d.ts +3 -3
- package/dist/layout/index.js +3 -3
- package/dist/layout/pagination.js +1 -1
- package/dist/layout/sidebar.d.ts +23 -3
- package/dist/layout/sidebar.js +18 -7
- package/dist/midi/spectrum-visualizer.js +1 -1
- package/dist/midi/timeline-ruler.js +1 -1
- package/dist/overlays/command-palette.js +1 -1
- package/dist/overlays/dialog.js +1 -1
- package/dist/overlays/dropdown-menu.js +2 -2
- package/dist/overlays/hover-card.js +1 -1
- package/dist/overlays/index.js +1 -1
- package/dist/overlays/popover.js +1 -1
- package/dist/overlays/sheet.js +1 -1
- package/dist/overlays/toast.js +1 -1
- package/dist/primitives/chip.d.ts +1 -1
- package/dist/primitives/index.d.ts +1 -1
- package/dist/primitives/index.js +1 -1
- package/dist/primitives/status-dot.d.ts +7 -0
- package/dist/primitives/status-dot.js +8 -1
- package/dist/styles.css +58 -2
- package/dist/system/density.d.ts +4 -1
- package/dist/system/density.js +12 -4
- package/dist/system/index.d.ts +4 -4
- package/dist/system/portal.d.ts +5 -5
- package/dist/system/portal.js +30 -11
- package/dist/system/prepaint.d.ts +34 -9
- package/dist/system/prepaint.js +48 -25
- package/dist/system/theme-provider.d.ts +48 -11
- package/dist/system/theme-provider.js +109 -35
- package/dist/system/use-density.d.ts +3 -3
- package/dist/system/use-density.js +16 -6
- package/dist/system/use-theme.d.ts +4 -2
- package/dist/system/use-theme.js +4 -2
- package/dist/theming/_presets.js +133 -5
- package/dist/theming/create-theme.d.ts +2 -2
- package/dist/theming/create-theme.js +37 -19
- package/dist/theming/serialize.d.ts +1 -1
- package/dist/theming/serialize.js +25 -1
- package/manifest/components/accordion.json +154 -0
- package/manifest/components/agent-pile.json +116 -0
- package/manifest/components/alert-dialog.json +190 -0
- package/manifest/components/app-bar.json +244 -0
- package/manifest/components/app-shell.json +291 -0
- package/manifest/components/app-window-frame.json +102 -0
- package/manifest/components/ask-box.json +209 -0
- package/manifest/components/autocomplete.json +197 -0
- package/manifest/components/avatar-group.json +72 -0
- package/manifest/components/avatar.json +95 -0
- package/manifest/components/breadcrumb.json +74 -0
- package/manifest/components/button-group.json +74 -0
- package/manifest/components/button.json +125 -0
- package/manifest/components/calendar.json +65 -0
- package/manifest/components/card.json +140 -0
- package/manifest/components/carousel.json +200 -0
- package/manifest/components/channel-matrix.json +173 -0
- package/manifest/components/chart-container.json +111 -0
- package/manifest/components/chart-ramp.json +72 -0
- package/manifest/components/chart-swatch.json +65 -0
- package/manifest/components/chart-tooltip-content.json +114 -0
- package/manifest/components/checkbox-group.json +68 -0
- package/manifest/components/checkbox.json +93 -0
- package/manifest/components/chip.json +132 -0
- package/manifest/components/collapsible.json +120 -0
- package/manifest/components/color-area.json +59 -0
- package/manifest/components/color-field.json +79 -0
- package/manifest/components/color-picker.json +175 -0
- package/manifest/components/color-slider.json +75 -0
- package/manifest/components/color-swatch.json +68 -0
- package/manifest/components/colors-section.json +66 -0
- package/manifest/components/combobox.json +198 -0
- package/manifest/components/command-palette.json +177 -0
- package/manifest/components/composer.json +176 -0
- package/manifest/components/container.json +60 -0
- package/manifest/components/context-menu.json +121 -0
- package/manifest/components/copy-button.json +93 -0
- package/manifest/components/cue-logotype.json +96 -0
- package/manifest/components/cue-mark.json +97 -0
- package/manifest/components/cue-portal-frame.json +55 -0
- package/manifest/components/data-table-pagination.json +83 -0
- package/manifest/components/data-table-toolbar.json +104 -0
- package/manifest/components/date-field.json +80 -0
- package/manifest/components/date-picker.json +191 -0
- package/manifest/components/date-range-picker.json +191 -0
- package/manifest/components/delegation-card.json +144 -0
- package/manifest/components/density.json +58 -0
- package/manifest/components/description-list.json +84 -0
- package/manifest/components/dialog.json +198 -0
- package/manifest/components/disclosure.json +109 -0
- package/manifest/components/dmx-bar.json +94 -0
- package/manifest/components/dmx-strip.json +101 -0
- package/manifest/components/drawer.json +179 -0
- package/manifest/components/dropdown-menu.json +229 -0
- package/manifest/components/empty-state.json +90 -0
- package/manifest/components/env-var-input.json +150 -0
- package/manifest/components/export-dialog.json +84 -0
- package/manifest/components/eyebrow.json +56 -0
- package/manifest/components/field-description.json +63 -0
- package/manifest/components/field-error.json +77 -0
- package/manifest/components/field-label.json +63 -0
- package/manifest/components/field.json +79 -0
- package/manifest/components/file-upload.json +159 -0
- package/manifest/components/flow-background.json +50 -0
- package/manifest/components/flow-controls.json +50 -0
- package/manifest/components/footer.json +112 -0
- package/manifest/components/grid.json +81 -0
- package/manifest/components/group-bar.json +102 -0
- package/manifest/components/hover-card.json +151 -0
- package/manifest/components/icon-button.json +88 -0
- package/manifest/components/info-tip.json +98 -0
- package/manifest/components/input-group.json +91 -0
- package/manifest/components/input.json +89 -0
- package/manifest/components/item.json +129 -0
- package/manifest/components/kbd.json +52 -0
- package/manifest/components/link.json +81 -0
- package/manifest/components/log-viewer.json +139 -0
- package/manifest/components/menubar.json +157 -0
- package/manifest/components/message-list.json +100 -0
- package/manifest/components/message.json +116 -0
- package/manifest/components/meter.json +114 -0
- package/manifest/components/multi-select.json +190 -0
- package/manifest/components/musical-time-input.json +113 -0
- package/manifest/components/navigation-menu.json +226 -0
- package/manifest/components/node-card.json +109 -0
- package/manifest/components/node-handle.json +69 -0
- package/manifest/components/number-field.json +107 -0
- package/manifest/components/otp-field.json +128 -0
- package/manifest/components/page-shell.json +96 -0
- package/manifest/components/pagination.json +92 -0
- package/manifest/components/panel-header.json +77 -0
- package/manifest/components/panel.json +71 -0
- package/manifest/components/password-input.json +119 -0
- package/manifest/components/piano-keyboard.json +120 -0
- package/manifest/components/plussie.json +111 -0
- package/manifest/components/popover.json +193 -0
- package/manifest/components/preset-section.json +73 -0
- package/manifest/components/progress.json +95 -0
- package/manifest/components/radio-group.json +73 -0
- package/manifest/components/radio.json +80 -0
- package/manifest/components/rating.json +141 -0
- package/manifest/components/resizable.json +88 -0
- package/manifest/components/row.json +109 -0
- package/manifest/components/scroll-area.json +91 -0
- package/manifest/components/scrollable-tabs-list.json +83 -0
- package/manifest/components/scrub-input.json +200 -0
- package/manifest/components/seam-cell.json +75 -0
- package/manifest/components/seam-grid.json +75 -0
- package/manifest/components/seam-list.json +56 -0
- package/manifest/components/search-input.json +134 -0
- package/manifest/components/section-header.json +112 -0
- package/manifest/components/segmented-control.json +138 -0
- package/manifest/components/select.json +194 -0
- package/manifest/components/separator.json +53 -0
- package/manifest/components/shape-section.json +66 -0
- package/manifest/components/sheet.json +186 -0
- package/manifest/components/sidebar.json +198 -0
- package/manifest/components/signal-edge.json +56 -0
- package/manifest/components/skeleton.json +46 -0
- package/manifest/components/slider.json +89 -0
- package/manifest/components/sparkline.json +76 -0
- package/manifest/components/spectrum-visualizer.json +115 -0
- package/manifest/components/spinner.json +61 -0
- package/manifest/components/stack.json +96 -0
- package/manifest/components/stat.json +87 -0
- package/manifest/components/status-bar.json +58 -0
- package/manifest/components/status-dot.json +78 -0
- package/manifest/components/stepper.json +89 -0
- package/manifest/components/switch.json +87 -0
- package/manifest/components/table-scroll-region.json +69 -0
- package/manifest/components/table.json +155 -0
- package/manifest/components/tabs.json +145 -0
- package/manifest/components/tags-input.json +190 -0
- package/manifest/components/terminal-frame.json +119 -0
- package/manifest/components/textarea.json +76 -0
- package/manifest/components/theme-configurator.json +124 -0
- package/manifest/components/theme-provider.json +134 -0
- package/manifest/components/threshold-rail.json +160 -0
- package/manifest/components/time-field.json +80 -0
- package/manifest/components/timeline-ruler.json +139 -0
- package/manifest/components/timeline.json +115 -0
- package/manifest/components/title-bar.json +82 -0
- package/manifest/components/toast.json +130 -0
- package/manifest/components/toggle-group.json +106 -0
- package/manifest/components/toggle.json +109 -0
- package/manifest/components/token-editor.json +90 -0
- package/manifest/components/toolbar.json +163 -0
- package/manifest/components/tooltip.json +164 -0
- package/manifest/components/tree-visibility-toggle.json +84 -0
- package/manifest/components/tree.json +140 -0
- package/manifest/components/two-step-button.json +113 -0
- package/manifest/components/universe-grid.json +127 -0
- package/manifest/components/usage-chart.json +124 -0
- package/manifest/manifest.json +2142 -0
- package/manifest/tokens.json +138 -0
- package/package.json +13 -5
package/dist/chrome/toolbar.d.ts
CHANGED
|
@@ -1,9 +1,31 @@
|
|
|
1
|
+
import { BarOverflow } from "./_edge-scroller.js";
|
|
1
2
|
import * as React from "react";
|
|
2
3
|
import { Toolbar } from "@base-ui/react/toolbar";
|
|
3
4
|
//#region src/chrome/toolbar.d.ts
|
|
4
5
|
interface ToolbarRootProps extends Omit<Toolbar.Root.Props, "className"> {
|
|
5
6
|
/** Extra classes for the bar. */
|
|
6
7
|
className?: string;
|
|
8
|
+
/**
|
|
9
|
+
* What the bar does when its controls do not fit. Defaults to `"scroll"`.
|
|
10
|
+
*
|
|
11
|
+
* `"scroll"` is the library's one overflow behaviour (see
|
|
12
|
+
* `./_edge-scroller` for why it is scrolling rather than wrapping or a "more"
|
|
13
|
+
* menu): the bar keeps its single chrome-rung height, the controls scroll
|
|
14
|
+
* inside it, the overflowing edge is faded and a pager chevron appears there.
|
|
15
|
+
* A bar whose controls all fit renders exactly as it did before — no mask, no
|
|
16
|
+
* chevrons, no compositing layer.
|
|
17
|
+
*
|
|
18
|
+
* `"clip"` restores the old behaviour and adds no wrapper element, for a bar
|
|
19
|
+
* that is already inside something which scrolls.
|
|
20
|
+
*
|
|
21
|
+
* A vertical toolbar ignores this: the affordance is horizontal, and a
|
|
22
|
+
* vertical bar overflows on the axis this does not measure.
|
|
23
|
+
*/
|
|
24
|
+
overflow?: BarOverflow;
|
|
25
|
+
/** Accessible name for the chevron that reveals controls off the leading edge. */
|
|
26
|
+
previousLabel?: string;
|
|
27
|
+
/** Accessible name for the chevron that reveals controls off the trailing edge. */
|
|
28
|
+
nextLabel?: string;
|
|
7
29
|
}
|
|
8
30
|
interface ToolbarButtonProps extends Omit<Toolbar.Button.Props, "className"> {
|
|
9
31
|
/** Extra classes for the button. */
|
package/dist/chrome/toolbar.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { cn } from "../lib/cn.js";
|
|
3
|
+
import { useComposedRefs } from "../lib/compose.js";
|
|
4
|
+
import { EDGE_SCROLLER_CLASSES, EdgeChevrons, useEdgeScroll } from "./_edge-scroller.js";
|
|
3
5
|
import * as React from "react";
|
|
4
6
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
7
|
import { Toolbar } from "@base-ui/react/toolbar";
|
|
@@ -21,12 +23,31 @@ import { Toolbar } from "@base-ui/react/toolbar";
|
|
|
21
23
|
* </Toolbar.Root>
|
|
22
24
|
*/
|
|
23
25
|
const Toolbar$1 = {
|
|
24
|
-
Root: React.forwardRef(function ToolbarRoot({ className, ...elementProps }, ref) {
|
|
25
|
-
|
|
26
|
-
|
|
26
|
+
Root: React.forwardRef(function ToolbarRoot({ className, overflow = "scroll", previousLabel = "Show earlier controls", nextLabel = "Show later controls", ...elementProps }, ref) {
|
|
27
|
+
const scrolls = overflow === "scroll" && elementProps.orientation !== "vertical";
|
|
28
|
+
const scroll = useEdgeScroll(scrolls);
|
|
29
|
+
const barRef = useComposedRefs(ref, scroll.ref);
|
|
30
|
+
const bar = /* @__PURE__ */ jsx(Toolbar.Root, {
|
|
31
|
+
ref: barRef,
|
|
27
32
|
"data-slot": "toolbar",
|
|
28
|
-
className: cn("flex h-(--cue-chrome-toolbar) w-full shrink-0 items-center gap-(--cue-space-2) border-b border-border bg-surface-1 px-(--cue-pad-row-x) data-[orientation=vertical]:h-auto data-[orientation=vertical]:w-(--cue-chrome-toolbar) data-[orientation=vertical]:flex-col data-[orientation=vertical]:border-r data-[orientation=vertical]:border-b-0", className),
|
|
29
|
-
...elementProps
|
|
33
|
+
className: cn("flex h-(--cue-chrome-toolbar) w-full shrink-0 items-center gap-(--cue-space-2) border-b border-border bg-surface-1 px-(--cue-pad-row-x) data-[orientation=vertical]:h-auto data-[orientation=vertical]:w-(--cue-chrome-toolbar) data-[orientation=vertical]:flex-col data-[orientation=vertical]:border-r data-[orientation=vertical]:border-b-0", scrolls ? EDGE_SCROLLER_CLASSES : null, className),
|
|
34
|
+
...elementProps,
|
|
35
|
+
style: {
|
|
36
|
+
...elementProps.style,
|
|
37
|
+
...scroll.style
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
if (!scrolls) return bar;
|
|
41
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
42
|
+
"data-slot": "toolbar-frame",
|
|
43
|
+
className: "relative w-full min-w-0 shrink-0",
|
|
44
|
+
children: [bar, /* @__PURE__ */ jsx(EdgeChevrons, {
|
|
45
|
+
edges: scroll.edges,
|
|
46
|
+
onNudge: scroll.nudge,
|
|
47
|
+
previousLabel,
|
|
48
|
+
nextLabel,
|
|
49
|
+
className: "bottom-px bg-surface-1"
|
|
50
|
+
})]
|
|
30
51
|
});
|
|
31
52
|
}),
|
|
32
53
|
Button: React.forwardRef(function ToolbarButton({ className, icon: Icon, children, ...elementProps }, ref) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BASE_FONT_STACKS, DEFAULT_DENSITY_LEVEL, DENSITY_RADIUS_SCALE, THEME_COLOR_TOKENS, THEME_PRESETS } from "../theming/_presets.js";
|
|
2
|
-
import { THEME_NAME_PATTERN, assertCssValue, serializeThemeBlock, tokenProperty } from "../theming/serialize.js";
|
|
2
|
+
import { THEME_NAME_PATTERN, assertCssValue, serializeSystemModeAliases, serializeThemeBlock, tokenProperty } from "../theming/serialize.js";
|
|
3
3
|
//#region src/configurator/_overrides.ts
|
|
4
4
|
/**
|
|
5
5
|
* The override model behind the theme configurator: what a user may move, where
|
|
@@ -63,8 +63,10 @@ const OVERRIDE_BANNER = "@cueplusplus/ui — theme configurator overrides";
|
|
|
63
63
|
*/
|
|
64
64
|
const DENSITY_FACTOR = {
|
|
65
65
|
"ultra-compact": .85,
|
|
66
|
-
"
|
|
67
|
-
"
|
|
66
|
+
"compact": 1,
|
|
67
|
+
"normal": 1.3,
|
|
68
|
+
"large": 1.6,
|
|
69
|
+
"ultra-large": 1.9
|
|
68
70
|
};
|
|
69
71
|
/** The authored label tracking, and the value the "reset" arrow returns to. */
|
|
70
72
|
const BASE_TRACKING_LABEL = "0.12em";
|
|
@@ -336,17 +338,23 @@ const INLINE_COMMENT = "the provider inlines this one; !important is the only le
|
|
|
336
338
|
*/
|
|
337
339
|
function serializeOverrideCss(overrides, options = {}) {
|
|
338
340
|
const blocks = [];
|
|
341
|
+
const aliases = /* @__PURE__ */ new Map();
|
|
339
342
|
for (const key of Object.keys(overrides.themes).toSorted()) {
|
|
340
343
|
const scope = parseScopeKey(key);
|
|
341
344
|
const declarations = orderedDeclarations(overrides.themes[key] ?? {});
|
|
342
345
|
if (scope === null || declarations.length === 0) continue;
|
|
346
|
+
const sections = [{
|
|
347
|
+
comment: blocks.length === 0 ? THEME_COMMENT : void 0,
|
|
348
|
+
declarations
|
|
349
|
+
}];
|
|
343
350
|
blocks.push({
|
|
344
351
|
selector: overrideSelector(scope.theme, scope.mode),
|
|
345
|
-
sections
|
|
346
|
-
comment: blocks.length === 0 ? THEME_COMMENT : void 0,
|
|
347
|
-
declarations
|
|
348
|
-
}]
|
|
352
|
+
sections
|
|
349
353
|
});
|
|
354
|
+
aliases.set(scope.theme, [...aliases.get(scope.theme) ?? [], {
|
|
355
|
+
mode: scope.mode,
|
|
356
|
+
sections
|
|
357
|
+
}]);
|
|
350
358
|
}
|
|
351
359
|
const global = orderedDeclarations(overrides.global);
|
|
352
360
|
const scaledDeclarations = global.filter(([property]) => tokenKind(property) === "scaled");
|
|
@@ -374,7 +382,13 @@ function serializeOverrideCss(overrides, options = {}) {
|
|
|
374
382
|
}]
|
|
375
383
|
});
|
|
376
384
|
if (blocks.length === 0) return "";
|
|
377
|
-
|
|
385
|
+
const banner = options.banner === void 0 ? [] : [`/*! ${options.banner}\n * Written by <ThemeConfigurator>. Paste it, do not edit it.\n */`];
|
|
386
|
+
const systemAliases = [...aliases.entries()].map(([theme, modes]) => serializeSystemModeAliases(theme, modes));
|
|
387
|
+
return `${[
|
|
388
|
+
...banner,
|
|
389
|
+
...blocks.map(serializeThemeBlock),
|
|
390
|
+
...systemAliases
|
|
391
|
+
].join("\n\n")}\n`;
|
|
378
392
|
}
|
|
379
393
|
/**
|
|
380
394
|
* The stylesheet the panel applies — and, byte for byte, the one its CSS export
|
|
@@ -4,8 +4,8 @@ import { Button } from "../primitives/button.js";
|
|
|
4
4
|
import { Chip } from "../primitives/chip.js";
|
|
5
5
|
import { useIsomorphicLayoutEffect } from "../system/use-isomorphic-layout-effect.js";
|
|
6
6
|
import { overlaySurfaceClasses } from "../overlays/_surface.js";
|
|
7
|
-
import { TwoStepButton } from "../instruments/two-step-button.js";
|
|
8
7
|
import { IconButton } from "../primitives/icon-button.js";
|
|
8
|
+
import { TwoStepButton } from "../instruments/two-step-button.js";
|
|
9
9
|
import { useTheme } from "../system/use-theme.js";
|
|
10
10
|
import { DEFAULT_CONFIGURATOR_STORAGE_KEY, EMPTY_OVERRIDES, applyOverrideCss, clearOverride, configuratorCss, defaultSnapshot, isOverridden, overrideCount, readSnapshot, removeOverrideStyles, resolveValue, resolvedTokens, setOverride, writeSnapshot } from "./_overrides.js";
|
|
11
11
|
import { ChevronGlyph, DockGlyph, GripGlyph } from "./_glyphs.js";
|
|
@@ -39,11 +39,17 @@ const MODE_ITEMS = [
|
|
|
39
39
|
label: "System"
|
|
40
40
|
}
|
|
41
41
|
];
|
|
42
|
-
/**
|
|
42
|
+
/**
|
|
43
|
+
* Labels for a 19rem panel. Five rungs will not fit as words — `Ultra-compact`
|
|
44
|
+
* and `Ultra-large` alone are 25 characters — so the segmented control wears
|
|
45
|
+
* the garment sizes and the value it sets is still the ladder's own name.
|
|
46
|
+
*/
|
|
43
47
|
const DENSITY_LABELS = {
|
|
44
|
-
"ultra-compact": "
|
|
45
|
-
"
|
|
46
|
-
"
|
|
48
|
+
"ultra-compact": "XS",
|
|
49
|
+
"compact": "S",
|
|
50
|
+
"normal": "M",
|
|
51
|
+
"large": "L",
|
|
52
|
+
"ultra-large": "XL"
|
|
47
53
|
};
|
|
48
54
|
/** Bounds of the text-scale knob, from spec §6's `fontScale`. */
|
|
49
55
|
const FONT_SCALE = {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { cn } from "../lib/cn.js";
|
|
3
3
|
import { useIsomorphicLayoutEffect } from "../system/use-isomorphic-layout-effect.js";
|
|
4
|
+
import { useComposedRefs } from "../lib/compose.js";
|
|
4
5
|
import { useCuePortalProps } from "../system/portal.js";
|
|
5
6
|
import { usePrefersReducedMotion } from "../instruments/_motion.js";
|
|
6
|
-
import { useComposedRefs } from "../lib/compose.js";
|
|
7
7
|
import { DMX_RAMP_NAMES, activeChannels, dmxPalette, dmxPaletteColor, dmxPaletteInk } from "./_ramp.js";
|
|
8
8
|
import { DmxReadout } from "./_readout.js";
|
|
9
9
|
import * as React from "react";
|
package/dist/forms/otp-field.js
CHANGED
|
@@ -37,7 +37,7 @@ const OTPField$1 = React.forwardRef(function OTPField$2({ length = 6, size = "md
|
|
|
37
37
|
length,
|
|
38
38
|
"aria-label": ariaLabel,
|
|
39
39
|
"data-slot": "otp-field",
|
|
40
|
-
className: cn("flex items-center gap-(--cue-space-2)", className),
|
|
40
|
+
className: cn("relative flex items-center gap-(--cue-space-2)", className),
|
|
41
41
|
...elementProps,
|
|
42
42
|
children: [ariaLabel === void 0 ? null : /* @__PURE__ */ jsx("label", {
|
|
43
43
|
htmlFor: fieldId,
|
package/dist/index.d.ts
CHANGED
|
@@ -7,9 +7,17 @@ import { Message, MessageProps, MessageRole } from "./chat/message.js";
|
|
|
7
7
|
import { MessageList, MessageListProps } from "./chat/message-list.js";
|
|
8
8
|
import "./chat/index.js";
|
|
9
9
|
import { ScrollEdges, TAB_FADE_PX, computeScrollEdges, edgeFadeMask } from "./chrome/_tabs-scroll.js";
|
|
10
|
+
import { BarOverflow } from "./chrome/_edge-scroller.js";
|
|
10
11
|
import { TREE_GUIDE_GLYPHS, TreeGuide, TreeItem, TreeRow, flattenTree } from "./chrome/_tree.js";
|
|
12
|
+
import { Link, LinkProps, linkVariants } from "./layout/link.js";
|
|
13
|
+
import { Separator, SeparatorProps } from "./primitives/separator.js";
|
|
14
|
+
import { AppBar, AppBarActionsProps, AppBarBrandProps, AppBarLinkProps, AppBarNavProps, AppBarRegister, AppBarRootProps, AppBarSeparatorProps } from "./chrome/app-bar.js";
|
|
15
|
+
import { Sidebar, SidebarItemProps, SidebarRailProps, SidebarRootProps, SidebarSectionProps, useSidebar } from "./layout/sidebar.js";
|
|
16
|
+
import { AppShell, AppShellAsideProps, AppShellBodyProps, AppShellContentProps, AppShellNavTriggerProps, AppShellRootProps, AppShellScrollerProps, AppShellSidebarProps } from "./chrome/app-shell.js";
|
|
11
17
|
import { EmptyState, EmptyStateProps } from "./chrome/empty-state.js";
|
|
12
18
|
import { Eyebrow, EyebrowProps } from "./chrome/eyebrow.js";
|
|
19
|
+
import { Container, ContainerProps, ContainerWidth } from "./layout/container.js";
|
|
20
|
+
import { Footer, FooterProps } from "./chrome/footer.js";
|
|
13
21
|
import { NavigationMenu, NavigationMenuContentProps, NavigationMenuItemProps, NavigationMenuLinkProps, NavigationMenuListProps, NavigationMenuRootProps, NavigationMenuTriggerProps, NavigationMenuViewportProps } from "./chrome/navigation-menu.js";
|
|
14
22
|
import { PageShell, PageShellProps, PageWidth } from "./chrome/page-shell.js";
|
|
15
23
|
import { Panel, PanelHeader, PanelHeaderProps, PanelProps } from "./chrome/panel.js";
|
|
@@ -24,7 +32,7 @@ import { Tree, TreeProps, TreeVisibility, TreeVisibilityToggle, TreeVisibilityTo
|
|
|
24
32
|
import { Toolbar, ToolbarButtonProps, ToolbarGroupProps, ToolbarRootProps, ToolbarSeparatorProps } from "./chrome/toolbar.js";
|
|
25
33
|
import "./chrome/index.js";
|
|
26
34
|
import { ControlVariantProps, FormControlSize, bareControlClasses, controlClasses, controlGroupFocusClasses, controlSurface, controlVariants } from "./forms/_chassis.js";
|
|
27
|
-
import { ResolvedMode, ThemeContextValue, ThemeProvider, ThemeProviderProps } from "./system/theme-provider.js";
|
|
35
|
+
import { FontFamilies, ResolvedMode, ThemeContextValue, ThemeProvider, ThemeProviderProps } from "./system/theme-provider.js";
|
|
28
36
|
import { Autocomplete, AutocompleteProps } from "./forms/autocomplete.js";
|
|
29
37
|
import { ButtonGroup, ButtonGroupOrientation, ButtonGroupProps } from "./forms/button-group.js";
|
|
30
38
|
import { Checkbox, CheckboxGroup, CheckboxGroupProps, CheckboxProps } from "./forms/checkbox.js";
|
|
@@ -50,6 +58,11 @@ import { Textarea, TextareaProps } from "./forms/textarea.js";
|
|
|
50
58
|
import { Toggle, ToggleProps } from "./forms/toggle.js";
|
|
51
59
|
import { ToggleGroup, ToggleGroupProps } from "./forms/toggle-group.js";
|
|
52
60
|
import "./forms/index.js";
|
|
61
|
+
import { BrandAssetProps, BrandSize, BrandTone } from "./brand/_chassis.js";
|
|
62
|
+
import { CueLogotype, CueLogotypeProps } from "./brand/cue-logotype.js";
|
|
63
|
+
import { CueMark, CueMarkProps } from "./brand/cue-mark.js";
|
|
64
|
+
import { Plussie, PlussieExpression, PlussieProps } from "./brand/plussie.js";
|
|
65
|
+
import "./brand/index.js";
|
|
53
66
|
import { AppWindowFrame, AppWindowFrameProps } from "./instruments/app-window-frame.js";
|
|
54
67
|
import { Button, ButtonProps, buttonVariants } from "./primitives/button.js";
|
|
55
68
|
import { CopyButton, CopyButtonProps } from "./instruments/copy-button.js";
|
|
@@ -59,7 +72,7 @@ import { Progress, ProgressProps } from "./instruments/progress.js";
|
|
|
59
72
|
import { SeamCell, SeamCellProps, SeamGrid, SeamGridProps, SeamGround } from "./instruments/seam-grid.js";
|
|
60
73
|
import { Sparkline, SparklineProps } from "./instruments/sparkline.js";
|
|
61
74
|
import { Stat, StatProps, StatTone } from "./instruments/stat.js";
|
|
62
|
-
import { Table, TableCaptionProps, TableCellProps, TableHeadProps, TableRootProps, TableRowProps, TableSectionProps } from "./instruments/table.js";
|
|
75
|
+
import { Table, TableCaptionProps, TableCellProps, TableHeadProps, TableRootProps, TableRowProps, TableScrollRegion, TableScrollRegionProps, TableSectionProps } from "./instruments/table.js";
|
|
63
76
|
import { TerminalFrame, TerminalFrameLine, TerminalFrameProps, TerminalLine, TerminalLineTone, TerminalScript, TerminalStep } from "./instruments/terminal-frame.js";
|
|
64
77
|
import { TwoStepButton, TwoStepButtonProps, TwoStepTone } from "./instruments/two-step-button.js";
|
|
65
78
|
import { UsageChart, UsageChartPoint, UsageChartProps, UsageChartTone } from "./instruments/usage-chart.js";
|
|
@@ -68,14 +81,11 @@ import { Accordion, AccordionHeaderProps, AccordionItemProps, AccordionPanelProp
|
|
|
68
81
|
import { Breadcrumb, BreadcrumbItem, BreadcrumbProps } from "./layout/breadcrumb.js";
|
|
69
82
|
import { Card, CardContentProps, CardDescriptionProps, CardFooterProps, CardHeaderProps, CardRootProps, CardTitleProps } from "./layout/card.js";
|
|
70
83
|
import { Collapsible, CollapsiblePanelProps, CollapsibleRootProps, CollapsibleTriggerProps, Disclosure, DisclosureProps } from "./layout/collapsible.js";
|
|
71
|
-
import { Container, ContainerProps, ContainerWidth } from "./layout/container.js";
|
|
72
84
|
import { DescriptionList, DescriptionListDetailProps, DescriptionListLayout, DescriptionListRootProps, DescriptionListTermProps } from "./layout/description-list.js";
|
|
73
85
|
import { SpaceStep, Stack, StackAlign, StackJustify, StackProps } from "./layout/stack.js";
|
|
74
86
|
import { Grid, GridColumns, GridProps } from "./layout/grid.js";
|
|
75
87
|
import { Item, ItemProps, itemVariants } from "./layout/item.js";
|
|
76
|
-
import { Link, LinkProps, linkVariants } from "./layout/link.js";
|
|
77
88
|
import { Pagination, PaginationEntry, PaginationProps, paginationRange } from "./layout/pagination.js";
|
|
78
|
-
import { Sidebar, SidebarItemProps, SidebarRailProps, SidebarRootProps, SidebarSectionProps, useSidebar } from "./layout/sidebar.js";
|
|
79
89
|
import { Stepper, StepperProps, StepperState, StepperStep } from "./layout/stepper.js";
|
|
80
90
|
import { StatusDot, StatusDotProps, StatusTone } from "./primitives/status-dot.js";
|
|
81
91
|
import { Timeline, TimelineContentProps, TimelineItemProps, TimelineMarkerProps, TimelineRootProps } from "./layout/timeline.js";
|
|
@@ -99,14 +109,13 @@ import { Avatar, AvatarGroup, AvatarGroupProps, AvatarProps, AvatarSize } from "
|
|
|
99
109
|
import { Chip, ChipProps, chipVariants } from "./primitives/chip.js";
|
|
100
110
|
import { IconButton, IconButtonProps } from "./primitives/icon-button.js";
|
|
101
111
|
import { Kbd, KbdProps } from "./primitives/kbd.js";
|
|
102
|
-
import { Separator, SeparatorProps } from "./primitives/separator.js";
|
|
103
112
|
import { Skeleton, SkeletonProps } from "./primitives/skeleton.js";
|
|
104
113
|
import { Spinner, SpinnerProps } from "./primitives/spinner.js";
|
|
105
114
|
import "./primitives/index.js";
|
|
106
115
|
import { Density, DensityProps } from "./system/density.js";
|
|
107
116
|
import { CuePortalFrame, CuePortalFrameProps, useCuePortalProps } from "./system/portal.js";
|
|
108
|
-
import { DEFAULT_STORAGE_KEY, PersistedPreferences, prepaintScript } from "./system/prepaint.js";
|
|
117
|
+
import { DEFAULT_STORAGE_KEY, PersistedPreferences, PrepaintDefaults, PrepaintOptions, prepaintScript } from "./system/prepaint.js";
|
|
109
118
|
import { ControlSize, useControlHeight, useDensity } from "./system/use-density.js";
|
|
110
119
|
import { useTheme } from "./system/use-theme.js";
|
|
111
|
-
import { DensityLevel, Mode, ThemeName } from "./system/index.js";
|
|
112
|
-
export { AGENT_COLOR_PROPERTY, AGENT_HUES, AGENT_ROOT_COLOR, Accordion, type AccordionHeaderProps, type AccordionItemProps, type AccordionPanelProps, type AccordionRootProps, type AccordionTriggerProps, type AgentColorOptions, AgentPile, type AgentPileEntry, type AgentPileProps, type AgentPileSize, AlertDialog, type AlertDialogActionProps, type AlertDialogCancelProps, type AlertDialogContentProps, type AlertDialogDescriptionProps, type AlertDialogFooterProps, type AlertDialogRootProps, type AlertDialogTitleProps, type AlertDialogTriggerProps, AppWindowFrame, type AppWindowFrameProps, type AskAnswer, AskBox, type AskBoxProps, type AskDanger, type AskKind, type AskOption, Autocomplete, type AutocompleteProps, Avatar, AvatarGroup, type AvatarGroupProps, type AvatarProps, type AvatarSize, Breadcrumb, type BreadcrumbItem, type BreadcrumbProps, Button, ButtonGroup, type ButtonGroupOrientation, type ButtonGroupProps, type ButtonProps, Card, type CardContentProps, type CardDescriptionProps, type CardFooterProps, type CardHeaderProps, type CardRootProps, type CardTitleProps, Checkbox, CheckboxGroup, type CheckboxGroupProps, type CheckboxProps, Chip, type ChipProps, Collapsible, type CollapsiblePanelProps, type CollapsibleRootProps, type CollapsibleTriggerProps, Combobox, type ComboboxOption, type ComboboxProps, CommandPalette, type CommandPaletteItem, type CommandPaletteProps, Composer, type ComposerProps, type ComposerSubmitKey, Container, type ContainerProps, type ContainerWidth, ContextMenu, type ContextMenuContentProps, type ContextMenuRootProps, type ContextMenuTriggerProps, type ControlSize, type ControlVariantProps, CopyButton, type CopyButtonProps, CuePortalFrame, type CuePortalFrameProps, DEFAULT_STORAGE_KEY, DelegationCard, type DelegationCardProps, type DelegationDirection, type DelegationStatus, Density, type DensityLevel, type DensityProps, DescriptionList, type DescriptionListDetailProps, type DescriptionListLayout, type DescriptionListRootProps, type DescriptionListTermProps, Dialog, type DialogCloseProps, type DialogContentProps, type DialogDescriptionProps, type DialogFooterProps, type DialogRootProps, type DialogTitleProps, type DialogTriggerProps, Disclosure, type DisclosureProps, Drawer, type DrawerCloseProps, type DrawerContentProps, type DrawerDescriptionProps, type DrawerFooterProps, type DrawerRootProps, type DrawerSwipeDirection, type DrawerTitleProps, type DrawerTriggerProps, DropdownMenu, type DropdownMenuCheckboxItemProps, type DropdownMenuContentProps, type DropdownMenuGroupProps, type DropdownMenuItemProps, type DropdownMenuLabelProps, type DropdownMenuRootProps, type DropdownMenuSeparatorProps, type DropdownMenuTriggerProps, EmptyState, type EmptyStateProps, EnvVarInput, type EnvVarInputProps, Eyebrow, type EyebrowProps, Field, FieldDescription, type FieldDescriptionProps, FieldError, type FieldErrorProps, type FieldIssue, FieldLabel, type FieldLabelProps, type FieldProps, type FilePartition, type FilePartitionOptions, type FileRejectReason, type FileRejection, FileUpload, type FileUploadProps, type FormControlSize, Grid, type GridColumns, type GridProps, GroupBar, type GroupBarItem, type GroupBarProps, type GroupBarTone, HoverCard, type HoverCardContentProps, type HoverCardRootProps, type HoverCardTriggerProps, IconButton, type IconButtonProps, InfoTip, type InfoTipProps, Input, InputGroup, type InputGroupProps, type InputProps, Item, type ItemProps, Kbd, type KbdProps, Link, type LinkProps, Menubar, type MenubarContentProps, type MenubarMenuProps, type MenubarRootProps, type MenubarTriggerProps, Message, MessageList, type MessageListProps, type MessageProps, type MessageRole, Meter, type MeterProps, type MeterProvenance, type MeterTone, type Mode, MultiSelect, type MultiSelectProps, NavigationMenu, type NavigationMenuContentProps, type NavigationMenuItemProps, type NavigationMenuLinkProps, type NavigationMenuListProps, type NavigationMenuRootProps, type NavigationMenuTriggerProps, type NavigationMenuViewportProps, NumberField, type NumberFieldProps, OTPField, type OTPFieldProps, OVERLAY_SIDE_OFFSET, PageShell, type PageShellProps, type PageWidth, Pagination, type PaginationEntry, type PaginationProps, Panel, PanelHeader, type PanelHeaderProps, type PanelProps, PasswordInput, type PasswordInputProps, type PersistedPreferences, Popover, type PopoverCloseProps, type PopoverContentProps, type PopoverDescriptionProps, type PopoverRootProps, type PopoverTitleProps, type PopoverTriggerProps, Progress, type ProgressProps, Radio, RadioGroup, type RadioGroupProps, type RadioProps, Rating, type RatingProps, type RatingSize, type ResolvedMode, Row, type RowProps, ScrollArea, type ScrollAreaOrientation, type ScrollAreaProps, type ScrollEdges, ScrollableTabsList, type ScrollableTabsListProps, ScrubInput, type ScrubInputProps, SeamCell, type SeamCellProps, SeamGrid, type SeamGridProps, type SeamGround, SeamList, type SeamListProps, SearchInput, type SearchInputProps, SectionHeader, type SectionHeaderProps, SegmentedControl, type SegmentedControlItem, type SegmentedControlProps, type SegmentedControlSize, Select, type SelectOption, type SelectProps, Separator, type SeparatorProps, Sheet, type SheetCloseProps, type SheetContentProps, type SheetDescriptionProps, type SheetFooterProps, type SheetRootProps, type SheetTitleProps, type SheetTriggerProps, Sidebar, type SidebarItemProps, type SidebarRailProps, type SidebarRootProps, type SidebarSectionProps, Skeleton, type SkeletonProps, Slider, type SliderProps, type SpaceStep, Sparkline, type SparklineProps, Spinner, type SpinnerProps, Stack, type StackAlign, type StackJustify, type StackProps, Stat, type StatProps, type StatTone, StatusBar, type StatusBarItemProps, type StatusBarProps, type StatusBarTone, StatusDot, type StatusDotProps, type StatusTone, Stepper, type StepperProps, type StepperState, type StepperStep, Switch, type SwitchProps, TAB_FADE_PX, TREE_GUIDE_GLYPHS, Table, type TableCaptionProps, type TableCellProps, type TableHeadProps, type TableRootProps, type TableRowProps, type TableSectionProps, Tabs, type TabsListProps, type TabsPanelProps, type TabsRootProps, type TabsTabProps, TagsInput, type TagsInputProps, TerminalFrame, type TerminalFrameLine, type TerminalFrameProps, type TerminalLine, type TerminalLineTone, type TerminalScript, type TerminalStep, Textarea, type TextareaProps, type ThemeContextValue, type ThemeName, ThemeProvider, type ThemeProviderProps, Timeline, type TimelineContentProps, type TimelineItemProps, type TimelineMarkerProps, type TimelineRootProps, TitleBar, type TitleBarProps, Toast, type ToastManager, type ToastOptions, type ToastProviderProps, type ToastTone, type ToastViewportProps, Toggle, ToggleGroup, type ToggleGroupProps, type ToggleProps, Toolbar, type ToolbarButtonProps, type ToolbarGroupProps, type ToolbarRootProps, type ToolbarSeparatorProps, Tooltip, type TooltipContentProps, type TooltipProviderProps, type TooltipRootProps, type TooltipTriggerProps, Tree, type TreeGuide, type TreeItem, type TreeProps, type TreeRow, type TreeVisibility, TreeVisibilityToggle, type TreeVisibilityToggleProps, TwoStepButton, type TwoStepButtonProps, type TwoStepTone, type UploadFile, type UploadStatus, UsageChart, type UsageChartPoint, type UsageChartProps, type UsageChartTone, agentColor, agentColorStyle, bareControlClasses, buttonVariants, chipVariants, computeScrollEdges, controlClasses, controlGroupFocusClasses, controlSurface, controlVariants, edgeFadeMask, envReference, flattenTree, itemVariants, linkVariants, menuItemClasses, menuLabelClasses, menuPopupClasses, menuSeparatorClasses, overlayDescriptionClasses, overlayFooterClasses, overlayModalTransitionClasses, overlayPopupTransitionClasses, overlayPositionerClasses, overlaySurfaceClasses, overlayTextClasses, overlayTitleClasses, paginationRange, parseEnvReference, partitionFiles, prepaintScript, rowVariants, scrimClasses, useControlHeight, useCuePortalProps, useDensity, useSidebar, useTheme, useToast };
|
|
120
|
+
import { DensityLevel, FontName, Mode, ThemeName } from "./system/index.js";
|
|
121
|
+
export { AGENT_COLOR_PROPERTY, AGENT_HUES, AGENT_ROOT_COLOR, Accordion, type AccordionHeaderProps, type AccordionItemProps, type AccordionPanelProps, type AccordionRootProps, type AccordionTriggerProps, type AgentColorOptions, AgentPile, type AgentPileEntry, type AgentPileProps, type AgentPileSize, AlertDialog, type AlertDialogActionProps, type AlertDialogCancelProps, type AlertDialogContentProps, type AlertDialogDescriptionProps, type AlertDialogFooterProps, type AlertDialogRootProps, type AlertDialogTitleProps, type AlertDialogTriggerProps, AppBar, type AppBarActionsProps, type AppBarBrandProps, type AppBarLinkProps, type AppBarNavProps, type AppBarRegister, type AppBarRootProps, type AppBarSeparatorProps, AppShell, type AppShellAsideProps, type AppShellBodyProps, type AppShellContentProps, type AppShellNavTriggerProps, type AppShellRootProps, type AppShellScrollerProps, type AppShellSidebarProps, AppWindowFrame, type AppWindowFrameProps, type AskAnswer, AskBox, type AskBoxProps, type AskDanger, type AskKind, type AskOption, Autocomplete, type AutocompleteProps, Avatar, AvatarGroup, type AvatarGroupProps, type AvatarProps, type AvatarSize, type BarOverflow, type BrandAssetProps, type BrandSize, type BrandTone, Breadcrumb, type BreadcrumbItem, type BreadcrumbProps, Button, ButtonGroup, type ButtonGroupOrientation, type ButtonGroupProps, type ButtonProps, Card, type CardContentProps, type CardDescriptionProps, type CardFooterProps, type CardHeaderProps, type CardRootProps, type CardTitleProps, Checkbox, CheckboxGroup, type CheckboxGroupProps, type CheckboxProps, Chip, type ChipProps, Collapsible, type CollapsiblePanelProps, type CollapsibleRootProps, type CollapsibleTriggerProps, Combobox, type ComboboxOption, type ComboboxProps, CommandPalette, type CommandPaletteItem, type CommandPaletteProps, Composer, type ComposerProps, type ComposerSubmitKey, Container, type ContainerProps, type ContainerWidth, ContextMenu, type ContextMenuContentProps, type ContextMenuRootProps, type ContextMenuTriggerProps, type ControlSize, type ControlVariantProps, CopyButton, type CopyButtonProps, CueLogotype, type CueLogotypeProps, CueMark, type CueMarkProps, CuePortalFrame, type CuePortalFrameProps, DEFAULT_STORAGE_KEY, DelegationCard, type DelegationCardProps, type DelegationDirection, type DelegationStatus, Density, type DensityLevel, type DensityProps, DescriptionList, type DescriptionListDetailProps, type DescriptionListLayout, type DescriptionListRootProps, type DescriptionListTermProps, Dialog, type DialogCloseProps, type DialogContentProps, type DialogDescriptionProps, type DialogFooterProps, type DialogRootProps, type DialogTitleProps, type DialogTriggerProps, Disclosure, type DisclosureProps, Drawer, type DrawerCloseProps, type DrawerContentProps, type DrawerDescriptionProps, type DrawerFooterProps, type DrawerRootProps, type DrawerSwipeDirection, type DrawerTitleProps, type DrawerTriggerProps, DropdownMenu, type DropdownMenuCheckboxItemProps, type DropdownMenuContentProps, type DropdownMenuGroupProps, type DropdownMenuItemProps, type DropdownMenuLabelProps, type DropdownMenuRootProps, type DropdownMenuSeparatorProps, type DropdownMenuTriggerProps, EmptyState, type EmptyStateProps, EnvVarInput, type EnvVarInputProps, Eyebrow, type EyebrowProps, Field, FieldDescription, type FieldDescriptionProps, FieldError, type FieldErrorProps, type FieldIssue, FieldLabel, type FieldLabelProps, type FieldProps, type FilePartition, type FilePartitionOptions, type FileRejectReason, type FileRejection, FileUpload, type FileUploadProps, type FontFamilies, type FontName, Footer, type FooterProps, type FormControlSize, Grid, type GridColumns, type GridProps, GroupBar, type GroupBarItem, type GroupBarProps, type GroupBarTone, HoverCard, type HoverCardContentProps, type HoverCardRootProps, type HoverCardTriggerProps, IconButton, type IconButtonProps, InfoTip, type InfoTipProps, Input, InputGroup, type InputGroupProps, type InputProps, Item, type ItemProps, Kbd, type KbdProps, Link, type LinkProps, Menubar, type MenubarContentProps, type MenubarMenuProps, type MenubarRootProps, type MenubarTriggerProps, Message, MessageList, type MessageListProps, type MessageProps, type MessageRole, Meter, type MeterProps, type MeterProvenance, type MeterTone, type Mode, MultiSelect, type MultiSelectProps, NavigationMenu, type NavigationMenuContentProps, type NavigationMenuItemProps, type NavigationMenuLinkProps, type NavigationMenuListProps, type NavigationMenuRootProps, type NavigationMenuTriggerProps, type NavigationMenuViewportProps, NumberField, type NumberFieldProps, OTPField, type OTPFieldProps, OVERLAY_SIDE_OFFSET, PageShell, type PageShellProps, type PageWidth, Pagination, type PaginationEntry, type PaginationProps, Panel, PanelHeader, type PanelHeaderProps, type PanelProps, PasswordInput, type PasswordInputProps, type PersistedPreferences, Plussie, type PlussieExpression, type PlussieProps, Popover, type PopoverCloseProps, type PopoverContentProps, type PopoverDescriptionProps, type PopoverRootProps, type PopoverTitleProps, type PopoverTriggerProps, type PrepaintDefaults, type PrepaintOptions, Progress, type ProgressProps, Radio, RadioGroup, type RadioGroupProps, type RadioProps, Rating, type RatingProps, type RatingSize, type ResolvedMode, Row, type RowProps, ScrollArea, type ScrollAreaOrientation, type ScrollAreaProps, type ScrollEdges, ScrollableTabsList, type ScrollableTabsListProps, ScrubInput, type ScrubInputProps, SeamCell, type SeamCellProps, SeamGrid, type SeamGridProps, type SeamGround, SeamList, type SeamListProps, SearchInput, type SearchInputProps, SectionHeader, type SectionHeaderProps, SegmentedControl, type SegmentedControlItem, type SegmentedControlProps, type SegmentedControlSize, Select, type SelectOption, type SelectProps, Separator, type SeparatorProps, Sheet, type SheetCloseProps, type SheetContentProps, type SheetDescriptionProps, type SheetFooterProps, type SheetRootProps, type SheetTitleProps, type SheetTriggerProps, Sidebar, type SidebarItemProps, type SidebarRailProps, type SidebarRootProps, type SidebarSectionProps, Skeleton, type SkeletonProps, Slider, type SliderProps, type SpaceStep, Sparkline, type SparklineProps, Spinner, type SpinnerProps, Stack, type StackAlign, type StackJustify, type StackProps, Stat, type StatProps, type StatTone, StatusBar, type StatusBarItemProps, type StatusBarProps, type StatusBarTone, StatusDot, type StatusDotProps, type StatusTone, Stepper, type StepperProps, type StepperState, type StepperStep, Switch, type SwitchProps, TAB_FADE_PX, TREE_GUIDE_GLYPHS, Table, type TableCaptionProps, type TableCellProps, type TableHeadProps, type TableRootProps, type TableRowProps, TableScrollRegion, type TableScrollRegionProps, type TableSectionProps, Tabs, type TabsListProps, type TabsPanelProps, type TabsRootProps, type TabsTabProps, TagsInput, type TagsInputProps, TerminalFrame, type TerminalFrameLine, type TerminalFrameProps, type TerminalLine, type TerminalLineTone, type TerminalScript, type TerminalStep, Textarea, type TextareaProps, type ThemeContextValue, type ThemeName, ThemeProvider, type ThemeProviderProps, Timeline, type TimelineContentProps, type TimelineItemProps, type TimelineMarkerProps, type TimelineRootProps, TitleBar, type TitleBarProps, Toast, type ToastManager, type ToastOptions, type ToastProviderProps, type ToastTone, type ToastViewportProps, Toggle, ToggleGroup, type ToggleGroupProps, type ToggleProps, Toolbar, type ToolbarButtonProps, type ToolbarGroupProps, type ToolbarRootProps, type ToolbarSeparatorProps, Tooltip, type TooltipContentProps, type TooltipProviderProps, type TooltipRootProps, type TooltipTriggerProps, Tree, type TreeGuide, type TreeItem, type TreeProps, type TreeRow, type TreeVisibility, TreeVisibilityToggle, type TreeVisibilityToggleProps, TwoStepButton, type TwoStepButtonProps, type TwoStepTone, type UploadFile, type UploadStatus, UsageChart, type UsageChartPoint, type UsageChartProps, type UsageChartTone, agentColor, agentColorStyle, bareControlClasses, buttonVariants, chipVariants, computeScrollEdges, controlClasses, controlGroupFocusClasses, controlSurface, controlVariants, edgeFadeMask, envReference, flattenTree, itemVariants, linkVariants, menuItemClasses, menuLabelClasses, menuPopupClasses, menuSeparatorClasses, overlayDescriptionClasses, overlayFooterClasses, overlayModalTransitionClasses, overlayPopupTransitionClasses, overlayPositionerClasses, overlaySurfaceClasses, overlayTextClasses, overlayTitleClasses, paginationRange, parseEnvReference, partitionFiles, prepaintScript, rowVariants, scrimClasses, useControlHeight, useCuePortalProps, useDensity, useSidebar, useTheme, useToast };
|
package/dist/index.js
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
import { CueLogotype } from "./brand/cue-logotype.js";
|
|
2
|
+
import { CueMark } from "./brand/cue-mark.js";
|
|
3
|
+
import { Plussie } from "./brand/plussie.js";
|
|
1
4
|
import { AGENT_COLOR_PROPERTY, AGENT_HUES, AGENT_ROOT_COLOR, agentColor, agentColorStyle } from "./chat/agent-color.js";
|
|
2
5
|
import { AgentPile } from "./chat/agent-pile.js";
|
|
3
6
|
import { Checkbox, CheckboxGroup } from "./forms/checkbox.js";
|
|
@@ -16,13 +19,22 @@ import { Message } from "./chat/message.js";
|
|
|
16
19
|
import { MessageList } from "./chat/message-list.js";
|
|
17
20
|
import { TAB_FADE_PX, computeScrollEdges, edgeFadeMask } from "./chrome/_tabs-scroll.js";
|
|
18
21
|
import { TREE_GUIDE_GLYPHS, flattenTree } from "./chrome/_tree.js";
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
22
|
+
import { Link, linkVariants } from "./layout/link.js";
|
|
23
|
+
import { Separator } from "./primitives/separator.js";
|
|
24
|
+
import { AppBar } from "./chrome/app-bar.js";
|
|
25
|
+
import { Sidebar, useSidebar } from "./layout/sidebar.js";
|
|
21
26
|
import { Density } from "./system/density.js";
|
|
22
27
|
import { DEFAULT_STORAGE_KEY, prepaintScript } from "./system/prepaint.js";
|
|
23
28
|
import { ThemeProvider } from "./system/theme-provider.js";
|
|
24
29
|
import { CuePortalFrame, useCuePortalProps } from "./system/portal.js";
|
|
25
30
|
import { OVERLAY_SIDE_OFFSET, menuItemClasses, menuLabelClasses, menuPopupClasses, menuSeparatorClasses, overlayDescriptionClasses, overlayFooterClasses, overlayModalTransitionClasses, overlayPopupTransitionClasses, overlayPositionerClasses, overlaySurfaceClasses, overlayTextClasses, overlayTitleClasses, scrimClasses } from "./overlays/_surface.js";
|
|
31
|
+
import { Drawer } from "./overlays/drawer.js";
|
|
32
|
+
import { IconButton } from "./primitives/icon-button.js";
|
|
33
|
+
import { AppShell } from "./chrome/app-shell.js";
|
|
34
|
+
import { EmptyState } from "./chrome/empty-state.js";
|
|
35
|
+
import { Eyebrow } from "./chrome/eyebrow.js";
|
|
36
|
+
import { Container } from "./layout/container.js";
|
|
37
|
+
import { Footer } from "./chrome/footer.js";
|
|
26
38
|
import { NavigationMenu } from "./chrome/navigation-menu.js";
|
|
27
39
|
import { PageShell } from "./chrome/page-shell.js";
|
|
28
40
|
import { Panel, PanelHeader } from "./chrome/panel.js";
|
|
@@ -62,7 +74,7 @@ import { Progress } from "./instruments/progress.js";
|
|
|
62
74
|
import { SeamCell, SeamGrid } from "./instruments/seam-grid.js";
|
|
63
75
|
import { Sparkline } from "./instruments/sparkline.js";
|
|
64
76
|
import { Stat } from "./instruments/stat.js";
|
|
65
|
-
import { Table } from "./instruments/table.js";
|
|
77
|
+
import { Table, TableScrollRegion } from "./instruments/table.js";
|
|
66
78
|
import { TerminalFrame } from "./instruments/terminal-frame.js";
|
|
67
79
|
import { TwoStepButton } from "./instruments/two-step-button.js";
|
|
68
80
|
import { UsageChart } from "./instruments/usage-chart.js";
|
|
@@ -70,15 +82,11 @@ import { Accordion } from "./layout/accordion.js";
|
|
|
70
82
|
import { Breadcrumb } from "./layout/breadcrumb.js";
|
|
71
83
|
import { Card } from "./layout/card.js";
|
|
72
84
|
import { Collapsible, Disclosure } from "./layout/collapsible.js";
|
|
73
|
-
import { Container } from "./layout/container.js";
|
|
74
85
|
import { DescriptionList } from "./layout/description-list.js";
|
|
75
86
|
import { Stack } from "./layout/stack.js";
|
|
76
87
|
import { Grid } from "./layout/grid.js";
|
|
77
88
|
import { Item, itemVariants } from "./layout/item.js";
|
|
78
|
-
import { Link, linkVariants } from "./layout/link.js";
|
|
79
|
-
import { IconButton } from "./primitives/icon-button.js";
|
|
80
89
|
import { Pagination, paginationRange } from "./layout/pagination.js";
|
|
81
|
-
import { Sidebar, useSidebar } from "./layout/sidebar.js";
|
|
82
90
|
import { Stepper } from "./layout/stepper.js";
|
|
83
91
|
import { StatusDot } from "./primitives/status-dot.js";
|
|
84
92
|
import { Timeline } from "./layout/timeline.js";
|
|
@@ -87,7 +95,6 @@ import { CommandPalette } from "./overlays/command-palette.js";
|
|
|
87
95
|
import { DropdownMenu } from "./overlays/dropdown-menu.js";
|
|
88
96
|
import { ContextMenu } from "./overlays/context-menu.js";
|
|
89
97
|
import { Dialog } from "./overlays/dialog.js";
|
|
90
|
-
import { Drawer } from "./overlays/drawer.js";
|
|
91
98
|
import { HoverCard } from "./overlays/hover-card.js";
|
|
92
99
|
import { Tooltip } from "./overlays/tooltip.js";
|
|
93
100
|
import { InfoTip } from "./overlays/info-tip.js";
|
|
@@ -97,8 +104,7 @@ import { Sheet } from "./overlays/sheet.js";
|
|
|
97
104
|
import { Toast, useToast } from "./overlays/toast.js";
|
|
98
105
|
import { Avatar, AvatarGroup } from "./primitives/avatar.js";
|
|
99
106
|
import { Kbd } from "./primitives/kbd.js";
|
|
100
|
-
import { Separator } from "./primitives/separator.js";
|
|
101
107
|
import { Skeleton } from "./primitives/skeleton.js";
|
|
102
108
|
import { useControlHeight, useDensity } from "./system/use-density.js";
|
|
103
109
|
import { useTheme } from "./system/use-theme.js";
|
|
104
|
-
export { AGENT_COLOR_PROPERTY, AGENT_HUES, AGENT_ROOT_COLOR, Accordion, AgentPile, AlertDialog, AppWindowFrame, AskBox, Autocomplete, Avatar, AvatarGroup, Breadcrumb, Button, ButtonGroup, Card, Checkbox, CheckboxGroup, Chip, Collapsible, Combobox, CommandPalette, Composer, Container, ContextMenu, CopyButton, CuePortalFrame, DEFAULT_STORAGE_KEY, DelegationCard, Density, DescriptionList, Dialog, Disclosure, Drawer, DropdownMenu, EmptyState, EnvVarInput, Eyebrow, Field, FieldDescription, FieldError, FieldLabel, FileUpload, Grid, GroupBar, HoverCard, IconButton, InfoTip, Input, InputGroup, Item, Kbd, Link, Menubar, Message, MessageList, Meter, MultiSelect, NavigationMenu, NumberField, OTPField, OVERLAY_SIDE_OFFSET, PageShell, Pagination, Panel, PanelHeader, PasswordInput, Popover, Progress, Radio, RadioGroup, Rating, Row, ScrollArea, ScrollableTabsList, ScrubInput, SeamCell, SeamGrid, SeamList, SearchInput, SectionHeader, SegmentedControl, Select, Separator, Sheet, Sidebar, Skeleton, Slider, Sparkline, Spinner, Stack, Stat, StatusBar, StatusDot, Stepper, Switch, TAB_FADE_PX, TREE_GUIDE_GLYPHS, Table, Tabs, TagsInput, TerminalFrame, Textarea, ThemeProvider, Timeline, TitleBar, Toast, Toggle, ToggleGroup, Toolbar, Tooltip, Tree, TreeVisibilityToggle, TwoStepButton, UsageChart, agentColor, agentColorStyle, bareControlClasses, buttonVariants, chipVariants, computeScrollEdges, controlClasses, controlGroupFocusClasses, controlSurface, controlVariants, edgeFadeMask, envReference, flattenTree, itemVariants, linkVariants, menuItemClasses, menuLabelClasses, menuPopupClasses, menuSeparatorClasses, overlayDescriptionClasses, overlayFooterClasses, overlayModalTransitionClasses, overlayPopupTransitionClasses, overlayPositionerClasses, overlaySurfaceClasses, overlayTextClasses, overlayTitleClasses, paginationRange, parseEnvReference, partitionFiles, prepaintScript, rowVariants, scrimClasses, useControlHeight, useCuePortalProps, useDensity, useSidebar, useTheme, useToast };
|
|
110
|
+
export { AGENT_COLOR_PROPERTY, AGENT_HUES, AGENT_ROOT_COLOR, Accordion, AgentPile, AlertDialog, AppBar, AppShell, AppWindowFrame, AskBox, Autocomplete, Avatar, AvatarGroup, Breadcrumb, Button, ButtonGroup, Card, Checkbox, CheckboxGroup, Chip, Collapsible, Combobox, CommandPalette, Composer, Container, ContextMenu, CopyButton, CueLogotype, CueMark, CuePortalFrame, DEFAULT_STORAGE_KEY, DelegationCard, Density, DescriptionList, Dialog, Disclosure, Drawer, DropdownMenu, EmptyState, EnvVarInput, Eyebrow, Field, FieldDescription, FieldError, FieldLabel, FileUpload, Footer, Grid, GroupBar, HoverCard, IconButton, InfoTip, Input, InputGroup, Item, Kbd, Link, Menubar, Message, MessageList, Meter, MultiSelect, NavigationMenu, NumberField, OTPField, OVERLAY_SIDE_OFFSET, PageShell, Pagination, Panel, PanelHeader, PasswordInput, Plussie, Popover, Progress, Radio, RadioGroup, Rating, Row, ScrollArea, ScrollableTabsList, ScrubInput, SeamCell, SeamGrid, SeamList, SearchInput, SectionHeader, SegmentedControl, Select, Separator, Sheet, Sidebar, Skeleton, Slider, Sparkline, Spinner, Stack, Stat, StatusBar, StatusDot, Stepper, Switch, TAB_FADE_PX, TREE_GUIDE_GLYPHS, Table, TableScrollRegion, Tabs, TagsInput, TerminalFrame, Textarea, ThemeProvider, Timeline, TitleBar, Toast, Toggle, ToggleGroup, Toolbar, Tooltip, Tree, TreeVisibilityToggle, TwoStepButton, UsageChart, agentColor, agentColorStyle, bareControlClasses, buttonVariants, chipVariants, computeScrollEdges, controlClasses, controlGroupFocusClasses, controlSurface, controlVariants, edgeFadeMask, envReference, flattenTree, itemVariants, linkVariants, menuItemClasses, menuLabelClasses, menuPopupClasses, menuSeparatorClasses, overlayDescriptionClasses, overlayFooterClasses, overlayModalTransitionClasses, overlayPopupTransitionClasses, overlayPositionerClasses, overlaySurfaceClasses, overlayTextClasses, overlayTitleClasses, paginationRange, parseEnvReference, partitionFiles, prepaintScript, rowVariants, scrimClasses, useControlHeight, useCuePortalProps, useDensity, useSidebar, useTheme, useToast };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { cn } from "../lib/cn.js";
|
|
3
|
+
import { IconButton } from "../primitives/icon-button.js";
|
|
3
4
|
import { SearchInput } from "../forms/search-input.js";
|
|
4
5
|
import { ChevronLeftGlyph, ChevronRightGlyph, ChevronsLeftGlyph, ChevronsRightGlyph } from "./_glyphs.js";
|
|
5
|
-
import { IconButton } from "../primitives/icon-button.js";
|
|
6
6
|
import * as React from "react";
|
|
7
7
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
8
8
|
import { columnFilteringFeature, createColumnHelper, createFilteredRowModel, createPaginatedRowModel, createSortedRowModel, filterFn_inNumberRange, filterFn_includesString, flexRender, globalFilteringFeature, rowPaginationFeature, rowSortingFeature, sortFn_alphanumeric, sortFn_basic, sortFn_datetime, sortFn_text, tableFeatures, useTable } from "@tanstack/react-table";
|
|
@@ -6,8 +6,8 @@ import { Progress, ProgressProps } from "./progress.js";
|
|
|
6
6
|
import { SeamCell, SeamCellProps, SeamGrid, SeamGridProps, SeamGround } from "./seam-grid.js";
|
|
7
7
|
import { Sparkline, SparklineProps } from "./sparkline.js";
|
|
8
8
|
import { Stat, StatProps, StatTone } from "./stat.js";
|
|
9
|
-
import { Table, TableCaptionProps, TableCellProps, TableHeadProps, TableRootProps, TableRowProps, TableSectionProps } from "./table.js";
|
|
9
|
+
import { Table, TableCaptionProps, TableCellProps, TableHeadProps, TableRootProps, TableRowProps, TableScrollRegion, TableScrollRegionProps, TableSectionProps } from "./table.js";
|
|
10
10
|
import { TerminalFrame, TerminalFrameLine, TerminalFrameProps, TerminalLine, TerminalLineTone, TerminalScript, TerminalStep } from "./terminal-frame.js";
|
|
11
11
|
import { TwoStepButton, TwoStepButtonProps, TwoStepTone } from "./two-step-button.js";
|
|
12
12
|
import { UsageChart, UsageChartPoint, UsageChartProps, UsageChartTone } from "./usage-chart.js";
|
|
13
|
-
export { AppWindowFrame, type AppWindowFrameProps, CopyButton, type CopyButtonProps, GroupBar, type GroupBarItem, type GroupBarProps, type GroupBarTone, Meter, type MeterProps, type MeterProvenance, type MeterTone, Progress, type ProgressProps, SeamCell, type SeamCellProps, SeamGrid, type SeamGridProps, type SeamGround, Sparkline, type SparklineProps, Stat, type StatProps, type StatTone, Table, type TableCaptionProps, type TableCellProps, type TableHeadProps, type TableRootProps, type TableRowProps, type TableSectionProps, TerminalFrame, type TerminalFrameLine, type TerminalFrameProps, type TerminalLine, type TerminalLineTone, type TerminalScript, type TerminalStep, TwoStepButton, type TwoStepButtonProps, type TwoStepTone, UsageChart, type UsageChartPoint, type UsageChartProps, type UsageChartTone };
|
|
13
|
+
export { AppWindowFrame, type AppWindowFrameProps, CopyButton, type CopyButtonProps, GroupBar, type GroupBarItem, type GroupBarProps, type GroupBarTone, Meter, type MeterProps, type MeterProvenance, type MeterTone, Progress, type ProgressProps, SeamCell, type SeamCellProps, SeamGrid, type SeamGridProps, type SeamGround, Sparkline, type SparklineProps, Stat, type StatProps, type StatTone, Table, type TableCaptionProps, type TableCellProps, type TableHeadProps, type TableRootProps, type TableRowProps, TableScrollRegion, type TableScrollRegionProps, type TableSectionProps, TerminalFrame, type TerminalFrameLine, type TerminalFrameProps, type TerminalLine, type TerminalLineTone, type TerminalScript, type TerminalStep, TwoStepButton, type TwoStepButtonProps, type TwoStepTone, UsageChart, type UsageChartPoint, type UsageChartProps, type UsageChartTone };
|
|
@@ -6,8 +6,8 @@ import { Progress } from "./progress.js";
|
|
|
6
6
|
import { SeamCell, SeamGrid } from "./seam-grid.js";
|
|
7
7
|
import { Sparkline } from "./sparkline.js";
|
|
8
8
|
import { Stat } from "./stat.js";
|
|
9
|
-
import { Table } from "./table.js";
|
|
9
|
+
import { Table, TableScrollRegion } from "./table.js";
|
|
10
10
|
import { TerminalFrame } from "./terminal-frame.js";
|
|
11
11
|
import { TwoStepButton } from "./two-step-button.js";
|
|
12
12
|
import { UsageChart } from "./usage-chart.js";
|
|
13
|
-
export { AppWindowFrame, CopyButton, GroupBar, Meter, Progress, SeamCell, SeamGrid, Sparkline, Stat, Table, TerminalFrame, TwoStepButton, UsageChart };
|
|
13
|
+
export { AppWindowFrame, CopyButton, GroupBar, Meter, Progress, SeamCell, SeamGrid, Sparkline, Stat, Table, TableScrollRegion, TerminalFrame, TwoStepButton, UsageChart };
|
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
//#region src/instruments/table.d.ts
|
|
3
|
+
interface TableScrollRegionProps extends Omit<React.ComponentPropsWithoutRef<"div">, "aria-label" | "role" | "tabIndex"> {
|
|
4
|
+
/** Accessible name announced for the keyboard-focusable scrolling region. */
|
|
5
|
+
"aria-label": string;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* A named horizontal viewport for a table wider than its container.
|
|
9
|
+
*
|
|
10
|
+
* The region is independently keyboard-focusable so keyboard users can reach
|
|
11
|
+
* native horizontal scrolling. It adds no table semantics of its own; place a
|
|
12
|
+
* compound {@link Table} inside it and keep the table's caption.
|
|
13
|
+
*/
|
|
14
|
+
declare const TableScrollRegion: React.ForwardRefExoticComponent<TableScrollRegionProps & React.RefAttributes<HTMLDivElement>>;
|
|
3
15
|
interface TableRootProps extends React.ComponentPropsWithoutRef<"table"> {}
|
|
4
16
|
interface TableSectionProps extends React.ComponentPropsWithoutRef<"tbody"> {}
|
|
5
17
|
interface TableRowProps extends React.ComponentPropsWithoutRef<"tr"> {}
|
|
@@ -21,6 +33,7 @@ interface TableCaptionProps extends React.ComponentPropsWithoutRef<"caption"> {}
|
|
|
21
33
|
* are thicker than the data.
|
|
22
34
|
*
|
|
23
35
|
* Static markup — no `"use client"`. Compose it with `Panel` for the rim.
|
|
36
|
+
* Use {@link TableScrollRegion} only when the table can exceed its container.
|
|
24
37
|
*
|
|
25
38
|
* @example
|
|
26
39
|
* <Table.Root>
|
|
@@ -48,4 +61,4 @@ declare const Table: {
|
|
|
48
61
|
Caption: React.ForwardRefExoticComponent<TableCaptionProps & React.RefAttributes<HTMLTableCaptionElement>>;
|
|
49
62
|
};
|
|
50
63
|
//#endregion
|
|
51
|
-
export { Table, TableCaptionProps, TableCellProps, TableHeadProps, TableRootProps, TableRowProps, TableSectionProps };
|
|
64
|
+
export { Table, TableCaptionProps, TableCellProps, TableHeadProps, TableRootProps, TableRowProps, TableScrollRegion, TableScrollRegionProps, TableSectionProps };
|
|
@@ -1,6 +1,24 @@
|
|
|
1
1
|
import { cn } from "../lib/cn.js";
|
|
2
2
|
import * as React from "react";
|
|
3
3
|
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
//#region src/instruments/table.tsx
|
|
5
|
+
/**
|
|
6
|
+
* A named horizontal viewport for a table wider than its container.
|
|
7
|
+
*
|
|
8
|
+
* The region is independently keyboard-focusable so keyboard users can reach
|
|
9
|
+
* native horizontal scrolling. It adds no table semantics of its own; place a
|
|
10
|
+
* compound {@link Table} inside it and keep the table's caption.
|
|
11
|
+
*/
|
|
12
|
+
const TableScrollRegion = React.forwardRef(function TableScrollRegion({ className, ...elementProps }, ref) {
|
|
13
|
+
return /* @__PURE__ */ jsx("div", {
|
|
14
|
+
ref,
|
|
15
|
+
...elementProps,
|
|
16
|
+
role: "region",
|
|
17
|
+
tabIndex: 0,
|
|
18
|
+
"data-slot": "table-scroll-region",
|
|
19
|
+
className: cn("overflow-x-auto outline-none focus-visible:outline-2 focus-visible:outline-solid focus-visible:-outline-offset-2 focus-visible:outline-accent", className)
|
|
20
|
+
});
|
|
21
|
+
});
|
|
4
22
|
/**
|
|
5
23
|
* The canonical console table: hairlines, mono figures, no zebra striping.
|
|
6
24
|
*
|
|
@@ -10,6 +28,7 @@ import { jsx } from "react/jsx-runtime";
|
|
|
10
28
|
* are thicker than the data.
|
|
11
29
|
*
|
|
12
30
|
* Static markup — no `"use client"`. Compose it with `Panel` for the rim.
|
|
31
|
+
* Use {@link TableScrollRegion} only when the table can exceed its container.
|
|
13
32
|
*
|
|
14
33
|
* @example
|
|
15
34
|
* <Table.Root>
|
|
@@ -89,4 +108,4 @@ const Table = {
|
|
|
89
108
|
})
|
|
90
109
|
};
|
|
91
110
|
//#endregion
|
|
92
|
-
export { Table };
|
|
111
|
+
export { Table, TableScrollRegion };
|
package/dist/layout/carousel.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { cn } from "../lib/cn.js";
|
|
3
|
-
import { ChevronLeftGlyph, ChevronRightGlyph } from "./_glyphs.js";
|
|
4
3
|
import { IconButton } from "../primitives/icon-button.js";
|
|
4
|
+
import { ChevronLeftGlyph, ChevronRightGlyph } from "./_glyphs.js";
|
|
5
5
|
import * as React from "react";
|
|
6
6
|
import { jsx } from "react/jsx-runtime";
|
|
7
7
|
import useEmblaCarousel from "embla-carousel-react";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
//#region src/layout/container.d.ts
|
|
3
3
|
/** How wide the content column is allowed to get. */
|
|
4
|
-
type ContainerWidth = "narrow" | "wide" | "full";
|
|
4
|
+
type ContainerWidth = "narrow" | "wide" | "broad" | "full";
|
|
5
5
|
interface ContainerProps extends React.ComponentPropsWithoutRef<"div"> {
|
|
6
6
|
/** Which measure the column takes. Defaults to `"narrow"`. */
|
|
7
7
|
width?: ContainerWidth;
|
package/dist/layout/container.js
CHANGED
|
@@ -3,15 +3,18 @@ import * as React from "react";
|
|
|
3
3
|
import { jsx } from "react/jsx-runtime";
|
|
4
4
|
//#region src/layout/container.tsx
|
|
5
5
|
/**
|
|
6
|
-
* The same
|
|
6
|
+
* The same four measures `PageShell` uses.
|
|
7
7
|
*
|
|
8
8
|
* `narrow` (42rem) is a reading column — settings, forms, prose. `wide` (54rem)
|
|
9
|
-
* is a working column — tables and panel grids. `
|
|
10
|
-
*
|
|
9
|
+
* is a working column — tables and panel grids. `broad` (84rem) is the
|
|
10
|
+
* application measure, wide enough for a two-column page or a device frame.
|
|
11
|
+
* `full` caps nothing, for a console layout that owns the whole viewport and
|
|
12
|
+
* only wants the gutters.
|
|
11
13
|
*/
|
|
12
14
|
const WIDTHS = {
|
|
13
15
|
narrow: "max-w-[42rem]",
|
|
14
16
|
wide: "max-w-[54rem]",
|
|
17
|
+
broad: "max-w-[84rem]",
|
|
15
18
|
full: ""
|
|
16
19
|
};
|
|
17
20
|
/**
|
package/dist/layout/index.d.ts
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
+
import { Link, LinkProps, linkVariants } from "./link.js";
|
|
2
|
+
import { Sidebar, SidebarItemProps, SidebarRailProps, SidebarRootProps, SidebarSectionProps, useSidebar } from "./sidebar.js";
|
|
3
|
+
import { Container, ContainerProps, ContainerWidth } from "./container.js";
|
|
1
4
|
import { Accordion, AccordionHeaderProps, AccordionItemProps, AccordionPanelProps, AccordionRootProps, AccordionTriggerProps } from "./accordion.js";
|
|
2
5
|
import { Breadcrumb, BreadcrumbItem, BreadcrumbProps } from "./breadcrumb.js";
|
|
3
6
|
import { Card, CardContentProps, CardDescriptionProps, CardFooterProps, CardHeaderProps, CardRootProps, CardTitleProps } from "./card.js";
|
|
4
7
|
import { Collapsible, CollapsiblePanelProps, CollapsibleRootProps, CollapsibleTriggerProps, Disclosure, DisclosureProps } from "./collapsible.js";
|
|
5
|
-
import { Container, ContainerProps, ContainerWidth } from "./container.js";
|
|
6
8
|
import { DescriptionList, DescriptionListDetailProps, DescriptionListLayout, DescriptionListRootProps, DescriptionListTermProps } from "./description-list.js";
|
|
7
9
|
import { SpaceStep, Stack, StackAlign, StackJustify, StackProps } from "./stack.js";
|
|
8
10
|
import { Grid, GridColumns, GridProps } from "./grid.js";
|
|
9
11
|
import { Item, ItemProps, itemVariants } from "./item.js";
|
|
10
|
-
import { Link, LinkProps, linkVariants } from "./link.js";
|
|
11
12
|
import { Pagination, PaginationEntry, PaginationProps, paginationRange } from "./pagination.js";
|
|
12
|
-
import { Sidebar, SidebarItemProps, SidebarRailProps, SidebarRootProps, SidebarSectionProps, useSidebar } from "./sidebar.js";
|
|
13
13
|
import { Stepper, StepperProps, StepperState, StepperStep } from "./stepper.js";
|
|
14
14
|
import { Timeline, TimelineContentProps, TimelineItemProps, TimelineMarkerProps, TimelineRootProps } from "./timeline.js";
|
|
15
15
|
export { Accordion, type AccordionHeaderProps, type AccordionItemProps, type AccordionPanelProps, type AccordionRootProps, type AccordionTriggerProps, Breadcrumb, type BreadcrumbItem, type BreadcrumbProps, Card, type CardContentProps, type CardDescriptionProps, type CardFooterProps, type CardHeaderProps, type CardRootProps, type CardTitleProps, Collapsible, type CollapsiblePanelProps, type CollapsibleRootProps, type CollapsibleTriggerProps, Container, type ContainerProps, type ContainerWidth, DescriptionList, type DescriptionListDetailProps, type DescriptionListLayout, type DescriptionListRootProps, type DescriptionListTermProps, Disclosure, type DisclosureProps, Grid, type GridColumns, type GridProps, Item, type ItemProps, Link, type LinkProps, Pagination, type PaginationEntry, type PaginationProps, Sidebar, type SidebarItemProps, type SidebarRailProps, type SidebarRootProps, type SidebarSectionProps, type SpaceStep, Stack, type StackAlign, type StackJustify, type StackProps, Stepper, type StepperProps, type StepperState, type StepperStep, Timeline, type TimelineContentProps, type TimelineItemProps, type TimelineMarkerProps, type TimelineRootProps, itemVariants, linkVariants, paginationRange, useSidebar };
|
package/dist/layout/index.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
+
import { Link, linkVariants } from "./link.js";
|
|
2
|
+
import { Sidebar, useSidebar } from "./sidebar.js";
|
|
3
|
+
import { Container } from "./container.js";
|
|
1
4
|
import { Accordion } from "./accordion.js";
|
|
2
5
|
import { Breadcrumb } from "./breadcrumb.js";
|
|
3
6
|
import { Card } from "./card.js";
|
|
4
7
|
import { Collapsible, Disclosure } from "./collapsible.js";
|
|
5
|
-
import { Container } from "./container.js";
|
|
6
8
|
import { DescriptionList } from "./description-list.js";
|
|
7
9
|
import { Stack } from "./stack.js";
|
|
8
10
|
import { Grid } from "./grid.js";
|
|
9
11
|
import { Item, itemVariants } from "./item.js";
|
|
10
|
-
import { Link, linkVariants } from "./link.js";
|
|
11
12
|
import { Pagination, paginationRange } from "./pagination.js";
|
|
12
|
-
import { Sidebar, useSidebar } from "./sidebar.js";
|
|
13
13
|
import { Stepper } from "./stepper.js";
|
|
14
14
|
import { Timeline } from "./timeline.js";
|
|
15
15
|
export { Accordion, Breadcrumb, Card, Collapsible, Container, DescriptionList, Disclosure, Grid, Item, Link, Pagination, Sidebar, Stack, Stepper, Timeline, itemVariants, linkVariants, paginationRange, useSidebar };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { cn } from "../lib/cn.js";
|
|
3
|
-
import { ChevronLeftGlyph, ChevronRightGlyph } from "./_glyphs.js";
|
|
4
3
|
import { IconButton } from "../primitives/icon-button.js";
|
|
4
|
+
import { ChevronLeftGlyph, ChevronRightGlyph } from "./_glyphs.js";
|
|
5
5
|
import * as React from "react";
|
|
6
6
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
7
7
|
//#region src/layout/pagination.tsx
|