@adtrackify/at-service-common 5.1.2 → 5.1.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 (621) hide show
  1. package/dist/cjs/__tests__/clients/acuity-client.spec.js +20 -21
  2. package/dist/cjs/__tests__/clients/acuity-client.spec.js.map +1 -1
  3. package/dist/cjs/__tests__/clients/cross-platform-compression.spec.js +86 -97
  4. package/dist/cjs/__tests__/clients/cross-platform-compression.spec.js.map +1 -1
  5. package/dist/cjs/__tests__/clients/dynamodb-client.spec.js +95 -94
  6. package/dist/cjs/__tests__/clients/dynamodb-client.spec.js.map +1 -1
  7. package/dist/cjs/__tests__/clients/event-collector-client.spec.js +58 -58
  8. package/dist/cjs/__tests__/clients/event-collector-client.spec.js.map +1 -1
  9. package/dist/cjs/__tests__/clients/liveintent-client.spec.js +37 -0
  10. package/dist/cjs/__tests__/clients/liveintent-client.spec.js.map +1 -0
  11. package/dist/cjs/__tests__/clients/open-exchange-rates-client.spec.js +17 -18
  12. package/dist/cjs/__tests__/clients/open-exchange-rates-client.spec.js.map +1 -1
  13. package/dist/cjs/__tests__/clients/sqs-bundled-client.spec.js +255 -273
  14. package/dist/cjs/__tests__/clients/sqs-bundled-client.spec.js.map +1 -1
  15. package/dist/cjs/__tests__/clients/sqs-bundling-contracts.spec.js +125 -137
  16. package/dist/cjs/__tests__/clients/sqs-bundling-contracts.spec.js.map +1 -1
  17. package/dist/cjs/__tests__/clients/sqs-client.spec.js +77 -78
  18. package/dist/cjs/__tests__/clients/sqs-client.spec.js.map +1 -1
  19. package/dist/cjs/__tests__/clients/sqs-unbundle.spec.js +430 -431
  20. package/dist/cjs/__tests__/clients/sqs-unbundle.spec.js.map +1 -1
  21. package/dist/cjs/__tests__/db/contact-enrichments-db-service.spec.js +29 -30
  22. package/dist/cjs/__tests__/db/contact-enrichments-db-service.spec.js.map +1 -1
  23. package/dist/cjs/__tests__/db/destinations-db-service.spec.js +47 -45
  24. package/dist/cjs/__tests__/db/destinations-db-service.spec.js.map +1 -1
  25. package/dist/cjs/__tests__/db/products-db-service.spec.js +40 -41
  26. package/dist/cjs/__tests__/db/products-db-service.spec.js.map +1 -1
  27. package/dist/cjs/__tests__/db/shared-read-db-services.spec.js +26 -27
  28. package/dist/cjs/__tests__/db/shared-read-db-services.spec.js.map +1 -1
  29. package/dist/cjs/__tests__/db/shopify-app-installs-db-service.spec.js +37 -38
  30. package/dist/cjs/__tests__/db/shopify-app-installs-db-service.spec.js.map +1 -1
  31. package/dist/cjs/__tests__/db/subscriptions-db-service.spec.js +35 -36
  32. package/dist/cjs/__tests__/db/subscriptions-db-service.spec.js.map +1 -1
  33. package/dist/cjs/__tests__/db/user-accounts-db-service.spec.js +27 -28
  34. package/dist/cjs/__tests__/db/user-accounts-db-service.spec.js.map +1 -1
  35. package/dist/cjs/__tests__/helpers/account-users-helper.spec.js +64 -65
  36. package/dist/cjs/__tests__/helpers/account-users-helper.spec.js.map +1 -1
  37. package/dist/cjs/__tests__/helpers/acuity-helper.spec.js +18 -19
  38. package/dist/cjs/__tests__/helpers/acuity-helper.spec.js.map +1 -1
  39. package/dist/cjs/__tests__/helpers/api-key-auth-helper.spec.js +23 -24
  40. package/dist/cjs/__tests__/helpers/api-key-auth-helper.spec.js.map +1 -1
  41. package/dist/cjs/__tests__/helpers/cognito-auth-helper.spec.js +16 -17
  42. package/dist/cjs/__tests__/helpers/cognito-auth-helper.spec.js.map +1 -1
  43. package/dist/cjs/__tests__/helpers/order-calculation-helper.spec.js +42 -43
  44. package/dist/cjs/__tests__/helpers/order-calculation-helper.spec.js.map +1 -1
  45. package/dist/cjs/__tests__/helpers/public-api-response-helper.spec.js +23 -24
  46. package/dist/cjs/__tests__/helpers/public-api-response-helper.spec.js.map +1 -1
  47. package/dist/cjs/__tests__/identity-cache/helpers.spec.js +114 -115
  48. package/dist/cjs/__tests__/identity-cache/helpers.spec.js.map +1 -1
  49. package/dist/cjs/__tests__/identity-cache/identity-cache-alias-write.spec.js +29 -30
  50. package/dist/cjs/__tests__/identity-cache/identity-cache-alias-write.spec.js.map +1 -1
  51. package/dist/cjs/__tests__/identity-cache/identity-cache-db-service.spec.js +19 -20
  52. package/dist/cjs/__tests__/identity-cache/identity-cache-db-service.spec.js.map +1 -1
  53. package/dist/cjs/__tests__/identity-cache/identity-cache-dynamodb-db-service.spec.js +200 -223
  54. package/dist/cjs/__tests__/identity-cache/identity-cache-dynamodb-db-service.spec.js.map +1 -1
  55. package/dist/cjs/__tests__/identity-cache/identity-cache-tier-routing.spec.js +114 -123
  56. package/dist/cjs/__tests__/identity-cache/identity-cache-tier-routing.spec.js.map +1 -1
  57. package/dist/cjs/__tests__/identity-cache/identity-client.spec.js +107 -110
  58. package/dist/cjs/__tests__/identity-cache/identity-client.spec.js.map +1 -1
  59. package/dist/cjs/__tests__/identity-cache/identity-gateway-cache-hit.spec.js +31 -32
  60. package/dist/cjs/__tests__/identity-cache/identity-gateway-cache-hit.spec.js.map +1 -1
  61. package/dist/cjs/__tests__/identity-cache/identity-gateway-cache-miss.spec.js +47 -60
  62. package/dist/cjs/__tests__/identity-cache/identity-gateway-cache-miss.spec.js.map +1 -1
  63. package/dist/cjs/__tests__/identity-cache/identity-gateway-constructor.spec.js +15 -16
  64. package/dist/cjs/__tests__/identity-cache/identity-gateway-constructor.spec.js.map +1 -1
  65. package/dist/cjs/__tests__/identity-cache/identity-gateway-edge-cases.spec.js +28 -35
  66. package/dist/cjs/__tests__/identity-cache/identity-gateway-edge-cases.spec.js.map +1 -1
  67. package/dist/cjs/__tests__/identity-cache/identity-gateway-enqueue-async.spec.js +27 -28
  68. package/dist/cjs/__tests__/identity-cache/identity-gateway-enqueue-async.spec.js.map +1 -1
  69. package/dist/cjs/__tests__/identity-cache/identity-gateway-stale-cache.spec.js +52 -74
  70. package/dist/cjs/__tests__/identity-cache/identity-gateway-stale-cache.spec.js.map +1 -1
  71. package/dist/cjs/__tests__/identity-cache/identity-gateway-test-setup.d.ts +18 -14
  72. package/dist/cjs/__tests__/identity-cache/identity-gateway-test-setup.js +30 -37
  73. package/dist/cjs/__tests__/identity-cache/identity-gateway-test-setup.js.map +1 -1
  74. package/dist/cjs/__tests__/identity-cache/trait-merging-and-staleness.spec.js +424 -403
  75. package/dist/cjs/__tests__/identity-cache/trait-merging-and-staleness.spec.js.map +1 -1
  76. package/dist/cjs/__tests__/identity-cache/volatile-traits-optimization.spec.js +218 -219
  77. package/dist/cjs/__tests__/identity-cache/volatile-traits-optimization.spec.js.map +1 -1
  78. package/dist/cjs/__tests__/integration/sqs-bundling-roundtrip.spec.js +117 -118
  79. package/dist/cjs/__tests__/integration/sqs-bundling-roundtrip.spec.js.map +1 -1
  80. package/dist/cjs/__tests__/libs/compress-decompress.spec.js +7 -8
  81. package/dist/cjs/__tests__/libs/compress-decompress.spec.js.map +1 -1
  82. package/dist/cjs/__tests__/libs/contacts.spec.js +101 -102
  83. package/dist/cjs/__tests__/libs/contacts.spec.js.map +1 -1
  84. package/dist/cjs/__tests__/libs/currency.spec.js +56 -57
  85. package/dist/cjs/__tests__/libs/currency.spec.js.map +1 -1
  86. package/dist/cjs/__tests__/libs/dates.spec.js +94 -82
  87. package/dist/cjs/__tests__/libs/dates.spec.js.map +1 -1
  88. package/dist/cjs/__tests__/libs/domain.spec.js +68 -69
  89. package/dist/cjs/__tests__/libs/domain.spec.js.map +1 -1
  90. package/dist/cjs/__tests__/libs/numbers.spec.js +249 -250
  91. package/dist/cjs/__tests__/libs/numbers.spec.js.map +1 -1
  92. package/dist/cjs/__tests__/s3-client/s3-client.spec.js +16 -15
  93. package/dist/cjs/__tests__/s3-client/s3-client.spec.js.map +1 -1
  94. package/dist/cjs/__tests__/services/acuity-api-service.spec.js +32 -35
  95. package/dist/cjs/__tests__/services/acuity-api-service.spec.js.map +1 -1
  96. package/dist/cjs/__tests__/services/cost/cost-calculation-types.spec.js +14 -15
  97. package/dist/cjs/__tests__/services/cost/cost-calculation-types.spec.js.map +1 -1
  98. package/dist/cjs/__tests__/services/cost/cost-calculator-service.spec.js +949 -1187
  99. package/dist/cjs/__tests__/services/cost/cost-calculator-service.spec.js.map +1 -1
  100. package/dist/cjs/__tests__/services/cost/cost-currency-service.spec.js +39 -40
  101. package/dist/cjs/__tests__/services/cost/cost-currency-service.spec.js.map +1 -1
  102. package/dist/cjs/__tests__/services/cost/cost-filter-service.spec.js +204 -201
  103. package/dist/cjs/__tests__/services/cost/cost-filter-service.spec.js.map +1 -1
  104. package/dist/cjs/__tests__/services/cost/order-cost/order-cost-resolution-service.spec.js +174 -299
  105. package/dist/cjs/__tests__/services/cost/order-cost/order-cost-resolution-service.spec.js.map +1 -1
  106. package/dist/cjs/__tests__/services/email-verification/contact-email-verification-service.spec.js +39 -41
  107. package/dist/cjs/__tests__/services/email-verification/contact-email-verification-service.spec.js.map +1 -1
  108. package/dist/cjs/__tests__/services/email-verification/email-verification-service.spec.js +22 -27
  109. package/dist/cjs/__tests__/services/email-verification/email-verification-service.spec.js.map +1 -1
  110. package/dist/cjs/__tests__/services/events/collect-queue-tracking-service.spec.js +64 -67
  111. package/dist/cjs/__tests__/services/events/collect-queue-tracking-service.spec.js.map +1 -1
  112. package/dist/cjs/__tests__/services/events/tracking-event-sqs-service.spec.js +51 -54
  113. package/dist/cjs/__tests__/services/events/tracking-event-sqs-service.spec.js.map +1 -1
  114. package/dist/cjs/__tests__/services/liveintent-api-service.spec.js +67 -0
  115. package/dist/cjs/__tests__/services/liveintent-api-service.spec.js.map +1 -0
  116. package/dist/cjs/__tests__/shopify/shopify-graphql-transformer.spec.js +9 -10
  117. package/dist/cjs/__tests__/shopify/shopify-graphql-transformer.spec.js.map +1 -1
  118. package/dist/cjs/__tests__/unit/libs/api-router/public-api-router.spec.js +58 -69
  119. package/dist/cjs/__tests__/unit/libs/api-router/public-api-router.spec.js.map +1 -1
  120. package/dist/cjs/__tests__/unit/libs/api-router/route-matcher.spec.js +31 -32
  121. package/dist/cjs/__tests__/unit/libs/api-router/route-matcher.spec.js.map +1 -1
  122. package/dist/cjs/__tests__/utils/custom-measure-formula-utils.spec.js +64 -65
  123. package/dist/cjs/__tests__/utils/custom-measure-formula-utils.spec.js.map +1 -1
  124. package/dist/cjs/clients/generic/cognito-client.js +14 -14
  125. package/dist/cjs/clients/generic/cognito-client.js.map +1 -1
  126. package/dist/cjs/clients/generic/dynamodb-client.js +9 -9
  127. package/dist/cjs/clients/generic/dynamodb-client.js.map +1 -1
  128. package/dist/cjs/clients/generic/eventbridge-client.js +2 -2
  129. package/dist/cjs/clients/generic/eventbridge-client.js.map +1 -1
  130. package/dist/cjs/clients/generic/http-client.js +5 -5
  131. package/dist/cjs/clients/generic/http-client.js.map +1 -1
  132. package/dist/cjs/clients/generic/lambda-invoke-client.js.map +1 -1
  133. package/dist/cjs/clients/generic/location-client.js +2 -2
  134. package/dist/cjs/clients/generic/location-client.js.map +1 -1
  135. package/dist/cjs/clients/generic/redis-client.js +2 -13
  136. package/dist/cjs/clients/generic/redis-client.js.map +1 -1
  137. package/dist/cjs/clients/generic/s3-client.d.ts +1 -0
  138. package/dist/cjs/clients/generic/s3-client.js +19 -19
  139. package/dist/cjs/clients/generic/s3-client.js.map +1 -1
  140. package/dist/cjs/clients/generic/singlestore-db-client.d.ts +2 -2
  141. package/dist/cjs/clients/generic/singlestore-db-client.js +8 -18
  142. package/dist/cjs/clients/generic/singlestore-db-client.js.map +1 -1
  143. package/dist/cjs/clients/generic/sqs-bundled-client.js +2 -2
  144. package/dist/cjs/clients/generic/sqs-bundled-client.js.map +1 -1
  145. package/dist/cjs/clients/generic/sqs-bundled-client.types.js +1 -1
  146. package/dist/cjs/clients/generic/sqs-bundled-client.types.js.map +1 -1
  147. package/dist/cjs/clients/generic/sqs-client.d.ts +1 -1
  148. package/dist/cjs/clients/generic/sqs-client.js +2 -2
  149. package/dist/cjs/clients/generic/sqs-client.js.map +1 -1
  150. package/dist/cjs/clients/generic/sqs-unbundle.js +7 -6
  151. package/dist/cjs/clients/generic/sqs-unbundle.js.map +1 -1
  152. package/dist/cjs/clients/internal-api/accounts-client.js +14 -14
  153. package/dist/cjs/clients/internal-api/accounts-client.js.map +1 -1
  154. package/dist/cjs/clients/internal-api/cache-lambda-client.js.map +1 -1
  155. package/dist/cjs/clients/internal-api/db-management-client.js.map +1 -1
  156. package/dist/cjs/clients/internal-api/destinations-client.js +8 -8
  157. package/dist/cjs/clients/internal-api/destinations-client.js.map +1 -1
  158. package/dist/cjs/clients/internal-api/event-collector-client.js.map +1 -1
  159. package/dist/cjs/clients/internal-api/identity-client.js.map +1 -1
  160. package/dist/cjs/clients/internal-api/shopify-app-install-client.js.map +1 -1
  161. package/dist/cjs/clients/internal-api/subscriptions-client.js.map +1 -1
  162. package/dist/cjs/clients/internal-api/users-auth-client.js +11 -11
  163. package/dist/cjs/clients/internal-api/users-auth-client.js.map +1 -1
  164. package/dist/cjs/clients/third-party/acuity-client.js.map +1 -1
  165. package/dist/cjs/clients/third-party/emailable-client.js.map +1 -1
  166. package/dist/cjs/clients/third-party/index.d.ts +1 -0
  167. package/dist/cjs/clients/third-party/index.js +1 -0
  168. package/dist/cjs/clients/third-party/index.js.map +1 -1
  169. package/dist/cjs/clients/third-party/liveintent-client.d.ts +11 -0
  170. package/dist/cjs/clients/third-party/liveintent-client.js +25 -0
  171. package/dist/cjs/clients/third-party/liveintent-client.js.map +1 -0
  172. package/dist/cjs/clients/third-party/loops-client.js.map +1 -1
  173. package/dist/cjs/clients/third-party/open-exchange-rates-client.js.map +1 -1
  174. package/dist/cjs/clients/third-party/shopify/shopify-graphql-client.js.map +1 -1
  175. package/dist/cjs/clients/third-party/shopify-client.js +15 -15
  176. package/dist/cjs/clients/third-party/shopify-client.js.map +1 -1
  177. package/dist/cjs/constants/sqs.js +5 -5
  178. package/dist/cjs/constants/sqs.js.map +1 -1
  179. package/dist/cjs/helpers/account-users-helper.js.map +1 -1
  180. package/dist/cjs/helpers/acuity-helper.js.map +1 -1
  181. package/dist/cjs/helpers/api-key-auth-helper.d.ts +1 -2
  182. package/dist/cjs/helpers/api-key-auth-helper.js.map +1 -1
  183. package/dist/cjs/helpers/api-key-authorizer-helper.js.map +1 -1
  184. package/dist/cjs/helpers/cognito-auth-helper.d.ts +1 -2
  185. package/dist/cjs/helpers/cognito-auth-helper.js.map +1 -1
  186. package/dist/cjs/helpers/input-validation-helper.d.ts +1 -1
  187. package/dist/cjs/helpers/input-validation-helper.js.map +1 -1
  188. package/dist/cjs/helpers/logging-helper.d.ts +5 -5
  189. package/dist/cjs/helpers/logging-helper.js +7 -17
  190. package/dist/cjs/helpers/logging-helper.js.map +1 -1
  191. package/dist/cjs/helpers/order-calculation-helper.js.map +1 -1
  192. package/dist/cjs/helpers/public-api-response-helper.js.map +1 -1
  193. package/dist/cjs/helpers/response-helper.js.map +1 -1
  194. package/dist/cjs/helpers/shopify-helper.js.map +1 -1
  195. package/dist/cjs/helpers/sqs-utils.js +4 -8
  196. package/dist/cjs/helpers/sqs-utils.js.map +1 -1
  197. package/dist/cjs/libs/api-router/public-api-router.d.ts +2 -2
  198. package/dist/cjs/libs/api-router/public-api-router.js.map +1 -1
  199. package/dist/cjs/libs/api-router/route-matcher.js.map +1 -1
  200. package/dist/cjs/libs/click-id-parser.js +1 -1
  201. package/dist/cjs/libs/click-id-parser.js.map +1 -1
  202. package/dist/cjs/libs/compression.d.ts +1 -1
  203. package/dist/cjs/libs/compression.js.map +1 -1
  204. package/dist/cjs/libs/contacts.js.map +1 -1
  205. package/dist/cjs/libs/cookie.js +1 -1
  206. package/dist/cjs/libs/cookie.js.map +1 -1
  207. package/dist/cjs/libs/crypto.js.map +1 -1
  208. package/dist/cjs/libs/csv.js.map +1 -1
  209. package/dist/cjs/libs/currency.js.map +1 -1
  210. package/dist/cjs/libs/dates.d.ts +1 -0
  211. package/dist/cjs/libs/dates.js +18 -1
  212. package/dist/cjs/libs/dates.js.map +1 -1
  213. package/dist/cjs/libs/domain.js.map +1 -1
  214. package/dist/cjs/libs/emails.js.map +1 -1
  215. package/dist/cjs/libs/http-error.js.map +1 -1
  216. package/dist/cjs/libs/http-status-codes.js +1 -1
  217. package/dist/cjs/libs/http-status-codes.js.map +1 -1
  218. package/dist/cjs/libs/numbers.js.map +1 -1
  219. package/dist/cjs/libs/referrer-parser/referrer-parser-util.d.ts +1 -0
  220. package/dist/cjs/libs/referrer-parser/referrer-parser-util.js +2 -2
  221. package/dist/cjs/libs/referrer-parser/referrer-parser-util.js.map +1 -1
  222. package/dist/cjs/libs/strings.js.map +1 -1
  223. package/dist/cjs/libs/traits.js.map +1 -1
  224. package/dist/cjs/libs/url.js.map +1 -1
  225. package/dist/cjs/services/acuity-api-service.js.map +1 -1
  226. package/dist/cjs/services/cache/product-cache-service.js.map +1 -1
  227. package/dist/cjs/services/cost/cost-calculation-types.js +2 -1
  228. package/dist/cjs/services/cost/cost-calculation-types.js.map +1 -1
  229. package/dist/cjs/services/cost/cost-calculator-service.js +10 -43
  230. package/dist/cjs/services/cost/cost-calculator-service.js.map +1 -1
  231. package/dist/cjs/services/cost/cost-currency-service.js.map +1 -1
  232. package/dist/cjs/services/cost/cost-filter-service.js +7 -16
  233. package/dist/cjs/services/cost/cost-filter-service.js.map +1 -1
  234. package/dist/cjs/services/cost/order-cost/order-cost-resolution-service.js +9 -24
  235. package/dist/cjs/services/cost/order-cost/order-cost-resolution-service.js.map +1 -1
  236. package/dist/cjs/services/db/accounts-db-service.js.map +1 -1
  237. package/dist/cjs/services/db/api-keys-db-service.js.map +1 -1
  238. package/dist/cjs/services/db/contact-enrichments-db-service.js.map +1 -1
  239. package/dist/cjs/services/db/custom-measures-db-service.js.map +1 -1
  240. package/dist/cjs/services/db/destinations-db-service.js.map +1 -1
  241. package/dist/cjs/services/db/identity-cache-db-service.d.ts +1 -1
  242. package/dist/cjs/services/db/identity-cache-db-service.js.map +1 -1
  243. package/dist/cjs/services/db/identity-cache-dynamodb-service/identity-cache-dynamodb-db-service.js +1 -5
  244. package/dist/cjs/services/db/identity-cache-dynamodb-service/identity-cache-dynamodb-db-service.js.map +1 -1
  245. package/dist/cjs/services/db/identity-cache-dynamodb-service/identity-gateway-service.js +7 -21
  246. package/dist/cjs/services/db/identity-cache-dynamodb-service/identity-gateway-service.js.map +1 -1
  247. package/dist/cjs/services/db/identity-cache-dynamodb-service/key-builders.js +7 -7
  248. package/dist/cjs/services/db/identity-cache-dynamodb-service/key-builders.js.map +1 -1
  249. package/dist/cjs/services/db/identity-cache-dynamodb-service/types.js +3 -3
  250. package/dist/cjs/services/db/identity-cache-dynamodb-service/types.js.map +1 -1
  251. package/dist/cjs/services/db/index.d.ts +0 -1
  252. package/dist/cjs/services/db/index.js +0 -1
  253. package/dist/cjs/services/db/index.js.map +1 -1
  254. package/dist/cjs/services/db/log-events-db-service.js.map +1 -1
  255. package/dist/cjs/services/db/pixels-db-service.js.map +1 -1
  256. package/dist/cjs/services/db/products-db-service.js +16 -45
  257. package/dist/cjs/services/db/products-db-service.js.map +1 -1
  258. package/dist/cjs/services/db/purchasable-contacts-db-service.js.map +1 -1
  259. package/dist/cjs/services/db/purchased-contacts/purchased-contacts-db-service.js.map +1 -1
  260. package/dist/cjs/services/db/shopify-app-installs-db-service.js.map +1 -1
  261. package/dist/cjs/services/db/shopify-products-cache-db-service.js.map +1 -1
  262. package/dist/cjs/services/db/subscriptions-db-service.js.map +1 -1
  263. package/dist/cjs/services/db/tracking-events-db-service.js.map +1 -1
  264. package/dist/cjs/services/db/user-accounts-db-service.js.map +1 -1
  265. package/dist/cjs/services/email-verification/contact-email-verification-service.js.map +1 -1
  266. package/dist/cjs/services/email-verification/email-verification-service.js.map +1 -1
  267. package/dist/cjs/services/eventbridge-integration-service.js.map +1 -1
  268. package/dist/cjs/services/events/build-collect-queue-tracking-event.js +2 -2
  269. package/dist/cjs/services/events/build-collect-queue-tracking-event.js.map +1 -1
  270. package/dist/cjs/services/events/collect-queue-tracking-service.js.map +1 -1
  271. package/dist/cjs/services/events/log-event-service.js.map +1 -1
  272. package/dist/cjs/services/events/metric-event-service.js.map +1 -1
  273. package/dist/cjs/services/events/tracking-event-sqs-service.js.map +1 -1
  274. package/dist/cjs/services/generic-cache-service.js.map +1 -1
  275. package/dist/cjs/services/index.d.ts +1 -1
  276. package/dist/cjs/services/index.js +1 -1
  277. package/dist/cjs/services/index.js.map +1 -1
  278. package/dist/cjs/services/ipdata-lookup-service.d.ts +1 -1
  279. package/dist/cjs/services/ipdata-lookup-service.js.map +1 -1
  280. package/dist/cjs/services/liveintent-api-service.d.ts +15 -0
  281. package/dist/cjs/services/liveintent-api-service.js +59 -0
  282. package/dist/cjs/services/liveintent-api-service.js.map +1 -0
  283. package/dist/cjs/services/shopify/products/shopify-products-serviceV2.js.map +1 -1
  284. package/dist/cjs/services/shopify/shopify-graphql-transformer.js +1 -1
  285. package/dist/cjs/services/shopify/shopify-graphql-transformer.js.map +1 -1
  286. package/dist/cjs/types/index.d.ts +1 -0
  287. package/dist/cjs/types/index.js +8 -17
  288. package/dist/cjs/types/index.js.map +1 -1
  289. package/dist/cjs/types/internal-events/event-detail-types.js +4 -4
  290. package/dist/cjs/types/internal-events/event-detail-types.js.map +1 -1
  291. package/dist/cjs/types/liveintent-types.d.ts +8 -0
  292. package/dist/cjs/types/liveintent-types.js +3 -0
  293. package/dist/cjs/types/liveintent-types.js.map +1 -0
  294. package/dist/cjs/types/public-api-types.js +1 -1
  295. package/dist/cjs/types/public-api-types.js.map +1 -1
  296. package/dist/cjs/types/shopify-graphql-types/admin.types.js +491 -491
  297. package/dist/cjs/types/shopify-graphql-types/admin.types.js.map +1 -1
  298. package/dist/cjs/types/shopify-rest-types.d.ts +1 -1
  299. package/dist/cjs/utils/compression.d.ts +2 -0
  300. package/dist/cjs/utils/compression.js +11 -11
  301. package/dist/cjs/utils/compression.js.map +1 -1
  302. package/dist/cjs/utils/custom-measure-formula-utils.js.map +1 -1
  303. package/dist/cjs/utils/retry-envelope.js +4 -3
  304. package/dist/cjs/utils/retry-envelope.js.map +1 -1
  305. package/dist/cjs/utils/size.js +3 -2
  306. package/dist/cjs/utils/size.js.map +1 -1
  307. package/dist/esm/__tests__/clients/acuity-client.spec.js +5 -6
  308. package/dist/esm/__tests__/clients/acuity-client.spec.js.map +1 -1
  309. package/dist/esm/__tests__/clients/cross-platform-compression.spec.js +0 -1
  310. package/dist/esm/__tests__/clients/cross-platform-compression.spec.js.map +1 -1
  311. package/dist/esm/__tests__/clients/dynamodb-client.spec.js +42 -41
  312. package/dist/esm/__tests__/clients/dynamodb-client.spec.js.map +1 -1
  313. package/dist/esm/__tests__/clients/event-collector-client.spec.js +18 -18
  314. package/dist/esm/__tests__/clients/event-collector-client.spec.js.map +1 -1
  315. package/dist/esm/__tests__/clients/liveintent-client.spec.js +35 -0
  316. package/dist/esm/__tests__/clients/liveintent-client.spec.js.map +1 -0
  317. package/dist/esm/__tests__/clients/open-exchange-rates-client.spec.js +3 -4
  318. package/dist/esm/__tests__/clients/open-exchange-rates-client.spec.js.map +1 -1
  319. package/dist/esm/__tests__/clients/sqs-bundled-client.spec.js +47 -55
  320. package/dist/esm/__tests__/clients/sqs-bundled-client.spec.js.map +1 -1
  321. package/dist/esm/__tests__/clients/sqs-bundling-contracts.spec.js +1 -3
  322. package/dist/esm/__tests__/clients/sqs-bundling-contracts.spec.js.map +1 -1
  323. package/dist/esm/__tests__/clients/sqs-client.spec.js +21 -22
  324. package/dist/esm/__tests__/clients/sqs-client.spec.js.map +1 -1
  325. package/dist/esm/__tests__/clients/sqs-unbundle.spec.js +8 -9
  326. package/dist/esm/__tests__/clients/sqs-unbundle.spec.js.map +1 -1
  327. package/dist/esm/__tests__/db/contact-enrichments-db-service.spec.js +5 -6
  328. package/dist/esm/__tests__/db/contact-enrichments-db-service.spec.js.map +1 -1
  329. package/dist/esm/__tests__/db/destinations-db-service.spec.js +11 -9
  330. package/dist/esm/__tests__/db/destinations-db-service.spec.js.map +1 -1
  331. package/dist/esm/__tests__/db/products-db-service.spec.js +8 -9
  332. package/dist/esm/__tests__/db/products-db-service.spec.js.map +1 -1
  333. package/dist/esm/__tests__/db/shared-read-db-services.spec.js +6 -7
  334. package/dist/esm/__tests__/db/shared-read-db-services.spec.js.map +1 -1
  335. package/dist/esm/__tests__/db/shopify-app-installs-db-service.spec.js +12 -13
  336. package/dist/esm/__tests__/db/shopify-app-installs-db-service.spec.js.map +1 -1
  337. package/dist/esm/__tests__/db/subscriptions-db-service.spec.js +11 -12
  338. package/dist/esm/__tests__/db/subscriptions-db-service.spec.js.map +1 -1
  339. package/dist/esm/__tests__/db/user-accounts-db-service.spec.js +6 -7
  340. package/dist/esm/__tests__/db/user-accounts-db-service.spec.js.map +1 -1
  341. package/dist/esm/__tests__/helpers/account-users-helper.spec.js +3 -4
  342. package/dist/esm/__tests__/helpers/account-users-helper.spec.js.map +1 -1
  343. package/dist/esm/__tests__/helpers/acuity-helper.spec.js +0 -1
  344. package/dist/esm/__tests__/helpers/acuity-helper.spec.js.map +1 -1
  345. package/dist/esm/__tests__/helpers/api-key-auth-helper.spec.js +3 -4
  346. package/dist/esm/__tests__/helpers/api-key-auth-helper.spec.js.map +1 -1
  347. package/dist/esm/__tests__/helpers/cognito-auth-helper.spec.js +1 -2
  348. package/dist/esm/__tests__/helpers/cognito-auth-helper.spec.js.map +1 -1
  349. package/dist/esm/__tests__/helpers/order-calculation-helper.spec.js +4 -5
  350. package/dist/esm/__tests__/helpers/order-calculation-helper.spec.js.map +1 -1
  351. package/dist/esm/__tests__/helpers/public-api-response-helper.spec.js +1 -2
  352. package/dist/esm/__tests__/helpers/public-api-response-helper.spec.js.map +1 -1
  353. package/dist/esm/__tests__/identity-cache/helpers.spec.js +1 -2
  354. package/dist/esm/__tests__/identity-cache/helpers.spec.js.map +1 -1
  355. package/dist/esm/__tests__/identity-cache/identity-cache-alias-write.spec.js +15 -16
  356. package/dist/esm/__tests__/identity-cache/identity-cache-alias-write.spec.js.map +1 -1
  357. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.js +1 -2
  358. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.js.map +1 -1
  359. package/dist/esm/__tests__/identity-cache/identity-cache-dynamodb-db-service.spec.js +29 -52
  360. package/dist/esm/__tests__/identity-cache/identity-cache-dynamodb-db-service.spec.js.map +1 -1
  361. package/dist/esm/__tests__/identity-cache/identity-cache-tier-routing.spec.js +31 -40
  362. package/dist/esm/__tests__/identity-cache/identity-cache-tier-routing.spec.js.map +1 -1
  363. package/dist/esm/__tests__/identity-cache/identity-client.spec.js +21 -24
  364. package/dist/esm/__tests__/identity-cache/identity-client.spec.js.map +1 -1
  365. package/dist/esm/__tests__/identity-cache/identity-gateway-cache-hit.spec.js +0 -1
  366. package/dist/esm/__tests__/identity-cache/identity-gateway-cache-hit.spec.js.map +1 -1
  367. package/dist/esm/__tests__/identity-cache/identity-gateway-cache-miss.spec.js +4 -17
  368. package/dist/esm/__tests__/identity-cache/identity-gateway-cache-miss.spec.js.map +1 -1
  369. package/dist/esm/__tests__/identity-cache/identity-gateway-constructor.spec.js +0 -1
  370. package/dist/esm/__tests__/identity-cache/identity-gateway-constructor.spec.js.map +1 -1
  371. package/dist/esm/__tests__/identity-cache/identity-gateway-edge-cases.spec.js +2 -9
  372. package/dist/esm/__tests__/identity-cache/identity-gateway-edge-cases.spec.js.map +1 -1
  373. package/dist/esm/__tests__/identity-cache/identity-gateway-enqueue-async.spec.js +0 -1
  374. package/dist/esm/__tests__/identity-cache/identity-gateway-enqueue-async.spec.js.map +1 -1
  375. package/dist/esm/__tests__/identity-cache/identity-gateway-stale-cache.spec.js +7 -29
  376. package/dist/esm/__tests__/identity-cache/identity-gateway-stale-cache.spec.js.map +1 -1
  377. package/dist/esm/__tests__/identity-cache/identity-gateway-test-setup.d.ts +18 -14
  378. package/dist/esm/__tests__/identity-cache/identity-gateway-test-setup.js +30 -37
  379. package/dist/esm/__tests__/identity-cache/identity-gateway-test-setup.js.map +1 -1
  380. package/dist/esm/__tests__/identity-cache/trait-merging-and-staleness.spec.js +37 -16
  381. package/dist/esm/__tests__/identity-cache/trait-merging-and-staleness.spec.js.map +1 -1
  382. package/dist/esm/__tests__/identity-cache/volatile-traits-optimization.spec.js +5 -6
  383. package/dist/esm/__tests__/identity-cache/volatile-traits-optimization.spec.js.map +1 -1
  384. package/dist/esm/__tests__/integration/sqs-bundling-roundtrip.spec.js +9 -10
  385. package/dist/esm/__tests__/integration/sqs-bundling-roundtrip.spec.js.map +1 -1
  386. package/dist/esm/__tests__/libs/compress-decompress.spec.js +1 -2
  387. package/dist/esm/__tests__/libs/compress-decompress.spec.js.map +1 -1
  388. package/dist/esm/__tests__/libs/contacts.spec.js +0 -1
  389. package/dist/esm/__tests__/libs/contacts.spec.js.map +1 -1
  390. package/dist/esm/__tests__/libs/currency.spec.js +3 -4
  391. package/dist/esm/__tests__/libs/currency.spec.js.map +1 -1
  392. package/dist/esm/__tests__/libs/dates.spec.js +23 -11
  393. package/dist/esm/__tests__/libs/dates.spec.js.map +1 -1
  394. package/dist/esm/__tests__/libs/domain.spec.js +0 -1
  395. package/dist/esm/__tests__/libs/domain.spec.js.map +1 -1
  396. package/dist/esm/__tests__/libs/numbers.spec.js +0 -1
  397. package/dist/esm/__tests__/libs/numbers.spec.js.map +1 -1
  398. package/dist/esm/__tests__/s3-client/s3-client.spec.js +7 -6
  399. package/dist/esm/__tests__/s3-client/s3-client.spec.js.map +1 -1
  400. package/dist/esm/__tests__/services/acuity-api-service.spec.js +10 -13
  401. package/dist/esm/__tests__/services/acuity-api-service.spec.js.map +1 -1
  402. package/dist/esm/__tests__/services/cost/cost-calculation-types.spec.js +0 -1
  403. package/dist/esm/__tests__/services/cost/cost-calculation-types.spec.js.map +1 -1
  404. package/dist/esm/__tests__/services/cost/cost-calculator-service.spec.js +280 -518
  405. package/dist/esm/__tests__/services/cost/cost-calculator-service.spec.js.map +1 -1
  406. package/dist/esm/__tests__/services/cost/cost-currency-service.spec.js +3 -4
  407. package/dist/esm/__tests__/services/cost/cost-currency-service.spec.js.map +1 -1
  408. package/dist/esm/__tests__/services/cost/cost-filter-service.spec.js +22 -19
  409. package/dist/esm/__tests__/services/cost/cost-filter-service.spec.js.map +1 -1
  410. package/dist/esm/__tests__/services/cost/order-cost/order-cost-resolution-service.spec.js +41 -133
  411. package/dist/esm/__tests__/services/cost/order-cost/order-cost-resolution-service.spec.js.map +1 -1
  412. package/dist/esm/__tests__/services/email-verification/contact-email-verification-service.spec.js +6 -8
  413. package/dist/esm/__tests__/services/email-verification/contact-email-verification-service.spec.js.map +1 -1
  414. package/dist/esm/__tests__/services/email-verification/email-verification-service.spec.js +5 -10
  415. package/dist/esm/__tests__/services/email-verification/email-verification-service.spec.js.map +1 -1
  416. package/dist/esm/__tests__/services/events/collect-queue-tracking-service.spec.js +14 -17
  417. package/dist/esm/__tests__/services/events/collect-queue-tracking-service.spec.js.map +1 -1
  418. package/dist/esm/__tests__/services/events/tracking-event-sqs-service.spec.js +16 -19
  419. package/dist/esm/__tests__/services/events/tracking-event-sqs-service.spec.js.map +1 -1
  420. package/dist/esm/__tests__/services/liveintent-api-service.spec.js +65 -0
  421. package/dist/esm/__tests__/services/liveintent-api-service.spec.js.map +1 -0
  422. package/dist/esm/__tests__/shopify/shopify-graphql-transformer.spec.js +1 -2
  423. package/dist/esm/__tests__/shopify/shopify-graphql-transformer.spec.js.map +1 -1
  424. package/dist/esm/__tests__/unit/libs/api-router/public-api-router.spec.js +14 -15
  425. package/dist/esm/__tests__/unit/libs/api-router/public-api-router.spec.js.map +1 -1
  426. package/dist/esm/__tests__/unit/libs/api-router/route-matcher.spec.js +1 -2
  427. package/dist/esm/__tests__/unit/libs/api-router/route-matcher.spec.js.map +1 -1
  428. package/dist/esm/__tests__/utils/custom-measure-formula-utils.spec.js +0 -1
  429. package/dist/esm/__tests__/utils/custom-measure-formula-utils.spec.js.map +1 -1
  430. package/dist/esm/clients/generic/cognito-client.js +2 -2
  431. package/dist/esm/clients/generic/cognito-client.js.map +1 -1
  432. package/dist/esm/clients/generic/dynamodb-client.js +9 -9
  433. package/dist/esm/clients/generic/dynamodb-client.js.map +1 -1
  434. package/dist/esm/clients/generic/eventbridge-client.js +1 -1
  435. package/dist/esm/clients/generic/eventbridge-client.js.map +1 -1
  436. package/dist/esm/clients/generic/http-client.js +5 -5
  437. package/dist/esm/clients/generic/http-client.js.map +1 -1
  438. package/dist/esm/clients/generic/lambda-invoke-client.js.map +1 -1
  439. package/dist/esm/clients/generic/location-client.js +1 -1
  440. package/dist/esm/clients/generic/location-client.js.map +1 -1
  441. package/dist/esm/clients/generic/redis-client.js +2 -13
  442. package/dist/esm/clients/generic/redis-client.js.map +1 -1
  443. package/dist/esm/clients/generic/s3-client.d.ts +1 -0
  444. package/dist/esm/clients/generic/s3-client.js +1 -1
  445. package/dist/esm/clients/generic/s3-client.js.map +1 -1
  446. package/dist/esm/clients/generic/singlestore-db-client.d.ts +2 -2
  447. package/dist/esm/clients/generic/singlestore-db-client.js +1 -1
  448. package/dist/esm/clients/generic/singlestore-db-client.js.map +1 -1
  449. package/dist/esm/clients/generic/sqs-bundled-client.js +2 -2
  450. package/dist/esm/clients/generic/sqs-bundled-client.js.map +1 -1
  451. package/dist/esm/clients/generic/sqs-client.d.ts +1 -1
  452. package/dist/esm/clients/generic/sqs-client.js +2 -2
  453. package/dist/esm/clients/generic/sqs-client.js.map +1 -1
  454. package/dist/esm/clients/generic/sqs-unbundle.js +2 -2
  455. package/dist/esm/clients/generic/sqs-unbundle.js.map +1 -1
  456. package/dist/esm/clients/internal-api/accounts-client.js +1 -1
  457. package/dist/esm/clients/internal-api/accounts-client.js.map +1 -1
  458. package/dist/esm/clients/internal-api/cache-lambda-client.js.map +1 -1
  459. package/dist/esm/clients/internal-api/destinations-client.js +1 -1
  460. package/dist/esm/clients/internal-api/destinations-client.js.map +1 -1
  461. package/dist/esm/clients/internal-api/event-collector-client.js.map +1 -1
  462. package/dist/esm/clients/internal-api/identity-client.js.map +1 -1
  463. package/dist/esm/clients/internal-api/users-auth-client.js +1 -1
  464. package/dist/esm/clients/internal-api/users-auth-client.js.map +1 -1
  465. package/dist/esm/clients/third-party/emailable-client.js.map +1 -1
  466. package/dist/esm/clients/third-party/index.d.ts +1 -0
  467. package/dist/esm/clients/third-party/index.js +1 -0
  468. package/dist/esm/clients/third-party/index.js.map +1 -1
  469. package/dist/esm/clients/third-party/liveintent-client.d.ts +11 -0
  470. package/dist/esm/clients/third-party/liveintent-client.js +21 -0
  471. package/dist/esm/clients/third-party/liveintent-client.js.map +1 -0
  472. package/dist/esm/clients/third-party/loops-client.js.map +1 -1
  473. package/dist/esm/clients/third-party/open-exchange-rates-client.js.map +1 -1
  474. package/dist/esm/clients/third-party/shopify/shopify-graphql-client.js +1 -1
  475. package/dist/esm/clients/third-party/shopify/shopify-graphql-client.js.map +1 -1
  476. package/dist/esm/clients/third-party/shopify-client.js +1 -1
  477. package/dist/esm/clients/third-party/shopify-client.js.map +1 -1
  478. package/dist/esm/constants/sqs.js +3 -3
  479. package/dist/esm/constants/sqs.js.map +1 -1
  480. package/dist/esm/helpers/account-users-helper.js.map +1 -1
  481. package/dist/esm/helpers/acuity-helper.js.map +1 -1
  482. package/dist/esm/helpers/api-key-auth-helper.d.ts +1 -2
  483. package/dist/esm/helpers/api-key-auth-helper.js.map +1 -1
  484. package/dist/esm/helpers/api-key-authorizer-helper.js.map +1 -1
  485. package/dist/esm/helpers/cognito-auth-helper.d.ts +1 -2
  486. package/dist/esm/helpers/cognito-auth-helper.js.map +1 -1
  487. package/dist/esm/helpers/input-validation-helper.d.ts +1 -1
  488. package/dist/esm/helpers/input-validation-helper.js.map +1 -1
  489. package/dist/esm/helpers/logging-helper.d.ts +5 -5
  490. package/dist/esm/helpers/logging-helper.js.map +1 -1
  491. package/dist/esm/helpers/order-calculation-helper.js.map +1 -1
  492. package/dist/esm/helpers/public-api-response-helper.js.map +1 -1
  493. package/dist/esm/helpers/response-helper.js.map +1 -1
  494. package/dist/esm/helpers/shopify-helper.js.map +1 -1
  495. package/dist/esm/helpers/sqs-utils.js +1 -6
  496. package/dist/esm/helpers/sqs-utils.js.map +1 -1
  497. package/dist/esm/libs/api-router/public-api-router.d.ts +2 -2
  498. package/dist/esm/libs/api-router/public-api-router.js.map +1 -1
  499. package/dist/esm/libs/api-router/route-matcher.js.map +1 -1
  500. package/dist/esm/libs/click-id-parser.js.map +1 -1
  501. package/dist/esm/libs/compression.d.ts +1 -1
  502. package/dist/esm/libs/compression.js.map +1 -1
  503. package/dist/esm/libs/contacts.js.map +1 -1
  504. package/dist/esm/libs/cookie.js.map +1 -1
  505. package/dist/esm/libs/csv.js.map +1 -1
  506. package/dist/esm/libs/currency.js.map +1 -1
  507. package/dist/esm/libs/dates.d.ts +1 -0
  508. package/dist/esm/libs/dates.js +16 -0
  509. package/dist/esm/libs/dates.js.map +1 -1
  510. package/dist/esm/libs/domain.js.map +1 -1
  511. package/dist/esm/libs/emails.js.map +1 -1
  512. package/dist/esm/libs/http-error.js.map +1 -1
  513. package/dist/esm/libs/numbers.js.map +1 -1
  514. package/dist/esm/libs/referrer-parser/referrer-parser-util.d.ts +1 -0
  515. package/dist/esm/libs/referrer-parser/referrer-parser-util.js +2 -2
  516. package/dist/esm/libs/referrer-parser/referrer-parser-util.js.map +1 -1
  517. package/dist/esm/libs/strings.js.map +1 -1
  518. package/dist/esm/libs/traits.js.map +1 -1
  519. package/dist/esm/services/acuity-api-service.js.map +1 -1
  520. package/dist/esm/services/cache/product-cache-service.js.map +1 -1
  521. package/dist/esm/services/cost/cost-calculation-types.js.map +1 -1
  522. package/dist/esm/services/cost/cost-calculator-service.js +10 -43
  523. package/dist/esm/services/cost/cost-calculator-service.js.map +1 -1
  524. package/dist/esm/services/cost/cost-currency-service.js.map +1 -1
  525. package/dist/esm/services/cost/cost-filter-service.js +7 -16
  526. package/dist/esm/services/cost/cost-filter-service.js.map +1 -1
  527. package/dist/esm/services/cost/order-cost/order-cost-resolution-service.js +9 -24
  528. package/dist/esm/services/cost/order-cost/order-cost-resolution-service.js.map +1 -1
  529. package/dist/esm/services/db/accounts-db-service.js.map +1 -1
  530. package/dist/esm/services/db/api-keys-db-service.js.map +1 -1
  531. package/dist/esm/services/db/contact-enrichments-db-service.js.map +1 -1
  532. package/dist/esm/services/db/custom-measures-db-service.js.map +1 -1
  533. package/dist/esm/services/db/identity-cache-db-service.d.ts +1 -1
  534. package/dist/esm/services/db/identity-cache-db-service.js.map +1 -1
  535. package/dist/esm/services/db/identity-cache-dynamodb-service/identity-cache-dynamodb-db-service.js +2 -6
  536. package/dist/esm/services/db/identity-cache-dynamodb-service/identity-cache-dynamodb-db-service.js.map +1 -1
  537. package/dist/esm/services/db/identity-cache-dynamodb-service/identity-gateway-service.js +8 -22
  538. package/dist/esm/services/db/identity-cache-dynamodb-service/identity-gateway-service.js.map +1 -1
  539. package/dist/esm/services/db/identity-cache-dynamodb-service/types.js.map +1 -1
  540. package/dist/esm/services/db/index.d.ts +0 -1
  541. package/dist/esm/services/db/index.js +0 -1
  542. package/dist/esm/services/db/index.js.map +1 -1
  543. package/dist/esm/services/db/log-events-db-service.js.map +1 -1
  544. package/dist/esm/services/db/products-db-service.js +16 -45
  545. package/dist/esm/services/db/products-db-service.js.map +1 -1
  546. package/dist/esm/services/db/purchasable-contacts-db-service.js.map +1 -1
  547. package/dist/esm/services/db/purchased-contacts/purchased-contacts-db-service.js.map +1 -1
  548. package/dist/esm/services/db/shopify-app-installs-db-service.js.map +1 -1
  549. package/dist/esm/services/db/shopify-products-cache-db-service.js.map +1 -1
  550. package/dist/esm/services/db/subscriptions-db-service.js.map +1 -1
  551. package/dist/esm/services/db/tracking-events-db-service.js.map +1 -1
  552. package/dist/esm/services/email-verification/contact-email-verification-service.js.map +1 -1
  553. package/dist/esm/services/email-verification/email-verification-service.js.map +1 -1
  554. package/dist/esm/services/events/build-collect-queue-tracking-event.js.map +1 -1
  555. package/dist/esm/services/events/collect-queue-tracking-service.js +1 -1
  556. package/dist/esm/services/events/collect-queue-tracking-service.js.map +1 -1
  557. package/dist/esm/services/events/log-event-service.js.map +1 -1
  558. package/dist/esm/services/events/metric-event-service.js.map +1 -1
  559. package/dist/esm/services/events/tracking-event-sqs-service.js.map +1 -1
  560. package/dist/esm/services/generic-cache-service.js.map +1 -1
  561. package/dist/esm/services/index.d.ts +1 -1
  562. package/dist/esm/services/index.js +1 -1
  563. package/dist/esm/services/index.js.map +1 -1
  564. package/dist/esm/services/ipdata-lookup-service.d.ts +1 -1
  565. package/dist/esm/services/ipdata-lookup-service.js.map +1 -1
  566. package/dist/esm/services/liveintent-api-service.d.ts +15 -0
  567. package/dist/esm/services/liveintent-api-service.js +55 -0
  568. package/dist/esm/services/liveintent-api-service.js.map +1 -0
  569. package/dist/esm/services/shopify/products/shopify-products-serviceV2.js.map +1 -1
  570. package/dist/esm/services/shopify/shopify-graphql-transformer.js +1 -1
  571. package/dist/esm/services/shopify/shopify-graphql-transformer.js.map +1 -1
  572. package/dist/esm/types/index.d.ts +1 -0
  573. package/dist/esm/types/index.js +1 -0
  574. package/dist/esm/types/index.js.map +1 -1
  575. package/dist/esm/types/liveintent-types.d.ts +8 -0
  576. package/dist/esm/types/liveintent-types.js +2 -0
  577. package/dist/esm/types/liveintent-types.js.map +1 -0
  578. package/dist/esm/types/shopify-rest-types.d.ts +1 -1
  579. package/dist/esm/utils/compression.d.ts +2 -0
  580. package/dist/esm/utils/compression.js +3 -3
  581. package/dist/esm/utils/compression.js.map +1 -1
  582. package/dist/esm/utils/custom-measure-formula-utils.js.map +1 -1
  583. package/dist/esm/utils/retry-envelope.js.map +1 -1
  584. package/dist/esm/utils/size.js.map +1 -1
  585. package/package.json +136 -139
  586. package/dist/cjs/__tests__/clients/client-timeout-inventory.spec.js +0 -21
  587. package/dist/cjs/__tests__/clients/client-timeout-inventory.spec.js.map +0 -1
  588. package/dist/cjs/__tests__/clients/redis-client.spec.js +0 -79
  589. package/dist/cjs/__tests__/clients/redis-client.spec.js.map +0 -1
  590. package/dist/cjs/__tests__/services/currency-exchange-rate-lookup-service.spec.js +0 -40
  591. package/dist/cjs/__tests__/services/currency-exchange-rate-lookup-service.spec.js.map +0 -1
  592. package/dist/cjs/clients/third-party/exchange-rate-api-client.d.ts +0 -17
  593. package/dist/cjs/clients/third-party/exchange-rate-api-client.js +0 -20
  594. package/dist/cjs/clients/third-party/exchange-rate-api-client.js.map +0 -1
  595. package/dist/cjs/services/currency-exchange-rate-lookup-service.d.ts +0 -12
  596. package/dist/cjs/services/currency-exchange-rate-lookup-service.js +0 -98
  597. package/dist/cjs/services/currency-exchange-rate-lookup-service.js.map +0 -1
  598. package/dist/cjs/services/db/currency-exchange-rates-db-service.d.ts +0 -21
  599. package/dist/cjs/services/db/currency-exchange-rates-db-service.js +0 -40
  600. package/dist/cjs/services/db/currency-exchange-rates-db-service.js.map +0 -1
  601. package/dist/esm/__tests__/clients/client-timeout-inventory.spec.js +0 -19
  602. package/dist/esm/__tests__/clients/client-timeout-inventory.spec.js.map +0 -1
  603. package/dist/esm/__tests__/clients/redis-client.spec.d.ts +0 -1
  604. package/dist/esm/__tests__/clients/redis-client.spec.js +0 -77
  605. package/dist/esm/__tests__/clients/redis-client.spec.js.map +0 -1
  606. package/dist/esm/__tests__/services/currency-exchange-rate-lookup-service.spec.d.ts +0 -1
  607. package/dist/esm/__tests__/services/currency-exchange-rate-lookup-service.spec.js +0 -38
  608. package/dist/esm/__tests__/services/currency-exchange-rate-lookup-service.spec.js.map +0 -1
  609. package/dist/esm/clients/third-party/exchange-rate-api-client.d.ts +0 -17
  610. package/dist/esm/clients/third-party/exchange-rate-api-client.js +0 -16
  611. package/dist/esm/clients/third-party/exchange-rate-api-client.js.map +0 -1
  612. package/dist/esm/services/currency-exchange-rate-lookup-service.d.ts +0 -12
  613. package/dist/esm/services/currency-exchange-rate-lookup-service.js +0 -94
  614. package/dist/esm/services/currency-exchange-rate-lookup-service.js.map +0 -1
  615. package/dist/esm/services/db/currency-exchange-rates-db-service.d.ts +0 -21
  616. package/dist/esm/services/db/currency-exchange-rates-db-service.js +0 -36
  617. package/dist/esm/services/db/currency-exchange-rates-db-service.js.map +0 -1
  618. /package/dist/cjs/__tests__/clients/{client-timeout-inventory.spec.d.ts → liveintent-client.spec.d.ts} +0 -0
  619. /package/dist/cjs/__tests__/{clients/redis-client.spec.d.ts → services/liveintent-api-service.spec.d.ts} +0 -0
  620. /package/dist/{cjs/__tests__/services/currency-exchange-rate-lookup-service.spec.d.ts → esm/__tests__/clients/liveintent-client.spec.d.ts} +0 -0
  621. /package/dist/esm/__tests__/{clients/client-timeout-inventory.spec.d.ts → services/liveintent-api-service.spec.d.ts} +0 -0
@@ -1,10 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const vitest_1 = require("vitest");
4
3
  const at_tracking_event_types_1 = require("@adtrackify/at-tracking-event-types");
5
4
  const cost_filter_service_1 = require("../../../services/cost/cost-filter-service");
6
- vitest_1.vi.mock('../../../helpers/logging-helper', () => ({
7
- Logger: { debug: vitest_1.vi.fn(), info: vitest_1.vi.fn(), warn: vitest_1.vi.fn(), error: vitest_1.vi.fn() },
5
+ jest.mock('../../../helpers/logging-helper', () => ({
6
+ Logger: { debug: jest.fn(), info: jest.fn(), warn: jest.fn(), error: jest.fn() },
8
7
  }));
9
8
  const createOrderContext = (overrides = {}) => ({
10
9
  tags: [],
@@ -18,228 +17,228 @@ const createLineItemContext = (overrides = {}) => ({
18
17
  variantId: '456',
19
18
  ...overrides,
20
19
  });
21
- (0, vitest_1.describe)('CostFilterService', () => {
22
- (0, vitest_1.describe)('matchSingleFilter', () => {
23
- (0, vitest_1.it)('should return true for ALL mode regardless of value', () => {
20
+ describe('CostFilterService', () => {
21
+ describe('matchSingleFilter', () => {
22
+ it('should return true for ALL mode regardless of value', () => {
24
23
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.ALL, values: ['a'] };
25
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchSingleFilter(filter, 'anything')).toBe(true);
26
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchSingleFilter(filter, undefined)).toBe(true);
24
+ expect(cost_filter_service_1.CostFilterService.matchSingleFilter(filter, 'anything')).toBe(true);
25
+ expect(cost_filter_service_1.CostFilterService.matchSingleFilter(filter, undefined)).toBe(true);
27
26
  });
28
- (0, vitest_1.it)('should return true for INCLUDE when value matches', () => {
27
+ it('should return true for INCLUDE when value matches', () => {
29
28
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['stripe', 'paypal'] };
30
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchSingleFilter(filter, 'stripe')).toBe(true);
29
+ expect(cost_filter_service_1.CostFilterService.matchSingleFilter(filter, 'stripe')).toBe(true);
31
30
  });
32
- (0, vitest_1.it)('should return false for INCLUDE when value does not match', () => {
31
+ it('should return false for INCLUDE when value does not match', () => {
33
32
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['stripe', 'paypal'] };
34
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchSingleFilter(filter, 'braintree')).toBe(false);
33
+ expect(cost_filter_service_1.CostFilterService.matchSingleFilter(filter, 'braintree')).toBe(false);
35
34
  });
36
- (0, vitest_1.it)('should return false for INCLUDE when value is undefined', () => {
35
+ it('should return false for INCLUDE when value is undefined', () => {
37
36
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['stripe'] };
38
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchSingleFilter(filter, undefined)).toBe(false);
37
+ expect(cost_filter_service_1.CostFilterService.matchSingleFilter(filter, undefined)).toBe(false);
39
38
  });
40
- (0, vitest_1.it)('should return true for EXCLUDE when value does not match', () => {
39
+ it('should return true for EXCLUDE when value does not match', () => {
41
40
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.EXCLUDE, values: ['stripe'] };
42
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchSingleFilter(filter, 'paypal')).toBe(true);
41
+ expect(cost_filter_service_1.CostFilterService.matchSingleFilter(filter, 'paypal')).toBe(true);
43
42
  });
44
- (0, vitest_1.it)('should return false for EXCLUDE when value matches', () => {
43
+ it('should return false for EXCLUDE when value matches', () => {
45
44
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.EXCLUDE, values: ['stripe'] };
46
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchSingleFilter(filter, 'stripe')).toBe(false);
45
+ expect(cost_filter_service_1.CostFilterService.matchSingleFilter(filter, 'stripe')).toBe(false);
47
46
  });
48
- (0, vitest_1.it)('should return true for EXCLUDE when value is undefined', () => {
47
+ it('should return true for EXCLUDE when value is undefined', () => {
49
48
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.EXCLUDE, values: ['stripe'] };
50
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchSingleFilter(filter, undefined)).toBe(true);
49
+ expect(cost_filter_service_1.CostFilterService.matchSingleFilter(filter, undefined)).toBe(true);
51
50
  });
52
- (0, vitest_1.it)('should be case-insensitive', () => {
51
+ it('should be case-insensitive', () => {
53
52
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Stripe'] };
54
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchSingleFilter(filter, 'STRIPE')).toBe(true);
55
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchSingleFilter(filter, 'stripe')).toBe(true);
53
+ expect(cost_filter_service_1.CostFilterService.matchSingleFilter(filter, 'STRIPE')).toBe(true);
54
+ expect(cost_filter_service_1.CostFilterService.matchSingleFilter(filter, 'stripe')).toBe(true);
56
55
  });
57
56
  });
58
- (0, vitest_1.describe)('matchArrayFilter', () => {
59
- (0, vitest_1.it)('should return true for ALL mode', () => {
57
+ describe('matchArrayFilter', () => {
58
+ it('should return true for ALL mode', () => {
60
59
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.ALL, values: ['a'] };
61
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchArrayFilter(filter, ['anything'])).toBe(true);
62
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchArrayFilter(filter, undefined)).toBe(true);
60
+ expect(cost_filter_service_1.CostFilterService.matchArrayFilter(filter, ['anything'])).toBe(true);
61
+ expect(cost_filter_service_1.CostFilterService.matchArrayFilter(filter, undefined)).toBe(true);
63
62
  });
64
- (0, vitest_1.it)('should return true for INCLUDE when any value matches', () => {
63
+ it('should return true for INCLUDE when any value matches', () => {
65
64
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['vip', 'priority'] };
66
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchArrayFilter(filter, ['vip', 'other'])).toBe(true);
65
+ expect(cost_filter_service_1.CostFilterService.matchArrayFilter(filter, ['vip', 'other'])).toBe(true);
67
66
  });
68
- (0, vitest_1.it)('should return false for INCLUDE when no value matches', () => {
67
+ it('should return false for INCLUDE when no value matches', () => {
69
68
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['vip', 'priority'] };
70
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchArrayFilter(filter, ['regular', 'other'])).toBe(false);
69
+ expect(cost_filter_service_1.CostFilterService.matchArrayFilter(filter, ['regular', 'other'])).toBe(false);
71
70
  });
72
- (0, vitest_1.it)('should return false for INCLUDE when values is empty', () => {
71
+ it('should return false for INCLUDE when values is empty', () => {
73
72
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['vip'] };
74
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchArrayFilter(filter, [])).toBe(false);
73
+ expect(cost_filter_service_1.CostFilterService.matchArrayFilter(filter, [])).toBe(false);
75
74
  });
76
- (0, vitest_1.it)('should return false for INCLUDE when values is undefined', () => {
75
+ it('should return false for INCLUDE when values is undefined', () => {
77
76
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['vip'] };
78
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchArrayFilter(filter, undefined)).toBe(false);
77
+ expect(cost_filter_service_1.CostFilterService.matchArrayFilter(filter, undefined)).toBe(false);
79
78
  });
80
- (0, vitest_1.it)('should return true for EXCLUDE when no value matches', () => {
79
+ it('should return true for EXCLUDE when no value matches', () => {
81
80
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.EXCLUDE, values: ['vip'] };
82
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchArrayFilter(filter, ['regular'])).toBe(true);
81
+ expect(cost_filter_service_1.CostFilterService.matchArrayFilter(filter, ['regular'])).toBe(true);
83
82
  });
84
- (0, vitest_1.it)('should return false for EXCLUDE when any value matches', () => {
83
+ it('should return false for EXCLUDE when any value matches', () => {
85
84
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.EXCLUDE, values: ['vip'] };
86
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchArrayFilter(filter, ['vip', 'regular'])).toBe(false);
85
+ expect(cost_filter_service_1.CostFilterService.matchArrayFilter(filter, ['vip', 'regular'])).toBe(false);
87
86
  });
88
- (0, vitest_1.it)('should return true for EXCLUDE when values is empty', () => {
87
+ it('should return true for EXCLUDE when values is empty', () => {
89
88
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.EXCLUDE, values: ['vip'] };
90
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchArrayFilter(filter, [])).toBe(true);
89
+ expect(cost_filter_service_1.CostFilterService.matchArrayFilter(filter, [])).toBe(true);
91
90
  });
92
- (0, vitest_1.it)('should return true for EXCLUDE when values is undefined', () => {
91
+ it('should return true for EXCLUDE when values is undefined', () => {
93
92
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.EXCLUDE, values: ['vip'] };
94
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchArrayFilter(filter, undefined)).toBe(true);
93
+ expect(cost_filter_service_1.CostFilterService.matchArrayFilter(filter, undefined)).toBe(true);
95
94
  });
96
- (0, vitest_1.it)('should be case-insensitive', () => {
95
+ it('should be case-insensitive', () => {
97
96
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['VIP'] };
98
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchArrayFilter(filter, ['vip'])).toBe(true);
97
+ expect(cost_filter_service_1.CostFilterService.matchArrayFilter(filter, ['vip'])).toBe(true);
99
98
  });
100
99
  });
101
- (0, vitest_1.describe)('matchProductFilter', () => {
102
- (0, vitest_1.it)('should return true for ALL mode', () => {
100
+ describe('matchProductFilter', () => {
101
+ it('should return true for ALL mode', () => {
103
102
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.ALL, values: ['123'] };
104
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchProductFilter(filter, '999', '888')).toBe(true);
103
+ expect(cost_filter_service_1.CostFilterService.matchProductFilter(filter, '999', '888')).toBe(true);
105
104
  });
106
- (0, vitest_1.it)('should match by productId only', () => {
105
+ it('should match by productId only', () => {
107
106
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['123'] };
108
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchProductFilter(filter, '123', '456')).toBe(true);
107
+ expect(cost_filter_service_1.CostFilterService.matchProductFilter(filter, '123', '456')).toBe(true);
109
108
  });
110
- (0, vitest_1.it)('should match by productId_variantId', () => {
109
+ it('should match by productId_variantId', () => {
111
110
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['123_456'] };
112
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchProductFilter(filter, '123', '456')).toBe(true);
111
+ expect(cost_filter_service_1.CostFilterService.matchProductFilter(filter, '123', '456')).toBe(true);
113
112
  });
114
- (0, vitest_1.it)('should not match wrong productId_variantId', () => {
113
+ it('should not match wrong productId_variantId', () => {
115
114
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['123_789'] };
116
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchProductFilter(filter, '123', '456')).toBe(false);
115
+ expect(cost_filter_service_1.CostFilterService.matchProductFilter(filter, '123', '456')).toBe(false);
117
116
  });
118
- (0, vitest_1.it)('should return false for INCLUDE when productId is empty', () => {
117
+ it('should return false for INCLUDE when productId is empty', () => {
119
118
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['123'] };
120
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchProductFilter(filter, '', '456')).toBe(false);
119
+ expect(cost_filter_service_1.CostFilterService.matchProductFilter(filter, '', '456')).toBe(false);
121
120
  });
122
- (0, vitest_1.it)('should return true for EXCLUDE when productId is empty', () => {
121
+ it('should return true for EXCLUDE when productId is empty', () => {
123
122
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.EXCLUDE, values: ['123'] };
124
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchProductFilter(filter, '', '456')).toBe(true);
123
+ expect(cost_filter_service_1.CostFilterService.matchProductFilter(filter, '', '456')).toBe(true);
125
124
  });
126
- (0, vitest_1.it)('should return true for EXCLUDE when product does not match', () => {
125
+ it('should return true for EXCLUDE when product does not match', () => {
127
126
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.EXCLUDE, values: ['123'] };
128
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchProductFilter(filter, '999', '456')).toBe(true);
127
+ expect(cost_filter_service_1.CostFilterService.matchProductFilter(filter, '999', '456')).toBe(true);
129
128
  });
130
- (0, vitest_1.it)('should return false for EXCLUDE when product matches', () => {
129
+ it('should return false for EXCLUDE when product matches', () => {
131
130
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.EXCLUDE, values: ['123'] };
132
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchProductFilter(filter, '123', '456')).toBe(false);
131
+ expect(cost_filter_service_1.CostFilterService.matchProductFilter(filter, '123', '456')).toBe(false);
133
132
  });
134
- (0, vitest_1.it)('should handle mixed productId and productId_variantId filter values', () => {
133
+ it('should handle mixed productId and productId_variantId filter values', () => {
135
134
  const filter = { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['100', '200_300'] };
136
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchProductFilter(filter, '100', '999')).toBe(true);
137
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchProductFilter(filter, '200', '300')).toBe(true);
138
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchProductFilter(filter, '200', '999')).toBe(false);
135
+ expect(cost_filter_service_1.CostFilterService.matchProductFilter(filter, '100', '999')).toBe(true);
136
+ expect(cost_filter_service_1.CostFilterService.matchProductFilter(filter, '200', '300')).toBe(true);
137
+ expect(cost_filter_service_1.CostFilterService.matchProductFilter(filter, '200', '999')).toBe(false);
139
138
  });
140
139
  });
141
- (0, vitest_1.describe)('matchesFilters', () => {
142
- (0, vitest_1.it)('should return true when filters is undefined', () => {
143
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(undefined, createOrderContext(), null)).toBe(true);
140
+ describe('matchesFilters', () => {
141
+ it('should return true when filters is undefined', () => {
142
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(undefined, createOrderContext(), null)).toBe(true);
144
143
  });
145
- (0, vitest_1.it)('should return true when filters is empty object', () => {
146
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters({}, createOrderContext(), null)).toBe(true);
144
+ it('should return true when filters is empty object', () => {
145
+ expect(cost_filter_service_1.CostFilterService.matchesFilters({}, createOrderContext(), null)).toBe(true);
147
146
  });
148
- (0, vitest_1.it)('should check orderTags filter', () => {
147
+ it('should check orderTags filter', () => {
149
148
  const filters = {
150
149
  orderTags: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['vip'] },
151
150
  };
152
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ tags: ['vip', 'sale'] }), null)).toBe(true);
153
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ tags: ['regular'] }), null)).toBe(false);
151
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ tags: ['vip', 'sale'] }), null)).toBe(true);
152
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ tags: ['regular'] }), null)).toBe(false);
154
153
  });
155
- (0, vitest_1.it)('should check orderSourceNames filter', () => {
154
+ it('should check orderSourceNames filter', () => {
156
155
  const filters = {
157
156
  orderSourceNames: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['web'] },
158
157
  };
159
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ sourceName: 'web' }), null)).toBe(true);
160
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ sourceName: 'pos' }), null)).toBe(false);
158
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ sourceName: 'web' }), null)).toBe(true);
159
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ sourceName: 'pos' }), null)).toBe(false);
161
160
  });
162
- (0, vitest_1.it)('should check orderPaymentGateways filter', () => {
161
+ it('should check orderPaymentGateways filter', () => {
163
162
  const filters = {
164
163
  orderPaymentGateways: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['stripe'] },
165
164
  };
166
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ paymentGateways: ['stripe', 'shop_pay'] }), null)).toBe(true);
167
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ paymentGateways: ['paypal'] }), null)).toBe(false);
165
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ paymentGateways: ['stripe', 'shop_pay'] }), null)).toBe(true);
166
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ paymentGateways: ['paypal'] }), null)).toBe(false);
168
167
  });
169
- (0, vitest_1.it)('should check orderShippingTitles filter', () => {
168
+ it('should check orderShippingTitles filter', () => {
170
169
  const filters = {
171
170
  orderShippingTitles: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Standard'] },
172
171
  };
173
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shippingTitles: ['Standard'] }), null)).toBe(true);
174
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shippingTitles: ['Express'] }), null)).toBe(false);
172
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shippingTitles: ['Standard'] }), null)).toBe(true);
173
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shippingTitles: ['Express'] }), null)).toBe(false);
175
174
  });
176
- (0, vitest_1.it)('should check countries filter', () => {
175
+ it('should check countries filter', () => {
177
176
  const filters = {
178
177
  countries: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['US', 'CA'] },
179
178
  };
180
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shipCountryCode: 'US' }), null)).toBe(true);
181
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shipCountryCode: 'GB' }), null)).toBe(false);
179
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shipCountryCode: 'US' }), null)).toBe(true);
180
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shipCountryCode: 'GB' }), null)).toBe(false);
182
181
  });
183
- (0, vitest_1.it)('should use AND logic between multiple order filters', () => {
182
+ it('should use AND logic between multiple order filters', () => {
184
183
  const filters = {
185
184
  orderTags: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['vip'] },
186
185
  countries: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['US'] },
187
186
  };
188
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ tags: ['vip'], shipCountryCode: 'US' }), null)).toBe(true);
189
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ tags: ['vip'], shipCountryCode: 'GB' }), null)).toBe(false);
190
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ tags: ['regular'], shipCountryCode: 'US' }), null)).toBe(false);
187
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ tags: ['vip'], shipCountryCode: 'US' }), null)).toBe(true);
188
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ tags: ['vip'], shipCountryCode: 'GB' }), null)).toBe(false);
189
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ tags: ['regular'], shipCountryCode: 'US' }), null)).toBe(false);
191
190
  });
192
- (0, vitest_1.it)('should skip product filters when lineItem is null and no lineItems array provided', () => {
191
+ it('should skip product filters when lineItem is null and no lineItems array provided', () => {
193
192
  const filters = {
194
193
  productVendors: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Nike'] },
195
194
  };
196
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null)).toBe(true);
195
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null)).toBe(true);
197
196
  });
198
- (0, vitest_1.it)('should check productVendors filter', () => {
197
+ it('should check productVendors filter', () => {
199
198
  const filters = {
200
199
  productVendors: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Nike'] },
201
200
  };
202
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), createLineItemContext({ vendor: 'Nike' }))).toBe(true);
203
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), createLineItemContext({ vendor: 'Adidas' }))).toBe(false);
201
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), createLineItemContext({ vendor: 'Nike' }))).toBe(true);
202
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), createLineItemContext({ vendor: 'Adidas' }))).toBe(false);
204
203
  });
205
- (0, vitest_1.it)('should check productTypes filter', () => {
204
+ it('should check productTypes filter', () => {
206
205
  const filters = {
207
206
  productTypes: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Shoes'] },
208
207
  };
209
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), createLineItemContext({ productType: 'Shoes' }))).toBe(true);
210
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), createLineItemContext({ productType: 'Hats' }))).toBe(false);
208
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), createLineItemContext({ productType: 'Shoes' }))).toBe(true);
209
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), createLineItemContext({ productType: 'Hats' }))).toBe(false);
211
210
  });
212
- (0, vitest_1.it)('should check productTags filter', () => {
211
+ it('should check productTags filter', () => {
213
212
  const filters = {
214
213
  productTags: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['sale'] },
215
214
  };
216
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), createLineItemContext({ tags: ['sale', 'new'] }))).toBe(true);
217
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), createLineItemContext({ tags: ['clearance'] }))).toBe(false);
215
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), createLineItemContext({ tags: ['sale', 'new'] }))).toBe(true);
216
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), createLineItemContext({ tags: ['clearance'] }))).toBe(false);
218
217
  });
219
- (0, vitest_1.it)('should check productCategories filter', () => {
218
+ it('should check productCategories filter', () => {
220
219
  const filters = {
221
220
  productCategories: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Apparel > Shoes'] },
222
221
  };
223
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), createLineItemContext({ category: 'Apparel > Shoes' }))).toBe(true);
224
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), createLineItemContext({ category: 'Electronics' }))).toBe(false);
222
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), createLineItemContext({ category: 'Apparel > Shoes' }))).toBe(true);
223
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), createLineItemContext({ category: 'Electronics' }))).toBe(false);
225
224
  });
226
- (0, vitest_1.it)('should check products filter', () => {
225
+ it('should check products filter', () => {
227
226
  const filters = {
228
227
  products: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['123'] },
229
228
  };
230
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), createLineItemContext({ productId: '123', variantId: '456' }))).toBe(true);
231
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), createLineItemContext({ productId: '999', variantId: '456' }))).toBe(false);
229
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), createLineItemContext({ productId: '123', variantId: '456' }))).toBe(true);
230
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), createLineItemContext({ productId: '999', variantId: '456' }))).toBe(false);
232
231
  });
233
- (0, vitest_1.it)('should require both order and line-item filters to pass', () => {
232
+ it('should require both order and line-item filters to pass', () => {
234
233
  const filters = {
235
234
  countries: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['US'] },
236
235
  productVendors: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Nike'] },
237
236
  };
238
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shipCountryCode: 'US' }), createLineItemContext({ vendor: 'Nike' }))).toBe(true);
239
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shipCountryCode: 'US' }), createLineItemContext({ vendor: 'Adidas' }))).toBe(false);
240
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shipCountryCode: 'GB' }), createLineItemContext({ vendor: 'Nike' }))).toBe(false);
237
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shipCountryCode: 'US' }), createLineItemContext({ vendor: 'Nike' }))).toBe(true);
238
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shipCountryCode: 'US' }), createLineItemContext({ vendor: 'Adidas' }))).toBe(false);
239
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shipCountryCode: 'GB' }), createLineItemContext({ vendor: 'Nike' }))).toBe(false);
241
240
  });
242
- (0, vitest_1.it)('should handle all 5 order + all 5 line-item filters passing', () => {
241
+ it('should handle all 5 order + all 5 line-item filters passing', () => {
243
242
  const filters = {
244
243
  orderTags: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['vip'] },
245
244
  orderSourceNames: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['web'] },
@@ -267,199 +266,203 @@ const createLineItemContext = (overrides = {}) => ({
267
266
  productId: '123',
268
267
  variantId: '456',
269
268
  });
270
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, order, lineItem)).toBe(true);
269
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, order, lineItem)).toBe(true);
271
270
  });
272
- (0, vitest_1.it)('should handle EXCLUDE mode for order tags', () => {
271
+ it('should handle EXCLUDE mode for order tags', () => {
273
272
  const filters = {
274
273
  orderTags: { mode: at_tracking_event_types_1.COST_FILTER_MODE.EXCLUDE, values: ['test'] },
275
274
  };
276
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ tags: ['vip'] }), null)).toBe(true);
277
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ tags: ['test'] }), null)).toBe(false);
275
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ tags: ['vip'] }), null)).toBe(true);
276
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ tags: ['test'] }), null)).toBe(false);
278
277
  });
279
- (0, vitest_1.it)('should handle mixed INCLUDE and EXCLUDE filters', () => {
278
+ it('should handle mixed INCLUDE and EXCLUDE filters', () => {
280
279
  const filters = {
281
280
  countries: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['US'] },
282
281
  orderTags: { mode: at_tracking_event_types_1.COST_FILTER_MODE.EXCLUDE, values: ['test'] },
283
282
  };
284
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shipCountryCode: 'US', tags: ['vip'] }), null)).toBe(true);
285
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shipCountryCode: 'US', tags: ['test'] }), null)).toBe(false);
286
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shipCountryCode: 'GB', tags: ['vip'] }), null)).toBe(false);
283
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shipCountryCode: 'US', tags: ['vip'] }), null)).toBe(true);
284
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shipCountryCode: 'US', tags: ['test'] }), null)).toBe(false);
285
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shipCountryCode: 'GB', tags: ['vip'] }), null)).toBe(false);
287
286
  });
288
- (0, vitest_1.it)('should evaluate product filters against lineItems array when lineItem is null', () => {
287
+ it('should evaluate product filters against lineItems array when lineItem is null', () => {
289
288
  const filters = {
290
289
  productVendors: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Nike'] },
291
290
  };
292
- const lineItems = [createLineItemContext({ vendor: 'Adidas' }), createLineItemContext({ vendor: 'Nike' })];
293
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, lineItems)).toBe(true);
291
+ const lineItems = [
292
+ createLineItemContext({ vendor: 'Adidas' }),
293
+ createLineItemContext({ vendor: 'Nike' }),
294
+ ];
295
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, lineItems)).toBe(true);
294
296
  });
295
- (0, vitest_1.it)('should return false when no lineItem matches product filters via lineItems array', () => {
297
+ it('should return false when no lineItem matches product filters via lineItems array', () => {
296
298
  const filters = {
297
299
  productVendors: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Nike'] },
298
300
  };
299
- const lineItems = [createLineItemContext({ vendor: 'Adidas' }), createLineItemContext({ vendor: 'Puma' })];
300
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, lineItems)).toBe(false);
301
+ const lineItems = [
302
+ createLineItemContext({ vendor: 'Adidas' }),
303
+ createLineItemContext({ vendor: 'Puma' }),
304
+ ];
305
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, lineItems)).toBe(false);
301
306
  });
302
- (0, vitest_1.it)('should evaluate products filter against lineItems array', () => {
307
+ it('should evaluate products filter against lineItems array', () => {
303
308
  const filters = {
304
309
  products: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['P100'] },
305
310
  };
306
311
  const matching = [createLineItemContext({ productId: 'P100', variantId: 'V1' })];
307
312
  const nonMatching = [createLineItemContext({ productId: 'P999', variantId: 'V1' })];
308
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, matching)).toBe(true);
309
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, nonMatching)).toBe(false);
313
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, matching)).toBe(true);
314
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, nonMatching)).toBe(false);
310
315
  });
311
- (0, vitest_1.it)('should evaluate productTags filter against lineItems array', () => {
316
+ it('should evaluate productTags filter against lineItems array', () => {
312
317
  const filters = {
313
318
  productTags: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['fragile'] },
314
319
  };
315
320
  const matching = [createLineItemContext({ tags: ['fragile', 'heavy'] })];
316
321
  const nonMatching = [createLineItemContext({ tags: ['lightweight'] })];
317
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, matching)).toBe(true);
318
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, nonMatching)).toBe(false);
322
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, matching)).toBe(true);
323
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, nonMatching)).toBe(false);
319
324
  });
320
- (0, vitest_1.it)('should evaluate productTypes filter against lineItems array', () => {
325
+ it('should evaluate productTypes filter against lineItems array', () => {
321
326
  const filters = {
322
327
  productTypes: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Electronics'] },
323
328
  };
324
329
  const matching = [createLineItemContext({ productType: 'Electronics' })];
325
330
  const nonMatching = [createLineItemContext({ productType: 'Clothing' })];
326
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, matching)).toBe(true);
327
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, nonMatching)).toBe(false);
331
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, matching)).toBe(true);
332
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, nonMatching)).toBe(false);
328
333
  });
329
- (0, vitest_1.it)('should evaluate productCategories filter against lineItems array', () => {
334
+ it('should evaluate productCategories filter against lineItems array', () => {
330
335
  const filters = {
331
336
  productCategories: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Home > Kitchen'] },
332
337
  };
333
338
  const matching = [createLineItemContext({ category: 'Home > Kitchen' })];
334
339
  const nonMatching = [createLineItemContext({ category: 'Sports' })];
335
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, matching)).toBe(true);
336
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, nonMatching)).toBe(false);
340
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, matching)).toBe(true);
341
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, nonMatching)).toBe(false);
337
342
  });
338
- (0, vitest_1.it)('should evaluate EXCLUDE product filters against lineItems array', () => {
343
+ it('should evaluate EXCLUDE product filters against lineItems array', () => {
339
344
  const filters = {
340
345
  productVendors: { mode: at_tracking_event_types_1.COST_FILTER_MODE.EXCLUDE, values: ['Nike'] },
341
346
  };
342
- const mixed = [createLineItemContext({ vendor: 'Adidas' }), createLineItemContext({ vendor: 'Nike' })];
343
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, mixed)).toBe(true);
344
- const allNike = [createLineItemContext({ vendor: 'Nike' }), createLineItemContext({ vendor: 'Nike' })];
345
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, allNike)).toBe(false);
347
+ const mixed = [
348
+ createLineItemContext({ vendor: 'Adidas' }),
349
+ createLineItemContext({ vendor: 'Nike' }),
350
+ ];
351
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, mixed)).toBe(true);
352
+ const allNike = [
353
+ createLineItemContext({ vendor: 'Nike' }),
354
+ createLineItemContext({ vendor: 'Nike' }),
355
+ ];
356
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, allNike)).toBe(false);
346
357
  });
347
- (0, vitest_1.it)('should combine order filters + product filters via lineItems array', () => {
358
+ it('should combine order filters + product filters via lineItems array', () => {
348
359
  const filters = {
349
360
  countries: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['US'] },
350
361
  productVendors: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Nike'] },
351
362
  };
352
363
  const lineItems = [createLineItemContext({ vendor: 'Nike' })];
353
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shipCountryCode: 'US' }), null, lineItems)).toBe(true);
354
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shipCountryCode: 'GB' }), null, lineItems)).toBe(false);
364
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shipCountryCode: 'US' }), null, lineItems)).toBe(true);
365
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shipCountryCode: 'GB' }), null, lineItems)).toBe(false);
355
366
  const noMatch = [createLineItemContext({ vendor: 'Adidas' })];
356
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shipCountryCode: 'US' }), null, noMatch)).toBe(false);
367
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext({ shipCountryCode: 'US' }), null, noMatch)).toBe(false);
357
368
  });
358
- (0, vitest_1.it)('should combine multiple product filters with AND logic via lineItems array', () => {
369
+ it('should combine multiple product filters with AND logic via lineItems array', () => {
359
370
  const filters = {
360
371
  productVendors: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Nike'] },
361
372
  productTypes: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Shoes'] },
362
373
  };
363
374
  const bothMatch = [createLineItemContext({ vendor: 'Nike', productType: 'Shoes' })];
364
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, bothMatch)).toBe(true);
375
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, bothMatch)).toBe(true);
365
376
  const partialMatch = [createLineItemContext({ vendor: 'Nike', productType: 'Hats' })];
366
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, partialMatch)).toBe(false);
377
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, partialMatch)).toBe(false);
367
378
  const mixed = [
368
379
  createLineItemContext({ vendor: 'Adidas', productType: 'Hats' }),
369
380
  createLineItemContext({ vendor: 'Nike', productType: 'Shoes' }),
370
381
  ];
371
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, mixed)).toBe(true);
382
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, mixed)).toBe(true);
372
383
  });
373
- (0, vitest_1.it)('should return true when lineItems array is empty and product filters exist', () => {
384
+ it('should return true when lineItems array is empty and product filters exist', () => {
374
385
  const filters = {
375
386
  productVendors: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Nike'] },
376
387
  };
377
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, [])).toBe(true);
388
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), null, [])).toBe(true);
378
389
  });
379
- (0, vitest_1.it)('should not use lineItems array when lineItem is provided (single lineItem takes precedence)', () => {
390
+ it('should not use lineItems array when lineItem is provided (single lineItem takes precedence)', () => {
380
391
  const filters = {
381
392
  productVendors: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Nike'] },
382
393
  };
383
394
  const lineItem = createLineItemContext({ vendor: 'Adidas' });
384
395
  const lineItems = [createLineItemContext({ vendor: 'Nike' })];
385
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), lineItem, lineItems)).toBe(false);
396
+ expect(cost_filter_service_1.CostFilterService.matchesFilters(filters, createOrderContext(), lineItem, lineItems)).toBe(false);
386
397
  });
387
398
  });
388
- (0, vitest_1.describe)('hasProductFilters', () => {
389
- (0, vitest_1.it)('should return false for undefined filters', () => {
390
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.hasProductFilters(undefined)).toBe(false);
399
+ describe('hasProductFilters', () => {
400
+ it('should return false for undefined filters', () => {
401
+ expect(cost_filter_service_1.CostFilterService.hasProductFilters(undefined)).toBe(false);
391
402
  });
392
- (0, vitest_1.it)('should return false for empty filters', () => {
393
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.hasProductFilters({})).toBe(false);
403
+ it('should return false for empty filters', () => {
404
+ expect(cost_filter_service_1.CostFilterService.hasProductFilters({})).toBe(false);
394
405
  });
395
- (0, vitest_1.it)('should return false for order-only filters', () => {
406
+ it('should return false for order-only filters', () => {
396
407
  const filters = {
397
408
  orderTags: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['vip'] },
398
409
  countries: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['US'] },
399
410
  };
400
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.hasProductFilters(filters)).toBe(false);
411
+ expect(cost_filter_service_1.CostFilterService.hasProductFilters(filters)).toBe(false);
401
412
  });
402
- (0, vitest_1.it)('should return true for productVendors', () => {
403
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.hasProductFilters({
404
- productVendors: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Nike'] },
405
- })).toBe(true);
413
+ it('should return true for productVendors', () => {
414
+ expect(cost_filter_service_1.CostFilterService.hasProductFilters({ productVendors: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Nike'] } })).toBe(true);
406
415
  });
407
- (0, vitest_1.it)('should return true for productTypes', () => {
408
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.hasProductFilters({
409
- productTypes: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Shoes'] },
410
- })).toBe(true);
416
+ it('should return true for productTypes', () => {
417
+ expect(cost_filter_service_1.CostFilterService.hasProductFilters({ productTypes: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Shoes'] } })).toBe(true);
411
418
  });
412
- (0, vitest_1.it)('should return true for productTags', () => {
413
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.hasProductFilters({
414
- productTags: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['sale'] },
415
- })).toBe(true);
419
+ it('should return true for productTags', () => {
420
+ expect(cost_filter_service_1.CostFilterService.hasProductFilters({ productTags: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['sale'] } })).toBe(true);
416
421
  });
417
- (0, vitest_1.it)('should return true for productCategories', () => {
418
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.hasProductFilters({
419
- productCategories: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Apparel'] },
420
- })).toBe(true);
422
+ it('should return true for productCategories', () => {
423
+ expect(cost_filter_service_1.CostFilterService.hasProductFilters({ productCategories: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Apparel'] } })).toBe(true);
421
424
  });
422
- (0, vitest_1.it)('should return true for products', () => {
423
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.hasProductFilters({ products: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['123'] } })).toBe(true);
425
+ it('should return true for products', () => {
426
+ expect(cost_filter_service_1.CostFilterService.hasProductFilters({ products: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['123'] } })).toBe(true);
424
427
  });
425
428
  });
426
- (0, vitest_1.describe)('matchLineItemFilters', () => {
427
- (0, vitest_1.it)('should return true when no product filters defined', () => {
428
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchLineItemFilters({}, createLineItemContext())).toBe(true);
429
+ describe('matchLineItemFilters', () => {
430
+ it('should return true when no product filters defined', () => {
431
+ expect(cost_filter_service_1.CostFilterService.matchLineItemFilters({}, createLineItemContext())).toBe(true);
429
432
  });
430
- (0, vitest_1.it)('should check productVendors', () => {
433
+ it('should check productVendors', () => {
431
434
  const filters = { productVendors: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Nike'] } };
432
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ vendor: 'Nike' }))).toBe(true);
433
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ vendor: 'Adidas' }))).toBe(false);
435
+ expect(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ vendor: 'Nike' }))).toBe(true);
436
+ expect(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ vendor: 'Adidas' }))).toBe(false);
434
437
  });
435
- (0, vitest_1.it)('should check productTypes', () => {
438
+ it('should check productTypes', () => {
436
439
  const filters = { productTypes: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Shoes'] } };
437
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ productType: 'Shoes' }))).toBe(true);
438
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ productType: 'Hats' }))).toBe(false);
440
+ expect(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ productType: 'Shoes' }))).toBe(true);
441
+ expect(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ productType: 'Hats' }))).toBe(false);
439
442
  });
440
- (0, vitest_1.it)('should check productTags', () => {
443
+ it('should check productTags', () => {
441
444
  const filters = { productTags: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['sale'] } };
442
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ tags: ['sale'] }))).toBe(true);
443
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ tags: ['clearance'] }))).toBe(false);
445
+ expect(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ tags: ['sale'] }))).toBe(true);
446
+ expect(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ tags: ['clearance'] }))).toBe(false);
444
447
  });
445
- (0, vitest_1.it)('should check productCategories', () => {
448
+ it('should check productCategories', () => {
446
449
  const filters = { productCategories: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Apparel'] } };
447
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ category: 'Apparel' }))).toBe(true);
448
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ category: 'Electronics' }))).toBe(false);
450
+ expect(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ category: 'Apparel' }))).toBe(true);
451
+ expect(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ category: 'Electronics' }))).toBe(false);
449
452
  });
450
- (0, vitest_1.it)('should check products', () => {
453
+ it('should check products', () => {
451
454
  const filters = { products: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['123'] } };
452
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ productId: '123' }))).toBe(true);
453
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ productId: '999' }))).toBe(false);
455
+ expect(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ productId: '123' }))).toBe(true);
456
+ expect(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ productId: '999' }))).toBe(false);
454
457
  });
455
- (0, vitest_1.it)('should use AND logic across all product filters', () => {
458
+ it('should use AND logic across all product filters', () => {
456
459
  const filters = {
457
460
  productVendors: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Nike'] },
458
461
  productTypes: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['Shoes'] },
459
462
  productTags: { mode: at_tracking_event_types_1.COST_FILTER_MODE.INCLUDE, values: ['sale'] },
460
463
  };
461
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ vendor: 'Nike', productType: 'Shoes', tags: ['sale'] }))).toBe(true);
462
- (0, vitest_1.expect)(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ vendor: 'Nike', productType: 'Hats', tags: ['sale'] }))).toBe(false);
464
+ expect(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ vendor: 'Nike', productType: 'Shoes', tags: ['sale'] }))).toBe(true);
465
+ expect(cost_filter_service_1.CostFilterService.matchLineItemFilters(filters, createLineItemContext({ vendor: 'Nike', productType: 'Hats', tags: ['sale'] }))).toBe(false);
463
466
  });
464
467
  });
465
468
  });