@adtrackify/at-service-common 3.1.25 → 3.1.27

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 (311) 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 +18 -18
  22. package/dist/cjs/clients/generic/redis-client.js +128 -128
  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 +20 -20
  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 +25 -25
  42. package/dist/cjs/clients/internal-api/identity-client.js +92 -92
  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/graphql-product-queries.d.ts +2 -2
  52. package/dist/cjs/clients/third-party/shopify/graphql-product-queries.js +5 -5
  53. package/dist/cjs/clients/third-party/shopify/shopify-graphql-client.d.ts +9 -9
  54. package/dist/cjs/clients/third-party/shopify/shopify-graphql-client.js +95 -95
  55. package/dist/cjs/clients/third-party/shopify-client.d.ts +198 -198
  56. package/dist/cjs/clients/third-party/shopify-client.js +150 -150
  57. package/dist/cjs/helpers/identity-cache-helper.d.ts +4 -4
  58. package/dist/cjs/helpers/identity-cache-helper.js +150 -150
  59. package/dist/cjs/helpers/index.d.ts +5 -5
  60. package/dist/cjs/helpers/index.js +21 -21
  61. package/dist/cjs/helpers/input-validation-helper.d.ts +3 -3
  62. package/dist/cjs/helpers/input-validation-helper.js +22 -22
  63. package/dist/cjs/helpers/logging-helper.d.ts +16 -16
  64. package/dist/cjs/helpers/logging-helper.js +84 -84
  65. package/dist/cjs/helpers/response-helper.d.ts +15 -15
  66. package/dist/cjs/helpers/response-helper.js +42 -42
  67. package/dist/cjs/helpers/shopify-helper.d.ts +9 -9
  68. package/dist/cjs/helpers/shopify-helper.js +28 -28
  69. package/dist/cjs/index.d.ts +5 -5
  70. package/dist/cjs/index.js +21 -21
  71. package/dist/cjs/libs/clickId-parser.d.ts +23 -23
  72. package/dist/cjs/libs/clickId-parser.js +49 -49
  73. package/dist/cjs/libs/compression.d.ts +2 -2
  74. package/dist/cjs/libs/compression.js +33 -33
  75. package/dist/cjs/libs/crypto.d.ts +1 -1
  76. package/dist/cjs/libs/crypto.js +12 -12
  77. package/dist/cjs/libs/dates.d.ts +6 -6
  78. package/dist/cjs/libs/dates.js +31 -31
  79. package/dist/cjs/libs/http-error.d.ts +21 -21
  80. package/dist/cjs/libs/http-error.js +59 -59
  81. package/dist/cjs/libs/http-status-codes.d.ts +58 -58
  82. package/dist/cjs/libs/http-status-codes.js +62 -62
  83. package/dist/cjs/libs/index.d.ts +9 -9
  84. package/dist/cjs/libs/index.js +25 -25
  85. package/dist/cjs/libs/referrer-parser/index.d.ts +2 -2
  86. package/dist/cjs/libs/referrer-parser/index.js +18 -18
  87. package/dist/cjs/libs/referrer-parser/referrer-data.d.ts +9 -9
  88. package/dist/cjs/libs/referrer-parser/referrer-data.js +4712 -4712
  89. package/dist/cjs/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  90. package/dist/cjs/libs/referrer-parser/referrer-parser-util.js +128 -128
  91. package/dist/cjs/libs/url.d.ts +1 -1
  92. package/dist/cjs/libs/url.js +13 -13
  93. package/dist/cjs/services/cache/generic-cached-object.d.ts +5 -0
  94. package/dist/cjs/services/cache/generic-cached-object.js +3 -0
  95. package/dist/cjs/services/cache/generic-cached-object.js.map +1 -0
  96. package/dist/cjs/services/cache/index.d.ts +1 -1
  97. package/dist/cjs/services/cache/index.js +17 -17
  98. package/dist/cjs/services/cache/product-cache-service.d.ts +17 -13
  99. package/dist/cjs/services/cache/product-cache-service.js +52 -36
  100. package/dist/cjs/services/cache/product-cache-service.js.map +1 -1
  101. package/dist/cjs/services/db/destinations-db-service.d.ts +9 -9
  102. package/dist/cjs/services/db/destinations-db-service.js +57 -57
  103. package/dist/cjs/services/db/identity-cache-db-service.d.ts +24 -24
  104. package/dist/cjs/services/db/identity-cache-db-service.js +233 -233
  105. package/dist/cjs/services/db/index.d.ts +7 -7
  106. package/dist/cjs/services/db/index.js +23 -23
  107. package/dist/cjs/services/db/log-events-db-service.d.ts +11 -11
  108. package/dist/cjs/services/db/log-events-db-service.js +172 -172
  109. package/dist/cjs/services/db/purchased-contacts-db-service.d.ts +9 -9
  110. package/dist/cjs/services/db/purchased-contacts-db-service.js +38 -38
  111. package/dist/cjs/services/db/shopify-app-installs-db-service.d.ts +7 -7
  112. package/dist/cjs/services/db/shopify-app-installs-db-service.js +47 -47
  113. package/dist/cjs/services/db/shopify-products-cache-db-service.d.ts +9 -9
  114. package/dist/cjs/services/db/shopify-products-cache-db-service.js +64 -64
  115. package/dist/cjs/services/db/tracking-events-db-service.d.ts +20 -20
  116. package/dist/cjs/services/db/tracking-events-db-service.js +162 -162
  117. package/dist/cjs/services/eventbridge-integration-service.d.ts +9 -9
  118. package/dist/cjs/services/eventbridge-integration-service.js +28 -28
  119. package/dist/cjs/services/generic-cache-service.d.ts +8 -8
  120. package/dist/cjs/services/generic-cache-service.js +30 -30
  121. package/dist/cjs/services/index.d.ts +8 -8
  122. package/dist/cjs/services/index.js +24 -24
  123. package/dist/cjs/services/ipdata-lookup-service.d.ts +17 -17
  124. package/dist/cjs/services/ipdata-lookup-service.js +71 -71
  125. package/dist/cjs/services/log-event-service.d.ts +9 -9
  126. package/dist/cjs/services/log-event-service.js +56 -56
  127. package/dist/cjs/services/metric-event-service.d.ts +9 -9
  128. package/dist/cjs/services/metric-event-service.js +49 -49
  129. package/dist/cjs/services/shopify/index.d.ts +3 -3
  130. package/dist/cjs/services/shopify/index.js +19 -19
  131. package/dist/cjs/services/shopify/products/index.d.ts +1 -1
  132. package/dist/cjs/services/shopify/products/index.js +17 -17
  133. package/dist/cjs/services/shopify/products/shopify-products-serviceV2.d.ts +12 -12
  134. package/dist/cjs/services/shopify/products/shopify-products-serviceV2.js +63 -66
  135. package/dist/cjs/services/shopify/products/shopify-products-serviceV2.js.map +1 -1
  136. package/dist/cjs/services/shopify/shopify-graphql-transformer.d.ts +8 -8
  137. package/dist/cjs/services/shopify/shopify-graphql-transformer.js +114 -114
  138. package/dist/cjs/services/shopify/types/index.d.ts +1 -1
  139. package/dist/cjs/services/shopify/types/index.js +17 -17
  140. package/dist/cjs/services/shopify/types/product.d.ts +114 -114
  141. package/dist/cjs/services/shopify/types/product.js +9 -9
  142. package/dist/cjs/types/api-response.d.ts +6 -6
  143. package/dist/cjs/types/api-response.js +2 -2
  144. package/dist/cjs/types/index.d.ts +2 -2
  145. package/dist/cjs/types/index.js +18 -18
  146. package/dist/cjs/types/internal-events/event-detail-types.d.ts +20 -20
  147. package/dist/cjs/types/internal-events/event-detail-types.js +27 -27
  148. package/dist/cjs/types/internal-events/index.d.ts +1 -1
  149. package/dist/cjs/types/internal-events/index.js +17 -17
  150. package/dist/cjs/types/shopify-graphql-types/admin.generated.d.ts +105 -105
  151. package/dist/cjs/types/shopify-graphql-types/admin.generated.js +2 -2
  152. package/dist/cjs/types/shopify-graphql-types/admin.types.d.ts +26289 -26289
  153. package/dist/cjs/types/shopify-graphql-types/admin.types.js +5311 -5311
  154. package/dist/cjs/types/shopify-graphql-types/index.d.ts +2 -2
  155. package/dist/cjs/types/shopify-graphql-types/index.js +18 -18
  156. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.d.ts +1 -1
  157. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.js +525 -525
  158. package/dist/esm/__tests__/libs/compress-decompress.spec.d.ts +1 -1
  159. package/dist/esm/__tests__/libs/compress-decompress.spec.js +14 -14
  160. package/dist/esm/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  161. package/dist/esm/__tests__/s3-client/s3-client.spec.js +24 -24
  162. package/dist/esm/clients/generic/cognito-client.d.ts +20 -20
  163. package/dist/esm/clients/generic/cognito-client.js +159 -159
  164. package/dist/esm/clients/generic/dynamodb-client.d.ts +17 -17
  165. package/dist/esm/clients/generic/dynamodb-client.js +163 -163
  166. package/dist/esm/clients/generic/eventbridge-client.d.ts +14 -14
  167. package/dist/esm/clients/generic/eventbridge-client.js +45 -45
  168. package/dist/esm/clients/generic/http-client.d.ts +88 -88
  169. package/dist/esm/clients/generic/http-client.js +52 -52
  170. package/dist/esm/clients/generic/index.d.ts +10 -10
  171. package/dist/esm/clients/generic/index.js +10 -10
  172. package/dist/esm/clients/generic/lambda-invoke-client.d.ts +10 -10
  173. package/dist/esm/clients/generic/lambda-invoke-client.js +31 -31
  174. package/dist/esm/clients/generic/location-client.d.ts +8 -8
  175. package/dist/esm/clients/generic/location-client.js +27 -27
  176. package/dist/esm/clients/generic/redis-client.d.ts +18 -18
  177. package/dist/esm/clients/generic/redis-client.js +121 -121
  178. package/dist/esm/clients/generic/s3-client.d.ts +16 -16
  179. package/dist/esm/clients/generic/s3-client.js +106 -106
  180. package/dist/esm/clients/generic/singlestore-db-client.d.ts +14 -14
  181. package/dist/esm/clients/generic/singlestore-db-client.js +40 -40
  182. package/dist/esm/clients/generic/sqs-client.d.ts +20 -20
  183. package/dist/esm/clients/generic/sqs-client.js +32 -32
  184. package/dist/esm/clients/index.d.ts +3 -3
  185. package/dist/esm/clients/index.js +3 -3
  186. package/dist/esm/clients/internal-api/accounts-client.d.ts +112 -112
  187. package/dist/esm/clients/internal-api/accounts-client.js +113 -113
  188. package/dist/esm/clients/internal-api/cache-lambda-client.d.ts +23 -23
  189. package/dist/esm/clients/internal-api/cache-lambda-client.js +55 -55
  190. package/dist/esm/clients/internal-api/db-management-client.d.ts +18 -18
  191. package/dist/esm/clients/internal-api/db-management-client.js +32 -32
  192. package/dist/esm/clients/internal-api/destinations-client.d.ts +29 -29
  193. package/dist/esm/clients/internal-api/destinations-client.js +50 -50
  194. package/dist/esm/clients/internal-api/event-collector-client.d.ts +20 -20
  195. package/dist/esm/clients/internal-api/event-collector-client.js +32 -32
  196. package/dist/esm/clients/internal-api/identity-client.d.ts +25 -25
  197. package/dist/esm/clients/internal-api/identity-client.js +88 -88
  198. package/dist/esm/clients/internal-api/index.d.ts +8 -8
  199. package/dist/esm/clients/internal-api/index.js +8 -8
  200. package/dist/esm/clients/internal-api/shopify-app-install-client.d.ts +34 -34
  201. package/dist/esm/clients/internal-api/shopify-app-install-client.js +56 -56
  202. package/dist/esm/clients/internal-api/users-auth-client.d.ts +31 -31
  203. package/dist/esm/clients/internal-api/users-auth-client.js +88 -88
  204. package/dist/esm/clients/third-party/index.d.ts +1 -1
  205. package/dist/esm/clients/third-party/index.js +1 -1
  206. package/dist/esm/clients/third-party/shopify/graphql-product-queries.d.ts +2 -2
  207. package/dist/esm/clients/third-party/shopify/graphql-product-queries.js +2 -2
  208. package/dist/esm/clients/third-party/shopify/shopify-graphql-client.d.ts +9 -9
  209. package/dist/esm/clients/third-party/shopify/shopify-graphql-client.js +91 -91
  210. package/dist/esm/clients/third-party/shopify-client.d.ts +198 -198
  211. package/dist/esm/clients/third-party/shopify-client.js +146 -146
  212. package/dist/esm/helpers/identity-cache-helper.d.ts +4 -4
  213. package/dist/esm/helpers/identity-cache-helper.js +145 -145
  214. package/dist/esm/helpers/index.d.ts +5 -5
  215. package/dist/esm/helpers/index.js +5 -5
  216. package/dist/esm/helpers/input-validation-helper.d.ts +3 -3
  217. package/dist/esm/helpers/input-validation-helper.js +18 -18
  218. package/dist/esm/helpers/logging-helper.d.ts +16 -16
  219. package/dist/esm/helpers/logging-helper.js +56 -56
  220. package/dist/esm/helpers/response-helper.d.ts +15 -15
  221. package/dist/esm/helpers/response-helper.js +36 -36
  222. package/dist/esm/helpers/shopify-helper.d.ts +9 -9
  223. package/dist/esm/helpers/shopify-helper.js +23 -23
  224. package/dist/esm/index.d.ts +5 -5
  225. package/dist/esm/index.js +5 -5
  226. package/dist/esm/libs/clickId-parser.d.ts +23 -23
  227. package/dist/esm/libs/clickId-parser.js +45 -45
  228. package/dist/esm/libs/compression.d.ts +2 -2
  229. package/dist/esm/libs/compression.js +25 -25
  230. package/dist/esm/libs/crypto.d.ts +1 -1
  231. package/dist/esm/libs/crypto.js +5 -5
  232. package/dist/esm/libs/dates.d.ts +6 -6
  233. package/dist/esm/libs/dates.js +22 -22
  234. package/dist/esm/libs/http-error.d.ts +21 -21
  235. package/dist/esm/libs/http-error.js +55 -55
  236. package/dist/esm/libs/http-status-codes.d.ts +58 -58
  237. package/dist/esm/libs/http-status-codes.js +59 -59
  238. package/dist/esm/libs/index.d.ts +9 -9
  239. package/dist/esm/libs/index.js +9 -9
  240. package/dist/esm/libs/referrer-parser/index.d.ts +2 -2
  241. package/dist/esm/libs/referrer-parser/index.js +2 -2
  242. package/dist/esm/libs/referrer-parser/referrer-data.d.ts +9 -9
  243. package/dist/esm/libs/referrer-parser/referrer-data.js +4709 -4709
  244. package/dist/esm/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  245. package/dist/esm/libs/referrer-parser/referrer-parser-util.js +121 -121
  246. package/dist/esm/libs/url.d.ts +1 -1
  247. package/dist/esm/libs/url.js +9 -9
  248. package/dist/esm/services/cache/generic-cached-object.d.ts +5 -0
  249. package/dist/esm/services/cache/generic-cached-object.js +2 -0
  250. package/dist/esm/services/cache/generic-cached-object.js.map +1 -0
  251. package/dist/esm/services/cache/index.d.ts +1 -1
  252. package/dist/esm/services/cache/index.js +1 -1
  253. package/dist/esm/services/cache/product-cache-service.d.ts +17 -13
  254. package/dist/esm/services/cache/product-cache-service.js +44 -32
  255. package/dist/esm/services/cache/product-cache-service.js.map +1 -1
  256. package/dist/esm/services/db/destinations-db-service.d.ts +9 -9
  257. package/dist/esm/services/db/destinations-db-service.js +53 -53
  258. package/dist/esm/services/db/identity-cache-db-service.d.ts +24 -24
  259. package/dist/esm/services/db/identity-cache-db-service.js +229 -229
  260. package/dist/esm/services/db/index.d.ts +7 -7
  261. package/dist/esm/services/db/index.js +7 -7
  262. package/dist/esm/services/db/log-events-db-service.d.ts +11 -11
  263. package/dist/esm/services/db/log-events-db-service.js +168 -168
  264. package/dist/esm/services/db/purchased-contacts-db-service.d.ts +9 -9
  265. package/dist/esm/services/db/purchased-contacts-db-service.js +34 -34
  266. package/dist/esm/services/db/shopify-app-installs-db-service.d.ts +7 -7
  267. package/dist/esm/services/db/shopify-app-installs-db-service.js +43 -43
  268. package/dist/esm/services/db/shopify-products-cache-db-service.d.ts +9 -9
  269. package/dist/esm/services/db/shopify-products-cache-db-service.js +60 -60
  270. package/dist/esm/services/db/tracking-events-db-service.d.ts +20 -20
  271. package/dist/esm/services/db/tracking-events-db-service.js +158 -158
  272. package/dist/esm/services/eventbridge-integration-service.d.ts +9 -9
  273. package/dist/esm/services/eventbridge-integration-service.js +24 -24
  274. package/dist/esm/services/generic-cache-service.d.ts +8 -8
  275. package/dist/esm/services/generic-cache-service.js +26 -26
  276. package/dist/esm/services/index.d.ts +8 -8
  277. package/dist/esm/services/index.js +8 -8
  278. package/dist/esm/services/ipdata-lookup-service.d.ts +17 -17
  279. package/dist/esm/services/ipdata-lookup-service.js +67 -67
  280. package/dist/esm/services/log-event-service.d.ts +9 -9
  281. package/dist/esm/services/log-event-service.js +52 -52
  282. package/dist/esm/services/metric-event-service.d.ts +9 -9
  283. package/dist/esm/services/metric-event-service.js +45 -45
  284. package/dist/esm/services/shopify/index.d.ts +3 -3
  285. package/dist/esm/services/shopify/index.js +3 -3
  286. package/dist/esm/services/shopify/products/index.d.ts +1 -1
  287. package/dist/esm/services/shopify/products/index.js +1 -1
  288. package/dist/esm/services/shopify/products/shopify-products-serviceV2.d.ts +12 -12
  289. package/dist/esm/services/shopify/products/shopify-products-serviceV2.js +59 -62
  290. package/dist/esm/services/shopify/products/shopify-products-serviceV2.js.map +1 -1
  291. package/dist/esm/services/shopify/shopify-graphql-transformer.d.ts +8 -8
  292. package/dist/esm/services/shopify/shopify-graphql-transformer.js +111 -111
  293. package/dist/esm/services/shopify/types/index.d.ts +1 -1
  294. package/dist/esm/services/shopify/types/index.js +1 -1
  295. package/dist/esm/services/shopify/types/product.d.ts +114 -114
  296. package/dist/esm/services/shopify/types/product.js +6 -6
  297. package/dist/esm/types/api-response.d.ts +6 -6
  298. package/dist/esm/types/api-response.js +1 -1
  299. package/dist/esm/types/index.d.ts +2 -2
  300. package/dist/esm/types/index.js +2 -2
  301. package/dist/esm/types/internal-events/event-detail-types.d.ts +20 -20
  302. package/dist/esm/types/internal-events/event-detail-types.js +24 -24
  303. package/dist/esm/types/internal-events/index.d.ts +1 -1
  304. package/dist/esm/types/internal-events/index.js +1 -1
  305. package/dist/esm/types/shopify-graphql-types/admin.generated.d.ts +105 -105
  306. package/dist/esm/types/shopify-graphql-types/admin.generated.js +1 -1
  307. package/dist/esm/types/shopify-graphql-types/admin.types.d.ts +26289 -26289
  308. package/dist/esm/types/shopify-graphql-types/admin.types.js +5299 -5299
  309. package/dist/esm/types/shopify-graphql-types/index.d.ts +2 -2
  310. package/dist/esm/types/shopify-graphql-types/index.js +2 -2
  311. package/package.json +1 -1
@@ -1,9 +1,9 @@
1
- export * from './eventbridge-integration-service.js';
2
- export * from './ipdata-lookup-service.js';
3
- export * from './log-event-service.js';
4
- export * from './metric-event-service.js';
5
- export * from './generic-cache-service.js';
6
- export * from './db';
7
- export * from './shopify';
8
- export * from './cache';
1
+ export * from './eventbridge-integration-service.js';
2
+ export * from './ipdata-lookup-service.js';
3
+ export * from './log-event-service.js';
4
+ export * from './metric-event-service.js';
5
+ export * from './generic-cache-service.js';
6
+ export * from './db';
7
+ export * from './shopify';
8
+ export * from './cache';
9
9
  //# sourceMappingURL=index.js.map
@@ -1,17 +1,17 @@
1
- import { IPDataResponse } from '@adtrackify/at-tracking-event-types';
2
- import { CacheLambdaClient } from '../clients';
3
- export interface IPLookupTableRecord {
4
- ipAddress: string;
5
- lookupResponse: IPDataResponse | null;
6
- createdAt: string;
7
- updatedAt: string;
8
- expiresAt?: number;
9
- }
10
- export declare class IpDataLookupService {
11
- private cacheLambdaFunctionArn;
12
- cacheLambdaClient: CacheLambdaClient;
13
- constructor(cacheLambdaFunctionArn: string);
14
- getLookupApi: (ipAddress: string) => Promise<IPDataResponse | null>;
15
- getIpCache: (ipAddress: string) => Promise<import("../clients").CacheRequestCommandResponse | undefined>;
16
- lookupIP: (ipAddress: string) => Promise<IPDataResponse | null>;
17
- }
1
+ import { IPDataResponse } from '@adtrackify/at-tracking-event-types';
2
+ import { CacheLambdaClient } from '../clients';
3
+ export interface IPLookupTableRecord {
4
+ ipAddress: string;
5
+ lookupResponse: IPDataResponse | null;
6
+ createdAt: string;
7
+ updatedAt: string;
8
+ expiresAt?: number;
9
+ }
10
+ export declare class IpDataLookupService {
11
+ private cacheLambdaFunctionArn;
12
+ cacheLambdaClient: CacheLambdaClient;
13
+ constructor(cacheLambdaFunctionArn: string);
14
+ getLookupApi: (ipAddress: string) => Promise<IPDataResponse | null>;
15
+ getIpCache: (ipAddress: string) => Promise<import("../clients").CacheRequestCommandResponse | undefined>;
16
+ lookupIP: (ipAddress: string) => Promise<IPDataResponse | null>;
17
+ }
@@ -1,68 +1,68 @@
1
- import { DateTime } from 'luxon';
2
- import { axiosHttpService, CacheLambdaClient } from '../clients';
3
- import { Logger } from '../helpers';
4
- import { getCurrentTimestamp } from '../libs';
5
- import { isIP } from 'net';
6
- const API_KEY = 'aae45f1e1f97ecf79bdc2bef3e96ef71961c4cb977c3085429b421bc';
7
- export class IpDataLookupService {
8
- cacheLambdaFunctionArn;
9
- cacheLambdaClient;
10
- constructor(cacheLambdaFunctionArn) {
11
- this.cacheLambdaFunctionArn = cacheLambdaFunctionArn;
12
- this.cacheLambdaClient = new CacheLambdaClient(cacheLambdaFunctionArn);
13
- }
14
- getLookupApi = async (ipAddress) => {
15
- try {
16
- const client = axiosHttpService();
17
- const url = `https://api.ipdata.co/${ipAddress}?api-key=${API_KEY}`;
18
- const res = await client.get(url);
19
- return res?.data;
20
- }
21
- catch (error) {
22
- Logger.error('IPData Lookup API Failed', { error });
23
- return null;
24
- }
25
- };
26
- getIpCache = async (ipAddress) => {
27
- return this.cacheLambdaClient.invokeGet(`ipdata-${ipAddress}`);
28
- };
29
- lookupIP = async (ipAddress) => {
30
- try {
31
- if (!ipAddress || isIP(ipAddress) === 0) {
32
- Logger.warn('Unable to lookup IP. Invalid Ip Address', { ipAddress });
33
- return null;
34
- }
35
- const cacheResponse = await this.getIpCache(ipAddress);
36
- const cachedResult = cacheResponse?.responseData;
37
- const cacheExpirationDate = DateTime.utc().minus({ days: 6 }).toJSDate().toISOString();
38
- if (cachedResult && cachedResult?.updatedAt > cacheExpirationDate) {
39
- return cachedResult.lookupResponse;
40
- }
41
- const lookupResponse = await this.getLookupApi(ipAddress);
42
- const expires = 60 * 60 * 24 * 15;
43
- let lookupTableRecord;
44
- if (cachedResult) {
45
- lookupTableRecord = {
46
- ...cachedResult,
47
- lookupResponse,
48
- updatedAt: getCurrentTimestamp(),
49
- };
50
- }
51
- else {
52
- lookupTableRecord = {
53
- ipAddress,
54
- lookupResponse,
55
- createdAt: getCurrentTimestamp(),
56
- updatedAt: getCurrentTimestamp()
57
- };
58
- }
59
- await this.cacheLambdaClient.invokeSet(`ipdata-${ipAddress}`, JSON.stringify(lookupTableRecord), expires);
60
- return lookupResponse;
61
- }
62
- catch (e) {
63
- Logger.error('Failed to lookup IP', { error: e });
64
- return null;
65
- }
66
- };
67
- }
1
+ import { DateTime } from 'luxon';
2
+ import { axiosHttpService, CacheLambdaClient } from '../clients';
3
+ import { Logger } from '../helpers';
4
+ import { getCurrentTimestamp } from '../libs';
5
+ import { isIP } from 'net';
6
+ const API_KEY = 'aae45f1e1f97ecf79bdc2bef3e96ef71961c4cb977c3085429b421bc';
7
+ export class IpDataLookupService {
8
+ cacheLambdaFunctionArn;
9
+ cacheLambdaClient;
10
+ constructor(cacheLambdaFunctionArn) {
11
+ this.cacheLambdaFunctionArn = cacheLambdaFunctionArn;
12
+ this.cacheLambdaClient = new CacheLambdaClient(cacheLambdaFunctionArn);
13
+ }
14
+ getLookupApi = async (ipAddress) => {
15
+ try {
16
+ const client = axiosHttpService();
17
+ const url = `https://api.ipdata.co/${ipAddress}?api-key=${API_KEY}`;
18
+ const res = await client.get(url);
19
+ return res?.data;
20
+ }
21
+ catch (error) {
22
+ Logger.error('IPData Lookup API Failed', { error });
23
+ return null;
24
+ }
25
+ };
26
+ getIpCache = async (ipAddress) => {
27
+ return this.cacheLambdaClient.invokeGet(`ipdata-${ipAddress}`);
28
+ };
29
+ lookupIP = async (ipAddress) => {
30
+ try {
31
+ if (!ipAddress || isIP(ipAddress) === 0) {
32
+ Logger.warn('Unable to lookup IP. Invalid Ip Address', { ipAddress });
33
+ return null;
34
+ }
35
+ const cacheResponse = await this.getIpCache(ipAddress);
36
+ const cachedResult = cacheResponse?.responseData;
37
+ const cacheExpirationDate = DateTime.utc().minus({ days: 6 }).toJSDate().toISOString();
38
+ if (cachedResult && cachedResult?.updatedAt > cacheExpirationDate) {
39
+ return cachedResult.lookupResponse;
40
+ }
41
+ const lookupResponse = await this.getLookupApi(ipAddress);
42
+ const expires = 60 * 60 * 24 * 15;
43
+ let lookupTableRecord;
44
+ if (cachedResult) {
45
+ lookupTableRecord = {
46
+ ...cachedResult,
47
+ lookupResponse,
48
+ updatedAt: getCurrentTimestamp(),
49
+ };
50
+ }
51
+ else {
52
+ lookupTableRecord = {
53
+ ipAddress,
54
+ lookupResponse,
55
+ createdAt: getCurrentTimestamp(),
56
+ updatedAt: getCurrentTimestamp()
57
+ };
58
+ }
59
+ await this.cacheLambdaClient.invokeSet(`ipdata-${ipAddress}`, JSON.stringify(lookupTableRecord), expires);
60
+ return lookupResponse;
61
+ }
62
+ catch (e) {
63
+ Logger.error('Failed to lookup IP', { error: e });
64
+ return null;
65
+ }
66
+ };
67
+ }
68
68
  //# sourceMappingURL=ipdata-lookup-service.js.map
@@ -1,9 +1,9 @@
1
- import { EventContext, LOG_EVENT_NAME, LogEvent, LogEventData, LogLevel, LogStorage } from '@adtrackify/at-tracking-event-types';
2
- export declare class LogEventService {
3
- private eventBridgeClient;
4
- private eventDetail;
5
- constructor(eventBusName: string);
6
- log: (source: string, pixelId: string, context: EventContext, logEventName: LOG_EVENT_NAME, logEventData: LogEventData, logId?: string) => Promise<void>;
7
- buildLogEvent: (pixelId: string, context: EventContext, logEventName: LOG_EVENT_NAME, logEventData: LogEventData, logId?: string) => LogEvent;
8
- buildLogEventData: (source: string, service: string, logLevel: LogLevel, message: string, logData?: any, logStorage?: LogStorage) => LogEventData;
9
- }
1
+ import { EventContext, LOG_EVENT_NAME, LogEvent, LogEventData, LogLevel, LogStorage } from '@adtrackify/at-tracking-event-types';
2
+ export declare class LogEventService {
3
+ private eventBridgeClient;
4
+ private eventDetail;
5
+ constructor(eventBusName: string);
6
+ log: (source: string, pixelId: string, context: EventContext, logEventName: LOG_EVENT_NAME, logEventData: LogEventData, logId?: string) => Promise<void>;
7
+ buildLogEvent: (pixelId: string, context: EventContext, logEventName: LOG_EVENT_NAME, logEventData: LogEventData, logId?: string) => LogEvent;
8
+ buildLogEventData: (source: string, service: string, logLevel: LogLevel, message: string, logData?: any, logStorage?: LogStorage) => LogEventData;
9
+ }
@@ -1,53 +1,53 @@
1
- import { INTERNAL_EVENT_TYPE } from '@adtrackify/at-tracking-event-types';
2
- import { EventBridgeClient } from '../clients';
3
- import { v4 as uuidv4 } from 'uuid';
4
- import { getCurrentTimestamp } from '../libs';
5
- const DEFAULT_LOG_STORAGE = {
6
- sendToDatadog: true,
7
- sendToEventDebugger: false,
8
- sendToSingleStore: false,
9
- };
10
- export class LogEventService {
11
- eventBridgeClient;
12
- eventDetail;
13
- constructor(eventBusName) {
14
- this.eventBridgeClient = new EventBridgeClient(eventBusName);
15
- this.eventDetail = 'incomingLogEvent';
16
- }
17
- log = async (source, pixelId, context, logEventName, logEventData, logId = uuidv4()) => {
18
- const logEvent = this.buildLogEvent(pixelId, context, logEventName, logEventData, logId);
19
- const eventData = {
20
- pixelId,
21
- logEvent
22
- };
23
- await this.eventBridgeClient.buildAndSendEvent(source, this.eventDetail, eventData);
24
- };
25
- buildLogEvent = (pixelId, context, logEventName, logEventData, logId = uuidv4()) => {
26
- const unixMsUtcTime = Date.now();
27
- const logEvent = {
28
- id: logId,
29
- pixelId,
30
- type: INTERNAL_EVENT_TYPE.LOG,
31
- name: logEventName,
32
- data: logEventData,
33
- version: '1.1.6',
34
- sentAtEpoch: unixMsUtcTime,
35
- collectedAt: getCurrentTimestamp(),
36
- source: 'server'
37
- };
38
- if (context)
39
- logEvent.context = context;
40
- return logEvent;
41
- };
42
- buildLogEventData = (source, service, logLevel, message, logData, logStorage = DEFAULT_LOG_STORAGE) => {
43
- return {
44
- source,
45
- service,
46
- logLevel,
47
- logMessage: message,
48
- ...logData,
49
- logStorage
50
- };
51
- };
52
- }
1
+ import { INTERNAL_EVENT_TYPE } from '@adtrackify/at-tracking-event-types';
2
+ import { EventBridgeClient } from '../clients';
3
+ import { v4 as uuidv4 } from 'uuid';
4
+ import { getCurrentTimestamp } from '../libs';
5
+ const DEFAULT_LOG_STORAGE = {
6
+ sendToDatadog: true,
7
+ sendToEventDebugger: false,
8
+ sendToSingleStore: false,
9
+ };
10
+ export class LogEventService {
11
+ eventBridgeClient;
12
+ eventDetail;
13
+ constructor(eventBusName) {
14
+ this.eventBridgeClient = new EventBridgeClient(eventBusName);
15
+ this.eventDetail = 'incomingLogEvent';
16
+ }
17
+ log = async (source, pixelId, context, logEventName, logEventData, logId = uuidv4()) => {
18
+ const logEvent = this.buildLogEvent(pixelId, context, logEventName, logEventData, logId);
19
+ const eventData = {
20
+ pixelId,
21
+ logEvent
22
+ };
23
+ await this.eventBridgeClient.buildAndSendEvent(source, this.eventDetail, eventData);
24
+ };
25
+ buildLogEvent = (pixelId, context, logEventName, logEventData, logId = uuidv4()) => {
26
+ const unixMsUtcTime = Date.now();
27
+ const logEvent = {
28
+ id: logId,
29
+ pixelId,
30
+ type: INTERNAL_EVENT_TYPE.LOG,
31
+ name: logEventName,
32
+ data: logEventData,
33
+ version: '1.1.6',
34
+ sentAtEpoch: unixMsUtcTime,
35
+ collectedAt: getCurrentTimestamp(),
36
+ source: 'server'
37
+ };
38
+ if (context)
39
+ logEvent.context = context;
40
+ return logEvent;
41
+ };
42
+ buildLogEventData = (source, service, logLevel, message, logData, logStorage = DEFAULT_LOG_STORAGE) => {
43
+ return {
44
+ source,
45
+ service,
46
+ logLevel,
47
+ logMessage: message,
48
+ ...logData,
49
+ logStorage
50
+ };
51
+ };
52
+ }
53
53
  //# sourceMappingURL=log-event-service.js.map
@@ -1,9 +1,9 @@
1
- import { EventContext, METRIC_EVENT_NAME, MetricEvent, MetricEventData } from '@adtrackify/at-tracking-event-types';
2
- export declare class MetricEventService {
3
- private eventBridgeClient;
4
- private eventDetail;
5
- constructor(eventBusName: string);
6
- metric: (source: string, pixelId: string, context: EventContext, metricName: METRIC_EVENT_NAME, metricData: MetricEventData[], metricId?: string) => Promise<void>;
7
- buildMetricEvent: (pixelId: string, context: EventContext, metricName: METRIC_EVENT_NAME, metricData: MetricEventData[], metricId?: string) => MetricEvent;
8
- buildMetricEventData: (recordName: string, recordValue: number, displayName: string, additionalMetricData?: {}) => MetricEventData;
9
- }
1
+ import { EventContext, METRIC_EVENT_NAME, MetricEvent, MetricEventData } from '@adtrackify/at-tracking-event-types';
2
+ export declare class MetricEventService {
3
+ private eventBridgeClient;
4
+ private eventDetail;
5
+ constructor(eventBusName: string);
6
+ metric: (source: string, pixelId: string, context: EventContext, metricName: METRIC_EVENT_NAME, metricData: MetricEventData[], metricId?: string) => Promise<void>;
7
+ buildMetricEvent: (pixelId: string, context: EventContext, metricName: METRIC_EVENT_NAME, metricData: MetricEventData[], metricId?: string) => MetricEvent;
8
+ buildMetricEventData: (recordName: string, recordValue: number, displayName: string, additionalMetricData?: {}) => MetricEventData;
9
+ }
@@ -1,46 +1,46 @@
1
- import { INTERNAL_EVENT_TYPE } from '@adtrackify/at-tracking-event-types';
2
- import { EventBridgeClient } from '../clients';
3
- import { v4 as uuidv4 } from 'uuid';
4
- import { getCurrentTimestamp } from '../libs';
5
- export class MetricEventService {
6
- eventBridgeClient;
7
- eventDetail;
8
- constructor(eventBusName) {
9
- this.eventBridgeClient = new EventBridgeClient(eventBusName);
10
- this.eventDetail = 'incomingMetricEvent';
11
- }
12
- metric = async (source, pixelId, context, metricName, metricData, metricId = uuidv4()) => {
13
- const metricEvent = this.buildMetricEvent(pixelId, context, metricName, metricData, metricId);
14
- const eventData = {
15
- pixelId,
16
- metricEvent
17
- };
18
- await this.eventBridgeClient.buildAndSendEvent(source, this.eventDetail, eventData);
19
- };
20
- buildMetricEvent = (pixelId, context, metricName, metricData, metricId = uuidv4()) => {
21
- const unixMsUtcTime = Date.now();
22
- const metricEvent = {
23
- id: metricId,
24
- type: INTERNAL_EVENT_TYPE.METRIC,
25
- name: metricName,
26
- pixelId,
27
- data: metricData,
28
- version: '1.1.6',
29
- sentAtEpoch: unixMsUtcTime,
30
- collectedAt: getCurrentTimestamp()
31
- };
32
- if (context)
33
- metricEvent.context = context;
34
- return metricEvent;
35
- };
36
- buildMetricEventData = (recordName, recordValue, displayName, additionalMetricData = {}) => {
37
- return {
38
- recordId: uuidv4(),
39
- recordName,
40
- recordValue,
41
- displayName,
42
- ...additionalMetricData,
43
- };
44
- };
45
- }
1
+ import { INTERNAL_EVENT_TYPE } from '@adtrackify/at-tracking-event-types';
2
+ import { EventBridgeClient } from '../clients';
3
+ import { v4 as uuidv4 } from 'uuid';
4
+ import { getCurrentTimestamp } from '../libs';
5
+ export class MetricEventService {
6
+ eventBridgeClient;
7
+ eventDetail;
8
+ constructor(eventBusName) {
9
+ this.eventBridgeClient = new EventBridgeClient(eventBusName);
10
+ this.eventDetail = 'incomingMetricEvent';
11
+ }
12
+ metric = async (source, pixelId, context, metricName, metricData, metricId = uuidv4()) => {
13
+ const metricEvent = this.buildMetricEvent(pixelId, context, metricName, metricData, metricId);
14
+ const eventData = {
15
+ pixelId,
16
+ metricEvent
17
+ };
18
+ await this.eventBridgeClient.buildAndSendEvent(source, this.eventDetail, eventData);
19
+ };
20
+ buildMetricEvent = (pixelId, context, metricName, metricData, metricId = uuidv4()) => {
21
+ const unixMsUtcTime = Date.now();
22
+ const metricEvent = {
23
+ id: metricId,
24
+ type: INTERNAL_EVENT_TYPE.METRIC,
25
+ name: metricName,
26
+ pixelId,
27
+ data: metricData,
28
+ version: '1.1.6',
29
+ sentAtEpoch: unixMsUtcTime,
30
+ collectedAt: getCurrentTimestamp()
31
+ };
32
+ if (context)
33
+ metricEvent.context = context;
34
+ return metricEvent;
35
+ };
36
+ buildMetricEventData = (recordName, recordValue, displayName, additionalMetricData = {}) => {
37
+ return {
38
+ recordId: uuidv4(),
39
+ recordName,
40
+ recordValue,
41
+ displayName,
42
+ ...additionalMetricData,
43
+ };
44
+ };
45
+ }
46
46
  //# sourceMappingURL=metric-event-service.js.map
@@ -1,3 +1,3 @@
1
- export * from './products';
2
- export * from './types';
3
- export * from './shopify-graphql-transformer.js';
1
+ export * from './products';
2
+ export * from './types';
3
+ export * from './shopify-graphql-transformer.js';
@@ -1,4 +1,4 @@
1
- export * from './products';
2
- export * from './types';
3
- export * from './shopify-graphql-transformer.js';
1
+ export * from './products';
2
+ export * from './types';
3
+ export * from './shopify-graphql-transformer.js';
4
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- export * from './shopify-products-serviceV2.js';
1
+ export * from './shopify-products-serviceV2.js';
@@ -1,2 +1,2 @@
1
- export * from './shopify-products-serviceV2.js';
1
+ export * from './shopify-products-serviceV2.js';
2
2
  //# sourceMappingURL=index.js.map
@@ -1,12 +1,12 @@
1
- import { InternalProduct } from '../types/product';
2
- import { GetProductQuery } from '../../../types';
3
- import { ClientResponse } from '@shopify/admin-api-client';
4
- export interface GetShopifyProductResponse extends ClientResponse<GetProductQuery> {
5
- transformedProduct?: InternalProduct;
6
- }
7
- export declare class ShopifyProductsServiceV2 {
8
- private productCacheService;
9
- constructor(cacheLambdaFunctionArn: string);
10
- getShopifyProduct: (pixelId: string, shop: string, accessToken: string, productId: string, useCache?: boolean, updateCache?: boolean) => Promise<GetShopifyProductResponse | null>;
11
- private getShopifyProductFromAPI;
12
- }
1
+ import { InternalProduct } from '../types/product';
2
+ import { GetProductQuery } from '../../../types';
3
+ import { ClientResponse } from '@shopify/admin-api-client';
4
+ export interface GetShopifyProductResponse extends ClientResponse<GetProductQuery> {
5
+ transformedProduct?: InternalProduct;
6
+ }
7
+ export declare class ShopifyProductsServiceV2 {
8
+ private productCacheService;
9
+ constructor(cacheLambdaFunctionArn: string);
10
+ getShopifyProduct: (pixelId: string, shop: string, accessToken: string, productId: string, useCache?: boolean, updateCache?: boolean) => Promise<GetShopifyProductResponse | null>;
11
+ private getShopifyProductFromAPI;
12
+ }
@@ -1,63 +1,60 @@
1
- import { Logger } from '../../../helpers';
2
- import { ProductCacheService } from '../../cache/product-cache-service';
3
- import { ShopifyGraphQLTransformer } from '../shopify-graphql-transformer';
4
- import { ShopifyGraphQLClient } from '../../../clients/third-party/shopify/shopify-graphql-client';
5
- export class ShopifyProductsServiceV2 {
6
- productCacheService;
7
- constructor(cacheLambdaFunctionArn) {
8
- this.productCacheService = new ProductCacheService(cacheLambdaFunctionArn);
9
- }
10
- getShopifyProduct = async (pixelId, shop, accessToken, productId, useCache = true, updateCache = true) => {
11
- try {
12
- let getShopifyProductResponse = {};
13
- if (useCache) {
14
- const product = await this.productCacheService.getProductFromCache(pixelId, productId);
15
- if (product) {
16
- Logger.debug('getShopifyProduct: Product found in cache', { pixelId, shop, productId, product });
17
- getShopifyProductResponse.transformedProduct = product;
18
- return getShopifyProductResponse;
19
- }
20
- }
21
- getShopifyProductResponse = await this.getShopifyProductFromAPI(pixelId, shop, accessToken, productId, true);
22
- if (getShopifyProductResponse?.transformedProduct && updateCache) {
23
- const product = getShopifyProductResponse.transformedProduct;
24
- Logger.debug('getShopifyProduct: Product found in ShopifyAPI, putting in cache', { pixelId, productId, product });
25
- await this.productCacheService.putProductInCache(pixelId, productId, product);
26
- }
27
- if (!getShopifyProductResponse?.transformedProduct) {
28
- Logger.error('getShopifyProduct: Product not found in ShopifyAPI or cache', { pixelId, shop, productId });
29
- }
30
- Logger.debug('getShopifyProduct: Returning product', { pixelId, shop, productId, product: getShopifyProductResponse?.transformedProduct });
31
- return getShopifyProductResponse;
32
- }
33
- catch (error) {
34
- Logger.error('getShopifyProduct: Failed getShopifyProductWithCachingGraphQL', { error });
35
- return null;
36
- }
37
- };
38
- getShopifyProductFromAPI = async (pixelId, shop, accessToken, productId, useTransformer = true) => {
39
- try {
40
- const response = await ShopifyGraphQLClient.getProductWithVariantsGraphQL(shop, accessToken, productId, 100);
41
- const getShopifyProductResponse = response;
42
- if (response?.data?.product) {
43
- const product = response.data.product;
44
- Logger.debug('getShopifyProductFromAPI: Product found in ShopifyAPI', { pixelId, shop, productId, product });
45
- if (useTransformer) {
46
- const transformedProduct = ShopifyGraphQLTransformer.transformToInternalProduct(product);
47
- getShopifyProductResponse.transformedProduct = transformedProduct;
48
- Logger.info('getShopifyProductFromAPI: Product transformed', { pixelId, shop, productId, transformedProduct: getShopifyProductResponse.transformedProduct });
49
- }
50
- return getShopifyProductResponse;
51
- }
52
- else {
53
- Logger.error('getShopifyProductFromAPI: Product not found in ShopifyAPI', { pixelId, shop, productId });
54
- return getShopifyProductResponse;
55
- }
56
- }
57
- catch (error) {
58
- Logger.error('getShopifyProductFromAPI: Failed getShopifyProductFromAPI', { e: error, pixelId, shop, accessToken, productId, useTransformer, error });
59
- return null;
60
- }
61
- };
62
- }
1
+ import { Logger } from '../../../helpers';
2
+ import { ProductCacheService } from '../../cache/product-cache-service';
3
+ import { ShopifyGraphQLTransformer } from '../shopify-graphql-transformer';
4
+ import { ShopifyGraphQLClient } from '../../../clients/third-party/shopify/shopify-graphql-client';
5
+ export class ShopifyProductsServiceV2 {
6
+ productCacheService;
7
+ constructor(cacheLambdaFunctionArn) {
8
+ this.productCacheService = new ProductCacheService(cacheLambdaFunctionArn);
9
+ }
10
+ getShopifyProduct = async (pixelId, shop, accessToken, productId, useCache = true, updateCache = true) => {
11
+ try {
12
+ let getShopifyProductResponse = {};
13
+ if (useCache) {
14
+ const product = await this.productCacheService.getProductFromCache(pixelId, productId);
15
+ if (product) {
16
+ Logger.debug('getShopifyProduct: Product found in cache', { pixelId, shop, productId, product });
17
+ getShopifyProductResponse.transformedProduct = product;
18
+ return getShopifyProductResponse;
19
+ }
20
+ }
21
+ getShopifyProductResponse = await this.getShopifyProductFromAPI(pixelId, shop, accessToken, productId, true);
22
+ if (getShopifyProductResponse?.transformedProduct && updateCache) {
23
+ const product = getShopifyProductResponse.transformedProduct;
24
+ Logger.debug('getShopifyProduct: Product found in ShopifyAPI, putting in cache', { pixelId, productId, product });
25
+ await this.productCacheService.putProductInCache(pixelId, productId, product);
26
+ }
27
+ Logger.debug('getShopifyProduct: Returning product', { pixelId, shop, productId, product: getShopifyProductResponse?.transformedProduct });
28
+ return getShopifyProductResponse;
29
+ }
30
+ catch (error) {
31
+ Logger.error('getShopifyProduct: Failed getShopifyProductWithCachingGraphQL', { error });
32
+ return null;
33
+ }
34
+ };
35
+ getShopifyProductFromAPI = async (pixelId, shop, accessToken, productId, useTransformer = true) => {
36
+ try {
37
+ const response = await ShopifyGraphQLClient.getProductWithVariantsGraphQL(shop, accessToken, productId, 100);
38
+ const getShopifyProductResponse = response;
39
+ if (response?.data?.product) {
40
+ const product = response.data.product;
41
+ Logger.debug('getShopifyProductFromAPI: Product found in ShopifyAPI', { pixelId, shop, productId, product });
42
+ if (useTransformer) {
43
+ const transformedProduct = ShopifyGraphQLTransformer.transformToInternalProduct(product);
44
+ getShopifyProductResponse.transformedProduct = transformedProduct;
45
+ Logger.debug('getShopifyProductFromAPI: Product transformed', { pixelId, shop, productId, transformedProduct: getShopifyProductResponse.transformedProduct });
46
+ }
47
+ return getShopifyProductResponse;
48
+ }
49
+ else {
50
+ Logger.error('getShopifyProductFromAPI: Product ShopifyAPI error', { pixelId, shop, productId, error: response?.errors });
51
+ return getShopifyProductResponse;
52
+ }
53
+ }
54
+ catch (error) {
55
+ Logger.error('getShopifyProductFromAPI: Failed getShopifyProductFromAPI', { e: error, pixelId, shop, accessToken, productId, useTransformer, error });
56
+ return null;
57
+ }
58
+ };
59
+ }
63
60
  //# sourceMappingURL=shopify-products-serviceV2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shopify-products-serviceV2.js","sourceRoot":"","sources":["../../../../../src/services/shopify/products/shopify-products-serviceV2.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shopify-products-serviceV2.js","sourceRoot":"","sources":["../../../../../src/services/shopify/products/shopify-products-serviceV2.ts"],"names":[],"mappings":"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"}