@seeqdev/qomponents 0.0.214 → 0.0.216

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.
Files changed (87) hide show
  1. package/dist/example/package.json +1 -1
  2. package/dist/index.esm.js +76 -29429
  3. package/dist/index.esm.js.map +1 -1
  4. package/dist/index.js +78 -29481
  5. package/dist/index.js.map +1 -1
  6. package/dist/src/Accordion/Accordion.d.ts +6 -3
  7. package/dist/src/Accordion/Accordion.types.d.ts +86 -83
  8. package/dist/src/Accordion/index.d.ts +2 -1
  9. package/dist/src/Alert/Alert.d.ts +8 -3
  10. package/dist/src/Alert/Alert.types.d.ts +58 -55
  11. package/dist/src/Alert/index.d.ts +2 -1
  12. package/dist/src/Button/Button.d.ts +6 -3
  13. package/dist/src/Button/Button.types.d.ts +151 -147
  14. package/dist/src/Button/index.d.ts +2 -1
  15. package/dist/src/ButtonGroup/ButtonGroup.d.ts +8 -3
  16. package/dist/src/ButtonGroup/ButtonGroup.types.d.ts +66 -62
  17. package/dist/src/ButtonGroup/index.d.ts +2 -1
  18. package/dist/src/ButtonWithDropdown/ButtonWithDropdown.d.ts +8 -5
  19. package/dist/src/ButtonWithDropdown/ButtonWithDropdown.types.d.ts +209 -204
  20. package/dist/src/ButtonWithDropdown/index.d.ts +2 -1
  21. package/dist/src/ButtonWithPopover/ButtonWithPopover.d.ts +7 -4
  22. package/dist/src/ButtonWithPopover/ButtonWithPopover.types.d.ts +134 -129
  23. package/dist/src/ButtonWithPopover/index.d.ts +2 -1
  24. package/dist/src/Carousel/Carousel.d.ts +7 -3
  25. package/dist/src/Carousel/Carousel.types.d.ts +84 -81
  26. package/dist/src/Carousel/index.d.ts +2 -1
  27. package/dist/src/Checkbox/Checkbox.d.ts +8 -3
  28. package/dist/src/Checkbox/Checkbox.types.d.ts +92 -89
  29. package/dist/src/Checkbox/index.d.ts +2 -1
  30. package/dist/src/Collapse/Collapse.d.ts +6 -3
  31. package/dist/src/Collapse/Collapse.types.d.ts +17 -14
  32. package/dist/src/Collapse/index.d.ts +2 -1
  33. package/dist/src/Icon/Icon.d.ts +7 -3
  34. package/dist/src/Icon/Icon.types.d.ts +89 -85
  35. package/dist/src/Icon/index.d.ts +2 -1
  36. package/dist/src/InputGroup/InputGroup.d.ts +8 -3
  37. package/dist/src/InputGroup/InputGroup.types.d.ts +42 -38
  38. package/dist/src/InputGroup/index.d.ts +3 -2
  39. package/dist/src/Modal/Modal.d.ts +8 -3
  40. package/dist/src/Modal/Modal.types.d.ts +253 -249
  41. package/dist/src/Modal/index.d.ts +2 -1
  42. package/dist/src/ProgressBar/ProgressBar.d.ts +6 -3
  43. package/dist/src/ProgressBar/ProgressBar.types.d.ts +71 -66
  44. package/dist/src/ProgressBar/index.d.ts +2 -1
  45. package/dist/src/SeeqActionDropdown/SeeqActionDropdown.d.ts +7 -4
  46. package/dist/src/SeeqActionDropdown/SeeqActionDropdown.types.d.ts +159 -154
  47. package/dist/src/SeeqActionDropdown/index.d.ts +2 -1
  48. package/dist/src/SeeqActionDropdown/variants.d.ts +9 -5
  49. package/dist/src/Select/Select.d.ts +9 -6
  50. package/dist/src/Select/Select.types.d.ts +219 -213
  51. package/dist/src/Select/index.d.ts +3 -2
  52. package/dist/src/Slider/Slider.d.ts +8 -3
  53. package/dist/src/Slider/Slider.types.d.ts +83 -80
  54. package/dist/src/Slider/index.d.ts +2 -1
  55. package/dist/src/SvgIcon/SvgIcon.d.ts +7 -3
  56. package/dist/src/SvgIcon/SvgIcon.types.d.ts +73 -69
  57. package/dist/src/SvgIcon/index.d.ts +2 -1
  58. package/dist/src/Tabs/Tabs.d.ts +6 -3
  59. package/dist/src/Tabs/Tabs.types.d.ts +83 -78
  60. package/dist/src/Tabs/index.d.ts +2 -1
  61. package/dist/src/TextArea/TextArea.d.ts +8 -3
  62. package/dist/src/TextArea/TextArea.types.d.ts +116 -111
  63. package/dist/src/TextArea/index.d.ts +2 -1
  64. package/dist/src/TextField/TextField.d.ts +8 -3
  65. package/dist/src/TextField/TextField.types.d.ts +198 -194
  66. package/dist/src/TextField/index.d.ts +2 -1
  67. package/dist/src/ToolbarButton/ToolbarButton.d.ts +7 -3
  68. package/dist/src/ToolbarButton/ToolbarButton.types.d.ts +121 -117
  69. package/dist/src/ToolbarButton/index.d.ts +2 -1
  70. package/dist/src/Tooltip/QTip.types.d.ts +16 -12
  71. package/dist/src/Tooltip/Qtip.d.ts +7 -2
  72. package/dist/src/Tooltip/Tooltip.d.ts +8 -3
  73. package/dist/src/Tooltip/Tooltip.types.d.ts +24 -20
  74. package/dist/src/Tooltip/index.d.ts +3 -2
  75. package/dist/src/Tooltip/qTip.utilities.d.ts +13 -3
  76. package/dist/src/TriggerWithDropdown/TriggerWithDropdown.d.ts +7 -4
  77. package/dist/src/TriggerWithDropdown/TriggerWithDropdown.types.d.ts +99 -94
  78. package/dist/src/TriggerWithDropdown/index.d.ts +2 -1
  79. package/dist/src/index.build.d.ts +50 -6
  80. package/dist/src/index.d.ts +50 -46
  81. package/dist/src/test-utils/is-browser-mode.d.ts +7 -4
  82. package/dist/src/types.d.ts +30 -28
  83. package/dist/src/utils/browserId.d.ts +8 -5
  84. package/dist/src/utils/svg.d.ts +6 -3
  85. package/dist/src/utils/validateStyleDimension.d.ts +6 -2
  86. package/package.json +10 -9
  87. package/dist/src/styles.build.css.d.ts +0 -1
@@ -1,6 +1,11 @@
1
- import React from 'react';
2
- import { InputLengthStyleProps, TextFieldProps } from './TextField.types';
1
+ import { InputLengthStyleProps, TextFieldProps } from "./TextField.types.js";
2
+ import React from "react";
3
+
4
+ //#region src/TextField/TextField.d.ts
5
+
3
6
  /**
4
7
  * Textfield.
5
8
  */
6
- export declare const TextField: React.ForwardRefExoticComponent<Omit<TextFieldProps & InputLengthStyleProps, "ref"> & React.RefAttributes<HTMLInputElement>>;
9
+ declare const TextField: React.ForwardRefExoticComponent<Omit<TextFieldProps & InputLengthStyleProps, "ref"> & React.RefAttributes<HTMLInputElement>>;
10
+ //#endregion
11
+ export { TextField };
@@ -1,205 +1,209 @@
1
- import { TooltipComponentProps } from '../Tooltip/Tooltip.types';
2
- import { FormControlElement, InputGroupPlacement } from '../types';
3
- export interface TextFieldProps extends TooltipComponentProps {
4
- /**
5
- * When true, makes the text field read-only, preventing user input.
6
- * The field will display its value but users cannot modify it. Unlike disabled fields,
7
- * read-only fields can still receive focus and their values are included in form submissions.
8
- */
9
- readonly?: boolean;
10
- /**
11
- * When true, disables the text field preventing any user interaction.
12
- * Disabled fields appear visually dimmed, cannot receive focus, and their
13
- * values are not included in form submissions.
14
- */
15
- disabled?: boolean;
16
- /**
17
- * Callback function triggered when the text field value changes.
18
- * Receives the change event containing the new value. Use this to update
19
- * your component state in controlled input scenarios.
20
- */
21
- onChange?: React.ChangeEventHandler<FormControlElement>;
22
- /**
23
- * Callback function triggered when the user pastes content into the text field.
24
- * Receives the clipboard event with details about the pasted content.
25
- * Useful for implementing custom paste handling, such as sanitizing input
26
- * or preventing certain types of content from being pasted.
27
- */
28
- onPaste?: React.ClipboardEventHandler<FormControlElement>;
29
- /**
30
- * Callback function triggered when a key is released while the field has focus.
31
- * Useful for implementing search-as-you-type functionality or debounced input handling.
32
- * Receives the keyboard event with details about the released key.
33
- */
34
- onKeyUp?: React.KeyboardEventHandler<FormControlElement>;
35
- /**
36
- * Callback function triggered when a key is pressed while the field has focus.
37
- * Useful for implementing keyboard shortcuts, form submission on Enter,
38
- * or preventing certain characters from being entered.
39
- */
40
- onKeyDown?: React.KeyboardEventHandler<FormControlElement>;
41
- /**
42
- * Callback function triggered when the text field receives focus.
43
- * Use this to handle focus-related logic such as showing hints,
44
- * clearing placeholder text, or updating UI state.
45
- */
46
- onFocus?: React.FocusEventHandler<HTMLInputElement>;
47
- /**
48
- * Callback function triggered when the text field loses focus.
49
- * Commonly used for form validation, saving draft data, or
50
- * updating UI state when users finish interacting with the field.
51
- */
52
- onBlur?: React.FocusEventHandler<FormControlElement>;
53
- /**
54
- * HTML ID attribute for the text field element.
55
- * Should be unique across the entire page for proper HTML semantics and accessibility.
56
- * Used for associating labels and error messages with the input field.
57
- */
58
- id?: string;
59
- /**
60
- * Name attribute for the text field used in form submission.
61
- * This identifies the field's data when the form is submitted to a server.
62
- * Essential for proper form handling and data processing.
63
- */
64
- name?: string;
65
- /**
66
- * Size variant that controls the text field's height and text size:
67
- * - `sm`: Small field with compact padding and smaller text
68
- * - `lg`: Large field with generous padding and larger text
69
- * If not specified, uses the default/medium size.
70
- */
71
- size?: 'sm' | 'lg';
72
- /**
73
- * The current value of the text field.
74
- * Can be a string for text input, an array of strings for multi-value fields,
75
- * or a number for numeric inputs. Use this for controlled input components.
76
- */
77
- value?: string | string[] | number;
78
- /**
79
- * Placeholder text displayed when the field is empty.
80
- * Provides users with a hint about what type of content is expected.
81
- * Should be descriptive but not replace proper labels.
82
- */
83
- placeholder?: string;
84
- /**
85
- * Additional CSS classes to apply to the text field element.
86
- * These classes are combined with the component's built-in styling.
87
- * Use this to customize appearance beyond the standard size variants.
88
- */
89
- extraClassNames?: string;
90
- /**
91
- * HTML input type that determines the field's behavior and validation:
92
- * - `text`: Standard text input (default)
93
- * - `password`: Obscures entered text for security
94
- * - `number`: Numeric input with increment/decrement controls
95
- * - `email`: Email input with built-in email validation
96
- * @default 'text'
97
- */
98
- type?: 'text' | 'password' | 'number' | 'email';
99
- /**
100
- * Test ID attribute for the text field element used in automated testing.
101
- * Applied to the `data-testid` attribute for element selection in test suites.
102
- */
103
- testId?: string;
104
- /**
105
- * React ref object for direct access to the text field DOM element.
106
- * Use this when you need to programmatically focus the field,
107
- * measure its dimensions, or perform other direct DOM operations.
108
- */
109
- ref?: any;
110
- /**
111
- * Configuration for input group styling when the field is part of a group:
112
- * - `prepend`: Field is preceded by another element (button, icon, text)
113
- * - `append`: Field is followed by another element
114
- * Affects border radius and styling to create seamless grouped appearance.
115
- */
116
- inputGroup?: InputGroupPlacement;
117
- /**
118
- * Step value for numeric input types that defines the increment/decrement amount.
119
- * When users click the number input's up/down arrows or use arrow keys,
120
- * the value changes by this step amount. Can be a number or string.
121
- */
122
- step?: number | string;
123
- /**
124
- * When true, displays error styling on the text field.
125
- * Typically changes border color to red and may add error-related visual cues.
126
- * Usually used in combination with `errorText` to provide validation feedback.
127
- */
128
- showError?: boolean;
129
- /**
130
- * Error message text to display below the field when validation fails.
131
- * Provides specific feedback about what the user needs to correct.
132
- * Only shown when there's an actual error to communicate.
133
- */
134
- errorText?: string;
135
- /**
136
- * When true, marks the field as required for form validation.
137
- * May add visual indicators (like asterisks) and prevents form submission
138
- * if the field is empty. Essential for mandatory form fields.
139
- */
140
- required?: boolean;
141
- /**
142
- * HTML autocomplete attribute that helps browsers provide appropriate suggestions.
143
- * Values like 'email', 'name', 'new-password', 'current-password', etc.
144
- * Improves user experience by enabling relevant autocomplete functionality.
145
- */
146
- autoComplete?: string;
147
- /**
148
- * When true, automatically focuses this field when the component mounts.
149
- * Useful for modal dialogs or forms where immediate input is expected.
150
- * Should be used sparingly to avoid accessibility issues.
151
- */
152
- autoFocus?: boolean;
153
- /**
154
- * Fixed width in pixels for the text field input element.
155
- * Primarily used in the Editable Text component for precise sizing control.
156
- * Overrides default responsive width behavior when a specific width is needed.
157
- */
158
- inputWidth?: number;
159
- /**
160
- * Fixed height in pixels for the text field input element.
161
- * Primarily used in the Editable Text component for precise sizing control.
162
- * Overrides default height behavior when a specific height is needed.
163
- */
164
- inputHeight?: number;
165
- /**
166
- * Minimum allowed value for numeric, date, time, and range input types.
167
- * Prevents users from entering or selecting values below this threshold.
168
- * Used for validation and UI constraints in number-based inputs.
169
- */
170
- min?: number;
171
- /**
172
- * Maximum allowed value for numeric, date, time, and range input types.
173
- * Prevents users from entering or selecting values above this threshold.
174
- * Used for validation and UI constraints in number-based inputs.
175
- */
176
- max?: number;
1
+ import { TooltipComponentProps } from "../Tooltip/Tooltip.types.js";
2
+ import { FormControlElement, InputGroupPlacement } from "../types.js";
3
+
4
+ //#region src/TextField/TextField.types.d.ts
5
+ interface TextFieldProps extends TooltipComponentProps {
6
+ /**
7
+ * When true, makes the text field read-only, preventing user input.
8
+ * The field will display its value but users cannot modify it. Unlike disabled fields,
9
+ * read-only fields can still receive focus and their values are included in form submissions.
10
+ */
11
+ readonly?: boolean;
12
+ /**
13
+ * When true, disables the text field preventing any user interaction.
14
+ * Disabled fields appear visually dimmed, cannot receive focus, and their
15
+ * values are not included in form submissions.
16
+ */
17
+ disabled?: boolean;
18
+ /**
19
+ * Callback function triggered when the text field value changes.
20
+ * Receives the change event containing the new value. Use this to update
21
+ * your component state in controlled input scenarios.
22
+ */
23
+ onChange?: React.ChangeEventHandler<FormControlElement>;
24
+ /**
25
+ * Callback function triggered when the user pastes content into the text field.
26
+ * Receives the clipboard event with details about the pasted content.
27
+ * Useful for implementing custom paste handling, such as sanitizing input
28
+ * or preventing certain types of content from being pasted.
29
+ */
30
+ onPaste?: React.ClipboardEventHandler<FormControlElement>;
31
+ /**
32
+ * Callback function triggered when a key is released while the field has focus.
33
+ * Useful for implementing search-as-you-type functionality or debounced input handling.
34
+ * Receives the keyboard event with details about the released key.
35
+ */
36
+ onKeyUp?: React.KeyboardEventHandler<FormControlElement>;
37
+ /**
38
+ * Callback function triggered when a key is pressed while the field has focus.
39
+ * Useful for implementing keyboard shortcuts, form submission on Enter,
40
+ * or preventing certain characters from being entered.
41
+ */
42
+ onKeyDown?: React.KeyboardEventHandler<FormControlElement>;
43
+ /**
44
+ * Callback function triggered when the text field receives focus.
45
+ * Use this to handle focus-related logic such as showing hints,
46
+ * clearing placeholder text, or updating UI state.
47
+ */
48
+ onFocus?: React.FocusEventHandler<HTMLInputElement>;
49
+ /**
50
+ * Callback function triggered when the text field loses focus.
51
+ * Commonly used for form validation, saving draft data, or
52
+ * updating UI state when users finish interacting with the field.
53
+ */
54
+ onBlur?: React.FocusEventHandler<FormControlElement>;
55
+ /**
56
+ * HTML ID attribute for the text field element.
57
+ * Should be unique across the entire page for proper HTML semantics and accessibility.
58
+ * Used for associating labels and error messages with the input field.
59
+ */
60
+ id?: string;
61
+ /**
62
+ * Name attribute for the text field used in form submission.
63
+ * This identifies the field's data when the form is submitted to a server.
64
+ * Essential for proper form handling and data processing.
65
+ */
66
+ name?: string;
67
+ /**
68
+ * Size variant that controls the text field's height and text size:
69
+ * - `sm`: Small field with compact padding and smaller text
70
+ * - `lg`: Large field with generous padding and larger text
71
+ * If not specified, uses the default/medium size.
72
+ */
73
+ size?: 'sm' | 'lg';
74
+ /**
75
+ * The current value of the text field.
76
+ * Can be a string for text input, an array of strings for multi-value fields,
77
+ * or a number for numeric inputs. Use this for controlled input components.
78
+ */
79
+ value?: string | string[] | number;
80
+ /**
81
+ * Placeholder text displayed when the field is empty.
82
+ * Provides users with a hint about what type of content is expected.
83
+ * Should be descriptive but not replace proper labels.
84
+ */
85
+ placeholder?: string;
86
+ /**
87
+ * Additional CSS classes to apply to the text field element.
88
+ * These classes are combined with the component's built-in styling.
89
+ * Use this to customize appearance beyond the standard size variants.
90
+ */
91
+ extraClassNames?: string;
92
+ /**
93
+ * HTML input type that determines the field's behavior and validation:
94
+ * - `text`: Standard text input (default)
95
+ * - `password`: Obscures entered text for security
96
+ * - `number`: Numeric input with increment/decrement controls
97
+ * - `email`: Email input with built-in email validation
98
+ * @default 'text'
99
+ */
100
+ type?: 'text' | 'password' | 'number' | 'email';
101
+ /**
102
+ * Test ID attribute for the text field element used in automated testing.
103
+ * Applied to the `data-testid` attribute for element selection in test suites.
104
+ */
105
+ testId?: string;
106
+ /**
107
+ * React ref object for direct access to the text field DOM element.
108
+ * Use this when you need to programmatically focus the field,
109
+ * measure its dimensions, or perform other direct DOM operations.
110
+ */
111
+ ref?: any;
112
+ /**
113
+ * Configuration for input group styling when the field is part of a group:
114
+ * - `prepend`: Field is preceded by another element (button, icon, text)
115
+ * - `append`: Field is followed by another element
116
+ * Affects border radius and styling to create seamless grouped appearance.
117
+ */
118
+ inputGroup?: InputGroupPlacement;
119
+ /**
120
+ * Step value for numeric input types that defines the increment/decrement amount.
121
+ * When users click the number input's up/down arrows or use arrow keys,
122
+ * the value changes by this step amount. Can be a number or string.
123
+ */
124
+ step?: number | string;
125
+ /**
126
+ * When true, displays error styling on the text field.
127
+ * Typically changes border color to red and may add error-related visual cues.
128
+ * Usually used in combination with `errorText` to provide validation feedback.
129
+ */
130
+ showError?: boolean;
131
+ /**
132
+ * Error message text to display below the field when validation fails.
133
+ * Provides specific feedback about what the user needs to correct.
134
+ * Only shown when there's an actual error to communicate.
135
+ */
136
+ errorText?: string;
137
+ /**
138
+ * When true, marks the field as required for form validation.
139
+ * May add visual indicators (like asterisks) and prevents form submission
140
+ * if the field is empty. Essential for mandatory form fields.
141
+ */
142
+ required?: boolean;
143
+ /**
144
+ * HTML autocomplete attribute that helps browsers provide appropriate suggestions.
145
+ * Values like 'email', 'name', 'new-password', 'current-password', etc.
146
+ * Improves user experience by enabling relevant autocomplete functionality.
147
+ */
148
+ autoComplete?: string;
149
+ /**
150
+ * When true, automatically focuses this field when the component mounts.
151
+ * Useful for modal dialogs or forms where immediate input is expected.
152
+ * Should be used sparingly to avoid accessibility issues.
153
+ */
154
+ autoFocus?: boolean;
155
+ /**
156
+ * Fixed width in pixels for the text field input element.
157
+ * Primarily used in the Editable Text component for precise sizing control.
158
+ * Overrides default responsive width behavior when a specific width is needed.
159
+ */
160
+ inputWidth?: number;
161
+ /**
162
+ * Fixed height in pixels for the text field input element.
163
+ * Primarily used in the Editable Text component for precise sizing control.
164
+ * Overrides default height behavior when a specific height is needed.
165
+ */
166
+ inputHeight?: number;
167
+ /**
168
+ * Minimum allowed value for numeric, date, time, and range input types.
169
+ * Prevents users from entering or selecting values below this threshold.
170
+ * Used for validation and UI constraints in number-based inputs.
171
+ */
172
+ min?: number;
173
+ /**
174
+ * Maximum allowed value for numeric, date, time, and range input types.
175
+ * Prevents users from entering or selecting values above this threshold.
176
+ * Used for validation and UI constraints in number-based inputs.
177
+ */
178
+ max?: number;
177
179
  }
178
180
  /**
179
181
  * Interface for defining dimension styles with CSS-compatible values.
180
182
  * Used internally for styling components with dynamic width and height.
181
183
  */
182
- export interface DimensionStyle {
183
- /** CSS width value (e.g., '100px', '50%', 'auto') */
184
- width?: string;
185
- /** CSS height value (e.g., '40px', '2rem', 'auto') */
186
- height?: string;
184
+ interface DimensionStyle {
185
+ /** CSS width value (e.g., '100px', '50%', 'auto') */
186
+ width?: string;
187
+ /** CSS height value (e.g., '40px', '2rem', 'auto') */
188
+ height?: string;
187
189
  }
188
190
  /**
189
191
  * Interface for defining text input length constraints.
190
192
  * Used for validation and input limiting in text-based fields.
191
193
  */
192
- export interface InputLengthStyleProps {
193
- /**
194
- * Maximum number of characters allowed in the text field.
195
- * Prevents users from entering more text beyond this limit.
196
- * Useful for database field constraints and UI consistency.
197
- */
198
- maxLength?: number;
199
- /**
200
- * Minimum number of characters required in the text field.
201
- * Used for validation to ensure adequate input length.
202
- * Commonly used for passwords, codes, or required descriptions.
203
- */
204
- minLength?: number;
194
+ interface InputLengthStyleProps {
195
+ /**
196
+ * Maximum number of characters allowed in the text field.
197
+ * Prevents users from entering more text beyond this limit.
198
+ * Useful for database field constraints and UI consistency.
199
+ */
200
+ maxLength?: number;
201
+ /**
202
+ * Minimum number of characters required in the text field.
203
+ * Used for validation to ensure adequate input length.
204
+ * Commonly used for passwords, codes, or required descriptions.
205
+ */
206
+ minLength?: number;
205
207
  }
208
+ //#endregion
209
+ export { DimensionStyle, InputLengthStyleProps, TextFieldProps };
@@ -1 +1,2 @@
1
- export { TextField as default } from './TextField';
1
+ import { TextField } from "./TextField.js";
2
+ export { TextField as default };
@@ -1,3 +1,7 @@
1
- import * as React from 'react';
2
- import { ToolbarButtonProps } from './ToolbarButton.types';
3
- export declare const ToolbarButton: React.FunctionComponent<ToolbarButtonProps>;
1
+ import { ToolbarButtonProps } from "./ToolbarButton.types.js";
2
+ import * as React$1 from "react";
3
+
4
+ //#region src/ToolbarButton/ToolbarButton.d.ts
5
+ declare const ToolbarButton: React$1.FunctionComponent<ToolbarButtonProps>;
6
+ //#endregion
7
+ export { ToolbarButton };