@adtrackify/at-service-common 3.5.15 → 3.5.17

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 (401) hide show
  1. package/dist/cjs/__tests__/helpers/account-users-helper.spec.d.ts +1 -1
  2. package/dist/cjs/__tests__/helpers/account-users-helper.spec.js +200 -200
  3. package/dist/cjs/__tests__/identity-cache/identity-cache-db-service.spec.d.ts +1 -1
  4. package/dist/cjs/__tests__/identity-cache/identity-cache-db-service.spec.js +674 -674
  5. package/dist/cjs/__tests__/identity-cache/trait-merging-and-staleness.spec.d.ts +1 -1
  6. package/dist/cjs/__tests__/identity-cache/trait-merging-and-staleness.spec.js +586 -586
  7. package/dist/cjs/__tests__/libs/compress-decompress.spec.d.ts +1 -1
  8. package/dist/cjs/__tests__/libs/compress-decompress.spec.js +16 -16
  9. package/dist/cjs/__tests__/libs/currency.spec.d.ts +1 -1
  10. package/dist/cjs/__tests__/libs/currency.spec.js +220 -220
  11. package/dist/cjs/__tests__/libs/dates.spec.d.ts +1 -1
  12. package/dist/cjs/__tests__/libs/dates.spec.js +132 -132
  13. package/dist/cjs/__tests__/libs/domain.spec.d.ts +1 -1
  14. package/dist/cjs/__tests__/libs/domain.spec.js +107 -107
  15. package/dist/cjs/__tests__/libs/numbers.spec.d.ts +1 -1
  16. package/dist/cjs/__tests__/libs/numbers.spec.js +261 -261
  17. package/dist/cjs/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  18. package/dist/cjs/__tests__/s3-client/s3-client.spec.js +26 -26
  19. package/dist/cjs/__tests__/shopify/shopify-graphql-transformer.spec.d.ts +1 -1
  20. package/dist/cjs/__tests__/shopify/shopify-graphql-transformer.spec.js +35 -35
  21. package/dist/cjs/clients/generic/cognito-client.d.ts +23 -23
  22. package/dist/cjs/clients/generic/cognito-client.js +209 -209
  23. package/dist/cjs/clients/generic/dynamodb-client.d.ts +17 -17
  24. package/dist/cjs/clients/generic/dynamodb-client.js +170 -170
  25. package/dist/cjs/clients/generic/eventbridge-client.d.ts +14 -14
  26. package/dist/cjs/clients/generic/eventbridge-client.js +49 -49
  27. package/dist/cjs/clients/generic/http-client.d.ts +14 -14
  28. package/dist/cjs/clients/generic/http-client.js +61 -61
  29. package/dist/cjs/clients/generic/index.d.ts +10 -10
  30. package/dist/cjs/clients/generic/index.js +26 -26
  31. package/dist/cjs/clients/generic/lambda-invoke-client.d.ts +10 -10
  32. package/dist/cjs/clients/generic/lambda-invoke-client.js +35 -35
  33. package/dist/cjs/clients/generic/location-client.d.ts +8 -8
  34. package/dist/cjs/clients/generic/location-client.js +31 -31
  35. package/dist/cjs/clients/generic/redis-client.d.ts +18 -18
  36. package/dist/cjs/clients/generic/redis-client.js +128 -128
  37. package/dist/cjs/clients/generic/s3-client.d.ts +23 -23
  38. package/dist/cjs/clients/generic/s3-client.js +198 -198
  39. package/dist/cjs/clients/generic/singlestore-db-client.d.ts +14 -14
  40. package/dist/cjs/clients/generic/singlestore-db-client.js +67 -67
  41. package/dist/cjs/clients/generic/sqs-client.d.ts +20 -20
  42. package/dist/cjs/clients/generic/sqs-client.js +36 -36
  43. package/dist/cjs/clients/index.d.ts +3 -3
  44. package/dist/cjs/clients/index.js +19 -19
  45. package/dist/cjs/clients/internal-api/accounts-client.d.ts +83 -83
  46. package/dist/cjs/clients/internal-api/accounts-client.js +107 -107
  47. package/dist/cjs/clients/internal-api/cache-lambda-client.d.ts +25 -25
  48. package/dist/cjs/clients/internal-api/cache-lambda-client.js +79 -79
  49. package/dist/cjs/clients/internal-api/db-management-client.d.ts +18 -18
  50. package/dist/cjs/clients/internal-api/db-management-client.js +36 -36
  51. package/dist/cjs/clients/internal-api/destinations-client.d.ts +27 -27
  52. package/dist/cjs/clients/internal-api/destinations-client.js +51 -51
  53. package/dist/cjs/clients/internal-api/event-collector-client.d.ts +20 -20
  54. package/dist/cjs/clients/internal-api/event-collector-client.js +36 -36
  55. package/dist/cjs/clients/internal-api/identity-client.d.ts +31 -31
  56. package/dist/cjs/clients/internal-api/identity-client.js +83 -83
  57. package/dist/cjs/clients/internal-api/index.d.ts +9 -9
  58. package/dist/cjs/clients/internal-api/index.js +25 -25
  59. package/dist/cjs/clients/internal-api/shopify-app-install-client.d.ts +36 -36
  60. package/dist/cjs/clients/internal-api/shopify-app-install-client.js +68 -68
  61. package/dist/cjs/clients/internal-api/subscriptions-client.d.ts +23 -23
  62. package/dist/cjs/clients/internal-api/subscriptions-client.js +58 -58
  63. package/dist/cjs/clients/internal-api/users-auth-client.d.ts +35 -35
  64. package/dist/cjs/clients/internal-api/users-auth-client.js +110 -110
  65. package/dist/cjs/clients/third-party/emailable-client.d.ts +7 -7
  66. package/dist/cjs/clients/third-party/emailable-client.js +25 -25
  67. package/dist/cjs/clients/third-party/exchange-rate-api-client.d.ts +17 -17
  68. package/dist/cjs/clients/third-party/exchange-rate-api-client.js +19 -19
  69. package/dist/cjs/clients/third-party/index.d.ts +2 -2
  70. package/dist/cjs/clients/third-party/index.js +18 -18
  71. package/dist/cjs/clients/third-party/shopify/graphql-product-queries.d.ts +2 -2
  72. package/dist/cjs/clients/third-party/shopify/graphql-product-queries.js +180 -180
  73. package/dist/cjs/clients/third-party/shopify/shopify-graphql-client.d.ts +9 -9
  74. package/dist/cjs/clients/third-party/shopify/shopify-graphql-client.js +95 -95
  75. package/dist/cjs/clients/third-party/shopify-client.d.ts +29 -29
  76. package/dist/cjs/clients/third-party/shopify-client.js +144 -144
  77. package/dist/cjs/helpers/account-users-helper.d.ts +2 -2
  78. package/dist/cjs/helpers/account-users-helper.js +22 -22
  79. package/dist/cjs/helpers/identity-cache-helper.d.ts +21 -21
  80. package/dist/cjs/helpers/identity-cache-helper.js +157 -157
  81. package/dist/cjs/helpers/index.d.ts +6 -6
  82. package/dist/cjs/helpers/index.js +22 -22
  83. package/dist/cjs/helpers/input-validation-helper.d.ts +3 -3
  84. package/dist/cjs/helpers/input-validation-helper.js +22 -22
  85. package/dist/cjs/helpers/logging-helper.d.ts +16 -16
  86. package/dist/cjs/helpers/logging-helper.js +84 -84
  87. package/dist/cjs/helpers/response-helper.d.ts +18 -18
  88. package/dist/cjs/helpers/response-helper.js +43 -43
  89. package/dist/cjs/helpers/shopify-helper.d.ts +9 -9
  90. package/dist/cjs/helpers/shopify-helper.js +28 -28
  91. package/dist/cjs/index.d.ts +5 -5
  92. package/dist/cjs/index.js +21 -21
  93. package/dist/cjs/libs/click-id-parser.d.ts +23 -23
  94. package/dist/cjs/libs/click-id-parser.js +49 -49
  95. package/dist/cjs/libs/compression.d.ts +2 -2
  96. package/dist/cjs/libs/compression.js +33 -33
  97. package/dist/cjs/libs/cookie.d.ts +12 -12
  98. package/dist/cjs/libs/cookie.js +68 -68
  99. package/dist/cjs/libs/crypto.d.ts +2 -2
  100. package/dist/cjs/libs/crypto.js +16 -16
  101. package/dist/cjs/libs/csv.d.ts +2 -2
  102. package/dist/cjs/libs/csv.js +35 -35
  103. package/dist/cjs/libs/currency.d.ts +1 -1
  104. package/dist/cjs/libs/currency.js +24 -24
  105. package/dist/cjs/libs/dates.d.ts +12 -12
  106. package/dist/cjs/libs/dates.js +96 -96
  107. package/dist/cjs/libs/domain.d.ts +2 -2
  108. package/dist/cjs/libs/domain.js +38 -38
  109. package/dist/cjs/libs/http-error.d.ts +21 -21
  110. package/dist/cjs/libs/http-error.js +59 -59
  111. package/dist/cjs/libs/http-status-codes.d.ts +58 -58
  112. package/dist/cjs/libs/http-status-codes.js +62 -62
  113. package/dist/cjs/libs/index.d.ts +16 -16
  114. package/dist/cjs/libs/index.js +32 -32
  115. package/dist/cjs/libs/numbers.d.ts +1 -1
  116. package/dist/cjs/libs/numbers.js +15 -15
  117. package/dist/cjs/libs/referrer-parser/index.d.ts +2 -2
  118. package/dist/cjs/libs/referrer-parser/index.js +18 -18
  119. package/dist/cjs/libs/referrer-parser/referrer-data.d.ts +9 -9
  120. package/dist/cjs/libs/referrer-parser/referrer-data.js +4712 -4712
  121. package/dist/cjs/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  122. package/dist/cjs/libs/referrer-parser/referrer-parser-util.js +128 -128
  123. package/dist/cjs/libs/strings.d.ts +3 -3
  124. package/dist/cjs/libs/strings.js +46 -46
  125. package/dist/cjs/libs/traits.d.ts +2 -2
  126. package/dist/cjs/libs/traits.js +21 -21
  127. package/dist/cjs/libs/url.d.ts +1 -1
  128. package/dist/cjs/libs/url.js +13 -13
  129. package/dist/cjs/services/cache/generic-cached-object.d.ts +5 -5
  130. package/dist/cjs/services/cache/generic-cached-object.js +2 -2
  131. package/dist/cjs/services/cache/index.d.ts +1 -1
  132. package/dist/cjs/services/cache/index.js +17 -17
  133. package/dist/cjs/services/cache/product-cache-service.d.ts +21 -21
  134. package/dist/cjs/services/cache/product-cache-service.js +68 -68
  135. package/dist/cjs/services/currency-exchange-rate-lookup-service.d.ts +11 -11
  136. package/dist/cjs/services/currency-exchange-rate-lookup-service.js +50 -50
  137. package/dist/cjs/services/db/currency-exchange-rates-db-service.d.ts +21 -21
  138. package/dist/cjs/services/db/currency-exchange-rates-db-service.js +39 -39
  139. package/dist/cjs/services/db/destinations-db-service.d.ts +11 -10
  140. package/dist/cjs/services/db/destinations-db-service.js +64 -61
  141. package/dist/cjs/services/db/destinations-db-service.js.map +1 -1
  142. package/dist/cjs/services/db/identity-cache-db-service.d.ts +28 -28
  143. package/dist/cjs/services/db/identity-cache-db-service.js +278 -278
  144. package/dist/cjs/services/db/index.d.ts +9 -9
  145. package/dist/cjs/services/db/index.js +25 -25
  146. package/dist/cjs/services/db/log-events-db-service.d.ts +11 -11
  147. package/dist/cjs/services/db/log-events-db-service.js +172 -172
  148. package/dist/cjs/services/db/purchasable-contacts-db-service.d.ts +9 -9
  149. package/dist/cjs/services/db/purchasable-contacts-db-service.js +43 -43
  150. package/dist/cjs/services/db/purchased-contacts-db-service.d.ts +17 -11
  151. package/dist/cjs/services/db/purchased-contacts-db-service.js +143 -68
  152. package/dist/cjs/services/db/purchased-contacts-db-service.js.map +1 -1
  153. package/dist/cjs/services/db/shopify-app-installs-db-service.d.ts +7 -7
  154. package/dist/cjs/services/db/shopify-app-installs-db-service.js +47 -47
  155. package/dist/cjs/services/db/shopify-products-cache-db-service.d.ts +16 -16
  156. package/dist/cjs/services/db/shopify-products-cache-db-service.js +65 -65
  157. package/dist/cjs/services/db/tracking-events-db-service.d.ts +20 -20
  158. package/dist/cjs/services/db/tracking-events-db-service.js +162 -162
  159. package/dist/cjs/services/eventbridge-integration-service.d.ts +9 -9
  160. package/dist/cjs/services/eventbridge-integration-service.js +28 -28
  161. package/dist/cjs/services/events/index.d.ts +3 -3
  162. package/dist/cjs/services/events/index.js +19 -19
  163. package/dist/cjs/services/events/log-event-service.d.ts +9 -9
  164. package/dist/cjs/services/events/log-event-service.js +56 -56
  165. package/dist/cjs/services/events/metric-event-service.d.ts +9 -9
  166. package/dist/cjs/services/events/metric-event-service.js +49 -49
  167. package/dist/cjs/services/events/tracking-event-sqs-service.d.ts +8 -8
  168. package/dist/cjs/services/events/tracking-event-sqs-service.js +29 -29
  169. package/dist/cjs/services/generic-cache-service.d.ts +7 -7
  170. package/dist/cjs/services/generic-cache-service.js +33 -33
  171. package/dist/cjs/services/index.d.ts +8 -8
  172. package/dist/cjs/services/index.js +24 -24
  173. package/dist/cjs/services/ipdata-lookup-service.d.ts +19 -19
  174. package/dist/cjs/services/ipdata-lookup-service.js +77 -77
  175. package/dist/cjs/services/shopify/index.d.ts +3 -3
  176. package/dist/cjs/services/shopify/index.js +19 -19
  177. package/dist/cjs/services/shopify/products/index.d.ts +1 -1
  178. package/dist/cjs/services/shopify/products/index.js +17 -17
  179. package/dist/cjs/services/shopify/products/shopify-products-serviceV2.d.ts +17 -17
  180. package/dist/cjs/services/shopify/products/shopify-products-serviceV2.js +103 -103
  181. package/dist/cjs/services/shopify/shopify-graphql-transformer.d.ts +9 -9
  182. package/dist/cjs/services/shopify/shopify-graphql-transformer.js +137 -137
  183. package/dist/cjs/services/shopify/types/index.d.ts +1 -1
  184. package/dist/cjs/services/shopify/types/index.js +17 -17
  185. package/dist/cjs/services/shopify/types/product.d.ts +115 -115
  186. package/dist/cjs/services/shopify/types/product.js +9 -9
  187. package/dist/cjs/types/api-response.d.ts +6 -6
  188. package/dist/cjs/types/api-response.js +2 -2
  189. package/dist/cjs/types/index.d.ts +2 -2
  190. package/dist/cjs/types/index.js +18 -18
  191. package/dist/cjs/types/internal-events/event-detail-types.d.ts +20 -20
  192. package/dist/cjs/types/internal-events/event-detail-types.js +27 -27
  193. package/dist/cjs/types/internal-events/index.d.ts +1 -1
  194. package/dist/cjs/types/internal-events/index.js +17 -17
  195. package/dist/cjs/types/shopify-graphql-types/admin.generated.d.ts +105 -105
  196. package/dist/cjs/types/shopify-graphql-types/admin.generated.js +2 -2
  197. package/dist/cjs/types/shopify-graphql-types/admin.types.d.ts +26289 -26289
  198. package/dist/cjs/types/shopify-graphql-types/admin.types.js +5311 -5311
  199. package/dist/cjs/types/shopify-graphql-types/index.d.ts +2 -2
  200. package/dist/cjs/types/shopify-graphql-types/index.js +18 -18
  201. package/dist/esm/__tests__/helpers/account-users-helper.spec.d.ts +1 -1
  202. package/dist/esm/__tests__/helpers/account-users-helper.spec.js +198 -198
  203. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.d.ts +1 -1
  204. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.js +672 -672
  205. package/dist/esm/__tests__/identity-cache/trait-merging-and-staleness.spec.d.ts +1 -1
  206. package/dist/esm/__tests__/identity-cache/trait-merging-and-staleness.spec.js +584 -584
  207. package/dist/esm/__tests__/libs/compress-decompress.spec.d.ts +1 -1
  208. package/dist/esm/__tests__/libs/compress-decompress.spec.js +14 -14
  209. package/dist/esm/__tests__/libs/currency.spec.d.ts +1 -1
  210. package/dist/esm/__tests__/libs/currency.spec.js +218 -218
  211. package/dist/esm/__tests__/libs/dates.spec.d.ts +1 -1
  212. package/dist/esm/__tests__/libs/dates.spec.js +130 -130
  213. package/dist/esm/__tests__/libs/domain.spec.d.ts +1 -1
  214. package/dist/esm/__tests__/libs/domain.spec.js +105 -105
  215. package/dist/esm/__tests__/libs/numbers.spec.d.ts +1 -1
  216. package/dist/esm/__tests__/libs/numbers.spec.js +259 -259
  217. package/dist/esm/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  218. package/dist/esm/__tests__/s3-client/s3-client.spec.js +24 -24
  219. package/dist/esm/__tests__/shopify/shopify-graphql-transformer.spec.d.ts +1 -1
  220. package/dist/esm/__tests__/shopify/shopify-graphql-transformer.spec.js +33 -33
  221. package/dist/esm/clients/generic/cognito-client.d.ts +23 -23
  222. package/dist/esm/clients/generic/cognito-client.js +204 -204
  223. package/dist/esm/clients/generic/dynamodb-client.d.ts +17 -17
  224. package/dist/esm/clients/generic/dynamodb-client.js +166 -166
  225. package/dist/esm/clients/generic/eventbridge-client.d.ts +14 -14
  226. package/dist/esm/clients/generic/eventbridge-client.js +45 -45
  227. package/dist/esm/clients/generic/http-client.d.ts +14 -14
  228. package/dist/esm/clients/generic/http-client.js +53 -53
  229. package/dist/esm/clients/generic/index.d.ts +10 -10
  230. package/dist/esm/clients/generic/index.js +10 -10
  231. package/dist/esm/clients/generic/lambda-invoke-client.d.ts +10 -10
  232. package/dist/esm/clients/generic/lambda-invoke-client.js +31 -31
  233. package/dist/esm/clients/generic/location-client.d.ts +8 -8
  234. package/dist/esm/clients/generic/location-client.js +27 -27
  235. package/dist/esm/clients/generic/redis-client.d.ts +18 -18
  236. package/dist/esm/clients/generic/redis-client.js +121 -121
  237. package/dist/esm/clients/generic/s3-client.d.ts +23 -23
  238. package/dist/esm/clients/generic/s3-client.js +191 -191
  239. package/dist/esm/clients/generic/singlestore-db-client.d.ts +14 -14
  240. package/dist/esm/clients/generic/singlestore-db-client.js +40 -40
  241. package/dist/esm/clients/generic/sqs-client.d.ts +20 -20
  242. package/dist/esm/clients/generic/sqs-client.js +32 -32
  243. package/dist/esm/clients/index.d.ts +3 -3
  244. package/dist/esm/clients/index.js +3 -3
  245. package/dist/esm/clients/internal-api/accounts-client.d.ts +83 -83
  246. package/dist/esm/clients/internal-api/accounts-client.js +103 -103
  247. package/dist/esm/clients/internal-api/cache-lambda-client.d.ts +25 -25
  248. package/dist/esm/clients/internal-api/cache-lambda-client.js +75 -75
  249. package/dist/esm/clients/internal-api/db-management-client.d.ts +18 -18
  250. package/dist/esm/clients/internal-api/db-management-client.js +32 -32
  251. package/dist/esm/clients/internal-api/destinations-client.d.ts +27 -27
  252. package/dist/esm/clients/internal-api/destinations-client.js +47 -47
  253. package/dist/esm/clients/internal-api/event-collector-client.d.ts +20 -20
  254. package/dist/esm/clients/internal-api/event-collector-client.js +32 -32
  255. package/dist/esm/clients/internal-api/identity-client.d.ts +31 -31
  256. package/dist/esm/clients/internal-api/identity-client.js +79 -79
  257. package/dist/esm/clients/internal-api/index.d.ts +9 -9
  258. package/dist/esm/clients/internal-api/index.js +9 -9
  259. package/dist/esm/clients/internal-api/shopify-app-install-client.d.ts +36 -36
  260. package/dist/esm/clients/internal-api/shopify-app-install-client.js +64 -64
  261. package/dist/esm/clients/internal-api/subscriptions-client.d.ts +23 -23
  262. package/dist/esm/clients/internal-api/subscriptions-client.js +54 -54
  263. package/dist/esm/clients/internal-api/users-auth-client.d.ts +35 -35
  264. package/dist/esm/clients/internal-api/users-auth-client.js +106 -106
  265. package/dist/esm/clients/third-party/emailable-client.d.ts +7 -7
  266. package/dist/esm/clients/third-party/emailable-client.js +21 -21
  267. package/dist/esm/clients/third-party/exchange-rate-api-client.d.ts +17 -17
  268. package/dist/esm/clients/third-party/exchange-rate-api-client.js +15 -15
  269. package/dist/esm/clients/third-party/index.d.ts +2 -2
  270. package/dist/esm/clients/third-party/index.js +2 -2
  271. package/dist/esm/clients/third-party/shopify/graphql-product-queries.d.ts +2 -2
  272. package/dist/esm/clients/third-party/shopify/graphql-product-queries.js +177 -177
  273. package/dist/esm/clients/third-party/shopify/shopify-graphql-client.d.ts +9 -9
  274. package/dist/esm/clients/third-party/shopify/shopify-graphql-client.js +91 -91
  275. package/dist/esm/clients/third-party/shopify-client.d.ts +29 -29
  276. package/dist/esm/clients/third-party/shopify-client.js +140 -140
  277. package/dist/esm/helpers/account-users-helper.d.ts +2 -2
  278. package/dist/esm/helpers/account-users-helper.js +18 -18
  279. package/dist/esm/helpers/identity-cache-helper.d.ts +21 -21
  280. package/dist/esm/helpers/identity-cache-helper.js +152 -152
  281. package/dist/esm/helpers/index.d.ts +6 -6
  282. package/dist/esm/helpers/index.js +6 -6
  283. package/dist/esm/helpers/input-validation-helper.d.ts +3 -3
  284. package/dist/esm/helpers/input-validation-helper.js +18 -18
  285. package/dist/esm/helpers/logging-helper.d.ts +16 -16
  286. package/dist/esm/helpers/logging-helper.js +56 -56
  287. package/dist/esm/helpers/response-helper.d.ts +18 -18
  288. package/dist/esm/helpers/response-helper.js +37 -37
  289. package/dist/esm/helpers/shopify-helper.d.ts +9 -9
  290. package/dist/esm/helpers/shopify-helper.js +23 -23
  291. package/dist/esm/index.d.ts +5 -5
  292. package/dist/esm/index.js +5 -5
  293. package/dist/esm/libs/click-id-parser.d.ts +23 -23
  294. package/dist/esm/libs/click-id-parser.js +45 -45
  295. package/dist/esm/libs/compression.d.ts +2 -2
  296. package/dist/esm/libs/compression.js +25 -25
  297. package/dist/esm/libs/cookie.d.ts +12 -12
  298. package/dist/esm/libs/cookie.js +62 -62
  299. package/dist/esm/libs/crypto.d.ts +2 -2
  300. package/dist/esm/libs/crypto.js +8 -8
  301. package/dist/esm/libs/csv.d.ts +2 -2
  302. package/dist/esm/libs/csv.js +30 -30
  303. package/dist/esm/libs/currency.d.ts +1 -1
  304. package/dist/esm/libs/currency.js +17 -17
  305. package/dist/esm/libs/dates.d.ts +12 -12
  306. package/dist/esm/libs/dates.js +83 -83
  307. package/dist/esm/libs/domain.d.ts +2 -2
  308. package/dist/esm/libs/domain.js +33 -33
  309. package/dist/esm/libs/http-error.d.ts +21 -21
  310. package/dist/esm/libs/http-error.js +55 -55
  311. package/dist/esm/libs/http-status-codes.d.ts +58 -58
  312. package/dist/esm/libs/http-status-codes.js +59 -59
  313. package/dist/esm/libs/index.d.ts +16 -16
  314. package/dist/esm/libs/index.js +16 -16
  315. package/dist/esm/libs/numbers.d.ts +1 -1
  316. package/dist/esm/libs/numbers.js +11 -11
  317. package/dist/esm/libs/referrer-parser/index.d.ts +2 -2
  318. package/dist/esm/libs/referrer-parser/index.js +2 -2
  319. package/dist/esm/libs/referrer-parser/referrer-data.d.ts +9 -9
  320. package/dist/esm/libs/referrer-parser/referrer-data.js +4709 -4709
  321. package/dist/esm/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  322. package/dist/esm/libs/referrer-parser/referrer-parser-util.js +121 -121
  323. package/dist/esm/libs/strings.d.ts +3 -3
  324. package/dist/esm/libs/strings.js +40 -40
  325. package/dist/esm/libs/traits.d.ts +2 -2
  326. package/dist/esm/libs/traits.js +14 -14
  327. package/dist/esm/libs/url.d.ts +1 -1
  328. package/dist/esm/libs/url.js +9 -9
  329. package/dist/esm/services/cache/generic-cached-object.d.ts +5 -5
  330. package/dist/esm/services/cache/generic-cached-object.js +1 -1
  331. package/dist/esm/services/cache/index.d.ts +1 -1
  332. package/dist/esm/services/cache/index.js +1 -1
  333. package/dist/esm/services/cache/product-cache-service.d.ts +21 -21
  334. package/dist/esm/services/cache/product-cache-service.js +60 -60
  335. package/dist/esm/services/currency-exchange-rate-lookup-service.d.ts +11 -11
  336. package/dist/esm/services/currency-exchange-rate-lookup-service.js +46 -46
  337. package/dist/esm/services/db/currency-exchange-rates-db-service.d.ts +21 -21
  338. package/dist/esm/services/db/currency-exchange-rates-db-service.js +35 -35
  339. package/dist/esm/services/db/destinations-db-service.d.ts +11 -10
  340. package/dist/esm/services/db/destinations-db-service.js +60 -57
  341. package/dist/esm/services/db/destinations-db-service.js.map +1 -1
  342. package/dist/esm/services/db/identity-cache-db-service.d.ts +28 -28
  343. package/dist/esm/services/db/identity-cache-db-service.js +271 -271
  344. package/dist/esm/services/db/index.d.ts +9 -9
  345. package/dist/esm/services/db/index.js +9 -9
  346. package/dist/esm/services/db/log-events-db-service.d.ts +11 -11
  347. package/dist/esm/services/db/log-events-db-service.js +168 -168
  348. package/dist/esm/services/db/purchasable-contacts-db-service.d.ts +9 -9
  349. package/dist/esm/services/db/purchasable-contacts-db-service.js +39 -39
  350. package/dist/esm/services/db/purchased-contacts-db-service.d.ts +17 -11
  351. package/dist/esm/services/db/purchased-contacts-db-service.js +139 -64
  352. package/dist/esm/services/db/purchased-contacts-db-service.js.map +1 -1
  353. package/dist/esm/services/db/shopify-app-installs-db-service.d.ts +7 -7
  354. package/dist/esm/services/db/shopify-app-installs-db-service.js +43 -43
  355. package/dist/esm/services/db/shopify-products-cache-db-service.d.ts +16 -16
  356. package/dist/esm/services/db/shopify-products-cache-db-service.js +58 -58
  357. package/dist/esm/services/db/tracking-events-db-service.d.ts +20 -20
  358. package/dist/esm/services/db/tracking-events-db-service.js +158 -158
  359. package/dist/esm/services/eventbridge-integration-service.d.ts +9 -9
  360. package/dist/esm/services/eventbridge-integration-service.js +24 -24
  361. package/dist/esm/services/events/index.d.ts +3 -3
  362. package/dist/esm/services/events/index.js +3 -3
  363. package/dist/esm/services/events/log-event-service.d.ts +9 -9
  364. package/dist/esm/services/events/log-event-service.js +52 -52
  365. package/dist/esm/services/events/metric-event-service.d.ts +9 -9
  366. package/dist/esm/services/events/metric-event-service.js +45 -45
  367. package/dist/esm/services/events/tracking-event-sqs-service.d.ts +8 -8
  368. package/dist/esm/services/events/tracking-event-sqs-service.js +25 -25
  369. package/dist/esm/services/generic-cache-service.d.ts +7 -7
  370. package/dist/esm/services/generic-cache-service.js +29 -29
  371. package/dist/esm/services/index.d.ts +8 -8
  372. package/dist/esm/services/index.js +8 -8
  373. package/dist/esm/services/ipdata-lookup-service.d.ts +19 -19
  374. package/dist/esm/services/ipdata-lookup-service.js +73 -73
  375. package/dist/esm/services/shopify/index.d.ts +3 -3
  376. package/dist/esm/services/shopify/index.js +3 -3
  377. package/dist/esm/services/shopify/products/index.d.ts +1 -1
  378. package/dist/esm/services/shopify/products/index.js +1 -1
  379. package/dist/esm/services/shopify/products/shopify-products-serviceV2.d.ts +17 -17
  380. package/dist/esm/services/shopify/products/shopify-products-serviceV2.js +99 -99
  381. package/dist/esm/services/shopify/shopify-graphql-transformer.d.ts +9 -9
  382. package/dist/esm/services/shopify/shopify-graphql-transformer.js +134 -134
  383. package/dist/esm/services/shopify/types/index.d.ts +1 -1
  384. package/dist/esm/services/shopify/types/index.js +1 -1
  385. package/dist/esm/services/shopify/types/product.d.ts +115 -115
  386. package/dist/esm/services/shopify/types/product.js +6 -6
  387. package/dist/esm/types/api-response.d.ts +6 -6
  388. package/dist/esm/types/api-response.js +1 -1
  389. package/dist/esm/types/index.d.ts +2 -2
  390. package/dist/esm/types/index.js +2 -2
  391. package/dist/esm/types/internal-events/event-detail-types.d.ts +20 -20
  392. package/dist/esm/types/internal-events/event-detail-types.js +24 -24
  393. package/dist/esm/types/internal-events/index.d.ts +1 -1
  394. package/dist/esm/types/internal-events/index.js +1 -1
  395. package/dist/esm/types/shopify-graphql-types/admin.generated.d.ts +105 -105
  396. package/dist/esm/types/shopify-graphql-types/admin.generated.js +1 -1
  397. package/dist/esm/types/shopify-graphql-types/admin.types.d.ts +26289 -26289
  398. package/dist/esm/types/shopify-graphql-types/admin.types.js +5299 -5299
  399. package/dist/esm/types/shopify-graphql-types/index.d.ts +2 -2
  400. package/dist/esm/types/shopify-graphql-types/index.js +2 -2
  401. package/package.json +130 -130
@@ -1,8 +1,8 @@
1
- import { TrackingEvent } from '@adtrackify/at-tracking-event-types';
2
- export declare class TrackingEventSqsService {
3
- private region;
4
- private awsAccountId;
5
- private sqsClient;
6
- constructor(region: string, awsAccountId: string, trackEventCollectQueueName: string);
7
- sendTrackingEventSqsMessage: (trackingEvent: TrackingEvent) => Promise<boolean>;
8
- }
1
+ import { TrackingEvent } from '@adtrackify/at-tracking-event-types';
2
+ export declare class TrackingEventSqsService {
3
+ private region;
4
+ private awsAccountId;
5
+ private sqsClient;
6
+ constructor(region: string, awsAccountId: string, trackEventCollectQueueName: string);
7
+ sendTrackingEventSqsMessage: (trackingEvent: TrackingEvent) => Promise<boolean>;
8
+ }
@@ -1,26 +1,26 @@
1
- import { SQSClient } from '../../clients';
2
- import { Logger } from '../../helpers';
3
- export class TrackingEventSqsService {
4
- region;
5
- awsAccountId;
6
- sqsClient;
7
- constructor(region, awsAccountId, trackEventCollectQueueName) {
8
- this.region = region;
9
- this.awsAccountId = awsAccountId;
10
- this.sqsClient = new SQSClient(region, awsAccountId, trackEventCollectQueueName);
11
- }
12
- sendTrackingEventSqsMessage = async (trackingEvent) => {
13
- try {
14
- const pixelId = trackingEvent.pixelId;
15
- const eventPayload = { pixelId, trackingEvent };
16
- Logger.debug('Sending tracking event to sqs', { eventPayload });
17
- await this.sqsClient.sendMessage(eventPayload);
18
- return true;
19
- }
20
- catch (error) {
21
- Logger.error('Failed to send tracking event to sqs', { error, region: this.region, awsAccountId: this.awsAccountId, trackingEvent });
22
- return false;
23
- }
24
- };
25
- }
1
+ import { SQSClient } from '../../clients';
2
+ import { Logger } from '../../helpers';
3
+ export class TrackingEventSqsService {
4
+ region;
5
+ awsAccountId;
6
+ sqsClient;
7
+ constructor(region, awsAccountId, trackEventCollectQueueName) {
8
+ this.region = region;
9
+ this.awsAccountId = awsAccountId;
10
+ this.sqsClient = new SQSClient(region, awsAccountId, trackEventCollectQueueName);
11
+ }
12
+ sendTrackingEventSqsMessage = async (trackingEvent) => {
13
+ try {
14
+ const pixelId = trackingEvent.pixelId;
15
+ const eventPayload = { pixelId, trackingEvent };
16
+ Logger.debug('Sending tracking event to sqs', { eventPayload });
17
+ await this.sqsClient.sendMessage(eventPayload);
18
+ return true;
19
+ }
20
+ catch (error) {
21
+ Logger.error('Failed to send tracking event to sqs', { error, region: this.region, awsAccountId: this.awsAccountId, trackingEvent });
22
+ return false;
23
+ }
24
+ };
25
+ }
26
26
  //# sourceMappingURL=tracking-event-sqs-service.js.map
@@ -1,7 +1,7 @@
1
- export declare class GenericCacheService {
2
- private cacheLambdaClient;
3
- constructor(cacheLambdaFunctionArn: string);
4
- getCachedData: <T>(cacheKey: string) => Promise<T | undefined>;
5
- putCachedData: <T>(cacheKey: string, data: T, ttlInSeconds?: number) => Promise<void>;
6
- deleteCachedData: (cacheKey: string) => Promise<void>;
7
- }
1
+ export declare class GenericCacheService {
2
+ private cacheLambdaClient;
3
+ constructor(cacheLambdaFunctionArn: string);
4
+ getCachedData: <T>(cacheKey: string) => Promise<T | undefined>;
5
+ putCachedData: <T>(cacheKey: string, data: T, ttlInSeconds?: number) => Promise<void>;
6
+ deleteCachedData: (cacheKey: string) => Promise<void>;
7
+ }
@@ -1,30 +1,30 @@
1
- import { CacheLambdaClient } from '../clients';
2
- import { Logger } from '../helpers';
3
- export class GenericCacheService {
4
- cacheLambdaClient;
5
- constructor(cacheLambdaFunctionArn) {
6
- this.cacheLambdaClient = new CacheLambdaClient(cacheLambdaFunctionArn);
7
- }
8
- getCachedData = async (cacheKey) => {
9
- const start = performance.now();
10
- const cacheResponse = await this.cacheLambdaClient.invokeGet(cacheKey);
11
- const end = performance.now();
12
- Logger.debug('getCachedData', { cacheKey, cacheResponse, duration: end - start });
13
- if (cacheResponse && cacheResponse.responseData) {
14
- return cacheResponse.responseData;
15
- }
16
- return undefined;
17
- };
18
- putCachedData = async (cacheKey, data, ttlInSeconds) => {
19
- if (ttlInSeconds) {
20
- await this.cacheLambdaClient.invokeSet(cacheKey, JSON.stringify(data), ttlInSeconds);
21
- }
22
- else {
23
- await this.cacheLambdaClient.invokeSet(cacheKey, JSON.stringify(data));
24
- }
25
- };
26
- deleteCachedData = async (cacheKey) => {
27
- await this.cacheLambdaClient.invokeDelete(cacheKey);
28
- };
29
- }
1
+ import { CacheLambdaClient } from '../clients';
2
+ import { Logger } from '../helpers';
3
+ export class GenericCacheService {
4
+ cacheLambdaClient;
5
+ constructor(cacheLambdaFunctionArn) {
6
+ this.cacheLambdaClient = new CacheLambdaClient(cacheLambdaFunctionArn);
7
+ }
8
+ getCachedData = async (cacheKey) => {
9
+ const start = performance.now();
10
+ const cacheResponse = await this.cacheLambdaClient.invokeGet(cacheKey);
11
+ const end = performance.now();
12
+ Logger.debug('getCachedData', { cacheKey, cacheResponse, duration: end - start });
13
+ if (cacheResponse && cacheResponse.responseData) {
14
+ return cacheResponse.responseData;
15
+ }
16
+ return undefined;
17
+ };
18
+ putCachedData = async (cacheKey, data, ttlInSeconds) => {
19
+ if (ttlInSeconds) {
20
+ await this.cacheLambdaClient.invokeSet(cacheKey, JSON.stringify(data), ttlInSeconds);
21
+ }
22
+ else {
23
+ await this.cacheLambdaClient.invokeSet(cacheKey, JSON.stringify(data));
24
+ }
25
+ };
26
+ deleteCachedData = async (cacheKey) => {
27
+ await this.cacheLambdaClient.invokeDelete(cacheKey);
28
+ };
29
+ }
30
30
  //# sourceMappingURL=generic-cache-service.js.map
@@ -1,8 +1,8 @@
1
- export * from './eventbridge-integration-service.js';
2
- export * from './ipdata-lookup-service.js';
3
- export * from './generic-cache-service.js';
4
- export * from './currency-exchange-rate-lookup-service.js';
5
- export * from './db';
6
- export * from './shopify';
7
- export * from './cache';
8
- export * from './events';
1
+ export * from './eventbridge-integration-service.js';
2
+ export * from './ipdata-lookup-service.js';
3
+ export * from './generic-cache-service.js';
4
+ export * from './currency-exchange-rate-lookup-service.js';
5
+ export * from './db';
6
+ export * from './shopify';
7
+ export * from './cache';
8
+ export * from './events';
@@ -1,9 +1,9 @@
1
- export * from './eventbridge-integration-service.js';
2
- export * from './ipdata-lookup-service.js';
3
- export * from './generic-cache-service.js';
4
- export * from './currency-exchange-rate-lookup-service.js';
5
- export * from './db';
6
- export * from './shopify';
7
- export * from './cache';
8
- export * from './events';
1
+ export * from './eventbridge-integration-service.js';
2
+ export * from './ipdata-lookup-service.js';
3
+ export * from './generic-cache-service.js';
4
+ export * from './currency-exchange-rate-lookup-service.js';
5
+ export * from './db';
6
+ export * from './shopify';
7
+ export * from './cache';
8
+ export * from './events';
9
9
  //# sourceMappingURL=index.js.map
@@ -1,19 +1,19 @@
1
- import { IPDataResponse } from '@adtrackify/at-tracking-event-types';
2
- import { GenericHttpClient } 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
- private cacheLambdaClient;
13
- client: GenericHttpClient;
14
- constructor(cacheLambdaFunctionArn: string);
15
- private getClient;
16
- getLookupApi: (ipAddress: string) => Promise<IPDataResponse | null>;
17
- getIpCache: (ipAddress: string) => Promise<import("../clients").CacheRequestCommandResponse | undefined>;
18
- lookupIP: (ipAddress: string) => Promise<IPDataResponse | null>;
19
- }
1
+ import { IPDataResponse } from '@adtrackify/at-tracking-event-types';
2
+ import { GenericHttpClient } 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
+ private cacheLambdaClient;
13
+ client: GenericHttpClient;
14
+ constructor(cacheLambdaFunctionArn: string);
15
+ private getClient;
16
+ getLookupApi: (ipAddress: string) => Promise<IPDataResponse | null>;
17
+ getIpCache: (ipAddress: string) => Promise<import("../clients").CacheRequestCommandResponse | undefined>;
18
+ lookupIP: (ipAddress: string) => Promise<IPDataResponse | null>;
19
+ }
@@ -1,74 +1,74 @@
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
- client;
11
- constructor(cacheLambdaFunctionArn) {
12
- this.cacheLambdaFunctionArn = cacheLambdaFunctionArn;
13
- this.cacheLambdaClient = new CacheLambdaClient(cacheLambdaFunctionArn);
14
- this.client = axiosHttpService();
15
- }
16
- getClient = () => {
17
- this.client = this.client ?? axiosHttpService();
18
- return this.client;
19
- };
20
- getLookupApi = async (ipAddress) => {
21
- try {
22
- const client = this.getClient();
23
- const url = `https://api.ipdata.co/${ipAddress}?api-key=${API_KEY}`;
24
- const res = await client.get(url);
25
- return res?.data;
26
- }
27
- catch (error) {
28
- Logger.error('IPData Lookup API Failed', { error });
29
- return null;
30
- }
31
- };
32
- getIpCache = async (ipAddress) => {
33
- return this.cacheLambdaClient.invokeGet(`ipdata-${ipAddress}`);
34
- };
35
- lookupIP = async (ipAddress) => {
36
- try {
37
- if (!ipAddress || isIP(ipAddress) === 0) {
38
- Logger.warn('Unable to lookup IP. Invalid Ip Address', { ipAddress });
39
- return null;
40
- }
41
- const cacheResponse = await this.getIpCache(ipAddress);
42
- const cachedResult = cacheResponse?.responseData;
43
- const cacheExpirationDate = DateTime.utc().minus({ days: 6 }).toJSDate().toISOString();
44
- if (cachedResult && cachedResult?.updatedAt > cacheExpirationDate) {
45
- return cachedResult.lookupResponse;
46
- }
47
- const lookupResponse = await this.getLookupApi(ipAddress);
48
- const expires = 60 * 60 * 24 * 15;
49
- let lookupTableRecord;
50
- if (cachedResult) {
51
- lookupTableRecord = {
52
- ...cachedResult,
53
- lookupResponse,
54
- updatedAt: getCurrentTimestamp(),
55
- };
56
- }
57
- else {
58
- lookupTableRecord = {
59
- ipAddress,
60
- lookupResponse,
61
- createdAt: getCurrentTimestamp(),
62
- updatedAt: getCurrentTimestamp()
63
- };
64
- }
65
- await this.cacheLambdaClient.invokeSet(`ipdata-${ipAddress}`, JSON.stringify(lookupTableRecord), expires);
66
- return lookupResponse;
67
- }
68
- catch (e) {
69
- Logger.error('Failed to lookup IP', { error: e });
70
- return null;
71
- }
72
- };
73
- }
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
+ client;
11
+ constructor(cacheLambdaFunctionArn) {
12
+ this.cacheLambdaFunctionArn = cacheLambdaFunctionArn;
13
+ this.cacheLambdaClient = new CacheLambdaClient(cacheLambdaFunctionArn);
14
+ this.client = axiosHttpService();
15
+ }
16
+ getClient = () => {
17
+ this.client = this.client ?? axiosHttpService();
18
+ return this.client;
19
+ };
20
+ getLookupApi = async (ipAddress) => {
21
+ try {
22
+ const client = this.getClient();
23
+ const url = `https://api.ipdata.co/${ipAddress}?api-key=${API_KEY}`;
24
+ const res = await client.get(url);
25
+ return res?.data;
26
+ }
27
+ catch (error) {
28
+ Logger.error('IPData Lookup API Failed', { error });
29
+ return null;
30
+ }
31
+ };
32
+ getIpCache = async (ipAddress) => {
33
+ return this.cacheLambdaClient.invokeGet(`ipdata-${ipAddress}`);
34
+ };
35
+ lookupIP = async (ipAddress) => {
36
+ try {
37
+ if (!ipAddress || isIP(ipAddress) === 0) {
38
+ Logger.warn('Unable to lookup IP. Invalid Ip Address', { ipAddress });
39
+ return null;
40
+ }
41
+ const cacheResponse = await this.getIpCache(ipAddress);
42
+ const cachedResult = cacheResponse?.responseData;
43
+ const cacheExpirationDate = DateTime.utc().minus({ days: 6 }).toJSDate().toISOString();
44
+ if (cachedResult && cachedResult?.updatedAt > cacheExpirationDate) {
45
+ return cachedResult.lookupResponse;
46
+ }
47
+ const lookupResponse = await this.getLookupApi(ipAddress);
48
+ const expires = 60 * 60 * 24 * 15;
49
+ let lookupTableRecord;
50
+ if (cachedResult) {
51
+ lookupTableRecord = {
52
+ ...cachedResult,
53
+ lookupResponse,
54
+ updatedAt: getCurrentTimestamp(),
55
+ };
56
+ }
57
+ else {
58
+ lookupTableRecord = {
59
+ ipAddress,
60
+ lookupResponse,
61
+ createdAt: getCurrentTimestamp(),
62
+ updatedAt: getCurrentTimestamp()
63
+ };
64
+ }
65
+ await this.cacheLambdaClient.invokeSet(`ipdata-${ipAddress}`, JSON.stringify(lookupTableRecord), expires);
66
+ return lookupResponse;
67
+ }
68
+ catch (e) {
69
+ Logger.error('Failed to lookup IP', { error: e });
70
+ return null;
71
+ }
72
+ };
73
+ }
74
74
  //# sourceMappingURL=ipdata-lookup-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,17 +1,17 @@
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
- private shopifyProductsCacheDbService;
10
- private TABLE_NAME;
11
- private TABLE_KEY;
12
- private redisCacheTtlInSeconds;
13
- private dynamoDbCacheTtlInSeconds;
14
- constructor(cacheLambdaFunctionArn: string, tableName: string, tableKey: string, redisCacheTtlInSeconds: number, dynamoDbCacheTtlInSeconds: number);
15
- getShopifyProduct: (pixelId: string, shop: string, accessToken: string, productId: string, useCache?: boolean, updateCache?: boolean) => Promise<GetShopifyProductResponse | null>;
16
- private getShopifyProductFromAPI;
17
- }
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
+ private shopifyProductsCacheDbService;
10
+ private TABLE_NAME;
11
+ private TABLE_KEY;
12
+ private redisCacheTtlInSeconds;
13
+ private dynamoDbCacheTtlInSeconds;
14
+ constructor(cacheLambdaFunctionArn: string, tableName: string, tableKey: string, redisCacheTtlInSeconds: number, dynamoDbCacheTtlInSeconds: number);
15
+ getShopifyProduct: (pixelId: string, shop: string, accessToken: string, productId: string, useCache?: boolean, updateCache?: boolean) => Promise<GetShopifyProductResponse | null>;
16
+ private getShopifyProductFromAPI;
17
+ }
@@ -1,100 +1,100 @@
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
- import { ShopifyProductsCacheDbService } from '../../db/shopify-products-cache-db-service';
6
- export class ShopifyProductsServiceV2 {
7
- productCacheService;
8
- shopifyProductsCacheDbService;
9
- TABLE_NAME;
10
- TABLE_KEY;
11
- redisCacheTtlInSeconds;
12
- dynamoDbCacheTtlInSeconds;
13
- constructor(cacheLambdaFunctionArn, tableName, tableKey, redisCacheTtlInSeconds, dynamoDbCacheTtlInSeconds) {
14
- this.TABLE_NAME = tableName;
15
- this.TABLE_KEY = tableKey;
16
- this.redisCacheTtlInSeconds = redisCacheTtlInSeconds;
17
- this.dynamoDbCacheTtlInSeconds = dynamoDbCacheTtlInSeconds;
18
- this.productCacheService = new ProductCacheService(cacheLambdaFunctionArn, this.redisCacheTtlInSeconds);
19
- this.shopifyProductsCacheDbService = new ShopifyProductsCacheDbService(this.TABLE_NAME, this.TABLE_KEY, this.dynamoDbCacheTtlInSeconds);
20
- }
21
- getShopifyProduct = async (pixelId, shop, accessToken, productId, useCache = true, updateCache = true) => {
22
- try {
23
- let getShopifyProductResponse = {};
24
- if (useCache) {
25
- let product = await this.productCacheService.getProductFromCache(pixelId, productId);
26
- if (product) {
27
- Logger.debug('getShopifyProduct: Product found in cache', { pixelId, shop, productId, product });
28
- getShopifyProductResponse.transformedProduct = product;
29
- return getShopifyProductResponse;
30
- }
31
- product = await this.shopifyProductsCacheDbService.getProductFromDynamoDBCache(pixelId, productId);
32
- if (product) {
33
- Logger.debug('getShopifyProduct: Product found in dynamoDB cache', { pixelId, shop, productId, product });
34
- getShopifyProductResponse.transformedProduct = product;
35
- return getShopifyProductResponse;
36
- }
37
- }
38
- getShopifyProductResponse = await this.getShopifyProductFromAPI(pixelId, shop, accessToken, productId, true);
39
- if (getShopifyProductResponse?.transformedProduct && updateCache) {
40
- const product = getShopifyProductResponse.transformedProduct;
41
- Logger.debug('getShopifyProduct: Product found in ShopifyAPI, putting in cache', { pixelId, productId, product });
42
- await this.productCacheService.putProductInCache(pixelId, productId, product);
43
- await this.shopifyProductsCacheDbService.putProductInDynamoDBCache(pixelId, productId, product);
44
- }
45
- Logger.debug('getShopifyProduct: Returning product', { pixelId, shop, productId, product: getShopifyProductResponse?.transformedProduct });
46
- return getShopifyProductResponse;
47
- }
48
- catch (error) {
49
- Logger.error('getShopifyProduct: Failed getShopifyProductWithCachingGraphQL', { error });
50
- return null;
51
- }
52
- };
53
- getShopifyProductFromAPI = async (pixelId, shop, accessToken, productId, useTransformer = true) => {
54
- try {
55
- const response = await ShopifyGraphQLClient.getProductWithVariantsGraphQL(shop, accessToken, productId, 100);
56
- const getShopifyProductResponse = response;
57
- if (response?.data?.product) {
58
- const product = response.data.product;
59
- Logger.debug('getShopifyProductFromAPI: Product found in ShopifyAPI', { pixelId, shop, productId, product });
60
- if (useTransformer) {
61
- const transformedProduct = ShopifyGraphQLTransformer.transformToInternalProduct(product);
62
- getShopifyProductResponse.transformedProduct = transformedProduct;
63
- Logger.debug('getShopifyProductFromAPI: Product transformed', { pixelId,
64
- shop,
65
- productId,
66
- transformedProduct: getShopifyProductResponse.transformedProduct,
67
- errors: response?.errors,
68
- error: response?.errors?.message
69
- });
70
- }
71
- return getShopifyProductResponse;
72
- }
73
- else {
74
- Logger.error('getShopifyProductFromAPI: Product ShopifyAPI error', { pixelId,
75
- shop,
76
- productId,
77
- response: response,
78
- responseData: response?.data,
79
- errors: response?.errors,
80
- responseError: response?.errors,
81
- error: response?.errors?.message
82
- });
83
- return null;
84
- }
85
- }
86
- catch (error) {
87
- Logger.error('getShopifyProductFromAPI: Failed getShopifyProductFromAPI', {
88
- e: error,
89
- pixelId,
90
- shop,
91
- accessToken,
92
- productId,
93
- useTransformer,
94
- error: error
95
- });
96
- return null;
97
- }
98
- };
99
- }
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
+ import { ShopifyProductsCacheDbService } from '../../db/shopify-products-cache-db-service';
6
+ export class ShopifyProductsServiceV2 {
7
+ productCacheService;
8
+ shopifyProductsCacheDbService;
9
+ TABLE_NAME;
10
+ TABLE_KEY;
11
+ redisCacheTtlInSeconds;
12
+ dynamoDbCacheTtlInSeconds;
13
+ constructor(cacheLambdaFunctionArn, tableName, tableKey, redisCacheTtlInSeconds, dynamoDbCacheTtlInSeconds) {
14
+ this.TABLE_NAME = tableName;
15
+ this.TABLE_KEY = tableKey;
16
+ this.redisCacheTtlInSeconds = redisCacheTtlInSeconds;
17
+ this.dynamoDbCacheTtlInSeconds = dynamoDbCacheTtlInSeconds;
18
+ this.productCacheService = new ProductCacheService(cacheLambdaFunctionArn, this.redisCacheTtlInSeconds);
19
+ this.shopifyProductsCacheDbService = new ShopifyProductsCacheDbService(this.TABLE_NAME, this.TABLE_KEY, this.dynamoDbCacheTtlInSeconds);
20
+ }
21
+ getShopifyProduct = async (pixelId, shop, accessToken, productId, useCache = true, updateCache = true) => {
22
+ try {
23
+ let getShopifyProductResponse = {};
24
+ if (useCache) {
25
+ let product = await this.productCacheService.getProductFromCache(pixelId, productId);
26
+ if (product) {
27
+ Logger.debug('getShopifyProduct: Product found in cache', { pixelId, shop, productId, product });
28
+ getShopifyProductResponse.transformedProduct = product;
29
+ return getShopifyProductResponse;
30
+ }
31
+ product = await this.shopifyProductsCacheDbService.getProductFromDynamoDBCache(pixelId, productId);
32
+ if (product) {
33
+ Logger.debug('getShopifyProduct: Product found in dynamoDB cache', { pixelId, shop, productId, product });
34
+ getShopifyProductResponse.transformedProduct = product;
35
+ return getShopifyProductResponse;
36
+ }
37
+ }
38
+ getShopifyProductResponse = await this.getShopifyProductFromAPI(pixelId, shop, accessToken, productId, true);
39
+ if (getShopifyProductResponse?.transformedProduct && updateCache) {
40
+ const product = getShopifyProductResponse.transformedProduct;
41
+ Logger.debug('getShopifyProduct: Product found in ShopifyAPI, putting in cache', { pixelId, productId, product });
42
+ await this.productCacheService.putProductInCache(pixelId, productId, product);
43
+ await this.shopifyProductsCacheDbService.putProductInDynamoDBCache(pixelId, productId, product);
44
+ }
45
+ Logger.debug('getShopifyProduct: Returning product', { pixelId, shop, productId, product: getShopifyProductResponse?.transformedProduct });
46
+ return getShopifyProductResponse;
47
+ }
48
+ catch (error) {
49
+ Logger.error('getShopifyProduct: Failed getShopifyProductWithCachingGraphQL', { error });
50
+ return null;
51
+ }
52
+ };
53
+ getShopifyProductFromAPI = async (pixelId, shop, accessToken, productId, useTransformer = true) => {
54
+ try {
55
+ const response = await ShopifyGraphQLClient.getProductWithVariantsGraphQL(shop, accessToken, productId, 100);
56
+ const getShopifyProductResponse = response;
57
+ if (response?.data?.product) {
58
+ const product = response.data.product;
59
+ Logger.debug('getShopifyProductFromAPI: Product found in ShopifyAPI', { pixelId, shop, productId, product });
60
+ if (useTransformer) {
61
+ const transformedProduct = ShopifyGraphQLTransformer.transformToInternalProduct(product);
62
+ getShopifyProductResponse.transformedProduct = transformedProduct;
63
+ Logger.debug('getShopifyProductFromAPI: Product transformed', { pixelId,
64
+ shop,
65
+ productId,
66
+ transformedProduct: getShopifyProductResponse.transformedProduct,
67
+ errors: response?.errors,
68
+ error: response?.errors?.message
69
+ });
70
+ }
71
+ return getShopifyProductResponse;
72
+ }
73
+ else {
74
+ Logger.error('getShopifyProductFromAPI: Product ShopifyAPI error', { pixelId,
75
+ shop,
76
+ productId,
77
+ response: response,
78
+ responseData: response?.data,
79
+ errors: response?.errors,
80
+ responseError: response?.errors,
81
+ error: response?.errors?.message
82
+ });
83
+ return null;
84
+ }
85
+ }
86
+ catch (error) {
87
+ Logger.error('getShopifyProductFromAPI: Failed getShopifyProductFromAPI', {
88
+ e: error,
89
+ pixelId,
90
+ shop,
91
+ accessToken,
92
+ productId,
93
+ useTransformer,
94
+ error: error
95
+ });
96
+ return null;
97
+ }
98
+ };
99
+ }
100
100
  //# sourceMappingURL=shopify-products-serviceV2.js.map