@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,67 +1,21 @@
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 get_1 = __importDefault(require("../axios/get"));
6
+ const get_1 = __importDefault(require("../axios/get"));
43
7
  /**
44
8
  * Get the URL Status for a given URL ID from Little Warden.
45
9
  */
46
- var getUrlStatus = function (_a) {
47
- var apiKey = _a.apiKey, urlId = _a.urlId;
48
- return __awaiter(void 0, void 0, void 0, function () {
49
- var response;
50
- return __generator(this, function (_b) {
51
- switch (_b.label) {
52
- case 0: return [4 /*yield*/, (0, get_1.default)({
53
- config: {
54
- headers: {
55
- 'Authorization': "Token token=\"".concat(apiKey, "\""),
56
- },
57
- },
58
- url: "https://littlewarden.com/api/sites/".concat(urlId),
59
- })];
60
- case 1:
61
- response = _b.sent();
62
- return [2 /*return*/, response.data.site || {}];
63
- }
64
- });
10
+ const getUrlStatus = async ({ apiKey, urlId }) => {
11
+ const response = await (0, get_1.default)({
12
+ config: {
13
+ headers: {
14
+ 'Authorization': `Token token="${apiKey}"`,
15
+ },
16
+ },
17
+ url: `https://littlewarden.com/api/sites/${urlId}`,
65
18
  });
19
+ return response.data.site || {};
66
20
  };
67
21
  exports.default = getUrlStatus;
@@ -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 states_1 = __importDefault(require("./states"));
6
+ const states_1 = __importDefault(require("./states"));
7
7
  /**
8
8
  * Check if the field is All Good.
9
9
  */
10
- var isAllGood = function (_a) {
11
- var field = _a.field;
12
- var response = false;
10
+ const isAllGood = ({ field }) => {
11
+ let response = false;
13
12
  // Check that the status field exists
14
13
  if (undefined !== field && undefined !== field['status']) {
15
14
  response = states_1.default.ALL_GOOD === field['status'];
@@ -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 states_1 = __importDefault(require("./states"));
6
+ const states_1 = __importDefault(require("./states"));
7
7
  /**
8
8
  * Check if the field is Danger.
9
9
  */
10
- var isDanger = function (_a) {
11
- var field = _a.field;
12
- var response = false;
10
+ const isDanger = ({ field }) => {
11
+ let response = false;
13
12
  // Check that the status field exists
14
13
  if (undefined !== field && undefined !== field['status']) {
15
14
  response = states_1.default.DANGER === field['status'];
@@ -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 states_1 = __importDefault(require("./states"));
6
+ const states_1 = __importDefault(require("./states"));
7
7
  /**
8
8
  * Check if the field is Warning.
9
9
  */
10
- var isWarning = function (_a) {
11
- var field = _a.field;
12
- var response = false;
10
+ const isWarning = ({ field }) => {
11
+ let response = false;
13
12
  // Check that the status field exists
14
13
  if (undefined !== field && undefined !== field['status']) {
15
14
  response = states_1.default.WARNING === field['status'];
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- var states = {
3
+ const states = {
4
4
  ALL_GOOD: 'all_good',
5
5
  DANGER: 'danger',
6
6
  WARNING: 'warning',
@@ -1,69 +1,23 @@
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 getParameter_1 = __importDefault(require("../aws/ssm/getParameter"));
6
+ const getParameter_1 = __importDefault(require("../aws/ssm/getParameter"));
43
7
  global.myTargetAccessToken = null;
44
8
  /**
45
9
  * Retrieve the access token from SSM Parameter Store.
46
10
  */
47
- var getAccessToken = function (_a) {
48
- var force = _a.force, parameterName = _a.parameterName;
49
- return __awaiter(void 0, void 0, void 0, function () {
50
- var parameter;
51
- return __generator(this, function (_b) {
52
- switch (_b.label) {
53
- case 0:
54
- if (!(!global.myTargetAccessToken || force)) return [3 /*break*/, 2];
55
- return [4 /*yield*/, (0, getParameter_1.default)({
56
- name: parameterName,
57
- withDecryption: true,
58
- isJson: true,
59
- })];
60
- case 1:
61
- parameter = _b.sent();
62
- global.myTargetAccessToken = parameter.accessToken;
63
- _b.label = 2;
64
- case 2: return [2 /*return*/, global.myTargetAccessToken];
65
- }
11
+ const getAccessToken = async ({ force, parameterName }) => {
12
+ if (!global.myTargetAccessToken || force) {
13
+ // Get the credentials from SSM
14
+ const parameter = await (0, getParameter_1.default)({
15
+ name: parameterName,
16
+ withDecryption: true,
17
+ isJson: true,
66
18
  });
67
- });
19
+ global.myTargetAccessToken = parameter.accessToken;
20
+ }
21
+ return global.myTargetAccessToken;
68
22
  };
69
23
  exports.default = getAccessToken;
@@ -1,70 +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 post_1 = __importDefault(require("../axios/post"));
6
+ const post_1 = __importDefault(require("../axios/post"));
43
7
  /**
44
8
  * Make the request to MyTarget API using the access token.
45
9
  */
46
- var request = function (_a) {
47
- var data = _a.data, url = _a.url;
48
- return __awaiter(void 0, void 0, void 0, function () {
49
- var response;
50
- return __generator(this, function (_b) {
51
- switch (_b.label) {
52
- case 0: return [4 /*yield*/, (0, post_1.default)({
53
- config: {
54
- headers: {
55
- Authorization: "Bearer ".concat(global.myTargetAccessToken),
56
- "Content-Type": "application/json",
57
- },
58
- },
59
- data: data,
60
- onSuccess: function (response) { return response.data; },
61
- url: url,
62
- })];
63
- case 1:
64
- response = _b.sent();
65
- return [2 /*return*/, response];
66
- }
67
- });
10
+ const request = async ({ data, url }) => {
11
+ const response = await (0, post_1.default)({
12
+ config: {
13
+ headers: {
14
+ Authorization: `Bearer ${global.myTargetAccessToken}`,
15
+ "Content-Type": "application/json",
16
+ },
17
+ },
18
+ data: data,
19
+ onSuccess: response => response.data,
20
+ url: url,
68
21
  });
22
+ return response;
69
23
  };
70
24
  exports.default = request;
@@ -1,8 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- var isSessionReady = function (_a) {
4
- var session = _a.session;
5
- var response = false;
3
+ const isSessionReady = ({ session }) => {
4
+ let response = false;
6
5
  if (undefined !== session && null !== session) {
7
6
  if (undefined !== session.user && null !== session.user) {
8
7
  response = true;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- var states = {
3
+ const states = {
4
4
  AUTHENTICATED: 'authenticated',
5
5
  PENDING: 'loading',
6
6
  UNAUTHENTICATED: 'unauthenticated',
package/nextJs/getIp.js CHANGED
@@ -3,9 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  /**
4
4
  * Get the user's remote IP Address
5
5
  */
6
- var getIp = function (_a) {
7
- var req = _a.req;
8
- var response = 'unset';
6
+ const getIp = ({ req }) => {
7
+ let response = 'unset';
9
8
  if (undefined !== req.headers['x-real-ip']) {
10
9
  response = String(req.headers['x-real-ip']);
11
10
  }
@@ -3,8 +3,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  /**
4
4
  * Get the user's User Agent
5
5
  */
6
- var getUserAgent = function (_a) {
7
- var req = _a.req;
8
- return req.headers['user-agent'] || 'unset';
9
- };
6
+ const getUserAgent = ({ req }) => req.headers['user-agent'] || 'unset';
10
7
  exports.default = getUserAgent;
@@ -3,14 +3,13 @@ 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 getNumber_1 = __importDefault(require("./getNumber"));
6
+ const getNumber_1 = __importDefault(require("./getNumber"));
7
7
  /**
8
8
  * Shorthand function to divide number, but fallback if the divisor is 0.
9
9
  */
10
- var getDivide = function (_a) {
11
- var _b = _a.defaultValue, defaultValue = _b === void 0 ? 0 : _b, divisor = _a.divisor, numerator = _a.numerator;
12
- var numeratorInt = (0, getNumber_1.default)({ input: numerator });
13
- var divisorInt = (0, getNumber_1.default)({ input: divisor });
10
+ const getDivide = ({ defaultValue = 0, divisor, numerator }) => {
11
+ const numeratorInt = (0, getNumber_1.default)({ input: numerator });
12
+ const divisorInt = (0, getNumber_1.default)({ input: divisor });
14
13
  if (0 === divisorInt) {
15
14
  return defaultValue;
16
15
  }
@@ -3,16 +3,15 @@ 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 isJson_1 = __importDefault(require("../json/isJson"));
6
+ const isJson_1 = __importDefault(require("../json/isJson"));
7
7
  /**
8
8
  * Take an input and return a number.
9
9
  */
10
- var getNumber = function (_a) {
11
- var _b = _a.defaultValue, defaultValue = _b === void 0 ? 0 : _b, _c = _a.input, input = _c === void 0 ? '' : _c;
12
- var actualDefaultValue = defaultValue || 0;
13
- var response = input;
10
+ const getNumber = ({ defaultValue = 0, input = '' }) => {
11
+ const actualDefaultValue = defaultValue || 0;
12
+ let response = input;
14
13
  // JSON - Decode the value
15
- if ((0, isJson_1.default)({ input: input })) {
14
+ if ((0, isJson_1.default)({ input })) {
16
15
  // Only parse this if it's a string
17
16
  if ('string' === typeof input) {
18
17
  response = JSON.parse(input);
@@ -32,7 +31,7 @@ var getNumber = function (_a) {
32
31
  response = Number(response);
33
32
  // Not a number, try extracting the number value
34
33
  if (isNaN(response)) {
35
- var match = RegExp(/^\D*([0-9\.]*)\D*$/, 'g')
34
+ const match = RegExp(/^\D*([0-9\.]*)\D*$/, 'g')
36
35
  .exec(input);
37
36
  if (match.length) {
38
37
  response = Number(match[1]);
@@ -3,14 +3,13 @@ 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 getNumber_1 = __importDefault(require("./getNumber"));
6
+ const getNumber_1 = __importDefault(require("./getNumber"));
7
7
  /**
8
8
  * Get the percentage of two numbers.
9
9
  */
10
- var getPercent = function (_a) {
11
- var _b = _a.defaultValue, defaultValue = _b === void 0 ? 0 : _b, divisor = _a.divisor, value = _a.value;
12
- var cleanValue = (0, getNumber_1.default)({ input: value });
13
- var cleanDivisor = (0, getNumber_1.default)({ input: divisor });
10
+ const getPercent = ({ defaultValue = 0, divisor, value }) => {
11
+ const cleanValue = (0, getNumber_1.default)({ input: value });
12
+ const cleanDivisor = (0, getNumber_1.default)({ input: divisor });
14
13
  if (0 === cleanDivisor) {
15
14
  return defaultValue;
16
15
  }
@@ -3,14 +3,13 @@ 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 getNumber_1 = __importDefault(require("./getNumber"));
6
+ const getNumber_1 = __importDefault(require("./getNumber"));
7
7
  /**
8
8
  * Formula to work out the percentage increase/decrease.
9
9
  */
10
- var getPercentageIncrease = function (_a) {
11
- var comparison = _a.comparison, current = _a.current, defaultValue = _a.defaultValue;
12
- var currentValue = (0, getNumber_1.default)({ input: current });
13
- var comparisonValue = (0, getNumber_1.default)({ input: comparison });
10
+ const getPercentageIncrease = ({ comparison, current, defaultValue }) => {
11
+ const currentValue = (0, getNumber_1.default)({ input: current });
12
+ const comparisonValue = (0, getNumber_1.default)({ input: comparison });
14
13
  if (0 === currentValue) {
15
14
  return defaultValue;
16
15
  }
@@ -3,15 +3,14 @@ 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 getNumber_1 = __importDefault(require("./getNumber"));
6
+ const getNumber_1 = __importDefault(require("./getNumber"));
7
7
  /**
8
8
  * Round a number using the Numbro library.
9
9
  */
10
- var getRounded = function (_a) {
11
- var decimalPlaces = _a.decimalPlaces, input = _a.input;
12
- var numbro = require('numbro');
13
- var inputNumber = (0, getNumber_1.default)({ defaultValue: 0, input: input });
14
- var stringNumber = numbro(inputNumber)
10
+ const getRounded = ({ decimalPlaces, input }) => {
11
+ const numbro = require('numbro');
12
+ const inputNumber = (0, getNumber_1.default)({ defaultValue: 0, input });
13
+ const stringNumber = numbro(inputNumber)
15
14
  .format({
16
15
  average: false,
17
16
  mantissa: decimalPlaces,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@8ms/helpers",
3
3
  "license": "UNLICENSED",
4
- "version": "1.1.66",
4
+ "version": "1.1.71",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "git+https://github.com/8millionstories-organisation/8ms-helpers-ts.git"
@@ -27,6 +27,7 @@
27
27
  "@babel/preset-env": "7.18.10",
28
28
  "@babel/preset-flow": "7.18.6",
29
29
  "@babel/preset-typescript": "7.18.6",
30
+ "@google-cloud/bigquery": "6.0.2",
30
31
  "@google-cloud/storage": "6.4.1",
31
32
  "@prisma/client": "4.3.0",
32
33
  "@types/jest": "29.0.0",
@@ -7,10 +7,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
7
7
  * Library: @prisma/client, prisma-query-log
8
8
  */
9
9
  global.prisma = null;
10
- var initClient = function (_a) {
11
- var _b = _a === void 0 ? { debug: false } : _a, debug = _b.debug;
10
+ const initClient = ({ debug } = { debug: false }) => {
12
11
  if (!global.prisma) {
13
- var PrismaClient = require('@prisma/client').PrismaClient;
12
+ const { PrismaClient } = require('@prisma/client');
14
13
  // Show the full query if debugging
15
14
  if (debug) {
16
15
  global.prisma = new PrismaClient({
@@ -21,8 +20,8 @@ var initClient = function (_a) {
21
20
  },
22
21
  ],
23
22
  });
24
- var createPrismaQueryEventHandler = require('prisma-query-log').createPrismaQueryEventHandler;
25
- var log = createPrismaQueryEventHandler();
23
+ const { createPrismaQueryEventHandler } = require('prisma-query-log');
24
+ const log = createPrismaQueryEventHandler();
26
25
  global.prisma.$on('query', log);
27
26
  }
28
27
  // Standard prisma
@@ -1,84 +1,37 @@
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 getParameter_1 = __importDefault(require("../aws/ssm/getParameter"));
43
- var post_1 = __importDefault(require("../axios/post"));
6
+ const getParameter_1 = __importDefault(require("../aws/ssm/getParameter"));
7
+ const post_1 = __importDefault(require("../axios/post"));
44
8
  global.snapchatAccessToken = null;
45
9
  /**
46
10
  * Renew the access token as it expires every 3 hours.
47
11
  */
48
- var getAccessToken = function (_a) {
49
- var force = _a.force, parameterName = _a.parameterName;
50
- return __awaiter(void 0, void 0, void 0, function () {
51
- var parameter, url;
52
- return __generator(this, function (_b) {
53
- switch (_b.label) {
54
- case 0:
55
- if (!(!global.snapchatAccessToken || force)) return [3 /*break*/, 3];
56
- return [4 /*yield*/, (0, getParameter_1.default)({
57
- name: parameterName,
58
- withDecryption: true,
59
- isJson: true,
60
- })];
61
- case 1:
62
- parameter = _b.sent();
63
- url = "https://accounts.snapchat.com/login/oauth2/access_token";
64
- url += "?client_id=".concat(parameter.clientId);
65
- url += "&client_secret=".concat(parameter.clientSecret);
66
- url += "&grant_type=refresh_token";
67
- url += "&refresh_token=".concat(parameter.refreshToken);
68
- return [4 /*yield*/, (0, post_1.default)({
69
- onSuccess: function (apiResponse) {
70
- if (undefined !== apiResponse['data']['access_token']) {
71
- global.snapchatAccessToken = apiResponse['data']['access_token'];
72
- }
73
- },
74
- url: url,
75
- })];
76
- case 2:
77
- _b.sent();
78
- _b.label = 3;
79
- case 3: return [2 /*return*/, global.snapchatAccessToken];
80
- }
12
+ const getAccessToken = async ({ force, parameterName }) => {
13
+ if (!global.snapchatAccessToken || force) {
14
+ // Get the credentials from SSM
15
+ const parameter = await (0, getParameter_1.default)({
16
+ name: parameterName,
17
+ withDecryption: true,
18
+ isJson: true,
81
19
  });
82
- });
20
+ // Build the token request for Snapchat
21
+ let url = `https://accounts.snapchat.com/login/oauth2/access_token`;
22
+ url += `?client_id=${parameter.clientId}`;
23
+ url += `&client_secret=${parameter.clientSecret}`;
24
+ url += `&grant_type=refresh_token`;
25
+ url += `&refresh_token=${parameter.refreshToken}`;
26
+ await (0, post_1.default)({
27
+ onSuccess: apiResponse => {
28
+ if (undefined !== apiResponse['data']['access_token']) {
29
+ global.snapchatAccessToken = apiResponse['data']['access_token'];
30
+ }
31
+ },
32
+ url: url,
33
+ });
34
+ }
35
+ return global.snapchatAccessToken;
83
36
  };
84
37
  exports.default = getAccessToken;
@@ -3,10 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  /**
4
4
  * Take two values, ensure they are numbers and return the sorting value.
5
5
  */
6
- var byNumberAscending = function (_a) {
7
- var valueA = _a.valueA, valueB = _a.valueB;
8
- var valueAClean = Number(valueA);
9
- var valueBClean = Number(valueB);
6
+ const byNumberAscending = ({ valueA, valueB }) => {
7
+ let valueAClean = Number(valueA);
8
+ let valueBClean = Number(valueB);
10
9
  if (valueAClean > valueBClean) {
11
10
  return 1;
12
11
  }