@adtrackify/at-service-common 3.17.8 → 3.18.1

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 (541) hide show
  1. package/dist/cjs/__tests__/clients/sqs-bundled-client.spec.d.ts +1 -0
  2. package/dist/cjs/__tests__/clients/sqs-bundled-client.spec.js +909 -0
  3. package/dist/cjs/__tests__/clients/sqs-bundled-client.spec.js.map +1 -0
  4. package/dist/cjs/__tests__/clients/sqs-client.spec.d.ts +1 -1
  5. package/dist/cjs/__tests__/clients/sqs-client.spec.js +194 -121
  6. package/dist/cjs/__tests__/clients/sqs-client.spec.js.map +1 -1
  7. package/dist/cjs/__tests__/clients/sqs-unbundle.spec.d.ts +1 -0
  8. package/dist/cjs/__tests__/clients/sqs-unbundle.spec.js +788 -0
  9. package/dist/cjs/__tests__/clients/sqs-unbundle.spec.js.map +1 -0
  10. package/dist/cjs/__tests__/db/shared-read-db-services.spec.d.ts +1 -1
  11. package/dist/cjs/__tests__/db/shared-read-db-services.spec.js +89 -89
  12. package/dist/cjs/__tests__/helpers/account-users-helper.spec.d.ts +1 -1
  13. package/dist/cjs/__tests__/helpers/account-users-helper.spec.js +220 -220
  14. package/dist/cjs/__tests__/helpers/api-key-auth-helper.spec.d.ts +1 -1
  15. package/dist/cjs/__tests__/helpers/api-key-auth-helper.spec.js +74 -74
  16. package/dist/cjs/__tests__/identity-cache/identity-cache-db-service.spec.d.ts +1 -1
  17. package/dist/cjs/__tests__/identity-cache/identity-cache-db-service.spec.js +674 -674
  18. package/dist/cjs/__tests__/identity-cache/trait-merging-and-staleness.spec.d.ts +1 -1
  19. package/dist/cjs/__tests__/identity-cache/trait-merging-and-staleness.spec.js +588 -588
  20. package/dist/cjs/__tests__/integration/sqs-bundling-roundtrip.spec.d.ts +1 -0
  21. package/dist/cjs/__tests__/integration/sqs-bundling-roundtrip.spec.js +582 -0
  22. package/dist/cjs/__tests__/integration/sqs-bundling-roundtrip.spec.js.map +1 -0
  23. package/dist/cjs/__tests__/libs/compress-decompress.spec.d.ts +1 -1
  24. package/dist/cjs/__tests__/libs/compress-decompress.spec.js +16 -16
  25. package/dist/cjs/__tests__/libs/currency.spec.d.ts +1 -1
  26. package/dist/cjs/__tests__/libs/currency.spec.js +220 -220
  27. package/dist/cjs/__tests__/libs/dates.spec.d.ts +1 -1
  28. package/dist/cjs/__tests__/libs/dates.spec.js +130 -130
  29. package/dist/cjs/__tests__/libs/domain.spec.d.ts +1 -1
  30. package/dist/cjs/__tests__/libs/domain.spec.js +107 -107
  31. package/dist/cjs/__tests__/libs/numbers.spec.d.ts +1 -1
  32. package/dist/cjs/__tests__/libs/numbers.spec.js +261 -261
  33. package/dist/cjs/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  34. package/dist/cjs/__tests__/s3-client/s3-client.spec.js +33 -33
  35. package/dist/cjs/__tests__/shopify/shopify-graphql-transformer.spec.d.ts +1 -1
  36. package/dist/cjs/__tests__/shopify/shopify-graphql-transformer.spec.js +35 -35
  37. package/dist/cjs/__tests__/unit/libs/api-router/public-api-router.spec.d.ts +1 -1
  38. package/dist/cjs/__tests__/unit/libs/api-router/public-api-router.spec.js +197 -197
  39. package/dist/cjs/__tests__/unit/libs/api-router/route-matcher.spec.d.ts +1 -1
  40. package/dist/cjs/__tests__/unit/libs/api-router/route-matcher.spec.js +69 -69
  41. package/dist/cjs/clients/generic/cognito-client.d.ts +23 -23
  42. package/dist/cjs/clients/generic/cognito-client.js +209 -209
  43. package/dist/cjs/clients/generic/dynamodb-client.d.ts +18 -18
  44. package/dist/cjs/clients/generic/dynamodb-client.js +172 -172
  45. package/dist/cjs/clients/generic/eventbridge-client.d.ts +14 -14
  46. package/dist/cjs/clients/generic/eventbridge-client.js +51 -51
  47. package/dist/cjs/clients/generic/http-client.d.ts +14 -14
  48. package/dist/cjs/clients/generic/http-client.js +61 -61
  49. package/dist/cjs/clients/generic/index.d.ts +13 -10
  50. package/dist/cjs/clients/generic/index.js +29 -26
  51. package/dist/cjs/clients/generic/index.js.map +1 -1
  52. package/dist/cjs/clients/generic/lambda-invoke-client.d.ts +10 -10
  53. package/dist/cjs/clients/generic/lambda-invoke-client.js +39 -39
  54. package/dist/cjs/clients/generic/location-client.d.ts +8 -8
  55. package/dist/cjs/clients/generic/location-client.js +31 -31
  56. package/dist/cjs/clients/generic/redis-client.d.ts +33 -33
  57. package/dist/cjs/clients/generic/redis-client.js +191 -191
  58. package/dist/cjs/clients/generic/s3-client.d.ts +23 -23
  59. package/dist/cjs/clients/generic/s3-client.js +216 -216
  60. package/dist/cjs/clients/generic/singlestore-db-client.d.ts +14 -14
  61. package/dist/cjs/clients/generic/singlestore-db-client.js +67 -67
  62. package/dist/cjs/clients/generic/sqs-bundled-client.d.ts +15 -0
  63. package/dist/cjs/clients/generic/sqs-bundled-client.js +278 -0
  64. package/dist/cjs/clients/generic/sqs-bundled-client.js.map +1 -0
  65. package/dist/cjs/clients/generic/sqs-bundled-client.types.d.ts +52 -0
  66. package/dist/cjs/clients/generic/sqs-bundled-client.types.js +17 -0
  67. package/dist/cjs/clients/generic/sqs-bundled-client.types.js.map +1 -0
  68. package/dist/cjs/clients/generic/sqs-client.d.ts +48 -33
  69. package/dist/cjs/clients/generic/sqs-client.js +273 -111
  70. package/dist/cjs/clients/generic/sqs-client.js.map +1 -1
  71. package/dist/cjs/clients/generic/sqs-unbundle.d.ts +32 -0
  72. package/dist/cjs/clients/generic/sqs-unbundle.js +145 -0
  73. package/dist/cjs/clients/generic/sqs-unbundle.js.map +1 -0
  74. package/dist/cjs/clients/index.d.ts +3 -3
  75. package/dist/cjs/clients/index.js +19 -19
  76. package/dist/cjs/clients/internal-api/accounts-client.d.ts +91 -91
  77. package/dist/cjs/clients/internal-api/accounts-client.js +129 -129
  78. package/dist/cjs/clients/internal-api/cache-lambda-client.d.ts +26 -26
  79. package/dist/cjs/clients/internal-api/cache-lambda-client.js +89 -89
  80. package/dist/cjs/clients/internal-api/db-management-client.d.ts +18 -18
  81. package/dist/cjs/clients/internal-api/db-management-client.js +36 -36
  82. package/dist/cjs/clients/internal-api/destinations-client.d.ts +34 -34
  83. package/dist/cjs/clients/internal-api/destinations-client.js +79 -79
  84. package/dist/cjs/clients/internal-api/event-collector-client.d.ts +20 -20
  85. package/dist/cjs/clients/internal-api/event-collector-client.js +36 -36
  86. package/dist/cjs/clients/internal-api/identity-client.d.ts +31 -31
  87. package/dist/cjs/clients/internal-api/identity-client.js +91 -91
  88. package/dist/cjs/clients/internal-api/index.d.ts +9 -9
  89. package/dist/cjs/clients/internal-api/index.js +25 -25
  90. package/dist/cjs/clients/internal-api/shopify-app-install-client.d.ts +37 -37
  91. package/dist/cjs/clients/internal-api/shopify-app-install-client.js +81 -81
  92. package/dist/cjs/clients/internal-api/subscriptions-client.d.ts +26 -26
  93. package/dist/cjs/clients/internal-api/subscriptions-client.js +77 -77
  94. package/dist/cjs/clients/internal-api/users-auth-client.d.ts +35 -35
  95. package/dist/cjs/clients/internal-api/users-auth-client.js +110 -110
  96. package/dist/cjs/clients/third-party/emailable-client.d.ts +7 -7
  97. package/dist/cjs/clients/third-party/emailable-client.js +25 -25
  98. package/dist/cjs/clients/third-party/exchange-rate-api-client.d.ts +17 -17
  99. package/dist/cjs/clients/third-party/exchange-rate-api-client.js +19 -19
  100. package/dist/cjs/clients/third-party/index.d.ts +4 -4
  101. package/dist/cjs/clients/third-party/index.js +20 -20
  102. package/dist/cjs/clients/third-party/loops-client.d.ts +10 -10
  103. package/dist/cjs/clients/third-party/loops-client.js +30 -30
  104. package/dist/cjs/clients/third-party/shopify/graphql-order-queries.d.ts +25 -25
  105. package/dist/cjs/clients/third-party/shopify/graphql-order-queries.js +30 -30
  106. package/dist/cjs/clients/third-party/shopify/graphql-product-queries.d.ts +2 -2
  107. package/dist/cjs/clients/third-party/shopify/graphql-product-queries.js +180 -180
  108. package/dist/cjs/clients/third-party/shopify/shopify-graphql-client.d.ts +10 -10
  109. package/dist/cjs/clients/third-party/shopify/shopify-graphql-client.js +161 -161
  110. package/dist/cjs/clients/third-party/shopify-client.d.ts +29 -29
  111. package/dist/cjs/clients/third-party/shopify-client.js +146 -146
  112. package/dist/cjs/constants/index.d.ts +1 -0
  113. package/dist/cjs/constants/index.js +18 -0
  114. package/dist/cjs/constants/index.js.map +1 -0
  115. package/dist/cjs/constants/sqs.d.ts +11 -0
  116. package/dist/cjs/constants/sqs.js +15 -0
  117. package/dist/cjs/constants/sqs.js.map +1 -0
  118. package/dist/cjs/helpers/account-users-helper.d.ts +2 -2
  119. package/dist/cjs/helpers/account-users-helper.js +22 -22
  120. package/dist/cjs/helpers/api-key-auth-helper.d.ts +9 -9
  121. package/dist/cjs/helpers/api-key-auth-helper.js +40 -40
  122. package/dist/cjs/helpers/api-key-authorizer-helper.d.ts +36 -36
  123. package/dist/cjs/helpers/api-key-authorizer-helper.js +85 -85
  124. package/dist/cjs/helpers/identity-cache-helper.d.ts +21 -21
  125. package/dist/cjs/helpers/identity-cache-helper.js +156 -156
  126. package/dist/cjs/helpers/index.d.ts +9 -9
  127. package/dist/cjs/helpers/index.js +25 -25
  128. package/dist/cjs/helpers/input-validation-helper.d.ts +3 -3
  129. package/dist/cjs/helpers/input-validation-helper.js +22 -22
  130. package/dist/cjs/helpers/logging-helper.d.ts +16 -16
  131. package/dist/cjs/helpers/logging-helper.js +84 -84
  132. package/dist/cjs/helpers/response-helper.d.ts +18 -18
  133. package/dist/cjs/helpers/response-helper.js +43 -43
  134. package/dist/cjs/helpers/shopify-helper.d.ts +9 -9
  135. package/dist/cjs/helpers/shopify-helper.js +26 -26
  136. package/dist/cjs/helpers/sqs-utils.d.ts +6 -6
  137. package/dist/cjs/helpers/sqs-utils.js +14 -14
  138. package/dist/cjs/index.d.ts +7 -5
  139. package/dist/cjs/index.js +23 -21
  140. package/dist/cjs/index.js.map +1 -1
  141. package/dist/cjs/libs/api-router/index.d.ts +2 -2
  142. package/dist/cjs/libs/api-router/index.js +18 -18
  143. package/dist/cjs/libs/api-router/public-api-router.d.ts +3 -3
  144. package/dist/cjs/libs/api-router/public-api-router.js +36 -36
  145. package/dist/cjs/libs/api-router/route-matcher.d.ts +21 -21
  146. package/dist/cjs/libs/api-router/route-matcher.js +36 -36
  147. package/dist/cjs/libs/click-id-parser.d.ts +23 -23
  148. package/dist/cjs/libs/click-id-parser.js +49 -49
  149. package/dist/cjs/libs/compression.d.ts +2 -2
  150. package/dist/cjs/libs/compression.js +33 -33
  151. package/dist/cjs/libs/cookie.d.ts +17 -17
  152. package/dist/cjs/libs/cookie.js +76 -76
  153. package/dist/cjs/libs/crypto.d.ts +4 -4
  154. package/dist/cjs/libs/crypto.js +25 -25
  155. package/dist/cjs/libs/csv.d.ts +2 -2
  156. package/dist/cjs/libs/csv.js +35 -35
  157. package/dist/cjs/libs/currency.d.ts +1 -1
  158. package/dist/cjs/libs/currency.js +29 -29
  159. package/dist/cjs/libs/dates.d.ts +12 -12
  160. package/dist/cjs/libs/dates.js +96 -96
  161. package/dist/cjs/libs/domain.d.ts +2 -2
  162. package/dist/cjs/libs/domain.js +38 -38
  163. package/dist/cjs/libs/emails.d.ts +6 -6
  164. package/dist/cjs/libs/emails.js +122 -122
  165. package/dist/cjs/libs/http-error.d.ts +21 -21
  166. package/dist/cjs/libs/http-error.js +63 -63
  167. package/dist/cjs/libs/http-status-codes.d.ts +58 -58
  168. package/dist/cjs/libs/http-status-codes.js +62 -62
  169. package/dist/cjs/libs/index.d.ts +18 -18
  170. package/dist/cjs/libs/index.js +34 -34
  171. package/dist/cjs/libs/numbers.d.ts +1 -1
  172. package/dist/cjs/libs/numbers.js +15 -15
  173. package/dist/cjs/libs/referrer-parser/index.d.ts +2 -2
  174. package/dist/cjs/libs/referrer-parser/index.js +18 -18
  175. package/dist/cjs/libs/referrer-parser/referrer-data.d.ts +9 -9
  176. package/dist/cjs/libs/referrer-parser/referrer-data.js +3307 -3307
  177. package/dist/cjs/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  178. package/dist/cjs/libs/referrer-parser/referrer-parser-util.js +131 -131
  179. package/dist/cjs/libs/strings.d.ts +3 -3
  180. package/dist/cjs/libs/strings.js +46 -46
  181. package/dist/cjs/libs/traits.d.ts +6 -6
  182. package/dist/cjs/libs/traits.js +65 -65
  183. package/dist/cjs/libs/url.d.ts +1 -1
  184. package/dist/cjs/libs/url.js +13 -13
  185. package/dist/cjs/services/cache/generic-cached-object.d.ts +5 -5
  186. package/dist/cjs/services/cache/generic-cached-object.js +2 -2
  187. package/dist/cjs/services/cache/index.d.ts +1 -1
  188. package/dist/cjs/services/cache/index.js +17 -17
  189. package/dist/cjs/services/cache/product-cache-service.d.ts +21 -21
  190. package/dist/cjs/services/cache/product-cache-service.js +76 -76
  191. package/dist/cjs/services/currency-exchange-rate-lookup-service.d.ts +11 -11
  192. package/dist/cjs/services/currency-exchange-rate-lookup-service.js +66 -66
  193. package/dist/cjs/services/db/accounts-db-service.d.ts +9 -9
  194. package/dist/cjs/services/db/accounts-db-service.js +33 -33
  195. package/dist/cjs/services/db/api-keys-db-service.d.ts +10 -10
  196. package/dist/cjs/services/db/api-keys-db-service.js +36 -36
  197. package/dist/cjs/services/db/currency-exchange-rates-db-service.d.ts +21 -21
  198. package/dist/cjs/services/db/currency-exchange-rates-db-service.js +39 -39
  199. package/dist/cjs/services/db/destinations-db-service.d.ts +12 -12
  200. package/dist/cjs/services/db/destinations-db-service.js +76 -76
  201. package/dist/cjs/services/db/identity-cache-db-service.d.ts +28 -28
  202. package/dist/cjs/services/db/identity-cache-db-service.js +320 -320
  203. package/dist/cjs/services/db/index.d.ts +13 -13
  204. package/dist/cjs/services/db/index.js +29 -29
  205. package/dist/cjs/services/db/log-events-db-service.d.ts +11 -11
  206. package/dist/cjs/services/db/log-events-db-service.js +181 -181
  207. package/dist/cjs/services/db/pixels-db-service.d.ts +8 -8
  208. package/dist/cjs/services/db/pixels-db-service.js +35 -35
  209. package/dist/cjs/services/db/purchasable-contacts-db-service.d.ts +9 -9
  210. package/dist/cjs/services/db/purchasable-contacts-db-service.js +43 -43
  211. package/dist/cjs/services/db/purchased-contacts-db-service.d.ts +17 -17
  212. package/dist/cjs/services/db/purchased-contacts-db-service.js +143 -143
  213. package/dist/cjs/services/db/shopify-app-installs-db-service.d.ts +8 -8
  214. package/dist/cjs/services/db/shopify-app-installs-db-service.js +51 -51
  215. package/dist/cjs/services/db/shopify-products-cache-db-service.d.ts +16 -16
  216. package/dist/cjs/services/db/shopify-products-cache-db-service.js +73 -73
  217. package/dist/cjs/services/db/subscriptions-db-service.d.ts +10 -10
  218. package/dist/cjs/services/db/subscriptions-db-service.js +34 -34
  219. package/dist/cjs/services/db/tracking-events-db-service.d.ts +20 -20
  220. package/dist/cjs/services/db/tracking-events-db-service.js +165 -165
  221. package/dist/cjs/services/eventbridge-integration-service.d.ts +9 -9
  222. package/dist/cjs/services/eventbridge-integration-service.js +28 -28
  223. package/dist/cjs/services/events/index.d.ts +3 -3
  224. package/dist/cjs/services/events/index.js +19 -19
  225. package/dist/cjs/services/events/log-event-service.d.ts +9 -9
  226. package/dist/cjs/services/events/log-event-service.js +56 -56
  227. package/dist/cjs/services/events/metric-event-service.d.ts +9 -9
  228. package/dist/cjs/services/events/metric-event-service.js +49 -49
  229. package/dist/cjs/services/events/tracking-event-sqs-service.d.ts +8 -8
  230. package/dist/cjs/services/events/tracking-event-sqs-service.js +34 -34
  231. package/dist/cjs/services/generic-cache-service.d.ts +7 -7
  232. package/dist/cjs/services/generic-cache-service.js +33 -33
  233. package/dist/cjs/services/index.d.ts +8 -8
  234. package/dist/cjs/services/index.js +24 -24
  235. package/dist/cjs/services/ipdata-lookup-service.d.ts +20 -20
  236. package/dist/cjs/services/ipdata-lookup-service.js +112 -112
  237. package/dist/cjs/services/shopify/index.d.ts +2 -2
  238. package/dist/cjs/services/shopify/index.js +18 -18
  239. package/dist/cjs/services/shopify/products/index.d.ts +1 -1
  240. package/dist/cjs/services/shopify/products/index.js +17 -17
  241. package/dist/cjs/services/shopify/products/shopify-products-serviceV2.d.ts +17 -17
  242. package/dist/cjs/services/shopify/products/shopify-products-serviceV2.js +112 -112
  243. package/dist/cjs/services/shopify/shopify-graphql-transformer.d.ts +8 -8
  244. package/dist/cjs/services/shopify/shopify-graphql-transformer.js +141 -141
  245. package/dist/cjs/types/api-response.d.ts +6 -6
  246. package/dist/cjs/types/api-response.js +2 -2
  247. package/dist/cjs/types/index.d.ts +1 -1
  248. package/dist/cjs/types/index.js +17 -17
  249. package/dist/cjs/types/internal-events/event-detail-types.d.ts +20 -20
  250. package/dist/cjs/types/internal-events/event-detail-types.js +27 -27
  251. package/dist/cjs/types/internal-events/index.d.ts +1 -1
  252. package/dist/cjs/types/internal-events/index.js +17 -17
  253. package/dist/cjs/types/shopify-graphql-types/admin.generated.d.ts +123 -123
  254. package/dist/cjs/types/shopify-graphql-types/admin.generated.js +2 -2
  255. package/dist/cjs/types/shopify-graphql-types/admin.types.d.ts +26289 -26289
  256. package/dist/cjs/types/shopify-graphql-types/admin.types.js +5311 -5311
  257. package/dist/cjs/types/shopify-graphql-types/index.d.ts +2 -2
  258. package/dist/cjs/types/shopify-graphql-types/index.js +18 -18
  259. package/dist/cjs/utils/compression.d.ts +35 -0
  260. package/dist/cjs/utils/compression.js +177 -0
  261. package/dist/cjs/utils/compression.js.map +1 -0
  262. package/dist/cjs/utils/index.d.ts +3 -0
  263. package/dist/cjs/utils/index.js +20 -0
  264. package/dist/cjs/utils/index.js.map +1 -0
  265. package/dist/cjs/utils/retry-envelope.d.ts +12 -0
  266. package/dist/cjs/utils/retry-envelope.js +31 -0
  267. package/dist/cjs/utils/retry-envelope.js.map +1 -0
  268. package/dist/cjs/utils/size.d.ts +2 -0
  269. package/dist/cjs/utils/size.js +49 -0
  270. package/dist/cjs/utils/size.js.map +1 -0
  271. package/dist/esm/__tests__/clients/sqs-bundled-client.spec.d.ts +1 -0
  272. package/dist/esm/__tests__/clients/sqs-bundled-client.spec.js +884 -0
  273. package/dist/esm/__tests__/clients/sqs-bundled-client.spec.js.map +1 -0
  274. package/dist/esm/__tests__/clients/sqs-client.spec.d.ts +1 -1
  275. package/dist/esm/__tests__/clients/sqs-client.spec.js +192 -119
  276. package/dist/esm/__tests__/clients/sqs-client.spec.js.map +1 -1
  277. package/dist/esm/__tests__/clients/sqs-unbundle.spec.d.ts +1 -0
  278. package/dist/esm/__tests__/clients/sqs-unbundle.spec.js +786 -0
  279. package/dist/esm/__tests__/clients/sqs-unbundle.spec.js.map +1 -0
  280. package/dist/esm/__tests__/db/shared-read-db-services.spec.d.ts +1 -1
  281. package/dist/esm/__tests__/db/shared-read-db-services.spec.js +87 -87
  282. package/dist/esm/__tests__/helpers/account-users-helper.spec.d.ts +1 -1
  283. package/dist/esm/__tests__/helpers/account-users-helper.spec.js +218 -218
  284. package/dist/esm/__tests__/helpers/api-key-auth-helper.spec.d.ts +1 -1
  285. package/dist/esm/__tests__/helpers/api-key-auth-helper.spec.js +72 -72
  286. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.d.ts +1 -1
  287. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.js +672 -672
  288. package/dist/esm/__tests__/identity-cache/trait-merging-and-staleness.spec.d.ts +1 -1
  289. package/dist/esm/__tests__/identity-cache/trait-merging-and-staleness.spec.js +586 -586
  290. package/dist/esm/__tests__/integration/sqs-bundling-roundtrip.spec.d.ts +1 -0
  291. package/dist/esm/__tests__/integration/sqs-bundling-roundtrip.spec.js +580 -0
  292. package/dist/esm/__tests__/integration/sqs-bundling-roundtrip.spec.js.map +1 -0
  293. package/dist/esm/__tests__/libs/compress-decompress.spec.d.ts +1 -1
  294. package/dist/esm/__tests__/libs/compress-decompress.spec.js +14 -14
  295. package/dist/esm/__tests__/libs/currency.spec.d.ts +1 -1
  296. package/dist/esm/__tests__/libs/currency.spec.js +218 -218
  297. package/dist/esm/__tests__/libs/dates.spec.d.ts +1 -1
  298. package/dist/esm/__tests__/libs/dates.spec.js +128 -128
  299. package/dist/esm/__tests__/libs/domain.spec.d.ts +1 -1
  300. package/dist/esm/__tests__/libs/domain.spec.js +105 -105
  301. package/dist/esm/__tests__/libs/numbers.spec.d.ts +1 -1
  302. package/dist/esm/__tests__/libs/numbers.spec.js +259 -259
  303. package/dist/esm/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  304. package/dist/esm/__tests__/s3-client/s3-client.spec.js +31 -31
  305. package/dist/esm/__tests__/shopify/shopify-graphql-transformer.spec.d.ts +1 -1
  306. package/dist/esm/__tests__/shopify/shopify-graphql-transformer.spec.js +33 -33
  307. package/dist/esm/__tests__/unit/libs/api-router/public-api-router.spec.d.ts +1 -1
  308. package/dist/esm/__tests__/unit/libs/api-router/public-api-router.spec.js +172 -172
  309. package/dist/esm/__tests__/unit/libs/api-router/route-matcher.spec.d.ts +1 -1
  310. package/dist/esm/__tests__/unit/libs/api-router/route-matcher.spec.js +67 -67
  311. package/dist/esm/clients/generic/cognito-client.d.ts +23 -23
  312. package/dist/esm/clients/generic/cognito-client.js +204 -204
  313. package/dist/esm/clients/generic/dynamodb-client.d.ts +18 -18
  314. package/dist/esm/clients/generic/dynamodb-client.js +168 -168
  315. package/dist/esm/clients/generic/eventbridge-client.d.ts +14 -14
  316. package/dist/esm/clients/generic/eventbridge-client.js +47 -47
  317. package/dist/esm/clients/generic/http-client.d.ts +14 -14
  318. package/dist/esm/clients/generic/http-client.js +53 -53
  319. package/dist/esm/clients/generic/index.d.ts +13 -10
  320. package/dist/esm/clients/generic/index.js +13 -10
  321. package/dist/esm/clients/generic/index.js.map +1 -1
  322. package/dist/esm/clients/generic/lambda-invoke-client.d.ts +10 -10
  323. package/dist/esm/clients/generic/lambda-invoke-client.js +35 -35
  324. package/dist/esm/clients/generic/location-client.d.ts +8 -8
  325. package/dist/esm/clients/generic/location-client.js +27 -27
  326. package/dist/esm/clients/generic/redis-client.d.ts +33 -33
  327. package/dist/esm/clients/generic/redis-client.js +184 -184
  328. package/dist/esm/clients/generic/s3-client.d.ts +23 -23
  329. package/dist/esm/clients/generic/s3-client.js +209 -209
  330. package/dist/esm/clients/generic/singlestore-db-client.d.ts +14 -14
  331. package/dist/esm/clients/generic/singlestore-db-client.js +40 -40
  332. package/dist/esm/clients/generic/sqs-bundled-client.d.ts +15 -0
  333. package/dist/esm/clients/generic/sqs-bundled-client.js +274 -0
  334. package/dist/esm/clients/generic/sqs-bundled-client.js.map +1 -0
  335. package/dist/esm/clients/generic/sqs-bundled-client.types.d.ts +52 -0
  336. package/dist/esm/clients/generic/sqs-bundled-client.types.js +14 -0
  337. package/dist/esm/clients/generic/sqs-bundled-client.types.js.map +1 -0
  338. package/dist/esm/clients/generic/sqs-client.d.ts +48 -33
  339. package/dist/esm/clients/generic/sqs-client.js +269 -107
  340. package/dist/esm/clients/generic/sqs-client.js.map +1 -1
  341. package/dist/esm/clients/generic/sqs-unbundle.d.ts +32 -0
  342. package/dist/esm/clients/generic/sqs-unbundle.js +138 -0
  343. package/dist/esm/clients/generic/sqs-unbundle.js.map +1 -0
  344. package/dist/esm/clients/index.d.ts +3 -3
  345. package/dist/esm/clients/index.js +3 -3
  346. package/dist/esm/clients/internal-api/accounts-client.d.ts +91 -91
  347. package/dist/esm/clients/internal-api/accounts-client.js +125 -125
  348. package/dist/esm/clients/internal-api/cache-lambda-client.d.ts +26 -26
  349. package/dist/esm/clients/internal-api/cache-lambda-client.js +85 -85
  350. package/dist/esm/clients/internal-api/db-management-client.d.ts +18 -18
  351. package/dist/esm/clients/internal-api/db-management-client.js +32 -32
  352. package/dist/esm/clients/internal-api/destinations-client.d.ts +34 -34
  353. package/dist/esm/clients/internal-api/destinations-client.js +75 -75
  354. package/dist/esm/clients/internal-api/event-collector-client.d.ts +20 -20
  355. package/dist/esm/clients/internal-api/event-collector-client.js +32 -32
  356. package/dist/esm/clients/internal-api/identity-client.d.ts +31 -31
  357. package/dist/esm/clients/internal-api/identity-client.js +87 -87
  358. package/dist/esm/clients/internal-api/index.d.ts +9 -9
  359. package/dist/esm/clients/internal-api/index.js +9 -9
  360. package/dist/esm/clients/internal-api/shopify-app-install-client.d.ts +37 -37
  361. package/dist/esm/clients/internal-api/shopify-app-install-client.js +77 -77
  362. package/dist/esm/clients/internal-api/subscriptions-client.d.ts +26 -26
  363. package/dist/esm/clients/internal-api/subscriptions-client.js +73 -73
  364. package/dist/esm/clients/internal-api/users-auth-client.d.ts +35 -35
  365. package/dist/esm/clients/internal-api/users-auth-client.js +106 -106
  366. package/dist/esm/clients/third-party/emailable-client.d.ts +7 -7
  367. package/dist/esm/clients/third-party/emailable-client.js +21 -21
  368. package/dist/esm/clients/third-party/exchange-rate-api-client.d.ts +17 -17
  369. package/dist/esm/clients/third-party/exchange-rate-api-client.js +15 -15
  370. package/dist/esm/clients/third-party/index.d.ts +4 -4
  371. package/dist/esm/clients/third-party/index.js +4 -4
  372. package/dist/esm/clients/third-party/loops-client.d.ts +10 -10
  373. package/dist/esm/clients/third-party/loops-client.js +26 -26
  374. package/dist/esm/clients/third-party/shopify/graphql-order-queries.d.ts +25 -25
  375. package/dist/esm/clients/third-party/shopify/graphql-order-queries.js +27 -27
  376. package/dist/esm/clients/third-party/shopify/graphql-product-queries.d.ts +2 -2
  377. package/dist/esm/clients/third-party/shopify/graphql-product-queries.js +177 -177
  378. package/dist/esm/clients/third-party/shopify/shopify-graphql-client.d.ts +10 -10
  379. package/dist/esm/clients/third-party/shopify/shopify-graphql-client.js +157 -157
  380. package/dist/esm/clients/third-party/shopify-client.d.ts +29 -29
  381. package/dist/esm/clients/third-party/shopify-client.js +142 -142
  382. package/dist/esm/constants/index.d.ts +1 -0
  383. package/dist/esm/constants/index.js +2 -0
  384. package/dist/esm/constants/index.js.map +1 -0
  385. package/dist/esm/constants/sqs.d.ts +11 -0
  386. package/dist/esm/constants/sqs.js +12 -0
  387. package/dist/esm/constants/sqs.js.map +1 -0
  388. package/dist/esm/helpers/account-users-helper.d.ts +2 -2
  389. package/dist/esm/helpers/account-users-helper.js +18 -18
  390. package/dist/esm/helpers/api-key-auth-helper.d.ts +9 -9
  391. package/dist/esm/helpers/api-key-auth-helper.js +35 -35
  392. package/dist/esm/helpers/api-key-authorizer-helper.d.ts +36 -36
  393. package/dist/esm/helpers/api-key-authorizer-helper.js +81 -81
  394. package/dist/esm/helpers/identity-cache-helper.d.ts +21 -21
  395. package/dist/esm/helpers/identity-cache-helper.js +151 -151
  396. package/dist/esm/helpers/index.d.ts +9 -9
  397. package/dist/esm/helpers/index.js +9 -9
  398. package/dist/esm/helpers/input-validation-helper.d.ts +3 -3
  399. package/dist/esm/helpers/input-validation-helper.js +18 -18
  400. package/dist/esm/helpers/logging-helper.d.ts +16 -16
  401. package/dist/esm/helpers/logging-helper.js +56 -56
  402. package/dist/esm/helpers/response-helper.d.ts +18 -18
  403. package/dist/esm/helpers/response-helper.js +37 -37
  404. package/dist/esm/helpers/shopify-helper.d.ts +9 -9
  405. package/dist/esm/helpers/shopify-helper.js +21 -21
  406. package/dist/esm/helpers/sqs-utils.d.ts +6 -6
  407. package/dist/esm/helpers/sqs-utils.js +9 -9
  408. package/dist/esm/index.d.ts +7 -5
  409. package/dist/esm/index.js +7 -5
  410. package/dist/esm/index.js.map +1 -1
  411. package/dist/esm/libs/api-router/index.d.ts +2 -2
  412. package/dist/esm/libs/api-router/index.js +2 -2
  413. package/dist/esm/libs/api-router/public-api-router.d.ts +3 -3
  414. package/dist/esm/libs/api-router/public-api-router.js +32 -32
  415. package/dist/esm/libs/api-router/route-matcher.d.ts +21 -21
  416. package/dist/esm/libs/api-router/route-matcher.js +30 -30
  417. package/dist/esm/libs/click-id-parser.d.ts +23 -23
  418. package/dist/esm/libs/click-id-parser.js +45 -45
  419. package/dist/esm/libs/compression.d.ts +2 -2
  420. package/dist/esm/libs/compression.js +25 -25
  421. package/dist/esm/libs/cookie.d.ts +17 -17
  422. package/dist/esm/libs/cookie.js +70 -70
  423. package/dist/esm/libs/crypto.d.ts +4 -4
  424. package/dist/esm/libs/crypto.js +15 -15
  425. package/dist/esm/libs/csv.d.ts +2 -2
  426. package/dist/esm/libs/csv.js +30 -30
  427. package/dist/esm/libs/currency.d.ts +1 -1
  428. package/dist/esm/libs/currency.js +22 -22
  429. package/dist/esm/libs/dates.d.ts +12 -12
  430. package/dist/esm/libs/dates.js +83 -83
  431. package/dist/esm/libs/domain.d.ts +2 -2
  432. package/dist/esm/libs/domain.js +33 -33
  433. package/dist/esm/libs/emails.d.ts +6 -6
  434. package/dist/esm/libs/emails.js +115 -115
  435. package/dist/esm/libs/http-error.d.ts +21 -21
  436. package/dist/esm/libs/http-error.js +59 -59
  437. package/dist/esm/libs/http-status-codes.d.ts +58 -58
  438. package/dist/esm/libs/http-status-codes.js +59 -59
  439. package/dist/esm/libs/index.d.ts +18 -18
  440. package/dist/esm/libs/index.js +18 -18
  441. package/dist/esm/libs/numbers.d.ts +1 -1
  442. package/dist/esm/libs/numbers.js +11 -11
  443. package/dist/esm/libs/referrer-parser/index.d.ts +2 -2
  444. package/dist/esm/libs/referrer-parser/index.js +2 -2
  445. package/dist/esm/libs/referrer-parser/referrer-data.d.ts +9 -9
  446. package/dist/esm/libs/referrer-parser/referrer-data.js +3304 -3304
  447. package/dist/esm/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  448. package/dist/esm/libs/referrer-parser/referrer-parser-util.js +124 -124
  449. package/dist/esm/libs/strings.d.ts +3 -3
  450. package/dist/esm/libs/strings.js +40 -40
  451. package/dist/esm/libs/traits.d.ts +6 -6
  452. package/dist/esm/libs/traits.js +54 -54
  453. package/dist/esm/libs/url.d.ts +1 -1
  454. package/dist/esm/libs/url.js +9 -9
  455. package/dist/esm/services/cache/generic-cached-object.d.ts +5 -5
  456. package/dist/esm/services/cache/generic-cached-object.js +1 -1
  457. package/dist/esm/services/cache/index.d.ts +1 -1
  458. package/dist/esm/services/cache/index.js +1 -1
  459. package/dist/esm/services/cache/product-cache-service.d.ts +21 -21
  460. package/dist/esm/services/cache/product-cache-service.js +68 -68
  461. package/dist/esm/services/currency-exchange-rate-lookup-service.d.ts +11 -11
  462. package/dist/esm/services/currency-exchange-rate-lookup-service.js +62 -62
  463. package/dist/esm/services/db/accounts-db-service.d.ts +9 -9
  464. package/dist/esm/services/db/accounts-db-service.js +29 -29
  465. package/dist/esm/services/db/api-keys-db-service.d.ts +10 -10
  466. package/dist/esm/services/db/api-keys-db-service.js +32 -32
  467. package/dist/esm/services/db/currency-exchange-rates-db-service.d.ts +21 -21
  468. package/dist/esm/services/db/currency-exchange-rates-db-service.js +35 -35
  469. package/dist/esm/services/db/destinations-db-service.d.ts +12 -12
  470. package/dist/esm/services/db/destinations-db-service.js +72 -72
  471. package/dist/esm/services/db/identity-cache-db-service.d.ts +28 -28
  472. package/dist/esm/services/db/identity-cache-db-service.js +313 -313
  473. package/dist/esm/services/db/index.d.ts +13 -13
  474. package/dist/esm/services/db/index.js +13 -13
  475. package/dist/esm/services/db/log-events-db-service.d.ts +11 -11
  476. package/dist/esm/services/db/log-events-db-service.js +177 -177
  477. package/dist/esm/services/db/pixels-db-service.d.ts +8 -8
  478. package/dist/esm/services/db/pixels-db-service.js +31 -31
  479. package/dist/esm/services/db/purchasable-contacts-db-service.d.ts +9 -9
  480. package/dist/esm/services/db/purchasable-contacts-db-service.js +39 -39
  481. package/dist/esm/services/db/purchased-contacts-db-service.d.ts +17 -17
  482. package/dist/esm/services/db/purchased-contacts-db-service.js +139 -139
  483. package/dist/esm/services/db/shopify-app-installs-db-service.d.ts +8 -8
  484. package/dist/esm/services/db/shopify-app-installs-db-service.js +47 -47
  485. package/dist/esm/services/db/shopify-products-cache-db-service.d.ts +16 -16
  486. package/dist/esm/services/db/shopify-products-cache-db-service.js +66 -66
  487. package/dist/esm/services/db/subscriptions-db-service.d.ts +10 -10
  488. package/dist/esm/services/db/subscriptions-db-service.js +30 -30
  489. package/dist/esm/services/db/tracking-events-db-service.d.ts +20 -20
  490. package/dist/esm/services/db/tracking-events-db-service.js +161 -161
  491. package/dist/esm/services/eventbridge-integration-service.d.ts +9 -9
  492. package/dist/esm/services/eventbridge-integration-service.js +24 -24
  493. package/dist/esm/services/events/index.d.ts +3 -3
  494. package/dist/esm/services/events/index.js +3 -3
  495. package/dist/esm/services/events/log-event-service.d.ts +9 -9
  496. package/dist/esm/services/events/log-event-service.js +52 -52
  497. package/dist/esm/services/events/metric-event-service.d.ts +9 -9
  498. package/dist/esm/services/events/metric-event-service.js +45 -45
  499. package/dist/esm/services/events/tracking-event-sqs-service.d.ts +8 -8
  500. package/dist/esm/services/events/tracking-event-sqs-service.js +30 -30
  501. package/dist/esm/services/generic-cache-service.d.ts +7 -7
  502. package/dist/esm/services/generic-cache-service.js +29 -29
  503. package/dist/esm/services/index.d.ts +8 -8
  504. package/dist/esm/services/index.js +8 -8
  505. package/dist/esm/services/ipdata-lookup-service.d.ts +20 -20
  506. package/dist/esm/services/ipdata-lookup-service.js +108 -108
  507. package/dist/esm/services/shopify/index.d.ts +2 -2
  508. package/dist/esm/services/shopify/index.js +2 -2
  509. package/dist/esm/services/shopify/products/index.d.ts +1 -1
  510. package/dist/esm/services/shopify/products/index.js +1 -1
  511. package/dist/esm/services/shopify/products/shopify-products-serviceV2.d.ts +17 -17
  512. package/dist/esm/services/shopify/products/shopify-products-serviceV2.js +108 -108
  513. package/dist/esm/services/shopify/shopify-graphql-transformer.d.ts +8 -8
  514. package/dist/esm/services/shopify/shopify-graphql-transformer.js +138 -138
  515. package/dist/esm/types/api-response.d.ts +6 -6
  516. package/dist/esm/types/api-response.js +1 -1
  517. package/dist/esm/types/index.d.ts +1 -1
  518. package/dist/esm/types/index.js +1 -1
  519. package/dist/esm/types/internal-events/event-detail-types.d.ts +20 -20
  520. package/dist/esm/types/internal-events/event-detail-types.js +24 -24
  521. package/dist/esm/types/internal-events/index.d.ts +1 -1
  522. package/dist/esm/types/internal-events/index.js +1 -1
  523. package/dist/esm/types/shopify-graphql-types/admin.generated.d.ts +123 -123
  524. package/dist/esm/types/shopify-graphql-types/admin.generated.js +1 -1
  525. package/dist/esm/types/shopify-graphql-types/admin.types.d.ts +26289 -26289
  526. package/dist/esm/types/shopify-graphql-types/admin.types.js +5299 -5299
  527. package/dist/esm/types/shopify-graphql-types/index.d.ts +2 -2
  528. package/dist/esm/types/shopify-graphql-types/index.js +2 -2
  529. package/dist/esm/utils/compression.d.ts +35 -0
  530. package/dist/esm/utils/compression.js +167 -0
  531. package/dist/esm/utils/compression.js.map +1 -0
  532. package/dist/esm/utils/index.d.ts +3 -0
  533. package/dist/esm/utils/index.js +4 -0
  534. package/dist/esm/utils/index.js.map +1 -0
  535. package/dist/esm/utils/retry-envelope.d.ts +12 -0
  536. package/dist/esm/utils/retry-envelope.js +25 -0
  537. package/dist/esm/utils/retry-envelope.js.map +1 -0
  538. package/dist/esm/utils/size.d.ts +2 -0
  539. package/dist/esm/utils/size.js +44 -0
  540. package/dist/esm/utils/size.js.map +1 -0
  541. package/package.json +135 -135
@@ -1,2 +1,2 @@
1
- export * from './admin.generated';
2
- export * from './admin.types';
1
+ export * from './admin.generated';
2
+ export * from './admin.types';
@@ -1,3 +1,3 @@
1
- export * from './admin.generated';
2
- export * from './admin.types';
1
+ export * from './admin.generated';
2
+ export * from './admin.types';
3
3
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,35 @@
1
+ /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ import { CompressionAlgorithm } from '../clients/generic/sqs-bundled-client.types.js';
4
+ export declare function getZstdUncompressedSize(buffer: Buffer): number | undefined;
5
+ export declare enum CompressionOperation {
6
+ COMPRESS = "compress",
7
+ DECOMPRESS = "decompress"
8
+ }
9
+ export declare function compress(data: Buffer, algorithm: CompressionAlgorithm, level?: number): Promise<Buffer>;
10
+ export declare function decompress(data: Buffer, algorithm: CompressionAlgorithm): Promise<Buffer>;
11
+ export declare function compressToBase64(data: unknown, algorithm: CompressionAlgorithm, level?: number): Promise<{
12
+ base64: string;
13
+ originalSize: number;
14
+ compressedSize: number;
15
+ }>;
16
+ export declare const DECOMPRESSION_LIMITS: {
17
+ readonly MAX_DECOMPRESSED_SIZE_BYTES: number;
18
+ readonly MAX_COMPRESSION_RATIO: 100;
19
+ readonly DEFAULT_TIMEOUT_MS: 30000;
20
+ };
21
+ export declare class DecompressionBombError extends Error {
22
+ readonly compressedSize: number;
23
+ readonly decompressedSize: number;
24
+ readonly limit: number;
25
+ constructor(compressedSize: number, decompressedSize: number, limit: number);
26
+ }
27
+ export declare class CompressionTimeoutError extends Error {
28
+ readonly operation: CompressionOperation;
29
+ readonly timeoutMs: number;
30
+ constructor(operation: CompressionOperation, timeoutMs: number);
31
+ }
32
+ export declare function decompressFromBase64<T>(base64: string, algorithm: CompressionAlgorithm, options?: {
33
+ maxDecompressedSizeBytes?: number;
34
+ timeoutMs?: number;
35
+ }): Promise<T>;
@@ -0,0 +1,167 @@
1
+ import { promisify } from 'node:util';
2
+ import { zstdCompress as zstdCompressCallback, zstdDecompress as zstdDecompressCallback, constants, } from 'node:zlib';
3
+ import { CompressionAlgorithm } from '../clients/generic/sqs-bundled-client.types.js';
4
+ const zstdCompressNative = promisify(zstdCompressCallback);
5
+ const zstdDecompressNative = promisify(zstdDecompressCallback);
6
+ const ZSTD_MAGIC = 0xfd2fb528;
7
+ export function getZstdUncompressedSize(buffer) {
8
+ if (buffer.length < 5) {
9
+ return undefined;
10
+ }
11
+ const magic = buffer.readUInt32LE(0);
12
+ if (magic !== ZSTD_MAGIC) {
13
+ return undefined;
14
+ }
15
+ const frameHeaderDescriptor = buffer[4];
16
+ if (frameHeaderDescriptor === undefined) {
17
+ return undefined;
18
+ }
19
+ const singleSegmentFlag = (frameHeaderDescriptor >> 5) & 0x01;
20
+ const contentSizeFlag = (frameHeaderDescriptor >> 6) & 0x03;
21
+ const dictionaryIdFlag = frameHeaderDescriptor & 0x03;
22
+ const dictIdSizes = [0, 1, 2, 4];
23
+ const dictIdSize = dictIdSizes[dictionaryIdFlag];
24
+ let fcsSize;
25
+ if (contentSizeFlag === 0) {
26
+ fcsSize = singleSegmentFlag === 1 ? 1 : 0;
27
+ }
28
+ else if (contentSizeFlag === 1) {
29
+ fcsSize = 2;
30
+ }
31
+ else if (contentSizeFlag === 2) {
32
+ fcsSize = 4;
33
+ }
34
+ else {
35
+ fcsSize = 8;
36
+ }
37
+ if (fcsSize === 0) {
38
+ return undefined;
39
+ }
40
+ const windowDescriptorSize = singleSegmentFlag === 1 ? 0 : 1;
41
+ const fcsOffset = 5 + windowDescriptorSize + dictIdSize;
42
+ if (buffer.length < fcsOffset + fcsSize) {
43
+ return undefined;
44
+ }
45
+ if (fcsSize === 1) {
46
+ return buffer.readUInt8(fcsOffset);
47
+ }
48
+ else if (fcsSize === 2) {
49
+ return buffer.readUInt16LE(fcsOffset) + 256;
50
+ }
51
+ else if (fcsSize === 4) {
52
+ return buffer.readUInt32LE(fcsOffset);
53
+ }
54
+ else {
55
+ const bigValue = buffer.readBigUInt64LE(fcsOffset);
56
+ if (bigValue > BigInt(Number.MAX_SAFE_INTEGER)) {
57
+ return Number.MAX_SAFE_INTEGER;
58
+ }
59
+ return Number(bigValue);
60
+ }
61
+ }
62
+ export var CompressionOperation;
63
+ (function (CompressionOperation) {
64
+ CompressionOperation["COMPRESS"] = "compress";
65
+ CompressionOperation["DECOMPRESS"] = "decompress";
66
+ })(CompressionOperation || (CompressionOperation = {}));
67
+ export async function compress(data, algorithm, level = 3) {
68
+ switch (algorithm) {
69
+ case CompressionAlgorithm.NONE:
70
+ return data;
71
+ case CompressionAlgorithm.ZSTD:
72
+ return await zstdCompressNative(data, {
73
+ params: {
74
+ [constants.ZSTD_c_compressionLevel]: level,
75
+ },
76
+ });
77
+ default:
78
+ throw new Error(`Unsupported compression algorithm: ${algorithm}`);
79
+ }
80
+ }
81
+ export async function decompress(data, algorithm) {
82
+ switch (algorithm) {
83
+ case CompressionAlgorithm.NONE:
84
+ return data;
85
+ case CompressionAlgorithm.ZSTD:
86
+ return await zstdDecompressNative(data);
87
+ default:
88
+ throw new Error(`Unsupported compression algorithm: ${algorithm}`);
89
+ }
90
+ }
91
+ export async function compressToBase64(data, algorithm, level = 3) {
92
+ const json = JSON.stringify(data);
93
+ const originalSize = Buffer.byteLength(json, 'utf8');
94
+ if (algorithm === CompressionAlgorithm.NONE) {
95
+ return { base64: '', originalSize, compressedSize: originalSize };
96
+ }
97
+ const compressed = await compress(Buffer.from(json, 'utf8'), algorithm, level);
98
+ const base64 = compressed.toString('base64');
99
+ return {
100
+ base64,
101
+ originalSize,
102
+ compressedSize: Buffer.byteLength(base64, 'utf8'),
103
+ };
104
+ }
105
+ export const DECOMPRESSION_LIMITS = {
106
+ MAX_DECOMPRESSED_SIZE_BYTES: 10 * 1024 * 1024,
107
+ MAX_COMPRESSION_RATIO: 100,
108
+ DEFAULT_TIMEOUT_MS: 30000,
109
+ };
110
+ export class DecompressionBombError extends Error {
111
+ compressedSize;
112
+ decompressedSize;
113
+ limit;
114
+ constructor(compressedSize, decompressedSize, limit) {
115
+ super(`Decompression bomb detected: ${decompressedSize} bytes exceeds limit of ${limit} bytes ` +
116
+ `(compression ratio: ${(decompressedSize / compressedSize).toFixed(1)}x)`);
117
+ this.compressedSize = compressedSize;
118
+ this.decompressedSize = decompressedSize;
119
+ this.limit = limit;
120
+ this.name = 'DecompressionBombError';
121
+ }
122
+ }
123
+ export class CompressionTimeoutError extends Error {
124
+ operation;
125
+ timeoutMs;
126
+ constructor(operation, timeoutMs) {
127
+ super(`${operation} operation timed out after ${timeoutMs}ms`);
128
+ this.operation = operation;
129
+ this.timeoutMs = timeoutMs;
130
+ this.name = 'CompressionTimeoutError';
131
+ }
132
+ }
133
+ async function withTimeout(operation, timeoutMs, operationName) {
134
+ let timeoutId;
135
+ const timeoutPromise = new Promise((_, reject) => {
136
+ timeoutId = setTimeout(() => {
137
+ reject(new CompressionTimeoutError(operationName, timeoutMs));
138
+ }, timeoutMs);
139
+ });
140
+ try {
141
+ return await Promise.race([operation, timeoutPromise]);
142
+ }
143
+ finally {
144
+ if (timeoutId)
145
+ clearTimeout(timeoutId);
146
+ }
147
+ }
148
+ export async function decompressFromBase64(base64, algorithm, options) {
149
+ if (algorithm === CompressionAlgorithm.NONE) {
150
+ throw new Error('Cannot decompress NONE algorithm from base64');
151
+ }
152
+ const maxSize = options?.maxDecompressedSizeBytes ?? DECOMPRESSION_LIMITS.MAX_DECOMPRESSED_SIZE_BYTES;
153
+ const timeoutMs = options?.timeoutMs ?? DECOMPRESSION_LIMITS.DEFAULT_TIMEOUT_MS;
154
+ const compressed = Buffer.from(base64, 'base64');
155
+ if (algorithm === CompressionAlgorithm.ZSTD) {
156
+ const headerSize = getZstdUncompressedSize(compressed);
157
+ if (headerSize !== undefined && headerSize > maxSize) {
158
+ throw new DecompressionBombError(compressed.length, headerSize, maxSize);
159
+ }
160
+ }
161
+ const decompressed = await withTimeout(decompress(compressed, algorithm), timeoutMs, CompressionOperation.DECOMPRESS);
162
+ if (decompressed.length > maxSize) {
163
+ throw new DecompressionBombError(compressed.length, decompressed.length, maxSize);
164
+ }
165
+ return JSON.parse(decompressed.toString('utf8'));
166
+ }
167
+ //# sourceMappingURL=compression.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compression.js","sourceRoot":"","sources":["../../../src/utils/compression.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from './size.js';
2
+ export * from './compression.js';
3
+ export * from './retry-envelope.js';
@@ -0,0 +1,4 @@
1
+ export * from './size.js';
2
+ export * from './compression.js';
3
+ export * from './retry-envelope.js';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,12 @@
1
+ export interface RetryEnvelope<T> {
2
+ item: T;
3
+ retryCount: number;
4
+ firstFailedAt: string;
5
+ lastError: string;
6
+ }
7
+ export declare function isRetryEnvelope<T>(payload: unknown): payload is RetryEnvelope<T>;
8
+ export declare function unwrapItem<T>(payload: T | RetryEnvelope<T>): {
9
+ item: T;
10
+ retryCount: number;
11
+ };
12
+ export declare function createRetryEnvelope<T>(item: T, currentRetryCount: number, originalPayload: T | RetryEnvelope<T>, error: unknown): RetryEnvelope<T>;
@@ -0,0 +1,25 @@
1
+ export function isRetryEnvelope(payload) {
2
+ return (typeof payload === 'object' &&
3
+ payload !== null &&
4
+ 'item' in payload &&
5
+ 'retryCount' in payload &&
6
+ typeof payload.retryCount === 'number');
7
+ }
8
+ export function unwrapItem(payload) {
9
+ if (isRetryEnvelope(payload)) {
10
+ return { item: payload.item, retryCount: payload.retryCount };
11
+ }
12
+ return { item: payload, retryCount: 0 };
13
+ }
14
+ export function createRetryEnvelope(item, currentRetryCount, originalPayload, error) {
15
+ const errorMessage = error instanceof Error ? error.message : String(error);
16
+ return {
17
+ item,
18
+ retryCount: currentRetryCount + 1,
19
+ firstFailedAt: isRetryEnvelope(originalPayload)
20
+ ? originalPayload.firstFailedAt
21
+ : new Date().toISOString(),
22
+ lastError: errorMessage,
23
+ };
24
+ }
25
+ //# sourceMappingURL=retry-envelope.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retry-envelope.js","sourceRoot":"","sources":["../../../src/utils/retry-envelope.ts"],"names":[],"mappings":"AAcA,MAAM,UAAU,eAAe,CAAI,OAAgB;IACjD,OAAO,CACL,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,KAAK,IAAI;QAChB,MAAM,IAAI,OAAO;QACjB,YAAY,IAAI,OAAO;QACvB,OAAQ,OAA4B,CAAC,UAAU,KAAK,QAAQ,CAC7D,CAAC;AACJ,CAAC;AAMD,MAAM,UAAU,UAAU,CAAI,OAA6B;IACzD,IAAI,eAAe,CAAC,OAAO,CAAC,EAAE;QAC5B,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;KAC/D;IACD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC;AAC1C,CAAC;AAMD,MAAM,UAAU,mBAAmB,CACjC,IAAO,EACP,iBAAyB,EACzB,eAAqC,EACrC,KAAc;IAEd,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAE5E,OAAO;QACL,IAAI;QACJ,UAAU,EAAE,iBAAiB,GAAG,CAAC;QACjC,aAAa,EAAE,eAAe,CAAC,eAAe,CAAC;YAC7C,CAAC,CAAC,eAAe,CAAC,aAAa;YAC/B,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QAC5B,SAAS,EAAE,YAAY;KACxB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function sizeInBytes(obj: unknown): number;
2
+ export declare function chunkArrayBySize<T>(array: T[], maxChunkSizeBytes: number, maxItemsPerChunk?: number): T[][];
@@ -0,0 +1,44 @@
1
+ import { Logger } from '../helpers/logging-helper.js';
2
+ export function sizeInBytes(obj) {
3
+ try {
4
+ return new TextEncoder().encode(JSON.stringify(obj)).length;
5
+ }
6
+ catch (error) {
7
+ Logger.warn('sizeInBytes: failed to stringify object, returning fallback size', {
8
+ error,
9
+ objectType: typeof obj,
10
+ });
11
+ return 1024 * 1024;
12
+ }
13
+ }
14
+ export function chunkArrayBySize(array, maxChunkSizeBytes, maxItemsPerChunk) {
15
+ const chunks = [];
16
+ let currentChunk = [];
17
+ let currentChunkSize = 0;
18
+ for (const item of array) {
19
+ const itemSize = sizeInBytes(item);
20
+ const wouldExceedSize = currentChunkSize + itemSize > maxChunkSizeBytes;
21
+ const wouldExceedCount = maxItemsPerChunk !== undefined && currentChunk.length >= maxItemsPerChunk;
22
+ if ((wouldExceedSize || wouldExceedCount) && currentChunk.length > 0) {
23
+ chunks.push(currentChunk);
24
+ currentChunk = [];
25
+ currentChunkSize = 0;
26
+ }
27
+ if (itemSize > maxChunkSizeBytes) {
28
+ if (currentChunk.length > 0) {
29
+ chunks.push(currentChunk);
30
+ currentChunk = [];
31
+ currentChunkSize = 0;
32
+ }
33
+ chunks.push([item]);
34
+ continue;
35
+ }
36
+ currentChunk.push(item);
37
+ currentChunkSize += itemSize;
38
+ }
39
+ if (currentChunk.length > 0) {
40
+ chunks.push(currentChunk);
41
+ }
42
+ return chunks;
43
+ }
44
+ //# sourceMappingURL=size.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"size.js","sourceRoot":"","sources":["../../../src/utils/size.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAMtD,MAAM,UAAU,WAAW,CAAC,GAAY;IACtC,IAAI;QACF,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;KAC7D;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,CAAC,IAAI,CAAC,kEAAkE,EAAE;YAC9E,KAAK;YACL,UAAU,EAAE,OAAO,GAAG;SACvB,CAAC,CAAC;QACH,OAAO,IAAI,GAAG,IAAI,CAAC;KACpB;AACH,CAAC;AAYD,MAAM,UAAU,gBAAgB,CAC9B,KAAU,EACV,iBAAyB,EACzB,gBAAyB;IAEzB,MAAM,MAAM,GAAU,EAAE,CAAC;IACzB,IAAI,YAAY,GAAQ,EAAE,CAAC;IAC3B,IAAI,gBAAgB,GAAG,CAAC,CAAC;IAEzB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QAGnC,MAAM,eAAe,GAAG,gBAAgB,GAAG,QAAQ,GAAG,iBAAiB,CAAC;QACxE,MAAM,gBAAgB,GACpB,gBAAgB,KAAK,SAAS,IAAI,YAAY,CAAC,MAAM,IAAI,gBAAgB,CAAC;QAE5E,IAAI,CAAC,eAAe,IAAI,gBAAgB,CAAC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;YACpE,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC1B,YAAY,GAAG,EAAE,CAAC;YAClB,gBAAgB,GAAG,CAAC,CAAC;SACtB;QAGD,IAAI,QAAQ,GAAG,iBAAiB,EAAE;YAEhC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC3B,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBAC1B,YAAY,GAAG,EAAE,CAAC;gBAClB,gBAAgB,GAAG,CAAC,CAAC;aACtB;YACD,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACpB,SAAS;SACV;QAED,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxB,gBAAgB,IAAI,QAAQ,CAAC;KAC9B;IAED,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;QAC3B,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;KAC3B;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
package/package.json CHANGED
@@ -1,135 +1,135 @@
1
- {
2
- "name": "@adtrackify/at-service-common",
3
- "version": "3.17.8",
4
- "description": "",
5
- "files": [
6
- "dist/*"
7
- ],
8
- "main": "./dist/cjs/index.js",
9
- "module": "./dist/esm/index.js",
10
- "type": "module",
11
- "engines": {
12
- "node": ">=20.0.0",
13
- "npm": ">=10.0.0"
14
- },
15
- "scripts": {
16
- "clean": "rimraf dist",
17
- "build": "cross-env NODE_ENV=production npm run tsc",
18
- "build:dev": "npm run clean && npm run verify && cross-env NODE_ENV=production stage=dev APP_ENV=dev npm run build",
19
- "build:qa": "npm run clean && npm run verify && cross-env NODE_ENV=production stage=qa APP_ENV=qa npm run build",
20
- "build:prod": "npm run clean && npm run verify && cross-env NODE_ENV=production stage=prod APP_ENV=prod npm run build",
21
- "elint": "eslint .",
22
- "format": "prettier --write \"src/**/*.ts\" \"src/**/*.js\"",
23
- "lint": "eslint src/",
24
- "lint:fix": "eslint . --fix",
25
- "coverage": "npm run test:all -- --coverage --group=unit",
26
- "test": "jest --group=unit --coverage",
27
- "test:all": "cross-env AWS_REGION=us-east-2 NODE_ENV=test jest --group=unit --coverage",
28
- "test:unit": "cross-env AWS_REGION=us-east-2 NODE_ENV=test jest --group=unit --coverage",
29
- "verify": "npm run clean && npm run shopify:graphql:codegen && npm run type-check && npm run lint:fix && npm run test",
30
- "version": "npm run format && git add -A src",
31
- "postversion": "git push && git push --tags",
32
- "tsc": "tsc -p tsconfig.json && tsc -p tsconfig-cjs.json",
33
- "push": "npm install && npm run build:dev && npm publish --verbose",
34
- "type-check": "tsc --noEmit",
35
- "prepublishOnly": "npm run tsc",
36
- "shopify:graphql:codegen": "graphql-codegen && node scripts/fix-codegen-imports.cjs"
37
- },
38
- "dependencies": {
39
- "@adtrackify/at-shared-utils": "^3.2.23",
40
- "@adtrackify/at-tracking-event-types": "^4.68.3",
41
- "@aws-sdk/util-utf8": "^3.374.0",
42
- "@shopify/admin-api-client": "^1.0.4",
43
- "@shopify/shopify-api": "^11.6.1",
44
- "@shopify/storefront-api-client": "^1.0.3",
45
- "big.js": "^7.0.1",
46
- "ioredis": "^5.4.1",
47
- "libphonenumber-js": "^1.12.15",
48
- "loops": "^6.0.1",
49
- "pako": "^2.1.0",
50
- "papaparse": "^5.5.3",
51
- "psl": "^1.15.0",
52
- "shopify-api-node": "^3.12.7",
53
- "ulid": "^3.0.1"
54
- },
55
- "peerDependencies": {
56
- "assert": "^2.0.0",
57
- "axios": "^1.5.1",
58
- "crypto": "^1.0.1",
59
- "joi": "^17.6.0",
60
- "lambda-log": "^3.1.0",
61
- "luxon": "^3.0.3",
62
- "mysql2": "^3.11.0",
63
- "postmark": "^3.0.14",
64
- "ua-parser-js": "^1.0.2",
65
- "uuid": "^9.0.0"
66
- },
67
- "devDependencies": {
68
- "@aws-sdk/client-cognito-identity-provider": "^3.345.0",
69
- "@aws-sdk/client-dynamodb": "^3.345.0",
70
- "@aws-sdk/client-eventbridge": "^3.345.0",
71
- "@aws-sdk/client-lambda": "^3.637.0",
72
- "@aws-sdk/client-location": "^3.568.0",
73
- "@aws-sdk/client-s3": "^3.345.0",
74
- "@aws-sdk/client-sqs": "^3.345.0",
75
- "@aws-sdk/lib-dynamodb": "^3.345.0",
76
- "@faker-js/faker": "^7.5.0",
77
- "@graphql-codegen/graphql-modules-preset": "^4.0.12",
78
- "@graphql-codegen/typescript": "^4.1.2",
79
- "@graphql-codegen/typescript-resolvers": "^4.4.1",
80
- "@shopify/api-codegen-preset": "^1.1.3",
81
- "@swc/core": "^1.7.35",
82
- "@swc/jest": "^0.2.36",
83
- "@types/aws-lambda": "^8.10.145",
84
- "@types/big.js": "^6.2.2",
85
- "@types/jest": "^28.1.8",
86
- "@types/lambda-log": "^3.0.0",
87
- "@types/luxon": "^3.0.1",
88
- "@types/node": "^17.0.8",
89
- "@types/pako": "^2.0.3",
90
- "@types/papaparse": "^5.3.16",
91
- "@types/ua-parser-js": "^0.7.36",
92
- "@types/uuid": "^8.3.4",
93
- "@typescript-eslint/eslint-plugin": "^5.37.0",
94
- "@typescript-eslint/parser": "^5.37.0",
95
- "@upstackdata/eslint-plugin": "^1.0.2",
96
- "core-js": "^3.25.1",
97
- "cross-env": "^7.0.3",
98
- "esbuild": "^0.17.1",
99
- "eslint": "^8.23.1",
100
- "eslint-config-standard": "^17.0.0",
101
- "eslint-plugin-babel": "^5.3.1",
102
- "eslint-plugin-import": "^2.26.0",
103
- "eslint-plugin-n": "^15.2.5",
104
- "eslint-plugin-promise": "^6.0.1",
105
- "glob": "^8.0.3",
106
- "husky": "^6.0.0",
107
- "jest": "^29.2.1",
108
- "jest-cucumber": "3.0.1",
109
- "jest-junit": "13.0.0",
110
- "jest-runner": "^29.0.2",
111
- "jest-runner-groups": "2.2.0",
112
- "jest-util": "^29.7.0",
113
- "npm-dts": "^1.3.12",
114
- "npm-run-all": "^4.1.5",
115
- "npm-scripts-info": "^0.3.9",
116
- "prettier": "^2.7.1",
117
- "regenerator-runtime": "^0.13.9",
118
- "rimraf": "^3.0.2",
119
- "swc-loader": "^0.2.6",
120
- "ts-jest": "^29.0.5",
121
- "ts-jest-resolver": "^2.0.1",
122
- "ts-loader": "^9.5.1",
123
- "ts-node": "^10.9.2",
124
- "tslint": "^6.1.3",
125
- "tslint-config-prettier": "^1.18.0",
126
- "typescript": "4.9.5"
127
- },
128
- "repository": {
129
- "type": "git",
130
- "url": "git+ssh://git@bitbucket.org/eacap/at-service-common.git"
131
- },
132
- "author": "",
133
- "license": "ISC",
134
- "homepage": "https://bitbucket.org/eacap/at-service-common#readme"
135
- }
1
+ {
2
+ "name": "@adtrackify/at-service-common",
3
+ "version": "3.18.1",
4
+ "description": "",
5
+ "files": [
6
+ "dist/*"
7
+ ],
8
+ "main": "./dist/cjs/index.js",
9
+ "module": "./dist/esm/index.js",
10
+ "type": "module",
11
+ "engines": {
12
+ "node": ">=24.0.0",
13
+ "npm": ">=10.0.0"
14
+ },
15
+ "scripts": {
16
+ "clean": "rimraf dist",
17
+ "build": "cross-env NODE_ENV=production npm run tsc",
18
+ "build:dev": "npm run clean && npm run verify && cross-env NODE_ENV=production stage=dev APP_ENV=dev npm run build",
19
+ "build:qa": "npm run clean && npm run verify && cross-env NODE_ENV=production stage=qa APP_ENV=qa npm run build",
20
+ "build:prod": "npm run clean && npm run verify && cross-env NODE_ENV=production stage=prod APP_ENV=prod npm run build",
21
+ "elint": "eslint .",
22
+ "format": "prettier --write \"src/**/*.ts\" \"src/**/*.js\"",
23
+ "lint": "eslint src/",
24
+ "lint:fix": "eslint . --fix",
25
+ "coverage": "npm run test:all -- --coverage --group=unit",
26
+ "test": "jest --group=unit --coverage",
27
+ "test:all": "cross-env AWS_REGION=us-east-2 NODE_ENV=test jest --group=unit --coverage",
28
+ "test:unit": "cross-env AWS_REGION=us-east-2 NODE_ENV=test jest --group=unit --coverage",
29
+ "verify": "npm run clean && npm run shopify:graphql:codegen && npm run type-check && npm run lint:fix && npm run test",
30
+ "version": "npm run format && git add -A src",
31
+ "postversion": "git push && git push --tags",
32
+ "tsc": "tsc -p tsconfig.json && tsc -p tsconfig-cjs.json",
33
+ "push": "npm install && npm run build:dev && npm publish --verbose",
34
+ "type-check": "tsc --noEmit",
35
+ "prepublishOnly": "npm run tsc",
36
+ "shopify:graphql:codegen": "graphql-codegen && node scripts/fix-codegen-imports.cjs"
37
+ },
38
+ "dependencies": {
39
+ "@adtrackify/at-shared-utils": "^3.2.23",
40
+ "@adtrackify/at-tracking-event-types": "^4.68.3",
41
+ "@aws-sdk/util-utf8": "^3.374.0",
42
+ "@shopify/admin-api-client": "^1.0.4",
43
+ "@shopify/shopify-api": "^11.6.1",
44
+ "@shopify/storefront-api-client": "^1.0.3",
45
+ "big.js": "^7.0.1",
46
+ "ioredis": "^5.4.1",
47
+ "libphonenumber-js": "^1.12.15",
48
+ "loops": "^6.0.1",
49
+ "pako": "^2.1.0",
50
+ "papaparse": "^5.5.3",
51
+ "psl": "^1.15.0",
52
+ "shopify-api-node": "^3.12.7",
53
+ "ulid": "^3.0.1"
54
+ },
55
+ "peerDependencies": {
56
+ "assert": "^2.0.0",
57
+ "axios": "^1.5.1",
58
+ "crypto": "^1.0.1",
59
+ "joi": "^17.6.0",
60
+ "lambda-log": "^3.1.0",
61
+ "luxon": "^3.0.3",
62
+ "mysql2": "^3.11.0",
63
+ "postmark": "^3.0.14",
64
+ "ua-parser-js": "^1.0.2",
65
+ "uuid": "^9.0.0"
66
+ },
67
+ "devDependencies": {
68
+ "@aws-sdk/client-cognito-identity-provider": "^3.345.0",
69
+ "@aws-sdk/client-dynamodb": "^3.345.0",
70
+ "@aws-sdk/client-eventbridge": "^3.345.0",
71
+ "@aws-sdk/client-lambda": "^3.637.0",
72
+ "@aws-sdk/client-location": "^3.568.0",
73
+ "@aws-sdk/client-s3": "^3.345.0",
74
+ "@aws-sdk/client-sqs": "^3.345.0",
75
+ "@aws-sdk/lib-dynamodb": "^3.345.0",
76
+ "@faker-js/faker": "^7.5.0",
77
+ "@graphql-codegen/graphql-modules-preset": "^4.0.12",
78
+ "@graphql-codegen/typescript": "^4.1.2",
79
+ "@graphql-codegen/typescript-resolvers": "^4.4.1",
80
+ "@shopify/api-codegen-preset": "^1.1.3",
81
+ "@swc/core": "^1.7.35",
82
+ "@swc/jest": "^0.2.36",
83
+ "@types/aws-lambda": "^8.10.145",
84
+ "@types/big.js": "^6.2.2",
85
+ "@types/jest": "^28.1.8",
86
+ "@types/lambda-log": "^3.0.0",
87
+ "@types/luxon": "^3.0.1",
88
+ "@types/node": "^24.12.4",
89
+ "@types/pako": "^2.0.3",
90
+ "@types/papaparse": "^5.3.16",
91
+ "@types/ua-parser-js": "^0.7.36",
92
+ "@types/uuid": "^8.3.4",
93
+ "@typescript-eslint/eslint-plugin": "^5.37.0",
94
+ "@typescript-eslint/parser": "^5.37.0",
95
+ "@upstackdata/eslint-plugin": "^1.0.2",
96
+ "core-js": "^3.25.1",
97
+ "cross-env": "^7.0.3",
98
+ "esbuild": "^0.17.1",
99
+ "eslint": "^8.23.1",
100
+ "eslint-config-standard": "^17.0.0",
101
+ "eslint-plugin-babel": "^5.3.1",
102
+ "eslint-plugin-import": "^2.26.0",
103
+ "eslint-plugin-n": "^15.2.5",
104
+ "eslint-plugin-promise": "^6.0.1",
105
+ "glob": "^8.0.3",
106
+ "husky": "^6.0.0",
107
+ "jest": "^29.2.1",
108
+ "jest-cucumber": "3.0.1",
109
+ "jest-junit": "13.0.0",
110
+ "jest-runner": "^29.0.2",
111
+ "jest-runner-groups": "2.2.0",
112
+ "jest-util": "^29.7.0",
113
+ "npm-dts": "^1.3.12",
114
+ "npm-run-all": "^4.1.5",
115
+ "npm-scripts-info": "^0.3.9",
116
+ "prettier": "^2.7.1",
117
+ "regenerator-runtime": "^0.13.9",
118
+ "rimraf": "^3.0.2",
119
+ "swc-loader": "^0.2.6",
120
+ "ts-jest": "^29.0.5",
121
+ "ts-jest-resolver": "^2.0.1",
122
+ "ts-loader": "^9.5.1",
123
+ "ts-node": "^10.9.2",
124
+ "tslint": "^6.1.3",
125
+ "tslint-config-prettier": "^1.18.0",
126
+ "typescript": "4.9.5"
127
+ },
128
+ "repository": {
129
+ "type": "git",
130
+ "url": "git+ssh://git@bitbucket.org/eacap/at-service-common.git"
131
+ },
132
+ "author": "",
133
+ "license": "ISC",
134
+ "homepage": "https://bitbucket.org/eacap/at-service-common#readme"
135
+ }