@dxc-technology/halstack-react 0.0.0-4e1277a → 0.0.0-4e3dbad
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/BackgroundColorContext.js +1 -1
- package/HalstackContext.d.ts +42 -5
- package/HalstackContext.js +28 -18
- package/accordion/Accordion.accessibility.test.d.ts +1 -0
- package/accordion/Accordion.accessibility.test.js +71 -0
- package/accordion/Accordion.js +16 -30
- package/accordion/Accordion.stories.tsx +7 -49
- package/accordion/Accordion.test.d.ts +1 -0
- package/accordion/Accordion.test.js +3 -3
- package/accordion/types.d.ts +1 -1
- package/accordion-group/AccordionGroup.accessibility.test.d.ts +1 -0
- package/accordion-group/AccordionGroup.accessibility.test.js +82 -0
- package/accordion-group/AccordionGroup.js +1 -1
- package/accordion-group/AccordionGroup.stories.tsx +23 -23
- package/accordion-group/AccordionGroup.test.d.ts +1 -0
- package/accordion-group/AccordionGroup.test.js +5 -9
- package/accordion-group/AccordionGroupAccordion.js +1 -1
- package/accordion-group/types.d.ts +1 -1
- package/action-icon/ActionIcon.accessibility.test.d.ts +1 -0
- package/action-icon/ActionIcon.accessibility.test.js +63 -0
- package/action-icon/ActionIcon.js +4 -3
- package/action-icon/ActionIcon.stories.tsx +3 -3
- package/action-icon/ActionIcon.test.d.ts +1 -0
- package/action-icon/ActionIcon.test.js +1 -1
- package/action-icon/types.d.ts +1 -1
- package/alert/Alert.accessibility.test.d.ts +1 -0
- package/alert/Alert.accessibility.test.js +95 -0
- package/alert/Alert.js +21 -72
- package/alert/Alert.test.d.ts +1 -0
- package/alert/Alert.test.js +1 -1
- package/badge/Badge.accessibility.test.d.ts +1 -0
- package/badge/Badge.accessibility.test.js +129 -0
- package/badge/Badge.js +6 -4
- package/badge/Badge.stories.tsx +11 -11
- package/badge/Badge.test.d.ts +1 -0
- package/badge/Badge.test.js +2 -2
- package/badge/types.d.ts +1 -1
- package/bar-chart/BarChart.d.ts +4 -0
- package/bar-chart/BarChart.js +152 -0
- package/bar-chart/BarChart.stories.tsx +281 -0
- package/bar-chart/BarChart.test.d.ts +1 -0
- package/bar-chart/BarChart.test.js +194 -0
- package/bar-chart/theme.d.ts +3 -0
- package/bar-chart/theme.js +31 -0
- package/bar-chart/types.d.ts +118 -0
- package/bar-chart/types.js +5 -0
- package/bleed/Bleed.stories.tsx +0 -1
- package/box/Box.accessibility.test.d.ts +1 -0
- package/box/Box.accessibility.test.js +33 -0
- package/box/Box.js +1 -1
- package/box/Box.test.d.ts +1 -0
- package/box/Box.test.js +1 -1
- package/breadcrumbs/Breadcrumbs.accessibility.test.d.ts +1 -0
- package/breadcrumbs/Breadcrumbs.accessibility.test.js +96 -0
- package/breadcrumbs/Breadcrumbs.d.ts +4 -0
- package/breadcrumbs/Breadcrumbs.js +79 -0
- package/breadcrumbs/Breadcrumbs.stories.tsx +194 -0
- package/breadcrumbs/Breadcrumbs.test.d.ts +1 -0
- package/breadcrumbs/Breadcrumbs.test.js +168 -0
- package/breadcrumbs/Item.d.ts +4 -0
- package/breadcrumbs/Item.js +52 -0
- package/breadcrumbs/dropdownTheme.d.ts +53 -0
- package/breadcrumbs/dropdownTheme.js +62 -0
- package/breadcrumbs/types.d.ts +40 -0
- package/breadcrumbs/types.js +5 -0
- package/bulleted-list/BulletedList.accessibility.test.d.ts +1 -0
- package/bulleted-list/BulletedList.accessibility.test.js +119 -0
- package/bulleted-list/BulletedList.js +7 -4
- package/bulleted-list/BulletedList.stories.tsx +1 -1
- package/button/Button.accessibility.test.d.ts +1 -0
- package/button/Button.accessibility.test.js +127 -0
- package/button/Button.js +2 -2
- package/button/Button.stories.tsx +3 -4
- package/button/Button.test.d.ts +1 -0
- package/button/Button.test.js +1 -1
- package/card/Card.accessibility.test.d.ts +1 -0
- package/card/Card.accessibility.test.js +36 -0
- package/card/Card.js +3 -2
- package/card/Card.stories.tsx +1 -1
- package/card/Card.test.d.ts +1 -0
- package/card/Card.test.js +1 -1
- package/checkbox/Checkbox.accessibility.test.d.ts +1 -0
- package/checkbox/Checkbox.accessibility.test.js +87 -0
- package/checkbox/Checkbox.js +10 -13
- package/checkbox/Checkbox.test.d.ts +1 -0
- package/checkbox/Checkbox.test.js +1 -1
- package/chip/Chip.accessibility.test.d.ts +1 -0
- package/chip/Chip.accessibility.test.js +67 -0
- package/chip/Chip.js +11 -6
- package/chip/Chip.stories.tsx +6 -25
- package/chip/Chip.test.d.ts +1 -0
- package/chip/Chip.test.js +5 -5
- package/common/coreTokens.d.ts +0 -1
- package/common/coreTokens.js +3 -4
- package/common/variables.d.ts +48 -5
- package/common/variables.js +110 -73
- package/container/Container.stories.tsx +3 -3
- package/container/types.d.ts +113 -11
- package/contextual-menu/ContextualMenu.accessibility.test.d.ts +1 -0
- package/contextual-menu/ContextualMenu.accessibility.test.js +98 -0
- package/contextual-menu/ContextualMenu.d.ts +3 -5
- package/contextual-menu/ContextualMenu.js +118 -53
- package/contextual-menu/ContextualMenu.stories.tsx +124 -75
- package/contextual-menu/ContextualMenu.test.d.ts +1 -0
- package/contextual-menu/ContextualMenu.test.js +200 -24
- package/contextual-menu/GroupItem.d.ts +4 -0
- package/contextual-menu/GroupItem.js +67 -0
- package/contextual-menu/ItemAction.d.ts +4 -0
- package/contextual-menu/ItemAction.js +88 -0
- package/contextual-menu/MenuItem.d.ts +4 -0
- package/contextual-menu/MenuItem.js +29 -0
- package/contextual-menu/SingleItem.d.ts +4 -0
- package/contextual-menu/SingleItem.js +38 -0
- package/contextual-menu/types.d.ts +54 -11
- package/date-input/Calendar.js +47 -31
- package/date-input/DateInput.accessibility.test.d.ts +1 -0
- package/date-input/DateInput.accessibility.test.js +229 -0
- package/date-input/DateInput.js +28 -23
- package/date-input/DateInput.stories.tsx +18 -12
- package/date-input/DateInput.test.d.ts +1 -0
- package/date-input/DateInput.test.js +39 -39
- package/date-input/DatePicker.js +13 -7
- package/date-input/YearPicker.js +10 -5
- package/dialog/Dialog.accessibility.test.d.ts +1 -0
- package/dialog/Dialog.accessibility.test.js +69 -0
- package/dialog/Dialog.js +9 -20
- package/dialog/Dialog.stories.tsx +8 -4
- package/dialog/Dialog.test.d.ts +1 -0
- package/dialog/Dialog.test.js +112 -49
- package/divider/Divider.accessibility.test.d.ts +1 -0
- package/divider/Divider.accessibility.test.js +33 -0
- package/divider/Divider.stories.tsx +2 -1
- package/divider/Divider.test.d.ts +1 -0
- package/dropdown/Dropdown.accessibility.test.d.ts +1 -0
- package/dropdown/Dropdown.accessibility.test.js +183 -0
- package/dropdown/Dropdown.js +31 -66
- package/dropdown/Dropdown.stories.tsx +16 -27
- package/dropdown/Dropdown.test.d.ts +1 -0
- package/dropdown/Dropdown.test.js +101 -72
- package/dropdown/DropdownMenu.js +4 -4
- package/dropdown/DropdownMenuItem.js +8 -4
- package/dropdown/types.d.ts +2 -4
- package/file-input/FileInput.accessibility.test.d.ts +1 -0
- package/file-input/FileInput.accessibility.test.js +167 -0
- package/file-input/FileInput.js +6 -47
- package/file-input/FileInput.test.d.ts +1 -0
- package/file-input/FileInput.test.js +51 -106
- package/file-input/FileItem.js +18 -28
- package/file-input/types.d.ts +0 -4
- package/footer/Footer.accessibility.test.d.ts +1 -0
- package/footer/Footer.accessibility.test.js +125 -0
- package/footer/Footer.js +8 -6
- package/footer/Footer.stories.tsx +40 -3
- package/footer/Footer.test.d.ts +1 -0
- package/footer/Footer.test.js +1 -1
- package/footer/Icons.js +2 -30
- package/footer/types.d.ts +1 -1
- package/grid/Grid.stories.tsx +3 -1
- package/header/Header.accessibility.test.d.ts +1 -0
- package/header/Header.accessibility.test.js +94 -0
- package/header/Header.js +12 -22
- package/header/Header.stories.tsx +17 -1
- package/header/Header.test.d.ts +1 -0
- package/header/Header.test.js +1 -1
- package/header/Icons.js +1 -6
- package/heading/Heading.accessibility.test.d.ts +1 -0
- package/heading/Heading.accessibility.test.js +33 -0
- package/heading/Heading.js +1 -1
- package/heading/Heading.test.d.ts +1 -0
- package/heading/Heading.test.js +1 -14
- package/icon/Icon.accessibility.test.d.ts +1 -0
- package/icon/Icon.accessibility.test.js +30 -0
- package/icon/Icon.js +1 -1
- package/icon/Icon.stories.tsx +6 -4
- package/image/Image.accessibility.test.d.ts +1 -0
- package/image/Image.accessibility.test.js +56 -0
- package/image/Image.js +1 -1
- package/layout/ApplicationLayout.js +9 -6
- package/layout/Icons.d.ts +0 -1
- package/layout/Icons.js +1 -11
- package/link/Link.accessibility.test.d.ts +1 -0
- package/link/Link.accessibility.test.js +108 -0
- package/link/Link.js +8 -6
- package/link/Link.stories.tsx +4 -4
- package/link/Link.test.d.ts +1 -0
- package/link/Link.test.js +1 -1
- package/link/types.d.ts +1 -1
- package/main.d.ts +3 -1
- package/main.js +15 -1
- package/nav-tabs/NavTabs.accessibility.test.d.ts +1 -0
- package/nav-tabs/NavTabs.accessibility.test.js +44 -0
- package/nav-tabs/NavTabs.js +19 -4
- package/nav-tabs/NavTabs.stories.tsx +41 -23
- package/nav-tabs/NavTabs.test.d.ts +1 -0
- package/nav-tabs/NavTabs.test.js +10 -9
- package/nav-tabs/Tab.js +17 -18
- package/nav-tabs/types.d.ts +1 -1
- package/number-input/NumberInput.accessibility.test.d.ts +1 -0
- package/number-input/NumberInput.accessibility.test.js +227 -0
- package/number-input/NumberInput.js +6 -3
- package/number-input/NumberInput.stories.tsx +11 -16
- package/number-input/NumberInput.test.d.ts +1 -0
- package/number-input/NumberInput.test.js +6 -7
- package/package.json +34 -28
- package/paginator/Paginator.accessibility.test.d.ts +1 -0
- package/paginator/Paginator.accessibility.test.js +78 -0
- package/paginator/Paginator.js +13 -10
- package/paginator/Paginator.test.d.ts +1 -0
- package/paginator/Paginator.test.js +2 -3
- package/paragraph/Paragraph.accessibility.test.d.ts +1 -0
- package/paragraph/Paragraph.accessibility.test.js +28 -0
- package/password-input/PasswordInput.accessibility.test.d.ts +1 -0
- package/password-input/PasswordInput.accessibility.test.js +152 -0
- package/password-input/PasswordInput.js +11 -8
- package/password-input/PasswordInput.stories.tsx +10 -1
- package/password-input/PasswordInput.test.d.ts +1 -0
- package/password-input/PasswordInput.test.js +6 -7
- package/progress-bar/ProgressBar.accessibility.test.d.ts +1 -0
- package/progress-bar/ProgressBar.accessibility.test.js +35 -0
- package/progress-bar/ProgressBar.js +6 -4
- package/progress-bar/ProgressBar.test.d.ts +1 -0
- package/progress-bar/ProgressBar.test.js +1 -1
- package/quick-nav/QuickNav.accessibility.test.d.ts +1 -0
- package/quick-nav/QuickNav.accessibility.test.js +57 -0
- package/quick-nav/QuickNav.js +1 -1
- package/radio-group/Radio.js +6 -9
- package/radio-group/RadioGroup.accessibility.test.d.ts +1 -0
- package/radio-group/RadioGroup.accessibility.test.js +97 -0
- package/radio-group/RadioGroup.js +14 -16
- package/radio-group/RadioGroup.test.d.ts +1 -0
- package/radio-group/RadioGroup.test.js +3 -5
- package/resultset-table/ResultsetTable.accessibility.test.d.ts +1 -0
- package/resultset-table/ResultsetTable.accessibility.test.js +284 -0
- package/resultset-table/ResultsetTable.d.ts +1 -1
- package/resultset-table/ResultsetTable.js +47 -15
- package/resultset-table/ResultsetTable.stories.tsx +19 -3
- package/resultset-table/ResultsetTable.test.d.ts +1 -0
- package/resultset-table/ResultsetTable.test.js +111 -32
- package/resultset-table/types.d.ts +41 -13
- package/select/Listbox.d.ts +3 -3
- package/select/Listbox.js +33 -29
- package/select/Option.d.ts +3 -3
- package/select/Option.js +21 -15
- package/select/Select.accessibility.test.d.ts +1 -0
- package/select/Select.accessibility.test.js +227 -0
- package/select/Select.js +85 -192
- package/select/Select.stories.tsx +74 -117
- package/select/Select.test.d.ts +1 -0
- package/select/Select.test.js +348 -550
- package/select/selectUtils.d.ts +41 -0
- package/select/selectUtils.js +129 -0
- package/select/types.d.ts +1 -1
- package/sidenav/Sidenav.accessibility.test.d.ts +1 -0
- package/sidenav/Sidenav.accessibility.test.js +59 -0
- package/sidenav/Sidenav.js +16 -12
- package/sidenav/Sidenav.stories.tsx +5 -10
- package/sidenav/Sidenav.test.d.ts +1 -0
- package/sidenav/Sidenav.test.js +1 -1
- package/sidenav/types.d.ts +2 -2
- package/slider/Slider.accessibility.test.d.ts +1 -0
- package/slider/Slider.accessibility.test.js +103 -0
- package/slider/Slider.js +11 -13
- package/slider/Slider.stories.tsx +180 -0
- package/slider/Slider.test.d.ts +1 -0
- package/slider/Slider.test.js +13 -11
- package/spinner/Spinner.accessibility.test.d.ts +1 -0
- package/spinner/Spinner.accessibility.test.js +96 -0
- package/spinner/Spinner.d.ts +1 -1
- package/spinner/Spinner.js +32 -47
- package/spinner/Spinner.test.d.ts +1 -0
- package/spinner/Spinner.test.js +1 -1
- package/status-light/StatusLight.accessibility.test.d.ts +1 -0
- package/status-light/StatusLight.accessibility.test.js +157 -0
- package/status-light/StatusLight.test.d.ts +1 -0
- package/status-light/StatusLight.test.js +1 -1
- package/switch/Switch.accessibility.test.d.ts +1 -0
- package/switch/Switch.accessibility.test.js +98 -0
- package/switch/Switch.js +6 -9
- package/switch/Switch.stories.tsx +12 -0
- package/switch/Switch.test.d.ts +1 -0
- package/switch/Switch.test.js +1 -1
- package/table/Table.accessibility.test.d.ts +1 -0
- package/table/Table.accessibility.test.js +92 -0
- package/table/Table.js +2 -11
- package/table/Table.stories.tsx +15 -10
- package/table/Table.test.d.ts +1 -0
- package/table/Table.test.js +2 -4
- package/table/types.d.ts +1 -15
- package/tabs/Tab.js +6 -5
- package/tabs/Tabs.accessibility.test.d.ts +1 -0
- package/tabs/Tabs.accessibility.test.js +56 -0
- package/tabs/Tabs.js +9 -20
- package/tabs/Tabs.stories.tsx +7 -3
- package/tabs/Tabs.test.d.ts +1 -0
- package/tabs/Tabs.test.js +20 -38
- package/tabs/types.d.ts +2 -2
- package/tag/Tag.accessibility.test.d.ts +1 -0
- package/tag/Tag.accessibility.test.js +69 -0
- package/tag/Tag.js +7 -7
- package/tag/Tag.stories.tsx +5 -8
- package/tag/Tag.test.d.ts +1 -0
- package/tag/Tag.test.js +5 -13
- package/tag/types.d.ts +2 -2
- package/text-input/Suggestion.js +1 -1
- package/text-input/Suggestions.js +17 -7
- package/text-input/TextInput.accessibility.test.d.ts +1 -0
- package/text-input/TextInput.accessibility.test.js +320 -0
- package/text-input/TextInput.js +56 -73
- package/text-input/TextInput.stories.tsx +20 -8
- package/text-input/TextInput.test.d.ts +1 -0
- package/text-input/TextInput.test.js +2 -3
- package/textarea/Textarea.accessibility.test.d.ts +1 -0
- package/textarea/Textarea.accessibility.test.js +155 -0
- package/textarea/Textarea.js +14 -13
- package/textarea/Textarea.test.d.ts +1 -0
- package/textarea/Textarea.test.js +1 -1
- package/toggle-group/ToggleGroup.accessibility.test.d.ts +1 -0
- package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
- package/toggle-group/ToggleGroup.js +10 -12
- package/toggle-group/ToggleGroup.stories.tsx +4 -4
- package/toggle-group/ToggleGroup.test.d.ts +1 -0
- package/toggle-group/ToggleGroup.test.js +1 -1
- package/toggle-group/types.d.ts +2 -2
- package/tooltip/Tooltip.accessibility.test.d.ts +1 -0
- package/tooltip/Tooltip.accessibility.test.js +144 -0
- package/tooltip/Tooltip.d.ts +4 -0
- package/tooltip/Tooltip.js +50 -0
- package/tooltip/Tooltip.stories.tsx +111 -0
- package/tooltip/Tooltip.test.d.ts +1 -0
- package/tooltip/Tooltip.test.js +112 -0
- package/tooltip/types.d.ts +16 -0
- package/tooltip/types.js +5 -0
- package/typography/Typography.accessibility.test.d.ts +1 -0
- package/typography/Typography.accessibility.test.js +339 -0
- package/typography/Typography.stories.tsx +1 -3
- package/typography/Typography.test.js +23 -0
- package/useTheme.d.ts +31 -5
- package/useTranslatedLabels.d.ts +11 -0
- package/utils/BaseTypography.js +45 -41
- package/utils/FocusLock.js +3 -2
- package/utils/useWidth.d.ts +2 -0
- package/utils/useWidth.js +30 -0
- package/wizard/Wizard.accessibility.test.d.ts +1 -0
- package/wizard/Wizard.accessibility.test.js +55 -0
- package/wizard/Wizard.js +14 -25
- package/wizard/Wizard.stories.tsx +20 -1
- package/wizard/Wizard.test.d.ts +1 -0
- package/wizard/Wizard.test.js +1 -1
- package/wizard/types.d.ts +1 -1
- package/contextual-menu/MenuItemAction.d.ts +0 -4
- package/contextual-menu/MenuItemAction.js +0 -46
- package/date-input/Icons.d.ts +0 -6
- package/date-input/Icons.js +0 -58
- package/paginator/Icons.d.ts +0 -5
- package/paginator/Icons.js +0 -40
- package/password-input/Icons.d.ts +0 -6
- package/password-input/Icons.js +0 -35
- package/select/Icons.d.ts +0 -10
- package/select/Icons.js +0 -89
- package/sidenav/Icons.d.ts +0 -7
- package/sidenav/Icons.js +0 -47
- package/text-input/Icons.d.ts +0 -8
- package/text-input/Icons.js +0 -56
package/select/Select.js
CHANGED
|
@@ -15,122 +15,15 @@ var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
|
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 _utils = require("../common/utils");
|
|
20
|
-
var _Icons = _interopRequireDefault(require("./Icons"));
|
|
21
19
|
var _Listbox = _interopRequireDefault(require("./Listbox"));
|
|
22
20
|
var Popover = _interopRequireWildcard(require("@radix-ui/react-popover"));
|
|
23
|
-
var
|
|
21
|
+
var _Icon = _interopRequireDefault(require("../icon/Icon"));
|
|
22
|
+
var _useWidth = _interopRequireDefault(require("../utils/useWidth"));
|
|
23
|
+
var _selectUtils = require("./selectUtils");
|
|
24
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16;
|
|
24
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); }
|
|
25
|
-
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
|
-
var isOptionGroup = function isOptionGroup(option) {
|
|
27
|
-
return "options" in option && option.options != null;
|
|
28
|
-
};
|
|
29
|
-
var isArrayOfOptionGroups = function isArrayOfOptionGroups(options) {
|
|
30
|
-
return isOptionGroup(options[0]);
|
|
31
|
-
};
|
|
32
|
-
var groupsHaveOptions = function groupsHaveOptions(filteredOptions) {
|
|
33
|
-
return isArrayOfOptionGroups(filteredOptions) ? filteredOptions.some(function (groupOption) {
|
|
34
|
-
var _groupOption$options;
|
|
35
|
-
return ((_groupOption$options = groupOption.options) === null || _groupOption$options === void 0 ? void 0 : _groupOption$options.length) > 0;
|
|
36
|
-
}) : true;
|
|
37
|
-
};
|
|
38
|
-
var canOpenOptions = function canOpenOptions(options, disabled) {
|
|
39
|
-
return !disabled && (options === null || options === void 0 ? void 0 : options.length) > 0 && groupsHaveOptions(options);
|
|
40
|
-
};
|
|
41
|
-
var filterOptionsBySearchValue = function filterOptionsBySearchValue(options, searchValue) {
|
|
42
|
-
if ((options === null || options === void 0 ? void 0 : options.length) > 0) {
|
|
43
|
-
if (isArrayOfOptionGroups(options)) return options.map(function (optionGroup) {
|
|
44
|
-
var group = {
|
|
45
|
-
label: optionGroup.label,
|
|
46
|
-
options: optionGroup.options.filter(function (option) {
|
|
47
|
-
return option.label.toUpperCase().includes(searchValue.toUpperCase());
|
|
48
|
-
})
|
|
49
|
-
};
|
|
50
|
-
return group;
|
|
51
|
-
});else return options.filter(function (option) {
|
|
52
|
-
return option.label.toUpperCase().includes(searchValue.toUpperCase());
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
};
|
|
56
|
-
var getLastOptionIndex = function getLastOptionIndex(options, filteredOptions, searchable, optional, multiple) {
|
|
57
|
-
var last = 0;
|
|
58
|
-
var reducer = function reducer(acc, current) {
|
|
59
|
-
var _current$options;
|
|
60
|
-
return acc + ((_current$options = current.options) === null || _current$options === void 0 ? void 0 : _current$options.length);
|
|
61
|
-
};
|
|
62
|
-
if (searchable && (filteredOptions === null || filteredOptions === void 0 ? void 0 : filteredOptions.length) > 0) isArrayOfOptionGroups(filteredOptions) ? last = filteredOptions.reduce(reducer, 0) - 1 : last = filteredOptions.length - 1;else if ((options === null || options === void 0 ? void 0 : options.length) > 0) isArrayOfOptionGroups(options) ? last = options.reduce(reducer, 0) - 1 : last = options.length - 1;
|
|
63
|
-
return optional && !multiple ? last + 1 : last;
|
|
64
|
-
};
|
|
65
|
-
var getSelectedOption = function getSelectedOption(value, options, multiple, optional, optionalItem) {
|
|
66
|
-
var selectedOption = multiple ? [] : {};
|
|
67
|
-
var singleSelectionIndex;
|
|
68
|
-
if (multiple) {
|
|
69
|
-
if ((options === null || options === void 0 ? void 0 : options.length) > 0) {
|
|
70
|
-
options.forEach(function (option) {
|
|
71
|
-
if (isOptionGroup(option)) option.options.forEach(function (singleOption) {
|
|
72
|
-
if (value.includes(singleOption.value) && Array.isArray(selectedOption)) selectedOption.push(singleOption);
|
|
73
|
-
});else if (value.includes(option.value) && Array.isArray(selectedOption)) selectedOption.push(option);
|
|
74
|
-
});
|
|
75
|
-
}
|
|
76
|
-
} else {
|
|
77
|
-
if (optional && value === "") {
|
|
78
|
-
selectedOption = optionalItem;
|
|
79
|
-
singleSelectionIndex = 0;
|
|
80
|
-
} else if ((options === null || options === void 0 ? void 0 : options.length) > 0) {
|
|
81
|
-
var group_index = 0;
|
|
82
|
-
options.some(function (option, index) {
|
|
83
|
-
if (isOptionGroup(option)) {
|
|
84
|
-
option.options.some(function (singleOption) {
|
|
85
|
-
if (singleOption.value === value) {
|
|
86
|
-
selectedOption = singleOption;
|
|
87
|
-
singleSelectionIndex = optional ? group_index + 1 : group_index;
|
|
88
|
-
return true;
|
|
89
|
-
}
|
|
90
|
-
group_index++;
|
|
91
|
-
});
|
|
92
|
-
} else if (option.value === value) {
|
|
93
|
-
selectedOption = option;
|
|
94
|
-
singleSelectionIndex = optional ? index + 1 : index;
|
|
95
|
-
return true;
|
|
96
|
-
}
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
return {
|
|
101
|
-
selectedOption: selectedOption,
|
|
102
|
-
singleSelectionIndex: singleSelectionIndex
|
|
103
|
-
};
|
|
104
|
-
};
|
|
105
|
-
var getSelectedOptionLabel = function getSelectedOptionLabel(placeholder, selectedOption) {
|
|
106
|
-
var _selectedOption$label;
|
|
107
|
-
if (Array.isArray(selectedOption)) return selectedOption.length === 0 ? placeholder : selectedOption.map(function (option) {
|
|
108
|
-
return option.label;
|
|
109
|
-
}).join(", ");else return (_selectedOption$label = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.label) !== null && _selectedOption$label !== void 0 ? _selectedOption$label : placeholder;
|
|
110
|
-
};
|
|
111
|
-
var notOptionalCheck = function notOptionalCheck(value, multiple, optional) {
|
|
112
|
-
return !optional && (multiple ? value.length === 0 : value === "");
|
|
113
|
-
};
|
|
114
|
-
var useWidth = function useWidth(target) {
|
|
115
|
-
var _useState = (0, _react.useState)(0),
|
|
116
|
-
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
117
|
-
width = _useState2[0],
|
|
118
|
-
setWidth = _useState2[1];
|
|
119
|
-
(0, _react.useEffect)(function () {
|
|
120
|
-
if (target != null) {
|
|
121
|
-
setWidth(target.getBoundingClientRect().width);
|
|
122
|
-
var triggerObserver = new ResizeObserver(function (entries) {
|
|
123
|
-
var rect = entries[0].target.getBoundingClientRect();
|
|
124
|
-
setWidth(rect === null || rect === void 0 ? void 0 : rect.width);
|
|
125
|
-
});
|
|
126
|
-
triggerObserver.observe(target);
|
|
127
|
-
return function () {
|
|
128
|
-
triggerObserver.unobserve(target);
|
|
129
|
-
};
|
|
130
|
-
}
|
|
131
|
-
}, [target]);
|
|
132
|
-
return width;
|
|
133
|
-
};
|
|
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; }
|
|
134
27
|
var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
135
28
|
var _ref4;
|
|
136
29
|
var label = _ref.label,
|
|
@@ -144,12 +37,12 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
144
37
|
placeholder = _ref$placeholder === void 0 ? "" : _ref$placeholder,
|
|
145
38
|
_ref$disabled = _ref.disabled,
|
|
146
39
|
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
|
40
|
+
_ref$multiple = _ref.multiple,
|
|
41
|
+
multiple = _ref$multiple === void 0 ? false : _ref$multiple,
|
|
147
42
|
_ref$optional = _ref.optional,
|
|
148
43
|
optional = _ref$optional === void 0 ? false : _ref$optional,
|
|
149
44
|
_ref$searchable = _ref.searchable,
|
|
150
45
|
searchable = _ref$searchable === void 0 ? false : _ref$searchable,
|
|
151
|
-
_ref$multiple = _ref.multiple,
|
|
152
|
-
multiple = _ref$multiple === void 0 ? false : _ref$multiple,
|
|
153
46
|
onChange = _ref.onChange,
|
|
154
47
|
onBlur = _ref.onBlur,
|
|
155
48
|
error = _ref.error,
|
|
@@ -158,32 +51,30 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
158
51
|
size = _ref$size === void 0 ? "medium" : _ref$size,
|
|
159
52
|
_ref$tabIndex = _ref.tabIndex,
|
|
160
53
|
tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
|
|
161
|
-
var
|
|
162
|
-
_useState4 = (0, _slicedToArray2["default"])(_useState3, 1),
|
|
163
|
-
selectId = _useState4[0];
|
|
54
|
+
var selectId = "select-".concat((0, _react.useId)());
|
|
164
55
|
var selectLabelId = "label-".concat(selectId);
|
|
165
56
|
var errorId = "error-".concat(selectId);
|
|
166
|
-
var
|
|
167
|
-
var
|
|
57
|
+
var listboxId = "".concat(selectId, "-listbox");
|
|
58
|
+
var _useState = (0, _react.useState)(defaultValue !== null && defaultValue !== void 0 ? defaultValue : multiple ? [] : ""),
|
|
59
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
60
|
+
innerValue = _useState2[0],
|
|
61
|
+
setInnerValue = _useState2[1];
|
|
62
|
+
var _useState3 = (0, _react.useState)(""),
|
|
63
|
+
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
64
|
+
searchValue = _useState4[0],
|
|
65
|
+
setSearchValue = _useState4[1];
|
|
66
|
+
var _useState5 = (0, _react.useState)(-1),
|
|
168
67
|
_useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
var _useState7 = (0, _react.useState)(
|
|
68
|
+
visualFocusIndex = _useState6[0],
|
|
69
|
+
changeVisualFocusIndex = _useState6[1];
|
|
70
|
+
var _useState7 = (0, _react.useState)(false),
|
|
172
71
|
_useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
var _useState9 = (0, _react.useState)(-1),
|
|
176
|
-
_useState10 = (0, _slicedToArray2["default"])(_useState9, 2),
|
|
177
|
-
visualFocusIndex = _useState10[0],
|
|
178
|
-
changeVisualFocusIndex = _useState10[1];
|
|
179
|
-
var _useState11 = (0, _react.useState)(false),
|
|
180
|
-
_useState12 = (0, _slicedToArray2["default"])(_useState11, 2),
|
|
181
|
-
isOpen = _useState12[0],
|
|
182
|
-
changeIsOpen = _useState12[1];
|
|
72
|
+
isOpen = _useState8[0],
|
|
73
|
+
changeIsOpen = _useState8[1];
|
|
183
74
|
var selectRef = (0, _react.useRef)(null);
|
|
184
75
|
var selectSearchInputRef = (0, _react.useRef)(null);
|
|
185
76
|
var selectedOptionLabelRef = (0, _react.useRef)(null);
|
|
186
|
-
var width =
|
|
77
|
+
var width = (0, _useWidth["default"])(selectRef.current);
|
|
187
78
|
var colorsTheme = (0, _useTheme["default"])();
|
|
188
79
|
var translatedLabels = (0, _useTranslatedLabels["default"])();
|
|
189
80
|
var optionalItem = {
|
|
@@ -191,20 +82,20 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
191
82
|
value: ""
|
|
192
83
|
};
|
|
193
84
|
var filteredOptions = (0, _react.useMemo)(function () {
|
|
194
|
-
return filterOptionsBySearchValue(options, searchValue);
|
|
85
|
+
return (0, _selectUtils.filterOptionsBySearchValue)(options, searchValue);
|
|
195
86
|
}, [options, searchValue]);
|
|
196
87
|
var lastOptionIndex = (0, _react.useMemo)(function () {
|
|
197
|
-
return getLastOptionIndex(options, filteredOptions, searchable, optional, multiple);
|
|
88
|
+
return (0, _selectUtils.getLastOptionIndex)(options, filteredOptions, searchable, optional, multiple);
|
|
198
89
|
}, [options, filteredOptions, searchable, optional, multiple]);
|
|
199
90
|
var _useMemo = (0, _react.useMemo)(function () {
|
|
200
|
-
return getSelectedOption(value !== null && value !== void 0 ? value : innerValue, options, multiple, optional, optionalItem);
|
|
91
|
+
return (0, _selectUtils.getSelectedOption)(value !== null && value !== void 0 ? value : innerValue, options, multiple, optional, optionalItem);
|
|
201
92
|
}, [value, innerValue, options, multiple, optional, optionalItem]),
|
|
202
93
|
selectedOption = _useMemo.selectedOption,
|
|
203
94
|
singleSelectionIndex = _useMemo.singleSelectionIndex;
|
|
204
|
-
var
|
|
205
|
-
if (!isOpen && canOpenOptions(options, disabled)) changeIsOpen(true);
|
|
95
|
+
var openListbox = function openListbox() {
|
|
96
|
+
if (!isOpen && (0, _selectUtils.canOpenOptions)(options, disabled)) changeIsOpen(true);
|
|
206
97
|
};
|
|
207
|
-
var
|
|
98
|
+
var closeListbox = function closeListbox() {
|
|
208
99
|
if (isOpen) {
|
|
209
100
|
changeIsOpen(false);
|
|
210
101
|
changeVisualFocusIndex(-1);
|
|
@@ -219,7 +110,7 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
219
110
|
});else newValue = [].concat((0, _toConsumableArray2["default"])((_ref3 = value && Array.isArray(value) && value) !== null && _ref3 !== void 0 ? _ref3 : innerValue && Array.isArray(innerValue) && innerValue), [newOption.value]);
|
|
220
111
|
} else newValue = newOption.value;
|
|
221
112
|
value !== null && value !== void 0 ? value : setInnerValue(newValue);
|
|
222
|
-
notOptionalCheck(newValue, multiple, optional) ? onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
113
|
+
(0, _selectUtils.notOptionalCheck)(newValue, multiple, optional) ? onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
223
114
|
value: newValue,
|
|
224
115
|
error: translatedLabels.formFields.requiredValueErrorMessage
|
|
225
116
|
}) : onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
@@ -229,20 +120,19 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
229
120
|
var handleSelectOnClick = function handleSelectOnClick() {
|
|
230
121
|
searchable && selectSearchInputRef.current.focus();
|
|
231
122
|
if (isOpen) {
|
|
232
|
-
|
|
123
|
+
closeListbox();
|
|
233
124
|
setSearchValue("");
|
|
234
|
-
} else
|
|
125
|
+
} else openListbox();
|
|
235
126
|
};
|
|
236
127
|
var handleSelectOnFocus = function handleSelectOnFocus(event) {
|
|
237
128
|
if (!event.currentTarget.contains(event.relatedTarget)) searchable && selectSearchInputRef.current.focus();
|
|
238
129
|
};
|
|
239
130
|
var handleSelectOnBlur = function handleSelectOnBlur(event) {
|
|
240
|
-
// focus leaves container (outside, not to a child)
|
|
241
131
|
if (!event.currentTarget.contains(event.relatedTarget)) {
|
|
242
|
-
|
|
132
|
+
closeListbox();
|
|
243
133
|
setSearchValue("");
|
|
244
134
|
var currentValue = value !== null && value !== void 0 ? value : innerValue;
|
|
245
|
-
notOptionalCheck(currentValue, multiple, optional) ? onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
135
|
+
(0, _selectUtils.notOptionalCheck)(currentValue, multiple, optional) ? onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
246
136
|
value: currentValue,
|
|
247
137
|
error: translatedLabels.formFields.requiredValueErrorMessage
|
|
248
138
|
}) : onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
@@ -258,7 +148,7 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
258
148
|
singleSelectionIndex !== undefined && (!isOpen || visualFocusIndex === -1 && singleSelectionIndex > -1 && singleSelectionIndex <= lastOptionIndex) ? changeVisualFocusIndex(singleSelectionIndex) : changeVisualFocusIndex(function (visualFocusIndex) {
|
|
259
149
|
if (visualFocusIndex < lastOptionIndex) return visualFocusIndex + 1;else if (visualFocusIndex === lastOptionIndex) return 0;
|
|
260
150
|
});
|
|
261
|
-
|
|
151
|
+
openListbox();
|
|
262
152
|
break;
|
|
263
153
|
case "Up":
|
|
264
154
|
case "ArrowUp":
|
|
@@ -266,12 +156,13 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
266
156
|
singleSelectionIndex !== undefined && (!isOpen || visualFocusIndex === -1 && singleSelectionIndex > -1 && singleSelectionIndex <= lastOptionIndex) ? changeVisualFocusIndex(singleSelectionIndex) : changeVisualFocusIndex(function (visualFocusIndex) {
|
|
267
157
|
return visualFocusIndex === 0 || visualFocusIndex === -1 ? lastOptionIndex : visualFocusIndex - 1;
|
|
268
158
|
});
|
|
269
|
-
|
|
159
|
+
openListbox();
|
|
270
160
|
break;
|
|
271
161
|
case "Esc":
|
|
272
162
|
case "Escape":
|
|
273
163
|
event.preventDefault();
|
|
274
|
-
|
|
164
|
+
isOpen && event.stopPropagation();
|
|
165
|
+
closeListbox();
|
|
275
166
|
setSearchValue("");
|
|
276
167
|
break;
|
|
277
168
|
case "Enter":
|
|
@@ -279,7 +170,7 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
279
170
|
var accLength = optional && !multiple ? 1 : 0;
|
|
280
171
|
if (searchable) {
|
|
281
172
|
if (filteredOptions.length > 0) {
|
|
282
|
-
if (optional && !multiple && visualFocusIndex === 0 && groupsHaveOptions(filteredOptions)) handleSelectChangeValue(optionalItem);else isArrayOfOptionGroups(filteredOptions) ? groupsHaveOptions(filteredOptions) && filteredOptions.some(function (groupOption) {
|
|
173
|
+
if (optional && !multiple && visualFocusIndex === 0 && (0, _selectUtils.groupsHaveOptions)(filteredOptions)) handleSelectChangeValue(optionalItem);else (0, _selectUtils.isArrayOfOptionGroups)(filteredOptions) ? (0, _selectUtils.groupsHaveOptions)(filteredOptions) && filteredOptions.some(function (groupOption) {
|
|
283
174
|
var groupLength = accLength + groupOption.options.length;
|
|
284
175
|
groupLength > visualFocusIndex && handleSelectChangeValue(groupOption.options[visualFocusIndex - accLength]);
|
|
285
176
|
accLength = groupLength;
|
|
@@ -287,14 +178,14 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
287
178
|
}) : handleSelectChangeValue(filteredOptions[visualFocusIndex - accLength]);
|
|
288
179
|
}
|
|
289
180
|
} else {
|
|
290
|
-
if (optional && !multiple && visualFocusIndex === 0) handleSelectChangeValue(optionalItem);else isArrayOfOptionGroups(options) ? options.some(function (groupOption) {
|
|
181
|
+
if (optional && !multiple && visualFocusIndex === 0) handleSelectChangeValue(optionalItem);else (0, _selectUtils.isArrayOfOptionGroups)(options) ? options.some(function (groupOption) {
|
|
291
182
|
var groupLength = accLength + groupOption.options.length;
|
|
292
183
|
groupLength > visualFocusIndex && handleSelectChangeValue(groupOption.options[visualFocusIndex - accLength]);
|
|
293
184
|
accLength = groupLength;
|
|
294
185
|
return groupLength > visualFocusIndex;
|
|
295
186
|
}) : handleSelectChangeValue(options[visualFocusIndex - accLength]);
|
|
296
187
|
}
|
|
297
|
-
!multiple &&
|
|
188
|
+
!multiple && closeListbox();
|
|
298
189
|
setSearchValue("");
|
|
299
190
|
}
|
|
300
191
|
break;
|
|
@@ -303,7 +194,7 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
303
194
|
var handleSearchIOnChange = function handleSearchIOnChange(event) {
|
|
304
195
|
setSearchValue(event.target.value);
|
|
305
196
|
changeVisualFocusIndex(-1);
|
|
306
|
-
|
|
197
|
+
openListbox();
|
|
307
198
|
};
|
|
308
199
|
var handleClearOptionsActionOnClick = function handleClearOptionsActionOnClick(event) {
|
|
309
200
|
event.stopPropagation();
|
|
@@ -321,12 +212,12 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
321
212
|
};
|
|
322
213
|
var handleOptionOnClick = (0, _react.useCallback)(function (option) {
|
|
323
214
|
handleSelectChangeValue(option);
|
|
324
|
-
!multiple &&
|
|
215
|
+
!multiple && closeListbox();
|
|
325
216
|
setSearchValue("");
|
|
326
|
-
}, [handleSelectChangeValue,
|
|
327
|
-
(0, _react.
|
|
217
|
+
}, [handleSelectChangeValue, closeListbox, multiple]);
|
|
218
|
+
(0, _react.useLayoutEffect)(function () {
|
|
328
219
|
if ((selectedOptionLabelRef === null || selectedOptionLabelRef === void 0 ? void 0 : selectedOptionLabelRef.current) != null) {
|
|
329
|
-
if ((selectedOptionLabelRef === null || selectedOptionLabelRef === void 0 ? void 0 : selectedOptionLabelRef.current.scrollWidth) > (selectedOptionLabelRef === null || selectedOptionLabelRef === void 0 ? void 0 : selectedOptionLabelRef.current.clientWidth)) selectedOptionLabelRef.current.title = getSelectedOptionLabel(placeholder, selectedOption);else selectedOptionLabelRef.current.title = "";
|
|
220
|
+
if ((selectedOptionLabelRef === null || selectedOptionLabelRef === void 0 ? void 0 : selectedOptionLabelRef.current.scrollWidth) > (selectedOptionLabelRef === null || selectedOptionLabelRef === void 0 ? void 0 : selectedOptionLabelRef.current.clientWidth)) selectedOptionLabelRef.current.title = (0, _selectUtils.getSelectedOptionLabel)(placeholder, selectedOption);else selectedOptionLabelRef.current.title = "";
|
|
330
221
|
}
|
|
331
222
|
}, [placeholder, selectedOption]);
|
|
332
223
|
return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
@@ -360,7 +251,7 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
360
251
|
ref: selectRef,
|
|
361
252
|
tabIndex: disabled ? -1 : tabIndex,
|
|
362
253
|
role: "combobox",
|
|
363
|
-
"aria-controls":
|
|
254
|
+
"aria-controls": listboxId,
|
|
364
255
|
"aria-disabled": disabled,
|
|
365
256
|
"aria-expanded": isOpen,
|
|
366
257
|
"aria-haspopup": "listbox",
|
|
@@ -381,7 +272,12 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
381
272
|
tabIndex: -1,
|
|
382
273
|
title: translatedLabels.select.actionClearSelectionTitle,
|
|
383
274
|
"aria-label": translatedLabels.select.actionClearSelectionTitle
|
|
384
|
-
},
|
|
275
|
+
}, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
|
|
276
|
+
icon: "close"
|
|
277
|
+
}))), /*#__PURE__*/_react["default"].createElement(SearchableValueContainer, null, /*#__PURE__*/_react["default"].createElement("input", {
|
|
278
|
+
style: {
|
|
279
|
+
display: "none"
|
|
280
|
+
},
|
|
385
281
|
name: name,
|
|
386
282
|
disabled: disabled,
|
|
387
283
|
value: multiple ? ((_ref4 = value && Array.isArray(value) && value) !== null && _ref4 !== void 0 ? _ref4 : innerValue && Array.isArray(innerValue) && innerValue).join(",") : value !== null && value !== void 0 ? value : innerValue,
|
|
@@ -394,13 +290,16 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
394
290
|
ref: selectSearchInputRef,
|
|
395
291
|
autoComplete: "nope",
|
|
396
292
|
autoCorrect: "nope",
|
|
397
|
-
size: 1
|
|
293
|
+
size: 1,
|
|
294
|
+
"aria-labelledby": label ? selectLabelId : undefined
|
|
398
295
|
}), (!searchable || searchValue === "") && /*#__PURE__*/_react["default"].createElement(SelectedOption, {
|
|
399
296
|
disabled: disabled,
|
|
400
297
|
atBackground: (multiple ? (value !== null && value !== void 0 ? value : innerValue).length === 0 : !(value !== null && value !== void 0 ? value : innerValue)) || searchable && isOpen
|
|
401
298
|
}, /*#__PURE__*/_react["default"].createElement(SelectedOptionLabel, {
|
|
402
299
|
ref: selectedOptionLabelRef
|
|
403
|
-
}, getSelectedOptionLabel(placeholder, selectedOption)))), !disabled && error && /*#__PURE__*/_react["default"].createElement(ErrorIcon, null,
|
|
300
|
+
}, (0, _selectUtils.getSelectedOptionLabel)(placeholder, selectedOption)))), !disabled && error && /*#__PURE__*/_react["default"].createElement(ErrorIcon, null, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
|
|
301
|
+
icon: "filled_error"
|
|
302
|
+
})), searchable && searchValue.length > 0 && /*#__PURE__*/_react["default"].createElement(ClearSearchAction, {
|
|
404
303
|
onMouseDown: function onMouseDown(event) {
|
|
405
304
|
// Avoid input to lose focus
|
|
406
305
|
event.preventDefault();
|
|
@@ -409,9 +308,13 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
409
308
|
tabIndex: -1,
|
|
410
309
|
title: translatedLabels.select.actionClearSearchTitle,
|
|
411
310
|
"aria-label": translatedLabels.select.actionClearSearchTitle
|
|
412
|
-
},
|
|
311
|
+
}, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
|
|
312
|
+
icon: "clear"
|
|
313
|
+
})), /*#__PURE__*/_react["default"].createElement(CollapseIndicator, {
|
|
413
314
|
disabled: disabled
|
|
414
|
-
},
|
|
315
|
+
}, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
|
|
316
|
+
icon: isOpen ? "keyboard_arrow_up" : "keyboard_arrow_down"
|
|
317
|
+
})))), /*#__PURE__*/_react["default"].createElement(Popover.Portal, null, /*#__PURE__*/_react["default"].createElement(Popover.Content, {
|
|
415
318
|
sideOffset: 4,
|
|
416
319
|
style: {
|
|
417
320
|
zIndex: "2147483647"
|
|
@@ -425,7 +328,7 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
425
328
|
event.preventDefault();
|
|
426
329
|
}
|
|
427
330
|
}, /*#__PURE__*/_react["default"].createElement(_Listbox["default"], {
|
|
428
|
-
id:
|
|
331
|
+
id: listboxId,
|
|
429
332
|
currentValue: value !== null && value !== void 0 ? value : innerValue,
|
|
430
333
|
options: searchable ? filteredOptions : options,
|
|
431
334
|
visualFocusIndex: visualFocusIndex,
|
|
@@ -440,6 +343,7 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
440
343
|
}
|
|
441
344
|
})))), !disabled && typeof error === "string" && /*#__PURE__*/_react["default"].createElement(Error, {
|
|
442
345
|
id: errorId,
|
|
346
|
+
role: "alert",
|
|
443
347
|
"aria-live": error ? "assertive" : "off"
|
|
444
348
|
}, error)));
|
|
445
349
|
});
|
|
@@ -452,8 +356,10 @@ var sizes = {
|
|
|
452
356
|
var calculateWidth = function calculateWidth(margin, size) {
|
|
453
357
|
return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
|
|
454
358
|
};
|
|
455
|
-
var SelectContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n
|
|
359
|
+
var SelectContainer = _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 font-family: ", ";\n"])), function (props) {
|
|
456
360
|
return calculateWidth(props.margin, props.size);
|
|
361
|
+
}, function (props) {
|
|
362
|
+
return props.size !== "fillParent" && "min-width:" + calculateWidth(props.margin, props.size);
|
|
457
363
|
}, function (props) {
|
|
458
364
|
return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
|
|
459
365
|
}, function (props) {
|
|
@@ -464,11 +370,11 @@ var SelectContainer = _styledComponents["default"].div(_templateObject || (_temp
|
|
|
464
370
|
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
|
|
465
371
|
}, function (props) {
|
|
466
372
|
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
|
|
467
|
-
});
|
|
468
|
-
var Label = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n cursor: default;\n ", "\n"])), function (props) {
|
|
469
|
-
return props.disabled ? props.theme.disabledColor : props.theme.labelFontColor;
|
|
470
373
|
}, function (props) {
|
|
471
374
|
return props.theme.fontFamily;
|
|
375
|
+
});
|
|
376
|
+
var Label = _styledComponents["default"].label(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n cursor: default;\n ", "\n"])), function (props) {
|
|
377
|
+
return props.disabled ? props.theme.disabledColor : props.theme.labelFontColor;
|
|
472
378
|
}, function (props) {
|
|
473
379
|
return props.theme.labelFontSize;
|
|
474
380
|
}, function (props) {
|
|
@@ -483,10 +389,8 @@ var Label = _styledComponents["default"].span(_templateObject2 || (_templateObje
|
|
|
483
389
|
var OptionalLabel = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n font-weight: ", ";\n"])), function (props) {
|
|
484
390
|
return props.theme.optionalLabelFontWeight;
|
|
485
391
|
});
|
|
486
|
-
var HelperText = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-
|
|
392
|
+
var HelperText = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n margin-bottom: 0.25rem;\n"])), function (props) {
|
|
487
393
|
return props.disabled ? props.theme.disabledColor : props.theme.helperTextFontColor;
|
|
488
|
-
}, function (props) {
|
|
489
|
-
return props.theme.fontFamily;
|
|
490
394
|
}, function (props) {
|
|
491
395
|
return props.theme.helperTextFontSize;
|
|
492
396
|
}, function (props) {
|
|
@@ -507,17 +411,15 @@ var Select = _styledComponents["default"].div(_templateObject5 || (_templateObje
|
|
|
507
411
|
}, function (props) {
|
|
508
412
|
return !props.disabled && "\n &:hover {\n border-color: ".concat(props.error ? "transparent" : props.theme.hoverInputBorderColor, ";\n ").concat(props.error && "box-shadow: 0 0 0 2px ".concat(props.theme.hoverInputErrorBorderColor, ";"), "\n }\n &:focus-within {\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(props.theme.focusInputBorderColor, ";\n }\n ");
|
|
509
413
|
});
|
|
510
|
-
var SelectionIndicator = _styledComponents["default"].
|
|
414
|
+
var SelectionIndicator = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n box-sizing: border-box;\n display: grid;\n grid-template-columns: 1fr 1fr;\n min-width: 48px;\n min-height: 24px;\n border-radius: 2px;\n border: 1px solid ", ";\n"])), function (props) {
|
|
511
415
|
return props.theme.selectionIndicatorBorderColor;
|
|
512
416
|
});
|
|
513
|
-
var SelectionNumber = _styledComponents["default"].span(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n display:
|
|
514
|
-
return !props.disabled && "background-color: ".concat(props.theme.selectionIndicatorBackgroundColor);
|
|
515
|
-
}, function (props) {
|
|
417
|
+
var SelectionNumber = _styledComponents["default"].span(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n display: grid;\n place-items: center;\n border-right: 1px solid ", ";\n user-select: none;\n ", ";\n color: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n ", "\n"])), function (props) {
|
|
516
418
|
return props.theme.selectionIndicatorBorderColor;
|
|
517
419
|
}, function (props) {
|
|
518
|
-
return props.disabled
|
|
420
|
+
return !props.disabled && "background-color: ".concat(props.theme.selectionIndicatorBackgroundColor);
|
|
519
421
|
}, function (props) {
|
|
520
|
-
return props.theme.
|
|
422
|
+
return props.disabled ? props.theme.disabledColor : props.theme.selectionIndicatorFontColor;
|
|
521
423
|
}, function (props) {
|
|
522
424
|
return props.theme.selectionIndicatorFontSize;
|
|
523
425
|
}, function (props) {
|
|
@@ -527,7 +429,7 @@ var SelectionNumber = _styledComponents["default"].span(_templateObject7 || (_te
|
|
|
527
429
|
}, function (props) {
|
|
528
430
|
return props.disabled ? "cursor: not-allowed;" : "cursor: default;";
|
|
529
431
|
});
|
|
530
|
-
var ClearOptionsAction = _styledComponents["default"].button(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n display:
|
|
432
|
+
var ClearOptionsAction = _styledComponents["default"].button(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n display: grid;\n place-items: center;\n border: none;\n padding: 0;\n ", "\n background-color: ", ";\n color: ", ";\n font-size: 16px;\n\n :focus-visible {\n outline: none;\n }\n ", "\n"])), function (props) {
|
|
531
433
|
return props.disabled ? "cursor: not-allowed;" : "cursor: pointer;";
|
|
532
434
|
}, function (props) {
|
|
533
435
|
return props.disabled ? "transparent" : props.theme.enabledSelectionIndicatorActionBackgroundColor;
|
|
@@ -537,10 +439,8 @@ var ClearOptionsAction = _styledComponents["default"].button(_templateObject8 ||
|
|
|
537
439
|
return !props.disabled && "\n &:hover {\n background-color: ".concat(props.theme.hoverSelectionIndicatorActionBackgroundColor, ";\n color: ").concat(props.theme.hoverSelectionIndicatorActionIconColor, ";\n }\n &:active {\n background-color: ").concat(props.theme.activeSelectionIndicatorActionBackgroundColor, ";\n color: ").concat(props.theme.activeSelectionIndicatorActionIconColor, ";\n }\n ");
|
|
538
440
|
});
|
|
539
441
|
var SearchableValueContainer = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n display: grid;\n width: 100%;\n"])));
|
|
540
|
-
var SelectedOption = _styledComponents["default"].span(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n grid-area: 1 / 1 / 1 / 1;\n display: inline-flex;\n align-items: center;\n height: calc(2.5rem - 2px);\n padding: 0 0.5rem;\n user-select: none;\n overflow: hidden;\n\n color: ", ";\n
|
|
442
|
+
var SelectedOption = _styledComponents["default"].span(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n grid-area: 1 / 1 / 1 / 1;\n display: inline-flex;\n align-items: center;\n height: calc(2.5rem - 2px);\n padding: 0 0.5rem;\n user-select: none;\n overflow: hidden;\n\n color: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n"])), function (props) {
|
|
541
443
|
if (props.disabled) return props.theme.disabledColor;else if (props.atBackground) return props.theme.placeholderFontColor;else return props.theme.valueFontColor;
|
|
542
|
-
}, function (props) {
|
|
543
|
-
return props.theme.fontFamily;
|
|
544
444
|
}, function (props) {
|
|
545
445
|
return props.theme.valueFontSize;
|
|
546
446
|
}, function (props) {
|
|
@@ -549,11 +449,8 @@ var SelectedOption = _styledComponents["default"].span(_templateObject10 || (_te
|
|
|
549
449
|
return props.theme.valueFontWeight;
|
|
550
450
|
});
|
|
551
451
|
var SelectedOptionLabel = _styledComponents["default"].span(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n"])));
|
|
552
|
-
var
|
|
553
|
-
var SearchInput = _styledComponents["default"].input(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["\n grid-area: 1 / 1 / 1 / 1;\n height: calc(2.5rem - 2px);\n background: none;\n border: none;\n outline: none;\n padding: 0 0.5rem;\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: 1.5em;\n"])), function (props) {
|
|
452
|
+
var SearchInput = _styledComponents["default"].input(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n grid-area: 1 / 1 / 1 / 1;\n height: calc(2.5rem - 2px);\n background: none;\n border: none;\n outline: none;\n padding: 0 0.5rem;\n color: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: 1.5em;\n"])), function (props) {
|
|
554
453
|
return props.disabled ? props.theme.disabledColor : props.theme.valueFontColor;
|
|
555
|
-
}, function (props) {
|
|
556
|
-
return props.theme.fontFamily;
|
|
557
454
|
}, function (props) {
|
|
558
455
|
return props.theme.valueFontSize;
|
|
559
456
|
}, function (props) {
|
|
@@ -561,20 +458,16 @@ var SearchInput = _styledComponents["default"].input(_templateObject13 || (_temp
|
|
|
561
458
|
}, function (props) {
|
|
562
459
|
return props.theme.valueFontWeight;
|
|
563
460
|
});
|
|
564
|
-
var ErrorIcon = _styledComponents["default"].span(
|
|
461
|
+
var ErrorIcon = _styledComponents["default"].span(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n padding: 3px;\n height: 18px;\n width: 18px;\n margin-left: 0.25rem;\n color: ", ";\n font-size: 1.25rem;\n"])), function (props) {
|
|
565
462
|
return props.theme.errorIconColor;
|
|
566
463
|
});
|
|
567
|
-
var Error = _styledComponents["default"].span(
|
|
464
|
+
var Error = _styledComponents["default"].span(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2["default"])(["\n min-height: 1.5em;\n color: ", ";\n font-size: 0.75rem;\n line-height: 1.5em;\n margin-top: 0.25rem;\n"])), function (props) {
|
|
568
465
|
return props.theme.errorMessageColor;
|
|
569
|
-
}, function (props) {
|
|
570
|
-
return props.theme.fontFamily;
|
|
571
466
|
});
|
|
572
|
-
var CollapseIndicator = _styledComponents["default"].span(
|
|
467
|
+
var CollapseIndicator = _styledComponents["default"].span(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteral2["default"])(["\n display: grid;\n place-items: center;\n padding: 4px;\n font-size: 16px;\n margin-left: 0.25rem;\n color: ", ";\n"])), function (props) {
|
|
573
468
|
return props.disabled ? props.theme.disabledColor : props.theme.collapseIndicatorColor;
|
|
574
469
|
});
|
|
575
|
-
var ClearSearchAction = _styledComponents["default"].button(
|
|
576
|
-
return props.theme.fontFamily;
|
|
577
|
-
}, function (props) {
|
|
470
|
+
var ClearSearchAction = _styledComponents["default"].button(_templateObject16 || (_templateObject16 = (0, _taggedTemplateLiteral2["default"])(["\n display: grid;\n place-items: center;\n min-height: 24px;\n min-width: 24px;\n margin-left: 0.25rem;\n border: none;\n border-radius: 2px;\n padding: 0;\n background-color: ", ";\n color: ", ";\n font-size: 1rem;\n cursor: pointer;\n\n &:hover {\n background-color: ", ";\n color: ", ";\n }\n &:active {\n background-color: ", ";\n color: ", ";\n }\n"])), function (props) {
|
|
578
471
|
return props.theme.actionBackgroundColor;
|
|
579
472
|
}, function (props) {
|
|
580
473
|
return props.theme.actionIconColor;
|