UNPKG

ilib

Version:

iLib is a cross-engine library of internationalization (i18n) classes written in pure JS

1 lines 1.49 kB
var ilib=require("../index.js"),UnknownUnit=require("./UnknownUnit.js"),AreaUnit=require("./AreaUnit.js"),DigitalStorageUnit=require("./DigitalStorageUnit.js"),DigitalSpeedUnit=require("./DigitalSpeedUnit.js"),EnergyUnit=require("./EnergyUnit.js"),ForceUnit=require("./ForceUnit.js"),PowerUnit=require("./PowerUnit.js"),PressureUnit=require("./PressureUnit.js"),FuelConsumptionUnit=require("./FuelConsumptionUnit.js"),LengthUnit=require("./LengthUnit.js"),MassUnit=require("./MassUnit.js"),TemperatureUnit=require("./TemperatureUnit.js"),TimeUnit=require("./TimeUnit.js"),VelocityUnit=require("./VelocityUnit.js"),VolumeUnit=require("./VolumeUnit.js"),Measurement=require("./Measurement.js"),MeasurementFactory=function(options){if(options&&void 0!==options.unit){var measurement,c,measure=void 0;for(c in Measurement._constructors)if(measurement=Measurement._constructors[c],Measurement.getUnitId(measurement,options.unit)){measure=c;break}if(!measure)for(c in Measurement._constructors)if(measurement=Measurement._constructors[c],void 0!==Measurement.getUnitIdCaseInsensitive(measurement,options.unit)){measure=c;break}return measure&&void 0!==measure?new Measurement._constructors[measure](options):new UnknownUnit({unit:options.unit,amount:options.amount})}};MeasurementFactory.getAvailableUnits=function(){var c,units=[];for(c in Measurement._constructors)var measure=Measurement._constructors[c],units=units.concat(measure.getMeasures());return units},module.exports=MeasurementFactory;