@dxc-technology/halstack-react 0.0.0-e1a279c → 0.0.0-e201636
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/BackgroundColorContext.d.ts +10 -0
- package/BackgroundColorContext.js +1 -4
- package/HalstackContext.d.ts +12 -0
- package/HalstackContext.js +295 -0
- package/accordion/Accordion.d.ts +1 -1
- package/accordion/Accordion.js +15 -47
- package/accordion/Accordion.stories.tsx +307 -0
- package/accordion/Accordion.test.js +72 -0
- package/accordion/types.d.ts +8 -8
- package/accordion-group/AccordionGroup.d.ts +1 -1
- package/accordion-group/AccordionGroup.js +15 -17
- package/accordion-group/AccordionGroup.stories.tsx +225 -0
- package/accordion-group/AccordionGroup.test.js +151 -0
- package/accordion-group/types.d.ts +8 -8
- package/alert/Alert.js +6 -3
- package/alert/Alert.test.js +92 -0
- package/alert/types.d.ts +1 -1
- package/badge/Badge.d.ts +4 -0
- package/badge/Badge.js +6 -4
- package/badge/types.d.ts +5 -0
- package/{radio → badge}/types.js +0 -0
- package/bleed/Bleed.d.ts +3 -0
- package/bleed/Bleed.js +84 -0
- package/bleed/Bleed.stories.tsx +342 -0
- package/bleed/types.d.ts +37 -0
- package/bleed/types.js +5 -0
- package/box/Box.d.ts +1 -1
- package/box/Box.js +26 -39
- package/box/Box.test.js +18 -0
- package/box/types.d.ts +0 -4
- package/button/Button.d.ts +1 -1
- package/button/Button.js +24 -27
- package/button/Button.stories.tsx +6 -8
- package/button/Button.test.js +35 -0
- package/button/types.d.ts +5 -9
- package/card/Card.js +32 -34
- package/card/Card.stories.tsx +201 -0
- package/card/Card.test.js +50 -0
- package/card/ice-cream.jpg +0 -0
- package/card/types.d.ts +4 -6
- package/checkbox/Checkbox.d.ts +1 -1
- package/checkbox/Checkbox.js +45 -41
- package/checkbox/Checkbox.stories.tsx +124 -128
- package/checkbox/Checkbox.test.js +78 -0
- package/checkbox/types.d.ts +9 -5
- package/chip/Chip.d.ts +4 -0
- package/chip/Chip.js +16 -76
- package/chip/Chip.stories.tsx +6 -8
- package/chip/Chip.test.js +56 -0
- package/chip/types.d.ts +45 -0
- package/chip/types.js +5 -0
- package/common/variables.js +234 -341
- package/date-input/DateInput.js +63 -52
- package/date-input/DateInput.stories.tsx +7 -7
- package/date-input/DateInput.test.js +479 -0
- package/date-input/types.d.ts +16 -9
- package/dialog/Dialog.js +8 -35
- package/dialog/Dialog.test.js +40 -0
- package/dropdown/Dropdown.d.ts +1 -1
- package/dropdown/Dropdown.js +22 -48
- package/dropdown/Dropdown.stories.tsx +249 -0
- package/dropdown/Dropdown.test.js +189 -0
- package/dropdown/types.d.ts +6 -15
- package/file-input/FileInput.d.ts +4 -0
- package/file-input/FileInput.js +172 -111
- package/file-input/FileInput.stories.tsx +507 -0
- package/file-input/FileInput.test.js +457 -0
- package/file-input/FileItem.d.ts +14 -0
- package/file-input/FileItem.js +16 -23
- package/file-input/types.d.ts +112 -0
- package/file-input/types.js +5 -0
- package/footer/Footer.d.ts +1 -1
- package/footer/Footer.js +32 -113
- package/footer/{Footer.stories.jsx → Footer.stories.tsx} +1 -22
- package/footer/Footer.test.js +109 -0
- package/footer/Icons.d.ts +2 -0
- package/footer/Icons.js +3 -3
- package/footer/types.d.ts +22 -18
- package/header/Header.js +29 -50
- package/header/Header.stories.tsx +172 -0
- package/header/Header.test.js +79 -0
- package/header/Icons.d.ts +2 -0
- package/header/types.d.ts +4 -2
- package/heading/Heading.d.ts +4 -0
- package/heading/Heading.js +7 -24
- package/heading/Heading.stories.tsx +54 -0
- package/heading/Heading.test.js +186 -0
- package/heading/types.d.ts +33 -0
- package/heading/types.js +5 -0
- package/inset/Inset.d.ts +3 -0
- package/inset/Inset.js +84 -0
- package/inset/Inset.stories.tsx +229 -0
- package/inset/types.d.ts +37 -0
- package/inset/types.js +5 -0
- package/layout/ApplicationLayout.d.ts +11 -0
- package/layout/ApplicationLayout.js +84 -120
- package/layout/ApplicationLayout.stories.tsx +126 -0
- package/layout/Icons.d.ts +5 -0
- package/layout/Icons.js +13 -2
- package/layout/SidenavContext.d.ts +5 -0
- package/layout/SidenavContext.js +19 -0
- package/layout/types.d.ts +52 -0
- package/layout/types.js +5 -0
- package/link/Link.d.ts +3 -2
- package/link/Link.js +61 -86
- package/link/Link.stories.tsx +131 -15
- package/link/Link.test.js +83 -0
- package/link/types.d.ts +9 -29
- package/list/List.d.ts +4 -0
- package/list/List.js +47 -0
- package/list/List.stories.tsx +95 -0
- package/list/types.d.ts +7 -0
- package/list/types.js +5 -0
- package/main.d.ts +12 -9
- package/main.js +72 -42
- package/number-input/NumberInput.js +14 -24
- package/number-input/NumberInput.stories.tsx +5 -5
- package/number-input/NumberInput.test.js +506 -0
- package/number-input/NumberInputContext.d.ts +4 -0
- package/number-input/NumberInputContext.js +5 -2
- package/number-input/numberInputContextTypes.d.ts +19 -0
- package/number-input/numberInputContextTypes.js +5 -0
- package/number-input/types.d.ts +17 -10
- package/package.json +9 -6
- package/paginator/Paginator.js +19 -46
- package/paginator/Paginator.test.js +266 -0
- package/password-input/PasswordInput.js +23 -19
- package/password-input/PasswordInput.stories.tsx +3 -3
- package/password-input/PasswordInput.test.js +180 -0
- package/password-input/types.d.ts +29 -19
- package/progress-bar/ProgressBar.js +5 -5
- package/progress-bar/ProgressBar.stories.jsx +11 -11
- package/progress-bar/ProgressBar.test.js +65 -0
- package/quick-nav/QuickNav.d.ts +4 -0
- package/quick-nav/QuickNav.js +112 -0
- package/quick-nav/QuickNav.stories.tsx +237 -0
- package/quick-nav/types.d.ts +21 -0
- package/quick-nav/types.js +5 -0
- package/radio-group/Radio.d.ts +4 -0
- package/radio-group/Radio.js +141 -0
- package/radio-group/RadioGroup.d.ts +4 -0
- package/radio-group/RadioGroup.js +282 -0
- package/radio-group/RadioGroup.stories.tsx +100 -0
- package/radio-group/RadioGroup.test.js +695 -0
- package/radio-group/types.d.ts +114 -0
- package/radio-group/types.js +5 -0
- package/resultsetTable/ResultsetTable.d.ts +4 -0
- package/resultsetTable/ResultsetTable.js +9 -29
- package/resultsetTable/ResultsetTable.stories.tsx +275 -0
- package/resultsetTable/ResultsetTable.test.js +306 -0
- package/resultsetTable/types.d.ts +67 -0
- package/resultsetTable/types.js +5 -0
- package/row/Row.d.ts +3 -0
- package/row/Row.js +127 -0
- package/row/Row.stories.tsx +237 -0
- package/row/types.d.ts +28 -0
- package/row/types.js +5 -0
- package/select/Icons.d.ts +10 -0
- package/select/Icons.js +93 -0
- package/select/Listbox.d.ts +4 -0
- package/select/Listbox.js +152 -0
- package/select/Option.d.ts +4 -0
- package/select/Option.js +110 -0
- package/select/Select.d.ts +4 -0
- package/select/Select.js +122 -342
- package/select/Select.stories.tsx +103 -81
- package/select/Select.test.js +2120 -0
- package/select/types.d.ts +213 -0
- package/select/types.js +5 -0
- package/sidenav/Sidenav.d.ts +1 -1
- package/sidenav/Sidenav.js +22 -11
- package/sidenav/Sidenav.stories.tsx +182 -0
- package/sidenav/Sidenav.test.js +56 -0
- package/slider/Slider.d.ts +1 -1
- package/slider/Slider.js +6 -5
- package/slider/Slider.stories.tsx +8 -8
- package/slider/Slider.test.js +150 -0
- package/slider/types.d.ts +4 -0
- package/spinner/Spinner.js +3 -3
- package/spinner/Spinner.stories.jsx +1 -0
- package/spinner/Spinner.test.js +64 -0
- package/stack/Stack.d.ts +3 -0
- package/stack/Stack.js +97 -0
- package/stack/Stack.stories.tsx +164 -0
- package/stack/types.d.ts +24 -0
- package/stack/types.js +5 -0
- package/switch/Switch.d.ts +1 -1
- package/switch/Switch.js +37 -21
- package/switch/Switch.stories.tsx +15 -15
- package/switch/Switch.test.js +98 -0
- package/switch/types.d.ts +6 -2
- package/table/Table.js +3 -3
- package/table/Table.stories.jsx +2 -1
- package/table/Table.test.js +26 -0
- package/tabs/Tabs.d.ts +1 -1
- package/tabs/Tabs.js +20 -20
- package/tabs/Tabs.stories.tsx +112 -0
- package/tabs/Tabs.test.js +140 -0
- package/tabs/types.d.ts +29 -18
- package/tabs-nav/NavTabs.d.ts +8 -0
- package/tabs-nav/NavTabs.js +125 -0
- package/tabs-nav/NavTabs.stories.tsx +170 -0
- package/tabs-nav/NavTabs.test.js +82 -0
- package/tabs-nav/Tab.d.ts +4 -0
- package/tabs-nav/Tab.js +132 -0
- package/tabs-nav/types.d.ts +53 -0
- package/tabs-nav/types.js +5 -0
- package/tag/Tag.d.ts +1 -1
- package/tag/Tag.js +18 -28
- package/tag/Tag.stories.tsx +26 -29
- package/tag/Tag.test.js +60 -0
- package/tag/types.d.ts +23 -14
- package/text/Text.d.ts +7 -0
- package/text/Text.js +30 -0
- package/text/Text.stories.tsx +19 -0
- package/text-input/Suggestion.d.ts +4 -0
- package/text-input/Suggestion.js +55 -0
- package/text-input/TextInput.d.ts +4 -0
- package/text-input/TextInput.js +91 -146
- package/text-input/TextInput.stories.tsx +474 -0
- package/text-input/TextInput.test.js +1712 -0
- package/text-input/types.d.ts +178 -0
- package/text-input/types.js +5 -0
- package/textarea/Textarea.d.ts +4 -0
- package/textarea/Textarea.js +39 -79
- package/textarea/Textarea.stories.jsx +37 -15
- package/textarea/Textarea.test.js +437 -0
- package/textarea/types.d.ts +137 -0
- package/textarea/types.js +5 -0
- package/toggle-group/ToggleGroup.d.ts +4 -0
- package/toggle-group/ToggleGroup.js +18 -46
- package/toggle-group/ToggleGroup.stories.tsx +27 -32
- package/toggle-group/ToggleGroup.test.js +156 -0
- package/toggle-group/types.d.ts +105 -0
- package/toggle-group/types.js +5 -0
- package/useTheme.d.ts +2 -0
- package/useTheme.js +2 -2
- package/useTranslatedLabels.d.ts +2 -0
- package/useTranslatedLabels.js +20 -0
- package/wizard/Wizard.d.ts +1 -1
- package/wizard/Wizard.js +107 -46
- package/wizard/{Wizard.stories.jsx → Wizard.stories.tsx} +13 -23
- package/wizard/Wizard.test.js +141 -0
- package/wizard/types.d.ts +9 -9
- package/ThemeContext.js +0 -246
- package/V3Select/V3Select.js +0 -455
- package/V3Select/index.d.ts +0 -27
- package/V3Textarea/V3Textarea.js +0 -260
- package/V3Textarea/index.d.ts +0 -27
- package/chip/index.d.ts +0 -22
- package/date/Date.js +0 -373
- package/date/index.d.ts +0 -27
- package/file-input/index.d.ts +0 -81
- package/heading/index.d.ts +0 -17
- package/input-text/Icons.js +0 -22
- package/input-text/InputText.js +0 -611
- package/input-text/index.d.ts +0 -36
- package/radio/Radio.d.ts +0 -4
- package/radio/Radio.js +0 -174
- package/radio/Radio.stories.tsx +0 -192
- package/radio/types.d.ts +0 -54
- package/resultsetTable/index.d.ts +0 -19
- package/select/index.d.ts +0 -131
- package/text-input/index.d.ts +0 -135
- package/textarea/index.d.ts +0 -117
- package/toggle/Toggle.js +0 -186
- package/toggle/index.d.ts +0 -21
- package/toggle-group/index.d.ts +0 -21
- package/upload/Upload.js +0 -201
- package/upload/buttons-upload/ButtonsUpload.js +0 -111
- package/upload/buttons-upload/Icons.js +0 -40
- package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
- package/upload/dragAndDropArea/Icons.js +0 -39
- package/upload/file-upload/FileToUpload.js +0 -115
- package/upload/file-upload/Icons.js +0 -66
- package/upload/files-upload/FilesToUpload.js +0 -109
- package/upload/index.d.ts +0 -15
- package/upload/transaction/Icons.js +0 -160
- package/upload/transaction/Transaction.js +0 -104
- package/upload/transactions/Transactions.js +0 -94
- package/wizard/Icons.js +0 -65
package/select/Select.js
CHANGED
|
@@ -21,7 +21,9 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
21
21
|
|
|
22
22
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
23
23
|
|
|
24
|
-
var _useTheme = _interopRequireDefault(require("../useTheme
|
|
24
|
+
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
25
|
+
|
|
26
|
+
var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
|
|
25
27
|
|
|
26
28
|
var _variables = require("../common/variables.js");
|
|
27
29
|
|
|
@@ -29,97 +31,32 @@ var _uuid = require("uuid");
|
|
|
29
31
|
|
|
30
32
|
var _utils = require("../common/utils.js");
|
|
31
33
|
|
|
32
|
-
var
|
|
34
|
+
var _Icons = _interopRequireDefault(require("./Icons"));
|
|
35
|
+
|
|
36
|
+
var _Listbox = _interopRequireDefault(require("./Listbox"));
|
|
33
37
|
|
|
34
|
-
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17
|
|
38
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17;
|
|
35
39
|
|
|
36
40
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
37
41
|
|
|
38
42
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
39
43
|
|
|
40
|
-
var
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
role: "img",
|
|
53
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
54
|
-
height: "24px",
|
|
55
|
-
viewBox: "0 0 24 24",
|
|
56
|
-
width: "24px",
|
|
57
|
-
fill: "currentColor"
|
|
58
|
-
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
59
|
-
d: "M0 0h24v24H0V0z",
|
|
60
|
-
fill: "none"
|
|
61
|
-
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
62
|
-
d: "M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6 1.41 1.41z"
|
|
63
|
-
})),
|
|
64
|
-
arrowDown: /*#__PURE__*/_react["default"].createElement("svg", {
|
|
65
|
-
role: "img",
|
|
66
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
67
|
-
height: "24px",
|
|
68
|
-
viewBox: "0 0 24 24",
|
|
69
|
-
width: "24px",
|
|
70
|
-
fill: "currentColor"
|
|
71
|
-
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
72
|
-
d: "M0 0h24v24H0V0z",
|
|
73
|
-
fill: "none"
|
|
74
|
-
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
75
|
-
d: "M7.41 8.59L12 13.17l4.59-4.58L18 10l-6 6-6-6 1.41-1.41z"
|
|
76
|
-
})),
|
|
77
|
-
clear: /*#__PURE__*/_react["default"].createElement("svg", {
|
|
78
|
-
role: "img",
|
|
79
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
80
|
-
width: "24",
|
|
81
|
-
height: "24",
|
|
82
|
-
viewBox: "0 0 24 24",
|
|
83
|
-
fill: "currentColor"
|
|
84
|
-
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
85
|
-
d: "M0 0h24v24H0V0z",
|
|
86
|
-
fill: "none"
|
|
87
|
-
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
88
|
-
d: "M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z"
|
|
89
|
-
})),
|
|
90
|
-
selected: /*#__PURE__*/_react["default"].createElement("svg", {
|
|
91
|
-
role: "img",
|
|
92
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
93
|
-
height: "24px",
|
|
94
|
-
viewBox: "0 0 24 24",
|
|
95
|
-
width: "24px",
|
|
96
|
-
fill: "currentColor"
|
|
97
|
-
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
98
|
-
d: "M0 0h24v24H0z",
|
|
99
|
-
fill: "none"
|
|
100
|
-
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
101
|
-
d: "M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z"
|
|
102
|
-
})),
|
|
103
|
-
searchOff: /*#__PURE__*/_react["default"].createElement("svg", {
|
|
104
|
-
role: "img",
|
|
105
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
106
|
-
height: "24px",
|
|
107
|
-
viewBox: "0 0 24 24",
|
|
108
|
-
width: "24px",
|
|
109
|
-
fill: "currentColor"
|
|
110
|
-
}, /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("rect", {
|
|
111
|
-
fill: "none",
|
|
112
|
-
height: "24",
|
|
113
|
-
width: "24"
|
|
114
|
-
})), /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("path", {
|
|
115
|
-
d: "M15.5,14h-0.79l-0.28-0.27C15.41,12.59,16,11.11,16,9.5C16,5.91,13.09,3,9.5,3C6.08,3,3.28,5.64,3.03,9h2.02 C5.3,6.75,7.18,5,9.5,5C11.99,5,14,7.01,14,9.5S11.99,14,9.5,14c-0.17,0-0.33-0.03-0.5-0.05v2.02C9.17,15.99,9.33,16,9.5,16 c1.61,0,3.09-0.59,4.23-1.57L14,14.71v0.79l5,4.99L20.49,19L15.5,14z"
|
|
116
|
-
}), /*#__PURE__*/_react["default"].createElement("polygon", {
|
|
117
|
-
points: "6.47,10.82 4,13.29 1.53,10.82 0.82,11.53 3.29,14 0.82,16.47 1.53,17.18 4,14.71 6.47,17.18 7.18,16.47 4.71,14 7.18,11.53"
|
|
118
|
-
}))))
|
|
44
|
+
var groupsHaveOptions = function groupsHaveOptions(innerOptions) {
|
|
45
|
+
return innerOptions[0].hasOwnProperty("options") ? innerOptions[0].options ? innerOptions.some(function (groupOption) {
|
|
46
|
+
return groupOption.options.length > 0;
|
|
47
|
+
}) : false : true;
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
var filteredGroupsHaveOptions = function filteredGroupsHaveOptions(filteredOptions) {
|
|
51
|
+
return filteredOptions !== null && filteredOptions !== void 0 && filteredOptions[0].options ? filteredOptions.some(function (groupOption) {
|
|
52
|
+
var _groupOption$options;
|
|
53
|
+
|
|
54
|
+
return ((_groupOption$options = groupOption.options) === null || _groupOption$options === void 0 ? void 0 : _groupOption$options.length) > 0;
|
|
55
|
+
}) : true;
|
|
119
56
|
};
|
|
120
57
|
|
|
121
|
-
var
|
|
122
|
-
return
|
|
58
|
+
var canOpenOptions = function canOpenOptions(options, disabled) {
|
|
59
|
+
return !disabled && (options === null || options === void 0 ? void 0 : options.length) > 0 && groupsHaveOptions(options);
|
|
123
60
|
};
|
|
124
61
|
|
|
125
62
|
var filterOptionsBySearchValue = function filterOptionsBySearchValue(options, searchValue) {
|
|
@@ -151,9 +88,8 @@ var getLastOptionIndex = function getLastOptionIndex(options, filteredOptions, s
|
|
|
151
88
|
return optional && !multiple ? last + 1 : last;
|
|
152
89
|
};
|
|
153
90
|
|
|
154
|
-
var getSelectedOption = function getSelectedOption(options, multiple, optional,
|
|
155
|
-
var
|
|
156
|
-
var selectedOption = multiple ? [] : "";
|
|
91
|
+
var getSelectedOption = function getSelectedOption(value, options, multiple, optional, optionalItem) {
|
|
92
|
+
var selectedOption = multiple ? [] : {};
|
|
157
93
|
var singleSelectionIndex;
|
|
158
94
|
|
|
159
95
|
if (multiple) {
|
|
@@ -161,21 +97,21 @@ var getSelectedOption = function getSelectedOption(options, multiple, optional,
|
|
|
161
97
|
options.forEach(function (option) {
|
|
162
98
|
if (option.options) {
|
|
163
99
|
option.options.forEach(function (singleOption) {
|
|
164
|
-
if (
|
|
100
|
+
if (value.includes(singleOption.value)) selectedOption.push(singleOption);
|
|
165
101
|
});
|
|
166
|
-
} else if (
|
|
102
|
+
} else if (value.includes(option.value)) selectedOption.push(option);
|
|
167
103
|
});
|
|
168
104
|
}
|
|
169
105
|
} else {
|
|
170
|
-
if (optional &&
|
|
171
|
-
selectedOption =
|
|
106
|
+
if (optional && value === "") {
|
|
107
|
+
selectedOption = optionalItem;
|
|
172
108
|
singleSelectionIndex = 0;
|
|
173
109
|
} else if ((options === null || options === void 0 ? void 0 : options.length) > 0) {
|
|
174
110
|
var group_index = 0;
|
|
175
111
|
options.some(function (option, index) {
|
|
176
112
|
if (option.options) {
|
|
177
113
|
option.options.some(function (singleOption) {
|
|
178
|
-
if (singleOption.value ===
|
|
114
|
+
if (singleOption.value === value) {
|
|
179
115
|
selectedOption = singleOption;
|
|
180
116
|
singleSelectionIndex = optional ? group_index + 1 : group_index;
|
|
181
117
|
return true;
|
|
@@ -183,7 +119,7 @@ var getSelectedOption = function getSelectedOption(options, multiple, optional,
|
|
|
183
119
|
|
|
184
120
|
group_index++;
|
|
185
121
|
});
|
|
186
|
-
} else if (option.value ===
|
|
122
|
+
} else if (option.value === value) {
|
|
187
123
|
selectedOption = option;
|
|
188
124
|
singleSelectionIndex = optional ? index + 1 : index;
|
|
189
125
|
return true;
|
|
@@ -198,17 +134,20 @@ var getSelectedOption = function getSelectedOption(options, multiple, optional,
|
|
|
198
134
|
};
|
|
199
135
|
};
|
|
200
136
|
|
|
137
|
+
var notOptionalCheck = function notOptionalCheck(value, multiple, optional) {
|
|
138
|
+
return !optional && (multiple ? value.length === 0 : value === "");
|
|
139
|
+
};
|
|
140
|
+
|
|
201
141
|
var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
202
142
|
var _selectedOption$label;
|
|
203
143
|
|
|
204
|
-
var
|
|
205
|
-
label = _ref$label === void 0 ? "" : _ref$label,
|
|
144
|
+
var label = _ref.label,
|
|
206
145
|
_ref$name = _ref.name,
|
|
207
146
|
name = _ref$name === void 0 ? "" : _ref$name,
|
|
147
|
+
defaultValue = _ref.defaultValue,
|
|
208
148
|
value = _ref.value,
|
|
209
149
|
options = _ref.options,
|
|
210
|
-
|
|
211
|
-
helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
|
|
150
|
+
helperText = _ref.helperText,
|
|
212
151
|
_ref$placeholder = _ref.placeholder,
|
|
213
152
|
placeholder = _ref$placeholder === void 0 ? "" : _ref$placeholder,
|
|
214
153
|
_ref$disabled = _ref.disabled,
|
|
@@ -221,8 +160,7 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
221
160
|
multiple = _ref$multiple === void 0 ? false : _ref$multiple,
|
|
222
161
|
onChange = _ref.onChange,
|
|
223
162
|
onBlur = _ref.onBlur,
|
|
224
|
-
|
|
225
|
-
error = _ref$error === void 0 ? "" : _ref$error,
|
|
163
|
+
error = _ref.error,
|
|
226
164
|
margin = _ref.margin,
|
|
227
165
|
_ref$size = _ref.size,
|
|
228
166
|
size = _ref$size === void 0 ? "medium" : _ref$size,
|
|
@@ -234,9 +172,10 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
234
172
|
selectId = _useState2[0];
|
|
235
173
|
|
|
236
174
|
var selectLabelId = "label-".concat(selectId);
|
|
175
|
+
var errorId = "error-".concat(selectId);
|
|
237
176
|
var optionsListId = "".concat(selectId, "-listbox");
|
|
238
177
|
|
|
239
|
-
var _useState3 = (0, _react.useState)(multiple ? [] : ""),
|
|
178
|
+
var _useState3 = (0, _react.useState)(defaultValue !== null && defaultValue !== void 0 ? defaultValue : multiple ? [] : ""),
|
|
240
179
|
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
241
180
|
innerValue = _useState4[0],
|
|
242
181
|
setInnerValue = _useState4[1];
|
|
@@ -260,7 +199,8 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
260
199
|
var selectSearchInputRef = (0, _react.useRef)(null);
|
|
261
200
|
var selectOptionsListRef = (0, _react.useRef)(null);
|
|
262
201
|
var colorsTheme = (0, _useTheme["default"])();
|
|
263
|
-
var
|
|
202
|
+
var translatedLabels = (0, _useTranslatedLabels["default"])();
|
|
203
|
+
var optionalItem = {
|
|
264
204
|
label: placeholder,
|
|
265
205
|
value: ""
|
|
266
206
|
};
|
|
@@ -269,42 +209,16 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
269
209
|
}, [options, searchValue]);
|
|
270
210
|
var lastOptionIndex = (0, _react.useMemo)(function () {
|
|
271
211
|
return getLastOptionIndex(options, filteredOptions, searchable, optional, multiple);
|
|
272
|
-
}, [
|
|
212
|
+
}, [options, filteredOptions, searchable, optional, multiple]);
|
|
273
213
|
|
|
274
214
|
var _useMemo = (0, _react.useMemo)(function () {
|
|
275
|
-
return getSelectedOption(options, multiple, optional,
|
|
276
|
-
}, [options, multiple, optional,
|
|
215
|
+
return getSelectedOption(value !== null && value !== void 0 ? value : innerValue, options, multiple, optional, optionalItem);
|
|
216
|
+
}, [value, innerValue, options, multiple, optional, optionalItem]),
|
|
277
217
|
selectedOption = _useMemo.selectedOption,
|
|
278
218
|
singleSelectionIndex = _useMemo.singleSelectionIndex;
|
|
279
219
|
|
|
280
|
-
var notOptionalCheck = function notOptionalCheck(value) {
|
|
281
|
-
return value === "" && !optional;
|
|
282
|
-
};
|
|
283
|
-
|
|
284
|
-
var notOptionalMultipleCheck = function notOptionalMultipleCheck() {
|
|
285
|
-
return (value !== null && value !== void 0 ? value : innerValue).length === 0 && !optional;
|
|
286
|
-
};
|
|
287
|
-
|
|
288
|
-
var canBeOpenOptions = function canBeOpenOptions() {
|
|
289
|
-
return !disabled && (options === null || options === void 0 ? void 0 : options.length) > 0 && groupsHaveOptions();
|
|
290
|
-
};
|
|
291
|
-
|
|
292
|
-
var groupsHaveOptions = function groupsHaveOptions() {
|
|
293
|
-
return options[0].hasOwnProperty("options") ? options[0].options ? options.some(function (groupOption) {
|
|
294
|
-
return groupOption.options.length > 0;
|
|
295
|
-
}) : false : true;
|
|
296
|
-
};
|
|
297
|
-
|
|
298
|
-
var filteredGroupsHaveOptions = function filteredGroupsHaveOptions() {
|
|
299
|
-
return filteredOptions !== null && filteredOptions !== void 0 && filteredOptions[0].options ? filteredOptions.some(function (groupOption) {
|
|
300
|
-
var _groupOption$options;
|
|
301
|
-
|
|
302
|
-
return ((_groupOption$options = groupOption.options) === null || _groupOption$options === void 0 ? void 0 : _groupOption$options.length) > 0;
|
|
303
|
-
}) : true;
|
|
304
|
-
};
|
|
305
|
-
|
|
306
220
|
var openOptions = function openOptions() {
|
|
307
|
-
if (!isOpen &&
|
|
221
|
+
if (!isOpen && canOpenOptions(options, disabled)) changeIsOpen(true);
|
|
308
222
|
};
|
|
309
223
|
|
|
310
224
|
var closeOptions = function closeOptions() {
|
|
@@ -315,36 +229,21 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
315
229
|
};
|
|
316
230
|
|
|
317
231
|
var handleSelectChangeValue = function handleSelectChangeValue(newOption) {
|
|
318
|
-
|
|
319
|
-
var _res, _res2;
|
|
232
|
+
var newValue;
|
|
320
233
|
|
|
321
|
-
|
|
322
|
-
if ((value !== null && value !== void 0 ? value : innerValue).includes(newOption.value)) value ?
|
|
234
|
+
if (multiple) {
|
|
235
|
+
if ((value !== null && value !== void 0 ? value : innerValue).includes(newOption.value)) newValue = (value !== null && value !== void 0 ? value : innerValue).filter(function (optionVal) {
|
|
323
236
|
return optionVal !== newOption.value;
|
|
324
|
-
})
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
});else onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
335
|
-
value: (_res2 = res) !== null && _res2 !== void 0 ? _res2 : innerValue,
|
|
336
|
-
error: null
|
|
337
|
-
});
|
|
338
|
-
} else {
|
|
339
|
-
value !== null && value !== void 0 ? value : setInnerValue(newOption.value);
|
|
340
|
-
if (notOptionalCheck(newOption.value)) onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
341
|
-
value: newOption.value,
|
|
342
|
-
error: getNotOptionalErrorMessage()
|
|
343
|
-
});else onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
344
|
-
value: newOption.value,
|
|
345
|
-
error: null
|
|
346
|
-
});
|
|
347
|
-
}
|
|
237
|
+
});else newValue = [].concat((0, _toConsumableArray2["default"])(value !== null && value !== void 0 ? value : innerValue), [newOption.value]);
|
|
238
|
+
} else newValue = newOption.value;
|
|
239
|
+
|
|
240
|
+
value !== null && value !== void 0 ? value : setInnerValue(newValue);
|
|
241
|
+
notOptionalCheck(newValue, multiple, optional) ? onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
242
|
+
value: newValue,
|
|
243
|
+
error: translatedLabels.formFields.requiredValueErrorMessage
|
|
244
|
+
}) : onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
245
|
+
value: newValue
|
|
246
|
+
});
|
|
348
247
|
};
|
|
349
248
|
|
|
350
249
|
var handleSelectOnClick = function handleSelectOnClick() {
|
|
@@ -365,12 +264,12 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
365
264
|
if (!event.currentTarget.contains(event.relatedTarget)) {
|
|
366
265
|
closeOptions();
|
|
367
266
|
setSearchValue("");
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
267
|
+
var currentValue = value !== null && value !== void 0 ? value : innerValue;
|
|
268
|
+
notOptionalCheck(currentValue, multiple, optional) ? onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
269
|
+
value: currentValue,
|
|
270
|
+
error: translatedLabels.formFields.requiredValueErrorMessage
|
|
271
|
+
}) : onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
272
|
+
value: currentValue
|
|
374
273
|
});
|
|
375
274
|
}
|
|
376
275
|
};
|
|
@@ -409,7 +308,7 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
409
308
|
|
|
410
309
|
if (searchable) {
|
|
411
310
|
if (filteredOptions.length > 0) {
|
|
412
|
-
if (optional && !multiple && visualFocusIndex === 0 && filteredGroupsHaveOptions()) handleSelectChangeValue(
|
|
311
|
+
if (optional && !multiple && visualFocusIndex === 0 && filteredGroupsHaveOptions(filteredOptions)) handleSelectChangeValue(optionalItem);else filteredOptions[0].options ? filteredGroupsHaveOptions(filteredOptions) && filteredOptions.some(function (groupOption) {
|
|
413
312
|
var groupLength = accLength + groupOption.options.length;
|
|
414
313
|
groupLength > visualFocusIndex && handleSelectChangeValue(groupOption.options[visualFocusIndex - accLength]);
|
|
415
314
|
accLength = groupLength;
|
|
@@ -417,7 +316,7 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
417
316
|
}) : handleSelectChangeValue(filteredOptions[visualFocusIndex - accLength]);
|
|
418
317
|
}
|
|
419
318
|
} else {
|
|
420
|
-
if (optional && !multiple && visualFocusIndex === 0) handleSelectChangeValue(
|
|
319
|
+
if (optional && !multiple && visualFocusIndex === 0) handleSelectChangeValue(optionalItem);else options[0].options ? options.some(function (groupOption) {
|
|
421
320
|
var groupLength = accLength + groupOption.options.length;
|
|
422
321
|
groupLength > visualFocusIndex && handleSelectChangeValue(groupOption.options[visualFocusIndex - accLength]);
|
|
423
322
|
accLength = groupLength;
|
|
@@ -442,9 +341,11 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
442
341
|
var handleClearOptionsActionOnClick = function handleClearOptionsActionOnClick(event) {
|
|
443
342
|
event.stopPropagation();
|
|
444
343
|
value !== null && value !== void 0 ? value : setInnerValue([]);
|
|
445
|
-
onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
344
|
+
!optional ? onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
446
345
|
value: [],
|
|
447
|
-
error:
|
|
346
|
+
error: translatedLabels.formFields.requiredValueErrorMessage
|
|
347
|
+
}) : onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
348
|
+
value: []
|
|
448
349
|
});
|
|
449
350
|
};
|
|
450
351
|
|
|
@@ -453,6 +354,11 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
453
354
|
setSearchValue("");
|
|
454
355
|
};
|
|
455
356
|
|
|
357
|
+
var handleOptionOnClick = (0, _react.useCallback)(function (option) {
|
|
358
|
+
handleSelectChangeValue(option);
|
|
359
|
+
!multiple && closeOptions();
|
|
360
|
+
setSearchValue("");
|
|
361
|
+
}, [handleSelectChangeValue, closeOptions, multiple]);
|
|
456
362
|
(0, _react.useLayoutEffect)(function () {
|
|
457
363
|
if (isOpen && singleSelectionIndex) {
|
|
458
364
|
var _listEl$scrollTo;
|
|
@@ -473,89 +379,20 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
473
379
|
inline: "start"
|
|
474
380
|
});
|
|
475
381
|
}, [visualFocusIndex]);
|
|
476
|
-
|
|
477
|
-
var Option = function Option(_ref2) {
|
|
478
|
-
var option = _ref2.option,
|
|
479
|
-
index = _ref2.index,
|
|
480
|
-
_ref2$isGroupedOption = _ref2.isGroupedOption,
|
|
481
|
-
isGroupedOption = _ref2$isGroupedOption === void 0 ? false : _ref2$isGroupedOption;
|
|
482
|
-
var isSelected = multiple ? (value !== null && value !== void 0 ? value : innerValue).includes(option.value) : (value !== null && value !== void 0 ? value : innerValue) === option.value;
|
|
483
|
-
var isLastOption = index === lastOptionIndex;
|
|
484
|
-
return /*#__PURE__*/_react["default"].createElement(OptionItem, {
|
|
485
|
-
id: "option-".concat(index),
|
|
486
|
-
onClick: function onClick() {
|
|
487
|
-
handleSelectChangeValue(option);
|
|
488
|
-
!multiple && closeOptions();
|
|
489
|
-
setSearchValue("");
|
|
490
|
-
},
|
|
491
|
-
visualFocused: visualFocusIndex === index,
|
|
492
|
-
selected: isSelected,
|
|
493
|
-
role: "option",
|
|
494
|
-
"aria-selected": isSelected
|
|
495
|
-
}, /*#__PURE__*/_react["default"].createElement(StyledOption, {
|
|
496
|
-
visualFocused: visualFocusIndex === index,
|
|
497
|
-
selected: isSelected,
|
|
498
|
-
last: isLastOption,
|
|
499
|
-
grouped: isGroupedOption,
|
|
500
|
-
multiple: multiple
|
|
501
|
-
}, multiple && /*#__PURE__*/_react["default"].createElement(_Checkbox["default"], {
|
|
502
|
-
tabIndex: -1,
|
|
503
|
-
checked: isSelected
|
|
504
|
-
}), option.icon && /*#__PURE__*/_react["default"].createElement(OptionIcon, {
|
|
505
|
-
grouped: isGroupedOption,
|
|
506
|
-
multiple: multiple,
|
|
507
|
-
role: !(typeof option.icon === "string") && "img"
|
|
508
|
-
}, typeof option.icon === "string" ? /*#__PURE__*/_react["default"].createElement(OptionIconImg, {
|
|
509
|
-
src: option.icon
|
|
510
|
-
}) : option.icon), /*#__PURE__*/_react["default"].createElement(OptionContent, {
|
|
511
|
-
grouped: isGroupedOption,
|
|
512
|
-
hasIcon: option.icon,
|
|
513
|
-
multiple: multiple
|
|
514
|
-
}, /*#__PURE__*/_react["default"].createElement(OptionLabel, null, option.label), !multiple && isSelected && /*#__PURE__*/_react["default"].createElement(OptionSelectedIndicator, null, selectIcons.selected))));
|
|
515
|
-
};
|
|
516
|
-
|
|
517
|
-
var globalIndex = optional && !multiple ? 0 : -1; // index for options, starting from 0 to options.length -1
|
|
518
|
-
|
|
519
|
-
var mapOptionFunc = function mapOptionFunc(option, mapIndex) {
|
|
520
|
-
if (option.options) {
|
|
521
|
-
var groupId = "group-".concat(mapIndex);
|
|
522
|
-
return option.options.length > 0 && /*#__PURE__*/_react["default"].createElement("li", null, /*#__PURE__*/_react["default"].createElement(GroupList, {
|
|
523
|
-
role: "group",
|
|
524
|
-
"aria-labelledby": groupId
|
|
525
|
-
}, /*#__PURE__*/_react["default"].createElement(GroupLabel, {
|
|
526
|
-
role: "presentation",
|
|
527
|
-
id: groupId
|
|
528
|
-
}, option.label), option.options.map(function (singleOption) {
|
|
529
|
-
globalIndex++;
|
|
530
|
-
return /*#__PURE__*/_react["default"].createElement(Option, {
|
|
531
|
-
option: singleOption,
|
|
532
|
-
index: globalIndex,
|
|
533
|
-
isGroupedOption: true
|
|
534
|
-
});
|
|
535
|
-
})));
|
|
536
|
-
} else {
|
|
537
|
-
globalIndex++;
|
|
538
|
-
return /*#__PURE__*/_react["default"].createElement(Option, {
|
|
539
|
-
key: "option-".concat(option.value),
|
|
540
|
-
option: option,
|
|
541
|
-
index: globalIndex
|
|
542
|
-
});
|
|
543
|
-
}
|
|
544
|
-
};
|
|
545
|
-
|
|
546
382
|
return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
547
383
|
theme: colorsTheme.select
|
|
548
384
|
}, /*#__PURE__*/_react["default"].createElement(SelectContainer, {
|
|
549
385
|
margin: margin,
|
|
550
386
|
size: size,
|
|
551
387
|
ref: ref
|
|
552
|
-
}, /*#__PURE__*/_react["default"].createElement(Label, {
|
|
388
|
+
}, label && /*#__PURE__*/_react["default"].createElement(Label, {
|
|
553
389
|
id: selectLabelId,
|
|
554
390
|
disabled: disabled,
|
|
555
391
|
onClick: function onClick() {
|
|
556
392
|
selectContainerRef.current.focus();
|
|
557
|
-
}
|
|
558
|
-
|
|
393
|
+
},
|
|
394
|
+
helperText: helperText
|
|
395
|
+
}, label, " ", optional && /*#__PURE__*/_react["default"].createElement(OptionalLabel, null, translatedLabels.formFields.optionalLabel)), helperText && /*#__PURE__*/_react["default"].createElement(HelperText, {
|
|
559
396
|
disabled: disabled
|
|
560
397
|
}, helperText), /*#__PURE__*/_react["default"].createElement(Select, {
|
|
561
398
|
id: selectId,
|
|
@@ -569,12 +406,14 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
569
406
|
tabIndex: tabIndex,
|
|
570
407
|
role: "combobox",
|
|
571
408
|
"aria-controls": optionsListId,
|
|
409
|
+
"aria-disabled": disabled,
|
|
572
410
|
"aria-expanded": isOpen,
|
|
573
411
|
"aria-haspopup": "listbox",
|
|
574
412
|
"aria-labelledby": selectLabelId,
|
|
575
413
|
"aria-activedescendant": visualFocusIndex >= 0 ? "option-".concat(visualFocusIndex) : undefined,
|
|
576
414
|
"aria-invalid": error ? "true" : "false",
|
|
577
|
-
"aria-
|
|
415
|
+
"aria-errormessage": error ? errorId : undefined,
|
|
416
|
+
"aria-required": !disabled && !optional
|
|
578
417
|
}, multiple && selectedOption.length > 0 && /*#__PURE__*/_react["default"].createElement(SelectionIndicator, null, /*#__PURE__*/_react["default"].createElement(SelectionNumber, {
|
|
579
418
|
disabled: disabled
|
|
580
419
|
}, selectedOption.length), /*#__PURE__*/_react["default"].createElement(ClearOptionsAction, {
|
|
@@ -585,11 +424,11 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
585
424
|
},
|
|
586
425
|
onClick: handleClearOptionsActionOnClick,
|
|
587
426
|
tabIndex: -1,
|
|
588
|
-
title:
|
|
589
|
-
"aria-label":
|
|
590
|
-
},
|
|
427
|
+
title: translatedLabels.select.actionClearSelectionTitle,
|
|
428
|
+
"aria-label": translatedLabels.select.actionClearSelectionTitle
|
|
429
|
+
}, _Icons["default"].clear)), /*#__PURE__*/_react["default"].createElement(SearchableValueContainer, null, /*#__PURE__*/_react["default"].createElement(ValueInput, {
|
|
591
430
|
name: name,
|
|
592
|
-
value: multiple ? (value !== null && value !== void 0 ? value : innerValue).join(",
|
|
431
|
+
value: multiple ? (value !== null && value !== void 0 ? value : innerValue).join(",") : value !== null && value !== void 0 ? value : innerValue,
|
|
593
432
|
readOnly: true,
|
|
594
433
|
"aria-hidden": "true"
|
|
595
434
|
}), searchable && /*#__PURE__*/_react["default"].createElement(SearchInput, {
|
|
@@ -597,43 +436,44 @@ var DxcSelect = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
|
597
436
|
disabled: disabled,
|
|
598
437
|
onChange: handleSearchIOnChange,
|
|
599
438
|
ref: selectSearchInputRef,
|
|
600
|
-
autoComplete: "
|
|
601
|
-
autoCorrect: "
|
|
602
|
-
size:
|
|
439
|
+
autoComplete: "nope",
|
|
440
|
+
autoCorrect: "nope",
|
|
441
|
+
size: 1
|
|
603
442
|
}), (!searchable || searchValue === "") && (multiple ? /*#__PURE__*/_react["default"].createElement(SelectedOption, {
|
|
604
443
|
disabled: disabled,
|
|
605
444
|
atBackground: (value !== null && value !== void 0 ? value : innerValue).length === 0 || searchable && isOpen
|
|
606
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
445
|
+
}, /*#__PURE__*/_react["default"].createElement(SelectedOptionLabel, null, selectedOption.map(function (option) {
|
|
607
446
|
return option.label;
|
|
608
447
|
}).join(", ")), selectedOption.length === 0 && placeholder) : /*#__PURE__*/_react["default"].createElement(SelectedOption, {
|
|
609
448
|
disabled: disabled,
|
|
610
449
|
atBackground: !(value !== null && value !== void 0 ? value : innerValue) || searchable && isOpen
|
|
611
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
450
|
+
}, /*#__PURE__*/_react["default"].createElement(SelectedOptionLabel, null, (_selectedOption$label = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.label) !== null && _selectedOption$label !== void 0 ? _selectedOption$label : placeholder)))), !disabled && error && /*#__PURE__*/_react["default"].createElement(ErrorIcon, null, _Icons["default"].error), searchable && searchValue.length > 0 && /*#__PURE__*/_react["default"].createElement(ClearSearchAction, {
|
|
612
451
|
onMouseDown: function onMouseDown(event) {
|
|
613
452
|
// Avoid input to lose focus
|
|
614
453
|
event.preventDefault();
|
|
615
454
|
},
|
|
616
455
|
onClick: handleClearSearchActionOnClick,
|
|
617
456
|
tabIndex: -1,
|
|
618
|
-
title:
|
|
619
|
-
"aria-label":
|
|
620
|
-
},
|
|
457
|
+
title: translatedLabels.select.actionClearSearchTitle,
|
|
458
|
+
"aria-label": translatedLabels.select.actionClearSearchTitle
|
|
459
|
+
}, _Icons["default"].clear), /*#__PURE__*/_react["default"].createElement(CollapseIndicator, {
|
|
621
460
|
disabled: disabled
|
|
622
|
-
}, isOpen ?
|
|
461
|
+
}, isOpen ? _Icons["default"].arrowUp : _Icons["default"].arrowDown), isOpen && /*#__PURE__*/_react["default"].createElement(_Listbox["default"], {
|
|
623
462
|
id: optionsListId,
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
463
|
+
currentValue: value !== null && value !== void 0 ? value : innerValue,
|
|
464
|
+
options: searchable ? filteredOptions : options,
|
|
465
|
+
visualFocusIndex: visualFocusIndex,
|
|
466
|
+
lastOptionIndex: lastOptionIndex,
|
|
467
|
+
multiple: multiple,
|
|
468
|
+
optional: optional,
|
|
469
|
+
optionalItem: optionalItem,
|
|
470
|
+
searchable: searchable,
|
|
471
|
+
handleOptionOnClick: handleOptionOnClick,
|
|
472
|
+
ref: selectOptionsListRef
|
|
473
|
+
})), !disabled && typeof error === "string" && /*#__PURE__*/_react["default"].createElement(Error, {
|
|
474
|
+
id: errorId,
|
|
475
|
+
"aria-live": error ? "assertive" : "off"
|
|
476
|
+
}, error)));
|
|
637
477
|
});
|
|
638
478
|
|
|
639
479
|
var sizes = {
|
|
@@ -661,7 +501,7 @@ var SelectContainer = _styledComponents["default"].div(_templateObject || (_temp
|
|
|
661
501
|
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
|
|
662
502
|
});
|
|
663
503
|
|
|
664
|
-
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"])), function (props) {
|
|
504
|
+
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) {
|
|
665
505
|
return props.disabled ? props.theme.disabledColor : props.theme.labelFontColor;
|
|
666
506
|
}, function (props) {
|
|
667
507
|
return props.theme.fontFamily;
|
|
@@ -673,13 +513,15 @@ var Label = _styledComponents["default"].span(_templateObject2 || (_templateObje
|
|
|
673
513
|
return props.theme.labelFontWeight;
|
|
674
514
|
}, function (props) {
|
|
675
515
|
return props.theme.labelLineHeight;
|
|
516
|
+
}, function (props) {
|
|
517
|
+
return !props.helperText && "margin-bottom: 0.25rem";
|
|
676
518
|
});
|
|
677
519
|
|
|
678
520
|
var OptionalLabel = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n font-weight: ", ";\n"])), function (props) {
|
|
679
521
|
return props.theme.optionalLabelFontWeight;
|
|
680
522
|
});
|
|
681
523
|
|
|
682
|
-
var HelperText = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
|
|
524
|
+
var HelperText = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n margin-bottom: 0.25rem;\n"])), function (props) {
|
|
683
525
|
return props.disabled ? props.theme.disabledColor : props.theme.helperTextFontColor;
|
|
684
526
|
}, function (props) {
|
|
685
527
|
return props.theme.fontFamily;
|
|
@@ -693,9 +535,7 @@ var HelperText = _styledComponents["default"].span(_templateObject4 || (_templat
|
|
|
693
535
|
return props.theme.helperTextLineHeight;
|
|
694
536
|
});
|
|
695
537
|
|
|
696
|
-
var Select = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n position: relative;\n align-items: center;\n height: calc(2.5rem - 2px);\n
|
|
697
|
-
return "".concat(props.theme.inputMarginTop, " 0 ").concat(props.theme.inputMarginBottom, " 0");
|
|
698
|
-
}, function (props) {
|
|
538
|
+
var Select = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n position: relative;\n align-items: center;\n height: calc(2.5rem - 2px);\n padding: 0 0.5rem;\n outline: none;\n ", ";\n box-shadow: 0 0 0 2px transparent;\n border-radius: 4px;\n border: 1px solid\n ", ";\n ", "\n ", ";\n\n ", ";\n"])), function (props) {
|
|
699
539
|
return props.disabled && "background-color: ".concat(props.theme.disabledInputBackgroundColor);
|
|
700
540
|
}, function (props) {
|
|
701
541
|
return props.disabled ? props.theme.disabledInputBorderColor : props.theme.enabledInputBorderColor;
|
|
@@ -755,9 +595,11 @@ var SelectedOption = _styledComponents["default"].span(_templateObject10 || (_te
|
|
|
755
595
|
return props.theme.valueFontWeight;
|
|
756
596
|
});
|
|
757
597
|
|
|
758
|
-
var
|
|
598
|
+
var SelectedOptionLabel = _styledComponents["default"].span(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n"])));
|
|
759
599
|
|
|
760
|
-
var
|
|
600
|
+
var ValueInput = _styledComponents["default"].input(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n display: none;\n"])));
|
|
601
|
+
|
|
602
|
+
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) {
|
|
761
603
|
return props.disabled ? props.theme.disabledColor : props.theme.valueFontColor;
|
|
762
604
|
}, function (props) {
|
|
763
605
|
return props.theme.fontFamily;
|
|
@@ -769,21 +611,21 @@ var SearchInput = _styledComponents["default"].input(_templateObject12 || (_temp
|
|
|
769
611
|
return props.theme.valueFontWeight;
|
|
770
612
|
});
|
|
771
613
|
|
|
772
|
-
var ErrorIcon = _styledComponents["default"].span(
|
|
614
|
+
var ErrorIcon = _styledComponents["default"].span(_templateObject14 || (_templateObject14 = (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 pointer-events: none;\n color: ", ";\n\n svg {\n line-height: 18px;\n font-size: 1.25rem;\n }\n"])), function (props) {
|
|
773
615
|
return props.theme.errorIconColor;
|
|
774
616
|
});
|
|
775
617
|
|
|
776
|
-
var Error = _styledComponents["default"].span(
|
|
618
|
+
var Error = _styledComponents["default"].span(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteral2["default"])(["\n min-height: 1.5em;\n color: ", ";\n font-family: ", ";\n font-size: 0.75rem;\n font-weight: 400;\n line-height: 1.5em;\n margin-top: 0.25rem;\n"])), function (props) {
|
|
777
619
|
return props.theme.errorMessageColor;
|
|
778
620
|
}, function (props) {
|
|
779
621
|
return props.theme.fontFamily;
|
|
780
622
|
});
|
|
781
623
|
|
|
782
|
-
var CollapseIndicator = _styledComponents["default"].span(
|
|
624
|
+
var CollapseIndicator = _styledComponents["default"].span(_templateObject16 || (_templateObject16 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n height: 16px;\n width: 16px;\n padding: 4px;\n margin-left: 0.25rem;\n color: ", ";\n"])), function (props) {
|
|
783
625
|
return props.disabled ? props.theme.disabledColor : props.theme.collapseIndicatorColor;
|
|
784
626
|
});
|
|
785
627
|
|
|
786
|
-
var ClearSearchAction = _styledComponents["default"].button(
|
|
628
|
+
var ClearSearchAction = _styledComponents["default"].button(_templateObject17 || (_templateObject17 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n height: 24px;\n width: 24px;\n font-size: 1rem;\n font-family: ", ";\n border: 1px solid transparent;\n border-radius: 2px;\n padding: 3px;\n margin-left: 0.25rem;\n background-color: ", ";\n color: ", ";\n\n cursor: pointer;\n &:hover {\n background-color: ", ";\n color: ", ";\n }\n &:active {\n background-color: ", ";\n color: ", ";\n }\n svg {\n line-height: 18px;\n }\n"])), function (props) {
|
|
787
629
|
return props.theme.fontFamily;
|
|
788
630
|
}, function (props) {
|
|
789
631
|
return props.theme.actionBackgroundColor;
|
|
@@ -799,67 +641,5 @@ var ClearSearchAction = _styledComponents["default"].button(_templateObject16 ||
|
|
|
799
641
|
return props.theme.activeActionIconColor;
|
|
800
642
|
});
|
|
801
643
|
|
|
802
|
-
var OptionsList = _styledComponents["default"].ul(_templateObject17 || (_templateObject17 = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n z-index: 1;\n max-height: 304px;\n overflow-y: auto;\n top: calc(100% + 4px);\n left: 0;\n margin: 0;\n padding: 0.25rem 0;\n width: 100%;\n background-color: ", ";\n border: 1px solid ", ";\n border-radius: 0.25rem;\n box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);\n cursor: default;\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n"])), function (props) {
|
|
803
|
-
return props.theme.listDialogBackgroundColor;
|
|
804
|
-
}, function (props) {
|
|
805
|
-
return props.theme.listDialogBorderColor;
|
|
806
|
-
}, function (props) {
|
|
807
|
-
return props.theme.listOptionFontColor;
|
|
808
|
-
}, function (props) {
|
|
809
|
-
return props.theme.fontFamily;
|
|
810
|
-
}, function (props) {
|
|
811
|
-
return props.theme.listOptionFontSize;
|
|
812
|
-
}, function (props) {
|
|
813
|
-
return props.theme.listOptionFontStyle;
|
|
814
|
-
}, function (props) {
|
|
815
|
-
return props.theme.listOptionFontWeight;
|
|
816
|
-
});
|
|
817
|
-
|
|
818
|
-
var OptionsSystemMessage = _styledComponents["default"].span(_templateObject18 || (_templateObject18 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n padding: 4px 16px;\n color: ", ";\n font-size: 0.875rem;\n line-height: 1.715em;\n"])), function (props) {
|
|
819
|
-
return props.theme.systemMessageFontColor;
|
|
820
|
-
});
|
|
821
|
-
|
|
822
|
-
var NoMatchesFoundIcon = _styledComponents["default"].span(_templateObject19 || (_templateObject19 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n height: 16px;\n width: 16px;\n padding: 4px;\n margin-right: 0.25rem;\n"])));
|
|
823
|
-
|
|
824
|
-
var GroupList = _styledComponents["default"].ul(_templateObject20 || (_templateObject20 = (0, _taggedTemplateLiteral2["default"])(["\n padding: 0;\n"])));
|
|
825
|
-
|
|
826
|
-
var GroupLabel = _styledComponents["default"].li(_templateObject21 || (_templateObject21 = (0, _taggedTemplateLiteral2["default"])(["\n padding: 4px 16px;\n font-weight: ", ";\n line-height: 1.715em;\n"])), function (props) {
|
|
827
|
-
return props.theme.listGroupLabelFontWeight;
|
|
828
|
-
});
|
|
829
|
-
|
|
830
|
-
var OptionItem = _styledComponents["default"].li(_templateObject22 || (_templateObject22 = (0, _taggedTemplateLiteral2["default"])(["\n padding: 0 0.5rem;\n box-shadow: inset 0 0 0 2px transparent;\n ", "\n ", ";\n line-height: 1.715em;\n cursor: pointer;\n\n &:hover {\n ", ";\n }\n &:active {\n ", ";\n }\n"])), function (props) {
|
|
831
|
-
return props.visualFocused && "box-shadow: inset 0 0 0 2px ".concat(props.theme.focusListOptionBorderColor, ";");
|
|
832
|
-
}, function (props) {
|
|
833
|
-
return props.selected && "background-color: ".concat(props.theme.selectedListOptionBackgroundColor);
|
|
834
|
-
}, function (props) {
|
|
835
|
-
return props.selected ? "background-color: ".concat(props.theme.selectedHoverListOptionBackgroundColor, ";") : "background-color: ".concat(props.theme.unselectedHoverListOptionBackgroundColor, ";");
|
|
836
|
-
}, function (props) {
|
|
837
|
-
return props.selected ? "background-color: ".concat(props.theme.selectedActiveListOptionBackgroundColor, ";") : "background-color: ".concat(props.theme.unselectedActiveListOptionBackgroundColor, ";");
|
|
838
|
-
});
|
|
839
|
-
|
|
840
|
-
var StyledOption = _styledComponents["default"].span(_templateObject23 || (_templateObject23 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n padding: 0.25rem 0.5rem 0.188rem 0;\n min-height: 24px;\n ", "\n ", ";\n"])), function (props) {
|
|
841
|
-
return props.grouped && props.multiple && "padding-left: 16px;";
|
|
842
|
-
}, function (props) {
|
|
843
|
-
return props.last || props.visualFocused || props.selected ? "border-bottom: 1px solid transparent" : "border-bottom: 1px solid ".concat(props.theme.listOptionDividerColor);
|
|
844
|
-
});
|
|
845
|
-
|
|
846
|
-
var OptionContent = _styledComponents["default"].span(_templateObject24 || (_templateObject24 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n width: 100%;\n overflow: hidden;\n ", "\n"])), function (props) {
|
|
847
|
-
return props.grouped && !props.multiple && !props.hasIcon ? "padding-left: 16px;" : "padding-left: 8px;";
|
|
848
|
-
});
|
|
849
|
-
|
|
850
|
-
var OptionIcon = _styledComponents["default"].span(_templateObject25 || (_templateObject25 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n height: 24px;\n width: 24px;\n ", "\n color: ", ";\n"])), function (props) {
|
|
851
|
-
return props.grouped && !props.multiple ? "padding-left: 16px;" : "padding-left: 8px;";
|
|
852
|
-
}, function (props) {
|
|
853
|
-
return props.theme.listOptionIconColor;
|
|
854
|
-
});
|
|
855
|
-
|
|
856
|
-
var OptionIconImg = _styledComponents["default"].img(_templateObject26 || (_templateObject26 = (0, _taggedTemplateLiteral2["default"])(["\n width: 16px;\n height: 16px;\n"])));
|
|
857
|
-
|
|
858
|
-
var OptionLabel = _styledComponents["default"].span(_templateObject27 || (_templateObject27 = (0, _taggedTemplateLiteral2["default"])(["\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n"])));
|
|
859
|
-
|
|
860
|
-
var OptionSelectedIndicator = _styledComponents["default"].span(_templateObject28 || (_templateObject28 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n height: 16px;\n width: 16px;\n margin-left: 4px;\n color: ", ";\n"])), function (props) {
|
|
861
|
-
return props.theme.selectedListOptionIconColor;
|
|
862
|
-
});
|
|
863
|
-
|
|
864
644
|
var _default = DxcSelect;
|
|
865
645
|
exports["default"] = _default;
|