baseline-ds 0.1.4
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 +330 -0
- package/dist/index.css +1970 -0
- package/dist/index.css.map +1 -0
- package/dist/index.d.mts +743 -0
- package/dist/index.d.ts +743 -0
- package/dist/index.js +3843 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +3756 -0
- package/dist/index.mjs.map +1 -0
- package/dist/tokens/baseline/css/variables.css +278 -0
- package/dist/tokens/baseline/js/tokens.js +223 -0
- package/dist/tokens/baseline/json/tokens.json +305 -0
- package/dist/tokens/baseline/scss/_variables.scss +222 -0
- package/dist/tokens/baseline-pro/css/variables.css +278 -0
- package/dist/tokens/baseline-pro/js/tokens.js +223 -0
- package/dist/tokens/baseline-pro/json/tokens.json +305 -0
- package/dist/tokens/baseline-pro/scss/_variables.scss +222 -0
- package/dist/tokens/offset/css/variables.css +278 -0
- package/dist/tokens/offset/js/tokens.js +223 -0
- package/dist/tokens/offset/json/tokens.json +305 -0
- package/dist/tokens/offset/scss/_variables.scss +222 -0
- package/dist/tokens/primitives/css/variables.css +183 -0
- package/dist/tokens/primitives/js/tokens.js +181 -0
- package/dist/tokens/primitives/json/tokens.json +229 -0
- package/dist/tokens/primitives/scss/_variables.scss +180 -0
- package/dist/tokens/semantic/css/variables.css +48 -0
- package/dist/tokens/semantic/js/tokens.js +265 -0
- package/dist/tokens/semantic/json/tokens.json +395 -0
- package/dist/tokens/semantic/scss/_variables.scss +264 -0
- package/package.json +84 -0
- package/src/fonts.css +17 -0
- package/tokens/token_0001PrimitiveBrand_Baseline.json +204 -0
- package/tokens/token_0001PrimitiveBrand_BaselinePro.json +204 -0
- package/tokens/token_0001PrimitiveBrand_Offset.json +204 -0
- package/tokens/token_0100SemanticCore_Mode1.json +218 -0
- package/tokens/token__0000PrimitiveCore_Mode1.json +760 -0
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,743 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
type ButtonShape = 'Rectangle' | 'Pill' | 'Circle';
|
|
4
|
+
type ButtonHierarchy = 'Primary' | 'Secondary' | 'Tertiary';
|
|
5
|
+
interface ButtonProps {
|
|
6
|
+
label?: string;
|
|
7
|
+
leadingIcon?: boolean;
|
|
8
|
+
icon?: React.ReactNode | null;
|
|
9
|
+
chevron?: boolean;
|
|
10
|
+
shape?: ButtonShape;
|
|
11
|
+
hierarchy?: ButtonHierarchy;
|
|
12
|
+
onClick?: () => void;
|
|
13
|
+
disabled?: boolean;
|
|
14
|
+
className?: string;
|
|
15
|
+
}
|
|
16
|
+
declare const Button: React.FC<ButtonProps>;
|
|
17
|
+
|
|
18
|
+
type TextFieldSize = 'XSmall' | 'Small' | 'Medium' | 'Large';
|
|
19
|
+
type TextFieldState = 'Default' | 'Error' | 'Success' | 'Incomplete' | 'Complete' | 'Read only' | 'Disabled' | 'Loading';
|
|
20
|
+
interface TextFieldProps {
|
|
21
|
+
label?: string;
|
|
22
|
+
placeholder?: string;
|
|
23
|
+
value?: string;
|
|
24
|
+
defaultValue?: string;
|
|
25
|
+
size?: TextFieldSize;
|
|
26
|
+
state?: TextFieldState;
|
|
27
|
+
hint?: string;
|
|
28
|
+
showCharacterCount?: boolean;
|
|
29
|
+
maxLength?: number;
|
|
30
|
+
disabled?: boolean;
|
|
31
|
+
readOnly?: boolean;
|
|
32
|
+
leadingIcon?: React.ReactNode;
|
|
33
|
+
trailingIcon?: React.ReactNode;
|
|
34
|
+
leadingLabel?: string;
|
|
35
|
+
trailingLabel?: string;
|
|
36
|
+
onChange?: (value: string) => void;
|
|
37
|
+
onFocus?: () => void;
|
|
38
|
+
onBlur?: () => void;
|
|
39
|
+
className?: string;
|
|
40
|
+
}
|
|
41
|
+
declare const TextField: React.FC<TextFieldProps>;
|
|
42
|
+
|
|
43
|
+
type SelectSize = 'XSmall' | 'Small' | 'Medium' | 'Large';
|
|
44
|
+
type SelectState = 'Default' | 'Error' | 'Success' | 'Incomplete' | 'Complete' | 'Read only' | 'Disabled' | 'Loading';
|
|
45
|
+
interface SelectOption {
|
|
46
|
+
label: string;
|
|
47
|
+
value: string;
|
|
48
|
+
disabled?: boolean;
|
|
49
|
+
}
|
|
50
|
+
interface SelectProps {
|
|
51
|
+
label?: string;
|
|
52
|
+
placeholder?: string;
|
|
53
|
+
value?: string;
|
|
54
|
+
defaultValue?: string;
|
|
55
|
+
size?: SelectSize;
|
|
56
|
+
state?: SelectState;
|
|
57
|
+
hint?: string;
|
|
58
|
+
disabled?: boolean;
|
|
59
|
+
readOnly?: boolean;
|
|
60
|
+
options: SelectOption[];
|
|
61
|
+
onChange?: (value: string) => void;
|
|
62
|
+
onFocus?: () => void;
|
|
63
|
+
onBlur?: () => void;
|
|
64
|
+
className?: string;
|
|
65
|
+
}
|
|
66
|
+
declare const Select: React.FC<SelectProps>;
|
|
67
|
+
|
|
68
|
+
type FieldGroupSize = 'XSmall' | 'Small' | 'Medium' | 'Large';
|
|
69
|
+
type FieldGroupState = 'Default' | 'Error' | 'Success' | 'Incomplete' | 'Complete' | 'Read only' | 'Disabled' | 'Loading';
|
|
70
|
+
interface FieldGroupProps {
|
|
71
|
+
label?: string;
|
|
72
|
+
hint?: string;
|
|
73
|
+
size?: FieldGroupSize;
|
|
74
|
+
state?: FieldGroupState;
|
|
75
|
+
disabled?: boolean;
|
|
76
|
+
readOnly?: boolean;
|
|
77
|
+
selectPlaceholder?: string;
|
|
78
|
+
selectValue?: string;
|
|
79
|
+
selectDefaultValue?: string;
|
|
80
|
+
selectOptions: SelectOption[];
|
|
81
|
+
onSelectChange?: (value: string) => void;
|
|
82
|
+
textFieldPlaceholder?: string;
|
|
83
|
+
textFieldValue?: string;
|
|
84
|
+
textFieldDefaultValue?: string;
|
|
85
|
+
onTextFieldChange?: (value: string) => void;
|
|
86
|
+
onFocus?: () => void;
|
|
87
|
+
onBlur?: () => void;
|
|
88
|
+
className?: string;
|
|
89
|
+
}
|
|
90
|
+
declare const FieldGroup: React.FC<FieldGroupProps>;
|
|
91
|
+
|
|
92
|
+
type PasswordFieldSize = 'XSmall' | 'Small' | 'Medium' | 'Large';
|
|
93
|
+
type PasswordFieldState = 'Default' | 'Error' | 'Success' | 'Incomplete' | 'Complete' | 'Read only' | 'Disabled' | 'Loading';
|
|
94
|
+
interface PasswordFieldProps {
|
|
95
|
+
label?: string;
|
|
96
|
+
placeholder?: string;
|
|
97
|
+
value?: string;
|
|
98
|
+
defaultValue?: string;
|
|
99
|
+
size?: PasswordFieldSize;
|
|
100
|
+
state?: PasswordFieldState;
|
|
101
|
+
hint?: string;
|
|
102
|
+
disabled?: boolean;
|
|
103
|
+
readOnly?: boolean;
|
|
104
|
+
validation?: boolean;
|
|
105
|
+
visibilityToggle?: boolean;
|
|
106
|
+
onChange?: (value: string) => void;
|
|
107
|
+
onFocus?: () => void;
|
|
108
|
+
onBlur?: () => void;
|
|
109
|
+
className?: string;
|
|
110
|
+
}
|
|
111
|
+
declare const PasswordField: React.FC<PasswordFieldProps>;
|
|
112
|
+
|
|
113
|
+
type EmailFieldSize = 'XSmall' | 'Small' | 'Medium' | 'Large';
|
|
114
|
+
type EmailFieldState = 'Default' | 'Error' | 'Success' | 'Incomplete' | 'Complete' | 'Read only' | 'Disabled' | 'Loading';
|
|
115
|
+
interface EmailFieldProps {
|
|
116
|
+
label?: string;
|
|
117
|
+
placeholder?: string;
|
|
118
|
+
value?: string;
|
|
119
|
+
defaultValue?: string;
|
|
120
|
+
size?: EmailFieldSize;
|
|
121
|
+
state?: EmailFieldState;
|
|
122
|
+
hint?: string;
|
|
123
|
+
showCharacterCount?: boolean;
|
|
124
|
+
maxLength?: number;
|
|
125
|
+
disabled?: boolean;
|
|
126
|
+
readOnly?: boolean;
|
|
127
|
+
leadingIcon?: React.ReactNode;
|
|
128
|
+
trailingIcon?: React.ReactNode;
|
|
129
|
+
onChange?: (value: string) => void;
|
|
130
|
+
onFocus?: () => void;
|
|
131
|
+
onBlur?: () => void;
|
|
132
|
+
className?: string;
|
|
133
|
+
}
|
|
134
|
+
declare const EmailField: React.FC<EmailFieldProps>;
|
|
135
|
+
|
|
136
|
+
type NumberFieldSize = 'XSmall' | 'Small' | 'Medium' | 'Large';
|
|
137
|
+
type NumberFieldState = 'Default' | 'Error' | 'Success' | 'Incomplete' | 'Complete' | 'Read only' | 'Disabled' | 'Loading';
|
|
138
|
+
interface NumberFieldProps {
|
|
139
|
+
label?: string;
|
|
140
|
+
placeholder?: string;
|
|
141
|
+
value?: number | string;
|
|
142
|
+
defaultValue?: number | string;
|
|
143
|
+
size?: NumberFieldSize;
|
|
144
|
+
state?: NumberFieldState;
|
|
145
|
+
hint?: string;
|
|
146
|
+
showCharacterCount?: boolean;
|
|
147
|
+
min?: number;
|
|
148
|
+
max?: number;
|
|
149
|
+
step?: number;
|
|
150
|
+
disabled?: boolean;
|
|
151
|
+
readOnly?: boolean;
|
|
152
|
+
leadingIcon?: React.ReactNode;
|
|
153
|
+
trailingIcon?: React.ReactNode;
|
|
154
|
+
leadingLabel?: string;
|
|
155
|
+
trailingLabel?: string;
|
|
156
|
+
onChange?: (value: number | string) => void;
|
|
157
|
+
onFocus?: () => void;
|
|
158
|
+
onBlur?: () => void;
|
|
159
|
+
className?: string;
|
|
160
|
+
}
|
|
161
|
+
declare const NumberField: React.FC<NumberFieldProps>;
|
|
162
|
+
|
|
163
|
+
type InputElementInputFieldSize = 'XSmall' | 'Small' | 'Medium' | 'Large';
|
|
164
|
+
type InputElementInputFieldState = 'Default' | 'Error' | 'Success' | 'Incomplete' | 'Complete' | 'Read only' | 'Disabled' | 'Loading';
|
|
165
|
+
interface InputElementInputFieldProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'> {
|
|
166
|
+
size?: InputElementInputFieldSize;
|
|
167
|
+
state?: InputElementInputFieldState;
|
|
168
|
+
leadingIcon?: boolean;
|
|
169
|
+
leadingLabel?: boolean;
|
|
170
|
+
trailingIcon?: boolean;
|
|
171
|
+
trailingLabel?: boolean;
|
|
172
|
+
leadingLabelText?: string;
|
|
173
|
+
trailingLabelText?: string;
|
|
174
|
+
className?: string;
|
|
175
|
+
}
|
|
176
|
+
declare const InputElementInputField: React.FC<InputElementInputFieldProps>;
|
|
177
|
+
|
|
178
|
+
type InputElementLabelSize = 'XSmall' | 'Small' | 'Medium' | 'Large';
|
|
179
|
+
interface InputElementLabelProps {
|
|
180
|
+
children: React.ReactNode;
|
|
181
|
+
size?: InputElementLabelSize;
|
|
182
|
+
characterCount?: boolean;
|
|
183
|
+
maxLength?: number;
|
|
184
|
+
currentLength?: number;
|
|
185
|
+
htmlFor?: string;
|
|
186
|
+
className?: string;
|
|
187
|
+
}
|
|
188
|
+
declare const InputElementLabel: React.FC<InputElementLabelProps>;
|
|
189
|
+
|
|
190
|
+
type InputElementLeadingLabelSize = 'XSmall' | 'Small' | 'Medium' | 'Large';
|
|
191
|
+
interface InputElementLeadingLabelProps {
|
|
192
|
+
leadingLabelText?: string;
|
|
193
|
+
size?: InputElementLeadingLabelSize;
|
|
194
|
+
className?: string;
|
|
195
|
+
}
|
|
196
|
+
declare const InputElementLeadingLabel: React.FC<InputElementLeadingLabelProps>;
|
|
197
|
+
|
|
198
|
+
type InputElementContentTextSize = 'XSmall' | 'Small' | 'Medium' | 'Large';
|
|
199
|
+
interface InputElementContentTextProps {
|
|
200
|
+
size?: InputElementContentTextSize;
|
|
201
|
+
placeholder?: boolean;
|
|
202
|
+
secure?: boolean;
|
|
203
|
+
value?: string;
|
|
204
|
+
className?: string;
|
|
205
|
+
}
|
|
206
|
+
declare const InputElementContentText: React.FC<InputElementContentTextProps>;
|
|
207
|
+
|
|
208
|
+
interface InputElementHintProps {
|
|
209
|
+
children: React.ReactNode;
|
|
210
|
+
showIcon?: boolean;
|
|
211
|
+
icon?: React.ReactNode;
|
|
212
|
+
className?: string;
|
|
213
|
+
}
|
|
214
|
+
declare const InputElementHint: React.FC<InputElementHintProps>;
|
|
215
|
+
|
|
216
|
+
type InputElementProgressBarState = 'Empty' | 'In Progress' | 'Complete';
|
|
217
|
+
interface InputElementProgressBarProps {
|
|
218
|
+
state?: InputElementProgressBarState;
|
|
219
|
+
progress?: number;
|
|
220
|
+
className?: string;
|
|
221
|
+
}
|
|
222
|
+
declare const InputElementProgressBar: React.FC<InputElementProgressBarProps>;
|
|
223
|
+
|
|
224
|
+
type InputElementMenuSize = 'XSmall' | 'Small' | 'Medium' | 'Large';
|
|
225
|
+
interface InputElementMenuItem {
|
|
226
|
+
label: string;
|
|
227
|
+
value: string;
|
|
228
|
+
disabled?: boolean;
|
|
229
|
+
}
|
|
230
|
+
interface InputElementMenuProps {
|
|
231
|
+
items: InputElementMenuItem[];
|
|
232
|
+
size?: InputElementMenuSize;
|
|
233
|
+
onSelect?: (item: InputElementMenuItem) => void;
|
|
234
|
+
className?: string;
|
|
235
|
+
}
|
|
236
|
+
declare const InputElementMenu: React.FC<InputElementMenuProps>;
|
|
237
|
+
|
|
238
|
+
interface PlaceholderProps {
|
|
239
|
+
/**
|
|
240
|
+
* Custom className for the placeholder
|
|
241
|
+
*/
|
|
242
|
+
className?: string;
|
|
243
|
+
/**
|
|
244
|
+
* Custom inline styles
|
|
245
|
+
*/
|
|
246
|
+
style?: React.CSSProperties;
|
|
247
|
+
}
|
|
248
|
+
declare const Placeholder: React.FC<PlaceholderProps>;
|
|
249
|
+
|
|
250
|
+
type StepStatus = 'completed' | 'in-progress' | 'not-started';
|
|
251
|
+
interface Step {
|
|
252
|
+
/**
|
|
253
|
+
* Unique identifier for the step
|
|
254
|
+
*/
|
|
255
|
+
id: string | number;
|
|
256
|
+
/**
|
|
257
|
+
* Label displayed below the step indicator
|
|
258
|
+
*/
|
|
259
|
+
label: string;
|
|
260
|
+
/**
|
|
261
|
+
* Status of the step - determines visual appearance
|
|
262
|
+
*/
|
|
263
|
+
status: StepStatus;
|
|
264
|
+
}
|
|
265
|
+
interface ProgressStepsProps {
|
|
266
|
+
/**
|
|
267
|
+
* Array of steps to display
|
|
268
|
+
*/
|
|
269
|
+
steps: Step[];
|
|
270
|
+
/**
|
|
271
|
+
* Currently active step index (0-based)
|
|
272
|
+
*/
|
|
273
|
+
activeStepIndex?: number;
|
|
274
|
+
/**
|
|
275
|
+
* Callback when a step is clicked
|
|
276
|
+
*/
|
|
277
|
+
onStepClick?: (stepIndex: number, step: Step) => void;
|
|
278
|
+
/**
|
|
279
|
+
* Whether steps are clickable
|
|
280
|
+
*/
|
|
281
|
+
clickable?: boolean;
|
|
282
|
+
/**
|
|
283
|
+
* Custom className
|
|
284
|
+
*/
|
|
285
|
+
className?: string;
|
|
286
|
+
}
|
|
287
|
+
declare const ProgressSteps: React.FC<ProgressStepsProps>;
|
|
288
|
+
|
|
289
|
+
type SwitchState = 'default' | 'disabled';
|
|
290
|
+
interface SwitchProps {
|
|
291
|
+
/**
|
|
292
|
+
* Default checked state
|
|
293
|
+
*/
|
|
294
|
+
defaultChecked?: boolean;
|
|
295
|
+
/**
|
|
296
|
+
* State of the switch
|
|
297
|
+
*/
|
|
298
|
+
state?: SwitchState;
|
|
299
|
+
/**
|
|
300
|
+
* Callback when switch is toggled
|
|
301
|
+
*/
|
|
302
|
+
onChange?: (checked: boolean) => void;
|
|
303
|
+
/**
|
|
304
|
+
* Callback when switch receives focus
|
|
305
|
+
*/
|
|
306
|
+
onFocus?: () => void;
|
|
307
|
+
/**
|
|
308
|
+
* Callback when switch loses focus
|
|
309
|
+
*/
|
|
310
|
+
onBlur?: () => void;
|
|
311
|
+
/**
|
|
312
|
+
* Accessible label for the switch (not visually rendered, but used for accessibility)
|
|
313
|
+
*/
|
|
314
|
+
'aria-label'?: string;
|
|
315
|
+
/**
|
|
316
|
+
* ID of element that labels this switch
|
|
317
|
+
*/
|
|
318
|
+
'aria-labelledby'?: string;
|
|
319
|
+
/**
|
|
320
|
+
* Custom className
|
|
321
|
+
*/
|
|
322
|
+
className?: string;
|
|
323
|
+
}
|
|
324
|
+
declare const Switch: React.FC<SwitchProps>;
|
|
325
|
+
|
|
326
|
+
type KnobState = 'default' | 'active' | 'disabled';
|
|
327
|
+
interface KnobProps {
|
|
328
|
+
/**
|
|
329
|
+
* State of the knob
|
|
330
|
+
*/
|
|
331
|
+
state?: KnobState;
|
|
332
|
+
/**
|
|
333
|
+
* Whether to show the label above the knob
|
|
334
|
+
*/
|
|
335
|
+
showLabel?: boolean;
|
|
336
|
+
/**
|
|
337
|
+
* Text to display in the label
|
|
338
|
+
*/
|
|
339
|
+
labelText?: string;
|
|
340
|
+
/**
|
|
341
|
+
* Custom className
|
|
342
|
+
*/
|
|
343
|
+
className?: string;
|
|
344
|
+
}
|
|
345
|
+
declare const Knob: React.FC<KnobProps>;
|
|
346
|
+
|
|
347
|
+
type SliderLayout = 'Simple' | 'Range';
|
|
348
|
+
type SliderState = 'Default' | 'Disabled';
|
|
349
|
+
interface SliderProps {
|
|
350
|
+
/**
|
|
351
|
+
* Layout type: Simple (single value) or Range (two values)
|
|
352
|
+
*/
|
|
353
|
+
layout?: SliderLayout;
|
|
354
|
+
/**
|
|
355
|
+
* State of the slider
|
|
356
|
+
*/
|
|
357
|
+
state?: SliderState;
|
|
358
|
+
/**
|
|
359
|
+
* Minimum value
|
|
360
|
+
*/
|
|
361
|
+
min?: number;
|
|
362
|
+
/**
|
|
363
|
+
* Maximum value
|
|
364
|
+
*/
|
|
365
|
+
max?: number;
|
|
366
|
+
/**
|
|
367
|
+
* Step value
|
|
368
|
+
*/
|
|
369
|
+
step?: number;
|
|
370
|
+
/**
|
|
371
|
+
* Value for simple slider (uncontrolled)
|
|
372
|
+
*/
|
|
373
|
+
defaultValue?: number;
|
|
374
|
+
/**
|
|
375
|
+
* Values for range slider (uncontrolled) - [minValue, maxValue]
|
|
376
|
+
*/
|
|
377
|
+
defaultValues?: [number, number];
|
|
378
|
+
/**
|
|
379
|
+
* Callback when value changes (simple slider)
|
|
380
|
+
*/
|
|
381
|
+
onChange?: (value: number) => void;
|
|
382
|
+
/**
|
|
383
|
+
* Callback when values change (range slider)
|
|
384
|
+
*/
|
|
385
|
+
onRangeChange?: (values: [number, number]) => void;
|
|
386
|
+
/**
|
|
387
|
+
* Whether to show labels on knobs
|
|
388
|
+
*/
|
|
389
|
+
showLabels?: boolean;
|
|
390
|
+
/**
|
|
391
|
+
* When true, labels only show on active state (dragging, hover, focus).
|
|
392
|
+
* When false, labels always show when showLabels is true.
|
|
393
|
+
*/
|
|
394
|
+
labelOnActive?: boolean;
|
|
395
|
+
/**
|
|
396
|
+
* Optional left icon/enhancer
|
|
397
|
+
*/
|
|
398
|
+
leftIcon?: React.ReactNode;
|
|
399
|
+
/**
|
|
400
|
+
* Optional right icon/enhancer
|
|
401
|
+
*/
|
|
402
|
+
rightIcon?: React.ReactNode;
|
|
403
|
+
/**
|
|
404
|
+
* Custom className
|
|
405
|
+
*/
|
|
406
|
+
className?: string;
|
|
407
|
+
}
|
|
408
|
+
declare const Slider: React.FC<SliderProps>;
|
|
409
|
+
|
|
410
|
+
interface CheckboxProps {
|
|
411
|
+
/**
|
|
412
|
+
* Whether the checkbox is checked (controlled)
|
|
413
|
+
*/
|
|
414
|
+
checked?: boolean;
|
|
415
|
+
/**
|
|
416
|
+
* Default checked state (uncontrolled)
|
|
417
|
+
*/
|
|
418
|
+
defaultChecked?: boolean;
|
|
419
|
+
/**
|
|
420
|
+
* Whether the checkbox is in an indeterminate state
|
|
421
|
+
*/
|
|
422
|
+
indeterminate?: boolean;
|
|
423
|
+
/**
|
|
424
|
+
* Whether the checkbox is disabled
|
|
425
|
+
*/
|
|
426
|
+
disabled?: boolean;
|
|
427
|
+
/**
|
|
428
|
+
* Label text (optional - if not provided, checkbox renders without label)
|
|
429
|
+
*/
|
|
430
|
+
label?: string;
|
|
431
|
+
/**
|
|
432
|
+
* Callback when checkbox state changes
|
|
433
|
+
*/
|
|
434
|
+
onChange?: (checked: boolean) => void;
|
|
435
|
+
/**
|
|
436
|
+
* Callback when checkbox receives focus
|
|
437
|
+
*/
|
|
438
|
+
onFocus?: () => void;
|
|
439
|
+
/**
|
|
440
|
+
* Callback when checkbox loses focus
|
|
441
|
+
*/
|
|
442
|
+
onBlur?: () => void;
|
|
443
|
+
/**
|
|
444
|
+
* Custom className
|
|
445
|
+
*/
|
|
446
|
+
className?: string;
|
|
447
|
+
}
|
|
448
|
+
declare const Checkbox: React.FC<CheckboxProps>;
|
|
449
|
+
|
|
450
|
+
interface RadioProps {
|
|
451
|
+
/**
|
|
452
|
+
* Value of the radio button
|
|
453
|
+
*/
|
|
454
|
+
value: string;
|
|
455
|
+
/**
|
|
456
|
+
* Name of the radio group (required for grouping)
|
|
457
|
+
*/
|
|
458
|
+
name: string;
|
|
459
|
+
/**
|
|
460
|
+
* Whether the radio is checked (controlled)
|
|
461
|
+
*/
|
|
462
|
+
checked?: boolean;
|
|
463
|
+
/**
|
|
464
|
+
* Default checked state (uncontrolled)
|
|
465
|
+
*/
|
|
466
|
+
defaultChecked?: boolean;
|
|
467
|
+
/**
|
|
468
|
+
* Whether the radio is disabled
|
|
469
|
+
*/
|
|
470
|
+
disabled?: boolean;
|
|
471
|
+
/**
|
|
472
|
+
* Label text (optional - if not provided, radio renders without label)
|
|
473
|
+
*/
|
|
474
|
+
label?: string;
|
|
475
|
+
/**
|
|
476
|
+
* Callback when radio state changes
|
|
477
|
+
*/
|
|
478
|
+
onChange?: (value: string) => void;
|
|
479
|
+
/**
|
|
480
|
+
* Callback when radio receives focus
|
|
481
|
+
*/
|
|
482
|
+
onFocus?: () => void;
|
|
483
|
+
/**
|
|
484
|
+
* Callback when radio loses focus
|
|
485
|
+
*/
|
|
486
|
+
onBlur?: () => void;
|
|
487
|
+
/**
|
|
488
|
+
* Custom className
|
|
489
|
+
*/
|
|
490
|
+
className?: string;
|
|
491
|
+
}
|
|
492
|
+
declare const Radio: React.FC<RadioProps>;
|
|
493
|
+
|
|
494
|
+
declare const BRAND_THEMES: {
|
|
495
|
+
readonly baseline: "baseline";
|
|
496
|
+
readonly 'baseline-pro': "baseline-pro";
|
|
497
|
+
readonly offset: "offset";
|
|
498
|
+
};
|
|
499
|
+
type BrandTheme = keyof typeof BRAND_THEMES;
|
|
500
|
+
|
|
501
|
+
type LogoVariant = 'color' | 'mono-light' | 'mono-dark';
|
|
502
|
+
interface LogoProps {
|
|
503
|
+
/**
|
|
504
|
+
* Brand theme - if not provided, will use Storybook context or default to 'baseline'
|
|
505
|
+
*/
|
|
506
|
+
brand?: BrandTheme;
|
|
507
|
+
/**
|
|
508
|
+
* Logo variant: color (default), mono-light, or mono-dark
|
|
509
|
+
*/
|
|
510
|
+
variant?: LogoVariant;
|
|
511
|
+
/**
|
|
512
|
+
* Width of the logo (height will be calculated to maintain aspect ratio)
|
|
513
|
+
*/
|
|
514
|
+
width?: number | string;
|
|
515
|
+
/**
|
|
516
|
+
* Height of the logo (width will be calculated to maintain aspect ratio)
|
|
517
|
+
* If both width and height are provided, width takes precedence
|
|
518
|
+
*/
|
|
519
|
+
height?: number | string;
|
|
520
|
+
/**
|
|
521
|
+
* Show only the logomark (icon) without the wordmark (text)
|
|
522
|
+
*/
|
|
523
|
+
logomarkOnly?: boolean;
|
|
524
|
+
/**
|
|
525
|
+
* Custom className
|
|
526
|
+
*/
|
|
527
|
+
className?: string;
|
|
528
|
+
}
|
|
529
|
+
declare const Logo: React.FC<LogoProps>;
|
|
530
|
+
|
|
531
|
+
type MenuItemState = 'Default' | 'Hover' | 'Active';
|
|
532
|
+
interface MenuItemProps {
|
|
533
|
+
/**
|
|
534
|
+
* Menu item label
|
|
535
|
+
*/
|
|
536
|
+
label: string;
|
|
537
|
+
/**
|
|
538
|
+
* Menu item state
|
|
539
|
+
*/
|
|
540
|
+
state?: MenuItemState;
|
|
541
|
+
/**
|
|
542
|
+
* Click handler
|
|
543
|
+
*/
|
|
544
|
+
onClick?: () => void;
|
|
545
|
+
/**
|
|
546
|
+
* Custom className
|
|
547
|
+
*/
|
|
548
|
+
className?: string;
|
|
549
|
+
/**
|
|
550
|
+
* URL for navigation (if provided, renders as link)
|
|
551
|
+
*/
|
|
552
|
+
href?: string;
|
|
553
|
+
}
|
|
554
|
+
declare const MenuItem: React.FC<MenuItemProps>;
|
|
555
|
+
|
|
556
|
+
interface NavigationItem {
|
|
557
|
+
/**
|
|
558
|
+
* Menu item label
|
|
559
|
+
*/
|
|
560
|
+
label: string;
|
|
561
|
+
/**
|
|
562
|
+
* Menu item state
|
|
563
|
+
*/
|
|
564
|
+
state?: MenuItemState;
|
|
565
|
+
/**
|
|
566
|
+
* Click handler
|
|
567
|
+
*/
|
|
568
|
+
onClick?: () => void;
|
|
569
|
+
/**
|
|
570
|
+
* URL for navigation
|
|
571
|
+
*/
|
|
572
|
+
href?: string;
|
|
573
|
+
}
|
|
574
|
+
interface HeaderNavigationProps {
|
|
575
|
+
/**
|
|
576
|
+
* Brand theme for the logo
|
|
577
|
+
*/
|
|
578
|
+
brand?: BrandTheme;
|
|
579
|
+
/**
|
|
580
|
+
* Navigation menu items
|
|
581
|
+
*/
|
|
582
|
+
items?: NavigationItem[];
|
|
583
|
+
/**
|
|
584
|
+
* CTA button label
|
|
585
|
+
*/
|
|
586
|
+
ctaLabel?: string;
|
|
587
|
+
/**
|
|
588
|
+
* CTA button onClick handler
|
|
589
|
+
*/
|
|
590
|
+
onCtaClick?: () => void;
|
|
591
|
+
/**
|
|
592
|
+
* CTA button href (if provided, renders as link)
|
|
593
|
+
*/
|
|
594
|
+
ctaHref?: string;
|
|
595
|
+
/**
|
|
596
|
+
* Custom className
|
|
597
|
+
*/
|
|
598
|
+
className?: string;
|
|
599
|
+
}
|
|
600
|
+
declare const HeaderNavigation: React.FC<HeaderNavigationProps>;
|
|
601
|
+
|
|
602
|
+
interface HamburgerMenuButtonProps {
|
|
603
|
+
/**
|
|
604
|
+
* Whether the menu is open (shows X) or closed (shows hamburger)
|
|
605
|
+
*/
|
|
606
|
+
isOpen: boolean;
|
|
607
|
+
/**
|
|
608
|
+
* Click handler
|
|
609
|
+
*/
|
|
610
|
+
onClick?: () => void;
|
|
611
|
+
/**
|
|
612
|
+
* Custom className
|
|
613
|
+
*/
|
|
614
|
+
className?: string;
|
|
615
|
+
/**
|
|
616
|
+
* ARIA label for accessibility
|
|
617
|
+
*/
|
|
618
|
+
'aria-label'?: string;
|
|
619
|
+
}
|
|
620
|
+
declare const HamburgerMenuButton: React.FC<HamburgerMenuButtonProps>;
|
|
621
|
+
|
|
622
|
+
interface IconProps extends React.SVGProps<SVGSVGElement> {
|
|
623
|
+
size?: number | string;
|
|
624
|
+
color?: string;
|
|
625
|
+
'aria-label'?: string;
|
|
626
|
+
'aria-hidden'?: boolean;
|
|
627
|
+
}
|
|
628
|
+
|
|
629
|
+
declare const IconAi: React.FC<IconProps>;
|
|
630
|
+
|
|
631
|
+
declare const IconAlert: React.FC<IconProps>;
|
|
632
|
+
|
|
633
|
+
declare const IconArchive: React.FC<IconProps>;
|
|
634
|
+
|
|
635
|
+
declare const IconArrowLeft: React.FC<IconProps>;
|
|
636
|
+
|
|
637
|
+
declare const IconArrowRight: React.FC<IconProps>;
|
|
638
|
+
|
|
639
|
+
declare const IconCalendarTick: React.FC<IconProps>;
|
|
640
|
+
|
|
641
|
+
declare const IconCamera: React.FC<IconProps>;
|
|
642
|
+
|
|
643
|
+
declare const IconCart: React.FC<IconProps>;
|
|
644
|
+
|
|
645
|
+
declare const IconChart: React.FC<IconProps>;
|
|
646
|
+
|
|
647
|
+
declare const IconChatAlert: React.FC<IconProps>;
|
|
648
|
+
|
|
649
|
+
declare const IconChat: React.FC<IconProps>;
|
|
650
|
+
|
|
651
|
+
declare const IconCheck: React.FC<IconProps>;
|
|
652
|
+
|
|
653
|
+
declare const IconChevronDown: React.FC<IconProps>;
|
|
654
|
+
|
|
655
|
+
declare const IconChevronLeft: React.FC<IconProps>;
|
|
656
|
+
|
|
657
|
+
declare const IconChevronRight: React.FC<IconProps>;
|
|
658
|
+
|
|
659
|
+
declare const IconChevronUp: React.FC<IconProps>;
|
|
660
|
+
|
|
661
|
+
declare const IconChicken: React.FC<IconProps>;
|
|
662
|
+
|
|
663
|
+
declare const IconClose: React.FC<IconProps>;
|
|
664
|
+
|
|
665
|
+
declare const IconCloudLightning: React.FC<IconProps>;
|
|
666
|
+
|
|
667
|
+
declare const IconCoffee: React.FC<IconProps>;
|
|
668
|
+
|
|
669
|
+
declare const IconComputer: React.FC<IconProps>;
|
|
670
|
+
|
|
671
|
+
declare const IconCurrency: React.FC<IconProps>;
|
|
672
|
+
|
|
673
|
+
declare const IconCursor: React.FC<IconProps>;
|
|
674
|
+
|
|
675
|
+
declare const IconCut: React.FC<IconProps>;
|
|
676
|
+
|
|
677
|
+
declare const IconDark: React.FC<IconProps>;
|
|
678
|
+
|
|
679
|
+
declare const IconDownload: React.FC<IconProps>;
|
|
680
|
+
|
|
681
|
+
declare const IconError: React.FC<IconProps>;
|
|
682
|
+
|
|
683
|
+
declare const IconEyeClosed: React.FC<IconProps>;
|
|
684
|
+
|
|
685
|
+
declare const IconEyeOpen: React.FC<IconProps>;
|
|
686
|
+
|
|
687
|
+
declare const IconFilter: React.FC<IconProps>;
|
|
688
|
+
|
|
689
|
+
declare const IconGift: React.FC<IconProps>;
|
|
690
|
+
|
|
691
|
+
declare const IconHandOk: React.FC<IconProps>;
|
|
692
|
+
|
|
693
|
+
declare const IconHeart: React.FC<IconProps>;
|
|
694
|
+
|
|
695
|
+
declare const IconHelp: React.FC<IconProps>;
|
|
696
|
+
|
|
697
|
+
declare const IconIdentity: React.FC<IconProps>;
|
|
698
|
+
|
|
699
|
+
declare const IconLaughing: React.FC<IconProps>;
|
|
700
|
+
|
|
701
|
+
declare const IconLightning: React.FC<IconProps>;
|
|
702
|
+
|
|
703
|
+
declare const IconLine: React.FC<IconProps>;
|
|
704
|
+
|
|
705
|
+
declare const IconList: React.FC<IconProps>;
|
|
706
|
+
|
|
707
|
+
declare const IconLoading: React.FC<IconProps>;
|
|
708
|
+
|
|
709
|
+
declare const IconMenu: React.FC<IconProps>;
|
|
710
|
+
|
|
711
|
+
declare const IconMicrophone: React.FC<IconProps>;
|
|
712
|
+
|
|
713
|
+
declare const IconMinus: React.FC<IconProps>;
|
|
714
|
+
|
|
715
|
+
declare const IconMoney: React.FC<IconProps>;
|
|
716
|
+
|
|
717
|
+
declare const IconPhotos: React.FC<IconProps>;
|
|
718
|
+
|
|
719
|
+
declare const IconPlus: React.FC<IconProps>;
|
|
720
|
+
|
|
721
|
+
declare const IconReload: React.FC<IconProps>;
|
|
722
|
+
|
|
723
|
+
declare const IconResize: React.FC<IconProps>;
|
|
724
|
+
|
|
725
|
+
declare const IconRobot: React.FC<IconProps>;
|
|
726
|
+
|
|
727
|
+
declare const IconSettings: React.FC<IconProps>;
|
|
728
|
+
|
|
729
|
+
declare const IconSkull: React.FC<IconProps>;
|
|
730
|
+
|
|
731
|
+
declare const IconStarCircle: React.FC<IconProps>;
|
|
732
|
+
|
|
733
|
+
declare const IconSuccess: React.FC<IconProps>;
|
|
734
|
+
|
|
735
|
+
declare const IconText: React.FC<IconProps>;
|
|
736
|
+
|
|
737
|
+
declare const IconVideo: React.FC<IconProps>;
|
|
738
|
+
|
|
739
|
+
declare const IconWarning: React.FC<IconProps>;
|
|
740
|
+
|
|
741
|
+
declare const IconWatch: React.FC<IconProps>;
|
|
742
|
+
|
|
743
|
+
export { Button, type ButtonHierarchy, type ButtonProps, type ButtonShape, Checkbox, type CheckboxProps, EmailField, type EmailFieldProps, type EmailFieldSize, type EmailFieldState, FieldGroup, type FieldGroupProps, type FieldGroupSize, type FieldGroupState, HamburgerMenuButton, type HamburgerMenuButtonProps, HeaderNavigation, type HeaderNavigationProps, IconAi, IconAlert, IconArchive, IconArrowLeft, IconArrowRight, IconCalendarTick, IconCamera, IconCart, IconChart, IconChat, IconChatAlert, IconCheck, IconChevronDown, IconChevronLeft, IconChevronRight, IconChevronUp, IconChicken, IconClose, IconCloudLightning, IconCoffee, IconComputer, IconCurrency, IconCursor, IconCut, IconDark, IconDownload, IconError, IconEyeClosed, IconEyeOpen, IconFilter, IconGift, IconHandOk, IconHeart, IconHelp, IconIdentity, IconLaughing, IconLightning, IconLine, IconList, IconLoading, IconMenu, IconMicrophone, IconMinus, IconMoney, IconPhotos, IconPlus, type IconProps, IconReload, IconResize, IconRobot, IconSettings, IconSkull, IconStarCircle, IconSuccess, IconText, IconVideo, IconWarning, IconWatch, InputElementContentText, type InputElementContentTextProps, type InputElementContentTextSize, InputElementHint, type InputElementHintProps, InputElementInputField, type InputElementInputFieldProps, type InputElementInputFieldSize, type InputElementInputFieldState, InputElementLabel, type InputElementLabelProps, type InputElementLabelSize, InputElementLeadingLabel, type InputElementLeadingLabelProps, type InputElementLeadingLabelSize, InputElementMenu, type InputElementMenuItem, type InputElementMenuProps, type InputElementMenuSize, InputElementProgressBar, type InputElementProgressBarProps, type InputElementProgressBarState, Knob, type KnobProps, type KnobState, Logo, type LogoProps, type LogoVariant, MenuItem, type MenuItemProps, type MenuItemState, type NavigationItem, NumberField, type NumberFieldProps, type NumberFieldSize, type NumberFieldState, PasswordField, type PasswordFieldProps, type PasswordFieldSize, type PasswordFieldState, Placeholder, type PlaceholderProps, ProgressSteps, type ProgressStepsProps, Radio, type RadioProps, Select, type SelectOption, type SelectProps, type SelectSize, type SelectState, Slider, type SliderLayout, type SliderProps, type SliderState, type Step, type StepStatus, Switch, type SwitchProps, type SwitchState, TextField, type TextFieldProps, type TextFieldSize, type TextFieldState };
|