@openzeppelin/ui-components 1.0.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 +661 -0
- package/README.md +148 -0
- package/dist/index-CYn57Ffl.d.ts +2528 -0
- package/dist/index-CYn57Ffl.d.ts.map +1 -0
- package/dist/index-CrEkH28U.d.cts +2528 -0
- package/dist/index-CrEkH28U.d.cts.map +1 -0
- package/dist/index.cjs +5534 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +2528 -0
- package/dist/index.d.ts +2528 -0
- package/dist/index.js +5348 -0
- package/dist/index.js.map +1 -0
- package/package.json +99 -0
package/dist/index.d.cts
ADDED
|
@@ -0,0 +1,2528 @@
|
|
|
1
|
+
import * as class_variance_authority_types0 from "class-variance-authority/types";
|
|
2
|
+
import * as AccordionPrimitive from "@radix-ui/react-accordion";
|
|
3
|
+
import { VariantProps } from "class-variance-authority";
|
|
4
|
+
import * as React$2 from "react";
|
|
5
|
+
import React$1, { ForwardedRef, JSX, ReactElement, ReactNode } from "react";
|
|
6
|
+
import { DateRange, DayPicker } from "react-day-picker";
|
|
7
|
+
import * as CheckboxPrimitive from "@radix-ui/react-checkbox";
|
|
8
|
+
import * as DialogPrimitive from "@radix-ui/react-dialog";
|
|
9
|
+
import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
|
|
10
|
+
import * as _radix_ui_react_label0 from "@radix-ui/react-label";
|
|
11
|
+
import { Control, FieldError, FieldPath, FieldValues, FormProvider, Path, UseFormReturn } from "react-hook-form";
|
|
12
|
+
import { ContractAdapter, ContractSchema, EnumValue, FieldValidation, FormFieldType, FunctionParameter, MapEntry, NetworkConfig, NetworkType, RelayerDetails, RelayerDetailsRich } from "@openzeppelin/ui-types";
|
|
13
|
+
import * as PopoverPrimitive from "@radix-ui/react-popover";
|
|
14
|
+
import * as ProgressPrimitive from "@radix-ui/react-progress";
|
|
15
|
+
import * as RadioGroupPrimitive from "@radix-ui/react-radio-group";
|
|
16
|
+
import * as SelectPrimitive from "@radix-ui/react-select";
|
|
17
|
+
import * as TabsPrimitive from "@radix-ui/react-tabs";
|
|
18
|
+
import * as TooltipPrimitive from "@radix-ui/react-tooltip";
|
|
19
|
+
import { ToasterProps } from "sonner";
|
|
20
|
+
|
|
21
|
+
//#region src/components/ui/accordion.d.ts
|
|
22
|
+
declare const accordionItemVariants: (props?: ({
|
|
23
|
+
variant?: "default" | "card" | null | undefined;
|
|
24
|
+
} & class_variance_authority_types0.ClassProp) | undefined) => string;
|
|
25
|
+
declare const accordionTriggerVariants: (props?: ({
|
|
26
|
+
variant?: "default" | "card" | null | undefined;
|
|
27
|
+
} & class_variance_authority_types0.ClassProp) | undefined) => string;
|
|
28
|
+
declare const accordionContentVariants: (props?: ({
|
|
29
|
+
variant?: "default" | "card" | null | undefined;
|
|
30
|
+
} & class_variance_authority_types0.ClassProp) | undefined) => string;
|
|
31
|
+
type AccordionVariant = 'default' | 'card';
|
|
32
|
+
type AccordionProps = (AccordionPrimitive.AccordionSingleProps | AccordionPrimitive.AccordionMultipleProps) & {
|
|
33
|
+
variant?: AccordionVariant;
|
|
34
|
+
};
|
|
35
|
+
declare const Accordion: React$2.ForwardRefExoticComponent<AccordionProps & React$2.RefAttributes<HTMLDivElement>>;
|
|
36
|
+
interface AccordionItemProps extends React$2.ComponentPropsWithoutRef<typeof AccordionPrimitive.Item>, VariantProps<typeof accordionItemVariants> {}
|
|
37
|
+
declare const AccordionItem: React$2.ForwardRefExoticComponent<AccordionItemProps & React$2.RefAttributes<HTMLDivElement>>;
|
|
38
|
+
interface AccordionTriggerProps extends React$2.ComponentPropsWithoutRef<typeof AccordionPrimitive.Trigger>, VariantProps<typeof accordionTriggerVariants> {}
|
|
39
|
+
declare const AccordionTrigger: React$2.ForwardRefExoticComponent<AccordionTriggerProps & React$2.RefAttributes<HTMLButtonElement>>;
|
|
40
|
+
interface AccordionContentProps extends React$2.ComponentPropsWithoutRef<typeof AccordionPrimitive.Content>, VariantProps<typeof accordionContentVariants> {}
|
|
41
|
+
declare const AccordionContent: React$2.ForwardRefExoticComponent<AccordionContentProps & React$2.RefAttributes<HTMLDivElement>>;
|
|
42
|
+
//#endregion
|
|
43
|
+
//#region src/components/ui/address-display.d.ts
|
|
44
|
+
interface AddressDisplayProps extends React$2.HTMLAttributes<HTMLDivElement> {
|
|
45
|
+
/**
|
|
46
|
+
* The blockchain address to display
|
|
47
|
+
*/
|
|
48
|
+
address: string;
|
|
49
|
+
/**
|
|
50
|
+
* Whether to truncate the address in the middle
|
|
51
|
+
* @default true
|
|
52
|
+
*/
|
|
53
|
+
truncate?: boolean;
|
|
54
|
+
/**
|
|
55
|
+
* Number of characters to show at the beginning when truncating
|
|
56
|
+
* @default 6
|
|
57
|
+
*/
|
|
58
|
+
startChars?: number;
|
|
59
|
+
/**
|
|
60
|
+
* Number of characters to show at the end when truncating
|
|
61
|
+
* @default 4
|
|
62
|
+
*/
|
|
63
|
+
endChars?: number;
|
|
64
|
+
/**
|
|
65
|
+
* Whether to show a copy button
|
|
66
|
+
* @default false
|
|
67
|
+
*/
|
|
68
|
+
showCopyButton?: boolean;
|
|
69
|
+
/**
|
|
70
|
+
* Whether to show the copy button only on hover
|
|
71
|
+
* @default false
|
|
72
|
+
*/
|
|
73
|
+
showCopyButtonOnHover?: boolean;
|
|
74
|
+
/**
|
|
75
|
+
* Optional explorer URL to make the address clickable
|
|
76
|
+
*/
|
|
77
|
+
explorerUrl?: string;
|
|
78
|
+
/**
|
|
79
|
+
* Additional CSS classes
|
|
80
|
+
*/
|
|
81
|
+
className?: string;
|
|
82
|
+
}
|
|
83
|
+
/** Displays a blockchain address with optional truncation, copy button, and explorer link. */
|
|
84
|
+
declare function AddressDisplay({
|
|
85
|
+
address,
|
|
86
|
+
truncate,
|
|
87
|
+
startChars,
|
|
88
|
+
endChars,
|
|
89
|
+
showCopyButton,
|
|
90
|
+
showCopyButtonOnHover,
|
|
91
|
+
explorerUrl,
|
|
92
|
+
className,
|
|
93
|
+
...props
|
|
94
|
+
}: AddressDisplayProps): React$2.ReactElement;
|
|
95
|
+
//#endregion
|
|
96
|
+
//#region src/components/ui/alert.d.ts
|
|
97
|
+
declare const Alert: React$2.ForwardRefExoticComponent<React$2.HTMLAttributes<HTMLDivElement> & VariantProps<(props?: ({
|
|
98
|
+
variant?: "default" | "destructive" | "success" | null | undefined;
|
|
99
|
+
} & class_variance_authority_types0.ClassProp) | undefined) => string> & React$2.RefAttributes<HTMLDivElement>>;
|
|
100
|
+
declare const AlertTitle: React$2.ForwardRefExoticComponent<React$2.HTMLAttributes<HTMLHeadingElement> & React$2.RefAttributes<HTMLParagraphElement>>;
|
|
101
|
+
declare const AlertDescription: React$2.ForwardRefExoticComponent<React$2.HTMLAttributes<HTMLParagraphElement> & React$2.RefAttributes<HTMLParagraphElement>>;
|
|
102
|
+
//#endregion
|
|
103
|
+
//#region src/components/ui/banner.d.ts
|
|
104
|
+
interface BannerProps {
|
|
105
|
+
/**
|
|
106
|
+
* The variant/style of the banner
|
|
107
|
+
* @default 'info'
|
|
108
|
+
*/
|
|
109
|
+
variant?: 'info' | 'success' | 'warning' | 'error';
|
|
110
|
+
/**
|
|
111
|
+
* Title text displayed at the top of the banner
|
|
112
|
+
*/
|
|
113
|
+
title?: React$2.ReactNode;
|
|
114
|
+
/**
|
|
115
|
+
* Body text/content of the banner
|
|
116
|
+
*/
|
|
117
|
+
children: React$2.ReactNode;
|
|
118
|
+
/**
|
|
119
|
+
* Whether the banner can be dismissed
|
|
120
|
+
* @default true
|
|
121
|
+
*/
|
|
122
|
+
dismissible?: boolean;
|
|
123
|
+
/**
|
|
124
|
+
* Callback when the banner is dismissed
|
|
125
|
+
*/
|
|
126
|
+
onDismiss?: () => void;
|
|
127
|
+
/**
|
|
128
|
+
* Icon to display on the left (replaces default based on variant)
|
|
129
|
+
*/
|
|
130
|
+
icon?: React$2.ReactNode;
|
|
131
|
+
/**
|
|
132
|
+
* Additional CSS classes
|
|
133
|
+
*/
|
|
134
|
+
className?: string;
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Dismissible banner component for notifications and alerts
|
|
138
|
+
* Can be used with various variants (info, success, warning, error)
|
|
139
|
+
*/
|
|
140
|
+
declare const Banner: React$2.ForwardRefExoticComponent<BannerProps & React$2.RefAttributes<HTMLDivElement>>;
|
|
141
|
+
//#endregion
|
|
142
|
+
//#region src/utils/button-variants.d.ts
|
|
143
|
+
declare const buttonVariants: (props?: ({
|
|
144
|
+
variant?: "default" | "destructive" | "outline" | "secondary" | "ghost" | "link" | null | undefined;
|
|
145
|
+
size?: "default" | "sm" | "lg" | "icon" | null | undefined;
|
|
146
|
+
} & class_variance_authority_types0.ClassProp) | undefined) => string;
|
|
147
|
+
//# sourceMappingURL=button-variants.d.ts.map
|
|
148
|
+
//#endregion
|
|
149
|
+
//#region src/components/ui/button.d.ts
|
|
150
|
+
interface ButtonProps extends React$2.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
|
|
151
|
+
asChild?: boolean;
|
|
152
|
+
}
|
|
153
|
+
declare const Button: React$2.ForwardRefExoticComponent<ButtonProps & React$2.RefAttributes<HTMLButtonElement>>;
|
|
154
|
+
//#endregion
|
|
155
|
+
//#region src/components/ui/calendar.d.ts
|
|
156
|
+
type CalendarProps = React$2.ComponentProps<typeof DayPicker>;
|
|
157
|
+
/**
|
|
158
|
+
* Calendar component built on react-day-picker with shadcn/ui styling.
|
|
159
|
+
* Supports single date, multiple dates, and date range selection modes.
|
|
160
|
+
*/
|
|
161
|
+
declare function Calendar({
|
|
162
|
+
className,
|
|
163
|
+
classNames,
|
|
164
|
+
showOutsideDays,
|
|
165
|
+
...props
|
|
166
|
+
}: CalendarProps): React$2.ReactElement;
|
|
167
|
+
declare namespace Calendar {
|
|
168
|
+
var displayName: string;
|
|
169
|
+
}
|
|
170
|
+
//#endregion
|
|
171
|
+
//#region src/components/ui/card.d.ts
|
|
172
|
+
/** Card container component with rounded borders and shadow. */
|
|
173
|
+
declare function Card({
|
|
174
|
+
className,
|
|
175
|
+
...props
|
|
176
|
+
}: React.ComponentProps<'div'>): JSX.Element;
|
|
177
|
+
/** Card header section for title and description. */
|
|
178
|
+
declare function CardHeader({
|
|
179
|
+
className,
|
|
180
|
+
...props
|
|
181
|
+
}: React.ComponentProps<'div'>): JSX.Element;
|
|
182
|
+
/** Card title with semibold styling. */
|
|
183
|
+
declare function CardTitle({
|
|
184
|
+
className,
|
|
185
|
+
...props
|
|
186
|
+
}: React.ComponentProps<'div'>): JSX.Element;
|
|
187
|
+
/** Card description with muted text styling. */
|
|
188
|
+
declare function CardDescription({
|
|
189
|
+
className,
|
|
190
|
+
...props
|
|
191
|
+
}: React.ComponentProps<'div'>): JSX.Element;
|
|
192
|
+
/** Card content area with horizontal padding. */
|
|
193
|
+
declare function CardContent({
|
|
194
|
+
className,
|
|
195
|
+
...props
|
|
196
|
+
}: React.ComponentProps<'div'>): JSX.Element;
|
|
197
|
+
/** Card footer with flex alignment for actions. */
|
|
198
|
+
declare function CardFooter({
|
|
199
|
+
className,
|
|
200
|
+
...props
|
|
201
|
+
}: React.ComponentProps<'div'>): JSX.Element;
|
|
202
|
+
//#endregion
|
|
203
|
+
//#region src/components/ui/checkbox.d.ts
|
|
204
|
+
/** Checkbox component wrapping Radix UI Checkbox primitive. */
|
|
205
|
+
declare function Checkbox({
|
|
206
|
+
className,
|
|
207
|
+
...props
|
|
208
|
+
}: React$2.ComponentProps<typeof CheckboxPrimitive.Root>): React$2.ReactElement;
|
|
209
|
+
//#endregion
|
|
210
|
+
//#region src/components/ui/date-range-picker.d.ts
|
|
211
|
+
/**
|
|
212
|
+
* Props for the DateRangePicker component.
|
|
213
|
+
*/
|
|
214
|
+
interface DateRangePickerProps {
|
|
215
|
+
/** The selected date range */
|
|
216
|
+
value?: DateRange;
|
|
217
|
+
/** Callback when the date range changes */
|
|
218
|
+
onChange?: (range: DateRange | undefined) => void;
|
|
219
|
+
/** Placeholder text when no date is selected */
|
|
220
|
+
placeholder?: string;
|
|
221
|
+
/** Additional CSS classes */
|
|
222
|
+
className?: string;
|
|
223
|
+
/** Whether the picker is disabled */
|
|
224
|
+
disabled?: boolean;
|
|
225
|
+
/** Number of months to display (default: 2) */
|
|
226
|
+
numberOfMonths?: number;
|
|
227
|
+
/** Alignment of the popover */
|
|
228
|
+
align?: 'start' | 'center' | 'end';
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* DateRangePicker component for selecting a date range.
|
|
232
|
+
* Uses react-day-picker with Radix Popover for a shadcn-styled date range selection.
|
|
233
|
+
*
|
|
234
|
+
* @example
|
|
235
|
+
* ```tsx
|
|
236
|
+
* const [dateRange, setDateRange] = useState<DateRange | undefined>();
|
|
237
|
+
*
|
|
238
|
+
* <DateRangePicker
|
|
239
|
+
* value={dateRange}
|
|
240
|
+
* onChange={setDateRange}
|
|
241
|
+
* placeholder="Select date range"
|
|
242
|
+
* />
|
|
243
|
+
* ```
|
|
244
|
+
*/
|
|
245
|
+
declare function DateRangePicker({
|
|
246
|
+
value,
|
|
247
|
+
onChange,
|
|
248
|
+
placeholder,
|
|
249
|
+
className,
|
|
250
|
+
disabled,
|
|
251
|
+
numberOfMonths,
|
|
252
|
+
align
|
|
253
|
+
}: DateRangePickerProps): React.ReactElement;
|
|
254
|
+
declare namespace DateRangePicker {
|
|
255
|
+
var displayName: string;
|
|
256
|
+
}
|
|
257
|
+
//#endregion
|
|
258
|
+
//#region src/components/ui/dialog.d.ts
|
|
259
|
+
declare const Dialog: React$2.FC<DialogPrimitive.DialogProps>;
|
|
260
|
+
declare const DialogTrigger: React$2.ForwardRefExoticComponent<DialogPrimitive.DialogTriggerProps & React$2.RefAttributes<HTMLButtonElement>>;
|
|
261
|
+
declare const DialogPortal: React$2.FC<DialogPrimitive.DialogPortalProps>;
|
|
262
|
+
declare const DialogClose: React$2.ForwardRefExoticComponent<DialogPrimitive.DialogCloseProps & React$2.RefAttributes<HTMLButtonElement>>;
|
|
263
|
+
declare const DialogOverlay: React$2.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogOverlayProps & React$2.RefAttributes<HTMLDivElement>, "ref"> & React$2.RefAttributes<HTMLDivElement>>;
|
|
264
|
+
declare const DialogContent: React$2.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogContentProps & React$2.RefAttributes<HTMLDivElement>, "ref"> & React$2.RefAttributes<HTMLDivElement>>;
|
|
265
|
+
declare const DialogHeader: {
|
|
266
|
+
({
|
|
267
|
+
className,
|
|
268
|
+
...props
|
|
269
|
+
}: React$2.HTMLAttributes<HTMLDivElement>): React$2.JSX.Element;
|
|
270
|
+
displayName: string;
|
|
271
|
+
};
|
|
272
|
+
declare const DialogFooter: {
|
|
273
|
+
({
|
|
274
|
+
className,
|
|
275
|
+
...props
|
|
276
|
+
}: React$2.HTMLAttributes<HTMLDivElement>): React$2.JSX.Element;
|
|
277
|
+
displayName: string;
|
|
278
|
+
};
|
|
279
|
+
declare const DialogTitle: React$2.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogTitleProps & React$2.RefAttributes<HTMLHeadingElement>, "ref"> & React$2.RefAttributes<HTMLHeadingElement>>;
|
|
280
|
+
declare const DialogDescription: React$2.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogDescriptionProps & React$2.RefAttributes<HTMLParagraphElement>, "ref"> & React$2.RefAttributes<HTMLParagraphElement>>;
|
|
281
|
+
//#endregion
|
|
282
|
+
//#region src/components/ui/dropdown-menu.d.ts
|
|
283
|
+
declare const DropdownMenu: React$2.FC<DropdownMenuPrimitive.DropdownMenuProps>;
|
|
284
|
+
declare const DropdownMenuTrigger: React$2.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuTriggerProps & React$2.RefAttributes<HTMLButtonElement>>;
|
|
285
|
+
declare const DropdownMenuGroup: React$2.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuGroupProps & React$2.RefAttributes<HTMLDivElement>>;
|
|
286
|
+
declare const DropdownMenuPortal: React$2.FC<DropdownMenuPrimitive.DropdownMenuPortalProps>;
|
|
287
|
+
declare const DropdownMenuSub: React$2.FC<DropdownMenuPrimitive.DropdownMenuSubProps>;
|
|
288
|
+
declare const DropdownMenuRadioGroup: React$2.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuRadioGroupProps & React$2.RefAttributes<HTMLDivElement>>;
|
|
289
|
+
declare const DropdownMenuSubTrigger: React$2.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubTriggerProps & React$2.RefAttributes<HTMLDivElement>, "ref"> & {
|
|
290
|
+
inset?: boolean;
|
|
291
|
+
} & React$2.RefAttributes<HTMLDivElement>>;
|
|
292
|
+
declare const DropdownMenuSubContent: React$2.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubContentProps & React$2.RefAttributes<HTMLDivElement>, "ref"> & React$2.RefAttributes<HTMLDivElement>>;
|
|
293
|
+
declare const DropdownMenuContent: React$2.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuContentProps & React$2.RefAttributes<HTMLDivElement>, "ref"> & React$2.RefAttributes<HTMLDivElement>>;
|
|
294
|
+
declare const DropdownMenuItem: React$2.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuItemProps & React$2.RefAttributes<HTMLDivElement>, "ref"> & {
|
|
295
|
+
inset?: boolean;
|
|
296
|
+
} & React$2.RefAttributes<HTMLDivElement>>;
|
|
297
|
+
declare const DropdownMenuCheckboxItem: React$2.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuCheckboxItemProps & React$2.RefAttributes<HTMLDivElement>, "ref"> & React$2.RefAttributes<HTMLDivElement>>;
|
|
298
|
+
declare const DropdownMenuRadioItem: React$2.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuRadioItemProps & React$2.RefAttributes<HTMLDivElement>, "ref"> & React$2.RefAttributes<HTMLDivElement>>;
|
|
299
|
+
declare const DropdownMenuLabel: React$2.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuLabelProps & React$2.RefAttributes<HTMLDivElement>, "ref"> & {
|
|
300
|
+
inset?: boolean;
|
|
301
|
+
} & React$2.RefAttributes<HTMLDivElement>>;
|
|
302
|
+
declare const DropdownMenuSeparator: React$2.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSeparatorProps & React$2.RefAttributes<HTMLDivElement>, "ref"> & React$2.RefAttributes<HTMLDivElement>>;
|
|
303
|
+
declare const DropdownMenuShortcut: {
|
|
304
|
+
({
|
|
305
|
+
className,
|
|
306
|
+
...props
|
|
307
|
+
}: React$2.HTMLAttributes<HTMLSpanElement>): React$2.ReactNode;
|
|
308
|
+
displayName: string;
|
|
309
|
+
};
|
|
310
|
+
//#endregion
|
|
311
|
+
//#region src/components/ui/empty-state.d.ts
|
|
312
|
+
interface EmptyStateProps {
|
|
313
|
+
/**
|
|
314
|
+
* The icon to display - can be a React component or SVG path
|
|
315
|
+
*/
|
|
316
|
+
icon?: React$1.ReactNode;
|
|
317
|
+
/**
|
|
318
|
+
* Main heading text
|
|
319
|
+
*/
|
|
320
|
+
title: string;
|
|
321
|
+
/**
|
|
322
|
+
* Descriptive text explaining the empty state
|
|
323
|
+
*/
|
|
324
|
+
description: string;
|
|
325
|
+
/**
|
|
326
|
+
* Additional CSS classes for the container
|
|
327
|
+
*/
|
|
328
|
+
className?: string;
|
|
329
|
+
/**
|
|
330
|
+
* Size variant for the empty state
|
|
331
|
+
* @default 'default'
|
|
332
|
+
*/
|
|
333
|
+
size?: 'small' | 'default' | 'large';
|
|
334
|
+
}
|
|
335
|
+
/**
|
|
336
|
+
* Reusable empty state component for showing helpful messages when content is not available
|
|
337
|
+
*/
|
|
338
|
+
declare function EmptyState({
|
|
339
|
+
icon,
|
|
340
|
+
title,
|
|
341
|
+
description,
|
|
342
|
+
className,
|
|
343
|
+
size
|
|
344
|
+
}: EmptyStateProps): React$1.ReactElement;
|
|
345
|
+
//# sourceMappingURL=empty-state.d.ts.map
|
|
346
|
+
//#endregion
|
|
347
|
+
//#region src/components/ui/external-link.d.ts
|
|
348
|
+
declare const ExternalLink: React$1.ForwardRefExoticComponent<React$1.AnchorHTMLAttributes<HTMLAnchorElement> & React$1.RefAttributes<HTMLAnchorElement>>;
|
|
349
|
+
//# sourceMappingURL=external-link.d.ts.map
|
|
350
|
+
|
|
351
|
+
//#endregion
|
|
352
|
+
//#region src/components/ui/footer.d.ts
|
|
353
|
+
/**
|
|
354
|
+
* Props for the Footer component
|
|
355
|
+
*/
|
|
356
|
+
interface FooterProps {
|
|
357
|
+
/**
|
|
358
|
+
* Company or organization name for the copyright notice
|
|
359
|
+
* @default 'OpenZeppelin'
|
|
360
|
+
*/
|
|
361
|
+
companyName?: string;
|
|
362
|
+
/**
|
|
363
|
+
* Copyright year to display
|
|
364
|
+
* @default Current year
|
|
365
|
+
*/
|
|
366
|
+
copyrightYear?: number;
|
|
367
|
+
/**
|
|
368
|
+
* URL for the privacy policy link
|
|
369
|
+
* @default 'https://www.openzeppelin.com/privacy'
|
|
370
|
+
*/
|
|
371
|
+
privacyPolicyUrl?: string;
|
|
372
|
+
/**
|
|
373
|
+
* Text for the privacy policy link
|
|
374
|
+
* @default 'Privacy Policy'
|
|
375
|
+
*/
|
|
376
|
+
privacyPolicyText?: string;
|
|
377
|
+
/**
|
|
378
|
+
* URL for the terms of service link
|
|
379
|
+
* @default 'https://www.openzeppelin.com/tos'
|
|
380
|
+
*/
|
|
381
|
+
termsOfServiceUrl?: string;
|
|
382
|
+
/**
|
|
383
|
+
* Text for the terms of service link
|
|
384
|
+
* @default 'Terms of Service'
|
|
385
|
+
*/
|
|
386
|
+
termsOfServiceText?: string;
|
|
387
|
+
/**
|
|
388
|
+
* Whether to show the privacy policy link
|
|
389
|
+
* @default true
|
|
390
|
+
*/
|
|
391
|
+
showPrivacyPolicy?: boolean;
|
|
392
|
+
/**
|
|
393
|
+
* Whether to show the terms of service link
|
|
394
|
+
* @default true
|
|
395
|
+
*/
|
|
396
|
+
showTermsOfService?: boolean;
|
|
397
|
+
/**
|
|
398
|
+
* Additional CSS classes for the footer container
|
|
399
|
+
*/
|
|
400
|
+
className?: string;
|
|
401
|
+
}
|
|
402
|
+
/**
|
|
403
|
+
* Application footer component with customizable legal links and branding.
|
|
404
|
+
*
|
|
405
|
+
* This component provides a consistent footer layout with customizable:
|
|
406
|
+
* - Company name and copyright year
|
|
407
|
+
* - Privacy policy and terms of service links and text
|
|
408
|
+
* - Optional visibility controls for legal links
|
|
409
|
+
* - Custom styling support
|
|
410
|
+
*/
|
|
411
|
+
declare const Footer: ({
|
|
412
|
+
companyName,
|
|
413
|
+
copyrightYear,
|
|
414
|
+
privacyPolicyUrl,
|
|
415
|
+
privacyPolicyText,
|
|
416
|
+
termsOfServiceUrl,
|
|
417
|
+
termsOfServiceText,
|
|
418
|
+
showPrivacyPolicy,
|
|
419
|
+
showTermsOfService,
|
|
420
|
+
className
|
|
421
|
+
}?: FooterProps) => JSX.Element;
|
|
422
|
+
//# sourceMappingURL=footer.d.ts.map
|
|
423
|
+
//#endregion
|
|
424
|
+
//#region src/components/ui/form.d.ts
|
|
425
|
+
/**
|
|
426
|
+
* Context provider for the form
|
|
427
|
+
*/
|
|
428
|
+
declare const Form: <TFieldValues extends FieldValues = FieldValues, TContext = unknown>({
|
|
429
|
+
...props
|
|
430
|
+
}: React$2.ComponentProps<typeof FormProvider<TFieldValues, TContext>>) => React$2.ReactElement;
|
|
431
|
+
/**
|
|
432
|
+
* Form field component
|
|
433
|
+
*/
|
|
434
|
+
declare const FormField: <TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>({
|
|
435
|
+
...props
|
|
436
|
+
}: ControllerProps<TFieldValues, TName>) => React$2.ReactElement;
|
|
437
|
+
/**
|
|
438
|
+
* Form item component
|
|
439
|
+
*/
|
|
440
|
+
declare const FormItem: React$2.ForwardRefExoticComponent<React$2.HTMLAttributes<HTMLDivElement> & React$2.RefAttributes<HTMLDivElement>>;
|
|
441
|
+
/**
|
|
442
|
+
* Form label component
|
|
443
|
+
*/
|
|
444
|
+
declare const FormLabel: React$2.ForwardRefExoticComponent<Omit<Omit<_radix_ui_react_label0.LabelProps & React$2.RefAttributes<HTMLLabelElement>, "ref"> & React$2.RefAttributes<HTMLLabelElement>, "ref"> & React$2.RefAttributes<HTMLLabelElement>>;
|
|
445
|
+
/**
|
|
446
|
+
* Form control component
|
|
447
|
+
*/
|
|
448
|
+
declare const FormControl: React$2.ForwardRefExoticComponent<React$2.HTMLAttributes<HTMLDivElement> & React$2.RefAttributes<HTMLDivElement>>;
|
|
449
|
+
/**
|
|
450
|
+
* Form description component
|
|
451
|
+
*/
|
|
452
|
+
declare const FormDescription: React$2.ForwardRefExoticComponent<React$2.HTMLAttributes<HTMLParagraphElement> & React$2.RefAttributes<HTMLParagraphElement>>;
|
|
453
|
+
/**
|
|
454
|
+
* Form error message component
|
|
455
|
+
*/
|
|
456
|
+
declare const FormMessage: React$2.ForwardRefExoticComponent<React$2.HTMLAttributes<HTMLParagraphElement> & React$2.RefAttributes<HTMLParagraphElement>>;
|
|
457
|
+
/**
|
|
458
|
+
* Types for form controller props
|
|
459
|
+
*/
|
|
460
|
+
type ControllerProps<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = {
|
|
461
|
+
name: TName;
|
|
462
|
+
control?: UseFormReturn<TFieldValues>['control'];
|
|
463
|
+
render: (props: {
|
|
464
|
+
field: {
|
|
465
|
+
value: unknown;
|
|
466
|
+
onChange: (...event: unknown[]) => void;
|
|
467
|
+
onBlur: () => void;
|
|
468
|
+
name: TName;
|
|
469
|
+
ref: React$2.RefCallback<HTMLInputElement>;
|
|
470
|
+
};
|
|
471
|
+
fieldState: {
|
|
472
|
+
invalid: boolean;
|
|
473
|
+
isTouched: boolean;
|
|
474
|
+
isDirty: boolean;
|
|
475
|
+
error?: unknown;
|
|
476
|
+
};
|
|
477
|
+
formState: UseFormReturn<TFieldValues>['formState'];
|
|
478
|
+
}) => React$2.ReactElement;
|
|
479
|
+
};
|
|
480
|
+
//#endregion
|
|
481
|
+
//#region src/components/ui/header.d.ts
|
|
482
|
+
interface HeaderProps {
|
|
483
|
+
title?: string;
|
|
484
|
+
/** Open the mobile sidebar */
|
|
485
|
+
onOpenSidebar?: () => void;
|
|
486
|
+
/** Content to display on the right side of the header */
|
|
487
|
+
rightContent?: React$1.ReactNode;
|
|
488
|
+
}
|
|
489
|
+
declare const Header: ({
|
|
490
|
+
title,
|
|
491
|
+
onOpenSidebar,
|
|
492
|
+
rightContent
|
|
493
|
+
}: HeaderProps) => React$1.ReactElement;
|
|
494
|
+
//# sourceMappingURL=header.d.ts.map
|
|
495
|
+
//#endregion
|
|
496
|
+
//#region src/components/ui/input.d.ts
|
|
497
|
+
/**
|
|
498
|
+
* Input component that follows shadcn/ui styling and accessibility patterns
|
|
499
|
+
*/
|
|
500
|
+
type InputProps = React$2.InputHTMLAttributes<HTMLInputElement>;
|
|
501
|
+
declare const Input: React$2.ForwardRefExoticComponent<InputProps & React$2.RefAttributes<HTMLInputElement>>;
|
|
502
|
+
//#endregion
|
|
503
|
+
//#region src/components/ui/label.d.ts
|
|
504
|
+
/**
|
|
505
|
+
* Label component for form fields, following shadcn/ui styling
|
|
506
|
+
*/
|
|
507
|
+
declare const Label: React$2.ForwardRefExoticComponent<Omit<_radix_ui_react_label0.LabelProps & React$2.RefAttributes<HTMLLabelElement>, "ref"> & React$2.RefAttributes<HTMLLabelElement>>;
|
|
508
|
+
//#endregion
|
|
509
|
+
//#region src/components/ui/loading-button.d.ts
|
|
510
|
+
interface LoadingButtonProps extends React$2.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
|
|
511
|
+
asChild?: boolean;
|
|
512
|
+
loading?: boolean;
|
|
513
|
+
}
|
|
514
|
+
declare const LoadingButton: React$2.ForwardRefExoticComponent<LoadingButtonProps & React$2.RefAttributes<HTMLButtonElement>>;
|
|
515
|
+
//#endregion
|
|
516
|
+
//#region src/components/ui/network-icon.d.ts
|
|
517
|
+
interface NetworkIconProps {
|
|
518
|
+
network: Pick<NetworkConfig, 'ecosystem' | 'iconComponent'>;
|
|
519
|
+
className?: string;
|
|
520
|
+
size?: number;
|
|
521
|
+
variant?: 'mono' | 'branded';
|
|
522
|
+
}
|
|
523
|
+
/** Displays the appropriate icon for a blockchain network. */
|
|
524
|
+
declare function NetworkIcon({
|
|
525
|
+
network,
|
|
526
|
+
className,
|
|
527
|
+
size,
|
|
528
|
+
variant
|
|
529
|
+
}: NetworkIconProps): React$1.ReactElement;
|
|
530
|
+
//# sourceMappingURL=network-icon.d.ts.map
|
|
531
|
+
//#endregion
|
|
532
|
+
//#region src/components/ui/network-selector.d.ts
|
|
533
|
+
interface NetworkSelectorProps<T> {
|
|
534
|
+
networks: T[];
|
|
535
|
+
selectedNetwork: T | null;
|
|
536
|
+
onSelectNetwork: (network: T) => void;
|
|
537
|
+
getNetworkLabel: (network: T) => string;
|
|
538
|
+
getNetworkIcon?: (network: T) => React$2.ReactNode;
|
|
539
|
+
getNetworkType?: (network: T) => NetworkType | undefined;
|
|
540
|
+
getNetworkId: (network: T) => string;
|
|
541
|
+
groupByEcosystem?: boolean;
|
|
542
|
+
getEcosystem?: (network: T) => string;
|
|
543
|
+
filterNetwork?: (network: T, query: string) => boolean;
|
|
544
|
+
className?: string;
|
|
545
|
+
placeholder?: string;
|
|
546
|
+
}
|
|
547
|
+
/** Searchable dropdown selector for blockchain networks with optional grouping. */
|
|
548
|
+
declare function NetworkSelector<T>({
|
|
549
|
+
networks,
|
|
550
|
+
selectedNetwork,
|
|
551
|
+
onSelectNetwork,
|
|
552
|
+
getNetworkLabel,
|
|
553
|
+
getNetworkIcon,
|
|
554
|
+
getNetworkType,
|
|
555
|
+
getNetworkId,
|
|
556
|
+
groupByEcosystem,
|
|
557
|
+
getEcosystem,
|
|
558
|
+
filterNetwork,
|
|
559
|
+
className,
|
|
560
|
+
placeholder
|
|
561
|
+
}: NetworkSelectorProps<T>): React$2.ReactElement;
|
|
562
|
+
//# sourceMappingURL=network-selector.d.ts.map
|
|
563
|
+
//#endregion
|
|
564
|
+
//#region src/components/ui/network-status-badge.d.ts
|
|
565
|
+
interface NetworkStatusBadgeProps {
|
|
566
|
+
network: NetworkConfig | null;
|
|
567
|
+
className?: string;
|
|
568
|
+
}
|
|
569
|
+
/**
|
|
570
|
+
* NetworkStatusBadge - Displays network information in a compact badge format
|
|
571
|
+
* Shows the network icon, ecosystem, and name with dashed borders for testnet/devnet
|
|
572
|
+
*/
|
|
573
|
+
declare function NetworkStatusBadge({
|
|
574
|
+
network,
|
|
575
|
+
className
|
|
576
|
+
}: NetworkStatusBadgeProps): React$1.ReactElement | null;
|
|
577
|
+
//#endregion
|
|
578
|
+
//#region src/components/ui/popover.d.ts
|
|
579
|
+
declare const Popover: React$2.FC<PopoverPrimitive.PopoverProps>;
|
|
580
|
+
declare const PopoverTrigger: React$2.ForwardRefExoticComponent<PopoverPrimitive.PopoverTriggerProps & React$2.RefAttributes<HTMLButtonElement>>;
|
|
581
|
+
declare const PopoverAnchor: React$2.ForwardRefExoticComponent<PopoverPrimitive.PopoverAnchorProps & React$2.RefAttributes<HTMLDivElement>>;
|
|
582
|
+
declare const PopoverContent: React$2.ForwardRefExoticComponent<Omit<PopoverPrimitive.PopoverContentProps & React$2.RefAttributes<HTMLDivElement>, "ref"> & React$2.RefAttributes<HTMLDivElement>>;
|
|
583
|
+
//#endregion
|
|
584
|
+
//#region src/components/ui/progress.d.ts
|
|
585
|
+
declare const Progress: React$2.ForwardRefExoticComponent<Omit<ProgressPrimitive.ProgressProps & React$2.RefAttributes<HTMLDivElement>, "ref"> & React$2.RefAttributes<HTMLDivElement>>;
|
|
586
|
+
//#endregion
|
|
587
|
+
//#region src/components/ui/radio-group.d.ts
|
|
588
|
+
declare const RadioGroup: React$2.ForwardRefExoticComponent<Omit<RadioGroupPrimitive.RadioGroupProps & React$2.RefAttributes<HTMLDivElement>, "ref"> & React$2.RefAttributes<HTMLDivElement>>;
|
|
589
|
+
declare const RadioGroupItem: React$2.ForwardRefExoticComponent<Omit<RadioGroupPrimitive.RadioGroupItemProps & React$2.RefAttributes<HTMLButtonElement>, "ref"> & React$2.RefAttributes<HTMLButtonElement>>;
|
|
590
|
+
//#endregion
|
|
591
|
+
//#region src/components/ui/select.d.ts
|
|
592
|
+
declare const Select: React$2.FC<SelectPrimitive.SelectProps>;
|
|
593
|
+
declare const SelectGroup: React$2.ForwardRefExoticComponent<SelectPrimitive.SelectGroupProps & React$2.RefAttributes<HTMLDivElement>>;
|
|
594
|
+
declare const SelectValue: React$2.ForwardRefExoticComponent<SelectPrimitive.SelectValueProps & React$2.RefAttributes<HTMLSpanElement>>;
|
|
595
|
+
declare const SelectTrigger: React$2.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectTriggerProps & React$2.RefAttributes<HTMLButtonElement>, "ref"> & React$2.RefAttributes<HTMLButtonElement>>;
|
|
596
|
+
declare const SelectScrollUpButton: React$2.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectScrollUpButtonProps & React$2.RefAttributes<HTMLDivElement>, "ref"> & React$2.RefAttributes<HTMLDivElement>>;
|
|
597
|
+
declare const SelectScrollDownButton: React$2.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectScrollDownButtonProps & React$2.RefAttributes<HTMLDivElement>, "ref"> & React$2.RefAttributes<HTMLDivElement>>;
|
|
598
|
+
declare const SelectContent: React$2.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectContentProps & React$2.RefAttributes<HTMLDivElement>, "ref"> & React$2.RefAttributes<HTMLDivElement>>;
|
|
599
|
+
declare const SelectLabel: React$2.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectLabelProps & React$2.RefAttributes<HTMLDivElement>, "ref"> & React$2.RefAttributes<HTMLDivElement>>;
|
|
600
|
+
declare const SelectItem: React$2.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectItemProps & React$2.RefAttributes<HTMLDivElement>, "ref"> & React$2.RefAttributes<HTMLDivElement>>;
|
|
601
|
+
declare const SelectSeparator: React$2.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectSeparatorProps & React$2.RefAttributes<HTMLDivElement>, "ref"> & React$2.RefAttributes<HTMLDivElement>>;
|
|
602
|
+
//#endregion
|
|
603
|
+
//#region src/components/ui/sidebar/SidebarButton.d.ts
|
|
604
|
+
interface SidebarButtonProps {
|
|
605
|
+
icon?: ReactNode;
|
|
606
|
+
children: ReactNode;
|
|
607
|
+
onClick?: () => void;
|
|
608
|
+
size?: 'default' | 'small';
|
|
609
|
+
badge?: string;
|
|
610
|
+
disabled?: boolean;
|
|
611
|
+
isSelected?: boolean;
|
|
612
|
+
/** When provided, renders as an anchor element instead of a button */
|
|
613
|
+
href?: string;
|
|
614
|
+
target?: React$1.HTMLAttributeAnchorTarget;
|
|
615
|
+
rel?: string;
|
|
616
|
+
className?: string;
|
|
617
|
+
}
|
|
618
|
+
/**
|
|
619
|
+
* A styled button component for sidebar actions with consistent styling.
|
|
620
|
+
* Can render as a button or anchor element depending on whether href is provided.
|
|
621
|
+
*/
|
|
622
|
+
declare function SidebarButton({
|
|
623
|
+
icon,
|
|
624
|
+
children,
|
|
625
|
+
onClick,
|
|
626
|
+
size,
|
|
627
|
+
badge,
|
|
628
|
+
disabled,
|
|
629
|
+
isSelected,
|
|
630
|
+
href,
|
|
631
|
+
target,
|
|
632
|
+
rel,
|
|
633
|
+
className
|
|
634
|
+
}: SidebarButtonProps): React$1.ReactElement;
|
|
635
|
+
//# sourceMappingURL=SidebarButton.d.ts.map
|
|
636
|
+
//#endregion
|
|
637
|
+
//#region src/components/ui/sidebar/SidebarLayout.d.ts
|
|
638
|
+
interface SidebarLayoutProps {
|
|
639
|
+
/** Content for the sidebar header (e.g., logo) */
|
|
640
|
+
header?: ReactNode;
|
|
641
|
+
/** Content to be displayed below the header but above the scrollable area */
|
|
642
|
+
subHeader?: ReactNode;
|
|
643
|
+
/** Main scrollable content area */
|
|
644
|
+
children: ReactNode;
|
|
645
|
+
/** Content for the fixed footer (e.g., nav icons) */
|
|
646
|
+
footer?: ReactNode;
|
|
647
|
+
/** Additional CSS classes for the sidebar container */
|
|
648
|
+
className?: string;
|
|
649
|
+
/** Width of the sidebar (default: 289px) */
|
|
650
|
+
width?: number | string;
|
|
651
|
+
/** Background color/class for the sidebar */
|
|
652
|
+
background?: string;
|
|
653
|
+
/** Controls visibility in mobile slide-over */
|
|
654
|
+
mobileOpen?: boolean;
|
|
655
|
+
/** Close handler for mobile slide-over */
|
|
656
|
+
onMobileOpenChange?: (open: boolean) => void;
|
|
657
|
+
/** Aria label for mobile dialog */
|
|
658
|
+
mobileAriaLabel?: string;
|
|
659
|
+
}
|
|
660
|
+
/**
|
|
661
|
+
* A flexible sidebar layout component with desktop sidebar and mobile slide-over.
|
|
662
|
+
* Provides slots for header, scrollable content, and footer.
|
|
663
|
+
*/
|
|
664
|
+
declare function SidebarLayout({
|
|
665
|
+
header,
|
|
666
|
+
subHeader,
|
|
667
|
+
children,
|
|
668
|
+
footer,
|
|
669
|
+
className,
|
|
670
|
+
width,
|
|
671
|
+
background,
|
|
672
|
+
mobileOpen,
|
|
673
|
+
onMobileOpenChange,
|
|
674
|
+
mobileAriaLabel
|
|
675
|
+
}: SidebarLayoutProps): React$1.ReactElement;
|
|
676
|
+
//# sourceMappingURL=SidebarLayout.d.ts.map
|
|
677
|
+
//#endregion
|
|
678
|
+
//#region src/components/ui/sidebar/SidebarSection.d.ts
|
|
679
|
+
interface SidebarSectionProps {
|
|
680
|
+
/** Optional section title displayed above the content */
|
|
681
|
+
title?: string;
|
|
682
|
+
/** Content to render within the section */
|
|
683
|
+
children: ReactNode;
|
|
684
|
+
/** Additional CSS classes */
|
|
685
|
+
className?: string;
|
|
686
|
+
/** CSS classes for the title element */
|
|
687
|
+
titleClassName?: string;
|
|
688
|
+
/** Whether this section should grow to fill available space */
|
|
689
|
+
grow?: boolean;
|
|
690
|
+
}
|
|
691
|
+
/**
|
|
692
|
+
* A generic sidebar section wrapper with optional title.
|
|
693
|
+
* Used to group related sidebar items together.
|
|
694
|
+
*/
|
|
695
|
+
declare function SidebarSection({
|
|
696
|
+
title,
|
|
697
|
+
children,
|
|
698
|
+
className,
|
|
699
|
+
titleClassName,
|
|
700
|
+
grow
|
|
701
|
+
}: SidebarSectionProps): React$1.ReactElement;
|
|
702
|
+
//# sourceMappingURL=SidebarSection.d.ts.map
|
|
703
|
+
//#endregion
|
|
704
|
+
//#region src/components/ui/tabs.d.ts
|
|
705
|
+
/** Tabs container component wrapping Radix UI Tabs Root. */
|
|
706
|
+
declare function Tabs({
|
|
707
|
+
className,
|
|
708
|
+
...props
|
|
709
|
+
}: React$2.ComponentProps<typeof TabsPrimitive.Root>): React$2.ReactElement;
|
|
710
|
+
/** Tabs list component containing tab triggers. */
|
|
711
|
+
declare function TabsList({
|
|
712
|
+
className,
|
|
713
|
+
...props
|
|
714
|
+
}: React$2.ComponentProps<typeof TabsPrimitive.List>): React$2.ReactElement;
|
|
715
|
+
/** Individual tab trigger button. */
|
|
716
|
+
declare function TabsTrigger({
|
|
717
|
+
className,
|
|
718
|
+
...props
|
|
719
|
+
}: React$2.ComponentProps<typeof TabsPrimitive.Trigger>): React$2.ReactElement;
|
|
720
|
+
/** Tab content panel displayed when its trigger is active. */
|
|
721
|
+
declare function TabsContent({
|
|
722
|
+
className,
|
|
723
|
+
...props
|
|
724
|
+
}: React$2.ComponentProps<typeof TabsPrimitive.Content>): React$2.ReactElement;
|
|
725
|
+
//#endregion
|
|
726
|
+
//#region src/components/ui/textarea.d.ts
|
|
727
|
+
type TextareaProps = React$2.TextareaHTMLAttributes<HTMLTextAreaElement>;
|
|
728
|
+
declare const Textarea: React$2.ForwardRefExoticComponent<TextareaProps & React$2.RefAttributes<HTMLTextAreaElement>>;
|
|
729
|
+
//#endregion
|
|
730
|
+
//#region src/components/ui/tooltip.d.ts
|
|
731
|
+
declare const TooltipProvider: React$2.FC<TooltipPrimitive.TooltipProviderProps>;
|
|
732
|
+
declare const Tooltip: React$2.FC<TooltipPrimitive.TooltipProps>;
|
|
733
|
+
declare const TooltipTrigger: React$2.ForwardRefExoticComponent<TooltipPrimitive.TooltipTriggerProps & React$2.RefAttributes<HTMLButtonElement>>;
|
|
734
|
+
declare const TooltipContent: React$2.ForwardRefExoticComponent<Omit<TooltipPrimitive.TooltipContentProps & React$2.RefAttributes<HTMLDivElement>, "ref"> & React$2.RefAttributes<HTMLDivElement>>;
|
|
735
|
+
//#endregion
|
|
736
|
+
//#region src/components/ui/view-contract-state-button.d.ts
|
|
737
|
+
interface ViewContractStateButtonProps {
|
|
738
|
+
contractAddress: string | null;
|
|
739
|
+
onToggle: () => void;
|
|
740
|
+
}
|
|
741
|
+
/**
|
|
742
|
+
* ViewContractStateButton - A button to toggle the contract state widget
|
|
743
|
+
* Shows the contract address in a truncated format
|
|
744
|
+
*/
|
|
745
|
+
declare function ViewContractStateButton({
|
|
746
|
+
contractAddress,
|
|
747
|
+
onToggle
|
|
748
|
+
}: ViewContractStateButtonProps): React$1.ReactElement | null;
|
|
749
|
+
//#endregion
|
|
750
|
+
//#region src/components/fields/BaseField.d.ts
|
|
751
|
+
/**
|
|
752
|
+
* Base props shared by all field components
|
|
753
|
+
*
|
|
754
|
+
* @template TFieldValues The field values type from React Hook Form
|
|
755
|
+
*/
|
|
756
|
+
interface BaseFieldProps<TFieldValues extends FieldValues = FieldValues> {
|
|
757
|
+
/**
|
|
758
|
+
* Unique identifier for the field
|
|
759
|
+
*/
|
|
760
|
+
id: string;
|
|
761
|
+
/**
|
|
762
|
+
* Label text to display
|
|
763
|
+
*/
|
|
764
|
+
label: string;
|
|
765
|
+
/**
|
|
766
|
+
* Placeholder text when empty
|
|
767
|
+
*/
|
|
768
|
+
placeholder?: string;
|
|
769
|
+
/**
|
|
770
|
+
* Helper text to display below the field
|
|
771
|
+
*/
|
|
772
|
+
helperText?: string;
|
|
773
|
+
/**
|
|
774
|
+
* Field width for layout
|
|
775
|
+
*/
|
|
776
|
+
width?: 'full' | 'half' | 'third';
|
|
777
|
+
/**
|
|
778
|
+
* Validation rules for the field
|
|
779
|
+
*/
|
|
780
|
+
validation?: FieldValidation;
|
|
781
|
+
/**
|
|
782
|
+
* Form control from React Hook Form
|
|
783
|
+
*/
|
|
784
|
+
control: Control<TFieldValues>;
|
|
785
|
+
/**
|
|
786
|
+
* Field name in the form
|
|
787
|
+
*/
|
|
788
|
+
name: FieldPath<TFieldValues>;
|
|
789
|
+
/**
|
|
790
|
+
* Whether the field should be displayed as read-only/disabled.
|
|
791
|
+
* @default false
|
|
792
|
+
*/
|
|
793
|
+
readOnly?: boolean;
|
|
794
|
+
}
|
|
795
|
+
/**
|
|
796
|
+
* BaseField component to provide a consistent layout for form fields
|
|
797
|
+
*
|
|
798
|
+
* @important This component is the foundation of the app rendering architecture and should
|
|
799
|
+
* ONLY be used by field-specific components within the system, not as a standalone component.
|
|
800
|
+
*
|
|
801
|
+
* Architecture role:
|
|
802
|
+
* 1. Provides a consistent layout structure for all field types
|
|
803
|
+
* 2. Handles integration with React Hook Form through the FormField component
|
|
804
|
+
* 3. Manages common rendering aspects like labels, error messages, and help text
|
|
805
|
+
* 4. Delegates actual input rendering to field-specific components via renderInput
|
|
806
|
+
*
|
|
807
|
+
* Field component hierarchy:
|
|
808
|
+
* - TransactionForm (top-level renderer)
|
|
809
|
+
* - DynamicFormField (field type selector)
|
|
810
|
+
* - Specific field components (TextField, NumberField, etc.)
|
|
811
|
+
* - BaseField (common field structure - this component)
|
|
812
|
+
* - Actual input element rendered by renderInput
|
|
813
|
+
*
|
|
814
|
+
* This component should only be extended by field-specific components like
|
|
815
|
+
* TextField, NumberField, and AddressField - it is not meant for direct use in forms.
|
|
816
|
+
*/
|
|
817
|
+
declare function BaseField<TFieldValues extends FieldValues = FieldValues>({
|
|
818
|
+
id,
|
|
819
|
+
label,
|
|
820
|
+
helperText,
|
|
821
|
+
control,
|
|
822
|
+
name,
|
|
823
|
+
width,
|
|
824
|
+
renderInput
|
|
825
|
+
}: BaseFieldProps<TFieldValues> & {
|
|
826
|
+
renderInput: (field: Record<string, unknown>, props: {
|
|
827
|
+
id: string;
|
|
828
|
+
ref?: ForwardedRef<HTMLElement>;
|
|
829
|
+
}) => ReactNode;
|
|
830
|
+
ref?: ForwardedRef<HTMLElement>;
|
|
831
|
+
}): ReactElement;
|
|
832
|
+
declare namespace BaseField {
|
|
833
|
+
var displayName: string;
|
|
834
|
+
}
|
|
835
|
+
//# sourceMappingURL=BaseField.d.ts.map
|
|
836
|
+
//#endregion
|
|
837
|
+
//#region src/components/fields/AddressField.d.ts
|
|
838
|
+
interface AddressFieldProps<TFieldValues extends FieldValues = FieldValues> extends BaseFieldProps<TFieldValues> {
|
|
839
|
+
adapter?: ContractAdapter;
|
|
840
|
+
}
|
|
841
|
+
/**
|
|
842
|
+
* Address input field component specifically designed for blockchain addresses via React Hook Form integration.
|
|
843
|
+
*
|
|
844
|
+
* Architecture flow:
|
|
845
|
+
* 1. Form schemas are generated from contract functions using adapters
|
|
846
|
+
* 2. TransactionForm renders the overall form structure with React Hook Form
|
|
847
|
+
* 3. DynamicFormField selects the appropriate field component (like AddressField) based on field type
|
|
848
|
+
* 4. BaseField provides consistent layout and hook form integration
|
|
849
|
+
* 5. This component handles blockchain address-specific rendering and validation using the passed adapter
|
|
850
|
+
*
|
|
851
|
+
* The component includes:
|
|
852
|
+
* - Integration with React Hook Form
|
|
853
|
+
* - Blockchain address validation through adapter-provided custom validation
|
|
854
|
+
* - Automatic error handling and reporting
|
|
855
|
+
* - Chain-agnostic design (validation handled by adapters)
|
|
856
|
+
* - Full accessibility support with ARIA attributes
|
|
857
|
+
* - Keyboard navigation
|
|
858
|
+
*/
|
|
859
|
+
declare function AddressField<TFieldValues extends FieldValues = FieldValues>({
|
|
860
|
+
id,
|
|
861
|
+
label,
|
|
862
|
+
placeholder,
|
|
863
|
+
helperText,
|
|
864
|
+
control,
|
|
865
|
+
name,
|
|
866
|
+
width,
|
|
867
|
+
validation,
|
|
868
|
+
adapter,
|
|
869
|
+
readOnly
|
|
870
|
+
}: AddressFieldProps<TFieldValues>): React$1.ReactElement;
|
|
871
|
+
declare namespace AddressField {
|
|
872
|
+
var displayName: string;
|
|
873
|
+
}
|
|
874
|
+
//#endregion
|
|
875
|
+
//#region src/components/fields/AmountField.d.ts
|
|
876
|
+
/**
|
|
877
|
+
* AmountField component properties
|
|
878
|
+
*/
|
|
879
|
+
interface AmountFieldProps<TFieldValues extends FieldValues = FieldValues> extends BaseFieldProps<TFieldValues> {
|
|
880
|
+
/**
|
|
881
|
+
* Minimum value validation
|
|
882
|
+
*/
|
|
883
|
+
min?: number;
|
|
884
|
+
/**
|
|
885
|
+
* Maximum value validation
|
|
886
|
+
*/
|
|
887
|
+
max?: number;
|
|
888
|
+
/**
|
|
889
|
+
* Step value for increment/decrement
|
|
890
|
+
*/
|
|
891
|
+
step?: number;
|
|
892
|
+
/**
|
|
893
|
+
* Number of decimal places to allow
|
|
894
|
+
*/
|
|
895
|
+
decimals?: number;
|
|
896
|
+
/**
|
|
897
|
+
* Currency/token symbol to display
|
|
898
|
+
*/
|
|
899
|
+
symbol?: string;
|
|
900
|
+
/**
|
|
901
|
+
* Position of the symbol (before or after the amount)
|
|
902
|
+
*/
|
|
903
|
+
symbolPosition?: 'prefix' | 'suffix';
|
|
904
|
+
/**
|
|
905
|
+
* Custom validation function for amount values
|
|
906
|
+
*/
|
|
907
|
+
validateAmount?: (value: number) => boolean | string;
|
|
908
|
+
}
|
|
909
|
+
/**
|
|
910
|
+
* Amount input field component specifically designed for currency/token amounts with React Hook Form integration.
|
|
911
|
+
*
|
|
912
|
+
* Architecture flow:
|
|
913
|
+
* 1. Form schemas are generated from contract functions using adapters
|
|
914
|
+
* 2. TransactionForm renders the overall form structure with React Hook Form
|
|
915
|
+
* 3. DynamicFormField selects the appropriate field component based on field type
|
|
916
|
+
* 4. BaseField provides consistent layout and hook form integration
|
|
917
|
+
* 5. This component handles amount-specific rendering and validation
|
|
918
|
+
*
|
|
919
|
+
* The component includes:
|
|
920
|
+
* - Integration with React Hook Form
|
|
921
|
+
* - Support for currency/token symbols
|
|
922
|
+
* - Numeric-specific validations (min, max, decimals)
|
|
923
|
+
* - Customizable validation through adapter integration
|
|
924
|
+
* - Automatic error handling and reporting
|
|
925
|
+
* - Full accessibility support with ARIA attributes
|
|
926
|
+
* - Keyboard navigation with arrow keys for numeric increment/decrement
|
|
927
|
+
*/
|
|
928
|
+
declare function AmountField<TFieldValues extends FieldValues = FieldValues>({
|
|
929
|
+
id,
|
|
930
|
+
label,
|
|
931
|
+
placeholder,
|
|
932
|
+
helperText,
|
|
933
|
+
control,
|
|
934
|
+
name,
|
|
935
|
+
width,
|
|
936
|
+
validation,
|
|
937
|
+
min,
|
|
938
|
+
max,
|
|
939
|
+
step,
|
|
940
|
+
decimals,
|
|
941
|
+
symbol,
|
|
942
|
+
symbolPosition,
|
|
943
|
+
validateAmount
|
|
944
|
+
}: AmountFieldProps<TFieldValues>): React$1.ReactElement;
|
|
945
|
+
declare namespace AmountField {
|
|
946
|
+
var displayName: string;
|
|
947
|
+
}
|
|
948
|
+
//# sourceMappingURL=AmountField.d.ts.map
|
|
949
|
+
//#endregion
|
|
950
|
+
//#region src/components/fields/ArrayField.d.ts
|
|
951
|
+
/**
|
|
952
|
+
* ArrayField component properties
|
|
953
|
+
*/
|
|
954
|
+
interface ArrayFieldProps<TFieldValues extends FieldValues = FieldValues> extends BaseFieldProps<TFieldValues> {
|
|
955
|
+
/**
|
|
956
|
+
* The type of elements in the array (e.g., 'text', 'number', 'blockchain-address')
|
|
957
|
+
*/
|
|
958
|
+
elementType?: FormFieldType['type'];
|
|
959
|
+
/**
|
|
960
|
+
* Minimum number of array elements
|
|
961
|
+
*/
|
|
962
|
+
minItems?: number;
|
|
963
|
+
/**
|
|
964
|
+
* Maximum number of array elements
|
|
965
|
+
*/
|
|
966
|
+
maxItems?: number;
|
|
967
|
+
/**
|
|
968
|
+
* Base configuration for array element fields.
|
|
969
|
+
* This allows specifying common properties like placeholder, helperText, or specific validation
|
|
970
|
+
* for each element in the array.
|
|
971
|
+
*/
|
|
972
|
+
elementFieldConfig?: Partial<FormFieldType>;
|
|
973
|
+
/**
|
|
974
|
+
* Render function for array elements.
|
|
975
|
+
* This is crucial for rendering complex elements or integrating custom field components.
|
|
976
|
+
*/
|
|
977
|
+
renderElement?: (field: FormFieldType, index: number) => React$1.ReactNode;
|
|
978
|
+
}
|
|
979
|
+
/**
|
|
980
|
+
* Array input field component specifically designed for React Hook Form integration.
|
|
981
|
+
*
|
|
982
|
+
* This component provides a dynamic interface for managing array inputs with:
|
|
983
|
+
* - Add/remove functionality for array items
|
|
984
|
+
* - Validation for array length constraints
|
|
985
|
+
* - Integration with existing field components for array elements
|
|
986
|
+
* - Full accessibility support
|
|
987
|
+
*
|
|
988
|
+
* The component reuses existing field components (TextField, NumberField, etc.)
|
|
989
|
+
* for individual array elements, maintaining consistency across the form system.
|
|
990
|
+
*
|
|
991
|
+
* Why the extra guards and synchronization exist (post-mortem/rationale):
|
|
992
|
+
* - In certain runtime states (StrictMode double-invocation, preview remounts, state rehydration
|
|
993
|
+
* from storage), React Hook Form's useFieldArray may not synchronously reflect an `append()`
|
|
994
|
+
* or `remove()` call in the immediately subsequent read (e.g., reading `fields.length` or
|
|
995
|
+
* `getValues(name)` right after the call). This resulted in newly added items (especially
|
|
996
|
+
* falsy defaults like 0/false) appearing briefly and then disappearing, or remove operations
|
|
997
|
+
* not updating the UI.
|
|
998
|
+
* - To make array operations deterministic and resilient across flows (preview form with
|
|
999
|
+
* FormProvider and the wizard's "Use Hardcoded Value" without a provider), we:
|
|
1000
|
+
* 1) Read a stable snapshot of the array value BEFORE `append()` and, if the immediate
|
|
1001
|
+
* post-append read doesn't reflect the addition, we coerce the state to
|
|
1002
|
+
* "previousSnapshot + newValue" via `setValue` (when context exists) or `replace`.
|
|
1003
|
+
* 2) Avoid `remove()` race conditions by always computing the new array via filter and
|
|
1004
|
+
* applying it with `replace`, which proved to be the most consistent across contexts.
|
|
1005
|
+
* 3) Keep `fields` in sync with the watched array value using a guarded `replace` in an effect.
|
|
1006
|
+
* A ref flag (`isReplacingRef`) prevents infinite loops when we ourselves are driving
|
|
1007
|
+
* the `replace`.
|
|
1008
|
+
* 4) Use optional chaining for form context (`formContext?.control`, `formContext?.getValues`,
|
|
1009
|
+
* `formContext?.setValue`) so the component works with either an inherited FormProvider or
|
|
1010
|
+
* an explicit `control` prop.
|
|
1011
|
+
* 5) Use `queueMicrotask` to reset the guard flag after our `replace` has been scheduled,
|
|
1012
|
+
* avoiding an extra timer tick while ensuring the effect observes the final state.
|
|
1013
|
+
*
|
|
1014
|
+
* Guarantees:
|
|
1015
|
+
* - Operations are idempotent: the fallback only runs when the immediate read does not reflect
|
|
1016
|
+
* the intended state, so we don't double-append/remove.
|
|
1017
|
+
* - Works both with and without FormProvider (preview vs wizard) due to context-agnostic state
|
|
1018
|
+
* reads and `replace` fallback.
|
|
1019
|
+
*/
|
|
1020
|
+
declare function ArrayField<TFieldValues extends FieldValues = FieldValues>({
|
|
1021
|
+
id,
|
|
1022
|
+
label,
|
|
1023
|
+
helperText,
|
|
1024
|
+
control,
|
|
1025
|
+
name,
|
|
1026
|
+
width,
|
|
1027
|
+
validation,
|
|
1028
|
+
elementType,
|
|
1029
|
+
minItems,
|
|
1030
|
+
maxItems,
|
|
1031
|
+
elementFieldConfig,
|
|
1032
|
+
renderElement,
|
|
1033
|
+
readOnly
|
|
1034
|
+
}: ArrayFieldProps<TFieldValues>): React$1.ReactElement;
|
|
1035
|
+
declare namespace ArrayField {
|
|
1036
|
+
var displayName: string;
|
|
1037
|
+
}
|
|
1038
|
+
//# sourceMappingURL=ArrayField.d.ts.map
|
|
1039
|
+
//#endregion
|
|
1040
|
+
//#region src/components/fields/ArrayObjectField.d.ts
|
|
1041
|
+
/**
|
|
1042
|
+
* ArrayObjectField component properties
|
|
1043
|
+
*/
|
|
1044
|
+
interface ArrayObjectFieldProps<TFieldValues extends FieldValues = FieldValues> extends BaseFieldProps<TFieldValues> {
|
|
1045
|
+
/**
|
|
1046
|
+
* The components/properties of each object in the array.
|
|
1047
|
+
* Defines the schema for the nested fields within each object item.
|
|
1048
|
+
*/
|
|
1049
|
+
components?: FunctionParameter[];
|
|
1050
|
+
/**
|
|
1051
|
+
* Minimum number of array elements
|
|
1052
|
+
*/
|
|
1053
|
+
minItems?: number;
|
|
1054
|
+
/**
|
|
1055
|
+
* Maximum number of array elements
|
|
1056
|
+
*/
|
|
1057
|
+
maxItems?: number;
|
|
1058
|
+
/**
|
|
1059
|
+
* Render function for object properties.
|
|
1060
|
+
* This function is responsible for rendering each individual property
|
|
1061
|
+
* of an object within an array item.
|
|
1062
|
+
*/
|
|
1063
|
+
renderProperty?: (field: FormFieldType, itemIndex: number, propertyName: string) => React$1.ReactNode;
|
|
1064
|
+
/**
|
|
1065
|
+
* Whether items should be collapsible.
|
|
1066
|
+
* Useful for managing UI complexity when objects have many properties.
|
|
1067
|
+
*/
|
|
1068
|
+
collapsible?: boolean;
|
|
1069
|
+
/**
|
|
1070
|
+
* Whether items should start collapsed.
|
|
1071
|
+
*/
|
|
1072
|
+
defaultCollapsed?: boolean;
|
|
1073
|
+
/**
|
|
1074
|
+
* The adapter for chain-specific type mapping.
|
|
1075
|
+
* Essential for correctly determining field types for object properties.
|
|
1076
|
+
*/
|
|
1077
|
+
adapter?: ContractAdapter;
|
|
1078
|
+
/**
|
|
1079
|
+
* Optional contract schema to enrich nested field generation.
|
|
1080
|
+
*/
|
|
1081
|
+
contractSchema?: ContractSchema;
|
|
1082
|
+
}
|
|
1083
|
+
/**
|
|
1084
|
+
* Array of objects input field component specifically designed for React Hook Form integration.
|
|
1085
|
+
*
|
|
1086
|
+
* This component provides a dynamic interface for managing arrays of composite objects with:
|
|
1087
|
+
* - Add/remove functionality for array items
|
|
1088
|
+
* - Structured rendering of object properties within each array item
|
|
1089
|
+
* - Collapsible items for better UX with complex objects
|
|
1090
|
+
* - Validation for array constraints and object properties (though individual property validation is largely via rendered component)
|
|
1091
|
+
* - Full accessibility support
|
|
1092
|
+
*
|
|
1093
|
+
* The component combines the functionality of ArrayField and ObjectField to handle
|
|
1094
|
+
* complex nested data structures commonly found in blockchain contracts.
|
|
1095
|
+
*/
|
|
1096
|
+
declare function ArrayObjectField<TFieldValues extends FieldValues = FieldValues>({
|
|
1097
|
+
id,
|
|
1098
|
+
label,
|
|
1099
|
+
helperText,
|
|
1100
|
+
control,
|
|
1101
|
+
name,
|
|
1102
|
+
width,
|
|
1103
|
+
validation,
|
|
1104
|
+
components,
|
|
1105
|
+
minItems,
|
|
1106
|
+
maxItems,
|
|
1107
|
+
renderProperty,
|
|
1108
|
+
collapsible,
|
|
1109
|
+
defaultCollapsed,
|
|
1110
|
+
readOnly,
|
|
1111
|
+
adapter,
|
|
1112
|
+
contractSchema
|
|
1113
|
+
}: ArrayObjectFieldProps<TFieldValues>): React$1.ReactElement;
|
|
1114
|
+
declare namespace ArrayObjectField {
|
|
1115
|
+
var displayName: string;
|
|
1116
|
+
}
|
|
1117
|
+
//# sourceMappingURL=ArrayObjectField.d.ts.map
|
|
1118
|
+
//#endregion
|
|
1119
|
+
//#region src/components/fields/BigIntField.d.ts
|
|
1120
|
+
/**
|
|
1121
|
+
* BigIntField component properties
|
|
1122
|
+
*/
|
|
1123
|
+
interface BigIntFieldProps<TFieldValues extends FieldValues = FieldValues> extends BaseFieldProps<TFieldValues> {
|
|
1124
|
+
/**
|
|
1125
|
+
* Custom validation function for big integer string values
|
|
1126
|
+
*/
|
|
1127
|
+
validateBigInt?: (value: string) => boolean | string;
|
|
1128
|
+
}
|
|
1129
|
+
/**
|
|
1130
|
+
* Big integer input field component for large numbers beyond JavaScript's Number precision.
|
|
1131
|
+
*
|
|
1132
|
+
* This component is designed for blockchain integer types like uint128, uint256, int128, int256
|
|
1133
|
+
* that can hold values larger than JavaScript's Number.MAX_SAFE_INTEGER (2^53 - 1).
|
|
1134
|
+
*
|
|
1135
|
+
* Architecture flow:
|
|
1136
|
+
* 1. Form schemas are generated from contract functions using adapters
|
|
1137
|
+
* 2. TransactionForm renders the overall form structure with React Hook Form
|
|
1138
|
+
* 3. DynamicFormField selects BigIntField for large integer types
|
|
1139
|
+
* 4. This component handles string-based integer input with validation
|
|
1140
|
+
* 5. Adapters convert the string to BigInt when submitting transactions
|
|
1141
|
+
*
|
|
1142
|
+
* The component includes:
|
|
1143
|
+
* - Integer-only validation (no decimals allowed)
|
|
1144
|
+
* - String-based storage to avoid JavaScript Number precision issues
|
|
1145
|
+
* - Integration with React Hook Form
|
|
1146
|
+
* - Automatic error handling and reporting
|
|
1147
|
+
* - Full accessibility support with ARIA attributes
|
|
1148
|
+
* - Keyboard navigation
|
|
1149
|
+
*/
|
|
1150
|
+
declare function BigIntField<TFieldValues extends FieldValues = FieldValues>({
|
|
1151
|
+
id,
|
|
1152
|
+
label,
|
|
1153
|
+
placeholder,
|
|
1154
|
+
helperText,
|
|
1155
|
+
control,
|
|
1156
|
+
name,
|
|
1157
|
+
width,
|
|
1158
|
+
validation,
|
|
1159
|
+
validateBigInt,
|
|
1160
|
+
readOnly
|
|
1161
|
+
}: BigIntFieldProps<TFieldValues>): React$1.ReactElement;
|
|
1162
|
+
declare namespace BigIntField {
|
|
1163
|
+
var displayName: string;
|
|
1164
|
+
}
|
|
1165
|
+
//# sourceMappingURL=BigIntField.d.ts.map
|
|
1166
|
+
//#endregion
|
|
1167
|
+
//#region src/components/fields/BooleanField.d.ts
|
|
1168
|
+
/**
|
|
1169
|
+
* BooleanField component properties
|
|
1170
|
+
*/
|
|
1171
|
+
interface BooleanFieldProps<TFieldValues extends FieldValues = FieldValues> extends BaseFieldProps<TFieldValues> {
|
|
1172
|
+
/**
|
|
1173
|
+
* Custom validation function for boolean values
|
|
1174
|
+
*/
|
|
1175
|
+
validateBoolean?: (value: boolean) => boolean | string;
|
|
1176
|
+
}
|
|
1177
|
+
/**
|
|
1178
|
+
* Boolean input field component (checkbox) specifically designed for React Hook Form integration.
|
|
1179
|
+
*
|
|
1180
|
+
* Architecture flow:
|
|
1181
|
+
* 1. Form schemas are generated from contract functions using adapters
|
|
1182
|
+
* 2. TransactionForm renders the overall form structure with React Hook Form
|
|
1183
|
+
* 3. DynamicFormField selects the appropriate field component (like BooleanField) based on field type
|
|
1184
|
+
* 4. BaseField provides consistent layout and hook form integration
|
|
1185
|
+
* 5. This component handles boolean-specific rendering and validation
|
|
1186
|
+
*
|
|
1187
|
+
* The component includes:
|
|
1188
|
+
* - Integration with React Hook Form
|
|
1189
|
+
* - Checkbox-specific behavior
|
|
1190
|
+
* - Customizable validation through adapter integration
|
|
1191
|
+
* - Automatic error handling and reporting
|
|
1192
|
+
* - Full accessibility support with ARIA attributes
|
|
1193
|
+
* - Keyboard navigation with Space/Enter for toggling
|
|
1194
|
+
*/
|
|
1195
|
+
declare function BooleanField<TFieldValues extends FieldValues = FieldValues>({
|
|
1196
|
+
id,
|
|
1197
|
+
label,
|
|
1198
|
+
helperText,
|
|
1199
|
+
control,
|
|
1200
|
+
name,
|
|
1201
|
+
width,
|
|
1202
|
+
validation,
|
|
1203
|
+
validateBoolean,
|
|
1204
|
+
readOnly
|
|
1205
|
+
}: BooleanFieldProps<TFieldValues>): React$1.ReactElement;
|
|
1206
|
+
declare namespace BooleanField {
|
|
1207
|
+
var displayName: string;
|
|
1208
|
+
}
|
|
1209
|
+
//# sourceMappingURL=BooleanField.d.ts.map
|
|
1210
|
+
//#endregion
|
|
1211
|
+
//#region src/components/fields/BytesField.d.ts
|
|
1212
|
+
/**
|
|
1213
|
+
* BytesField component properties
|
|
1214
|
+
*/
|
|
1215
|
+
interface BytesFieldProps<TFieldValues extends FieldValues = FieldValues> extends BaseFieldProps<TFieldValues> {
|
|
1216
|
+
/**
|
|
1217
|
+
* Number of rows for the textarea
|
|
1218
|
+
*/
|
|
1219
|
+
rows?: number;
|
|
1220
|
+
/**
|
|
1221
|
+
* Maximum length in bytes (not characters)
|
|
1222
|
+
*/
|
|
1223
|
+
maxBytes?: number;
|
|
1224
|
+
/**
|
|
1225
|
+
* Whether to accept hex, base64, or both formats
|
|
1226
|
+
*/
|
|
1227
|
+
acceptedFormats?: 'hex' | 'base64' | 'both';
|
|
1228
|
+
/**
|
|
1229
|
+
* Whether to automatically add/remove 0x prefix for hex values
|
|
1230
|
+
*/
|
|
1231
|
+
autoPrefix?: boolean;
|
|
1232
|
+
/**
|
|
1233
|
+
* Whether to allow 0x prefix in hex input (defaults to true)
|
|
1234
|
+
*/
|
|
1235
|
+
allowHexPrefix?: boolean;
|
|
1236
|
+
}
|
|
1237
|
+
/**
|
|
1238
|
+
* Specialized input field for bytes data with built-in hex/base64 validation.
|
|
1239
|
+
*
|
|
1240
|
+
* This component provides proper validation for blockchain bytes data including:
|
|
1241
|
+
* - Hex encoding validation (with optional 0x prefix support)
|
|
1242
|
+
* - Base64 encoding validation
|
|
1243
|
+
* - Byte length validation
|
|
1244
|
+
* - Format detection and conversion
|
|
1245
|
+
*
|
|
1246
|
+
* Key props for EVM compatibility:
|
|
1247
|
+
* - `allowHexPrefix`: Whether to accept 0x prefixed input (defaults to true)
|
|
1248
|
+
* - `autoPrefix`: Whether to automatically add 0x prefixes (defaults to false)
|
|
1249
|
+
*
|
|
1250
|
+
* These are separate concerns - you can accept 0x input without auto-adding prefixes.
|
|
1251
|
+
*
|
|
1252
|
+
* Architecture flow:
|
|
1253
|
+
* 1. Form schemas are generated from contract functions using adapters
|
|
1254
|
+
* 2. TransactionForm renders the overall form structure with React Hook Form
|
|
1255
|
+
* 3. DynamicFormField selects BytesField for 'bytes' field types
|
|
1256
|
+
* 4. BaseField provides consistent layout and hook form integration
|
|
1257
|
+
* 5. This component handles bytes-specific validation and formatting
|
|
1258
|
+
*/
|
|
1259
|
+
declare function BytesField<TFieldValues extends FieldValues = FieldValues>({
|
|
1260
|
+
id,
|
|
1261
|
+
label,
|
|
1262
|
+
helperText,
|
|
1263
|
+
control,
|
|
1264
|
+
name,
|
|
1265
|
+
width,
|
|
1266
|
+
validation,
|
|
1267
|
+
placeholder,
|
|
1268
|
+
rows,
|
|
1269
|
+
maxBytes,
|
|
1270
|
+
acceptedFormats,
|
|
1271
|
+
autoPrefix,
|
|
1272
|
+
allowHexPrefix,
|
|
1273
|
+
readOnly
|
|
1274
|
+
}: BytesFieldProps<TFieldValues>): React$1.ReactElement;
|
|
1275
|
+
declare namespace BytesField {
|
|
1276
|
+
var displayName: string;
|
|
1277
|
+
}
|
|
1278
|
+
//# sourceMappingURL=BytesField.d.ts.map
|
|
1279
|
+
//#endregion
|
|
1280
|
+
//#region src/components/fields/CodeEditorField.d.ts
|
|
1281
|
+
/**
|
|
1282
|
+
* CodeEditorField component properties
|
|
1283
|
+
*/
|
|
1284
|
+
interface CodeEditorFieldProps<TFieldValues extends FieldValues = FieldValues> {
|
|
1285
|
+
/**
|
|
1286
|
+
* Unique identifier for the field
|
|
1287
|
+
*/
|
|
1288
|
+
id: string;
|
|
1289
|
+
/**
|
|
1290
|
+
* Optional CSS class name for the container
|
|
1291
|
+
*/
|
|
1292
|
+
className?: string;
|
|
1293
|
+
/**
|
|
1294
|
+
* Field name for form control
|
|
1295
|
+
*/
|
|
1296
|
+
name: Path<TFieldValues>;
|
|
1297
|
+
/**
|
|
1298
|
+
* React Hook Form control object
|
|
1299
|
+
*/
|
|
1300
|
+
control: Control<TFieldValues>;
|
|
1301
|
+
/**
|
|
1302
|
+
* Field label
|
|
1303
|
+
*/
|
|
1304
|
+
label?: string;
|
|
1305
|
+
/**
|
|
1306
|
+
* Helper text displayed below the field
|
|
1307
|
+
*/
|
|
1308
|
+
helperText?: string;
|
|
1309
|
+
/**
|
|
1310
|
+
* Placeholder text when empty
|
|
1311
|
+
*/
|
|
1312
|
+
placeholder?: string;
|
|
1313
|
+
/**
|
|
1314
|
+
* Programming language for syntax highlighting
|
|
1315
|
+
*/
|
|
1316
|
+
language?: string;
|
|
1317
|
+
/**
|
|
1318
|
+
* Editor theme
|
|
1319
|
+
*/
|
|
1320
|
+
theme?: string;
|
|
1321
|
+
/**
|
|
1322
|
+
* Editor height
|
|
1323
|
+
*/
|
|
1324
|
+
height?: string;
|
|
1325
|
+
/**
|
|
1326
|
+
* Editor maximum height (with scrollbar for overflow)
|
|
1327
|
+
*/
|
|
1328
|
+
maxHeight?: string;
|
|
1329
|
+
/**
|
|
1330
|
+
* Content size threshold for disabling syntax highlighting (default: 5000 chars)
|
|
1331
|
+
*/
|
|
1332
|
+
performanceThreshold?: number;
|
|
1333
|
+
/**
|
|
1334
|
+
* Whether the field is required
|
|
1335
|
+
*/
|
|
1336
|
+
required?: boolean;
|
|
1337
|
+
/**
|
|
1338
|
+
* Whether the field is disabled
|
|
1339
|
+
*/
|
|
1340
|
+
disabled?: boolean;
|
|
1341
|
+
/**
|
|
1342
|
+
* Whether the field is read-only
|
|
1343
|
+
*/
|
|
1344
|
+
readOnly?: boolean;
|
|
1345
|
+
/**
|
|
1346
|
+
* Custom validation function for code values
|
|
1347
|
+
*/
|
|
1348
|
+
validateCode?: (value: string) => boolean | string;
|
|
1349
|
+
}
|
|
1350
|
+
/**
|
|
1351
|
+
* CodeEditorField provides syntax-highlighted code editing with form integration.
|
|
1352
|
+
*
|
|
1353
|
+
* Features:
|
|
1354
|
+
* - Syntax highlighting via @uiw/react-textarea-code-editor
|
|
1355
|
+
* - React Hook Form integration with Controller
|
|
1356
|
+
* - Configurable language support (JSON, TypeScript, etc.)
|
|
1357
|
+
* - Performance optimizations with smart highlighting
|
|
1358
|
+
* - Constrained height with automatic scrolling
|
|
1359
|
+
* - Design system styling integration
|
|
1360
|
+
*
|
|
1361
|
+
* @example
|
|
1362
|
+
* ```tsx
|
|
1363
|
+
* <CodeEditorField
|
|
1364
|
+
* id="contractAbi"
|
|
1365
|
+
* name="contractSchema"
|
|
1366
|
+
* control={control}
|
|
1367
|
+
* label="Contract ABI"
|
|
1368
|
+
* language="json"
|
|
1369
|
+
* placeholder="Paste your ABI JSON here..."
|
|
1370
|
+
* />
|
|
1371
|
+
* ```
|
|
1372
|
+
*/
|
|
1373
|
+
declare function CodeEditorField<TFieldValues extends FieldValues = FieldValues>({
|
|
1374
|
+
id,
|
|
1375
|
+
name,
|
|
1376
|
+
control,
|
|
1377
|
+
label,
|
|
1378
|
+
helperText,
|
|
1379
|
+
placeholder,
|
|
1380
|
+
language,
|
|
1381
|
+
theme,
|
|
1382
|
+
height,
|
|
1383
|
+
maxHeight,
|
|
1384
|
+
performanceThreshold,
|
|
1385
|
+
required,
|
|
1386
|
+
disabled,
|
|
1387
|
+
readOnly,
|
|
1388
|
+
validateCode,
|
|
1389
|
+
className
|
|
1390
|
+
}: CodeEditorFieldProps<TFieldValues>): React$1.ReactElement;
|
|
1391
|
+
declare namespace CodeEditorField {
|
|
1392
|
+
var displayName: string;
|
|
1393
|
+
}
|
|
1394
|
+
//# sourceMappingURL=CodeEditorField.d.ts.map
|
|
1395
|
+
//#endregion
|
|
1396
|
+
//#region src/components/fields/DateTimeField.d.ts
|
|
1397
|
+
/**
|
|
1398
|
+
* DateTimeField component properties
|
|
1399
|
+
*/
|
|
1400
|
+
interface DateTimeFieldProps<TFieldValues extends FieldValues = FieldValues> extends BaseFieldProps<TFieldValues> {
|
|
1401
|
+
/**
|
|
1402
|
+
* Placeholder text displayed when the field is empty
|
|
1403
|
+
*/
|
|
1404
|
+
placeholder?: string;
|
|
1405
|
+
/**
|
|
1406
|
+
* If true, clears the field when user clicks Escape; otherwise just blurs
|
|
1407
|
+
*/
|
|
1408
|
+
clearOnEscape?: boolean;
|
|
1409
|
+
}
|
|
1410
|
+
/**
|
|
1411
|
+
* Datetime-local input field component specifically designed for React Hook Form integration.
|
|
1412
|
+
*
|
|
1413
|
+
* Architecture flow:
|
|
1414
|
+
* 1. Form schemas are generated from contract functions using adapters
|
|
1415
|
+
* 2. TransactionForm renders the overall form structure with React Hook Form
|
|
1416
|
+
* 3. DynamicFormField selects the appropriate field component (like DateTimeField) based on field type
|
|
1417
|
+
* 4. BaseField provides consistent layout and hook form integration
|
|
1418
|
+
* 5. This component handles date-time specific rendering, conversion, and validation
|
|
1419
|
+
*
|
|
1420
|
+
* The component includes:
|
|
1421
|
+
* - Integration with React Hook Form
|
|
1422
|
+
* - Conversion between input value (YYYY-MM-DDTHH:mm) and ISO 8601 strings (toISOString)
|
|
1423
|
+
* - Customizable validation through adapter integration
|
|
1424
|
+
* - Automatic error handling and reporting
|
|
1425
|
+
* - Full accessibility support with ARIA attributes
|
|
1426
|
+
* - Keyboard navigation with Escape-to-clear behavior
|
|
1427
|
+
*/
|
|
1428
|
+
declare function DateTimeField<TFieldValues extends FieldValues = FieldValues>({
|
|
1429
|
+
id,
|
|
1430
|
+
label,
|
|
1431
|
+
placeholder,
|
|
1432
|
+
helperText,
|
|
1433
|
+
control,
|
|
1434
|
+
name,
|
|
1435
|
+
width,
|
|
1436
|
+
validation,
|
|
1437
|
+
readOnly,
|
|
1438
|
+
clearOnEscape
|
|
1439
|
+
}: DateTimeFieldProps<TFieldValues>): React$1.ReactElement;
|
|
1440
|
+
declare namespace DateTimeField {
|
|
1441
|
+
var displayName: string;
|
|
1442
|
+
}
|
|
1443
|
+
//# sourceMappingURL=DateTimeField.d.ts.map
|
|
1444
|
+
//#endregion
|
|
1445
|
+
//#region src/components/fields/EnumField.d.ts
|
|
1446
|
+
/**
|
|
1447
|
+
* Enum variant definition
|
|
1448
|
+
*/
|
|
1449
|
+
interface EnumVariant {
|
|
1450
|
+
/** Name of the variant (e.g., 'One', 'Two', 'Three') */
|
|
1451
|
+
name: string;
|
|
1452
|
+
/** Type of variant: 'void' for unit variants, 'tuple' for variants with payload, 'integer' for numeric enums */
|
|
1453
|
+
type: 'void' | 'tuple' | 'integer';
|
|
1454
|
+
/** For tuple variants: array of payload type names (e.g., ['U32', 'ScString']) */
|
|
1455
|
+
payloadTypes?: string[];
|
|
1456
|
+
/** Optional nested component definitions for tuple payload entries */
|
|
1457
|
+
payloadComponents?: (FunctionParameter[] | undefined)[];
|
|
1458
|
+
/** For integer variants: the numeric value */
|
|
1459
|
+
value?: number;
|
|
1460
|
+
/** Flag indicating if this variant has a single Tuple payload (for serialization) */
|
|
1461
|
+
isSingleTuplePayload?: boolean;
|
|
1462
|
+
}
|
|
1463
|
+
/**
|
|
1464
|
+
* Enum metadata extracted from contract spec
|
|
1465
|
+
*/
|
|
1466
|
+
interface EnumMetadata {
|
|
1467
|
+
/** Name of the enum type */
|
|
1468
|
+
name: string;
|
|
1469
|
+
/** Array of variants in the enum */
|
|
1470
|
+
variants: EnumVariant[];
|
|
1471
|
+
/** True if all variants are unit variants (no payloads), suitable for simple select/radio */
|
|
1472
|
+
isUnitOnly: boolean;
|
|
1473
|
+
}
|
|
1474
|
+
/**
|
|
1475
|
+
* Enum field value structure for blockchain enum types
|
|
1476
|
+
*/
|
|
1477
|
+
type EnumFieldValue = EnumValue;
|
|
1478
|
+
/**
|
|
1479
|
+
* EnumField component properties
|
|
1480
|
+
*/
|
|
1481
|
+
interface EnumFieldProps<TFieldValues extends FieldValues = FieldValues> extends BaseFieldProps<TFieldValues> {
|
|
1482
|
+
/**
|
|
1483
|
+
* Enum metadata containing variant information
|
|
1484
|
+
*/
|
|
1485
|
+
enumMetadata?: EnumMetadata;
|
|
1486
|
+
/**
|
|
1487
|
+
* Custom validation function for enum values
|
|
1488
|
+
*/
|
|
1489
|
+
validateEnum?: (value: EnumFieldValue) => boolean | string;
|
|
1490
|
+
/**
|
|
1491
|
+
* Render function for payload input fields.
|
|
1492
|
+
* This allows the parent component to provide appropriate field components
|
|
1493
|
+
* based on the payload type, maintaining separation of concerns.
|
|
1494
|
+
*/
|
|
1495
|
+
renderPayloadField?: (field: FormFieldType, payloadIndex: number) => React$1.ReactNode;
|
|
1496
|
+
}
|
|
1497
|
+
/**
|
|
1498
|
+
* Composite enum field component for blockchain enum types.
|
|
1499
|
+
*
|
|
1500
|
+
* This component handles both unit enums (simple variants) and tagged enums (variants with payloads).
|
|
1501
|
+
* For unit enums, it renders as a simple select dropdown.
|
|
1502
|
+
* For tagged enums, it renders a variant picker plus conditional input fields for payload data.
|
|
1503
|
+
*
|
|
1504
|
+
* The value format is designed to be chain-agnostic:
|
|
1505
|
+
* - Unit variants: { tag: "VariantName" }
|
|
1506
|
+
* - Tuple variants: { tag: "VariantName", values: [...] }
|
|
1507
|
+
*/
|
|
1508
|
+
declare function EnumField<TFieldValues extends FieldValues = FieldValues>({
|
|
1509
|
+
id,
|
|
1510
|
+
label,
|
|
1511
|
+
placeholder,
|
|
1512
|
+
helperText,
|
|
1513
|
+
control,
|
|
1514
|
+
name,
|
|
1515
|
+
width,
|
|
1516
|
+
validation,
|
|
1517
|
+
enumMetadata,
|
|
1518
|
+
validateEnum,
|
|
1519
|
+
renderPayloadField,
|
|
1520
|
+
readOnly
|
|
1521
|
+
}: EnumFieldProps<TFieldValues>): React$1.ReactElement;
|
|
1522
|
+
declare namespace EnumField {
|
|
1523
|
+
var displayName: string;
|
|
1524
|
+
}
|
|
1525
|
+
//# sourceMappingURL=EnumField.d.ts.map
|
|
1526
|
+
//#endregion
|
|
1527
|
+
//#region src/components/fields/FileUploadField.d.ts
|
|
1528
|
+
/**
|
|
1529
|
+
* FileUploadField component properties
|
|
1530
|
+
*/
|
|
1531
|
+
interface FileUploadFieldProps<TFieldValues extends FieldValues = FieldValues> extends BaseFieldProps<TFieldValues> {
|
|
1532
|
+
/**
|
|
1533
|
+
* Accepted file types (e.g., ".zip,.tar.gz")
|
|
1534
|
+
*/
|
|
1535
|
+
accept?: string;
|
|
1536
|
+
/**
|
|
1537
|
+
* Maximum file size in bytes
|
|
1538
|
+
*/
|
|
1539
|
+
maxSize?: number;
|
|
1540
|
+
/**
|
|
1541
|
+
* Whether to convert the file to base64 string
|
|
1542
|
+
*/
|
|
1543
|
+
convertToBase64?: boolean;
|
|
1544
|
+
}
|
|
1545
|
+
/** File upload field component with drag-and-drop support. */
|
|
1546
|
+
declare function FileUploadField<TFieldValues extends FieldValues = FieldValues>({
|
|
1547
|
+
id,
|
|
1548
|
+
label,
|
|
1549
|
+
placeholder,
|
|
1550
|
+
helperText,
|
|
1551
|
+
control,
|
|
1552
|
+
name,
|
|
1553
|
+
width,
|
|
1554
|
+
validation,
|
|
1555
|
+
readOnly,
|
|
1556
|
+
accept,
|
|
1557
|
+
maxSize,
|
|
1558
|
+
convertToBase64
|
|
1559
|
+
}: FileUploadFieldProps<TFieldValues>): React.ReactElement;
|
|
1560
|
+
//# sourceMappingURL=FileUploadField.d.ts.map
|
|
1561
|
+
//#endregion
|
|
1562
|
+
//#region src/components/fields/MapField/MapField.d.ts
|
|
1563
|
+
/**
|
|
1564
|
+
* MapField component properties
|
|
1565
|
+
*/
|
|
1566
|
+
interface MapFieldProps<TFieldValues extends FieldValues = FieldValues> extends BaseFieldProps<TFieldValues> {
|
|
1567
|
+
/**
|
|
1568
|
+
* Map metadata containing key and value type information
|
|
1569
|
+
*/
|
|
1570
|
+
mapMetadata?: {
|
|
1571
|
+
keyType?: string;
|
|
1572
|
+
valueType?: string;
|
|
1573
|
+
keyFieldConfig?: Partial<FormFieldType>;
|
|
1574
|
+
valueFieldConfig?: Partial<FormFieldType>;
|
|
1575
|
+
};
|
|
1576
|
+
/**
|
|
1577
|
+
* Minimum number of map entries
|
|
1578
|
+
*/
|
|
1579
|
+
minItems?: number;
|
|
1580
|
+
/**
|
|
1581
|
+
* Render function for map keys.
|
|
1582
|
+
* This allows the parent component to provide appropriate field components
|
|
1583
|
+
* based on the key type, maintaining separation of concerns.
|
|
1584
|
+
*/
|
|
1585
|
+
renderKeyField?: (field: FormFieldType, entryIndex: number) => React$1.ReactNode;
|
|
1586
|
+
/**
|
|
1587
|
+
* Render function for map values.
|
|
1588
|
+
* This allows the parent component to provide appropriate field components
|
|
1589
|
+
* based on the value type, maintaining separation of concerns.
|
|
1590
|
+
*/
|
|
1591
|
+
renderValueField?: (field: FormFieldType, entryIndex: number) => React$1.ReactNode;
|
|
1592
|
+
}
|
|
1593
|
+
/**
|
|
1594
|
+
* Map (key-value dictionary) input field component specifically designed for React Hook Form integration.
|
|
1595
|
+
*
|
|
1596
|
+
* This component provides a dynamic interface for managing map/dictionary inputs with:
|
|
1597
|
+
* - Add/remove functionality for key-value pairs
|
|
1598
|
+
* - Validation for map size constraints
|
|
1599
|
+
* - Integration with existing field components for keys and values
|
|
1600
|
+
* - Chain-agnostic data format (array of {key, value} objects)
|
|
1601
|
+
* - Full accessibility support
|
|
1602
|
+
*
|
|
1603
|
+
* Architecture flow:
|
|
1604
|
+
* 1. Form schemas are generated from contract functions using adapters
|
|
1605
|
+
* 2. TransactionForm renders the overall form structure with React Hook Form
|
|
1606
|
+
* 3. DynamicFormField selects the appropriate field component (like MapField) based on field type
|
|
1607
|
+
* 4. BaseField provides consistent layout and hook form integration
|
|
1608
|
+
* 5. This component handles map-specific rendering and validation
|
|
1609
|
+
*
|
|
1610
|
+
* The component stores data in a chain-agnostic format as an array of {key, value} objects.
|
|
1611
|
+
* The adapter is responsible for converting this to the chain-specific format (e.g., SorobanMapEntry[])
|
|
1612
|
+
* when submitting to the blockchain.
|
|
1613
|
+
*/
|
|
1614
|
+
declare function MapField<TFieldValues extends FieldValues = FieldValues>({
|
|
1615
|
+
id,
|
|
1616
|
+
label,
|
|
1617
|
+
helperText,
|
|
1618
|
+
control,
|
|
1619
|
+
name,
|
|
1620
|
+
width,
|
|
1621
|
+
validation,
|
|
1622
|
+
mapMetadata,
|
|
1623
|
+
minItems,
|
|
1624
|
+
renderKeyField,
|
|
1625
|
+
renderValueField,
|
|
1626
|
+
readOnly
|
|
1627
|
+
}: MapFieldProps<TFieldValues>): React$1.ReactElement;
|
|
1628
|
+
declare namespace MapField {
|
|
1629
|
+
var displayName: string;
|
|
1630
|
+
}
|
|
1631
|
+
//# sourceMappingURL=MapField.d.ts.map
|
|
1632
|
+
//#endregion
|
|
1633
|
+
//#region src/components/fields/MapField/MapEntryRow.d.ts
|
|
1634
|
+
interface Props {
|
|
1635
|
+
keyField: FormFieldType;
|
|
1636
|
+
valueField: FormFieldType;
|
|
1637
|
+
isDuplicateKey: boolean;
|
|
1638
|
+
renderKeyField?: (field: FormFieldType, entryIndex: number) => React$1.ReactNode;
|
|
1639
|
+
renderValueField?: (field: FormFieldType, entryIndex: number) => React$1.ReactNode;
|
|
1640
|
+
index: number;
|
|
1641
|
+
}
|
|
1642
|
+
/** Renders a single key-value entry row in a map field. */
|
|
1643
|
+
declare function MapEntryRow({
|
|
1644
|
+
keyField,
|
|
1645
|
+
valueField,
|
|
1646
|
+
isDuplicateKey,
|
|
1647
|
+
renderKeyField,
|
|
1648
|
+
renderValueField,
|
|
1649
|
+
index
|
|
1650
|
+
}: Props): React$1.ReactElement;
|
|
1651
|
+
//#endregion
|
|
1652
|
+
//#region src/components/fields/MapField/hooks/useChildTouched.d.ts
|
|
1653
|
+
/** Computes whether any child field in a map has been touched. */
|
|
1654
|
+
declare function computeChildTouched(formContext: UseFormReturn | undefined, name: string, watchedValue: unknown): boolean;
|
|
1655
|
+
//# sourceMappingURL=useChildTouched.d.ts.map
|
|
1656
|
+
//#endregion
|
|
1657
|
+
//#region src/components/fields/MapField/hooks/useDuplicateKeyIndexes.d.ts
|
|
1658
|
+
/** Hook that returns indexes of map entries with duplicate keys. */
|
|
1659
|
+
declare function useDuplicateKeyIndexes(watchedValue: unknown): Set<number>;
|
|
1660
|
+
//# sourceMappingURL=useDuplicateKeyIndexes.d.ts.map
|
|
1661
|
+
|
|
1662
|
+
//#endregion
|
|
1663
|
+
//#region src/components/fields/MapField/hooks/useMapFieldSync.d.ts
|
|
1664
|
+
/**
|
|
1665
|
+
* Keeps a field array synchronized with a watched value's length using replace,
|
|
1666
|
+
* while preventing infinite loops via a guard ref.
|
|
1667
|
+
*/
|
|
1668
|
+
declare function useMapFieldSync<TReplaceValue>(watchedValue: unknown, fieldsLength: number, replace: (value: TReplaceValue) => void): ReturnType<typeof React$1.useRef<boolean>>;
|
|
1669
|
+
//# sourceMappingURL=useMapFieldSync.d.ts.map
|
|
1670
|
+
//#endregion
|
|
1671
|
+
//#region src/components/fields/MapField/validation/validateMapStructure.d.ts
|
|
1672
|
+
interface ValidateArgs {
|
|
1673
|
+
value: unknown;
|
|
1674
|
+
required: boolean;
|
|
1675
|
+
minItems?: number;
|
|
1676
|
+
}
|
|
1677
|
+
/** Validates a map field's structure including duplicates and required entries. */
|
|
1678
|
+
declare function validateMapStructure({
|
|
1679
|
+
value,
|
|
1680
|
+
required,
|
|
1681
|
+
minItems
|
|
1682
|
+
}: ValidateArgs): string | true;
|
|
1683
|
+
//#endregion
|
|
1684
|
+
//#region src/components/fields/NumberField.d.ts
|
|
1685
|
+
/**
|
|
1686
|
+
* NumberField component properties
|
|
1687
|
+
*/
|
|
1688
|
+
interface NumberFieldProps<TFieldValues extends FieldValues = FieldValues> extends BaseFieldProps<TFieldValues> {
|
|
1689
|
+
/**
|
|
1690
|
+
* Minimum value validation
|
|
1691
|
+
*/
|
|
1692
|
+
min?: number;
|
|
1693
|
+
/**
|
|
1694
|
+
* Maximum value validation
|
|
1695
|
+
*/
|
|
1696
|
+
max?: number;
|
|
1697
|
+
/**
|
|
1698
|
+
* Step value for increment/decrement
|
|
1699
|
+
*/
|
|
1700
|
+
step?: number;
|
|
1701
|
+
/**
|
|
1702
|
+
* Custom validation function for number values
|
|
1703
|
+
*/
|
|
1704
|
+
validateNumber?: (value: number) => boolean | string;
|
|
1705
|
+
}
|
|
1706
|
+
/**
|
|
1707
|
+
* Number input field component specifically designed for React Hook Form integration.
|
|
1708
|
+
*
|
|
1709
|
+
* Architecture flow:
|
|
1710
|
+
* 1. Form schemas are generated from contract functions using adapters
|
|
1711
|
+
* 2. TransactionForm renders the overall form structure with React Hook Form
|
|
1712
|
+
* 3. DynamicFormField selects the appropriate field component (like NumberField) based on field type
|
|
1713
|
+
* 4. BaseField provides consistent layout and hook form integration
|
|
1714
|
+
* 5. This component handles number-specific rendering and validation
|
|
1715
|
+
*
|
|
1716
|
+
* The component includes:
|
|
1717
|
+
* - Integration with React Hook Form
|
|
1718
|
+
* - Numeric-specific validations (min, max, step)
|
|
1719
|
+
* - Customizable validation through adapter integration
|
|
1720
|
+
* - Automatic error handling and reporting
|
|
1721
|
+
* - Full accessibility support with ARIA attributes
|
|
1722
|
+
* - Keyboard navigation with arrow keys for numeric increment/decrement
|
|
1723
|
+
*/
|
|
1724
|
+
declare function NumberField<TFieldValues extends FieldValues = FieldValues>({
|
|
1725
|
+
id,
|
|
1726
|
+
label,
|
|
1727
|
+
placeholder,
|
|
1728
|
+
helperText,
|
|
1729
|
+
control,
|
|
1730
|
+
name,
|
|
1731
|
+
width,
|
|
1732
|
+
validation,
|
|
1733
|
+
min,
|
|
1734
|
+
max,
|
|
1735
|
+
step,
|
|
1736
|
+
validateNumber,
|
|
1737
|
+
readOnly
|
|
1738
|
+
}: NumberFieldProps<TFieldValues>): React$1.ReactElement;
|
|
1739
|
+
declare namespace NumberField {
|
|
1740
|
+
var displayName: string;
|
|
1741
|
+
}
|
|
1742
|
+
//# sourceMappingURL=NumberField.d.ts.map
|
|
1743
|
+
//#endregion
|
|
1744
|
+
//#region src/components/fields/ObjectField.d.ts
|
|
1745
|
+
/**
|
|
1746
|
+
* ObjectField component properties
|
|
1747
|
+
*/
|
|
1748
|
+
interface ObjectFieldProps<TFieldValues extends FieldValues = FieldValues> extends BaseFieldProps<TFieldValues> {
|
|
1749
|
+
/**
|
|
1750
|
+
* The components/properties of the object.
|
|
1751
|
+
* These define the schema for the nested fields within the object.
|
|
1752
|
+
*/
|
|
1753
|
+
components?: FunctionParameter[];
|
|
1754
|
+
/**
|
|
1755
|
+
* Render function for object properties.
|
|
1756
|
+
* This is crucial for rendering complex properties or integrating custom field components.
|
|
1757
|
+
*/
|
|
1758
|
+
renderProperty?: (field: FormFieldType, propertyName: string) => React$1.ReactNode;
|
|
1759
|
+
/**
|
|
1760
|
+
* Whether to show the object in a card container.
|
|
1761
|
+
* Useful for visually grouping object properties.
|
|
1762
|
+
*/
|
|
1763
|
+
showCard?: boolean;
|
|
1764
|
+
/**
|
|
1765
|
+
* The adapter for chain-specific type mapping.
|
|
1766
|
+
* Essential for correctly determining field types for object properties.
|
|
1767
|
+
*/
|
|
1768
|
+
adapter?: ContractAdapter;
|
|
1769
|
+
/**
|
|
1770
|
+
* Optional contract schema for nested metadata (structs/enums).
|
|
1771
|
+
*/
|
|
1772
|
+
contractSchema?: ContractSchema;
|
|
1773
|
+
}
|
|
1774
|
+
/**
|
|
1775
|
+
* Object (composite/nested) input field component specifically designed for React Hook Form integration.
|
|
1776
|
+
*
|
|
1777
|
+
* This component provides a structured interface for managing object inputs with:
|
|
1778
|
+
* - Nested field rendering based on object components
|
|
1779
|
+
* - Validation for required properties (currently, the object itself can be required)
|
|
1780
|
+
* - Integration with existing field components for object properties
|
|
1781
|
+
* - Full accessibility support
|
|
1782
|
+
*
|
|
1783
|
+
* The component reuses existing field components for individual properties,
|
|
1784
|
+
* maintaining consistency across the form system while supporting complex nested structures.
|
|
1785
|
+
*/
|
|
1786
|
+
declare function ObjectField<TFieldValues extends FieldValues = FieldValues>({
|
|
1787
|
+
id,
|
|
1788
|
+
label,
|
|
1789
|
+
helperText,
|
|
1790
|
+
control,
|
|
1791
|
+
name,
|
|
1792
|
+
width,
|
|
1793
|
+
validation,
|
|
1794
|
+
components,
|
|
1795
|
+
renderProperty,
|
|
1796
|
+
showCard,
|
|
1797
|
+
readOnly,
|
|
1798
|
+
adapter,
|
|
1799
|
+
contractSchema
|
|
1800
|
+
}: ObjectFieldProps<TFieldValues>): React$1.ReactElement;
|
|
1801
|
+
declare namespace ObjectField {
|
|
1802
|
+
var displayName: string;
|
|
1803
|
+
}
|
|
1804
|
+
//# sourceMappingURL=ObjectField.d.ts.map
|
|
1805
|
+
//#endregion
|
|
1806
|
+
//#region src/components/fields/PasswordField.d.ts
|
|
1807
|
+
/**
|
|
1808
|
+
* PasswordField component properties
|
|
1809
|
+
*/
|
|
1810
|
+
interface PasswordFieldProps<TFieldValues extends FieldValues = FieldValues> extends BaseFieldProps<TFieldValues> {
|
|
1811
|
+
/**
|
|
1812
|
+
* Placeholder text displayed when the field is empty
|
|
1813
|
+
*/
|
|
1814
|
+
placeholder?: string;
|
|
1815
|
+
/**
|
|
1816
|
+
* Whether to show the password visibility toggle button
|
|
1817
|
+
* @default true
|
|
1818
|
+
*/
|
|
1819
|
+
showToggle?: boolean;
|
|
1820
|
+
}
|
|
1821
|
+
/**
|
|
1822
|
+
* Password input field component specifically designed for React Hook Form integration.
|
|
1823
|
+
*
|
|
1824
|
+
* Architecture flow:
|
|
1825
|
+
* 1. Form schemas are generated from contract functions using adapters
|
|
1826
|
+
* 2. TransactionForm renders the overall form structure with React Hook Form
|
|
1827
|
+
* 3. DynamicFormField selects the appropriate field component (like PasswordField) based on field type
|
|
1828
|
+
* 4. BaseField provides consistent layout and hook form integration
|
|
1829
|
+
* 5. This component handles password-specific rendering and validation
|
|
1830
|
+
*
|
|
1831
|
+
* The component includes:
|
|
1832
|
+
* - Integration with React Hook Form
|
|
1833
|
+
* - Password visibility toggle functionality
|
|
1834
|
+
* - Password-specific validations (minLength, maxLength, pattern)
|
|
1835
|
+
* - Customizable validation through adapter integration
|
|
1836
|
+
* - Automatic error handling and reporting
|
|
1837
|
+
* - Full accessibility support with ARIA attributes
|
|
1838
|
+
* - Keyboard navigation
|
|
1839
|
+
*/
|
|
1840
|
+
declare function PasswordField<TFieldValues extends FieldValues = FieldValues>({
|
|
1841
|
+
id,
|
|
1842
|
+
label,
|
|
1843
|
+
placeholder,
|
|
1844
|
+
helperText,
|
|
1845
|
+
control,
|
|
1846
|
+
name,
|
|
1847
|
+
width,
|
|
1848
|
+
validation,
|
|
1849
|
+
readOnly,
|
|
1850
|
+
showToggle
|
|
1851
|
+
}: PasswordFieldProps<TFieldValues>): React$1.ReactElement;
|
|
1852
|
+
declare namespace PasswordField {
|
|
1853
|
+
var displayName: string;
|
|
1854
|
+
}
|
|
1855
|
+
//# sourceMappingURL=PasswordField.d.ts.map
|
|
1856
|
+
//#endregion
|
|
1857
|
+
//#region src/components/fields/RadioField.d.ts
|
|
1858
|
+
/**
|
|
1859
|
+
* Option item for radio fields
|
|
1860
|
+
*/
|
|
1861
|
+
interface RadioOption {
|
|
1862
|
+
/**
|
|
1863
|
+
* Value to be submitted with the form
|
|
1864
|
+
*/
|
|
1865
|
+
value: string;
|
|
1866
|
+
/**
|
|
1867
|
+
* Display label for the option
|
|
1868
|
+
*/
|
|
1869
|
+
label: string;
|
|
1870
|
+
/**
|
|
1871
|
+
* Whether this option is disabled
|
|
1872
|
+
*/
|
|
1873
|
+
disabled?: boolean;
|
|
1874
|
+
}
|
|
1875
|
+
/**
|
|
1876
|
+
* RadioField component properties
|
|
1877
|
+
*/
|
|
1878
|
+
interface RadioFieldProps<TFieldValues extends FieldValues = FieldValues> extends BaseFieldProps<TFieldValues> {
|
|
1879
|
+
/**
|
|
1880
|
+
* Available options for selection
|
|
1881
|
+
*/
|
|
1882
|
+
options?: RadioOption[];
|
|
1883
|
+
/**
|
|
1884
|
+
* Direction of radio options layout
|
|
1885
|
+
*/
|
|
1886
|
+
layout?: 'horizontal' | 'vertical';
|
|
1887
|
+
/**
|
|
1888
|
+
* Custom validation function for radio values
|
|
1889
|
+
*/
|
|
1890
|
+
validateRadio?: (value: string) => boolean | string;
|
|
1891
|
+
}
|
|
1892
|
+
/**
|
|
1893
|
+
* Radio button field component specifically designed for React Hook Form integration.
|
|
1894
|
+
*
|
|
1895
|
+
* Architecture flow:
|
|
1896
|
+
* 1. Form schemas are generated from contract functions using adapters
|
|
1897
|
+
* 2. TransactionForm renders the overall form structure with React Hook Form
|
|
1898
|
+
* 3. DynamicFormField selects the appropriate field component based on field type
|
|
1899
|
+
* 4. BaseField provides consistent layout and hook form integration
|
|
1900
|
+
* 5. This component handles radio-specific rendering and validation
|
|
1901
|
+
*
|
|
1902
|
+
* The component includes:
|
|
1903
|
+
* - Integration with React Hook Form
|
|
1904
|
+
* - Customizable options list
|
|
1905
|
+
* - Horizontal or vertical layout options
|
|
1906
|
+
* - Customizable validation through adapter integration
|
|
1907
|
+
* - Automatic error handling and reporting
|
|
1908
|
+
* - Full accessibility support with ARIA attributes
|
|
1909
|
+
*/
|
|
1910
|
+
declare function RadioField<TFieldValues extends FieldValues = FieldValues>({
|
|
1911
|
+
id,
|
|
1912
|
+
label,
|
|
1913
|
+
helperText,
|
|
1914
|
+
control,
|
|
1915
|
+
name,
|
|
1916
|
+
width,
|
|
1917
|
+
validation,
|
|
1918
|
+
options,
|
|
1919
|
+
layout,
|
|
1920
|
+
validateRadio
|
|
1921
|
+
}: RadioFieldProps<TFieldValues>): React$1.ReactElement;
|
|
1922
|
+
declare namespace RadioField {
|
|
1923
|
+
var displayName: string;
|
|
1924
|
+
}
|
|
1925
|
+
//# sourceMappingURL=RadioField.d.ts.map
|
|
1926
|
+
//#endregion
|
|
1927
|
+
//#region src/components/fields/SelectField.d.ts
|
|
1928
|
+
/**
|
|
1929
|
+
* Option item for select fields
|
|
1930
|
+
*/
|
|
1931
|
+
interface SelectOption {
|
|
1932
|
+
/**
|
|
1933
|
+
* Value to be submitted with the form
|
|
1934
|
+
*/
|
|
1935
|
+
value: string;
|
|
1936
|
+
/**
|
|
1937
|
+
* Display label for the option
|
|
1938
|
+
*/
|
|
1939
|
+
label: string;
|
|
1940
|
+
/**
|
|
1941
|
+
* Whether this option is disabled
|
|
1942
|
+
*/
|
|
1943
|
+
disabled?: boolean;
|
|
1944
|
+
}
|
|
1945
|
+
/**
|
|
1946
|
+
* SelectField component properties
|
|
1947
|
+
*/
|
|
1948
|
+
interface SelectFieldProps<TFieldValues extends FieldValues = FieldValues> extends BaseFieldProps<TFieldValues> {
|
|
1949
|
+
/**
|
|
1950
|
+
* Available options for selection
|
|
1951
|
+
*/
|
|
1952
|
+
options?: SelectOption[];
|
|
1953
|
+
/**
|
|
1954
|
+
* Custom validation function for select values
|
|
1955
|
+
*/
|
|
1956
|
+
validateSelect?: (value: string) => boolean | string;
|
|
1957
|
+
/**
|
|
1958
|
+
* Optional default value used when the field has no value yet
|
|
1959
|
+
*/
|
|
1960
|
+
defaultValue?: string;
|
|
1961
|
+
}
|
|
1962
|
+
/**
|
|
1963
|
+
* Select dropdown field component specifically designed for React Hook Form integration.
|
|
1964
|
+
*
|
|
1965
|
+
* Architecture flow:
|
|
1966
|
+
* 1. Form schemas are generated from contract functions using adapters
|
|
1967
|
+
* 2. TransactionForm renders the overall form structure with React Hook Form
|
|
1968
|
+
* 3. DynamicFormField selects the appropriate field component based on field type
|
|
1969
|
+
* 4. BaseField provides consistent layout and hook form integration
|
|
1970
|
+
* 5. This component handles radio-specific rendering and validation
|
|
1971
|
+
*
|
|
1972
|
+
* The component includes:
|
|
1973
|
+
* - Integration with React Hook Form
|
|
1974
|
+
* - Customizable options list
|
|
1975
|
+
* - Horizontal or vertical layout options
|
|
1976
|
+
* - Customizable validation through adapter integration
|
|
1977
|
+
* - Automatic error handling and reporting
|
|
1978
|
+
* - Full accessibility support with ARIA attributes
|
|
1979
|
+
*/
|
|
1980
|
+
declare function SelectField<TFieldValues extends FieldValues = FieldValues>({
|
|
1981
|
+
id,
|
|
1982
|
+
label,
|
|
1983
|
+
placeholder,
|
|
1984
|
+
helperText,
|
|
1985
|
+
control,
|
|
1986
|
+
name,
|
|
1987
|
+
width,
|
|
1988
|
+
validation,
|
|
1989
|
+
options,
|
|
1990
|
+
validateSelect,
|
|
1991
|
+
defaultValue
|
|
1992
|
+
}: SelectFieldProps<TFieldValues>): React$1.ReactElement;
|
|
1993
|
+
declare namespace SelectField {
|
|
1994
|
+
var displayName: string;
|
|
1995
|
+
}
|
|
1996
|
+
//# sourceMappingURL=SelectField.d.ts.map
|
|
1997
|
+
//#endregion
|
|
1998
|
+
//#region src/components/fields/SelectGroupedField.d.ts
|
|
1999
|
+
/**
|
|
2000
|
+
* Option item for select fields with visual indicators
|
|
2001
|
+
*/
|
|
2002
|
+
interface GroupedSelectOption {
|
|
2003
|
+
/**
|
|
2004
|
+
* Value to be submitted with the form
|
|
2005
|
+
*/
|
|
2006
|
+
value: string;
|
|
2007
|
+
/**
|
|
2008
|
+
* Display label for the option
|
|
2009
|
+
*/
|
|
2010
|
+
label: string;
|
|
2011
|
+
/**
|
|
2012
|
+
* Whether this option is disabled
|
|
2013
|
+
*/
|
|
2014
|
+
disabled?: boolean;
|
|
2015
|
+
/**
|
|
2016
|
+
* Custom CSS class to apply to the option
|
|
2017
|
+
*/
|
|
2018
|
+
className?: string;
|
|
2019
|
+
}
|
|
2020
|
+
/**
|
|
2021
|
+
* Option group structure
|
|
2022
|
+
*/
|
|
2023
|
+
interface OptionGroup {
|
|
2024
|
+
/**
|
|
2025
|
+
* Group label to display
|
|
2026
|
+
*/
|
|
2027
|
+
label: string;
|
|
2028
|
+
/**
|
|
2029
|
+
* Options within this group
|
|
2030
|
+
*/
|
|
2031
|
+
options: GroupedSelectOption[];
|
|
2032
|
+
}
|
|
2033
|
+
/**
|
|
2034
|
+
* SelectGroupedField component properties
|
|
2035
|
+
*/
|
|
2036
|
+
interface SelectGroupedFieldProps<TFieldValues extends FieldValues = FieldValues> extends BaseFieldProps<TFieldValues> {
|
|
2037
|
+
/**
|
|
2038
|
+
* Available option groups for selection
|
|
2039
|
+
*/
|
|
2040
|
+
groups?: OptionGroup[];
|
|
2041
|
+
/**
|
|
2042
|
+
* Custom validation function for select values
|
|
2043
|
+
*/
|
|
2044
|
+
validateSelect?: (value: string) => boolean | string;
|
|
2045
|
+
}
|
|
2046
|
+
/**
|
|
2047
|
+
* Select dropdown field component with grouped options specifically designed for React Hook Form integration.
|
|
2048
|
+
*
|
|
2049
|
+
* Architecture flow:
|
|
2050
|
+
* 1. Form schemas are generated from contract functions using adapters
|
|
2051
|
+
* 2. TransactionForm renders the overall form structure with React Hook Form
|
|
2052
|
+
* 3. DynamicFormField selects the appropriate field component based on field type
|
|
2053
|
+
* 4. BaseField provides consistent layout and hook form integration
|
|
2054
|
+
* 5. This component handles radio-specific rendering and validation
|
|
2055
|
+
*
|
|
2056
|
+
* The component includes:
|
|
2057
|
+
* - Integration with React Hook Form
|
|
2058
|
+
* - Customizable options list
|
|
2059
|
+
* - Horizontal or vertical layout options
|
|
2060
|
+
* - Customizable validation through adapter integration
|
|
2061
|
+
* - Automatic error handling and reporting
|
|
2062
|
+
* - Full accessibility support with ARIA attributes
|
|
2063
|
+
*/
|
|
2064
|
+
declare function SelectGroupedField<TFieldValues extends FieldValues = FieldValues>({
|
|
2065
|
+
id,
|
|
2066
|
+
label,
|
|
2067
|
+
placeholder,
|
|
2068
|
+
helperText,
|
|
2069
|
+
control,
|
|
2070
|
+
name,
|
|
2071
|
+
width,
|
|
2072
|
+
validation,
|
|
2073
|
+
groups,
|
|
2074
|
+
validateSelect
|
|
2075
|
+
}: SelectGroupedFieldProps<TFieldValues>): React$1.ReactElement;
|
|
2076
|
+
declare namespace SelectGroupedField {
|
|
2077
|
+
var displayName: string;
|
|
2078
|
+
}
|
|
2079
|
+
//# sourceMappingURL=SelectGroupedField.d.ts.map
|
|
2080
|
+
//#endregion
|
|
2081
|
+
//#region src/components/fields/TextAreaField.d.ts
|
|
2082
|
+
/**
|
|
2083
|
+
* TextAreaField component properties
|
|
2084
|
+
*/
|
|
2085
|
+
interface TextAreaFieldProps<TFieldValues extends FieldValues = FieldValues> extends BaseFieldProps<TFieldValues> {
|
|
2086
|
+
/**
|
|
2087
|
+
* Number of rows for the textarea
|
|
2088
|
+
*/
|
|
2089
|
+
rows?: number;
|
|
2090
|
+
/**
|
|
2091
|
+
* Maximum characters allowed in textarea
|
|
2092
|
+
*/
|
|
2093
|
+
maxLength?: number;
|
|
2094
|
+
/**
|
|
2095
|
+
* Custom validation function for textarea values
|
|
2096
|
+
*/
|
|
2097
|
+
validateTextArea?: (value: string) => boolean | string;
|
|
2098
|
+
}
|
|
2099
|
+
/**
|
|
2100
|
+
* Multi-line text input field component specifically designed for React Hook Form integration.
|
|
2101
|
+
*
|
|
2102
|
+
* Architecture flow:
|
|
2103
|
+
* 1. Form schemas are generated from contract functions using adapters
|
|
2104
|
+
* 2. TransactionForm renders the overall form structure with React Hook Form
|
|
2105
|
+
* 3. DynamicFormField selects the appropriate field component based on field type
|
|
2106
|
+
* 4. BaseField provides consistent layout and hook form integration
|
|
2107
|
+
* 5. This component handles textarea-specific rendering and validation
|
|
2108
|
+
*
|
|
2109
|
+
* The component includes:
|
|
2110
|
+
* - Integration with React Hook Form
|
|
2111
|
+
* - Resizable multi-line text input
|
|
2112
|
+
* - Character limit support
|
|
2113
|
+
* - Customizable validation through adapter integration
|
|
2114
|
+
* - Automatic error handling and reporting
|
|
2115
|
+
* - Full accessibility support with ARIA attributes
|
|
2116
|
+
* - Keyboard navigation with Escape to clear
|
|
2117
|
+
*/
|
|
2118
|
+
declare function TextAreaField<TFieldValues extends FieldValues = FieldValues>({
|
|
2119
|
+
id,
|
|
2120
|
+
label,
|
|
2121
|
+
placeholder,
|
|
2122
|
+
helperText,
|
|
2123
|
+
control,
|
|
2124
|
+
name,
|
|
2125
|
+
width,
|
|
2126
|
+
validation,
|
|
2127
|
+
rows,
|
|
2128
|
+
maxLength,
|
|
2129
|
+
validateTextArea
|
|
2130
|
+
}: TextAreaFieldProps<TFieldValues>): React$1.ReactElement;
|
|
2131
|
+
declare namespace TextAreaField {
|
|
2132
|
+
var displayName: string;
|
|
2133
|
+
}
|
|
2134
|
+
//# sourceMappingURL=TextAreaField.d.ts.map
|
|
2135
|
+
//#endregion
|
|
2136
|
+
//#region src/components/fields/TextField.d.ts
|
|
2137
|
+
/**
|
|
2138
|
+
* TextField component properties
|
|
2139
|
+
*/
|
|
2140
|
+
interface TextFieldProps<TFieldValues extends FieldValues = FieldValues> extends BaseFieldProps<TFieldValues> {
|
|
2141
|
+
/**
|
|
2142
|
+
* Placeholder text displayed when the field is empty
|
|
2143
|
+
*/
|
|
2144
|
+
placeholder?: string;
|
|
2145
|
+
}
|
|
2146
|
+
/**
|
|
2147
|
+
* Text input field component specifically designed for React Hook Form integration.
|
|
2148
|
+
*
|
|
2149
|
+
* Architecture flow:
|
|
2150
|
+
* 1. Form schemas are generated from contract functions using adapters
|
|
2151
|
+
* 2. TransactionForm renders the overall form structure with React Hook Form
|
|
2152
|
+
* 3. DynamicFormField selects the appropriate field component (like TextField) based on field type
|
|
2153
|
+
* 4. BaseField provides consistent layout and hook form integration
|
|
2154
|
+
* 5. This component handles text-specific rendering and validation
|
|
2155
|
+
*
|
|
2156
|
+
* The component includes:
|
|
2157
|
+
* - Integration with React Hook Form
|
|
2158
|
+
* - Text-specific validations (minLength, maxLength, pattern)
|
|
2159
|
+
* - Customizable validation through adapter integration
|
|
2160
|
+
* - Automatic error handling and reporting
|
|
2161
|
+
* - Full accessibility support with ARIA attributes
|
|
2162
|
+
* - Keyboard navigation
|
|
2163
|
+
*/
|
|
2164
|
+
declare function TextField<TFieldValues extends FieldValues = FieldValues>({
|
|
2165
|
+
id,
|
|
2166
|
+
label,
|
|
2167
|
+
placeholder,
|
|
2168
|
+
helperText,
|
|
2169
|
+
control,
|
|
2170
|
+
name,
|
|
2171
|
+
width,
|
|
2172
|
+
validation,
|
|
2173
|
+
readOnly
|
|
2174
|
+
}: TextFieldProps<TFieldValues>): React$1.ReactElement;
|
|
2175
|
+
declare namespace TextField {
|
|
2176
|
+
var displayName: string;
|
|
2177
|
+
}
|
|
2178
|
+
//# sourceMappingURL=TextField.d.ts.map
|
|
2179
|
+
//#endregion
|
|
2180
|
+
//#region src/components/fields/UrlField.d.ts
|
|
2181
|
+
/**
|
|
2182
|
+
* URL input field component specifically designed for React Hook Form integration.
|
|
2183
|
+
*/
|
|
2184
|
+
declare function UrlField<TFieldValues extends FieldValues = FieldValues>({
|
|
2185
|
+
id,
|
|
2186
|
+
label,
|
|
2187
|
+
placeholder,
|
|
2188
|
+
helperText,
|
|
2189
|
+
control,
|
|
2190
|
+
name,
|
|
2191
|
+
width,
|
|
2192
|
+
validation,
|
|
2193
|
+
readOnly
|
|
2194
|
+
}: BaseFieldProps<TFieldValues>): React$1.ReactElement;
|
|
2195
|
+
declare namespace UrlField {
|
|
2196
|
+
var displayName: string;
|
|
2197
|
+
}
|
|
2198
|
+
//# sourceMappingURL=UrlField.d.ts.map
|
|
2199
|
+
//#endregion
|
|
2200
|
+
//#region src/components/fields/utils/accessibility.d.ts
|
|
2201
|
+
/**
|
|
2202
|
+
* Accessibility utilities for form field components
|
|
2203
|
+
*/
|
|
2204
|
+
/**
|
|
2205
|
+
* Default aria-describedby ID generator based on field ID
|
|
2206
|
+
*/
|
|
2207
|
+
declare function getDescribedById(id: string, type?: 'error' | 'description' | 'counter'): string;
|
|
2208
|
+
/**
|
|
2209
|
+
* Interface for accessibility attributes to be applied to form fields
|
|
2210
|
+
*/
|
|
2211
|
+
interface AccessibilityProps {
|
|
2212
|
+
/**
|
|
2213
|
+
* ARIA attributes for accessibility
|
|
2214
|
+
*/
|
|
2215
|
+
'aria-invalid'?: boolean;
|
|
2216
|
+
'aria-required'?: boolean;
|
|
2217
|
+
'aria-describedby'?: string;
|
|
2218
|
+
'aria-errormessage'?: string;
|
|
2219
|
+
'aria-labelledby'?: string;
|
|
2220
|
+
/**
|
|
2221
|
+
* Indicates if the input is required
|
|
2222
|
+
*/
|
|
2223
|
+
required?: boolean;
|
|
2224
|
+
/**
|
|
2225
|
+
* Indicates if the input is disabled
|
|
2226
|
+
*/
|
|
2227
|
+
disabled?: boolean;
|
|
2228
|
+
/**
|
|
2229
|
+
* Indicates if the input is readonly
|
|
2230
|
+
*/
|
|
2231
|
+
readOnly?: boolean;
|
|
2232
|
+
/**
|
|
2233
|
+
* Tab index for keyboard navigation
|
|
2234
|
+
* Use 0 for normal tab order
|
|
2235
|
+
* Use -1 to remove from tab order
|
|
2236
|
+
*/
|
|
2237
|
+
tabIndex?: number;
|
|
2238
|
+
}
|
|
2239
|
+
/**
|
|
2240
|
+
* Generates accessibility attributes for form fields
|
|
2241
|
+
*/
|
|
2242
|
+
declare function getAccessibilityProps({
|
|
2243
|
+
id,
|
|
2244
|
+
hasError,
|
|
2245
|
+
isRequired,
|
|
2246
|
+
isDisabled,
|
|
2247
|
+
isReadOnly,
|
|
2248
|
+
hasHelperText,
|
|
2249
|
+
hasCharacterCounter
|
|
2250
|
+
}: {
|
|
2251
|
+
id: string;
|
|
2252
|
+
hasError?: boolean;
|
|
2253
|
+
isRequired?: boolean;
|
|
2254
|
+
isDisabled?: boolean;
|
|
2255
|
+
isReadOnly?: boolean;
|
|
2256
|
+
hasHelperText?: boolean;
|
|
2257
|
+
hasCharacterCounter?: boolean;
|
|
2258
|
+
}): AccessibilityProps;
|
|
2259
|
+
/**
|
|
2260
|
+
* Utility function to handle keyboard events for interactive elements
|
|
2261
|
+
* Helps ensure keyboard users can interact with form controls
|
|
2262
|
+
*/
|
|
2263
|
+
declare function handleKeyboardEvent(event: React.KeyboardEvent, handlers: {
|
|
2264
|
+
onEnter?: () => void;
|
|
2265
|
+
onSpace?: () => void;
|
|
2266
|
+
onEscape?: () => void;
|
|
2267
|
+
onArrowUp?: () => void;
|
|
2268
|
+
onArrowDown?: () => void;
|
|
2269
|
+
onArrowLeft?: () => void;
|
|
2270
|
+
onArrowRight?: () => void;
|
|
2271
|
+
onTab?: () => void;
|
|
2272
|
+
}): void;
|
|
2273
|
+
/**
|
|
2274
|
+
* Field focus management utility
|
|
2275
|
+
* For managing focus within a field group or complex form component
|
|
2276
|
+
*/
|
|
2277
|
+
declare function createFocusManager(): {
|
|
2278
|
+
focusFirstElement: (container: HTMLElement | null) => void;
|
|
2279
|
+
focusElementById: (id: string) => void;
|
|
2280
|
+
trapFocus: (event: KeyboardEvent, container: HTMLElement | null) => void;
|
|
2281
|
+
};
|
|
2282
|
+
/**
|
|
2283
|
+
* Provides a handler for Escape key to clear input fields
|
|
2284
|
+
*
|
|
2285
|
+
* @param onChange - Function to call when value changes
|
|
2286
|
+
* @param value - Current value of the input
|
|
2287
|
+
* @returns A function to handle the Escape key press
|
|
2288
|
+
*/
|
|
2289
|
+
declare function handleEscapeKey(onChange: (value: string) => void, value: unknown): (e: React.KeyboardEvent) => void;
|
|
2290
|
+
/**
|
|
2291
|
+
* Provides a handler for Space/Enter keys for toggle components (checkboxes, switches)
|
|
2292
|
+
*
|
|
2293
|
+
* @param onChange - Function to call when value changes
|
|
2294
|
+
* @param value - Current value of the input
|
|
2295
|
+
* @returns A function to handle the Space/Enter key press
|
|
2296
|
+
*/
|
|
2297
|
+
declare function handleToggleKeys(onChange: (value: boolean) => void, value: boolean): (e: React.KeyboardEvent) => void;
|
|
2298
|
+
/**
|
|
2299
|
+
* Provides a handler for arrow keys for numeric inputs
|
|
2300
|
+
*
|
|
2301
|
+
* @param onChange - Function to call when value changes
|
|
2302
|
+
* @param value - Current numeric value
|
|
2303
|
+
* @param step - Step amount for increments/decrements
|
|
2304
|
+
* @param min - Minimum allowed value (optional)
|
|
2305
|
+
* @param max - Maximum allowed value (optional)
|
|
2306
|
+
* @returns A function to handle arrow key presses
|
|
2307
|
+
*/
|
|
2308
|
+
declare function handleNumericKeys(onChange: (value: number) => void, value: number, step?: number, min?: number, max?: number): (e: React.KeyboardEvent) => void;
|
|
2309
|
+
//# sourceMappingURL=accessibility.d.ts.map
|
|
2310
|
+
//#endregion
|
|
2311
|
+
//#region src/components/fields/utils/ErrorMessage.d.ts
|
|
2312
|
+
interface ErrorMessageProps {
|
|
2313
|
+
/**
|
|
2314
|
+
* The error object from React Hook Form
|
|
2315
|
+
*/
|
|
2316
|
+
error?: FieldError;
|
|
2317
|
+
/**
|
|
2318
|
+
* The ID of the error message for aria-errormessage references
|
|
2319
|
+
*/
|
|
2320
|
+
id: string;
|
|
2321
|
+
/**
|
|
2322
|
+
* Optional custom error message to display instead of the error from React Hook Form
|
|
2323
|
+
*/
|
|
2324
|
+
message?: string;
|
|
2325
|
+
/**
|
|
2326
|
+
* Optional additional CSS classes
|
|
2327
|
+
*/
|
|
2328
|
+
className?: string;
|
|
2329
|
+
}
|
|
2330
|
+
/**
|
|
2331
|
+
* Displays validation error messages for form fields
|
|
2332
|
+
*/
|
|
2333
|
+
declare function ErrorMessage({
|
|
2334
|
+
error,
|
|
2335
|
+
id,
|
|
2336
|
+
message,
|
|
2337
|
+
className
|
|
2338
|
+
}: ErrorMessageProps): React$1.ReactElement | null;
|
|
2339
|
+
//#endregion
|
|
2340
|
+
//#region src/components/fields/utils/integerValidation.d.ts
|
|
2341
|
+
/**
|
|
2342
|
+
* Shared integer validation patterns for BigInt fields and validation utilities.
|
|
2343
|
+
*
|
|
2344
|
+
* These patterns ensure consistent validation across the application.
|
|
2345
|
+
*/
|
|
2346
|
+
/**
|
|
2347
|
+
* Integer validation pattern - requires at least one digit
|
|
2348
|
+
* Used for validation to ensure complete integers are entered
|
|
2349
|
+
* Matches: -123, 0, 456
|
|
2350
|
+
* Does not match: -, abc, 12.3
|
|
2351
|
+
*/
|
|
2352
|
+
declare const INTEGER_PATTERN: RegExp;
|
|
2353
|
+
/**
|
|
2354
|
+
* Integer input pattern - allows partial input during typing
|
|
2355
|
+
* Used during input to allow users to type minus sign first
|
|
2356
|
+
* Matches: -, -1, 123, (empty string)
|
|
2357
|
+
* Does not match: abc, 12.3
|
|
2358
|
+
*/
|
|
2359
|
+
declare const INTEGER_INPUT_PATTERN: RegExp;
|
|
2360
|
+
/**
|
|
2361
|
+
* HTML pattern attribute for integer inputs
|
|
2362
|
+
* Must use [0-9] instead of \d for HTML5 pattern attribute
|
|
2363
|
+
*/
|
|
2364
|
+
declare const INTEGER_HTML_PATTERN = "-?[0-9]*";
|
|
2365
|
+
//# sourceMappingURL=integerValidation.d.ts.map
|
|
2366
|
+
//#endregion
|
|
2367
|
+
//#region src/components/fields/utils/layout.d.ts
|
|
2368
|
+
/**
|
|
2369
|
+
* Layout utility functions for form components
|
|
2370
|
+
*/
|
|
2371
|
+
/**
|
|
2372
|
+
* Helper function to get width classes based on the field width
|
|
2373
|
+
*/
|
|
2374
|
+
declare function getWidthClasses(width: 'full' | 'half' | 'third'): string;
|
|
2375
|
+
//# sourceMappingURL=layout.d.ts.map
|
|
2376
|
+
//#endregion
|
|
2377
|
+
//#region src/components/fields/utils/validation.d.ts
|
|
2378
|
+
/**
|
|
2379
|
+
* Determines if a field has an error
|
|
2380
|
+
*/
|
|
2381
|
+
declare function hasFieldError(error: FieldError | undefined): boolean;
|
|
2382
|
+
/**
|
|
2383
|
+
* Gets appropriate error message from field error
|
|
2384
|
+
*/
|
|
2385
|
+
declare function getErrorMessage(error: FieldError | undefined): string | undefined;
|
|
2386
|
+
/**
|
|
2387
|
+
* Formats validation error messages for display
|
|
2388
|
+
*/
|
|
2389
|
+
declare function formatValidationError(error: FieldError | undefined, fieldName?: string): string | undefined;
|
|
2390
|
+
/**
|
|
2391
|
+
* Generates common CSS classes for field validation states
|
|
2392
|
+
*/
|
|
2393
|
+
declare function getValidationStateClasses(error: FieldError | undefined, touched?: boolean): string;
|
|
2394
|
+
/**
|
|
2395
|
+
* Helper for handling form validation errors with React Hook Form
|
|
2396
|
+
*/
|
|
2397
|
+
declare function handleValidationError(error: FieldError | undefined, id: string): {
|
|
2398
|
+
errorId: string;
|
|
2399
|
+
errorMessage: string | undefined;
|
|
2400
|
+
hasError: boolean;
|
|
2401
|
+
validationClasses: string;
|
|
2402
|
+
};
|
|
2403
|
+
/**
|
|
2404
|
+
* Creates a validation result object for field components
|
|
2405
|
+
*/
|
|
2406
|
+
declare function createValidationResult(id: string, error: FieldError | undefined, touched?: boolean): {
|
|
2407
|
+
hasError: boolean;
|
|
2408
|
+
errorMessage: string | undefined;
|
|
2409
|
+
errorId: string;
|
|
2410
|
+
validationClasses: string;
|
|
2411
|
+
'aria-invalid': boolean;
|
|
2412
|
+
'aria-errormessage'?: string;
|
|
2413
|
+
};
|
|
2414
|
+
/**
|
|
2415
|
+
* Generic field validation function that can be used to validate any field type
|
|
2416
|
+
* based on common validation criteria
|
|
2417
|
+
*/
|
|
2418
|
+
declare function validateField(value: unknown, validation?: FieldValidation): string | boolean;
|
|
2419
|
+
/**
|
|
2420
|
+
* Map validation utilities
|
|
2421
|
+
*/
|
|
2422
|
+
/**
|
|
2423
|
+
* Checks if a map entry at the given index has a duplicate key
|
|
2424
|
+
* @param entries - Array of map entries
|
|
2425
|
+
* @param currentIndex - Index of the entry to check
|
|
2426
|
+
* @returns true if the key at currentIndex is duplicated elsewhere in the array
|
|
2427
|
+
*/
|
|
2428
|
+
declare function isDuplicateMapKey(entries: MapEntry[], currentIndex: number): boolean;
|
|
2429
|
+
/**
|
|
2430
|
+
* Validates an array of map entries for duplicate keys
|
|
2431
|
+
* @param entries - Array of map entries to validate
|
|
2432
|
+
* @returns Validation error message if duplicates found, otherwise undefined
|
|
2433
|
+
*/
|
|
2434
|
+
declare function validateMapEntries(entries: MapEntry[]): string | undefined;
|
|
2435
|
+
//# sourceMappingURL=validation.d.ts.map
|
|
2436
|
+
//#endregion
|
|
2437
|
+
//#region src/components/RelayerDetailsCard/RelayerDetailsCard.d.ts
|
|
2438
|
+
interface RelayerDetailsCardProps {
|
|
2439
|
+
details: RelayerDetails;
|
|
2440
|
+
enhancedDetails?: RelayerDetailsRich | null;
|
|
2441
|
+
loading?: boolean;
|
|
2442
|
+
className?: string;
|
|
2443
|
+
/** Optional UI labels to override default copy */
|
|
2444
|
+
labels?: Partial<{
|
|
2445
|
+
detailsTitle: string;
|
|
2446
|
+
active: string;
|
|
2447
|
+
paused: string;
|
|
2448
|
+
systemDisabled: string;
|
|
2449
|
+
network: string;
|
|
2450
|
+
relayerId: string;
|
|
2451
|
+
balance: string;
|
|
2452
|
+
nonce: string;
|
|
2453
|
+
pending: string;
|
|
2454
|
+
lastTransaction: string;
|
|
2455
|
+
}>;
|
|
2456
|
+
}
|
|
2457
|
+
declare const RelayerDetailsCard: React$1.FC<RelayerDetailsCardProps>;
|
|
2458
|
+
//# sourceMappingURL=RelayerDetailsCard.d.ts.map
|
|
2459
|
+
//#endregion
|
|
2460
|
+
//#region src/components/network-errors/NetworkErrorNotificationProvider.d.ts
|
|
2461
|
+
interface NetworkErrorNotificationProviderProps {
|
|
2462
|
+
children: React.ReactNode;
|
|
2463
|
+
}
|
|
2464
|
+
/** Provider component for managing and displaying network error notifications. */
|
|
2465
|
+
declare function NetworkErrorNotificationProvider({
|
|
2466
|
+
children
|
|
2467
|
+
}: NetworkErrorNotificationProviderProps): React.ReactNode;
|
|
2468
|
+
//#endregion
|
|
2469
|
+
//#region src/components/network-errors/useNetworkErrors.d.ts
|
|
2470
|
+
type NetworkErrorType = 'rpc' | 'explorer';
|
|
2471
|
+
interface NetworkError {
|
|
2472
|
+
id: string;
|
|
2473
|
+
type: NetworkErrorType;
|
|
2474
|
+
networkId: string;
|
|
2475
|
+
networkName: string;
|
|
2476
|
+
message: string;
|
|
2477
|
+
timestamp: number;
|
|
2478
|
+
}
|
|
2479
|
+
interface NetworkErrorContextValue {
|
|
2480
|
+
errors: NetworkError[];
|
|
2481
|
+
reportNetworkError: (type: NetworkErrorType, networkId: string, networkName: string, message: string) => void;
|
|
2482
|
+
clearError: (id: string) => void;
|
|
2483
|
+
clearAllErrors: () => void;
|
|
2484
|
+
onOpenNetworkSettings?: (networkId: string) => void;
|
|
2485
|
+
setOpenNetworkSettingsHandler: (handler: (networkId: string) => void) => void;
|
|
2486
|
+
}
|
|
2487
|
+
/** Hook to access network error reporting and management functions. */
|
|
2488
|
+
declare function useNetworkErrors(): NetworkErrorContextValue;
|
|
2489
|
+
/**
|
|
2490
|
+
* Hook for reporting network errors for a specific adapter
|
|
2491
|
+
*/
|
|
2492
|
+
declare function useNetworkErrorReporter(adapter: ContractAdapter | null): {
|
|
2493
|
+
reportRpcError: (message: string) => void;
|
|
2494
|
+
reportExplorerError: (message: string) => void;
|
|
2495
|
+
};
|
|
2496
|
+
//# sourceMappingURL=useNetworkErrors.d.ts.map
|
|
2497
|
+
//#endregion
|
|
2498
|
+
//#region src/components/network-errors/NetworkErrorAwareAdapter.d.ts
|
|
2499
|
+
/**
|
|
2500
|
+
* Creates an adapter proxy that intercepts and reports network errors
|
|
2501
|
+
*/
|
|
2502
|
+
declare function useNetworkErrorAwareAdapter(adapter: ContractAdapter | null): ContractAdapter | null;
|
|
2503
|
+
//# sourceMappingURL=NetworkErrorAwareAdapter.d.ts.map
|
|
2504
|
+
//#endregion
|
|
2505
|
+
//#region src/components/icons/MidnightIcon.d.ts
|
|
2506
|
+
interface MidnightIconProps {
|
|
2507
|
+
size?: number;
|
|
2508
|
+
className?: string;
|
|
2509
|
+
variant?: 'mono' | 'branded';
|
|
2510
|
+
}
|
|
2511
|
+
/**
|
|
2512
|
+
* MidnightIcon - SVG icon for the Midnight blockchain
|
|
2513
|
+
* Inline SVG to ensure it renders correctly when this package is consumed as a library
|
|
2514
|
+
*/
|
|
2515
|
+
declare function MidnightIcon({
|
|
2516
|
+
size,
|
|
2517
|
+
className,
|
|
2518
|
+
variant: _variant
|
|
2519
|
+
}: MidnightIconProps): React$1.ReactElement;
|
|
2520
|
+
//# sourceMappingURL=MidnightIcon.d.ts.map
|
|
2521
|
+
//#endregion
|
|
2522
|
+
//#region src/components/ui/sonner.d.ts
|
|
2523
|
+
declare const Toaster: ({
|
|
2524
|
+
...props
|
|
2525
|
+
}: ToasterProps) => JSX.Element;
|
|
2526
|
+
//#endregion
|
|
2527
|
+
export { AccessibilityProps, Accordion, AccordionContent, type AccordionContentProps, AccordionItem, type AccordionItemProps, type AccordionProps, AccordionTrigger, type AccordionTriggerProps, AddressDisplay, AddressField, Alert, AlertDescription, AlertTitle, AmountField, AmountFieldProps, ArrayField, ArrayFieldProps, ArrayObjectField, ArrayObjectFieldProps, Banner, BaseField, BaseFieldProps, BigIntField, BigIntFieldProps, BooleanField, BooleanFieldProps, Button, ButtonProps, BytesField, BytesFieldProps, Calendar, CalendarProps, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, CodeEditorField, CodeEditorFieldProps, type DateRange, DateRangePicker, DateRangePickerProps, DateTimeField, DateTimeFieldProps, 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, EmptyState, EmptyStateProps, EnumField, EnumFieldProps, EnumFieldValue, EnumMetadata, EnumVariant, ErrorMessage, ExternalLink, FileUploadField, FileUploadFieldProps, Footer, FooterProps, Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, GroupedSelectOption, Header, HeaderProps, INTEGER_HTML_PATTERN, INTEGER_INPUT_PATTERN, INTEGER_PATTERN, Input, InputProps, Label, LoadingButton, LoadingButtonProps, MapEntryRow, MapField, MapFieldProps, MidnightIcon, NetworkError, NetworkErrorNotificationProvider, NetworkErrorType, NetworkIcon, NetworkIconProps, NetworkSelector, NetworkSelectorProps, NetworkStatusBadge, NumberField, NumberFieldProps, ObjectField, ObjectFieldProps, OptionGroup, PasswordField, PasswordFieldProps, Popover, PopoverAnchor, PopoverContent, PopoverTrigger, Progress, RadioField, RadioFieldProps, RadioGroup, RadioGroupItem, RadioOption, RelayerDetailsCard, RelayerDetailsCardProps, Select, SelectContent, SelectField, SelectFieldProps, SelectGroup, SelectGroupedField, SelectGroupedFieldProps, SelectItem, SelectLabel, SelectOption, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, SidebarButton, SidebarButtonProps, SidebarLayout, SidebarLayoutProps, SidebarSection, SidebarSectionProps, Tabs, TabsContent, TabsList, TabsTrigger, TextAreaField, TextAreaFieldProps, TextField, TextFieldProps, Textarea, TextareaProps, Toaster, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, UrlField, ViewContractStateButton, buttonVariants, computeChildTouched, createFocusManager, createValidationResult, formatValidationError, getAccessibilityProps, getDescribedById, getErrorMessage, getValidationStateClasses, getWidthClasses, handleEscapeKey, handleKeyboardEvent, handleNumericKeys, handleToggleKeys, handleValidationError, hasFieldError, isDuplicateMapKey, useDuplicateKeyIndexes, useMapFieldSync, useNetworkErrorAwareAdapter, useNetworkErrorReporter, useNetworkErrors, validateField, validateMapEntries, validateMapStructure };
|
|
2528
|
+
//# sourceMappingURL=index-CrEkH28U.d.cts.map
|