@dxc-technology/halstack-react 0.0.0-df9dd3c → 0.0.0-dfb16f5
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/HalstackContext.d.ts +12 -0
- package/HalstackContext.js +295 -0
- package/accordion/Accordion.d.ts +1 -1
- package/accordion/Accordion.js +122 -135
- package/accordion/Accordion.stories.tsx +20 -14
- package/accordion/Accordion.test.js +71 -0
- package/accordion/types.d.ts +11 -10
- package/accordion-group/AccordionGroup.d.ts +1 -1
- package/accordion-group/AccordionGroup.js +15 -36
- package/accordion-group/AccordionGroup.stories.tsx +28 -2
- package/accordion-group/AccordionGroup.test.js +126 -0
- package/accordion-group/types.d.ts +16 -9
- package/alert/Alert.js +5 -2
- package/alert/Alert.test.js +92 -0
- package/badge/Badge.d.ts +4 -0
- package/badge/Badge.js +5 -3
- 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 +23 -33
- package/box/Box.test.js +18 -0
- package/box/types.d.ts +1 -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 +57 -80
- package/button/Button.stories.tsx +15 -8
- package/button/Button.test.js +35 -0
- package/button/types.d.ts +8 -12
- package/card/Card.js +24 -27
- package/card/Card.stories.tsx +1 -1
- package/card/Card.test.js +50 -0
- package/card/types.d.ts +1 -0
- package/checkbox/Checkbox.d.ts +2 -2
- package/checkbox/Checkbox.js +106 -109
- package/checkbox/Checkbox.stories.tsx +146 -130
- package/checkbox/Checkbox.test.js +155 -0
- package/checkbox/types.d.ts +13 -5
- package/chip/Chip.d.ts +1 -1
- package/chip/Chip.js +14 -52
- package/chip/Chip.stories.tsx +6 -8
- package/chip/Chip.test.js +56 -0
- package/chip/types.d.ts +5 -13
- package/common/variables.js +250 -346
- package/date-input/DateInput.js +62 -48
- 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 +46 -50
- package/dialog/Dialog.stories.tsx +57 -2
- package/dialog/Dialog.test.js +70 -0
- package/dialog/types.d.ts +3 -2
- package/dropdown/Dropdown.d.ts +1 -1
- package/dropdown/Dropdown.js +247 -273
- package/dropdown/Dropdown.stories.tsx +144 -79
- package/dropdown/Dropdown.test.js +585 -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 +29 -18
- package/file-input/FileInput.d.ts +2 -2
- package/file-input/FileInput.js +179 -220
- package/file-input/FileInput.stories.tsx +39 -10
- package/file-input/FileInput.test.js +498 -0
- package/file-input/FileItem.d.ts +4 -14
- package/file-input/FileItem.js +43 -66
- package/file-input/types.d.ts +17 -0
- package/flex/Flex.d.ts +4 -0
- package/flex/Flex.js +69 -0
- package/flex/Flex.stories.tsx +103 -0
- package/flex/types.d.ts +32 -0
- package/flex/types.js +5 -0
- package/footer/Footer.js +24 -99
- package/footer/Footer.stories.tsx +8 -1
- package/footer/Footer.test.js +109 -0
- package/footer/Icons.js +1 -1
- package/footer/types.d.ts +2 -1
- package/header/Header.js +95 -114
- package/header/Header.stories.tsx +46 -36
- package/header/Header.test.js +79 -0
- package/header/Icons.js +2 -2
- package/header/types.d.ts +3 -2
- 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 +16 -6
- package/layout/ApplicationLayout.js +71 -125
- package/layout/ApplicationLayout.stories.tsx +84 -93
- 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 +18 -33
- package/link/Link.d.ts +3 -2
- package/link/Link.js +60 -85
- 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 +11 -15
- package/main.js +53 -79
- package/number-input/NumberInput.js +11 -18
- package/number-input/NumberInput.stories.tsx +5 -5
- package/number-input/NumberInput.test.js +543 -0
- package/number-input/types.d.ts +17 -10
- package/package.json +14 -12
- package/paginator/Paginator.js +17 -38
- 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 +7 -4
- package/password-input/PasswordInput.stories.tsx +3 -3
- package/password-input/PasswordInput.test.js +181 -0
- package/password-input/types.d.ts +14 -11
- package/progress-bar/ProgressBar.d.ts +2 -2
- package/progress-bar/ProgressBar.js +57 -51
- 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 +117 -0
- package/quick-nav/QuickNav.stories.tsx +342 -0
- package/quick-nav/types.d.ts +21 -0
- package/quick-nav/types.js +5 -0
- package/radio-group/Radio.d.ts +1 -1
- package/radio-group/Radio.js +79 -32
- package/radio-group/RadioGroup.js +153 -36
- package/radio-group/RadioGroup.stories.tsx +64 -19
- package/radio-group/RadioGroup.test.js +722 -0
- package/radio-group/types.d.ts +90 -13
- package/resultsetTable/ResultsetTable.js +6 -5
- package/resultsetTable/ResultsetTable.stories.tsx +7 -8
- package/resultsetTable/ResultsetTable.test.js +348 -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.js +147 -365
- package/select/Select.stories.tsx +231 -176
- package/select/Select.test.js +2233 -0
- package/select/types.d.ts +52 -12
- package/sidenav/Sidenav.d.ts +6 -5
- package/sidenav/Sidenav.js +184 -52
- 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 +2 -2
- package/slider/Slider.js +122 -96
- package/slider/Slider.stories.tsx +15 -9
- package/slider/Slider.test.js +250 -0
- package/slider/types.d.ts +10 -2
- package/spinner/Spinner.js +1 -1
- 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 +150 -67
- package/switch/Switch.stories.tsx +21 -43
- package/switch/Switch.test.js +225 -0
- package/switch/types.d.ts +12 -4
- package/table/Table.js +1 -1
- 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 +81 -16
- 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 +18 -28
- package/tag/Tag.stories.tsx +26 -29
- package/tag/Tag.test.js +60 -0
- package/tag/types.d.ts +23 -14
- package/text-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.js +213 -322
- package/text-input/TextInput.stories.tsx +218 -193
- package/text-input/TextInput.test.js +1771 -0
- package/text-input/types.d.ts +51 -13
- package/textarea/Textarea.js +20 -27
- package/textarea/Textarea.stories.jsx +37 -15
- package/textarea/Textarea.test.js +437 -0
- package/textarea/types.d.ts +18 -11
- package/toggle-group/ToggleGroup.d.ts +1 -1
- package/toggle-group/ToggleGroup.js +5 -4
- package/toggle-group/ToggleGroup.stories.tsx +4 -4
- package/toggle-group/ToggleGroup.test.js +156 -0
- package/toggle-group/types.d.ts +9 -1
- 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.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 +58 -54
- package/wizard/Wizard.stories.tsx +33 -24
- package/wizard/Wizard.test.js +141 -0
- package/wizard/types.d.ts +10 -5
- package/ThemeContext.d.ts +0 -15
- package/ThemeContext.js +0 -243
- 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/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/list/List.d.ts +0 -8
- package/list/List.js +0 -47
- package/list/List.stories.tsx +0 -85
- 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/row/Row.d.ts +0 -11
- package/row/Row.js +0 -124
- package/row/Row.stories.tsx +0 -223
- package/stack/Stack.d.ts +0 -10
- package/stack/Stack.js +0 -94
- package/stack/Stack.stories.tsx +0 -150
- package/text/Text.d.ts +0 -7
- package/text/Text.js +0 -30
- package/text/Text.stories.tsx +0 -19
- package/toggle/Toggle.js +0 -186
- package/toggle/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/text-input/TextInput.js
CHANGED
|
@@ -21,68 +21,46 @@ var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
|
21
21
|
|
|
22
22
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
23
23
|
|
|
24
|
+
var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
|
|
25
|
+
|
|
24
26
|
var _variables = require("../common/variables.js");
|
|
25
27
|
|
|
26
28
|
var _utils = require("../common/utils.js");
|
|
27
29
|
|
|
28
|
-
var _uuid = require("uuid");
|
|
29
|
-
|
|
30
30
|
var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
|
|
31
31
|
|
|
32
32
|
var _NumberInputContext = _interopRequireDefault(require("../number-input/NumberInputContext"));
|
|
33
33
|
|
|
34
|
-
var
|
|
34
|
+
var _Suggestions = _interopRequireDefault(require("./Suggestions"));
|
|
35
|
+
|
|
36
|
+
var Popover = _interopRequireWildcard(require("@radix-ui/react-popover"));
|
|
37
|
+
|
|
38
|
+
var _Icons = _interopRequireDefault(require("./Icons"));
|
|
39
|
+
|
|
40
|
+
var _uuid = require("uuid");
|
|
41
|
+
|
|
42
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12;
|
|
35
43
|
|
|
36
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); }
|
|
37
45
|
|
|
38
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; }
|
|
39
47
|
|
|
40
|
-
var
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
57
|
-
d: "M0 0h24v24H0V0z",
|
|
58
|
-
fill: "none"
|
|
59
|
-
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
60
|
-
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"
|
|
61
|
-
})),
|
|
62
|
-
increment: /*#__PURE__*/_react["default"].createElement("svg", {
|
|
63
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
64
|
-
height: "24px",
|
|
65
|
-
viewBox: "0 0 24 24",
|
|
66
|
-
width: "24px",
|
|
67
|
-
fill: "currentColor"
|
|
68
|
-
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
69
|
-
d: "M0 0h24v24H0z",
|
|
70
|
-
fill: "none"
|
|
71
|
-
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
72
|
-
d: "M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"
|
|
73
|
-
})),
|
|
74
|
-
decrement: /*#__PURE__*/_react["default"].createElement("svg", {
|
|
75
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
76
|
-
height: "24px",
|
|
77
|
-
viewBox: "0 0 24 24",
|
|
78
|
-
width: "24px",
|
|
79
|
-
fill: "currentColor"
|
|
80
|
-
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
81
|
-
d: "M0 0h24v24H0z",
|
|
82
|
-
fill: "none"
|
|
83
|
-
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
84
|
-
d: "M19 13H5v-2h14v2z"
|
|
85
|
-
}))
|
|
48
|
+
var sizes = {
|
|
49
|
+
small: "240px",
|
|
50
|
+
medium: "360px",
|
|
51
|
+
large: "480px",
|
|
52
|
+
fillParent: "100%"
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
var AutosuggestWrapper = function AutosuggestWrapper(_ref) {
|
|
56
|
+
var condition = _ref.condition,
|
|
57
|
+
wrapper = _ref.wrapper,
|
|
58
|
+
children = _ref.children;
|
|
59
|
+
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, condition ? wrapper(children) : children);
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
var calculateWidth = function calculateWidth(margin, size) {
|
|
63
|
+
return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
|
|
86
64
|
};
|
|
87
65
|
|
|
88
66
|
var makeCancelable = function makeCancelable(promise) {
|
|
@@ -106,70 +84,70 @@ var makeCancelable = function makeCancelable(promise) {
|
|
|
106
84
|
};
|
|
107
85
|
};
|
|
108
86
|
|
|
109
|
-
var
|
|
110
|
-
return "
|
|
87
|
+
var hasSuggestions = function hasSuggestions(suggestions) {
|
|
88
|
+
return typeof suggestions === "function" || (suggestions === null || suggestions === void 0 ? void 0 : suggestions.length) > 0;
|
|
111
89
|
};
|
|
112
90
|
|
|
113
|
-
var
|
|
114
|
-
return
|
|
91
|
+
var isNotOptional = function isNotOptional(value, optional) {
|
|
92
|
+
return value === "" && !optional;
|
|
115
93
|
};
|
|
116
94
|
|
|
117
|
-
var
|
|
118
|
-
return
|
|
95
|
+
var isLengthIncorrect = function isLengthIncorrect(value, minLength, maxLength) {
|
|
96
|
+
return value && minLength && maxLength && (value.length < minLength || value.length > maxLength);
|
|
119
97
|
};
|
|
120
98
|
|
|
121
|
-
var
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
var reducer = function reducer(acc, current) {
|
|
125
|
-
var _current$options;
|
|
126
|
-
|
|
127
|
-
return acc + ((_current$options = current.options) === null || _current$options === void 0 ? void 0 : _current$options.length);
|
|
128
|
-
};
|
|
99
|
+
var isNumberIncorrect = function isNumberIncorrect(value, minNumber, maxNumber) {
|
|
100
|
+
return minNumber && parseInt(value) < minNumber || maxNumber && parseInt(value) > maxNumber;
|
|
101
|
+
};
|
|
129
102
|
|
|
130
|
-
|
|
131
|
-
return
|
|
103
|
+
var patternMissmatch = function patternMissmatch(pattern, value) {
|
|
104
|
+
return pattern && !new RegExp(pattern).test(value);
|
|
132
105
|
};
|
|
133
106
|
|
|
134
|
-
var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (
|
|
135
|
-
var label =
|
|
136
|
-
|
|
137
|
-
name =
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
107
|
+
var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref2, ref) {
|
|
108
|
+
var label = _ref2.label,
|
|
109
|
+
_ref2$name = _ref2.name,
|
|
110
|
+
name = _ref2$name === void 0 ? "" : _ref2$name,
|
|
111
|
+
_ref2$defaultValue = _ref2.defaultValue,
|
|
112
|
+
defaultValue = _ref2$defaultValue === void 0 ? "" : _ref2$defaultValue,
|
|
113
|
+
value = _ref2.value,
|
|
114
|
+
helperText = _ref2.helperText,
|
|
115
|
+
_ref2$placeholder = _ref2.placeholder,
|
|
116
|
+
placeholder = _ref2$placeholder === void 0 ? "" : _ref2$placeholder,
|
|
117
|
+
action = _ref2.action,
|
|
118
|
+
_ref2$clearable = _ref2.clearable,
|
|
119
|
+
clearable = _ref2$clearable === void 0 ? false : _ref2$clearable,
|
|
120
|
+
_ref2$disabled = _ref2.disabled,
|
|
121
|
+
disabled = _ref2$disabled === void 0 ? false : _ref2$disabled,
|
|
122
|
+
_ref2$optional = _ref2.optional,
|
|
123
|
+
optional = _ref2$optional === void 0 ? false : _ref2$optional,
|
|
124
|
+
_ref2$prefix = _ref2.prefix,
|
|
125
|
+
prefix = _ref2$prefix === void 0 ? "" : _ref2$prefix,
|
|
126
|
+
_ref2$suffix = _ref2.suffix,
|
|
127
|
+
suffix = _ref2$suffix === void 0 ? "" : _ref2$suffix,
|
|
128
|
+
onChange = _ref2.onChange,
|
|
129
|
+
onBlur = _ref2.onBlur,
|
|
130
|
+
error = _ref2.error,
|
|
131
|
+
suggestions = _ref2.suggestions,
|
|
132
|
+
pattern = _ref2.pattern,
|
|
133
|
+
minLength = _ref2.minLength,
|
|
134
|
+
maxLength = _ref2.maxLength,
|
|
135
|
+
_ref2$autocomplete = _ref2.autocomplete,
|
|
136
|
+
autocomplete = _ref2$autocomplete === void 0 ? "off" : _ref2$autocomplete,
|
|
137
|
+
margin = _ref2.margin,
|
|
138
|
+
_ref2$size = _ref2.size,
|
|
139
|
+
size = _ref2$size === void 0 ? "medium" : _ref2$size,
|
|
140
|
+
_ref2$tabIndex = _ref2.tabIndex,
|
|
141
|
+
tabIndex = _ref2$tabIndex === void 0 ? 0 : _ref2$tabIndex;
|
|
167
142
|
|
|
168
143
|
var _useState = (0, _react.useState)("input-".concat((0, _uuid.v4)())),
|
|
169
144
|
_useState2 = (0, _slicedToArray2["default"])(_useState, 1),
|
|
170
145
|
inputId = _useState2[0];
|
|
171
146
|
|
|
172
|
-
var
|
|
147
|
+
var autosuggestId = "suggestions-".concat(inputId);
|
|
148
|
+
var errorId = "error-".concat(inputId);
|
|
149
|
+
|
|
150
|
+
var _useState3 = (0, _react.useState)(defaultValue),
|
|
173
151
|
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
174
152
|
innerValue = _useState4[0],
|
|
175
153
|
setInnerValue = _useState4[1];
|
|
@@ -196,78 +174,55 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
196
174
|
|
|
197
175
|
var _useState13 = (0, _react.useState)(-1),
|
|
198
176
|
_useState14 = (0, _slicedToArray2["default"])(_useState13, 2),
|
|
199
|
-
|
|
200
|
-
|
|
177
|
+
visualFocusIndex = _useState14[0],
|
|
178
|
+
changeVisualFocusIndex = _useState14[1];
|
|
201
179
|
|
|
202
|
-
var suggestionsRef = (0, _react.useRef)(null);
|
|
203
180
|
var inputRef = (0, _react.useRef)(null);
|
|
204
181
|
var actionRef = (0, _react.useRef)(null);
|
|
205
182
|
var colorsTheme = (0, _useTheme["default"])();
|
|
183
|
+
var translatedLabels = (0, _useTranslatedLabels["default"])();
|
|
206
184
|
var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
|
|
207
|
-
var autosuggestId = "".concat(inputId, "-listBox");
|
|
208
|
-
var errorId = "error-message-".concat(inputId);
|
|
209
185
|
var numberInputContext = (0, _react.useContext)(_NumberInputContext["default"]);
|
|
210
|
-
var lastOptionIndex = (0, _react.useMemo)(function () {
|
|
211
|
-
return getLastOptionIndex(filteredSuggestions);
|
|
212
|
-
}, [filteredSuggestions]);
|
|
213
|
-
|
|
214
|
-
var isNotOptional = function isNotOptional(value) {
|
|
215
|
-
return value === "" && !optional;
|
|
216
|
-
};
|
|
217
|
-
|
|
218
|
-
var isLengthIncorrect = function isLengthIncorrect(value) {
|
|
219
|
-
return value && minLength && maxLength && (value.length < minLength || value.length > maxLength);
|
|
220
|
-
};
|
|
221
|
-
|
|
222
|
-
var getLengthErrorMessage = function getLengthErrorMessage() {
|
|
223
|
-
return "Min length ".concat(minLength, ", max length ").concat(maxLength, ".");
|
|
224
|
-
};
|
|
225
|
-
|
|
226
|
-
var isNumberIncorrect = function isNumberIncorrect(value) {
|
|
227
|
-
return (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber) && parseInt(value) < (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber) || (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber) && parseInt(value) > (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber);
|
|
228
|
-
};
|
|
229
|
-
|
|
230
|
-
var isTextInputType = function isTextInputType() {
|
|
231
|
-
var _inputRef$current, _inputRef$current2;
|
|
232
|
-
|
|
233
|
-
return !(inputRef !== null && inputRef !== void 0 && (_inputRef$current = inputRef.current) !== null && _inputRef$current !== void 0 && _inputRef$current.getAttribute("type")) || (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.getAttribute("type")) === "text";
|
|
234
|
-
};
|
|
235
186
|
|
|
236
187
|
var getNumberErrorMessage = function getNumberErrorMessage(value) {
|
|
237
|
-
if (numberInputContext !== null && numberInputContext !== void 0 && numberInputContext.minNumber && parseInt(value) < (numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber)) return
|
|
188
|
+
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);
|
|
238
189
|
};
|
|
239
190
|
|
|
240
|
-
var
|
|
241
|
-
|
|
242
|
-
|
|
191
|
+
var getTextInputWidth = (0, _react.useCallback)(function () {
|
|
192
|
+
var _inputRef$current, _inputRef$current$par;
|
|
193
|
+
|
|
194
|
+
var rect = inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : (_inputRef$current$par = _inputRef$current.parentElement) === null || _inputRef$current$par === void 0 ? void 0 : _inputRef$current$par.getBoundingClientRect();
|
|
195
|
+
return rect === null || rect === void 0 ? void 0 : rect.width;
|
|
196
|
+
}, []);
|
|
243
197
|
|
|
244
198
|
var openSuggestions = function openSuggestions() {
|
|
245
|
-
hasSuggestions() && changeIsOpen(true);
|
|
199
|
+
hasSuggestions(suggestions) && changeIsOpen(true);
|
|
246
200
|
};
|
|
247
201
|
|
|
248
202
|
var closeSuggestions = function closeSuggestions() {
|
|
249
|
-
|
|
250
|
-
|
|
203
|
+
if (hasSuggestions(suggestions)) {
|
|
204
|
+
changeIsOpen(false);
|
|
205
|
+
changeVisualFocusIndex(-1);
|
|
206
|
+
}
|
|
251
207
|
};
|
|
252
208
|
|
|
253
209
|
var changeValue = function changeValue(newValue) {
|
|
254
210
|
value !== null && value !== void 0 ? value : setInnerValue(newValue);
|
|
255
211
|
var changedValue = typeof newValue === "number" ? newValue.toString() : newValue;
|
|
256
|
-
if (isNotOptional(newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
212
|
+
if (isNotOptional(newValue, optional)) onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
257
213
|
value: changedValue,
|
|
258
|
-
error:
|
|
259
|
-
});else if (isLengthIncorrect(newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
214
|
+
error: translatedLabels.formFields.requiredValueErrorMessage
|
|
215
|
+
});else if (isLengthIncorrect(newValue, minLength, maxLength)) onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
260
216
|
value: changedValue,
|
|
261
|
-
error:
|
|
262
|
-
});else if (
|
|
217
|
+
error: translatedLabels.formFields.lengthErrorMessage(minLength, maxLength)
|
|
218
|
+
});else if (patternMissmatch(pattern, newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
263
219
|
value: changedValue,
|
|
264
|
-
error:
|
|
265
|
-
});else if (newValue
|
|
220
|
+
error: translatedLabels.formFields.formatRequestedErrorMessage
|
|
221
|
+
});else if (isNumberIncorrect(newValue, numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber, numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber)) onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
266
222
|
value: changedValue,
|
|
267
223
|
error: getNumberErrorMessage(newValue)
|
|
268
224
|
});else onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
269
|
-
value: changedValue
|
|
270
|
-
error: null
|
|
225
|
+
value: changedValue
|
|
271
226
|
});
|
|
272
227
|
};
|
|
273
228
|
|
|
@@ -280,44 +235,43 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
280
235
|
document.activeElement === inputRef.current && event.preventDefault();
|
|
281
236
|
};
|
|
282
237
|
|
|
283
|
-
var
|
|
238
|
+
var handleInputOnChange = function handleInputOnChange(event) {
|
|
284
239
|
openSuggestions();
|
|
285
240
|
changeValue(event.target.value);
|
|
286
241
|
};
|
|
287
242
|
|
|
288
|
-
var
|
|
289
|
-
|
|
290
|
-
if (isNotOptional(event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
243
|
+
var handleInputOnBlur = function handleInputOnBlur(event) {
|
|
244
|
+
closeSuggestions();
|
|
245
|
+
if (isNotOptional(event.target.value, optional)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
291
246
|
value: event.target.value,
|
|
292
|
-
error:
|
|
293
|
-
});else if (isLengthIncorrect(event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
247
|
+
error: translatedLabels.formFields.requiredValueErrorMessage
|
|
248
|
+
});else if (isLengthIncorrect(event.target.value, minLength, maxLength)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
294
249
|
value: event.target.value,
|
|
295
|
-
error:
|
|
296
|
-
});else if (
|
|
250
|
+
error: translatedLabels.formFields.lengthErrorMessage(minLength, maxLength)
|
|
251
|
+
});else if (patternMissmatch(pattern, event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
297
252
|
value: event.target.value,
|
|
298
|
-
error:
|
|
299
|
-
});else if (event.target.value
|
|
253
|
+
error: translatedLabels.formFields.formatRequestedErrorMessage
|
|
254
|
+
});else if (isNumberIncorrect(event.target.value, numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.minNumber, numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.maxNumber)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
300
255
|
value: event.target.value,
|
|
301
256
|
error: getNumberErrorMessage(event.target.value)
|
|
302
257
|
});else onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
303
|
-
value: event.target.value
|
|
304
|
-
error: null
|
|
258
|
+
value: event.target.value
|
|
305
259
|
});
|
|
306
260
|
};
|
|
307
261
|
|
|
308
|
-
var
|
|
309
|
-
switch (event.
|
|
310
|
-
case
|
|
311
|
-
|
|
262
|
+
var handleInputOnKeyDown = function handleInputOnKeyDown(event) {
|
|
263
|
+
switch (event.key) {
|
|
264
|
+
case "Down":
|
|
265
|
+
case "ArrowDown":
|
|
266
|
+
event.preventDefault();
|
|
267
|
+
|
|
312
268
|
if ((numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number") {
|
|
313
269
|
decrementNumber();
|
|
314
|
-
event.preventDefault();
|
|
315
270
|
} else {
|
|
316
|
-
event.preventDefault();
|
|
317
271
|
openSuggestions();
|
|
318
272
|
|
|
319
273
|
if (!isAutosuggestError && !isSearching && filteredSuggestions.length > 0) {
|
|
320
|
-
|
|
274
|
+
changeVisualFocusIndex(function (visualFocusedSuggIndex) {
|
|
321
275
|
if (visualFocusedSuggIndex < filteredSuggestions.length - 1) return visualFocusedSuggIndex + 1;else if (visualFocusedSuggIndex === filteredSuggestions.length - 1) return 0;
|
|
322
276
|
});
|
|
323
277
|
}
|
|
@@ -325,17 +279,17 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
325
279
|
|
|
326
280
|
break;
|
|
327
281
|
|
|
328
|
-
case
|
|
329
|
-
|
|
282
|
+
case "Up":
|
|
283
|
+
case "ArrowUp":
|
|
284
|
+
event.preventDefault();
|
|
285
|
+
|
|
330
286
|
if ((numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number") {
|
|
331
287
|
incrementNumber();
|
|
332
|
-
event.preventDefault();
|
|
333
288
|
} else {
|
|
334
|
-
event.preventDefault();
|
|
335
289
|
openSuggestions();
|
|
336
290
|
|
|
337
291
|
if (!isAutosuggestError && !isSearching && filteredSuggestions.length > 0) {
|
|
338
|
-
|
|
292
|
+
changeVisualFocusIndex(function (visualFocusedSuggIndex) {
|
|
339
293
|
if (visualFocusedSuggIndex === 0 || visualFocusedSuggIndex === -1) return filteredSuggestions.length > 0 ? filteredSuggestions.length - 1 : suggestions.length - 1;else return visualFocusedSuggIndex - 1;
|
|
340
294
|
});
|
|
341
295
|
}
|
|
@@ -343,22 +297,21 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
343
297
|
|
|
344
298
|
break;
|
|
345
299
|
|
|
346
|
-
case
|
|
347
|
-
|
|
300
|
+
case "Esc":
|
|
301
|
+
case "Escape":
|
|
348
302
|
event.preventDefault();
|
|
349
303
|
|
|
350
|
-
if (hasSuggestions()) {
|
|
304
|
+
if (hasSuggestions(suggestions)) {
|
|
351
305
|
changeValue("");
|
|
352
306
|
isOpen && closeSuggestions();
|
|
353
307
|
}
|
|
354
308
|
|
|
355
309
|
break;
|
|
356
310
|
|
|
357
|
-
case
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
validFocusedSuggestion && changeValue(filteredSuggestions[visualFocusedSuggIndex]);
|
|
311
|
+
case "Enter":
|
|
312
|
+
if (hasSuggestions(suggestions) && !isSearching) {
|
|
313
|
+
var validFocusedSuggestion = filteredSuggestions.length > 0 && visualFocusIndex >= 0 && visualFocusIndex < filteredSuggestions.length;
|
|
314
|
+
validFocusedSuggestion && changeValue(filteredSuggestions[visualFocusIndex]);
|
|
362
315
|
isOpen && closeSuggestions();
|
|
363
316
|
}
|
|
364
317
|
|
|
@@ -383,12 +336,12 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
383
336
|
};
|
|
384
337
|
|
|
385
338
|
var setNumberProps = function setNumberProps(type, min, max, step) {
|
|
386
|
-
var _inputRef$
|
|
339
|
+
var _inputRef$current2, _inputRef$current3, _inputRef$current4, _inputRef$current5;
|
|
387
340
|
|
|
388
|
-
type && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$
|
|
389
|
-
min && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$
|
|
390
|
-
max && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$
|
|
391
|
-
step && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$
|
|
341
|
+
type && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.setAttribute("type", type));
|
|
342
|
+
min && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current3 = inputRef.current) === null || _inputRef$current3 === void 0 ? void 0 : _inputRef$current3.setAttribute("min", min));
|
|
343
|
+
max && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current4 = inputRef.current) === null || _inputRef$current4 === void 0 ? void 0 : _inputRef$current4.setAttribute("max", max));
|
|
344
|
+
step && (inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current5 = inputRef.current) === null || _inputRef$current5 === void 0 ? void 0 : _inputRef$current5.setAttribute("step", step));
|
|
392
345
|
};
|
|
393
346
|
|
|
394
347
|
var decrementNumber = function decrementNumber() {
|
|
@@ -431,15 +384,6 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
431
384
|
}
|
|
432
385
|
};
|
|
433
386
|
|
|
434
|
-
(0, _react.useLayoutEffect)(function () {
|
|
435
|
-
var _suggestionsRef$curre, _visualFocusedOptionE;
|
|
436
|
-
|
|
437
|
-
var visualFocusedOptionEl = suggestionsRef === null || suggestionsRef === void 0 ? void 0 : (_suggestionsRef$curre = suggestionsRef.current) === null || _suggestionsRef$curre === void 0 ? void 0 : _suggestionsRef$curre.querySelectorAll("[role='option']")[visualFocusedSuggIndex];
|
|
438
|
-
visualFocusedOptionEl === null || visualFocusedOptionEl === void 0 ? void 0 : (_visualFocusedOptionE = visualFocusedOptionEl.scrollIntoView) === null || _visualFocusedOptionE === void 0 ? void 0 : _visualFocusedOptionE.call(visualFocusedOptionEl, {
|
|
439
|
-
block: "nearest",
|
|
440
|
-
inline: "start"
|
|
441
|
-
});
|
|
442
|
-
}, [visualFocusedSuggIndex]);
|
|
443
387
|
(0, _react.useEffect)(function () {
|
|
444
388
|
if (typeof suggestions === "function") {
|
|
445
389
|
changeIsSearching(true);
|
|
@@ -463,50 +407,27 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
463
407
|
changeFilteredSuggestions(suggestions.filter(function (suggestion) {
|
|
464
408
|
return suggestion.toUpperCase().startsWith((value !== null && value !== void 0 ? value : innerValue).toUpperCase());
|
|
465
409
|
}));
|
|
466
|
-
|
|
410
|
+
changeVisualFocusIndex(-1);
|
|
467
411
|
}
|
|
468
412
|
|
|
469
413
|
(numberInputContext === null || numberInputContext === void 0 ? void 0 : numberInputContext.typeNumber) === "number" && setNumberProps(numberInputContext.typeNumber, numberInputContext.minNumber, numberInputContext.maxNumber, numberInputContext.stepNumber);
|
|
470
414
|
}, [value, innerValue, suggestions, numberInputContext]);
|
|
471
|
-
|
|
472
|
-
var HighlightedSuggestion = function HighlightedSuggestion(_ref2) {
|
|
473
|
-
var suggestion = _ref2.suggestion,
|
|
474
|
-
index = _ref2.index;
|
|
475
|
-
var regEx = new RegExp(value !== null && value !== void 0 ? value : innerValue, "i");
|
|
476
|
-
var matchedWords = suggestion.match(regEx);
|
|
477
|
-
var noMatchedWords = suggestion.replace(regEx, "");
|
|
478
|
-
var isLastOption = index === lastOptionIndex;
|
|
479
|
-
return /*#__PURE__*/_react["default"].createElement(Suggestion, {
|
|
480
|
-
id: "suggestion-".concat(index),
|
|
481
|
-
onClick: function onClick() {
|
|
482
|
-
changeValue(suggestion);
|
|
483
|
-
closeSuggestions();
|
|
484
|
-
},
|
|
485
|
-
visualFocused: visualFocusedSuggIndex === index,
|
|
486
|
-
role: "option",
|
|
487
|
-
"aria-selected": visualFocusedSuggIndex === index && "true"
|
|
488
|
-
}, /*#__PURE__*/_react["default"].createElement(StyledSuggestion, {
|
|
489
|
-
last: isLastOption,
|
|
490
|
-
visualFocused: visualFocusedSuggIndex === index
|
|
491
|
-
}, typeof suggestions === "function" ? suggestion : /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("strong", null, matchedWords), noMatchedWords)));
|
|
492
|
-
};
|
|
493
|
-
|
|
494
415
|
return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
495
416
|
theme: colorsTheme.textInput
|
|
496
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
417
|
+
}, /*#__PURE__*/_react["default"].createElement(TextInputContainer, {
|
|
497
418
|
margin: margin,
|
|
498
|
-
|
|
499
|
-
|
|
419
|
+
size: size,
|
|
420
|
+
ref: ref
|
|
500
421
|
}, label && /*#__PURE__*/_react["default"].createElement(Label, {
|
|
501
422
|
htmlFor: inputId,
|
|
502
423
|
disabled: disabled,
|
|
503
424
|
backgroundType: backgroundType,
|
|
504
|
-
helperText:
|
|
505
|
-
}, label, " ", optional && /*#__PURE__*/_react["default"].createElement(OptionalLabel, null,
|
|
425
|
+
hasHelperText: helperText ? true : false
|
|
426
|
+
}, label, " ", optional && /*#__PURE__*/_react["default"].createElement(OptionalLabel, null, translatedLabels.formFields.optionalLabel)), helperText && /*#__PURE__*/_react["default"].createElement(HelperText, {
|
|
506
427
|
disabled: disabled,
|
|
507
428
|
backgroundType: backgroundType
|
|
508
429
|
}, helperText), /*#__PURE__*/_react["default"].createElement(InputContainer, {
|
|
509
|
-
error: error,
|
|
430
|
+
error: error ? true : false,
|
|
510
431
|
disabled: disabled,
|
|
511
432
|
backgroundType: backgroundType,
|
|
512
433
|
onClick: handleInputContainerOnClick,
|
|
@@ -514,17 +435,48 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
514
435
|
}, prefix && /*#__PURE__*/_react["default"].createElement(Prefix, {
|
|
515
436
|
disabled: disabled,
|
|
516
437
|
backgroundType: backgroundType
|
|
517
|
-
}, prefix), /*#__PURE__*/_react["default"].createElement(
|
|
438
|
+
}, prefix), /*#__PURE__*/_react["default"].createElement(AutosuggestWrapper, {
|
|
439
|
+
condition: hasSuggestions(suggestions),
|
|
440
|
+
wrapper: function wrapper(children) {
|
|
441
|
+
return /*#__PURE__*/_react["default"].createElement(Popover.Root, {
|
|
442
|
+
open: isOpen && (filteredSuggestions.length > 0 || isSearching || isAutosuggestError)
|
|
443
|
+
}, /*#__PURE__*/_react["default"].createElement(Popover.Trigger, {
|
|
444
|
+
asChild: true,
|
|
445
|
+
"aria-controls": undefined
|
|
446
|
+
}, children), /*#__PURE__*/_react["default"].createElement(Popover.Content, {
|
|
447
|
+
sideOffset: 5,
|
|
448
|
+
onOpenAutoFocus: function onOpenAutoFocus(event) {
|
|
449
|
+
// Avoid select to lose focus when the list is opened
|
|
450
|
+
event.preventDefault();
|
|
451
|
+
},
|
|
452
|
+
onCloseAutoFocus: function onCloseAutoFocus(event) {
|
|
453
|
+
// Avoid select to lose focus when the list is closed
|
|
454
|
+
event.preventDefault();
|
|
455
|
+
}
|
|
456
|
+
}, /*#__PURE__*/_react["default"].createElement(_Suggestions["default"], {
|
|
457
|
+
id: autosuggestId,
|
|
458
|
+
value: value !== null && value !== void 0 ? value : innerValue,
|
|
459
|
+
suggestions: filteredSuggestions,
|
|
460
|
+
visualFocusIndex: visualFocusIndex,
|
|
461
|
+
highlightedSuggestions: typeof suggestions !== "function",
|
|
462
|
+
searchHasErrors: isAutosuggestError,
|
|
463
|
+
isSearching: isSearching,
|
|
464
|
+
suggestionOnClick: function suggestionOnClick(suggestion) {
|
|
465
|
+
changeValue(suggestion);
|
|
466
|
+
closeSuggestions();
|
|
467
|
+
},
|
|
468
|
+
getTextInputWidth: getTextInputWidth
|
|
469
|
+
})));
|
|
470
|
+
}
|
|
471
|
+
}, /*#__PURE__*/_react["default"].createElement(Input, {
|
|
518
472
|
id: inputId,
|
|
519
473
|
name: name,
|
|
520
474
|
value: value !== null && value !== void 0 ? value : innerValue,
|
|
521
475
|
placeholder: placeholder,
|
|
522
|
-
onBlur:
|
|
523
|
-
onChange:
|
|
524
|
-
onFocus:
|
|
525
|
-
|
|
526
|
-
},
|
|
527
|
-
onKeyDown: handleIOnKeyDown,
|
|
476
|
+
onBlur: handleInputOnBlur,
|
|
477
|
+
onChange: handleInputOnChange,
|
|
478
|
+
onFocus: openSuggestions,
|
|
479
|
+
onKeyDown: handleInputOnKeyDown,
|
|
528
480
|
onMouseDown: function onMouseDown(event) {
|
|
529
481
|
event.stopPropagation();
|
|
530
482
|
},
|
|
@@ -534,29 +486,32 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
534
486
|
pattern: pattern,
|
|
535
487
|
minLength: minLength,
|
|
536
488
|
maxLength: maxLength,
|
|
537
|
-
autoComplete: autocomplete,
|
|
489
|
+
autoComplete: autocomplete === "off" ? "nope" : autocomplete,
|
|
538
490
|
tabIndex: tabIndex,
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
"aria-
|
|
542
|
-
"aria-
|
|
543
|
-
"aria-
|
|
544
|
-
"aria-
|
|
545
|
-
"aria-
|
|
546
|
-
"aria-
|
|
547
|
-
|
|
491
|
+
type: "text",
|
|
492
|
+
role: hasSuggestions(suggestions) ? "combobox" : undefined,
|
|
493
|
+
"aria-autocomplete": hasSuggestions(suggestions) ? "list" : undefined,
|
|
494
|
+
"aria-controls": hasSuggestions(suggestions) ? autosuggestId : undefined,
|
|
495
|
+
"aria-expanded": hasSuggestions(suggestions) ? isOpen : undefined,
|
|
496
|
+
"aria-haspopup": hasSuggestions(suggestions) ? "listbox" : undefined,
|
|
497
|
+
"aria-activedescendant": hasSuggestions(suggestions) && isOpen && visualFocusIndex !== -1 ? "suggestion-".concat(visualFocusIndex) : undefined,
|
|
498
|
+
"aria-invalid": error ? true : false,
|
|
499
|
+
"aria-errormessage": error ? errorId : undefined,
|
|
500
|
+
"aria-required": optional ? false : true
|
|
501
|
+
})), !disabled && error && /*#__PURE__*/_react["default"].createElement(ErrorIcon, {
|
|
548
502
|
backgroundType: backgroundType,
|
|
549
503
|
"aria-label": "Error"
|
|
550
|
-
},
|
|
504
|
+
}, _Icons["default"].error), !disabled && clearable && (value !== null && value !== void 0 ? value : innerValue).length > 0 && /*#__PURE__*/_react["default"].createElement(Action, {
|
|
551
505
|
onClick: handleClearActionOnClick,
|
|
552
506
|
onMouseDown: function onMouseDown(event) {
|
|
553
507
|
event.stopPropagation();
|
|
554
508
|
},
|
|
555
509
|
backgroundType: backgroundType,
|
|
556
510
|
tabIndex: tabIndex,
|
|
557
|
-
title:
|
|
558
|
-
"aria-label":
|
|
559
|
-
|
|
511
|
+
title: translatedLabels.textInput.clearFieldActionTitle,
|
|
512
|
+
"aria-label": translatedLabels.textInput.clearFieldActionTitle,
|
|
513
|
+
type: "button"
|
|
514
|
+
}, _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, {
|
|
560
515
|
ref: actionRef,
|
|
561
516
|
disabled: disabled,
|
|
562
517
|
onClick: handleDecrementActionOnClick,
|
|
@@ -565,9 +520,10 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
565
520
|
},
|
|
566
521
|
backgroundType: backgroundType,
|
|
567
522
|
tabIndex: tabIndex,
|
|
568
|
-
title:
|
|
569
|
-
"aria-label":
|
|
570
|
-
|
|
523
|
+
title: translatedLabels.numberInput.decrementValueTitle,
|
|
524
|
+
"aria-label": translatedLabels.numberInput.decrementValueTitle,
|
|
525
|
+
type: "button"
|
|
526
|
+
}, _Icons["default"].decrement), /*#__PURE__*/_react["default"].createElement(Action, {
|
|
571
527
|
ref: actionRef,
|
|
572
528
|
disabled: disabled,
|
|
573
529
|
onClick: handleIncrementActionOnClick,
|
|
@@ -576,9 +532,10 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
576
532
|
},
|
|
577
533
|
backgroundType: backgroundType,
|
|
578
534
|
tabIndex: tabIndex,
|
|
579
|
-
title:
|
|
580
|
-
"aria-label":
|
|
581
|
-
|
|
535
|
+
title: translatedLabels.numberInput.incrementValueTitle,
|
|
536
|
+
"aria-label": translatedLabels.numberInput.incrementValueTitle,
|
|
537
|
+
type: "button"
|
|
538
|
+
}, _Icons["default"].increment)), action && /*#__PURE__*/_react["default"].createElement(Action, {
|
|
582
539
|
ref: actionRef,
|
|
583
540
|
disabled: disabled,
|
|
584
541
|
onClick: action.onClick,
|
|
@@ -588,47 +545,21 @@ var DxcTextInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
588
545
|
title: action.title,
|
|
589
546
|
"aria-label": action.title,
|
|
590
547
|
backgroundType: backgroundType,
|
|
591
|
-
tabIndex: tabIndex
|
|
548
|
+
tabIndex: tabIndex,
|
|
549
|
+
type: "button"
|
|
592
550
|
}, typeof action.icon === "string" ? /*#__PURE__*/_react["default"].createElement(ActionIcon, {
|
|
593
551
|
src: action.icon
|
|
594
552
|
}) : action.icon), suffix && /*#__PURE__*/_react["default"].createElement(Suffix, {
|
|
595
553
|
disabled: disabled,
|
|
596
554
|
backgroundType: backgroundType
|
|
597
|
-
}, suffix),
|
|
598
|
-
id: autosuggestId,
|
|
599
|
-
isError: isAutosuggestError,
|
|
600
|
-
onMouseDown: function onMouseDown(event) {
|
|
601
|
-
event.preventDefault();
|
|
602
|
-
},
|
|
603
|
-
ref: suggestionsRef,
|
|
604
|
-
role: "listbox",
|
|
605
|
-
"aria-label": label
|
|
606
|
-
}, !isSearching && !isAutosuggestError && filteredSuggestions.length > 0 && filteredSuggestions.map(function (suggestion, index) {
|
|
607
|
-
return /*#__PURE__*/_react["default"].createElement(HighlightedSuggestion, {
|
|
608
|
-
key: "suggestion-".concat((0, _uuid.v4)()),
|
|
609
|
-
suggestion: suggestion,
|
|
610
|
-
index: index
|
|
611
|
-
});
|
|
612
|
-
}), isSearching && /*#__PURE__*/_react["default"].createElement(SuggestionsSystemMessage, null, "Searching..."), isAutosuggestError && /*#__PURE__*/_react["default"].createElement(SuggestionsError, null, /*#__PURE__*/_react["default"].createElement(SuggestionsErrorIcon, {
|
|
613
|
-
backgroundType: backgroundType
|
|
614
|
-
}, textInputIcons.error), "Error fetching data"))), !disabled && typeof error === "string" && /*#__PURE__*/_react["default"].createElement(Error, {
|
|
555
|
+
}, suffix)), !disabled && typeof error === "string" && /*#__PURE__*/_react["default"].createElement(Error, {
|
|
615
556
|
id: errorId,
|
|
616
|
-
backgroundType: backgroundType
|
|
557
|
+
backgroundType: backgroundType,
|
|
558
|
+
"aria-live": error ? "assertive" : "off"
|
|
617
559
|
}, error)));
|
|
618
560
|
});
|
|
619
561
|
|
|
620
|
-
var
|
|
621
|
-
small: "240px",
|
|
622
|
-
medium: "360px",
|
|
623
|
-
large: "480px",
|
|
624
|
-
fillParent: "100%"
|
|
625
|
-
};
|
|
626
|
-
|
|
627
|
-
var calculateWidth = function calculateWidth(margin, size) {
|
|
628
|
-
return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
|
|
629
|
-
};
|
|
630
|
-
|
|
631
|
-
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) {
|
|
562
|
+
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) {
|
|
632
563
|
return calculateWidth(props.margin, props.size);
|
|
633
564
|
}, function (props) {
|
|
634
565
|
return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
|
|
@@ -655,7 +586,7 @@ var Label = _styledComponents["default"].label(_templateObject2 || (_templateObj
|
|
|
655
586
|
}, function (props) {
|
|
656
587
|
return props.theme.labelLineHeight;
|
|
657
588
|
}, function (props) {
|
|
658
|
-
return !props.
|
|
589
|
+
return !props.hasHelperText && "margin-bottom: 0.25rem";
|
|
659
590
|
});
|
|
660
591
|
|
|
661
592
|
var OptionalLabel = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n font-weight: ", ";\n"])), function (props) {
|
|
@@ -685,7 +616,7 @@ var InputContainer = _styledComponents["default"].div(_templateObject5 || (_temp
|
|
|
685
616
|
}, function (props) {
|
|
686
617
|
return props.disabled && "cursor: not-allowed;";
|
|
687
618
|
}, function (props) {
|
|
688
|
-
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
|
|
619
|
+
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 ");
|
|
689
620
|
});
|
|
690
621
|
|
|
691
622
|
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) {
|
|
@@ -742,45 +673,5 @@ var Error = _styledComponents["default"].span(_templateObject12 || (_templateObj
|
|
|
742
673
|
return props.theme.fontFamily;
|
|
743
674
|
});
|
|
744
675
|
|
|
745
|
-
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) {
|
|
746
|
-
return props.isError ? props.theme.errorListDialogBackgroundColor : props.theme.listDialogBackgroundColor;
|
|
747
|
-
}, function (props) {
|
|
748
|
-
return props.isError ? props.theme.errorListDialogBorderColor : props.theme.listDialogBorderColor;
|
|
749
|
-
}, function (props) {
|
|
750
|
-
return props.theme.listOptionFontColor;
|
|
751
|
-
}, function (props) {
|
|
752
|
-
return props.theme.fontFamily;
|
|
753
|
-
}, function (props) {
|
|
754
|
-
return props.theme.listOptionFontSize;
|
|
755
|
-
}, function (props) {
|
|
756
|
-
return props.theme.listOptionFontStyle;
|
|
757
|
-
}, function (props) {
|
|
758
|
-
return props.theme.listOptionFontWeight;
|
|
759
|
-
});
|
|
760
|
-
|
|
761
|
-
var Suggestion = _styledComponents["default"].li(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\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) {
|
|
762
|
-
return props.visualFocused ? props.theme.focusListOptionBorderColor : "transparent";
|
|
763
|
-
}, function (props) {
|
|
764
|
-
return props.theme.hoverListOptionBackgroundColor;
|
|
765
|
-
}, function (props) {
|
|
766
|
-
return props.theme.activeListOptionBackgroundColor;
|
|
767
|
-
});
|
|
768
|
-
|
|
769
|
-
var StyledSuggestion = _styledComponents["default"].span(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteral2["default"])(["\n width: 100%;\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) {
|
|
770
|
-
return props.last || props.visualFocused ? "border-bottom: 1px solid transparent" : "border-bottom: 1px solid ".concat(props.theme.listOptionDividerColor);
|
|
771
|
-
});
|
|
772
|
-
|
|
773
|
-
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) {
|
|
774
|
-
return props.theme.systemMessageFontColor;
|
|
775
|
-
});
|
|
776
|
-
|
|
777
|
-
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) {
|
|
778
|
-
return props.backgroundType === "dark" ? props.theme.errorIconColorOnDark : props.theme.errorIconColor;
|
|
779
|
-
});
|
|
780
|
-
|
|
781
|
-
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) {
|
|
782
|
-
return props.theme.errorListDialogFontColor;
|
|
783
|
-
});
|
|
784
|
-
|
|
785
676
|
var _default = DxcTextInput;
|
|
786
677
|
exports["default"] = _default;
|