@dxc-technology/halstack-react 0.0.0-e1a279c → 0.0.0-e201636
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/BackgroundColorContext.d.ts +10 -0
- package/BackgroundColorContext.js +1 -4
- package/HalstackContext.d.ts +12 -0
- package/HalstackContext.js +295 -0
- package/accordion/Accordion.d.ts +1 -1
- package/accordion/Accordion.js +15 -47
- package/accordion/Accordion.stories.tsx +307 -0
- package/accordion/Accordion.test.js +72 -0
- package/accordion/types.d.ts +8 -8
- package/accordion-group/AccordionGroup.d.ts +1 -1
- package/accordion-group/AccordionGroup.js +15 -17
- package/accordion-group/AccordionGroup.stories.tsx +225 -0
- package/accordion-group/AccordionGroup.test.js +151 -0
- package/accordion-group/types.d.ts +8 -8
- package/alert/Alert.js +6 -3
- package/alert/Alert.test.js +92 -0
- package/alert/types.d.ts +1 -1
- package/badge/Badge.d.ts +4 -0
- package/badge/Badge.js +6 -4
- package/badge/types.d.ts +5 -0
- package/{radio → badge}/types.js +0 -0
- package/bleed/Bleed.d.ts +3 -0
- package/bleed/Bleed.js +84 -0
- package/bleed/Bleed.stories.tsx +342 -0
- package/bleed/types.d.ts +37 -0
- package/bleed/types.js +5 -0
- package/box/Box.d.ts +1 -1
- package/box/Box.js +26 -39
- package/box/Box.test.js +18 -0
- package/box/types.d.ts +0 -4
- package/button/Button.d.ts +1 -1
- package/button/Button.js +24 -27
- package/button/Button.stories.tsx +6 -8
- package/button/Button.test.js +35 -0
- package/button/types.d.ts +5 -9
- package/card/Card.js +32 -34
- package/card/Card.stories.tsx +201 -0
- package/card/Card.test.js +50 -0
- package/card/ice-cream.jpg +0 -0
- package/card/types.d.ts +4 -6
- package/checkbox/Checkbox.d.ts +1 -1
- package/checkbox/Checkbox.js +45 -41
- package/checkbox/Checkbox.stories.tsx +124 -128
- package/checkbox/Checkbox.test.js +78 -0
- package/checkbox/types.d.ts +9 -5
- package/chip/Chip.d.ts +4 -0
- package/chip/Chip.js +16 -76
- package/chip/Chip.stories.tsx +6 -8
- package/chip/Chip.test.js +56 -0
- package/chip/types.d.ts +45 -0
- package/chip/types.js +5 -0
- package/common/variables.js +234 -341
- package/date-input/DateInput.js +63 -52
- 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 +8 -35
- package/dialog/Dialog.test.js +40 -0
- package/dropdown/Dropdown.d.ts +1 -1
- package/dropdown/Dropdown.js +22 -48
- package/dropdown/Dropdown.stories.tsx +249 -0
- package/dropdown/Dropdown.test.js +189 -0
- package/dropdown/types.d.ts +6 -15
- package/file-input/FileInput.d.ts +4 -0
- package/file-input/FileInput.js +172 -111
- package/file-input/FileInput.stories.tsx +507 -0
- package/file-input/FileInput.test.js +457 -0
- package/file-input/FileItem.d.ts +14 -0
- package/file-input/FileItem.js +16 -23
- package/file-input/types.d.ts +112 -0
- package/file-input/types.js +5 -0
- package/footer/Footer.d.ts +1 -1
- package/footer/Footer.js +32 -113
- package/footer/{Footer.stories.jsx → Footer.stories.tsx} +1 -22
- package/footer/Footer.test.js +109 -0
- package/footer/Icons.d.ts +2 -0
- package/footer/Icons.js +3 -3
- package/footer/types.d.ts +22 -18
- package/header/Header.js +29 -50
- package/header/Header.stories.tsx +172 -0
- package/header/Header.test.js +79 -0
- package/header/Icons.d.ts +2 -0
- package/header/types.d.ts +4 -2
- package/heading/Heading.d.ts +4 -0
- package/heading/Heading.js +7 -24
- package/heading/Heading.stories.tsx +54 -0
- package/heading/Heading.test.js +186 -0
- package/heading/types.d.ts +33 -0
- package/heading/types.js +5 -0
- package/inset/Inset.d.ts +3 -0
- package/inset/Inset.js +84 -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 +11 -0
- package/layout/ApplicationLayout.js +84 -120
- package/layout/ApplicationLayout.stories.tsx +126 -0
- package/layout/Icons.d.ts +5 -0
- package/layout/Icons.js +13 -2
- package/layout/SidenavContext.d.ts +5 -0
- package/layout/SidenavContext.js +19 -0
- package/layout/types.d.ts +52 -0
- package/layout/types.js +5 -0
- package/link/Link.d.ts +3 -2
- package/link/Link.js +61 -86
- package/link/Link.stories.tsx +131 -15
- package/link/Link.test.js +83 -0
- package/link/types.d.ts +9 -29
- package/list/List.d.ts +4 -0
- package/list/List.js +47 -0
- package/list/List.stories.tsx +95 -0
- package/list/types.d.ts +7 -0
- package/list/types.js +5 -0
- package/main.d.ts +12 -9
- package/main.js +72 -42
- package/number-input/NumberInput.js +14 -24
- package/number-input/NumberInput.stories.tsx +5 -5
- package/number-input/NumberInput.test.js +506 -0
- package/number-input/NumberInputContext.d.ts +4 -0
- package/number-input/NumberInputContext.js +5 -2
- package/number-input/numberInputContextTypes.d.ts +19 -0
- package/number-input/numberInputContextTypes.js +5 -0
- package/number-input/types.d.ts +17 -10
- package/package.json +9 -6
- package/paginator/Paginator.js +19 -46
- package/paginator/Paginator.test.js +266 -0
- package/password-input/PasswordInput.js +23 -19
- package/password-input/PasswordInput.stories.tsx +3 -3
- package/password-input/PasswordInput.test.js +180 -0
- package/password-input/types.d.ts +29 -19
- package/progress-bar/ProgressBar.js +5 -5
- package/progress-bar/ProgressBar.stories.jsx +11 -11
- package/progress-bar/ProgressBar.test.js +65 -0
- package/quick-nav/QuickNav.d.ts +4 -0
- package/quick-nav/QuickNav.js +112 -0
- package/quick-nav/QuickNav.stories.tsx +237 -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 +282 -0
- package/radio-group/RadioGroup.stories.tsx +100 -0
- package/radio-group/RadioGroup.test.js +695 -0
- package/radio-group/types.d.ts +114 -0
- package/radio-group/types.js +5 -0
- package/resultsetTable/ResultsetTable.d.ts +4 -0
- package/resultsetTable/ResultsetTable.js +9 -29
- package/resultsetTable/ResultsetTable.stories.tsx +275 -0
- package/resultsetTable/ResultsetTable.test.js +306 -0
- package/resultsetTable/types.d.ts +67 -0
- package/resultsetTable/types.js +5 -0
- package/row/Row.d.ts +3 -0
- package/row/Row.js +127 -0
- package/row/Row.stories.tsx +237 -0
- package/row/types.d.ts +28 -0
- package/row/types.js +5 -0
- package/select/Icons.d.ts +10 -0
- package/select/Icons.js +93 -0
- package/select/Listbox.d.ts +4 -0
- package/select/Listbox.js +152 -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 +122 -342
- package/select/Select.stories.tsx +103 -81
- package/select/Select.test.js +2120 -0
- package/select/types.d.ts +213 -0
- package/select/types.js +5 -0
- package/sidenav/Sidenav.d.ts +1 -1
- package/sidenav/Sidenav.js +22 -11
- package/sidenav/Sidenav.stories.tsx +182 -0
- package/sidenav/Sidenav.test.js +56 -0
- package/slider/Slider.d.ts +1 -1
- package/slider/Slider.js +6 -5
- package/slider/Slider.stories.tsx +8 -8
- package/slider/Slider.test.js +150 -0
- package/slider/types.d.ts +4 -0
- package/spinner/Spinner.js +3 -3
- package/spinner/Spinner.stories.jsx +1 -0
- package/spinner/Spinner.test.js +64 -0
- package/stack/Stack.d.ts +3 -0
- package/stack/Stack.js +97 -0
- package/stack/Stack.stories.tsx +164 -0
- package/stack/types.d.ts +24 -0
- package/stack/types.js +5 -0
- package/switch/Switch.d.ts +1 -1
- package/switch/Switch.js +37 -21
- package/switch/Switch.stories.tsx +15 -15
- package/switch/Switch.test.js +98 -0
- package/switch/types.d.ts +6 -2
- package/table/Table.js +3 -3
- 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 +20 -20
- package/tabs/Tabs.stories.tsx +112 -0
- package/tabs/Tabs.test.js +140 -0
- package/tabs/types.d.ts +29 -18
- 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 +132 -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/Text.d.ts +7 -0
- package/text/Text.js +30 -0
- package/text/Text.stories.tsx +19 -0
- package/text-input/Suggestion.d.ts +4 -0
- package/text-input/Suggestion.js +55 -0
- package/text-input/TextInput.d.ts +4 -0
- package/text-input/TextInput.js +91 -146
- package/text-input/TextInput.stories.tsx +474 -0
- package/text-input/TextInput.test.js +1712 -0
- package/text-input/types.d.ts +178 -0
- package/text-input/types.js +5 -0
- package/textarea/Textarea.d.ts +4 -0
- package/textarea/Textarea.js +39 -79
- package/textarea/Textarea.stories.jsx +37 -15
- package/textarea/Textarea.test.js +437 -0
- package/textarea/types.d.ts +137 -0
- package/textarea/types.js +5 -0
- package/toggle-group/ToggleGroup.d.ts +4 -0
- package/toggle-group/ToggleGroup.js +18 -46
- package/toggle-group/ToggleGroup.stories.tsx +27 -32
- package/toggle-group/ToggleGroup.test.js +156 -0
- package/toggle-group/types.d.ts +105 -0
- package/toggle-group/types.js +5 -0
- package/useTheme.d.ts +2 -0
- package/useTheme.js +2 -2
- package/useTranslatedLabels.d.ts +2 -0
- package/useTranslatedLabels.js +20 -0
- package/wizard/Wizard.d.ts +1 -1
- package/wizard/Wizard.js +107 -46
- package/wizard/{Wizard.stories.jsx → Wizard.stories.tsx} +13 -23
- package/wizard/Wizard.test.js +141 -0
- package/wizard/types.d.ts +9 -9
- package/ThemeContext.js +0 -246
- package/V3Select/V3Select.js +0 -455
- package/V3Select/index.d.ts +0 -27
- package/V3Textarea/V3Textarea.js +0 -260
- package/V3Textarea/index.d.ts +0 -27
- package/chip/index.d.ts +0 -22
- package/date/Date.js +0 -373
- package/date/index.d.ts +0 -27
- package/file-input/index.d.ts +0 -81
- package/heading/index.d.ts +0 -17
- package/input-text/Icons.js +0 -22
- package/input-text/InputText.js +0 -611
- package/input-text/index.d.ts +0 -36
- package/radio/Radio.d.ts +0 -4
- package/radio/Radio.js +0 -174
- package/radio/Radio.stories.tsx +0 -192
- package/radio/types.d.ts +0 -54
- package/resultsetTable/index.d.ts +0 -19
- package/select/index.d.ts +0 -131
- package/text-input/index.d.ts +0 -135
- package/textarea/index.d.ts +0 -117
- package/toggle/Toggle.js +0 -186
- package/toggle/index.d.ts +0 -21
- package/toggle-group/index.d.ts +0 -21
- package/upload/Upload.js +0 -201
- package/upload/buttons-upload/ButtonsUpload.js +0 -111
- package/upload/buttons-upload/Icons.js +0 -40
- package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
- package/upload/dragAndDropArea/Icons.js +0 -39
- package/upload/file-upload/FileToUpload.js +0 -115
- package/upload/file-upload/Icons.js +0 -66
- package/upload/files-upload/FilesToUpload.js +0 -109
- package/upload/index.d.ts +0 -15
- package/upload/transaction/Icons.js +0 -160
- package/upload/transaction/Transaction.js +0 -104
- package/upload/transactions/Transactions.js +0 -94
- package/wizard/Icons.js +0 -65
package/file-input/FileInput.js
CHANGED
|
@@ -17,32 +17,38 @@ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"))
|
|
|
17
17
|
|
|
18
18
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
19
19
|
|
|
20
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
21
|
+
|
|
20
22
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
21
23
|
|
|
22
24
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
23
25
|
|
|
24
26
|
var _react = _interopRequireWildcard(require("react"));
|
|
25
27
|
|
|
26
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
27
|
-
|
|
28
28
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
29
29
|
|
|
30
30
|
var _uuid = require("uuid");
|
|
31
31
|
|
|
32
32
|
var _variables = require("../common/variables.js");
|
|
33
33
|
|
|
34
|
-
var _useTheme = _interopRequireDefault(require("../useTheme
|
|
34
|
+
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
35
|
+
|
|
36
|
+
var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
|
|
35
37
|
|
|
36
38
|
var _Button = _interopRequireDefault(require("../button/Button"));
|
|
37
39
|
|
|
38
40
|
var _FileItem = _interopRequireDefault(require("./FileItem"));
|
|
39
41
|
|
|
40
|
-
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;
|
|
42
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12;
|
|
41
43
|
|
|
42
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); }
|
|
43
45
|
|
|
44
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; }
|
|
45
47
|
|
|
48
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
49
|
+
|
|
50
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
51
|
+
|
|
46
52
|
var audioIcon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
47
53
|
xmlns: "http://www.w3.org/2000/svg",
|
|
48
54
|
width: "24",
|
|
@@ -89,6 +95,8 @@ var DxcFileInput = function DxcFileInput(_ref) {
|
|
|
89
95
|
mode = _ref$mode === void 0 ? "file" : _ref$mode,
|
|
90
96
|
_ref$label = _ref.label,
|
|
91
97
|
label = _ref$label === void 0 ? "" : _ref$label,
|
|
98
|
+
buttonLabel = _ref.buttonLabel,
|
|
99
|
+
dropAreaLabel = _ref.dropAreaLabel,
|
|
92
100
|
_ref$helperText = _ref.helperText,
|
|
93
101
|
helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
|
|
94
102
|
accept = _ref.accept,
|
|
@@ -103,7 +111,8 @@ var DxcFileInput = function DxcFileInput(_ref) {
|
|
|
103
111
|
callbackFile = _ref.callbackFile,
|
|
104
112
|
value = _ref.value,
|
|
105
113
|
margin = _ref.margin,
|
|
106
|
-
tabIndex = _ref.tabIndex
|
|
114
|
+
_ref$tabIndex = _ref.tabIndex,
|
|
115
|
+
tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
|
|
107
116
|
|
|
108
117
|
var _useState = (0, _react.useState)(false),
|
|
109
118
|
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
@@ -120,12 +129,76 @@ var DxcFileInput = function DxcFileInput(_ref) {
|
|
|
120
129
|
fileInputId = _useState6[0];
|
|
121
130
|
|
|
122
131
|
var colorsTheme = (0, _useTheme["default"])();
|
|
132
|
+
var translatedLabels = (0, _useTranslatedLabels["default"])();
|
|
123
133
|
(0, _react.useEffect)(function () {
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
134
|
+
var getFiles = /*#__PURE__*/function () {
|
|
135
|
+
var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
|
|
136
|
+
var valueFiles;
|
|
137
|
+
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
|
138
|
+
while (1) {
|
|
139
|
+
switch (_context2.prev = _context2.next) {
|
|
140
|
+
case 0:
|
|
141
|
+
if (!value) {
|
|
142
|
+
_context2.next = 5;
|
|
143
|
+
break;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
_context2.next = 3;
|
|
147
|
+
return Promise.all(value.map( /*#__PURE__*/function () {
|
|
148
|
+
var _ref3 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(file) {
|
|
149
|
+
var preview;
|
|
150
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
151
|
+
while (1) {
|
|
152
|
+
switch (_context.prev = _context.next) {
|
|
153
|
+
case 0:
|
|
154
|
+
if (!file.preview) {
|
|
155
|
+
_context.next = 4;
|
|
156
|
+
break;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
return _context.abrupt("return", file);
|
|
160
|
+
|
|
161
|
+
case 4:
|
|
162
|
+
_context.next = 6;
|
|
163
|
+
return getFilePreview(file.file);
|
|
164
|
+
|
|
165
|
+
case 6:
|
|
166
|
+
preview = _context.sent;
|
|
167
|
+
return _context.abrupt("return", _objectSpread(_objectSpread({}, file), {}, {
|
|
168
|
+
preview: preview
|
|
169
|
+
}));
|
|
170
|
+
|
|
171
|
+
case 8:
|
|
172
|
+
case "end":
|
|
173
|
+
return _context.stop();
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
}, _callee);
|
|
177
|
+
}));
|
|
178
|
+
|
|
179
|
+
return function (_x) {
|
|
180
|
+
return _ref3.apply(this, arguments);
|
|
181
|
+
};
|
|
182
|
+
}()));
|
|
183
|
+
|
|
184
|
+
case 3:
|
|
185
|
+
valueFiles = _context2.sent;
|
|
186
|
+
setFiles(valueFiles);
|
|
187
|
+
|
|
188
|
+
case 5:
|
|
189
|
+
case "end":
|
|
190
|
+
return _context2.stop();
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
}, _callee2);
|
|
194
|
+
}));
|
|
195
|
+
|
|
196
|
+
return function getFiles() {
|
|
197
|
+
return _ref2.apply(this, arguments);
|
|
198
|
+
};
|
|
199
|
+
}();
|
|
200
|
+
|
|
201
|
+
getFiles();
|
|
129
202
|
}, [value]);
|
|
130
203
|
|
|
131
204
|
var handleClick = function handleClick() {
|
|
@@ -134,11 +207,11 @@ var DxcFileInput = function DxcFileInput(_ref) {
|
|
|
134
207
|
|
|
135
208
|
var checkFileSize = function checkFileSize(file) {
|
|
136
209
|
if (file.size < minSize) {
|
|
137
|
-
return
|
|
210
|
+
return translatedLabels.fileInput.fileSizeGreaterThanErrorMessage;
|
|
138
211
|
}
|
|
139
212
|
|
|
140
213
|
if (file.size > maxSize) {
|
|
141
|
-
return
|
|
214
|
+
return translatedLabels.fileInput.fileSizeLessThanErrorMessage;
|
|
142
215
|
}
|
|
143
216
|
};
|
|
144
217
|
|
|
@@ -166,13 +239,13 @@ var DxcFileInput = function DxcFileInput(_ref) {
|
|
|
166
239
|
};
|
|
167
240
|
|
|
168
241
|
var getFilesToAdd = /*#__PURE__*/function () {
|
|
169
|
-
var
|
|
242
|
+
var _ref4 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(selectedFiles) {
|
|
170
243
|
var filesToAdd;
|
|
171
|
-
return _regenerator["default"].wrap(function
|
|
244
|
+
return _regenerator["default"].wrap(function _callee3$(_context3) {
|
|
172
245
|
while (1) {
|
|
173
|
-
switch (
|
|
246
|
+
switch (_context3.prev = _context3.next) {
|
|
174
247
|
case 0:
|
|
175
|
-
|
|
248
|
+
_context3.next = 2;
|
|
176
249
|
return Promise.all(selectedFiles.map(function (selectedFile) {
|
|
177
250
|
return getFilePreview(selectedFile);
|
|
178
251
|
})).then(function (previews) {
|
|
@@ -187,71 +260,71 @@ var DxcFileInput = function DxcFileInput(_ref) {
|
|
|
187
260
|
});
|
|
188
261
|
|
|
189
262
|
case 2:
|
|
190
|
-
filesToAdd =
|
|
191
|
-
return
|
|
263
|
+
filesToAdd = _context3.sent;
|
|
264
|
+
return _context3.abrupt("return", filesToAdd);
|
|
192
265
|
|
|
193
266
|
case 4:
|
|
194
267
|
case "end":
|
|
195
|
-
return
|
|
268
|
+
return _context3.stop();
|
|
196
269
|
}
|
|
197
270
|
}
|
|
198
|
-
},
|
|
271
|
+
}, _callee3);
|
|
199
272
|
}));
|
|
200
273
|
|
|
201
|
-
return function getFilesToAdd(
|
|
202
|
-
return
|
|
274
|
+
return function getFilesToAdd(_x2) {
|
|
275
|
+
return _ref4.apply(this, arguments);
|
|
203
276
|
};
|
|
204
277
|
}();
|
|
205
278
|
|
|
206
279
|
var addFile = /*#__PURE__*/function () {
|
|
207
|
-
var
|
|
280
|
+
var _ref5 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4(selectedFiles) {
|
|
208
281
|
var filesToAdd, finalFiles, fileToAdd;
|
|
209
|
-
return _regenerator["default"].wrap(function
|
|
282
|
+
return _regenerator["default"].wrap(function _callee4$(_context4) {
|
|
210
283
|
while (1) {
|
|
211
|
-
switch (
|
|
284
|
+
switch (_context4.prev = _context4.next) {
|
|
212
285
|
case 0:
|
|
213
286
|
if (!multiple) {
|
|
214
|
-
|
|
287
|
+
_context4.next = 8;
|
|
215
288
|
break;
|
|
216
289
|
}
|
|
217
290
|
|
|
218
|
-
|
|
291
|
+
_context4.next = 3;
|
|
219
292
|
return getFilesToAdd(selectedFiles);
|
|
220
293
|
|
|
221
294
|
case 3:
|
|
222
|
-
filesToAdd =
|
|
295
|
+
filesToAdd = _context4.sent;
|
|
223
296
|
finalFiles = [].concat((0, _toConsumableArray2["default"])(files), (0, _toConsumableArray2["default"])(filesToAdd));
|
|
224
297
|
|
|
225
298
|
if (typeof callbackFile === "function") {
|
|
226
299
|
callbackFile(finalFiles);
|
|
227
300
|
}
|
|
228
301
|
|
|
229
|
-
|
|
302
|
+
_context4.next = 19;
|
|
230
303
|
break;
|
|
231
304
|
|
|
232
305
|
case 8:
|
|
233
306
|
if (!(selectedFiles.length === 1)) {
|
|
234
|
-
|
|
307
|
+
_context4.next = 14;
|
|
235
308
|
break;
|
|
236
309
|
}
|
|
237
310
|
|
|
238
|
-
|
|
311
|
+
_context4.next = 11;
|
|
239
312
|
return getFilesToAdd(selectedFiles);
|
|
240
313
|
|
|
241
314
|
case 11:
|
|
242
|
-
|
|
243
|
-
|
|
315
|
+
_context4.t0 = _context4.sent;
|
|
316
|
+
_context4.next = 17;
|
|
244
317
|
break;
|
|
245
318
|
|
|
246
319
|
case 14:
|
|
247
|
-
|
|
320
|
+
_context4.next = 16;
|
|
248
321
|
return getFilesToAdd([selectedFiles[0]]);
|
|
249
322
|
|
|
250
323
|
case 16:
|
|
251
|
-
|
|
324
|
+
_context4.t0 = _context4.sent;
|
|
252
325
|
|
|
253
326
|
case 17:
|
|
254
|
-
fileToAdd =
|
|
327
|
+
fileToAdd = _context4.t0;
|
|
255
328
|
|
|
256
329
|
if (typeof callbackFile === "function") {
|
|
257
330
|
callbackFile(fileToAdd);
|
|
@@ -259,14 +332,14 @@ var DxcFileInput = function DxcFileInput(_ref) {
|
|
|
259
332
|
|
|
260
333
|
case 19:
|
|
261
334
|
case "end":
|
|
262
|
-
return
|
|
335
|
+
return _context4.stop();
|
|
263
336
|
}
|
|
264
337
|
}
|
|
265
|
-
},
|
|
338
|
+
}, _callee4);
|
|
266
339
|
}));
|
|
267
340
|
|
|
268
|
-
return function addFile(
|
|
269
|
-
return
|
|
341
|
+
return function addFile(_x3) {
|
|
342
|
+
return _ref5.apply(this, arguments);
|
|
270
343
|
};
|
|
271
344
|
}();
|
|
272
345
|
|
|
@@ -297,18 +370,12 @@ var DxcFileInput = function DxcFileInput(_ref) {
|
|
|
297
370
|
};
|
|
298
371
|
|
|
299
372
|
var handleDragIn = function handleDragIn(e) {
|
|
300
|
-
e.
|
|
301
|
-
e.stopPropagation();
|
|
302
|
-
|
|
303
|
-
if (e.dataTransfer.items && e.dataTransfer.items.length > 0) {
|
|
304
|
-
setIsDragging(true);
|
|
305
|
-
}
|
|
373
|
+
if (e.dataTransfer.items && e.dataTransfer.items.length > 0) setIsDragging(true);
|
|
306
374
|
};
|
|
307
375
|
|
|
308
376
|
var handleDragOut = function handleDragOut(e) {
|
|
309
|
-
|
|
310
|
-
e.
|
|
311
|
-
setIsDragging(false);
|
|
377
|
+
// only if dragged items leave container (outside, not to childs)
|
|
378
|
+
if (!e.currentTarget.contains(e.relatedTarget)) setIsDragging(false);
|
|
312
379
|
};
|
|
313
380
|
|
|
314
381
|
var handleDrop = function handleDrop(e) {
|
|
@@ -329,8 +396,7 @@ var DxcFileInput = function DxcFileInput(_ref) {
|
|
|
329
396
|
theme: colorsTheme.fileInput
|
|
330
397
|
}, /*#__PURE__*/_react["default"].createElement(FileInputContainer, {
|
|
331
398
|
margin: margin,
|
|
332
|
-
name: name
|
|
333
|
-
tabIndex: tabIndex
|
|
399
|
+
name: name
|
|
334
400
|
}, /*#__PURE__*/_react["default"].createElement(Label, {
|
|
335
401
|
htmlFor: fileInputId,
|
|
336
402
|
disabled: disabled
|
|
@@ -339,22 +405,20 @@ var DxcFileInput = function DxcFileInput(_ref) {
|
|
|
339
405
|
}, helperText), mode === "file" ? /*#__PURE__*/_react["default"].createElement(FileContainer, {
|
|
340
406
|
multiple: multiple,
|
|
341
407
|
files: files
|
|
342
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
|
343
|
-
mode: "secondary",
|
|
344
|
-
label: "Select files",
|
|
345
|
-
onClick: handleClick,
|
|
346
|
-
disabled: disabled,
|
|
347
|
-
size: "medium",
|
|
348
|
-
tabIndex: tabIndex
|
|
349
|
-
}), /*#__PURE__*/_react["default"].createElement("input", {
|
|
408
|
+
}, /*#__PURE__*/_react["default"].createElement(HiddenInputFile, {
|
|
350
409
|
id: fileInputId,
|
|
351
410
|
type: "file",
|
|
352
411
|
accept: accept,
|
|
353
412
|
multiple: multiple,
|
|
354
413
|
onChange: selectFiles
|
|
355
|
-
}),
|
|
356
|
-
|
|
357
|
-
|
|
414
|
+
}), /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
415
|
+
mode: "secondary",
|
|
416
|
+
label: buttonLabel !== null && buttonLabel !== void 0 ? buttonLabel : multiple ? translatedLabels.fileInput.multipleButtonLabelDefault : translatedLabels.fileInput.singleButtonLabelDefault,
|
|
417
|
+
onClick: handleClick,
|
|
418
|
+
disabled: disabled,
|
|
419
|
+
size: "medium",
|
|
420
|
+
tabIndex: tabIndex
|
|
421
|
+
}), files.map(function (file) {
|
|
358
422
|
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(FileItemContainer, {
|
|
359
423
|
mode: mode,
|
|
360
424
|
multiple: multiple,
|
|
@@ -368,9 +432,16 @@ var DxcFileInput = function DxcFileInput(_ref) {
|
|
|
368
432
|
numFiles: files.length,
|
|
369
433
|
preview: file.preview,
|
|
370
434
|
type: file.file.type,
|
|
371
|
-
onDelete: onDelete
|
|
435
|
+
onDelete: onDelete,
|
|
436
|
+
tabIndex: tabIndex
|
|
372
437
|
})));
|
|
373
|
-
})) : /*#__PURE__*/_react["default"].createElement(Container, null, /*#__PURE__*/_react["default"].createElement(
|
|
438
|
+
})) : /*#__PURE__*/_react["default"].createElement(Container, null, /*#__PURE__*/_react["default"].createElement(HiddenInputFile, {
|
|
439
|
+
id: fileInputId,
|
|
440
|
+
type: "file",
|
|
441
|
+
accept: accept,
|
|
442
|
+
multiple: multiple,
|
|
443
|
+
onChange: selectFiles
|
|
444
|
+
}), /*#__PURE__*/_react["default"].createElement(DragDropArea, {
|
|
374
445
|
isDragging: isDragging,
|
|
375
446
|
disabled: disabled,
|
|
376
447
|
mode: mode,
|
|
@@ -382,19 +453,15 @@ var DxcFileInput = function DxcFileInput(_ref) {
|
|
|
382
453
|
mode: mode
|
|
383
454
|
}, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
384
455
|
mode: "secondary",
|
|
385
|
-
label:
|
|
456
|
+
label: buttonLabel !== null && buttonLabel !== void 0 ? buttonLabel : translatedLabels.fileInput.dropAreaButtonLabelDefault,
|
|
386
457
|
onClick: handleClick,
|
|
387
458
|
disabled: disabled,
|
|
388
459
|
size: "fitContent"
|
|
389
|
-
}), /*#__PURE__*/_react["default"].createElement(
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
accept: accept,
|
|
393
|
-
multiple: multiple,
|
|
394
|
-
onChange: selectFiles
|
|
395
|
-
})), /*#__PURE__*/_react["default"].createElement(DropLabel, {
|
|
460
|
+
})), mode === "dropzone" ? /*#__PURE__*/_react["default"].createElement(DropzoneLabel, {
|
|
461
|
+
disabled: disabled
|
|
462
|
+
}, dropAreaLabel !== null && dropAreaLabel !== void 0 ? dropAreaLabel : multiple ? translatedLabels.fileInput.multipleDropAreaLabelDefault : translatedLabels.fileInput.singleDropAreaLabelDefault) : /*#__PURE__*/_react["default"].createElement(FiledropLabel, {
|
|
396
463
|
disabled: disabled
|
|
397
|
-
},
|
|
464
|
+
}, dropAreaLabel !== null && dropAreaLabel !== void 0 ? dropAreaLabel : multiple ? translatedLabels.fileInput.multipleDropAreaLabelDefault : translatedLabels.fileInput.singleDropAreaLabelDefault)), files.map(function (file) {
|
|
398
465
|
return /*#__PURE__*/_react["default"].createElement(FileItemContainer, {
|
|
399
466
|
mode: mode,
|
|
400
467
|
multiple: multiple,
|
|
@@ -408,9 +475,12 @@ var DxcFileInput = function DxcFileInput(_ref) {
|
|
|
408
475
|
numFiles: files.length,
|
|
409
476
|
preview: file.preview,
|
|
410
477
|
type: file.file.type,
|
|
411
|
-
onDelete: onDelete
|
|
478
|
+
onDelete: onDelete,
|
|
479
|
+
tabIndex: tabIndex
|
|
412
480
|
}));
|
|
413
|
-
})))
|
|
481
|
+
})), files.length === 1 && files.map(function (file) {
|
|
482
|
+
return file.error && mode === "file" && !multiple && /*#__PURE__*/_react["default"].createElement(ErrorMessage, null, file.error);
|
|
483
|
+
})));
|
|
414
484
|
};
|
|
415
485
|
|
|
416
486
|
var FileInputContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n width: fit-content;\n"])), function (props) {
|
|
@@ -449,35 +519,47 @@ var HelperText = _styledComponents["default"].span(_templateObject3 || (_templat
|
|
|
449
519
|
return props.theme.helperTextLineHeight;
|
|
450
520
|
});
|
|
451
521
|
|
|
452
|
-
var DragDropArea = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n
|
|
453
|
-
return props.mode === "filedrop" ? "calc(48px - 2px)" : "calc(160px - 2px)";
|
|
454
|
-
}, function (props) {
|
|
522
|
+
var DragDropArea = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n overflow: hidden;\n box-sizing: border-box;\n flex-direction: ", ";\n ", ";\n align-items: center;\n height: ", ";\n width: 320px;\n\n box-shadow: 0 0 0 2px transparent;\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n\n ", "\n\n cursor: ", ";\n"])), function (props) {
|
|
455
523
|
return props.mode === "filedrop" ? "row" : "column";
|
|
524
|
+
}, function (props) {
|
|
525
|
+
return props.mode === "dropzone" && "justify-content: center; padding: 1rem;";
|
|
526
|
+
}, function (props) {
|
|
527
|
+
return props.mode === "filedrop" ? "48px" : "160px";
|
|
456
528
|
}, function (props) {
|
|
457
529
|
return props.theme.dropBorderRadius;
|
|
458
530
|
}, function (props) {
|
|
459
|
-
return
|
|
531
|
+
return props.theme.dropBorderThickness;
|
|
460
532
|
}, function (props) {
|
|
461
|
-
return
|
|
533
|
+
return props.theme.dropBorderStyle;
|
|
462
534
|
}, function (props) {
|
|
463
|
-
return props.
|
|
535
|
+
return props.disabled ? props.theme.disabledDropBorderColor : props.theme.dropBorderColor;
|
|
464
536
|
}, function (props) {
|
|
465
|
-
return props.
|
|
537
|
+
return props.isDragging && "\n background-color: ".concat(props.theme.dragoverDropBackgroundColor, ";\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(props.theme.focusDropBorderColor, ";\n ");
|
|
466
538
|
}, function (props) {
|
|
467
539
|
return props.disabled && "not-allowed";
|
|
468
540
|
});
|
|
469
541
|
|
|
470
|
-
var FileContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: ", ";\n"])), function (props) {
|
|
542
|
+
var FileContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: ", ";\n margin-top: 0.25rem;\n"])), function (props) {
|
|
471
543
|
return props.multiple || props.files.length > 1 ? "column" : "row";
|
|
472
544
|
});
|
|
473
545
|
|
|
474
|
-
var
|
|
546
|
+
var HiddenInputFile = _styledComponents["default"].input(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n visibility: hidden;\n position: absolute;\n width: 0px;\n height: 0px;\n"])));
|
|
475
547
|
|
|
476
|
-
var ButtonContainer = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n
|
|
477
|
-
return props.mode === "filedrop"
|
|
548
|
+
var ButtonContainer = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n ", ";\n"])), function (props) {
|
|
549
|
+
return props.mode === "filedrop" && "padding: 2px 12px 2px 3px";
|
|
550
|
+
});
|
|
551
|
+
|
|
552
|
+
var DropzoneLabel = _styledComponents["default"].div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n display: -webkit-box;\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis;\n -webkit-line-clamp: 3;\n text-align: center;\n margin-top: 0.5rem;\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n"])), function (props) {
|
|
553
|
+
return props.disabled ? props.theme.disabledDropLabelFontColor : props.theme.dropLabelFontColor;
|
|
554
|
+
}, function (props) {
|
|
555
|
+
return props.theme.dropLabelFontFamily;
|
|
556
|
+
}, function (props) {
|
|
557
|
+
return props.theme.dropLabelFontSize;
|
|
558
|
+
}, function (props) {
|
|
559
|
+
return props.theme.dropLabelFontWeight;
|
|
478
560
|
});
|
|
479
561
|
|
|
480
|
-
var
|
|
562
|
+
var FiledropLabel = _styledComponents["default"].span(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n margin-right: 1rem;\n"])), function (props) {
|
|
481
563
|
return props.disabled ? props.theme.disabledDropLabelFontColor : props.theme.dropLabelFontColor;
|
|
482
564
|
}, function (props) {
|
|
483
565
|
return props.theme.dropLabelFontFamily;
|
|
@@ -487,15 +569,15 @@ var DropLabel = _styledComponents["default"].span(_templateObject8 || (_template
|
|
|
487
569
|
return props.theme.dropLabelFontWeight;
|
|
488
570
|
});
|
|
489
571
|
|
|
490
|
-
var Container = _styledComponents["default"].div(
|
|
572
|
+
var Container = _styledComponents["default"].div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n margin-top: 0.25rem;\n"])));
|
|
491
573
|
|
|
492
|
-
var FileItemContainer = _styledComponents["default"].div(
|
|
574
|
+
var FileItemContainer = _styledComponents["default"].div(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n margin-top: ", ";\n margin-left: ", ";\n"])), function (props) {
|
|
493
575
|
return (props.multiple || props.files.length > 1 || props.mode !== "file") && "4px";
|
|
494
576
|
}, function (props) {
|
|
495
577
|
return props.mode === "file" && props.files.length === 1 && !props.multiple && "4px";
|
|
496
578
|
});
|
|
497
579
|
|
|
498
|
-
var ErrorMessage = _styledComponents["default"].div(
|
|
580
|
+
var ErrorMessage = _styledComponents["default"].div(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n line-height: ", ";\n margin-top: 0.25rem;\n"])), function (props) {
|
|
499
581
|
return props.theme.errorMessageFontColor;
|
|
500
582
|
}, function (props) {
|
|
501
583
|
return props.theme.errorMessageFontFamily;
|
|
@@ -507,26 +589,5 @@ var ErrorMessage = _styledComponents["default"].div(_templateObject11 || (_templ
|
|
|
507
589
|
return props.theme.errorMessageLineHeight;
|
|
508
590
|
});
|
|
509
591
|
|
|
510
|
-
DxcFileInput.propTypes = {
|
|
511
|
-
name: _propTypes["default"].string,
|
|
512
|
-
mode: _propTypes["default"].oneOf(["file", "filedrop", "dropzone"]),
|
|
513
|
-
label: _propTypes["default"].string,
|
|
514
|
-
helperText: _propTypes["default"].string,
|
|
515
|
-
accept: _propTypes["default"].array,
|
|
516
|
-
maxSize: _propTypes["default"].number,
|
|
517
|
-
minSize: _propTypes["default"].number,
|
|
518
|
-
multiple: _propTypes["default"].bool,
|
|
519
|
-
showPreview: _propTypes["default"].bool,
|
|
520
|
-
disabled: _propTypes["default"].bool,
|
|
521
|
-
callbackFile: _propTypes["default"].func,
|
|
522
|
-
value: _propTypes["default"].array,
|
|
523
|
-
tabIndex: _propTypes["default"].number,
|
|
524
|
-
margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
|
|
525
|
-
top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
526
|
-
bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
527
|
-
left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
528
|
-
right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
|
|
529
|
-
}), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
|
|
530
|
-
};
|
|
531
592
|
var _default = DxcFileInput;
|
|
532
593
|
exports["default"] = _default;
|