UNPKG

ilib

Version:

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

1 lines 1.36 kB
var UnknownUnit=require("./UnknownUnit.js"),AreaUnit=require("./AreaUnit.js"),DigitalStorageUnit=require("./DigitalStorageUnit.js"),DigitalSpeedUnit=require("./DigitalSpeedUnit.js"),EnergyUnit=require("./EnergyUnit.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,measure=void 0;for(var c in Measurement._constructors)if(measurement=Measurement._constructors[c],Measurement.getUnitId(measurement,options.unit)){measure=c;break}if(!measure)for(var 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 units=[];for(var c in Measurement._constructors){var measure=Measurement._constructors[c];units=units.concat(measure.getMeasures())}return units},module.exports=MeasurementFactory;