@dxc-technology/halstack-react 0.0.0-c293b72 → 0.0.0-c2b6ec9
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.test.d.ts +1 -0
- package/badge/Badge.test.js +2 -2
- 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 +27 -21
- 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 +1 -1
- 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.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 +3 -8
- package/file-input/FileInput.test.d.ts +1 -0
- package/file-input/FileInput.test.js +44 -22
- package/file-input/FileItem.js +6 -2
- 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 +1 -1
- package/footer/Footer.stories.tsx +12 -0
- package/footer/Footer.test.d.ts +1 -0
- package/footer/Footer.test.js +1 -1
- package/footer/Icons.js +2 -30
- 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 +3 -2
- 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/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 +1 -1
- package/link/Link.stories.tsx +2 -2
- package/link/Link.test.d.ts +1 -0
- package/link/Link.test.js +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 +3 -3
- package/nav-tabs/NavTabs.js +19 -4
- package/nav-tabs/NavTabs.stories.tsx +18 -3
- package/nav-tabs/NavTabs.test.d.ts +1 -0
- package/nav-tabs/NavTabs.test.js +9 -7
- package/nav-tabs/Tab.js +7 -7
- 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 -7
- 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 +3 -2
- package/resultset-table/ResultsetTable.stories.tsx +13 -1
- package/resultset-table/ResultsetTable.test.d.ts +1 -0
- package/resultset-table/ResultsetTable.test.js +2 -4
- package/select/Listbox.js +19 -13
- package/select/Option.js +2 -1
- package/select/Select.accessibility.test.d.ts +1 -0
- package/select/Select.accessibility.test.js +18 -8
- package/select/Select.js +25 -21
- package/select/Select.stories.tsx +36 -15
- package/select/Select.test.d.ts +1 -0
- package/select/Select.test.js +42 -51
- package/sidenav/Sidenav.accessibility.test.d.ts +1 -0
- package/sidenav/Sidenav.accessibility.test.js +3 -3
- package/sidenav/Sidenav.js +1 -1
- package/sidenav/Sidenav.stories.tsx +1 -1
- package/sidenav/Sidenav.test.d.ts +1 -0
- package/sidenav/Sidenav.test.js +1 -1
- 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 +1 -1
- package/tabs/Tabs.accessibility.test.d.ts +1 -0
- package/tabs/Tabs.accessibility.test.js +3 -3
- package/tabs/Tabs.js +1 -1
- package/tabs/Tabs.stories.tsx +7 -1
- package/tabs/Tabs.test.d.ts +1 -0
- package/tabs/Tabs.test.js +1 -1
- package/tag/Tag.accessibility.test.d.ts +1 -0
- package/tag/Tag.accessibility.test.js +4 -4
- package/tag/Tag.js +1 -1
- package/tag/Tag.stories.tsx +1 -1
- package/tag/Tag.test.d.ts +1 -0
- package/tag/Tag.test.js +1 -1
- 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 +6 -9
- package/toggle-group/ToggleGroup.stories.tsx +1 -1
- package/toggle-group/ToggleGroup.test.d.ts +1 -0
- package/toggle-group/ToggleGroup.test.js +1 -1
- 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 +1 -9
- package/wizard/Wizard.stories.tsx +1 -1
- package/wizard/Wizard.test.d.ts +1 -0
- package/wizard/Wizard.test.js +1 -1
- package/contextual-menu/MenuItemAction.d.ts +0 -4
- package/contextual-menu/MenuItemAction.js +0 -46
- package/paginator/Icons.d.ts +0 -5
- package/paginator/Icons.js +0 -40
package/tag/Tag.js
CHANGED
|
@@ -18,7 +18,7 @@ var _Box = _interopRequireDefault(require("../box/Box"));
|
|
|
18
18
|
var _Icon = _interopRequireDefault(require("../icon/Icon"));
|
|
19
19
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
|
|
20
20
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
21
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _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 &&
|
|
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 && {}.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
22
|
var DxcTag = function DxcTag(_ref) {
|
|
23
23
|
var icon = _ref.icon,
|
|
24
24
|
_ref$label = _ref.label,
|
package/tag/Tag.stories.tsx
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { userEvent, within } from "@storybook/
|
|
2
|
+
import { userEvent, within } from "@storybook/test";
|
|
3
3
|
import Title from "../../.storybook/components/Title";
|
|
4
4
|
import ExampleContainer from "../../.storybook/components/ExampleContainer";
|
|
5
5
|
import DxcTag from "./Tag";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/tag/Tag.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 _Tag = _interopRequireDefault(require("./Tag
|
|
6
|
+
var _Tag = _interopRequireDefault(require("./Tag"));
|
|
7
7
|
describe("Tag component tests", function () {
|
|
8
8
|
test("Tag renders with correct label", function () {
|
|
9
9
|
var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Tag["default"], {
|
package/text-input/Suggestion.js
CHANGED
|
@@ -11,7 +11,7 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
11
11
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
12
12
|
var _templateObject, _templateObject2;
|
|
13
13
|
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); }
|
|
14
|
-
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 &&
|
|
14
|
+
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; }
|
|
15
15
|
var transformSpecialChars = function transformSpecialChars(str) {
|
|
16
16
|
var specialCharsRegex = /[\\*()\[\]{}+?/]/;
|
|
17
17
|
var value = str;
|
|
@@ -14,7 +14,7 @@ var _Suggestion = _interopRequireDefault(require("./Suggestion"));
|
|
|
14
14
|
var _Icon = _interopRequireDefault(require("../icon/Icon"));
|
|
15
15
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4;
|
|
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" != _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 &&
|
|
17
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
18
18
|
var Suggestions = function Suggestions(_ref) {
|
|
19
19
|
var id = _ref.id,
|
|
20
20
|
value = _ref.value,
|
|
@@ -43,11 +43,12 @@ var Suggestions = function Suggestions(_ref) {
|
|
|
43
43
|
},
|
|
44
44
|
ref: listboxRef,
|
|
45
45
|
role: "listbox",
|
|
46
|
-
style: styles
|
|
46
|
+
style: styles,
|
|
47
|
+
"aria-label": "Suggestions"
|
|
47
48
|
}, !isSearching && !searchHasErrors && suggestions.length > 0 && suggestions.map(function (suggestion, index) {
|
|
48
49
|
return /*#__PURE__*/_react["default"].createElement(_Suggestion["default"], {
|
|
49
|
-
key: "suggestion-".concat(index),
|
|
50
|
-
id: "suggestion-".concat(index),
|
|
50
|
+
key: "".concat(id, "-suggestion-").concat(index),
|
|
51
|
+
id: "".concat(id, "-suggestion-").concat(index),
|
|
51
52
|
value: value,
|
|
52
53
|
onClick: suggestionOnClick,
|
|
53
54
|
suggestion: suggestion,
|
|
@@ -55,9 +56,16 @@ var Suggestions = function Suggestions(_ref) {
|
|
|
55
56
|
visuallyFocused: visualFocusIndex === index,
|
|
56
57
|
highlighted: highlightedSuggestions
|
|
57
58
|
});
|
|
58
|
-
}), isSearching && /*#__PURE__*/_react["default"].createElement(SuggestionsSystemMessage,
|
|
59
|
+
}), isSearching && /*#__PURE__*/_react["default"].createElement(SuggestionsSystemMessage, {
|
|
60
|
+
role: "option"
|
|
61
|
+
}, translatedLabels.textInput.searchingMessage), searchHasErrors && /*#__PURE__*/_react["default"].createElement("span", {
|
|
62
|
+
role: "option"
|
|
63
|
+
}, /*#__PURE__*/_react["default"].createElement(SuggestionsError, {
|
|
64
|
+
role: "alert",
|
|
65
|
+
"aria-live": "assertive"
|
|
66
|
+
}, /*#__PURE__*/_react["default"].createElement(SuggestionsErrorIcon, null, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
|
|
59
67
|
icon: "filled_error"
|
|
60
|
-
})), translatedLabels.textInput.fetchingDataErrorMessage));
|
|
68
|
+
})), translatedLabels.textInput.fetchingDataErrorMessage)));
|
|
61
69
|
};
|
|
62
70
|
var SuggestionsContainer = _styledComponents["default"].ul(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n box-sizing: border-box;\n max-height: 304px;\n overflow-y: auto;\n margin: 0;\n padding: 0.25rem 0;\n background-color: ", ";\n border: 1px solid\n ", ";\n\n border-radius: 0.25rem;\n box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n"])), function (props) {
|
|
63
71
|
return props.error ? props.theme.errorListDialogBackgroundColor : props.theme.listDialogBackgroundColor;
|
|
@@ -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 _TextInput = _interopRequireDefault(require("./TextInput
|
|
10
|
+
var _axeHelper = require("../../test/accessibility/axe-helper.js");
|
|
11
|
+
var _TextInput = _interopRequireDefault(require("./TextInput"));
|
|
12
12
|
var countries = ["Afghanistan", "Albania", "Algeria", "Andorra", "Angola", "Antigua and Barbuda", "Bahamas", "Bahrain", "Bangladesh", "Barbados", "Cabo Verde", "Cambodia", "Cameroon", "Canada", "Cayman Islands, The", "Central African Republic", "Chad", "Democratic Republic of the Congo", "Dominican Republic", "Dominica", "Denmark", "Djibouti"];
|
|
13
13
|
var action = {
|
|
14
14
|
onClick: function onClick() {},
|
|
@@ -45,7 +45,7 @@ global.ResizeObserver = /*#__PURE__*/function () {
|
|
|
45
45
|
function ResizeObserver() {
|
|
46
46
|
(0, _classCallCheck2["default"])(this, ResizeObserver);
|
|
47
47
|
}
|
|
48
|
-
(0, _createClass2["default"])(ResizeObserver, [{
|
|
48
|
+
return (0, _createClass2["default"])(ResizeObserver, [{
|
|
49
49
|
key: "observe",
|
|
50
50
|
value: function observe() {}
|
|
51
51
|
}, {
|
|
@@ -55,7 +55,6 @@ global.ResizeObserver = /*#__PURE__*/function () {
|
|
|
55
55
|
key: "disconnect",
|
|
56
56
|
value: function disconnect() {}
|
|
57
57
|
}]);
|
|
58
|
-
return ResizeObserver;
|
|
59
58
|
}();
|
|
60
59
|
describe("TextInput component accessibility tests", function () {
|
|
61
60
|
it("Should not have basic accessibility issues", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
@@ -80,7 +79,7 @@ describe("TextInput component accessibility tests", function () {
|
|
|
80
79
|
clearable: true
|
|
81
80
|
})), baseElement = _render.baseElement;
|
|
82
81
|
_context.next = 3;
|
|
83
|
-
return (0,
|
|
82
|
+
return (0, _axeHelper.axe)(baseElement);
|
|
84
83
|
case 3:
|
|
85
84
|
results = _context.sent;
|
|
86
85
|
expect(results).toHaveNoViolations();
|
|
@@ -113,7 +112,7 @@ describe("TextInput component accessibility tests", function () {
|
|
|
113
112
|
autocomplete: "on"
|
|
114
113
|
})), baseElement = _render2.baseElement;
|
|
115
114
|
_context2.next = 3;
|
|
116
|
-
return (0,
|
|
115
|
+
return (0, _axeHelper.axe)(baseElement);
|
|
117
116
|
case 3:
|
|
118
117
|
results = _context2.sent;
|
|
119
118
|
expect(results).toHaveNoViolations();
|
|
@@ -146,7 +145,7 @@ describe("TextInput component accessibility tests", function () {
|
|
|
146
145
|
suggestions: countries
|
|
147
146
|
})), baseElement = _render3.baseElement;
|
|
148
147
|
_context3.next = 3;
|
|
149
|
-
return (0,
|
|
148
|
+
return (0, _axeHelper.axe)(baseElement);
|
|
150
149
|
case 3:
|
|
151
150
|
results = _context3.sent;
|
|
152
151
|
expect(results).toHaveNoViolations();
|
|
@@ -179,7 +178,7 @@ describe("TextInput component accessibility tests", function () {
|
|
|
179
178
|
pattern: "^.*(?=.*[a-zA-Z])(?=.*\\d)(?=.*[!&$%&? \"]).*$"
|
|
180
179
|
})), baseElement = _render4.baseElement;
|
|
181
180
|
_context4.next = 3;
|
|
182
|
-
return (0,
|
|
181
|
+
return (0, _axeHelper.axe)(baseElement);
|
|
183
182
|
case 3:
|
|
184
183
|
results = _context4.sent;
|
|
185
184
|
expect(results).toHaveNoViolations();
|
|
@@ -212,7 +211,7 @@ describe("TextInput component accessibility tests", function () {
|
|
|
212
211
|
optional: true
|
|
213
212
|
})), baseElement = _render5.baseElement;
|
|
214
213
|
_context5.next = 3;
|
|
215
|
-
return (0,
|
|
214
|
+
return (0, _axeHelper.axe)(baseElement);
|
|
216
215
|
case 3:
|
|
217
216
|
results = _context5.sent;
|
|
218
217
|
expect(results).toHaveNoViolations();
|
|
@@ -245,7 +244,7 @@ describe("TextInput component accessibility tests", function () {
|
|
|
245
244
|
clearable: true
|
|
246
245
|
})), baseElement = _render6.baseElement;
|
|
247
246
|
_context6.next = 3;
|
|
248
|
-
return (0,
|
|
247
|
+
return (0, _axeHelper.axe)(baseElement);
|
|
249
248
|
case 3:
|
|
250
249
|
results = _context6.sent;
|
|
251
250
|
expect(results).toHaveNoViolations();
|
|
@@ -277,7 +276,7 @@ describe("TextInput component accessibility tests", function () {
|
|
|
277
276
|
readOnly: true
|
|
278
277
|
})), baseElement = _render7.baseElement;
|
|
279
278
|
_context7.next = 3;
|
|
280
|
-
return (0,
|
|
279
|
+
return (0, _axeHelper.axe)(baseElement);
|
|
281
280
|
case 3:
|
|
282
281
|
results = _context7.sent;
|
|
283
282
|
expect(results).toHaveNoViolations();
|
|
@@ -308,7 +307,7 @@ describe("TextInput component accessibility tests", function () {
|
|
|
308
307
|
disabled: true
|
|
309
308
|
})), baseElement = _render8.baseElement;
|
|
310
309
|
_context8.next = 3;
|
|
311
|
-
return (0,
|
|
310
|
+
return (0, _axeHelper.axe)(baseElement);
|
|
312
311
|
case 3:
|
|
313
312
|
results = _context8.sent;
|
|
314
313
|
expect(results).toHaveNoViolations();
|
package/text-input/TextInput.js
CHANGED
|
@@ -17,14 +17,13 @@ var _variables = require("../common/variables");
|
|
|
17
17
|
var _utils = require("../common/utils");
|
|
18
18
|
var _Suggestions = _interopRequireDefault(require("./Suggestions"));
|
|
19
19
|
var Popover = _interopRequireWildcard(require("@radix-ui/react-popover"));
|
|
20
|
-
var _uuid = require("uuid");
|
|
21
20
|
var _ActionIcon = _interopRequireDefault(require("../action-icon/ActionIcon"));
|
|
22
21
|
var _Flex = _interopRequireDefault(require("../flex/Flex"));
|
|
23
22
|
var _NumberInputContext = require("../number-input/NumberInputContext");
|
|
24
23
|
var _Icon = _interopRequireDefault(require("../icon/Icon"));
|
|
25
24
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10;
|
|
26
25
|
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); }
|
|
27
|
-
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 &&
|
|
26
|
+
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; }
|
|
28
27
|
var sizes = {
|
|
29
28
|
small: "240px",
|
|
30
29
|
medium: "360px",
|
|
@@ -132,35 +131,33 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref2, re
|
|
|
132
131
|
size = _ref2$size === void 0 ? "medium" : _ref2$size,
|
|
133
132
|
_ref2$tabIndex = _ref2.tabIndex,
|
|
134
133
|
tabIndex = _ref2$tabIndex === void 0 ? 0 : _ref2$tabIndex;
|
|
135
|
-
var
|
|
136
|
-
_useState4 = (0, _slicedToArray2["default"])(_useState3, 1),
|
|
137
|
-
inputId = _useState4[0];
|
|
134
|
+
var inputId = "input-".concat((0, _react.useId)());
|
|
138
135
|
var autosuggestId = "suggestions-".concat(inputId);
|
|
139
136
|
var errorId = "error-".concat(inputId);
|
|
140
|
-
var
|
|
137
|
+
var _useState3 = (0, _react.useState)(defaultValue),
|
|
138
|
+
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
139
|
+
innerValue = _useState4[0],
|
|
140
|
+
setInnerValue = _useState4[1];
|
|
141
|
+
var _useState5 = (0, _react.useState)(false),
|
|
141
142
|
_useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
|
|
142
|
-
|
|
143
|
-
|
|
143
|
+
isOpen = _useState6[0],
|
|
144
|
+
changeIsOpen = _useState6[1];
|
|
144
145
|
var _useState7 = (0, _react.useState)(false),
|
|
145
146
|
_useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
|
|
146
|
-
|
|
147
|
-
|
|
147
|
+
isSearching = _useState8[0],
|
|
148
|
+
changeIsSearching = _useState8[1];
|
|
148
149
|
var _useState9 = (0, _react.useState)(false),
|
|
149
150
|
_useState10 = (0, _slicedToArray2["default"])(_useState9, 2),
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
var _useState11 = (0, _react.useState)(
|
|
151
|
+
isAutosuggestError = _useState10[0],
|
|
152
|
+
changeIsAutosuggestError = _useState10[1];
|
|
153
|
+
var _useState11 = (0, _react.useState)([]),
|
|
153
154
|
_useState12 = (0, _slicedToArray2["default"])(_useState11, 2),
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
var _useState13 = (0, _react.useState)(
|
|
155
|
+
filteredSuggestions = _useState12[0],
|
|
156
|
+
changeFilteredSuggestions = _useState12[1];
|
|
157
|
+
var _useState13 = (0, _react.useState)(-1),
|
|
157
158
|
_useState14 = (0, _slicedToArray2["default"])(_useState13, 2),
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
var _useState15 = (0, _react.useState)(-1),
|
|
161
|
-
_useState16 = (0, _slicedToArray2["default"])(_useState15, 2),
|
|
162
|
-
visualFocusIndex = _useState16[0],
|
|
163
|
-
changeVisualFocusIndex = _useState16[1];
|
|
159
|
+
visualFocusIndex = _useState14[0],
|
|
160
|
+
changeVisualFocusIndex = _useState14[1];
|
|
164
161
|
var inputRef = (0, _react.useRef)(null);
|
|
165
162
|
var inputContainerRef = (0, _react.useRef)(null);
|
|
166
163
|
var actionRef = (0, _react.useRef)(null);
|
|
@@ -281,6 +278,7 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref2, re
|
|
|
281
278
|
case "Esc":
|
|
282
279
|
case "Escape":
|
|
283
280
|
event.preventDefault();
|
|
281
|
+
isOpen && event.stopPropagation();
|
|
284
282
|
if (hasSuggestions(suggestions)) {
|
|
285
283
|
changeValue("");
|
|
286
284
|
isOpen && closeSuggestions();
|
|
@@ -364,7 +362,10 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref2, re
|
|
|
364
362
|
open: isOpen && (filteredSuggestions.length > 0 || isSearching || isAutosuggestError)
|
|
365
363
|
}, /*#__PURE__*/_react["default"].createElement(Popover.Trigger, {
|
|
366
364
|
asChild: true,
|
|
367
|
-
|
|
365
|
+
type: undefined,
|
|
366
|
+
"aria-controls": undefined,
|
|
367
|
+
"aria-haspopup": undefined,
|
|
368
|
+
"aria-expanded": undefined
|
|
368
369
|
}, children), /*#__PURE__*/_react["default"].createElement(Popover.Portal, null, /*#__PURE__*/_react["default"].createElement(Popover.Content, {
|
|
369
370
|
sideOffset: 5,
|
|
370
371
|
style: {
|
|
@@ -440,7 +441,7 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref2, re
|
|
|
440
441
|
"aria-errormessage": error ? errorId : undefined,
|
|
441
442
|
"aria-required": !disabled && !optional
|
|
442
443
|
}), !disabled && error && /*#__PURE__*/_react["default"].createElement(ErrorIcon, {
|
|
443
|
-
"aria-
|
|
444
|
+
"aria-hidden": "true"
|
|
444
445
|
}, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
|
|
445
446
|
icon: "filled_error"
|
|
446
447
|
})), !disabled && !readOnly && clearable && (value !== null && value !== void 0 ? value : innerValue).length > 0 && /*#__PURE__*/_react["default"].createElement(_ActionIcon["default"], {
|
|
@@ -473,11 +474,14 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref2, re
|
|
|
473
474
|
disabled: disabled
|
|
474
475
|
}, suffix))), !disabled && typeof error === "string" && /*#__PURE__*/_react["default"].createElement(Error, {
|
|
475
476
|
id: errorId,
|
|
477
|
+
role: "alert",
|
|
476
478
|
"aria-live": error ? "assertive" : "off"
|
|
477
479
|
}, error)));
|
|
478
480
|
});
|
|
479
|
-
var TextInputContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n width: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
|
|
481
|
+
var TextInputContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n width: ", ";\n ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
|
|
480
482
|
return calculateWidth(props.margin, props.size);
|
|
483
|
+
}, function (props) {
|
|
484
|
+
return props.size !== "fillParent" && "min-width:" + calculateWidth(props.margin, props.size);
|
|
481
485
|
}, function (props) {
|
|
482
486
|
return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
|
|
483
487
|
}, function (props) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { userEvent, within } from "@storybook/
|
|
2
|
+
import { userEvent, within } from "@storybook/test";
|
|
3
3
|
import Title from "../../.storybook/components/Title";
|
|
4
4
|
import ExampleContainer from "../../.storybook/components/ExampleContainer";
|
|
5
5
|
import DxcTextInput from "./TextInput";
|
|
@@ -7,6 +7,7 @@ import Suggestions from "./Suggestions";
|
|
|
7
7
|
import { ThemeProvider } from "styled-components";
|
|
8
8
|
import useTheme from "../useTheme";
|
|
9
9
|
import { HalstackProvider } from "../HalstackContext";
|
|
10
|
+
import DxcFlex from "../flex/Flex";
|
|
10
11
|
|
|
11
12
|
export default {
|
|
12
13
|
title: "Text Input",
|
|
@@ -21,6 +22,7 @@ const action = {
|
|
|
21
22
|
<path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z" />
|
|
22
23
|
</svg>
|
|
23
24
|
),
|
|
25
|
+
title: "Copy",
|
|
24
26
|
};
|
|
25
27
|
|
|
26
28
|
const actionLargeIconSVG = {
|
|
@@ -31,11 +33,13 @@ const actionLargeIconSVG = {
|
|
|
31
33
|
<path d="M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm.5-13H11v6l5.25 3.15.75-1.23-4.5-2.67z" />
|
|
32
34
|
</svg>
|
|
33
35
|
),
|
|
36
|
+
title: "Clock",
|
|
34
37
|
};
|
|
35
38
|
|
|
36
39
|
const actionLargeIconURL = {
|
|
37
40
|
onClick: () => {},
|
|
38
41
|
icon: "search",
|
|
42
|
+
title: "Search",
|
|
39
43
|
};
|
|
40
44
|
|
|
41
45
|
const country = ["Afghanistan"];
|
|
@@ -265,6 +269,14 @@ export const Chromatic = () => (
|
|
|
265
269
|
<Title title="FillParent size" theme="light" level={4} />
|
|
266
270
|
<DxcTextInput label="FillParent" size="fillParent" />
|
|
267
271
|
</ExampleContainer>
|
|
272
|
+
<ExampleContainer>
|
|
273
|
+
<Title title="Different sizes inside a flex" theme="light" level={4} />
|
|
274
|
+
<DxcFlex justifyContent="space-between" gap="1.5rem">
|
|
275
|
+
<DxcTextInput label="Text input" size="fillParent" />
|
|
276
|
+
<DxcTextInput label="Text input" size="medium" />
|
|
277
|
+
<DxcTextInput label="Text input" size="large" />
|
|
278
|
+
</DxcFlex>
|
|
279
|
+
</ExampleContainer>
|
|
268
280
|
<Title title="Opinionated theme" theme="light" level={2} />
|
|
269
281
|
<ExampleContainer>
|
|
270
282
|
<HalstackProvider theme={opinionatedTheme}>
|
|
@@ -371,7 +383,7 @@ const AutosuggestListbox = () => {
|
|
|
371
383
|
<ExampleContainer pseudoState="pseudo-hover">
|
|
372
384
|
<Title title="Hovered suggestion" theme="light" level={4} />
|
|
373
385
|
<Suggestions
|
|
374
|
-
id="
|
|
386
|
+
id="x1"
|
|
375
387
|
value=""
|
|
376
388
|
suggestions={country}
|
|
377
389
|
visualFocusIndex={-1}
|
|
@@ -385,7 +397,7 @@ const AutosuggestListbox = () => {
|
|
|
385
397
|
<ExampleContainer pseudoState="pseudo-active">
|
|
386
398
|
<Title title="Active suggestion" theme="light" level={4} />
|
|
387
399
|
<Suggestions
|
|
388
|
-
id="
|
|
400
|
+
id="x2"
|
|
389
401
|
value=""
|
|
390
402
|
suggestions={country}
|
|
391
403
|
visualFocusIndex={-1}
|
|
@@ -399,7 +411,7 @@ const AutosuggestListbox = () => {
|
|
|
399
411
|
<ExampleContainer>
|
|
400
412
|
<Title title="Focused suggestion" theme="light" level={4} />
|
|
401
413
|
<Suggestions
|
|
402
|
-
id="
|
|
414
|
+
id="x3"
|
|
403
415
|
value=""
|
|
404
416
|
suggestions={country}
|
|
405
417
|
visualFocusIndex={0}
|
|
@@ -413,7 +425,7 @@ const AutosuggestListbox = () => {
|
|
|
413
425
|
<ExampleContainer>
|
|
414
426
|
<Title title="Highlighted suggestion" theme="light" level={4} />
|
|
415
427
|
<Suggestions
|
|
416
|
-
id="
|
|
428
|
+
id="x4"
|
|
417
429
|
value="Afgh"
|
|
418
430
|
suggestions={country}
|
|
419
431
|
visualFocusIndex={-1}
|
|
@@ -428,7 +440,7 @@ const AutosuggestListbox = () => {
|
|
|
428
440
|
<ExampleContainer>
|
|
429
441
|
<Title title="Autosuggest Error" theme="light" level={3} />
|
|
430
442
|
<Suggestions
|
|
431
|
-
id="
|
|
443
|
+
id="x5"
|
|
432
444
|
value=""
|
|
433
445
|
suggestions={country}
|
|
434
446
|
visualFocusIndex={-1}
|
|
@@ -442,7 +454,7 @@ const AutosuggestListbox = () => {
|
|
|
442
454
|
<ExampleContainer>
|
|
443
455
|
<Title title="Autosuggest Searching message" theme="light" level={3} />
|
|
444
456
|
<Suggestions
|
|
445
|
-
id="
|
|
457
|
+
id="x6"
|
|
446
458
|
value=""
|
|
447
459
|
suggestions={country}
|
|
448
460
|
visualFocusIndex={-1}
|
|
@@ -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 _TextInput = _interopRequireDefault(require("./TextInput
|
|
11
|
+
var _TextInput = _interopRequireDefault(require("./TextInput"));
|
|
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
|
var countries = ["Afghanistan", "Albania", "Algeria", "Andorra", "Angola", "Antigua and Barbuda", "Bahamas", "Bahrain", "Bangladesh", "Barbados", "Cabo Verde", "Cambodia", "Cameroon", "Canada", "Cayman Islands, The", "Central African Republic", "Chad", "Democratic Republic of the Congo", "Dominican Republic", "Dominica", "Denmark", "Djibouti"];
|
|
43
42
|
var specialCharacters = ["/", "\\", "*", "(", ")", "[", "]", "+", "?", "*{[]}|"];
|
|
@@ -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 _Textarea = _interopRequireDefault(require("./Textarea
|
|
8
|
+
var _axeHelper = require("../../test/accessibility/axe-helper.js");
|
|
9
|
+
var _Textarea = _interopRequireDefault(require("./Textarea"));
|
|
10
10
|
describe("Textarea component accessibility tests", function () {
|
|
11
11
|
it("Should not have basic accessibility issues", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
12
12
|
var _render, container, results;
|
|
@@ -27,7 +27,7 @@ describe("Textarea component accessibility tests", function () {
|
|
|
27
27
|
optional: true
|
|
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();
|
|
@@ -56,7 +56,7 @@ describe("Textarea component accessibility tests", function () {
|
|
|
56
56
|
pattern: "^.*(?=.*[a-zA-Z])(?=.*)(?=.*[!&$%&? \"]).*$"
|
|
57
57
|
})), container = _render2.container;
|
|
58
58
|
_context2.next = 3;
|
|
59
|
-
return (0,
|
|
59
|
+
return (0, _axeHelper.axe)(container);
|
|
60
60
|
case 3:
|
|
61
61
|
results = _context2.sent;
|
|
62
62
|
expect(results).toHaveNoViolations();
|
|
@@ -84,7 +84,7 @@ describe("Textarea component accessibility tests", function () {
|
|
|
84
84
|
maxLength: 100
|
|
85
85
|
})), container = _render3.container;
|
|
86
86
|
_context3.next = 3;
|
|
87
|
-
return (0,
|
|
87
|
+
return (0, _axeHelper.axe)(container);
|
|
88
88
|
case 3:
|
|
89
89
|
results = _context3.sent;
|
|
90
90
|
expect(results).toHaveNoViolations();
|
|
@@ -113,7 +113,7 @@ describe("Textarea component accessibility tests", function () {
|
|
|
113
113
|
disabled: true
|
|
114
114
|
})), container = _render4.container;
|
|
115
115
|
_context4.next = 3;
|
|
116
|
-
return (0,
|
|
116
|
+
return (0, _axeHelper.axe)(container);
|
|
117
117
|
case 3:
|
|
118
118
|
results = _context4.sent;
|
|
119
119
|
expect(results).toHaveNoViolations();
|
|
@@ -142,7 +142,7 @@ describe("Textarea component accessibility tests", function () {
|
|
|
142
142
|
readOnly: true
|
|
143
143
|
})), container = _render5.container;
|
|
144
144
|
_context5.next = 3;
|
|
145
|
-
return (0,
|
|
145
|
+
return (0, _axeHelper.axe)(container);
|
|
146
146
|
case 3:
|
|
147
147
|
results = _context5.sent;
|
|
148
148
|
expect(results).toHaveNoViolations();
|
package/textarea/Textarea.js
CHANGED
|
@@ -15,10 +15,9 @@ var _utils = require("../common/utils");
|
|
|
15
15
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
16
16
|
var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
|
|
17
17
|
var _variables = require("../common/variables");
|
|
18
|
-
var _uuid = require("uuid");
|
|
19
18
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
|
|
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 patternMatch = function patternMatch(pattern, value) {
|
|
23
22
|
return new RegExp(pattern).test(value);
|
|
24
23
|
};
|
|
@@ -59,12 +58,11 @@ var DxcTextarea = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref)
|
|
|
59
58
|
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
60
59
|
innerValue = _useState2[0],
|
|
61
60
|
setInnerValue = _useState2[1];
|
|
62
|
-
var
|
|
63
|
-
_useState4 = (0, _slicedToArray2["default"])(_useState3, 1),
|
|
64
|
-
textareaId = _useState4[0];
|
|
61
|
+
var textareaId = "textarea-".concat((0, _react.useId)());
|
|
65
62
|
var colorsTheme = (0, _useTheme["default"])();
|
|
66
63
|
var translatedLabels = (0, _useTranslatedLabels["default"])();
|
|
67
64
|
var textareaRef = (0, _react.useRef)(null);
|
|
65
|
+
var prevValueRef = (0, _react.useRef)(null);
|
|
68
66
|
var errorId = "error-".concat(textareaId);
|
|
69
67
|
var isNotOptional = function isNotOptional(value) {
|
|
70
68
|
return value === "" && !optional;
|
|
@@ -87,13 +85,6 @@ var DxcTextarea = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref)
|
|
|
87
85
|
value: newValue
|
|
88
86
|
});
|
|
89
87
|
};
|
|
90
|
-
var autoVerticalGrow = function autoVerticalGrow() {
|
|
91
|
-
var textareaLineHeight = parseInt(window.getComputedStyle(textareaRef.current)["line-height"]);
|
|
92
|
-
var textareaPaddingTopBottom = parseInt(window.getComputedStyle(textareaRef.current)["padding-top"]) * 2;
|
|
93
|
-
textareaRef.current.style.height = "".concat(textareaLineHeight * rows, "px");
|
|
94
|
-
var newHeight = textareaRef.current.scrollHeight - textareaPaddingTopBottom;
|
|
95
|
-
textareaRef.current.style.height = "".concat(newHeight, "px");
|
|
96
|
-
};
|
|
97
88
|
var handleOnBlur = function handleOnBlur(event) {
|
|
98
89
|
if (isNotOptional(event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
99
90
|
value: event.target.value,
|
|
@@ -110,8 +101,17 @@ var DxcTextarea = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref)
|
|
|
110
101
|
};
|
|
111
102
|
var handleOnChange = function handleOnChange(event) {
|
|
112
103
|
changeValue(event.target.value);
|
|
113
|
-
verticalGrow === "auto" && autoVerticalGrow();
|
|
114
104
|
};
|
|
105
|
+
(0, _react.useEffect)(function () {
|
|
106
|
+
if (verticalGrow === "auto" && prevValueRef.current !== (value !== null && value !== void 0 ? value : innerValue)) {
|
|
107
|
+
var textareaLineHeight = parseInt(window.getComputedStyle(textareaRef.current)["line-height"]);
|
|
108
|
+
var textareaPaddingTopBottom = parseInt(window.getComputedStyle(textareaRef.current)["padding-top"]) * 2;
|
|
109
|
+
textareaRef.current.style.height = "".concat(textareaLineHeight * rows, "px");
|
|
110
|
+
var newHeight = textareaRef.current.scrollHeight - textareaPaddingTopBottom;
|
|
111
|
+
textareaRef.current.style.height = "".concat(newHeight, "px");
|
|
112
|
+
prevValueRef.current = value !== null && value !== void 0 ? value : innerValue;
|
|
113
|
+
}
|
|
114
|
+
}, [verticalGrow, value, innerValue, rows]);
|
|
115
115
|
return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
116
116
|
theme: colorsTheme.textarea
|
|
117
117
|
}, /*#__PURE__*/_react["default"].createElement(TextareaContainer, {
|
|
@@ -146,6 +146,7 @@ var DxcTextarea = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref)
|
|
|
146
146
|
"aria-required": !disabled && !optional
|
|
147
147
|
}), !disabled && typeof error === "string" && /*#__PURE__*/_react["default"].createElement(Error, {
|
|
148
148
|
id: errorId,
|
|
149
|
+
role: "alert",
|
|
149
150
|
"aria-live": error ? "assertive" : "off"
|
|
150
151
|
}, error)));
|
|
151
152
|
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -6,7 +6,7 @@ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/
|
|
|
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 _Textarea = _interopRequireDefault(require("./Textarea
|
|
9
|
+
var _Textarea = _interopRequireDefault(require("./Textarea"));
|
|
10
10
|
describe("Textarea component tests", function () {
|
|
11
11
|
test("Renders with correct label", function () {
|
|
12
12
|
var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Textarea["default"], {
|
|
@@ -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 _ToggleGroup = _interopRequireDefault(require("./ToggleGroup
|
|
8
|
+
var _axeHelper = require("../../test/accessibility/axe-helper.js");
|
|
9
|
+
var _ToggleGroup = _interopRequireDefault(require("./ToggleGroup"));
|
|
10
10
|
var ethernetSVG = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
11
11
|
xmlns: "http://www.w3.org/2000/svg",
|
|
12
12
|
height: "24px",
|
|
@@ -67,11 +67,11 @@ describe("Toggle group component accessibility tests", function () {
|
|
|
67
67
|
helperText: "Toggle group helper text",
|
|
68
68
|
options: options,
|
|
69
69
|
margin: "medium",
|
|
70
|
-
defaultValue: 2,
|
|
70
|
+
defaultValue: [2],
|
|
71
71
|
multiple: true
|
|
72
72
|
})), container = _render.container;
|
|
73
73
|
_context.next = 3;
|
|
74
|
-
return (0,
|
|
74
|
+
return (0, _axeHelper.axe)(container);
|
|
75
75
|
case 3:
|
|
76
76
|
results = _context.sent;
|
|
77
77
|
expect(results).toHaveNoViolations();
|
|
@@ -94,7 +94,7 @@ describe("Toggle group component accessibility tests", function () {
|
|
|
94
94
|
disabled: true
|
|
95
95
|
})), container = _render2.container;
|
|
96
96
|
_context2.next = 3;
|
|
97
|
-
return (0,
|
|
97
|
+
return (0, _axeHelper.axe)(container);
|
|
98
98
|
case 3:
|
|
99
99
|
results = _context2.sent;
|
|
100
100
|
expect(results).toHaveNoViolations();
|