diff --git a/.changeset/great-eagles-double.md b/.changeset/great-eagles-double.md new file mode 100644 index 000000000..cefc19408 --- /dev/null +++ b/.changeset/great-eagles-double.md @@ -0,0 +1,5 @@ +--- +"@bigcommerce/catalyst-core": patch +--- + +standardize mutations by returning drilled response diff --git a/apps/core/app/[locale]/(default)/login/_actions/submit-change-password-form.ts b/apps/core/app/[locale]/(default)/login/_actions/submit-change-password-form.ts index 0ea9add08..df5690941 100644 --- a/apps/core/app/[locale]/(default)/login/_actions/submit-change-password-form.ts +++ b/apps/core/app/[locale]/(default)/login/_actions/submit-change-password-form.ts @@ -27,13 +27,13 @@ export const submitChangePasswordForm = async (_previousState: unknown, formData customerEntityId: Number(parsedData.customerId), }); - if (response.customer.resetPassword.errors.length === 0) { + if (response.errors.length === 0) { return { status: 'success', message: '' }; } return { status: 'error', - message: response.customer.resetPassword.errors.map((error) => error.message).join('\n'), + message: response.errors.map((error) => error.message).join('\n'), }; } catch (error: unknown) { if (error instanceof ZodError) { diff --git a/apps/core/app/[locale]/(default)/login/_actions/submit-reset-password-form.ts b/apps/core/app/[locale]/(default)/login/_actions/submit-reset-password-form.ts index 6ae1419de..7ba88645d 100644 --- a/apps/core/app/[locale]/(default)/login/_actions/submit-reset-password-form.ts +++ b/apps/core/app/[locale]/(default)/login/_actions/submit-reset-password-form.ts @@ -26,13 +26,13 @@ export const submitResetPasswordForm = async ({ reCaptchaToken, }); - if (response.customer.requestResetPassword.errors.length === 0) { + if (response.errors.length === 0) { return { status: 'success', data: parsedData }; } return { status: 'error', - error: response.customer.requestResetPassword.errors.map((error) => error.message).join('\n'), + error: response.errors.map((error) => error.message).join('\n'), }; } catch (error: unknown) { if (error instanceof Error || error instanceof z.ZodError) { diff --git a/apps/core/app/[locale]/(default)/webpages/contact/[id]/contact-us/_actions/submit-contact-form.ts b/apps/core/app/[locale]/(default)/webpages/contact/[id]/contact-us/_actions/submit-contact-form.ts index 0070eb994..956a33cc7 100644 --- a/apps/core/app/[locale]/(default)/webpages/contact/[id]/contact-us/_actions/submit-contact-form.ts +++ b/apps/core/app/[locale]/(default)/webpages/contact/[id]/contact-us/_actions/submit-contact-form.ts @@ -35,13 +35,13 @@ export const submitContactForm = async ({ reCaptchaToken, }); - if (response.submitContactUs.errors.length === 0) { + if (response.errors.length === 0) { return { status: 'success', data: parsedData }; } return { status: 'failed', - error: response.submitContactUs.errors.map((error) => error.message).join('\n'), + error: response.errors.map((error) => error.message).join('\n'), }; } catch (e: unknown) { if (e instanceof Error || e instanceof z.ZodError) { diff --git a/apps/core/client/mutations/add-checkout-shipping-consignments.ts b/apps/core/client/mutations/add-checkout-shipping-consignments.ts index 8d2b5e26d..8cb2a2295 100644 --- a/apps/core/client/mutations/add-checkout-shipping-consignments.ts +++ b/apps/core/client/mutations/add-checkout-shipping-consignments.ts @@ -67,11 +67,5 @@ export const addCheckoutShippingConsignments = async ({ fetchOptions: { cache: 'no-store' }, }); - const checkout = response.data.checkout.addCheckoutShippingConsignments?.checkout; - - if (checkout) { - return checkout; - } - - throw new Error('Something went wrong adding shipping info.'); + return response.data.checkout.addCheckoutShippingConsignments?.checkout; }; diff --git a/apps/core/client/mutations/delete-customer-address.ts b/apps/core/client/mutations/delete-customer-address.ts index bc42cb7cf..3ab00b73e 100644 --- a/apps/core/client/mutations/delete-customer-address.ts +++ b/apps/core/client/mutations/delete-customer-address.ts @@ -43,5 +43,5 @@ export const deleteCustomerAddress = async (addressId: AddressId, reCaptchaToken }, }); - return response.data; + return response.data.customer.deleteCustomerAddress; }; diff --git a/apps/core/client/mutations/select-checkout-shipping-option.ts b/apps/core/client/mutations/select-checkout-shipping-option.ts index 0791d8daa..b1dd46b49 100644 --- a/apps/core/client/mutations/select-checkout-shipping-option.ts +++ b/apps/core/client/mutations/select-checkout-shipping-option.ts @@ -41,11 +41,5 @@ export const selectCheckoutShippingOption = async ({ fetchOptions: { cache: 'no-store' }, }); - const shippingCosts = response.data.checkout.selectCheckoutShippingOption?.checkout; - - if (shippingCosts) { - return shippingCosts; - } - - return null; + return response.data.checkout.selectCheckoutShippingOption?.checkout; }; diff --git a/apps/core/client/mutations/submit-change-password.ts b/apps/core/client/mutations/submit-change-password.ts index 68b3d8d5f..d94356434 100644 --- a/apps/core/client/mutations/submit-change-password.ts +++ b/apps/core/client/mutations/submit-change-password.ts @@ -52,5 +52,5 @@ export const submitChangePassword = async ({ variables, }); - return response.data; + return response.data.customer.resetPassword; }; diff --git a/apps/core/client/mutations/submit-contact-form.ts b/apps/core/client/mutations/submit-contact-form.ts index cc715bb82..4f5e5aaf2 100644 --- a/apps/core/client/mutations/submit-contact-form.ts +++ b/apps/core/client/mutations/submit-contact-form.ts @@ -51,5 +51,5 @@ export const submitContactForm = async ({ variables, }); - return response.data; + return response.data.submitContactUs; }; diff --git a/apps/core/client/mutations/submit-reset-password.ts b/apps/core/client/mutations/submit-reset-password.ts index e22f6fea5..d779e64c9 100644 --- a/apps/core/client/mutations/submit-reset-password.ts +++ b/apps/core/client/mutations/submit-reset-password.ts @@ -42,5 +42,5 @@ export const submitResetPassword = async ({ email, path, reCaptchaToken }: Submi variables, }); - return response.data; + return response.data.customer.requestResetPassword; }; diff --git a/apps/core/client/mutations/update-checkout-shipping-consigment.ts b/apps/core/client/mutations/update-checkout-shipping-consigment.ts index 4c452681a..0203957ea 100644 --- a/apps/core/client/mutations/update-checkout-shipping-consigment.ts +++ b/apps/core/client/mutations/update-checkout-shipping-consigment.ts @@ -68,11 +68,5 @@ export const updateCheckoutShippingConsignment = async ({ fetchOptions: { cache: 'no-store' }, }); - const checkout = response.data.checkout.updateCheckoutShippingConsignment?.checkout; - - if (checkout) { - return checkout; - } - - return null; + return response.data.checkout.updateCheckoutShippingConsignment?.checkout; };