@dxc-technology/halstack-react 0.0.0-dfcca07 → 0.0.0-e01c6f9
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 +1 -0
- package/BackgroundColorContext.js +6 -26
- package/HalstackContext.d.ts +1235 -0
- package/HalstackContext.js +310 -0
- package/README.md +47 -0
- package/accordion/Accordion.d.ts +1 -1
- package/accordion/Accordion.js +118 -194
- package/accordion/Accordion.stories.tsx +283 -0
- package/accordion/Accordion.test.js +56 -0
- package/accordion/types.d.ts +12 -23
- package/accordion-group/AccordionGroup.d.ts +5 -4
- package/accordion-group/AccordionGroup.js +39 -108
- package/accordion-group/AccordionGroup.stories.tsx +95 -68
- package/accordion-group/AccordionGroup.test.js +98 -0
- package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
- package/accordion-group/AccordionGroupAccordion.js +31 -0
- package/accordion-group/types.d.ts +18 -23
- package/action-icon/ActionIcon.d.ts +4 -0
- package/action-icon/ActionIcon.js +43 -0
- package/action-icon/types.d.ts +26 -0
- package/alert/Alert.js +24 -60
- package/alert/Alert.stories.tsx +28 -0
- package/alert/Alert.test.js +75 -0
- package/alert/types.d.ts +5 -5
- package/badge/Badge.d.ts +4 -0
- package/badge/Badge.js +9 -20
- package/badge/types.d.ts +5 -0
- package/bleed/Bleed.d.ts +3 -0
- package/bleed/Bleed.js +43 -0
- package/bleed/Bleed.stories.tsx +342 -0
- package/bleed/types.d.ts +37 -0
- package/box/Box.d.ts +1 -1
- package/box/Box.js +31 -82
- package/box/Box.stories.tsx +38 -51
- package/box/Box.test.js +13 -0
- package/box/types.d.ts +3 -14
- package/bulleted-list/BulletedList.d.ts +7 -0
- package/bulleted-list/BulletedList.js +89 -0
- package/bulleted-list/BulletedList.stories.tsx +115 -0
- package/bulleted-list/types.d.ts +38 -0
- package/bulleted-list/types.js +5 -0
- package/button/Button.d.ts +1 -1
- package/button/Button.js +64 -123
- package/button/Button.stories.tsx +164 -96
- package/button/Button.test.js +36 -0
- package/button/types.d.ts +12 -12
- package/card/Card.d.ts +1 -1
- package/card/Card.js +59 -103
- package/card/Card.stories.tsx +13 -43
- package/card/Card.test.js +39 -0
- package/card/types.d.ts +6 -11
- package/checkbox/Checkbox.d.ts +2 -2
- package/checkbox/Checkbox.js +145 -183
- package/checkbox/Checkbox.stories.tsx +166 -136
- package/checkbox/Checkbox.test.js +199 -0
- package/checkbox/types.d.ts +19 -7
- package/chip/Chip.d.ts +4 -0
- package/chip/Chip.js +48 -148
- package/chip/Chip.stories.tsx +123 -30
- package/chip/Chip.test.js +41 -0
- package/chip/types.d.ts +45 -0
- package/chip/types.js +5 -0
- package/common/OpenSans.css +68 -80
- package/common/coreTokens.d.ts +237 -0
- package/common/coreTokens.js +184 -0
- package/common/utils.d.ts +1 -0
- package/common/utils.js +6 -12
- package/common/variables.d.ts +1381 -0
- package/common/variables.js +1006 -1331
- package/container/Container.d.ts +4 -0
- package/container/Container.js +194 -0
- package/container/Container.stories.tsx +214 -0
- package/container/types.d.ts +74 -0
- package/container/types.js +5 -0
- package/date-input/Calendar.d.ts +4 -0
- package/date-input/Calendar.js +214 -0
- package/date-input/DateInput.js +175 -313
- package/date-input/DateInput.stories.tsx +203 -56
- package/date-input/DateInput.test.js +808 -0
- package/date-input/DatePicker.d.ts +4 -0
- package/date-input/DatePicker.js +115 -0
- package/date-input/Icons.d.ts +6 -0
- package/date-input/Icons.js +58 -0
- package/date-input/YearPicker.d.ts +4 -0
- package/date-input/YearPicker.js +100 -0
- package/date-input/types.d.ts +86 -22
- package/dialog/Dialog.d.ts +1 -1
- package/dialog/Dialog.js +69 -130
- package/dialog/Dialog.stories.tsx +320 -167
- package/dialog/Dialog.test.js +307 -0
- package/dialog/types.d.ts +18 -25
- package/dropdown/Dropdown.d.ts +1 -1
- package/dropdown/Dropdown.js +245 -328
- package/dropdown/Dropdown.stories.tsx +438 -0
- package/dropdown/Dropdown.test.js +599 -0
- package/dropdown/DropdownMenu.d.ts +4 -0
- package/dropdown/DropdownMenu.js +63 -0
- package/dropdown/DropdownMenuItem.d.ts +4 -0
- package/dropdown/DropdownMenuItem.js +67 -0
- package/dropdown/types.d.ts +36 -27
- package/file-input/FileInput.d.ts +2 -2
- package/file-input/FileInput.js +267 -299
- package/file-input/FileInput.stories.tsx +618 -0
- package/file-input/FileInput.test.js +459 -0
- package/file-input/FileItem.d.ts +4 -14
- package/file-input/FileItem.js +52 -101
- package/file-input/types.d.ts +53 -11
- package/flex/Flex.d.ts +4 -0
- package/flex/Flex.js +57 -0
- package/flex/Flex.stories.tsx +112 -0
- package/flex/types.d.ts +97 -0
- package/flex/types.js +5 -0
- package/footer/Footer.d.ts +1 -1
- package/footer/Footer.js +60 -201
- package/footer/{Footer.stories.jsx → Footer.stories.tsx} +38 -37
- package/footer/Footer.test.js +85 -0
- package/footer/Icons.d.ts +2 -0
- package/footer/Icons.js +4 -9
- package/footer/types.d.ts +22 -33
- package/grid/Grid.d.ts +7 -0
- package/grid/Grid.js +76 -0
- package/grid/Grid.stories.tsx +219 -0
- package/grid/types.d.ts +115 -0
- package/grid/types.js +5 -0
- package/header/Header.d.ts +4 -3
- package/header/Header.js +100 -204
- package/header/Header.stories.tsx +152 -63
- package/header/Header.test.js +66 -0
- package/header/Icons.d.ts +2 -0
- package/header/Icons.js +4 -9
- package/header/types.d.ts +5 -19
- package/heading/Heading.js +11 -33
- package/heading/Heading.stories.tsx +3 -2
- package/heading/Heading.test.js +169 -0
- package/heading/types.d.ts +7 -7
- package/image/Image.d.ts +4 -0
- package/image/Image.js +70 -0
- package/image/Image.stories.tsx +127 -0
- package/image/types.d.ts +72 -0
- package/image/types.js +5 -0
- package/inset/Inset.d.ts +3 -0
- package/inset/Inset.js +43 -0
- package/inset/Inset.stories.tsx +230 -0
- package/inset/types.d.ts +37 -0
- package/inset/types.js +5 -0
- package/layout/ApplicationLayout.d.ts +20 -0
- package/layout/ApplicationLayout.js +83 -184
- package/layout/ApplicationLayout.stories.tsx +162 -0
- package/layout/Icons.d.ts +8 -0
- package/layout/Icons.js +51 -48
- package/layout/SidenavContext.d.ts +5 -0
- package/layout/SidenavContext.js +13 -0
- package/layout/types.d.ts +41 -0
- package/layout/types.js +5 -0
- package/link/Link.d.ts +3 -2
- package/link/Link.js +65 -111
- package/link/Link.stories.tsx +159 -52
- package/link/Link.test.js +63 -0
- package/link/types.d.ts +15 -35
- package/main.d.ts +15 -13
- package/main.js +70 -97
- package/nav-tabs/NavTabs.d.ts +8 -0
- package/nav-tabs/NavTabs.js +90 -0
- package/nav-tabs/NavTabs.stories.tsx +274 -0
- package/nav-tabs/NavTabs.test.js +75 -0
- package/nav-tabs/Tab.d.ts +4 -0
- package/nav-tabs/Tab.js +117 -0
- package/nav-tabs/types.d.ts +52 -0
- package/nav-tabs/types.js +5 -0
- package/number-input/NumberInput.d.ts +7 -0
- package/number-input/NumberInput.js +28 -47
- package/number-input/NumberInput.stories.tsx +44 -28
- package/number-input/NumberInput.test.js +830 -0
- package/number-input/types.d.ts +28 -15
- package/package.json +46 -45
- package/paginator/Icons.d.ts +5 -0
- package/paginator/Icons.js +21 -47
- package/paginator/Paginator.js +35 -98
- package/paginator/Paginator.stories.tsx +24 -0
- package/paginator/Paginator.test.js +335 -0
- package/paginator/types.d.ts +3 -3
- package/paragraph/Paragraph.d.ts +5 -0
- package/paragraph/Paragraph.js +22 -0
- package/paragraph/Paragraph.stories.tsx +27 -0
- package/password-input/Icons.d.ts +6 -0
- package/password-input/Icons.js +35 -0
- package/password-input/PasswordInput.js +58 -125
- package/password-input/PasswordInput.stories.tsx +3 -35
- package/password-input/PasswordInput.test.js +198 -0
- package/password-input/types.d.ts +21 -17
- package/progress-bar/ProgressBar.js +66 -92
- package/progress-bar/ProgressBar.stories.tsx +93 -0
- package/progress-bar/ProgressBar.test.js +93 -0
- package/progress-bar/types.d.ts +3 -3
- package/quick-nav/QuickNav.d.ts +4 -0
- package/quick-nav/QuickNav.js +94 -0
- package/quick-nav/QuickNav.stories.tsx +356 -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 +124 -0
- package/radio-group/RadioGroup.d.ts +4 -0
- package/radio-group/RadioGroup.js +235 -0
- package/radio-group/RadioGroup.stories.tsx +214 -0
- package/radio-group/RadioGroup.test.js +756 -0
- package/radio-group/types.d.ts +114 -0
- package/radio-group/types.js +5 -0
- package/resultset-table/Icons.d.ts +7 -0
- package/resultset-table/Icons.js +47 -0
- package/resultset-table/ResultsetTable.js +159 -0
- package/resultset-table/ResultsetTable.stories.tsx +300 -0
- package/resultset-table/ResultsetTable.test.js +305 -0
- package/{resultsetTable → resultset-table}/types.d.ts +8 -8
- package/resultset-table/types.js +5 -0
- package/select/Icons.d.ts +10 -0
- package/select/Icons.js +89 -0
- package/select/Listbox.d.ts +4 -0
- package/select/Listbox.js +143 -0
- package/select/Option.d.ts +4 -0
- package/select/Option.js +80 -0
- package/select/Select.d.ts +4 -0
- package/select/Select.js +227 -511
- package/select/Select.stories.tsx +603 -204
- package/select/Select.test.js +2370 -0
- package/select/types.d.ts +209 -0
- package/select/types.js +5 -0
- package/sidenav/Icons.d.ts +7 -0
- package/sidenav/Icons.js +47 -0
- package/sidenav/Sidenav.d.ts +6 -5
- package/sidenav/Sidenav.js +132 -72
- package/sidenav/Sidenav.stories.tsx +251 -134
- package/sidenav/Sidenav.test.js +37 -0
- package/sidenav/types.d.ts +52 -26
- package/slider/Slider.d.ts +2 -2
- package/slider/Slider.js +149 -181
- package/slider/Slider.test.js +254 -0
- package/slider/types.d.ts +11 -3
- package/spinner/Spinner.js +32 -76
- package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -26
- package/spinner/Spinner.test.js +55 -0
- package/spinner/types.d.ts +3 -3
- package/switch/Switch.d.ts +2 -2
- package/switch/Switch.js +150 -115
- package/switch/Switch.stories.tsx +45 -68
- package/switch/Switch.test.js +180 -0
- package/switch/types.d.ts +13 -5
- package/table/Table.js +9 -31
- package/table/{Table.stories.jsx → Table.stories.tsx} +81 -1
- package/table/Table.test.js +21 -0
- package/table/types.d.ts +8 -8
- package/tabs/Tab.d.ts +4 -0
- package/tabs/Tab.js +113 -0
- package/tabs/Tabs.d.ts +1 -1
- package/tabs/Tabs.js +318 -147
- package/tabs/Tabs.stories.tsx +122 -17
- package/tabs/Tabs.test.js +294 -0
- package/tabs/types.d.ts +46 -24
- package/tag/Tag.d.ts +1 -1
- package/tag/Tag.js +44 -86
- package/tag/Tag.stories.tsx +38 -28
- package/tag/Tag.test.js +49 -0
- package/tag/types.d.ts +25 -16
- package/text-input/Icons.d.ts +8 -0
- package/text-input/Icons.js +56 -0
- package/text-input/Suggestion.d.ts +4 -0
- package/text-input/Suggestion.js +67 -0
- package/text-input/Suggestions.d.ts +4 -0
- package/text-input/Suggestions.js +84 -0
- package/text-input/TextInput.js +330 -544
- package/text-input/TextInput.stories.tsx +280 -271
- package/text-input/TextInput.test.js +1739 -0
- package/text-input/types.d.ts +71 -25
- package/textarea/Textarea.d.ts +4 -0
- package/textarea/Textarea.js +95 -177
- package/textarea/Textarea.stories.tsx +174 -0
- package/textarea/Textarea.test.js +406 -0
- package/textarea/types.d.ts +141 -0
- package/textarea/types.js +5 -0
- package/toggle-group/ToggleGroup.d.ts +2 -2
- package/toggle-group/ToggleGroup.js +97 -113
- package/toggle-group/ToggleGroup.stories.tsx +76 -36
- package/toggle-group/ToggleGroup.test.js +137 -0
- package/toggle-group/types.d.ts +66 -36
- package/typography/Typography.d.ts +4 -0
- package/typography/Typography.js +23 -0
- package/typography/Typography.stories.tsx +198 -0
- package/typography/types.d.ts +18 -0
- package/typography/types.js +5 -0
- package/useTheme.d.ts +1134 -0
- package/useTheme.js +4 -11
- package/useTranslatedLabels.d.ts +85 -0
- package/useTranslatedLabels.js +14 -0
- package/utils/BaseTypography.d.ts +21 -0
- package/utils/BaseTypography.js +94 -0
- package/utils/FocusLock.d.ts +13 -0
- package/utils/FocusLock.js +121 -0
- package/wizard/Wizard.d.ts +1 -1
- package/wizard/Wizard.js +123 -104
- package/wizard/{Wizard.stories.jsx → Wizard.stories.tsx} +48 -19
- package/wizard/Wizard.test.js +114 -0
- package/wizard/types.d.ts +14 -14
- 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/card/ice-cream.jpg +0 -0
- package/chip/index.d.ts +0 -22
- package/common/RequiredComponent.js +0 -32
- 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/number-input/NumberInputContext.d.ts +0 -4
- package/number-input/NumberInputContext.js +0 -19
- package/number-input/numberInputContextTypes.d.ts +0 -19
- package/progress-bar/ProgressBar.stories.jsx +0 -58
- 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/ResultsetTable.js +0 -251
- package/select/index.d.ts +0 -131
- package/slider/Slider.stories.tsx +0 -177
- package/textarea/Textarea.stories.jsx +0 -135
- 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/{radio → action-icon}/types.js +0 -0
- /package/{resultsetTable → badge}/types.js +0 -0
- /package/{number-input/numberInputContextTypes.js → bleed/types.js} +0 -0
- /package/{resultsetTable → resultset-table}/ResultsetTable.d.ts +0 -0
package/file-input/FileInput.js
CHANGED
|
@@ -1,46 +1,31 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _typeof3 = require("@babel/runtime/helpers/typeof");
|
|
6
|
-
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
8
|
exports["default"] = void 0;
|
|
11
|
-
|
|
12
9
|
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
13
|
-
|
|
14
10
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
15
|
-
|
|
16
11
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
17
|
-
|
|
12
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
18
13
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
19
|
-
|
|
20
|
-
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
21
|
-
|
|
22
14
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
23
|
-
|
|
15
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
24
16
|
var _react = _interopRequireWildcard(require("react"));
|
|
25
|
-
|
|
26
17
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
27
|
-
|
|
28
18
|
var _uuid = require("uuid");
|
|
29
|
-
|
|
30
|
-
var
|
|
31
|
-
|
|
32
|
-
var _useTheme = _interopRequireDefault(require("../useTheme.js"));
|
|
33
|
-
|
|
19
|
+
var _variables = require("../common/variables");
|
|
20
|
+
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
21
|
+
var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
|
|
34
22
|
var _Button = _interopRequireDefault(require("../button/Button"));
|
|
35
|
-
|
|
36
23
|
var _FileItem = _interopRequireDefault(require("./FileItem"));
|
|
37
|
-
|
|
38
24
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;
|
|
39
|
-
|
|
40
|
-
function
|
|
41
|
-
|
|
42
|
-
function
|
|
43
|
-
|
|
25
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
26
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
27
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
28
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
44
29
|
var audioIcon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
45
30
|
xmlns: "http://www.w3.org/2000/svg",
|
|
46
31
|
width: "24",
|
|
@@ -53,7 +38,6 @@ var audioIcon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
|
53
38
|
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
54
39
|
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"
|
|
55
40
|
}));
|
|
56
|
-
|
|
57
41
|
var videoIcon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
58
42
|
xmlns: "http://www.w3.org/2000/svg",
|
|
59
43
|
width: "24",
|
|
@@ -66,7 +50,6 @@ var videoIcon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
|
66
50
|
d: "M0 0h24v24H0z",
|
|
67
51
|
fill: "none"
|
|
68
52
|
}));
|
|
69
|
-
|
|
70
53
|
var fileIcon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
71
54
|
xmlns: "http://www.w3.org/2000/svg",
|
|
72
55
|
width: "24",
|
|
@@ -79,295 +62,304 @@ var fileIcon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
|
79
62
|
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
80
63
|
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"
|
|
81
64
|
}));
|
|
82
|
-
|
|
83
|
-
var
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
65
|
+
var getFilePreview = /*#__PURE__*/function () {
|
|
66
|
+
var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(file) {
|
|
67
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
68
|
+
while (1) switch (_context.prev = _context.next) {
|
|
69
|
+
case 0:
|
|
70
|
+
if (!file.type.includes("video")) {
|
|
71
|
+
_context.next = 4;
|
|
72
|
+
break;
|
|
73
|
+
}
|
|
74
|
+
return _context.abrupt("return", videoIcon);
|
|
75
|
+
case 4:
|
|
76
|
+
if (!file.type.includes("audio")) {
|
|
77
|
+
_context.next = 8;
|
|
78
|
+
break;
|
|
79
|
+
}
|
|
80
|
+
return _context.abrupt("return", audioIcon);
|
|
81
|
+
case 8:
|
|
82
|
+
if (!file.type.includes("image")) {
|
|
83
|
+
_context.next = 12;
|
|
84
|
+
break;
|
|
85
|
+
}
|
|
86
|
+
return _context.abrupt("return", new Promise(function (resolve) {
|
|
87
|
+
var reader = new FileReader();
|
|
88
|
+
reader.readAsDataURL(file);
|
|
89
|
+
reader.onload = function (e) {
|
|
90
|
+
resolve(e.target.result);
|
|
91
|
+
};
|
|
92
|
+
}));
|
|
93
|
+
case 12:
|
|
94
|
+
return _context.abrupt("return", fileIcon);
|
|
95
|
+
case 13:
|
|
96
|
+
case "end":
|
|
97
|
+
return _context.stop();
|
|
98
|
+
}
|
|
99
|
+
}, _callee);
|
|
100
|
+
}));
|
|
101
|
+
return function getFilePreview(_x) {
|
|
102
|
+
return _ref.apply(this, arguments);
|
|
103
|
+
};
|
|
104
|
+
}();
|
|
105
|
+
var isFileIncluded = function isFileIncluded(file, fileList) {
|
|
106
|
+
var fileListInfo = fileList.map(function (existingFile) {
|
|
107
|
+
return existingFile.file;
|
|
108
|
+
});
|
|
109
|
+
return fileListInfo.some(function (_ref2) {
|
|
110
|
+
var name = _ref2.name,
|
|
111
|
+
size = _ref2.size,
|
|
112
|
+
type = _ref2.type,
|
|
113
|
+
lastModified = _ref2.lastModified,
|
|
114
|
+
webkitRelativePath = _ref2.webkitRelativePath;
|
|
115
|
+
return name === file.file.name && size === file.file.size && type === file.file.type && lastModified === file.file.lastModified && webkitRelativePath === file.file.webkitRelativePath;
|
|
116
|
+
});
|
|
117
|
+
};
|
|
118
|
+
var DxcFileInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref3, ref) {
|
|
119
|
+
var _ref3$name = _ref3.name,
|
|
120
|
+
name = _ref3$name === void 0 ? "" : _ref3$name,
|
|
121
|
+
_ref3$mode = _ref3.mode,
|
|
122
|
+
mode = _ref3$mode === void 0 ? "file" : _ref3$mode,
|
|
123
|
+
_ref3$label = _ref3.label,
|
|
124
|
+
label = _ref3$label === void 0 ? "" : _ref3$label,
|
|
125
|
+
buttonLabel = _ref3.buttonLabel,
|
|
126
|
+
dropAreaLabel = _ref3.dropAreaLabel,
|
|
127
|
+
_ref3$helperText = _ref3.helperText,
|
|
128
|
+
helperText = _ref3$helperText === void 0 ? "" : _ref3$helperText,
|
|
129
|
+
accept = _ref3.accept,
|
|
130
|
+
minSize = _ref3.minSize,
|
|
131
|
+
maxSize = _ref3.maxSize,
|
|
132
|
+
_ref3$showPreview = _ref3.showPreview,
|
|
133
|
+
showPreview = _ref3$showPreview === void 0 ? false : _ref3$showPreview,
|
|
134
|
+
_ref3$multiple = _ref3.multiple,
|
|
135
|
+
multiple = _ref3$multiple === void 0 ? true : _ref3$multiple,
|
|
136
|
+
_ref3$disabled = _ref3.disabled,
|
|
137
|
+
disabled = _ref3$disabled === void 0 ? false : _ref3$disabled,
|
|
138
|
+
callbackFile = _ref3.callbackFile,
|
|
139
|
+
value = _ref3.value,
|
|
140
|
+
margin = _ref3.margin,
|
|
141
|
+
_ref3$tabIndex = _ref3.tabIndex,
|
|
142
|
+
tabIndex = _ref3$tabIndex === void 0 ? 0 : _ref3$tabIndex;
|
|
107
143
|
var _useState = (0, _react.useState)(false),
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
144
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
145
|
+
isDragging = _useState2[0],
|
|
146
|
+
setIsDragging = _useState2[1];
|
|
112
147
|
var _useState3 = (0, _react.useState)([]),
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
148
|
+
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
149
|
+
files = _useState4[0],
|
|
150
|
+
setFiles = _useState4[1];
|
|
117
151
|
var _useState5 = (0, _react.useState)("file-input-".concat((0, _uuid.v4)())),
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
152
|
+
_useState6 = (0, _slicedToArray2["default"])(_useState5, 1),
|
|
153
|
+
fileInputId = _useState6[0];
|
|
121
154
|
var colorsTheme = (0, _useTheme["default"])();
|
|
122
|
-
(0,
|
|
123
|
-
if (value) {
|
|
124
|
-
setFiles(value);
|
|
125
|
-
} else {
|
|
126
|
-
setFiles([]);
|
|
127
|
-
}
|
|
128
|
-
}, [value]);
|
|
129
|
-
|
|
130
|
-
var handleClick = function handleClick() {
|
|
131
|
-
document.getElementById(fileInputId).click();
|
|
132
|
-
};
|
|
133
|
-
|
|
155
|
+
var translatedLabels = (0, _useTranslatedLabels["default"])();
|
|
134
156
|
var checkFileSize = function checkFileSize(file) {
|
|
135
|
-
if (file.size < minSize)
|
|
136
|
-
return "File size must be greater than min size.";
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
if (file.size > maxSize) {
|
|
140
|
-
return "File size must be less than max size.";
|
|
141
|
-
}
|
|
157
|
+
if (file.size < minSize) return translatedLabels.fileInput.fileSizeGreaterThanErrorMessage;else if (file.size > maxSize) return translatedLabels.fileInput.fileSizeLessThanErrorMessage;
|
|
142
158
|
};
|
|
143
|
-
|
|
144
|
-
var getFilePreview = function getFilePreview(file) {
|
|
145
|
-
if (file.type.includes("video")) {
|
|
146
|
-
return videoIcon;
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
if (file.type.includes("audio")) {
|
|
150
|
-
return audioIcon;
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
if (file.type.includes("image")) {
|
|
154
|
-
return new Promise(function (resolve) {
|
|
155
|
-
var reader = new FileReader();
|
|
156
|
-
reader.readAsDataURL(file);
|
|
157
|
-
|
|
158
|
-
reader.onload = function (e) {
|
|
159
|
-
resolve(e.target.result);
|
|
160
|
-
};
|
|
161
|
-
});
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
return fileIcon;
|
|
165
|
-
};
|
|
166
|
-
|
|
167
159
|
var getFilesToAdd = /*#__PURE__*/function () {
|
|
168
|
-
var
|
|
160
|
+
var _ref4 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(selectedFiles) {
|
|
169
161
|
var filesToAdd;
|
|
170
|
-
return _regenerator["default"].wrap(function
|
|
171
|
-
while (1) {
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
return
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
return fileInfo;
|
|
185
|
-
});
|
|
162
|
+
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
|
163
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
164
|
+
case 0:
|
|
165
|
+
_context2.next = 2;
|
|
166
|
+
return Promise.all(selectedFiles.map(function (selectedFile) {
|
|
167
|
+
return getFilePreview(selectedFile);
|
|
168
|
+
})).then(function (previews) {
|
|
169
|
+
return selectedFiles.map(function (file, index) {
|
|
170
|
+
var fileInfo = {
|
|
171
|
+
file: file,
|
|
172
|
+
error: checkFileSize(file),
|
|
173
|
+
preview: previews[index]
|
|
174
|
+
};
|
|
175
|
+
return fileInfo;
|
|
186
176
|
});
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
177
|
+
});
|
|
178
|
+
case 2:
|
|
179
|
+
filesToAdd = _context2.sent;
|
|
180
|
+
return _context2.abrupt("return", filesToAdd.filter(function (file) {
|
|
181
|
+
return !isFileIncluded(file, files);
|
|
182
|
+
}));
|
|
183
|
+
case 4:
|
|
184
|
+
case "end":
|
|
185
|
+
return _context2.stop();
|
|
196
186
|
}
|
|
197
|
-
},
|
|
187
|
+
}, _callee2);
|
|
198
188
|
}));
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
return _ref2.apply(this, arguments);
|
|
189
|
+
return function getFilesToAdd(_x2) {
|
|
190
|
+
return _ref4.apply(this, arguments);
|
|
202
191
|
};
|
|
203
192
|
}();
|
|
204
|
-
|
|
205
193
|
var addFile = /*#__PURE__*/function () {
|
|
206
|
-
var
|
|
207
|
-
var filesToAdd, finalFiles
|
|
208
|
-
return _regenerator["default"].wrap(function
|
|
209
|
-
while (1) {
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
case 3:
|
|
221
|
-
filesToAdd = _context2.sent;
|
|
222
|
-
finalFiles = [].concat((0, _toConsumableArray2["default"])(files), (0, _toConsumableArray2["default"])(filesToAdd));
|
|
223
|
-
|
|
224
|
-
if (typeof callbackFile === "function") {
|
|
225
|
-
callbackFile(finalFiles);
|
|
226
|
-
}
|
|
227
|
-
|
|
228
|
-
_context2.next = 19;
|
|
229
|
-
break;
|
|
230
|
-
|
|
231
|
-
case 8:
|
|
232
|
-
if (!(selectedFiles.length === 1)) {
|
|
233
|
-
_context2.next = 14;
|
|
234
|
-
break;
|
|
235
|
-
}
|
|
236
|
-
|
|
237
|
-
_context2.next = 11;
|
|
238
|
-
return getFilesToAdd(selectedFiles);
|
|
239
|
-
|
|
240
|
-
case 11:
|
|
241
|
-
_context2.t0 = _context2.sent;
|
|
242
|
-
_context2.next = 17;
|
|
243
|
-
break;
|
|
244
|
-
|
|
245
|
-
case 14:
|
|
246
|
-
_context2.next = 16;
|
|
247
|
-
return getFilesToAdd([selectedFiles[0]]);
|
|
248
|
-
|
|
249
|
-
case 16:
|
|
250
|
-
_context2.t0 = _context2.sent;
|
|
251
|
-
|
|
252
|
-
case 17:
|
|
253
|
-
fileToAdd = _context2.t0;
|
|
254
|
-
|
|
255
|
-
if (typeof callbackFile === "function") {
|
|
256
|
-
callbackFile(fileToAdd);
|
|
257
|
-
}
|
|
258
|
-
|
|
259
|
-
case 19:
|
|
260
|
-
case "end":
|
|
261
|
-
return _context2.stop();
|
|
262
|
-
}
|
|
194
|
+
var _ref5 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(selectedFiles) {
|
|
195
|
+
var filesToAdd, finalFiles;
|
|
196
|
+
return _regenerator["default"].wrap(function _callee3$(_context3) {
|
|
197
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
198
|
+
case 0:
|
|
199
|
+
_context3.next = 2;
|
|
200
|
+
return getFilesToAdd(multiple ? selectedFiles : selectedFiles.length === 1 ? selectedFiles : [selectedFiles[0]]);
|
|
201
|
+
case 2:
|
|
202
|
+
filesToAdd = _context3.sent;
|
|
203
|
+
finalFiles = multiple ? [].concat((0, _toConsumableArray2["default"])(files), (0, _toConsumableArray2["default"])(filesToAdd)) : filesToAdd;
|
|
204
|
+
callbackFile === null || callbackFile === void 0 ? void 0 : callbackFile(finalFiles);
|
|
205
|
+
case 5:
|
|
206
|
+
case "end":
|
|
207
|
+
return _context3.stop();
|
|
263
208
|
}
|
|
264
|
-
},
|
|
209
|
+
}, _callee3);
|
|
265
210
|
}));
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
return _ref3.apply(this, arguments);
|
|
211
|
+
return function addFile(_x3) {
|
|
212
|
+
return _ref5.apply(this, arguments);
|
|
269
213
|
};
|
|
270
214
|
}();
|
|
271
|
-
|
|
272
215
|
var selectFiles = function selectFiles(e) {
|
|
273
216
|
var selectedFiles = e.target.files;
|
|
274
217
|
var filesArray = Object.keys(selectedFiles).map(function (key) {
|
|
275
218
|
return selectedFiles[key];
|
|
276
219
|
});
|
|
277
220
|
addFile(filesArray);
|
|
221
|
+
e.target.value = null;
|
|
278
222
|
};
|
|
279
|
-
|
|
280
|
-
var onDelete = function onDelete(fileName) {
|
|
223
|
+
var onDelete = (0, _react.useCallback)(function (fileName) {
|
|
281
224
|
var filesCopy = (0, _toConsumableArray2["default"])(files);
|
|
282
225
|
var fileToRemove = filesCopy.find(function (file) {
|
|
283
226
|
return file.file.name === fileName;
|
|
284
227
|
});
|
|
285
228
|
var fileIndex = filesCopy.indexOf(fileToRemove);
|
|
286
229
|
filesCopy.splice(fileIndex, 1);
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
230
|
+
callbackFile === null || callbackFile === void 0 ? void 0 : callbackFile(filesCopy);
|
|
231
|
+
}, [files, callbackFile]);
|
|
232
|
+
var handleClick = function handleClick() {
|
|
233
|
+
document.getElementById(fileInputId).click();
|
|
291
234
|
};
|
|
292
|
-
|
|
293
235
|
var handleDrag = function handleDrag(e) {
|
|
294
236
|
e.preventDefault();
|
|
295
237
|
e.stopPropagation();
|
|
296
238
|
};
|
|
297
|
-
|
|
298
239
|
var handleDragIn = function handleDragIn(e) {
|
|
299
|
-
|
|
300
|
-
e.
|
|
301
|
-
|
|
302
|
-
if (e.dataTransfer.items && e.dataTransfer.items.length > 0) {
|
|
303
|
-
setIsDragging(true);
|
|
304
|
-
}
|
|
240
|
+
var _e$dataTransfer$items;
|
|
241
|
+
if (((_e$dataTransfer$items = e.dataTransfer.items) === null || _e$dataTransfer$items === void 0 ? void 0 : _e$dataTransfer$items.length) > 0) setIsDragging(true);
|
|
305
242
|
};
|
|
306
|
-
|
|
307
243
|
var handleDragOut = function handleDragOut(e) {
|
|
308
|
-
|
|
309
|
-
e.
|
|
310
|
-
setIsDragging(false);
|
|
244
|
+
// only if dragged items leave container (outside, not to childs)
|
|
245
|
+
if (!e.currentTarget.contains(e.relatedTarget)) setIsDragging(false);
|
|
311
246
|
};
|
|
312
|
-
|
|
313
247
|
var handleDrop = function handleDrop(e) {
|
|
314
248
|
e.preventDefault();
|
|
315
249
|
e.stopPropagation();
|
|
316
250
|
setIsDragging(false);
|
|
317
251
|
var filesObject = e.dataTransfer.files;
|
|
318
|
-
|
|
319
|
-
if (filesObject && filesObject.length > 0) {
|
|
252
|
+
if ((filesObject === null || filesObject === void 0 ? void 0 : filesObject.length) > 0) {
|
|
320
253
|
var filesArray = Object.keys(filesObject).map(function (key) {
|
|
321
254
|
return filesObject[key];
|
|
322
255
|
});
|
|
323
256
|
addFile(filesArray);
|
|
324
257
|
}
|
|
325
258
|
};
|
|
326
|
-
|
|
259
|
+
(0, _react.useEffect)(function () {
|
|
260
|
+
var getFiles = /*#__PURE__*/function () {
|
|
261
|
+
var _ref6 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5() {
|
|
262
|
+
var valueFiles;
|
|
263
|
+
return _regenerator["default"].wrap(function _callee5$(_context5) {
|
|
264
|
+
while (1) switch (_context5.prev = _context5.next) {
|
|
265
|
+
case 0:
|
|
266
|
+
if (!value) {
|
|
267
|
+
_context5.next = 5;
|
|
268
|
+
break;
|
|
269
|
+
}
|
|
270
|
+
_context5.next = 3;
|
|
271
|
+
return Promise.all(value.map( /*#__PURE__*/function () {
|
|
272
|
+
var _ref7 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4(file) {
|
|
273
|
+
var preview;
|
|
274
|
+
return _regenerator["default"].wrap(function _callee4$(_context4) {
|
|
275
|
+
while (1) switch (_context4.prev = _context4.next) {
|
|
276
|
+
case 0:
|
|
277
|
+
if (!file.preview) {
|
|
278
|
+
_context4.next = 4;
|
|
279
|
+
break;
|
|
280
|
+
}
|
|
281
|
+
return _context4.abrupt("return", file);
|
|
282
|
+
case 4:
|
|
283
|
+
_context4.next = 6;
|
|
284
|
+
return getFilePreview(file.file);
|
|
285
|
+
case 6:
|
|
286
|
+
preview = _context4.sent;
|
|
287
|
+
return _context4.abrupt("return", _objectSpread(_objectSpread({}, file), {}, {
|
|
288
|
+
preview: preview
|
|
289
|
+
}));
|
|
290
|
+
case 8:
|
|
291
|
+
case "end":
|
|
292
|
+
return _context4.stop();
|
|
293
|
+
}
|
|
294
|
+
}, _callee4);
|
|
295
|
+
}));
|
|
296
|
+
return function (_x4) {
|
|
297
|
+
return _ref7.apply(this, arguments);
|
|
298
|
+
};
|
|
299
|
+
}()));
|
|
300
|
+
case 3:
|
|
301
|
+
valueFiles = _context5.sent;
|
|
302
|
+
setFiles(valueFiles);
|
|
303
|
+
case 5:
|
|
304
|
+
case "end":
|
|
305
|
+
return _context5.stop();
|
|
306
|
+
}
|
|
307
|
+
}, _callee5);
|
|
308
|
+
}));
|
|
309
|
+
return function getFiles() {
|
|
310
|
+
return _ref6.apply(this, arguments);
|
|
311
|
+
};
|
|
312
|
+
}();
|
|
313
|
+
getFiles();
|
|
314
|
+
}, [value]);
|
|
327
315
|
return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
328
316
|
theme: colorsTheme.fileInput
|
|
329
317
|
}, /*#__PURE__*/_react["default"].createElement(FileInputContainer, {
|
|
330
318
|
margin: margin,
|
|
331
|
-
|
|
319
|
+
ref: ref
|
|
332
320
|
}, /*#__PURE__*/_react["default"].createElement(Label, {
|
|
333
321
|
htmlFor: fileInputId,
|
|
334
322
|
disabled: disabled
|
|
335
323
|
}, label), /*#__PURE__*/_react["default"].createElement(HelperText, {
|
|
336
324
|
disabled: disabled
|
|
337
325
|
}, helperText), mode === "file" ? /*#__PURE__*/_react["default"].createElement(FileContainer, {
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
}, /*#__PURE__*/_react["default"].createElement(HiddenInputFile, {
|
|
326
|
+
singleFileMode: !multiple && files.length === 1
|
|
327
|
+
}, /*#__PURE__*/_react["default"].createElement(ValueInput, {
|
|
341
328
|
id: fileInputId,
|
|
342
329
|
type: "file",
|
|
343
330
|
accept: accept,
|
|
344
331
|
multiple: multiple,
|
|
345
|
-
onChange: selectFiles
|
|
332
|
+
onChange: selectFiles,
|
|
333
|
+
disabled: disabled,
|
|
334
|
+
readOnly: true
|
|
346
335
|
}), /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
347
336
|
mode: "secondary",
|
|
348
|
-
label:
|
|
337
|
+
label: buttonLabel !== null && buttonLabel !== void 0 ? buttonLabel : multiple ? translatedLabels.fileInput.multipleButtonLabelDefault : translatedLabels.fileInput.singleButtonLabelDefault,
|
|
349
338
|
onClick: handleClick,
|
|
350
339
|
disabled: disabled,
|
|
351
|
-
size: "
|
|
340
|
+
size: "fitContent",
|
|
352
341
|
tabIndex: tabIndex
|
|
353
|
-
}), files.map(function (file) {
|
|
354
|
-
return /*#__PURE__*/_react["default"].createElement(
|
|
355
|
-
|
|
356
|
-
multiple: multiple,
|
|
357
|
-
files: files
|
|
358
|
-
}, /*#__PURE__*/_react["default"].createElement(_FileItem["default"], {
|
|
359
|
-
mode: mode,
|
|
360
|
-
multiple: multiple,
|
|
361
|
-
name: file.file.name,
|
|
342
|
+
}), files.length > 0 && /*#__PURE__*/_react["default"].createElement(FileItemListContainer, null, files.map(function (file, index) {
|
|
343
|
+
return /*#__PURE__*/_react["default"].createElement(_FileItem["default"], {
|
|
344
|
+
fileName: file.file.name,
|
|
362
345
|
error: file.error,
|
|
346
|
+
singleFileMode: !multiple && files.length === 1,
|
|
363
347
|
showPreview: mode === "file" && !multiple ? false : showPreview,
|
|
364
|
-
numFiles: files.length,
|
|
365
348
|
preview: file.preview,
|
|
366
349
|
type: file.file.type,
|
|
367
350
|
onDelete: onDelete,
|
|
368
|
-
tabIndex: tabIndex
|
|
369
|
-
|
|
370
|
-
|
|
351
|
+
tabIndex: tabIndex,
|
|
352
|
+
key: "file-".concat(index)
|
|
353
|
+
});
|
|
354
|
+
}))) : /*#__PURE__*/_react["default"].createElement(Container, null, /*#__PURE__*/_react["default"].createElement(ValueInput, {
|
|
355
|
+
id: fileInputId,
|
|
356
|
+
type: "file",
|
|
357
|
+
accept: accept,
|
|
358
|
+
multiple: multiple,
|
|
359
|
+
onChange: selectFiles,
|
|
360
|
+
disabled: disabled,
|
|
361
|
+
readOnly: true
|
|
362
|
+
}), /*#__PURE__*/_react["default"].createElement(DragDropArea, {
|
|
371
363
|
isDragging: isDragging,
|
|
372
364
|
disabled: disabled,
|
|
373
365
|
mode: mode,
|
|
@@ -375,44 +367,30 @@ var DxcFileInput = function DxcFileInput(_ref) {
|
|
|
375
367
|
onDragEnter: handleDragIn,
|
|
376
368
|
onDragOver: handleDrag,
|
|
377
369
|
onDragLeave: handleDragOut
|
|
378
|
-
}, /*#__PURE__*/_react["default"].createElement(HiddenInputFile, {
|
|
379
|
-
id: fileInputId,
|
|
380
|
-
type: "file",
|
|
381
|
-
accept: accept,
|
|
382
|
-
multiple: multiple,
|
|
383
|
-
onChange: selectFiles
|
|
384
|
-
}), /*#__PURE__*/_react["default"].createElement(ButtonContainer, {
|
|
385
|
-
mode: mode
|
|
386
370
|
}, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
387
371
|
mode: "secondary",
|
|
388
|
-
label:
|
|
372
|
+
label: buttonLabel !== null && buttonLabel !== void 0 ? buttonLabel : translatedLabels.fileInput.dropAreaButtonLabelDefault,
|
|
389
373
|
onClick: handleClick,
|
|
390
374
|
disabled: disabled,
|
|
391
375
|
size: "fitContent"
|
|
392
|
-
})
|
|
376
|
+
}), mode === "dropzone" ? /*#__PURE__*/_react["default"].createElement(DropzoneLabel, {
|
|
377
|
+
disabled: disabled
|
|
378
|
+
}, dropAreaLabel !== null && dropAreaLabel !== void 0 ? dropAreaLabel : multiple ? translatedLabels.fileInput.multipleDropAreaLabelDefault : translatedLabels.fileInput.singleDropAreaLabelDefault) : /*#__PURE__*/_react["default"].createElement(FiledropLabel, {
|
|
393
379
|
disabled: disabled
|
|
394
|
-
},
|
|
395
|
-
return /*#__PURE__*/_react["default"].createElement(
|
|
396
|
-
|
|
397
|
-
multiple: multiple,
|
|
398
|
-
files: files
|
|
399
|
-
}, /*#__PURE__*/_react["default"].createElement(_FileItem["default"], {
|
|
400
|
-
mode: mode,
|
|
401
|
-
multiple: multiple,
|
|
402
|
-
name: file.file.name,
|
|
380
|
+
}, dropAreaLabel !== null && dropAreaLabel !== void 0 ? dropAreaLabel : multiple ? translatedLabels.fileInput.multipleDropAreaLabelDefault : translatedLabels.fileInput.singleDropAreaLabelDefault)), files.length > 0 && /*#__PURE__*/_react["default"].createElement(FileItemListContainer, null, files.map(function (file, index) {
|
|
381
|
+
return /*#__PURE__*/_react["default"].createElement(_FileItem["default"], {
|
|
382
|
+
fileName: file.file.name,
|
|
403
383
|
error: file.error,
|
|
384
|
+
singleFileMode: false,
|
|
404
385
|
showPreview: showPreview,
|
|
405
|
-
numFiles: files.length,
|
|
406
386
|
preview: file.preview,
|
|
407
387
|
type: file.file.type,
|
|
408
388
|
onDelete: onDelete,
|
|
409
|
-
tabIndex: tabIndex
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
};
|
|
415
|
-
|
|
389
|
+
tabIndex: tabIndex,
|
|
390
|
+
key: "file-".concat(index)
|
|
391
|
+
});
|
|
392
|
+
}))), mode === "file" && !multiple && files.length === 1 && files[0].error && /*#__PURE__*/_react["default"].createElement(ErrorMessage, null, files[0].error)));
|
|
393
|
+
});
|
|
416
394
|
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) {
|
|
417
395
|
return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
|
|
418
396
|
}, function (props) {
|
|
@@ -424,7 +402,6 @@ var FileInputContainer = _styledComponents["default"].div(_templateObject || (_t
|
|
|
424
402
|
}, function (props) {
|
|
425
403
|
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
|
|
426
404
|
});
|
|
427
|
-
|
|
428
405
|
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) {
|
|
429
406
|
return props.disabled ? props.theme.disabledLabelFontColor : props.theme.labelFontColor;
|
|
430
407
|
}, function (props) {
|
|
@@ -436,7 +413,6 @@ var Label = _styledComponents["default"].label(_templateObject2 || (_templateObj
|
|
|
436
413
|
}, function (props) {
|
|
437
414
|
return props.theme.labelLineHeight;
|
|
438
415
|
});
|
|
439
|
-
|
|
440
416
|
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) {
|
|
441
417
|
return props.disabled ? props.theme.disabledHelperTextFontcolor : props.theme.helperTextFontColor;
|
|
442
418
|
}, function (props) {
|
|
@@ -448,36 +424,30 @@ var HelperText = _styledComponents["default"].span(_templateObject3 || (_templat
|
|
|
448
424
|
}, function (props) {
|
|
449
425
|
return props.theme.helperTextLineHeight;
|
|
450
426
|
});
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
427
|
+
var FileContainer = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n ", "\n margin-top: 0.25rem;\n"])), function (props) {
|
|
428
|
+
return props.singleFileMode ? "flex-direction: row; column-gap: 0.25rem;" : "flex-direction: column; row-gap: 0.25rem;";
|
|
429
|
+
});
|
|
430
|
+
var ValueInput = _styledComponents["default"].input(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: none;\n"])));
|
|
431
|
+
var FileItemListContainer = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n row-gap: 0.25rem;\n"])));
|
|
432
|
+
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"])));
|
|
433
|
+
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) {
|
|
434
|
+
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;";
|
|
454
435
|
}, function (props) {
|
|
455
|
-
return props.mode === "filedrop" ? "
|
|
436
|
+
return props.mode === "filedrop" ? "calc(4px - ".concat(props.theme.dropBorderThickness, ") 1rem calc(4px - ").concat(props.theme.dropBorderThickness, ") calc(4px - ").concat(props.theme.dropBorderThickness, ")") : "1rem";
|
|
456
437
|
}, function (props) {
|
|
457
438
|
return props.theme.dropBorderRadius;
|
|
458
439
|
}, function (props) {
|
|
459
|
-
return
|
|
440
|
+
return props.theme.dropBorderThickness;
|
|
460
441
|
}, function (props) {
|
|
461
|
-
return
|
|
442
|
+
return props.theme.dropBorderStyle;
|
|
462
443
|
}, function (props) {
|
|
463
|
-
return props.
|
|
444
|
+
return props.disabled ? props.theme.disabledDropBorderColor : props.theme.dropBorderColor;
|
|
464
445
|
}, function (props) {
|
|
465
|
-
return props.
|
|
446
|
+
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
447
|
}, function (props) {
|
|
467
448
|
return props.disabled && "not-allowed";
|
|
468
449
|
});
|
|
469
|
-
|
|
470
|
-
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
|
-
return props.multiple || props.files.length > 1 ? "column" : "row";
|
|
472
|
-
});
|
|
473
|
-
|
|
474
|
-
var HiddenInputFile = _styledComponents["default"].input(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n visibility: hidden;\n position: absolute;\n width: 0px;\n height: 0px;\n"])));
|
|
475
|
-
|
|
476
|
-
var ButtonContainer = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n padding: ", ";\n"])), function (props) {
|
|
477
|
-
return props.mode === "filedrop" ? "2px 12px 2px 2px" : "47px 122px 8px 122px";
|
|
478
|
-
});
|
|
479
|
-
|
|
480
|
-
var DropLabel = _styledComponents["default"].span(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n"])), function (props) {
|
|
450
|
+
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) {
|
|
481
451
|
return props.disabled ? props.theme.disabledDropLabelFontColor : props.theme.dropLabelFontColor;
|
|
482
452
|
}, function (props) {
|
|
483
453
|
return props.theme.dropLabelFontFamily;
|
|
@@ -486,15 +456,15 @@ var DropLabel = _styledComponents["default"].span(_templateObject8 || (_template
|
|
|
486
456
|
}, function (props) {
|
|
487
457
|
return props.theme.dropLabelFontWeight;
|
|
488
458
|
});
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
var FileItemContainer = _styledComponents["default"].div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n margin-top: ", ";\n margin-left: ", ";\n"])), function (props) {
|
|
493
|
-
return (props.multiple || props.files.length > 1 || props.mode !== "file") && "4px";
|
|
459
|
+
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) {
|
|
460
|
+
return props.disabled ? props.theme.disabledDropLabelFontColor : props.theme.dropLabelFontColor;
|
|
494
461
|
}, function (props) {
|
|
495
|
-
return props.
|
|
462
|
+
return props.theme.dropLabelFontFamily;
|
|
463
|
+
}, function (props) {
|
|
464
|
+
return props.theme.dropLabelFontSize;
|
|
465
|
+
}, function (props) {
|
|
466
|
+
return props.theme.dropLabelFontWeight;
|
|
496
467
|
});
|
|
497
|
-
|
|
498
468
|
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) {
|
|
499
469
|
return props.theme.errorMessageFontColor;
|
|
500
470
|
}, function (props) {
|
|
@@ -506,6 +476,4 @@ var ErrorMessage = _styledComponents["default"].div(_templateObject11 || (_templ
|
|
|
506
476
|
}, function (props) {
|
|
507
477
|
return props.theme.errorMessageLineHeight;
|
|
508
478
|
});
|
|
509
|
-
|
|
510
|
-
var _default = DxcFileInput;
|
|
511
|
-
exports["default"] = _default;
|
|
479
|
+
var _default = exports["default"] = DxcFileInput;
|