UNPKG

unitsnet-js

Version:

A better way to hold unit variables and easily convert to the destination unit

827 lines (826 loc) 42.4 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.DoseAreaProduct = exports.DoseAreaProductUnits = void 0; const base_unit_1 = require("../base-unit"); /** DoseAreaProductUnits enumeration */ var DoseAreaProductUnits; (function (DoseAreaProductUnits) { /** */ DoseAreaProductUnits["GraySquareMeters"] = "GraySquareMeter"; /** */ DoseAreaProductUnits["GraySquareDecimeters"] = "GraySquareDecimeter"; /** */ DoseAreaProductUnits["GraySquareCentimeters"] = "GraySquareCentimeter"; /** */ DoseAreaProductUnits["GraySquareMillimeters"] = "GraySquareMillimeter"; /** */ DoseAreaProductUnits["MicrograySquareMeters"] = "MicrograySquareMeter"; /** */ DoseAreaProductUnits["MilligraySquareMeters"] = "MilligraySquareMeter"; /** */ DoseAreaProductUnits["CentigraySquareMeters"] = "CentigraySquareMeter"; /** */ DoseAreaProductUnits["DecigraySquareMeters"] = "DecigraySquareMeter"; /** */ DoseAreaProductUnits["MicrograySquareDecimeters"] = "MicrograySquareDecimeter"; /** */ DoseAreaProductUnits["MilligraySquareDecimeters"] = "MilligraySquareDecimeter"; /** */ DoseAreaProductUnits["CentigraySquareDecimeters"] = "CentigraySquareDecimeter"; /** */ DoseAreaProductUnits["DecigraySquareDecimeters"] = "DecigraySquareDecimeter"; /** */ DoseAreaProductUnits["MicrograySquareCentimeters"] = "MicrograySquareCentimeter"; /** */ DoseAreaProductUnits["MilligraySquareCentimeters"] = "MilligraySquareCentimeter"; /** */ DoseAreaProductUnits["CentigraySquareCentimeters"] = "CentigraySquareCentimeter"; /** */ DoseAreaProductUnits["DecigraySquareCentimeters"] = "DecigraySquareCentimeter"; /** */ DoseAreaProductUnits["MicrograySquareMillimeters"] = "MicrograySquareMillimeter"; /** */ DoseAreaProductUnits["MilligraySquareMillimeters"] = "MilligraySquareMillimeter"; /** */ DoseAreaProductUnits["CentigraySquareMillimeters"] = "CentigraySquareMillimeter"; /** */ DoseAreaProductUnits["DecigraySquareMillimeters"] = "DecigraySquareMillimeter"; })(DoseAreaProductUnits = exports.DoseAreaProductUnits || (exports.DoseAreaProductUnits = {})); /** It is defined as the absorbed dose multiplied by the area irradiated. */ class DoseAreaProduct extends base_unit_1.BaseUnit { /** * Create a new DoseAreaProduct. * @param value The value. * @param fromUnit The ‘DoseAreaProduct’ unit to create from. * The default unit is GraySquareMeters */ constructor(value, fromUnit = DoseAreaProductUnits.GraySquareMeters) { super(); this.graysquaremetersLazy = null; this.graysquaredecimetersLazy = null; this.graysquarecentimetersLazy = null; this.graysquaremillimetersLazy = null; this.micrograysquaremetersLazy = null; this.milligraysquaremetersLazy = null; this.centigraysquaremetersLazy = null; this.decigraysquaremetersLazy = null; this.micrograysquaredecimetersLazy = null; this.milligraysquaredecimetersLazy = null; this.centigraysquaredecimetersLazy = null; this.decigraysquaredecimetersLazy = null; this.micrograysquarecentimetersLazy = null; this.milligraysquarecentimetersLazy = null; this.centigraysquarecentimetersLazy = null; this.decigraysquarecentimetersLazy = null; this.micrograysquaremillimetersLazy = null; this.milligraysquaremillimetersLazy = null; this.centigraysquaremillimetersLazy = null; this.decigraysquaremillimetersLazy = null; if (value === undefined || value === null || Number.isNaN(value)) { throw new TypeError('invalid unit value ‘' + value + '’'); } this.value = this.convertToBase(value, fromUnit); } /** * The base value of DoseAreaProduct is GraySquareMeters. * This accessor used when needs a value for calculations and it's better to use directly the base value */ get BaseValue() { return this.value; } /** Gets the default unit used when creating instances of the unit or its DTO */ get baseUnit() { return DoseAreaProductUnits.GraySquareMeters; } /** */ get GraySquareMeters() { if (this.graysquaremetersLazy !== null) { return this.graysquaremetersLazy; } return this.graysquaremetersLazy = this.convertFromBase(DoseAreaProductUnits.GraySquareMeters); } /** */ get GraySquareDecimeters() { if (this.graysquaredecimetersLazy !== null) { return this.graysquaredecimetersLazy; } return this.graysquaredecimetersLazy = this.convertFromBase(DoseAreaProductUnits.GraySquareDecimeters); } /** */ get GraySquareCentimeters() { if (this.graysquarecentimetersLazy !== null) { return this.graysquarecentimetersLazy; } return this.graysquarecentimetersLazy = this.convertFromBase(DoseAreaProductUnits.GraySquareCentimeters); } /** */ get GraySquareMillimeters() { if (this.graysquaremillimetersLazy !== null) { return this.graysquaremillimetersLazy; } return this.graysquaremillimetersLazy = this.convertFromBase(DoseAreaProductUnits.GraySquareMillimeters); } /** */ get MicrograySquareMeters() { if (this.micrograysquaremetersLazy !== null) { return this.micrograysquaremetersLazy; } return this.micrograysquaremetersLazy = this.convertFromBase(DoseAreaProductUnits.MicrograySquareMeters); } /** */ get MilligraySquareMeters() { if (this.milligraysquaremetersLazy !== null) { return this.milligraysquaremetersLazy; } return this.milligraysquaremetersLazy = this.convertFromBase(DoseAreaProductUnits.MilligraySquareMeters); } /** */ get CentigraySquareMeters() { if (this.centigraysquaremetersLazy !== null) { return this.centigraysquaremetersLazy; } return this.centigraysquaremetersLazy = this.convertFromBase(DoseAreaProductUnits.CentigraySquareMeters); } /** */ get DecigraySquareMeters() { if (this.decigraysquaremetersLazy !== null) { return this.decigraysquaremetersLazy; } return this.decigraysquaremetersLazy = this.convertFromBase(DoseAreaProductUnits.DecigraySquareMeters); } /** */ get MicrograySquareDecimeters() { if (this.micrograysquaredecimetersLazy !== null) { return this.micrograysquaredecimetersLazy; } return this.micrograysquaredecimetersLazy = this.convertFromBase(DoseAreaProductUnits.MicrograySquareDecimeters); } /** */ get MilligraySquareDecimeters() { if (this.milligraysquaredecimetersLazy !== null) { return this.milligraysquaredecimetersLazy; } return this.milligraysquaredecimetersLazy = this.convertFromBase(DoseAreaProductUnits.MilligraySquareDecimeters); } /** */ get CentigraySquareDecimeters() { if (this.centigraysquaredecimetersLazy !== null) { return this.centigraysquaredecimetersLazy; } return this.centigraysquaredecimetersLazy = this.convertFromBase(DoseAreaProductUnits.CentigraySquareDecimeters); } /** */ get DecigraySquareDecimeters() { if (this.decigraysquaredecimetersLazy !== null) { return this.decigraysquaredecimetersLazy; } return this.decigraysquaredecimetersLazy = this.convertFromBase(DoseAreaProductUnits.DecigraySquareDecimeters); } /** */ get MicrograySquareCentimeters() { if (this.micrograysquarecentimetersLazy !== null) { return this.micrograysquarecentimetersLazy; } return this.micrograysquarecentimetersLazy = this.convertFromBase(DoseAreaProductUnits.MicrograySquareCentimeters); } /** */ get MilligraySquareCentimeters() { if (this.milligraysquarecentimetersLazy !== null) { return this.milligraysquarecentimetersLazy; } return this.milligraysquarecentimetersLazy = this.convertFromBase(DoseAreaProductUnits.MilligraySquareCentimeters); } /** */ get CentigraySquareCentimeters() { if (this.centigraysquarecentimetersLazy !== null) { return this.centigraysquarecentimetersLazy; } return this.centigraysquarecentimetersLazy = this.convertFromBase(DoseAreaProductUnits.CentigraySquareCentimeters); } /** */ get DecigraySquareCentimeters() { if (this.decigraysquarecentimetersLazy !== null) { return this.decigraysquarecentimetersLazy; } return this.decigraysquarecentimetersLazy = this.convertFromBase(DoseAreaProductUnits.DecigraySquareCentimeters); } /** */ get MicrograySquareMillimeters() { if (this.micrograysquaremillimetersLazy !== null) { return this.micrograysquaremillimetersLazy; } return this.micrograysquaremillimetersLazy = this.convertFromBase(DoseAreaProductUnits.MicrograySquareMillimeters); } /** */ get MilligraySquareMillimeters() { if (this.milligraysquaremillimetersLazy !== null) { return this.milligraysquaremillimetersLazy; } return this.milligraysquaremillimetersLazy = this.convertFromBase(DoseAreaProductUnits.MilligraySquareMillimeters); } /** */ get CentigraySquareMillimeters() { if (this.centigraysquaremillimetersLazy !== null) { return this.centigraysquaremillimetersLazy; } return this.centigraysquaremillimetersLazy = this.convertFromBase(DoseAreaProductUnits.CentigraySquareMillimeters); } /** */ get DecigraySquareMillimeters() { if (this.decigraysquaremillimetersLazy !== null) { return this.decigraysquaremillimetersLazy; } return this.decigraysquaremillimetersLazy = this.convertFromBase(DoseAreaProductUnits.DecigraySquareMillimeters); } /** * Create a new DoseAreaProduct instance from a GraySquareMeters * * @param value The unit as GraySquareMeters to create a new DoseAreaProduct from. * @returns The new DoseAreaProduct instance. */ static FromGraySquareMeters(value) { return new DoseAreaProduct(value, DoseAreaProductUnits.GraySquareMeters); } /** * Create a new DoseAreaProduct instance from a GraySquareDecimeters * * @param value The unit as GraySquareDecimeters to create a new DoseAreaProduct from. * @returns The new DoseAreaProduct instance. */ static FromGraySquareDecimeters(value) { return new DoseAreaProduct(value, DoseAreaProductUnits.GraySquareDecimeters); } /** * Create a new DoseAreaProduct instance from a GraySquareCentimeters * * @param value The unit as GraySquareCentimeters to create a new DoseAreaProduct from. * @returns The new DoseAreaProduct instance. */ static FromGraySquareCentimeters(value) { return new DoseAreaProduct(value, DoseAreaProductUnits.GraySquareCentimeters); } /** * Create a new DoseAreaProduct instance from a GraySquareMillimeters * * @param value The unit as GraySquareMillimeters to create a new DoseAreaProduct from. * @returns The new DoseAreaProduct instance. */ static FromGraySquareMillimeters(value) { return new DoseAreaProduct(value, DoseAreaProductUnits.GraySquareMillimeters); } /** * Create a new DoseAreaProduct instance from a MicrograySquareMeters * * @param value The unit as MicrograySquareMeters to create a new DoseAreaProduct from. * @returns The new DoseAreaProduct instance. */ static FromMicrograySquareMeters(value) { return new DoseAreaProduct(value, DoseAreaProductUnits.MicrograySquareMeters); } /** * Create a new DoseAreaProduct instance from a MilligraySquareMeters * * @param value The unit as MilligraySquareMeters to create a new DoseAreaProduct from. * @returns The new DoseAreaProduct instance. */ static FromMilligraySquareMeters(value) { return new DoseAreaProduct(value, DoseAreaProductUnits.MilligraySquareMeters); } /** * Create a new DoseAreaProduct instance from a CentigraySquareMeters * * @param value The unit as CentigraySquareMeters to create a new DoseAreaProduct from. * @returns The new DoseAreaProduct instance. */ static FromCentigraySquareMeters(value) { return new DoseAreaProduct(value, DoseAreaProductUnits.CentigraySquareMeters); } /** * Create a new DoseAreaProduct instance from a DecigraySquareMeters * * @param value The unit as DecigraySquareMeters to create a new DoseAreaProduct from. * @returns The new DoseAreaProduct instance. */ static FromDecigraySquareMeters(value) { return new DoseAreaProduct(value, DoseAreaProductUnits.DecigraySquareMeters); } /** * Create a new DoseAreaProduct instance from a MicrograySquareDecimeters * * @param value The unit as MicrograySquareDecimeters to create a new DoseAreaProduct from. * @returns The new DoseAreaProduct instance. */ static FromMicrograySquareDecimeters(value) { return new DoseAreaProduct(value, DoseAreaProductUnits.MicrograySquareDecimeters); } /** * Create a new DoseAreaProduct instance from a MilligraySquareDecimeters * * @param value The unit as MilligraySquareDecimeters to create a new DoseAreaProduct from. * @returns The new DoseAreaProduct instance. */ static FromMilligraySquareDecimeters(value) { return new DoseAreaProduct(value, DoseAreaProductUnits.MilligraySquareDecimeters); } /** * Create a new DoseAreaProduct instance from a CentigraySquareDecimeters * * @param value The unit as CentigraySquareDecimeters to create a new DoseAreaProduct from. * @returns The new DoseAreaProduct instance. */ static FromCentigraySquareDecimeters(value) { return new DoseAreaProduct(value, DoseAreaProductUnits.CentigraySquareDecimeters); } /** * Create a new DoseAreaProduct instance from a DecigraySquareDecimeters * * @param value The unit as DecigraySquareDecimeters to create a new DoseAreaProduct from. * @returns The new DoseAreaProduct instance. */ static FromDecigraySquareDecimeters(value) { return new DoseAreaProduct(value, DoseAreaProductUnits.DecigraySquareDecimeters); } /** * Create a new DoseAreaProduct instance from a MicrograySquareCentimeters * * @param value The unit as MicrograySquareCentimeters to create a new DoseAreaProduct from. * @returns The new DoseAreaProduct instance. */ static FromMicrograySquareCentimeters(value) { return new DoseAreaProduct(value, DoseAreaProductUnits.MicrograySquareCentimeters); } /** * Create a new DoseAreaProduct instance from a MilligraySquareCentimeters * * @param value The unit as MilligraySquareCentimeters to create a new DoseAreaProduct from. * @returns The new DoseAreaProduct instance. */ static FromMilligraySquareCentimeters(value) { return new DoseAreaProduct(value, DoseAreaProductUnits.MilligraySquareCentimeters); } /** * Create a new DoseAreaProduct instance from a CentigraySquareCentimeters * * @param value The unit as CentigraySquareCentimeters to create a new DoseAreaProduct from. * @returns The new DoseAreaProduct instance. */ static FromCentigraySquareCentimeters(value) { return new DoseAreaProduct(value, DoseAreaProductUnits.CentigraySquareCentimeters); } /** * Create a new DoseAreaProduct instance from a DecigraySquareCentimeters * * @param value The unit as DecigraySquareCentimeters to create a new DoseAreaProduct from. * @returns The new DoseAreaProduct instance. */ static FromDecigraySquareCentimeters(value) { return new DoseAreaProduct(value, DoseAreaProductUnits.DecigraySquareCentimeters); } /** * Create a new DoseAreaProduct instance from a MicrograySquareMillimeters * * @param value The unit as MicrograySquareMillimeters to create a new DoseAreaProduct from. * @returns The new DoseAreaProduct instance. */ static FromMicrograySquareMillimeters(value) { return new DoseAreaProduct(value, DoseAreaProductUnits.MicrograySquareMillimeters); } /** * Create a new DoseAreaProduct instance from a MilligraySquareMillimeters * * @param value The unit as MilligraySquareMillimeters to create a new DoseAreaProduct from. * @returns The new DoseAreaProduct instance. */ static FromMilligraySquareMillimeters(value) { return new DoseAreaProduct(value, DoseAreaProductUnits.MilligraySquareMillimeters); } /** * Create a new DoseAreaProduct instance from a CentigraySquareMillimeters * * @param value The unit as CentigraySquareMillimeters to create a new DoseAreaProduct from. * @returns The new DoseAreaProduct instance. */ static FromCentigraySquareMillimeters(value) { return new DoseAreaProduct(value, DoseAreaProductUnits.CentigraySquareMillimeters); } /** * Create a new DoseAreaProduct instance from a DecigraySquareMillimeters * * @param value The unit as DecigraySquareMillimeters to create a new DoseAreaProduct from. * @returns The new DoseAreaProduct instance. */ static FromDecigraySquareMillimeters(value) { return new DoseAreaProduct(value, DoseAreaProductUnits.DecigraySquareMillimeters); } /** * Gets the base unit enumeration associated with DoseAreaProduct * @returns The unit enumeration that can be used to interact with this type */ static getUnitEnum() { return DoseAreaProductUnits; } /** * Gets the default unit used when creating instances of the unit or its DTO * @returns The unit enumeration value used as a default parameter in constructor and DTO methods */ static getBaseUnit() { return DoseAreaProductUnits.GraySquareMeters; } /** * Create API DTO represent a DoseAreaProduct unit. * @param holdInUnit The specific DoseAreaProduct unit to be used in the unit representation at the DTO */ toDto(holdInUnit = DoseAreaProductUnits.GraySquareMeters) { return { value: this.convert(holdInUnit), unit: holdInUnit }; } /** * Create a DoseAreaProduct unit from an API DTO representation. * @param dtoDoseAreaProduct The DoseAreaProduct API DTO representation */ static FromDto(dtoDoseAreaProduct) { return new DoseAreaProduct(dtoDoseAreaProduct.value, dtoDoseAreaProduct.unit); } /** * Convert DoseAreaProduct to a specific unit value. * @param toUnit The specific unit to convert to * @returns The value of the specific unit provided. */ convert(toUnit) { switch (toUnit) { case DoseAreaProductUnits.GraySquareMeters: return this.GraySquareMeters; case DoseAreaProductUnits.GraySquareDecimeters: return this.GraySquareDecimeters; case DoseAreaProductUnits.GraySquareCentimeters: return this.GraySquareCentimeters; case DoseAreaProductUnits.GraySquareMillimeters: return this.GraySquareMillimeters; case DoseAreaProductUnits.MicrograySquareMeters: return this.MicrograySquareMeters; case DoseAreaProductUnits.MilligraySquareMeters: return this.MilligraySquareMeters; case DoseAreaProductUnits.CentigraySquareMeters: return this.CentigraySquareMeters; case DoseAreaProductUnits.DecigraySquareMeters: return this.DecigraySquareMeters; case DoseAreaProductUnits.MicrograySquareDecimeters: return this.MicrograySquareDecimeters; case DoseAreaProductUnits.MilligraySquareDecimeters: return this.MilligraySquareDecimeters; case DoseAreaProductUnits.CentigraySquareDecimeters: return this.CentigraySquareDecimeters; case DoseAreaProductUnits.DecigraySquareDecimeters: return this.DecigraySquareDecimeters; case DoseAreaProductUnits.MicrograySquareCentimeters: return this.MicrograySquareCentimeters; case DoseAreaProductUnits.MilligraySquareCentimeters: return this.MilligraySquareCentimeters; case DoseAreaProductUnits.CentigraySquareCentimeters: return this.CentigraySquareCentimeters; case DoseAreaProductUnits.DecigraySquareCentimeters: return this.DecigraySquareCentimeters; case DoseAreaProductUnits.MicrograySquareMillimeters: return this.MicrograySquareMillimeters; case DoseAreaProductUnits.MilligraySquareMillimeters: return this.MilligraySquareMillimeters; case DoseAreaProductUnits.CentigraySquareMillimeters: return this.CentigraySquareMillimeters; case DoseAreaProductUnits.DecigraySquareMillimeters: return this.DecigraySquareMillimeters; default: break; } return Number.NaN; } convertFromBase(toUnit) { if (base_unit_1.areAnyOperatorsOverridden()) switch (toUnit) { case DoseAreaProductUnits.GraySquareMeters: return this.value; case DoseAreaProductUnits.GraySquareDecimeters: return super.internalMultiply(this.value, 100); case DoseAreaProductUnits.GraySquareCentimeters: return super.internalMultiply(this.value, 10000); case DoseAreaProductUnits.GraySquareMillimeters: return super.internalMultiply(this.value, 1000000); case DoseAreaProductUnits.MicrograySquareMeters: return super.internalDivide(this.value, 0.000001); case DoseAreaProductUnits.MilligraySquareMeters: return super.internalDivide(this.value, 0.001); case DoseAreaProductUnits.CentigraySquareMeters: return super.internalDivide(this.value, 0.01); case DoseAreaProductUnits.DecigraySquareMeters: return super.internalDivide(this.value, 0.1); case DoseAreaProductUnits.MicrograySquareDecimeters: { const v3 = super.internalMultiply(this.value, 100); return super.internalDivide(v3, 0.000001); } case DoseAreaProductUnits.MilligraySquareDecimeters: { const v3 = super.internalMultiply(this.value, 100); return super.internalDivide(v3, 0.001); } case DoseAreaProductUnits.CentigraySquareDecimeters: { const v3 = super.internalMultiply(this.value, 100); return super.internalDivide(v3, 0.01); } case DoseAreaProductUnits.DecigraySquareDecimeters: { const v3 = super.internalMultiply(this.value, 100); return super.internalDivide(v3, 0.1); } case DoseAreaProductUnits.MicrograySquareCentimeters: { const v3 = super.internalMultiply(this.value, 10000); return super.internalDivide(v3, 0.000001); } case DoseAreaProductUnits.MilligraySquareCentimeters: { const v3 = super.internalMultiply(this.value, 10000); return super.internalDivide(v3, 0.001); } case DoseAreaProductUnits.CentigraySquareCentimeters: { const v3 = super.internalMultiply(this.value, 10000); return super.internalDivide(v3, 0.01); } case DoseAreaProductUnits.DecigraySquareCentimeters: { const v3 = super.internalMultiply(this.value, 10000); return super.internalDivide(v3, 0.1); } case DoseAreaProductUnits.MicrograySquareMillimeters: { const v3 = super.internalMultiply(this.value, 1000000); return super.internalDivide(v3, 0.000001); } case DoseAreaProductUnits.MilligraySquareMillimeters: { const v3 = super.internalMultiply(this.value, 1000000); return super.internalDivide(v3, 0.001); } case DoseAreaProductUnits.CentigraySquareMillimeters: { const v3 = super.internalMultiply(this.value, 1000000); return super.internalDivide(v3, 0.01); } case DoseAreaProductUnits.DecigraySquareMillimeters: { const v3 = super.internalMultiply(this.value, 1000000); return super.internalDivide(v3, 0.1); } default: return Number.NaN; } switch (toUnit) { case DoseAreaProductUnits.GraySquareMeters: return this.value; case DoseAreaProductUnits.GraySquareDecimeters: return this.value * 100; case DoseAreaProductUnits.GraySquareCentimeters: return this.value * 10000; case DoseAreaProductUnits.GraySquareMillimeters: return this.value * 1000000; case DoseAreaProductUnits.MicrograySquareMeters: return (this.value) / 0.000001; case DoseAreaProductUnits.MilligraySquareMeters: return (this.value) / 0.001; case DoseAreaProductUnits.CentigraySquareMeters: return (this.value) / 0.01; case DoseAreaProductUnits.DecigraySquareMeters: return (this.value) / 0.1; case DoseAreaProductUnits.MicrograySquareDecimeters: return (this.value * 100) / 0.000001; case DoseAreaProductUnits.MilligraySquareDecimeters: return (this.value * 100) / 0.001; case DoseAreaProductUnits.CentigraySquareDecimeters: return (this.value * 100) / 0.01; case DoseAreaProductUnits.DecigraySquareDecimeters: return (this.value * 100) / 0.1; case DoseAreaProductUnits.MicrograySquareCentimeters: return (this.value * 10000) / 0.000001; case DoseAreaProductUnits.MilligraySquareCentimeters: return (this.value * 10000) / 0.001; case DoseAreaProductUnits.CentigraySquareCentimeters: return (this.value * 10000) / 0.01; case DoseAreaProductUnits.DecigraySquareCentimeters: return (this.value * 10000) / 0.1; case DoseAreaProductUnits.MicrograySquareMillimeters: return (this.value * 1000000) / 0.000001; case DoseAreaProductUnits.MilligraySquareMillimeters: return (this.value * 1000000) / 0.001; case DoseAreaProductUnits.CentigraySquareMillimeters: return (this.value * 1000000) / 0.01; case DoseAreaProductUnits.DecigraySquareMillimeters: return (this.value * 1000000) / 0.1; default: return Number.NaN; } } convertToBase(value, fromUnit) { if (base_unit_1.areAnyOperatorsOverridden()) switch (fromUnit) { case DoseAreaProductUnits.GraySquareMeters: return value; case DoseAreaProductUnits.GraySquareDecimeters: return super.internalDivide(value, 100); case DoseAreaProductUnits.GraySquareCentimeters: return super.internalDivide(value, 10000); case DoseAreaProductUnits.GraySquareMillimeters: return super.internalDivide(value, 1000000); case DoseAreaProductUnits.MicrograySquareMeters: return super.internalMultiply(value, 0.000001); case DoseAreaProductUnits.MilligraySquareMeters: return super.internalMultiply(value, 0.001); case DoseAreaProductUnits.CentigraySquareMeters: return super.internalMultiply(value, 0.01); case DoseAreaProductUnits.DecigraySquareMeters: return super.internalMultiply(value, 0.1); case DoseAreaProductUnits.MicrograySquareDecimeters: { const v3 = super.internalDivide(value, 100); return super.internalMultiply(v3, 0.000001); } case DoseAreaProductUnits.MilligraySquareDecimeters: { const v3 = super.internalDivide(value, 100); return super.internalMultiply(v3, 0.001); } case DoseAreaProductUnits.CentigraySquareDecimeters: { const v3 = super.internalDivide(value, 100); return super.internalMultiply(v3, 0.01); } case DoseAreaProductUnits.DecigraySquareDecimeters: { const v3 = super.internalDivide(value, 100); return super.internalMultiply(v3, 0.1); } case DoseAreaProductUnits.MicrograySquareCentimeters: { const v3 = super.internalDivide(value, 10000); return super.internalMultiply(v3, 0.000001); } case DoseAreaProductUnits.MilligraySquareCentimeters: { const v3 = super.internalDivide(value, 10000); return super.internalMultiply(v3, 0.001); } case DoseAreaProductUnits.CentigraySquareCentimeters: { const v3 = super.internalDivide(value, 10000); return super.internalMultiply(v3, 0.01); } case DoseAreaProductUnits.DecigraySquareCentimeters: { const v3 = super.internalDivide(value, 10000); return super.internalMultiply(v3, 0.1); } case DoseAreaProductUnits.MicrograySquareMillimeters: { const v3 = super.internalDivide(value, 1000000); return super.internalMultiply(v3, 0.000001); } case DoseAreaProductUnits.MilligraySquareMillimeters: { const v3 = super.internalDivide(value, 1000000); return super.internalMultiply(v3, 0.001); } case DoseAreaProductUnits.CentigraySquareMillimeters: { const v3 = super.internalDivide(value, 1000000); return super.internalMultiply(v3, 0.01); } case DoseAreaProductUnits.DecigraySquareMillimeters: { const v3 = super.internalDivide(value, 1000000); return super.internalMultiply(v3, 0.1); } default: return Number.NaN; } switch (fromUnit) { case DoseAreaProductUnits.GraySquareMeters: return value; case DoseAreaProductUnits.GraySquareDecimeters: return value / 100; case DoseAreaProductUnits.GraySquareCentimeters: return value / 10000; case DoseAreaProductUnits.GraySquareMillimeters: return value / 1000000; case DoseAreaProductUnits.MicrograySquareMeters: return (value) * 0.000001; case DoseAreaProductUnits.MilligraySquareMeters: return (value) * 0.001; case DoseAreaProductUnits.CentigraySquareMeters: return (value) * 0.01; case DoseAreaProductUnits.DecigraySquareMeters: return (value) * 0.1; case DoseAreaProductUnits.MicrograySquareDecimeters: return (value / 100) * 0.000001; case DoseAreaProductUnits.MilligraySquareDecimeters: return (value / 100) * 0.001; case DoseAreaProductUnits.CentigraySquareDecimeters: return (value / 100) * 0.01; case DoseAreaProductUnits.DecigraySquareDecimeters: return (value / 100) * 0.1; case DoseAreaProductUnits.MicrograySquareCentimeters: return (value / 10000) * 0.000001; case DoseAreaProductUnits.MilligraySquareCentimeters: return (value / 10000) * 0.001; case DoseAreaProductUnits.CentigraySquareCentimeters: return (value / 10000) * 0.01; case DoseAreaProductUnits.DecigraySquareCentimeters: return (value / 10000) * 0.1; case DoseAreaProductUnits.MicrograySquareMillimeters: return (value / 1000000) * 0.000001; case DoseAreaProductUnits.MilligraySquareMillimeters: return (value / 1000000) * 0.001; case DoseAreaProductUnits.CentigraySquareMillimeters: return (value / 1000000) * 0.01; case DoseAreaProductUnits.DecigraySquareMillimeters: return (value / 1000000) * 0.1; default: return Number.NaN; } } /** * Format the DoseAreaProduct to string. * Note! the default format for DoseAreaProduct is GraySquareMeters. * To specify the unit format set the 'unit' parameter. * @param unit The unit to format the DoseAreaProduct. * @param options The ToString options, it also can be the number of fractional digits to keep that deprecated and moved to the options object. support in number will be dropped in the upcoming versions. * @returns The string format of the DoseAreaProduct. */ toString(unit = DoseAreaProductUnits.GraySquareMeters, options) { if (typeof options === 'number') { console.warn('The number parameter is deprecated and moved to the options object. support in number will be dropped in the upcoming versions.'); options = { fractionalDigits: options }; } switch (unit) { case DoseAreaProductUnits.GraySquareMeters: return super.truncateFractionDigits(this.GraySquareMeters, options) + ` Gy·m²`; case DoseAreaProductUnits.GraySquareDecimeters: return super.truncateFractionDigits(this.GraySquareDecimeters, options) + ` Gy·dm²`; case DoseAreaProductUnits.GraySquareCentimeters: return super.truncateFractionDigits(this.GraySquareCentimeters, options) + ` Gy·cm²`; case DoseAreaProductUnits.GraySquareMillimeters: return super.truncateFractionDigits(this.GraySquareMillimeters, options) + ` Gy·mm²`; case DoseAreaProductUnits.MicrograySquareMeters: return super.truncateFractionDigits(this.MicrograySquareMeters, options) + ` μGy·m²`; case DoseAreaProductUnits.MilligraySquareMeters: return super.truncateFractionDigits(this.MilligraySquareMeters, options) + ` mGy·m²`; case DoseAreaProductUnits.CentigraySquareMeters: return super.truncateFractionDigits(this.CentigraySquareMeters, options) + ` cGy·m²`; case DoseAreaProductUnits.DecigraySquareMeters: return super.truncateFractionDigits(this.DecigraySquareMeters, options) + ` dGy·m²`; case DoseAreaProductUnits.MicrograySquareDecimeters: return super.truncateFractionDigits(this.MicrograySquareDecimeters, options) + ` μGy·dm²`; case DoseAreaProductUnits.MilligraySquareDecimeters: return super.truncateFractionDigits(this.MilligraySquareDecimeters, options) + ` mGy·dm²`; case DoseAreaProductUnits.CentigraySquareDecimeters: return super.truncateFractionDigits(this.CentigraySquareDecimeters, options) + ` cGy·dm²`; case DoseAreaProductUnits.DecigraySquareDecimeters: return super.truncateFractionDigits(this.DecigraySquareDecimeters, options) + ` dGy·dm²`; case DoseAreaProductUnits.MicrograySquareCentimeters: return super.truncateFractionDigits(this.MicrograySquareCentimeters, options) + ` μGy·cm²`; case DoseAreaProductUnits.MilligraySquareCentimeters: return super.truncateFractionDigits(this.MilligraySquareCentimeters, options) + ` mGy·cm²`; case DoseAreaProductUnits.CentigraySquareCentimeters: return super.truncateFractionDigits(this.CentigraySquareCentimeters, options) + ` cGy·cm²`; case DoseAreaProductUnits.DecigraySquareCentimeters: return super.truncateFractionDigits(this.DecigraySquareCentimeters, options) + ` dGy·cm²`; case DoseAreaProductUnits.MicrograySquareMillimeters: return super.truncateFractionDigits(this.MicrograySquareMillimeters, options) + ` μGy·mm²`; case DoseAreaProductUnits.MilligraySquareMillimeters: return super.truncateFractionDigits(this.MilligraySquareMillimeters, options) + ` mGy·mm²`; case DoseAreaProductUnits.CentigraySquareMillimeters: return super.truncateFractionDigits(this.CentigraySquareMillimeters, options) + ` cGy·mm²`; case DoseAreaProductUnits.DecigraySquareMillimeters: return super.truncateFractionDigits(this.DecigraySquareMillimeters, options) + ` dGy·mm²`; default: break; } return this.value.toString(); } /** * Get DoseAreaProduct unit abbreviation. * Note! the default abbreviation for DoseAreaProduct is GraySquareMeters. * To specify the unit abbreviation set the 'unitAbbreviation' parameter. * @param unitAbbreviation The unit abbreviation of the DoseAreaProduct. * @returns The abbreviation string of DoseAreaProduct. */ getUnitAbbreviation(unitAbbreviation = DoseAreaProductUnits.GraySquareMeters) { switch (unitAbbreviation) { case DoseAreaProductUnits.GraySquareMeters: return `Gy·m²`; case DoseAreaProductUnits.GraySquareDecimeters: return `Gy·dm²`; case DoseAreaProductUnits.GraySquareCentimeters: return `Gy·cm²`; case DoseAreaProductUnits.GraySquareMillimeters: return `Gy·mm²`; case DoseAreaProductUnits.MicrograySquareMeters: return `μGy·m²`; case DoseAreaProductUnits.MilligraySquareMeters: return `mGy·m²`; case DoseAreaProductUnits.CentigraySquareMeters: return `cGy·m²`; case DoseAreaProductUnits.DecigraySquareMeters: return `dGy·m²`; case DoseAreaProductUnits.MicrograySquareDecimeters: return `μGy·dm²`; case DoseAreaProductUnits.MilligraySquareDecimeters: return `mGy·dm²`; case DoseAreaProductUnits.CentigraySquareDecimeters: return `cGy·dm²`; case DoseAreaProductUnits.DecigraySquareDecimeters: return `dGy·dm²`; case DoseAreaProductUnits.MicrograySquareCentimeters: return `μGy·cm²`; case DoseAreaProductUnits.MilligraySquareCentimeters: return `mGy·cm²`; case DoseAreaProductUnits.CentigraySquareCentimeters: return `cGy·cm²`; case DoseAreaProductUnits.DecigraySquareCentimeters: return `dGy·cm²`; case DoseAreaProductUnits.MicrograySquareMillimeters: return `μGy·mm²`; case DoseAreaProductUnits.MilligraySquareMillimeters: return `mGy·mm²`; case DoseAreaProductUnits.CentigraySquareMillimeters: return `cGy·mm²`; case DoseAreaProductUnits.DecigraySquareMillimeters: return `dGy·mm²`; default: break; } return ''; } /** * Check if the given DoseAreaProduct are equals to the current DoseAreaProduct. * @param doseAreaProduct The other DoseAreaProduct. * @returns True if the given DoseAreaProduct are equal to the current DoseAreaProduct. */ equals(doseAreaProduct) { return super.internalEquals(this.value, doseAreaProduct.BaseValue); } /** * Compare the given DoseAreaProduct against the current DoseAreaProduct. * @param doseAreaProduct The other DoseAreaProduct. * @returns 0 if they are equal, -1 if the current DoseAreaProduct is less then other, 1 if the current DoseAreaProduct is greater then other. */ compareTo(doseAreaProduct) { return super.internalCompareTo(this.value, doseAreaProduct.BaseValue); } /** * Add the given DoseAreaProduct with the current DoseAreaProduct. * @param doseAreaProduct The other DoseAreaProduct. * @returns A new DoseAreaProduct instance with the results. */ add(doseAreaProduct) { return new DoseAreaProduct(super.internalAdd(this.value, doseAreaProduct.BaseValue)); } /** * Subtract the given DoseAreaProduct with the current DoseAreaProduct. * @param doseAreaProduct The other DoseAreaProduct. * @returns A new DoseAreaProduct instance with the results. */ subtract(doseAreaProduct) { return new DoseAreaProduct(super.internalSubtract(this.value, doseAreaProduct.BaseValue)); } /** * Multiply the given DoseAreaProduct with the current DoseAreaProduct. * @param doseAreaProduct The other DoseAreaProduct. * @returns A new DoseAreaProduct instance with the results. */ multiply(doseAreaProduct) { return new DoseAreaProduct(super.internalMultiply(this.value, doseAreaProduct.BaseValue)); } /** * Divide the given DoseAreaProduct with the current DoseAreaProduct. * @param doseAreaProduct The other DoseAreaProduct. * @returns A new DoseAreaProduct instance with the results. */ divide(doseAreaProduct) { return new DoseAreaProduct(super.internalDivide(this.value, doseAreaProduct.BaseValue)); } /** * Modulo the given DoseAreaProduct with the current DoseAreaProduct. * @param doseAreaProduct The other DoseAreaProduct. * @returns A new DoseAreaProduct instance with the results. */ modulo(doseAreaProduct) { return new DoseAreaProduct(super.internalModulo(this.value, doseAreaProduct.BaseValue)); } /** * Pow the given DoseAreaProduct with the current DoseAreaProduct. * @param doseAreaProduct The other DoseAreaProduct. * @returns A new DoseAreaProduct instance with the results. */ pow(doseAreaProduct) { return new DoseAreaProduct(super.internalPow(this.value, doseAreaProduct.BaseValue)); } } exports.DoseAreaProduct = DoseAreaProduct;