@itwin/ecschema-metadata 5.9.0-dev.8 → 5.9.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.
Files changed (220) hide show
  1. package/CHANGELOG.md +24 -1
  2. package/lib/cjs/Constants.js.map +1 -1
  3. package/lib/cjs/DelayedPromise.js.map +1 -1
  4. package/lib/cjs/Deserialization/AbstractParser.js.map +1 -1
  5. package/lib/cjs/Deserialization/Helper.d.ts +1 -1
  6. package/lib/cjs/Deserialization/Helper.d.ts.map +1 -1
  7. package/lib/cjs/Deserialization/Helper.js +35 -21
  8. package/lib/cjs/Deserialization/Helper.js.map +1 -1
  9. package/lib/cjs/Deserialization/JsonParser.js +7 -7
  10. package/lib/cjs/Deserialization/JsonParser.js.map +1 -1
  11. package/lib/cjs/Deserialization/JsonProps.js.map +1 -1
  12. package/lib/cjs/Deserialization/SchemaGraphUtil.js.map +1 -1
  13. package/lib/cjs/Deserialization/XmlParser.js.map +1 -1
  14. package/lib/cjs/Deserialization/XmlSerializationUtils.d.ts.map +1 -1
  15. package/lib/cjs/Deserialization/XmlSerializationUtils.js +1 -1
  16. package/lib/cjs/Deserialization/XmlSerializationUtils.js.map +1 -1
  17. package/lib/cjs/ECName.js.map +1 -1
  18. package/lib/cjs/ECObjects.js.map +1 -1
  19. package/lib/cjs/Exception.js.map +1 -1
  20. package/lib/cjs/Formatting/FormatSetFormatsProvider.d.ts +3 -2
  21. package/lib/cjs/Formatting/FormatSetFormatsProvider.d.ts.map +1 -1
  22. package/lib/cjs/Formatting/FormatSetFormatsProvider.js +7 -6
  23. package/lib/cjs/Formatting/FormatSetFormatsProvider.js.map +1 -1
  24. package/lib/cjs/Formatting/SchemaFormatsProvider.d.ts +1 -1
  25. package/lib/cjs/Formatting/SchemaFormatsProvider.d.ts.map +1 -1
  26. package/lib/cjs/Formatting/SchemaFormatsProvider.js +6 -5
  27. package/lib/cjs/Formatting/SchemaFormatsProvider.js.map +1 -1
  28. package/lib/cjs/IncrementalLoading/ClassParsers.js.map +1 -1
  29. package/lib/cjs/IncrementalLoading/ECSqlSchemaLocater.js.map +1 -1
  30. package/lib/cjs/IncrementalLoading/FullSchemaQueries.js +466 -466
  31. package/lib/cjs/IncrementalLoading/FullSchemaQueries.js.map +1 -1
  32. package/lib/cjs/IncrementalLoading/IncrementalSchemaLocater.js +1 -1
  33. package/lib/cjs/IncrementalLoading/IncrementalSchemaLocater.js.map +1 -1
  34. package/lib/cjs/IncrementalLoading/IncrementalSchemaReader.js.map +1 -1
  35. package/lib/cjs/IncrementalLoading/SchemaItemParsers.js.map +1 -1
  36. package/lib/cjs/IncrementalLoading/SchemaItemQueries.js +235 -235
  37. package/lib/cjs/IncrementalLoading/SchemaItemQueries.js.map +1 -1
  38. package/lib/cjs/IncrementalLoading/SchemaParser.js.map +1 -1
  39. package/lib/cjs/IncrementalLoading/SchemaStubQueries.js +309 -309
  40. package/lib/cjs/IncrementalLoading/SchemaStubQueries.js.map +1 -1
  41. package/lib/cjs/Interfaces.js.map +1 -1
  42. package/lib/cjs/Metadata/Class.d.ts.map +1 -1
  43. package/lib/cjs/Metadata/Class.js +6 -4
  44. package/lib/cjs/Metadata/Class.js.map +1 -1
  45. package/lib/cjs/Metadata/Constant.js.map +1 -1
  46. package/lib/cjs/Metadata/CustomAttribute.js.map +1 -1
  47. package/lib/cjs/Metadata/CustomAttributeClass.js.map +1 -1
  48. package/lib/cjs/Metadata/EntityClass.d.ts.map +1 -1
  49. package/lib/cjs/Metadata/EntityClass.js +2 -2
  50. package/lib/cjs/Metadata/EntityClass.js.map +1 -1
  51. package/lib/cjs/Metadata/Enumeration.js.map +1 -1
  52. package/lib/cjs/Metadata/Format.js.map +1 -1
  53. package/lib/cjs/Metadata/InvertedUnit.js +2 -2
  54. package/lib/cjs/Metadata/InvertedUnit.js.map +1 -1
  55. package/lib/cjs/Metadata/KindOfQuantity.js +1 -1
  56. package/lib/cjs/Metadata/KindOfQuantity.js.map +1 -1
  57. package/lib/cjs/Metadata/Mixin.js.map +1 -1
  58. package/lib/cjs/Metadata/OverrideFormat.js.map +1 -1
  59. package/lib/cjs/Metadata/Phenomenon.js.map +1 -1
  60. package/lib/cjs/Metadata/Property.d.ts.map +1 -1
  61. package/lib/cjs/Metadata/Property.js +6 -3
  62. package/lib/cjs/Metadata/Property.js.map +1 -1
  63. package/lib/cjs/Metadata/PropertyCategory.js.map +1 -1
  64. package/lib/cjs/Metadata/RelationshipClass.d.ts.map +1 -1
  65. package/lib/cjs/Metadata/RelationshipClass.js +5 -4
  66. package/lib/cjs/Metadata/RelationshipClass.js.map +1 -1
  67. package/lib/cjs/Metadata/Schema.js +1 -1
  68. package/lib/cjs/Metadata/Schema.js.map +1 -1
  69. package/lib/cjs/Metadata/SchemaItem.js +2 -2
  70. package/lib/cjs/Metadata/SchemaItem.js.map +1 -1
  71. package/lib/cjs/Metadata/Unit.js +2 -2
  72. package/lib/cjs/Metadata/Unit.js.map +1 -1
  73. package/lib/cjs/Metadata/UnitSystem.js.map +1 -1
  74. package/lib/cjs/PropertyTypes.js.map +1 -1
  75. package/lib/cjs/SchemaJsonLocater.js.map +1 -1
  76. package/lib/cjs/SchemaKey.js.map +1 -1
  77. package/lib/cjs/SchemaLoader.js.map +1 -1
  78. package/lib/cjs/SchemaPartVisitorDelegate.js.map +1 -1
  79. package/lib/cjs/UnitConversion/UnitConverter.d.ts +1 -1
  80. package/lib/cjs/UnitConversion/UnitConverter.d.ts.map +1 -1
  81. package/lib/cjs/UnitConversion/UnitConverter.js +4 -4
  82. package/lib/cjs/UnitConversion/UnitConverter.js.map +1 -1
  83. package/lib/cjs/UnitConversion/UnitTree.d.ts +3 -4
  84. package/lib/cjs/UnitConversion/UnitTree.d.ts.map +1 -1
  85. package/lib/cjs/UnitConversion/UnitTree.js +11 -11
  86. package/lib/cjs/UnitConversion/UnitTree.js.map +1 -1
  87. package/lib/cjs/UnitProvider/SchemaUnitProvider.d.ts +3 -0
  88. package/lib/cjs/UnitProvider/SchemaUnitProvider.d.ts.map +1 -1
  89. package/lib/cjs/UnitProvider/SchemaUnitProvider.js +3 -0
  90. package/lib/cjs/UnitProvider/SchemaUnitProvider.js.map +1 -1
  91. package/lib/cjs/Validation/SchemaWalker.js.map +1 -1
  92. package/lib/cjs/ecschema-metadata.d.ts +0 -1
  93. package/lib/cjs/ecschema-metadata.d.ts.map +1 -1
  94. package/lib/cjs/ecschema-metadata.js +0 -1
  95. package/lib/cjs/ecschema-metadata.js.map +1 -1
  96. package/lib/cjs/utils/ECClassHierarchy.js.map +1 -1
  97. package/lib/cjs/utils/SchemaGraph.js.map +1 -1
  98. package/lib/cjs/utils/SchemaLoadingController.js.map +1 -1
  99. package/lib/esm/Constants.js.map +1 -1
  100. package/lib/esm/DelayedPromise.js.map +1 -1
  101. package/lib/esm/Deserialization/AbstractParser.js.map +1 -1
  102. package/lib/esm/Deserialization/Helper.d.ts +1 -1
  103. package/lib/esm/Deserialization/Helper.d.ts.map +1 -1
  104. package/lib/esm/Deserialization/Helper.js +35 -21
  105. package/lib/esm/Deserialization/Helper.js.map +1 -1
  106. package/lib/esm/Deserialization/JsonParser.js +7 -7
  107. package/lib/esm/Deserialization/JsonParser.js.map +1 -1
  108. package/lib/esm/Deserialization/JsonProps.js.map +1 -1
  109. package/lib/esm/Deserialization/SchemaGraphUtil.js.map +1 -1
  110. package/lib/esm/Deserialization/XmlParser.js.map +1 -1
  111. package/lib/esm/Deserialization/XmlSerializationUtils.d.ts.map +1 -1
  112. package/lib/esm/Deserialization/XmlSerializationUtils.js +1 -1
  113. package/lib/esm/Deserialization/XmlSerializationUtils.js.map +1 -1
  114. package/lib/esm/ECName.js.map +1 -1
  115. package/lib/esm/ECObjects.js.map +1 -1
  116. package/lib/esm/Exception.js.map +1 -1
  117. package/lib/esm/Formatting/FormatSetFormatsProvider.d.ts +3 -2
  118. package/lib/esm/Formatting/FormatSetFormatsProvider.d.ts.map +1 -1
  119. package/lib/esm/Formatting/FormatSetFormatsProvider.js +7 -6
  120. package/lib/esm/Formatting/FormatSetFormatsProvider.js.map +1 -1
  121. package/lib/esm/Formatting/SchemaFormatsProvider.d.ts +1 -1
  122. package/lib/esm/Formatting/SchemaFormatsProvider.d.ts.map +1 -1
  123. package/lib/esm/Formatting/SchemaFormatsProvider.js +6 -5
  124. package/lib/esm/Formatting/SchemaFormatsProvider.js.map +1 -1
  125. package/lib/esm/IncrementalLoading/ClassParsers.js.map +1 -1
  126. package/lib/esm/IncrementalLoading/ECSqlSchemaLocater.js.map +1 -1
  127. package/lib/esm/IncrementalLoading/FullSchemaQueries.js +466 -466
  128. package/lib/esm/IncrementalLoading/FullSchemaQueries.js.map +1 -1
  129. package/lib/esm/IncrementalLoading/IncrementalSchemaLocater.js +1 -1
  130. package/lib/esm/IncrementalLoading/IncrementalSchemaLocater.js.map +1 -1
  131. package/lib/esm/IncrementalLoading/IncrementalSchemaReader.js.map +1 -1
  132. package/lib/esm/IncrementalLoading/SchemaItemParsers.js.map +1 -1
  133. package/lib/esm/IncrementalLoading/SchemaItemQueries.js +235 -235
  134. package/lib/esm/IncrementalLoading/SchemaItemQueries.js.map +1 -1
  135. package/lib/esm/IncrementalLoading/SchemaParser.js.map +1 -1
  136. package/lib/esm/IncrementalLoading/SchemaStubQueries.js +309 -309
  137. package/lib/esm/IncrementalLoading/SchemaStubQueries.js.map +1 -1
  138. package/lib/esm/Interfaces.js.map +1 -1
  139. package/lib/esm/Metadata/Class.d.ts.map +1 -1
  140. package/lib/esm/Metadata/Class.js +6 -4
  141. package/lib/esm/Metadata/Class.js.map +1 -1
  142. package/lib/esm/Metadata/Constant.js.map +1 -1
  143. package/lib/esm/Metadata/CustomAttribute.js.map +1 -1
  144. package/lib/esm/Metadata/CustomAttributeClass.js.map +1 -1
  145. package/lib/esm/Metadata/EntityClass.d.ts.map +1 -1
  146. package/lib/esm/Metadata/EntityClass.js +2 -2
  147. package/lib/esm/Metadata/EntityClass.js.map +1 -1
  148. package/lib/esm/Metadata/Enumeration.js.map +1 -1
  149. package/lib/esm/Metadata/Format.js.map +1 -1
  150. package/lib/esm/Metadata/InvertedUnit.js +2 -2
  151. package/lib/esm/Metadata/InvertedUnit.js.map +1 -1
  152. package/lib/esm/Metadata/KindOfQuantity.js +1 -1
  153. package/lib/esm/Metadata/KindOfQuantity.js.map +1 -1
  154. package/lib/esm/Metadata/Mixin.js.map +1 -1
  155. package/lib/esm/Metadata/OverrideFormat.js.map +1 -1
  156. package/lib/esm/Metadata/Phenomenon.js.map +1 -1
  157. package/lib/esm/Metadata/Property.d.ts.map +1 -1
  158. package/lib/esm/Metadata/Property.js +6 -3
  159. package/lib/esm/Metadata/Property.js.map +1 -1
  160. package/lib/esm/Metadata/PropertyCategory.js.map +1 -1
  161. package/lib/esm/Metadata/RelationshipClass.d.ts.map +1 -1
  162. package/lib/esm/Metadata/RelationshipClass.js +5 -4
  163. package/lib/esm/Metadata/RelationshipClass.js.map +1 -1
  164. package/lib/esm/Metadata/Schema.js +1 -1
  165. package/lib/esm/Metadata/Schema.js.map +1 -1
  166. package/lib/esm/Metadata/SchemaItem.js +2 -2
  167. package/lib/esm/Metadata/SchemaItem.js.map +1 -1
  168. package/lib/esm/Metadata/Unit.js +2 -2
  169. package/lib/esm/Metadata/Unit.js.map +1 -1
  170. package/lib/esm/Metadata/UnitSystem.js.map +1 -1
  171. package/lib/esm/PropertyTypes.js.map +1 -1
  172. package/lib/esm/SchemaJsonLocater.js.map +1 -1
  173. package/lib/esm/SchemaKey.js.map +1 -1
  174. package/lib/esm/SchemaLoader.js.map +1 -1
  175. package/lib/esm/SchemaPartVisitorDelegate.js.map +1 -1
  176. package/lib/esm/UnitConversion/UnitConverter.d.ts +1 -1
  177. package/lib/esm/UnitConversion/UnitConverter.d.ts.map +1 -1
  178. package/lib/esm/UnitConversion/UnitConverter.js +1 -1
  179. package/lib/esm/UnitConversion/UnitConverter.js.map +1 -1
  180. package/lib/esm/UnitConversion/UnitTree.d.ts +3 -4
  181. package/lib/esm/UnitConversion/UnitTree.d.ts.map +1 -1
  182. package/lib/esm/UnitConversion/UnitTree.js +6 -6
  183. package/lib/esm/UnitConversion/UnitTree.js.map +1 -1
  184. package/lib/esm/UnitProvider/SchemaUnitProvider.d.ts +3 -0
  185. package/lib/esm/UnitProvider/SchemaUnitProvider.d.ts.map +1 -1
  186. package/lib/esm/UnitProvider/SchemaUnitProvider.js +3 -0
  187. package/lib/esm/UnitProvider/SchemaUnitProvider.js.map +1 -1
  188. package/lib/esm/Validation/SchemaWalker.js.map +1 -1
  189. package/lib/esm/ecschema-metadata.d.ts +0 -1
  190. package/lib/esm/ecschema-metadata.d.ts.map +1 -1
  191. package/lib/esm/ecschema-metadata.js +0 -1
  192. package/lib/esm/ecschema-metadata.js.map +1 -1
  193. package/lib/esm/utils/ECClassHierarchy.js.map +1 -1
  194. package/lib/esm/utils/SchemaGraph.js.map +1 -1
  195. package/lib/esm/utils/SchemaLoadingController.js.map +1 -1
  196. package/package.json +7 -7
  197. package/lib/cjs/UnitConversion/Graph.d.ts +0 -35
  198. package/lib/cjs/UnitConversion/Graph.d.ts.map +0 -1
  199. package/lib/cjs/UnitConversion/Graph.js +0 -88
  200. package/lib/cjs/UnitConversion/Graph.js.map +0 -1
  201. package/lib/cjs/UnitConversion/Parser.d.ts +0 -9
  202. package/lib/cjs/UnitConversion/Parser.d.ts.map +0 -1
  203. package/lib/cjs/UnitConversion/Parser.js +0 -42
  204. package/lib/cjs/UnitConversion/Parser.js.map +0 -1
  205. package/lib/cjs/UnitConversion/UnitConversion.d.ts +0 -46
  206. package/lib/cjs/UnitConversion/UnitConversion.d.ts.map +0 -1
  207. package/lib/cjs/UnitConversion/UnitConversion.js +0 -76
  208. package/lib/cjs/UnitConversion/UnitConversion.js.map +0 -1
  209. package/lib/esm/UnitConversion/Graph.d.ts +0 -35
  210. package/lib/esm/UnitConversion/Graph.d.ts.map +0 -1
  211. package/lib/esm/UnitConversion/Graph.js +0 -84
  212. package/lib/esm/UnitConversion/Graph.js.map +0 -1
  213. package/lib/esm/UnitConversion/Parser.d.ts +0 -9
  214. package/lib/esm/UnitConversion/Parser.d.ts.map +0 -1
  215. package/lib/esm/UnitConversion/Parser.js +0 -39
  216. package/lib/esm/UnitConversion/Parser.js.map +0 -1
  217. package/lib/esm/UnitConversion/UnitConversion.d.ts +0 -46
  218. package/lib/esm/UnitConversion/UnitConversion.d.ts.map +0 -1
  219. package/lib/esm/UnitConversion/UnitConversion.js +0 -72
  220. package/lib/esm/UnitConversion/UnitConversion.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"UnitConversion.js","sourceRoot":"","sources":["../../../src/UnitConversion/UnitConversion.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD;;;GAGG;AACH,MAAM,OAAO,cAAc;IACG;IAAsC;IAAlE,YAA4B,SAAiB,GAAG,EAAkB,SAAiB,GAAG;QAA1D,WAAM,GAAN,MAAM,CAAc;QAAkB,WAAM,GAAN,MAAM,CAAc;IAAG,CAAC;IAE1F;;;;OAIG;IACI,QAAQ,CAAC,CAAS;QACvB,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;IACvC,CAAC;IAED;;;OAGG;IACI,OAAO;QACZ,MAAM,aAAa,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;QACxC,OAAO,IAAI,cAAc,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,CAAC;IACzE,CAAC;IAED;;;;OAIG;IACI,OAAO,CAAC,UAA0B;QACvC,OAAO,IAAI,cAAc,CACvB,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,EAC/B,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CACpD,CAAC;IACJ,CAAC;IAED;;;OAGG;IACI,QAAQ,CAAC,UAA0B;QACxC,IAAI,WAAW,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC;YACtE,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAElE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,KAAa;QACxB,IAAI,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC;YACzB,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;aACjD,IAAI,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC;YAC9B,OAAO,IAAI,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAEtC,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC;YAC/B,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,MAAM,IAAI,KAAK,EAAE,GAAG,CAAC,CAAC;QAEvD,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IAED,gBAAgB;IACT,MAAM,CAAC,QAAQ,GAAG,IAAI,cAAc,EAAE,CAAC;IAE9C;;;OAGG;IACI,MAAM,CAAC,IAAI,CAAC,cAA+B;QAChD,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;YAC7B,OAAO,IAAI,cAAc,CAAC,cAAc,CAAC,WAAW,GAAG,cAAc,CAAC,SAAS,EAAE,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAE3G,OAAO,IAAI,cAAc,CAAC,cAAc,CAAC,WAAW,GAAG,cAAc,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IACxF,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\nimport { Constant } from \"../Metadata/Constant\";\r\nimport { Unit } from \"../Metadata/Unit\";\r\nimport { almostEqual } from \"@itwin/core-quantity\";\r\n\r\n/**\r\n * Class used for storing calculated conversion between two Units [[UnitConverter.calculateConversion]] and converting values from one Unit to another [[UnitConverter.evaluate]]\r\n * @internal\r\n */\r\nexport class UnitConversion {\r\n constructor(public readonly factor: number = 1.0, public readonly offset: number = 0.0) {}\r\n\r\n /**\r\n * Converts x using UnitConversion\r\n * @param x Input magnitude to be converted\r\n * @returns Output magnitude after conversion\r\n */\r\n public evaluate(x: number): number {\r\n return this.factor * x + this.offset;\r\n }\r\n\r\n /**\r\n * Used to invert source's UnitConversion so that it can be composed with target's UnitConversion cleanly\r\n * @internal\r\n */\r\n public inverse(): UnitConversion {\r\n const inverseFactor = 1.0 / this.factor;\r\n return new UnitConversion(inverseFactor, -this.offset * inverseFactor);\r\n }\r\n\r\n /**\r\n * Combines two UnitConversions\r\n * Used to combine source's UnitConversion and target's UnitConversion for a final UnitConversion that can be evaluated\r\n * @internal\r\n */\r\n public compose(conversion: UnitConversion): UnitConversion {\r\n return new UnitConversion(\r\n this.factor * conversion.factor,\r\n conversion.factor * this.offset + conversion.offset,\r\n );\r\n }\r\n\r\n /**\r\n * Multiples two UnitConversions together to calculate factor during reducing\r\n * @internal\r\n */\r\n public multiply(conversion: UnitConversion): UnitConversion {\r\n if (almostEqual(conversion.offset, 0.0) && almostEqual(this.offset, 0.0))\r\n return new UnitConversion(this.factor * conversion.factor, 0.0);\r\n\r\n throw new Error(\"Cannot multiply two maps with non-zero offsets\");\r\n }\r\n\r\n /**\r\n * Raise UnitConversion's factor with power exponent to calculate factor during reducing\r\n * @internal\r\n */\r\n public raise(power: number): UnitConversion {\r\n if (almostEqual(power, 1.0))\r\n return new UnitConversion(this.factor, this.offset);\r\n else if (almostEqual(power, 0.0))\r\n return new UnitConversion(1.0, 0.0);\r\n\r\n if (almostEqual(this.offset, 0.0))\r\n return new UnitConversion(this.factor ** power, 0.0);\r\n\r\n throw new Error(\"Cannot raise map with non-zero offset\");\r\n }\r\n\r\n /** @internal */\r\n public static identity = new UnitConversion();\r\n\r\n /**\r\n * Returns UnitConversion with unit's numerator and denominator in factor and unit's offset in offset for reducing\r\n * @internal\r\n */\r\n public static from(unitOrConstant: Unit | Constant): UnitConversion {\r\n if (Unit.isUnit(unitOrConstant))\r\n return new UnitConversion(unitOrConstant.denominator / unitOrConstant.numerator, -unitOrConstant.offset);\r\n\r\n return new UnitConversion(unitOrConstant.denominator / unitOrConstant.numerator, 0.0);\r\n }\r\n}\r\n"]}