From b2a8c897f7c3f257902fb772586d98ecec48c3e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Frane=20Poli=C4=87?= <16856471+fPolic@users.noreply.github.com> Date: Fri, 4 Oct 2024 11:09:27 +0200 Subject: [PATCH] fix(dashboard): allow to unset PL rule (#9276) **What** - unset customer groups rule if no groups are selected - preserve other rules when updating a PL --- CLOSES https://github.com/medusajs/medusa/issues/9376 --- .../price-list-configuration-form.tsx | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/packages/admin/dashboard/src/routes/price-lists/price-list-configuration/components/price-list-configuration-form/price-list-configuration-form.tsx b/packages/admin/dashboard/src/routes/price-lists/price-list-configuration/components/price-list-configuration-form/price-list-configuration-form.tsx index 1ef624c33b..6e270063cd 100644 --- a/packages/admin/dashboard/src/routes/price-lists/price-list-configuration/components/price-list-configuration-form/price-list-configuration-form.tsx +++ b/packages/admin/dashboard/src/routes/price-lists/price-list-configuration/components/price-list-configuration-form/price-list-configuration-form.tsx @@ -90,13 +90,20 @@ export const PriceListConfigurationForm = ({ const { mutateAsync } = useUpdatePriceList(priceList.id) const handleSubmit = form.handleSubmit(async (values) => { + const groupIds = values.customer_group_id.map((group) => group.id) + const rules = { ...priceList.rules } // preserve other rules set on the PL + + if (groupIds.length) { + rules["customer_group_id"] = groupIds + } else { + delete rules["customer_group_id"] + } + await mutateAsync( { starts_at: values.starts_at?.toISOString() || null, ends_at: values.ends_at?.toISOString() || null, - rules: { - customer_group_id: values.customer_group_id.map((group) => group.id), - }, + rules: rules, }, { onSuccess: () => {