@8ms/helpers 1.1.66 → 1.1.71

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 (208) hide show
  1. package/api/response.js +2 -2
  2. package/api/states.js +1 -1
  3. package/api/unexpectedError.js +1 -1
  4. package/array/contains.js +1 -4
  5. package/array/getArray.js +2 -5
  6. package/aws/athenaExpress/initClient.d.ts +1 -1
  7. package/aws/athenaExpress/initClient.js +6 -7
  8. package/aws/athenaExpress/query.d.ts +8 -0
  9. package/aws/athenaExpress/query.js +10 -0
  10. package/aws/getConfig.d.ts +5 -1
  11. package/aws/getConfig.js +2 -3
  12. package/aws/glue/initClient.d.ts +5 -4
  13. package/aws/glue/initClient.js +4 -5
  14. package/aws/glue/invoke.d.ts +1 -3
  15. package/aws/glue/invoke.js +12 -63
  16. package/aws/isResponse200.js +4 -5
  17. package/aws/lambda/getHandlerPath.d.ts +4 -3
  18. package/aws/lambda/getHandlerPath.js +3 -4
  19. package/aws/lambda/initClient.d.ts +5 -4
  20. package/aws/lambda/initClient.js +4 -5
  21. package/aws/lambda/invoke.d.ts +1 -3
  22. package/aws/lambda/invoke.js +29 -77
  23. package/aws/s3/copyFile.js +7 -55
  24. package/aws/s3/deleteFile.js +6 -54
  25. package/aws/s3/deleteFiles.d.ts +5 -6
  26. package/aws/s3/deleteFiles.js +10 -58
  27. package/aws/s3/deleteFolder.d.ts +5 -6
  28. package/aws/s3/deleteFolder.js +26 -76
  29. package/aws/s3/getGlueJson.d.ts +3 -2
  30. package/aws/s3/getGlueJson.js +4 -5
  31. package/aws/s3/getPresignedPost.d.ts +6 -7
  32. package/aws/s3/getPresignedPost.js +9 -56
  33. package/aws/s3/getSignedUrl.js +8 -76
  34. package/aws/s3/initClient.d.ts +5 -4
  35. package/aws/s3/initClient.js +4 -5
  36. package/aws/s3/isFileExists.js +17 -66
  37. package/aws/s3/listFiles.js +22 -69
  38. package/aws/s3/listFolders.js +21 -68
  39. package/aws/s3/moveFile.d.ts +5 -4
  40. package/aws/s3/moveFile.js +10 -58
  41. package/aws/s3/readBuffer.js +41 -89
  42. package/aws/s3/readFile.js +42 -93
  43. package/aws/s3/writeFile.js +10 -72
  44. package/aws/s3/writePresignedPost.d.ts +2 -3
  45. package/aws/s3/writePresignedPost.js +22 -93
  46. package/aws/s3cache/getCache.js +25 -69
  47. package/aws/s3cache/getKey.js +7 -8
  48. package/aws/s3cache/saveCache.js +3 -49
  49. package/aws/s3cache/updateCache.js +13 -65
  50. package/aws/ses/SimpleEmail.d.ts +10 -13
  51. package/aws/ses/SimpleEmail.js +85 -189
  52. package/aws/ses/initClient.d.ts +5 -4
  53. package/aws/ses/initClient.js +4 -5
  54. package/aws/ssm/getParameter.js +31 -78
  55. package/aws/ssm/initClient.d.ts +5 -4
  56. package/aws/ssm/initClient.js +4 -5
  57. package/axios/get.js +35 -106
  58. package/axios/post.js +35 -106
  59. package/boolean/getBoolean.js +2 -3
  60. package/class/BaseClass.js +15 -22
  61. package/crypto/getDecrypt.js +3 -4
  62. package/crypto/getEncrypt.js +3 -4
  63. package/crypto/getRandom.js +1 -2
  64. package/crypto/getSha256.js +4 -5
  65. package/date/durationComparisons.js +1 -1
  66. package/date/durations.js +1 -1
  67. package/date/format.js +7 -8
  68. package/date/getDate.js +19 -20
  69. package/date/getDatesBetween.js +8 -9
  70. package/date/getDurationHours.js +6 -7
  71. package/date/getDurationMinutes.js +6 -7
  72. package/date/getFinancialYear.js +11 -12
  73. package/date/getFinancialYearToDate.js +5 -5
  74. package/date/getFinancialYearToYesterday.js +5 -5
  75. package/date/getFinancialYearWeeks.js +10 -11
  76. package/date/getLastWeek.js +11 -12
  77. package/date/getMax.js +5 -6
  78. package/date/getMidnight.js +2 -3
  79. package/date/getMin.js +5 -6
  80. package/date/getMonday.js +10 -11
  81. package/date/getNumber.js +4 -5
  82. package/date/getPredefinedTimeframe.js +5 -6
  83. package/date/getSunday.js +10 -11
  84. package/date/getThisWeek.js +11 -12
  85. package/date/getTimeZoned.js +11 -12
  86. package/date/getToday.js +6 -7
  87. package/date/getTwoWeeksAgo.js +11 -12
  88. package/date/getWeeksAgo.js +5 -6
  89. package/date/getYesterday.js +7 -8
  90. package/date/isDateValid.js +6 -7
  91. package/date/isLastWeek.js +3 -4
  92. package/date/isThisWeek.js +3 -4
  93. package/date/parseExcelDate.js +9 -10
  94. package/deepCrawl/buildRequest.js +19 -20
  95. package/deepCrawl/getData.js +21 -79
  96. package/deepCrawl/initClient.js +17 -64
  97. package/deepCrawl/operands.js +1 -1
  98. package/deepCrawl/orders.js +1 -1
  99. package/deepCrawl/reports.js +1 -1
  100. package/environment/environments.js +1 -1
  101. package/environment/getEnvironment.js +8 -8
  102. package/environment/isAws.js +2 -2
  103. package/environment/isDevelopment.js +3 -3
  104. package/environment/isLocalhost.js +4 -4
  105. package/environment/isProduction.js +3 -3
  106. package/environment/isStaging.js +3 -3
  107. package/environment/isVercel.js +1 -1
  108. package/environment/platforms.d.ts +1 -1
  109. package/environment/platforms.js +1 -1
  110. package/eskimi/ageGroups.js +1 -1
  111. package/eskimi/devices.js +1 -1
  112. package/eskimi/endpoints.js +1 -1
  113. package/eskimi/genders.js +1 -1
  114. package/eskimi/getAccessToken.js +11 -57
  115. package/eskimi/getAgeGroup.js +3 -4
  116. package/eskimi/getCampaignIds.js +2 -3
  117. package/eskimi/getDevice.js +3 -4
  118. package/eskimi/getGender.js +3 -4
  119. package/eskimi/request.js +13 -59
  120. package/google/bigQuery/initClient.d.ts +11 -0
  121. package/google/bigQuery/initClient.js +22 -0
  122. package/google/bigQuery/query.d.ts +9 -0
  123. package/google/bigQuery/query.js +10 -0
  124. package/google/getConfig.d.ts +20 -0
  125. package/google/getConfig.js +23 -0
  126. package/google/sheets/getAssociatedData.d.ts +2 -6
  127. package/google/sheets/getAssociatedData.js +42 -89
  128. package/google/sheets/getBatchData.d.ts +1 -3
  129. package/google/sheets/getBatchData.js +15 -60
  130. package/google/sheets/initClient.d.ts +11 -0
  131. package/google/sheets/initClient.js +25 -0
  132. package/google/sheets/isCellNa.js +1 -4
  133. package/google/storage/initClient.d.ts +12 -0
  134. package/google/storage/initClient.js +23 -0
  135. package/google/storage/writeFile.d.ts +2 -1
  136. package/google/storage/writeFile.js +20 -77
  137. package/googleAds/getCustomer.js +7 -48
  138. package/googleAds/initClient.d.ts +9 -8
  139. package/googleAds/initClient.js +13 -56
  140. package/initClients.d.ts +13 -3
  141. package/initClients.js +95 -101
  142. package/json/isJson.js +1 -2
  143. package/littleWarden/getUrlStatus.js +10 -56
  144. package/littleWarden/isAllGood.js +3 -4
  145. package/littleWarden/isDanger.js +3 -4
  146. package/littleWarden/isWarning.js +3 -4
  147. package/littleWarden/states.js +1 -1
  148. package/myTarget/getAccessToken.js +11 -57
  149. package/myTarget/request.js +13 -59
  150. package/nextAuth/isSessionReady.js +2 -3
  151. package/nextAuth/states.js +1 -1
  152. package/nextJs/getIp.js +2 -3
  153. package/nextJs/getUserAgent.js +1 -4
  154. package/number/getDivide.js +4 -5
  155. package/number/getNumber.js +6 -7
  156. package/number/getPercent.js +4 -5
  157. package/number/getPercentIncrease.js +4 -5
  158. package/number/getRounded.js +5 -6
  159. package/package.json +2 -1
  160. package/prisma/initClient.js +4 -5
  161. package/snapchat/getAccessToken.js +25 -72
  162. package/sorting/byNumberAscending.js +3 -4
  163. package/sorting/byNumberDescending.js +3 -4
  164. package/sorting/byStringAscending.js +3 -4
  165. package/sorting/byStringDescending.js +3 -4
  166. package/string/formatCapitalise.js +2 -3
  167. package/string/getCleanFolder.js +3 -6
  168. package/string/getString.js +9 -10
  169. package/string/getStringFromStream.js +7 -8
  170. package/string/toProperCase.js +6 -7
  171. package/swr/isAllData.js +4 -5
  172. package/swr/isAnyError.js +4 -5
  173. package/swr/isAnyLoading.js +4 -5
  174. package/swr/isData.js +1 -4
  175. package/swr/isError.js +1 -4
  176. package/swr/isLoading.js +3 -6
  177. package/upTimeRobot/getMonitors.d.ts +1 -0
  178. package/upTimeRobot/getMonitors.js +33 -0
  179. package/upTimeRobot/logTypes.d.ts +7 -0
  180. package/upTimeRobot/logTypes.js +9 -0
  181. package/upTimeRobot/monitorStatuses.d.ts +8 -0
  182. package/upTimeRobot/monitorStatuses.js +10 -0
  183. package/upTimeRobot/monitorSubTypes.d.ts +10 -0
  184. package/upTimeRobot/monitorSubTypes.js +12 -0
  185. package/upTimeRobot/monitorTypes.d.ts +8 -0
  186. package/upTimeRobot/monitorTypes.js +10 -0
  187. package/upTimeRobot/requestStatuses.d.ts +5 -0
  188. package/upTimeRobot/requestStatuses.js +7 -0
  189. package/url/buildParameters.js +7 -8
  190. package/url/buildRelative.js +3 -4
  191. package/url/buildUrl.js +6 -7
  192. package/url/isAbsolute.js +1 -2
  193. package/url/isRelative.js +2 -5
  194. package/util/defaultTo.d.ts +6 -5
  195. package/util/defaultTo.js +6 -7
  196. package/util/isUndefined.d.ts +9 -0
  197. package/util/isUndefined.js +19 -0
  198. package/util/sleep.js +2 -3
  199. package/webWorker/states.js +1 -1
  200. package/xml/getXml.js +10 -58
  201. package/aws/athenaExpress/request.d.ts +0 -8
  202. package/aws/athenaExpress/request.js +0 -54
  203. package/aws/config.d.ts +0 -5
  204. package/aws/config.js +0 -2
  205. package/google/getCredentials.d.ts +0 -20
  206. package/google/getCredentials.js +0 -76
  207. package/google/sheets/getAuth.d.ts +0 -8
  208. package/google/sheets/getAuth.js +0 -69
@@ -1,10 +1,9 @@
1
+ declare type DeleteFiles = {
2
+ bucket: string;
3
+ keys: string[];
4
+ };
1
5
  /**
2
6
  * Delete multiple files.
3
7
  */
4
- declare const deleteFiles: ({ S3Lib, bucket, client, keys }: {
5
- S3Lib: any;
6
- bucket: string;
7
- client: any;
8
- keys: string[];
9
- }) => Promise<void>;
8
+ declare const deleteFiles: ({ bucket, keys }: DeleteFiles) => Promise<void>;
10
9
  export default deleteFiles;
@@ -1,65 +1,17 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
- function verb(n) { return function (v) { return step([n, v]); }; }
15
- function step(op) {
16
- if (f) throw new TypeError("Generator is already executing.");
17
- while (_) 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
2
  Object.defineProperty(exports, "__esModule", { value: true });
39
3
  /**
40
4
  * Delete multiple files.
41
5
  */
42
- var deleteFiles = function (_a) {
43
- var S3Lib = _a.S3Lib, bucket = _a.bucket, client = _a.client, keys = _a.keys;
44
- return __awaiter(void 0, void 0, void 0, function () {
45
- var DeleteObjectsCommand;
46
- return __generator(this, function (_b) {
47
- switch (_b.label) {
48
- case 0:
49
- DeleteObjectsCommand = require('@aws-sdk/client-s3').DeleteObjectsCommand;
50
- return [4 /*yield*/, global.awsS3Client.send(new DeleteObjectsCommand({
51
- Bucket: bucket,
52
- Delete: {
53
- Objects: keys.map(function (key) { return ({
54
- Key: key,
55
- }); }),
56
- },
57
- }))];
58
- case 1:
59
- _b.sent();
60
- return [2 /*return*/];
61
- }
62
- });
63
- });
6
+ const deleteFiles = async ({ bucket, keys }) => {
7
+ const { DeleteObjectsCommand } = require('@aws-sdk/client-s3');
8
+ await global.awsS3Client.send(new DeleteObjectsCommand({
9
+ Bucket: bucket,
10
+ Delete: {
11
+ Objects: keys.map(key => ({
12
+ Key: key,
13
+ })),
14
+ },
15
+ }));
64
16
  };
65
17
  exports.default = deleteFiles;
@@ -1,10 +1,9 @@
1
+ declare type DeleteFolder = {
2
+ bucket: string;
3
+ folder: string;
4
+ };
1
5
  /**
2
6
  * Iteratively delete all the files within a directory and delete the directory.
3
7
  */
4
- declare const deleteFolder: ({ S3Lib, bucket, client, folder }: {
5
- S3Lib: any;
6
- bucket: string;
7
- client: any;
8
- folder: string;
9
- }) => Promise<void>;
8
+ declare const deleteFolder: ({ bucket, folder }: DeleteFolder) => Promise<void>;
10
9
  export default deleteFolder;
@@ -1,86 +1,36 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
- function verb(n) { return function (v) { return step([n, v]); }; }
15
- function step(op) {
16
- if (f) throw new TypeError("Generator is already executing.");
17
- while (_) 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
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
39
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
40
4
  };
41
5
  Object.defineProperty(exports, "__esModule", { value: true });
42
- var getCleanFolder_1 = __importDefault(require("../../string/getCleanFolder"));
6
+ const getCleanFolder_1 = __importDefault(require("../../string/getCleanFolder"));
43
7
  /**
44
8
  * Iteratively delete all the files within a directory and delete the directory.
45
9
  */
46
- var deleteFolder = function (_a) {
47
- var S3Lib = _a.S3Lib, bucket = _a.bucket, client = _a.client, folder = _a.folder;
48
- return __awaiter(void 0, void 0, void 0, function () {
49
- var cleanFolder, _b, ListObjectsV2Command, DeleteObjectsCommand, apiResponse, keys;
50
- return __generator(this, function (_c) {
51
- switch (_c.label) {
52
- case 0:
53
- cleanFolder = (0, getCleanFolder_1.default)({ input: folder });
54
- _b = require('@aws-sdk/client-s3'), ListObjectsV2Command = _b.ListObjectsV2Command, DeleteObjectsCommand = _b.DeleteObjectsCommand;
55
- return [4 /*yield*/, global.awsS3Client.send(new ListObjectsV2Command({
56
- Bucket: bucket,
57
- Prefix: ('' === cleanFolder ? '' : cleanFolder + '/'),
58
- }))];
59
- case 1:
60
- apiResponse = _c.sent();
61
- // No files to be deleted
62
- if (apiResponse.Contents.length === 0) {
63
- return [2 /*return*/];
64
- }
65
- keys = apiResponse.Contents.map(function (file) { return ({ Key: file.Key }); });
66
- // Delete the files
67
- return [4 /*yield*/, global.awsS3Client.send(new DeleteObjectsCommand({
68
- Bucket: bucket,
69
- Delete: {
70
- Objects: keys,
71
- },
72
- }))];
73
- case 2:
74
- // Delete the files
75
- _c.sent();
76
- if (!apiResponse.IsTruncated) return [3 /*break*/, 4];
77
- return [4 /*yield*/, deleteFolder({ S3Lib: S3Lib, bucket: bucket, client: client, folder: folder })];
78
- case 3:
79
- _c.sent();
80
- _c.label = 4;
81
- case 4: return [2 /*return*/];
82
- }
83
- });
84
- });
10
+ const deleteFolder = async ({ bucket, folder }) => {
11
+ const cleanFolder = (0, getCleanFolder_1.default)({ input: folder });
12
+ const { ListObjectsV2Command, DeleteObjectsCommand } = require('@aws-sdk/client-s3');
13
+ // Get a list of all files to be deleted
14
+ const apiResponse = await global.awsS3Client.send(new ListObjectsV2Command({
15
+ Bucket: bucket,
16
+ Prefix: ('' === cleanFolder ? '' : cleanFolder + '/'),
17
+ }));
18
+ // No files to be deleted
19
+ if (apiResponse.Contents.length === 0) {
20
+ return;
21
+ }
22
+ // Map each of the files
23
+ const keys = apiResponse.Contents.map(file => ({ Key: file.Key }));
24
+ // Delete the files
25
+ await global.awsS3Client.send(new DeleteObjectsCommand({
26
+ Bucket: bucket,
27
+ Delete: {
28
+ Objects: keys,
29
+ },
30
+ }));
31
+ // If we didn't get all files, run it again
32
+ if (apiResponse.IsTruncated) {
33
+ await deleteFolder({ bucket, folder });
34
+ }
85
35
  };
86
36
  exports.default = deleteFolder;
@@ -1,4 +1,5 @@
1
- declare const getGlueJson: ({ data }: {
1
+ declare type GetGlueJson = {
2
2
  data: any;
3
- }) => string;
3
+ };
4
+ declare const getGlueJson: ({ data }: GetGlueJson) => string;
4
5
  export default getGlueJson;
@@ -3,13 +3,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- var getArray_1 = __importDefault(require("../../array/getArray"));
7
- var getGlueJson = function (_a) {
8
- var data = _a.data;
6
+ const getArray_1 = __importDefault(require("../../array/getArray"));
7
+ const getGlueJson = ({ data }) => {
9
8
  // Must be an array
10
- var inputArray = (0, getArray_1.default)({ input: data });
9
+ const inputArray = (0, getArray_1.default)({ input: data });
11
10
  // For each array row convert the row
12
- var stringRows = inputArray.map(function (row) { return JSON.stringify(row); });
11
+ const stringRows = inputArray.map(row => JSON.stringify(row));
13
12
  // Combine each row with a line separator
14
13
  return stringRows.join("\n");
15
14
  };
@@ -1,7 +1,9 @@
1
- declare type PresignedPostType = {
2
- S3Lib: any;
1
+ declare type PresignedPost = {
2
+ url: string;
3
+ fields: any;
4
+ };
5
+ declare type GetPresignedPost = {
3
6
  bucket: string;
4
- client: any;
5
7
  conditions: any[];
6
8
  expires: number;
7
9
  fields: {
@@ -14,8 +16,5 @@ declare type PresignedPostType = {
14
16
  * https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/modules/_aws_sdk_s3_presigned_post.html
15
17
  * https://github.com/8millionstories-organisation/test-vercel-upload-2/blob/50eb12fcb3870a59ab455811bfaa1bdcb886edf2/pages/api/upload-url.js
16
18
  */
17
- declare const getPresignedPost: ({ S3Lib, bucket, client, conditions, expires, fields, key }: PresignedPostType) => Promise<{
18
- url: any;
19
- fields: any;
20
- }>;
19
+ declare const getPresignedPost: ({ bucket, conditions, expires, fields, key }: GetPresignedPost) => Promise<PresignedPost>;
21
20
  export default getPresignedPost;
@@ -1,66 +1,19 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
- function verb(n) { return function (v) { return step([n, v]); }; }
15
- function step(op) {
16
- if (f) throw new TypeError("Generator is already executing.");
17
- while (_) 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
2
  Object.defineProperty(exports, "__esModule", { value: true });
39
3
  /**
40
4
  * Returns a presigned post to upload a file directly to S3.
41
5
  * https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/modules/_aws_sdk_s3_presigned_post.html
42
6
  * https://github.com/8millionstories-organisation/test-vercel-upload-2/blob/50eb12fcb3870a59ab455811bfaa1bdcb886edf2/pages/api/upload-url.js
43
7
  */
44
- var getPresignedPost = function (_a) {
45
- var S3Lib = _a.S3Lib, bucket = _a.bucket, client = _a.client, conditions = _a.conditions, expires = _a.expires, fields = _a.fields, key = _a.key;
46
- return __awaiter(void 0, void 0, void 0, function () {
47
- var createPresignedPost, apiResponse;
48
- return __generator(this, function (_b) {
49
- switch (_b.label) {
50
- case 0:
51
- createPresignedPost = require('@aws-sdk/client-s3').createPresignedPost;
52
- return [4 /*yield*/, createPresignedPost(global.awsS3Client, {
53
- Bucket: bucket,
54
- Key: key,
55
- Conditions: undefined === conditions ? [] : conditions,
56
- Fields: undefined === fields ? {} : fields,
57
- Expires: undefined === expires ? 60 : expires, // Seconds
58
- })];
59
- case 1:
60
- apiResponse = _b.sent();
61
- return [2 /*return*/, apiResponse];
62
- }
63
- });
8
+ const getPresignedPost = async ({ bucket, conditions, expires, fields, key }) => {
9
+ const { createPresignedPost } = require('@aws-sdk/client-s3');
10
+ const apiResponse = await createPresignedPost(global.awsS3Client, {
11
+ Bucket: bucket,
12
+ Key: key,
13
+ Conditions: undefined === conditions ? [] : conditions,
14
+ Fields: undefined === fields ? {} : fields,
15
+ Expires: undefined === expires ? 60 : expires, // Seconds
64
16
  });
17
+ return apiResponse;
65
18
  };
66
19
  exports.default = getPresignedPost;
@@ -1,85 +1,17 @@
1
1
  "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
- return new (P || (P = Promise))(function (resolve, reject) {
16
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
- step((generator = generator.apply(thisArg, _arguments || [])).next());
20
- });
21
- };
22
- var __generator = (this && this.__generator) || function (thisArg, body) {
23
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
- function verb(n) { return function (v) { return step([n, v]); }; }
26
- function step(op) {
27
- if (f) throw new TypeError("Generator is already executing.");
28
- while (_) 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
- };
49
- var __importDefault = (this && this.__importDefault) || function (mod) {
50
- return (mod && mod.__esModule) ? mod : { "default": mod };
51
- };
52
2
  Object.defineProperty(exports, "__esModule", { value: true });
53
- var response_1 = __importDefault(require("../../api/response"));
54
- var states_1 = __importDefault(require("../../api/states"));
55
3
  /**
56
4
  * Returns a signed for URL to allow download of private buckets for a given duration.
57
5
  * Library: @aws-sdk/s3-request-presigner
58
6
  */
59
- var getSignedUrl = function (_a) {
60
- var bucket = _a.bucket, expires = _a.expires, key = _a.key;
61
- return __awaiter(void 0, void 0, void 0, function () {
62
- var response, GetObjectCommand, getSignedUrl, command, awsResponse;
63
- return __generator(this, function (_b) {
64
- switch (_b.label) {
65
- case 0:
66
- response = __assign({}, response_1.default);
67
- GetObjectCommand = require('@aws-sdk/client-s3').GetObjectCommand;
68
- getSignedUrl = require('@aws-sdk/s3-request-presigner').getSignedUrl;
69
- command = new GetObjectCommand({
70
- Bucket: bucket,
71
- Key: key,
72
- });
73
- return [4 /*yield*/, getSignedUrl(global.awsS3Client, command, { expiresIn: expires })];
74
- case 1:
75
- awsResponse = _b.sent();
76
- if (awsResponse && 'string' === typeof awsResponse) {
77
- response.state = states_1.default.SUCCESS;
78
- response.body = awsResponse;
79
- }
80
- return [2 /*return*/, response];
81
- }
82
- });
7
+ const getSignedUrl = async ({ bucket, expires, key }) => {
8
+ const { GetObjectCommand } = require('@aws-sdk/client-s3');
9
+ const { getSignedUrl } = require('@aws-sdk/s3-request-presigner');
10
+ const command = new GetObjectCommand({
11
+ Bucket: bucket,
12
+ Key: key,
83
13
  });
14
+ const response = await getSignedUrl(global.awsS3Client, command, { expiresIn: expires });
15
+ return response;
84
16
  };
85
17
  exports.default = getSignedUrl;
@@ -1,9 +1,10 @@
1
- import { Config } from '../config';
1
+ import { Config } from '../getConfig';
2
+ declare type InitClient = {
3
+ config: Config;
4
+ };
2
5
  /**
3
6
  * Shorthand function to get the Lambda Client.
4
7
  * Library: @aws-sdk/client-s3
5
8
  */
6
- declare const initClient: ({ config }: {
7
- config?: Config;
8
- }) => void;
9
+ declare const initClient: ({ config }: InitClient) => void;
9
10
  export default initClient;
@@ -3,17 +3,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- var getConfig_1 = __importDefault(require("../getConfig"));
6
+ const getConfig_1 = __importDefault(require("../getConfig"));
7
7
  global.awsS3Client = null;
8
8
  /**
9
9
  * Shorthand function to get the Lambda Client.
10
10
  * Library: @aws-sdk/client-s3
11
11
  */
12
- var initClient = function (_a) {
13
- var config = _a.config;
12
+ const initClient = ({ config }) => {
14
13
  if (!global.awsS3Client) {
15
- var S3Client = require('@aws-sdk/client-s3').S3Client;
16
- var formattedConfig = (0, getConfig_1.default)({ config: config });
14
+ const { S3Client } = require('@aws-sdk/client-s3');
15
+ const formattedConfig = (0, getConfig_1.default)({ config });
17
16
  global.awsS3Client = new S3Client(formattedConfig);
18
17
  }
19
18
  };
@@ -1,76 +1,27 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
- function verb(n) { return function (v) { return step([n, v]); }; }
15
- function step(op) {
16
- if (f) throw new TypeError("Generator is already executing.");
17
- while (_) 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
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
39
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
40
4
  };
41
5
  Object.defineProperty(exports, "__esModule", { value: true });
42
- var isResponse200_1 = __importDefault(require("../isResponse200"));
6
+ const isResponse200_1 = __importDefault(require("../isResponse200"));
43
7
  /**
44
8
  * Check to see if a file exists but don't get the contents.
45
9
  */
46
- var isFileExists = function (_a) {
47
- var bucket = _a.bucket, key = _a.key;
48
- return __awaiter(void 0, void 0, void 0, function () {
49
- var response, HeadObjectCommand, apiResponse, exception_1;
50
- return __generator(this, function (_b) {
51
- switch (_b.label) {
52
- case 0:
53
- response = false;
54
- _b.label = 1;
55
- case 1:
56
- _b.trys.push([1, 3, , 4]);
57
- HeadObjectCommand = require('@aws-sdk/client-s3').HeadObjectCommand;
58
- return [4 /*yield*/, global.awsS3Client.send(new HeadObjectCommand({
59
- Bucket: bucket,
60
- Key: key,
61
- }))];
62
- case 2:
63
- apiResponse = _b.sent();
64
- // If the status is 200 then it does exist
65
- response = (0, isResponse200_1.default)({ apiResponse: apiResponse });
66
- return [3 /*break*/, 4];
67
- case 3:
68
- exception_1 = _b.sent();
69
- response = false;
70
- return [3 /*break*/, 4];
71
- case 4: return [2 /*return*/, response];
72
- }
73
- });
74
- });
10
+ const isFileExists = async ({ bucket, key }) => {
11
+ let response = false;
12
+ try {
13
+ const { HeadObjectCommand } = require('@aws-sdk/client-s3');
14
+ // Fetch from S3
15
+ const apiResponse = await global.awsS3Client.send(new HeadObjectCommand({
16
+ Bucket: bucket,
17
+ Key: key,
18
+ }));
19
+ // If the status is 200 then it does exist
20
+ response = (0, isResponse200_1.default)({ apiResponse });
21
+ }
22
+ catch (exception) {
23
+ response = false;
24
+ }
25
+ return response;
75
26
  };
76
27
  exports.default = isFileExists;