UNPKG

@doegis/core

Version:

DOE GIS API

3 lines (1 loc) 1.17 kB
import{createLength as e,toUnit as t}from"../../../core/quantityUtils.js";import{formatDecimal as u}from"../../../core/unitFormatUtils.js";import{formatNumber as r}from"../../../intl/number.js";function i(e,t){return r(e,{style:"unit",unit:t,unitDisplay:"short"})}function n(r,i,n){if(0===i)return"";let l,o,a=0;const s=e(i,"meters");switch(n){case"metric":s.value<.01?({value:l,unit:o}=t(s,"millimeters")):s.value<1?({value:l,unit:o}=t(s,"centimeters")):s.value<1e3?({value:l,unit:o}=t(s,"meters")):s.value<1e5?(({value:l,unit:o}=t(s,"kilometers")),a=1):({value:l,unit:o}=t(s,"kilometers"));break;case"imperial":s.value<.254?({value:l,unit:o}=t(s,"inches")):s.value<160.9344?({value:l,unit:o}=t(s,"feet")):s.value<160934.4?(({value:l,unit:o}=t(s,"miles")),a=1):({value:l,unit:o}=t(s,"miles"));break;default:({value:l,unit:o}=t(s,n)),a=2}return u(r,l,o,a)}function l(e){if(0===e)return"";if(e<1){return i(Math.floor(60*e),"second")}if(e<60){return i(Math.floor(e),"minute")}const t=Math.floor(e/60);if(e<1440){const u=Math.floor(e%60);return 0===u?`${i(t,"hour")}`:`${i(t,"hour")} ${i(u,"minute")}`}return i(t,"hour")}export{n as formatDistance,l as formatDuration};