@petrarca/sonnet-ui 0.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.md +190 -0
- package/dist/index.d.ts +989 -0
- package/dist/index.js +5016 -0
- package/dist/index.js.map +1 -0
- package/dist/json-editor/index.d.ts +51 -0
- package/dist/json-editor/index.js +131 -0
- package/dist/json-editor/index.js.map +1 -0
- package/package.json +70 -0
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,989 @@
|
|
|
1
|
+
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
2
|
+
import * as React$1 from 'react';
|
|
3
|
+
import React__default from 'react';
|
|
4
|
+
import { VariantProps } from 'class-variance-authority';
|
|
5
|
+
import * as AvatarPrimitive from '@radix-ui/react-avatar';
|
|
6
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
7
|
+
import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
|
|
8
|
+
import * as CollapsiblePrimitive from '@radix-ui/react-collapsible';
|
|
9
|
+
import * as DialogPrimitive from '@radix-ui/react-dialog';
|
|
10
|
+
import { DialogProps } from '@radix-ui/react-dialog';
|
|
11
|
+
import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
|
|
12
|
+
import * as LabelPrimitive from '@radix-ui/react-label';
|
|
13
|
+
import * as PopoverPrimitive from '@radix-ui/react-popover';
|
|
14
|
+
import * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area';
|
|
15
|
+
import * as SeparatorPrimitive from '@radix-ui/react-separator';
|
|
16
|
+
import * as TabsPrimitive from '@radix-ui/react-tabs';
|
|
17
|
+
import * as TooltipPrimitive from '@radix-ui/react-tooltip';
|
|
18
|
+
import { RowData, PaginationState, OnChangeFn } from '@tanstack/react-table';
|
|
19
|
+
export { PaginationState } from '@tanstack/react-table';
|
|
20
|
+
import { PageResult } from '@petrarca/sonnet-core';
|
|
21
|
+
import { UISchema, JsonSchemaProperty, JsonSchema } from '@petrarca/sonnet-core/schema';
|
|
22
|
+
import { EntitySelectMode } from '@petrarca/sonnet-core/hooks';
|
|
23
|
+
import { EntityOptionFetcher, EntityOption } from '@petrarca/sonnet-core/entityOptions';
|
|
24
|
+
import { FilterExpr } from '@petrarca/sonnet-core/search';
|
|
25
|
+
|
|
26
|
+
declare const Alert: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLDivElement> & VariantProps<(props?: ({
|
|
27
|
+
variant?: "default" | "destructive" | null | undefined;
|
|
28
|
+
} & class_variance_authority_types.ClassProp) | undefined) => string> & React$1.RefAttributes<HTMLDivElement>>;
|
|
29
|
+
declare const AlertTitle: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLHeadingElement> & React$1.RefAttributes<HTMLParagraphElement>>;
|
|
30
|
+
declare const AlertDescription: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLParagraphElement> & React$1.RefAttributes<HTMLParagraphElement>>;
|
|
31
|
+
|
|
32
|
+
declare const Avatar: React$1.ForwardRefExoticComponent<Omit<AvatarPrimitive.AvatarProps & React$1.RefAttributes<HTMLSpanElement>, "ref"> & React$1.RefAttributes<HTMLSpanElement>>;
|
|
33
|
+
declare const AvatarImage: React$1.ForwardRefExoticComponent<Omit<AvatarPrimitive.AvatarImageProps & React$1.RefAttributes<HTMLImageElement>, "ref"> & React$1.RefAttributes<HTMLImageElement>>;
|
|
34
|
+
declare const AvatarFallback: React$1.ForwardRefExoticComponent<Omit<AvatarPrimitive.AvatarFallbackProps & React$1.RefAttributes<HTMLSpanElement>, "ref"> & React$1.RefAttributes<HTMLSpanElement>>;
|
|
35
|
+
|
|
36
|
+
declare const badgeVariants: (props?: ({
|
|
37
|
+
variant?: "default" | "destructive" | "secondary" | "outline" | null | undefined;
|
|
38
|
+
badgeColor?: "grape" | "blue" | "green" | "red" | "orange" | "yellow" | "teal" | "cyan" | "pink" | "indigo" | "violet" | null | undefined;
|
|
39
|
+
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
40
|
+
interface BadgeProps extends React$1.HTMLAttributes<HTMLDivElement>, VariantProps<typeof badgeVariants> {
|
|
41
|
+
}
|
|
42
|
+
declare function Badge({ className, variant, badgeColor, ...props }: BadgeProps): react_jsx_runtime.JSX.Element;
|
|
43
|
+
|
|
44
|
+
declare const buttonVariants: (props?: ({
|
|
45
|
+
variant?: "default" | "destructive" | "link" | "secondary" | "outline" | "ghost" | null | undefined;
|
|
46
|
+
size?: "default" | "sm" | "lg" | "icon" | "compact" | null | undefined;
|
|
47
|
+
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
48
|
+
interface ButtonProps$1 extends React$1.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
|
|
49
|
+
asChild?: boolean;
|
|
50
|
+
}
|
|
51
|
+
declare const Button: React$1.ForwardRefExoticComponent<ButtonProps$1 & React$1.RefAttributes<HTMLButtonElement>>;
|
|
52
|
+
|
|
53
|
+
declare const Card: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLDivElement> & React$1.RefAttributes<HTMLDivElement>>;
|
|
54
|
+
declare const CardHeader: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLDivElement> & React$1.RefAttributes<HTMLDivElement>>;
|
|
55
|
+
declare const CardTitle: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLDivElement> & React$1.RefAttributes<HTMLDivElement>>;
|
|
56
|
+
declare const CardDescription: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLDivElement> & React$1.RefAttributes<HTMLDivElement>>;
|
|
57
|
+
declare const CardContent: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLDivElement> & React$1.RefAttributes<HTMLDivElement>>;
|
|
58
|
+
declare const CardFooter: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLDivElement> & React$1.RefAttributes<HTMLDivElement>>;
|
|
59
|
+
|
|
60
|
+
declare const Checkbox: React$1.ForwardRefExoticComponent<Omit<CheckboxPrimitive.CheckboxProps & React$1.RefAttributes<HTMLButtonElement>, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
|
|
61
|
+
|
|
62
|
+
declare const Collapsible: React$1.ForwardRefExoticComponent<CollapsiblePrimitive.CollapsibleProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
63
|
+
declare const CollapsibleTrigger: React$1.ForwardRefExoticComponent<CollapsiblePrimitive.CollapsibleTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
64
|
+
declare const CollapsibleContent: React$1.ForwardRefExoticComponent<CollapsiblePrimitive.CollapsibleContentProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
65
|
+
|
|
66
|
+
declare const Command: React$1.ForwardRefExoticComponent<Omit<{
|
|
67
|
+
children?: React$1.ReactNode;
|
|
68
|
+
} & Pick<Pick<React$1.DetailedHTMLProps<React$1.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React$1.HTMLAttributes<HTMLDivElement> | "key"> & {
|
|
69
|
+
ref?: React$1.Ref<HTMLDivElement>;
|
|
70
|
+
} & {
|
|
71
|
+
asChild?: boolean;
|
|
72
|
+
}, keyof React$1.HTMLAttributes<HTMLDivElement> | "key" | "asChild"> & {
|
|
73
|
+
label?: string;
|
|
74
|
+
shouldFilter?: boolean;
|
|
75
|
+
filter?: (value: string, search: string, keywords?: string[]) => number;
|
|
76
|
+
defaultValue?: string;
|
|
77
|
+
value?: string;
|
|
78
|
+
onValueChange?: (value: string) => void;
|
|
79
|
+
loop?: boolean;
|
|
80
|
+
disablePointerSelection?: boolean;
|
|
81
|
+
vimBindings?: boolean;
|
|
82
|
+
} & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
83
|
+
declare const CommandDialog: ({ children, ...props }: DialogProps) => react_jsx_runtime.JSX.Element;
|
|
84
|
+
declare const CommandInput: React$1.ForwardRefExoticComponent<Omit<Omit<Pick<Pick<React$1.DetailedHTMLProps<React$1.InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, "key" | keyof React$1.InputHTMLAttributes<HTMLInputElement>> & {
|
|
85
|
+
ref?: React$1.Ref<HTMLInputElement>;
|
|
86
|
+
} & {
|
|
87
|
+
asChild?: boolean;
|
|
88
|
+
}, "key" | "asChild" | keyof React$1.InputHTMLAttributes<HTMLInputElement>>, "onChange" | "type" | "value"> & {
|
|
89
|
+
value?: string;
|
|
90
|
+
onValueChange?: (search: string) => void;
|
|
91
|
+
} & React$1.RefAttributes<HTMLInputElement>, "ref"> & React$1.RefAttributes<HTMLInputElement>>;
|
|
92
|
+
declare const CommandList: React$1.ForwardRefExoticComponent<Omit<{
|
|
93
|
+
children?: React$1.ReactNode;
|
|
94
|
+
} & Pick<Pick<React$1.DetailedHTMLProps<React$1.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React$1.HTMLAttributes<HTMLDivElement> | "key"> & {
|
|
95
|
+
ref?: React$1.Ref<HTMLDivElement>;
|
|
96
|
+
} & {
|
|
97
|
+
asChild?: boolean;
|
|
98
|
+
}, keyof React$1.HTMLAttributes<HTMLDivElement> | "key" | "asChild"> & {
|
|
99
|
+
label?: string;
|
|
100
|
+
} & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
101
|
+
declare const CommandEmpty: React$1.ForwardRefExoticComponent<Omit<{
|
|
102
|
+
children?: React$1.ReactNode;
|
|
103
|
+
} & Pick<Pick<React$1.DetailedHTMLProps<React$1.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React$1.HTMLAttributes<HTMLDivElement> | "key"> & {
|
|
104
|
+
ref?: React$1.Ref<HTMLDivElement>;
|
|
105
|
+
} & {
|
|
106
|
+
asChild?: boolean;
|
|
107
|
+
}, keyof React$1.HTMLAttributes<HTMLDivElement> | "key" | "asChild"> & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
108
|
+
declare const CommandGroup: React$1.ForwardRefExoticComponent<Omit<{
|
|
109
|
+
children?: React$1.ReactNode;
|
|
110
|
+
} & Omit<Pick<Pick<React$1.DetailedHTMLProps<React$1.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React$1.HTMLAttributes<HTMLDivElement> | "key"> & {
|
|
111
|
+
ref?: React$1.Ref<HTMLDivElement>;
|
|
112
|
+
} & {
|
|
113
|
+
asChild?: boolean;
|
|
114
|
+
}, keyof React$1.HTMLAttributes<HTMLDivElement> | "key" | "asChild">, "heading" | "value"> & {
|
|
115
|
+
heading?: React$1.ReactNode;
|
|
116
|
+
value?: string;
|
|
117
|
+
forceMount?: boolean;
|
|
118
|
+
} & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
119
|
+
declare const CommandSeparator: React$1.ForwardRefExoticComponent<Omit<Pick<Pick<React$1.DetailedHTMLProps<React$1.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React$1.HTMLAttributes<HTMLDivElement> | "key"> & {
|
|
120
|
+
ref?: React$1.Ref<HTMLDivElement>;
|
|
121
|
+
} & {
|
|
122
|
+
asChild?: boolean;
|
|
123
|
+
}, keyof React$1.HTMLAttributes<HTMLDivElement> | "key" | "asChild"> & {
|
|
124
|
+
alwaysRender?: boolean;
|
|
125
|
+
} & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
126
|
+
declare const CommandItem: React$1.ForwardRefExoticComponent<Omit<{
|
|
127
|
+
children?: React$1.ReactNode;
|
|
128
|
+
} & Omit<Pick<Pick<React$1.DetailedHTMLProps<React$1.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React$1.HTMLAttributes<HTMLDivElement> | "key"> & {
|
|
129
|
+
ref?: React$1.Ref<HTMLDivElement>;
|
|
130
|
+
} & {
|
|
131
|
+
asChild?: boolean;
|
|
132
|
+
}, keyof React$1.HTMLAttributes<HTMLDivElement> | "key" | "asChild">, "onSelect" | "disabled" | "value"> & {
|
|
133
|
+
disabled?: boolean;
|
|
134
|
+
onSelect?: (value: string) => void;
|
|
135
|
+
value?: string;
|
|
136
|
+
keywords?: string[];
|
|
137
|
+
forceMount?: boolean;
|
|
138
|
+
} & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
139
|
+
declare const CommandShortcut: {
|
|
140
|
+
({ className, ...props }: React$1.HTMLAttributes<HTMLSpanElement>): react_jsx_runtime.JSX.Element;
|
|
141
|
+
displayName: string;
|
|
142
|
+
};
|
|
143
|
+
|
|
144
|
+
declare const Dialog: React$1.FC<DialogPrimitive.DialogProps>;
|
|
145
|
+
declare const DialogTrigger: React$1.ForwardRefExoticComponent<DialogPrimitive.DialogTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
146
|
+
declare const DialogPortal: React$1.FC<DialogPrimitive.DialogPortalProps>;
|
|
147
|
+
declare const DialogClose: React$1.ForwardRefExoticComponent<DialogPrimitive.DialogCloseProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
148
|
+
declare const DialogOverlay: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogOverlayProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
149
|
+
declare const DialogContent: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
150
|
+
declare const DialogHeader: {
|
|
151
|
+
({ className, ...props }: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime.JSX.Element;
|
|
152
|
+
displayName: string;
|
|
153
|
+
};
|
|
154
|
+
declare const DialogFooter: {
|
|
155
|
+
({ className, ...props }: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime.JSX.Element;
|
|
156
|
+
displayName: string;
|
|
157
|
+
};
|
|
158
|
+
declare const DialogTitle: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogTitleProps & React$1.RefAttributes<HTMLHeadingElement>, "ref"> & React$1.RefAttributes<HTMLHeadingElement>>;
|
|
159
|
+
declare const DialogDescription: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogDescriptionProps & React$1.RefAttributes<HTMLParagraphElement>, "ref"> & React$1.RefAttributes<HTMLParagraphElement>>;
|
|
160
|
+
|
|
161
|
+
declare const DropdownMenu: React$1.FC<DropdownMenuPrimitive.DropdownMenuProps>;
|
|
162
|
+
declare const DropdownMenuTrigger: React$1.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
163
|
+
declare const DropdownMenuGroup: React$1.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuGroupProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
164
|
+
declare const DropdownMenuPortal: React$1.FC<DropdownMenuPrimitive.DropdownMenuPortalProps>;
|
|
165
|
+
declare const DropdownMenuSub: React$1.FC<DropdownMenuPrimitive.DropdownMenuSubProps>;
|
|
166
|
+
declare const DropdownMenuRadioGroup: React$1.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuRadioGroupProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
167
|
+
declare const DropdownMenuSubTrigger: React$1.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubTriggerProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & {
|
|
168
|
+
inset?: boolean;
|
|
169
|
+
} & React$1.RefAttributes<HTMLDivElement>>;
|
|
170
|
+
declare const DropdownMenuSubContent: React$1.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
171
|
+
declare const DropdownMenuContent: React$1.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
172
|
+
declare const DropdownMenuItem: React$1.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuItemProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & {
|
|
173
|
+
inset?: boolean;
|
|
174
|
+
} & React$1.RefAttributes<HTMLDivElement>>;
|
|
175
|
+
declare const DropdownMenuCheckboxItem: React$1.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuCheckboxItemProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
176
|
+
declare const DropdownMenuRadioItem: React$1.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuRadioItemProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
177
|
+
declare const DropdownMenuLabel: React$1.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuLabelProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & {
|
|
178
|
+
inset?: boolean;
|
|
179
|
+
} & React$1.RefAttributes<HTMLDivElement>>;
|
|
180
|
+
declare const DropdownMenuSeparator: React$1.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSeparatorProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
181
|
+
declare const DropdownMenuShortcut: {
|
|
182
|
+
({ className, ...props }: React$1.HTMLAttributes<HTMLSpanElement>): react_jsx_runtime.JSX.Element;
|
|
183
|
+
displayName: string;
|
|
184
|
+
};
|
|
185
|
+
|
|
186
|
+
declare const Input: React$1.ForwardRefExoticComponent<Omit<React$1.DetailedHTMLProps<React$1.InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, "ref"> & React$1.RefAttributes<HTMLInputElement>>;
|
|
187
|
+
|
|
188
|
+
declare function InputGroup({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
189
|
+
declare const inputGroupAddonVariants: (props?: ({
|
|
190
|
+
align?: "inline-start" | "inline-end" | "block-start" | "block-end" | null | undefined;
|
|
191
|
+
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
192
|
+
declare function InputGroupAddon({ className, align, ...props }: React$1.ComponentProps<"div"> & VariantProps<typeof inputGroupAddonVariants>): react_jsx_runtime.JSX.Element;
|
|
193
|
+
declare function InputGroupText({ className, ...props }: React$1.ComponentProps<"span">): react_jsx_runtime.JSX.Element;
|
|
194
|
+
declare function InputGroupInput({ className, ...props }: React$1.ComponentProps<"input">): react_jsx_runtime.JSX.Element;
|
|
195
|
+
declare function InputGroupTextarea({ className, ...props }: React$1.ComponentProps<"textarea">): react_jsx_runtime.JSX.Element;
|
|
196
|
+
|
|
197
|
+
declare const Label: React$1.ForwardRefExoticComponent<Omit<LabelPrimitive.LabelProps & React$1.RefAttributes<HTMLLabelElement>, "ref"> & VariantProps<(props?: class_variance_authority_types.ClassProp | undefined) => string> & React$1.RefAttributes<HTMLLabelElement>>;
|
|
198
|
+
|
|
199
|
+
declare const Popover: React$1.FC<PopoverPrimitive.PopoverProps>;
|
|
200
|
+
declare const PopoverTrigger: React$1.ForwardRefExoticComponent<PopoverPrimitive.PopoverTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
201
|
+
declare const PopoverContent: React$1.ForwardRefExoticComponent<Omit<PopoverPrimitive.PopoverContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
202
|
+
|
|
203
|
+
declare const ScrollArea: React$1.ForwardRefExoticComponent<Omit<ScrollAreaPrimitive.ScrollAreaProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
204
|
+
declare const ScrollBar: React$1.ForwardRefExoticComponent<Omit<ScrollAreaPrimitive.ScrollAreaScrollbarProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
205
|
+
|
|
206
|
+
declare const Separator: React$1.ForwardRefExoticComponent<Omit<SeparatorPrimitive.SeparatorProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
207
|
+
|
|
208
|
+
declare const Sheet: React$1.FC<DialogPrimitive.DialogProps>;
|
|
209
|
+
declare const SheetTrigger: React$1.ForwardRefExoticComponent<DialogPrimitive.DialogTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
210
|
+
declare const SheetClose: React$1.ForwardRefExoticComponent<DialogPrimitive.DialogCloseProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
211
|
+
declare const SheetOverlay: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogOverlayProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
212
|
+
declare const SheetContent: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & {
|
|
213
|
+
side?: "right" | "left";
|
|
214
|
+
/** CSS length (e.g. "3rem" or "0px") controlling where the panel starts vertically. Internal use — prefer PanelOptions.coverage at the shell API level. */
|
|
215
|
+
offsetTop?: string;
|
|
216
|
+
} & React$1.RefAttributes<HTMLDivElement>>;
|
|
217
|
+
declare const SheetHeader: ({ className, ...props }: React$1.HTMLAttributes<HTMLDivElement>) => react_jsx_runtime.JSX.Element;
|
|
218
|
+
declare const SheetTitle: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogTitleProps & React$1.RefAttributes<HTMLHeadingElement>, "ref"> & React$1.RefAttributes<HTMLHeadingElement>>;
|
|
219
|
+
declare const SheetDescription: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogDescriptionProps & React$1.RefAttributes<HTMLParagraphElement>, "ref"> & React$1.RefAttributes<HTMLParagraphElement>>;
|
|
220
|
+
declare const SheetBody: ({ className, ...props }: React$1.HTMLAttributes<HTMLDivElement>) => react_jsx_runtime.JSX.Element;
|
|
221
|
+
declare const SheetFooter: ({ className, ...props }: React$1.HTMLAttributes<HTMLDivElement>) => react_jsx_runtime.JSX.Element;
|
|
222
|
+
|
|
223
|
+
declare const gapMap$1: {
|
|
224
|
+
readonly 0: "gap-0";
|
|
225
|
+
readonly xs: "gap-1";
|
|
226
|
+
readonly sm: "gap-2";
|
|
227
|
+
readonly md: "gap-4";
|
|
228
|
+
readonly lg: "gap-6";
|
|
229
|
+
readonly xl: "gap-8";
|
|
230
|
+
readonly 2: "gap-0.5";
|
|
231
|
+
readonly 4: "gap-1";
|
|
232
|
+
readonly 6: "gap-1.5";
|
|
233
|
+
readonly 8: "gap-2";
|
|
234
|
+
readonly 24: "gap-6";
|
|
235
|
+
};
|
|
236
|
+
declare const alignMap$1: {
|
|
237
|
+
readonly start: "items-start";
|
|
238
|
+
readonly center: "items-center";
|
|
239
|
+
readonly end: "items-end";
|
|
240
|
+
readonly stretch: "items-stretch";
|
|
241
|
+
readonly "flex-start": "items-start";
|
|
242
|
+
readonly "flex-end": "items-end";
|
|
243
|
+
};
|
|
244
|
+
declare const justifyMap$1: {
|
|
245
|
+
readonly start: "justify-start";
|
|
246
|
+
readonly center: "justify-center";
|
|
247
|
+
readonly end: "justify-end";
|
|
248
|
+
readonly between: "justify-between";
|
|
249
|
+
readonly around: "justify-around";
|
|
250
|
+
readonly "space-between": "justify-between";
|
|
251
|
+
readonly "flex-start": "justify-start";
|
|
252
|
+
readonly "flex-end": "justify-end";
|
|
253
|
+
};
|
|
254
|
+
declare const wrapMap: {
|
|
255
|
+
readonly wrap: "flex-wrap";
|
|
256
|
+
readonly nowrap: "flex-nowrap";
|
|
257
|
+
readonly "wrap-reverse": "flex-wrap-reverse";
|
|
258
|
+
};
|
|
259
|
+
declare const mtMap: Record<string, string>;
|
|
260
|
+
interface SimpleGroupProps {
|
|
261
|
+
children: React$1.ReactNode;
|
|
262
|
+
gap?: keyof typeof gapMap$1;
|
|
263
|
+
align?: keyof typeof alignMap$1;
|
|
264
|
+
justify?: keyof typeof justifyMap$1;
|
|
265
|
+
wrap?: keyof typeof wrapMap;
|
|
266
|
+
grow?: boolean;
|
|
267
|
+
className?: string;
|
|
268
|
+
style?: React$1.CSSProperties;
|
|
269
|
+
mt?: keyof typeof mtMap;
|
|
270
|
+
onClick?: () => void;
|
|
271
|
+
}
|
|
272
|
+
/**
|
|
273
|
+
* SimpleGroup - A horizontal flex container component
|
|
274
|
+
*
|
|
275
|
+
* Replaces Mantine's Group with a simpler Tailwind-based implementation.
|
|
276
|
+
* Defaults to flex-row (horizontal layout).
|
|
277
|
+
*
|
|
278
|
+
* @example
|
|
279
|
+
* <SimpleGroup gap="sm" justify="between">
|
|
280
|
+
* <div>Left item</div>
|
|
281
|
+
* <div>Right item</div>
|
|
282
|
+
* </SimpleGroup>
|
|
283
|
+
*/
|
|
284
|
+
declare function SimpleGroup({ children, gap, align, justify, wrap, grow, className, style, mt, onClick, }: SimpleGroupProps): React$1.ReactElement;
|
|
285
|
+
|
|
286
|
+
declare const gapMap: {
|
|
287
|
+
readonly 0: "gap-0";
|
|
288
|
+
readonly xs: "gap-1";
|
|
289
|
+
readonly sm: "gap-2";
|
|
290
|
+
readonly md: "gap-4";
|
|
291
|
+
readonly lg: "gap-6";
|
|
292
|
+
readonly xl: "gap-8";
|
|
293
|
+
readonly 2: "gap-0.5";
|
|
294
|
+
readonly 4: "gap-1";
|
|
295
|
+
readonly 6: "gap-1.5";
|
|
296
|
+
readonly 8: "gap-2";
|
|
297
|
+
readonly 24: "gap-6";
|
|
298
|
+
};
|
|
299
|
+
declare const alignMap: {
|
|
300
|
+
readonly start: "items-start";
|
|
301
|
+
readonly center: "items-center";
|
|
302
|
+
readonly end: "items-end";
|
|
303
|
+
readonly stretch: "items-stretch";
|
|
304
|
+
};
|
|
305
|
+
declare const justifyMap: {
|
|
306
|
+
readonly start: "justify-start";
|
|
307
|
+
readonly center: "justify-center";
|
|
308
|
+
readonly end: "justify-end";
|
|
309
|
+
readonly between: "justify-between";
|
|
310
|
+
readonly around: "justify-around";
|
|
311
|
+
};
|
|
312
|
+
interface SimpleStackProps {
|
|
313
|
+
children: React$1.ReactNode;
|
|
314
|
+
gap?: keyof typeof gapMap;
|
|
315
|
+
align?: keyof typeof alignMap;
|
|
316
|
+
justify?: keyof typeof justifyMap;
|
|
317
|
+
className?: string;
|
|
318
|
+
style?: React$1.CSSProperties;
|
|
319
|
+
h?: number | string;
|
|
320
|
+
}
|
|
321
|
+
/**
|
|
322
|
+
* SimpleStack - A vertical flex container component
|
|
323
|
+
*
|
|
324
|
+
* Replaces Mantine's Stack with a simpler Tailwind-based implementation.
|
|
325
|
+
* Defaults to flex-col (vertical stacking).
|
|
326
|
+
*
|
|
327
|
+
* @example
|
|
328
|
+
* <SimpleStack gap="md" align="center">
|
|
329
|
+
* <div>Item 1</div>
|
|
330
|
+
* <div>Item 2</div>
|
|
331
|
+
* </SimpleStack>
|
|
332
|
+
*/
|
|
333
|
+
declare function SimpleStack({ children, gap, align, justify, className, style, h, }: SimpleStackProps): React$1.ReactElement;
|
|
334
|
+
|
|
335
|
+
interface SimpleTooltipProps {
|
|
336
|
+
label: React$1.ReactNode;
|
|
337
|
+
children: React$1.ReactElement;
|
|
338
|
+
side?: "top" | "right" | "bottom" | "left";
|
|
339
|
+
align?: "start" | "center" | "end";
|
|
340
|
+
delayDuration?: number;
|
|
341
|
+
sideOffset?: number;
|
|
342
|
+
}
|
|
343
|
+
/**
|
|
344
|
+
* Simplified Tooltip wrapper that matches Mantine's simple API.
|
|
345
|
+
* Usage: <SimpleTooltip label="Click me"><Button>Click</Button></SimpleTooltip>
|
|
346
|
+
*/
|
|
347
|
+
declare function SimpleTooltip({ label, children, side, align, delayDuration, sideOffset, }: SimpleTooltipProps): react_jsx_runtime.JSX.Element;
|
|
348
|
+
|
|
349
|
+
declare function Skeleton({ className, ...props }: React.HTMLAttributes<HTMLDivElement>): react_jsx_runtime.JSX.Element;
|
|
350
|
+
|
|
351
|
+
interface SpinnerProps {
|
|
352
|
+
className?: string;
|
|
353
|
+
size?: "sm" | "md" | "lg";
|
|
354
|
+
}
|
|
355
|
+
/**
|
|
356
|
+
* Simple loading spinner component
|
|
357
|
+
*
|
|
358
|
+
* Replaces Mantine's Loader component
|
|
359
|
+
*
|
|
360
|
+
* @example
|
|
361
|
+
* ```tsx
|
|
362
|
+
* <Spinner />
|
|
363
|
+
* <Spinner size="lg" />
|
|
364
|
+
* <Spinner className="text-blue-500" />
|
|
365
|
+
* ```
|
|
366
|
+
*/
|
|
367
|
+
declare function Spinner({ className, size }: SpinnerProps): react_jsx_runtime.JSX.Element;
|
|
368
|
+
|
|
369
|
+
declare const Tabs: React$1.ForwardRefExoticComponent<TabsPrimitive.TabsProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
370
|
+
interface TabsListProps extends React$1.ComponentPropsWithoutRef<typeof TabsPrimitive.List> {
|
|
371
|
+
/** Alignment of tabs: 'start' (left), 'center', or 'end' (right). Default: 'start' */
|
|
372
|
+
align?: "start" | "center" | "end";
|
|
373
|
+
}
|
|
374
|
+
declare const TabsList: React$1.ForwardRefExoticComponent<TabsListProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
375
|
+
declare const TabsTrigger: React$1.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsTriggerProps & React$1.RefAttributes<HTMLButtonElement>, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
|
|
376
|
+
declare const TabsContent: React$1.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
377
|
+
|
|
378
|
+
declare const Textarea: React$1.ForwardRefExoticComponent<Omit<React$1.DetailedHTMLProps<React$1.TextareaHTMLAttributes<HTMLTextAreaElement>, HTMLTextAreaElement>, "ref"> & React$1.RefAttributes<HTMLTextAreaElement>>;
|
|
379
|
+
|
|
380
|
+
declare const TooltipProvider: React$1.FC<TooltipPrimitive.TooltipProviderProps>;
|
|
381
|
+
declare const Tooltip: React$1.FC<TooltipPrimitive.TooltipProps>;
|
|
382
|
+
declare const TooltipTrigger: React$1.ForwardRefExoticComponent<TooltipPrimitive.TooltipTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
383
|
+
declare const TooltipContent: React$1.ForwardRefExoticComponent<Omit<TooltipPrimitive.TooltipContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
384
|
+
|
|
385
|
+
type Direction = "ltr" | "rtl";
|
|
386
|
+
type Orientation = "horizontal" | "vertical";
|
|
387
|
+
type NavigationDirection = "next" | "prev";
|
|
388
|
+
type ActivationMode = "automatic" | "manual";
|
|
389
|
+
type DataState = "inactive" | "active" | "completed";
|
|
390
|
+
interface DivProps extends React$1.ComponentProps<"div"> {
|
|
391
|
+
asChild?: boolean;
|
|
392
|
+
}
|
|
393
|
+
interface ButtonProps extends React$1.ComponentProps<"button"> {
|
|
394
|
+
asChild?: boolean;
|
|
395
|
+
}
|
|
396
|
+
interface StepState {
|
|
397
|
+
value: string;
|
|
398
|
+
completed: boolean;
|
|
399
|
+
disabled: boolean;
|
|
400
|
+
}
|
|
401
|
+
interface StoreState {
|
|
402
|
+
steps: Map<string, StepState>;
|
|
403
|
+
value: string;
|
|
404
|
+
}
|
|
405
|
+
declare function useStore<T>(selector: (state: StoreState) => T): T;
|
|
406
|
+
interface StepperProps extends DivProps {
|
|
407
|
+
value?: string;
|
|
408
|
+
defaultValue?: string;
|
|
409
|
+
onValueChange?: (value: string) => void;
|
|
410
|
+
onValueComplete?: (value: string, completed: boolean) => void;
|
|
411
|
+
onValueAdd?: (value: string) => void;
|
|
412
|
+
onValueRemove?: (value: string) => void;
|
|
413
|
+
onValidate?: (value: string, direction: NavigationDirection) => boolean | Promise<boolean>;
|
|
414
|
+
activationMode?: ActivationMode;
|
|
415
|
+
dir?: Direction;
|
|
416
|
+
orientation?: Orientation;
|
|
417
|
+
disabled?: boolean;
|
|
418
|
+
loop?: boolean;
|
|
419
|
+
nonInteractive?: boolean;
|
|
420
|
+
}
|
|
421
|
+
declare function Stepper(props: StepperProps): react_jsx_runtime.JSX.Element;
|
|
422
|
+
declare function StepperList(props: DivProps): react_jsx_runtime.JSX.Element;
|
|
423
|
+
interface StepperItemProps extends DivProps {
|
|
424
|
+
value: string;
|
|
425
|
+
completed?: boolean;
|
|
426
|
+
disabled?: boolean;
|
|
427
|
+
}
|
|
428
|
+
declare function StepperItem(props: StepperItemProps): react_jsx_runtime.JSX.Element;
|
|
429
|
+
declare function StepperTrigger(props: ButtonProps): react_jsx_runtime.JSX.Element;
|
|
430
|
+
interface StepperIndicatorProps extends Omit<DivProps, "children"> {
|
|
431
|
+
children?: React$1.ReactNode | ((dataState: DataState) => React$1.ReactNode);
|
|
432
|
+
}
|
|
433
|
+
declare function StepperIndicator(props: StepperIndicatorProps): react_jsx_runtime.JSX.Element;
|
|
434
|
+
interface StepperSeparatorProps extends DivProps {
|
|
435
|
+
forceMount?: boolean;
|
|
436
|
+
}
|
|
437
|
+
declare function StepperSeparator(props: StepperSeparatorProps): react_jsx_runtime.JSX.Element | null;
|
|
438
|
+
interface StepperTitleProps extends React$1.ComponentProps<"span"> {
|
|
439
|
+
asChild?: boolean;
|
|
440
|
+
}
|
|
441
|
+
declare function StepperTitle(props: StepperTitleProps): react_jsx_runtime.JSX.Element;
|
|
442
|
+
interface StepperDescriptionProps extends React$1.ComponentProps<"span"> {
|
|
443
|
+
asChild?: boolean;
|
|
444
|
+
}
|
|
445
|
+
declare function StepperDescription(props: StepperDescriptionProps): react_jsx_runtime.JSX.Element;
|
|
446
|
+
interface StepperContentProps extends DivProps {
|
|
447
|
+
value: string;
|
|
448
|
+
forceMount?: boolean;
|
|
449
|
+
}
|
|
450
|
+
declare function StepperContent(props: StepperContentProps): react_jsx_runtime.JSX.Element | null;
|
|
451
|
+
declare function StepperPrev(props: ButtonProps): react_jsx_runtime.JSX.Element;
|
|
452
|
+
declare function StepperNext(props: ButtonProps): react_jsx_runtime.JSX.Element;
|
|
453
|
+
|
|
454
|
+
/**
|
|
455
|
+
* Type definitions for the schema-driven EntityTable system.
|
|
456
|
+
*
|
|
457
|
+
* Extractable to @petrarca/sonnet-core -- no React, no app-specific imports.
|
|
458
|
+
*/
|
|
459
|
+
|
|
460
|
+
/** Resolved column descriptor after merging schema + UI schema. */
|
|
461
|
+
interface ResolvedColumn {
|
|
462
|
+
/** Property key from schema.properties. */
|
|
463
|
+
key: string;
|
|
464
|
+
/** Column header label (from title, x-ui-column.label, or UI schema label). */
|
|
465
|
+
label: string;
|
|
466
|
+
/** The merged property schema. */
|
|
467
|
+
property: JsonSchemaProperty;
|
|
468
|
+
/** Resolved cell renderer name. */
|
|
469
|
+
cellRenderer: string;
|
|
470
|
+
/** Merged cell renderer options. */
|
|
471
|
+
cellOptions: Record<string, unknown>;
|
|
472
|
+
/** Fixed column width in pixels, if specified. */
|
|
473
|
+
width?: number;
|
|
474
|
+
/** Minimum column width in pixels, if specified. */
|
|
475
|
+
minWidth?: number;
|
|
476
|
+
}
|
|
477
|
+
/** Per-field UI schema entry for table columns. */
|
|
478
|
+
type TableUiSchema = Record<string, UISchema & {
|
|
479
|
+
"x-ui-column"?: NonNullable<JsonSchemaProperty["x-ui-column"]> & {
|
|
480
|
+
label?: string;
|
|
481
|
+
};
|
|
482
|
+
}> & {
|
|
483
|
+
"x-ui-globalOptions"?: {
|
|
484
|
+
sortable?: boolean;
|
|
485
|
+
stickyHeader?: boolean;
|
|
486
|
+
};
|
|
487
|
+
};
|
|
488
|
+
|
|
489
|
+
/**
|
|
490
|
+
* Built-in cell renderer components for schema-driven EntityTable.
|
|
491
|
+
*
|
|
492
|
+
* Each renderer is a React component that receives the raw cell value and
|
|
493
|
+
* the merged cell options from x-ui-cell-options. All renderers are
|
|
494
|
+
* display-only -- stateless, no side effects.
|
|
495
|
+
*
|
|
496
|
+
* Cross-cutting options supported by all built-in renderers:
|
|
497
|
+
* valueKey -- extract a sub-field from an object value before rendering
|
|
498
|
+
* nowrap -- apply whitespace-nowrap to the output element
|
|
499
|
+
*
|
|
500
|
+
* Registry, resolution helpers, and the createRenderer factory live in
|
|
501
|
+
* cellRegistry.ts so this file exports only components (react-refresh
|
|
502
|
+
* requirement).
|
|
503
|
+
*/
|
|
504
|
+
|
|
505
|
+
interface CellRendererProps {
|
|
506
|
+
value: unknown;
|
|
507
|
+
/** Full row record -- available for renderers that need sibling fields. */
|
|
508
|
+
row: Record<string, unknown>;
|
|
509
|
+
options: Record<string, unknown>;
|
|
510
|
+
}
|
|
511
|
+
type CellRenderer = (props: CellRendererProps) => React__default.ReactElement;
|
|
512
|
+
|
|
513
|
+
/**
|
|
514
|
+
* Cell renderer registry, resolution helpers, and the createRenderer factory.
|
|
515
|
+
*
|
|
516
|
+
* Separate from cellRenderers.tsx so that non-component exports
|
|
517
|
+
* (registry object, pure functions, factory) do not violate react-refresh
|
|
518
|
+
* rules.
|
|
519
|
+
*
|
|
520
|
+
* Extractable to @petrarca/sonnet-core (pure logic) /
|
|
521
|
+
* @petrarca/sonnet-ui (registry with React components).
|
|
522
|
+
*/
|
|
523
|
+
|
|
524
|
+
/** Registry mapping renderer names to components. */
|
|
525
|
+
declare const CELL_RENDERERS: Record<string, CellRenderer>;
|
|
526
|
+
/**
|
|
527
|
+
* Factory for creating typed local cell renderers.
|
|
528
|
+
*
|
|
529
|
+
* Local renderer names must start with `x-` to distinguish them from
|
|
530
|
+
* built-in renderers (e.g. `x-audit-actors`, `x-trade-risk`). This
|
|
531
|
+
* follows the same convention as the `x-ui-*` schema extensions.
|
|
532
|
+
* Built-in names like `badge`, `datetime`, `muted` stay clean and
|
|
533
|
+
* unprefixed. A dev-mode warning is logged if the convention is violated.
|
|
534
|
+
*
|
|
535
|
+
* The render function receives the full typed row and the x-ui-cell-options
|
|
536
|
+
* from the schema. This keeps the schema purely declarative (no functions)
|
|
537
|
+
* while giving domain-specific renderers full type safety.
|
|
538
|
+
*
|
|
539
|
+
* For generic table viewers where the row type is not known, omit the
|
|
540
|
+
* type parameter -- TRow defaults to Record<string, unknown> and you
|
|
541
|
+
* inspect the row dynamically using options as hints.
|
|
542
|
+
*
|
|
543
|
+
* @example
|
|
544
|
+
* ```ts
|
|
545
|
+
* import { createRenderer } from "@petrarca/sonnet-ui";
|
|
546
|
+
* import type { AuditLogEntry } from "../schemas";
|
|
547
|
+
*
|
|
548
|
+
* const RENDERERS = {
|
|
549
|
+
* "x-audit-actors": createRenderer<AuditLogEntry>((row, options) => {
|
|
550
|
+
* // row is fully typed, options from x-ui-cell-options in the schema.
|
|
551
|
+
* return <span>{row.actors[0]?.name ?? "--"}</span>;
|
|
552
|
+
* }),
|
|
553
|
+
* };
|
|
554
|
+
*
|
|
555
|
+
* // Schema stays pure data:
|
|
556
|
+
* // actors: { "x-ui-cell": "x-audit-actors" }
|
|
557
|
+
*
|
|
558
|
+
* <EntityTable schema={SCHEMA} renderers={RENDERERS} ... />
|
|
559
|
+
* ```
|
|
560
|
+
*/
|
|
561
|
+
declare function createRenderer<TRow = Record<string, unknown>>(render: (row: TRow, options: Record<string, unknown>) => React__default.ReactNode): CellRenderer;
|
|
562
|
+
|
|
563
|
+
/**
|
|
564
|
+
* EntityTable -- generic paginated table driven by JSON Schema + UI Schema.
|
|
565
|
+
*
|
|
566
|
+
* Column definitions are derived from schema.properties via resolveColumns().
|
|
567
|
+
* Domain-specific cell rendering is handled by passing a local renderer
|
|
568
|
+
* registry via the renderers prop; x-ui-cell names in the schema are
|
|
569
|
+
* resolved against the local registry first, then the global registry.
|
|
570
|
+
*
|
|
571
|
+
* Pagination is opt-in. When pagination + onPaginationChange are provided the
|
|
572
|
+
* table runs in manualPagination mode and renders prev/next controls.
|
|
573
|
+
*
|
|
574
|
+
* Row interaction has two modes controlled by selectionMode:
|
|
575
|
+
*
|
|
576
|
+
* Normal (selectionMode=false, default): click on a row calls onRowClick
|
|
577
|
+
* directly (navigation / edit). No keyboard focus management.
|
|
578
|
+
*
|
|
579
|
+
* Selection (selectionMode=true): checkboxes appear, click toggles
|
|
580
|
+
* selection, arrow keys navigate rows, Space toggles selection on the
|
|
581
|
+
* focused row, Enter is suppressed. The parent receives selected rows
|
|
582
|
+
* via onSelectionChange.
|
|
583
|
+
*
|
|
584
|
+
* Extractable to @petrarca/sonnet-ui.
|
|
585
|
+
*/
|
|
586
|
+
|
|
587
|
+
/** Declarative row action rendered as a button in a trailing "Actions" column. */
|
|
588
|
+
interface RowAction<TRow> {
|
|
589
|
+
label: string;
|
|
590
|
+
icon?: React__default.ComponentType<{
|
|
591
|
+
className?: string;
|
|
592
|
+
}>;
|
|
593
|
+
variant?: "default" | "destructive" | "ghost";
|
|
594
|
+
onClick: (row: TRow) => void;
|
|
595
|
+
hidden?: (row: TRow) => boolean;
|
|
596
|
+
disabled?: (row: TRow) => boolean;
|
|
597
|
+
}
|
|
598
|
+
interface EntityTableProps<TRow extends RowData> {
|
|
599
|
+
schema: JsonSchema;
|
|
600
|
+
uiSchema?: TableUiSchema;
|
|
601
|
+
renderers?: Record<string, CellRenderer>;
|
|
602
|
+
data: PageResult<TRow> | undefined;
|
|
603
|
+
isLoading: boolean;
|
|
604
|
+
isError: boolean;
|
|
605
|
+
errorMessage?: string;
|
|
606
|
+
entityLabel: string;
|
|
607
|
+
isFiltered?: boolean;
|
|
608
|
+
emptyMessage?: string;
|
|
609
|
+
onRowClick?: (row: TRow) => void;
|
|
610
|
+
selectionMode?: boolean;
|
|
611
|
+
onSelectionChange?: (selectedRows: TRow[]) => void;
|
|
612
|
+
pagination?: PaginationState;
|
|
613
|
+
onPaginationChange?: OnChangeFn<PaginationState>;
|
|
614
|
+
rowActions?: RowAction<TRow>[];
|
|
615
|
+
}
|
|
616
|
+
declare function EntityTable<TRow extends RowData>(props: EntityTableProps<TRow>): React__default.ReactElement;
|
|
617
|
+
|
|
618
|
+
/**
|
|
619
|
+
* EntitySelect -- async searchable single-select for entity references.
|
|
620
|
+
*
|
|
621
|
+
* Fetches options via a pluggable EntityOptionFetcher. The combobox search
|
|
622
|
+
* input drives server-side filtering through the useEntityOptions hook.
|
|
623
|
+
*
|
|
624
|
+
* Extractable to @petrarca/sonnet-ui -- no app-specific imports.
|
|
625
|
+
*/
|
|
626
|
+
|
|
627
|
+
interface EntitySelectProps {
|
|
628
|
+
/** The fetcher that provides options from the backend. */
|
|
629
|
+
fetcher: EntityOptionFetcher;
|
|
630
|
+
/**
|
|
631
|
+
* Stable cache key for TanStack Query. Must be unique per fetcher/endpoint
|
|
632
|
+
* combination -- two components using the same key share the same cache entry.
|
|
633
|
+
*/
|
|
634
|
+
queryKey: string;
|
|
635
|
+
/**
|
|
636
|
+
* Search mode. Default: "eager".
|
|
637
|
+
* eager -- fetch on mount, refetch as user types (small collections)
|
|
638
|
+
* typeahead -- fetch only after minChars are typed (large collections)
|
|
639
|
+
* explicit -- fetch only when user presses Enter
|
|
640
|
+
*/
|
|
641
|
+
mode?: EntitySelectMode;
|
|
642
|
+
/** Minimum characters before typeahead mode fires (default 1). */
|
|
643
|
+
minChars?: number;
|
|
644
|
+
/** Currently selected value (controlled). */
|
|
645
|
+
value?: string | null;
|
|
646
|
+
/** Called when the selection changes. */
|
|
647
|
+
onChange?: (value: string | null) => void;
|
|
648
|
+
/** Called when the selection changes, passing the full option (value + label). */
|
|
649
|
+
onChangeOption?: (option: EntityOption | null) => void;
|
|
650
|
+
/** Called when the dropdown closes (for form blur tracking). */
|
|
651
|
+
onBlur?: () => void;
|
|
652
|
+
/** Label displayed above the select. Pass false to hide. */
|
|
653
|
+
label?: string | false;
|
|
654
|
+
/** Placeholder when nothing is selected. */
|
|
655
|
+
placeholder?: string;
|
|
656
|
+
/** Placeholder for the search input inside the dropdown. */
|
|
657
|
+
searchPlaceholder?: string;
|
|
658
|
+
/** Message when no options match the search. */
|
|
659
|
+
emptyMessage?: string;
|
|
660
|
+
/** Whether the field is required (shows asterisk). */
|
|
661
|
+
required?: boolean;
|
|
662
|
+
/** Whether the select is disabled. */
|
|
663
|
+
disabled?: boolean;
|
|
664
|
+
/** Description text below the label. */
|
|
665
|
+
description?: string;
|
|
666
|
+
/** Error message. */
|
|
667
|
+
error?: string;
|
|
668
|
+
/** Additional className for the wrapper. */
|
|
669
|
+
className?: string;
|
|
670
|
+
/** HTML id for the trigger button. */
|
|
671
|
+
id?: string;
|
|
672
|
+
}
|
|
673
|
+
declare function EntitySelect(props: EntitySelectProps): React$1.ReactElement;
|
|
674
|
+
|
|
675
|
+
/**
|
|
676
|
+
* TreeView -- generic, accessible tree component.
|
|
677
|
+
*
|
|
678
|
+
* Renders a hierarchy of nodes with expand/collapse, keyboard navigation,
|
|
679
|
+
* and optional row selection. Node content is fully delegated to the
|
|
680
|
+
* caller via a renderNode render prop -- this component owns structure
|
|
681
|
+
* and interaction only.
|
|
682
|
+
*
|
|
683
|
+
* Accessibility: implements WAI-ARIA Tree View pattern with
|
|
684
|
+
* role="tree", role="treeitem", aria-expanded, aria-selected.
|
|
685
|
+
* Keyboard: ArrowDown/Up move focus, ArrowRight expands / moves into
|
|
686
|
+
* first child, ArrowLeft collapses / moves to parent, Enter/Space
|
|
687
|
+
* activate the focused node.
|
|
688
|
+
*
|
|
689
|
+
* Loading and error states per node are communicated via the node data
|
|
690
|
+
* itself (isLoading, isError flags). The caller controls data fetching.
|
|
691
|
+
*
|
|
692
|
+
* Extractable to @petrarca/sonnet-ui. Contains no app-specific imports.
|
|
693
|
+
*/
|
|
694
|
+
|
|
695
|
+
/** A single node in the tree. TData carries the domain payload. */
|
|
696
|
+
interface TreeNode<TData = Record<string, unknown>> {
|
|
697
|
+
/** Stable unique identifier for this node. */
|
|
698
|
+
id: string;
|
|
699
|
+
/** Domain payload, passed through to renderNode. */
|
|
700
|
+
data: TData;
|
|
701
|
+
/** Whether this node can have children (controls expand affordance). */
|
|
702
|
+
hasChildren: boolean;
|
|
703
|
+
/** Children that have already been loaded. undefined = not yet fetched. */
|
|
704
|
+
children?: TreeNode<TData>[];
|
|
705
|
+
/** True while children are being fetched. */
|
|
706
|
+
isLoading?: boolean;
|
|
707
|
+
/** True when the child fetch failed. */
|
|
708
|
+
isError?: boolean;
|
|
709
|
+
}
|
|
710
|
+
interface TreeViewProps<TData = Record<string, unknown>> {
|
|
711
|
+
/** Root-level nodes. */
|
|
712
|
+
nodes: TreeNode<TData>[];
|
|
713
|
+
/** Set of node ids that are currently expanded. Controlled. */
|
|
714
|
+
expandedIds: Set<string>;
|
|
715
|
+
/** Called when the user requests to expand a node. */
|
|
716
|
+
onExpand: (nodeId: string) => void;
|
|
717
|
+
/** Called when the user requests to collapse a node. */
|
|
718
|
+
onCollapse: (nodeId: string) => void;
|
|
719
|
+
/** Called when the user clicks a node row. */
|
|
720
|
+
onNodeClick?: (node: TreeNode<TData>) => void;
|
|
721
|
+
/** Called when the user activates a node via keyboard (Enter or Space). */
|
|
722
|
+
onNodeActivate?: (node: TreeNode<TData>) => void;
|
|
723
|
+
/**
|
|
724
|
+
* Render the visible content of a single node row.
|
|
725
|
+
* depth starts at 0 for root nodes.
|
|
726
|
+
*/
|
|
727
|
+
renderNode: (node: TreeNode<TData>, depth: number) => React__default.ReactNode;
|
|
728
|
+
/** Row selection -- set of selected node ids. Controlled, opt-in. */
|
|
729
|
+
selectedIds?: Set<string>;
|
|
730
|
+
/** Called when the user toggles selection on a node. */
|
|
731
|
+
onSelectionChange?: (nodeId: string, selected: boolean) => void;
|
|
732
|
+
/** When true, the first selected node locks checkboxes to its siblings
|
|
733
|
+
* (nodes sharing the same parent). Clearing all selections resets the
|
|
734
|
+
* constraint so a different sibling group can be selected next. */
|
|
735
|
+
constrainSelectionToSiblings?: boolean;
|
|
736
|
+
/** Pixels of indentation per depth level. Default 20. */
|
|
737
|
+
indentPx?: number;
|
|
738
|
+
className?: string;
|
|
739
|
+
}
|
|
740
|
+
/** Imperative handle exposed via ref for programmatic focus. */
|
|
741
|
+
interface TreeViewHandle {
|
|
742
|
+
/** Focus the tree so keyboard navigation is active. */
|
|
743
|
+
focus(): void;
|
|
744
|
+
}
|
|
745
|
+
declare const TreeView: <TData = Record<string, unknown>>(props: TreeViewProps<TData> & {
|
|
746
|
+
ref?: React__default.Ref<TreeViewHandle>;
|
|
747
|
+
}) => React__default.ReactElement;
|
|
748
|
+
|
|
749
|
+
/**
|
|
750
|
+
* EntityTree -- schema-driven tree component.
|
|
751
|
+
*
|
|
752
|
+
* Wraps TreeView and drives column rendering from a JSON Schema +
|
|
753
|
+
* optional UI Schema, using the same resolveColumns / resolveCellRenderer
|
|
754
|
+
* pipeline as EntityTable. Each visible tree node row renders as a set
|
|
755
|
+
* of schema-derived cells.
|
|
756
|
+
*
|
|
757
|
+
* Row interaction has two modes controlled by selectionMode:
|
|
758
|
+
*
|
|
759
|
+
* Normal (selectionMode=false, default): click sets active row, pencil
|
|
760
|
+
* icon visible on active/hover rows, Enter/Space triggers onNodeEdit.
|
|
761
|
+
*
|
|
762
|
+
* Selection (selectionMode=true): checkboxes appear, click toggles
|
|
763
|
+
* selection, pencil icon is hidden, onNodeEdit is suppressed.
|
|
764
|
+
*
|
|
765
|
+
* Loading, error, and empty states are communicated via node flags and
|
|
766
|
+
* the top-level isLoading / isError / isEmpty props.
|
|
767
|
+
*
|
|
768
|
+
* Contains no app-specific imports.
|
|
769
|
+
*/
|
|
770
|
+
|
|
771
|
+
/** Imperative handle for programmatic focus. */
|
|
772
|
+
interface EntityTreeHandle {
|
|
773
|
+
focus(): void;
|
|
774
|
+
}
|
|
775
|
+
interface EntityTreeProps<TData extends Record<string, unknown>> {
|
|
776
|
+
schema: JsonSchema;
|
|
777
|
+
uiSchema?: TableUiSchema;
|
|
778
|
+
renderers?: Record<string, CellRenderer>;
|
|
779
|
+
nodes: TreeNode<TData>[];
|
|
780
|
+
expandedIds: Set<string>;
|
|
781
|
+
onExpand: TreeViewProps<TData>["onExpand"];
|
|
782
|
+
onCollapse: TreeViewProps<TData>["onCollapse"];
|
|
783
|
+
isLoading?: boolean;
|
|
784
|
+
isError?: boolean;
|
|
785
|
+
errorMessage?: string;
|
|
786
|
+
entityLabel?: string;
|
|
787
|
+
/** Called on row click -- sets the active row without opening edit. */
|
|
788
|
+
onNodeSelect?: (node: TreeNode<TData>) => void;
|
|
789
|
+
/** Called when the pencil icon is clicked -- opens the edit panel. */
|
|
790
|
+
onNodeEdit?: (node: TreeNode<TData>) => void;
|
|
791
|
+
/** Id of the currently active node. Controls pencil-icon visibility only
|
|
792
|
+
* (always shown on the active node, hover-only on others). Row highlight
|
|
793
|
+
* is managed by TreeView via focus state. */
|
|
794
|
+
activeNodeId?: string;
|
|
795
|
+
selectionMode?: boolean;
|
|
796
|
+
selectedIds?: Set<string>;
|
|
797
|
+
onSelectionChange?: TreeViewProps<TData>["onSelectionChange"];
|
|
798
|
+
/** When true, the first selected node locks subsequent selections to its
|
|
799
|
+
* siblings (nodes at the same depth sharing the same parent). Clearing
|
|
800
|
+
* all selections resets the constraint. Managed internally by TreeView. */
|
|
801
|
+
constrainSelectionToSiblings?: boolean;
|
|
802
|
+
/**
|
|
803
|
+
* Optional override for specific node rendering. When provided, called
|
|
804
|
+
* before the default schema-driven renderer. Return a React node to
|
|
805
|
+
* replace the default, or null to fall through to the default.
|
|
806
|
+
*/
|
|
807
|
+
renderNodeOverride?: (node: TreeNode<TData>, depth: number) => React__default.ReactNode | null;
|
|
808
|
+
indentPx?: number;
|
|
809
|
+
className?: string;
|
|
810
|
+
}
|
|
811
|
+
declare const EntityTree: <TData extends Record<string, unknown>>(props: EntityTreeProps<TData> & {
|
|
812
|
+
ref?: React__default.Ref<EntityTreeHandle>;
|
|
813
|
+
}) => React__default.ReactElement;
|
|
814
|
+
|
|
815
|
+
/**
|
|
816
|
+
* useSearchInput -- internal state machine for SearchInput.
|
|
817
|
+
*
|
|
818
|
+
* Two code paths:
|
|
819
|
+
* Simple (no schema) -- manages a single input string, commits it as
|
|
820
|
+
* a one-term FilterExpr on Enter or debounce.
|
|
821
|
+
* Faceted (schema) -- manages chip accumulation plus a pending
|
|
822
|
+
* facet/value input. Facets are derived from the
|
|
823
|
+
* schema properties via buildFacetDescriptors().
|
|
824
|
+
*
|
|
825
|
+
* Event contract:
|
|
826
|
+
* onChange is the single output event. It fires:
|
|
827
|
+
* Simple mode, explicit -- on Enter
|
|
828
|
+
* Simple mode, debounce -- after the user stops typing
|
|
829
|
+
* Faceted mode -- on submit only (Enter on empty input after
|
|
830
|
+
* chips are composed). Chip accumulation is
|
|
831
|
+
* internal state; the caller never sees it.
|
|
832
|
+
* Remove chip / Clear -- immediately (destructive ops need instant feedback)
|
|
833
|
+
*
|
|
834
|
+
* Faceted field selection:
|
|
835
|
+
* While no facet is pending and the input does NOT end with a space,
|
|
836
|
+
* filteredFacets contains the subset of facets whose labels start with
|
|
837
|
+
* the current input (case-insensitive). Selecting one sets it as the
|
|
838
|
+
* pending facet and clears the input.
|
|
839
|
+
*
|
|
840
|
+
* If the input ends with a space, facet matching is suppressed --
|
|
841
|
+
* the value is committed against facets[0] (implicit default).
|
|
842
|
+
*
|
|
843
|
+
* Extractable to @petrarca/sonnet-ui: no app-specific imports.
|
|
844
|
+
*/
|
|
845
|
+
|
|
846
|
+
type SearchMode = "debounce" | "explicit";
|
|
847
|
+
|
|
848
|
+
/**
|
|
849
|
+
* Search widget type definitions.
|
|
850
|
+
*
|
|
851
|
+
* Search widgets are purpose-built for value entry in faceted search.
|
|
852
|
+
* They are not form widgets -- no dirty tracking, no deferred save,
|
|
853
|
+
* no validation lifecycle. A search widget receives a value, lets the
|
|
854
|
+
* user edit it, and commits or cancels.
|
|
855
|
+
*
|
|
856
|
+
* Extractable to @petrarca/sonnet-ui: no app-specific imports.
|
|
857
|
+
*/
|
|
858
|
+
|
|
859
|
+
/** Props passed to every search widget. */
|
|
860
|
+
interface SearchWidgetProps {
|
|
861
|
+
/** The JSON Schema property for this facet. Widgets read enum,
|
|
862
|
+
* pattern, x-ui-options, and any other metadata they need. */
|
|
863
|
+
property: JsonSchemaProperty;
|
|
864
|
+
/** Resolved x-ui-options from the schema property. Convenience
|
|
865
|
+
* accessor -- equivalent to property["x-ui-options"] ?? {}. */
|
|
866
|
+
options: Record<string, unknown>;
|
|
867
|
+
/** Current input value (controlled). */
|
|
868
|
+
value: string;
|
|
869
|
+
/** Called on every keystroke / value change. */
|
|
870
|
+
onChange: (value: string) => void;
|
|
871
|
+
/** Called when the user confirms a value (Enter, item selection). */
|
|
872
|
+
onCommit: (value: string) => void;
|
|
873
|
+
/** Called when the user abandons entry (Escape). */
|
|
874
|
+
onCancel: () => void;
|
|
875
|
+
/** Placeholder text for the input. */
|
|
876
|
+
placeholder?: string;
|
|
877
|
+
/** Whether the widget should auto-focus on mount. */
|
|
878
|
+
autoFocus?: boolean;
|
|
879
|
+
}
|
|
880
|
+
/** A search widget is a React component that implements SearchWidgetProps. */
|
|
881
|
+
type SearchWidget = React.ComponentType<SearchWidgetProps>;
|
|
882
|
+
/** Registry mapping widget names to their implementations. */
|
|
883
|
+
type SearchWidgetRegistry = Record<string, SearchWidget>;
|
|
884
|
+
|
|
885
|
+
/**
|
|
886
|
+
* SearchInput -- controlled search and filter input with chip display.
|
|
887
|
+
*
|
|
888
|
+
* Supports two modes:
|
|
889
|
+
* "explicit" -- fires only on Enter or the search button (default)
|
|
890
|
+
* "debounce" -- fires automatically after the user stops typing
|
|
891
|
+
*
|
|
892
|
+
* Supports two search styles:
|
|
893
|
+
* Simple -- no schema prop; produces a single search term
|
|
894
|
+
* Faceted -- schema prop provided; facets derived from schema properties,
|
|
895
|
+
* value entry delegates to search widgets
|
|
896
|
+
*
|
|
897
|
+
* Faceted field picker:
|
|
898
|
+
* - Opens on ArrowDown or chevron button click
|
|
899
|
+
* - Filters to prefix-matching facets as the user types
|
|
900
|
+
* - ArrowDown/ArrowUp navigate the list; Enter selects when navigated or typed
|
|
901
|
+
* - Click on an item accepts that facet
|
|
902
|
+
* - Closes when a facet is selected, input is submitted, or focus leaves
|
|
903
|
+
*
|
|
904
|
+
* Always emits a FilterExpr. Use flattenFilterExpr() from @/lib/search to
|
|
905
|
+
* convert to flat key/value params for server APIs that do not yet accept AST.
|
|
906
|
+
*
|
|
907
|
+
* Extractable to @petrarca/sonnet-ui: no imports from api/, services/,
|
|
908
|
+
* store/, contexts/, or modules/.
|
|
909
|
+
*/
|
|
910
|
+
|
|
911
|
+
interface SearchInputProps {
|
|
912
|
+
value: FilterExpr;
|
|
913
|
+
onChange: (expr: FilterExpr) => void;
|
|
914
|
+
/** JSON Schema defining available facets. Providing this activates
|
|
915
|
+
* faceted mode. Each schema property becomes an available facet.
|
|
916
|
+
* Omit for simple single-term search. */
|
|
917
|
+
schema?: JsonSchema;
|
|
918
|
+
/** Custom search widgets merged with defaults. Keys are widget names
|
|
919
|
+
* referenced by x-ui-widget in schema properties. */
|
|
920
|
+
widgets?: SearchWidgetRegistry;
|
|
921
|
+
mode?: SearchMode;
|
|
922
|
+
debounceMs?: number;
|
|
923
|
+
/** Minimum characters before onChange fires. Simple mode only --
|
|
924
|
+
* has no effect in faceted mode. */
|
|
925
|
+
minChars?: number;
|
|
926
|
+
/** Show an explicit Search button. Only rendered in explicit mode --
|
|
927
|
+
* has no effect when mode is "debounce". */
|
|
928
|
+
showSearchButton?: boolean;
|
|
929
|
+
/**
|
|
930
|
+
* Simple mode only. When provided, the search text is expanded into a
|
|
931
|
+
* FilterOr with one LIKE term per field instead of the default single
|
|
932
|
+
* { key: "search" } term. Enables cross-field search (e.g. match on
|
|
933
|
+
* code OR display). Ignored in faceted mode.
|
|
934
|
+
*/
|
|
935
|
+
searchFields?: string[];
|
|
936
|
+
placeholder?: string;
|
|
937
|
+
className?: string;
|
|
938
|
+
/** Disable all interaction (e.g. when a prerequisite is not met). */
|
|
939
|
+
disabled?: boolean;
|
|
940
|
+
}
|
|
941
|
+
declare function SearchInput(props: SearchInputProps): React__default.ReactElement;
|
|
942
|
+
|
|
943
|
+
type Props$2 = {
|
|
944
|
+
hasItems: boolean;
|
|
945
|
+
onClick: () => void;
|
|
946
|
+
};
|
|
947
|
+
/**
|
|
948
|
+
* ClipboardButton - Toolbar button that opens the clipboard menu.
|
|
949
|
+
*
|
|
950
|
+
* Displayed in CytoscapeControls toolbar with enabled/disabled state.
|
|
951
|
+
*/
|
|
952
|
+
declare function ClipboardButton({ hasItems, onClick }: Props$2): react_jsx_runtime.JSX.Element;
|
|
953
|
+
|
|
954
|
+
/**
|
|
955
|
+
* ClipboardItem - Lightweight representation of an item in the clipboard.
|
|
956
|
+
*/
|
|
957
|
+
interface ClipboardItem {
|
|
958
|
+
id: string;
|
|
959
|
+
type: string;
|
|
960
|
+
entityId: string;
|
|
961
|
+
label: string;
|
|
962
|
+
displayName: string;
|
|
963
|
+
color: string;
|
|
964
|
+
}
|
|
965
|
+
|
|
966
|
+
type Props$1 = {
|
|
967
|
+
item: ClipboardItem;
|
|
968
|
+
onAddItem: (item: ClipboardItem, keepInClipboard: boolean) => void;
|
|
969
|
+
onRemove: (itemId: string) => void;
|
|
970
|
+
};
|
|
971
|
+
/**
|
|
972
|
+
* ClipboardItem - Individual clipboard item display.
|
|
973
|
+
*
|
|
974
|
+
* Shows item info with color indicator and action buttons.
|
|
975
|
+
* Compact design for dropdown menu.
|
|
976
|
+
*/
|
|
977
|
+
declare function ClipboardItemComponent({ item, onAddItem, onRemove }: Props$1): react_jsx_runtime.JSX.Element;
|
|
978
|
+
|
|
979
|
+
type Props = {
|
|
980
|
+
onAddItem: (item: ClipboardItem, keepInClipboard: boolean) => void;
|
|
981
|
+
};
|
|
982
|
+
/**
|
|
983
|
+
* ClipboardMenu - Dropdown menu content for clipboard management.
|
|
984
|
+
*
|
|
985
|
+
* Displays clipboard items with add and clear all functionality.
|
|
986
|
+
*/
|
|
987
|
+
declare function ClipboardMenu({ onAddItem }: Props): react_jsx_runtime.JSX.Element;
|
|
988
|
+
|
|
989
|
+
export { Alert, AlertDescription, AlertTitle, Avatar, AvatarFallback, AvatarImage, Badge, type BadgeProps, Button, CELL_RENDERERS, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, type CellRenderer, type CellRendererProps, Checkbox, ClipboardButton, ClipboardItemComponent as ClipboardItem, ClipboardMenu, Collapsible, CollapsibleContent, CollapsibleTrigger, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EntitySelect, type EntitySelectProps, EntityTable, type EntityTableProps, EntityTree, type EntityTreeHandle, type EntityTreeProps, Input, InputGroup, InputGroupAddon, InputGroupInput, InputGroupText, InputGroupTextarea, Label, Popover, PopoverContent, PopoverTrigger, type ResolvedColumn, type RowAction, ScrollArea, ScrollBar, SearchInput, type SearchMode, Separator, Sheet, SheetBody, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetTitle, SheetTrigger, SimpleGroup, SimpleStack, SimpleTooltip, Skeleton, Spinner, Stepper, StepperContent, StepperDescription, StepperIndicator, StepperItem, StepperList, StepperNext, StepperPrev, type StepperProps, StepperSeparator, StepperTitle, StepperTrigger, type TableUiSchema, Tabs, TabsContent, TabsList, TabsTrigger, Textarea, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, type TreeNode, TreeView, type TreeViewHandle, type TreeViewProps, badgeVariants, buttonVariants, createRenderer, useStore as useStepper };
|