@dxc-technology/halstack-react 0.0.0-e884f9f → 0.0.0-e922b5b
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 +124 -137
- package/accordion/Accordion.stories.tsx +306 -0
- package/accordion/Accordion.test.js +71 -0
- package/accordion/types.d.ts +11 -11
- package/accordion-group/AccordionGroup.d.ts +1 -1
- package/accordion-group/AccordionGroup.js +16 -37
- package/accordion-group/AccordionGroup.stories.tsx +251 -0
- package/accordion-group/AccordionGroup.test.js +126 -0
- package/accordion-group/types.d.ts +16 -10
- package/alert/Alert.js +7 -4
- package/alert/Alert.test.js +92 -0
- 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 +51 -0
- package/bleed/Bleed.stories.tsx +341 -0
- package/bleed/types.d.ts +37 -0
- package/bleed/types.js +5 -0
- package/box/Box.js +25 -35
- package/box/Box.test.js +18 -0
- package/bulleted-list/BulletedList.d.ts +7 -0
- package/bulleted-list/BulletedList.js +123 -0
- package/bulleted-list/BulletedList.stories.tsx +200 -0
- package/bulleted-list/types.d.ts +11 -0
- package/bulleted-list/types.js +5 -0
- package/button/Button.d.ts +1 -1
- package/button/Button.js +62 -83
- package/button/Button.stories.tsx +15 -8
- package/button/Button.test.js +35 -0
- package/button/types.d.ts +10 -14
- package/card/Card.js +25 -28
- package/card/Card.stories.tsx +1 -1
- package/card/Card.test.js +50 -0
- package/checkbox/Checkbox.d.ts +1 -1
- package/checkbox/Checkbox.js +104 -108
- package/checkbox/Checkbox.stories.tsx +124 -128
- package/checkbox/Checkbox.test.js +155 -0
- package/checkbox/types.d.ts +10 -6
- 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 +290 -359
- package/date-input/DateInput.js +66 -55
- 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 +50 -53
- package/dialog/Dialog.stories.tsx +1 -2
- package/dialog/Dialog.test.js +70 -0
- package/dialog/types.d.ts +2 -2
- package/dropdown/Dropdown.d.ts +1 -1
- package/dropdown/Dropdown.js +243 -273
- package/dropdown/Dropdown.stories.tsx +312 -0
- package/dropdown/Dropdown.test.js +591 -0
- package/dropdown/DropdownMenu.d.ts +4 -0
- package/dropdown/DropdownMenu.js +80 -0
- package/dropdown/DropdownMenuItem.d.ts +4 -0
- package/dropdown/DropdownMenuItem.js +92 -0
- package/dropdown/types.d.ts +30 -19
- package/file-input/FileInput.d.ts +1 -1
- package/file-input/FileInput.js +165 -83
- package/file-input/FileInput.stories.tsx +507 -0
- package/file-input/FileInput.test.js +457 -0
- package/file-input/FileItem.js +12 -8
- package/file-input/types.d.ts +32 -7
- package/flex/Flex.d.ts +4 -0
- package/flex/Flex.js +57 -0
- package/flex/Flex.stories.tsx +103 -0
- package/flex/types.d.ts +21 -0
- package/flex/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} +5 -19
- package/footer/Footer.test.js +109 -0
- package/footer/Icons.d.ts +2 -0
- package/footer/Icons.js +4 -4
- package/footer/types.d.ts +21 -17
- package/header/Header.js +97 -116
- package/header/Header.stories.tsx +46 -36
- package/header/Header.test.js +79 -0
- package/header/Icons.d.ts +2 -0
- package/header/Icons.js +2 -2
- package/header/types.d.ts +2 -2
- package/heading/Heading.js +1 -1
- package/heading/Heading.stories.tsx +3 -2
- package/heading/Heading.test.js +186 -0
- package/inset/Inset.d.ts +3 -0
- package/inset/Inset.js +51 -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 +20 -0
- package/layout/ApplicationLayout.js +71 -135
- package/layout/ApplicationLayout.stories.tsx +162 -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 +42 -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 +99 -52
- package/link/Link.test.js +83 -0
- package/link/types.d.ts +9 -29
- package/main.d.ts +12 -12
- package/main.js +64 -58
- 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 +16 -12
- package/paginator/Paginator.js +19 -46
- package/paginator/Paginator.test.js +308 -0
- package/paragraph/Paragraph.d.ts +6 -0
- package/paragraph/Paragraph.js +38 -0
- package/paragraph/Paragraph.stories.tsx +44 -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.d.ts +2 -2
- package/progress-bar/ProgressBar.js +59 -53
- package/progress-bar/ProgressBar.stories.jsx +13 -11
- package/progress-bar/ProgressBar.test.js +110 -0
- package/progress-bar/types.d.ts +3 -4
- package/quick-nav/QuickNav.d.ts +4 -0
- package/quick-nav/QuickNav.js +118 -0
- package/quick-nav/QuickNav.stories.tsx +264 -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 +281 -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 +348 -0
- package/resultsetTable/types.d.ts +67 -0
- package/resultsetTable/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 +198 -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 +158 -380
- package/select/Select.stories.tsx +231 -176
- package/select/Select.test.js +2175 -0
- package/select/types.d.ts +210 -0
- package/select/types.js +5 -0
- package/sidenav/Sidenav.d.ts +6 -5
- package/sidenav/Sidenav.js +186 -54
- package/sidenav/Sidenav.stories.tsx +154 -139
- package/sidenav/Sidenav.test.js +44 -0
- package/sidenav/types.d.ts +50 -27
- package/slider/Slider.d.ts +1 -1
- package/slider/Slider.js +117 -95
- package/slider/Slider.stories.tsx +15 -9
- package/slider/Slider.test.js +250 -0
- package/slider/types.d.ts +6 -2
- package/spinner/Spinner.js +3 -3
- package/spinner/Spinner.stories.jsx +1 -0
- package/spinner/Spinner.test.js +64 -0
- package/switch/Switch.d.ts +2 -2
- package/switch/Switch.js +149 -67
- package/switch/Switch.stories.tsx +21 -43
- package/switch/Switch.test.js +225 -0
- package/switch/types.d.ts +9 -6
- package/table/Table.js +3 -3
- package/table/Table.stories.jsx +2 -1
- package/table/Table.test.js +26 -0
- package/tabs/Tab.d.ts +4 -0
- package/tabs/Tab.js +135 -0
- package/tabs/Tabs.d.ts +1 -1
- package/tabs/Tabs.js +364 -110
- package/tabs/Tabs.stories.tsx +186 -0
- package/tabs/Tabs.test.js +351 -0
- package/tabs/types.d.ts +39 -17
- 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 +130 -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 +19 -29
- package/tag/Tag.stories.tsx +26 -29
- package/tag/Tag.test.js +60 -0
- package/tag/types.d.ts +23 -14
- package/text-input/Icons.d.ts +8 -0
- package/text-input/Icons.js +60 -0
- package/text-input/Suggestion.d.ts +4 -0
- package/text-input/Suggestion.js +57 -0
- package/text-input/Suggestions.d.ts +4 -0
- package/text-input/Suggestions.js +134 -0
- package/text-input/TextInput.d.ts +4 -0
- package/text-input/TextInput.js +166 -328
- package/text-input/TextInput.stories.tsx +481 -0
- package/text-input/TextInput.test.js +1713 -0
- package/text-input/types.d.ts +192 -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/typography/Typography.d.ts +4 -0
- package/typography/Typography.js +131 -0
- package/typography/Typography.stories.tsx +198 -0
- package/typography/types.d.ts +18 -0
- package/typography/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 +112 -58
- package/wizard/{Wizard.stories.jsx → Wizard.stories.tsx} +33 -24
- package/wizard/Wizard.test.js +141 -0
- package/wizard/types.d.ts +13 -12
- 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/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/text-input/TextInput.js
CHANGED
|
@@ -9,8 +9,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
9
9
|
});
|
|
10
10
|
exports["default"] = void 0;
|
|
11
11
|
|
|
12
|
-
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
13
|
-
|
|
14
12
|
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
15
13
|
|
|
16
14
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
@@ -21,72 +19,41 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
21
19
|
|
|
22
20
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
23
21
|
|
|
24
|
-
var _useTheme = _interopRequireDefault(require("../useTheme
|
|
22
|
+
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
25
23
|
|
|
26
|
-
var
|
|
24
|
+
var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
|
|
27
25
|
|
|
28
26
|
var _variables = require("../common/variables.js");
|
|
29
27
|
|
|
30
28
|
var _utils = require("../common/utils.js");
|
|
31
29
|
|
|
32
|
-
var
|
|
30
|
+
var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
|
|
31
|
+
|
|
32
|
+
var _NumberInputContext = _interopRequireDefault(require("../number-input/NumberInputContext"));
|
|
33
33
|
|
|
34
|
-
var
|
|
34
|
+
var _Suggestions = _interopRequireDefault(require("./Suggestions"));
|
|
35
35
|
|
|
36
|
-
var
|
|
36
|
+
var Popover = _interopRequireWildcard(require("@radix-ui/react-popover"));
|
|
37
|
+
|
|
38
|
+
var _Icons = _interopRequireDefault(require("./Icons"));
|
|
39
|
+
|
|
40
|
+
var _uuid = require("uuid");
|
|
37
41
|
|
|
38
|
-
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12
|
|
42
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12;
|
|
39
43
|
|
|
40
44
|
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); }
|
|
41
45
|
|
|
42
46
|
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; }
|
|
43
47
|
|
|
44
|
-
var
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
})),
|
|
54
|
-
clear: /*#__PURE__*/_react["default"].createElement("svg", {
|
|
55
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
56
|
-
width: "24",
|
|
57
|
-
height: "24",
|
|
58
|
-
viewBox: "0 0 24 24",
|
|
59
|
-
fill: "currentColor"
|
|
60
|
-
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
61
|
-
d: "M0 0h24v24H0V0z",
|
|
62
|
-
fill: "none"
|
|
63
|
-
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
64
|
-
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"
|
|
65
|
-
})),
|
|
66
|
-
increment: /*#__PURE__*/_react["default"].createElement("svg", {
|
|
67
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
68
|
-
height: "24px",
|
|
69
|
-
viewBox: "0 0 24 24",
|
|
70
|
-
width: "24px",
|
|
71
|
-
fill: "currentColor"
|
|
72
|
-
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
73
|
-
d: "M0 0h24v24H0z",
|
|
74
|
-
fill: "none"
|
|
75
|
-
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
76
|
-
d: "M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"
|
|
77
|
-
})),
|
|
78
|
-
decrement: /*#__PURE__*/_react["default"].createElement("svg", {
|
|
79
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
80
|
-
height: "24px",
|
|
81
|
-
viewBox: "0 0 24 24",
|
|
82
|
-
width: "24px",
|
|
83
|
-
fill: "currentColor"
|
|
84
|
-
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
85
|
-
d: "M0 0h24v24H0z",
|
|
86
|
-
fill: "none"
|
|
87
|
-
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
88
|
-
d: "M19 13H5v-2h14v2z"
|
|
89
|
-
}))
|
|
48
|
+
var sizes = {
|
|
49
|
+
small: "240px",
|
|
50
|
+
medium: "360px",
|
|
51
|
+
large: "480px",
|
|
52
|
+
fillParent: "100%"
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
var calculateWidth = function calculateWidth(margin, size) {
|
|
56
|
+
return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
|
|
90
57
|
};
|
|
91
58
|
|
|
92
59
|
var makeCancelable = function makeCancelable(promise) {
|
|
@@ -110,45 +77,18 @@ var makeCancelable = function makeCancelable(promise) {
|
|
|
110
77
|
};
|
|
111
78
|
};
|
|
112
79
|
|
|
113
|
-
var
|
|
114
|
-
return
|
|
115
|
-
};
|
|
116
|
-
|
|
117
|
-
var getLengthErrorMessage = function getLengthErrorMessage(length) {
|
|
118
|
-
return "Min length ".concat(length.min, ", max length ").concat(length.max, ".");
|
|
119
|
-
};
|
|
120
|
-
|
|
121
|
-
var getPatternErrorMessage = function getPatternErrorMessage() {
|
|
122
|
-
return "Please match the format requested.";
|
|
123
|
-
};
|
|
124
|
-
|
|
125
|
-
var patternMatch = function patternMatch(pattern, value) {
|
|
126
|
-
return new RegExp(pattern).test(value);
|
|
127
|
-
};
|
|
128
|
-
|
|
129
|
-
var getLastOptionIndex = function getLastOptionIndex(filteredSuggestions) {
|
|
130
|
-
var last = 0;
|
|
131
|
-
|
|
132
|
-
var reducer = function reducer(acc, current) {
|
|
133
|
-
var _current$options;
|
|
134
|
-
|
|
135
|
-
return acc + ((_current$options = current.options) === null || _current$options === void 0 ? void 0 : _current$options.length);
|
|
136
|
-
};
|
|
137
|
-
|
|
138
|
-
if (filteredSuggestions.length > 0) filteredSuggestions[0].options ? last = filteredSuggestions.reduce(reducer, 0) - 1 : last = filteredSuggestions.length - 1;
|
|
139
|
-
return last;
|
|
80
|
+
var patternMissmatch = function patternMissmatch(pattern, value) {
|
|
81
|
+
return pattern && !new RegExp(pattern).test(value);
|
|
140
82
|
};
|
|
141
83
|
|
|
142
84
|
var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
143
|
-
var
|
|
144
|
-
|
|
145
|
-
var _ref$label = _ref.label,
|
|
146
|
-
label = _ref$label === void 0 ? "" : _ref$label,
|
|
85
|
+
var label = _ref.label,
|
|
147
86
|
_ref$name = _ref.name,
|
|
148
87
|
name = _ref$name === void 0 ? "" : _ref$name,
|
|
88
|
+
_ref$defaultValue = _ref.defaultValue,
|
|
89
|
+
defaultValue = _ref$defaultValue === void 0 ? "" : _ref$defaultValue,
|
|
149
90
|
value = _ref.value,
|
|
150
|
-
|
|
151
|
-
helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
|
|
91
|
+
helperText = _ref.helperText,
|
|
152
92
|
_ref$placeholder = _ref.placeholder,
|
|
153
93
|
placeholder = _ref$placeholder === void 0 ? "" : _ref$placeholder,
|
|
154
94
|
action = _ref.action,
|
|
@@ -164,11 +104,11 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
164
104
|
suffix = _ref$suffix === void 0 ? "" : _ref$suffix,
|
|
165
105
|
onChange = _ref.onChange,
|
|
166
106
|
onBlur = _ref.onBlur,
|
|
167
|
-
|
|
168
|
-
error = _ref$error === void 0 ? "" : _ref$error,
|
|
107
|
+
error = _ref.error,
|
|
169
108
|
suggestions = _ref.suggestions,
|
|
170
109
|
pattern = _ref.pattern,
|
|
171
|
-
|
|
110
|
+
minLength = _ref.minLength,
|
|
111
|
+
maxLength = _ref.maxLength,
|
|
172
112
|
_ref$autocomplete = _ref.autocomplete,
|
|
173
113
|
autocomplete = _ref$autocomplete === void 0 ? "off" : _ref$autocomplete,
|
|
174
114
|
margin = _ref.margin,
|
|
@@ -176,59 +116,55 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
176
116
|
size = _ref$size === void 0 ? "medium" : _ref$size,
|
|
177
117
|
_ref$tabIndex = _ref.tabIndex,
|
|
178
118
|
tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
|
|
119
|
+
var id = (0, _react.useState)((0, _uuid.v4)());
|
|
120
|
+
var inputId = "input-".concat(id);
|
|
121
|
+
var autosuggestId = "suggestions-".concat(id);
|
|
122
|
+
var errorId = "error-".concat(id);
|
|
179
123
|
|
|
180
|
-
var _useState = (0, _react.useState)(
|
|
181
|
-
_useState2 = (0, _slicedToArray2["default"])(_useState,
|
|
182
|
-
|
|
124
|
+
var _useState = (0, _react.useState)(defaultValue),
|
|
125
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
126
|
+
innerValue = _useState2[0],
|
|
127
|
+
setInnerValue = _useState2[1];
|
|
183
128
|
|
|
184
|
-
var _useState3 = (0, _react.useState)(
|
|
129
|
+
var _useState3 = (0, _react.useState)(false),
|
|
185
130
|
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
186
|
-
|
|
187
|
-
|
|
131
|
+
isOpen = _useState4[0],
|
|
132
|
+
changeIsOpen = _useState4[1];
|
|
188
133
|
|
|
189
134
|
var _useState5 = (0, _react.useState)(false),
|
|
190
135
|
_useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
|
|
191
|
-
|
|
192
|
-
|
|
136
|
+
isSearching = _useState6[0],
|
|
137
|
+
changeIsSearching = _useState6[1];
|
|
193
138
|
|
|
194
139
|
var _useState7 = (0, _react.useState)(false),
|
|
195
140
|
_useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
|
|
196
|
-
|
|
197
|
-
|
|
141
|
+
isAutosuggestError = _useState8[0],
|
|
142
|
+
changeIsAutosuggestError = _useState8[1];
|
|
198
143
|
|
|
199
|
-
var _useState9 = (0, _react.useState)(
|
|
144
|
+
var _useState9 = (0, _react.useState)([]),
|
|
200
145
|
_useState10 = (0, _slicedToArray2["default"])(_useState9, 2),
|
|
201
|
-
|
|
202
|
-
|
|
146
|
+
filteredSuggestions = _useState10[0],
|
|
147
|
+
changeFilteredSuggestions = _useState10[1];
|
|
203
148
|
|
|
204
|
-
var _useState11 = (0, _react.useState)(
|
|
149
|
+
var _useState11 = (0, _react.useState)(-1),
|
|
205
150
|
_useState12 = (0, _slicedToArray2["default"])(_useState11, 2),
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
var _useState13 = (0, _react.useState)(-1),
|
|
210
|
-
_useState14 = (0, _slicedToArray2["default"])(_useState13, 2),
|
|
211
|
-
visualFocusedSuggIndex = _useState14[0],
|
|
212
|
-
changeVisualFocusedSuggIndex = _useState14[1];
|
|
151
|
+
visualFocusIndex = _useState12[0],
|
|
152
|
+
changeVisualFocusIndex = _useState12[1];
|
|
213
153
|
|
|
214
|
-
var
|
|
154
|
+
var inputContainerRef = (0, _react.useRef)(null);
|
|
215
155
|
var inputRef = (0, _react.useRef)(null);
|
|
216
156
|
var actionRef = (0, _react.useRef)(null);
|
|
217
157
|
var colorsTheme = (0, _useTheme["default"])();
|
|
158
|
+
var translatedLabels = (0, _useTranslatedLabels["default"])();
|
|
218
159
|
var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
|
|
219
|
-
var autosuggestId = "".concat(inputId, "-listBox");
|
|
220
|
-
var errorId = "error-message-".concat(inputId);
|
|
221
160
|
var numberInputContext = (0, _react.useContext)(_NumberInputContext["default"]);
|
|
222
|
-
var lastOptionIndex = (0, _react.useMemo)(function () {
|
|
223
|
-
return getLastOptionIndex(filteredSuggestions);
|
|
224
|
-
}, [filteredSuggestions]);
|
|
225
161
|
|
|
226
162
|
var isNotOptional = function isNotOptional(value) {
|
|
227
163
|
return value === "" && !optional;
|
|
228
164
|
};
|
|
229
165
|
|
|
230
166
|
var isLengthIncorrect = function isLengthIncorrect(value) {
|
|
231
|
-
return value &&
|
|
167
|
+
return value && minLength && maxLength && (value.length < minLength || value.length > maxLength);
|
|
232
168
|
};
|
|
233
169
|
|
|
234
170
|
var isNumberIncorrect = function isNumberIncorrect(value) {
|
|
@@ -242,7 +178,7 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
242
178
|
};
|
|
243
179
|
|
|
244
180
|
var getNumberErrorMessage = function getNumberErrorMessage(value) {
|
|
245
|
-
if (numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.minNumber && parseInt(value) < (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber)) return
|
|
181
|
+
if (numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.minNumber && parseInt(value) < (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber)) return translatedLabels.numberInput.valueGreaterThanOrEqualToErrorMessage(numberInputContext.minNumber);else if (numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.maxNumber && parseInt(value) > (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber)) return translatedLabels.numberInput.valueLessThanOrEqualToErrorMessage(numberInputContext.maxNumber);
|
|
246
182
|
};
|
|
247
183
|
|
|
248
184
|
var hasSuggestions = function hasSuggestions() {
|
|
@@ -254,8 +190,10 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
254
190
|
};
|
|
255
191
|
|
|
256
192
|
var closeSuggestions = function closeSuggestions() {
|
|
257
|
-
|
|
258
|
-
|
|
193
|
+
if (hasSuggestions()) {
|
|
194
|
+
changeIsOpen(false);
|
|
195
|
+
changeVisualFocusIndex(-1);
|
|
196
|
+
}
|
|
259
197
|
};
|
|
260
198
|
|
|
261
199
|
var changeValue = function changeValue(newValue) {
|
|
@@ -263,19 +201,18 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
263
201
|
var changedValue = typeof newValue === "number" ? newValue.toString() : newValue;
|
|
264
202
|
if (isNotOptional(newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
265
203
|
value: changedValue,
|
|
266
|
-
error:
|
|
204
|
+
error: translatedLabels.formFields.requiredValueErrorMessage
|
|
267
205
|
});else if (isLengthIncorrect(newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
268
206
|
value: changedValue,
|
|
269
|
-
error:
|
|
270
|
-
});else if (
|
|
207
|
+
error: translatedLabels.formFields.lengthErrorMessage(minLength, maxLength)
|
|
208
|
+
});else if (patternMissmatch(pattern, newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
271
209
|
value: changedValue,
|
|
272
|
-
error:
|
|
273
|
-
});else if (
|
|
210
|
+
error: translatedLabels.formFields.formatRequestedErrorMessage
|
|
211
|
+
});else if (isNumberIncorrect(newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
274
212
|
value: changedValue,
|
|
275
213
|
error: getNumberErrorMessage(newValue)
|
|
276
214
|
});else onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
277
|
-
value: changedValue
|
|
278
|
-
error: null
|
|
215
|
+
value: changedValue
|
|
279
216
|
});
|
|
280
217
|
};
|
|
281
218
|
|
|
@@ -294,38 +231,37 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
294
231
|
};
|
|
295
232
|
|
|
296
233
|
var handleIOnBlur = function handleIOnBlur(event) {
|
|
297
|
-
|
|
234
|
+
closeSuggestions();
|
|
298
235
|
if (isNotOptional(event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
299
236
|
value: event.target.value,
|
|
300
|
-
error:
|
|
237
|
+
error: translatedLabels.formFields.requiredValueErrorMessage
|
|
301
238
|
});else if (isLengthIncorrect(event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
302
239
|
value: event.target.value,
|
|
303
|
-
error:
|
|
304
|
-
});else if (
|
|
240
|
+
error: translatedLabels.formFields.lengthErrorMessage(minLength, maxLength)
|
|
241
|
+
});else if (patternMissmatch(pattern, event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
305
242
|
value: event.target.value,
|
|
306
|
-
error:
|
|
307
|
-
});else if (
|
|
243
|
+
error: translatedLabels.formFields.formatRequestedErrorMessage
|
|
244
|
+
});else if (isNumberIncorrect(event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
308
245
|
value: event.target.value,
|
|
309
246
|
error: getNumberErrorMessage(event.target.value)
|
|
310
247
|
});else onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
311
|
-
value: event.target.value
|
|
312
|
-
error: null
|
|
248
|
+
value: event.target.value
|
|
313
249
|
});
|
|
314
250
|
};
|
|
315
251
|
|
|
316
252
|
var handleIOnKeyDown = function handleIOnKeyDown(event) {
|
|
317
|
-
switch (event.
|
|
318
|
-
case
|
|
319
|
-
|
|
320
|
-
|
|
253
|
+
switch (event.key) {
|
|
254
|
+
case "Down":
|
|
255
|
+
case "ArrowDown":
|
|
256
|
+
event.preventDefault();
|
|
257
|
+
|
|
258
|
+
if ((numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number") {
|
|
321
259
|
decrementNumber();
|
|
322
|
-
event.preventDefault();
|
|
323
260
|
} else {
|
|
324
|
-
event.preventDefault();
|
|
325
261
|
openSuggestions();
|
|
326
262
|
|
|
327
263
|
if (!isAutosuggestError && !isSearching && filteredSuggestions.length > 0) {
|
|
328
|
-
|
|
264
|
+
changeVisualFocusIndex(function (visualFocusedSuggIndex) {
|
|
329
265
|
if (visualFocusedSuggIndex < filteredSuggestions.length - 1) return visualFocusedSuggIndex + 1;else if (visualFocusedSuggIndex === filteredSuggestions.length - 1) return 0;
|
|
330
266
|
});
|
|
331
267
|
}
|
|
@@ -333,17 +269,17 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
333
269
|
|
|
334
270
|
break;
|
|
335
271
|
|
|
336
|
-
case
|
|
337
|
-
|
|
338
|
-
|
|
272
|
+
case "Up":
|
|
273
|
+
case "ArrowUp":
|
|
274
|
+
event.preventDefault();
|
|
275
|
+
|
|
276
|
+
if ((numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number") {
|
|
339
277
|
incrementNumber();
|
|
340
|
-
event.preventDefault();
|
|
341
278
|
} else {
|
|
342
|
-
event.preventDefault();
|
|
343
279
|
openSuggestions();
|
|
344
280
|
|
|
345
281
|
if (!isAutosuggestError && !isSearching && filteredSuggestions.length > 0) {
|
|
346
|
-
|
|
282
|
+
changeVisualFocusIndex(function (visualFocusedSuggIndex) {
|
|
347
283
|
if (visualFocusedSuggIndex === 0 || visualFocusedSuggIndex === -1) return filteredSuggestions.length > 0 ? filteredSuggestions.length - 1 : suggestions.length - 1;else return visualFocusedSuggIndex - 1;
|
|
348
284
|
});
|
|
349
285
|
}
|
|
@@ -351,8 +287,8 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
351
287
|
|
|
352
288
|
break;
|
|
353
289
|
|
|
354
|
-
case
|
|
355
|
-
|
|
290
|
+
case "Esc":
|
|
291
|
+
case "Escape":
|
|
356
292
|
event.preventDefault();
|
|
357
293
|
|
|
358
294
|
if (hasSuggestions()) {
|
|
@@ -362,11 +298,10 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
362
298
|
|
|
363
299
|
break;
|
|
364
300
|
|
|
365
|
-
case
|
|
366
|
-
// Enter
|
|
301
|
+
case "Enter":
|
|
367
302
|
if (hasSuggestions() && !isSearching) {
|
|
368
|
-
var validFocusedSuggestion = filteredSuggestions.length > 0 &&
|
|
369
|
-
validFocusedSuggestion && changeValue(filteredSuggestions[
|
|
303
|
+
var validFocusedSuggestion = filteredSuggestions.length > 0 && visualFocusIndex >= 0 && visualFocusIndex < filteredSuggestions.length;
|
|
304
|
+
validFocusedSuggestion && changeValue(filteredSuggestions[visualFocusIndex]);
|
|
370
305
|
isOpen && closeSuggestions();
|
|
371
306
|
}
|
|
372
307
|
|
|
@@ -439,15 +374,12 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
439
374
|
}
|
|
440
375
|
};
|
|
441
376
|
|
|
442
|
-
(0, _react.
|
|
443
|
-
var
|
|
377
|
+
var getTextInputWidth = (0, _react.useCallback)(function () {
|
|
378
|
+
var _inputContainerRef$cu;
|
|
444
379
|
|
|
445
|
-
var
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
inline: "start"
|
|
449
|
-
});
|
|
450
|
-
}, [visualFocusedSuggIndex]);
|
|
380
|
+
var rect = inputContainerRef === null || inputContainerRef === void 0 ? void 0 : (_inputContainerRef$cu = inputContainerRef.current) === null || _inputContainerRef$cu === void 0 ? void 0 : _inputContainerRef$cu.getBoundingClientRect();
|
|
381
|
+
return rect === null || rect === void 0 ? void 0 : rect.width;
|
|
382
|
+
}, []);
|
|
451
383
|
(0, _react.useEffect)(function () {
|
|
452
384
|
if (typeof suggestions === "function") {
|
|
453
385
|
changeIsSearching(true);
|
|
@@ -471,53 +403,36 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
471
403
|
changeFilteredSuggestions(suggestions.filter(function (suggestion) {
|
|
472
404
|
return suggestion.toUpperCase().startsWith((value !== null && value !== void 0 ? value : innerValue).toUpperCase());
|
|
473
405
|
}));
|
|
474
|
-
|
|
406
|
+
changeVisualFocusIndex(-1);
|
|
475
407
|
}
|
|
476
408
|
|
|
477
|
-
numberInputContext && setNumberProps(numberInputContext.typeNumber, numberInputContext.minNumber, numberInputContext.maxNumber, numberInputContext.stepNumber);
|
|
409
|
+
(numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number" && setNumberProps(numberInputContext.typeNumber, numberInputContext.minNumber, numberInputContext.maxNumber, numberInputContext.stepNumber);
|
|
478
410
|
}, [value, innerValue, suggestions, numberInputContext]);
|
|
479
|
-
|
|
480
|
-
var HighlightedSuggestion = function HighlightedSuggestion(_ref2) {
|
|
481
|
-
var suggestion = _ref2.suggestion,
|
|
482
|
-
index = _ref2.index;
|
|
483
|
-
var regEx = new RegExp(value !== null && value !== void 0 ? value : innerValue, "i");
|
|
484
|
-
var matchedWords = suggestion.match(regEx);
|
|
485
|
-
var noMatchedWords = suggestion.replace(regEx, "");
|
|
486
|
-
var isLastOption = index === lastOptionIndex;
|
|
487
|
-
return /*#__PURE__*/_react["default"].createElement(Suggestion, {
|
|
488
|
-
id: "suggestion-".concat(index),
|
|
489
|
-
onClick: function onClick() {
|
|
490
|
-
changeValue(suggestion);
|
|
491
|
-
closeSuggestions();
|
|
492
|
-
},
|
|
493
|
-
visualFocused: visualFocusedSuggIndex === index,
|
|
494
|
-
role: "option",
|
|
495
|
-
"aria-selected": visualFocusedSuggIndex === index && "true"
|
|
496
|
-
}, /*#__PURE__*/_react["default"].createElement(StyledSuggestion, {
|
|
497
|
-
last: isLastOption,
|
|
498
|
-
visualFocused: visualFocusedSuggIndex === index
|
|
499
|
-
}, typeof suggestions === "function" ? suggestion : /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("strong", null, matchedWords), noMatchedWords)));
|
|
500
|
-
};
|
|
501
|
-
|
|
502
411
|
return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
503
412
|
theme: colorsTheme.textInput
|
|
504
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
413
|
+
}, /*#__PURE__*/_react["default"].createElement(TextInputContainer, {
|
|
505
414
|
margin: margin,
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
}, /*#__PURE__*/_react["default"].createElement(Label, {
|
|
415
|
+
size: size,
|
|
416
|
+
ref: ref
|
|
417
|
+
}, label && /*#__PURE__*/_react["default"].createElement(Label, {
|
|
509
418
|
htmlFor: inputId,
|
|
510
419
|
disabled: disabled,
|
|
511
|
-
backgroundType: backgroundType
|
|
512
|
-
|
|
420
|
+
backgroundType: backgroundType,
|
|
421
|
+
hasHelperText: helperText ? true : false
|
|
422
|
+
}, label, " ", optional && /*#__PURE__*/_react["default"].createElement(OptionalLabel, null, translatedLabels.formFields.optionalLabel)), helperText && /*#__PURE__*/_react["default"].createElement(HelperText, {
|
|
513
423
|
disabled: disabled,
|
|
514
424
|
backgroundType: backgroundType
|
|
515
|
-
}, helperText), /*#__PURE__*/_react["default"].createElement(
|
|
516
|
-
|
|
425
|
+
}, helperText), /*#__PURE__*/_react["default"].createElement(Popover.Root, {
|
|
426
|
+
open: isOpen && (filteredSuggestions.length > 0 || isSearching || isAutosuggestError)
|
|
427
|
+
}, /*#__PURE__*/_react["default"].createElement(Popover.Trigger, {
|
|
428
|
+
asChild: true
|
|
429
|
+
}, /*#__PURE__*/_react["default"].createElement(InputContainer, {
|
|
430
|
+
error: error ? true : false,
|
|
517
431
|
disabled: disabled,
|
|
518
432
|
backgroundType: backgroundType,
|
|
519
433
|
onClick: handleInputContainerOnClick,
|
|
520
|
-
onMouseDown: handleInputContainerOnMouseDown
|
|
434
|
+
onMouseDown: handleInputContainerOnMouseDown,
|
|
435
|
+
ref: inputContainerRef
|
|
521
436
|
}, prefix && /*#__PURE__*/_react["default"].createElement(Prefix, {
|
|
522
437
|
disabled: disabled,
|
|
523
438
|
backgroundType: backgroundType
|
|
@@ -528,9 +443,7 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
528
443
|
placeholder: placeholder,
|
|
529
444
|
onBlur: handleIOnBlur,
|
|
530
445
|
onChange: handleIOnChange,
|
|
531
|
-
onFocus:
|
|
532
|
-
openSuggestions();
|
|
533
|
-
},
|
|
446
|
+
onFocus: openSuggestions,
|
|
534
447
|
onKeyDown: handleIOnKeyDown,
|
|
535
448
|
onMouseDown: function onMouseDown(event) {
|
|
536
449
|
event.stopPropagation();
|
|
@@ -539,30 +452,32 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
539
452
|
ref: inputRef,
|
|
540
453
|
backgroundType: backgroundType,
|
|
541
454
|
pattern: pattern,
|
|
542
|
-
minLength:
|
|
543
|
-
maxLength:
|
|
544
|
-
autoComplete: autocomplete,
|
|
455
|
+
minLength: minLength,
|
|
456
|
+
maxLength: maxLength,
|
|
457
|
+
autoComplete: autocomplete === "off" ? "nope" : autocomplete,
|
|
545
458
|
tabIndex: tabIndex,
|
|
546
459
|
role: isTextInputType() && hasSuggestions() ? "combobox" : "textbox",
|
|
547
460
|
"aria-autocomplete": isTextInputType() && hasSuggestions() ? "list" : undefined,
|
|
548
461
|
"aria-controls": isTextInputType() && hasSuggestions() ? autosuggestId : undefined,
|
|
549
|
-
"aria-
|
|
550
|
-
"aria-
|
|
551
|
-
"aria-
|
|
552
|
-
"aria-
|
|
553
|
-
"aria-
|
|
462
|
+
"aria-disabled": disabled,
|
|
463
|
+
"aria-expanded": isTextInputType() && hasSuggestions() ? isOpen : undefined,
|
|
464
|
+
"aria-activedescendant": isTextInputType() && hasSuggestions() && isOpen && visualFocusIndex !== -1 ? "suggestion-".concat(visualFocusIndex) : undefined,
|
|
465
|
+
"aria-invalid": error ? true : false,
|
|
466
|
+
"aria-errormessage": error ? errorId : undefined,
|
|
467
|
+
"aria-required": optional ? false : true
|
|
554
468
|
}), !disabled && error && /*#__PURE__*/_react["default"].createElement(ErrorIcon, {
|
|
555
469
|
backgroundType: backgroundType,
|
|
556
470
|
"aria-label": "Error"
|
|
557
|
-
},
|
|
471
|
+
}, _Icons["default"].error), !disabled && clearable && (value !== null && value !== void 0 ? value : innerValue).length > 0 && /*#__PURE__*/_react["default"].createElement(Action, {
|
|
558
472
|
onClick: handleClearActionOnClick,
|
|
559
473
|
onMouseDown: function onMouseDown(event) {
|
|
560
474
|
event.stopPropagation();
|
|
561
475
|
},
|
|
562
476
|
backgroundType: backgroundType,
|
|
563
477
|
tabIndex: tabIndex,
|
|
564
|
-
|
|
565
|
-
|
|
478
|
+
title: translatedLabels.textInput.clearFieldActionTitle,
|
|
479
|
+
"aria-label": translatedLabels.textInput.clearFieldActionTitle
|
|
480
|
+
}, _Icons["default"].clear), (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number" && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(Action, {
|
|
566
481
|
ref: actionRef,
|
|
567
482
|
disabled: disabled,
|
|
568
483
|
onClick: handleDecrementActionOnClick,
|
|
@@ -571,8 +486,9 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
571
486
|
},
|
|
572
487
|
backgroundType: backgroundType,
|
|
573
488
|
tabIndex: tabIndex,
|
|
574
|
-
|
|
575
|
-
|
|
489
|
+
title: translatedLabels.numberInput.decrementValueTitle,
|
|
490
|
+
"aria-label": translatedLabels.numberInput.decrementValueTitle
|
|
491
|
+
}, _Icons["default"].decrement), /*#__PURE__*/_react["default"].createElement(Action, {
|
|
576
492
|
ref: actionRef,
|
|
577
493
|
disabled: disabled,
|
|
578
494
|
onClick: handleIncrementActionOnClick,
|
|
@@ -581,15 +497,17 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
581
497
|
},
|
|
582
498
|
backgroundType: backgroundType,
|
|
583
499
|
tabIndex: tabIndex,
|
|
584
|
-
|
|
585
|
-
|
|
500
|
+
title: translatedLabels.numberInput.incrementValueTitle,
|
|
501
|
+
"aria-label": translatedLabels.numberInput.incrementValueTitle
|
|
502
|
+
}, _Icons["default"].increment)), action && /*#__PURE__*/_react["default"].createElement(Action, {
|
|
586
503
|
ref: actionRef,
|
|
587
504
|
disabled: disabled,
|
|
588
505
|
onClick: action.onClick,
|
|
589
506
|
onMouseDown: function onMouseDown(event) {
|
|
590
507
|
event.stopPropagation();
|
|
591
508
|
},
|
|
592
|
-
title:
|
|
509
|
+
title: action.title,
|
|
510
|
+
"aria-label": action.title,
|
|
593
511
|
backgroundType: backgroundType,
|
|
594
512
|
tabIndex: tabIndex
|
|
595
513
|
}, typeof action.icon === "string" ? /*#__PURE__*/_react["default"].createElement(ActionIcon, {
|
|
@@ -597,41 +515,37 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
597
515
|
}) : action.icon), suffix && /*#__PURE__*/_react["default"].createElement(Suffix, {
|
|
598
516
|
disabled: disabled,
|
|
599
517
|
backgroundType: backgroundType
|
|
600
|
-
}, suffix),
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
518
|
+
}, suffix))), /*#__PURE__*/_react["default"].createElement(Popover.Content, {
|
|
519
|
+
sideOffset: 4,
|
|
520
|
+
onOpenAutoFocus: function onOpenAutoFocus(event) {
|
|
521
|
+
// Avoid select to lose focus when the list is opened
|
|
604
522
|
event.preventDefault();
|
|
605
523
|
},
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
524
|
+
onCloseAutoFocus: function onCloseAutoFocus(event) {
|
|
525
|
+
// Avoid select to lose focus when the list is closed
|
|
526
|
+
event.preventDefault();
|
|
527
|
+
}
|
|
528
|
+
}, /*#__PURE__*/_react["default"].createElement(_Suggestions["default"], {
|
|
529
|
+
id: autosuggestId,
|
|
530
|
+
value: value !== null && value !== void 0 ? value : innerValue,
|
|
531
|
+
suggestions: filteredSuggestions,
|
|
532
|
+
visualFocusIndex: visualFocusIndex,
|
|
533
|
+
highlightedSuggestions: typeof suggestions !== "function",
|
|
534
|
+
searchHasErrors: isAutosuggestError,
|
|
535
|
+
isSearching: isSearching,
|
|
536
|
+
suggestionOnClick: function suggestionOnClick(suggestion) {
|
|
537
|
+
changeValue(suggestion);
|
|
538
|
+
closeSuggestions();
|
|
539
|
+
},
|
|
540
|
+
getTextInputWidth: getTextInputWidth
|
|
541
|
+
}))), !disabled && typeof error === "string" && /*#__PURE__*/_react["default"].createElement(Error, {
|
|
618
542
|
id: errorId,
|
|
619
|
-
backgroundType: backgroundType
|
|
543
|
+
backgroundType: backgroundType,
|
|
544
|
+
"aria-live": error ? "assertive" : "off"
|
|
620
545
|
}, error)));
|
|
621
546
|
});
|
|
622
547
|
|
|
623
|
-
var
|
|
624
|
-
small: "240px",
|
|
625
|
-
medium: "360px",
|
|
626
|
-
large: "480px",
|
|
627
|
-
fillParent: "100%"
|
|
628
|
-
};
|
|
629
|
-
|
|
630
|
-
var calculateWidth = function calculateWidth(margin, size) {
|
|
631
|
-
return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
|
|
632
|
-
};
|
|
633
|
-
|
|
634
|
-
var DxcInput = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n\n width: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
|
|
548
|
+
var TextInputContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n\n width: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
|
|
635
549
|
return calculateWidth(props.margin, props.size);
|
|
636
550
|
}, function (props) {
|
|
637
551
|
return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
|
|
@@ -645,7 +559,7 @@ var DxcInput = _styledComponents["default"].div(_templateObject || (_templateObj
|
|
|
645
559
|
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
|
|
646
560
|
});
|
|
647
561
|
|
|
648
|
-
var Label = _styledComponents["default"].label(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
|
|
562
|
+
var Label = _styledComponents["default"].label(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n ", "\n"])), function (props) {
|
|
649
563
|
return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledLabelFontColorOnDark : props.theme.disabledLabelFontColor : props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
|
|
650
564
|
}, function (props) {
|
|
651
565
|
return props.theme.fontFamily;
|
|
@@ -657,13 +571,15 @@ var Label = _styledComponents["default"].label(_templateObject2 || (_templateObj
|
|
|
657
571
|
return props.theme.labelFontWeight;
|
|
658
572
|
}, function (props) {
|
|
659
573
|
return props.theme.labelLineHeight;
|
|
574
|
+
}, function (props) {
|
|
575
|
+
return !props.hasHelperText && "margin-bottom: 0.25rem";
|
|
660
576
|
});
|
|
661
577
|
|
|
662
578
|
var OptionalLabel = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n font-weight: ", ";\n"])), function (props) {
|
|
663
579
|
return props.theme.optionalLabelFontWeight;
|
|
664
580
|
});
|
|
665
581
|
|
|
666
|
-
var HelperText = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
|
|
582
|
+
var HelperText = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: ", ";\n margin-bottom: 0.25rem;\n"])), function (props) {
|
|
667
583
|
return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledHelperTextFontColorOnDark : props.theme.disabledHelperTextFontColor : props.backgroundType === "dark" ? props.theme.helperTextFontColorOnDark : props.theme.helperTextFontColor;
|
|
668
584
|
}, function (props) {
|
|
669
585
|
return props.theme.fontFamily;
|
|
@@ -677,9 +593,7 @@ var HelperText = _styledComponents["default"].span(_templateObject4 || (_templat
|
|
|
677
593
|
return props.theme.helperTextLineHeight;
|
|
678
594
|
});
|
|
679
595
|
|
|
680
|
-
var InputContainer = _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
|
|
681
|
-
return "".concat(props.theme.inputMarginTop, " 0 ").concat(props.theme.inputMarginBottom, " 0");
|
|
682
|
-
}, function (props) {
|
|
596
|
+
var InputContainer = _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\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) {
|
|
683
597
|
if (props.disabled) return props.backgroundType === "dark" ? "background-color: ".concat(props.theme.disabledContainerFillColorOnDark, ";") : "background-color: ".concat(props.theme.disabledContainerFillColor, ";");
|
|
684
598
|
}, function (props) {
|
|
685
599
|
if (props.disabled) return props.backgroundType === "dark" ? props.theme.disabledBorderColorOnDark : props.theme.disabledBorderColor;else return props.backgroundType === "dark" ? props.theme.enabledBorderColorOnDark : props.theme.enabledBorderColor;
|
|
@@ -691,7 +605,7 @@ var InputContainer = _styledComponents["default"].div(_templateObject5 || (_temp
|
|
|
691
605
|
return !props.disabled && "\n &:hover {\n border-color: ".concat(props.error ? "transparent" : props.backgroundType === "dark" ? props.theme.hoverBorderColorOnDark : props.theme.hoverBorderColor, ";\n ").concat(props.error && "box-shadow: 0 0 0 2px ".concat(props.backgroundType === "dark" ? props.theme.hoverErrorBorderColorOnDark : props.theme.hoverErrorBorderColor, ";"), "\n }\n &:focus-within {\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(props.backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor, ";\n }\n ");
|
|
692
606
|
});
|
|
693
607
|
|
|
694
|
-
var Input = _styledComponents["default"].input(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n height: calc(2.5rem - 2px);\n width: 100%;\n background: none;\n border: none;\n outline: none;\n padding: 0 0.5rem;\n\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: 1.5em;\n ", "\n\n ::placeholder {\n color: ", ";\n }\n"])), function (props) {
|
|
608
|
+
var Input = _styledComponents["default"].input(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n height: calc(2.5rem - 2px);\n width: 100%;\n background: none;\n border: none;\n outline: none;\n padding: 0 0.5rem;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n\n color: ", ";\n\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: 1.5em;\n ", "\n\n ::placeholder {\n color: ", ";\n }\n"])), function (props) {
|
|
695
609
|
return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledValueFontColorOnDark : props.theme.disabledValueFontColor : props.backgroundType === "dark" ? props.theme.valueFontColorOnDark : props.theme.valueFontColor;
|
|
696
610
|
}, function (props) {
|
|
697
611
|
return props.theme.fontFamily;
|
|
@@ -739,87 +653,11 @@ var ErrorIcon = _styledComponents["default"].span(_templateObject11 || (_templat
|
|
|
739
653
|
return props.backgroundType === "dark" ? props.theme.errorIconColorOnDark : props.theme.errorIconColor;
|
|
740
654
|
});
|
|
741
655
|
|
|
742
|
-
var Error = _styledComponents["default"].span(_templateObject12 || (_templateObject12 = (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"])), function (props) {
|
|
656
|
+
var Error = _styledComponents["default"].span(_templateObject12 || (_templateObject12 = (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) {
|
|
743
657
|
return props.backgroundType === "dark" ? props.theme.errorMessageColorOnDark : props.theme.errorMessageColor;
|
|
744
658
|
}, function (props) {
|
|
745
659
|
return props.theme.fontFamily;
|
|
746
660
|
});
|
|
747
661
|
|
|
748
|
-
var Suggestions = _styledComponents["default"].ul(_templateObject13 || (_templateObject13 = (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 ", ";\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) {
|
|
749
|
-
return props.isError ? props.theme.errorListDialogBackgroundColor : props.theme.listDialogBackgroundColor;
|
|
750
|
-
}, function (props) {
|
|
751
|
-
return props.isError ? props.theme.errorListDialogBorderColor : props.theme.listDialogBorderColor;
|
|
752
|
-
}, function (props) {
|
|
753
|
-
return props.theme.listOptionFontColor;
|
|
754
|
-
}, function (props) {
|
|
755
|
-
return props.theme.fontFamily;
|
|
756
|
-
}, function (props) {
|
|
757
|
-
return props.theme.listOptionFontSize;
|
|
758
|
-
}, function (props) {
|
|
759
|
-
return props.theme.listOptionFontStyle;
|
|
760
|
-
}, function (props) {
|
|
761
|
-
return props.theme.listOptionFontWeight;
|
|
762
|
-
});
|
|
763
|
-
|
|
764
|
-
var Suggestion = _styledComponents["default"].li(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2["default"])(["\n padding: 0 0.5rem;\n line-height: 1.715em;\n cursor: pointer;\n\n box-shadow: inset 0 0 0 2px\n ", ";\n &:hover {\n background-color: ", ";\n }\n &:active {\n background-color: ", ";\n }\n"])), function (props) {
|
|
765
|
-
return props.visualFocused ? props.theme.focusListOptionBorderColor : "transparent";
|
|
766
|
-
}, function (props) {
|
|
767
|
-
return props.theme.hoverListOptionBackgroundColor;
|
|
768
|
-
}, function (props) {
|
|
769
|
-
return props.theme.activeListOptionBackgroundColor;
|
|
770
|
-
});
|
|
771
|
-
|
|
772
|
-
var StyledSuggestion = _styledComponents["default"].span(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n padding: 0.25rem 0.5rem 0.188rem 0.5rem;\n ", ";\n"])), function (props) {
|
|
773
|
-
return props.last || props.visualFocused ? "border-bottom: 1px solid transparent" : "border-bottom: 1px solid ".concat(props.theme.listOptionDividerColor);
|
|
774
|
-
});
|
|
775
|
-
|
|
776
|
-
var SuggestionsSystemMessage = _styledComponents["default"].span(_templateObject16 || (_templateObject16 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n padding: 0.25rem 1rem;\n color: ", ";\n line-height: 1.715em;\n"])), function (props) {
|
|
777
|
-
return props.theme.systemMessageFontColor;
|
|
778
|
-
});
|
|
779
|
-
|
|
780
|
-
var SuggestionsErrorIcon = _styledComponents["default"].span(_templateObject17 || (_templateObject17 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n margin-right: 0.5rem;\n height: 18px;\n width: 18px;\n color: ", ";\n"])), function (props) {
|
|
781
|
-
return props.backgroundType === "dark" ? props.theme.errorIconColorOnDark : props.theme.errorIconColor;
|
|
782
|
-
});
|
|
783
|
-
|
|
784
|
-
var SuggestionsError = _styledComponents["default"].span(_templateObject18 || (_templateObject18 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n padding: 0.25rem 1rem;\n align-items: center;\n line-height: 1.715em;\n color: ", ";\n"])), function (props) {
|
|
785
|
-
return props.theme.errorListDialogFontColor;
|
|
786
|
-
});
|
|
787
|
-
|
|
788
|
-
DxcTextInput.propTypes = {
|
|
789
|
-
label: _propTypes["default"].string,
|
|
790
|
-
name: _propTypes["default"].string,
|
|
791
|
-
value: _propTypes["default"].string,
|
|
792
|
-
helperText: _propTypes["default"].string,
|
|
793
|
-
placeholder: _propTypes["default"].string,
|
|
794
|
-
action: _propTypes["default"].shape({
|
|
795
|
-
onClick: _propTypes["default"].func.isRequired,
|
|
796
|
-
icon: _propTypes["default"].oneOfType([_propTypes["default"].shape({
|
|
797
|
-
type: _propTypes["default"].oneOf(["svg"])
|
|
798
|
-
}), _propTypes["default"].string]).isRequired
|
|
799
|
-
}),
|
|
800
|
-
clearable: _propTypes["default"].bool,
|
|
801
|
-
disabled: _propTypes["default"].bool,
|
|
802
|
-
optional: _propTypes["default"].bool,
|
|
803
|
-
prefix: _propTypes["default"].string,
|
|
804
|
-
suffix: _propTypes["default"].string,
|
|
805
|
-
onChange: _propTypes["default"].func,
|
|
806
|
-
onBlur: _propTypes["default"].func,
|
|
807
|
-
error: _propTypes["default"].string,
|
|
808
|
-
autocomplete: _propTypes["default"].string,
|
|
809
|
-
margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
|
|
810
|
-
top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
811
|
-
bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
812
|
-
left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
813
|
-
right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
|
|
814
|
-
}), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
|
|
815
|
-
size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
|
|
816
|
-
suggestions: _propTypes["default"].oneOfType([_propTypes["default"].func, _propTypes["default"].array]),
|
|
817
|
-
pattern: _propTypes["default"].string,
|
|
818
|
-
length: _propTypes["default"].shape({
|
|
819
|
-
min: _propTypes["default"].number,
|
|
820
|
-
max: _propTypes["default"].number
|
|
821
|
-
}),
|
|
822
|
-
tabIndex: _propTypes["default"].number
|
|
823
|
-
};
|
|
824
662
|
var _default = DxcTextInput;
|
|
825
663
|
exports["default"] = _default;
|