@orellabs/ui 0.1.2
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/README.md +43 -0
- package/dist/index.cjs +2 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +507 -0
- package/dist/index.js +1882 -0
- package/dist/index.js.map +1 -0
- package/package.json +57 -0
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,507 @@
|
|
|
1
|
+
import { default as default_2 } from 'react';
|
|
2
|
+
import { JSX as JSX_2 } from 'react/jsx-runtime';
|
|
3
|
+
|
|
4
|
+
declare type ActionItem = {
|
|
5
|
+
text: string;
|
|
6
|
+
tone?: "error" | "warning" | "info" | "neutral";
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
export declare function ActionList({ items }: ActionListProps): JSX_2.Element;
|
|
10
|
+
|
|
11
|
+
declare type ActionListProps = {
|
|
12
|
+
items: ActionItem[];
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
export declare const AlertIcon: ({ size, filled, className, style, ...props }: IconProps) => JSX_2.Element;
|
|
16
|
+
|
|
17
|
+
export declare const ArrowDownIcon: ({ size, filled, className, style, ...props }: IconProps) => JSX_2.Element;
|
|
18
|
+
|
|
19
|
+
export declare const ArrowLeftIcon: ({ size, filled, className, style, ...props }: IconProps) => JSX_2.Element;
|
|
20
|
+
|
|
21
|
+
export declare const ArrowRightIcon: ({ size, filled, className, style, ...props }: IconProps) => JSX_2.Element;
|
|
22
|
+
|
|
23
|
+
export declare const ArrowUpIcon: ({ size, filled, className, style, ...props }: IconProps) => JSX_2.Element;
|
|
24
|
+
|
|
25
|
+
export declare const Badge: default_2.NamedExoticComponent<BadgeProps>;
|
|
26
|
+
|
|
27
|
+
declare type BadgeProps = {
|
|
28
|
+
tone: "success" | "warning" | "error" | "info" | "neutral";
|
|
29
|
+
dot?: boolean;
|
|
30
|
+
children: default_2.ReactNode;
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
export declare function Button({ variant, size, loading, disabled, fullWidth, leftIcon, children, onClick, }: ButtonProps): JSX_2.Element;
|
|
34
|
+
|
|
35
|
+
declare type ButtonProps = {
|
|
36
|
+
variant: "primary" | "ghost" | "danger" | "text";
|
|
37
|
+
size: "sm" | "md" | "lg";
|
|
38
|
+
loading?: boolean;
|
|
39
|
+
disabled?: boolean;
|
|
40
|
+
fullWidth?: boolean;
|
|
41
|
+
leftIcon?: default_2.ReactNode;
|
|
42
|
+
children: default_2.ReactNode;
|
|
43
|
+
onClick?: () => void;
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
export declare function Card({ padding, noBorder, shadow, children, }: CardProps): JSX_2.Element;
|
|
47
|
+
|
|
48
|
+
declare type CardProps = {
|
|
49
|
+
padding?: "none" | "sm" | "md" | "lg";
|
|
50
|
+
noBorder?: boolean;
|
|
51
|
+
shadow?: boolean;
|
|
52
|
+
children: default_2.ReactNode;
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
export declare const CheckIcon: ({ size, filled, className, style, ...props }: IconProps) => JSX_2.Element;
|
|
56
|
+
|
|
57
|
+
export declare function CheckRow({ checked, onChange, label, sublabel, disabled, locked, badge, right, }: CheckRowProps): JSX_2.Element;
|
|
58
|
+
|
|
59
|
+
declare type CheckRowProps = {
|
|
60
|
+
checked: boolean;
|
|
61
|
+
onChange: (checked: boolean) => void;
|
|
62
|
+
label: string;
|
|
63
|
+
sublabel?: string;
|
|
64
|
+
disabled?: boolean;
|
|
65
|
+
locked?: boolean;
|
|
66
|
+
badge?: default_2.ReactNode;
|
|
67
|
+
right?: default_2.ReactNode;
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
export declare const ChevronDownIcon: ({ size, filled, className, style, ...props }: IconProps) => JSX_2.Element;
|
|
71
|
+
|
|
72
|
+
export declare const ChevronLeftIcon: ({ size, filled, className, style, ...props }: IconProps) => JSX_2.Element;
|
|
73
|
+
|
|
74
|
+
export declare const ChevronRightIcon: ({ size, filled, className, style, ...props }: IconProps) => JSX_2.Element;
|
|
75
|
+
|
|
76
|
+
export declare const ChevronUpIcon: ({ size, filled, className, style, ...props }: IconProps) => JSX_2.Element;
|
|
77
|
+
|
|
78
|
+
export declare const CodeChip: default_2.NamedExoticComponent<{
|
|
79
|
+
children: default_2.ReactNode;
|
|
80
|
+
}>;
|
|
81
|
+
|
|
82
|
+
export declare const colors: {
|
|
83
|
+
readonly black: "#1A1A1A";
|
|
84
|
+
readonly blackHover: "#2A2A2A";
|
|
85
|
+
readonly red: "#D42B2B";
|
|
86
|
+
readonly white: "#FFFFFF";
|
|
87
|
+
readonly pageBg: "#F1F1F1";
|
|
88
|
+
readonly cardBg: "#FFFFFF";
|
|
89
|
+
readonly bgSubtle: "#FAFAFA";
|
|
90
|
+
readonly textPrimary: "#1A1A1A";
|
|
91
|
+
readonly textSecondary: "#6B7280";
|
|
92
|
+
readonly textTertiary: "#9CA3AF";
|
|
93
|
+
readonly textDark: "#374151";
|
|
94
|
+
readonly textDisabled: "#D1D5DB";
|
|
95
|
+
readonly textInverse: "#FFFFFF";
|
|
96
|
+
readonly border: "#E5E5E5";
|
|
97
|
+
readonly borderLight: "#D1D5DB";
|
|
98
|
+
readonly borderSubtle: "#F3F4F6";
|
|
99
|
+
readonly borderFocus: "#1A1A1A";
|
|
100
|
+
readonly success: "#22C55E";
|
|
101
|
+
readonly successBg: "#F0FDF4";
|
|
102
|
+
readonly successBorder: "#BBF7D0";
|
|
103
|
+
readonly warning: "#F59E0B";
|
|
104
|
+
readonly warningBg: "#FFFBEB";
|
|
105
|
+
readonly warningBorder: "#FDE68A";
|
|
106
|
+
readonly error: "#EF4444";
|
|
107
|
+
readonly errorHover: "#DC2626";
|
|
108
|
+
readonly errorBg: "#FEF2F2";
|
|
109
|
+
readonly errorBorder: "#FECACA";
|
|
110
|
+
readonly info: "#2563EB";
|
|
111
|
+
readonly infoBg: "#EFF6FF";
|
|
112
|
+
readonly infoBorder: "#BFDBFE";
|
|
113
|
+
readonly neutralBg: "#F3F4F6";
|
|
114
|
+
readonly neutralText: "#6B7280";
|
|
115
|
+
readonly skeletonBase: "#E5E5E5";
|
|
116
|
+
readonly skeletonPulse: "#F1F2F4";
|
|
117
|
+
};
|
|
118
|
+
|
|
119
|
+
export declare type ColorToken = keyof typeof colors;
|
|
120
|
+
|
|
121
|
+
declare type Column<T> = {
|
|
122
|
+
key: keyof T | string;
|
|
123
|
+
header: string;
|
|
124
|
+
width?: number | string;
|
|
125
|
+
render?: (row: T) => default_2.ReactNode;
|
|
126
|
+
align?: "left" | "center" | "right";
|
|
127
|
+
};
|
|
128
|
+
|
|
129
|
+
/**
|
|
130
|
+
* Utility for conditionally joining class names.
|
|
131
|
+
* Filters out falsy values and joins the rest with a space.
|
|
132
|
+
*
|
|
133
|
+
* @example
|
|
134
|
+
* cx("base", isActive && "active", isDisabled && "disabled")
|
|
135
|
+
* // => "base active" (if isActive=true, isDisabled=false)
|
|
136
|
+
*/
|
|
137
|
+
export declare function cx(...classes: (string | false | null | undefined)[]): string;
|
|
138
|
+
|
|
139
|
+
export declare function DataTable<T extends Record<string, unknown>>({ columns, rows, loading, emptyState, onRowClick, }: DataTableProps<T>): JSX_2.Element;
|
|
140
|
+
|
|
141
|
+
declare type DataTableProps<T> = {
|
|
142
|
+
columns: Column<T>[];
|
|
143
|
+
rows: T[];
|
|
144
|
+
loading?: boolean;
|
|
145
|
+
emptyState?: default_2.ReactNode;
|
|
146
|
+
onRowClick?: (row: T) => void;
|
|
147
|
+
};
|
|
148
|
+
|
|
149
|
+
export declare function DiffRow({ title, handle, field, csvVal, storeVal, type, note }: DiffRowProps): JSX_2.Element;
|
|
150
|
+
|
|
151
|
+
declare type DiffRowProps = {
|
|
152
|
+
title: string;
|
|
153
|
+
handle: string;
|
|
154
|
+
field: string;
|
|
155
|
+
csvVal: string;
|
|
156
|
+
storeVal: string;
|
|
157
|
+
type: DiffType;
|
|
158
|
+
note?: string;
|
|
159
|
+
};
|
|
160
|
+
|
|
161
|
+
declare type DiffType = "added" | "modified" | "destructive" | "safe";
|
|
162
|
+
|
|
163
|
+
export declare const DownloadIcon: ({ size, filled, className, style, ...props }: IconProps) => JSX_2.Element;
|
|
164
|
+
|
|
165
|
+
declare type IconProps = default_2.SVGProps<SVGSVGElement> & {
|
|
166
|
+
size?: number | string;
|
|
167
|
+
filled?: boolean;
|
|
168
|
+
};
|
|
169
|
+
|
|
170
|
+
export declare const InfoIcon: ({ size, filled, className, style, ...props }: IconProps) => JSX_2.Element;
|
|
171
|
+
|
|
172
|
+
export declare function Input({ label, hint, error, prefix, suffix, type, placeholder, disabled, value, onChange, }: InputProps): JSX_2.Element;
|
|
173
|
+
|
|
174
|
+
declare type InputProps = {
|
|
175
|
+
label?: string;
|
|
176
|
+
hint?: string;
|
|
177
|
+
error?: string;
|
|
178
|
+
prefix?: default_2.ReactNode;
|
|
179
|
+
suffix?: default_2.ReactNode;
|
|
180
|
+
type?: "text" | "email" | "password" | "time" | "url";
|
|
181
|
+
placeholder?: string;
|
|
182
|
+
disabled?: boolean;
|
|
183
|
+
value: string;
|
|
184
|
+
onChange: (value: string) => void;
|
|
185
|
+
};
|
|
186
|
+
|
|
187
|
+
export declare function IssueCard({ severity, field, rowCount, message, fixable, onFix }: IssueCardProps): JSX_2.Element;
|
|
188
|
+
|
|
189
|
+
declare type IssueCardProps = {
|
|
190
|
+
severity: "error" | "warning" | "info";
|
|
191
|
+
field: string;
|
|
192
|
+
rowCount: number;
|
|
193
|
+
message: string;
|
|
194
|
+
fixable: boolean;
|
|
195
|
+
onFix?: () => void;
|
|
196
|
+
};
|
|
197
|
+
|
|
198
|
+
export declare function IssueGroup({ category, issues, defaultOpen }: IssueGroupProps): JSX_2.Element;
|
|
199
|
+
|
|
200
|
+
declare type IssueGroupProps = {
|
|
201
|
+
category: string;
|
|
202
|
+
issues: IssueCardProps[];
|
|
203
|
+
defaultOpen?: boolean;
|
|
204
|
+
};
|
|
205
|
+
|
|
206
|
+
export declare const LockIcon: ({ size, filled, className, style, ...props }: IconProps) => JSX_2.Element;
|
|
207
|
+
|
|
208
|
+
export declare const MenuIcon: ({ size, filled, className, style, ...props }: IconProps) => JSX_2.Element;
|
|
209
|
+
|
|
210
|
+
export declare const MiniStat: default_2.NamedExoticComponent<MiniStatProps>;
|
|
211
|
+
|
|
212
|
+
declare type MiniStatProps = {
|
|
213
|
+
value: string | default_2.ReactNode;
|
|
214
|
+
label: string;
|
|
215
|
+
tone?: "success" | "error" | "neutral" | "info";
|
|
216
|
+
};
|
|
217
|
+
|
|
218
|
+
export declare function Modal({ open, onClose, children, maxWidth, title, }: ModalProps): JSX_2.Element | null;
|
|
219
|
+
|
|
220
|
+
declare type ModalProps = {
|
|
221
|
+
open: boolean;
|
|
222
|
+
onClose: () => void;
|
|
223
|
+
children: default_2.ReactNode;
|
|
224
|
+
maxWidth?: number;
|
|
225
|
+
title?: string;
|
|
226
|
+
};
|
|
227
|
+
|
|
228
|
+
export declare const ModelTag: default_2.NamedExoticComponent<ModelTagProps>;
|
|
229
|
+
|
|
230
|
+
declare type ModelTagProps = {
|
|
231
|
+
name: string;
|
|
232
|
+
};
|
|
233
|
+
|
|
234
|
+
export declare function PageHeader({ title, sub, action }: PageHeaderProps): JSX_2.Element;
|
|
235
|
+
|
|
236
|
+
declare type PageHeaderProps = {
|
|
237
|
+
title: string;
|
|
238
|
+
sub?: string;
|
|
239
|
+
action?: default_2.ReactNode;
|
|
240
|
+
};
|
|
241
|
+
|
|
242
|
+
export declare const PlayIcon: ({ size, filled, className, style, ...props }: IconProps) => JSX_2.Element;
|
|
243
|
+
|
|
244
|
+
export declare const ProgressBar: default_2.NamedExoticComponent<ProgressBarProps>;
|
|
245
|
+
|
|
246
|
+
declare type ProgressBarProps = {
|
|
247
|
+
percent: number;
|
|
248
|
+
height?: number;
|
|
249
|
+
};
|
|
250
|
+
|
|
251
|
+
export declare function ProgressList({ steps }: ProgressListProps): JSX_2.Element;
|
|
252
|
+
|
|
253
|
+
declare type ProgressListProps = {
|
|
254
|
+
steps: ProgressStep[];
|
|
255
|
+
};
|
|
256
|
+
|
|
257
|
+
declare type ProgressStep = {
|
|
258
|
+
id: string;
|
|
259
|
+
label: string;
|
|
260
|
+
status: "pending" | "running" | "done";
|
|
261
|
+
value?: default_2.ReactNode;
|
|
262
|
+
};
|
|
263
|
+
|
|
264
|
+
export declare const radii: {
|
|
265
|
+
readonly none: "0px";
|
|
266
|
+
readonly xs: "4px";
|
|
267
|
+
readonly sm: "6px";
|
|
268
|
+
readonly md: "8px";
|
|
269
|
+
readonly lg: "10px";
|
|
270
|
+
readonly xl: "12px";
|
|
271
|
+
readonly "2xl": "16px";
|
|
272
|
+
readonly full: "9999px";
|
|
273
|
+
};
|
|
274
|
+
|
|
275
|
+
export declare type RadiiToken = keyof typeof radii;
|
|
276
|
+
|
|
277
|
+
export declare function Radio({ checked, onChange, value, name, disabled, label, description, id, }: RadioProps): JSX_2.Element;
|
|
278
|
+
|
|
279
|
+
declare type RadioProps = {
|
|
280
|
+
checked: boolean;
|
|
281
|
+
onChange: (checked: boolean) => void;
|
|
282
|
+
value?: string;
|
|
283
|
+
name?: string;
|
|
284
|
+
disabled?: boolean;
|
|
285
|
+
label?: string;
|
|
286
|
+
description?: string;
|
|
287
|
+
id?: string;
|
|
288
|
+
};
|
|
289
|
+
|
|
290
|
+
export declare const ScoreBar: default_2.NamedExoticComponent<ScoreBarProps>;
|
|
291
|
+
|
|
292
|
+
declare type ScoreBarProps = {
|
|
293
|
+
score: number;
|
|
294
|
+
max?: number;
|
|
295
|
+
width?: number | string;
|
|
296
|
+
showLabel?: boolean;
|
|
297
|
+
size?: "sm" | "md";
|
|
298
|
+
};
|
|
299
|
+
|
|
300
|
+
export declare const SearchIcon: ({ size, filled, className, style, ...props }: IconProps) => JSX_2.Element;
|
|
301
|
+
|
|
302
|
+
export declare const SectionLabel: default_2.NamedExoticComponent<SectionLabelProps>;
|
|
303
|
+
|
|
304
|
+
declare type SectionLabelProps = {
|
|
305
|
+
children: default_2.ReactNode;
|
|
306
|
+
action?: default_2.ReactNode;
|
|
307
|
+
};
|
|
308
|
+
|
|
309
|
+
export declare const SettingsIcon: ({ size, filled, className, style, ...props }: IconProps) => JSX_2.Element;
|
|
310
|
+
|
|
311
|
+
export declare const shadows: {
|
|
312
|
+
readonly none: "none";
|
|
313
|
+
readonly sm: "0 1px 3px rgba(0,0,0,0.06), 0 1px 2px rgba(0,0,0,0.04)";
|
|
314
|
+
readonly md: "0 4px 12px rgba(0,0,0,0.08), 0 2px 4px rgba(0,0,0,0.04)";
|
|
315
|
+
readonly lg: "0 20px 60px rgba(0,0,0,0.18)";
|
|
316
|
+
readonly focus: "0 0 0 3px rgba(26, 26, 26, 0.12)";
|
|
317
|
+
};
|
|
318
|
+
|
|
319
|
+
export declare type ShadowToken = keyof typeof shadows;
|
|
320
|
+
|
|
321
|
+
export declare const spacing: {
|
|
322
|
+
readonly 0: "0px";
|
|
323
|
+
readonly 1: "4px";
|
|
324
|
+
readonly 2: "8px";
|
|
325
|
+
readonly 3: "12px";
|
|
326
|
+
readonly 4: "16px";
|
|
327
|
+
readonly 5: "20px";
|
|
328
|
+
readonly 6: "24px";
|
|
329
|
+
readonly 8: "32px";
|
|
330
|
+
readonly 10: "40px";
|
|
331
|
+
readonly 12: "48px";
|
|
332
|
+
readonly 16: "64px";
|
|
333
|
+
readonly 20: "80px";
|
|
334
|
+
};
|
|
335
|
+
|
|
336
|
+
export declare type SpacingToken = keyof typeof spacing;
|
|
337
|
+
|
|
338
|
+
export declare const StarIcon: ({ size, filled, className, style, ...props }: IconProps) => JSX_2.Element;
|
|
339
|
+
|
|
340
|
+
declare type Stat = {
|
|
341
|
+
label: string;
|
|
342
|
+
value: string;
|
|
343
|
+
unit?: string;
|
|
344
|
+
sub?: string;
|
|
345
|
+
color?: string;
|
|
346
|
+
highlight?: boolean;
|
|
347
|
+
};
|
|
348
|
+
|
|
349
|
+
export declare function StatGrid({ stats, cols: _cols }: StatGridProps): JSX_2.Element;
|
|
350
|
+
|
|
351
|
+
declare type StatGridProps = {
|
|
352
|
+
stats: Stat[];
|
|
353
|
+
cols?: 2 | 3 | 4;
|
|
354
|
+
};
|
|
355
|
+
|
|
356
|
+
export declare const StatusDot: default_2.NamedExoticComponent<StatusDotProps>;
|
|
357
|
+
|
|
358
|
+
declare type StatusDotProps = {
|
|
359
|
+
tone: "success" | "warning" | "error" | "info" | "neutral";
|
|
360
|
+
size?: "sm" | "md";
|
|
361
|
+
pulse?: boolean;
|
|
362
|
+
};
|
|
363
|
+
|
|
364
|
+
export declare function StepBar({ steps, current }: StepBarProps): JSX_2.Element;
|
|
365
|
+
|
|
366
|
+
declare type StepBarProps = {
|
|
367
|
+
steps: string[];
|
|
368
|
+
current: number;
|
|
369
|
+
};
|
|
370
|
+
|
|
371
|
+
export declare const SummaryCard: default_2.NamedExoticComponent<SummaryCardProps>;
|
|
372
|
+
|
|
373
|
+
declare type SummaryCardProps = {
|
|
374
|
+
label: string;
|
|
375
|
+
value: string | number;
|
|
376
|
+
highlight?: boolean;
|
|
377
|
+
color?: string;
|
|
378
|
+
};
|
|
379
|
+
|
|
380
|
+
export declare function Switch({ checked, onChange, disabled, label, description, id }: SwitchProps): JSX_2.Element;
|
|
381
|
+
|
|
382
|
+
declare type SwitchProps = {
|
|
383
|
+
checked: boolean;
|
|
384
|
+
onChange: (checked: boolean) => void;
|
|
385
|
+
disabled?: boolean;
|
|
386
|
+
label?: string;
|
|
387
|
+
description?: string;
|
|
388
|
+
id?: string;
|
|
389
|
+
};
|
|
390
|
+
|
|
391
|
+
declare type Tab = {
|
|
392
|
+
id: string;
|
|
393
|
+
label: string;
|
|
394
|
+
badge?: number;
|
|
395
|
+
};
|
|
396
|
+
|
|
397
|
+
export declare function TabBar({ tabs, active, onChange, size }: TabBarProps): JSX_2.Element;
|
|
398
|
+
|
|
399
|
+
declare type TabBarProps = {
|
|
400
|
+
tabs: Tab[];
|
|
401
|
+
active: string;
|
|
402
|
+
onChange: (id: string) => void;
|
|
403
|
+
size?: "sm" | "md";
|
|
404
|
+
};
|
|
405
|
+
|
|
406
|
+
export declare function Toast({ open, onClose, message, tone, duration, action, }: ToastProps): JSX_2.Element | null;
|
|
407
|
+
|
|
408
|
+
declare type ToastProps = {
|
|
409
|
+
open: boolean;
|
|
410
|
+
onClose: () => void;
|
|
411
|
+
message: string;
|
|
412
|
+
tone?: ToastTone;
|
|
413
|
+
duration?: number;
|
|
414
|
+
action?: {
|
|
415
|
+
label: string;
|
|
416
|
+
onClick: () => void;
|
|
417
|
+
};
|
|
418
|
+
};
|
|
419
|
+
|
|
420
|
+
declare type ToastTone = "success" | "error" | "warning" | "info" | "neutral";
|
|
421
|
+
|
|
422
|
+
export declare function ToggleGroup({ options, value, onChange, fullWidth, }: ToggleGroupProps): JSX_2.Element;
|
|
423
|
+
|
|
424
|
+
declare type ToggleGroupProps = {
|
|
425
|
+
options: {
|
|
426
|
+
value: string;
|
|
427
|
+
label: string;
|
|
428
|
+
}[];
|
|
429
|
+
value: string;
|
|
430
|
+
onChange: (value: string) => void;
|
|
431
|
+
fullWidth?: boolean;
|
|
432
|
+
};
|
|
433
|
+
|
|
434
|
+
export declare const Trend: default_2.NamedExoticComponent<TrendProps>;
|
|
435
|
+
|
|
436
|
+
declare type TrendProps = {
|
|
437
|
+
value: number;
|
|
438
|
+
label?: string;
|
|
439
|
+
suffix?: string;
|
|
440
|
+
inverse?: boolean;
|
|
441
|
+
};
|
|
442
|
+
|
|
443
|
+
export declare const typography: {
|
|
444
|
+
readonly fontFamily: {
|
|
445
|
+
readonly base: "-apple-system, 'Helvetica Neue', sans-serif";
|
|
446
|
+
readonly mono: "'Menlo', 'Monaco', 'Courier New', monospace";
|
|
447
|
+
};
|
|
448
|
+
readonly size: {
|
|
449
|
+
readonly xs: "10px";
|
|
450
|
+
readonly sm: "11px";
|
|
451
|
+
readonly base: "13px";
|
|
452
|
+
readonly md: "14px";
|
|
453
|
+
readonly lg: "16px";
|
|
454
|
+
readonly xl: "20px";
|
|
455
|
+
readonly "2xl": "24px";
|
|
456
|
+
readonly "3xl": "32px";
|
|
457
|
+
};
|
|
458
|
+
readonly weight: {
|
|
459
|
+
readonly normal: 400;
|
|
460
|
+
readonly medium: 500;
|
|
461
|
+
readonly semibold: 600;
|
|
462
|
+
readonly bold: 700;
|
|
463
|
+
readonly extrabold: 800;
|
|
464
|
+
};
|
|
465
|
+
readonly lineHeight: {
|
|
466
|
+
readonly tight: 1.2;
|
|
467
|
+
readonly snug: 1.4;
|
|
468
|
+
readonly normal: 1.5;
|
|
469
|
+
readonly relaxed: 1.55;
|
|
470
|
+
readonly loose: 1.75;
|
|
471
|
+
};
|
|
472
|
+
readonly letterSpacing: {
|
|
473
|
+
readonly tight: "-0.02em";
|
|
474
|
+
readonly snug: "-0.01em";
|
|
475
|
+
readonly normal: "0em";
|
|
476
|
+
readonly wide: "0.02em";
|
|
477
|
+
};
|
|
478
|
+
};
|
|
479
|
+
|
|
480
|
+
export declare const UploadIcon: ({ size, filled, className, style, ...props }: IconProps) => JSX_2.Element;
|
|
481
|
+
|
|
482
|
+
/**
|
|
483
|
+
* Typed localStorage wrapper with SSR safety.
|
|
484
|
+
*
|
|
485
|
+
* @example
|
|
486
|
+
* const [tab, setTab] = useLocalStorage<string>("active-tab", "Overview");
|
|
487
|
+
*/
|
|
488
|
+
export declare function useLocalStorage<T>(key: string, initialValue: T): [T, (value: T | ((prev: T) => T)) => void];
|
|
489
|
+
|
|
490
|
+
/**
|
|
491
|
+
* Hook to manage modal open/close state.
|
|
492
|
+
*
|
|
493
|
+
* @example
|
|
494
|
+
* const { isOpen, open, close, toggle } = useModal();
|
|
495
|
+
* <Button onClick={open}>Open</Button>
|
|
496
|
+
* <Modal open={isOpen} onClose={close}>...</Modal>
|
|
497
|
+
*/
|
|
498
|
+
export declare function useModal(initialState?: boolean): {
|
|
499
|
+
readonly isOpen: boolean;
|
|
500
|
+
readonly open: () => void;
|
|
501
|
+
readonly close: () => void;
|
|
502
|
+
readonly toggle: () => void;
|
|
503
|
+
};
|
|
504
|
+
|
|
505
|
+
export declare const XIcon: ({ size, filled, className, style, ...props }: IconProps) => JSX_2.Element;
|
|
506
|
+
|
|
507
|
+
export { }
|