@tangle-network/ui 11.43.0 → 11.44.1
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 +12 -0
- package/dist/_virtual/_rolldown/runtime.js +1 -2
- package/dist/auth/auth.d.ts +1 -3
- package/dist/auth/auth.js +1 -2
- package/dist/auth/login-layout.d.ts +1 -3
- package/dist/auth/login-layout.js +1 -2
- package/dist/chat/agent-timeline.d.ts +1 -3
- package/dist/chat/agent-timeline.js +1 -2
- package/dist/chat/chat-container.d.ts +1 -3
- package/dist/chat/chat-container.js +3 -4
- package/dist/chat/chat-message.d.ts +1 -3
- package/dist/chat/chat-message.js +1 -2
- package/dist/chat/message-author.d.ts +1 -3
- package/dist/chat/message-author.js +1 -2
- package/dist/chat/message-list.d.ts +1 -3
- package/dist/chat/message-list.js +1 -2
- package/dist/chat/synthetic-text.js +1 -2
- package/dist/chat/thinking-indicator.d.ts +1 -3
- package/dist/chat/thinking-indicator.js +1 -2
- package/dist/chat/transcript-text.d.ts +1 -3
- package/dist/chat/transcript-text.js +1 -2
- package/dist/chat/user-message.d.ts +1 -3
- package/dist/chat/user-message.js +1 -2
- package/dist/code-presentation.js +1 -2
- package/dist/editor/document-editor-pane.d.ts +1 -3
- package/dist/editor/document-editor-pane.js +3 -4
- package/dist/editor/editor-lazy.js +1 -2
- package/dist/editor/editor-loading.js +1 -2
- package/dist/editor/editor-peers.js +1 -2
- package/dist/editor/editor-provider.d.ts +1 -3
- package/dist/editor/editor-provider.js +1 -2
- package/dist/editor/editor-toolbar.d.ts +1 -3
- package/dist/editor/editor-toolbar.js +1 -2
- package/dist/editor/markdown-conversion.js +1 -2
- package/dist/editor/markdown-document-editor.js +1 -2
- package/dist/editor/source-markdown-editor.js +1 -2
- package/dist/editor/source-markdown.js +1 -2
- package/dist/editor/tiptap-editor.d.ts +0 -2
- package/dist/editor/tiptap-editor.js +1 -2
- package/dist/editor/use-editor.d.ts +1 -3
- package/dist/editor/use-editor.js +1 -2
- package/dist/files/file-artifact-pane.d.ts +1 -3
- package/dist/files/file-artifact-pane.js +4 -5
- package/dist/files/file-card.d.ts +1 -3
- package/dist/files/file-card.js +1 -2
- package/dist/files/file-format.d.ts +1 -3
- package/dist/files/file-format.js +1 -2
- package/dist/files/file-list.d.ts +1 -3
- package/dist/files/file-list.js +1 -2
- package/dist/files/file-preview.d.ts +1 -3
- package/dist/files/file-preview.js +1 -2
- package/dist/files/file-tabs.d.ts +1 -3
- package/dist/files/file-tabs.js +1 -2
- package/dist/files/file-tree.d.ts +1 -3
- package/dist/files/file-tree.js +1 -2
- package/dist/files/pdf-loader.d.ts +1 -3
- package/dist/files/pdf-loader.js +1 -2
- package/dist/files/pdf-viewer.d.ts +1 -3
- package/dist/files/pdf-viewer.js +1 -2
- package/dist/files/rich-file-tree.d.ts +1 -3
- package/dist/files/rich-file-tree.js +1 -2
- package/dist/hooks/use-auth.d.ts +1 -3
- package/dist/hooks/use-auth.js +1 -2
- package/dist/hooks/use-auto-scroll.d.ts +1 -3
- package/dist/hooks/use-auto-scroll.js +1 -2
- package/dist/hooks/use-dropdown-menu.d.ts +1 -2
- package/dist/hooks/use-dropdown-menu.js +1 -2
- package/dist/hooks/use-live-time.d.ts +1 -3
- package/dist/hooks/use-live-time.js +1 -2
- package/dist/hooks/use-realtime-session.d.ts +1 -3
- package/dist/hooks/use-realtime-session.js +1 -2
- package/dist/hooks/use-run-collapse-state.d.ts +1 -3
- package/dist/hooks/use-run-collapse-state.js +1 -2
- package/dist/hooks/use-run-groups.d.ts +1 -3
- package/dist/hooks/use-run-groups.js +1 -2
- package/dist/hooks/use-sdk-session.d.ts +1 -3
- package/dist/hooks/use-sdk-session.js +1 -2
- package/dist/hooks/use-sse-stream.d.ts +1 -3
- package/dist/hooks/use-sse-stream.js +1 -2
- package/dist/hooks/use-tool-call-stream.d.ts +1 -3
- package/dist/hooks/use-tool-call-stream.js +1 -2
- package/dist/lib/code-presentation.d.ts +1 -3
- package/dist/lib/code-presentation.js +1 -2
- package/dist/lib/control-presentation.d.ts +0 -2
- package/dist/lib/control-presentation.js +1 -2
- package/dist/lib/focus.d.ts +1 -3
- package/dist/lib/focus.js +1 -2
- package/dist/lib/interaction.d.ts +1 -3
- package/dist/lib/interaction.js +1 -2
- package/dist/lib/motion.d.ts +1 -3
- package/dist/lib/motion.js +1 -2
- package/dist/lib/optional-peer.js +1 -2
- package/dist/lib/series.d.ts +1 -3
- package/dist/lib/series.js +1 -2
- package/dist/lib/surface-motion.js +1 -2
- package/dist/lib/utils.d.ts +1 -3
- package/dist/lib/utils.js +1 -2
- package/dist/markdown/api-schema.d.ts +1 -3
- package/dist/markdown/api-schema.js +1 -2
- package/dist/markdown/code-block.d.ts +0 -2
- package/dist/markdown/code-block.js +1 -2
- package/dist/markdown/code-meta.d.ts +1 -3
- package/dist/markdown/code-meta.js +1 -2
- package/dist/markdown/markdown-table.d.ts +1 -3
- package/dist/markdown/markdown-table.js +1 -2
- package/dist/markdown/markdown.d.ts +1 -3
- package/dist/markdown/markdown.js +1 -2
- package/dist/nav.d.ts +0 -2
- package/dist/nav.js +1 -2
- package/dist/openui/openui-artifact-renderer.d.ts +1 -2
- package/dist/openui/openui-artifact-renderer.js +1 -2
- package/dist/openui/schema-compiled.js +1 -2
- package/dist/openui/schema-data.d.ts +1 -3
- package/dist/openui/schema-data.js +1 -2
- package/dist/openui-schema.d.ts +0 -2
- package/dist/openui-schema.js +1 -2
- package/dist/presentation.d.ts +0 -2
- package/dist/presentation.js +1 -2
- package/dist/primitives/alert-dialog.d.ts +0 -2
- package/dist/primitives/alert-dialog.js +1 -2
- package/dist/primitives/alert.d.ts +1 -3
- package/dist/primitives/alert.js +1 -2
- package/dist/primitives/artifact-pane.d.ts +1 -3
- package/dist/primitives/artifact-pane.js +1 -2
- package/dist/primitives/avatar.d.ts +0 -2
- package/dist/primitives/avatar.js +1 -2
- package/dist/primitives/badge.d.ts +0 -2
- package/dist/primitives/badge.js +1 -2
- package/dist/primitives/breadcrumb.d.ts +0 -2
- package/dist/primitives/breadcrumb.js +1 -2
- package/dist/primitives/button.d.ts +0 -2
- package/dist/primitives/button.js +1 -2
- package/dist/primitives/calendar.d.ts +0 -2
- package/dist/primitives/calendar.js +1 -2
- package/dist/primitives/card.d.ts +0 -2
- package/dist/primitives/card.js +1 -2
- package/dist/primitives/checkbox.d.ts +0 -2
- package/dist/primitives/checkbox.js +1 -2
- package/dist/primitives/chip.d.ts +0 -2
- package/dist/primitives/chip.js +1 -2
- package/dist/primitives/code-block.d.ts +0 -2
- package/dist/primitives/code-block.js +1 -2
- package/dist/primitives/collapsible.d.ts +0 -2
- package/dist/primitives/collapsible.js +1 -2
- package/dist/primitives/compliance-badge.d.ts +0 -2
- package/dist/primitives/compliance-badge.js +3 -4
- package/dist/primitives/context-menu.d.ts +0 -2
- package/dist/primitives/context-menu.js +1 -2
- package/dist/primitives/date-picker.d.ts +0 -2
- package/dist/primitives/date-picker.js +1 -2
- package/dist/primitives/dialog.d.ts +0 -2
- package/dist/primitives/dialog.js +3 -4
- package/dist/primitives/drop-zone.d.ts +1 -3
- package/dist/primitives/drop-zone.js +1 -2
- package/dist/primitives/dropdown-menu.d.ts +0 -2
- package/dist/primitives/dropdown-menu.js +1 -2
- package/dist/primitives/empty-state.d.ts +0 -2
- package/dist/primitives/empty-state.js +1 -2
- package/dist/primitives/field.d.ts +1 -3
- package/dist/primitives/field.js +1 -2
- package/dist/primitives/heading.d.ts +0 -2
- package/dist/primitives/heading.js +1 -2
- package/dist/primitives/help-text.d.ts +0 -2
- package/dist/primitives/help-text.js +1 -2
- package/dist/primitives/hover-card.d.ts +0 -2
- package/dist/primitives/hover-card.js +1 -2
- package/dist/primitives/icon-tile.d.ts +0 -2
- package/dist/primitives/icon-tile.js +1 -2
- package/dist/primitives/info-tip.js +1 -2
- package/dist/primitives/input.d.ts +0 -2
- package/dist/primitives/input.js +1 -2
- package/dist/primitives/label.d.ts +0 -2
- package/dist/primitives/label.js +1 -2
- package/dist/primitives/metric-chart.d.ts +0 -2
- package/dist/primitives/metric-chart.js +1 -2
- package/dist/primitives/metric-strip.d.ts +0 -2
- package/dist/primitives/metric-strip.js +1 -2
- package/dist/primitives/page-header.d.ts +0 -2
- package/dist/primitives/page-header.js +1 -2
- package/dist/primitives/page-shell.d.ts +1 -3
- package/dist/primitives/page-shell.js +1 -2
- package/dist/primitives/pagination.d.ts +1 -2
- package/dist/primitives/pagination.js +1 -2
- package/dist/primitives/popover.d.ts +0 -2
- package/dist/primitives/popover.js +1 -2
- package/dist/primitives/progress.d.ts +0 -2
- package/dist/primitives/progress.js +1 -2
- package/dist/primitives/radio-group.d.ts +0 -2
- package/dist/primitives/radio-group.js +1 -2
- package/dist/primitives/segmented-control.d.ts +1 -3
- package/dist/primitives/segmented-control.js +4 -5
- package/dist/primitives/select.d.ts +0 -2
- package/dist/primitives/select.js +1 -2
- package/dist/primitives/separator.d.ts +0 -2
- package/dist/primitives/separator.js +1 -2
- package/dist/primitives/series-sparkline.d.ts +0 -2
- package/dist/primitives/series-sparkline.js +1 -2
- package/dist/primitives/settings.d.ts +8 -6
- package/dist/primitives/settings.js +13 -8
- package/dist/primitives/sheet.d.ts +0 -2
- package/dist/primitives/sheet.js +3 -4
- package/dist/primitives/sidebar-drop-zone.d.ts +1 -3
- package/dist/primitives/sidebar-drop-zone.js +1 -2
- package/dist/primitives/skeleton.d.ts +0 -2
- package/dist/primitives/skeleton.js +1 -2
- package/dist/primitives/slider.d.ts +0 -2
- package/dist/primitives/slider.js +1 -2
- package/dist/primitives/stat-card.d.ts +0 -2
- package/dist/primitives/stat-card.js +1 -2
- package/dist/primitives/status-pill.d.ts +0 -2
- package/dist/primitives/status-pill.js +1 -2
- package/dist/primitives/switch.d.ts +0 -2
- package/dist/primitives/switch.js +1 -2
- package/dist/primitives/table.d.ts +0 -2
- package/dist/primitives/table.js +1 -2
- package/dist/primitives/tabs.d.ts +0 -2
- package/dist/primitives/tabs.js +1 -2
- package/dist/primitives/tag.d.ts +0 -2
- package/dist/primitives/tag.js +1 -2
- package/dist/primitives/terminal-display.d.ts +0 -2
- package/dist/primitives/terminal-display.js +1 -2
- package/dist/primitives/text-shimmer.d.ts +1 -3
- package/dist/primitives/text-shimmer.js +1 -2
- package/dist/primitives/theme-toggle.d.ts +1 -2
- package/dist/primitives/theme-toggle.js +1 -2
- package/dist/primitives/time-select.d.ts +0 -2
- package/dist/primitives/time-select.js +1 -2
- package/dist/primitives/toast.d.ts +1 -2
- package/dist/primitives/toast.js +1 -2
- package/dist/primitives/tone.d.ts +1 -3
- package/dist/primitives/tone.js +1 -2
- package/dist/primitives/toolbar.d.ts +0 -2
- package/dist/primitives/toolbar.js +1 -2
- package/dist/primitives/tooltip.d.ts +0 -2
- package/dist/primitives/tooltip.js +1 -2
- package/dist/primitives/upload-progress.d.ts +1 -3
- package/dist/primitives/upload-progress.js +1 -2
- package/dist/primitives/wizard.d.ts +1 -3
- package/dist/primitives/wizard.js +1 -2
- package/dist/redaction/redacted-document.d.ts +1 -3
- package/dist/redaction/redacted-document.js +1 -2
- package/dist/redaction.js +1 -2
- package/dist/run/approval-card.d.ts +1 -3
- package/dist/run/approval-card.js +1 -2
- package/dist/run/expandable-content.js +1 -2
- package/dist/run/expanded-tool-detail.d.ts +1 -3
- package/dist/run/expanded-tool-detail.js +1 -2
- package/dist/run/inline-thinking-item.d.ts +1 -3
- package/dist/run/inline-thinking-item.js +1 -2
- package/dist/run/inline-tool-item.d.ts +1 -3
- package/dist/run/inline-tool-item.js +1 -2
- package/dist/run/run-group.d.ts +1 -3
- package/dist/run/run-group.js +1 -2
- package/dist/run/run-item-primitives.d.ts +1 -3
- package/dist/run/run-item-primitives.js +1 -2
- package/dist/run/run-phase-list.d.ts +1 -3
- package/dist/run/run-phase-list.js +1 -2
- package/dist/run/run-row-shell.d.ts +1 -3
- package/dist/run/run-row-shell.js +1 -2
- package/dist/run/task-list.d.ts +1 -3
- package/dist/run/task-list.js +1 -2
- package/dist/run/tool-call-feed.d.ts +1 -3
- package/dist/run/tool-call-feed.js +1 -2
- package/dist/run/tool-call-step.d.ts +1 -3
- package/dist/run/tool-call-step.js +1 -2
- package/dist/stores/active-sessions-store.d.ts +1 -3
- package/dist/stores/active-sessions-store.js +1 -2
- package/dist/stores/chat-store.d.ts +1 -3
- package/dist/stores/chat-store.js +1 -2
- package/dist/tool-previews/command-preview.d.ts +1 -3
- package/dist/tool-previews/command-preview.js +1 -2
- package/dist/tool-previews/diff-preview.d.ts +1 -3
- package/dist/tool-previews/diff-preview.js +1 -2
- package/dist/tool-previews/glob-results-preview.d.ts +1 -3
- package/dist/tool-previews/glob-results-preview.js +1 -2
- package/dist/tool-previews/grep-results-preview.d.ts +1 -3
- package/dist/tool-previews/grep-results-preview.js +1 -2
- package/dist/tool-previews/preview-primitives.js +1 -2
- package/dist/tool-previews/question-preview.d.ts +1 -3
- package/dist/tool-previews/question-preview.js +1 -2
- package/dist/tool-previews/web-search-preview.d.ts +1 -3
- package/dist/tool-previews/web-search-preview.js +1 -2
- package/dist/tool-previews/write-file-preview.d.ts +1 -3
- package/dist/tool-previews/write-file-preview.js +1 -2
- package/dist/types/branding.d.ts +1 -3
- package/dist/types/message.d.ts +1 -3
- package/dist/types/parts.d.ts +1 -3
- package/dist/types/run.d.ts +1 -3
- package/dist/types/tool-display.d.ts +1 -3
- package/dist/utils/copy-text.d.ts +1 -3
- package/dist/utils/copy-text.js +1 -2
- package/dist/utils/format.d.ts +1 -3
- package/dist/utils/format.js +1 -2
- package/dist/utils/time-ago.d.ts +1 -3
- package/dist/utils/time-ago.js +1 -2
- package/dist/utils/tool-display.d.ts +1 -3
- package/dist/utils/tool-display.js +1 -2
- package/package.json +38 -38
- package/src/primitives/settings.stories.tsx +37 -0
- package/src/primitives/settings.tsx +17 -8
package/dist/primitives/input.js
CHANGED
|
@@ -7,7 +7,7 @@ import { HelpText } from "./help-text.js";
|
|
|
7
7
|
import { Label } from "./label.js";
|
|
8
8
|
import * as React from "react";
|
|
9
9
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
10
|
-
|
|
10
|
+
// src/primitives/input.tsx
|
|
11
11
|
function descriptionIds(...ids) {
|
|
12
12
|
return [...new Set(ids.join(" ").split(/\s+/).filter(Boolean))].join(" ") || void 0;
|
|
13
13
|
}
|
|
@@ -88,5 +88,4 @@ const Textarea = React.forwardRef(({ className, variant: _variant, size = "defau
|
|
|
88
88
|
});
|
|
89
89
|
});
|
|
90
90
|
Textarea.displayName = "Textarea";
|
|
91
|
-
//#endregion
|
|
92
91
|
export { Input, Textarea };
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import * as LabelPrimitive from "@radix-ui/react-label";
|
|
3
|
-
//#region src/primitives/label.d.ts
|
|
4
3
|
declare const Label: React.ForwardRefExoticComponent<Omit<LabelPrimitive.LabelProps & React.RefAttributes<HTMLLabelElement>, "ref"> & React.RefAttributes<HTMLLabelElement>>;
|
|
5
|
-
//#endregion
|
|
6
4
|
export { Label };
|
package/dist/primitives/label.js
CHANGED
|
@@ -4,12 +4,11 @@ import { labelVariants } from "../presentation.js";
|
|
|
4
4
|
import * as React from "react";
|
|
5
5
|
import { jsx } from "react/jsx-runtime";
|
|
6
6
|
import * as LabelPrimitive from "@radix-ui/react-label";
|
|
7
|
-
|
|
7
|
+
// src/primitives/label.tsx
|
|
8
8
|
const Label = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(LabelPrimitive.Root, {
|
|
9
9
|
ref,
|
|
10
10
|
className: cn(labelVariants(), className),
|
|
11
11
|
...props
|
|
12
12
|
}));
|
|
13
13
|
Label.displayName = LabelPrimitive.Root.displayName;
|
|
14
|
-
//#endregion
|
|
15
14
|
export { Label };
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { SeriesPointInput } from "../lib/series.js";
|
|
2
2
|
import * as React from "react";
|
|
3
|
-
//#region src/primitives/metric-chart.d.ts
|
|
4
3
|
export interface ChartReferenceLine {
|
|
5
4
|
value: number;
|
|
6
5
|
label?: string;
|
|
@@ -43,5 +42,4 @@ declare const MetricChart: React.ForwardRefExoticComponent<Omit<React.SVGAttribu
|
|
|
43
42
|
formatValue?: (value: number) => string;
|
|
44
43
|
formatTime?: (at: number) => string;
|
|
45
44
|
} & React.RefAttributes<SVGSVGElement>>;
|
|
46
|
-
//#endregion
|
|
47
45
|
export { MetricChart };
|
|
@@ -3,7 +3,7 @@ import { chartPresentation } from "../presentation.js";
|
|
|
3
3
|
import { normalizeSeries, seriesAreaPath, seriesExtent, seriesLinePath, seriesMean, seriesScale } from "../lib/series.js";
|
|
4
4
|
import * as React from "react";
|
|
5
5
|
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
-
|
|
6
|
+
// src/primitives/metric-chart.tsx
|
|
7
7
|
const defaultTimeLabel = (at) => new Date(at).toLocaleDateString(void 0, {
|
|
8
8
|
month: "short",
|
|
9
9
|
day: "numeric"
|
|
@@ -151,5 +151,4 @@ const MetricChart = React.forwardRef(({ points, title, unit, decimals, reference
|
|
|
151
151
|
});
|
|
152
152
|
});
|
|
153
153
|
MetricChart.displayName = "MetricChart";
|
|
154
|
-
//#endregion
|
|
155
154
|
export { MetricChart };
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { StatusTone } from "./status-pill.js";
|
|
2
2
|
import * as React from "react";
|
|
3
|
-
//#region src/primitives/metric-strip.d.ts
|
|
4
3
|
/** Headline readings on one plane, with native definition-list semantics. */
|
|
5
4
|
export interface MetricStripProps extends React.HTMLAttributes<HTMLDListElement> {
|
|
6
5
|
children: React.ReactNode;
|
|
@@ -25,5 +24,4 @@ export interface MetricProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
|
25
24
|
}
|
|
26
25
|
/** A described term; the strip, not this item, decides where separators belong. */
|
|
27
26
|
declare const Metric: React.ForwardRefExoticComponent<MetricProps & React.RefAttributes<HTMLDivElement>>;
|
|
28
|
-
//#endregion
|
|
29
27
|
export { Metric, MetricStrip };
|
|
@@ -3,7 +3,7 @@ import { metricLayouts, metricPresentation } from "../presentation.js";
|
|
|
3
3
|
import { StatusPill } from "./status-pill.js";
|
|
4
4
|
import * as React from "react";
|
|
5
5
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
-
|
|
6
|
+
// src/primitives/metric-strip.tsx
|
|
7
7
|
const MetricStrip = React.forwardRef(({ className, children, columns = 4, ...props }, ref) => /* @__PURE__ */ jsx("dl", {
|
|
8
8
|
ref,
|
|
9
9
|
className: cn(metricPresentation.strip, metricLayouts[columns], className),
|
|
@@ -48,5 +48,4 @@ const Metric = React.forwardRef(({ className, label, value, hint, attention, ico
|
|
|
48
48
|
]
|
|
49
49
|
}));
|
|
50
50
|
Metric.displayName = "Metric";
|
|
51
|
-
//#endregion
|
|
52
51
|
export { Metric, MetricStrip };
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
//#region src/primitives/page-header.d.ts
|
|
3
2
|
/**
|
|
4
3
|
* A page masthead with separate title, prose, actions and qualifying metadata.
|
|
5
4
|
* Brand's existing props and header ref are preserved. Sandbox's existing
|
|
@@ -22,5 +21,4 @@ export interface PageHeaderProps extends Omit<React.HTMLAttributes<HTMLElement>,
|
|
|
22
21
|
titleAs?: React.ElementType;
|
|
23
22
|
}
|
|
24
23
|
declare const PageHeader: React.ForwardRefExoticComponent<PageHeaderProps & React.RefAttributes<HTMLElement>>;
|
|
25
|
-
//#endregion
|
|
26
24
|
export { PageHeader };
|
|
@@ -2,7 +2,7 @@ import { cn } from "../lib/utils.js";
|
|
|
2
2
|
import { Heading } from "./heading.js";
|
|
3
3
|
import * as React from "react";
|
|
4
4
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
|
-
|
|
5
|
+
// src/primitives/page-header.tsx
|
|
6
6
|
const hasContent = (node) => Boolean(node) || node === 0;
|
|
7
7
|
const PageHeader = React.forwardRef(({ className, presentation, title, description, actions, action, eyebrow, meta, titleId, titleAs, level = 1, ...props }, ref) => {
|
|
8
8
|
const resolvedActions = actions === void 0 ? action : actions;
|
|
@@ -44,5 +44,4 @@ const PageHeader = React.forwardRef(({ className, presentation, title, descripti
|
|
|
44
44
|
});
|
|
45
45
|
});
|
|
46
46
|
PageHeader.displayName = "PageHeader";
|
|
47
|
-
//#endregion
|
|
48
47
|
export { PageHeader };
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import { ReactNode } from "react";
|
|
3
|
-
//#region src/primitives/page-shell.d.ts
|
|
4
3
|
export interface PageShellProps {
|
|
5
4
|
children?: ReactNode;
|
|
6
5
|
/** Optional reading layout. Content, routing and navigation interaction stay caller-owned. */
|
|
@@ -32,5 +31,4 @@ export interface PageShellProps {
|
|
|
32
31
|
* `measure="settings"` it goes on the frame, the width the layout answers to,
|
|
33
32
|
* so a `max-w-*` there bounds the measure and a narrow frame gets the strip.
|
|
34
33
|
*/
|
|
35
|
-
export declare function PageShell({ children, className, navigation, article, outline, header, measure, navigationLabel, outlineLabel }: PageShellProps): React.JSX.Element;
|
|
36
|
-
//#endregion
|
|
34
|
+
export declare function PageShell({ children, className, navigation, article, outline, header, measure, navigationLabel, outlineLabel }: PageShellProps): React.JSX.Element;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { cn } from "../lib/utils.js";
|
|
3
3
|
import * as React from "react";
|
|
4
4
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
|
-
|
|
5
|
+
// src/primitives/page-shell.tsx
|
|
6
6
|
/**
|
|
7
7
|
* Centre the current link of a horizontally scrolling nav, so the links on
|
|
8
8
|
* both sides show that the strip scrolls. It moves the strip, never the page.
|
|
@@ -111,5 +111,4 @@ function PageShell({ children, className, navigation, article, outline, header,
|
|
|
111
111
|
children
|
|
112
112
|
});
|
|
113
113
|
}
|
|
114
|
-
//#endregion
|
|
115
114
|
export { PageShell };
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
//#region src/primitives/pagination.d.ts
|
|
3
2
|
interface PaginationBaseProps extends Omit<React.HTMLAttributes<HTMLElement>, "onChange" | "children"> {
|
|
4
3
|
/** The current page, zero-based. */
|
|
5
4
|
page: number;
|
|
@@ -54,4 +53,4 @@ export interface PaginationLinkProps extends PaginationBaseProps {
|
|
|
54
53
|
*/
|
|
55
54
|
export type PaginationProps = PaginationButtonProps | PaginationLinkProps;
|
|
56
55
|
export declare function Pagination({ page, pageCount, onPageChange, hrefFor, linkComponent: LinkComponent, siblings, className, "aria-label": ariaLabel, ...rest }: PaginationProps): React.JSX.Element | null;
|
|
57
|
-
|
|
56
|
+
export {};
|
|
@@ -3,7 +3,7 @@ import { buttonVariants } from "../presentation.js";
|
|
|
3
3
|
import "react";
|
|
4
4
|
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
5
5
|
import { ChevronLeft, ChevronRight } from "lucide-react";
|
|
6
|
-
|
|
6
|
+
// src/primitives/pagination.tsx
|
|
7
7
|
/**
|
|
8
8
|
* The visible slots for `page` of `pageCount`. The number of slots stays the
|
|
9
9
|
* same as the current page moves, so the controls do not shift under the
|
|
@@ -107,5 +107,4 @@ function Pagination({ page, pageCount, onPageChange, hrefFor, linkComponent: Lin
|
|
|
107
107
|
})
|
|
108
108
|
});
|
|
109
109
|
}
|
|
110
|
-
//#endregion
|
|
111
110
|
export { Pagination, pageSlots };
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import * as PopoverPrimitive from "@radix-ui/react-popover";
|
|
3
|
-
//#region src/primitives/popover.d.ts
|
|
4
3
|
declare const Popover: React.FC<PopoverPrimitive.PopoverProps>;
|
|
5
4
|
declare const PopoverTrigger: React.ForwardRefExoticComponent<PopoverPrimitive.PopoverTriggerProps & React.RefAttributes<HTMLButtonElement>>;
|
|
6
5
|
declare const PopoverAnchor: React.ForwardRefExoticComponent<PopoverPrimitive.PopoverAnchorProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -11,5 +10,4 @@ declare const PopoverClose: React.ForwardRefExoticComponent<PopoverPrimitive.Pop
|
|
|
11
10
|
* for wider content and keep long text wrapping inside it.
|
|
12
11
|
*/
|
|
13
12
|
declare const PopoverContent: React.ForwardRefExoticComponent<Omit<PopoverPrimitive.PopoverContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
14
|
-
//#endregion
|
|
15
13
|
export { Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverTrigger };
|
|
@@ -5,7 +5,7 @@ import { SurfaceMotion } from "../lib/surface-motion.js";
|
|
|
5
5
|
import * as React from "react";
|
|
6
6
|
import { jsx } from "react/jsx-runtime";
|
|
7
7
|
import * as PopoverPrimitive from "@radix-ui/react-popover";
|
|
8
|
-
|
|
8
|
+
// src/primitives/popover.tsx
|
|
9
9
|
const Popover = PopoverPrimitive.Root;
|
|
10
10
|
const PopoverTrigger = PopoverPrimitive.Trigger;
|
|
11
11
|
const PopoverAnchor = PopoverPrimitive.Anchor;
|
|
@@ -29,5 +29,4 @@ const PopoverContent = React.forwardRef(({ className, align = "center", sideOffs
|
|
|
29
29
|
})
|
|
30
30
|
}) }));
|
|
31
31
|
PopoverContent.displayName = PopoverPrimitive.Content.displayName;
|
|
32
|
-
//#endregion
|
|
33
32
|
export { Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverTrigger };
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import * as ProgressPrimitive from "@radix-ui/react-progress";
|
|
3
|
-
//#region src/primitives/progress.d.ts
|
|
4
3
|
declare const Progress: React.ForwardRefExoticComponent<Omit<ProgressPrimitive.ProgressProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
|
|
5
4
|
variant?: "default" | "sandbox";
|
|
6
5
|
showValue?: boolean;
|
|
7
6
|
} & React.RefAttributes<HTMLDivElement>>;
|
|
8
|
-
//#endregion
|
|
9
7
|
export { Progress };
|
|
@@ -2,7 +2,7 @@ import { cn } from "../lib/utils.js";
|
|
|
2
2
|
import * as React from "react";
|
|
3
3
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
4
4
|
import * as ProgressPrimitive from "@radix-ui/react-progress";
|
|
5
|
-
|
|
5
|
+
// src/primitives/progress.tsx
|
|
6
6
|
const Progress = React.forwardRef(({ className, value, variant = "default", showValue = false, ...props }, ref) => {
|
|
7
7
|
const indicatorVariants = {
|
|
8
8
|
default: "bg-primary",
|
|
@@ -25,5 +25,4 @@ const Progress = React.forwardRef(({ className, value, variant = "default", show
|
|
|
25
25
|
});
|
|
26
26
|
});
|
|
27
27
|
Progress.displayName = ProgressPrimitive.Root.displayName;
|
|
28
|
-
//#endregion
|
|
29
28
|
export { Progress };
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import * as RadioGroupPrimitive from "@radix-ui/react-radio-group";
|
|
3
|
-
//#region src/primitives/radio-group.d.ts
|
|
4
3
|
/**
|
|
5
4
|
* One choice from a set. Arrow keys move between items; pair each item with a
|
|
6
5
|
* `Label` through `id`/`htmlFor`. The item matches `Checkbox` (16px, the
|
|
@@ -9,5 +8,4 @@ import * as RadioGroupPrimitive from "@radix-ui/react-radio-group";
|
|
|
9
8
|
*/
|
|
10
9
|
declare const RadioGroup: React.ForwardRefExoticComponent<Omit<RadioGroupPrimitive.RadioGroupProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
11
10
|
declare const RadioGroupItem: React.ForwardRefExoticComponent<Omit<RadioGroupPrimitive.RadioGroupItemProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
|
|
12
|
-
//#endregion
|
|
13
11
|
export { RadioGroup, RadioGroupItem };
|
|
@@ -4,7 +4,7 @@ import { cn } from "../lib/utils.js";
|
|
|
4
4
|
import * as React from "react";
|
|
5
5
|
import { jsx } from "react/jsx-runtime";
|
|
6
6
|
import * as RadioGroupPrimitive from "@radix-ui/react-radio-group";
|
|
7
|
-
|
|
7
|
+
// src/primitives/radio-group.tsx
|
|
8
8
|
/**
|
|
9
9
|
* One choice from a set. Arrow keys move between items; pair each item with a
|
|
10
10
|
* `Label` through `id`/`htmlFor`. The item matches `Checkbox` (16px, the
|
|
@@ -24,5 +24,4 @@ const RadioGroupItem = React.forwardRef(({ className, ...props }, ref) => /* @__
|
|
|
24
24
|
children: /* @__PURE__ */ jsx(RadioGroupPrimitive.Indicator, { className: "size-2 rounded-full bg-primary" })
|
|
25
25
|
}));
|
|
26
26
|
RadioGroupItem.displayName = RadioGroupPrimitive.Item.displayName;
|
|
27
|
-
//#endregion
|
|
28
27
|
export { RadioGroup, RadioGroupItem };
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
//#region src/primitives/segmented-control.d.ts
|
|
3
2
|
/**
|
|
4
3
|
* Visually lightweight segmented control for single-value selection.
|
|
5
4
|
*
|
|
@@ -53,5 +52,4 @@ export interface SegmentedControlProps<T extends string = string> extends Pick<R
|
|
|
53
52
|
/** Rendered as the group's `data-testid`. */
|
|
54
53
|
"data-testid"?: string;
|
|
55
54
|
}
|
|
56
|
-
export declare function SegmentedControl<T extends string = string>({ value, onValueChange, options, variant, className, ...rest }: SegmentedControlProps<T>): React.JSX.Element;
|
|
57
|
-
//#endregion
|
|
55
|
+
export declare function SegmentedControl<T extends string = string>({ value, onValueChange, options, variant, className, ...rest }: SegmentedControlProps<T>): React.JSX.Element;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import "../lib/interaction.js";
|
|
3
|
-
import
|
|
3
|
+
import "../lib/focus.js";
|
|
4
4
|
import { cn } from "../lib/utils.js";
|
|
5
5
|
import "../lib/control-presentation.js";
|
|
6
6
|
import * as React from "react";
|
|
7
7
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
8
8
|
import { ChevronLeft, ChevronRight } from "lucide-react";
|
|
9
|
-
|
|
9
|
+
// src/primitives/segmented-control.tsx
|
|
10
10
|
/** Size of the edge chevron, in px. The selected option is kept this far
|
|
11
11
|
* (plus the strip's own padding) from an edge so the chevron never covers it. */
|
|
12
12
|
const SCROLL_CUE_SIZE = 32;
|
|
@@ -147,13 +147,13 @@ function SegmentedControl({ value, onValueChange, options, variant = "row", clas
|
|
|
147
147
|
},
|
|
148
148
|
className: cn("relative inline-flex items-center gap-2 whitespace-nowrap text-sm font-medium transition-[color,background-color,border-color,box-shadow]", variant === "row" && [
|
|
149
149
|
"rounded-md border border-transparent px-3 py-1.5",
|
|
150
|
-
|
|
150
|
+
"focus-visible:outline-1 focus-visible:outline-[var(--focus-border)] focus-visible:ring-4 focus-visible:ring-[var(--focus-halo)] focus-visible:outline-offset-0",
|
|
151
151
|
"hover:bg-[var(--ix-hover-bg)] active:bg-[var(--ix-sel-bg)]",
|
|
152
152
|
"aria-pressed:bg-[var(--ix-sel-bg)] aria-pressed:text-[var(--accent-text)] aria-pressed:shadow-[inset_0_0_0_1px_var(--ix-sel-ring)] aria-checked:bg-[var(--ix-sel-bg)] aria-checked:text-[var(--accent-text)] aria-checked:shadow-[inset_0_0_0_1px_var(--ix-sel-ring)] aria-[current=page]:bg-[var(--ix-sel-bg)] aria-[current=page]:text-[var(--accent-text)] aria-[current=page]:shadow-[inset_0_0_0_1px_var(--ix-sel-ring)] data-[state=on]:bg-[var(--ix-sel-bg)] data-[state=on]:shadow-[inset_0_0_0_1px_var(--ix-sel-ring)] data-[state=active]:bg-[var(--ix-sel-bg)] data-[state=active]:text-[var(--accent-text)] data-[state=active]:shadow-[inset_0_0_0_1px_var(--ix-sel-ring)]"
|
|
153
153
|
], variant === "tabs" && [
|
|
154
154
|
"shrink-0 rounded-none border-b-2 border-transparent -mb-px px-4 py-2",
|
|
155
155
|
"pointer-coarse:min-h-11 pointer-coarse:min-w-11",
|
|
156
|
-
|
|
156
|
+
"focus-visible:outline-1 focus-visible:outline-[var(--focus-border)] focus-visible:ring-4 focus-visible:ring-[var(--focus-halo)] focus-visible:-outline-offset-1 focus-visible:ring-inset",
|
|
157
157
|
"hover:shadow-[inset_0_-2px_0_hsl(var(--hsl-ring)/0.4)] data-[state=active]:bg-[hsl(var(--hsl-ring)/0.07)] data-[state=active]:text-[var(--accent-text)] data-[state=active]:shadow-[inset_0_-2px_0_var(--ix-sel-ring)] aria-checked:bg-[hsl(var(--hsl-ring)/0.07)] aria-checked:text-[var(--accent-text)] aria-checked:shadow-[inset_0_-2px_0_var(--ix-sel-ring)]"
|
|
158
158
|
], active ? "text-[var(--accent-text)]" : "text-muted-foreground hover:text-foreground"),
|
|
159
159
|
children: [/* @__PURE__ */ jsx("span", { children: option.label }), option.adornment && /* @__PURE__ */ jsx("span", {
|
|
@@ -169,5 +169,4 @@ function SegmentedControl({ value, onValueChange, options, variant = "row", clas
|
|
|
169
169
|
]
|
|
170
170
|
});
|
|
171
171
|
}
|
|
172
|
-
//#endregion
|
|
173
172
|
export { SegmentedControl };
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import * as SelectPrimitive from "@radix-ui/react-select";
|
|
3
|
-
//#region src/primitives/select.d.ts
|
|
4
3
|
declare const Select: React.FC<SelectPrimitive.SelectProps>;
|
|
5
4
|
declare const SelectGroup: React.ForwardRefExoticComponent<SelectPrimitive.SelectGroupProps & React.RefAttributes<HTMLDivElement>>;
|
|
6
5
|
declare const SelectValue: React.ForwardRefExoticComponent<SelectPrimitive.SelectValueProps & React.RefAttributes<HTMLSpanElement>>;
|
|
@@ -14,5 +13,4 @@ declare const SelectContent: React.ForwardRefExoticComponent<Omit<SelectPrimitiv
|
|
|
14
13
|
declare const SelectLabel: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectLabelProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
15
14
|
declare const SelectItem: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
16
15
|
declare const SelectSeparator: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectSeparatorProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
17
|
-
//#endregion
|
|
18
16
|
export { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue };
|
|
@@ -6,7 +6,7 @@ import * as React from "react";
|
|
|
6
6
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
7
7
|
import { Check, ChevronDown, ChevronUp } from "lucide-react";
|
|
8
8
|
import * as SelectPrimitive from "@radix-ui/react-select";
|
|
9
|
-
|
|
9
|
+
// src/primitives/select.tsx
|
|
10
10
|
const Select = SelectPrimitive.Root;
|
|
11
11
|
const SelectGroup = SelectPrimitive.Group;
|
|
12
12
|
const SelectValue = SelectPrimitive.Value;
|
|
@@ -71,5 +71,4 @@ const SelectSeparator = React.forwardRef(({ className, ...props }, ref) => /* @_
|
|
|
71
71
|
...props
|
|
72
72
|
}));
|
|
73
73
|
SelectSeparator.displayName = SelectPrimitive.Separator.displayName;
|
|
74
|
-
//#endregion
|
|
75
74
|
export { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue };
|
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import * as SeparatorPrimitive from "@radix-ui/react-separator";
|
|
3
|
-
//#region src/primitives/separator.d.ts
|
|
4
3
|
/**
|
|
5
4
|
* A hairline rule on the border token. Decorative by default, so assistive
|
|
6
5
|
* technology skips it; pass `decorative={false}` when it separates groups a
|
|
7
6
|
* screen reader should announce.
|
|
8
7
|
*/
|
|
9
8
|
declare const Separator: React.ForwardRefExoticComponent<Omit<SeparatorPrimitive.SeparatorProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
10
|
-
//#endregion
|
|
11
9
|
export { Separator };
|
|
@@ -3,7 +3,7 @@ import { cn } from "../lib/utils.js";
|
|
|
3
3
|
import * as React from "react";
|
|
4
4
|
import { jsx } from "react/jsx-runtime";
|
|
5
5
|
import * as SeparatorPrimitive from "@radix-ui/react-separator";
|
|
6
|
-
|
|
6
|
+
// src/primitives/separator.tsx
|
|
7
7
|
/**
|
|
8
8
|
* A hairline rule on the border token. Decorative by default, so assistive
|
|
9
9
|
* technology skips it; pass `decorative={false}` when it separates groups a
|
|
@@ -17,5 +17,4 @@ const Separator = React.forwardRef(({ className, orientation = "horizontal", dec
|
|
|
17
17
|
...props
|
|
18
18
|
}));
|
|
19
19
|
Separator.displayName = SeparatorPrimitive.Root.displayName;
|
|
20
|
-
//#endregion
|
|
21
20
|
export { Separator };
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { SeriesPointInput } from "../lib/series.js";
|
|
2
2
|
import * as React from "react";
|
|
3
|
-
//#region src/primitives/series-sparkline.d.ts
|
|
4
3
|
export type SeriesSparklineProps = Omit<React.SVGAttributes<SVGSVGElement>, "points"> & {
|
|
5
4
|
points: SeriesPointInput[];
|
|
6
5
|
/** Accessible name; also rendered as the svg title. */
|
|
@@ -12,5 +11,4 @@ declare const SeriesSparkline: React.ForwardRefExoticComponent<Omit<React.SVGAtt
|
|
|
12
11
|
/** Accessible name; also rendered as the svg title. */
|
|
13
12
|
label: string;
|
|
14
13
|
} & React.RefAttributes<SVGSVGElement>>;
|
|
15
|
-
//#endregion
|
|
16
14
|
export { SeriesSparkline };
|
|
@@ -3,7 +3,7 @@ import { chartPresentation } from "../presentation.js";
|
|
|
3
3
|
import { normalizeSeries, seriesAreaPath, seriesExtent, seriesLinePath, seriesScale } from "../lib/series.js";
|
|
4
4
|
import * as React from "react";
|
|
5
5
|
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
-
|
|
6
|
+
// src/primitives/series-sparkline.tsx
|
|
7
7
|
/** Inline trend glyph: viewBox-scaled, currentColor against `text-primary`. */
|
|
8
8
|
const SeriesSparkline = React.forwardRef(({ points, label, className, ...props }, ref) => {
|
|
9
9
|
const series = normalizeSeries(points);
|
|
@@ -49,5 +49,4 @@ const SeriesSparkline = React.forwardRef(({ points, label, className, ...props }
|
|
|
49
49
|
});
|
|
50
50
|
});
|
|
51
51
|
SeriesSparkline.displayName = "SeriesSparkline";
|
|
52
|
-
//#endregion
|
|
53
52
|
export { SeriesSparkline };
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
//#region src/primitives/settings.d.ts
|
|
3
2
|
export type SettingsRowLayout = "inline" | "compact" | "stacked";
|
|
4
3
|
export interface SettingsRowProps {
|
|
5
4
|
/** The row's id, for a deep link such as `#timezone`. */
|
|
@@ -24,21 +23,25 @@ export interface SettingsRowProps {
|
|
|
24
23
|
onRetry?: () => void;
|
|
25
24
|
/**
|
|
26
25
|
* `inline` (default): text left, control right, stacked below 34rem.
|
|
27
|
-
* `compact`: the control keeps its own width and stays on the line (switches, single buttons)
|
|
26
|
+
* `compact`: the control keeps its own width and stays on the line (switches, single buttons); a row with a value uses `inline`.
|
|
28
27
|
* `stacked`: the control spans the row under the text (textareas, lists).
|
|
29
28
|
*/
|
|
30
29
|
layout?: SettingsRowLayout;
|
|
31
30
|
/** Why the control is unavailable, naming who can change it. Replaces the description after a lock glyph. */
|
|
32
31
|
disabledReason?: React.ReactNode;
|
|
32
|
+
/** A read-only value before any children; supplying even an empty value keeps its span. */
|
|
33
|
+
value?: React.ReactNode;
|
|
34
|
+
/** Use mono for the value, such as an identifier; children keep their own font. */
|
|
35
|
+
mono?: boolean;
|
|
33
36
|
children?: React.ReactNode;
|
|
34
37
|
}
|
|
35
38
|
/**
|
|
36
|
-
* One setting: its label, an optional consequence line and
|
|
39
|
+
* One setting: its label, an optional consequence line, read-only value and control. The
|
|
37
40
|
* label carries the save status after it; an error or a lock reason replaces
|
|
38
41
|
* the description. Rows inside a {@link SettingsSection} are divided by a
|
|
39
42
|
* hairline and stack when the card is narrower than 34rem.
|
|
40
43
|
*/
|
|
41
|
-
export declare function SettingsRow(
|
|
44
|
+
export declare function SettingsRow(props: SettingsRowProps): React.JSX.Element;
|
|
42
45
|
export interface SettingsSectionProps {
|
|
43
46
|
/** The section's anchor: `#id` scrolls to it. The title's id is `${id}-title`. */
|
|
44
47
|
id: string;
|
|
@@ -121,5 +124,4 @@ export interface SettingsListItemProps {
|
|
|
121
124
|
* that name. Without a status column the state follows the meta, and without
|
|
122
125
|
* a menu column the ⋯ menu ends the action cell.
|
|
123
126
|
*/
|
|
124
|
-
export declare function SettingsListItem({ leading, title, meta, status, error, action, menu }: SettingsListItemProps): React.JSX.Element;
|
|
125
|
-
//#endregion
|
|
127
|
+
export declare function SettingsListItem({ leading, title, meta, status, error, action, menu }: SettingsListItemProps): React.JSX.Element;
|
|
@@ -9,7 +9,7 @@ import { fieldMessageId } from "./field.js";
|
|
|
9
9
|
import * as React from "react";
|
|
10
10
|
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
11
11
|
import { CircleAlert, Ellipsis, Lock } from "lucide-react";
|
|
12
|
-
|
|
12
|
+
// src/primitives/settings.tsx
|
|
13
13
|
const SCROLL_OFFSET = "scroll-mt-[calc(var(--shell-header-height)_+_1rem)]";
|
|
14
14
|
const DIVIDED = "not-first:border-t not-first:border-[color:var(--border-subtle)]";
|
|
15
15
|
const ERROR_TEXT = "text-[color:var(--surface-danger-text)]";
|
|
@@ -60,18 +60,20 @@ function describeControl(children, htmlFor, messageId, invalid) {
|
|
|
60
60
|
});
|
|
61
61
|
}
|
|
62
62
|
/**
|
|
63
|
-
* One setting: its label, an optional consequence line and
|
|
63
|
+
* One setting: its label, an optional consequence line, read-only value and control. The
|
|
64
64
|
* label carries the save status after it; an error or a lock reason replaces
|
|
65
65
|
* the description. Rows inside a {@link SettingsSection} are divided by a
|
|
66
66
|
* hairline and stack when the card is narrower than 34rem.
|
|
67
67
|
*/
|
|
68
|
-
function SettingsRow(
|
|
68
|
+
function SettingsRow(props) {
|
|
69
|
+
const { id, label, description, info, htmlFor, status, error, onRetry, layout = "inline", disabledReason, value, mono, children } = props;
|
|
70
|
+
const hasValue = Object.hasOwn(props, "value");
|
|
69
71
|
const messageId = htmlFor ? fieldMessageId(htmlFor) : void 0;
|
|
70
72
|
const control = describeControl(children, htmlFor, error != null || disabledReason != null || description != null ? messageId : void 0, error != null);
|
|
71
73
|
return /* @__PURE__ */ jsxs("div", {
|
|
72
74
|
id,
|
|
73
75
|
"data-layout": layout,
|
|
74
|
-
className: cn("grid min-w-0 items-center gap-x-8 gap-y-3 px-5 py-4 @max-[34rem]/settings-section:px-4", SCROLL_OFFSET, DIVIDED, ROW_COLUMNS[layout]),
|
|
76
|
+
className: cn("grid min-w-0 items-center gap-x-8 gap-y-3 px-5 py-4 @max-[34rem]/settings-section:px-4", SCROLL_OFFSET, DIVIDED, ROW_COLUMNS[hasValue && layout === "compact" ? "inline" : layout]),
|
|
75
77
|
children: [/* @__PURE__ */ jsxs("div", {
|
|
76
78
|
className: "min-w-0",
|
|
77
79
|
children: [/* @__PURE__ */ jsxs("div", {
|
|
@@ -114,9 +116,13 @@ function SettingsRow({ id, label, description, info, htmlFor, status, error, onR
|
|
|
114
116
|
className: "mt-0.5 text-sm leading-5 text-muted-foreground [overflow-wrap:anywhere]",
|
|
115
117
|
children: description
|
|
116
118
|
})]
|
|
117
|
-
}), control != null && control !== false && /* @__PURE__ */
|
|
118
|
-
className: cn("flex min-w-0 items-center gap-2", ROW_CONTROL[layout]),
|
|
119
|
-
children:
|
|
119
|
+
}), (hasValue || control != null && control !== false) && /* @__PURE__ */ jsxs("div", {
|
|
120
|
+
className: cn("flex min-w-0 items-center gap-2", ROW_CONTROL[hasValue && layout === "compact" ? "inline" : layout]),
|
|
121
|
+
children: [hasValue && /* @__PURE__ */ jsx("span", {
|
|
122
|
+
"data-slot": "settings-value",
|
|
123
|
+
className: cn("min-w-0 text-foreground text-sm [overflow-wrap:anywhere] @min-[34rem]/settings-section:text-right", mono && "font-mono"),
|
|
124
|
+
children: value
|
|
125
|
+
}), control]
|
|
120
126
|
})]
|
|
121
127
|
});
|
|
122
128
|
}
|
|
@@ -312,5 +318,4 @@ function SettingsListItem({ leading, title, meta, status, error, action, menu })
|
|
|
312
318
|
]
|
|
313
319
|
});
|
|
314
320
|
}
|
|
315
|
-
//#endregion
|
|
316
321
|
export { SettingsList, SettingsListItem, SettingsRow, SettingsSection };
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { VariantProps } from "class-variance-authority";
|
|
2
2
|
import * as React from "react";
|
|
3
3
|
import * as SheetPrimitive from "@radix-ui/react-dialog";
|
|
4
|
-
//#region src/primitives/sheet.d.ts
|
|
5
4
|
/** A dialog that slides in from an edge: a mobile nav drawer or a side panel. */
|
|
6
5
|
declare const Sheet: React.FC<SheetPrimitive.DialogProps>;
|
|
7
6
|
declare const SheetTrigger: React.ForwardRefExoticComponent<SheetPrimitive.DialogTriggerProps & React.RefAttributes<HTMLButtonElement>>;
|
|
@@ -24,5 +23,4 @@ declare namespace SheetFooter {
|
|
|
24
23
|
}
|
|
25
24
|
declare const SheetTitle: React.ForwardRefExoticComponent<Omit<SheetPrimitive.DialogTitleProps & React.RefAttributes<HTMLHeadingElement>, "ref"> & React.RefAttributes<HTMLHeadingElement>>;
|
|
26
25
|
declare const SheetDescription: React.ForwardRefExoticComponent<Omit<SheetPrimitive.DialogDescriptionProps & React.RefAttributes<HTMLParagraphElement>, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
|
|
27
|
-
//#endregion
|
|
28
26
|
export { Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger };
|
package/dist/primitives/sheet.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { surfaceMotion } from "../lib/motion.js";
|
|
3
|
-
import
|
|
3
|
+
import "../lib/focus.js";
|
|
4
4
|
import { cn } from "../lib/utils.js";
|
|
5
5
|
import { SurfaceMotion } from "../lib/surface-motion.js";
|
|
6
6
|
import { cva } from "class-variance-authority";
|
|
@@ -8,7 +8,7 @@ import * as React from "react";
|
|
|
8
8
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
9
9
|
import * as SheetPrimitive from "@radix-ui/react-dialog";
|
|
10
10
|
import { X } from "lucide-react";
|
|
11
|
-
|
|
11
|
+
// src/primitives/sheet.tsx
|
|
12
12
|
/** A dialog that slides in from an edge: a mobile nav drawer or a side panel. */
|
|
13
13
|
const Sheet = SheetPrimitive.Root;
|
|
14
14
|
const SheetTrigger = SheetPrimitive.Trigger;
|
|
@@ -45,7 +45,7 @@ const SheetContent = React.forwardRef(({ className, children, side = "right", hi
|
|
|
45
45
|
side: side ?? "right",
|
|
46
46
|
asChild,
|
|
47
47
|
children: [children, !hideCloseButton && /* @__PURE__ */ jsxs(SheetPrimitive.Close, {
|
|
48
|
-
className: cn("absolute top-4 right-4 rounded-sm text-muted-foreground opacity-70 transition-[opacity,box-shadow] hover:opacity-100 focus-visible:opacity-100 disabled:pointer-events-none", "[transition:color_var(--motion-control),background-color_var(--motion-control),border-color_var(--motion-control),box-shadow_var(--motion-control),transform_var(--motion-control),scale_var(--motion-control),opacity_var(--motion-control)] motion-reduce:transition-none",
|
|
48
|
+
className: cn("absolute top-4 right-4 rounded-sm text-muted-foreground opacity-70 transition-[opacity,box-shadow] hover:opacity-100 focus-visible:opacity-100 disabled:pointer-events-none", "[transition:color_var(--motion-control),background-color_var(--motion-control),border-color_var(--motion-control),box-shadow_var(--motion-control),transform_var(--motion-control),scale_var(--motion-control),opacity_var(--motion-control)] motion-reduce:transition-none", "focus-visible:outline-1 focus-visible:outline-[var(--focus-border)] focus-visible:ring-4 focus-visible:ring-[var(--focus-halo)] focus-visible:outline-offset-0"),
|
|
49
49
|
children: [/* @__PURE__ */ jsx(X, { className: "size-4" }), /* @__PURE__ */ jsx("span", {
|
|
50
50
|
className: "sr-only",
|
|
51
51
|
children: "Close"
|
|
@@ -76,5 +76,4 @@ const SheetDescription = React.forwardRef(({ className, ...props }, ref) => /* @
|
|
|
76
76
|
...props
|
|
77
77
|
}));
|
|
78
78
|
SheetDescription.displayName = SheetPrimitive.Description.displayName;
|
|
79
|
-
//#endregion
|
|
80
79
|
export { Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger };
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { ReactNode } from "react";
|
|
2
|
-
//#region src/primitives/sidebar-drop-zone.d.ts
|
|
3
2
|
export interface SidebarDropZoneProps {
|
|
4
3
|
/** Called with dropped files */
|
|
5
4
|
onDrop: (files: File[]) => void;
|
|
@@ -17,5 +16,4 @@ export interface SidebarDropZoneProps {
|
|
|
17
16
|
persistent?: boolean;
|
|
18
17
|
className?: string;
|
|
19
18
|
}
|
|
20
|
-
export declare function SidebarDropZone({ onDrop, accept, disabled, title, description, icon, persistent, className }: SidebarDropZoneProps): import("react").JSX.Element;
|
|
21
|
-
//#endregion
|
|
19
|
+
export declare function SidebarDropZone({ onDrop, accept, disabled, title, description, icon, persistent, className }: SidebarDropZoneProps): import("react").JSX.Element;
|
|
@@ -2,7 +2,7 @@ import { cn } from "../lib/utils.js";
|
|
|
2
2
|
import { useCallback, useRef, useState } from "react";
|
|
3
3
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
4
4
|
import { Upload } from "lucide-react";
|
|
5
|
-
|
|
5
|
+
// src/primitives/sidebar-drop-zone.tsx
|
|
6
6
|
/**
|
|
7
7
|
* SidebarDropZone — compact scoped drop zone for sidebar panels and narrow containers.
|
|
8
8
|
*
|
|
@@ -84,5 +84,4 @@ function SidebarDropZone({ onDrop, accept, disabled, title = "Drop files here",
|
|
|
84
84
|
})
|
|
85
85
|
});
|
|
86
86
|
}
|
|
87
|
-
//#endregion
|
|
88
87
|
export { SidebarDropZone };
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
//#region src/primitives/skeleton.d.ts
|
|
2
1
|
declare function Skeleton({ className, ...props }: React.HTMLAttributes<HTMLDivElement>): import("react").JSX.Element;
|
|
3
2
|
declare function SkeletonCard({ className }: {
|
|
4
3
|
className?: string;
|
|
@@ -6,5 +5,4 @@ declare function SkeletonCard({ className }: {
|
|
|
6
5
|
declare function SkeletonTable({ rows }: {
|
|
7
6
|
rows?: number;
|
|
8
7
|
}): import("react").JSX.Element;
|
|
9
|
-
//#endregion
|
|
10
8
|
export { Skeleton, SkeletonCard, SkeletonTable };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { cn } from "../lib/utils.js";
|
|
2
2
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
-
|
|
3
|
+
// src/primitives/skeleton.tsx
|
|
4
4
|
function Skeleton({ className, ...props }) {
|
|
5
5
|
return /* @__PURE__ */ jsx("div", {
|
|
6
6
|
className: cn("animate-pulse motion-reduce:animate-none rounded-lg bg-muted/50", className),
|
|
@@ -46,5 +46,4 @@ function SkeletonTable({ rows = 5 }) {
|
|
|
46
46
|
}, i))]
|
|
47
47
|
});
|
|
48
48
|
}
|
|
49
|
-
//#endregion
|
|
50
49
|
export { Skeleton, SkeletonCard, SkeletonTable };
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import * as SliderPrimitive from "@radix-ui/react-slider";
|
|
3
|
-
//#region src/primitives/slider.d.ts
|
|
4
3
|
/**
|
|
5
4
|
* Range input with one thumb per value. A single value renders one thumb; an
|
|
6
5
|
* array of two renders a range. The thumbs are what assistive technology
|
|
@@ -10,5 +9,4 @@ import * as SliderPrimitive from "@radix-ui/react-slider";
|
|
|
10
9
|
declare const Slider: React.ForwardRefExoticComponent<Omit<SliderPrimitive.SliderProps & React.RefAttributes<HTMLSpanElement>, "ref"> & {
|
|
11
10
|
thumbLabels?: string[];
|
|
12
11
|
} & React.RefAttributes<HTMLSpanElement>>;
|
|
13
|
-
//#endregion
|
|
14
12
|
export { Slider };
|