@republicroad/seal-appshell 1.1.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/LICENSE +21 -0
- package/README.md +74 -0
- package/dist/assets/custom-node-schema.json.d.ts +549 -0
- package/dist/components/__tests__/skinned-decision-graph.test.d.ts +1 -0
- package/dist/components/__tests__/skinned-header.test.d.ts +1 -0
- package/dist/components/__tests__/skinned-panels.test.d.ts +1 -0
- package/dist/components/__tests__/skinned-simulator-panel.test.d.ts +1 -0
- package/dist/components/__tests__/skinned-simulator.test.d.ts +1 -0
- package/dist/components/custom-node/__tests__/custom-node-button.test.d.ts +1 -0
- package/dist/components/custom-node/__tests__/schema-container-tab.test.d.ts +1 -0
- package/dist/components/custom-node/crypto-node.d.ts +5 -0
- package/dist/components/custom-node/current-date-node.d.ts +8 -0
- package/dist/components/custom-node/http-request-node.d.ts +5 -0
- package/dist/components/custom-node/key-value-editor.d.ts +16 -0
- package/dist/components/custom-node/locked-corner-badge.d.ts +2 -0
- package/dist/components/custom-node/query-list-node.d.ts +5 -0
- package/dist/components/custom-node/schema-container-tab.d.ts +13 -0
- package/dist/components/icons/code.d.ts +3 -0
- package/dist/components/icons/flash-circle.d.ts +3 -0
- package/dist/components/reui/alert.d.ts +9 -0
- package/dist/components/reui/autocomplete.d.ts +40 -0
- package/dist/components/reui/badge.d.ts +14 -0
- package/dist/components/reui/cascader/cascader-async.d.ts +86 -0
- package/dist/components/reui/cascader/cascader-columns.d.ts +26 -0
- package/dist/components/reui/cascader/cascader-context.d.ts +190 -0
- package/dist/components/reui/cascader/cascader-footer.d.ts +83 -0
- package/dist/components/reui/cascader/cascader-i18n.d.ts +13 -0
- package/dist/components/reui/cascader/cascader-item.d.ts +112 -0
- package/dist/components/reui/cascader/cascader-lib.d.ts +137 -0
- package/dist/components/reui/cascader/cascader-nav.d.ts +56 -0
- package/dist/components/reui/cascader/cascader-types.d.ts +179 -0
- package/dist/components/reui/cascader/cascader-virtual.d.ts +62 -0
- package/dist/components/reui/cascader/cascader.d.ts +325 -0
- package/dist/components/shell-header.d.ts +20 -0
- package/dist/components/skinned-decision-graph.d.ts +19 -0
- package/dist/components/ui/alert-dialog.d.ts +20 -0
- package/dist/components/ui/avatar.d.ts +5 -0
- package/dist/components/ui/badge.d.ts +9 -0
- package/dist/components/ui/button.d.ts +11 -0
- package/dist/components/ui/dropdown-menu.d.ts +27 -0
- package/dist/components/ui/field.d.ts +24 -0
- package/dist/components/ui/input.d.ts +3 -0
- package/dist/components/ui/label.d.ts +4 -0
- package/dist/components/ui/scroll-area.d.ts +4 -0
- package/dist/components/ui/select.d.ts +13 -0
- package/dist/components/ui/separator.d.ts +3 -0
- package/dist/components/ui/sheet.d.ts +23 -0
- package/dist/components/ui/sonner.d.ts +5 -0
- package/dist/components/ui/spinner.d.ts +2 -0
- package/dist/components/ui/switch.d.ts +3 -0
- package/dist/components/ui/tabs.d.ts +6 -0
- package/dist/components/ui/toggle-group.d.ts +13 -0
- package/dist/components/ui/toggle.d.ts +12 -0
- package/dist/components/ui/tooltip.d.ts +7 -0
- package/dist/components/version-history/__tests__/version-history-panel.test.d.ts +1 -0
- package/dist/components/version-history/version-history-panel.d.ts +40 -0
- package/dist/context/theme.provider.d.ts +29 -0
- package/dist/hooks/useCustomNodes.d.ts +16 -0
- package/dist/index.d.ts +24 -0
- package/dist/index.js +121959 -0
- package/dist/integration/decision-graph-appshell.stories.d.ts +10 -0
- package/dist/lib/__tests__/crypto-protocol.test.d.ts +1 -0
- package/dist/lib/__tests__/custom-node-registry.test.d.ts +1 -0
- package/dist/lib/__tests__/http-request-protocol.test.d.ts +1 -0
- package/dist/lib/__tests__/json-path-protocol.test.d.ts +1 -0
- package/dist/lib/__tests__/storage-key.test.d.ts +1 -0
- package/dist/lib/auth/__tests__/adapter.test.d.ts +1 -0
- package/dist/lib/auth/adapter.d.ts +7 -0
- package/dist/lib/auth-client.d.ts +3 -0
- package/dist/lib/crypto-protocol.d.ts +28 -0
- package/dist/lib/custom-node-plans.d.ts +24 -0
- package/dist/lib/custom-node-registry.d.ts +13 -0
- package/dist/lib/custom-node-schema-source.d.ts +6 -0
- package/dist/lib/custom-node-types.d.ts +73 -0
- package/dist/lib/http-request-protocol.d.ts +47 -0
- package/dist/lib/json-path-protocol.d.ts +11 -0
- package/dist/lib/roster-source.d.ts +12 -0
- package/dist/lib/storage-key.d.ts +5 -0
- package/dist/lib/user-resolver.d.ts +6 -0
- package/dist/lib/utils.d.ts +2 -0
- package/dist/reui/icons/animated/duotone/lock.d.ts +3 -0
- package/dist/reui/icons/animated/outline/play-circle.d.ts +3 -0
- package/dist/reui/icons/default/outline/plus-circle.d.ts +3 -0
- package/dist/reui/icons/default/outline/shield-search.d.ts +3 -0
- package/dist/reui/icons/default/outline/trash-square.d.ts +3 -0
- package/dist/setupTests.d.ts +0 -0
- package/dist/shell/__tests__/default-simulate.test.d.ts +1 -0
- package/dist/shell/__tests__/graphs-http-adapter.test.d.ts +1 -0
- package/dist/shell/__tests__/indexed-db-adapter.test.d.ts +0 -0
- package/dist/shell/__tests__/restore.test.d.ts +0 -0
- package/dist/shell/default-simulate.d.ts +3 -0
- package/dist/shell/editor-shell.context.d.ts +22 -0
- package/dist/shell/execute-simulate.d.ts +8 -0
- package/dist/shell/graphs-http-adapter.d.ts +7 -0
- package/dist/shell/index.d.ts +10 -0
- package/dist/shell/indexed-db-adapter.d.ts +16 -0
- package/dist/shell/persistence.d.ts +89 -0
- package/dist/shell/restore.d.ts +21 -0
- package/dist/shell/types.d.ts +20 -0
- package/dist/skin/__tests__/apply.test.d.ts +1 -0
- package/dist/skin/apply.d.ts +7 -0
- package/dist/skin/layout.d.ts +17 -0
- package/dist/skin/types.d.ts +73 -0
- package/dist/style.css +2 -0
- package/package.json +73 -0
|
@@ -0,0 +1,325 @@
|
|
|
1
|
+
import { Combobox as ComboboxPrimitive } from '@base-ui/react';
|
|
2
|
+
import { useRender } from '@base-ui/react/use-render';
|
|
3
|
+
import { CascaderGetChildren, CascaderOnSearch, CascaderResolveValue } from '../../../components/reui/cascader/cascader-async';
|
|
4
|
+
import { createCascaderHighlightStore, useCascaderActions, useCascaderHighlight, useCascaderRender, useCascaderState, CascaderActionsContextValue, CascaderColumn, CascaderHighlight, CascaderHighlightStore, CascaderItemState, CascaderRenderContextValue, CascaderStateContextValue } from '../../../components/reui/cascader/cascader-context';
|
|
5
|
+
import { CascaderCheckedStrategy } from '../../../components/reui/cascader/cascader-lib';
|
|
6
|
+
import { CascaderActionItem, CascaderChangeDetails, CascaderLabels, CascaderMode, CascaderNode, CascaderSearchScope, CascaderSelectable } from '../../../components/reui/cascader/cascader-types';
|
|
7
|
+
import * as React from 'react';
|
|
8
|
+
/** The pre-split shape, merged, so `useCascader()` returns what it always did. */
|
|
9
|
+
export interface CascaderContextValue<T = unknown> extends CascaderActionsContextValue<T>, CascaderStateContextValue<T> {
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* The cascader's internals, typed for the caller's own item payload.
|
|
13
|
+
* @deprecated Reads BOTH halves, so a caller re-renders on every keystroke.
|
|
14
|
+
* Prefer `useCascaderActions()` or `useCascaderState()`. Kept for compat.
|
|
15
|
+
*/
|
|
16
|
+
export declare function useCascader<T = unknown>(): CascaderContextValue<T>;
|
|
17
|
+
export interface CascaderSelection<T = unknown> {
|
|
18
|
+
/** The selected nodes, resolved. Empty when nothing is selected. */
|
|
19
|
+
selected: CascaderNode<T>[];
|
|
20
|
+
/** Ancestor chain per selected node, root first, node last. */
|
|
21
|
+
paths: CascaderNode<T>[][];
|
|
22
|
+
/** The single selection, or the first one in `multiple` mode. */
|
|
23
|
+
first: CascaderNode<T> | null;
|
|
24
|
+
/** Ancestor chain of `first`. */
|
|
25
|
+
firstPath: CascaderNode<T>[];
|
|
26
|
+
count: number;
|
|
27
|
+
isEmpty: boolean;
|
|
28
|
+
multiple: boolean;
|
|
29
|
+
remove: (value: string) => void;
|
|
30
|
+
clear: () => void;
|
|
31
|
+
}
|
|
32
|
+
/** Headless access to the selection, for a trigger that is not
|
|
33
|
+
* `CascaderValue`. Pass the payload explicitly to get `node.data` typed. */
|
|
34
|
+
export declare function useCascaderSelection<T = unknown>(): CascaderSelection<T>;
|
|
35
|
+
/**
|
|
36
|
+
* Why the navigation path changed.
|
|
37
|
+
* - `"drill"`: a branch was entered (row press, level arrow, deep-search hit).
|
|
38
|
+
* - `"back"`: one level up (back control, Backspace on an empty query).
|
|
39
|
+
* - `"breadcrumb"`: a jump to an exact depth in the trail.
|
|
40
|
+
* - `"reveal"`: the reopen navigated to the level holding the selection.
|
|
41
|
+
* - `"external"`: `setPath` called from outside the primitive's own flows.
|
|
42
|
+
*/
|
|
43
|
+
export type CascaderPathChangeReason = 'drill' | 'back' | 'breadcrumb' | 'reveal' | 'external';
|
|
44
|
+
/** Everything independent of the selection mode; the rest is on the two arms. */
|
|
45
|
+
export interface CascaderBaseProps<T = unknown> {
|
|
46
|
+
/** Nested tree, or a flat list when `getParent` is supplied. */
|
|
47
|
+
items: CascaderNode<T>[];
|
|
48
|
+
/** Opt in to flat adjacency input by returning each node's parent value. */
|
|
49
|
+
getParent?: (node: CascaderNode<T>) => string | null | undefined;
|
|
50
|
+
/**
|
|
51
|
+
* Fetches one level on demand; `node` is `null` for the root. Return an
|
|
52
|
+
* array, or a `CascaderLoadResult` when the level pages. Pages cache apart
|
|
53
|
+
* from `items`; mark unfetched branches `hasChildren` or they read as leaves.
|
|
54
|
+
*/
|
|
55
|
+
getChildren?: CascaderGetChildren<T>;
|
|
56
|
+
/**
|
|
57
|
+
* Server-side search, debounced by `searchDebounce`; replaces the local scan
|
|
58
|
+
* while the query is set. Results are detached: resolvable by value, in no
|
|
59
|
+
* level. Ignored in `mode="tree"`, where a hit belongs to no visible branch.
|
|
60
|
+
*/
|
|
61
|
+
onSearch?: CascaderOnSearch<T>;
|
|
62
|
+
/** Milliseconds of quiet before `onSearch` fires. */
|
|
63
|
+
searchDebounce?: number;
|
|
64
|
+
/**
|
|
65
|
+
* Resolves a value the loader has never seen into its ancestor chain, root
|
|
66
|
+
* first, so the trigger can path a server-supplied selection. Does NOT mark
|
|
67
|
+
* those levels loaded: opening one still fetches.
|
|
68
|
+
*/
|
|
69
|
+
resolveValue?: CascaderResolveValue<T>;
|
|
70
|
+
/** Cache key. Changing it drops every page and aborts anything in flight. */
|
|
71
|
+
loadKey?: unknown;
|
|
72
|
+
/** Prefetch a highlighted branch's children after a pause. Off by default. */
|
|
73
|
+
prefetch?: boolean;
|
|
74
|
+
/**
|
|
75
|
+
* Called when a load fails. `context.parent` is the level (`null` for root);
|
|
76
|
+
* `context.reason` is `"level"`, `"more"`, `"retry"`, `"prefetch"`,
|
|
77
|
+
* `"search"` or `"resolve"`. Never for an aborted or superseded request.
|
|
78
|
+
*/
|
|
79
|
+
onLoadError?: (error: unknown, context: {
|
|
80
|
+
parent: string | null;
|
|
81
|
+
reason: string;
|
|
82
|
+
}) => void;
|
|
83
|
+
/** Which nodes may be committed. Defaults to leaves only. */
|
|
84
|
+
selectable?: CascaderSelectable<T>;
|
|
85
|
+
/**
|
|
86
|
+
* Whether the built-in SINGLE-SELECT check is drawn. Defaults to true.
|
|
87
|
+
* `false` also gives back the inline-end gutter every style reserves for it;
|
|
88
|
+
* `data-selected` and `aria-selected` stay. A no-op under `multiple`, where
|
|
89
|
+
* the checkbox is the selection CONTROL rather than a decoration.
|
|
90
|
+
*/
|
|
91
|
+
indicator?: boolean;
|
|
92
|
+
/**
|
|
93
|
+
* Footer ACTIONS: commands pinned below the list, never rows in it, and never
|
|
94
|
+
* touching the data tree. A childless `<CascaderFooter />` draws these; an
|
|
95
|
+
* action with `items` opens a side-anchored flyout rather than firing.
|
|
96
|
+
*/
|
|
97
|
+
actions?: CascaderActionItem[];
|
|
98
|
+
/**
|
|
99
|
+
* Parent/child cascading. Multi-select only, off by default, and it needs
|
|
100
|
+
* committable branches (`selectable="any"` or a predicate). A commit selects
|
|
101
|
+
* or deselects every SELECTABLE node in the LOADED subtree and reconciles
|
|
102
|
+
* ancestors. LOADED is the semantic, not a hedge: a commit must not fan out
|
|
103
|
+
* into a request per level, so children arriving later arrive unchecked.
|
|
104
|
+
*/
|
|
105
|
+
cascade?: boolean;
|
|
106
|
+
mode?: CascaderMode;
|
|
107
|
+
/** How a branch opens from the pointer in columns mode's ACTIVE column.
|
|
108
|
+
* `"click"` is the default, and neither value ever commits a selection. */
|
|
109
|
+
expandTrigger?: 'click' | 'hover';
|
|
110
|
+
path?: string[];
|
|
111
|
+
defaultPath?: string[];
|
|
112
|
+
/** The second argument says WHY. An existing `(path) => void` still works. */
|
|
113
|
+
onPathChange?: (path: string[], details: {
|
|
114
|
+
reason: CascaderPathChangeReason;
|
|
115
|
+
}) => void;
|
|
116
|
+
expanded?: string[];
|
|
117
|
+
defaultExpanded?: string[];
|
|
118
|
+
onExpandedChange?: (expanded: string[]) => void;
|
|
119
|
+
open?: boolean;
|
|
120
|
+
defaultOpen?: boolean;
|
|
121
|
+
/** Forwards Base UI's reason; a leaf commit's close says `"item-press"`. */
|
|
122
|
+
onOpenChange?: (open: boolean, details: {
|
|
123
|
+
reason: string;
|
|
124
|
+
}) => void;
|
|
125
|
+
/**
|
|
126
|
+
* Whether a SINGLE-SELECT leaf commit closes the popup. Defaults to true.
|
|
127
|
+
* `false` is for a compare-and-repick flow; Escape, outside press and the
|
|
128
|
+
* trigger still close. Ignored under `multiple`, which never closes.
|
|
129
|
+
*/
|
|
130
|
+
closeOnSelect?: boolean;
|
|
131
|
+
inputValue?: string;
|
|
132
|
+
defaultInputValue?: string;
|
|
133
|
+
onInputValueChange?: (value: string) => void;
|
|
134
|
+
searchScope?: CascaderSearchScope;
|
|
135
|
+
/** Custom matcher, replacing label + keywords substring matching. */
|
|
136
|
+
filter?: (node: CascaderNode<T>, normalizedQuery: string) => boolean;
|
|
137
|
+
/** On open, navigate to the level holding the selection. Default true. */
|
|
138
|
+
revealSelected?: boolean;
|
|
139
|
+
maxHeight?: number | string;
|
|
140
|
+
/**
|
|
141
|
+
* Window the rendered rows. `undefined` decides per level from
|
|
142
|
+
* `virtualizeThreshold`; `true`/`false` force it. Also opt-in at the markup
|
|
143
|
+
* level, so the base install pulls in no virtualization library.
|
|
144
|
+
*/
|
|
145
|
+
virtualize?: boolean;
|
|
146
|
+
/** Row count at which windowing turns itself on. */
|
|
147
|
+
virtualizeThreshold?: number;
|
|
148
|
+
/** Row height handed to the virtualizer before a row has been measured. */
|
|
149
|
+
estimateRowSize?: number;
|
|
150
|
+
/** Rows rendered beyond each edge of the viewport. */
|
|
151
|
+
overscan?: number;
|
|
152
|
+
labels?: Partial<CascaderLabels>;
|
|
153
|
+
/** Replaces the entire row, affordances included. */
|
|
154
|
+
renderItem?: (node: CascaderNode<T>, state: CascaderItemState<T>) => React.ReactNode;
|
|
155
|
+
/** Replaces only the label block; icon, count, chevron and check stay. */
|
|
156
|
+
renderLabel?: (node: CascaderNode<T>, state: CascaderItemState<T>) => React.ReactNode;
|
|
157
|
+
disabled?: boolean;
|
|
158
|
+
/** Native form field name. Submits the selected value(s). */
|
|
159
|
+
name?: string;
|
|
160
|
+
/** Id of the owning form, for a cascader rendered outside it. */
|
|
161
|
+
form?: string;
|
|
162
|
+
/** Id of the control. Pairs the field with a `<label htmlFor>`. */
|
|
163
|
+
id?: string;
|
|
164
|
+
/** Marks the field required for native form validation. */
|
|
165
|
+
required?: boolean;
|
|
166
|
+
/** The value can be read and submitted, but not changed. */
|
|
167
|
+
readOnly?: boolean;
|
|
168
|
+
/** Marks the field invalid: `aria-invalid` and `data-invalid` on the trigger,
|
|
169
|
+
* the chips and the input, which every style's error treatment reads. */
|
|
170
|
+
invalid?: boolean;
|
|
171
|
+
/** Ref to the hidden input Base UI submits with, for form-library focus. */
|
|
172
|
+
inputRef?: React.Ref<HTMLInputElement>;
|
|
173
|
+
/** Renders without a floating popup, for an embedded `CascaderPanel`. */
|
|
174
|
+
inline?: boolean;
|
|
175
|
+
children?: React.ReactNode;
|
|
176
|
+
}
|
|
177
|
+
export interface CascaderSingleProps<T = unknown> extends CascaderBaseProps<T> {
|
|
178
|
+
multiple?: false;
|
|
179
|
+
value?: string;
|
|
180
|
+
defaultValue?: string;
|
|
181
|
+
onValueChange?: (value: string, details: CascaderChangeDetails<T>) => void;
|
|
182
|
+
/** `never` so passing it is a compile error, not a silent no-op. */
|
|
183
|
+
max?: never;
|
|
184
|
+
}
|
|
185
|
+
/** Multi-select props. Enables checkbox rows and chip display. */
|
|
186
|
+
export interface CascaderMultipleProps<T = unknown> extends CascaderBaseProps<T> {
|
|
187
|
+
multiple: true;
|
|
188
|
+
value?: string[];
|
|
189
|
+
defaultValue?: string[];
|
|
190
|
+
onValueChange?: (value: string[], details: CascaderChangeDetails<T>) => void;
|
|
191
|
+
/** Cap on selections. Further picks are refused, the existing ones survive. */
|
|
192
|
+
max?: number;
|
|
193
|
+
}
|
|
194
|
+
/** `multiple` discriminates: `value`, `onValueChange` and `max` narrow with it. */
|
|
195
|
+
export type CascaderProps<T = unknown> = CascaderSingleProps<T> | CascaderMultipleProps<T>;
|
|
196
|
+
/** No default on `T`: inferred from `items`, so `node.data` arrives typed. */
|
|
197
|
+
declare function Cascader<T>({ items, getParent, getChildren, onSearch, searchDebounce, resolveValue, loadKey, prefetch, onLoadError, value: valueProp, defaultValue, onValueChange: onValueChangeProp, multiple, selectable, indicator, actions, cascade, max, mode, expandTrigger, path: pathProp, defaultPath, onPathChange, expanded: expandedProp, defaultExpanded, onExpandedChange, open: openProp, defaultOpen, onOpenChange, closeOnSelect, inputValue: inputValueProp, defaultInputValue, onInputValueChange, searchScope, filter, revealSelected, maxHeight, virtualize, virtualizeThreshold, estimateRowSize, overscan, labels: labelsProp, renderItem, renderLabel, disabled, name, form, id, required, readOnly, invalid, inputRef, inline, children, }: CascaderProps<T>): React.JSX.Element;
|
|
198
|
+
/** `Trigger.Props` stops short of `ref`, so it is intersected in, as the
|
|
199
|
+
* shadcn combobox wrapper also does: a form library needs a ref here, and
|
|
200
|
+
* `onBlur`, the "touched" signal, lands here too. */
|
|
201
|
+
export interface CascaderTriggerProps extends ComboboxPrimitive.Trigger.Props, Pick<React.ComponentPropsWithRef<'button'>, 'ref'> {
|
|
202
|
+
/** Hides the trailing chevron, for a trigger that supplies its own. */
|
|
203
|
+
showIcon?: boolean;
|
|
204
|
+
}
|
|
205
|
+
declare function CascaderTrigger({ className, children, showIcon, ref, ...props }: CascaderTriggerProps): React.JSX.Element;
|
|
206
|
+
/** Ref for the chips container: they replace the trigger, so the popup has to
|
|
207
|
+
* be anchored to them. Hand it to `CascaderContent`'s `anchor`. */
|
|
208
|
+
export declare function useCascaderAnchor(): React.MutableRefObject<HTMLDivElement | null>;
|
|
209
|
+
export interface CascaderChipsProps extends Omit<ComboboxPrimitive.Chips.Props, 'children'>, Pick<React.ComponentPropsWithRef<'div'>, 'ref'> {
|
|
210
|
+
/** Shown in place of the chips when nothing is selected. */
|
|
211
|
+
placeholder?: React.ReactNode;
|
|
212
|
+
/**
|
|
213
|
+
* How a `cascade` selection is condensed into chips. DISPLAY ONLY: the
|
|
214
|
+
* stored value stays the full closure, which keeps a row's checked state an
|
|
215
|
+
* O(1) lookup. `"all"` (default) is one chip per value, `"parent"` collapses
|
|
216
|
+
* a fully selected branch, `"child"` chips only the deepest frontier.
|
|
217
|
+
* Removing a condensed chip removes its whole closure and reconciles.
|
|
218
|
+
*/
|
|
219
|
+
strategy?: CascaderCheckedStrategy;
|
|
220
|
+
/** Replaces the chip list, receiving the resolved selection IN SELECTION
|
|
221
|
+
* ORDER. Keep that order: Base UI removes a chip by sibling position. */
|
|
222
|
+
children?: React.ReactNode | ((nodes: CascaderNode[]) => React.ReactNode);
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* The multi-select trigger surface: one removable chip per selection, where
|
|
226
|
+
* `CascaderValue` would collapse to "3 selected". A component rather than a
|
|
227
|
+
* recipe because of three easy misses: the popup anchored to the chips, an
|
|
228
|
+
* accessible name on every remove button, and labels that disambiguate when
|
|
229
|
+
* two branches use the same one.
|
|
230
|
+
*
|
|
231
|
+
* ```tsx
|
|
232
|
+
* const anchor = useCascaderAnchor()
|
|
233
|
+
* <Cascader multiple items={items}>
|
|
234
|
+
* <CascaderChips ref={anchor} placeholder="Select attributes" />
|
|
235
|
+
* <CascaderContent anchor={anchor}>...</CascaderContent>
|
|
236
|
+
* </Cascader>
|
|
237
|
+
* ```
|
|
238
|
+
*/
|
|
239
|
+
declare function CascaderChips({ className, children, placeholder, strategy, ...props }: CascaderChipsProps): React.JSX.Element;
|
|
240
|
+
export interface CascaderChipProps extends Omit<ComboboxPrimitive.Chip.Props, 'children'> {
|
|
241
|
+
node: CascaderNode;
|
|
242
|
+
/** Prefix the label with its ancestor trail. */
|
|
243
|
+
showPath?: boolean;
|
|
244
|
+
/** Trail segments to show, the node itself included. */
|
|
245
|
+
maxSegments?: number;
|
|
246
|
+
/** Hides the remove button, for a read-only chip. */
|
|
247
|
+
showRemove?: boolean;
|
|
248
|
+
/** Replaces Base UI's positional removal for this chip (remove button and
|
|
249
|
+
* Backspace/Delete). Supplied for a `strategy`-condensed chip, whose
|
|
250
|
+
* position no longer maps onto the stored array. */
|
|
251
|
+
onRemove?: () => void;
|
|
252
|
+
/** Replaces the chip's label. The remove button is still rendered. */
|
|
253
|
+
children?: React.ReactNode;
|
|
254
|
+
}
|
|
255
|
+
/** One chip. Removal goes through Base UI's `ChipRemove`, which reports the
|
|
256
|
+
* shortened selection to the root, so it lands in the same `setSelection` as
|
|
257
|
+
* every other deselection and `cascade` applies to it. */
|
|
258
|
+
declare function CascaderChip({ className, node, showPath, maxSegments, showRemove, onRemove, children, ...props }: CascaderChipProps): React.JSX.Element;
|
|
259
|
+
export interface CascaderContentProps extends ComboboxPrimitive.Popup.Props,
|
|
260
|
+
/** Positioner surface forwarded as-is, so an unusual anchor does not force
|
|
261
|
+
* a rebuild of the content stack. No `trackAnchor`: Base UI 1.5.0 has
|
|
262
|
+
* none. */
|
|
263
|
+
Pick<ComboboxPrimitive.Positioner.Props, 'side' | 'align' | 'sideOffset' | 'alignOffset' | 'anchor' | 'collisionBoundary' | 'collisionPadding' | 'sticky' | 'positionMethod'>,
|
|
264
|
+
/** Where the portal mounts, for a shadow root or a scoped stacking context. */
|
|
265
|
+
Pick<ComboboxPrimitive.Portal.Props, 'container'> {
|
|
266
|
+
}
|
|
267
|
+
/** Portal + Positioner + floating panel. Unlike shadcn's `ComboboxContent` it
|
|
268
|
+
* does NOT clamp the popup to the anchor width (a cascader panel is routinely
|
|
269
|
+
* wider), but it keeps `group/combobox-content`, which `CascaderEmpty` needs. */
|
|
270
|
+
declare function CascaderContent({ className, side, sideOffset, align, alignOffset, anchor, collisionBoundary, collisionPadding, sticky, positionMethod, container, ref, ...props }: CascaderContentProps): React.JSX.Element;
|
|
271
|
+
export type CascaderPanelProps = useRender.ComponentProps<'div'>;
|
|
272
|
+
/**
|
|
273
|
+
* The nav + list(s) + footer container, with no positioning of its own: inside
|
|
274
|
+
* `CascaderContent` for the popup case, alone for the embedded one.
|
|
275
|
+
*
|
|
276
|
+
* `min-h-0` and `max-h-full` are load-bearing. A flex child without `min-h-0`
|
|
277
|
+
* refuses to shrink below its content, which is the usual reason a scroll area
|
|
278
|
+
* never scrolls - worst embedded, where no positioner publishes
|
|
279
|
+
* `--available-height`. It also owns the panel's TAB ORDER: the scroll area
|
|
280
|
+
* makes itself a tab stop whenever the level overflows, stranding the footer,
|
|
281
|
+
* and the panel is the only ancestor of both ends of that move in BOTH shapes.
|
|
282
|
+
*/
|
|
283
|
+
declare function CascaderPanel({ className, ...props }: CascaderPanelProps): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
|
|
284
|
+
export interface CascaderListProps extends Omit<ComboboxPrimitive.List.Props, 'style'> {
|
|
285
|
+
/** Applied to the OUTER shell, which owns the height, so an inline
|
|
286
|
+
* `--cascader-max-height` lands where the bound can read it. Narrowed from
|
|
287
|
+
* Base UI's `style`: the shell is a plain `<div>` with no list state. */
|
|
288
|
+
style?: React.CSSProperties;
|
|
289
|
+
/** Caps this level's height; the panel still shrinks to fit. Default 24rem. */
|
|
290
|
+
maxHeight?: number | string;
|
|
291
|
+
}
|
|
292
|
+
/**
|
|
293
|
+
* Scroll container for one level: pattern 3 of the house scroll reference,
|
|
294
|
+
* viewport-bounded popup scroll. The height is `min()` of `--available-height`
|
|
295
|
+
* (the positioner's space between anchor and viewport edge) and `maxHeight`,
|
|
296
|
+
* so neither can be ignored; a fixed pixel cap alone still reserved 288px for
|
|
297
|
+
* a panel opened 200px above the fold and spilled off screen, and wasted room
|
|
298
|
+
* in a tall window. The four classes are shared with `CascaderColumns` and
|
|
299
|
+
* live in `cascader-lib.tsx`.
|
|
300
|
+
*/
|
|
301
|
+
declare function CascaderList({ className, style, maxHeight: maxHeightProp, ...props }: CascaderListProps): React.JSX.Element;
|
|
302
|
+
export interface CascaderEmptyProps extends ComboboxPrimitive.Empty.Props {
|
|
303
|
+
/** @deprecated Ignored: the loading surface no longer draws skeletons. They
|
|
304
|
+
* promised a shape the level might not have and cost a second layout; the
|
|
305
|
+
* progress lives on the branch row instead. Kept so call sites compile. */
|
|
306
|
+
skeletonRows?: number;
|
|
307
|
+
}
|
|
308
|
+
/** The empty, loading and error surface, in ONE element that never unmounts.
|
|
309
|
+
* `Combobox.Empty` renders whenever `filteredItems.length === 0`, as true of a
|
|
310
|
+
* fetching level as of an empty one, so swapping siblings would announce "No
|
|
311
|
+
* results found." over every async level. Swap the CHILDREN. */
|
|
312
|
+
declare function CascaderEmpty({ className, children, skeletonRows, ...props }: CascaderEmptyProps): React.JSX.Element;
|
|
313
|
+
export type CascaderStatusProps = ComboboxPrimitive.Status.Props;
|
|
314
|
+
/**
|
|
315
|
+
* Polite live region for the current level and result count, which drill-down
|
|
316
|
+
* otherwise hides in a visual breadcrumb. Built on `Combobox.Status` for its
|
|
317
|
+
* initial-mutation marker: Safari and VoiceOver need a text change ~200ms
|
|
318
|
+
* after mount before reading a polite region at all.
|
|
319
|
+
*/
|
|
320
|
+
declare function CascaderStatus({ className, children, ...props }: CascaderStatusProps): React.JSX.Element;
|
|
321
|
+
export { Cascader, CascaderTrigger, CascaderChip, CascaderChips, CascaderContent, CascaderPanel, CascaderList, CascaderEmpty, CascaderStatus, };
|
|
322
|
+
/** Re-exported from `cascader-context.tsx`: existing import paths keep
|
|
323
|
+
* working, and the row component avoids an import cycle through this file. */
|
|
324
|
+
export { createCascaderHighlightStore, useCascaderActions, useCascaderHighlight, useCascaderRender, useCascaderState };
|
|
325
|
+
export type { CascaderActionsContextValue, CascaderColumn, CascaderHighlight, CascaderHighlightStore, CascaderItemState, CascaderRenderContextValue, CascaderStateContextValue, };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { DecisionGraphRef, DecisionGraphType } from '@republicroad/seal-editor';
|
|
2
|
+
import { default as React } from 'react';
|
|
3
|
+
export type ShellHeaderProps = {
|
|
4
|
+
/** 注入槽位的图文档(SkinnedDecisionGraph 自动传入;独立使用时由宿主提供) */
|
|
5
|
+
graph?: DecisionGraphType;
|
|
6
|
+
disabled?: boolean;
|
|
7
|
+
/**
|
|
8
|
+
* 决策图引用:ref 对象(`useRef` 产物,内部自动解包为当前句柄)或句柄本身;
|
|
9
|
+
* null = 尚未挂载。
|
|
10
|
+
*/
|
|
11
|
+
graphRef?: DecisionGraphRef | React.RefObject<DecisionGraphRef | null> | null;
|
|
12
|
+
className?: string;
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* 皮肤头部(S005 P3):渲染 activeSkin.layout.header 的 left/right 槽位——
|
|
16
|
+
* 左侧标题/环境标识、右侧状态徽标/操作,均注入 SkinSlotContext。
|
|
17
|
+
* kernel 保持无 header(页面骨架属宿主,规格稿 §10-3 宿主裁决);
|
|
18
|
+
* 无槽位时返回 null,宿主页面层头部不受影响。
|
|
19
|
+
*/
|
|
20
|
+
export declare const ShellHeader: React.FC<ShellHeaderProps>;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { DecisionGraphProps, DecisionGraphRef } from '@republicroad/seal-editor';
|
|
2
|
+
import { default as React } from 'react';
|
|
3
|
+
import { SimulateHandler } from '../shell/types';
|
|
4
|
+
export type SkinnedDecisionGraphProps = DecisionGraphProps & {
|
|
5
|
+
/**
|
|
6
|
+
* 传入后自动注册左侧栏 simulator 面板(kernel GraphSimulator:输入 JSON →
|
|
7
|
+
* Run → 画布命中高亮 + Output/Trace),onRun 经由此 handler 调执行引擎。
|
|
8
|
+
* 不传则与直接渲染 `<DecisionGraph>` 行为完全一致。
|
|
9
|
+
*/
|
|
10
|
+
simulateHandler?: SimulateHandler;
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* 皮肤感知的 DecisionGraph(S005 P1):读取 activeSkin.layout 把工具栏槽位
|
|
14
|
+
* 映射为 kernel `toolbarItems`(追加在宿主自有项之后),其余 props 全透传。
|
|
15
|
+
*
|
|
16
|
+
* - 无皮肤 / 皮肤无 layout → 与直接渲染 `<DecisionGraph>` 行为完全一致
|
|
17
|
+
* - ctx.graph 随受控 value 更新;graphRef 惰性挂载(挂载后首次重渲染时注入)
|
|
18
|
+
*/
|
|
19
|
+
export declare const SkinnedDecisionGraph: React.ForwardRefExoticComponent<SkinnedDecisionGraphProps & React.RefAttributes<DecisionGraphRef>>;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { AlertDialog as AlertDialogPrimitive } from '@base-ui/react/alert-dialog';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
declare const AlertDialog: typeof AlertDialogPrimitive.Root;
|
|
4
|
+
declare const AlertDialogTrigger: AlertDialogPrimitive.Trigger;
|
|
5
|
+
declare const AlertDialogPortal: React.ForwardRefExoticComponent<Omit<import('@base-ui/react').AlertDialogPortalProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
6
|
+
declare const AlertDialogOverlay: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').AlertDialogBackdropProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
7
|
+
declare const AlertDialogContent: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').AlertDialogPopupProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
8
|
+
declare const AlertDialogHeader: {
|
|
9
|
+
({ className, ...props }: React.HTMLAttributes<HTMLDivElement>): React.JSX.Element;
|
|
10
|
+
displayName: string;
|
|
11
|
+
};
|
|
12
|
+
declare const AlertDialogFooter: {
|
|
13
|
+
({ className, ...props }: React.HTMLAttributes<HTMLDivElement>): React.JSX.Element;
|
|
14
|
+
displayName: string;
|
|
15
|
+
};
|
|
16
|
+
declare const AlertDialogTitle: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').AlertDialogTitleProps, "ref"> & React.RefAttributes<HTMLHeadingElement>, "ref"> & React.RefAttributes<HTMLHeadingElement>>;
|
|
17
|
+
declare const AlertDialogDescription: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').AlertDialogDescriptionProps, "ref"> & React.RefAttributes<HTMLParagraphElement>, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
|
|
18
|
+
declare const AlertDialogAction: React.ForwardRefExoticComponent<Omit<import('../../components/ui/button').ButtonProps & React.RefAttributes<HTMLElement>, "ref"> & React.RefAttributes<HTMLElement>>;
|
|
19
|
+
declare const AlertDialogCancel: React.ForwardRefExoticComponent<Omit<import('../../components/ui/button').ButtonProps & React.RefAttributes<HTMLElement>, "ref"> & React.RefAttributes<HTMLElement>>;
|
|
20
|
+
export { AlertDialog, AlertDialogPortal, AlertDialogOverlay, AlertDialogTrigger, AlertDialogContent, AlertDialogHeader, AlertDialogFooter, AlertDialogTitle, AlertDialogDescription, AlertDialogAction, AlertDialogCancel, };
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
declare const Avatar: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').AvatarRootProps, "ref"> & React.RefAttributes<HTMLSpanElement>, "ref"> & React.RefAttributes<HTMLSpanElement>>;
|
|
3
|
+
declare const AvatarImage: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').AvatarImageProps, "ref"> & React.RefAttributes<HTMLImageElement>, "ref"> & React.RefAttributes<HTMLImageElement>>;
|
|
4
|
+
declare const AvatarFallback: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').AvatarFallbackProps, "ref"> & React.RefAttributes<HTMLSpanElement>, "ref"> & React.RefAttributes<HTMLSpanElement>>;
|
|
5
|
+
export { Avatar, AvatarImage, AvatarFallback };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { VariantProps } from 'class-variance-authority';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
declare const badgeVariants: (props?: ({
|
|
4
|
+
variant?: "default" | "destructive" | "outline" | "secondary" | null | undefined;
|
|
5
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
6
|
+
export interface BadgeProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof badgeVariants> {
|
|
7
|
+
}
|
|
8
|
+
declare function Badge({ className, variant, ...props }: BadgeProps): React.JSX.Element;
|
|
9
|
+
export { Badge, badgeVariants };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Button as ButtonPrimitive } from '@base-ui/react/button';
|
|
2
|
+
import { VariantProps } from 'class-variance-authority';
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
declare const buttonVariants: (props?: ({
|
|
5
|
+
variant?: "default" | "link" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
|
|
6
|
+
size?: "default" | "icon" | "sm" | "lg" | null | undefined;
|
|
7
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
8
|
+
export interface ButtonProps extends React.ComponentPropsWithoutRef<typeof ButtonPrimitive>, VariantProps<typeof buttonVariants> {
|
|
9
|
+
}
|
|
10
|
+
declare const Button: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<HTMLElement>>;
|
|
11
|
+
export { Button, buttonVariants };
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Menu as MenuPrimitive } from '@base-ui/react/menu';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
declare const DropdownMenu: <Payload>(props: MenuPrimitive.Root.Props<Payload>) => React.JSX.Element;
|
|
4
|
+
declare const DropdownMenuTrigger: MenuPrimitive.Trigger;
|
|
5
|
+
declare const DropdownMenuGroup: React.ForwardRefExoticComponent<Omit<import('@base-ui/react').ContextMenuGroupProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
6
|
+
declare const DropdownMenuPortal: React.ForwardRefExoticComponent<Omit<import('@base-ui/react').ContextMenuPortalProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
7
|
+
declare const DropdownMenuSub: typeof MenuPrimitive.SubmenuRoot;
|
|
8
|
+
declare const DropdownMenuRadioGroup: React.NamedExoticComponent<Omit<import('@base-ui/react').ContextMenuRadioGroupProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
9
|
+
declare const DropdownMenuSubTrigger: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').ContextMenuSubmenuTriggerProps, "ref"> & React.RefAttributes<HTMLElement>, "ref"> & {
|
|
10
|
+
inset?: boolean;
|
|
11
|
+
} & React.RefAttributes<HTMLElement>>;
|
|
12
|
+
declare const DropdownMenuSubContent: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').ContextMenuPopupProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & Pick<import('@base-ui/react').MenuPositionerProps, "side" | "sideOffset" | "align" | "alignOffset"> & React.RefAttributes<HTMLDivElement>>;
|
|
13
|
+
declare const DropdownMenuContent: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').ContextMenuPopupProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & Pick<import('@base-ui/react').MenuPositionerProps, "side" | "sideOffset" | "align" | "alignOffset"> & React.RefAttributes<HTMLDivElement>>;
|
|
14
|
+
declare const DropdownMenuItem: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').ContextMenuItemProps, "ref"> & React.RefAttributes<HTMLElement>, "ref"> & {
|
|
15
|
+
inset?: boolean;
|
|
16
|
+
} & React.RefAttributes<HTMLElement>>;
|
|
17
|
+
declare const DropdownMenuCheckboxItem: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').ContextMenuCheckboxItemProps, "ref"> & React.RefAttributes<HTMLElement>, "ref"> & React.RefAttributes<HTMLElement>>;
|
|
18
|
+
declare const DropdownMenuRadioItem: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').ContextMenuRadioItemProps, "ref"> & React.RefAttributes<HTMLElement>, "ref"> & React.RefAttributes<HTMLElement>>;
|
|
19
|
+
declare const DropdownMenuLabel: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').ContextMenuGroupLabelProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & {
|
|
20
|
+
inset?: boolean;
|
|
21
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
22
|
+
declare const DropdownMenuSeparator: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').SeparatorProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
23
|
+
declare const DropdownMenuShortcut: {
|
|
24
|
+
({ className, ...props }: React.HTMLAttributes<HTMLSpanElement>): React.JSX.Element;
|
|
25
|
+
displayName: string;
|
|
26
|
+
};
|
|
27
|
+
export { DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuItem, DropdownMenuCheckboxItem, DropdownMenuRadioItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuGroup, DropdownMenuPortal, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuRadioGroup, };
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { VariantProps } from 'class-variance-authority';
|
|
2
|
+
import { Label } from '../../components/ui/label';
|
|
3
|
+
declare function FieldSet({ className, ...props }: React.ComponentProps<'fieldset'>): import('react').JSX.Element;
|
|
4
|
+
declare function FieldLegend({ className, variant, ...props }: React.ComponentProps<'legend'> & {
|
|
5
|
+
variant?: 'legend' | 'label';
|
|
6
|
+
}): import('react').JSX.Element;
|
|
7
|
+
declare function FieldGroup({ className, ...props }: React.ComponentProps<'div'>): import('react').JSX.Element;
|
|
8
|
+
declare const fieldVariants: (props?: ({
|
|
9
|
+
orientation?: "horizontal" | "vertical" | "responsive" | null | undefined;
|
|
10
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
11
|
+
declare function Field({ className, orientation, ...props }: React.ComponentProps<'div'> & VariantProps<typeof fieldVariants>): import('react').JSX.Element;
|
|
12
|
+
declare function FieldContent({ className, ...props }: React.ComponentProps<'div'>): import('react').JSX.Element;
|
|
13
|
+
declare function FieldLabel({ className, ...props }: React.ComponentProps<typeof Label>): import('react').JSX.Element;
|
|
14
|
+
declare function FieldTitle({ className, ...props }: React.ComponentProps<'div'>): import('react').JSX.Element;
|
|
15
|
+
declare function FieldDescription({ className, ...props }: React.ComponentProps<'p'>): import('react').JSX.Element;
|
|
16
|
+
declare function FieldSeparator({ children, className, ...props }: React.ComponentProps<'div'> & {
|
|
17
|
+
children?: React.ReactNode;
|
|
18
|
+
}): import('react').JSX.Element;
|
|
19
|
+
declare function FieldError({ className, children, errors, ...props }: React.ComponentProps<'div'> & {
|
|
20
|
+
errors?: Array<{
|
|
21
|
+
message?: string;
|
|
22
|
+
} | undefined>;
|
|
23
|
+
}): import('react').JSX.Element | null;
|
|
24
|
+
export { Field, FieldLabel, FieldDescription, FieldError, FieldGroup, FieldLegend, FieldSeparator, FieldSet, FieldContent, FieldTitle, };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { VariantProps } from 'class-variance-authority';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
declare const Label: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>, "ref"> & VariantProps<(props?: import('class-variance-authority/types').ClassProp | undefined) => string> & React.RefAttributes<HTMLLabelElement>>;
|
|
4
|
+
export { Label };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
declare const ScrollArea: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').ScrollAreaRootProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
3
|
+
declare const ScrollBar: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').ScrollAreaScrollbarProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
4
|
+
export { ScrollArea, ScrollBar };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Select as SelectPrimitive } from '@base-ui/react/select';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
declare const Select: typeof SelectPrimitive.Root;
|
|
4
|
+
declare const SelectGroup: React.ForwardRefExoticComponent<Omit<import('@base-ui/react').SelectGroupProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
5
|
+
declare const SelectValue: React.ForwardRefExoticComponent<Omit<import('@base-ui/react').SelectValueProps, "ref"> & React.RefAttributes<HTMLSpanElement>>;
|
|
6
|
+
declare const SelectTrigger: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').SelectTriggerProps, "ref"> & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
|
|
7
|
+
declare const SelectScrollUpButton: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').SelectScrollUpArrowProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
8
|
+
declare const SelectScrollDownButton: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').SelectScrollDownArrowProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
9
|
+
declare const SelectContent: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').SelectPopupProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & Pick<import('@base-ui/react').SelectPositionerProps, "side" | "sideOffset" | "align" | "alignOffset" | "alignItemWithTrigger"> & React.RefAttributes<HTMLDivElement>>;
|
|
10
|
+
declare const SelectLabel: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').SelectGroupLabelProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
11
|
+
declare const SelectItem: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').SelectItemProps, "ref"> & React.RefAttributes<HTMLElement>, "ref"> & React.RefAttributes<HTMLElement>>;
|
|
12
|
+
declare const SelectSeparator: React.ForwardRefExoticComponent<Omit<import('@base-ui/react').SelectSeparatorProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
13
|
+
export { Select, SelectGroup, SelectValue, SelectTrigger, SelectContent, SelectLabel, SelectItem, SelectSeparator, SelectScrollUpButton, SelectScrollDownButton, };
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Dialog as DialogPrimitive } from '@base-ui/react/dialog';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
declare const Sheet: <Payload>(props: DialogPrimitive.Root.Props<Payload>) => React.JSX.Element;
|
|
4
|
+
declare const SheetTrigger: DialogPrimitive.Trigger;
|
|
5
|
+
declare const SheetClose: React.ForwardRefExoticComponent<Omit<import('@base-ui/react').AlertDialogCloseProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
|
|
6
|
+
declare const SheetPortal: React.ForwardRefExoticComponent<Omit<import('@base-ui/react').AlertDialogPortalProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
7
|
+
declare const SheetOverlay: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').AlertDialogBackdropProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
8
|
+
type SheetSide = 'top' | 'bottom' | 'left' | 'right';
|
|
9
|
+
interface SheetContentProps extends React.ComponentPropsWithoutRef<typeof DialogPrimitive.Popup> {
|
|
10
|
+
side?: SheetSide;
|
|
11
|
+
}
|
|
12
|
+
declare const SheetContent: React.ForwardRefExoticComponent<SheetContentProps & React.RefAttributes<HTMLDivElement>>;
|
|
13
|
+
declare const SheetHeader: {
|
|
14
|
+
({ className, ...props }: React.HTMLAttributes<HTMLDivElement>): React.JSX.Element;
|
|
15
|
+
displayName: string;
|
|
16
|
+
};
|
|
17
|
+
declare const SheetFooter: {
|
|
18
|
+
({ className, ...props }: React.HTMLAttributes<HTMLDivElement>): React.JSX.Element;
|
|
19
|
+
displayName: string;
|
|
20
|
+
};
|
|
21
|
+
declare const SheetTitle: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').AlertDialogTitleProps, "ref"> & React.RefAttributes<HTMLHeadingElement>, "ref"> & React.RefAttributes<HTMLHeadingElement>>;
|
|
22
|
+
declare const SheetDescription: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').AlertDialogDescriptionProps, "ref"> & React.RefAttributes<HTMLParagraphElement>, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
|
|
23
|
+
export { Sheet, SheetPortal, SheetOverlay, SheetTrigger, SheetClose, SheetContent, SheetHeader, SheetFooter, SheetTitle, SheetDescription, type SheetSide, };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
declare const Tabs: React.ForwardRefExoticComponent<Omit<import('@base-ui/react').TabsRootProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
3
|
+
declare const TabsList: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').TabsListProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
4
|
+
declare const TabsTrigger: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').TabsTabProps, "ref"> & React.RefAttributes<HTMLElement>, "ref"> & React.RefAttributes<HTMLElement>>;
|
|
5
|
+
declare const TabsContent: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').TabsPanelProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
6
|
+
export { Tabs, TabsList, TabsTrigger, TabsContent };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Toggle as TogglePrimitive } from '@base-ui/react/toggle';
|
|
2
|
+
import { ToggleGroup as ToggleGroupPrimitive } from '@base-ui/react/toggle-group';
|
|
3
|
+
import { VariantProps } from 'class-variance-authority';
|
|
4
|
+
import * as React from 'react';
|
|
5
|
+
declare const ToggleGroup: React.ForwardRefExoticComponent<Omit<ToggleGroupPrimitive.Props<string> & VariantProps<(props?: ({
|
|
6
|
+
variant?: "default" | "outline" | null | undefined;
|
|
7
|
+
size?: "default" | "sm" | "lg" | null | undefined;
|
|
8
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
9
|
+
declare const ToggleGroupItem: React.ForwardRefExoticComponent<Omit<TogglePrimitive.Props<string> & VariantProps<(props?: ({
|
|
10
|
+
variant?: "default" | "outline" | null | undefined;
|
|
11
|
+
size?: "default" | "sm" | "lg" | null | undefined;
|
|
12
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
|
|
13
|
+
export { ToggleGroup, ToggleGroupItem };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Toggle as TogglePrimitive } from '@base-ui/react/toggle';
|
|
2
|
+
import { VariantProps } from 'class-variance-authority';
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
declare const toggleVariants: (props?: ({
|
|
5
|
+
variant?: "default" | "outline" | null | undefined;
|
|
6
|
+
size?: "default" | "sm" | "lg" | null | undefined;
|
|
7
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
8
|
+
declare const Toggle: React.ForwardRefExoticComponent<Omit<TogglePrimitive.Props<string> & VariantProps<(props?: ({
|
|
9
|
+
variant?: "default" | "outline" | null | undefined;
|
|
10
|
+
size?: "default" | "sm" | "lg" | null | undefined;
|
|
11
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
|
|
12
|
+
export { Toggle, toggleVariants };
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Tooltip as TooltipPrimitive } from '@base-ui/react/tooltip';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
declare const TooltipProvider: React.FC<import('@base-ui/react').TooltipProviderProps>;
|
|
4
|
+
declare const Tooltip: <Payload>(props: TooltipPrimitive.Root.Props<Payload>) => React.JSX.Element;
|
|
5
|
+
declare const TooltipTrigger: TooltipPrimitive.Trigger;
|
|
6
|
+
declare const TooltipContent: React.ForwardRefExoticComponent<Omit<Omit<import('@base-ui/react').TooltipPopupProps, "ref"> & React.RefAttributes<HTMLDivElement>, "ref"> & Pick<import('@base-ui/react').TooltipPositionerProps, "side" | "sideOffset" | "align" | "alignOffset"> & React.RefAttributes<HTMLDivElement>>;
|
|
7
|
+
export { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|