@ -14,12 +14,15 @@
/// limitations under the License.
///
import absorbedDoseRate , { AbsorbedDoseRateUnits } from '@shared/models/units/absorbed-dose-rate' ;
import acceleration , { AccelerationUnits } from '@shared/models/units/acceleration' ;
import acidity , { AcidityUnits } from '@shared/models/units/acidity' ;
import airQualityIndex , { AirQualityIndexUnits } from '@shared/models/units/air-quality-index' ;
import amountOfSubstance , { AmountOfSubstanceUnits } from '@shared/models/units/amount-of-substance' ;
import angle , { AngleUnits } from '@shared/models/units/angle' ;
import angularAcceleration , { AngularAccelerationUnits } from '@shared/models/units/angular-acceleration' ;
import area , { AreaUnits } from '@shared/models/units/area' ;
import areaDensity , { AreaDensityUnits } from '@shared/models/units/area-density' ;
import capacitance , { CapacitanceUnits } from '@shared/models/units/capacitance' ;
import catalyticActivity , { CatalyticActivityUnits } from '@shared/models/units/catalytic-activity' ;
import catalyticConcentration , { CatalyticConcentrationUnits } from '@shared/models/units/catalytic-concentration' ;
@ -31,14 +34,17 @@ import digital, { DigitalUnits } from '@shared/models/units/digital';
import dimensionRatio , { DimensionRatioUnits } from '@shared/models/units/dimension-ratio' ;
import dynamicViscosity , { DynamicViscosityUnits } from '@shared/models/units/dynamic-viscosity' ;
import earthquakeMagnitude , { EarthquakeMagnitudeUnits } from '@shared/models/units/earthquake-magnitude' ;
import electricChargeDensity , { ElectricChargeDensityUnits } from '@shared/models/units/electric-charge-density' ;
import electricCurrent , { ElectricCurrentUnits } from '@shared/models/units/electric-current' ;
import electricDipoleMoment , { ElectricDipoleMomentUnits } from '@shared/models/units/electric-dipole-moment' ;
import electricFieldStrength , { ElectricFieldStrengthUnits } from '@shared/models/units/electric-field-strength' ;
import electricFlux , { ElectricFluxUnits } from '@shared/models/units/electric-flux' ;
import electricPermittivity , { ElectricPermittivityUnits } from '@shared/models/units/electric-permittivity' ;
import electricPolarizability , { ElectricPolarizabilityUnits } from '@shared/models/units/electric-polarizability' ;
import electricalConductance , { ElectricalConductanceUnits } from '@shared/models/units/electrical-conductance' ;
import electricalConductivity , { ElectricalConductivityUnits } from '@shared/models/units/electrical-conductivity' ;
import energy , { EnergyUnits } from '@shared/models/units/energy' ;
import energyDensity , { EnergyDensityUnits } from '@shared/models/units/energy-density' ;
import force , { ForceUnits } from '@shared/models/units/force' ;
import fuelEfficiency , { FuelEfficiencyUnits } from '@shared/models/units/fuel-efficiency' ;
import frequency , { FrequencyUnits } from '@shared/models/units/frequency' ;
@ -64,26 +70,51 @@ import molarConcentration, { MolarConcentrationUnits } from '@shared/models/unit
import molarEnergy , { MolarEnergyUnits } from '@shared/models/units/molar-energy' ;
import molarHeatCapacity , { MolarHeatCapacityUnits } from '@shared/models/units/molar-heat-capacity' ;
import molarMass , { MolarMassUnits } from '@shared/models/units/molar-mass' ;
import partsPer , { PartsPerUnits } from '@shared/models/units/parts-per' ;
import numberConcentration , { NumberConcentrationUnits } from '@shared/models/units/number-concentration' ;
import partsPerMillion , { PartsPerMillionUnits } from '@shared/models/units/parts-per-million' ;
import power , { PowerUnits } from '@shared/models/units/power' ;
import powerDensity , { PowerDensityUnits } from '@shared/models/units/power-density' ;
import pressure , { PressureUnits } from '@shared/models/units/pressure' ;
import radiance , { RadianceUnits } from '@shared/models/units/radiance' ;
import radiantIntensity , { RadiantIntensityUnits } from '@shared/models/units/radiant-intensity' ;
import radiationDose , { RadiationDoseUnits } from '@shared/models/units/radiation-dose' ;
import radioactiveDecay , { RadioactiveDecayUnits } from '@shared/models/units/radioactive-decay' ;
import radioactivity , { RadioactivityUnits } from '@shared/models/units/radioactivity' ;
import radioactivityConcentration , {
RadioactivityConcentrationUnits
} from '@shared/models/units/radioactivity-concentration' ;
import resistance , { ResistanceUnits } from '@shared/models/units/resistance' ;
import reynoldsNumber , { ReynoldsNumberUnits } from '@shared/models/units/reynolds-number' ;
import signalLevel , { SignalLevelUnits } from '@shared/models/units/signal-level' ;
import solidAngle , { SolidAngleUnits } from '@shared/models/units/solid-angle' ;
import specificEnergy , { SpecificEnergyUnits } from '@shared/models/units/specific-energy' ;
import specificHeatCapacity , { SpecificHeatCapacityUnits } from '@shared/models/units/specific-heat-capacity' ;
import specificHumidity , { SpecificHumidityUnits } from '@shared/models/units/specific-humidity' ;
import specificVolume , { SpecificVolumeUnits } from '@shared/models/units/specific-volume' ;
import speed , { SpeedUnits } from '@shared/models/units/speed' ;
import surfaceChargeDensity , { SurfaceChargeDensityUnits } from '@shared/models/units/surface-charge-density' ;
import surfaceTension , { SurfaceTensionUnits } from '@shared/models/units/surface-tension' ;
import temperature , { TemperatureUnits } from '@shared/models/units/temperature' ;
import thermalConductivity , { ThermalConductivityUnits } from '@shared/models/units/thermal-conductivity' ;
import time , { TimeUnits } from '@shared/models/units/time' ;
import torque , { TorqueUnits } from '@shared/models/units/torque' ;
import turbidity , { TurbidityUnits } from '@shared/models/units/turbidity' ;
import voltage , { VoltageUnits } from '@shared/models/units/voltage' ;
import volume , { VolumeUnits } from '@shared/models/units/volume' ;
import volumeFlowRate , { VolumeFlowRateUnits } from '@shared/models/units/volume-flow-rate' ;
import volumeFlow , { VolumeFlowUnits } from '@shared/models/units/volume-flow' ;
import { TranslateService } from '@ngx-translate/core' ;
import reciprocalLength , { ReciprocalLengthUnits } from '@shared/models/units/reciprocal-length' ;
export type AllMeasuresUnits =
| AbsorbedDoseRateUnits
| AccelerationUnits
| AcidityUnits
| AirQualityIndexUnits
| AmountOfSubstanceUnits
| AngleUnits
| AngularAccelerationUnits
| AreaUnits
| AreaDensityUnits
| CapacitanceUnits
| CatalyticActivityUnits
| CatalyticConcentrationUnits
@ -95,14 +126,17 @@ export type AllMeasuresUnits =
| DimensionRatioUnits
| DynamicViscosityUnits
| EarthquakeMagnitudeUnits
| ElectricChargeDensityUnits
| ElectricCurrentUnits
| ElectricDipoleMomentUnits
| ElectricFieldStrengthUnits
| ElectricFluxUnits
| ElectricPermittivityUnits
| ElectricPolarizabilityUnits
| ElectricalConductanceUnits
| ElectricalConductivityUnits
| EnergyUnits
| EnergyDensityUnits
| ForceUnits
| FrequencyUnits
| FuelEfficiencyUnits
@ -128,20 +162,42 @@ export type AllMeasuresUnits =
| MolarEnergyUnits
| MolarHeatCapacityUnits
| MolarMassUnits
| PartsPerUnits
| NumberConcentrationUnits
| PartsPerMillionUnits
| PowerUnits
| PowerDensityUnits
| PressureUnits
| RadianceUnits
| RadiantIntensityUnits
| RadiationDoseUnits
| RadioactiveDecayUnits
| RadioactivityUnits
| RadioactivityConcentrationUnits
| ReciprocalLengthUnits
| ResistanceUnits
| ReynoldsNumberUnits
| SignalLevelUnits
| SolidAngleUnits
| SpecificEnergyUnits
| SpecificHeatCapacityUnits
| SpecificHumidityUnits
| SpecificVolumeUnits
| SpeedUnits
| SurfaceChargeDensityUnits
| SurfaceTensionUnits
| TemperatureUnits
| ThermalConductivityUnits
| TimeUnits
| TorqueUnits
| TurbidityUnits
| VoltageUnits
| VolumeUnits
| VolumeFlowRateUnits ;
| VolumeFlowUnits ;
export type AllMeasures =
| 'absorbed-dose-rate'
| 'acceleration'
| 'acidity'
| 'air-quality-index'
| 'amount-of-substance'
| 'angle'
@ -158,14 +214,17 @@ export type AllMeasures =
| 'dimension-ratio'
| 'dynamic-viscosity'
| 'earthquake-magnitude'
| 'electric-charge-density'
| 'electric-current'
| 'electric-dipole-moment'
| 'electric-field-strength'
| 'electric-flux'
| 'electric-permittivity'
| 'electric-polarizability'
| 'electrical-conductance'
| 'electrical-conductivity'
| 'energy'
| 'energy-density'
| 'force'
| 'frequency'
| 'fuel-efficiency'
@ -191,28 +250,51 @@ export type AllMeasures =
| 'molar-energy'
| 'molar-heat-capacity'
| 'molar-mass'
| 'parts-per'
| 'number-concentration'
| 'parts-per-million'
| 'power'
| 'power-density'
| 'pressure'
| 'radiance'
| 'radiant-intensity'
| 'radiation-dose'
| 'radioactive-decay'
| 'radioactivity'
| 'radioactivity-concentration'
| 'reciprocal-length'
| 'resistance'
| 'reynolds-number'
| 'signal-level'
| 'solid-angle'
| 'specific-energy'
| 'specific-heat-capacity'
| 'specific-humidity'
| 'specific-volume'
| 'surface-charge-density'
| 'surface-tension'
| 'speed'
| 'temperature'
| 'thermal-conductivity'
| 'time'
| 'torque'
| 'turbidity'
| 'voltage'
| 'volume'
| 'volume-flow-rate' ;
| 'volume-flow' ;
const allMeasures : Record <
AllMeasures ,
TbMeasure < AllMeasuresUnits >
> = Object . freeze ( {
'absorbed-dose-rate' : absorbedDoseRate ,
acceleration ,
acidity ,
'air-quality-index' : airQualityIndex ,
'amount-of-substance' : amountOfSubstance ,
angle ,
'angular-acceleration' : angularAcceleration ,
area ,
'area-density' : areaDensity ,
capacitance ,
'catalytic-activity' : catalyticActivity ,
'catalytic-concentration' : catalyticConcentration ,
@ -224,14 +306,17 @@ const allMeasures: Record<
'dimension-ratio' : dimensionRatio ,
'dynamic-viscosity' : dynamicViscosity ,
'earthquake-magnitude' : earthquakeMagnitude ,
'electric-charge-density' : electricChargeDensity ,
'electric-current' : electricCurrent ,
'electric-dipole-moment' : electricDipoleMoment ,
'electric-field-strength' : electricFieldStrength ,
'electric-flux' : electricFlux ,
'electric-permittivity' : electricPermittivity ,
'electric-polarizability' : electricPolarizability ,
'electrical-conductance' : electricalConductance ,
'electrical-conductivity' : electricalConductivity ,
energy ,
'energy-density' : energyDensity ,
force ,
frequency ,
'fuel-efficiency' : fuelEfficiency ,
@ -246,6 +331,7 @@ const allMeasures: Record<
'luminous-efficacy' : luminousEfficacy ,
'luminous-flux' : luminousFlux ,
'luminous-intensity' : luminousIntensity ,
'number-concentration' : numberConcentration ,
'magnetic-field-gradient' : magneticFieldGradient ,
'magnetic-flux' : magneticFlux ,
'magnetic-flux-density' : magneticFluxDensity ,
@ -257,17 +343,36 @@ const allMeasures: Record<
'molar-energy' : molarEnergy ,
'molar-heat-capacity' : molarHeatCapacity ,
'molar-mass' : molarMass ,
'parts-per' : partsPer ,
'parts-per-million ' : partsPerMillion ,
power ,
'power-density' : powerDensity ,
pressure ,
radiance ,
'radiant-intensity' : radiantIntensity ,
'radiation-dose' : radiationDose ,
'radioactive-decay' : radioactiveDecay ,
radioactivity ,
'radioactivity-concentration' : radioactivityConcentration ,
'reciprocal-length' : reciprocalLength ,
resistance ,
'reynolds-number' : reynoldsNumber ,
'signal-level' : signalLevel ,
'solid-angle' : solidAngle ,
'specific-energy' : specificEnergy ,
'specific-heat-capacity' : specificHeatCapacity ,
'specific-humidity' : specificHumidity ,
'specific-volume' : specificVolume ,
speed ,
'surface-charge-density' : surfaceChargeDensity ,
'surface-tension' : surfaceTension ,
temperature ,
'thermal-conductivity' : thermalConductivity ,
time ,
torque ,
turbidity ,
voltage ,
volume ,
'volume-flow-rate' : volumeFlowRate ,
'volume-flow' : volumeFlow ,
} ) ;
export enum UnitsType {