@thorprovider/medusa-extended 1.5.0 → 1.7.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/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # @thorprovider/medusa-extended
2
2
 
3
+ ## 1.7.0
4
+
5
+ ### Minor Changes
6
+
7
+ - Extend dropshipper draft-order types and publish the matching client methods.
8
+
9
+ - `@thorprovider/types`: Added draft-order fields to `DropshipperDraftOrder`, `DropshipperDraftOrderItem`, `DropshipperOrderCustomer`, and `DropshipperOrderShippingAddress` so the dashboard can consume canonical types instead of local redefinitions. Included `total_cost`, `total_profit`, `shipping_method`, `payment_method`, `region_id`, `use_same_address`, `variant_id`, `product_id`, `sale_price`, and `applied_tier_min_qty`.
10
+ - `@thorprovider/medusa-extended`: Published the `DropshipperClient` draft-order methods (`getDraftOrders`, `getDraftOrder`, `createDraftOrder`, `updateDraftOrder`, `convertDraftOrder`) and the product status / customer update helpers.
11
+
12
+ ### Patch Changes
13
+
14
+ - Updated dependencies
15
+ - @thorprovider/types@3.13.0
16
+
3
17
  ## 1.2.1
4
18
 
5
19
  ### Patch Changes
package/dist/index.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- import { GetChannelCustomersOptions, GetChannelCustomersResponse, GetChannelApiKeysResponse, GetChannelCategoriesOptions, GetChannelCategoriesResponse, GetCategorySalesChannelsResponse, AssignCategoriesToChannelsBody, AssignCategoriesToChannelsResponse, UnassignCategoriesFromChannelsBody, UnassignCategoriesFromChannelsResponse, GetCollectionSalesChannelsResponse, AssignCollectionsToChannelsBody, AssignCollectionsToChannelsResponse, UnassignCollectionsFromChannelsBody, UnassignCollectionsFromChannelsResponse, GetAdminStorefrontConfigResponse, UpdateStorefrontConfigBody, UpdateStorefrontConfigResponse, GetAdminSiteConfigResponse, UpdateSiteConfigBody, UpdateSiteConfigResponse, GetAdminSiteConfigHistoryOptions, GetAdminSiteConfigHistoryResponse, RestoreSiteConfigResponse, DropshipperDashboardCapabilities, OnboardDropshipperBody, OnboardDropshipperResponse, GetVariantCostsOptions, GetVariantCostsResponse, CreateVariantCostBody, CreateVariantCostResponse, BatchVariantCostsBody, BatchVariantCostsResponse, DeleteVariantCostResponse, GetDropshipperProductsOptions, GetDropshipperProductsResponse, UpdateDropshipperProductStatusBody, UpdateDropshipperProductStatusResponse, UpdateDropshipperPricesBody, UpdateDropshipperPricesResponse, GetDropshipperOrdersOptions, GetDropshipperOrdersResponse, GetDropshipperOrderDetailResponse, GetDropshipperShippingOptionsParams, GetDropshipperShippingOptionsResponse, ExtendedCreateDropshipperOrderBody, ExtendedCreateDropshipperOrderResponse, SetPaymentCollectorBody, SetPaymentCollectorResponse, CancelDropshipperOrderResponse, CreateOrderEditBody, CreateOrderEditResponse, AddOrderEditItemBody, AddOrderEditItemResponse, ConfirmOrderEditResponse, GetOrderNotesResponse, CreateOrderNoteBody, OrderNote, DeleteOrderNoteResponse, GetProviderCategoriesResponse, GetDropshipperCategoriesOptions, GetDropshipperCategoriesResponse, CreateDropshipperCategoryBody, DropshipperCategory, UpdateDropshipperCategoryBody, DeleteDropshipperCategoryResponse, GetCategoryMappingsOptions, GetCategoryMappingsResponse, CreateCategoryMappingBody, CreateCategoryMappingResponse, DeleteCategoryMappingResponse, GetDropshipperCustomersOptions, GetDropshipperCustomersResponse, GetDropshipperCustomerDetailResponse, CreateDropshipperCustomerBody, CreateDropshipperCustomerResponse, GetDropshipperAddressesResponse, DropshipperAddressBody, DropshipperAddressResponse, GetDropshipperAccountResponse, GetDropshipperPayableResponse, GetDropshipperReceivableResponse, GetSettlementsOptions, GetSettlementsResponse, GetSettlementDetailResponse, GetDropshipperAccountBalanceResponse, GetDropshipperAccountOrdersOptions, GetDropshipperAccountOrdersResponse, CreateSettlementBody, CreateSettlementResponse, ConfirmSettlementBody, UpdateSettlementStatusResponse, CancelSettlementBody, GetAdminDropshipperAccountsResponse, GetAdminAccountBalanceResponse, GetAdminPriceListsResponse, GetUserChannelResponse, GetAdminDropshipperAccountOrdersResponse, GetAdminDropshipperAccountSettlementsOptions, GetAdminDropshipperAccountSettlementsResponse, ResolveGuaranteeBody, ResolveGuaranteeResponse, CreateCompensacionBody, CreateCompensacionResponse, CreateAjusteBody, CreateAjusteResponse, CreateCobroBody, CreateCobroResponse, CreatePagoBody, CreatePagoResponse, CreateReversoBody, CreateReversoResponse, ConfirmMovementBody, ConfirmMovementResponse, CancelMovementBody, CancelMovementResponse, GetFinancialAnalysisResponse, RegisterPaymentBody, RegisterPaymentResponse, GetDropshipperPromotionsOptions, GetDropshipperPromotionsResponse, CreateDropshipperPromotionBody, DropshipperPromotion, UpdateDropshipperPromotionBody, DeleteDropshipperPromotionResponse, GetDashboardStatsOptions, GetDashboardStatsResponse, GetStorefrontDropshipperCategoriesResponse, GetGeoCountriesResponse, GetGeoProvincesResponse, GetGeoCitiesResponse } from '@thorprovider/types';
1
+ import { GetChannelCustomersOptions, GetChannelCustomersResponse, GetChannelApiKeysResponse, GetChannelCategoriesOptions, GetChannelCategoriesResponse, GetCategorySalesChannelsResponse, AssignCategoriesToChannelsBody, AssignCategoriesToChannelsResponse, UnassignCategoriesFromChannelsBody, UnassignCategoriesFromChannelsResponse, GetCollectionSalesChannelsResponse, AssignCollectionsToChannelsBody, AssignCollectionsToChannelsResponse, UnassignCollectionsFromChannelsBody, UnassignCollectionsFromChannelsResponse, GetAdminStorefrontConfigResponse, UpdateStorefrontConfigBody, UpdateStorefrontConfigResponse, GetAdminSiteConfigResponse, UpdateSiteConfigBody, UpdateSiteConfigResponse, GetAdminSiteConfigHistoryOptions, GetAdminSiteConfigHistoryResponse, RestoreSiteConfigResponse, DropshipperDashboardCapabilities, OnboardDropshipperBody, OnboardDropshipperResponse, GetVariantCostsOptions, GetVariantCostsResponse, CreateVariantCostBody, CreateVariantCostResponse, BatchVariantCostsBody, BatchVariantCostsResponse, DeleteVariantCostResponse, GetDropshipperProductsOptions, GetDropshipperProductsResponse, UpdateDropshipperProductStatusBody, UpdateDropshipperProductStatusResponse, UpdateDropshipperPricesBody, UpdateDropshipperPricesResponse, GetDropshipperOrdersOptions, GetDropshipperOrdersResponse, GetDropshipperOrderDetailResponse, GetDropshipperShippingOptionsParams, GetDropshipperShippingOptionsResponse, ExtendedCreateDropshipperOrderBody, ExtendedCreateDropshipperOrderResponse, SetPaymentCollectorBody, SetPaymentCollectorResponse, CancelDropshipperOrderResponse, CreateOrderEditBody, CreateOrderEditResponse, AddOrderEditItemBody, AddOrderEditItemResponse, ConfirmOrderEditResponse, GetOrderNotesResponse, CreateOrderNoteBody, OrderNote, DeleteOrderNoteResponse, GetProviderCategoriesResponse, GetDropshipperCategoriesOptions, GetDropshipperCategoriesResponse, CreateDropshipperCategoryBody, DropshipperCategory, UpdateDropshipperCategoryBody, DeleteDropshipperCategoryResponse, GetCategoryMappingsOptions, GetCategoryMappingsResponse, CreateCategoryMappingBody, CreateCategoryMappingResponse, DeleteCategoryMappingResponse, GetDropshipperCustomersOptions, GetDropshipperCustomersResponse, GetDropshipperCustomerDetailResponse, CreateDropshipperCustomerBody, CreateDropshipperCustomerResponse, UpdateDropshipperCustomerBody, UpdateDropshipperCustomerResponse, GetDropshipperAddressesResponse, DropshipperAddressBody, DropshipperAddressResponse, GetDropshipperAccountResponse, GetDropshipperPayableResponse, GetDropshipperReceivableResponse, GetSettlementsOptions, GetSettlementsResponse, GetSettlementDetailResponse, GetDropshipperAccountBalanceResponse, GetDropshipperAccountOrdersOptions, GetDropshipperAccountOrdersResponse, CreateSettlementBody, CreateSettlementResponse, ConfirmSettlementBody, UpdateSettlementStatusResponse, CancelSettlementBody, GetAdminDropshipperAccountsResponse, GetAdminAccountBalanceResponse, GetAdminPriceListsResponse, GetUserChannelResponse, GetAdminDropshipperAccountOrdersResponse, GetAdminDropshipperAccountSettlementsOptions, GetAdminDropshipperAccountSettlementsResponse, ResolveGuaranteeBody, ResolveGuaranteeResponse, CreateCompensacionBody, CreateCompensacionResponse, CreateAjusteBody, CreateAjusteResponse, CreateCobroBody, CreateCobroResponse, CreatePagoBody, CreatePagoResponse, CreateReversoBody, CreateReversoResponse, ConfirmMovementBody, ConfirmMovementResponse, CancelMovementBody, CancelMovementResponse, GetFinancialAnalysisResponse, RegisterPaymentBody, RegisterPaymentResponse, GetDropshipperPromotionsOptions, GetDropshipperPromotionsResponse, CreateDropshipperPromotionBody, DropshipperPromotion, UpdateDropshipperPromotionBody, DeleteDropshipperPromotionResponse, GetDashboardStatsOptions, GetDashboardStatsResponse, GetStorefrontDropshipperCategoriesResponse, GetDropshipperDraftOrdersOptions, GetDropshipperDraftOrdersResponse, GetDropshipperDraftOrderDetailResponse, CreateDropshipperDraftOrderBody, CreateDropshipperDraftOrderResponse, UpdateDropshipperDraftOrderBody, UpdateDropshipperDraftOrderResponse, ConvertDropshipperDraftOrderBody, ConvertDropshipperDraftOrderResponse, GetGeoCountriesResponse, GetGeoProvincesResponse, GetGeoCitiesResponse } from '@thorprovider/types';
2
2
 
3
3
  /**
4
4
  * @fileoverview Medusa Multi-Tenant Admin Client
@@ -401,6 +401,12 @@ declare class DropshipperClient {
401
401
  * `POST /admin/thor/dropshipper/customers`
402
402
  */
403
403
  createCustomer(body: CreateDropshipperCustomerBody): Promise<CreateDropshipperCustomerResponse>;
404
+ /**
405
+ * Update a customer scoped to Y's channel.
406
+ *
407
+ * `POST /admin/thor/dropshipper/customers/:id`
408
+ */
409
+ updateCustomer(customerId: string, body: UpdateDropshipperCustomerBody): Promise<UpdateDropshipperCustomerResponse>;
404
410
  /**
405
411
  * List addresses for a customer in Y's channel.
406
412
  *
@@ -633,6 +639,36 @@ declare class DropshipperClient {
633
639
  * `GET /store/thor/dropshipper-categories`
634
640
  */
635
641
  getStorefrontCategories(): Promise<GetStorefrontDropshipperCategoriesResponse>;
642
+ /**
643
+ * List all draft orders in the dropshipper's channel.
644
+ *
645
+ * `GET /admin/thor/dropshipper/draft-orders`
646
+ */
647
+ getDraftOrders(options?: GetDropshipperDraftOrdersOptions): Promise<GetDropshipperDraftOrdersResponse>;
648
+ /**
649
+ * Get a specific draft order by ID.
650
+ *
651
+ * `GET /admin/thor/dropshipper/draft-orders/:id`
652
+ */
653
+ getDraftOrder(draftOrderId: string): Promise<GetDropshipperDraftOrderDetailResponse>;
654
+ /**
655
+ * Create a new draft order.
656
+ *
657
+ * `POST /admin/thor/dropshipper/draft-orders`
658
+ */
659
+ createDraftOrder(body: CreateDropshipperDraftOrderBody): Promise<CreateDropshipperDraftOrderResponse>;
660
+ /**
661
+ * Update a draft order.
662
+ *
663
+ * `POST /admin/thor/dropshipper/draft-orders/:id`
664
+ */
665
+ updateDraftOrder(draftOrderId: string, body: UpdateDropshipperDraftOrderBody): Promise<UpdateDropshipperDraftOrderResponse>;
666
+ /**
667
+ * Convert a draft order to a real order.
668
+ *
669
+ * `POST /admin/thor/dropshipper/draft-orders/:id/convert`
670
+ */
671
+ convertDraftOrder(draftOrderId: string, body: ConvertDropshipperDraftOrderBody): Promise<ConvertDropshipperDraftOrderResponse>;
636
672
  /**
637
673
  * List all geo-reference countries.
638
674
  *
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { GetChannelCustomersOptions, GetChannelCustomersResponse, GetChannelApiKeysResponse, GetChannelCategoriesOptions, GetChannelCategoriesResponse, GetCategorySalesChannelsResponse, AssignCategoriesToChannelsBody, AssignCategoriesToChannelsResponse, UnassignCategoriesFromChannelsBody, UnassignCategoriesFromChannelsResponse, GetCollectionSalesChannelsResponse, AssignCollectionsToChannelsBody, AssignCollectionsToChannelsResponse, UnassignCollectionsFromChannelsBody, UnassignCollectionsFromChannelsResponse, GetAdminStorefrontConfigResponse, UpdateStorefrontConfigBody, UpdateStorefrontConfigResponse, GetAdminSiteConfigResponse, UpdateSiteConfigBody, UpdateSiteConfigResponse, GetAdminSiteConfigHistoryOptions, GetAdminSiteConfigHistoryResponse, RestoreSiteConfigResponse, DropshipperDashboardCapabilities, OnboardDropshipperBody, OnboardDropshipperResponse, GetVariantCostsOptions, GetVariantCostsResponse, CreateVariantCostBody, CreateVariantCostResponse, BatchVariantCostsBody, BatchVariantCostsResponse, DeleteVariantCostResponse, GetDropshipperProductsOptions, GetDropshipperProductsResponse, UpdateDropshipperProductStatusBody, UpdateDropshipperProductStatusResponse, UpdateDropshipperPricesBody, UpdateDropshipperPricesResponse, GetDropshipperOrdersOptions, GetDropshipperOrdersResponse, GetDropshipperOrderDetailResponse, GetDropshipperShippingOptionsParams, GetDropshipperShippingOptionsResponse, ExtendedCreateDropshipperOrderBody, ExtendedCreateDropshipperOrderResponse, SetPaymentCollectorBody, SetPaymentCollectorResponse, CancelDropshipperOrderResponse, CreateOrderEditBody, CreateOrderEditResponse, AddOrderEditItemBody, AddOrderEditItemResponse, ConfirmOrderEditResponse, GetOrderNotesResponse, CreateOrderNoteBody, OrderNote, DeleteOrderNoteResponse, GetProviderCategoriesResponse, GetDropshipperCategoriesOptions, GetDropshipperCategoriesResponse, CreateDropshipperCategoryBody, DropshipperCategory, UpdateDropshipperCategoryBody, DeleteDropshipperCategoryResponse, GetCategoryMappingsOptions, GetCategoryMappingsResponse, CreateCategoryMappingBody, CreateCategoryMappingResponse, DeleteCategoryMappingResponse, GetDropshipperCustomersOptions, GetDropshipperCustomersResponse, GetDropshipperCustomerDetailResponse, CreateDropshipperCustomerBody, CreateDropshipperCustomerResponse, GetDropshipperAddressesResponse, DropshipperAddressBody, DropshipperAddressResponse, GetDropshipperAccountResponse, GetDropshipperPayableResponse, GetDropshipperReceivableResponse, GetSettlementsOptions, GetSettlementsResponse, GetSettlementDetailResponse, GetDropshipperAccountBalanceResponse, GetDropshipperAccountOrdersOptions, GetDropshipperAccountOrdersResponse, CreateSettlementBody, CreateSettlementResponse, ConfirmSettlementBody, UpdateSettlementStatusResponse, CancelSettlementBody, GetAdminDropshipperAccountsResponse, GetAdminAccountBalanceResponse, GetAdminPriceListsResponse, GetUserChannelResponse, GetAdminDropshipperAccountOrdersResponse, GetAdminDropshipperAccountSettlementsOptions, GetAdminDropshipperAccountSettlementsResponse, ResolveGuaranteeBody, ResolveGuaranteeResponse, CreateCompensacionBody, CreateCompensacionResponse, CreateAjusteBody, CreateAjusteResponse, CreateCobroBody, CreateCobroResponse, CreatePagoBody, CreatePagoResponse, CreateReversoBody, CreateReversoResponse, ConfirmMovementBody, ConfirmMovementResponse, CancelMovementBody, CancelMovementResponse, GetFinancialAnalysisResponse, RegisterPaymentBody, RegisterPaymentResponse, GetDropshipperPromotionsOptions, GetDropshipperPromotionsResponse, CreateDropshipperPromotionBody, DropshipperPromotion, UpdateDropshipperPromotionBody, DeleteDropshipperPromotionResponse, GetDashboardStatsOptions, GetDashboardStatsResponse, GetStorefrontDropshipperCategoriesResponse, GetGeoCountriesResponse, GetGeoProvincesResponse, GetGeoCitiesResponse } from '@thorprovider/types';
1
+ import { GetChannelCustomersOptions, GetChannelCustomersResponse, GetChannelApiKeysResponse, GetChannelCategoriesOptions, GetChannelCategoriesResponse, GetCategorySalesChannelsResponse, AssignCategoriesToChannelsBody, AssignCategoriesToChannelsResponse, UnassignCategoriesFromChannelsBody, UnassignCategoriesFromChannelsResponse, GetCollectionSalesChannelsResponse, AssignCollectionsToChannelsBody, AssignCollectionsToChannelsResponse, UnassignCollectionsFromChannelsBody, UnassignCollectionsFromChannelsResponse, GetAdminStorefrontConfigResponse, UpdateStorefrontConfigBody, UpdateStorefrontConfigResponse, GetAdminSiteConfigResponse, UpdateSiteConfigBody, UpdateSiteConfigResponse, GetAdminSiteConfigHistoryOptions, GetAdminSiteConfigHistoryResponse, RestoreSiteConfigResponse, DropshipperDashboardCapabilities, OnboardDropshipperBody, OnboardDropshipperResponse, GetVariantCostsOptions, GetVariantCostsResponse, CreateVariantCostBody, CreateVariantCostResponse, BatchVariantCostsBody, BatchVariantCostsResponse, DeleteVariantCostResponse, GetDropshipperProductsOptions, GetDropshipperProductsResponse, UpdateDropshipperProductStatusBody, UpdateDropshipperProductStatusResponse, UpdateDropshipperPricesBody, UpdateDropshipperPricesResponse, GetDropshipperOrdersOptions, GetDropshipperOrdersResponse, GetDropshipperOrderDetailResponse, GetDropshipperShippingOptionsParams, GetDropshipperShippingOptionsResponse, ExtendedCreateDropshipperOrderBody, ExtendedCreateDropshipperOrderResponse, SetPaymentCollectorBody, SetPaymentCollectorResponse, CancelDropshipperOrderResponse, CreateOrderEditBody, CreateOrderEditResponse, AddOrderEditItemBody, AddOrderEditItemResponse, ConfirmOrderEditResponse, GetOrderNotesResponse, CreateOrderNoteBody, OrderNote, DeleteOrderNoteResponse, GetProviderCategoriesResponse, GetDropshipperCategoriesOptions, GetDropshipperCategoriesResponse, CreateDropshipperCategoryBody, DropshipperCategory, UpdateDropshipperCategoryBody, DeleteDropshipperCategoryResponse, GetCategoryMappingsOptions, GetCategoryMappingsResponse, CreateCategoryMappingBody, CreateCategoryMappingResponse, DeleteCategoryMappingResponse, GetDropshipperCustomersOptions, GetDropshipperCustomersResponse, GetDropshipperCustomerDetailResponse, CreateDropshipperCustomerBody, CreateDropshipperCustomerResponse, UpdateDropshipperCustomerBody, UpdateDropshipperCustomerResponse, GetDropshipperAddressesResponse, DropshipperAddressBody, DropshipperAddressResponse, GetDropshipperAccountResponse, GetDropshipperPayableResponse, GetDropshipperReceivableResponse, GetSettlementsOptions, GetSettlementsResponse, GetSettlementDetailResponse, GetDropshipperAccountBalanceResponse, GetDropshipperAccountOrdersOptions, GetDropshipperAccountOrdersResponse, CreateSettlementBody, CreateSettlementResponse, ConfirmSettlementBody, UpdateSettlementStatusResponse, CancelSettlementBody, GetAdminDropshipperAccountsResponse, GetAdminAccountBalanceResponse, GetAdminPriceListsResponse, GetUserChannelResponse, GetAdminDropshipperAccountOrdersResponse, GetAdminDropshipperAccountSettlementsOptions, GetAdminDropshipperAccountSettlementsResponse, ResolveGuaranteeBody, ResolveGuaranteeResponse, CreateCompensacionBody, CreateCompensacionResponse, CreateAjusteBody, CreateAjusteResponse, CreateCobroBody, CreateCobroResponse, CreatePagoBody, CreatePagoResponse, CreateReversoBody, CreateReversoResponse, ConfirmMovementBody, ConfirmMovementResponse, CancelMovementBody, CancelMovementResponse, GetFinancialAnalysisResponse, RegisterPaymentBody, RegisterPaymentResponse, GetDropshipperPromotionsOptions, GetDropshipperPromotionsResponse, CreateDropshipperPromotionBody, DropshipperPromotion, UpdateDropshipperPromotionBody, DeleteDropshipperPromotionResponse, GetDashboardStatsOptions, GetDashboardStatsResponse, GetStorefrontDropshipperCategoriesResponse, GetDropshipperDraftOrdersOptions, GetDropshipperDraftOrdersResponse, GetDropshipperDraftOrderDetailResponse, CreateDropshipperDraftOrderBody, CreateDropshipperDraftOrderResponse, UpdateDropshipperDraftOrderBody, UpdateDropshipperDraftOrderResponse, ConvertDropshipperDraftOrderBody, ConvertDropshipperDraftOrderResponse, GetGeoCountriesResponse, GetGeoProvincesResponse, GetGeoCitiesResponse } from '@thorprovider/types';
2
2
 
3
3
  /**
4
4
  * @fileoverview Medusa Multi-Tenant Admin Client
@@ -401,6 +401,12 @@ declare class DropshipperClient {
401
401
  * `POST /admin/thor/dropshipper/customers`
402
402
  */
403
403
  createCustomer(body: CreateDropshipperCustomerBody): Promise<CreateDropshipperCustomerResponse>;
404
+ /**
405
+ * Update a customer scoped to Y's channel.
406
+ *
407
+ * `POST /admin/thor/dropshipper/customers/:id`
408
+ */
409
+ updateCustomer(customerId: string, body: UpdateDropshipperCustomerBody): Promise<UpdateDropshipperCustomerResponse>;
404
410
  /**
405
411
  * List addresses for a customer in Y's channel.
406
412
  *
@@ -633,6 +639,36 @@ declare class DropshipperClient {
633
639
  * `GET /store/thor/dropshipper-categories`
634
640
  */
635
641
  getStorefrontCategories(): Promise<GetStorefrontDropshipperCategoriesResponse>;
642
+ /**
643
+ * List all draft orders in the dropshipper's channel.
644
+ *
645
+ * `GET /admin/thor/dropshipper/draft-orders`
646
+ */
647
+ getDraftOrders(options?: GetDropshipperDraftOrdersOptions): Promise<GetDropshipperDraftOrdersResponse>;
648
+ /**
649
+ * Get a specific draft order by ID.
650
+ *
651
+ * `GET /admin/thor/dropshipper/draft-orders/:id`
652
+ */
653
+ getDraftOrder(draftOrderId: string): Promise<GetDropshipperDraftOrderDetailResponse>;
654
+ /**
655
+ * Create a new draft order.
656
+ *
657
+ * `POST /admin/thor/dropshipper/draft-orders`
658
+ */
659
+ createDraftOrder(body: CreateDropshipperDraftOrderBody): Promise<CreateDropshipperDraftOrderResponse>;
660
+ /**
661
+ * Update a draft order.
662
+ *
663
+ * `POST /admin/thor/dropshipper/draft-orders/:id`
664
+ */
665
+ updateDraftOrder(draftOrderId: string, body: UpdateDropshipperDraftOrderBody): Promise<UpdateDropshipperDraftOrderResponse>;
666
+ /**
667
+ * Convert a draft order to a real order.
668
+ *
669
+ * `POST /admin/thor/dropshipper/draft-orders/:id/convert`
670
+ */
671
+ convertDraftOrder(draftOrderId: string, body: ConvertDropshipperDraftOrderBody): Promise<ConvertDropshipperDraftOrderResponse>;
636
672
  /**
637
673
  * List all geo-reference countries.
638
674
  *
package/dist/index.js CHANGED
@@ -54,6 +54,8 @@ function isRetryableError(error, config) {
54
54
  }
55
55
  async function fetchWithRetry(url, init, retryConfig) {
56
56
  const config = { ...DEFAULT_RETRY_CONFIG, ...retryConfig };
57
+ const method = (init.method || "GET").toUpperCase();
58
+ const isMutation = ["POST", "PUT", "PATCH", "DELETE"].includes(method);
57
59
  let lastError;
58
60
  for (let attempt = 0; attempt <= config.maxRetries; attempt++) {
59
61
  try {
@@ -69,6 +71,10 @@ async function fetchWithRetry(url, init, retryConfig) {
69
71
  return response;
70
72
  } catch (error) {
71
73
  lastError = error;
74
+ const isTimeoutOrNetwork = error instanceof Error && (error.name === "AbortError" || error.message?.includes("timeout") || error.message?.includes("fetch failed"));
75
+ if (isMutation && isTimeoutOrNetwork) {
76
+ break;
77
+ }
72
78
  const shouldRetry = attempt < config.maxRetries && isRetryableError(error, config);
73
79
  if (shouldRetry) {
74
80
  await sleep(calculateDelay(attempt, config));
@@ -873,6 +879,18 @@ var DropshipperClient = class {
873
879
  body
874
880
  );
875
881
  }
882
+ /**
883
+ * Update a customer scoped to Y's channel.
884
+ *
885
+ * `POST /admin/thor/dropshipper/customers/:id`
886
+ */
887
+ async updateCustomer(customerId, body) {
888
+ return this.request(
889
+ "POST",
890
+ `/admin/thor/dropshipper/customers/${customerId}`,
891
+ body
892
+ );
893
+ }
876
894
  // -------------------------------------------------------------------------
877
895
  // Customer Addresses (Solo Y) — B-06
878
896
  // -------------------------------------------------------------------------
@@ -1392,6 +1410,76 @@ var DropshipperClient = class {
1392
1410
  );
1393
1411
  }
1394
1412
  // -------------------------------------------------------------------------
1413
+ // Draft Orders
1414
+ // -------------------------------------------------------------------------
1415
+ /**
1416
+ * List all draft orders in the dropshipper's channel.
1417
+ *
1418
+ * `GET /admin/thor/dropshipper/draft-orders`
1419
+ */
1420
+ async getDraftOrders(options = {}) {
1421
+ const { customer_id, from, to, q, limit = 20, offset = 0 } = options;
1422
+ const qs = new URLSearchParams({
1423
+ limit: String(limit),
1424
+ offset: String(offset),
1425
+ ...customer_id ? { customer_id } : {},
1426
+ ...from ? { from } : {},
1427
+ ...to ? { to } : {},
1428
+ ...q ? { q } : {}
1429
+ });
1430
+ return this.request(
1431
+ "GET",
1432
+ `/admin/thor/dropshipper/draft-orders?${qs}`
1433
+ );
1434
+ }
1435
+ /**
1436
+ * Get a specific draft order by ID.
1437
+ *
1438
+ * `GET /admin/thor/dropshipper/draft-orders/:id`
1439
+ */
1440
+ async getDraftOrder(draftOrderId) {
1441
+ return this.request(
1442
+ "GET",
1443
+ `/admin/thor/dropshipper/draft-orders/${draftOrderId}`
1444
+ );
1445
+ }
1446
+ /**
1447
+ * Create a new draft order.
1448
+ *
1449
+ * `POST /admin/thor/dropshipper/draft-orders`
1450
+ */
1451
+ async createDraftOrder(body) {
1452
+ return this.request(
1453
+ "POST",
1454
+ "/admin/thor/dropshipper/draft-orders",
1455
+ body
1456
+ );
1457
+ }
1458
+ /**
1459
+ * Update a draft order.
1460
+ *
1461
+ * `POST /admin/thor/dropshipper/draft-orders/:id`
1462
+ */
1463
+ async updateDraftOrder(draftOrderId, body) {
1464
+ return this.request(
1465
+ "POST",
1466
+ `/admin/thor/dropshipper/draft-orders/${draftOrderId}`,
1467
+ body
1468
+ );
1469
+ }
1470
+ /**
1471
+ * Convert a draft order to a real order.
1472
+ *
1473
+ * `POST /admin/thor/dropshipper/draft-orders/:id/convert`
1474
+ */
1475
+ async convertDraftOrder(draftOrderId, body) {
1476
+ return this.request(
1477
+ "POST",
1478
+ `/admin/thor/dropshipper/draft-orders/${draftOrderId}/convert`,
1479
+ body
1480
+ );
1481
+ }
1482
+ // -------------------------------------------------------------------------
1395
1483
  // Geo-reference
1396
1484
  // -------------------------------------------------------------------------
1397
1485
  /**