@itwin/core-quantity 5.10.0-dev.8 → 5.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +31 -1
- package/README.md +17 -0
- package/lib/cjs/BasicUnitsProvider.d.ts +8 -5
- package/lib/cjs/BasicUnitsProvider.d.ts.map +1 -1
- package/lib/cjs/BasicUnitsProvider.js +16 -139
- package/lib/cjs/BasicUnitsProvider.js.map +1 -1
- package/lib/cjs/Exception.d.ts +2 -1
- package/lib/cjs/Exception.d.ts.map +1 -1
- package/lib/cjs/Exception.js +1 -0
- package/lib/cjs/Exception.js.map +1 -1
- package/lib/cjs/FormatSpecHandle.d.ts +1 -2
- package/lib/cjs/FormatSpecHandle.d.ts.map +1 -1
- package/lib/cjs/FormatSpecHandle.js +0 -1
- package/lib/cjs/FormatSpecHandle.js.map +1 -1
- package/lib/cjs/Quantity.d.ts +4 -0
- package/lib/cjs/Quantity.d.ts.map +1 -1
- package/lib/cjs/Quantity.js +12 -23
- package/lib/cjs/Quantity.js.map +1 -1
- package/lib/cjs/UnitConversion/UnitConversion.js +6 -6
- package/lib/cjs/UnitConversion/UnitConversion.js.map +1 -1
- package/lib/cjs/UnitConversions.d.ts +40 -0
- package/lib/cjs/UnitConversions.d.ts.map +1 -0
- package/lib/cjs/UnitConversions.js +121 -0
- package/lib/cjs/UnitConversions.js.map +1 -0
- package/lib/cjs/assets/Units.json +72 -1
- package/lib/cjs/core-quantity.d.ts +6 -0
- package/lib/cjs/core-quantity.d.ts.map +1 -1
- package/lib/cjs/core-quantity.js +6 -0
- package/lib/cjs/core-quantity.js.map +1 -1
- package/lib/cjs/generated/Units.generated.d.ts +785 -0
- package/lib/cjs/generated/Units.generated.d.ts.map +1 -0
- package/lib/cjs/generated/Units.generated.js +775 -0
- package/lib/cjs/generated/Units.generated.js.map +1 -0
- package/lib/cjs/internal/BasicUnitConversionData.d.ts +33 -0
- package/lib/cjs/internal/BasicUnitConversionData.d.ts.map +1 -0
- package/lib/cjs/internal/BasicUnitConversionData.js +126 -0
- package/lib/cjs/internal/BasicUnitConversionData.js.map +1 -0
- package/lib/cjs/internal/BasicUnitConversions.generated.d.ts +507 -0
- package/lib/cjs/internal/BasicUnitConversions.generated.d.ts.map +1 -0
- package/lib/cjs/internal/BasicUnitConversions.generated.js +515 -0
- package/lib/cjs/internal/BasicUnitConversions.generated.js.map +1 -0
- package/lib/cjs/internal/BasicUnitsResolvedStateCache.d.ts +12 -0
- package/lib/cjs/internal/BasicUnitsResolvedStateCache.d.ts.map +1 -0
- package/lib/cjs/internal/BasicUnitsResolvedStateCache.js +37 -0
- package/lib/cjs/internal/BasicUnitsResolvedStateCache.js.map +1 -0
- package/lib/cjs/internal/DefaultPersistenceUnits.generated.d.ts +84 -0
- package/lib/cjs/internal/DefaultPersistenceUnits.generated.d.ts.map +1 -0
- package/lib/cjs/internal/DefaultPersistenceUnits.generated.js +94 -0
- package/lib/cjs/internal/DefaultPersistenceUnits.generated.js.map +1 -0
- package/lib/cjs/internal/UnitConversionMath.d.ts +21 -0
- package/lib/cjs/internal/UnitConversionMath.d.ts.map +1 -0
- package/lib/cjs/internal/UnitConversionMath.js +55 -0
- package/lib/cjs/internal/UnitConversionMath.js.map +1 -0
- package/lib/esm/BasicUnitsProvider.d.ts +8 -5
- package/lib/esm/BasicUnitsProvider.d.ts.map +1 -1
- package/lib/esm/BasicUnitsProvider.js +16 -139
- package/lib/esm/BasicUnitsProvider.js.map +1 -1
- package/lib/esm/Exception.d.ts +2 -1
- package/lib/esm/Exception.d.ts.map +1 -1
- package/lib/esm/Exception.js +1 -0
- package/lib/esm/Exception.js.map +1 -1
- package/lib/esm/FormatSpecHandle.d.ts +1 -2
- package/lib/esm/FormatSpecHandle.d.ts.map +1 -1
- package/lib/esm/FormatSpecHandle.js +0 -1
- package/lib/esm/FormatSpecHandle.js.map +1 -1
- package/lib/esm/Quantity.d.ts +4 -0
- package/lib/esm/Quantity.d.ts.map +1 -1
- package/lib/esm/Quantity.js +12 -23
- package/lib/esm/Quantity.js.map +1 -1
- package/lib/esm/UnitConversion/UnitConversion.js +1 -1
- package/lib/esm/UnitConversion/UnitConversion.js.map +1 -1
- package/lib/esm/UnitConversions.d.ts +40 -0
- package/lib/esm/UnitConversions.d.ts.map +1 -0
- package/lib/esm/UnitConversions.js +116 -0
- package/lib/esm/UnitConversions.js.map +1 -0
- package/lib/esm/assets/Units.json +72 -1
- package/lib/esm/core-quantity.d.ts +6 -0
- package/lib/esm/core-quantity.d.ts.map +1 -1
- package/lib/esm/core-quantity.js +6 -0
- package/lib/esm/core-quantity.js.map +1 -1
- package/lib/esm/generated/Units.generated.d.ts +785 -0
- package/lib/esm/generated/Units.generated.d.ts.map +1 -0
- package/lib/esm/generated/Units.generated.js +772 -0
- package/lib/esm/generated/Units.generated.js.map +1 -0
- package/lib/esm/internal/BasicUnitConversionData.d.ts +33 -0
- package/lib/esm/internal/BasicUnitConversionData.d.ts.map +1 -0
- package/lib/esm/internal/BasicUnitConversionData.js +122 -0
- package/lib/esm/internal/BasicUnitConversionData.js.map +1 -0
- package/lib/esm/internal/BasicUnitConversions.generated.d.ts +507 -0
- package/lib/esm/internal/BasicUnitConversions.generated.d.ts.map +1 -0
- package/lib/esm/internal/BasicUnitConversions.generated.js +512 -0
- package/lib/esm/internal/BasicUnitConversions.generated.js.map +1 -0
- package/lib/esm/internal/BasicUnitsResolvedStateCache.d.ts +12 -0
- package/lib/esm/internal/BasicUnitsResolvedStateCache.d.ts.map +1 -0
- package/lib/esm/internal/BasicUnitsResolvedStateCache.js +33 -0
- package/lib/esm/internal/BasicUnitsResolvedStateCache.js.map +1 -0
- package/lib/esm/internal/DefaultPersistenceUnits.generated.d.ts +84 -0
- package/lib/esm/internal/DefaultPersistenceUnits.generated.d.ts.map +1 -0
- package/lib/esm/internal/DefaultPersistenceUnits.generated.js +91 -0
- package/lib/esm/internal/DefaultPersistenceUnits.generated.js.map +1 -0
- package/lib/esm/internal/UnitConversionMath.d.ts +21 -0
- package/lib/esm/internal/UnitConversionMath.d.ts.map +1 -0
- package/lib/esm/internal/UnitConversionMath.js +49 -0
- package/lib/esm/internal/UnitConversionMath.js.map +1 -0
- package/package.json +10 -8
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Units.generated.js","sourceRoot":"","sources":["../../../src/generated/Units.generated.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/* eslint-disable @typescript-eslint/naming-convention */\n// AUTO-GENERATED by scripts/generateUnitsJson.ts. Do not edit by hand.\nimport type { NestedValueOf, ValueOf } from \"@itwin/core-bentley\";\n\n/** Canonical bundled unit identifiers grouped by phenomenon from the bundled Units.json asset.\n * @beta\n */\nexport const Units = {\n ACCELERATION: {\n CM_PER_SEC_SQ: \"Units.CM_PER_SEC_SQ\",\n FT_PER_SEC_SQ: \"Units.FT_PER_SEC_SQ\",\n M_PER_SEC_SQ: \"Units.M_PER_SEC_SQ\",\n },\n ANGLE: {\n ARC_DEG: \"Units.ARC_DEG\",\n ARC_MINUTE: \"Units.ARC_MINUTE\",\n ARC_QUADRANT: \"Units.ARC_QUADRANT\",\n ARC_SECOND: \"Units.ARC_SECOND\",\n GRAD: \"Units.GRAD\",\n RAD: \"Units.RAD\",\n REVOLUTION: \"Units.REVOLUTION\",\n },\n ANGULAR_VELOCITY: {\n DEG_PER_HR: \"Units.DEG_PER_HR\",\n DEG_PER_MIN: \"Units.DEG_PER_MIN\",\n DEG_PER_SEC: \"Units.DEG_PER_SEC\",\n RAD_PER_HR: \"Units.RAD_PER_HR\",\n RAD_PER_MIN: \"Units.RAD_PER_MIN\",\n RAD_PER_SEC: \"Units.RAD_PER_SEC\",\n RPH: \"Units.RPH\",\n RPM: \"Units.RPM\",\n RPS: \"Units.RPS\",\n },\n APPARENT_POWER: {\n KVA: \"Units.KVA\",\n MVA: \"Units.MVA\",\n VA: \"Units.VA\",\n },\n AREA: {\n ACRE: \"Units.ACRE\",\n ARE: \"Units.ARE\",\n HECTARE: \"Units.HECTARE\",\n SQ_CHAIN: \"Units.SQ_CHAIN\",\n SQ_CM: \"Units.SQ_CM\",\n SQ_DM: \"Units.SQ_DM\",\n SQ_FT: \"Units.SQ_FT\",\n SQ_IN: \"Units.SQ_IN\",\n SQ_KM: \"Units.SQ_KM\",\n SQ_M: \"Units.SQ_M\",\n SQ_MILE: \"Units.SQ_MILE\",\n SQ_MM: \"Units.SQ_MM\",\n SQ_UM: \"Units.SQ_UM\",\n SQ_US_SURVEY_CHAIN: \"Units.SQ_US_SURVEY_CHAIN\",\n SQ_US_SURVEY_FT: \"Units.SQ_US_SURVEY_FT\",\n SQ_US_SURVEY_IN: \"Units.SQ_US_SURVEY_IN\",\n SQ_US_SURVEY_MILE: \"Units.SQ_US_SURVEY_MILE\",\n SQ_US_SURVEY_YRD: \"Units.SQ_US_SURVEY_YRD\",\n SQ_YRD: \"Units.SQ_YRD\",\n THOUSAND_SQ_FT: \"Units.THOUSAND_SQ_FT\",\n US_SURVEY_ACRE: \"Units.US_SURVEY_ACRE\",\n },\n AREA_MOMENT_INERTIA: {\n CM_TO_THE_FOURTH: \"Units.CM_TO_THE_FOURTH\",\n FT_TO_THE_FOURTH: \"Units.FT_TO_THE_FOURTH\",\n IN_TO_THE_FOURTH: \"Units.IN_TO_THE_FOURTH\",\n M_TO_THE_FOURTH: \"Units.M_TO_THE_FOURTH\",\n MM_TO_THE_FOURTH: \"Units.MM_TO_THE_FOURTH\",\n },\n AREA_SPRING_CONSTANT: {\n AREA_SPRING_CONSTANT_KN_PER_CUB_M: \"Units.AREA_SPRING_CONSTANT_KN_PER_CUB_M\",\n AREA_SPRING_CONSTANT_KPF_PER_CUB_FT: \"Units.AREA_SPRING_CONSTANT_KPF_PER_CUB_FT\",\n AREA_SPRING_CONSTANT_N_PER_CUB_M: \"Units.AREA_SPRING_CONSTANT_N_PER_CUB_M\",\n },\n AREA_TORQUE: {\n KN_M_PER_SQ_M: \"Units.KN_M_PER_SQ_M\",\n KPF_FT_PER_SQ_FT: \"Units.KPF_FT_PER_SQ_FT\",\n LBF_FT_PER_SQ_FT: \"Units.LBF_FT_PER_SQ_FT\",\n LBF_IN_PER_SQ_IN: \"Units.LBF_IN_PER_SQ_IN\",\n MEGAN_M_PER_SQ_M: \"Units.MEGAN_M_PER_SQ_M\",\n N_CM_PER_SQ_CM: \"Units.N_CM_PER_SQ_CM\",\n N_M_PER_SQ_M: \"Units.N_M_PER_SQ_M\",\n },\n CAPITA: {\n HUNDRED_PERSON: \"Units.HUNDRED_PERSON\",\n PERSON: \"Units.PERSON\",\n THOUSAND_PERSON: \"Units.THOUSAND_PERSON\",\n },\n CURRENCY: {\n MONETARY_UNIT: \"Units.MONETARY_UNIT\",\n US_DOLLAR: \"Units.US_DOLLAR\",\n },\n CURRENT: {\n A: \"Units.A\",\n KILOAMPERE: \"Units.KILOAMPERE\",\n MICROAMPERE: \"Units.MICROAMPERE\",\n MILLIAMPERE: \"Units.MILLIAMPERE\",\n },\n DENSITY: {\n G_PER_CUB_CM: \"Units.G_PER_CUB_CM\",\n KG_PER_CUB_CM: \"Units.KG_PER_CUB_CM\",\n KG_PER_CUB_M: \"Units.KG_PER_CUB_M\",\n KG_PER_LITRE: \"Units.KG_PER_LITRE\",\n KIP_PER_CUB_FT: \"Units.KIP_PER_CUB_FT\",\n LBM_PER_CUB_FT: \"Units.LBM_PER_CUB_FT\",\n LBM_PER_CUB_IN: \"Units.LBM_PER_CUB_IN\",\n LBM_PER_GALLON: \"Units.LBM_PER_GALLON\",\n LBM_PER_GALLON_IMPERIAL: \"Units.LBM_PER_GALLON_IMPERIAL\",\n LBM_PER_MILLION_GALLON: \"Units.LBM_PER_MILLION_GALLON\",\n MG_PER_LITRE: \"Units.MG_PER_LITRE\",\n MKG_PER_LITRE: \"Units.MKG_PER_LITRE\",\n SHORT_TON_PER_CUB_FT: \"Units.SHORT_TON_PER_CUB_FT\",\n SLUG_PER_CUB_FT: \"Units.SLUG_PER_CUB_FT\",\n },\n DYNAMIC_VISCOSITY: {\n CENTIPOISE: \"Units.CENTIPOISE\",\n LBM_PER_FT_S: \"Units.LBM_PER_FT_S\",\n PA_S: \"Units.PA_S\",\n POISE: \"Units.POISE\",\n },\n ELECTRIC_CHARGE: {\n COULOMB: \"Units.COULOMB\",\n },\n ELECTRIC_POTENTIAL: {\n KILOVOLT: \"Units.KILOVOLT\",\n MEGAVOLT: \"Units.MEGAVOLT\",\n VOLT: \"Units.VOLT\",\n },\n ELECTRICAL_RESISTANCE: {\n KOHM: \"Units.KOHM\",\n OHM: \"Units.OHM\",\n },\n ELECTRICAL_RESISTIVITY: {\n OHM_M: \"Units.OHM_M\",\n },\n ENERGY_DENSITY: {\n J_PER_CUB_M: \"Units.J_PER_CUB_M\",\n KJ_PER_CUB_M: \"Units.KJ_PER_CUB_M\",\n KWH_PER_CUB_FT: \"Units.KWH_PER_CUB_FT\",\n KWH_PER_CUB_M: \"Units.KWH_PER_CUB_M\",\n KWH_PER_MILLION_GALLON: \"Units.KWH_PER_MILLION_GALLON\",\n },\n ENTROPY: {\n BTU_PER_FAHRENHEIT: \"Units.BTU_PER_FAHRENHEIT\",\n J_PER_K: \"Units.J_PER_K\",\n KJ_PER_K: \"Units.KJ_PER_K\",\n },\n FLOW_DENSITY_PER_AREA: {\n CUB_FT_PER_ACRE_SEC: \"Units.CUB_FT_PER_ACRE_SEC\",\n CUB_FT_PER_SQ_FT_MIN: \"Units.CUB_FT_PER_SQ_FT_MIN\",\n CUB_FT_PER_SQ_FT_SEC: \"Units.CUB_FT_PER_SQ_FT_SEC\",\n CUB_FT_PER_SQ_MILE_SEC: \"Units.CUB_FT_PER_SQ_MILE_SEC\",\n CUB_M_PER_HECTARE_DAY: \"Units.CUB_M_PER_HECTARE_DAY\",\n CUB_M_PER_SQ_KM_DAY: \"Units.CUB_M_PER_SQ_KM_DAY\",\n CUB_M_PER_SQ_M_DAY: \"Units.CUB_M_PER_SQ_M_DAY\",\n CUB_M_PER_SQ_M_SEC: \"Units.CUB_M_PER_SQ_M_SEC\",\n GALLON_PER_ACRE_DAY: \"Units.GALLON_PER_ACRE_DAY\",\n GALLON_PER_ACRE_MIN: \"Units.GALLON_PER_ACRE_MIN\",\n GALLON_PER_SQ_FT_DAY: \"Units.GALLON_PER_SQ_FT_DAY\",\n GALLON_PER_SQ_FT_MIN: \"Units.GALLON_PER_SQ_FT_MIN\",\n GALLON_PER_SQ_MILE_DAY: \"Units.GALLON_PER_SQ_MILE_DAY\",\n GALLON_PER_SQ_MILE_MIN: \"Units.GALLON_PER_SQ_MILE_MIN\",\n LITRE_PER_SQ_M_SEC: \"Units.LITRE_PER_SQ_M_SEC\",\n },\n FORCE: {\n DECAN: \"Units.DECAN\",\n DYNE: \"Units.DYNE\",\n KGF: \"Units.KGF\",\n KN: \"Units.KN\",\n KPF: \"Units.KPF\",\n LBF: \"Units.LBF\",\n LONG_TON_FORCE: \"Units.LONG_TON_FORCE\",\n MEGAN: \"Units.MEGAN\",\n MN: \"Units.MN\",\n N: \"Units.N\",\n OZF: \"Units.OZF\",\n PDL: \"Units.PDL\",\n SHORT_TON_FORCE: \"Units.SHORT_TON_FORCE\",\n },\n FORCE_DENSITY: {\n KN_PER_CUB_FT: \"Units.KN_PER_CUB_FT\",\n KN_PER_CUB_M: \"Units.KN_PER_CUB_M\",\n KPF_PER_CUB_FT: \"Units.KPF_PER_CUB_FT\",\n N_PER_CUB_FT: \"Units.N_PER_CUB_FT\",\n N_PER_CUB_M: \"Units.N_PER_CUB_M\",\n },\n FORCE_DISPLAY_SCALE: {\n M_PER_KN: \"Units.M_PER_KN\",\n M_PER_N: \"Units.M_PER_N\",\n },\n FREQUENCY: {\n HZ: \"Units.HZ\",\n KHZ: \"Units.KHZ\",\n MHZ: \"Units.MHZ\",\n },\n HEAT_FLUX_DENSITY: {\n W_PER_SQ_M: \"Units.W_PER_SQ_M\",\n },\n HEAT_TRANSFER: {\n BTU_PER_SQ_FT_HR_FAHRENHEIT: \"Units.BTU_PER_SQ_FT_HR_FAHRENHEIT\",\n W_PER_SQ_M_CELSIUS: \"Units.W_PER_SQ_M_CELSIUS\",\n W_PER_SQ_M_K: \"Units.W_PER_SQ_M_K\",\n },\n HORIZONTAL_DIRECTION: {\n HORIZONTAL_DIR_ARC_DEG: \"Units.HORIZONTAL_DIR_ARC_DEG\",\n HORIZONTAL_DIR_ARC_MINUTE: \"Units.HORIZONTAL_DIR_ARC_MINUTE\",\n HORIZONTAL_DIR_ARC_SECOND: \"Units.HORIZONTAL_DIR_ARC_SECOND\",\n HORIZONTAL_DIR_GRAD: \"Units.HORIZONTAL_DIR_GRAD\",\n HORIZONTAL_DIR_MILLIRAD: \"Units.HORIZONTAL_DIR_MILLIRAD\",\n HORIZONTAL_DIR_RAD: \"Units.HORIZONTAL_DIR_RAD\",\n HORIZONTAL_DIR_REVOLUTION: \"Units.HORIZONTAL_DIR_REVOLUTION\",\n },\n ILLUMINANCE: {\n LUMEN_PER_SQ_FT: \"Units.LUMEN_PER_SQ_FT\",\n LUX: \"Units.LUX\",\n },\n KINEMATIC_VISCOSITY: {\n CENTISTOKE: \"Units.CENTISTOKE\",\n SQ_FT_PER_SEC: \"Units.SQ_FT_PER_SEC\",\n SQ_M_PER_SEC: \"Units.SQ_M_PER_SEC\",\n STOKE: \"Units.STOKE\",\n },\n LENGTH: {\n CHAIN: \"Units.CHAIN\",\n CM: \"Units.CM\",\n DM: \"Units.DM\",\n FT: \"Units.FT\",\n IN: \"Units.IN\",\n KM: \"Units.KM\",\n M: \"Units.M\",\n MICROINCH: \"Units.MICROINCH\",\n MILE: \"Units.MILE\",\n MILLIFOOT: \"Units.MILLIFOOT\",\n MILLIINCH: \"Units.MILLIINCH\",\n MM: \"Units.MM\",\n NAUT_MILE: \"Units.NAUT_MILE\",\n UM: \"Units.UM\",\n US_SURVEY_CHAIN: \"Units.US_SURVEY_CHAIN\",\n US_SURVEY_FT: \"Units.US_SURVEY_FT\",\n US_SURVEY_IN: \"Units.US_SURVEY_IN\",\n US_SURVEY_MILE: \"Units.US_SURVEY_MILE\",\n US_SURVEY_YRD: \"Units.US_SURVEY_YRD\",\n YRD: \"Units.YRD\",\n },\n LINEAR_COEFFICIENT_OF_THERMAL_EXPANSION: {\n STRAIN_PER_CELSIUS: \"Units.STRAIN_PER_CELSIUS\",\n STRAIN_PER_FAHRENHEIT: \"Units.STRAIN_PER_FAHRENHEIT\",\n STRAIN_PER_KELVIN: \"Units.STRAIN_PER_KELVIN\",\n STRAIN_PER_RANKINE: \"Units.STRAIN_PER_RANKINE\",\n },\n LINEAR_DENSITY: {\n KG_PER_M: \"Units.KG_PER_M\",\n KG_PER_MM: \"Units.KG_PER_MM\",\n LBM_PER_FT: \"Units.LBM_PER_FT\",\n },\n LINEAR_LOAD: {\n KGF_PER_M: \"Units.KGF_PER_M\",\n KN_PER_M: \"Units.KN_PER_M\",\n KPF_PER_FT: \"Units.KPF_PER_FT\",\n LBF_PER_FT: \"Units.LBF_PER_FT\",\n LBF_PER_IN: \"Units.LBF_PER_IN\",\n MEGAN_PER_M: \"Units.MEGAN_PER_M\",\n N_PER_M: \"Units.N_PER_M\",\n N_PER_MM: \"Units.N_PER_MM\",\n },\n LINEAR_RATE: {\n PER_FT: \"Units.PER_FT\",\n PER_KM: \"Units.PER_KM\",\n PER_M: \"Units.PER_M\",\n PER_MILE: \"Units.PER_MILE\",\n PER_MM: \"Units.PER_MM\",\n PER_THOUSAND_FT: \"Units.PER_THOUSAND_FT\",\n },\n LINEAR_ROTATIONAL_SPRING_CONSTANT: {\n KN_PER_RAD: \"Units.KN_PER_RAD\",\n KPF_PER_RAD: \"Units.KPF_PER_RAD\",\n N_PER_RAD: \"Units.N_PER_RAD\",\n },\n LINEAR_SPRING_CONSTANT: {\n LINEAR_SPRING_CONSTANT_KN_PER_SQ_M: \"Units.LINEAR_SPRING_CONSTANT_KN_PER_SQ_M\",\n LINEAR_SPRING_CONSTANT_KPF_PER_SQ_FT: \"Units.LINEAR_SPRING_CONSTANT_KPF_PER_SQ_FT\",\n LINEAR_SPRING_CONSTANT_N_PER_SQ_M: \"Units.LINEAR_SPRING_CONSTANT_N_PER_SQ_M\",\n },\n LINEAR_TORQUE: {\n KN_M_PER_M: \"Units.KN_M_PER_M\",\n KPF_FT_PER_FT: \"Units.KPF_FT_PER_FT\",\n LBF_FT_PER_FT: \"Units.LBF_FT_PER_FT\",\n LBF_IN_PER_IN: \"Units.LBF_IN_PER_IN\",\n MEGAN_M_PER_M: \"Units.MEGAN_M_PER_M\",\n N_CM_PER_CM: \"Units.N_CM_PER_CM\",\n N_M_PER_M: \"Units.N_M_PER_M\",\n },\n LUMINOSITY: {\n CD: \"Units.CD\",\n },\n LUMINOUS_EFFICACY: {\n LUMEN_PER_W: \"Units.LUMEN_PER_W\",\n },\n LUMINOUS_FLUX: {\n LUMEN: \"Units.LUMEN\",\n },\n MASS: {\n G: \"Units.G\",\n GRM: \"Units.GRM\",\n KG: \"Units.KG\",\n KIPM: \"Units.KIPM\",\n LBM: \"Units.LBM\",\n LONG_TON_MASS: \"Units.LONG_TON_MASS\",\n MEGAGRAM: \"Units.MEGAGRAM\",\n MG: \"Units.MG\",\n MKG: \"Units.MKG\",\n NG: \"Units.NG\",\n OZM: \"Units.OZM\",\n SHORT_TON_MASS: \"Units.SHORT_TON_MASS\",\n SLUG: \"Units.SLUG\",\n TONNE: \"Units.TONNE\",\n },\n MASS_FLOW: {\n G_PER_HR: \"Units.G_PER_HR\",\n G_PER_MIN: \"Units.G_PER_MIN\",\n G_PER_SEC: \"Units.G_PER_SEC\",\n KG_PER_DAY: \"Units.KG_PER_DAY\",\n KG_PER_HR: \"Units.KG_PER_HR\",\n KG_PER_MIN: \"Units.KG_PER_MIN\",\n KG_PER_SEC: \"Units.KG_PER_SEC\",\n LBM_PER_DAY: \"Units.LBM_PER_DAY\",\n LBM_PER_HR: \"Units.LBM_PER_HR\",\n LBM_PER_MIN: \"Units.LBM_PER_MIN\",\n LBM_PER_SEC: \"Units.LBM_PER_SEC\",\n MG_PER_DAY: \"Units.MG_PER_DAY\",\n MG_PER_HR: \"Units.MG_PER_HR\",\n MG_PER_MIN: \"Units.MG_PER_MIN\",\n MG_PER_SEC: \"Units.MG_PER_SEC\",\n MKG_PER_DAY: \"Units.MKG_PER_DAY\",\n MKG_PER_HR: \"Units.MKG_PER_HR\",\n MKG_PER_MIN: \"Units.MKG_PER_MIN\",\n MKG_PER_SEC: \"Units.MKG_PER_SEC\",\n SHORT_TON_PER_HR: \"Units.SHORT_TON_PER_HR\",\n TONNE_PER_HR: \"Units.TONNE_PER_HR\",\n },\n MASS_RATIO: {\n GRM_PER_LBM: \"Units.GRM_PER_LBM\",\n KG_PER_KG: \"Units.KG_PER_KG\",\n },\n MOLAR_CONCENTRATION: {\n KMOL_PER_CUB_M: \"Units.KMOL_PER_CUB_M\",\n MICROMOL_PER_CUB_DM: \"Units.MICROMOL_PER_CUB_DM\",\n MOL_PER_CUB_DM: \"Units.MOL_PER_CUB_DM\",\n MOL_PER_CUB_FT: \"Units.MOL_PER_CUB_FT\",\n MOL_PER_CUB_M: \"Units.MOL_PER_CUB_M\",\n NMOL_PER_CUB_DM: \"Units.NMOL_PER_CUB_DM\",\n PICOMOL_PER_CUB_DM: \"Units.PICOMOL_PER_CUB_DM\",\n },\n MOLAR_FLOW: {\n KMOL_PER_SEC: \"Units.KMOL_PER_SEC\",\n MOL_PER_SEC: \"Units.MOL_PER_SEC\",\n },\n MOLAR_VOLUME: {\n CUB_FT_PER_LB_MOL: \"Units.CUB_FT_PER_LB_MOL\",\n CUB_M_PER_KMOL: \"Units.CUB_M_PER_KMOL\",\n CUB_M_PER_MOL: \"Units.CUB_M_PER_MOL\",\n },\n MOLE: {\n KMOL: \"Units.KMOL\",\n LB_MOL: \"Units.LB_MOL\",\n MOL: \"Units.MOL\",\n },\n MOMENT_DISPLAY_SCALE: {\n INVERSE_KN: \"Units.INVERSE_KN\",\n INVERSE_KPF: \"Units.INVERSE_KPF\",\n INVERSE_N: \"Units.INVERSE_N\",\n },\n NUMBER: {\n COEFFICIENT: \"Units.COEFFICIENT\",\n ONE: \"Units.ONE\",\n },\n PERCENTAGE: {\n DECIMAL_PERCENT: \"Units.DECIMAL_PERCENT\",\n PERCENT: \"Units.PERCENT\",\n },\n PIPE_DIAMETER_LENGTH: {\n FT_FT: \"Units.FT_FT\",\n FT_MILE: \"Units.FT_MILE\",\n IN_FT: \"Units.IN_FT\",\n IN_M: \"Units.IN_M\",\n IN_MILE: \"Units.IN_MILE\",\n M_KM: \"Units.M_KM\",\n M_M: \"Units.M_M\",\n MM_KM: \"Units.MM_KM\",\n MM_M: \"Units.MM_M\",\n MM_MILE: \"Units.MM_MILE\",\n },\n POPULATION_DENSITY: {\n PERSON_PER_ACRE: \"Units.PERSON_PER_ACRE\",\n PERSON_PER_HECTARE: \"Units.PERSON_PER_HECTARE\",\n PERSON_PER_SQ_FT: \"Units.PERSON_PER_SQ_FT\",\n PERSON_PER_SQ_KM: \"Units.PERSON_PER_SQ_KM\",\n PERSON_PER_SQ_M: \"Units.PERSON_PER_SQ_M\",\n PERSON_PER_SQ_MILE: \"Units.PERSON_PER_SQ_MILE\",\n },\n POWER: {\n BTU_PER_HR: \"Units.BTU_PER_HR\",\n GW: \"Units.GW\",\n HP: \"Units.HP\",\n KILOBTU_PER_HR: \"Units.KILOBTU_PER_HR\",\n KW: \"Units.KW\",\n MEGAW: \"Units.MEGAW\",\n W: \"Units.W\",\n },\n PRESSURE: {\n AT: \"Units.AT\",\n AT_GAUGE: \"Units.AT_GAUGE\",\n ATM: \"Units.ATM\",\n BAR: \"Units.BAR\",\n BAR_GAUGE: \"Units.BAR_GAUGE\",\n BARYE: \"Units.BARYE\",\n FT_H2O: \"Units.FT_H2O\",\n HECTOPASCAL: \"Units.HECTOPASCAL\",\n IN_H2O_AT_32F: \"Units.IN_H2O_AT_32F\",\n IN_H2O_AT_39_2F: \"Units.IN_H2O_AT_39_2F\",\n IN_H2O_AT_60F: \"Units.IN_H2O_AT_60F\",\n IN_HG: \"Units.IN_HG\",\n IN_HG_AT_32F: \"Units.IN_HG_AT_32F\",\n IN_HG_AT_60F: \"Units.IN_HG_AT_60F\",\n KGF_PER_SQ_M: \"Units.KGF_PER_SQ_M\",\n KILOPASCAL: \"Units.KILOPASCAL\",\n KILOPASCAL_GAUGE: \"Units.KILOPASCAL_GAUGE\",\n KSF: \"Units.KSF\",\n KSI: \"Units.KSI\",\n LBF_PER_SQ_FT: \"Units.LBF_PER_SQ_FT\",\n M_H2O: \"Units.M_H2O\",\n MBAR: \"Units.MBAR\",\n MEGAPASCAL: \"Units.MEGAPASCAL\",\n MEGAPASCAL_GAUGE: \"Units.MEGAPASCAL_GAUGE\",\n MICROPASCAL: \"Units.MICROPASCAL\",\n MM_H2O: \"Units.MM_H2O\",\n MM_HG_AT_32F: \"Units.MM_HG_AT_32F\",\n PA: \"Units.PA\",\n PA_GAUGE: \"Units.PA_GAUGE\",\n PSF: \"Units.PSF\",\n PSI: \"Units.PSI\",\n PSIG: \"Units.PSIG\",\n TORR: \"Units.TORR\",\n },\n PRESSURE_GRADIENT: {\n BAR_PER_KM: \"Units.BAR_PER_KM\",\n PA_PER_M: \"Units.PA_PER_M\",\n },\n PROBABILITY: {\n PROBABILITY_FRACTION: \"Units.PROBABILITY_FRACTION\",\n PROBABILITY_PERCENT: \"Units.PROBABILITY_PERCENT\",\n },\n ROTATIONAL_SPRING_CONSTANT: {\n KN_M_PER_RAD: \"Units.KN_M_PER_RAD\",\n KPF_FT_PER_RAD: \"Units.KPF_FT_PER_RAD\",\n N_M_PER_DEG: \"Units.N_M_PER_DEG\",\n N_M_PER_RAD: \"Units.N_M_PER_RAD\",\n },\n SLOPE: {\n CM_PER_M: \"Units.CM_PER_M\",\n FT_HORIZONTAL_PER_FT_VERTICAL: \"Units.FT_HORIZONTAL_PER_FT_VERTICAL\",\n FT_PER_FT: \"Units.FT_PER_FT\",\n FT_PER_IN: \"Units.FT_PER_IN\",\n FT_PER_MILE: \"Units.FT_PER_MILE\",\n FT_PER_THOUSAND_FOOT: \"Units.FT_PER_THOUSAND_FOOT\",\n HORIZONTAL_PER_VERTICAL: \"Units.HORIZONTAL_PER_VERTICAL\",\n IN_PER_FT: \"Units.IN_PER_FT\",\n M_HORIZONTAL_PER_M_VERTICAL: \"Units.M_HORIZONTAL_PER_M_VERTICAL\",\n M_PER_KM: \"Units.M_PER_KM\",\n M_PER_M: \"Units.M_PER_M\",\n MM_PER_M: \"Units.MM_PER_M\",\n PERCENT_SLOPE: \"Units.PERCENT_SLOPE\",\n VERTICAL_PER_HORIZONTAL: \"Units.VERTICAL_PER_HORIZONTAL\",\n },\n SOLIDANGLE: {\n STERAD: \"Units.STERAD\",\n },\n SPECIFIC_ENERGY: {\n BTU_PER_LBM: \"Units.BTU_PER_LBM\",\n J_PER_KG: \"Units.J_PER_KG\",\n KJ_PER_KG: \"Units.KJ_PER_KG\",\n MEGAJ_PER_KG: \"Units.MEGAJ_PER_KG\",\n },\n SPECIFIC_HEAT_CAPACITY: {\n BTU_PER_LBM_RANKINE: \"Units.BTU_PER_LBM_RANKINE\",\n J_PER_G_CELSIUS: \"Units.J_PER_G_CELSIUS\",\n J_PER_KG_K: \"Units.J_PER_KG_K\",\n },\n SPECIFIC_HEAT_CAPACITY_MOLAR: {\n BTU_PER_LB_MOL_RANKINE: \"Units.BTU_PER_LB_MOL_RANKINE\",\n J_PER_KMOL_K: \"Units.J_PER_KMOL_K\",\n J_PER_MOL_K: \"Units.J_PER_MOL_K\",\n KJ_PER_KMOL_K: \"Units.KJ_PER_KMOL_K\",\n },\n SPECIFIC_VOLUME: {\n CUB_FT_PER_LBM: \"Units.CUB_FT_PER_LBM\",\n CUB_M_PER_KG: \"Units.CUB_M_PER_KG\",\n },\n SPRING_CONSTANT: {\n SPRING_CONSTANT_KN_PER_M: \"Units.SPRING_CONSTANT_KN_PER_M\",\n SPRING_CONSTANT_KPF_PER_FT: \"Units.SPRING_CONSTANT_KPF_PER_FT\",\n SPRING_CONSTANT_N_PER_M: \"Units.SPRING_CONSTANT_N_PER_M\",\n },\n SURFACE_DENSITY: {\n G_PER_SQ_M: \"Units.G_PER_SQ_M\",\n KG_PER_HECTARE: \"Units.KG_PER_HECTARE\",\n KG_PER_SQ_M: \"Units.KG_PER_SQ_M\",\n LBM_PER_ACRE: \"Units.LBM_PER_ACRE\",\n },\n TEMPERATURE: {\n CELSIUS: \"Units.CELSIUS\",\n FAHRENHEIT: \"Units.FAHRENHEIT\",\n K: \"Units.K\",\n RANKINE: \"Units.RANKINE\",\n },\n TEMPERATURE_CHANGE: {\n DELTA_CELSIUS: \"Units.DELTA_CELSIUS\",\n DELTA_FAHRENHEIT: \"Units.DELTA_FAHRENHEIT\",\n DELTA_KELVIN: \"Units.DELTA_KELVIN\",\n DELTA_RANKINE: \"Units.DELTA_RANKINE\",\n },\n TEMPERATURE_GRADIENT: {\n KELVIN_PER_M: \"Units.KELVIN_PER_M\",\n },\n THERMAL_CONDUCTIVITY: {\n BTU_IN_PER_SQ_FT_HR_FAHRENHEIT: \"Units.BTU_IN_PER_SQ_FT_HR_FAHRENHEIT\",\n W_PER_M_C: \"Units.W_PER_M_C\",\n W_PER_M_K: \"Units.W_PER_M_K\",\n },\n THERMAL_INSULANCE: {\n SQ_FT_HR_FAHRENHEIT_PER_BTU: \"Units.SQ_FT_HR_FAHRENHEIT_PER_BTU\",\n SQ_M_CELSIUS_PER_WATT: \"Units.SQ_M_CELSIUS_PER_WATT\",\n SQ_M_KELVIN_PER_WATT: \"Units.SQ_M_KELVIN_PER_WATT\",\n },\n THREAD_PITCH: {\n IN_PER_DEGREE: \"Units.IN_PER_DEGREE\",\n M_PER_RAD: \"Units.M_PER_RAD\",\n M_PER_REVOLUTION: \"Units.M_PER_REVOLUTION\",\n },\n TIME: {\n DAY: \"Units.DAY\",\n HR: \"Units.HR\",\n MIN: \"Units.MIN\",\n MKS: \"Units.MKS\",\n MS: \"Units.MS\",\n S: \"Units.S\",\n WEEK: \"Units.WEEK\",\n YEAR_SIDEREAL: \"Units.YEAR_SIDEREAL\",\n YEAR_TROPICAL: \"Units.YEAR_TROPICAL\",\n YR: \"Units.YR\",\n },\n TORQUE: {\n KGF_M: \"Units.KGF_M\",\n KN_M: \"Units.KN_M\",\n KPF_FT: \"Units.KPF_FT\",\n LBF_FT: \"Units.LBF_FT\",\n LBF_IN: \"Units.LBF_IN\",\n MEGAN_M: \"Units.MEGAN_M\",\n N_CM: \"Units.N_CM\",\n N_M: \"Units.N_M\",\n },\n TORSIONAL_WARPING_CONSTANT: {\n CM_TO_THE_SIXTH: \"Units.CM_TO_THE_SIXTH\",\n FT_TO_THE_SIXTH: \"Units.FT_TO_THE_SIXTH\",\n IN_TO_THE_SIXTH: \"Units.IN_TO_THE_SIXTH\",\n M_TO_THE_SIXTH: \"Units.M_TO_THE_SIXTH\",\n MM_TO_THE_SIXTH: \"Units.MM_TO_THE_SIXTH\",\n },\n VELOCITY: {\n CM_PER_DAY: \"Units.CM_PER_DAY\",\n CM_PER_HR: \"Units.CM_PER_HR\",\n CM_PER_MIN: \"Units.CM_PER_MIN\",\n CM_PER_SEC: \"Units.CM_PER_SEC\",\n FT_PER_DAY: \"Units.FT_PER_DAY\",\n FT_PER_HR: \"Units.FT_PER_HR\",\n FT_PER_MIN: \"Units.FT_PER_MIN\",\n FT_PER_SEC: \"Units.FT_PER_SEC\",\n IN_PER_DAY: \"Units.IN_PER_DAY\",\n IN_PER_HR: \"Units.IN_PER_HR\",\n IN_PER_MIN: \"Units.IN_PER_MIN\",\n IN_PER_SEC: \"Units.IN_PER_SEC\",\n KM_PER_HR: \"Units.KM_PER_HR\",\n KM_PER_SEC: \"Units.KM_PER_SEC\",\n KNOT_INTERNATIONAL: \"Units.KNOT_INTERNATIONAL\",\n M_PER_DAY: \"Units.M_PER_DAy\",\n M_PER_HR: \"Units.M_PER_HR\",\n M_PER_MIN: \"Units.M_PER_MIN\",\n M_PER_SEC: \"Units.M_PER_SEC\",\n MM_PER_DAY: \"Units.MM_PER_DAY\",\n MM_PER_HR: \"Units.MM_PER_HR\",\n MM_PER_MIN: \"Units.MM_PER_MIN\",\n MM_PER_SEC: \"Units.MM_PER_SEC\",\n MPH: \"Units.MPH\",\n YRD_PER_SEC: \"Units.YRD_PER_SEC\",\n },\n VOLUME: {\n ACRE_FT: \"Units.ACRE_FT\",\n ACRE_IN: \"Units.ACRE_IN\",\n CUB_CM: \"Units.CUB_CM\",\n CUB_DM: \"Units.CUB_DM\",\n CUB_FT: \"Units.CUB_FT\",\n CUB_IN: \"Units.CUB_IN\",\n CUB_KM: \"Units.CUB_KM\",\n CUB_M: \"Units.CUB_M\",\n CUB_MILE: \"Units.CUB_MILE\",\n CUB_MM: \"Units.CUB_MM\",\n CUB_UM: \"Units.CUB_UM\",\n CUB_US_SURVEY_FT: \"Units.CUB_US_SURVEY_FT\",\n CUB_US_SURVEY_IN: \"Units.CUB_US_SURVEY_IN\",\n CUB_US_SURVEY_MILE: \"Units.CUB_US_SURVEY_MILE\",\n CUB_US_SURVEY_YRD: \"Units.CUB_US_SURVEY_YRD\",\n CUB_YRD: \"Units.CUB_YRD\",\n GALLON: \"Units.GALLON\",\n GALLON_IMPERIAL: \"Units.GALLON_IMPERIAL\",\n LITRE: \"Units.LITRE\",\n MICROLITRE: \"Units.MICROLITRE\",\n MILLILITRE: \"Units.MILLILITRE\",\n MILLION_GALLON: \"Units.MILLION_GALLON\",\n MILLION_LITRE: \"Units.MILLION_LITRE\",\n THOUSAND_GALLON: \"Units.THOUSAND_GALLON\",\n THOUSAND_LITRE: \"Units.THOUSAND_LITRE\",\n },\n VOLUME_PER_LENGTH: {\n CUB_FT_PER_FT: \"Units.CUB_FT_PER_FT\",\n CUB_M_PER_M: \"Units.CUB_M_PER_M\",\n },\n VOLUME_RATIO: {\n CUB_M_PER_CUB_M: \"Units.CUB_M_PER_CUB_M\",\n LITRE_PER_LITRE: \"Units.LITRE_PER_LITRE\",\n },\n VOLUMETRIC_FLOW: {\n ACRE_FT_PER_DAY: \"Units.ACRE_FT_PER_DAY\",\n ACRE_FT_PER_HR: \"Units.ACRE_FT_PER_HR\",\n ACRE_FT_PER_MIN: \"Units.ACRE_FT_PER_MIN\",\n ACRE_IN_PER_DAY: \"Units.ACRE_IN_PER_DAY\",\n ACRE_IN_PER_HR: \"Units.ACRE_IN_PER_HR\",\n ACRE_IN_PER_MIN: \"Units.ACRE_IN_PER_MIN\",\n CUB_FT_PER_DAY: \"Units.CUB_FT_PER_DAY\",\n CUB_FT_PER_MIN: \"Units.CUB_FT_PER_MIN\",\n CUB_FT_PER_SEC: \"Units.CUB_FT_PER_SEC\",\n CUB_IN_PER_MIN: \"Units.CUB_IN_PER_MIN\",\n CUB_IN_PER_SEC: \"Units.CUB_IN_PER_SEC\",\n CUB_M_PER_DAY: \"Units.CUB_M_PER_DAY\",\n CUB_M_PER_HR: \"Units.CUB_M_PER_HR\",\n CUB_M_PER_MIN: \"Units.CUB_M_PER_MIN\",\n CUB_M_PER_SEC: \"Units.CUB_M_PER_SEC\",\n GALLON_IMPERIAL_PER_DAY: \"Units.GALLON_IMPERIAL_PER_DAY\",\n GALLON_IMPERIAL_PER_HR: \"Units.GALLON_IMPERIAL_PER_HR\",\n GALLON_IMPERIAL_PER_MIN: \"Units.GALLON_IMPERIAL_PER_MIN\",\n GALLON_IMPERIAL_PER_SEC: \"Units.GALLON_IMPERIAL_PER_SEC\",\n GALLON_PER_DAY: \"Units.GALLON_PER_DAY\",\n GALLON_PER_HR: \"Units.GALLON_PER_HR\",\n GALLON_PER_MIN: \"Units.GALLON_PER_MIN\",\n GALLON_PER_SEC: \"Units.GALLON_PER_SEC\",\n LITRE_PER_DAY: \"Units.LITRE_PER_DAY\",\n LITRE_PER_HR: \"Units.LITRE_PER_HR\",\n LITRE_PER_MIN: \"Units.LITRE_PER_MIN\",\n LITRE_PER_SEC: \"Units.LITRE_PER_SEC\",\n },\n WORK: {\n BTU: \"Units.BTU\",\n FT_PDL: \"Units.FT_PDL\",\n GJ: \"Units.GJ\",\n GWH: \"Units.GWH\",\n J: \"Units.J\",\n KILOBTU: \"Units.KILOBTU\",\n KJ: \"Units.KJ\",\n KWH: \"Units.KWH\",\n MEGAJ: \"Units.MEGAJ\",\n MEGAWH: \"Units.MEGAWH\",\n WATT_SECOND: \"Units.WATT_SECOND\",\n },\n} as const;\n\n/** Canonical bundled phenomenon identifiers from the bundled Units.json asset.\n * @beta\n */\nexport const Phenomena = {\n ACCELERATION: \"Units.ACCELERATION\",\n ANGLE: \"Units.ANGLE\",\n ANGULAR_VELOCITY: \"Units.ANGULAR_VELOCITY\",\n APPARENT_POWER: \"Units.APPARENT_POWER\",\n AREA: \"Units.AREA\",\n AREA_MOMENT_INERTIA: \"Units.AREA_MOMENT_INERTIA\",\n AREA_SPRING_CONSTANT: \"Units.AREA_SPRING_CONSTANT\",\n AREA_TORQUE: \"Units.AREA_TORQUE\",\n CAPITA: \"Units.CAPITA\",\n CURRENCY: \"Units.CURRENCY\",\n CURRENT: \"Units.CURRENT\",\n DENSITY: \"Units.DENSITY\",\n DYNAMIC_VISCOSITY: \"Units.DYNAMIC_VISCOSITY\",\n ELECTRIC_CHARGE: \"Units.ELECTRIC_CHARGE\",\n ELECTRIC_POTENTIAL: \"Units.ELECTRIC_POTENTIAL\",\n ELECTRICAL_RESISTANCE: \"Units.ELECTRICAL_RESISTANCE\",\n ELECTRICAL_RESISTIVITY: \"Units.ELECTRICAL_RESISTIVITY\",\n ENERGY_DENSITY: \"Units.ENERGY_DENSITY\",\n ENTROPY: \"Units.ENTROPY\",\n FLOW_DENSITY_PER_AREA: \"Units.FLOW_DENSITY_PER_AREA\",\n FORCE: \"Units.FORCE\",\n FORCE_DENSITY: \"Units.FORCE_DENSITY\",\n FORCE_DISPLAY_SCALE: \"Units.FORCE_DISPLAY_SCALE\",\n FREQUENCY: \"Units.FREQUENCY\",\n HEAT_FLUX_DENSITY: \"Units.HEAT_FLUX_DENSITY\",\n HEAT_TRANSFER: \"Units.HEAT_TRANSFER\",\n HORIZONTAL_DIRECTION: \"Units.HORIZONTAL_DIRECTION\",\n ILLUMINANCE: \"Units.ILLUMINANCE\",\n KINEMATIC_VISCOSITY: \"Units.KINEMATIC_VISCOSITY\",\n LENGTH: \"Units.LENGTH\",\n LENGTH_RATIO: \"Units.LENGTH_RATIO\",\n LINEAR_COEFFICIENT_OF_THERMAL_EXPANSION: \"Units.LINEAR_COEFFICIENT_OF_THERMAL_EXPANSION\",\n LINEAR_DENSITY: \"Units.LINEAR_DENSITY\",\n LINEAR_LOAD: \"Units.LINEAR_LOAD\",\n LINEAR_RATE: \"Units.LINEAR_RATE\",\n LINEAR_ROTATIONAL_SPRING_CONSTANT: \"Units.LINEAR_ROTATIONAL_SPRING_CONSTANT\",\n LINEAR_SPRING_CONSTANT: \"Units.LINEAR_SPRING_CONSTANT\",\n LINEAR_TORQUE: \"Units.LINEAR_TORQUE\",\n LUMINOSITY: \"Units.LUMINOSITY\",\n LUMINOUS_EFFICACY: \"Units.LUMINOUS_EFFICACY\",\n LUMINOUS_FLUX: \"Units.LUMINOUS_FLUX\",\n MASS: \"Units.MASS\",\n MASS_FLOW: \"Units.MASS_FLOW\",\n MASS_RATIO: \"Units.MASS_RATIO\",\n MOLAR_CONCENTRATION: \"Units.MOLAR_CONCENTRATION\",\n MOLAR_FLOW: \"Units.MOLAR_FLOW\",\n MOLAR_VOLUME: \"Units.MOLAR_VOLUME\",\n MOLE: \"Units.MOLE\",\n MOMENT_DISPLAY_SCALE: \"Units.MOMENT_DISPLAY_SCALE\",\n NUMBER: \"Units.NUMBER\",\n PERCENTAGE: \"Units.PERCENTAGE\",\n PIPE_DIAMETER_LENGTH: \"Units.PIPE_DIAMETER_LENGTH\",\n POPULATION_DENSITY: \"Units.POPULATION_DENSITY\",\n POWER: \"Units.POWER\",\n PRESSURE: \"Units.PRESSURE\",\n PRESSURE_GRADIENT: \"Units.PRESSURE_GRADIENT\",\n PROBABILITY: \"Units.PROBABILITY\",\n ROTATIONAL_SPRING_CONSTANT: \"Units.ROTATIONAL_SPRING_CONSTANT\",\n SLOPE: \"Units.SLOPE\",\n SOLIDANGLE: \"Units.SOLIDANGLE\",\n SPECIFIC_ENERGY: \"Units.SPECIFIC_ENERGY\",\n SPECIFIC_HEAT_CAPACITY: \"Units.SPECIFIC_HEAT_CAPACITY\",\n SPECIFIC_HEAT_CAPACITY_MOLAR: \"Units.SPECIFIC_HEAT_CAPACITY_MOLAR\",\n SPECIFIC_VOLUME: \"Units.SPECIFIC_VOLUME\",\n SPRING_CONSTANT: \"Units.SPRING_CONSTANT\",\n SURFACE_DENSITY: \"Units.SURFACE_DENSITY\",\n TEMPERATURE: \"Units.TEMPERATURE\",\n TEMPERATURE_CHANGE: \"Units.TEMPERATURE_CHANGE\",\n TEMPERATURE_GRADIENT: \"Units.TEMPERATURE_GRADIENT\",\n THERMAL_CONDUCTIVITY: \"Units.THERMAL_CONDUCTIVITY\",\n THERMAL_INSULANCE: \"Units.THERMAL_INSULANCE\",\n THREAD_PITCH: \"Units.THREAD_PITCH\",\n TIME: \"Units.TIME\",\n TORQUE: \"Units.TORQUE\",\n TORSIONAL_WARPING_CONSTANT: \"Units.TORSIONAL_WARPING_CONSTANT\",\n VELOCITY: \"Units.VELOCITY\",\n VOLUME: \"Units.VOLUME\",\n VOLUME_PER_LENGTH: \"Units.VOLUME_PER_LENGTH\",\n VOLUME_RATIO: \"Units.VOLUME_RATIO\",\n VOLUMETRIC_FLOW: \"Units.VOLUMETRIC_FLOW\",\n WORK: \"Units.WORK\",\n} as const;\n\n/** Canonical bundled unit system identifiers from the bundled Units.json asset.\n * @beta\n */\nexport const UnitSystems = {\n CGS: \"Units.CGS\",\n CONSTANT: \"Units.CONSTANT\",\n FINANCE: \"Units.FINANCE\",\n IMPERIAL: \"Units.IMPERIAL\",\n INDUSTRIAL: \"Units.INDUSTRIAL\",\n INTERNATIONAL: \"Units.INTERNATIONAL\",\n MARITIME: \"Units.MARITIME\",\n METRIC: \"Units.METRIC\",\n SI: \"Units.SI\",\n STATISTICS: \"Units.STATISTICS\",\n USCUSTOM: \"Units.USCUSTOM\",\n USSURVEY: \"Units.USSURVEY\",\n} as const;\n\n/** Bundled canonical unit-name identifiers generated from Units.\n * @beta\n */\nexport type UnitName = NestedValueOf<typeof Units>;\n\n/** Bundled canonical phenomenon-name identifiers generated from Phenomena.\n * @beta\n */\nexport type PhenomenonName = ValueOf<typeof Phenomena>;\n\n/** Bundled canonical unit-system identifiers generated from UnitSystems.\n * @beta\n */\nexport type UnitSystemName = ValueOf<typeof UnitSystems>;\n"]}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { type UnitConversionProps, type UnitProps } from "../Interfaces";
|
|
2
|
+
import type { SerializedUnitSchema } from "../SerializedUnitSchema";
|
|
3
|
+
import { type ResolvedUnit } from "../UnitConversion/UnitDefinitionResolver";
|
|
4
|
+
interface IndexedUnit {
|
|
5
|
+
readonly props: UnitProps;
|
|
6
|
+
readonly resolved: ResolvedUnit;
|
|
7
|
+
}
|
|
8
|
+
interface InvertedUnitSourceEntry {
|
|
9
|
+
readonly props: UnitProps;
|
|
10
|
+
readonly invertsUnitName: string;
|
|
11
|
+
}
|
|
12
|
+
/** Immutable lookup indexes resolved from the bundled Units schema data.
|
|
13
|
+
* @internal
|
|
14
|
+
*/
|
|
15
|
+
export interface ResolvedBasicUnitsData {
|
|
16
|
+
readonly nameMap: Map<string, IndexedUnit>;
|
|
17
|
+
readonly labelMap: Map<string, IndexedUnit[]>;
|
|
18
|
+
readonly phenomenonMap: Map<string, IndexedUnit[]>;
|
|
19
|
+
readonly invertedUnitSources: Map<string, InvertedUnitSourceEntry>;
|
|
20
|
+
readonly schemaName: string;
|
|
21
|
+
}
|
|
22
|
+
/** Builds lookup indexes and conversion metadata from a serialized Units schema.
|
|
23
|
+
* @internal
|
|
24
|
+
*/
|
|
25
|
+
export declare function buildResolvedBasicUnitsData(schema: SerializedUnitSchema): ResolvedBasicUnitsData;
|
|
26
|
+
/** Computes `UnitConversionProps` metadata between two units from the resolved basic-units state.
|
|
27
|
+
* This resolves lookup/conversion metadata only; callers should apply the returned conversion through
|
|
28
|
+
* `UnitConversions.convertValue(...)` or other higher-level helpers rather than using the raw factors directly.
|
|
29
|
+
* @internal
|
|
30
|
+
*/
|
|
31
|
+
export declare function getBasicUnitConversion(state: ResolvedBasicUnitsData, fromUnit: UnitProps, toUnit: UnitProps): UnitConversionProps;
|
|
32
|
+
export {};
|
|
33
|
+
//# sourceMappingURL=BasicUnitConversionData.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BasicUnitConversionData.d.ts","sourceRoot":"","sources":["../../../src/internal/BasicUnitConversionData.ts"],"names":[],"mappings":"AAIA,OAAO,EAAwB,KAAK,mBAAmB,EAAE,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AAC/F,OAAO,KAAK,EAA0C,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC5G,OAAO,EAAE,KAAK,YAAY,EAA0B,MAAM,0CAA0C,CAAC;AAGrG,UAAU,WAAW;IACnB,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;CACjC;AAED,UAAU,uBAAuB;IAC/B,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC3C,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;IAC9C,QAAQ,CAAC,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;IACnD,QAAQ,CAAC,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC;IACnE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,oBAAoB,GAAG,sBAAsB,CA8EhG;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,sBAAsB,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,mBAAmB,CAgDjI"}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.buildResolvedBasicUnitsData = buildResolvedBasicUnitsData;
|
|
4
|
+
exports.getBasicUnitConversion = getBasicUnitConversion;
|
|
5
|
+
/*---------------------------------------------------------------------------------------------
|
|
6
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
7
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
8
|
+
*--------------------------------------------------------------------------------------------*/
|
|
9
|
+
const Interfaces_1 = require("../Interfaces");
|
|
10
|
+
const UnitDefinitionResolver_1 = require("../UnitConversion/UnitDefinitionResolver");
|
|
11
|
+
const nameUtils_1 = require("../UnitConversion/nameUtils");
|
|
12
|
+
/** Builds lookup indexes and conversion metadata from a serialized Units schema.
|
|
13
|
+
* @internal
|
|
14
|
+
*/
|
|
15
|
+
function buildResolvedBasicUnitsData(schema) {
|
|
16
|
+
const nameMap = new Map();
|
|
17
|
+
const labelMap = new Map();
|
|
18
|
+
const phenomenonMap = new Map();
|
|
19
|
+
const invertedUnitSources = new Map();
|
|
20
|
+
const resolver = new UnitDefinitionResolver_1.UnitDefinitionResolver(schema);
|
|
21
|
+
const resolved = resolver.resolveAll();
|
|
22
|
+
for (const [name, entry] of resolved) {
|
|
23
|
+
const item = schema.items[name];
|
|
24
|
+
const phenomenon = item.phenomenon;
|
|
25
|
+
const unitSystem = item.unitSystem;
|
|
26
|
+
const fullName = `${schema.name}.${name}`;
|
|
27
|
+
const props = {
|
|
28
|
+
name: fullName,
|
|
29
|
+
label: entry.label,
|
|
30
|
+
phenomenon,
|
|
31
|
+
isValid: true,
|
|
32
|
+
system: unitSystem,
|
|
33
|
+
};
|
|
34
|
+
const indexed = { props, resolved: entry };
|
|
35
|
+
nameMap.set(fullName, indexed);
|
|
36
|
+
const lowerLabel = entry.label.toLowerCase();
|
|
37
|
+
const byLabel = labelMap.get(lowerLabel) ?? [];
|
|
38
|
+
byLabel.push(indexed);
|
|
39
|
+
labelMap.set(lowerLabel, byLabel);
|
|
40
|
+
const byPhen = phenomenonMap.get(phenomenon) ?? [];
|
|
41
|
+
byPhen.push(indexed);
|
|
42
|
+
phenomenonMap.set(phenomenon, byPhen);
|
|
43
|
+
}
|
|
44
|
+
for (const [name, item] of Object.entries(schema.items)) {
|
|
45
|
+
if (item.schemaItemType !== "InvertedUnit") {
|
|
46
|
+
continue;
|
|
47
|
+
}
|
|
48
|
+
const inv = item;
|
|
49
|
+
const fullName = `${schema.name}.${name}`;
|
|
50
|
+
const invertsName = (0, nameUtils_1.qualifyItemName)(inv.invertsUnit, schema.name);
|
|
51
|
+
const unitSystem = inv.unitSystem;
|
|
52
|
+
const invertedSource = nameMap.get(invertsName);
|
|
53
|
+
const phenomenon = invertedSource?.props.phenomenon ?? "";
|
|
54
|
+
const props = {
|
|
55
|
+
name: fullName,
|
|
56
|
+
label: inv.label ?? name,
|
|
57
|
+
phenomenon,
|
|
58
|
+
isValid: true,
|
|
59
|
+
system: unitSystem,
|
|
60
|
+
};
|
|
61
|
+
invertedUnitSources.set(fullName, { props, invertsUnitName: invertsName });
|
|
62
|
+
if (invertedSource) {
|
|
63
|
+
const indexed = {
|
|
64
|
+
props,
|
|
65
|
+
resolved: { ...invertedSource.resolved, name: fullName, label: props.label, unitSystem },
|
|
66
|
+
};
|
|
67
|
+
nameMap.set(fullName, indexed);
|
|
68
|
+
const lowerLabel = props.label.toLowerCase();
|
|
69
|
+
const byLabel = labelMap.get(lowerLabel) ?? [];
|
|
70
|
+
byLabel.push(indexed);
|
|
71
|
+
labelMap.set(lowerLabel, byLabel);
|
|
72
|
+
const byPhen = phenomenonMap.get(phenomenon) ?? [];
|
|
73
|
+
byPhen.push(indexed);
|
|
74
|
+
phenomenonMap.set(phenomenon, byPhen);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
return { nameMap, labelMap, phenomenonMap, invertedUnitSources, schemaName: schema.name };
|
|
78
|
+
}
|
|
79
|
+
/** Computes `UnitConversionProps` metadata between two units from the resolved basic-units state.
|
|
80
|
+
* This resolves lookup/conversion metadata only; callers should apply the returned conversion through
|
|
81
|
+
* `UnitConversions.convertValue(...)` or other higher-level helpers rather than using the raw factors directly.
|
|
82
|
+
* @internal
|
|
83
|
+
*/
|
|
84
|
+
function getBasicUnitConversion(state, fromUnit, toUnit) {
|
|
85
|
+
const from = state.nameMap.get(fromUnit.name);
|
|
86
|
+
const to = state.nameMap.get(toUnit.name);
|
|
87
|
+
if (!from || !to) {
|
|
88
|
+
return { factor: 1.0, offset: 0.0, error: true };
|
|
89
|
+
}
|
|
90
|
+
const fromInverted = state.invertedUnitSources.get(fromUnit.name);
|
|
91
|
+
const toInverted = state.invertedUnitSources.get(toUnit.name);
|
|
92
|
+
const fromPhenomenon = fromInverted
|
|
93
|
+
? state.nameMap.get(fromInverted.invertsUnitName)?.props.phenomenon
|
|
94
|
+
: from.props.phenomenon;
|
|
95
|
+
const toPhenomenon = toInverted
|
|
96
|
+
? state.nameMap.get(toInverted.invertsUnitName)?.props.phenomenon
|
|
97
|
+
: to.props.phenomenon;
|
|
98
|
+
if (fromPhenomenon !== toPhenomenon) {
|
|
99
|
+
return { factor: 1.0, offset: 0.0, error: true };
|
|
100
|
+
}
|
|
101
|
+
if (fromInverted && toInverted) {
|
|
102
|
+
const innerFrom = state.nameMap.get(fromInverted.invertsUnitName);
|
|
103
|
+
const innerTo = state.nameMap.get(toInverted.invertsUnitName);
|
|
104
|
+
if (innerFrom && innerTo) {
|
|
105
|
+
const c = innerFrom.resolved.conversion.inverse().compose(innerTo.resolved.conversion);
|
|
106
|
+
return { factor: c.factor, offset: c.offset };
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
if (fromInverted) {
|
|
110
|
+
const innerFrom = state.nameMap.get(fromInverted.invertsUnitName);
|
|
111
|
+
if (innerFrom) {
|
|
112
|
+
const c = innerFrom.resolved.conversion.inverse().compose(to.resolved.conversion);
|
|
113
|
+
return { factor: c.factor, offset: c.offset, inversion: Interfaces_1.UnitConversionInvert.InvertPreConversion };
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
if (toInverted) {
|
|
117
|
+
const innerTo = state.nameMap.get(toInverted.invertsUnitName);
|
|
118
|
+
if (innerTo) {
|
|
119
|
+
const c = from.resolved.conversion.inverse().compose(innerTo.resolved.conversion);
|
|
120
|
+
return { factor: c.factor, offset: c.offset, inversion: Interfaces_1.UnitConversionInvert.InvertPostConversion };
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
const conv = from.resolved.conversion.inverse().compose(to.resolved.conversion);
|
|
124
|
+
return { factor: conv.factor, offset: conv.offset };
|
|
125
|
+
}
|
|
126
|
+
//# sourceMappingURL=BasicUnitConversionData.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BasicUnitConversionData.js","sourceRoot":"","sources":["../../../src/internal/BasicUnitConversionData.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\nimport { UnitConversionInvert, type UnitConversionProps, type UnitProps } from \"../Interfaces\";\nimport type { SerializedInvertedUnit, SerializedUnit, SerializedUnitSchema } from \"../SerializedUnitSchema\";\nimport { type ResolvedUnit, UnitDefinitionResolver } from \"../UnitConversion/UnitDefinitionResolver\";\nimport { qualifyItemName } from \"../UnitConversion/nameUtils\";\n\ninterface IndexedUnit {\n readonly props: UnitProps;\n readonly resolved: ResolvedUnit;\n}\n\ninterface InvertedUnitSourceEntry {\n readonly props: UnitProps;\n readonly invertsUnitName: string;\n}\n\n/** Immutable lookup indexes resolved from the bundled Units schema data.\n * @internal\n */\nexport interface ResolvedBasicUnitsData {\n readonly nameMap: Map<string, IndexedUnit>;\n readonly labelMap: Map<string, IndexedUnit[]>;\n readonly phenomenonMap: Map<string, IndexedUnit[]>;\n readonly invertedUnitSources: Map<string, InvertedUnitSourceEntry>;\n readonly schemaName: string;\n}\n\n/** Builds lookup indexes and conversion metadata from a serialized Units schema.\n * @internal\n */\nexport function buildResolvedBasicUnitsData(schema: SerializedUnitSchema): ResolvedBasicUnitsData {\n const nameMap = new Map<string, IndexedUnit>();\n const labelMap = new Map<string, IndexedUnit[]>();\n const phenomenonMap = new Map<string, IndexedUnit[]>();\n const invertedUnitSources = new Map<string, InvertedUnitSourceEntry>();\n\n const resolver = new UnitDefinitionResolver(schema);\n const resolved = resolver.resolveAll();\n\n for (const [name, entry] of resolved) {\n const item = schema.items[name] as SerializedUnit;\n const phenomenon = item.phenomenon;\n const unitSystem = item.unitSystem;\n\n const fullName = `${schema.name}.${name}`;\n const props: UnitProps = {\n name: fullName,\n label: entry.label,\n phenomenon,\n isValid: true,\n system: unitSystem,\n };\n\n const indexed: IndexedUnit = { props, resolved: entry };\n\n nameMap.set(fullName, indexed);\n const lowerLabel = entry.label.toLowerCase();\n const byLabel = labelMap.get(lowerLabel) ?? [];\n byLabel.push(indexed);\n labelMap.set(lowerLabel, byLabel);\n\n const byPhen = phenomenonMap.get(phenomenon) ?? [];\n byPhen.push(indexed);\n phenomenonMap.set(phenomenon, byPhen);\n }\n\n for (const [name, item] of Object.entries(schema.items)) {\n if (item.schemaItemType !== \"InvertedUnit\") {\n continue;\n }\n\n const inv: SerializedInvertedUnit = item;\n const fullName = `${schema.name}.${name}`;\n const invertsName = qualifyItemName(inv.invertsUnit, schema.name);\n const unitSystem = inv.unitSystem;\n\n const invertedSource = nameMap.get(invertsName);\n const phenomenon = invertedSource?.props.phenomenon ?? \"\";\n\n const props: UnitProps = {\n name: fullName,\n label: inv.label ?? name,\n phenomenon,\n isValid: true,\n system: unitSystem,\n };\n\n invertedUnitSources.set(fullName, { props, invertsUnitName: invertsName });\n\n if (invertedSource) {\n const indexed: IndexedUnit = {\n props,\n resolved: { ...invertedSource.resolved, name: fullName, label: props.label, unitSystem },\n };\n nameMap.set(fullName, indexed);\n\n const lowerLabel = props.label.toLowerCase();\n const byLabel = labelMap.get(lowerLabel) ?? [];\n byLabel.push(indexed);\n labelMap.set(lowerLabel, byLabel);\n\n const byPhen = phenomenonMap.get(phenomenon) ?? [];\n byPhen.push(indexed);\n phenomenonMap.set(phenomenon, byPhen);\n }\n }\n\n return { nameMap, labelMap, phenomenonMap, invertedUnitSources, schemaName: schema.name };\n}\n\n/** Computes `UnitConversionProps` metadata between two units from the resolved basic-units state.\n * This resolves lookup/conversion metadata only; callers should apply the returned conversion through\n * `UnitConversions.convertValue(...)` or other higher-level helpers rather than using the raw factors directly.\n * @internal\n */\nexport function getBasicUnitConversion(state: ResolvedBasicUnitsData, fromUnit: UnitProps, toUnit: UnitProps): UnitConversionProps {\n const from = state.nameMap.get(fromUnit.name);\n const to = state.nameMap.get(toUnit.name);\n\n if (!from || !to) {\n return { factor: 1.0, offset: 0.0, error: true };\n }\n\n const fromInverted = state.invertedUnitSources.get(fromUnit.name);\n const toInverted = state.invertedUnitSources.get(toUnit.name);\n\n const fromPhenomenon = fromInverted\n ? state.nameMap.get(fromInverted.invertsUnitName)?.props.phenomenon\n : from.props.phenomenon;\n const toPhenomenon = toInverted\n ? state.nameMap.get(toInverted.invertsUnitName)?.props.phenomenon\n : to.props.phenomenon;\n if (fromPhenomenon !== toPhenomenon) {\n return { factor: 1.0, offset: 0.0, error: true };\n }\n\n if (fromInverted && toInverted) {\n const innerFrom = state.nameMap.get(fromInverted.invertsUnitName);\n const innerTo = state.nameMap.get(toInverted.invertsUnitName);\n if (innerFrom && innerTo) {\n const c = innerFrom.resolved.conversion.inverse().compose(innerTo.resolved.conversion);\n return { factor: c.factor, offset: c.offset };\n }\n }\n\n if (fromInverted) {\n const innerFrom = state.nameMap.get(fromInverted.invertsUnitName);\n if (innerFrom) {\n const c = innerFrom.resolved.conversion.inverse().compose(to.resolved.conversion);\n return { factor: c.factor, offset: c.offset, inversion: UnitConversionInvert.InvertPreConversion };\n }\n }\n\n if (toInverted) {\n const innerTo = state.nameMap.get(toInverted.invertsUnitName);\n if (innerTo) {\n const c = from.resolved.conversion.inverse().compose(innerTo.resolved.conversion);\n return { factor: c.factor, offset: c.offset, inversion: UnitConversionInvert.InvertPostConversion };\n }\n }\n\n const conv = from.resolved.conversion.inverse().compose(to.resolved.conversion);\n return { factor: conv.factor, offset: conv.offset };\n}\n"]}
|