@itwin/core-frontend 3.1.0-dev.8 → 3.1.2

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 (673) hide show
  1. package/CHANGELOG.md +217 -35
  2. package/lib/cjs/AccuSnap.js +2 -2
  3. package/lib/cjs/AccuSnap.js.map +1 -1
  4. package/lib/cjs/ApproximateTerrainHeights.d.ts +1 -1
  5. package/lib/cjs/ApproximateTerrainHeights.d.ts.map +1 -1
  6. package/lib/cjs/ApproximateTerrainHeights.js +22 -8
  7. package/lib/cjs/ApproximateTerrainHeights.js.map +1 -1
  8. package/lib/cjs/ApproximateTerrainHeightsProps.d.ts +12 -0
  9. package/lib/cjs/ApproximateTerrainHeightsProps.d.ts.map +1 -0
  10. package/lib/cjs/ApproximateTerrainHeightsProps.js +13 -0
  11. package/lib/cjs/ApproximateTerrainHeightsProps.js.map +1 -0
  12. package/lib/cjs/CategorySelectorState.js +1 -1
  13. package/lib/cjs/CategorySelectorState.js.map +1 -1
  14. package/lib/cjs/DisplayStyleState.d.ts +4 -3
  15. package/lib/cjs/DisplayStyleState.d.ts.map +1 -1
  16. package/lib/cjs/DisplayStyleState.js +32 -8
  17. package/lib/cjs/DisplayStyleState.js.map +1 -1
  18. package/lib/cjs/DrawingViewState.d.ts.map +1 -1
  19. package/lib/cjs/DrawingViewState.js +6 -5
  20. package/lib/cjs/DrawingViewState.js.map +1 -1
  21. package/lib/cjs/FrontendLoggerCategory.d.ts +3 -1
  22. package/lib/cjs/FrontendLoggerCategory.d.ts.map +1 -1
  23. package/lib/cjs/FrontendLoggerCategory.js +2 -0
  24. package/lib/cjs/FrontendLoggerCategory.js.map +1 -1
  25. package/lib/cjs/IModelApp.d.ts +10 -4
  26. package/lib/cjs/IModelApp.d.ts.map +1 -1
  27. package/lib/cjs/IModelApp.js +26 -13
  28. package/lib/cjs/IModelApp.js.map +1 -1
  29. package/lib/cjs/IModelConnection.d.ts +3 -2
  30. package/lib/cjs/IModelConnection.d.ts.map +1 -1
  31. package/lib/cjs/IModelConnection.js +6 -4
  32. package/lib/cjs/IModelConnection.js.map +1 -1
  33. package/lib/cjs/ImageUtil.d.ts.map +1 -1
  34. package/lib/cjs/ImageUtil.js +8 -14
  35. package/lib/cjs/ImageUtil.js.map +1 -1
  36. package/lib/cjs/LocalhostIpcApp.d.ts +2 -0
  37. package/lib/cjs/LocalhostIpcApp.d.ts.map +1 -1
  38. package/lib/cjs/LocalhostIpcApp.js +10 -4
  39. package/lib/cjs/LocalhostIpcApp.js.map +1 -1
  40. package/lib/cjs/RealityDataSource.d.ts +60 -14
  41. package/lib/cjs/RealityDataSource.d.ts.map +1 -1
  42. package/lib/cjs/RealityDataSource.js +36 -235
  43. package/lib/cjs/RealityDataSource.js.map +1 -1
  44. package/lib/cjs/RealityDataSourceCesiumIonAssetImpl.d.ts +67 -0
  45. package/lib/cjs/RealityDataSourceCesiumIonAssetImpl.d.ts.map +1 -0
  46. package/lib/cjs/RealityDataSourceCesiumIonAssetImpl.js +166 -0
  47. package/lib/cjs/RealityDataSourceCesiumIonAssetImpl.js.map +1 -0
  48. package/lib/cjs/RealityDataSourceContextShareImpl.d.ts +83 -0
  49. package/lib/cjs/RealityDataSourceContextShareImpl.d.ts.map +1 -0
  50. package/lib/cjs/RealityDataSourceContextShareImpl.js +234 -0
  51. package/lib/cjs/RealityDataSourceContextShareImpl.js.map +1 -0
  52. package/lib/cjs/RealityDataSourceTilesetUrlImpl.d.ts +65 -0
  53. package/lib/cjs/RealityDataSourceTilesetUrlImpl.d.ts.map +1 -0
  54. package/lib/cjs/RealityDataSourceTilesetUrlImpl.js +135 -0
  55. package/lib/cjs/RealityDataSourceTilesetUrlImpl.js.map +1 -0
  56. package/lib/cjs/SheetViewState.js +4 -0
  57. package/lib/cjs/SheetViewState.js.map +1 -1
  58. package/lib/cjs/ViewState.d.ts +8 -0
  59. package/lib/cjs/ViewState.d.ts.map +1 -1
  60. package/lib/cjs/ViewState.js +1 -1
  61. package/lib/cjs/ViewState.js.map +1 -1
  62. package/lib/cjs/Viewport.d.ts +30 -12
  63. package/lib/cjs/Viewport.d.ts.map +1 -1
  64. package/lib/cjs/Viewport.js +43 -1
  65. package/lib/cjs/Viewport.js.map +1 -1
  66. package/lib/cjs/core-frontend.d.ts +6 -4
  67. package/lib/cjs/core-frontend.d.ts.map +1 -1
  68. package/lib/cjs/core-frontend.js +6 -4
  69. package/lib/cjs/core-frontend.js.map +1 -1
  70. package/lib/cjs/extension/Extension.d.ts +48 -0
  71. package/lib/cjs/extension/Extension.d.ts.map +1 -0
  72. package/lib/cjs/extension/Extension.js +18 -0
  73. package/lib/cjs/extension/Extension.js.map +1 -0
  74. package/lib/cjs/extension/ExtensionAdmin.d.ts +64 -0
  75. package/lib/cjs/extension/ExtensionAdmin.d.ts.map +1 -0
  76. package/lib/cjs/extension/ExtensionAdmin.js +106 -0
  77. package/lib/cjs/extension/ExtensionAdmin.js.map +1 -0
  78. package/lib/cjs/extension/ExtensionHost.d.ts +23 -0
  79. package/lib/cjs/extension/ExtensionHost.d.ts.map +1 -0
  80. package/lib/cjs/extension/ExtensionHost.js +26 -0
  81. package/lib/cjs/extension/ExtensionHost.js.map +1 -0
  82. package/lib/cjs/extension/ExtensionImpl.d.ts +21 -0
  83. package/lib/cjs/extension/ExtensionImpl.d.ts.map +1 -0
  84. package/lib/cjs/extension/ExtensionImpl.js +45 -0
  85. package/lib/cjs/extension/ExtensionImpl.js.map +1 -0
  86. package/lib/cjs/extension/ExtensionLoader.d.ts +26 -0
  87. package/lib/cjs/extension/ExtensionLoader.d.ts.map +1 -0
  88. package/lib/cjs/extension/ExtensionLoader.js +10 -0
  89. package/lib/cjs/extension/ExtensionLoader.js.map +1 -0
  90. package/lib/cjs/extension/ExtensionRuntime.d.ts +5 -0
  91. package/lib/cjs/extension/ExtensionRuntime.d.ts.map +1 -0
  92. package/lib/cjs/extension/ExtensionRuntime.js +86 -0
  93. package/lib/cjs/extension/ExtensionRuntime.js.map +1 -0
  94. package/lib/cjs/extension/extensions.d.ts +19 -0
  95. package/lib/cjs/extension/extensions.d.ts.map +1 -0
  96. package/lib/cjs/extension/extensions.js +36 -0
  97. package/lib/cjs/extension/extensions.js.map +1 -0
  98. package/lib/cjs/quantity-formatting/BasicUnitsProvider.d.ts +2 -2
  99. package/lib/cjs/quantity-formatting/BasicUnitsProvider.d.ts.map +1 -1
  100. package/lib/cjs/quantity-formatting/BasicUnitsProvider.js +48 -44
  101. package/lib/cjs/quantity-formatting/BasicUnitsProvider.js.map +1 -1
  102. package/lib/cjs/quantity-formatting/QuantityFormatter.d.ts +90 -80
  103. package/lib/cjs/quantity-formatting/QuantityFormatter.d.ts.map +1 -1
  104. package/lib/cjs/quantity-formatting/QuantityFormatter.js +85 -45
  105. package/lib/cjs/quantity-formatting/QuantityFormatter.js.map +1 -1
  106. package/lib/cjs/quantity-formatting/QuantityTypesEditorSpecs.d.ts +54 -0
  107. package/lib/cjs/quantity-formatting/QuantityTypesEditorSpecs.d.ts.map +1 -0
  108. package/lib/cjs/quantity-formatting/QuantityTypesEditorSpecs.js +32 -0
  109. package/lib/cjs/quantity-formatting/QuantityTypesEditorSpecs.js.map +1 -0
  110. package/lib/cjs/quantity-formatting/UnitsData.d.ts +11 -0
  111. package/lib/cjs/quantity-formatting/UnitsData.d.ts.map +1 -0
  112. package/lib/cjs/quantity-formatting/UnitsData.js +59 -0
  113. package/lib/cjs/quantity-formatting/UnitsData.js.map +1 -0
  114. package/lib/cjs/render/GraphicBranch.d.ts +2 -0
  115. package/lib/cjs/render/GraphicBranch.d.ts.map +1 -1
  116. package/lib/cjs/render/GraphicBranch.js.map +1 -1
  117. package/lib/cjs/render/RenderPlanarClassifier.d.ts +1 -1
  118. package/lib/cjs/render/RenderPlanarClassifier.d.ts.map +1 -1
  119. package/lib/cjs/render/RenderPlanarClassifier.js.map +1 -1
  120. package/lib/cjs/render/RenderSystem.d.ts +12 -7
  121. package/lib/cjs/render/RenderSystem.d.ts.map +1 -1
  122. package/lib/cjs/render/RenderSystem.js +8 -5
  123. package/lib/cjs/render/RenderSystem.js.map +1 -1
  124. package/lib/cjs/render/RenderTarget.d.ts +4 -4
  125. package/lib/cjs/render/RenderTarget.d.ts.map +1 -1
  126. package/lib/cjs/render/RenderTarget.js.map +1 -1
  127. package/lib/cjs/render/Scene.d.ts.map +1 -1
  128. package/lib/cjs/render/Scene.js.map +1 -1
  129. package/lib/cjs/render/primitives/mesh/RealityMeshPrimitive.d.ts +17 -2
  130. package/lib/cjs/render/primitives/mesh/RealityMeshPrimitive.d.ts.map +1 -1
  131. package/lib/cjs/render/primitives/mesh/RealityMeshPrimitive.js +39 -2
  132. package/lib/cjs/render/primitives/mesh/RealityMeshPrimitive.js.map +1 -1
  133. package/lib/cjs/render/webgl/BackgroundMapDrape.js +1 -1
  134. package/lib/cjs/render/webgl/BackgroundMapDrape.js.map +1 -1
  135. package/lib/cjs/render/webgl/BranchState.d.ts +2 -0
  136. package/lib/cjs/render/webgl/BranchState.d.ts.map +1 -1
  137. package/lib/cjs/render/webgl/BranchState.js +5 -3
  138. package/lib/cjs/render/webgl/BranchState.js.map +1 -1
  139. package/lib/cjs/render/webgl/DrawCommand.js +1 -1
  140. package/lib/cjs/render/webgl/DrawCommand.js.map +1 -1
  141. package/lib/cjs/render/webgl/Graphic.d.ts +5 -3
  142. package/lib/cjs/render/webgl/Graphic.d.ts.map +1 -1
  143. package/lib/cjs/render/webgl/Graphic.js +7 -2
  144. package/lib/cjs/render/webgl/Graphic.js.map +1 -1
  145. package/lib/cjs/render/webgl/PlanarClassifier.d.ts +4 -1
  146. package/lib/cjs/render/webgl/PlanarClassifier.d.ts.map +1 -1
  147. package/lib/cjs/render/webgl/PlanarClassifier.js +22 -9
  148. package/lib/cjs/render/webgl/PlanarClassifier.js.map +1 -1
  149. package/lib/cjs/render/webgl/PlanarTextureProjection.d.ts +2 -2
  150. package/lib/cjs/render/webgl/PlanarTextureProjection.d.ts.map +1 -1
  151. package/lib/cjs/render/webgl/PlanarTextureProjection.js +5 -3
  152. package/lib/cjs/render/webgl/PlanarTextureProjection.js.map +1 -1
  153. package/lib/cjs/render/webgl/RealityMesh.d.ts +31 -11
  154. package/lib/cjs/render/webgl/RealityMesh.d.ts.map +1 -1
  155. package/lib/cjs/render/webgl/RealityMesh.js +155 -52
  156. package/lib/cjs/render/webgl/RealityMesh.js.map +1 -1
  157. package/lib/cjs/render/webgl/RenderCommands.d.ts.map +1 -1
  158. package/lib/cjs/render/webgl/RenderCommands.js +4 -0
  159. package/lib/cjs/render/webgl/RenderCommands.js.map +1 -1
  160. package/lib/cjs/render/webgl/SceneCompositor.d.ts +3 -0
  161. package/lib/cjs/render/webgl/SceneCompositor.d.ts.map +1 -1
  162. package/lib/cjs/render/webgl/SceneCompositor.js +45 -19
  163. package/lib/cjs/render/webgl/SceneCompositor.js.map +1 -1
  164. package/lib/cjs/render/webgl/ShaderProgram.d.ts +1 -0
  165. package/lib/cjs/render/webgl/ShaderProgram.d.ts.map +1 -1
  166. package/lib/cjs/render/webgl/ShaderProgram.js +1 -0
  167. package/lib/cjs/render/webgl/ShaderProgram.js.map +1 -1
  168. package/lib/cjs/render/webgl/System.d.ts +10 -10
  169. package/lib/cjs/render/webgl/System.d.ts.map +1 -1
  170. package/lib/cjs/render/webgl/System.js +5 -5
  171. package/lib/cjs/render/webgl/System.js.map +1 -1
  172. package/lib/cjs/render/webgl/Target.d.ts.map +1 -1
  173. package/lib/cjs/render/webgl/Target.js.map +1 -1
  174. package/lib/cjs/render/webgl/glsl/PlanarClassification.js +1 -1
  175. package/lib/cjs/render/webgl/glsl/PlanarClassification.js.map +1 -1
  176. package/lib/cjs/render/webgl/glsl/RealityMesh.d.ts.map +1 -1
  177. package/lib/cjs/render/webgl/glsl/RealityMesh.js +102 -27
  178. package/lib/cjs/render/webgl/glsl/RealityMesh.js.map +1 -1
  179. package/lib/cjs/tile/ClassifierTileTree.d.ts +4 -2
  180. package/lib/cjs/tile/ClassifierTileTree.d.ts.map +1 -1
  181. package/lib/cjs/tile/ClassifierTileTree.js +31 -16
  182. package/lib/cjs/tile/ClassifierTileTree.js.map +1 -1
  183. package/lib/cjs/tile/GltfReader.d.ts +22 -3
  184. package/lib/cjs/tile/GltfReader.d.ts.map +1 -1
  185. package/lib/cjs/tile/GltfReader.js +224 -40
  186. package/lib/cjs/tile/GltfReader.js.map +1 -1
  187. package/lib/cjs/tile/IModelTileRequestChannels.d.ts +3 -3
  188. package/lib/cjs/tile/IModelTileRequestChannels.d.ts.map +1 -1
  189. package/lib/cjs/tile/IModelTileRequestChannels.js +7 -11
  190. package/lib/cjs/tile/IModelTileRequestChannels.js.map +1 -1
  191. package/lib/cjs/tile/OPCFormatInterpreter.d.ts +22 -0
  192. package/lib/cjs/tile/OPCFormatInterpreter.d.ts.map +1 -0
  193. package/lib/cjs/tile/OPCFormatInterpreter.js +92 -0
  194. package/lib/cjs/tile/OPCFormatInterpreter.js.map +1 -0
  195. package/lib/cjs/tile/PntsReader.d.ts +1 -1
  196. package/lib/cjs/tile/PntsReader.d.ts.map +1 -1
  197. package/lib/cjs/tile/PntsReader.js +170 -36
  198. package/lib/cjs/tile/PntsReader.js.map +1 -1
  199. package/lib/cjs/tile/PrimaryTileTree.d.ts +18 -2
  200. package/lib/cjs/tile/PrimaryTileTree.d.ts.map +1 -1
  201. package/lib/cjs/tile/PrimaryTileTree.js +53 -2
  202. package/lib/cjs/tile/PrimaryTileTree.js.map +1 -1
  203. package/lib/cjs/tile/RealityModelTileTree.d.ts +24 -3
  204. package/lib/cjs/tile/RealityModelTileTree.d.ts.map +1 -1
  205. package/lib/cjs/tile/RealityModelTileTree.js +36 -11
  206. package/lib/cjs/tile/RealityModelTileTree.js.map +1 -1
  207. package/lib/cjs/tile/RealityTile.d.ts +16 -2
  208. package/lib/cjs/tile/RealityTile.d.ts.map +1 -1
  209. package/lib/cjs/tile/RealityTile.js +32 -0
  210. package/lib/cjs/tile/RealityTile.js.map +1 -1
  211. package/lib/cjs/tile/RealityTileDrawArgs.d.ts +4 -1
  212. package/lib/cjs/tile/RealityTileDrawArgs.d.ts.map +1 -1
  213. package/lib/cjs/tile/RealityTileDrawArgs.js +3 -1
  214. package/lib/cjs/tile/RealityTileDrawArgs.js.map +1 -1
  215. package/lib/cjs/tile/RealityTileLoader.d.ts +7 -4
  216. package/lib/cjs/tile/RealityTileLoader.d.ts.map +1 -1
  217. package/lib/cjs/tile/RealityTileLoader.js +19 -5
  218. package/lib/cjs/tile/RealityTileLoader.js.map +1 -1
  219. package/lib/cjs/tile/RealityTileTree.d.ts +4 -1
  220. package/lib/cjs/tile/RealityTileTree.d.ts.map +1 -1
  221. package/lib/cjs/tile/RealityTileTree.js +11 -3
  222. package/lib/cjs/tile/RealityTileTree.js.map +1 -1
  223. package/lib/cjs/tile/ThreeDTileFormatInterpreter.d.ts +52 -0
  224. package/lib/cjs/tile/ThreeDTileFormatInterpreter.d.ts.map +1 -0
  225. package/lib/cjs/tile/ThreeDTileFormatInterpreter.js +179 -0
  226. package/lib/cjs/tile/ThreeDTileFormatInterpreter.js.map +1 -0
  227. package/lib/cjs/tile/TileAdmin.d.ts.map +1 -1
  228. package/lib/cjs/tile/TileAdmin.js +0 -5
  229. package/lib/cjs/tile/TileAdmin.js.map +1 -1
  230. package/lib/cjs/tile/TileDrawArgs.d.ts +2 -0
  231. package/lib/cjs/tile/TileDrawArgs.d.ts.map +1 -1
  232. package/lib/cjs/tile/TileDrawArgs.js +5 -0
  233. package/lib/cjs/tile/TileDrawArgs.js.map +1 -1
  234. package/lib/cjs/tile/TileGeometryCollector.d.ts +80 -0
  235. package/lib/cjs/tile/TileGeometryCollector.d.ts.map +1 -0
  236. package/lib/cjs/tile/TileGeometryCollector.js +71 -0
  237. package/lib/cjs/tile/TileGeometryCollector.js.map +1 -0
  238. package/lib/cjs/tile/TileRequestChannels.d.ts +0 -4
  239. package/lib/cjs/tile/TileRequestChannels.d.ts.map +1 -1
  240. package/lib/cjs/tile/TileRequestChannels.js +1 -6
  241. package/lib/cjs/tile/TileRequestChannels.js.map +1 -1
  242. package/lib/cjs/tile/TileTree.d.ts +7 -1
  243. package/lib/cjs/tile/TileTree.d.ts.map +1 -1
  244. package/lib/cjs/tile/TileTree.js +7 -0
  245. package/lib/cjs/tile/TileTree.js.map +1 -1
  246. package/lib/cjs/tile/TileTreeReference.d.ts +26 -1
  247. package/lib/cjs/tile/TileTreeReference.d.ts.map +1 -1
  248. package/lib/cjs/tile/TileTreeReference.js +40 -0
  249. package/lib/cjs/tile/TileTreeReference.js.map +1 -1
  250. package/lib/cjs/tile/internal.d.ts +4 -0
  251. package/lib/cjs/tile/internal.d.ts.map +1 -1
  252. package/lib/cjs/tile/internal.js +4 -0
  253. package/lib/cjs/tile/internal.js.map +1 -1
  254. package/lib/cjs/tile/map/CesiumTerrainProvider.js +2 -2
  255. package/lib/cjs/tile/map/CesiumTerrainProvider.js.map +1 -1
  256. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +5 -3
  257. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
  258. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +45 -12
  259. package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  260. package/lib/cjs/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts +2 -2
  261. package/lib/cjs/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts.map +1 -1
  262. package/lib/cjs/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js.map +1 -1
  263. package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.d.ts +2 -2
  264. package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.d.ts.map +1 -1
  265. package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
  266. package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts +2 -2
  267. package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts.map +1 -1
  268. package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js +4 -3
  269. package/lib/cjs/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js.map +1 -1
  270. package/lib/cjs/tile/map/ImageryProviders/TileUrlImageryProvider.d.ts +2 -2
  271. package/lib/cjs/tile/map/ImageryProviders/TileUrlImageryProvider.d.ts.map +1 -1
  272. package/lib/cjs/tile/map/ImageryProviders/TileUrlImageryProvider.js.map +1 -1
  273. package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts +2 -3
  274. package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts.map +1 -1
  275. package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js +13 -11
  276. package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
  277. package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts +2 -2
  278. package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts.map +1 -1
  279. package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
  280. package/lib/cjs/tile/map/ImageryTileTree.d.ts +2 -3
  281. package/lib/cjs/tile/map/ImageryTileTree.d.ts.map +1 -1
  282. package/lib/cjs/tile/map/ImageryTileTree.js +4 -3
  283. package/lib/cjs/tile/map/ImageryTileTree.js.map +1 -1
  284. package/lib/cjs/tile/map/MapFeatureInfo.d.ts +26 -0
  285. package/lib/cjs/tile/map/MapFeatureInfo.d.ts.map +1 -0
  286. package/lib/cjs/tile/map/MapFeatureInfo.js +19 -0
  287. package/lib/cjs/tile/map/MapFeatureInfo.js.map +1 -0
  288. package/lib/cjs/tile/map/MapLayerFormatRegistry.d.ts +4 -4
  289. package/lib/cjs/tile/map/MapLayerFormatRegistry.d.ts.map +1 -1
  290. package/lib/cjs/tile/map/MapLayerFormatRegistry.js.map +1 -1
  291. package/lib/cjs/tile/map/MapLayerImageryFormats.d.ts +3 -3
  292. package/lib/cjs/tile/map/MapLayerImageryFormats.d.ts.map +1 -1
  293. package/lib/cjs/tile/map/MapLayerImageryFormats.js.map +1 -1
  294. package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts +5 -4
  295. package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
  296. package/lib/cjs/tile/map/MapLayerImageryProvider.js +5 -1
  297. package/lib/cjs/tile/map/MapLayerImageryProvider.js.map +1 -1
  298. package/lib/cjs/tile/map/MapLayerSources.d.ts +2 -2
  299. package/lib/cjs/tile/map/MapLayerSources.d.ts.map +1 -1
  300. package/lib/cjs/tile/map/MapLayerSources.js +6 -4
  301. package/lib/cjs/tile/map/MapLayerSources.js.map +1 -1
  302. package/lib/cjs/tile/map/MapLayerTileTreeReference.d.ts +10 -2
  303. package/lib/cjs/tile/map/MapLayerTileTreeReference.d.ts.map +1 -1
  304. package/lib/cjs/tile/map/MapLayerTileTreeReference.js +26 -3
  305. package/lib/cjs/tile/map/MapLayerTileTreeReference.js.map +1 -1
  306. package/lib/cjs/tile/map/MapTile.d.ts +12 -10
  307. package/lib/cjs/tile/map/MapTile.d.ts.map +1 -1
  308. package/lib/cjs/tile/map/MapTile.js +60 -39
  309. package/lib/cjs/tile/map/MapTile.js.map +1 -1
  310. package/lib/cjs/tile/map/MapTileLoader.d.ts +2 -1
  311. package/lib/cjs/tile/map/MapTileLoader.d.ts.map +1 -1
  312. package/lib/cjs/tile/map/MapTileLoader.js +4 -1
  313. package/lib/cjs/tile/map/MapTileLoader.js.map +1 -1
  314. package/lib/cjs/tile/map/MapTileTree.d.ts +18 -8
  315. package/lib/cjs/tile/map/MapTileTree.d.ts.map +1 -1
  316. package/lib/cjs/tile/map/MapTileTree.js +150 -63
  317. package/lib/cjs/tile/map/MapTileTree.js.map +1 -1
  318. package/lib/cjs/tile/map/MapTiledGraphicsProvider.d.ts.map +1 -1
  319. package/lib/cjs/tile/map/MapTiledGraphicsProvider.js +1 -1
  320. package/lib/cjs/tile/map/MapTiledGraphicsProvider.js.map +1 -1
  321. package/lib/cjs/tile/map/WmsCapabilities.d.ts +3 -2
  322. package/lib/cjs/tile/map/WmsCapabilities.d.ts.map +1 -1
  323. package/lib/cjs/tile/map/WmsCapabilities.js +11 -10
  324. package/lib/cjs/tile/map/WmsCapabilities.js.map +1 -1
  325. package/lib/cjs/tools/ToolAdmin.d.ts +2 -3
  326. package/lib/cjs/tools/ToolAdmin.d.ts.map +1 -1
  327. package/lib/cjs/tools/ToolAdmin.js +7 -2
  328. package/lib/cjs/tools/ToolAdmin.js.map +1 -1
  329. package/lib/cjs/tools/ViewTool.d.ts +4 -4
  330. package/lib/cjs/tools/ViewTool.d.ts.map +1 -1
  331. package/lib/cjs/tools/ViewTool.js +1 -1
  332. package/lib/cjs/tools/ViewTool.js.map +1 -1
  333. package/lib/esm/AccuSnap.js +2 -2
  334. package/lib/esm/AccuSnap.js.map +1 -1
  335. package/lib/esm/ApproximateTerrainHeights.d.ts +1 -1
  336. package/lib/esm/ApproximateTerrainHeights.d.ts.map +1 -1
  337. package/lib/esm/ApproximateTerrainHeights.js +3 -8
  338. package/lib/esm/ApproximateTerrainHeights.js.map +1 -1
  339. package/lib/esm/ApproximateTerrainHeightsProps.d.ts +12 -0
  340. package/lib/esm/ApproximateTerrainHeightsProps.d.ts.map +1 -0
  341. package/lib/esm/ApproximateTerrainHeightsProps.js +10 -0
  342. package/lib/esm/ApproximateTerrainHeightsProps.js.map +1 -0
  343. package/lib/esm/CategorySelectorState.js +1 -1
  344. package/lib/esm/CategorySelectorState.js.map +1 -1
  345. package/lib/esm/DisplayStyleState.d.ts +4 -3
  346. package/lib/esm/DisplayStyleState.d.ts.map +1 -1
  347. package/lib/esm/DisplayStyleState.js +34 -10
  348. package/lib/esm/DisplayStyleState.js.map +1 -1
  349. package/lib/esm/DrawingViewState.d.ts.map +1 -1
  350. package/lib/esm/DrawingViewState.js +6 -5
  351. package/lib/esm/DrawingViewState.js.map +1 -1
  352. package/lib/esm/FrontendLoggerCategory.d.ts +3 -1
  353. package/lib/esm/FrontendLoggerCategory.d.ts.map +1 -1
  354. package/lib/esm/FrontendLoggerCategory.js +2 -0
  355. package/lib/esm/FrontendLoggerCategory.js.map +1 -1
  356. package/lib/esm/IModelApp.d.ts +10 -4
  357. package/lib/esm/IModelApp.d.ts.map +1 -1
  358. package/lib/esm/IModelApp.js +25 -12
  359. package/lib/esm/IModelApp.js.map +1 -1
  360. package/lib/esm/IModelConnection.d.ts +3 -2
  361. package/lib/esm/IModelConnection.d.ts.map +1 -1
  362. package/lib/esm/IModelConnection.js +7 -5
  363. package/lib/esm/IModelConnection.js.map +1 -1
  364. package/lib/esm/ImageUtil.d.ts.map +1 -1
  365. package/lib/esm/ImageUtil.js +8 -14
  366. package/lib/esm/ImageUtil.js.map +1 -1
  367. package/lib/esm/LocalhostIpcApp.d.ts +2 -0
  368. package/lib/esm/LocalhostIpcApp.d.ts.map +1 -1
  369. package/lib/esm/LocalhostIpcApp.js +10 -4
  370. package/lib/esm/LocalhostIpcApp.js.map +1 -1
  371. package/lib/esm/RealityDataSource.d.ts +60 -14
  372. package/lib/esm/RealityDataSource.d.ts.map +1 -1
  373. package/lib/esm/RealityDataSource.js +37 -237
  374. package/lib/esm/RealityDataSource.js.map +1 -1
  375. package/lib/esm/RealityDataSourceCesiumIonAssetImpl.d.ts +67 -0
  376. package/lib/esm/RealityDataSourceCesiumIonAssetImpl.d.ts.map +1 -0
  377. package/lib/esm/RealityDataSourceCesiumIonAssetImpl.js +162 -0
  378. package/lib/esm/RealityDataSourceCesiumIonAssetImpl.js.map +1 -0
  379. package/lib/esm/RealityDataSourceContextShareImpl.d.ts +83 -0
  380. package/lib/esm/RealityDataSourceContextShareImpl.d.ts.map +1 -0
  381. package/lib/esm/RealityDataSourceContextShareImpl.js +230 -0
  382. package/lib/esm/RealityDataSourceContextShareImpl.js.map +1 -0
  383. package/lib/esm/RealityDataSourceTilesetUrlImpl.d.ts +65 -0
  384. package/lib/esm/RealityDataSourceTilesetUrlImpl.d.ts.map +1 -0
  385. package/lib/esm/RealityDataSourceTilesetUrlImpl.js +131 -0
  386. package/lib/esm/RealityDataSourceTilesetUrlImpl.js.map +1 -0
  387. package/lib/esm/SheetViewState.js +4 -0
  388. package/lib/esm/SheetViewState.js.map +1 -1
  389. package/lib/esm/ViewState.d.ts +8 -0
  390. package/lib/esm/ViewState.d.ts.map +1 -1
  391. package/lib/esm/ViewState.js +1 -1
  392. package/lib/esm/ViewState.js.map +1 -1
  393. package/lib/esm/Viewport.d.ts +30 -12
  394. package/lib/esm/Viewport.d.ts.map +1 -1
  395. package/lib/esm/Viewport.js +43 -1
  396. package/lib/esm/Viewport.js.map +1 -1
  397. package/lib/esm/core-frontend.d.ts +6 -4
  398. package/lib/esm/core-frontend.d.ts.map +1 -1
  399. package/lib/esm/core-frontend.js +6 -4
  400. package/lib/esm/core-frontend.js.map +1 -1
  401. package/lib/esm/extension/Extension.d.ts +48 -0
  402. package/lib/esm/extension/Extension.d.ts.map +1 -0
  403. package/lib/esm/extension/Extension.js +15 -0
  404. package/lib/esm/extension/Extension.js.map +1 -0
  405. package/lib/esm/extension/ExtensionAdmin.d.ts +64 -0
  406. package/lib/esm/extension/ExtensionAdmin.d.ts.map +1 -0
  407. package/lib/esm/extension/ExtensionAdmin.js +102 -0
  408. package/lib/esm/extension/ExtensionAdmin.js.map +1 -0
  409. package/lib/esm/extension/ExtensionHost.d.ts +23 -0
  410. package/lib/esm/extension/ExtensionHost.d.ts.map +1 -0
  411. package/lib/esm/extension/ExtensionHost.js +22 -0
  412. package/lib/esm/extension/ExtensionHost.js.map +1 -0
  413. package/lib/esm/extension/ExtensionImpl.d.ts +21 -0
  414. package/lib/esm/extension/ExtensionImpl.d.ts.map +1 -0
  415. package/lib/esm/extension/ExtensionImpl.js +40 -0
  416. package/lib/esm/extension/ExtensionImpl.js.map +1 -0
  417. package/lib/esm/extension/ExtensionLoader.d.ts +26 -0
  418. package/lib/esm/extension/ExtensionLoader.d.ts.map +1 -0
  419. package/lib/esm/extension/ExtensionLoader.js +9 -0
  420. package/lib/esm/extension/ExtensionLoader.js.map +1 -0
  421. package/lib/esm/extension/ExtensionRuntime.d.ts +5 -0
  422. package/lib/esm/extension/ExtensionRuntime.d.ts.map +1 -0
  423. package/lib/esm/extension/ExtensionRuntime.js +84 -0
  424. package/lib/esm/extension/ExtensionRuntime.js.map +1 -0
  425. package/lib/esm/extension/extensions.d.ts +19 -0
  426. package/lib/esm/extension/extensions.d.ts.map +1 -0
  427. package/lib/esm/extension/extensions.js +24 -0
  428. package/lib/esm/extension/extensions.js.map +1 -0
  429. package/lib/esm/quantity-formatting/BasicUnitsProvider.d.ts +2 -2
  430. package/lib/esm/quantity-formatting/BasicUnitsProvider.d.ts.map +1 -1
  431. package/lib/esm/quantity-formatting/BasicUnitsProvider.js +48 -44
  432. package/lib/esm/quantity-formatting/BasicUnitsProvider.js.map +1 -1
  433. package/lib/esm/quantity-formatting/QuantityFormatter.d.ts +90 -80
  434. package/lib/esm/quantity-formatting/QuantityFormatter.d.ts.map +1 -1
  435. package/lib/esm/quantity-formatting/QuantityFormatter.js +85 -42
  436. package/lib/esm/quantity-formatting/QuantityFormatter.js.map +1 -1
  437. package/lib/esm/quantity-formatting/QuantityTypesEditorSpecs.d.ts +54 -0
  438. package/lib/esm/quantity-formatting/QuantityTypesEditorSpecs.d.ts.map +1 -0
  439. package/lib/esm/quantity-formatting/QuantityTypesEditorSpecs.js +26 -0
  440. package/lib/esm/quantity-formatting/QuantityTypesEditorSpecs.js.map +1 -0
  441. package/lib/esm/quantity-formatting/UnitsData.d.ts +11 -0
  442. package/lib/esm/quantity-formatting/UnitsData.d.ts.map +1 -0
  443. package/lib/esm/quantity-formatting/UnitsData.js +56 -0
  444. package/lib/esm/quantity-formatting/UnitsData.js.map +1 -0
  445. package/lib/esm/render/GraphicBranch.d.ts +2 -0
  446. package/lib/esm/render/GraphicBranch.d.ts.map +1 -1
  447. package/lib/esm/render/GraphicBranch.js.map +1 -1
  448. package/lib/esm/render/RenderPlanarClassifier.d.ts +1 -1
  449. package/lib/esm/render/RenderPlanarClassifier.d.ts.map +1 -1
  450. package/lib/esm/render/RenderPlanarClassifier.js.map +1 -1
  451. package/lib/esm/render/RenderSystem.d.ts +12 -7
  452. package/lib/esm/render/RenderSystem.d.ts.map +1 -1
  453. package/lib/esm/render/RenderSystem.js +6 -3
  454. package/lib/esm/render/RenderSystem.js.map +1 -1
  455. package/lib/esm/render/RenderTarget.d.ts +4 -4
  456. package/lib/esm/render/RenderTarget.d.ts.map +1 -1
  457. package/lib/esm/render/RenderTarget.js.map +1 -1
  458. package/lib/esm/render/Scene.d.ts.map +1 -1
  459. package/lib/esm/render/Scene.js.map +1 -1
  460. package/lib/esm/render/primitives/mesh/RealityMeshPrimitive.d.ts +17 -2
  461. package/lib/esm/render/primitives/mesh/RealityMeshPrimitive.d.ts.map +1 -1
  462. package/lib/esm/render/primitives/mesh/RealityMeshPrimitive.js +39 -2
  463. package/lib/esm/render/primitives/mesh/RealityMeshPrimitive.js.map +1 -1
  464. package/lib/esm/render/webgl/BackgroundMapDrape.js +1 -1
  465. package/lib/esm/render/webgl/BackgroundMapDrape.js.map +1 -1
  466. package/lib/esm/render/webgl/BranchState.d.ts +2 -0
  467. package/lib/esm/render/webgl/BranchState.d.ts.map +1 -1
  468. package/lib/esm/render/webgl/BranchState.js +5 -3
  469. package/lib/esm/render/webgl/BranchState.js.map +1 -1
  470. package/lib/esm/render/webgl/DrawCommand.js +1 -1
  471. package/lib/esm/render/webgl/DrawCommand.js.map +1 -1
  472. package/lib/esm/render/webgl/Graphic.d.ts +5 -3
  473. package/lib/esm/render/webgl/Graphic.d.ts.map +1 -1
  474. package/lib/esm/render/webgl/Graphic.js +7 -2
  475. package/lib/esm/render/webgl/Graphic.js.map +1 -1
  476. package/lib/esm/render/webgl/PlanarClassifier.d.ts +4 -1
  477. package/lib/esm/render/webgl/PlanarClassifier.d.ts.map +1 -1
  478. package/lib/esm/render/webgl/PlanarClassifier.js +22 -9
  479. package/lib/esm/render/webgl/PlanarClassifier.js.map +1 -1
  480. package/lib/esm/render/webgl/PlanarTextureProjection.d.ts +2 -2
  481. package/lib/esm/render/webgl/PlanarTextureProjection.d.ts.map +1 -1
  482. package/lib/esm/render/webgl/PlanarTextureProjection.js +5 -3
  483. package/lib/esm/render/webgl/PlanarTextureProjection.js.map +1 -1
  484. package/lib/esm/render/webgl/RealityMesh.d.ts +31 -11
  485. package/lib/esm/render/webgl/RealityMesh.d.ts.map +1 -1
  486. package/lib/esm/render/webgl/RealityMesh.js +155 -52
  487. package/lib/esm/render/webgl/RealityMesh.js.map +1 -1
  488. package/lib/esm/render/webgl/RenderCommands.d.ts.map +1 -1
  489. package/lib/esm/render/webgl/RenderCommands.js +4 -0
  490. package/lib/esm/render/webgl/RenderCommands.js.map +1 -1
  491. package/lib/esm/render/webgl/SceneCompositor.d.ts +3 -0
  492. package/lib/esm/render/webgl/SceneCompositor.d.ts.map +1 -1
  493. package/lib/esm/render/webgl/SceneCompositor.js +45 -19
  494. package/lib/esm/render/webgl/SceneCompositor.js.map +1 -1
  495. package/lib/esm/render/webgl/ShaderProgram.d.ts +1 -0
  496. package/lib/esm/render/webgl/ShaderProgram.d.ts.map +1 -1
  497. package/lib/esm/render/webgl/ShaderProgram.js +1 -0
  498. package/lib/esm/render/webgl/ShaderProgram.js.map +1 -1
  499. package/lib/esm/render/webgl/System.d.ts +10 -10
  500. package/lib/esm/render/webgl/System.d.ts.map +1 -1
  501. package/lib/esm/render/webgl/System.js +6 -6
  502. package/lib/esm/render/webgl/System.js.map +1 -1
  503. package/lib/esm/render/webgl/Target.d.ts.map +1 -1
  504. package/lib/esm/render/webgl/Target.js.map +1 -1
  505. package/lib/esm/render/webgl/glsl/PlanarClassification.js +1 -1
  506. package/lib/esm/render/webgl/glsl/PlanarClassification.js.map +1 -1
  507. package/lib/esm/render/webgl/glsl/RealityMesh.d.ts.map +1 -1
  508. package/lib/esm/render/webgl/glsl/RealityMesh.js +103 -28
  509. package/lib/esm/render/webgl/glsl/RealityMesh.js.map +1 -1
  510. package/lib/esm/tile/ClassifierTileTree.d.ts +4 -2
  511. package/lib/esm/tile/ClassifierTileTree.d.ts.map +1 -1
  512. package/lib/esm/tile/ClassifierTileTree.js +32 -17
  513. package/lib/esm/tile/ClassifierTileTree.js.map +1 -1
  514. package/lib/esm/tile/GltfReader.d.ts +22 -3
  515. package/lib/esm/tile/GltfReader.d.ts.map +1 -1
  516. package/lib/esm/tile/GltfReader.js +207 -42
  517. package/lib/esm/tile/GltfReader.js.map +1 -1
  518. package/lib/esm/tile/IModelTileRequestChannels.d.ts +3 -3
  519. package/lib/esm/tile/IModelTileRequestChannels.d.ts.map +1 -1
  520. package/lib/esm/tile/IModelTileRequestChannels.js +7 -11
  521. package/lib/esm/tile/IModelTileRequestChannels.js.map +1 -1
  522. package/lib/esm/tile/OPCFormatInterpreter.d.ts +22 -0
  523. package/lib/esm/tile/OPCFormatInterpreter.d.ts.map +1 -0
  524. package/lib/esm/tile/OPCFormatInterpreter.js +88 -0
  525. package/lib/esm/tile/OPCFormatInterpreter.js.map +1 -0
  526. package/lib/esm/tile/PntsReader.d.ts +1 -1
  527. package/lib/esm/tile/PntsReader.d.ts.map +1 -1
  528. package/lib/esm/tile/PntsReader.js +154 -39
  529. package/lib/esm/tile/PntsReader.js.map +1 -1
  530. package/lib/esm/tile/PrimaryTileTree.d.ts +18 -2
  531. package/lib/esm/tile/PrimaryTileTree.d.ts.map +1 -1
  532. package/lib/esm/tile/PrimaryTileTree.js +51 -2
  533. package/lib/esm/tile/PrimaryTileTree.js.map +1 -1
  534. package/lib/esm/tile/RealityModelTileTree.d.ts +24 -3
  535. package/lib/esm/tile/RealityModelTileTree.d.ts.map +1 -1
  536. package/lib/esm/tile/RealityModelTileTree.js +36 -12
  537. package/lib/esm/tile/RealityModelTileTree.js.map +1 -1
  538. package/lib/esm/tile/RealityTile.d.ts +16 -2
  539. package/lib/esm/tile/RealityTile.d.ts.map +1 -1
  540. package/lib/esm/tile/RealityTile.js +32 -0
  541. package/lib/esm/tile/RealityTile.js.map +1 -1
  542. package/lib/esm/tile/RealityTileDrawArgs.d.ts +4 -1
  543. package/lib/esm/tile/RealityTileDrawArgs.d.ts.map +1 -1
  544. package/lib/esm/tile/RealityTileDrawArgs.js +3 -1
  545. package/lib/esm/tile/RealityTileDrawArgs.js.map +1 -1
  546. package/lib/esm/tile/RealityTileLoader.d.ts +7 -4
  547. package/lib/esm/tile/RealityTileLoader.d.ts.map +1 -1
  548. package/lib/esm/tile/RealityTileLoader.js +19 -5
  549. package/lib/esm/tile/RealityTileLoader.js.map +1 -1
  550. package/lib/esm/tile/RealityTileTree.d.ts +4 -1
  551. package/lib/esm/tile/RealityTileTree.d.ts.map +1 -1
  552. package/lib/esm/tile/RealityTileTree.js +13 -5
  553. package/lib/esm/tile/RealityTileTree.js.map +1 -1
  554. package/lib/esm/tile/ThreeDTileFormatInterpreter.d.ts +52 -0
  555. package/lib/esm/tile/ThreeDTileFormatInterpreter.d.ts.map +1 -0
  556. package/lib/esm/tile/ThreeDTileFormatInterpreter.js +175 -0
  557. package/lib/esm/tile/ThreeDTileFormatInterpreter.js.map +1 -0
  558. package/lib/esm/tile/TileAdmin.d.ts.map +1 -1
  559. package/lib/esm/tile/TileAdmin.js +0 -5
  560. package/lib/esm/tile/TileAdmin.js.map +1 -1
  561. package/lib/esm/tile/TileDrawArgs.d.ts +2 -0
  562. package/lib/esm/tile/TileDrawArgs.d.ts.map +1 -1
  563. package/lib/esm/tile/TileDrawArgs.js +5 -0
  564. package/lib/esm/tile/TileDrawArgs.js.map +1 -1
  565. package/lib/esm/tile/TileGeometryCollector.d.ts +80 -0
  566. package/lib/esm/tile/TileGeometryCollector.d.ts.map +1 -0
  567. package/lib/esm/tile/TileGeometryCollector.js +67 -0
  568. package/lib/esm/tile/TileGeometryCollector.js.map +1 -0
  569. package/lib/esm/tile/TileRequestChannels.d.ts +0 -4
  570. package/lib/esm/tile/TileRequestChannels.d.ts.map +1 -1
  571. package/lib/esm/tile/TileRequestChannels.js +1 -6
  572. package/lib/esm/tile/TileRequestChannels.js.map +1 -1
  573. package/lib/esm/tile/TileTree.d.ts +7 -1
  574. package/lib/esm/tile/TileTree.d.ts.map +1 -1
  575. package/lib/esm/tile/TileTree.js +7 -0
  576. package/lib/esm/tile/TileTree.js.map +1 -1
  577. package/lib/esm/tile/TileTreeReference.d.ts +26 -1
  578. package/lib/esm/tile/TileTreeReference.d.ts.map +1 -1
  579. package/lib/esm/tile/TileTreeReference.js +42 -2
  580. package/lib/esm/tile/TileTreeReference.js.map +1 -1
  581. package/lib/esm/tile/internal.d.ts +4 -0
  582. package/lib/esm/tile/internal.d.ts.map +1 -1
  583. package/lib/esm/tile/internal.js +4 -0
  584. package/lib/esm/tile/internal.js.map +1 -1
  585. package/lib/esm/tile/map/CesiumTerrainProvider.js +2 -2
  586. package/lib/esm/tile/map/CesiumTerrainProvider.js.map +1 -1
  587. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +5 -3
  588. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
  589. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +46 -13
  590. package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  591. package/lib/esm/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts +2 -2
  592. package/lib/esm/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.d.ts.map +1 -1
  593. package/lib/esm/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js.map +1 -1
  594. package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.d.ts +2 -2
  595. package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.d.ts.map +1 -1
  596. package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
  597. package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts +2 -2
  598. package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts.map +1 -1
  599. package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js +4 -3
  600. package/lib/esm/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js.map +1 -1
  601. package/lib/esm/tile/map/ImageryProviders/TileUrlImageryProvider.d.ts +2 -2
  602. package/lib/esm/tile/map/ImageryProviders/TileUrlImageryProvider.d.ts.map +1 -1
  603. package/lib/esm/tile/map/ImageryProviders/TileUrlImageryProvider.js.map +1 -1
  604. package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts +2 -3
  605. package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts.map +1 -1
  606. package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js +13 -11
  607. package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
  608. package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts +2 -2
  609. package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts.map +1 -1
  610. package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
  611. package/lib/esm/tile/map/ImageryTileTree.d.ts +2 -3
  612. package/lib/esm/tile/map/ImageryTileTree.d.ts.map +1 -1
  613. package/lib/esm/tile/map/ImageryTileTree.js +4 -3
  614. package/lib/esm/tile/map/ImageryTileTree.js.map +1 -1
  615. package/lib/esm/tile/map/MapFeatureInfo.d.ts +26 -0
  616. package/lib/esm/tile/map/MapFeatureInfo.d.ts.map +1 -0
  617. package/lib/esm/tile/map/MapFeatureInfo.js +15 -0
  618. package/lib/esm/tile/map/MapFeatureInfo.js.map +1 -0
  619. package/lib/esm/tile/map/MapLayerFormatRegistry.d.ts +4 -4
  620. package/lib/esm/tile/map/MapLayerFormatRegistry.d.ts.map +1 -1
  621. package/lib/esm/tile/map/MapLayerFormatRegistry.js.map +1 -1
  622. package/lib/esm/tile/map/MapLayerImageryFormats.d.ts +3 -3
  623. package/lib/esm/tile/map/MapLayerImageryFormats.d.ts.map +1 -1
  624. package/lib/esm/tile/map/MapLayerImageryFormats.js.map +1 -1
  625. package/lib/esm/tile/map/MapLayerImageryProvider.d.ts +5 -4
  626. package/lib/esm/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
  627. package/lib/esm/tile/map/MapLayerImageryProvider.js +5 -1
  628. package/lib/esm/tile/map/MapLayerImageryProvider.js.map +1 -1
  629. package/lib/esm/tile/map/MapLayerSources.d.ts +2 -2
  630. package/lib/esm/tile/map/MapLayerSources.d.ts.map +1 -1
  631. package/lib/esm/tile/map/MapLayerSources.js +6 -4
  632. package/lib/esm/tile/map/MapLayerSources.js.map +1 -1
  633. package/lib/esm/tile/map/MapLayerTileTreeReference.d.ts +10 -2
  634. package/lib/esm/tile/map/MapLayerTileTreeReference.d.ts.map +1 -1
  635. package/lib/esm/tile/map/MapLayerTileTreeReference.js +25 -3
  636. package/lib/esm/tile/map/MapLayerTileTreeReference.js.map +1 -1
  637. package/lib/esm/tile/map/MapTile.d.ts +12 -10
  638. package/lib/esm/tile/map/MapTile.d.ts.map +1 -1
  639. package/lib/esm/tile/map/MapTile.js +60 -39
  640. package/lib/esm/tile/map/MapTile.js.map +1 -1
  641. package/lib/esm/tile/map/MapTileLoader.d.ts +2 -1
  642. package/lib/esm/tile/map/MapTileLoader.d.ts.map +1 -1
  643. package/lib/esm/tile/map/MapTileLoader.js +4 -1
  644. package/lib/esm/tile/map/MapTileLoader.js.map +1 -1
  645. package/lib/esm/tile/map/MapTileTree.d.ts +18 -8
  646. package/lib/esm/tile/map/MapTileTree.d.ts.map +1 -1
  647. package/lib/esm/tile/map/MapTileTree.js +152 -65
  648. package/lib/esm/tile/map/MapTileTree.js.map +1 -1
  649. package/lib/esm/tile/map/MapTiledGraphicsProvider.d.ts.map +1 -1
  650. package/lib/esm/tile/map/MapTiledGraphicsProvider.js +2 -2
  651. package/lib/esm/tile/map/MapTiledGraphicsProvider.js.map +1 -1
  652. package/lib/esm/tile/map/WmsCapabilities.d.ts +3 -2
  653. package/lib/esm/tile/map/WmsCapabilities.d.ts.map +1 -1
  654. package/lib/esm/tile/map/WmsCapabilities.js +11 -10
  655. package/lib/esm/tile/map/WmsCapabilities.js.map +1 -1
  656. package/lib/esm/tools/ToolAdmin.d.ts +2 -3
  657. package/lib/esm/tools/ToolAdmin.d.ts.map +1 -1
  658. package/lib/esm/tools/ToolAdmin.js +8 -3
  659. package/lib/esm/tools/ToolAdmin.js.map +1 -1
  660. package/lib/esm/tools/ViewTool.d.ts +4 -4
  661. package/lib/esm/tools/ViewTool.d.ts.map +1 -1
  662. package/lib/esm/tools/ViewTool.js +1 -1
  663. package/lib/esm/tools/ViewTool.js.map +1 -1
  664. package/package.json +22 -20
  665. package/lib/cjs/tile/DracoDecoder.d.ts +0 -20
  666. package/lib/cjs/tile/DracoDecoder.d.ts.map +0 -1
  667. package/lib/cjs/tile/DracoDecoder.js +0 -169
  668. package/lib/cjs/tile/DracoDecoder.js.map +0 -1
  669. package/lib/esm/tile/DracoDecoder.d.ts +0 -20
  670. package/lib/esm/tile/DracoDecoder.d.ts.map +0 -1
  671. package/lib/esm/tile/DracoDecoder.js +0 -165
  672. package/lib/esm/tile/DracoDecoder.js.map +0 -1
  673. package/lib/public/assets/approximateTerrainHeights.json +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"DrawingViewState.js","sourceRoot":"","sources":["../../src/DrawingViewState.ts"],"names":[],"mappings":"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","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\n/** @packageDocumentation\r\n * @module Views\r\n */\r\n\r\nimport { assert, dispose, Id64, Id64String } from \"@itwin/core-bentley\";\r\nimport {\r\n AxisAlignedBox3d, Frustum, QueryRowFormat, SectionDrawingViewProps, ViewDefinition2dProps, ViewFlagOverrides, ViewStateProps,\r\n} from \"@itwin/core-common\";\r\nimport { Constant, Range3d, Transform, TransformProps, Vector3d } from \"@itwin/core-geometry\";\r\nimport { CategorySelectorState } from \"./CategorySelectorState\";\r\nimport { CoordSystem } from \"./CoordSystem\";\r\nimport { DisplayStyle2dState } from \"./DisplayStyleState\";\r\nimport { Frustum2d } from \"./Frustum2d\";\r\nimport { IModelApp } from \"./IModelApp\";\r\nimport { IModelConnection } from \"./IModelConnection\";\r\nimport { FeatureSymbology } from \"./render/FeatureSymbology\";\r\nimport { GraphicBranch, GraphicBranchOptions } from \"./render/GraphicBranch\";\r\nimport { MockRender } from \"./render/MockRender\";\r\nimport { RenderGraphic } from \"./render/RenderGraphic\";\r\nimport { Scene } from \"./render/Scene\";\r\nimport { DisclosedTileTreeSet, TileGraphicType } from \"./tile/internal\";\r\nimport { SceneContext } from \"./ViewContext\";\r\nimport { OffScreenViewport } from \"./Viewport\";\r\nimport { ViewRect } from \"./ViewRect\";\r\nimport { AttachToViewportArgs, ExtentLimits, ViewState2d, ViewState3d } from \"./ViewState\";\r\n\r\n/** Strictly for testing.\r\n * @internal\r\n */\r\nexport interface SectionDrawingInfo {\r\n readonly spatialView: Id64String;\r\n readonly drawingToSpatialTransform: Transform;\r\n}\r\n\r\n/** The information required to instantiate a [[SectionAttachment]]. This information is supplied to DrawingViewState constructor via ViewStateProps.\r\n * The spatial view is obtained asynchronously in DrawingViewState.load(). The SectionAttachment is created in DrawingViewState.attachToViewport and\r\n * disposed of in DrawingViewState.detachFromViewport.\r\n */\r\nclass SectionAttachmentInfo {\r\n private _spatialView: Id64String | ViewState3d;\r\n private readonly _drawingToSpatialTransform: Transform;\r\n private readonly _displaySpatialView: boolean;\r\n\r\n public get spatialView(): Id64String | ViewState3d { return this._spatialView; }\r\n public get wantDisplayed(): boolean {\r\n return this._displaySpatialView || DrawingViewState.alwaysDisplaySpatialView;\r\n }\r\n\r\n private constructor(spatialView: Id64String | ViewState3d, drawingToSpatialTransform: Transform, displaySpatialView: boolean) {\r\n this._spatialView = spatialView;\r\n this._drawingToSpatialTransform = drawingToSpatialTransform;\r\n this._displaySpatialView = displaySpatialView;\r\n }\r\n\r\n public static fromJSON(props?: SectionDrawingViewProps): SectionAttachmentInfo {\r\n if (!props)\r\n return new SectionAttachmentInfo(Id64.invalid, Transform.createIdentity(), false);\r\n\r\n return new SectionAttachmentInfo(props.spatialView, Transform.fromJSON(props.drawingToSpatialTransform), true === props.displaySpatialView);\r\n }\r\n\r\n public toJSON(): SectionDrawingViewProps | undefined {\r\n if (\"string\" === typeof this._spatialView && !Id64.isValidId64(this._spatialView))\r\n return undefined;\r\n\r\n return {\r\n spatialView: (this._spatialView instanceof ViewState3d) ? this._spatialView.id : this._spatialView,\r\n drawingToSpatialTransform: this._drawingToSpatialTransform.isIdentity ? undefined : this._drawingToSpatialTransform.toJSON(),\r\n displaySpatialView: this._displaySpatialView,\r\n };\r\n }\r\n\r\n public clone(): SectionAttachmentInfo {\r\n return new SectionAttachmentInfo(this._spatialView, this._drawingToSpatialTransform, this._displaySpatialView);\r\n }\r\n\r\n public async load(iModel: IModelConnection): Promise<void> {\r\n if (!this.wantDisplayed)\r\n return;\r\n\r\n if (this._spatialView instanceof ViewState3d)\r\n return;\r\n\r\n if (!Id64.isValidId64(this._spatialView))\r\n return;\r\n\r\n const spatialView = await iModel.views.load(this._spatialView);\r\n if (spatialView instanceof ViewState3d)\r\n this._spatialView = spatialView;\r\n }\r\n\r\n public createAttachment(): SectionAttachment | undefined {\r\n if (!this.wantDisplayed || !(this._spatialView instanceof ViewState3d))\r\n return undefined;\r\n\r\n const spatialToDrawing = this._drawingToSpatialTransform.inverse();\r\n return spatialToDrawing ? new SectionAttachment(this._spatialView, spatialToDrawing, this._drawingToSpatialTransform) : undefined;\r\n }\r\n\r\n public get sectionDrawingInfo(): SectionDrawingInfo {\r\n return {\r\n drawingToSpatialTransform: this._drawingToSpatialTransform,\r\n spatialView: this._spatialView instanceof ViewState3d ? this._spatialView.id : this._spatialView,\r\n };\r\n }\r\n}\r\n\r\n/** A mostly no-op [[RenderTarget]] for a [[SectionAttachment]]. It allocates no webgl resources. */\r\nclass SectionTarget extends MockRender.OffScreenTarget {\r\n private readonly _attachment: SectionAttachment;\r\n\r\n public constructor(attachment: SectionAttachment) {\r\n super(IModelApp.renderSystem, new ViewRect(0, 0, 1, 1));\r\n this._attachment = attachment;\r\n }\r\n\r\n public override changeScene(scene: Scene): void {\r\n this._attachment.scene = scene;\r\n }\r\n\r\n public override overrideFeatureSymbology(ovrs: FeatureSymbology.Overrides): void {\r\n this._attachment.symbologyOverrides = ovrs;\r\n }\r\n}\r\n\r\n/** Draws the contents of an orthographic [[ViewState3d]] directly into a [[DrawingViewState]], if the associated [SectionDrawing]($backend)\r\n * specifies it should be. We select tiles for the view in the context of a lightweight offscreen viewport with a no-op [[RenderTarget]], then\r\n * add the resultant graphics to the drawing view's scene. The attachment is created in DrawingViewState.attachToViewport and disposed of in\r\n * DrawingViewState.detachFromViewport.\r\n */\r\nclass SectionAttachment {\r\n private readonly _viewFlagOverrides: ViewFlagOverrides;\r\n private readonly _toDrawing: Transform;\r\n private readonly _fromDrawing: Transform;\r\n private readonly _viewRect = new ViewRect(0, 0, 1, 1);\r\n private readonly _originalFrustum = new Frustum();\r\n private readonly _drawingExtents: Vector3d;\r\n public readonly viewport: OffScreenViewport;\r\n private readonly _branchOptions: GraphicBranchOptions;\r\n public scene?: Scene;\r\n public symbologyOverrides: FeatureSymbology.Overrides;\r\n\r\n public get view(): ViewState3d {\r\n assert(this.viewport.view instanceof ViewState3d);\r\n return this.viewport.view;\r\n }\r\n\r\n public get zDepth(): number {\r\n return this._drawingExtents.z;\r\n }\r\n\r\n public constructor(view: ViewState3d, toDrawing: Transform, fromDrawing: Transform) {\r\n // Save the input for clone(). Attach a copy to the viewport.\r\n this._toDrawing = toDrawing;\r\n this._fromDrawing = fromDrawing;\r\n\r\n this.viewport = OffScreenViewport.createViewport(view, new SectionTarget(this), true);\r\n\r\n this.symbologyOverrides = new FeatureSymbology.Overrides(view);\r\n let clipVolume;\r\n let clip = this.view.getViewClip();\r\n if (clip) {\r\n clip = clip.clone();\r\n clip.transformInPlace(this._toDrawing);\r\n clipVolume = IModelApp.renderSystem.createClipVolume(clip);\r\n }\r\n\r\n this._branchOptions = {\r\n clipVolume,\r\n hline: view.getDisplayStyle3d().settings.hiddenLineSettings,\r\n frustum: {\r\n is3d: true,\r\n scale: { x: 1, y: 1 },\r\n },\r\n };\r\n\r\n this._viewFlagOverrides = { ...view.viewFlags, lighting: false, shadows: false };\r\n this._drawingExtents = this.viewport.viewingSpace.viewDelta.clone();\r\n this._toDrawing.multiplyVector(this._drawingExtents, this._drawingExtents);\r\n this._drawingExtents.z = Math.abs(this._drawingExtents.z);\r\n\r\n // Save off the original frustum (potentially adjusted by viewport).\r\n this.viewport.setupFromView();\r\n this.viewport.viewingSpace.getFrustum(CoordSystem.World, true, this._originalFrustum);\r\n }\r\n\r\n public dispose(): void {\r\n this.viewport.dispose();\r\n }\r\n\r\n public addToScene(context: SceneContext): void {\r\n if (context.viewport.freezeScene)\r\n return;\r\n\r\n const pixelSize = context.viewport.getPixelSizeAtPoint();\r\n if (0 === pixelSize)\r\n return;\r\n\r\n // Adjust offscreen viewport's frustum based on intersection with drawing view frustum.\r\n const frustum3d = this._originalFrustum.transformBy(this._toDrawing);\r\n const frustumRange3d = frustum3d.toRange();\r\n const frustum2d = context.viewport.getWorldFrustum();\r\n const frustumRange2d = frustum2d.toRange();\r\n const intersect = frustumRange3d.intersect(frustumRange2d);\r\n if (intersect.isNull)\r\n return;\r\n\r\n frustum3d.initFromRange(intersect);\r\n frustum3d.transformBy(this._fromDrawing, frustum3d);\r\n this.viewport.setupViewFromFrustum(frustum3d);\r\n\r\n // Adjust view rect based on size of attachment on screen so tiles of appropriate LOD are selected.\r\n const width = this._drawingExtents.x * intersect.xLength() / frustumRange3d.xLength();\r\n const height = this._drawingExtents.y * intersect.yLength() / frustumRange3d.yLength();\r\n this._viewRect.width = Math.max(1, Math.round(width / pixelSize));\r\n this._viewRect.height = Math.max(1, Math.round(height / pixelSize));\r\n this.viewport.setRect(this._viewRect);\r\n\r\n // Propagate settings from drawing viewport.\r\n this.viewport.debugBoundingBoxes = context.viewport.debugBoundingBoxes;\r\n this.viewport.setTileSizeModifier(context.viewport.tileSizeModifier);\r\n\r\n // Create the scene.\r\n this.viewport.renderFrame();\r\n const scene = this.scene;\r\n if (!scene)\r\n return;\r\n\r\n // Extract graphics and insert into drawing's scene context.\r\n const outputGraphics = (source: RenderGraphic[]) => {\r\n if (0 === source.length)\r\n return;\r\n\r\n const graphics = new GraphicBranch();\r\n graphics.setViewFlagOverrides(this._viewFlagOverrides);\r\n graphics.symbologyOverrides = this.symbologyOverrides;\r\n\r\n for (const graphic of source)\r\n graphics.entries.push(graphic);\r\n\r\n const branch = context.createGraphicBranch(graphics, this._toDrawing, this._branchOptions);\r\n context.outputGraphic(branch);\r\n };\r\n\r\n outputGraphics(scene.foreground);\r\n context.withGraphicType(TileGraphicType.BackgroundMap, () => outputGraphics(scene.background));\r\n context.withGraphicType(TileGraphicType.Overlay, () => outputGraphics(scene.overlay));\r\n\r\n // Report tile statistics to drawing viewport.\r\n const tileAdmin = IModelApp.tileAdmin;\r\n const selectedAndReady = tileAdmin.getTilesForUser(this.viewport);\r\n const requested = tileAdmin.getRequestsForUser(this.viewport);\r\n tileAdmin.addExternalTilesForUser(context.viewport, {\r\n requested: requested?.size ?? 0,\r\n selected: selectedAndReady?.selected.size ?? 0,\r\n ready: selectedAndReady?.ready.size ?? 0,\r\n });\r\n }\r\n}\r\n\r\n/** A view of a [DrawingModel]($backend)\r\n * @public\r\n */\r\nexport class DrawingViewState extends ViewState2d {\r\n /** @internal */\r\n public static override get className() { return \"DrawingViewDefinition\"; }\r\n\r\n /** Exposed strictly for testing and debugging. Indicates that when loading the view, the spatial view should be displayed even\r\n * if `SectionDrawing.displaySpatialView` is not `true`.\r\n * @internal\r\n */\r\n public static alwaysDisplaySpatialView = false;\r\n\r\n /** Exposed strictly for testing and debugging. Indicates that the 2d graphics should not be displayed.\r\n * @internal\r\n */\r\n public static hideDrawingGraphics = false;\r\n\r\n private readonly _modelLimits: ExtentLimits;\r\n private readonly _viewedExtents: AxisAlignedBox3d;\r\n private _attachmentInfo: SectionAttachmentInfo;\r\n private _attachment?: SectionAttachment;\r\n\r\n /** Strictly for testing. @internal */\r\n public get sectionDrawingProps(): SectionDrawingViewProps | undefined {\r\n return this._attachmentInfo.toJSON();\r\n }\r\n\r\n /** Strictly for testing. @internal */\r\n public get sectionDrawingInfo() {\r\n return this._attachmentInfo.sectionDrawingInfo;\r\n }\r\n\r\n /** Strictly for testing. @internal */\r\n public get attachment(): Object | undefined {\r\n return this._attachment;\r\n }\r\n\r\n /** Strictly for testing. @internal */\r\n public get attachmentInfo(): Object {\r\n return this._attachmentInfo;\r\n }\r\n\r\n public constructor(props: ViewDefinition2dProps, iModel: IModelConnection, categories: CategorySelectorState, displayStyle: DisplayStyle2dState, extents: AxisAlignedBox3d, sectionDrawing?: SectionDrawingViewProps) {\r\n super(props, iModel, categories, displayStyle);\r\n if (categories instanceof DrawingViewState) {\r\n this._viewedExtents = categories._viewedExtents.clone();\r\n this._modelLimits = { ...categories._modelLimits };\r\n this._attachmentInfo = categories._attachmentInfo.clone();\r\n } else {\r\n this._viewedExtents = extents;\r\n this._modelLimits = { min: Constant.oneMillimeter, max: 10 * extents.maxLength() };\r\n this._attachmentInfo = SectionAttachmentInfo.fromJSON(sectionDrawing);\r\n }\r\n }\r\n\r\n /** @internal */\r\n public override attachToViewport(args: AttachToViewportArgs): void {\r\n super.attachToViewport(args);\r\n assert(undefined === this._attachment);\r\n this._attachment = this._attachmentInfo.createAttachment();\r\n }\r\n\r\n /** @internal */\r\n public override detachFromViewport(): void {\r\n super.detachFromViewport();\r\n this._attachment = dispose(this._attachment);\r\n }\r\n\r\n /** @internal */\r\n public override async changeViewedModel(modelId: Id64String): Promise<void> {\r\n await super.changeViewedModel(modelId);\r\n const props = await this.querySectionDrawingProps();\r\n this._attachmentInfo = SectionAttachmentInfo.fromJSON(props);\r\n\r\n // super.changeViewedModel() throws if attached to viewport, and attachment only allocated while attached to viewport\r\n assert(undefined === this._attachment);\r\n }\r\n\r\n private async querySectionDrawingProps(): Promise<SectionDrawingViewProps> {\r\n let spatialView = Id64.invalid;\r\n let drawingToSpatialTransform: TransformProps | undefined;\r\n let displaySpatialView = false;\r\n try {\r\n const ecsql = `\r\n SELECT spatialView,\r\n json_extract(jsonProperties, '$.drawingToSpatialTransform') as drawingToSpatialTransform,\r\n CAST(json_extract(jsonProperties, '$.displaySpatialView') as BOOLEAN) as displaySpatialView\r\n FROM bis.SectionDrawing\r\n WHERE ECInstanceId=${this.baseModelId}`;\r\n\r\n for await (const row of this.iModel.query(ecsql, undefined, { rowFormat: QueryRowFormat.UseJsPropertyNames })) {\r\n spatialView = Id64.fromJSON(row.spatialView?.id);\r\n displaySpatialView = !!row.displaySpatialView;\r\n try {\r\n drawingToSpatialTransform = JSON.parse(row.drawingToSpatialTransform);\r\n } catch {\r\n // We'll use identity transform.\r\n }\r\n\r\n break;\r\n }\r\n } catch (_ex) {\r\n // The version of BisCore ECSchema in the iModel is probably too old to contain the SectionDrawing ECClass.\r\n }\r\n\r\n return { spatialView, displaySpatialView, drawingToSpatialTransform };\r\n }\r\n\r\n /** @internal */\r\n public override async load(): Promise<void> {\r\n assert(!this.isAttachedToViewport);\r\n\r\n await super.load();\r\n await this._attachmentInfo.load(this.iModel);\r\n }\r\n\r\n public static override createFromProps(props: ViewStateProps, iModel: IModelConnection): DrawingViewState {\r\n const cat = new CategorySelectorState(props.categorySelectorProps, iModel);\r\n const displayStyleState = new DisplayStyle2dState(props.displayStyleProps, iModel);\r\n const extents = props.modelExtents ? Range3d.fromJSON(props.modelExtents) : new Range3d();\r\n\r\n // use \"new this\" so subclasses are correct\r\n return new this(props.viewDefinitionProps as ViewDefinition2dProps, iModel, cat, displayStyleState, extents, props.sectionDrawing);\r\n }\r\n\r\n public override toProps(): ViewStateProps {\r\n const props = super.toProps();\r\n props.modelExtents = this._viewedExtents.toJSON();\r\n props.sectionDrawing = this._attachmentInfo.toJSON();\r\n return props;\r\n }\r\n\r\n public getViewedExtents(): AxisAlignedBox3d {\r\n return this._viewedExtents;\r\n }\r\n\r\n public get defaultExtentLimits() {\r\n return this._modelLimits;\r\n }\r\n\r\n /** @internal */\r\n public override isDrawingView(): this is DrawingViewState { return true; }\r\n\r\n /** @internal */\r\n public override getOrigin() {\r\n const origin = super.getOrigin();\r\n if (this._attachment)\r\n origin.z = -this._attachment.zDepth;\r\n\r\n return origin;\r\n }\r\n\r\n /** @internal */\r\n public override getExtents() {\r\n const extents = super.getExtents();\r\n if (this._attachment)\r\n extents.z = this._attachment.zDepth + Frustum2d.minimumZDistance;\r\n\r\n return extents;\r\n }\r\n\r\n /** @internal */\r\n public override discloseTileTrees(trees: DisclosedTileTreeSet): void {\r\n super.discloseTileTrees(trees);\r\n if (this._attachment)\r\n trees.disclose(this._attachment.viewport);\r\n }\r\n\r\n /** @internal */\r\n public override createScene(context: SceneContext): void {\r\n if (!DrawingViewState.hideDrawingGraphics)\r\n super.createScene(context);\r\n\r\n if (this._attachment)\r\n this._attachment.addToScene(context);\r\n }\r\n\r\n /** @internal */\r\n public override get areAllTileTreesLoaded(): boolean {\r\n return super.areAllTileTreesLoaded && (!this._attachment || this._attachment.view.areAllTileTreesLoaded);\r\n }\r\n\r\n /** @internal */\r\n public override get secondaryViewports() {\r\n return this._attachment ? [this._attachment.viewport] : super.secondaryViewports;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"DrawingViewState.js","sourceRoot":"","sources":["../../src/DrawingViewState.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,sDAAwE;AACxE,oDAE4B;AAC5B,wDAA8F;AAC9F,mEAAgE;AAChE,+CAA4C;AAC5C,2DAA0D;AAC1D,2CAAwC;AACxC,2CAAwC;AAExC,gEAA6D;AAC7D,0DAA6E;AAC7E,oDAAiD;AAGjD,8CAAwE;AAExE,yCAA+C;AAC/C,yCAAsC;AACtC,2CAA2F;AAU3F;;;GAGG;AACH,MAAM,qBAAqB;IAUzB,YAAoB,WAAqC,EAAE,yBAAoC,EAAE,kBAA2B;QAC1H,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,0BAA0B,GAAG,yBAAyB,CAAC;QAC5D,IAAI,CAAC,mBAAmB,GAAG,kBAAkB,CAAC;IAChD,CAAC;IATD,IAAW,WAAW,KAA+B,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IAChF,IAAW,aAAa;QACtB,OAAO,IAAI,CAAC,mBAAmB,IAAI,gBAAgB,CAAC,wBAAwB,CAAC;IAC/E,CAAC;IAQM,MAAM,CAAC,QAAQ,CAAC,KAA+B;QACpD,IAAI,CAAC,KAAK;YACR,OAAO,IAAI,qBAAqB,CAAC,mBAAI,CAAC,OAAO,EAAE,yBAAS,CAAC,cAAc,EAAE,EAAE,KAAK,CAAC,CAAC;QAEpF,OAAO,IAAI,qBAAqB,CAAC,KAAK,CAAC,WAAW,EAAE,yBAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,yBAAyB,CAAC,EAAE,IAAI,KAAK,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAC9I,CAAC;IAEM,MAAM;QACX,IAAI,QAAQ,KAAK,OAAO,IAAI,CAAC,YAAY,IAAI,CAAC,mBAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC;YAC/E,OAAO,SAAS,CAAC;QAEnB,OAAO;YACL,WAAW,EAAE,CAAC,IAAI,CAAC,YAAY,YAAY,uBAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY;YAClG,yBAAyB,EAAE,IAAI,CAAC,0BAA0B,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,MAAM,EAAE;YAC5H,kBAAkB,EAAE,IAAI,CAAC,mBAAmB;SAC7C,CAAC;IACJ,CAAC;IAEM,KAAK;QACV,OAAO,IAAI,qBAAqB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,0BAA0B,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;IACjH,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,MAAwB;QACxC,IAAI,CAAC,IAAI,CAAC,aAAa;YACrB,OAAO;QAET,IAAI,IAAI,CAAC,YAAY,YAAY,uBAAW;YAC1C,OAAO;QAET,IAAI,CAAC,mBAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC;YACtC,OAAO;QAET,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC/D,IAAI,WAAW,YAAY,uBAAW;YACpC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;IACpC,CAAC;IAEM,gBAAgB,CAAC,OAA8B;QACpD,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,CAAC,IAAI,CAAC,YAAY,YAAY,uBAAW,CAAC;YACpE,OAAO,SAAS,CAAC;QAEnB,MAAM,gBAAgB,GAAG,IAAI,CAAC,0BAA0B,CAAC,OAAO,EAAE,CAAC;QACnE,OAAO,gBAAgB,CAAC,CAAC,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,YAAY,EAAE,gBAAgB,EAAE,IAAI,CAAC,0BAA0B,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7I,CAAC;IAED,IAAW,kBAAkB;QAC3B,OAAO;YACL,yBAAyB,EAAE,IAAI,CAAC,0BAA0B;YAC1D,WAAW,EAAE,IAAI,CAAC,YAAY,YAAY,uBAAW,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY;SACjG,CAAC;IACJ,CAAC;CACF;AAED,oGAAoG;AACpG,MAAM,aAAc,SAAQ,uBAAU,CAAC,eAAe;IAGpD,YAAmB,UAA6B;QAC9C,KAAK,CAAC,qBAAS,CAAC,YAAY,EAAE,IAAI,mBAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACxD,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;IAChC,CAAC;IAEe,WAAW,CAAC,KAAY;QACtC,IAAI,CAAC,WAAW,CAAC,KAAK,GAAG,KAAK,CAAC;IACjC,CAAC;IAEe,wBAAwB,CAAC,IAAgC;QACvE,IAAI,CAAC,WAAW,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAC7C,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,iBAAiB;IAqBrB,YAAmB,IAAiB,EAAE,SAAoB,EAAE,WAAsB,EAAE,OAA8B;QAjBjG,cAAS,GAAG,IAAI,mBAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACrC,qBAAgB,GAAG,IAAI,qBAAO,EAAE,CAAC;QAiBhD,6DAA6D;QAC7D,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAEhC,IAAI,CAAC,QAAQ,GAAG,4BAAiB,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;QAEtF,IAAI,CAAC,kBAAkB,GAAG,IAAI,mCAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC/D,IAAI,UAAU,CAAC;QACf,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACnC,IAAI,IAAI,EAAE;YACR,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;YACpB,MAAM,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,0BAA0B,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;YACtG,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;YACrC,UAAU,GAAG,qBAAS,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;SAC5D;QAED,IAAI,CAAC,cAAc,GAAG;YACpB,UAAU;YACV,KAAK,EAAE,IAAI,CAAC,iBAAiB,EAAE,CAAC,QAAQ,CAAC,kBAAkB;YAC3D,OAAO,EAAE;gBACP,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;aACtB;SACF,CAAC;QAEF,IAAI,CAAC,kBAAkB,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QACjF,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QACpE,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAC3E,IAAI,CAAC,eAAe,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QAE1D,oEAAoE;QACpE,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;QAC9B,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,yBAAW,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACxF,CAAC;IA3CD,IAAW,IAAI;QACb,IAAA,qBAAM,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,YAAY,uBAAW,CAAC,CAAC;QAClD,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;IAC5B,CAAC;IAED,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;IAChC,CAAC;IAsCM,OAAO;QACZ,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;IAEM,UAAU,CAAC,OAAqB;;QACrC,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW;YAC9B,OAAO;QAET,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,mBAAmB,EAAE,CAAC;QACzD,IAAI,CAAC,KAAK,SAAS;YACjB,OAAO;QAET,uFAAuF;QACvF,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACrE,MAAM,cAAc,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC;QAC3C,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;QACrD,MAAM,cAAc,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC;QAC3C,MAAM,SAAS,GAAG,cAAc,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QAC3D,IAAI,SAAS,CAAC,MAAM;YAClB,OAAO;QAET,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACnC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;QACpD,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;QAE9C,mGAAmG;QACnG,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,GAAG,SAAS,CAAC,OAAO,EAAE,GAAG,cAAc,CAAC,OAAO,EAAE,CAAC;QACtF,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,GAAG,SAAS,CAAC,OAAO,EAAE,GAAG,cAAc,CAAC,OAAO,EAAE,CAAC;QACvF,IAAI,CAAC,SAAS,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC;QAClE,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;QACpE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAEtC,4CAA4C;QAC5C,IAAI,CAAC,QAAQ,CAAC,kBAAkB,GAAG,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QACvE,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QAErE,oBAAoB;QACpB,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,KAAK;YACR,OAAO;QAET,4DAA4D;QAC5D,MAAM,cAAc,GAAG,CAAC,MAAuB,EAAE,EAAE;YACjD,IAAI,CAAC,KAAK,MAAM,CAAC,MAAM;gBACrB,OAAO;YAET,MAAM,QAAQ,GAAG,IAAI,6BAAa,EAAE,CAAC;YACrC,QAAQ,CAAC,oBAAoB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACvD,QAAQ,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAC;YAEtD,KAAK,MAAM,OAAO,IAAI,MAAM;gBAC1B,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAEjC,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;YAC3F,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC,CAAC;QAEF,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACjC,OAAO,CAAC,eAAe,CAAC,0BAAe,CAAC,aAAa,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;QAC/F,OAAO,CAAC,eAAe,CAAC,0BAAe,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAEtF,8CAA8C;QAC9C,MAAM,SAAS,GAAG,qBAAS,CAAC,SAAS,CAAC;QACtC,MAAM,gBAAgB,GAAG,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClE,MAAM,SAAS,GAAG,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9D,SAAS,CAAC,uBAAuB,CAAC,OAAO,CAAC,QAAQ,EAAE;YAClD,SAAS,EAAE,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,IAAI,mCAAI,CAAC;YAC/B,QAAQ,EAAE,MAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,QAAQ,CAAC,IAAI,mCAAI,CAAC;YAC9C,KAAK,EAAE,MAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,KAAK,CAAC,IAAI,mCAAI,CAAC;SACzC,CAAC,CAAC;IACL,CAAC;CACF;AAED;;GAEG;AACH,MAAa,gBAAiB,SAAQ,uBAAW;IAwC/C,YAAmB,KAA4B,EAAE,MAAwB,EAAE,UAAiC,EAAE,YAAiC,EAAE,OAAyB,EAAE,cAAwC;QAClN,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;QAC/C,IAAI,UAAU,YAAY,gBAAgB,EAAE;YAC1C,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;YACxD,IAAI,CAAC,YAAY,GAAG,EAAE,GAAG,UAAU,CAAC,YAAY,EAAE,CAAC;YACnD,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;SAC3D;aAAM;YACL,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC;YAC9B,IAAI,CAAC,YAAY,GAAG,EAAE,GAAG,EAAE,wBAAQ,CAAC,aAAa,EAAE,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;YACnF,IAAI,CAAC,eAAe,GAAG,qBAAqB,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;SACvE;IACH,CAAC;IAlDD,gBAAgB;IACT,MAAM,KAAc,SAAS,KAAK,OAAO,uBAAuB,CAAC,CAAC,CAAC;IAkB1E,sCAAsC;IACtC,IAAW,mBAAmB;QAC5B,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC;IACvC,CAAC;IAED,sCAAsC;IACtC,IAAW,kBAAkB;QAC3B,OAAO,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC;IACjD,CAAC;IAED,sCAAsC;IACtC,IAAW,UAAU;QACnB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,sCAAsC;IACtC,IAAW,cAAc;QACvB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAeD,gBAAgB;IACA,gBAAgB,CAAC,IAA0B;QACzD,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAA,qBAAM,EAAC,SAAS,KAAK,IAAI,CAAC,WAAW,CAAC,CAAC;QACvC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACzF,CAAC;IAED,gBAAgB;IACA,kBAAkB;QAChC,KAAK,CAAC,kBAAkB,EAAE,CAAC;QAC3B,IAAI,CAAC,WAAW,GAAG,IAAA,sBAAO,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC/C,CAAC;IAED,gBAAgB;IACA,KAAK,CAAC,iBAAiB,CAAC,OAAmB;QACzD,MAAM,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;QACpD,IAAI,CAAC,eAAe,GAAG,qBAAqB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAE7D,qHAAqH;QACrH,IAAA,qBAAM,EAAC,SAAS,KAAK,IAAI,CAAC,WAAW,CAAC,CAAC;IACzC,CAAC;IAEO,KAAK,CAAC,wBAAwB;;QACpC,IAAI,WAAW,GAAG,mBAAI,CAAC,OAAO,CAAC;QAC/B,IAAI,yBAAqD,CAAC;QAC1D,IAAI,kBAAkB,GAAG,KAAK,CAAC;QAC/B,IAAI;YACF,MAAM,KAAK,GAAG;;;;;6BAKS,IAAI,CAAC,WAAW,EAAE,CAAC;YAE1C,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,SAAS,EAAE,4BAAc,CAAC,kBAAkB,EAAE,CAAC,EAAE;gBAC7G,WAAW,GAAG,mBAAI,CAAC,QAAQ,CAAC,MAAA,GAAG,CAAC,WAAW,0CAAE,EAAE,CAAC,CAAC;gBACjD,kBAAkB,GAAG,CAAC,CAAC,GAAG,CAAC,kBAAkB,CAAC;gBAC9C,IAAI;oBACF,yBAAyB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;iBACvE;gBAAC,MAAM;oBACN,gCAAgC;iBACjC;gBAED,MAAM;aACP;SACF;QAAC,OAAO,GAAG,EAAE;YACZ,2GAA2G;SAC5G;QAED,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,CAAC;IACxE,CAAC;IAED,gBAAgB;IACA,KAAK,CAAC,IAAI;QACxB,IAAA,qBAAM,EAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAEnC,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAEM,MAAM,CAAU,eAAe,CAAC,KAAqB,EAAE,MAAwB;QACpF,MAAM,GAAG,GAAG,IAAI,6CAAqB,CAAC,KAAK,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;QAC3E,MAAM,iBAAiB,GAAG,IAAI,uCAAmB,CAAC,KAAK,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;QACnF,MAAM,OAAO,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,uBAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,uBAAO,EAAE,CAAC;QAE1F,2CAA2C;QAC3C,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,mBAA4C,EAAE,MAAM,EAAE,GAAG,EAAE,iBAAiB,EAAE,OAAO,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;IACrI,CAAC;IAEe,OAAO;QACrB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;QAC9B,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;QAClD,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC;QACrD,OAAO,KAAK,CAAC;IACf,CAAC;IAEM,gBAAgB;QACrB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,IAAW,mBAAmB;QAC5B,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,gBAAgB;IACA,aAAa,KAA+B,OAAO,IAAI,CAAC,CAAC,CAAC;IAE1E,gBAAgB;IACA,SAAS;QACvB,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;QACjC,IAAI,IAAI,CAAC,WAAW;YAClB,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;QAEtC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,gBAAgB;IACA,UAAU;QACxB,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC;QACnC,IAAI,IAAI,CAAC,WAAW;YAClB,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,qBAAS,CAAC,gBAAgB,CAAC;QAEnE,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,gBAAgB;IACA,iBAAiB,CAAC,KAA2B;QAC3D,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,IAAI,CAAC,WAAW;YAClB,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC;IAED,gBAAgB;IACA,WAAW,CAAC,OAAqB;QAC/C,IAAI,CAAC,gBAAgB,CAAC,mBAAmB;YACvC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAE7B,IAAI,IAAI,CAAC,WAAW;YAClB,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IAED,gBAAgB;IAChB,IAAoB,qBAAqB;QACvC,OAAO,KAAK,CAAC,qBAAqB,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAC3G,CAAC;IAED,gBAAgB;IAChB,IAAoB,kBAAkB;QACpC,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC;IACnF,CAAC;;AAvLH,4CAwLC;AApLC;;;GAGG;AACW,yCAAwB,GAAG,KAAK,CAAC;AAE/C;;GAEG;AACW,oCAAmB,GAAG,KAAK,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\n/** @packageDocumentation\r\n * @module Views\r\n */\r\n\r\nimport { assert, dispose, Id64, Id64String } from \"@itwin/core-bentley\";\r\nimport {\r\n AxisAlignedBox3d, Frustum, QueryRowFormat, SectionDrawingViewProps, ViewDefinition2dProps, ViewFlagOverrides, ViewStateProps,\r\n} from \"@itwin/core-common\";\r\nimport { Constant, Range3d, Transform, TransformProps, Vector3d } from \"@itwin/core-geometry\";\r\nimport { CategorySelectorState } from \"./CategorySelectorState\";\r\nimport { CoordSystem } from \"./CoordSystem\";\r\nimport { DisplayStyle2dState } from \"./DisplayStyleState\";\r\nimport { Frustum2d } from \"./Frustum2d\";\r\nimport { IModelApp } from \"./IModelApp\";\r\nimport { IModelConnection } from \"./IModelConnection\";\r\nimport { FeatureSymbology } from \"./render/FeatureSymbology\";\r\nimport { GraphicBranch, GraphicBranchOptions } from \"./render/GraphicBranch\";\r\nimport { MockRender } from \"./render/MockRender\";\r\nimport { RenderGraphic } from \"./render/RenderGraphic\";\r\nimport { Scene } from \"./render/Scene\";\r\nimport { DisclosedTileTreeSet, TileGraphicType } from \"./tile/internal\";\r\nimport { SceneContext } from \"./ViewContext\";\r\nimport { OffScreenViewport } from \"./Viewport\";\r\nimport { ViewRect } from \"./ViewRect\";\r\nimport { AttachToViewportArgs, ExtentLimits, ViewState2d, ViewState3d } from \"./ViewState\";\r\n\r\n/** Strictly for testing.\r\n * @internal\r\n */\r\nexport interface SectionDrawingInfo {\r\n readonly spatialView: Id64String;\r\n readonly drawingToSpatialTransform: Transform;\r\n}\r\n\r\n/** The information required to instantiate a [[SectionAttachment]]. This information is supplied to DrawingViewState constructor via ViewStateProps.\r\n * The spatial view is obtained asynchronously in DrawingViewState.load(). The SectionAttachment is created in DrawingViewState.attachToViewport and\r\n * disposed of in DrawingViewState.detachFromViewport.\r\n */\r\nclass SectionAttachmentInfo {\r\n private _spatialView: Id64String | ViewState3d;\r\n private readonly _drawingToSpatialTransform: Transform;\r\n private readonly _displaySpatialView: boolean;\r\n\r\n public get spatialView(): Id64String | ViewState3d { return this._spatialView; }\r\n public get wantDisplayed(): boolean {\r\n return this._displaySpatialView || DrawingViewState.alwaysDisplaySpatialView;\r\n }\r\n\r\n private constructor(spatialView: Id64String | ViewState3d, drawingToSpatialTransform: Transform, displaySpatialView: boolean) {\r\n this._spatialView = spatialView;\r\n this._drawingToSpatialTransform = drawingToSpatialTransform;\r\n this._displaySpatialView = displaySpatialView;\r\n }\r\n\r\n public static fromJSON(props?: SectionDrawingViewProps): SectionAttachmentInfo {\r\n if (!props)\r\n return new SectionAttachmentInfo(Id64.invalid, Transform.createIdentity(), false);\r\n\r\n return new SectionAttachmentInfo(props.spatialView, Transform.fromJSON(props.drawingToSpatialTransform), true === props.displaySpatialView);\r\n }\r\n\r\n public toJSON(): SectionDrawingViewProps | undefined {\r\n if (\"string\" === typeof this._spatialView && !Id64.isValidId64(this._spatialView))\r\n return undefined;\r\n\r\n return {\r\n spatialView: (this._spatialView instanceof ViewState3d) ? this._spatialView.id : this._spatialView,\r\n drawingToSpatialTransform: this._drawingToSpatialTransform.isIdentity ? undefined : this._drawingToSpatialTransform.toJSON(),\r\n displaySpatialView: this._displaySpatialView,\r\n };\r\n }\r\n\r\n public clone(): SectionAttachmentInfo {\r\n return new SectionAttachmentInfo(this._spatialView, this._drawingToSpatialTransform, this._displaySpatialView);\r\n }\r\n\r\n public async load(iModel: IModelConnection): Promise<void> {\r\n if (!this.wantDisplayed)\r\n return;\r\n\r\n if (this._spatialView instanceof ViewState3d)\r\n return;\r\n\r\n if (!Id64.isValidId64(this._spatialView))\r\n return;\r\n\r\n const spatialView = await iModel.views.load(this._spatialView);\r\n if (spatialView instanceof ViewState3d)\r\n this._spatialView = spatialView;\r\n }\r\n\r\n public createAttachment(toSheet: Transform | undefined): SectionAttachment | undefined {\r\n if (!this.wantDisplayed || !(this._spatialView instanceof ViewState3d))\r\n return undefined;\r\n\r\n const spatialToDrawing = this._drawingToSpatialTransform.inverse();\r\n return spatialToDrawing ? new SectionAttachment(this._spatialView, spatialToDrawing, this._drawingToSpatialTransform, toSheet) : undefined;\r\n }\r\n\r\n public get sectionDrawingInfo(): SectionDrawingInfo {\r\n return {\r\n drawingToSpatialTransform: this._drawingToSpatialTransform,\r\n spatialView: this._spatialView instanceof ViewState3d ? this._spatialView.id : this._spatialView,\r\n };\r\n }\r\n}\r\n\r\n/** A mostly no-op [[RenderTarget]] for a [[SectionAttachment]]. It allocates no webgl resources. */\r\nclass SectionTarget extends MockRender.OffScreenTarget {\r\n private readonly _attachment: SectionAttachment;\r\n\r\n public constructor(attachment: SectionAttachment) {\r\n super(IModelApp.renderSystem, new ViewRect(0, 0, 1, 1));\r\n this._attachment = attachment;\r\n }\r\n\r\n public override changeScene(scene: Scene): void {\r\n this._attachment.scene = scene;\r\n }\r\n\r\n public override overrideFeatureSymbology(ovrs: FeatureSymbology.Overrides): void {\r\n this._attachment.symbologyOverrides = ovrs;\r\n }\r\n}\r\n\r\n/** Draws the contents of an orthographic [[ViewState3d]] directly into a [[DrawingViewState]], if the associated [SectionDrawing]($backend)\r\n * specifies it should be. We select tiles for the view in the context of a lightweight offscreen viewport with a no-op [[RenderTarget]], then\r\n * add the resultant graphics to the drawing view's scene. The attachment is created in DrawingViewState.attachToViewport and disposed of in\r\n * DrawingViewState.detachFromViewport.\r\n */\r\nclass SectionAttachment {\r\n private readonly _viewFlagOverrides: ViewFlagOverrides;\r\n private readonly _toDrawing: Transform;\r\n private readonly _fromDrawing: Transform;\r\n private readonly _viewRect = new ViewRect(0, 0, 1, 1);\r\n private readonly _originalFrustum = new Frustum();\r\n private readonly _drawingExtents: Vector3d;\r\n public readonly viewport: OffScreenViewport;\r\n private readonly _branchOptions: GraphicBranchOptions;\r\n public scene?: Scene;\r\n public symbologyOverrides: FeatureSymbology.Overrides;\r\n\r\n public get view(): ViewState3d {\r\n assert(this.viewport.view instanceof ViewState3d);\r\n return this.viewport.view;\r\n }\r\n\r\n public get zDepth(): number {\r\n return this._drawingExtents.z;\r\n }\r\n\r\n public constructor(view: ViewState3d, toDrawing: Transform, fromDrawing: Transform, toSheet: Transform | undefined) {\r\n // Save the input for clone(). Attach a copy to the viewport.\r\n this._toDrawing = toDrawing;\r\n this._fromDrawing = fromDrawing;\r\n\r\n this.viewport = OffScreenViewport.createViewport(view, new SectionTarget(this), true);\r\n\r\n this.symbologyOverrides = new FeatureSymbology.Overrides(view);\r\n let clipVolume;\r\n let clip = this.view.getViewClip();\r\n if (clip) {\r\n clip = clip.clone();\r\n const clipTransform = toSheet ? toSheet.multiplyTransformTransform(this._toDrawing) : this._toDrawing;\r\n clip.transformInPlace(clipTransform);\r\n clipVolume = IModelApp.renderSystem.createClipVolume(clip);\r\n }\r\n\r\n this._branchOptions = {\r\n clipVolume,\r\n hline: view.getDisplayStyle3d().settings.hiddenLineSettings,\r\n frustum: {\r\n is3d: true,\r\n scale: { x: 1, y: 1 },\r\n },\r\n };\r\n\r\n this._viewFlagOverrides = { ...view.viewFlags, lighting: false, shadows: false };\r\n this._drawingExtents = this.viewport.viewingSpace.viewDelta.clone();\r\n this._toDrawing.multiplyVector(this._drawingExtents, this._drawingExtents);\r\n this._drawingExtents.z = Math.abs(this._drawingExtents.z);\r\n\r\n // Save off the original frustum (potentially adjusted by viewport).\r\n this.viewport.setupFromView();\r\n this.viewport.viewingSpace.getFrustum(CoordSystem.World, true, this._originalFrustum);\r\n }\r\n\r\n public dispose(): void {\r\n this.viewport.dispose();\r\n }\r\n\r\n public addToScene(context: SceneContext): void {\r\n if (context.viewport.freezeScene)\r\n return;\r\n\r\n const pixelSize = context.viewport.getPixelSizeAtPoint();\r\n if (0 === pixelSize)\r\n return;\r\n\r\n // Adjust offscreen viewport's frustum based on intersection with drawing view frustum.\r\n const frustum3d = this._originalFrustum.transformBy(this._toDrawing);\r\n const frustumRange3d = frustum3d.toRange();\r\n const frustum2d = context.viewport.getWorldFrustum();\r\n const frustumRange2d = frustum2d.toRange();\r\n const intersect = frustumRange3d.intersect(frustumRange2d);\r\n if (intersect.isNull)\r\n return;\r\n\r\n frustum3d.initFromRange(intersect);\r\n frustum3d.transformBy(this._fromDrawing, frustum3d);\r\n this.viewport.setupViewFromFrustum(frustum3d);\r\n\r\n // Adjust view rect based on size of attachment on screen so tiles of appropriate LOD are selected.\r\n const width = this._drawingExtents.x * intersect.xLength() / frustumRange3d.xLength();\r\n const height = this._drawingExtents.y * intersect.yLength() / frustumRange3d.yLength();\r\n this._viewRect.width = Math.max(1, Math.round(width / pixelSize));\r\n this._viewRect.height = Math.max(1, Math.round(height / pixelSize));\r\n this.viewport.setRect(this._viewRect);\r\n\r\n // Propagate settings from drawing viewport.\r\n this.viewport.debugBoundingBoxes = context.viewport.debugBoundingBoxes;\r\n this.viewport.setTileSizeModifier(context.viewport.tileSizeModifier);\r\n\r\n // Create the scene.\r\n this.viewport.renderFrame();\r\n const scene = this.scene;\r\n if (!scene)\r\n return;\r\n\r\n // Extract graphics and insert into drawing's scene context.\r\n const outputGraphics = (source: RenderGraphic[]) => {\r\n if (0 === source.length)\r\n return;\r\n\r\n const graphics = new GraphicBranch();\r\n graphics.setViewFlagOverrides(this._viewFlagOverrides);\r\n graphics.symbologyOverrides = this.symbologyOverrides;\r\n\r\n for (const graphic of source)\r\n graphics.entries.push(graphic);\r\n\r\n const branch = context.createGraphicBranch(graphics, this._toDrawing, this._branchOptions);\r\n context.outputGraphic(branch);\r\n };\r\n\r\n outputGraphics(scene.foreground);\r\n context.withGraphicType(TileGraphicType.BackgroundMap, () => outputGraphics(scene.background));\r\n context.withGraphicType(TileGraphicType.Overlay, () => outputGraphics(scene.overlay));\r\n\r\n // Report tile statistics to drawing viewport.\r\n const tileAdmin = IModelApp.tileAdmin;\r\n const selectedAndReady = tileAdmin.getTilesForUser(this.viewport);\r\n const requested = tileAdmin.getRequestsForUser(this.viewport);\r\n tileAdmin.addExternalTilesForUser(context.viewport, {\r\n requested: requested?.size ?? 0,\r\n selected: selectedAndReady?.selected.size ?? 0,\r\n ready: selectedAndReady?.ready.size ?? 0,\r\n });\r\n }\r\n}\r\n\r\n/** A view of a [DrawingModel]($backend)\r\n * @public\r\n */\r\nexport class DrawingViewState extends ViewState2d {\r\n /** @internal */\r\n public static override get className() { return \"DrawingViewDefinition\"; }\r\n\r\n /** Exposed strictly for testing and debugging. Indicates that when loading the view, the spatial view should be displayed even\r\n * if `SectionDrawing.displaySpatialView` is not `true`.\r\n * @internal\r\n */\r\n public static alwaysDisplaySpatialView = false;\r\n\r\n /** Exposed strictly for testing and debugging. Indicates that the 2d graphics should not be displayed.\r\n * @internal\r\n */\r\n public static hideDrawingGraphics = false;\r\n\r\n private readonly _modelLimits: ExtentLimits;\r\n private readonly _viewedExtents: AxisAlignedBox3d;\r\n private _attachmentInfo: SectionAttachmentInfo;\r\n private _attachment?: SectionAttachment;\r\n\r\n /** Strictly for testing. @internal */\r\n public get sectionDrawingProps(): SectionDrawingViewProps | undefined {\r\n return this._attachmentInfo.toJSON();\r\n }\r\n\r\n /** Strictly for testing. @internal */\r\n public get sectionDrawingInfo() {\r\n return this._attachmentInfo.sectionDrawingInfo;\r\n }\r\n\r\n /** Strictly for testing. @internal */\r\n public get attachment(): Object | undefined {\r\n return this._attachment;\r\n }\r\n\r\n /** Strictly for testing. @internal */\r\n public get attachmentInfo(): Object {\r\n return this._attachmentInfo;\r\n }\r\n\r\n public constructor(props: ViewDefinition2dProps, iModel: IModelConnection, categories: CategorySelectorState, displayStyle: DisplayStyle2dState, extents: AxisAlignedBox3d, sectionDrawing?: SectionDrawingViewProps) {\r\n super(props, iModel, categories, displayStyle);\r\n if (categories instanceof DrawingViewState) {\r\n this._viewedExtents = categories._viewedExtents.clone();\r\n this._modelLimits = { ...categories._modelLimits };\r\n this._attachmentInfo = categories._attachmentInfo.clone();\r\n } else {\r\n this._viewedExtents = extents;\r\n this._modelLimits = { min: Constant.oneMillimeter, max: 10 * extents.maxLength() };\r\n this._attachmentInfo = SectionAttachmentInfo.fromJSON(sectionDrawing);\r\n }\r\n }\r\n\r\n /** @internal */\r\n public override attachToViewport(args: AttachToViewportArgs): void {\r\n super.attachToViewport(args);\r\n assert(undefined === this._attachment);\r\n this._attachment = this._attachmentInfo.createAttachment(args.drawingToSheetTransform);\r\n }\r\n\r\n /** @internal */\r\n public override detachFromViewport(): void {\r\n super.detachFromViewport();\r\n this._attachment = dispose(this._attachment);\r\n }\r\n\r\n /** @internal */\r\n public override async changeViewedModel(modelId: Id64String): Promise<void> {\r\n await super.changeViewedModel(modelId);\r\n const props = await this.querySectionDrawingProps();\r\n this._attachmentInfo = SectionAttachmentInfo.fromJSON(props);\r\n\r\n // super.changeViewedModel() throws if attached to viewport, and attachment only allocated while attached to viewport\r\n assert(undefined === this._attachment);\r\n }\r\n\r\n private async querySectionDrawingProps(): Promise<SectionDrawingViewProps> {\r\n let spatialView = Id64.invalid;\r\n let drawingToSpatialTransform: TransformProps | undefined;\r\n let displaySpatialView = false;\r\n try {\r\n const ecsql = `\r\n SELECT spatialView,\r\n json_extract(jsonProperties, '$.drawingToSpatialTransform') as drawingToSpatialTransform,\r\n CAST(json_extract(jsonProperties, '$.displaySpatialView') as BOOLEAN) as displaySpatialView\r\n FROM bis.SectionDrawing\r\n WHERE ECInstanceId=${this.baseModelId}`;\r\n\r\n for await (const row of this.iModel.query(ecsql, undefined, { rowFormat: QueryRowFormat.UseJsPropertyNames })) {\r\n spatialView = Id64.fromJSON(row.spatialView?.id);\r\n displaySpatialView = !!row.displaySpatialView;\r\n try {\r\n drawingToSpatialTransform = JSON.parse(row.drawingToSpatialTransform);\r\n } catch {\r\n // We'll use identity transform.\r\n }\r\n\r\n break;\r\n }\r\n } catch (_ex) {\r\n // The version of BisCore ECSchema in the iModel is probably too old to contain the SectionDrawing ECClass.\r\n }\r\n\r\n return { spatialView, displaySpatialView, drawingToSpatialTransform };\r\n }\r\n\r\n /** @internal */\r\n public override async load(): Promise<void> {\r\n assert(!this.isAttachedToViewport);\r\n\r\n await super.load();\r\n await this._attachmentInfo.load(this.iModel);\r\n }\r\n\r\n public static override createFromProps(props: ViewStateProps, iModel: IModelConnection): DrawingViewState {\r\n const cat = new CategorySelectorState(props.categorySelectorProps, iModel);\r\n const displayStyleState = new DisplayStyle2dState(props.displayStyleProps, iModel);\r\n const extents = props.modelExtents ? Range3d.fromJSON(props.modelExtents) : new Range3d();\r\n\r\n // use \"new this\" so subclasses are correct\r\n return new this(props.viewDefinitionProps as ViewDefinition2dProps, iModel, cat, displayStyleState, extents, props.sectionDrawing);\r\n }\r\n\r\n public override toProps(): ViewStateProps {\r\n const props = super.toProps();\r\n props.modelExtents = this._viewedExtents.toJSON();\r\n props.sectionDrawing = this._attachmentInfo.toJSON();\r\n return props;\r\n }\r\n\r\n public getViewedExtents(): AxisAlignedBox3d {\r\n return this._viewedExtents;\r\n }\r\n\r\n public get defaultExtentLimits() {\r\n return this._modelLimits;\r\n }\r\n\r\n /** @internal */\r\n public override isDrawingView(): this is DrawingViewState { return true; }\r\n\r\n /** @internal */\r\n public override getOrigin() {\r\n const origin = super.getOrigin();\r\n if (this._attachment)\r\n origin.z = -this._attachment.zDepth;\r\n\r\n return origin;\r\n }\r\n\r\n /** @internal */\r\n public override getExtents() {\r\n const extents = super.getExtents();\r\n if (this._attachment)\r\n extents.z = this._attachment.zDepth + Frustum2d.minimumZDistance;\r\n\r\n return extents;\r\n }\r\n\r\n /** @internal */\r\n public override discloseTileTrees(trees: DisclosedTileTreeSet): void {\r\n super.discloseTileTrees(trees);\r\n if (this._attachment)\r\n trees.disclose(this._attachment.viewport);\r\n }\r\n\r\n /** @internal */\r\n public override createScene(context: SceneContext): void {\r\n if (!DrawingViewState.hideDrawingGraphics)\r\n super.createScene(context);\r\n\r\n if (this._attachment)\r\n this._attachment.addToScene(context);\r\n }\r\n\r\n /** @internal */\r\n public override get areAllTileTreesLoaded(): boolean {\r\n return super.areAllTileTreesLoaded && (!this._attachment || this._attachment.view.areAllTileTreesLoaded);\r\n }\r\n\r\n /** @internal */\r\n public override get secondaryViewports() {\r\n return this._attachment ? [this._attachment.viewport] : super.secondaryViewports;\r\n }\r\n}\r\n"]}
@@ -23,6 +23,8 @@ export declare enum FrontendLoggerCategory {
23
23
  * The logger category used by RealityData
24
24
  * @alpha
25
25
  */
26
- RealityData = "core-frontend.RealityData"
26
+ RealityData = "core-frontend.RealityData",
27
+ /** The logger category used for creating and displaying graphics. */
28
+ Render = "core-frontend.Render"
27
29
  }
28
30
  //# sourceMappingURL=FrontendLoggerCategory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FrontendLoggerCategory.d.ts","sourceRoot":"","sources":["../../src/FrontendLoggerCategory.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH;;;;GAIG;AACH,oBAAY,sBAAsB;IAChC,OAAO,kBAAkB;IAEzB,4FAA4F;IAC5F,gBAAgB,mCAAmC;IAEnD,6CAA6C;IAC7C,SAAS,4BAA4B;IAErC,4DAA4D;IAC5D,OAAO,0BAA0B;IAEjC;;;OAGG;IACH,eAAe,kCAAkC;IACjD;;;OAGG;IACH,WAAW,8BAA8B;CAC1C"}
1
+ {"version":3,"file":"FrontendLoggerCategory.d.ts","sourceRoot":"","sources":["../../src/FrontendLoggerCategory.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH;;;;GAIG;AACH,oBAAY,sBAAsB;IAChC,OAAO,kBAAkB;IAEzB,4FAA4F;IAC5F,gBAAgB,mCAAmC;IAEnD,6CAA6C;IAC7C,SAAS,4BAA4B;IAErC,4DAA4D;IAC5D,OAAO,0BAA0B;IAEjC;;;OAGG;IACH,eAAe,kCAAkC;IACjD;;;OAGG;IACH,WAAW,8BAA8B;IAEzC,qEAAqE;IACrE,MAAM,yBAAyB;CAChC"}
@@ -32,5 +32,7 @@ var FrontendLoggerCategory;
32
32
  * @alpha
33
33
  */
34
34
  FrontendLoggerCategory["RealityData"] = "core-frontend.RealityData";
35
+ /** The logger category used for creating and displaying graphics. */
36
+ FrontendLoggerCategory["Render"] = "core-frontend.Render";
35
37
  })(FrontendLoggerCategory = exports.FrontendLoggerCategory || (exports.FrontendLoggerCategory = {}));
36
38
  //# sourceMappingURL=FrontendLoggerCategory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FrontendLoggerCategory.js","sourceRoot":"","sources":["../../src/FrontendLoggerCategory.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;;;GAIG;AACH,IAAY,sBAsBX;AAtBD,WAAY,sBAAsB;IAChC,mDAAyB,CAAA;IAEzB,4FAA4F;IAC5F,6EAAmD,CAAA;IAEnD,6CAA6C;IAC7C,+DAAqC,CAAA;IAErC,4DAA4D;IAC5D,2DAAiC,CAAA;IAEjC;;;OAGG;IACH,2EAAiD,CAAA;IACjD;;;OAGG;IACH,mEAAyC,CAAA;AAC3C,CAAC,EAtBW,sBAAsB,GAAtB,8BAAsB,KAAtB,8BAAsB,QAsBjC","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\n/** @packageDocumentation\r\n * @module Logging\r\n */\r\n\r\n/** Logger categories used by this package\r\n * @note All logger categories in this package start with the `core-frontend` prefix.\r\n * @see [Logger]($bentley)\r\n * @public\r\n */\r\nexport enum FrontendLoggerCategory {\r\n Package = \"core-frontend\",\r\n\r\n /** The logger category used by the [[IModelConnection]] class and other related classes. */\r\n IModelConnection = \"core-frontend.IModelConnection\",\r\n\r\n /** The logger category used for NativeApp */\r\n NativeApp = \"core-frontend.NativeApp\",\r\n\r\n /** The logger category used for making network requests. */\r\n Request = \"core-frontend.Request\",\r\n\r\n /**\r\n * The logger category used by FeatureTrackingManager\r\n * @alpha\r\n */\r\n FeatureTracking = \"core-frontend.FeatureTracking\",\r\n /**\r\n * The logger category used by RealityData\r\n * @alpha\r\n */\r\n RealityData = \"core-frontend.RealityData\",\r\n}\r\n"]}
1
+ {"version":3,"file":"FrontendLoggerCategory.js","sourceRoot":"","sources":["../../src/FrontendLoggerCategory.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;;;GAIG;AACH,IAAY,sBAyBX;AAzBD,WAAY,sBAAsB;IAChC,mDAAyB,CAAA;IAEzB,4FAA4F;IAC5F,6EAAmD,CAAA;IAEnD,6CAA6C;IAC7C,+DAAqC,CAAA;IAErC,4DAA4D;IAC5D,2DAAiC,CAAA;IAEjC;;;OAGG;IACH,2EAAiD,CAAA;IACjD;;;OAGG;IACH,mEAAyC,CAAA;IAEzC,qEAAqE;IACrE,yDAA+B,CAAA;AACjC,CAAC,EAzBW,sBAAsB,GAAtB,8BAAsB,KAAtB,8BAAsB,QAyBjC","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\n/** @packageDocumentation\r\n * @module Logging\r\n */\r\n\r\n/** Logger categories used by this package\r\n * @note All logger categories in this package start with the `core-frontend` prefix.\r\n * @see [Logger]($bentley)\r\n * @public\r\n */\r\nexport enum FrontendLoggerCategory {\r\n Package = \"core-frontend\",\r\n\r\n /** The logger category used by the [[IModelConnection]] class and other related classes. */\r\n IModelConnection = \"core-frontend.IModelConnection\",\r\n\r\n /** The logger category used for NativeApp */\r\n NativeApp = \"core-frontend.NativeApp\",\r\n\r\n /** The logger category used for making network requests. */\r\n Request = \"core-frontend.Request\",\r\n\r\n /**\r\n * The logger category used by FeatureTrackingManager\r\n * @alpha\r\n */\r\n FeatureTracking = \"core-frontend.FeatureTracking\",\r\n /**\r\n * The logger category used by RealityData\r\n * @alpha\r\n */\r\n RealityData = \"core-frontend.RealityData\",\r\n\r\n /** The logger category used for creating and displaying graphics. */\r\n Render = \"core-frontend.Render\",\r\n}\r\n"]}
@@ -1,6 +1,8 @@
1
1
  /** @packageDocumentation
2
2
  * @module IModelApp
3
3
  */
4
+ /** @public */
5
+ export declare const ITWINJS_CORE_VERSION: string;
4
6
  import { TelemetryManager } from "@itwin/core-telemetry";
5
7
  import { UiAdmin } from "@itwin/appui-abstract";
6
8
  import { AccessToken, BeDuration, BeEvent, GuidString } from "@itwin/core-bentley";
@@ -8,6 +10,7 @@ import { AuthorizationClient, Localization, RealityDataAccess, RpcInterfaceDefin
8
10
  import { WebGLRenderCompatibilityInfo } from "@itwin/webgl-compatibility";
9
11
  import { AccuDraw } from "./AccuDraw";
10
12
  import { AccuSnap } from "./AccuSnap";
13
+ import { ExtensionAdmin } from "./extension/ExtensionAdmin";
11
14
  import { ElementLocateManager } from "./ElementLocateManager";
12
15
  import { EntityState } from "./EntityState";
13
16
  import { FrontendHubAccess } from "./FrontendHubAccess";
@@ -153,6 +156,10 @@ export declare class IModelApp {
153
156
  protected constructor();
154
157
  /** Event raised just before the frontend IModelApp is to be shut down */
155
158
  static readonly onBeforeShutdown: BeEvent<() => void>;
159
+ /** Event raised after IModelApp is finished starting up.
160
+ * @internal
161
+ */
162
+ static readonly onAfterStartup: BeEvent<() => void>;
156
163
  /** Provides authorization information for various frontend APIs */
157
164
  static authorizationClient?: AuthorizationClient;
158
165
  /** The [[ToolRegistry]] for this session. */
@@ -171,9 +178,7 @@ export declare class IModelApp {
171
178
  static get notifications(): NotificationManager;
172
179
  /** The [[TileAdmin]] for this session. */
173
180
  static get tileAdmin(): TileAdmin;
174
- /** The [[QuantityFormatter]] for this session.
175
- * @alpha
176
- */
181
+ /** The [[QuantityFormatter]] for this session. */
177
182
  static get quantityFormatter(): QuantityFormatter;
178
183
  /** The [[ToolAdmin]] for this session. */
179
184
  static get toolAdmin(): ToolAdmin;
@@ -183,7 +188,6 @@ export declare class IModelApp {
183
188
  static get accuDraw(): AccuDraw;
184
189
  /** The [[AccuSnap]] for this session. */
185
190
  static get accuSnap(): AccuSnap;
186
- /** @internal */
187
191
  static get locateManager(): ElementLocateManager;
188
192
  /** @internal */
189
193
  static get tentativePoint(): TentativePoint;
@@ -221,6 +225,8 @@ export declare class IModelApp {
221
225
  * @internal
222
226
  */
223
227
  static readonly telemetry: TelemetryManager;
228
+ /** @alpha */
229
+ static readonly extensionAdmin: ExtensionAdmin;
224
230
  /** Map of classFullName to EntityState class */
225
231
  private static _entityClasses;
226
232
  /** Register all of the subclasses of EntityState from a module.
@@ -1 +1 @@
1
- {"version":3,"file":"IModelApp.d.ts","sourceRoot":"","sources":["../../src/IModelApp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IModelApp.d.ts","sourceRoot":"","sources":["../../src/IModelApp.ts"],"names":[],"mappings":"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"}
@@ -26,8 +26,11 @@ var __importStar = (this && this.__importStar) || function (mod) {
26
26
  return result;
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.IModelApp = void 0;
30
- const copyrightNotice = 'Copyright © 2017-2022 <a href="https://www.bentley.com" target="_blank" rel="noopener noreferrer">Bentley Systems, Inc.</a>';
29
+ exports.IModelApp = exports.ITWINJS_CORE_VERSION = void 0;
30
+ /** @public */
31
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
32
+ exports.ITWINJS_CORE_VERSION = require("../../package.json").version; // require resolves from the lib/{cjs,esm} dir
33
+ const COPYRIGHT_NOTICE = 'Copyright © 2017-2022 <a href="https://www.bentley.com" target="_blank" rel="noopener noreferrer">Bentley Systems, Inc.</a>';
31
34
  const core_telemetry_1 = require("@itwin/core-telemetry");
32
35
  const appui_abstract_1 = require("@itwin/appui-abstract");
33
36
  const core_bentley_1 = require("@itwin/core-bentley");
@@ -38,6 +41,7 @@ const AccuDraw_1 = require("./AccuDraw");
38
41
  const AccuSnap_1 = require("./AccuSnap");
39
42
  const auxCoordState = __importStar(require("./AuxCoordSys"));
40
43
  const categorySelectorState = __importStar(require("./CategorySelectorState"));
44
+ const ExtensionAdmin_1 = require("./extension/ExtensionAdmin");
41
45
  const displayStyleState = __importStar(require("./DisplayStyleState"));
42
46
  const drawingViewState = __importStar(require("./DrawingViewState"));
43
47
  const ElementLocateManager_1 = require("./ElementLocateManager");
@@ -89,9 +93,7 @@ class IModelApp {
89
93
  static get notifications() { return this._notifications; }
90
94
  /** The [[TileAdmin]] for this session. */
91
95
  static get tileAdmin() { return this._tileAdmin; }
92
- /** The [[QuantityFormatter]] for this session.
93
- * @alpha
94
- */
96
+ /** The [[QuantityFormatter]] for this session. */
95
97
  static get quantityFormatter() { return this._quantityFormatter; }
96
98
  /** The [[ToolAdmin]] for this session. */
97
99
  static get toolAdmin() { return this._toolAdmin; }
@@ -101,7 +103,6 @@ class IModelApp {
101
103
  static get accuDraw() { return this._accuDraw; }
102
104
  /** The [[AccuSnap]] for this session. */
103
105
  static get accuSnap() { return this._accuSnap; }
104
- /** @internal */
105
106
  static get locateManager() { return this._locateManager; }
106
107
  /** @internal */
107
108
  static get tentativePoint() { return this._tentativePoint; }
@@ -186,8 +187,10 @@ class IModelApp {
186
187
  this._initialized = true;
187
188
  opts = opts !== null && opts !== void 0 ? opts : {};
188
189
  this._securityOptions = (_a = opts.security) !== null && _a !== void 0 ? _a : {};
189
- // Make IModelApp globally accessible for debugging purposes. We'll remove it on shutdown.
190
- window.iModelAppForDebugger = this;
190
+ if (process.env.NODE_ENV === "development") {
191
+ // Make IModelApp globally accessible for debugging purposes. We'll remove it on shutdown.
192
+ window.iModelAppForDebugger = this;
193
+ }
191
194
  this.sessionId = (_b = opts.sessionId) !== null && _b !== void 0 ? _b : core_bentley_1.Guid.createValue();
192
195
  this._applicationId = (_c = opts.applicationId) !== null && _c !== void 0 ? _c : "2686"; // Default to product id of iTwin.js
193
196
  this._applicationVersion = (_d = opts.applicationVersion) !== null && _d !== void 0 ? _d : "1.0.0";
@@ -243,7 +246,8 @@ class IModelApp {
243
246
  this.tentativePoint,
244
247
  this.uiAdmin,
245
248
  ].forEach((sys) => sys.onInitialized());
246
- return this.quantityFormatter.onInitialized();
249
+ await this.quantityFormatter.onInitialized();
250
+ this.onAfterStartup.raiseEvent();
247
251
  }
248
252
  /** Must be called before the application exits to release any held resources. */
249
253
  static async shutdown() {
@@ -252,7 +256,9 @@ class IModelApp {
252
256
  // notify listeners that this IModelApp is about to be shut down.
253
257
  this.onBeforeShutdown.raiseEvent();
254
258
  this.onBeforeShutdown.clear();
255
- window.iModelAppForDebugger = undefined;
259
+ if (process.env.NODE_ENV === "development") {
260
+ window.iModelAppForDebugger = undefined;
261
+ }
256
262
  this._wantEventLoop = false;
257
263
  window.removeEventListener("resize", IModelApp.requestNextAnimation);
258
264
  this.clearIntervalAnimation();
@@ -262,6 +268,7 @@ class IModelApp {
262
268
  this._entityClasses.clear();
263
269
  this.authorizationClient = undefined;
264
270
  this._initialized = false;
271
+ this.onAfterStartup.clear();
265
272
  }
266
273
  /** Controls how frequently the application polls for changes that may require a new animation frame to be requested.
267
274
  * Such changes include resizing a Viewport or changing the device pixel ratio by zooming in or out in the browser.
@@ -468,8 +475,8 @@ class IModelApp {
468
475
  static makeIModelJsLogoCard() {
469
476
  return this.makeLogoCard({
470
477
  iconSrc: `${this.publicPath}images/about-imodeljs.svg`,
471
- heading: `<span style="font-weight:normal">${this.localization.getLocalizedString("Notices.PoweredBy")}</span>&nbsp;iTwin.js`,
472
- notice: `${require("../../package.json").version}<br>${copyrightNotice}`, // eslint-disable-line @typescript-eslint/no-var-requires
478
+ heading: `<span style="font-weight:normal">${this.localization.getLocalizedString("iModelJs:Notices.PoweredBy")}</span>&nbsp;iTwin.js`,
479
+ notice: `${exports.ITWINJS_CORE_VERSION}<br>${COPYRIGHT_NOTICE}`,
473
480
  });
474
481
  }
475
482
  /** Format the tooltip strings returned by [[IModelConnection.getToolTipMessage]].
@@ -501,7 +508,7 @@ class IModelApp {
501
508
  if (!key.val)
502
509
  key = { scope: "Errors", val: "Status", status: status.toString() };
503
510
  }
504
- return this.localization.getLocalizedString(`${key.scope}.${key.val}`, key);
511
+ return this.localization.getLocalizedString(`iModelJs:${key.scope}.${key.val}`, key);
505
512
  }
506
513
  }
507
514
  exports.IModelApp = IModelApp;
@@ -511,12 +518,18 @@ IModelApp._animationRequested = false;
511
518
  IModelApp._animationInterval = core_bentley_1.BeDuration.fromSeconds(1);
512
519
  /** Event raised just before the frontend IModelApp is to be shut down */
513
520
  IModelApp.onBeforeShutdown = new core_bentley_1.BeEvent();
521
+ /** Event raised after IModelApp is finished starting up.
522
+ * @internal
523
+ */
524
+ IModelApp.onAfterStartup = new core_bentley_1.BeEvent();
514
525
  /** The [[ToolRegistry]] for this session. */
515
526
  IModelApp.tools = new Tool_1.ToolRegistry();
516
527
  /** The [[TelemetryManager]] for this session
517
528
  * @internal
518
529
  */
519
530
  IModelApp.telemetry = new core_telemetry_1.TelemetryManager();
531
+ /** @alpha */
532
+ IModelApp.extensionAdmin = new ExtensionAdmin_1.ExtensionAdmin();
520
533
  /** Map of classFullName to EntityState class */
521
534
  IModelApp._entityClasses = new Map();
522
535
  //# sourceMappingURL=IModelApp.js.map