UNPKG

usps-webtools-promise

Version:

API wrapper for the USPS Web-Tools, with Promises!

35 lines (34 loc) 1.2 kB
import properCase from "../utils/proper-case.js"; import callUSPS from "../utils/request.js"; export default async function (address) { let response; try { response = (await callUSPS("ZipCodeLookup", "ZipCodeLookup", "Address", this.config, { Address: { Address1: address.Address2 ?? "", Address2: address.Address1, City: address.City, State: address.State, }, })); if (response) { if (this.config.properCase) { response.Address1 = response.Address2 ? properCase(response.Address2) : undefined; response.Address2 = response.Address1 ? properCase(response.Address1) : undefined; response.City = response.City ? properCase(response.City) : undefined; response.FirmName = response.FirmName ? properCase(response.FirmName) : undefined; } return response; } throw new Error("Can't find results"); } catch (error) { return error; } }