1export function formatSotaId(sotaid) { 2 if (sotaid === null) return null; 3 const paddedNumber = String(sotaid).padStart(3, "0"); 4 return `G/LD-${paddedNumber}`; 5} 6export function formatWotaId(wotaid) { 7 if (wotaid <= 214) { 8 const paddedNumber = String(wotaid).padStart(3, "0"); 9 return `LDW-${paddedNumber}`; 10 } else { 11 const ldoNumber = wotaid - 214; 12 const paddedNumber = String(ldoNumber).padStart(3, "0"); 13 return `LDO-${paddedNumber}`; 14 } 15} 16export function formatHeight(height) { 17 return height > 0 ? `${height}m` : "Unknown"; 18} 19export function formatDate(date) { 20 if (!date) return "Never"; 21 return new Date(date).toLocaleDateString(); 22} 23export function formatDateTime(datetime) { 24 if (!datetime) return "Unknown"; 25 const d = new Date(datetime); 26 return d.toLocaleString("en-GB", { 27 day: "2-digit", 28 month: "2-digit", 29 year: "numeric", 30 hour: "2-digit", 31 minute: "2-digit" 32 }); 33} 34 35//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZvcm1hdHRlcnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBGb3JtYXQgU09UQSBJRCB0byBHL0xELVhYWCBmb3JtYXRcbiAqIEBwYXJhbSBzb3RhaWQgLSBUaGUgU09UQSBJRCBudW1iZXJcbiAqIEByZXR1cm5zIEZvcm1hdHRlZCBzdHJpbmcgbGlrZSBcIkcvTEQtMDAxXCJcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdFNvdGFJZChzb3RhaWQ6IG51bWJlciB8IG51bGwpOiBzdHJpbmcgfCBudWxsIHtcbiAgaWYgKHNvdGFpZCA9PT0gbnVsbCkgcmV0dXJuIG51bGxcbiAgY29uc3QgcGFkZGVkTnVtYmVyID0gU3RyaW5nKHNvdGFpZCkucGFkU3RhcnQoMywgJzAnKVxuICByZXR1cm4gYEcvTEQtJHtwYWRkZWROdW1iZXJ9YFxufVxuXG4vKipcbiAqIEZvcm1hdCBXT1RBIElEIHRvIExEVy1YWFggb3IgTERPLVhYWCBmb3JtYXRcbiAqIEBwYXJhbSB3b3RhaWQgLSBUaGUgV09UQSBJRCBudW1iZXJcbiAqIEByZXR1cm5zIEZvcm1hdHRlZCBzdHJpbmcgbGlrZSBcIkxEVy0wMDFcIiAoPD0yMTQpIG9yIFwiTERPLTAwMVwiICgyMTUsIGFmdGVyIHN1YnRyYWN0aW5nIDIxNClcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdFdvdGFJZCh3b3RhaWQ6IG51bWJlcik6IHN0cmluZyB7XG4gIGlmICh3b3RhaWQgPD0gMjE0KSB7XG4gICAgY29uc3QgcGFkZGVkTnVtYmVyID0gU3RyaW5nKHdvdGFpZCkucGFkU3RhcnQoMywgJzAnKVxuICAgIHJldHVybiBgTERXLSR7cGFkZGVkTnVtYmVyfWBcbiAgfSBlbHNlIHtcbiAgICBjb25zdCBsZG9OdW1iZXIgPSB3b3RhaWQgLSAyMTRcbiAgICBjb25zdCBwYWRkZWROdW1iZXIgPSBTdHJpbmcobGRvTnVtYmVyKS5wYWRTdGFydCgzLCAnMCcpXG4gICAgcmV0dXJuIGBMRE8tJHtwYWRkZWROdW1iZXJ9YFxuICB9XG59XG5cbi8qKlxuICogRm9ybWF0IGhlaWdodCBpbiBtZXRlcnNcbiAqIEBwYXJhbSBoZWlnaHQgLSBIZWlnaHQgaW4gbWV0ZXJzXG4gKiBAcmV0dXJucyBGb3JtYXR0ZWQgc3RyaW5nIGxpa2UgXCI5NzhtXCIgb3IgXCJVbmtub3duXCJcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdEhlaWdodChoZWlnaHQ6IG51bWJlcik6IHN0cmluZyB7XG4gIHJldHVybiBoZWlnaHQgPiAwID8gYCR7aGVpZ2h0fW1gIDogJ1Vua25vd24nXG59XG5cbi8qKlxuICogRm9ybWF0IGRhdGUgZm9yIGRpc3BsYXlcbiAqIEBwYXJhbSBkYXRlIC0gRGF0ZSB0byBmb3JtYXRcbiAqIEByZXR1cm5zIEZvcm1hdHRlZCBkYXRlIHN0cmluZyBvciBcIk5ldmVyXCJcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdERhdGUoZGF0ZTogRGF0ZSB8IG51bGwpOiBzdHJpbmcge1xuICBpZiAoIWRhdGUpIHJldHVybiAnTmV2ZXInXG4gIHJldHVybiBuZXcgRGF0ZShkYXRlKS50b0xvY2FsZURhdGVTdHJpbmcoKVxufVxuXG4vKipcbiAqIEZvcm1hdCBkYXRldGltZSBmb3IgZGlzcGxheSB3aXRoIGJvdGggZGF0ZSBhbmQgdGltZVxuICogQHBhcmFtIGRhdGV0aW1lIC0gRGF0ZXRpbWUgdG8gZm9ybWF0XG4gKiBAcmV0dXJucyBGb3JtYXR0ZWQgZGF0ZXRpbWUgc3RyaW5nIG9yIFwiVW5rbm93blwiXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXREYXRlVGltZShkYXRldGltZTogRGF0ZSB8IG51bGwpOiBzdHJpbmcge1xuICBpZiAoIWRhdGV0aW1lKSByZXR1cm4gJ1Vua25vd24nXG4gIGNvbnN0IGQgPSBuZXcgRGF0ZShkYXRldGltZSlcbiAgcmV0dXJuIGQudG9Mb2NhbGVTdHJpbmcoJ2VuLUdCJywge1xuICAgIGRheTogJzItZGlnaXQnLFxuICAgIG1vbnRoOiAnMi1kaWdpdCcsXG4gICAgeWVhcjogJ251bWVyaWMnLFxuICAgIGhvdXI6ICcyLWRpZ2l0JyxcbiAgICBtaW51dGU6ICcyLWRpZ2l0J1xuICB9KVxufVxuIl0sIm1hcHBpbmdzIjoiQUFLTyxnQkFBUyxhQUFhLFFBQXNDO0FBQ2pFLE1BQUksV0FBVyxLQUFNLFFBQU87QUFDNUIsUUFBTSxlQUFlLE9BQU8sTUFBTSxFQUFFLFNBQVMsR0FBRyxHQUFHO0FBQ25ELFNBQU8sUUFBUSxZQUFZO0FBQzdCO0FBT08sZ0JBQVMsYUFBYSxRQUF3QjtBQUNuRCxNQUFJLFVBQVUsS0FBSztBQUNqQixVQUFNLGVBQWUsT0FBTyxNQUFNLEVBQUUsU0FBUyxHQUFHLEdBQUc7QUFDbkQsV0FBTyxPQUFPLFlBQVk7QUFBQSxFQUM1QixPQUFPO0FBQ0wsVUFBTSxZQUFZLFNBQVM7QUFDM0IsVUFBTSxlQUFlLE9BQU8sU0FBUyxFQUFFLFNBQVMsR0FBRyxHQUFHO0FBQ3RELFdBQU8sT0FBTyxZQUFZO0FBQUEsRUFDNUI7QUFDRjtBQU9PLGdCQUFTLGFBQWEsUUFBd0I7QUFDbkQsU0FBTyxTQUFTLElBQUksR0FBRyxNQUFNLE1BQU07QUFDckM7QUFPTyxnQkFBUyxXQUFXLE1BQTJCO0FBQ3BELE1BQUksQ0FBQyxLQUFNLFFBQU87QUFDbEIsU0FBT
35yxJQUFJLEtBQUssSUFBSSxFQUFFLG1CQUFtQjtBQUMzQztBQU9PLGdCQUFTLGVBQWUsVUFBK0I7QUFDNUQsTUFBSSxDQUFDLFNBQVUsUUFBTztBQUN0QixRQUFNLElBQUksSUFBSSxLQUFLLFFBQVE7QUFDM0IsU0FBTyxFQUFFLGVBQWUsU0FBUztBQUFBLElBQy9CLEtBQUs7QUFBQSxJQUNMLE9BQU87QUFBQSxJQUNQLE1BQU07QUFBQSxJQUNOLE1BQU07QUFBQSxJQUNOLFFBQVE7QUFBQSxFQUNWLENBQUM7QUFDSDsiLCJuYW1lcyI6W119
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.