@dxc-technology/halstack-react 0.0.0-eca8a89 → 0.0.0-ecc45e2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/BackgroundColorContext.js +0 -1
- package/HalstackContext.d.ts +12 -0
- package/HalstackContext.js +295 -0
- package/accordion/Accordion.d.ts +1 -1
- package/accordion/Accordion.js +13 -45
- package/accordion/Accordion.stories.tsx +20 -13
- package/accordion/Accordion.test.js +72 -0
- package/accordion/types.d.ts +7 -7
- package/accordion-group/AccordionGroup.d.ts +1 -1
- package/accordion-group/AccordionGroup.js +14 -15
- package/accordion-group/AccordionGroup.stories.tsx +1 -1
- package/accordion-group/AccordionGroup.test.js +151 -0
- package/accordion-group/types.d.ts +7 -7
- package/alert/Alert.js +4 -1
- 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 +22 -32
- package/box/Box.test.js +18 -0
- package/bulleted-list/BulletedList.d.ts +7 -0
- package/bulleted-list/BulletedList.js +123 -0
- package/bulleted-list/BulletedList.stories.tsx +200 -0
- package/bulleted-list/types.d.ts +11 -0
- package/bulleted-list/types.js +5 -0
- package/button/Button.d.ts +1 -1
- package/button/Button.js +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/checkbox/Checkbox.d.ts +1 -1
- package/checkbox/Checkbox.js +43 -39
- package/checkbox/Checkbox.stories.tsx +124 -128
- package/checkbox/Checkbox.test.js +78 -0
- package/checkbox/types.d.ts +8 -4
- package/chip/Chip.d.ts +1 -1
- package/chip/Chip.js +16 -54
- package/chip/Chip.stories.tsx +6 -8
- package/chip/Chip.test.js +56 -0
- package/chip/types.d.ts +7 -15
- package/common/variables.js +267 -337
- 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 +48 -51
- package/dialog/Dialog.stories.tsx +1 -2
- package/dialog/Dialog.test.js +70 -0
- package/dialog/types.d.ts +2 -2
- package/dropdown/Dropdown.d.ts +1 -1
- package/dropdown/Dropdown.js +242 -272
- package/dropdown/Dropdown.stories.tsx +312 -0
- package/dropdown/Dropdown.test.js +591 -0
- package/dropdown/DropdownMenu.d.ts +4 -0
- package/dropdown/DropdownMenu.js +80 -0
- package/dropdown/DropdownMenuItem.d.ts +4 -0
- package/dropdown/DropdownMenuItem.js +92 -0
- package/dropdown/types.d.ts +29 -18
- package/file-input/FileInput.js +111 -39
- package/file-input/FileInput.stories.tsx +507 -0
- package/file-input/FileInput.test.js +457 -0
- package/file-input/FileItem.js +7 -5
- package/flex/Flex.d.ts +4 -0
- package/flex/Flex.js +57 -0
- package/flex/Flex.stories.tsx +103 -0
- package/flex/types.d.ts +21 -0
- package/flex/types.js +5 -0
- package/footer/Footer.js +24 -99
- package/footer/Footer.test.js +109 -0
- package/footer/Icons.js +1 -1
- package/footer/types.d.ts +1 -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 +2 -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 +83 -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 +506 -0
- package/number-input/types.d.ts +17 -10
- package/package.json +14 -10
- 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 +180 -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 +118 -0
- package/quick-nav/QuickNav.stories.tsx +264 -0
- package/quick-nav/types.d.ts +21 -0
- package/quick-nav/types.js +5 -0
- package/radio-group/Radio.d.ts +4 -0
- package/radio-group/Radio.js +141 -0
- package/radio-group/RadioGroup.d.ts +4 -0
- package/radio-group/RadioGroup.js +281 -0
- package/radio-group/RadioGroup.stories.tsx +100 -0
- package/radio-group/RadioGroup.test.js +695 -0
- package/radio-group/types.d.ts +114 -0
- package/radio-group/types.js +5 -0
- package/resultsetTable/ResultsetTable.js +5 -2
- 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 +199 -0
- package/select/Option.d.ts +4 -0
- package/select/Option.js +110 -0
- package/select/Select.d.ts +4 -0
- package/select/Select.js +146 -366
- package/select/Select.stories.tsx +231 -176
- package/select/Select.test.js +2175 -0
- package/select/types.d.ts +210 -0
- package/select/types.js +5 -0
- package/sidenav/Sidenav.d.ts +6 -5
- package/sidenav/Sidenav.js +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 +1 -1
- package/slider/Slider.js +5 -4
- package/slider/Slider.stories.tsx +8 -8
- package/slider/Slider.test.js +187 -0
- package/slider/types.d.ts +4 -0
- 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 +127 -55
- package/switch/Switch.stories.tsx +21 -43
- package/switch/Switch.test.js +212 -0
- package/switch/types.d.ts +9 -6
- package/table/Table.stories.jsx +2 -1
- package/table/Table.test.js +26 -0
- package/tabs/Tabs.d.ts +1 -1
- package/tabs/Tabs.js +16 -18
- package/tabs/Tabs.stories.tsx +7 -16
- package/tabs/Tabs.test.js +140 -0
- package/tabs/types.d.ts +27 -15
- 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 +17 -27
- package/tag/Tag.stories.tsx +26 -29
- package/tag/Tag.test.js +60 -0
- package/tag/types.d.ts +23 -14
- package/text-input/Suggestion.d.ts +4 -0
- package/text-input/Suggestion.js +55 -0
- package/text-input/TextInput.js +80 -105
- package/text-input/TextInput.stories.tsx +35 -18
- package/text-input/TextInput.test.js +1712 -0
- package/text-input/types.d.ts +32 -13
- package/textarea/Textarea.d.ts +4 -0
- package/textarea/Textarea.js +19 -56
- package/textarea/Textarea.stories.jsx +37 -15
- package/textarea/Textarea.test.js +437 -0
- package/textarea/types.d.ts +137 -0
- package/textarea/types.js +5 -0
- package/toggle-group/ToggleGroup.d.ts +1 -1
- package/toggle-group/ToggleGroup.js +12 -14
- package/toggle-group/ToggleGroup.stories.tsx +27 -32
- package/toggle-group/ToggleGroup.test.js +156 -0
- package/toggle-group/types.d.ts +46 -25
- 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 +111 -57
- package/wizard/{Wizard.stories.jsx → Wizard.stories.tsx} +33 -24
- package/wizard/Wizard.test.js +141 -0
- package/wizard/types.d.ts +12 -11
- 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 -7
- package/list/List.js +0 -37
- package/list/List.stories.tsx +0 -70
- 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/select/index.d.ts +0 -131
- 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/textarea/index.d.ts +0 -127
- 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/wizard/Icons.js +0 -65
package/text-input/types.d.ts
CHANGED
|
@@ -6,12 +6,12 @@ declare type Margin = {
|
|
|
6
6
|
left?: Space;
|
|
7
7
|
right?: Space;
|
|
8
8
|
};
|
|
9
|
-
declare type SVG = React.
|
|
9
|
+
declare type SVG = React.ReactNode & React.SVGProps<SVGSVGElement>;
|
|
10
10
|
declare type Action = {
|
|
11
11
|
/**
|
|
12
12
|
* This function will be called when the user clicks the action.
|
|
13
13
|
*/
|
|
14
|
-
onClick: (
|
|
14
|
+
onClick: () => void;
|
|
15
15
|
/**
|
|
16
16
|
* Icon to be shown in the action.
|
|
17
17
|
*/
|
|
@@ -30,6 +30,10 @@ declare type Props = {
|
|
|
30
30
|
* Name attribute of the input element.
|
|
31
31
|
*/
|
|
32
32
|
name?: string;
|
|
33
|
+
/**
|
|
34
|
+
* Initial value of the input, only when it is uncontrolled.
|
|
35
|
+
*/
|
|
36
|
+
defaultValue?: string;
|
|
33
37
|
/**
|
|
34
38
|
* Value of the input. If undefined, the component will be uncontrolled and the value will be managed internally by the component.
|
|
35
39
|
*/
|
|
@@ -74,26 +78,29 @@ declare type Props = {
|
|
|
74
78
|
* This function will be called when the user types within the input
|
|
75
79
|
* element of the component. An object including the current value and
|
|
76
80
|
* the error (if the value entered is not valid) will be passed to this
|
|
77
|
-
* function. If there is no error, error will be
|
|
81
|
+
* function. If there is no error, error will not be defined.
|
|
78
82
|
*/
|
|
79
83
|
onChange?: (val: {
|
|
80
84
|
value: string;
|
|
81
|
-
error
|
|
85
|
+
error?: string;
|
|
82
86
|
}) => void;
|
|
83
87
|
/**
|
|
84
88
|
* This function will be called when the input element loses the focus.
|
|
85
89
|
* An object including the input value and the error (if the value
|
|
86
90
|
* entered is not valid) will be passed to this function. If there is no error,
|
|
87
|
-
* error will be
|
|
91
|
+
* error will not be defined.
|
|
88
92
|
*/
|
|
89
93
|
onBlur?: (val: {
|
|
90
94
|
value: string;
|
|
91
|
-
error
|
|
95
|
+
error?: string;
|
|
92
96
|
}) => void;
|
|
93
97
|
/**
|
|
94
|
-
* If it is defined
|
|
95
|
-
* the error below the input component. If
|
|
96
|
-
*
|
|
98
|
+
* If it is a defined value and also a truthy string, the component will
|
|
99
|
+
* change its appearance, showing the error below the input component. If
|
|
100
|
+
* the defined value is an empty string, it will reserve a space below
|
|
101
|
+
* the component for a future error, but it would not change its look. In
|
|
102
|
+
* case of being undefined or null, both the appearance and the space for
|
|
103
|
+
* the error message would not be modified.
|
|
97
104
|
*/
|
|
98
105
|
error?: string;
|
|
99
106
|
/**
|
|
@@ -110,7 +117,7 @@ declare type Props = {
|
|
|
110
117
|
* pattern, the onBlur and onChange functions will be called with the
|
|
111
118
|
* current value and an internal error informing that this value does not
|
|
112
119
|
* match the pattern. If the pattern is met, the error parameter of both
|
|
113
|
-
* events will be
|
|
120
|
+
* events will not be defined.
|
|
114
121
|
*/
|
|
115
122
|
pattern?: string;
|
|
116
123
|
/**
|
|
@@ -120,7 +127,7 @@ declare type Props = {
|
|
|
120
127
|
* comply the minimum length, the onBlur and onChange functions will be called
|
|
121
128
|
* with the current value and an internal error informing that the value
|
|
122
129
|
* length does not comply the specified range. If a valid length is
|
|
123
|
-
* reached, the error parameter of both events will be
|
|
130
|
+
* reached, the error parameter of both events will not be defined.
|
|
124
131
|
*/
|
|
125
132
|
minLength?: number;
|
|
126
133
|
/**
|
|
@@ -130,7 +137,7 @@ declare type Props = {
|
|
|
130
137
|
* comply the maximum length, the onBlur and onChange functions will be called
|
|
131
138
|
* with the current value and an internal error informing that the value
|
|
132
139
|
* length does not comply the specified range. If a valid length is
|
|
133
|
-
* reached, the error parameter of both events will be
|
|
140
|
+
* reached, the error parameter of both events will not be defined.
|
|
134
141
|
*/
|
|
135
142
|
maxLength?: number;
|
|
136
143
|
/**
|
|
@@ -144,7 +151,7 @@ declare type Props = {
|
|
|
144
151
|
*/
|
|
145
152
|
margin?: Space | Margin;
|
|
146
153
|
/**
|
|
147
|
-
* Size of the component
|
|
154
|
+
* Size of the component.
|
|
148
155
|
*/
|
|
149
156
|
size?: "small" | "medium" | "large" | "fillParent";
|
|
150
157
|
/**
|
|
@@ -156,4 +163,16 @@ declare type Props = {
|
|
|
156
163
|
* Reference to the component.
|
|
157
164
|
*/
|
|
158
165
|
export declare type RefType = HTMLDivElement;
|
|
166
|
+
/**
|
|
167
|
+
* Single suggestion of the Autosuggest Text Input component.
|
|
168
|
+
*/
|
|
169
|
+
export declare type SuggestionProps = {
|
|
170
|
+
id: string;
|
|
171
|
+
value: string;
|
|
172
|
+
onClick: () => void;
|
|
173
|
+
suggestion: string;
|
|
174
|
+
isLast: boolean;
|
|
175
|
+
visuallyFocused: boolean;
|
|
176
|
+
highlighted: boolean;
|
|
177
|
+
};
|
|
159
178
|
export default Props;
|
package/textarea/Textarea.js
CHANGED
|
@@ -9,8 +9,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
9
9
|
});
|
|
10
10
|
exports["default"] = void 0;
|
|
11
11
|
|
|
12
|
-
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
13
|
-
|
|
14
12
|
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
15
13
|
|
|
16
14
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
@@ -25,7 +23,7 @@ var _utils = require("../common/utils.js");
|
|
|
25
23
|
|
|
26
24
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
27
25
|
|
|
28
|
-
var
|
|
26
|
+
var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
|
|
29
27
|
|
|
30
28
|
var _variables = require("../common/variables.js");
|
|
31
29
|
|
|
@@ -39,14 +37,6 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
39
37
|
|
|
40
38
|
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; }
|
|
41
39
|
|
|
42
|
-
var getNotOptionalErrorMessage = function getNotOptionalErrorMessage() {
|
|
43
|
-
return "This field is required. Please, enter a value.";
|
|
44
|
-
};
|
|
45
|
-
|
|
46
|
-
var getPatternErrorMessage = function getPatternErrorMessage() {
|
|
47
|
-
return "Please match the format requested.";
|
|
48
|
-
};
|
|
49
|
-
|
|
50
40
|
var patternMatch = function patternMatch(pattern, value) {
|
|
51
41
|
return new RegExp(pattern).test(value);
|
|
52
42
|
};
|
|
@@ -55,6 +45,8 @@ var DxcTextarea = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref)
|
|
|
55
45
|
var label = _ref.label,
|
|
56
46
|
_ref$name = _ref.name,
|
|
57
47
|
name = _ref$name === void 0 ? "" : _ref$name,
|
|
48
|
+
_ref$defaultValue = _ref.defaultValue,
|
|
49
|
+
defaultValue = _ref$defaultValue === void 0 ? "" : _ref$defaultValue,
|
|
58
50
|
value = _ref.value,
|
|
59
51
|
helperText = _ref.helperText,
|
|
60
52
|
_ref$placeholder = _ref.placeholder,
|
|
@@ -81,7 +73,7 @@ var DxcTextarea = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref)
|
|
|
81
73
|
_ref$tabIndex = _ref.tabIndex,
|
|
82
74
|
tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
|
|
83
75
|
|
|
84
|
-
var _useState = (0, _react.useState)(
|
|
76
|
+
var _useState = (0, _react.useState)(defaultValue),
|
|
85
77
|
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
86
78
|
innerValue = _useState2[0],
|
|
87
79
|
setInnerValue = _useState2[1];
|
|
@@ -92,12 +84,9 @@ var DxcTextarea = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref)
|
|
|
92
84
|
|
|
93
85
|
var colorsTheme = (0, _useTheme["default"])();
|
|
94
86
|
var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
|
|
87
|
+
var translatedLabels = (0, _useTranslatedLabels["default"])();
|
|
95
88
|
var textareaRef = (0, _react.useRef)(null);
|
|
96
|
-
var errorId = "error-
|
|
97
|
-
|
|
98
|
-
var getLengthErrorMessage = function getLengthErrorMessage() {
|
|
99
|
-
return "Min length ".concat(minLength, ", max length ").concat(maxLength, ".");
|
|
100
|
-
};
|
|
89
|
+
var errorId = "error-".concat(textareaId);
|
|
101
90
|
|
|
102
91
|
var isNotOptional = function isNotOptional(value) {
|
|
103
92
|
return value === "" && !optional;
|
|
@@ -111,32 +100,30 @@ var DxcTextarea = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref)
|
|
|
111
100
|
value !== null && value !== void 0 ? value : setInnerValue(newValue);
|
|
112
101
|
if (isNotOptional(newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
113
102
|
value: newValue,
|
|
114
|
-
error:
|
|
103
|
+
error: translatedLabels.formFields.requiredValueErrorMessage
|
|
115
104
|
});else if (isLengthIncorrect(newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
116
105
|
value: newValue,
|
|
117
|
-
error:
|
|
106
|
+
error: translatedLabels.formFields.lengthErrorMessage(minLength, maxLength)
|
|
118
107
|
});else if (newValue && pattern && !patternMatch(pattern, newValue)) onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
119
108
|
value: newValue,
|
|
120
|
-
error:
|
|
109
|
+
error: translatedLabels.formFields.formatRequestedErrorMessage
|
|
121
110
|
});else onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
122
|
-
value: newValue
|
|
123
|
-
error: null
|
|
111
|
+
value: newValue
|
|
124
112
|
});
|
|
125
113
|
};
|
|
126
114
|
|
|
127
115
|
var handleTOnBlur = function handleTOnBlur(event) {
|
|
128
116
|
if (isNotOptional(event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
129
117
|
value: event.target.value,
|
|
130
|
-
error:
|
|
118
|
+
error: translatedLabels.formFields.requiredValueErrorMessage
|
|
131
119
|
});else if (isLengthIncorrect(event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
132
120
|
value: event.target.value,
|
|
133
|
-
error:
|
|
121
|
+
error: translatedLabels.formFields.lengthErrorMessage(minLength, maxLength)
|
|
134
122
|
});else if (event.target.value && pattern && !patternMatch(pattern, event.target.value)) onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
135
123
|
value: event.target.value,
|
|
136
|
-
error:
|
|
124
|
+
error: translatedLabels.formFields.formatRequestedErrorMessage
|
|
137
125
|
});else onBlur === null || onBlur === void 0 ? void 0 : onBlur({
|
|
138
|
-
value: event.target.value
|
|
139
|
-
error: null
|
|
126
|
+
value: event.target.value
|
|
140
127
|
});
|
|
141
128
|
};
|
|
142
129
|
|
|
@@ -164,7 +151,7 @@ var DxcTextarea = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref)
|
|
|
164
151
|
disabled: disabled,
|
|
165
152
|
backgroundType: backgroundType,
|
|
166
153
|
helperText: helperText
|
|
167
|
-
}, label, " ", optional && /*#__PURE__*/_react["default"].createElement(OptionalLabel, null,
|
|
154
|
+
}, label, " ", optional && /*#__PURE__*/_react["default"].createElement(OptionalLabel, null, translatedLabels.formFields.optionalLabel)), helperText && /*#__PURE__*/_react["default"].createElement(HelperText, {
|
|
168
155
|
disabled: disabled,
|
|
169
156
|
backgroundType: backgroundType
|
|
170
157
|
}, helperText), /*#__PURE__*/_react["default"].createElement(Textarea, {
|
|
@@ -184,12 +171,14 @@ var DxcTextarea = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref)
|
|
|
184
171
|
backgroundType: backgroundType,
|
|
185
172
|
ref: textareaRef,
|
|
186
173
|
tabIndex: tabIndex,
|
|
174
|
+
"aria-disabled": disabled,
|
|
187
175
|
"aria-invalid": error ? "true" : "false",
|
|
188
|
-
"aria-
|
|
176
|
+
"aria-errormessage": error ? errorId : undefined,
|
|
189
177
|
"aria-required": optional ? "false" : "true"
|
|
190
178
|
}), !disabled && typeof error === "string" && /*#__PURE__*/_react["default"].createElement(Error, {
|
|
191
179
|
id: errorId,
|
|
192
|
-
backgroundType: backgroundType
|
|
180
|
+
backgroundType: backgroundType,
|
|
181
|
+
"aria-live": error ? "assertive" : "off"
|
|
193
182
|
}, error)));
|
|
194
183
|
});
|
|
195
184
|
|
|
@@ -284,31 +273,5 @@ var Error = _styledComponents["default"].span(_templateObject6 || (_templateObje
|
|
|
284
273
|
return props.theme.fontFamily;
|
|
285
274
|
});
|
|
286
275
|
|
|
287
|
-
DxcTextarea.propTypes = {
|
|
288
|
-
label: _propTypes["default"].string,
|
|
289
|
-
name: _propTypes["default"].string,
|
|
290
|
-
value: _propTypes["default"].string,
|
|
291
|
-
helperText: _propTypes["default"].string,
|
|
292
|
-
placeholder: _propTypes["default"].string,
|
|
293
|
-
verticalGrow: _propTypes["default"].oneOf(["auto", "none", "manual"]),
|
|
294
|
-
rows: _propTypes["default"].number,
|
|
295
|
-
minLength: _propTypes["default"].number,
|
|
296
|
-
maxLength: _propTypes["default"].number,
|
|
297
|
-
pattern: _propTypes["default"].string,
|
|
298
|
-
disabled: _propTypes["default"].bool,
|
|
299
|
-
optional: _propTypes["default"].bool,
|
|
300
|
-
onChange: _propTypes["default"].func,
|
|
301
|
-
onBlur: _propTypes["default"].func,
|
|
302
|
-
error: _propTypes["default"].string,
|
|
303
|
-
autocomplete: _propTypes["default"].string,
|
|
304
|
-
margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
|
|
305
|
-
top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
306
|
-
bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
307
|
-
left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
308
|
-
right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
|
|
309
|
-
}), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
|
|
310
|
-
size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
|
|
311
|
-
tabIndex: _propTypes["default"].number
|
|
312
|
-
};
|
|
313
276
|
var _default = DxcTextarea;
|
|
314
277
|
exports["default"] = _default;
|
|
@@ -33,7 +33,7 @@ export const Chromatic = () => (
|
|
|
33
33
|
</ExampleContainer>
|
|
34
34
|
<ExampleContainer>
|
|
35
35
|
<Title title="Disabled with value" theme="light" level={4} />
|
|
36
|
-
<DxcTextarea label="Disabled"
|
|
36
|
+
<DxcTextarea label="Disabled" defaultValue="Example text" disabled />
|
|
37
37
|
</ExampleContainer>
|
|
38
38
|
<ExampleContainer>
|
|
39
39
|
<Title title="With error" theme="light" level={4} />
|
|
@@ -41,12 +41,21 @@ export const Chromatic = () => (
|
|
|
41
41
|
label="Textarea with error"
|
|
42
42
|
helperText="Helper text"
|
|
43
43
|
placeholder="Enter your text here..."
|
|
44
|
-
error="Error message"
|
|
44
|
+
error="Error message."
|
|
45
|
+
/>
|
|
46
|
+
</ExampleContainer>
|
|
47
|
+
<ExampleContainer pseudoState="pseudo-hover">
|
|
48
|
+
<Title title="Hovered with error" theme="light" level={4} />
|
|
49
|
+
<DxcTextarea
|
|
50
|
+
label="Hovered textarea with error"
|
|
51
|
+
helperText="Helper text"
|
|
52
|
+
placeholder="Enter your text here..."
|
|
53
|
+
error="Error message."
|
|
45
54
|
/>
|
|
46
55
|
</ExampleContainer>
|
|
47
56
|
<ExampleContainer>
|
|
48
57
|
<Title title="Helper text and optional with value" theme="light" level={4} />
|
|
49
|
-
<DxcTextarea label="Helper & optional"
|
|
58
|
+
<DxcTextarea label="Helper & optional" defaultValue="Some text" helperText="Sample text" optional />
|
|
50
59
|
</ExampleContainer>
|
|
51
60
|
<ExampleContainer>
|
|
52
61
|
<Title title="Resizable" theme="light" level={4} />
|
|
@@ -57,36 +66,48 @@ export const Chromatic = () => (
|
|
|
57
66
|
<DxcTextarea
|
|
58
67
|
label="Manual vertical grow"
|
|
59
68
|
verticalGrow="manual"
|
|
60
|
-
|
|
69
|
+
defaultValue="Long textttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttt"
|
|
61
70
|
/>
|
|
62
71
|
</ExampleContainer>
|
|
63
72
|
</>
|
|
64
73
|
<BackgroundColorProvider color="#333333">
|
|
65
74
|
<DarkContainer>
|
|
66
|
-
|
|
75
|
+
<ExampleContainer>
|
|
67
76
|
<Title title="Helper text and optional with value" theme="dark" level={4} />
|
|
68
|
-
<DxcTextarea label="Helper & optional"
|
|
69
|
-
|
|
77
|
+
<DxcTextarea label="Helper & optional" defaultValue="Some text" helperText="Sample text" optional />
|
|
78
|
+
</ExampleContainer>
|
|
79
|
+
<ExampleContainer>
|
|
70
80
|
<Title title="Disabled" theme="dark" level={4} />
|
|
71
81
|
<DxcTextarea
|
|
72
82
|
label="Disabled"
|
|
73
|
-
margin="medium"
|
|
74
83
|
optional
|
|
75
84
|
helperText="Sample text"
|
|
76
85
|
placeholder="Enter your text here..."
|
|
77
86
|
disabled
|
|
78
87
|
/>
|
|
88
|
+
</ExampleContainer>
|
|
89
|
+
<ExampleContainer>
|
|
79
90
|
<Title title="Disabled with value" theme="dark" level={4} />
|
|
80
|
-
<DxcTextarea label="Disabled"
|
|
91
|
+
<DxcTextarea label="Disabled" defaultValue="Example text" disabled />
|
|
92
|
+
</ExampleContainer>
|
|
93
|
+
<ExampleContainer>
|
|
81
94
|
<Title title="With error" theme="dark" level={4} />
|
|
82
95
|
<DxcTextarea
|
|
83
96
|
label="Textarea with error"
|
|
84
|
-
margin="medium"
|
|
85
97
|
helperText="Helper text"
|
|
86
98
|
placeholder="Enter your text here..."
|
|
87
|
-
error="Error message"
|
|
99
|
+
error="Error message."
|
|
100
|
+
/>
|
|
101
|
+
</ExampleContainer>
|
|
102
|
+
<ExampleContainer pseudoState="pseudo-hover">
|
|
103
|
+
<Title title="Hovered with error" theme="dark" level={4} />
|
|
104
|
+
<DxcTextarea
|
|
105
|
+
label="Hovered textarea with error"
|
|
106
|
+
helperText="Helper text"
|
|
107
|
+
placeholder="Enter your text here..."
|
|
108
|
+
error="Error message."
|
|
88
109
|
/>
|
|
89
|
-
|
|
110
|
+
</ExampleContainer>
|
|
90
111
|
</DarkContainer>
|
|
91
112
|
</BackgroundColorProvider>
|
|
92
113
|
<Title title="Sizes" theme="light" level={2} />
|
|
@@ -105,15 +126,15 @@ export const Chromatic = () => (
|
|
|
105
126
|
<Title title="Margins" theme="light" level={2} />
|
|
106
127
|
<ExampleContainer>
|
|
107
128
|
<Title title="Xxsmall margin" theme="light" level={4} />
|
|
108
|
-
<DxcTextarea label="
|
|
129
|
+
<DxcTextarea label="Xxsmall" margin="xxsmall" />
|
|
109
130
|
</ExampleContainer>
|
|
110
131
|
<ExampleContainer>
|
|
111
132
|
<Title title="Xsmall margin" theme="light" level={4} />
|
|
112
|
-
<DxcTextarea label="
|
|
133
|
+
<DxcTextarea label="xsmall" margin="xsmall" />
|
|
113
134
|
</ExampleContainer>
|
|
114
135
|
<ExampleContainer>
|
|
115
136
|
<Title title="Small margin" theme="light" level={4} />
|
|
116
|
-
<DxcTextarea label="
|
|
137
|
+
<DxcTextarea label="small" margin="small" />
|
|
117
138
|
</ExampleContainer>
|
|
118
139
|
<ExampleContainer>
|
|
119
140
|
<Title title="Medium margin" theme="light" level={4} />
|
|
@@ -130,6 +151,7 @@ export const Chromatic = () => (
|
|
|
130
151
|
<ExampleContainer>
|
|
131
152
|
<Title title="Xxlarge margin" theme="light" level={4} />
|
|
132
153
|
<DxcTextarea label="Xxlarge" margin="xxlarge" />
|
|
154
|
+
<hr />
|
|
133
155
|
</ExampleContainer>
|
|
134
156
|
</>
|
|
135
157
|
);
|