UNPKG

@defra/wls-eps-web-service

Version:

The web service for wildlife licencing of European Protected Species

34 lines (30 loc) 1.64 kB
import { APIRequests } from '../../../../services/api-requests.js' import { contactAccountOperations } from '../operations.js' export const getAddressFormData = (contactRole, accountRole) => async request => { const journeyData = await request.cache().getData() const { applicationId } = journeyData const contact = await APIRequests.CONTACT.role(contactRole).getByApplicationId(applicationId) const account = await APIRequests.ACCOUNT.role(accountRole).getByApplicationId(applicationId) return { contactName: contact?.fullName, accountName: account?.name, postCode: !request.query['no-postcode'] } } export const setAddressFormData = (contactRole, accountRole) => async request => { const journeyData = await request.cache().getData() const { userId, applicationId } = journeyData const pageData = await request.cache().getPageData() const inputAddress = pageData.payload const apiAddress = mapInputAddress(inputAddress) const contactAccountOps = contactAccountOperations(contactRole, accountRole, applicationId, userId) await contactAccountOps.setAddress(apiAddress) } export const mapInputAddress = inputAddress => Object.assign({ }, { ...(!!inputAddress['address-line-1'] && { addressLine1: inputAddress['address-line-1'] }), ...(!!inputAddress['address-line-2'] && { addressLine2: inputAddress['address-line-2'] }), ...(!!inputAddress['address-town'] && { town: inputAddress['address-town'] }), ...(!!inputAddress['address-county'] && { county: inputAddress['address-county'] }), ...(!!inputAddress['address-postcode'] && { postcode: inputAddress['address-postcode'] }) })