@payloadcms/plugin-cloud-storage 1.0.16 → 1.0.17-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (146) hide show
  1. package/.editorconfig +10 -0
  2. package/.gitignore +248 -0
  3. package/.prettierignore +1 -0
  4. package/.prettierrc.js +8 -0
  5. package/.vscode/launch.json +40 -0
  6. package/.vscode/settings.json +9 -0
  7. package/README.md +20 -2
  8. package/dev/.env +21 -0
  9. package/dev/.env.example +21 -0
  10. package/dev/dist/dev/src/collections/Media.js +56 -0
  11. package/dev/dist/dev/src/collections/Media.js.map +1 -0
  12. package/dev/dist/dev/src/collections/Users.js +23 -0
  13. package/dev/dist/dev/src/collections/Users.js.map +1 -0
  14. package/dev/dist/dev/src/payload.config.js +153 -0
  15. package/dev/dist/dev/src/payload.config.js.map +1 -0
  16. package/dev/dist/dev/src/server.js +26 -0
  17. package/dev/dist/dev/src/server.js.map +1 -0
  18. package/dev/dist/src/adapters/azure/generateURL.js +16 -0
  19. package/dev/dist/src/adapters/azure/generateURL.js.map +1 -0
  20. package/dev/dist/src/adapters/azure/handleDelete.js +64 -0
  21. package/dev/dist/src/adapters/azure/handleDelete.js.map +1 -0
  22. package/dev/dist/src/adapters/azure/handleUpload.js +81 -0
  23. package/dev/dist/src/adapters/azure/handleUpload.js.map +1 -0
  24. package/dev/dist/src/adapters/azure/index.js +43 -0
  25. package/dev/dist/src/adapters/azure/index.js.map +1 -0
  26. package/dev/dist/src/adapters/azure/staticHandler.js +82 -0
  27. package/dev/dist/src/adapters/azure/staticHandler.js.map +1 -0
  28. package/dev/dist/src/adapters/azure/webpack.js +25 -0
  29. package/dev/dist/src/adapters/azure/webpack.js.map +1 -0
  30. package/dev/dist/src/adapters/gcs/generateURL.js +16 -0
  31. package/dev/dist/src/adapters/gcs/generateURL.js.map +1 -0
  32. package/dev/dist/src/adapters/gcs/handleDelete.js +63 -0
  33. package/dev/dist/src/adapters/gcs/handleDelete.js.map +1 -0
  34. package/dev/dist/src/adapters/gcs/handleUpload.js +73 -0
  35. package/dev/dist/src/adapters/gcs/handleUpload.js.map +1 -0
  36. package/dev/dist/src/adapters/gcs/index.js +36 -0
  37. package/dev/dist/src/adapters/gcs/index.js.map +1 -0
  38. package/dev/dist/src/adapters/gcs/staticHandler.js +77 -0
  39. package/dev/dist/src/adapters/gcs/staticHandler.js.map +1 -0
  40. package/dev/dist/src/adapters/gcs/webpack.js +25 -0
  41. package/dev/dist/src/adapters/gcs/webpack.js.map +1 -0
  42. package/dev/dist/src/adapters/s3/generateURL.js +16 -0
  43. package/dev/dist/src/adapters/s3/generateURL.js.map +1 -0
  44. package/dev/dist/src/adapters/s3/handleDelete.js +64 -0
  45. package/dev/dist/src/adapters/s3/handleDelete.js.map +1 -0
  46. package/dev/dist/src/adapters/s3/handleUpload.js +94 -0
  47. package/dev/dist/src/adapters/s3/handleUpload.js.map +1 -0
  48. package/dev/dist/src/adapters/s3/index.js +60 -0
  49. package/dev/dist/src/adapters/s3/index.js.map +1 -0
  50. package/dev/dist/src/adapters/s3/staticHandler.js +82 -0
  51. package/dev/dist/src/adapters/s3/staticHandler.js.map +1 -0
  52. package/dev/dist/src/adapters/s3/webpack.js +25 -0
  53. package/dev/dist/src/adapters/s3/webpack.js.map +1 -0
  54. package/dev/dist/src/fields/getFields.js +119 -0
  55. package/dev/dist/src/fields/getFields.js.map +1 -0
  56. package/dev/dist/src/hooks/afterDelete.js +92 -0
  57. package/dev/dist/src/hooks/afterDelete.js.map +1 -0
  58. package/dev/dist/src/hooks/afterRead.js +80 -0
  59. package/dev/dist/src/hooks/afterRead.js.map +1 -0
  60. package/dev/dist/src/hooks/beforeChange.js +106 -0
  61. package/dev/dist/src/hooks/beforeChange.js.map +1 -0
  62. package/dev/dist/src/index.js +6 -0
  63. package/dev/dist/src/index.js.map +1 -0
  64. package/dev/dist/src/plugin.js +131 -0
  65. package/dev/dist/src/plugin.js.map +1 -0
  66. package/dev/dist/src/types.js +3 -0
  67. package/dev/dist/src/types.js.map +1 -0
  68. package/dev/dist/src/utilities/getFilePrefix.js +81 -0
  69. package/dev/dist/src/utilities/getFilePrefix.js.map +1 -0
  70. package/dev/dist/src/utilities/getIncomingFiles.js +38 -0
  71. package/dev/dist/src/utilities/getIncomingFiles.js.map +1 -0
  72. package/dev/dist/src/utilities/getRangeFromHeader.js +67 -0
  73. package/dev/dist/src/utilities/getRangeFromHeader.js.map +1 -0
  74. package/dev/dist/src/webpack.js +40 -0
  75. package/dev/dist/src/webpack.js.map +1 -0
  76. package/dev/nodemon.json +8 -0
  77. package/dev/package.json +34 -0
  78. package/dev/src/collections/Media.ts +56 -0
  79. package/dev/src/collections/Users.ts +23 -0
  80. package/dev/src/mocks/fsMock.js +1 -0
  81. package/dev/src/mocks/promisifyMock.js +1 -0
  82. package/dev/src/payload.config.ts +111 -0
  83. package/dev/src/server.ts +26 -0
  84. package/dev/tsconfig.json +20 -0
  85. package/dist/adapters/s3/fsMock.d.ts +3 -0
  86. package/dist/adapters/s3/fsMock.js +3 -0
  87. package/dist/adapters/s3/fsMock.js.map +1 -0
  88. package/dist/adapters/s3/webpack.js +1 -1
  89. package/dist/adapters/s3/webpack.js.map +1 -1
  90. package/dist/plugin.d.ts +1 -1
  91. package/dist/plugin.js +10 -4
  92. package/dist/plugin.js.map +1 -1
  93. package/dist/types.d.ts +6 -0
  94. package/docs/local-dev.md +47 -0
  95. package/eslint-config/index.js +15 -0
  96. package/eslint-config/rules/import.js +38 -0
  97. package/eslint-config/rules/prettier.js +7 -0
  98. package/eslint-config/rules/style.js +21 -0
  99. package/eslint-config/rules/typescript.js +628 -0
  100. package/package.json +1 -1
  101. package/src/adapters/azure/emulator/docker-compose.yml +16 -0
  102. package/src/adapters/azure/fileStub.js +1 -0
  103. package/src/adapters/azure/generateURL.ts +13 -0
  104. package/src/adapters/azure/handleDelete.ts +16 -0
  105. package/src/adapters/azure/handleUpload.ts +41 -0
  106. package/src/adapters/azure/index.ts +48 -0
  107. package/src/adapters/azure/mock.js +13 -0
  108. package/src/adapters/azure/staticHandler.ts +38 -0
  109. package/src/adapters/azure/webpack.ts +24 -0
  110. package/src/adapters/gcs/emulator/docker-compose.yml +15 -0
  111. package/src/adapters/gcs/generateURL.ts +16 -0
  112. package/src/adapters/gcs/handleDelete.ts +16 -0
  113. package/src/adapters/gcs/handleUpload.ts +34 -0
  114. package/src/adapters/gcs/index.ts +37 -0
  115. package/src/adapters/gcs/mock.js +3 -0
  116. package/src/adapters/gcs/staticHandler.ts +34 -0
  117. package/src/adapters/gcs/webpack.ts +21 -0
  118. package/src/adapters/s3/emulator/.localstack/cache/machine.json +1 -0
  119. package/src/adapters/s3/emulator/.localstack/cache/server.test.pem +127 -0
  120. package/src/adapters/s3/emulator/.localstack/cache/server.test.pem.crt +99 -0
  121. package/src/adapters/s3/emulator/.localstack/cache/server.test.pem.key +28 -0
  122. package/src/adapters/s3/emulator/.localstack/cache/service-catalog-2_1_1_dev-1_29_149.pickle +0 -0
  123. package/src/adapters/s3/emulator/docker-compose.yml +15 -0
  124. package/src/adapters/s3/fileStub.js +1 -0
  125. package/src/adapters/s3/fsMock.js +1 -0
  126. package/src/adapters/s3/generateURL.ts +14 -0
  127. package/src/adapters/s3/handleDelete.ts +17 -0
  128. package/src/adapters/s3/handleUpload.ts +62 -0
  129. package/src/adapters/s3/index.ts +38 -0
  130. package/src/adapters/s3/mock.js +9 -0
  131. package/src/adapters/s3/staticHandler.ts +41 -0
  132. package/src/adapters/s3/webpack.ts +23 -0
  133. package/src/fields/getFields.ts +155 -0
  134. package/src/hooks/afterDelete.ts +35 -0
  135. package/src/hooks/afterRead.ts +38 -0
  136. package/src/hooks/beforeChange.ts +59 -0
  137. package/src/index.ts +1 -0
  138. package/src/plugin.ts +101 -0
  139. package/src/types.ts +79 -0
  140. package/src/utilities/getFilePrefix.ts +26 -0
  141. package/src/utilities/getIncomingFiles.ts +44 -0
  142. package/src/utilities/getRangeFromHeader.ts +27 -0
  143. package/src/webpack.ts +46 -0
  144. package/tsconfig.json +23 -0
  145. package/yarn-error.log +8163 -0
  146. package/yarn.lock +8062 -0
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var express_1 = __importDefault(require("express"));
7
+ var payload_1 = __importDefault(require("payload"));
8
+ // eslint-disable-next-line @typescript-eslint/no-require-imports
9
+ require('dotenv').config();
10
+ var app = (0, express_1.default)();
11
+ // Redirect root to Admin panel
12
+ app.get('/', function (_, res) {
13
+ res.redirect('/admin');
14
+ });
15
+ // Initialize Payload
16
+ payload_1.default.init({
17
+ secret: process.env.PAYLOAD_SECRET,
18
+ mongoURL: process.env.MONGODB_URI,
19
+ express: app,
20
+ onInit: function () {
21
+ payload_1.default.logger.info("Payload Admin URL: ".concat(payload_1.default.getAdminURL()));
22
+ },
23
+ });
24
+ // Add your own express routes here
25
+ app.listen(3000);
26
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/server.ts"],"names":[],"mappings":";;;;;AAAA,oDAA6B;AAC7B,oDAA6B;AAE7B,iEAAiE;AACjE,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAA;AAE1B,IAAM,GAAG,GAAG,IAAA,iBAAO,GAAE,CAAA;AAErB,+BAA+B;AAC/B,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,UAAC,CAAC,EAAE,GAAG;IAClB,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;AACxB,CAAC,CAAC,CAAA;AAEF,qBAAqB;AACrB,iBAAO,CAAC,IAAI,CAAC;IACX,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;IAClC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW;IACjC,OAAO,EAAE,GAAG;IACZ,MAAM,EAAE;QACN,iBAAO,CAAC,MAAM,CAAC,IAAI,CAAC,6BAAsB,iBAAO,CAAC,WAAW,EAAE,CAAE,CAAC,CAAA;IACpE,CAAC;CACF,CAAC,CAAA;AAEF,mCAAmC;AAEnC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getGenerateURL = void 0;
7
+ var path_1 = __importDefault(require("path"));
8
+ var getGenerateURL = function (_a) {
9
+ var containerName = _a.containerName, baseURL = _a.baseURL;
10
+ return function (_a) {
11
+ var filename = _a.filename, _b = _a.prefix, prefix = _b === void 0 ? '' : _b;
12
+ return "".concat(baseURL, "/").concat(containerName, "/").concat(path_1.default.posix.join(prefix, filename));
13
+ };
14
+ };
15
+ exports.getGenerateURL = getGenerateURL;
16
+ //# sourceMappingURL=generateURL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generateURL.js","sourceRoot":"","sources":["../../../../../src/adapters/azure/generateURL.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAuB;AAQhB,IAAM,cAAc,GACzB,UAAC,EAAgC;QAA9B,aAAa,mBAAA,EAAE,OAAO,aAAA;IACzB,OAAA,UAAC,EAAyB;YAAvB,QAAQ,cAAA,EAAE,cAAW,EAAX,MAAM,mBAAG,EAAE,KAAA;QACtB,OAAO,UAAG,OAAO,cAAI,aAAa,cAAI,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAE,CAAA;IAC3E,CAAC;AAFD,CAEC,CAAA;AAJU,QAAA,cAAc,kBAIxB"}
@@ -0,0 +1,64 @@
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 };
36
+ }
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.getHandleDelete = void 0;
43
+ var path_1 = __importDefault(require("path"));
44
+ var getHandleDelete = function (_a) {
45
+ var getStorageClient = _a.getStorageClient;
46
+ return function (_a) {
47
+ var filename = _a.filename, _b = _a.doc.prefix, prefix = _b === void 0 ? '' : _b;
48
+ return __awaiter(void 0, void 0, void 0, function () {
49
+ var blockBlobClient;
50
+ return __generator(this, function (_c) {
51
+ switch (_c.label) {
52
+ case 0:
53
+ blockBlobClient = getStorageClient().getBlockBlobClient(path_1.default.posix.join(prefix, filename));
54
+ return [4 /*yield*/, blockBlobClient.deleteIfExists()];
55
+ case 1:
56
+ _c.sent();
57
+ return [2 /*return*/];
58
+ }
59
+ });
60
+ });
61
+ };
62
+ };
63
+ exports.getHandleDelete = getHandleDelete;
64
+ //# sourceMappingURL=handleDelete.js.map
@@ -0,0 +1 @@
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"}
@@ -0,0 +1,81 @@
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 };
36
+ }
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.getHandleUpload = void 0;
43
+ var path_1 = __importDefault(require("path"));
44
+ var fs_1 = __importDefault(require("fs"));
45
+ var stream_1 = require("stream");
46
+ var abort_controller_1 = require("@azure/abort-controller");
47
+ var multipartThreshold = 1024 * 1024 * 50; // 50MB
48
+ var getHandleUpload = function (_a) {
49
+ var getStorageClient = _a.getStorageClient, _b = _a.prefix, prefix = _b === void 0 ? '' : _b;
50
+ return function (_a) {
51
+ var data = _a.data, file = _a.file;
52
+ return __awaiter(void 0, void 0, void 0, function () {
53
+ var blockBlobClient, fileBufferOrStream;
54
+ return __generator(this, function (_b) {
55
+ switch (_b.label) {
56
+ case 0:
57
+ blockBlobClient = getStorageClient().getBlockBlobClient(path_1.default.posix.join(prefix, file.filename));
58
+ if (!(!file.tempFilePath && file.buffer.length > 0 && file.buffer.length < multipartThreshold)) return [3 /*break*/, 2];
59
+ return [4 /*yield*/, blockBlobClient.upload(file.buffer, file.buffer.byteLength, {
60
+ blobHTTPHeaders: { blobContentType: file.mimeType },
61
+ })];
62
+ case 1:
63
+ _b.sent();
64
+ return [2 /*return*/, data];
65
+ case 2:
66
+ fileBufferOrStream = file.tempFilePath
67
+ ? fs_1.default.createReadStream(file.tempFilePath)
68
+ : stream_1.Readable.from(file.buffer);
69
+ return [4 /*yield*/, blockBlobClient.uploadStream(fileBufferOrStream, 4 * 1024 * 1024, 4, {
70
+ abortSignal: abort_controller_1.AbortController.timeout(30 * 60 * 1000),
71
+ })];
72
+ case 3:
73
+ _b.sent();
74
+ return [2 /*return*/, data];
75
+ }
76
+ });
77
+ });
78
+ };
79
+ };
80
+ exports.getHandleUpload = getHandleUpload;
81
+ //# sourceMappingURL=handleUpload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleUpload.js","sourceRoot":"","sources":["../../../../../src/adapters/azure/handleUpload.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAuB;AACvB,0CAAmB;AACnB,iCAAiC;AAEjC,4DAAyD;AAUzD,IAAM,kBAAkB,GAAG,IAAI,GAAG,IAAI,GAAG,EAAE,CAAA,CAAC,OAAO;AAC5C,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;6BAGG,CAAA,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,kBAAkB,CAAA,EAAvF,wBAAuF;wBACzF,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;;wBAGP,kBAAkB,GAAa,IAAI,CAAC,YAAY;4BACpD,CAAC,CAAC,YAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC;4BACxC,CAAC,CAAC,iBAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;wBAE9B,qBAAM,eAAe,CAAC,YAAY,CAAC,kBAAkB,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,CAAC,EAAE;gCACzE,WAAW,EAAE,kCAAe,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;6BACrD,CAAC,EAAA;;wBAFF,SAEE,CAAA;wBAEF,sBAAO,IAAI,EAAA;;;;KACZ,CAAA;AACH,CAAC,CAAA;AAzBY,QAAA,eAAe,mBAyB3B"}
@@ -0,0 +1,43 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.azureBlobStorageAdapter = void 0;
15
+ var storage_blob_1 = require("@azure/storage-blob");
16
+ var staticHandler_1 = require("./staticHandler");
17
+ var generateURL_1 = require("./generateURL");
18
+ var handleDelete_1 = require("./handleDelete");
19
+ var handleUpload_1 = require("./handleUpload");
20
+ var webpack_1 = require("./webpack");
21
+ var azureBlobStorageAdapter = function (_a) {
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
+ };
33
+ return function (_a) {
34
+ var collection = _a.collection, prefix = _a.prefix;
35
+ return __assign({ handleUpload: (0, handleUpload_1.getHandleUpload)({
36
+ collection: collection,
37
+ getStorageClient: getStorageClient,
38
+ prefix: prefix,
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 }));
40
+ };
41
+ };
42
+ exports.azureBlobStorageAdapter = azureBlobStorageAdapter;
43
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/adapters/azure/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AACA,oDAAuD;AAEvD,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"}
@@ -0,0 +1,82 @@
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 };
36
+ }
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.getHandler = void 0;
43
+ var path_1 = __importDefault(require("path"));
44
+ var getFilePrefix_1 = require("../../utilities/getFilePrefix");
45
+ var getRangeFromHeader_1 = __importDefault(require("../../utilities/getRangeFromHeader"));
46
+ var getHandler = function (_a) {
47
+ var getStorageClient = _a.getStorageClient, collection = _a.collection;
48
+ return function (req, res, next) { return __awaiter(void 0, void 0, void 0, function () {
49
+ var prefix, blockBlobClient, _a, start, end, blob, response, err_1;
50
+ return __generator(this, function (_b) {
51
+ switch (_b.label) {
52
+ case 0:
53
+ _b.trys.push([0, 4, , 5]);
54
+ return [4 /*yield*/, (0, getFilePrefix_1.getFilePrefix)({ req: req, collection: collection })];
55
+ case 1:
56
+ prefix = _b.sent();
57
+ blockBlobClient = getStorageClient().getBlockBlobClient(path_1.default.posix.join(prefix, req.params.filename));
58
+ return [4 /*yield*/, (0, getRangeFromHeader_1.default)(blockBlobClient, req.headers.range)];
59
+ case 2:
60
+ _a = _b.sent(), start = _a.start, end = _a.end;
61
+ return [4 /*yield*/, blockBlobClient.download(start, end)
62
+ // eslint-disable-next-line no-underscore-dangle
63
+ ];
64
+ case 3:
65
+ blob = _b.sent();
66
+ response = blob._response;
67
+ res.header(response.headers.rawHeaders());
68
+ res.status(response.status);
69
+ if (blob === null || blob === void 0 ? void 0 : blob.readableStreamBody) {
70
+ return [2 /*return*/, blob.readableStreamBody.pipe(res)];
71
+ }
72
+ return [2 /*return*/, next()];
73
+ case 4:
74
+ err_1 = _b.sent();
75
+ return [2 /*return*/, next()];
76
+ case 5: return [2 /*return*/];
77
+ }
78
+ });
79
+ }); };
80
+ };
81
+ exports.getHandler = getHandler;
82
+ //# sourceMappingURL=staticHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"staticHandler.js","sourceRoot":"","sources":["../../../../../src/adapters/azure/staticHandler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,8CAAuB;AAGvB,+DAA6D;AAC7D,0FAAmE;AAO5D,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;oBAEsB,qBAAM,IAAA,4BAAkB,EAAC,eAAe,EAAE,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,EAAA;;oBAA7E,KAAiB,SAA4D,EAA3E,KAAK,WAAA,EAAE,GAAG,SAAA;oBAEL,qBAAM,eAAe,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC;wBACvD,gDAAgD;sBADO;;oBAAjD,IAAI,GAAG,SAA0C;oBAEjD,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAA;oBAC/B,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAA;oBACzC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;oBAE3B,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"}
@@ -0,0 +1,25 @@
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 __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.extendWebpackConfig = void 0;
18
+ var path_1 = __importDefault(require("path"));
19
+ var extendWebpackConfig = function (existingWebpackConfig) {
20
+ var _a, _b;
21
+ var newConfig = __assign(__assign({}, existingWebpackConfig), { resolve: __assign(__assign({}, (existingWebpackConfig.resolve || {})), { fallback: __assign(__assign({}, (((_a = existingWebpackConfig.resolve) === null || _a === void 0 ? void 0 : _a.fallback) ? existingWebpackConfig.resolve.fallback : {})), { stream: false }), alias: __assign(__assign({}, (((_b = existingWebpackConfig.resolve) === null || _b === void 0 ? void 0 : _b.alias) ? existingWebpackConfig.resolve.alias : {})), { stream: path_1.default.resolve(__dirname, './mock.js'), '@azure/storage-blob': path_1.default.resolve(__dirname, './mock.js'), '@azure/abort-controller': path_1.default.resolve(__dirname, './mock.js'), fs: path_1.default.resolve(__dirname, './fileStub.js') }) }) });
22
+ return newConfig;
23
+ };
24
+ exports.extendWebpackConfig = extendWebpackConfig;
25
+ //# sourceMappingURL=webpack.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webpack.js","sourceRoot":"","sources":["../../../../../src/adapters/azure/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,QAAQ,wBACH,CAAC,CAAA,MAAA,qBAAqB,CAAC,OAAO,0CAAE,QAAQ,EAAC,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,KAC1F,MAAM,EAAE,KAAK,KAEf,KAAK,wBACA,CAAC,CAAA,MAAA,qBAAqB,CAAC,OAAO,0CAAE,KAAK,EAAC,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,KACpF,MAAM,EAAE,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC,EAC5C,qBAAqB,EAAE,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC,EAC3D,yBAAyB,EAAE,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC,EAC/D,EAAE,EAAE,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,eAAe,CAAC,SAGjD,CAAA;IAED,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AApBY,QAAA,mBAAmB,uBAoB/B"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getGenerateURL = void 0;
7
+ var path_1 = __importDefault(require("path"));
8
+ var getGenerateURL = function (_a) {
9
+ var getStorageClient = _a.getStorageClient, bucket = _a.bucket;
10
+ return function (_a) {
11
+ var filename = _a.filename, _b = _a.prefix, prefix = _b === void 0 ? '' : _b;
12
+ return decodeURIComponent(getStorageClient().bucket(bucket).file(path_1.default.posix.join(prefix, filename)).publicUrl());
13
+ };
14
+ };
15
+ exports.getGenerateURL = getGenerateURL;
16
+ //# sourceMappingURL=generateURL.js.map
@@ -0,0 +1 @@
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"}
@@ -0,0 +1,63 @@
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 };
36
+ }
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.getHandleDelete = void 0;
43
+ var path_1 = __importDefault(require("path"));
44
+ var getHandleDelete = function (_a) {
45
+ var getStorageClient = _a.getStorageClient, bucket = _a.bucket;
46
+ return function (_a) {
47
+ var filename = _a.filename, _b = _a.doc.prefix, prefix = _b === void 0 ? '' : _b;
48
+ return __awaiter(void 0, void 0, void 0, function () {
49
+ return __generator(this, function (_c) {
50
+ switch (_c.label) {
51
+ case 0: return [4 /*yield*/, getStorageClient().bucket(bucket).file(path_1.default.posix.join(prefix, filename)).delete({
52
+ ignoreNotFound: true,
53
+ })];
54
+ case 1:
55
+ _c.sent();
56
+ return [2 /*return*/];
57
+ }
58
+ });
59
+ });
60
+ };
61
+ };
62
+ exports.getHandleDelete = getHandleDelete;
63
+ //# sourceMappingURL=handleDelete.js.map
@@ -0,0 +1 @@
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"}
@@ -0,0 +1,73 @@
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 };
36
+ }
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.getHandleUpload = void 0;
43
+ var path_1 = __importDefault(require("path"));
44
+ var getHandleUpload = function (_a) {
45
+ var getStorageClient = _a.getStorageClient, bucket = _a.bucket, acl = _a.acl, _b = _a.prefix, prefix = _b === void 0 ? '' : _b;
46
+ return function (_a) {
47
+ var data = _a.data, file = _a.file;
48
+ return __awaiter(void 0, void 0, void 0, function () {
49
+ var gcsFile;
50
+ return __generator(this, function (_b) {
51
+ switch (_b.label) {
52
+ case 0:
53
+ gcsFile = getStorageClient().bucket(bucket).file(path_1.default.posix.join(prefix, file.filename));
54
+ return [4 /*yield*/, gcsFile.save(file.buffer, {
55
+ metadata: {
56
+ contentType: file.mimeType,
57
+ },
58
+ })];
59
+ case 1:
60
+ _b.sent();
61
+ if (!acl) return [3 /*break*/, 3];
62
+ return [4 /*yield*/, gcsFile["make".concat(acl)]()];
63
+ case 2:
64
+ _b.sent();
65
+ _b.label = 3;
66
+ case 3: return [2 /*return*/, data];
67
+ }
68
+ });
69
+ });
70
+ };
71
+ };
72
+ exports.getHandleUpload = getHandleUpload;
73
+ //# sourceMappingURL=handleUpload.js.map
@@ -0,0 +1 @@
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"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.gcsAdapter = void 0;
4
+ var storage_1 = require("@google-cloud/storage");
5
+ var generateURL_1 = require("./generateURL");
6
+ var staticHandler_1 = require("./staticHandler");
7
+ var handleDelete_1 = require("./handleDelete");
8
+ var handleUpload_1 = require("./handleUpload");
9
+ var webpack_1 = require("./webpack");
10
+ var gcsAdapter = function (_a) {
11
+ var options = _a.options, bucket = _a.bucket, acl = _a.acl;
12
+ return function (_a) {
13
+ var collection = _a.collection, prefix = _a.prefix;
14
+ var storageClient = null;
15
+ var getStorageClient = function () {
16
+ if (storageClient)
17
+ return storageClient;
18
+ return (storageClient = new storage_1.Storage(options));
19
+ };
20
+ return {
21
+ handleUpload: (0, handleUpload_1.getHandleUpload)({
22
+ collection: collection,
23
+ getStorageClient: getStorageClient,
24
+ bucket: bucket,
25
+ acl: acl,
26
+ prefix: prefix,
27
+ }),
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 }),
31
+ webpack: webpack_1.extendWebpackConfig,
32
+ };
33
+ };
34
+ };
35
+ exports.gcsAdapter = gcsAdapter;
36
+ //# sourceMappingURL=index.js.map
@@ -0,0 +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,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"}