@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,11 +1,11 @@
1
- export * from './dynamodb-client.js';
2
- export * from './eventbridge-client.js';
3
- export * from './http-client.js';
4
- export * from './s3-client.js';
5
- export * from './cognito-client.js';
6
- export * from './sqs-client.js';
7
- export * from './location-client.js';
8
- export * from './singlestore-db-client.js';
9
- export * from './redis-client.js';
10
- export * from './lambda-invoke-client.js';
1
+ export * from './dynamodb-client.js';
2
+ export * from './eventbridge-client.js';
3
+ export * from './http-client.js';
4
+ export * from './s3-client.js';
5
+ export * from './cognito-client.js';
6
+ export * from './sqs-client.js';
7
+ export * from './location-client.js';
8
+ export * from './singlestore-db-client.js';
9
+ export * from './redis-client.js';
10
+ export * from './lambda-invoke-client.js';
11
11
  //# sourceMappingURL=index.js.map
@@ -1,10 +1,10 @@
1
- export interface CacheLambdaInvokeResponse {
2
- statusCode: number;
3
- headers: any;
4
- body: string;
5
- }
6
- export declare class LambdaInvokeClient {
7
- private lambda;
8
- constructor();
9
- invokeFunction(functionName: string, payload: any): Promise<CacheLambdaInvokeResponse | null>;
10
- }
1
+ export interface CacheLambdaInvokeResponse {
2
+ statusCode: number;
3
+ headers: any;
4
+ body: string;
5
+ }
6
+ export declare class LambdaInvokeClient {
7
+ private lambda;
8
+ constructor();
9
+ invokeFunction(functionName: string, payload: any): Promise<CacheLambdaInvokeResponse | null>;
10
+ }
@@ -1,32 +1,32 @@
1
- import { LambdaClient, InvokeCommand } from '@aws-sdk/client-lambda';
2
- import { toUint8Array } from '@aws-sdk/util-utf8';
3
- import { Logger } from '../../helpers';
4
- export class LambdaInvokeClient {
5
- lambda;
6
- constructor() {
7
- this.lambda = new LambdaClient();
8
- }
9
- async invokeFunction(functionName, payload) {
10
- const params = {
11
- FunctionName: functionName,
12
- InvocationType: 'RequestResponse',
13
- Payload: toUint8Array(JSON.stringify(payload)),
14
- };
15
- try {
16
- const response = await this.lambda.send(new InvokeCommand(params));
17
- Logger.debug('Lambda response:', { response });
18
- if (response?.Payload) {
19
- const parsedPayload = response?.Payload.transformToString();
20
- const jsonPayload = JSON.parse(parsedPayload);
21
- Logger.debug('parsed payload', { parsedPayload });
22
- return jsonPayload;
23
- }
24
- return null;
25
- }
26
- catch (error) {
27
- Logger.error('Error invoking lambda function:', { err: error, params });
28
- return null;
29
- }
30
- }
31
- }
1
+ import { LambdaClient, InvokeCommand } from '@aws-sdk/client-lambda';
2
+ import { toUint8Array } from '@aws-sdk/util-utf8';
3
+ import { Logger } from '../../helpers';
4
+ export class LambdaInvokeClient {
5
+ lambda;
6
+ constructor() {
7
+ this.lambda = new LambdaClient();
8
+ }
9
+ async invokeFunction(functionName, payload) {
10
+ const params = {
11
+ FunctionName: functionName,
12
+ InvocationType: 'RequestResponse',
13
+ Payload: toUint8Array(JSON.stringify(payload)),
14
+ };
15
+ try {
16
+ const response = await this.lambda.send(new InvokeCommand(params));
17
+ Logger.debug('Lambda response:', { response });
18
+ if (response?.Payload) {
19
+ const parsedPayload = response?.Payload.transformToString();
20
+ const jsonPayload = JSON.parse(parsedPayload);
21
+ Logger.debug('parsed payload', { parsedPayload });
22
+ return jsonPayload;
23
+ }
24
+ return null;
25
+ }
26
+ catch (error) {
27
+ Logger.error('Error invoking lambda function:', { err: error, params });
28
+ return null;
29
+ }
30
+ }
31
+ }
32
32
  //# sourceMappingURL=lambda-invoke-client.js.map
@@ -1,8 +1,8 @@
1
- import { SearchPlaceIndexForPositionCommandOutput } from '@aws-sdk/client-location';
2
- export declare class LocationClient {
3
- private PLACE_INDEX_NAME;
4
- private PLACE_INDEX_API_KEY;
5
- private client;
6
- constructor(placeIndexName: string, placeIndexAPIKey: string);
7
- getPlaceFromLatLong: (latitude: number, longitude: number, maxResults?: number) => Promise<SearchPlaceIndexForPositionCommandOutput | null>;
8
- }
1
+ import { SearchPlaceIndexForPositionCommandOutput } from '@aws-sdk/client-location';
2
+ export declare class LocationClient {
3
+ private PLACE_INDEX_NAME;
4
+ private PLACE_INDEX_API_KEY;
5
+ private client;
6
+ constructor(placeIndexName: string, placeIndexAPIKey: string);
7
+ getPlaceFromLatLong: (latitude: number, longitude: number, maxResults?: number) => Promise<SearchPlaceIndexForPositionCommandOutput | null>;
8
+ }
@@ -1,28 +1,28 @@
1
- import { LocationClient as AWSLocationClient, SearchPlaceIndexForPositionCommand, } from '@aws-sdk/client-location';
2
- import { Logger } from '../../index.js';
3
- export class LocationClient {
4
- PLACE_INDEX_NAME;
5
- PLACE_INDEX_API_KEY;
6
- client;
7
- constructor(placeIndexName, placeIndexAPIKey) {
8
- this.client = new AWSLocationClient();
9
- this.PLACE_INDEX_NAME = placeIndexName;
10
- this.PLACE_INDEX_API_KEY = placeIndexAPIKey;
11
- }
12
- getPlaceFromLatLong = async (latitude, longitude, maxResults = 1) => {
13
- try {
14
- const command = new SearchPlaceIndexForPositionCommand({
15
- IndexName: this.PLACE_INDEX_NAME,
16
- Position: [longitude, latitude],
17
- MaxResults: maxResults,
18
- Key: this.PLACE_INDEX_API_KEY,
19
- });
20
- return await this.client.send(command);
21
- }
22
- catch (error) {
23
- Logger.error('Failed to get place from lat lng', { latitude, longitude, maxResults, error });
24
- return null;
25
- }
26
- };
27
- }
1
+ import { LocationClient as AWSLocationClient, SearchPlaceIndexForPositionCommand, } from '@aws-sdk/client-location';
2
+ import { Logger } from '../../index.js';
3
+ export class LocationClient {
4
+ PLACE_INDEX_NAME;
5
+ PLACE_INDEX_API_KEY;
6
+ client;
7
+ constructor(placeIndexName, placeIndexAPIKey) {
8
+ this.client = new AWSLocationClient();
9
+ this.PLACE_INDEX_NAME = placeIndexName;
10
+ this.PLACE_INDEX_API_KEY = placeIndexAPIKey;
11
+ }
12
+ getPlaceFromLatLong = async (latitude, longitude, maxResults = 1) => {
13
+ try {
14
+ const command = new SearchPlaceIndexForPositionCommand({
15
+ IndexName: this.PLACE_INDEX_NAME,
16
+ Position: [longitude, latitude],
17
+ MaxResults: maxResults,
18
+ Key: this.PLACE_INDEX_API_KEY,
19
+ });
20
+ return await this.client.send(command);
21
+ }
22
+ catch (error) {
23
+ Logger.error('Failed to get place from lat lng', { latitude, longitude, maxResults, error });
24
+ return null;
25
+ }
26
+ };
27
+ }
28
28
  //# sourceMappingURL=location-client.js.map
@@ -1,32 +1,32 @@
1
- import Redis, { ChainableCommander } from 'ioredis';
2
- export interface RedisClientConnectionOptions {
3
- commandTimeout?: number;
4
- keepAlive?: number;
5
- }
6
- export declare class RedisClient {
7
- private poolSize;
8
- private pool;
9
- private readonly commandTimeout;
10
- private readonly keepAlive;
11
- host: string;
12
- port: number;
13
- constructor(host: string, port?: number, poolSize?: number, options?: RedisClientConnectionOptions);
14
- private createClient;
15
- private getClient;
16
- connect(client: Redis): Promise<void>;
17
- disconnect(): Promise<void>;
18
- safeSet(key: string, value: string, ttlInSeconds?: number): Promise<void>;
19
- unsafeSet(key: string, value: string, ttlInSeconds?: number): Promise<void>;
20
- unsafeGet(key: string): Promise<string | null>;
21
- safeGet(key: string): Promise<string | null>;
22
- safeBatchGet(keys: string[]): Promise<(string | null)[] | null>;
23
- del(key: string): Promise<number>;
24
- safeHmget(key: string, ...fields: string[]): Promise<(string | null)[] | null>;
25
- safeLrange(key: string, start: number, stop: number): Promise<string[] | null>;
26
- safeZcount(key: string, min: number | string, max: number | string): Promise<number>;
27
- safeZrevrangebyscore(key: string, max: number | string, min: number | string, offsetCount?: {
28
- offset: number;
29
- count: number;
30
- }): Promise<string[]>;
31
- createPipeline(): ChainableCommander;
32
- }
1
+ import Redis, { ChainableCommander } from 'ioredis';
2
+ export interface RedisClientConnectionOptions {
3
+ commandTimeout?: number;
4
+ keepAlive?: number;
5
+ }
6
+ export declare class RedisClient {
7
+ private poolSize;
8
+ private pool;
9
+ private readonly commandTimeout;
10
+ private readonly keepAlive;
11
+ host: string;
12
+ port: number;
13
+ constructor(host: string, port?: number, poolSize?: number, options?: RedisClientConnectionOptions);
14
+ private createClient;
15
+ private getClient;
16
+ connect(client: Redis): Promise<void>;
17
+ disconnect(): Promise<void>;
18
+ safeSet(key: string, value: string, ttlInSeconds?: number): Promise<void>;
19
+ unsafeSet(key: string, value: string, ttlInSeconds?: number): Promise<void>;
20
+ unsafeGet(key: string): Promise<string | null>;
21
+ safeGet(key: string): Promise<string | null>;
22
+ safeBatchGet(keys: string[]): Promise<(string | null)[] | null>;
23
+ del(key: string): Promise<number>;
24
+ safeHmget(key: string, ...fields: string[]): Promise<(string | null)[] | null>;
25
+ safeLrange(key: string, start: number, stop: number): Promise<string[] | null>;
26
+ safeZcount(key: string, min: number | string, max: number | string): Promise<number>;
27
+ safeZrevrangebyscore(key: string, max: number | string, min: number | string, offsetCount?: {
28
+ offset: number;
29
+ count: number;
30
+ }): Promise<string[]>;
31
+ createPipeline(): ChainableCommander;
32
+ }
@@ -1,175 +1,175 @@
1
- import Redis from 'ioredis';
2
- import { Logger } from '../../helpers';
3
- const DEFAULT_REDIS_COMMAND_TIMEOUT_MS = 3000;
4
- const DEFAULT_REDIS_KEEP_ALIVE_MS = 1000;
5
- export class RedisClient {
6
- poolSize;
7
- pool;
8
- commandTimeout;
9
- keepAlive;
10
- host;
11
- port;
12
- constructor(host, port = 6379, poolSize = 3, options = {}) {
13
- this.poolSize = poolSize;
14
- this.host = host;
15
- this.port = port;
16
- this.commandTimeout = options.commandTimeout ?? DEFAULT_REDIS_COMMAND_TIMEOUT_MS;
17
- this.keepAlive = options.keepAlive ?? DEFAULT_REDIS_KEEP_ALIVE_MS;
18
- this.pool = Array.from({ length: poolSize }, () => this.createClient(host, port));
19
- }
20
- createClient(host, port) {
21
- try {
22
- const client = new Redis({
23
- host,
24
- port,
25
- maxRetriesPerRequest: 3,
26
- commandTimeout: this.commandTimeout,
27
- lazyConnect: true,
28
- keepAlive: this.keepAlive,
29
- });
30
- return client;
31
- }
32
- catch (err) {
33
- Logger.error('Error creating Redis client:', { err });
34
- return null;
35
- }
36
- }
37
- getClient() {
38
- const randomIndex = Math.floor(Math.random() * this.poolSize);
39
- let client = this.pool[randomIndex];
40
- if (!client) {
41
- client = this.createClient(this.host, this.port);
42
- }
43
- return client;
44
- }
45
- async connect(client) {
46
- try {
47
- await client.connect();
48
- Logger.debug('Connected to Redis');
49
- }
50
- catch (err) {
51
- Logger.error('Error connecting to Redis:', { err });
52
- return;
53
- }
54
- }
55
- async disconnect() {
56
- try {
57
- const client = this.getClient();
58
- await client.quit();
59
- Logger.debug('Disconnected from Redis');
60
- }
61
- catch (err) {
62
- Logger.error('Error disconnecting from Redis:', { err });
63
- return;
64
- }
65
- }
66
- async safeSet(key, value, ttlInSeconds) {
67
- try {
68
- const client = this.getClient();
69
- if (ttlInSeconds) {
70
- await client.set(key, value, 'EX', ttlInSeconds);
71
- }
72
- else {
73
- await client.set(key, value);
74
- }
75
- }
76
- catch (err) {
77
- Logger.error('Error setting value in Redis:', { err, key, value });
78
- return;
79
- }
80
- }
81
- async unsafeSet(key, value, ttlInSeconds) {
82
- const client = this.getClient();
83
- if (ttlInSeconds) {
84
- await client.set(key, value, 'EX', ttlInSeconds);
85
- }
86
- else {
87
- await client.set(key, value);
88
- }
89
- }
90
- async unsafeGet(key) {
91
- const client = this.getClient();
92
- Logger.debug('get', { key, client });
93
- return await client.get(key);
94
- }
95
- async safeGet(key) {
96
- try {
97
- const client = this.getClient();
98
- Logger.debug('get', { key, client });
99
- return await client.get(key);
100
- }
101
- catch (err) {
102
- Logger.error('Error getting value from Redis:', { err, key });
103
- return null;
104
- }
105
- }
106
- async safeBatchGet(keys) {
107
- try {
108
- const client = this.getClient();
109
- Logger.debug('get', { keys, client });
110
- return await client.mget(keys);
111
- }
112
- catch (err) {
113
- Logger.error('Error getting batch from Redis:', { err, keys });
114
- return null;
115
- }
116
- }
117
- async del(key) {
118
- try {
119
- const client = this.getClient();
120
- return await client.del(key);
121
- }
122
- catch (err) {
123
- Logger.error('Error deleting key from Redis:', { err });
124
- return 0;
125
- }
126
- }
127
- async safeHmget(key, ...fields) {
128
- try {
129
- const client = this.getClient();
130
- return await client.hmget(key, ...fields);
131
- }
132
- catch (err) {
133
- Logger.error('Error in hmget:', { err, key, fields });
134
- return null;
135
- }
136
- }
137
- async safeLrange(key, start, stop) {
138
- try {
139
- const client = this.getClient();
140
- return await client.lrange(key, start, stop);
141
- }
142
- catch (err) {
143
- Logger.error('Error in lrange:', { err, key, start, stop });
144
- return null;
145
- }
146
- }
147
- async safeZcount(key, min, max) {
148
- try {
149
- const client = this.getClient();
150
- return await client.zcount(key, min, max);
151
- }
152
- catch (err) {
153
- Logger.error('Error in zcount:', { err, key, min, max });
154
- return 0;
155
- }
156
- }
157
- async safeZrevrangebyscore(key, max, min, offsetCount) {
158
- try {
159
- const client = this.getClient();
160
- if (offsetCount) {
161
- return await client.zrevrangebyscore(key, max, min, 'LIMIT', offsetCount.offset, offsetCount.count);
162
- }
163
- return await client.zrevrangebyscore(key, max, min);
164
- }
165
- catch (err) {
166
- Logger.error('Error in zrevrangebyscore:', { err, key, max, min, offsetCount });
167
- return [];
168
- }
169
- }
170
- createPipeline() {
171
- const client = this.getClient();
172
- return client.pipeline();
173
- }
174
- }
1
+ import Redis from 'ioredis';
2
+ import { Logger } from '../../helpers';
3
+ const DEFAULT_REDIS_COMMAND_TIMEOUT_MS = 3000;
4
+ const DEFAULT_REDIS_KEEP_ALIVE_MS = 1000;
5
+ export class RedisClient {
6
+ poolSize;
7
+ pool;
8
+ commandTimeout;
9
+ keepAlive;
10
+ host;
11
+ port;
12
+ constructor(host, port = 6379, poolSize = 3, options = {}) {
13
+ this.poolSize = poolSize;
14
+ this.host = host;
15
+ this.port = port;
16
+ this.commandTimeout = options.commandTimeout ?? DEFAULT_REDIS_COMMAND_TIMEOUT_MS;
17
+ this.keepAlive = options.keepAlive ?? DEFAULT_REDIS_KEEP_ALIVE_MS;
18
+ this.pool = Array.from({ length: poolSize }, () => this.createClient(host, port));
19
+ }
20
+ createClient(host, port) {
21
+ try {
22
+ const client = new Redis({
23
+ host,
24
+ port,
25
+ maxRetriesPerRequest: 3,
26
+ commandTimeout: this.commandTimeout,
27
+ lazyConnect: true,
28
+ keepAlive: this.keepAlive,
29
+ });
30
+ return client;
31
+ }
32
+ catch (err) {
33
+ Logger.error('Error creating Redis client:', { err });
34
+ return null;
35
+ }
36
+ }
37
+ getClient() {
38
+ const randomIndex = Math.floor(Math.random() * this.poolSize);
39
+ let client = this.pool[randomIndex];
40
+ if (!client) {
41
+ client = this.createClient(this.host, this.port);
42
+ }
43
+ return client;
44
+ }
45
+ async connect(client) {
46
+ try {
47
+ await client.connect();
48
+ Logger.debug('Connected to Redis');
49
+ }
50
+ catch (err) {
51
+ Logger.error('Error connecting to Redis:', { err });
52
+ return;
53
+ }
54
+ }
55
+ async disconnect() {
56
+ try {
57
+ const client = this.getClient();
58
+ await client.quit();
59
+ Logger.debug('Disconnected from Redis');
60
+ }
61
+ catch (err) {
62
+ Logger.error('Error disconnecting from Redis:', { err });
63
+ return;
64
+ }
65
+ }
66
+ async safeSet(key, value, ttlInSeconds) {
67
+ try {
68
+ const client = this.getClient();
69
+ if (ttlInSeconds) {
70
+ await client.set(key, value, 'EX', ttlInSeconds);
71
+ }
72
+ else {
73
+ await client.set(key, value);
74
+ }
75
+ }
76
+ catch (err) {
77
+ Logger.error('Error setting value in Redis:', { err, key, value });
78
+ return;
79
+ }
80
+ }
81
+ async unsafeSet(key, value, ttlInSeconds) {
82
+ const client = this.getClient();
83
+ if (ttlInSeconds) {
84
+ await client.set(key, value, 'EX', ttlInSeconds);
85
+ }
86
+ else {
87
+ await client.set(key, value);
88
+ }
89
+ }
90
+ async unsafeGet(key) {
91
+ const client = this.getClient();
92
+ Logger.debug('get', { key, client });
93
+ return await client.get(key);
94
+ }
95
+ async safeGet(key) {
96
+ try {
97
+ const client = this.getClient();
98
+ Logger.debug('get', { key, client });
99
+ return await client.get(key);
100
+ }
101
+ catch (err) {
102
+ Logger.error('Error getting value from Redis:', { err, key });
103
+ return null;
104
+ }
105
+ }
106
+ async safeBatchGet(keys) {
107
+ try {
108
+ const client = this.getClient();
109
+ Logger.debug('get', { keys, client });
110
+ return await client.mget(keys);
111
+ }
112
+ catch (err) {
113
+ Logger.error('Error getting batch from Redis:', { err, keys });
114
+ return null;
115
+ }
116
+ }
117
+ async del(key) {
118
+ try {
119
+ const client = this.getClient();
120
+ return await client.del(key);
121
+ }
122
+ catch (err) {
123
+ Logger.error('Error deleting key from Redis:', { err });
124
+ return 0;
125
+ }
126
+ }
127
+ async safeHmget(key, ...fields) {
128
+ try {
129
+ const client = this.getClient();
130
+ return await client.hmget(key, ...fields);
131
+ }
132
+ catch (err) {
133
+ Logger.error('Error in hmget:', { err, key, fields });
134
+ return null;
135
+ }
136
+ }
137
+ async safeLrange(key, start, stop) {
138
+ try {
139
+ const client = this.getClient();
140
+ return await client.lrange(key, start, stop);
141
+ }
142
+ catch (err) {
143
+ Logger.error('Error in lrange:', { err, key, start, stop });
144
+ return null;
145
+ }
146
+ }
147
+ async safeZcount(key, min, max) {
148
+ try {
149
+ const client = this.getClient();
150
+ return await client.zcount(key, min, max);
151
+ }
152
+ catch (err) {
153
+ Logger.error('Error in zcount:', { err, key, min, max });
154
+ return 0;
155
+ }
156
+ }
157
+ async safeZrevrangebyscore(key, max, min, offsetCount) {
158
+ try {
159
+ const client = this.getClient();
160
+ if (offsetCount) {
161
+ return await client.zrevrangebyscore(key, max, min, 'LIMIT', offsetCount.offset, offsetCount.count);
162
+ }
163
+ return await client.zrevrangebyscore(key, max, min);
164
+ }
165
+ catch (err) {
166
+ Logger.error('Error in zrevrangebyscore:', { err, key, max, min, offsetCount });
167
+ return [];
168
+ }
169
+ }
170
+ createPipeline() {
171
+ const client = this.getClient();
172
+ return client.pipeline();
173
+ }
174
+ }
175
175
  //# sourceMappingURL=redis-client.js.map
@@ -1,23 +1,23 @@
1
- /// <reference types="node" />
2
- import { ObjectCannedACL, PutObjectCommandOutput, S3 } from '@aws-sdk/client-s3';
3
- import { StreamingBlobPayloadOutputTypes } from '@smithy/types';
4
- export declare class S3Client {
5
- s3: S3;
6
- constructor(region?: string);
7
- getS3FileNameFromKey: (s3ObjectKey: string) => string;
8
- getObject: (path: string, bucket: string) => Promise<StreamingBlobPayloadOutputTypes | null>;
9
- getObjectContentAsStringFromS3Gzip: (s3ObjectKey: string, bucketName: string, encoding?: BufferEncoding) => Promise<string | null>;
10
- getObjectContentAsString: (path: string, bucket: string, encoding?: BufferEncoding) => Promise<string | null>;
11
- checkObjectExists: (path: string, bucket: string) => Promise<boolean>;
12
- checkAndUploadJson: (path: string, bucket: string, jsonData: any, ACL?: ObjectCannedACL, retryCount?: number, maxRetries?: number) => Promise<{
13
- status: boolean;
14
- response?: PutObjectCommandOutput;
15
- }>;
16
- uploadJson: (path: string, bucket: string, jsonData: any, ACL?: ObjectCannedACL, retryCount?: number, maxRetries?: number, stringify?: boolean) => Promise<{
17
- status: boolean;
18
- response: PutObjectCommandOutput;
19
- }>;
20
- copyObject: (bucket: string, key: string, copyToKey: string) => Promise<boolean>;
21
- deleteObject: (bucket: string, key: string) => Promise<boolean>;
22
- moveObject: (bucket: string, key: string, moveToKey: string) => Promise<boolean>;
23
- }
1
+ /// <reference types="node" />
2
+ import { ObjectCannedACL, PutObjectCommandOutput, S3 } from '@aws-sdk/client-s3';
3
+ import { StreamingBlobPayloadOutputTypes } from '@smithy/types';
4
+ export declare class S3Client {
5
+ s3: S3;
6
+ constructor(region?: string);
7
+ getS3FileNameFromKey: (s3ObjectKey: string) => string;
8
+ getObject: (path: string, bucket: string) => Promise<StreamingBlobPayloadOutputTypes | null>;
9
+ getObjectContentAsStringFromS3Gzip: (s3ObjectKey: string, bucketName: string, encoding?: BufferEncoding) => Promise<string | null>;
10
+ getObjectContentAsString: (path: string, bucket: string, encoding?: BufferEncoding) => Promise<string | null>;
11
+ checkObjectExists: (path: string, bucket: string) => Promise<boolean>;
12
+ checkAndUploadJson: (path: string, bucket: string, jsonData: any, ACL?: ObjectCannedACL, retryCount?: number, maxRetries?: number) => Promise<{
13
+ status: boolean;
14
+ response?: PutObjectCommandOutput;
15
+ }>;
16
+ uploadJson: (path: string, bucket: string, jsonData: any, ACL?: ObjectCannedACL, retryCount?: number, maxRetries?: number, stringify?: boolean) => Promise<{
17
+ status: boolean;
18
+ response: PutObjectCommandOutput;
19
+ }>;
20
+ copyObject: (bucket: string, key: string, copyToKey: string) => Promise<boolean>;
21
+ deleteObject: (bucket: string, key: string) => Promise<boolean>;
22
+ moveObject: (bucket: string, key: string, moveToKey: string) => Promise<boolean>;
23
+ }