@adtrackify/at-service-common 3.14.2 → 3.14.3

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 (411) hide show
  1. package/dist/cjs/__tests__/clients/sqs-client.spec.d.ts +1 -1
  2. package/dist/cjs/__tests__/clients/sqs-client.spec.js +121 -121
  3. package/dist/cjs/__tests__/helpers/account-users-helper.spec.d.ts +1 -1
  4. package/dist/cjs/__tests__/helpers/account-users-helper.spec.js +220 -220
  5. package/dist/cjs/__tests__/identity-cache/identity-cache-db-service.spec.d.ts +1 -1
  6. package/dist/cjs/__tests__/identity-cache/identity-cache-db-service.spec.js +674 -674
  7. package/dist/cjs/__tests__/identity-cache/trait-merging-and-staleness.spec.d.ts +1 -1
  8. package/dist/cjs/__tests__/identity-cache/trait-merging-and-staleness.spec.js +588 -588
  9. package/dist/cjs/__tests__/libs/compress-decompress.spec.d.ts +1 -1
  10. package/dist/cjs/__tests__/libs/compress-decompress.spec.js +16 -16
  11. package/dist/cjs/__tests__/libs/currency.spec.d.ts +1 -1
  12. package/dist/cjs/__tests__/libs/currency.spec.js +220 -220
  13. package/dist/cjs/__tests__/libs/dates.spec.d.ts +1 -1
  14. package/dist/cjs/__tests__/libs/dates.spec.js +130 -130
  15. package/dist/cjs/__tests__/libs/domain.spec.d.ts +1 -1
  16. package/dist/cjs/__tests__/libs/domain.spec.js +107 -107
  17. package/dist/cjs/__tests__/libs/numbers.spec.d.ts +1 -1
  18. package/dist/cjs/__tests__/libs/numbers.spec.js +261 -261
  19. package/dist/cjs/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  20. package/dist/cjs/__tests__/s3-client/s3-client.spec.js +33 -33
  21. package/dist/cjs/__tests__/shopify/shopify-graphql-transformer.spec.d.ts +1 -1
  22. package/dist/cjs/__tests__/shopify/shopify-graphql-transformer.spec.js +35 -35
  23. package/dist/cjs/clients/generic/cognito-client.d.ts +23 -23
  24. package/dist/cjs/clients/generic/cognito-client.js +209 -209
  25. package/dist/cjs/clients/generic/dynamodb-client.d.ts +18 -17
  26. package/dist/cjs/clients/generic/dynamodb-client.js +171 -170
  27. package/dist/cjs/clients/generic/dynamodb-client.js.map +1 -1
  28. package/dist/cjs/clients/generic/eventbridge-client.d.ts +14 -14
  29. package/dist/cjs/clients/generic/eventbridge-client.js +51 -51
  30. package/dist/cjs/clients/generic/http-client.d.ts +14 -14
  31. package/dist/cjs/clients/generic/http-client.js +61 -61
  32. package/dist/cjs/clients/generic/index.d.ts +10 -10
  33. package/dist/cjs/clients/generic/index.js +26 -26
  34. package/dist/cjs/clients/generic/lambda-invoke-client.d.ts +10 -10
  35. package/dist/cjs/clients/generic/lambda-invoke-client.js +35 -35
  36. package/dist/cjs/clients/generic/location-client.d.ts +8 -8
  37. package/dist/cjs/clients/generic/location-client.js +31 -31
  38. package/dist/cjs/clients/generic/redis-client.d.ts +32 -32
  39. package/dist/cjs/clients/generic/redis-client.js +181 -181
  40. package/dist/cjs/clients/generic/s3-client.d.ts +23 -23
  41. package/dist/cjs/clients/generic/s3-client.js +216 -216
  42. package/dist/cjs/clients/generic/singlestore-db-client.d.ts +14 -14
  43. package/dist/cjs/clients/generic/singlestore-db-client.js +67 -67
  44. package/dist/cjs/clients/generic/sqs-client.d.ts +33 -33
  45. package/dist/cjs/clients/generic/sqs-client.js +111 -111
  46. package/dist/cjs/clients/index.d.ts +3 -3
  47. package/dist/cjs/clients/index.js +19 -19
  48. package/dist/cjs/clients/internal-api/accounts-client.d.ts +85 -85
  49. package/dist/cjs/clients/internal-api/accounts-client.js +129 -129
  50. package/dist/cjs/clients/internal-api/cache-lambda-client.d.ts +25 -25
  51. package/dist/cjs/clients/internal-api/cache-lambda-client.js +87 -87
  52. package/dist/cjs/clients/internal-api/db-management-client.d.ts +18 -18
  53. package/dist/cjs/clients/internal-api/db-management-client.js +36 -36
  54. package/dist/cjs/clients/internal-api/destinations-client.d.ts +34 -34
  55. package/dist/cjs/clients/internal-api/destinations-client.js +79 -79
  56. package/dist/cjs/clients/internal-api/event-collector-client.d.ts +20 -20
  57. package/dist/cjs/clients/internal-api/event-collector-client.js +36 -36
  58. package/dist/cjs/clients/internal-api/identity-client.d.ts +31 -31
  59. package/dist/cjs/clients/internal-api/identity-client.js +91 -91
  60. package/dist/cjs/clients/internal-api/index.d.ts +9 -9
  61. package/dist/cjs/clients/internal-api/index.js +25 -25
  62. package/dist/cjs/clients/internal-api/shopify-app-install-client.d.ts +37 -37
  63. package/dist/cjs/clients/internal-api/shopify-app-install-client.js +81 -81
  64. package/dist/cjs/clients/internal-api/subscriptions-client.d.ts +26 -26
  65. package/dist/cjs/clients/internal-api/subscriptions-client.js +77 -77
  66. package/dist/cjs/clients/internal-api/users-auth-client.d.ts +35 -35
  67. package/dist/cjs/clients/internal-api/users-auth-client.js +110 -110
  68. package/dist/cjs/clients/third-party/emailable-client.d.ts +7 -7
  69. package/dist/cjs/clients/third-party/emailable-client.js +25 -25
  70. package/dist/cjs/clients/third-party/exchange-rate-api-client.d.ts +17 -17
  71. package/dist/cjs/clients/third-party/exchange-rate-api-client.js +19 -19
  72. package/dist/cjs/clients/third-party/index.d.ts +3 -3
  73. package/dist/cjs/clients/third-party/index.js +19 -19
  74. package/dist/cjs/clients/third-party/loops-client.d.ts +10 -10
  75. package/dist/cjs/clients/third-party/loops-client.js +30 -30
  76. package/dist/cjs/clients/third-party/shopify/graphql-product-queries.d.ts +2 -2
  77. package/dist/cjs/clients/third-party/shopify/graphql-product-queries.js +180 -180
  78. package/dist/cjs/clients/third-party/shopify/shopify-graphql-client.d.ts +9 -9
  79. package/dist/cjs/clients/third-party/shopify/shopify-graphql-client.js +115 -115
  80. package/dist/cjs/clients/third-party/shopify-client.d.ts +29 -29
  81. package/dist/cjs/clients/third-party/shopify-client.js +146 -146
  82. package/dist/cjs/helpers/account-users-helper.d.ts +2 -2
  83. package/dist/cjs/helpers/account-users-helper.js +22 -22
  84. package/dist/cjs/helpers/identity-cache-helper.d.ts +21 -21
  85. package/dist/cjs/helpers/identity-cache-helper.js +156 -156
  86. package/dist/cjs/helpers/index.d.ts +7 -7
  87. package/dist/cjs/helpers/index.js +23 -23
  88. package/dist/cjs/helpers/input-validation-helper.d.ts +3 -3
  89. package/dist/cjs/helpers/input-validation-helper.js +22 -22
  90. package/dist/cjs/helpers/logging-helper.d.ts +16 -16
  91. package/dist/cjs/helpers/logging-helper.js +84 -84
  92. package/dist/cjs/helpers/response-helper.d.ts +18 -18
  93. package/dist/cjs/helpers/response-helper.js +43 -43
  94. package/dist/cjs/helpers/shopify-helper.d.ts +9 -9
  95. package/dist/cjs/helpers/shopify-helper.js +26 -26
  96. package/dist/cjs/helpers/sqs-utils.d.ts +6 -6
  97. package/dist/cjs/helpers/sqs-utils.js +14 -14
  98. package/dist/cjs/index.d.ts +5 -5
  99. package/dist/cjs/index.js +21 -21
  100. package/dist/cjs/libs/click-id-parser.d.ts +23 -23
  101. package/dist/cjs/libs/click-id-parser.js +49 -49
  102. package/dist/cjs/libs/compression.d.ts +2 -2
  103. package/dist/cjs/libs/compression.js +33 -33
  104. package/dist/cjs/libs/cookie.d.ts +17 -17
  105. package/dist/cjs/libs/cookie.js +76 -76
  106. package/dist/cjs/libs/crypto.d.ts +3 -3
  107. package/dist/cjs/libs/crypto.js +20 -20
  108. package/dist/cjs/libs/csv.d.ts +2 -2
  109. package/dist/cjs/libs/csv.js +35 -35
  110. package/dist/cjs/libs/currency.d.ts +1 -1
  111. package/dist/cjs/libs/currency.js +29 -29
  112. package/dist/cjs/libs/dates.d.ts +12 -12
  113. package/dist/cjs/libs/dates.js +96 -96
  114. package/dist/cjs/libs/domain.d.ts +2 -2
  115. package/dist/cjs/libs/domain.js +38 -38
  116. package/dist/cjs/libs/emails.d.ts +6 -6
  117. package/dist/cjs/libs/emails.js +122 -122
  118. package/dist/cjs/libs/http-error.d.ts +21 -21
  119. package/dist/cjs/libs/http-error.js +63 -63
  120. package/dist/cjs/libs/http-status-codes.d.ts +58 -58
  121. package/dist/cjs/libs/http-status-codes.js +62 -62
  122. package/dist/cjs/libs/index.d.ts +17 -17
  123. package/dist/cjs/libs/index.js +33 -33
  124. package/dist/cjs/libs/numbers.d.ts +1 -1
  125. package/dist/cjs/libs/numbers.js +15 -15
  126. package/dist/cjs/libs/referrer-parser/index.d.ts +2 -2
  127. package/dist/cjs/libs/referrer-parser/index.js +18 -18
  128. package/dist/cjs/libs/referrer-parser/referrer-data.d.ts +9 -9
  129. package/dist/cjs/libs/referrer-parser/referrer-data.js +3307 -3307
  130. package/dist/cjs/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  131. package/dist/cjs/libs/referrer-parser/referrer-parser-util.js +131 -131
  132. package/dist/cjs/libs/strings.d.ts +3 -3
  133. package/dist/cjs/libs/strings.js +46 -46
  134. package/dist/cjs/libs/traits.d.ts +6 -6
  135. package/dist/cjs/libs/traits.js +65 -65
  136. package/dist/cjs/libs/url.d.ts +1 -1
  137. package/dist/cjs/libs/url.js +13 -13
  138. package/dist/cjs/services/cache/generic-cached-object.d.ts +5 -5
  139. package/dist/cjs/services/cache/generic-cached-object.js +2 -2
  140. package/dist/cjs/services/cache/index.d.ts +1 -1
  141. package/dist/cjs/services/cache/index.js +17 -17
  142. package/dist/cjs/services/cache/product-cache-service.d.ts +21 -21
  143. package/dist/cjs/services/cache/product-cache-service.js +76 -76
  144. package/dist/cjs/services/currency-exchange-rate-lookup-service.d.ts +11 -11
  145. package/dist/cjs/services/currency-exchange-rate-lookup-service.js +66 -66
  146. package/dist/cjs/services/db/currency-exchange-rates-db-service.d.ts +21 -21
  147. package/dist/cjs/services/db/currency-exchange-rates-db-service.js +39 -39
  148. package/dist/cjs/services/db/destinations-db-service.d.ts +12 -12
  149. package/dist/cjs/services/db/destinations-db-service.js +76 -76
  150. package/dist/cjs/services/db/identity-cache-db-service.d.ts +28 -28
  151. package/dist/cjs/services/db/identity-cache-db-service.js +320 -320
  152. package/dist/cjs/services/db/index.d.ts +10 -10
  153. package/dist/cjs/services/db/index.js +26 -26
  154. package/dist/cjs/services/db/log-events-db-service.d.ts +11 -11
  155. package/dist/cjs/services/db/log-events-db-service.js +181 -181
  156. package/dist/cjs/services/db/pixels-db-service.d.ts +8 -8
  157. package/dist/cjs/services/db/pixels-db-service.js +35 -35
  158. package/dist/cjs/services/db/purchasable-contacts-db-service.d.ts +9 -9
  159. package/dist/cjs/services/db/purchasable-contacts-db-service.js +43 -43
  160. package/dist/cjs/services/db/purchased-contacts-db-service.d.ts +17 -17
  161. package/dist/cjs/services/db/purchased-contacts-db-service.js +143 -143
  162. package/dist/cjs/services/db/shopify-app-installs-db-service.d.ts +7 -7
  163. package/dist/cjs/services/db/shopify-app-installs-db-service.js +47 -47
  164. package/dist/cjs/services/db/shopify-products-cache-db-service.d.ts +16 -16
  165. package/dist/cjs/services/db/shopify-products-cache-db-service.js +73 -73
  166. package/dist/cjs/services/db/tracking-events-db-service.d.ts +20 -20
  167. package/dist/cjs/services/db/tracking-events-db-service.js +165 -165
  168. package/dist/cjs/services/eventbridge-integration-service.d.ts +9 -9
  169. package/dist/cjs/services/eventbridge-integration-service.js +28 -28
  170. package/dist/cjs/services/events/index.d.ts +3 -3
  171. package/dist/cjs/services/events/index.js +19 -19
  172. package/dist/cjs/services/events/log-event-service.d.ts +9 -9
  173. package/dist/cjs/services/events/log-event-service.js +56 -56
  174. package/dist/cjs/services/events/metric-event-service.d.ts +9 -9
  175. package/dist/cjs/services/events/metric-event-service.js +49 -49
  176. package/dist/cjs/services/events/tracking-event-sqs-service.d.ts +8 -8
  177. package/dist/cjs/services/events/tracking-event-sqs-service.js +34 -34
  178. package/dist/cjs/services/generic-cache-service.d.ts +7 -7
  179. package/dist/cjs/services/generic-cache-service.js +33 -33
  180. package/dist/cjs/services/index.d.ts +8 -8
  181. package/dist/cjs/services/index.js +24 -24
  182. package/dist/cjs/services/ipdata-lookup-service.d.ts +20 -20
  183. package/dist/cjs/services/ipdata-lookup-service.js +112 -112
  184. package/dist/cjs/services/shopify/index.d.ts +2 -2
  185. package/dist/cjs/services/shopify/index.js +18 -18
  186. package/dist/cjs/services/shopify/products/index.d.ts +1 -1
  187. package/dist/cjs/services/shopify/products/index.js +17 -17
  188. package/dist/cjs/services/shopify/products/shopify-products-serviceV2.d.ts +17 -17
  189. package/dist/cjs/services/shopify/products/shopify-products-serviceV2.js +112 -112
  190. package/dist/cjs/services/shopify/shopify-graphql-transformer.d.ts +8 -8
  191. package/dist/cjs/services/shopify/shopify-graphql-transformer.js +141 -141
  192. package/dist/cjs/types/api-response.d.ts +6 -6
  193. package/dist/cjs/types/api-response.js +2 -2
  194. package/dist/cjs/types/index.d.ts +1 -1
  195. package/dist/cjs/types/index.js +17 -17
  196. package/dist/cjs/types/internal-events/event-detail-types.d.ts +20 -20
  197. package/dist/cjs/types/internal-events/event-detail-types.js +27 -27
  198. package/dist/cjs/types/internal-events/index.d.ts +1 -1
  199. package/dist/cjs/types/internal-events/index.js +17 -17
  200. package/dist/cjs/types/shopify-graphql-types/admin.generated.d.ts +105 -105
  201. package/dist/cjs/types/shopify-graphql-types/admin.generated.js +2 -2
  202. package/dist/cjs/types/shopify-graphql-types/admin.types.d.ts +26289 -26289
  203. package/dist/cjs/types/shopify-graphql-types/admin.types.js +5311 -5311
  204. package/dist/cjs/types/shopify-graphql-types/index.d.ts +2 -2
  205. package/dist/cjs/types/shopify-graphql-types/index.js +18 -18
  206. package/dist/esm/__tests__/clients/sqs-client.spec.d.ts +1 -1
  207. package/dist/esm/__tests__/clients/sqs-client.spec.js +119 -119
  208. package/dist/esm/__tests__/helpers/account-users-helper.spec.d.ts +1 -1
  209. package/dist/esm/__tests__/helpers/account-users-helper.spec.js +218 -218
  210. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.d.ts +1 -1
  211. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.js +672 -672
  212. package/dist/esm/__tests__/identity-cache/trait-merging-and-staleness.spec.d.ts +1 -1
  213. package/dist/esm/__tests__/identity-cache/trait-merging-and-staleness.spec.js +586 -586
  214. package/dist/esm/__tests__/libs/compress-decompress.spec.d.ts +1 -1
  215. package/dist/esm/__tests__/libs/compress-decompress.spec.js +14 -14
  216. package/dist/esm/__tests__/libs/currency.spec.d.ts +1 -1
  217. package/dist/esm/__tests__/libs/currency.spec.js +218 -218
  218. package/dist/esm/__tests__/libs/dates.spec.d.ts +1 -1
  219. package/dist/esm/__tests__/libs/dates.spec.js +128 -128
  220. package/dist/esm/__tests__/libs/domain.spec.d.ts +1 -1
  221. package/dist/esm/__tests__/libs/domain.spec.js +105 -105
  222. package/dist/esm/__tests__/libs/numbers.spec.d.ts +1 -1
  223. package/dist/esm/__tests__/libs/numbers.spec.js +259 -259
  224. package/dist/esm/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  225. package/dist/esm/__tests__/s3-client/s3-client.spec.js +31 -31
  226. package/dist/esm/__tests__/shopify/shopify-graphql-transformer.spec.d.ts +1 -1
  227. package/dist/esm/__tests__/shopify/shopify-graphql-transformer.spec.js +33 -33
  228. package/dist/esm/clients/generic/cognito-client.d.ts +23 -23
  229. package/dist/esm/clients/generic/cognito-client.js +204 -204
  230. package/dist/esm/clients/generic/dynamodb-client.d.ts +18 -17
  231. package/dist/esm/clients/generic/dynamodb-client.js +167 -166
  232. package/dist/esm/clients/generic/dynamodb-client.js.map +1 -1
  233. package/dist/esm/clients/generic/eventbridge-client.d.ts +14 -14
  234. package/dist/esm/clients/generic/eventbridge-client.js +47 -47
  235. package/dist/esm/clients/generic/http-client.d.ts +14 -14
  236. package/dist/esm/clients/generic/http-client.js +53 -53
  237. package/dist/esm/clients/generic/index.d.ts +10 -10
  238. package/dist/esm/clients/generic/index.js +10 -10
  239. package/dist/esm/clients/generic/lambda-invoke-client.d.ts +10 -10
  240. package/dist/esm/clients/generic/lambda-invoke-client.js +31 -31
  241. package/dist/esm/clients/generic/location-client.d.ts +8 -8
  242. package/dist/esm/clients/generic/location-client.js +27 -27
  243. package/dist/esm/clients/generic/redis-client.d.ts +32 -32
  244. package/dist/esm/clients/generic/redis-client.js +174 -174
  245. package/dist/esm/clients/generic/s3-client.d.ts +23 -23
  246. package/dist/esm/clients/generic/s3-client.js +209 -209
  247. package/dist/esm/clients/generic/singlestore-db-client.d.ts +14 -14
  248. package/dist/esm/clients/generic/singlestore-db-client.js +40 -40
  249. package/dist/esm/clients/generic/sqs-client.d.ts +33 -33
  250. package/dist/esm/clients/generic/sqs-client.js +107 -107
  251. package/dist/esm/clients/index.d.ts +3 -3
  252. package/dist/esm/clients/index.js +3 -3
  253. package/dist/esm/clients/internal-api/accounts-client.d.ts +85 -85
  254. package/dist/esm/clients/internal-api/accounts-client.js +125 -125
  255. package/dist/esm/clients/internal-api/cache-lambda-client.d.ts +25 -25
  256. package/dist/esm/clients/internal-api/cache-lambda-client.js +83 -83
  257. package/dist/esm/clients/internal-api/db-management-client.d.ts +18 -18
  258. package/dist/esm/clients/internal-api/db-management-client.js +32 -32
  259. package/dist/esm/clients/internal-api/destinations-client.d.ts +34 -34
  260. package/dist/esm/clients/internal-api/destinations-client.js +75 -75
  261. package/dist/esm/clients/internal-api/event-collector-client.d.ts +20 -20
  262. package/dist/esm/clients/internal-api/event-collector-client.js +32 -32
  263. package/dist/esm/clients/internal-api/identity-client.d.ts +31 -31
  264. package/dist/esm/clients/internal-api/identity-client.js +87 -87
  265. package/dist/esm/clients/internal-api/index.d.ts +9 -9
  266. package/dist/esm/clients/internal-api/index.js +9 -9
  267. package/dist/esm/clients/internal-api/shopify-app-install-client.d.ts +37 -37
  268. package/dist/esm/clients/internal-api/shopify-app-install-client.js +77 -77
  269. package/dist/esm/clients/internal-api/subscriptions-client.d.ts +26 -26
  270. package/dist/esm/clients/internal-api/subscriptions-client.js +73 -73
  271. package/dist/esm/clients/internal-api/users-auth-client.d.ts +35 -35
  272. package/dist/esm/clients/internal-api/users-auth-client.js +106 -106
  273. package/dist/esm/clients/third-party/emailable-client.d.ts +7 -7
  274. package/dist/esm/clients/third-party/emailable-client.js +21 -21
  275. package/dist/esm/clients/third-party/exchange-rate-api-client.d.ts +17 -17
  276. package/dist/esm/clients/third-party/exchange-rate-api-client.js +15 -15
  277. package/dist/esm/clients/third-party/index.d.ts +3 -3
  278. package/dist/esm/clients/third-party/index.js +3 -3
  279. package/dist/esm/clients/third-party/loops-client.d.ts +10 -10
  280. package/dist/esm/clients/third-party/loops-client.js +26 -26
  281. package/dist/esm/clients/third-party/shopify/graphql-product-queries.d.ts +2 -2
  282. package/dist/esm/clients/third-party/shopify/graphql-product-queries.js +177 -177
  283. package/dist/esm/clients/third-party/shopify/shopify-graphql-client.d.ts +9 -9
  284. package/dist/esm/clients/third-party/shopify/shopify-graphql-client.js +111 -111
  285. package/dist/esm/clients/third-party/shopify-client.d.ts +29 -29
  286. package/dist/esm/clients/third-party/shopify-client.js +142 -142
  287. package/dist/esm/helpers/account-users-helper.d.ts +2 -2
  288. package/dist/esm/helpers/account-users-helper.js +18 -18
  289. package/dist/esm/helpers/identity-cache-helper.d.ts +21 -21
  290. package/dist/esm/helpers/identity-cache-helper.js +151 -151
  291. package/dist/esm/helpers/index.d.ts +7 -7
  292. package/dist/esm/helpers/index.js +7 -7
  293. package/dist/esm/helpers/input-validation-helper.d.ts +3 -3
  294. package/dist/esm/helpers/input-validation-helper.js +18 -18
  295. package/dist/esm/helpers/logging-helper.d.ts +16 -16
  296. package/dist/esm/helpers/logging-helper.js +56 -56
  297. package/dist/esm/helpers/response-helper.d.ts +18 -18
  298. package/dist/esm/helpers/response-helper.js +37 -37
  299. package/dist/esm/helpers/shopify-helper.d.ts +9 -9
  300. package/dist/esm/helpers/shopify-helper.js +21 -21
  301. package/dist/esm/helpers/sqs-utils.d.ts +6 -6
  302. package/dist/esm/helpers/sqs-utils.js +9 -9
  303. package/dist/esm/index.d.ts +5 -5
  304. package/dist/esm/index.js +5 -5
  305. package/dist/esm/libs/click-id-parser.d.ts +23 -23
  306. package/dist/esm/libs/click-id-parser.js +45 -45
  307. package/dist/esm/libs/compression.d.ts +2 -2
  308. package/dist/esm/libs/compression.js +25 -25
  309. package/dist/esm/libs/cookie.d.ts +17 -17
  310. package/dist/esm/libs/cookie.js +70 -70
  311. package/dist/esm/libs/crypto.d.ts +3 -3
  312. package/dist/esm/libs/crypto.js +11 -11
  313. package/dist/esm/libs/csv.d.ts +2 -2
  314. package/dist/esm/libs/csv.js +30 -30
  315. package/dist/esm/libs/currency.d.ts +1 -1
  316. package/dist/esm/libs/currency.js +22 -22
  317. package/dist/esm/libs/dates.d.ts +12 -12
  318. package/dist/esm/libs/dates.js +83 -83
  319. package/dist/esm/libs/domain.d.ts +2 -2
  320. package/dist/esm/libs/domain.js +33 -33
  321. package/dist/esm/libs/emails.d.ts +6 -6
  322. package/dist/esm/libs/emails.js +115 -115
  323. package/dist/esm/libs/http-error.d.ts +21 -21
  324. package/dist/esm/libs/http-error.js +59 -59
  325. package/dist/esm/libs/http-status-codes.d.ts +58 -58
  326. package/dist/esm/libs/http-status-codes.js +59 -59
  327. package/dist/esm/libs/index.d.ts +17 -17
  328. package/dist/esm/libs/index.js +17 -17
  329. package/dist/esm/libs/numbers.d.ts +1 -1
  330. package/dist/esm/libs/numbers.js +11 -11
  331. package/dist/esm/libs/referrer-parser/index.d.ts +2 -2
  332. package/dist/esm/libs/referrer-parser/index.js +2 -2
  333. package/dist/esm/libs/referrer-parser/referrer-data.d.ts +9 -9
  334. package/dist/esm/libs/referrer-parser/referrer-data.js +3304 -3304
  335. package/dist/esm/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  336. package/dist/esm/libs/referrer-parser/referrer-parser-util.js +124 -124
  337. package/dist/esm/libs/strings.d.ts +3 -3
  338. package/dist/esm/libs/strings.js +40 -40
  339. package/dist/esm/libs/traits.d.ts +6 -6
  340. package/dist/esm/libs/traits.js +54 -54
  341. package/dist/esm/libs/url.d.ts +1 -1
  342. package/dist/esm/libs/url.js +9 -9
  343. package/dist/esm/services/cache/generic-cached-object.d.ts +5 -5
  344. package/dist/esm/services/cache/generic-cached-object.js +1 -1
  345. package/dist/esm/services/cache/index.d.ts +1 -1
  346. package/dist/esm/services/cache/index.js +1 -1
  347. package/dist/esm/services/cache/product-cache-service.d.ts +21 -21
  348. package/dist/esm/services/cache/product-cache-service.js +68 -68
  349. package/dist/esm/services/currency-exchange-rate-lookup-service.d.ts +11 -11
  350. package/dist/esm/services/currency-exchange-rate-lookup-service.js +62 -62
  351. package/dist/esm/services/db/currency-exchange-rates-db-service.d.ts +21 -21
  352. package/dist/esm/services/db/currency-exchange-rates-db-service.js +35 -35
  353. package/dist/esm/services/db/destinations-db-service.d.ts +12 -12
  354. package/dist/esm/services/db/destinations-db-service.js +72 -72
  355. package/dist/esm/services/db/identity-cache-db-service.d.ts +28 -28
  356. package/dist/esm/services/db/identity-cache-db-service.js +313 -313
  357. package/dist/esm/services/db/index.d.ts +10 -10
  358. package/dist/esm/services/db/index.js +10 -10
  359. package/dist/esm/services/db/log-events-db-service.d.ts +11 -11
  360. package/dist/esm/services/db/log-events-db-service.js +177 -177
  361. package/dist/esm/services/db/pixels-db-service.d.ts +8 -8
  362. package/dist/esm/services/db/pixels-db-service.js +31 -31
  363. package/dist/esm/services/db/purchasable-contacts-db-service.d.ts +9 -9
  364. package/dist/esm/services/db/purchasable-contacts-db-service.js +39 -39
  365. package/dist/esm/services/db/purchased-contacts-db-service.d.ts +17 -17
  366. package/dist/esm/services/db/purchased-contacts-db-service.js +139 -139
  367. package/dist/esm/services/db/shopify-app-installs-db-service.d.ts +7 -7
  368. package/dist/esm/services/db/shopify-app-installs-db-service.js +43 -43
  369. package/dist/esm/services/db/shopify-products-cache-db-service.d.ts +16 -16
  370. package/dist/esm/services/db/shopify-products-cache-db-service.js +66 -66
  371. package/dist/esm/services/db/tracking-events-db-service.d.ts +20 -20
  372. package/dist/esm/services/db/tracking-events-db-service.js +161 -161
  373. package/dist/esm/services/eventbridge-integration-service.d.ts +9 -9
  374. package/dist/esm/services/eventbridge-integration-service.js +24 -24
  375. package/dist/esm/services/events/index.d.ts +3 -3
  376. package/dist/esm/services/events/index.js +3 -3
  377. package/dist/esm/services/events/log-event-service.d.ts +9 -9
  378. package/dist/esm/services/events/log-event-service.js +52 -52
  379. package/dist/esm/services/events/metric-event-service.d.ts +9 -9
  380. package/dist/esm/services/events/metric-event-service.js +45 -45
  381. package/dist/esm/services/events/tracking-event-sqs-service.d.ts +8 -8
  382. package/dist/esm/services/events/tracking-event-sqs-service.js +30 -30
  383. package/dist/esm/services/generic-cache-service.d.ts +7 -7
  384. package/dist/esm/services/generic-cache-service.js +29 -29
  385. package/dist/esm/services/index.d.ts +8 -8
  386. package/dist/esm/services/index.js +8 -8
  387. package/dist/esm/services/ipdata-lookup-service.d.ts +20 -20
  388. package/dist/esm/services/ipdata-lookup-service.js +108 -108
  389. package/dist/esm/services/shopify/index.d.ts +2 -2
  390. package/dist/esm/services/shopify/index.js +2 -2
  391. package/dist/esm/services/shopify/products/index.d.ts +1 -1
  392. package/dist/esm/services/shopify/products/index.js +1 -1
  393. package/dist/esm/services/shopify/products/shopify-products-serviceV2.d.ts +17 -17
  394. package/dist/esm/services/shopify/products/shopify-products-serviceV2.js +108 -108
  395. package/dist/esm/services/shopify/shopify-graphql-transformer.d.ts +8 -8
  396. package/dist/esm/services/shopify/shopify-graphql-transformer.js +138 -138
  397. package/dist/esm/types/api-response.d.ts +6 -6
  398. package/dist/esm/types/api-response.js +1 -1
  399. package/dist/esm/types/index.d.ts +1 -1
  400. package/dist/esm/types/index.js +1 -1
  401. package/dist/esm/types/internal-events/event-detail-types.d.ts +20 -20
  402. package/dist/esm/types/internal-events/event-detail-types.js +24 -24
  403. package/dist/esm/types/internal-events/index.d.ts +1 -1
  404. package/dist/esm/types/internal-events/index.js +1 -1
  405. package/dist/esm/types/shopify-graphql-types/admin.generated.d.ts +105 -105
  406. package/dist/esm/types/shopify-graphql-types/admin.generated.js +1 -1
  407. package/dist/esm/types/shopify-graphql-types/admin.types.d.ts +26289 -26289
  408. package/dist/esm/types/shopify-graphql-types/admin.types.js +5299 -5299
  409. package/dist/esm/types/shopify-graphql-types/index.d.ts +2 -2
  410. package/dist/esm/types/shopify-graphql-types/index.js +2 -2
  411. package/package.json +1 -1
@@ -1,140 +1,140 @@
1
- import { PURCHASED_CONTACT_STATUS, } from '@adtrackify/at-tracking-event-types';
2
- import { DynamoDbClient } from '../../clients';
3
- import { HttpError, getCurrentTimestamp } from '../../libs';
4
- import { Logger } from '../../helpers';
5
- import { ulid } from 'ulid';
6
- export class PurchasedContactsDbService {
7
- TABLE_NAME;
8
- TABLE_KEY;
9
- IDENTITY_ID_PIXEL_ID_INDEX_NAME;
10
- IP_ADDRESS_PIXEL_ID_INDEX_NAME;
11
- EMAIL_PIXEL_ID_INDEX_NAME;
12
- constructor(tableName, purchasedContactsKey, STAGE) {
13
- this.TABLE_NAME = tableName;
14
- this.TABLE_KEY = purchasedContactsKey;
15
- this.IDENTITY_ID_PIXEL_ID_INDEX_NAME = `${STAGE}-purchased-contacts-gsi-identity-id-pixel-id`;
16
- this.IP_ADDRESS_PIXEL_ID_INDEX_NAME = `${STAGE}-purchased-contacts-gsi-ip-address-pixel-id`;
17
- this.EMAIL_PIXEL_ID_INDEX_NAME = `${STAGE}-purchased-contacts-gsi-email-pixel-id`;
18
- }
19
- buildPurchasedContact = (accountId, primaryContact, contacts, deliverableContacts) => {
20
- const currentTimestamp = getCurrentTimestamp();
21
- const purchasedContact = {
22
- ...primaryContact,
23
- primaryIdentityId: primaryContact.identityId,
24
- matchedIdentityId: primaryContact.matchedIdentityId,
25
- isIdentityMerged: primaryContact.isIdentityMerged,
26
- id: ulid(),
27
- contacts,
28
- deliverableContacts: deliverableContacts,
29
- contactId: primaryContact.id,
30
- accountId,
31
- emailStatus: primaryContact?.emailVerification?.state,
32
- purchasedStatus: PURCHASED_CONTACT_STATUS.ACTIVE,
33
- purchasedAt: currentTimestamp,
34
- createdAt: currentTimestamp,
35
- updatedAt: currentTimestamp,
36
- };
37
- return purchasedContact;
38
- };
39
- getPurchasedContact = async (id) => {
40
- const purchasedContact = await DynamoDbClient.safeGet(this.TABLE_NAME, this.TABLE_KEY, id);
41
- if (!purchasedContact) {
42
- throw HttpError.notFound();
43
- }
44
- return purchasedContact;
45
- };
46
- getPurchasedContactByIdentityIdPixelId = async (identityId, pixelId) => {
47
- try {
48
- const values = {
49
- ':identityId': identityId,
50
- ':pixelId': pixelId,
51
- };
52
- const query = {
53
- TableName: this.TABLE_NAME,
54
- IndexName: this.IDENTITY_ID_PIXEL_ID_INDEX_NAME,
55
- KeyConditionExpression: 'identityId = :identityId and pixelId = :pixelId',
56
- ExpressionAttributeValues: values,
57
- };
58
- const purchasedContacts = await DynamoDbClient.queryAll(query);
59
- if (purchasedContacts && purchasedContacts.length > 0) {
60
- return purchasedContacts;
61
- }
62
- return [];
63
- }
64
- catch (error) {
65
- Logger.error('failed to getPurchasedContactByIdentityIdPixelId', { error, identityId, pixelId });
66
- return [];
67
- }
68
- };
69
- getPurchasedContactByEmailPixelId = async (email, pixelId) => {
70
- try {
71
- const values = {
72
- ':email': email,
73
- ':pixelId': pixelId,
74
- };
75
- const query = {
76
- TableName: this.TABLE_NAME,
77
- IndexName: this.EMAIL_PIXEL_ID_INDEX_NAME,
78
- KeyConditionExpression: 'email = :email and pixelId = :pixelId',
79
- ExpressionAttributeValues: values,
80
- };
81
- const purchasedContacts = await DynamoDbClient.queryAll(query);
82
- if (purchasedContacts && purchasedContacts.length > 0) {
83
- return purchasedContacts;
84
- }
85
- return [];
86
- }
87
- catch (error) {
88
- Logger.error('failed to getPurchasedContactByEmailPixelId', { error, email, pixelId });
89
- return [];
90
- }
91
- };
92
- getPurchasedContactByIpAddressPixelId = async (ipAddress, pixelId) => {
93
- try {
94
- const values = {
95
- ':ipAddress': ipAddress,
96
- ':pixelId': pixelId,
97
- };
98
- const query = {
99
- TableName: this.TABLE_NAME,
100
- IndexName: this.IP_ADDRESS_PIXEL_ID_INDEX_NAME,
101
- KeyConditionExpression: 'ipAddress = :ipAddress and pixelId = :pixelId',
102
- ExpressionAttributeValues: values,
103
- };
104
- const purchasedContacts = await DynamoDbClient.queryAll(query);
105
- if (purchasedContacts && purchasedContacts.length > 0) {
106
- return purchasedContacts;
107
- }
108
- return [];
109
- }
110
- catch (error) {
111
- Logger.error('failed to getPurchasedContactByIpAddressPixelId', { error, ipAddress, pixelId });
112
- return [];
113
- }
114
- };
115
- batchGetPurchasedContacts = async (ids) => {
116
- if (ids.length === 0) {
117
- return [];
118
- }
119
- const keys = ids.map((id) => ({ [this.TABLE_KEY]: id }));
120
- const purchasedContacts = await DynamoDbClient.safeBatchGet(this.TABLE_NAME, keys);
121
- return purchasedContacts;
122
- };
123
- putPurchasedContact = async (purchasedContact) => {
124
- await DynamoDbClient.safePut(this.TABLE_NAME, purchasedContact);
125
- return purchasedContact;
126
- };
127
- updatePurchasedContact = async (id, data) => {
128
- const purchasedContact = await this.getPurchasedContact(id);
129
- Object.assign(purchasedContact, data);
130
- const currentTimestamp = getCurrentTimestamp();
131
- purchasedContact.updatedAt = currentTimestamp;
132
- const res = await DynamoDbClient.safePut(this.TABLE_NAME, purchasedContact);
133
- if (!res) {
134
- Logger.error('purchased contact update failed', { purchasedContact });
135
- throw HttpError.internal();
136
- }
137
- return purchasedContact;
138
- };
139
- }
1
+ import { PURCHASED_CONTACT_STATUS, } from '@adtrackify/at-tracking-event-types';
2
+ import { DynamoDbClient } from '../../clients';
3
+ import { HttpError, getCurrentTimestamp } from '../../libs';
4
+ import { Logger } from '../../helpers';
5
+ import { ulid } from 'ulid';
6
+ export class PurchasedContactsDbService {
7
+ TABLE_NAME;
8
+ TABLE_KEY;
9
+ IDENTITY_ID_PIXEL_ID_INDEX_NAME;
10
+ IP_ADDRESS_PIXEL_ID_INDEX_NAME;
11
+ EMAIL_PIXEL_ID_INDEX_NAME;
12
+ constructor(tableName, purchasedContactsKey, STAGE) {
13
+ this.TABLE_NAME = tableName;
14
+ this.TABLE_KEY = purchasedContactsKey;
15
+ this.IDENTITY_ID_PIXEL_ID_INDEX_NAME = `${STAGE}-purchased-contacts-gsi-identity-id-pixel-id`;
16
+ this.IP_ADDRESS_PIXEL_ID_INDEX_NAME = `${STAGE}-purchased-contacts-gsi-ip-address-pixel-id`;
17
+ this.EMAIL_PIXEL_ID_INDEX_NAME = `${STAGE}-purchased-contacts-gsi-email-pixel-id`;
18
+ }
19
+ buildPurchasedContact = (accountId, primaryContact, contacts, deliverableContacts) => {
20
+ const currentTimestamp = getCurrentTimestamp();
21
+ const purchasedContact = {
22
+ ...primaryContact,
23
+ primaryIdentityId: primaryContact.identityId,
24
+ matchedIdentityId: primaryContact.matchedIdentityId,
25
+ isIdentityMerged: primaryContact.isIdentityMerged,
26
+ id: ulid(),
27
+ contacts,
28
+ deliverableContacts: deliverableContacts,
29
+ contactId: primaryContact.id,
30
+ accountId,
31
+ emailStatus: primaryContact?.emailVerification?.state,
32
+ purchasedStatus: PURCHASED_CONTACT_STATUS.ACTIVE,
33
+ purchasedAt: currentTimestamp,
34
+ createdAt: currentTimestamp,
35
+ updatedAt: currentTimestamp,
36
+ };
37
+ return purchasedContact;
38
+ };
39
+ getPurchasedContact = async (id) => {
40
+ const purchasedContact = await DynamoDbClient.safeGet(this.TABLE_NAME, this.TABLE_KEY, id);
41
+ if (!purchasedContact) {
42
+ throw HttpError.notFound();
43
+ }
44
+ return purchasedContact;
45
+ };
46
+ getPurchasedContactByIdentityIdPixelId = async (identityId, pixelId) => {
47
+ try {
48
+ const values = {
49
+ ':identityId': identityId,
50
+ ':pixelId': pixelId,
51
+ };
52
+ const query = {
53
+ TableName: this.TABLE_NAME,
54
+ IndexName: this.IDENTITY_ID_PIXEL_ID_INDEX_NAME,
55
+ KeyConditionExpression: 'identityId = :identityId and pixelId = :pixelId',
56
+ ExpressionAttributeValues: values,
57
+ };
58
+ const purchasedContacts = await DynamoDbClient.queryAll(query);
59
+ if (purchasedContacts && purchasedContacts.length > 0) {
60
+ return purchasedContacts;
61
+ }
62
+ return [];
63
+ }
64
+ catch (error) {
65
+ Logger.error('failed to getPurchasedContactByIdentityIdPixelId', { error, identityId, pixelId });
66
+ return [];
67
+ }
68
+ };
69
+ getPurchasedContactByEmailPixelId = async (email, pixelId) => {
70
+ try {
71
+ const values = {
72
+ ':email': email,
73
+ ':pixelId': pixelId,
74
+ };
75
+ const query = {
76
+ TableName: this.TABLE_NAME,
77
+ IndexName: this.EMAIL_PIXEL_ID_INDEX_NAME,
78
+ KeyConditionExpression: 'email = :email and pixelId = :pixelId',
79
+ ExpressionAttributeValues: values,
80
+ };
81
+ const purchasedContacts = await DynamoDbClient.queryAll(query);
82
+ if (purchasedContacts && purchasedContacts.length > 0) {
83
+ return purchasedContacts;
84
+ }
85
+ return [];
86
+ }
87
+ catch (error) {
88
+ Logger.error('failed to getPurchasedContactByEmailPixelId', { error, email, pixelId });
89
+ return [];
90
+ }
91
+ };
92
+ getPurchasedContactByIpAddressPixelId = async (ipAddress, pixelId) => {
93
+ try {
94
+ const values = {
95
+ ':ipAddress': ipAddress,
96
+ ':pixelId': pixelId,
97
+ };
98
+ const query = {
99
+ TableName: this.TABLE_NAME,
100
+ IndexName: this.IP_ADDRESS_PIXEL_ID_INDEX_NAME,
101
+ KeyConditionExpression: 'ipAddress = :ipAddress and pixelId = :pixelId',
102
+ ExpressionAttributeValues: values,
103
+ };
104
+ const purchasedContacts = await DynamoDbClient.queryAll(query);
105
+ if (purchasedContacts && purchasedContacts.length > 0) {
106
+ return purchasedContacts;
107
+ }
108
+ return [];
109
+ }
110
+ catch (error) {
111
+ Logger.error('failed to getPurchasedContactByIpAddressPixelId', { error, ipAddress, pixelId });
112
+ return [];
113
+ }
114
+ };
115
+ batchGetPurchasedContacts = async (ids) => {
116
+ if (ids.length === 0) {
117
+ return [];
118
+ }
119
+ const keys = ids.map((id) => ({ [this.TABLE_KEY]: id }));
120
+ const purchasedContacts = await DynamoDbClient.safeBatchGet(this.TABLE_NAME, keys);
121
+ return purchasedContacts;
122
+ };
123
+ putPurchasedContact = async (purchasedContact) => {
124
+ await DynamoDbClient.safePut(this.TABLE_NAME, purchasedContact);
125
+ return purchasedContact;
126
+ };
127
+ updatePurchasedContact = async (id, data) => {
128
+ const purchasedContact = await this.getPurchasedContact(id);
129
+ Object.assign(purchasedContact, data);
130
+ const currentTimestamp = getCurrentTimestamp();
131
+ purchasedContact.updatedAt = currentTimestamp;
132
+ const res = await DynamoDbClient.safePut(this.TABLE_NAME, purchasedContact);
133
+ if (!res) {
134
+ Logger.error('purchased contact update failed', { purchasedContact });
135
+ throw HttpError.internal();
136
+ }
137
+ return purchasedContact;
138
+ };
139
+ }
140
140
  //# sourceMappingURL=purchased-contacts-db-service.js.map
@@ -1,7 +1,7 @@
1
- import { ShopifyAppInstall } from '@adtrackify/at-tracking-event-types';
2
- export declare class ShopifyAppInstallsDbService {
3
- TABLE_NAME: string;
4
- constructor(tableName: string);
5
- getShopifyAppInstallByShop: (indexName: string, shop: string) => Promise<ShopifyAppInstall | null>;
6
- getShopifyAppInstallByPixelId: (indexName: string, pixelId: string) => Promise<ShopifyAppInstall | null>;
7
- }
1
+ import { ShopifyAppInstall } from '@adtrackify/at-tracking-event-types';
2
+ export declare class ShopifyAppInstallsDbService {
3
+ TABLE_NAME: string;
4
+ constructor(tableName: string);
5
+ getShopifyAppInstallByShop: (indexName: string, shop: string) => Promise<ShopifyAppInstall | null>;
6
+ getShopifyAppInstallByPixelId: (indexName: string, pixelId: string) => Promise<ShopifyAppInstall | null>;
7
+ }
@@ -1,44 +1,44 @@
1
- import { DynamoDbClient } from '../../clients';
2
- import { Logger } from '../../helpers';
3
- export class ShopifyAppInstallsDbService {
4
- TABLE_NAME;
5
- constructor(tableName) {
6
- this.TABLE_NAME = tableName;
7
- }
8
- getShopifyAppInstallByShop = async (indexName, shop) => {
9
- try {
10
- const values = {
11
- ':shop': shop,
12
- };
13
- const query = {
14
- TableName: this.TABLE_NAME,
15
- IndexName: indexName,
16
- KeyConditionExpression: 'shop = :shop',
17
- ExpressionAttributeValues: values,
18
- };
19
- const shopifyAppInstalls = await DynamoDbClient.queryAll(query);
20
- if (shopifyAppInstalls && shopifyAppInstalls.length > 0) {
21
- return shopifyAppInstalls[0];
22
- }
23
- return null;
24
- }
25
- catch (error) {
26
- Logger.error('failed to shopifyAppInstall by shop', { error, indexName, shop });
27
- return null;
28
- }
29
- };
30
- getShopifyAppInstallByPixelId = async (indexName, pixelId) => {
31
- try {
32
- const shopifyAppInstalls = await DynamoDbClient.safeQueryByGSI(this.TABLE_NAME, indexName, 'pixelId', pixelId);
33
- if (shopifyAppInstalls && shopifyAppInstalls?.length > 0) {
34
- return shopifyAppInstalls[0];
35
- }
36
- return null;
37
- }
38
- catch (error) {
39
- Logger.error('failed to fetch shopifyAppInstall by pixelId', { error, indexName, pixelId });
40
- return null;
41
- }
42
- };
43
- }
1
+ import { DynamoDbClient } from '../../clients';
2
+ import { Logger } from '../../helpers';
3
+ export class ShopifyAppInstallsDbService {
4
+ TABLE_NAME;
5
+ constructor(tableName) {
6
+ this.TABLE_NAME = tableName;
7
+ }
8
+ getShopifyAppInstallByShop = async (indexName, shop) => {
9
+ try {
10
+ const values = {
11
+ ':shop': shop,
12
+ };
13
+ const query = {
14
+ TableName: this.TABLE_NAME,
15
+ IndexName: indexName,
16
+ KeyConditionExpression: 'shop = :shop',
17
+ ExpressionAttributeValues: values,
18
+ };
19
+ const shopifyAppInstalls = await DynamoDbClient.queryAll(query);
20
+ if (shopifyAppInstalls && shopifyAppInstalls.length > 0) {
21
+ return shopifyAppInstalls[0];
22
+ }
23
+ return null;
24
+ }
25
+ catch (error) {
26
+ Logger.error('failed to shopifyAppInstall by shop', { error, indexName, shop });
27
+ return null;
28
+ }
29
+ };
30
+ getShopifyAppInstallByPixelId = async (indexName, pixelId) => {
31
+ try {
32
+ const shopifyAppInstalls = await DynamoDbClient.safeQueryByGSI(this.TABLE_NAME, indexName, 'pixelId', pixelId);
33
+ if (shopifyAppInstalls && shopifyAppInstalls?.length > 0) {
34
+ return shopifyAppInstalls[0];
35
+ }
36
+ return null;
37
+ }
38
+ catch (error) {
39
+ Logger.error('failed to fetch shopifyAppInstall by pixelId', { error, indexName, pixelId });
40
+ return null;
41
+ }
42
+ };
43
+ }
44
44
  //# sourceMappingURL=shopify-app-installs-db-service.js.map
@@ -1,16 +1,16 @@
1
- import { type InternalProduct } from '@adtrackify/at-tracking-event-types';
2
- import { ProductCache } from '../cache/index.js';
3
- export interface ShopifyProductDynamoDbCache extends ProductCache {
4
- pixelId_productId: string;
5
- pixelId: string;
6
- productId: string;
7
- }
8
- export declare class ShopifyProductsCacheDbService {
9
- TABLE_NAME: string;
10
- KEY_NAME: string;
11
- private dynamoDbCacheTtlInSeconds;
12
- constructor(tableName: string, keyName: string, dynamoDbCacheTtlInSeconds: number);
13
- getProductFromDynamoDBCache: (pixelId: string, productId: string) => Promise<InternalProduct | undefined>;
14
- putProductInDynamoDBCache: (pixelId: string, productId: string, product: InternalProduct, ttlInSeconds?: number) => Promise<import("@aws-sdk/lib-dynamodb").PutCommandOutput | null>;
15
- private isProductCacheStale;
16
- }
1
+ import { type InternalProduct } from '@adtrackify/at-tracking-event-types';
2
+ import { ProductCache } from '../cache/index.js';
3
+ export interface ShopifyProductDynamoDbCache extends ProductCache {
4
+ pixelId_productId: string;
5
+ pixelId: string;
6
+ productId: string;
7
+ }
8
+ export declare class ShopifyProductsCacheDbService {
9
+ TABLE_NAME: string;
10
+ KEY_NAME: string;
11
+ private dynamoDbCacheTtlInSeconds;
12
+ constructor(tableName: string, keyName: string, dynamoDbCacheTtlInSeconds: number);
13
+ getProductFromDynamoDBCache: (pixelId: string, productId: string) => Promise<InternalProduct | undefined>;
14
+ putProductInDynamoDBCache: (pixelId: string, productId: string, product: InternalProduct, ttlInSeconds?: number) => Promise<import("@aws-sdk/lib-dynamodb").PutCommandOutput | null>;
15
+ private isProductCacheStale;
16
+ }
@@ -1,67 +1,67 @@
1
- import { DateTime } from 'luxon';
2
- import crypto from 'crypto';
3
- import { DynamoDbClient } from '../../clients/index.js';
4
- import { compressJSON, decompressJSON, getCurrentTimestamp } from '../../libs/index.js';
5
- import { Logger } from '../../helpers/index.js';
6
- const DEFAULT_TTL_IN_SECONDS = 7 * 24 * 3600;
7
- export class ShopifyProductsCacheDbService {
8
- TABLE_NAME;
9
- KEY_NAME;
10
- dynamoDbCacheTtlInSeconds;
11
- constructor(tableName, keyName, dynamoDbCacheTtlInSeconds) {
12
- this.TABLE_NAME = tableName;
13
- this.KEY_NAME = keyName;
14
- this.dynamoDbCacheTtlInSeconds = dynamoDbCacheTtlInSeconds || DEFAULT_TTL_IN_SECONDS;
15
- }
16
- getProductFromDynamoDBCache = async (pixelId, productId) => {
17
- try {
18
- const cachedProduct = (await DynamoDbClient.safeGet(this.TABLE_NAME, this.KEY_NAME, `${pixelId}_${productId}`));
19
- if (cachedProduct && !this.isProductCacheStale(cachedProduct)) {
20
- const product = decompressJSON(cachedProduct.productCompressed);
21
- return product;
22
- }
23
- return undefined;
24
- }
25
- catch (error) {
26
- Logger.error('Failed getShopifyProductCacheREST', { keyName: this.KEY_NAME, pixelId, productId, error });
27
- return undefined;
28
- }
29
- };
30
- putProductInDynamoDBCache = async (pixelId, productId, product, ttlInSeconds) => {
31
- const ttl = ttlInSeconds || this.dynamoDbCacheTtlInSeconds;
32
- const expiresAt = DateTime.utc().plus({ seconds: ttl }).toSeconds();
33
- const cachedAt = getCurrentTimestamp();
34
- const cachedAtEpoch = DateTime.utc().toSeconds();
35
- const fullSha256 = crypto.createHash('sha256').update(JSON.stringify(product)).digest('hex');
36
- const noInventoryProduct = {
37
- ...product,
38
- totalInventory: undefined,
39
- variants: product?.variants?.map((variant) => ({
40
- ...variant,
41
- inventoryQuantity: undefined,
42
- inventoryItem: undefined,
43
- })),
44
- };
45
- const noInventorySha256 = crypto.createHash('sha256').update(JSON.stringify(noInventoryProduct)).digest('hex');
46
- const productCompressed = compressJSON(product);
47
- const shopifyProductCache = {
48
- pixelId_productId: `${pixelId}_${productId}`,
49
- pixelId,
50
- productId,
51
- productCompressed,
52
- fullSha256,
53
- noInventorySha256,
54
- cachedAt,
55
- cachedAtEpoch,
56
- expiresAt,
57
- };
58
- return await DynamoDbClient.safePut(this.TABLE_NAME, shopifyProductCache);
59
- };
60
- isProductCacheStale = (cachedData) => {
61
- if (cachedData?.expiresAt && cachedData.expiresAt < DateTime.utc().toSeconds()) {
62
- return true;
63
- }
64
- return false;
65
- };
66
- }
1
+ import { DateTime } from 'luxon';
2
+ import crypto from 'crypto';
3
+ import { DynamoDbClient } from '../../clients/index.js';
4
+ import { compressJSON, decompressJSON, getCurrentTimestamp } from '../../libs/index.js';
5
+ import { Logger } from '../../helpers/index.js';
6
+ const DEFAULT_TTL_IN_SECONDS = 7 * 24 * 3600;
7
+ export class ShopifyProductsCacheDbService {
8
+ TABLE_NAME;
9
+ KEY_NAME;
10
+ dynamoDbCacheTtlInSeconds;
11
+ constructor(tableName, keyName, dynamoDbCacheTtlInSeconds) {
12
+ this.TABLE_NAME = tableName;
13
+ this.KEY_NAME = keyName;
14
+ this.dynamoDbCacheTtlInSeconds = dynamoDbCacheTtlInSeconds || DEFAULT_TTL_IN_SECONDS;
15
+ }
16
+ getProductFromDynamoDBCache = async (pixelId, productId) => {
17
+ try {
18
+ const cachedProduct = (await DynamoDbClient.safeGet(this.TABLE_NAME, this.KEY_NAME, `${pixelId}_${productId}`));
19
+ if (cachedProduct && !this.isProductCacheStale(cachedProduct)) {
20
+ const product = decompressJSON(cachedProduct.productCompressed);
21
+ return product;
22
+ }
23
+ return undefined;
24
+ }
25
+ catch (error) {
26
+ Logger.error('Failed getShopifyProductCacheREST', { keyName: this.KEY_NAME, pixelId, productId, error });
27
+ return undefined;
28
+ }
29
+ };
30
+ putProductInDynamoDBCache = async (pixelId, productId, product, ttlInSeconds) => {
31
+ const ttl = ttlInSeconds || this.dynamoDbCacheTtlInSeconds;
32
+ const expiresAt = DateTime.utc().plus({ seconds: ttl }).toSeconds();
33
+ const cachedAt = getCurrentTimestamp();
34
+ const cachedAtEpoch = DateTime.utc().toSeconds();
35
+ const fullSha256 = crypto.createHash('sha256').update(JSON.stringify(product)).digest('hex');
36
+ const noInventoryProduct = {
37
+ ...product,
38
+ totalInventory: undefined,
39
+ variants: product?.variants?.map((variant) => ({
40
+ ...variant,
41
+ inventoryQuantity: undefined,
42
+ inventoryItem: undefined,
43
+ })),
44
+ };
45
+ const noInventorySha256 = crypto.createHash('sha256').update(JSON.stringify(noInventoryProduct)).digest('hex');
46
+ const productCompressed = compressJSON(product);
47
+ const shopifyProductCache = {
48
+ pixelId_productId: `${pixelId}_${productId}`,
49
+ pixelId,
50
+ productId,
51
+ productCompressed,
52
+ fullSha256,
53
+ noInventorySha256,
54
+ cachedAt,
55
+ cachedAtEpoch,
56
+ expiresAt,
57
+ };
58
+ return await DynamoDbClient.safePut(this.TABLE_NAME, shopifyProductCache);
59
+ };
60
+ isProductCacheStale = (cachedData) => {
61
+ if (cachedData?.expiresAt && cachedData.expiresAt < DateTime.utc().toSeconds()) {
62
+ return true;
63
+ }
64
+ return false;
65
+ };
66
+ }
67
67
  //# sourceMappingURL=shopify-products-cache-db-service.js.map
@@ -1,20 +1,20 @@
1
- import { AdClickInfo, TrackingEvent, TrackingEventRecord } from '@adtrackify/at-tracking-event-types';
2
- export interface LatestSessionResponseData {
3
- pixelId?: string;
4
- identityId?: string;
5
- sessionId?: string;
6
- click?: AdClickInfo;
7
- }
8
- export declare class TrackingEventsDbService {
9
- TABLE_NAME: string;
10
- KEY_NAME: string;
11
- constructor(tableName: string);
12
- private processResult;
13
- private processResults;
14
- getLatestSessionByIpAddressUserAgent: (indexName: string, ipAddressUserAgent: string, hostname?: string) => Promise<LatestSessionResponseData>;
15
- getTrackingEventsByPixelIdEventName: (indexName: string, pixelId: string, eventName: string, limit?: number, afterCollectedAt?: string) => Promise<TrackingEventRecord[]>;
16
- getTrackingEventCountByPixelId: (indexName: string, pixelId: string, offsetInMinutes?: number) => Promise<number>;
17
- getTrackingEvent: (eventId: string) => Promise<TrackingEventRecord | null>;
18
- buildTrackingEventRecord: (trackingEvent: TrackingEvent, ttlInDays?: number) => TrackingEventRecord;
19
- putTrackingEvent: (trackingEvent: TrackingEvent, ttlInDays?: number) => Promise<import("@aws-sdk/lib-dynamodb").PutCommandOutput | null | undefined>;
20
- }
1
+ import { AdClickInfo, TrackingEvent, TrackingEventRecord } from '@adtrackify/at-tracking-event-types';
2
+ export interface LatestSessionResponseData {
3
+ pixelId?: string;
4
+ identityId?: string;
5
+ sessionId?: string;
6
+ click?: AdClickInfo;
7
+ }
8
+ export declare class TrackingEventsDbService {
9
+ TABLE_NAME: string;
10
+ KEY_NAME: string;
11
+ constructor(tableName: string);
12
+ private processResult;
13
+ private processResults;
14
+ getLatestSessionByIpAddressUserAgent: (indexName: string, ipAddressUserAgent: string, hostname?: string) => Promise<LatestSessionResponseData>;
15
+ getTrackingEventsByPixelIdEventName: (indexName: string, pixelId: string, eventName: string, limit?: number, afterCollectedAt?: string) => Promise<TrackingEventRecord[]>;
16
+ getTrackingEventCountByPixelId: (indexName: string, pixelId: string, offsetInMinutes?: number) => Promise<number>;
17
+ getTrackingEvent: (eventId: string) => Promise<TrackingEventRecord | null>;
18
+ buildTrackingEventRecord: (trackingEvent: TrackingEvent, ttlInDays?: number) => TrackingEventRecord;
19
+ putTrackingEvent: (trackingEvent: TrackingEvent, ttlInDays?: number) => Promise<import("@aws-sdk/lib-dynamodb").PutCommandOutput | null | undefined>;
20
+ }