flight-planner
Version:
Plan and route VFR flights
83 lines (82 loc) • 3.21 kB
JavaScript
import convert from "convert-units";
import { DefaultUnits } from "./index.js";
/**
* Converts speed from default units to the specified units.
*
* @param {number} speed - The speed value to convert.
* @param {UnitOptions} units - The target unit options.
* @returns {number} The converted speed.
*/
export const convertSpeed = (speed, units) => {
return convert(speed).from(DefaultUnits.speed).to(units.speed || DefaultUnits.speed);
};
/**
* Converts elevation from default units to the specified units.
*
* @param {number} elevation - The elevation value to convert.
* @param {UnitOptions} units - The target unit options.
* @returns {number} The converted elevation.
*/
export const convertElevation = (elevation, units) => {
return convert(elevation).from(DefaultUnits.elevation).to(units.elevation || DefaultUnits.elevation);
};
/**
* Converts altitude from default units to the specified units.
*
* @param {number} altitude - The altitude value to convert.
* @param {UnitOptions} units - The target unit options.
* @returns {number} The converted altitude.
*/
export const convertAltitude = (altitude, units) => {
return convert(altitude).from(DefaultUnits.altitude).to(units.altitude || DefaultUnits.altitude);
};
/**
* Converts temperature from default units to the specified units.
*
* @param {number} temperature - The temperature value to convert.
* @param {UnitOptions} units - The target unit options.
* @returns {number} The converted temperature.
*/
export const convertTemperature = (temperature, units) => {
return convert(temperature).from(DefaultUnits.temperature).to(units.temperature || DefaultUnits.temperature);
};
/**
* Converts pressure from default units to the specified units.
*
* @param {number} pressure - The pressure value to convert.
* @param {UnitOptions} units - The target unit options.
* @returns {number} The converted pressure.
*/
export const convertPressure = (pressure, units) => {
return convert(pressure).from(DefaultUnits.pressure).to(units.pressure || DefaultUnits.pressure);
};
/**
* Converts distance from default units to the specified units.
*
* @param {number} distance - The distance value to convert.
* @param {UnitOptions} units - The target unit options.
* @returns {number} The converted distance.
*/
export const convertDistance = (distance, units) => {
return convert(distance).from(DefaultUnits.distance).to(units.distance || DefaultUnits.distance);
};
/**
* Converts mass from default units to the specified units.
*
* @param {number} mass - The mass value to convert.
* @param {UnitOptions} units - The target unit options.
* @returns {number} The converted mass.
*/
export const convertMass = (mass, units) => {
return convert(mass).from(DefaultUnits.mass).to(units.mass || DefaultUnits.mass);
};
/**
* Converts volume from default units to the specified units.
*
* @param {number} volume - The volume value to convert.
* @param {UnitOptions} units - The target unit options.
* @returns {number} The converted volume.
*/
export const convertVolume = (volume, units) => {
return convert(volume).from(DefaultUnits.volume).to(units.volume || DefaultUnits.volume);
};