@payloadcms/plugin-cloud-storage 1.1.1 → 1.1.2-beta.0

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.
Files changed (138) hide show
  1. package/.eslintrc.js +29 -6
  2. package/README.md +25 -24
  3. package/dist/adapters/azure/generateURL.d.ts +3 -2
  4. package/dist/adapters/azure/generateURL.d.ts.map +1 -0
  5. package/dist/adapters/azure/generateURL.js +19 -14
  6. package/dist/adapters/azure/handleDelete.d.ts +2 -1
  7. package/dist/adapters/azure/handleDelete.d.ts.map +1 -0
  8. package/dist/adapters/azure/handleDelete.js +20 -60
  9. package/dist/adapters/azure/handleUpload.d.ts +1 -0
  10. package/dist/adapters/azure/handleUpload.d.ts.map +1 -0
  11. package/dist/adapters/azure/handleUpload.js +36 -75
  12. package/dist/adapters/azure/index.d.ts +4 -3
  13. package/dist/adapters/azure/index.d.ts.map +1 -0
  14. package/dist/adapters/azure/index.js +51 -38
  15. package/dist/adapters/azure/mock.js +12 -5
  16. package/dist/adapters/azure/staticHandler.d.ts +3 -2
  17. package/dist/adapters/azure/staticHandler.d.ts.map +1 -0
  18. package/dist/adapters/azure/staticHandler.js +39 -78
  19. package/dist/adapters/azure/webpack.d.ts +1 -0
  20. package/dist/adapters/azure/webpack.d.ts.map +1 -0
  21. package/dist/adapters/azure/webpack.js +30 -20
  22. package/dist/adapters/gcs/generateURL.d.ts +4 -3
  23. package/dist/adapters/gcs/generateURL.d.ts.map +1 -0
  24. package/dist/adapters/gcs/generateURL.js +19 -14
  25. package/dist/adapters/gcs/handleDelete.d.ts +4 -3
  26. package/dist/adapters/gcs/handleDelete.d.ts.map +1 -0
  27. package/dist/adapters/gcs/handleDelete.js +20 -58
  28. package/dist/adapters/gcs/handleUpload.d.ts +5 -4
  29. package/dist/adapters/gcs/handleUpload.d.ts.map +1 -0
  30. package/dist/adapters/gcs/handleUpload.js +28 -69
  31. package/dist/adapters/gcs/index.d.ts +4 -3
  32. package/dist/adapters/gcs/index.d.ts.map +1 -0
  33. package/dist/adapters/gcs/index.js +42 -30
  34. package/dist/adapters/gcs/mock.js +12 -5
  35. package/dist/adapters/gcs/staticHandler.d.ts +3 -2
  36. package/dist/adapters/gcs/staticHandler.d.ts.map +1 -0
  37. package/dist/adapters/gcs/staticHandler.js +36 -74
  38. package/dist/adapters/gcs/webpack.d.ts +1 -0
  39. package/dist/adapters/gcs/webpack.d.ts.map +1 -0
  40. package/dist/adapters/gcs/webpack.js +30 -20
  41. package/dist/adapters/s3/generateURL.d.ts +3 -2
  42. package/dist/adapters/s3/generateURL.d.ts.map +1 -0
  43. package/dist/adapters/s3/generateURL.js +19 -14
  44. package/dist/adapters/s3/handleDelete.d.ts +3 -2
  45. package/dist/adapters/s3/handleDelete.d.ts.map +1 -0
  46. package/dist/adapters/s3/handleDelete.js +21 -59
  47. package/dist/adapters/s3/handleUpload.d.ts +5 -4
  48. package/dist/adapters/s3/handleUpload.d.ts.map +1 -0
  49. package/dist/adapters/s3/handleUpload.js +46 -88
  50. package/dist/adapters/s3/index.d.ts +9 -8
  51. package/dist/adapters/s3/index.d.ts.map +1 -0
  52. package/dist/adapters/s3/index.js +79 -51
  53. package/dist/adapters/s3/mock.js +12 -5
  54. package/dist/adapters/s3/staticHandler.d.ts +3 -2
  55. package/dist/adapters/s3/staticHandler.d.ts.map +1 -0
  56. package/dist/adapters/s3/staticHandler.js +42 -78
  57. package/dist/adapters/s3/webpack.d.ts +1 -0
  58. package/dist/adapters/s3/webpack.d.ts.map +1 -0
  59. package/dist/adapters/s3/webpack.js +47 -20
  60. package/dist/admin/fields/getFields.d.ts +1 -0
  61. package/dist/admin/fields/getFields.d.ts.map +1 -0
  62. package/dist/admin/fields/getFields.js +71 -60
  63. package/dist/admin/index.d.ts +1 -0
  64. package/dist/admin/index.d.ts.map +1 -0
  65. package/dist/admin/index.js +30 -30
  66. package/dist/fields/getFields.d.ts +3 -2
  67. package/dist/fields/getFields.d.ts.map +1 -0
  68. package/dist/fields/getFields.js +95 -77
  69. package/dist/hooks/afterDelete.d.ts +4 -4
  70. package/dist/hooks/afterDelete.d.ts.map +1 -0
  71. package/dist/hooks/afterDelete.js +30 -87
  72. package/dist/hooks/afterRead.d.ts +6 -6
  73. package/dist/hooks/afterRead.d.ts.map +1 -0
  74. package/dist/hooks/afterRead.js +29 -76
  75. package/dist/hooks/beforeChange.d.ts +4 -4
  76. package/dist/hooks/beforeChange.d.ts.map +1 -0
  77. package/dist/hooks/beforeChange.js +54 -101
  78. package/dist/index.d.ts +1 -0
  79. package/dist/index.d.ts.map +1 -0
  80. package/dist/index.js +12 -5
  81. package/dist/plugin.d.ts +1 -0
  82. package/dist/plugin.d.ts.map +1 -0
  83. package/dist/plugin.js +74 -113
  84. package/dist/types.d.ts +12 -11
  85. package/dist/types.d.ts.map +1 -0
  86. package/dist/types.js +5 -2
  87. package/dist/utilities/getFilePrefix.d.ts +3 -2
  88. package/dist/utilities/getFilePrefix.d.ts.map +1 -0
  89. package/dist/utilities/getFilePrefix.js +29 -76
  90. package/dist/utilities/getIncomingFiles.d.ts +3 -3
  91. package/dist/utilities/getIncomingFiles.d.ts.map +1 -0
  92. package/dist/utilities/getIncomingFiles.js +27 -22
  93. package/dist/utilities/getRangeFromHeader.d.ts +2 -1
  94. package/dist/utilities/getRangeFromHeader.d.ts.map +1 -0
  95. package/dist/utilities/getRangeFromHeader.js +34 -64
  96. package/dist/webpack.d.ts +1 -0
  97. package/dist/webpack.d.ts.map +1 -0
  98. package/dist/webpack.js +33 -33
  99. package/package.json +17 -19
  100. package/.prettierrc.js +0 -8
  101. package/.vscode/launch.json +0 -40
  102. package/dist/adapters/azure/generateURL.js.map +0 -1
  103. package/dist/adapters/azure/handleDelete.js.map +0 -1
  104. package/dist/adapters/azure/handleUpload.js.map +0 -1
  105. package/dist/adapters/azure/index.js.map +0 -1
  106. package/dist/adapters/azure/mock.d.ts +0 -1
  107. package/dist/adapters/azure/mock.js.map +0 -1
  108. package/dist/adapters/azure/staticHandler.js.map +0 -1
  109. package/dist/adapters/azure/webpack.js.map +0 -1
  110. package/dist/adapters/gcs/generateURL.js.map +0 -1
  111. package/dist/adapters/gcs/handleDelete.js.map +0 -1
  112. package/dist/adapters/gcs/handleUpload.js.map +0 -1
  113. package/dist/adapters/gcs/index.js.map +0 -1
  114. package/dist/adapters/gcs/mock.d.ts +0 -1
  115. package/dist/adapters/gcs/mock.js.map +0 -1
  116. package/dist/adapters/gcs/staticHandler.js.map +0 -1
  117. package/dist/adapters/gcs/webpack.js.map +0 -1
  118. package/dist/adapters/s3/generateURL.js.map +0 -1
  119. package/dist/adapters/s3/handleDelete.js.map +0 -1
  120. package/dist/adapters/s3/handleUpload.js.map +0 -1
  121. package/dist/adapters/s3/index.js.map +0 -1
  122. package/dist/adapters/s3/mock.d.ts +0 -1
  123. package/dist/adapters/s3/mock.js.map +0 -1
  124. package/dist/adapters/s3/staticHandler.js.map +0 -1
  125. package/dist/adapters/s3/webpack.js.map +0 -1
  126. package/dist/admin/fields/getFields.js.map +0 -1
  127. package/dist/admin/index.js.map +0 -1
  128. package/dist/fields/getFields.js.map +0 -1
  129. package/dist/hooks/afterDelete.js.map +0 -1
  130. package/dist/hooks/afterRead.js.map +0 -1
  131. package/dist/hooks/beforeChange.js.map +0 -1
  132. package/dist/index.js.map +0 -1
  133. package/dist/plugin.js.map +0 -1
  134. package/dist/types.js.map +0 -1
  135. package/dist/utilities/getFilePrefix.js.map +0 -1
  136. package/dist/utilities/getIncomingFiles.js.map +0 -1
  137. package/dist/utilities/getRangeFromHeader.js.map +0 -1
  138. package/dist/webpack.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"beforeChange.d.ts","sourceRoot":"","sources":["../../src/hooks/beforeChange.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AACzD,OAAO,KAAK,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAEjF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAIhD,UAAU,IAAI;IACZ,OAAO,EAAE,gBAAgB,CAAA;IACzB,UAAU,EAAE,gBAAgB,CAAA;CAC7B;AAED,eAAO,MAAM,mBAAmB,4BACJ,IAAI,KAAG,2BAA2B,QAAQ,GAAG,UAAU,CA8ChF,CAAA"}
@@ -1,106 +1,59 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
- function verb(n) { return function (v) { return step([n, v]); }; }
15
- function step(op) {
16
- if (f) throw new TypeError("Generator is already executing.");
17
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
- if (y = 0, t) op = [op[0] & 2, t.value];
20
- switch (op[0]) {
21
- case 0: case 1: t = op; break;
22
- case 4: _.label++; return { value: op[1], done: false };
23
- case 5: _.label++; y = op[1]; op = [0]; continue;
24
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
- default:
26
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
- if (t[2]) _.ops.pop();
31
- _.trys.pop(); continue;
32
- }
33
- op = body.call(thisArg, _);
34
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "getBeforeChangeHook", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return getBeforeChangeHook;
36
9
  }
37
- };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.getBeforeChangeHook = void 0;
40
- var getIncomingFiles_1 = require("../utilities/getIncomingFiles");
41
- var getBeforeChangeHook = function (_a) {
42
- var collection = _a.collection, adapter = _a.adapter;
43
- return function (_a) {
44
- var req = _a.req, data = _a.data, originalDoc = _a.originalDoc;
45
- return __awaiter(void 0, void 0, void 0, function () {
46
- var files, filesToDelete, deletionPromises, promises, err_1;
47
- return __generator(this, function (_b) {
48
- switch (_b.label) {
49
- case 0:
50
- _b.trys.push([0, 5, , 6]);
51
- files = (0, getIncomingFiles_1.getIncomingFiles)({ req: req, data: data });
52
- if (!(files.length > 0)) return [3 /*break*/, 4];
53
- if (!originalDoc) return [3 /*break*/, 2];
54
- filesToDelete = [];
55
- if (typeof (originalDoc === null || originalDoc === void 0 ? void 0 : originalDoc.filename) === 'string') {
56
- filesToDelete.push(originalDoc.filename);
57
- }
58
- if (typeof originalDoc.sizes === 'object') {
59
- filesToDelete = filesToDelete.concat(Object.values((originalDoc === null || originalDoc === void 0 ? void 0 : originalDoc.sizes) || []).map(function (resizedFileData) { return resizedFileData === null || resizedFileData === void 0 ? void 0 : resizedFileData.filename; }));
60
- }
61
- deletionPromises = filesToDelete.map(function (filename) { return __awaiter(void 0, void 0, void 0, function () {
62
- return __generator(this, function (_a) {
63
- switch (_a.label) {
64
- case 0:
65
- if (!filename) return [3 /*break*/, 2];
66
- return [4 /*yield*/, adapter.handleDelete({ collection: collection, doc: originalDoc, req: req, filename: filename })];
67
- case 1:
68
- _a.sent();
69
- _a.label = 2;
70
- case 2: return [2 /*return*/];
71
- }
72
- });
73
- }); });
74
- return [4 /*yield*/, Promise.all(deletionPromises)];
75
- case 1:
76
- _b.sent();
77
- _b.label = 2;
78
- case 2:
79
- promises = files.map(function (file) { return __awaiter(void 0, void 0, void 0, function () {
80
- return __generator(this, function (_a) {
81
- switch (_a.label) {
82
- case 0: return [4 /*yield*/, adapter.handleUpload({ collection: collection, data: data, req: req, file: file })];
83
- case 1:
84
- _a.sent();
85
- return [2 /*return*/];
86
- }
10
+ });
11
+ const _getIncomingFiles = require("../utilities/getIncomingFiles");
12
+ const getBeforeChangeHook = ({ adapter, collection })=>async ({ data, originalDoc, req })=>{
13
+ try {
14
+ const files = (0, _getIncomingFiles.getIncomingFiles)({
15
+ data,
16
+ req
17
+ });
18
+ if (files.length > 0) {
19
+ // If there is an original doc,
20
+ // And we have new files,
21
+ // We need to delete the old files before uploading new
22
+ if (originalDoc) {
23
+ let filesToDelete = [];
24
+ if (typeof originalDoc?.filename === 'string') {
25
+ filesToDelete.push(originalDoc.filename);
26
+ }
27
+ if (typeof originalDoc.sizes === 'object') {
28
+ filesToDelete = filesToDelete.concat(Object.values(originalDoc?.sizes || []).map((resizedFileData)=>resizedFileData?.filename));
29
+ }
30
+ const deletionPromises = filesToDelete.map(async (filename)=>{
31
+ if (filename) {
32
+ await adapter.handleDelete({
33
+ collection,
34
+ doc: originalDoc,
35
+ filename,
36
+ req
87
37
  });
88
- }); });
89
- return [4 /*yield*/, Promise.all(promises)];
90
- case 3:
91
- _b.sent();
92
- _b.label = 4;
93
- case 4: return [3 /*break*/, 6];
94
- case 5:
95
- err_1 = _b.sent();
96
- req.payload.logger.error("There was an error while uploading files corresponding to the collection ".concat(collection.slug, " with filename ").concat(data.filename, ":"));
97
- req.payload.logger.error(err_1);
98
- return [3 /*break*/, 6];
99
- case 6: return [2 /*return*/, data];
38
+ }
39
+ });
40
+ await Promise.all(deletionPromises);
100
41
  }
101
- });
102
- });
42
+ const promises = files.map(async (file)=>{
43
+ await adapter.handleUpload({
44
+ collection,
45
+ data,
46
+ file,
47
+ req
48
+ });
49
+ });
50
+ await Promise.all(promises);
51
+ }
52
+ } catch (err) {
53
+ req.payload.logger.error(`There was an error while uploading files corresponding to the collection ${collection.slug} with filename ${data.filename}:`);
54
+ req.payload.logger.error(err);
55
+ }
56
+ return data;
103
57
  };
104
- };
105
- exports.getBeforeChangeHook = getBeforeChangeHook;
106
- //# sourceMappingURL=beforeChange.js.map
58
+
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ob29rcy9iZWZvcmVDaGFuZ2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBGaWxlRGF0YSwgVHlwZVdpdGhJRCB9IGZyb20gJ3BheWxvYWQvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IENvbGxlY3Rpb25CZWZvcmVDaGFuZ2VIb29rLCBDb2xsZWN0aW9uQ29uZmlnIH0gZnJvbSAncGF5bG9hZC90eXBlcydcblxuaW1wb3J0IHR5cGUgeyBHZW5lcmF0ZWRBZGFwdGVyIH0gZnJvbSAnLi4vdHlwZXMnXG5cbmltcG9ydCB7IGdldEluY29taW5nRmlsZXMgfSBmcm9tICcuLi91dGlsaXRpZXMvZ2V0SW5jb21pbmdGaWxlcydcblxuaW50ZXJmYWNlIEFyZ3Mge1xuICBhZGFwdGVyOiBHZW5lcmF0ZWRBZGFwdGVyXG4gIGNvbGxlY3Rpb246IENvbGxlY3Rpb25Db25maWdcbn1cblxuZXhwb3J0IGNvbnN0IGdldEJlZm9yZUNoYW5nZUhvb2sgPVxuICAoeyBhZGFwdGVyLCBjb2xsZWN0aW9uIH06IEFyZ3MpOiBDb2xsZWN0aW9uQmVmb3JlQ2hhbmdlSG9vazxGaWxlRGF0YSAmIFR5cGVXaXRoSUQ+ID0+XG4gIGFzeW5jICh7IGRhdGEsIG9yaWdpbmFsRG9jLCByZXEgfSkgPT4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBmaWxlcyA9IGdldEluY29taW5nRmlsZXMoeyBkYXRhLCByZXEgfSlcblxuICAgICAgaWYgKGZpbGVzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgLy8gSWYgdGhlcmUgaXMgYW4gb3JpZ2luYWwgZG9jLFxuICAgICAgICAvLyBBbmQgd2UgaGF2ZSBuZXcgZmlsZXMsXG4gICAgICAgIC8vIFdlIG5lZWQgdG8gZGVsZXRlIHRoZSBvbGQgZmlsZXMgYmVmb3JlIHVwbG9hZGluZyBuZXdcbiAgICAgICAgaWYgKG9yaWdpbmFsRG9jKSB7XG4gICAgICAgICAgbGV0IGZpbGVzVG9EZWxldGU6IHN0cmluZ1tdID0gW11cblxuICAgICAgICAgIGlmICh0eXBlb2Ygb3JpZ2luYWxEb2M/LmZpbGVuYW1lID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgZmlsZXNUb0RlbGV0ZS5wdXNoKG9yaWdpbmFsRG9jLmZpbGVuYW1lKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICh0eXBlb2Ygb3JpZ2luYWxEb2Muc2l6ZXMgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICBmaWxlc1RvRGVsZXRlID0gZmlsZXNUb0RlbGV0ZS5jb25jYXQoXG4gICAgICAgICAgICAgIE9iamVjdC52YWx1ZXMob3JpZ2luYWxEb2M/LnNpemVzIHx8IFtdKS5tYXAoXG4gICAgICAgICAgICAgICAgKHJlc2l6ZWRGaWxlRGF0YSkgPT4gcmVzaXplZEZpbGVEYXRhPy5maWxlbmFtZSxcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBkZWxldGlvblByb21pc2VzID0gZmlsZXNUb0RlbGV0ZS5tYXAoYXN5bmMgKGZpbGVuYW1lKSA9PiB7XG4gICAgICAgICAgICBpZiAoZmlsZW5hbWUpIHtcbiAgICAgICAgICAgICAgYXdhaXQgYWRhcHRlci5oYW5kbGVEZWxldGUoeyBjb2xsZWN0aW9uLCBkb2M6IG9yaWdpbmFsRG9jLCBmaWxlbmFtZSwgcmVxIH0pXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSlcblxuICAgICAgICAgIGF3YWl0IFByb21pc2UuYWxsKGRlbGV0aW9uUHJvbWlzZXMpXG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBwcm9taXNlcyA9IGZpbGVzLm1hcChhc3luYyAoZmlsZSkgPT4ge1xuICAgICAgICAgIGF3YWl0IGFkYXB0ZXIuaGFuZGxlVXBsb2FkKHsgY29sbGVjdGlvbiwgZGF0YSwgZmlsZSwgcmVxIH0pXG4gICAgICAgIH0pXG5cbiAgICAgICAgYXdhaXQgUHJvbWlzZS5hbGwocHJvbWlzZXMpXG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyOiB1bmtub3duKSB7XG4gICAgICByZXEucGF5bG9hZC5sb2dnZXIuZXJyb3IoXG4gICAgICAgIGBUaGVyZSB3YXMgYW4gZXJyb3Igd2hpbGUgdXBsb2FkaW5nIGZpbGVzIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGNvbGxlY3Rpb24gJHtjb2xsZWN0aW9uLnNsdWd9IHdpdGggZmlsZW5hbWUgJHtkYXRhLmZpbGVuYW1lfTpgLFxuICAgICAgKVxuICAgICAgcmVxLnBheWxvYWQubG9nZ2VyLmVycm9yKGVycilcbiAgICB9XG4gICAgcmV0dXJuIGRhdGFcbiAgfVxuIl0sIm5hbWVzIjpbImdldEJlZm9yZUNoYW5nZUhvb2siLCJhZGFwdGVyIiwiY29sbGVjdGlvbiIsImRhdGEiLCJvcmlnaW5hbERvYyIsInJlcSIsImZpbGVzIiwiZ2V0SW5jb21pbmdGaWxlcyIsImxlbmd0aCIsImZpbGVzVG9EZWxldGUiLCJmaWxlbmFtZSIsInB1c2giLCJzaXplcyIsImNvbmNhdCIsIk9iamVjdCIsInZhbHVlcyIsIm1hcCIsInJlc2l6ZWRGaWxlRGF0YSIsImRlbGV0aW9uUHJvbWlzZXMiLCJoYW5kbGVEZWxldGUiLCJkb2MiLCJQcm9taXNlIiwiYWxsIiwicHJvbWlzZXMiLCJmaWxlIiwiaGFuZGxlVXBsb2FkIiwiZXJyIiwicGF5bG9hZCIsImxvZ2dlciIsImVycm9yIiwic2x1ZyJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFZYUE7OztlQUFBQTs7O2tDQVBvQjtBQU8xQixNQUFNQSxzQkFDWCxDQUFDLEVBQUVDLE9BQU8sRUFBRUMsVUFBVSxFQUFRLEdBQzlCLE9BQU8sRUFBRUMsSUFBSSxFQUFFQyxXQUFXLEVBQUVDLEdBQUcsRUFBRTtRQUMvQixJQUFJO1lBQ0YsTUFBTUMsUUFBUUMsSUFBQUEsa0NBQWdCLEVBQUM7Z0JBQUVKO2dCQUFNRTtZQUFJO1lBRTNDLElBQUlDLE1BQU1FLE1BQU0sR0FBRyxHQUFHO2dCQUNwQiwrQkFBK0I7Z0JBQy9CLHlCQUF5QjtnQkFDekIsdURBQXVEO2dCQUN2RCxJQUFJSixhQUFhO29CQUNmLElBQUlLLGdCQUEwQixFQUFFO29CQUVoQyxJQUFJLE9BQU9MLGFBQWFNLGFBQWEsVUFBVTt3QkFDN0NELGNBQWNFLElBQUksQ0FBQ1AsWUFBWU0sUUFBUTtvQkFDekM7b0JBRUEsSUFBSSxPQUFPTixZQUFZUSxLQUFLLEtBQUssVUFBVTt3QkFDekNILGdCQUFnQkEsY0FBY0ksTUFBTSxDQUNsQ0MsT0FBT0MsTUFBTSxDQUFDWCxhQUFhUSxTQUFTLEVBQUUsRUFBRUksR0FBRyxDQUN6QyxDQUFDQyxrQkFBb0JBLGlCQUFpQlA7b0JBRzVDO29CQUVBLE1BQU1RLG1CQUFtQlQsY0FBY08sR0FBRyxDQUFDLE9BQU9OO3dCQUNoRCxJQUFJQSxVQUFVOzRCQUNaLE1BQU1ULFFBQVFrQixZQUFZLENBQUM7Z0NBQUVqQjtnQ0FBWWtCLEtBQUtoQjtnQ0FBYU07Z0NBQVVMOzRCQUFJO3dCQUMzRTtvQkFDRjtvQkFFQSxNQUFNZ0IsUUFBUUMsR0FBRyxDQUFDSjtnQkFDcEI7Z0JBRUEsTUFBTUssV0FBV2pCLE1BQU1VLEdBQUcsQ0FBQyxPQUFPUTtvQkFDaEMsTUFBTXZCLFFBQVF3QixZQUFZLENBQUM7d0JBQUV2Qjt3QkFBWUM7d0JBQU1xQjt3QkFBTW5CO29CQUFJO2dCQUMzRDtnQkFFQSxNQUFNZ0IsUUFBUUMsR0FBRyxDQUFDQztZQUNwQjtRQUNGLEVBQUUsT0FBT0csS0FBYztZQUNyQnJCLElBQUlzQixPQUFPLENBQUNDLE1BQU0sQ0FBQ0MsS0FBSyxDQUN0QixDQUFDLHlFQUF5RSxFQUFFM0IsV0FBVzRCLElBQUksQ0FBQyxlQUFlLEVBQUUzQixLQUFLTyxRQUFRLENBQUMsQ0FBQyxDQUFDO1lBRS9ITCxJQUFJc0IsT0FBTyxDQUFDQyxNQUFNLENBQUNDLEtBQUssQ0FBQ0g7UUFDM0I7UUFDQSxPQUFPdkI7SUFDVCJ9
package/dist/index.d.ts CHANGED
@@ -1 +1,2 @@
1
1
  export { cloudStorage } from './plugin';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA"}
package/dist/index.js CHANGED
@@ -1,6 +1,13 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.cloudStorage = void 0;
4
- var plugin_1 = require("./plugin");
5
- Object.defineProperty(exports, "cloudStorage", { enumerable: true, get: function () { return plugin_1.cloudStorage; } });
6
- //# sourceMappingURL=index.js.map
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "cloudStorage", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _plugin.cloudStorage;
9
+ }
10
+ });
11
+ const _plugin = require("./plugin");
12
+
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBjbG91ZFN0b3JhZ2UgfSBmcm9tICcuL3BsdWdpbidcbiJdLCJuYW1lcyI6WyJjbG91ZFN0b3JhZ2UiXSwibWFwcGluZ3MiOiI7Ozs7K0JBQVNBOzs7ZUFBQUEsb0JBQVk7Ozt3QkFBUSJ9
package/dist/plugin.d.ts CHANGED
@@ -1,3 +1,4 @@
1
1
  import type { Config } from 'payload/config';
2
2
  import type { PluginOptions } from './types';
3
3
  export declare const cloudStorage: (pluginOptions: PluginOptions) => (incomingConfig: Config) => Config;
4
+ //# sourceMappingURL=plugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAE5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAgB5C,eAAO,MAAM,YAAY,kBACP,aAAa,sBACZ,MAAM,KAAG,MAkFzB,CAAA"}
package/dist/plugin.js CHANGED
@@ -1,131 +1,92 @@
1
1
  "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
- return new (P || (P = Promise))(function (resolve, reject) {
16
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
- step((generator = generator.apply(thisArg, _arguments || [])).next());
20
- });
21
- };
22
- var __generator = (this && this.__generator) || function (thisArg, body) {
23
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
- function verb(n) { return function (v) { return step([n, v]); }; }
26
- function step(op) {
27
- if (f) throw new TypeError("Generator is already executing.");
28
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
29
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
- if (y = 0, t) op = [op[0] & 2, t.value];
31
- switch (op[0]) {
32
- case 0: case 1: t = op; break;
33
- case 4: _.label++; return { value: op[1], done: false };
34
- case 5: _.label++; y = op[1]; op = [0]; continue;
35
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
- default:
37
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
- if (t[2]) _.ops.pop();
42
- _.trys.pop(); continue;
43
- }
44
- op = body.call(thisArg, _);
45
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "cloudStorage", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return cloudStorage;
47
9
  }
48
- };
49
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
50
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
51
- if (ar || !(i in from)) {
52
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
53
- ar[i] = from[i];
54
- }
55
- }
56
- return to.concat(ar || Array.prototype.slice.call(from));
57
- };
58
- Object.defineProperty(exports, "__esModule", { value: true });
59
- exports.cloudStorage = void 0;
60
- var webpack_1 = require("./webpack");
61
- var beforeChange_1 = require("./hooks/beforeChange");
62
- var afterDelete_1 = require("./hooks/afterDelete");
63
- var getFields_1 = require("./fields/getFields");
64
- // This plugin extends all targeted collections by offloading uploaded files
65
- // to cloud storage instead of solely storing files locally.
66
- // It is based on an adapter approach, where adapters can be written for any cloud provider.
67
- // Adapters are responsible for providing four actions that this plugin will use:
68
- // 1. handleUpload, 2. handleDelete, 3. generateURL, 4. staticHandler
69
- // Optionally, the adapter can specify any Webpack config overrides if they are necessary.
70
- var cloudStorage = function (pluginOptions) {
71
- return function (incomingConfig) {
72
- var allCollectionOptions = pluginOptions.collections, enabled = pluginOptions.enabled;
73
- var config = __assign({}, incomingConfig);
74
- var webpack = (0, webpack_1.extendWebpackConfig)({ options: pluginOptions, config: incomingConfig });
75
- config.admin = __assign(__assign({}, (config.admin || {})), { webpack: webpack });
10
+ });
11
+ const _getFields = require("./fields/getFields");
12
+ const _afterDelete = require("./hooks/afterDelete");
13
+ const _beforeChange = require("./hooks/beforeChange");
14
+ const _webpack = require("./webpack");
15
+ const cloudStorage = (pluginOptions)=>(incomingConfig)=>{
16
+ const { collections: allCollectionOptions, enabled } = pluginOptions;
17
+ const config = {
18
+ ...incomingConfig
19
+ };
20
+ const webpack = (0, _webpack.extendWebpackConfig)({
21
+ config: incomingConfig,
22
+ options: pluginOptions
23
+ });
24
+ config.admin = {
25
+ ...config.admin || {},
26
+ webpack
27
+ };
76
28
  // Return early if disabled. Only webpack config mods are applied.
77
29
  if (enabled === false) {
78
30
  return config;
79
31
  }
80
- var initFunctions = [];
81
- return __assign(__assign({}, config), { collections: (config.collections || []).map(function (existingCollection) {
82
- var _a, _b;
83
- var options = allCollectionOptions[existingCollection.slug];
84
- if (options === null || options === void 0 ? void 0 : options.adapter) {
85
- var adapter = options.adapter({
32
+ const initFunctions = [];
33
+ return {
34
+ ...config,
35
+ collections: (config.collections || []).map((existingCollection)=>{
36
+ const options = allCollectionOptions[existingCollection.slug];
37
+ if (options?.adapter) {
38
+ const adapter = options.adapter({
86
39
  collection: existingCollection,
87
- prefix: options.prefix,
40
+ prefix: options.prefix
88
41
  });
89
- if (adapter.onInit)
90
- initFunctions.push(adapter.onInit);
91
- var fields = (0, getFields_1.getFields)({
42
+ if (adapter.onInit) initFunctions.push(adapter.onInit);
43
+ const fields = (0, _getFields.getFields)({
44
+ adapter,
92
45
  collection: existingCollection,
93
46
  disablePayloadAccessControl: options.disablePayloadAccessControl,
94
47
  generateFileURL: options.generateFileURL,
95
- prefix: options.prefix,
96
- adapter: adapter,
48
+ prefix: options.prefix
97
49
  });
98
- var handlers = __spreadArray([], (typeof existingCollection.upload === 'object' &&
99
- Array.isArray(existingCollection.upload.handlers)
100
- ? existingCollection.upload.handlers
101
- : []), true);
50
+ const handlers = [
51
+ ...typeof existingCollection.upload === 'object' && Array.isArray(existingCollection.upload.handlers) ? existingCollection.upload.handlers : []
52
+ ];
102
53
  if (!options.disablePayloadAccessControl) {
103
54
  handlers.push(adapter.staticHandler);
104
55
  }
105
- return __assign(__assign({}, existingCollection), { upload: __assign(__assign({}, (typeof existingCollection.upload === 'object' ? existingCollection.upload : {})), { handlers: handlers, disableLocalStorage: typeof options.disableLocalStorage === 'boolean'
106
- ? options.disableLocalStorage
107
- : true }), hooks: __assign(__assign({}, (existingCollection.hooks || {})), { beforeChange: __spreadArray(__spreadArray([], (((_a = existingCollection.hooks) === null || _a === void 0 ? void 0 : _a.beforeChange) || []), true), [
108
- (0, beforeChange_1.getBeforeChangeHook)({ adapter: adapter, collection: existingCollection }),
109
- ], false), afterDelete: __spreadArray(__spreadArray([], (((_b = existingCollection.hooks) === null || _b === void 0 ? void 0 : _b.afterDelete) || []), true), [
110
- (0, afterDelete_1.getAfterDeleteHook)({ adapter: adapter, collection: existingCollection }),
111
- ], false) }), fields: fields });
56
+ return {
57
+ ...existingCollection,
58
+ fields,
59
+ hooks: {
60
+ ...existingCollection.hooks || {},
61
+ afterDelete: [
62
+ ...existingCollection.hooks?.afterDelete || [],
63
+ (0, _afterDelete.getAfterDeleteHook)({
64
+ adapter,
65
+ collection: existingCollection
66
+ })
67
+ ],
68
+ beforeChange: [
69
+ ...existingCollection.hooks?.beforeChange || [],
70
+ (0, _beforeChange.getBeforeChangeHook)({
71
+ adapter,
72
+ collection: existingCollection
73
+ })
74
+ ]
75
+ },
76
+ upload: {
77
+ ...typeof existingCollection.upload === 'object' ? existingCollection.upload : {},
78
+ disableLocalStorage: typeof options.disableLocalStorage === 'boolean' ? options.disableLocalStorage : true,
79
+ handlers
80
+ }
81
+ };
112
82
  }
113
83
  return existingCollection;
114
- }), onInit: function (payload) { return __awaiter(void 0, void 0, void 0, function () {
115
- return __generator(this, function (_a) {
116
- switch (_a.label) {
117
- case 0:
118
- initFunctions.forEach(function (fn) { return fn(); });
119
- if (!config.onInit) return [3 /*break*/, 2];
120
- return [4 /*yield*/, config.onInit(payload)];
121
- case 1:
122
- _a.sent();
123
- _a.label = 2;
124
- case 2: return [2 /*return*/];
125
- }
126
- });
127
- }); } });
84
+ }),
85
+ onInit: async (payload)=>{
86
+ initFunctions.forEach((fn)=>fn());
87
+ if (config.onInit) await config.onInit(payload);
88
+ }
89
+ };
128
90
  };
129
- };
130
- exports.cloudStorage = cloudStorage;
131
- //# sourceMappingURL=plugin.js.map
91
+
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9wbHVnaW4udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDb25maWcgfSBmcm9tICdwYXlsb2FkL2NvbmZpZydcblxuaW1wb3J0IHR5cGUgeyBQbHVnaW5PcHRpb25zIH0gZnJvbSAnLi90eXBlcydcblxuaW1wb3J0IHsgZ2V0RmllbGRzIH0gZnJvbSAnLi9maWVsZHMvZ2V0RmllbGRzJ1xuaW1wb3J0IHsgZ2V0QWZ0ZXJEZWxldGVIb29rIH0gZnJvbSAnLi9ob29rcy9hZnRlckRlbGV0ZSdcbmltcG9ydCB7IGdldEJlZm9yZUNoYW5nZUhvb2sgfSBmcm9tICcuL2hvb2tzL2JlZm9yZUNoYW5nZSdcbmltcG9ydCB7IGV4dGVuZFdlYnBhY2tDb25maWcgfSBmcm9tICcuL3dlYnBhY2snXG5cbi8vIFRoaXMgcGx1Z2luIGV4dGVuZHMgYWxsIHRhcmdldGVkIGNvbGxlY3Rpb25zIGJ5IG9mZmxvYWRpbmcgdXBsb2FkZWQgZmlsZXNcbi8vIHRvIGNsb3VkIHN0b3JhZ2UgaW5zdGVhZCBvZiBzb2xlbHkgc3RvcmluZyBmaWxlcyBsb2NhbGx5LlxuXG4vLyBJdCBpcyBiYXNlZCBvbiBhbiBhZGFwdGVyIGFwcHJvYWNoLCB3aGVyZSBhZGFwdGVycyBjYW4gYmUgd3JpdHRlbiBmb3IgYW55IGNsb3VkIHByb3ZpZGVyLlxuLy8gQWRhcHRlcnMgYXJlIHJlc3BvbnNpYmxlIGZvciBwcm92aWRpbmcgZm91ciBhY3Rpb25zIHRoYXQgdGhpcyBwbHVnaW4gd2lsbCB1c2U6XG4vLyAxLiBoYW5kbGVVcGxvYWQsIDIuIGhhbmRsZURlbGV0ZSwgMy4gZ2VuZXJhdGVVUkwsIDQuIHN0YXRpY0hhbmRsZXJcblxuLy8gT3B0aW9uYWxseSwgdGhlIGFkYXB0ZXIgY2FuIHNwZWNpZnkgYW55IFdlYnBhY2sgY29uZmlnIG92ZXJyaWRlcyBpZiB0aGV5IGFyZSBuZWNlc3NhcnkuXG5cbmV4cG9ydCBjb25zdCBjbG91ZFN0b3JhZ2UgPVxuICAocGx1Z2luT3B0aW9uczogUGx1Z2luT3B0aW9ucykgPT5cbiAgKGluY29taW5nQ29uZmlnOiBDb25maWcpOiBDb25maWcgPT4ge1xuICAgIGNvbnN0IHsgY29sbGVjdGlvbnM6IGFsbENvbGxlY3Rpb25PcHRpb25zLCBlbmFibGVkIH0gPSBwbHVnaW5PcHRpb25zXG4gICAgY29uc3QgY29uZmlnID0geyAuLi5pbmNvbWluZ0NvbmZpZyB9XG5cbiAgICBjb25zdCB3ZWJwYWNrID0gZXh0ZW5kV2VicGFja0NvbmZpZyh7IGNvbmZpZzogaW5jb21pbmdDb25maWcsIG9wdGlvbnM6IHBsdWdpbk9wdGlvbnMgfSlcblxuICAgIGNvbmZpZy5hZG1pbiA9IHtcbiAgICAgIC4uLihjb25maWcuYWRtaW4gfHwge30pLFxuICAgICAgd2VicGFjayxcbiAgICB9XG5cbiAgICAvLyBSZXR1cm4gZWFybHkgaWYgZGlzYWJsZWQuIE9ubHkgd2VicGFjayBjb25maWcgbW9kcyBhcmUgYXBwbGllZC5cbiAgICBpZiAoZW5hYmxlZCA9PT0gZmFsc2UpIHtcbiAgICAgIHJldHVybiBjb25maWdcbiAgICB9XG5cbiAgICBjb25zdCBpbml0RnVuY3Rpb25zOiBBcnJheTwoKSA9PiB2b2lkPiA9IFtdXG5cbiAgICByZXR1cm4ge1xuICAgICAgLi4uY29uZmlnLFxuICAgICAgY29sbGVjdGlvbnM6IChjb25maWcuY29sbGVjdGlvbnMgfHwgW10pLm1hcCgoZXhpc3RpbmdDb2xsZWN0aW9uKSA9PiB7XG4gICAgICAgIGNvbnN0IG9wdGlvbnMgPSBhbGxDb2xsZWN0aW9uT3B0aW9uc1tleGlzdGluZ0NvbGxlY3Rpb24uc2x1Z11cblxuICAgICAgICBpZiAob3B0aW9ucz8uYWRhcHRlcikge1xuICAgICAgICAgIGNvbnN0IGFkYXB0ZXIgPSBvcHRpb25zLmFkYXB0ZXIoe1xuICAgICAgICAgICAgY29sbGVjdGlvbjogZXhpc3RpbmdDb2xsZWN0aW9uLFxuICAgICAgICAgICAgcHJlZml4OiBvcHRpb25zLnByZWZpeCxcbiAgICAgICAgICB9KVxuXG4gICAgICAgICAgaWYgKGFkYXB0ZXIub25Jbml0KSBpbml0RnVuY3Rpb25zLnB1c2goYWRhcHRlci5vbkluaXQpXG5cbiAgICAgICAgICBjb25zdCBmaWVsZHMgPSBnZXRGaWVsZHMoe1xuICAgICAgICAgICAgYWRhcHRlcixcbiAgICAgICAgICAgIGNvbGxlY3Rpb246IGV4aXN0aW5nQ29sbGVjdGlvbixcbiAgICAgICAgICAgIGRpc2FibGVQYXlsb2FkQWNjZXNzQ29udHJvbDogb3B0aW9ucy5kaXNhYmxlUGF5bG9hZEFjY2Vzc0NvbnRyb2wsXG4gICAgICAgICAgICBnZW5lcmF0ZUZpbGVVUkw6IG9wdGlvbnMuZ2VuZXJhdGVGaWxlVVJMLFxuICAgICAgICAgICAgcHJlZml4OiBvcHRpb25zLnByZWZpeCxcbiAgICAgICAgICB9KVxuXG4gICAgICAgICAgY29uc3QgaGFuZGxlcnMgPSBbXG4gICAgICAgICAgICAuLi4odHlwZW9mIGV4aXN0aW5nQ29sbGVjdGlvbi51cGxvYWQgPT09ICdvYmplY3QnICYmXG4gICAgICAgICAgICBBcnJheS5pc0FycmF5KGV4aXN0aW5nQ29sbGVjdGlvbi51cGxvYWQuaGFuZGxlcnMpXG4gICAgICAgICAgICAgID8gZXhpc3RpbmdDb2xsZWN0aW9uLnVwbG9hZC5oYW5kbGVyc1xuICAgICAgICAgICAgICA6IFtdKSxcbiAgICAgICAgICBdXG5cbiAgICAgICAgICBpZiAoIW9wdGlvbnMuZGlzYWJsZVBheWxvYWRBY2Nlc3NDb250cm9sKSB7XG4gICAgICAgICAgICBoYW5kbGVycy5wdXNoKGFkYXB0ZXIuc3RhdGljSGFuZGxlcilcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4uZXhpc3RpbmdDb2xsZWN0aW9uLFxuICAgICAgICAgICAgZmllbGRzLFxuICAgICAgICAgICAgaG9va3M6IHtcbiAgICAgICAgICAgICAgLi4uKGV4aXN0aW5nQ29sbGVjdGlvbi5ob29rcyB8fCB7fSksXG4gICAgICAgICAgICAgIGFmdGVyRGVsZXRlOiBbXG4gICAgICAgICAgICAgICAgLi4uKGV4aXN0aW5nQ29sbGVjdGlvbi5ob29rcz8uYWZ0ZXJEZWxldGUgfHwgW10pLFxuICAgICAgICAgICAgICAgIGdldEFmdGVyRGVsZXRlSG9vayh7IGFkYXB0ZXIsIGNvbGxlY3Rpb246IGV4aXN0aW5nQ29sbGVjdGlvbiB9KSxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgYmVmb3JlQ2hhbmdlOiBbXG4gICAgICAgICAgICAgICAgLi4uKGV4aXN0aW5nQ29sbGVjdGlvbi5ob29rcz8uYmVmb3JlQ2hhbmdlIHx8IFtdKSxcbiAgICAgICAgICAgICAgICBnZXRCZWZvcmVDaGFuZ2VIb29rKHsgYWRhcHRlciwgY29sbGVjdGlvbjogZXhpc3RpbmdDb2xsZWN0aW9uIH0pLFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHVwbG9hZDoge1xuICAgICAgICAgICAgICAuLi4odHlwZW9mIGV4aXN0aW5nQ29sbGVjdGlvbi51cGxvYWQgPT09ICdvYmplY3QnID8gZXhpc3RpbmdDb2xsZWN0aW9uLnVwbG9hZCA6IHt9KSxcbiAgICAgICAgICAgICAgZGlzYWJsZUxvY2FsU3RvcmFnZTpcbiAgICAgICAgICAgICAgICB0eXBlb2Ygb3B0aW9ucy5kaXNhYmxlTG9jYWxTdG9yYWdlID09PSAnYm9vbGVhbidcbiAgICAgICAgICAgICAgICAgID8gb3B0aW9ucy5kaXNhYmxlTG9jYWxTdG9yYWdlXG4gICAgICAgICAgICAgICAgICA6IHRydWUsXG4gICAgICAgICAgICAgIGhhbmRsZXJzLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZXhpc3RpbmdDb2xsZWN0aW9uXG4gICAgICB9KSxcbiAgICAgIG9uSW5pdDogYXN5bmMgKHBheWxvYWQpID0+IHtcbiAgICAgICAgaW5pdEZ1bmN0aW9ucy5mb3JFYWNoKChmbikgPT4gZm4oKSlcbiAgICAgICAgaWYgKGNvbmZpZy5vbkluaXQpIGF3YWl0IGNvbmZpZy5vbkluaXQocGF5bG9hZClcbiAgICAgIH0sXG4gICAgfVxuICB9XG4iXSwibmFtZXMiOlsiY2xvdWRTdG9yYWdlIiwicGx1Z2luT3B0aW9ucyIsImluY29taW5nQ29uZmlnIiwiY29sbGVjdGlvbnMiLCJhbGxDb2xsZWN0aW9uT3B0aW9ucyIsImVuYWJsZWQiLCJjb25maWciLCJ3ZWJwYWNrIiwiZXh0ZW5kV2VicGFja0NvbmZpZyIsIm9wdGlvbnMiLCJhZG1pbiIsImluaXRGdW5jdGlvbnMiLCJtYXAiLCJleGlzdGluZ0NvbGxlY3Rpb24iLCJzbHVnIiwiYWRhcHRlciIsImNvbGxlY3Rpb24iLCJwcmVmaXgiLCJvbkluaXQiLCJwdXNoIiwiZmllbGRzIiwiZ2V0RmllbGRzIiwiZGlzYWJsZVBheWxvYWRBY2Nlc3NDb250cm9sIiwiZ2VuZXJhdGVGaWxlVVJMIiwiaGFuZGxlcnMiLCJ1cGxvYWQiLCJBcnJheSIsImlzQXJyYXkiLCJzdGF0aWNIYW5kbGVyIiwiaG9va3MiLCJhZnRlckRlbGV0ZSIsImdldEFmdGVyRGVsZXRlSG9vayIsImJlZm9yZUNoYW5nZSIsImdldEJlZm9yZUNoYW5nZUhvb2siLCJkaXNhYmxlTG9jYWxTdG9yYWdlIiwicGF5bG9hZCIsImZvckVhY2giLCJmbiJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFrQmFBOzs7ZUFBQUE7OzsyQkFkYTs2QkFDUzs4QkFDQzt5QkFDQTtBQVc3QixNQUFNQSxlQUNYLENBQUNDLGdCQUNELENBQUNDO1FBQ0MsTUFBTSxFQUFFQyxhQUFhQyxvQkFBb0IsRUFBRUMsT0FBTyxFQUFFLEdBQUdKO1FBQ3ZELE1BQU1LLFNBQVM7WUFBRSxHQUFHSixjQUFjO1FBQUM7UUFFbkMsTUFBTUssVUFBVUMsSUFBQUEsNEJBQW1CLEVBQUM7WUFBRUYsUUFBUUo7WUFBZ0JPLFNBQVNSO1FBQWM7UUFFckZLLE9BQU9JLEtBQUssR0FBRztZQUNiLEdBQUlKLE9BQU9JLEtBQUssSUFBSSxDQUFDLENBQUM7WUFDdEJIO1FBQ0Y7UUFFQSxrRUFBa0U7UUFDbEUsSUFBSUYsWUFBWSxPQUFPO1lBQ3JCLE9BQU9DO1FBQ1Q7UUFFQSxNQUFNSyxnQkFBbUMsRUFBRTtRQUUzQyxPQUFPO1lBQ0wsR0FBR0wsTUFBTTtZQUNUSCxhQUFhLEFBQUNHLENBQUFBLE9BQU9ILFdBQVcsSUFBSSxFQUFFLEFBQUQsRUFBR1MsR0FBRyxDQUFDLENBQUNDO2dCQUMzQyxNQUFNSixVQUFVTCxvQkFBb0IsQ0FBQ1MsbUJBQW1CQyxJQUFJLENBQUM7Z0JBRTdELElBQUlMLFNBQVNNLFNBQVM7b0JBQ3BCLE1BQU1BLFVBQVVOLFFBQVFNLE9BQU8sQ0FBQzt3QkFDOUJDLFlBQVlIO3dCQUNaSSxRQUFRUixRQUFRUSxNQUFNO29CQUN4QjtvQkFFQSxJQUFJRixRQUFRRyxNQUFNLEVBQUVQLGNBQWNRLElBQUksQ0FBQ0osUUFBUUcsTUFBTTtvQkFFckQsTUFBTUUsU0FBU0MsSUFBQUEsb0JBQVMsRUFBQzt3QkFDdkJOO3dCQUNBQyxZQUFZSDt3QkFDWlMsNkJBQTZCYixRQUFRYSwyQkFBMkI7d0JBQ2hFQyxpQkFBaUJkLFFBQVFjLGVBQWU7d0JBQ3hDTixRQUFRUixRQUFRUSxNQUFNO29CQUN4QjtvQkFFQSxNQUFNTyxXQUFXOzJCQUNYLE9BQU9YLG1CQUFtQlksTUFBTSxLQUFLLFlBQ3pDQyxNQUFNQyxPQUFPLENBQUNkLG1CQUFtQlksTUFBTSxDQUFDRCxRQUFRLElBQzVDWCxtQkFBbUJZLE1BQU0sQ0FBQ0QsUUFBUSxHQUNsQyxFQUFFO3FCQUNQO29CQUVELElBQUksQ0FBQ2YsUUFBUWEsMkJBQTJCLEVBQUU7d0JBQ3hDRSxTQUFTTCxJQUFJLENBQUNKLFFBQVFhLGFBQWE7b0JBQ3JDO29CQUVBLE9BQU87d0JBQ0wsR0FBR2Ysa0JBQWtCO3dCQUNyQk87d0JBQ0FTLE9BQU87NEJBQ0wsR0FBSWhCLG1CQUFtQmdCLEtBQUssSUFBSSxDQUFDLENBQUM7NEJBQ2xDQyxhQUFhO21DQUNQakIsbUJBQW1CZ0IsS0FBSyxFQUFFQyxlQUFlLEVBQUU7Z0NBQy9DQyxJQUFBQSwrQkFBa0IsRUFBQztvQ0FBRWhCO29DQUFTQyxZQUFZSDtnQ0FBbUI7NkJBQzlEOzRCQUNEbUIsY0FBYzttQ0FDUm5CLG1CQUFtQmdCLEtBQUssRUFBRUcsZ0JBQWdCLEVBQUU7Z0NBQ2hEQyxJQUFBQSxpQ0FBbUIsRUFBQztvQ0FBRWxCO29DQUFTQyxZQUFZSDtnQ0FBbUI7NkJBQy9EO3dCQUNIO3dCQUNBWSxRQUFROzRCQUNOLEdBQUksT0FBT1osbUJBQW1CWSxNQUFNLEtBQUssV0FBV1osbUJBQW1CWSxNQUFNLEdBQUcsQ0FBQyxDQUFDOzRCQUNsRlMscUJBQ0UsT0FBT3pCLFFBQVF5QixtQkFBbUIsS0FBSyxZQUNuQ3pCLFFBQVF5QixtQkFBbUIsR0FDM0I7NEJBQ05WO3dCQUNGO29CQUNGO2dCQUNGO2dCQUVBLE9BQU9YO1lBQ1Q7WUFDQUssUUFBUSxPQUFPaUI7Z0JBQ2J4QixjQUFjeUIsT0FBTyxDQUFDLENBQUNDLEtBQU9BO2dCQUM5QixJQUFJL0IsT0FBT1ksTUFBTSxFQUFFLE1BQU1aLE9BQU9ZLE1BQU0sQ0FBQ2lCO1lBQ3pDO1FBQ0Y7SUFDRiJ9
package/dist/types.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  /// <reference types="node" />
2
2
  import type { NextFunction, Response } from 'express';
3
- import type { TypeWithID } from 'payload/dist/collections/config/types';
4
- import type { FileData, ImageSize } from 'payload/dist/uploads/types';
3
+ import type { FileData, ImageSize } from 'payload/types';
4
+ import type { TypeWithID } from 'payload/types';
5
5
  import type { CollectionConfig, PayloadRequest } from 'payload/types';
6
6
  import type { Configuration as WebpackConfig } from 'webpack';
7
7
  export interface File {
@@ -13,32 +13,32 @@ export interface File {
13
13
  }
14
14
  export type HandleUpload = (args: {
15
15
  collection: CollectionConfig;
16
- req: PayloadRequest;
17
16
  data: any;
18
17
  file: File;
18
+ req: PayloadRequest;
19
19
  }) => Promise<void> | void;
20
20
  export interface TypeWithPrefix {
21
21
  prefix?: string;
22
22
  }
23
23
  export type HandleDelete = (args: {
24
24
  collection: CollectionConfig;
25
- req: PayloadRequest;
26
25
  doc: TypeWithID & FileData & TypeWithPrefix;
27
26
  filename: string;
27
+ req: PayloadRequest;
28
28
  }) => Promise<void> | void;
29
29
  export type GenerateURL = (args: {
30
- filename: string;
31
30
  collection: CollectionConfig;
31
+ filename: string;
32
32
  prefix?: string;
33
- }) => string | Promise<string>;
33
+ }) => Promise<string> | string;
34
34
  export type StaticHandler = (req: PayloadRequest, res: Response, next: NextFunction) => Promise<unknown> | unknown;
35
35
  export interface GeneratedAdapter {
36
- handleUpload: HandleUpload;
37
- handleDelete: HandleDelete;
38
36
  generateURL: GenerateURL;
37
+ handleDelete: HandleDelete;
38
+ handleUpload: HandleUpload;
39
+ onInit?: () => void;
39
40
  staticHandler: StaticHandler;
40
41
  webpack?: (config: WebpackConfig) => WebpackConfig;
41
- onInit?: () => void;
42
42
  }
43
43
  export type Adapter = (args: {
44
44
  collection: CollectionConfig;
@@ -51,18 +51,19 @@ export type GenerateFileURL = (args: {
51
51
  size?: ImageSize;
52
52
  }) => Promise<string> | string;
53
53
  export interface CollectionOptions {
54
+ adapter: Adapter | null;
54
55
  disableLocalStorage?: boolean;
55
56
  disablePayloadAccessControl?: true;
56
57
  generateFileURL?: GenerateFileURL;
57
58
  prefix?: string;
58
- adapter: Adapter | null;
59
59
  }
60
60
  export interface PluginOptions {
61
+ collections: Record<string, CollectionOptions>;
61
62
  /**
62
63
  * Whether or not to enable the plugin
63
64
  *
64
65
  * Default: true
65
66
  */
66
67
  enabled?: boolean;
67
- collections: Record<string, CollectionOptions>;
68
68
  }
69
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js CHANGED
@@ -1,3 +1,6 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
@@ -1,5 +1,6 @@
1
1
  import type { CollectionConfig, PayloadRequest } from 'payload/types';
2
- export declare function getFilePrefix({ req, collection, }: {
3
- req: PayloadRequest;
2
+ export declare function getFilePrefix({ collection, req, }: {
4
3
  collection: CollectionConfig;
4
+ req: PayloadRequest;
5
5
  }): Promise<string>;
6
+ //# sourceMappingURL=getFilePrefix.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getFilePrefix.d.ts","sourceRoot":"","sources":["../../src/utilities/getFilePrefix.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAsB,cAAc,EAAE,MAAM,eAAe,CAAA;AAEzF,wBAAsB,aAAa,CAAC,EAClC,UAAU,EACV,GAAG,GACJ,EAAE;IACD,UAAU,EAAE,gBAAgB,CAAA;IAC5B,GAAG,EAAE,cAAc,CAAA;CACpB,GAAG,OAAO,CAAC,MAAM,CAAC,CAiBlB"}