Browse Source

formatUnits: simplify code

master
parent
commit
8e5543bfe4
  1. 23
      src/formatUnits.js

23
src/formatUnits.js

@ -1,12 +1,11 @@
const { measureFrom } = require('measure-ts')
const formatcoords = require('formatcoords')
const defaults = {
const settings = {
coordFormat: 'FFf',
coordSpacer: ', ',
system: 'si'
}
let settings = defaults
const distanceUnits = {
si: ['cm', 'm', 'km'],
@ -24,15 +23,15 @@ const areaUnits = {
module.exports = {
distance: value => {
const measure = measureFrom.apply(this, distanceUnits[global.options.formatUnitsSystem || defaults.system])
const measure = measureFrom.apply(this, distanceUnits[settings.system])
return measure(value).toString()
},
area: value => {
const measure = measureFrom.apply(this, areaUnits[global.options.formatUnitsSystem || defaults.system])
const measure = measureFrom.apply(this, areaUnits[settings.system])
return measure(value).toString()
},
coord: value => formatcoords(value).format(global.options.formatUnitsCoordFormat || defaults.coordFormat, {
latLonSeparator: global.options.formatUnitsCoordSpacer || defaults.coordSpacer
coord: value => formatcoords(value).format(settings.coordFormat, {
latLonSeparator: settings.coordSpacer
}),
settings
}
@ -47,7 +46,7 @@ register_hook('options_form', def => {
'nautical': lang('formatUnits:system:nautical'),
'm': lang('formatUnits:system:m'),
},
'default': defaults.system
'default': settings.system
}
def.formatUnitsCoordFormat = {
@ -60,7 +59,7 @@ register_hook('options_form', def => {
'f': 'DD.DDD° X',
'd': '±DD.DDD'
},
'default': defaults.coordFormat
'default': settings.coordFormat
}
def.formatUnitsCoordSpacer = {
@ -70,7 +69,7 @@ register_hook('options_form', def => {
' ': 'Space',
', ': 'Colon'
},
'default': defaults.coordSpacer
'default': settings.coordSpacer
}
})
@ -89,9 +88,9 @@ register_hook('options_save', data => {
register_hook('init', () => {
let old = JSON.stringify(settings)
settings.coordFormat = global.options.formatUnitsCoordFormat || defaults.coordFormat
settings.coordSpacer = global.options.formatUnitsCoordSpacer || defaults.coordSpacer
settings.system = global.options.formatUnitsSystem || defaults.system
settings.coordFormat = global.options.formatUnitsCoordFormat || settings.coordFormat
settings.coordSpacer = global.options.formatUnitsCoordSpacer || settings.coordSpacer
settings.system = global.options.formatUnitsSystem || settings.system
if (old !== JSON.stringify(settings)) {
call_hooks('format-units-refresh')

Loading…
Cancel
Save