@adtrackify/at-service-common 3.5.20 → 3.5.21

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 (403) 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 +24 -23
  62. package/dist/cjs/clients/internal-api/subscriptions-client.js +63 -58
  63. package/dist/cjs/clients/internal-api/subscriptions-client.js.map +1 -1
  64. package/dist/cjs/clients/internal-api/users-auth-client.d.ts +35 -35
  65. package/dist/cjs/clients/internal-api/users-auth-client.js +110 -110
  66. package/dist/cjs/clients/third-party/emailable-client.d.ts +7 -7
  67. package/dist/cjs/clients/third-party/emailable-client.js +25 -25
  68. package/dist/cjs/clients/third-party/exchange-rate-api-client.d.ts +17 -17
  69. package/dist/cjs/clients/third-party/exchange-rate-api-client.js +19 -19
  70. package/dist/cjs/clients/third-party/index.d.ts +2 -2
  71. package/dist/cjs/clients/third-party/index.js +18 -18
  72. package/dist/cjs/clients/third-party/shopify/graphql-product-queries.d.ts +2 -2
  73. package/dist/cjs/clients/third-party/shopify/graphql-product-queries.js +180 -180
  74. package/dist/cjs/clients/third-party/shopify/shopify-graphql-client.d.ts +9 -9
  75. package/dist/cjs/clients/third-party/shopify/shopify-graphql-client.js +95 -95
  76. package/dist/cjs/clients/third-party/shopify-client.d.ts +29 -29
  77. package/dist/cjs/clients/third-party/shopify-client.js +144 -144
  78. package/dist/cjs/helpers/account-users-helper.d.ts +2 -2
  79. package/dist/cjs/helpers/account-users-helper.js +22 -22
  80. package/dist/cjs/helpers/identity-cache-helper.d.ts +21 -21
  81. package/dist/cjs/helpers/identity-cache-helper.js +157 -157
  82. package/dist/cjs/helpers/index.d.ts +6 -6
  83. package/dist/cjs/helpers/index.js +22 -22
  84. package/dist/cjs/helpers/input-validation-helper.d.ts +3 -3
  85. package/dist/cjs/helpers/input-validation-helper.js +22 -22
  86. package/dist/cjs/helpers/logging-helper.d.ts +16 -16
  87. package/dist/cjs/helpers/logging-helper.js +84 -84
  88. package/dist/cjs/helpers/response-helper.d.ts +18 -18
  89. package/dist/cjs/helpers/response-helper.js +43 -43
  90. package/dist/cjs/helpers/shopify-helper.d.ts +9 -9
  91. package/dist/cjs/helpers/shopify-helper.js +28 -28
  92. package/dist/cjs/index.d.ts +5 -5
  93. package/dist/cjs/index.js +21 -21
  94. package/dist/cjs/libs/click-id-parser.d.ts +23 -23
  95. package/dist/cjs/libs/click-id-parser.js +49 -49
  96. package/dist/cjs/libs/compression.d.ts +2 -2
  97. package/dist/cjs/libs/compression.js +33 -33
  98. package/dist/cjs/libs/cookie.d.ts +12 -12
  99. package/dist/cjs/libs/cookie.js +68 -68
  100. package/dist/cjs/libs/crypto.d.ts +3 -3
  101. package/dist/cjs/libs/crypto.js +20 -20
  102. package/dist/cjs/libs/csv.d.ts +2 -2
  103. package/dist/cjs/libs/csv.js +35 -35
  104. package/dist/cjs/libs/currency.d.ts +1 -1
  105. package/dist/cjs/libs/currency.js +24 -24
  106. package/dist/cjs/libs/dates.d.ts +12 -12
  107. package/dist/cjs/libs/dates.js +96 -96
  108. package/dist/cjs/libs/domain.d.ts +2 -2
  109. package/dist/cjs/libs/domain.js +38 -38
  110. package/dist/cjs/libs/emails.d.ts +6 -6
  111. package/dist/cjs/libs/emails.js +122 -122
  112. package/dist/cjs/libs/http-error.d.ts +21 -21
  113. package/dist/cjs/libs/http-error.js +59 -59
  114. package/dist/cjs/libs/http-status-codes.d.ts +58 -58
  115. package/dist/cjs/libs/http-status-codes.js +62 -62
  116. package/dist/cjs/libs/index.d.ts +17 -17
  117. package/dist/cjs/libs/index.js +33 -33
  118. package/dist/cjs/libs/numbers.d.ts +1 -1
  119. package/dist/cjs/libs/numbers.js +15 -15
  120. package/dist/cjs/libs/referrer-parser/index.d.ts +2 -2
  121. package/dist/cjs/libs/referrer-parser/index.js +18 -18
  122. package/dist/cjs/libs/referrer-parser/referrer-data.d.ts +9 -9
  123. package/dist/cjs/libs/referrer-parser/referrer-data.js +4712 -4712
  124. package/dist/cjs/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  125. package/dist/cjs/libs/referrer-parser/referrer-parser-util.js +128 -128
  126. package/dist/cjs/libs/strings.d.ts +3 -3
  127. package/dist/cjs/libs/strings.js +46 -46
  128. package/dist/cjs/libs/traits.d.ts +6 -6
  129. package/dist/cjs/libs/traits.js +65 -65
  130. package/dist/cjs/libs/url.d.ts +1 -1
  131. package/dist/cjs/libs/url.js +13 -13
  132. package/dist/cjs/services/cache/generic-cached-object.d.ts +5 -5
  133. package/dist/cjs/services/cache/generic-cached-object.js +2 -2
  134. package/dist/cjs/services/cache/index.d.ts +1 -1
  135. package/dist/cjs/services/cache/index.js +17 -17
  136. package/dist/cjs/services/cache/product-cache-service.d.ts +21 -21
  137. package/dist/cjs/services/cache/product-cache-service.js +68 -68
  138. package/dist/cjs/services/currency-exchange-rate-lookup-service.d.ts +11 -11
  139. package/dist/cjs/services/currency-exchange-rate-lookup-service.js +50 -50
  140. package/dist/cjs/services/db/currency-exchange-rates-db-service.d.ts +21 -21
  141. package/dist/cjs/services/db/currency-exchange-rates-db-service.js +39 -39
  142. package/dist/cjs/services/db/destinations-db-service.d.ts +11 -11
  143. package/dist/cjs/services/db/destinations-db-service.js +64 -64
  144. package/dist/cjs/services/db/identity-cache-db-service.d.ts +28 -28
  145. package/dist/cjs/services/db/identity-cache-db-service.js +278 -278
  146. package/dist/cjs/services/db/index.d.ts +9 -9
  147. package/dist/cjs/services/db/index.js +25 -25
  148. package/dist/cjs/services/db/log-events-db-service.d.ts +11 -11
  149. package/dist/cjs/services/db/log-events-db-service.js +172 -172
  150. package/dist/cjs/services/db/purchasable-contacts-db-service.d.ts +9 -9
  151. package/dist/cjs/services/db/purchasable-contacts-db-service.js +43 -43
  152. package/dist/cjs/services/db/purchased-contacts-db-service.d.ts +17 -17
  153. package/dist/cjs/services/db/purchased-contacts-db-service.js +143 -143
  154. package/dist/cjs/services/db/shopify-app-installs-db-service.d.ts +7 -7
  155. package/dist/cjs/services/db/shopify-app-installs-db-service.js +47 -47
  156. package/dist/cjs/services/db/shopify-products-cache-db-service.d.ts +16 -16
  157. package/dist/cjs/services/db/shopify-products-cache-db-service.js +65 -65
  158. package/dist/cjs/services/db/tracking-events-db-service.d.ts +20 -20
  159. package/dist/cjs/services/db/tracking-events-db-service.js +162 -162
  160. package/dist/cjs/services/eventbridge-integration-service.d.ts +9 -9
  161. package/dist/cjs/services/eventbridge-integration-service.js +28 -28
  162. package/dist/cjs/services/events/index.d.ts +3 -3
  163. package/dist/cjs/services/events/index.js +19 -19
  164. package/dist/cjs/services/events/log-event-service.d.ts +9 -9
  165. package/dist/cjs/services/events/log-event-service.js +56 -56
  166. package/dist/cjs/services/events/metric-event-service.d.ts +9 -9
  167. package/dist/cjs/services/events/metric-event-service.js +49 -49
  168. package/dist/cjs/services/events/tracking-event-sqs-service.d.ts +8 -8
  169. package/dist/cjs/services/events/tracking-event-sqs-service.js +29 -29
  170. package/dist/cjs/services/generic-cache-service.d.ts +7 -7
  171. package/dist/cjs/services/generic-cache-service.js +33 -33
  172. package/dist/cjs/services/index.d.ts +8 -8
  173. package/dist/cjs/services/index.js +24 -24
  174. package/dist/cjs/services/ipdata-lookup-service.d.ts +19 -19
  175. package/dist/cjs/services/ipdata-lookup-service.js +77 -77
  176. package/dist/cjs/services/shopify/index.d.ts +3 -3
  177. package/dist/cjs/services/shopify/index.js +19 -19
  178. package/dist/cjs/services/shopify/products/index.d.ts +1 -1
  179. package/dist/cjs/services/shopify/products/index.js +17 -17
  180. package/dist/cjs/services/shopify/products/shopify-products-serviceV2.d.ts +17 -17
  181. package/dist/cjs/services/shopify/products/shopify-products-serviceV2.js +103 -103
  182. package/dist/cjs/services/shopify/shopify-graphql-transformer.d.ts +9 -9
  183. package/dist/cjs/services/shopify/shopify-graphql-transformer.js +137 -137
  184. package/dist/cjs/services/shopify/types/index.d.ts +1 -1
  185. package/dist/cjs/services/shopify/types/index.js +17 -17
  186. package/dist/cjs/services/shopify/types/product.d.ts +115 -115
  187. package/dist/cjs/services/shopify/types/product.js +9 -9
  188. package/dist/cjs/types/api-response.d.ts +6 -6
  189. package/dist/cjs/types/api-response.js +2 -2
  190. package/dist/cjs/types/index.d.ts +2 -2
  191. package/dist/cjs/types/index.js +18 -18
  192. package/dist/cjs/types/internal-events/event-detail-types.d.ts +20 -20
  193. package/dist/cjs/types/internal-events/event-detail-types.js +27 -27
  194. package/dist/cjs/types/internal-events/index.d.ts +1 -1
  195. package/dist/cjs/types/internal-events/index.js +17 -17
  196. package/dist/cjs/types/shopify-graphql-types/admin.generated.d.ts +105 -105
  197. package/dist/cjs/types/shopify-graphql-types/admin.generated.js +2 -2
  198. package/dist/cjs/types/shopify-graphql-types/admin.types.d.ts +26289 -26289
  199. package/dist/cjs/types/shopify-graphql-types/admin.types.js +5311 -5311
  200. package/dist/cjs/types/shopify-graphql-types/index.d.ts +2 -2
  201. package/dist/cjs/types/shopify-graphql-types/index.js +18 -18
  202. package/dist/esm/__tests__/helpers/account-users-helper.spec.d.ts +1 -1
  203. package/dist/esm/__tests__/helpers/account-users-helper.spec.js +198 -198
  204. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.d.ts +1 -1
  205. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.js +672 -672
  206. package/dist/esm/__tests__/identity-cache/trait-merging-and-staleness.spec.d.ts +1 -1
  207. package/dist/esm/__tests__/identity-cache/trait-merging-and-staleness.spec.js +584 -584
  208. package/dist/esm/__tests__/libs/compress-decompress.spec.d.ts +1 -1
  209. package/dist/esm/__tests__/libs/compress-decompress.spec.js +14 -14
  210. package/dist/esm/__tests__/libs/currency.spec.d.ts +1 -1
  211. package/dist/esm/__tests__/libs/currency.spec.js +218 -218
  212. package/dist/esm/__tests__/libs/dates.spec.d.ts +1 -1
  213. package/dist/esm/__tests__/libs/dates.spec.js +130 -130
  214. package/dist/esm/__tests__/libs/domain.spec.d.ts +1 -1
  215. package/dist/esm/__tests__/libs/domain.spec.js +105 -105
  216. package/dist/esm/__tests__/libs/numbers.spec.d.ts +1 -1
  217. package/dist/esm/__tests__/libs/numbers.spec.js +259 -259
  218. package/dist/esm/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  219. package/dist/esm/__tests__/s3-client/s3-client.spec.js +24 -24
  220. package/dist/esm/__tests__/shopify/shopify-graphql-transformer.spec.d.ts +1 -1
  221. package/dist/esm/__tests__/shopify/shopify-graphql-transformer.spec.js +33 -33
  222. package/dist/esm/clients/generic/cognito-client.d.ts +23 -23
  223. package/dist/esm/clients/generic/cognito-client.js +204 -204
  224. package/dist/esm/clients/generic/dynamodb-client.d.ts +17 -17
  225. package/dist/esm/clients/generic/dynamodb-client.js +166 -166
  226. package/dist/esm/clients/generic/eventbridge-client.d.ts +14 -14
  227. package/dist/esm/clients/generic/eventbridge-client.js +45 -45
  228. package/dist/esm/clients/generic/http-client.d.ts +14 -14
  229. package/dist/esm/clients/generic/http-client.js +53 -53
  230. package/dist/esm/clients/generic/index.d.ts +10 -10
  231. package/dist/esm/clients/generic/index.js +10 -10
  232. package/dist/esm/clients/generic/lambda-invoke-client.d.ts +10 -10
  233. package/dist/esm/clients/generic/lambda-invoke-client.js +31 -31
  234. package/dist/esm/clients/generic/location-client.d.ts +8 -8
  235. package/dist/esm/clients/generic/location-client.js +27 -27
  236. package/dist/esm/clients/generic/redis-client.d.ts +18 -18
  237. package/dist/esm/clients/generic/redis-client.js +121 -121
  238. package/dist/esm/clients/generic/s3-client.d.ts +23 -23
  239. package/dist/esm/clients/generic/s3-client.js +191 -191
  240. package/dist/esm/clients/generic/singlestore-db-client.d.ts +14 -14
  241. package/dist/esm/clients/generic/singlestore-db-client.js +40 -40
  242. package/dist/esm/clients/generic/sqs-client.d.ts +20 -20
  243. package/dist/esm/clients/generic/sqs-client.js +32 -32
  244. package/dist/esm/clients/index.d.ts +3 -3
  245. package/dist/esm/clients/index.js +3 -3
  246. package/dist/esm/clients/internal-api/accounts-client.d.ts +83 -83
  247. package/dist/esm/clients/internal-api/accounts-client.js +103 -103
  248. package/dist/esm/clients/internal-api/cache-lambda-client.d.ts +25 -25
  249. package/dist/esm/clients/internal-api/cache-lambda-client.js +75 -75
  250. package/dist/esm/clients/internal-api/db-management-client.d.ts +18 -18
  251. package/dist/esm/clients/internal-api/db-management-client.js +32 -32
  252. package/dist/esm/clients/internal-api/destinations-client.d.ts +27 -27
  253. package/dist/esm/clients/internal-api/destinations-client.js +47 -47
  254. package/dist/esm/clients/internal-api/event-collector-client.d.ts +20 -20
  255. package/dist/esm/clients/internal-api/event-collector-client.js +32 -32
  256. package/dist/esm/clients/internal-api/identity-client.d.ts +31 -31
  257. package/dist/esm/clients/internal-api/identity-client.js +79 -79
  258. package/dist/esm/clients/internal-api/index.d.ts +9 -9
  259. package/dist/esm/clients/internal-api/index.js +9 -9
  260. package/dist/esm/clients/internal-api/shopify-app-install-client.d.ts +36 -36
  261. package/dist/esm/clients/internal-api/shopify-app-install-client.js +64 -64
  262. package/dist/esm/clients/internal-api/subscriptions-client.d.ts +24 -23
  263. package/dist/esm/clients/internal-api/subscriptions-client.js +59 -54
  264. package/dist/esm/clients/internal-api/subscriptions-client.js.map +1 -1
  265. package/dist/esm/clients/internal-api/users-auth-client.d.ts +35 -35
  266. package/dist/esm/clients/internal-api/users-auth-client.js +106 -106
  267. package/dist/esm/clients/third-party/emailable-client.d.ts +7 -7
  268. package/dist/esm/clients/third-party/emailable-client.js +21 -21
  269. package/dist/esm/clients/third-party/exchange-rate-api-client.d.ts +17 -17
  270. package/dist/esm/clients/third-party/exchange-rate-api-client.js +15 -15
  271. package/dist/esm/clients/third-party/index.d.ts +2 -2
  272. package/dist/esm/clients/third-party/index.js +2 -2
  273. package/dist/esm/clients/third-party/shopify/graphql-product-queries.d.ts +2 -2
  274. package/dist/esm/clients/third-party/shopify/graphql-product-queries.js +177 -177
  275. package/dist/esm/clients/third-party/shopify/shopify-graphql-client.d.ts +9 -9
  276. package/dist/esm/clients/third-party/shopify/shopify-graphql-client.js +91 -91
  277. package/dist/esm/clients/third-party/shopify-client.d.ts +29 -29
  278. package/dist/esm/clients/third-party/shopify-client.js +140 -140
  279. package/dist/esm/helpers/account-users-helper.d.ts +2 -2
  280. package/dist/esm/helpers/account-users-helper.js +18 -18
  281. package/dist/esm/helpers/identity-cache-helper.d.ts +21 -21
  282. package/dist/esm/helpers/identity-cache-helper.js +152 -152
  283. package/dist/esm/helpers/index.d.ts +6 -6
  284. package/dist/esm/helpers/index.js +6 -6
  285. package/dist/esm/helpers/input-validation-helper.d.ts +3 -3
  286. package/dist/esm/helpers/input-validation-helper.js +18 -18
  287. package/dist/esm/helpers/logging-helper.d.ts +16 -16
  288. package/dist/esm/helpers/logging-helper.js +56 -56
  289. package/dist/esm/helpers/response-helper.d.ts +18 -18
  290. package/dist/esm/helpers/response-helper.js +37 -37
  291. package/dist/esm/helpers/shopify-helper.d.ts +9 -9
  292. package/dist/esm/helpers/shopify-helper.js +23 -23
  293. package/dist/esm/index.d.ts +5 -5
  294. package/dist/esm/index.js +5 -5
  295. package/dist/esm/libs/click-id-parser.d.ts +23 -23
  296. package/dist/esm/libs/click-id-parser.js +45 -45
  297. package/dist/esm/libs/compression.d.ts +2 -2
  298. package/dist/esm/libs/compression.js +25 -25
  299. package/dist/esm/libs/cookie.d.ts +12 -12
  300. package/dist/esm/libs/cookie.js +62 -62
  301. package/dist/esm/libs/crypto.d.ts +3 -3
  302. package/dist/esm/libs/crypto.js +11 -11
  303. package/dist/esm/libs/csv.d.ts +2 -2
  304. package/dist/esm/libs/csv.js +30 -30
  305. package/dist/esm/libs/currency.d.ts +1 -1
  306. package/dist/esm/libs/currency.js +17 -17
  307. package/dist/esm/libs/dates.d.ts +12 -12
  308. package/dist/esm/libs/dates.js +83 -83
  309. package/dist/esm/libs/domain.d.ts +2 -2
  310. package/dist/esm/libs/domain.js +33 -33
  311. package/dist/esm/libs/emails.d.ts +6 -6
  312. package/dist/esm/libs/emails.js +115 -115
  313. package/dist/esm/libs/http-error.d.ts +21 -21
  314. package/dist/esm/libs/http-error.js +55 -55
  315. package/dist/esm/libs/http-status-codes.d.ts +58 -58
  316. package/dist/esm/libs/http-status-codes.js +59 -59
  317. package/dist/esm/libs/index.d.ts +17 -17
  318. package/dist/esm/libs/index.js +17 -17
  319. package/dist/esm/libs/numbers.d.ts +1 -1
  320. package/dist/esm/libs/numbers.js +11 -11
  321. package/dist/esm/libs/referrer-parser/index.d.ts +2 -2
  322. package/dist/esm/libs/referrer-parser/index.js +2 -2
  323. package/dist/esm/libs/referrer-parser/referrer-data.d.ts +9 -9
  324. package/dist/esm/libs/referrer-parser/referrer-data.js +4709 -4709
  325. package/dist/esm/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  326. package/dist/esm/libs/referrer-parser/referrer-parser-util.js +121 -121
  327. package/dist/esm/libs/strings.d.ts +3 -3
  328. package/dist/esm/libs/strings.js +40 -40
  329. package/dist/esm/libs/traits.d.ts +6 -6
  330. package/dist/esm/libs/traits.js +54 -54
  331. package/dist/esm/libs/url.d.ts +1 -1
  332. package/dist/esm/libs/url.js +9 -9
  333. package/dist/esm/services/cache/generic-cached-object.d.ts +5 -5
  334. package/dist/esm/services/cache/generic-cached-object.js +1 -1
  335. package/dist/esm/services/cache/index.d.ts +1 -1
  336. package/dist/esm/services/cache/index.js +1 -1
  337. package/dist/esm/services/cache/product-cache-service.d.ts +21 -21
  338. package/dist/esm/services/cache/product-cache-service.js +60 -60
  339. package/dist/esm/services/currency-exchange-rate-lookup-service.d.ts +11 -11
  340. package/dist/esm/services/currency-exchange-rate-lookup-service.js +46 -46
  341. package/dist/esm/services/db/currency-exchange-rates-db-service.d.ts +21 -21
  342. package/dist/esm/services/db/currency-exchange-rates-db-service.js +35 -35
  343. package/dist/esm/services/db/destinations-db-service.d.ts +11 -11
  344. package/dist/esm/services/db/destinations-db-service.js +60 -60
  345. package/dist/esm/services/db/identity-cache-db-service.d.ts +28 -28
  346. package/dist/esm/services/db/identity-cache-db-service.js +271 -271
  347. package/dist/esm/services/db/index.d.ts +9 -9
  348. package/dist/esm/services/db/index.js +9 -9
  349. package/dist/esm/services/db/log-events-db-service.d.ts +11 -11
  350. package/dist/esm/services/db/log-events-db-service.js +168 -168
  351. package/dist/esm/services/db/purchasable-contacts-db-service.d.ts +9 -9
  352. package/dist/esm/services/db/purchasable-contacts-db-service.js +39 -39
  353. package/dist/esm/services/db/purchased-contacts-db-service.d.ts +17 -17
  354. package/dist/esm/services/db/purchased-contacts-db-service.js +139 -139
  355. package/dist/esm/services/db/shopify-app-installs-db-service.d.ts +7 -7
  356. package/dist/esm/services/db/shopify-app-installs-db-service.js +43 -43
  357. package/dist/esm/services/db/shopify-products-cache-db-service.d.ts +16 -16
  358. package/dist/esm/services/db/shopify-products-cache-db-service.js +58 -58
  359. package/dist/esm/services/db/tracking-events-db-service.d.ts +20 -20
  360. package/dist/esm/services/db/tracking-events-db-service.js +158 -158
  361. package/dist/esm/services/eventbridge-integration-service.d.ts +9 -9
  362. package/dist/esm/services/eventbridge-integration-service.js +24 -24
  363. package/dist/esm/services/events/index.d.ts +3 -3
  364. package/dist/esm/services/events/index.js +3 -3
  365. package/dist/esm/services/events/log-event-service.d.ts +9 -9
  366. package/dist/esm/services/events/log-event-service.js +52 -52
  367. package/dist/esm/services/events/metric-event-service.d.ts +9 -9
  368. package/dist/esm/services/events/metric-event-service.js +45 -45
  369. package/dist/esm/services/events/tracking-event-sqs-service.d.ts +8 -8
  370. package/dist/esm/services/events/tracking-event-sqs-service.js +25 -25
  371. package/dist/esm/services/generic-cache-service.d.ts +7 -7
  372. package/dist/esm/services/generic-cache-service.js +29 -29
  373. package/dist/esm/services/index.d.ts +8 -8
  374. package/dist/esm/services/index.js +8 -8
  375. package/dist/esm/services/ipdata-lookup-service.d.ts +19 -19
  376. package/dist/esm/services/ipdata-lookup-service.js +73 -73
  377. package/dist/esm/services/shopify/index.d.ts +3 -3
  378. package/dist/esm/services/shopify/index.js +3 -3
  379. package/dist/esm/services/shopify/products/index.d.ts +1 -1
  380. package/dist/esm/services/shopify/products/index.js +1 -1
  381. package/dist/esm/services/shopify/products/shopify-products-serviceV2.d.ts +17 -17
  382. package/dist/esm/services/shopify/products/shopify-products-serviceV2.js +99 -99
  383. package/dist/esm/services/shopify/shopify-graphql-transformer.d.ts +9 -9
  384. package/dist/esm/services/shopify/shopify-graphql-transformer.js +134 -134
  385. package/dist/esm/services/shopify/types/index.d.ts +1 -1
  386. package/dist/esm/services/shopify/types/index.js +1 -1
  387. package/dist/esm/services/shopify/types/product.d.ts +115 -115
  388. package/dist/esm/services/shopify/types/product.js +6 -6
  389. package/dist/esm/types/api-response.d.ts +6 -6
  390. package/dist/esm/types/api-response.js +1 -1
  391. package/dist/esm/types/index.d.ts +2 -2
  392. package/dist/esm/types/index.js +2 -2
  393. package/dist/esm/types/internal-events/event-detail-types.d.ts +20 -20
  394. package/dist/esm/types/internal-events/event-detail-types.js +24 -24
  395. package/dist/esm/types/internal-events/index.d.ts +1 -1
  396. package/dist/esm/types/internal-events/index.js +1 -1
  397. package/dist/esm/types/shopify-graphql-types/admin.generated.d.ts +105 -105
  398. package/dist/esm/types/shopify-graphql-types/admin.generated.js +1 -1
  399. package/dist/esm/types/shopify-graphql-types/admin.types.d.ts +26289 -26289
  400. package/dist/esm/types/shopify-graphql-types/admin.types.js +5299 -5299
  401. package/dist/esm/types/shopify-graphql-types/index.d.ts +2 -2
  402. package/dist/esm/types/shopify-graphql-types/index.js +2 -2
  403. 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