@adtrackify/at-service-common 3.0.88 → 3.0.90

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 (253) hide show
  1. package/dist/cjs/__tests__/identity-cache/identity-cache-db-service.spec.d.ts +1 -1
  2. package/dist/cjs/__tests__/identity-cache/identity-cache-db-service.spec.js +527 -527
  3. package/dist/cjs/__tests__/libs/compress-decompress.spec.d.ts +1 -1
  4. package/dist/cjs/__tests__/libs/compress-decompress.spec.js +16 -16
  5. package/dist/cjs/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  6. package/dist/cjs/__tests__/s3-client/s3-client.spec.js +26 -26
  7. package/dist/cjs/clients/generic/cognito-client.d.ts +20 -20
  8. package/dist/cjs/clients/generic/cognito-client.js +164 -164
  9. package/dist/cjs/clients/generic/dynamodb-client.d.ts +17 -17
  10. package/dist/cjs/clients/generic/dynamodb-client.js +167 -167
  11. package/dist/cjs/clients/generic/eventbridge-client.d.ts +14 -14
  12. package/dist/cjs/clients/generic/eventbridge-client.js +49 -49
  13. package/dist/cjs/clients/generic/http-client.d.ts +88 -88
  14. package/dist/cjs/clients/generic/http-client.js +56 -56
  15. package/dist/cjs/clients/generic/index.d.ts +10 -10
  16. package/dist/cjs/clients/generic/index.js +26 -26
  17. package/dist/cjs/clients/generic/lambda-invoke-client.d.ts +10 -10
  18. package/dist/cjs/clients/generic/lambda-invoke-client.js +35 -35
  19. package/dist/cjs/clients/generic/location-client.d.ts +8 -8
  20. package/dist/cjs/clients/generic/location-client.js +31 -31
  21. package/dist/cjs/clients/generic/redis-client.d.ts +17 -17
  22. package/dist/cjs/clients/generic/redis-client.js +117 -117
  23. package/dist/cjs/clients/generic/s3-client.d.ts +16 -16
  24. package/dist/cjs/clients/generic/s3-client.js +110 -110
  25. package/dist/cjs/clients/generic/singlestore-db-client.d.ts +14 -14
  26. package/dist/cjs/clients/generic/singlestore-db-client.js +67 -67
  27. package/dist/cjs/clients/generic/sqs-client.d.ts +14 -14
  28. package/dist/cjs/clients/generic/sqs-client.js +36 -36
  29. package/dist/cjs/clients/index.d.ts +3 -3
  30. package/dist/cjs/clients/index.js +19 -19
  31. package/dist/cjs/clients/internal-api/accounts-client.d.ts +112 -112
  32. package/dist/cjs/clients/internal-api/accounts-client.js +117 -117
  33. package/dist/cjs/clients/internal-api/cache-lambda-client.d.ts +23 -23
  34. package/dist/cjs/clients/internal-api/cache-lambda-client.js +59 -59
  35. package/dist/cjs/clients/internal-api/db-management-client.d.ts +18 -18
  36. package/dist/cjs/clients/internal-api/db-management-client.js +39 -39
  37. package/dist/cjs/clients/internal-api/destinations-client.d.ts +29 -29
  38. package/dist/cjs/clients/internal-api/destinations-client.js +54 -54
  39. package/dist/cjs/clients/internal-api/event-collector-client.d.ts +20 -20
  40. package/dist/cjs/clients/internal-api/event-collector-client.js +39 -39
  41. package/dist/cjs/clients/internal-api/identity-client.d.ts +17 -17
  42. package/dist/cjs/clients/internal-api/identity-client.js +75 -75
  43. package/dist/cjs/clients/internal-api/index.d.ts +8 -8
  44. package/dist/cjs/clients/internal-api/index.js +24 -24
  45. package/dist/cjs/clients/internal-api/shopify-app-install-client.d.ts +34 -34
  46. package/dist/cjs/clients/internal-api/shopify-app-install-client.js +63 -63
  47. package/dist/cjs/clients/internal-api/users-auth-client.d.ts +31 -31
  48. package/dist/cjs/clients/internal-api/users-auth-client.js +92 -92
  49. package/dist/cjs/clients/third-party/index.d.ts +1 -1
  50. package/dist/cjs/clients/third-party/index.js +17 -17
  51. package/dist/cjs/clients/third-party/shopify-client.d.ts +198 -198
  52. package/dist/cjs/clients/third-party/shopify-client.js +150 -150
  53. package/dist/cjs/helpers/identity-cache-helper.d.ts +3 -4
  54. package/dist/cjs/helpers/identity-cache-helper.js +66 -150
  55. package/dist/cjs/helpers/identity-cache-helper.js.map +1 -1
  56. package/dist/cjs/helpers/index.d.ts +5 -5
  57. package/dist/cjs/helpers/index.js +21 -21
  58. package/dist/cjs/helpers/input-validation-helper.d.ts +3 -3
  59. package/dist/cjs/helpers/input-validation-helper.js +23 -23
  60. package/dist/cjs/helpers/logging-helper.d.ts +16 -16
  61. package/dist/cjs/helpers/logging-helper.js +84 -84
  62. package/dist/cjs/helpers/response-helper.d.ts +15 -15
  63. package/dist/cjs/helpers/response-helper.js +42 -42
  64. package/dist/cjs/helpers/shopify-helper.d.ts +9 -9
  65. package/dist/cjs/helpers/shopify-helper.js +28 -28
  66. package/dist/cjs/index.d.ts +5 -5
  67. package/dist/cjs/index.js +21 -21
  68. package/dist/cjs/libs/clickId-parser.d.ts +23 -23
  69. package/dist/cjs/libs/clickId-parser.js +49 -49
  70. package/dist/cjs/libs/compression.d.ts +2 -2
  71. package/dist/cjs/libs/compression.js +33 -33
  72. package/dist/cjs/libs/crypto.d.ts +1 -1
  73. package/dist/cjs/libs/crypto.js +12 -12
  74. package/dist/cjs/libs/dates.d.ts +6 -6
  75. package/dist/cjs/libs/dates.js +31 -31
  76. package/dist/cjs/libs/http-error.d.ts +21 -21
  77. package/dist/cjs/libs/http-error.js +59 -59
  78. package/dist/cjs/libs/http-status-codes.d.ts +58 -58
  79. package/dist/cjs/libs/http-status-codes.js +62 -62
  80. package/dist/cjs/libs/index.d.ts +9 -9
  81. package/dist/cjs/libs/index.js +25 -25
  82. package/dist/cjs/libs/referrer-parser/index.d.ts +2 -2
  83. package/dist/cjs/libs/referrer-parser/index.js +18 -18
  84. package/dist/cjs/libs/referrer-parser/referrer-data.d.ts +9 -9
  85. package/dist/cjs/libs/referrer-parser/referrer-data.js +4712 -4712
  86. package/dist/cjs/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  87. package/dist/cjs/libs/referrer-parser/referrer-parser-util.js +128 -128
  88. package/dist/cjs/libs/url.d.ts +1 -1
  89. package/dist/cjs/libs/url.js +13 -13
  90. package/dist/cjs/services/db/{destinations-service.d.ts → destinations-db-service.d.ts} +8 -7
  91. package/dist/cjs/services/db/{destinations-service.js → destinations-db-service.js} +48 -36
  92. package/dist/cjs/services/db/destinations-db-service.js.map +1 -0
  93. package/dist/cjs/services/db/identity-cache-db-service.d.ts +24 -24
  94. package/dist/cjs/services/db/identity-cache-db-service.js +233 -233
  95. package/dist/cjs/services/db/index.d.ts +7 -7
  96. package/dist/cjs/services/db/index.js +23 -23
  97. package/dist/cjs/services/db/index.js.map +1 -1
  98. package/dist/cjs/services/db/log-events-db-service.d.ts +11 -11
  99. package/dist/cjs/services/db/log-events-db-service.js +172 -172
  100. package/dist/cjs/services/db/purchased-contacts-db-service.d.ts +9 -9
  101. package/dist/cjs/services/db/purchased-contacts-db-service.js +38 -38
  102. package/dist/cjs/services/db/shopify-app-installs-db-service.d.ts +7 -7
  103. package/dist/cjs/services/db/shopify-app-installs-db-service.js +47 -47
  104. package/dist/cjs/services/db/shopify-products-cache-db-service.d.ts +9 -9
  105. package/dist/cjs/services/db/shopify-products-cache-db-service.js +64 -64
  106. package/dist/cjs/services/db/tracking-events-db-service.d.ts +20 -20
  107. package/dist/cjs/services/db/tracking-events-db-service.js +162 -162
  108. package/dist/cjs/services/eventbridge-integration-service.d.ts +9 -9
  109. package/dist/cjs/services/eventbridge-integration-service.js +28 -28
  110. package/dist/cjs/services/index.d.ts +5 -5
  111. package/dist/cjs/services/index.js +21 -21
  112. package/dist/cjs/services/ipdata-lookup-service.d.ts +17 -17
  113. package/dist/cjs/services/ipdata-lookup-service.js +71 -71
  114. package/dist/cjs/services/log-event-service.d.ts +9 -9
  115. package/dist/cjs/services/log-event-service.js +56 -56
  116. package/dist/cjs/services/metric-event-service.d.ts +9 -9
  117. package/dist/cjs/services/metric-event-service.js +49 -49
  118. package/dist/cjs/types/api-response.d.ts +6 -6
  119. package/dist/cjs/types/api-response.js +2 -2
  120. package/dist/cjs/types/index.d.ts +1 -1
  121. package/dist/cjs/types/index.js +17 -17
  122. package/dist/cjs/types/internal-events/event-detail-types.d.ts +20 -20
  123. package/dist/cjs/types/internal-events/event-detail-types.js +27 -27
  124. package/dist/cjs/types/internal-events/index.d.ts +1 -1
  125. package/dist/cjs/types/internal-events/index.js +17 -17
  126. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.d.ts +1 -1
  127. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.js +525 -525
  128. package/dist/esm/__tests__/libs/compress-decompress.spec.d.ts +1 -1
  129. package/dist/esm/__tests__/libs/compress-decompress.spec.js +14 -14
  130. package/dist/esm/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  131. package/dist/esm/__tests__/s3-client/s3-client.spec.js +24 -24
  132. package/dist/esm/clients/generic/cognito-client.d.ts +20 -20
  133. package/dist/esm/clients/generic/cognito-client.js +159 -159
  134. package/dist/esm/clients/generic/dynamodb-client.d.ts +17 -17
  135. package/dist/esm/clients/generic/dynamodb-client.js +163 -163
  136. package/dist/esm/clients/generic/eventbridge-client.d.ts +14 -14
  137. package/dist/esm/clients/generic/eventbridge-client.js +45 -45
  138. package/dist/esm/clients/generic/http-client.d.ts +88 -88
  139. package/dist/esm/clients/generic/http-client.js +48 -48
  140. package/dist/esm/clients/generic/index.d.ts +10 -10
  141. package/dist/esm/clients/generic/index.js +10 -10
  142. package/dist/esm/clients/generic/lambda-invoke-client.d.ts +10 -10
  143. package/dist/esm/clients/generic/lambda-invoke-client.js +31 -31
  144. package/dist/esm/clients/generic/location-client.d.ts +8 -8
  145. package/dist/esm/clients/generic/location-client.js +27 -27
  146. package/dist/esm/clients/generic/redis-client.d.ts +17 -17
  147. package/dist/esm/clients/generic/redis-client.js +110 -110
  148. package/dist/esm/clients/generic/s3-client.d.ts +16 -16
  149. package/dist/esm/clients/generic/s3-client.js +106 -106
  150. package/dist/esm/clients/generic/singlestore-db-client.d.ts +14 -14
  151. package/dist/esm/clients/generic/singlestore-db-client.js +40 -40
  152. package/dist/esm/clients/generic/sqs-client.d.ts +14 -14
  153. package/dist/esm/clients/generic/sqs-client.js +32 -32
  154. package/dist/esm/clients/index.d.ts +3 -3
  155. package/dist/esm/clients/index.js +3 -3
  156. package/dist/esm/clients/internal-api/accounts-client.d.ts +112 -112
  157. package/dist/esm/clients/internal-api/accounts-client.js +113 -113
  158. package/dist/esm/clients/internal-api/cache-lambda-client.d.ts +23 -23
  159. package/dist/esm/clients/internal-api/cache-lambda-client.js +55 -55
  160. package/dist/esm/clients/internal-api/db-management-client.d.ts +18 -18
  161. package/dist/esm/clients/internal-api/db-management-client.js +32 -32
  162. package/dist/esm/clients/internal-api/destinations-client.d.ts +29 -29
  163. package/dist/esm/clients/internal-api/destinations-client.js +50 -50
  164. package/dist/esm/clients/internal-api/event-collector-client.d.ts +20 -20
  165. package/dist/esm/clients/internal-api/event-collector-client.js +32 -32
  166. package/dist/esm/clients/internal-api/identity-client.d.ts +17 -17
  167. package/dist/esm/clients/internal-api/identity-client.js +71 -71
  168. package/dist/esm/clients/internal-api/index.d.ts +8 -8
  169. package/dist/esm/clients/internal-api/index.js +8 -8
  170. package/dist/esm/clients/internal-api/shopify-app-install-client.d.ts +34 -34
  171. package/dist/esm/clients/internal-api/shopify-app-install-client.js +56 -56
  172. package/dist/esm/clients/internal-api/users-auth-client.d.ts +31 -31
  173. package/dist/esm/clients/internal-api/users-auth-client.js +88 -88
  174. package/dist/esm/clients/third-party/index.d.ts +1 -1
  175. package/dist/esm/clients/third-party/index.js +1 -1
  176. package/dist/esm/clients/third-party/shopify-client.d.ts +198 -198
  177. package/dist/esm/clients/third-party/shopify-client.js +146 -146
  178. package/dist/esm/helpers/identity-cache-helper.d.ts +3 -4
  179. package/dist/esm/helpers/identity-cache-helper.js +62 -145
  180. package/dist/esm/helpers/identity-cache-helper.js.map +1 -1
  181. package/dist/esm/helpers/index.d.ts +5 -5
  182. package/dist/esm/helpers/index.js +5 -5
  183. package/dist/esm/helpers/input-validation-helper.d.ts +3 -3
  184. package/dist/esm/helpers/input-validation-helper.js +19 -19
  185. package/dist/esm/helpers/logging-helper.d.ts +16 -16
  186. package/dist/esm/helpers/logging-helper.js +56 -56
  187. package/dist/esm/helpers/response-helper.d.ts +15 -15
  188. package/dist/esm/helpers/response-helper.js +36 -36
  189. package/dist/esm/helpers/shopify-helper.d.ts +9 -9
  190. package/dist/esm/helpers/shopify-helper.js +23 -23
  191. package/dist/esm/index.d.ts +5 -5
  192. package/dist/esm/index.js +5 -5
  193. package/dist/esm/libs/clickId-parser.d.ts +23 -23
  194. package/dist/esm/libs/clickId-parser.js +45 -45
  195. package/dist/esm/libs/compression.d.ts +2 -2
  196. package/dist/esm/libs/compression.js +25 -25
  197. package/dist/esm/libs/crypto.d.ts +1 -1
  198. package/dist/esm/libs/crypto.js +5 -5
  199. package/dist/esm/libs/dates.d.ts +6 -6
  200. package/dist/esm/libs/dates.js +22 -22
  201. package/dist/esm/libs/http-error.d.ts +21 -21
  202. package/dist/esm/libs/http-error.js +55 -55
  203. package/dist/esm/libs/http-status-codes.d.ts +58 -58
  204. package/dist/esm/libs/http-status-codes.js +59 -59
  205. package/dist/esm/libs/index.d.ts +9 -9
  206. package/dist/esm/libs/index.js +9 -9
  207. package/dist/esm/libs/referrer-parser/index.d.ts +2 -2
  208. package/dist/esm/libs/referrer-parser/index.js +2 -2
  209. package/dist/esm/libs/referrer-parser/referrer-data.d.ts +9 -9
  210. package/dist/esm/libs/referrer-parser/referrer-data.js +4709 -4709
  211. package/dist/esm/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  212. package/dist/esm/libs/referrer-parser/referrer-parser-util.js +121 -121
  213. package/dist/esm/libs/url.d.ts +1 -1
  214. package/dist/esm/libs/url.js +9 -9
  215. package/dist/esm/services/db/{destinations-service.d.ts → destinations-db-service.d.ts} +8 -7
  216. package/dist/esm/services/db/{destinations-service.js → destinations-db-service.js} +44 -32
  217. package/dist/esm/services/db/destinations-db-service.js.map +1 -0
  218. package/dist/esm/services/db/identity-cache-db-service.d.ts +24 -24
  219. package/dist/esm/services/db/identity-cache-db-service.js +229 -229
  220. package/dist/esm/services/db/index.d.ts +7 -7
  221. package/dist/esm/services/db/index.js +7 -7
  222. package/dist/esm/services/db/index.js.map +1 -1
  223. package/dist/esm/services/db/log-events-db-service.d.ts +11 -11
  224. package/dist/esm/services/db/log-events-db-service.js +168 -168
  225. package/dist/esm/services/db/purchased-contacts-db-service.d.ts +9 -9
  226. package/dist/esm/services/db/purchased-contacts-db-service.js +34 -34
  227. package/dist/esm/services/db/shopify-app-installs-db-service.d.ts +7 -7
  228. package/dist/esm/services/db/shopify-app-installs-db-service.js +43 -43
  229. package/dist/esm/services/db/shopify-products-cache-db-service.d.ts +9 -9
  230. package/dist/esm/services/db/shopify-products-cache-db-service.js +60 -60
  231. package/dist/esm/services/db/tracking-events-db-service.d.ts +20 -20
  232. package/dist/esm/services/db/tracking-events-db-service.js +158 -158
  233. package/dist/esm/services/eventbridge-integration-service.d.ts +9 -9
  234. package/dist/esm/services/eventbridge-integration-service.js +24 -24
  235. package/dist/esm/services/index.d.ts +5 -5
  236. package/dist/esm/services/index.js +5 -5
  237. package/dist/esm/services/ipdata-lookup-service.d.ts +17 -17
  238. package/dist/esm/services/ipdata-lookup-service.js +67 -67
  239. package/dist/esm/services/log-event-service.d.ts +9 -9
  240. package/dist/esm/services/log-event-service.js +52 -52
  241. package/dist/esm/services/metric-event-service.d.ts +9 -9
  242. package/dist/esm/services/metric-event-service.js +45 -45
  243. package/dist/esm/types/api-response.d.ts +6 -6
  244. package/dist/esm/types/api-response.js +1 -1
  245. package/dist/esm/types/index.d.ts +1 -1
  246. package/dist/esm/types/index.js +1 -1
  247. package/dist/esm/types/internal-events/event-detail-types.d.ts +20 -20
  248. package/dist/esm/types/internal-events/event-detail-types.js +24 -24
  249. package/dist/esm/types/internal-events/index.d.ts +1 -1
  250. package/dist/esm/types/internal-events/index.js +1 -1
  251. package/package.json +6 -6
  252. package/dist/cjs/services/db/destinations-service.js.map +0 -1
  253. package/dist/esm/services/db/destinations-service.js.map +0 -1
@@ -1,168 +1,168 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DynamoDbClient = void 0;
4
- const client_dynamodb_1 = require("@aws-sdk/client-dynamodb");
5
- const lib_dynamodb_1 = require("@aws-sdk/lib-dynamodb");
6
- const index_js_1 = require("../../index.js");
7
- const marshallOptions = {
8
- convertEmptyValues: false,
9
- removeUndefinedValues: true,
10
- convertClassInstanceToMap: true
11
- };
12
- const unmarshallOptions = {
13
- wrapNumbers: false,
14
- };
15
- const translateConfig = { marshallOptions, unmarshallOptions };
16
- const ddbClient = new client_dynamodb_1.DynamoDBClient({});
17
- const client = lib_dynamodb_1.DynamoDBDocument.from(ddbClient, translateConfig);
18
- class DynamoDbClient {
19
- static safeGet = async (tableName, keyName, keyValue) => {
20
- try {
21
- const params = {
22
- TableName: tableName,
23
- Key: {
24
- [keyName]: keyValue
25
- }
26
- };
27
- const res = await client.get(params);
28
- return res?.Item ?? null;
29
- }
30
- catch (e) {
31
- index_js_1.Logger.error(e, { message: 'Dynamo Client Get Failed', tableName, keyName, keyValue });
32
- return null;
33
- }
34
- };
35
- static safePut = async (tableName, data) => {
36
- try {
37
- const params = {
38
- TableName: tableName,
39
- Item: data
40
- };
41
- const res = await client.put(params);
42
- return res;
43
- }
44
- catch (e) {
45
- index_js_1.Logger.error(e, { message: 'Dynamo failed simplePut', tableName, data });
46
- return null;
47
- }
48
- };
49
- static safeDelete = async (tableName, keyName, keyValue) => {
50
- try {
51
- const params = {
52
- TableName: tableName,
53
- Key: {
54
- [keyName]: keyValue
55
- }
56
- };
57
- const res = await client.delete(params);
58
- return res;
59
- }
60
- catch (e) {
61
- index_js_1.Logger.error(e, { message: 'Dynamo failed safeDelete' });
62
- return null;
63
- }
64
- };
65
- static safeQueryByGSI = async (tableName, gsiName, keyName, keyValue) => {
66
- const query = {
67
- TableName: tableName,
68
- IndexName: gsiName,
69
- KeyConditionExpression: `${keyName} = :value`,
70
- ExpressionAttributeValues: {
71
- ':value': keyValue
72
- }
73
- };
74
- const results = await DynamoDbClient.queryAll(query);
75
- return results;
76
- };
77
- static safeBatchGet = async (tableName, keys) => {
78
- try {
79
- const params = {
80
- RequestItems: {}
81
- };
82
- params.RequestItems[tableName] = {
83
- Keys: keys
84
- };
85
- const res = await client.batchGet(params);
86
- if (res?.Responses?.[tableName]) {
87
- return res?.Responses?.[tableName];
88
- }
89
- return [];
90
- }
91
- catch (e) {
92
- index_js_1.Logger.error(e, { message: 'Dynamo failed safeBatchGet' });
93
- return [];
94
- }
95
- };
96
- static safeBatchPut = async (tableName, items) => {
97
- try {
98
- const params = {
99
- RequestItems: {}
100
- };
101
- params.RequestItems[tableName] = items.map((item) => {
102
- return {
103
- PutRequest: {
104
- Item: item
105
- }
106
- };
107
- });
108
- const res = await client.batchWrite(params);
109
- if (res?.$metadata?.httpStatusCode === index_js_1.HttpStatusCodes.OK) {
110
- return res;
111
- }
112
- return null;
113
- }
114
- catch (e) {
115
- index_js_1.Logger.error(e, { message: 'Dynamo failed safeBatchPut' });
116
- return null;
117
- }
118
- };
119
- static queryAll = async (params) => {
120
- try {
121
- let currentResult, exclusiveStartKey;
122
- let accumulatedResults = [];
123
- do {
124
- params.ExclusiveStartKey = exclusiveStartKey;
125
- params.Limit = 200;
126
- currentResult = await client.query(params);
127
- if (currentResult.Items) {
128
- exclusiveStartKey = currentResult.LastEvaluatedKey;
129
- accumulatedResults = [...accumulatedResults, ...currentResult.Items];
130
- }
131
- } while (currentResult.Items && currentResult.Items.length > 0 && currentResult.LastEvaluatedKey);
132
- return accumulatedResults;
133
- }
134
- catch (e) {
135
- index_js_1.Logger.error(e, { message: 'Dynamo failed queryAll' });
136
- return null;
137
- }
138
- };
139
- static scanAll = async (params) => {
140
- try {
141
- let currentResult, exclusiveStartKey;
142
- let accumulatedResults = [];
143
- do {
144
- params.ExclusiveStartKey = exclusiveStartKey;
145
- params.Limit = 200;
146
- currentResult = await client.scan(params);
147
- if (currentResult.Items) {
148
- exclusiveStartKey = currentResult.LastEvaluatedKey;
149
- accumulatedResults = [...accumulatedResults, ...currentResult.Items];
150
- }
151
- } while (currentResult.Items && currentResult.Items.length > 0 && currentResult.LastEvaluatedKey);
152
- return accumulatedResults;
153
- }
154
- catch (e) {
155
- index_js_1.Logger.error(e, { message: 'Dynamo failed scanAll' });
156
- return null;
157
- }
158
- };
159
- static batchGet = (params) => client.batchGet(params);
160
- static get = (params) => client.get(params);
161
- static put = (params) => client.put(params);
162
- static query = (params) => client.query(params);
163
- static scan = (params) => client.scan(params);
164
- static update = (params) => client.update(params);
165
- static delete = (params) => client.delete(params);
166
- }
167
- exports.DynamoDbClient = DynamoDbClient;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DynamoDbClient = void 0;
4
+ const client_dynamodb_1 = require("@aws-sdk/client-dynamodb");
5
+ const lib_dynamodb_1 = require("@aws-sdk/lib-dynamodb");
6
+ const index_js_1 = require("../../index.js");
7
+ const marshallOptions = {
8
+ convertEmptyValues: false,
9
+ removeUndefinedValues: true,
10
+ convertClassInstanceToMap: true
11
+ };
12
+ const unmarshallOptions = {
13
+ wrapNumbers: false,
14
+ };
15
+ const translateConfig = { marshallOptions, unmarshallOptions };
16
+ const ddbClient = new client_dynamodb_1.DynamoDBClient({});
17
+ const client = lib_dynamodb_1.DynamoDBDocument.from(ddbClient, translateConfig);
18
+ class DynamoDbClient {
19
+ static safeGet = async (tableName, keyName, keyValue) => {
20
+ try {
21
+ const params = {
22
+ TableName: tableName,
23
+ Key: {
24
+ [keyName]: keyValue
25
+ }
26
+ };
27
+ const res = await client.get(params);
28
+ return res?.Item ?? null;
29
+ }
30
+ catch (e) {
31
+ index_js_1.Logger.error(e, { message: 'Dynamo Client Get Failed', tableName, keyName, keyValue });
32
+ return null;
33
+ }
34
+ };
35
+ static safePut = async (tableName, data) => {
36
+ try {
37
+ const params = {
38
+ TableName: tableName,
39
+ Item: data
40
+ };
41
+ const res = await client.put(params);
42
+ return res;
43
+ }
44
+ catch (e) {
45
+ index_js_1.Logger.error(e, { message: 'Dynamo failed simplePut', tableName, data });
46
+ return null;
47
+ }
48
+ };
49
+ static safeDelete = async (tableName, keyName, keyValue) => {
50
+ try {
51
+ const params = {
52
+ TableName: tableName,
53
+ Key: {
54
+ [keyName]: keyValue
55
+ }
56
+ };
57
+ const res = await client.delete(params);
58
+ return res;
59
+ }
60
+ catch (e) {
61
+ index_js_1.Logger.error(e, { message: 'Dynamo failed safeDelete' });
62
+ return null;
63
+ }
64
+ };
65
+ static safeQueryByGSI = async (tableName, gsiName, keyName, keyValue) => {
66
+ const query = {
67
+ TableName: tableName,
68
+ IndexName: gsiName,
69
+ KeyConditionExpression: `${keyName} = :value`,
70
+ ExpressionAttributeValues: {
71
+ ':value': keyValue
72
+ }
73
+ };
74
+ const results = await DynamoDbClient.queryAll(query);
75
+ return results;
76
+ };
77
+ static safeBatchGet = async (tableName, keys) => {
78
+ try {
79
+ const params = {
80
+ RequestItems: {}
81
+ };
82
+ params.RequestItems[tableName] = {
83
+ Keys: keys
84
+ };
85
+ const res = await client.batchGet(params);
86
+ if (res?.Responses?.[tableName]) {
87
+ return res?.Responses?.[tableName];
88
+ }
89
+ return [];
90
+ }
91
+ catch (e) {
92
+ index_js_1.Logger.error(e, { message: 'Dynamo failed safeBatchGet' });
93
+ return [];
94
+ }
95
+ };
96
+ static safeBatchPut = async (tableName, items) => {
97
+ try {
98
+ const params = {
99
+ RequestItems: {}
100
+ };
101
+ params.RequestItems[tableName] = items.map((item) => {
102
+ return {
103
+ PutRequest: {
104
+ Item: item
105
+ }
106
+ };
107
+ });
108
+ const res = await client.batchWrite(params);
109
+ if (res?.$metadata?.httpStatusCode === index_js_1.HttpStatusCodes.OK) {
110
+ return res;
111
+ }
112
+ return null;
113
+ }
114
+ catch (e) {
115
+ index_js_1.Logger.error(e, { message: 'Dynamo failed safeBatchPut' });
116
+ return null;
117
+ }
118
+ };
119
+ static queryAll = async (params) => {
120
+ try {
121
+ let currentResult, exclusiveStartKey;
122
+ let accumulatedResults = [];
123
+ do {
124
+ params.ExclusiveStartKey = exclusiveStartKey;
125
+ params.Limit = 200;
126
+ currentResult = await client.query(params);
127
+ if (currentResult.Items) {
128
+ exclusiveStartKey = currentResult.LastEvaluatedKey;
129
+ accumulatedResults = [...accumulatedResults, ...currentResult.Items];
130
+ }
131
+ } while (currentResult.Items && currentResult.Items.length > 0 && currentResult.LastEvaluatedKey);
132
+ return accumulatedResults;
133
+ }
134
+ catch (e) {
135
+ index_js_1.Logger.error(e, { message: 'Dynamo failed queryAll' });
136
+ return null;
137
+ }
138
+ };
139
+ static scanAll = async (params) => {
140
+ try {
141
+ let currentResult, exclusiveStartKey;
142
+ let accumulatedResults = [];
143
+ do {
144
+ params.ExclusiveStartKey = exclusiveStartKey;
145
+ params.Limit = 200;
146
+ currentResult = await client.scan(params);
147
+ if (currentResult.Items) {
148
+ exclusiveStartKey = currentResult.LastEvaluatedKey;
149
+ accumulatedResults = [...accumulatedResults, ...currentResult.Items];
150
+ }
151
+ } while (currentResult.Items && currentResult.Items.length > 0 && currentResult.LastEvaluatedKey);
152
+ return accumulatedResults;
153
+ }
154
+ catch (e) {
155
+ index_js_1.Logger.error(e, { message: 'Dynamo failed scanAll' });
156
+ return null;
157
+ }
158
+ };
159
+ static batchGet = (params) => client.batchGet(params);
160
+ static get = (params) => client.get(params);
161
+ static put = (params) => client.put(params);
162
+ static query = (params) => client.query(params);
163
+ static scan = (params) => client.scan(params);
164
+ static update = (params) => client.update(params);
165
+ static delete = (params) => client.delete(params);
166
+ }
167
+ exports.DynamoDbClient = DynamoDbClient;
168
168
  //# sourceMappingURL=dynamodb-client.js.map
@@ -1,14 +1,14 @@
1
- import { EventBridgeClient as EventBridge } from '@aws-sdk/client-eventbridge';
2
- export declare class EventBridgeClient {
3
- eventBridge: EventBridge;
4
- EVENT_BUS_NAME: string;
5
- constructor(eventBusName: string);
6
- buildAndSendEvent: (eventSource: string, eventType: string, eventData: any) => Promise<import("@aws-sdk/client-eventbridge").PutEventsCommandOutput>;
7
- buildEvent: (eventType: string, eventData: any, eventId?: string, eventTime?: string) => {
8
- eventId: string;
9
- eventType: string;
10
- eventTime: string;
11
- eventData: any;
12
- };
13
- putEvent: (source: string, detailType: string, data: any, headers?: any) => Promise<import("@aws-sdk/client-eventbridge").PutEventsCommandOutput>;
14
- }
1
+ import { EventBridgeClient as EventBridge } from '@aws-sdk/client-eventbridge';
2
+ export declare class EventBridgeClient {
3
+ eventBridge: EventBridge;
4
+ EVENT_BUS_NAME: string;
5
+ constructor(eventBusName: string);
6
+ buildAndSendEvent: (eventSource: string, eventType: string, eventData: any) => Promise<import("@aws-sdk/client-eventbridge").PutEventsCommandOutput>;
7
+ buildEvent: (eventType: string, eventData: any, eventId?: string, eventTime?: string) => {
8
+ eventId: string;
9
+ eventType: string;
10
+ eventTime: string;
11
+ eventData: any;
12
+ };
13
+ putEvent: (source: string, detailType: string, data: any, headers?: any) => Promise<import("@aws-sdk/client-eventbridge").PutEventsCommandOutput>;
14
+ }
@@ -1,50 +1,50 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EventBridgeClient = void 0;
4
- const client_eventbridge_1 = require("@aws-sdk/client-eventbridge");
5
- const uuid_1 = require("uuid");
6
- const dates_js_1 = require("../../libs/dates.js");
7
- const index_js_1 = require("../../index.js");
8
- class EventBridgeClient {
9
- eventBridge;
10
- EVENT_BUS_NAME;
11
- constructor(eventBusName) {
12
- this.eventBridge = new client_eventbridge_1.EventBridgeClient({});
13
- this.EVENT_BUS_NAME = eventBusName;
14
- }
15
- buildAndSendEvent = async (eventSource, eventType, eventData) => {
16
- const event = this.buildEvent(eventType, eventData);
17
- return await this.putEvent(eventSource, eventType, event);
18
- };
19
- buildEvent = (eventType, eventData, eventId = (0, uuid_1.v4)(), eventTime = (0, dates_js_1.getCurrentTimestamp)()) => {
20
- return {
21
- eventId,
22
- eventType,
23
- eventTime,
24
- eventData
25
- };
26
- };
27
- putEvent = async (source, detailType, data, headers = null) => {
28
- const params = {
29
- Entries: [{
30
- Detail: JSON.stringify({ headers, data }),
31
- DetailType: detailType,
32
- EventBusName: this.EVENT_BUS_NAME,
33
- Source: source,
34
- Time: new Date(),
35
- }],
36
- };
37
- const putEventscommand = new client_eventbridge_1.PutEventsCommand(params);
38
- const response = await this.eventBridge.send(putEventscommand);
39
- index_js_1.Logger.debug('EventBus Event Published', {
40
- eventBusName: this.EVENT_BUS_NAME,
41
- eventSource: source,
42
- eventType: detailType,
43
- event: data,
44
- response
45
- });
46
- return response;
47
- };
48
- }
49
- exports.EventBridgeClient = EventBridgeClient;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EventBridgeClient = void 0;
4
+ const client_eventbridge_1 = require("@aws-sdk/client-eventbridge");
5
+ const uuid_1 = require("uuid");
6
+ const dates_js_1 = require("../../libs/dates.js");
7
+ const index_js_1 = require("../../index.js");
8
+ class EventBridgeClient {
9
+ eventBridge;
10
+ EVENT_BUS_NAME;
11
+ constructor(eventBusName) {
12
+ this.eventBridge = new client_eventbridge_1.EventBridgeClient({});
13
+ this.EVENT_BUS_NAME = eventBusName;
14
+ }
15
+ buildAndSendEvent = async (eventSource, eventType, eventData) => {
16
+ const event = this.buildEvent(eventType, eventData);
17
+ return await this.putEvent(eventSource, eventType, event);
18
+ };
19
+ buildEvent = (eventType, eventData, eventId = (0, uuid_1.v4)(), eventTime = (0, dates_js_1.getCurrentTimestamp)()) => {
20
+ return {
21
+ eventId,
22
+ eventType,
23
+ eventTime,
24
+ eventData
25
+ };
26
+ };
27
+ putEvent = async (source, detailType, data, headers = null) => {
28
+ const params = {
29
+ Entries: [{
30
+ Detail: JSON.stringify({ headers, data }),
31
+ DetailType: detailType,
32
+ EventBusName: this.EVENT_BUS_NAME,
33
+ Source: source,
34
+ Time: new Date(),
35
+ }],
36
+ };
37
+ const putEventscommand = new client_eventbridge_1.PutEventsCommand(params);
38
+ const response = await this.eventBridge.send(putEventscommand);
39
+ index_js_1.Logger.debug('EventBus Event Published', {
40
+ eventBusName: this.EVENT_BUS_NAME,
41
+ eventSource: source,
42
+ eventType: detailType,
43
+ event: data,
44
+ response
45
+ });
46
+ return response;
47
+ };
48
+ }
49
+ exports.EventBridgeClient = EventBridgeClient;
50
50
  //# sourceMappingURL=eventbridge-client.js.map
@@ -1,88 +1,88 @@
1
- import { AxiosInstance, AxiosRequestConfig, CreateAxiosDefaults } from 'axios';
2
- export declare class GenericHttpClient {
3
- _axiosService: AxiosInstance;
4
- constructor(config?: CreateAxiosDefaults);
5
- instance: () => AxiosInstance;
6
- get: (url: string, config?: AxiosRequestConfig) => Promise<{
7
- headers: any;
8
- data: any;
9
- status: any;
10
- } | {
11
- headers: any;
12
- data: any;
13
- status: any;
14
- } | {
15
- status: number;
16
- data: {
17
- message: string;
18
- error: any;
19
- };
20
- headers?: undefined;
21
- }>;
22
- post: (url: string, data?: any, config?: any) => Promise<{
23
- headers: any;
24
- data: any;
25
- status: any;
26
- } | {
27
- headers: any;
28
- data: any;
29
- status: any;
30
- } | {
31
- status: number;
32
- data: {
33
- message: string;
34
- error: any;
35
- };
36
- headers?: undefined;
37
- }>;
38
- delete: (url: string, config?: any) => Promise<{
39
- headers: any;
40
- data: any;
41
- status: any;
42
- } | {
43
- headers: any;
44
- data: any;
45
- status: any;
46
- } | {
47
- status: number;
48
- data: {
49
- message: string;
50
- error: any;
51
- };
52
- headers?: undefined;
53
- }>;
54
- put: (url: string, data?: any, config?: any) => Promise<{
55
- headers: any;
56
- data: any;
57
- status: any;
58
- } | {
59
- headers: any;
60
- data: any;
61
- status: any;
62
- } | {
63
- status: number;
64
- data: {
65
- message: string;
66
- error: any;
67
- };
68
- headers?: undefined;
69
- }>;
70
- patch: (url: string, data?: any, config?: any) => Promise<{
71
- headers: any;
72
- data: any;
73
- status: any;
74
- } | {
75
- headers: any;
76
- data: any;
77
- status: any;
78
- } | {
79
- status: number;
80
- data: {
81
- message: string;
82
- error: any;
83
- };
84
- headers?: undefined;
85
- }>;
86
- setBaseUrl: (url: string) => boolean;
87
- }
88
- export declare const axiosHttpService: (config?: CreateAxiosDefaults) => GenericHttpClient;
1
+ import { AxiosInstance, AxiosRequestConfig, CreateAxiosDefaults } from 'axios';
2
+ export declare class GenericHttpClient {
3
+ _axiosService: AxiosInstance;
4
+ constructor(config?: CreateAxiosDefaults);
5
+ instance: () => AxiosInstance;
6
+ get: (url: string, config?: AxiosRequestConfig) => Promise<{
7
+ headers: any;
8
+ data: any;
9
+ status: any;
10
+ } | {
11
+ headers: any;
12
+ data: any;
13
+ status: any;
14
+ } | {
15
+ status: number;
16
+ data: {
17
+ message: string;
18
+ error: any;
19
+ };
20
+ headers?: undefined;
21
+ }>;
22
+ post: (url: string, data?: any, config?: any) => Promise<{
23
+ headers: any;
24
+ data: any;
25
+ status: any;
26
+ } | {
27
+ headers: any;
28
+ data: any;
29
+ status: any;
30
+ } | {
31
+ status: number;
32
+ data: {
33
+ message: string;
34
+ error: any;
35
+ };
36
+ headers?: undefined;
37
+ }>;
38
+ delete: (url: string, config?: any) => Promise<{
39
+ headers: any;
40
+ data: any;
41
+ status: any;
42
+ } | {
43
+ headers: any;
44
+ data: any;
45
+ status: any;
46
+ } | {
47
+ status: number;
48
+ data: {
49
+ message: string;
50
+ error: any;
51
+ };
52
+ headers?: undefined;
53
+ }>;
54
+ put: (url: string, data?: any, config?: any) => Promise<{
55
+ headers: any;
56
+ data: any;
57
+ status: any;
58
+ } | {
59
+ headers: any;
60
+ data: any;
61
+ status: any;
62
+ } | {
63
+ status: number;
64
+ data: {
65
+ message: string;
66
+ error: any;
67
+ };
68
+ headers?: undefined;
69
+ }>;
70
+ patch: (url: string, data?: any, config?: any) => Promise<{
71
+ headers: any;
72
+ data: any;
73
+ status: any;
74
+ } | {
75
+ headers: any;
76
+ data: any;
77
+ status: any;
78
+ } | {
79
+ status: number;
80
+ data: {
81
+ message: string;
82
+ error: any;
83
+ };
84
+ headers?: undefined;
85
+ }>;
86
+ setBaseUrl: (url: string) => boolean;
87
+ }
88
+ export declare const axiosHttpService: (config?: CreateAxiosDefaults) => GenericHttpClient;