@adtrackify/at-service-common 3.11.2 → 3.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (431) hide show
  1. package/dist/cjs/__tests__/clients/sqs-client.spec.d.ts +1 -1
  2. package/dist/cjs/__tests__/clients/sqs-client.spec.js +121 -121
  3. package/dist/cjs/__tests__/helpers/account-users-helper.spec.d.ts +1 -1
  4. package/dist/cjs/__tests__/helpers/account-users-helper.spec.js +220 -220
  5. package/dist/cjs/__tests__/identity-cache/identity-cache-db-service.spec.d.ts +1 -1
  6. package/dist/cjs/__tests__/identity-cache/identity-cache-db-service.spec.js +674 -674
  7. package/dist/cjs/__tests__/identity-cache/trait-merging-and-staleness.spec.d.ts +1 -1
  8. package/dist/cjs/__tests__/identity-cache/trait-merging-and-staleness.spec.js +588 -588
  9. package/dist/cjs/__tests__/libs/compress-decompress.spec.d.ts +1 -1
  10. package/dist/cjs/__tests__/libs/compress-decompress.spec.js +16 -16
  11. package/dist/cjs/__tests__/libs/currency.spec.d.ts +1 -1
  12. package/dist/cjs/__tests__/libs/currency.spec.js +220 -220
  13. package/dist/cjs/__tests__/libs/dates.spec.d.ts +1 -1
  14. package/dist/cjs/__tests__/libs/dates.spec.js +130 -130
  15. package/dist/cjs/__tests__/libs/domain.spec.d.ts +1 -1
  16. package/dist/cjs/__tests__/libs/domain.spec.js +107 -107
  17. package/dist/cjs/__tests__/libs/numbers.spec.d.ts +1 -1
  18. package/dist/cjs/__tests__/libs/numbers.spec.js +261 -261
  19. package/dist/cjs/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  20. package/dist/cjs/__tests__/s3-client/s3-client.spec.js +33 -33
  21. package/dist/cjs/__tests__/shopify/shopify-graphql-transformer.spec.d.ts +1 -1
  22. package/dist/cjs/__tests__/shopify/shopify-graphql-transformer.spec.js +35 -35
  23. package/dist/cjs/clients/generic/cognito-client.d.ts +23 -23
  24. package/dist/cjs/clients/generic/cognito-client.js +209 -209
  25. package/dist/cjs/clients/generic/dynamodb-client.d.ts +17 -17
  26. package/dist/cjs/clients/generic/dynamodb-client.js +170 -170
  27. package/dist/cjs/clients/generic/eventbridge-client.d.ts +14 -14
  28. package/dist/cjs/clients/generic/eventbridge-client.js +51 -51
  29. package/dist/cjs/clients/generic/http-client.d.ts +14 -14
  30. package/dist/cjs/clients/generic/http-client.js +61 -61
  31. package/dist/cjs/clients/generic/index.d.ts +10 -10
  32. package/dist/cjs/clients/generic/index.js +26 -26
  33. package/dist/cjs/clients/generic/lambda-invoke-client.d.ts +10 -10
  34. package/dist/cjs/clients/generic/lambda-invoke-client.js +35 -35
  35. package/dist/cjs/clients/generic/location-client.d.ts +8 -8
  36. package/dist/cjs/clients/generic/location-client.js +31 -31
  37. package/dist/cjs/clients/generic/redis-client.d.ts +32 -32
  38. package/dist/cjs/clients/generic/redis-client.js +181 -181
  39. package/dist/cjs/clients/generic/s3-client.d.ts +23 -23
  40. package/dist/cjs/clients/generic/s3-client.js +216 -216
  41. package/dist/cjs/clients/generic/singlestore-db-client.d.ts +14 -14
  42. package/dist/cjs/clients/generic/singlestore-db-client.js +67 -67
  43. package/dist/cjs/clients/generic/sqs-client.d.ts +33 -33
  44. package/dist/cjs/clients/generic/sqs-client.js +111 -111
  45. package/dist/cjs/clients/index.d.ts +3 -3
  46. package/dist/cjs/clients/index.js +19 -19
  47. package/dist/cjs/clients/internal-api/accounts-client.d.ts +85 -85
  48. package/dist/cjs/clients/internal-api/accounts-client.js +129 -129
  49. package/dist/cjs/clients/internal-api/cache-lambda-client.d.ts +25 -25
  50. package/dist/cjs/clients/internal-api/cache-lambda-client.js +87 -87
  51. package/dist/cjs/clients/internal-api/db-management-client.d.ts +18 -18
  52. package/dist/cjs/clients/internal-api/db-management-client.js +36 -36
  53. package/dist/cjs/clients/internal-api/destinations-client.d.ts +34 -34
  54. package/dist/cjs/clients/internal-api/destinations-client.js +79 -79
  55. package/dist/cjs/clients/internal-api/event-collector-client.d.ts +20 -20
  56. package/dist/cjs/clients/internal-api/event-collector-client.js +36 -36
  57. package/dist/cjs/clients/internal-api/identity-client.d.ts +31 -31
  58. package/dist/cjs/clients/internal-api/identity-client.js +91 -91
  59. package/dist/cjs/clients/internal-api/index.d.ts +9 -9
  60. package/dist/cjs/clients/internal-api/index.js +25 -25
  61. package/dist/cjs/clients/internal-api/shopify-app-install-client.d.ts +37 -37
  62. package/dist/cjs/clients/internal-api/shopify-app-install-client.js +81 -81
  63. package/dist/cjs/clients/internal-api/subscriptions-client.d.ts +26 -26
  64. package/dist/cjs/clients/internal-api/subscriptions-client.js +77 -77
  65. package/dist/cjs/clients/internal-api/users-auth-client.d.ts +35 -35
  66. package/dist/cjs/clients/internal-api/users-auth-client.js +110 -110
  67. package/dist/cjs/clients/third-party/emailable-client.d.ts +7 -7
  68. package/dist/cjs/clients/third-party/emailable-client.js +25 -25
  69. package/dist/cjs/clients/third-party/exchange-rate-api-client.d.ts +17 -17
  70. package/dist/cjs/clients/third-party/exchange-rate-api-client.js +19 -19
  71. package/dist/cjs/clients/third-party/index.d.ts +3 -3
  72. package/dist/cjs/clients/third-party/index.js +19 -19
  73. package/dist/cjs/clients/third-party/loops-client.d.ts +10 -10
  74. package/dist/cjs/clients/third-party/loops-client.js +30 -30
  75. package/dist/cjs/clients/third-party/shopify/graphql-product-queries.d.ts +2 -2
  76. package/dist/cjs/clients/third-party/shopify/graphql-product-queries.js +180 -180
  77. package/dist/cjs/clients/third-party/shopify/shopify-graphql-client.d.ts +9 -9
  78. package/dist/cjs/clients/third-party/shopify/shopify-graphql-client.js +115 -115
  79. package/dist/cjs/clients/third-party/shopify-client.d.ts +29 -29
  80. package/dist/cjs/clients/third-party/shopify-client.js +146 -146
  81. package/dist/cjs/helpers/account-users-helper.d.ts +2 -2
  82. package/dist/cjs/helpers/account-users-helper.js +22 -22
  83. package/dist/cjs/helpers/identity-cache-helper.d.ts +21 -21
  84. package/dist/cjs/helpers/identity-cache-helper.js +156 -156
  85. package/dist/cjs/helpers/index.d.ts +7 -7
  86. package/dist/cjs/helpers/index.js +23 -23
  87. package/dist/cjs/helpers/input-validation-helper.d.ts +3 -3
  88. package/dist/cjs/helpers/input-validation-helper.js +22 -22
  89. package/dist/cjs/helpers/logging-helper.d.ts +16 -16
  90. package/dist/cjs/helpers/logging-helper.js +84 -84
  91. package/dist/cjs/helpers/response-helper.d.ts +18 -18
  92. package/dist/cjs/helpers/response-helper.js +43 -43
  93. package/dist/cjs/helpers/shopify-helper.d.ts +9 -9
  94. package/dist/cjs/helpers/shopify-helper.js +26 -26
  95. package/dist/cjs/helpers/sqs-utils.d.ts +6 -6
  96. package/dist/cjs/helpers/sqs-utils.js +14 -14
  97. package/dist/cjs/index.d.ts +5 -5
  98. package/dist/cjs/index.js +21 -21
  99. package/dist/cjs/libs/click-id-parser.d.ts +23 -23
  100. package/dist/cjs/libs/click-id-parser.js +49 -49
  101. package/dist/cjs/libs/compression.d.ts +2 -2
  102. package/dist/cjs/libs/compression.js +33 -33
  103. package/dist/cjs/libs/cookie.d.ts +17 -17
  104. package/dist/cjs/libs/cookie.js +76 -76
  105. package/dist/cjs/libs/crypto.d.ts +3 -3
  106. package/dist/cjs/libs/crypto.js +20 -20
  107. package/dist/cjs/libs/csv.d.ts +2 -2
  108. package/dist/cjs/libs/csv.js +35 -35
  109. package/dist/cjs/libs/currency.d.ts +1 -1
  110. package/dist/cjs/libs/currency.js +29 -29
  111. package/dist/cjs/libs/dates.d.ts +12 -12
  112. package/dist/cjs/libs/dates.js +96 -96
  113. package/dist/cjs/libs/domain.d.ts +2 -2
  114. package/dist/cjs/libs/domain.js +38 -38
  115. package/dist/cjs/libs/emails.d.ts +6 -6
  116. package/dist/cjs/libs/emails.js +122 -122
  117. package/dist/cjs/libs/http-error.d.ts +21 -21
  118. package/dist/cjs/libs/http-error.js +63 -63
  119. package/dist/cjs/libs/http-status-codes.d.ts +58 -58
  120. package/dist/cjs/libs/http-status-codes.js +62 -62
  121. package/dist/cjs/libs/index.d.ts +17 -17
  122. package/dist/cjs/libs/index.js +33 -33
  123. package/dist/cjs/libs/numbers.d.ts +1 -1
  124. package/dist/cjs/libs/numbers.js +15 -15
  125. package/dist/cjs/libs/referrer-parser/index.d.ts +2 -2
  126. package/dist/cjs/libs/referrer-parser/index.js +18 -18
  127. package/dist/cjs/libs/referrer-parser/referrer-data.d.ts +9 -9
  128. package/dist/cjs/libs/referrer-parser/referrer-data.js +3307 -3307
  129. package/dist/cjs/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  130. package/dist/cjs/libs/referrer-parser/referrer-parser-util.js +131 -131
  131. package/dist/cjs/libs/strings.d.ts +3 -3
  132. package/dist/cjs/libs/strings.js +46 -46
  133. package/dist/cjs/libs/traits.d.ts +6 -6
  134. package/dist/cjs/libs/traits.js +65 -65
  135. package/dist/cjs/libs/url.d.ts +1 -1
  136. package/dist/cjs/libs/url.js +13 -13
  137. package/dist/cjs/services/cache/generic-cached-object.d.ts +5 -5
  138. package/dist/cjs/services/cache/generic-cached-object.js +2 -2
  139. package/dist/cjs/services/cache/index.d.ts +1 -1
  140. package/dist/cjs/services/cache/index.js +17 -17
  141. package/dist/cjs/services/cache/product-cache-service.d.ts +21 -21
  142. package/dist/cjs/services/cache/product-cache-service.js +76 -76
  143. package/dist/cjs/services/cache/product-cache-service.js.map +1 -1
  144. package/dist/cjs/services/currency-exchange-rate-lookup-service.d.ts +11 -11
  145. package/dist/cjs/services/currency-exchange-rate-lookup-service.js +66 -66
  146. package/dist/cjs/services/db/currency-exchange-rates-db-service.d.ts +21 -21
  147. package/dist/cjs/services/db/currency-exchange-rates-db-service.js +39 -39
  148. package/dist/cjs/services/db/destinations-db-service.d.ts +12 -12
  149. package/dist/cjs/services/db/destinations-db-service.js +76 -76
  150. package/dist/cjs/services/db/identity-cache-db-service.d.ts +28 -28
  151. package/dist/cjs/services/db/identity-cache-db-service.js +320 -320
  152. package/dist/cjs/services/db/index.d.ts +10 -10
  153. package/dist/cjs/services/db/index.js +26 -26
  154. package/dist/cjs/services/db/log-events-db-service.d.ts +11 -11
  155. package/dist/cjs/services/db/log-events-db-service.js +181 -181
  156. package/dist/cjs/services/db/pixels-db-service.d.ts +8 -8
  157. package/dist/cjs/services/db/pixels-db-service.js +35 -35
  158. package/dist/cjs/services/db/purchasable-contacts-db-service.d.ts +9 -9
  159. package/dist/cjs/services/db/purchasable-contacts-db-service.js +43 -43
  160. package/dist/cjs/services/db/purchased-contacts-db-service.d.ts +17 -17
  161. package/dist/cjs/services/db/purchased-contacts-db-service.js +143 -143
  162. package/dist/cjs/services/db/shopify-app-installs-db-service.d.ts +7 -7
  163. package/dist/cjs/services/db/shopify-app-installs-db-service.js +47 -47
  164. package/dist/cjs/services/db/shopify-products-cache-db-service.d.ts +16 -16
  165. package/dist/cjs/services/db/shopify-products-cache-db-service.js +73 -73
  166. package/dist/cjs/services/db/shopify-products-cache-db-service.js.map +1 -1
  167. package/dist/cjs/services/db/tracking-events-db-service.d.ts +20 -20
  168. package/dist/cjs/services/db/tracking-events-db-service.js +165 -165
  169. package/dist/cjs/services/eventbridge-integration-service.d.ts +9 -9
  170. package/dist/cjs/services/eventbridge-integration-service.js +28 -28
  171. package/dist/cjs/services/events/index.d.ts +3 -3
  172. package/dist/cjs/services/events/index.js +19 -19
  173. package/dist/cjs/services/events/log-event-service.d.ts +9 -9
  174. package/dist/cjs/services/events/log-event-service.js +56 -56
  175. package/dist/cjs/services/events/metric-event-service.d.ts +9 -9
  176. package/dist/cjs/services/events/metric-event-service.js +49 -49
  177. package/dist/cjs/services/events/tracking-event-sqs-service.d.ts +8 -8
  178. package/dist/cjs/services/events/tracking-event-sqs-service.js +34 -34
  179. package/dist/cjs/services/generic-cache-service.d.ts +7 -7
  180. package/dist/cjs/services/generic-cache-service.js +33 -33
  181. package/dist/cjs/services/index.d.ts +8 -8
  182. package/dist/cjs/services/index.js +24 -24
  183. package/dist/cjs/services/ipdata-lookup-service.d.ts +20 -20
  184. package/dist/cjs/services/ipdata-lookup-service.js +112 -112
  185. package/dist/cjs/services/shopify/index.d.ts +3 -2
  186. package/dist/cjs/services/shopify/index.js +19 -18
  187. package/dist/cjs/services/shopify/index.js.map +1 -1
  188. package/dist/cjs/services/shopify/products/index.d.ts +1 -1
  189. package/dist/cjs/services/shopify/products/index.js +17 -17
  190. package/dist/cjs/services/shopify/products/shopify-products-serviceV2.d.ts +17 -17
  191. package/dist/cjs/services/shopify/products/shopify-products-serviceV2.js +114 -112
  192. package/dist/cjs/services/shopify/products/shopify-products-serviceV2.js.map +1 -1
  193. package/dist/cjs/services/shopify/shopify-graphql-transformer.d.ts +9 -8
  194. package/dist/cjs/services/shopify/shopify-graphql-transformer.js +141 -141
  195. package/dist/cjs/services/shopify/shopify-graphql-transformer.js.map +1 -1
  196. package/dist/cjs/services/shopify/types/index.d.ts +1 -0
  197. package/dist/cjs/services/shopify/types/index.js +18 -0
  198. package/dist/cjs/services/shopify/types/index.js.map +1 -0
  199. package/dist/cjs/services/shopify/types/product.d.ts +115 -0
  200. package/dist/cjs/services/shopify/types/product.js +10 -0
  201. package/dist/cjs/services/shopify/types/product.js.map +1 -0
  202. package/dist/cjs/types/api-response.d.ts +6 -6
  203. package/dist/cjs/types/api-response.js +2 -2
  204. package/dist/cjs/types/index.d.ts +1 -1
  205. package/dist/cjs/types/index.js +17 -17
  206. package/dist/cjs/types/internal-events/event-detail-types.d.ts +20 -20
  207. package/dist/cjs/types/internal-events/event-detail-types.js +27 -27
  208. package/dist/cjs/types/internal-events/index.d.ts +1 -1
  209. package/dist/cjs/types/internal-events/index.js +17 -17
  210. package/dist/cjs/types/shopify-graphql-types/admin.generated.d.ts +105 -105
  211. package/dist/cjs/types/shopify-graphql-types/admin.generated.js +2 -2
  212. package/dist/cjs/types/shopify-graphql-types/admin.types.d.ts +26289 -26289
  213. package/dist/cjs/types/shopify-graphql-types/admin.types.js +5311 -5311
  214. package/dist/cjs/types/shopify-graphql-types/index.d.ts +2 -2
  215. package/dist/cjs/types/shopify-graphql-types/index.js +18 -18
  216. package/dist/esm/__tests__/clients/sqs-client.spec.d.ts +1 -1
  217. package/dist/esm/__tests__/clients/sqs-client.spec.js +119 -119
  218. package/dist/esm/__tests__/helpers/account-users-helper.spec.d.ts +1 -1
  219. package/dist/esm/__tests__/helpers/account-users-helper.spec.js +218 -218
  220. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.d.ts +1 -1
  221. package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.js +672 -672
  222. package/dist/esm/__tests__/identity-cache/trait-merging-and-staleness.spec.d.ts +1 -1
  223. package/dist/esm/__tests__/identity-cache/trait-merging-and-staleness.spec.js +586 -586
  224. package/dist/esm/__tests__/libs/compress-decompress.spec.d.ts +1 -1
  225. package/dist/esm/__tests__/libs/compress-decompress.spec.js +14 -14
  226. package/dist/esm/__tests__/libs/currency.spec.d.ts +1 -1
  227. package/dist/esm/__tests__/libs/currency.spec.js +218 -218
  228. package/dist/esm/__tests__/libs/dates.spec.d.ts +1 -1
  229. package/dist/esm/__tests__/libs/dates.spec.js +128 -128
  230. package/dist/esm/__tests__/libs/domain.spec.d.ts +1 -1
  231. package/dist/esm/__tests__/libs/domain.spec.js +105 -105
  232. package/dist/esm/__tests__/libs/numbers.spec.d.ts +1 -1
  233. package/dist/esm/__tests__/libs/numbers.spec.js +259 -259
  234. package/dist/esm/__tests__/s3-client/s3-client.spec.d.ts +1 -1
  235. package/dist/esm/__tests__/s3-client/s3-client.spec.js +31 -31
  236. package/dist/esm/__tests__/shopify/shopify-graphql-transformer.spec.d.ts +1 -1
  237. package/dist/esm/__tests__/shopify/shopify-graphql-transformer.spec.js +33 -33
  238. package/dist/esm/clients/generic/cognito-client.d.ts +23 -23
  239. package/dist/esm/clients/generic/cognito-client.js +204 -204
  240. package/dist/esm/clients/generic/dynamodb-client.d.ts +17 -17
  241. package/dist/esm/clients/generic/dynamodb-client.js +166 -166
  242. package/dist/esm/clients/generic/eventbridge-client.d.ts +14 -14
  243. package/dist/esm/clients/generic/eventbridge-client.js +47 -47
  244. package/dist/esm/clients/generic/http-client.d.ts +14 -14
  245. package/dist/esm/clients/generic/http-client.js +53 -53
  246. package/dist/esm/clients/generic/index.d.ts +10 -10
  247. package/dist/esm/clients/generic/index.js +10 -10
  248. package/dist/esm/clients/generic/lambda-invoke-client.d.ts +10 -10
  249. package/dist/esm/clients/generic/lambda-invoke-client.js +31 -31
  250. package/dist/esm/clients/generic/location-client.d.ts +8 -8
  251. package/dist/esm/clients/generic/location-client.js +27 -27
  252. package/dist/esm/clients/generic/redis-client.d.ts +32 -32
  253. package/dist/esm/clients/generic/redis-client.js +174 -174
  254. package/dist/esm/clients/generic/s3-client.d.ts +23 -23
  255. package/dist/esm/clients/generic/s3-client.js +209 -209
  256. package/dist/esm/clients/generic/singlestore-db-client.d.ts +14 -14
  257. package/dist/esm/clients/generic/singlestore-db-client.js +40 -40
  258. package/dist/esm/clients/generic/sqs-client.d.ts +33 -33
  259. package/dist/esm/clients/generic/sqs-client.js +107 -107
  260. package/dist/esm/clients/index.d.ts +3 -3
  261. package/dist/esm/clients/index.js +3 -3
  262. package/dist/esm/clients/internal-api/accounts-client.d.ts +85 -85
  263. package/dist/esm/clients/internal-api/accounts-client.js +125 -125
  264. package/dist/esm/clients/internal-api/cache-lambda-client.d.ts +25 -25
  265. package/dist/esm/clients/internal-api/cache-lambda-client.js +83 -83
  266. package/dist/esm/clients/internal-api/db-management-client.d.ts +18 -18
  267. package/dist/esm/clients/internal-api/db-management-client.js +32 -32
  268. package/dist/esm/clients/internal-api/destinations-client.d.ts +34 -34
  269. package/dist/esm/clients/internal-api/destinations-client.js +75 -75
  270. package/dist/esm/clients/internal-api/event-collector-client.d.ts +20 -20
  271. package/dist/esm/clients/internal-api/event-collector-client.js +32 -32
  272. package/dist/esm/clients/internal-api/identity-client.d.ts +31 -31
  273. package/dist/esm/clients/internal-api/identity-client.js +87 -87
  274. package/dist/esm/clients/internal-api/index.d.ts +9 -9
  275. package/dist/esm/clients/internal-api/index.js +9 -9
  276. package/dist/esm/clients/internal-api/shopify-app-install-client.d.ts +37 -37
  277. package/dist/esm/clients/internal-api/shopify-app-install-client.js +77 -77
  278. package/dist/esm/clients/internal-api/subscriptions-client.d.ts +26 -26
  279. package/dist/esm/clients/internal-api/subscriptions-client.js +73 -73
  280. package/dist/esm/clients/internal-api/users-auth-client.d.ts +35 -35
  281. package/dist/esm/clients/internal-api/users-auth-client.js +106 -106
  282. package/dist/esm/clients/third-party/emailable-client.d.ts +7 -7
  283. package/dist/esm/clients/third-party/emailable-client.js +21 -21
  284. package/dist/esm/clients/third-party/exchange-rate-api-client.d.ts +17 -17
  285. package/dist/esm/clients/third-party/exchange-rate-api-client.js +15 -15
  286. package/dist/esm/clients/third-party/index.d.ts +3 -3
  287. package/dist/esm/clients/third-party/index.js +3 -3
  288. package/dist/esm/clients/third-party/loops-client.d.ts +10 -10
  289. package/dist/esm/clients/third-party/loops-client.js +26 -26
  290. package/dist/esm/clients/third-party/shopify/graphql-product-queries.d.ts +2 -2
  291. package/dist/esm/clients/third-party/shopify/graphql-product-queries.js +177 -177
  292. package/dist/esm/clients/third-party/shopify/shopify-graphql-client.d.ts +9 -9
  293. package/dist/esm/clients/third-party/shopify/shopify-graphql-client.js +111 -111
  294. package/dist/esm/clients/third-party/shopify-client.d.ts +29 -29
  295. package/dist/esm/clients/third-party/shopify-client.js +142 -142
  296. package/dist/esm/helpers/account-users-helper.d.ts +2 -2
  297. package/dist/esm/helpers/account-users-helper.js +18 -18
  298. package/dist/esm/helpers/identity-cache-helper.d.ts +21 -21
  299. package/dist/esm/helpers/identity-cache-helper.js +151 -151
  300. package/dist/esm/helpers/index.d.ts +7 -7
  301. package/dist/esm/helpers/index.js +7 -7
  302. package/dist/esm/helpers/input-validation-helper.d.ts +3 -3
  303. package/dist/esm/helpers/input-validation-helper.js +18 -18
  304. package/dist/esm/helpers/logging-helper.d.ts +16 -16
  305. package/dist/esm/helpers/logging-helper.js +56 -56
  306. package/dist/esm/helpers/response-helper.d.ts +18 -18
  307. package/dist/esm/helpers/response-helper.js +37 -37
  308. package/dist/esm/helpers/shopify-helper.d.ts +9 -9
  309. package/dist/esm/helpers/shopify-helper.js +21 -21
  310. package/dist/esm/helpers/sqs-utils.d.ts +6 -6
  311. package/dist/esm/helpers/sqs-utils.js +9 -9
  312. package/dist/esm/index.d.ts +5 -5
  313. package/dist/esm/index.js +5 -5
  314. package/dist/esm/libs/click-id-parser.d.ts +23 -23
  315. package/dist/esm/libs/click-id-parser.js +45 -45
  316. package/dist/esm/libs/compression.d.ts +2 -2
  317. package/dist/esm/libs/compression.js +25 -25
  318. package/dist/esm/libs/cookie.d.ts +17 -17
  319. package/dist/esm/libs/cookie.js +70 -70
  320. package/dist/esm/libs/crypto.d.ts +3 -3
  321. package/dist/esm/libs/crypto.js +11 -11
  322. package/dist/esm/libs/csv.d.ts +2 -2
  323. package/dist/esm/libs/csv.js +30 -30
  324. package/dist/esm/libs/currency.d.ts +1 -1
  325. package/dist/esm/libs/currency.js +22 -22
  326. package/dist/esm/libs/dates.d.ts +12 -12
  327. package/dist/esm/libs/dates.js +83 -83
  328. package/dist/esm/libs/domain.d.ts +2 -2
  329. package/dist/esm/libs/domain.js +33 -33
  330. package/dist/esm/libs/emails.d.ts +6 -6
  331. package/dist/esm/libs/emails.js +115 -115
  332. package/dist/esm/libs/http-error.d.ts +21 -21
  333. package/dist/esm/libs/http-error.js +59 -59
  334. package/dist/esm/libs/http-status-codes.d.ts +58 -58
  335. package/dist/esm/libs/http-status-codes.js +59 -59
  336. package/dist/esm/libs/index.d.ts +17 -17
  337. package/dist/esm/libs/index.js +17 -17
  338. package/dist/esm/libs/numbers.d.ts +1 -1
  339. package/dist/esm/libs/numbers.js +11 -11
  340. package/dist/esm/libs/referrer-parser/index.d.ts +2 -2
  341. package/dist/esm/libs/referrer-parser/index.js +2 -2
  342. package/dist/esm/libs/referrer-parser/referrer-data.d.ts +9 -9
  343. package/dist/esm/libs/referrer-parser/referrer-data.js +3304 -3304
  344. package/dist/esm/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
  345. package/dist/esm/libs/referrer-parser/referrer-parser-util.js +124 -124
  346. package/dist/esm/libs/strings.d.ts +3 -3
  347. package/dist/esm/libs/strings.js +40 -40
  348. package/dist/esm/libs/traits.d.ts +6 -6
  349. package/dist/esm/libs/traits.js +54 -54
  350. package/dist/esm/libs/url.d.ts +1 -1
  351. package/dist/esm/libs/url.js +9 -9
  352. package/dist/esm/services/cache/generic-cached-object.d.ts +5 -5
  353. package/dist/esm/services/cache/generic-cached-object.js +1 -1
  354. package/dist/esm/services/cache/index.d.ts +1 -1
  355. package/dist/esm/services/cache/index.js +1 -1
  356. package/dist/esm/services/cache/product-cache-service.d.ts +21 -21
  357. package/dist/esm/services/cache/product-cache-service.js +68 -68
  358. package/dist/esm/services/cache/product-cache-service.js.map +1 -1
  359. package/dist/esm/services/currency-exchange-rate-lookup-service.d.ts +11 -11
  360. package/dist/esm/services/currency-exchange-rate-lookup-service.js +62 -62
  361. package/dist/esm/services/db/currency-exchange-rates-db-service.d.ts +21 -21
  362. package/dist/esm/services/db/currency-exchange-rates-db-service.js +35 -35
  363. package/dist/esm/services/db/destinations-db-service.d.ts +12 -12
  364. package/dist/esm/services/db/destinations-db-service.js +72 -72
  365. package/dist/esm/services/db/identity-cache-db-service.d.ts +28 -28
  366. package/dist/esm/services/db/identity-cache-db-service.js +313 -313
  367. package/dist/esm/services/db/index.d.ts +10 -10
  368. package/dist/esm/services/db/index.js +10 -10
  369. package/dist/esm/services/db/log-events-db-service.d.ts +11 -11
  370. package/dist/esm/services/db/log-events-db-service.js +177 -177
  371. package/dist/esm/services/db/pixels-db-service.d.ts +8 -8
  372. package/dist/esm/services/db/pixels-db-service.js +31 -31
  373. package/dist/esm/services/db/purchasable-contacts-db-service.d.ts +9 -9
  374. package/dist/esm/services/db/purchasable-contacts-db-service.js +39 -39
  375. package/dist/esm/services/db/purchased-contacts-db-service.d.ts +17 -17
  376. package/dist/esm/services/db/purchased-contacts-db-service.js +139 -139
  377. package/dist/esm/services/db/shopify-app-installs-db-service.d.ts +7 -7
  378. package/dist/esm/services/db/shopify-app-installs-db-service.js +43 -43
  379. package/dist/esm/services/db/shopify-products-cache-db-service.d.ts +16 -16
  380. package/dist/esm/services/db/shopify-products-cache-db-service.js +66 -66
  381. package/dist/esm/services/db/shopify-products-cache-db-service.js.map +1 -1
  382. package/dist/esm/services/db/tracking-events-db-service.d.ts +20 -20
  383. package/dist/esm/services/db/tracking-events-db-service.js +161 -161
  384. package/dist/esm/services/eventbridge-integration-service.d.ts +9 -9
  385. package/dist/esm/services/eventbridge-integration-service.js +24 -24
  386. package/dist/esm/services/events/index.d.ts +3 -3
  387. package/dist/esm/services/events/index.js +3 -3
  388. package/dist/esm/services/events/log-event-service.d.ts +9 -9
  389. package/dist/esm/services/events/log-event-service.js +52 -52
  390. package/dist/esm/services/events/metric-event-service.d.ts +9 -9
  391. package/dist/esm/services/events/metric-event-service.js +45 -45
  392. package/dist/esm/services/events/tracking-event-sqs-service.d.ts +8 -8
  393. package/dist/esm/services/events/tracking-event-sqs-service.js +30 -30
  394. package/dist/esm/services/generic-cache-service.d.ts +7 -7
  395. package/dist/esm/services/generic-cache-service.js +29 -29
  396. package/dist/esm/services/index.d.ts +8 -8
  397. package/dist/esm/services/index.js +8 -8
  398. package/dist/esm/services/ipdata-lookup-service.d.ts +20 -20
  399. package/dist/esm/services/ipdata-lookup-service.js +108 -108
  400. package/dist/esm/services/shopify/index.d.ts +3 -2
  401. package/dist/esm/services/shopify/index.js +3 -2
  402. package/dist/esm/services/shopify/index.js.map +1 -1
  403. package/dist/esm/services/shopify/products/index.d.ts +1 -1
  404. package/dist/esm/services/shopify/products/index.js +1 -1
  405. package/dist/esm/services/shopify/products/shopify-products-serviceV2.d.ts +17 -17
  406. package/dist/esm/services/shopify/products/shopify-products-serviceV2.js +110 -108
  407. package/dist/esm/services/shopify/products/shopify-products-serviceV2.js.map +1 -1
  408. package/dist/esm/services/shopify/shopify-graphql-transformer.d.ts +9 -8
  409. package/dist/esm/services/shopify/shopify-graphql-transformer.js +138 -138
  410. package/dist/esm/services/shopify/shopify-graphql-transformer.js.map +1 -1
  411. package/dist/esm/services/shopify/types/index.d.ts +1 -0
  412. package/dist/esm/services/shopify/types/index.js +2 -0
  413. package/dist/esm/services/shopify/types/index.js.map +1 -0
  414. package/dist/esm/services/shopify/types/product.d.ts +115 -0
  415. package/dist/esm/services/shopify/types/product.js +7 -0
  416. package/dist/esm/services/shopify/types/product.js.map +1 -0
  417. package/dist/esm/types/api-response.d.ts +6 -6
  418. package/dist/esm/types/api-response.js +1 -1
  419. package/dist/esm/types/index.d.ts +1 -1
  420. package/dist/esm/types/index.js +1 -1
  421. package/dist/esm/types/internal-events/event-detail-types.d.ts +20 -20
  422. package/dist/esm/types/internal-events/event-detail-types.js +24 -24
  423. package/dist/esm/types/internal-events/index.d.ts +1 -1
  424. package/dist/esm/types/internal-events/index.js +1 -1
  425. package/dist/esm/types/shopify-graphql-types/admin.generated.d.ts +105 -105
  426. package/dist/esm/types/shopify-graphql-types/admin.generated.js +1 -1
  427. package/dist/esm/types/shopify-graphql-types/admin.types.d.ts +26289 -26289
  428. package/dist/esm/types/shopify-graphql-types/admin.types.js +5299 -5299
  429. package/dist/esm/types/shopify-graphql-types/index.d.ts +2 -2
  430. package/dist/esm/types/shopify-graphql-types/index.js +2 -2
  431. package/package.json +135 -135
@@ -1,27 +1,27 @@
1
- import { LoopsClient as LoopsSdkClient } from 'loops';
2
- import { Logger } from '../../helpers/logging-helper.js';
3
- export class LoopsClient {
4
- client;
5
- constructor(apiKey) {
6
- this.client = new LoopsSdkClient(apiKey);
7
- }
8
- sendTransactionalEmail = async (params) => {
9
- try {
10
- return await this.client.sendTransactionalEmail(params);
11
- }
12
- catch (error) {
13
- Logger.error('Failed to send Loops transactional email', { error, params });
14
- throw error;
15
- }
16
- };
17
- sendEvent = async (params) => {
18
- try {
19
- return await this.client.sendEvent(params);
20
- }
21
- catch (error) {
22
- Logger.error('Failed to send Loops event', { error, params });
23
- throw error;
24
- }
25
- };
26
- }
1
+ import { LoopsClient as LoopsSdkClient } from 'loops';
2
+ import { Logger } from '../../helpers/logging-helper.js';
3
+ export class LoopsClient {
4
+ client;
5
+ constructor(apiKey) {
6
+ this.client = new LoopsSdkClient(apiKey);
7
+ }
8
+ sendTransactionalEmail = async (params) => {
9
+ try {
10
+ return await this.client.sendTransactionalEmail(params);
11
+ }
12
+ catch (error) {
13
+ Logger.error('Failed to send Loops transactional email', { error, params });
14
+ throw error;
15
+ }
16
+ };
17
+ sendEvent = async (params) => {
18
+ try {
19
+ return await this.client.sendEvent(params);
20
+ }
21
+ catch (error) {
22
+ Logger.error('Failed to send Loops event', { error, params });
23
+ throw error;
24
+ }
25
+ };
26
+ }
27
27
  //# sourceMappingURL=loops-client.js.map
@@ -1,2 +1,2 @@
1
- export declare const MediaSnippet = "\n... on MediaImage {\n createdAt\n fileErrors {\n code\n details\n message\n }\n fileStatus\n id\n image {\n altText\n height\n id\n originalSrc\n src\n transformedSrc\n width\n }\n mimeType\n}\n";
2
- export declare const graphqlProductQueryByProductId = "\n#graphql\nquery GetProduct($id: ID!, $first: Int!, $after: String) {\n product(id: $id) {\n id\n handle\n productType\n hasOnlyDefaultVariant\n hasOutOfStockVariants\n isGiftCard\n legacyResourceId\n onlineStoreUrl\n onlineStorePreviewUrl\n productType\n publishedAt\n requiresSellingPlan\n status\n tags\n title\n totalInventory\n tracksInventory\n vendor\n createdAt\n updatedAt\n category {\n id\n name\n fullName\n parentId\n }\n collections (first: 250) {\n nodes {\n handle\n id\n image {\n url\n }\n legacyResourceId\n productsCount {\n count\n precision\n }\n title\n }\n }\n priceRangeV2 {\n maxVariantPrice {\n amount\n currencyCode\n }\n minVariantPrice {\n amount\n currencyCode\n }\n }\n variantsCount {\n count\n }\n seo {\n title\n description\n }\n featuredMedia {\n id\n mediaContentType\n status\n preview {\n image {\n id\n url\n }\n status\n }\n }\n media (first: 3) {\n nodes {\n id\n mediaContentType\n status\n preview {\n image {\n id\n url\n }\n status\n }\n\n }\n }\n variants (first: $first, after: $after) {\n pageInfo {\n hasNextPage\n endCursor\n }\n nodes {\n availableForSale\n barcode\n compareAtPrice\n createdAt\n displayName\n id\n legacyResourceId\n product {\n id\n handle\n legacyResourceId\n }\n image {\n id\n url\n }\n inventoryItem {\n createdAt\n id\n legacyResourceId\n requiresShipping\n sku\n tracked\n unitCost {\n amount\n currencyCode\n }\n updatedAt\n }\n inventoryPolicy\n inventoryQuantity\n price\n media (first: 3) {\n nodes {\n id\n mediaContentType\n status\n preview {\n image {\n id\n url\n }\n status\n }\n }\n }\n selectedOptions {\n name\n value\n }\n sellableOnlineQuantity\n sku\n taxable\n title\n updatedAt\n }\n }\n }\n}\n";
1
+ export declare const MediaSnippet = "\n... on MediaImage {\n createdAt\n fileErrors {\n code\n details\n message\n }\n fileStatus\n id\n image {\n altText\n height\n id\n originalSrc\n src\n transformedSrc\n width\n }\n mimeType\n}\n";
2
+ export declare const graphqlProductQueryByProductId = "\n#graphql\nquery GetProduct($id: ID!, $first: Int!, $after: String) {\n product(id: $id) {\n id\n handle\n productType\n hasOnlyDefaultVariant\n hasOutOfStockVariants\n isGiftCard\n legacyResourceId\n onlineStoreUrl\n onlineStorePreviewUrl\n productType\n publishedAt\n requiresSellingPlan\n status\n tags\n title\n totalInventory\n tracksInventory\n vendor\n createdAt\n updatedAt\n category {\n id\n name\n fullName\n parentId\n }\n collections (first: 250) {\n nodes {\n handle\n id\n image {\n url\n }\n legacyResourceId\n productsCount {\n count\n precision\n }\n title\n }\n }\n priceRangeV2 {\n maxVariantPrice {\n amount\n currencyCode\n }\n minVariantPrice {\n amount\n currencyCode\n }\n }\n variantsCount {\n count\n }\n seo {\n title\n description\n }\n featuredMedia {\n id\n mediaContentType\n status\n preview {\n image {\n id\n url\n }\n status\n }\n }\n media (first: 3) {\n nodes {\n id\n mediaContentType\n status\n preview {\n image {\n id\n url\n }\n status\n }\n\n }\n }\n variants (first: $first, after: $after) {\n pageInfo {\n hasNextPage\n endCursor\n }\n nodes {\n availableForSale\n barcode\n compareAtPrice\n createdAt\n displayName\n id\n legacyResourceId\n product {\n id\n handle\n legacyResourceId\n }\n image {\n id\n url\n }\n inventoryItem {\n createdAt\n id\n legacyResourceId\n requiresShipping\n sku\n tracked\n unitCost {\n amount\n currencyCode\n }\n updatedAt\n }\n inventoryPolicy\n inventoryQuantity\n price\n media (first: 3) {\n nodes {\n id\n mediaContentType\n status\n preview {\n image {\n id\n url\n }\n status\n }\n }\n }\n selectedOptions {\n name\n value\n }\n sellableOnlineQuantity\n sku\n taxable\n title\n updatedAt\n }\n }\n }\n}\n";
@@ -1,178 +1,178 @@
1
- export const MediaSnippet = `
2
- ... on MediaImage {
3
- createdAt
4
- fileErrors {
5
- code
6
- details
7
- message
8
- }
9
- fileStatus
10
- id
11
- image {
12
- altText
13
- height
14
- id
15
- originalSrc
16
- src
17
- transformedSrc
18
- width
19
- }
20
- mimeType
21
- }
22
- `;
23
- export const graphqlProductQueryByProductId = `
24
- #graphql
25
- query GetProduct($id: ID!, $first: Int!, $after: String) {
26
- product(id: $id) {
27
- id
28
- handle
29
- productType
30
- hasOnlyDefaultVariant
31
- hasOutOfStockVariants
32
- isGiftCard
33
- legacyResourceId
34
- onlineStoreUrl
35
- onlineStorePreviewUrl
36
- productType
37
- publishedAt
38
- requiresSellingPlan
39
- status
40
- tags
41
- title
42
- totalInventory
43
- tracksInventory
44
- vendor
45
- createdAt
46
- updatedAt
47
- category {
48
- id
49
- name
50
- fullName
51
- parentId
52
- }
53
- collections (first: 250) {
54
- nodes {
55
- handle
56
- id
57
- image {
58
- url
59
- }
60
- legacyResourceId
61
- productsCount {
62
- count
63
- precision
64
- }
65
- title
66
- }
67
- }
68
- priceRangeV2 {
69
- maxVariantPrice {
70
- amount
71
- currencyCode
72
- }
73
- minVariantPrice {
74
- amount
75
- currencyCode
76
- }
77
- }
78
- variantsCount {
79
- count
80
- }
81
- seo {
82
- title
83
- description
84
- }
85
- featuredMedia {
86
- id
87
- mediaContentType
88
- status
89
- preview {
90
- image {
91
- id
92
- url
93
- }
94
- status
95
- }
96
- }
97
- media (first: 3) {
98
- nodes {
99
- id
100
- mediaContentType
101
- status
102
- preview {
103
- image {
104
- id
105
- url
106
- }
107
- status
108
- }
109
-
110
- }
111
- }
112
- variants (first: $first, after: $after) {
113
- pageInfo {
114
- hasNextPage
115
- endCursor
116
- }
117
- nodes {
118
- availableForSale
119
- barcode
120
- compareAtPrice
121
- createdAt
122
- displayName
123
- id
124
- legacyResourceId
125
- product {
126
- id
127
- handle
128
- legacyResourceId
129
- }
130
- image {
131
- id
132
- url
133
- }
134
- inventoryItem {
135
- createdAt
136
- id
137
- legacyResourceId
138
- requiresShipping
139
- sku
140
- tracked
141
- unitCost {
142
- amount
143
- currencyCode
144
- }
145
- updatedAt
146
- }
147
- inventoryPolicy
148
- inventoryQuantity
149
- price
150
- media (first: 3) {
151
- nodes {
152
- id
153
- mediaContentType
154
- status
155
- preview {
156
- image {
157
- id
158
- url
159
- }
160
- status
161
- }
162
- }
163
- }
164
- selectedOptions {
165
- name
166
- value
167
- }
168
- sellableOnlineQuantity
169
- sku
170
- taxable
171
- title
172
- updatedAt
173
- }
174
- }
175
- }
176
- }
177
- `;
1
+ export const MediaSnippet = `
2
+ ... on MediaImage {
3
+ createdAt
4
+ fileErrors {
5
+ code
6
+ details
7
+ message
8
+ }
9
+ fileStatus
10
+ id
11
+ image {
12
+ altText
13
+ height
14
+ id
15
+ originalSrc
16
+ src
17
+ transformedSrc
18
+ width
19
+ }
20
+ mimeType
21
+ }
22
+ `;
23
+ export const graphqlProductQueryByProductId = `
24
+ #graphql
25
+ query GetProduct($id: ID!, $first: Int!, $after: String) {
26
+ product(id: $id) {
27
+ id
28
+ handle
29
+ productType
30
+ hasOnlyDefaultVariant
31
+ hasOutOfStockVariants
32
+ isGiftCard
33
+ legacyResourceId
34
+ onlineStoreUrl
35
+ onlineStorePreviewUrl
36
+ productType
37
+ publishedAt
38
+ requiresSellingPlan
39
+ status
40
+ tags
41
+ title
42
+ totalInventory
43
+ tracksInventory
44
+ vendor
45
+ createdAt
46
+ updatedAt
47
+ category {
48
+ id
49
+ name
50
+ fullName
51
+ parentId
52
+ }
53
+ collections (first: 250) {
54
+ nodes {
55
+ handle
56
+ id
57
+ image {
58
+ url
59
+ }
60
+ legacyResourceId
61
+ productsCount {
62
+ count
63
+ precision
64
+ }
65
+ title
66
+ }
67
+ }
68
+ priceRangeV2 {
69
+ maxVariantPrice {
70
+ amount
71
+ currencyCode
72
+ }
73
+ minVariantPrice {
74
+ amount
75
+ currencyCode
76
+ }
77
+ }
78
+ variantsCount {
79
+ count
80
+ }
81
+ seo {
82
+ title
83
+ description
84
+ }
85
+ featuredMedia {
86
+ id
87
+ mediaContentType
88
+ status
89
+ preview {
90
+ image {
91
+ id
92
+ url
93
+ }
94
+ status
95
+ }
96
+ }
97
+ media (first: 3) {
98
+ nodes {
99
+ id
100
+ mediaContentType
101
+ status
102
+ preview {
103
+ image {
104
+ id
105
+ url
106
+ }
107
+ status
108
+ }
109
+
110
+ }
111
+ }
112
+ variants (first: $first, after: $after) {
113
+ pageInfo {
114
+ hasNextPage
115
+ endCursor
116
+ }
117
+ nodes {
118
+ availableForSale
119
+ barcode
120
+ compareAtPrice
121
+ createdAt
122
+ displayName
123
+ id
124
+ legacyResourceId
125
+ product {
126
+ id
127
+ handle
128
+ legacyResourceId
129
+ }
130
+ image {
131
+ id
132
+ url
133
+ }
134
+ inventoryItem {
135
+ createdAt
136
+ id
137
+ legacyResourceId
138
+ requiresShipping
139
+ sku
140
+ tracked
141
+ unitCost {
142
+ amount
143
+ currencyCode
144
+ }
145
+ updatedAt
146
+ }
147
+ inventoryPolicy
148
+ inventoryQuantity
149
+ price
150
+ media (first: 3) {
151
+ nodes {
152
+ id
153
+ mediaContentType
154
+ status
155
+ preview {
156
+ image {
157
+ id
158
+ url
159
+ }
160
+ status
161
+ }
162
+ }
163
+ }
164
+ selectedOptions {
165
+ name
166
+ value
167
+ }
168
+ sellableOnlineQuantity
169
+ sku
170
+ taxable
171
+ title
172
+ updatedAt
173
+ }
174
+ }
175
+ }
176
+ }
177
+ `;
178
178
  //# sourceMappingURL=graphql-product-queries.js.map
@@ -1,9 +1,9 @@
1
- import { AdminApiClient, ClientResponse } from '@shopify/admin-api-client';
2
- import type { GetProductQuery } from '../../../types/shopify-graphql-types/admin.generated';
3
- export declare class ShopifyGraphQLClient {
4
- static _shopify_api_version: string;
5
- static getClient: (shop: string, accessToken: string) => AdminApiClient;
6
- static getProductWithVariantsGraphQL: (shop: string, accessToken: string, productId: string, pageSize?: number) => Promise<ClientResponse<GetProductQuery>>;
7
- private static executePagedProductQuery;
8
- private static executeProductQuery;
9
- }
1
+ import { AdminApiClient, ClientResponse } from '@shopify/admin-api-client';
2
+ import type { GetProductQuery } from '../../../types/shopify-graphql-types/admin.generated';
3
+ export declare class ShopifyGraphQLClient {
4
+ static _shopify_api_version: string;
5
+ static getClient: (shop: string, accessToken: string) => AdminApiClient;
6
+ static getProductWithVariantsGraphQL: (shop: string, accessToken: string, productId: string, pageSize?: number) => Promise<ClientResponse<GetProductQuery>>;
7
+ private static executePagedProductQuery;
8
+ private static executeProductQuery;
9
+ }
@@ -1,112 +1,112 @@
1
- import { createAdminApiClient } from '@shopify/admin-api-client';
2
- import { Logger } from '../../../helpers';
3
- import { graphqlProductQueryByProductId } from './graphql-product-queries';
4
- export class ShopifyGraphQLClient {
5
- static _shopify_api_version = process.env.SHOPIFY_API_VERSION;
6
- static getClient = (shop, accessToken) => {
7
- const client = createAdminApiClient({
8
- storeDomain: shop,
9
- accessToken: accessToken,
10
- apiVersion: this._shopify_api_version,
11
- retries: 1,
12
- });
13
- return client;
14
- };
15
- static getProductWithVariantsGraphQL = async (shop, accessToken, productId, pageSize = 100) => {
16
- try {
17
- const client = this.getClient(shop, accessToken);
18
- const result = await this.executePagedProductQuery(client, productId, pageSize, null);
19
- return result;
20
- }
21
- catch (error) {
22
- Logger.error('Failed getProductWithVariantsGraphQL', {
23
- error,
24
- shop,
25
- accessToken,
26
- productId,
27
- });
28
- throw error;
29
- }
30
- };
31
- static executePagedProductQuery = async (client, productId, pageSize, cursor) => {
32
- try {
33
- let result = {};
34
- let product = null;
35
- const allVariants = [];
36
- let hasNextPage = false;
37
- do {
38
- Logger.debug('executePagedProductQuery', { productId, pageSize, cursor });
39
- result = await this.executeProductQuery(client, productId, pageSize, cursor ?? null);
40
- if (result?.errors) {
41
- Logger.error('executePagedProductQuery: Failed to execute product query', {
42
- result,
43
- shop: client.config.storeDomain,
44
- productId,
45
- accessToken: client.config.accessToken,
46
- });
47
- break;
48
- }
49
- else if (result?.data?.product) {
50
- product = result.data.product;
51
- allVariants.push(...(product?.variants?.nodes ?? []));
52
- hasNextPage = product?.variants?.pageInfo?.hasNextPage;
53
- cursor = product?.variants?.pageInfo?.endCursor;
54
- }
55
- if (hasNextPage) {
56
- Logger.info('executePagedProductQuery: hasNextPage product variants', {
57
- hasNextPage,
58
- shop: client.config.storeDomain,
59
- productId,
60
- accessToken: client.config.accessToken,
61
- });
62
- }
63
- } while (hasNextPage);
64
- if (product) {
65
- product.variants.nodes = allVariants;
66
- result.data = result?.data ?? {};
67
- result.data.product = product;
68
- }
69
- return result;
70
- }
71
- catch (error) {
72
- Logger.error('executePagedProductQuery:Failed to execute paged product query', {
73
- error,
74
- shop: client.config.storeDomain,
75
- productId,
76
- accessToken: client.config.accessToken,
77
- });
78
- throw error;
79
- }
80
- };
81
- static executeProductQuery = async (client, productId, pageSize, cursor) => {
82
- try {
83
- const result = await client.request(graphqlProductQueryByProductId, {
84
- variables: {
85
- id: `gid://shopify/Product/${productId}`,
86
- first: pageSize,
87
- after: cursor,
88
- },
89
- });
90
- if (result?.errors) {
91
- Logger.error('Failed to executeProductQuery -- response errors', {
92
- result,
93
- responseErrors: result.errors,
94
- shop: client.config.storeDomain,
95
- productId,
96
- cursor,
97
- });
98
- }
99
- return result;
100
- }
101
- catch (error) {
102
- Logger.error('Failed to executeProductQuery -- exception', {
103
- error,
104
- shop: client.config.storeDomain,
105
- productId,
106
- accessToken: client.config.accessToken,
107
- });
108
- return {};
109
- }
110
- };
111
- }
1
+ import { createAdminApiClient } from '@shopify/admin-api-client';
2
+ import { Logger } from '../../../helpers';
3
+ import { graphqlProductQueryByProductId } from './graphql-product-queries';
4
+ export class ShopifyGraphQLClient {
5
+ static _shopify_api_version = process.env.SHOPIFY_API_VERSION;
6
+ static getClient = (shop, accessToken) => {
7
+ const client = createAdminApiClient({
8
+ storeDomain: shop,
9
+ accessToken: accessToken,
10
+ apiVersion: this._shopify_api_version,
11
+ retries: 1,
12
+ });
13
+ return client;
14
+ };
15
+ static getProductWithVariantsGraphQL = async (shop, accessToken, productId, pageSize = 100) => {
16
+ try {
17
+ const client = this.getClient(shop, accessToken);
18
+ const result = await this.executePagedProductQuery(client, productId, pageSize, null);
19
+ return result;
20
+ }
21
+ catch (error) {
22
+ Logger.error('Failed getProductWithVariantsGraphQL', {
23
+ error,
24
+ shop,
25
+ accessToken,
26
+ productId,
27
+ });
28
+ throw error;
29
+ }
30
+ };
31
+ static executePagedProductQuery = async (client, productId, pageSize, cursor) => {
32
+ try {
33
+ let result = {};
34
+ let product = null;
35
+ const allVariants = [];
36
+ let hasNextPage = false;
37
+ do {
38
+ Logger.debug('executePagedProductQuery', { productId, pageSize, cursor });
39
+ result = await this.executeProductQuery(client, productId, pageSize, cursor ?? null);
40
+ if (result?.errors) {
41
+ Logger.error('executePagedProductQuery: Failed to execute product query', {
42
+ result,
43
+ shop: client.config.storeDomain,
44
+ productId,
45
+ accessToken: client.config.accessToken,
46
+ });
47
+ break;
48
+ }
49
+ else if (result?.data?.product) {
50
+ product = result.data.product;
51
+ allVariants.push(...(product?.variants?.nodes ?? []));
52
+ hasNextPage = product?.variants?.pageInfo?.hasNextPage;
53
+ cursor = product?.variants?.pageInfo?.endCursor;
54
+ }
55
+ if (hasNextPage) {
56
+ Logger.info('executePagedProductQuery: hasNextPage product variants', {
57
+ hasNextPage,
58
+ shop: client.config.storeDomain,
59
+ productId,
60
+ accessToken: client.config.accessToken,
61
+ });
62
+ }
63
+ } while (hasNextPage);
64
+ if (product) {
65
+ product.variants.nodes = allVariants;
66
+ result.data = result?.data ?? {};
67
+ result.data.product = product;
68
+ }
69
+ return result;
70
+ }
71
+ catch (error) {
72
+ Logger.error('executePagedProductQuery:Failed to execute paged product query', {
73
+ error,
74
+ shop: client.config.storeDomain,
75
+ productId,
76
+ accessToken: client.config.accessToken,
77
+ });
78
+ throw error;
79
+ }
80
+ };
81
+ static executeProductQuery = async (client, productId, pageSize, cursor) => {
82
+ try {
83
+ const result = await client.request(graphqlProductQueryByProductId, {
84
+ variables: {
85
+ id: `gid://shopify/Product/${productId}`,
86
+ first: pageSize,
87
+ after: cursor,
88
+ },
89
+ });
90
+ if (result?.errors) {
91
+ Logger.error('Failed to executeProductQuery -- response errors', {
92
+ result,
93
+ responseErrors: result.errors,
94
+ shop: client.config.storeDomain,
95
+ productId,
96
+ cursor,
97
+ });
98
+ }
99
+ return result;
100
+ }
101
+ catch (error) {
102
+ Logger.error('Failed to executeProductQuery -- exception', {
103
+ error,
104
+ shop: client.config.storeDomain,
105
+ productId,
106
+ accessToken: client.config.accessToken,
107
+ });
108
+ return {};
109
+ }
110
+ };
111
+ }
112
112
  //# sourceMappingURL=shopify-graphql-client.js.map