@adtrackify/at-service-common 1.0.0 → 1.0.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 (139) hide show
  1. package/.babelrc +22 -0
  2. package/.editorconfig +12 -0
  3. package/.eslintrc.json +33 -0
  4. package/.husky/pre-push +4 -0
  5. package/dist/clients/dynamodb-client.d.ts +15 -0
  6. package/dist/clients/dynamodb-client.js +126 -0
  7. package/dist/clients/dynamodb-client.js.map +1 -0
  8. package/dist/clients/eventbridge-client.d.ts +13 -0
  9. package/dist/clients/eventbridge-client.js +43 -0
  10. package/dist/clients/eventbridge-client.js.map +1 -0
  11. package/dist/clients/http-client.d.ts +30 -0
  12. package/dist/clients/http-client.js +39 -0
  13. package/dist/clients/http-client.js.map +1 -0
  14. package/dist/clients/index.d.ts +3 -0
  15. package/dist/clients/index.js +20 -0
  16. package/dist/clients/index.js.map +1 -0
  17. package/dist/helpers/index.d.ts +3 -0
  18. package/dist/helpers/index.js +20 -0
  19. package/dist/helpers/index.js.map +1 -0
  20. package/dist/helpers/input-validation-helper.d.ts +2 -0
  21. package/dist/helpers/input-validation-helper.js +52 -0
  22. package/dist/helpers/input-validation-helper.js.map +1 -0
  23. package/dist/helpers/logging-helper.d.ts +1 -0
  24. package/dist/helpers/logging-helper.js +38 -0
  25. package/dist/helpers/logging-helper.js.map +1 -0
  26. package/dist/helpers/response-helper.d.ts +36 -0
  27. package/dist/helpers/response-helper.js +43 -0
  28. package/dist/helpers/response-helper.js.map +1 -0
  29. package/dist/index.d.ts +4 -0
  30. package/dist/index.js +21 -0
  31. package/dist/index.js.map +1 -0
  32. package/dist/libs/crypto.d.ts +1 -0
  33. package/dist/libs/crypto.js +13 -0
  34. package/dist/libs/crypto.js.map +1 -0
  35. package/dist/libs/dates.d.ts +3 -0
  36. package/dist/libs/dates.js +17 -0
  37. package/dist/libs/dates.js.map +1 -0
  38. package/dist/libs/http-error.d.ts +21 -0
  39. package/dist/libs/http-error.js +70 -0
  40. package/dist/libs/http-error.js.map +1 -0
  41. package/dist/libs/http-status-codes.d.ts +344 -0
  42. package/dist/libs/http-status-codes.js +349 -0
  43. package/dist/libs/http-status-codes.js.map +1 -0
  44. package/dist/libs/index.d.ts +4 -0
  45. package/dist/libs/index.js +21 -0
  46. package/dist/libs/index.js.map +1 -0
  47. package/dist/types/db/index.d.ts +1 -0
  48. package/dist/types/db/index.js +18 -0
  49. package/dist/types/db/index.js.map +1 -0
  50. package/dist/types/db/shopify-app-install.d.ts +28 -0
  51. package/dist/types/db/shopify-app-install.js +3 -0
  52. package/dist/types/db/shopify-app-install.js.map +1 -0
  53. package/dist/types/index.d.ts +1 -0
  54. package/dist/{cjs → types}/index.js +17 -17
  55. package/dist/types/index.js.map +1 -0
  56. package/env.yml +9 -0
  57. package/jest.config.js +39 -0
  58. package/package.json +53 -63
  59. package/prettier.config.js +9 -0
  60. package/src/clients/axios.d.ts +8 -0
  61. package/src/clients/dynamodb-client.ts +85 -0
  62. package/src/clients/eventbridge-client.ts +38 -0
  63. package/src/clients/http-client.ts +36 -0
  64. package/src/clients/index.ts +3 -0
  65. package/src/helpers/index.ts +3 -0
  66. package/src/helpers/input-validation-helper.ts +22 -0
  67. package/src/helpers/logging-helper.ts +10 -0
  68. package/src/helpers/response-helper.ts +40 -0
  69. package/src/index.ts +4 -0
  70. package/src/libs/crypto.ts +6 -0
  71. package/src/libs/dates.ts +14 -0
  72. package/src/libs/http-error.ts +100 -0
  73. package/src/libs/http-status-codes.ts +344 -0
  74. package/src/libs/index.ts +4 -0
  75. package/src/types/db/index.ts +1 -0
  76. package/src/types/db/shopify-app-install.ts +31 -0
  77. package/src/types/index.ts +1 -0
  78. package/tsconfig.json +25 -0
  79. package/tslint.json +6 -0
  80. package/README.md +0 -1
  81. package/dist/cjs/fingerprint.d.ts +0 -3
  82. package/dist/cjs/fingerprint.js +0 -9
  83. package/dist/cjs/fingerprint.js.map +0 -1
  84. package/dist/cjs/index.d.ts +0 -1
  85. package/dist/cjs/index.js.map +0 -1
  86. package/dist/cjs/sources/architecture.d.ts +0 -1
  87. package/dist/cjs/sources/architecture.js +0 -16
  88. package/dist/cjs/sources/architecture.js.map +0 -1
  89. package/dist/cjs/sources/cookie-enabled.d.ts +0 -1
  90. package/dist/cjs/sources/cookie-enabled.js +0 -12
  91. package/dist/cjs/sources/cookie-enabled.js.map +0 -1
  92. package/dist/cjs/sources/cpu-class.d.ts +0 -1
  93. package/dist/cjs/sources/cpu-class.js +0 -12
  94. package/dist/cjs/sources/cpu-class.js.map +0 -1
  95. package/dist/cjs/sources/device-memory.d.ts +0 -1
  96. package/dist/cjs/sources/device-memory.js +0 -12
  97. package/dist/cjs/sources/device-memory.js.map +0 -1
  98. package/dist/cjs/sources/platform.d.ts +0 -1
  99. package/dist/cjs/sources/platform.js +0 -12
  100. package/dist/cjs/sources/platform.js.map +0 -1
  101. package/dist/cjs/sources/plugins.d.ts +0 -1
  102. package/dist/cjs/sources/plugins.js +0 -26
  103. package/dist/cjs/sources/plugins.js.map +0 -1
  104. package/dist/cjs/sources/timezone.d.ts +0 -1
  105. package/dist/cjs/sources/timezone.js +0 -12
  106. package/dist/cjs/sources/timezone.js.map +0 -1
  107. package/dist/cjs/sources/user-agent.d.ts +0 -1
  108. package/dist/cjs/sources/user-agent.js +0 -12
  109. package/dist/cjs/sources/user-agent.js.map +0 -1
  110. package/dist/esm/fingerprint.d.ts +0 -3
  111. package/dist/esm/fingerprint.js +0 -5
  112. package/dist/esm/fingerprint.js.map +0 -1
  113. package/dist/esm/index.d.ts +0 -1
  114. package/dist/esm/index.js +0 -2
  115. package/dist/esm/index.js.map +0 -1
  116. package/dist/esm/sources/architecture.d.ts +0 -1
  117. package/dist/esm/sources/architecture.js +0 -13
  118. package/dist/esm/sources/architecture.js.map +0 -1
  119. package/dist/esm/sources/cookie-enabled.d.ts +0 -1
  120. package/dist/esm/sources/cookie-enabled.js +0 -9
  121. package/dist/esm/sources/cookie-enabled.js.map +0 -1
  122. package/dist/esm/sources/cpu-class.d.ts +0 -1
  123. package/dist/esm/sources/cpu-class.js +0 -9
  124. package/dist/esm/sources/cpu-class.js.map +0 -1
  125. package/dist/esm/sources/device-memory.d.ts +0 -1
  126. package/dist/esm/sources/device-memory.js +0 -9
  127. package/dist/esm/sources/device-memory.js.map +0 -1
  128. package/dist/esm/sources/platform.d.ts +0 -1
  129. package/dist/esm/sources/platform.js +0 -9
  130. package/dist/esm/sources/platform.js.map +0 -1
  131. package/dist/esm/sources/plugins.d.ts +0 -1
  132. package/dist/esm/sources/plugins.js +0 -22
  133. package/dist/esm/sources/plugins.js.map +0 -1
  134. package/dist/esm/sources/timezone.d.ts +0 -1
  135. package/dist/esm/sources/timezone.js +0 -9
  136. package/dist/esm/sources/timezone.js.map +0 -1
  137. package/dist/esm/sources/user-agent.d.ts +0 -1
  138. package/dist/esm/sources/user-agent.js +0 -9
  139. package/dist/esm/sources/user-agent.js.map +0 -1
package/.babelrc ADDED
@@ -0,0 +1,22 @@
1
+ {
2
+ "presets": [
3
+ [
4
+ "@babel/preset-env"
5
+ ],
6
+ [
7
+ "@babel/preset-typescript"
8
+ ],
9
+ ],
10
+ "plugins": [
11
+ "@babel/plugin-syntax-dynamic-import",
12
+ "@babel/plugin-proposal-optional-chaining",
13
+ [
14
+ "@babel/plugin-transform-runtime",
15
+ {
16
+ "helpers": true,
17
+ "regenerator": true,
18
+ "useESModules": false
19
+ }
20
+ ]
21
+ ]
22
+ }
package/.editorconfig ADDED
@@ -0,0 +1,12 @@
1
+ root = true
2
+
3
+ [*]
4
+ end_of_line = lf
5
+ charset = utf-8
6
+ trim_trailing_whitespace = true
7
+ insert_final_newline = false
8
+ indent_style = space
9
+ indent_size = 2
10
+
11
+ [*.{diff,md}]
12
+ trim_trailing_whitespace = false
package/.eslintrc.json ADDED
@@ -0,0 +1,33 @@
1
+ {
2
+ "env": {
3
+ "browser": true,
4
+ "jest": true,
5
+ "es2021": true
6
+ },
7
+ "extends": [
8
+ "eslint:recommended"
9
+ ],
10
+ "parser": "@typescript-eslint/parser",
11
+ "parserOptions": {
12
+ "ecmaVersion": 12,
13
+ "sourceType": "module"
14
+ },
15
+ "plugins": [
16
+ "@typescript-eslint",
17
+ "babel"
18
+ ],
19
+ "globals": {
20
+ "process": false,
21
+ "exports": false
22
+ },
23
+ "rules": {
24
+ "@typescript-eslint/no-unused-vars": [
25
+ "error"
26
+ ],
27
+ "no-unused-vars": "off",
28
+ "quotes": [
29
+ "error",
30
+ "single"
31
+ ]
32
+ }
33
+ }
@@ -0,0 +1,4 @@
1
+ #!/bin/sh
2
+ . "$(dirname "$0")/_/husky.sh"
3
+
4
+ npm run build:dev
@@ -0,0 +1,15 @@
1
+ import AWS from 'aws-sdk';
2
+ import { BatchGetItemInput, DeleteItemInput, GetItemInput, PutItemInput, QueryInput, ScanInput, UpdateItemInput } from 'aws-sdk/clients/dynamodb';
3
+ export default class DynamoDbClient {
4
+ static safeGet: (tableName: string, keyName: string, keyValue: any) => Promise<AWS.DynamoDB.DocumentClient.AttributeMap | null>;
5
+ static safePut: (tableName: string, data: any) => Promise<import("aws-sdk/lib/request").PromiseResult<AWS.DynamoDB.DocumentClient.PutItemOutput, AWS.AWSError> | null>;
6
+ static safeBatchGet: (tableName: string, keys: AWS.DynamoDB.KeyList) => Promise<AWS.DynamoDB.DocumentClient.ItemList>;
7
+ static queryAll: (params: QueryInput) => Promise<any[] | null>;
8
+ static batchGet: (params: BatchGetItemInput) => Promise<import("aws-sdk/lib/request").PromiseResult<AWS.DynamoDB.DocumentClient.BatchGetItemOutput, AWS.AWSError>>;
9
+ static get: (params: GetItemInput) => Promise<import("aws-sdk/lib/request").PromiseResult<AWS.DynamoDB.DocumentClient.GetItemOutput, AWS.AWSError>>;
10
+ static put: (params: PutItemInput) => Promise<import("aws-sdk/lib/request").PromiseResult<AWS.DynamoDB.DocumentClient.PutItemOutput, AWS.AWSError>>;
11
+ static query: (params: QueryInput) => Promise<import("aws-sdk/lib/request").PromiseResult<AWS.DynamoDB.DocumentClient.QueryOutput, AWS.AWSError>>;
12
+ static scan: (params: ScanInput) => Promise<import("aws-sdk/lib/request").PromiseResult<AWS.DynamoDB.DocumentClient.ScanOutput, AWS.AWSError>>;
13
+ static update: (params: UpdateItemInput) => Promise<import("aws-sdk/lib/request").PromiseResult<AWS.DynamoDB.DocumentClient.UpdateItemOutput, AWS.AWSError>>;
14
+ static delete: (params: DeleteItemInput) => Promise<import("aws-sdk/lib/request").PromiseResult<AWS.DynamoDB.DocumentClient.DeleteItemOutput, AWS.AWSError>>;
15
+ }
@@ -0,0 +1,126 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
+ return new (P || (P = Promise))(function (resolve, reject) {
28
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
32
+ });
33
+ };
34
+ var __importDefault = (this && this.__importDefault) || function (mod) {
35
+ return (mod && mod.__esModule) ? mod : { "default": mod };
36
+ };
37
+ var _a;
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ const aws_sdk_1 = __importDefault(require("aws-sdk"));
40
+ const log = __importStar(require("lambda-log"));
41
+ const client = new aws_sdk_1.default.DynamoDB.DocumentClient();
42
+ class DynamoDbClient {
43
+ }
44
+ exports.default = DynamoDbClient;
45
+ _a = DynamoDbClient;
46
+ DynamoDbClient.safeGet = (tableName, keyName, keyValue) => __awaiter(void 0, void 0, void 0, function* () {
47
+ var _b;
48
+ try {
49
+ const params = {
50
+ TableName: tableName,
51
+ Key: {
52
+ [keyName]: keyValue
53
+ }
54
+ };
55
+ const res = yield client.get(params).promise();
56
+ return (_b = res === null || res === void 0 ? void 0 : res.Item) !== null && _b !== void 0 ? _b : null;
57
+ }
58
+ catch (e) {
59
+ log.error(e, { message: 'Dynamo Client Get Failed' });
60
+ return null;
61
+ }
62
+ });
63
+ DynamoDbClient.safePut = (tableName, data) => __awaiter(void 0, void 0, void 0, function* () {
64
+ try {
65
+ const params = {
66
+ TableName: tableName,
67
+ Item: data
68
+ };
69
+ const res = yield client.put(params).promise();
70
+ return res;
71
+ }
72
+ catch (e) {
73
+ log.error(e, { message: 'Dynamo failed simplePut' });
74
+ return null;
75
+ }
76
+ });
77
+ DynamoDbClient.safeBatchGet = (tableName, keys) => __awaiter(void 0, void 0, void 0, function* () {
78
+ var _c, _d;
79
+ try {
80
+ const params = {
81
+ RequestItems: {}
82
+ };
83
+ params.RequestItems[tableName] = {
84
+ Keys: keys
85
+ };
86
+ const res = yield client.batchGet(params).promise();
87
+ log.info('batchget res', { batchGetRes: res });
88
+ if ((_c = res === null || res === void 0 ? void 0 : res.Responses) === null || _c === void 0 ? void 0 : _c[tableName]) {
89
+ return (_d = res === null || res === void 0 ? void 0 : res.Responses) === null || _d === void 0 ? void 0 : _d[tableName];
90
+ }
91
+ return [];
92
+ }
93
+ catch (e) {
94
+ log.error(e, { message: 'Dynamo failed safeBatchGet' });
95
+ return [];
96
+ }
97
+ });
98
+ DynamoDbClient.queryAll = (params) => __awaiter(void 0, void 0, void 0, function* () {
99
+ try {
100
+ log.info('Invoke Query All', { params });
101
+ let currentResult, exclusiveStartKey;
102
+ let accumulatedResults = [];
103
+ do {
104
+ params.ExclusiveStartKey = exclusiveStartKey;
105
+ params.Limit = 200;
106
+ currentResult = yield client.query(params).promise();
107
+ if (currentResult.Items) {
108
+ exclusiveStartKey = currentResult.LastEvaluatedKey;
109
+ accumulatedResults = [...accumulatedResults, ...currentResult.Items];
110
+ }
111
+ } while (currentResult.Items && currentResult.Items.length > 0 && currentResult.LastEvaluatedKey);
112
+ return accumulatedResults;
113
+ }
114
+ catch (e) {
115
+ log.error(e, { message: 'Dynamo failed queryAll' });
116
+ return null;
117
+ }
118
+ });
119
+ DynamoDbClient.batchGet = (params) => client.batchGet(params).promise();
120
+ DynamoDbClient.get = (params) => client.get(params).promise();
121
+ DynamoDbClient.put = (params) => client.put(params).promise();
122
+ DynamoDbClient.query = (params) => client.query(params).promise();
123
+ DynamoDbClient.scan = (params) => client.scan(params).promise();
124
+ DynamoDbClient.update = (params) => client.update(params).promise();
125
+ DynamoDbClient.delete = (params) => client.delete(params).promise();
126
+ //# sourceMappingURL=dynamodb-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dynamodb-client.js","sourceRoot":"","sources":["../../src/clients/dynamodb-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { EventBridge } from 'aws-sdk';
2
+ export declare class EventBridgeClient {
3
+ eventBridge: EventBridge;
4
+ EVENT_BUS_NAME: string;
5
+ constructor(eventBusName: string);
6
+ buildEvent: (eventType: string, eventData: any, eventId?: string, eventTime?: string) => {
7
+ eventId: string;
8
+ eventType: string;
9
+ eventTime: string;
10
+ eventData: any;
11
+ };
12
+ putEvent: (source: string, detailType: string, data: any, headers?: any) => Promise<import("aws-sdk/lib/request").PromiseResult<EventBridge.PutEventsResponse, import("aws-sdk").AWSError>>;
13
+ }
@@ -0,0 +1,43 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.EventBridgeClient = void 0;
13
+ const aws_sdk_1 = require("aws-sdk");
14
+ const uuid_1 = require("uuid");
15
+ const dates_1 = require("../libs/dates");
16
+ class EventBridgeClient {
17
+ constructor(eventBusName) {
18
+ this.buildEvent = (eventType, eventData, eventId = (0, uuid_1.v4)(), eventTime = (0, dates_1.getCurrentTimestamp)()) => {
19
+ return {
20
+ eventId,
21
+ eventType,
22
+ eventTime,
23
+ eventData
24
+ };
25
+ };
26
+ this.putEvent = (source, detailType, data, headers = null) => __awaiter(this, void 0, void 0, function* () {
27
+ const params = {
28
+ Entries: [{
29
+ Detail: JSON.stringify({ headers, data }),
30
+ DetailType: detailType,
31
+ EventBusName: this.EVENT_BUS_NAME,
32
+ Source: source,
33
+ Time: new Date(),
34
+ }],
35
+ };
36
+ return yield this.eventBridge.putEvents(params).promise();
37
+ });
38
+ this.eventBridge = new aws_sdk_1.EventBridge();
39
+ this.EVENT_BUS_NAME = eventBusName;
40
+ }
41
+ }
42
+ exports.EventBridgeClient = EventBridgeClient;
43
+ //# sourceMappingURL=eventbridge-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eventbridge-client.js","sourceRoot":"","sources":["../../src/clients/eventbridge-client.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAAsC;AACtC,+BAAoC;AACpC,yCAAoD;AAEpD,MAAa,iBAAiB;IAI5B,YAAa,YAAoB;QAK1B,eAAU,GAAG,CAAC,SAAiB,EAAE,SAAc,EAAE,UAAkB,IAAA,SAAM,GAAE,EAAE,YAAoB,IAAA,2BAAmB,GAAE,EAAE,EAAE;YAC/H,OAAO;gBACL,OAAO;gBACP,SAAS;gBACT,SAAS;gBACT,SAAS;aACV,CAAC;QACJ,CAAC,CAAC;QAGK,aAAQ,GAAG,CAAO,MAAc,EAAE,UAAkB,EAAE,IAAS,EAAE,UAAe,IAAI,EAAE,EAAE;YAC7F,MAAM,MAAM,GAAG;gBACb,OAAO,EAAE,CAAE;wBACT,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;wBACzC,UAAU,EAAE,UAAU;wBACtB,YAAY,EAAE,IAAI,CAAC,cAAc;wBACjC,MAAM,EAAE,MAAM;wBACd,IAAI,EAAE,IAAI,IAAI,EAAE;qBACjB,CAAE;aACJ,CAAC;YACF,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC;QAC5D,CAAC,CAAA,CAAC;QAzBA,IAAI,CAAC,WAAW,GAAG,IAAI,qBAAW,EAAE,CAAC;QACrC,IAAI,CAAC,cAAc,GAAG,YAAY,CAAC;IACrC,CAAC;CAyBF;AAhCD,8CAgCC"}
@@ -0,0 +1,30 @@
1
+ import { AxiosRequestConfig } from 'axios';
2
+ export declare const axiosHttpService: (config?: AxiosRequestConfig) => {
3
+ instance: () => import("axios").AxiosInstance;
4
+ get: (url: string, config?: AxiosRequestConfig) => Promise<{
5
+ headers: any;
6
+ data: any;
7
+ status: any;
8
+ }>;
9
+ post: (url: string, data?: any, config?: AxiosRequestConfig) => Promise<{
10
+ headers: any;
11
+ data: any;
12
+ status: any;
13
+ }>;
14
+ delete: (url: string, config?: AxiosRequestConfig) => Promise<{
15
+ headers: any;
16
+ data: any;
17
+ status: any;
18
+ }>;
19
+ put: (url: string, data?: any, config?: AxiosRequestConfig) => Promise<{
20
+ headers: any;
21
+ data: any;
22
+ status: any;
23
+ }>;
24
+ patch: (url: string, data?: any, config?: AxiosRequestConfig) => Promise<{
25
+ headers: any;
26
+ data: any;
27
+ status: any;
28
+ }>;
29
+ setBaseUrl: (url: string) => boolean;
30
+ };
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.axiosHttpService = void 0;
7
+ const axios_1 = __importDefault(require("axios"));
8
+ const axios_retry_1 = __importDefault(require("axios-retry"));
9
+ const https_1 = __importDefault(require("https"));
10
+ const http_1 = __importDefault(require("axios/lib/adapters/http"));
11
+ const httpResponse = (res = {}) => {
12
+ return {
13
+ headers: (res === null || res === void 0 ? void 0 : res.header) || {},
14
+ data: (res === null || res === void 0 ? void 0 : res.data) || {},
15
+ status: (res === null || res === void 0 ? void 0 : res.status) || 0,
16
+ };
17
+ };
18
+ const axiosHttpService = (config = {}) => {
19
+ config.adapter = http_1.default;
20
+ config.httpsAgent = new https_1.default.Agent({ keepAlive: true });
21
+ const axiosService = axios_1.default.create(config);
22
+ (0, axios_retry_1.default)(axiosService, { retryDelay: axios_retry_1.default.exponentialDelay, retries: 3 });
23
+ const handleAxiosError = (error) => {
24
+ if (!(error === null || error === void 0 ? void 0 : error.response) && !(error === null || error === void 0 ? void 0 : error.request))
25
+ throw error;
26
+ return error.response ? httpResponse(error.response) : httpResponse({ status: 500, data: { error: error.request } });
27
+ };
28
+ return {
29
+ instance: () => axiosService,
30
+ get: (url, config) => axiosService.get(url, config).then(httpResponse, handleAxiosError),
31
+ post: (url, data, config) => axiosService.post(url, data, config).then(httpResponse, handleAxiosError),
32
+ delete: (url, config) => axiosService.delete(url, config).then(httpResponse, handleAxiosError),
33
+ put: (url, data, config) => axiosService.put(url, data, config).then(httpResponse, handleAxiosError),
34
+ patch: (url, data, config) => axiosService.patch(url, data, config).then(httpResponse, handleAxiosError),
35
+ setBaseUrl: (url) => !!(axiosService.defaults.baseURL = url)
36
+ };
37
+ };
38
+ exports.axiosHttpService = axiosHttpService;
39
+ //# sourceMappingURL=http-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../src/clients/http-client.ts"],"names":[],"mappings":";;;;;;AAAA,kDAAkD;AAClD,8DAAqC;AACrC,kDAAyB;AACzB,mEAAkD;AAElD,MAAM,YAAY,GAAG,CAAC,MAAW,EAAE,EAAE,EAAE;IACrC,OAAO;QACL,OAAO,EAAE,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,MAAM,KAAI,EAAE;QAC1B,IAAI,EAAE,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,KAAI,EAAE;QACrB,MAAM,EAAE,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,MAAM,KAAI,CAAC;KACzB,CAAC;AACJ,CAAC,CAAC;AAEK,MAAM,gBAAgB,GAAG,CAAC,SAA6B,EAAE,EAAE,EAAE;IAClE,MAAM,CAAC,OAAO,GAAG,cAAW,CAAC;IAC7B,MAAM,CAAC,UAAU,GAAG,IAAI,eAAK,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACzD,MAAM,YAAY,GAAG,eAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAE1C,IAAA,qBAAU,EAAC,YAAY,EAAE,EAAE,UAAU,EAAE,qBAAU,CAAC,gBAAgB,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IAElF,MAAM,gBAAgB,GAAG,CAAC,KAAU,EAAE,EAAE;QACtC,IAAI,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,QAAQ,CAAA,IAAI,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,CAAA;YAAE,MAAM,KAAK,CAAC;QACrD,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACvH,CAAC,CAAC;IAEF,OAAO;QACL,QAAQ,EAAE,GAAG,EAAE,CAAC,YAAY;QAC5B,GAAG,EAAE,CAAC,GAAW,EAAE,MAA2B,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAAC;QACrH,IAAI,EAAE,CAAC,GAAW,EAAE,IAAU,EAAE,MAA2B,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAAC;QACzI,MAAM,EAAE,CAAC,GAAW,EAAE,MAA2B,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAAC;QAC3H,GAAG,EAAE,CAAC,GAAW,EAAE,IAAU,EAAE,MAA2B,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAAC;QACvI,KAAK,EAAE,CAAC,GAAW,EAAE,IAAU,EAAE,MAA2B,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAAC;QAC3I,UAAU,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,GAAG,GAAG,CAAC;KACrE,CAAA;AACH,CAAC,CAAA;AArBY,QAAA,gBAAgB,oBAqB5B"}
@@ -0,0 +1,3 @@
1
+ export * from './dynamodb-client';
2
+ export * from './eventbridge-client';
3
+ export * from './http-client';
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./dynamodb-client"), exports);
18
+ __exportStar(require("./eventbridge-client"), exports);
19
+ __exportStar(require("./http-client"), exports);
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/clients/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,uDAAqC;AACrC,gDAA8B"}
@@ -0,0 +1,3 @@
1
+ export * from './input-validation-helper';
2
+ export * from './logging-helper';
3
+ export * from './response-helper';
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./input-validation-helper"), exports);
18
+ __exportStar(require("./logging-helper"), exports);
19
+ __exportStar(require("./response-helper"), exports);
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4DAA0C;AAC1C,mDAAiC;AACjC,oDAAiC"}
@@ -0,0 +1,2 @@
1
+ import Joi from 'joi';
2
+ export declare const validateInput: (schema: Joi.ObjectSchema<any>, input: any) => any;
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.validateInput = void 0;
30
+ const http_error_1 = __importDefault(require("../libs/http-error"));
31
+ const log = __importStar(require("lambda-log"));
32
+ const validateInput = (schema, input) => {
33
+ const { error, value } = schema.validate(input);
34
+ if (error) {
35
+ log.info('', { error });
36
+ const httperr = http_error_1.default.badRequest('Input Validation Failure', {
37
+ errors: error.details.map(detail => {
38
+ var _a;
39
+ return ({
40
+ message: detail === null || detail === void 0 ? void 0 : detail.message,
41
+ key: (_a = detail === null || detail === void 0 ? void 0 : detail.context) === null || _a === void 0 ? void 0 : _a.key,
42
+ path: detail === null || detail === void 0 ? void 0 : detail.path,
43
+ });
44
+ })
45
+ });
46
+ log.info('', { httperr });
47
+ throw httperr;
48
+ }
49
+ return value;
50
+ };
51
+ exports.validateInput = validateInput;
52
+ //# sourceMappingURL=input-validation-helper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-validation-helper.js","sourceRoot":"","sources":["../../src/helpers/input-validation-helper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oEAA2C;AAC3C,gDAAkC;AAG3B,MAAM,aAAa,GAAG,CAAC,MAA6B,EAAE,KAAU,EAAE,EAAE;IACzE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,IAAI,KAAK,EAAE;QACT,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAExB,MAAM,OAAO,GAAG,oBAAS,CAAC,UAAU,CAAC,0BAA0B,EAAE;YAC/D,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;;gBAAC,OAAA,CAAC;oBACnC,OAAO,EAAE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO;oBACxB,GAAG,EAAE,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,0CAAE,GAAG;oBACzB,IAAI,EAAE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI;iBACnB,CAAC,CAAA;aAAA,CAAC;SACJ,CAAC,CAAC;QAEH,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QAC1B,MAAM,OAAO,CAAC;KACf;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAA;AAjBY,QAAA,aAAa,iBAiBzB"}
@@ -0,0 +1 @@
1
+ export declare const configureLogger: (event: any, context: any, debug?: boolean) => void;
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var _a;
26
+ Object.defineProperty(exports, "__esModule", { value: true });
27
+ exports.configureLogger = void 0;
28
+ const log = __importStar(require("lambda-log"));
29
+ const stage = (_a = process === null || process === void 0 ? void 0 : process.env) === null || _a === void 0 ? void 0 : _a.STAGE;
30
+ const configureLogger = (event, context, debug = true) => {
31
+ log.options.meta.stage = stage;
32
+ log.options.meta.source_name = (context === null || context === void 0 ? void 0 : context.functionName) || 'unknown';
33
+ log.options.meta.awsRequestId = (context === null || context === void 0 ? void 0 : context.awsRequestId) || 'unknown';
34
+ log.options.meta.lambdaEvent = event;
35
+ log.options.debug = debug;
36
+ };
37
+ exports.configureLogger = configureLogger;
38
+ //# sourceMappingURL=logging-helper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logging-helper.js","sourceRoot":"","sources":["../../src/helpers/logging-helper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAkC;AAClC,MAAM,KAAK,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,GAAG,0CAAE,KAAK,CAAC;AAE3B,MAAM,eAAe,GAAG,CAAC,KAAU,EAAE,OAAY,EAAE,QAAiB,IAAI,EAAE,EAAE;IACjF,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IAC/B,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,GAAG,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,KAAI,SAAS,CAAC;IAClE,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,GAAG,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,KAAI,SAAS,CAAC;IACnE,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;IACrC,GAAG,CAAC,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;AAC5B,CAAC,CAAA;AANY,QAAA,eAAe,mBAM3B"}
@@ -0,0 +1,36 @@
1
+ export declare const success: (body: any) => {
2
+ statusCode: number;
3
+ headers: {
4
+ 'Access-Control-Allow-Origin': string;
5
+ 'Access-Control-Allow-Credentials': boolean;
6
+ 'cache-control': string;
7
+ Date: Date;
8
+ 'Last-Modified': Date;
9
+ 'Access-Control-Allow-Headers': string;
10
+ };
11
+ body: string;
12
+ };
13
+ export declare const failure: (error: any, statusCode?: number) => {
14
+ statusCode: number;
15
+ headers: {
16
+ 'Access-Control-Allow-Origin': string;
17
+ 'Access-Control-Allow-Credentials': boolean;
18
+ 'cache-control': string;
19
+ Date: Date;
20
+ 'Last-Modified': Date;
21
+ 'Access-Control-Allow-Headers': string;
22
+ };
23
+ body: string;
24
+ };
25
+ export declare const buildResponse: (statusCode: number, body?: any) => {
26
+ statusCode: number;
27
+ headers: {
28
+ 'Access-Control-Allow-Origin': string;
29
+ 'Access-Control-Allow-Credentials': boolean;
30
+ 'cache-control': string;
31
+ Date: Date;
32
+ 'Last-Modified': Date;
33
+ 'Access-Control-Allow-Headers': string;
34
+ };
35
+ body: string;
36
+ };
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildResponse = exports.failure = exports.success = void 0;
4
+ const success = (body) => {
5
+ return (0, exports.buildResponse)(200, body);
6
+ };
7
+ exports.success = success;
8
+ const defaultError = {
9
+ message: 'internalServerError'
10
+ };
11
+ const failure = (error, statusCode = 500) => {
12
+ var _a;
13
+ statusCode = (_a = error === null || error === void 0 ? void 0 : error.statusCode) !== null && _a !== void 0 ? _a : statusCode;
14
+ let body = defaultError;
15
+ if (error === null || error === void 0 ? void 0 : error.body) {
16
+ body = error.body;
17
+ }
18
+ else if (error === null || error === void 0 ? void 0 : error.message) {
19
+ body = { message: error.message };
20
+ }
21
+ else if (statusCode === 500) {
22
+ body = defaultError;
23
+ }
24
+ return (0, exports.buildResponse)(statusCode, body);
25
+ };
26
+ exports.failure = failure;
27
+ const buildResponse = (statusCode, body = {}) => {
28
+ delete body.stack;
29
+ return {
30
+ statusCode: statusCode,
31
+ headers: {
32
+ 'Access-Control-Allow-Origin': '*',
33
+ 'Access-Control-Allow-Credentials': true,
34
+ 'cache-control': 'max-age=86400',
35
+ Date: new Date(),
36
+ 'Last-Modified': new Date(),
37
+ 'Access-Control-Allow-Headers': 'Content-Type, Content-Encoding'
38
+ },
39
+ body: JSON.stringify(body),
40
+ };
41
+ };
42
+ exports.buildResponse = buildResponse;
43
+ //# sourceMappingURL=response-helper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response-helper.js","sourceRoot":"","sources":["../../src/helpers/response-helper.ts"],"names":[],"mappings":";;;AACO,MAAM,OAAO,GAAG,CAAC,IAAS,EAAE,EAAE;IACnC,OAAO,IAAA,qBAAa,EAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AAClC,CAAC,CAAA;AAFY,QAAA,OAAO,WAEnB;AAED,MAAM,YAAY,GAAG;IACnB,OAAO,EAAE,qBAAqB;CAC/B,CAAA;AAEM,MAAM,OAAO,GAAG,CAAC,KAAU,EAAE,aAAqB,GAAG,EAAE,EAAE;;IAC9D,UAAU,GAAG,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,UAAU,mCAAI,UAAU,CAAC;IAE7C,IAAI,IAAI,GAAG,YAAY,CAAC;IACxB,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,EAAE;QACf,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;KACnB;SACI,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,EAAE;QACvB,IAAI,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;KACnC;SAAM,IAAI,UAAU,KAAK,GAAG,EAAE;QAC7B,IAAI,GAAG,YAAY,CAAC;KACrB;IACD,OAAO,IAAA,qBAAa,EAAC,UAAU,EAAE,IAAI,CAAC,CAAC;AACzC,CAAC,CAAA;AAbY,QAAA,OAAO,WAanB;AAEM,MAAM,aAAa,GAAG,CAAC,UAAkB,EAAE,OAAY,EAAE,EAAE,EAAE;IAClE,OAAO,IAAI,CAAC,KAAK,CAAC;IAClB,OAAO;QACL,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE;YACP,6BAA6B,EAAE,GAAG;YAClC,kCAAkC,EAAE,IAAI;YACxC,eAAe,EAAE,eAAe;YAChC,IAAI,EAAE,IAAI,IAAI,EAAE;YAChB,eAAe,EAAE,IAAI,IAAI,EAAE;YAC3B,8BAA8B,EAC5B,gCAAgC;SACnC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;KAC3B,CAAC;AACJ,CAAC,CAAA;AAfY,QAAA,aAAa,iBAezB"}
@@ -0,0 +1,4 @@
1
+ export * from './clients';
2
+ export * from './helpers';
3
+ export * from './libs';
4
+ export * from './types';