@medusajs/draft-order 2.10.2-preview-20250908150153 → 2.10.2-preview-20250908210158

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.
@@ -9763,27 +9763,6 @@ const BillingAddressForm = ({ order }) => {
9763
9763
  ) });
9764
9764
  };
9765
9765
  const schema$5 = addressSchema;
9766
- const CustomItems = () => {
9767
- return /* @__PURE__ */ jsxRuntime.jsxs(RouteDrawer, { children: [
9768
- /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Header, { children: /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Title, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(ui.Heading, { children: "Edit Custom Items" }) }) }),
9769
- /* @__PURE__ */ jsxRuntime.jsx(CustomItemsForm, {})
9770
- ] });
9771
- };
9772
- const CustomItemsForm = () => {
9773
- const form = reactHookForm.useForm({
9774
- resolver: zod.zodResolver(schema$4)
9775
- });
9776
- return /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Form, { form, children: /* @__PURE__ */ jsxRuntime.jsxs(KeyboundForm, { className: "flex flex-1 flex-col", children: [
9777
- /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Body, {}),
9778
- /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Footer, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex justify-end gap-2", children: [
9779
- /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Close, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(ui.Button, { size: "small", variant: "secondary", children: "Cancel" }) }),
9780
- /* @__PURE__ */ jsxRuntime.jsx(ui.Button, { size: "small", type: "submit", children: "Save" })
9781
- ] }) })
9782
- ] }) });
9783
- };
9784
- const schema$4 = objectType({
9785
- email: stringType().email()
9786
- });
9787
9766
  const Email = () => {
9788
9767
  const { id } = reactRouterDom.useParams();
9789
9768
  const { order, isPending, isError, error } = useOrder(id, {
@@ -9806,7 +9785,7 @@ const EmailForm = ({ order }) => {
9806
9785
  defaultValues: {
9807
9786
  email: order.email ?? ""
9808
9787
  },
9809
- resolver: zod.zodResolver(schema$3)
9788
+ resolver: zod.zodResolver(schema$4)
9810
9789
  });
9811
9790
  const { mutateAsync, isPending } = useUpdateDraftOrder(order.id);
9812
9791
  const { handleSuccess } = useRouteModal();
@@ -9849,6 +9828,27 @@ const EmailForm = ({ order }) => {
9849
9828
  }
9850
9829
  ) });
9851
9830
  };
9831
+ const schema$4 = objectType({
9832
+ email: stringType().email()
9833
+ });
9834
+ const CustomItems = () => {
9835
+ return /* @__PURE__ */ jsxRuntime.jsxs(RouteDrawer, { children: [
9836
+ /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Header, { children: /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Title, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(ui.Heading, { children: "Edit Custom Items" }) }) }),
9837
+ /* @__PURE__ */ jsxRuntime.jsx(CustomItemsForm, {})
9838
+ ] });
9839
+ };
9840
+ const CustomItemsForm = () => {
9841
+ const form = reactHookForm.useForm({
9842
+ resolver: zod.zodResolver(schema$3)
9843
+ });
9844
+ return /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Form, { form, children: /* @__PURE__ */ jsxRuntime.jsxs(KeyboundForm, { className: "flex flex-1 flex-col", children: [
9845
+ /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Body, {}),
9846
+ /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Footer, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex justify-end gap-2", children: [
9847
+ /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Close, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(ui.Button, { size: "small", variant: "secondary", children: "Cancel" }) }),
9848
+ /* @__PURE__ */ jsxRuntime.jsx(ui.Button, { size: "small", type: "submit", children: "Save" })
9849
+ ] }) })
9850
+ ] }) });
9851
+ };
9852
9852
  const schema$3 = objectType({
9853
9853
  email: stringType().email()
9854
9854
  });
@@ -11453,112 +11453,6 @@ function getPromotionIds(items, shippingMethods) {
11453
11453
  }
11454
11454
  return Array.from(promotionIds);
11455
11455
  }
11456
- const SalesChannel = () => {
11457
- const { id } = reactRouterDom.useParams();
11458
- const { draft_order, isPending, isError, error } = useDraftOrder(
11459
- id,
11460
- {
11461
- fields: "+sales_channel_id"
11462
- },
11463
- {
11464
- enabled: !!id
11465
- }
11466
- );
11467
- if (isError) {
11468
- throw error;
11469
- }
11470
- const ISrEADY = !!draft_order && !isPending;
11471
- return /* @__PURE__ */ jsxRuntime.jsxs(RouteDrawer, { children: [
11472
- /* @__PURE__ */ jsxRuntime.jsxs(RouteDrawer.Header, { children: [
11473
- /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Title, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(ui.Heading, { children: "Edit Sales Channel" }) }),
11474
- /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Description, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Update which sales channel the draft order is associated with" }) })
11475
- ] }),
11476
- ISrEADY && /* @__PURE__ */ jsxRuntime.jsx(SalesChannelForm, { order: draft_order })
11477
- ] });
11478
- };
11479
- const SalesChannelForm = ({ order }) => {
11480
- const form = reactHookForm.useForm({
11481
- defaultValues: {
11482
- sales_channel_id: order.sales_channel_id || ""
11483
- },
11484
- resolver: zod.zodResolver(schema$2)
11485
- });
11486
- const { mutateAsync, isPending } = useUpdateDraftOrder(order.id);
11487
- const { handleSuccess } = useRouteModal();
11488
- const onSubmit = form.handleSubmit(async (data) => {
11489
- await mutateAsync(
11490
- {
11491
- sales_channel_id: data.sales_channel_id
11492
- },
11493
- {
11494
- onSuccess: () => {
11495
- ui.toast.success("Sales channel updated");
11496
- handleSuccess();
11497
- },
11498
- onError: (error) => {
11499
- ui.toast.error(error.message);
11500
- }
11501
- }
11502
- );
11503
- });
11504
- return /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Form, { form, children: /* @__PURE__ */ jsxRuntime.jsxs(
11505
- KeyboundForm,
11506
- {
11507
- className: "flex flex-1 flex-col overflow-hidden",
11508
- onSubmit,
11509
- children: [
11510
- /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Body, { className: "flex flex-col gap-y-6 overflow-y-auto", children: /* @__PURE__ */ jsxRuntime.jsx(SalesChannelField, { control: form.control, order }) }),
11511
- /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Footer, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex justify-end gap-2", children: [
11512
- /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Close, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(ui.Button, { size: "small", variant: "secondary", children: "Cancel" }) }),
11513
- /* @__PURE__ */ jsxRuntime.jsx(ui.Button, { size: "small", type: "submit", isLoading: isPending, children: "Save" })
11514
- ] }) })
11515
- ]
11516
- }
11517
- ) });
11518
- };
11519
- const SalesChannelField = ({ control, order }) => {
11520
- const salesChannels = useComboboxData({
11521
- queryFn: async (params) => {
11522
- return await sdk.admin.salesChannel.list(params);
11523
- },
11524
- queryKey: ["sales-channels"],
11525
- getOptions: (data) => {
11526
- return data.sales_channels.map((salesChannel) => ({
11527
- label: salesChannel.name,
11528
- value: salesChannel.id
11529
- }));
11530
- },
11531
- defaultValue: order.sales_channel_id || void 0
11532
- });
11533
- return /* @__PURE__ */ jsxRuntime.jsx(
11534
- Form$2.Field,
11535
- {
11536
- control,
11537
- name: "sales_channel_id",
11538
- render: ({ field }) => {
11539
- return /* @__PURE__ */ jsxRuntime.jsxs(Form$2.Item, { children: [
11540
- /* @__PURE__ */ jsxRuntime.jsx(Form$2.Label, { children: "Sales Channel" }),
11541
- /* @__PURE__ */ jsxRuntime.jsx(Form$2.Control, { children: /* @__PURE__ */ jsxRuntime.jsx(
11542
- Combobox,
11543
- {
11544
- options: salesChannels.options,
11545
- fetchNextPage: salesChannels.fetchNextPage,
11546
- isFetchingNextPage: salesChannels.isFetchingNextPage,
11547
- searchValue: salesChannels.searchValue,
11548
- onSearchValueChange: salesChannels.onSearchValueChange,
11549
- placeholder: "Select sales channel",
11550
- ...field
11551
- }
11552
- ) }),
11553
- /* @__PURE__ */ jsxRuntime.jsx(Form$2.ErrorMessage, {})
11554
- ] });
11555
- }
11556
- }
11557
- );
11558
- };
11559
- const schema$2 = objectType({
11560
- sales_channel_id: stringType().min(1)
11561
- });
11562
11456
  const STACKED_FOCUS_MODAL_ID = "shipping-form";
11563
11457
  const Shipping = () => {
11564
11458
  var _a;
@@ -12398,7 +12292,7 @@ const ShippingAddressForm = ({ order }) => {
12398
12292
  postal_code: ((_i = order.shipping_address) == null ? void 0 : _i.postal_code) ?? "",
12399
12293
  phone: ((_j = order.shipping_address) == null ? void 0 : _j.phone) ?? ""
12400
12294
  },
12401
- resolver: zod.zodResolver(schema$1)
12295
+ resolver: zod.zodResolver(schema$2)
12402
12296
  });
12403
12297
  const { mutateAsync, isPending } = useUpdateDraftOrder(order.id);
12404
12298
  const { handleSuccess } = useRouteModal();
@@ -12568,7 +12462,113 @@ const ShippingAddressForm = ({ order }) => {
12568
12462
  }
12569
12463
  ) });
12570
12464
  };
12571
- const schema$1 = addressSchema;
12465
+ const schema$2 = addressSchema;
12466
+ const SalesChannel = () => {
12467
+ const { id } = reactRouterDom.useParams();
12468
+ const { draft_order, isPending, isError, error } = useDraftOrder(
12469
+ id,
12470
+ {
12471
+ fields: "+sales_channel_id"
12472
+ },
12473
+ {
12474
+ enabled: !!id
12475
+ }
12476
+ );
12477
+ if (isError) {
12478
+ throw error;
12479
+ }
12480
+ const ISrEADY = !!draft_order && !isPending;
12481
+ return /* @__PURE__ */ jsxRuntime.jsxs(RouteDrawer, { children: [
12482
+ /* @__PURE__ */ jsxRuntime.jsxs(RouteDrawer.Header, { children: [
12483
+ /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Title, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(ui.Heading, { children: "Edit Sales Channel" }) }),
12484
+ /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Description, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Update which sales channel the draft order is associated with" }) })
12485
+ ] }),
12486
+ ISrEADY && /* @__PURE__ */ jsxRuntime.jsx(SalesChannelForm, { order: draft_order })
12487
+ ] });
12488
+ };
12489
+ const SalesChannelForm = ({ order }) => {
12490
+ const form = reactHookForm.useForm({
12491
+ defaultValues: {
12492
+ sales_channel_id: order.sales_channel_id || ""
12493
+ },
12494
+ resolver: zod.zodResolver(schema$1)
12495
+ });
12496
+ const { mutateAsync, isPending } = useUpdateDraftOrder(order.id);
12497
+ const { handleSuccess } = useRouteModal();
12498
+ const onSubmit = form.handleSubmit(async (data) => {
12499
+ await mutateAsync(
12500
+ {
12501
+ sales_channel_id: data.sales_channel_id
12502
+ },
12503
+ {
12504
+ onSuccess: () => {
12505
+ ui.toast.success("Sales channel updated");
12506
+ handleSuccess();
12507
+ },
12508
+ onError: (error) => {
12509
+ ui.toast.error(error.message);
12510
+ }
12511
+ }
12512
+ );
12513
+ });
12514
+ return /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Form, { form, children: /* @__PURE__ */ jsxRuntime.jsxs(
12515
+ KeyboundForm,
12516
+ {
12517
+ className: "flex flex-1 flex-col overflow-hidden",
12518
+ onSubmit,
12519
+ children: [
12520
+ /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Body, { className: "flex flex-col gap-y-6 overflow-y-auto", children: /* @__PURE__ */ jsxRuntime.jsx(SalesChannelField, { control: form.control, order }) }),
12521
+ /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Footer, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex justify-end gap-2", children: [
12522
+ /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Close, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(ui.Button, { size: "small", variant: "secondary", children: "Cancel" }) }),
12523
+ /* @__PURE__ */ jsxRuntime.jsx(ui.Button, { size: "small", type: "submit", isLoading: isPending, children: "Save" })
12524
+ ] }) })
12525
+ ]
12526
+ }
12527
+ ) });
12528
+ };
12529
+ const SalesChannelField = ({ control, order }) => {
12530
+ const salesChannels = useComboboxData({
12531
+ queryFn: async (params) => {
12532
+ return await sdk.admin.salesChannel.list(params);
12533
+ },
12534
+ queryKey: ["sales-channels"],
12535
+ getOptions: (data) => {
12536
+ return data.sales_channels.map((salesChannel) => ({
12537
+ label: salesChannel.name,
12538
+ value: salesChannel.id
12539
+ }));
12540
+ },
12541
+ defaultValue: order.sales_channel_id || void 0
12542
+ });
12543
+ return /* @__PURE__ */ jsxRuntime.jsx(
12544
+ Form$2.Field,
12545
+ {
12546
+ control,
12547
+ name: "sales_channel_id",
12548
+ render: ({ field }) => {
12549
+ return /* @__PURE__ */ jsxRuntime.jsxs(Form$2.Item, { children: [
12550
+ /* @__PURE__ */ jsxRuntime.jsx(Form$2.Label, { children: "Sales Channel" }),
12551
+ /* @__PURE__ */ jsxRuntime.jsx(Form$2.Control, { children: /* @__PURE__ */ jsxRuntime.jsx(
12552
+ Combobox,
12553
+ {
12554
+ options: salesChannels.options,
12555
+ fetchNextPage: salesChannels.fetchNextPage,
12556
+ isFetchingNextPage: salesChannels.isFetchingNextPage,
12557
+ searchValue: salesChannels.searchValue,
12558
+ onSearchValueChange: salesChannels.onSearchValueChange,
12559
+ placeholder: "Select sales channel",
12560
+ ...field
12561
+ }
12562
+ ) }),
12563
+ /* @__PURE__ */ jsxRuntime.jsx(Form$2.ErrorMessage, {})
12564
+ ] });
12565
+ }
12566
+ }
12567
+ );
12568
+ };
12569
+ const schema$1 = objectType({
12570
+ sales_channel_id: stringType().min(1)
12571
+ });
12572
12572
  const TransferOwnership = () => {
12573
12573
  const { id } = reactRouterDom.useParams();
12574
12574
  const { draft_order, isPending, isError, error } = useDraftOrder(id, {
@@ -13069,14 +13069,14 @@ const routeModule = {
13069
13069
  Component: BillingAddress,
13070
13070
  path: "/draft-orders/:id/billing-address"
13071
13071
  },
13072
- {
13073
- Component: CustomItems,
13074
- path: "/draft-orders/:id/custom-items"
13075
- },
13076
13072
  {
13077
13073
  Component: Email,
13078
13074
  path: "/draft-orders/:id/email"
13079
13075
  },
13076
+ {
13077
+ Component: CustomItems,
13078
+ path: "/draft-orders/:id/custom-items"
13079
+ },
13080
13080
  {
13081
13081
  Component: Items,
13082
13082
  path: "/draft-orders/:id/items"
@@ -13089,10 +13089,6 @@ const routeModule = {
13089
13089
  Component: Promotions,
13090
13090
  path: "/draft-orders/:id/promotions"
13091
13091
  },
13092
- {
13093
- Component: SalesChannel,
13094
- path: "/draft-orders/:id/sales-channel"
13095
- },
13096
13092
  {
13097
13093
  Component: Shipping,
13098
13094
  path: "/draft-orders/:id/shipping"
@@ -13101,6 +13097,10 @@ const routeModule = {
13101
13097
  Component: ShippingAddress,
13102
13098
  path: "/draft-orders/:id/shipping-address"
13103
13099
  },
13100
+ {
13101
+ Component: SalesChannel,
13102
+ path: "/draft-orders/:id/sales-channel"
13103
+ },
13104
13104
  {
13105
13105
  Component: TransferOwnership,
13106
13106
  path: "/draft-orders/:id/transfer-ownership"
@@ -9757,27 +9757,6 @@ const BillingAddressForm = ({ order }) => {
9757
9757
  ) });
9758
9758
  };
9759
9759
  const schema$5 = addressSchema;
9760
- const CustomItems = () => {
9761
- return /* @__PURE__ */ jsxs(RouteDrawer, { children: [
9762
- /* @__PURE__ */ jsx(RouteDrawer.Header, { children: /* @__PURE__ */ jsx(RouteDrawer.Title, { asChild: true, children: /* @__PURE__ */ jsx(Heading, { children: "Edit Custom Items" }) }) }),
9763
- /* @__PURE__ */ jsx(CustomItemsForm, {})
9764
- ] });
9765
- };
9766
- const CustomItemsForm = () => {
9767
- const form = useForm({
9768
- resolver: zodResolver(schema$4)
9769
- });
9770
- return /* @__PURE__ */ jsx(RouteDrawer.Form, { form, children: /* @__PURE__ */ jsxs(KeyboundForm, { className: "flex flex-1 flex-col", children: [
9771
- /* @__PURE__ */ jsx(RouteDrawer.Body, {}),
9772
- /* @__PURE__ */ jsx(RouteDrawer.Footer, { children: /* @__PURE__ */ jsxs("div", { className: "flex justify-end gap-2", children: [
9773
- /* @__PURE__ */ jsx(RouteDrawer.Close, { asChild: true, children: /* @__PURE__ */ jsx(Button, { size: "small", variant: "secondary", children: "Cancel" }) }),
9774
- /* @__PURE__ */ jsx(Button, { size: "small", type: "submit", children: "Save" })
9775
- ] }) })
9776
- ] }) });
9777
- };
9778
- const schema$4 = objectType({
9779
- email: stringType().email()
9780
- });
9781
9760
  const Email = () => {
9782
9761
  const { id } = useParams();
9783
9762
  const { order, isPending, isError, error } = useOrder(id, {
@@ -9800,7 +9779,7 @@ const EmailForm = ({ order }) => {
9800
9779
  defaultValues: {
9801
9780
  email: order.email ?? ""
9802
9781
  },
9803
- resolver: zodResolver(schema$3)
9782
+ resolver: zodResolver(schema$4)
9804
9783
  });
9805
9784
  const { mutateAsync, isPending } = useUpdateDraftOrder(order.id);
9806
9785
  const { handleSuccess } = useRouteModal();
@@ -9843,6 +9822,27 @@ const EmailForm = ({ order }) => {
9843
9822
  }
9844
9823
  ) });
9845
9824
  };
9825
+ const schema$4 = objectType({
9826
+ email: stringType().email()
9827
+ });
9828
+ const CustomItems = () => {
9829
+ return /* @__PURE__ */ jsxs(RouteDrawer, { children: [
9830
+ /* @__PURE__ */ jsx(RouteDrawer.Header, { children: /* @__PURE__ */ jsx(RouteDrawer.Title, { asChild: true, children: /* @__PURE__ */ jsx(Heading, { children: "Edit Custom Items" }) }) }),
9831
+ /* @__PURE__ */ jsx(CustomItemsForm, {})
9832
+ ] });
9833
+ };
9834
+ const CustomItemsForm = () => {
9835
+ const form = useForm({
9836
+ resolver: zodResolver(schema$3)
9837
+ });
9838
+ return /* @__PURE__ */ jsx(RouteDrawer.Form, { form, children: /* @__PURE__ */ jsxs(KeyboundForm, { className: "flex flex-1 flex-col", children: [
9839
+ /* @__PURE__ */ jsx(RouteDrawer.Body, {}),
9840
+ /* @__PURE__ */ jsx(RouteDrawer.Footer, { children: /* @__PURE__ */ jsxs("div", { className: "flex justify-end gap-2", children: [
9841
+ /* @__PURE__ */ jsx(RouteDrawer.Close, { asChild: true, children: /* @__PURE__ */ jsx(Button, { size: "small", variant: "secondary", children: "Cancel" }) }),
9842
+ /* @__PURE__ */ jsx(Button, { size: "small", type: "submit", children: "Save" })
9843
+ ] }) })
9844
+ ] }) });
9845
+ };
9846
9846
  const schema$3 = objectType({
9847
9847
  email: stringType().email()
9848
9848
  });
@@ -11447,112 +11447,6 @@ function getPromotionIds(items, shippingMethods) {
11447
11447
  }
11448
11448
  return Array.from(promotionIds);
11449
11449
  }
11450
- const SalesChannel = () => {
11451
- const { id } = useParams();
11452
- const { draft_order, isPending, isError, error } = useDraftOrder(
11453
- id,
11454
- {
11455
- fields: "+sales_channel_id"
11456
- },
11457
- {
11458
- enabled: !!id
11459
- }
11460
- );
11461
- if (isError) {
11462
- throw error;
11463
- }
11464
- const ISrEADY = !!draft_order && !isPending;
11465
- return /* @__PURE__ */ jsxs(RouteDrawer, { children: [
11466
- /* @__PURE__ */ jsxs(RouteDrawer.Header, { children: [
11467
- /* @__PURE__ */ jsx(RouteDrawer.Title, { asChild: true, children: /* @__PURE__ */ jsx(Heading, { children: "Edit Sales Channel" }) }),
11468
- /* @__PURE__ */ jsx(RouteDrawer.Description, { asChild: true, children: /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Update which sales channel the draft order is associated with" }) })
11469
- ] }),
11470
- ISrEADY && /* @__PURE__ */ jsx(SalesChannelForm, { order: draft_order })
11471
- ] });
11472
- };
11473
- const SalesChannelForm = ({ order }) => {
11474
- const form = useForm({
11475
- defaultValues: {
11476
- sales_channel_id: order.sales_channel_id || ""
11477
- },
11478
- resolver: zodResolver(schema$2)
11479
- });
11480
- const { mutateAsync, isPending } = useUpdateDraftOrder(order.id);
11481
- const { handleSuccess } = useRouteModal();
11482
- const onSubmit = form.handleSubmit(async (data) => {
11483
- await mutateAsync(
11484
- {
11485
- sales_channel_id: data.sales_channel_id
11486
- },
11487
- {
11488
- onSuccess: () => {
11489
- toast.success("Sales channel updated");
11490
- handleSuccess();
11491
- },
11492
- onError: (error) => {
11493
- toast.error(error.message);
11494
- }
11495
- }
11496
- );
11497
- });
11498
- return /* @__PURE__ */ jsx(RouteDrawer.Form, { form, children: /* @__PURE__ */ jsxs(
11499
- KeyboundForm,
11500
- {
11501
- className: "flex flex-1 flex-col overflow-hidden",
11502
- onSubmit,
11503
- children: [
11504
- /* @__PURE__ */ jsx(RouteDrawer.Body, { className: "flex flex-col gap-y-6 overflow-y-auto", children: /* @__PURE__ */ jsx(SalesChannelField, { control: form.control, order }) }),
11505
- /* @__PURE__ */ jsx(RouteDrawer.Footer, { children: /* @__PURE__ */ jsxs("div", { className: "flex justify-end gap-2", children: [
11506
- /* @__PURE__ */ jsx(RouteDrawer.Close, { asChild: true, children: /* @__PURE__ */ jsx(Button, { size: "small", variant: "secondary", children: "Cancel" }) }),
11507
- /* @__PURE__ */ jsx(Button, { size: "small", type: "submit", isLoading: isPending, children: "Save" })
11508
- ] }) })
11509
- ]
11510
- }
11511
- ) });
11512
- };
11513
- const SalesChannelField = ({ control, order }) => {
11514
- const salesChannels = useComboboxData({
11515
- queryFn: async (params) => {
11516
- return await sdk.admin.salesChannel.list(params);
11517
- },
11518
- queryKey: ["sales-channels"],
11519
- getOptions: (data) => {
11520
- return data.sales_channels.map((salesChannel) => ({
11521
- label: salesChannel.name,
11522
- value: salesChannel.id
11523
- }));
11524
- },
11525
- defaultValue: order.sales_channel_id || void 0
11526
- });
11527
- return /* @__PURE__ */ jsx(
11528
- Form$2.Field,
11529
- {
11530
- control,
11531
- name: "sales_channel_id",
11532
- render: ({ field }) => {
11533
- return /* @__PURE__ */ jsxs(Form$2.Item, { children: [
11534
- /* @__PURE__ */ jsx(Form$2.Label, { children: "Sales Channel" }),
11535
- /* @__PURE__ */ jsx(Form$2.Control, { children: /* @__PURE__ */ jsx(
11536
- Combobox,
11537
- {
11538
- options: salesChannels.options,
11539
- fetchNextPage: salesChannels.fetchNextPage,
11540
- isFetchingNextPage: salesChannels.isFetchingNextPage,
11541
- searchValue: salesChannels.searchValue,
11542
- onSearchValueChange: salesChannels.onSearchValueChange,
11543
- placeholder: "Select sales channel",
11544
- ...field
11545
- }
11546
- ) }),
11547
- /* @__PURE__ */ jsx(Form$2.ErrorMessage, {})
11548
- ] });
11549
- }
11550
- }
11551
- );
11552
- };
11553
- const schema$2 = objectType({
11554
- sales_channel_id: stringType().min(1)
11555
- });
11556
11450
  const STACKED_FOCUS_MODAL_ID = "shipping-form";
11557
11451
  const Shipping = () => {
11558
11452
  var _a;
@@ -12392,7 +12286,7 @@ const ShippingAddressForm = ({ order }) => {
12392
12286
  postal_code: ((_i = order.shipping_address) == null ? void 0 : _i.postal_code) ?? "",
12393
12287
  phone: ((_j = order.shipping_address) == null ? void 0 : _j.phone) ?? ""
12394
12288
  },
12395
- resolver: zodResolver(schema$1)
12289
+ resolver: zodResolver(schema$2)
12396
12290
  });
12397
12291
  const { mutateAsync, isPending } = useUpdateDraftOrder(order.id);
12398
12292
  const { handleSuccess } = useRouteModal();
@@ -12562,7 +12456,113 @@ const ShippingAddressForm = ({ order }) => {
12562
12456
  }
12563
12457
  ) });
12564
12458
  };
12565
- const schema$1 = addressSchema;
12459
+ const schema$2 = addressSchema;
12460
+ const SalesChannel = () => {
12461
+ const { id } = useParams();
12462
+ const { draft_order, isPending, isError, error } = useDraftOrder(
12463
+ id,
12464
+ {
12465
+ fields: "+sales_channel_id"
12466
+ },
12467
+ {
12468
+ enabled: !!id
12469
+ }
12470
+ );
12471
+ if (isError) {
12472
+ throw error;
12473
+ }
12474
+ const ISrEADY = !!draft_order && !isPending;
12475
+ return /* @__PURE__ */ jsxs(RouteDrawer, { children: [
12476
+ /* @__PURE__ */ jsxs(RouteDrawer.Header, { children: [
12477
+ /* @__PURE__ */ jsx(RouteDrawer.Title, { asChild: true, children: /* @__PURE__ */ jsx(Heading, { children: "Edit Sales Channel" }) }),
12478
+ /* @__PURE__ */ jsx(RouteDrawer.Description, { asChild: true, children: /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Update which sales channel the draft order is associated with" }) })
12479
+ ] }),
12480
+ ISrEADY && /* @__PURE__ */ jsx(SalesChannelForm, { order: draft_order })
12481
+ ] });
12482
+ };
12483
+ const SalesChannelForm = ({ order }) => {
12484
+ const form = useForm({
12485
+ defaultValues: {
12486
+ sales_channel_id: order.sales_channel_id || ""
12487
+ },
12488
+ resolver: zodResolver(schema$1)
12489
+ });
12490
+ const { mutateAsync, isPending } = useUpdateDraftOrder(order.id);
12491
+ const { handleSuccess } = useRouteModal();
12492
+ const onSubmit = form.handleSubmit(async (data) => {
12493
+ await mutateAsync(
12494
+ {
12495
+ sales_channel_id: data.sales_channel_id
12496
+ },
12497
+ {
12498
+ onSuccess: () => {
12499
+ toast.success("Sales channel updated");
12500
+ handleSuccess();
12501
+ },
12502
+ onError: (error) => {
12503
+ toast.error(error.message);
12504
+ }
12505
+ }
12506
+ );
12507
+ });
12508
+ return /* @__PURE__ */ jsx(RouteDrawer.Form, { form, children: /* @__PURE__ */ jsxs(
12509
+ KeyboundForm,
12510
+ {
12511
+ className: "flex flex-1 flex-col overflow-hidden",
12512
+ onSubmit,
12513
+ children: [
12514
+ /* @__PURE__ */ jsx(RouteDrawer.Body, { className: "flex flex-col gap-y-6 overflow-y-auto", children: /* @__PURE__ */ jsx(SalesChannelField, { control: form.control, order }) }),
12515
+ /* @__PURE__ */ jsx(RouteDrawer.Footer, { children: /* @__PURE__ */ jsxs("div", { className: "flex justify-end gap-2", children: [
12516
+ /* @__PURE__ */ jsx(RouteDrawer.Close, { asChild: true, children: /* @__PURE__ */ jsx(Button, { size: "small", variant: "secondary", children: "Cancel" }) }),
12517
+ /* @__PURE__ */ jsx(Button, { size: "small", type: "submit", isLoading: isPending, children: "Save" })
12518
+ ] }) })
12519
+ ]
12520
+ }
12521
+ ) });
12522
+ };
12523
+ const SalesChannelField = ({ control, order }) => {
12524
+ const salesChannels = useComboboxData({
12525
+ queryFn: async (params) => {
12526
+ return await sdk.admin.salesChannel.list(params);
12527
+ },
12528
+ queryKey: ["sales-channels"],
12529
+ getOptions: (data) => {
12530
+ return data.sales_channels.map((salesChannel) => ({
12531
+ label: salesChannel.name,
12532
+ value: salesChannel.id
12533
+ }));
12534
+ },
12535
+ defaultValue: order.sales_channel_id || void 0
12536
+ });
12537
+ return /* @__PURE__ */ jsx(
12538
+ Form$2.Field,
12539
+ {
12540
+ control,
12541
+ name: "sales_channel_id",
12542
+ render: ({ field }) => {
12543
+ return /* @__PURE__ */ jsxs(Form$2.Item, { children: [
12544
+ /* @__PURE__ */ jsx(Form$2.Label, { children: "Sales Channel" }),
12545
+ /* @__PURE__ */ jsx(Form$2.Control, { children: /* @__PURE__ */ jsx(
12546
+ Combobox,
12547
+ {
12548
+ options: salesChannels.options,
12549
+ fetchNextPage: salesChannels.fetchNextPage,
12550
+ isFetchingNextPage: salesChannels.isFetchingNextPage,
12551
+ searchValue: salesChannels.searchValue,
12552
+ onSearchValueChange: salesChannels.onSearchValueChange,
12553
+ placeholder: "Select sales channel",
12554
+ ...field
12555
+ }
12556
+ ) }),
12557
+ /* @__PURE__ */ jsx(Form$2.ErrorMessage, {})
12558
+ ] });
12559
+ }
12560
+ }
12561
+ );
12562
+ };
12563
+ const schema$1 = objectType({
12564
+ sales_channel_id: stringType().min(1)
12565
+ });
12566
12566
  const TransferOwnership = () => {
12567
12567
  const { id } = useParams();
12568
12568
  const { draft_order, isPending, isError, error } = useDraftOrder(id, {
@@ -13063,14 +13063,14 @@ const routeModule = {
13063
13063
  Component: BillingAddress,
13064
13064
  path: "/draft-orders/:id/billing-address"
13065
13065
  },
13066
- {
13067
- Component: CustomItems,
13068
- path: "/draft-orders/:id/custom-items"
13069
- },
13070
13066
  {
13071
13067
  Component: Email,
13072
13068
  path: "/draft-orders/:id/email"
13073
13069
  },
13070
+ {
13071
+ Component: CustomItems,
13072
+ path: "/draft-orders/:id/custom-items"
13073
+ },
13074
13074
  {
13075
13075
  Component: Items,
13076
13076
  path: "/draft-orders/:id/items"
@@ -13083,10 +13083,6 @@ const routeModule = {
13083
13083
  Component: Promotions,
13084
13084
  path: "/draft-orders/:id/promotions"
13085
13085
  },
13086
- {
13087
- Component: SalesChannel,
13088
- path: "/draft-orders/:id/sales-channel"
13089
- },
13090
13086
  {
13091
13087
  Component: Shipping,
13092
13088
  path: "/draft-orders/:id/shipping"
@@ -13095,6 +13091,10 @@ const routeModule = {
13095
13091
  Component: ShippingAddress,
13096
13092
  path: "/draft-orders/:id/shipping-address"
13097
13093
  },
13094
+ {
13095
+ Component: SalesChannel,
13096
+ path: "/draft-orders/:id/sales-channel"
13097
+ },
13098
13098
  {
13099
13099
  Component: TransferOwnership,
13100
13100
  path: "/draft-orders/:id/transfer-ownership"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@medusajs/draft-order",
3
- "version": "2.10.2-preview-20250908150153",
3
+ "version": "2.10.2-preview-20250908210158",
4
4
  "description": "A starter for Medusa plugins.",
5
5
  "author": "Medusa (https://medusajs.com)",
6
6
  "license": "MIT",
@@ -36,7 +36,7 @@
36
36
  "dependencies": {
37
37
  "@ariakit/react": "^0.4.15",
38
38
  "@hookform/resolvers": "3.4.2",
39
- "@medusajs/js-sdk": "2.10.2-preview-20250908150153",
39
+ "@medusajs/js-sdk": "2.10.2-preview-20250908210158",
40
40
  "@tanstack/react-query": "5.64.2",
41
41
  "@uiw/react-json-view": "^2.0.0-alpha.17",
42
42
  "date-fns": "^3.6.0",
@@ -45,19 +45,19 @@
45
45
  "react-hook-form": "7.49.1"
46
46
  },
47
47
  "devDependencies": {
48
- "@medusajs/admin-sdk": "2.10.2-preview-20250908150153",
49
- "@medusajs/cli": "2.10.2-preview-20250908150153",
50
- "@medusajs/framework": "2.10.2-preview-20250908150153",
51
- "@medusajs/icons": "2.10.2-preview-20250908150153",
52
- "@medusajs/test-utils": "2.10.2-preview-20250908150153",
53
- "@medusajs/types": "2.10.2-preview-20250908150153",
54
- "@medusajs/ui": "4.0.22-preview-20250908150153",
55
- "@medusajs/ui-preset": "2.10.2-preview-20250908150153",
56
- "@mikro-orm/cli": "6.4.3",
57
- "@mikro-orm/core": "6.4.3",
58
- "@mikro-orm/knex": "6.4.3",
59
- "@mikro-orm/migrations": "6.4.3",
60
- "@mikro-orm/postgresql": "6.4.3",
48
+ "@medusajs/admin-sdk": "2.10.2-preview-20250908210158",
49
+ "@medusajs/cli": "2.10.2-preview-20250908210158",
50
+ "@medusajs/framework": "2.10.2-preview-20250908210158",
51
+ "@medusajs/icons": "2.10.2-preview-20250908210158",
52
+ "@medusajs/test-utils": "2.10.2-preview-20250908210158",
53
+ "@medusajs/types": "2.10.2-preview-20250908210158",
54
+ "@medusajs/ui": "4.0.22-preview-20250908210158",
55
+ "@medusajs/ui-preset": "2.10.2-preview-20250908210158",
56
+ "@mikro-orm/cli": "6.5.2",
57
+ "@mikro-orm/core": "6.5.2",
58
+ "@mikro-orm/knex": "6.5.2",
59
+ "@mikro-orm/migrations": "6.5.2",
60
+ "@mikro-orm/postgresql": "6.5.2",
61
61
  "@swc/core": "1.5.7",
62
62
  "@types/lodash": "^4.17.15",
63
63
  "@types/node": "^20.0.0",
@@ -65,7 +65,7 @@
65
65
  "@types/react-dom": "^18.2.25",
66
66
  "awilix": "^8.0.1",
67
67
  "lodash": "^4.17.21",
68
- "pg": "^8.13.0",
68
+ "pg": "^8.16.3",
69
69
  "react": "^18.2.0",
70
70
  "react-dom": "^18.2.0",
71
71
  "react-router-dom": "6.20.1",
@@ -76,20 +76,20 @@
76
76
  "yalc": "^1.0.0-pre.53"
77
77
  },
78
78
  "peerDependencies": {
79
- "@medusajs/admin-sdk": "2.10.2-preview-20250908150153",
80
- "@medusajs/cli": "2.10.2-preview-20250908150153",
81
- "@medusajs/framework": "2.10.2-preview-20250908150153",
82
- "@medusajs/icons": "2.10.2-preview-20250908150153",
83
- "@medusajs/test-utils": "2.10.2-preview-20250908150153",
84
- "@medusajs/ui": "4.0.22-preview-20250908150153",
85
- "@mikro-orm/cli": "6.4.3",
86
- "@mikro-orm/core": "6.4.3",
87
- "@mikro-orm/knex": "6.4.3",
88
- "@mikro-orm/migrations": "6.4.3",
89
- "@mikro-orm/postgresql": "6.4.3",
79
+ "@medusajs/admin-sdk": "2.10.2-preview-20250908210158",
80
+ "@medusajs/cli": "2.10.2-preview-20250908210158",
81
+ "@medusajs/framework": "2.10.2-preview-20250908210158",
82
+ "@medusajs/icons": "2.10.2-preview-20250908210158",
83
+ "@medusajs/test-utils": "2.10.2-preview-20250908210158",
84
+ "@medusajs/ui": "4.0.22-preview-20250908210158",
85
+ "@mikro-orm/cli": "6.5.2",
86
+ "@mikro-orm/core": "6.5.2",
87
+ "@mikro-orm/knex": "6.5.2",
88
+ "@mikro-orm/migrations": "6.5.2",
89
+ "@mikro-orm/postgresql": "6.5.2",
90
90
  "awilix": "^8.0.1",
91
91
  "lodash": "^4.17.21",
92
- "pg": "^8.13.0",
92
+ "pg": "^8.16.3",
93
93
  "react-router-dom": "6.20.1"
94
94
  },
95
95
  "engines": {