@payloadcms/plugin-cloud-storage 1.0.12 → 1.0.13

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 (56) hide show
  1. package/.eslintrc.js +12 -2
  2. package/README.md +30 -2
  3. package/dist/adapters/azure/handleDelete.d.ts +2 -2
  4. package/dist/adapters/azure/handleDelete.js +3 -3
  5. package/dist/adapters/azure/handleDelete.js.map +1 -1
  6. package/dist/adapters/azure/handleUpload.d.ts +2 -3
  7. package/dist/adapters/azure/handleUpload.js +3 -6
  8. package/dist/adapters/azure/handleUpload.js.map +1 -1
  9. package/dist/adapters/azure/index.d.ts +1 -1
  10. package/dist/adapters/azure/index.js +25 -13
  11. package/dist/adapters/azure/index.js.map +1 -1
  12. package/dist/adapters/azure/staticHandler.d.ts +2 -2
  13. package/dist/adapters/azure/staticHandler.js +3 -3
  14. package/dist/adapters/azure/staticHandler.js.map +1 -1
  15. package/dist/adapters/gcs/generateURL.d.ts +2 -2
  16. package/dist/adapters/gcs/generateURL.js +2 -2
  17. package/dist/adapters/gcs/generateURL.js.map +1 -1
  18. package/dist/adapters/gcs/handleDelete.d.ts +2 -2
  19. package/dist/adapters/gcs/handleDelete.js +3 -3
  20. package/dist/adapters/gcs/handleDelete.js.map +1 -1
  21. package/dist/adapters/gcs/handleUpload.d.ts +2 -2
  22. package/dist/adapters/gcs/handleUpload.js +3 -3
  23. package/dist/adapters/gcs/handleUpload.js.map +1 -1
  24. package/dist/adapters/gcs/index.js +10 -5
  25. package/dist/adapters/gcs/index.js.map +1 -1
  26. package/dist/adapters/gcs/staticHandler.d.ts +2 -2
  27. package/dist/adapters/gcs/staticHandler.js +5 -3
  28. package/dist/adapters/gcs/staticHandler.js.map +1 -1
  29. package/dist/adapters/s3/handleDelete.d.ts +2 -2
  30. package/dist/adapters/s3/handleDelete.js +3 -3
  31. package/dist/adapters/s3/handleDelete.js.map +1 -1
  32. package/dist/adapters/s3/handleUpload.d.ts +2 -2
  33. package/dist/adapters/s3/handleUpload.js +36 -9
  34. package/dist/adapters/s3/handleUpload.js.map +1 -1
  35. package/dist/adapters/s3/index.js +10 -4
  36. package/dist/adapters/s3/index.js.map +1 -1
  37. package/dist/adapters/s3/mock.d.ts +6 -0
  38. package/dist/adapters/s3/mock.js +8 -6
  39. package/dist/adapters/s3/mock.js.map +1 -1
  40. package/dist/adapters/s3/staticHandler.d.ts +2 -2
  41. package/dist/adapters/s3/staticHandler.js +3 -3
  42. package/dist/adapters/s3/staticHandler.js.map +1 -1
  43. package/dist/adapters/s3/webpack.js +1 -1
  44. package/dist/adapters/s3/webpack.js.map +1 -1
  45. package/dist/fields/getFields.js +3 -3
  46. package/dist/fields/getFields.js.map +1 -1
  47. package/dist/hooks/afterDelete.js +1 -1
  48. package/dist/hooks/afterRead.js +1 -1
  49. package/dist/hooks/beforeChange.js +1 -1
  50. package/dist/plugin.js +53 -1
  51. package/dist/plugin.js.map +1 -1
  52. package/dist/types.d.ts +9 -6
  53. package/dist/utilities/getFilePrefix.js +1 -1
  54. package/dist/utilities/getIncomingFiles.js +3 -0
  55. package/dist/utilities/getIncomingFiles.js.map +1 -1
  56. package/package.json +11 -4
package/.eslintrc.js CHANGED
@@ -1,4 +1,14 @@
1
1
  module.exports = {
2
2
  root: true,
3
- extends: ["./eslint-config"],
4
- };
3
+ extends: ['./eslint-config'],
4
+ overrides: [
5
+ // Temporary overrides. Re-enable once platform is more mature
6
+ {
7
+ files: ['dev/**/*.ts'],
8
+ rules: {
9
+ 'import/no-relative-packages': 'off',
10
+ 'no-process-env': 'off',
11
+ },
12
+ },
13
+ ],
14
+ }
package/README.md CHANGED
@@ -6,6 +6,10 @@ This repository contains the officially supported Payload Cloud Storage plugin.
6
6
 
7
7
  - Payload version `1.0.19` or higher is required
8
8
 
9
+ ## Installation
10
+
11
+ `yarn add @payloadcms/plugin-cloud-storage` or `npm install @payloadcms/plugin-cloud-storage`
12
+
9
13
  ## Usage
10
14
 
11
15
  Install this plugin within your Payload as follows:
@@ -41,6 +45,8 @@ This plugin supports the following adapters:
41
45
 
42
46
  However, you can create your own adapter for any third-party service you would like to use.
43
47
 
48
+ All adapters are implemented `dev` directory's [Payload Config](https://github.com/payloadcms/plugin-cloud-storage/blob/master/dev/src/payload.config.ts). See this file for examples.
49
+
44
50
  ## Plugin options
45
51
 
46
52
  This plugin is configurable to work across many different Payload collections. A `*` denotes that the property is required.
@@ -80,7 +86,9 @@ const adapter = azureBlobStorageAdapter({
80
86
 
81
87
  ### S3 Adapter
82
88
 
83
- To use the S3 adapter, you need to have `@aws-sdk/client-s3` installed in your project dependencies. To do so, run `yarn add @aws-sdk/client-s3`.
89
+ To use the S3 adapter, some peer dependencies need to be installed:
90
+
91
+ `yarn add @aws-sdk/client-s3 @aws-sdk/lib-storage`.
84
92
 
85
93
  From there, create the adapter, passing in all of its required properties:
86
94
 
@@ -89,11 +97,11 @@ import { s3Adapter } from '@payloadcms/plugin-cloud-storage/s3';
89
97
 
90
98
  const adapter = s3Adapter({
91
99
  config: {
92
- endpoint: process.env.S3_ENDPOINT,
93
100
  credentials: {
94
101
  accessKeyId: process.env.S3_ACCESS_KEY_ID,
95
102
  secretAccessKey: process.env.S3_SECRET_ACCESS_KEY,
96
103
  }
104
+ // ... Other S3 configuration
97
105
  },
98
106
  bucket: process.env.S3_BUCKET,
99
107
  })
@@ -101,6 +109,26 @@ const adapter = s3Adapter({
101
109
  // Now you can pass this adapter to the plugin
102
110
  ```
103
111
 
112
+ Other S3 Client configuration is documented [here](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-s3/interfaces/s3clientconfig.html).
113
+
114
+ Any upload over 50MB will automatically be uploaded using S3's multi-part upload.
115
+
116
+ #### Other S3-Compatible Storage
117
+
118
+ If you're running an S3-compatible object storage such as MinIO or Digital Ocean Spaces, you'll have to set the `endpoint` appropriately for the provider.
119
+
120
+ ```js
121
+ import { s3Adapter } from '@payloadcms/plugin-cloud-storage/s3';
122
+
123
+ const adapter = s3Adapter({
124
+ config: {
125
+ endpoint: process.env.S3_ENDPOINT, // Configure for your provider
126
+ // ...
127
+ },
128
+ // ...
129
+ })
130
+ ```
131
+
104
132
  ### GCS Adapter
105
133
 
106
134
  To use the GCS adapter, you need to have `@google-cloud/storage` installed in your project dependencies. To do so, run `yarn add @google-cloud/storage`.
@@ -3,7 +3,7 @@ import type { ContainerClient } from '@azure/storage-blob';
3
3
  import type { HandleDelete } from '../../types';
4
4
  interface Args {
5
5
  collection: CollectionConfig;
6
- containerClient: ContainerClient;
6
+ getStorageClient: () => ContainerClient;
7
7
  }
8
- export declare const getHandleDelete: ({ containerClient }: Args) => HandleDelete;
8
+ export declare const getHandleDelete: ({ getStorageClient }: Args) => HandleDelete;
9
9
  export {};
@@ -14,7 +14,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
14
14
  function verb(n) { return function (v) { return step([n, v]); }; }
15
15
  function step(op) {
16
16
  if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
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
19
  if (y = 0, t) op = [op[0] & 2, t.value];
20
20
  switch (op[0]) {
@@ -42,7 +42,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
42
42
  exports.getHandleDelete = void 0;
43
43
  var path_1 = __importDefault(require("path"));
44
44
  var getHandleDelete = function (_a) {
45
- var containerClient = _a.containerClient;
45
+ var getStorageClient = _a.getStorageClient;
46
46
  return function (_a) {
47
47
  var filename = _a.filename, _b = _a.doc.prefix, prefix = _b === void 0 ? '' : _b;
48
48
  return __awaiter(void 0, void 0, void 0, function () {
@@ -50,7 +50,7 @@ var getHandleDelete = function (_a) {
50
50
  return __generator(this, function (_c) {
51
51
  switch (_c.label) {
52
52
  case 0:
53
- blockBlobClient = containerClient.getBlockBlobClient(path_1.default.posix.join(prefix, filename));
53
+ blockBlobClient = getStorageClient().getBlockBlobClient(path_1.default.posix.join(prefix, filename));
54
54
  return [4 /*yield*/, blockBlobClient.deleteIfExists()];
55
55
  case 1:
56
56
  _c.sent();
@@ -1 +1 @@
1
- {"version":3,"file":"handleDelete.js","sourceRoot":"","sources":["../../../src/adapters/azure/handleDelete.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAuB;AAUhB,IAAM,eAAe,GAAG,UAAC,EAAyB;QAAvB,eAAe,qBAAA;IAC/C,OAAO,UAAO,EAAkC;YAAhC,QAAQ,cAAA,EAAS,kBAAW,EAAX,MAAM,mBAAG,EAAE,KAAA;;;;;;wBACpC,eAAe,GAAG,eAAe,CAAC,kBAAkB,CAAC,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;wBAC7F,qBAAM,eAAe,CAAC,cAAc,EAAE,EAAA;;wBAAtC,SAAsC,CAAA;;;;;KACvC,CAAA;AACH,CAAC,CAAA;AALY,QAAA,eAAe,mBAK3B"}
1
+ {"version":3,"file":"handleDelete.js","sourceRoot":"","sources":["../../../src/adapters/azure/handleDelete.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAuB;AAUhB,IAAM,eAAe,GAAG,UAAC,EAA0B;QAAxB,gBAAgB,sBAAA;IAChD,OAAO,UAAO,EAAkC;YAAhC,QAAQ,cAAA,EAAS,kBAAW,EAAX,MAAM,mBAAG,EAAE,KAAA;;;;;;wBACpC,eAAe,GAAG,gBAAgB,EAAE,CAAC,kBAAkB,CAAC,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;wBAChG,qBAAM,eAAe,CAAC,cAAc,EAAE,EAAA;;wBAAtC,SAAsC,CAAA;;;;;KACvC,CAAA;AACH,CAAC,CAAA;AALY,QAAA,eAAe,mBAK3B"}
@@ -3,9 +3,8 @@ import type { CollectionConfig } from 'payload/types';
3
3
  import type { HandleUpload } from '../../types';
4
4
  interface Args {
5
5
  collection: CollectionConfig;
6
- containerClient: ContainerClient;
7
- allowContainerCreate: boolean;
6
+ getStorageClient: () => ContainerClient;
8
7
  prefix?: string;
9
8
  }
10
- export declare const getHandleUpload: ({ allowContainerCreate, containerClient, prefix, }: Args) => HandleUpload;
9
+ export declare const getHandleUpload: ({ getStorageClient, prefix }: Args) => HandleUpload;
11
10
  export {};
@@ -14,7 +14,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
14
14
  function verb(n) { return function (v) { return step([n, v]); }; }
15
15
  function step(op) {
16
16
  if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
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
19
  if (y = 0, t) op = [op[0] & 2, t.value];
20
20
  switch (op[0]) {
@@ -42,10 +42,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
42
42
  exports.getHandleUpload = void 0;
43
43
  var path_1 = __importDefault(require("path"));
44
44
  var getHandleUpload = function (_a) {
45
- var allowContainerCreate = _a.allowContainerCreate, containerClient = _a.containerClient, _b = _a.prefix, prefix = _b === void 0 ? '' : _b;
46
- if (allowContainerCreate) {
47
- containerClient.createIfNotExists({ access: 'blob' });
48
- }
45
+ var getStorageClient = _a.getStorageClient, _b = _a.prefix, prefix = _b === void 0 ? '' : _b;
49
46
  return function (_a) {
50
47
  var data = _a.data, file = _a.file;
51
48
  return __awaiter(void 0, void 0, void 0, function () {
@@ -53,7 +50,7 @@ var getHandleUpload = function (_a) {
53
50
  return __generator(this, function (_b) {
54
51
  switch (_b.label) {
55
52
  case 0:
56
- blockBlobClient = containerClient.getBlockBlobClient(path_1.default.posix.join(prefix, file.filename));
53
+ blockBlobClient = getStorageClient().getBlockBlobClient(path_1.default.posix.join(prefix, file.filename));
57
54
  return [4 /*yield*/, blockBlobClient.upload(file.buffer, file.buffer.byteLength, {
58
55
  blobHTTPHeaders: { blobContentType: file.mimeType },
59
56
  })];
@@ -1 +1 @@
1
- {"version":3,"file":"handleUpload.js","sourceRoot":"","sources":["../../../src/adapters/azure/handleUpload.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAuB;AAYhB,IAAM,eAAe,GAAG,UAAC,EAIzB;QAHL,oBAAoB,0BAAA,EACpB,eAAe,qBAAA,EACf,cAAW,EAAX,MAAM,mBAAG,EAAE,KAAA;IAEX,IAAI,oBAAoB,EAAE;QACxB,eAAe,CAAC,iBAAiB,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;KACtD;IAED,OAAO,UAAO,EAAc;YAAZ,IAAI,UAAA,EAAE,IAAI,UAAA;;;;;;wBAClB,eAAe,GAAG,eAAe,CAAC,kBAAkB,CACxD,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CACvC,CAAA;wBAED,qBAAM,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;gCAChE,eAAe,EAAE,EAAE,eAAe,EAAE,IAAI,CAAC,QAAQ,EAAE;6BACpD,CAAC,EAAA;;wBAFF,SAEE,CAAA;wBAEF,sBAAO,IAAI,EAAA;;;;KACZ,CAAA;AACH,CAAC,CAAA;AApBY,QAAA,eAAe,mBAoB3B"}
1
+ {"version":3,"file":"handleUpload.js","sourceRoot":"","sources":["../../../src/adapters/azure/handleUpload.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAuB;AAWhB,IAAM,eAAe,GAAG,UAAC,EAAuC;QAArC,gBAAgB,sBAAA,EAAE,cAAW,EAAX,MAAM,mBAAG,EAAE,KAAA;IAC7D,OAAO,UAAO,EAAc;YAAZ,IAAI,UAAA,EAAE,IAAI,UAAA;;;;;;wBAClB,eAAe,GAAG,gBAAgB,EAAE,CAAC,kBAAkB,CAC3D,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CACvC,CAAA;wBAED,qBAAM,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;gCAChE,eAAe,EAAE,EAAE,eAAe,EAAE,IAAI,CAAC,QAAQ,EAAE;6BACpD,CAAC,EAAA;;wBAFF,SAEE,CAAA;wBAEF,sBAAO,IAAI,EAAA;;;;KACZ,CAAA;AACH,CAAC,CAAA;AAZY,QAAA,eAAe,mBAY3B"}
@@ -5,4 +5,4 @@ export interface Args {
5
5
  baseURL: string;
6
6
  allowContainerCreate: boolean;
7
7
  }
8
- export declare const azureBlobStorageAdapter: ({ connectionString, containerName, baseURL, allowContainerCreate }: Args) => Adapter;
8
+ export declare const azureBlobStorageAdapter: ({ connectionString, allowContainerCreate, containerName, baseURL, }: Args) => Adapter;
@@ -1,4 +1,15 @@
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
+ };
2
13
  Object.defineProperty(exports, "__esModule", { value: true });
3
14
  exports.azureBlobStorageAdapter = void 0;
4
15
  var storage_blob_1 = require("@azure/storage-blob");
@@ -8,23 +19,24 @@ var handleDelete_1 = require("./handleDelete");
8
19
  var handleUpload_1 = require("./handleUpload");
9
20
  var webpack_1 = require("./webpack");
10
21
  var azureBlobStorageAdapter = function (_a) {
11
- var connectionString = _a.connectionString, containerName = _a.containerName, baseURL = _a.baseURL, allowContainerCreate = _a.allowContainerCreate;
22
+ var connectionString = _a.connectionString, allowContainerCreate = _a.allowContainerCreate, containerName = _a.containerName, baseURL = _a.baseURL;
23
+ var storageClient = null;
24
+ var getStorageClient = function () {
25
+ if (storageClient)
26
+ return storageClient;
27
+ var blobServiceClient = storage_blob_1.BlobServiceClient.fromConnectionString(connectionString);
28
+ return (storageClient = blobServiceClient.getContainerClient(containerName));
29
+ };
30
+ var createContainerIfNotExists = function () {
31
+ getStorageClient().createIfNotExists({ access: 'blob' });
32
+ };
12
33
  return function (_a) {
13
34
  var collection = _a.collection, prefix = _a.prefix;
14
- var blobServiceClient = storage_blob_1.BlobServiceClient.fromConnectionString(connectionString);
15
- var containerClient = blobServiceClient.getContainerClient(containerName);
16
- return {
17
- handleUpload: (0, handleUpload_1.getHandleUpload)({
35
+ return __assign({ handleUpload: (0, handleUpload_1.getHandleUpload)({
18
36
  collection: collection,
19
- containerClient: containerClient,
20
- allowContainerCreate: allowContainerCreate,
37
+ getStorageClient: getStorageClient,
21
38
  prefix: prefix,
22
- }),
23
- handleDelete: (0, handleDelete_1.getHandleDelete)({ collection: collection, containerClient: containerClient }),
24
- generateURL: (0, generateURL_1.getGenerateURL)({ containerName: containerName, baseURL: baseURL }),
25
- staticHandler: (0, staticHandler_1.getHandler)({ containerClient: containerClient, collection: collection }),
26
- webpack: webpack_1.extendWebpackConfig,
27
- };
39
+ }), handleDelete: (0, handleDelete_1.getHandleDelete)({ collection: collection, getStorageClient: getStorageClient }), generateURL: (0, generateURL_1.getGenerateURL)({ containerName: containerName, baseURL: baseURL }), staticHandler: (0, staticHandler_1.getHandler)({ getStorageClient: getStorageClient, collection: collection }), webpack: webpack_1.extendWebpackConfig }, (allowContainerCreate && { onInit: createContainerIfNotExists }));
28
40
  };
29
41
  };
30
42
  exports.azureBlobStorageAdapter = azureBlobStorageAdapter;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/adapters/azure/index.ts"],"names":[],"mappings":";;;AAAA,oDAAuD;AAEvD,iDAA4C;AAC5C,6CAA8C;AAC9C,+CAAgD;AAChD,+CAAgD;AAChD,qCAA+C;AASxC,IAAM,uBAAuB,GAClC,UAAC,EAAwE;QAAtE,gBAAgB,sBAAA,EAAE,aAAa,mBAAA,EAAE,OAAO,aAAA,EAAE,oBAAoB,0BAAA;IACjE,OAAA,UAAC,EAAsB;YAApB,UAAU,gBAAA,EAAE,MAAM,YAAA;QACnB,IAAM,iBAAiB,GAAG,gCAAiB,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,CAAA;QAClF,IAAM,eAAe,GAAG,iBAAiB,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAA;QAE3E,OAAO;YACL,YAAY,EAAE,IAAA,8BAAe,EAAC;gBAC5B,UAAU,YAAA;gBACV,eAAe,iBAAA;gBACf,oBAAoB,sBAAA;gBACpB,MAAM,QAAA;aACP,CAAC;YACF,YAAY,EAAE,IAAA,8BAAe,EAAC,EAAE,UAAU,YAAA,EAAE,eAAe,iBAAA,EAAE,CAAC;YAC9D,WAAW,EAAE,IAAA,4BAAc,EAAC,EAAE,aAAa,eAAA,EAAE,OAAO,SAAA,EAAE,CAAC;YACvD,aAAa,EAAE,IAAA,0BAAU,EAAC,EAAE,eAAe,iBAAA,EAAE,UAAU,YAAA,EAAE,CAAC;YAC1D,OAAO,EAAE,6BAAmB;SAC7B,CAAA;IACH,CAAC;AAhBD,CAgBC,CAAA;AAlBU,QAAA,uBAAuB,2BAkBjC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/adapters/azure/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,oDAAwE;AAExE,iDAA4C;AAC5C,6CAA8C;AAC9C,+CAAgD;AAChD,+CAAgD;AAChD,qCAA+C;AASxC,IAAM,uBAAuB,GAAG,UAAC,EAKjC;QAJL,gBAAgB,sBAAA,EAChB,oBAAoB,0BAAA,EACpB,aAAa,mBAAA,EACb,OAAO,aAAA;IAEP,IAAI,aAAa,GAA2B,IAAI,CAAA;IAChD,IAAM,gBAAgB,GAAG;QACvB,IAAI,aAAa;YAAE,OAAO,aAAa,CAAA;QACvC,IAAM,iBAAiB,GAAG,gCAAiB,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,CAAA;QAClF,OAAO,CAAC,aAAa,GAAG,iBAAiB,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC,CAAA;IAC9E,CAAC,CAAA;IAED,IAAM,0BAA0B,GAAG;QACjC,gBAAgB,EAAE,CAAC,iBAAiB,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;IAC1D,CAAC,CAAA;IAED,OAAO,UAAC,EAAsB;YAApB,UAAU,gBAAA,EAAE,MAAM,YAAA;QAC1B,kBACE,YAAY,EAAE,IAAA,8BAAe,EAAC;gBAC5B,UAAU,YAAA;gBACV,gBAAgB,kBAAA;gBAChB,MAAM,QAAA;aACP,CAAC,EACF,YAAY,EAAE,IAAA,8BAAe,EAAC,EAAE,UAAU,YAAA,EAAE,gBAAgB,kBAAA,EAAE,CAAC,EAC/D,WAAW,EAAE,IAAA,4BAAc,EAAC,EAAE,aAAa,eAAA,EAAE,OAAO,SAAA,EAAE,CAAC,EACvD,aAAa,EAAE,IAAA,0BAAU,EAAC,EAAE,gBAAgB,kBAAA,EAAE,UAAU,YAAA,EAAE,CAAC,EAC3D,OAAO,EAAE,6BAAmB,IACzB,CAAC,oBAAoB,IAAI,EAAE,MAAM,EAAE,0BAA0B,EAAE,CAAC,EACpE;IACH,CAAC,CAAA;AACH,CAAC,CAAA;AA/BY,QAAA,uBAAuB,2BA+BnC"}
@@ -2,8 +2,8 @@ import type { ContainerClient } from '@azure/storage-blob';
2
2
  import type { CollectionConfig } from 'payload/types';
3
3
  import type { StaticHandler } from '../../types';
4
4
  interface Args {
5
- containerClient: ContainerClient;
5
+ getStorageClient: () => ContainerClient;
6
6
  collection: CollectionConfig;
7
7
  }
8
- export declare const getHandler: ({ containerClient, collection }: Args) => StaticHandler;
8
+ export declare const getHandler: ({ getStorageClient, collection }: Args) => StaticHandler;
9
9
  export {};
@@ -14,7 +14,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
14
14
  function verb(n) { return function (v) { return step([n, v]); }; }
15
15
  function step(op) {
16
16
  if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
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
19
  if (y = 0, t) op = [op[0] & 2, t.value];
20
20
  switch (op[0]) {
@@ -43,7 +43,7 @@ exports.getHandler = void 0;
43
43
  var path_1 = __importDefault(require("path"));
44
44
  var getFilePrefix_1 = require("../../utilities/getFilePrefix");
45
45
  var getHandler = function (_a) {
46
- var containerClient = _a.containerClient, collection = _a.collection;
46
+ var getStorageClient = _a.getStorageClient, collection = _a.collection;
47
47
  return function (req, res, next) { return __awaiter(void 0, void 0, void 0, function () {
48
48
  var prefix, blockBlobClient, blob, err_1;
49
49
  return __generator(this, function (_a) {
@@ -53,7 +53,7 @@ var getHandler = function (_a) {
53
53
  return [4 /*yield*/, (0, getFilePrefix_1.getFilePrefix)({ req: req, collection: collection })];
54
54
  case 1:
55
55
  prefix = _a.sent();
56
- blockBlobClient = containerClient.getBlockBlobClient(path_1.default.posix.join(prefix, req.params.filename));
56
+ blockBlobClient = getStorageClient().getBlockBlobClient(path_1.default.posix.join(prefix, req.params.filename));
57
57
  return [4 /*yield*/, blockBlobClient.download(0)];
58
58
  case 2:
59
59
  blob = _a.sent();
@@ -1 +1 @@
1
- {"version":3,"file":"staticHandler.js","sourceRoot":"","sources":["../../../src/adapters/azure/staticHandler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAuB;AAIvB,+DAA6D;AAOtD,IAAM,UAAU,GAAG,UAAC,EAAqC;QAAnC,eAAe,qBAAA,EAAE,UAAU,gBAAA;IACtD,OAAO,UAAO,GAAG,EAAE,GAAG,EAAE,IAAI;;;;;;oBAET,qBAAM,IAAA,6BAAa,EAAC,EAAE,GAAG,KAAA,EAAE,UAAU,YAAA,EAAE,CAAC,EAAA;;oBAAjD,MAAM,GAAG,SAAwC;oBACjD,eAAe,GAAG,eAAe,CAAC,kBAAkB,CACxD,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAC7C,CAAA;oBAEY,qBAAM,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAA;;oBAAxC,IAAI,GAAG,SAAiC;oBAE9C,GAAG,CAAC,GAAG,CAAC;wBACN,gBAAgB,EAAE,IAAI,CAAC,aAAa;wBACpC,cAAc,EAAE,IAAI,CAAC,WAAW;wBAChC,IAAI,EAAE,IAAI,CAAC,IAAI;qBAChB,CAAC,CAAA;oBAEF,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,kBAAkB,EAAE;wBAC5B,sBAAO,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAA;qBACzC;oBAED,sBAAO,IAAI,EAAE,EAAA;;;oBAEb,sBAAO,IAAI,EAAE,EAAA;;;;SAEhB,CAAA;AACH,CAAC,CAAA;AAzBY,QAAA,UAAU,cAyBtB"}
1
+ {"version":3,"file":"staticHandler.js","sourceRoot":"","sources":["../../../src/adapters/azure/staticHandler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAuB;AAIvB,+DAA6D;AAOtD,IAAM,UAAU,GAAG,UAAC,EAAsC;QAApC,gBAAgB,sBAAA,EAAE,UAAU,gBAAA;IACvD,OAAO,UAAO,GAAG,EAAE,GAAG,EAAE,IAAI;;;;;;oBAET,qBAAM,IAAA,6BAAa,EAAC,EAAE,GAAG,KAAA,EAAE,UAAU,YAAA,EAAE,CAAC,EAAA;;oBAAjD,MAAM,GAAG,SAAwC;oBACjD,eAAe,GAAG,gBAAgB,EAAE,CAAC,kBAAkB,CAC3D,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAC7C,CAAA;oBAEY,qBAAM,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAA;;oBAAxC,IAAI,GAAG,SAAiC;oBAE9C,GAAG,CAAC,GAAG,CAAC;wBACN,gBAAgB,EAAE,IAAI,CAAC,aAAa;wBACpC,cAAc,EAAE,IAAI,CAAC,WAAW;wBAChC,IAAI,EAAE,IAAI,CAAC,IAAI;qBAChB,CAAC,CAAA;oBAEF,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,kBAAkB,EAAE;wBAC5B,sBAAO,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAA;qBACzC;oBAED,sBAAO,IAAI,EAAE,EAAA;;;oBAEb,sBAAO,IAAI,EAAE,EAAA;;;;SAEhB,CAAA;AACH,CAAC,CAAA;AAzBY,QAAA,UAAU,cAyBtB"}
@@ -1,8 +1,8 @@
1
1
  import { Storage } from '@google-cloud/storage';
2
2
  import type { GenerateURL } from '../../types';
3
3
  interface Args {
4
- gcs: Storage;
4
+ getStorageClient: () => Storage;
5
5
  bucket: string;
6
6
  }
7
- export declare const getGenerateURL: ({ gcs, bucket }: Args) => GenerateURL;
7
+ export declare const getGenerateURL: ({ getStorageClient, bucket }: Args) => GenerateURL;
8
8
  export {};
@@ -6,10 +6,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.getGenerateURL = void 0;
7
7
  var path_1 = __importDefault(require("path"));
8
8
  var getGenerateURL = function (_a) {
9
- var gcs = _a.gcs, bucket = _a.bucket;
9
+ var getStorageClient = _a.getStorageClient, bucket = _a.bucket;
10
10
  return function (_a) {
11
11
  var filename = _a.filename, _b = _a.prefix, prefix = _b === void 0 ? '' : _b;
12
- return decodeURIComponent(gcs.bucket(bucket).file(path_1.default.posix.join(prefix, filename)).publicUrl());
12
+ return decodeURIComponent(getStorageClient().bucket(bucket).file(path_1.default.posix.join(prefix, filename)).publicUrl());
13
13
  };
14
14
  };
15
15
  exports.getGenerateURL = getGenerateURL;
@@ -1 +1 @@
1
- {"version":3,"file":"generateURL.js","sourceRoot":"","sources":["../../../src/adapters/gcs/generateURL.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAuB;AAShB,IAAM,cAAc,GACzB,UAAC,EAAqB;QAAnB,GAAG,SAAA,EAAE,MAAM,YAAA;IACd,OAAA,UAAC,EAAyB;YAAvB,QAAQ,cAAA,EAAE,cAAW,EAAX,MAAM,mBAAG,EAAE,KAAA;QACtB,OAAO,kBAAkB,CACvB,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,CACvE,CAAA;IACH,CAAC;AAJD,CAIC,CAAA;AANU,QAAA,cAAc,kBAMxB"}
1
+ {"version":3,"file":"generateURL.js","sourceRoot":"","sources":["../../../src/adapters/gcs/generateURL.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAuB;AAShB,IAAM,cAAc,GACzB,UAAC,EAAkC;QAAhC,gBAAgB,sBAAA,EAAE,MAAM,YAAA;IAC3B,OAAA,UAAC,EAAyB;YAAvB,QAAQ,cAAA,EAAE,cAAW,EAAX,MAAM,mBAAG,EAAE,KAAA;QACtB,OAAO,kBAAkB,CACvB,gBAAgB,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,CACtF,CAAA;IACH,CAAC;AAJD,CAIC,CAAA;AANU,QAAA,cAAc,kBAMxB"}
@@ -1,8 +1,8 @@
1
1
  import { Storage } from '@google-cloud/storage';
2
2
  import type { HandleDelete } from '../../types';
3
3
  interface Args {
4
- gcs: Storage;
4
+ getStorageClient: () => Storage;
5
5
  bucket: string;
6
6
  }
7
- export declare const getHandleDelete: ({ gcs, bucket }: Args) => HandleDelete;
7
+ export declare const getHandleDelete: ({ getStorageClient, bucket }: Args) => HandleDelete;
8
8
  export {};
@@ -14,7 +14,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
14
14
  function verb(n) { return function (v) { return step([n, v]); }; }
15
15
  function step(op) {
16
16
  if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
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
19
  if (y = 0, t) op = [op[0] & 2, t.value];
20
20
  switch (op[0]) {
@@ -42,13 +42,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
42
42
  exports.getHandleDelete = void 0;
43
43
  var path_1 = __importDefault(require("path"));
44
44
  var getHandleDelete = function (_a) {
45
- var gcs = _a.gcs, bucket = _a.bucket;
45
+ var getStorageClient = _a.getStorageClient, bucket = _a.bucket;
46
46
  return function (_a) {
47
47
  var filename = _a.filename, _b = _a.doc.prefix, prefix = _b === void 0 ? '' : _b;
48
48
  return __awaiter(void 0, void 0, void 0, function () {
49
49
  return __generator(this, function (_c) {
50
50
  switch (_c.label) {
51
- case 0: return [4 /*yield*/, gcs.bucket(bucket).file(path_1.default.posix.join(prefix, filename)).delete({
51
+ case 0: return [4 /*yield*/, getStorageClient().bucket(bucket).file(path_1.default.posix.join(prefix, filename)).delete({
52
52
  ignoreNotFound: true,
53
53
  })];
54
54
  case 1:
@@ -1 +1 @@
1
- {"version":3,"file":"handleDelete.js","sourceRoot":"","sources":["../../../src/adapters/gcs/handleDelete.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAuB;AAShB,IAAM,eAAe,GAAG,UAAC,EAAqB;QAAnB,GAAG,SAAA,EAAE,MAAM,YAAA;IAC3C,OAAO,UAAO,EAAkC;YAAhC,QAAQ,cAAA,EAAS,kBAAW,EAAX,MAAM,mBAAG,EAAE,KAAA;;;;4BAC1C,qBAAM,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;4BACtE,cAAc,EAAE,IAAI;yBACrB,CAAC,EAAA;;wBAFF,SAEE,CAAA;;;;;KACH,CAAA;AACH,CAAC,CAAA;AANY,QAAA,eAAe,mBAM3B"}
1
+ {"version":3,"file":"handleDelete.js","sourceRoot":"","sources":["../../../src/adapters/gcs/handleDelete.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAuB;AAShB,IAAM,eAAe,GAAG,UAAC,EAAkC;QAAhC,gBAAgB,sBAAA,EAAE,MAAM,YAAA;IACxD,OAAO,UAAO,EAAkC;YAAhC,QAAQ,cAAA,EAAS,kBAAW,EAAX,MAAM,mBAAG,EAAE,KAAA;;;;4BAC1C,qBAAM,gBAAgB,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;4BACrF,cAAc,EAAE,IAAI;yBACrB,CAAC,EAAA;;wBAFF,SAEE,CAAA;;;;;KACH,CAAA;AACH,CAAC,CAAA;AANY,QAAA,eAAe,mBAM3B"}
@@ -6,7 +6,7 @@ interface Args {
6
6
  bucket: string;
7
7
  acl?: 'Private' | 'Public';
8
8
  prefix?: string;
9
- gcs: Storage;
9
+ getStorageClient: () => Storage;
10
10
  }
11
- export declare const getHandleUpload: ({ gcs, bucket, acl, prefix }: Args) => HandleUpload;
11
+ export declare const getHandleUpload: ({ getStorageClient, bucket, acl, prefix, }: Args) => HandleUpload;
12
12
  export {};
@@ -14,7 +14,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
14
14
  function verb(n) { return function (v) { return step([n, v]); }; }
15
15
  function step(op) {
16
16
  if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
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
19
  if (y = 0, t) op = [op[0] & 2, t.value];
20
20
  switch (op[0]) {
@@ -42,7 +42,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
42
42
  exports.getHandleUpload = void 0;
43
43
  var path_1 = __importDefault(require("path"));
44
44
  var getHandleUpload = function (_a) {
45
- var gcs = _a.gcs, bucket = _a.bucket, acl = _a.acl, _b = _a.prefix, prefix = _b === void 0 ? '' : _b;
45
+ var getStorageClient = _a.getStorageClient, bucket = _a.bucket, acl = _a.acl, _b = _a.prefix, prefix = _b === void 0 ? '' : _b;
46
46
  return function (_a) {
47
47
  var data = _a.data, file = _a.file;
48
48
  return __awaiter(void 0, void 0, void 0, function () {
@@ -50,7 +50,7 @@ var getHandleUpload = function (_a) {
50
50
  return __generator(this, function (_b) {
51
51
  switch (_b.label) {
52
52
  case 0:
53
- gcsFile = gcs.bucket(bucket).file(path_1.default.posix.join(prefix, file.filename));
53
+ gcsFile = getStorageClient().bucket(bucket).file(path_1.default.posix.join(prefix, file.filename));
54
54
  return [4 /*yield*/, gcsFile.save(file.buffer, {
55
55
  metadata: {
56
56
  contentType: file.mimeType,
@@ -1 +1 @@
1
- {"version":3,"file":"handleUpload.js","sourceRoot":"","sources":["../../../src/adapters/gcs/handleUpload.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAuB;AAahB,IAAM,eAAe,GAAG,UAAC,EAAuC;QAArC,GAAG,SAAA,EAAE,MAAM,YAAA,EAAE,GAAG,SAAA,EAAE,cAAW,EAAX,MAAM,mBAAG,EAAE,KAAA;IAC7D,OAAO,UAAO,EAAc;YAAZ,IAAI,UAAA,EAAE,IAAI,UAAA;;;;;;wBAClB,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAA;wBAC/E,qBAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;gCAC9B,QAAQ,EAAE;oCACR,WAAW,EAAE,IAAI,CAAC,QAAQ;iCAC3B;6BACF,CAAC,EAAA;;wBAJF,SAIE,CAAA;6BAEE,GAAG,EAAH,wBAAG;wBACL,qBAAM,OAAO,CAAC,cAAO,GAAG,CAAE,CAAC,EAAE,EAAA;;wBAA7B,SAA6B,CAAA;;4BAG/B,sBAAO,IAAI,EAAA;;;;KACZ,CAAA;AACH,CAAC,CAAA;AAfY,QAAA,eAAe,mBAe3B"}
1
+ {"version":3,"file":"handleUpload.js","sourceRoot":"","sources":["../../../src/adapters/gcs/handleUpload.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAuB;AAahB,IAAM,eAAe,GAAG,UAAC,EAKzB;QAJL,gBAAgB,sBAAA,EAChB,MAAM,YAAA,EACN,GAAG,SAAA,EACH,cAAW,EAAX,MAAM,mBAAG,EAAE,KAAA;IAEX,OAAO,UAAO,EAAc;YAAZ,IAAI,UAAA,EAAE,IAAI,UAAA;;;;;;wBAClB,OAAO,GAAG,gBAAgB,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAA;wBAC9F,qBAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;gCAC9B,QAAQ,EAAE;oCACR,WAAW,EAAE,IAAI,CAAC,QAAQ;iCAC3B;6BACF,CAAC,EAAA;;wBAJF,SAIE,CAAA;6BAEE,GAAG,EAAH,wBAAG;wBACL,qBAAM,OAAO,CAAC,cAAO,GAAG,CAAE,CAAC,EAAE,EAAA;;wBAA7B,SAA6B,CAAA;;4BAG/B,sBAAO,IAAI,EAAA;;;;KACZ,CAAA;AACH,CAAC,CAAA;AApBY,QAAA,eAAe,mBAoB3B"}
@@ -11,18 +11,23 @@ var gcsAdapter = function (_a) {
11
11
  var options = _a.options, bucket = _a.bucket, acl = _a.acl;
12
12
  return function (_a) {
13
13
  var collection = _a.collection, prefix = _a.prefix;
14
- var gcs = new storage_1.Storage(options);
14
+ var storageClient = null;
15
+ var getStorageClient = function () {
16
+ if (storageClient)
17
+ return storageClient;
18
+ return (storageClient = new storage_1.Storage(options));
19
+ };
15
20
  return {
16
21
  handleUpload: (0, handleUpload_1.getHandleUpload)({
17
22
  collection: collection,
18
- gcs: gcs,
23
+ getStorageClient: getStorageClient,
19
24
  bucket: bucket,
20
25
  acl: acl,
21
26
  prefix: prefix,
22
27
  }),
23
- handleDelete: (0, handleDelete_1.getHandleDelete)({ gcs: gcs, bucket: bucket }),
24
- generateURL: (0, generateURL_1.getGenerateURL)({ gcs: gcs, bucket: bucket }),
25
- staticHandler: (0, staticHandler_1.getHandler)({ gcs: gcs, bucket: bucket, collection: collection }),
28
+ handleDelete: (0, handleDelete_1.getHandleDelete)({ getStorageClient: getStorageClient, bucket: bucket }),
29
+ generateURL: (0, generateURL_1.getGenerateURL)({ getStorageClient: getStorageClient, bucket: bucket }),
30
+ staticHandler: (0, staticHandler_1.getHandler)({ getStorageClient: getStorageClient, bucket: bucket, collection: collection }),
26
31
  webpack: webpack_1.extendWebpackConfig,
27
32
  };
28
33
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/adapters/gcs/index.ts"],"names":[],"mappings":";;;AAAA,iDAA+D;AAE/D,6CAA8C;AAC9C,iDAA4C;AAC5C,+CAAgD;AAChD,+CAAgD;AAChD,qCAA+C;AAQxC,IAAM,UAAU,GACrB,UAAC,EAA8B;QAA5B,OAAO,aAAA,EAAE,MAAM,YAAA,EAAE,GAAG,SAAA;IACvB,OAAA,UAAC,EAAsB;YAApB,UAAU,gBAAA,EAAE,MAAM,YAAA;QACnB,IAAM,GAAG,GAAG,IAAI,iBAAO,CAAC,OAAO,CAAC,CAAA;QAEhC,OAAO;YACL,YAAY,EAAE,IAAA,8BAAe,EAAC;gBAC5B,UAAU,YAAA;gBACV,GAAG,KAAA;gBACH,MAAM,QAAA;gBACN,GAAG,KAAA;gBACH,MAAM,QAAA;aACP,CAAC;YACF,YAAY,EAAE,IAAA,8BAAe,EAAC,EAAE,GAAG,KAAA,EAAE,MAAM,QAAA,EAAE,CAAC;YAC9C,WAAW,EAAE,IAAA,4BAAc,EAAC,EAAE,GAAG,KAAA,EAAE,MAAM,QAAA,EAAE,CAAC;YAC5C,aAAa,EAAE,IAAA,0BAAU,EAAC,EAAE,GAAG,KAAA,EAAE,MAAM,QAAA,EAAE,UAAU,YAAA,EAAE,CAAC;YACtD,OAAO,EAAE,6BAAmB;SAC7B,CAAA;IACH,CAAC;AAhBD,CAgBC,CAAA;AAlBU,QAAA,UAAU,cAkBpB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/adapters/gcs/index.ts"],"names":[],"mappings":";;;AAAA,iDAA+D;AAE/D,6CAA8C;AAC9C,iDAA4C;AAC5C,+CAAgD;AAChD,+CAAgD;AAChD,qCAA+C;AAQxC,IAAM,UAAU,GACrB,UAAC,EAA8B;QAA5B,OAAO,aAAA,EAAE,MAAM,YAAA,EAAE,GAAG,SAAA;IACvB,OAAA,UAAC,EAAsB;YAApB,UAAU,gBAAA,EAAE,MAAM,YAAA;QACnB,IAAI,aAAa,GAAmB,IAAI,CAAA;QACxC,IAAM,gBAAgB,GAAG;YACvB,IAAI,aAAa;gBAAE,OAAO,aAAa,CAAA;YACvC,OAAO,CAAC,aAAa,GAAG,IAAI,iBAAO,CAAC,OAAO,CAAC,CAAC,CAAA;QAC/C,CAAC,CAAA;QAED,OAAO;YACL,YAAY,EAAE,IAAA,8BAAe,EAAC;gBAC5B,UAAU,YAAA;gBACV,gBAAgB,kBAAA;gBAChB,MAAM,QAAA;gBACN,GAAG,KAAA;gBACH,MAAM,QAAA;aACP,CAAC;YACF,YAAY,EAAE,IAAA,8BAAe,EAAC,EAAE,gBAAgB,kBAAA,EAAE,MAAM,QAAA,EAAE,CAAC;YAC3D,WAAW,EAAE,IAAA,4BAAc,EAAC,EAAE,gBAAgB,kBAAA,EAAE,MAAM,QAAA,EAAE,CAAC;YACzD,aAAa,EAAE,IAAA,0BAAU,EAAC,EAAE,gBAAgB,kBAAA,EAAE,MAAM,QAAA,EAAE,UAAU,YAAA,EAAE,CAAC;YACnE,OAAO,EAAE,6BAAmB;SAC7B,CAAA;IACH,CAAC;AApBD,CAoBC,CAAA;AAtBU,QAAA,UAAU,cAsBpB"}
@@ -2,9 +2,9 @@ import type { Storage } from '@google-cloud/storage';
2
2
  import type { CollectionConfig } from 'payload/types';
3
3
  import type { StaticHandler } from '../../types';
4
4
  interface Args {
5
- gcs: Storage;
5
+ getStorageClient: () => Storage;
6
6
  bucket: string;
7
7
  collection: CollectionConfig;
8
8
  }
9
- export declare const getHandler: ({ gcs, bucket, collection }: Args) => StaticHandler;
9
+ export declare const getHandler: ({ getStorageClient, bucket, collection }: Args) => StaticHandler;
10
10
  export {};
@@ -14,7 +14,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
14
14
  function verb(n) { return function (v) { return step([n, v]); }; }
15
15
  function step(op) {
16
16
  if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
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
19
  if (y = 0, t) op = [op[0] & 2, t.value];
20
20
  switch (op[0]) {
@@ -43,7 +43,7 @@ exports.getHandler = void 0;
43
43
  var path_1 = __importDefault(require("path"));
44
44
  var getFilePrefix_1 = require("../../utilities/getFilePrefix");
45
45
  var getHandler = function (_a) {
46
- var gcs = _a.gcs, bucket = _a.bucket, collection = _a.collection;
46
+ var getStorageClient = _a.getStorageClient, bucket = _a.bucket, collection = _a.collection;
47
47
  return function (req, res, next) { return __awaiter(void 0, void 0, void 0, function () {
48
48
  var prefix, file, metadata, err_1;
49
49
  return __generator(this, function (_a) {
@@ -53,7 +53,9 @@ var getHandler = function (_a) {
53
53
  return [4 /*yield*/, (0, getFilePrefix_1.getFilePrefix)({ req: req, collection: collection })];
54
54
  case 1:
55
55
  prefix = _a.sent();
56
- file = gcs.bucket(bucket).file(path_1.default.posix.join(prefix, req.params.filename));
56
+ file = getStorageClient()
57
+ .bucket(bucket)
58
+ .file(path_1.default.posix.join(prefix, req.params.filename));
57
59
  return [4 /*yield*/, file.getMetadata()];
58
60
  case 2:
59
61
  metadata = (_a.sent())[0];
@@ -1 +1 @@
1
- {"version":3,"file":"staticHandler.js","sourceRoot":"","sources":["../../../src/adapters/gcs/staticHandler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAuB;AAIvB,+DAA6D;AAQtD,IAAM,UAAU,GAAG,UAAC,EAAiC;QAA/B,GAAG,SAAA,EAAE,MAAM,YAAA,EAAE,UAAU,gBAAA;IAClD,OAAO,UAAO,GAAG,EAAE,GAAG,EAAE,IAAI;;;;;;oBAET,qBAAM,IAAA,6BAAa,EAAC,EAAE,GAAG,KAAA,EAAE,UAAU,YAAA,EAAE,CAAC,EAAA;;oBAAjD,MAAM,GAAG,SAAwC;oBACjD,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;oBAE/D,qBAAM,IAAI,CAAC,WAAW,EAAE,EAAA;;oBAApC,QAAQ,GAAI,CAAA,SAAwB,CAAA,GAA5B;oBAEf,GAAG,CAAC,GAAG,CAAC;wBACN,gBAAgB,EAAE,QAAQ,CAAC,IAAI;wBAC/B,cAAc,EAAE,QAAQ,CAAC,WAAW;wBACpC,IAAI,EAAE,QAAQ,CAAC,IAAI;qBACpB,CAAC,CAAA;oBAEF,sBAAO,IAAI,CAAC,gBAAgB,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAA;;;oBAExC,sBAAO,IAAI,EAAE,EAAA;;;;SAEhB,CAAA;AACH,CAAC,CAAA;AAnBY,QAAA,UAAU,cAmBtB"}
1
+ {"version":3,"file":"staticHandler.js","sourceRoot":"","sources":["../../../src/adapters/gcs/staticHandler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAuB;AAIvB,+DAA6D;AAQtD,IAAM,UAAU,GAAG,UAAC,EAA8C;QAA5C,gBAAgB,sBAAA,EAAE,MAAM,YAAA,EAAE,UAAU,gBAAA;IAC/D,OAAO,UAAO,GAAG,EAAE,GAAG,EAAE,IAAI;;;;;;oBAET,qBAAM,IAAA,6BAAa,EAAC,EAAE,GAAG,KAAA,EAAE,UAAU,YAAA,EAAE,CAAC,EAAA;;oBAAjD,MAAM,GAAG,SAAwC;oBACjD,IAAI,GAAG,gBAAgB,EAAE;yBAC5B,MAAM,CAAC,MAAM,CAAC;yBACd,IAAI,CAAC,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;oBAElC,qBAAM,IAAI,CAAC,WAAW,EAAE,EAAA;;oBAApC,QAAQ,GAAI,CAAA,SAAwB,CAAA,GAA5B;oBAEf,GAAG,CAAC,GAAG,CAAC;wBACN,gBAAgB,EAAE,QAAQ,CAAC,IAAI;wBAC/B,cAAc,EAAE,QAAQ,CAAC,WAAW;wBACpC,IAAI,EAAE,QAAQ,CAAC,IAAI;qBACpB,CAAC,CAAA;oBAEF,sBAAO,IAAI,CAAC,gBAAgB,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAA;;;oBAExC,sBAAO,IAAI,EAAE,EAAA;;;;SAEhB,CAAA;AACH,CAAC,CAAA;AArBY,QAAA,UAAU,cAqBtB"}
@@ -1,8 +1,8 @@
1
1
  import type * as AWS from '@aws-sdk/client-s3';
2
2
  import type { HandleDelete } from '../../types';
3
3
  interface Args {
4
- s3: AWS.S3;
4
+ getStorageClient: () => AWS.S3;
5
5
  bucket: string;
6
6
  }
7
- export declare const getHandleDelete: ({ s3, bucket }: Args) => HandleDelete;
7
+ export declare const getHandleDelete: ({ getStorageClient, bucket }: Args) => HandleDelete;
8
8
  export {};
@@ -14,7 +14,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
14
14
  function verb(n) { return function (v) { return step([n, v]); }; }
15
15
  function step(op) {
16
16
  if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
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
19
  if (y = 0, t) op = [op[0] & 2, t.value];
20
20
  switch (op[0]) {
@@ -42,13 +42,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
42
42
  exports.getHandleDelete = void 0;
43
43
  var path_1 = __importDefault(require("path"));
44
44
  var getHandleDelete = function (_a) {
45
- var s3 = _a.s3, bucket = _a.bucket;
45
+ var getStorageClient = _a.getStorageClient, bucket = _a.bucket;
46
46
  return function (_a) {
47
47
  var filename = _a.filename, _b = _a.doc.prefix, prefix = _b === void 0 ? '' : _b;
48
48
  return __awaiter(void 0, void 0, void 0, function () {
49
49
  return __generator(this, function (_c) {
50
50
  switch (_c.label) {
51
- case 0: return [4 /*yield*/, s3.deleteObject({
51
+ case 0: return [4 /*yield*/, getStorageClient().deleteObject({
52
52
  Bucket: bucket,
53
53
  Key: path_1.default.posix.join(prefix, filename),
54
54
  })];
@@ -1 +1 @@
1
- {"version":3,"file":"handleDelete.js","sourceRoot":"","sources":["../../../src/adapters/s3/handleDelete.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAuB;AAShB,IAAM,eAAe,GAAG,UAAC,EAAoB;QAAlB,EAAE,QAAA,EAAE,MAAM,YAAA;IAC1C,OAAO,UAAO,EAAkC;YAAhC,QAAQ,cAAA,EAAS,kBAAW,EAAX,MAAM,mBAAG,EAAE,KAAA;;;;4BAC1C,qBAAM,EAAE,CAAC,YAAY,CAAC;4BACpB,MAAM,EAAE,MAAM;4BACd,GAAG,EAAE,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC;yBACvC,CAAC,EAAA;;wBAHF,SAGE,CAAA;;;;;KACH,CAAA;AACH,CAAC,CAAA;AAPY,QAAA,eAAe,mBAO3B"}
1
+ {"version":3,"file":"handleDelete.js","sourceRoot":"","sources":["../../../src/adapters/s3/handleDelete.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAuB;AAShB,IAAM,eAAe,GAAG,UAAC,EAAkC;QAAhC,gBAAgB,sBAAA,EAAE,MAAM,YAAA;IACxD,OAAO,UAAO,EAAkC;YAAhC,QAAQ,cAAA,EAAS,kBAAW,EAAX,MAAM,mBAAG,EAAE,KAAA;;;;4BAC1C,qBAAM,gBAAgB,EAAE,CAAC,YAAY,CAAC;4BACpC,MAAM,EAAE,MAAM;4BACd,GAAG,EAAE,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC;yBACvC,CAAC,EAAA;;wBAHF,SAGE,CAAA;;;;;KACH,CAAA;AACH,CAAC,CAAA;AAPY,QAAA,eAAe,mBAO3B"}
@@ -6,7 +6,7 @@ interface Args {
6
6
  bucket: string;
7
7
  acl?: 'private' | 'public-read';
8
8
  prefix?: string;
9
- s3: AWS.S3;
9
+ getStorageClient: () => AWS.S3;
10
10
  }
11
- export declare const getHandleUpload: ({ s3, bucket, acl, prefix }: Args) => HandleUpload;
11
+ export declare const getHandleUpload: ({ getStorageClient, bucket, acl, prefix, }: Args) => HandleUpload;
12
12
  export {};
@@ -14,7 +14,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
14
14
  function verb(n) { return function (v) { return step([n, v]); }; }
15
15
  function step(op) {
16
16
  if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
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
19
  if (y = 0, t) op = [op[0] & 2, t.value];
20
20
  switch (op[0]) {
@@ -40,24 +40,51 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
40
40
  };
41
41
  Object.defineProperty(exports, "__esModule", { value: true });
42
42
  exports.getHandleUpload = void 0;
43
+ var fs_1 = __importDefault(require("fs"));
43
44
  var path_1 = __importDefault(require("path"));
45
+ var lib_storage_1 = require("@aws-sdk/lib-storage");
46
+ var multipartThreshold = 1024 * 1024 * 50; // 50MB
44
47
  var getHandleUpload = function (_a) {
45
- var s3 = _a.s3, bucket = _a.bucket, acl = _a.acl, _b = _a.prefix, prefix = _b === void 0 ? '' : _b;
48
+ var getStorageClient = _a.getStorageClient, bucket = _a.bucket, acl = _a.acl, _b = _a.prefix, prefix = _b === void 0 ? '' : _b;
46
49
  return function (_a) {
47
50
  var data = _a.data, file = _a.file;
48
51
  return __awaiter(void 0, void 0, void 0, function () {
52
+ var fileKey, fileBufferOrStream, parallelUploadS3;
49
53
  return __generator(this, function (_b) {
50
54
  switch (_b.label) {
51
- case 0: return [4 /*yield*/, s3.putObject({
52
- Bucket: bucket,
53
- Key: path_1.default.posix.join(prefix, file.filename),
54
- Body: file.buffer,
55
- ACL: acl,
56
- ContentType: file.mimeType,
57
- })];
55
+ case 0:
56
+ fileKey = path_1.default.posix.join(prefix, file.filename);
57
+ fileBufferOrStream = file.tempFilePath
58
+ ? fs_1.default.createReadStream(file.tempFilePath)
59
+ : file.buffer;
60
+ if (!(file.buffer.length > 0 && file.buffer.length < multipartThreshold)) return [3 /*break*/, 2];
61
+ return [4 /*yield*/, getStorageClient().putObject({
62
+ Bucket: bucket,
63
+ Key: fileKey,
64
+ Body: fileBufferOrStream,
65
+ ACL: acl,
66
+ ContentType: file.mimeType,
67
+ })];
58
68
  case 1:
59
69
  _b.sent();
60
70
  return [2 /*return*/, data];
71
+ case 2:
72
+ parallelUploadS3 = new lib_storage_1.Upload({
73
+ client: getStorageClient(),
74
+ params: {
75
+ Bucket: bucket,
76
+ Key: fileKey,
77
+ Body: fileBufferOrStream,
78
+ ACL: acl,
79
+ ContentType: file.mimeType,
80
+ },
81
+ queueSize: 4,
82
+ partSize: multipartThreshold,
83
+ });
84
+ return [4 /*yield*/, parallelUploadS3.done()];
85
+ case 3:
86
+ _b.sent();
87
+ return [2 /*return*/, data];
61
88
  }
62
89
  });
63
90
  });
@@ -1 +1 @@
1
- {"version":3,"file":"handleUpload.js","sourceRoot":"","sources":["../../../src/adapters/s3/handleUpload.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAuB;AAahB,IAAM,eAAe,GAAG,UAAC,EAAsC;QAApC,EAAE,QAAA,EAAE,MAAM,YAAA,EAAE,GAAG,SAAA,EAAE,cAAW,EAAX,MAAM,mBAAG,EAAE,KAAA;IAC5D,OAAO,UAAO,EAAc;YAAZ,IAAI,UAAA,EAAE,IAAI,UAAA;;;;4BACxB,qBAAM,EAAE,CAAC,SAAS,CAAC;4BACjB,MAAM,EAAE,MAAM;4BACd,GAAG,EAAE,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC;4BAC3C,IAAI,EAAE,IAAI,CAAC,MAAM;4BACjB,GAAG,EAAE,GAAG;4BACR,WAAW,EAAE,IAAI,CAAC,QAAQ;yBAC3B,CAAC,EAAA;;wBANF,SAME,CAAA;wBAEF,sBAAO,IAAI,EAAA;;;;KACZ,CAAA;AACH,CAAC,CAAA;AAZY,QAAA,eAAe,mBAY3B"}
1
+ {"version":3,"file":"handleUpload.js","sourceRoot":"","sources":["../../../src/adapters/s3/handleUpload.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAAmB;AACnB,8CAAuB;AAKvB,oDAA6C;AAW7C,IAAM,kBAAkB,GAAG,IAAI,GAAG,IAAI,GAAG,EAAE,CAAA,CAAC,OAAO;AAE5C,IAAM,eAAe,GAAG,UAAC,EAKzB;QAJL,gBAAgB,sBAAA,EAChB,MAAM,YAAA,EACN,GAAG,SAAA,EACH,cAAW,EAAX,MAAM,mBAAG,EAAE,KAAA;IAEX,OAAO,UAAO,EAAc;YAAZ,IAAI,UAAA,EAAE,IAAI,UAAA;;;;;;wBAClB,OAAO,GAAG,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;wBAEhD,kBAAkB,GAA6B,IAAI,CAAC,YAAY;4BACpE,CAAC,CAAC,YAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC;4BACxC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAA;6BAEX,CAAA,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,kBAAkB,CAAA,EAAjE,wBAAiE;wBACnE,qBAAM,gBAAgB,EAAE,CAAC,SAAS,CAAC;gCACjC,MAAM,EAAE,MAAM;gCACd,GAAG,EAAE,OAAO;gCACZ,IAAI,EAAE,kBAAkB;gCACxB,GAAG,EAAE,GAAG;gCACR,WAAW,EAAE,IAAI,CAAC,QAAQ;6BAC3B,CAAC,EAAA;;wBANF,SAME,CAAA;wBAEF,sBAAO,IAAI,EAAA;;wBAGP,gBAAgB,GAAG,IAAI,oBAAM,CAAC;4BAClC,MAAM,EAAE,gBAAgB,EAAE;4BAC1B,MAAM,EAAE;gCACN,MAAM,EAAE,MAAM;gCACd,GAAG,EAAE,OAAO;gCACZ,IAAI,EAAE,kBAAkB;gCACxB,GAAG,EAAE,GAAG;gCACR,WAAW,EAAE,IAAI,CAAC,QAAQ;6BAC3B;4BACD,SAAS,EAAE,CAAC;4BACZ,QAAQ,EAAE,kBAAkB;yBAC7B,CAAC,CAAA;wBAEF,qBAAM,gBAAgB,CAAC,IAAI,EAAE,EAAA;;wBAA7B,SAA6B,CAAA;wBAE7B,sBAAO,IAAI,EAAA;;;;KACZ,CAAA;AACH,CAAC,CAAA;AA1CY,QAAA,eAAe,mBA0C3B"}
@@ -34,18 +34,24 @@ var s3Adapter = function (_a) {
34
34
  var config = _a.config, bucket = _a.bucket, acl = _a.acl;
35
35
  return function (_a) {
36
36
  var collection = _a.collection, prefix = _a.prefix;
37
- var s3 = new AWS.S3(config);
37
+ var storageClient = null;
38
+ var getStorageClient = function () {
39
+ if (storageClient)
40
+ return storageClient;
41
+ storageClient = new AWS.S3(config);
42
+ return storageClient;
43
+ };
38
44
  return {
39
45
  handleUpload: (0, handleUpload_1.getHandleUpload)({
40
46
  collection: collection,
41
- s3: s3,
47
+ getStorageClient: getStorageClient,
42
48
  bucket: bucket,
43
49
  acl: acl,
44
50
  prefix: prefix,
45
51
  }),
46
- handleDelete: (0, handleDelete_1.getHandleDelete)({ s3: s3, bucket: bucket }),
52
+ handleDelete: (0, handleDelete_1.getHandleDelete)({ getStorageClient: getStorageClient, bucket: bucket }),
47
53
  generateURL: (0, generateURL_1.getGenerateURL)({ bucket: bucket, config: config }),
48
- staticHandler: (0, staticHandler_1.getHandler)({ bucket: bucket, s3: s3, collection: collection }),
54
+ staticHandler: (0, staticHandler_1.getHandler)({ bucket: bucket, getStorageClient: getStorageClient, collection: collection }),
49
55
  webpack: webpack_1.extendWebpackConfig,
50
56
  };
51
57
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/adapters/s3/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sDAAyC;AAEzC,6CAA8C;AAC9C,iDAA4C;AAC5C,+CAAgD;AAChD,+CAAgD;AAChD,qCAA+C;AAQxC,IAAM,SAAS,GACpB,UAAC,EAA6B;QAA3B,MAAM,YAAA,EAAE,MAAM,YAAA,EAAE,GAAG,SAAA;IACtB,OAAA,UAAC,EAAsB;YAApB,UAAU,gBAAA,EAAE,MAAM,YAAA;QACnB,IAAM,EAAE,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,CAAA;QAE7B,OAAO;YACL,YAAY,EAAE,IAAA,8BAAe,EAAC;gBAC5B,UAAU,YAAA;gBACV,EAAE,IAAA;gBACF,MAAM,QAAA;gBACN,GAAG,KAAA;gBACH,MAAM,QAAA;aACP,CAAC;YACF,YAAY,EAAE,IAAA,8BAAe,EAAC,EAAE,EAAE,IAAA,EAAE,MAAM,QAAA,EAAE,CAAC;YAC7C,WAAW,EAAE,IAAA,4BAAc,EAAC,EAAE,MAAM,QAAA,EAAE,MAAM,QAAA,EAAE,CAAC;YAC/C,aAAa,EAAE,IAAA,0BAAU,EAAC,EAAE,MAAM,QAAA,EAAE,EAAE,IAAA,EAAE,UAAU,YAAA,EAAE,CAAC;YACrD,OAAO,EAAE,6BAAmB;SAC7B,CAAA;IACH,CAAC;AAhBD,CAgBC,CAAA;AAlBU,QAAA,SAAS,aAkBnB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/adapters/s3/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sDAAyC;AAEzC,6CAA8C;AAC9C,iDAA4C;AAC5C,+CAAgD;AAChD,+CAAgD;AAChD,qCAA+C;AAQxC,IAAM,SAAS,GACpB,UAAC,EAA6B;QAA3B,MAAM,YAAA,EAAE,MAAM,YAAA,EAAE,GAAG,SAAA;IACtB,OAAA,UAAC,EAAsB;YAApB,UAAU,gBAAA,EAAE,MAAM,YAAA;QACnB,IAAI,aAAa,GAAkB,IAAI,CAAA;QACvC,IAAM,gBAAgB,GAAiB;YACrC,IAAI,aAAa;gBAAE,OAAO,aAAa,CAAA;YACvC,aAAa,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,CAAA;YAClC,OAAO,aAAa,CAAA;QACtB,CAAC,CAAA;QAED,OAAO;YACL,YAAY,EAAE,IAAA,8BAAe,EAAC;gBAC5B,UAAU,YAAA;gBACV,gBAAgB,kBAAA;gBAChB,MAAM,QAAA;gBACN,GAAG,KAAA;gBACH,MAAM,QAAA;aACP,CAAC;YACF,YAAY,EAAE,IAAA,8BAAe,EAAC,EAAE,gBAAgB,kBAAA,EAAE,MAAM,QAAA,EAAE,CAAC;YAC3D,WAAW,EAAE,IAAA,4BAAc,EAAC,EAAE,MAAM,QAAA,EAAE,MAAM,QAAA,EAAE,CAAC;YAC/C,aAAa,EAAE,IAAA,0BAAU,EAAC,EAAE,MAAM,QAAA,EAAE,gBAAgB,kBAAA,EAAE,UAAU,YAAA,EAAE,CAAC;YACnE,OAAO,EAAE,6BAAmB;SAC7B,CAAA;IACH,CAAC;AArBD,CAqBC,CAAA;AAvBU,QAAA,SAAS,aAuBnB"}
@@ -1,2 +1,8 @@
1
1
  export function S3(): null;
2
+ export function Upload(): null;
2
3
  export function HeadObjectCommand(): null;
4
+ export function PutObjectCommand(): null;
5
+ export function UploadPartCommand(): null;
6
+ export function CreateMultipartUploadCommand(): null;
7
+ export function CompleteMultipartUploadCommand(): null;
8
+ export function PutObjectTaggingCommand(): null;
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
- exports.S3 = function () {
3
- return null;
4
- };
5
- exports.HeadObjectCommand = function () {
6
- return null;
7
- };
2
+ exports.S3 = function () { return null; };
3
+ exports.Upload = function () { return null; };
4
+ exports.HeadObjectCommand = function () { return null; };
5
+ exports.PutObjectCommand = function () { return null; };
6
+ exports.UploadPartCommand = function () { return null; };
7
+ exports.CreateMultipartUploadCommand = function () { return null; };
8
+ exports.CompleteMultipartUploadCommand = function () { return null; };
9
+ exports.PutObjectTaggingCommand = function () { return null; };
8
10
  //# sourceMappingURL=mock.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mock.js","sourceRoot":"","sources":["../../../src/adapters/s3/mock.js"],"names":[],"mappings":";AAAA,OAAO,CAAC,EAAE,GAAG;IACX,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,OAAO,CAAC,iBAAiB,GAAG;IAC1B,OAAO,IAAI,CAAA;AACb,CAAC,CAAA"}
1
+ {"version":3,"file":"mock.js","sourceRoot":"","sources":["../../../src/adapters/s3/mock.js"],"names":[],"mappings":";AAAA,OAAO,CAAC,EAAE,GAAG,cAAM,OAAA,IAAI,EAAJ,CAAI,CAAA;AACvB,OAAO,CAAC,MAAM,GAAG,cAAM,OAAA,IAAI,EAAJ,CAAI,CAAA;AAE3B,OAAO,CAAC,iBAAiB,GAAG,cAAM,OAAA,IAAI,EAAJ,CAAI,CAAA;AACtC,OAAO,CAAC,gBAAgB,GAAG,cAAM,OAAA,IAAI,EAAJ,CAAI,CAAA;AACrC,OAAO,CAAC,iBAAiB,GAAG,cAAM,OAAA,IAAI,EAAJ,CAAI,CAAA;AACtC,OAAO,CAAC,4BAA4B,GAAG,cAAM,OAAA,IAAI,EAAJ,CAAI,CAAA;AACjD,OAAO,CAAC,8BAA8B,GAAG,cAAM,OAAA,IAAI,EAAJ,CAAI,CAAA;AACnD,OAAO,CAAC,uBAAuB,GAAG,cAAM,OAAA,IAAI,EAAJ,CAAI,CAAA"}
@@ -2,9 +2,9 @@ import type * as AWS from '@aws-sdk/client-s3';
2
2
  import type { CollectionConfig } from 'payload/types';
3
3
  import type { StaticHandler } from '../../types';
4
4
  interface Args {
5
- s3: AWS.S3;
5
+ getStorageClient: () => AWS.S3;
6
6
  bucket: string;
7
7
  collection: CollectionConfig;
8
8
  }
9
- export declare const getHandler: ({ s3, bucket, collection }: Args) => StaticHandler;
9
+ export declare const getHandler: ({ getStorageClient, bucket, collection }: Args) => StaticHandler;
10
10
  export {};
@@ -14,7 +14,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
14
14
  function verb(n) { return function (v) { return step([n, v]); }; }
15
15
  function step(op) {
16
16
  if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
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
19
  if (y = 0, t) op = [op[0] & 2, t.value];
20
20
  switch (op[0]) {
@@ -43,7 +43,7 @@ exports.getHandler = void 0;
43
43
  var path_1 = __importDefault(require("path"));
44
44
  var getFilePrefix_1 = require("../../utilities/getFilePrefix");
45
45
  var getHandler = function (_a) {
46
- var s3 = _a.s3, bucket = _a.bucket, collection = _a.collection;
46
+ var getStorageClient = _a.getStorageClient, bucket = _a.bucket, collection = _a.collection;
47
47
  return function (req, res, next) { return __awaiter(void 0, void 0, void 0, function () {
48
48
  var prefix, object, err_1;
49
49
  return __generator(this, function (_a) {
@@ -53,7 +53,7 @@ var getHandler = function (_a) {
53
53
  return [4 /*yield*/, (0, getFilePrefix_1.getFilePrefix)({ req: req, collection: collection })];
54
54
  case 1:
55
55
  prefix = _a.sent();
56
- return [4 /*yield*/, s3.getObject({
56
+ return [4 /*yield*/, getStorageClient().getObject({
57
57
  Bucket: bucket,
58
58
  Key: path_1.default.posix.join(prefix, req.params.filename),
59
59
  })];
@@ -1 +1 @@
1
- {"version":3,"file":"staticHandler.js","sourceRoot":"","sources":["../../../src/adapters/s3/staticHandler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAuB;AAKvB,+DAA6D;AAQtD,IAAM,UAAU,GAAG,UAAC,EAAgC;QAA9B,EAAE,QAAA,EAAE,MAAM,YAAA,EAAE,UAAU,gBAAA;IACjD,OAAO,UAAO,GAAG,EAAE,GAAG,EAAE,IAAI;;;;;;oBAET,qBAAM,IAAA,6BAAa,EAAC,EAAE,GAAG,KAAA,EAAE,UAAU,YAAA,EAAE,CAAC,EAAA;;oBAAjD,MAAM,GAAG,SAAwC;oBAExC,qBAAM,EAAE,CAAC,SAAS,CAAC;4BAChC,MAAM,EAAE,MAAM;4BACd,GAAG,EAAE,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC;yBAClD,CAAC,EAAA;;oBAHI,MAAM,GAAG,SAGb;oBAEF,GAAG,CAAC,GAAG,CAAC;wBACN,gBAAgB,EAAE,MAAM,CAAC,aAAa;wBACtC,cAAc,EAAE,MAAM,CAAC,WAAW;wBAClC,IAAI,EAAE,MAAM,CAAC,IAAI;qBAClB,CAAC,CAAA;oBAEF,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,EAAE;wBAChB,sBAAQ,MAAM,CAAC,IAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAA;qBAC3C;oBAED,sBAAO,IAAI,EAAE,EAAA;;;oBAEb,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAG,CAAC,CAAA;oBAC7B,sBAAO,IAAI,EAAE,EAAA;;;;SAEhB,CAAA;AACH,CAAC,CAAA;AA1BY,QAAA,UAAU,cA0BtB"}
1
+ {"version":3,"file":"staticHandler.js","sourceRoot":"","sources":["../../../src/adapters/s3/staticHandler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAuB;AAKvB,+DAA6D;AAQtD,IAAM,UAAU,GAAG,UAAC,EAA8C;QAA5C,gBAAgB,sBAAA,EAAE,MAAM,YAAA,EAAE,UAAU,gBAAA;IAC/D,OAAO,UAAO,GAAG,EAAE,GAAG,EAAE,IAAI;;;;;;oBAET,qBAAM,IAAA,6BAAa,EAAC,EAAE,GAAG,KAAA,EAAE,UAAU,YAAA,EAAE,CAAC,EAAA;;oBAAjD,MAAM,GAAG,SAAwC;oBAExC,qBAAM,gBAAgB,EAAE,CAAC,SAAS,CAAC;4BAChD,MAAM,EAAE,MAAM;4BACd,GAAG,EAAE,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC;yBAClD,CAAC,EAAA;;oBAHI,MAAM,GAAG,SAGb;oBAEF,GAAG,CAAC,GAAG,CAAC;wBACN,gBAAgB,EAAE,MAAM,CAAC,aAAa;wBACtC,cAAc,EAAE,MAAM,CAAC,WAAW;wBAClC,IAAI,EAAE,MAAM,CAAC,IAAI;qBAClB,CAAC,CAAA;oBAEF,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,EAAE;wBAChB,sBAAQ,MAAM,CAAC,IAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAA;qBAC3C;oBAED,sBAAO,IAAI,EAAE,EAAA;;;oBAEb,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAG,CAAC,CAAA;oBAC7B,sBAAO,IAAI,EAAE,EAAA;;;;SAEhB,CAAA;AACH,CAAC,CAAA;AA1BY,QAAA,UAAU,cA0BtB"}
@@ -18,7 +18,7 @@ exports.extendWebpackConfig = void 0;
18
18
  var path_1 = __importDefault(require("path"));
19
19
  var extendWebpackConfig = function (existingWebpackConfig) {
20
20
  var _a;
21
- var newConfig = __assign(__assign({}, existingWebpackConfig), { resolve: __assign(__assign({}, (existingWebpackConfig.resolve || {})), { alias: __assign(__assign({}, (((_a = existingWebpackConfig.resolve) === null || _a === void 0 ? void 0 : _a.alias) ? existingWebpackConfig.resolve.alias : {})), { '@aws-sdk/client-s3': path_1.default.resolve(__dirname, './mock.js') }) }) });
21
+ var newConfig = __assign(__assign({}, existingWebpackConfig), { resolve: __assign(__assign({}, (existingWebpackConfig.resolve || {})), { alias: __assign(__assign({}, (((_a = existingWebpackConfig.resolve) === null || _a === void 0 ? void 0 : _a.alias) ? existingWebpackConfig.resolve.alias : {})), { '@aws-sdk/client-s3': path_1.default.resolve(__dirname, './mock.js'), '@aws-sdk/lib-storage': path_1.default.resolve(__dirname, './mock.js') }) }) });
22
22
  return newConfig;
23
23
  };
24
24
  exports.extendWebpackConfig = extendWebpackConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"webpack.js","sourceRoot":"","sources":["../../../src/adapters/s3/webpack.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,8CAAuB;AAEhB,IAAM,mBAAmB,GAAG,UAAC,qBAAoC;;IACtE,IAAM,SAAS,yBACV,qBAAqB,KACxB,OAAO,wBACF,CAAC,qBAAqB,CAAC,OAAO,IAAI,EAAE,CAAC,KACxC,KAAK,wBACA,CAAC,CAAA,MAAA,qBAAqB,CAAC,OAAO,0CAAE,KAAK,EAAC,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,KACpF,oBAAoB,EAAE,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC,SAG/D,CAAA;IAED,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAbY,QAAA,mBAAmB,uBAa/B"}
1
+ {"version":3,"file":"webpack.js","sourceRoot":"","sources":["../../../src/adapters/s3/webpack.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,8CAAuB;AAEhB,IAAM,mBAAmB,GAAG,UAAC,qBAAoC;;IACtE,IAAM,SAAS,yBACV,qBAAqB,KACxB,OAAO,wBACF,CAAC,qBAAqB,CAAC,OAAO,IAAI,EAAE,CAAC,KACxC,KAAK,wBACA,CAAC,CAAA,MAAA,qBAAqB,CAAC,OAAO,0CAAE,KAAK,EAAC,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,KACpF,oBAAoB,EAAE,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC,EAC1D,sBAAsB,EAAE,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC,SAGjE,CAAA;IAED,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAdY,QAAA,mBAAmB,uBAc/B"}
@@ -35,7 +35,7 @@ var getFields = function (_a) {
35
35
  type: 'text',
36
36
  admin: {
37
37
  readOnly: true,
38
- disabled: true,
38
+ hidden: true,
39
39
  },
40
40
  };
41
41
  var basePrefixField = {
@@ -43,7 +43,7 @@ var getFields = function (_a) {
43
43
  type: 'text',
44
44
  admin: {
45
45
  readOnly: true,
46
- disabled: true,
46
+ hidden: true,
47
47
  },
48
48
  };
49
49
  var fields = __spreadArray([], collection.fields, true);
@@ -77,7 +77,7 @@ var getFields = function (_a) {
77
77
  fields.splice(existingSizesFieldIndex_1, 1);
78
78
  }
79
79
  var sizesField = __assign(__assign({}, (existingSizesField_1 || {})), { name: 'sizes', type: 'group', admin: {
80
- disabled: true,
80
+ hidden: true,
81
81
  }, fields: collection.upload.imageSizes.map(function (size) {
82
82
  var _a;
83
83
  var existingSizeField = existingSizesField_1 === null || existingSizesField_1 === void 0 ? void 0 : existingSizesField_1.fields.find(function (existingField) { return 'name' in existingField && existingField.name === size.name; });
@@ -1 +1 @@
1
- {"version":3,"file":"getFields.js","sourceRoot":"","sources":["../../src/fields/getFields.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getFields.js","sourceRoot":"","sources":["../../src/fields/getFields.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
14
14
  function verb(n) { return function (v) { return step([n, v]); }; }
15
15
  function step(op) {
16
16
  if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
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
19
  if (y = 0, t) op = [op[0] & 2, t.value];
20
20
  switch (op[0]) {
@@ -14,7 +14,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
14
14
  function verb(n) { return function (v) { return step([n, v]); }; }
15
15
  function step(op) {
16
16
  if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
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
19
  if (y = 0, t) op = [op[0] & 2, t.value];
20
20
  switch (op[0]) {
@@ -14,7 +14,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
14
14
  function verb(n) { return function (v) { return step([n, v]); }; }
15
15
  function step(op) {
16
16
  if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
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
19
  if (y = 0, t) op = [op[0] & 2, t.value];
20
20
  switch (op[0]) {
package/dist/plugin.js CHANGED
@@ -10,6 +10,42 @@ var __assign = (this && this.__assign) || function () {
10
10
  };
11
11
  return __assign.apply(this, arguments);
12
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 };
47
+ }
48
+ };
13
49
  var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
14
50
  if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
15
51
  if (ar || !(i in from)) {
@@ -35,6 +71,7 @@ var cloudStorage = function (pluginOptions) {
35
71
  return function (config) {
36
72
  var allCollectionOptions = pluginOptions.collections;
37
73
  var webpack = (0, webpack_1.extendWebpackConfig)({ options: pluginOptions, config: config });
74
+ var initFunctions = [];
38
75
  return __assign(__assign({}, config), { admin: __assign(__assign({}, (config.admin || {})), { webpack: webpack }), collections: (config.collections || []).map(function (existingCollection) {
39
76
  var _a, _b;
40
77
  var options = allCollectionOptions[existingCollection.slug];
@@ -43,6 +80,8 @@ var cloudStorage = function (pluginOptions) {
43
80
  collection: existingCollection,
44
81
  prefix: options.prefix,
45
82
  });
83
+ if (adapter.onInit)
84
+ initFunctions.push(adapter.onInit);
46
85
  var fields = (0, getFields_1.getFields)({
47
86
  collection: existingCollection,
48
87
  disablePayloadAccessControl: options.disablePayloadAccessControl,
@@ -66,7 +105,20 @@ var cloudStorage = function (pluginOptions) {
66
105
  ], false) }), fields: fields });
67
106
  }
68
107
  return existingCollection;
69
- }) });
108
+ }), onInit: function (payload) { return __awaiter(void 0, void 0, void 0, function () {
109
+ return __generator(this, function (_a) {
110
+ switch (_a.label) {
111
+ case 0:
112
+ initFunctions.forEach(function (fn) { return fn(); });
113
+ if (!config.onInit) return [3 /*break*/, 2];
114
+ return [4 /*yield*/, config.onInit(payload)];
115
+ case 1:
116
+ _a.sent();
117
+ _a.label = 2;
118
+ case 2: return [2 /*return*/];
119
+ }
120
+ });
121
+ }); } });
70
122
  };
71
123
  };
72
124
  exports.cloudStorage = cloudStorage;
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AACA,qCAA+C;AAE/C,qDAA0D;AAC1D,mDAAwD;AACxD,gDAA8C;AAE9C,4EAA4E;AAC5E,4DAA4D;AAE5D,4FAA4F;AAC5F,iFAAiF;AACjF,qEAAqE;AAErE,0FAA0F;AAEnF,IAAM,YAAY,GACvB,UAAC,aAA4B;IAC7B,OAAA,UAAC,MAAc;QACL,IAAa,oBAAoB,GAAK,aAAa,YAAlB,CAAkB;QAE3D,IAAM,OAAO,GAAG,IAAA,6BAAmB,EAAC,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,QAAA,EAAE,CAAC,CAAA;QAEvE,6BACK,MAAM,KACT,KAAK,wBACA,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,KACvB,OAAO,SAAA,KAET,WAAW,EAAE,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,UAAA,kBAAkB;;gBAC5D,IAAM,OAAO,GAAG,oBAAoB,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAA;gBAE7D,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,EAAE;oBACpB,IAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;wBAC9B,UAAU,EAAE,kBAAkB;wBAC9B,MAAM,EAAE,OAAO,CAAC,MAAM;qBACvB,CAAC,CAAA;oBAEF,IAAM,MAAM,GAAG,IAAA,qBAAS,EAAC;wBACvB,UAAU,EAAE,kBAAkB;wBAC9B,2BAA2B,EAAE,OAAO,CAAC,2BAA2B;wBAChE,eAAe,EAAE,OAAO,CAAC,eAAe;wBACxC,MAAM,EAAE,OAAO,CAAC,MAAM;wBACtB,OAAO,SAAA;qBACR,CAAC,CAAA;oBAEF,IAAM,QAAQ,qBACT,CAAC,OAAO,kBAAkB,CAAC,MAAM,KAAK,QAAQ;wBACjD,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC;wBAC/C,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,QAAQ;wBACpC,CAAC,CAAC,EAAE,CAAC,OACR,CAAA;oBAED,IAAI,CAAC,OAAO,CAAC,2BAA2B,EAAE;wBACxC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;qBACrC;oBAED,6BACK,kBAAkB,KACrB,MAAM,wBACD,CAAC,OAAO,kBAAkB,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,KACnF,QAAQ,UAAA,EACR,mBAAmB,EACjB,OAAO,OAAO,CAAC,mBAAmB,KAAK,SAAS;gCAC9C,CAAC,CAAC,OAAO,CAAC,mBAAmB;gCAC7B,CAAC,CAAC,IAAI,KAEZ,KAAK,wBACA,CAAC,kBAAkB,CAAC,KAAK,IAAI,EAAE,CAAC,KACnC,YAAY,kCACP,CAAC,CAAA,MAAA,kBAAkB,CAAC,KAAK,0CAAE,YAAY,KAAI,EAAE,CAAC;gCACjD,IAAA,kCAAmB,EAAC,EAAE,OAAO,SAAA,EAAE,UAAU,EAAE,kBAAkB,EAAE,CAAC;uCAElE,WAAW,kCACN,CAAC,CAAA,MAAA,kBAAkB,CAAC,KAAK,0CAAE,WAAW,KAAI,EAAE,CAAC;gCAChD,IAAA,gCAAkB,EAAC,EAAE,OAAO,SAAA,EAAE,UAAU,EAAE,kBAAkB,EAAE,CAAC;0CAGnE,MAAM,QAAA,IACP;iBACF;gBAED,OAAO,kBAAkB,CAAA;YAC3B,CAAC,CAAC,IACH;IACH,CAAC;AAnED,CAmEC,CAAA;AArEU,QAAA,YAAY,gBAqEtB"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -7,9 +7,11 @@ import type { Configuration as WebpackConfig } from 'webpack';
7
7
  export interface File {
8
8
  buffer: Buffer;
9
9
  filename: string;
10
+ filesize: number;
10
11
  mimeType: string;
12
+ tempFilePath?: string;
11
13
  }
12
- export declare type HandleUpload = (args: {
14
+ export type HandleUpload = (args: {
13
15
  collection: CollectionConfig;
14
16
  req: PayloadRequest;
15
17
  data: any;
@@ -18,30 +20,31 @@ export declare type HandleUpload = (args: {
18
20
  export interface TypeWithPrefix {
19
21
  prefix?: string;
20
22
  }
21
- export declare type HandleDelete = (args: {
23
+ export type HandleDelete = (args: {
22
24
  collection: CollectionConfig;
23
25
  req: PayloadRequest;
24
26
  doc: TypeWithID & FileData & TypeWithPrefix;
25
27
  filename: string;
26
28
  }) => Promise<void> | void;
27
- export declare type GenerateURL = (args: {
29
+ export type GenerateURL = (args: {
28
30
  filename: string;
29
31
  collection: CollectionConfig;
30
32
  prefix?: string;
31
33
  }) => string | Promise<string>;
32
- export declare type StaticHandler = (req: PayloadRequest, res: Response, next: NextFunction) => Promise<unknown> | unknown;
34
+ export type StaticHandler = (req: PayloadRequest, res: Response, next: NextFunction) => Promise<unknown> | unknown;
33
35
  export interface GeneratedAdapter {
34
36
  handleUpload: HandleUpload;
35
37
  handleDelete: HandleDelete;
36
38
  generateURL: GenerateURL;
37
39
  staticHandler: StaticHandler;
38
40
  webpack?: (config: WebpackConfig) => WebpackConfig;
41
+ onInit?: () => void;
39
42
  }
40
- export declare type Adapter = (args: {
43
+ export type Adapter = (args: {
41
44
  collection: CollectionConfig;
42
45
  prefix?: string;
43
46
  }) => GeneratedAdapter;
44
- export declare type GenerateFileURL = (args: {
47
+ export type GenerateFileURL = (args: {
45
48
  collection: CollectionConfig;
46
49
  filename: string;
47
50
  prefix?: string;
@@ -14,7 +14,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
14
14
  function verb(n) { return function (v) { return step([n, v]); }; }
15
15
  function step(op) {
16
16
  if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
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
19
  if (y = 0, t) op = [op[0] & 2, t.value];
20
20
  switch (op[0]) {
@@ -11,6 +11,8 @@ function getIncomingFiles(_a) {
11
11
  filename: data.filename,
12
12
  mimeType: data.mimeType,
13
13
  buffer: file.data,
14
+ tempFilePath: file.tempFilePath,
15
+ filesize: file.size,
14
16
  };
15
17
  files = [mainFile];
16
18
  if (data === null || data === void 0 ? void 0 : data.sizes) {
@@ -23,6 +25,7 @@ function getIncomingFiles(_a) {
23
25
  filename: "".concat(resizedFileData.filename),
24
26
  mimeType: data.mimeType,
25
27
  buffer: req.payloadUploadSizes[key],
28
+ filesize: req.payloadUploadSizes[key].length,
26
29
  },
27
30
  ]);
28
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getIncomingFiles.js","sourceRoot":"","sources":["../../src/utilities/getIncomingFiles.ts"],"names":[],"mappings":";;;AAIA,SAAgB,gBAAgB,CAAC,EAMhC;;QALC,GAAG,SAAA,EACH,IAAI,UAAA;IAKJ,IAAM,IAAI,GAAG,MAAA,GAAG,CAAC,KAAK,0CAAE,IAAI,CAAA;IAE5B,IAAI,KAAK,GAAW,EAAE,CAAA;IAEtB,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE;QAC1C,IAAM,QAAQ,GAAS;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC,IAAI;SAClB,CAAA;QAED,KAAK,GAAG,CAAC,QAAQ,CAAC,CAAA;QAElB,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,EAAE;YACf,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,UAAC,EAAsB;;oBAArB,GAAG,QAAA,EAAE,eAAe,QAAA;gBACvD,IAAI,CAAA,MAAA,GAAG,CAAC,kBAAkB,0CAAG,GAAG,CAAC,KAAI,IAAI,CAAC,QAAQ,EAAE;oBAClD,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;wBACnB;4BACE,QAAQ,EAAE,UAAG,eAAe,CAAC,QAAQ,CAAE;4BACvC,QAAQ,EAAE,IAAI,CAAC,QAAQ;4BACvB,MAAM,EAAE,GAAG,CAAC,kBAAkB,CAAC,GAAG,CAAC;yBACpC;qBACF,CAAC,CAAA;iBACH;YACH,CAAC,CAAC,CAAA;SACH;KACF;IAED,OAAO,KAAK,CAAA;AACd,CAAC;AApCD,4CAoCC"}
1
+ {"version":3,"file":"getIncomingFiles.js","sourceRoot":"","sources":["../../src/utilities/getIncomingFiles.ts"],"names":[],"mappings":";;;AAIA,SAAgB,gBAAgB,CAAC,EAMhC;;QALC,GAAG,SAAA,EACH,IAAI,UAAA;IAKJ,IAAM,IAAI,GAAG,MAAA,GAAG,CAAC,KAAK,0CAAE,IAAI,CAAA;IAE5B,IAAI,KAAK,GAAW,EAAE,CAAA;IAEtB,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE;QAC1C,IAAM,QAAQ,GAAS;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC,IAAI;YACjB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,QAAQ,EAAE,IAAI,CAAC,IAAI;SACpB,CAAA;QAED,KAAK,GAAG,CAAC,QAAQ,CAAC,CAAA;QAElB,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,EAAE;YACf,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,UAAC,EAAsB;;oBAArB,GAAG,QAAA,EAAE,eAAe,QAAA;gBACvD,IAAI,CAAA,MAAA,GAAG,CAAC,kBAAkB,0CAAG,GAAG,CAAC,KAAI,IAAI,CAAC,QAAQ,EAAE;oBAClD,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;wBACnB;4BACE,QAAQ,EAAE,UAAG,eAAe,CAAC,QAAQ,CAAE;4BACvC,QAAQ,EAAE,IAAI,CAAC,QAAQ;4BACvB,MAAM,EAAE,GAAG,CAAC,kBAAkB,CAAC,GAAG,CAAC;4BACnC,QAAQ,EAAE,GAAG,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,MAAM;yBAC7C;qBACF,CAAC,CAAA;iBACH;YACH,CAAC,CAAC,CAAA;SACH;KACF;IAED,OAAO,KAAK,CAAA;AACd,CAAC;AAvCD,4CAuCC"}
package/package.json CHANGED
@@ -1,18 +1,20 @@
1
1
  {
2
2
  "name": "@payloadcms/plugin-cloud-storage",
3
3
  "description": "The official cloud storage plugin for Payload CMS",
4
- "version": "1.0.12",
4
+ "version": "1.0.13",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "license": "SEE LICENSE IN LICENSE.MD",
8
8
  "scripts": {
9
9
  "build": "tsc",
10
10
  "lint": "eslint src",
11
- "lint:fix": "eslint --fix --ext .ts,.tsx src"
11
+ "lint:fix": "eslint --fix --ext .ts,.tsx src",
12
+ "clean": "rimraf dist && rimraf dev/yarn.lock",
13
+ "prepublishOnly": "yarn clean && yarn build"
12
14
  },
13
- "prepublishOnly": "yarn build",
14
15
  "peerDependencies": {
15
16
  "@aws-sdk/client-s3": "^3.142.0",
17
+ "@aws-sdk/lib-storage": "^3.267.0",
16
18
  "@azure/storage-blob": "^12.11.0",
17
19
  "@google-cloud/storage": "^6.4.1",
18
20
  "payload": "^1.0.27"
@@ -21,6 +23,9 @@
21
23
  "@aws-sdk/client-s3": {
22
24
  "optional": true
23
25
  },
26
+ "@aws-sdk/lib-storage": {
27
+ "optional": true
28
+ },
24
29
  "@azure/storage-blob": {
25
30
  "optional": true
26
31
  },
@@ -36,6 +41,7 @@
36
41
  ],
37
42
  "devDependencies": {
38
43
  "@aws-sdk/client-s3": "^3.142.0",
44
+ "@aws-sdk/lib-storage": "^3.267.0",
39
45
  "@azure/storage-blob": "^12.11.0",
40
46
  "@google-cloud/storage": "^6.4.1",
41
47
  "@types/express": "^4.17.9",
@@ -49,8 +55,9 @@
49
55
  "eslint-plugin-import": "2.25.4",
50
56
  "eslint-plugin-prettier": "^4.0.0",
51
57
  "nodemon": "^2.0.6",
52
- "payload": "^1.1.3",
58
+ "payload": "^1.6.6",
53
59
  "prettier": "^2.7.1",
60
+ "rimraf": "^4.1.2",
54
61
  "ts-node": "^9.1.1",
55
62
  "typescript": "^4.1.3"
56
63
  }