@fintalk.ai/lambda-handlers 1.0.3 → 2.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (140) hide show
  1. package/README.md +62 -20
  2. package/lib/constants.d.ts +6 -0
  3. package/lib/constants.js +10 -0
  4. package/lib/constants.js.map +1 -0
  5. package/lib/errors/bad-request-error.d.ts +4 -0
  6. package/lib/errors/bad-request-error.js +35 -0
  7. package/lib/errors/bad-request-error.js.map +1 -0
  8. package/lib/errors/conflict-error.d.ts +4 -0
  9. package/lib/errors/conflict-error.js +35 -0
  10. package/lib/errors/conflict-error.js.map +1 -0
  11. package/lib/errors/fintalk-error.d.ts +41 -0
  12. package/lib/errors/fintalk-error.js +55 -0
  13. package/lib/errors/fintalk-error.js.map +1 -0
  14. package/lib/errors/forbidden-error.d.ts +4 -0
  15. package/lib/errors/forbidden-error.js +35 -0
  16. package/lib/errors/forbidden-error.js.map +1 -0
  17. package/lib/errors/gone-error.d.ts +4 -0
  18. package/lib/errors/gone-error.js +35 -0
  19. package/lib/errors/gone-error.js.map +1 -0
  20. package/lib/errors/internal-server-error.d.ts +4 -0
  21. package/lib/errors/internal-server-error.js +35 -0
  22. package/lib/errors/internal-server-error.js.map +1 -0
  23. package/lib/errors/not-acceptable-error.d.ts +4 -0
  24. package/lib/errors/not-acceptable-error.js +35 -0
  25. package/lib/errors/not-acceptable-error.js.map +1 -0
  26. package/lib/errors/not-found-error.d.ts +4 -0
  27. package/lib/errors/not-found-error.js +35 -0
  28. package/lib/errors/not-found-error.js.map +1 -0
  29. package/lib/errors/payment-required-error.d.ts +4 -0
  30. package/lib/errors/payment-required-error.js +35 -0
  31. package/lib/errors/payment-required-error.js.map +1 -0
  32. package/lib/errors/precondition-failed-error.d.ts +4 -0
  33. package/lib/errors/precondition-failed-error.js +35 -0
  34. package/lib/errors/precondition-failed-error.js.map +1 -0
  35. package/lib/errors/service-unavailable-error.d.ts +4 -0
  36. package/lib/errors/service-unavailable-error.js +35 -0
  37. package/lib/errors/service-unavailable-error.js.map +1 -0
  38. package/lib/errors/teapot-error.d.ts +4 -0
  39. package/lib/errors/teapot-error.js +35 -0
  40. package/lib/errors/teapot-error.js.map +1 -0
  41. package/lib/errors/too-many-requests-error.d.ts +4 -0
  42. package/lib/errors/too-many-requests-error.js +35 -0
  43. package/lib/errors/too-many-requests-error.js.map +1 -0
  44. package/lib/errors/unauthorized-error.d.ts +4 -0
  45. package/lib/errors/unauthorized-error.js +35 -0
  46. package/lib/errors/unauthorized-error.js.map +1 -0
  47. package/lib/errors/unprocessable-entity-error.d.ts +4 -0
  48. package/lib/errors/unprocessable-entity-error.js +35 -0
  49. package/lib/errors/unprocessable-entity-error.js.map +1 -0
  50. package/lib/errors/websocket-error.d.ts +40 -0
  51. package/lib/errors/websocket-error.js +54 -0
  52. package/lib/errors/websocket-error.js.map +1 -0
  53. package/lib/handlers/api-proxy.d.ts +13 -0
  54. package/lib/handlers/api-proxy.js +257 -0
  55. package/lib/handlers/api-proxy.js.map +1 -0
  56. package/lib/handlers/api.d.ts +11 -0
  57. package/lib/handlers/api.js +198 -0
  58. package/lib/handlers/api.js.map +1 -0
  59. package/lib/handlers/authorizer.d.ts +7 -0
  60. package/lib/handlers/authorizer.js +181 -0
  61. package/lib/handlers/authorizer.js.map +1 -0
  62. package/lib/handlers/cloudwatch.d.ts +7 -0
  63. package/lib/handlers/cloudwatch.js +143 -0
  64. package/lib/handlers/cloudwatch.js.map +1 -0
  65. package/lib/handlers/invoke.d.ts +13 -0
  66. package/lib/handlers/invoke.js +158 -0
  67. package/lib/handlers/invoke.js.map +1 -0
  68. package/lib/handlers/kinesis.d.ts +13 -0
  69. package/lib/handlers/kinesis.js +193 -0
  70. package/lib/handlers/kinesis.js.map +1 -0
  71. package/lib/handlers/lambda-proxy/index.d.ts +8 -0
  72. package/lib/handlers/lambda-proxy/index.js +182 -0
  73. package/lib/handlers/lambda-proxy/index.js.map +1 -0
  74. package/lib/handlers/lambda-proxy/validate-event-data.d.ts +3 -0
  75. package/lib/handlers/lambda-proxy/validate-event-data.js +26 -0
  76. package/lib/handlers/lambda-proxy/validate-event-data.js.map +1 -0
  77. package/lib/handlers/sqs-v2.d.ts +23 -0
  78. package/lib/handlers/sqs-v2.js +227 -0
  79. package/lib/handlers/sqs-v2.js.map +1 -0
  80. package/lib/handlers/sqs.d.ts +16 -0
  81. package/lib/handlers/sqs.js +179 -0
  82. package/lib/handlers/sqs.js.map +1 -0
  83. package/lib/index.d.ts +26 -0
  84. package/lib/index.js +72 -0
  85. package/lib/index.js.map +1 -0
  86. package/lib/models.d.ts +78 -0
  87. package/lib/models.js +3 -0
  88. package/lib/models.js.map +1 -0
  89. package/lib/utils/check-envs.d.ts +3 -0
  90. package/lib/utils/check-envs.js +14 -0
  91. package/lib/utils/check-envs.js.map +1 -0
  92. package/lib/utils/compare-ignore-case.d.ts +2 -0
  93. package/lib/utils/compare-ignore-case.js +10 -0
  94. package/lib/utils/compare-ignore-case.js.map +1 -0
  95. package/lib/utils/convert-query-string.d.ts +3 -0
  96. package/lib/utils/convert-query-string.js +18 -0
  97. package/lib/utils/convert-query-string.js.map +1 -0
  98. package/lib/utils/extract-ip.d.ts +3 -0
  99. package/lib/utils/extract-ip.js +12 -0
  100. package/lib/utils/extract-ip.js.map +1 -0
  101. package/lib/utils/extract-queue-name.d.ts +2 -0
  102. package/lib/utils/extract-queue-name.js +9 -0
  103. package/lib/utils/extract-queue-name.js.map +1 -0
  104. package/lib/utils/extract-user.d.ts +4 -0
  105. package/lib/utils/extract-user.js +57 -0
  106. package/lib/utils/extract-user.js.map +1 -0
  107. package/lib/utils/find-path.d.ts +2 -0
  108. package/lib/utils/find-path.js +14 -0
  109. package/lib/utils/find-path.js.map +1 -0
  110. package/lib/utils/get-user-id.d.ts +3 -0
  111. package/lib/utils/get-user-id.js +18 -0
  112. package/lib/utils/get-user-id.js.map +1 -0
  113. package/lib/utils/json-parse.d.ts +2 -0
  114. package/lib/utils/json-parse.js +27 -0
  115. package/lib/utils/json-parse.js.map +1 -0
  116. package/lib/utils/kinesis-parse.d.ts +2 -0
  117. package/lib/utils/kinesis-parse.js +14 -0
  118. package/lib/utils/kinesis-parse.js.map +1 -0
  119. package/lib/utils/lower-case-headers.d.ts +3 -0
  120. package/lib/utils/lower-case-headers.js +22 -0
  121. package/lib/utils/lower-case-headers.js.map +1 -0
  122. package/lib/utils/parse-authorizer-request.d.ts +4 -0
  123. package/lib/utils/parse-authorizer-request.js +32 -0
  124. package/lib/utils/parse-authorizer-request.js.map +1 -0
  125. package/lib/utils/parse-body.d.ts +2 -0
  126. package/lib/utils/parse-body.js +19 -0
  127. package/lib/utils/parse-body.js.map +1 -0
  128. package/lib/utils/parse-path-params.d.ts +2 -0
  129. package/lib/utils/parse-path-params.js +14 -0
  130. package/lib/utils/parse-path-params.js.map +1 -0
  131. package/lib/utils/parse-request.d.ts +4 -0
  132. package/lib/utils/parse-request.js +35 -0
  133. package/lib/utils/parse-request.js.map +1 -0
  134. package/lib/utils/provider-flush.d.ts +4 -0
  135. package/lib/utils/provider-flush.js +81 -0
  136. package/lib/utils/provider-flush.js.map +1 -0
  137. package/lib/utils/sleep.d.ts +2 -0
  138. package/lib/utils/sleep.js +7 -0
  139. package/lib/utils/sleep.js.map +1 -0
  140. package/package.json +25 -36
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var env_1 = require("@stone-ton/env");
4
+ var checkEnvs = function (logger) {
5
+ var env_errors = (0, env_1.getEnvErrors)();
6
+ if (env_errors.length > 0) {
7
+ logger.error({
8
+ message: 'Failed to get or parse environment variables.',
9
+ envs: env_errors,
10
+ });
11
+ }
12
+ };
13
+ exports.default = checkEnvs;
14
+ //# sourceMappingURL=check-envs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"check-envs.js","sourceRoot":"","sources":["../../src/utils/check-envs.ts"],"names":[],"mappings":";;AAAA,sCAA6C;AAG7C,IAAM,SAAS,GAAG,UAAC,MAAc;IAC/B,IAAM,UAAU,GAAG,IAAA,kBAAY,GAAE,CAAA;IAEjC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;QACzB,MAAM,CAAC,KAAK,CAAC;YACX,OAAO,EAAE,+CAA+C;YACxD,IAAI,EAAE,UAAU;SACjB,CAAC,CAAA;KACH;AACH,CAAC,CAAA;AAED,kBAAe,SAAS,CAAA"}
@@ -0,0 +1,2 @@
1
+ declare const compareIgnoreCase: (a?: string, b?: string) => boolean;
2
+ export default compareIgnoreCase;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var compareIgnoreCase = function (a, b) {
4
+ if (typeof a !== 'string' || typeof b !== 'string') {
5
+ return false;
6
+ }
7
+ return a.toUpperCase() === b.toUpperCase();
8
+ };
9
+ exports.default = compareIgnoreCase;
10
+ //# sourceMappingURL=compare-ignore-case.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compare-ignore-case.js","sourceRoot":"","sources":["../../src/utils/compare-ignore-case.ts"],"names":[],"mappings":";;AAAA,IAAM,iBAAiB,GAAG,UAAC,CAAU,EAAE,CAAU;IAC/C,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE;QAClD,OAAO,KAAK,CAAA;KACb;IAED,OAAO,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE,CAAA;AAC5C,CAAC,CAAA;AAED,kBAAe,iBAAiB,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { APIGatewayProxyEventMultiValueQueryStringParameters } from 'aws-lambda';
2
+ declare const convertQueryString: (multiValueQueryStringParameters: APIGatewayProxyEventMultiValueQueryStringParameters | null) => string;
3
+ export default convertQueryString;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var convertQueryString = function (multiValueQueryStringParameters) {
4
+ if (!multiValueQueryStringParameters) {
5
+ return '';
6
+ }
7
+ var result = Object
8
+ .entries(multiValueQueryStringParameters)
9
+ .map(function (_a) {
10
+ var _b;
11
+ var key = _a[0], values = _a[1];
12
+ return (_b = values === null || values === void 0 ? void 0 : values.map(function (value) { return "".concat(key, "=").concat(value); })) !== null && _b !== void 0 ? _b : key;
13
+ }).flat()
14
+ .join('&');
15
+ return result === '' ? '' : "?".concat(result);
16
+ };
17
+ exports.default = convertQueryString;
18
+ //# sourceMappingURL=convert-query-string.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convert-query-string.js","sourceRoot":"","sources":["../../src/utils/convert-query-string.ts"],"names":[],"mappings":";;AAEA,IAAM,kBAAkB,GAAG,UACzB,+BAA2F;IAE3F,IAAI,CAAC,+BAA+B,EAAE;QACpC,OAAO,EAAE,CAAA;KACV;IAED,IAAM,MAAM,GAAG,MAAM;SAClB,OAAO,CAAC,+BAA+B,CAAC;SACxC,GAAG,CACF,UAAC,EAAa;;YAAZ,GAAG,QAAA,EAAE,MAAM,QAAA;QAAM,OAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CACrB,GAAG,CAAC,UAAC,KAAK,IAAK,OAAA,UAAG,GAAG,cAAI,KAAK,CAAE,EAAjB,CAAiB,CAAC,mCAChC,GAAG,CAAA;KAAA,CAET,CAAC,IAAI,EAAE;SACP,IAAI,CAAC,GAAG,CAAC,CAAA;IAEZ,OAAO,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAI,MAAM,CAAE,CAAA;AAC1C,CAAC,CAAA;AAED,kBAAe,kBAAkB,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { APIGatewayProxyEventHeaders } from 'aws-lambda';
2
+ declare const extractIP: (headers: APIGatewayProxyEventHeaders, sourceIP?: string) => string;
3
+ export default extractIP;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var extractIP = function (headers, sourceIP) {
4
+ var ip = headers['x-forwarded-for']
5
+ || headers['cf-connecting-ip']
6
+ || headers['x-real-ip']
7
+ || sourceIP
8
+ || '';
9
+ return ip.split(',')[0];
10
+ };
11
+ exports.default = extractIP;
12
+ //# sourceMappingURL=extract-ip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extract-ip.js","sourceRoot":"","sources":["../../src/utils/extract-ip.ts"],"names":[],"mappings":";;AAEA,IAAM,SAAS,GAAG,UAChB,OAAoC,EAAE,QAAiB;IAEvD,IAAM,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC;WAChC,OAAO,CAAC,kBAAkB,CAAC;WAC3B,OAAO,CAAC,WAAW,CAAC;WACpB,QAAQ;WACR,EAAE,CAAA;IAEP,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;AACzB,CAAC,CAAA;AAED,kBAAe,SAAS,CAAA"}
@@ -0,0 +1,2 @@
1
+ declare const extractQueueName: (arn: string) => string;
2
+ export default extractQueueName;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var extractQueueName = function (arn) {
4
+ var splitUrl = arn.split(':');
5
+ var name = splitUrl[splitUrl.length - 1];
6
+ return name;
7
+ };
8
+ exports.default = extractQueueName;
9
+ //# sourceMappingURL=extract-queue-name.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extract-queue-name.js","sourceRoot":"","sources":["../../src/utils/extract-queue-name.ts"],"names":[],"mappings":";;AAAA,IAAM,gBAAgB,GAAG,UAAC,GAAW;IACnC,IAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAE/B,IAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IAE1C,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,kBAAe,gBAAgB,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { APIGatewayProxyEventHeaders } from 'aws-lambda';
2
+ import { User } from '../models';
3
+ declare const extractUser: (headers: APIGatewayProxyEventHeaders) => User | undefined;
4
+ export default extractUser;
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ var fintalk_logger_1 = __importDefault(require("fintalk-logger"));
18
+ var compare_ignore_case_1 = __importDefault(require("./compare-ignore-case"));
19
+ var extractPayload = function (headers) {
20
+ var authorization = headers.authorization;
21
+ if (!authorization) {
22
+ return undefined;
23
+ }
24
+ var authType = authorization.split(' ')[0];
25
+ if (!(0, compare_ignore_case_1.default)(authType, 'Bearer')) {
26
+ return undefined;
27
+ }
28
+ var payload = authorization.split('.')[1];
29
+ if (!payload) {
30
+ fintalk_logger_1.default.warn({
31
+ message: 'Invalid jwt',
32
+ authorization: "".concat(authorization.substring(0, 5), "***"),
33
+ });
34
+ return undefined;
35
+ }
36
+ try {
37
+ return JSON.parse(Buffer.from(payload, 'base64').toString('utf-8'));
38
+ }
39
+ catch (error) {
40
+ fintalk_logger_1.default.warn({
41
+ message: 'Cannot parse json on jwt payload',
42
+ payload: payload,
43
+ error_message: error.message,
44
+ stack: error.stack,
45
+ });
46
+ return undefined;
47
+ }
48
+ };
49
+ var extractUser = function (headers) {
50
+ var payload = extractPayload(headers);
51
+ if (!payload) {
52
+ return undefined;
53
+ }
54
+ return __assign(__assign({}, payload), { id: payload.sub, groups: payload.groups || payload['cognito:groups'] });
55
+ };
56
+ exports.default = extractUser;
57
+ //# sourceMappingURL=extract-user.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extract-user.js","sourceRoot":"","sources":["../../src/utils/extract-user.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,kEAAmC;AAInC,8EAAqD;AAErD,IAAM,cAAc,GAAG,UAAC,OAAoC;IAClD,IAAA,aAAa,GAAK,OAAO,cAAZ,CAAY;IAEjC,IAAI,CAAC,aAAa,EAAE;QAClB,OAAO,SAAS,CAAA;KACjB;IAED,IAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IAE5C,IAAI,CAAC,IAAA,6BAAiB,EAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE;QAC1C,OAAO,SAAS,CAAA;KACjB;IAED,IAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IAE3C,IAAI,CAAC,OAAO,EAAE;QACZ,wBAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,aAAa;YACtB,aAAa,EAAE,UAAG,aAAa,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,QAAK;SACrD,CAAC,CAAA;QAEF,OAAO,SAAS,CAAA;KACjB;IAED,IAAI;QACF,OAAO,IAAI,CAAC,KAAK,CACf,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CACjD,CAAA;KACF;IAAC,OAAO,KAAU,EAAE;QACnB,wBAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,kCAAkC;YAC3C,OAAO,SAAA;YACP,aAAa,EAAE,KAAK,CAAC,OAAO;YAC5B,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC,CAAA;QACF,OAAO,SAAS,CAAA;KACjB;AACH,CAAC,CAAA;AAED,IAAM,WAAW,GAAG,UAAC,OAAoC;IACvD,IAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;IACvC,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,SAAS,CAAA;KACjB;IAED,6BACK,OAAO,KACV,EAAE,EAAE,OAAO,CAAC,GAAG,EACf,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,gBAAgB,CAAC,IACpD;AACH,CAAC,CAAA;AAED,kBAAe,WAAW,CAAA"}
@@ -0,0 +1,2 @@
1
+ declare const findPath: (path: string, method: string, eventPath?: string, eventMethod?: string) => boolean;
2
+ export default findPath;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var findPath = function (path, method, eventPath, eventMethod) {
4
+ if (typeof path !== 'string'
5
+ || typeof eventPath !== 'string'
6
+ || typeof method !== 'string'
7
+ || typeof eventMethod !== 'string') {
8
+ return false;
9
+ }
10
+ return path.toUpperCase() === eventPath.toUpperCase()
11
+ && method.toUpperCase() === eventMethod.toUpperCase();
12
+ };
13
+ exports.default = findPath;
14
+ //# sourceMappingURL=find-path.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"find-path.js","sourceRoot":"","sources":["../../src/utils/find-path.ts"],"names":[],"mappings":";;AAAA,IAAM,QAAQ,GAAG,UACf,IAAY,EACZ,MAAc,EACd,SAAkB,EAClB,WAAoB;IACpB,IAAI,OAAO,IAAI,KAAK,QAAQ;WACzB,OAAO,SAAS,KAAK,QAAQ;WAC7B,OAAO,MAAM,KAAK,QAAQ;WAC1B,OAAO,WAAW,KAAK,QAAQ,EAAE;QAClC,OAAO,KAAK,CAAA;KACb;IAED,OAAO,IAAI,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,WAAW,EAAE;WAChD,MAAM,CAAC,WAAW,EAAE,KAAK,WAAW,CAAC,WAAW,EAAE,CAAA;AACzD,CAAC,CAAA;AAED,kBAAe,QAAQ,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { Request } from '../models';
2
+ declare const getUserId: (request: Request) => string;
3
+ export default getUserId;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var fintalk_logger_1 = __importDefault(require("fintalk-logger"));
7
+ var forbidden_error_1 = __importDefault(require("../errors/forbidden-error"));
8
+ var getUserId = function (request) {
9
+ if (!request.user) {
10
+ fintalk_logger_1.default.error({
11
+ message: 'User is undefined',
12
+ });
13
+ throw new forbidden_error_1.default();
14
+ }
15
+ return request.user.id;
16
+ };
17
+ exports.default = getUserId;
18
+ //# sourceMappingURL=get-user-id.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-user-id.js","sourceRoot":"","sources":["../../src/utils/get-user-id.ts"],"names":[],"mappings":";;;;;AAAA,kEAAmC;AAEnC,8EAAsD;AAGtD,IAAM,SAAS,GAAG,UAAC,OAAgB;IACjC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;QACjB,wBAAM,CAAC,KAAK,CAAC;YACX,OAAO,EAAE,mBAAmB;SAC7B,CAAC,CAAA;QACF,MAAM,IAAI,yBAAc,EAAE,CAAA;KAC3B;IAED,OAAO,OAAO,CAAC,IAAI,CAAC,EAAE,CAAA;AACxB,CAAC,CAAA;AAED,kBAAe,SAAS,CAAA"}
@@ -0,0 +1,2 @@
1
+ declare const jsonParse: (body: string) => any;
2
+ export default jsonParse;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var fintalk_logger_1 = __importDefault(require("fintalk-logger"));
7
+ var bad_request_error_1 = __importDefault(require("../errors/bad-request-error"));
8
+ var jsonParse = function (body) {
9
+ try {
10
+ return JSON.parse(body);
11
+ }
12
+ catch (error) {
13
+ fintalk_logger_1.default.warn({
14
+ message: error.message,
15
+ stack: error.stack,
16
+ body: body,
17
+ });
18
+ throw new bad_request_error_1.default('JSON parse error', [
19
+ {
20
+ path: ['body'],
21
+ message: error.message,
22
+ },
23
+ ]);
24
+ }
25
+ };
26
+ exports.default = jsonParse;
27
+ //# sourceMappingURL=json-parse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-parse.js","sourceRoot":"","sources":["../../src/utils/json-parse.ts"],"names":[],"mappings":";;;;;AAAA,kEAAmC;AAEnC,kFAAyD;AAEzD,IAAM,SAAS,GAAG,UAAC,IAAY;IAC7B,IAAI;QACF,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;KACxB;IAAC,OAAO,KAAU,EAAE;QACnB,wBAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,IAAI,MAAA;SACL,CAAC,CAAA;QAEF,MAAM,IAAI,2BAAe,CAAC,kBAAkB,EAAE;YAC5C;gBACE,IAAI,EAAE,CAAC,MAAM,CAAC;gBACd,OAAO,EAAE,KAAK,CAAC,OAAO;aACvB;SACF,CAAC,CAAA;KACH;AACH,CAAC,CAAA;AAED,kBAAe,SAAS,CAAA"}
@@ -0,0 +1,2 @@
1
+ declare const kinesisParse: (data: string) => any;
2
+ export default kinesisParse;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var kinesisParse = function (data) {
4
+ try {
5
+ return JSON.parse(Buffer.from(data, 'base64').toString());
6
+ }
7
+ catch (error) {
8
+ error.error_message = error.message;
9
+ error.message = 'Can not parse kinesis data';
10
+ throw error;
11
+ }
12
+ };
13
+ exports.default = kinesisParse;
14
+ //# sourceMappingURL=kinesis-parse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kinesis-parse.js","sourceRoot":"","sources":["../../src/utils/kinesis-parse.ts"],"names":[],"mappings":";;AAAA,IAAM,YAAY,GAAG,UAAC,IAAY;IAChC,IAAI;QACF,OAAO,IAAI,CAAC,KAAK,CACf,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,QAAQ,EAAE,CACvC,CAAA;KACF;IAAC,OAAO,KAAU,EAAE;QACnB,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC,OAAO,CAAA;QACnC,KAAK,CAAC,OAAO,GAAG,4BAA4B,CAAA;QAC5C,MAAM,KAAK,CAAA;KACZ;AACH,CAAC,CAAA;AAED,kBAAe,YAAY,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { APIGatewayProxyEventHeaders, APIGatewayRequestAuthorizerEventHeaders } from 'aws-lambda';
2
+ declare const lowerCaseHeaders: (headers: APIGatewayProxyEventHeaders | APIGatewayRequestAuthorizerEventHeaders) => APIGatewayProxyEventHeaders;
3
+ export default lowerCaseHeaders;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ var lowerCaseHeaders = function (headers) {
15
+ return Object.entries(headers).reduce(function (acc, _a) {
16
+ var _b;
17
+ var headerName = _a[0], value = _a[1];
18
+ return (__assign(__assign({}, acc), (_b = {}, _b[headerName.toLocaleLowerCase()] = value, _b)));
19
+ }, {});
20
+ };
21
+ exports.default = lowerCaseHeaders;
22
+ //# sourceMappingURL=lower-case-headers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lower-case-headers.js","sourceRoot":"","sources":["../../src/utils/lower-case-headers.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAEA,IAAM,gBAAgB,GAAG,UACvB,OAA8E;IAE9E,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CACnC,UAAC,GAAG,EAAE,EAAmB;;YAAlB,UAAU,QAAA,EAAE,KAAK,QAAA;QAAM,OAAA,uBACzB,GAAG,gBACL,UAAU,CAAC,iBAAiB,EAAE,IAAG,KAAK,OACvC;IAH4B,CAG5B,EACF,EAAE,CACH,CAAA;AACH,CAAC,CAAA;AAED,kBAAe,gBAAgB,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { APIGatewayRequestAuthorizerEvent, Context } from 'aws-lambda';
2
+ import { Request } from '../models';
3
+ declare const parseAuthorizerRequest: (event: APIGatewayRequestAuthorizerEvent, context: Context, path?: string) => Request;
4
+ export default parseAuthorizerRequest;
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var extract_ip_1 = __importDefault(require("./extract-ip"));
7
+ var extract_user_1 = __importDefault(require("./extract-user"));
8
+ var lower_case_headers_1 = __importDefault(require("./lower-case-headers"));
9
+ var parse_path_params_1 = __importDefault(require("./parse-path-params"));
10
+ var parseAuthorizerRequest = function (event, context, path) {
11
+ var _a, _b, _c, _d;
12
+ var headers = event.headers ? (0, lower_case_headers_1.default)(event.headers) : {};
13
+ var params = (0, parse_path_params_1.default)(path, event.path);
14
+ return {
15
+ id: event.requestContext.requestId,
16
+ headers: headers,
17
+ ip: (0, extract_ip_1.default)(headers, event.requestContext.identity.sourceIp),
18
+ method: event.httpMethod.toUpperCase(),
19
+ multiValueQuery: (_a = event.multiValueQueryStringParameters) !== null && _a !== void 0 ? _a : {},
20
+ params: params,
21
+ path: event.path,
22
+ pathParameters: (_b = event.pathParameters) !== null && _b !== void 0 ? _b : {},
23
+ query: (_c = event.queryStringParameters) !== null && _c !== void 0 ? _c : {},
24
+ requestContext: event.requestContext,
25
+ context: context,
26
+ stageVariables: (_d = event.stageVariables) !== null && _d !== void 0 ? _d : {},
27
+ userAgent: headers['user-agent'],
28
+ user: (0, extract_user_1.default)(headers),
29
+ };
30
+ };
31
+ exports.default = parseAuthorizerRequest;
32
+ //# sourceMappingURL=parse-authorizer-request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-authorizer-request.js","sourceRoot":"","sources":["../../src/utils/parse-authorizer-request.ts"],"names":[],"mappings":";;;;;AAOA,4DAAoC;AACpC,gEAAwC;AACxC,4EAAmD;AACnD,0EAAiD;AAEjD,IAAM,sBAAsB,GAAG,UAC7B,KAAuC,EACvC,OAAgB,EAChB,IAAa;;IAEb,IAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAA,4BAAgB,EAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IACpE,IAAM,MAAM,GAAG,IAAA,2BAAe,EAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;IAEhD,OAAO;QACL,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,SAAS;QAClC,OAAO,SAAA;QACP,EAAE,EAAE,IAAA,oBAAS,EAAC,OAAO,EAAE,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC9D,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE;QACtC,eAAe,EAAE,MAAA,KAAK,CAAC,+BAA+B,mCAAI,EAAE;QAC5D,MAAM,QAAA;QACN,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,cAAc,EAAE,MAAA,KAAK,CAAC,cAAc,mCAAI,EAAE;QAC1C,KAAK,EAAE,MAAA,KAAK,CAAC,qBAAqB,mCAAI,EAAE;QACxC,cAAc,EAAE,KAAK,CAAC,cAAc;QACpC,OAAO,SAAA;QACP,cAAc,EAAE,MAAA,KAAK,CAAC,cAAc,mCAAI,EAAE;QAC1C,SAAS,EAAE,OAAO,CAAC,YAAY,CAAC;QAChC,IAAI,EAAE,IAAA,sBAAW,EAAC,OAAO,CAAC;KAC3B,CAAA;AACH,CAAC,CAAA;AAED,kBAAe,sBAAsB,CAAA"}
@@ -0,0 +1,2 @@
1
+ declare const parseBody: (contentType?: string, body?: string | null) => any;
2
+ export default parseBody;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var qs_1 = __importDefault(require("qs"));
7
+ var json_parse_1 = __importDefault(require("./json-parse"));
8
+ var parse = qs_1.default.parse;
9
+ var parseBody = function (contentType, body) {
10
+ if (!body) {
11
+ return undefined;
12
+ }
13
+ if (contentType === 'application/x-www-form-urlencoded') {
14
+ return parse(body);
15
+ }
16
+ return (0, json_parse_1.default)(body);
17
+ };
18
+ exports.default = parseBody;
19
+ //# sourceMappingURL=parse-body.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-body.js","sourceRoot":"","sources":["../../src/utils/parse-body.ts"],"names":[],"mappings":";;;;;AAAA,0CAAmB;AAEnB,4DAAoC;AAE5B,IAAA,KAAK,GAAK,YAAE,MAAP,CAAO;AAEpB,IAAM,SAAS,GAAG,UAAC,WAAoB,EAAE,IAAoB;IAC3D,IAAI,CAAC,IAAI,EAAE;QACT,OAAO,SAAS,CAAA;KACjB;IAED,IAAI,WAAW,KAAK,mCAAmC,EAAE;QACvD,OAAO,KAAK,CAAC,IAAI,CAAC,CAAA;KACnB;IACD,OAAO,IAAA,oBAAS,EAAC,IAAI,CAAC,CAAA;AACxB,CAAC,CAAA;AAED,kBAAe,SAAS,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const parsePathParams: (path?: string, url?: string) => Record<string, string>;
2
+ export default parsePathParams;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parsePathParams = void 0;
4
+ var node_match_path_1 = require("node-match-path");
5
+ var parsePathParams = function (path, url) {
6
+ if (!path || !url) {
7
+ return {};
8
+ }
9
+ var params = (0, node_match_path_1.match)(path, url).params;
10
+ return params !== null && params !== void 0 ? params : {};
11
+ };
12
+ exports.parsePathParams = parsePathParams;
13
+ exports.default = exports.parsePathParams;
14
+ //# sourceMappingURL=parse-path-params.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-path-params.js","sourceRoot":"","sources":["../../src/utils/parse-path-params.ts"],"names":[],"mappings":";;;AAAA,mDAAuC;AAEhC,IAAM,eAAe,GAAG,UAAC,IAAa,EAAE,GAAY;IACzD,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE;QACjB,OAAO,EAAE,CAAA;KACV;IAEO,IAAA,MAAM,GAAK,IAAA,uBAAK,EAAC,IAAI,EAAE,GAAG,CAAC,OAArB,CAAqB;IAEnC,OAAO,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,EAAE,CAAA;AACrB,CAAC,CAAA;AARY,QAAA,eAAe,mBAQ3B;AAED,kBAAe,uBAAe,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { APIGatewayProxyEvent, Context } from 'aws-lambda';
2
+ import { Request } from '../models';
3
+ declare const parseRequest: (event: APIGatewayProxyEvent, context: Context, path?: string) => Request;
4
+ export default parseRequest;
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var extract_ip_1 = __importDefault(require("./extract-ip"));
7
+ var extract_user_1 = __importDefault(require("./extract-user"));
8
+ var lower_case_headers_1 = __importDefault(require("./lower-case-headers"));
9
+ var parse_body_1 = __importDefault(require("./parse-body"));
10
+ var parse_path_params_1 = __importDefault(require("./parse-path-params"));
11
+ var parseRequest = function (event, context, path) {
12
+ var _a, _b, _c, _d, _e;
13
+ var headers = (0, lower_case_headers_1.default)(event.headers);
14
+ var params = (0, parse_path_params_1.default)(path, event.path);
15
+ return {
16
+ id: event.requestContext.requestId,
17
+ body: (0, parse_body_1.default)(headers['content-type'], event.body),
18
+ headers: headers,
19
+ ip: (0, extract_ip_1.default)(headers, event.requestContext.identity.sourceIp),
20
+ method: event.httpMethod.toUpperCase(),
21
+ multiValueQuery: (_a = event.multiValueQueryStringParameters) !== null && _a !== void 0 ? _a : {},
22
+ params: params,
23
+ path: event.path,
24
+ pathParameters: (_b = event.pathParameters) !== null && _b !== void 0 ? _b : {},
25
+ query: (_c = event.queryStringParameters) !== null && _c !== void 0 ? _c : {},
26
+ rawBody: (_d = event.body) !== null && _d !== void 0 ? _d : undefined,
27
+ requestContext: event.requestContext,
28
+ context: context,
29
+ stageVariables: (_e = event.stageVariables) !== null && _e !== void 0 ? _e : {},
30
+ userAgent: headers['user-agent'],
31
+ user: (0, extract_user_1.default)(headers),
32
+ };
33
+ };
34
+ exports.default = parseRequest;
35
+ //# sourceMappingURL=parse-request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-request.js","sourceRoot":"","sources":["../../src/utils/parse-request.ts"],"names":[],"mappings":";;;;;AAOA,4DAAoC;AACpC,gEAAwC;AACxC,4EAAmD;AACnD,4DAAoC;AACpC,0EAAiD;AAEjD,IAAM,YAAY,GAAG,UACnB,KAA2B,EAC3B,OAAgB,EAChB,IAAa;;IAEb,IAAM,OAAO,GAAG,IAAA,4BAAgB,EAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC/C,IAAM,MAAM,GAAG,IAAA,2BAAe,EAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;IAEhD,OAAO;QACL,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,SAAS;QAClC,IAAI,EAAE,IAAA,oBAAS,EAAC,OAAO,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC;QACpD,OAAO,SAAA;QACP,EAAE,EAAE,IAAA,oBAAS,EAAC,OAAO,EAAE,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC9D,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE;QACtC,eAAe,EAAE,MAAA,KAAK,CAAC,+BAA+B,mCAAI,EAAE;QAC5D,MAAM,QAAA;QACN,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,cAAc,EAAE,MAAA,KAAK,CAAC,cAAc,mCAAI,EAAE;QAC1C,KAAK,EAAE,MAAA,KAAK,CAAC,qBAAqB,mCAAI,EAAE;QACxC,OAAO,EAAE,MAAA,KAAK,CAAC,IAAI,mCAAI,SAAS;QAChC,cAAc,EAAE,KAAK,CAAC,cAAc;QACpC,OAAO,SAAA;QACP,cAAc,EAAE,MAAA,KAAK,CAAC,cAAc,mCAAI,EAAE;QAC1C,SAAS,EAAE,OAAO,CAAC,YAAY,CAAC;QAChC,IAAI,EAAE,IAAA,sBAAW,EAAC,OAAO,CAAC;KAC3B,CAAA;AACH,CAAC,CAAA;AAED,kBAAe,YAAY,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { NodeTracerProvider } from '@opentelemetry/sdk-trace-node';
2
+ export declare const tryParseFloat: (defaultValue: number, value?: string) => number;
3
+ declare const providerFlush: (tracerProvider: NodeTracerProvider, timeout?: number) => Promise<void>;
4
+ export default providerFlush;
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.tryParseFloat = void 0;
43
+ var fintalk_logger_1 = __importDefault(require("fintalk-logger"));
44
+ var tryParseFloat = function (defaultValue, value) {
45
+ if (!value) {
46
+ return defaultValue;
47
+ }
48
+ var result = parseFloat(value);
49
+ if (isNaN(result)) {
50
+ return defaultValue;
51
+ }
52
+ return result;
53
+ };
54
+ exports.tryParseFloat = tryParseFloat;
55
+ var providerFlush = function (tracerProvider, timeout) { return __awaiter(void 0, void 0, void 0, function () {
56
+ var tms;
57
+ return __generator(this, function (_a) {
58
+ tms = timeout !== null && timeout !== void 0 ? timeout : (0, exports.tryParseFloat)(200, process.env.OTLP_TIMEOUT);
59
+ return [2, new Promise(function (resolve) {
60
+ var t = setTimeout(function () {
61
+ fintalk_logger_1.default.error({
62
+ message: 'Tracer provider timeout',
63
+ });
64
+ resolve();
65
+ }, tms);
66
+ tracerProvider
67
+ .forceFlush()
68
+ .catch(function (error) {
69
+ fintalk_logger_1.default.error({
70
+ message: 'Tracer provider error',
71
+ error_message: error.message,
72
+ });
73
+ }).finally(function () {
74
+ clearTimeout(t);
75
+ resolve();
76
+ });
77
+ })];
78
+ });
79
+ }); };
80
+ exports.default = providerFlush;
81
+ //# sourceMappingURL=provider-flush.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider-flush.js","sourceRoot":"","sources":["../../src/utils/provider-flush.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,kEAAmC;AAE5B,IAAM,aAAa,GAAG,UAAC,YAAoB,EAAE,KAAc;IAChE,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,YAAY,CAAA;KACpB;IAED,IAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;IAEhC,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE;QACjB,OAAO,YAAY,CAAA;KACpB;IAED,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAZY,QAAA,aAAa,iBAYzB;AAED,IAAM,aAAa,GAAG,UACpB,cAAkC,EAClC,OAAgB;;;QAEV,GAAG,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,IAAA,qBAAa,EAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;QAEnE,WAAO,IAAI,OAAO,CAAC,UAAC,OAAO;gBACzB,IAAM,CAAC,GAAG,UAAU,CAAC;oBACnB,wBAAM,CAAC,KAAK,CAAC;wBACX,OAAO,EAAE,yBAAyB;qBACnC,CAAC,CAAA;oBAEF,OAAO,EAAE,CAAA;gBACX,CAAC,EAAE,GAAG,CAAC,CAAA;gBAEP,cAAc;qBACX,UAAU,EAAE;qBACZ,KAAK,CAAC,UAAC,KAAU;oBAChB,wBAAM,CAAC,KAAK,CAAC;wBACX,OAAO,EAAE,uBAAuB;wBAChC,aAAa,EAAE,KAAK,CAAC,OAAO;qBAC7B,CAAC,CAAA;gBACJ,CAAC,CAAC,CAAC,OAAO,CAAC;oBACT,YAAY,CAAC,CAAC,CAAC,CAAA;oBACf,OAAO,EAAE,CAAA;gBACX,CAAC,CAAC,CAAA;YACN,CAAC,CAAC,EAAA;;KACH,CAAA;AAED,kBAAe,aAAa,CAAA"}
@@ -0,0 +1,2 @@
1
+ declare const sleep: (ms: number) => Promise<void>;
2
+ export default sleep;
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var sleep = function (ms) {
4
+ return new Promise(function (resolve) { return setTimeout(resolve, ms); });
5
+ };
6
+ exports.default = sleep;
7
+ //# sourceMappingURL=sleep.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sleep.js","sourceRoot":"","sources":["../../src/utils/sleep.ts"],"names":[],"mappings":";;AAAA,IAAM,KAAK,GAAG,UAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,UAAC,OAAO,IAAK,OAAA,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,EAAvB,CAAuB,CAAC,CAAA;AAC1D,CAAC,CAAA;AAED,kBAAe,KAAK,CAAA"}