@dxc-technology/halstack-react 0.0.0-9bd9511 → 0.0.0-9c20370
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 +3 -3
- package/BackgroundColorContext.js +12 -2
- package/HalstackContext.d.ts +1330 -7
- package/HalstackContext.js +84 -67
- package/accordion/Accordion.d.ts +1 -1
- package/accordion/Accordion.js +74 -55
- package/accordion/Accordion.stories.tsx +3 -101
- package/accordion/Accordion.test.js +34 -19
- package/accordion/types.d.ts +4 -16
- package/accordion-group/AccordionGroup.d.ts +4 -3
- package/accordion-group/AccordionGroup.js +49 -42
- package/accordion-group/AccordionGroup.stories.tsx +77 -76
- package/accordion-group/AccordionGroup.test.js +62 -54
- package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
- package/accordion-group/AccordionGroupAccordion.js +43 -0
- package/accordion-group/types.d.ts +6 -18
- package/alert/Alert.js +47 -20
- package/alert/Alert.test.js +46 -29
- package/alert/types.d.ts +3 -3
- package/badge/Badge.js +14 -2
- package/badge/types.d.ts +1 -1
- package/bleed/Bleed.js +21 -13
- package/bleed/Bleed.stories.tsx +1 -0
- package/bleed/types.d.ts +2 -2
- package/box/Box.d.ts +1 -1
- package/box/Box.js +33 -33
- package/box/Box.stories.tsx +25 -53
- package/box/Box.test.js +7 -2
- package/box/types.d.ts +3 -15
- package/bulleted-list/BulletedList.js +36 -9
- package/bulleted-list/BulletedList.stories.tsx +7 -1
- package/bulleted-list/types.d.ts +32 -5
- package/button/Button.d.ts +1 -1
- package/button/Button.js +83 -71
- package/button/Button.stories.tsx +4 -4
- package/button/Button.test.js +28 -8
- package/button/types.d.ts +8 -4
- package/card/Card.d.ts +1 -1
- package/card/Card.js +67 -62
- package/card/Card.stories.tsx +12 -42
- package/card/Card.test.js +22 -11
- package/card/types.d.ts +4 -10
- package/checkbox/Checkbox.js +71 -27
- package/checkbox/Checkbox.test.js +60 -33
- package/checkbox/types.d.ts +4 -4
- package/chip/Chip.js +51 -48
- package/chip/Chip.stories.tsx +25 -17
- package/chip/Chip.test.js +29 -17
- package/chip/types.d.ts +4 -4
- package/common/OpenSans.css +68 -80
- package/common/coreTokens.d.ts +146 -0
- package/common/coreTokens.js +167 -0
- package/common/utils.d.ts +1 -0
- package/common/utils.js +8 -3
- package/common/variables.d.ts +226 -175
- package/common/variables.js +956 -1133
- package/date-input/Calendar.js +55 -12
- package/date-input/DateInput.js +82 -35
- package/date-input/DateInput.test.js +351 -164
- package/date-input/DatePicker.js +38 -8
- package/date-input/Icons.js +12 -0
- package/date-input/YearPicker.js +30 -5
- package/date-input/types.d.ts +7 -7
- package/dialog/Dialog.d.ts +1 -1
- package/dialog/Dialog.js +83 -86
- package/dialog/Dialog.stories.tsx +127 -221
- package/dialog/Dialog.test.js +331 -18
- package/dialog/types.d.ts +1 -14
- package/dropdown/Dropdown.js +86 -32
- package/dropdown/Dropdown.test.js +211 -104
- package/dropdown/DropdownMenu.js +22 -8
- package/dropdown/DropdownMenuItem.js +15 -6
- package/dropdown/types.d.ts +8 -8
- package/file-input/FileInput.js +218 -134
- package/file-input/FileInput.test.js +343 -331
- package/file-input/FileItem.js +39 -12
- package/file-input/types.d.ts +10 -10
- package/flex/Flex.js +39 -25
- package/flex/Flex.stories.tsx +35 -26
- package/flex/types.d.ts +74 -9
- package/footer/Footer.d.ts +1 -1
- package/footer/Footer.js +80 -68
- package/footer/Footer.stories.tsx +12 -89
- package/footer/Footer.test.js +47 -40
- package/footer/Icons.js +4 -0
- package/footer/types.d.ts +15 -17
- package/grid/Grid.d.ts +7 -0
- package/grid/Grid.js +91 -0
- package/grid/Grid.stories.tsx +219 -0
- package/grid/types.d.ts +115 -0
- package/header/Header.d.ts +4 -3
- package/header/Header.js +72 -55
- package/header/Header.stories.tsx +7 -71
- package/header/Header.test.js +26 -13
- package/header/Icons.js +4 -0
- package/header/types.d.ts +2 -16
- package/heading/Heading.js +28 -7
- package/heading/Heading.test.js +88 -71
- package/heading/types.d.ts +3 -3
- package/inset/Inset.js +21 -13
- package/inset/Inset.stories.tsx +2 -1
- package/inset/types.d.ts +2 -2
- package/layout/ApplicationLayout.d.ts +5 -5
- package/layout/ApplicationLayout.js +57 -15
- package/layout/Icons.js +10 -0
- package/layout/SidenavContext.d.ts +1 -1
- package/layout/SidenavContext.js +4 -0
- package/layout/types.d.ts +5 -6
- package/link/Link.js +41 -21
- package/link/Link.test.js +42 -26
- package/link/types.d.ts +4 -4
- package/main.d.ts +2 -1
- package/main.js +55 -0
- package/nav-tabs/NavTabs.d.ts +2 -2
- package/nav-tabs/NavTabs.js +43 -16
- package/nav-tabs/NavTabs.stories.tsx +14 -0
- package/nav-tabs/NavTabs.test.js +44 -37
- package/nav-tabs/Tab.js +71 -45
- package/nav-tabs/types.d.ts +10 -11
- package/number-input/NumberInput.js +30 -20
- package/number-input/NumberInput.test.js +249 -113
- package/number-input/NumberInputContext.js +5 -0
- package/number-input/numberInputContextTypes.d.ts +1 -1
- package/number-input/types.d.ts +4 -4
- package/package.json +7 -7
- package/paginator/Icons.js +10 -0
- package/paginator/Paginator.js +39 -17
- package/paginator/Paginator.test.js +156 -104
- package/paginator/types.d.ts +1 -1
- package/paragraph/Paragraph.d.ts +3 -4
- package/paragraph/Paragraph.js +18 -8
- package/password-input/PasswordInput.js +51 -22
- package/password-input/PasswordInput.test.js +94 -51
- package/password-input/types.d.ts +4 -4
- package/progress-bar/ProgressBar.d.ts +2 -2
- package/progress-bar/ProgressBar.js +39 -14
- package/progress-bar/ProgressBar.test.js +53 -36
- package/progress-bar/types.d.ts +4 -3
- package/quick-nav/QuickNav.js +24 -2
- package/quick-nav/types.d.ts +2 -2
- package/radio-group/Radio.js +53 -22
- package/radio-group/RadioGroup.js +84 -41
- package/radio-group/RadioGroup.test.js +288 -186
- package/radio-group/types.d.ts +4 -4
- package/resultsetTable/Icons.js +3 -0
- package/resultsetTable/ResultsetTable.js +56 -21
- package/resultsetTable/ResultsetTable.test.js +75 -42
- package/resultsetTable/types.d.ts +5 -5
- package/select/Icons.js +3 -0
- package/select/Listbox.js +35 -10
- package/select/Option.js +24 -8
- package/select/Select.js +143 -56
- package/select/Select.test.js +839 -456
- package/select/types.d.ts +12 -12
- package/sidenav/Icons.d.ts +7 -0
- package/sidenav/Icons.js +51 -0
- package/sidenav/Sidenav.d.ts +2 -2
- package/sidenav/Sidenav.js +116 -104
- package/sidenav/Sidenav.stories.tsx +60 -60
- package/sidenav/Sidenav.test.js +10 -3
- package/sidenav/types.d.ts +26 -23
- package/slider/Slider.js +84 -38
- package/slider/Slider.test.js +104 -76
- package/slider/types.d.ts +4 -4
- package/spinner/Spinner.js +51 -28
- package/spinner/Spinner.stories.jsx +28 -28
- package/spinner/Spinner.test.js +35 -26
- package/spinner/types.d.ts +3 -3
- package/switch/Switch.js +66 -24
- package/switch/Switch.test.js +97 -52
- package/switch/types.d.ts +4 -4
- package/table/Table.js +22 -4
- package/table/Table.test.js +7 -2
- package/table/types.d.ts +3 -3
- package/tabs/Tab.js +39 -22
- package/tabs/Tabs.js +131 -62
- package/tabs/Tabs.test.js +122 -67
- package/tabs/types.d.ts +8 -8
- package/tag/Tag.js +54 -27
- package/tag/Tag.test.js +31 -20
- package/tag/types.d.ts +7 -7
- package/text-input/Icons.js +3 -0
- package/text-input/Suggestion.js +24 -8
- package/text-input/Suggestions.js +36 -11
- package/text-input/TextInput.js +144 -59
- package/text-input/TextInput.stories.tsx +1 -1
- package/text-input/TextInput.test.js +858 -539
- package/text-input/types.d.ts +9 -9
- package/textarea/Textarea.js +73 -38
- package/textarea/Textarea.test.js +173 -98
- package/textarea/types.d.ts +4 -4
- package/toggle-group/ToggleGroup.d.ts +2 -2
- package/toggle-group/ToggleGroup.js +59 -21
- package/toggle-group/ToggleGroup.test.js +72 -40
- package/toggle-group/types.d.ts +11 -11
- package/typography/Typography.d.ts +2 -2
- package/typography/Typography.js +23 -110
- package/typography/Typography.stories.tsx +1 -1
- package/typography/types.d.ts +1 -1
- package/useTheme.d.ts +1234 -1
- package/useTheme.js +6 -0
- package/useTranslatedLabels.d.ts +84 -2
- package/useTranslatedLabels.js +5 -0
- package/utils/BaseTypography.d.ts +21 -0
- package/utils/BaseTypography.js +108 -0
- package/utils/FocusLock.d.ts +13 -0
- package/utils/FocusLock.js +138 -0
- package/wizard/Wizard.js +47 -13
- package/wizard/Wizard.test.js +81 -54
- package/wizard/types.d.ts +7 -8
- package/card/ice-cream.jpg +0 -0
- package/translatedLabelsType.d.ts +0 -82
- /package/{translatedLabelsType.js → grid/types.js} +0 -0
package/file-input/FileInput.js
CHANGED
|
@@ -1,31 +1,54 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
4
5
|
var _typeof3 = require("@babel/runtime/helpers/typeof");
|
|
6
|
+
|
|
5
7
|
Object.defineProperty(exports, "__esModule", {
|
|
6
8
|
value: true
|
|
7
9
|
});
|
|
8
10
|
exports["default"] = void 0;
|
|
11
|
+
|
|
9
12
|
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
13
|
+
|
|
10
14
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
15
|
+
|
|
11
16
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
17
|
+
|
|
12
18
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
19
|
+
|
|
13
20
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
21
|
+
|
|
14
22
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
23
|
+
|
|
15
24
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
25
|
+
|
|
16
26
|
var _react = _interopRequireWildcard(require("react"));
|
|
27
|
+
|
|
17
28
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
29
|
+
|
|
18
30
|
var _uuid = require("uuid");
|
|
31
|
+
|
|
19
32
|
var _variables = require("../common/variables");
|
|
33
|
+
|
|
20
34
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
35
|
+
|
|
21
36
|
var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
|
|
37
|
+
|
|
22
38
|
var _Button = _interopRequireDefault(require("../button/Button"));
|
|
39
|
+
|
|
23
40
|
var _FileItem = _interopRequireDefault(require("./FileItem"));
|
|
41
|
+
|
|
24
42
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;
|
|
43
|
+
|
|
25
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); }
|
|
45
|
+
|
|
26
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; }
|
|
47
|
+
|
|
27
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
|
+
|
|
28
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
|
+
|
|
29
52
|
var audioIcon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
30
53
|
xmlns: "http://www.w3.org/2000/svg",
|
|
31
54
|
width: "24",
|
|
@@ -38,6 +61,7 @@ var audioIcon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
|
38
61
|
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
39
62
|
d: "M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H3V5h18v14zM8 15c0-1.66 1.34-3 3-3 .35 0 .69.07 1 .18V6h5v2h-3v7.03c-.02 1.64-1.35 2.97-3 2.97-1.66 0-3-1.34-3-3z"
|
|
40
63
|
}));
|
|
64
|
+
|
|
41
65
|
var videoIcon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
42
66
|
xmlns: "http://www.w3.org/2000/svg",
|
|
43
67
|
width: "24",
|
|
@@ -50,6 +74,7 @@ var videoIcon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
|
50
74
|
d: "M0 0h24v24H0z",
|
|
51
75
|
fill: "none"
|
|
52
76
|
}));
|
|
77
|
+
|
|
53
78
|
var fileIcon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
54
79
|
xmlns: "http://www.w3.org/2000/svg",
|
|
55
80
|
width: "24",
|
|
@@ -62,142 +87,172 @@ var fileIcon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
|
62
87
|
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
63
88
|
d: "M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6zM6 20V4h7v5h5v11H6z"
|
|
64
89
|
}));
|
|
90
|
+
|
|
65
91
|
var getFilePreview = function getFilePreview(file) {
|
|
66
92
|
if (file.type.includes("video")) return videoIcon;else if (file.type.includes("audio")) return audioIcon;else if (file.type.includes("image")) return new Promise(function (resolve) {
|
|
67
93
|
var reader = new FileReader();
|
|
68
94
|
reader.readAsDataURL(file);
|
|
95
|
+
|
|
69
96
|
reader.onload = function (e) {
|
|
70
97
|
resolve(e.target.result);
|
|
71
98
|
};
|
|
72
99
|
});else return fileIcon;
|
|
73
100
|
};
|
|
101
|
+
|
|
74
102
|
var DxcFileInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
75
103
|
var _ref$name = _ref.name,
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
104
|
+
name = _ref$name === void 0 ? "" : _ref$name,
|
|
105
|
+
_ref$mode = _ref.mode,
|
|
106
|
+
mode = _ref$mode === void 0 ? "file" : _ref$mode,
|
|
107
|
+
_ref$label = _ref.label,
|
|
108
|
+
label = _ref$label === void 0 ? "" : _ref$label,
|
|
109
|
+
buttonLabel = _ref.buttonLabel,
|
|
110
|
+
dropAreaLabel = _ref.dropAreaLabel,
|
|
111
|
+
_ref$helperText = _ref.helperText,
|
|
112
|
+
helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
|
|
113
|
+
accept = _ref.accept,
|
|
114
|
+
minSize = _ref.minSize,
|
|
115
|
+
maxSize = _ref.maxSize,
|
|
116
|
+
_ref$showPreview = _ref.showPreview,
|
|
117
|
+
showPreview = _ref$showPreview === void 0 ? false : _ref$showPreview,
|
|
118
|
+
_ref$multiple = _ref.multiple,
|
|
119
|
+
multiple = _ref$multiple === void 0 ? true : _ref$multiple,
|
|
120
|
+
_ref$disabled = _ref.disabled,
|
|
121
|
+
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
|
122
|
+
callbackFile = _ref.callbackFile,
|
|
123
|
+
value = _ref.value,
|
|
124
|
+
margin = _ref.margin,
|
|
125
|
+
_ref$tabIndex = _ref.tabIndex,
|
|
126
|
+
tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
|
|
127
|
+
|
|
99
128
|
var _useState = (0, _react.useState)(false),
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
129
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
130
|
+
isDragging = _useState2[0],
|
|
131
|
+
setIsDragging = _useState2[1];
|
|
132
|
+
|
|
103
133
|
var _useState3 = (0, _react.useState)([]),
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
134
|
+
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
135
|
+
files = _useState4[0],
|
|
136
|
+
setFiles = _useState4[1];
|
|
137
|
+
|
|
107
138
|
var _useState5 = (0, _react.useState)("file-input-".concat((0, _uuid.v4)())),
|
|
108
|
-
|
|
109
|
-
|
|
139
|
+
_useState6 = (0, _slicedToArray2["default"])(_useState5, 1),
|
|
140
|
+
fileInputId = _useState6[0];
|
|
141
|
+
|
|
110
142
|
var colorsTheme = (0, _useTheme["default"])();
|
|
111
143
|
var translatedLabels = (0, _useTranslatedLabels["default"])();
|
|
144
|
+
|
|
112
145
|
var checkFileSize = function checkFileSize(file) {
|
|
113
146
|
if (file.size < minSize) return translatedLabels.fileInput.fileSizeGreaterThanErrorMessage;else if (file.size > maxSize) return translatedLabels.fileInput.fileSizeLessThanErrorMessage;
|
|
114
147
|
};
|
|
148
|
+
|
|
115
149
|
var getFilesToAdd = /*#__PURE__*/function () {
|
|
116
150
|
var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(selectedFiles) {
|
|
117
151
|
var filesToAdd;
|
|
118
152
|
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
119
|
-
while (1)
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
return
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
153
|
+
while (1) {
|
|
154
|
+
switch (_context.prev = _context.next) {
|
|
155
|
+
case 0:
|
|
156
|
+
_context.next = 2;
|
|
157
|
+
return Promise.all(selectedFiles.map(function (selectedFile) {
|
|
158
|
+
return getFilePreview(selectedFile);
|
|
159
|
+
})).then(function (previews) {
|
|
160
|
+
return selectedFiles.map(function (file, index) {
|
|
161
|
+
var fileInfo = {
|
|
162
|
+
file: file,
|
|
163
|
+
error: checkFileSize(file),
|
|
164
|
+
preview: previews[index]
|
|
165
|
+
};
|
|
166
|
+
return fileInfo;
|
|
167
|
+
});
|
|
132
168
|
});
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
169
|
+
|
|
170
|
+
case 2:
|
|
171
|
+
filesToAdd = _context.sent;
|
|
172
|
+
return _context.abrupt("return", filesToAdd);
|
|
173
|
+
|
|
174
|
+
case 4:
|
|
175
|
+
case "end":
|
|
176
|
+
return _context.stop();
|
|
177
|
+
}
|
|
140
178
|
}
|
|
141
179
|
}, _callee);
|
|
142
180
|
}));
|
|
181
|
+
|
|
143
182
|
return function getFilesToAdd(_x) {
|
|
144
183
|
return _ref2.apply(this, arguments);
|
|
145
184
|
};
|
|
146
185
|
}();
|
|
186
|
+
|
|
147
187
|
var addFile = /*#__PURE__*/function () {
|
|
148
188
|
var _ref3 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(selectedFiles) {
|
|
149
189
|
var filesToAdd, finalFiles, fileToAdd;
|
|
150
190
|
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
|
151
|
-
while (1)
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
191
|
+
while (1) {
|
|
192
|
+
switch (_context2.prev = _context2.next) {
|
|
193
|
+
case 0:
|
|
194
|
+
if (!multiple) {
|
|
195
|
+
_context2.next = 8;
|
|
196
|
+
break;
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
_context2.next = 3;
|
|
200
|
+
return getFilesToAdd(selectedFiles);
|
|
201
|
+
|
|
202
|
+
case 3:
|
|
203
|
+
filesToAdd = _context2.sent;
|
|
204
|
+
finalFiles = [].concat((0, _toConsumableArray2["default"])(files), (0, _toConsumableArray2["default"])(filesToAdd));
|
|
205
|
+
callbackFile === null || callbackFile === void 0 ? void 0 : callbackFile(finalFiles);
|
|
206
|
+
_context2.next = 19;
|
|
155
207
|
break;
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
_context2.
|
|
208
|
+
|
|
209
|
+
case 8:
|
|
210
|
+
if (!(selectedFiles.length === 1)) {
|
|
211
|
+
_context2.next = 14;
|
|
212
|
+
break;
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
_context2.next = 11;
|
|
216
|
+
return getFilesToAdd(selectedFiles);
|
|
217
|
+
|
|
218
|
+
case 11:
|
|
219
|
+
_context2.t0 = _context2.sent;
|
|
220
|
+
_context2.next = 17;
|
|
168
221
|
break;
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
case "end":
|
|
186
|
-
return _context2.stop();
|
|
222
|
+
|
|
223
|
+
case 14:
|
|
224
|
+
_context2.next = 16;
|
|
225
|
+
return getFilesToAdd([selectedFiles[0]]);
|
|
226
|
+
|
|
227
|
+
case 16:
|
|
228
|
+
_context2.t0 = _context2.sent;
|
|
229
|
+
|
|
230
|
+
case 17:
|
|
231
|
+
fileToAdd = _context2.t0;
|
|
232
|
+
callbackFile === null || callbackFile === void 0 ? void 0 : callbackFile(fileToAdd);
|
|
233
|
+
|
|
234
|
+
case 19:
|
|
235
|
+
case "end":
|
|
236
|
+
return _context2.stop();
|
|
237
|
+
}
|
|
187
238
|
}
|
|
188
239
|
}, _callee2);
|
|
189
240
|
}));
|
|
241
|
+
|
|
190
242
|
return function addFile(_x2) {
|
|
191
243
|
return _ref3.apply(this, arguments);
|
|
192
244
|
};
|
|
193
245
|
}();
|
|
246
|
+
|
|
194
247
|
var selectFiles = function selectFiles(e) {
|
|
195
248
|
var selectedFiles = e.target.files;
|
|
196
249
|
var filesArray = Object.keys(selectedFiles).map(function (key) {
|
|
197
250
|
return selectedFiles[key];
|
|
198
251
|
});
|
|
199
252
|
addFile(filesArray);
|
|
253
|
+
e.target.value = null;
|
|
200
254
|
};
|
|
255
|
+
|
|
201
256
|
var onDelete = (0, _react.useCallback)(function (fileName) {
|
|
202
257
|
var filesCopy = (0, _toConsumableArray2["default"])(files);
|
|
203
258
|
var fileToRemove = filesCopy.find(function (file) {
|
|
@@ -207,26 +262,33 @@ var DxcFileInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
207
262
|
filesCopy.splice(fileIndex, 1);
|
|
208
263
|
callbackFile === null || callbackFile === void 0 ? void 0 : callbackFile(filesCopy);
|
|
209
264
|
}, [files, callbackFile]);
|
|
265
|
+
|
|
210
266
|
var handleClick = function handleClick() {
|
|
211
267
|
document.getElementById(fileInputId).click();
|
|
212
268
|
};
|
|
269
|
+
|
|
213
270
|
var handleDrag = function handleDrag(e) {
|
|
214
271
|
e.preventDefault();
|
|
215
272
|
e.stopPropagation();
|
|
216
273
|
};
|
|
274
|
+
|
|
217
275
|
var handleDragIn = function handleDragIn(e) {
|
|
218
276
|
var _e$dataTransfer$items;
|
|
277
|
+
|
|
219
278
|
if (((_e$dataTransfer$items = e.dataTransfer.items) === null || _e$dataTransfer$items === void 0 ? void 0 : _e$dataTransfer$items.length) > 0) setIsDragging(true);
|
|
220
279
|
};
|
|
280
|
+
|
|
221
281
|
var handleDragOut = function handleDragOut(e) {
|
|
222
282
|
// only if dragged items leave container (outside, not to childs)
|
|
223
283
|
if (!e.currentTarget.contains(e.relatedTarget)) setIsDragging(false);
|
|
224
284
|
};
|
|
285
|
+
|
|
225
286
|
var handleDrop = function handleDrop(e) {
|
|
226
287
|
e.preventDefault();
|
|
227
288
|
e.stopPropagation();
|
|
228
289
|
setIsDragging(false);
|
|
229
290
|
var filesObject = e.dataTransfer.files;
|
|
291
|
+
|
|
230
292
|
if ((filesObject === null || filesObject === void 0 ? void 0 : filesObject.length) > 0) {
|
|
231
293
|
var filesArray = Object.keys(filesObject).map(function (key) {
|
|
232
294
|
return filesObject[key];
|
|
@@ -234,67 +296,81 @@ var DxcFileInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
234
296
|
addFile(filesArray);
|
|
235
297
|
}
|
|
236
298
|
};
|
|
299
|
+
|
|
237
300
|
(0, _react.useEffect)(function () {
|
|
238
301
|
var getFiles = /*#__PURE__*/function () {
|
|
239
302
|
var _ref4 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4() {
|
|
240
303
|
var valueFiles;
|
|
241
304
|
return _regenerator["default"].wrap(function _callee4$(_context4) {
|
|
242
|
-
while (1)
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
305
|
+
while (1) {
|
|
306
|
+
switch (_context4.prev = _context4.next) {
|
|
307
|
+
case 0:
|
|
308
|
+
if (!value) {
|
|
309
|
+
_context4.next = 5;
|
|
310
|
+
break;
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
_context4.next = 3;
|
|
314
|
+
return Promise.all(value.map( /*#__PURE__*/function () {
|
|
315
|
+
var _ref5 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(file) {
|
|
316
|
+
var preview;
|
|
317
|
+
return _regenerator["default"].wrap(function _callee3$(_context3) {
|
|
318
|
+
while (1) {
|
|
319
|
+
switch (_context3.prev = _context3.next) {
|
|
320
|
+
case 0:
|
|
321
|
+
if (!file.preview) {
|
|
322
|
+
_context3.next = 4;
|
|
323
|
+
break;
|
|
324
|
+
}
|
|
325
|
+
|
|
326
|
+
return _context3.abrupt("return", file);
|
|
327
|
+
|
|
328
|
+
case 4:
|
|
329
|
+
_context3.next = 6;
|
|
330
|
+
return getFilePreview(file.file);
|
|
331
|
+
|
|
332
|
+
case 6:
|
|
333
|
+
preview = _context3.sent;
|
|
334
|
+
return _context3.abrupt("return", _objectSpread(_objectSpread({}, file), {}, {
|
|
335
|
+
preview: preview
|
|
336
|
+
}));
|
|
337
|
+
|
|
338
|
+
case 8:
|
|
339
|
+
case "end":
|
|
340
|
+
return _context3.stop();
|
|
258
341
|
}
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
return
|
|
275
|
-
|
|
276
|
-
};
|
|
277
|
-
}()));
|
|
278
|
-
case 3:
|
|
279
|
-
valueFiles = _context4.sent;
|
|
280
|
-
setFiles(valueFiles);
|
|
281
|
-
case 5:
|
|
282
|
-
case "end":
|
|
283
|
-
return _context4.stop();
|
|
342
|
+
}
|
|
343
|
+
}, _callee3);
|
|
344
|
+
}));
|
|
345
|
+
|
|
346
|
+
return function (_x3) {
|
|
347
|
+
return _ref5.apply(this, arguments);
|
|
348
|
+
};
|
|
349
|
+
}()));
|
|
350
|
+
|
|
351
|
+
case 3:
|
|
352
|
+
valueFiles = _context4.sent;
|
|
353
|
+
setFiles(valueFiles);
|
|
354
|
+
|
|
355
|
+
case 5:
|
|
356
|
+
case "end":
|
|
357
|
+
return _context4.stop();
|
|
358
|
+
}
|
|
284
359
|
}
|
|
285
360
|
}, _callee4);
|
|
286
361
|
}));
|
|
362
|
+
|
|
287
363
|
return function getFiles() {
|
|
288
364
|
return _ref4.apply(this, arguments);
|
|
289
365
|
};
|
|
290
366
|
}();
|
|
367
|
+
|
|
291
368
|
getFiles();
|
|
292
369
|
}, [value]);
|
|
293
370
|
return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
294
|
-
theme: colorsTheme
|
|
371
|
+
theme: colorsTheme.fileInput
|
|
295
372
|
}, /*#__PURE__*/_react["default"].createElement(FileInputContainer, {
|
|
296
373
|
margin: margin,
|
|
297
|
-
name: name,
|
|
298
374
|
ref: ref
|
|
299
375
|
}, /*#__PURE__*/_react["default"].createElement(Label, {
|
|
300
376
|
htmlFor: fileInputId,
|
|
@@ -309,10 +385,8 @@ var DxcFileInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
309
385
|
accept: accept,
|
|
310
386
|
multiple: multiple,
|
|
311
387
|
onChange: selectFiles,
|
|
312
|
-
name: name,
|
|
313
388
|
disabled: disabled,
|
|
314
|
-
readOnly: true
|
|
315
|
-
"aria-hidden": "true"
|
|
389
|
+
readOnly: true
|
|
316
390
|
}), /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
317
391
|
mode: "secondary",
|
|
318
392
|
label: buttonLabel !== null && buttonLabel !== void 0 ? buttonLabel : multiple ? translatedLabels.fileInput.multipleButtonLabelDefault : translatedLabels.fileInput.singleButtonLabelDefault,
|
|
@@ -338,10 +412,8 @@ var DxcFileInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
338
412
|
accept: accept,
|
|
339
413
|
multiple: multiple,
|
|
340
414
|
onChange: selectFiles,
|
|
341
|
-
name: name,
|
|
342
415
|
disabled: disabled,
|
|
343
|
-
readOnly: true
|
|
344
|
-
"aria-hidden": "true"
|
|
416
|
+
readOnly: true
|
|
345
417
|
}), /*#__PURE__*/_react["default"].createElement(DragDropArea, {
|
|
346
418
|
isDragging: isDragging,
|
|
347
419
|
disabled: disabled,
|
|
@@ -374,6 +446,7 @@ var DxcFileInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
374
446
|
});
|
|
375
447
|
}))), mode === "file" && !multiple && files.length === 1 && files[0].error && /*#__PURE__*/_react["default"].createElement(ErrorMessage, null, files[0].error)));
|
|
376
448
|
});
|
|
449
|
+
|
|
377
450
|
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) {
|
|
378
451
|
return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
|
|
379
452
|
}, function (props) {
|
|
@@ -385,6 +458,7 @@ var FileInputContainer = _styledComponents["default"].div(_templateObject || (_t
|
|
|
385
458
|
}, function (props) {
|
|
386
459
|
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
|
|
387
460
|
});
|
|
461
|
+
|
|
388
462
|
var Label = _styledComponents["default"].label(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
|
|
389
463
|
return props.disabled ? props.theme.disabledLabelFontColor : props.theme.labelFontColor;
|
|
390
464
|
}, function (props) {
|
|
@@ -396,6 +470,7 @@ var Label = _styledComponents["default"].label(_templateObject2 || (_templateObj
|
|
|
396
470
|
}, function (props) {
|
|
397
471
|
return props.theme.labelLineHeight;
|
|
398
472
|
});
|
|
473
|
+
|
|
399
474
|
var HelperText = _styledComponents["default"].span(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n line-height: ", ";\n"])), function (props) {
|
|
400
475
|
return props.disabled ? props.theme.disabledHelperTextFontcolor : props.theme.helperTextFontColor;
|
|
401
476
|
}, function (props) {
|
|
@@ -407,12 +482,17 @@ var HelperText = _styledComponents["default"].span(_templateObject3 || (_templat
|
|
|
407
482
|
}, function (props) {
|
|
408
483
|
return props.theme.helperTextLineHeight;
|
|
409
484
|
});
|
|
485
|
+
|
|
410
486
|
var FileContainer = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n ", "\n margin-top: 0.25rem;\n"])), function (props) {
|
|
411
487
|
return props.singleFileMode ? "flex-direction: row; column-gap: 0.25rem;" : "flex-direction: column; row-gap: 0.25rem;";
|
|
412
488
|
});
|
|
489
|
+
|
|
413
490
|
var ValueInput = _styledComponents["default"].input(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: none;\n"])));
|
|
491
|
+
|
|
414
492
|
var FileItemListContainer = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n row-gap: 0.25rem;\n"])));
|
|
493
|
+
|
|
415
494
|
var Container = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n row-gap: 0.25rem;\n margin-top: 0.25rem;\n"])));
|
|
495
|
+
|
|
416
496
|
var DragDropArea = _styledComponents["default"].div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n box-sizing: border-box;\n display: flex;\n ", "\n align-items: center;\n width: 320px;\n padding: ", ";\n overflow: hidden;\n box-shadow: 0 0 0 2px transparent;\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n ", "\n cursor: ", ";\n"])), function (props) {
|
|
417
497
|
return props.mode === "filedrop" ? "flex-direction: row; column-gap: 0.75rem; height: 48px;" : "justify-content: center; flex-direction: column; row-gap: 0.5rem; height: 160px;";
|
|
418
498
|
}, function (props) {
|
|
@@ -430,6 +510,7 @@ var DragDropArea = _styledComponents["default"].div(_templateObject8 || (_templa
|
|
|
430
510
|
}, function (props) {
|
|
431
511
|
return props.disabled && "not-allowed";
|
|
432
512
|
});
|
|
513
|
+
|
|
433
514
|
var DropzoneLabel = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (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 color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n"])), function (props) {
|
|
434
515
|
return props.disabled ? props.theme.disabledDropLabelFontColor : props.theme.dropLabelFontColor;
|
|
435
516
|
}, function (props) {
|
|
@@ -439,6 +520,7 @@ var DropzoneLabel = _styledComponents["default"].div(_templateObject9 || (_templ
|
|
|
439
520
|
}, function (props) {
|
|
440
521
|
return props.theme.dropLabelFontWeight;
|
|
441
522
|
});
|
|
523
|
+
|
|
442
524
|
var FiledropLabel = _styledComponents["default"].span(_templateObject10 || (_templateObject10 = (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"])), function (props) {
|
|
443
525
|
return props.disabled ? props.theme.disabledDropLabelFontColor : props.theme.dropLabelFontColor;
|
|
444
526
|
}, function (props) {
|
|
@@ -448,6 +530,7 @@ var FiledropLabel = _styledComponents["default"].span(_templateObject10 || (_tem
|
|
|
448
530
|
}, function (props) {
|
|
449
531
|
return props.theme.dropLabelFontWeight;
|
|
450
532
|
});
|
|
533
|
+
|
|
451
534
|
var ErrorMessage = _styledComponents["default"].div(_templateObject11 || (_templateObject11 = (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) {
|
|
452
535
|
return props.theme.errorMessageFontColor;
|
|
453
536
|
}, function (props) {
|
|
@@ -459,5 +542,6 @@ var ErrorMessage = _styledComponents["default"].div(_templateObject11 || (_templ
|
|
|
459
542
|
}, function (props) {
|
|
460
543
|
return props.theme.errorMessageLineHeight;
|
|
461
544
|
});
|
|
545
|
+
|
|
462
546
|
var _default = DxcFileInput;
|
|
463
547
|
exports["default"] = _default;
|