@adtrackify/at-service-common 3.6.6 → 3.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (413) 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 +220 -220
  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 +588 -588
  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 +130 -130
  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 +33 -33
  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 +51 -51
  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 +216 -216
  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 +85 -83
  46. package/dist/cjs/clients/internal-api/accounts-client.js +129 -129
  47. package/dist/cjs/clients/internal-api/accounts-client.js.map +1 -1
  48. package/dist/cjs/clients/internal-api/cache-lambda-client.d.ts +25 -25
  49. package/dist/cjs/clients/internal-api/cache-lambda-client.js +87 -87
  50. package/dist/cjs/clients/internal-api/db-management-client.d.ts +18 -18
  51. package/dist/cjs/clients/internal-api/db-management-client.js +36 -36
  52. package/dist/cjs/clients/internal-api/destinations-client.d.ts +33 -33
  53. package/dist/cjs/clients/internal-api/destinations-client.js +72 -72
  54. package/dist/cjs/clients/internal-api/destinations-client.js.map +1 -1
  55. package/dist/cjs/clients/internal-api/event-collector-client.d.ts +20 -20
  56. package/dist/cjs/clients/internal-api/event-collector-client.js +36 -36
  57. package/dist/cjs/clients/internal-api/identity-client.d.ts +31 -31
  58. package/dist/cjs/clients/internal-api/identity-client.js +91 -91
  59. package/dist/cjs/clients/internal-api/index.d.ts +9 -9
  60. package/dist/cjs/clients/internal-api/index.js +25 -25
  61. package/dist/cjs/clients/internal-api/shopify-app-install-client.d.ts +37 -37
  62. package/dist/cjs/clients/internal-api/shopify-app-install-client.js +81 -81
  63. package/dist/cjs/clients/internal-api/subscriptions-client.d.ts +26 -26
  64. package/dist/cjs/clients/internal-api/subscriptions-client.js +77 -77
  65. package/dist/cjs/clients/internal-api/users-auth-client.d.ts +35 -35
  66. package/dist/cjs/clients/internal-api/users-auth-client.js +110 -110
  67. package/dist/cjs/clients/third-party/emailable-client.d.ts +7 -7
  68. package/dist/cjs/clients/third-party/emailable-client.js +25 -25
  69. package/dist/cjs/clients/third-party/exchange-rate-api-client.d.ts +17 -17
  70. package/dist/cjs/clients/third-party/exchange-rate-api-client.js +19 -19
  71. package/dist/cjs/clients/third-party/index.d.ts +3 -3
  72. package/dist/cjs/clients/third-party/index.js +19 -19
  73. package/dist/cjs/clients/third-party/loops-client.d.ts +10 -10
  74. package/dist/cjs/clients/third-party/loops-client.js +30 -30
  75. package/dist/cjs/clients/third-party/shopify/graphql-product-queries.d.ts +2 -2
  76. package/dist/cjs/clients/third-party/shopify/graphql-product-queries.js +180 -180
  77. package/dist/cjs/clients/third-party/shopify/shopify-graphql-client.d.ts +9 -9
  78. package/dist/cjs/clients/third-party/shopify/shopify-graphql-client.js +115 -115
  79. package/dist/cjs/clients/third-party/shopify-client.d.ts +29 -29
  80. package/dist/cjs/clients/third-party/shopify-client.js +146 -146
  81. package/dist/cjs/helpers/account-users-helper.d.ts +2 -2
  82. package/dist/cjs/helpers/account-users-helper.js +22 -22
  83. package/dist/cjs/helpers/identity-cache-helper.d.ts +21 -21
  84. package/dist/cjs/helpers/identity-cache-helper.js +156 -156
  85. package/dist/cjs/helpers/index.d.ts +7 -7
  86. package/dist/cjs/helpers/index.js +23 -23
  87. package/dist/cjs/helpers/input-validation-helper.d.ts +3 -3
  88. package/dist/cjs/helpers/input-validation-helper.js +22 -22
  89. package/dist/cjs/helpers/logging-helper.d.ts +16 -16
  90. package/dist/cjs/helpers/logging-helper.js +84 -84
  91. package/dist/cjs/helpers/response-helper.d.ts +18 -18
  92. package/dist/cjs/helpers/response-helper.js +43 -43
  93. package/dist/cjs/helpers/shopify-helper.d.ts +9 -9
  94. package/dist/cjs/helpers/shopify-helper.js +26 -26
  95. package/dist/cjs/helpers/sqs-utils.d.ts +6 -6
  96. package/dist/cjs/helpers/sqs-utils.js +14 -14
  97. package/dist/cjs/index.d.ts +5 -5
  98. package/dist/cjs/index.js +21 -21
  99. package/dist/cjs/libs/click-id-parser.d.ts +23 -23
  100. package/dist/cjs/libs/click-id-parser.js +49 -49
  101. package/dist/cjs/libs/compression.d.ts +2 -2
  102. package/dist/cjs/libs/compression.js +33 -33
  103. package/dist/cjs/libs/cookie.d.ts +17 -17
  104. package/dist/cjs/libs/cookie.js +76 -76
  105. package/dist/cjs/libs/crypto.d.ts +3 -3
  106. package/dist/cjs/libs/crypto.js +20 -20
  107. package/dist/cjs/libs/csv.d.ts +2 -2
  108. package/dist/cjs/libs/csv.js +35 -35
  109. package/dist/cjs/libs/currency.d.ts +1 -1
  110. package/dist/cjs/libs/currency.js +29 -29
  111. package/dist/cjs/libs/dates.d.ts +12 -12
  112. package/dist/cjs/libs/dates.js +96 -96
  113. package/dist/cjs/libs/domain.d.ts +2 -2
  114. package/dist/cjs/libs/domain.js +38 -38
  115. package/dist/cjs/libs/emails.d.ts +6 -6
  116. package/dist/cjs/libs/emails.js +122 -122
  117. package/dist/cjs/libs/http-error.d.ts +21 -21
  118. package/dist/cjs/libs/http-error.js +63 -63
  119. package/dist/cjs/libs/http-status-codes.d.ts +58 -58
  120. package/dist/cjs/libs/http-status-codes.js +62 -62
  121. package/dist/cjs/libs/index.d.ts +17 -17
  122. package/dist/cjs/libs/index.js +33 -33
  123. package/dist/cjs/libs/numbers.d.ts +1 -1
  124. package/dist/cjs/libs/numbers.js +15 -15
  125. package/dist/cjs/libs/referrer-parser/index.d.ts +2 -2
  126. package/dist/cjs/libs/referrer-parser/index.js +18 -18
  127. package/dist/cjs/libs/referrer-parser/referrer-data.d.ts +9 -9
  128. package/dist/cjs/libs/referrer-parser/referrer-data.js +3307 -3307
  129. package/dist/cjs/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  130. package/dist/cjs/libs/referrer-parser/referrer-parser-util.js +131 -131
  131. package/dist/cjs/libs/strings.d.ts +3 -3
  132. package/dist/cjs/libs/strings.js +46 -46
  133. package/dist/cjs/libs/traits.d.ts +6 -6
  134. package/dist/cjs/libs/traits.js +65 -65
  135. package/dist/cjs/libs/url.d.ts +1 -1
  136. package/dist/cjs/libs/url.js +13 -13
  137. package/dist/cjs/services/cache/generic-cached-object.d.ts +5 -5
  138. package/dist/cjs/services/cache/generic-cached-object.js +2 -2
  139. package/dist/cjs/services/cache/index.d.ts +1 -1
  140. package/dist/cjs/services/cache/index.js +17 -17
  141. package/dist/cjs/services/cache/product-cache-service.d.ts +21 -21
  142. package/dist/cjs/services/cache/product-cache-service.js +76 -76
  143. package/dist/cjs/services/currency-exchange-rate-lookup-service.d.ts +11 -11
  144. package/dist/cjs/services/currency-exchange-rate-lookup-service.js +66 -66
  145. package/dist/cjs/services/db/currency-exchange-rates-db-service.d.ts +21 -21
  146. package/dist/cjs/services/db/currency-exchange-rates-db-service.js +39 -39
  147. package/dist/cjs/services/db/destinations-db-service.d.ts +12 -12
  148. package/dist/cjs/services/db/destinations-db-service.js +76 -76
  149. package/dist/cjs/services/db/identity-cache-db-service.d.ts +28 -28
  150. package/dist/cjs/services/db/identity-cache-db-service.js +320 -320
  151. package/dist/cjs/services/db/index.d.ts +9 -9
  152. package/dist/cjs/services/db/index.js +25 -25
  153. package/dist/cjs/services/db/log-events-db-service.d.ts +11 -11
  154. package/dist/cjs/services/db/log-events-db-service.js +181 -181
  155. package/dist/cjs/services/db/purchasable-contacts-db-service.d.ts +9 -9
  156. package/dist/cjs/services/db/purchasable-contacts-db-service.js +43 -43
  157. package/dist/cjs/services/db/purchased-contacts-db-service.d.ts +17 -17
  158. package/dist/cjs/services/db/purchased-contacts-db-service.js +143 -143
  159. package/dist/cjs/services/db/shopify-app-installs-db-service.d.ts +7 -7
  160. package/dist/cjs/services/db/shopify-app-installs-db-service.js +47 -47
  161. package/dist/cjs/services/db/shopify-products-cache-db-service.d.ts +16 -16
  162. package/dist/cjs/services/db/shopify-products-cache-db-service.js +73 -73
  163. package/dist/cjs/services/db/tracking-events-db-service.d.ts +20 -20
  164. package/dist/cjs/services/db/tracking-events-db-service.js +165 -165
  165. package/dist/cjs/services/eventbridge-integration-service.d.ts +9 -9
  166. package/dist/cjs/services/eventbridge-integration-service.js +28 -28
  167. package/dist/cjs/services/events/index.d.ts +3 -3
  168. package/dist/cjs/services/events/index.js +19 -19
  169. package/dist/cjs/services/events/log-event-service.d.ts +9 -9
  170. package/dist/cjs/services/events/log-event-service.js +56 -56
  171. package/dist/cjs/services/events/metric-event-service.d.ts +9 -9
  172. package/dist/cjs/services/events/metric-event-service.js +49 -49
  173. package/dist/cjs/services/events/tracking-event-sqs-service.d.ts +8 -8
  174. package/dist/cjs/services/events/tracking-event-sqs-service.js +34 -34
  175. package/dist/cjs/services/generic-cache-service.d.ts +7 -7
  176. package/dist/cjs/services/generic-cache-service.js +33 -33
  177. package/dist/cjs/services/index.d.ts +8 -8
  178. package/dist/cjs/services/index.js +24 -24
  179. package/dist/cjs/services/ipdata-lookup-service.d.ts +19 -19
  180. package/dist/cjs/services/ipdata-lookup-service.js +77 -77
  181. package/dist/cjs/services/shopify/index.d.ts +3 -3
  182. package/dist/cjs/services/shopify/index.js +19 -19
  183. package/dist/cjs/services/shopify/products/index.d.ts +1 -1
  184. package/dist/cjs/services/shopify/products/index.js +17 -17
  185. package/dist/cjs/services/shopify/products/shopify-products-serviceV2.d.ts +17 -17
  186. package/dist/cjs/services/shopify/products/shopify-products-serviceV2.js +114 -114
  187. package/dist/cjs/services/shopify/shopify-graphql-transformer.d.ts +9 -9
  188. package/dist/cjs/services/shopify/shopify-graphql-transformer.js +141 -141
  189. package/dist/cjs/services/shopify/types/index.d.ts +1 -1
  190. package/dist/cjs/services/shopify/types/index.js +17 -17
  191. package/dist/cjs/services/shopify/types/product.d.ts +115 -115
  192. package/dist/cjs/services/shopify/types/product.js +9 -9
  193. package/dist/cjs/types/api-response.d.ts +6 -6
  194. package/dist/cjs/types/api-response.js +2 -2
  195. package/dist/cjs/types/index.d.ts +1 -1
  196. package/dist/cjs/types/index.js +17 -17
  197. package/dist/cjs/types/internal-events/event-detail-types.d.ts +20 -20
  198. package/dist/cjs/types/internal-events/event-detail-types.js +27 -27
  199. package/dist/cjs/types/internal-events/index.d.ts +1 -1
  200. package/dist/cjs/types/internal-events/index.js +17 -17
  201. package/dist/cjs/types/shopify-graphql-types/admin.generated.d.ts +105 -105
  202. package/dist/cjs/types/shopify-graphql-types/admin.generated.js +2 -2
  203. package/dist/cjs/types/shopify-graphql-types/admin.types.d.ts +26289 -26289
  204. package/dist/cjs/types/shopify-graphql-types/admin.types.js +5311 -5311
  205. package/dist/cjs/types/shopify-graphql-types/index.d.ts +2 -2
  206. package/dist/cjs/types/shopify-graphql-types/index.js +18 -18
  207. package/dist/esm/__tests__/helpers/account-users-helper.spec.d.ts +1 -1
  208. package/dist/esm/__tests__/helpers/account-users-helper.spec.js +218 -218
  209. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.d.ts +1 -1
  210. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.js +672 -672
  211. package/dist/esm/__tests__/identity-cache/trait-merging-and-staleness.spec.d.ts +1 -1
  212. package/dist/esm/__tests__/identity-cache/trait-merging-and-staleness.spec.js +586 -586
  213. package/dist/esm/__tests__/libs/compress-decompress.spec.d.ts +1 -1
  214. package/dist/esm/__tests__/libs/compress-decompress.spec.js +14 -14
  215. package/dist/esm/__tests__/libs/currency.spec.d.ts +1 -1
  216. package/dist/esm/__tests__/libs/currency.spec.js +218 -218
  217. package/dist/esm/__tests__/libs/dates.spec.d.ts +1 -1
  218. package/dist/esm/__tests__/libs/dates.spec.js +128 -128
  219. package/dist/esm/__tests__/libs/domain.spec.d.ts +1 -1
  220. package/dist/esm/__tests__/libs/domain.spec.js +105 -105
  221. package/dist/esm/__tests__/libs/numbers.spec.d.ts +1 -1
  222. package/dist/esm/__tests__/libs/numbers.spec.js +259 -259
  223. package/dist/esm/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  224. package/dist/esm/__tests__/s3-client/s3-client.spec.js +31 -31
  225. package/dist/esm/__tests__/shopify/shopify-graphql-transformer.spec.d.ts +1 -1
  226. package/dist/esm/__tests__/shopify/shopify-graphql-transformer.spec.js +33 -33
  227. package/dist/esm/clients/generic/cognito-client.d.ts +23 -23
  228. package/dist/esm/clients/generic/cognito-client.js +204 -204
  229. package/dist/esm/clients/generic/dynamodb-client.d.ts +17 -17
  230. package/dist/esm/clients/generic/dynamodb-client.js +166 -166
  231. package/dist/esm/clients/generic/eventbridge-client.d.ts +14 -14
  232. package/dist/esm/clients/generic/eventbridge-client.js +47 -47
  233. package/dist/esm/clients/generic/http-client.d.ts +14 -14
  234. package/dist/esm/clients/generic/http-client.js +53 -53
  235. package/dist/esm/clients/generic/index.d.ts +10 -10
  236. package/dist/esm/clients/generic/index.js +10 -10
  237. package/dist/esm/clients/generic/lambda-invoke-client.d.ts +10 -10
  238. package/dist/esm/clients/generic/lambda-invoke-client.js +31 -31
  239. package/dist/esm/clients/generic/location-client.d.ts +8 -8
  240. package/dist/esm/clients/generic/location-client.js +27 -27
  241. package/dist/esm/clients/generic/redis-client.d.ts +18 -18
  242. package/dist/esm/clients/generic/redis-client.js +121 -121
  243. package/dist/esm/clients/generic/s3-client.d.ts +23 -23
  244. package/dist/esm/clients/generic/s3-client.js +209 -209
  245. package/dist/esm/clients/generic/singlestore-db-client.d.ts +14 -14
  246. package/dist/esm/clients/generic/singlestore-db-client.js +40 -40
  247. package/dist/esm/clients/generic/sqs-client.d.ts +20 -20
  248. package/dist/esm/clients/generic/sqs-client.js +32 -32
  249. package/dist/esm/clients/index.d.ts +3 -3
  250. package/dist/esm/clients/index.js +3 -3
  251. package/dist/esm/clients/internal-api/accounts-client.d.ts +85 -83
  252. package/dist/esm/clients/internal-api/accounts-client.js +125 -125
  253. package/dist/esm/clients/internal-api/accounts-client.js.map +1 -1
  254. package/dist/esm/clients/internal-api/cache-lambda-client.d.ts +25 -25
  255. package/dist/esm/clients/internal-api/cache-lambda-client.js +83 -83
  256. package/dist/esm/clients/internal-api/db-management-client.d.ts +18 -18
  257. package/dist/esm/clients/internal-api/db-management-client.js +32 -32
  258. package/dist/esm/clients/internal-api/destinations-client.d.ts +33 -33
  259. package/dist/esm/clients/internal-api/destinations-client.js +68 -68
  260. package/dist/esm/clients/internal-api/destinations-client.js.map +1 -1
  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 +9 -9
  358. package/dist/esm/services/db/index.js +9 -9
  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/purchasable-contacts-db-service.d.ts +9 -9
  362. package/dist/esm/services/db/purchasable-contacts-db-service.js +39 -39
  363. package/dist/esm/services/db/purchased-contacts-db-service.d.ts +17 -17
  364. package/dist/esm/services/db/purchased-contacts-db-service.js +139 -139
  365. package/dist/esm/services/db/shopify-app-installs-db-service.d.ts +7 -7
  366. package/dist/esm/services/db/shopify-app-installs-db-service.js +43 -43
  367. package/dist/esm/services/db/shopify-products-cache-db-service.d.ts +16 -16
  368. package/dist/esm/services/db/shopify-products-cache-db-service.js +66 -66
  369. package/dist/esm/services/db/tracking-events-db-service.d.ts +20 -20
  370. package/dist/esm/services/db/tracking-events-db-service.js +161 -161
  371. package/dist/esm/services/eventbridge-integration-service.d.ts +9 -9
  372. package/dist/esm/services/eventbridge-integration-service.js +24 -24
  373. package/dist/esm/services/events/index.d.ts +3 -3
  374. package/dist/esm/services/events/index.js +3 -3
  375. package/dist/esm/services/events/log-event-service.d.ts +9 -9
  376. package/dist/esm/services/events/log-event-service.js +52 -52
  377. package/dist/esm/services/events/metric-event-service.d.ts +9 -9
  378. package/dist/esm/services/events/metric-event-service.js +45 -45
  379. package/dist/esm/services/events/tracking-event-sqs-service.d.ts +8 -8
  380. package/dist/esm/services/events/tracking-event-sqs-service.js +30 -30
  381. package/dist/esm/services/generic-cache-service.d.ts +7 -7
  382. package/dist/esm/services/generic-cache-service.js +29 -29
  383. package/dist/esm/services/index.d.ts +8 -8
  384. package/dist/esm/services/index.js +8 -8
  385. package/dist/esm/services/ipdata-lookup-service.d.ts +19 -19
  386. package/dist/esm/services/ipdata-lookup-service.js +73 -73
  387. package/dist/esm/services/shopify/index.d.ts +3 -3
  388. package/dist/esm/services/shopify/index.js +3 -3
  389. package/dist/esm/services/shopify/products/index.d.ts +1 -1
  390. package/dist/esm/services/shopify/products/index.js +1 -1
  391. package/dist/esm/services/shopify/products/shopify-products-serviceV2.d.ts +17 -17
  392. package/dist/esm/services/shopify/products/shopify-products-serviceV2.js +110 -110
  393. package/dist/esm/services/shopify/shopify-graphql-transformer.d.ts +9 -9
  394. package/dist/esm/services/shopify/shopify-graphql-transformer.js +138 -138
  395. package/dist/esm/services/shopify/types/index.d.ts +1 -1
  396. package/dist/esm/services/shopify/types/index.js +1 -1
  397. package/dist/esm/services/shopify/types/product.d.ts +115 -115
  398. package/dist/esm/services/shopify/types/product.js +6 -6
  399. package/dist/esm/types/api-response.d.ts +6 -6
  400. package/dist/esm/types/api-response.js +1 -1
  401. package/dist/esm/types/index.d.ts +1 -1
  402. package/dist/esm/types/index.js +1 -1
  403. package/dist/esm/types/internal-events/event-detail-types.d.ts +20 -20
  404. package/dist/esm/types/internal-events/event-detail-types.js +24 -24
  405. package/dist/esm/types/internal-events/index.d.ts +1 -1
  406. package/dist/esm/types/internal-events/index.js +1 -1
  407. package/dist/esm/types/shopify-graphql-types/admin.generated.d.ts +105 -105
  408. package/dist/esm/types/shopify-graphql-types/admin.generated.js +1 -1
  409. package/dist/esm/types/shopify-graphql-types/admin.types.d.ts +26289 -26289
  410. package/dist/esm/types/shopify-graphql-types/admin.types.js +5299 -5299
  411. package/dist/esm/types/shopify-graphql-types/index.d.ts +2 -2
  412. package/dist/esm/types/shopify-graphql-types/index.js +2 -2
  413. package/package.json +134 -134
@@ -1,69 +1,69 @@
1
- import { DateTime } from 'luxon';
2
- import { GenericCacheService } from '../generic-cache-service';
3
- import { compressJSON, decompressJSON } from '../../libs';
4
- import crypto from 'crypto';
5
- const DEFAULT_TTL_IN_SECONDS = 7 * 24 * 3600;
6
- export const getProductCacheKey = (pixelId, productId) => {
7
- return `internal:product:${pixelId}_${productId}`;
8
- };
9
- export class ProductCacheService {
10
- genericCacheService;
11
- redisCacheTtlInSeconds;
12
- constructor(cacheLambdaFunctionArn, redisCacheTtlInSeconds) {
13
- this.genericCacheService = new GenericCacheService(cacheLambdaFunctionArn);
14
- this.redisCacheTtlInSeconds = redisCacheTtlInSeconds || DEFAULT_TTL_IN_SECONDS;
15
- }
16
- getCacheKey = (pixelId, productId) => {
17
- return getProductCacheKey(pixelId, productId);
18
- };
19
- getProductFromCache = async (pixelId, productId) => {
20
- const cachedData = await this.getProductCache(pixelId, productId);
21
- if (cachedData && !this.isProductCacheStale(cachedData)) {
22
- const product = decompressJSON(cachedData.productCompressed);
23
- return product;
24
- }
25
- return undefined;
26
- };
27
- getProductCache = async (pixelId, productId) => {
28
- const cacheKey = this.getCacheKey(pixelId, productId);
29
- const cachedData = await this.genericCacheService.getCachedData(cacheKey);
30
- return cachedData;
31
- };
32
- putProductInCache = async (pixelId, productId, product, ttlInSeconds) => {
33
- const cacheKey = this.getCacheKey(pixelId, productId);
34
- const ttl = ttlInSeconds || this.redisCacheTtlInSeconds;
35
- const expiresAt = DateTime.utc().plus({ seconds: ttl }).toSeconds();
36
- const cachedAtEpoch = DateTime.utc().toSeconds();
37
- const fullSha256 = crypto.createHash('sha256').update(JSON.stringify(product)).digest('hex');
38
- const noInventoryProduct = {
39
- ...product,
40
- totalInventory: undefined,
41
- variants: product?.variants?.map((variant) => ({
42
- ...variant,
43
- inventoryQuantity: undefined,
44
- inventoryItem: undefined,
45
- })),
46
- };
47
- const noInventorySha256 = crypto.createHash('sha256').update(JSON.stringify(noInventoryProduct)).digest('hex');
48
- const productCompressed = compressJSON(product);
49
- const productCache = {
50
- productCompressed,
51
- fullSha256,
52
- noInventorySha256,
53
- cachedAtEpoch,
54
- expiresAt,
55
- };
56
- await this.genericCacheService.putCachedData(cacheKey, productCache, ttl);
57
- };
58
- deleteProductFromCache = async (pixelId, productId) => {
59
- const cacheKey = this.getCacheKey(pixelId, productId);
60
- await this.genericCacheService.deleteCachedData(cacheKey);
61
- };
62
- isProductCacheStale = (cachedData) => {
63
- if (cachedData?.expiresAt && cachedData.expiresAt < DateTime.utc().toSeconds()) {
64
- return true;
65
- }
66
- return false;
67
- };
68
- }
1
+ import { DateTime } from 'luxon';
2
+ import { GenericCacheService } from '../generic-cache-service';
3
+ import { compressJSON, decompressJSON } from '../../libs';
4
+ import crypto from 'crypto';
5
+ const DEFAULT_TTL_IN_SECONDS = 7 * 24 * 3600;
6
+ export const getProductCacheKey = (pixelId, productId) => {
7
+ return `internal:product:${pixelId}_${productId}`;
8
+ };
9
+ export class ProductCacheService {
10
+ genericCacheService;
11
+ redisCacheTtlInSeconds;
12
+ constructor(cacheLambdaFunctionArn, redisCacheTtlInSeconds) {
13
+ this.genericCacheService = new GenericCacheService(cacheLambdaFunctionArn);
14
+ this.redisCacheTtlInSeconds = redisCacheTtlInSeconds || DEFAULT_TTL_IN_SECONDS;
15
+ }
16
+ getCacheKey = (pixelId, productId) => {
17
+ return getProductCacheKey(pixelId, productId);
18
+ };
19
+ getProductFromCache = async (pixelId, productId) => {
20
+ const cachedData = await this.getProductCache(pixelId, productId);
21
+ if (cachedData && !this.isProductCacheStale(cachedData)) {
22
+ const product = decompressJSON(cachedData.productCompressed);
23
+ return product;
24
+ }
25
+ return undefined;
26
+ };
27
+ getProductCache = async (pixelId, productId) => {
28
+ const cacheKey = this.getCacheKey(pixelId, productId);
29
+ const cachedData = await this.genericCacheService.getCachedData(cacheKey);
30
+ return cachedData;
31
+ };
32
+ putProductInCache = async (pixelId, productId, product, ttlInSeconds) => {
33
+ const cacheKey = this.getCacheKey(pixelId, productId);
34
+ const ttl = ttlInSeconds || this.redisCacheTtlInSeconds;
35
+ const expiresAt = DateTime.utc().plus({ seconds: ttl }).toSeconds();
36
+ const cachedAtEpoch = DateTime.utc().toSeconds();
37
+ const fullSha256 = crypto.createHash('sha256').update(JSON.stringify(product)).digest('hex');
38
+ const noInventoryProduct = {
39
+ ...product,
40
+ totalInventory: undefined,
41
+ variants: product?.variants?.map((variant) => ({
42
+ ...variant,
43
+ inventoryQuantity: undefined,
44
+ inventoryItem: undefined,
45
+ })),
46
+ };
47
+ const noInventorySha256 = crypto.createHash('sha256').update(JSON.stringify(noInventoryProduct)).digest('hex');
48
+ const productCompressed = compressJSON(product);
49
+ const productCache = {
50
+ productCompressed,
51
+ fullSha256,
52
+ noInventorySha256,
53
+ cachedAtEpoch,
54
+ expiresAt,
55
+ };
56
+ await this.genericCacheService.putCachedData(cacheKey, productCache, ttl);
57
+ };
58
+ deleteProductFromCache = async (pixelId, productId) => {
59
+ const cacheKey = this.getCacheKey(pixelId, productId);
60
+ await this.genericCacheService.deleteCachedData(cacheKey);
61
+ };
62
+ isProductCacheStale = (cachedData) => {
63
+ if (cachedData?.expiresAt && cachedData.expiresAt < DateTime.utc().toSeconds()) {
64
+ return true;
65
+ }
66
+ return false;
67
+ };
68
+ }
69
69
  //# sourceMappingURL=product-cache-service.js.map
@@ -1,11 +1,11 @@
1
- import { CurrencyExchangeRateRecord } from './db/currency-exchange-rates-db-service';
2
- export declare class CurrencyExchangeRateLookupService {
3
- private TABLE_NAME;
4
- private TABLE_KEY;
5
- private EXCHANGE_RATE_API_KEY;
6
- private TTL_IN_DAYS;
7
- private currencyExchangeRatesDbService;
8
- private exchangeRateApiClient;
9
- constructor(tableName: string, tableKey: string, exchangeRateApiKey: string, ttlInDays?: number);
10
- lookupCurrencyExchangeRate: (currency: string) => Promise<CurrencyExchangeRateRecord | null>;
11
- }
1
+ import { CurrencyExchangeRateRecord } from './db/currency-exchange-rates-db-service';
2
+ export declare class CurrencyExchangeRateLookupService {
3
+ private TABLE_NAME;
4
+ private TABLE_KEY;
5
+ private EXCHANGE_RATE_API_KEY;
6
+ private TTL_IN_DAYS;
7
+ private currencyExchangeRatesDbService;
8
+ private exchangeRateApiClient;
9
+ constructor(tableName: string, tableKey: string, exchangeRateApiKey: string, ttlInDays?: number);
10
+ lookupCurrencyExchangeRate: (currency: string) => Promise<CurrencyExchangeRateRecord | null>;
11
+ }
@@ -1,63 +1,63 @@
1
- import { DateTime } from 'luxon';
2
- import { Logger } from '../helpers';
3
- import { CurrencyExchangeRatesDbService } from './db/currency-exchange-rates-db-service';
4
- import { ExchangeRateApiClient, } from '../clients/third-party/exchange-rate-api-client';
5
- export class CurrencyExchangeRateLookupService {
6
- TABLE_NAME;
7
- TABLE_KEY;
8
- EXCHANGE_RATE_API_KEY;
9
- TTL_IN_DAYS;
10
- currencyExchangeRatesDbService;
11
- exchangeRateApiClient;
12
- constructor(tableName, tableKey, exchangeRateApiKey, ttlInDays) {
13
- this.TABLE_NAME = tableName;
14
- this.TABLE_KEY = tableKey;
15
- this.EXCHANGE_RATE_API_KEY = exchangeRateApiKey;
16
- this.TTL_IN_DAYS = ttlInDays || 7;
17
- this.currencyExchangeRatesDbService = new CurrencyExchangeRatesDbService(this.TABLE_NAME, this.TABLE_KEY);
18
- this.exchangeRateApiClient = new ExchangeRateApiClient(this.EXCHANGE_RATE_API_KEY);
19
- }
20
- lookupCurrencyExchangeRate = async (currency) => {
21
- try {
22
- const record = await this.currencyExchangeRatesDbService.getCurrencyExchangeRate(currency);
23
- if (record && record?.expiresAt && record.expiresAt > DateTime.utc().toSeconds()) {
24
- Logger.debug('Currency exchange rate record found in db cache', {
25
- currency,
26
- record,
27
- expiresAt: record.expiresAt,
28
- currentEpoch: DateTime.utc().toSeconds(),
29
- });
30
- return record;
31
- }
32
- const response = await this.exchangeRateApiClient.getCurrencyExchangeRate(currency);
33
- if (response.status !== 200 || response?.data?.result !== 'success' || !response?.data) {
34
- Logger.error('Failed to get currency exchange rate from api', { response });
35
- return null;
36
- }
37
- const exchangeRateResponse = response.data;
38
- const currencyRates = exchangeRateResponse?.conversion_rates;
39
- const providerLastUpdatedAtEpoch = exchangeRateResponse?.time_last_update_unix;
40
- const providerNextUpdateAtEpoch = exchangeRateResponse?.time_next_update_unix;
41
- const currencyExchangeRateRecord = this.currencyExchangeRatesDbService.buildCurrencyExchangeRateRecord(currency, currencyRates, this.TTL_IN_DAYS, 'exchangerate-api', providerLastUpdatedAtEpoch, providerNextUpdateAtEpoch);
42
- await this.currencyExchangeRatesDbService.putCurrencyExchangeRate(currencyExchangeRateRecord);
43
- Logger.debug('Currency exchange rate record put in db cache', {
44
- currency,
45
- currencyExchangeRateRecord,
46
- expiresAt: currencyExchangeRateRecord.expiresAt,
47
- currentEpoch: DateTime.utc().toSeconds(),
48
- });
49
- return currencyExchangeRateRecord ?? null;
50
- }
51
- catch (error) {
52
- Logger.error('Failed to lookup currency exchange rate', {
53
- error,
54
- currency,
55
- tableName: this.TABLE_NAME,
56
- tableKey: this.TABLE_KEY,
57
- exchangeRateApiKey: this.EXCHANGE_RATE_API_KEY,
58
- });
59
- return null;
60
- }
61
- };
62
- }
1
+ import { DateTime } from 'luxon';
2
+ import { Logger } from '../helpers';
3
+ import { CurrencyExchangeRatesDbService } from './db/currency-exchange-rates-db-service';
4
+ import { ExchangeRateApiClient, } from '../clients/third-party/exchange-rate-api-client';
5
+ export class CurrencyExchangeRateLookupService {
6
+ TABLE_NAME;
7
+ TABLE_KEY;
8
+ EXCHANGE_RATE_API_KEY;
9
+ TTL_IN_DAYS;
10
+ currencyExchangeRatesDbService;
11
+ exchangeRateApiClient;
12
+ constructor(tableName, tableKey, exchangeRateApiKey, ttlInDays) {
13
+ this.TABLE_NAME = tableName;
14
+ this.TABLE_KEY = tableKey;
15
+ this.EXCHANGE_RATE_API_KEY = exchangeRateApiKey;
16
+ this.TTL_IN_DAYS = ttlInDays || 7;
17
+ this.currencyExchangeRatesDbService = new CurrencyExchangeRatesDbService(this.TABLE_NAME, this.TABLE_KEY);
18
+ this.exchangeRateApiClient = new ExchangeRateApiClient(this.EXCHANGE_RATE_API_KEY);
19
+ }
20
+ lookupCurrencyExchangeRate = async (currency) => {
21
+ try {
22
+ const record = await this.currencyExchangeRatesDbService.getCurrencyExchangeRate(currency);
23
+ if (record && record?.expiresAt && record.expiresAt > DateTime.utc().toSeconds()) {
24
+ Logger.debug('Currency exchange rate record found in db cache', {
25
+ currency,
26
+ record,
27
+ expiresAt: record.expiresAt,
28
+ currentEpoch: DateTime.utc().toSeconds(),
29
+ });
30
+ return record;
31
+ }
32
+ const response = await this.exchangeRateApiClient.getCurrencyExchangeRate(currency);
33
+ if (response.status !== 200 || response?.data?.result !== 'success' || !response?.data) {
34
+ Logger.error('Failed to get currency exchange rate from api', { response });
35
+ return null;
36
+ }
37
+ const exchangeRateResponse = response.data;
38
+ const currencyRates = exchangeRateResponse?.conversion_rates;
39
+ const providerLastUpdatedAtEpoch = exchangeRateResponse?.time_last_update_unix;
40
+ const providerNextUpdateAtEpoch = exchangeRateResponse?.time_next_update_unix;
41
+ const currencyExchangeRateRecord = this.currencyExchangeRatesDbService.buildCurrencyExchangeRateRecord(currency, currencyRates, this.TTL_IN_DAYS, 'exchangerate-api', providerLastUpdatedAtEpoch, providerNextUpdateAtEpoch);
42
+ await this.currencyExchangeRatesDbService.putCurrencyExchangeRate(currencyExchangeRateRecord);
43
+ Logger.debug('Currency exchange rate record put in db cache', {
44
+ currency,
45
+ currencyExchangeRateRecord,
46
+ expiresAt: currencyExchangeRateRecord.expiresAt,
47
+ currentEpoch: DateTime.utc().toSeconds(),
48
+ });
49
+ return currencyExchangeRateRecord ?? null;
50
+ }
51
+ catch (error) {
52
+ Logger.error('Failed to lookup currency exchange rate', {
53
+ error,
54
+ currency,
55
+ tableName: this.TABLE_NAME,
56
+ tableKey: this.TABLE_KEY,
57
+ exchangeRateApiKey: this.EXCHANGE_RATE_API_KEY,
58
+ });
59
+ return null;
60
+ }
61
+ };
62
+ }
63
63
  //# sourceMappingURL=currency-exchange-rate-lookup-service.js.map
@@ -1,21 +1,21 @@
1
- export type CurrencyRates = Record<string, number>;
2
- export interface CurrencyExchangeRateRecord {
3
- currency: string;
4
- rates: CurrencyRates;
5
- expiresAt: number;
6
- cachedAt: string;
7
- cachedAtEpoch: number;
8
- provider?: string;
9
- providerLastUpdatedAtEpoch?: number;
10
- providerNextUpdateAtEpoch?: number;
11
- createdAt: string;
12
- updatedAt: string;
13
- }
14
- export declare class CurrencyExchangeRatesDbService {
15
- TABLE_NAME: string;
16
- TABLE_KEY: string;
17
- constructor(tableName: string, tableKey: string);
18
- getCurrencyExchangeRate: (currencyCode: string) => Promise<CurrencyExchangeRateRecord | null>;
19
- buildCurrencyExchangeRateRecord: (currency: string, rates: CurrencyRates, ttlInDays: number, provider?: string, providerLastUpdatedAtEpoch?: number, providerNextUpdateAtEpoch?: number) => CurrencyExchangeRateRecord;
20
- putCurrencyExchangeRate: (record: CurrencyExchangeRateRecord) => Promise<CurrencyExchangeRateRecord>;
21
- }
1
+ export type CurrencyRates = Record<string, number>;
2
+ export interface CurrencyExchangeRateRecord {
3
+ currency: string;
4
+ rates: CurrencyRates;
5
+ expiresAt: number;
6
+ cachedAt: string;
7
+ cachedAtEpoch: number;
8
+ provider?: string;
9
+ providerLastUpdatedAtEpoch?: number;
10
+ providerNextUpdateAtEpoch?: number;
11
+ createdAt: string;
12
+ updatedAt: string;
13
+ }
14
+ export declare class CurrencyExchangeRatesDbService {
15
+ TABLE_NAME: string;
16
+ TABLE_KEY: string;
17
+ constructor(tableName: string, tableKey: string);
18
+ getCurrencyExchangeRate: (currencyCode: string) => Promise<CurrencyExchangeRateRecord | null>;
19
+ buildCurrencyExchangeRateRecord: (currency: string, rates: CurrencyRates, ttlInDays: number, provider?: string, providerLastUpdatedAtEpoch?: number, providerNextUpdateAtEpoch?: number) => CurrencyExchangeRateRecord;
20
+ putCurrencyExchangeRate: (record: CurrencyExchangeRateRecord) => Promise<CurrencyExchangeRateRecord>;
21
+ }
@@ -1,36 +1,36 @@
1
- import { DateTime } from 'luxon';
2
- import { DynamoDbClient } from '../../clients';
3
- import { getCurrentTimestamp } from '../../libs/dates';
4
- export class CurrencyExchangeRatesDbService {
5
- TABLE_NAME;
6
- TABLE_KEY;
7
- constructor(tableName, tableKey) {
8
- this.TABLE_NAME = tableName;
9
- this.TABLE_KEY = tableKey;
10
- }
11
- getCurrencyExchangeRate = async (currencyCode) => {
12
- const record = await DynamoDbClient.safeGet(this.TABLE_NAME, this.TABLE_KEY, currencyCode);
13
- return record ?? null;
14
- };
15
- buildCurrencyExchangeRateRecord = (currency, rates, ttlInDays, provider, providerLastUpdatedAtEpoch, providerNextUpdateAtEpoch) => {
16
- const expiresAt = DateTime.utc().plus({ days: ttlInDays }).toSeconds();
17
- const currentTimestamp = getCurrentTimestamp();
18
- return {
19
- currency,
20
- rates,
21
- expiresAt,
22
- cachedAt: currentTimestamp,
23
- cachedAtEpoch: DateTime.utc().toSeconds(),
24
- createdAt: currentTimestamp,
25
- updatedAt: currentTimestamp,
26
- provider,
27
- providerLastUpdatedAtEpoch,
28
- providerNextUpdateAtEpoch,
29
- };
30
- };
31
- putCurrencyExchangeRate = async (record) => {
32
- await DynamoDbClient.safePut(this.TABLE_NAME, record);
33
- return record;
34
- };
35
- }
1
+ import { DateTime } from 'luxon';
2
+ import { DynamoDbClient } from '../../clients';
3
+ import { getCurrentTimestamp } from '../../libs/dates';
4
+ export class CurrencyExchangeRatesDbService {
5
+ TABLE_NAME;
6
+ TABLE_KEY;
7
+ constructor(tableName, tableKey) {
8
+ this.TABLE_NAME = tableName;
9
+ this.TABLE_KEY = tableKey;
10
+ }
11
+ getCurrencyExchangeRate = async (currencyCode) => {
12
+ const record = await DynamoDbClient.safeGet(this.TABLE_NAME, this.TABLE_KEY, currencyCode);
13
+ return record ?? null;
14
+ };
15
+ buildCurrencyExchangeRateRecord = (currency, rates, ttlInDays, provider, providerLastUpdatedAtEpoch, providerNextUpdateAtEpoch) => {
16
+ const expiresAt = DateTime.utc().plus({ days: ttlInDays }).toSeconds();
17
+ const currentTimestamp = getCurrentTimestamp();
18
+ return {
19
+ currency,
20
+ rates,
21
+ expiresAt,
22
+ cachedAt: currentTimestamp,
23
+ cachedAtEpoch: DateTime.utc().toSeconds(),
24
+ createdAt: currentTimestamp,
25
+ updatedAt: currentTimestamp,
26
+ provider,
27
+ providerLastUpdatedAtEpoch,
28
+ providerNextUpdateAtEpoch,
29
+ };
30
+ };
31
+ putCurrencyExchangeRate = async (record) => {
32
+ await DynamoDbClient.safePut(this.TABLE_NAME, record);
33
+ return record;
34
+ };
35
+ }
36
36
  //# sourceMappingURL=currency-exchange-rates-db-service.js.map
@@ -1,12 +1,12 @@
1
- import { Destination } from '@adtrackify/at-tracking-event-types';
2
- export declare class DestinationsDbService {
3
- TABLE_NAME: string;
4
- TABLE_KEY: string;
5
- constructor(tableName: string);
6
- getDestinationById: (id: string) => Promise<Destination | null>;
7
- getDestinationsByPixel: (indexName: string, pixelId: string) => Promise<Destination[]>;
8
- getDestinationsByAccountId: (indexName: string, accountId: string) => Promise<Destination[]>;
9
- getDestinationsByDestinationType: (indexName: string, destinationType: string) => Promise<Destination[]>;
10
- batchGetDestinationsById: (ids: string[]) => Promise<Destination[]>;
11
- getDestinationsByDestination: (indexName: string, destinationKey: string) => Promise<Destination[]>;
12
- }
1
+ import { Destination } from '@adtrackify/at-tracking-event-types';
2
+ export declare class DestinationsDbService {
3
+ TABLE_NAME: string;
4
+ TABLE_KEY: string;
5
+ constructor(tableName: string);
6
+ getDestinationById: (id: string) => Promise<Destination | null>;
7
+ getDestinationsByPixel: (indexName: string, pixelId: string) => Promise<Destination[]>;
8
+ getDestinationsByAccountId: (indexName: string, accountId: string) => Promise<Destination[]>;
9
+ getDestinationsByDestinationType: (indexName: string, destinationType: string) => Promise<Destination[]>;
10
+ batchGetDestinationsById: (ids: string[]) => Promise<Destination[]>;
11
+ getDestinationsByDestination: (indexName: string, destinationKey: string) => Promise<Destination[]>;
12
+ }
@@ -1,73 +1,73 @@
1
- import { DynamoDbClient } from '../../clients';
2
- export class DestinationsDbService {
3
- TABLE_NAME;
4
- TABLE_KEY;
5
- constructor(tableName) {
6
- this.TABLE_NAME = tableName;
7
- this.TABLE_KEY = 'id';
8
- }
9
- getDestinationById = async (id) => {
10
- const query = {
11
- TableName: this.TABLE_NAME,
12
- Key: {
13
- id,
14
- },
15
- };
16
- const destination = await DynamoDbClient.get(query);
17
- return destination?.Item ?? null;
18
- };
19
- getDestinationsByPixel = async (indexName, pixelId) => {
20
- const query = {
21
- TableName: this.TABLE_NAME,
22
- IndexName: indexName,
23
- KeyConditionExpression: 'pixelId = :pixelId',
24
- ExpressionAttributeValues: {
25
- ':pixelId': pixelId,
26
- },
27
- };
28
- const destinations = await DynamoDbClient.queryAll(query);
29
- return destinations || [];
30
- };
31
- getDestinationsByAccountId = async (indexName, accountId) => {
32
- const query = {
33
- TableName: this.TABLE_NAME,
34
- IndexName: indexName,
35
- KeyConditionExpression: 'accountId = :accountId',
36
- ExpressionAttributeValues: {
37
- ':accountId': accountId,
38
- },
39
- };
40
- const destinations = await DynamoDbClient.queryAll(query);
41
- return destinations || [];
42
- };
43
- getDestinationsByDestinationType = async (indexName, destinationType) => {
44
- const query = {
45
- TableName: this.TABLE_NAME,
46
- IndexName: indexName,
47
- KeyConditionExpression: 'destinationType = :destinationType',
48
- ExpressionAttributeValues: {
49
- ':destinationType': destinationType,
50
- },
51
- };
52
- const destinations = await DynamoDbClient.queryAll(query);
53
- return destinations || [];
54
- };
55
- batchGetDestinationsById = async (ids) => {
56
- const keys = ids.map((id) => ({ [this.TABLE_KEY]: id }));
57
- const destinations = await DynamoDbClient.safeBatchGet(this.TABLE_NAME, keys);
58
- return (destinations ?? []);
59
- };
60
- getDestinationsByDestination = async (indexName, destinationKey) => {
61
- const query = {
62
- TableName: this.TABLE_NAME,
63
- IndexName: indexName,
64
- KeyConditionExpression: 'destination = :destination',
65
- ExpressionAttributeValues: {
66
- ':destination': destinationKey,
67
- },
68
- };
69
- const destinations = await DynamoDbClient.queryAll(query);
70
- return destinations || [];
71
- };
72
- }
1
+ import { DynamoDbClient } from '../../clients';
2
+ export class DestinationsDbService {
3
+ TABLE_NAME;
4
+ TABLE_KEY;
5
+ constructor(tableName) {
6
+ this.TABLE_NAME = tableName;
7
+ this.TABLE_KEY = 'id';
8
+ }
9
+ getDestinationById = async (id) => {
10
+ const query = {
11
+ TableName: this.TABLE_NAME,
12
+ Key: {
13
+ id,
14
+ },
15
+ };
16
+ const destination = await DynamoDbClient.get(query);
17
+ return destination?.Item ?? null;
18
+ };
19
+ getDestinationsByPixel = async (indexName, pixelId) => {
20
+ const query = {
21
+ TableName: this.TABLE_NAME,
22
+ IndexName: indexName,
23
+ KeyConditionExpression: 'pixelId = :pixelId',
24
+ ExpressionAttributeValues: {
25
+ ':pixelId': pixelId,
26
+ },
27
+ };
28
+ const destinations = await DynamoDbClient.queryAll(query);
29
+ return destinations || [];
30
+ };
31
+ getDestinationsByAccountId = async (indexName, accountId) => {
32
+ const query = {
33
+ TableName: this.TABLE_NAME,
34
+ IndexName: indexName,
35
+ KeyConditionExpression: 'accountId = :accountId',
36
+ ExpressionAttributeValues: {
37
+ ':accountId': accountId,
38
+ },
39
+ };
40
+ const destinations = await DynamoDbClient.queryAll(query);
41
+ return destinations || [];
42
+ };
43
+ getDestinationsByDestinationType = async (indexName, destinationType) => {
44
+ const query = {
45
+ TableName: this.TABLE_NAME,
46
+ IndexName: indexName,
47
+ KeyConditionExpression: 'destinationType = :destinationType',
48
+ ExpressionAttributeValues: {
49
+ ':destinationType': destinationType,
50
+ },
51
+ };
52
+ const destinations = await DynamoDbClient.queryAll(query);
53
+ return destinations || [];
54
+ };
55
+ batchGetDestinationsById = async (ids) => {
56
+ const keys = ids.map((id) => ({ [this.TABLE_KEY]: id }));
57
+ const destinations = await DynamoDbClient.safeBatchGet(this.TABLE_NAME, keys);
58
+ return (destinations ?? []);
59
+ };
60
+ getDestinationsByDestination = async (indexName, destinationKey) => {
61
+ const query = {
62
+ TableName: this.TABLE_NAME,
63
+ IndexName: indexName,
64
+ KeyConditionExpression: 'destination = :destination',
65
+ ExpressionAttributeValues: {
66
+ ':destination': destinationKey,
67
+ },
68
+ };
69
+ const destinations = await DynamoDbClient.queryAll(query);
70
+ return destinations || [];
71
+ };
72
+ }
73
73
  //# sourceMappingURL=destinations-db-service.js.map
@@ -1,28 +1,28 @@
1
- import { EventIdentity } from '@adtrackify/at-tracking-event-types';
2
- export interface IdentityCache {
3
- identityId: string;
4
- request?: EventIdentity;
5
- response: EventIdentity;
6
- createdAt?: string;
7
- updatedAt: string;
8
- expiresAt?: number;
9
- }
10
- export declare class IdentityCacheDbService {
11
- private cacheLambdaClient;
12
- private identifyPrivateLambdaArn;
13
- private lambdaInvokeClient;
14
- constructor(cacheLambdaFunctionArn: string, identifyPrivateLambdaArn: string);
15
- getIdentityWithCaching: (pixelId: string, incomingIdentity?: EventIdentity) => Promise<EventIdentity | undefined>;
16
- identifyPrivateLambda(pixelId: string, incomingIdentity: EventIdentity): Promise<{
17
- resolvedIdentity?: EventIdentity;
18
- }>;
19
- getIdentityFromCache(pixelId: string, incomingIdentity: EventIdentity): Promise<{
20
- resolvedIdentity?: EventIdentity;
21
- isCacheStale: boolean;
22
- }>;
23
- getIdentityCacheFromSecondaryKeys(pixelId: string, incomingIdentity: EventIdentity): Promise<IdentityCache | undefined>;
24
- deleteIdentityCache(pixelId: string, incomingIdentity: EventIdentity, resolvedIdentity: EventIdentity): Promise<void>;
25
- private deleteIdentityCacheRedis;
26
- private getIdentityCache;
27
- updateIdentityCacheRedis: (pixelId: string, request: EventIdentity, response: EventIdentity, enableSecondaryCacheKeys?: boolean) => Promise<import("../../clients").CacheRequestCommandResponse[] | undefined>;
28
- }
1
+ import { EventIdentity } from '@adtrackify/at-tracking-event-types';
2
+ export interface IdentityCache {
3
+ identityId: string;
4
+ request?: EventIdentity;
5
+ response: EventIdentity;
6
+ createdAt?: string;
7
+ updatedAt: string;
8
+ expiresAt?: number;
9
+ }
10
+ export declare class IdentityCacheDbService {
11
+ private cacheLambdaClient;
12
+ private identifyPrivateLambdaArn;
13
+ private lambdaInvokeClient;
14
+ constructor(cacheLambdaFunctionArn: string, identifyPrivateLambdaArn: string);
15
+ getIdentityWithCaching: (pixelId: string, incomingIdentity?: EventIdentity) => Promise<EventIdentity | undefined>;
16
+ identifyPrivateLambda(pixelId: string, incomingIdentity: EventIdentity): Promise<{
17
+ resolvedIdentity?: EventIdentity;
18
+ }>;
19
+ getIdentityFromCache(pixelId: string, incomingIdentity: EventIdentity): Promise<{
20
+ resolvedIdentity?: EventIdentity;
21
+ isCacheStale: boolean;
22
+ }>;
23
+ getIdentityCacheFromSecondaryKeys(pixelId: string, incomingIdentity: EventIdentity): Promise<IdentityCache | undefined>;
24
+ deleteIdentityCache(pixelId: string, incomingIdentity: EventIdentity, resolvedIdentity: EventIdentity): Promise<void>;
25
+ private deleteIdentityCacheRedis;
26
+ private getIdentityCache;
27
+ updateIdentityCacheRedis: (pixelId: string, request: EventIdentity, response: EventIdentity, enableSecondaryCacheKeys?: boolean) => Promise<import("../../clients").CacheRequestCommandResponse[] | undefined>;
28
+ }