@ehrenkind/shopify-lib 0.4.0 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (254) hide show
  1. package/dist/index.cjs +421 -109
  2. package/dist/index.cjs.map +1 -1
  3. package/dist/index.d.cts +256 -176
  4. package/dist/index.d.ts +19311 -15
  5. package/dist/index.mjs +406 -101
  6. package/dist/index.mjs.map +1 -1
  7. package/package.json +2 -2
  8. package/dist/generated-api-types/2025-04/admin.generated.d.ts +0 -420
  9. package/dist/generated-api-types/2025-04/admin.generated.d.ts.map +0 -1
  10. package/dist/generated-api-types/2025-04/admin.generated.js +0 -5
  11. package/dist/generated-api-types/2025-04/admin.generated.js.map +0 -1
  12. package/dist/generated-api-types/2025-04/admin.types.d.ts +0 -60045
  13. package/dist/generated-api-types/2025-04/admin.types.d.ts.map +0 -1
  14. package/dist/generated-api-types/2025-04/admin.types.js +0 -11451
  15. package/dist/generated-api-types/2025-04/admin.types.js.map +0 -1
  16. package/dist/index.d.ts.map +0 -1
  17. package/dist/index.js +0 -15
  18. package/dist/index.js.map +0 -1
  19. package/dist/mutations/customers/deleteCustomerById.d.ts +0 -2
  20. package/dist/mutations/customers/deleteCustomerById.d.ts.map +0 -1
  21. package/dist/mutations/customers/deleteCustomerById.js +0 -35
  22. package/dist/mutations/customers/deleteCustomerById.js.map +0 -1
  23. package/dist/mutations/customers/deleteCustomerById.mock.d.ts +0 -4
  24. package/dist/mutations/customers/deleteCustomerById.mock.d.ts.map +0 -1
  25. package/dist/mutations/customers/deleteCustomerById.mock.js +0 -8
  26. package/dist/mutations/customers/deleteCustomerById.mock.js.map +0 -1
  27. package/dist/mutations/customers/deleteCustomerById.test.d.ts +0 -2
  28. package/dist/mutations/customers/deleteCustomerById.test.d.ts.map +0 -1
  29. package/dist/mutations/customers/deleteCustomerById.test.js +0 -10
  30. package/dist/mutations/customers/deleteCustomerById.test.js.map +0 -1
  31. package/dist/mutations/orders/cancelOrderById.d.ts +0 -23
  32. package/dist/mutations/orders/cancelOrderById.d.ts.map +0 -1
  33. package/dist/mutations/orders/cancelOrderById.js +0 -63
  34. package/dist/mutations/orders/cancelOrderById.js.map +0 -1
  35. package/dist/mutations/orders/cancelOrderById.mock.d.ts +0 -15
  36. package/dist/mutations/orders/cancelOrderById.mock.d.ts.map +0 -1
  37. package/dist/mutations/orders/cancelOrderById.mock.js +0 -17
  38. package/dist/mutations/orders/cancelOrderById.mock.js.map +0 -1
  39. package/dist/mutations/orders/cancelOrderById.test.d.ts +0 -2
  40. package/dist/mutations/orders/cancelOrderById.test.d.ts.map +0 -1
  41. package/dist/mutations/orders/cancelOrderById.test.js +0 -42
  42. package/dist/mutations/orders/cancelOrderById.test.js.map +0 -1
  43. package/dist/mutations/productVariantsBulkUpdate/connectMetaObjectToProductVariant.d.ts +0 -4
  44. package/dist/mutations/productVariantsBulkUpdate/connectMetaObjectToProductVariant.d.ts.map +0 -1
  45. package/dist/mutations/productVariantsBulkUpdate/connectMetaObjectToProductVariant.js +0 -56
  46. package/dist/mutations/productVariantsBulkUpdate/connectMetaObjectToProductVariant.js.map +0 -1
  47. package/dist/mutations/productVariantsBulkUpdate/connectMetaObjectToProductVariant.mock.d.ts +0 -3
  48. package/dist/mutations/productVariantsBulkUpdate/connectMetaObjectToProductVariant.mock.d.ts.map +0 -1
  49. package/dist/mutations/productVariantsBulkUpdate/connectMetaObjectToProductVariant.mock.js +0 -11
  50. package/dist/mutations/productVariantsBulkUpdate/connectMetaObjectToProductVariant.mock.js.map +0 -1
  51. package/dist/mutations/productVariantsBulkUpdate/connectMetaObjectToProductVariant.test.d.ts +0 -2
  52. package/dist/mutations/productVariantsBulkUpdate/connectMetaObjectToProductVariant.test.d.ts.map +0 -1
  53. package/dist/mutations/productVariantsBulkUpdate/connectMetaObjectToProductVariant.test.js +0 -11
  54. package/dist/mutations/productVariantsBulkUpdate/connectMetaObjectToProductVariant.test.js.map +0 -1
  55. package/dist/queries/customers/getCustomersByEmail.d.ts +0 -13
  56. package/dist/queries/customers/getCustomersByEmail.d.ts.map +0 -1
  57. package/dist/queries/customers/getCustomersByEmail.js +0 -26
  58. package/dist/queries/customers/getCustomersByEmail.js.map +0 -1
  59. package/dist/queries/customers/getCustomersByEmail.mock.d.ts +0 -8
  60. package/dist/queries/customers/getCustomersByEmail.mock.d.ts.map +0 -1
  61. package/dist/queries/customers/getCustomersByEmail.mock.js +0 -54
  62. package/dist/queries/customers/getCustomersByEmail.mock.js.map +0 -1
  63. package/dist/queries/customers/getCustomersByEmail.queries.d.ts +0 -2
  64. package/dist/queries/customers/getCustomersByEmail.queries.d.ts.map +0 -1
  65. package/dist/queries/customers/getCustomersByEmail.queries.js +0 -41
  66. package/dist/queries/customers/getCustomersByEmail.queries.js.map +0 -1
  67. package/dist/queries/customers/getCustomersByEmail.test.d.ts +0 -2
  68. package/dist/queries/customers/getCustomersByEmail.test.d.ts.map +0 -1
  69. package/dist/queries/customers/getCustomersByEmail.test.js +0 -29
  70. package/dist/queries/customers/getCustomersByEmail.test.js.map +0 -1
  71. package/dist/queries/fulfillmentOrders/getFulfillmentOrdersByOrderId.d.ts +0 -14
  72. package/dist/queries/fulfillmentOrders/getFulfillmentOrdersByOrderId.d.ts.map +0 -1
  73. package/dist/queries/fulfillmentOrders/getFulfillmentOrdersByOrderId.js +0 -27
  74. package/dist/queries/fulfillmentOrders/getFulfillmentOrdersByOrderId.js.map +0 -1
  75. package/dist/queries/fulfillmentOrders/getFulfillmentOrdersByOrderId.mock.d.ts +0 -12
  76. package/dist/queries/fulfillmentOrders/getFulfillmentOrdersByOrderId.mock.d.ts.map +0 -1
  77. package/dist/queries/fulfillmentOrders/getFulfillmentOrdersByOrderId.mock.js +0 -41
  78. package/dist/queries/fulfillmentOrders/getFulfillmentOrdersByOrderId.mock.js.map +0 -1
  79. package/dist/queries/fulfillmentOrders/getFulfillmentOrdersByOrderId.queries.d.ts +0 -2
  80. package/dist/queries/fulfillmentOrders/getFulfillmentOrdersByOrderId.queries.d.ts.map +0 -1
  81. package/dist/queries/fulfillmentOrders/getFulfillmentOrdersByOrderId.queries.js +0 -28
  82. package/dist/queries/fulfillmentOrders/getFulfillmentOrdersByOrderId.queries.js.map +0 -1
  83. package/dist/queries/fulfillmentOrders/getFulfillmentOrdersByOrderId.test.d.ts +0 -2
  84. package/dist/queries/fulfillmentOrders/getFulfillmentOrdersByOrderId.test.d.ts.map +0 -1
  85. package/dist/queries/fulfillmentOrders/getFulfillmentOrdersByOrderId.test.js +0 -19
  86. package/dist/queries/fulfillmentOrders/getFulfillmentOrdersByOrderId.test.js.map +0 -1
  87. package/dist/queries/fulfillments/getFulfillmentById.d.ts +0 -12
  88. package/dist/queries/fulfillments/getFulfillmentById.d.ts.map +0 -1
  89. package/dist/queries/fulfillments/getFulfillmentById.js +0 -27
  90. package/dist/queries/fulfillments/getFulfillmentById.js.map +0 -1
  91. package/dist/queries/fulfillments/getFulfillmentById.mock.d.ts +0 -21
  92. package/dist/queries/fulfillments/getFulfillmentById.mock.d.ts.map +0 -1
  93. package/dist/queries/fulfillments/getFulfillmentById.mock.js +0 -83
  94. package/dist/queries/fulfillments/getFulfillmentById.mock.js.map +0 -1
  95. package/dist/queries/fulfillments/getFulfillmentById.queries.d.ts +0 -2
  96. package/dist/queries/fulfillments/getFulfillmentById.queries.d.ts.map +0 -1
  97. package/dist/queries/fulfillments/getFulfillmentById.queries.js +0 -60
  98. package/dist/queries/fulfillments/getFulfillmentById.queries.js.map +0 -1
  99. package/dist/queries/fulfillments/getFulfillmentById.test.d.ts +0 -2
  100. package/dist/queries/fulfillments/getFulfillmentById.test.d.ts.map +0 -1
  101. package/dist/queries/fulfillments/getFulfillmentById.test.js +0 -37
  102. package/dist/queries/fulfillments/getFulfillmentById.test.js.map +0 -1
  103. package/dist/queries/fulfillments/getFulfillmentTrackingIds.d.ts +0 -14
  104. package/dist/queries/fulfillments/getFulfillmentTrackingIds.d.ts.map +0 -1
  105. package/dist/queries/fulfillments/getFulfillmentTrackingIds.js +0 -36
  106. package/dist/queries/fulfillments/getFulfillmentTrackingIds.js.map +0 -1
  107. package/dist/queries/fulfillments/getFulfillmentTrackingIds.mock.d.ts +0 -5
  108. package/dist/queries/fulfillments/getFulfillmentTrackingIds.mock.d.ts.map +0 -1
  109. package/dist/queries/fulfillments/getFulfillmentTrackingIds.mock.js +0 -20
  110. package/dist/queries/fulfillments/getFulfillmentTrackingIds.mock.js.map +0 -1
  111. package/dist/queries/fulfillments/getFulfillmentTrackingIds.queries.d.ts +0 -2
  112. package/dist/queries/fulfillments/getFulfillmentTrackingIds.queries.d.ts.map +0 -1
  113. package/dist/queries/fulfillments/getFulfillmentTrackingIds.queries.js +0 -13
  114. package/dist/queries/fulfillments/getFulfillmentTrackingIds.queries.js.map +0 -1
  115. package/dist/queries/fulfillments/getFulfillmentTrackingIds.test.d.ts +0 -2
  116. package/dist/queries/fulfillments/getFulfillmentTrackingIds.test.d.ts.map +0 -1
  117. package/dist/queries/fulfillments/getFulfillmentTrackingIds.test.js +0 -61
  118. package/dist/queries/fulfillments/getFulfillmentTrackingIds.test.js.map +0 -1
  119. package/dist/queries/orders/getOrderById.d.ts +0 -136
  120. package/dist/queries/orders/getOrderById.d.ts.map +0 -1
  121. package/dist/queries/orders/getOrderById.js +0 -126
  122. package/dist/queries/orders/getOrderById.js.map +0 -1
  123. package/dist/queries/orders/getOrderById.mock.d.ts +0 -82
  124. package/dist/queries/orders/getOrderById.mock.d.ts.map +0 -1
  125. package/dist/queries/orders/getOrderById.mock.js +0 -205
  126. package/dist/queries/orders/getOrderById.mock.js.map +0 -1
  127. package/dist/queries/orders/getOrderById.queries.d.ts +0 -3
  128. package/dist/queries/orders/getOrderById.queries.d.ts.map +0 -1
  129. package/dist/queries/orders/getOrderById.queries.js +0 -175
  130. package/dist/queries/orders/getOrderById.queries.js.map +0 -1
  131. package/dist/queries/orders/getOrderById.test.d.ts +0 -2
  132. package/dist/queries/orders/getOrderById.test.d.ts.map +0 -1
  133. package/dist/queries/orders/getOrderById.test.js +0 -46
  134. package/dist/queries/orders/getOrderById.test.js.map +0 -1
  135. package/dist/queries/orders/getOrderByName.d.ts +0 -72
  136. package/dist/queries/orders/getOrderByName.d.ts.map +0 -1
  137. package/dist/queries/orders/getOrderByName.js +0 -117
  138. package/dist/queries/orders/getOrderByName.js.map +0 -1
  139. package/dist/queries/orders/getOrderByName.mock.d.ts +0 -21
  140. package/dist/queries/orders/getOrderByName.mock.d.ts.map +0 -1
  141. package/dist/queries/orders/getOrderByName.mock.js +0 -55
  142. package/dist/queries/orders/getOrderByName.mock.js.map +0 -1
  143. package/dist/queries/orders/getOrderByName.queries.d.ts +0 -3
  144. package/dist/queries/orders/getOrderByName.queries.d.ts.map +0 -1
  145. package/dist/queries/orders/getOrderByName.queries.js +0 -335
  146. package/dist/queries/orders/getOrderByName.queries.js.map +0 -1
  147. package/dist/queries/orders/getOrderByName.test.d.ts +0 -2
  148. package/dist/queries/orders/getOrderByName.test.d.ts.map +0 -1
  149. package/dist/queries/orders/getOrderByName.test.js +0 -30
  150. package/dist/queries/orders/getOrderByName.test.js.map +0 -1
  151. package/dist/queries/orders/getOrderCancellationInfo.d.ts +0 -12
  152. package/dist/queries/orders/getOrderCancellationInfo.d.ts.map +0 -1
  153. package/dist/queries/orders/getOrderCancellationInfo.js +0 -35
  154. package/dist/queries/orders/getOrderCancellationInfo.js.map +0 -1
  155. package/dist/queries/orders/getOrderCancellationInfo.mock.d.ts +0 -6
  156. package/dist/queries/orders/getOrderCancellationInfo.mock.d.ts.map +0 -1
  157. package/dist/queries/orders/getOrderCancellationInfo.mock.js +0 -29
  158. package/dist/queries/orders/getOrderCancellationInfo.mock.js.map +0 -1
  159. package/dist/queries/orders/getOrderCancellationInfo.queries.d.ts +0 -2
  160. package/dist/queries/orders/getOrderCancellationInfo.queries.d.ts.map +0 -1
  161. package/dist/queries/orders/getOrderCancellationInfo.queries.js +0 -15
  162. package/dist/queries/orders/getOrderCancellationInfo.queries.js.map +0 -1
  163. package/dist/queries/orders/getOrderCancellationInfo.test.d.ts +0 -2
  164. package/dist/queries/orders/getOrderCancellationInfo.test.d.ts.map +0 -1
  165. package/dist/queries/orders/getOrderCancellationInfo.test.js +0 -34
  166. package/dist/queries/orders/getOrderCancellationInfo.test.js.map +0 -1
  167. package/dist/queries/orders/getOrderPaymentDetails.d.ts +0 -12
  168. package/dist/queries/orders/getOrderPaymentDetails.d.ts.map +0 -1
  169. package/dist/queries/orders/getOrderPaymentDetails.js +0 -26
  170. package/dist/queries/orders/getOrderPaymentDetails.js.map +0 -1
  171. package/dist/queries/orders/getOrderPaymentDetails.mock.d.ts +0 -10
  172. package/dist/queries/orders/getOrderPaymentDetails.mock.d.ts.map +0 -1
  173. package/dist/queries/orders/getOrderPaymentDetails.mock.js +0 -22
  174. package/dist/queries/orders/getOrderPaymentDetails.mock.js.map +0 -1
  175. package/dist/queries/orders/getOrderPaymentDetails.queries.d.ts +0 -2
  176. package/dist/queries/orders/getOrderPaymentDetails.queries.d.ts.map +0 -1
  177. package/dist/queries/orders/getOrderPaymentDetails.queries.js +0 -21
  178. package/dist/queries/orders/getOrderPaymentDetails.queries.js.map +0 -1
  179. package/dist/queries/orders/getOrderPaymentDetails.test.d.ts +0 -2
  180. package/dist/queries/orders/getOrderPaymentDetails.test.d.ts.map +0 -1
  181. package/dist/queries/orders/getOrderPaymentDetails.test.js +0 -19
  182. package/dist/queries/orders/getOrderPaymentDetails.test.js.map +0 -1
  183. package/dist/queries/orders/getOrdersByCustomerId.d.ts +0 -15
  184. package/dist/queries/orders/getOrdersByCustomerId.d.ts.map +0 -1
  185. package/dist/queries/orders/getOrdersByCustomerId.js +0 -32
  186. package/dist/queries/orders/getOrdersByCustomerId.js.map +0 -1
  187. package/dist/queries/orders/getOrdersByCustomerId.mock.d.ts +0 -15
  188. package/dist/queries/orders/getOrdersByCustomerId.mock.d.ts.map +0 -1
  189. package/dist/queries/orders/getOrdersByCustomerId.mock.js +0 -76
  190. package/dist/queries/orders/getOrdersByCustomerId.mock.js.map +0 -1
  191. package/dist/queries/orders/getOrdersByCustomerId.queries.d.ts +0 -2
  192. package/dist/queries/orders/getOrdersByCustomerId.queries.d.ts.map +0 -1
  193. package/dist/queries/orders/getOrdersByCustomerId.queries.js +0 -41
  194. package/dist/queries/orders/getOrdersByCustomerId.queries.js.map +0 -1
  195. package/dist/queries/orders/getOrdersByCustomerId.test.d.ts +0 -2
  196. package/dist/queries/orders/getOrdersByCustomerId.test.d.ts.map +0 -1
  197. package/dist/queries/orders/getOrdersByCustomerId.test.js +0 -33
  198. package/dist/queries/orders/getOrdersByCustomerId.test.js.map +0 -1
  199. package/dist/queries/productVariants/getLeanProductVariants.d.ts +0 -33
  200. package/dist/queries/productVariants/getLeanProductVariants.d.ts.map +0 -1
  201. package/dist/queries/productVariants/getLeanProductVariants.js +0 -81
  202. package/dist/queries/productVariants/getLeanProductVariants.js.map +0 -1
  203. package/dist/queries/productVariants/getLeanProductVariants.mock.d.ts +0 -3
  204. package/dist/queries/productVariants/getLeanProductVariants.mock.d.ts.map +0 -1
  205. package/dist/queries/productVariants/getLeanProductVariants.mock.js +0 -33
  206. package/dist/queries/productVariants/getLeanProductVariants.mock.js.map +0 -1
  207. package/dist/queries/productVariants/getLeanProductVariants.test.d.ts +0 -2
  208. package/dist/queries/productVariants/getLeanProductVariants.test.d.ts.map +0 -1
  209. package/dist/queries/productVariants/getLeanProductVariants.test.js +0 -38
  210. package/dist/queries/productVariants/getLeanProductVariants.test.js.map +0 -1
  211. package/dist/utils/logger.d.ts +0 -11
  212. package/dist/utils/logger.d.ts.map +0 -1
  213. package/dist/utils/logger.js +0 -50
  214. package/dist/utils/logger.js.map +0 -1
  215. package/dist/utils/mswHandlers.d.ts +0 -8
  216. package/dist/utils/mswHandlers.d.ts.map +0 -1
  217. package/dist/utils/mswHandlers.js +0 -67
  218. package/dist/utils/mswHandlers.js.map +0 -1
  219. package/dist/utils/parseGid.d.ts +0 -9
  220. package/dist/utils/parseGid.d.ts.map +0 -1
  221. package/dist/utils/parseGid.js +0 -12
  222. package/dist/utils/parseGid.js.map +0 -1
  223. package/dist/utils/parseGid.test.d.ts +0 -2
  224. package/dist/utils/parseGid.test.d.ts.map +0 -1
  225. package/dist/utils/parseGid.test.js +0 -26
  226. package/dist/utils/parseGid.test.js.map +0 -1
  227. package/dist/utils/shopifyClient.d.ts +0 -6
  228. package/dist/utils/shopifyClient.d.ts.map +0 -1
  229. package/dist/utils/shopifyClient.js +0 -82
  230. package/dist/utils/shopifyClient.js.map +0 -1
  231. package/dist/utils/shopifyClient.mock.d.ts +0 -3
  232. package/dist/utils/shopifyClient.mock.d.ts.map +0 -1
  233. package/dist/utils/shopifyClient.mock.js +0 -19
  234. package/dist/utils/shopifyClient.mock.js.map +0 -1
  235. package/dist/utils/shopifyClient.test.d.ts +0 -2
  236. package/dist/utils/shopifyClient.test.d.ts.map +0 -1
  237. package/dist/utils/shopifyClient.test.js +0 -27
  238. package/dist/utils/shopifyClient.test.js.map +0 -1
  239. package/dist/utils/shopifyFetch.d.ts +0 -45
  240. package/dist/utils/shopifyFetch.d.ts.map +0 -1
  241. package/dist/utils/shopifyFetch.js +0 -89
  242. package/dist/utils/shopifyFetch.js.map +0 -1
  243. package/dist/utils/shopifyFetch.test.d.ts +0 -2
  244. package/dist/utils/shopifyFetch.test.d.ts.map +0 -1
  245. package/dist/utils/shopifyFetch.test.js +0 -17
  246. package/dist/utils/shopifyFetch.test.js.map +0 -1
  247. package/dist/utils/test-setup.d.ts +0 -2
  248. package/dist/utils/test-setup.d.ts.map +0 -1
  249. package/dist/utils/test-setup.js +0 -13
  250. package/dist/utils/test-setup.js.map +0 -1
  251. package/dist/utils/zod.d.ts +0 -3
  252. package/dist/utils/zod.d.ts.map +0 -1
  253. package/dist/utils/zod.js +0 -19
  254. package/dist/utils/zod.js.map +0 -1
@@ -1,63 +0,0 @@
1
- import { gql, logger } from '../../utils/logger.js';
2
- import { convertIdIntoGid, fetchShopifyGraphql, } from '../../utils/shopifyFetch.js';
3
- const mutation = gql `#graphql
4
- mutation orderCancel($orderId: ID!) {
5
- orderCancel(
6
- orderId: $orderId
7
- refund: true
8
- restock: false
9
- reason: CUSTOMER
10
- notifyCustomer: true
11
- ) {
12
- orderCancelUserErrors {
13
- code
14
- field
15
- message
16
- }
17
- }
18
- }
19
- `;
20
- /**
21
- * Cancel an order in Shopify.
22
- *
23
- * @param orderId - The order ID (numeric, bigint, or GID string)
24
- * @returns Promise resolving to true on success
25
- * @throws {ShopifyUserError} When cancellation fails (e.g., ORDER_ALREADY_CANCELLED)
26
- *
27
- * @example
28
- * // Success case
29
- * await cancelOrderById(12345678901234)
30
- *
31
- * // Error handling
32
- * import { ShopifyUserError } from '@ehrenkind/shopify-lib'
33
- * try {
34
- * await cancelOrderById(orderId)
35
- * } catch (error) {
36
- * if (error instanceof ShopifyUserError) {
37
- * const alreadyCancelled = error.errors.some(e => e.code === 'ORDER_ALREADY_CANCELLED')
38
- * }
39
- * }
40
- */
41
- export async function cancelOrderById(orderId) {
42
- const orderGid = typeof orderId === 'string'
43
- ? orderId
44
- : convertIdIntoGid(typeof orderId === 'number' ? BigInt(orderId) : orderId, 'Order');
45
- logger.debug(`Cancelling order ${orderGid}`);
46
- const variables = { orderId: orderGid };
47
- await fetchShopifyGraphql({
48
- query: mutation,
49
- variables,
50
- dataExtractor: (data) => {
51
- if (!data.orderCancel) {
52
- throw new Error("GraphQL response missing 'orderCancel' field");
53
- }
54
- return {
55
- nodes: [{ success: true }],
56
- userErrors: data.orderCancel.orderCancelUserErrors,
57
- };
58
- },
59
- });
60
- logger.debug(`Order ${orderGid} cancelled successfully`);
61
- return true;
62
- }
63
- //# sourceMappingURL=cancelOrderById.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cancelOrderById.js","sourceRoot":"","sources":["../../../src/mutations/orders/cancelOrderById.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,EACL,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,6BAA6B,CAAA;AAIpC,MAAM,QAAQ,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;CAgBnB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,OAAiC;IAEjC,MAAM,QAAQ,GACZ,OAAO,OAAO,KAAK,QAAQ;QACzB,CAAC,CAAC,OAAO;QACT,CAAC,CAAC,gBAAgB,CACd,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,EACvD,OAAO,CACR,CAAA;IAEP,MAAM,CAAC,KAAK,CAAC,oBAAoB,QAAQ,EAAE,CAAC,CAAA;IAE5C,MAAM,SAAS,GAAiC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAA;IAErE,MAAM,mBAAmB,CAAuC;QAC9D,KAAK,EAAE,QAAQ;QACf,SAAS;QACT,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE;YACtB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;YACjE,CAAC;YACD,OAAO;gBACL,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;gBAC1B,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,qBAAqB;aACnD,CAAA;QACH,CAAC;KACF,CAAC,CAAA;IAEF,MAAM,CAAC,KAAK,CAAC,SAAS,QAAQ,yBAAyB,CAAC,CAAA;IACxD,OAAO,IAAI,CAAA;AACb,CAAC"}
@@ -1,15 +0,0 @@
1
- export declare const orderCancelSuccessMock: {
2
- orderCancel: {
3
- orderCancelUserErrors: never[];
4
- };
5
- };
6
- export declare const orderCancelErrorMock: {
7
- orderCancel: {
8
- orderCancelUserErrors: {
9
- code: string;
10
- field: string[];
11
- message: string;
12
- }[];
13
- };
14
- };
15
- //# sourceMappingURL=cancelOrderById.mock.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cancelOrderById.mock.d.ts","sourceRoot":"","sources":["../../../src/mutations/orders/cancelOrderById.mock.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,sBAAsB;;;;CAIlC,CAAA;AAED,eAAO,MAAM,oBAAoB;;;;;;;;CAUhC,CAAA"}
@@ -1,17 +0,0 @@
1
- export const orderCancelSuccessMock = {
2
- orderCancel: {
3
- orderCancelUserErrors: [],
4
- },
5
- };
6
- export const orderCancelErrorMock = {
7
- orderCancel: {
8
- orderCancelUserErrors: [
9
- {
10
- code: 'ORDER_ALREADY_CANCELLED',
11
- field: ['orderId'],
12
- message: 'Order is already cancelled',
13
- },
14
- ],
15
- },
16
- };
17
- //# sourceMappingURL=cancelOrderById.mock.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cancelOrderById.mock.js","sourceRoot":"","sources":["../../../src/mutations/orders/cancelOrderById.mock.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,WAAW,EAAE;QACX,qBAAqB,EAAE,EAAE;KAC1B;CACF,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,WAAW,EAAE;QACX,qBAAqB,EAAE;YACrB;gBACE,IAAI,EAAE,yBAAyB;gBAC/B,KAAK,EAAE,CAAC,SAAS,CAAC;gBAClB,OAAO,EAAE,4BAA4B;aACtC;SACF;KACF;CACF,CAAA"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=cancelOrderById.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cancelOrderById.test.d.ts","sourceRoot":"","sources":["../../../src/mutations/orders/cancelOrderById.test.ts"],"names":[],"mappings":""}
@@ -1,42 +0,0 @@
1
- import { describe, expect, it } from 'vitest';
2
- import { createGqlResponse, graphql, server } from '../../utils/mswHandlers.js';
3
- import { ShopifyUserError } from '../../utils/shopifyFetch.js';
4
- import { cancelOrderById } from './cancelOrderById.js';
5
- import { orderCancelErrorMock } from './cancelOrderById.mock.js';
6
- describe('cancelOrderById', () => {
7
- it('returns true when order is cancelled with GID string', async () => {
8
- const result = await cancelOrderById('gid://shopify/Order/123');
9
- expect(result).toBe(true);
10
- });
11
- it('accepts numeric order ID and converts to GID', async () => {
12
- const result = await cancelOrderById(123);
13
- expect(result).toBe(true);
14
- });
15
- it('accepts bigint order ID and converts to GID', async () => {
16
- const result = await cancelOrderById(12345678901234n);
17
- expect(result).toBe(true);
18
- });
19
- it('throws ShopifyUserError when order cancellation fails', async () => {
20
- server.use(graphql.mutation('orderCancel', createGqlResponse(orderCancelErrorMock)));
21
- await expect(cancelOrderById('gid://shopify/Order/456')).rejects.toThrow(ShopifyUserError);
22
- });
23
- it('preserves error details in ShopifyUserError', async () => {
24
- server.use(graphql.mutation('orderCancel', createGqlResponse(orderCancelErrorMock)));
25
- try {
26
- await cancelOrderById('gid://shopify/Order/456');
27
- expect.fail('Expected ShopifyUserError to be thrown');
28
- }
29
- catch (error) {
30
- expect(error).toBeInstanceOf(ShopifyUserError);
31
- if (error instanceof ShopifyUserError) {
32
- expect(error.errors).toHaveLength(1);
33
- expect(error.errors[0]).toEqual({
34
- code: 'ORDER_ALREADY_CANCELLED',
35
- field: ['orderId'],
36
- message: 'Order is already cancelled',
37
- });
38
- }
39
- }
40
- });
41
- });
42
- //# sourceMappingURL=cancelOrderById.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cancelOrderById.test.js","sourceRoot":"","sources":["../../../src/mutations/orders/cancelOrderById.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAC7C,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAEhE,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;QACpE,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,yBAAyB,CAAC,CAAA;QAC/D,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,CAAA;QACzC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC3D,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,eAAe,CAAC,CAAA;QACrD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;QACrE,MAAM,CAAC,GAAG,CACR,OAAO,CAAC,QAAQ,CAAC,aAAa,EAAE,iBAAiB,CAAC,oBAAoB,CAAC,CAAC,CACzE,CAAA;QAED,MAAM,MAAM,CAAC,eAAe,CAAC,yBAAyB,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CACtE,gBAAgB,CACjB,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC3D,MAAM,CAAC,GAAG,CACR,OAAO,CAAC,QAAQ,CAAC,aAAa,EAAE,iBAAiB,CAAC,oBAAoB,CAAC,CAAC,CACzE,CAAA;QAED,IAAI,CAAC;YACH,MAAM,eAAe,CAAC,yBAAyB,CAAC,CAAA;YAChD,MAAM,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAA;QACvD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAA;YAC9C,IAAI,KAAK,YAAY,gBAAgB,EAAE,CAAC;gBACtC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;gBACpC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;oBAC9B,IAAI,EAAE,yBAAyB;oBAC/B,KAAK,EAAE,CAAC,SAAS,CAAC;oBAClB,OAAO,EAAE,4BAA4B;iBACtC,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,4 +0,0 @@
1
- import z from 'zod';
2
- export declare const ConnectMetaObjectToProductVariantReturn: z.ZodArray<z.ZodString, "many">;
3
- export declare function connectMetaObjectToProductVariant(productId: string, variantId: string, metaObjectId: string, metaObjectKey: string): Promise<z.infer<typeof ConnectMetaObjectToProductVariantReturn>>;
4
- //# sourceMappingURL=connectMetaObjectToProductVariant.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"connectMetaObjectToProductVariant.d.ts","sourceRoot":"","sources":["../../../src/mutations/productVariantsBulkUpdate/connectMetaObjectToProductVariant.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAA;AASnB,eAAO,MAAM,uCAAuC,iCAAsB,CAAA;AAS1E,wBAAsB,iCAAiC,CACrD,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,uCAAuC,CAAC,CAAC,CA4DlE"}
@@ -1,56 +0,0 @@
1
- import z from 'zod';
2
- import { gql } from '../../utils/logger';
3
- import { fetchShopifyGraphql } from '../../utils/shopifyFetch';
4
- import { returnOutputParsed } from '../../utils/zod';
5
- export const ConnectMetaObjectToProductVariantReturn = z.array(z.string());
6
- export async function connectMetaObjectToProductVariant(productId, variantId, metaObjectId, metaObjectKey) {
7
- const mutation = gql `#graphql
8
- mutation connectMetaObjectToProductVariant($productId: ID!, $variantId: ID!, $metaObjectId: String!, $metaObjectKey: String!) {
9
- productVariantsBulkUpdate(
10
- productId: $productId
11
- variants: [
12
- {
13
- id: $variantId
14
- metafields: [
15
- {
16
- namespace: "custom"
17
- key: $metaObjectKey
18
- value: $metaObjectId
19
- type: "metaobject_reference"
20
- }
21
- ]
22
- }
23
- ]
24
- ) {
25
- productVariants {
26
- id
27
- }
28
- userErrors {
29
- field
30
- message
31
- }
32
- }
33
- }
34
- `;
35
- const variables = {
36
- productId,
37
- variantId,
38
- metaObjectId,
39
- metaObjectKey,
40
- };
41
- const response = await fetchShopifyGraphql({
42
- query: mutation,
43
- variables,
44
- dataExtractor: (data) => {
45
- if (!data.productVariantsBulkUpdate) {
46
- throw new Error("GraphQL response for product variants bulk update is missing the 'productVariantsBulkUpdate' field.");
47
- }
48
- return {
49
- nodes: data.productVariantsBulkUpdate.productVariants || [],
50
- userErrors: data.productVariantsBulkUpdate.userErrors,
51
- };
52
- },
53
- });
54
- return returnOutputParsed(response.map((item) => item.id), ConnectMetaObjectToProductVariantReturn);
55
- }
56
- //# sourceMappingURL=connectMetaObjectToProductVariant.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"connectMetaObjectToProductVariant.js","sourceRoot":"","sources":["../../../src/mutations/productVariantsBulkUpdate/connectMetaObjectToProductVariant.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAA;AAKnB,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAA;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAEpD,MAAM,CAAC,MAAM,uCAAuC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAA;AAS1E,MAAM,CAAC,KAAK,UAAU,iCAAiC,CACrD,SAAiB,EACjB,SAAiB,EACjB,YAAoB,EACpB,aAAqB;IAErB,MAAM,QAAQ,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BnB,CAAA;IAED,MAAM,SAAS,GAAuD;QACpE,SAAS;QACT,SAAS;QACT,YAAY;QACZ,aAAa;KACd,CAAA;IAED,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAGxC;QACA,KAAK,EAAE,QAAQ;QACf,SAAS;QACT,aAAa,EAAE,CAAC,IAA+C,EAAE,EAAE;YACjE,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC;gBACpC,MAAM,IAAI,KAAK,CACb,qGAAqG,CACtG,CAAA;YACH,CAAC;YACD,OAAO;gBACL,KAAK,EAAE,IAAI,CAAC,yBAAyB,CAAC,eAAe,IAAI,EAAE;gBAC3D,UAAU,EAAE,IAAI,CAAC,yBAAyB,CAAC,UAAU;aACtD,CAAA;QACH,CAAC;KACF,CAAC,CAAA;IAEF,OAAO,kBAAkB,CACvB,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAC/B,uCAAuC,CACxC,CAAA;AACH,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { ConnectMetaObjectToProductVariantMutation } from '../../generated-api-types/2025-04/admin.generated';
2
- export declare const connectMetaObjectToProductVariantMock: ConnectMetaObjectToProductVariantMutation;
3
- //# sourceMappingURL=connectMetaObjectToProductVariant.mock.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"connectMetaObjectToProductVariant.mock.d.ts","sourceRoot":"","sources":["../../../src/mutations/productVariantsBulkUpdate/connectMetaObjectToProductVariant.mock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yCAAyC,EAAE,MAAM,mDAAmD,CAAA;AAElH,eAAO,MAAM,qCAAqC,EAAE,yCAUjD,CAAA"}
@@ -1,11 +0,0 @@
1
- export const connectMetaObjectToProductVariantMock = {
2
- productVariantsBulkUpdate: {
3
- productVariants: [
4
- {
5
- id: 'gid://shopify/ProductVariant/1',
6
- },
7
- ],
8
- userErrors: [],
9
- },
10
- };
11
- //# sourceMappingURL=connectMetaObjectToProductVariant.mock.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"connectMetaObjectToProductVariant.mock.js","sourceRoot":"","sources":["../../../src/mutations/productVariantsBulkUpdate/connectMetaObjectToProductVariant.mock.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,qCAAqC,GAChD;IACE,yBAAyB,EAAE;QACzB,eAAe,EAAE;YACf;gBACE,EAAE,EAAE,gCAAgC;aACrC;SACF;QACD,UAAU,EAAE,EAAE;KACf;CACF,CAAA"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=connectMetaObjectToProductVariant.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"connectMetaObjectToProductVariant.test.d.ts","sourceRoot":"","sources":["../../../src/mutations/productVariantsBulkUpdate/connectMetaObjectToProductVariant.test.ts"],"names":[],"mappings":""}
@@ -1,11 +0,0 @@
1
- import { describe, expect, it } from 'vitest';
2
- import { connectMetaObjectToProductVariant } from './connectMetaObjectToProductVariant';
3
- import { connectMetaObjectToProductVariantMock } from './connectMetaObjectToProductVariant.mock';
4
- describe('productVariantsBulkUpdate', () => {
5
- const expectedResult = connectMetaObjectToProductVariantMock.productVariantsBulkUpdate?.productVariants?.map((variant) => variant.id);
6
- it('connect meta object to product (variant)', async () => {
7
- const actualResult = await connectMetaObjectToProductVariant('gid://shopify/Product/test', 'gid://shopify/ProductVariant/test', 'gid://shopify/Metaobject/test', 'erpnext_content_configuration');
8
- expect(actualResult).toEqual(expectedResult);
9
- });
10
- });
11
- //# sourceMappingURL=connectMetaObjectToProductVariant.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"connectMetaObjectToProductVariant.test.js","sourceRoot":"","sources":["../../../src/mutations/productVariantsBulkUpdate/connectMetaObjectToProductVariant.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAC7C,OAAO,EAAE,iCAAiC,EAAE,MAAM,qCAAqC,CAAA;AACvF,OAAO,EAAE,qCAAqC,EAAE,MAAM,0CAA0C,CAAA;AAEhG,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACzC,MAAM,cAAc,GAClB,qCAAqC,CAAC,yBAAyB,EAAE,eAAe,EAAE,GAAG,CACnF,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CACxB,CAAA;IAEH,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,YAAY,GAAG,MAAM,iCAAiC,CAC1D,4BAA4B,EAC5B,mCAAmC,EACnC,+BAA+B,EAC/B,+BAA+B,CAChC,CAAA;QACD,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;IAC9C,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,13 +0,0 @@
1
- import type { CustomersByEmailQuery } from '../../generated-api-types/2025-04/admin.generated.js';
2
- export type Customer = CustomersByEmailQuery['customers']['edges'][number]['node'];
3
- /**
4
- * Retrieves customers from Shopify by their email address.
5
- * Returns an empty array if no customers are found.
6
- *
7
- * @param {string} email - The email address to search for.
8
- * @param {number} limit - Maximum number of customers to return. Defaults to 10.
9
- * @returns {Promise<Customer[]>} A promise that resolves to an array of customers.
10
- * @throws {Error} If the GraphQL query fails or if the response structure is invalid.
11
- */
12
- export declare function getCustomersByEmail(email: string, limit?: number): Promise<Customer[]>;
13
- //# sourceMappingURL=getCustomersByEmail.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getCustomersByEmail.d.ts","sourceRoot":"","sources":["../../../src/queries/customers/getCustomersByEmail.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EAEtB,MAAM,sDAAsD,CAAA;AAM7D,MAAM,MAAM,QAAQ,GAClB,qBAAqB,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAA;AAE7D;;;;;;;;GAQG;AACH,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,MAAM,EACb,KAAK,SAAK,GACT,OAAO,CAAC,QAAQ,EAAE,CAAC,CAgBrB"}
@@ -1,26 +0,0 @@
1
- import { logger } from '../../utils/logger.js';
2
- import { fetchShopifyGraphql } from '../../utils/shopifyFetch.js';
3
- import { queryCustomersByEmail } from './getCustomersByEmail.queries.js';
4
- /**
5
- * Retrieves customers from Shopify by their email address.
6
- * Returns an empty array if no customers are found.
7
- *
8
- * @param {string} email - The email address to search for.
9
- * @param {number} limit - Maximum number of customers to return. Defaults to 10.
10
- * @returns {Promise<Customer[]>} A promise that resolves to an array of customers.
11
- * @throws {Error} If the GraphQL query fails or if the response structure is invalid.
12
- */
13
- export async function getCustomersByEmail(email, limit = 10) {
14
- const variables = {
15
- query: `email:${email}`,
16
- first: limit,
17
- };
18
- const response = await fetchShopifyGraphql({
19
- query: queryCustomersByEmail,
20
- variables,
21
- });
22
- const customers = response.customers.edges.map((edge) => edge.node);
23
- logger.debug(`Found ${customers.length} customers for email: ${email}`);
24
- return customers;
25
- }
26
- //# sourceMappingURL=getCustomersByEmail.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getCustomersByEmail.js","sourceRoot":"","sources":["../../../src/queries/customers/getCustomersByEmail.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAA;AAMxE;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,KAAa,EACb,KAAK,GAAG,EAAE;IAEV,MAAM,SAAS,GAAmC;QAChD,KAAK,EAAE,SAAS,KAAK,EAAE;QACvB,KAAK,EAAE,KAAK;KACb,CAAA;IAED,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAwB;QAChE,KAAK,EAAE,qBAAqB;QAC5B,SAAS;KACV,CAAC,CAAA;IAEF,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEnE,MAAM,CAAC,KAAK,CAAC,SAAS,SAAS,CAAC,MAAM,yBAAyB,KAAK,EAAE,CAAC,CAAA;IAEvE,OAAO,SAAS,CAAA;AAClB,CAAC"}
@@ -1,8 +0,0 @@
1
- import type { CustomersByEmailQuery } from '../../generated-api-types/2025-04/admin.generated';
2
- export declare const customersByEmailMock: CustomersByEmailQuery;
3
- export declare const expectedCustomersByEmail: (Pick<import("../../generated-api-types/2025-04/admin.types").Customer, "id" | "email" | "firstName" | "lastName" | "numberOfOrders"> & {
4
- amountSpent: Pick<import("../../generated-api-types/2025-04/admin.types").MoneyV2, "amount" | "currencyCode">;
5
- defaultAddress?: import("../../generated-api-types/2025-04/admin.types").Maybe<Pick<import("../../generated-api-types/2025-04/admin.types").MailingAddress, "id" | "address1" | "address2" | "city" | "province" | "country" | "zip" | "phone">>;
6
- addresses: Array<Pick<import("../../generated-api-types/2025-04/admin.types").MailingAddress, "id" | "address1" | "address2" | "city" | "province" | "country" | "zip" | "phone">>;
7
- })[];
8
- //# sourceMappingURL=getCustomersByEmail.mock.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getCustomersByEmail.mock.d.ts","sourceRoot":"","sources":["../../../src/queries/customers/getCustomersByEmail.mock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mDAAmD,CAAA;AAG9F,eAAO,MAAM,oBAAoB,EAAE,qBAkDlC,CAAA;AAED,eAAO,MAAM,wBAAwB;;;;IAC0B,CAAA"}
@@ -1,54 +0,0 @@
1
- import { CurrencyCode } from '../../generated-api-types/2025-04/admin.types';
2
- export const customersByEmailMock = {
3
- customers: {
4
- edges: [
5
- {
6
- node: {
7
- id: 'gid://shopify/Customer/98765432101234',
8
- email: 'john.doe@example.com',
9
- firstName: 'John',
10
- lastName: 'Doe',
11
- numberOfOrders: 5,
12
- amountSpent: {
13
- amount: '695.0',
14
- currencyCode: CurrencyCode.Eur,
15
- },
16
- defaultAddress: {
17
- id: 'gid://shopify/MailingAddress/111111111111',
18
- address1: '123 Main Street',
19
- address2: 'Apt 4B',
20
- city: 'Berlin',
21
- province: 'Berlin',
22
- country: 'Germany',
23
- zip: '10115',
24
- phone: '+49123456789',
25
- },
26
- addresses: [
27
- {
28
- id: 'gid://shopify/MailingAddress/111111111111',
29
- address1: '123 Main Street',
30
- address2: 'Apt 4B',
31
- city: 'Berlin',
32
- province: 'Berlin',
33
- country: 'Germany',
34
- zip: '10115',
35
- phone: '+49123456789',
36
- },
37
- {
38
- id: 'gid://shopify/MailingAddress/222222222222',
39
- address1: '456 Work Ave',
40
- address2: null,
41
- city: 'Munich',
42
- province: 'Bavaria',
43
- country: 'Germany',
44
- zip: '80331',
45
- phone: '+49987654321',
46
- },
47
- ],
48
- },
49
- },
50
- ],
51
- },
52
- };
53
- export const expectedCustomersByEmail = customersByEmailMock.customers.edges.map((edge) => edge.node);
54
- //# sourceMappingURL=getCustomersByEmail.mock.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getCustomersByEmail.mock.js","sourceRoot":"","sources":["../../../src/queries/customers/getCustomersByEmail.mock.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,+CAA+C,CAAA;AAE5E,MAAM,CAAC,MAAM,oBAAoB,GAA0B;IACzD,SAAS,EAAE;QACT,KAAK,EAAE;YACL;gBACE,IAAI,EAAE;oBACJ,EAAE,EAAE,uCAAuC;oBAC3C,KAAK,EAAE,sBAAsB;oBAC7B,SAAS,EAAE,MAAM;oBACjB,QAAQ,EAAE,KAAK;oBACf,cAAc,EAAE,CAAC;oBACjB,WAAW,EAAE;wBACX,MAAM,EAAE,OAAO;wBACf,YAAY,EAAE,YAAY,CAAC,GAAG;qBAC/B;oBACD,cAAc,EAAE;wBACd,EAAE,EAAE,2CAA2C;wBAC/C,QAAQ,EAAE,iBAAiB;wBAC3B,QAAQ,EAAE,QAAQ;wBAClB,IAAI,EAAE,QAAQ;wBACd,QAAQ,EAAE,QAAQ;wBAClB,OAAO,EAAE,SAAS;wBAClB,GAAG,EAAE,OAAO;wBACZ,KAAK,EAAE,cAAc;qBACtB;oBACD,SAAS,EAAE;wBACT;4BACE,EAAE,EAAE,2CAA2C;4BAC/C,QAAQ,EAAE,iBAAiB;4BAC3B,QAAQ,EAAE,QAAQ;4BAClB,IAAI,EAAE,QAAQ;4BACd,QAAQ,EAAE,QAAQ;4BAClB,OAAO,EAAE,SAAS;4BAClB,GAAG,EAAE,OAAO;4BACZ,KAAK,EAAE,cAAc;yBACtB;wBACD;4BACE,EAAE,EAAE,2CAA2C;4BAC/C,QAAQ,EAAE,cAAc;4BACxB,QAAQ,EAAE,IAAI;4BACd,IAAI,EAAE,QAAQ;4BACd,QAAQ,EAAE,SAAS;4BACnB,OAAO,EAAE,SAAS;4BAClB,GAAG,EAAE,OAAO;4BACZ,KAAK,EAAE,cAAc;yBACtB;qBACF;iBACF;aACF;SACF;KACF;CACF,CAAA;AAED,MAAM,CAAC,MAAM,wBAAwB,GACnC,oBAAoB,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA"}
@@ -1,2 +0,0 @@
1
- export declare const queryCustomersByEmail: string;
2
- //# sourceMappingURL=getCustomersByEmail.queries.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getCustomersByEmail.queries.d.ts","sourceRoot":"","sources":["../../../src/queries/customers/getCustomersByEmail.queries.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,qBAAqB,QAsCjC,CAAA"}
@@ -1,41 +0,0 @@
1
- import { gql } from '../../utils/logger';
2
- export const queryCustomersByEmail = gql `#graphql
3
- query customersByEmail($query: String!, $first: Int!) {
4
- customers(first: $first, query: $query) {
5
- edges {
6
- node {
7
- id
8
- email
9
- firstName
10
- lastName
11
- numberOfOrders
12
- amountSpent {
13
- amount
14
- currencyCode
15
- }
16
- defaultAddress {
17
- id
18
- address1
19
- address2
20
- city
21
- province
22
- country
23
- zip
24
- phone
25
- }
26
- addresses {
27
- id
28
- address1
29
- address2
30
- city
31
- province
32
- country
33
- zip
34
- phone
35
- }
36
- }
37
- }
38
- }
39
- }
40
- `;
41
- //# sourceMappingURL=getCustomersByEmail.queries.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getCustomersByEmail.queries.js","sourceRoot":"","sources":["../../../src/queries/customers/getCustomersByEmail.queries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAA;AAExC,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsCvC,CAAA"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=getCustomersByEmail.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getCustomersByEmail.test.d.ts","sourceRoot":"","sources":["../../../src/queries/customers/getCustomersByEmail.test.ts"],"names":[],"mappings":""}
@@ -1,29 +0,0 @@
1
- import { graphql, passthrough } from 'msw';
2
- import { describe, expect, it } from 'vitest';
3
- import { server } from '../../utils/mswHandlers';
4
- import { getCustomersByEmail } from './getCustomersByEmail';
5
- import { expectedCustomersByEmail } from './getCustomersByEmail.mock';
6
- describe('getCustomersByEmail', () => {
7
- it('should return customers when found', async () => {
8
- const result = await getCustomersByEmail('john.doe@example.com');
9
- expect(result).toEqual(expectedCustomersByEmail);
10
- });
11
- it('should include customer addresses', async () => {
12
- const result = await getCustomersByEmail('john.doe@example.com');
13
- expect(result[0]?.addresses).toHaveLength(2);
14
- expect(result[0]?.defaultAddress?.city).toBe('Berlin');
15
- });
16
- it('should include order stats', async () => {
17
- const result = await getCustomersByEmail('john.doe@example.com');
18
- expect(result[0]?.numberOfOrders).toBe(5);
19
- expect(result[0]?.amountSpent.amount).toBe('695.0');
20
- });
21
- describe('Live', () => {
22
- it('should return empty array when no customers found', async () => {
23
- server.use(graphql.query('customersByEmail', () => passthrough()));
24
- const result = await getCustomersByEmail('nonexistent@example.com');
25
- expect(result).toEqual([]);
26
- });
27
- });
28
- });
29
- //# sourceMappingURL=getCustomersByEmail.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getCustomersByEmail.test.js","sourceRoot":"","sources":["../../../src/queries/customers/getCustomersByEmail.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,KAAK,CAAA;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAA;AAErE,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,EAAE,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;QAClD,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,sBAAsB,CAAC,CAAA;QAChE,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAA;IAClD,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,sBAAsB,CAAC,CAAA;QAChE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;QAC5C,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACxD,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;QAC1C,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,sBAAsB,CAAC,CAAA;QAChE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACzC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACrD,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE;QACpB,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;YACjE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,kBAAkB,EAAE,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAA;YAClE,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,yBAAyB,CAAC,CAAA;YACnE,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QAC5B,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,14 +0,0 @@
1
- import type { FulfillmentOrdersByOrderIdQuery } from '../../generated-api-types/2025-04/admin.generated.js';
2
- type FulfillmentOrderEdge = NonNullable<FulfillmentOrdersByOrderIdQuery['order']>['fulfillmentOrders']['edges'][number];
3
- export type FulfillmentOrder = FulfillmentOrderEdge['node'];
4
- /**
5
- * Retrieves all fulfillment orders for a given Shopify order.
6
- * Returns an empty array if no order is found or if the order has no fulfillment orders.
7
- *
8
- * @param {string | number | bigint} orderId - The Shopify order ID. Can be a GID string (e.g., "gid://shopify/Order/123456789") or a numeric ID (e.g., 123456789 or 123456789n).
9
- * @returns {Promise<FulfillmentOrder[]>} A promise that resolves to an array of fulfillment orders.
10
- * @throws {Error} If the GraphQL query fails or if the response structure is invalid.
11
- */
12
- export declare function getFulfillmentOrdersByOrderId(orderId: string | number | bigint): Promise<FulfillmentOrder[]>;
13
- export {};
14
- //# sourceMappingURL=getFulfillmentOrdersByOrderId.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getFulfillmentOrdersByOrderId.d.ts","sourceRoot":"","sources":["../../../src/queries/fulfillmentOrders/getFulfillmentOrdersByOrderId.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,+BAA+B,EAEhC,MAAM,sDAAsD,CAAA;AAS7D,KAAK,oBAAoB,GAAG,WAAW,CACrC,+BAA+B,CAAC,OAAO,CAAC,CACzC,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAA;AAEvC,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAA;AAE3D;;;;;;;GAOG;AACH,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAChC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAsB7B"}
@@ -1,27 +0,0 @@
1
- import { logger } from '../../utils/logger.js';
2
- import { convertIdIntoGid, fetchShopifyGraphql, } from '../../utils/shopifyFetch.js';
3
- import { queryFulfillmentOrdersByOrderId } from './getFulfillmentOrdersByOrderId.queries.js';
4
- /**
5
- * Retrieves all fulfillment orders for a given Shopify order.
6
- * Returns an empty array if no order is found or if the order has no fulfillment orders.
7
- *
8
- * @param {string | number | bigint} orderId - The Shopify order ID. Can be a GID string (e.g., "gid://shopify/Order/123456789") or a numeric ID (e.g., 123456789 or 123456789n).
9
- * @returns {Promise<FulfillmentOrder[]>} A promise that resolves to an array of fulfillment orders.
10
- * @throws {Error} If the GraphQL query fails or if the response structure is invalid.
11
- */
12
- export async function getFulfillmentOrdersByOrderId(orderId) {
13
- const gid = typeof orderId === 'string'
14
- ? orderId
15
- : convertIdIntoGid(typeof orderId === 'number' ? BigInt(orderId) : orderId, 'Order');
16
- const variables = { orderId: gid };
17
- const response = await fetchShopifyGraphql({
18
- query: queryFulfillmentOrdersByOrderId,
19
- variables,
20
- });
21
- if (!response.order) {
22
- logger.debug(`No order found with ID: ${orderId}`);
23
- return [];
24
- }
25
- return response.order.fulfillmentOrders.edges.map((edge) => edge.node);
26
- }
27
- //# sourceMappingURL=getFulfillmentOrdersByOrderId.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getFulfillmentOrdersByOrderId.js","sourceRoot":"","sources":["../../../src/queries/fulfillmentOrders/getFulfillmentOrdersByOrderId.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EACL,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,6BAA6B,CAAA;AACpC,OAAO,EAAE,+BAA+B,EAAE,MAAM,4CAA4C,CAAA;AAS5F;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,OAAiC;IAEjC,MAAM,GAAG,GACP,OAAO,OAAO,KAAK,QAAQ;QACzB,CAAC,CAAC,OAAO;QACT,CAAC,CAAC,gBAAgB,CACd,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,EACvD,OAAO,CACR,CAAA;IAEP,MAAM,SAAS,GAA6C,EAAE,OAAO,EAAE,GAAG,EAAE,CAAA;IAE5E,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAkC;QAC1E,KAAK,EAAE,+BAA+B;QACtC,SAAS;KACV,CAAC,CAAA;IAEF,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACpB,MAAM,CAAC,KAAK,CAAC,2BAA2B,OAAO,EAAE,CAAC,CAAA;QAClD,OAAO,EAAE,CAAA;IACX,CAAC;IAED,OAAO,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACxE,CAAC"}
@@ -1,12 +0,0 @@
1
- import type { FulfillmentOrdersByOrderIdQuery } from '../../generated-api-types/2025-04/admin.generated';
2
- export declare const fulfillmentOrdersByOrderIdMock: FulfillmentOrdersByOrderIdQuery;
3
- export declare const expectedFulfillmentOrdersByOrderId: (Pick<import("../../generated-api-types/2025-04/admin.types").FulfillmentOrder, "id" | "status"> & {
4
- lineItems: {
5
- edges: Array<{
6
- node: (Pick<import("../../generated-api-types/2025-04/admin.types").FulfillmentOrderLineItem, "id" | "remainingQuantity" | "totalQuantity"> & {
7
- lineItem: Pick<import("../../generated-api-types/2025-04/admin.types").LineItem, "id">;
8
- });
9
- }>;
10
- };
11
- })[];
12
- //# sourceMappingURL=getFulfillmentOrdersByOrderId.mock.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getFulfillmentOrdersByOrderId.mock.d.ts","sourceRoot":"","sources":["../../../src/queries/fulfillmentOrders/getFulfillmentOrdersByOrderId.mock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,mDAAmD,CAAA;AAGxG,eAAO,MAAM,8BAA8B,EAAE,+BAqC5C,CAAA;AAED,eAAO,MAAM,kCAAkC;;;;;;;;IAGtC,CAAA"}