@dxc-technology/halstack-react 0.0.0-7a66f93 → 0.0.0-7ca87fd
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/README.md +2 -2
- package/babel.config.js +5 -2
- package/dist/BackgroundColorContext.js +46 -0
- package/dist/ThemeContext.js +212 -56
- package/dist/V3Select/V3Select.js +549 -0
- package/dist/V3Select/index.d.ts +27 -0
- package/dist/V3Textarea/V3Textarea.js +264 -0
- package/dist/V3Textarea/index.d.ts +27 -0
- package/dist/accordion/Accordion.js +131 -46
- package/dist/accordion/index.d.ts +28 -0
- package/dist/accordion-group/AccordionGroup.js +36 -9
- package/dist/accordion-group/index.d.ts +16 -0
- package/dist/alert/Alert.js +179 -77
- package/dist/alert/index.d.ts +51 -0
- package/dist/badge/Badge.js +28 -7
- package/dist/box/Box.js +29 -18
- package/dist/box/index.d.ts +25 -0
- package/dist/button/Button.js +63 -27
- package/dist/button/Button.stories.js +14 -211
- package/dist/button/index.d.ts +24 -0
- package/dist/card/Card.js +72 -35
- package/dist/card/index.d.ts +22 -0
- package/dist/checkbox/Checkbox.js +98 -39
- package/dist/checkbox/index.d.ts +24 -0
- package/dist/chip/Chip.js +93 -31
- package/dist/chip/index.d.ts +22 -0
- package/dist/common/utils.js +2 -22
- package/dist/common/variables.js +1418 -270
- package/dist/date/Date.js +69 -47
- package/dist/date/index.d.ts +27 -0
- package/dist/date-input/DateInput.js +400 -0
- package/dist/date-input/index.d.ts +95 -0
- package/dist/dialog/Dialog.js +58 -37
- package/dist/dialog/index.d.ts +18 -0
- package/dist/dropdown/Dropdown.js +175 -80
- package/dist/dropdown/index.d.ts +26 -0
- package/dist/file-input/FileInput.js +644 -0
- package/dist/file-input/FileItem.js +287 -0
- package/dist/file-input/index.d.ts +81 -0
- package/dist/footer/Footer.js +89 -34
- package/dist/footer/Icons.js +77 -0
- package/dist/footer/index.d.ts +25 -0
- package/dist/header/Header.js +192 -95
- package/dist/header/Icons.js +59 -0
- package/dist/header/index.d.ts +25 -0
- package/dist/heading/Heading.js +93 -16
- package/dist/heading/index.d.ts +17 -0
- package/dist/input-text/Icons.js +22 -0
- package/dist/input-text/InputText.js +248 -113
- package/dist/input-text/index.d.ts +36 -0
- package/dist/layout/ApplicationLayout.js +18 -26
- package/dist/layout/Icons.js +55 -0
- package/dist/link/Link.js +86 -41
- package/dist/link/index.d.ts +23 -0
- package/dist/main.d.ts +40 -0
- package/dist/main.js +72 -16
- package/dist/number-input/NumberInput.js +136 -0
- package/dist/number-input/NumberInputContext.js +16 -0
- package/dist/number-input/index.d.ts +113 -0
- package/dist/paginator/Icons.js +66 -0
- package/dist/paginator/Paginator.js +106 -55
- package/dist/paginator/index.d.ts +20 -0
- package/dist/password-input/PasswordInput.js +203 -0
- package/dist/password-input/index.d.ts +94 -0
- package/dist/progress-bar/ProgressBar.js +95 -38
- package/dist/progress-bar/index.d.ts +18 -0
- package/dist/radio/Radio.js +31 -17
- package/dist/radio/index.d.ts +23 -0
- package/dist/resultsetTable/ResultsetTable.js +79 -48
- package/dist/resultsetTable/index.d.ts +19 -0
- package/dist/select/Select.js +940 -279
- package/dist/select/index.d.ts +53 -0
- package/dist/sidenav/Sidenav.js +66 -15
- package/dist/sidenav/index.d.ts +13 -0
- package/dist/slider/Slider.js +211 -73
- package/dist/slider/index.d.ts +29 -0
- package/dist/spinner/Spinner.js +247 -59
- package/dist/spinner/index.d.ts +17 -0
- package/dist/switch/Switch.js +50 -27
- package/dist/switch/index.d.ts +24 -0
- package/dist/table/Table.js +51 -24
- package/dist/table/index.d.ts +13 -0
- package/dist/tabs/Tabs.js +58 -17
- package/dist/tabs/index.d.ts +19 -0
- package/dist/tag/Tag.js +68 -35
- package/dist/tag/index.d.ts +24 -0
- package/dist/text-input/TextInput.js +974 -0
- package/dist/text-input/index.d.ts +135 -0
- package/dist/textarea/Textarea.js +248 -106
- package/dist/textarea/index.d.ts +117 -0
- package/dist/toggle/Toggle.js +16 -19
- package/dist/toggle/index.d.ts +21 -0
- package/dist/toggle-group/ToggleGroup.js +142 -41
- package/dist/toggle-group/index.d.ts +21 -0
- package/dist/upload/Upload.js +13 -8
- package/dist/upload/buttons-upload/ButtonsUpload.js +32 -19
- package/dist/upload/buttons-upload/Icons.js +40 -0
- package/dist/upload/dragAndDropArea/DragAndDropArea.js +84 -34
- package/dist/upload/dragAndDropArea/Icons.js +39 -0
- package/dist/upload/file-upload/FileToUpload.js +64 -33
- package/dist/upload/file-upload/Icons.js +66 -0
- package/dist/upload/files-upload/FilesToUpload.js +16 -16
- package/dist/upload/index.d.ts +15 -0
- package/dist/upload/transaction/Icons.js +160 -0
- package/dist/upload/transaction/Transaction.js +42 -49
- package/dist/upload/transactions/Transactions.js +38 -20
- package/dist/wizard/Icons.js +65 -0
- package/dist/wizard/Wizard.js +126 -52
- package/dist/wizard/index.d.ts +18 -0
- package/package.json +19 -11
- package/test/AccordionGroup.test.js +16 -0
- package/test/Date.test.js +15 -13
- package/test/DateInput.test.js +242 -0
- package/test/Dropdown.test.js +15 -0
- package/test/FileInput.test.js +201 -0
- package/test/Footer.test.js +2 -7
- package/test/Header.test.js +5 -10
- package/test/Heading.test.js +60 -12
- package/test/InputText.test.js +2 -3
- package/test/Link.test.js +3 -2
- package/test/NumberInput.test.js +259 -0
- package/test/Paginator.test.js +6 -2
- package/test/PasswordInput.test.js +83 -0
- package/test/ResultsetTable.test.js +6 -6
- package/test/Select.test.js +869 -133
- package/test/Slider.test.js +9 -17
- package/test/Spinner.test.js +5 -0
- package/test/TextInput.test.js +731 -0
- package/test/Textarea.test.js +193 -0
- package/test/ToggleGroup.test.js +5 -1
- package/test/Upload.test.js +1 -1
- package/test/V3Select.test.js +212 -0
- package/test/{TextArea.test.js → V3TextArea.test.js} +6 -7
- package/dist/accordion/Accordion.stories.js +0 -207
- package/dist/accordion/readme.md +0 -96
- package/dist/accordion-group/AccordionGroup.stories.js +0 -207
- package/dist/accordion-group/readme.md +0 -70
- package/dist/alert/Alert.stories.js +0 -158
- package/dist/alert/close.svg +0 -4
- package/dist/alert/error.svg +0 -4
- package/dist/alert/info.svg +0 -4
- package/dist/alert/readme.md +0 -43
- package/dist/alert/success.svg +0 -4
- package/dist/alert/warning.svg +0 -4
- package/dist/button/readme.md +0 -93
- package/dist/checkbox/Checkbox.stories.js +0 -144
- package/dist/checkbox/readme.md +0 -116
- package/dist/common/services/example-service.js +0 -10
- package/dist/common/services/example-service.test.js +0 -12
- package/dist/date/Date.stories.js +0 -205
- package/dist/date/calendar.svg +0 -1
- package/dist/date/calendar_dark.svg +0 -1
- package/dist/date/readme.md +0 -73
- package/dist/dialog/Dialog.stories.js +0 -217
- package/dist/dialog/readme.md +0 -32
- package/dist/dropdown/Dropdown.stories.js +0 -249
- package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
- package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
- package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
- package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
- package/dist/dropdown/readme.md +0 -69
- package/dist/footer/Footer.stories.js +0 -94
- package/dist/footer/dxc_logo_wht.png +0 -0
- package/dist/footer/readme.md +0 -41
- package/dist/header/Header.stories.js +0 -176
- package/dist/header/close_icon.svg +0 -1
- package/dist/header/dxc_logo_black.png +0 -0
- package/dist/header/dxc_logo_blk_rgb.svg +0 -6
- package/dist/header/dxc_logo_white.png +0 -0
- package/dist/header/hamb_menu_black.svg +0 -1
- package/dist/header/hamb_menu_white.svg +0 -1
- package/dist/header/readme.md +0 -33
- package/dist/input-text/InputText.stories.js +0 -209
- package/dist/input-text/error.svg +0 -1
- package/dist/input-text/readme.md +0 -91
- package/dist/layout/facebook.svg +0 -45
- package/dist/layout/linkedin.svg +0 -50
- package/dist/layout/twitter.svg +0 -53
- package/dist/link/readme.md +0 -51
- package/dist/paginator/images/next.svg +0 -3
- package/dist/paginator/images/nextPage.svg +0 -3
- package/dist/paginator/images/previous.svg +0 -3
- package/dist/paginator/images/previousPage.svg +0 -3
- package/dist/paginator/readme.md +0 -50
- package/dist/progress-bar/ProgressBar.stories.js +0 -280
- package/dist/progress-bar/readme.md +0 -63
- package/dist/radio/Radio.stories.js +0 -166
- package/dist/radio/readme.md +0 -70
- package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
- package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
- package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
- package/dist/select/Select.stories.js +0 -235
- package/dist/select/readme.md +0 -72
- package/dist/slider/Slider.stories.js +0 -241
- package/dist/slider/readme.md +0 -64
- package/dist/spinner/Spinner.stories.js +0 -183
- package/dist/spinner/readme.md +0 -65
- package/dist/switch/Switch.stories.js +0 -134
- package/dist/switch/readme.md +0 -133
- package/dist/tabs/Tabs.stories.js +0 -130
- package/dist/tabs/readme.md +0 -78
- package/dist/tabs-for-sections/TabsForSections.js +0 -92
- package/dist/tabs-for-sections/readme.md +0 -78
- package/dist/toggle/Toggle.stories.js +0 -297
- package/dist/toggle/readme.md +0 -80
- package/dist/toggle-group/readme.md +0 -82
- package/dist/upload/Upload.stories.js +0 -72
- package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
- package/dist/upload/buttons-upload/upload-button.svg +0 -1
- package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
- package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
- package/dist/upload/file-upload/audio-icon.svg +0 -4
- package/dist/upload/file-upload/close.svg +0 -4
- package/dist/upload/file-upload/file-icon.svg +0 -4
- package/dist/upload/file-upload/video-icon.svg +0 -4
- package/dist/upload/readme.md +0 -37
- package/dist/upload/transaction/audio-icon-err.svg +0 -4
- package/dist/upload/transaction/audio-icon.svg +0 -4
- package/dist/upload/transaction/error-icon.svg +0 -4
- package/dist/upload/transaction/file-icon-err.svg +0 -4
- package/dist/upload/transaction/file-icon.svg +0 -4
- package/dist/upload/transaction/image-icon-err.svg +0 -4
- package/dist/upload/transaction/image-icon.svg +0 -4
- package/dist/upload/transaction/success-icon.svg +0 -4
- package/dist/upload/transaction/video-icon-err.svg +0 -4
- package/dist/upload/transaction/video-icon.svg +0 -4
- package/dist/wizard/invalid_icon.svg +0 -6
- package/dist/wizard/valid_icon.svg +0 -6
- package/dist/wizard/validation-wrong.svg +0 -6
- package/test/TabsForSections.test.js +0 -34
package/dist/select/Select.js
CHANGED
|
@@ -9,46 +9,230 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
9
9
|
});
|
|
10
10
|
exports["default"] = void 0;
|
|
11
11
|
|
|
12
|
-
var
|
|
12
|
+
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
13
13
|
|
|
14
14
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
15
15
|
|
|
16
|
-
var
|
|
17
|
-
|
|
18
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
16
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
19
17
|
|
|
20
18
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
21
19
|
|
|
22
20
|
var _react = _interopRequireWildcard(require("react"));
|
|
23
21
|
|
|
24
|
-
var
|
|
22
|
+
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
25
23
|
|
|
26
|
-
var
|
|
24
|
+
var _useTheme = _interopRequireDefault(require("../useTheme.js"));
|
|
27
25
|
|
|
28
|
-
var
|
|
26
|
+
var _variables = require("../common/variables.js");
|
|
29
27
|
|
|
30
|
-
var
|
|
28
|
+
var _uuid = require("uuid");
|
|
31
29
|
|
|
32
|
-
var
|
|
30
|
+
var _utils = require("../common/utils.js");
|
|
33
31
|
|
|
34
|
-
var
|
|
32
|
+
var _Checkbox = _interopRequireDefault(require("../checkbox/Checkbox"));
|
|
35
33
|
|
|
36
|
-
|
|
34
|
+
function _templateObject28() {
|
|
35
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n height: 16px;\n width: 16px;\n margin-left: 4px;\n color: ", ";\n"]);
|
|
37
36
|
|
|
38
|
-
|
|
37
|
+
_templateObject28 = function _templateObject28() {
|
|
38
|
+
return data;
|
|
39
|
+
};
|
|
39
40
|
|
|
40
|
-
|
|
41
|
+
return data;
|
|
42
|
+
}
|
|
41
43
|
|
|
42
|
-
|
|
44
|
+
function _templateObject27() {
|
|
45
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n"]);
|
|
43
46
|
|
|
44
|
-
|
|
47
|
+
_templateObject27 = function _templateObject27() {
|
|
48
|
+
return data;
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
return data;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
function _templateObject26() {
|
|
55
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n width: 16px;\n height: 16px;\n"]);
|
|
56
|
+
|
|
57
|
+
_templateObject26 = function _templateObject26() {
|
|
58
|
+
return data;
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
return data;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
function _templateObject25() {
|
|
65
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n height: 24px;\n width: 24px;\n margin-left: 8px;\n color: ", ";\n"]);
|
|
66
|
+
|
|
67
|
+
_templateObject25 = function _templateObject25() {
|
|
68
|
+
return data;
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
return data;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
function _templateObject24() {
|
|
75
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n width: 100%;\n overflow: hidden;\n padding-left: 8px;\n ", "\n"]);
|
|
76
|
+
|
|
77
|
+
_templateObject24 = function _templateObject24() {
|
|
78
|
+
return data;
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
return data;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
function _templateObject23() {
|
|
85
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n padding: 4px 8px 3px 0;\n min-height: 24px;\n ", "\n ", ";\n"]);
|
|
86
|
+
|
|
87
|
+
_templateObject23 = function _templateObject23() {
|
|
88
|
+
return data;
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
return data;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
function _templateObject22() {
|
|
95
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n padding: 0 8px;\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"]);
|
|
96
|
+
|
|
97
|
+
_templateObject22 = function _templateObject22() {
|
|
98
|
+
return data;
|
|
99
|
+
};
|
|
100
|
+
|
|
101
|
+
return data;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
function _templateObject21() {
|
|
105
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n padding: 4px 16px;\n font-weight: ", ";\n line-height: 1.715em;\n"]);
|
|
106
|
+
|
|
107
|
+
_templateObject21 = function _templateObject21() {
|
|
108
|
+
return data;
|
|
109
|
+
};
|
|
110
|
+
|
|
111
|
+
return data;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
function _templateObject20() {
|
|
115
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n padding: 0;\n"]);
|
|
116
|
+
|
|
117
|
+
_templateObject20 = function _templateObject20() {
|
|
118
|
+
return data;
|
|
119
|
+
};
|
|
120
|
+
|
|
121
|
+
return data;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
function _templateObject19() {
|
|
125
|
+
var data = (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: calc(1rem * 0.25);\n"]);
|
|
126
|
+
|
|
127
|
+
_templateObject19 = function _templateObject19() {
|
|
128
|
+
return data;
|
|
129
|
+
};
|
|
130
|
+
|
|
131
|
+
return data;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
function _templateObject18() {
|
|
135
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n padding: 4px 16px;\n color: ", ";\n font-size: 0.875rem;\n line-height: 1.715em;\n"]);
|
|
136
|
+
|
|
137
|
+
_templateObject18 = function _templateObject18() {
|
|
138
|
+
return data;
|
|
139
|
+
};
|
|
45
140
|
|
|
46
|
-
|
|
141
|
+
return data;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
function _templateObject17() {
|
|
145
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n z-index: 1;\n max-height: 304px;\n overflow-x: auto;\n top: calc(100% + 4px);\n left: 0;\n margin: 0;\n padding: 4px 0;\n width: 100%;\n box-sizing: border-box;\n background-color: ", ";\n border: 1px solid ", ";\n border-radius: 4px;\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"]);
|
|
146
|
+
|
|
147
|
+
_templateObject17 = function _templateObject17() {
|
|
148
|
+
return data;
|
|
149
|
+
};
|
|
150
|
+
|
|
151
|
+
return data;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
function _templateObject16() {
|
|
155
|
+
var data = (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: calc(1rem * 0.25);\n ", "\n background-color: ", ";\n color: ", ";\n\n ", "\n\n svg {\n line-height: 18px;\n }\n"]);
|
|
156
|
+
|
|
157
|
+
_templateObject16 = function _templateObject16() {
|
|
158
|
+
return data;
|
|
159
|
+
};
|
|
160
|
+
|
|
161
|
+
return data;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
function _templateObject15() {
|
|
165
|
+
var data = (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: calc(1rem * 0.25);\n color: ", ";\n"]);
|
|
166
|
+
|
|
167
|
+
_templateObject15 = function _templateObject15() {
|
|
168
|
+
return data;
|
|
169
|
+
};
|
|
170
|
+
|
|
171
|
+
return data;
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
function _templateObject14() {
|
|
175
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n min-height: 1.5em;\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"]);
|
|
176
|
+
|
|
177
|
+
_templateObject14 = function _templateObject14() {
|
|
178
|
+
return data;
|
|
179
|
+
};
|
|
180
|
+
|
|
181
|
+
return data;
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
function _templateObject13() {
|
|
185
|
+
var data = (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: calc(1rem * 0.25);\n pointer-events: none;\n color: ", ";\n\n svg {\n line-height: 18px;\n font-size: 1.25rem;\n }\n"]);
|
|
186
|
+
|
|
187
|
+
_templateObject13 = function _templateObject13() {
|
|
188
|
+
return data;
|
|
189
|
+
};
|
|
190
|
+
|
|
191
|
+
return data;
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
function _templateObject12() {
|
|
195
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n grid-area: 1 / 1 / 1 / 1;\n height: calc(calc(1rem * 2.5) - calc(1px * 2));\n background: none;\n border: none;\n outline: none;\n padding: 0 calc(1rem * 0.5);\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: 1.5em;\n"]);
|
|
196
|
+
|
|
197
|
+
_templateObject12 = function _templateObject12() {
|
|
198
|
+
return data;
|
|
199
|
+
};
|
|
47
200
|
|
|
48
|
-
|
|
201
|
+
return data;
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
function _templateObject11() {
|
|
205
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n display: none;\n"]);
|
|
206
|
+
|
|
207
|
+
_templateObject11 = function _templateObject11() {
|
|
208
|
+
return data;
|
|
209
|
+
};
|
|
210
|
+
|
|
211
|
+
return data;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
function _templateObject10() {
|
|
215
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n grid-area: 1 / 1 / 1 / 1;\n display: inline-flex;\n align-items: center;\n height: calc(calc(1rem * 2.5) - calc(1px * 2));\n padding: 0 calc(1rem * 0.5);\n user-select: none;\n overflow: hidden;\n\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: 1.5em;\n"]);
|
|
216
|
+
|
|
217
|
+
_templateObject10 = function _templateObject10() {
|
|
218
|
+
return data;
|
|
219
|
+
};
|
|
220
|
+
|
|
221
|
+
return data;
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
function _templateObject9() {
|
|
225
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n display: grid;\n width: 100%;\n"]);
|
|
226
|
+
|
|
227
|
+
_templateObject9 = function _templateObject9() {
|
|
228
|
+
return data;
|
|
229
|
+
};
|
|
230
|
+
|
|
231
|
+
return data;
|
|
232
|
+
}
|
|
49
233
|
|
|
50
234
|
function _templateObject8() {
|
|
51
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n
|
|
235
|
+
var data = (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 padding: 3px;\n ", "\n background-color: ", ";\n color: ", ";\n\n :focus-visible {\n outline: none;\n }\n ", "\n\n svg {\n line-height: 18px;\n }\n"]);
|
|
52
236
|
|
|
53
237
|
_templateObject8 = function _templateObject8() {
|
|
54
238
|
return data;
|
|
@@ -58,7 +242,7 @@ function _templateObject8() {
|
|
|
58
242
|
}
|
|
59
243
|
|
|
60
244
|
function _templateObject7() {
|
|
61
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n
|
|
245
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n user-select: none;\n background-color: ", ";\n border-right: 1px solid ", ";\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n ", "\n"]);
|
|
62
246
|
|
|
63
247
|
_templateObject7 = function _templateObject7() {
|
|
64
248
|
return data;
|
|
@@ -68,7 +252,7 @@ function _templateObject7() {
|
|
|
68
252
|
}
|
|
69
253
|
|
|
70
254
|
function _templateObject6() {
|
|
71
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n
|
|
255
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n border: 1px solid ", ";\n border-radius: 2px;\n width: 48px;\n"]);
|
|
72
256
|
|
|
73
257
|
_templateObject6 = function _templateObject6() {
|
|
74
258
|
return data;
|
|
@@ -78,7 +262,7 @@ function _templateObject6() {
|
|
|
78
262
|
}
|
|
79
263
|
|
|
80
264
|
function _templateObject5() {
|
|
81
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n
|
|
265
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n position: relative;\n align-items: center;\n height: calc(calc(1rem * 2.5) - calc(1px * 2));\n margin: calc(1rem * 0.25) 0;\n padding: 0 calc(1rem * 0.5);\n outline: none;\n box-shadow: 0 0 0 2px transparent;\n border-radius: 4px;\n border: 1px solid\n ", ";\n ", "\n ", ";\n\n ", ";\n"]);
|
|
82
266
|
|
|
83
267
|
_templateObject5 = function _templateObject5() {
|
|
84
268
|
return data;
|
|
@@ -88,7 +272,7 @@ function _templateObject5() {
|
|
|
88
272
|
}
|
|
89
273
|
|
|
90
274
|
function _templateObject4() {
|
|
91
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n font-family:
|
|
275
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"]);
|
|
92
276
|
|
|
93
277
|
_templateObject4 = function _templateObject4() {
|
|
94
278
|
return data;
|
|
@@ -98,7 +282,7 @@ function _templateObject4() {
|
|
|
98
282
|
}
|
|
99
283
|
|
|
100
284
|
function _templateObject3() {
|
|
101
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n
|
|
285
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n font-weight: ", ";\n"]);
|
|
102
286
|
|
|
103
287
|
_templateObject3 = function _templateObject3() {
|
|
104
288
|
return data;
|
|
@@ -108,7 +292,7 @@ function _templateObject3() {
|
|
|
108
292
|
}
|
|
109
293
|
|
|
110
294
|
function _templateObject2() {
|
|
111
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n
|
|
295
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n cursor: default;\n"]);
|
|
112
296
|
|
|
113
297
|
_templateObject2 = function _templateObject2() {
|
|
114
298
|
return data;
|
|
@@ -118,7 +302,7 @@ function _templateObject2() {
|
|
|
118
302
|
}
|
|
119
303
|
|
|
120
304
|
function _templateObject() {
|
|
121
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n width:
|
|
305
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n\n width: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"]);
|
|
122
306
|
|
|
123
307
|
_templateObject = function _templateObject() {
|
|
124
308
|
return data;
|
|
@@ -127,347 +311,824 @@ function _templateObject() {
|
|
|
127
311
|
return data;
|
|
128
312
|
}
|
|
129
313
|
|
|
130
|
-
|
|
314
|
+
var selectIcons = {
|
|
315
|
+
error: _react["default"].createElement("svg", {
|
|
316
|
+
role: "img",
|
|
317
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
318
|
+
height: "24px",
|
|
319
|
+
viewBox: "0 0 24 24",
|
|
320
|
+
width: "24px",
|
|
321
|
+
fill: "currentColor"
|
|
322
|
+
}, _react["default"].createElement("path", {
|
|
323
|
+
d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z"
|
|
324
|
+
})),
|
|
325
|
+
arrowUp: _react["default"].createElement("svg", {
|
|
326
|
+
role: "img",
|
|
327
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
328
|
+
height: "24px",
|
|
329
|
+
viewBox: "0 0 24 24",
|
|
330
|
+
width: "24px",
|
|
331
|
+
fill: "currentColor"
|
|
332
|
+
}, _react["default"].createElement("path", {
|
|
333
|
+
d: "M0 0h24v24H0V0z",
|
|
334
|
+
fill: "none"
|
|
335
|
+
}), _react["default"].createElement("path", {
|
|
336
|
+
d: "M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6 1.41 1.41z"
|
|
337
|
+
})),
|
|
338
|
+
arrowDown: _react["default"].createElement("svg", {
|
|
339
|
+
role: "img",
|
|
340
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
341
|
+
height: "24px",
|
|
342
|
+
viewBox: "0 0 24 24",
|
|
343
|
+
width: "24px",
|
|
344
|
+
fill: "currentColor"
|
|
345
|
+
}, _react["default"].createElement("path", {
|
|
346
|
+
d: "M0 0h24v24H0V0z",
|
|
347
|
+
fill: "none"
|
|
348
|
+
}), _react["default"].createElement("path", {
|
|
349
|
+
d: "M7.41 8.59L12 13.17l4.59-4.58L18 10l-6 6-6-6 1.41-1.41z"
|
|
350
|
+
})),
|
|
351
|
+
clear: _react["default"].createElement("svg", {
|
|
352
|
+
role: "img",
|
|
353
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
354
|
+
width: "24",
|
|
355
|
+
height: "24",
|
|
356
|
+
viewBox: "0 0 24 24",
|
|
357
|
+
fill: "currentColor"
|
|
358
|
+
}, _react["default"].createElement("path", {
|
|
359
|
+
d: "M0 0h24v24H0V0z",
|
|
360
|
+
fill: "none"
|
|
361
|
+
}), _react["default"].createElement("path", {
|
|
362
|
+
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"
|
|
363
|
+
})),
|
|
364
|
+
selected: _react["default"].createElement("svg", {
|
|
365
|
+
role: "img",
|
|
366
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
367
|
+
height: "24px",
|
|
368
|
+
viewBox: "0 0 24 24",
|
|
369
|
+
width: "24px",
|
|
370
|
+
fill: "currentColor"
|
|
371
|
+
}, _react["default"].createElement("path", {
|
|
372
|
+
d: "M0 0h24v24H0z",
|
|
373
|
+
fill: "none"
|
|
374
|
+
}), _react["default"].createElement("path", {
|
|
375
|
+
d: "M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z"
|
|
376
|
+
})),
|
|
377
|
+
searchOff: _react["default"].createElement("svg", {
|
|
378
|
+
role: "img",
|
|
379
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
380
|
+
height: "24px",
|
|
381
|
+
viewBox: "0 0 24 24",
|
|
382
|
+
width: "24px",
|
|
383
|
+
fill: "currentColor"
|
|
384
|
+
}, _react["default"].createElement("g", null, _react["default"].createElement("rect", {
|
|
385
|
+
fill: "none",
|
|
386
|
+
height: "24",
|
|
387
|
+
width: "24"
|
|
388
|
+
})), _react["default"].createElement("g", null, _react["default"].createElement("g", null, _react["default"].createElement("path", {
|
|
389
|
+
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"
|
|
390
|
+
}), _react["default"].createElement("polygon", {
|
|
391
|
+
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"
|
|
392
|
+
}))))
|
|
393
|
+
};
|
|
131
394
|
|
|
132
|
-
|
|
395
|
+
var getNotOptionalErrorMessage = function getNotOptionalErrorMessage() {
|
|
396
|
+
return "This field is required. Please, enter a value.";
|
|
397
|
+
};
|
|
133
398
|
|
|
134
|
-
var
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
return {
|
|
143
|
-
boxShadow: "0px 2px 10px 0px rgba(0, 0, 0, 0.3)",
|
|
144
|
-
minWidth: props.width,
|
|
145
|
-
width: props.width,
|
|
146
|
-
maxHeight: "250px",
|
|
147
|
-
"&::-webkit-scrollbar": {
|
|
148
|
-
width: "3px",
|
|
149
|
-
margin: "5px"
|
|
150
|
-
},
|
|
151
|
-
"&::-webkit-scrollbar-track": {
|
|
152
|
-
borderRadius: "3px",
|
|
153
|
-
backgroundColor: props.scrollBarTrackColor
|
|
154
|
-
},
|
|
155
|
-
"&::-webkit-scrollbar-thumb": {
|
|
156
|
-
borderRadius: "3px",
|
|
157
|
-
backgroundColor: props.scrollBarThumbColor
|
|
158
|
-
},
|
|
159
|
-
"& .MuiList-root": {
|
|
160
|
-
width: "auto !important",
|
|
161
|
-
paddingRight: "0 !important"
|
|
162
|
-
}
|
|
163
|
-
};
|
|
164
|
-
},
|
|
165
|
-
itemList: function itemList(props) {
|
|
166
|
-
return {
|
|
167
|
-
color: props.color,
|
|
168
|
-
"&.MuiList-padding": {
|
|
169
|
-
paddingBottom: "0px",
|
|
170
|
-
paddingTop: "0px"
|
|
171
|
-
},
|
|
172
|
-
"& li": {
|
|
173
|
-
fontSize: "16px",
|
|
174
|
-
"&:hover": {
|
|
175
|
-
backgroundColor: props.selectedOptionBackgroundColor + props.hoverOptionBackgroundColor,
|
|
176
|
-
color: props.color
|
|
177
|
-
},
|
|
178
|
-
"&:active": {
|
|
179
|
-
backgroundColor: props.selectedOptionBackgroundColor + props.hoverOptionBackgroundColor,
|
|
180
|
-
color: props.color
|
|
181
|
-
},
|
|
182
|
-
"&.MuiListItem-root.Mui-selected": {
|
|
183
|
-
backgroundColor: props.selectedOptionBackgroundColor,
|
|
184
|
-
color: props.color
|
|
185
|
-
}
|
|
186
|
-
}
|
|
399
|
+
var filterOptionsBySearchValue = function filterOptionsBySearchValue(options, searchValue) {
|
|
400
|
+
if ((options === null || options === void 0 ? void 0 : options.length) > 0) {
|
|
401
|
+
if (options[0].options) return options.map(function (optionGroup) {
|
|
402
|
+
var group = {
|
|
403
|
+
label: optionGroup.label,
|
|
404
|
+
options: optionGroup.options.filter(function (option) {
|
|
405
|
+
return option.label.toUpperCase().includes(searchValue.toUpperCase());
|
|
406
|
+
})
|
|
187
407
|
};
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
408
|
+
return group;
|
|
409
|
+
});else return options.filter(function (option) {
|
|
410
|
+
return option.label.toUpperCase().includes(searchValue.toUpperCase());
|
|
411
|
+
});
|
|
412
|
+
}
|
|
413
|
+
};
|
|
191
414
|
|
|
192
|
-
var DxcSelect = function
|
|
193
|
-
var
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
label = _ref
|
|
197
|
-
_ref$
|
|
198
|
-
|
|
415
|
+
var DxcSelect = _react["default"].forwardRef(function (_ref, ref) {
|
|
416
|
+
var _ref3;
|
|
417
|
+
|
|
418
|
+
var _ref$label = _ref.label,
|
|
419
|
+
label = _ref$label === void 0 ? "" : _ref$label,
|
|
420
|
+
_ref$name = _ref.name,
|
|
421
|
+
name = _ref$name === void 0 ? "" : _ref$name,
|
|
422
|
+
value = _ref.value,
|
|
423
|
+
options = _ref.options,
|
|
424
|
+
_ref$helperText = _ref.helperText,
|
|
425
|
+
helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
|
|
426
|
+
_ref$placeholder = _ref.placeholder,
|
|
427
|
+
placeholder = _ref$placeholder === void 0 ? "" : _ref$placeholder,
|
|
199
428
|
_ref$disabled = _ref.disabled,
|
|
200
429
|
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
|
201
|
-
_ref$
|
|
202
|
-
|
|
203
|
-
_ref$
|
|
204
|
-
|
|
205
|
-
_ref$iconPosition = _ref.iconPosition,
|
|
206
|
-
iconPosition = _ref$iconPosition === void 0 ? "before" : _ref$iconPosition,
|
|
430
|
+
_ref$optional = _ref.optional,
|
|
431
|
+
optional = _ref$optional === void 0 ? false : _ref$optional,
|
|
432
|
+
_ref$searchable = _ref.searchable,
|
|
433
|
+
searchable = _ref$searchable === void 0 ? false : _ref$searchable,
|
|
207
434
|
_ref$multiple = _ref.multiple,
|
|
208
435
|
multiple = _ref$multiple === void 0 ? false : _ref$multiple,
|
|
436
|
+
onChange = _ref.onChange,
|
|
437
|
+
onBlur = _ref.onBlur,
|
|
438
|
+
_ref$error = _ref.error,
|
|
439
|
+
error = _ref$error === void 0 ? "" : _ref$error,
|
|
209
440
|
margin = _ref.margin,
|
|
210
441
|
_ref$size = _ref.size,
|
|
211
|
-
size = _ref$size === void 0 ? "medium" : _ref$size
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
442
|
+
size = _ref$size === void 0 ? "medium" : _ref$size,
|
|
443
|
+
_ref$tabIndex = _ref.tabIndex,
|
|
444
|
+
tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
|
|
445
|
+
|
|
446
|
+
var _useState = (0, _react.useState)("select-".concat((0, _uuid.v4)())),
|
|
447
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 1),
|
|
448
|
+
selectId = _useState2[0];
|
|
449
|
+
|
|
450
|
+
var selectLabelId = "label-".concat(selectId);
|
|
451
|
+
var optionsListId = "".concat(selectId, "-listbox");
|
|
452
|
+
|
|
453
|
+
var _useState3 = (0, _react.useState)(multiple ? [] : ""),
|
|
454
|
+
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
455
|
+
innerValue = _useState4[0],
|
|
456
|
+
setInnerValue = _useState4[1];
|
|
457
|
+
|
|
458
|
+
var _useState5 = (0, _react.useState)(""),
|
|
459
|
+
_useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
|
|
460
|
+
searchValue = _useState6[0],
|
|
461
|
+
setSearchValue = _useState6[1];
|
|
462
|
+
|
|
463
|
+
var _useState7 = (0, _react.useState)(-1),
|
|
464
|
+
_useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
|
|
465
|
+
visualFocusIndex = _useState8[0],
|
|
466
|
+
changeVisualFocusIndex = _useState8[1];
|
|
467
|
+
|
|
468
|
+
var _useState9 = (0, _react.useState)(false),
|
|
469
|
+
_useState10 = (0, _slicedToArray2["default"])(_useState9, 2),
|
|
470
|
+
isOpen = _useState10[0],
|
|
471
|
+
changeIsOpen = _useState10[1];
|
|
472
|
+
|
|
473
|
+
var selectContainerRef = (0, _react.useRef)(null);
|
|
474
|
+
var selectSearchInputRef = (0, _react.useRef)(null);
|
|
475
|
+
var selectOptionsListRef = (0, _react.useRef)(null);
|
|
476
|
+
var colorsTheme = (0, _useTheme["default"])();
|
|
477
|
+
var optionalEmptyOption = {
|
|
478
|
+
label: placeholder,
|
|
479
|
+
value: ""
|
|
480
|
+
};
|
|
481
|
+
var filteredOptions = (0, _react.useMemo)(function () {
|
|
482
|
+
return filterOptionsBySearchValue(options, searchValue);
|
|
483
|
+
}, [options, searchValue]);
|
|
216
484
|
|
|
217
|
-
var
|
|
218
|
-
|
|
219
|
-
selectedValue = _useState2[0],
|
|
220
|
-
setSelectedValue = _useState2[1];
|
|
485
|
+
var getLastOptionIndex = function getLastOptionIndex() {
|
|
486
|
+
var last = 0;
|
|
221
487
|
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
}, colorsTheme.select);
|
|
488
|
+
var reducer = function reducer(acc, current) {
|
|
489
|
+
var _current$options;
|
|
225
490
|
|
|
226
|
-
|
|
491
|
+
return acc + ((_current$options = current.options) === null || _current$options === void 0 ? void 0 : _current$options.length);
|
|
492
|
+
};
|
|
227
493
|
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
494
|
+
if (searchable && filteredOptions.length > 0) filteredOptions[0].options ? last = filteredOptions.reduce(reducer, 0) - 1 : last = filteredOptions.length - 1;else if ((options === null || options === void 0 ? void 0 : options.length) > 0) options[0].options ? last = options.reduce(reducer, 0) - 1 : last = options.length - 1;
|
|
495
|
+
return optional && !multiple ? last + 1 : last;
|
|
496
|
+
};
|
|
497
|
+
|
|
498
|
+
var lastOptionIndex = (0, _react.useMemo)(function () {
|
|
499
|
+
return getLastOptionIndex();
|
|
500
|
+
}, [searchable, optional, multiple, filteredOptions, options]);
|
|
501
|
+
|
|
502
|
+
var getSelectedOption = function getSelectedOption() {
|
|
503
|
+
var val = value !== null && value !== void 0 ? value : innerValue;
|
|
504
|
+
var selectedOption = multiple ? [] : "";
|
|
505
|
+
var singleSelectionIndex;
|
|
231
506
|
|
|
232
|
-
|
|
233
|
-
|
|
507
|
+
if (multiple) {
|
|
508
|
+
if ((options === null || options === void 0 ? void 0 : options.length) > 0) {
|
|
509
|
+
options.forEach(function (option) {
|
|
510
|
+
if (option.options) {
|
|
511
|
+
option.options.forEach(function (singleOption) {
|
|
512
|
+
if (val.includes(singleOption.value)) selectedOption.push(singleOption);
|
|
513
|
+
});
|
|
514
|
+
} else if (val.includes(option.value)) selectedOption.push(option);
|
|
515
|
+
});
|
|
234
516
|
}
|
|
235
517
|
} else {
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
518
|
+
if (optional && val === "") {
|
|
519
|
+
selectedOption = optionalEmptyOption;
|
|
520
|
+
singleSelectionIndex = 0;
|
|
521
|
+
} else if ((options === null || options === void 0 ? void 0 : options.length) > 0) {
|
|
522
|
+
var group_index = 0;
|
|
523
|
+
options.some(function (option, index) {
|
|
524
|
+
if (option.options) {
|
|
525
|
+
option.options.some(function (singleOption) {
|
|
526
|
+
if (singleOption.value === val) {
|
|
527
|
+
selectedOption = singleOption;
|
|
528
|
+
singleSelectionIndex = optional ? group_index + 1 : group_index;
|
|
529
|
+
return true;
|
|
530
|
+
}
|
|
531
|
+
|
|
532
|
+
group_index++;
|
|
533
|
+
});
|
|
534
|
+
} else if (option.value === val) {
|
|
535
|
+
selectedOption = option;
|
|
536
|
+
singleSelectionIndex = optional ? index + 1 : index;
|
|
537
|
+
return true;
|
|
538
|
+
}
|
|
539
|
+
});
|
|
240
540
|
}
|
|
241
541
|
}
|
|
542
|
+
|
|
543
|
+
return {
|
|
544
|
+
selectedOption: selectedOption,
|
|
545
|
+
singleSelectionIndex: singleSelectionIndex
|
|
546
|
+
};
|
|
242
547
|
};
|
|
243
548
|
|
|
244
|
-
var
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
};
|
|
261
|
-
|
|
262
|
-
var getSelectedValuesWithLabel = function getSelectedValuesWithLabel(optionsList, selected) {
|
|
263
|
-
return _react["default"].createElement(MultipleLabelSelected, null, optionsList.filter(function (x) {
|
|
264
|
-
return selected.includes(x.value);
|
|
265
|
-
}).map(function (optionToRender) {
|
|
266
|
-
return optionToRender.label;
|
|
267
|
-
}).join(", "));
|
|
268
|
-
};
|
|
269
|
-
|
|
270
|
-
var getSelectedValuesWithIcons = function getSelectedValuesWithIcons(optionsList, selected) {
|
|
271
|
-
return options.filter(function (x) {
|
|
272
|
-
return selected.includes(x.value);
|
|
273
|
-
}).map(function (optionToRender) {
|
|
274
|
-
return getLabelForSingleSelect(optionToRender.value);
|
|
275
|
-
});
|
|
549
|
+
var _useMemo = (0, _react.useMemo)(function () {
|
|
550
|
+
return getSelectedOption();
|
|
551
|
+
}, [options, multiple, value, innerValue]),
|
|
552
|
+
selectedOption = _useMemo.selectedOption,
|
|
553
|
+
singleSelectionIndex = _useMemo.singleSelectionIndex;
|
|
554
|
+
|
|
555
|
+
var notOptionalCheck = function notOptionalCheck(value) {
|
|
556
|
+
return value === "" && !optional;
|
|
557
|
+
};
|
|
558
|
+
|
|
559
|
+
var notOptionalMultipleCheck = function notOptionalMultipleCheck() {
|
|
560
|
+
return (value !== null && value !== void 0 ? value : innerValue).length === 0 && !optional;
|
|
561
|
+
};
|
|
562
|
+
|
|
563
|
+
var canBeOpenOptions = function canBeOpenOptions() {
|
|
564
|
+
return !disabled && (options === null || options === void 0 ? void 0 : options.length) > 0 && groupsHaveOptions();
|
|
276
565
|
};
|
|
277
566
|
|
|
278
|
-
var
|
|
279
|
-
return options.
|
|
280
|
-
return
|
|
281
|
-
})
|
|
567
|
+
var groupsHaveOptions = function groupsHaveOptions() {
|
|
568
|
+
return options[0].hasOwnProperty("options") ? options[0].options ? options.some(function (groupOption) {
|
|
569
|
+
return groupOption.options.length > 0;
|
|
570
|
+
}) : false : true;
|
|
282
571
|
};
|
|
283
572
|
|
|
284
|
-
var
|
|
285
|
-
return
|
|
573
|
+
var filteredGroupsHaveOptions = function filteredGroupsHaveOptions() {
|
|
574
|
+
return filteredOptions !== null && filteredOptions !== void 0 && filteredOptions[0].options ? filteredOptions.some(function (groupOption) {
|
|
575
|
+
var _groupOption$options;
|
|
576
|
+
|
|
577
|
+
return ((_groupOption$options = groupOption.options) === null || _groupOption$options === void 0 ? void 0 : _groupOption$options.length) > 0;
|
|
578
|
+
}) : true;
|
|
579
|
+
};
|
|
580
|
+
|
|
581
|
+
var openOptions = function openOptions() {
|
|
582
|
+
if (!isOpen && canBeOpenOptions()) changeIsOpen(true);
|
|
583
|
+
};
|
|
584
|
+
|
|
585
|
+
var closeOptions = function closeOptions() {
|
|
586
|
+
if (isOpen) {
|
|
587
|
+
changeIsOpen(false);
|
|
588
|
+
changeVisualFocusIndex(-1);
|
|
589
|
+
}
|
|
590
|
+
};
|
|
591
|
+
|
|
592
|
+
var handleSelectChangeValue = function handleSelectChangeValue(newOption) {
|
|
593
|
+
if (multiple) {
|
|
594
|
+
var _res, _res2;
|
|
595
|
+
|
|
596
|
+
var res;
|
|
597
|
+
if ((value !== null && value !== void 0 ? value : innerValue).includes(newOption.value)) value ? res = value.filter(function (optionVal) {
|
|
598
|
+
return optionVal !== newOption.value;
|
|
599
|
+
}) : setInnerValue(function (previous) {
|
|
600
|
+
return previous.filter(function (optionVal) {
|
|
601
|
+
return optionVal !== newOption.value;
|
|
602
|
+
});
|
|
603
|
+
});else value ? res = [].concat((0, _toConsumableArray2["default"])(value), [newOption.value]) : setInnerValue(function (previous) {
|
|
604
|
+
return [].concat((0, _toConsumableArray2["default"])(previous), [newOption.value]);
|
|
605
|
+
});
|
|
606
|
+
if (notOptionalMultipleCheck(newOption.value)) onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
607
|
+
value: (_res = res) !== null && _res !== void 0 ? _res : innerValue,
|
|
608
|
+
error: getNotOptionalErrorMessage()
|
|
609
|
+
});else onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
610
|
+
value: (_res2 = res) !== null && _res2 !== void 0 ? _res2 : innerValue,
|
|
611
|
+
error: null
|
|
612
|
+
});
|
|
613
|
+
} else {
|
|
614
|
+
value !== null && value !== void 0 ? value : setInnerValue(newOption.value);
|
|
615
|
+
if (notOptionalCheck(newOption.value)) onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
616
|
+
value: newOption.value,
|
|
617
|
+
error: getNotOptionalErrorMessage()
|
|
618
|
+
});else onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
619
|
+
value: newOption.value,
|
|
620
|
+
error: null
|
|
621
|
+
});
|
|
622
|
+
}
|
|
623
|
+
};
|
|
624
|
+
|
|
625
|
+
var handleSelectOnClick = function handleSelectOnClick() {
|
|
626
|
+
searchable && selectSearchInputRef.current.focus();
|
|
627
|
+
|
|
628
|
+
if (isOpen) {
|
|
629
|
+
closeOptions();
|
|
630
|
+
setSearchValue("");
|
|
631
|
+
} else openOptions();
|
|
632
|
+
};
|
|
633
|
+
|
|
634
|
+
var handleSelectOnFocus = function handleSelectOnFocus(event) {
|
|
635
|
+
if (!event.currentTarget.contains(event.relatedTarget)) searchable && selectSearchInputRef.current.focus();
|
|
636
|
+
};
|
|
637
|
+
|
|
638
|
+
var handleSelectOnBlur = function handleSelectOnBlur(event) {
|
|
639
|
+
// focus leaves container (outside, not to childs)
|
|
640
|
+
if (!event.currentTarget.contains(event.relatedTarget)) {
|
|
641
|
+
closeOptions();
|
|
642
|
+
setSearchValue("");
|
|
643
|
+
if (notOptionalCheck(value !== null && value !== void 0 ? value : innerValue)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
644
|
+
value: value !== null && value !== void 0 ? value : innerValue,
|
|
645
|
+
error: getNotOptionalErrorMessage()
|
|
646
|
+
});else onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
647
|
+
value: value !== null && value !== void 0 ? value : innerValue,
|
|
648
|
+
error: null
|
|
649
|
+
});
|
|
650
|
+
}
|
|
286
651
|
};
|
|
287
652
|
|
|
288
|
-
var
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
653
|
+
var handleSelectOnKeyDown = function handleSelectOnKeyDown(event) {
|
|
654
|
+
switch (event.keyCode) {
|
|
655
|
+
case 40:
|
|
656
|
+
// Arrow Down
|
|
657
|
+
event.preventDefault();
|
|
658
|
+
singleSelectionIndex !== undefined && (!isOpen || visualFocusIndex === -1 && singleSelectionIndex > -1 && singleSelectionIndex <= lastOptionIndex) ? changeVisualFocusIndex(singleSelectionIndex) : changeVisualFocusIndex(function (visualFocusIndex) {
|
|
659
|
+
if (visualFocusIndex < lastOptionIndex) return visualFocusIndex + 1;else if (visualFocusIndex === lastOptionIndex) return 0;
|
|
660
|
+
});
|
|
661
|
+
openOptions();
|
|
662
|
+
break;
|
|
663
|
+
|
|
664
|
+
case 38:
|
|
665
|
+
// Arrow Up
|
|
666
|
+
event.preventDefault();
|
|
667
|
+
singleSelectionIndex !== undefined && (!isOpen || visualFocusIndex === -1 && singleSelectionIndex > -1 && singleSelectionIndex <= lastOptionIndex) ? changeVisualFocusIndex(singleSelectionIndex) : changeVisualFocusIndex(function (visualFocusIndex) {
|
|
668
|
+
return visualFocusIndex === 0 || visualFocusIndex === -1 ? lastOptionIndex : visualFocusIndex - 1;
|
|
669
|
+
});
|
|
670
|
+
openOptions();
|
|
671
|
+
break;
|
|
672
|
+
|
|
673
|
+
case 27:
|
|
674
|
+
// Esc
|
|
675
|
+
event.preventDefault();
|
|
676
|
+
closeOptions();
|
|
677
|
+
setSearchValue("");
|
|
678
|
+
break;
|
|
679
|
+
|
|
680
|
+
case 13:
|
|
681
|
+
// Enter
|
|
682
|
+
if (isOpen && visualFocusIndex >= 0) {
|
|
683
|
+
var accLength = optional && !multiple ? 1 : 0;
|
|
684
|
+
|
|
685
|
+
if (searchable) {
|
|
686
|
+
if (filteredOptions.length > 0) {
|
|
687
|
+
if (optional && !multiple && visualFocusIndex === 0 && filteredGroupsHaveOptions()) handleSelectChangeValue(optionalEmptyOption);else filteredOptions[0].options ? filteredGroupsHaveOptions() && filteredOptions.some(function (groupOption) {
|
|
688
|
+
var groupLength = accLength + groupOption.options.length;
|
|
689
|
+
groupLength > visualFocusIndex && handleSelectChangeValue(groupOption.options[visualFocusIndex - accLength]);
|
|
690
|
+
accLength = groupLength;
|
|
691
|
+
return groupLength > visualFocusIndex;
|
|
692
|
+
}) : handleSelectChangeValue(filteredOptions[visualFocusIndex - accLength]);
|
|
693
|
+
}
|
|
694
|
+
} else {
|
|
695
|
+
if (optional && !multiple && visualFocusIndex === 0) handleSelectChangeValue(optionalEmptyOption);else options[0].options ? options.some(function (groupOption) {
|
|
696
|
+
var groupLength = accLength + groupOption.options.length;
|
|
697
|
+
groupLength > visualFocusIndex && handleSelectChangeValue(groupOption.options[visualFocusIndex - accLength]);
|
|
698
|
+
accLength = groupLength;
|
|
699
|
+
return groupLength > visualFocusIndex;
|
|
700
|
+
}) : handleSelectChangeValue(options[visualFocusIndex - accLength]);
|
|
701
|
+
}
|
|
702
|
+
|
|
703
|
+
!multiple && closeOptions();
|
|
704
|
+
setSearchValue("");
|
|
294
705
|
}
|
|
706
|
+
|
|
707
|
+
break;
|
|
708
|
+
}
|
|
709
|
+
};
|
|
710
|
+
|
|
711
|
+
var handleSearchIOnChange = function handleSearchIOnChange(event) {
|
|
712
|
+
setSearchValue(event.target.value);
|
|
713
|
+
changeVisualFocusIndex(-1);
|
|
714
|
+
openOptions();
|
|
715
|
+
};
|
|
716
|
+
|
|
717
|
+
var handleClearOptionsActionOnClick = function handleClearOptionsActionOnClick(event) {
|
|
718
|
+
event.stopPropagation();
|
|
719
|
+
value !== null && value !== void 0 ? value : setInnerValue([]);
|
|
720
|
+
onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
721
|
+
value: [],
|
|
722
|
+
error: getNotOptionalErrorMessage()
|
|
723
|
+
});
|
|
724
|
+
};
|
|
725
|
+
|
|
726
|
+
var handleClearSearchActionOnClick = function handleClearSearchActionOnClick(event) {
|
|
727
|
+
event.stopPropagation();
|
|
728
|
+
setSearchValue("");
|
|
729
|
+
};
|
|
730
|
+
|
|
731
|
+
(0, _react.useLayoutEffect)(function () {
|
|
732
|
+
if (isOpen && singleSelectionIndex) {
|
|
733
|
+
var _listEl$scrollTo;
|
|
734
|
+
|
|
735
|
+
var listEl = selectOptionsListRef === null || selectOptionsListRef === void 0 ? void 0 : selectOptionsListRef.current;
|
|
736
|
+
var selectedListOptionEl = listEl === null || listEl === void 0 ? void 0 : listEl.querySelector("[aria-selected='true']");
|
|
737
|
+
listEl === null || listEl === void 0 ? void 0 : (_listEl$scrollTo = listEl.scrollTo) === null || _listEl$scrollTo === void 0 ? void 0 : _listEl$scrollTo.call(listEl, {
|
|
738
|
+
top: (selectedListOptionEl === null || selectedListOptionEl === void 0 ? void 0 : selectedListOptionEl.offsetTop) - (listEl === null || listEl === void 0 ? void 0 : listEl.clientHeight) / 2
|
|
739
|
+
});
|
|
740
|
+
}
|
|
741
|
+
}, [isOpen]);
|
|
742
|
+
(0, _react.useLayoutEffect)(function () {
|
|
743
|
+
var _selectOptionsListRef, _visualFocusedOptionE;
|
|
744
|
+
|
|
745
|
+
var visualFocusedOptionEl = selectOptionsListRef === null || selectOptionsListRef === void 0 ? void 0 : (_selectOptionsListRef = selectOptionsListRef.current) === null || _selectOptionsListRef === void 0 ? void 0 : _selectOptionsListRef.querySelectorAll("[role='option']")[visualFocusIndex];
|
|
746
|
+
visualFocusedOptionEl === null || visualFocusedOptionEl === void 0 ? void 0 : (_visualFocusedOptionE = visualFocusedOptionEl.scrollIntoView) === null || _visualFocusedOptionE === void 0 ? void 0 : _visualFocusedOptionE.call(visualFocusedOptionEl, {
|
|
747
|
+
block: "nearest",
|
|
748
|
+
inline: "start"
|
|
749
|
+
});
|
|
750
|
+
}, [visualFocusIndex]);
|
|
751
|
+
|
|
752
|
+
var Option = function Option(_ref2) {
|
|
753
|
+
var option = _ref2.option,
|
|
754
|
+
index = _ref2.index,
|
|
755
|
+
_ref2$isGroupedOption = _ref2.isGroupedOption,
|
|
756
|
+
isGroupedOption = _ref2$isGroupedOption === void 0 ? false : _ref2$isGroupedOption;
|
|
757
|
+
var isSelected = multiple ? (value !== null && value !== void 0 ? value : innerValue).includes(option.value) : (value !== null && value !== void 0 ? value : innerValue) === option.value;
|
|
758
|
+
var isLastOption = index === lastOptionIndex;
|
|
759
|
+
return _react["default"].createElement(OptionItem, {
|
|
760
|
+
id: "option-".concat(index),
|
|
761
|
+
onClick: function onClick() {
|
|
762
|
+
// left mouse button only
|
|
763
|
+
handleSelectChangeValue(option);
|
|
764
|
+
!multiple && closeOptions();
|
|
765
|
+
setSearchValue("");
|
|
766
|
+
},
|
|
767
|
+
visualFocused: visualFocusIndex === index,
|
|
768
|
+
selected: isSelected,
|
|
769
|
+
role: "option",
|
|
770
|
+
"aria-selected": isSelected && "true"
|
|
771
|
+
}, _react["default"].createElement(StyledOption, {
|
|
772
|
+
visualFocused: visualFocusIndex === index,
|
|
773
|
+
selected: isSelected,
|
|
774
|
+
last: isLastOption,
|
|
775
|
+
grouped: isGroupedOption,
|
|
776
|
+
multiple: multiple
|
|
777
|
+
}, multiple && _react["default"].createElement(_Checkbox["default"], {
|
|
778
|
+
tabIndex: -1,
|
|
779
|
+
checked: isSelected
|
|
780
|
+
}), option.icon && _react["default"].createElement(OptionIcon, {
|
|
781
|
+
selected: isSelected,
|
|
782
|
+
role: !(typeof option.icon === "string") && "img"
|
|
783
|
+
}, typeof option.icon === "string" ? _react["default"].createElement(OptionIconImg, {
|
|
784
|
+
src: option.icon
|
|
785
|
+
}) : option.icon), _react["default"].createElement(OptionContent, {
|
|
786
|
+
grouped: isGroupedOption,
|
|
787
|
+
hasIcon: option.icon,
|
|
788
|
+
multiple: multiple
|
|
789
|
+
}, _react["default"].createElement(OptionLabel, null, option.label), !multiple && isSelected && _react["default"].createElement(OptionSelectedIndicator, null, selectIcons.selected))));
|
|
790
|
+
};
|
|
791
|
+
|
|
792
|
+
var global_index = optional && !multiple ? 0 : -1; // index for options, starting from 0 to options.length -1
|
|
793
|
+
|
|
794
|
+
var mapOptionFunc = function mapOptionFunc(option) {
|
|
795
|
+
if (option.options) {
|
|
796
|
+
return option.options.length > 0 && _react["default"].createElement("li", null, _react["default"].createElement(GroupList, {
|
|
797
|
+
role: "group"
|
|
798
|
+
}, _react["default"].createElement(GroupLabel, {
|
|
799
|
+
role: "presentation"
|
|
800
|
+
}, option.label), option.options.map(function (singleOption) {
|
|
801
|
+
global_index++;
|
|
802
|
+
return _react["default"].createElement(Option, {
|
|
803
|
+
option: singleOption,
|
|
804
|
+
index: global_index,
|
|
805
|
+
isGroupedOption: true
|
|
806
|
+
});
|
|
807
|
+
})));
|
|
808
|
+
} else {
|
|
809
|
+
global_index++;
|
|
810
|
+
return _react["default"].createElement(Option, {
|
|
811
|
+
option: option,
|
|
812
|
+
index: global_index
|
|
295
813
|
});
|
|
296
|
-
return result;
|
|
297
|
-
} else if (checkedValue) {
|
|
298
|
-
return checkedValue.findIndex(function (element) {
|
|
299
|
-
return element === option.value;
|
|
300
|
-
}) !== -1 || false;
|
|
301
814
|
}
|
|
302
815
|
};
|
|
303
816
|
|
|
304
817
|
return _react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
305
|
-
theme: colorsTheme
|
|
818
|
+
theme: colorsTheme.select
|
|
306
819
|
}, _react["default"].createElement(SelectContainer, {
|
|
307
820
|
margin: margin,
|
|
308
821
|
size: size,
|
|
309
|
-
|
|
310
|
-
}, _react["default"].createElement(
|
|
822
|
+
ref: ref
|
|
823
|
+
}, _react["default"].createElement(Label, {
|
|
824
|
+
id: selectLabelId,
|
|
825
|
+
disabled: disabled,
|
|
826
|
+
onClick: function onClick() {
|
|
827
|
+
selectContainerRef.current.focus();
|
|
828
|
+
}
|
|
829
|
+
}, label, " ", optional && _react["default"].createElement(OptionalLabel, null, "(Optional)")), _react["default"].createElement(HelperText, {
|
|
830
|
+
disabled: disabled
|
|
831
|
+
}, helperText), _react["default"].createElement(Select, {
|
|
832
|
+
id: selectId,
|
|
833
|
+
disabled: disabled,
|
|
834
|
+
error: error,
|
|
835
|
+
onBlur: handleSelectOnBlur,
|
|
836
|
+
onClick: handleSelectOnClick,
|
|
837
|
+
onFocus: handleSelectOnFocus,
|
|
838
|
+
onKeyDown: handleSelectOnKeyDown,
|
|
839
|
+
ref: selectContainerRef,
|
|
840
|
+
tabIndex: tabIndex,
|
|
841
|
+
role: "combobox",
|
|
842
|
+
"aria-controls": optionsListId,
|
|
843
|
+
"aria-expanded": isOpen ? "true" : "false",
|
|
844
|
+
"aria-haspopup": "listbox",
|
|
845
|
+
"aria-labelledby": selectLabelId,
|
|
846
|
+
"aria-activedescendant": visualFocusIndex >= 0 ? "option-".concat(visualFocusIndex) : undefined,
|
|
847
|
+
"aria-invalid": error ? "true" : "false",
|
|
848
|
+
"aria-required": optional ? "false" : "true"
|
|
849
|
+
}, multiple && selectedOption.length > 0 && _react["default"].createElement(SelectionIndicator, null, _react["default"].createElement(SelectionNumber, {
|
|
311
850
|
disabled: disabled
|
|
312
|
-
},
|
|
313
|
-
|
|
851
|
+
}, selectedOption.length, " "), _react["default"].createElement(ClearOptionsAction, {
|
|
852
|
+
disabled: disabled,
|
|
853
|
+
onMouseDown: function onMouseDown(event) {
|
|
854
|
+
// Avoid input to lose focus when pressed
|
|
855
|
+
event.preventDefault();
|
|
856
|
+
},
|
|
857
|
+
onClick: handleClearOptionsActionOnClick,
|
|
858
|
+
tabIndex: -1,
|
|
859
|
+
title: "Clear selected options",
|
|
860
|
+
"aria-label": "Clear selected options"
|
|
861
|
+
}, selectIcons.clear)), _react["default"].createElement(SearchableValueContainer, null, _react["default"].createElement(ValueInput, {
|
|
314
862
|
name: name,
|
|
315
|
-
multiple:
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
863
|
+
value: multiple ? (value !== null && value !== void 0 ? value : innerValue).join(", ") : value !== null && value !== void 0 ? value : innerValue,
|
|
864
|
+
readOnly: true,
|
|
865
|
+
"aria-hidden": "true"
|
|
866
|
+
}), searchable && _react["default"].createElement(SearchInput, {
|
|
867
|
+
value: searchValue,
|
|
319
868
|
disabled: disabled,
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
869
|
+
onChange: handleSearchIOnChange,
|
|
870
|
+
ref: selectSearchInputRef,
|
|
871
|
+
autoComplete: "off",
|
|
872
|
+
autoCorrect: "off"
|
|
873
|
+
}), (!searchable || searchValue === "") && (multiple ? _react["default"].createElement(SelectedOption, {
|
|
874
|
+
disabled: disabled,
|
|
875
|
+
atBackground: (value !== null && value !== void 0 ? value : innerValue).length === 0 || isOpen
|
|
876
|
+
}, _react["default"].createElement(OptionLabel, null, selectedOption.map(function (option) {
|
|
877
|
+
return option.label;
|
|
878
|
+
}).join(", ")), selectedOption.length === 0 && placeholder) : _react["default"].createElement(SelectedOption, {
|
|
879
|
+
disabled: disabled,
|
|
880
|
+
atBackground: !(value !== null && value !== void 0 ? value : innerValue) || isOpen
|
|
881
|
+
}, _react["default"].createElement(OptionLabel, null, (_ref3 = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.label) !== null && _ref3 !== void 0 ? _ref3 : placeholder)))), !disabled && error && _react["default"].createElement(ErrorIcon, null, selectIcons.error), searchable && searchValue.length > 0 && _react["default"].createElement(ClearSearchAction, {
|
|
882
|
+
onMouseDown: function onMouseDown(event) {
|
|
883
|
+
// Avoid input to lose focus
|
|
884
|
+
event.preventDefault();
|
|
885
|
+
},
|
|
886
|
+
onClick: handleClearSearchActionOnClick,
|
|
887
|
+
tabIndex: -1,
|
|
888
|
+
title: "Clear search text",
|
|
889
|
+
"aria-label": "Clear search text"
|
|
890
|
+
}, selectIcons.clear), _react["default"].createElement(CollapseIndicator, {
|
|
891
|
+
disabled: disabled
|
|
892
|
+
}, isOpen ? selectIcons.arrowUp : selectIcons.arrowDown), isOpen && _react["default"].createElement(OptionsList, {
|
|
893
|
+
id: optionsListId,
|
|
894
|
+
onClick: function onClick(event) {
|
|
895
|
+
event.stopPropagation();
|
|
896
|
+
},
|
|
897
|
+
onMouseDown: function onMouseDown(event) {
|
|
898
|
+
event.preventDefault();
|
|
899
|
+
},
|
|
900
|
+
ref: selectOptionsListRef,
|
|
901
|
+
role: "listbox",
|
|
902
|
+
"aria-labelledby": selectLabelId,
|
|
903
|
+
"aria-multiselectable": multiple ? "true" : "false"
|
|
904
|
+
}, searchable && (filteredOptions.length === 0 || !filteredGroupsHaveOptions()) ? _react["default"].createElement(OptionsSystemMessage, null, _react["default"].createElement(NoMatchesFoundIcon, null, selectIcons.searchOff), "No matches found") : optional && !multiple && _react["default"].createElement(Option, {
|
|
905
|
+
option: optionalEmptyOption,
|
|
906
|
+
index: 0
|
|
907
|
+
}), searchable ? filteredOptions.map(mapOptionFunc) : options.map(mapOptionFunc))), !disabled && _react["default"].createElement(Error, null, error)));
|
|
908
|
+
});
|
|
352
909
|
|
|
353
910
|
var sizes = {
|
|
354
|
-
small: "
|
|
355
|
-
medium: "
|
|
911
|
+
small: "240px",
|
|
912
|
+
medium: "360px",
|
|
356
913
|
large: "480px",
|
|
357
914
|
fillParent: "100%"
|
|
358
915
|
};
|
|
359
916
|
|
|
360
917
|
var calculateWidth = function calculateWidth(margin, size) {
|
|
361
|
-
|
|
362
|
-
return "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
|
|
363
|
-
}
|
|
364
|
-
|
|
365
|
-
return sizes[size];
|
|
918
|
+
return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
|
|
366
919
|
};
|
|
367
920
|
|
|
368
|
-
var
|
|
921
|
+
var SelectContainer = _styledComponents["default"].div(_templateObject(), function (props) {
|
|
922
|
+
return calculateWidth(props.margin, props.size);
|
|
923
|
+
}, function (props) {
|
|
924
|
+
return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
|
|
925
|
+
}, function (props) {
|
|
926
|
+
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
|
|
927
|
+
}, function (props) {
|
|
928
|
+
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
|
|
929
|
+
}, function (props) {
|
|
930
|
+
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
|
|
931
|
+
}, function (props) {
|
|
932
|
+
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
|
|
933
|
+
});
|
|
369
934
|
|
|
370
|
-
var
|
|
935
|
+
var Label = _styledComponents["default"].span(_templateObject2(), function (props) {
|
|
936
|
+
return props.disabled ? props.theme.disabledColor : props.theme.labelFontColor;
|
|
937
|
+
}, function (props) {
|
|
938
|
+
return props.theme.fontFamily;
|
|
939
|
+
}, function (props) {
|
|
940
|
+
return props.theme.labelFontSize;
|
|
941
|
+
}, function (props) {
|
|
942
|
+
return props.theme.labelFontStyle;
|
|
943
|
+
}, function (props) {
|
|
944
|
+
return props.theme.labelFontWeight;
|
|
945
|
+
}, function (props) {
|
|
946
|
+
return props.theme.labelLineHeight;
|
|
947
|
+
});
|
|
371
948
|
|
|
372
|
-
var
|
|
373
|
-
return props.
|
|
949
|
+
var OptionalLabel = _styledComponents["default"].span(_templateObject3(), function (props) {
|
|
950
|
+
return props.theme.optionalLabelFontWeight;
|
|
951
|
+
});
|
|
952
|
+
|
|
953
|
+
var HelperText = _styledComponents["default"].span(_templateObject4(), function (props) {
|
|
954
|
+
return props.disabled ? props.theme.disabledColor : props.theme.helperTextFontColor;
|
|
374
955
|
}, function (props) {
|
|
375
|
-
return props.
|
|
956
|
+
return props.theme.fontFamily;
|
|
376
957
|
}, function (props) {
|
|
377
|
-
return props.
|
|
958
|
+
return props.theme.helperTextFontSize;
|
|
378
959
|
}, function (props) {
|
|
379
|
-
return
|
|
960
|
+
return props.theme.helperTextFontStyle;
|
|
380
961
|
}, function (props) {
|
|
381
|
-
return props.
|
|
962
|
+
return props.theme.helperTextFontWeight;
|
|
382
963
|
}, function (props) {
|
|
383
|
-
return props.
|
|
964
|
+
return props.theme.helperTextLineHeight;
|
|
384
965
|
});
|
|
385
966
|
|
|
386
|
-
var
|
|
387
|
-
return
|
|
967
|
+
var Select = _styledComponents["default"].div(_templateObject5(), function (props) {
|
|
968
|
+
return props.disabled ? props.theme.disabledInputBorderColor : props.theme.enabledInputBorderColor;
|
|
969
|
+
}, function (props) {
|
|
970
|
+
return props.error && !props.disabled && "border-color: transparent;\n box-shadow: 0 0 0 2px ".concat(props.theme.errorInputBorderColor, ";\n ");
|
|
971
|
+
}, function (props) {
|
|
972
|
+
return props.disabled ? "cursor: not-allowed;" : "cursor: pointer;";
|
|
388
973
|
}, function (props) {
|
|
389
|
-
return (props.
|
|
974
|
+
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 ");
|
|
390
975
|
});
|
|
391
976
|
|
|
392
|
-
var
|
|
393
|
-
return props.
|
|
977
|
+
var SelectionIndicator = _styledComponents["default"].span(_templateObject6(), function (props) {
|
|
978
|
+
return props.theme.selectionIndicatorBorderColor;
|
|
394
979
|
});
|
|
395
980
|
|
|
396
|
-
var
|
|
397
|
-
return props.
|
|
981
|
+
var SelectionNumber = _styledComponents["default"].span(_templateObject7(), function (props) {
|
|
982
|
+
return props.theme.selectionIndicatorBackgroundColor;
|
|
983
|
+
}, function (props) {
|
|
984
|
+
return props.theme.selectionIndicatorBorderColor;
|
|
985
|
+
}, function (props) {
|
|
986
|
+
return props.disabled ? props.theme.disabledColor : props.theme.selectionIndicatorFontColor;
|
|
398
987
|
}, function (props) {
|
|
399
|
-
return props.
|
|
988
|
+
return props.theme.fontFamily;
|
|
989
|
+
}, function (props) {
|
|
990
|
+
return props.theme.selectionIndicatorFontSize;
|
|
991
|
+
}, function (props) {
|
|
992
|
+
return props.theme.selectionIndicatorFontStyle;
|
|
993
|
+
}, function (props) {
|
|
994
|
+
return props.theme.selectionIndicatorFontWeight;
|
|
995
|
+
}, function (props) {
|
|
996
|
+
return props.disabled ? "cursor: not-allowed;" : "cursor: default;";
|
|
400
997
|
});
|
|
401
998
|
|
|
402
|
-
var
|
|
403
|
-
return props.
|
|
999
|
+
var ClearOptionsAction = _styledComponents["default"].button(_templateObject8(), function (props) {
|
|
1000
|
+
return props.theme.fontFamily;
|
|
1001
|
+
}, function (props) {
|
|
1002
|
+
return props.disabled ? "cursor: not-allowed;" : "cursor: pointer;";
|
|
404
1003
|
}, function (props) {
|
|
405
|
-
return props.
|
|
1004
|
+
return props.theme.enabledSelectionIndicatorActionBackgroundColor;
|
|
1005
|
+
}, function (props) {
|
|
1006
|
+
return props.disabled ? props.theme.disabledColor : props.theme.enabledSelectionIndicatorActionIconColor;
|
|
1007
|
+
}, function (props) {
|
|
1008
|
+
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 ");
|
|
406
1009
|
});
|
|
407
1010
|
|
|
408
|
-
var
|
|
409
|
-
|
|
1011
|
+
var SearchableValueContainer = _styledComponents["default"].div(_templateObject9());
|
|
1012
|
+
|
|
1013
|
+
var SelectedOption = _styledComponents["default"].span(_templateObject10(), function (props) {
|
|
1014
|
+
if (props.disabled) return props.theme.disabledColor;else if (props.atBackground) return props.theme.placeholderFontColor;else return props.theme.valueFontColor;
|
|
410
1015
|
}, function (props) {
|
|
411
|
-
return props.
|
|
1016
|
+
return props.theme.fontFamily;
|
|
412
1017
|
}, function (props) {
|
|
413
|
-
return props.
|
|
1018
|
+
return props.theme.valueFontSize;
|
|
414
1019
|
}, function (props) {
|
|
415
|
-
return props.
|
|
1020
|
+
return props.theme.valueFontStyle;
|
|
416
1021
|
}, function (props) {
|
|
417
|
-
return props.
|
|
1022
|
+
return props.theme.valueFontWeight;
|
|
1023
|
+
});
|
|
1024
|
+
|
|
1025
|
+
var ValueInput = _styledComponents["default"].input(_templateObject11());
|
|
1026
|
+
|
|
1027
|
+
var SearchInput = _styledComponents["default"].input(_templateObject12(), function (props) {
|
|
1028
|
+
return props.disabled ? props.theme.disabledColor : props.theme.valueFontColor;
|
|
418
1029
|
}, function (props) {
|
|
419
|
-
return props.
|
|
1030
|
+
return props.theme.fontFamily;
|
|
420
1031
|
}, function (props) {
|
|
421
|
-
return props.
|
|
1032
|
+
return props.theme.valueFontSize;
|
|
422
1033
|
}, function (props) {
|
|
423
|
-
return props.theme.
|
|
1034
|
+
return props.theme.valueFontStyle;
|
|
424
1035
|
}, function (props) {
|
|
425
|
-
return props.theme.
|
|
1036
|
+
return props.theme.valueFontWeight;
|
|
1037
|
+
});
|
|
1038
|
+
|
|
1039
|
+
var ErrorIcon = _styledComponents["default"].span(_templateObject13(), function (props) {
|
|
1040
|
+
return props.theme.errorColor;
|
|
1041
|
+
});
|
|
1042
|
+
|
|
1043
|
+
var Error = _styledComponents["default"].span(_templateObject14(), function (props) {
|
|
1044
|
+
return props.theme.errorColor;
|
|
426
1045
|
}, function (props) {
|
|
427
|
-
return props.
|
|
1046
|
+
return props.theme.fontFamily;
|
|
428
1047
|
}, function (props) {
|
|
429
|
-
return props.theme.
|
|
1048
|
+
return props.theme.errorMessageFontSize;
|
|
430
1049
|
}, function (props) {
|
|
431
|
-
return props.theme.
|
|
1050
|
+
return props.theme.errorMessagetFontStyle;
|
|
432
1051
|
}, function (props) {
|
|
433
|
-
return props.theme.
|
|
1052
|
+
return props.theme.errorMessageFontWeight;
|
|
434
1053
|
}, function (props) {
|
|
435
|
-
return props.theme.
|
|
1054
|
+
return props.theme.errorMessagetLineHeight;
|
|
1055
|
+
});
|
|
1056
|
+
|
|
1057
|
+
var CollapseIndicator = _styledComponents["default"].span(_templateObject15(), function (props) {
|
|
1058
|
+
return props.disabled ? props.theme.disabledColor : props.theme.collapseIndicatorColor;
|
|
1059
|
+
});
|
|
1060
|
+
|
|
1061
|
+
var ClearSearchAction = _styledComponents["default"].button(_templateObject16(), function (props) {
|
|
1062
|
+
return props.theme.fontFamily;
|
|
436
1063
|
}, function (props) {
|
|
437
|
-
return props.
|
|
1064
|
+
return props.disabled ? "cursor: not-allowed;" : "cursor: pointer;";
|
|
438
1065
|
}, function (props) {
|
|
439
|
-
return props.
|
|
1066
|
+
return props.disabled ? props.theme.disabledActionBackgroundColor : props.theme.actionBackgroundColor;
|
|
440
1067
|
}, function (props) {
|
|
441
|
-
return props.
|
|
1068
|
+
return props.disabled ? props.theme.disabledColor : props.theme.actionIconColor;
|
|
442
1069
|
}, function (props) {
|
|
443
|
-
return props.
|
|
1070
|
+
return !props.disabled && "\n &:hover {\n background-color: ".concat(props.theme.hoverActionBackgroundColor, ";\n color: ").concat(props.theme.hoverActionIconColor, ";\n }\n &:active {\n background-color: ").concat(props.theme.activeActionBackgroundColor, ";\n color: ").concat(props.theme.activeActionIconColor, ";\n }\n ");
|
|
1071
|
+
});
|
|
1072
|
+
|
|
1073
|
+
var OptionsList = _styledComponents["default"].ul(_templateObject17(), function (props) {
|
|
1074
|
+
return props.theme.itemListBackgroundColor;
|
|
1075
|
+
}, function (props) {
|
|
1076
|
+
return props.theme.itemListBorderColor;
|
|
1077
|
+
}, function (props) {
|
|
1078
|
+
return props.theme.listItemFontColor;
|
|
1079
|
+
}, function (props) {
|
|
1080
|
+
return props.theme.fontFamily;
|
|
1081
|
+
}, function (props) {
|
|
1082
|
+
return props.theme.listItemFontSize;
|
|
444
1083
|
}, function (props) {
|
|
445
|
-
return props.theme.
|
|
1084
|
+
return props.theme.listItemFontStyle;
|
|
1085
|
+
}, function (props) {
|
|
1086
|
+
return props.theme.listItemFontWeight;
|
|
1087
|
+
});
|
|
1088
|
+
|
|
1089
|
+
var OptionsSystemMessage = _styledComponents["default"].span(_templateObject18(), function (props) {
|
|
1090
|
+
return props.theme.systemMessageFontColor;
|
|
1091
|
+
});
|
|
1092
|
+
|
|
1093
|
+
var NoMatchesFoundIcon = _styledComponents["default"].span(_templateObject19());
|
|
1094
|
+
|
|
1095
|
+
var GroupList = _styledComponents["default"].ul(_templateObject20());
|
|
1096
|
+
|
|
1097
|
+
var GroupLabel = _styledComponents["default"].li(_templateObject21(), function (props) {
|
|
1098
|
+
return props.theme.listGroupItemFontWeight;
|
|
1099
|
+
});
|
|
1100
|
+
|
|
1101
|
+
var OptionItem = _styledComponents["default"].li(_templateObject22(), function (props) {
|
|
1102
|
+
return props.visualFocused && "box-shadow: inset 0 0 0 2px ".concat(props.theme.focusListItemBorderColor, ";");
|
|
1103
|
+
}, function (props) {
|
|
1104
|
+
return props.selected && "background-color: ".concat(props.theme.selectedListItemBackgroundColor);
|
|
1105
|
+
}, function (props) {
|
|
1106
|
+
return props.selected ? "background-color: ".concat(props.theme.selectedHoverListItemBackgroundColor, ";") : "background-color: ".concat(props.theme.unselectedHoverListItemBackgroundColor, ";");
|
|
1107
|
+
}, function (props) {
|
|
1108
|
+
return props.selected ? "background-color: ".concat(props.theme.selectedActiveListItemBackgroundColor, ";") : "background-color: ".concat(props.theme.unselectedActiveListItemBackgroundColor, ";");
|
|
1109
|
+
});
|
|
1110
|
+
|
|
1111
|
+
var StyledOption = _styledComponents["default"].span(_templateObject23(), function (props) {
|
|
1112
|
+
return props.grouped && props.multiple && "padding-left: 16px;";
|
|
1113
|
+
}, function (props) {
|
|
1114
|
+
return props.last || props.visualFocused || props.selected ? "border-bottom: 1px solid transparent" : "border-bottom: 1px solid ".concat(props.theme.listItemDividerColor);
|
|
1115
|
+
});
|
|
1116
|
+
|
|
1117
|
+
var OptionContent = _styledComponents["default"].span(_templateObject24(), function (props) {
|
|
1118
|
+
return props.grouped && !props.multiple && !props.hasIcon && "padding-left: 16px;";
|
|
1119
|
+
});
|
|
1120
|
+
|
|
1121
|
+
var OptionIcon = _styledComponents["default"].span(_templateObject25(), function (props) {
|
|
1122
|
+
return props.theme.listItemIconColor;
|
|
1123
|
+
});
|
|
1124
|
+
|
|
1125
|
+
var OptionIconImg = _styledComponents["default"].img(_templateObject26());
|
|
1126
|
+
|
|
1127
|
+
var OptionLabel = _styledComponents["default"].span(_templateObject27());
|
|
1128
|
+
|
|
1129
|
+
var OptionSelectedIndicator = _styledComponents["default"].span(_templateObject28(), function (props) {
|
|
1130
|
+
return props.theme.selectedListItemIconColor;
|
|
446
1131
|
});
|
|
447
1132
|
|
|
448
|
-
DxcSelect.propTypes = {
|
|
449
|
-
size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
|
|
450
|
-
label: _propTypes["default"].string,
|
|
451
|
-
name: _propTypes["default"].string,
|
|
452
|
-
value: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number, _propTypes["default"].arrayOf(_propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]))]),
|
|
453
|
-
disabled: _propTypes["default"].bool,
|
|
454
|
-
required: _propTypes["default"].bool,
|
|
455
|
-
invalid: _propTypes["default"].bool,
|
|
456
|
-
iconPosition: _propTypes["default"].oneOf(["after", "before"]),
|
|
457
|
-
onChange: _propTypes["default"].func,
|
|
458
|
-
options: _propTypes["default"].arrayOf(_propTypes["default"].shape({
|
|
459
|
-
value: _propTypes["default"].any.isRequired,
|
|
460
|
-
label: _propTypes["default"].string,
|
|
461
|
-
icon: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
|
|
462
|
-
iconSrc: _propTypes["default"].string
|
|
463
|
-
})),
|
|
464
|
-
multiple: _propTypes["default"].bool,
|
|
465
|
-
margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
|
|
466
|
-
top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
467
|
-
bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
468
|
-
left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
469
|
-
right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
|
|
470
|
-
}), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
|
|
471
|
-
};
|
|
472
1133
|
var _default = DxcSelect;
|
|
473
1134
|
exports["default"] = _default;
|