UNPKG

@fleetbase/fleetops-engine

Version:

Fleet & Transport Management Extension for Fleetbase

43 lines (32 loc) 1.32 kB
import { htmlSafe } from '@ember/template'; import { isBlank } from '@ember/utils'; function escapeHtml(value) { return String(value).replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;').replace(/'/g, '&#39;'); } function line(content, className = '') { const classAttribute = className ? ` class="${className}"` : ''; return `<div${classAttribute}>${escapeHtml(content)}</div>`; } export default function placeAddressHtml(place, options = {}) { if (!place) { return htmlSafe(''); } const { showTitle = true } = options; const name = place.name === place.street1 ? null : place.name; const cityStatePostalCode = [place.city, place.province, place.postal_code].filter((value) => !isBlank(value)).join(', '); const lines = []; if (name) { if (showTitle) lines.push(line(name, 'font-semibold')); lines.push(line(place.street1)); } else if (place.street1) { lines.push(line(place.street1, 'font-semibold')); } if (place.street2) { lines.push(line(place.street2)); } lines.push(line(cityStatePostalCode)); if (place.country) { lines.push(line(place.country_name)); } return htmlSafe(`<address class="uppercase truncate w-full">${lines.join('')}</address>`); }