@dxc-technology/halstack-react 0.0.0-49c38a4 → 0.0.0-4a67e25
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/HalstackContext.d.ts +12 -0
- package/HalstackContext.js +294 -0
- package/accordion/Accordion.d.ts +1 -1
- package/accordion/Accordion.js +121 -123
- package/accordion/Accordion.stories.tsx +13 -14
- package/accordion/Accordion.test.js +25 -11
- package/accordion/types.d.ts +9 -4
- package/accordion-group/AccordionGroup.d.ts +1 -1
- package/accordion-group/AccordionGroup.js +15 -36
- package/accordion-group/AccordionGroup.stories.tsx +28 -2
- package/accordion-group/AccordionGroup.test.js +30 -37
- package/accordion-group/types.d.ts +14 -3
- package/alert/Alert.js +5 -2
- package/badge/Badge.d.ts +1 -1
- package/badge/Badge.js +5 -3
- package/badge/types.d.ts +1 -0
- package/bleed/Bleed.js +1 -34
- package/bleed/Bleed.stories.tsx +94 -95
- package/bleed/types.d.ts +25 -1
- package/box/Box.js +23 -33
- package/box/types.d.ts +1 -0
- package/bulleted-list/BulletedList.d.ts +7 -0
- package/bulleted-list/BulletedList.js +123 -0
- package/bulleted-list/BulletedList.stories.tsx +200 -0
- package/bulleted-list/types.d.ts +11 -0
- package/{list → bulleted-list}/types.js +0 -0
- package/button/Button.js +53 -68
- package/button/Button.stories.tsx +9 -0
- package/button/types.d.ts +7 -7
- package/card/Card.js +24 -27
- package/card/types.d.ts +1 -0
- package/checkbox/Checkbox.d.ts +2 -2
- package/checkbox/Checkbox.js +106 -109
- package/checkbox/Checkbox.stories.tsx +146 -130
- package/checkbox/Checkbox.test.js +100 -10
- package/checkbox/types.d.ts +13 -5
- package/chip/types.d.ts +1 -1
- package/common/variables.js +236 -106
- package/date-input/DateInput.js +56 -42
- package/date-input/DateInput.stories.tsx +19 -8
- package/date-input/DateInput.test.js +161 -87
- package/date-input/types.d.ts +16 -9
- package/dialog/Dialog.js +46 -50
- package/dialog/Dialog.stories.tsx +57 -2
- package/dialog/Dialog.test.js +34 -4
- package/dialog/types.d.ts +3 -2
- package/dropdown/Dropdown.d.ts +1 -1
- package/dropdown/Dropdown.js +247 -251
- package/dropdown/Dropdown.stories.tsx +126 -63
- package/dropdown/Dropdown.test.js +504 -108
- package/dropdown/DropdownMenu.d.ts +4 -0
- package/dropdown/DropdownMenu.js +80 -0
- package/dropdown/DropdownMenuItem.d.ts +4 -0
- package/dropdown/DropdownMenuItem.js +92 -0
- package/dropdown/types.d.ts +25 -5
- package/file-input/FileInput.d.ts +2 -2
- package/file-input/FileInput.js +183 -222
- package/file-input/FileInput.stories.tsx +38 -10
- package/file-input/FileInput.test.js +53 -12
- package/file-input/FileItem.d.ts +4 -14
- package/file-input/FileItem.js +43 -66
- package/file-input/types.d.ts +17 -0
- package/flex/Flex.d.ts +4 -0
- package/flex/Flex.js +69 -0
- package/flex/Flex.stories.tsx +103 -0
- package/flex/types.d.ts +32 -0
- package/{radio → flex}/types.js +0 -0
- package/footer/Footer.js +15 -88
- package/footer/Footer.stories.tsx +8 -1
- package/footer/Icons.js +1 -1
- package/footer/types.d.ts +2 -1
- package/header/Header.js +95 -114
- package/header/Header.stories.tsx +46 -36
- package/header/Header.test.js +18 -2
- package/header/Icons.js +2 -2
- package/header/types.d.ts +3 -2
- package/inset/Inset.js +1 -34
- package/inset/Inset.stories.tsx +36 -36
- package/inset/types.d.ts +25 -1
- package/layout/ApplicationLayout.d.ts +16 -6
- package/layout/ApplicationLayout.js +71 -131
- package/layout/ApplicationLayout.stories.tsx +84 -93
- package/layout/Icons.d.ts +5 -0
- package/layout/Icons.js +13 -2
- package/layout/SidenavContext.d.ts +5 -0
- package/layout/SidenavContext.js +19 -0
- package/layout/types.d.ts +18 -33
- package/link/Link.d.ts +3 -2
- package/link/Link.js +58 -75
- package/link/Link.stories.tsx +95 -53
- package/link/Link.test.js +7 -15
- package/link/types.d.ts +7 -23
- package/main.d.ts +8 -10
- package/main.js +46 -56
- package/number-input/NumberInput.js +11 -18
- package/number-input/NumberInput.stories.tsx +5 -5
- package/number-input/NumberInput.test.js +45 -11
- package/number-input/types.d.ts +17 -10
- package/package.json +20 -16
- package/paginator/Paginator.js +17 -38
- package/paginator/Paginator.test.js +43 -1
- package/paragraph/Paragraph.d.ts +6 -0
- package/paragraph/Paragraph.js +38 -0
- package/paragraph/Paragraph.stories.tsx +44 -0
- package/password-input/PasswordInput.js +7 -4
- package/password-input/PasswordInput.test.js +16 -18
- package/password-input/types.d.ts +14 -11
- package/progress-bar/ProgressBar.d.ts +2 -2
- package/progress-bar/ProgressBar.js +57 -51
- package/progress-bar/ProgressBar.stories.jsx +13 -11
- package/progress-bar/ProgressBar.test.js +67 -22
- package/progress-bar/types.d.ts +3 -4
- package/quick-nav/QuickNav.d.ts +4 -0
- package/quick-nav/QuickNav.js +117 -0
- package/quick-nav/QuickNav.stories.tsx +342 -0
- package/quick-nav/types.d.ts +21 -0
- package/{row → quick-nav}/types.js +0 -0
- package/radio-group/Radio.d.ts +1 -1
- package/radio-group/Radio.js +43 -28
- package/radio-group/RadioGroup.js +32 -28
- package/radio-group/RadioGroup.stories.tsx +5 -0
- package/radio-group/RadioGroup.test.js +144 -116
- package/radio-group/types.d.ts +79 -2
- package/resultsetTable/ResultsetTable.js +1 -3
- package/resultsetTable/ResultsetTable.test.js +42 -0
- package/select/Icons.d.ts +10 -0
- package/select/Icons.js +93 -0
- package/select/Listbox.d.ts +4 -0
- package/select/Listbox.js +198 -0
- package/select/Option.d.ts +4 -0
- package/select/Option.js +110 -0
- package/select/Select.js +141 -365
- package/select/Select.stories.tsx +160 -115
- package/select/Select.test.js +609 -276
- package/select/types.d.ts +52 -12
- package/sidenav/Sidenav.d.ts +6 -5
- package/sidenav/Sidenav.js +184 -52
- package/sidenav/Sidenav.stories.tsx +154 -156
- package/sidenav/Sidenav.test.js +25 -37
- package/sidenav/types.d.ts +50 -27
- package/slider/Slider.d.ts +2 -2
- package/slider/Slider.js +122 -96
- package/slider/Slider.stories.tsx +15 -9
- package/slider/Slider.test.js +142 -21
- package/slider/types.d.ts +10 -2
- package/spinner/Spinner.js +1 -1
- package/switch/Switch.d.ts +2 -2
- package/switch/Switch.js +150 -67
- package/switch/Switch.stories.tsx +20 -42
- package/switch/Switch.test.js +155 -3
- package/switch/types.d.ts +12 -4
- package/table/Table.js +1 -1
- package/table/Table.test.js +1 -1
- package/tabs/Tab.d.ts +4 -0
- package/tabs/Tab.js +135 -0
- package/tabs/Tabs.d.ts +1 -1
- package/tabs/Tabs.js +362 -108
- package/tabs/Tabs.stories.tsx +74 -8
- package/tabs/Tabs.test.js +241 -13
- package/tabs/types.d.ts +19 -5
- package/tabs-nav/NavTabs.d.ts +8 -0
- package/tabs-nav/NavTabs.js +125 -0
- package/tabs-nav/NavTabs.stories.tsx +170 -0
- package/tabs-nav/NavTabs.test.js +82 -0
- package/tabs-nav/Tab.d.ts +4 -0
- package/tabs-nav/Tab.js +130 -0
- package/tabs-nav/types.d.ts +53 -0
- package/{stack → tabs-nav}/types.js +0 -0
- package/tag/Tag.js +15 -20
- package/tag/Tag.stories.tsx +12 -8
- package/tag/types.d.ts +1 -1
- package/text-input/Icons.d.ts +8 -0
- package/text-input/Icons.js +60 -0
- package/text-input/Suggestion.d.ts +4 -0
- package/text-input/Suggestion.js +57 -0
- package/text-input/Suggestions.d.ts +4 -0
- package/text-input/Suggestions.js +134 -0
- package/text-input/TextInput.js +214 -333
- package/text-input/TextInput.stories.tsx +199 -192
- package/text-input/TextInput.test.js +686 -753
- package/text-input/types.d.ts +50 -12
- package/textarea/Textarea.js +15 -24
- package/textarea/Textarea.stories.jsx +5 -5
- package/textarea/Textarea.test.js +37 -36
- package/textarea/types.d.ts +18 -11
- package/toggle-group/ToggleGroup.d.ts +1 -1
- package/toggle-group/ToggleGroup.js +5 -4
- package/toggle-group/ToggleGroup.stories.tsx +4 -4
- package/toggle-group/ToggleGroup.test.js +35 -4
- package/toggle-group/types.d.ts +9 -1
- package/typography/Typography.d.ts +4 -0
- package/typography/Typography.js +131 -0
- package/typography/Typography.stories.tsx +198 -0
- package/typography/types.d.ts +18 -0
- package/typography/types.js +5 -0
- package/useTheme.js +2 -2
- package/useTranslatedLabels.d.ts +2 -0
- package/useTranslatedLabels.js +20 -0
- package/wizard/Wizard.d.ts +1 -1
- package/wizard/Wizard.js +58 -54
- package/wizard/Wizard.stories.tsx +33 -24
- package/wizard/Wizard.test.js +36 -23
- package/wizard/types.d.ts +10 -5
- package/ThemeContext.d.ts +0 -15
- package/ThemeContext.js +0 -235
- package/list/List.d.ts +0 -4
- package/list/List.js +0 -47
- package/list/List.stories.tsx +0 -95
- package/list/types.d.ts +0 -7
- package/radio/Radio.d.ts +0 -4
- package/radio/Radio.js +0 -174
- package/radio/Radio.stories.tsx +0 -192
- package/radio/Radio.test.js +0 -71
- package/radio/types.d.ts +0 -54
- package/row/Row.d.ts +0 -3
- package/row/Row.js +0 -127
- package/row/Row.stories.tsx +0 -237
- package/row/types.d.ts +0 -10
- package/stack/Stack.d.ts +0 -3
- package/stack/Stack.js +0 -97
- package/stack/Stack.stories.tsx +0 -164
- package/stack/types.d.ts +0 -9
- package/text/Text.d.ts +0 -7
- package/text/Text.js +0 -30
- package/text/Text.stories.tsx +0 -19
|
@@ -1,11 +1,16 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { userEvent, within
|
|
3
|
-
import { fireEvent } from "@testing-library/react";
|
|
2
|
+
import { userEvent, within } from "@storybook/testing-library";
|
|
4
3
|
import { BackgroundColorProvider } from "../BackgroundColorContext";
|
|
5
4
|
import Title from "../../.storybook/components/Title";
|
|
6
5
|
import ExampleContainer from "../../.storybook/components/ExampleContainer";
|
|
7
6
|
import DarkContainer from "../../.storybook/components/DarkSection";
|
|
8
7
|
import DxcTextInput from "./TextInput";
|
|
8
|
+
import DxcButton from "../button/Button";
|
|
9
|
+
import DxcCheckbox from "../checkbox/Checkbox";
|
|
10
|
+
import DxcFlex from "../flex/Flex";
|
|
11
|
+
import Suggestions from "./Suggestions";
|
|
12
|
+
import { ThemeProvider } from "styled-components";
|
|
13
|
+
import useTheme from "../useTheme";
|
|
9
14
|
|
|
10
15
|
export default {
|
|
11
16
|
title: "Text input",
|
|
@@ -70,7 +75,15 @@ export const Chromatic = () => (
|
|
|
70
75
|
</ExampleContainer>
|
|
71
76
|
<ExampleContainer pseudoState="pseudo-hover">
|
|
72
77
|
<Title title="Hovered action" theme="light" level={4} />
|
|
73
|
-
<DxcTextInput label="Text input"
|
|
78
|
+
<DxcTextInput label="Text input" defaultValue="Text" clearable />
|
|
79
|
+
</ExampleContainer>
|
|
80
|
+
<ExampleContainer pseudoState="pseudo-active">
|
|
81
|
+
<Title title="Actived action" theme="light" level={4} />
|
|
82
|
+
<DxcTextInput label="Text input" action={action} clearable />
|
|
83
|
+
</ExampleContainer>
|
|
84
|
+
<ExampleContainer pseudoState="pseudo-focus">
|
|
85
|
+
<Title title="Focused action" theme="light" level={4} />
|
|
86
|
+
<DxcTextInput label="Text input" action={action} clearable />
|
|
74
87
|
</ExampleContainer>
|
|
75
88
|
<ExampleContainer>
|
|
76
89
|
<Title title="Without label" theme="light" level={4} />
|
|
@@ -82,13 +95,13 @@ export const Chromatic = () => (
|
|
|
82
95
|
</ExampleContainer>
|
|
83
96
|
<ExampleContainer>
|
|
84
97
|
<Title title="Helper text, optional, and clearable" theme="light" level={4} />
|
|
85
|
-
<DxcTextInput label="Text input" clearable
|
|
98
|
+
<DxcTextInput label="Text input" clearable defaultValue="Text" helperText="Help message" optional />
|
|
86
99
|
</ExampleContainer>
|
|
87
100
|
<ExampleContainer>
|
|
88
101
|
<Title title="Clearable and large icon action" theme="light" level={4} />
|
|
89
102
|
<DxcTextInput
|
|
90
103
|
label="Text input"
|
|
91
|
-
|
|
104
|
+
defaultValue="Text text text text text text text text text text"
|
|
92
105
|
clearable
|
|
93
106
|
action={actionLargeIcon}
|
|
94
107
|
/>
|
|
@@ -107,7 +120,7 @@ export const Chromatic = () => (
|
|
|
107
120
|
label="Error text input"
|
|
108
121
|
helperText="Help message"
|
|
109
122
|
error="Error message."
|
|
110
|
-
|
|
123
|
+
defaultValue="Text"
|
|
111
124
|
clearable
|
|
112
125
|
optional
|
|
113
126
|
action={action}
|
|
@@ -133,7 +146,7 @@ export const Chromatic = () => (
|
|
|
133
146
|
helperText="Help message"
|
|
134
147
|
disabled
|
|
135
148
|
optional
|
|
136
|
-
|
|
149
|
+
defaultValue="Text"
|
|
137
150
|
action={action}
|
|
138
151
|
/>
|
|
139
152
|
</ExampleContainer>
|
|
@@ -146,13 +159,13 @@ export const Chromatic = () => (
|
|
|
146
159
|
optional
|
|
147
160
|
prefix="+34"
|
|
148
161
|
suffix="USD"
|
|
149
|
-
|
|
162
|
+
defaultValue="Text"
|
|
150
163
|
action={action}
|
|
151
164
|
/>
|
|
152
165
|
</ExampleContainer>
|
|
153
166
|
<BackgroundColorProvider color="#333333">
|
|
154
167
|
<DarkContainer>
|
|
155
|
-
<Title title="Dark" theme="dark" level={2} />
|
|
168
|
+
<Title title="Dark theme" theme="dark" level={2} />
|
|
156
169
|
<ExampleContainer pseudoState="pseudo-hover">
|
|
157
170
|
<Title title="Hovered" theme="dark" level={4} />
|
|
158
171
|
<DxcTextInput label="Text input" />
|
|
@@ -163,7 +176,15 @@ export const Chromatic = () => (
|
|
|
163
176
|
</ExampleContainer>
|
|
164
177
|
<ExampleContainer pseudoState="pseudo-hover">
|
|
165
178
|
<Title title="Hovered action" theme="dark" level={4} />
|
|
166
|
-
<DxcTextInput label="Text input"
|
|
179
|
+
<DxcTextInput label="Text input" defaultValue="Text" clearable />
|
|
180
|
+
</ExampleContainer>
|
|
181
|
+
<ExampleContainer pseudoState="pseudo-active">
|
|
182
|
+
<Title title="Actived action" theme="dark" level={4} />
|
|
183
|
+
<DxcTextInput label="Text input" action={action} clearable />
|
|
184
|
+
</ExampleContainer>
|
|
185
|
+
<ExampleContainer pseudoState="pseudo-focus">
|
|
186
|
+
<Title title="Focused action" theme="dark" level={4} />
|
|
187
|
+
<DxcTextInput label="Text input" action={action} clearable />
|
|
167
188
|
</ExampleContainer>
|
|
168
189
|
<ExampleContainer>
|
|
169
190
|
<Title title="Helper text, placeholder, optional and action" theme="dark" level={4} />
|
|
@@ -182,7 +203,7 @@ export const Chromatic = () => (
|
|
|
182
203
|
label="Error text input"
|
|
183
204
|
helperText="Help message"
|
|
184
205
|
error="Error message."
|
|
185
|
-
|
|
206
|
+
defaultValue="Text"
|
|
186
207
|
clearable
|
|
187
208
|
action={action}
|
|
188
209
|
/>
|
|
@@ -211,7 +232,7 @@ export const Chromatic = () => (
|
|
|
211
232
|
helperText="Help message"
|
|
212
233
|
disabled
|
|
213
234
|
optional
|
|
214
|
-
|
|
235
|
+
defaultValue="Text"
|
|
215
236
|
action={action}
|
|
216
237
|
/>
|
|
217
238
|
</ExampleContainer>
|
|
@@ -224,7 +245,7 @@ export const Chromatic = () => (
|
|
|
224
245
|
optional
|
|
225
246
|
prefix="+34"
|
|
226
247
|
suffix="USD"
|
|
227
|
-
|
|
248
|
+
defaultValue="Text"
|
|
228
249
|
action={action}
|
|
229
250
|
/>
|
|
230
251
|
</ExampleContainer>
|
|
@@ -279,196 +300,182 @@ export const Chromatic = () => (
|
|
|
279
300
|
</>
|
|
280
301
|
);
|
|
281
302
|
|
|
282
|
-
const
|
|
283
|
-
|
|
284
|
-
<Title title="Focused action" theme="light" level={4} />
|
|
285
|
-
<DxcTextInput label="Text input" action={action} clearable />
|
|
286
|
-
</ExampleContainer>
|
|
287
|
-
);
|
|
288
|
-
|
|
289
|
-
const ActivedActionTextInput = () => (
|
|
290
|
-
<ExampleContainer pseudoState="pseudo-active" expanded>
|
|
291
|
-
<Title title="Actived action" theme="light" level={4} />
|
|
292
|
-
<DxcTextInput label="Text input" action={action} clearable />
|
|
293
|
-
</ExampleContainer>
|
|
294
|
-
);
|
|
295
|
-
|
|
296
|
-
const ShowOptionsAutosuggest = () => (
|
|
297
|
-
<ExampleContainer expanded>
|
|
298
|
-
<Title title="Show options" theme="light" level={4} />
|
|
299
|
-
<DxcTextInput label="Text input" suggestions={countries} clearable />
|
|
300
|
-
</ExampleContainer>
|
|
301
|
-
);
|
|
302
|
-
|
|
303
|
-
const HoveredOptionAutosuggest = () => (
|
|
304
|
-
<ExampleContainer expanded pseudoState="pseudo-hover">
|
|
305
|
-
<Title title="Hovered option" theme="light" level={4} />
|
|
306
|
-
<DxcTextInput label="Text input" suggestions={country} clearable />
|
|
307
|
-
</ExampleContainer>
|
|
308
|
-
);
|
|
309
|
-
|
|
310
|
-
const FocusedOptionAutosuggest = () => (
|
|
311
|
-
<ExampleContainer expanded>
|
|
312
|
-
<Title title="Focused option" theme="light" level={4} />
|
|
313
|
-
<DxcTextInput label="Text input" suggestions={country} clearable />
|
|
314
|
-
</ExampleContainer>
|
|
315
|
-
);
|
|
316
|
-
|
|
317
|
-
const ActivedOptionAutosuggest = () => (
|
|
318
|
-
<ExampleContainer expanded pseudoState="pseudo-active">
|
|
319
|
-
<Title title="Actived option" theme="light" level={4} />
|
|
320
|
-
<DxcTextInput label="Text input" suggestions={country} clearable />
|
|
321
|
-
</ExampleContainer>
|
|
322
|
-
);
|
|
323
|
-
|
|
324
|
-
const FocusedActionTextInputOnDark = () => (
|
|
325
|
-
<BackgroundColorProvider color="#333333">
|
|
326
|
-
<DarkContainer>
|
|
327
|
-
<ExampleContainer expanded>
|
|
328
|
-
<Title title="Focused action" theme="dark" level={4} />
|
|
329
|
-
<DxcTextInput label="Text input" action={action} clearable />
|
|
330
|
-
</ExampleContainer>
|
|
331
|
-
</DarkContainer>
|
|
332
|
-
</BackgroundColorProvider>
|
|
333
|
-
);
|
|
334
|
-
|
|
335
|
-
const ActivedActionTextInputOnDark = () => (
|
|
336
|
-
<BackgroundColorProvider color="#333333">
|
|
337
|
-
<DarkContainer>
|
|
338
|
-
<ExampleContainer pseudoState="pseudo-active" expanded>
|
|
339
|
-
<Title title="Actived action" theme="dark" level={4} />
|
|
340
|
-
<DxcTextInput label="Text input" action={action} clearable />
|
|
341
|
-
</ExampleContainer>
|
|
342
|
-
</DarkContainer>
|
|
343
|
-
</BackgroundColorProvider>
|
|
344
|
-
);
|
|
303
|
+
const AutosuggestListbox = () => {
|
|
304
|
+
const colorsTheme: any = useTheme();
|
|
345
305
|
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
<
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
306
|
+
return (
|
|
307
|
+
<ThemeProvider theme={colorsTheme.textInput}>
|
|
308
|
+
<ExampleContainer>
|
|
309
|
+
<Title title="Autosuggest listbox" theme="light" level={2} />
|
|
310
|
+
<ExampleContainer>
|
|
311
|
+
<Title title="List dialog uses a Radix Popover to appear over elements with a certain z-index" theme="light" level={3} />
|
|
312
|
+
<div
|
|
313
|
+
style={{
|
|
314
|
+
display: "flex",
|
|
315
|
+
flexDirection: "column",
|
|
316
|
+
gap: "20px",
|
|
317
|
+
height: "150px",
|
|
318
|
+
width: "500px",
|
|
319
|
+
marginBottom: "250px",
|
|
320
|
+
padding: "20px",
|
|
321
|
+
border: "1px solid black",
|
|
322
|
+
borderRadius: "4px",
|
|
323
|
+
overflow: "auto",
|
|
324
|
+
zIndex: "1300",
|
|
325
|
+
}}
|
|
326
|
+
>
|
|
327
|
+
<DxcTextInput
|
|
328
|
+
label="Label"
|
|
329
|
+
suggestions={countries}
|
|
330
|
+
optional
|
|
331
|
+
placeholder="Choose an option"
|
|
332
|
+
size="fillParent"
|
|
333
|
+
/>
|
|
334
|
+
<button style={{ zIndex: "1", width: "100px" }}>Submit</button>
|
|
335
|
+
</div>
|
|
336
|
+
</ExampleContainer>
|
|
337
|
+
<Title title="Listbox suggestion states" theme="light" level={3} />
|
|
338
|
+
<ExampleContainer pseudoState="pseudo-hover">
|
|
339
|
+
<Title title="Hovered suggestion" theme="light" level={4} />
|
|
340
|
+
<Suggestions
|
|
341
|
+
id="x"
|
|
342
|
+
value=""
|
|
343
|
+
suggestions={country}
|
|
344
|
+
visualFocusIndex={-1}
|
|
345
|
+
highlightedSuggestions={false}
|
|
346
|
+
searchHasErrors={false}
|
|
347
|
+
isSearching={false}
|
|
348
|
+
suggestionOnClick={() => {}}
|
|
349
|
+
getTextInputWidth={() => 350}
|
|
350
|
+
/>
|
|
351
|
+
</ExampleContainer>
|
|
352
|
+
<ExampleContainer pseudoState="pseudo-active">
|
|
353
|
+
<Title title="Active suggestion" theme="light" level={4} />
|
|
354
|
+
<Suggestions
|
|
355
|
+
id="x"
|
|
356
|
+
value=""
|
|
357
|
+
suggestions={country}
|
|
358
|
+
visualFocusIndex={-1}
|
|
359
|
+
highlightedSuggestions={false}
|
|
360
|
+
searchHasErrors={false}
|
|
361
|
+
isSearching={false}
|
|
362
|
+
suggestionOnClick={(suggestion) => {}}
|
|
363
|
+
getTextInputWidth={() => 350}
|
|
364
|
+
/>
|
|
365
|
+
</ExampleContainer>
|
|
366
|
+
<ExampleContainer>
|
|
367
|
+
<Title title="Focused suggestion" theme="light" level={4} />
|
|
368
|
+
<Suggestions
|
|
369
|
+
id="x"
|
|
370
|
+
value=""
|
|
371
|
+
suggestions={country}
|
|
372
|
+
visualFocusIndex={0}
|
|
373
|
+
highlightedSuggestions={false}
|
|
374
|
+
searchHasErrors={false}
|
|
375
|
+
isSearching={false}
|
|
376
|
+
suggestionOnClick={(suggestion) => {}}
|
|
377
|
+
getTextInputWidth={() => 350}
|
|
378
|
+
/>
|
|
379
|
+
</ExampleContainer>
|
|
380
|
+
<ExampleContainer>
|
|
381
|
+
<Title title="Highlighted suggestion" theme="light" level={4} />
|
|
382
|
+
<Suggestions
|
|
383
|
+
id="x"
|
|
384
|
+
value="Afgh"
|
|
385
|
+
suggestions={country}
|
|
386
|
+
visualFocusIndex={-1}
|
|
387
|
+
highlightedSuggestions={true}
|
|
388
|
+
searchHasErrors={false}
|
|
389
|
+
isSearching={false}
|
|
390
|
+
suggestionOnClick={(suggestion) => {}}
|
|
391
|
+
getTextInputWidth={() => 350}
|
|
392
|
+
/>
|
|
393
|
+
</ExampleContainer>
|
|
363
394
|
</ExampleContainer>
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
395
|
+
<ExampleContainer>
|
|
396
|
+
<Title title="Autosuggest Error" theme="light" level={3} />
|
|
397
|
+
<Suggestions
|
|
398
|
+
id="x"
|
|
399
|
+
value=""
|
|
400
|
+
suggestions={country}
|
|
401
|
+
visualFocusIndex={-1}
|
|
402
|
+
highlightedSuggestions={false}
|
|
403
|
+
searchHasErrors={true}
|
|
404
|
+
isSearching={false}
|
|
405
|
+
suggestionOnClick={(suggestion) => {}}
|
|
406
|
+
getTextInputWidth={() => 350}
|
|
407
|
+
/>
|
|
374
408
|
</ExampleContainer>
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
409
|
+
<ExampleContainer>
|
|
410
|
+
<Title title="Autosuggest Searching message" theme="light" level={3} />
|
|
411
|
+
<Suggestions
|
|
412
|
+
id="x"
|
|
413
|
+
value=""
|
|
414
|
+
suggestions={country}
|
|
415
|
+
visualFocusIndex={-1}
|
|
416
|
+
highlightedSuggestions={false}
|
|
417
|
+
searchHasErrors={false}
|
|
418
|
+
isSearching={true}
|
|
419
|
+
suggestionOnClick={(suggestion) => {}}
|
|
420
|
+
getTextInputWidth={() => 350}
|
|
421
|
+
/>
|
|
385
422
|
</ExampleContainer>
|
|
386
|
-
</
|
|
387
|
-
|
|
388
|
-
);
|
|
389
|
-
|
|
390
|
-
export const FocusedAction = FocusedActionTextInput.bind({});
|
|
391
|
-
FocusedAction.play = async ({ canvasElement }) => {
|
|
392
|
-
const canvas = within(canvasElement);
|
|
393
|
-
const action = canvas.getByRole("button");
|
|
394
|
-
await action.focus();
|
|
395
|
-
};
|
|
396
|
-
|
|
397
|
-
export const ActivedAction = ActivedActionTextInput.bind({});
|
|
398
|
-
ActivedAction.play = async ({ canvasElement }) => {
|
|
399
|
-
const canvas = within(canvasElement);
|
|
400
|
-
const action = canvas.getByRole("button");
|
|
401
|
-
await userEvent.click(action);
|
|
402
|
-
};
|
|
403
|
-
|
|
404
|
-
export const ShowOptions = ShowOptionsAutosuggest.bind({});
|
|
405
|
-
ShowOptions.play = async ({ canvasElement }) => {
|
|
406
|
-
const canvas = within(canvasElement);
|
|
407
|
-
const autosuggest = canvas.getByRole("combobox");
|
|
408
|
-
await userEvent.click(autosuggest);
|
|
409
|
-
};
|
|
410
|
-
|
|
411
|
-
export const HoveredOption = HoveredOptionAutosuggest.bind({});
|
|
412
|
-
HoveredOption.play = async ({ canvasElement }) => {
|
|
413
|
-
const canvas = within(canvasElement);
|
|
414
|
-
const autosuggest = canvas.getByRole("combobox");
|
|
415
|
-
await userEvent.click(autosuggest);
|
|
423
|
+
</ThemeProvider>
|
|
424
|
+
);
|
|
416
425
|
};
|
|
417
426
|
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
const canvas = within(canvasElement);
|
|
421
|
-
const autosuggest = canvas.getByRole("combobox");
|
|
422
|
-
await userEvent.click(autosuggest);
|
|
423
|
-
fireEvent.keyDown(autosuggest, { key: "ArrowDown", code: "ArrowDown", keyCode: 40, charCode: 40 });
|
|
424
|
-
};
|
|
427
|
+
const DarkAutosuggestListbox = () => {
|
|
428
|
+
const colorsTheme: any = useTheme();
|
|
425
429
|
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
}
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
}
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
430
|
+
return (
|
|
431
|
+
<ThemeProvider theme={colorsTheme.textInput}>
|
|
432
|
+
<BackgroundColorProvider color="#333333">
|
|
433
|
+
<DarkContainer>
|
|
434
|
+
<Title title="Dark theme" theme="dark" level={2} />
|
|
435
|
+
<ExampleContainer>
|
|
436
|
+
<Title title="Default with opened suggestions" theme="dark" level={3} />
|
|
437
|
+
<DxcFlex direction="column" gap="80px">
|
|
438
|
+
<DxcTextInput label="Label" suggestions={countries} optional placeholder="Choose an option" />
|
|
439
|
+
<DxcCheckbox
|
|
440
|
+
label="You understand the selection and give your consent"
|
|
441
|
+
onChange={() => {}}
|
|
442
|
+
labelPosition="after"
|
|
443
|
+
/>
|
|
444
|
+
<DxcButton label="Submit" onClick={() => {}} size="medium" margin={{ bottom: "xxlarge" }} />
|
|
445
|
+
</DxcFlex>
|
|
446
|
+
</ExampleContainer>
|
|
447
|
+
<ExampleContainer>
|
|
448
|
+
<Title title="Autosuggest Error" theme="dark" level={3} />
|
|
449
|
+
<div style={{ height: "100px" }}>
|
|
450
|
+
<Suggestions
|
|
451
|
+
id="x"
|
|
452
|
+
value=""
|
|
453
|
+
suggestions={country}
|
|
454
|
+
visualFocusIndex={-1}
|
|
455
|
+
highlightedSuggestions={false}
|
|
456
|
+
searchHasErrors={true}
|
|
457
|
+
isSearching={false}
|
|
458
|
+
suggestionOnClick={(suggestion) => {}}
|
|
459
|
+
getTextInputWidth={() => 350}
|
|
460
|
+
/>
|
|
461
|
+
</div>
|
|
462
|
+
</ExampleContainer>
|
|
463
|
+
</DarkContainer>
|
|
464
|
+
</BackgroundColorProvider>
|
|
465
|
+
</ThemeProvider>
|
|
466
|
+
);
|
|
459
467
|
};
|
|
460
468
|
|
|
461
|
-
export const
|
|
462
|
-
|
|
469
|
+
export const AutosuggestListboxStates = AutosuggestListbox.bind({});
|
|
470
|
+
AutosuggestListboxStates.play = async ({ canvasElement }) => {
|
|
463
471
|
const canvas = within(canvasElement);
|
|
464
|
-
const
|
|
465
|
-
await userEvent.click(
|
|
466
|
-
fireEvent.keyDown(autosuggest, { key: "ArrowDown", code: "ArrowDown", keyCode: 40, charCode: 40 });
|
|
472
|
+
const select = canvas.getByRole("combobox");
|
|
473
|
+
await userEvent.click(select);
|
|
467
474
|
};
|
|
468
475
|
|
|
469
|
-
export const
|
|
470
|
-
|
|
476
|
+
export const AutosuggestListboxOnDark = DarkAutosuggestListbox.bind({});
|
|
477
|
+
AutosuggestListboxOnDark.play = async ({ canvasElement }) => {
|
|
471
478
|
const canvas = within(canvasElement);
|
|
472
|
-
const
|
|
473
|
-
await userEvent.click(
|
|
479
|
+
const select = canvas.getByRole("combobox");
|
|
480
|
+
await userEvent.click(select);
|
|
474
481
|
};
|