@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,78 +1,16 @@
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 __rest = (this && this.__rest) || function (s, e) {
50
- var t = {};
51
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
52
- t[p] = s[p];
53
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
54
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
55
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
56
- t[p[i]] = s[p[i]];
57
- }
58
- return t;
59
- };
60
2
  Object.defineProperty(exports, "__esModule", { value: true });
61
3
  /**
62
4
  * Write a file to S3.
63
5
  */
64
- var writeFile = function (_a) { return __awaiter(void 0, void 0, void 0, function () {
65
- var PutObjectCommand, apiResponse;
66
- var bucket = _a.bucket, data = _a.data, key = _a.key, options = __rest(_a, ["bucket", "data", "key"]);
67
- return __generator(this, function (_b) {
68
- switch (_b.label) {
69
- case 0:
70
- PutObjectCommand = require('@aws-sdk/client-s3').PutObjectCommand;
71
- return [4 /*yield*/, global.awsS3Client.send(new PutObjectCommand(__assign({ Bucket: bucket, Body: data, Key: key }, options)))];
72
- case 1:
73
- apiResponse = _b.sent();
74
- return [2 /*return*/, apiResponse];
75
- }
76
- });
77
- }); };
6
+ const writeFile = async ({ bucket, data, key, ...options }) => {
7
+ const { PutObjectCommand } = require('@aws-sdk/client-s3');
8
+ const apiResponse = await global.awsS3Client.send(new PutObjectCommand({
9
+ Bucket: bucket,
10
+ Body: data,
11
+ Key: key,
12
+ ...options,
13
+ }));
14
+ return apiResponse;
15
+ };
78
16
  exports.default = writeFile;
@@ -1,5 +1,4 @@
1
- import { Response } from '../../api/response';
2
- import { Config } from '../config';
1
+ import { Config } from '../getConfig';
3
2
  declare type WritePresignedPost = {
4
3
  bucket: string;
5
4
  config: Config;
@@ -11,5 +10,5 @@ declare type WritePresignedPost = {
11
10
  /**
12
11
  * Get a presigned post URL so we can upload directly to S3 via frontend.
13
12
  */
14
- declare const writePresignedPost: ({ bucket, config, fields, file, key, url }: WritePresignedPost) => Promise<Response>;
13
+ declare const writePresignedPost: ({ bucket, config, fields, file, key, url }: WritePresignedPost) => Promise<null | string>;
15
14
  export default writePresignedPost;
@@ -1,102 +1,31 @@
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
  * Get a presigned post URL so we can upload directly to S3 via frontend.
57
5
  */
58
- var writePresignedPost = function (_a) {
59
- var bucket = _a.bucket, config = _a.config, fields = _a.fields, file = _a.file, key = _a.key, url = _a.url;
60
- return __awaiter(void 0, void 0, void 0, function () {
61
- return __generator(this, function (_b) {
62
- return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(void 0, void 0, void 0, function () {
63
- var response, formData, upload;
64
- return __generator(this, function (_a) {
65
- switch (_a.label) {
66
- case 0:
67
- response = __assign({}, response_1.default);
68
- formData = new FormData();
69
- Object.entries({ fields: fields, file: file })
70
- .forEach(function (_a) {
71
- var key = _a[0], value = _a[1];
72
- // @ts-ignore
73
- formData.append(key, value);
74
- });
75
- return [4 /*yield*/, fetch(url, {
76
- method: 'POST',
77
- body: formData,
78
- })];
79
- case 1:
80
- upload = _a.sent();
81
- // Uploaded to S3
82
- if (upload.ok) {
83
- response.state = states_1.default.SUCCESS;
84
- response.body = {
85
- url: "https://".concat(bucket, ".s3.").concat(config.region, ".amazonaws.com/").concat(key),
86
- };
87
- resolve(response);
88
- }
89
- // Failed to upload to S3
90
- else {
91
- response.state = states_1.default.ERROR;
92
- response.error = 'Failed to upload file, please try again.';
93
- reject(response);
94
- }
95
- return [2 /*return*/];
96
- }
97
- });
98
- }); })];
6
+ const writePresignedPost = async ({ bucket, config, fields, file, key, url }) => {
7
+ return new Promise(async (resolve, reject) => {
8
+ let response;
9
+ const formData = new FormData();
10
+ Object.entries({ fields, file })
11
+ .forEach(([key, value]) => {
12
+ // @ts-ignore
13
+ formData.append(key, value);
14
+ });
15
+ const upload = await fetch(url, {
16
+ method: 'POST',
17
+ body: formData,
99
18
  });
19
+ // Uploaded to S3
20
+ if (upload.ok) {
21
+ response = `https://${bucket}.s3.${config.region}.amazonaws.com/${key}`;
22
+ resolve(response);
23
+ }
24
+ // Failed to upload to S3
25
+ else {
26
+ response = null;
27
+ reject(response);
28
+ }
100
29
  });
101
30
  };
102
31
  exports.default = writePresignedPost;
@@ -1,80 +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 durations_1 = __importDefault(require("../../date/durations"));
43
- var readFile_1 = __importDefault(require("../s3/readFile"));
44
- var getKey_1 = __importDefault(require("./getKey"));
6
+ const durations_1 = __importDefault(require("../../date/durations"));
7
+ const readFile_1 = __importDefault(require("../s3/readFile"));
8
+ const getKey_1 = __importDefault(require("./getKey"));
45
9
  /**
46
10
  * Get the stored cache if it exists.
47
11
  */
48
- var getCache = function (_a) {
49
- var bucket = _a.bucket, cache = _a.cache, fileName = _a.fileName, folder = _a.folder, isJson = _a.isJson;
50
- return __awaiter(void 0, void 0, void 0, function () {
51
- var response, s3CacheKey, cached, error_1;
52
- return __generator(this, function (_b) {
53
- switch (_b.label) {
54
- case 0:
55
- response = undefined;
56
- s3CacheKey = (0, getKey_1.default)({
57
- fileName: fileName,
58
- folder: folder,
59
- });
60
- if (!cache) return [3 /*break*/, 4];
61
- _b.label = 1;
62
- case 1:
63
- _b.trys.push([1, 3, , 4]);
64
- return [4 /*yield*/, (0, readFile_1.default)({ bucket: bucket, key: s3CacheKey, isJson: isJson })];
65
- case 2:
66
- cached = _b.sent();
67
- // Cache exists and is still within our caching timeframe
68
- if (undefined !== cached.body && (durations_1.default.FOREVER === cache.timeframe || cached.modified[cache.from][cache.timeframe] < cache.duration)) {
69
- response = cached.body;
70
- }
71
- return [3 /*break*/, 4];
72
- case 3:
73
- error_1 = _b.sent();
74
- return [3 /*break*/, 4];
75
- case 4: return [2 /*return*/, response];
76
- }
77
- });
12
+ const getCache = async ({ bucket, cache, fileName, folder, isJson }) => {
13
+ let response = undefined;
14
+ // Store the cache key
15
+ const s3CacheKey = (0, getKey_1.default)({
16
+ fileName,
17
+ folder,
78
18
  });
19
+ // If a cache timeframe is provided and we're not preloading this data
20
+ if (cache) {
21
+ // Try to get the cache
22
+ try {
23
+ const cached = await (0, readFile_1.default)({ bucket, key: s3CacheKey, isJson });
24
+ // Cache exists and is still within our caching timeframe
25
+ if (undefined !== cached.body && (durations_1.default.FOREVER === cache.timeframe || cached.modified[cache.from][cache.timeframe] < cache.duration)) {
26
+ response = cached.body;
27
+ }
28
+ }
29
+ catch (error) {
30
+ // sendError(error, req, res, next);
31
+ // console.log('s3 error - ', error.message);
32
+ }
33
+ }
34
+ return response;
79
35
  };
80
36
  exports.default = getCache;
@@ -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 trimStart_1 = __importDefault(require("lodash/trimStart"));
7
- var getSha256_1 = __importDefault(require("../../crypto/getSha256"));
8
- var getEnvironment_1 = __importDefault(require("../../environment/getEnvironment"));
6
+ const trimStart_1 = __importDefault(require("lodash/trimStart"));
7
+ const getSha256_1 = __importDefault(require("../../crypto/getSha256"));
8
+ const getEnvironment_1 = __importDefault(require("../../environment/getEnvironment"));
9
9
  /**
10
10
  * Take an input and return the key.
11
11
  * Always in the "_cache" folder with the "environment" followed by the optional folder then the key.
12
12
  */
13
- var getKey = function (_a) {
14
- var fileName = _a.fileName, folder = _a.folder;
15
- var fileNameString = (0, getSha256_1.default)({ input: fileName });
16
- var folderPath = (0, trimStart_1.default)('' === folder ? '' : "".concat(folder, "/"), '/');
17
- return "cache/".concat((0, getEnvironment_1.default)(), "/").concat(folderPath).concat(fileNameString, ".json");
13
+ const getKey = ({ fileName, folder }) => {
14
+ const fileNameString = (0, getSha256_1.default)({ input: fileName });
15
+ const folderPath = (0, trimStart_1.default)('' === folder ? '' : `${folder}/`, '/');
16
+ return `cache/${(0, getEnvironment_1.default)()}/${folderPath}${fileNameString}.json`;
18
17
  };
19
18
  exports.default = getKey;
@@ -1,59 +1,13 @@
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 writeFile_1 = __importDefault(require("../s3/writeFile"));
6
+ const writeFile_1 = __importDefault(require("../s3/writeFile"));
43
7
  /**
44
8
  * Save the cache.
45
9
  */
46
- var saveCache = function (_a) {
47
- var bucket = _a.bucket, data = _a.data, key = _a.key;
48
- return __awaiter(void 0, void 0, void 0, function () {
49
- return __generator(this, function (_b) {
50
- switch (_b.label) {
51
- case 0: return [4 /*yield*/, (0, writeFile_1.default)({ bucket: bucket, data: data, key: key })];
52
- case 1:
53
- _b.sent();
54
- return [2 /*return*/];
55
- }
56
- });
57
- });
10
+ const saveCache = async ({ bucket, data, key }) => {
11
+ await (0, writeFile_1.default)({ bucket, data, key });
58
12
  };
59
13
  exports.default = saveCache;
@@ -1,76 +1,24 @@
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 deleteFile_1 = __importDefault(require("../s3/deleteFile"));
43
- var getKey_1 = __importDefault(require("./getKey"));
44
- var saveCache_1 = __importDefault(require("./saveCache"));
6
+ const deleteFile_1 = __importDefault(require("../s3/deleteFile"));
7
+ const getKey_1 = __importDefault(require("./getKey"));
8
+ const saveCache_1 = __importDefault(require("./saveCache"));
45
9
  /**
46
10
  * Delete other caches if present, then save the new file.
47
11
  */
48
- var updateCache = function (_a) {
49
- var bucket = _a.bucket, data = _a.data, fileName = _a.fileName, folder = _a.folder;
50
- return __awaiter(void 0, void 0, void 0, function () {
51
- var key;
52
- return __generator(this, function (_b) {
53
- switch (_b.label) {
54
- case 0:
55
- if (!(data && null !== data)) return [3 /*break*/, 3];
56
- key = (0, getKey_1.default)({
57
- fileName: fileName,
58
- folder: folder,
59
- });
60
- // Delete the existing file
61
- return [4 /*yield*/, (0, deleteFile_1.default)({ bucket: bucket, key: key })];
62
- case 1:
63
- // Delete the existing file
64
- _b.sent();
65
- // Save the new file
66
- return [4 /*yield*/, (0, saveCache_1.default)({ bucket: bucket, data: data, key: key })];
67
- case 2:
68
- // Save the new file
69
- _b.sent();
70
- _b.label = 3;
71
- case 3: return [2 /*return*/];
72
- }
12
+ const updateCache = async ({ bucket, data, fileName, folder }) => {
13
+ if (data && null !== data) {
14
+ const key = (0, getKey_1.default)({
15
+ fileName,
16
+ folder,
73
17
  });
74
- });
18
+ // Delete the existing file
19
+ await (0, deleteFile_1.default)({ bucket, key });
20
+ // Save the new file
21
+ await (0, saveCache_1.default)({ bucket, data, key });
22
+ }
75
23
  };
76
24
  exports.default = updateCache;
@@ -1,6 +1,12 @@
1
- import { Response } from '../../api/response';
2
1
  import BaseClass from '../../class/BaseClass';
3
- import { Config } from '../config';
2
+ declare type Constructor = {
3
+ bcc?: string[];
4
+ cc?: string[];
5
+ from?: string;
6
+ html?: string;
7
+ subject?: string;
8
+ to?: string | string[];
9
+ };
4
10
  /**
5
11
  * Class to build and send an AWS SES email.
6
12
  */
@@ -11,14 +17,7 @@ declare class SimpleEmail extends BaseClass {
11
17
  bcc: string[];
12
18
  html?: string;
13
19
  subject?: string;
14
- constructor({ bcc, cc, from, html, subject, to }: {
15
- bcc?: string[];
16
- cc?: string[];
17
- from?: string;
18
- html?: string;
19
- subject?: string;
20
- to?: string | string[];
21
- });
20
+ constructor({ bcc, cc, from, html, subject, to }: Constructor);
22
21
  setFrom({ from }: {
23
22
  from: string;
24
23
  }): this;
@@ -46,9 +45,7 @@ declare class SimpleEmail extends BaseClass {
46
45
  setTo({ recipient }: {
47
46
  recipient: string | string[];
48
47
  }): this;
49
- send({ config }: {
50
- config?: Config;
51
- }): Promise<Response>;
48
+ send(): Promise<boolean>;
52
49
  private _filterRecipients;
53
50
  }
54
51
  export default SimpleEmail;