UNPKG

@ideal-postcodes/postcode-lookup

Version:
69 lines (68 loc) 1.79 kB
"use strict"; /** * @module Utility */ Object.defineProperty(exports, "__esModule", { value: true }); exports.removeOptions = exports.toValue = exports.preventDefault = exports.addressSearchFormatter = exports.postcodeSearchFormatter = void 0; const jsutil_1 = require("@ideal-postcodes/jsutil"); /** * Formats an address as a suggestion to be displayed in postcode lookup select * menu */ const postcodeSearchFormatter = (address) => { const result = [address.line_1]; if (address.line_2 !== "") result.push(address.line_2); if (address.line_3 !== "") result.push(address.line_3); return result.join(", "); }; exports.postcodeSearchFormatter = postcodeSearchFormatter; /** * Formats an address as a suggestion to be displayed in address search select * menu */ const addressSearchFormatter = (address) => { const result = [address.line_1]; if (address.line_2 !== "") result.push(address.line_2); result.push(address.post_town); result.push(address.postcode_outward); return result.join(", "); }; exports.addressSearchFormatter = addressSearchFormatter; /** * @hidden */ const preventDefault = (e) => { if (e.preventDefault) e.preventDefault(); return false; }; exports.preventDefault = preventDefault; /** * Extract string value of address attirube * * @hidden */ const toValue = (a, key) => { const v = a[key]; if ((0, jsutil_1.isString)(v)) return v; if (v === undefined) return ""; return v.toString(); }; exports.toValue = toValue; /** * Drains select elment of options * * @hidden */ const removeOptions = (e) => { let i; const L = e.options.length - 1; for (i = L; i >= 0; i--) e.remove(i); }; exports.removeOptions = removeOptions;