@dxc-technology/halstack-react 0.0.0-f2bad31 → 0.0.0-f319e71
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 +2 -5
- package/HalstackContext.js +6 -6
- package/accordion/Accordion.accessibility.test.d.ts +1 -0
- package/accordion/Accordion.accessibility.test.js +4 -4
- package/accordion/Accordion.js +9 -10
- package/accordion/Accordion.stories.tsx +4 -14
- package/accordion/Accordion.test.d.ts +1 -0
- package/accordion/Accordion.test.js +3 -3
- package/accordion-group/AccordionGroup.accessibility.test.d.ts +1 -0
- package/accordion-group/AccordionGroup.accessibility.test.js +11 -17
- 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/action-icon/ActionIcon.accessibility.test.d.ts +1 -0
- package/action-icon/ActionIcon.accessibility.test.js +4 -4
- package/action-icon/ActionIcon.test.d.ts +1 -0
- package/action-icon/ActionIcon.test.js +1 -1
- package/alert/Alert.accessibility.test.d.ts +1 -0
- package/alert/Alert.accessibility.test.js +6 -6
- package/alert/Alert.js +6 -3
- 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 +5 -5
- 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/box/Box.accessibility.test.d.ts +1 -0
- package/box/Box.accessibility.test.js +3 -3
- 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 +16 -0
- package/breadcrumbs/types.js +5 -0
- package/bulleted-list/BulletedList.accessibility.test.d.ts +1 -0
- package/bulleted-list/BulletedList.accessibility.test.js +18 -6
- package/bulleted-list/BulletedList.js +2 -2
- package/button/Button.accessibility.test.d.ts +1 -0
- package/button/Button.accessibility.test.js +6 -6
- package/button/Button.js +1 -1
- package/button/Button.stories.tsx +3 -3
- 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 +3 -3
- 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 +5 -5
- 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 +4 -4
- package/chip/Chip.js +3 -1
- package/chip/Chip.stories.tsx +1 -1
- package/chip/Chip.test.d.ts +1 -0
- package/chip/Chip.test.js +1 -1
- package/common/coreTokens.js +3 -3
- package/common/variables.d.ts +2 -5
- package/common/variables.js +68 -71
- package/container/Container.stories.tsx +3 -3
- package/contextual-menu/ContextualMenu.accessibility.test.d.ts +1 -0
- package/contextual-menu/ContextualMenu.accessibility.test.js +15 -3
- package/contextual-menu/ContextualMenu.d.ts +3 -5
- package/contextual-menu/ContextualMenu.js +89 -52
- package/contextual-menu/ContextualMenu.stories.tsx +115 -74
- 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 +50 -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 +50 -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 +24 -11
- 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 +5 -5
- 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 +111 -48
- package/divider/Divider.accessibility.test.d.ts +1 -0
- package/divider/Divider.accessibility.test.js +2 -2
- 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 +12 -9
- package/dropdown/Dropdown.js +16 -15
- package/dropdown/Dropdown.stories.tsx +11 -11
- 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 +2 -1
- package/file-input/FileInput.accessibility.test.d.ts +1 -0
- package/file-input/FileInput.accessibility.test.js +30 -23
- 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 +13 -5
- package/footer/Footer.js +8 -6
- package/footer/Footer.stories.tsx +39 -1
- 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 +16 -6
- 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 +3 -3
- 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 +2 -2
- package/icon/Icon.js +1 -1
- package/icon/Icon.stories.tsx +1 -1
- package/image/Image.accessibility.test.d.ts +1 -0
- package/image/Image.accessibility.test.js +3 -3
- package/image/Image.js +1 -1
- package/layout/ApplicationLayout.js +9 -6
- package/layout/Icons.d.ts +0 -1
- package/layout/Icons.js +1 -9
- package/link/Link.accessibility.test.d.ts +1 -0
- package/link/Link.accessibility.test.js +8 -12
- 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 +2 -1
- package/main.js +8 -1
- package/nav-tabs/NavTabs.accessibility.test.d.ts +1 -0
- package/nav-tabs/NavTabs.accessibility.test.js +8 -16
- 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 +9 -10
- 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 +25 -20
- package/paginator/Paginator.accessibility.test.d.ts +1 -0
- package/paginator/Paginator.accessibility.test.js +4 -5
- 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 +2 -2
- package/password-input/PasswordInput.accessibility.test.d.ts +1 -0
- package/password-input/PasswordInput.accessibility.test.js +7 -8
- 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 +3 -3
- 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 +2 -2
- 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 +4 -4
- 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 +16 -6
- package/resultset-table/ResultsetTable.js +36 -11
- package/resultset-table/ResultsetTable.stories.tsx +14 -2
- package/resultset-table/ResultsetTable.test.d.ts +1 -0
- package/resultset-table/ResultsetTable.test.js +103 -34
- package/select/Listbox.js +24 -16
- package/select/Option.js +12 -10
- package/select/Select.accessibility.test.d.ts +1 -0
- package/select/Select.accessibility.test.js +18 -8
- package/select/Select.js +41 -29
- package/select/Select.stories.tsx +69 -111
- package/select/Select.test.d.ts +1 -0
- package/select/Select.test.js +371 -474
- package/select/types.d.ts +1 -1
- package/sidenav/Sidenav.accessibility.test.d.ts +1 -0
- package/sidenav/Sidenav.accessibility.test.js +3 -3
- package/sidenav/Sidenav.js +16 -12
- package/sidenav/Sidenav.stories.tsx +5 -9
- 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 +5 -6
- 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 +6 -6
- package/spinner/Spinner.js +6 -2
- 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 +8 -8
- 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 +14 -5
- 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 +16 -6
- package/table/Table.js +1 -1
- package/table/Table.stories.tsx +13 -1
- package/table/Table.test.d.ts +1 -0
- package/table/Table.test.js +2 -4
- package/tabs/Tab.js +6 -5
- package/tabs/Tabs.accessibility.test.d.ts +1 -0
- package/tabs/Tabs.accessibility.test.js +3 -3
- 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 +4 -4
- 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 +14 -6
- package/text-input/TextInput.accessibility.test.d.ts +1 -0
- package/text-input/TextInput.accessibility.test.js +11 -12
- package/text-input/TextInput.js +29 -25
- package/text-input/TextInput.stories.tsx +19 -7
- 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 +7 -7
- 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 +5 -5
- 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 +12 -12
- package/typography/Typography.stories.tsx +1 -3
- package/useTheme.d.ts +2 -5
- package/utils/BaseTypography.js +1 -1
- package/utils/FocusLock.js +3 -2
- package/wizard/Wizard.accessibility.test.d.ts +1 -0
- package/wizard/Wizard.accessibility.test.js +3 -3
- 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/select/types.d.ts
CHANGED
|
@@ -20,7 +20,7 @@ export type OptionGroup = {
|
|
|
20
20
|
export type Option = {
|
|
21
21
|
/**
|
|
22
22
|
* Element used as the icon that will be placed before the option label.
|
|
23
|
-
* It can be
|
|
23
|
+
* It can be an inline SVG or Material Symbol name. If the url option
|
|
24
24
|
* is the chosen one, take into account that the component's
|
|
25
25
|
* color styling tokens will not be applied to the image.
|
|
26
26
|
*/
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -5,8 +5,8 @@ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"))
|
|
|
5
5
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
6
6
|
var _react = _interopRequireDefault(require("react"));
|
|
7
7
|
var _react2 = require("@testing-library/react");
|
|
8
|
-
var
|
|
9
|
-
var _Sidenav = _interopRequireDefault(require("./Sidenav
|
|
8
|
+
var _axeHelper = require("../../test/accessibility/axe-helper.js");
|
|
9
|
+
var _Sidenav = _interopRequireDefault(require("./Sidenav"));
|
|
10
10
|
var iconSVG = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
11
11
|
version: "1.1",
|
|
12
12
|
x: "0px",
|
|
@@ -46,7 +46,7 @@ describe("Sidenav component accessibility tests", function () {
|
|
|
46
46
|
href: "#"
|
|
47
47
|
}, "Lorem ipsum"))))), container = _render.container;
|
|
48
48
|
_context.next = 3;
|
|
49
|
-
return (0,
|
|
49
|
+
return (0, _axeHelper.axe)(container);
|
|
50
50
|
case 3:
|
|
51
51
|
results = _context.sent;
|
|
52
52
|
expect(results).toHaveNoViolations();
|
package/sidenav/Sidenav.js
CHANGED
|
@@ -17,12 +17,12 @@ var _SidenavContext = require("./SidenavContext");
|
|
|
17
17
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
18
18
|
var _Flex = _interopRequireDefault(require("../flex/Flex"));
|
|
19
19
|
var _Bleed = _interopRequireDefault(require("../bleed/Bleed"));
|
|
20
|
-
var _Icons = _interopRequireDefault(require("./Icons"));
|
|
21
20
|
var _coreTokens = _interopRequireDefault(require("../common/coreTokens"));
|
|
21
|
+
var _Icon = _interopRequireDefault(require("../icon/Icon"));
|
|
22
22
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;
|
|
23
23
|
var _excluded = ["href", "newWindow", "selected", "icon", "onClick", "tabIndex", "children"];
|
|
24
24
|
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); }
|
|
25
|
-
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 &&
|
|
25
|
+
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; }
|
|
26
26
|
var DxcSidenav = function DxcSidenav(_ref) {
|
|
27
27
|
var title = _ref.title,
|
|
28
28
|
children = _ref.children;
|
|
@@ -74,10 +74,12 @@ var Group = function Group(_ref4) {
|
|
|
74
74
|
}, /*#__PURE__*/_react["default"].createElement(_Flex["default"], {
|
|
75
75
|
alignItems: "center",
|
|
76
76
|
gap: "0.5rem"
|
|
77
|
-
}, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement("
|
|
78
|
-
|
|
79
|
-
}) : icon, title),
|
|
80
|
-
|
|
77
|
+
}, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
|
|
78
|
+
icon: icon
|
|
79
|
+
}) : icon, title), /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
|
|
80
|
+
icon: collapsed ? "expand_more" : "expand_less"
|
|
81
|
+
})) : title && /*#__PURE__*/_react["default"].createElement(SidenavGroupTitle, null, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
|
|
82
|
+
icon: icon
|
|
81
83
|
}) : icon, title), !collapsed && children));
|
|
82
84
|
};
|
|
83
85
|
var Link = /*#__PURE__*/(0, _react.forwardRef)(function (_ref5, ref) {
|
|
@@ -113,9 +115,11 @@ var Link = /*#__PURE__*/(0, _react.forwardRef)(function (_ref5, ref) {
|
|
|
113
115
|
}, otherProps), /*#__PURE__*/_react["default"].createElement(_Flex["default"], {
|
|
114
116
|
alignItems: "center",
|
|
115
117
|
gap: "0.5rem"
|
|
116
|
-
}, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement("
|
|
117
|
-
|
|
118
|
-
}) : icon, children), newWindow &&
|
|
118
|
+
}, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
|
|
119
|
+
icon: icon
|
|
120
|
+
}) : icon, children), newWindow && /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
|
|
121
|
+
icon: "open_in_new"
|
|
122
|
+
}));
|
|
119
123
|
});
|
|
120
124
|
var SidenavContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n width: 280px;\n @media (max-width: ", "rem) {\n width: 100vw;\n }\n padding: 2rem 1rem;\n background-color: ", ";\n\n overflow-y: auto;\n overflow-x: hidden;\n ::-webkit-scrollbar {\n width: 2px;\n }\n ::-webkit-scrollbar-track {\n background-color: ", ";\n border-radius: 3px;\n }\n ::-webkit-scrollbar-thumb {\n background-color: ", ";\n border-radius: 3px;\n }\n"])), _variables.responsiveSizes.medium, function (props) {
|
|
121
125
|
return props.theme.backgroundColor;
|
|
@@ -141,7 +145,7 @@ var SidenavTitle = _styledComponents["default"].div(_templateObject2 || (_templa
|
|
|
141
145
|
});
|
|
142
146
|
var Divider = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n width: 100%;\n height: 1px;\n background-color: ", ";\n\n &:last-child {\n display: none;\n }\n"])), _coreTokens["default"].color_grey_400);
|
|
143
147
|
var SidenavGroup = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n a {\n padding: 0.5rem 1.2rem 0.5rem 2.25rem;\n }\n"])));
|
|
144
|
-
var SidenavGroupTitle = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n box-sizing: border-box;\n display: flex;\n align-items: center;\n gap: 0.5rem;\n padding: 0.5rem 1.2rem;\n font-family: ", ";\n font-style: ", ";\n font-weight: ", ";\n font-size: ", ";\n\n
|
|
148
|
+
var SidenavGroupTitle = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n box-sizing: border-box;\n display: flex;\n align-items: center;\n gap: 0.5rem;\n padding: 0.5rem 1.2rem;\n font-family: ", ";\n font-style: ", ";\n font-weight: ", ";\n font-size: ", ";\n span::before {\n font-size: 16px;\n }\n svg {\n height: 16px;\n width: 16px;\n }\n"])), function (props) {
|
|
145
149
|
return props.theme.groupTitleFontFamily;
|
|
146
150
|
}, function (props) {
|
|
147
151
|
return props.theme.groupTitleFontStyle;
|
|
@@ -150,7 +154,7 @@ var SidenavGroupTitle = _styledComponents["default"].span(_templateObject5 || (_
|
|
|
150
154
|
}, function (props) {
|
|
151
155
|
return props.theme.groupTitleFontSize;
|
|
152
156
|
});
|
|
153
|
-
var SidenavGroupTitleButton = _styledComponents["default"].button(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n all: unset;\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n padding: 0.5rem 1.2rem;\n font-family: ", ";\n font-style: ", ";\n font-weight: ", ";\n font-size: ", ";\n cursor: pointer;\n\n ", "\n\n &:focus, &:focus-visible {\n outline: 2px solid ", ";\n outline-offset: -2px;\n }\n &:hover {\n ", "\n }\n &:active {\n color: #fff;\n background-color: ", ";\n }\n\n
|
|
157
|
+
var SidenavGroupTitleButton = _styledComponents["default"].button(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n all: unset;\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n padding: 0.5rem 1.2rem;\n font-family: ", ";\n font-style: ", ";\n font-weight: ", ";\n font-size: ", ";\n cursor: pointer;\n\n ", "\n\n &:focus, &:focus-visible {\n outline: 2px solid ", ";\n outline-offset: -2px;\n }\n &:hover {\n ", "\n }\n &:active {\n color: #fff;\n background-color: ", ";\n }\n span::before {\n font-size: 16px;\n }\n svg {\n height: 16px;\n width: 16px;\n }\n"])), function (props) {
|
|
154
158
|
return props.theme.groupTitleFontFamily;
|
|
155
159
|
}, function (props) {
|
|
156
160
|
return props.theme.groupTitleFontStyle;
|
|
@@ -167,7 +171,7 @@ var SidenavGroupTitleButton = _styledComponents["default"].button(_templateObjec
|
|
|
167
171
|
}, function (props) {
|
|
168
172
|
return props.selectedGroup ? "#333" : props.theme.groupTitleActiveBackgroundColor;
|
|
169
173
|
});
|
|
170
|
-
var SidenavLink = _styledComponents["default"].a(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 0.5rem;\n padding: 0.5rem 1.2rem;\n box-shadow: 0 0 0 2px transparent;\n font-family: ", ";\n font-style: ", ";\n font-weight: ", ";\n font-size: ", ";\n letter-spacing: ", ";\n text-transform: ", ";\n text-decoration: ", ";\n cursor: pointer;\n\n ", "\n\n &:focus, &:focus-visible {\n outline: 2px solid ", ";\n outline-offset: -2px;\n }\n &:hover {\n ", "\n }\n &:active {\n color: #fff;\n background-color: ", ";\n outline: 2px solid #0095ff;\n outline-offset: -2px;\n }\n\n
|
|
174
|
+
var SidenavLink = _styledComponents["default"].a(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 0.5rem;\n padding: 0.5rem 1.2rem;\n box-shadow: 0 0 0 2px transparent;\n font-family: ", ";\n font-style: ", ";\n font-weight: ", ";\n font-size: ", ";\n letter-spacing: ", ";\n text-transform: ", ";\n text-decoration: ", ";\n cursor: pointer;\n\n ", "\n\n &:focus, &:focus-visible {\n outline: 2px solid ", ";\n outline-offset: -2px;\n }\n &:hover {\n ", "\n }\n &:active {\n color: #fff;\n background-color: ", ";\n outline: 2px solid #0095ff;\n outline-offset: -2px;\n }\n span::before {\n font-size: 16px;\n }\n svg {\n height: 16px;\n width: 16px;\n }\n"])), function (props) {
|
|
171
175
|
return props.theme.linkFontFamily;
|
|
172
176
|
}, function (props) {
|
|
173
177
|
return props.theme.linkFontStyle;
|
|
@@ -4,7 +4,7 @@ import DxcSelect from "../select/Select";
|
|
|
4
4
|
import DxcInset from "../inset/Inset";
|
|
5
5
|
import Title from "../../.storybook/components/Title";
|
|
6
6
|
import ExampleContainer from "../../.storybook/components/ExampleContainer";
|
|
7
|
-
import { userEvent, within } from "@storybook/
|
|
7
|
+
import { userEvent, within } from "@storybook/test";
|
|
8
8
|
import { HalstackProvider } from "../HalstackContext";
|
|
9
9
|
|
|
10
10
|
export default {
|
|
@@ -66,15 +66,11 @@ export const Chromatic = () => (
|
|
|
66
66
|
</DxcSidenav.Group>
|
|
67
67
|
</DxcSidenav.Section>
|
|
68
68
|
<DxcSidenav.Section>
|
|
69
|
-
<DxcSidenav.Group
|
|
70
|
-
collapsable={true}
|
|
71
|
-
title="Section Group"
|
|
72
|
-
icon="https://cdn-icons-png.flaticon.com/512/5039/5039041.png"
|
|
73
|
-
>
|
|
69
|
+
<DxcSidenav.Group collapsable={true} title="Section Group" icon="filled_bottom_app_bar">
|
|
74
70
|
<DxcSidenav.Link selected>Group Link</DxcSidenav.Link>
|
|
75
71
|
<DxcSidenav.Link icon={iconSVG}>Group Link</DxcSidenav.Link>
|
|
76
72
|
</DxcSidenav.Group>
|
|
77
|
-
<DxcSidenav.Link icon="
|
|
73
|
+
<DxcSidenav.Link icon="filled_bottom_app_bar" newWindow>
|
|
78
74
|
Single Link
|
|
79
75
|
</DxcSidenav.Link>
|
|
80
76
|
<DxcSidenav.Link newWindow>Single Link</DxcSidenav.Link>
|
|
@@ -98,7 +94,7 @@ export const Chromatic = () => (
|
|
|
98
94
|
<DxcSidenav.Section>
|
|
99
95
|
<DxcSidenav.Link>Single Link</DxcSidenav.Link>
|
|
100
96
|
<DxcSidenav.Group collapsable={true} title="Collapsable Group">
|
|
101
|
-
<DxcSidenav.Link icon="
|
|
97
|
+
<DxcSidenav.Link icon="filled_bottom_app_bar">Group Link</DxcSidenav.Link>
|
|
102
98
|
</DxcSidenav.Group>
|
|
103
99
|
</DxcSidenav.Section>
|
|
104
100
|
<DxcSidenav.Section>
|
|
@@ -278,4 +274,4 @@ CollapsedActiveGroup.play = async ({ canvasElement }) => {
|
|
|
278
274
|
const canvas = within(canvasElement);
|
|
279
275
|
const collapsableGroups = canvas.getAllByText("Collapsed Group");
|
|
280
276
|
userEvent.click(collapsableGroups[0]);
|
|
281
|
-
};
|
|
277
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/sidenav/Sidenav.test.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
4
|
var _react = _interopRequireDefault(require("react"));
|
|
5
5
|
var _react2 = require("@testing-library/react");
|
|
6
|
-
var _Sidenav = _interopRequireDefault(require("./Sidenav
|
|
6
|
+
var _Sidenav = _interopRequireDefault(require("./Sidenav"));
|
|
7
7
|
describe("Sidenav component tests", function () {
|
|
8
8
|
test("Sidenav renders anchors and Section correctly", function () {
|
|
9
9
|
var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Sidenav["default"], null, /*#__PURE__*/_react["default"].createElement(_Sidenav["default"].Section, null, /*#__PURE__*/_react["default"].createElement("p", null, "nav-content-test"), /*#__PURE__*/_react["default"].createElement(_Sidenav["default"].Link, {
|
package/sidenav/types.d.ts
CHANGED
|
@@ -23,7 +23,7 @@ export type SidenavGroupPropsType = {
|
|
|
23
23
|
*/
|
|
24
24
|
collapsable?: boolean;
|
|
25
25
|
/**
|
|
26
|
-
*
|
|
26
|
+
* Material Symbol name or SVG icon to be displayed next to the title of the group.
|
|
27
27
|
*/
|
|
28
28
|
icon?: string | SVG;
|
|
29
29
|
/**
|
|
@@ -41,7 +41,7 @@ export type SidenavLinkPropsType = {
|
|
|
41
41
|
*/
|
|
42
42
|
newWindow?: boolean;
|
|
43
43
|
/**
|
|
44
|
-
*
|
|
44
|
+
* The Material symbol or SVG element used as the icon that will be placed to the left of the link text.
|
|
45
45
|
*/
|
|
46
46
|
icon?: string | SVG;
|
|
47
47
|
/**
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -7,8 +7,8 @@ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/cl
|
|
|
7
7
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
var _react2 = require("@testing-library/react");
|
|
10
|
-
var
|
|
11
|
-
var _Slider = _interopRequireDefault(require("./Slider
|
|
10
|
+
var _axeHelper = require("../../test/accessibility/axe-helper.js");
|
|
11
|
+
var _Slider = _interopRequireDefault(require("./Slider"));
|
|
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("Slider component accessibility tests", function () {
|
|
43
42
|
it("Should not have basic accessibility issues", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
@@ -60,7 +59,7 @@ describe("Slider component accessibility tests", function () {
|
|
|
60
59
|
marks: true
|
|
61
60
|
})), container = _render.container;
|
|
62
61
|
_context.next = 3;
|
|
63
|
-
return (0,
|
|
62
|
+
return (0, _axeHelper.axe)(container);
|
|
64
63
|
case 3:
|
|
65
64
|
results = _context.sent;
|
|
66
65
|
expect(results).toHaveNoViolations();
|
|
@@ -91,7 +90,7 @@ describe("Slider component accessibility tests", function () {
|
|
|
91
90
|
disabled: true
|
|
92
91
|
})), container = _render2.container;
|
|
93
92
|
_context2.next = 3;
|
|
94
|
-
return (0,
|
|
93
|
+
return (0, _axeHelper.axe)(container);
|
|
95
94
|
case 3:
|
|
96
95
|
results = _context2.sent;
|
|
97
96
|
expect(results).toHaveNoViolations();
|
package/slider/Slider.js
CHANGED
|
@@ -15,10 +15,9 @@ var _TextInput = _interopRequireDefault(require("../text-input/TextInput"));
|
|
|
15
15
|
var _variables = require("../common/variables");
|
|
16
16
|
var _utils = require("../common/utils");
|
|
17
17
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
18
|
-
var _uuid = require("uuid");
|
|
19
18
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12;
|
|
20
19
|
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" != _typeof3(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 &&
|
|
20
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof3(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; }
|
|
22
21
|
var DxcSlider = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
23
22
|
var _navigator;
|
|
24
23
|
var _ref$label = _ref.label,
|
|
@@ -49,17 +48,15 @@ var DxcSlider = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
49
48
|
margin = _ref.margin,
|
|
50
49
|
_ref$size = _ref.size,
|
|
51
50
|
size = _ref$size === void 0 ? "fillParent" : _ref$size;
|
|
52
|
-
var
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
51
|
+
var labelId = "label-".concat((0, _react.useId)());
|
|
52
|
+
var _useState = (0, _react.useState)(defaultValue !== null && defaultValue !== void 0 ? defaultValue : 0),
|
|
53
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
54
|
+
innerValue = _useState2[0],
|
|
55
|
+
setInnerValue = _useState2[1];
|
|
56
|
+
var _useState3 = (0, _react.useState)(false),
|
|
56
57
|
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
var _useState5 = (0, _react.useState)(false),
|
|
60
|
-
_useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
|
|
61
|
-
dragging = _useState6[0],
|
|
62
|
-
setDragging = _useState6[1];
|
|
58
|
+
dragging = _useState4[0],
|
|
59
|
+
setDragging = _useState4[1];
|
|
63
60
|
var colorsTheme = (0, _useTheme["default"])();
|
|
64
61
|
var isFirefox = ((_navigator = navigator) === null || _navigator === void 0 ? void 0 : _navigator.userAgent.indexOf("Firefox")) !== -1;
|
|
65
62
|
var minLabel = (0, _react.useMemo)(function () {
|
|
@@ -78,7 +75,8 @@ var DxcSlider = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
78
75
|
ticks.push( /*#__PURE__*/_react["default"].createElement(TickMark, {
|
|
79
76
|
disabled: disabled,
|
|
80
77
|
stepPosition: step * index / range,
|
|
81
|
-
stepValue: (value !== null && value !== void 0 ? value : innerValue) / maxValue
|
|
78
|
+
stepValue: (value !== null && value !== void 0 ? value : innerValue) / maxValue,
|
|
79
|
+
key: "tickmark-".concat(index, "-").concat(labelId)
|
|
82
80
|
}));
|
|
83
81
|
index++;
|
|
84
82
|
}
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import DxcSlider from "./Slider";
|
|
3
|
+
import Title from "../../.storybook/components/Title";
|
|
4
|
+
import ExampleContainer from "../../.storybook/components/ExampleContainer";
|
|
5
|
+
import { HalstackProvider } from "../HalstackContext";
|
|
6
|
+
|
|
7
|
+
export default {
|
|
8
|
+
title: "Slider",
|
|
9
|
+
component: DxcSlider,
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
const labelFormat = (value) => `${value}E100000000000000000000000`;
|
|
13
|
+
|
|
14
|
+
const opinionatedTheme = {
|
|
15
|
+
slider: {
|
|
16
|
+
baseColor: "#0067b3",
|
|
17
|
+
fontColor: "#000000",
|
|
18
|
+
totalLineColor: "#e6e6e6",
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
export const Chromatic = () => (
|
|
23
|
+
<>
|
|
24
|
+
<Title title="States" theme="light" level={2} />
|
|
25
|
+
<ExampleContainer pseudoState="pseudo-hover">
|
|
26
|
+
<Title title="Hovered" theme="light" level={4} />
|
|
27
|
+
<DxcSlider label="Slider" helperText="Help message" showLimitsValues />
|
|
28
|
+
</ExampleContainer>
|
|
29
|
+
<ExampleContainer pseudoState="pseudo-active">
|
|
30
|
+
<Title title="Active" theme="light" level={4} />
|
|
31
|
+
<DxcSlider label="Slider" helperText="Help message" showLimitsValues />
|
|
32
|
+
</ExampleContainer>
|
|
33
|
+
<ExampleContainer pseudoState="pseudo-focus">
|
|
34
|
+
<Title title="Focused" theme="light" level={4} />
|
|
35
|
+
<DxcSlider label="Slider" helperText="Help message" showLimitsValues />
|
|
36
|
+
</ExampleContainer>
|
|
37
|
+
<ExampleContainer>
|
|
38
|
+
<Title title="Disabled" theme="light" level={4} />
|
|
39
|
+
<DxcSlider label="Slider" helperText="Help message" disabled showLimitsValues />
|
|
40
|
+
</ExampleContainer>
|
|
41
|
+
<ExampleContainer>
|
|
42
|
+
<Title title="Disabled discrete slider with input" theme="light" level={4} />
|
|
43
|
+
<DxcSlider
|
|
44
|
+
label="Slider"
|
|
45
|
+
helperText="Help message"
|
|
46
|
+
disabled
|
|
47
|
+
defaultValue={40}
|
|
48
|
+
minValue={0}
|
|
49
|
+
maxValue={50}
|
|
50
|
+
showLimitsValues
|
|
51
|
+
showInput
|
|
52
|
+
marks
|
|
53
|
+
step={10}
|
|
54
|
+
/>
|
|
55
|
+
</ExampleContainer>
|
|
56
|
+
<Title title="Variants" theme="light" level={2} />
|
|
57
|
+
<ExampleContainer>
|
|
58
|
+
<Title title="Continuous slider" theme="light" level={4} />
|
|
59
|
+
<DxcSlider defaultValue={65} label="Slider" helperText="Help message" showLimitsValues />
|
|
60
|
+
</ExampleContainer>
|
|
61
|
+
<ExampleContainer>
|
|
62
|
+
<Title title="Discrete slider" theme="light" level={4} />
|
|
63
|
+
<DxcSlider defaultValue={20} label="Slider" helperText="Help message" showLimitsValues marks step={5} />
|
|
64
|
+
</ExampleContainer>
|
|
65
|
+
<ExampleContainer>
|
|
66
|
+
<Title title="Discrete slider with input" theme="light" level={4} />
|
|
67
|
+
<DxcSlider
|
|
68
|
+
defaultValue={20}
|
|
69
|
+
minValue={0}
|
|
70
|
+
maxValue={50}
|
|
71
|
+
label="Slider"
|
|
72
|
+
helperText="Help message"
|
|
73
|
+
showLimitsValues
|
|
74
|
+
showInput
|
|
75
|
+
marks
|
|
76
|
+
step={10}
|
|
77
|
+
/>
|
|
78
|
+
</ExampleContainer>
|
|
79
|
+
<Title title="Margins" theme="light" level={2} />
|
|
80
|
+
<ExampleContainer>
|
|
81
|
+
<Title title="Xxsmall" theme="light" level={4} />
|
|
82
|
+
<DxcSlider label="Xxsmall" margin="xxsmall" />
|
|
83
|
+
</ExampleContainer>
|
|
84
|
+
<ExampleContainer>
|
|
85
|
+
<Title title="Xsmall" theme="light" level={4} />
|
|
86
|
+
<DxcSlider label="Xsmall" margin="xsmall" />
|
|
87
|
+
</ExampleContainer>
|
|
88
|
+
<ExampleContainer>
|
|
89
|
+
<Title title="Small" theme="light" level={4} />
|
|
90
|
+
<DxcSlider label="Small" margin="small" />
|
|
91
|
+
</ExampleContainer>
|
|
92
|
+
<ExampleContainer>
|
|
93
|
+
<Title title="Medium" theme="light" level={4} />
|
|
94
|
+
<DxcSlider label="Medium" margin="medium" />
|
|
95
|
+
</ExampleContainer>
|
|
96
|
+
<ExampleContainer>
|
|
97
|
+
<Title title="Large" theme="light" level={4} />
|
|
98
|
+
<DxcSlider label="Large" margin="large" />
|
|
99
|
+
</ExampleContainer>
|
|
100
|
+
<ExampleContainer>
|
|
101
|
+
<Title title="Xlarge" theme="light" level={4} />
|
|
102
|
+
<DxcSlider label="Xlarge" margin="xlarge" />
|
|
103
|
+
</ExampleContainer>
|
|
104
|
+
<ExampleContainer>
|
|
105
|
+
<Title title="Xxlarge" theme="light" level={4} />
|
|
106
|
+
<DxcSlider label="Xxlarge" margin="xxlarge" />
|
|
107
|
+
</ExampleContainer>
|
|
108
|
+
<Title title="Sizes" theme="light" level={2} />
|
|
109
|
+
<ExampleContainer>
|
|
110
|
+
<Title title="Medium" theme="light" level={4} />
|
|
111
|
+
<DxcSlider label="Medium" size="medium" />
|
|
112
|
+
</ExampleContainer>
|
|
113
|
+
<ExampleContainer>
|
|
114
|
+
<Title title="Large" theme="light" level={4} />
|
|
115
|
+
<DxcSlider label="Large" size="large" />
|
|
116
|
+
</ExampleContainer>
|
|
117
|
+
<ExampleContainer>
|
|
118
|
+
<Title title="FillParent" theme="light" level={4} />
|
|
119
|
+
<DxcSlider label="FillParent" size="fillParent" />
|
|
120
|
+
</ExampleContainer>
|
|
121
|
+
<ExampleContainer>
|
|
122
|
+
<Title title="Large limit values labels" theme="light" level={4} />
|
|
123
|
+
<DxcSlider
|
|
124
|
+
label="Slider"
|
|
125
|
+
helperText="Help message"
|
|
126
|
+
showLimitsValues
|
|
127
|
+
labelFormatCallback={labelFormat}
|
|
128
|
+
size="large"
|
|
129
|
+
/>
|
|
130
|
+
</ExampleContainer>
|
|
131
|
+
<Title title="Opinionated theme" theme="light" level={2} />
|
|
132
|
+
<ExampleContainer pseudoState="pseudo-hover">
|
|
133
|
+
<Title title="Hovered" theme="light" level={4} />
|
|
134
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
135
|
+
<DxcSlider label="Slider" helperText="Help message" showLimitsValues />
|
|
136
|
+
</HalstackProvider>
|
|
137
|
+
</ExampleContainer>
|
|
138
|
+
<ExampleContainer pseudoState="pseudo-active">
|
|
139
|
+
<Title title="Active" theme="light" level={4} />
|
|
140
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
141
|
+
<DxcSlider label="Slider" helperText="Help message" showLimitsValues />
|
|
142
|
+
</HalstackProvider>
|
|
143
|
+
</ExampleContainer>
|
|
144
|
+
<ExampleContainer pseudoState="pseudo-focus">
|
|
145
|
+
<Title title="Focused" theme="light" level={4} />
|
|
146
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
147
|
+
<DxcSlider label="Slider" helperText="Help message" showLimitsValues />
|
|
148
|
+
</HalstackProvider>
|
|
149
|
+
</ExampleContainer>
|
|
150
|
+
<ExampleContainer>
|
|
151
|
+
<Title title="Disabled discrete slider with input" theme="light" level={4} />{" "}
|
|
152
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
153
|
+
<DxcSlider
|
|
154
|
+
label="Slider"
|
|
155
|
+
helperText="Help message"
|
|
156
|
+
disabled
|
|
157
|
+
defaultValue={40}
|
|
158
|
+
minValue={0}
|
|
159
|
+
maxValue={50}
|
|
160
|
+
showLimitsValues
|
|
161
|
+
showInput
|
|
162
|
+
marks
|
|
163
|
+
step={10}
|
|
164
|
+
/>
|
|
165
|
+
</HalstackProvider>
|
|
166
|
+
</ExampleContainer>
|
|
167
|
+
<ExampleContainer>
|
|
168
|
+
<Title title="Continuous slider" theme="light" level={4} />
|
|
169
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
170
|
+
<DxcSlider defaultValue={65} label="Slider" helperText="Help message" showLimitsValues />
|
|
171
|
+
</HalstackProvider>
|
|
172
|
+
</ExampleContainer>
|
|
173
|
+
<ExampleContainer>
|
|
174
|
+
<Title title="Discrete slider" theme="light" level={4} />
|
|
175
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
176
|
+
<DxcSlider defaultValue={20} label="Slider" helperText="Help message" showLimitsValues marks step={5} />
|
|
177
|
+
</HalstackProvider>
|
|
178
|
+
</ExampleContainer>
|
|
179
|
+
</>
|
|
180
|
+
);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/slider/Slider.test.js
CHANGED
|
@@ -6,7 +6,7 @@ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/creat
|
|
|
6
6
|
var _react = _interopRequireDefault(require("react"));
|
|
7
7
|
var _react2 = require("@testing-library/react");
|
|
8
8
|
var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
|
|
9
|
-
var _Slider = _interopRequireDefault(require("./Slider
|
|
9
|
+
var _Slider = _interopRequireDefault(require("./Slider"));
|
|
10
10
|
// Mocking DOMRect for Radix Primitive Popover
|
|
11
11
|
global.globalThis = global;
|
|
12
12
|
global.DOMRect = {
|
|
@@ -25,7 +25,7 @@ global.ResizeObserver = /*#__PURE__*/function () {
|
|
|
25
25
|
function ResizeObserver() {
|
|
26
26
|
(0, _classCallCheck2["default"])(this, ResizeObserver);
|
|
27
27
|
}
|
|
28
|
-
(0, _createClass2["default"])(ResizeObserver, [{
|
|
28
|
+
return (0, _createClass2["default"])(ResizeObserver, [{
|
|
29
29
|
key: "observe",
|
|
30
30
|
value: function observe() {}
|
|
31
31
|
}, {
|
|
@@ -35,7 +35,6 @@ global.ResizeObserver = /*#__PURE__*/function () {
|
|
|
35
35
|
key: "disconnect",
|
|
36
36
|
value: function disconnect() {}
|
|
37
37
|
}]);
|
|
38
|
-
return ResizeObserver;
|
|
39
38
|
}();
|
|
40
39
|
describe("Slider component tests", function () {
|
|
41
40
|
test("Slider renders with correct text and label id", function () {
|
|
@@ -101,10 +100,11 @@ describe("Slider component tests", function () {
|
|
|
101
100
|
showInput: true
|
|
102
101
|
})),
|
|
103
102
|
getByRole = _render4.getByRole;
|
|
103
|
+
var input = getByRole("textbox");
|
|
104
104
|
expect(getByRole("slider").getAttribute("aria-valuenow")).toBe("13");
|
|
105
|
-
expect(
|
|
105
|
+
expect(input.value).toBe("13");
|
|
106
106
|
(0, _react2.act)(function () {
|
|
107
|
-
_react2.fireEvent.change(
|
|
107
|
+
_react2.fireEvent.change(input, {
|
|
108
108
|
target: {
|
|
109
109
|
value: 25
|
|
110
110
|
}
|
|
@@ -112,7 +112,7 @@ describe("Slider component tests", function () {
|
|
|
112
112
|
});
|
|
113
113
|
expect(onChange).toHaveBeenCalledWith(25);
|
|
114
114
|
expect(getByRole("slider").getAttribute("aria-valuenow")).toBe("13");
|
|
115
|
-
expect(
|
|
115
|
+
expect(input.value).toBe("13");
|
|
116
116
|
});
|
|
117
117
|
test("Calls correct function onChange in uncontrolled slider", function () {
|
|
118
118
|
var onChange = jest.fn();
|
|
@@ -124,8 +124,9 @@ describe("Slider component tests", function () {
|
|
|
124
124
|
showInput: true
|
|
125
125
|
})),
|
|
126
126
|
getByRole = _render5.getByRole;
|
|
127
|
+
var input = getByRole("textbox");
|
|
127
128
|
(0, _react2.act)(function () {
|
|
128
|
-
_react2.fireEvent.change(
|
|
129
|
+
_react2.fireEvent.change(input, {
|
|
129
130
|
target: {
|
|
130
131
|
value: 25
|
|
131
132
|
}
|
|
@@ -133,7 +134,7 @@ describe("Slider component tests", function () {
|
|
|
133
134
|
});
|
|
134
135
|
expect(onChange).toHaveBeenCalledWith(25);
|
|
135
136
|
expect(getByRole("slider").getAttribute("aria-valuenow")).toBe("25");
|
|
136
|
-
expect(
|
|
137
|
+
expect(input.value).toBe("25");
|
|
137
138
|
});
|
|
138
139
|
test("Disabled slider have disabled input and slider", function () {
|
|
139
140
|
var onChange = jest.fn();
|
|
@@ -147,15 +148,16 @@ describe("Slider component tests", function () {
|
|
|
147
148
|
value: 13
|
|
148
149
|
})),
|
|
149
150
|
getByRole = _render6.getByRole;
|
|
151
|
+
var input = getByRole("textbox");
|
|
150
152
|
(0, _react2.act)(function () {
|
|
151
|
-
_react2.fireEvent.change(
|
|
153
|
+
_react2.fireEvent.change(input, {
|
|
152
154
|
target: {
|
|
153
155
|
value: 25
|
|
154
156
|
}
|
|
155
157
|
});
|
|
156
158
|
});
|
|
157
|
-
expect(
|
|
158
|
-
expect(
|
|
159
|
+
expect(input.hasAttribute("disabled")).toBeTruthy();
|
|
160
|
+
expect(input.value).toBe("13");
|
|
159
161
|
expect(getByRole("slider").hasAttribute("disabled")).toBeTruthy();
|
|
160
162
|
});
|
|
161
163
|
test("Calls correct function onDragEnd when it is uncontrolled", function () {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -5,9 +5,9 @@ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"))
|
|
|
5
5
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
6
6
|
var _react = _interopRequireDefault(require("react"));
|
|
7
7
|
var _react2 = require("@testing-library/react");
|
|
8
|
-
var
|
|
9
|
-
var _Spinner = _interopRequireDefault(require("./Spinner
|
|
10
|
-
var _Flex = _interopRequireDefault(require("../flex/Flex
|
|
8
|
+
var _axeHelper = require("../../test/accessibility/axe-helper.js");
|
|
9
|
+
var _Spinner = _interopRequireDefault(require("./Spinner"));
|
|
10
|
+
var _Flex = _interopRequireDefault(require("../flex/Flex"));
|
|
11
11
|
describe("Spinner component accessibility tests", function () {
|
|
12
12
|
it("Should not have basic accessibility issues for overlay mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
13
13
|
var _render, container, results;
|
|
@@ -27,7 +27,7 @@ describe("Spinner component accessibility tests", function () {
|
|
|
27
27
|
value: 50
|
|
28
28
|
}))), container = _render.container;
|
|
29
29
|
_context.next = 3;
|
|
30
|
-
return (0,
|
|
30
|
+
return (0, _axeHelper.axe)(container);
|
|
31
31
|
case 3:
|
|
32
32
|
results = _context.sent;
|
|
33
33
|
expect(results).toHaveNoViolations();
|
|
@@ -55,7 +55,7 @@ describe("Spinner component accessibility tests", function () {
|
|
|
55
55
|
value: 50
|
|
56
56
|
}))), container = _render2.container;
|
|
57
57
|
_context2.next = 3;
|
|
58
|
-
return (0,
|
|
58
|
+
return (0, _axeHelper.axe)(container);
|
|
59
59
|
case 3:
|
|
60
60
|
results = _context2.sent;
|
|
61
61
|
expect(results).toHaveNoViolations();
|
|
@@ -83,7 +83,7 @@ describe("Spinner component accessibility tests", function () {
|
|
|
83
83
|
value: 50
|
|
84
84
|
}))), container = _render3.container;
|
|
85
85
|
_context3.next = 3;
|
|
86
|
-
return (0,
|
|
86
|
+
return (0, _axeHelper.axe)(container);
|
|
87
87
|
case 3:
|
|
88
88
|
results = _context3.sent;
|
|
89
89
|
expect(results).toHaveNoViolations();
|
package/spinner/Spinner.js
CHANGED
|
@@ -14,7 +14,7 @@ var _variables = require("../common/variables");
|
|
|
14
14
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
15
15
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12;
|
|
16
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" != _typeof3(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 &&
|
|
17
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof3(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; }
|
|
18
18
|
var DxcSpinner = function DxcSpinner(_ref) {
|
|
19
19
|
var _ref$label = _ref.label,
|
|
20
20
|
label = _ref$label === void 0 ? "" : _ref$label,
|
|
@@ -47,7 +47,11 @@ var DxcSpinner = function DxcSpinner(_ref) {
|
|
|
47
47
|
r: "6",
|
|
48
48
|
mode: mode
|
|
49
49
|
}))), value >= 0 && value <= 100 ? /*#__PURE__*/_react["default"].createElement(Spinner, {
|
|
50
|
-
role: "progressbar"
|
|
50
|
+
role: "progressbar",
|
|
51
|
+
"aria-valuenow": showValue ? value : undefined,
|
|
52
|
+
"aria-valuemin": 0,
|
|
53
|
+
"aria-valuemax": 100,
|
|
54
|
+
"aria-label": label || "Spinner"
|
|
51
55
|
}, mode !== "small" && /*#__PURE__*/_react["default"].createElement(SVGSpinner, {
|
|
52
56
|
viewBox: "0 0 140 140",
|
|
53
57
|
isDeterminated: true
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|