@dxc-technology/halstack-react 0.0.0-0bd2807 → 0.0.0-0c59a10

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.
Files changed (202) hide show
  1. package/README.md +46 -0
  2. package/dist/index.d.mts +3922 -0
  3. package/dist/index.d.ts +3922 -0
  4. package/dist/index.js +14391 -0
  5. package/dist/index.mjs +14303 -0
  6. package/package.json +86 -69
  7. package/BackgroundColorContext.js +0 -50
  8. package/ThemeContext.js +0 -246
  9. package/V3Select/V3Select.js +0 -455
  10. package/V3Select/index.d.ts +0 -27
  11. package/V3Textarea/V3Textarea.js +0 -260
  12. package/V3Textarea/index.d.ts +0 -27
  13. package/accordion/Accordion.d.ts +0 -4
  14. package/accordion/Accordion.js +0 -258
  15. package/accordion/types.d.ts +0 -68
  16. package/accordion/types.js +0 -5
  17. package/accordion-group/AccordionGroup.d.ts +0 -7
  18. package/accordion-group/AccordionGroup.js +0 -170
  19. package/accordion-group/types.d.ts +0 -72
  20. package/accordion-group/types.js +0 -5
  21. package/alert/Alert.d.ts +0 -4
  22. package/alert/Alert.js +0 -290
  23. package/alert/Alert.stories.tsx +0 -170
  24. package/alert/types.d.ts +0 -49
  25. package/alert/types.js +0 -5
  26. package/badge/Badge.js +0 -59
  27. package/box/Box.d.ts +0 -4
  28. package/box/Box.js +0 -126
  29. package/box/Box.stories.tsx +0 -132
  30. package/box/types.d.ts +0 -43
  31. package/box/types.js +0 -5
  32. package/button/Button.d.ts +0 -4
  33. package/button/Button.js +0 -177
  34. package/button/Button.stories.tsx +0 -276
  35. package/button/types.d.ts +0 -57
  36. package/button/types.js +0 -5
  37. package/card/Card.d.ts +0 -4
  38. package/card/Card.js +0 -165
  39. package/card/types.d.ts +0 -69
  40. package/card/types.js +0 -5
  41. package/checkbox/Checkbox.d.ts +0 -4
  42. package/checkbox/Checkbox.js +0 -253
  43. package/checkbox/Checkbox.stories.tsx +0 -192
  44. package/checkbox/types.d.ts +0 -60
  45. package/checkbox/types.js +0 -5
  46. package/chip/Chip.js +0 -221
  47. package/chip/Chip.stories.tsx +0 -121
  48. package/chip/index.d.ts +0 -22
  49. package/common/OpenSans.css +0 -81
  50. package/common/RequiredComponent.js +0 -32
  51. package/common/fonts/OpenSans-Bold.ttf +0 -0
  52. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  53. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  54. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  55. package/common/fonts/OpenSans-Italic.ttf +0 -0
  56. package/common/fonts/OpenSans-Light.ttf +0 -0
  57. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  58. package/common/fonts/OpenSans-Regular.ttf +0 -0
  59. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  60. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  61. package/common/utils.js +0 -22
  62. package/common/variables.js +0 -1577
  63. package/date/Date.js +0 -373
  64. package/date/index.d.ts +0 -27
  65. package/date-input/DateInput.d.ts +0 -4
  66. package/date-input/DateInput.js +0 -361
  67. package/date-input/DateInput.stories.tsx +0 -138
  68. package/date-input/types.d.ts +0 -100
  69. package/date-input/types.js +0 -5
  70. package/dialog/Dialog.d.ts +0 -4
  71. package/dialog/Dialog.js +0 -165
  72. package/dialog/Dialog.stories.tsx +0 -212
  73. package/dialog/types.d.ts +0 -43
  74. package/dialog/types.js +0 -5
  75. package/dropdown/Dropdown.d.ts +0 -4
  76. package/dropdown/Dropdown.js +0 -417
  77. package/dropdown/types.d.ts +0 -89
  78. package/dropdown/types.js +0 -5
  79. package/file-input/FileInput.js +0 -532
  80. package/file-input/FileItem.js +0 -193
  81. package/file-input/index.d.ts +0 -81
  82. package/footer/Footer.d.ts +0 -4
  83. package/footer/Footer.js +0 -266
  84. package/footer/Footer.stories.jsx +0 -151
  85. package/footer/Icons.js +0 -77
  86. package/footer/types.d.ts +0 -61
  87. package/footer/types.js +0 -5
  88. package/header/Header.d.ts +0 -7
  89. package/header/Header.js +0 -324
  90. package/header/Icons.js +0 -34
  91. package/header/types.d.ts +0 -45
  92. package/header/types.js +0 -5
  93. package/heading/Heading.d.ts +0 -4
  94. package/heading/Heading.js +0 -159
  95. package/heading/types.d.ts +0 -33
  96. package/heading/types.js +0 -5
  97. package/input-text/Icons.js +0 -22
  98. package/input-text/InputText.js +0 -611
  99. package/input-text/index.d.ts +0 -36
  100. package/layout/ApplicationLayout.js +0 -235
  101. package/layout/Icons.js +0 -55
  102. package/link/Link.d.ts +0 -3
  103. package/link/Link.js +0 -161
  104. package/link/Link.stories.tsx +0 -70
  105. package/link/types.d.ts +0 -74
  106. package/link/types.js +0 -5
  107. package/main.d.ts +0 -44
  108. package/main.js +0 -363
  109. package/number-input/NumberInput.d.ts +0 -4
  110. package/number-input/NumberInput.js +0 -86
  111. package/number-input/NumberInput.stories.tsx +0 -115
  112. package/number-input/NumberInputContext.js +0 -16
  113. package/number-input/types.d.ts +0 -117
  114. package/number-input/types.js +0 -5
  115. package/paginator/Icons.js +0 -66
  116. package/paginator/Paginator.d.ts +0 -4
  117. package/paginator/Paginator.js +0 -198
  118. package/paginator/Paginator.stories.tsx +0 -63
  119. package/paginator/types.d.ts +0 -38
  120. package/paginator/types.js +0 -5
  121. package/password-input/PasswordInput.d.ts +0 -4
  122. package/password-input/PasswordInput.js +0 -162
  123. package/password-input/PasswordInput.stories.tsx +0 -131
  124. package/password-input/types.d.ts +0 -100
  125. package/password-input/types.js +0 -5
  126. package/progress-bar/ProgressBar.d.ts +0 -4
  127. package/progress-bar/ProgressBar.js +0 -170
  128. package/progress-bar/ProgressBar.stories.jsx +0 -58
  129. package/progress-bar/types.d.ts +0 -37
  130. package/progress-bar/types.js +0 -5
  131. package/radio/Radio.d.ts +0 -4
  132. package/radio/Radio.js +0 -174
  133. package/radio/Radio.stories.tsx +0 -192
  134. package/radio/types.d.ts +0 -54
  135. package/radio/types.js +0 -5
  136. package/resultsetTable/ResultsetTable.js +0 -274
  137. package/resultsetTable/index.d.ts +0 -19
  138. package/select/Select.js +0 -865
  139. package/select/Select.stories.tsx +0 -572
  140. package/select/index.d.ts +0 -131
  141. package/sidenav/Sidenav.d.ts +0 -9
  142. package/sidenav/Sidenav.js +0 -136
  143. package/sidenav/types.d.ts +0 -50
  144. package/sidenav/types.js +0 -5
  145. package/slider/Slider.d.ts +0 -4
  146. package/slider/Slider.js +0 -317
  147. package/slider/Slider.stories.tsx +0 -177
  148. package/slider/types.d.ts +0 -78
  149. package/slider/types.js +0 -5
  150. package/spinner/Spinner.d.ts +0 -4
  151. package/spinner/Spinner.js +0 -250
  152. package/spinner/Spinner.stories.jsx +0 -102
  153. package/spinner/types.d.ts +0 -32
  154. package/spinner/types.js +0 -5
  155. package/switch/Switch.d.ts +0 -4
  156. package/switch/Switch.js +0 -179
  157. package/switch/Switch.stories.tsx +0 -160
  158. package/switch/types.d.ts +0 -58
  159. package/switch/types.js +0 -5
  160. package/table/Table.d.ts +0 -4
  161. package/table/Table.js +0 -118
  162. package/table/Table.stories.jsx +0 -276
  163. package/table/types.d.ts +0 -21
  164. package/table/types.js +0 -5
  165. package/tabs/Tabs.d.ts +0 -4
  166. package/tabs/Tabs.js +0 -211
  167. package/tabs/types.d.ts +0 -71
  168. package/tabs/types.js +0 -5
  169. package/tag/Tag.d.ts +0 -4
  170. package/tag/Tag.js +0 -193
  171. package/tag/Tag.stories.tsx +0 -145
  172. package/tag/types.d.ts +0 -60
  173. package/tag/types.js +0 -5
  174. package/text-input/TextInput.js +0 -825
  175. package/text-input/index.d.ts +0 -135
  176. package/textarea/Textarea.js +0 -317
  177. package/textarea/Textarea.stories.jsx +0 -135
  178. package/textarea/index.d.ts +0 -117
  179. package/toggle/Toggle.js +0 -186
  180. package/toggle/index.d.ts +0 -21
  181. package/toggle-group/ToggleGroup.js +0 -243
  182. package/toggle-group/ToggleGroup.stories.tsx +0 -178
  183. package/toggle-group/index.d.ts +0 -21
  184. package/upload/Upload.js +0 -201
  185. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  186. package/upload/buttons-upload/Icons.js +0 -40
  187. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  188. package/upload/dragAndDropArea/Icons.js +0 -39
  189. package/upload/file-upload/FileToUpload.js +0 -115
  190. package/upload/file-upload/Icons.js +0 -66
  191. package/upload/files-upload/FilesToUpload.js +0 -109
  192. package/upload/index.d.ts +0 -15
  193. package/upload/transaction/Icons.js +0 -160
  194. package/upload/transaction/Transaction.js +0 -104
  195. package/upload/transactions/Transactions.js +0 -94
  196. package/useTheme.js +0 -22
  197. package/wizard/Icons.js +0 -65
  198. package/wizard/Wizard.d.ts +0 -4
  199. package/wizard/Wizard.js +0 -231
  200. package/wizard/Wizard.stories.jsx +0 -224
  201. package/wizard/types.d.ts +0 -64
  202. package/wizard/types.js +0 -5
@@ -1,611 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof3 = require("@babel/runtime/helpers/typeof");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports["default"] = void 0;
11
-
12
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
-
16
- var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
17
-
18
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
19
-
20
- var _react = _interopRequireWildcard(require("react"));
21
-
22
- var _styledComponents = _interopRequireWildcard(require("styled-components"));
23
-
24
- var _TextField = _interopRequireDefault(require("@material-ui/core/TextField"));
25
-
26
- var _InputAdornment = _interopRequireDefault(require("@material-ui/core/InputAdornment"));
27
-
28
- var _Paper = _interopRequireDefault(require("@material-ui/core/Paper"));
29
-
30
- var _MenuItem = _interopRequireDefault(require("@material-ui/core/MenuItem"));
31
-
32
- var _propTypes = _interopRequireDefault(require("prop-types"));
33
-
34
- var _Popper = _interopRequireDefault(require("@material-ui/core/Popper"));
35
-
36
- var _RequiredComponent = _interopRequireDefault(require("../common/RequiredComponent"));
37
-
38
- var _variables = require("../common/variables.js");
39
-
40
- var _utils = require("../common/utils.js");
41
-
42
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
43
-
44
- var _Icons = _interopRequireDefault(require("./Icons"));
45
-
46
- var _BackgroundColorContext = _interopRequireWildcard(require("../BackgroundColorContext.js"));
47
-
48
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10;
49
-
50
- 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); }
51
-
52
- 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; }
53
-
54
- var makeCancelable = function makeCancelable(promise) {
55
- var hasCanceled_ = false;
56
- var wrappedPromise = new Promise(function (resolve, reject) {
57
- promise.then(function (val) {
58
- return hasCanceled_ ? reject({
59
- isCanceled: true
60
- }) : resolve(val);
61
- }, function (promiseError) {
62
- return hasCanceled_ ? reject({
63
- isCanceled: true
64
- }) : reject(promiseError);
65
- });
66
- });
67
- return {
68
- promise: wrappedPromise,
69
- cancel: function cancel() {
70
- hasCanceled_ = true;
71
- }
72
- };
73
- };
74
-
75
- var DxcInput = function DxcInput(_ref) {
76
- var _ref$label = _ref.label,
77
- label = _ref$label === void 0 ? " " : _ref$label,
78
- _ref$name = _ref.name,
79
- name = _ref$name === void 0 ? "" : _ref$name,
80
- value = _ref.value,
81
- _ref$assistiveText = _ref.assistiveText,
82
- assistiveText = _ref$assistiveText === void 0 ? "" : _ref$assistiveText,
83
- _ref$disabled = _ref.disabled,
84
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
85
- _ref$prefix = _ref.prefix,
86
- prefix = _ref$prefix === void 0 ? "" : _ref$prefix,
87
- _ref$suffix = _ref.suffix,
88
- suffix = _ref$suffix === void 0 ? "" : _ref$suffix,
89
- prefixIcon = _ref.prefixIcon,
90
- suffixIcon = _ref.suffixIcon,
91
- _ref$prefixIconSrc = _ref.prefixIconSrc,
92
- prefixIconSrc = _ref$prefixIconSrc === void 0 ? "" : _ref$prefixIconSrc,
93
- _ref$suffixIconSrc = _ref.suffixIconSrc,
94
- suffixIconSrc = _ref$suffixIconSrc === void 0 ? "" : _ref$suffixIconSrc,
95
- onClickPrefix = _ref.onClickPrefix,
96
- onClickSuffix = _ref.onClickSuffix,
97
- _ref$onChange = _ref.onChange,
98
- onChange = _ref$onChange === void 0 ? "" : _ref$onChange,
99
- _ref$onBlur = _ref.onBlur,
100
- onBlur = _ref$onBlur === void 0 ? "" : _ref$onBlur,
101
- _ref$invalid = _ref.invalid,
102
- invalid = _ref$invalid === void 0 ? false : _ref$invalid,
103
- _ref$required = _ref.required,
104
- required = _ref$required === void 0 ? false : _ref$required,
105
- _ref$isMasked = _ref.isMasked,
106
- isMasked = _ref$isMasked === void 0 ? false : _ref$isMasked,
107
- _ref$placeholder = _ref.placeholder,
108
- placeholder = _ref$placeholder === void 0 ? "" : _ref$placeholder,
109
- margin = _ref.margin,
110
- _ref$size = _ref.size,
111
- size = _ref$size === void 0 ? "medium" : _ref$size,
112
- autocompleteOptions = _ref.autocompleteOptions,
113
- _ref$tabIndex = _ref.tabIndex,
114
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
115
-
116
- var _useState = (0, _react.useState)(""),
117
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
118
- innerValue = _useState2[0],
119
- setInnerValue = _useState2[1];
120
-
121
- var _useState3 = (0, _react.useState)(false),
122
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
123
- isOpen = _useState4[0],
124
- changeIsOpen = _useState4[1];
125
-
126
- var _useState5 = (0, _react.useState)(null),
127
- _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
128
- anchorEl = _useState6[0],
129
- setAnchorEl = _useState6[1];
130
-
131
- var _useState7 = (0, _react.useState)([]),
132
- _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
133
- filteredOptions = _useState8[0],
134
- changeFilteredOptions = _useState8[1];
135
-
136
- var _useState9 = (0, _react.useState)(false),
137
- _useState10 = (0, _slicedToArray2["default"])(_useState9, 2),
138
- isSearching = _useState10[0],
139
- changeIsSearching = _useState10[1];
140
-
141
- var _useState11 = (0, _react.useState)(false),
142
- _useState12 = (0, _slicedToArray2["default"])(_useState11, 2),
143
- isError = _useState12[0],
144
- changeIsError = _useState12[1];
145
-
146
- var colorsTheme = (0, _useTheme["default"])();
147
- var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
148
-
149
- var changeValue = function changeValue(newValue) {
150
- if (value === null || value === undefined) {
151
- if (typeof onChange === "function") {
152
- setInnerValue(newValue);
153
- onChange(newValue);
154
- } else {
155
- setInnerValue(newValue);
156
- }
157
- } else if (onChange !== "") {
158
- if (typeof onChange === "function") {
159
- onChange(newValue);
160
- } else {
161
- setInnerValue(newValue);
162
- }
163
- }
164
- };
165
-
166
- (0, _react.useEffect)(function () {
167
- if (typeof autocompleteOptions === "function") {
168
- changeIsSearching(true);
169
- changeIsError(false);
170
- changeFilteredOptions([]);
171
- var cancelablePromise = makeCancelable(autocompleteOptions(value || innerValue));
172
- cancelablePromise.promise.then(function (promiseResponse) {
173
- changeIsSearching(false);
174
- changeIsError(false);
175
- changeFilteredOptions(promiseResponse);
176
- })["catch"](function (err) {
177
- if (!err.isCanceled) {
178
- changeIsSearching(false);
179
- changeIsError(true);
180
- }
181
- });
182
- return function () {
183
- cancelablePromise.cancel();
184
- };
185
- }
186
-
187
- if (autocompleteOptions && autocompleteOptions.length) {
188
- changeFilteredOptions(autocompleteOptions.filter(function (option) {
189
- return option.toUpperCase().includes((value || innerValue).toUpperCase());
190
- }));
191
- }
192
- }, [value, innerValue, autocompleteOptions]);
193
-
194
- var handlerInputChange = function handlerInputChange(event) {
195
- if (autocompleteOptions) {
196
- changeIsError(false);
197
- setAnchorEl(event.currentTarget);
198
- changeIsOpen(true);
199
- }
200
-
201
- changeValue(event.target.value);
202
- };
203
-
204
- var handlerSuggestionClicked = function handlerSuggestionClicked(suggestion) {
205
- changeIsOpen(false);
206
- changeValue(suggestion);
207
- };
208
-
209
- var handlerInputBlur = function handlerInputBlur(event) {
210
- changeIsOpen(false);
211
- setInnerValue(event.target.value);
212
-
213
- if (onBlur) {
214
- onBlur(event.target.value);
215
- }
216
- };
217
-
218
- var getFocus = function getFocus(event) {
219
- setAnchorEl(event.currentTarget);
220
-
221
- if (autocompleteOptions) {
222
- changeIsOpen(true);
223
- }
224
- };
225
-
226
- var handleSuffixKeyPress = function handleSuffixKeyPress(event) {
227
- event.preventDefault();
228
-
229
- if (!disabled && (event.nativeEvent.code === "Enter" || event.nativeEvent.code === "Space")) {
230
- onClickSuffix(event);
231
- }
232
- };
233
-
234
- var handlePrefixKeyPress = function handlePrefixKeyPress(event) {
235
- event.preventDefault();
236
-
237
- if (!disabled && (event.nativeEvent.code === "Enter" || event.nativeEvent.code === "Space")) {
238
- onClickPrefix(event);
239
- }
240
- };
241
-
242
- var ThemedSuggestions = function ThemedSuggestions() {
243
- var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
244
- return /*#__PURE__*/_react["default"].createElement(SuggestionsContainer, {
245
- margin: margin,
246
- size: size,
247
- backgroundType: backgroundType
248
- }, /*#__PURE__*/_react["default"].createElement(_Paper["default"], null, isOpen && !isSearching && !isError && filteredOptions.length === 0 && /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], null, "No matches found."), isOpen && !isSearching && filteredOptions.length > 0 && filteredOptions.map(function (suggestion) {
249
- return /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
250
- key: suggestion,
251
- disableRipple: true,
252
- onMouseDown: function onMouseDown(event) {
253
- return event.preventDefault();
254
- },
255
- onClick: function onClick() {
256
- return handlerSuggestionClicked(suggestion);
257
- }
258
- }, suggestion);
259
- }), isSearching && /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], null, "Searching..."), isError && /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], null, "Error fetching data", /*#__PURE__*/_react["default"].createElement(ErrorIconContainer, null, _Icons["default"]))));
260
- };
261
-
262
- return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
263
- theme: colorsTheme.inputText
264
- }, /*#__PURE__*/_react["default"].createElement(TextContainer, {
265
- prefixIcon: prefixIcon,
266
- prefixIconSrc: prefixIconSrc,
267
- prefix: prefix,
268
- required: required,
269
- assistiveText: assistiveText,
270
- margin: margin,
271
- size: size,
272
- backgroundType: backgroundType
273
- }, prefixIcon ? /*#__PURE__*/_react["default"].createElement(PrefixIconContainer, {
274
- tabIndex: typeof onClickPrefix === "function" && !disabled ? tabIndex : -1,
275
- disabled: disabled,
276
- onClick: !disabled ? onClickPrefix : null,
277
- interactuable: typeof onClickPrefix === "function" && !disabled,
278
- backgroundType: backgroundType,
279
- onKeyPress: handlePrefixKeyPress
280
- }, (0, _typeof2["default"])(prefixIcon) === "object" ? prefixIcon : /*#__PURE__*/_react["default"].createElement(prefixIcon)) : prefixIconSrc && /*#__PURE__*/_react["default"].createElement(PrefixIcon, {
281
- tabIndex: typeof onClickPrefix === "function" && !disabled ? tabIndex : -1,
282
- src: prefixIconSrc,
283
- disabled: disabled,
284
- onClick: !disabled ? onClickPrefix : null,
285
- interactuable: typeof onClickPrefix === "function" && !disabled,
286
- onKeyPress: handlePrefixKeyPress
287
- }) || prefix && /*#__PURE__*/_react["default"].createElement(PrefixLabel, {
288
- tabIndex: typeof onClickPrefix === "function" && !disabled ? tabIndex : -1,
289
- disabled: disabled,
290
- onClick: !disabled ? onClickPrefix : null,
291
- interactuable: typeof onClickPrefix === "function" && !disabled,
292
- backgroundType: backgroundType,
293
- onKeyPress: handlePrefixKeyPress
294
- }, prefix), /*#__PURE__*/_react["default"].createElement(_TextField["default"], {
295
- error: invalid,
296
- value: value != null ? value : innerValue,
297
- name: name,
298
- disabled: disabled,
299
- label: required ? /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_RequiredComponent["default"], null), label) : label,
300
- helperText: assistiveText,
301
- onChange: function onChange(event) {
302
- return handlerInputChange(event);
303
- },
304
- onBlur: handlerInputBlur,
305
- onFocus: function onFocus(event) {
306
- return getFocus(event);
307
- },
308
- placeholder: placeholder,
309
- type: isMasked ? "password" : "text",
310
- InputProps: {
311
- endAdornment: (suffix || suffixIconSrc || suffixIcon) && /*#__PURE__*/_react["default"].createElement(_InputAdornment["default"], {
312
- position: "end"
313
- }, suffixIcon ? /*#__PURE__*/_react["default"].createElement(SuffixIconContainer, {
314
- tabIndex: typeof onClickSuffix === "function" && !disabled ? tabIndex : -1,
315
- disabled: disabled,
316
- onClick: onClickSuffix,
317
- interactuable: typeof onClickSuffix === "function" && !disabled,
318
- backgroundType: backgroundType,
319
- onKeyPress: handleSuffixKeyPress
320
- }, (0, _typeof2["default"])(suffixIcon) === "object" ? suffixIcon : /*#__PURE__*/_react["default"].createElement(suffixIcon)) : suffixIconSrc && /*#__PURE__*/_react["default"].createElement(SuffixIcon, {
321
- tabIndex: typeof onClickSuffix === "function" && !disabled ? tabIndex : -1,
322
- disabled: disabled,
323
- src: suffixIconSrc,
324
- onClick: onClickSuffix,
325
- interactuable: typeof onClickSuffix === "function" && !disabled,
326
- onKeyPress: handleSuffixKeyPress
327
- }) || /*#__PURE__*/_react["default"].createElement(SuffixLabel, {
328
- tabIndex: typeof onClickSuffix === "function" && !disabled ? tabIndex : -1,
329
- onClick: onClickSuffix,
330
- disabled: disabled,
331
- interactuable: typeof onClickSuffix === "function" && !disabled,
332
- backgroundType: backgroundType,
333
- onKeyPress: handleSuffixKeyPress
334
- }, suffix))
335
- },
336
- inputProps: {
337
- tabIndex: tabIndex
338
- }
339
- })), /*#__PURE__*/_react["default"].createElement(DxcSuggestions, {
340
- open: isOpen,
341
- anchorEl: anchorEl,
342
- anchororigin: {
343
- vertical: "bottom",
344
- horizontal: "left"
345
- },
346
- paperprops: {
347
- style: {
348
- marginTop: "0px"
349
- }
350
- }
351
- }, /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
352
- color: colorsTheme.inputText.optionBackgroundColor
353
- }, /*#__PURE__*/_react["default"].createElement(ThemedSuggestions, null))));
354
- };
355
-
356
- var sizes = {
357
- small: "42px",
358
- medium: "240px",
359
- large: "480px",
360
- fillParent: "100%"
361
- };
362
-
363
- var ErrorIconContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n padding-left: 12px;\n color: red;\n"])));
364
-
365
- var calculateWidth = function calculateWidth(margin, size) {
366
- if (size === "fillParent") {
367
- return "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
368
- }
369
-
370
- return sizes[size];
371
- };
372
-
373
- var getCursor = function getCursor(interactuable, disabled) {
374
- if (disabled) {
375
- return "cursor:not-allowed;";
376
- }
377
-
378
- if (interactuable) {
379
- return "cursor:pointer;";
380
- }
381
-
382
- return "cursor:default; outline:none;";
383
- };
384
-
385
- var DxcSuggestions = (0, _styledComponents["default"])(_Popper["default"])(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n z-index: 1301;\n"])));
386
-
387
- var SuggestionsContainer = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n .MuiPaper-root {\n max-height: 250px;\n background-color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n border-color: ", ";\n border-width: ", ";\n border-style: ", ";\n overflow: auto;\n\n ::-webkit-scrollbar {\n width: 3px;\n }\n ::-webkit-scrollbar-track {\n background-color: ", ";\n border-radius: 3px;\n }\n ::-webkit-scrollbar-thumb {\n background-color: ", ";\n border-radius: 3px;\n }\n\n li {\n padding-bottom: ", ";\n padding-top: ", ";\n\n &:hover {\n color: ", ";\n background-color: ", ";\n }\n &:active {\n background-color: ", ";\n }\n }\n }\n"])), function (props) {
388
- return calculateWidth(props.margin, props.size);
389
- }, function (props) {
390
- return props.theme.optionBackgroundColor;
391
- }, function (props) {
392
- return props.theme.fontFamily;
393
- }, function (props) {
394
- return props.theme.optionFontSize;
395
- }, function (props) {
396
- return props.theme.optionFontStyle;
397
- }, function (props) {
398
- return props.theme.optionFontWeight;
399
- }, function (props) {
400
- return props.backgroundType === "dark" ? props.theme.optionFontColorOnDark : props.theme.optionFontColor;
401
- }, function (props) {
402
- return props.theme.optionBorderColor;
403
- }, function (props) {
404
- return props.theme.optionBorderThickness;
405
- }, function (props) {
406
- return props.theme.optionBorderStyle;
407
- }, function (props) {
408
- return props.theme.scrollBarTrackColor;
409
- }, function (props) {
410
- return props.theme.scrollBarThumbColor;
411
- }, function (props) {
412
- return props.theme.optionPaddingBottom;
413
- }, function (props) {
414
- return props.theme.optionPaddingTop;
415
- }, function (props) {
416
- return props.theme.hoverOptionColor;
417
- }, function (props) {
418
- return props.backgroundType === "dark" ? props.theme.hoverOptionBackgroundColorOnDark : props.theme.hoverOptionBackgroundColor;
419
- }, function (props) {
420
- return props.backgroundType === "dark" ? props.theme.selectedOptionBackgroundColorOnDark : props.theme.selectedOptionBackgroundColor;
421
- });
422
-
423
- var PrefixIcon = _styledComponents["default"].img(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n top: 20px;\n left: 0px;\n max-height: 20px;\n max-width: 20px;\n z-index: 1;\n opacity: ", ";\n ", ";\n"])), function (props) {
424
- return props.disabled && 0.5 || 1;
425
- }, function (props) {
426
- return getCursor(props.interactuable, props.disabled);
427
- });
428
-
429
- var PrefixIconContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n top: 20px;\n left: 0px;\n width: 20px;\n max-height: 20px;\n max-width: 20px;\n color: ", ";\n z-index: 1;\n opacity: ", ";\n ", ";\n overflow: hidden;\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
430
- return props.backgroundType === "dark" ? props.theme.prefixIconColorOnDark : props.theme.prefixIconColor;
431
- }, function (props) {
432
- return props.disabled && 0.5 || 1;
433
- }, function (props) {
434
- return getCursor(props.interactuable, props.disabled);
435
- });
436
-
437
- var PrefixLabel = _styledComponents["default"].span(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n top: 20px;\n left: 0px;\n font-weight: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n color: ", ";\n max-height: 20px;\n max-width: 20px;\n opacity: ", ";\n z-index: 1;\n ", ";\n"])), function (props) {
438
- return props.theme.prefixLabelFontWeight;
439
- }, function (props) {
440
- return props.theme.fontFamily;
441
- }, function (props) {
442
- return props.theme.prefixLabelFontSize;
443
- }, function (props) {
444
- return props.theme.prefixLabelFontStyle;
445
- }, function (props) {
446
- return props.backgroundType === "dark" ? props.theme.prefixLabelFontColorOnDark : props.theme.prefixLabelFontColor;
447
- }, function (props) {
448
- return props.disabled && 0.5 || 1;
449
- }, function (props) {
450
- return getCursor(props.interactuable, props.disabled);
451
- });
452
-
453
- var SuffixIcon = _styledComponents["default"].img(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n top: 23px;\n left: 0;\n max-height: 20px;\n max-width: 20px;\n margin-right: 8px;\n width: 20px;\n opacity: ", ";\n ", ";\n"])), function (props) {
454
- return props.disabled && 0.5 || 1;
455
- }, function (props) {
456
- return getCursor(props.interactuable, props.disabled);
457
- });
458
-
459
- var SuffixIconContainer = _styledComponents["default"].div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n top: 23px;\n left: 0;\n max-height: 20px;\n max-width: 20px;\n color: ", ";\n margin-right: 8px;\n width: 20px;\n opacity: ", ";\n ", ";\n overflow: hidden;\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
460
- return props.backgroundType === "dark" ? props.theme.suffixIconColorOnDark : props.theme.suffixIconColor;
461
- }, function (props) {
462
- return props.disabled && 0.5 || 1;
463
- }, function (props) {
464
- return getCursor(props.interactuable, props.disabled);
465
- });
466
-
467
- var SuffixLabel = _styledComponents["default"].span(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n ", ";\n font-weight: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n color: ", ";\n"])), function (props) {
468
- return getCursor(props.interactuable, props.disabled);
469
- }, function (props) {
470
- return props.theme.suffixLabelFontWeight;
471
- }, function (props) {
472
- return props.theme.fontFamily;
473
- }, function (props) {
474
- return props.theme.suffixLabelFontSize;
475
- }, function (props) {
476
- return props.theme.suffixLabelFontStyle;
477
- }, function (props) {
478
- return props.backgroundType === "dark" ? props.theme.suffixLabelFontColorOnDark : props.theme.suffixLabelFontColor;
479
- });
480
-
481
- var TextContainer = _styledComponents["default"].div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n display: inline-block;\n position: relative;\n height: auto;\n width: ", ";\n\n .MuiTextField-root {\n width: 100%;\n font-family: ", ";\n\n .MuiFormHelperText-root {\n font-weight: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n color: ", " !important;\n margin-top: 6px;\n }\n\n .MuiFormLabel-root {\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n padding-left: ", ";\n\n &.Mui-disabled {\n color: ", " !important;\n cursor: not-allowed;\n }\n\n &.Mui-focused {\n color: ", ";\n &.MuiInputLabel-shrink {\n transform: ", ";\n }\n }\n\n &.MuiInputLabel-shrink {\n font-family: ", ";\n\n transform: ", ";\n }\n\n &.Mui-error {\n color: ", ";\n }\n\n &:not(.MuiInputLabel-shrink) {\n font-family: ", ";\n color: ", ";\n\n & + div,\n & + div + p {\n color: ", ";\n }\n }\n\n &.MuiInputLabel-shrink {\n & + div::before {\n border-color: ", ";\n }\n & + div + p {\n color: ", ";\n }\n }\n }\n\n .MuiInputBase-root.MuiInput-root.MuiInput-underline {\n font-family: ", ";\n\n &::before {\n border-bottom: ", ";\n }\n\n &:not(.Mui-error)::before,\n &:not(&.Mui-focused)::before {\n border-bottom: ", ";\n }\n\n &::after {\n border-bottom: ", ";\n }\n\n &.Mui-error {\n &::before {\n border-width: ", ";\n border-color: ", ";\n }\n &::after {\n transform: scaleX(0);\n }\n }\n\n &.Mui-focused {\n &::after {\n border-width: calc(", " + 1px);\n border-color: ", ";\n }\n &.Mui-error::after {\n border-color: ", ";\n }\n }\n\n &.Mui-disabled {\n cursor: not-allowed;\n\n &::before {\n border-bottom: ", ";\n border-bottom-style: solid;\n }\n }\n\n .MuiInputBase-input {\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n padding-left: ", ";\n text-overflow: ellipsis;\n\n &.Mui-disabled {\n color: ", " !important;\n cursor: not-allowed;\n }\n }\n\n .MuiInputAdornment-root {\n height: 20px;\n\n &.MuiInputAdornment-positionEnd {\n & > p {\n font-family: ", ";\n margin-right: 8px;\n margin-bottom: 1px;\n }\n }\n &.Mui-disabled {\n cursor: not-allowed;\n opacity: 0.5;\n }\n }\n\n &:hover:not(.Mui-disabled):before &:hover:not(.Mui-error):before {\n border-bottom-color: ", ";\n }\n }\n\n & > p {\n &.Mui-error {\n color: ", " !important;\n }\n &.Mui-disabled {\n color: ", " !important;\n cursor: not-allowed;\n }\n }\n }\n"])), function (props) {
482
- return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
483
- }, function (props) {
484
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
485
- }, function (props) {
486
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
487
- }, function (props) {
488
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
489
- }, function (props) {
490
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
491
- }, function (props) {
492
- return calculateWidth(props.margin, props.size);
493
- }, function (props) {
494
- return props.theme.fontFamily;
495
- }, function (props) {
496
- return props.theme.assistiveTextFontWeight;
497
- }, function (props) {
498
- return props.theme.fontFamily;
499
- }, function (props) {
500
- return props.theme.assistiveTextFontSize;
501
- }, function (props) {
502
- return props.theme.assistiveTextFontStyle;
503
- }, function (props) {
504
- return props.backgroundType === "dark" ? props.theme.assistiveTextFontColorOnDark : props.theme.assistiveTextFontColor;
505
- }, function (props) {
506
- return props.theme.labelFontSize;
507
- }, function (props) {
508
- return props.theme.labelFontStyle;
509
- }, function (props) {
510
- return props.theme.labelFontWeight;
511
- }, function (props) {
512
- return props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
513
- }, function (props) {
514
- return (props.prefixIconSrc || props.prefix || props.prefixIcon) && "32px" || "inherit";
515
- }, function (props) {
516
- return props.backgroundType === "dark" ? props.theme.disabledColorOnDark : props.theme.disabledColor;
517
- }, function (props) {
518
- return props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
519
- }, function (props) {
520
- return props.prefixIconSrc || props.prefixIcon || (props.prefix || props.suffix) && "translate(8px, 1.5px) scale(0.75);" || "translate(0, 1.5px) scale(0.75);";
521
- }, function (props) {
522
- return props.theme.fontFamily;
523
- }, function (props) {
524
- return props.prefixIcon && "translate(8px, 1.5px) scale(0.75);" || props.prefixIconSrc && "translate(8px, 1.5px) scale(0.75);" || props.prefix && "translate(8px, 1.5px) scale(0.75);" || "translate(0, 1.5px) scale(0.75);";
525
- }, function (props) {
526
- return props.backgroundType === "dark" ? props.theme.errorColorOnDark : props.theme.errorColor;
527
- }, function (props) {
528
- return props.theme.fontFamily;
529
- }, function (props) {
530
- return props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
531
- }, function (props) {
532
- return props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
533
- }, function (props) {
534
- return props.backgroundType === "dark" ? props.theme.underlineColorOnDark : props.theme.underlineColor;
535
- }, function (props) {
536
- return props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
537
- }, function (props) {
538
- return props.theme.fontFamily;
539
- }, function (props) {
540
- return "".concat(props.theme.underlineThickness, " solid ").concat(props.backgroundType === "dark" ? props.theme.underlineColorOnDark : props.theme.underlineColor);
541
- }, function (props) {
542
- return "".concat(props.theme.underlineThickness, " solid ").concat(props.backgroundType === "dark" ? props.theme.underlineColorOnDark : props.theme.underlineColor);
543
- }, function (props) {
544
- return "calc(".concat(props.theme.underlineThickness, " + 1px) solid ").concat(props.backgroundType === "dark" ? props.theme.underlineFocusColorOnDark : props.theme.underlineFocusColor);
545
- }, function (props) {
546
- return props.theme.underlineThickness;
547
- }, function (props) {
548
- return props.backgroundType === "dark" ? props.theme.errorColorOnDark : props.theme.errorColor;
549
- }, function (props) {
550
- return props.theme.underlineThickness;
551
- }, function (props) {
552
- return props.backgroundType === "dark" ? props.theme.underlineFocusColorOnDark : props.theme.underlineFocusColor;
553
- }, function (props) {
554
- return props.backgroundType === "dark" ? props.theme.errorColorOnDark : props.theme.errorColor;
555
- }, function (props) {
556
- return "".concat(props.theme.underlineThickness, " solid ").concat(props.backgroundType === "dark" ? props.theme.disabledColorOnDark : props.theme.disabledColor, " !important");
557
- }, function (props) {
558
- return props.theme.valueFontSize;
559
- }, function (props) {
560
- return props.theme.valueFontStyle;
561
- }, function (props) {
562
- return props.theme.valueFontWeight;
563
- }, function (props) {
564
- return props.backgroundType === "dark" ? props.theme.valueFontColorOnDark : props.theme.valueFontColor;
565
- }, function (props) {
566
- return (props.prefixIconSrc || props.prefix || props.prefixIcon) && "32px" || "inherit";
567
- }, function (props) {
568
- return props.backgroundType === "dark" ? props.theme.disabledColorOnDark : props.theme.disabledColor;
569
- }, function (props) {
570
- return props.theme.fontFamily;
571
- }, function (props) {
572
- return props.backgroundType === "dark" ? props.theme.underlineFocusColorOnDark : props.theme.underlineFocusColor;
573
- }, function (props) {
574
- return props.backgroundType === "dark" ? props.theme.errorColorOnDark : props.theme.errorColor;
575
- }, function (props) {
576
- return props.backgroundType === "dark" ? props.theme.disabledColorOnDark : props.theme.disabledColor;
577
- });
578
-
579
- DxcInput.propTypes = {
580
- label: _propTypes["default"].string,
581
- name: _propTypes["default"].string,
582
- value: _propTypes["default"].string,
583
- assistiveText: _propTypes["default"].string,
584
- disabled: _propTypes["default"].bool,
585
- prefix: _propTypes["default"].string,
586
- suffix: _propTypes["default"].string,
587
- prefixIcon: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
588
- suffixIcon: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
589
- prefixIconSrc: _propTypes["default"].string,
590
- suffixIconSrc: _propTypes["default"].string,
591
- required: _propTypes["default"].bool,
592
- invalid: _propTypes["default"].bool,
593
- placeholder: _propTypes["default"].string,
594
- isMasked: _propTypes["default"].bool,
595
- onClickIcon: _propTypes["default"].func,
596
- onClickPrefix: _propTypes["default"].func,
597
- onClickSuffix: _propTypes["default"].func,
598
- onChange: _propTypes["default"].func,
599
- onBlur: _propTypes["default"].func,
600
- size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
601
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
602
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
603
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
604
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
605
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
606
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
607
- autocompleteOptions: _propTypes["default"].any,
608
- tabIndex: _propTypes["default"].number
609
- };
610
- var _default = DxcInput;
611
- exports["default"] = _default;
@@ -1,36 +0,0 @@
1
- type Size = "small" | "medium" | "large" | "fillParent";
2
- type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
- type Margin = {
4
- top?: Space;
5
- bottom?: Space;
6
- left?: Space;
7
- right?: Space;
8
- };
9
-
10
- type Props = {
11
- label?: string;
12
- name?: string;
13
- value?: string;
14
- assistiveText?: string;
15
- disabled?: boolean;
16
- prefix?: string;
17
- suffix?: string;
18
- prefixIcon?: any;
19
- suffixIcon?: any;
20
- prefixIconSrc?: string;
21
- suffixIconSrc?: string;
22
- onClickPrefix?: void;
23
- onClickSuffix?: void;
24
- onChange?: void;
25
- onBlur?: void;
26
- invalid?: boolean;
27
- required?: void;
28
- isMasked?: boolean;
29
- placeholder?: string;
30
- autocompleteOptions?: any;
31
- margin?: Space | Margin;
32
- size?: Size;
33
- tabIndex?: number;
34
- };
35
-
36
- export default function DxcInput(props: Props): JSX.Element;