@webiny/app-file-manager 5.34.8 → 5.35.0-beta.1
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/FileManagerFileTypePlugin.d.ts +20 -0
- package/FileManagerFileTypePlugin.js +48 -0
- package/FileManagerFileTypePlugin.js.map +1 -0
- package/app.d.ts +2 -0
- package/app.js +16 -0
- package/app.js.map +1 -0
- package/components/FileDetails/Aliases.d.ts +3 -0
- package/components/FileDetails/Aliases.js +228 -0
- package/components/FileDetails/Aliases.js.map +1 -0
- package/components/FileDetails/DeleteImageAction.d.ts +2 -0
- package/components/FileDetails/DeleteImageAction.js +82 -0
- package/components/FileDetails/DeleteImageAction.js.map +1 -0
- package/components/FileDetails/FileProvider.d.ts +13 -0
- package/components/FileDetails/FileProvider.js +29 -0
- package/components/FileDetails/FileProvider.js.map +1 -0
- package/components/FileDetails/Name.d.ts +3 -0
- package/components/FileDetails/Name.js +81 -0
- package/components/FileDetails/Name.js.map +1 -0
- package/components/FileDetails/Tags.d.ts +3 -0
- package/components/FileDetails/Tags.js +176 -0
- package/components/FileDetails/Tags.js.map +1 -0
- package/components/FileDetails.d.ts +20 -0
- package/components/FileDetails.js +243 -0
- package/components/FileDetails.js.map +1 -0
- package/getFileTypePlugin.d.ts +4 -0
- package/getFileTypePlugin.js +51 -0
- package/getFileTypePlugin.js.map +1 -0
- package/index.d.ts +4 -2
- package/index.js +37 -31
- package/index.js.map +1 -1
- package/modules/FileManagerApiProvider/FileManagerApiContext/FileManagerApiContext.d.ts +37 -0
- package/modules/FileManagerApiProvider/FileManagerApiContext/FileManagerApiContext.js +293 -0
- package/modules/FileManagerApiProvider/FileManagerApiContext/FileManagerApiContext.js.map +1 -0
- package/modules/FileManagerApiProvider/FileManagerApiContext/getFileUploader.d.ts +2 -0
- package/modules/FileManagerApiProvider/FileManagerApiContext/getFileUploader.js +15 -0
- package/modules/FileManagerApiProvider/FileManagerApiContext/getFileUploader.js.map +1 -0
- package/modules/FileManagerApiProvider/FileManagerApiContext/index.d.ts +2 -0
- package/modules/FileManagerApiProvider/FileManagerApiContext/index.js +19 -0
- package/modules/FileManagerApiProvider/FileManagerApiContext/index.js.map +1 -0
- package/modules/FileManagerApiProvider/FileManagerApiContext/useFileManagerApi.d.ts +3 -0
- package/modules/FileManagerApiProvider/FileManagerApiContext/useFileManagerApi.js +16 -0
- package/modules/FileManagerApiProvider/FileManagerApiContext/useFileManagerApi.js.map +1 -0
- package/modules/FileManagerApiProvider/graphql.d.ts +103 -0
- package/modules/FileManagerApiProvider/graphql.js +24 -0
- package/modules/FileManagerApiProvider/graphql.js.map +1 -0
- package/modules/FileManagerApiProvider/index.d.ts +2 -0
- package/modules/FileManagerApiProvider/index.js +22 -0
- package/modules/FileManagerApiProvider/index.js.map +1 -0
- package/modules/FileManagerRenderer/DefaultRenderer/BottomInfoBar/SupportedFileTypes.d.ts +6 -0
- package/modules/FileManagerRenderer/DefaultRenderer/BottomInfoBar/SupportedFileTypes.js +41 -0
- package/modules/FileManagerRenderer/DefaultRenderer/BottomInfoBar/SupportedFileTypes.js.map +1 -0
- package/modules/FileManagerRenderer/DefaultRenderer/BottomInfoBar/UploadStatus.d.ts +6 -0
- package/modules/FileManagerRenderer/DefaultRenderer/BottomInfoBar/UploadStatus.js +51 -0
- package/modules/FileManagerRenderer/DefaultRenderer/BottomInfoBar/UploadStatus.js.map +1 -0
- package/modules/FileManagerRenderer/DefaultRenderer/BottomInfoBar.d.ts +5 -0
- package/modules/FileManagerRenderer/DefaultRenderer/BottomInfoBar.js +48 -0
- package/modules/FileManagerRenderer/DefaultRenderer/BottomInfoBar.js.map +1 -0
- package/modules/FileManagerRenderer/DefaultRenderer/DropFilesHere.d.ts +11 -0
- package/modules/FileManagerRenderer/DefaultRenderer/DropFilesHere.js +68 -0
- package/modules/FileManagerRenderer/DefaultRenderer/DropFilesHere.js.map +1 -0
- package/modules/FileManagerRenderer/DefaultRenderer/EmptyView.d.ts +7 -0
- package/modules/FileManagerRenderer/DefaultRenderer/EmptyView.js +32 -0
- package/modules/FileManagerRenderer/DefaultRenderer/EmptyView.js.map +1 -0
- package/modules/FileManagerRenderer/DefaultRenderer/File.d.ts +16 -0
- package/modules/FileManagerRenderer/DefaultRenderer/File.js +131 -0
- package/modules/FileManagerRenderer/DefaultRenderer/File.js.map +1 -0
- package/modules/FileManagerRenderer/DefaultRenderer/FileManagerView.d.ts +18 -0
- package/modules/FileManagerRenderer/DefaultRenderer/FileManagerView.js +443 -0
- package/modules/FileManagerRenderer/DefaultRenderer/FileManagerView.js.map +1 -0
- package/modules/FileManagerRenderer/DefaultRenderer/LeftSidebar.d.ts +6 -0
- package/modules/FileManagerRenderer/DefaultRenderer/LeftSidebar.js +96 -0
- package/modules/FileManagerRenderer/DefaultRenderer/LeftSidebar.js.map +1 -0
- package/modules/FileManagerRenderer/DefaultRenderer/NoPermissionView.d.ts +3 -0
- package/modules/FileManagerRenderer/DefaultRenderer/NoPermissionView.js +74 -0
- package/modules/FileManagerRenderer/DefaultRenderer/NoPermissionView.js.map +1 -0
- package/modules/FileManagerRenderer/DefaultRenderer/NoResults.d.ts +3 -0
- package/modules/FileManagerRenderer/DefaultRenderer/NoResults.js +22 -0
- package/modules/FileManagerRenderer/DefaultRenderer/NoResults.js.map +1 -0
- package/modules/FileManagerRenderer/DefaultRenderer/index.d.ts +2 -0
- package/modules/FileManagerRenderer/DefaultRenderer/index.js +70 -0
- package/modules/FileManagerRenderer/DefaultRenderer/index.js.map +1 -0
- package/modules/FileManagerRenderer/DefaultRenderer/outputFileSelectionError.d.ts +2 -0
- package/modules/FileManagerRenderer/DefaultRenderer/outputFileSelectionError.js +40 -0
- package/modules/FileManagerRenderer/DefaultRenderer/outputFileSelectionError.js.map +1 -0
- package/modules/FileManagerRenderer/FileManagerViewProvider/FileManagerViewContext.d.ts +47 -0
- package/modules/FileManagerRenderer/FileManagerViewProvider/FileManagerViewContext.js +448 -0
- package/modules/FileManagerRenderer/FileManagerViewProvider/FileManagerViewContext.js.map +1 -0
- package/modules/FileManagerRenderer/FileManagerViewProvider/index.d.ts +2 -0
- package/modules/FileManagerRenderer/FileManagerViewProvider/index.js +27 -0
- package/modules/FileManagerRenderer/FileManagerViewProvider/index.js.map +1 -0
- package/modules/FileManagerRenderer/FileManagerViewProvider/stateReducer.d.ts +63 -0
- package/modules/FileManagerRenderer/FileManagerViewProvider/stateReducer.js +100 -0
- package/modules/FileManagerRenderer/FileManagerViewProvider/stateReducer.js.map +1 -0
- package/modules/FileManagerRenderer/FileManagerViewProvider/useFileManagerView.d.ts +3 -0
- package/modules/FileManagerRenderer/FileManagerViewProvider/useFileManagerView.js +15 -0
- package/modules/FileManagerRenderer/FileManagerViewProvider/useFileManagerView.js.map +1 -0
- package/modules/FileManagerRenderer/index.d.ts +2 -0
- package/modules/FileManagerRenderer/index.js +13 -0
- package/modules/FileManagerRenderer/index.js.map +1 -0
- package/modules/FileTypes/fileDefault.d.ts +2 -0
- package/modules/FileTypes/fileDefault.js +28 -0
- package/modules/FileTypes/fileDefault.js.map +1 -0
- package/modules/FileTypes/fileImage/EditAction.d.ts +7 -0
- package/modules/FileTypes/fileImage/EditAction.js +123 -0
- package/modules/FileTypes/fileImage/EditAction.js.map +1 -0
- package/modules/FileTypes/fileImage/index.d.ts +2 -0
- package/modules/FileTypes/fileImage/index.js +37 -0
- package/modules/FileTypes/fileImage/index.js.map +1 -0
- package/modules/FileTypes/icons/edit.svg +17 -0
- package/modules/FileTypes/icons/round-description-24px.svg +1 -0
- package/modules/FileTypes/index.d.ts +1 -0
- package/modules/FileTypes/index.js +32 -0
- package/modules/FileTypes/index.js.map +1 -0
- package/modules/Settings/assets/icons/folder-open.svg +1 -0
- package/modules/Settings/graphql.d.ts +5 -0
- package/modules/Settings/graphql.js +17 -0
- package/modules/Settings/graphql.js.map +1 -0
- package/modules/Settings/index.d.ts +2 -0
- package/modules/Settings/index.js +35 -0
- package/modules/Settings/index.js.map +1 -0
- package/modules/Settings/plugins/installation.d.ts +3 -0
- package/modules/Settings/plugins/installation.js +103 -0
- package/modules/Settings/plugins/installation.js.map +1 -0
- package/modules/Settings/plugins/permissionRenderer/FileManagerPermissions.d.ts +14 -0
- package/modules/Settings/plugins/permissionRenderer/FileManagerPermissions.js +217 -0
- package/modules/Settings/plugins/permissionRenderer/FileManagerPermissions.js.map +1 -0
- package/modules/Settings/plugins/permissionRenderer/index.d.ts +3 -0
- package/modules/Settings/plugins/permissionRenderer/index.js +28 -0
- package/modules/Settings/plugins/permissionRenderer/index.js.map +1 -0
- package/modules/Settings/views/FileManagerSettings.d.ts +2 -0
- package/modules/Settings/views/FileManagerSettings.js +132 -0
- package/modules/Settings/views/FileManagerSettings.js.map +1 -0
- package/package.json +28 -16
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
9
|
+
var _react = _interopRequireDefault(require("react"));
|
|
10
|
+
var _emotion = require("emotion");
|
|
11
|
+
var _Icon = require("@webiny/ui/Icon");
|
|
12
|
+
var _i18n = require("@webiny/app/i18n");
|
|
13
|
+
var _privacy_tip = require("@material-design-icons/svg/outlined/privacy_tip.svg");
|
|
14
|
+
var _Typography = require("@webiny/ui/Typography");
|
|
15
|
+
var _templateObject, _templateObject2;
|
|
16
|
+
var t = _i18n.i18n.ns("app-admin/file-manager/file-manager-view/no-permission");
|
|
17
|
+
var styles = /*#__PURE__*/(0, _emotion.css)({
|
|
18
|
+
margin: "0 auto",
|
|
19
|
+
paddingTop: 0,
|
|
20
|
+
height: "100%",
|
|
21
|
+
zIndex: 2,
|
|
22
|
+
width: "100%",
|
|
23
|
+
position: "absolute",
|
|
24
|
+
backgroundColor: "transparent",
|
|
25
|
+
"& .outer-container": {
|
|
26
|
+
textAlign: "center",
|
|
27
|
+
width: 300,
|
|
28
|
+
height: 300,
|
|
29
|
+
backgroundColor: "var(--mdc-theme-surface)",
|
|
30
|
+
borderRadius: "50%",
|
|
31
|
+
position: "absolute",
|
|
32
|
+
left: "50%",
|
|
33
|
+
top: "50%",
|
|
34
|
+
transform: "translateX(-50%) translateY(-100%)",
|
|
35
|
+
"& .inner-container": {
|
|
36
|
+
display: "flex",
|
|
37
|
+
flexDirection: "column",
|
|
38
|
+
alignItems: "center",
|
|
39
|
+
paddingTop: 35,
|
|
40
|
+
width: 300,
|
|
41
|
+
color: "var(--mdc-theme-on-surface)",
|
|
42
|
+
"svg.mdc-button__icon": {
|
|
43
|
+
width: 100,
|
|
44
|
+
display: "inline-block",
|
|
45
|
+
color: "var(--mdc-theme-on-surface)"
|
|
46
|
+
},
|
|
47
|
+
"& .title": {
|
|
48
|
+
marginTop: 8
|
|
49
|
+
},
|
|
50
|
+
"& .body": {
|
|
51
|
+
color: "var(--mdc-theme-text-secondary-on-background)"
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}, "label:styles;");
|
|
56
|
+
var NoPermissionView = function NoPermissionView() {
|
|
57
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
58
|
+
className: styles
|
|
59
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
60
|
+
className: "outer-container"
|
|
61
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
62
|
+
className: "inner-container"
|
|
63
|
+
}, /*#__PURE__*/_react.default.createElement(_Icon.Icon, {
|
|
64
|
+
icon: /*#__PURE__*/_react.default.createElement(_privacy_tip.ReactComponent, null)
|
|
65
|
+
}), /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
|
|
66
|
+
className: "title",
|
|
67
|
+
use: "subtitle1"
|
|
68
|
+
}, t(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["Permission needed"])))), /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
|
|
69
|
+
className: "body",
|
|
70
|
+
use: "body2"
|
|
71
|
+
}, t(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["You're missing required permission to access files. Please contact the administrator."])))))));
|
|
72
|
+
};
|
|
73
|
+
var _default = NoPermissionView;
|
|
74
|
+
exports.default = _default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["t","i18n","ns","styles","css","margin","paddingTop","height","zIndex","width","position","backgroundColor","textAlign","borderRadius","left","top","transform","display","flexDirection","alignItems","color","marginTop","NoPermissionView"],"sources":["NoPermissionView.tsx"],"sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\nimport { Icon } from \"@webiny/ui/Icon\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { ReactComponent as PermissionIcon } from \"@material-design-icons/svg/outlined/privacy_tip.svg\";\nimport { Typography } from \"@webiny/ui/Typography\";\n\nconst t = i18n.ns(\"app-admin/file-manager/file-manager-view/no-permission\");\n\nconst styles = css({\n margin: \"0 auto\",\n paddingTop: 0,\n height: \"100%\",\n zIndex: 2,\n width: \"100%\",\n position: \"absolute\",\n backgroundColor: \"transparent\",\n \"& .outer-container\": {\n textAlign: \"center\",\n width: 300,\n height: 300,\n backgroundColor: \"var(--mdc-theme-surface)\",\n borderRadius: \"50%\",\n position: \"absolute\",\n left: \"50%\",\n top: \"50%\",\n transform: \"translateX(-50%) translateY(-100%)\",\n \"& .inner-container\": {\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n paddingTop: 35,\n width: 300,\n color: \"var(--mdc-theme-on-surface)\",\n \"svg.mdc-button__icon\": {\n width: 100,\n display: \"inline-block\",\n color: \"var(--mdc-theme-on-surface)\"\n },\n \"& .title\": {\n marginTop: 8\n },\n \"& .body\": {\n color: \"var(--mdc-theme-text-secondary-on-background)\"\n }\n }\n }\n});\n\nconst NoPermissionView: React.FC = () => {\n return (\n <div className={styles}>\n <div className={\"outer-container\"}>\n <div className={\"inner-container\"}>\n <Icon icon={<PermissionIcon />} />\n <Typography\n className={\"title\"}\n use={\"subtitle1\"}\n >{t`Permission needed`}</Typography>\n <Typography className={\"body\"} use={\"body2\"}>\n {t`You're missing required permission to access files. Please contact the administrator.`}\n </Typography>\n </div>\n </div>\n </div>\n );\n};\n\nexport default NoPermissionView;\n"],"mappings":";;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AAAmD;AAEnD,IAAMA,CAAC,GAAGC,UAAI,CAACC,EAAE,CAAC,wDAAwD,CAAC;AAE3E,IAAMC,MAAM,gBAAG,IAAAC,YAAG,EAAC;EACfC,MAAM,EAAE,QAAQ;EAChBC,UAAU,EAAE,CAAC;EACbC,MAAM,EAAE,MAAM;EACdC,MAAM,EAAE,CAAC;EACTC,KAAK,EAAE,MAAM;EACbC,QAAQ,EAAE,UAAU;EACpBC,eAAe,EAAE,aAAa;EAC9B,oBAAoB,EAAE;IAClBC,SAAS,EAAE,QAAQ;IACnBH,KAAK,EAAE,GAAG;IACVF,MAAM,EAAE,GAAG;IACXI,eAAe,EAAE,0BAA0B;IAC3CE,YAAY,EAAE,KAAK;IACnBH,QAAQ,EAAE,UAAU;IACpBI,IAAI,EAAE,KAAK;IACXC,GAAG,EAAE,KAAK;IACVC,SAAS,EAAE,oCAAoC;IAC/C,oBAAoB,EAAE;MAClBC,OAAO,EAAE,MAAM;MACfC,aAAa,EAAE,QAAQ;MACvBC,UAAU,EAAE,QAAQ;MACpBb,UAAU,EAAE,EAAE;MACdG,KAAK,EAAE,GAAG;MACVW,KAAK,EAAE,6BAA6B;MACpC,sBAAsB,EAAE;QACpBX,KAAK,EAAE,GAAG;QACVQ,OAAO,EAAE,cAAc;QACvBG,KAAK,EAAE;MACX,CAAC;MACD,UAAU,EAAE;QACRC,SAAS,EAAE;MACf,CAAC;MACD,SAAS,EAAE;QACPD,KAAK,EAAE;MACX;IACJ;EACJ;AACJ,CAAC,kBAAC;AAEF,IAAME,gBAA0B,GAAG,SAA7BA,gBAA0B,GAAS;EACrC,oBACI;IAAK,SAAS,EAAEnB;EAAO,gBACnB;IAAK,SAAS,EAAE;EAAkB,gBAC9B;IAAK,SAAS,EAAE;EAAkB,gBAC9B,6BAAC,UAAI;IAAC,IAAI,eAAE,6BAAC,2BAAc;EAAI,EAAG,eAClC,6BAAC,sBAAU;IACP,SAAS,EAAE,OAAQ;IACnB,GAAG,EAAE;EAAY,GACnBH,CAAC,qGAAiC,eACpC,6BAAC,sBAAU;IAAC,SAAS,EAAE,MAAO;IAAC,GAAG,EAAE;EAAQ,GACvCA,CAAC,2KACO,CACX,CACJ,CACJ;AAEd,CAAC;AAAC,eAEasB,gBAAgB;AAAA"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _emotion = require("emotion");
|
|
10
|
+
var styles = /*#__PURE__*/(0, _emotion.css)({
|
|
11
|
+
padding: "100px 0px",
|
|
12
|
+
textAlign: "center",
|
|
13
|
+
position: "absolute",
|
|
14
|
+
width: "100%"
|
|
15
|
+
}, "label:styles;");
|
|
16
|
+
var DropFilesHere = function DropFilesHere() {
|
|
17
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
18
|
+
className: styles
|
|
19
|
+
}, /*#__PURE__*/_react.default.createElement("div", null, "No results found."));
|
|
20
|
+
};
|
|
21
|
+
var _default = DropFilesHere;
|
|
22
|
+
exports.default = _default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["styles","css","padding","textAlign","position","width","DropFilesHere"],"sources":["NoResults.tsx"],"sourcesContent":["import React from \"react\";\nimport { css } from \"emotion\";\n\nconst styles = css({\n padding: \"100px 0px\",\n textAlign: \"center\",\n position: \"absolute\",\n width: \"100%\"\n});\n\nconst DropFilesHere: React.FC = () => {\n return (\n <div className={styles}>\n <div>No results found.</div>\n </div>\n );\n};\nexport default DropFilesHere;\n"],"mappings":";;;;;;;AAAA;AACA;AAEA,IAAMA,MAAM,gBAAG,IAAAC,YAAG,EAAC;EACfC,OAAO,EAAE,WAAW;EACpBC,SAAS,EAAE,QAAQ;EACnBC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACX,CAAC,kBAAC;AAEF,IAAMC,aAAuB,GAAG,SAA1BA,aAAuB,GAAS;EAClC,oBACI;IAAK,SAAS,EAAEN;EAAO,gBACnB,0CAAK,mBAAiB,CAAM,CAC1B;AAEd,CAAC;AAAC,eACaM,aAAa;AAAA"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.DefaultRenderer = void 0;
|
|
8
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
9
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
10
|
+
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
var _appAdmin = require("@webiny/app-admin");
|
|
12
|
+
var _FileManagerView = _interopRequireDefault(require("./FileManagerView"));
|
|
13
|
+
var _FileManagerViewProvider = require("../FileManagerViewProvider");
|
|
14
|
+
var _excluded = ["id", "src"],
|
|
15
|
+
_excluded2 = ["onChange", "images", "accept"];
|
|
16
|
+
/**
|
|
17
|
+
* Convert a FileItem object to a FileManagerFileItem, which is then passed to `onChange` callback.
|
|
18
|
+
*/
|
|
19
|
+
var formatFileItem = function formatFileItem(_ref) {
|
|
20
|
+
var id = _ref.id,
|
|
21
|
+
src = _ref.src,
|
|
22
|
+
rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
23
|
+
var props = rest;
|
|
24
|
+
return {
|
|
25
|
+
id: id,
|
|
26
|
+
src: src,
|
|
27
|
+
meta: Object.keys(rest).map(function (key) {
|
|
28
|
+
return {
|
|
29
|
+
key: key,
|
|
30
|
+
value: props[key]
|
|
31
|
+
};
|
|
32
|
+
})
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* If `accept` prop is not passed, and `images` prop is set, use these default mime types.
|
|
38
|
+
* Defaults can be overridden using the `createComponentPlugin` and `FileManagerRenderer` component.
|
|
39
|
+
*/
|
|
40
|
+
var imagesAccept = ["image/jpg", "image/jpeg", "image/tiff", "image/gif", "image/png", "image/webp", "image/bmp", "image/svg+xml"];
|
|
41
|
+
var DefaultRenderer = (0, _appAdmin.createComponentPlugin)(_appAdmin.FileManagerRenderer, function () {
|
|
42
|
+
return function FileManagerRenderer(props) {
|
|
43
|
+
var onChange = props.onChange,
|
|
44
|
+
images = props.images,
|
|
45
|
+
accept = props.accept,
|
|
46
|
+
forwardProps = (0, _objectWithoutProperties2.default)(props, _excluded2);
|
|
47
|
+
var handleFileOnChange = function handleFileOnChange(value) {
|
|
48
|
+
if (!onChange || !value || Array.isArray(value) && !value.length) {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
if (Array.isArray(value)) {
|
|
52
|
+
var finalValue = value.map(formatFileItem);
|
|
53
|
+
onChange(finalValue);
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
onChange(formatFileItem(value));
|
|
57
|
+
};
|
|
58
|
+
var viewProps = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, forwardProps), {}, {
|
|
59
|
+
onChange: typeof onChange === "function" ? handleFileOnChange : undefined,
|
|
60
|
+
accept: images ? accept || imagesAccept : accept || []
|
|
61
|
+
});
|
|
62
|
+
return /*#__PURE__*/_react.default.createElement(_FileManagerViewProvider.FileManagerViewProvider, {
|
|
63
|
+
accept: viewProps.accept || [],
|
|
64
|
+
tags: viewProps.tags || [],
|
|
65
|
+
scope: viewProps.scope,
|
|
66
|
+
own: viewProps.own
|
|
67
|
+
}, /*#__PURE__*/_react.default.createElement(_FileManagerView.default, viewProps));
|
|
68
|
+
};
|
|
69
|
+
});
|
|
70
|
+
exports.DefaultRenderer = DefaultRenderer;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["formatFileItem","id","src","rest","props","meta","Object","keys","map","key","value","imagesAccept","DefaultRenderer","createComponentPlugin","BaseFileManagerRenderer","FileManagerRenderer","onChange","images","accept","forwardProps","handleFileOnChange","Array","isArray","length","finalValue","viewProps","undefined","tags","scope","own"],"sources":["index.tsx"],"sourcesContent":["import React from \"react\";\nimport {\n createComponentPlugin,\n FileManagerFileItem,\n FileManagerOnChange,\n FileManagerRenderer as BaseFileManagerRenderer\n} from \"@webiny/app-admin\";\nimport { FileItem } from \"@webiny/app-admin/types\";\nimport FileManagerView, { FileManagerViewProps } from \"./FileManagerView\";\nimport { FileManagerViewProvider } from \"../FileManagerViewProvider\";\n\n/**\n * Convert a FileItem object to a FileManagerFileItem, which is then passed to `onChange` callback.\n */\nconst formatFileItem = ({ id, src, ...rest }: FileItem): FileManagerFileItem => {\n const props: { [key: string]: any } = rest;\n\n return {\n id,\n src,\n meta: Object.keys(rest).map(key => ({ key, value: props[key] }))\n };\n};\n\n/**\n * If `accept` prop is not passed, and `images` prop is set, use these default mime types.\n * Defaults can be overridden using the `createComponentPlugin` and `FileManagerRenderer` component.\n */\nconst imagesAccept = [\n \"image/jpg\",\n \"image/jpeg\",\n \"image/tiff\",\n \"image/gif\",\n \"image/png\",\n \"image/webp\",\n \"image/bmp\",\n \"image/svg+xml\"\n];\n\nexport const DefaultRenderer = createComponentPlugin(BaseFileManagerRenderer, () => {\n return function FileManagerRenderer(props) {\n const { onChange, images, accept, ...forwardProps } = props;\n\n const handleFileOnChange = (value?: FileItem[] | FileItem) => {\n if (!onChange || !value || (Array.isArray(value) && !value.length)) {\n return;\n }\n\n if (Array.isArray(value)) {\n const finalValue: FileManagerFileItem[] = value.map(formatFileItem);\n (onChange as FileManagerOnChange<FileManagerFileItem[]>)(finalValue);\n return;\n }\n\n (onChange as FileManagerOnChange<FileManagerFileItem>)(formatFileItem(value));\n };\n\n const viewProps: FileManagerViewProps = {\n ...forwardProps,\n onChange: typeof onChange === \"function\" ? handleFileOnChange : undefined,\n accept: images ? accept || imagesAccept : accept || []\n };\n\n return (\n <FileManagerViewProvider\n accept={viewProps.accept || []}\n tags={viewProps.tags || []}\n scope={viewProps.scope}\n own={viewProps.own}\n >\n <FileManagerView {...viewProps} />\n </FileManagerViewProvider>\n );\n };\n});\n"],"mappings":";;;;;;;;;AAAA;AACA;AAOA;AACA;AAAqE;EAAA;AAErE;AACA;AACA;AACA,IAAMA,cAAc,GAAG,SAAjBA,cAAc,OAA4D;EAAA,IAAtDC,EAAE,QAAFA,EAAE;IAAEC,GAAG,QAAHA,GAAG;IAAKC,IAAI;EACtC,IAAMC,KAA6B,GAAGD,IAAI;EAE1C,OAAO;IACHF,EAAE,EAAFA,EAAE;IACFC,GAAG,EAAHA,GAAG;IACHG,IAAI,EAAEC,MAAM,CAACC,IAAI,CAACJ,IAAI,CAAC,CAACK,GAAG,CAAC,UAAAC,GAAG;MAAA,OAAK;QAAEA,GAAG,EAAHA,GAAG;QAAEC,KAAK,EAAEN,KAAK,CAACK,GAAG;MAAE,CAAC;IAAA,CAAC;EACnE,CAAC;AACL,CAAC;;AAED;AACA;AACA;AACA;AACA,IAAME,YAAY,GAAG,CACjB,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,WAAW,EACX,YAAY,EACZ,WAAW,EACX,eAAe,CAClB;AAEM,IAAMC,eAAe,GAAG,IAAAC,+BAAqB,EAACC,6BAAuB,EAAE,YAAM;EAChF,OAAO,SAASC,mBAAmB,CAACX,KAAK,EAAE;IACvC,IAAQY,QAAQ,GAAsCZ,KAAK,CAAnDY,QAAQ;MAAEC,MAAM,GAA8Bb,KAAK,CAAzCa,MAAM;MAAEC,MAAM,GAAsBd,KAAK,CAAjCc,MAAM;MAAKC,YAAY,0CAAKf,KAAK;IAE3D,IAAMgB,kBAAkB,GAAG,SAArBA,kBAAkB,CAAIV,KAA6B,EAAK;MAC1D,IAAI,CAACM,QAAQ,IAAI,CAACN,KAAK,IAAKW,KAAK,CAACC,OAAO,CAACZ,KAAK,CAAC,IAAI,CAACA,KAAK,CAACa,MAAO,EAAE;QAChE;MACJ;MAEA,IAAIF,KAAK,CAACC,OAAO,CAACZ,KAAK,CAAC,EAAE;QACtB,IAAMc,UAAiC,GAAGd,KAAK,CAACF,GAAG,CAACR,cAAc,CAAC;QAClEgB,QAAQ,CAAgDQ,UAAU,CAAC;QACpE;MACJ;MAECR,QAAQ,CAA8ChB,cAAc,CAACU,KAAK,CAAC,CAAC;IACjF,CAAC;IAED,IAAMe,SAA+B,+DAC9BN,YAAY;MACfH,QAAQ,EAAE,OAAOA,QAAQ,KAAK,UAAU,GAAGI,kBAAkB,GAAGM,SAAS;MACzER,MAAM,EAAED,MAAM,GAAGC,MAAM,IAAIP,YAAY,GAAGO,MAAM,IAAI;IAAE,EACzD;IAED,oBACI,6BAAC,gDAAuB;MACpB,MAAM,EAAEO,SAAS,CAACP,MAAM,IAAI,EAAG;MAC/B,IAAI,EAAEO,SAAS,CAACE,IAAI,IAAI,EAAG;MAC3B,KAAK,EAAEF,SAAS,CAACG,KAAM;MACvB,GAAG,EAAEH,SAAS,CAACI;IAAI,gBAEnB,6BAAC,wBAAe,EAAKJ,SAAS,CAAI,CACZ;EAElC,CAAC;AACL,CAAC,CAAC;AAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.outputFileSelectionError = void 0;
|
|
8
|
+
var _bytes = _interopRequireDefault(require("bytes"));
|
|
9
|
+
var outputFileSelectionError = function outputFileSelectionError(errors) {
|
|
10
|
+
if (errors.length > 1) {
|
|
11
|
+
var error = errors.find(function (error) {
|
|
12
|
+
return error.type === "multipleMaxCountExceeded";
|
|
13
|
+
});
|
|
14
|
+
if (error) {
|
|
15
|
+
return "Cannot upload more than ".concat(error.multipleMaxCount, " files at once.");
|
|
16
|
+
}
|
|
17
|
+
error = errors.find(function (error) {
|
|
18
|
+
return error.type === "multipleMaxSizeExceeded";
|
|
19
|
+
});
|
|
20
|
+
if (error) {
|
|
21
|
+
return "Cannot upload more than ".concat(_bytes.default.format(error.multipleMaxSize), " at once.");
|
|
22
|
+
}
|
|
23
|
+
return "Multiple invalid files selected.";
|
|
24
|
+
}
|
|
25
|
+
switch (errors[0].type) {
|
|
26
|
+
case "unsupportedFileType":
|
|
27
|
+
return "Unsupported file type.";
|
|
28
|
+
case "maxSizeExceeded":
|
|
29
|
+
return "Max size exceeded.";
|
|
30
|
+
case "multipleMaxCountExceeded":
|
|
31
|
+
return "Multiple max files exceeded.";
|
|
32
|
+
case "multipleMaxSizeExceeded":
|
|
33
|
+
return "Multiple max size exceeded.";
|
|
34
|
+
case "multipleNotAllowed":
|
|
35
|
+
return "Only one file allowed.";
|
|
36
|
+
default:
|
|
37
|
+
return null;
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
exports.outputFileSelectionError = outputFileSelectionError;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["outputFileSelectionError","errors","length","error","find","type","multipleMaxCount","bytes","format","multipleMaxSize"],"sources":["outputFileSelectionError.ts"],"sourcesContent":["import bytes from \"bytes\";\nimport { FileError } from \"react-butterfiles\";\n\nexport const outputFileSelectionError = (errors: FileError[]): string | null => {\n if (errors.length > 1) {\n let error = errors.find(error => error.type === \"multipleMaxCountExceeded\");\n if (error) {\n return `Cannot upload more than ${error.multipleMaxCount} files at once.`;\n }\n\n error = errors.find(error => error.type === \"multipleMaxSizeExceeded\");\n if (error) {\n return `Cannot upload more than ${bytes.format(error.multipleMaxSize)} at once.`;\n }\n\n return \"Multiple invalid files selected.\";\n }\n\n switch (errors[0].type) {\n case \"unsupportedFileType\":\n return \"Unsupported file type.\";\n case \"maxSizeExceeded\":\n return \"Max size exceeded.\";\n case \"multipleMaxCountExceeded\":\n return \"Multiple max files exceeded.\";\n case \"multipleMaxSizeExceeded\":\n return \"Multiple max size exceeded.\";\n case \"multipleNotAllowed\":\n return \"Only one file allowed.\";\n default:\n return null;\n }\n};\n"],"mappings":";;;;;;;AAAA;AAGO,IAAMA,wBAAwB,GAAG,SAA3BA,wBAAwB,CAAIC,MAAmB,EAAoB;EAC5E,IAAIA,MAAM,CAACC,MAAM,GAAG,CAAC,EAAE;IACnB,IAAIC,KAAK,GAAGF,MAAM,CAACG,IAAI,CAAC,UAAAD,KAAK;MAAA,OAAIA,KAAK,CAACE,IAAI,KAAK,0BAA0B;IAAA,EAAC;IAC3E,IAAIF,KAAK,EAAE;MACP,yCAAkCA,KAAK,CAACG,gBAAgB;IAC5D;IAEAH,KAAK,GAAGF,MAAM,CAACG,IAAI,CAAC,UAAAD,KAAK;MAAA,OAAIA,KAAK,CAACE,IAAI,KAAK,yBAAyB;IAAA,EAAC;IACtE,IAAIF,KAAK,EAAE;MACP,yCAAkCI,cAAK,CAACC,MAAM,CAACL,KAAK,CAACM,eAAe,CAAC;IACzE;IAEA,OAAO,kCAAkC;EAC7C;EAEA,QAAQR,MAAM,CAAC,CAAC,CAAC,CAACI,IAAI;IAClB,KAAK,qBAAqB;MACtB,OAAO,wBAAwB;IACnC,KAAK,iBAAiB;MAClB,OAAO,oBAAoB;IAC/B,KAAK,0BAA0B;MAC3B,OAAO,8BAA8B;IACzC,KAAK,yBAAyB;MAC1B,OAAO,6BAA6B;IACxC,KAAK,oBAAoB;MACrB,OAAO,wBAAwB;IACnC;MACI,OAAO,IAAI;EAAC;AAExB,CAAC;AAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/// <reference types="web" />
|
|
2
|
+
import React from "react";
|
|
3
|
+
import { FileItem } from "@webiny/app-admin/types";
|
|
4
|
+
import { Settings } from "../../../types";
|
|
5
|
+
import { Action, State, StateQueryParams } from "./stateReducer";
|
|
6
|
+
export declare const getWhere: (scope: string | undefined) => {
|
|
7
|
+
tag_not_startsWith: string;
|
|
8
|
+
tag_startsWith?: undefined;
|
|
9
|
+
} | {
|
|
10
|
+
tag_startsWith: string;
|
|
11
|
+
tag_not_startsWith?: undefined;
|
|
12
|
+
};
|
|
13
|
+
export interface FileManagerViewContextData<TFileItem extends FileItem = FileItem> {
|
|
14
|
+
state: State;
|
|
15
|
+
dispatch: React.Dispatch<Action>;
|
|
16
|
+
createFile: (data: TFileItem) => Promise<TFileItem | undefined>;
|
|
17
|
+
updateFile: (id: string, data: Partial<TFileItem>) => Promise<void>;
|
|
18
|
+
deleteFile: (id: string) => Promise<void>;
|
|
19
|
+
uploadFile: (file: File) => Promise<TFileItem | undefined>;
|
|
20
|
+
files: TFileItem[];
|
|
21
|
+
loadingFiles: boolean;
|
|
22
|
+
loadMore: () => void;
|
|
23
|
+
tags: string[];
|
|
24
|
+
settings: Settings | undefined;
|
|
25
|
+
selected: TFileItem[];
|
|
26
|
+
toggleSelected: (file: TFileItem) => void;
|
|
27
|
+
hasPreviouslyUploadedFiles: boolean | null;
|
|
28
|
+
setHasPreviouslyUploadedFiles: (flag: boolean) => void;
|
|
29
|
+
queryParams: StateQueryParams;
|
|
30
|
+
setQueryParams: (queryParams: StateQueryParams) => void;
|
|
31
|
+
dragging: boolean;
|
|
32
|
+
setDragging: (state: boolean) => void;
|
|
33
|
+
uploading: boolean;
|
|
34
|
+
setUploading: (state: boolean) => void;
|
|
35
|
+
showFileDetails: (id: string) => void;
|
|
36
|
+
showingFileDetails: string | null;
|
|
37
|
+
hideFileDetails: () => void;
|
|
38
|
+
}
|
|
39
|
+
export declare const FileManagerViewContext: React.Context<FileManagerViewContextData<FileItem> | undefined>;
|
|
40
|
+
export interface FileManagerViewProviderProps {
|
|
41
|
+
accept: string[];
|
|
42
|
+
tags: string[];
|
|
43
|
+
scope?: string;
|
|
44
|
+
own?: boolean;
|
|
45
|
+
children: React.ReactNode;
|
|
46
|
+
}
|
|
47
|
+
export declare const FileManagerViewProvider: ({ children, ...props }: FileManagerViewProviderProps) => JSX.Element;
|