@protonradio/proton-ui 0.11.0-beta.22 → 0.11.0-beta.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 +73 -153
- package/dist/constants.cjs.js +1 -1
- package/dist/constants.cjs.js.map +1 -1
- package/dist/constants.d.ts +147 -4
- package/dist/constants.es.js +19 -7
- package/dist/constants.es.js.map +1 -1
- package/dist/hooks.cjs.js +1 -1
- package/dist/hooks.cjs.js.map +1 -1
- package/dist/hooks.d.ts +5 -34
- package/dist/hooks.es.js +4 -36
- package/dist/hooks.es.js.map +1 -1
- package/dist/icons.svg +10 -10
- package/dist/index.cjs.js +12 -12
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +296 -517
- package/dist/index.es.js +11467 -10020
- package/dist/index.es.js.map +1 -1
- package/dist/palettes-BX86v-qb.js +2 -0
- package/dist/palettes-BX86v-qb.js.map +1 -0
- package/dist/palettes-mcF0lNKY.mjs +171 -0
- package/dist/palettes-mcF0lNKY.mjs.map +1 -0
- package/dist/style.css +1 -1
- package/dist/useBreakpoint-CjRyGKN-.mjs.map +1 -1
- package/dist/{useBreakpoint-CA9tMMV8.js → useBreakpoint-DA-JqOu3.js} +2 -2
- package/dist/useBreakpoint-DA-JqOu3.js.map +1 -0
- package/dist/utils.cjs.js +1 -1
- package/dist/utils.cjs.js.map +1 -1
- package/dist/utils.d.ts +45 -33
- package/dist/utils.es.js +451 -17
- package/dist/utils.es.js.map +1 -1
- package/package.json +100 -106
- package/dist/breakpoint-9y1_8U_b.mjs +0 -10
- package/dist/breakpoint-9y1_8U_b.mjs.map +0 -1
- package/dist/breakpoint-DtqbboOa.js +0 -2
- package/dist/breakpoint-DtqbboOa.js.map +0 -1
- package/dist/darkTheme-DUWn6YJ-.mjs +0 -345
- package/dist/darkTheme-DUWn6YJ-.mjs.map +0 -1
- package/dist/darkTheme-ann6VTfq.js +0 -2
- package/dist/darkTheme-ann6VTfq.js.map +0 -1
- package/dist/image-BlhKzTx8.js +0 -2
- package/dist/image-BlhKzTx8.js.map +0 -1
- package/dist/image-C8M6y5Op.mjs +0 -205
- package/dist/image-C8M6y5Op.mjs.map +0 -1
- package/dist/navigation-BB0MBIiR.js +0 -2
- package/dist/navigation-BB0MBIiR.js.map +0 -1
- package/dist/navigation-Bj7Pex9j.mjs +0 -43
- package/dist/navigation-Bj7Pex9j.mjs.map +0 -1
- package/dist/theme-DQsfWeLo.mjs +0 -12
- package/dist/theme-DQsfWeLo.mjs.map +0 -1
- package/dist/theme-Dc0Ahjq9.js +0 -2
- package/dist/theme-Dc0Ahjq9.js.map +0 -1
- package/dist/useBreakpoint-CA9tMMV8.js.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,101 +1,69 @@
|
|
|
1
|
-
import { AriaDialogProps } from '
|
|
2
|
-
import { AriaPopoverProps } from '
|
|
3
|
-
import { AriaTableProps } from '
|
|
1
|
+
import { AriaDialogProps } from 'react-aria';
|
|
2
|
+
import { AriaPopoverProps } from 'react-aria';
|
|
3
|
+
import { AriaTableProps } from 'react-aria';
|
|
4
4
|
import { ColumnProps } from '@react-stately/table';
|
|
5
5
|
import { default as default_2 } from 'react';
|
|
6
6
|
import { DOMProps } from '@react-types/shared';
|
|
7
7
|
import { ForwardRefExoticComponent } from 'react';
|
|
8
8
|
import { JSX as JSX_2 } from 'react/jsx-runtime';
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
9
|
+
import { OverlayTriggerProps } from 'react-stately';
|
|
10
|
+
import { OverlayTriggerState } from 'react-stately';
|
|
11
|
+
import { PressEvent } from 'react-aria';
|
|
12
12
|
import { ReactNode } from 'react';
|
|
13
13
|
import { RefAttributes } from 'react';
|
|
14
14
|
import { RowProps } from '@react-stately/table';
|
|
15
15
|
import { Section } from '@react-stately/table';
|
|
16
|
-
import { Selection as Selection_2 } from '
|
|
16
|
+
import { Selection as Selection_2 } from 'react-stately';
|
|
17
17
|
import { TableBodyProps } from '@react-stately/table';
|
|
18
18
|
import { TableHeader } from '@react-stately/table';
|
|
19
|
-
import { TableStateProps } from '
|
|
19
|
+
import { TableStateProps } from 'react-stately';
|
|
20
20
|
import { TooltipProps as TooltipProps_2 } from 'react-aria-components';
|
|
21
21
|
import { TooltipTriggerComponentProps } from 'react-aria-components';
|
|
22
22
|
|
|
23
23
|
/**
|
|
24
24
|
* ActionMenu to display a menu of actions.
|
|
25
25
|
* Renders a list of actions as a focusable menu, or non-focusable children.
|
|
26
|
-
*
|
|
27
|
-
* API:
|
|
28
|
-
* - {@link ActionMenuProps}
|
|
26
|
+
* @interface ActionMenuProps
|
|
29
27
|
*/
|
|
30
|
-
export declare const ActionMenu: ({ isOpen, selectionMode, selectedKeys, defaultSelectedKeys, disabledKeys, children, showCancel, cancelButtonText, actions,
|
|
28
|
+
export declare const ActionMenu: ({ isOpen, selectionMode, selectedKeys, defaultSelectedKeys, disabledKeys, children, showCancel, cancelButtonText, actions, onSelectionChange, onClose, "data-testid": testId, }: ActionMenuProps) => JSX_2.Element;
|
|
31
29
|
|
|
32
30
|
declare interface ActionMenuAction {
|
|
33
31
|
key: string;
|
|
34
32
|
label?: ReactNode;
|
|
35
|
-
description?: ReactNode;
|
|
36
33
|
to?: string;
|
|
37
34
|
onAction?: (key: string) => void;
|
|
38
35
|
children?: ActionMenuAction[];
|
|
39
36
|
}
|
|
40
37
|
|
|
41
38
|
declare interface ActionMenuProps {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
cancelButtonText?: string;
|
|
48
|
-
/** The children of the menu */
|
|
39
|
+
isOpen: boolean;
|
|
40
|
+
selectionMode?: "single" | "multiple" | "none";
|
|
41
|
+
selectedKeys?: string[];
|
|
42
|
+
defaultSelectedKeys?: string[];
|
|
43
|
+
disabledKeys?: string[];
|
|
49
44
|
children?: ReactNode | ((props: {
|
|
50
45
|
close: () => void;
|
|
51
46
|
}) => ReactNode);
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
/** The keys of the disabled items */
|
|
57
|
-
disabledKeys?: string[];
|
|
58
|
-
/** Whether the menu is open
|
|
59
|
-
* @default false
|
|
60
|
-
*/
|
|
61
|
-
isOpen: boolean;
|
|
62
|
-
/** The callback function to close the menu */
|
|
47
|
+
showCancel?: boolean;
|
|
48
|
+
cancelButtonText?: string;
|
|
49
|
+
actions?: ActionMenuAction[];
|
|
50
|
+
id?: string;
|
|
63
51
|
onClose?: () => void;
|
|
64
|
-
/** The callback function to change the selection
|
|
65
|
-
* - type {@link Selection}
|
|
66
|
-
*/
|
|
67
52
|
onSelectionChange?: (keys: Selection_2) => void;
|
|
68
|
-
|
|
69
|
-
* @default "single"
|
|
70
|
-
*/
|
|
71
|
-
selectionMode?: "single" | "multiple" | "none";
|
|
72
|
-
/** The keys of the selected items */
|
|
73
|
-
selectedKeys?: string[];
|
|
74
|
-
/** Whether to show the cancel button */
|
|
75
|
-
showCancel?: boolean;
|
|
76
|
-
/** The title of the menu */
|
|
77
|
-
title?: string;
|
|
53
|
+
"data-testid"?: string;
|
|
78
54
|
}
|
|
79
55
|
|
|
80
|
-
/**
|
|
81
|
-
* A badge component for displaying status, categories, or counts with various visual styles.
|
|
82
|
-
*
|
|
83
|
-
* API:
|
|
84
|
-
* - {@link BadgeProps}
|
|
85
|
-
* - extends {@link React.HTMLAttributes}
|
|
86
|
-
*/
|
|
87
56
|
export declare const Badge: ({ variant, children, ...props }: BadgeProps) => JSX_2.Element;
|
|
88
57
|
|
|
89
|
-
declare interface BadgeProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
90
|
-
/**
|
|
91
|
-
* The content to display within the badge.
|
|
92
|
-
*/
|
|
93
|
-
children: ReactNode;
|
|
58
|
+
export declare interface BadgeProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
94
59
|
/**
|
|
95
60
|
* The badge's visual aesthetic.
|
|
96
|
-
* - type {@link BadgeVariant}
|
|
97
61
|
*/
|
|
98
62
|
variant?: BadgeVariant;
|
|
63
|
+
/**
|
|
64
|
+
* The content to display within the badge.
|
|
65
|
+
*/
|
|
66
|
+
children: ReactNode;
|
|
99
67
|
}
|
|
100
68
|
|
|
101
69
|
export declare type BadgeVariant = "primary" | "secondary" | "transparent" | "success" | "warning" | "danger";
|
|
@@ -104,96 +72,60 @@ export declare const BadgeVariants: Record<BadgeVariant, BadgeVariant>;
|
|
|
104
72
|
|
|
105
73
|
/**
|
|
106
74
|
* A banner used to display a success, warning, or error message.
|
|
107
|
-
*
|
|
108
|
-
* API:
|
|
109
|
-
* - {@link BannerProps}
|
|
110
|
-
* - extends {@link BannerIconProps}
|
|
75
|
+
* @interface BannerProps
|
|
111
76
|
*/
|
|
112
77
|
export declare const Banner: {
|
|
113
78
|
({ variant, rounded, icon, compact, children, "data-testid": dataTestId, }: BannerProps): JSX_2.Element;
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
*/
|
|
128
|
-
Content: {
|
|
129
|
-
({ children, "data-testid": dataTestId, }: {
|
|
130
|
-
children: ReactNode;
|
|
131
|
-
"data-testid"?: string;
|
|
132
|
-
}): JSX_2.Element;
|
|
133
|
-
displayName: string;
|
|
134
|
-
};
|
|
135
|
-
/**
|
|
136
|
-
* Renders an icon inline with the banner title.
|
|
137
|
-
*
|
|
138
|
-
* API:
|
|
139
|
-
* - {@link BannerIconProps}
|
|
140
|
-
*/
|
|
141
|
-
Icon: {
|
|
142
|
-
({ icon, "data-testid": dataTestId }: BannerIconProps): JSX_2.Element;
|
|
143
|
-
displayName: string;
|
|
144
|
-
};
|
|
145
|
-
/**
|
|
146
|
-
* Renders a Proton Button.
|
|
147
|
-
* - @prop buttonProps {@link ButtonProps}
|
|
148
|
-
*/
|
|
149
|
-
Action: {
|
|
150
|
-
({ children, ...buttonProps }: ButtonProps): JSX_2.Element;
|
|
151
|
-
displayName: string;
|
|
79
|
+
Title: ({ children, ...props }: {
|
|
80
|
+
children: ReactNode;
|
|
81
|
+
}) => JSX_2.Element;
|
|
82
|
+
Content: ({ children, ...props }: {
|
|
83
|
+
children: ReactNode;
|
|
84
|
+
}) => JSX_2.Element;
|
|
85
|
+
Icon: ({ children, icon, ...props }: BannerIconProps) => JSX_2.Element;
|
|
86
|
+
Action: ({ children, ...props }: ButtonProps) => JSX_2.Element;
|
|
87
|
+
Actions: default_2.FC<BannerActionsProps>;
|
|
88
|
+
icons: {
|
|
89
|
+
success: JSX_2.Element;
|
|
90
|
+
warning: JSX_2.Element;
|
|
91
|
+
danger: JSX_2.Element;
|
|
152
92
|
};
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
children: ReactNode;
|
|
159
|
-
}): JSX_2.Element;
|
|
160
|
-
displayName: string;
|
|
93
|
+
variants: {
|
|
94
|
+
readonly default: "default";
|
|
95
|
+
readonly success: "success";
|
|
96
|
+
readonly warning: "warning";
|
|
97
|
+
readonly danger: "danger";
|
|
161
98
|
};
|
|
162
99
|
};
|
|
163
100
|
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
danger: JSX_2.Element;
|
|
168
|
-
};
|
|
169
|
-
|
|
170
|
-
export declare const BANNER_VARIANTS: {
|
|
171
|
-
readonly default: "default";
|
|
172
|
-
readonly success: "success";
|
|
173
|
-
readonly warning: "warning";
|
|
174
|
-
readonly danger: "danger";
|
|
175
|
-
};
|
|
101
|
+
declare interface BannerActionsProps {
|
|
102
|
+
children: ReactNode;
|
|
103
|
+
}
|
|
176
104
|
|
|
177
105
|
declare interface BannerIconProps {
|
|
178
|
-
/**
|
|
179
|
-
* Optional custom icon or children for the icon area.
|
|
180
|
-
*/
|
|
181
|
-
children?: ReactNode;
|
|
182
106
|
/**
|
|
183
107
|
* The icon to display in the banner.
|
|
184
|
-
* Can be a boolean to conditionally show or hide,
|
|
108
|
+
* Can be a boolean to conditionally show or hide,
|
|
109
|
+
* or a ReactNode to provide a custom icon.
|
|
185
110
|
*/
|
|
186
111
|
icon?: boolean | ReactNode;
|
|
187
112
|
/**
|
|
188
|
-
*
|
|
113
|
+
* Optional custom icon or children for the icon area.
|
|
189
114
|
*/
|
|
190
|
-
|
|
115
|
+
children?: ReactNode;
|
|
191
116
|
}
|
|
192
117
|
|
|
193
118
|
declare interface BannerProps extends BannerIconProps {
|
|
119
|
+
/**
|
|
120
|
+
* The banner's visual aesthetic.
|
|
121
|
+
*/
|
|
122
|
+
variant?: BannerVariant;
|
|
123
|
+
/**
|
|
124
|
+
* Round the corners of the banner.
|
|
125
|
+
*/
|
|
126
|
+
rounded?: boolean;
|
|
194
127
|
/**
|
|
195
128
|
* Compact padding around the content of the banner.
|
|
196
|
-
* @default true
|
|
197
129
|
*/
|
|
198
130
|
compact?: boolean;
|
|
199
131
|
/**
|
|
@@ -204,16 +136,6 @@ declare interface BannerProps extends BannerIconProps {
|
|
|
204
136
|
* The data-testid to display within the banner.
|
|
205
137
|
*/
|
|
206
138
|
"data-testid"?: string;
|
|
207
|
-
/**
|
|
208
|
-
* Round the corners of the banner.
|
|
209
|
-
* @default true
|
|
210
|
-
*/
|
|
211
|
-
rounded?: boolean;
|
|
212
|
-
/**
|
|
213
|
-
* The banner's visual aesthetic.
|
|
214
|
-
* - type {@link BannerVariant}
|
|
215
|
-
*/
|
|
216
|
-
variant?: BannerVariant;
|
|
217
139
|
}
|
|
218
140
|
|
|
219
141
|
export declare type BannerVariant = "default" | "success" | "warning" | "danger";
|
|
@@ -269,7 +191,6 @@ declare interface BaseInputProps {
|
|
|
269
191
|
/**
|
|
270
192
|
* The type attribute of the input element.
|
|
271
193
|
* @external https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/type
|
|
272
|
-
* @default "text"
|
|
273
194
|
*/
|
|
274
195
|
type?: string;
|
|
275
196
|
/**
|
|
@@ -277,44 +198,17 @@ declare interface BaseInputProps {
|
|
|
277
198
|
* @external https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#value
|
|
278
199
|
*/
|
|
279
200
|
value?: string;
|
|
280
|
-
/**
|
|
281
|
-
* Whether the input is required.
|
|
282
|
-
* @default false
|
|
283
|
-
*/
|
|
284
|
-
isRequired?: boolean;
|
|
285
|
-
/**
|
|
286
|
-
* Whether the input is read-only.
|
|
287
|
-
* @default false
|
|
288
|
-
*/
|
|
289
|
-
isReadOnly?: boolean;
|
|
290
|
-
/**
|
|
291
|
-
* Called when the input is submitted (e.g. by pressing Enter).
|
|
292
|
-
*/
|
|
293
|
-
onSubmit?: default_2.FormEventHandler<HTMLInputElement>;
|
|
294
|
-
/**
|
|
295
|
-
* Called when the input is cleared (e.g. by pressing Escape).
|
|
296
|
-
*/
|
|
297
|
-
onClear?: () => void;
|
|
298
201
|
}
|
|
299
202
|
|
|
300
203
|
/**
|
|
301
|
-
* A customizable button component that can render as either a button or anchor element
|
|
302
|
-
*
|
|
303
|
-
* API:
|
|
304
|
-
* - {@link ButtonProps}
|
|
204
|
+
* A customizable button component that can render as either a button or anchor element
|
|
205
|
+
* @interface ButtonProps
|
|
305
206
|
*/
|
|
306
|
-
export declare
|
|
207
|
+
export declare function Button({ variant, size, fullWidth, icon, to, target, onPress, type, isDisabled, "data-testid": testId, children, __textShift, }: ButtonProps): JSX_2.Element;
|
|
307
208
|
|
|
308
|
-
/**
|
|
309
|
-
* A radio button group component that allows selection of a single option from multiple choices.
|
|
310
|
-
*
|
|
311
|
-
* API:
|
|
312
|
-
* - {@link ButtonGroupProps}
|
|
313
|
-
*/
|
|
314
209
|
export declare function ButtonGroup(props: ButtonGroupProps): JSX_2.Element;
|
|
315
210
|
|
|
316
211
|
export declare namespace ButtonGroup {
|
|
317
|
-
var displayName: string;
|
|
318
212
|
var Option: (props: ButtonGroupOptionProps) => JSX_2.Element;
|
|
319
213
|
}
|
|
320
214
|
|
|
@@ -352,80 +246,70 @@ declare interface ButtonGroupProps {
|
|
|
352
246
|
|
|
353
247
|
declare interface ButtonProps {
|
|
354
248
|
/** The button's visual aesthetic
|
|
355
|
-
*
|
|
249
|
+
* @param {ButtonVariant} variant
|
|
356
250
|
*/
|
|
357
251
|
variant?: ButtonVariant;
|
|
358
252
|
/** The size of the button
|
|
359
|
-
*
|
|
360
|
-
* @default "
|
|
253
|
+
* @param {ButtonSize} size
|
|
254
|
+
* @default "fullWidth"
|
|
361
255
|
*/
|
|
362
256
|
size?: ButtonSize;
|
|
363
257
|
/** Should the button be full width?
|
|
364
|
-
* @
|
|
258
|
+
* @param {boolean} fullWidth
|
|
365
259
|
*/
|
|
366
260
|
fullWidth?: boolean;
|
|
367
|
-
/** The prefix to display within the button
|
|
261
|
+
/** The prefix to display within the button
|
|
262
|
+
* @param {React.ReactNode} icon
|
|
263
|
+
*/
|
|
368
264
|
icon?: React.ReactNode;
|
|
369
|
-
/** Should the button be non-interactive?
|
|
265
|
+
/** Should the button be non-interactive?
|
|
266
|
+
* @param {boolean} isDisabled
|
|
267
|
+
*/
|
|
370
268
|
isDisabled?: boolean;
|
|
371
|
-
/** The URL that the button should link to. Turns the element into an `a` tag. If the URL is external, you should pass the entire URL to the `to` prop (e.g. `https://example.com`).
|
|
269
|
+
/** The URL that the button should link to. Turns the element into an `a` tag. If the URL is external, you should pass the entire URL to the `to` prop (e.g. `https://example.com`).
|
|
270
|
+
* @param {string} to
|
|
271
|
+
*/
|
|
372
272
|
to?: string;
|
|
373
|
-
/** The target attribute for the link. Defaults to `_blank` if the URL is external.
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
/**
|
|
273
|
+
/** The target attribute for the link. Defaults to `_blank` if the URL is external.
|
|
274
|
+
* @param {string} target
|
|
275
|
+
*/
|
|
276
|
+
target?: "_blank" | "_self" | "_parent" | "_top";
|
|
277
|
+
/** Called when the button is pressed (on release, not keydown)
|
|
278
|
+
* @param {(e: PressEvent) => void} onPress
|
|
279
|
+
*/
|
|
280
|
+
onPress?: (e: PressEvent) => void;
|
|
281
|
+
/** The type of button
|
|
282
|
+
* @param {"button" | "submit" | "reset"} type
|
|
283
|
+
*/
|
|
378
284
|
type?: "button" | "submit" | "reset";
|
|
379
|
-
/** The test ID for the button
|
|
285
|
+
/** The test ID for the button
|
|
286
|
+
* @param {string} dataTestId
|
|
287
|
+
*/
|
|
380
288
|
"data-testid"?: string;
|
|
381
|
-
/** The content to display within the button
|
|
289
|
+
/** The content to display within the button
|
|
290
|
+
* @param {React.ReactNode} children
|
|
291
|
+
*/
|
|
382
292
|
children?: React.ReactNode;
|
|
293
|
+
/** DO NOT USE. INTERNAL USE ONLY. Will be used in calculation for the shift of the button text. Represents the # of horizontal pixels to shift.
|
|
294
|
+
* @param {number} __textShift
|
|
295
|
+
*/
|
|
296
|
+
__textShift?: number;
|
|
383
297
|
}
|
|
384
298
|
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
export declare const ButtonSizes: Record<ButtonSize, ButtonSize>;
|
|
299
|
+
declare type ButtonSize = "small" | "medium" | "large" | "xlarge" | "2xlarge";
|
|
388
300
|
|
|
389
301
|
export declare type ButtonVariant = "primary" | "secondary" | "success" | "danger" | "translucent";
|
|
390
302
|
|
|
391
|
-
export declare const ButtonVariants: Record<ButtonVariant, ButtonVariant>;
|
|
392
|
-
|
|
393
|
-
/**
|
|
394
|
-
* A button with a select menu.
|
|
395
|
-
*
|
|
396
|
-
* API:
|
|
397
|
-
* - {@link ButtonWithSelectProps}
|
|
398
|
-
* - extends {@link ButtonProps}
|
|
399
|
-
*/
|
|
400
303
|
export declare function ButtonWithSelect({ items, defaultValue, children, onSelectionChange, disabledKeys, selectedKey, icon, variant, fullWidth, onPress, ...buttonProps }: ButtonWithSelectProps): JSX_2.Element;
|
|
401
304
|
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
}
|
|
405
|
-
|
|
406
|
-
declare interface ButtonWithSelectProps extends ButtonProps {
|
|
407
|
-
/**
|
|
408
|
-
* The default value of the select menu.
|
|
409
|
-
*/
|
|
305
|
+
declare type ButtonWithSelectProps = {
|
|
306
|
+
items: MenuItemType[];
|
|
410
307
|
defaultValue?: string;
|
|
411
|
-
|
|
412
|
-
* The keys of the disabled items.
|
|
413
|
-
*/
|
|
414
|
-
disabledKeys?: string[];
|
|
415
|
-
/**
|
|
416
|
-
* The items to display in the select menu.
|
|
417
|
-
* - type {@link ActionMenuAction}
|
|
418
|
-
*/
|
|
419
|
-
items: ActionMenuAction[];
|
|
420
|
-
/**
|
|
421
|
-
* The callback function to call when the selection changes.
|
|
422
|
-
*/
|
|
308
|
+
children: default_2.ReactNode;
|
|
423
309
|
onSelectionChange?: (key: string) => void;
|
|
424
|
-
/**
|
|
425
|
-
* The key of the selected item.
|
|
426
|
-
*/
|
|
427
310
|
selectedKey?: string;
|
|
428
|
-
|
|
311
|
+
disabledKeys?: string[];
|
|
312
|
+
} & ButtonProps;
|
|
429
313
|
|
|
430
314
|
export declare const Cell: <T>(props: ProtonColumnProps<T>) => JSX.Element;
|
|
431
315
|
|
|
@@ -433,9 +317,7 @@ export declare const Column: <T>(props: ProtonColumnProps<T>) => JSX.Element;
|
|
|
433
317
|
|
|
434
318
|
/**
|
|
435
319
|
* Input with a button to copy value to the clipboard.
|
|
436
|
-
*
|
|
437
|
-
* API:
|
|
438
|
-
* - {@link CopyInputProps}
|
|
320
|
+
* @interface CopyInputProps
|
|
439
321
|
*/
|
|
440
322
|
export declare function CopyInput({ name, value, isDisabled, onError, onSuccess, }: CopyInputProps): JSX_2.Element;
|
|
441
323
|
|
|
@@ -454,10 +336,6 @@ declare interface CopyInputProps {
|
|
|
454
336
|
|
|
455
337
|
/**
|
|
456
338
|
* Intended use in overlay containers such as modals or popovers.
|
|
457
|
-
*
|
|
458
|
-
* API:
|
|
459
|
-
* - {@link DialogProps}
|
|
460
|
-
* - extends {@link AriaDialogProps}
|
|
461
339
|
*/
|
|
462
340
|
export declare function Dialog({ title, children, ...props }: DialogProps): JSX_2.Element;
|
|
463
341
|
|
|
@@ -473,8 +351,7 @@ declare interface DialogProps extends AriaDialogProps {
|
|
|
473
351
|
* to create a sense of depth or hierarchy in the UI. It uses the `--proton-control__background-color-light`
|
|
474
352
|
* CSS variable which is theme-aware and will adapt to light, dark, and custom-dark themes.
|
|
475
353
|
*
|
|
476
|
-
*
|
|
477
|
-
* - {@link ElevationProps}
|
|
354
|
+
* @interface ElevationProps
|
|
478
355
|
*/
|
|
479
356
|
export declare const Elevation: ({ children, hasPrimaryGradient, "data-testid": dataTestId, }: ElevationProps) => JSX_2.Element;
|
|
480
357
|
|
|
@@ -483,29 +360,23 @@ declare interface ElevationProps {
|
|
|
483
360
|
* The content to be displayed within the elevation.
|
|
484
361
|
*/
|
|
485
362
|
children?: ReactNode;
|
|
486
|
-
/**
|
|
487
|
-
* The data-testid attribute for testing purposes.
|
|
488
|
-
*/
|
|
489
|
-
"data-testid"?: string;
|
|
490
363
|
/**
|
|
491
364
|
* Whether the elevation should have a background gradient.
|
|
492
365
|
* @important only works in custom dark mode
|
|
493
366
|
* @default false
|
|
494
367
|
*/
|
|
495
368
|
hasPrimaryGradient?: boolean;
|
|
369
|
+
/**
|
|
370
|
+
* The data-testid attribute for testing purposes.
|
|
371
|
+
*/
|
|
372
|
+
"data-testid"?: string;
|
|
496
373
|
}
|
|
497
374
|
|
|
498
|
-
|
|
499
|
-
* An icon component that displays SVG icons from a sprite sheet or inline.
|
|
500
|
-
*
|
|
501
|
-
* API:
|
|
502
|
-
* - {@link IconProps}
|
|
503
|
-
*/
|
|
504
|
-
export declare function Icon(props: IconProps): JSX_2.Element;
|
|
375
|
+
export declare function Icon(props: Omit<IconProps, "svgContent">): JSX_2.Element;
|
|
505
376
|
|
|
506
377
|
declare type IconID = "external-link" | "caret-down" | "caret-right" | "chevron-right" | "chevron-left" | "chevron-up" | "chevron-down";
|
|
507
378
|
|
|
508
|
-
|
|
379
|
+
declare interface IconProps {
|
|
509
380
|
/**
|
|
510
381
|
* The spritesheet ID defined in the Icons spritesheet.
|
|
511
382
|
*/
|
|
@@ -522,9 +393,7 @@ export declare interface IconProps {
|
|
|
522
393
|
|
|
523
394
|
/**
|
|
524
395
|
* ImageOverlay component for displaying an image with a blur effect.
|
|
525
|
-
*
|
|
526
|
-
* API:
|
|
527
|
-
* - {@link ImageBackgroundProps}
|
|
396
|
+
* @interface ImageBackgroundProps
|
|
528
397
|
*/
|
|
529
398
|
export declare function ImageBackground({ image, imageUrl, onLoad, }: ImageBackgroundProps): JSX_2.Element;
|
|
530
399
|
|
|
@@ -550,35 +419,26 @@ declare interface ImageBackgroundProps {
|
|
|
550
419
|
|
|
551
420
|
/**
|
|
552
421
|
* A controlled and customizable input component with support for labels, prefixes, suffixes, and error states.
|
|
553
|
-
*
|
|
554
|
-
* API:
|
|
555
|
-
* - {@link BaseInputProps}
|
|
556
422
|
*/
|
|
557
423
|
export declare const Input: default_2.ForwardRefExoticComponent<BaseInputProps & default_2.RefAttributes<HTMLInputElement>>;
|
|
558
424
|
|
|
425
|
+
declare type MenuItemType = ActionMenuAction;
|
|
426
|
+
|
|
559
427
|
declare interface MenuProps {
|
|
560
|
-
/**
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
renderTrigger?: (triggerProps: TriggerProps) => ReactNode;
|
|
564
|
-
/** Size of the trigger icon
|
|
565
|
-
* @default 24
|
|
566
|
-
*/
|
|
428
|
+
/** The id of the menu */
|
|
429
|
+
menuId?: string;
|
|
430
|
+
/** Custom trigger component. If not provided, defaults to ellipsis icon */
|
|
431
|
+
renderTrigger?: (triggerProps: TriggerProps, isOpen: boolean) => ReactNode;
|
|
432
|
+
/** Size of the trigger icon */
|
|
567
433
|
size?: number;
|
|
568
|
-
/**
|
|
569
|
-
|
|
570
|
-
/**
|
|
571
|
-
* - type {@link ActionMenuAction}[]
|
|
572
|
-
*/
|
|
573
|
-
items: ActionMenuAction[];
|
|
574
|
-
/** Whether the menu is disabled
|
|
575
|
-
* @default false
|
|
576
|
-
*/
|
|
434
|
+
/** Array of menu actions/items to display */
|
|
435
|
+
items: MenuItemType[];
|
|
436
|
+
/** Whether the menu is disabled */
|
|
577
437
|
disabled?: boolean;
|
|
578
438
|
/** Callback when menu closes */
|
|
579
439
|
onClose?: () => void;
|
|
580
440
|
/** Test ID for the trigger component */
|
|
581
|
-
|
|
441
|
+
testId?: string;
|
|
582
442
|
/** Test ID for the menu */
|
|
583
443
|
menuTestId?: string;
|
|
584
444
|
/** Callback when a menu item is selected */
|
|
@@ -589,83 +449,106 @@ declare interface MenuProps {
|
|
|
589
449
|
disabledKeys?: string[];
|
|
590
450
|
}
|
|
591
451
|
|
|
592
|
-
|
|
593
|
-
* A component that displays either a popover menu or an action menu
|
|
594
|
-
* depending on the screen size when the menu trigger is pressed.
|
|
595
|
-
*
|
|
596
|
-
* API:
|
|
597
|
-
* - {@link MenuProps}
|
|
598
|
-
*/
|
|
599
|
-
export declare function MenuTrigger({ renderTrigger, size, title, items, disabled, onClose, triggerTestId, menuTestId, onSelectionChange, selectedKey, disabledKeys, }: MenuProps): JSX_2.Element;
|
|
452
|
+
export declare function MenuTrigger({ renderTrigger, menuId, size, items, disabled, onClose, testId: triggerTestId, menuTestId, onSelectionChange, selectedKey, disabledKeys, }: MenuProps): JSX_2.Element;
|
|
600
453
|
|
|
601
454
|
export declare const Modal: (({ isOpen, onClose, title, subtitle, body, children, isOverlay, "data-testid": dataTestId, }: ModalProps) => JSX_2.Element) & {
|
|
602
|
-
/**
|
|
603
|
-
* Renders a h2 styled title
|
|
604
|
-
* */
|
|
605
455
|
Title: ({ children }: {
|
|
606
456
|
children: React.ReactNode;
|
|
607
457
|
}) => JSX_2.Element;
|
|
608
|
-
/**
|
|
609
|
-
* Renders a h3 styled subtitle
|
|
610
|
-
* */
|
|
611
458
|
Subtitle: ({ children }: {
|
|
612
459
|
children: React.ReactNode;
|
|
613
460
|
}) => JSX_2.Element;
|
|
614
|
-
/**
|
|
615
|
-
* Renders a div styled body
|
|
616
|
-
* */
|
|
617
461
|
Body: ({ children }: {
|
|
618
462
|
children: React.ReactNode;
|
|
619
463
|
}) => JSX_2.Element;
|
|
620
|
-
|
|
621
|
-
* Renders a Proton Button action
|
|
622
|
-
* - @prop buttonProps {@link ButtonProps}
|
|
623
|
-
* */
|
|
624
|
-
Action: (buttonProps: ButtonProps) => JSX_2.Element;
|
|
625
|
-
/**
|
|
626
|
-
* Renders a group of Proton Buttons
|
|
627
|
-
* */
|
|
464
|
+
Action: (props: ButtonProps) => JSX_2.Element;
|
|
628
465
|
Actions: ({ children }: {
|
|
629
466
|
children: React.ReactNode;
|
|
630
467
|
}) => JSX_2.Element;
|
|
631
468
|
};
|
|
632
469
|
|
|
633
470
|
declare interface ModalProps {
|
|
634
|
-
/**
|
|
635
|
-
* Optional body text content for the modal
|
|
636
|
-
* */
|
|
637
|
-
body?: string;
|
|
638
|
-
/**
|
|
639
|
-
* Content to render inside the modal
|
|
640
|
-
* */
|
|
641
|
-
children: React.ReactNode;
|
|
642
|
-
/**
|
|
643
|
-
* data-testid for the modal
|
|
644
|
-
* */
|
|
645
|
-
"data-testid"?: string;
|
|
646
471
|
/**
|
|
647
472
|
* Controls the visibility of the modal
|
|
648
473
|
* */
|
|
649
474
|
isOpen: boolean;
|
|
475
|
+
/**
|
|
476
|
+
* Callback function when modal is closed
|
|
477
|
+
* */
|
|
478
|
+
onClose?: () => void;
|
|
650
479
|
/**
|
|
651
480
|
* Whether to show the modal with an overlay background.
|
|
652
481
|
* @default true
|
|
653
482
|
* */
|
|
654
483
|
isOverlay?: boolean;
|
|
655
484
|
/**
|
|
656
|
-
*
|
|
485
|
+
* Optional title text for the modal header
|
|
657
486
|
* */
|
|
658
|
-
|
|
487
|
+
title?: string;
|
|
659
488
|
/**
|
|
660
489
|
* Optional subtitle text below the modal title
|
|
661
490
|
* */
|
|
662
491
|
subtitle?: string;
|
|
663
492
|
/**
|
|
664
|
-
* Optional
|
|
493
|
+
* Optional body text content for the modal
|
|
665
494
|
* */
|
|
666
|
-
|
|
495
|
+
body?: string;
|
|
496
|
+
/**
|
|
497
|
+
* Content to render inside the modal
|
|
498
|
+
* */
|
|
499
|
+
children: React.ReactNode;
|
|
500
|
+
/**
|
|
501
|
+
* data-testid for the modal
|
|
502
|
+
* */
|
|
503
|
+
"data-testid"?: string;
|
|
667
504
|
}
|
|
668
505
|
|
|
506
|
+
declare type Palette = {
|
|
507
|
+
BASE_COLOR: string;
|
|
508
|
+
BRAND: {
|
|
509
|
+
PRIMARY: string;
|
|
510
|
+
PRIMARY_LIGHT: string;
|
|
511
|
+
SECONDARY: string;
|
|
512
|
+
};
|
|
513
|
+
PRIMARY: {
|
|
514
|
+
PRIMARY_SUPER_DARK: string;
|
|
515
|
+
PRIMARY_DARK: string;
|
|
516
|
+
PRIMARY_MEDIUM: string;
|
|
517
|
+
PRIMARY_MEDIUM_LIGHT: string;
|
|
518
|
+
PRIMARY_LIGHT: string;
|
|
519
|
+
PRIMARY_LIGHTEST: string;
|
|
520
|
+
PRIMARY_SUPER_LIGHT: string;
|
|
521
|
+
};
|
|
522
|
+
SECONDARY: {
|
|
523
|
+
SECONDARY_SUPER_DARK: string;
|
|
524
|
+
SECONDARY_DARK: string;
|
|
525
|
+
SECONDARY_MEDIUM: string;
|
|
526
|
+
SECONDARY_MEDIUM_LIGHT: string;
|
|
527
|
+
SECONDARY_LIGHT: string;
|
|
528
|
+
SECONDARY_LIGHTEST: string;
|
|
529
|
+
SECONDARY_SUPER_LIGHT: string;
|
|
530
|
+
};
|
|
531
|
+
SUCCESS: {
|
|
532
|
+
SUCCESS_DARK: string;
|
|
533
|
+
SUCCESS_MEDIUM: string;
|
|
534
|
+
SUCCESS_LIGHT: string;
|
|
535
|
+
SUCCESS_SUPER_LIGHT: string;
|
|
536
|
+
};
|
|
537
|
+
WARNING: {
|
|
538
|
+
WARNING_DARK: string;
|
|
539
|
+
WARNING_MEDIUM: string;
|
|
540
|
+
WARNING_LIGHT: string;
|
|
541
|
+
WARNING_SUPER_LIGHT: string;
|
|
542
|
+
};
|
|
543
|
+
DANGER: {
|
|
544
|
+
DANGER_SUPER_DARK: string;
|
|
545
|
+
DANGER_DARK: string;
|
|
546
|
+
DANGER_MEDIUM: string;
|
|
547
|
+
DANGER_LIGHT: string;
|
|
548
|
+
DANGER_SUPER_LIGHT: string;
|
|
549
|
+
};
|
|
550
|
+
};
|
|
551
|
+
|
|
669
552
|
/**
|
|
670
553
|
* Popover is an unstyled popover component that handles positioning. It should be used
|
|
671
554
|
* with the Dialog component to provide a styled popover.
|
|
@@ -673,109 +556,39 @@ declare interface ModalProps {
|
|
|
673
556
|
* A popover displays interactive content in context with a trigger element.
|
|
674
557
|
* A tooltip displays a description of an element on hover or focus.
|
|
675
558
|
*
|
|
676
|
-
* @
|
|
677
|
-
*
|
|
678
|
-
* API:
|
|
679
|
-
* - {@link PopoverProps}
|
|
680
|
-
* - extends {@link AriaPopoverProps}
|
|
559
|
+
* @interface PopoverProps
|
|
681
560
|
*/
|
|
682
561
|
export declare function Popover({ children, state, arrow, offset, ...props }: PopoverProps): JSX_2.Element;
|
|
683
562
|
|
|
684
563
|
declare interface PopoverProps extends Omit<AriaPopoverProps, "popoverRef"> {
|
|
685
|
-
/**
|
|
686
|
-
* Whether to show an arrow on the popover.
|
|
687
|
-
*/
|
|
688
|
-
arrow?: boolean;
|
|
689
564
|
/**
|
|
690
565
|
* Content to display within the popover.
|
|
691
566
|
*/
|
|
692
567
|
children: default_2.ReactNode;
|
|
568
|
+
/**
|
|
569
|
+
* The `isOpen` state of the popover and the methods to toggle it.
|
|
570
|
+
*/
|
|
571
|
+
state: OverlayTriggerState;
|
|
693
572
|
/**
|
|
694
573
|
* Can optionally forward the ref to the popover.
|
|
695
574
|
*/
|
|
696
575
|
popoverRef?: default_2.RefObject<HTMLDivElement>;
|
|
697
576
|
/**
|
|
698
|
-
*
|
|
699
|
-
* - type {@link OverlayTriggerState}
|
|
577
|
+
* Whether to show an arrow on the popover.
|
|
700
578
|
*/
|
|
701
|
-
|
|
579
|
+
arrow?: boolean;
|
|
702
580
|
}
|
|
703
581
|
|
|
704
|
-
declare type ProtonColorScale = {
|
|
705
|
-
SUPER_DARK: string;
|
|
706
|
-
DARK: string;
|
|
707
|
-
MEDIUM: string;
|
|
708
|
-
MEDIUM_LIGHT: string;
|
|
709
|
-
LIGHT: string;
|
|
710
|
-
LIGHTEST: string;
|
|
711
|
-
SUPER_LIGHT: string;
|
|
712
|
-
WHITE: string;
|
|
713
|
-
};
|
|
714
|
-
|
|
715
582
|
export declare interface ProtonColumnProps<T> extends ColumnProps<T> {
|
|
716
583
|
align?: "left" | "center" | "right";
|
|
717
584
|
onClick?: (key: string) => void;
|
|
718
585
|
}
|
|
719
586
|
|
|
720
|
-
declare type ProtonPalette = {
|
|
721
|
-
BASE_COLOR: string;
|
|
722
|
-
BRAND: {
|
|
723
|
-
PRIMARY: string;
|
|
724
|
-
PRIMARY_LIGHT: string;
|
|
725
|
-
PRIMARY_SUPER_LIGHT: string;
|
|
726
|
-
SECONDARY: string;
|
|
727
|
-
SECONDARY_LIGHT: string;
|
|
728
|
-
SECONDARY_SUPER_LIGHT: string;
|
|
729
|
-
};
|
|
730
|
-
PRIMARY: ProtonColorScale;
|
|
731
|
-
SECONDARY: ProtonColorScale;
|
|
732
|
-
GRAYSCALE: ProtonColorScale;
|
|
733
|
-
};
|
|
734
|
-
|
|
735
587
|
export declare interface ProtonRowProps<T = object> extends RowProps<T> {
|
|
736
588
|
backgroundColor?: string;
|
|
737
589
|
onClick?: (key: string) => void;
|
|
738
590
|
}
|
|
739
591
|
|
|
740
|
-
declare interface ProtonStyleSheet {
|
|
741
|
-
"--proton-control__background-color": string;
|
|
742
|
-
"--proton-control__background-color-light": string;
|
|
743
|
-
"--proton-control__text-color": string;
|
|
744
|
-
"--proton-control__title-color": string;
|
|
745
|
-
"--proton-control__border-color": string;
|
|
746
|
-
"--proton-control__shadow-color": string;
|
|
747
|
-
"--proton-control__hover-color": string;
|
|
748
|
-
"--proton-control__border-radius": string;
|
|
749
|
-
"--proton-control__interactive-color": string;
|
|
750
|
-
"--proton-color__primary": string;
|
|
751
|
-
"--proton-color__primary-light": string;
|
|
752
|
-
"--proton-color__primary-super-light": string;
|
|
753
|
-
"--proton-color__secondary": string;
|
|
754
|
-
"--proton-color__secondary-light": string;
|
|
755
|
-
"--proton-color__secondary-super-light": string;
|
|
756
|
-
"--proton-color__danger-super-dark": string;
|
|
757
|
-
"--proton-color__danger-dark": string;
|
|
758
|
-
"--proton-color__danger-medium": string;
|
|
759
|
-
"--proton-color__danger-light": string;
|
|
760
|
-
"--proton-color__danger-super-light": string;
|
|
761
|
-
"--proton-color__warning-dark": string;
|
|
762
|
-
"--proton-color__warning-medium": string;
|
|
763
|
-
"--proton-color__warning-light": string;
|
|
764
|
-
"--proton-color__warning-super-light": string;
|
|
765
|
-
"--proton-color__success-dark": string;
|
|
766
|
-
"--proton-color__success-medium": string;
|
|
767
|
-
"--proton-color__success-light": string;
|
|
768
|
-
"--proton-color__success-super-light": string;
|
|
769
|
-
"--proton-color__gray-super-dark": string;
|
|
770
|
-
"--proton-color__gray-dark": string;
|
|
771
|
-
"--proton-color__gray-medium": string;
|
|
772
|
-
"--proton-color__gray-medium-light": string;
|
|
773
|
-
"--proton-color__gray-light": string;
|
|
774
|
-
"--proton-color__gray-lightest": string;
|
|
775
|
-
"--proton-color__gray-super-light": string;
|
|
776
|
-
"--proton-color__white": string;
|
|
777
|
-
}
|
|
778
|
-
|
|
779
592
|
export declare interface ProtonTableBodyProps<T = object> extends TableBodyProps<T> {
|
|
780
593
|
showLines?: boolean;
|
|
781
594
|
}
|
|
@@ -784,17 +597,11 @@ export declare const Row: <T = object>(props: ProtonRowProps<T>) => JSX.Element;
|
|
|
784
597
|
|
|
785
598
|
/**
|
|
786
599
|
* Base Overlay component for creating modal-like backgrounds.
|
|
787
|
-
*
|
|
788
|
-
* API:
|
|
789
|
-
* - {@link ScreenOverlayProps}
|
|
600
|
+
* @interface ScreenOverlayProps
|
|
790
601
|
*/
|
|
791
602
|
export declare const ScreenOverlay: ForwardRefExoticComponent<Omit<ScreenOverlayProps, "ref"> & RefAttributes<HTMLDivElement>>;
|
|
792
603
|
|
|
793
604
|
declare interface ScreenOverlayProps {
|
|
794
|
-
/**
|
|
795
|
-
* Children to render inside the overlay.
|
|
796
|
-
*/
|
|
797
|
-
children?: React.ReactNode;
|
|
798
605
|
/**
|
|
799
606
|
* Whether to fade in the overlay.
|
|
800
607
|
*/
|
|
@@ -807,26 +614,26 @@ declare interface ScreenOverlayProps {
|
|
|
807
614
|
* Ref to the overlay element.
|
|
808
615
|
*/
|
|
809
616
|
ref?: React.RefObject<HTMLDivElement>;
|
|
617
|
+
/**
|
|
618
|
+
* Children to render inside the overlay.
|
|
619
|
+
*/
|
|
620
|
+
children?: React.ReactNode;
|
|
810
621
|
}
|
|
811
622
|
|
|
812
623
|
/**
|
|
813
624
|
* A search input component with optional clear functionality and URL parameter sync.
|
|
814
|
-
*
|
|
815
|
-
* API:
|
|
816
|
-
* - {@link SearchInputProps}
|
|
817
|
-
* - extends {@link BaseInputProps}
|
|
818
625
|
*/
|
|
819
626
|
export declare const SearchInput: ({ name, placeholder, autoComplete, isClearable, isDisabled, error, defaultValue, value: controlledValue, "data-testid": testId, onChange, onClear, }: SearchInputProps) => JSX_2.Element;
|
|
820
627
|
|
|
821
628
|
declare interface SearchInputProps extends Omit<BaseInputProps, "prefix" | "suffix" | "value" | "onChange" | "description" | "descriptionPosition" | "label"> {
|
|
822
|
-
/** The initial value of the input. */
|
|
823
|
-
defaultValue?: string;
|
|
824
629
|
/** Should the clear button be shown when there is text? */
|
|
825
630
|
isClearable?: boolean;
|
|
826
631
|
/** Called when the input value changes. */
|
|
827
632
|
onChange?: (value: string) => void;
|
|
828
633
|
/** Called when the clear button is clicked. */
|
|
829
634
|
onClear?: () => void;
|
|
635
|
+
/** The initial value of the input. */
|
|
636
|
+
defaultValue?: string;
|
|
830
637
|
/** The current value of the input (for controlled usage) */
|
|
831
638
|
value?: string;
|
|
832
639
|
}
|
|
@@ -836,16 +643,9 @@ export { Section }
|
|
|
836
643
|
/**
|
|
837
644
|
* A dropdown select menu that opens a popover on desktop and an action menu on mobile.
|
|
838
645
|
* Supports controlled and uncontrolled modes.
|
|
839
|
-
*
|
|
840
|
-
* API:
|
|
841
|
-
* - {@link SelectProps}
|
|
842
646
|
*/
|
|
843
647
|
export declare function Select({ label, name, isDisabled, disabledKeys, selectedKey, onSelectionChange, defaultSelectedKey, onOpen, onClose, items, "data-testid": testId, }: SelectProps): JSX_2.Element;
|
|
844
648
|
|
|
845
|
-
export declare namespace Select {
|
|
846
|
-
var displayName: string;
|
|
847
|
-
}
|
|
848
|
-
|
|
849
649
|
declare interface SelectItem {
|
|
850
650
|
label: string;
|
|
851
651
|
key: string;
|
|
@@ -853,42 +653,36 @@ declare interface SelectItem {
|
|
|
853
653
|
}
|
|
854
654
|
|
|
855
655
|
declare interface SelectProps {
|
|
656
|
+
/** The name of the select field */
|
|
657
|
+
name: string;
|
|
658
|
+
/** Label to display above the select
|
|
659
|
+
* @external https://developer.mozilla.org/en-US/docs/Web/HTML/Element/label#text
|
|
660
|
+
*/
|
|
661
|
+
label?: string;
|
|
662
|
+
/** Whether the select is disabled */
|
|
663
|
+
isDisabled?: boolean;
|
|
856
664
|
/** Array of keys that should be disabled
|
|
857
665
|
* @example ["Thing 1", "Thing 2"]
|
|
858
666
|
*/
|
|
859
667
|
disabledKeys?: string[];
|
|
668
|
+
/** Currently selected key */
|
|
669
|
+
selectedKey?: string;
|
|
670
|
+
/** Callback fired when selection changes */
|
|
671
|
+
onSelectionChange?: (key: string) => void;
|
|
860
672
|
/** The key of the default selected item */
|
|
861
673
|
defaultSelectedKey?: string;
|
|
862
|
-
/**
|
|
863
|
-
|
|
864
|
-
/**
|
|
865
|
-
|
|
674
|
+
/** Callback fired when the menu opens */
|
|
675
|
+
onOpen?: () => void;
|
|
676
|
+
/** Callback fired when the menu closes */
|
|
677
|
+
onClose?: () => void;
|
|
866
678
|
/** Array of items to display
|
|
867
679
|
* @example [{ key: "thing-1", label: "Thing 1" }, { key: "thing-2", label: "Thing 2" }]
|
|
868
680
|
*/
|
|
869
681
|
items: SelectItem[];
|
|
870
|
-
/**
|
|
871
|
-
|
|
872
|
-
*/
|
|
873
|
-
label?: string;
|
|
874
|
-
/** The name of the select field */
|
|
875
|
-
name: string;
|
|
876
|
-
/** Callback fired when the menu closes */
|
|
877
|
-
onClose?: () => void;
|
|
878
|
-
/** Callback fired when the menu opens */
|
|
879
|
-
onOpen?: () => void;
|
|
880
|
-
/** Callback fired when selection changes */
|
|
881
|
-
onSelectionChange?: (key: string) => void;
|
|
882
|
-
/** Currently selected key */
|
|
883
|
-
selectedKey?: string;
|
|
682
|
+
/** Test ID for the select */
|
|
683
|
+
"data-testid"?: string;
|
|
884
684
|
}
|
|
885
685
|
|
|
886
|
-
/**
|
|
887
|
-
* A toggle switch component for boolean state control with support for controlled and uncontrolled modes.
|
|
888
|
-
*
|
|
889
|
-
* API:
|
|
890
|
-
* - {@link SwitchProps}
|
|
891
|
-
*/
|
|
892
686
|
export declare function Switch(props: SwitchProps): JSX_2.Element;
|
|
893
687
|
|
|
894
688
|
declare interface SwitchProps {
|
|
@@ -919,14 +713,6 @@ declare interface SwitchProps {
|
|
|
919
713
|
children?: React.ReactNode;
|
|
920
714
|
}
|
|
921
715
|
|
|
922
|
-
/**
|
|
923
|
-
* A table component that displays data in a grid format.
|
|
924
|
-
*
|
|
925
|
-
* API:
|
|
926
|
-
* - {@link TableProps}
|
|
927
|
-
* - extends {@link AriaTableProps}
|
|
928
|
-
* - extends {@link TableStateProps}<object>
|
|
929
|
-
*/
|
|
930
716
|
export declare function Table(props: TableProps): JSX_2.Element;
|
|
931
717
|
|
|
932
718
|
export declare const TableBody: <T = object>(props: ProtonTableBodyProps<T>) => JSX.Element;
|
|
@@ -941,9 +727,7 @@ declare interface TableProps extends AriaTableProps, TableStateProps<object> {
|
|
|
941
727
|
|
|
942
728
|
/**
|
|
943
729
|
* A component that displays text with an ellipsis when it overflows its container.
|
|
944
|
-
*
|
|
945
|
-
* API:
|
|
946
|
-
* - {@link TextEllipsisProps}
|
|
730
|
+
* @interface TextEllipsisProps
|
|
947
731
|
*/
|
|
948
732
|
export declare const TextEllipsis: ({ children, maxWidth, singleLine, lines, title, "data-testid": testId, }: TextEllipsisProps) => JSX_2.Element;
|
|
949
733
|
|
|
@@ -980,10 +764,7 @@ declare interface TextEllipsisProps {
|
|
|
980
764
|
|
|
981
765
|
/**
|
|
982
766
|
* A component that displays text with emphasis. Provide tooltipProps to wrap the text in a tooltip trigger.
|
|
983
|
-
*
|
|
984
|
-
* API:
|
|
985
|
-
* - {@link TextEmphasisProps}
|
|
986
|
-
* - extends {@link React.HTMLAttributes}
|
|
767
|
+
* @interface TextEmphasisProps
|
|
987
768
|
*/
|
|
988
769
|
export declare const TextEmphasis: ({ to, children, tooltipProps, "data-testid": testId, }: TextEmphasisProps) => JSX_2.Element;
|
|
989
770
|
|
|
@@ -1011,9 +792,8 @@ declare type Theme = (typeof THEMES)[keyof typeof THEMES];
|
|
|
1011
792
|
declare interface ThemeContextType {
|
|
1012
793
|
theme: Theme;
|
|
1013
794
|
className: string;
|
|
1014
|
-
style:
|
|
1015
|
-
palette:
|
|
1016
|
-
hasPalette?: boolean;
|
|
795
|
+
style: ThemeVariables;
|
|
796
|
+
palette: Palette;
|
|
1017
797
|
}
|
|
1018
798
|
|
|
1019
799
|
export declare const ThemeProvider: default_2.FC<ThemeProviderProps>;
|
|
@@ -1021,40 +801,66 @@ export declare const ThemeProvider: default_2.FC<ThemeProviderProps>;
|
|
|
1021
801
|
declare interface ThemeProviderProps {
|
|
1022
802
|
theme: Theme;
|
|
1023
803
|
children: ReactNode;
|
|
1024
|
-
palette?:
|
|
804
|
+
palette?: Palette;
|
|
1025
805
|
}
|
|
1026
806
|
|
|
1027
807
|
declare const THEMES: {
|
|
1028
808
|
readonly DARK: "dark";
|
|
809
|
+
readonly CUSTOM_DARK: "custom-dark";
|
|
1029
810
|
readonly LIGHT: "light";
|
|
1030
811
|
};
|
|
1031
812
|
|
|
813
|
+
declare interface ThemeVariables {
|
|
814
|
+
"--proton-control__background-color": string;
|
|
815
|
+
"--proton-control__background-color-light": string;
|
|
816
|
+
"--proton-control__text-color": string;
|
|
817
|
+
"--proton-control__border-color": string;
|
|
818
|
+
"--proton-control__shadow-color": string;
|
|
819
|
+
"--proton-color__primary": string;
|
|
820
|
+
"--proton-color__primary-light": string;
|
|
821
|
+
"--proton-color__secondary": string;
|
|
822
|
+
"--proton-control__primary-super-dark": string;
|
|
823
|
+
"--proton-control__primary-dark": string;
|
|
824
|
+
"--proton-control__primary-medium": string;
|
|
825
|
+
"--proton-control__primary-medium-light": string;
|
|
826
|
+
"--proton-control__primary-light": string;
|
|
827
|
+
"--proton-control__primary-lightest": string;
|
|
828
|
+
"--proton-control__primary-super-light": string;
|
|
829
|
+
"--proton-control__secondary-super-dark": string;
|
|
830
|
+
"--proton-control__secondary-dark": string;
|
|
831
|
+
"--proton-control__secondary-medium": string;
|
|
832
|
+
"--proton-control__secondary-medium-light": string;
|
|
833
|
+
"--proton-control__secondary-light": string;
|
|
834
|
+
"--proton-control__secondary-lightest": string;
|
|
835
|
+
"--proton-control__secondary-super-light": string;
|
|
836
|
+
}
|
|
837
|
+
|
|
1032
838
|
/**
|
|
1033
|
-
* A component that displays a loading tombstone. For use as a placeholder while loading content
|
|
1034
|
-
*
|
|
1035
|
-
* API:
|
|
1036
|
-
* - {@link TombstoneProps}
|
|
839
|
+
* A component that displays a loading tombstone. For use as a placeholder while loading content
|
|
840
|
+
* @interface TombstoneProps
|
|
1037
841
|
*/
|
|
1038
842
|
export declare const Tombstone: ({ width, height, borderRadius, }: TombstoneProps) => JSX_2.Element;
|
|
1039
843
|
|
|
1040
844
|
declare interface TombstoneProps {
|
|
1041
845
|
/**
|
|
1042
|
-
* The
|
|
1043
|
-
* @default "
|
|
846
|
+
* The width of the tombstone.
|
|
847
|
+
* @default "100%"
|
|
1044
848
|
*/
|
|
1045
|
-
|
|
849
|
+
width?: string;
|
|
1046
850
|
/**
|
|
1047
851
|
* The height of the tombstone.
|
|
1048
852
|
* @default "1.5rem"
|
|
1049
853
|
*/
|
|
1050
854
|
height?: string;
|
|
1051
855
|
/**
|
|
1052
|
-
* The
|
|
1053
|
-
* @default "
|
|
856
|
+
* The border radius of the tombstone.
|
|
857
|
+
* @default "4px"
|
|
1054
858
|
*/
|
|
1055
|
-
|
|
859
|
+
borderRadius?: string;
|
|
1056
860
|
}
|
|
1057
861
|
|
|
862
|
+
export declare function Tooltip({ children, arrow, ...props }: TooltipProps): JSX_2.Element;
|
|
863
|
+
|
|
1058
864
|
export declare interface TooltipProps extends Omit<TooltipProps_2, "children"> {
|
|
1059
865
|
children: React.ReactNode;
|
|
1060
866
|
arrow?: boolean;
|
|
@@ -1067,18 +873,6 @@ export declare interface TooltipProps extends Omit<TooltipProps_2, "children"> {
|
|
|
1067
873
|
*
|
|
1068
874
|
* If you wish to disable the trigger click feature, you can set the `disableTriggerClick` prop.
|
|
1069
875
|
* This is useful when using an info only Tooltip that might wrap a clickable element.
|
|
1070
|
-
*
|
|
1071
|
-
* API:
|
|
1072
|
-
* - {@link TooltipTriggerProps}
|
|
1073
|
-
* - extends {@link TooltipProps}
|
|
1074
|
-
* - extends {@link TooltipTriggerComponentProps}
|
|
1075
|
-
*
|
|
1076
|
-
* @example
|
|
1077
|
-
* ```tsx
|
|
1078
|
-
<TooltipTrigger content={...} placement="top" arrow isDisabled={disabled}>
|
|
1079
|
-
{children}
|
|
1080
|
-
</TooltipTrigger>
|
|
1081
|
-
* ```
|
|
1082
876
|
*/
|
|
1083
877
|
export declare function TooltipTrigger({ children, delay, closeDelay, isDisabled, defaultOpen, onOpenChange, disableTriggerClick, content, ...tooltipProps }: TooltipTriggerProps): JSX_2.Element;
|
|
1084
878
|
|
|
@@ -1094,46 +888,24 @@ export declare interface TooltipTriggerProps extends TooltipProps, TooltipTrigge
|
|
|
1094
888
|
disableTriggerClick?: boolean;
|
|
1095
889
|
}
|
|
1096
890
|
|
|
891
|
+
/**
|
|
892
|
+
* A component that displays either a popover menu or an action menu
|
|
893
|
+
* depending on the screen size when the menu trigger is pressed.
|
|
894
|
+
*
|
|
895
|
+
* @param {MenuProps} props - The props for the MenuTrigger component.
|
|
896
|
+
* @returns {JSX.Element} - The MenuTrigger component.
|
|
897
|
+
*/
|
|
1097
898
|
declare interface TriggerProps {
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
899
|
+
isDisabled?: boolean;
|
|
900
|
+
"data-testid"?: string;
|
|
901
|
+
ref?: React.RefObject<HTMLButtonElement>;
|
|
902
|
+
onPress?: () => void;
|
|
903
|
+
"aria-label": string;
|
|
1102
904
|
}
|
|
1103
905
|
|
|
1104
906
|
/**
|
|
1105
907
|
* Hook for creating a popover trigger. This hook manages the state and events for the popover
|
|
1106
908
|
* and popover trigger. For examples see Popover.stories.tsx.
|
|
1107
|
-
*
|
|
1108
|
-
* API:
|
|
1109
|
-
* - {@link OverlayTriggerProps}
|
|
1110
|
-
*
|
|
1111
|
-
* @example
|
|
1112
|
-
* ```tsx
|
|
1113
|
-
* let { buttonProps, overlayProps, buttonRef, state } = usePopoverTrigger();
|
|
1114
|
-
*
|
|
1115
|
-
* return (
|
|
1116
|
-
* <div>
|
|
1117
|
-
* <button {...buttonProps} ref={buttonRef}>
|
|
1118
|
-
* Trigger
|
|
1119
|
-
* </button>
|
|
1120
|
-
*
|
|
1121
|
-
* {state.isOpen && (
|
|
1122
|
-
* <Popover
|
|
1123
|
-
* state={state}
|
|
1124
|
-
* triggerRef={buttonRef}
|
|
1125
|
-
* arrow={props.arrow}
|
|
1126
|
-
* offset={props.offset}
|
|
1127
|
-
* placement={props.placement}
|
|
1128
|
-
* >
|
|
1129
|
-
* <Dialog {...overlayProps} title="Popover">
|
|
1130
|
-
* Here is some popover content
|
|
1131
|
-
* </Dialog>
|
|
1132
|
-
* </Popover>
|
|
1133
|
-
* )}
|
|
1134
|
-
* </div>
|
|
1135
|
-
* );
|
|
1136
|
-
* ```
|
|
1137
909
|
*/
|
|
1138
910
|
export declare function usePopoverTrigger(props?: OverlayTriggerProps): {
|
|
1139
911
|
buttonProps: default_2.ButtonHTMLAttributes<HTMLButtonElement>;
|
|
@@ -1147,8 +919,10 @@ export declare const useTheme: () => ThemeContextType;
|
|
|
1147
919
|
/**
|
|
1148
920
|
* A waveform visualization component that displays audio data with interactive features.
|
|
1149
921
|
*
|
|
1150
|
-
*
|
|
1151
|
-
*
|
|
922
|
+
* @component
|
|
923
|
+
* @interface WaveformProps
|
|
924
|
+
*
|
|
925
|
+
* @returns {JSX.Element} A waveform visualization with optional timestamps and interactive features
|
|
1152
926
|
*/
|
|
1153
927
|
export declare function Waveform({ data: waveformData, resolution, startDuration, endDuration, currentTime, showTimestamps, totalDuration, disabled, disabledMessage, onClick, "data-testid": testId, }: WaveformProps): JSX_2.Element;
|
|
1154
928
|
|
|
@@ -1158,14 +932,6 @@ declare interface WaveformProps {
|
|
|
1158
932
|
* If not provided, uses a sample sine wave.
|
|
1159
933
|
*/
|
|
1160
934
|
data?: number[];
|
|
1161
|
-
/**
|
|
1162
|
-
* Current playback position in seconds.
|
|
1163
|
-
*/
|
|
1164
|
-
currentTime?: number;
|
|
1165
|
-
/**
|
|
1166
|
-
* Test ID for testing purposes.
|
|
1167
|
-
*/
|
|
1168
|
-
"data-testid"?: string;
|
|
1169
935
|
/**
|
|
1170
936
|
* Whether the entire waveform is disabled.
|
|
1171
937
|
*/
|
|
@@ -1175,29 +941,42 @@ declare interface WaveformProps {
|
|
|
1175
941
|
*/
|
|
1176
942
|
disabledMessage?: string;
|
|
1177
943
|
/**
|
|
1178
|
-
*
|
|
944
|
+
* Total duration of the audio in seconds.
|
|
1179
945
|
*/
|
|
1180
|
-
|
|
946
|
+
totalDuration: number;
|
|
1181
947
|
/**
|
|
1182
|
-
*
|
|
948
|
+
* Current playback position in seconds.
|
|
1183
949
|
*/
|
|
1184
|
-
|
|
950
|
+
currentTime?: number;
|
|
1185
951
|
/**
|
|
1186
952
|
* Width in pixels of each waveform bar.
|
|
1187
953
|
*/
|
|
1188
954
|
resolution?: number;
|
|
955
|
+
/**
|
|
956
|
+
* Start time to display from in seconds.
|
|
957
|
+
*/
|
|
958
|
+
startDuration?: number;
|
|
959
|
+
/**
|
|
960
|
+
* End time to display until in seconds.
|
|
961
|
+
*/
|
|
962
|
+
endDuration?: number;
|
|
1189
963
|
/**
|
|
1190
964
|
* Whether to show timestamp markers.
|
|
1191
965
|
*/
|
|
1192
966
|
showTimestamps?: boolean;
|
|
1193
967
|
/**
|
|
1194
|
-
*
|
|
968
|
+
* Click handler that receives the clicked position (0-1) and event.
|
|
1195
969
|
*/
|
|
1196
|
-
|
|
970
|
+
onClick?: (position: number, e: React.MouseEvent<HTMLDivElement>) => void;
|
|
1197
971
|
/**
|
|
1198
|
-
*
|
|
972
|
+
* Test ID for testing purposes.
|
|
1199
973
|
*/
|
|
1200
|
-
|
|
974
|
+
"data-testid"?: string;
|
|
1201
975
|
}
|
|
1202
976
|
|
|
1203
977
|
export { }
|
|
978
|
+
|
|
979
|
+
|
|
980
|
+
declare namespace ButtonGroup {
|
|
981
|
+
var Option: (props: ButtonGroupOptionProps) => import("react/jsx-runtime").JSX.Element;
|
|
982
|
+
}
|