UNPKG

covutils

Version:

Utilities for creating, transforming, and handling Coverage Data objects.

58 lines (55 loc) 1.29 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.stringifyUnit = stringifyUnit; var _i18n = require('./i18n.js'); /** * Converts a unit object to a human-readable symbol or label, where symbols are preferred. * * @example * var unit = { * symbol: '°C' * } * var str = CovUtils.stringifyUnit(unit) // str == '°C' * * @example * var unit = { * symbol: { * value: 'Cel', * type: 'http://www.opengis.net/def/uom/UCUM/' * }, * label: { * en: 'Degree Celsius' * } * } * var str = CovUtils.stringifyUnit(unit) // str == '°C' * * @example * var unit = { * label: { * en: 'Degree Celsius', * de: 'Grad Celsius' * } * } * var str = CovUtils.stringifyUnit(unit, 'en') // str == 'Degree Celsius' */ function stringifyUnit(unit, language) { if (!unit) { return ''; } if (unit.symbol) { var symbol = unit.symbol.value || unit.symbol; var scheme = unit.symbol.type; if (scheme === 'http://www.opengis.net/def/uom/UCUM/') { if (symbol === 'Cel') { symbol = '°C'; } else if (symbol === '1') { symbol = ''; } } return symbol; } else { return (0, _i18n.getLanguageString)(unit.label, language); } }