@dxc-technology/halstack-react 0.0.0-4e1277a → 0.0.0-4e3dbad
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.js +1 -1
- package/HalstackContext.d.ts +42 -5
- package/HalstackContext.js +28 -18
- package/accordion/Accordion.accessibility.test.d.ts +1 -0
- package/accordion/Accordion.accessibility.test.js +71 -0
- package/accordion/Accordion.js +16 -30
- package/accordion/Accordion.stories.tsx +7 -49
- package/accordion/Accordion.test.d.ts +1 -0
- package/accordion/Accordion.test.js +3 -3
- package/accordion/types.d.ts +1 -1
- package/accordion-group/AccordionGroup.accessibility.test.d.ts +1 -0
- package/accordion-group/AccordionGroup.accessibility.test.js +82 -0
- package/accordion-group/AccordionGroup.js +1 -1
- package/accordion-group/AccordionGroup.stories.tsx +23 -23
- package/accordion-group/AccordionGroup.test.d.ts +1 -0
- package/accordion-group/AccordionGroup.test.js +5 -9
- package/accordion-group/AccordionGroupAccordion.js +1 -1
- package/accordion-group/types.d.ts +1 -1
- package/action-icon/ActionIcon.accessibility.test.d.ts +1 -0
- package/action-icon/ActionIcon.accessibility.test.js +63 -0
- package/action-icon/ActionIcon.js +4 -3
- package/action-icon/ActionIcon.stories.tsx +3 -3
- package/action-icon/ActionIcon.test.d.ts +1 -0
- package/action-icon/ActionIcon.test.js +1 -1
- package/action-icon/types.d.ts +1 -1
- package/alert/Alert.accessibility.test.d.ts +1 -0
- package/alert/Alert.accessibility.test.js +95 -0
- package/alert/Alert.js +21 -72
- package/alert/Alert.test.d.ts +1 -0
- package/alert/Alert.test.js +1 -1
- package/badge/Badge.accessibility.test.d.ts +1 -0
- package/badge/Badge.accessibility.test.js +129 -0
- package/badge/Badge.js +6 -4
- package/badge/Badge.stories.tsx +11 -11
- package/badge/Badge.test.d.ts +1 -0
- package/badge/Badge.test.js +2 -2
- package/badge/types.d.ts +1 -1
- package/bar-chart/BarChart.d.ts +4 -0
- package/bar-chart/BarChart.js +152 -0
- package/bar-chart/BarChart.stories.tsx +281 -0
- package/bar-chart/BarChart.test.d.ts +1 -0
- package/bar-chart/BarChart.test.js +194 -0
- package/bar-chart/theme.d.ts +3 -0
- package/bar-chart/theme.js +31 -0
- package/bar-chart/types.d.ts +118 -0
- package/bar-chart/types.js +5 -0
- package/bleed/Bleed.stories.tsx +0 -1
- package/box/Box.accessibility.test.d.ts +1 -0
- package/box/Box.accessibility.test.js +33 -0
- package/box/Box.js +1 -1
- package/box/Box.test.d.ts +1 -0
- package/box/Box.test.js +1 -1
- 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 +168 -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 +40 -0
- package/breadcrumbs/types.js +5 -0
- package/bulleted-list/BulletedList.accessibility.test.d.ts +1 -0
- package/bulleted-list/BulletedList.accessibility.test.js +119 -0
- package/bulleted-list/BulletedList.js +7 -4
- package/bulleted-list/BulletedList.stories.tsx +1 -1
- package/button/Button.accessibility.test.d.ts +1 -0
- package/button/Button.accessibility.test.js +127 -0
- package/button/Button.js +2 -2
- package/button/Button.stories.tsx +3 -4
- package/button/Button.test.d.ts +1 -0
- package/button/Button.test.js +1 -1
- package/card/Card.accessibility.test.d.ts +1 -0
- package/card/Card.accessibility.test.js +36 -0
- package/card/Card.js +3 -2
- package/card/Card.stories.tsx +1 -1
- package/card/Card.test.d.ts +1 -0
- package/card/Card.test.js +1 -1
- package/checkbox/Checkbox.accessibility.test.d.ts +1 -0
- package/checkbox/Checkbox.accessibility.test.js +87 -0
- package/checkbox/Checkbox.js +10 -13
- package/checkbox/Checkbox.test.d.ts +1 -0
- package/checkbox/Checkbox.test.js +1 -1
- package/chip/Chip.accessibility.test.d.ts +1 -0
- package/chip/Chip.accessibility.test.js +67 -0
- package/chip/Chip.js +11 -6
- package/chip/Chip.stories.tsx +6 -25
- package/chip/Chip.test.d.ts +1 -0
- package/chip/Chip.test.js +5 -5
- package/common/coreTokens.d.ts +0 -1
- package/common/coreTokens.js +3 -4
- package/common/variables.d.ts +48 -5
- package/common/variables.js +110 -73
- package/container/Container.stories.tsx +3 -3
- package/container/types.d.ts +113 -11
- package/contextual-menu/ContextualMenu.accessibility.test.d.ts +1 -0
- package/contextual-menu/ContextualMenu.accessibility.test.js +98 -0
- package/contextual-menu/ContextualMenu.d.ts +3 -5
- package/contextual-menu/ContextualMenu.js +118 -53
- package/contextual-menu/ContextualMenu.stories.tsx +124 -75
- package/contextual-menu/ContextualMenu.test.d.ts +1 -0
- package/contextual-menu/ContextualMenu.test.js +200 -24
- 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 +88 -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 +54 -11
- package/date-input/Calendar.js +47 -31
- package/date-input/DateInput.accessibility.test.d.ts +1 -0
- package/date-input/DateInput.accessibility.test.js +229 -0
- package/date-input/DateInput.js +28 -23
- package/date-input/DateInput.stories.tsx +18 -12
- package/date-input/DateInput.test.d.ts +1 -0
- package/date-input/DateInput.test.js +39 -39
- package/date-input/DatePicker.js +13 -7
- package/date-input/YearPicker.js +10 -5
- package/dialog/Dialog.accessibility.test.d.ts +1 -0
- package/dialog/Dialog.accessibility.test.js +69 -0
- package/dialog/Dialog.js +9 -20
- package/dialog/Dialog.stories.tsx +8 -4
- package/dialog/Dialog.test.d.ts +1 -0
- package/dialog/Dialog.test.js +112 -49
- package/divider/Divider.accessibility.test.d.ts +1 -0
- package/divider/Divider.accessibility.test.js +33 -0
- package/divider/Divider.stories.tsx +2 -1
- package/divider/Divider.test.d.ts +1 -0
- package/dropdown/Dropdown.accessibility.test.d.ts +1 -0
- package/dropdown/Dropdown.accessibility.test.js +183 -0
- package/dropdown/Dropdown.js +31 -66
- package/dropdown/Dropdown.stories.tsx +16 -27
- package/dropdown/Dropdown.test.d.ts +1 -0
- package/dropdown/Dropdown.test.js +101 -72
- package/dropdown/DropdownMenu.js +4 -4
- package/dropdown/DropdownMenuItem.js +8 -4
- package/dropdown/types.d.ts +2 -4
- package/file-input/FileInput.accessibility.test.d.ts +1 -0
- package/file-input/FileInput.accessibility.test.js +167 -0
- package/file-input/FileInput.js +6 -47
- package/file-input/FileInput.test.d.ts +1 -0
- package/file-input/FileInput.test.js +51 -106
- package/file-input/FileItem.js +18 -28
- package/file-input/types.d.ts +0 -4
- package/footer/Footer.accessibility.test.d.ts +1 -0
- package/footer/Footer.accessibility.test.js +125 -0
- package/footer/Footer.js +8 -6
- package/footer/Footer.stories.tsx +40 -3
- package/footer/Footer.test.d.ts +1 -0
- package/footer/Footer.test.js +1 -1
- package/footer/Icons.js +2 -30
- package/footer/types.d.ts +1 -1
- package/grid/Grid.stories.tsx +3 -1
- package/header/Header.accessibility.test.d.ts +1 -0
- package/header/Header.accessibility.test.js +94 -0
- package/header/Header.js +12 -22
- package/header/Header.stories.tsx +17 -1
- package/header/Header.test.d.ts +1 -0
- package/header/Header.test.js +1 -1
- package/header/Icons.js +1 -6
- package/heading/Heading.accessibility.test.d.ts +1 -0
- package/heading/Heading.accessibility.test.js +33 -0
- package/heading/Heading.js +1 -1
- package/heading/Heading.test.d.ts +1 -0
- package/heading/Heading.test.js +1 -14
- package/icon/Icon.accessibility.test.d.ts +1 -0
- package/icon/Icon.accessibility.test.js +30 -0
- package/icon/Icon.js +1 -1
- package/icon/Icon.stories.tsx +6 -4
- package/image/Image.accessibility.test.d.ts +1 -0
- package/image/Image.accessibility.test.js +56 -0
- package/image/Image.js +1 -1
- package/layout/ApplicationLayout.js +9 -6
- package/layout/Icons.d.ts +0 -1
- package/layout/Icons.js +1 -11
- package/link/Link.accessibility.test.d.ts +1 -0
- package/link/Link.accessibility.test.js +108 -0
- package/link/Link.js +8 -6
- package/link/Link.stories.tsx +4 -4
- package/link/Link.test.d.ts +1 -0
- package/link/Link.test.js +1 -1
- package/link/types.d.ts +1 -1
- package/main.d.ts +3 -1
- package/main.js +15 -1
- package/nav-tabs/NavTabs.accessibility.test.d.ts +1 -0
- package/nav-tabs/NavTabs.accessibility.test.js +44 -0
- package/nav-tabs/NavTabs.js +19 -4
- package/nav-tabs/NavTabs.stories.tsx +41 -23
- package/nav-tabs/NavTabs.test.d.ts +1 -0
- package/nav-tabs/NavTabs.test.js +10 -9
- package/nav-tabs/Tab.js +17 -18
- package/nav-tabs/types.d.ts +1 -1
- package/number-input/NumberInput.accessibility.test.d.ts +1 -0
- package/number-input/NumberInput.accessibility.test.js +227 -0
- package/number-input/NumberInput.js +6 -3
- package/number-input/NumberInput.stories.tsx +11 -16
- package/number-input/NumberInput.test.d.ts +1 -0
- package/number-input/NumberInput.test.js +6 -7
- package/package.json +34 -28
- package/paginator/Paginator.accessibility.test.d.ts +1 -0
- package/paginator/Paginator.accessibility.test.js +78 -0
- package/paginator/Paginator.js +13 -10
- package/paginator/Paginator.test.d.ts +1 -0
- package/paginator/Paginator.test.js +2 -3
- package/paragraph/Paragraph.accessibility.test.d.ts +1 -0
- package/paragraph/Paragraph.accessibility.test.js +28 -0
- package/password-input/PasswordInput.accessibility.test.d.ts +1 -0
- package/password-input/PasswordInput.accessibility.test.js +152 -0
- package/password-input/PasswordInput.js +11 -8
- package/password-input/PasswordInput.stories.tsx +10 -1
- package/password-input/PasswordInput.test.d.ts +1 -0
- package/password-input/PasswordInput.test.js +6 -7
- package/progress-bar/ProgressBar.accessibility.test.d.ts +1 -0
- package/progress-bar/ProgressBar.accessibility.test.js +35 -0
- package/progress-bar/ProgressBar.js +6 -4
- package/progress-bar/ProgressBar.test.d.ts +1 -0
- package/progress-bar/ProgressBar.test.js +1 -1
- package/quick-nav/QuickNav.accessibility.test.d.ts +1 -0
- package/quick-nav/QuickNav.accessibility.test.js +57 -0
- package/quick-nav/QuickNav.js +1 -1
- package/radio-group/Radio.js +6 -9
- package/radio-group/RadioGroup.accessibility.test.d.ts +1 -0
- package/radio-group/RadioGroup.accessibility.test.js +97 -0
- package/radio-group/RadioGroup.js +14 -16
- package/radio-group/RadioGroup.test.d.ts +1 -0
- package/radio-group/RadioGroup.test.js +3 -5
- package/resultset-table/ResultsetTable.accessibility.test.d.ts +1 -0
- package/resultset-table/ResultsetTable.accessibility.test.js +284 -0
- package/resultset-table/ResultsetTable.d.ts +1 -1
- package/resultset-table/ResultsetTable.js +47 -15
- package/resultset-table/ResultsetTable.stories.tsx +19 -3
- package/resultset-table/ResultsetTable.test.d.ts +1 -0
- package/resultset-table/ResultsetTable.test.js +111 -32
- package/resultset-table/types.d.ts +41 -13
- package/select/Listbox.d.ts +3 -3
- package/select/Listbox.js +33 -29
- package/select/Option.d.ts +3 -3
- package/select/Option.js +21 -15
- package/select/Select.accessibility.test.d.ts +1 -0
- package/select/Select.accessibility.test.js +227 -0
- package/select/Select.js +85 -192
- package/select/Select.stories.tsx +74 -117
- package/select/Select.test.d.ts +1 -0
- package/select/Select.test.js +348 -550
- package/select/selectUtils.d.ts +41 -0
- package/select/selectUtils.js +129 -0
- package/select/types.d.ts +1 -1
- package/sidenav/Sidenav.accessibility.test.d.ts +1 -0
- package/sidenav/Sidenav.accessibility.test.js +59 -0
- package/sidenav/Sidenav.js +16 -12
- package/sidenav/Sidenav.stories.tsx +5 -10
- package/sidenav/Sidenav.test.d.ts +1 -0
- package/sidenav/Sidenav.test.js +1 -1
- package/sidenav/types.d.ts +2 -2
- package/slider/Slider.accessibility.test.d.ts +1 -0
- package/slider/Slider.accessibility.test.js +103 -0
- package/slider/Slider.js +11 -13
- package/slider/Slider.stories.tsx +180 -0
- package/slider/Slider.test.d.ts +1 -0
- package/slider/Slider.test.js +13 -11
- package/spinner/Spinner.accessibility.test.d.ts +1 -0
- package/spinner/Spinner.accessibility.test.js +96 -0
- package/spinner/Spinner.d.ts +1 -1
- package/spinner/Spinner.js +32 -47
- package/spinner/Spinner.test.d.ts +1 -0
- package/spinner/Spinner.test.js +1 -1
- package/status-light/StatusLight.accessibility.test.d.ts +1 -0
- package/status-light/StatusLight.accessibility.test.js +157 -0
- package/status-light/StatusLight.test.d.ts +1 -0
- package/status-light/StatusLight.test.js +1 -1
- package/switch/Switch.accessibility.test.d.ts +1 -0
- package/switch/Switch.accessibility.test.js +98 -0
- package/switch/Switch.js +6 -9
- package/switch/Switch.stories.tsx +12 -0
- package/switch/Switch.test.d.ts +1 -0
- package/switch/Switch.test.js +1 -1
- package/table/Table.accessibility.test.d.ts +1 -0
- package/table/Table.accessibility.test.js +92 -0
- package/table/Table.js +2 -11
- package/table/Table.stories.tsx +15 -10
- package/table/Table.test.d.ts +1 -0
- package/table/Table.test.js +2 -4
- package/table/types.d.ts +1 -15
- package/tabs/Tab.js +6 -5
- package/tabs/Tabs.accessibility.test.d.ts +1 -0
- package/tabs/Tabs.accessibility.test.js +56 -0
- package/tabs/Tabs.js +9 -20
- package/tabs/Tabs.stories.tsx +7 -3
- package/tabs/Tabs.test.d.ts +1 -0
- package/tabs/Tabs.test.js +20 -38
- package/tabs/types.d.ts +2 -2
- package/tag/Tag.accessibility.test.d.ts +1 -0
- package/tag/Tag.accessibility.test.js +69 -0
- package/tag/Tag.js +7 -7
- package/tag/Tag.stories.tsx +5 -8
- package/tag/Tag.test.d.ts +1 -0
- package/tag/Tag.test.js +5 -13
- package/tag/types.d.ts +2 -2
- package/text-input/Suggestion.js +1 -1
- package/text-input/Suggestions.js +17 -7
- package/text-input/TextInput.accessibility.test.d.ts +1 -0
- package/text-input/TextInput.accessibility.test.js +320 -0
- package/text-input/TextInput.js +56 -73
- package/text-input/TextInput.stories.tsx +20 -8
- package/text-input/TextInput.test.d.ts +1 -0
- package/text-input/TextInput.test.js +2 -3
- package/textarea/Textarea.accessibility.test.d.ts +1 -0
- package/textarea/Textarea.accessibility.test.js +155 -0
- package/textarea/Textarea.js +14 -13
- package/textarea/Textarea.test.d.ts +1 -0
- package/textarea/Textarea.test.js +1 -1
- package/toggle-group/ToggleGroup.accessibility.test.d.ts +1 -0
- package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
- package/toggle-group/ToggleGroup.js +10 -12
- package/toggle-group/ToggleGroup.stories.tsx +4 -4
- package/toggle-group/ToggleGroup.test.d.ts +1 -0
- package/toggle-group/ToggleGroup.test.js +1 -1
- package/toggle-group/types.d.ts +2 -2
- package/tooltip/Tooltip.accessibility.test.d.ts +1 -0
- package/tooltip/Tooltip.accessibility.test.js +144 -0
- package/tooltip/Tooltip.d.ts +4 -0
- package/tooltip/Tooltip.js +50 -0
- package/tooltip/Tooltip.stories.tsx +111 -0
- package/tooltip/Tooltip.test.d.ts +1 -0
- package/tooltip/Tooltip.test.js +112 -0
- package/tooltip/types.d.ts +16 -0
- package/tooltip/types.js +5 -0
- package/typography/Typography.accessibility.test.d.ts +1 -0
- package/typography/Typography.accessibility.test.js +339 -0
- package/typography/Typography.stories.tsx +1 -3
- package/typography/Typography.test.js +23 -0
- package/useTheme.d.ts +31 -5
- package/useTranslatedLabels.d.ts +11 -0
- package/utils/BaseTypography.js +45 -41
- package/utils/FocusLock.js +3 -2
- package/utils/useWidth.d.ts +2 -0
- package/utils/useWidth.js +30 -0
- package/wizard/Wizard.accessibility.test.d.ts +1 -0
- package/wizard/Wizard.accessibility.test.js +55 -0
- package/wizard/Wizard.js +14 -25
- package/wizard/Wizard.stories.tsx +20 -1
- package/wizard/Wizard.test.d.ts +1 -0
- package/wizard/Wizard.test.js +1 -1
- package/wizard/types.d.ts +1 -1
- package/contextual-menu/MenuItemAction.d.ts +0 -4
- package/contextual-menu/MenuItemAction.js +0 -46
- package/date-input/Icons.d.ts +0 -6
- package/date-input/Icons.js +0 -58
- package/paginator/Icons.d.ts +0 -5
- package/paginator/Icons.js +0 -40
- package/password-input/Icons.d.ts +0 -6
- package/password-input/Icons.js +0 -35
- package/select/Icons.d.ts +0 -10
- package/select/Icons.js +0 -89
- package/sidenav/Icons.d.ts +0 -7
- package/sidenav/Icons.js +0 -47
- package/text-input/Icons.d.ts +0 -8
- package/text-input/Icons.js +0 -56
|
@@ -0,0 +1,227 @@
|
|
|
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 _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
7
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _react2 = require("@testing-library/react");
|
|
10
|
+
var _axeHelper = require("../../test/accessibility/axe-helper.js");
|
|
11
|
+
var _NumberInput = _interopRequireDefault(require("./NumberInput"));
|
|
12
|
+
// Mocking DOMRect for Radix Primitive Popover
|
|
13
|
+
global.globalThis = global;
|
|
14
|
+
global.DOMRect = {
|
|
15
|
+
fromRect: function fromRect() {
|
|
16
|
+
return {
|
|
17
|
+
top: 0,
|
|
18
|
+
left: 0,
|
|
19
|
+
bottom: 0,
|
|
20
|
+
right: 0,
|
|
21
|
+
width: 0,
|
|
22
|
+
height: 0
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
global.ResizeObserver = /*#__PURE__*/function () {
|
|
27
|
+
function ResizeObserver() {
|
|
28
|
+
(0, _classCallCheck2["default"])(this, ResizeObserver);
|
|
29
|
+
}
|
|
30
|
+
return (0, _createClass2["default"])(ResizeObserver, [{
|
|
31
|
+
key: "observe",
|
|
32
|
+
value: function observe() {}
|
|
33
|
+
}, {
|
|
34
|
+
key: "unobserve",
|
|
35
|
+
value: function unobserve() {}
|
|
36
|
+
}, {
|
|
37
|
+
key: "disconnect",
|
|
38
|
+
value: function disconnect() {}
|
|
39
|
+
}]);
|
|
40
|
+
}();
|
|
41
|
+
describe("Number input component accessibility tests", function () {
|
|
42
|
+
it("Should not have basic accessibility issues", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
43
|
+
var _render, container, results;
|
|
44
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
45
|
+
while (1) switch (_context.prev = _context.next) {
|
|
46
|
+
case 0:
|
|
47
|
+
_render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_NumberInput["default"], {
|
|
48
|
+
label: "Number input label",
|
|
49
|
+
helperText: "Helper text",
|
|
50
|
+
placeholder: "Placeholder",
|
|
51
|
+
defaultValue: "10",
|
|
52
|
+
margin: "medium",
|
|
53
|
+
min: 0,
|
|
54
|
+
max: 100,
|
|
55
|
+
suffix: "Suffix",
|
|
56
|
+
prefix: "Prefix",
|
|
57
|
+
name: "Name",
|
|
58
|
+
size: "medium",
|
|
59
|
+
step: 1
|
|
60
|
+
})), container = _render.container;
|
|
61
|
+
_context.next = 3;
|
|
62
|
+
return (0, _axeHelper.axe)(container);
|
|
63
|
+
case 3:
|
|
64
|
+
results = _context.sent;
|
|
65
|
+
expect(results).toHaveNoViolations();
|
|
66
|
+
case 5:
|
|
67
|
+
case "end":
|
|
68
|
+
return _context.stop();
|
|
69
|
+
}
|
|
70
|
+
}, _callee);
|
|
71
|
+
})));
|
|
72
|
+
it("Should not have basic accessibility issues for optional mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
|
|
73
|
+
var _render2, container, results;
|
|
74
|
+
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
|
75
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
76
|
+
case 0:
|
|
77
|
+
_render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_NumberInput["default"], {
|
|
78
|
+
label: "Number input label",
|
|
79
|
+
helperText: "Helper text",
|
|
80
|
+
placeholder: "Placeholder",
|
|
81
|
+
defaultValue: "10",
|
|
82
|
+
margin: "medium",
|
|
83
|
+
min: 0,
|
|
84
|
+
max: 100,
|
|
85
|
+
suffix: "Suffix",
|
|
86
|
+
prefix: "Prefix",
|
|
87
|
+
name: "Name",
|
|
88
|
+
size: "medium",
|
|
89
|
+
step: 1,
|
|
90
|
+
optional: true
|
|
91
|
+
})), container = _render2.container;
|
|
92
|
+
_context2.next = 3;
|
|
93
|
+
return (0, _axeHelper.axe)(container);
|
|
94
|
+
case 3:
|
|
95
|
+
results = _context2.sent;
|
|
96
|
+
expect(results).toHaveNoViolations();
|
|
97
|
+
case 5:
|
|
98
|
+
case "end":
|
|
99
|
+
return _context2.stop();
|
|
100
|
+
}
|
|
101
|
+
}, _callee2);
|
|
102
|
+
})));
|
|
103
|
+
it("Should not have basic accessibility issues for error mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
|
|
104
|
+
var _render3, container, results;
|
|
105
|
+
return _regenerator["default"].wrap(function _callee3$(_context3) {
|
|
106
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
107
|
+
case 0:
|
|
108
|
+
_render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_NumberInput["default"], {
|
|
109
|
+
label: "Number input label",
|
|
110
|
+
helperText: "Helper text",
|
|
111
|
+
placeholder: "Placeholder",
|
|
112
|
+
defaultValue: "10",
|
|
113
|
+
margin: "medium",
|
|
114
|
+
min: 0,
|
|
115
|
+
max: 100,
|
|
116
|
+
suffix: "Suffix",
|
|
117
|
+
prefix: "Prefix",
|
|
118
|
+
name: "Name",
|
|
119
|
+
error: "Input error",
|
|
120
|
+
size: "medium",
|
|
121
|
+
step: 1
|
|
122
|
+
})), container = _render3.container;
|
|
123
|
+
_context3.next = 3;
|
|
124
|
+
return (0, _axeHelper.axe)(container);
|
|
125
|
+
case 3:
|
|
126
|
+
results = _context3.sent;
|
|
127
|
+
expect(results).toHaveNoViolations();
|
|
128
|
+
case 5:
|
|
129
|
+
case "end":
|
|
130
|
+
return _context3.stop();
|
|
131
|
+
}
|
|
132
|
+
}, _callee3);
|
|
133
|
+
})));
|
|
134
|
+
it("Should not have basic accessibility issues for disabled mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4() {
|
|
135
|
+
var _render4, container, results;
|
|
136
|
+
return _regenerator["default"].wrap(function _callee4$(_context4) {
|
|
137
|
+
while (1) switch (_context4.prev = _context4.next) {
|
|
138
|
+
case 0:
|
|
139
|
+
_render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_NumberInput["default"], {
|
|
140
|
+
label: "Number input label",
|
|
141
|
+
helperText: "Helper text",
|
|
142
|
+
placeholder: "Placeholder",
|
|
143
|
+
defaultValue: "10",
|
|
144
|
+
margin: "medium",
|
|
145
|
+
min: 0,
|
|
146
|
+
max: 100,
|
|
147
|
+
suffix: "Suffix",
|
|
148
|
+
prefix: "Prefix",
|
|
149
|
+
name: "Name",
|
|
150
|
+
size: "medium",
|
|
151
|
+
step: 1,
|
|
152
|
+
disabled: true
|
|
153
|
+
})), container = _render4.container;
|
|
154
|
+
_context4.next = 3;
|
|
155
|
+
return (0, _axeHelper.axe)(container);
|
|
156
|
+
case 3:
|
|
157
|
+
results = _context4.sent;
|
|
158
|
+
expect(results).toHaveNoViolations();
|
|
159
|
+
case 5:
|
|
160
|
+
case "end":
|
|
161
|
+
return _context4.stop();
|
|
162
|
+
}
|
|
163
|
+
}, _callee4);
|
|
164
|
+
})));
|
|
165
|
+
it("Should not have basic accessibility issues for read-only mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5() {
|
|
166
|
+
var _render5, container, results;
|
|
167
|
+
return _regenerator["default"].wrap(function _callee5$(_context5) {
|
|
168
|
+
while (1) switch (_context5.prev = _context5.next) {
|
|
169
|
+
case 0:
|
|
170
|
+
_render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_NumberInput["default"], {
|
|
171
|
+
label: "Number input label",
|
|
172
|
+
helperText: "Helper text",
|
|
173
|
+
placeholder: "Placeholder",
|
|
174
|
+
defaultValue: "10",
|
|
175
|
+
margin: "medium",
|
|
176
|
+
min: 0,
|
|
177
|
+
max: 100,
|
|
178
|
+
suffix: "Suffix",
|
|
179
|
+
prefix: "Prefix",
|
|
180
|
+
name: "Name",
|
|
181
|
+
size: "medium",
|
|
182
|
+
step: 1,
|
|
183
|
+
readOnly: true
|
|
184
|
+
})), container = _render5.container;
|
|
185
|
+
_context5.next = 3;
|
|
186
|
+
return (0, _axeHelper.axe)(container);
|
|
187
|
+
case 3:
|
|
188
|
+
results = _context5.sent;
|
|
189
|
+
expect(results).toHaveNoViolations();
|
|
190
|
+
case 5:
|
|
191
|
+
case "end":
|
|
192
|
+
return _context5.stop();
|
|
193
|
+
}
|
|
194
|
+
}, _callee5);
|
|
195
|
+
})));
|
|
196
|
+
it("Should not have basic accessibility issues for autocomplete mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6() {
|
|
197
|
+
var _render6, container, results;
|
|
198
|
+
return _regenerator["default"].wrap(function _callee6$(_context6) {
|
|
199
|
+
while (1) switch (_context6.prev = _context6.next) {
|
|
200
|
+
case 0:
|
|
201
|
+
_render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_NumberInput["default"], {
|
|
202
|
+
label: "Number input label",
|
|
203
|
+
helperText: "Helper text",
|
|
204
|
+
placeholder: "Placeholder",
|
|
205
|
+
defaultValue: "10",
|
|
206
|
+
margin: "medium",
|
|
207
|
+
min: 0,
|
|
208
|
+
max: 100,
|
|
209
|
+
suffix: "Suffix",
|
|
210
|
+
prefix: "Prefix",
|
|
211
|
+
name: "Name",
|
|
212
|
+
size: "medium",
|
|
213
|
+
step: 1,
|
|
214
|
+
autocomplete: "on"
|
|
215
|
+
})), container = _render6.container;
|
|
216
|
+
_context6.next = 3;
|
|
217
|
+
return (0, _axeHelper.axe)(container);
|
|
218
|
+
case 3:
|
|
219
|
+
results = _context6.sent;
|
|
220
|
+
expect(results).toHaveNoViolations();
|
|
221
|
+
case 5:
|
|
222
|
+
case "end":
|
|
223
|
+
return _context6.stop();
|
|
224
|
+
}
|
|
225
|
+
}, _callee6);
|
|
226
|
+
})));
|
|
227
|
+
});
|
|
@@ -13,7 +13,7 @@ var _TextInput = _interopRequireDefault(require("../text-input/TextInput"));
|
|
|
13
13
|
var _NumberInputContext = require("./NumberInputContext");
|
|
14
14
|
var _templateObject;
|
|
15
15
|
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); }
|
|
16
|
-
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 &&
|
|
16
|
+
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; }
|
|
17
17
|
var DxcNumberInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
18
18
|
var label = _ref.label,
|
|
19
19
|
name = _ref.name,
|
|
@@ -59,7 +59,8 @@ var DxcNumberInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, r
|
|
|
59
59
|
stepNumber: step
|
|
60
60
|
}
|
|
61
61
|
}, /*#__PURE__*/_react["default"].createElement(NumberInputContainer, {
|
|
62
|
-
ref: numberInputRef
|
|
62
|
+
ref: numberInputRef,
|
|
63
|
+
size: size
|
|
63
64
|
}, /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
64
65
|
label: label,
|
|
65
66
|
name: name,
|
|
@@ -82,5 +83,7 @@ var DxcNumberInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, r
|
|
|
82
83
|
ref: ref
|
|
83
84
|
})));
|
|
84
85
|
});
|
|
85
|
-
var NumberInputContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n // Chrome, Safari, Edge, Opera\n input::-webkit-outer-spin-button,\n input::-webkit-inner-spin-button {\n -webkit-appearance: none;\n margin: 0;\n }\n\n // Firefox\n input[type=\"number\"] {\n -moz-appearance: textfield;\n }\n"])))
|
|
86
|
+
var NumberInputContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n // Chrome, Safari, Edge, Opera\n input::-webkit-outer-spin-button,\n input::-webkit-inner-spin-button {\n -webkit-appearance: none;\n margin: 0;\n }\n\n // Firefox\n input[type=\"number\"] {\n -moz-appearance: textfield;\n }\n"])), function (props) {
|
|
87
|
+
return props.size == "fillParent" && "width: 100%;";
|
|
88
|
+
});
|
|
86
89
|
var _default = exports["default"] = DxcNumberInput;
|
|
@@ -2,6 +2,7 @@ import React from "react";
|
|
|
2
2
|
import Title from "../../.storybook/components/Title";
|
|
3
3
|
import ExampleContainer from "../../.storybook/components/ExampleContainer";
|
|
4
4
|
import DxcNumberInput from "./NumberInput";
|
|
5
|
+
import DxcFlex from "../flex/Flex";
|
|
5
6
|
|
|
6
7
|
export default {
|
|
7
8
|
title: "Number Input",
|
|
@@ -32,25 +33,11 @@ export const Chromatic = () => (
|
|
|
32
33
|
</ExampleContainer>
|
|
33
34
|
<ExampleContainer>
|
|
34
35
|
<Title title="Read only" theme="light" level={4} />
|
|
35
|
-
<DxcNumberInput
|
|
36
|
-
label="Example label"
|
|
37
|
-
helperText="Help message"
|
|
38
|
-
readOnly
|
|
39
|
-
optional
|
|
40
|
-
prefix="€"
|
|
41
|
-
defaultValue="33"
|
|
42
|
-
/>
|
|
36
|
+
<DxcNumberInput label="Example label" helperText="Help message" readOnly optional prefix="€" defaultValue="33" />
|
|
43
37
|
</ExampleContainer>
|
|
44
38
|
<ExampleContainer pseudoState="pseudo-hover">
|
|
45
39
|
<Title title="Hovered read only" theme="light" level={4} />
|
|
46
|
-
<DxcNumberInput
|
|
47
|
-
label="Example label"
|
|
48
|
-
helperText="Help message"
|
|
49
|
-
readOnly
|
|
50
|
-
optional
|
|
51
|
-
prefix="€"
|
|
52
|
-
defaultValue="1"
|
|
53
|
-
/>
|
|
40
|
+
<DxcNumberInput label="Example label" helperText="Help message" readOnly optional prefix="€" defaultValue="1" />
|
|
54
41
|
</ExampleContainer>
|
|
55
42
|
<ExampleContainer pseudoState="pseudo-active">
|
|
56
43
|
<Title title="Active read only" theme="light" level={4} />
|
|
@@ -127,5 +114,13 @@ export const Chromatic = () => (
|
|
|
127
114
|
<Title title="FillParent size" theme="light" level={4} />
|
|
128
115
|
<DxcNumberInput label="FillParent" size="fillParent" />
|
|
129
116
|
</ExampleContainer>
|
|
117
|
+
<ExampleContainer>
|
|
118
|
+
<Title title="Different sizes inside a flex" theme="light" level={4} />
|
|
119
|
+
<DxcFlex justifyContent="space-between" gap="1rem">
|
|
120
|
+
<DxcNumberInput label="fillParent" size="fillParent" />
|
|
121
|
+
<DxcNumberInput label="medium" size="medium" />
|
|
122
|
+
<DxcNumberInput label="large" size="large" />
|
|
123
|
+
</DxcFlex>
|
|
124
|
+
</ExampleContainer>
|
|
130
125
|
</>
|
|
131
126
|
);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -8,7 +8,7 @@ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/creat
|
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
var _react2 = require("@testing-library/react");
|
|
10
10
|
var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
|
|
11
|
-
var _NumberInput = _interopRequireDefault(require("./NumberInput
|
|
11
|
+
var _NumberInput = _interopRequireDefault(require("./NumberInput"));
|
|
12
12
|
// Mocking DOMRect for Radix Primitive Popover
|
|
13
13
|
global.globalThis = global;
|
|
14
14
|
global.DOMRect = {
|
|
@@ -27,7 +27,7 @@ global.ResizeObserver = /*#__PURE__*/function () {
|
|
|
27
27
|
function ResizeObserver() {
|
|
28
28
|
(0, _classCallCheck2["default"])(this, ResizeObserver);
|
|
29
29
|
}
|
|
30
|
-
(0, _createClass2["default"])(ResizeObserver, [{
|
|
30
|
+
return (0, _createClass2["default"])(ResizeObserver, [{
|
|
31
31
|
key: "observe",
|
|
32
32
|
value: function observe() {}
|
|
33
33
|
}, {
|
|
@@ -37,7 +37,6 @@ global.ResizeObserver = /*#__PURE__*/function () {
|
|
|
37
37
|
key: "disconnect",
|
|
38
38
|
value: function disconnect() {}
|
|
39
39
|
}]);
|
|
40
|
-
return ResizeObserver;
|
|
41
40
|
}();
|
|
42
41
|
describe("Number input component tests", function () {
|
|
43
42
|
test("Number input renders with label, helper text, placeholder and increment/decrement action buttons", function () {
|
|
@@ -776,7 +775,7 @@ describe("Number input component tests", function () {
|
|
|
776
775
|
min: 5,
|
|
777
776
|
max: 20,
|
|
778
777
|
step: 5,
|
|
779
|
-
defaultValue: 10
|
|
778
|
+
defaultValue: "10"
|
|
780
779
|
})),
|
|
781
780
|
getByLabelText = _render30.getByLabelText;
|
|
782
781
|
var number = getByLabelText("Number input label");
|
|
@@ -804,7 +803,7 @@ describe("Number input component tests", function () {
|
|
|
804
803
|
min: 5,
|
|
805
804
|
max: 20,
|
|
806
805
|
step: 5,
|
|
807
|
-
defaultValue: 10
|
|
806
|
+
defaultValue: "10"
|
|
808
807
|
})),
|
|
809
808
|
getByLabelText = _render31.getByLabelText;
|
|
810
809
|
var number = getByLabelText("Number input label");
|
|
@@ -832,7 +831,7 @@ describe("Number input component tests", function () {
|
|
|
832
831
|
min: 5,
|
|
833
832
|
max: 20,
|
|
834
833
|
step: 5,
|
|
835
|
-
defaultValue: 10
|
|
834
|
+
defaultValue: "10"
|
|
836
835
|
})),
|
|
837
836
|
getByLabelText = _render32.getByLabelText;
|
|
838
837
|
var number = getByLabelText("Number input label");
|
|
@@ -860,7 +859,7 @@ describe("Number input component tests", function () {
|
|
|
860
859
|
min: 5,
|
|
861
860
|
max: 20,
|
|
862
861
|
step: 5,
|
|
863
|
-
defaultValue: 10
|
|
862
|
+
defaultValue: "10"
|
|
864
863
|
})),
|
|
865
864
|
getByLabelText = _render33.getByLabelText;
|
|
866
865
|
var number = getByLabelText("Number input label");
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dxc-technology/halstack-react",
|
|
3
|
-
"version": "0.0.0-
|
|
3
|
+
"version": "0.0.0-4e3dbad",
|
|
4
4
|
"description": "DXC Halstack React components library",
|
|
5
5
|
"repository": "dxc-technology/halstack-react",
|
|
6
6
|
"homepage": "https://developer.dxc.com/halstack",
|
|
@@ -18,70 +18,76 @@
|
|
|
18
18
|
"styled-components": "^5.0.1"
|
|
19
19
|
},
|
|
20
20
|
"dependencies": {
|
|
21
|
+
"@cloudscape-design/components": "^3.0.632",
|
|
21
22
|
"@radix-ui/react-popover": "^1.0.7",
|
|
23
|
+
"@radix-ui/react-tooltip": "^1.0.7",
|
|
22
24
|
"color": "^3.1.3",
|
|
23
25
|
"dayjs": "^1.11.1",
|
|
24
|
-
"slugify": "^1.6.5"
|
|
25
|
-
"uuid": "^8.3.2"
|
|
26
|
+
"slugify": "^1.6.5"
|
|
26
27
|
},
|
|
27
28
|
"scripts": {
|
|
28
|
-
"test": "jest --env=jsdom",
|
|
29
|
+
"test": "jest --env=jsdom --config=./jest.config.js",
|
|
30
|
+
"test:accessibility": "jest --env=jsdom --config=./jest.config.accessibility.js",
|
|
29
31
|
"test:watch": "npm test -- --watch --coverage",
|
|
30
32
|
"build": "babel src --extensions .js,.jsx,.ts,.tsx --out-dir ../dist --copy-files --verbose && node ../scripts/build/copy-package.js && node ../scripts/build/copy-readme.js && tsc ",
|
|
31
33
|
"build:watch": "babel src --watch --extensions .js,.jsx,.ts,.tsx --out-dir ../dist --copy-files --verbose",
|
|
32
34
|
"storybook": "storybook dev -p 6006",
|
|
35
|
+
"storybook:accessibility": "test-storybook",
|
|
36
|
+
"storybook:accessibility:ci": "test-storybook --maxWorkers=2",
|
|
33
37
|
"build-storybook": "storybook build"
|
|
34
38
|
},
|
|
35
39
|
"devDependencies": {
|
|
36
40
|
"@babel/cli": "^7.16.8",
|
|
37
|
-
"@babel/core": "^7.24.
|
|
41
|
+
"@babel/core": "^7.24.7",
|
|
38
42
|
"@babel/plugin-proposal-nullish-coalescing-operator": "^7.13.8",
|
|
39
43
|
"@babel/plugin-proposal-optional-chaining": "^7.13.8",
|
|
40
44
|
"@babel/plugin-transform-runtime": "^7.16.8",
|
|
41
45
|
"@babel/preset-env": "^7.16.8",
|
|
42
46
|
"@babel/preset-react": "^7.16.7",
|
|
43
47
|
"@babel/preset-typescript": "^7.16.7",
|
|
44
|
-
"@storybook
|
|
45
|
-
"@storybook/addon-
|
|
46
|
-
"@storybook/addon-
|
|
47
|
-
"@storybook/
|
|
48
|
-
"@storybook/
|
|
49
|
-
"@storybook/
|
|
50
|
-
"@storybook/
|
|
48
|
+
"@chromatic-com/storybook": "^1.3.3",
|
|
49
|
+
"@storybook/addon-a11y": "^8.0.8",
|
|
50
|
+
"@storybook/addon-essentials": "^8.0.8",
|
|
51
|
+
"@storybook/addon-interactions": "^8.0.8",
|
|
52
|
+
"@storybook/addon-links": "^8.0.8",
|
|
53
|
+
"@storybook/blocks": "^8.0.8",
|
|
54
|
+
"@storybook/builder-vite": "^8.0.8",
|
|
55
|
+
"@storybook/react": "^8.0.8",
|
|
56
|
+
"@storybook/react-vite": "^8.0.8",
|
|
57
|
+
"@storybook/test": "^8.0.9",
|
|
58
|
+
"@storybook/test-runner": "^0.17.0",
|
|
51
59
|
"@testing-library/react": "^13.0.0",
|
|
52
60
|
"@testing-library/user-event": "^13.0.0",
|
|
53
61
|
"@types/color": "^3.0.3",
|
|
54
|
-
"@types/
|
|
62
|
+
"@types/jest": "^29.5.12",
|
|
63
|
+
"@types/jest-axe": "^3.5.9",
|
|
64
|
+
"@types/react": "^18.2.79",
|
|
55
65
|
"@types/styled-components": "5.1.29",
|
|
56
|
-
"
|
|
66
|
+
"axe-playwright": "^2.0.1",
|
|
57
67
|
"babel-jest": "^24.8.0",
|
|
58
68
|
"babel-loader": "^8.0.6",
|
|
59
|
-
"chromatic": "^
|
|
69
|
+
"chromatic": "^11.3.0",
|
|
70
|
+
"css-loader": "^7.1.1",
|
|
60
71
|
"eslint": "^8.53.0",
|
|
61
72
|
"eslint-config-airbnb": "^19.0.4",
|
|
62
73
|
"eslint-config-prettier": "^9.0.0",
|
|
63
74
|
"eslint-plugin-import": "^2.29.0",
|
|
64
75
|
"eslint-plugin-jest": "^27.6.0",
|
|
65
76
|
"eslint-plugin-jsx-a11y": "^6.8.0",
|
|
66
|
-
"eslint-plugin-react": "^7.
|
|
77
|
+
"eslint-plugin-react": "^7.34.1",
|
|
67
78
|
"eslint-plugin-react-hooks": "^4.6.0",
|
|
68
|
-
"eslint-plugin-storybook": "^0.
|
|
79
|
+
"eslint-plugin-storybook": "^0.8.0",
|
|
69
80
|
"identity-obj-proxy": "^3.0.0",
|
|
70
|
-
"jest": "^29.
|
|
81
|
+
"jest": "^29.7.0",
|
|
82
|
+
"jest-axe": "^8.0.0",
|
|
71
83
|
"jest-environment-jsdom": "^29.3.1",
|
|
84
|
+
"playwright": "^1.41.2",
|
|
72
85
|
"react": "^18.2.0",
|
|
73
86
|
"react-dom": "^18.2.0",
|
|
74
|
-
"storybook": "^
|
|
75
|
-
"storybook-addon-pseudo-states": "^
|
|
87
|
+
"storybook": "^8.0.8",
|
|
88
|
+
"storybook-addon-pseudo-states": "^3.0.1",
|
|
89
|
+
"style-loader": "^4.0.0",
|
|
76
90
|
"styled-components": "^5.0.1",
|
|
77
91
|
"typescript": "^5.3.3"
|
|
78
|
-
},
|
|
79
|
-
"jest": {
|
|
80
|
-
"moduleNameMapper": {
|
|
81
|
-
"\\.(css|less|scss|sass)$": "identity-obj-proxy",
|
|
82
|
-
"\\.(svg)$": "<rootDir>/test/mocks/svgMock.js",
|
|
83
|
-
"\\.(png)$": "<rootDir>/test/mocks/pngMock.js",
|
|
84
|
-
"^uuid$": "uuid"
|
|
85
|
-
}
|
|
86
92
|
}
|
|
87
93
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,78 @@
|
|
|
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 _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
7
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _react2 = require("@testing-library/react");
|
|
10
|
+
var _axeHelper = require("../../test/accessibility/axe-helper.js");
|
|
11
|
+
var _Paginator = _interopRequireDefault(require("./Paginator"));
|
|
12
|
+
// Mocking DOMRect for Radix Primitive Popover
|
|
13
|
+
global.globalThis = global;
|
|
14
|
+
global.DOMRect = {
|
|
15
|
+
fromRect: function fromRect() {
|
|
16
|
+
return {
|
|
17
|
+
top: 0,
|
|
18
|
+
left: 0,
|
|
19
|
+
bottom: 0,
|
|
20
|
+
right: 0,
|
|
21
|
+
width: 0,
|
|
22
|
+
height: 0
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
global.ResizeObserver = /*#__PURE__*/function () {
|
|
27
|
+
function ResizeObserver() {
|
|
28
|
+
(0, _classCallCheck2["default"])(this, ResizeObserver);
|
|
29
|
+
}
|
|
30
|
+
return (0, _createClass2["default"])(ResizeObserver, [{
|
|
31
|
+
key: "observe",
|
|
32
|
+
value: function observe() {}
|
|
33
|
+
}, {
|
|
34
|
+
key: "unobserve",
|
|
35
|
+
value: function unobserve() {}
|
|
36
|
+
}, {
|
|
37
|
+
key: "disconnect",
|
|
38
|
+
value: function disconnect() {}
|
|
39
|
+
}]);
|
|
40
|
+
}();
|
|
41
|
+
global.DOMRect = {
|
|
42
|
+
fromRect: function fromRect() {
|
|
43
|
+
return {
|
|
44
|
+
top: 0,
|
|
45
|
+
left: 0,
|
|
46
|
+
bottom: 0,
|
|
47
|
+
right: 0,
|
|
48
|
+
width: 0,
|
|
49
|
+
height: 0
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
describe("Paginator component accessibility tests", function () {
|
|
54
|
+
it("Should not have basic accessibility issues", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
55
|
+
var _render, container, results;
|
|
56
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
57
|
+
while (1) switch (_context.prev = _context.next) {
|
|
58
|
+
case 0:
|
|
59
|
+
_render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
|
|
60
|
+
currentPage: 1,
|
|
61
|
+
itemsPerPage: 10,
|
|
62
|
+
totalItems: 27,
|
|
63
|
+
onPageChange: function onPageChange() {},
|
|
64
|
+
itemsPerPageOptions: [5, 10, 15],
|
|
65
|
+
showGoToPage: true
|
|
66
|
+
})), container = _render.container;
|
|
67
|
+
_context.next = 3;
|
|
68
|
+
return (0, _axeHelper.axe)(container);
|
|
69
|
+
case 3:
|
|
70
|
+
results = _context.sent;
|
|
71
|
+
expect(results).toHaveNoViolations();
|
|
72
|
+
case 5:
|
|
73
|
+
case "end":
|
|
74
|
+
return _context.stop();
|
|
75
|
+
}
|
|
76
|
+
}, _callee);
|
|
77
|
+
})));
|
|
78
|
+
});
|
package/paginator/Paginator.js
CHANGED
|
@@ -13,10 +13,9 @@ var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
|
13
13
|
var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
|
|
14
14
|
var _Button = _interopRequireDefault(require("../button/Button"));
|
|
15
15
|
var _Select = _interopRequireDefault(require("../select/Select"));
|
|
16
|
-
var _Icons = require("./Icons");
|
|
17
16
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;
|
|
18
17
|
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); }
|
|
19
|
-
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 &&
|
|
18
|
+
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; }
|
|
20
19
|
var DxcPaginator = function DxcPaginator(_ref) {
|
|
21
20
|
var _ref$currentPage = _ref.currentPage,
|
|
22
21
|
currentPage = _ref$currentPage === void 0 ? 1 : _ref$currentPage,
|
|
@@ -54,19 +53,21 @@ var DxcPaginator = function DxcPaginator(_ref) {
|
|
|
54
53
|
}))), /*#__PURE__*/_react["default"].createElement(TotalItemsContainer, null, translatedLabels.paginator.minToMaxOfText(minItemsPerPage, maxItemsPerPage, totalItems)), onPageChange && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
55
54
|
mode: "secondary",
|
|
56
55
|
disabled: currentPageInternal === 1 || currentPageInternal === 0,
|
|
57
|
-
icon:
|
|
56
|
+
icon: "first_page",
|
|
58
57
|
tabIndex: tabIndex,
|
|
59
58
|
onClick: function onClick() {
|
|
60
59
|
onPageChange(1);
|
|
61
|
-
}
|
|
60
|
+
},
|
|
61
|
+
title: "First results"
|
|
62
62
|
}), onPageChange && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
63
63
|
mode: "secondary",
|
|
64
64
|
disabled: currentPageInternal === 1 || currentPageInternal === 0,
|
|
65
|
-
icon:
|
|
65
|
+
icon: "navigate_before",
|
|
66
66
|
tabIndex: tabIndex,
|
|
67
67
|
onClick: function onClick() {
|
|
68
68
|
onPageChange(currentPage - 1);
|
|
69
|
-
}
|
|
69
|
+
},
|
|
70
|
+
title: "Previous results"
|
|
70
71
|
}), showGoToPage ? /*#__PURE__*/_react["default"].createElement(PageToSelectContainer, null, /*#__PURE__*/_react["default"].createElement(GoToLabel, null, translatedLabels.paginator.goToPageText, " "), /*#__PURE__*/_react["default"].createElement(SelectContainer, null, /*#__PURE__*/_react["default"].createElement(_Select["default"], {
|
|
71
72
|
options: Array.from(Array(totalPages), function (e, num) {
|
|
72
73
|
return {
|
|
@@ -83,19 +84,21 @@ var DxcPaginator = function DxcPaginator(_ref) {
|
|
|
83
84
|
}))) : /*#__PURE__*/_react["default"].createElement("span", null, translatedLabels.paginator.pageOfText(currentPageInternal, totalPages)), onPageChange && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
84
85
|
mode: "secondary",
|
|
85
86
|
disabled: currentPageInternal === totalPages,
|
|
86
|
-
icon:
|
|
87
|
+
icon: "navigate_next",
|
|
87
88
|
tabIndex: tabIndex,
|
|
88
89
|
onClick: function onClick() {
|
|
89
90
|
onPageChange(currentPage + 1);
|
|
90
|
-
}
|
|
91
|
+
},
|
|
92
|
+
title: "Next results"
|
|
91
93
|
}), onPageChange && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
92
94
|
mode: "secondary",
|
|
93
95
|
disabled: currentPageInternal === totalPages,
|
|
94
|
-
icon:
|
|
96
|
+
icon: "last_page",
|
|
95
97
|
tabIndex: tabIndex,
|
|
96
98
|
onClick: function onClick() {
|
|
97
99
|
onPageChange(totalPages);
|
|
98
|
-
}
|
|
100
|
+
},
|
|
101
|
+
title: "Last results"
|
|
99
102
|
}))));
|
|
100
103
|
};
|
|
101
104
|
var DxcPaginatorContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n font-style: ", ";\n text-transform: ", ";\n background-color: ", ";\n color: ", ";\n padding: ", " ", ";\n\n button {\n &:disabled {\n background-color: transparent !important;\n opacity: 0.3 !important;\n }\n }\n"])), function (props) {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -8,7 +8,7 @@ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/creat
|
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
var _react2 = require("@testing-library/react");
|
|
10
10
|
var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
|
|
11
|
-
var _Paginator = _interopRequireDefault(require("./Paginator
|
|
11
|
+
var _Paginator = _interopRequireDefault(require("./Paginator"));
|
|
12
12
|
// Mocking DOMRect for Radix Primitive Popover
|
|
13
13
|
global.globalThis = global;
|
|
14
14
|
global.DOMRect = {
|
|
@@ -27,7 +27,7 @@ global.ResizeObserver = /*#__PURE__*/function () {
|
|
|
27
27
|
function ResizeObserver() {
|
|
28
28
|
(0, _classCallCheck2["default"])(this, ResizeObserver);
|
|
29
29
|
}
|
|
30
|
-
(0, _createClass2["default"])(ResizeObserver, [{
|
|
30
|
+
return (0, _createClass2["default"])(ResizeObserver, [{
|
|
31
31
|
key: "observe",
|
|
32
32
|
value: function observe() {}
|
|
33
33
|
}, {
|
|
@@ -37,7 +37,6 @@ global.ResizeObserver = /*#__PURE__*/function () {
|
|
|
37
37
|
key: "disconnect",
|
|
38
38
|
value: function disconnect() {}
|
|
39
39
|
}]);
|
|
40
|
-
return ResizeObserver;
|
|
41
40
|
}();
|
|
42
41
|
global.DOMRect = {
|
|
43
42
|
fromRect: function fromRect() {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|