@medusajs/draft-order 2.10.4-preview-20251013180156 → 2.10.4-preview-20251014000319
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/.medusa/server/src/admin/index.js +186 -186
- package/.medusa/server/src/admin/index.mjs +186 -186
- package/package.json +16 -16
|
@@ -9784,6 +9784,74 @@ const CustomItemsForm = () => {
|
|
|
9784
9784
|
const schema$4 = objectType({
|
|
9785
9785
|
email: stringType().email()
|
|
9786
9786
|
});
|
|
9787
|
+
const Email = () => {
|
|
9788
|
+
const { id } = reactRouterDom.useParams();
|
|
9789
|
+
const { order, isPending, isError, error } = useOrder(id, {
|
|
9790
|
+
fields: "+email"
|
|
9791
|
+
});
|
|
9792
|
+
if (isError) {
|
|
9793
|
+
throw error;
|
|
9794
|
+
}
|
|
9795
|
+
const isReady = !isPending && !!order;
|
|
9796
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(RouteDrawer, { children: [
|
|
9797
|
+
/* @__PURE__ */ jsxRuntime.jsxs(RouteDrawer.Header, { children: [
|
|
9798
|
+
/* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Title, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(ui.Heading, { children: "Edit Email" }) }),
|
|
9799
|
+
/* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Description, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Edit the email for the draft order" }) })
|
|
9800
|
+
] }),
|
|
9801
|
+
isReady && /* @__PURE__ */ jsxRuntime.jsx(EmailForm, { order })
|
|
9802
|
+
] });
|
|
9803
|
+
};
|
|
9804
|
+
const EmailForm = ({ order }) => {
|
|
9805
|
+
const form = reactHookForm.useForm({
|
|
9806
|
+
defaultValues: {
|
|
9807
|
+
email: order.email ?? ""
|
|
9808
|
+
},
|
|
9809
|
+
resolver: zod.zodResolver(schema$3)
|
|
9810
|
+
});
|
|
9811
|
+
const { mutateAsync, isPending } = useUpdateDraftOrder(order.id);
|
|
9812
|
+
const { handleSuccess } = useRouteModal();
|
|
9813
|
+
const onSubmit = form.handleSubmit(async (data) => {
|
|
9814
|
+
await mutateAsync(
|
|
9815
|
+
{ email: data.email },
|
|
9816
|
+
{
|
|
9817
|
+
onSuccess: () => {
|
|
9818
|
+
handleSuccess();
|
|
9819
|
+
},
|
|
9820
|
+
onError: (error) => {
|
|
9821
|
+
ui.toast.error(error.message);
|
|
9822
|
+
}
|
|
9823
|
+
}
|
|
9824
|
+
);
|
|
9825
|
+
});
|
|
9826
|
+
return /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Form, { form, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
9827
|
+
KeyboundForm,
|
|
9828
|
+
{
|
|
9829
|
+
className: "flex flex-1 flex-col overflow-hidden",
|
|
9830
|
+
onSubmit,
|
|
9831
|
+
children: [
|
|
9832
|
+
/* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Body, { className: "flex flex-col gap-y-6 overflow-y-auto", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
9833
|
+
Form$2.Field,
|
|
9834
|
+
{
|
|
9835
|
+
control: form.control,
|
|
9836
|
+
name: "email",
|
|
9837
|
+
render: ({ field }) => /* @__PURE__ */ jsxRuntime.jsxs(Form$2.Item, { children: [
|
|
9838
|
+
/* @__PURE__ */ jsxRuntime.jsx(Form$2.Label, { children: "Email" }),
|
|
9839
|
+
/* @__PURE__ */ jsxRuntime.jsx(Form$2.Control, { children: /* @__PURE__ */ jsxRuntime.jsx(ui.Input, { ...field }) }),
|
|
9840
|
+
/* @__PURE__ */ jsxRuntime.jsx(Form$2.ErrorMessage, {})
|
|
9841
|
+
] })
|
|
9842
|
+
}
|
|
9843
|
+
) }),
|
|
9844
|
+
/* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Footer, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex justify-end gap-2", children: [
|
|
9845
|
+
/* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Close, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(ui.Button, { size: "small", variant: "secondary", children: "Cancel" }) }),
|
|
9846
|
+
/* @__PURE__ */ jsxRuntime.jsx(ui.Button, { size: "small", type: "submit", isLoading: isPending, children: "Save" })
|
|
9847
|
+
] }) })
|
|
9848
|
+
]
|
|
9849
|
+
}
|
|
9850
|
+
) });
|
|
9851
|
+
};
|
|
9852
|
+
const schema$3 = objectType({
|
|
9853
|
+
email: stringType().email()
|
|
9854
|
+
});
|
|
9787
9855
|
const NumberInput = React.forwardRef(
|
|
9788
9856
|
({
|
|
9789
9857
|
value,
|
|
@@ -11385,6 +11453,112 @@ function getPromotionIds(items, shippingMethods) {
|
|
|
11385
11453
|
}
|
|
11386
11454
|
return Array.from(promotionIds);
|
|
11387
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
|
+
});
|
|
11388
11562
|
const STACKED_FOCUS_MODAL_ID = "shipping-form";
|
|
11389
11563
|
const Shipping = () => {
|
|
11390
11564
|
var _a;
|
|
@@ -12224,7 +12398,7 @@ const ShippingAddressForm = ({ order }) => {
|
|
|
12224
12398
|
postal_code: ((_i = order.shipping_address) == null ? void 0 : _i.postal_code) ?? "",
|
|
12225
12399
|
phone: ((_j = order.shipping_address) == null ? void 0 : _j.phone) ?? ""
|
|
12226
12400
|
},
|
|
12227
|
-
resolver: zod.zodResolver(schema$
|
|
12401
|
+
resolver: zod.zodResolver(schema$1)
|
|
12228
12402
|
});
|
|
12229
12403
|
const { mutateAsync, isPending } = useUpdateDraftOrder(order.id);
|
|
12230
12404
|
const { handleSuccess } = useRouteModal();
|
|
@@ -12394,7 +12568,7 @@ const ShippingAddressForm = ({ order }) => {
|
|
|
12394
12568
|
}
|
|
12395
12569
|
) });
|
|
12396
12570
|
};
|
|
12397
|
-
const schema$
|
|
12571
|
+
const schema$1 = addressSchema;
|
|
12398
12572
|
const TransferOwnership = () => {
|
|
12399
12573
|
const { id } = reactRouterDom.useParams();
|
|
12400
12574
|
const { draft_order, isPending, isError, error } = useDraftOrder(id, {
|
|
@@ -12418,7 +12592,7 @@ const TransferOwnershipForm = ({ order }) => {
|
|
|
12418
12592
|
defaultValues: {
|
|
12419
12593
|
customer_id: order.customer_id || ""
|
|
12420
12594
|
},
|
|
12421
|
-
resolver: zod.zodResolver(schema
|
|
12595
|
+
resolver: zod.zodResolver(schema)
|
|
12422
12596
|
});
|
|
12423
12597
|
const { mutateAsync, isPending } = useUpdateDraftOrder(order.id);
|
|
12424
12598
|
const { handleSuccess } = useRouteModal();
|
|
@@ -12868,182 +13042,8 @@ const Illustration = () => {
|
|
|
12868
13042
|
}
|
|
12869
13043
|
);
|
|
12870
13044
|
};
|
|
12871
|
-
const schema$2 = objectType({
|
|
12872
|
-
customer_id: stringType().min(1)
|
|
12873
|
-
});
|
|
12874
|
-
const SalesChannel = () => {
|
|
12875
|
-
const { id } = reactRouterDom.useParams();
|
|
12876
|
-
const { draft_order, isPending, isError, error } = useDraftOrder(
|
|
12877
|
-
id,
|
|
12878
|
-
{
|
|
12879
|
-
fields: "+sales_channel_id"
|
|
12880
|
-
},
|
|
12881
|
-
{
|
|
12882
|
-
enabled: !!id
|
|
12883
|
-
}
|
|
12884
|
-
);
|
|
12885
|
-
if (isError) {
|
|
12886
|
-
throw error;
|
|
12887
|
-
}
|
|
12888
|
-
const ISrEADY = !!draft_order && !isPending;
|
|
12889
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(RouteDrawer, { children: [
|
|
12890
|
-
/* @__PURE__ */ jsxRuntime.jsxs(RouteDrawer.Header, { children: [
|
|
12891
|
-
/* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Title, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(ui.Heading, { children: "Edit Sales Channel" }) }),
|
|
12892
|
-
/* @__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" }) })
|
|
12893
|
-
] }),
|
|
12894
|
-
ISrEADY && /* @__PURE__ */ jsxRuntime.jsx(SalesChannelForm, { order: draft_order })
|
|
12895
|
-
] });
|
|
12896
|
-
};
|
|
12897
|
-
const SalesChannelForm = ({ order }) => {
|
|
12898
|
-
const form = reactHookForm.useForm({
|
|
12899
|
-
defaultValues: {
|
|
12900
|
-
sales_channel_id: order.sales_channel_id || ""
|
|
12901
|
-
},
|
|
12902
|
-
resolver: zod.zodResolver(schema$1)
|
|
12903
|
-
});
|
|
12904
|
-
const { mutateAsync, isPending } = useUpdateDraftOrder(order.id);
|
|
12905
|
-
const { handleSuccess } = useRouteModal();
|
|
12906
|
-
const onSubmit = form.handleSubmit(async (data) => {
|
|
12907
|
-
await mutateAsync(
|
|
12908
|
-
{
|
|
12909
|
-
sales_channel_id: data.sales_channel_id
|
|
12910
|
-
},
|
|
12911
|
-
{
|
|
12912
|
-
onSuccess: () => {
|
|
12913
|
-
ui.toast.success("Sales channel updated");
|
|
12914
|
-
handleSuccess();
|
|
12915
|
-
},
|
|
12916
|
-
onError: (error) => {
|
|
12917
|
-
ui.toast.error(error.message);
|
|
12918
|
-
}
|
|
12919
|
-
}
|
|
12920
|
-
);
|
|
12921
|
-
});
|
|
12922
|
-
return /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Form, { form, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
12923
|
-
KeyboundForm,
|
|
12924
|
-
{
|
|
12925
|
-
className: "flex flex-1 flex-col overflow-hidden",
|
|
12926
|
-
onSubmit,
|
|
12927
|
-
children: [
|
|
12928
|
-
/* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Body, { className: "flex flex-col gap-y-6 overflow-y-auto", children: /* @__PURE__ */ jsxRuntime.jsx(SalesChannelField, { control: form.control, order }) }),
|
|
12929
|
-
/* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Footer, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex justify-end gap-2", children: [
|
|
12930
|
-
/* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Close, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(ui.Button, { size: "small", variant: "secondary", children: "Cancel" }) }),
|
|
12931
|
-
/* @__PURE__ */ jsxRuntime.jsx(ui.Button, { size: "small", type: "submit", isLoading: isPending, children: "Save" })
|
|
12932
|
-
] }) })
|
|
12933
|
-
]
|
|
12934
|
-
}
|
|
12935
|
-
) });
|
|
12936
|
-
};
|
|
12937
|
-
const SalesChannelField = ({ control, order }) => {
|
|
12938
|
-
const salesChannels = useComboboxData({
|
|
12939
|
-
queryFn: async (params) => {
|
|
12940
|
-
return await sdk.admin.salesChannel.list(params);
|
|
12941
|
-
},
|
|
12942
|
-
queryKey: ["sales-channels"],
|
|
12943
|
-
getOptions: (data) => {
|
|
12944
|
-
return data.sales_channels.map((salesChannel) => ({
|
|
12945
|
-
label: salesChannel.name,
|
|
12946
|
-
value: salesChannel.id
|
|
12947
|
-
}));
|
|
12948
|
-
},
|
|
12949
|
-
defaultValue: order.sales_channel_id || void 0
|
|
12950
|
-
});
|
|
12951
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
12952
|
-
Form$2.Field,
|
|
12953
|
-
{
|
|
12954
|
-
control,
|
|
12955
|
-
name: "sales_channel_id",
|
|
12956
|
-
render: ({ field }) => {
|
|
12957
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(Form$2.Item, { children: [
|
|
12958
|
-
/* @__PURE__ */ jsxRuntime.jsx(Form$2.Label, { children: "Sales Channel" }),
|
|
12959
|
-
/* @__PURE__ */ jsxRuntime.jsx(Form$2.Control, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
12960
|
-
Combobox,
|
|
12961
|
-
{
|
|
12962
|
-
options: salesChannels.options,
|
|
12963
|
-
fetchNextPage: salesChannels.fetchNextPage,
|
|
12964
|
-
isFetchingNextPage: salesChannels.isFetchingNextPage,
|
|
12965
|
-
searchValue: salesChannels.searchValue,
|
|
12966
|
-
onSearchValueChange: salesChannels.onSearchValueChange,
|
|
12967
|
-
placeholder: "Select sales channel",
|
|
12968
|
-
...field
|
|
12969
|
-
}
|
|
12970
|
-
) }),
|
|
12971
|
-
/* @__PURE__ */ jsxRuntime.jsx(Form$2.ErrorMessage, {})
|
|
12972
|
-
] });
|
|
12973
|
-
}
|
|
12974
|
-
}
|
|
12975
|
-
);
|
|
12976
|
-
};
|
|
12977
|
-
const schema$1 = objectType({
|
|
12978
|
-
sales_channel_id: stringType().min(1)
|
|
12979
|
-
});
|
|
12980
|
-
const Email = () => {
|
|
12981
|
-
const { id } = reactRouterDom.useParams();
|
|
12982
|
-
const { order, isPending, isError, error } = useOrder(id, {
|
|
12983
|
-
fields: "+email"
|
|
12984
|
-
});
|
|
12985
|
-
if (isError) {
|
|
12986
|
-
throw error;
|
|
12987
|
-
}
|
|
12988
|
-
const isReady = !isPending && !!order;
|
|
12989
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(RouteDrawer, { children: [
|
|
12990
|
-
/* @__PURE__ */ jsxRuntime.jsxs(RouteDrawer.Header, { children: [
|
|
12991
|
-
/* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Title, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(ui.Heading, { children: "Edit Email" }) }),
|
|
12992
|
-
/* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Description, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Edit the email for the draft order" }) })
|
|
12993
|
-
] }),
|
|
12994
|
-
isReady && /* @__PURE__ */ jsxRuntime.jsx(EmailForm, { order })
|
|
12995
|
-
] });
|
|
12996
|
-
};
|
|
12997
|
-
const EmailForm = ({ order }) => {
|
|
12998
|
-
const form = reactHookForm.useForm({
|
|
12999
|
-
defaultValues: {
|
|
13000
|
-
email: order.email ?? ""
|
|
13001
|
-
},
|
|
13002
|
-
resolver: zod.zodResolver(schema)
|
|
13003
|
-
});
|
|
13004
|
-
const { mutateAsync, isPending } = useUpdateDraftOrder(order.id);
|
|
13005
|
-
const { handleSuccess } = useRouteModal();
|
|
13006
|
-
const onSubmit = form.handleSubmit(async (data) => {
|
|
13007
|
-
await mutateAsync(
|
|
13008
|
-
{ email: data.email },
|
|
13009
|
-
{
|
|
13010
|
-
onSuccess: () => {
|
|
13011
|
-
handleSuccess();
|
|
13012
|
-
},
|
|
13013
|
-
onError: (error) => {
|
|
13014
|
-
ui.toast.error(error.message);
|
|
13015
|
-
}
|
|
13016
|
-
}
|
|
13017
|
-
);
|
|
13018
|
-
});
|
|
13019
|
-
return /* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Form, { form, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
13020
|
-
KeyboundForm,
|
|
13021
|
-
{
|
|
13022
|
-
className: "flex flex-1 flex-col overflow-hidden",
|
|
13023
|
-
onSubmit,
|
|
13024
|
-
children: [
|
|
13025
|
-
/* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Body, { className: "flex flex-col gap-y-6 overflow-y-auto", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
13026
|
-
Form$2.Field,
|
|
13027
|
-
{
|
|
13028
|
-
control: form.control,
|
|
13029
|
-
name: "email",
|
|
13030
|
-
render: ({ field }) => /* @__PURE__ */ jsxRuntime.jsxs(Form$2.Item, { children: [
|
|
13031
|
-
/* @__PURE__ */ jsxRuntime.jsx(Form$2.Label, { children: "Email" }),
|
|
13032
|
-
/* @__PURE__ */ jsxRuntime.jsx(Form$2.Control, { children: /* @__PURE__ */ jsxRuntime.jsx(ui.Input, { ...field }) }),
|
|
13033
|
-
/* @__PURE__ */ jsxRuntime.jsx(Form$2.ErrorMessage, {})
|
|
13034
|
-
] })
|
|
13035
|
-
}
|
|
13036
|
-
) }),
|
|
13037
|
-
/* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Footer, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex justify-end gap-2", children: [
|
|
13038
|
-
/* @__PURE__ */ jsxRuntime.jsx(RouteDrawer.Close, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(ui.Button, { size: "small", variant: "secondary", children: "Cancel" }) }),
|
|
13039
|
-
/* @__PURE__ */ jsxRuntime.jsx(ui.Button, { size: "small", type: "submit", isLoading: isPending, children: "Save" })
|
|
13040
|
-
] }) })
|
|
13041
|
-
]
|
|
13042
|
-
}
|
|
13043
|
-
) });
|
|
13044
|
-
};
|
|
13045
13045
|
const schema = objectType({
|
|
13046
|
-
|
|
13046
|
+
customer_id: stringType().min(1)
|
|
13047
13047
|
});
|
|
13048
13048
|
const widgetModule = { widgets: [] };
|
|
13049
13049
|
const routeModule = {
|
|
@@ -13073,6 +13073,10 @@ const routeModule = {
|
|
|
13073
13073
|
Component: CustomItems,
|
|
13074
13074
|
path: "/draft-orders/:id/custom-items"
|
|
13075
13075
|
},
|
|
13076
|
+
{
|
|
13077
|
+
Component: Email,
|
|
13078
|
+
path: "/draft-orders/:id/email"
|
|
13079
|
+
},
|
|
13076
13080
|
{
|
|
13077
13081
|
Component: Items,
|
|
13078
13082
|
path: "/draft-orders/:id/items"
|
|
@@ -13085,6 +13089,10 @@ const routeModule = {
|
|
|
13085
13089
|
Component: Promotions,
|
|
13086
13090
|
path: "/draft-orders/:id/promotions"
|
|
13087
13091
|
},
|
|
13092
|
+
{
|
|
13093
|
+
Component: SalesChannel,
|
|
13094
|
+
path: "/draft-orders/:id/sales-channel"
|
|
13095
|
+
},
|
|
13088
13096
|
{
|
|
13089
13097
|
Component: Shipping,
|
|
13090
13098
|
path: "/draft-orders/:id/shipping"
|
|
@@ -13096,14 +13104,6 @@ const routeModule = {
|
|
|
13096
13104
|
{
|
|
13097
13105
|
Component: TransferOwnership,
|
|
13098
13106
|
path: "/draft-orders/:id/transfer-ownership"
|
|
13099
|
-
},
|
|
13100
|
-
{
|
|
13101
|
-
Component: SalesChannel,
|
|
13102
|
-
path: "/draft-orders/:id/sales-channel"
|
|
13103
|
-
},
|
|
13104
|
-
{
|
|
13105
|
-
Component: Email,
|
|
13106
|
-
path: "/draft-orders/:id/email"
|
|
13107
13107
|
}
|
|
13108
13108
|
]
|
|
13109
13109
|
}
|
|
@@ -9778,6 +9778,74 @@ const CustomItemsForm = () => {
|
|
|
9778
9778
|
const schema$4 = objectType({
|
|
9779
9779
|
email: stringType().email()
|
|
9780
9780
|
});
|
|
9781
|
+
const Email = () => {
|
|
9782
|
+
const { id } = useParams();
|
|
9783
|
+
const { order, isPending, isError, error } = useOrder(id, {
|
|
9784
|
+
fields: "+email"
|
|
9785
|
+
});
|
|
9786
|
+
if (isError) {
|
|
9787
|
+
throw error;
|
|
9788
|
+
}
|
|
9789
|
+
const isReady = !isPending && !!order;
|
|
9790
|
+
return /* @__PURE__ */ jsxs(RouteDrawer, { children: [
|
|
9791
|
+
/* @__PURE__ */ jsxs(RouteDrawer.Header, { children: [
|
|
9792
|
+
/* @__PURE__ */ jsx(RouteDrawer.Title, { asChild: true, children: /* @__PURE__ */ jsx(Heading, { children: "Edit Email" }) }),
|
|
9793
|
+
/* @__PURE__ */ jsx(RouteDrawer.Description, { asChild: true, children: /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Edit the email for the draft order" }) })
|
|
9794
|
+
] }),
|
|
9795
|
+
isReady && /* @__PURE__ */ jsx(EmailForm, { order })
|
|
9796
|
+
] });
|
|
9797
|
+
};
|
|
9798
|
+
const EmailForm = ({ order }) => {
|
|
9799
|
+
const form = useForm({
|
|
9800
|
+
defaultValues: {
|
|
9801
|
+
email: order.email ?? ""
|
|
9802
|
+
},
|
|
9803
|
+
resolver: zodResolver(schema$3)
|
|
9804
|
+
});
|
|
9805
|
+
const { mutateAsync, isPending } = useUpdateDraftOrder(order.id);
|
|
9806
|
+
const { handleSuccess } = useRouteModal();
|
|
9807
|
+
const onSubmit = form.handleSubmit(async (data) => {
|
|
9808
|
+
await mutateAsync(
|
|
9809
|
+
{ email: data.email },
|
|
9810
|
+
{
|
|
9811
|
+
onSuccess: () => {
|
|
9812
|
+
handleSuccess();
|
|
9813
|
+
},
|
|
9814
|
+
onError: (error) => {
|
|
9815
|
+
toast.error(error.message);
|
|
9816
|
+
}
|
|
9817
|
+
}
|
|
9818
|
+
);
|
|
9819
|
+
});
|
|
9820
|
+
return /* @__PURE__ */ jsx(RouteDrawer.Form, { form, children: /* @__PURE__ */ jsxs(
|
|
9821
|
+
KeyboundForm,
|
|
9822
|
+
{
|
|
9823
|
+
className: "flex flex-1 flex-col overflow-hidden",
|
|
9824
|
+
onSubmit,
|
|
9825
|
+
children: [
|
|
9826
|
+
/* @__PURE__ */ jsx(RouteDrawer.Body, { className: "flex flex-col gap-y-6 overflow-y-auto", children: /* @__PURE__ */ jsx(
|
|
9827
|
+
Form$2.Field,
|
|
9828
|
+
{
|
|
9829
|
+
control: form.control,
|
|
9830
|
+
name: "email",
|
|
9831
|
+
render: ({ field }) => /* @__PURE__ */ jsxs(Form$2.Item, { children: [
|
|
9832
|
+
/* @__PURE__ */ jsx(Form$2.Label, { children: "Email" }),
|
|
9833
|
+
/* @__PURE__ */ jsx(Form$2.Control, { children: /* @__PURE__ */ jsx(Input, { ...field }) }),
|
|
9834
|
+
/* @__PURE__ */ jsx(Form$2.ErrorMessage, {})
|
|
9835
|
+
] })
|
|
9836
|
+
}
|
|
9837
|
+
) }),
|
|
9838
|
+
/* @__PURE__ */ jsx(RouteDrawer.Footer, { children: /* @__PURE__ */ jsxs("div", { className: "flex justify-end gap-2", children: [
|
|
9839
|
+
/* @__PURE__ */ jsx(RouteDrawer.Close, { asChild: true, children: /* @__PURE__ */ jsx(Button, { size: "small", variant: "secondary", children: "Cancel" }) }),
|
|
9840
|
+
/* @__PURE__ */ jsx(Button, { size: "small", type: "submit", isLoading: isPending, children: "Save" })
|
|
9841
|
+
] }) })
|
|
9842
|
+
]
|
|
9843
|
+
}
|
|
9844
|
+
) });
|
|
9845
|
+
};
|
|
9846
|
+
const schema$3 = objectType({
|
|
9847
|
+
email: stringType().email()
|
|
9848
|
+
});
|
|
9781
9849
|
const NumberInput = forwardRef(
|
|
9782
9850
|
({
|
|
9783
9851
|
value,
|
|
@@ -11379,6 +11447,112 @@ function getPromotionIds(items, shippingMethods) {
|
|
|
11379
11447
|
}
|
|
11380
11448
|
return Array.from(promotionIds);
|
|
11381
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
|
+
});
|
|
11382
11556
|
const STACKED_FOCUS_MODAL_ID = "shipping-form";
|
|
11383
11557
|
const Shipping = () => {
|
|
11384
11558
|
var _a;
|
|
@@ -12218,7 +12392,7 @@ const ShippingAddressForm = ({ order }) => {
|
|
|
12218
12392
|
postal_code: ((_i = order.shipping_address) == null ? void 0 : _i.postal_code) ?? "",
|
|
12219
12393
|
phone: ((_j = order.shipping_address) == null ? void 0 : _j.phone) ?? ""
|
|
12220
12394
|
},
|
|
12221
|
-
resolver: zodResolver(schema$
|
|
12395
|
+
resolver: zodResolver(schema$1)
|
|
12222
12396
|
});
|
|
12223
12397
|
const { mutateAsync, isPending } = useUpdateDraftOrder(order.id);
|
|
12224
12398
|
const { handleSuccess } = useRouteModal();
|
|
@@ -12388,7 +12562,7 @@ const ShippingAddressForm = ({ order }) => {
|
|
|
12388
12562
|
}
|
|
12389
12563
|
) });
|
|
12390
12564
|
};
|
|
12391
|
-
const schema$
|
|
12565
|
+
const schema$1 = addressSchema;
|
|
12392
12566
|
const TransferOwnership = () => {
|
|
12393
12567
|
const { id } = useParams();
|
|
12394
12568
|
const { draft_order, isPending, isError, error } = useDraftOrder(id, {
|
|
@@ -12412,7 +12586,7 @@ const TransferOwnershipForm = ({ order }) => {
|
|
|
12412
12586
|
defaultValues: {
|
|
12413
12587
|
customer_id: order.customer_id || ""
|
|
12414
12588
|
},
|
|
12415
|
-
resolver: zodResolver(schema
|
|
12589
|
+
resolver: zodResolver(schema)
|
|
12416
12590
|
});
|
|
12417
12591
|
const { mutateAsync, isPending } = useUpdateDraftOrder(order.id);
|
|
12418
12592
|
const { handleSuccess } = useRouteModal();
|
|
@@ -12862,182 +13036,8 @@ const Illustration = () => {
|
|
|
12862
13036
|
}
|
|
12863
13037
|
);
|
|
12864
13038
|
};
|
|
12865
|
-
const schema$2 = objectType({
|
|
12866
|
-
customer_id: stringType().min(1)
|
|
12867
|
-
});
|
|
12868
|
-
const SalesChannel = () => {
|
|
12869
|
-
const { id } = useParams();
|
|
12870
|
-
const { draft_order, isPending, isError, error } = useDraftOrder(
|
|
12871
|
-
id,
|
|
12872
|
-
{
|
|
12873
|
-
fields: "+sales_channel_id"
|
|
12874
|
-
},
|
|
12875
|
-
{
|
|
12876
|
-
enabled: !!id
|
|
12877
|
-
}
|
|
12878
|
-
);
|
|
12879
|
-
if (isError) {
|
|
12880
|
-
throw error;
|
|
12881
|
-
}
|
|
12882
|
-
const ISrEADY = !!draft_order && !isPending;
|
|
12883
|
-
return /* @__PURE__ */ jsxs(RouteDrawer, { children: [
|
|
12884
|
-
/* @__PURE__ */ jsxs(RouteDrawer.Header, { children: [
|
|
12885
|
-
/* @__PURE__ */ jsx(RouteDrawer.Title, { asChild: true, children: /* @__PURE__ */ jsx(Heading, { children: "Edit Sales Channel" }) }),
|
|
12886
|
-
/* @__PURE__ */ jsx(RouteDrawer.Description, { asChild: true, children: /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Update which sales channel the draft order is associated with" }) })
|
|
12887
|
-
] }),
|
|
12888
|
-
ISrEADY && /* @__PURE__ */ jsx(SalesChannelForm, { order: draft_order })
|
|
12889
|
-
] });
|
|
12890
|
-
};
|
|
12891
|
-
const SalesChannelForm = ({ order }) => {
|
|
12892
|
-
const form = useForm({
|
|
12893
|
-
defaultValues: {
|
|
12894
|
-
sales_channel_id: order.sales_channel_id || ""
|
|
12895
|
-
},
|
|
12896
|
-
resolver: zodResolver(schema$1)
|
|
12897
|
-
});
|
|
12898
|
-
const { mutateAsync, isPending } = useUpdateDraftOrder(order.id);
|
|
12899
|
-
const { handleSuccess } = useRouteModal();
|
|
12900
|
-
const onSubmit = form.handleSubmit(async (data) => {
|
|
12901
|
-
await mutateAsync(
|
|
12902
|
-
{
|
|
12903
|
-
sales_channel_id: data.sales_channel_id
|
|
12904
|
-
},
|
|
12905
|
-
{
|
|
12906
|
-
onSuccess: () => {
|
|
12907
|
-
toast.success("Sales channel updated");
|
|
12908
|
-
handleSuccess();
|
|
12909
|
-
},
|
|
12910
|
-
onError: (error) => {
|
|
12911
|
-
toast.error(error.message);
|
|
12912
|
-
}
|
|
12913
|
-
}
|
|
12914
|
-
);
|
|
12915
|
-
});
|
|
12916
|
-
return /* @__PURE__ */ jsx(RouteDrawer.Form, { form, children: /* @__PURE__ */ jsxs(
|
|
12917
|
-
KeyboundForm,
|
|
12918
|
-
{
|
|
12919
|
-
className: "flex flex-1 flex-col overflow-hidden",
|
|
12920
|
-
onSubmit,
|
|
12921
|
-
children: [
|
|
12922
|
-
/* @__PURE__ */ jsx(RouteDrawer.Body, { className: "flex flex-col gap-y-6 overflow-y-auto", children: /* @__PURE__ */ jsx(SalesChannelField, { control: form.control, order }) }),
|
|
12923
|
-
/* @__PURE__ */ jsx(RouteDrawer.Footer, { children: /* @__PURE__ */ jsxs("div", { className: "flex justify-end gap-2", children: [
|
|
12924
|
-
/* @__PURE__ */ jsx(RouteDrawer.Close, { asChild: true, children: /* @__PURE__ */ jsx(Button, { size: "small", variant: "secondary", children: "Cancel" }) }),
|
|
12925
|
-
/* @__PURE__ */ jsx(Button, { size: "small", type: "submit", isLoading: isPending, children: "Save" })
|
|
12926
|
-
] }) })
|
|
12927
|
-
]
|
|
12928
|
-
}
|
|
12929
|
-
) });
|
|
12930
|
-
};
|
|
12931
|
-
const SalesChannelField = ({ control, order }) => {
|
|
12932
|
-
const salesChannels = useComboboxData({
|
|
12933
|
-
queryFn: async (params) => {
|
|
12934
|
-
return await sdk.admin.salesChannel.list(params);
|
|
12935
|
-
},
|
|
12936
|
-
queryKey: ["sales-channels"],
|
|
12937
|
-
getOptions: (data) => {
|
|
12938
|
-
return data.sales_channels.map((salesChannel) => ({
|
|
12939
|
-
label: salesChannel.name,
|
|
12940
|
-
value: salesChannel.id
|
|
12941
|
-
}));
|
|
12942
|
-
},
|
|
12943
|
-
defaultValue: order.sales_channel_id || void 0
|
|
12944
|
-
});
|
|
12945
|
-
return /* @__PURE__ */ jsx(
|
|
12946
|
-
Form$2.Field,
|
|
12947
|
-
{
|
|
12948
|
-
control,
|
|
12949
|
-
name: "sales_channel_id",
|
|
12950
|
-
render: ({ field }) => {
|
|
12951
|
-
return /* @__PURE__ */ jsxs(Form$2.Item, { children: [
|
|
12952
|
-
/* @__PURE__ */ jsx(Form$2.Label, { children: "Sales Channel" }),
|
|
12953
|
-
/* @__PURE__ */ jsx(Form$2.Control, { children: /* @__PURE__ */ jsx(
|
|
12954
|
-
Combobox,
|
|
12955
|
-
{
|
|
12956
|
-
options: salesChannels.options,
|
|
12957
|
-
fetchNextPage: salesChannels.fetchNextPage,
|
|
12958
|
-
isFetchingNextPage: salesChannels.isFetchingNextPage,
|
|
12959
|
-
searchValue: salesChannels.searchValue,
|
|
12960
|
-
onSearchValueChange: salesChannels.onSearchValueChange,
|
|
12961
|
-
placeholder: "Select sales channel",
|
|
12962
|
-
...field
|
|
12963
|
-
}
|
|
12964
|
-
) }),
|
|
12965
|
-
/* @__PURE__ */ jsx(Form$2.ErrorMessage, {})
|
|
12966
|
-
] });
|
|
12967
|
-
}
|
|
12968
|
-
}
|
|
12969
|
-
);
|
|
12970
|
-
};
|
|
12971
|
-
const schema$1 = objectType({
|
|
12972
|
-
sales_channel_id: stringType().min(1)
|
|
12973
|
-
});
|
|
12974
|
-
const Email = () => {
|
|
12975
|
-
const { id } = useParams();
|
|
12976
|
-
const { order, isPending, isError, error } = useOrder(id, {
|
|
12977
|
-
fields: "+email"
|
|
12978
|
-
});
|
|
12979
|
-
if (isError) {
|
|
12980
|
-
throw error;
|
|
12981
|
-
}
|
|
12982
|
-
const isReady = !isPending && !!order;
|
|
12983
|
-
return /* @__PURE__ */ jsxs(RouteDrawer, { children: [
|
|
12984
|
-
/* @__PURE__ */ jsxs(RouteDrawer.Header, { children: [
|
|
12985
|
-
/* @__PURE__ */ jsx(RouteDrawer.Title, { asChild: true, children: /* @__PURE__ */ jsx(Heading, { children: "Edit Email" }) }),
|
|
12986
|
-
/* @__PURE__ */ jsx(RouteDrawer.Description, { asChild: true, children: /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Edit the email for the draft order" }) })
|
|
12987
|
-
] }),
|
|
12988
|
-
isReady && /* @__PURE__ */ jsx(EmailForm, { order })
|
|
12989
|
-
] });
|
|
12990
|
-
};
|
|
12991
|
-
const EmailForm = ({ order }) => {
|
|
12992
|
-
const form = useForm({
|
|
12993
|
-
defaultValues: {
|
|
12994
|
-
email: order.email ?? ""
|
|
12995
|
-
},
|
|
12996
|
-
resolver: zodResolver(schema)
|
|
12997
|
-
});
|
|
12998
|
-
const { mutateAsync, isPending } = useUpdateDraftOrder(order.id);
|
|
12999
|
-
const { handleSuccess } = useRouteModal();
|
|
13000
|
-
const onSubmit = form.handleSubmit(async (data) => {
|
|
13001
|
-
await mutateAsync(
|
|
13002
|
-
{ email: data.email },
|
|
13003
|
-
{
|
|
13004
|
-
onSuccess: () => {
|
|
13005
|
-
handleSuccess();
|
|
13006
|
-
},
|
|
13007
|
-
onError: (error) => {
|
|
13008
|
-
toast.error(error.message);
|
|
13009
|
-
}
|
|
13010
|
-
}
|
|
13011
|
-
);
|
|
13012
|
-
});
|
|
13013
|
-
return /* @__PURE__ */ jsx(RouteDrawer.Form, { form, children: /* @__PURE__ */ jsxs(
|
|
13014
|
-
KeyboundForm,
|
|
13015
|
-
{
|
|
13016
|
-
className: "flex flex-1 flex-col overflow-hidden",
|
|
13017
|
-
onSubmit,
|
|
13018
|
-
children: [
|
|
13019
|
-
/* @__PURE__ */ jsx(RouteDrawer.Body, { className: "flex flex-col gap-y-6 overflow-y-auto", children: /* @__PURE__ */ jsx(
|
|
13020
|
-
Form$2.Field,
|
|
13021
|
-
{
|
|
13022
|
-
control: form.control,
|
|
13023
|
-
name: "email",
|
|
13024
|
-
render: ({ field }) => /* @__PURE__ */ jsxs(Form$2.Item, { children: [
|
|
13025
|
-
/* @__PURE__ */ jsx(Form$2.Label, { children: "Email" }),
|
|
13026
|
-
/* @__PURE__ */ jsx(Form$2.Control, { children: /* @__PURE__ */ jsx(Input, { ...field }) }),
|
|
13027
|
-
/* @__PURE__ */ jsx(Form$2.ErrorMessage, {})
|
|
13028
|
-
] })
|
|
13029
|
-
}
|
|
13030
|
-
) }),
|
|
13031
|
-
/* @__PURE__ */ jsx(RouteDrawer.Footer, { children: /* @__PURE__ */ jsxs("div", { className: "flex justify-end gap-2", children: [
|
|
13032
|
-
/* @__PURE__ */ jsx(RouteDrawer.Close, { asChild: true, children: /* @__PURE__ */ jsx(Button, { size: "small", variant: "secondary", children: "Cancel" }) }),
|
|
13033
|
-
/* @__PURE__ */ jsx(Button, { size: "small", type: "submit", isLoading: isPending, children: "Save" })
|
|
13034
|
-
] }) })
|
|
13035
|
-
]
|
|
13036
|
-
}
|
|
13037
|
-
) });
|
|
13038
|
-
};
|
|
13039
13039
|
const schema = objectType({
|
|
13040
|
-
|
|
13040
|
+
customer_id: stringType().min(1)
|
|
13041
13041
|
});
|
|
13042
13042
|
const widgetModule = { widgets: [] };
|
|
13043
13043
|
const routeModule = {
|
|
@@ -13067,6 +13067,10 @@ const routeModule = {
|
|
|
13067
13067
|
Component: CustomItems,
|
|
13068
13068
|
path: "/draft-orders/:id/custom-items"
|
|
13069
13069
|
},
|
|
13070
|
+
{
|
|
13071
|
+
Component: Email,
|
|
13072
|
+
path: "/draft-orders/:id/email"
|
|
13073
|
+
},
|
|
13070
13074
|
{
|
|
13071
13075
|
Component: Items,
|
|
13072
13076
|
path: "/draft-orders/:id/items"
|
|
@@ -13079,6 +13083,10 @@ const routeModule = {
|
|
|
13079
13083
|
Component: Promotions,
|
|
13080
13084
|
path: "/draft-orders/:id/promotions"
|
|
13081
13085
|
},
|
|
13086
|
+
{
|
|
13087
|
+
Component: SalesChannel,
|
|
13088
|
+
path: "/draft-orders/:id/sales-channel"
|
|
13089
|
+
},
|
|
13082
13090
|
{
|
|
13083
13091
|
Component: Shipping,
|
|
13084
13092
|
path: "/draft-orders/:id/shipping"
|
|
@@ -13090,14 +13098,6 @@ const routeModule = {
|
|
|
13090
13098
|
{
|
|
13091
13099
|
Component: TransferOwnership,
|
|
13092
13100
|
path: "/draft-orders/:id/transfer-ownership"
|
|
13093
|
-
},
|
|
13094
|
-
{
|
|
13095
|
-
Component: SalesChannel,
|
|
13096
|
-
path: "/draft-orders/:id/sales-channel"
|
|
13097
|
-
},
|
|
13098
|
-
{
|
|
13099
|
-
Component: Email,
|
|
13100
|
-
path: "/draft-orders/:id/email"
|
|
13101
13101
|
}
|
|
13102
13102
|
]
|
|
13103
13103
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@medusajs/draft-order",
|
|
3
|
-
"version": "2.10.4-preview-
|
|
3
|
+
"version": "2.10.4-preview-20251014000319",
|
|
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.4-preview-
|
|
39
|
+
"@medusajs/js-sdk": "2.10.4-preview-20251014000319",
|
|
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,14 +45,14 @@
|
|
|
45
45
|
"react-hook-form": "7.49.1"
|
|
46
46
|
},
|
|
47
47
|
"devDependencies": {
|
|
48
|
-
"@medusajs/admin-sdk": "2.10.4-preview-
|
|
49
|
-
"@medusajs/cli": "2.10.4-preview-
|
|
50
|
-
"@medusajs/framework": "2.10.4-preview-
|
|
51
|
-
"@medusajs/icons": "2.10.4-preview-
|
|
52
|
-
"@medusajs/test-utils": "2.10.4-preview-
|
|
53
|
-
"@medusajs/types": "2.10.4-preview-
|
|
54
|
-
"@medusajs/ui": "4.0.24-preview-
|
|
55
|
-
"@medusajs/ui-preset": "2.10.4-preview-
|
|
48
|
+
"@medusajs/admin-sdk": "2.10.4-preview-20251014000319",
|
|
49
|
+
"@medusajs/cli": "2.10.4-preview-20251014000319",
|
|
50
|
+
"@medusajs/framework": "2.10.4-preview-20251014000319",
|
|
51
|
+
"@medusajs/icons": "2.10.4-preview-20251014000319",
|
|
52
|
+
"@medusajs/test-utils": "2.10.4-preview-20251014000319",
|
|
53
|
+
"@medusajs/types": "2.10.4-preview-20251014000319",
|
|
54
|
+
"@medusajs/ui": "4.0.24-preview-20251014000319",
|
|
55
|
+
"@medusajs/ui-preset": "2.10.4-preview-20251014000319",
|
|
56
56
|
"@swc/core": "1.5.7",
|
|
57
57
|
"@types/lodash": "^4.17.15",
|
|
58
58
|
"@types/node": "^20.0.0",
|
|
@@ -69,12 +69,12 @@
|
|
|
69
69
|
"yalc": "^1.0.0-pre.53"
|
|
70
70
|
},
|
|
71
71
|
"peerDependencies": {
|
|
72
|
-
"@medusajs/admin-sdk": "2.10.4-preview-
|
|
73
|
-
"@medusajs/cli": "2.10.4-preview-
|
|
74
|
-
"@medusajs/framework": "2.10.4-preview-
|
|
75
|
-
"@medusajs/icons": "2.10.4-preview-
|
|
76
|
-
"@medusajs/test-utils": "2.10.4-preview-
|
|
77
|
-
"@medusajs/ui": "4.0.24-preview-
|
|
72
|
+
"@medusajs/admin-sdk": "2.10.4-preview-20251014000319",
|
|
73
|
+
"@medusajs/cli": "2.10.4-preview-20251014000319",
|
|
74
|
+
"@medusajs/framework": "2.10.4-preview-20251014000319",
|
|
75
|
+
"@medusajs/icons": "2.10.4-preview-20251014000319",
|
|
76
|
+
"@medusajs/test-utils": "2.10.4-preview-20251014000319",
|
|
77
|
+
"@medusajs/ui": "4.0.24-preview-20251014000319",
|
|
78
78
|
"lodash": "^4.17.21",
|
|
79
79
|
"react-router-dom": "6.20.1"
|
|
80
80
|
},
|