@adtrackify/at-service-common 3.0.98 → 3.1.0

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 (263) 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 +60 -60
  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 -20
  28. package/dist/cjs/clients/generic/sqs-client.js +36 -36
  29. package/dist/cjs/clients/generic/sqs-client.js.map +1 -1
  30. package/dist/cjs/clients/index.d.ts +3 -3
  31. package/dist/cjs/clients/index.js +19 -19
  32. package/dist/cjs/clients/internal-api/accounts-client.d.ts +112 -112
  33. package/dist/cjs/clients/internal-api/accounts-client.js +117 -117
  34. package/dist/cjs/clients/internal-api/cache-lambda-client.d.ts +23 -23
  35. package/dist/cjs/clients/internal-api/cache-lambda-client.js +59 -59
  36. package/dist/cjs/clients/internal-api/db-management-client.d.ts +18 -18
  37. package/dist/cjs/clients/internal-api/db-management-client.js +39 -39
  38. package/dist/cjs/clients/internal-api/destinations-client.d.ts +29 -29
  39. package/dist/cjs/clients/internal-api/destinations-client.js +54 -54
  40. package/dist/cjs/clients/internal-api/event-collector-client.d.ts +20 -20
  41. package/dist/cjs/clients/internal-api/event-collector-client.js +39 -39
  42. package/dist/cjs/clients/internal-api/identity-client.d.ts +25 -25
  43. package/dist/cjs/clients/internal-api/identity-client.js +92 -92
  44. package/dist/cjs/clients/internal-api/index.d.ts +8 -8
  45. package/dist/cjs/clients/internal-api/index.js +24 -24
  46. package/dist/cjs/clients/internal-api/shopify-app-install-client.d.ts +34 -34
  47. package/dist/cjs/clients/internal-api/shopify-app-install-client.js +63 -63
  48. package/dist/cjs/clients/internal-api/users-auth-client.d.ts +31 -31
  49. package/dist/cjs/clients/internal-api/users-auth-client.js +92 -92
  50. package/dist/cjs/clients/third-party/index.d.ts +1 -1
  51. package/dist/cjs/clients/third-party/index.js +17 -17
  52. package/dist/cjs/clients/third-party/shopify-client.d.ts +197 -198
  53. package/dist/cjs/clients/third-party/shopify-client.js +196 -150
  54. package/dist/cjs/clients/third-party/shopify-client.js.map +1 -1
  55. package/dist/cjs/helpers/identity-cache-helper.d.ts +4 -4
  56. package/dist/cjs/helpers/identity-cache-helper.js +150 -150
  57. package/dist/cjs/helpers/index.d.ts +5 -5
  58. package/dist/cjs/helpers/index.js +21 -21
  59. package/dist/cjs/helpers/input-validation-helper.d.ts +3 -3
  60. package/dist/cjs/helpers/input-validation-helper.js +22 -22
  61. package/dist/cjs/helpers/logging-helper.d.ts +16 -16
  62. package/dist/cjs/helpers/logging-helper.js +84 -84
  63. package/dist/cjs/helpers/response-helper.d.ts +15 -15
  64. package/dist/cjs/helpers/response-helper.js +42 -42
  65. package/dist/cjs/helpers/shopify-helper.d.ts +9 -9
  66. package/dist/cjs/helpers/shopify-helper.js +28 -28
  67. package/dist/cjs/index.d.ts +5 -5
  68. package/dist/cjs/index.js +21 -21
  69. package/dist/cjs/libs/clickId-parser.d.ts +23 -23
  70. package/dist/cjs/libs/clickId-parser.js +49 -49
  71. package/dist/cjs/libs/compression.d.ts +2 -2
  72. package/dist/cjs/libs/compression.js +33 -33
  73. package/dist/cjs/libs/crypto.d.ts +1 -1
  74. package/dist/cjs/libs/crypto.js +12 -12
  75. package/dist/cjs/libs/dates.d.ts +6 -6
  76. package/dist/cjs/libs/dates.js +31 -31
  77. package/dist/cjs/libs/http-error.d.ts +21 -21
  78. package/dist/cjs/libs/http-error.js +59 -59
  79. package/dist/cjs/libs/http-status-codes.d.ts +58 -58
  80. package/dist/cjs/libs/http-status-codes.js +62 -62
  81. package/dist/cjs/libs/index.d.ts +9 -9
  82. package/dist/cjs/libs/index.js +25 -25
  83. package/dist/cjs/libs/referrer-parser/index.d.ts +2 -2
  84. package/dist/cjs/libs/referrer-parser/index.js +18 -18
  85. package/dist/cjs/libs/referrer-parser/referrer-data.d.ts +9 -9
  86. package/dist/cjs/libs/referrer-parser/referrer-data.js +4712 -4712
  87. package/dist/cjs/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  88. package/dist/cjs/libs/referrer-parser/referrer-parser-util.js +128 -128
  89. package/dist/cjs/libs/url.d.ts +1 -1
  90. package/dist/cjs/libs/url.js +13 -13
  91. package/dist/cjs/services/db/destinations-db-service.d.ts +8 -8
  92. package/dist/cjs/services/db/destinations-db-service.js +47 -47
  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/log-events-db-service.d.ts +11 -11
  98. package/dist/cjs/services/db/log-events-db-service.js +172 -172
  99. package/dist/cjs/services/db/purchased-contacts-db-service.d.ts +9 -9
  100. package/dist/cjs/services/db/purchased-contacts-db-service.js +38 -38
  101. package/dist/cjs/services/db/shopify-app-installs-db-service.d.ts +7 -7
  102. package/dist/cjs/services/db/shopify-app-installs-db-service.js +47 -47
  103. package/dist/cjs/services/db/shopify-products-cache-db-service.d.ts +9 -9
  104. package/dist/cjs/services/db/shopify-products-cache-db-service.js +64 -64
  105. package/dist/cjs/services/db/shopify-products-cache-db-service.js.map +1 -1
  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/cjs/types/shopify-graphql-types/admin.generated.d.ts +47 -0
  127. package/dist/cjs/types/shopify-graphql-types/admin.generated.js +3 -0
  128. package/dist/cjs/types/shopify-graphql-types/admin.generated.js.map +1 -0
  129. package/dist/cjs/types/shopify-graphql-types/admin.types.d.ts +26289 -0
  130. package/dist/cjs/types/shopify-graphql-types/admin.types.js +5312 -0
  131. package/dist/cjs/types/shopify-graphql-types/admin.types.js.map +1 -0
  132. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.d.ts +1 -1
  133. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.js +525 -525
  134. package/dist/esm/__tests__/libs/compress-decompress.spec.d.ts +1 -1
  135. package/dist/esm/__tests__/libs/compress-decompress.spec.js +14 -14
  136. package/dist/esm/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  137. package/dist/esm/__tests__/s3-client/s3-client.spec.js +24 -24
  138. package/dist/esm/clients/generic/cognito-client.d.ts +20 -20
  139. package/dist/esm/clients/generic/cognito-client.js +159 -159
  140. package/dist/esm/clients/generic/dynamodb-client.d.ts +17 -17
  141. package/dist/esm/clients/generic/dynamodb-client.js +163 -163
  142. package/dist/esm/clients/generic/eventbridge-client.d.ts +14 -14
  143. package/dist/esm/clients/generic/eventbridge-client.js +45 -45
  144. package/dist/esm/clients/generic/http-client.d.ts +88 -88
  145. package/dist/esm/clients/generic/http-client.js +52 -52
  146. package/dist/esm/clients/generic/index.d.ts +10 -10
  147. package/dist/esm/clients/generic/index.js +10 -10
  148. package/dist/esm/clients/generic/lambda-invoke-client.d.ts +10 -10
  149. package/dist/esm/clients/generic/lambda-invoke-client.js +31 -31
  150. package/dist/esm/clients/generic/location-client.d.ts +8 -8
  151. package/dist/esm/clients/generic/location-client.js +27 -27
  152. package/dist/esm/clients/generic/redis-client.d.ts +17 -17
  153. package/dist/esm/clients/generic/redis-client.js +110 -110
  154. package/dist/esm/clients/generic/s3-client.d.ts +16 -16
  155. package/dist/esm/clients/generic/s3-client.js +106 -106
  156. package/dist/esm/clients/generic/singlestore-db-client.d.ts +14 -14
  157. package/dist/esm/clients/generic/singlestore-db-client.js +40 -40
  158. package/dist/esm/clients/generic/sqs-client.d.ts +14 -20
  159. package/dist/esm/clients/generic/sqs-client.js +32 -32
  160. package/dist/esm/clients/generic/sqs-client.js.map +1 -1
  161. package/dist/esm/clients/index.d.ts +3 -3
  162. package/dist/esm/clients/index.js +3 -3
  163. package/dist/esm/clients/internal-api/accounts-client.d.ts +112 -112
  164. package/dist/esm/clients/internal-api/accounts-client.js +113 -113
  165. package/dist/esm/clients/internal-api/cache-lambda-client.d.ts +23 -23
  166. package/dist/esm/clients/internal-api/cache-lambda-client.js +55 -55
  167. package/dist/esm/clients/internal-api/db-management-client.d.ts +18 -18
  168. package/dist/esm/clients/internal-api/db-management-client.js +32 -32
  169. package/dist/esm/clients/internal-api/destinations-client.d.ts +29 -29
  170. package/dist/esm/clients/internal-api/destinations-client.js +50 -50
  171. package/dist/esm/clients/internal-api/event-collector-client.d.ts +20 -20
  172. package/dist/esm/clients/internal-api/event-collector-client.js +32 -32
  173. package/dist/esm/clients/internal-api/identity-client.d.ts +25 -25
  174. package/dist/esm/clients/internal-api/identity-client.js +88 -88
  175. package/dist/esm/clients/internal-api/index.d.ts +8 -8
  176. package/dist/esm/clients/internal-api/index.js +8 -8
  177. package/dist/esm/clients/internal-api/shopify-app-install-client.d.ts +34 -34
  178. package/dist/esm/clients/internal-api/shopify-app-install-client.js +56 -56
  179. package/dist/esm/clients/internal-api/users-auth-client.d.ts +31 -31
  180. package/dist/esm/clients/internal-api/users-auth-client.js +88 -88
  181. package/dist/esm/clients/third-party/index.d.ts +1 -1
  182. package/dist/esm/clients/third-party/index.js +1 -1
  183. package/dist/esm/clients/third-party/shopify-client.d.ts +197 -198
  184. package/dist/esm/clients/third-party/shopify-client.js +192 -146
  185. package/dist/esm/clients/third-party/shopify-client.js.map +1 -1
  186. package/dist/esm/helpers/identity-cache-helper.d.ts +4 -4
  187. package/dist/esm/helpers/identity-cache-helper.js +145 -145
  188. package/dist/esm/helpers/index.d.ts +5 -5
  189. package/dist/esm/helpers/index.js +5 -5
  190. package/dist/esm/helpers/input-validation-helper.d.ts +3 -3
  191. package/dist/esm/helpers/input-validation-helper.js +18 -18
  192. package/dist/esm/helpers/logging-helper.d.ts +16 -16
  193. package/dist/esm/helpers/logging-helper.js +56 -56
  194. package/dist/esm/helpers/response-helper.d.ts +15 -15
  195. package/dist/esm/helpers/response-helper.js +36 -36
  196. package/dist/esm/helpers/shopify-helper.d.ts +9 -9
  197. package/dist/esm/helpers/shopify-helper.js +23 -23
  198. package/dist/esm/index.d.ts +5 -5
  199. package/dist/esm/index.js +5 -5
  200. package/dist/esm/libs/clickId-parser.d.ts +23 -23
  201. package/dist/esm/libs/clickId-parser.js +45 -45
  202. package/dist/esm/libs/compression.d.ts +2 -2
  203. package/dist/esm/libs/compression.js +25 -25
  204. package/dist/esm/libs/crypto.d.ts +1 -1
  205. package/dist/esm/libs/crypto.js +5 -5
  206. package/dist/esm/libs/dates.d.ts +6 -6
  207. package/dist/esm/libs/dates.js +22 -22
  208. package/dist/esm/libs/http-error.d.ts +21 -21
  209. package/dist/esm/libs/http-error.js +55 -55
  210. package/dist/esm/libs/http-status-codes.d.ts +58 -58
  211. package/dist/esm/libs/http-status-codes.js +59 -59
  212. package/dist/esm/libs/index.d.ts +9 -9
  213. package/dist/esm/libs/index.js +9 -9
  214. package/dist/esm/libs/referrer-parser/index.d.ts +2 -2
  215. package/dist/esm/libs/referrer-parser/index.js +2 -2
  216. package/dist/esm/libs/referrer-parser/referrer-data.d.ts +9 -9
  217. package/dist/esm/libs/referrer-parser/referrer-data.js +4709 -4709
  218. package/dist/esm/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  219. package/dist/esm/libs/referrer-parser/referrer-parser-util.js +121 -121
  220. package/dist/esm/libs/url.d.ts +1 -1
  221. package/dist/esm/libs/url.js +9 -9
  222. package/dist/esm/services/db/destinations-db-service.d.ts +8 -8
  223. package/dist/esm/services/db/destinations-db-service.js +43 -43
  224. package/dist/esm/services/db/identity-cache-db-service.d.ts +24 -24
  225. package/dist/esm/services/db/identity-cache-db-service.js +229 -229
  226. package/dist/esm/services/db/index.d.ts +7 -7
  227. package/dist/esm/services/db/index.js +7 -7
  228. package/dist/esm/services/db/log-events-db-service.d.ts +11 -11
  229. package/dist/esm/services/db/log-events-db-service.js +168 -168
  230. package/dist/esm/services/db/purchased-contacts-db-service.d.ts +9 -9
  231. package/dist/esm/services/db/purchased-contacts-db-service.js +34 -34
  232. package/dist/esm/services/db/shopify-app-installs-db-service.d.ts +7 -7
  233. package/dist/esm/services/db/shopify-app-installs-db-service.js +43 -43
  234. package/dist/esm/services/db/shopify-products-cache-db-service.d.ts +9 -9
  235. package/dist/esm/services/db/shopify-products-cache-db-service.js +60 -60
  236. package/dist/esm/services/db/shopify-products-cache-db-service.js.map +1 -1
  237. package/dist/esm/services/db/tracking-events-db-service.d.ts +20 -20
  238. package/dist/esm/services/db/tracking-events-db-service.js +158 -158
  239. package/dist/esm/services/eventbridge-integration-service.d.ts +9 -9
  240. package/dist/esm/services/eventbridge-integration-service.js +24 -24
  241. package/dist/esm/services/index.d.ts +5 -5
  242. package/dist/esm/services/index.js +5 -5
  243. package/dist/esm/services/ipdata-lookup-service.d.ts +17 -17
  244. package/dist/esm/services/ipdata-lookup-service.js +67 -67
  245. package/dist/esm/services/log-event-service.d.ts +9 -9
  246. package/dist/esm/services/log-event-service.js +52 -52
  247. package/dist/esm/services/metric-event-service.d.ts +9 -9
  248. package/dist/esm/services/metric-event-service.js +45 -45
  249. package/dist/esm/types/api-response.d.ts +6 -6
  250. package/dist/esm/types/api-response.js +1 -1
  251. package/dist/esm/types/index.d.ts +1 -1
  252. package/dist/esm/types/index.js +1 -1
  253. package/dist/esm/types/internal-events/event-detail-types.d.ts +20 -20
  254. package/dist/esm/types/internal-events/event-detail-types.js +24 -24
  255. package/dist/esm/types/internal-events/index.d.ts +1 -1
  256. package/dist/esm/types/internal-events/index.js +1 -1
  257. package/dist/esm/types/shopify-graphql-types/admin.generated.d.ts +47 -0
  258. package/dist/esm/types/shopify-graphql-types/admin.generated.js +2 -0
  259. package/dist/esm/types/shopify-graphql-types/admin.generated.js.map +1 -0
  260. package/dist/esm/types/shopify-graphql-types/admin.types.d.ts +26289 -0
  261. package/dist/esm/types/shopify-graphql-types/admin.types.js +5300 -0
  262. package/dist/esm/types/shopify-graphql-types/admin.types.js.map +1 -0
  263. package/package.json +6 -3
@@ -1 +1 @@
1
- export {};
1
+ export {};
@@ -1,15 +1,15 @@
1
- import { compressJSON, decompressJSON } from '../../libs/compression';
2
- describe('compression, decompression unit tests', () => {
3
- afterEach(() => {
4
- jest.resetModules();
5
- });
6
- it('should compress json to string', () => {
7
- const compressed = compressJSON({ key1: 'value1', key2: 'value2' });
8
- expect(compressed).toBe('eNqrVspOrTRUslIqS8wpTTVU0gHxjWB8I6VaAK3KCjs=');
9
- });
10
- it('should decompress string to json', () => {
11
- const decompressed = decompressJSON('eNqrVspOrTRUslIqS8wpTTVU0gHxjWB8I6VaAK3KCjs=');
12
- expect(decompressed).toStrictEqual({ key1: 'value1', key2: 'value2' });
13
- });
14
- });
1
+ import { compressJSON, decompressJSON } from '../../libs/compression';
2
+ describe('compression, decompression unit tests', () => {
3
+ afterEach(() => {
4
+ jest.resetModules();
5
+ });
6
+ it('should compress json to string', () => {
7
+ const compressed = compressJSON({ key1: 'value1', key2: 'value2' });
8
+ expect(compressed).toBe('eNqrVspOrTRUslIqS8wpTTVU0gHxjWB8I6VaAK3KCjs=');
9
+ });
10
+ it('should decompress string to json', () => {
11
+ const decompressed = decompressJSON('eNqrVspOrTRUslIqS8wpTTVU0gHxjWB8I6VaAK3KCjs=');
12
+ expect(decompressed).toStrictEqual({ key1: 'value1', key2: 'value2' });
13
+ });
14
+ });
15
15
  //# sourceMappingURL=compress-decompress.spec.js.map
@@ -1 +1 @@
1
- export {};
1
+ export {};
@@ -1,25 +1,25 @@
1
- import { S3Client } from '../../index.js';
2
- jest.setTimeout(30000);
3
- describe('s3-client test', () => {
4
- afterEach(() => {
5
- jest.resetAllMocks();
6
- });
7
- it('should run uploadJson multiple times', async () => {
8
- const s3Client = new S3Client();
9
- const putObjectMock = jest.spyOn(s3Client.s3, 'putObject').mockImplementation(() => Promise.reject({ message: 'something went wrong!' }));
10
- const maxRetries = 5;
11
- const dataToWrite = { pixelId: '1234', shopifyAppInstallId: '123455' };
12
- const res = await s3Client.uploadJson('test/path/id.json', 'shopify-data-bucket', dataToWrite, undefined, 0, maxRetries);
13
- expect(putObjectMock).toHaveBeenCalledTimes(maxRetries + 1);
14
- expect(res.status).toBe(false);
15
- expect(res.response).toBe(dataToWrite);
16
- });
17
- it('should return true from uploadJson', async () => {
18
- const s3Client = new S3Client();
19
- const putObjectMock = jest.spyOn(s3Client.s3, 'putObject').mockImplementation(() => Promise.resolve({ message: 'uploaded successfully' }));
20
- const res = await s3Client.uploadJson('test/path/id.json', 'shopify-data-bucket', { pixelId: '1234', shopifyAppInstallId: '123455' });
21
- expect(putObjectMock).toHaveBeenCalledTimes(1);
22
- expect(res.status).toBe(true);
23
- });
24
- });
1
+ import { S3Client } from '../../index.js';
2
+ jest.setTimeout(30000);
3
+ describe('s3-client test', () => {
4
+ afterEach(() => {
5
+ jest.resetAllMocks();
6
+ });
7
+ it('should run uploadJson multiple times', async () => {
8
+ const s3Client = new S3Client();
9
+ const putObjectMock = jest.spyOn(s3Client.s3, 'putObject').mockImplementation(() => Promise.reject({ message: 'something went wrong!' }));
10
+ const maxRetries = 5;
11
+ const dataToWrite = { pixelId: '1234', shopifyAppInstallId: '123455' };
12
+ const res = await s3Client.uploadJson('test/path/id.json', 'shopify-data-bucket', dataToWrite, undefined, 0, maxRetries);
13
+ expect(putObjectMock).toHaveBeenCalledTimes(maxRetries + 1);
14
+ expect(res.status).toBe(false);
15
+ expect(res.response).toBe(dataToWrite);
16
+ });
17
+ it('should return true from uploadJson', async () => {
18
+ const s3Client = new S3Client();
19
+ const putObjectMock = jest.spyOn(s3Client.s3, 'putObject').mockImplementation(() => Promise.resolve({ message: 'uploaded successfully' }));
20
+ const res = await s3Client.uploadJson('test/path/id.json', 'shopify-data-bucket', { pixelId: '1234', shopifyAppInstallId: '123455' });
21
+ expect(putObjectMock).toHaveBeenCalledTimes(1);
22
+ expect(res.status).toBe(true);
23
+ });
24
+ });
25
25
  //# sourceMappingURL=s3-client.spec.js.map
@@ -1,20 +1,20 @@
1
- export declare function dictToAwsAttributes(input: any): {
2
- Name: string;
3
- Value: any;
4
- }[];
5
- export declare class CognitoClient {
6
- cognitoClient: any;
7
- USER_POOL_ID: string;
8
- USER_POOL_NO_SECRET_CLIENT_ID: string;
9
- constructor(userPoolId: string, userPoolNoSecretClientId: string);
10
- signupUser: (data: any) => Promise<any>;
11
- forgotPassword: (email: string) => Promise<any>;
12
- adminEmailVerify: (email: string) => Promise<void>;
13
- forceValidateEmail: (email: string) => Promise<void>;
14
- adminConfirmUser: (data: any) => Promise<any>;
15
- confirmUser: (data: any) => Promise<any>;
16
- resendCode: (email: string) => Promise<void>;
17
- adminDeleteUser: (userId: string) => Promise<boolean>;
18
- getUserByEmail: (email: string) => Promise<any>;
19
- getUser: (id: string) => Promise<any>;
20
- }
1
+ export declare function dictToAwsAttributes(input: any): {
2
+ Name: string;
3
+ Value: any;
4
+ }[];
5
+ export declare class CognitoClient {
6
+ cognitoClient: any;
7
+ USER_POOL_ID: string;
8
+ USER_POOL_NO_SECRET_CLIENT_ID: string;
9
+ constructor(userPoolId: string, userPoolNoSecretClientId: string);
10
+ signupUser: (data: any) => Promise<any>;
11
+ forgotPassword: (email: string) => Promise<any>;
12
+ adminEmailVerify: (email: string) => Promise<void>;
13
+ forceValidateEmail: (email: string) => Promise<void>;
14
+ adminConfirmUser: (data: any) => Promise<any>;
15
+ confirmUser: (data: any) => Promise<any>;
16
+ resendCode: (email: string) => Promise<void>;
17
+ adminDeleteUser: (userId: string) => Promise<boolean>;
18
+ getUserByEmail: (email: string) => Promise<any>;
19
+ getUser: (id: string) => Promise<any>;
20
+ }
@@ -1,160 +1,160 @@
1
- import { CognitoIdentityProvider } from '@aws-sdk/client-cognito-identity-provider';
2
- import { Logger } from '../../index.js';
3
- export function dictToAwsAttributes(input) {
4
- delete input.email;
5
- delete input.password;
6
- const output = [];
7
- for (const att in input) {
8
- if (Object.prototype.hasOwnProperty.call(input, att)) {
9
- output.push({ Name: att, Value: input[att] });
10
- }
11
- }
12
- return output;
13
- }
14
- const buildAttributes = (data) => {
15
- const attributes = {
16
- name: data.givenName,
17
- family_name: data.familyName,
18
- };
19
- return dictToAwsAttributes(attributes);
20
- };
21
- export class CognitoClient {
22
- cognitoClient;
23
- USER_POOL_ID;
24
- USER_POOL_NO_SECRET_CLIENT_ID;
25
- constructor(userPoolId, userPoolNoSecretClientId) {
26
- this.cognitoClient = new CognitoIdentityProvider({});
27
- this.USER_POOL_ID = userPoolId;
28
- this.USER_POOL_NO_SECRET_CLIENT_ID = userPoolNoSecretClientId;
29
- }
30
- signupUser = async (data) => {
31
- const params = {
32
- ClientId: this.USER_POOL_NO_SECRET_CLIENT_ID,
33
- Password: data.password,
34
- Username: data.email,
35
- UserAttributes: buildAttributes(data),
36
- };
37
- const cognitoResponse = await this.cognitoClient.signUp(params);
38
- Logger.info('Successfully Registered User', { cognitoResponse });
39
- return cognitoResponse;
40
- };
41
- forgotPassword = async (email) => {
42
- await this.adminEmailVerify(email);
43
- const params = {
44
- ClientId: this.USER_POOL_NO_SECRET_CLIENT_ID,
45
- Username: email,
46
- };
47
- const cognitoResponse = await this.cognitoClient.forgotPassword(params);
48
- Logger.info('Sent Forgot Password', { cognitoResponse });
49
- return cognitoResponse;
50
- };
51
- adminEmailVerify = async (email) => {
52
- try {
53
- const user = await this.getUserByEmail(email);
54
- if (user && user?.UserStatus === 'CONFIRMED' && user?.email_verified !== 'true') {
55
- await this.forceValidateEmail(email);
56
- }
57
- }
58
- catch (error) {
59
- Logger.error('Failed admin email verify', { error });
60
- }
61
- };
62
- forceValidateEmail = async (email) => {
63
- try {
64
- const params = {
65
- UserPoolId: this.USER_POOL_ID,
66
- Username: email,
67
- UserAttributes: [
68
- {
69
- Name: 'email_verified',
70
- Value: 'true',
71
- },
72
- ],
73
- };
74
- await this.cognitoClient.adminUpdateUserAttributes(params);
75
- }
76
- catch (error) {
77
- Logger.error('Failed force validate email', { email, error });
78
- }
79
- };
80
- adminConfirmUser = async (data) => {
81
- const params = {
82
- UserPoolId: this.USER_POOL_ID,
83
- Username: data.email,
84
- };
85
- const cognitoResponse = await this.cognitoClient.adminConfirmSignUp(params);
86
- await this.forceValidateEmail(data.email);
87
- Logger.info('Admin Successfully Confirmed User', { cognitoResponse });
88
- return cognitoResponse;
89
- };
90
- confirmUser = async (data) => {
91
- const params = {
92
- ClientId: this.USER_POOL_NO_SECRET_CLIENT_ID,
93
- ConfirmationCode: data.confirmationCode,
94
- Username: data.email,
95
- };
96
- const cognitoResponse = await this.cognitoClient.confirmSignUp(params);
97
- Logger.info('Successfully Confirmed User', { cognitoResponse });
98
- return cognitoResponse;
99
- };
100
- resendCode = async (email) => {
101
- const params = {
102
- ClientId: this.USER_POOL_NO_SECRET_CLIENT_ID,
103
- Username: email,
104
- };
105
- await this.cognitoClient.resendConfirmationCode(params);
106
- Logger.info('Successfully Resend Confirmation Code', { email });
107
- return;
108
- };
109
- adminDeleteUser = async (userId) => {
110
- const params = {
111
- UserPoolId: this.USER_POOL_ID,
112
- Username: userId,
113
- };
114
- await this.cognitoClient.adminDeleteUser(params);
115
- return true;
116
- };
117
- getUserByEmail = async (email) => {
118
- const params = {
119
- UserPoolId: this.USER_POOL_ID,
120
- Filter: `email=\"${email}\"`,
121
- Limit: 1,
122
- };
123
- const cognitoResponse = await this.cognitoClient.listUsers(params);
124
- Logger.info('Get Users by Email', { cognitoResponse });
125
- if (cognitoResponse?.Users && cognitoResponse?.Users.length > 0) {
126
- const attributes = cognitoResponse.Users[0].Attributes;
127
- const user = {
128
- ...cognitoResponse.Users[0],
129
- Attributes: undefined,
130
- id: cognitoResponse.Users[0].sub,
131
- };
132
- attributes.forEach((attr) => {
133
- user[attr.Name] = attr?.Value;
134
- });
135
- return user;
136
- }
137
- return null;
138
- };
139
- getUser = async (id) => {
140
- const params = {
141
- UserPoolId: this.USER_POOL_ID,
142
- Username: id
143
- };
144
- const cognitoResponse = await this.cognitoClient.adminGetUser(params);
145
- if (cognitoResponse) {
146
- const attributes = cognitoResponse?.UserAttributes || [];
147
- const user = {
148
- ...cognitoResponse,
149
- UserAttributes: undefined,
150
- id: cognitoResponse.Username
151
- };
152
- attributes.forEach((attr) => {
153
- user[attr.Name] = attr?.Value;
154
- });
155
- return user;
156
- }
157
- return null;
158
- };
159
- }
1
+ import { CognitoIdentityProvider } from '@aws-sdk/client-cognito-identity-provider';
2
+ import { Logger } from '../../index.js';
3
+ export function dictToAwsAttributes(input) {
4
+ delete input.email;
5
+ delete input.password;
6
+ const output = [];
7
+ for (const att in input) {
8
+ if (Object.prototype.hasOwnProperty.call(input, att)) {
9
+ output.push({ Name: att, Value: input[att] });
10
+ }
11
+ }
12
+ return output;
13
+ }
14
+ const buildAttributes = (data) => {
15
+ const attributes = {
16
+ name: data.givenName,
17
+ family_name: data.familyName,
18
+ };
19
+ return dictToAwsAttributes(attributes);
20
+ };
21
+ export class CognitoClient {
22
+ cognitoClient;
23
+ USER_POOL_ID;
24
+ USER_POOL_NO_SECRET_CLIENT_ID;
25
+ constructor(userPoolId, userPoolNoSecretClientId) {
26
+ this.cognitoClient = new CognitoIdentityProvider({});
27
+ this.USER_POOL_ID = userPoolId;
28
+ this.USER_POOL_NO_SECRET_CLIENT_ID = userPoolNoSecretClientId;
29
+ }
30
+ signupUser = async (data) => {
31
+ const params = {
32
+ ClientId: this.USER_POOL_NO_SECRET_CLIENT_ID,
33
+ Password: data.password,
34
+ Username: data.email,
35
+ UserAttributes: buildAttributes(data),
36
+ };
37
+ const cognitoResponse = await this.cognitoClient.signUp(params);
38
+ Logger.info('Successfully Registered User', { cognitoResponse });
39
+ return cognitoResponse;
40
+ };
41
+ forgotPassword = async (email) => {
42
+ await this.adminEmailVerify(email);
43
+ const params = {
44
+ ClientId: this.USER_POOL_NO_SECRET_CLIENT_ID,
45
+ Username: email,
46
+ };
47
+ const cognitoResponse = await this.cognitoClient.forgotPassword(params);
48
+ Logger.info('Sent Forgot Password', { cognitoResponse });
49
+ return cognitoResponse;
50
+ };
51
+ adminEmailVerify = async (email) => {
52
+ try {
53
+ const user = await this.getUserByEmail(email);
54
+ if (user && user?.UserStatus === 'CONFIRMED' && user?.email_verified !== 'true') {
55
+ await this.forceValidateEmail(email);
56
+ }
57
+ }
58
+ catch (error) {
59
+ Logger.error('Failed admin email verify', { error });
60
+ }
61
+ };
62
+ forceValidateEmail = async (email) => {
63
+ try {
64
+ const params = {
65
+ UserPoolId: this.USER_POOL_ID,
66
+ Username: email,
67
+ UserAttributes: [
68
+ {
69
+ Name: 'email_verified',
70
+ Value: 'true',
71
+ },
72
+ ],
73
+ };
74
+ await this.cognitoClient.adminUpdateUserAttributes(params);
75
+ }
76
+ catch (error) {
77
+ Logger.error('Failed force validate email', { email, error });
78
+ }
79
+ };
80
+ adminConfirmUser = async (data) => {
81
+ const params = {
82
+ UserPoolId: this.USER_POOL_ID,
83
+ Username: data.email,
84
+ };
85
+ const cognitoResponse = await this.cognitoClient.adminConfirmSignUp(params);
86
+ await this.forceValidateEmail(data.email);
87
+ Logger.info('Admin Successfully Confirmed User', { cognitoResponse });
88
+ return cognitoResponse;
89
+ };
90
+ confirmUser = async (data) => {
91
+ const params = {
92
+ ClientId: this.USER_POOL_NO_SECRET_CLIENT_ID,
93
+ ConfirmationCode: data.confirmationCode,
94
+ Username: data.email,
95
+ };
96
+ const cognitoResponse = await this.cognitoClient.confirmSignUp(params);
97
+ Logger.info('Successfully Confirmed User', { cognitoResponse });
98
+ return cognitoResponse;
99
+ };
100
+ resendCode = async (email) => {
101
+ const params = {
102
+ ClientId: this.USER_POOL_NO_SECRET_CLIENT_ID,
103
+ Username: email,
104
+ };
105
+ await this.cognitoClient.resendConfirmationCode(params);
106
+ Logger.info('Successfully Resend Confirmation Code', { email });
107
+ return;
108
+ };
109
+ adminDeleteUser = async (userId) => {
110
+ const params = {
111
+ UserPoolId: this.USER_POOL_ID,
112
+ Username: userId,
113
+ };
114
+ await this.cognitoClient.adminDeleteUser(params);
115
+ return true;
116
+ };
117
+ getUserByEmail = async (email) => {
118
+ const params = {
119
+ UserPoolId: this.USER_POOL_ID,
120
+ Filter: `email=\"${email}\"`,
121
+ Limit: 1,
122
+ };
123
+ const cognitoResponse = await this.cognitoClient.listUsers(params);
124
+ Logger.info('Get Users by Email', { cognitoResponse });
125
+ if (cognitoResponse?.Users && cognitoResponse?.Users.length > 0) {
126
+ const attributes = cognitoResponse.Users[0].Attributes;
127
+ const user = {
128
+ ...cognitoResponse.Users[0],
129
+ Attributes: undefined,
130
+ id: cognitoResponse.Users[0].sub,
131
+ };
132
+ attributes.forEach((attr) => {
133
+ user[attr.Name] = attr?.Value;
134
+ });
135
+ return user;
136
+ }
137
+ return null;
138
+ };
139
+ getUser = async (id) => {
140
+ const params = {
141
+ UserPoolId: this.USER_POOL_ID,
142
+ Username: id
143
+ };
144
+ const cognitoResponse = await this.cognitoClient.adminGetUser(params);
145
+ if (cognitoResponse) {
146
+ const attributes = cognitoResponse?.UserAttributes || [];
147
+ const user = {
148
+ ...cognitoResponse,
149
+ UserAttributes: undefined,
150
+ id: cognitoResponse.Username
151
+ };
152
+ attributes.forEach((attr) => {
153
+ user[attr.Name] = attr?.Value;
154
+ });
155
+ return user;
156
+ }
157
+ return null;
158
+ };
159
+ }
160
160
  //# sourceMappingURL=cognito-client.js.map
@@ -1,17 +1,17 @@
1
- export declare class DynamoDbClient {
2
- static safeGet: (tableName: string, keyName: string, keyValue: any) => Promise<Record<string, any> | null>;
3
- static safePut: (tableName: string, data: any) => Promise<import("@aws-sdk/lib-dynamodb").PutCommandOutput | null>;
4
- static safeDelete: (tableName: string, keyName: string, keyValue: any) => Promise<import("@aws-sdk/lib-dynamodb").DeleteCommandOutput | null>;
5
- static safeQueryByGSI: (tableName: string, gsiName: string, keyName: string, keyValue: any) => Promise<any[] | null>;
6
- static safeBatchGet: (tableName: string, keys: any) => Promise<Record<string, any>[]>;
7
- static safeBatchPut: (tableName: string, items: any[]) => Promise<import("@aws-sdk/lib-dynamodb").BatchWriteCommandOutput | null>;
8
- static queryAll: (params: any) => Promise<any[] | null>;
9
- static scanAll: (params: any) => Promise<any[] | null>;
10
- static batchGet: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").BatchGetCommandOutput>;
11
- static get: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").GetCommandOutput>;
12
- static put: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").PutCommandOutput>;
13
- static query: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").QueryCommandOutput>;
14
- static scan: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").ScanCommandOutput>;
15
- static update: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").UpdateCommandOutput>;
16
- static delete: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").DeleteCommandOutput>;
17
- }
1
+ export declare class DynamoDbClient {
2
+ static safeGet: (tableName: string, keyName: string, keyValue: any) => Promise<Record<string, any> | null>;
3
+ static safePut: (tableName: string, data: any) => Promise<import("@aws-sdk/lib-dynamodb").PutCommandOutput | null>;
4
+ static safeDelete: (tableName: string, keyName: string, keyValue: any) => Promise<import("@aws-sdk/lib-dynamodb").DeleteCommandOutput | null>;
5
+ static safeQueryByGSI: (tableName: string, gsiName: string, keyName: string, keyValue: any) => Promise<any[] | null>;
6
+ static safeBatchGet: (tableName: string, keys: any) => Promise<Record<string, any>[]>;
7
+ static safeBatchPut: (tableName: string, items: any[]) => Promise<import("@aws-sdk/lib-dynamodb").BatchWriteCommandOutput | null>;
8
+ static queryAll: (params: any) => Promise<any[] | null>;
9
+ static scanAll: (params: any) => Promise<any[] | null>;
10
+ static batchGet: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").BatchGetCommandOutput>;
11
+ static get: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").GetCommandOutput>;
12
+ static put: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").PutCommandOutput>;
13
+ static query: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").QueryCommandOutput>;
14
+ static scan: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").ScanCommandOutput>;
15
+ static update: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").UpdateCommandOutput>;
16
+ static delete: (params: any) => Promise<import("@aws-sdk/lib-dynamodb").DeleteCommandOutput>;
17
+ }