@edgebound/bigcommerce 0.2.0 → 0.3.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.
package/dist/orders.mjs CHANGED
@@ -12,12 +12,12 @@ import {
12
12
  import {
13
13
  BigCommerceFetcher,
14
14
  DEFAULTS
15
- } from "./chunk-2VMEIQCL.mjs";
15
+ } from "./chunk-PAXNZ36X.mjs";
16
16
 
17
17
  // src/bigcommerce-entities/orders/find-orders.ts
18
18
  import { Effect } from "effect";
19
- import qs from "qs";
20
- import * as z5 from "zod";
19
+ import { stringify } from "querystring";
20
+ import * as z3 from "zod";
21
21
 
22
22
  // src/bigcommerce-entities/orders/schemas/find-orders.criteria.ts
23
23
  import * as z from "zod";
@@ -38,125 +38,86 @@ var FindOrdersCriteriaSchema = z.object({
38
38
  channel_id: z.int().optional()
39
39
  });
40
40
 
41
- // src/bigcommerce-entities/orders/schemas/order-product.schema.ts
42
- import * as z2 from "zod";
43
- var OrderProductSchema = z2.object({
44
- id: z2.int(),
45
- order_id: z2.int(),
46
- product_id: z2.int(),
47
- variant_id: z2.int(),
48
- order_address_id: z2.int(),
49
- sku: z2.string(),
50
- type: z2.enum(["physical", "digital"]),
51
- base_price: z2.coerce.number(),
52
- price_ex_tax: z2.coerce.number(),
53
- price_inc_tax: z2.coerce.number(),
54
- price_tax: z2.coerce.number(),
55
- base_total: z2.coerce.number(),
56
- total_ex_tax: z2.coerce.number(),
57
- total_inc_tax: z2.coerce.number(),
58
- total_tax: z2.coerce.number(),
59
- weight: z2.coerce.number(),
60
- width: z2.coerce.number(),
61
- height: z2.coerce.number(),
62
- depth: z2.coerce.number(),
63
- quantity: z2.int(),
64
- base_cost_price: z2.coerce.number(),
65
- cost_price_inc_tax: z2.coerce.number(),
66
- cost_price_ex_tax: z2.coerce.number(),
67
- cost_price_tax: z2.coerce.number()
68
- });
69
-
70
- // src/bigcommerce-entities/orders/schemas/order-shipping-address.schema.ts
71
- import * as z3 from "zod";
72
- var OrderShippingAddressSchema = AddressSchema.extend(
73
- z3.object({
74
- id: z3.int(),
75
- order_id: z3.int(),
76
- shipping_method: z3.string()
77
- })
78
- );
79
-
80
41
  // src/bigcommerce-entities/orders/schemas/order.schema.ts
81
- import * as z4 from "zod";
82
- var OrderSchema = z4.object({
83
- id: z4.number(),
84
- customer_id: z4.number(),
85
- date_created: z4.string(),
86
- is_tax_inclusive_pricing: z4.boolean(),
87
- date_modified: z4.string(),
88
- date_shipped: z4.string(),
89
- status_id: z4.number(),
42
+ import * as z2 from "zod";
43
+ var OrderSchema = z2.object({
44
+ id: z2.number(),
45
+ customer_id: z2.number(),
46
+ date_created: z2.string(),
47
+ is_tax_inclusive_pricing: z2.boolean(),
48
+ date_modified: z2.string(),
49
+ date_shipped: z2.string(),
50
+ status_id: z2.number(),
90
51
  status: OrderStatusNameEnumSchema,
91
- subtotal_ex_tax: z4.string(),
92
- subtotal_inc_tax: z4.string(),
93
- subtotal_tax: z4.string(),
94
- base_shipping_cost: z4.string(),
95
- shipping_cost_ex_tax: z4.string(),
96
- shipping_cost_inc_tax: z4.string(),
97
- shipping_cost_tax: z4.string(),
98
- shipping_cost_tax_class_id: z4.number(),
99
- base_handling_cost: z4.string(),
100
- handling_cost_ex_tax: z4.string(),
101
- handling_cost_inc_tax: z4.string(),
102
- handling_cost_tax: z4.string(),
103
- handling_cost_tax_class_id: z4.number(),
104
- base_wrapping_cost: z4.string(),
105
- wrapping_cost_ex_tax: z4.string(),
106
- wrapping_cost_inc_tax: z4.string(),
107
- wrapping_cost_tax: z4.string(),
108
- wrapping_cost_tax_class_id: z4.number(),
109
- total_ex_tax: z4.string(),
110
- total_inc_tax: z4.string(),
111
- total_tax: z4.string(),
112
- items_total: z4.number(),
113
- items_shipped: z4.number(),
114
- payment_method: z4.string(),
115
- payment_provider_id: z4.string().optional().nullable(),
116
- payment_status: z4.string(),
117
- refunded_amount: z4.string(),
118
- order_is_digital: z4.boolean(),
119
- store_credit_amount: z4.string(),
120
- gift_certificate_amount: z4.string(),
121
- ip_address: z4.string(),
122
- ip_address_v6: z4.string(),
123
- geoip_country: z4.string(),
124
- geoip_country_iso2: z4.string(),
125
- currency_id: z4.number(),
126
- currency_code: z4.string(),
127
- currency_exchange_rate: z4.string(),
128
- default_currency_id: z4.number(),
129
- default_currency_code: z4.string(),
130
- staff_notes: z4.string(),
131
- customer_message: z4.string(),
132
- discount_amount: z4.string(),
133
- coupon_discount: z4.string(),
134
- shipping_address_count: z4.number(),
135
- is_deleted: z4.boolean(),
136
- ebay_order_id: z4.string(),
137
- cart_id: z4.string(),
52
+ subtotal_ex_tax: z2.string(),
53
+ subtotal_inc_tax: z2.string(),
54
+ subtotal_tax: z2.string(),
55
+ base_shipping_cost: z2.string(),
56
+ shipping_cost_ex_tax: z2.string(),
57
+ shipping_cost_inc_tax: z2.string(),
58
+ shipping_cost_tax: z2.string(),
59
+ shipping_cost_tax_class_id: z2.number(),
60
+ base_handling_cost: z2.string(),
61
+ handling_cost_ex_tax: z2.string(),
62
+ handling_cost_inc_tax: z2.string(),
63
+ handling_cost_tax: z2.string(),
64
+ handling_cost_tax_class_id: z2.number(),
65
+ base_wrapping_cost: z2.string(),
66
+ wrapping_cost_ex_tax: z2.string(),
67
+ wrapping_cost_inc_tax: z2.string(),
68
+ wrapping_cost_tax: z2.string(),
69
+ wrapping_cost_tax_class_id: z2.number(),
70
+ total_ex_tax: z2.string(),
71
+ total_inc_tax: z2.string(),
72
+ total_tax: z2.string(),
73
+ items_total: z2.number(),
74
+ items_shipped: z2.number(),
75
+ payment_method: z2.string(),
76
+ payment_provider_id: z2.string().optional().nullable(),
77
+ payment_status: z2.string(),
78
+ refunded_amount: z2.string(),
79
+ order_is_digital: z2.boolean(),
80
+ store_credit_amount: z2.string(),
81
+ gift_certificate_amount: z2.string(),
82
+ ip_address: z2.string(),
83
+ ip_address_v6: z2.string(),
84
+ geoip_country: z2.string(),
85
+ geoip_country_iso2: z2.string(),
86
+ currency_id: z2.number(),
87
+ currency_code: z2.string(),
88
+ currency_exchange_rate: z2.string(),
89
+ default_currency_id: z2.number(),
90
+ default_currency_code: z2.string(),
91
+ staff_notes: z2.string(),
92
+ customer_message: z2.string(),
93
+ discount_amount: z2.string(),
94
+ coupon_discount: z2.string(),
95
+ shipping_address_count: z2.number(),
96
+ is_deleted: z2.boolean(),
97
+ ebay_order_id: z2.string(),
98
+ cart_id: z2.string(),
138
99
  billing_address: AddressSchema,
139
- is_email_opt_in: z4.boolean(),
140
- order_source: z4.string(),
141
- channel_id: z4.number(),
142
- external_source: z4.string(),
143
- external_id: z4.string().nullable(),
144
- tax_provider_id: z4.string(),
145
- customer_locale: z4.string(),
146
- external_order_id: z4.string().nullable(),
147
- store_default_currency_code: z4.string(),
148
- store_default_to_transactional_exchange_rate: z4.string(),
149
- custom_status: z4.string()
100
+ is_email_opt_in: z2.boolean(),
101
+ order_source: z2.string(),
102
+ channel_id: z2.number(),
103
+ external_source: z2.string(),
104
+ external_id: z2.string().nullable(),
105
+ tax_provider_id: z2.string(),
106
+ customer_locale: z2.string(),
107
+ external_order_id: z2.string().nullable(),
108
+ store_default_currency_code: z2.string(),
109
+ store_default_to_transactional_exchange_rate: z2.string(),
110
+ custom_status: z2.string()
150
111
  });
151
112
 
152
113
  // src/bigcommerce-entities/orders/find-orders.ts
153
- var OrderArraySchema = z5.union([z5.array(OrderSchema), z5.literal(""), z5.literal(null)]);
114
+ var OrderArraySchema = z3.union([z3.array(OrderSchema), z3.literal(""), z3.literal(null)]);
154
115
  var findOrders = (criteria) => {
155
116
  return Effect.gen(function* () {
156
117
  const fetcher = yield* BigCommerceFetcher;
157
118
  const validatedQuery = yield* validateInput(FindOrdersCriteriaSchema, criteria ?? {});
158
119
  const orders = yield* fetcher.fetch({
159
- query: qs.stringify(validatedQuery),
120
+ query: stringify(validatedQuery),
160
121
  isB2B: false,
161
122
  method: "GET",
162
123
  path: "orders",
@@ -205,8 +166,20 @@ var getOrder = (orderId) => {
205
166
 
206
167
  // src/bigcommerce-entities/orders/get-order-address.ts
207
168
  import { Effect as Effect3 } from "effect";
208
- import qs2 from "qs";
209
- import * as z6 from "zod";
169
+ import { stringify as stringify2 } from "querystring";
170
+ import * as z5 from "zod";
171
+
172
+ // src/bigcommerce-entities/orders/schemas/order-shipping-address.schema.ts
173
+ import * as z4 from "zod";
174
+ var OrderShippingAddressSchema = AddressSchema.extend(
175
+ z4.object({
176
+ id: z4.int(),
177
+ order_id: z4.int(),
178
+ shipping_method: z4.string()
179
+ })
180
+ );
181
+
182
+ // src/bigcommerce-entities/orders/get-order-address.ts
210
183
  var getOrderAddresses = ({
211
184
  orderId,
212
185
  limit = DEFAULTS.orders.shippingAddresses.getAllBatchSize,
@@ -216,11 +189,11 @@ var getOrderAddresses = ({
216
189
  const fetcher = yield* BigCommerceFetcher;
217
190
  return yield* fetcher.fetch({
218
191
  method: "GET",
219
- path: `orders/${orderId}/products`,
192
+ path: `orders/${orderId}/shipping_addresses`,
220
193
  isB2B: false,
221
194
  version: "v2",
222
- resultSchema: z6.union([z6.array(OrderShippingAddressSchema), z6.literal(""), z6.literal(null)]),
223
- query: qs2.stringify({
195
+ resultSchema: z5.union([z5.array(OrderShippingAddressSchema), z5.literal(""), z5.literal(null)]),
196
+ query: stringify2({
224
197
  limit,
225
198
  page
226
199
  })
@@ -251,8 +224,39 @@ var getAllOrderShippingAddresses = (orderId) => {
251
224
 
252
225
  // src/bigcommerce-entities/orders/get-products.ts
253
226
  import { Effect as Effect4 } from "effect";
254
- import qs3 from "qs";
227
+ import { stringify as stringify3 } from "querystring";
255
228
  import * as z7 from "zod";
229
+
230
+ // src/bigcommerce-entities/orders/schemas/order-product.schema.ts
231
+ import * as z6 from "zod";
232
+ var OrderProductSchema = z6.object({
233
+ id: z6.int(),
234
+ order_id: z6.int(),
235
+ product_id: z6.int(),
236
+ variant_id: z6.int(),
237
+ order_address_id: z6.int(),
238
+ sku: z6.string(),
239
+ type: z6.enum(["physical", "digital"]),
240
+ base_price: z6.coerce.number(),
241
+ price_ex_tax: z6.coerce.number(),
242
+ price_inc_tax: z6.coerce.number(),
243
+ price_tax: z6.coerce.number(),
244
+ base_total: z6.coerce.number(),
245
+ total_ex_tax: z6.coerce.number(),
246
+ total_inc_tax: z6.coerce.number(),
247
+ total_tax: z6.coerce.number(),
248
+ weight: z6.coerce.number(),
249
+ width: z6.coerce.number(),
250
+ height: z6.coerce.number(),
251
+ depth: z6.coerce.number(),
252
+ quantity: z6.int(),
253
+ base_cost_price: z6.coerce.number(),
254
+ cost_price_inc_tax: z6.coerce.number(),
255
+ cost_price_ex_tax: z6.coerce.number(),
256
+ cost_price_tax: z6.coerce.number()
257
+ });
258
+
259
+ // src/bigcommerce-entities/orders/get-products.ts
256
260
  var getOrderProducts = ({
257
261
  orderId,
258
262
  limit = DEFAULTS.orders.products.getAllBatchSize,
@@ -266,7 +270,7 @@ var getOrderProducts = ({
266
270
  isB2B: false,
267
271
  version: "v2",
268
272
  resultSchema: z7.union([z7.array(OrderProductSchema), z7.literal(""), z7.literal(null)]),
269
- query: qs3.stringify({
273
+ query: stringify3({
270
274
  limit,
271
275
  page
272
276
  })
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/bigcommerce-entities/orders/find-orders.ts","../src/bigcommerce-entities/orders/schemas/find-orders.criteria.ts","../src/bigcommerce-entities/orders/schemas/order-product.schema.ts","../src/bigcommerce-entities/orders/schemas/order-shipping-address.schema.ts","../src/bigcommerce-entities/orders/schemas/order.schema.ts","../src/bigcommerce-entities/orders/get-order.ts","../src/bigcommerce-entities/orders/get-order-address.ts","../src/bigcommerce-entities/orders/get-products.ts"],"sourcesContent":["import { Effect } from 'effect';\nimport qs from 'qs';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport { OrderSchema } from './schemas';\nimport { FindOrdersCriteriaSchema } from './schemas/find-orders.criteria';\nconst OrderArraySchema = z.union([z.array(OrderSchema), z.literal(''), z.literal(null)]);\n\nexport const findOrders = (criteria?: z.input<typeof FindOrdersCriteriaSchema>) => {\n return Effect.gen(function* () {\n const fetcher = yield* BigCommerceFetcher;\n const validatedQuery = yield* validateInput(FindOrdersCriteriaSchema, criteria ?? {});\n const orders = yield* fetcher.fetch({\n query: qs.stringify(validatedQuery),\n isB2B: false,\n method: 'GET',\n path: 'orders',\n version: 'v2',\n resultSchema: OrderArraySchema,\n });\n return orders || [];\n });\n};\n\nexport const getAllOrdersBy = (\n criteria: Omit<z.input<typeof FindOrdersCriteriaSchema>, 'page' | 'limit'>,\n) => {\n return Effect.gen(function* () {\n const allOrders: z.output<typeof OrderSchema>[] = [];\n let page = 1;\n let hasMoreOrders = true;\n\n while (hasMoreOrders) {\n const orders = yield* findOrders({\n ...criteria,\n page,\n limit: DEFAULTS.orders.getAllBatchSize,\n });\n\n if (orders.length === 0) {\n hasMoreOrders = false;\n } else {\n allOrders.push(...orders);\n page++;\n }\n }\n\n return allOrders;\n });\n};\n","import * as z from 'zod';\nimport { DEFAULTS } from '../../../constants';\n\nexport const FindOrdersCriteriaSchema = z.object({\n customer_id: z.string().optional(),\n email: z.string().optional(),\n status_id: z.number().optional(),\n cart_id: z.string().optional(),\n payment_method: z.string().optional(),\n min_date_created: z.iso.datetime({ offset: true }).optional(),\n max_date_created: z.iso.datetime({ offset: true }).optional(),\n min_date_modified: z.iso.datetime({ offset: true }).optional(),\n max_date_modified: z.iso.datetime({ offset: true }).optional(),\n page: z.number().min(1).optional(),\n limit: z.number().min(1).max(DEFAULTS.orders.getAllBatchSize).optional(),\n // Allowed: id | customer_id | date_created | date_modified | status_id | channel_id | external_id;\n sort: z.string().optional(),\n channel_id: z.int().optional(),\n});\n","import * as z from 'zod';\nexport const OrderProductSchema = z.object({\n id: z.int(),\n order_id: z.int(),\n product_id: z.int(),\n variant_id: z.int(),\n order_address_id: z.int(),\n sku: z.string(),\n type: z.enum(['physical', 'digital']),\n base_price: z.coerce.number(),\n price_ex_tax: z.coerce.number(),\n price_inc_tax: z.coerce.number(),\n price_tax: z.coerce.number(),\n base_total: z.coerce.number(),\n total_ex_tax: z.coerce.number(),\n total_inc_tax: z.coerce.number(),\n total_tax: z.coerce.number(),\n weight: z.coerce.number(),\n width: z.coerce.number(),\n height: z.coerce.number(),\n depth: z.coerce.number(),\n quantity: z.int(),\n base_cost_price: z.coerce.number(),\n cost_price_inc_tax: z.coerce.number(),\n cost_price_ex_tax: z.coerce.number(),\n cost_price_tax: z.coerce.number(),\n});\n","import * as z from 'zod';\nimport { AddressSchema } from '../../addresses/schemas/address.schema';\nexport const OrderShippingAddressSchema = AddressSchema.extend(\n z.object({\n id: z.int(),\n order_id: z.int(),\n shipping_method: z.string(),\n }),\n);\n","import * as z from 'zod';\nimport { AddressSchema } from '../../addresses/schemas/address.schema';\nimport { OrderStatusNameEnumSchema } from './status.schema';\n\nexport const OrderSchema = z.object({\n id: z.number(),\n customer_id: z.number(),\n date_created: z.string(),\n is_tax_inclusive_pricing: z.boolean(),\n date_modified: z.string(),\n date_shipped: z.string(),\n status_id: z.number(),\n status: OrderStatusNameEnumSchema,\n subtotal_ex_tax: z.string(),\n subtotal_inc_tax: z.string(),\n subtotal_tax: z.string(),\n base_shipping_cost: z.string(),\n shipping_cost_ex_tax: z.string(),\n shipping_cost_inc_tax: z.string(),\n shipping_cost_tax: z.string(),\n shipping_cost_tax_class_id: z.number(),\n base_handling_cost: z.string(),\n handling_cost_ex_tax: z.string(),\n handling_cost_inc_tax: z.string(),\n handling_cost_tax: z.string(),\n handling_cost_tax_class_id: z.number(),\n base_wrapping_cost: z.string(),\n wrapping_cost_ex_tax: z.string(),\n wrapping_cost_inc_tax: z.string(),\n wrapping_cost_tax: z.string(),\n wrapping_cost_tax_class_id: z.number(),\n total_ex_tax: z.string(),\n total_inc_tax: z.string(),\n total_tax: z.string(),\n items_total: z.number(),\n items_shipped: z.number(),\n payment_method: z.string(),\n payment_provider_id: z.string().optional().nullable(),\n payment_status: z.string(),\n refunded_amount: z.string(),\n order_is_digital: z.boolean(),\n store_credit_amount: z.string(),\n gift_certificate_amount: z.string(),\n ip_address: z.string(),\n ip_address_v6: z.string(),\n geoip_country: z.string(),\n geoip_country_iso2: z.string(),\n currency_id: z.number(),\n currency_code: z.string(),\n currency_exchange_rate: z.string(),\n default_currency_id: z.number(),\n default_currency_code: z.string(),\n staff_notes: z.string(),\n customer_message: z.string(),\n discount_amount: z.string(),\n coupon_discount: z.string(),\n shipping_address_count: z.number(),\n is_deleted: z.boolean(),\n ebay_order_id: z.string(),\n cart_id: z.string(),\n billing_address: AddressSchema,\n is_email_opt_in: z.boolean(),\n order_source: z.string(),\n channel_id: z.number(),\n external_source: z.string(),\n external_id: z.string().nullable(),\n tax_provider_id: z.string(),\n customer_locale: z.string(),\n external_order_id: z.string().nullable(),\n store_default_currency_code: z.string(),\n store_default_to_transactional_exchange_rate: z.string(),\n custom_status: z.string(),\n});\n","import { Effect } from 'effect';\nimport { BigCommerceFetcher } from '../../core';\nimport { OrderSchema } from './schemas';\n\nexport const getOrder = (orderId: string) => {\n return Effect.gen(function* () {\n const fetcher = yield* BigCommerceFetcher;\n return yield* fetcher.fetch({\n isB2B: false,\n method: 'GET',\n path: `orders/${orderId}`,\n resultSchema: OrderSchema,\n version: 'v2',\n });\n });\n};\n","import { Effect } from 'effect';\nimport qs from 'qs';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { OrderShippingAddressSchema } from './schemas/order-shipping-address.schema';\nconst getOrderAddresses = ({\n orderId,\n limit = DEFAULTS.orders.shippingAddresses.getAllBatchSize,\n page,\n}: {\n orderId: number;\n limit?: number;\n page: number;\n}) => {\n return Effect.gen(function* () {\n const fetcher = yield* BigCommerceFetcher;\n return yield* fetcher.fetch({\n method: 'GET',\n path: `orders/${orderId}/products`,\n isB2B: false,\n version: 'v2',\n resultSchema: z.union([z.array(OrderShippingAddressSchema), z.literal(''), z.literal(null)]),\n query: qs.stringify({\n limit,\n page,\n }),\n });\n }).pipe(Effect.map((arr) => arr || []));\n};\n\nexport const getAllOrderShippingAddresses = (orderId: number) => {\n return Effect.gen(function* () {\n const all: z.output<typeof OrderShippingAddressSchema>[] = [];\n let page = 1;\n let hasMore = true;\n\n while (hasMore) {\n const result = yield* getOrderAddresses({\n orderId,\n page,\n limit: DEFAULTS.orders.shippingAddresses.getAllBatchSize,\n });\n\n if (result.length) {\n all.push(...result);\n page++;\n } else {\n hasMore = false;\n }\n }\n\n return all;\n });\n};\n","import { Effect } from 'effect';\nimport qs from 'qs';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { OrderProductSchema } from './schemas/order-product.schema';\nconst getOrderProducts = ({\n orderId,\n limit = DEFAULTS.orders.products.getAllBatchSize,\n page,\n}: {\n orderId: number;\n limit?: number;\n page: number;\n}) => {\n return Effect.gen(function* () {\n const fetcher = yield* BigCommerceFetcher;\n return yield* fetcher.fetch({\n method: 'GET',\n path: `orders/${orderId}/products`,\n isB2B: false,\n version: 'v2',\n resultSchema: z.union([z.array(OrderProductSchema), z.literal(''), z.literal(null)]),\n query: qs.stringify({\n limit,\n page,\n }),\n });\n }).pipe(Effect.map((arr) => arr || []));\n};\n\nexport const getAllOrderProducts = (orderId: number) => {\n return Effect.gen(function* () {\n const all: z.output<typeof OrderProductSchema>[] = [];\n let page = 1;\n let hasMore = true;\n\n while (hasMore) {\n const result = yield* getOrderProducts({\n orderId,\n page,\n });\n\n if (result.length) {\n all.push(...result);\n page++;\n } else {\n hasMore = false;\n }\n }\n\n return all;\n });\n};\n"],"mappings":"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","names":["z","z","z","z","Effect","Effect","Effect","qs","z","Effect","qs","Effect","qs","z","Effect","qs"]}
1
+ {"version":3,"sources":["../src/bigcommerce-entities/orders/find-orders.ts","../src/bigcommerce-entities/orders/schemas/find-orders.criteria.ts","../src/bigcommerce-entities/orders/schemas/order.schema.ts","../src/bigcommerce-entities/orders/get-order.ts","../src/bigcommerce-entities/orders/get-order-address.ts","../src/bigcommerce-entities/orders/schemas/order-shipping-address.schema.ts","../src/bigcommerce-entities/orders/get-products.ts","../src/bigcommerce-entities/orders/schemas/order-product.schema.ts"],"sourcesContent":["import { Effect } from 'effect';\nimport { stringify } from 'node:querystring';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport { FindOrdersCriteriaSchema } from './schemas/find-orders.criteria';\nimport { OrderSchema, type Order } from './schemas/order.schema';\nconst OrderArraySchema = z.union([z.array(OrderSchema), z.literal(''), z.literal(null)]);\n\nexport const findOrders = (criteria?: z.input<typeof FindOrdersCriteriaSchema>) => {\n return Effect.gen(function* () {\n const fetcher = yield* BigCommerceFetcher;\n const validatedQuery = yield* validateInput(FindOrdersCriteriaSchema, criteria ?? {});\n const orders = yield* fetcher.fetch({\n query: stringify(validatedQuery),\n isB2B: false,\n method: 'GET',\n path: 'orders',\n version: 'v2',\n resultSchema: OrderArraySchema,\n });\n return orders || [];\n });\n};\n\nexport const getAllOrdersBy = (\n criteria: Omit<z.input<typeof FindOrdersCriteriaSchema>, 'page' | 'limit'>,\n) => {\n return Effect.gen(function* () {\n const allOrders: Order[] = [];\n let page = 1;\n let hasMoreOrders = true;\n\n while (hasMoreOrders) {\n const orders = yield* findOrders({\n ...criteria,\n page,\n limit: DEFAULTS.orders.getAllBatchSize,\n });\n\n if (orders.length === 0) {\n hasMoreOrders = false;\n } else {\n allOrders.push(...orders);\n page++;\n }\n }\n\n return allOrders;\n });\n};\n","import * as z from 'zod';\nimport { DEFAULTS } from '../../../constants';\n\nexport const FindOrdersCriteriaSchema = z.object({\n customer_id: z.string().optional(),\n email: z.string().optional(),\n status_id: z.number().optional(),\n cart_id: z.string().optional(),\n payment_method: z.string().optional(),\n min_date_created: z.iso.datetime({ offset: true }).optional(),\n max_date_created: z.iso.datetime({ offset: true }).optional(),\n min_date_modified: z.iso.datetime({ offset: true }).optional(),\n max_date_modified: z.iso.datetime({ offset: true }).optional(),\n page: z.number().min(1).optional(),\n limit: z.number().min(1).max(DEFAULTS.orders.getAllBatchSize).optional(),\n // Allowed: id | customer_id | date_created | date_modified | status_id | channel_id | external_id;\n sort: z.string().optional(),\n channel_id: z.int().optional(),\n});\n","import * as z from 'zod';\nimport { AddressSchema } from '../../addresses/schemas/address.schema';\nimport { OrderStatusNameEnumSchema } from './status.schema';\n\nexport const OrderSchema = z.object({\n id: z.number(),\n customer_id: z.number(),\n date_created: z.string(),\n is_tax_inclusive_pricing: z.boolean(),\n date_modified: z.string(),\n date_shipped: z.string(),\n status_id: z.number(),\n status: OrderStatusNameEnumSchema,\n subtotal_ex_tax: z.string(),\n subtotal_inc_tax: z.string(),\n subtotal_tax: z.string(),\n base_shipping_cost: z.string(),\n shipping_cost_ex_tax: z.string(),\n shipping_cost_inc_tax: z.string(),\n shipping_cost_tax: z.string(),\n shipping_cost_tax_class_id: z.number(),\n base_handling_cost: z.string(),\n handling_cost_ex_tax: z.string(),\n handling_cost_inc_tax: z.string(),\n handling_cost_tax: z.string(),\n handling_cost_tax_class_id: z.number(),\n base_wrapping_cost: z.string(),\n wrapping_cost_ex_tax: z.string(),\n wrapping_cost_inc_tax: z.string(),\n wrapping_cost_tax: z.string(),\n wrapping_cost_tax_class_id: z.number(),\n total_ex_tax: z.string(),\n total_inc_tax: z.string(),\n total_tax: z.string(),\n items_total: z.number(),\n items_shipped: z.number(),\n payment_method: z.string(),\n payment_provider_id: z.string().optional().nullable(),\n payment_status: z.string(),\n refunded_amount: z.string(),\n order_is_digital: z.boolean(),\n store_credit_amount: z.string(),\n gift_certificate_amount: z.string(),\n ip_address: z.string(),\n ip_address_v6: z.string(),\n geoip_country: z.string(),\n geoip_country_iso2: z.string(),\n currency_id: z.number(),\n currency_code: z.string(),\n currency_exchange_rate: z.string(),\n default_currency_id: z.number(),\n default_currency_code: z.string(),\n staff_notes: z.string(),\n customer_message: z.string(),\n discount_amount: z.string(),\n coupon_discount: z.string(),\n shipping_address_count: z.number(),\n is_deleted: z.boolean(),\n ebay_order_id: z.string(),\n cart_id: z.string(),\n billing_address: AddressSchema,\n is_email_opt_in: z.boolean(),\n order_source: z.string(),\n channel_id: z.number(),\n external_source: z.string(),\n external_id: z.string().nullable(),\n tax_provider_id: z.string(),\n customer_locale: z.string(),\n external_order_id: z.string().nullable(),\n store_default_currency_code: z.string(),\n store_default_to_transactional_exchange_rate: z.string(),\n custom_status: z.string(),\n});\n\nexport type Order = z.output<typeof OrderSchema>;\n","import { Effect } from 'effect';\nimport { BigCommerceFetcher } from '../../core';\nimport { OrderSchema } from './schemas/order.schema';\n\nexport const getOrder = (orderId: string) => {\n return Effect.gen(function* () {\n const fetcher = yield* BigCommerceFetcher;\n return yield* fetcher.fetch({\n isB2B: false,\n method: 'GET',\n path: `orders/${orderId}`,\n resultSchema: OrderSchema,\n version: 'v2',\n });\n });\n};\n","import { Effect } from 'effect';\nimport { stringify } from 'node:querystring';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport {\n OrderShippingAddressSchema,\n type OrderShippingAddress,\n} from './schemas/order-shipping-address.schema';\nconst getOrderAddresses = ({\n orderId,\n limit = DEFAULTS.orders.shippingAddresses.getAllBatchSize,\n page,\n}: {\n orderId: number;\n limit?: number;\n page: number;\n}) => {\n return Effect.gen(function* () {\n const fetcher = yield* BigCommerceFetcher;\n return yield* fetcher.fetch({\n method: 'GET',\n path: `orders/${orderId}/shipping_addresses`,\n isB2B: false,\n version: 'v2',\n resultSchema: z.union([z.array(OrderShippingAddressSchema), z.literal(''), z.literal(null)]),\n query: stringify({\n limit,\n page,\n }),\n });\n }).pipe(Effect.map((arr) => arr || []));\n};\n\nexport const getAllOrderShippingAddresses = (orderId: number) => {\n return Effect.gen(function* () {\n const all: OrderShippingAddress[] = [];\n let page = 1;\n let hasMore = true;\n\n while (hasMore) {\n const result = yield* getOrderAddresses({\n orderId,\n page,\n limit: DEFAULTS.orders.shippingAddresses.getAllBatchSize,\n });\n\n if (result.length) {\n all.push(...result);\n page++;\n } else {\n hasMore = false;\n }\n }\n\n return all;\n });\n};\n","import * as z from 'zod';\nimport { AddressSchema } from '../../addresses/schemas/address.schema';\nexport const OrderShippingAddressSchema = AddressSchema.extend(\n z.object({\n id: z.int(),\n order_id: z.int(),\n shipping_method: z.string(),\n }),\n);\n\nexport type OrderShippingAddress = z.output<typeof OrderShippingAddressSchema>;\n","import { Effect } from 'effect';\nimport { stringify } from 'node:querystring';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { OrderProductSchema, type OrderProduct } from './schemas/order-product.schema';\nconst getOrderProducts = ({\n orderId,\n limit = DEFAULTS.orders.products.getAllBatchSize,\n page,\n}: {\n orderId: number;\n limit?: number;\n page: number;\n}) => {\n return Effect.gen(function* () {\n const fetcher = yield* BigCommerceFetcher;\n return yield* fetcher.fetch({\n method: 'GET',\n path: `orders/${orderId}/products`,\n isB2B: false,\n version: 'v2',\n resultSchema: z.union([z.array(OrderProductSchema), z.literal(''), z.literal(null)]),\n query: stringify({\n limit,\n page,\n }),\n });\n }).pipe(Effect.map((arr) => arr || []));\n};\n\nexport const getAllOrderProducts = (orderId: number) => {\n return Effect.gen(function* () {\n const all: OrderProduct[] = [];\n let page = 1;\n let hasMore = true;\n\n while (hasMore) {\n const result = yield* getOrderProducts({\n orderId,\n page,\n });\n\n if (result.length) {\n all.push(...result);\n page++;\n } else {\n hasMore = false;\n }\n }\n\n return all;\n });\n};\n","import * as z from 'zod';\nexport const OrderProductSchema = z.object({\n id: z.int(),\n order_id: z.int(),\n product_id: z.int(),\n variant_id: z.int(),\n order_address_id: z.int(),\n sku: z.string(),\n type: z.enum(['physical', 'digital']),\n base_price: z.coerce.number(),\n price_ex_tax: z.coerce.number(),\n price_inc_tax: z.coerce.number(),\n price_tax: z.coerce.number(),\n base_total: z.coerce.number(),\n total_ex_tax: z.coerce.number(),\n total_inc_tax: z.coerce.number(),\n total_tax: z.coerce.number(),\n weight: z.coerce.number(),\n width: z.coerce.number(),\n height: z.coerce.number(),\n depth: z.coerce.number(),\n quantity: z.int(),\n base_cost_price: z.coerce.number(),\n cost_price_inc_tax: z.coerce.number(),\n cost_price_ex_tax: z.coerce.number(),\n cost_price_tax: z.coerce.number(),\n});\n\nexport type OrderProduct = z.output<typeof OrderProductSchema>;\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA,SAAS,cAAc;AACvB,SAAS,iBAAiB;AAC1B,YAAYA,QAAO;;;ACFnB,YAAY,OAAO;AAGZ,IAAM,2BAA6B,SAAO;AAAA,EAC/C,aAAe,SAAO,EAAE,SAAS;AAAA,EACjC,OAAS,SAAO,EAAE,SAAS;AAAA,EAC3B,WAAa,SAAO,EAAE,SAAS;AAAA,EAC/B,SAAW,SAAO,EAAE,SAAS;AAAA,EAC7B,gBAAkB,SAAO,EAAE,SAAS;AAAA,EACpC,kBAAoB,MAAI,SAAS,EAAE,QAAQ,KAAK,CAAC,EAAE,SAAS;AAAA,EAC5D,kBAAoB,MAAI,SAAS,EAAE,QAAQ,KAAK,CAAC,EAAE,SAAS;AAAA,EAC5D,mBAAqB,MAAI,SAAS,EAAE,QAAQ,KAAK,CAAC,EAAE,SAAS;AAAA,EAC7D,mBAAqB,MAAI,SAAS,EAAE,QAAQ,KAAK,CAAC,EAAE,SAAS;AAAA,EAC7D,MAAQ,SAAO,EAAE,IAAI,CAAC,EAAE,SAAS;AAAA,EACjC,OAAS,SAAO,EAAE,IAAI,CAAC,EAAE,IAAI,SAAS,OAAO,eAAe,EAAE,SAAS;AAAA;AAAA,EAEvE,MAAQ,SAAO,EAAE,SAAS;AAAA,EAC1B,YAAc,MAAI,EAAE,SAAS;AAC/B,CAAC;;;AClBD,YAAYC,QAAO;AAIZ,IAAM,cAAgB,UAAO;AAAA,EAClC,IAAM,UAAO;AAAA,EACb,aAAe,UAAO;AAAA,EACtB,cAAgB,UAAO;AAAA,EACvB,0BAA4B,WAAQ;AAAA,EACpC,eAAiB,UAAO;AAAA,EACxB,cAAgB,UAAO;AAAA,EACvB,WAAa,UAAO;AAAA,EACpB,QAAQ;AAAA,EACR,iBAAmB,UAAO;AAAA,EAC1B,kBAAoB,UAAO;AAAA,EAC3B,cAAgB,UAAO;AAAA,EACvB,oBAAsB,UAAO;AAAA,EAC7B,sBAAwB,UAAO;AAAA,EAC/B,uBAAyB,UAAO;AAAA,EAChC,mBAAqB,UAAO;AAAA,EAC5B,4BAA8B,UAAO;AAAA,EACrC,oBAAsB,UAAO;AAAA,EAC7B,sBAAwB,UAAO;AAAA,EAC/B,uBAAyB,UAAO;AAAA,EAChC,mBAAqB,UAAO;AAAA,EAC5B,4BAA8B,UAAO;AAAA,EACrC,oBAAsB,UAAO;AAAA,EAC7B,sBAAwB,UAAO;AAAA,EAC/B,uBAAyB,UAAO;AAAA,EAChC,mBAAqB,UAAO;AAAA,EAC5B,4BAA8B,UAAO;AAAA,EACrC,cAAgB,UAAO;AAAA,EACvB,eAAiB,UAAO;AAAA,EACxB,WAAa,UAAO;AAAA,EACpB,aAAe,UAAO;AAAA,EACtB,eAAiB,UAAO;AAAA,EACxB,gBAAkB,UAAO;AAAA,EACzB,qBAAuB,UAAO,EAAE,SAAS,EAAE,SAAS;AAAA,EACpD,gBAAkB,UAAO;AAAA,EACzB,iBAAmB,UAAO;AAAA,EAC1B,kBAAoB,WAAQ;AAAA,EAC5B,qBAAuB,UAAO;AAAA,EAC9B,yBAA2B,UAAO;AAAA,EAClC,YAAc,UAAO;AAAA,EACrB,eAAiB,UAAO;AAAA,EACxB,eAAiB,UAAO;AAAA,EACxB,oBAAsB,UAAO;AAAA,EAC7B,aAAe,UAAO;AAAA,EACtB,eAAiB,UAAO;AAAA,EACxB,wBAA0B,UAAO;AAAA,EACjC,qBAAuB,UAAO;AAAA,EAC9B,uBAAyB,UAAO;AAAA,EAChC,aAAe,UAAO;AAAA,EACtB,kBAAoB,UAAO;AAAA,EAC3B,iBAAmB,UAAO;AAAA,EAC1B,iBAAmB,UAAO;AAAA,EAC1B,wBAA0B,UAAO;AAAA,EACjC,YAAc,WAAQ;AAAA,EACtB,eAAiB,UAAO;AAAA,EACxB,SAAW,UAAO;AAAA,EAClB,iBAAiB;AAAA,EACjB,iBAAmB,WAAQ;AAAA,EAC3B,cAAgB,UAAO;AAAA,EACvB,YAAc,UAAO;AAAA,EACrB,iBAAmB,UAAO;AAAA,EAC1B,aAAe,UAAO,EAAE,SAAS;AAAA,EACjC,iBAAmB,UAAO;AAAA,EAC1B,iBAAmB,UAAO;AAAA,EAC1B,mBAAqB,UAAO,EAAE,SAAS;AAAA,EACvC,6BAA+B,UAAO;AAAA,EACtC,8CAAgD,UAAO;AAAA,EACvD,eAAiB,UAAO;AAC1B,CAAC;;;AFhED,IAAM,mBAAqB,SAAM,CAAG,SAAM,WAAW,GAAK,WAAQ,EAAE,GAAK,WAAQ,IAAI,CAAC,CAAC;AAEhF,IAAM,aAAa,CAAC,aAAwD;AACjF,SAAO,OAAO,IAAI,aAAa;AAC7B,UAAM,UAAU,OAAO;AACvB,UAAM,iBAAiB,OAAO,cAAc,0BAA0B,YAAY,CAAC,CAAC;AACpF,UAAM,SAAS,OAAO,QAAQ,MAAM;AAAA,MAClC,OAAO,UAAU,cAAc;AAAA,MAC/B,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,MACT,cAAc;AAAA,IAChB,CAAC;AACD,WAAO,UAAU,CAAC;AAAA,EACpB,CAAC;AACH;AAEO,IAAM,iBAAiB,CAC5B,aACG;AACH,SAAO,OAAO,IAAI,aAAa;AAC7B,UAAM,YAAqB,CAAC;AAC5B,QAAI,OAAO;AACX,QAAI,gBAAgB;AAEpB,WAAO,eAAe;AACpB,YAAM,SAAS,OAAO,WAAW;AAAA,QAC/B,GAAG;AAAA,QACH;AAAA,QACA,OAAO,SAAS,OAAO;AAAA,MACzB,CAAC;AAED,UAAI,OAAO,WAAW,GAAG;AACvB,wBAAgB;AAAA,MAClB,OAAO;AACL,kBAAU,KAAK,GAAG,MAAM;AACxB;AAAA,MACF;AAAA,IACF;AAEA,WAAO;AAAA,EACT,CAAC;AACH;;;AGnDA,SAAS,UAAAC,eAAc;AAIhB,IAAM,WAAW,CAAC,YAAoB;AAC3C,SAAOC,QAAO,IAAI,aAAa;AAC7B,UAAM,UAAU,OAAO;AACvB,WAAO,OAAO,QAAQ,MAAM;AAAA,MAC1B,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,MAAM,UAAU,OAAO;AAAA,MACvB,cAAc;AAAA,MACd,SAAS;AAAA,IACX,CAAC;AAAA,EACH,CAAC;AACH;;;ACfA,SAAS,UAAAC,eAAc;AACvB,SAAS,aAAAC,kBAAiB;AAC1B,YAAYC,QAAO;;;ACFnB,YAAYC,QAAO;AAEZ,IAAM,6BAA6B,cAAc;AAAA,EACpD,UAAO;AAAA,IACP,IAAM,OAAI;AAAA,IACV,UAAY,OAAI;AAAA,IAChB,iBAAmB,UAAO;AAAA,EAC5B,CAAC;AACH;;;ADCA,IAAM,oBAAoB,CAAC;AAAA,EACzB;AAAA,EACA,QAAQ,SAAS,OAAO,kBAAkB;AAAA,EAC1C;AACF,MAIM;AACJ,SAAOC,QAAO,IAAI,aAAa;AAC7B,UAAM,UAAU,OAAO;AACvB,WAAO,OAAO,QAAQ,MAAM;AAAA,MAC1B,QAAQ;AAAA,MACR,MAAM,UAAU,OAAO;AAAA,MACvB,OAAO;AAAA,MACP,SAAS;AAAA,MACT,cAAgB,SAAM,CAAG,SAAM,0BAA0B,GAAK,WAAQ,EAAE,GAAK,WAAQ,IAAI,CAAC,CAAC;AAAA,MAC3F,OAAOC,WAAU;AAAA,QACf;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH,CAAC;AAAA,EACH,CAAC,EAAE,KAAKD,QAAO,IAAI,CAAC,QAAQ,OAAO,CAAC,CAAC,CAAC;AACxC;AAEO,IAAM,+BAA+B,CAAC,YAAoB;AAC/D,SAAOA,QAAO,IAAI,aAAa;AAC7B,UAAM,MAA8B,CAAC;AACrC,QAAI,OAAO;AACX,QAAI,UAAU;AAEd,WAAO,SAAS;AACd,YAAM,SAAS,OAAO,kBAAkB;AAAA,QACtC;AAAA,QACA;AAAA,QACA,OAAO,SAAS,OAAO,kBAAkB;AAAA,MAC3C,CAAC;AAED,UAAI,OAAO,QAAQ;AACjB,YAAI,KAAK,GAAG,MAAM;AAClB;AAAA,MACF,OAAO;AACL,kBAAU;AAAA,MACZ;AAAA,IACF;AAEA,WAAO;AAAA,EACT,CAAC;AACH;;;AEzDA,SAAS,UAAAE,eAAc;AACvB,SAAS,aAAAC,kBAAiB;AAC1B,YAAYC,QAAO;;;ACFnB,YAAYC,QAAO;AACZ,IAAM,qBAAuB,UAAO;AAAA,EACzC,IAAM,OAAI;AAAA,EACV,UAAY,OAAI;AAAA,EAChB,YAAc,OAAI;AAAA,EAClB,YAAc,OAAI;AAAA,EAClB,kBAAoB,OAAI;AAAA,EACxB,KAAO,UAAO;AAAA,EACd,MAAQ,QAAK,CAAC,YAAY,SAAS,CAAC;AAAA,EACpC,YAAc,UAAO,OAAO;AAAA,EAC5B,cAAgB,UAAO,OAAO;AAAA,EAC9B,eAAiB,UAAO,OAAO;AAAA,EAC/B,WAAa,UAAO,OAAO;AAAA,EAC3B,YAAc,UAAO,OAAO;AAAA,EAC5B,cAAgB,UAAO,OAAO;AAAA,EAC9B,eAAiB,UAAO,OAAO;AAAA,EAC/B,WAAa,UAAO,OAAO;AAAA,EAC3B,QAAU,UAAO,OAAO;AAAA,EACxB,OAAS,UAAO,OAAO;AAAA,EACvB,QAAU,UAAO,OAAO;AAAA,EACxB,OAAS,UAAO,OAAO;AAAA,EACvB,UAAY,OAAI;AAAA,EAChB,iBAAmB,UAAO,OAAO;AAAA,EACjC,oBAAsB,UAAO,OAAO;AAAA,EACpC,mBAAqB,UAAO,OAAO;AAAA,EACnC,gBAAkB,UAAO,OAAO;AAClC,CAAC;;;ADpBD,IAAM,mBAAmB,CAAC;AAAA,EACxB;AAAA,EACA,QAAQ,SAAS,OAAO,SAAS;AAAA,EACjC;AACF,MAIM;AACJ,SAAOC,QAAO,IAAI,aAAa;AAC7B,UAAM,UAAU,OAAO;AACvB,WAAO,OAAO,QAAQ,MAAM;AAAA,MAC1B,QAAQ;AAAA,MACR,MAAM,UAAU,OAAO;AAAA,MACvB,OAAO;AAAA,MACP,SAAS;AAAA,MACT,cAAgB,SAAM,CAAG,SAAM,kBAAkB,GAAK,WAAQ,EAAE,GAAK,WAAQ,IAAI,CAAC,CAAC;AAAA,MACnF,OAAOC,WAAU;AAAA,QACf;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH,CAAC;AAAA,EACH,CAAC,EAAE,KAAKD,QAAO,IAAI,CAAC,QAAQ,OAAO,CAAC,CAAC,CAAC;AACxC;AAEO,IAAM,sBAAsB,CAAC,YAAoB;AACtD,SAAOA,QAAO,IAAI,aAAa;AAC7B,UAAM,MAAsB,CAAC;AAC7B,QAAI,OAAO;AACX,QAAI,UAAU;AAEd,WAAO,SAAS;AACd,YAAM,SAAS,OAAO,iBAAiB;AAAA,QACrC;AAAA,QACA;AAAA,MACF,CAAC;AAED,UAAI,OAAO,QAAQ;AACjB,YAAI,KAAK,GAAG,MAAM;AAClB;AAAA,MACF,OAAO;AACL,kBAAU;AAAA,MACZ;AAAA,IACF;AAEA,WAAO;AAAA,EACT,CAAC;AACH;","names":["z","z","Effect","Effect","Effect","stringify","z","z","Effect","stringify","Effect","stringify","z","z","Effect","stringify"]}
package/dist/payments.js CHANGED
@@ -38,7 +38,7 @@ module.exports = __toCommonJS(payments_exports);
38
38
 
39
39
  // src/bigcommerce-entities/payments/payment-methods.ts
40
40
  var import_effect6 = require("effect");
41
- var import_qs = __toESM(require("qs"));
41
+ var import_node_querystring = require("querystring");
42
42
 
43
43
  // src/constants.ts
44
44
  var import_effect = require("effect");
@@ -346,7 +346,7 @@ var getPaymentMethods = () => import_effect6.Effect.gen(function* () {
346
346
  fetcher.fetch({
347
347
  isB2B: true,
348
348
  method: "GET",
349
- query: import_qs.default.stringify({
349
+ query: (0, import_node_querystring.stringify)({
350
350
  limit: 250
351
351
  }),
352
352
  path: "payments",
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/bigcommerce-entities/payments/index.ts","../src/bigcommerce-entities/payments/payment-methods.ts","../src/constants.ts","../src/core/bigcommerce.error.ts","../src/core/bigcommerce.fetcher.ts","../src/core/bigcommerce.fetcher.live.ts","../src/core/config.ts","../src/bigcommerce-entities/payments/schemas/payment-methods.schema.ts"],"sourcesContent":["export * from './payment-methods';\nexport * from './schemas';\n","import { Effect } from 'effect';\nimport qs from 'qs';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { GetPaymentMethodsResponseSchema } from './schemas/payment-methods.schema';\nexport const getPaymentMethods = () =>\n Effect.gen(function* () {\n const fetcher = yield* BigCommerceFetcher;\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'GET',\n query: qs.stringify({\n limit: 250,\n }),\n path: 'payments',\n resultSchema: GetPaymentMethodsResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n","import { Duration, Schedule } from 'effect';\n\nexport const DEFAULTS = {\n retry: {\n policy: Schedule.exponential(Duration.millis(200), 2).pipe(\n Schedule.intersect(Schedule.recurs(3)),\n ),\n },\n timeout: {\n ms: 30000,\n },\n bigcommerceUrls: {\n b2b: 'https://api-b2b.bigcommerce.com/api',\n regular: 'https://api.bigcommerce.com/stores',\n },\n customers: {\n getBatchSize: 250,\n },\n salesStaff: {\n getBatchSize: 250,\n },\n companies: {\n salesStaffAssignments: {\n assignBatchSize: 10,\n concurrency: 2,\n },\n extraFields: {\n getBatchSize: 250,\n },\n roles: {\n getBatchSize: 250,\n },\n },\n products: {\n updateBatchSize: 5,\n updateConcurrency: 2,\n inventory: {\n updateBatchSize: 2000,\n updateConcurrency: 2,\n },\n },\n orders: {\n getAllBatchSize: 250,\n shippingAddresses: {\n getAllBatchSize: 250,\n },\n products: {\n getAllBatchSize: 250,\n },\n },\n priceLists: {\n getAllBatchSize: 250,\n },\n} as const;\n","import { Data } from 'effect';\nimport * as z from 'zod';\nexport class BigCommerceUnprocessableEntityError extends Data.TaggedError(\n 'BigCommerceUnprocessableEntityError',\n)<{\n readonly errorDetails: unknown;\n}> {}\n\nexport class BigCommerceUnauthorizedError extends Data.TaggedError(\n 'BigCommerceUnauthorizedError',\n) {}\n\nexport class BigCommerceForbiddenError extends Data.TaggedError('BigCommerceForbiddenError') {}\n\nexport class BigCommerceNotFoundError extends Data.TaggedError('BigCommerceNotFoundError') {}\n\nexport class BigCommerceConflictError extends Data.TaggedError('BigCommerceConflictError')<{\n readonly details: unknown;\n}> {}\n\nexport class BigCommerceConnectionError extends Data.TaggedError('BigCommerceConnectionError')<{\n readonly message: string;\n readonly type: 'timeout' | 'internalError' | 'unknown';\n}> {}\n\nexport class BigCommerceUnknownError extends Data.TaggedError('BigCommerceUnknownError')<{\n cause: unknown;\n}> {}\n\nexport class BigCommerceInvalidResponseError extends Data.TaggedError(\n 'BigCommerceInvalidResponseError',\n)<{\n cause: unknown;\n}> {}\n\nexport class BigCommerceInvalidRequestError extends Data.TaggedError(\n 'BigCommerceInvalidRequestError',\n)<{\n readonly errorDetails: unknown;\n}> {}\n\nexport class BigCommerceParseResponseError extends Data.TaggedError(\n 'BigCommerceParseResponseError',\n)<{\n readonly error: z.ZodError;\n}> {}\n\nexport type SomeBigCommerceError =\n | BigCommerceUnprocessableEntityError\n | BigCommerceUnauthorizedError\n | BigCommerceForbiddenError\n | BigCommerceNotFoundError\n | BigCommerceConflictError\n | BigCommerceConnectionError\n | BigCommerceUnknownError\n | BigCommerceInvalidResponseError\n | BigCommerceInvalidRequestError\n | BigCommerceParseResponseError;\n","import { Context, Effect } from 'effect';\nimport * as z from 'zod';\nimport { type SomeBigCommerceError } from './bigcommerce.error';\nexport type BigCommerceFetchMethods = 'GET' | 'POST' | 'PUT' | 'DELETE';\nexport interface BigCommerceFetchParams<\n // Always send json for now, maybe later send a Blob\n Body extends Record<string, unknown> | Array<Record<string, unknown>>,\n Query extends Record<string, string> | string,\n Result extends z.ZodType,\n> {\n readonly body?: Body;\n readonly query?: Query;\n readonly method: BigCommerceFetchMethods;\n readonly path: string;\n readonly headers?: Record<string, string>;\n readonly isB2B: boolean;\n readonly version: 'v3' | 'v2';\n readonly resultSchema: Result;\n}\n\nexport class BigCommerceFetcher extends Context.Tag('BigCommerceFetcher')<\n BigCommerceFetcher,\n {\n readonly fetch: <\n Body extends Record<string, unknown> | Array<Record<string, unknown>>,\n Query extends Record<string, string> | string,\n Result extends z.ZodType,\n >(\n params: BigCommerceFetchParams<Body, Query, Result>,\n ) => Effect.Effect<z.output<Result>, SomeBigCommerceError>;\n }\n>() {}\n","import { Effect, Layer, Match } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../constants';\nimport {\n BigCommerceConflictError,\n BigCommerceConnectionError,\n BigCommerceForbiddenError,\n BigCommerceInvalidRequestError,\n BigCommerceInvalidResponseError,\n BigCommerceNotFoundError,\n BigCommerceParseResponseError,\n BigCommerceUnauthorizedError,\n BigCommerceUnknownError,\n BigCommerceUnprocessableEntityError,\n type SomeBigCommerceError,\n} from './bigcommerce.error';\nimport { BigCommerceFetcher } from './bigcommerce.fetcher';\nimport { BigCommerceConfig, type NoBigCommerceConfigError } from './config';\n\nconst BigCommerceStatusCodes = {\n UNAUTHORIZED: 401,\n CONFLICT: 409,\n FORBIDDEN: 403,\n NOT_FOUND: 404,\n UNPROCESSABLE_ENTITY: 422,\n INTERNAL_SERVER_ERROR: 500,\n BAD_GATEWAY: 502,\n SERVICE_UNAVAILABLE: 503,\n GATEWAY_TIMEOUT: 504,\n INVALID_REQUEST: 400,\n} as const;\n\nexport const BigCommerceFetcherLive: Layer.Layer<\n BigCommerceFetcher,\n NoBigCommerceConfigError,\n BigCommerceConfig\n> = Layer.effect(\n BigCommerceFetcher,\n Effect.gen(function* () {\n const config = yield* BigCommerceConfig;\n const storeHash = yield* config.getStoreHash;\n const accessToken = yield* config.getAccessToken;\n const timeout = yield* config.getTimeout;\n\n return {\n fetch: (params) => {\n const base = getBase(params);\n const headers: Record<string, string> = {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n 'x-auth-token': accessToken,\n };\n\n if (params.isB2B) {\n headers['x-store-hash'] = storeHash;\n }\n const url = applyParams(base.replace('[storeHash]', storeHash), params.query);\n\n return Effect.tryPromise({\n try: () =>\n fetch(url, {\n headers,\n signal: AbortSignal.timeout(timeout),\n method: params.method,\n ...(params.body && { body: JSON.stringify(params.body) }),\n }),\n catch: (error) => {\n if (error instanceof Error && error.name === 'TimeoutError') {\n return new BigCommerceConnectionError({\n message: `Request timeout after ${timeout}ms`,\n type: 'timeout',\n });\n }\n if (error instanceof Error && error.name === 'AbortError') {\n return new BigCommerceConnectionError({\n message: `Request timeout after ${timeout}ms`,\n type: 'timeout',\n });\n }\n return new BigCommerceUnknownError({ cause: error });\n },\n }).pipe(\n Effect.tapError((error) =>\n Effect.logError('Failed to fetch from BigCommerce API', error.cause),\n ),\n Effect.flatMap((response) => transformResponse(response, params.resultSchema)),\n );\n },\n };\n }),\n);\nconst applyParams = (url: string, params?: Record<string, string | number> | string): URL => {\n const base = new URL(url);\n if (!params) {\n return base;\n }\n if (typeof params === 'string') {\n base.search = params;\n } else {\n for (const [key, value] of Object.entries(params)) {\n base.searchParams.append(key, `${value}`);\n }\n }\n return base;\n};\n\nconst getBase = ({\n isB2B,\n path,\n version,\n}: {\n isB2B: boolean;\n path: string;\n version: 'v3' | 'v2';\n}): string => {\n if (isB2B) {\n return `${DEFAULTS.bigcommerceUrls.b2b}/${version}/io/${path}`;\n }\n return `${DEFAULTS.bigcommerceUrls.regular}/[storeHash]/${version}/${path}`;\n};\nfunction processSuccessResponse<Schema extends z.ZodTypeAny>(response: Response, schema: Schema) {\n return Effect.tryPromise({\n try: () => response.json(),\n catch: (error) => new BigCommerceInvalidResponseError({ cause: error }),\n }).pipe(\n Effect.tapError((error) =>\n Effect.logError('Error parsing response from BigCommerce API', error.cause),\n ),\n Effect.tryMap({\n try: (json) => schema.parse(json),\n catch: (error) => new BigCommerceParseResponseError({ error: error as z.ZodError }),\n }),\n );\n}\nconst processErrorResponse = (response: Response) => {\n const code = response.status;\n return Effect.tryPromise({\n try: () => response.json(),\n catch: (error) => new BigCommerceInvalidResponseError({ cause: error }),\n }).pipe(\n Effect.tapError((error) => Effect.logError('Error parsing error response', error.cause)),\n Effect.flatMap((errorDetails) =>\n Effect.fail(\n Match.value(code).pipe(\n Match.when(\n BigCommerceStatusCodes.INVALID_REQUEST,\n () => new BigCommerceInvalidRequestError({ errorDetails }),\n ),\n Match.when(BigCommerceStatusCodes.UNAUTHORIZED, () => new BigCommerceUnauthorizedError()),\n Match.when(BigCommerceStatusCodes.FORBIDDEN, () => new BigCommerceForbiddenError()),\n Match.when(BigCommerceStatusCodes.NOT_FOUND, () => new BigCommerceNotFoundError()),\n Match.when(\n BigCommerceStatusCodes.CONFLICT,\n () => new BigCommerceConflictError({ details: errorDetails }),\n ),\n Match.when(\n BigCommerceStatusCodes.UNPROCESSABLE_ENTITY,\n () => new BigCommerceUnprocessableEntityError({ errorDetails }),\n ),\n Match.when(\n (code) => code >= 500,\n () =>\n new BigCommerceConnectionError({\n message: `Server error: ${code}`,\n type:\n code === BigCommerceStatusCodes.INTERNAL_SERVER_ERROR\n ? 'internalError'\n : code === BigCommerceStatusCodes.BAD_GATEWAY ||\n code === BigCommerceStatusCodes.GATEWAY_TIMEOUT\n ? 'timeout'\n : 'internalError',\n }),\n ),\n Match.orElse(() => new BigCommerceUnknownError({ cause: errorDetails })),\n ),\n ),\n ),\n );\n};\n\nconst transformResponse = <Schema extends z.ZodTypeAny>(\n response: Response,\n schema: Schema,\n): Effect.Effect<z.output<Schema>, SomeBigCommerceError> => {\n if (response.ok) {\n return processSuccessResponse(response, schema);\n }\n return processErrorResponse(response);\n};\n\n// type PendingErrors = Exclude<\n// SomeBigCommerceError,\n// Effect.Effect.Error<ReturnType<typeof processErrorResponse>> | BigCommerceParseResponseError\n// >;\n","import { Config, Context, Data, Effect, Layer } from 'effect';\nimport { DEFAULTS } from '../constants';\n\n// Define a custom error type using Data.TaggedError\nexport class NoBigCommerceConfigError extends Data.TaggedError('NoBigCommerceConfigError')<{\n readonly key: string;\n}> {}\n\nexport class BigCommerceConfig extends Context.Tag('BigCommerceConfig')<\n BigCommerceConfig,\n {\n readonly getStoreHash: Effect.Effect<string, NoBigCommerceConfigError>;\n readonly getClientId: Effect.Effect<string, NoBigCommerceConfigError>;\n readonly getClientSecret: Effect.Effect<string, NoBigCommerceConfigError>;\n readonly getAccessToken: Effect.Effect<string, NoBigCommerceConfigError>;\n readonly getTimeout: Effect.Effect<number, NoBigCommerceConfigError>;\n }\n>() {}\n\nconst getBigCommerceConfig = (key: string) => {\n return Config.nested(Config.string(key), 'BIGCOMMERCE').pipe(\n Effect.mapError(() => new NoBigCommerceConfigError({ key })),\n );\n};\n\nconst getBigCommerceTimeout = () => {\n return Config.nested(Config.number('TIMEOUT'), 'BIGCOMMERCE').pipe(\n Effect.mapError(() => new NoBigCommerceConfigError({ key: 'TIMEOUT' })),\n // Default to 30 seconds if not configured\n Effect.orElse(() => Effect.succeed(DEFAULTS.timeout.ms)),\n );\n};\n\nexport const BigCommerceConfigLive = Layer.effect(\n BigCommerceConfig,\n Effect.gen(function* () {\n const [storeHash, clientId, clientSecret, accessToken, timeout] = yield* Effect.all([\n getBigCommerceConfig('STORE_HASH'),\n getBigCommerceConfig('CLIENT_ID'),\n getBigCommerceConfig('CLIENT_SECRET'),\n getBigCommerceConfig('ACCESS_TOKEN'),\n getBigCommerceTimeout(),\n ]);\n\n return {\n getStoreHash: Effect.succeed(storeHash),\n getClientId: Effect.succeed(clientId),\n getClientSecret: Effect.succeed(clientSecret),\n getAccessToken: Effect.succeed(accessToken),\n getTimeout: Effect.succeed(timeout),\n };\n }),\n);\n\nexport const BigCommerceConfigTest = Layer.succeed(BigCommerceConfig, {\n getAccessToken: Effect.succeed('test'),\n getClientId: Effect.succeed('test'),\n getClientSecret: Effect.succeed('test'),\n getStoreHash: Effect.succeed('test'),\n getTimeout: Effect.succeed(DEFAULTS.timeout.ms),\n});\n\nexport const validateBigCommerceConfig = () =>\n Effect.gen(function* () {\n const config = yield* BigCommerceConfig;\n const [storeHash, clientId, clientSecret, accessToken, timeout] = yield* Effect.all([\n config.getStoreHash,\n config.getClientId,\n config.getClientSecret,\n config.getAccessToken,\n config.getTimeout,\n ]);\n\n return {\n storeHash,\n clientId,\n clientSecret,\n accessToken,\n timeout,\n };\n });\n","import * as z from 'zod';\nexport const PaymentMethodSchema = z.object({\n id: z.number(),\n paymentCode: z.string(),\n paymentTitle: z.string(),\n});\nexport const GetPaymentMethodsResponseSchema = z.object({\n data: PaymentMethodSchema.array(),\n});\n"],"mappings":"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","names":["import_effect","import_effect","import_effect","import_effect","import_effect","code","qs"]}
1
+ {"version":3,"sources":["../src/bigcommerce-entities/payments/index.ts","../src/bigcommerce-entities/payments/payment-methods.ts","../src/constants.ts","../src/core/bigcommerce.error.ts","../src/core/bigcommerce.fetcher.ts","../src/core/bigcommerce.fetcher.live.ts","../src/core/config.ts","../src/bigcommerce-entities/payments/schemas/payment-methods.schema.ts"],"sourcesContent":["export * from './payment-methods';\nexport * from './schemas';\n","import { Effect } from 'effect';\nimport { stringify } from 'node:querystring';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { GetPaymentMethodsResponseSchema } from './schemas/payment-methods.schema';\nexport const getPaymentMethods = () =>\n Effect.gen(function* () {\n const fetcher = yield* BigCommerceFetcher;\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'GET',\n query: stringify({\n limit: 250,\n }),\n path: 'payments',\n resultSchema: GetPaymentMethodsResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n","import { Duration, Schedule } from 'effect';\n\nexport const DEFAULTS = {\n retry: {\n policy: Schedule.exponential(Duration.millis(200), 2).pipe(\n Schedule.intersect(Schedule.recurs(3)),\n ),\n },\n timeout: {\n ms: 30000,\n },\n bigcommerceUrls: {\n b2b: 'https://api-b2b.bigcommerce.com/api',\n regular: 'https://api.bigcommerce.com/stores',\n },\n customers: {\n getBatchSize: 250,\n },\n salesStaff: {\n getBatchSize: 250,\n },\n companies: {\n salesStaffAssignments: {\n assignBatchSize: 10,\n concurrency: 2,\n },\n extraFields: {\n getBatchSize: 250,\n },\n roles: {\n getBatchSize: 250,\n },\n },\n products: {\n updateBatchSize: 5,\n updateConcurrency: 2,\n inventory: {\n updateBatchSize: 2000,\n updateConcurrency: 2,\n },\n },\n orders: {\n getAllBatchSize: 250,\n shippingAddresses: {\n getAllBatchSize: 250,\n },\n products: {\n getAllBatchSize: 250,\n },\n },\n priceLists: {\n getAllBatchSize: 250,\n },\n} as const;\n","import { Data } from 'effect';\nimport * as z from 'zod';\nexport class BigCommerceUnprocessableEntityError extends Data.TaggedError(\n 'BigCommerceUnprocessableEntityError',\n)<{\n readonly errorDetails: unknown;\n}> {}\n\nexport class BigCommerceUnauthorizedError extends Data.TaggedError(\n 'BigCommerceUnauthorizedError',\n) {}\n\nexport class BigCommerceForbiddenError extends Data.TaggedError('BigCommerceForbiddenError') {}\n\nexport class BigCommerceNotFoundError extends Data.TaggedError('BigCommerceNotFoundError') {}\n\nexport class BigCommerceConflictError extends Data.TaggedError('BigCommerceConflictError')<{\n readonly details: unknown;\n}> {}\n\nexport class BigCommerceConnectionError extends Data.TaggedError('BigCommerceConnectionError')<{\n readonly message: string;\n readonly type: 'timeout' | 'internalError' | 'unknown';\n}> {}\n\nexport class BigCommerceUnknownError extends Data.TaggedError('BigCommerceUnknownError')<{\n cause: unknown;\n}> {}\n\nexport class BigCommerceInvalidResponseError extends Data.TaggedError(\n 'BigCommerceInvalidResponseError',\n)<{\n cause: unknown;\n}> {}\n\nexport class BigCommerceInvalidRequestError extends Data.TaggedError(\n 'BigCommerceInvalidRequestError',\n)<{\n readonly errorDetails: unknown;\n}> {}\n\nexport class BigCommerceParseResponseError extends Data.TaggedError(\n 'BigCommerceParseResponseError',\n)<{\n readonly error: z.ZodError;\n}> {}\n\nexport type SomeBigCommerceError =\n | BigCommerceUnprocessableEntityError\n | BigCommerceUnauthorizedError\n | BigCommerceForbiddenError\n | BigCommerceNotFoundError\n | BigCommerceConflictError\n | BigCommerceConnectionError\n | BigCommerceUnknownError\n | BigCommerceInvalidResponseError\n | BigCommerceInvalidRequestError\n | BigCommerceParseResponseError;\n","import { Context, Effect } from 'effect';\nimport * as z from 'zod';\nimport { type SomeBigCommerceError } from './bigcommerce.error';\nexport type BigCommerceFetchMethods = 'GET' | 'POST' | 'PUT' | 'DELETE';\nexport interface BigCommerceFetchParams<\n // Always send json for now, maybe later send a Blob\n Body extends Record<string, unknown> | Array<Record<string, unknown>>,\n Query extends Record<string, string> | string,\n Result extends z.ZodType,\n> {\n readonly body?: Body;\n readonly query?: Query;\n readonly method: BigCommerceFetchMethods;\n readonly path: string;\n readonly headers?: Record<string, string>;\n readonly isB2B: boolean;\n readonly version: 'v3' | 'v2';\n readonly resultSchema: Result;\n}\n\nexport class BigCommerceFetcher extends Context.Tag('BigCommerceFetcher')<\n BigCommerceFetcher,\n {\n readonly fetch: <\n Body extends Record<string, unknown> | Array<Record<string, unknown>>,\n Query extends Record<string, string> | string,\n Result extends z.ZodType,\n >(\n params: BigCommerceFetchParams<Body, Query, Result>,\n ) => Effect.Effect<z.output<Result>, SomeBigCommerceError>;\n }\n>() {}\n","import { Effect, Layer, Match } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../constants';\nimport {\n BigCommerceConflictError,\n BigCommerceConnectionError,\n BigCommerceForbiddenError,\n BigCommerceInvalidRequestError,\n BigCommerceInvalidResponseError,\n BigCommerceNotFoundError,\n BigCommerceParseResponseError,\n BigCommerceUnauthorizedError,\n BigCommerceUnknownError,\n BigCommerceUnprocessableEntityError,\n type SomeBigCommerceError,\n} from './bigcommerce.error';\nimport { BigCommerceFetcher } from './bigcommerce.fetcher';\nimport { BigCommerceConfig, type NoBigCommerceConfigError } from './config';\nconst BigCommerceStatusCodes = {\n UNAUTHORIZED: 401,\n CONFLICT: 409,\n FORBIDDEN: 403,\n NOT_FOUND: 404,\n UNPROCESSABLE_ENTITY: 422,\n INTERNAL_SERVER_ERROR: 500,\n BAD_GATEWAY: 502,\n SERVICE_UNAVAILABLE: 503,\n GATEWAY_TIMEOUT: 504,\n INVALID_REQUEST: 400,\n} as const;\n\nexport const BigCommerceFetcherLive: Layer.Layer<\n BigCommerceFetcher,\n NoBigCommerceConfigError,\n BigCommerceConfig\n> = Layer.effect(\n BigCommerceFetcher,\n Effect.gen(function* () {\n const config = yield* BigCommerceConfig;\n const storeHash = yield* config.getStoreHash;\n const accessToken = yield* config.getAccessToken;\n const timeout = yield* config.getTimeout;\n\n return {\n fetch: (params) => {\n const base = getBase(params);\n const headers: Record<string, string> = {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n 'x-auth-token': accessToken,\n };\n\n if (params.isB2B) {\n headers['x-store-hash'] = storeHash;\n }\n const url = applyParams(base.replace('[storeHash]', storeHash), params.query);\n\n return Effect.tryPromise({\n try: () =>\n fetch(url, {\n headers,\n signal: AbortSignal.timeout(timeout),\n method: params.method,\n ...(params.body && { body: JSON.stringify(params.body) }),\n }),\n catch: (error) => {\n if (error instanceof Error && error.name === 'TimeoutError') {\n return new BigCommerceConnectionError({\n message: `Request timeout after ${timeout}ms`,\n type: 'timeout',\n });\n }\n if (error instanceof Error && error.name === 'AbortError') {\n return new BigCommerceConnectionError({\n message: `Request timeout after ${timeout}ms`,\n type: 'timeout',\n });\n }\n return new BigCommerceUnknownError({ cause: error });\n },\n }).pipe(\n Effect.tapError((error) =>\n Effect.logError('Failed to fetch from BigCommerce API', error.cause),\n ),\n Effect.flatMap((response) => transformResponse(response, params.resultSchema)),\n );\n },\n };\n }),\n);\nconst applyParams = (url: string, params?: Record<string, string | number> | string): URL => {\n const base = new URL(url);\n if (!params) {\n return base;\n }\n if (typeof params === 'string') {\n base.search = params;\n } else {\n for (const [key, value] of Object.entries(params)) {\n base.searchParams.append(key, `${value}`);\n }\n }\n return base;\n};\n\nconst getBase = ({\n isB2B,\n path,\n version,\n}: {\n isB2B: boolean;\n path: string;\n version: 'v3' | 'v2';\n}): string => {\n if (isB2B) {\n return `${DEFAULTS.bigcommerceUrls.b2b}/${version}/io/${path}`;\n }\n return `${DEFAULTS.bigcommerceUrls.regular}/[storeHash]/${version}/${path}`;\n};\nfunction processSuccessResponse<Schema extends z.ZodTypeAny>(response: Response, schema: Schema) {\n return Effect.tryPromise({\n try: () => response.json(),\n catch: (error) => new BigCommerceInvalidResponseError({ cause: error }),\n }).pipe(\n Effect.tapError((error) =>\n Effect.logError('Error parsing response from BigCommerce API', error.cause),\n ),\n Effect.tryMap({\n try: (json) => schema.parse(json),\n catch: (error) => new BigCommerceParseResponseError({ error: error as z.ZodError }),\n }),\n );\n}\nconst processErrorResponse = (response: Response) => {\n const code = response.status;\n return Effect.tryPromise({\n try: () => response.json(),\n catch: (error) => new BigCommerceInvalidResponseError({ cause: error }),\n }).pipe(\n Effect.tapError((error) => Effect.logError('Error parsing error response', error.cause)),\n Effect.flatMap((errorDetails) =>\n Effect.fail(\n Match.value(code).pipe(\n Match.when(\n BigCommerceStatusCodes.INVALID_REQUEST,\n () => new BigCommerceInvalidRequestError({ errorDetails }),\n ),\n Match.when(BigCommerceStatusCodes.UNAUTHORIZED, () => new BigCommerceUnauthorizedError()),\n Match.when(BigCommerceStatusCodes.FORBIDDEN, () => new BigCommerceForbiddenError()),\n Match.when(BigCommerceStatusCodes.NOT_FOUND, () => new BigCommerceNotFoundError()),\n Match.when(\n BigCommerceStatusCodes.CONFLICT,\n () => new BigCommerceConflictError({ details: errorDetails }),\n ),\n Match.when(\n BigCommerceStatusCodes.UNPROCESSABLE_ENTITY,\n () => new BigCommerceUnprocessableEntityError({ errorDetails }),\n ),\n Match.when(\n (code) => code >= 500,\n () =>\n new BigCommerceConnectionError({\n message: `Server error: ${code}`,\n type:\n code === BigCommerceStatusCodes.INTERNAL_SERVER_ERROR\n ? 'internalError'\n : code === BigCommerceStatusCodes.BAD_GATEWAY ||\n code === BigCommerceStatusCodes.GATEWAY_TIMEOUT\n ? 'timeout'\n : 'internalError',\n }),\n ),\n Match.orElse(() => new BigCommerceUnknownError({ cause: errorDetails })),\n ),\n ),\n ),\n );\n};\n\nconst transformResponse = <Schema extends z.ZodType>(\n response: Response,\n schema: Schema,\n): Effect.Effect<z.output<Schema>, SomeBigCommerceError> => {\n if (response.ok) {\n return processSuccessResponse(response, schema);\n }\n return processErrorResponse(response);\n};\n\n// type PendingErrors = Exclude<\n// SomeBigCommerceError,\n// Effect.Effect.Error<ReturnType<typeof processErrorResponse>> | BigCommerceParseResponseError\n// >;\n","import { Config, Context, Data, Effect, Layer } from 'effect';\nimport { DEFAULTS } from '../constants';\n\n// Define a custom error type using Data.TaggedError\nexport class NoBigCommerceConfigError extends Data.TaggedError('NoBigCommerceConfigError')<{\n readonly key: string;\n}> {}\n\nexport class BigCommerceConfig extends Context.Tag('BigCommerceConfig')<\n BigCommerceConfig,\n {\n readonly getStoreHash: Effect.Effect<string, NoBigCommerceConfigError>;\n readonly getClientId: Effect.Effect<string, NoBigCommerceConfigError>;\n readonly getClientSecret: Effect.Effect<string, NoBigCommerceConfigError>;\n readonly getAccessToken: Effect.Effect<string, NoBigCommerceConfigError>;\n readonly getTimeout: Effect.Effect<number, NoBigCommerceConfigError>;\n }\n>() {}\n\nconst getBigCommerceConfig = (key: string) => {\n return Config.nested(Config.string(key), 'BIGCOMMERCE').pipe(\n Effect.mapError(() => new NoBigCommerceConfigError({ key })),\n );\n};\n\nconst getBigCommerceTimeout = () => {\n return Config.nested(Config.number('TIMEOUT'), 'BIGCOMMERCE').pipe(\n Effect.mapError(() => new NoBigCommerceConfigError({ key: 'TIMEOUT' })),\n // Default to 30 seconds if not configured\n Effect.orElse(() => Effect.succeed(DEFAULTS.timeout.ms)),\n );\n};\n\nexport const BigCommerceConfigLive = Layer.effect(\n BigCommerceConfig,\n Effect.gen(function* () {\n const [storeHash, clientId, clientSecret, accessToken, timeout] = yield* Effect.all([\n getBigCommerceConfig('STORE_HASH'),\n getBigCommerceConfig('CLIENT_ID'),\n getBigCommerceConfig('CLIENT_SECRET'),\n getBigCommerceConfig('ACCESS_TOKEN'),\n getBigCommerceTimeout(),\n ]);\n\n return {\n getStoreHash: Effect.succeed(storeHash),\n getClientId: Effect.succeed(clientId),\n getClientSecret: Effect.succeed(clientSecret),\n getAccessToken: Effect.succeed(accessToken),\n getTimeout: Effect.succeed(timeout),\n };\n }),\n);\n\nexport const BigCommerceConfigTest = Layer.succeed(BigCommerceConfig, {\n getAccessToken: Effect.succeed('test'),\n getClientId: Effect.succeed('test'),\n getClientSecret: Effect.succeed('test'),\n getStoreHash: Effect.succeed('test'),\n getTimeout: Effect.succeed(DEFAULTS.timeout.ms),\n});\n\nexport const validateBigCommerceConfig = () =>\n Effect.gen(function* () {\n const config = yield* BigCommerceConfig;\n const [storeHash, clientId, clientSecret, accessToken, timeout] = yield* Effect.all([\n config.getStoreHash,\n config.getClientId,\n config.getClientSecret,\n config.getAccessToken,\n config.getTimeout,\n ]);\n\n return {\n storeHash,\n clientId,\n clientSecret,\n accessToken,\n timeout,\n };\n });\n","import * as z from 'zod';\nexport const PaymentMethodSchema = z.object({\n id: z.number(),\n paymentCode: z.string(),\n paymentTitle: z.string(),\n});\nexport const GetPaymentMethodsResponseSchema = z.object({\n data: PaymentMethodSchema.array(),\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,IAAAA,iBAAuB;AACvB,8BAA0B;;;ACD1B,oBAAmC;AAE5B,IAAM,WAAW;AAAA,EACtB,OAAO;AAAA,IACL,QAAQ,uBAAS,YAAY,uBAAS,OAAO,GAAG,GAAG,CAAC,EAAE;AAAA,MACpD,uBAAS,UAAU,uBAAS,OAAO,CAAC,CAAC;AAAA,IACvC;AAAA,EACF;AAAA,EACA,SAAS;AAAA,IACP,IAAI;AAAA,EACN;AAAA,EACA,iBAAiB;AAAA,IACf,KAAK;AAAA,IACL,SAAS;AAAA,EACX;AAAA,EACA,WAAW;AAAA,IACT,cAAc;AAAA,EAChB;AAAA,EACA,YAAY;AAAA,IACV,cAAc;AAAA,EAChB;AAAA,EACA,WAAW;AAAA,IACT,uBAAuB;AAAA,MACrB,iBAAiB;AAAA,MACjB,aAAa;AAAA,IACf;AAAA,IACA,aAAa;AAAA,MACX,cAAc;AAAA,IAChB;AAAA,IACA,OAAO;AAAA,MACL,cAAc;AAAA,IAChB;AAAA,EACF;AAAA,EACA,UAAU;AAAA,IACR,iBAAiB;AAAA,IACjB,mBAAmB;AAAA,IACnB,WAAW;AAAA,MACT,iBAAiB;AAAA,MACjB,mBAAmB;AAAA,IACrB;AAAA,EACF;AAAA,EACA,QAAQ;AAAA,IACN,iBAAiB;AAAA,IACjB,mBAAmB;AAAA,MACjB,iBAAiB;AAAA,IACnB;AAAA,IACA,UAAU;AAAA,MACR,iBAAiB;AAAA,IACnB;AAAA,EACF;AAAA,EACA,YAAY;AAAA,IACV,iBAAiB;AAAA,EACnB;AACF;;;ACrDA,IAAAC,iBAAqB;AAEd,IAAM,sCAAN,cAAkD,oBAAK;AAAA,EAC5D;AACF,EAEG;AAAC;AAEG,IAAM,+BAAN,cAA2C,oBAAK;AAAA,EACrD;AACF,EAAE;AAAC;AAEI,IAAM,4BAAN,cAAwC,oBAAK,YAAY,2BAA2B,EAAE;AAAC;AAEvF,IAAM,2BAAN,cAAuC,oBAAK,YAAY,0BAA0B,EAAE;AAAC;AAErF,IAAM,2BAAN,cAAuC,oBAAK,YAAY,0BAA0B,EAEtF;AAAC;AAEG,IAAM,6BAAN,cAAyC,oBAAK,YAAY,4BAA4B,EAG1F;AAAC;AAEG,IAAM,0BAAN,cAAsC,oBAAK,YAAY,yBAAyB,EAEpF;AAAC;AAEG,IAAM,kCAAN,cAA8C,oBAAK;AAAA,EACxD;AACF,EAEG;AAAC;AAEG,IAAM,iCAAN,cAA6C,oBAAK;AAAA,EACvD;AACF,EAEG;AAAC;AAEG,IAAM,gCAAN,cAA4C,oBAAK;AAAA,EACtD;AACF,EAEG;AAAC;;;AC7CJ,IAAAC,iBAAgC;AAoBzB,IAAM,qBAAN,cAAiC,uBAAQ,IAAI,oBAAoB,EAWtE,EAAE;AAAC;;;AC/BL,IAAAC,iBAAqC;;;ACArC,IAAAC,iBAAqD;AAI9C,IAAM,2BAAN,cAAuC,oBAAK,YAAY,0BAA0B,EAEtF;AAAC;AAEG,IAAM,oBAAN,cAAgC,uBAAQ,IAAI,mBAAmB,EASpE,EAAE;AAAC;AAEL,IAAM,uBAAuB,CAAC,QAAgB;AAC5C,SAAO,sBAAO,OAAO,sBAAO,OAAO,GAAG,GAAG,aAAa,EAAE;AAAA,IACtD,sBAAO,SAAS,MAAM,IAAI,yBAAyB,EAAE,IAAI,CAAC,CAAC;AAAA,EAC7D;AACF;AAEA,IAAM,wBAAwB,MAAM;AAClC,SAAO,sBAAO,OAAO,sBAAO,OAAO,SAAS,GAAG,aAAa,EAAE;AAAA,IAC5D,sBAAO,SAAS,MAAM,IAAI,yBAAyB,EAAE,KAAK,UAAU,CAAC,CAAC;AAAA;AAAA,IAEtE,sBAAO,OAAO,MAAM,sBAAO,QAAQ,SAAS,QAAQ,EAAE,CAAC;AAAA,EACzD;AACF;AAEO,IAAM,wBAAwB,qBAAM;AAAA,EACzC;AAAA,EACA,sBAAO,IAAI,aAAa;AACtB,UAAM,CAAC,WAAW,UAAU,cAAc,aAAa,OAAO,IAAI,OAAO,sBAAO,IAAI;AAAA,MAClF,qBAAqB,YAAY;AAAA,MACjC,qBAAqB,WAAW;AAAA,MAChC,qBAAqB,eAAe;AAAA,MACpC,qBAAqB,cAAc;AAAA,MACnC,sBAAsB;AAAA,IACxB,CAAC;AAED,WAAO;AAAA,MACL,cAAc,sBAAO,QAAQ,SAAS;AAAA,MACtC,aAAa,sBAAO,QAAQ,QAAQ;AAAA,MACpC,iBAAiB,sBAAO,QAAQ,YAAY;AAAA,MAC5C,gBAAgB,sBAAO,QAAQ,WAAW;AAAA,MAC1C,YAAY,sBAAO,QAAQ,OAAO;AAAA,IACpC;AAAA,EACF,CAAC;AACH;AAEO,IAAM,wBAAwB,qBAAM,QAAQ,mBAAmB;AAAA,EACpE,gBAAgB,sBAAO,QAAQ,MAAM;AAAA,EACrC,aAAa,sBAAO,QAAQ,MAAM;AAAA,EAClC,iBAAiB,sBAAO,QAAQ,MAAM;AAAA,EACtC,cAAc,sBAAO,QAAQ,MAAM;AAAA,EACnC,YAAY,sBAAO,QAAQ,SAAS,QAAQ,EAAE;AAChD,CAAC;;;AD1CD,IAAM,yBAAyB;AAAA,EAC7B,cAAc;AAAA,EACd,UAAU;AAAA,EACV,WAAW;AAAA,EACX,WAAW;AAAA,EACX,sBAAsB;AAAA,EACtB,uBAAuB;AAAA,EACvB,aAAa;AAAA,EACb,qBAAqB;AAAA,EACrB,iBAAiB;AAAA,EACjB,iBAAiB;AACnB;AAEO,IAAM,yBAIT,qBAAM;AAAA,EACR;AAAA,EACA,sBAAO,IAAI,aAAa;AACtB,UAAM,SAAS,OAAO;AACtB,UAAM,YAAY,OAAO,OAAO;AAChC,UAAM,cAAc,OAAO,OAAO;AAClC,UAAM,UAAU,OAAO,OAAO;AAE9B,WAAO;AAAA,MACL,OAAO,CAAC,WAAW;AACjB,cAAM,OAAO,QAAQ,MAAM;AAC3B,cAAM,UAAkC;AAAA,UACtC,QAAQ;AAAA,UACR,gBAAgB;AAAA,UAChB,gBAAgB;AAAA,QAClB;AAEA,YAAI,OAAO,OAAO;AAChB,kBAAQ,cAAc,IAAI;AAAA,QAC5B;AACA,cAAM,MAAM,YAAY,KAAK,QAAQ,eAAe,SAAS,GAAG,OAAO,KAAK;AAE5E,eAAO,sBAAO,WAAW;AAAA,UACvB,KAAK,MACH,MAAM,KAAK;AAAA,YACT;AAAA,YACA,QAAQ,YAAY,QAAQ,OAAO;AAAA,YACnC,QAAQ,OAAO;AAAA,YACf,GAAI,OAAO,QAAQ,EAAE,MAAM,KAAK,UAAU,OAAO,IAAI,EAAE;AAAA,UACzD,CAAC;AAAA,UACH,OAAO,CAAC,UAAU;AAChB,gBAAI,iBAAiB,SAAS,MAAM,SAAS,gBAAgB;AAC3D,qBAAO,IAAI,2BAA2B;AAAA,gBACpC,SAAS,yBAAyB,OAAO;AAAA,gBACzC,MAAM;AAAA,cACR,CAAC;AAAA,YACH;AACA,gBAAI,iBAAiB,SAAS,MAAM,SAAS,cAAc;AACzD,qBAAO,IAAI,2BAA2B;AAAA,gBACpC,SAAS,yBAAyB,OAAO;AAAA,gBACzC,MAAM;AAAA,cACR,CAAC;AAAA,YACH;AACA,mBAAO,IAAI,wBAAwB,EAAE,OAAO,MAAM,CAAC;AAAA,UACrD;AAAA,QACF,CAAC,EAAE;AAAA,UACD,sBAAO;AAAA,YAAS,CAAC,UACf,sBAAO,SAAS,wCAAwC,MAAM,KAAK;AAAA,UACrE;AAAA,UACA,sBAAO,QAAQ,CAAC,aAAa,kBAAkB,UAAU,OAAO,YAAY,CAAC;AAAA,QAC/E;AAAA,MACF;AAAA,IACF;AAAA,EACF,CAAC;AACH;AACA,IAAM,cAAc,CAAC,KAAa,WAA2D;AAC3F,QAAM,OAAO,IAAI,IAAI,GAAG;AACxB,MAAI,CAAC,QAAQ;AACX,WAAO;AAAA,EACT;AACA,MAAI,OAAO,WAAW,UAAU;AAC9B,SAAK,SAAS;AAAA,EAChB,OAAO;AACL,eAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,MAAM,GAAG;AACjD,WAAK,aAAa,OAAO,KAAK,GAAG,KAAK,EAAE;AAAA,IAC1C;AAAA,EACF;AACA,SAAO;AACT;AAEA,IAAM,UAAU,CAAC;AAAA,EACf;AAAA,EACA;AAAA,EACA;AACF,MAIc;AACZ,MAAI,OAAO;AACT,WAAO,GAAG,SAAS,gBAAgB,GAAG,IAAI,OAAO,OAAO,IAAI;AAAA,EAC9D;AACA,SAAO,GAAG,SAAS,gBAAgB,OAAO,gBAAgB,OAAO,IAAI,IAAI;AAC3E;AACA,SAAS,uBAAoD,UAAoB,QAAgB;AAC/F,SAAO,sBAAO,WAAW;AAAA,IACvB,KAAK,MAAM,SAAS,KAAK;AAAA,IACzB,OAAO,CAAC,UAAU,IAAI,gCAAgC,EAAE,OAAO,MAAM,CAAC;AAAA,EACxE,CAAC,EAAE;AAAA,IACD,sBAAO;AAAA,MAAS,CAAC,UACf,sBAAO,SAAS,+CAA+C,MAAM,KAAK;AAAA,IAC5E;AAAA,IACA,sBAAO,OAAO;AAAA,MACZ,KAAK,CAAC,SAAS,OAAO,MAAM,IAAI;AAAA,MAChC,OAAO,CAAC,UAAU,IAAI,8BAA8B,EAAE,MAA2B,CAAC;AAAA,IACpF,CAAC;AAAA,EACH;AACF;AACA,IAAM,uBAAuB,CAAC,aAAuB;AACnD,QAAM,OAAO,SAAS;AACtB,SAAO,sBAAO,WAAW;AAAA,IACvB,KAAK,MAAM,SAAS,KAAK;AAAA,IACzB,OAAO,CAAC,UAAU,IAAI,gCAAgC,EAAE,OAAO,MAAM,CAAC;AAAA,EACxE,CAAC,EAAE;AAAA,IACD,sBAAO,SAAS,CAAC,UAAU,sBAAO,SAAS,gCAAgC,MAAM,KAAK,CAAC;AAAA,IACvF,sBAAO;AAAA,MAAQ,CAAC,iBACd,sBAAO;AAAA,QACL,qBAAM,MAAM,IAAI,EAAE;AAAA,UAChB,qBAAM;AAAA,YACJ,uBAAuB;AAAA,YACvB,MAAM,IAAI,+BAA+B,EAAE,aAAa,CAAC;AAAA,UAC3D;AAAA,UACA,qBAAM,KAAK,uBAAuB,cAAc,MAAM,IAAI,6BAA6B,CAAC;AAAA,UACxF,qBAAM,KAAK,uBAAuB,WAAW,MAAM,IAAI,0BAA0B,CAAC;AAAA,UAClF,qBAAM,KAAK,uBAAuB,WAAW,MAAM,IAAI,yBAAyB,CAAC;AAAA,UACjF,qBAAM;AAAA,YACJ,uBAAuB;AAAA,YACvB,MAAM,IAAI,yBAAyB,EAAE,SAAS,aAAa,CAAC;AAAA,UAC9D;AAAA,UACA,qBAAM;AAAA,YACJ,uBAAuB;AAAA,YACvB,MAAM,IAAI,oCAAoC,EAAE,aAAa,CAAC;AAAA,UAChE;AAAA,UACA,qBAAM;AAAA,YACJ,CAACC,UAASA,SAAQ;AAAA,YAClB,MACE,IAAI,2BAA2B;AAAA,cAC7B,SAAS,iBAAiB,IAAI;AAAA,cAC9B,MACE,SAAS,uBAAuB,wBAC5B,kBACA,SAAS,uBAAuB,eAC9B,SAAS,uBAAuB,kBAChC,YACA;AAAA,YACV,CAAC;AAAA,UACL;AAAA,UACA,qBAAM,OAAO,MAAM,IAAI,wBAAwB,EAAE,OAAO,aAAa,CAAC,CAAC;AAAA,QACzE;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;AAEA,IAAM,oBAAoB,CACxB,UACA,WAC0D;AAC1D,MAAI,SAAS,IAAI;AACf,WAAO,uBAAuB,UAAU,MAAM;AAAA,EAChD;AACA,SAAO,qBAAqB,QAAQ;AACtC;;;AE3LA,QAAmB;AACZ,IAAM,sBAAwB,SAAO;AAAA,EAC1C,IAAM,SAAO;AAAA,EACb,aAAe,SAAO;AAAA,EACtB,cAAgB,SAAO;AACzB,CAAC;AACM,IAAM,kCAAoC,SAAO;AAAA,EACtD,MAAM,oBAAoB,MAAM;AAClC,CAAC;;;ANHM,IAAM,oBAAoB,MAC/B,sBAAO,IAAI,aAAa;AACtB,QAAM,UAAU,OAAO;AACvB,SAAO,OAAO,sBAAO;AAAA,IACnB,QAAQ,MAAM;AAAA,MACZ,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,WAAO,mCAAU;AAAA,QACf,OAAO;AAAA,MACT,CAAC;AAAA,MACD,MAAM;AAAA,MACN,cAAc;AAAA,MACd,SAAS;AAAA,IACX,CAAC;AAAA,IACD,SAAS,MAAM;AAAA,EACjB;AACF,CAAC;","names":["import_effect","import_effect","import_effect","import_effect","import_effect","code"]}
package/dist/payments.mjs CHANGED
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  BigCommerceFetcher,
3
3
  DEFAULTS
4
- } from "./chunk-2VMEIQCL.mjs";
4
+ } from "./chunk-PAXNZ36X.mjs";
5
5
 
6
6
  // src/bigcommerce-entities/payments/payment-methods.ts
7
7
  import { Effect } from "effect";
8
- import qs from "qs";
8
+ import { stringify } from "querystring";
9
9
 
10
10
  // src/bigcommerce-entities/payments/schemas/payment-methods.schema.ts
11
11
  import * as z from "zod";
@@ -25,7 +25,7 @@ var getPaymentMethods = () => Effect.gen(function* () {
25
25
  fetcher.fetch({
26
26
  isB2B: true,
27
27
  method: "GET",
28
- query: qs.stringify({
28
+ query: stringify({
29
29
  limit: 250
30
30
  }),
31
31
  path: "payments",
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/bigcommerce-entities/payments/payment-methods.ts","../src/bigcommerce-entities/payments/schemas/payment-methods.schema.ts"],"sourcesContent":["import { Effect } from 'effect';\nimport qs from 'qs';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { GetPaymentMethodsResponseSchema } from './schemas/payment-methods.schema';\nexport const getPaymentMethods = () =>\n Effect.gen(function* () {\n const fetcher = yield* BigCommerceFetcher;\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'GET',\n query: qs.stringify({\n limit: 250,\n }),\n path: 'payments',\n resultSchema: GetPaymentMethodsResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n","import * as z from 'zod';\nexport const PaymentMethodSchema = z.object({\n id: z.number(),\n paymentCode: z.string(),\n paymentTitle: z.string(),\n});\nexport const GetPaymentMethodsResponseSchema = z.object({\n data: PaymentMethodSchema.array(),\n});\n"],"mappings":";;;;;;AAAA,SAAS,cAAc;AACvB,OAAO,QAAQ;;;ACDf,YAAY,OAAO;AACZ,IAAM,sBAAwB,SAAO;AAAA,EAC1C,IAAM,SAAO;AAAA,EACb,aAAe,SAAO;AAAA,EACtB,cAAgB,SAAO;AACzB,CAAC;AACM,IAAM,kCAAoC,SAAO;AAAA,EACtD,MAAM,oBAAoB,MAAM;AAClC,CAAC;;;ADHM,IAAM,oBAAoB,MAC/B,OAAO,IAAI,aAAa;AACtB,QAAM,UAAU,OAAO;AACvB,SAAO,OAAO,OAAO;AAAA,IACnB,QAAQ,MAAM;AAAA,MACZ,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,OAAO,GAAG,UAAU;AAAA,QAClB,OAAO;AAAA,MACT,CAAC;AAAA,MACD,MAAM;AAAA,MACN,cAAc;AAAA,MACd,SAAS;AAAA,IACX,CAAC;AAAA,IACD,SAAS,MAAM;AAAA,EACjB;AACF,CAAC;","names":[]}
1
+ {"version":3,"sources":["../src/bigcommerce-entities/payments/payment-methods.ts","../src/bigcommerce-entities/payments/schemas/payment-methods.schema.ts"],"sourcesContent":["import { Effect } from 'effect';\nimport { stringify } from 'node:querystring';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { GetPaymentMethodsResponseSchema } from './schemas/payment-methods.schema';\nexport const getPaymentMethods = () =>\n Effect.gen(function* () {\n const fetcher = yield* BigCommerceFetcher;\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'GET',\n query: stringify({\n limit: 250,\n }),\n path: 'payments',\n resultSchema: GetPaymentMethodsResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n","import * as z from 'zod';\nexport const PaymentMethodSchema = z.object({\n id: z.number(),\n paymentCode: z.string(),\n paymentTitle: z.string(),\n});\nexport const GetPaymentMethodsResponseSchema = z.object({\n data: PaymentMethodSchema.array(),\n});\n"],"mappings":";;;;;;AAAA,SAAS,cAAc;AACvB,SAAS,iBAAiB;;;ACD1B,YAAY,OAAO;AACZ,IAAM,sBAAwB,SAAO;AAAA,EAC1C,IAAM,SAAO;AAAA,EACb,aAAe,SAAO;AAAA,EACtB,cAAgB,SAAO;AACzB,CAAC;AACM,IAAM,kCAAoC,SAAO;AAAA,EACtD,MAAM,oBAAoB,MAAM;AAClC,CAAC;;;ADHM,IAAM,oBAAoB,MAC/B,OAAO,IAAI,aAAa;AACtB,QAAM,UAAU,OAAO;AACvB,SAAO,OAAO,OAAO;AAAA,IACnB,QAAQ,MAAM;AAAA,MACZ,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,OAAO,UAAU;AAAA,QACf,OAAO;AAAA,MACT,CAAC;AAAA,MACD,MAAM;AAAA,MACN,cAAc;AAAA,MACd,SAAS;AAAA,IACX,CAAC;AAAA,IACD,SAAS,MAAM;AAAA,EACjB;AACF,CAAC;","names":[]}
@@ -379,7 +379,7 @@ var createPriceList = (data) => import_effect8.Effect.gen(function* () {
379
379
 
380
380
  // src/bigcommerce-entities/price-lists/get-price-lists.ts
381
381
  var import_effect9 = require("effect");
382
- var import_qs = __toESM(require("qs"));
382
+ var import_node_querystring = require("querystring");
383
383
 
384
384
  // src/bigcommerce-entities/price-lists/schemas/get-prices-lists.schema.ts
385
385
  var z2 = __toESM(require("zod"));
@@ -416,7 +416,7 @@ var findPriceLists = (criteria) => import_effect9.Effect.gen(function* () {
416
416
  fetcher.fetch({
417
417
  isB2B: false,
418
418
  method: "GET",
419
- query: import_qs.default.stringify(validatedCriteria),
419
+ query: (0, import_node_querystring.stringify)(validatedCriteria),
420
420
  path: "pricelists",
421
421
  resultSchema: GetPriceListsResponseSchema,
422
422
  version: "v3"