@dxc-technology/halstack-react 0.0.0-9e83fd2 → 0.0.0-9f6fced
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/BackgroundColorContext.d.ts +1 -10
- package/BackgroundColorContext.js +4 -21
- package/HalstackContext.d.ts +53 -143
- package/HalstackContext.js +10 -35
- package/README.md +47 -0
- package/accordion/Accordion.accessibility.test.js +71 -0
- package/accordion/Accordion.js +33 -87
- package/accordion/Accordion.stories.tsx +8 -64
- package/accordion/Accordion.test.js +18 -33
- package/accordion/types.d.ts +6 -6
- package/accordion-group/AccordionGroup.accessibility.test.js +88 -0
- package/accordion-group/AccordionGroup.d.ts +2 -3
- package/accordion-group/AccordionGroup.js +17 -44
- package/accordion-group/AccordionGroup.stories.tsx +24 -24
- package/accordion-group/AccordionGroup.test.js +42 -60
- package/accordion-group/AccordionGroupAccordion.js +11 -23
- package/accordion-group/AccordionGroupContext.d.ts +3 -0
- package/accordion-group/AccordionGroupContext.js +8 -0
- package/accordion-group/types.d.ts +7 -7
- package/action-icon/ActionIcon.accessibility.test.js +63 -0
- package/action-icon/ActionIcon.d.ts +4 -0
- package/action-icon/ActionIcon.js +48 -0
- package/action-icon/ActionIcon.stories.tsx +41 -0
- package/action-icon/ActionIcon.test.js +64 -0
- package/action-icon/types.d.ts +26 -0
- package/alert/Alert.accessibility.test.js +95 -0
- package/alert/Alert.js +34 -120
- package/alert/Alert.test.js +28 -45
- package/alert/types.d.ts +5 -5
- package/badge/Badge.accessibility.test.js +129 -0
- package/badge/Badge.d.ts +1 -1
- package/badge/Badge.js +142 -42
- package/badge/Badge.stories.tsx +210 -0
- package/badge/Badge.test.js +30 -0
- package/badge/types.d.ts +52 -3
- package/bleed/Bleed.js +13 -21
- package/bleed/types.d.ts +2 -2
- package/box/Box.accessibility.test.js +33 -0
- package/box/Box.js +11 -33
- package/box/Box.test.js +1 -6
- package/box/types.d.ts +3 -3
- package/breadcrumbs/Breadcrumbs.accessibility.test.d.ts +1 -0
- package/breadcrumbs/Breadcrumbs.accessibility.test.js +96 -0
- package/breadcrumbs/Breadcrumbs.d.ts +4 -0
- package/breadcrumbs/Breadcrumbs.js +79 -0
- package/breadcrumbs/Breadcrumbs.stories.tsx +194 -0
- package/breadcrumbs/Breadcrumbs.test.d.ts +1 -0
- package/breadcrumbs/Breadcrumbs.test.js +169 -0
- package/breadcrumbs/Item.d.ts +4 -0
- package/breadcrumbs/Item.js +52 -0
- package/breadcrumbs/dropdownTheme.d.ts +53 -0
- package/breadcrumbs/dropdownTheme.js +62 -0
- package/breadcrumbs/types.d.ts +16 -0
- package/breadcrumbs/types.js +5 -0
- package/bulleted-list/BulletedList.accessibility.test.js +119 -0
- package/bulleted-list/BulletedList.js +22 -55
- package/bulleted-list/BulletedList.stories.tsx +2 -93
- package/bulleted-list/types.d.ts +5 -5
- package/button/Button.accessibility.test.js +127 -0
- package/button/Button.js +36 -59
- package/button/Button.stories.tsx +35 -135
- package/button/Button.test.js +13 -21
- package/button/types.d.ts +5 -5
- package/card/Card.accessibility.test.js +36 -0
- package/card/Card.js +23 -45
- package/card/Card.test.js +10 -21
- package/card/types.d.ts +5 -5
- package/checkbox/Checkbox.accessibility.test.js +87 -0
- package/checkbox/Checkbox.js +88 -126
- package/checkbox/Checkbox.stories.tsx +16 -54
- package/checkbox/Checkbox.test.js +107 -63
- package/checkbox/types.d.ts +8 -4
- package/chip/Chip.accessibility.test.js +67 -0
- package/chip/Chip.js +22 -36
- package/chip/Chip.stories.tsx +10 -25
- package/chip/Chip.test.js +17 -30
- package/chip/types.d.ts +4 -4
- package/common/coreTokens.d.ts +105 -14
- package/common/coreTokens.js +40 -23
- package/common/utils.js +2 -8
- package/common/variables.d.ts +54 -144
- package/common/variables.js +128 -225
- package/container/Container.d.ts +4 -0
- package/container/Container.js +194 -0
- package/container/Container.stories.tsx +214 -0
- package/container/types.d.ts +74 -0
- package/container/types.js +5 -0
- package/contextual-menu/ContextualMenu.accessibility.test.js +97 -0
- package/contextual-menu/ContextualMenu.d.ts +5 -0
- package/contextual-menu/ContextualMenu.js +88 -0
- package/contextual-menu/ContextualMenu.stories.tsx +232 -0
- package/contextual-menu/ContextualMenu.test.js +205 -0
- package/contextual-menu/GroupItem.d.ts +4 -0
- package/contextual-menu/GroupItem.js +67 -0
- package/contextual-menu/ItemAction.d.ts +4 -0
- package/contextual-menu/ItemAction.js +51 -0
- package/contextual-menu/MenuItem.d.ts +4 -0
- package/contextual-menu/MenuItem.js +29 -0
- package/contextual-menu/SingleItem.d.ts +4 -0
- package/contextual-menu/SingleItem.js +38 -0
- package/contextual-menu/types.d.ts +58 -0
- package/contextual-menu/types.js +5 -0
- package/date-input/Calendar.js +13 -57
- package/date-input/DateInput.accessibility.test.js +228 -0
- package/date-input/DateInput.js +54 -104
- package/date-input/DateInput.stories.tsx +19 -31
- package/date-input/DateInput.test.js +674 -701
- package/date-input/DatePicker.js +23 -48
- package/date-input/YearPicker.js +8 -34
- package/date-input/types.d.ts +28 -22
- package/dialog/Dialog.accessibility.test.js +69 -0
- package/dialog/Dialog.js +21 -59
- package/dialog/Dialog.stories.tsx +176 -0
- package/dialog/Dialog.test.js +126 -188
- package/dialog/types.d.ts +18 -13
- package/divider/Divider.accessibility.test.js +33 -0
- package/divider/Divider.d.ts +4 -0
- package/divider/Divider.js +36 -0
- package/divider/Divider.stories.tsx +223 -0
- package/divider/Divider.test.js +38 -0
- package/divider/types.d.ts +21 -0
- package/divider/types.js +5 -0
- package/dropdown/Dropdown.accessibility.test.js +180 -0
- package/dropdown/Dropdown.js +66 -135
- package/dropdown/Dropdown.stories.tsx +15 -26
- package/dropdown/Dropdown.test.js +402 -389
- package/dropdown/DropdownMenu.js +12 -23
- package/dropdown/DropdownMenuItem.js +13 -21
- package/dropdown/types.d.ts +20 -24
- package/file-input/FileInput.accessibility.test.js +160 -0
- package/file-input/FileInput.js +179 -286
- package/file-input/FileInput.stories.tsx +1 -1
- package/file-input/FileInput.test.js +293 -354
- package/file-input/FileItem.js +29 -66
- package/file-input/types.d.ts +9 -9
- package/flex/Flex.js +25 -39
- package/flex/types.d.ts +6 -6
- package/footer/Footer.accessibility.test.js +125 -0
- package/footer/Footer.d.ts +1 -1
- package/footer/Footer.js +43 -68
- package/footer/Footer.stories.tsx +66 -9
- package/footer/Footer.test.js +18 -32
- package/footer/Icons.d.ts +3 -2
- package/footer/Icons.js +53 -22
- package/footer/types.d.ts +17 -17
- package/grid/Grid.js +1 -16
- package/grid/types.d.ts +10 -10
- package/header/Header.accessibility.test.js +93 -0
- package/header/Header.d.ts +1 -1
- package/header/Header.js +38 -104
- package/header/Header.stories.tsx +16 -0
- package/header/Header.test.js +12 -25
- package/header/Icons.d.ts +2 -2
- package/header/Icons.js +3 -13
- package/header/types.d.ts +7 -8
- package/heading/Heading.accessibility.test.js +33 -0
- package/heading/Heading.js +9 -31
- package/heading/Heading.test.js +70 -87
- package/heading/types.d.ts +7 -7
- package/icon/Icon.accessibility.test.js +30 -0
- package/icon/Icon.d.ts +4 -0
- package/icon/Icon.js +33 -0
- package/icon/Icon.stories.tsx +28 -0
- package/icon/types.d.ts +4 -0
- package/icon/types.js +5 -0
- package/image/Image.accessibility.test.js +56 -0
- package/image/Image.d.ts +4 -0
- package/image/Image.js +70 -0
- package/image/Image.stories.tsx +129 -0
- package/image/types.d.ts +72 -0
- package/image/types.js +5 -0
- package/inset/Inset.js +13 -21
- package/inset/types.d.ts +2 -2
- package/layout/ApplicationLayout.d.ts +2 -2
- package/layout/ApplicationLayout.js +32 -69
- package/layout/ApplicationLayout.stories.tsx +1 -1
- package/layout/Icons.d.ts +7 -5
- package/layout/Icons.js +41 -59
- package/layout/types.d.ts +3 -3
- package/link/Link.accessibility.test.js +108 -0
- package/link/Link.js +28 -47
- package/link/Link.stories.tsx +4 -4
- package/link/Link.test.js +23 -41
- package/link/types.d.ts +14 -14
- package/main.d.ts +9 -4
- package/main.js +46 -59
- package/nav-tabs/NavTabs.accessibility.test.js +44 -0
- package/nav-tabs/NavTabs.d.ts +1 -2
- package/nav-tabs/NavTabs.js +19 -48
- package/nav-tabs/NavTabs.stories.tsx +30 -25
- package/nav-tabs/NavTabs.test.js +45 -50
- package/nav-tabs/NavTabsContext.d.ts +3 -0
- package/nav-tabs/NavTabsContext.js +8 -0
- package/nav-tabs/Tab.js +38 -67
- package/nav-tabs/types.d.ts +10 -10
- package/number-input/NumberInput.accessibility.test.js +228 -0
- package/number-input/NumberInput.d.ts +0 -7
- package/number-input/NumberInput.js +47 -39
- package/number-input/NumberInput.stories.tsx +42 -26
- package/number-input/NumberInput.test.js +839 -575
- package/number-input/NumberInputContext.d.ts +3 -0
- package/number-input/NumberInputContext.js +8 -0
- package/number-input/types.d.ts +17 -5
- package/package.json +42 -40
- package/paginator/Paginator.accessibility.test.js +79 -0
- package/paginator/Paginator.js +27 -52
- package/paginator/Paginator.test.js +224 -207
- package/paginator/types.d.ts +3 -3
- package/paragraph/Paragraph.accessibility.test.js +28 -0
- package/paragraph/Paragraph.js +3 -19
- package/paragraph/Paragraph.stories.tsx +0 -17
- package/password-input/PasswordInput.accessibility.test.js +153 -0
- package/password-input/PasswordInput.js +32 -54
- package/password-input/PasswordInput.stories.tsx +1 -34
- package/password-input/PasswordInput.test.js +153 -129
- package/password-input/types.d.ts +8 -7
- package/progress-bar/ProgressBar.accessibility.test.js +35 -0
- package/progress-bar/ProgressBar.js +26 -56
- package/progress-bar/{ProgressBar.stories.jsx → ProgressBar.stories.tsx} +1 -1
- package/progress-bar/ProgressBar.test.js +35 -52
- package/progress-bar/types.d.ts +3 -3
- package/quick-nav/QuickNav.accessibility.test.js +57 -0
- package/quick-nav/QuickNav.js +4 -27
- package/quick-nav/QuickNav.stories.tsx +1 -1
- package/quick-nav/types.d.ts +10 -10
- package/radio-group/Radio.d.ts +1 -1
- package/radio-group/Radio.js +22 -57
- package/radio-group/RadioGroup.accessibility.test.js +97 -0
- package/radio-group/RadioGroup.js +40 -88
- package/radio-group/RadioGroup.stories.tsx +10 -10
- package/radio-group/RadioGroup.test.js +504 -472
- package/radio-group/types.d.ts +8 -8
- package/resultset-table/Icons.d.ts +7 -0
- package/{resultsetTable → resultset-table}/Icons.js +1 -5
- package/resultset-table/ResultsetTable.accessibility.test.js +285 -0
- package/resultset-table/ResultsetTable.d.ts +7 -0
- package/{resultsetTable → resultset-table}/ResultsetTable.js +45 -69
- package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +118 -5
- package/{resultsetTable → resultset-table}/ResultsetTable.test.js +148 -92
- package/{resultsetTable → resultset-table}/types.d.ts +44 -11
- package/resultset-table/types.js +5 -0
- package/select/Listbox.js +36 -54
- package/select/Option.js +28 -36
- package/select/Select.accessibility.test.js +228 -0
- package/select/Select.js +110 -177
- package/select/Select.stories.tsx +59 -111
- package/select/Select.test.js +1895 -1858
- package/select/types.d.ts +15 -16
- package/sidenav/Sidenav.accessibility.test.js +59 -0
- package/sidenav/Sidenav.js +44 -81
- package/sidenav/Sidenav.stories.tsx +4 -9
- package/sidenav/Sidenav.test.js +3 -10
- package/{layout → sidenav}/SidenavContext.d.ts +1 -1
- package/{layout → sidenav}/SidenavContext.js +3 -9
- package/sidenav/types.d.ts +20 -20
- package/slider/Slider.accessibility.test.js +104 -0
- package/slider/Slider.js +66 -125
- package/slider/Slider.stories.tsx +0 -60
- package/slider/Slider.test.js +107 -103
- package/slider/types.d.ts +4 -4
- package/spinner/Spinner.accessibility.test.js +96 -0
- package/spinner/Spinner.js +21 -55
- package/spinner/Spinner.test.js +25 -34
- package/spinner/types.d.ts +3 -3
- package/status-light/StatusLight.accessibility.test.js +157 -0
- package/status-light/StatusLight.d.ts +4 -0
- package/status-light/StatusLight.js +51 -0
- package/status-light/StatusLight.stories.tsx +74 -0
- package/status-light/StatusLight.test.js +25 -0
- package/status-light/types.d.ts +17 -0
- package/status-light/types.js +5 -0
- package/switch/Switch.accessibility.test.js +98 -0
- package/switch/Switch.js +49 -100
- package/switch/Switch.stories.tsx +12 -34
- package/switch/Switch.test.js +51 -96
- package/switch/types.d.ts +4 -4
- package/table/DropdownTheme.js +62 -0
- package/table/Table.accessibility.test.js +93 -0
- package/table/Table.d.ts +6 -2
- package/table/Table.js +76 -33
- package/table/{Table.stories.jsx → Table.stories.tsx} +309 -2
- package/table/Table.test.js +93 -6
- package/table/types.d.ts +34 -6
- package/tabs/Tab.js +22 -37
- package/tabs/Tabs.accessibility.test.js +56 -0
- package/tabs/Tabs.js +59 -147
- package/tabs/Tabs.stories.tsx +8 -4
- package/tabs/Tabs.test.js +57 -131
- package/tabs/types.d.ts +21 -21
- package/tag/Tag.accessibility.test.js +69 -0
- package/tag/Tag.js +27 -57
- package/tag/Tag.stories.tsx +4 -7
- package/tag/Tag.test.js +17 -36
- package/tag/types.d.ts +9 -9
- package/text-input/Suggestion.js +9 -26
- package/text-input/Suggestions.d.ts +1 -1
- package/text-input/Suggestions.js +30 -70
- package/text-input/TextInput.accessibility.test.js +321 -0
- package/text-input/TextInput.js +197 -286
- package/text-input/TextInput.stories.tsx +65 -160
- package/text-input/TextInput.test.js +1227 -1194
- package/text-input/types.d.ts +25 -17
- package/textarea/Textarea.accessibility.test.js +155 -0
- package/textarea/Textarea.js +67 -111
- package/textarea/{Textarea.stories.jsx → Textarea.stories.tsx} +58 -100
- package/textarea/Textarea.test.js +150 -179
- package/textarea/types.d.ts +9 -5
- package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
- package/toggle-group/ToggleGroup.js +25 -67
- package/toggle-group/ToggleGroup.stories.tsx +7 -7
- package/toggle-group/ToggleGroup.test.js +48 -81
- package/toggle-group/types.d.ts +12 -12
- package/typography/Typography.accessibility.test.js +339 -0
- package/typography/Typography.js +4 -13
- package/typography/types.d.ts +1 -1
- package/useTheme.d.ts +51 -141
- package/useTheme.js +1 -8
- package/useTranslatedLabels.js +1 -7
- package/utils/BaseTypography.d.ts +2 -2
- package/utils/BaseTypography.js +16 -30
- package/utils/FocusLock.js +25 -39
- package/wizard/Wizard.accessibility.test.js +55 -0
- package/wizard/Wizard.js +27 -73
- package/wizard/Wizard.stories.tsx +19 -0
- package/wizard/Wizard.test.js +53 -80
- package/wizard/types.d.ts +8 -8
- package/common/OpenSans.css +0 -69
- package/common/fonts/OpenSans-Bold.ttf +0 -0
- package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
- package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
- package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
- package/common/fonts/OpenSans-Italic.ttf +0 -0
- package/common/fonts/OpenSans-Light.ttf +0 -0
- package/common/fonts/OpenSans-LightItalic.ttf +0 -0
- package/common/fonts/OpenSans-Regular.ttf +0 -0
- package/common/fonts/OpenSans-SemiBold.ttf +0 -0
- package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
- package/date-input/Icons.d.ts +0 -6
- package/date-input/Icons.js +0 -75
- package/paginator/Icons.d.ts +0 -5
- package/paginator/Icons.js +0 -54
- package/password-input/Icons.d.ts +0 -6
- package/password-input/Icons.js +0 -39
- package/resultsetTable/Icons.d.ts +0 -7
- package/resultsetTable/ResultsetTable.d.ts +0 -4
- package/select/Icons.d.ts +0 -10
- package/select/Icons.js +0 -93
- package/sidenav/Icons.d.ts +0 -7
- package/sidenav/Icons.js +0 -51
- package/text-input/Icons.d.ts +0 -8
- package/text-input/Icons.js +0 -60
- /package/{resultsetTable → action-icon}/types.js +0 -0
- /package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +0 -0
|
@@ -1,108 +1,91 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _react = _interopRequireDefault(require("react"));
|
|
6
|
-
|
|
7
5
|
var _react2 = require("@testing-library/react");
|
|
8
|
-
|
|
9
6
|
var _ProgressBar = _interopRequireDefault(require("./ProgressBar.tsx"));
|
|
10
|
-
|
|
11
7
|
describe("ProgressBar component tests", function () {
|
|
12
8
|
test("ProgressBar renders with label and helperText", function () {
|
|
13
9
|
var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
10
|
+
label: "test-label",
|
|
11
|
+
helperText: "helper-text"
|
|
12
|
+
})),
|
|
13
|
+
getByText = _render.getByText;
|
|
19
14
|
expect(getByText("test-label")).toBeTruthy();
|
|
20
15
|
expect(getByText("helper-text")).toBeTruthy();
|
|
21
16
|
});
|
|
22
17
|
test("ProgressBar renders with default value", function () {
|
|
23
18
|
var value = 0;
|
|
24
|
-
|
|
25
19
|
var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
20
|
+
showValue: true
|
|
21
|
+
})),
|
|
22
|
+
getByText = _render2.getByText,
|
|
23
|
+
getByRole = _render2.getByRole;
|
|
31
24
|
var progressBar = getByRole("progressbar");
|
|
32
25
|
expect(getByText("0 %")).toBeTruthy();
|
|
33
26
|
expect(progressBar.getAttribute("aria-valuenow")).toEqual(value.toString());
|
|
34
27
|
});
|
|
35
28
|
test("ProgressBar renders with value", function () {
|
|
36
29
|
var value = 25;
|
|
37
|
-
|
|
38
30
|
var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
31
|
+
showValue: true,
|
|
32
|
+
value: value
|
|
33
|
+
})),
|
|
34
|
+
getByText = _render3.getByText,
|
|
35
|
+
getByRole = _render3.getByRole;
|
|
45
36
|
var progressBar = getByRole("progressbar");
|
|
46
37
|
expect(getByText("25 %")).toBeTruthy();
|
|
47
38
|
expect(progressBar.getAttribute("aria-valuenow")).toEqual(value.toString());
|
|
48
39
|
});
|
|
49
40
|
test("ProgressBar renders with negative value", function () {
|
|
50
41
|
var value = 0;
|
|
51
|
-
|
|
52
42
|
var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
43
|
+
showValue: true,
|
|
44
|
+
value: -20
|
|
45
|
+
})),
|
|
46
|
+
getByText = _render4.getByText,
|
|
47
|
+
getByRole = _render4.getByRole;
|
|
59
48
|
var progressBar = getByRole("progressbar");
|
|
60
49
|
expect(getByText("0 %")).toBeTruthy();
|
|
61
50
|
expect(progressBar.getAttribute("aria-valuenow")).toEqual(value.toString());
|
|
62
51
|
});
|
|
63
52
|
test("ProgressBar renders as indeterminate", function () {
|
|
64
53
|
var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], null)),
|
|
65
|
-
|
|
66
|
-
|
|
54
|
+
getByRole = _render5.getByRole;
|
|
67
55
|
var progressBar = getByRole("progressbar");
|
|
68
56
|
expect(progressBar.getAttribute("aria-valuenow")).toBe(null);
|
|
69
57
|
});
|
|
70
58
|
test("Overlay progressBar renders with label and helperText", function () {
|
|
71
59
|
var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
60
|
+
label: "test-label",
|
|
61
|
+
helperText: "helper-text",
|
|
62
|
+
overlay: true
|
|
63
|
+
})),
|
|
64
|
+
getByText = _render6.getByText;
|
|
78
65
|
expect(getByText("test-label")).toBeTruthy();
|
|
79
66
|
expect(getByText("helper-text")).toBeTruthy();
|
|
80
67
|
});
|
|
81
68
|
test("Overlay progressBar renders with default value", function () {
|
|
82
69
|
var value = 0;
|
|
83
|
-
|
|
84
70
|
var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
71
|
+
showValue: true,
|
|
72
|
+
overlay: true
|
|
73
|
+
})),
|
|
74
|
+
getByText = _render7.getByText,
|
|
75
|
+
getByRole = _render7.getByRole;
|
|
91
76
|
var progressBar = getByRole("progressbar");
|
|
92
77
|
expect(getByText("0 %")).toBeTruthy();
|
|
93
78
|
expect(progressBar.getAttribute("aria-valuenow")).toEqual(value.toString());
|
|
94
79
|
});
|
|
95
80
|
test("Overlay progressBar renders with value", function () {
|
|
96
81
|
var value = 25;
|
|
97
|
-
|
|
98
82
|
var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ProgressBar["default"], {
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
83
|
+
showValue: true,
|
|
84
|
+
value: value,
|
|
85
|
+
overlay: true
|
|
86
|
+
})),
|
|
87
|
+
getByText = _render8.getByText,
|
|
88
|
+
getByRole = _render8.getByRole;
|
|
106
89
|
var progressBar = getByRole("progressbar");
|
|
107
90
|
expect(getByText("25 %")).toBeTruthy();
|
|
108
91
|
expect(progressBar.getAttribute("aria-valuenow")).toEqual(value.toString());
|
package/progress-bar/types.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
|
|
2
|
+
type Size = {
|
|
3
3
|
top?: Space;
|
|
4
4
|
bottom?: Space;
|
|
5
5
|
left?: Space;
|
|
6
6
|
right?: Space;
|
|
7
7
|
};
|
|
8
|
-
|
|
8
|
+
type Props = {
|
|
9
9
|
/**
|
|
10
10
|
* Text to be placed above the progress bar.
|
|
11
11
|
*/
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
5
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
6
|
+
var _react = _interopRequireDefault(require("react"));
|
|
7
|
+
var _react2 = require("@testing-library/react");
|
|
8
|
+
var _axeHelper = require("../../test/accessibility/axe-helper.js");
|
|
9
|
+
var _QuickNav = _interopRequireDefault(require("./QuickNav"));
|
|
10
|
+
var links = [{
|
|
11
|
+
label: "Overview",
|
|
12
|
+
links: [{
|
|
13
|
+
label: "Introduction"
|
|
14
|
+
}]
|
|
15
|
+
}, {
|
|
16
|
+
label: "Components",
|
|
17
|
+
links: [{
|
|
18
|
+
label: "Introduction"
|
|
19
|
+
}, {
|
|
20
|
+
label: "Accordion"
|
|
21
|
+
}]
|
|
22
|
+
}, {
|
|
23
|
+
label: "Principles very very very very very very very very long",
|
|
24
|
+
links: [{
|
|
25
|
+
label: "Color very very very very very very very very long"
|
|
26
|
+
}, {
|
|
27
|
+
label: "Spacingveryveryveryveryveryveryveryverylong"
|
|
28
|
+
}, {
|
|
29
|
+
label: "Typography"
|
|
30
|
+
}]
|
|
31
|
+
}, {
|
|
32
|
+
label: "Componentsveryveryveryveryveryveryveryverylong",
|
|
33
|
+
links: [{
|
|
34
|
+
label: "Accordion"
|
|
35
|
+
}]
|
|
36
|
+
}];
|
|
37
|
+
describe("Quick Nav component accessibility tests", function () {
|
|
38
|
+
it("Should not have basic accessibility issues for icon mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
39
|
+
var _render, container, results;
|
|
40
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
41
|
+
while (1) switch (_context.prev = _context.next) {
|
|
42
|
+
case 0:
|
|
43
|
+
_render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_QuickNav["default"], {
|
|
44
|
+
links: links
|
|
45
|
+
})), container = _render.container;
|
|
46
|
+
_context.next = 3;
|
|
47
|
+
return (0, _axeHelper.axe)(container);
|
|
48
|
+
case 3:
|
|
49
|
+
results = _context.sent;
|
|
50
|
+
expect(results).toHaveNoViolations();
|
|
51
|
+
case 5:
|
|
52
|
+
case "end":
|
|
53
|
+
return _context.stop();
|
|
54
|
+
}
|
|
55
|
+
}, _callee);
|
|
56
|
+
})));
|
|
57
|
+
});
|
package/quick-nav/QuickNav.js
CHANGED
|
@@ -1,43 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
-
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
8
|
exports["default"] = void 0;
|
|
11
|
-
|
|
12
9
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
13
|
-
|
|
14
10
|
var _react = _interopRequireDefault(require("react"));
|
|
15
|
-
|
|
16
11
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
17
|
-
|
|
18
12
|
var _slugify = _interopRequireDefault(require("slugify"));
|
|
19
|
-
|
|
20
13
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
21
|
-
|
|
22
14
|
var _Heading = _interopRequireDefault(require("../heading/Heading"));
|
|
23
|
-
|
|
24
15
|
var _Flex = _interopRequireDefault(require("../flex/Flex"));
|
|
25
|
-
|
|
26
16
|
var _Inset = _interopRequireDefault(require("../inset/Inset"));
|
|
27
|
-
|
|
28
17
|
var _Typography = _interopRequireDefault(require("../typography/Typography"));
|
|
29
|
-
|
|
30
18
|
var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
|
|
31
|
-
|
|
32
19
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4;
|
|
33
|
-
|
|
34
|
-
function
|
|
35
|
-
|
|
36
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
37
|
-
|
|
20
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
21
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
38
22
|
var DxcQuickNav = function DxcQuickNav(_ref) {
|
|
39
23
|
var title = _ref.title,
|
|
40
|
-
|
|
24
|
+
links = _ref.links;
|
|
41
25
|
var translatedLabels = (0, _useTranslatedLabels["default"])();
|
|
42
26
|
var colorsTheme = (0, _useTheme["default"])();
|
|
43
27
|
return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
@@ -50,7 +34,6 @@ var DxcQuickNav = function DxcQuickNav(_ref) {
|
|
|
50
34
|
text: title || translatedLabels.quickNav.contentTitle
|
|
51
35
|
}), /*#__PURE__*/_react["default"].createElement(ListColumn, null, links.map(function (link) {
|
|
52
36
|
var _link$links;
|
|
53
|
-
|
|
54
37
|
return /*#__PURE__*/_react["default"].createElement("li", {
|
|
55
38
|
key: link.label
|
|
56
39
|
}, /*#__PURE__*/_react["default"].createElement(_Inset["default"], {
|
|
@@ -74,7 +57,6 @@ var DxcQuickNav = function DxcQuickNav(_ref) {
|
|
|
74
57
|
})))));
|
|
75
58
|
})))));
|
|
76
59
|
};
|
|
77
|
-
|
|
78
60
|
var QuickNavContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n padding-top: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n border-left: 2px solid ", ";\n"])), function (props) {
|
|
79
61
|
return props.theme.paddingTop;
|
|
80
62
|
}, function (props) {
|
|
@@ -86,11 +68,8 @@ var QuickNavContainer = _styledComponents["default"].div(_templateObject || (_te
|
|
|
86
68
|
}, function (props) {
|
|
87
69
|
return props.theme.dividerBorderColor;
|
|
88
70
|
});
|
|
89
|
-
|
|
90
71
|
var ListColumn = _styledComponents["default"].ul(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n margin: 0;\n padding: 0;\n list-style-type: none;\n"])));
|
|
91
|
-
|
|
92
72
|
var ListSecondColumn = _styledComponents["default"].ul(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n margin: 0;\n padding: 0;\n list-style-type: none;\n"])));
|
|
93
|
-
|
|
94
73
|
var Link = _styledComponents["default"].a(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n text-decoration: none;\n font-size: ", ";\n font-family: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n display: block;\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n width: fit-content;\n max-width: 100%;\n\n &:hover {\n color: ", ";\n }\n &:focus {\n outline-color: ", ";\n outline-style: ", ";\n outline-width: ", ";\n border-radius: ", ";\n }\n"])), function (props) {
|
|
95
74
|
return props.theme.fontSize;
|
|
96
75
|
}, function (props) {
|
|
@@ -112,6 +91,4 @@ var Link = _styledComponents["default"].a(_templateObject4 || (_templateObject4
|
|
|
112
91
|
}, function (props) {
|
|
113
92
|
return props.theme.focusBorderRadius;
|
|
114
93
|
});
|
|
115
|
-
|
|
116
|
-
var _default = DxcQuickNav;
|
|
117
|
-
exports["default"] = _default;
|
|
94
|
+
var _default = exports["default"] = DxcQuickNav;
|
package/quick-nav/types.d.ts
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
|
|
1
|
+
type Link = {
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
3
|
+
* Label to be shown in the link.
|
|
4
4
|
*/
|
|
5
|
-
|
|
5
|
+
label: string;
|
|
6
6
|
/**
|
|
7
|
-
*
|
|
7
|
+
* Sublinks of the link.
|
|
8
8
|
*/
|
|
9
|
-
links
|
|
9
|
+
links?: Link[];
|
|
10
10
|
};
|
|
11
|
-
|
|
11
|
+
type Props = {
|
|
12
12
|
/**
|
|
13
|
-
*
|
|
13
|
+
* Title of the quick nav component.
|
|
14
14
|
*/
|
|
15
|
-
|
|
15
|
+
title?: string;
|
|
16
16
|
/**
|
|
17
|
-
*
|
|
17
|
+
* Links to be shown inside the quick nav component.
|
|
18
18
|
*/
|
|
19
|
-
links
|
|
19
|
+
links: Link[];
|
|
20
20
|
};
|
|
21
21
|
export default Props;
|
package/radio-group/Radio.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { RadioProps } from "./types";
|
|
3
|
-
declare const _default: React.MemoExoticComponent<({ label, checked, onClick, error, disabled, focused,
|
|
3
|
+
declare const _default: React.MemoExoticComponent<({ label, checked, onClick, error, disabled, focused, readOnly, tabIndex, }: RadioProps) => JSX.Element>;
|
|
4
4
|
export default _default;
|
package/radio-group/Radio.js
CHANGED
|
@@ -1,72 +1,48 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
-
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
8
|
exports["default"] = void 0;
|
|
11
|
-
|
|
12
9
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
13
|
-
|
|
14
10
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
15
|
-
|
|
16
11
|
var _react = _interopRequireWildcard(require("react"));
|
|
17
|
-
|
|
18
12
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
19
|
-
|
|
20
|
-
var _uuid = require("uuid");
|
|
21
|
-
|
|
22
13
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
23
|
-
|
|
24
14
|
var _Flex = _interopRequireDefault(require("../flex/Flex"));
|
|
25
|
-
|
|
26
15
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
|
|
27
|
-
|
|
28
|
-
function
|
|
29
|
-
|
|
30
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
31
|
-
|
|
16
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
17
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
32
18
|
var DxcRadio = function DxcRadio(_ref) {
|
|
33
19
|
var label = _ref.label,
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
var _useState = (0, _react.useState)("radio-".concat((0, _uuid.v4)())),
|
|
43
|
-
_useState2 = (0, _slicedToArray2["default"])(_useState, 1),
|
|
44
|
-
radioLabelId = _useState2[0];
|
|
45
|
-
|
|
20
|
+
checked = _ref.checked,
|
|
21
|
+
onClick = _ref.onClick,
|
|
22
|
+
error = _ref.error,
|
|
23
|
+
disabled = _ref.disabled,
|
|
24
|
+
focused = _ref.focused,
|
|
25
|
+
readOnly = _ref.readOnly,
|
|
26
|
+
tabIndex = _ref.tabIndex;
|
|
27
|
+
var radioLabelId = "radio-".concat((0, _react.useId)());
|
|
46
28
|
var ref = (0, _react.useRef)(null);
|
|
47
29
|
var colorsTheme = (0, _useTheme["default"])();
|
|
48
|
-
|
|
49
30
|
var handleOnClick = function handleOnClick() {
|
|
50
31
|
var _ref$current;
|
|
51
|
-
|
|
52
32
|
onClick();
|
|
53
33
|
document.activeElement !== (ref === null || ref === void 0 ? void 0 : ref.current) && (ref === null || ref === void 0 ? void 0 : (_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : _ref$current.focus());
|
|
54
34
|
};
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
setFirstUpdate = _useState4[1];
|
|
60
|
-
|
|
35
|
+
var _useState = (0, _react.useState)(true),
|
|
36
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
37
|
+
firstUpdate = _useState2[0],
|
|
38
|
+
setFirstUpdate = _useState2[1];
|
|
61
39
|
(0, _react.useEffect)(function () {
|
|
62
40
|
var _ref$current2;
|
|
63
|
-
|
|
64
41
|
// Don't apply in the first render
|
|
65
42
|
if (firstUpdate) {
|
|
66
43
|
setFirstUpdate(false);
|
|
67
44
|
return;
|
|
68
45
|
}
|
|
69
|
-
|
|
70
46
|
focused && (ref === null || ref === void 0 ? void 0 : (_ref$current2 = ref.current) === null || _ref$current2 === void 0 ? void 0 : _ref$current2.focus());
|
|
71
47
|
}, [focused]);
|
|
72
48
|
return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
@@ -74,12 +50,12 @@ var DxcRadio = function DxcRadio(_ref) {
|
|
|
74
50
|
}, /*#__PURE__*/_react["default"].createElement(_Flex["default"], null, /*#__PURE__*/_react["default"].createElement(RadioContainer, {
|
|
75
51
|
error: error,
|
|
76
52
|
disabled: disabled,
|
|
77
|
-
|
|
53
|
+
readOnly: readOnly,
|
|
78
54
|
onClick: disabled ? undefined : handleOnClick
|
|
79
55
|
}, /*#__PURE__*/_react["default"].createElement(RadioInputContainer, null, /*#__PURE__*/_react["default"].createElement(RadioInput, {
|
|
80
56
|
error: error,
|
|
81
57
|
disabled: disabled,
|
|
82
|
-
|
|
58
|
+
readOnly: readOnly,
|
|
83
59
|
role: "radio",
|
|
84
60
|
"aria-checked": checked,
|
|
85
61
|
"aria-disabled": disabled,
|
|
@@ -88,29 +64,24 @@ var DxcRadio = function DxcRadio(_ref) {
|
|
|
88
64
|
ref: ref
|
|
89
65
|
}, checked && /*#__PURE__*/_react["default"].createElement(Dot, {
|
|
90
66
|
disabled: disabled,
|
|
91
|
-
|
|
67
|
+
readOnly: readOnly,
|
|
92
68
|
error: error
|
|
93
69
|
}))), /*#__PURE__*/_react["default"].createElement(Label, {
|
|
94
70
|
id: radioLabelId,
|
|
95
71
|
disabled: disabled
|
|
96
72
|
}, label))));
|
|
97
73
|
};
|
|
98
|
-
|
|
99
74
|
var getRadioInputStateColor = function getRadioInputStateColor(props, state) {
|
|
100
75
|
switch (state) {
|
|
101
76
|
case "enabled":
|
|
102
|
-
return props.disabled ? props.theme.disabledRadioInputColor : props.error ? props.theme.errorRadioInputColor : props.
|
|
103
|
-
|
|
77
|
+
return props.disabled ? props.theme.disabledRadioInputColor : props.error ? props.theme.errorRadioInputColor : props.readOnly ? props.theme.readOnlyRadioInputColor : props.theme.radioInputColor;
|
|
104
78
|
case "hover":
|
|
105
|
-
return props.error ? props.theme.hoverErrorRadioInputColor : props.
|
|
106
|
-
|
|
79
|
+
return props.error ? props.theme.hoverErrorRadioInputColor : props.readOnly ? props.theme.hoverReadOnlyRadioInputColor : props.theme.hoverRadioInputColor;
|
|
107
80
|
case "active":
|
|
108
|
-
return props.error ? props.theme.activeErrorRadioInputColor : props.
|
|
81
|
+
return props.error ? props.theme.activeErrorRadioInputColor : props.readOnly ? props.theme.activeReadOnlyRadioInputColor : props.theme.activeRadioInputColor;
|
|
109
82
|
}
|
|
110
83
|
};
|
|
111
|
-
|
|
112
84
|
var RadioInputContainer = _styledComponents["default"].span(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: center;\n height: 24px;\n width: 24px;\n"])));
|
|
113
|
-
|
|
114
85
|
var RadioInput = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 18px;\n height: 18px;\n border: 2px solid ", ";\n border-radius: 50%;\n\n &:focus {\n outline: 2px solid ", ";\n outline-offset: 1px;\n }\n ", "\n"])), function (props) {
|
|
115
86
|
return getRadioInputStateColor(props, "enabled");
|
|
116
87
|
}, function (props) {
|
|
@@ -118,11 +89,9 @@ var RadioInput = _styledComponents["default"].span(_templateObject2 || (_templat
|
|
|
118
89
|
}, function (props) {
|
|
119
90
|
return props.disabled && "pointer-events: none;";
|
|
120
91
|
});
|
|
121
|
-
|
|
122
92
|
var Dot = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n height: 10px;\n width: 10px;\n border-radius: 50%;\n background-color: ", ";\n"])), function (props) {
|
|
123
93
|
return getRadioInputStateColor(props, "enabled");
|
|
124
94
|
});
|
|
125
|
-
|
|
126
95
|
var Label = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n ", "\n"])), function (props) {
|
|
127
96
|
return props.theme.radioInputLabelMargin;
|
|
128
97
|
}, function (props) {
|
|
@@ -138,9 +107,8 @@ var Label = _styledComponents["default"].span(_templateObject4 || (_templateObje
|
|
|
138
107
|
}, function (props) {
|
|
139
108
|
return props.disabled ? "color: ".concat(props.theme.disabledRadioInputLabelFontColor, ";") : "color: ".concat(props.theme.radioInputLabelFontColor);
|
|
140
109
|
});
|
|
141
|
-
|
|
142
110
|
var RadioContainer = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n align-items: center;\n cursor: ", ";\n\n &:hover {\n ", " {\n border-color: ", ";\n }\n ", " {\n background-color: ", ";\n }\n }\n &:active {\n ", " {\n border-color: ", ";\n }\n ", " {\n background-color: ", ";\n }\n }\n"])), function (props) {
|
|
143
|
-
return props.disabled ? "not-allowed" : props.
|
|
111
|
+
return props.disabled ? "not-allowed" : props.readOnly ? "default" : "pointer";
|
|
144
112
|
}, RadioInput, function (props) {
|
|
145
113
|
return !props.disabled && getRadioInputStateColor(props, "hover");
|
|
146
114
|
}, Dot, function (props) {
|
|
@@ -150,7 +118,4 @@ var RadioContainer = _styledComponents["default"].span(_templateObject5 || (_tem
|
|
|
150
118
|
}, Dot, function (props) {
|
|
151
119
|
return !props.disabled && getRadioInputStateColor(props, "active");
|
|
152
120
|
});
|
|
153
|
-
|
|
154
|
-
var _default = /*#__PURE__*/_react["default"].memo(DxcRadio);
|
|
155
|
-
|
|
156
|
-
exports["default"] = _default;
|
|
121
|
+
var _default = exports["default"] = /*#__PURE__*/_react["default"].memo(DxcRadio);
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
5
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
6
|
+
var _react = _interopRequireDefault(require("react"));
|
|
7
|
+
var _react2 = require("@testing-library/react");
|
|
8
|
+
var _axeHelper = require("../../test/accessibility/axe-helper.js");
|
|
9
|
+
var _RadioGroup = _interopRequireDefault(require("./RadioGroup.tsx"));
|
|
10
|
+
var options = [{
|
|
11
|
+
label: "Option 01",
|
|
12
|
+
value: "1"
|
|
13
|
+
}, {
|
|
14
|
+
label: "Option 02",
|
|
15
|
+
value: "2"
|
|
16
|
+
}, {
|
|
17
|
+
label: "Option 03",
|
|
18
|
+
value: "3"
|
|
19
|
+
}, {
|
|
20
|
+
label: "Option 04",
|
|
21
|
+
value: "4"
|
|
22
|
+
}, {
|
|
23
|
+
label: "Option 05",
|
|
24
|
+
value: "5",
|
|
25
|
+
disabled: true
|
|
26
|
+
}, {
|
|
27
|
+
label: "Option 06",
|
|
28
|
+
value: "6",
|
|
29
|
+
disabled: true
|
|
30
|
+
}, {
|
|
31
|
+
label: "Option 07",
|
|
32
|
+
value: "7",
|
|
33
|
+
disabled: true
|
|
34
|
+
}, {
|
|
35
|
+
label: "Option 08",
|
|
36
|
+
value: "8",
|
|
37
|
+
disabled: true
|
|
38
|
+
}, {
|
|
39
|
+
label: "Option 09",
|
|
40
|
+
value: "9"
|
|
41
|
+
}];
|
|
42
|
+
describe("Radio Group component accessibility tests", function () {
|
|
43
|
+
it("Should not have basic accessibility issues", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
44
|
+
var _render, container, results;
|
|
45
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
46
|
+
while (1) switch (_context.prev = _context.next) {
|
|
47
|
+
case 0:
|
|
48
|
+
_render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_RadioGroup["default"], {
|
|
49
|
+
label: "test-radioGroup-label",
|
|
50
|
+
options: options,
|
|
51
|
+
error: "Error",
|
|
52
|
+
defaultValue: "3",
|
|
53
|
+
helperText: "Helper Text",
|
|
54
|
+
name: "Name",
|
|
55
|
+
stacking: "row",
|
|
56
|
+
optionalItemLabel: "Optional",
|
|
57
|
+
optional: true
|
|
58
|
+
})), container = _render.container;
|
|
59
|
+
_context.next = 3;
|
|
60
|
+
return (0, _axeHelper.axe)(container);
|
|
61
|
+
case 3:
|
|
62
|
+
results = _context.sent;
|
|
63
|
+
expect(results).toHaveNoViolations();
|
|
64
|
+
case 5:
|
|
65
|
+
case "end":
|
|
66
|
+
return _context.stop();
|
|
67
|
+
}
|
|
68
|
+
}, _callee);
|
|
69
|
+
})));
|
|
70
|
+
it("Should not have basic accessibility issues for read-only mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
|
|
71
|
+
var _render2, container, results;
|
|
72
|
+
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
|
73
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
74
|
+
case 0:
|
|
75
|
+
_render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_RadioGroup["default"], {
|
|
76
|
+
label: "test-radioGroup-label",
|
|
77
|
+
options: options,
|
|
78
|
+
error: "Error",
|
|
79
|
+
defaultValue: "3",
|
|
80
|
+
helperText: "Helper Text",
|
|
81
|
+
name: "Name",
|
|
82
|
+
stacking: "row",
|
|
83
|
+
optionalItemLabel: "Optional",
|
|
84
|
+
readOnly: true
|
|
85
|
+
})), container = _render2.container;
|
|
86
|
+
_context2.next = 3;
|
|
87
|
+
return (0, _axeHelper.axe)(container);
|
|
88
|
+
case 3:
|
|
89
|
+
results = _context2.sent;
|
|
90
|
+
expect(results).toHaveNoViolations();
|
|
91
|
+
case 5:
|
|
92
|
+
case "end":
|
|
93
|
+
return _context2.stop();
|
|
94
|
+
}
|
|
95
|
+
}, _callee2);
|
|
96
|
+
})));
|
|
97
|
+
});
|