Set missing address fields to empty for express block

Fixes compatibility with latest wc blocks version
This commit is contained in:
Alex P 2023-03-23 10:52:19 +02:00
parent 10cf1b9408
commit e4b9cb3398
No known key found for this signature in database
GPG key ID: 54487A734A204D71
2 changed files with 18 additions and 6 deletions

View file

@ -32,9 +32,22 @@ export const paypalAddressToWc = (address) => {
if (address[paypalKey]) { if (address[paypalKey]) {
result[wcKey] = address[paypalKey]; result[wcKey] = address[paypalKey];
} }
}) });
return result; const defaultAddress = {
first_name: '',
last_name: '',
company: '',
address_1: '',
address_2: '',
city: '',
state: '',
postcode: '',
country: '',
phone: '',
};
return {...defaultAddress, ...result};
} }
/** /**
@ -44,9 +57,9 @@ export const paypalAddressToWc = (address) => {
export const paypalShippingToWc = (shipping) => { export const paypalShippingToWc = (shipping) => {
const [firstName, lastName] = splitFullName(shipping.name.full_name); const [firstName, lastName] = splitFullName(shipping.name.full_name);
return { return {
...paypalAddressToWc(shipping.address),
first_name: firstName, first_name: firstName,
last_name: lastName, last_name: lastName,
...paypalAddressToWc(shipping.address),
} }
} }
@ -59,10 +72,10 @@ export const paypalPayerToWc = (payer) => {
const lastName = payer.name.surname; const lastName = payer.name.surname;
const address = payer.address ? paypalAddressToWc(payer.address) : {}; const address = payer.address ? paypalAddressToWc(payer.address) : {};
return { return {
...address,
first_name: firstName, first_name: firstName,
last_name: lastName, last_name: lastName,
email: payer.email_address, email: payer.email_address,
...address,
} }
} }

View file

@ -117,9 +117,8 @@ const PayPalComponent = ({
paymentMethodData: { paymentMethodData: {
'paypal_order_id': paypalOrder.id, 'paypal_order_id': paypalOrder.id,
}, },
shippingData: {address: shippingAddress}, shippingAddress,
billingAddress, billingAddress,
billingData: billingAddress,
}, },
}; };
}); });