@itwin/core-frontend 3.6.0-dev.3 → 3.6.0-dev.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +29 -1
- package/lib/cjs/AccuDraw.js +1 -1
- package/lib/cjs/AccuDraw.js.map +1 -1
- package/lib/cjs/EnvironmentDecorations.d.ts +4 -4
- package/lib/cjs/EnvironmentDecorations.d.ts.map +1 -1
- package/lib/cjs/EnvironmentDecorations.js +69 -52
- package/lib/cjs/EnvironmentDecorations.js.map +1 -1
- package/lib/cjs/NoRenderApp.d.ts.map +1 -1
- package/lib/cjs/NoRenderApp.js +3 -0
- package/lib/cjs/NoRenderApp.js.map +1 -1
- package/lib/cjs/Tiles.d.ts +4 -0
- package/lib/cjs/Tiles.d.ts.map +1 -1
- package/lib/cjs/Tiles.js +11 -0
- package/lib/cjs/Tiles.js.map +1 -1
- package/lib/cjs/ViewManager.d.ts.map +1 -1
- package/lib/cjs/ViewManager.js +2 -3
- package/lib/cjs/ViewManager.js.map +1 -1
- package/lib/cjs/Viewport.d.ts +16 -1
- package/lib/cjs/Viewport.d.ts.map +1 -1
- package/lib/cjs/Viewport.js +42 -12
- package/lib/cjs/Viewport.js.map +1 -1
- package/lib/cjs/extension/ExtensionRuntime.js +2 -0
- package/lib/cjs/extension/ExtensionRuntime.js.map +1 -1
- package/lib/cjs/render/GraphicBranch.d.ts +3 -0
- package/lib/cjs/render/GraphicBranch.d.ts.map +1 -1
- package/lib/cjs/render/GraphicBranch.js.map +1 -1
- package/lib/cjs/render/MockRender.d.ts.map +1 -1
- package/lib/cjs/render/MockRender.js +3 -0
- package/lib/cjs/render/MockRender.js.map +1 -1
- package/lib/cjs/render/RealityMeshParams.d.ts +3 -4
- package/lib/cjs/render/RealityMeshParams.d.ts.map +1 -1
- package/lib/cjs/render/RealityMeshParams.js +9 -5
- package/lib/cjs/render/RealityMeshParams.js.map +1 -1
- package/lib/cjs/render/webgl/BackgroundMapDrape.js +2 -2
- package/lib/cjs/render/webgl/BranchState.d.ts +3 -0
- package/lib/cjs/render/webgl/BranchState.d.ts.map +1 -1
- package/lib/cjs/render/webgl/BranchState.js +5 -0
- package/lib/cjs/render/webgl/BranchState.js.map +1 -1
- package/lib/cjs/render/webgl/CachedGeometry.d.ts +32 -0
- package/lib/cjs/render/webgl/CachedGeometry.d.ts.map +1 -1
- package/lib/cjs/render/webgl/CachedGeometry.js +74 -1
- package/lib/cjs/render/webgl/CachedGeometry.js.map +1 -1
- package/lib/cjs/render/webgl/DrawCommand.d.ts.map +1 -1
- package/lib/cjs/render/webgl/DrawCommand.js +6 -4
- package/lib/cjs/render/webgl/DrawCommand.js.map +1 -1
- package/lib/cjs/render/webgl/EDL.d.ts +40 -0
- package/lib/cjs/render/webgl/EDL.d.ts.map +1 -0
- package/lib/cjs/render/webgl/EDL.js +264 -0
- package/lib/cjs/render/webgl/EDL.js.map +1 -0
- package/lib/cjs/render/webgl/EdgeSettings.js +2 -2
- package/lib/cjs/render/webgl/FrameBuffer.d.ts +4 -0
- package/lib/cjs/render/webgl/FrameBuffer.d.ts.map +1 -1
- package/lib/cjs/render/webgl/FrameBuffer.js +9 -0
- package/lib/cjs/render/webgl/FrameBuffer.js.map +1 -1
- package/lib/cjs/render/webgl/FrustumUniforms.d.ts +7 -0
- package/lib/cjs/render/webgl/FrustumUniforms.d.ts.map +1 -1
- package/lib/cjs/render/webgl/FrustumUniforms.js.map +1 -1
- package/lib/cjs/render/webgl/Layer.js +2 -2
- package/lib/cjs/render/webgl/LayerCommands.js +2 -2
- package/lib/cjs/render/webgl/PlanarClassifier.js +7 -7
- package/lib/cjs/render/webgl/PlanarClassifier.js.map +1 -1
- package/lib/cjs/render/webgl/PointCloud.d.ts +2 -2
- package/lib/cjs/render/webgl/PointCloud.d.ts.map +1 -1
- package/lib/cjs/render/webgl/PointCloud.js +2 -0
- package/lib/cjs/render/webgl/PointCloud.js.map +1 -1
- package/lib/cjs/render/webgl/RealityMesh.d.ts +3 -1
- package/lib/cjs/render/webgl/RealityMesh.d.ts.map +1 -1
- package/lib/cjs/render/webgl/RealityMesh.js +8 -3
- package/lib/cjs/render/webgl/RealityMesh.js.map +1 -1
- package/lib/cjs/render/webgl/RealityModelUniforms.d.ts +9 -0
- package/lib/cjs/render/webgl/RealityModelUniforms.d.ts.map +1 -1
- package/lib/cjs/render/webgl/RealityModelUniforms.js +50 -0
- package/lib/cjs/render/webgl/RealityModelUniforms.js.map +1 -1
- package/lib/cjs/render/webgl/RenderCommands.d.ts +2 -1
- package/lib/cjs/render/webgl/RenderCommands.d.ts.map +1 -1
- package/lib/cjs/render/webgl/RenderCommands.js +45 -37
- package/lib/cjs/render/webgl/RenderCommands.js.map +1 -1
- package/lib/cjs/render/webgl/RenderFlags.d.ts +19 -17
- package/lib/cjs/render/webgl/RenderFlags.d.ts.map +1 -1
- package/lib/cjs/render/webgl/RenderFlags.js +8 -6
- package/lib/cjs/render/webgl/RenderFlags.js.map +1 -1
- package/lib/cjs/render/webgl/SceneCompositor.d.ts +6 -1
- package/lib/cjs/render/webgl/SceneCompositor.d.ts.map +1 -1
- package/lib/cjs/render/webgl/SceneCompositor.js +195 -76
- package/lib/cjs/render/webgl/SceneCompositor.js.map +1 -1
- package/lib/cjs/render/webgl/SolarShadowMap.js +2 -2
- package/lib/cjs/render/webgl/SurfaceGeometry.js +5 -5
- package/lib/cjs/render/webgl/Target.js +7 -7
- package/lib/cjs/render/webgl/Target.js.map +1 -1
- package/lib/cjs/render/webgl/Technique.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Technique.js +18 -3
- package/lib/cjs/render/webgl/Technique.js.map +1 -1
- package/lib/cjs/render/webgl/TechniqueFlags.js +4 -4
- package/lib/cjs/render/webgl/TechniqueFlags.js.map +1 -1
- package/lib/cjs/render/webgl/TechniqueId.d.ts +6 -2
- package/lib/cjs/render/webgl/TechniqueId.d.ts.map +1 -1
- package/lib/cjs/render/webgl/TechniqueId.js.map +1 -1
- package/lib/cjs/render/webgl/UniformHandle.d.ts.map +1 -1
- package/lib/cjs/render/webgl/UniformHandle.js +1 -2
- package/lib/cjs/render/webgl/UniformHandle.js.map +1 -1
- package/lib/cjs/render/webgl/VisibleTileFeatures.js +5 -5
- package/lib/cjs/render/webgl/glsl/EDL.d.ts +14 -0
- package/lib/cjs/render/webgl/glsl/EDL.d.ts.map +1 -0
- package/lib/cjs/render/webgl/glsl/EDL.js +260 -0
- package/lib/cjs/render/webgl/glsl/EDL.js.map +1 -0
- package/lib/cjs/render/webgl/glsl/RenderPass.js +12 -12
- package/lib/cjs/render/webgl/glsl/RenderPass.js.map +1 -1
- package/lib/cjs/tile/BatchedTileIdMap.js +1 -1
- package/lib/cjs/tile/BatchedTileIdMap.js.map +1 -1
- package/lib/cjs/tile/DynamicIModelTile.js +1 -1
- package/lib/cjs/tile/DynamicIModelTile.js.map +1 -1
- package/lib/cjs/tile/GltfReader.js +1 -1
- package/lib/cjs/tile/GltfReader.js.map +1 -1
- package/lib/cjs/tile/IModelTile.js +1 -1
- package/lib/cjs/tile/IModelTile.js.map +1 -1
- package/lib/cjs/tile/ImdlReader.js +5 -5
- package/lib/cjs/tile/ImdlReader.js.map +1 -1
- package/lib/cjs/tile/RealityModelTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/RealityModelTileTree.js +2 -1
- package/lib/cjs/tile/RealityModelTileTree.js.map +1 -1
- package/lib/cjs/tile/RealityTileLoader.js +2 -2
- package/lib/cjs/tile/RealityTileLoader.js.map +1 -1
- package/lib/cjs/tile/TileTreeReference.d.ts +3 -0
- package/lib/cjs/tile/TileTreeReference.d.ts.map +1 -1
- package/lib/cjs/tile/TileTreeReference.js +3 -0
- package/lib/cjs/tile/TileTreeReference.js.map +1 -1
- package/lib/cjs/tile/map/CesiumTerrainProvider.js +9 -9
- package/lib/cjs/tile/map/CesiumTerrainProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/ArcGISImageryProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/ArcGISImageryProvider.js +1 -2
- package/lib/cjs/tile/map/ImageryProviders/ArcGISImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +2 -2
- package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js +1 -1
- package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryTileTree.d.ts +1 -0
- package/lib/cjs/tile/map/ImageryTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/map/ImageryTileTree.js +4 -1
- package/lib/cjs/tile/map/ImageryTileTree.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts +7 -3
- package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapLayerImageryProvider.js +12 -8
- package/lib/cjs/tile/map/MapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/MapTileTree.js +1 -1
- package/lib/cjs/tile/map/MapTileTree.js.map +1 -1
- package/lib/cjs/tile/map/MapTiledGraphicsProvider.d.ts +1 -0
- package/lib/cjs/tile/map/MapTiledGraphicsProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTiledGraphicsProvider.js +4 -0
- package/lib/cjs/tile/map/MapTiledGraphicsProvider.js.map +1 -1
- package/lib/cjs/tile/map/WmtsCapabilities.d.ts +23 -68
- package/lib/cjs/tile/map/WmtsCapabilities.d.ts.map +1 -1
- package/lib/cjs/tile/map/WmtsCapabilities.js +269 -260
- package/lib/cjs/tile/map/WmtsCapabilities.js.map +1 -1
- package/lib/cjs/tools/ClipViewTool.js +2 -2
- package/lib/cjs/tools/ClipViewTool.js.map +1 -1
- package/lib/cjs/tools/MeasureTool.js +1 -1
- package/lib/cjs/tools/MeasureTool.js.map +1 -1
- package/lib/esm/AccuDraw.js +1 -1
- package/lib/esm/AccuDraw.js.map +1 -1
- package/lib/esm/EnvironmentDecorations.d.ts +4 -4
- package/lib/esm/EnvironmentDecorations.d.ts.map +1 -1
- package/lib/esm/EnvironmentDecorations.js +69 -52
- package/lib/esm/EnvironmentDecorations.js.map +1 -1
- package/lib/esm/NoRenderApp.d.ts.map +1 -1
- package/lib/esm/NoRenderApp.js +3 -0
- package/lib/esm/NoRenderApp.js.map +1 -1
- package/lib/esm/Tiles.d.ts +4 -0
- package/lib/esm/Tiles.d.ts.map +1 -1
- package/lib/esm/Tiles.js +11 -0
- package/lib/esm/Tiles.js.map +1 -1
- package/lib/esm/ViewManager.d.ts.map +1 -1
- package/lib/esm/ViewManager.js +2 -3
- package/lib/esm/ViewManager.js.map +1 -1
- package/lib/esm/Viewport.d.ts +16 -1
- package/lib/esm/Viewport.d.ts.map +1 -1
- package/lib/esm/Viewport.js +42 -12
- package/lib/esm/Viewport.js.map +1 -1
- package/lib/esm/extension/ExtensionRuntime.js +3 -1
- package/lib/esm/extension/ExtensionRuntime.js.map +1 -1
- package/lib/esm/render/GraphicBranch.d.ts +3 -0
- package/lib/esm/render/GraphicBranch.d.ts.map +1 -1
- package/lib/esm/render/GraphicBranch.js.map +1 -1
- package/lib/esm/render/MockRender.d.ts.map +1 -1
- package/lib/esm/render/MockRender.js +3 -0
- package/lib/esm/render/MockRender.js.map +1 -1
- package/lib/esm/render/RealityMeshParams.d.ts +3 -4
- package/lib/esm/render/RealityMeshParams.d.ts.map +1 -1
- package/lib/esm/render/RealityMeshParams.js +10 -6
- package/lib/esm/render/RealityMeshParams.js.map +1 -1
- package/lib/esm/render/webgl/BackgroundMapDrape.js +2 -2
- package/lib/esm/render/webgl/BranchState.d.ts +3 -0
- package/lib/esm/render/webgl/BranchState.d.ts.map +1 -1
- package/lib/esm/render/webgl/BranchState.js +5 -0
- package/lib/esm/render/webgl/BranchState.js.map +1 -1
- package/lib/esm/render/webgl/CachedGeometry.d.ts +32 -0
- package/lib/esm/render/webgl/CachedGeometry.d.ts.map +1 -1
- package/lib/esm/render/webgl/CachedGeometry.js +69 -0
- package/lib/esm/render/webgl/CachedGeometry.js.map +1 -1
- package/lib/esm/render/webgl/DrawCommand.d.ts.map +1 -1
- package/lib/esm/render/webgl/DrawCommand.js +6 -4
- package/lib/esm/render/webgl/DrawCommand.js.map +1 -1
- package/lib/esm/render/webgl/EDL.d.ts +40 -0
- package/lib/esm/render/webgl/EDL.d.ts.map +1 -0
- package/lib/esm/render/webgl/EDL.js +260 -0
- package/lib/esm/render/webgl/EDL.js.map +1 -0
- package/lib/esm/render/webgl/EdgeSettings.js +2 -2
- package/lib/esm/render/webgl/FrameBuffer.d.ts +4 -0
- package/lib/esm/render/webgl/FrameBuffer.d.ts.map +1 -1
- package/lib/esm/render/webgl/FrameBuffer.js +9 -0
- package/lib/esm/render/webgl/FrameBuffer.js.map +1 -1
- package/lib/esm/render/webgl/FrustumUniforms.d.ts +7 -0
- package/lib/esm/render/webgl/FrustumUniforms.d.ts.map +1 -1
- package/lib/esm/render/webgl/FrustumUniforms.js.map +1 -1
- package/lib/esm/render/webgl/Layer.js +2 -2
- package/lib/esm/render/webgl/LayerCommands.js +2 -2
- package/lib/esm/render/webgl/PlanarClassifier.js +7 -7
- package/lib/esm/render/webgl/PlanarClassifier.js.map +1 -1
- package/lib/esm/render/webgl/PointCloud.d.ts +2 -2
- package/lib/esm/render/webgl/PointCloud.d.ts.map +1 -1
- package/lib/esm/render/webgl/PointCloud.js +2 -0
- package/lib/esm/render/webgl/PointCloud.js.map +1 -1
- package/lib/esm/render/webgl/RealityMesh.d.ts +3 -1
- package/lib/esm/render/webgl/RealityMesh.d.ts.map +1 -1
- package/lib/esm/render/webgl/RealityMesh.js +8 -3
- package/lib/esm/render/webgl/RealityMesh.js.map +1 -1
- package/lib/esm/render/webgl/RealityModelUniforms.d.ts +9 -0
- package/lib/esm/render/webgl/RealityModelUniforms.d.ts.map +1 -1
- package/lib/esm/render/webgl/RealityModelUniforms.js +50 -0
- package/lib/esm/render/webgl/RealityModelUniforms.js.map +1 -1
- package/lib/esm/render/webgl/RenderCommands.d.ts +2 -1
- package/lib/esm/render/webgl/RenderCommands.d.ts.map +1 -1
- package/lib/esm/render/webgl/RenderCommands.js +45 -37
- package/lib/esm/render/webgl/RenderCommands.js.map +1 -1
- package/lib/esm/render/webgl/RenderFlags.d.ts +19 -17
- package/lib/esm/render/webgl/RenderFlags.d.ts.map +1 -1
- package/lib/esm/render/webgl/RenderFlags.js +8 -6
- package/lib/esm/render/webgl/RenderFlags.js.map +1 -1
- package/lib/esm/render/webgl/SceneCompositor.d.ts +6 -1
- package/lib/esm/render/webgl/SceneCompositor.d.ts.map +1 -1
- package/lib/esm/render/webgl/SceneCompositor.js +194 -77
- package/lib/esm/render/webgl/SceneCompositor.js.map +1 -1
- package/lib/esm/render/webgl/SolarShadowMap.js +2 -2
- package/lib/esm/render/webgl/SurfaceGeometry.js +5 -5
- package/lib/esm/render/webgl/Target.js +7 -7
- package/lib/esm/render/webgl/Target.js.map +1 -1
- package/lib/esm/render/webgl/Technique.d.ts.map +1 -1
- package/lib/esm/render/webgl/Technique.js +18 -3
- package/lib/esm/render/webgl/Technique.js.map +1 -1
- package/lib/esm/render/webgl/TechniqueFlags.js +4 -4
- package/lib/esm/render/webgl/TechniqueFlags.js.map +1 -1
- package/lib/esm/render/webgl/TechniqueId.d.ts +6 -2
- package/lib/esm/render/webgl/TechniqueId.d.ts.map +1 -1
- package/lib/esm/render/webgl/TechniqueId.js.map +1 -1
- package/lib/esm/render/webgl/UniformHandle.d.ts.map +1 -1
- package/lib/esm/render/webgl/UniformHandle.js +1 -2
- package/lib/esm/render/webgl/UniformHandle.js.map +1 -1
- package/lib/esm/render/webgl/VisibleTileFeatures.js +5 -5
- package/lib/esm/render/webgl/glsl/EDL.d.ts +14 -0
- package/lib/esm/render/webgl/glsl/EDL.d.ts.map +1 -0
- package/lib/esm/render/webgl/glsl/EDL.js +253 -0
- package/lib/esm/render/webgl/glsl/EDL.js.map +1 -0
- package/lib/esm/render/webgl/glsl/RenderPass.js +12 -12
- package/lib/esm/render/webgl/glsl/RenderPass.js.map +1 -1
- package/lib/esm/tile/BatchedTileIdMap.js +1 -1
- package/lib/esm/tile/BatchedTileIdMap.js.map +1 -1
- package/lib/esm/tile/DynamicIModelTile.js +1 -1
- package/lib/esm/tile/DynamicIModelTile.js.map +1 -1
- package/lib/esm/tile/GltfReader.js +1 -1
- package/lib/esm/tile/GltfReader.js.map +1 -1
- package/lib/esm/tile/IModelTile.js +1 -1
- package/lib/esm/tile/IModelTile.js.map +1 -1
- package/lib/esm/tile/ImdlReader.js +5 -5
- package/lib/esm/tile/ImdlReader.js.map +1 -1
- package/lib/esm/tile/RealityModelTileTree.d.ts.map +1 -1
- package/lib/esm/tile/RealityModelTileTree.js +2 -1
- package/lib/esm/tile/RealityModelTileTree.js.map +1 -1
- package/lib/esm/tile/RealityTileLoader.js +2 -2
- package/lib/esm/tile/RealityTileLoader.js.map +1 -1
- package/lib/esm/tile/TileTreeReference.d.ts +3 -0
- package/lib/esm/tile/TileTreeReference.d.ts.map +1 -1
- package/lib/esm/tile/TileTreeReference.js +3 -0
- package/lib/esm/tile/TileTreeReference.js.map +1 -1
- package/lib/esm/tile/map/CesiumTerrainProvider.js +9 -9
- package/lib/esm/tile/map/CesiumTerrainProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/ArcGISImageryProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/ArcGISImageryProvider.js +1 -2
- package/lib/esm/tile/map/ImageryProviders/ArcGISImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +2 -2
- package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js +2 -2
- package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryTileTree.d.ts +1 -0
- package/lib/esm/tile/map/ImageryTileTree.d.ts.map +1 -1
- package/lib/esm/tile/map/ImageryTileTree.js +4 -1
- package/lib/esm/tile/map/ImageryTileTree.js.map +1 -1
- package/lib/esm/tile/map/MapLayerImageryProvider.d.ts +7 -3
- package/lib/esm/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/MapLayerImageryProvider.js +12 -8
- package/lib/esm/tile/map/MapLayerImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/MapTileTree.js +1 -1
- package/lib/esm/tile/map/MapTileTree.js.map +1 -1
- package/lib/esm/tile/map/MapTiledGraphicsProvider.d.ts +1 -0
- package/lib/esm/tile/map/MapTiledGraphicsProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTiledGraphicsProvider.js +4 -0
- package/lib/esm/tile/map/MapTiledGraphicsProvider.js.map +1 -1
- package/lib/esm/tile/map/WmtsCapabilities.d.ts +23 -68
- package/lib/esm/tile/map/WmtsCapabilities.d.ts.map +1 -1
- package/lib/esm/tile/map/WmtsCapabilities.js +268 -259
- package/lib/esm/tile/map/WmtsCapabilities.js.map +1 -1
- package/lib/esm/tools/ClipViewTool.js +2 -2
- package/lib/esm/tools/ClipViewTool.js.map +1 -1
- package/lib/esm/tools/MeasureTool.js +1 -1
- package/lib/esm/tools/MeasureTool.js.map +1 -1
- package/package.json +22 -23
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewManager.js","sourceRoot":"","sources":["../../src/ViewManager.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\nimport { BeEvent, BentleyStatus, BeTimePoint, BeUiEvent, Id64Arg } from \"@itwin/core-bentley\";\r\nimport { GeometryStreamProps } from \"@itwin/core-common\";\r\nimport { HitDetail } from \"./HitDetail\";\r\nimport { IModelApp } from \"./IModelApp\";\r\nimport { IModelConnection } from \"./IModelConnection\";\r\nimport { DisclosedTileTreeSet, TileTree } from \"./tile/internal\";\r\nimport { EventController } from \"./tools/EventController\";\r\nimport { BeButtonEvent, EventHandled } from \"./tools/Tool\";\r\nimport { ScreenViewport, ViewportDecorator } from \"./Viewport\";\r\nimport { System } from \"./render/webgl/System\";\r\n\r\n/** Interface for drawing [decoration graphics]($docs/learning/frontend/ViewDecorations.md) into, or on top of, the active [[ScreenViewport]]s managed by [[ViewManager]].\r\n * Decorators generate [[Decorations]].\r\n * @public\r\n * @extensions\r\n */\r\nexport interface Decorator extends ViewportDecorator {\r\n /** If the [[decorate]] method created pickable graphics, return true if the supplied Id is from this Decorator.\r\n * @param id The Id of the currently selected pickable graphics.\r\n * @returns true if 'id' belongs to this Decorator\r\n */\r\n testDecorationHit?(id: string): boolean;\r\n\r\n /** If the [[decorate]] method created pickable graphics using a persistent element id instead of a transient id,\r\n * return true if the Decorator wants the opportunity to override the default persistent element behavior for\r\n * the supplied [[HitDetail]].\r\n * - Replace or augment the element's tooltip by implementing [[getDecorationToolTip]].\r\n * - Override the element's snap geometry by implementing [[getDecorationGeometry]].\r\n * - Handle button events as decorator events by implementing [[onDecorationButtonEvent]].\r\n * @param hit The HitDetail of the currently selected persistent element or pickable graphics using a persistent element id.\r\n * @returns true if this Decorator wants to override the default persistent element behavior.\r\n */\r\n overrideElementHit?(hit: HitDetail): boolean;\r\n\r\n /** If [[testDecorationHit]] or [[overrideElementHit]] returned true, implement this method to return the tooltip message for this Decorator.\r\n * @param hit The HitDetail about the decoration that was picked.\r\n * @returns A promise with the HTMLElement or string (that may contain HTML) with the tooltip message.\r\n */\r\n getDecorationToolTip?(hit: HitDetail): Promise<HTMLElement | string>;\r\n\r\n /** If [[testDecorationHit]] or [[overrideElementHit]] returned true, implement this method to handle a button event for this Decorator.\r\n * @param hit The HitDetail about the decoration that was picked.\r\n * @param ev The BeButtonEvent that identified this decoration.\r\n * @returns A Promise that resolves to Yes if event completely handled by decoration and event should not be processed by the calling tool.\r\n */\r\n onDecorationButtonEvent?(hit: HitDetail, ev: BeButtonEvent): Promise<EventHandled>;\r\n\r\n /** If [[testDecorationHit]] or [[overrideElementHit]] returned true, implement this method to return the snappable geometry for this Decorator. Geometry that changes with every cursor motion isn't valid for snapping.\r\n * An example would be an InteractiveTool for placing a linestring. It might wish to allow snapping to accepted segments, the segment from the last accepted point to the current cursor position would not be included\r\n * as snappable geometry and would just be displayed in dynamics.\r\n * @param hit The HitDetail about the decoration that was picked.\r\n * @returns GeometryStreamProps containing world coordinate snappable geometry for this decoration.\r\n */\r\n getDecorationGeometry?(hit: HitDetail): GeometryStreamProps | undefined;\r\n}\r\n\r\n/** Argument for [[ViewManager.onSelectedViewportChanged]]\r\n * @public\r\n * @extensions\r\n */\r\nexport interface SelectedViewportChangedArgs {\r\n current?: ScreenViewport;\r\n previous?: ScreenViewport;\r\n}\r\n\r\n/** An object which customizes the locate tooltip.\r\n * @internal\r\n */\r\nexport interface ToolTipProvider {\r\n /** Augment or replace tooltip for the specified HitDetail.\r\n * To cooperate with other tooltip providers, replacing the input tooltip instead of appending information is discouraged.\r\n */\r\n augmentToolTip(hit: HitDetail, tooltip: Promise<HTMLElement | string>): Promise<HTMLElement | string>;\r\n}\r\n\r\n/** The ViewManager holds the list of opened views, plus the *selected view*. It also provides notifications of view open/close and suspend/resume.\r\n * Applications must call [[addViewport]] when new Viewports that should be associated with user events are created.\r\n *\r\n * A single ViewManager is created when [[IModelApp.startup]] is called. It can be accessed via the static member [[IModelApp.viewManager]].\r\n *\r\n * The ViewManager controls the render loop, which causes the contents of each registered [[Viewport]] to update on the screen.\r\n * @public\r\n * @extensions\r\n */\r\nexport class ViewManager implements Iterable<ScreenViewport> {\r\n public inDynamicsMode = false;\r\n public cursor = \"default\";\r\n private readonly _viewports: ScreenViewport[] = [];\r\n public readonly decorators: Decorator[] = [];\r\n private _selectedView?: ScreenViewport;\r\n private _invalidateScenes = false;\r\n private _skipSceneCreation = false;\r\n private _doIdleWork = false;\r\n private _idleWorkTimer?: any;\r\n\r\n /** @internal */\r\n public readonly toolTipProviders: ToolTipProvider[] = [];\r\n\r\n private _beginIdleWork() {\r\n const idleWork = () => {\r\n if (undefined === this._idleWorkTimer)\r\n return;\r\n if (this._viewports.length > 0) {\r\n this._idleWorkTimer = undefined;\r\n return;\r\n }\r\n if (IModelApp.renderSystem.doIdleWork())\r\n this._idleWorkTimer = setTimeout(idleWork, 1);\r\n else\r\n this._idleWorkTimer = undefined;\r\n };\r\n\r\n if (undefined === this._idleWorkTimer)\r\n this._idleWorkTimer = setTimeout(idleWork, 1);\r\n }\r\n\r\n /** @internal */\r\n public onInitialized() {\r\n this.addDecorator(IModelApp.accuSnap);\r\n this.addDecorator(IModelApp.tentativePoint);\r\n this.addDecorator(IModelApp.accuDraw);\r\n this.addDecorator(IModelApp.toolAdmin);\r\n this.cursor = \"default\";\r\n\r\n const options = IModelApp.renderSystem.options;\r\n this._doIdleWork = true === options.doIdleWork;\r\n if (this._doIdleWork)\r\n this._beginIdleWork();\r\n }\r\n\r\n /** @internal */\r\n public onShutDown() {\r\n if (undefined !== this._idleWorkTimer) {\r\n clearTimeout(this._idleWorkTimer);\r\n this._idleWorkTimer = undefined;\r\n }\r\n this._viewports.length = 0;\r\n this.decorators.length = 0;\r\n this.toolTipProviders.length = 0;\r\n this._selectedView = undefined;\r\n }\r\n\r\n /** Returns true if the specified viewport is currently being managed by this ViewManager.\r\n * @see [[addViewport]] to enable management of a viewport and [[dropViewport]] to disable it.\r\n */\r\n public hasViewport(viewport: ScreenViewport) {\r\n return this._viewports.includes(viewport);\r\n }\r\n\r\n /** Called after the selected view changes.\r\n * @param old Previously selected viewport.\r\n * @param current Currently selected viewport.\r\n */\r\n public readonly onSelectedViewportChanged = new BeUiEvent<SelectedViewportChangedArgs>();\r\n\r\n /** Called after a view is opened. This can happen when the iModel is first opened or when a user opens a new view. */\r\n public readonly onViewOpen = new BeUiEvent<ScreenViewport>();\r\n\r\n /** Called after a view is closed. This can happen when the iModel is closed or when a user closes an open view. */\r\n public readonly onViewClose = new BeUiEvent<ScreenViewport>();\r\n\r\n /** Called after a view is suspended. This happens when the application is minimized or, on a tablet, when the application\r\n * is moved to the background.\r\n */\r\n public readonly onViewSuspend = new BeUiEvent<ScreenViewport>();\r\n\r\n /** Called after a suspended view is resumed. This can happen when a minimized application is restored\r\n * or, on a tablet, when the application is moved to the foreground.\r\n */\r\n public readonly onViewResume = new BeUiEvent<ScreenViewport>();\r\n\r\n /** Called at the beginning of each tick of the render loop, before any viewports have been updated.\r\n * The render loop is typically invoked by a requestAnimationFrame() callback. It will not be invoked if the ViewManager is tracking no viewports.\r\n * @note Due to the frequency of this event, avoid performing expensive work inside event listeners.\r\n * @see [[ViewManager.onFinishRender]]\r\n */\r\n public readonly onBeginRender = new BeEvent<() => void>();\r\n\r\n /** Called at the end of each tick of the render loop, after all viewports have been updated.\r\n * The render loop is typically invoked by a requestAnimationFrame() callback. It will not be invoked if the ViewManager is tracking no viewports.\r\n * @note Due to the frequency of this event, avoid performing expensive work inside event listeners.\r\n * @see [[ViewManager.onBeginRender]]\r\n */\r\n public readonly onFinishRender = new BeEvent<() => void>();\r\n\r\n /** @internal */\r\n public endDynamicsMode(): void {\r\n if (!this.inDynamicsMode)\r\n return;\r\n\r\n this.inDynamicsMode = false;\r\n\r\n const cursorVp = IModelApp.toolAdmin.cursorView;\r\n if (cursorVp)\r\n cursorVp.changeDynamics(undefined);\r\n\r\n for (const vp of this._viewports) {\r\n if (vp !== cursorVp)\r\n vp.changeDynamics(undefined);\r\n }\r\n }\r\n\r\n /** @internal */\r\n public beginDynamicsMode() { this.inDynamicsMode = true; }\r\n\r\n /** @internal */\r\n public get doesHostHaveFocus(): boolean { return document.hasFocus(); }\r\n\r\n /** Set the selected [[Viewport]] to undefined. */\r\n public clearSelectedView(): void {\r\n const previousVp = this.selectedView;\r\n this._selectedView = undefined;\r\n this.notifySelectedViewportChanged(previousVp, undefined);\r\n }\r\n\r\n /** Sets the selected [[Viewport]]. */\r\n public async setSelectedView(vp: ScreenViewport | undefined): Promise<BentleyStatus> {\r\n if (undefined === vp)\r\n vp = this.getFirstOpenView();\r\n\r\n if (vp === this.selectedView) // already the selected view\r\n return BentleyStatus.SUCCESS;\r\n\r\n if (undefined === vp) {\r\n this.clearSelectedView();\r\n return BentleyStatus.ERROR;\r\n }\r\n\r\n const previousVp = this.selectedView;\r\n this._selectedView = vp;\r\n\r\n this.notifySelectedViewportChanged(previousVp, vp);\r\n\r\n if (undefined === previousVp)\r\n await IModelApp.toolAdmin.startDefaultTool();\r\n\r\n return BentleyStatus.SUCCESS;\r\n }\r\n\r\n /** @internal */\r\n public notifySelectedViewportChanged(previous: ScreenViewport | undefined, current: ScreenViewport | undefined) {\r\n IModelApp.toolAdmin.onSelectedViewportChanged(previous, current);// eslint-disable-line @typescript-eslint/no-floating-promises\r\n this.onSelectedViewportChanged.emit({ previous, current });\r\n }\r\n\r\n /** The \"selected view\" is the default for certain operations. */\r\n public get selectedView(): ScreenViewport | undefined { return this._selectedView; }\r\n\r\n /** Get the first opened view. */\r\n public getFirstOpenView(): ScreenViewport | undefined { return this._viewports.length > 0 ? this._viewports[0] : undefined; }\r\n\r\n /** Check if only a single viewport is being used. If so, render directly on-screen using its WebGL canvas. Otherwise, render each view offscreen. */\r\n private updateRenderToScreen() {\r\n const renderToScreen = 1 === this._viewports.length;\r\n for (const vp of this)\r\n vp.rendersToScreen = renderToScreen;\r\n }\r\n\r\n /** Add a new Viewport to the list of opened views and create an EventController for it.\r\n * @param newVp the Viewport to add\r\n * @returns SUCCESS if vp was successfully added, ERROR if it was already present.\r\n * @note raises onViewOpen event with newVp.\r\n */\r\n public addViewport(newVp: ScreenViewport): BentleyStatus {\r\n if (this.hasViewport(newVp)) // make sure its not already added\r\n return BentleyStatus.ERROR;\r\n\r\n newVp.setEventController(new EventController(newVp)); // this will direct events to the viewport\r\n this._viewports.push(newVp);\r\n this.updateRenderToScreen();\r\n this.setSelectedView(newVp);// eslint-disable-line @typescript-eslint/no-floating-promises\r\n\r\n // Start up the render loop if necessary.\r\n if (1 === this._viewports.length)\r\n IModelApp.startEventLoop();\r\n\r\n this.onViewOpen.emit(newVp);\r\n\r\n return BentleyStatus.SUCCESS;\r\n }\r\n\r\n /** Remove a Viewport from the list of opened views, and optionally dispose of it.\r\n * Typically a Viewport is dropped when it is no longer of any use to the application, in which case it should also be\r\n * disposed of as it may hold significant GPU resources.\r\n * However in some cases a Viewport may be temporarily dropped to suspend rendering; and subsequently re-added to\r\n * resume rendering - for example, when the Viewport is temporarily hidden by other UI elements.\r\n * In the latter case it is up to the caller to ensure the Viewport is properly disposed of when it is no longer needed.\r\n * Attempting to invoke any function on a Viewport after it has been disposed is an error.\r\n * @param vp the Viewport to remove.\r\n * @param disposeOfViewport Whether or not to dispose of the Viewport. Defaults to true.\r\n * @return SUCCESS if vp was successfully removed, ERROR if it was not present.\r\n * @note raises onViewClose event with vp.\r\n */\r\n public dropViewport(vp: ScreenViewport, disposeOfViewport: boolean = true): BentleyStatus {\r\n const index = this._viewports.indexOf(vp);\r\n if (index === -1)\r\n return BentleyStatus.ERROR;\r\n\r\n this.onViewClose.emit(vp);\r\n\r\n // make sure tools don't think the cursor is still in this viewport\r\n IModelApp.toolAdmin.forgetViewport(vp);\r\n\r\n vp.setEventController(undefined);\r\n this._viewports.splice(index, 1);\r\n\r\n if (this.selectedView === vp) // if removed viewport was selectedView, set it to undefined.\r\n this.setSelectedView(undefined);// eslint-disable-line @typescript-eslint/no-floating-promises\r\n\r\n vp.rendersToScreen = false;\r\n this.updateRenderToScreen();\r\n\r\n if (disposeOfViewport)\r\n vp.dispose();\r\n\r\n if (this._doIdleWork && this._viewports.length === 0)\r\n this._beginIdleWork();\r\n\r\n return BentleyStatus.SUCCESS;\r\n }\r\n\r\n /** Iterate over the viewports registered with the view manager. */\r\n public [Symbol.iterator](): Iterator<ScreenViewport> {\r\n return this._viewports[Symbol.iterator]();\r\n }\r\n\r\n /** Force each registered [[Viewport]] to regenerate all of its cached [[Decorations]] on the next frame. If the decorator parameter is specified, only\r\n * the specified decorator will have its cached decorations invalidated for all viewports.\r\n * @see [[Viewport.invalidateCachedDecorations]] to manually remove a decorator's cached decorations from a viewport, forcing them to be regenerated.\r\n * @beta\r\n */\r\n public invalidateCachedDecorationsAllViews(decorator: ViewportDecorator): void {\r\n if (decorator.useCachedDecorations)\r\n for (const vp of this)\r\n vp.invalidateCachedDecorations(decorator);\r\n }\r\n\r\n /** Force each registered [[Viewport]] to regenerate its [[Decorations]] on the next frame. */\r\n public invalidateDecorationsAllViews(): void {\r\n for (const vp of this)\r\n vp.invalidateDecorations();\r\n }\r\n\r\n /** Force each registered [[Viewport]] to regenerate its [[FeatureSymbology.Overrides]] on the next frame.\r\n * @alpha\r\n */\r\n public invalidateSymbologyOverridesAllViews(): void {\r\n for (const vp of this)\r\n vp.setFeatureOverrideProviderChanged();\r\n }\r\n\r\n /** @internal */\r\n public onSelectionSetChanged(_iModel: IModelConnection) {\r\n for (const vp of this)\r\n vp.markSelectionSetDirty();\r\n\r\n IModelApp.requestNextAnimation();\r\n }\r\n\r\n /** @internal */\r\n public invalidateViewportScenes(): void {\r\n for (const vp of this)\r\n vp.invalidateScene();\r\n }\r\n\r\n /** @internal */\r\n public validateViewportScenes(): void {\r\n for (const vp of this)\r\n vp.setValidScene();\r\n }\r\n\r\n /** @internal */\r\n public invalidateScenes(): void {\r\n this._invalidateScenes = true;\r\n IModelApp.requestNextAnimation();\r\n }\r\n /** @internal */\r\n public get sceneInvalidated(): boolean { return this._invalidateScenes; }\r\n\r\n /** Invoked by ToolAdmin event loop.\r\n * @internal\r\n */\r\n public renderLoop(): void {\r\n if (0 === this._viewports.length)\r\n return;\r\n if (this._skipSceneCreation)\r\n this.validateViewportScenes();\r\n else if (this._invalidateScenes)\r\n this.invalidateViewportScenes();\r\n\r\n this._invalidateScenes = false;\r\n\r\n this.onBeginRender.raiseEvent();\r\n\r\n for (const vp of this._viewports)\r\n vp.renderFrame();\r\n\r\n this.onFinishRender.raiseEvent();\r\n }\r\n\r\n /** Purge TileTrees that haven't been drawn since the specified time point and are not currently in use by any ScreenViewport.\r\n * Intended strictly for debugging purposes - TileAdmin takes care of properly purging.\r\n * @internal\r\n */\r\n public purgeTileTrees(olderThan: BeTimePoint): void {\r\n // A single viewport can display tiles from more than one IModelConnection.\r\n // NOTE: A viewport may be displaying no trees - but we need to record its IModel so we can purge those which are NOT being displayed\r\n // NOTE: That won't catch external tile trees previously used by that viewport.\r\n const trees = new DisclosedTileTreeSet();\r\n const treesByIModel = new Map<IModelConnection, Set<TileTree>>();\r\n for (const vp of this._viewports) {\r\n vp.discloseTileTrees(trees);\r\n if (undefined === treesByIModel.get(vp.iModel))\r\n treesByIModel.set(vp.iModel, new Set<TileTree>());\r\n }\r\n\r\n for (const tree of trees) {\r\n let set = treesByIModel.get(tree.iModel);\r\n if (undefined === set) {\r\n set = new Set<TileTree>();\r\n treesByIModel.set(tree.iModel, set);\r\n }\r\n\r\n set.add(tree);\r\n }\r\n\r\n for (const entry of treesByIModel) {\r\n const iModel = entry[0];\r\n iModel.tiles.purge(olderThan, entry[1]);\r\n }\r\n }\r\n\r\n /** Get the tooltip for a persistent element.\r\n * Calls the backend method [Element.getToolTipMessage]($backend), and replaces all instances of `${localizeTag}` with localized string from IModelApp.i18n.\r\n * @beta\r\n */\r\n public async getElementToolTip(hit: HitDetail): Promise<HTMLElement | string> {\r\n const msg: string[] = await hit.iModel.getToolTipMessage(hit.sourceId); // wait for the locate message(s) from the backend\r\n return IModelApp.formatElementToolTip(msg);\r\n }\r\n\r\n /** Add a new [[ToolTipProvider]] to customize the locate tooltip.\r\n * @internal\r\n * @param provider The new tooltip provider to add.\r\n * @throws Error if provider is already active.\r\n * @returns a function that may be called to remove this provider (in lieu of calling [[dropToolTipProvider]].)\r\n * @see [[dropToolTipProvider]]\r\n */\r\n public addToolTipProvider(provider: ToolTipProvider): () => void {\r\n if (this.toolTipProviders.includes(provider))\r\n throw new Error(\"tooltip provider already registered\");\r\n\r\n this.toolTipProviders.push(provider);\r\n return () => this.dropToolTipProvider(provider);\r\n }\r\n\r\n /** Drop (remove) a [[ToolTipProvider]] so it is no longer active.\r\n * @internal\r\n * @param provider The tooltip to drop.\r\n * @note Does nothing if provider is not currently active.\r\n */\r\n public dropToolTipProvider(provider: ToolTipProvider) {\r\n const index = this.toolTipProviders.indexOf(provider);\r\n if (index >= 0)\r\n this.toolTipProviders.splice(index, 1);\r\n }\r\n\r\n /** Add a new [[Decorator]] to display decorations into the active views.\r\n * @param decorator The new decorator to add.\r\n * @throws Error if decorator is already active.\r\n * @returns a function that may be called to remove this decorator (in lieu of calling [[dropDecorator]].)\r\n * @see [[dropDecorator]]\r\n */\r\n public addDecorator(decorator: Decorator): () => void {\r\n if (this.decorators.includes(decorator))\r\n throw new Error(\"decorator already registered\");\r\n\r\n this.decorators.push(decorator);\r\n this.invalidateDecorationsAllViews();\r\n return () => this.dropDecorator(decorator);\r\n }\r\n\r\n /** Drop (remove) a [[Decorator]] so it is no longer active.\r\n * @param decorator The Decorator to drop.\r\n * @returns true if the decorator was found and removed; false if the decorator was not found.\r\n */\r\n public dropDecorator(decorator: Decorator): boolean {\r\n const index = this.decorators.indexOf(decorator);\r\n if (index < 0)\r\n return false;\r\n\r\n this.invalidateCachedDecorationsAllViews(decorator);\r\n this.decorators.splice(index, 1);\r\n this.invalidateDecorationsAllViews();\r\n return true;\r\n }\r\n\r\n /** Get the tooltip for a pickable decoration.\r\n * @internal\r\n */\r\n public async getDecorationToolTip(hit: HitDetail): Promise<HTMLElement | string> {\r\n for (const decorator of this.decorators) {\r\n if (undefined !== decorator.testDecorationHit && undefined !== decorator.getDecorationToolTip && decorator.testDecorationHit(hit.sourceId))\r\n return decorator.getDecorationToolTip(hit);\r\n }\r\n return hit.viewport ? hit.viewport.getToolTip(hit) : \"\";\r\n }\r\n\r\n /** Allow a pickable decoration to handle a button event that identified it for the SelectTool.\r\n * @internal\r\n */\r\n public async onDecorationButtonEvent(hit: HitDetail, ev: BeButtonEvent): Promise<EventHandled> {\r\n for (const decorator of IModelApp.viewManager.decorators) {\r\n if (undefined !== decorator.testDecorationHit && undefined !== decorator.onDecorationButtonEvent && decorator.testDecorationHit(hit.sourceId))\r\n return decorator.onDecorationButtonEvent(hit, ev);\r\n }\r\n return EventHandled.No;\r\n }\r\n\r\n /** Allow a pickable decoration to be snapped to by AccuSnap or TentativePoint.\r\n * @internal\r\n */\r\n public getDecorationGeometry(hit: HitDetail): GeometryStreamProps | undefined {\r\n for (const decorator of IModelApp.viewManager.decorators) {\r\n if (undefined !== decorator.testDecorationHit && undefined !== decorator.getDecorationGeometry && decorator.testDecorationHit(hit.sourceId))\r\n return decorator.getDecorationGeometry(hit);\r\n }\r\n return undefined;\r\n }\r\n\r\n /** Allow a pickable decoration created using a persistent element id to augment or replace the the persistent element's tooltip.\r\n * @internal\r\n */\r\n public async overrideElementToolTip(hit: HitDetail): Promise<HTMLElement | string> {\r\n for (const decorator of this.decorators) {\r\n if (undefined !== decorator.overrideElementHit && undefined !== decorator.getDecorationToolTip && decorator.overrideElementHit(hit))\r\n return decorator.getDecorationToolTip(hit);\r\n }\r\n return this.getElementToolTip(hit);\r\n }\r\n\r\n /** Allow a pickable decoration created using a persistent element id to handle a button event that identified it for the SelectTool.\r\n * @internal\r\n */\r\n public async overrideElementButtonEvent(hit: HitDetail, ev: BeButtonEvent): Promise<EventHandled> {\r\n for (const decorator of IModelApp.viewManager.decorators) {\r\n if (undefined !== decorator.overrideElementHit && undefined !== decorator.onDecorationButtonEvent && decorator.overrideElementHit(hit))\r\n return decorator.onDecorationButtonEvent(hit, ev);\r\n }\r\n return EventHandled.No;\r\n }\r\n\r\n /** Allow a pickable decoration created using a persistent element id to control whether snapping uses the persistent element's geometry.\r\n * @internal\r\n */\r\n public overrideElementGeometry(hit: HitDetail): GeometryStreamProps | undefined {\r\n for (const decorator of IModelApp.viewManager.decorators) {\r\n if (undefined !== decorator.overrideElementHit && undefined !== decorator.getDecorationGeometry && decorator.overrideElementHit(hit))\r\n return decorator.getDecorationGeometry(hit);\r\n }\r\n return undefined;\r\n }\r\n\r\n public get crossHairCursor(): string { return `url(${IModelApp.publicPath}cursors/crosshair.cur), crosshair`; }\r\n public get dynamicsCursor(): string { return `url(${IModelApp.publicPath}cursors/dynamics.cur), move`; }\r\n public get grabCursor(): string { return `url(${IModelApp.publicPath}cursors/openHand.cur), auto`; }\r\n public get grabbingCursor(): string { return `url(${IModelApp.publicPath}cursors/closedHand.cur), auto`; }\r\n public get walkCursor(): string { return `url(${IModelApp.publicPath}cursors/walk.cur), auto`; }\r\n public get rotateCursor(): string { return `url(${IModelApp.publicPath}cursors/rotate.cur), auto`; }\r\n public get lookCursor(): string { return `url(${IModelApp.publicPath}cursors/look.cur), auto`; }\r\n public get zoomCursor(): string { return `url(${IModelApp.publicPath}cursors/zoom.cur), auto`; }\r\n\r\n /** Change the cursor shown in all Viewports.\r\n * @param cursor The new cursor to display. If undefined, the default cursor is used.\r\n */\r\n public setViewCursor(cursor: string = \"default\") {\r\n if (cursor === this.cursor)\r\n return;\r\n this.cursor = cursor;\r\n for (const vp of this._viewports)\r\n vp.setCursor(cursor);\r\n }\r\n\r\n /** Intended strictly as a temporary solution for interactive editing applications, until official support for such apps is implemented.\r\n * Call this after editing one or more models, passing in the Ids of those models, to cause new tiles to be generated reflecting the changes.\r\n * Pass undefined if you are unsure which models changed (this is less efficient as it discards all tiles for all viewed models in all viewports).\r\n * @internal\r\n */\r\n public refreshForModifiedModels(modelIds: Id64Arg | undefined): void {\r\n for (const vp of this._viewports)\r\n vp.refreshForModifiedModels(modelIds);\r\n }\r\n\r\n /** Sets the number of [MSAA]($docs/learning/display/MSAA.md) samples for all currently- and subsequently-opened [[ScreenViewport]]s.\r\n * @param numSamples The number of samples as a power of two. Values of 1 or less indicates anti-aliasing should be disabled. Non-power-of-two values are rounded\r\n * down to the nearest power of two. The maximum number of samples supported depends upon the client's graphics hardware capabilities. Higher values produce\r\n * a higher-quality image but also may also reduce framerate.\r\n * @see [[Viewport.antialiasSamples]] to adjust the number of samples for a specific viewport.\r\n */\r\n public setAntialiasingAllViews(numSamples: number): void {\r\n for (const vp of this)\r\n vp.antialiasSamples = numSamples;\r\n\r\n System.instance.antialiasSamples = numSamples;\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"ViewManager.js","sourceRoot":"","sources":["../../src/ViewManager.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\nimport { BeEvent, BentleyStatus, BeTimePoint, BeUiEvent, Id64Arg } from \"@itwin/core-bentley\";\r\nimport { GeometryStreamProps } from \"@itwin/core-common\";\r\nimport { HitDetail } from \"./HitDetail\";\r\nimport { IModelApp } from \"./IModelApp\";\r\nimport { IModelConnection } from \"./IModelConnection\";\r\nimport { DisclosedTileTreeSet, TileTree } from \"./tile/internal\";\r\nimport { BeButtonEvent, EventHandled } from \"./tools/Tool\";\r\nimport { ScreenViewport, ViewportDecorator } from \"./Viewport\";\r\nimport { System } from \"./render/webgl/System\";\r\n\r\n/** Interface for drawing [decoration graphics]($docs/learning/frontend/ViewDecorations.md) into, or on top of, the active [[ScreenViewport]]s managed by [[ViewManager]].\r\n * Decorators generate [[Decorations]].\r\n * @public\r\n * @extensions\r\n */\r\nexport interface Decorator extends ViewportDecorator {\r\n /** If the [[decorate]] method created pickable graphics, return true if the supplied Id is from this Decorator.\r\n * @param id The Id of the currently selected pickable graphics.\r\n * @returns true if 'id' belongs to this Decorator\r\n */\r\n testDecorationHit?(id: string): boolean;\r\n\r\n /** If the [[decorate]] method created pickable graphics using a persistent element id instead of a transient id,\r\n * return true if the Decorator wants the opportunity to override the default persistent element behavior for\r\n * the supplied [[HitDetail]].\r\n * - Replace or augment the element's tooltip by implementing [[getDecorationToolTip]].\r\n * - Override the element's snap geometry by implementing [[getDecorationGeometry]].\r\n * - Handle button events as decorator events by implementing [[onDecorationButtonEvent]].\r\n * @param hit The HitDetail of the currently selected persistent element or pickable graphics using a persistent element id.\r\n * @returns true if this Decorator wants to override the default persistent element behavior.\r\n */\r\n overrideElementHit?(hit: HitDetail): boolean;\r\n\r\n /** If [[testDecorationHit]] or [[overrideElementHit]] returned true, implement this method to return the tooltip message for this Decorator.\r\n * @param hit The HitDetail about the decoration that was picked.\r\n * @returns A promise with the HTMLElement or string (that may contain HTML) with the tooltip message.\r\n */\r\n getDecorationToolTip?(hit: HitDetail): Promise<HTMLElement | string>;\r\n\r\n /** If [[testDecorationHit]] or [[overrideElementHit]] returned true, implement this method to handle a button event for this Decorator.\r\n * @param hit The HitDetail about the decoration that was picked.\r\n * @param ev The BeButtonEvent that identified this decoration.\r\n * @returns A Promise that resolves to Yes if event completely handled by decoration and event should not be processed by the calling tool.\r\n */\r\n onDecorationButtonEvent?(hit: HitDetail, ev: BeButtonEvent): Promise<EventHandled>;\r\n\r\n /** If [[testDecorationHit]] or [[overrideElementHit]] returned true, implement this method to return the snappable geometry for this Decorator. Geometry that changes with every cursor motion isn't valid for snapping.\r\n * An example would be an InteractiveTool for placing a linestring. It might wish to allow snapping to accepted segments, the segment from the last accepted point to the current cursor position would not be included\r\n * as snappable geometry and would just be displayed in dynamics.\r\n * @param hit The HitDetail about the decoration that was picked.\r\n * @returns GeometryStreamProps containing world coordinate snappable geometry for this decoration.\r\n */\r\n getDecorationGeometry?(hit: HitDetail): GeometryStreamProps | undefined;\r\n}\r\n\r\n/** Argument for [[ViewManager.onSelectedViewportChanged]]\r\n * @public\r\n * @extensions\r\n */\r\nexport interface SelectedViewportChangedArgs {\r\n current?: ScreenViewport;\r\n previous?: ScreenViewport;\r\n}\r\n\r\n/** An object which customizes the locate tooltip.\r\n * @internal\r\n */\r\nexport interface ToolTipProvider {\r\n /** Augment or replace tooltip for the specified HitDetail.\r\n * To cooperate with other tooltip providers, replacing the input tooltip instead of appending information is discouraged.\r\n */\r\n augmentToolTip(hit: HitDetail, tooltip: Promise<HTMLElement | string>): Promise<HTMLElement | string>;\r\n}\r\n\r\n/** The ViewManager holds the list of opened views, plus the *selected view*. It also provides notifications of view open/close and suspend/resume.\r\n * Applications must call [[addViewport]] when new Viewports that should be associated with user events are created.\r\n *\r\n * A single ViewManager is created when [[IModelApp.startup]] is called. It can be accessed via the static member [[IModelApp.viewManager]].\r\n *\r\n * The ViewManager controls the render loop, which causes the contents of each registered [[Viewport]] to update on the screen.\r\n * @public\r\n * @extensions\r\n */\r\nexport class ViewManager implements Iterable<ScreenViewport> {\r\n public inDynamicsMode = false;\r\n public cursor = \"default\";\r\n private readonly _viewports: ScreenViewport[] = [];\r\n public readonly decorators: Decorator[] = [];\r\n private _selectedView?: ScreenViewport;\r\n private _invalidateScenes = false;\r\n private _skipSceneCreation = false;\r\n private _doIdleWork = false;\r\n private _idleWorkTimer?: any;\r\n\r\n /** @internal */\r\n public readonly toolTipProviders: ToolTipProvider[] = [];\r\n\r\n private _beginIdleWork() {\r\n const idleWork = () => {\r\n if (undefined === this._idleWorkTimer)\r\n return;\r\n if (this._viewports.length > 0) {\r\n this._idleWorkTimer = undefined;\r\n return;\r\n }\r\n if (IModelApp.renderSystem.doIdleWork())\r\n this._idleWorkTimer = setTimeout(idleWork, 1);\r\n else\r\n this._idleWorkTimer = undefined;\r\n };\r\n\r\n if (undefined === this._idleWorkTimer)\r\n this._idleWorkTimer = setTimeout(idleWork, 1);\r\n }\r\n\r\n /** @internal */\r\n public onInitialized() {\r\n this.addDecorator(IModelApp.accuSnap);\r\n this.addDecorator(IModelApp.tentativePoint);\r\n this.addDecorator(IModelApp.accuDraw);\r\n this.addDecorator(IModelApp.toolAdmin);\r\n this.cursor = \"default\";\r\n\r\n const options = IModelApp.renderSystem.options;\r\n this._doIdleWork = true === options.doIdleWork;\r\n if (this._doIdleWork)\r\n this._beginIdleWork();\r\n }\r\n\r\n /** @internal */\r\n public onShutDown() {\r\n if (undefined !== this._idleWorkTimer) {\r\n clearTimeout(this._idleWorkTimer);\r\n this._idleWorkTimer = undefined;\r\n }\r\n this._viewports.length = 0;\r\n this.decorators.length = 0;\r\n this.toolTipProviders.length = 0;\r\n this._selectedView = undefined;\r\n }\r\n\r\n /** Returns true if the specified viewport is currently being managed by this ViewManager.\r\n * @see [[addViewport]] to enable management of a viewport and [[dropViewport]] to disable it.\r\n */\r\n public hasViewport(viewport: ScreenViewport) {\r\n return this._viewports.includes(viewport);\r\n }\r\n\r\n /** Called after the selected view changes.\r\n * @param old Previously selected viewport.\r\n * @param current Currently selected viewport.\r\n */\r\n public readonly onSelectedViewportChanged = new BeUiEvent<SelectedViewportChangedArgs>();\r\n\r\n /** Called after a view is opened. This can happen when the iModel is first opened or when a user opens a new view. */\r\n public readonly onViewOpen = new BeUiEvent<ScreenViewport>();\r\n\r\n /** Called after a view is closed. This can happen when the iModel is closed or when a user closes an open view. */\r\n public readonly onViewClose = new BeUiEvent<ScreenViewport>();\r\n\r\n /** Called after a view is suspended. This happens when the application is minimized or, on a tablet, when the application\r\n * is moved to the background.\r\n */\r\n public readonly onViewSuspend = new BeUiEvent<ScreenViewport>();\r\n\r\n /** Called after a suspended view is resumed. This can happen when a minimized application is restored\r\n * or, on a tablet, when the application is moved to the foreground.\r\n */\r\n public readonly onViewResume = new BeUiEvent<ScreenViewport>();\r\n\r\n /** Called at the beginning of each tick of the render loop, before any viewports have been updated.\r\n * The render loop is typically invoked by a requestAnimationFrame() callback. It will not be invoked if the ViewManager is tracking no viewports.\r\n * @note Due to the frequency of this event, avoid performing expensive work inside event listeners.\r\n * @see [[ViewManager.onFinishRender]]\r\n */\r\n public readonly onBeginRender = new BeEvent<() => void>();\r\n\r\n /** Called at the end of each tick of the render loop, after all viewports have been updated.\r\n * The render loop is typically invoked by a requestAnimationFrame() callback. It will not be invoked if the ViewManager is tracking no viewports.\r\n * @note Due to the frequency of this event, avoid performing expensive work inside event listeners.\r\n * @see [[ViewManager.onBeginRender]]\r\n */\r\n public readonly onFinishRender = new BeEvent<() => void>();\r\n\r\n /** @internal */\r\n public endDynamicsMode(): void {\r\n if (!this.inDynamicsMode)\r\n return;\r\n\r\n this.inDynamicsMode = false;\r\n\r\n const cursorVp = IModelApp.toolAdmin.cursorView;\r\n if (cursorVp)\r\n cursorVp.changeDynamics(undefined);\r\n\r\n for (const vp of this._viewports) {\r\n if (vp !== cursorVp)\r\n vp.changeDynamics(undefined);\r\n }\r\n }\r\n\r\n /** @internal */\r\n public beginDynamicsMode() { this.inDynamicsMode = true; }\r\n\r\n /** @internal */\r\n public get doesHostHaveFocus(): boolean { return document.hasFocus(); }\r\n\r\n /** Set the selected [[Viewport]] to undefined. */\r\n public clearSelectedView(): void {\r\n const previousVp = this.selectedView;\r\n this._selectedView = undefined;\r\n this.notifySelectedViewportChanged(previousVp, undefined);\r\n }\r\n\r\n /** Sets the selected [[Viewport]]. */\r\n public async setSelectedView(vp: ScreenViewport | undefined): Promise<BentleyStatus> {\r\n if (undefined === vp)\r\n vp = this.getFirstOpenView();\r\n\r\n if (vp === this.selectedView) // already the selected view\r\n return BentleyStatus.SUCCESS;\r\n\r\n if (undefined === vp) {\r\n this.clearSelectedView();\r\n return BentleyStatus.ERROR;\r\n }\r\n\r\n const previousVp = this.selectedView;\r\n this._selectedView = vp;\r\n\r\n this.notifySelectedViewportChanged(previousVp, vp);\r\n\r\n if (undefined === previousVp)\r\n await IModelApp.toolAdmin.startDefaultTool();\r\n\r\n return BentleyStatus.SUCCESS;\r\n }\r\n\r\n /** @internal */\r\n public notifySelectedViewportChanged(previous: ScreenViewport | undefined, current: ScreenViewport | undefined) {\r\n IModelApp.toolAdmin.onSelectedViewportChanged(previous, current);// eslint-disable-line @typescript-eslint/no-floating-promises\r\n this.onSelectedViewportChanged.emit({ previous, current });\r\n }\r\n\r\n /** The \"selected view\" is the default for certain operations. */\r\n public get selectedView(): ScreenViewport | undefined { return this._selectedView; }\r\n\r\n /** Get the first opened view. */\r\n public getFirstOpenView(): ScreenViewport | undefined { return this._viewports.length > 0 ? this._viewports[0] : undefined; }\r\n\r\n /** Check if only a single viewport is being used. If so, render directly on-screen using its WebGL canvas. Otherwise, render each view offscreen. */\r\n private updateRenderToScreen() {\r\n const renderToScreen = 1 === this._viewports.length;\r\n for (const vp of this)\r\n vp.rendersToScreen = renderToScreen;\r\n }\r\n\r\n /** Add a new Viewport to the list of opened views and create an EventController for it.\r\n * @param newVp the Viewport to add\r\n * @returns SUCCESS if vp was successfully added, ERROR if it was already present.\r\n * @note raises onViewOpen event with newVp.\r\n */\r\n public addViewport(newVp: ScreenViewport): BentleyStatus {\r\n if (this.hasViewport(newVp)) // make sure its not already added\r\n return BentleyStatus.ERROR;\r\n\r\n newVp.onViewManagerAdd();\r\n\r\n this._viewports.push(newVp);\r\n this.updateRenderToScreen();\r\n this.setSelectedView(newVp);// eslint-disable-line @typescript-eslint/no-floating-promises\r\n\r\n // Start up the render loop if necessary.\r\n if (1 === this._viewports.length)\r\n IModelApp.startEventLoop();\r\n\r\n this.onViewOpen.emit(newVp);\r\n\r\n return BentleyStatus.SUCCESS;\r\n }\r\n\r\n /** Remove a Viewport from the list of opened views, and optionally dispose of it.\r\n * Typically a Viewport is dropped when it is no longer of any use to the application, in which case it should also be\r\n * disposed of as it may hold significant GPU resources.\r\n * However in some cases a Viewport may be temporarily dropped to suspend rendering; and subsequently re-added to\r\n * resume rendering - for example, when the Viewport is temporarily hidden by other UI elements.\r\n * In the latter case it is up to the caller to ensure the Viewport is properly disposed of when it is no longer needed.\r\n * Attempting to invoke any function on a Viewport after it has been disposed is an error.\r\n * @param vp the Viewport to remove.\r\n * @param disposeOfViewport Whether or not to dispose of the Viewport. Defaults to true.\r\n * @return SUCCESS if vp was successfully removed, ERROR if it was not present.\r\n * @note raises onViewClose event with vp.\r\n */\r\n public dropViewport(vp: ScreenViewport, disposeOfViewport: boolean = true): BentleyStatus {\r\n const index = this._viewports.indexOf(vp);\r\n if (index === -1)\r\n return BentleyStatus.ERROR;\r\n\r\n this.onViewClose.emit(vp);\r\n\r\n // make sure tools don't think the cursor is still in this viewport\r\n IModelApp.toolAdmin.forgetViewport(vp);\r\n\r\n vp.onViewManagerDrop();\r\n\r\n this._viewports.splice(index, 1);\r\n\r\n if (this.selectedView === vp) // if removed viewport was selectedView, set it to undefined.\r\n this.setSelectedView(undefined);// eslint-disable-line @typescript-eslint/no-floating-promises\r\n\r\n vp.rendersToScreen = false;\r\n this.updateRenderToScreen();\r\n\r\n if (disposeOfViewport)\r\n vp.dispose();\r\n\r\n if (this._doIdleWork && this._viewports.length === 0)\r\n this._beginIdleWork();\r\n\r\n return BentleyStatus.SUCCESS;\r\n }\r\n\r\n /** Iterate over the viewports registered with the view manager. */\r\n public [Symbol.iterator](): Iterator<ScreenViewport> {\r\n return this._viewports[Symbol.iterator]();\r\n }\r\n\r\n /** Force each registered [[Viewport]] to regenerate all of its cached [[Decorations]] on the next frame. If the decorator parameter is specified, only\r\n * the specified decorator will have its cached decorations invalidated for all viewports.\r\n * @see [[Viewport.invalidateCachedDecorations]] to manually remove a decorator's cached decorations from a viewport, forcing them to be regenerated.\r\n * @beta\r\n */\r\n public invalidateCachedDecorationsAllViews(decorator: ViewportDecorator): void {\r\n if (decorator.useCachedDecorations)\r\n for (const vp of this)\r\n vp.invalidateCachedDecorations(decorator);\r\n }\r\n\r\n /** Force each registered [[Viewport]] to regenerate its [[Decorations]] on the next frame. */\r\n public invalidateDecorationsAllViews(): void {\r\n for (const vp of this)\r\n vp.invalidateDecorations();\r\n }\r\n\r\n /** Force each registered [[Viewport]] to regenerate its [[FeatureSymbology.Overrides]] on the next frame.\r\n * @alpha\r\n */\r\n public invalidateSymbologyOverridesAllViews(): void {\r\n for (const vp of this)\r\n vp.setFeatureOverrideProviderChanged();\r\n }\r\n\r\n /** @internal */\r\n public onSelectionSetChanged(_iModel: IModelConnection) {\r\n for (const vp of this)\r\n vp.markSelectionSetDirty();\r\n\r\n IModelApp.requestNextAnimation();\r\n }\r\n\r\n /** @internal */\r\n public invalidateViewportScenes(): void {\r\n for (const vp of this)\r\n vp.invalidateScene();\r\n }\r\n\r\n /** @internal */\r\n public validateViewportScenes(): void {\r\n for (const vp of this)\r\n vp.setValidScene();\r\n }\r\n\r\n /** @internal */\r\n public invalidateScenes(): void {\r\n this._invalidateScenes = true;\r\n IModelApp.requestNextAnimation();\r\n }\r\n /** @internal */\r\n public get sceneInvalidated(): boolean { return this._invalidateScenes; }\r\n\r\n /** Invoked by ToolAdmin event loop.\r\n * @internal\r\n */\r\n public renderLoop(): void {\r\n if (0 === this._viewports.length)\r\n return;\r\n if (this._skipSceneCreation)\r\n this.validateViewportScenes();\r\n else if (this._invalidateScenes)\r\n this.invalidateViewportScenes();\r\n\r\n this._invalidateScenes = false;\r\n\r\n this.onBeginRender.raiseEvent();\r\n\r\n for (const vp of this._viewports)\r\n vp.renderFrame();\r\n\r\n this.onFinishRender.raiseEvent();\r\n }\r\n\r\n /** Purge TileTrees that haven't been drawn since the specified time point and are not currently in use by any ScreenViewport.\r\n * Intended strictly for debugging purposes - TileAdmin takes care of properly purging.\r\n * @internal\r\n */\r\n public purgeTileTrees(olderThan: BeTimePoint): void {\r\n // A single viewport can display tiles from more than one IModelConnection.\r\n // NOTE: A viewport may be displaying no trees - but we need to record its IModel so we can purge those which are NOT being displayed\r\n // NOTE: That won't catch external tile trees previously used by that viewport.\r\n const trees = new DisclosedTileTreeSet();\r\n const treesByIModel = new Map<IModelConnection, Set<TileTree>>();\r\n for (const vp of this._viewports) {\r\n vp.discloseTileTrees(trees);\r\n if (undefined === treesByIModel.get(vp.iModel))\r\n treesByIModel.set(vp.iModel, new Set<TileTree>());\r\n }\r\n\r\n for (const tree of trees) {\r\n let set = treesByIModel.get(tree.iModel);\r\n if (undefined === set) {\r\n set = new Set<TileTree>();\r\n treesByIModel.set(tree.iModel, set);\r\n }\r\n\r\n set.add(tree);\r\n }\r\n\r\n for (const entry of treesByIModel) {\r\n const iModel = entry[0];\r\n iModel.tiles.purge(olderThan, entry[1]);\r\n }\r\n }\r\n\r\n /** Get the tooltip for a persistent element.\r\n * Calls the backend method [Element.getToolTipMessage]($backend), and replaces all instances of `${localizeTag}` with localized string from IModelApp.i18n.\r\n * @beta\r\n */\r\n public async getElementToolTip(hit: HitDetail): Promise<HTMLElement | string> {\r\n const msg: string[] = await hit.iModel.getToolTipMessage(hit.sourceId); // wait for the locate message(s) from the backend\r\n return IModelApp.formatElementToolTip(msg);\r\n }\r\n\r\n /** Add a new [[ToolTipProvider]] to customize the locate tooltip.\r\n * @internal\r\n * @param provider The new tooltip provider to add.\r\n * @throws Error if provider is already active.\r\n * @returns a function that may be called to remove this provider (in lieu of calling [[dropToolTipProvider]].)\r\n * @see [[dropToolTipProvider]]\r\n */\r\n public addToolTipProvider(provider: ToolTipProvider): () => void {\r\n if (this.toolTipProviders.includes(provider))\r\n throw new Error(\"tooltip provider already registered\");\r\n\r\n this.toolTipProviders.push(provider);\r\n return () => this.dropToolTipProvider(provider);\r\n }\r\n\r\n /** Drop (remove) a [[ToolTipProvider]] so it is no longer active.\r\n * @internal\r\n * @param provider The tooltip to drop.\r\n * @note Does nothing if provider is not currently active.\r\n */\r\n public dropToolTipProvider(provider: ToolTipProvider) {\r\n const index = this.toolTipProviders.indexOf(provider);\r\n if (index >= 0)\r\n this.toolTipProviders.splice(index, 1);\r\n }\r\n\r\n /** Add a new [[Decorator]] to display decorations into the active views.\r\n * @param decorator The new decorator to add.\r\n * @throws Error if decorator is already active.\r\n * @returns a function that may be called to remove this decorator (in lieu of calling [[dropDecorator]].)\r\n * @see [[dropDecorator]]\r\n */\r\n public addDecorator(decorator: Decorator): () => void {\r\n if (this.decorators.includes(decorator))\r\n throw new Error(\"decorator already registered\");\r\n\r\n this.decorators.push(decorator);\r\n this.invalidateDecorationsAllViews();\r\n return () => this.dropDecorator(decorator);\r\n }\r\n\r\n /** Drop (remove) a [[Decorator]] so it is no longer active.\r\n * @param decorator The Decorator to drop.\r\n * @returns true if the decorator was found and removed; false if the decorator was not found.\r\n */\r\n public dropDecorator(decorator: Decorator): boolean {\r\n const index = this.decorators.indexOf(decorator);\r\n if (index < 0)\r\n return false;\r\n\r\n this.invalidateCachedDecorationsAllViews(decorator);\r\n this.decorators.splice(index, 1);\r\n this.invalidateDecorationsAllViews();\r\n return true;\r\n }\r\n\r\n /** Get the tooltip for a pickable decoration.\r\n * @internal\r\n */\r\n public async getDecorationToolTip(hit: HitDetail): Promise<HTMLElement | string> {\r\n for (const decorator of this.decorators) {\r\n if (undefined !== decorator.testDecorationHit && undefined !== decorator.getDecorationToolTip && decorator.testDecorationHit(hit.sourceId))\r\n return decorator.getDecorationToolTip(hit);\r\n }\r\n return hit.viewport ? hit.viewport.getToolTip(hit) : \"\";\r\n }\r\n\r\n /** Allow a pickable decoration to handle a button event that identified it for the SelectTool.\r\n * @internal\r\n */\r\n public async onDecorationButtonEvent(hit: HitDetail, ev: BeButtonEvent): Promise<EventHandled> {\r\n for (const decorator of IModelApp.viewManager.decorators) {\r\n if (undefined !== decorator.testDecorationHit && undefined !== decorator.onDecorationButtonEvent && decorator.testDecorationHit(hit.sourceId))\r\n return decorator.onDecorationButtonEvent(hit, ev);\r\n }\r\n return EventHandled.No;\r\n }\r\n\r\n /** Allow a pickable decoration to be snapped to by AccuSnap or TentativePoint.\r\n * @internal\r\n */\r\n public getDecorationGeometry(hit: HitDetail): GeometryStreamProps | undefined {\r\n for (const decorator of IModelApp.viewManager.decorators) {\r\n if (undefined !== decorator.testDecorationHit && undefined !== decorator.getDecorationGeometry && decorator.testDecorationHit(hit.sourceId))\r\n return decorator.getDecorationGeometry(hit);\r\n }\r\n return undefined;\r\n }\r\n\r\n /** Allow a pickable decoration created using a persistent element id to augment or replace the the persistent element's tooltip.\r\n * @internal\r\n */\r\n public async overrideElementToolTip(hit: HitDetail): Promise<HTMLElement | string> {\r\n for (const decorator of this.decorators) {\r\n if (undefined !== decorator.overrideElementHit && undefined !== decorator.getDecorationToolTip && decorator.overrideElementHit(hit))\r\n return decorator.getDecorationToolTip(hit);\r\n }\r\n return this.getElementToolTip(hit);\r\n }\r\n\r\n /** Allow a pickable decoration created using a persistent element id to handle a button event that identified it for the SelectTool.\r\n * @internal\r\n */\r\n public async overrideElementButtonEvent(hit: HitDetail, ev: BeButtonEvent): Promise<EventHandled> {\r\n for (const decorator of IModelApp.viewManager.decorators) {\r\n if (undefined !== decorator.overrideElementHit && undefined !== decorator.onDecorationButtonEvent && decorator.overrideElementHit(hit))\r\n return decorator.onDecorationButtonEvent(hit, ev);\r\n }\r\n return EventHandled.No;\r\n }\r\n\r\n /** Allow a pickable decoration created using a persistent element id to control whether snapping uses the persistent element's geometry.\r\n * @internal\r\n */\r\n public overrideElementGeometry(hit: HitDetail): GeometryStreamProps | undefined {\r\n for (const decorator of IModelApp.viewManager.decorators) {\r\n if (undefined !== decorator.overrideElementHit && undefined !== decorator.getDecorationGeometry && decorator.overrideElementHit(hit))\r\n return decorator.getDecorationGeometry(hit);\r\n }\r\n return undefined;\r\n }\r\n\r\n public get crossHairCursor(): string { return `url(${IModelApp.publicPath}cursors/crosshair.cur), crosshair`; }\r\n public get dynamicsCursor(): string { return `url(${IModelApp.publicPath}cursors/dynamics.cur), move`; }\r\n public get grabCursor(): string { return `url(${IModelApp.publicPath}cursors/openHand.cur), auto`; }\r\n public get grabbingCursor(): string { return `url(${IModelApp.publicPath}cursors/closedHand.cur), auto`; }\r\n public get walkCursor(): string { return `url(${IModelApp.publicPath}cursors/walk.cur), auto`; }\r\n public get rotateCursor(): string { return `url(${IModelApp.publicPath}cursors/rotate.cur), auto`; }\r\n public get lookCursor(): string { return `url(${IModelApp.publicPath}cursors/look.cur), auto`; }\r\n public get zoomCursor(): string { return `url(${IModelApp.publicPath}cursors/zoom.cur), auto`; }\r\n\r\n /** Change the cursor shown in all Viewports.\r\n * @param cursor The new cursor to display. If undefined, the default cursor is used.\r\n */\r\n public setViewCursor(cursor: string = \"default\") {\r\n if (cursor === this.cursor)\r\n return;\r\n this.cursor = cursor;\r\n for (const vp of this._viewports)\r\n vp.setCursor(cursor);\r\n }\r\n\r\n /** Intended strictly as a temporary solution for interactive editing applications, until official support for such apps is implemented.\r\n * Call this after editing one or more models, passing in the Ids of those models, to cause new tiles to be generated reflecting the changes.\r\n * Pass undefined if you are unsure which models changed (this is less efficient as it discards all tiles for all viewed models in all viewports).\r\n * @internal\r\n */\r\n public refreshForModifiedModels(modelIds: Id64Arg | undefined): void {\r\n for (const vp of this._viewports)\r\n vp.refreshForModifiedModels(modelIds);\r\n }\r\n\r\n /** Sets the number of [MSAA]($docs/learning/display/MSAA.md) samples for all currently- and subsequently-opened [[ScreenViewport]]s.\r\n * @param numSamples The number of samples as a power of two. Values of 1 or less indicates anti-aliasing should be disabled. Non-power-of-two values are rounded\r\n * down to the nearest power of two. The maximum number of samples supported depends upon the client's graphics hardware capabilities. Higher values produce\r\n * a higher-quality image but also may also reduce framerate.\r\n * @see [[Viewport.antialiasSamples]] to adjust the number of samples for a specific viewport.\r\n */\r\n public setAntialiasingAllViews(numSamples: number): void {\r\n for (const vp of this)\r\n vp.antialiasSamples = numSamples;\r\n\r\n System.instance.antialiasSamples = numSamples;\r\n }\r\n}\r\n"]}
|
package/lib/esm/Viewport.d.ts
CHANGED
|
@@ -527,6 +527,10 @@ export declare abstract class Viewport implements IDisposable, TileUser {
|
|
|
527
527
|
get backgroundDrapeMap(): MapTileTreeReference | undefined;
|
|
528
528
|
/** @internal */
|
|
529
529
|
getMapLayerImageryProvider(index: number, isOverlay: boolean): MapLayerImageryProvider | undefined;
|
|
530
|
+
/** @beta
|
|
531
|
+
* Fully reset a map-layer tile tree; by calling this, the map-layer will to go through initialize process again, and all previously fetched tile will be lost.
|
|
532
|
+
*/
|
|
533
|
+
resetMapLayer(index: number, isOverlay: boolean): void;
|
|
530
534
|
/** Returns true if this Viewport is currently displaying the model with the specified Id. */
|
|
531
535
|
viewsModel(modelId: Id64String): boolean;
|
|
532
536
|
/** Attempt to change the 2d Model this Viewport is displaying, if its ViewState is a ViewState2d.
|
|
@@ -1206,6 +1210,7 @@ export declare class ScreenViewport extends Viewport {
|
|
|
1206
1210
|
};
|
|
1207
1211
|
};
|
|
1208
1212
|
private _evController?;
|
|
1213
|
+
private _resizeObserver?;
|
|
1209
1214
|
private _viewCmdTargetCenter?;
|
|
1210
1215
|
/** The number of entries in the view undo/redo buffer. */
|
|
1211
1216
|
maxUndoSteps: number;
|
|
@@ -1281,8 +1286,18 @@ export declare class ScreenViewport extends Viewport {
|
|
|
1281
1286
|
mousePosFromEvent(ev: MouseEvent): XAndY;
|
|
1282
1287
|
/** @internal */
|
|
1283
1288
|
mouseMovementFromEvent(ev: MouseEvent): XAndY;
|
|
1284
|
-
/** Set the event controller for this Viewport. Destroys previous controller, if one was defined.
|
|
1289
|
+
/** Set the event controller for this Viewport. Destroys previous controller, if one was defined.
|
|
1290
|
+
* @deprecated this was intended for internal use only.
|
|
1291
|
+
*/
|
|
1285
1292
|
setEventController(controller?: EventController): void;
|
|
1293
|
+
/** Invoked by ViewManager.addViewport.
|
|
1294
|
+
* @internal
|
|
1295
|
+
*/
|
|
1296
|
+
onViewManagerAdd(): void;
|
|
1297
|
+
/** Invoked by ViewManager.dropViewport.
|
|
1298
|
+
* @internal
|
|
1299
|
+
*/
|
|
1300
|
+
onViewManagerDrop(): void;
|
|
1286
1301
|
/** Find a point on geometry visible in this Viewport, within a radius of supplied pick point.
|
|
1287
1302
|
* @param pickPoint Point to search about, in world coordinates
|
|
1288
1303
|
* @param radius Radius, in pixels, of the circular area to search.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Viewport.d.ts","sourceRoot":"","sources":["../../src/Viewport.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Viewport.d.ts","sourceRoot":"","sources":["../../src/Viewport.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EACiB,UAAU,EAAE,OAAO,EAAe,WAAW,EAAW,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAE9H,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,KAAK,EAA+B,YAAY,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,4BAA4B,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAClJ,OAAO,EAAS,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EACxD,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,aAAa,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,qBAAqB,EAAU,SAAS,EAAE,QAAQ,EAAE,yBAAyB,EAC5I,YAAY,EAAE,iBAAiB,EAAE,OAAO,EAAkC,MAAM,EAAE,WAAW,EACzE,aAAa,EAAE,gBAAgB,EAAkB,SAAS,EAA4B,cAAc,EACxH,mBAAmB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,SAAS,EAC3E,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAc,WAAW,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAC5E,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAiB,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAGpE,OAAO,EAAE,SAAS,EAAc,MAAM,aAAa,CAAC;AAEpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAuB,MAAM,qBAAqB,CAAC;AAGtE,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAgB,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EACL,oBAAoB,EAAE,cAAc,EAAuB,uBAAuB,EAA4B,oBAAoB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,QAAQ,EAC1M,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACvH,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,6BAA6B,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAwB,4BAA4B,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AAC1H,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAIhD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;;;;;OASG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,IAAI,CAAC;IAErC;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,CAAC;CAC1C;AAED;;GAEG;AACH,oBAAY,gBAAgB;IAC1B,sEAAsE;IACtE,QAAQ,IAAA;IACR,2EAA2E;IAC3E,KAAK,IAAA;IACL,8DAA8D;IAC9D,aAAa,IAAA;IACb,sDAAsD;IACtD,WAAW,IAAA;IACX,oDAAoD;IACpD,IAAI,IAAA;IACJ,mDAAmD;IACnD,GAAG,IAAA;IACH,+DAA+D;IAC/D,WAAW,IAAA;IACX,yEAAyE;IACzE,GAAG,IAAA;CACJ;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,gFAAgF;IAChF,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,wEAAwE;IACxE,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,uHAAuH;IACvH,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,qCAAqC;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,sCAAsC;IACtC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,uDAAuD;IACvD,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,+EAA+E;IAC/E,mBAAmB,CAAC,EAAE,cAAc,CAAC;IACrC,uCAAuC;IACvC,YAAY,CAAC,EAAE,QAAQ,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,kFAAkF;IAClF,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;GAGG;AACH,oBAAY,aAAa;IAAG,IAAI,IAAI;IAAE,IAAI,IAAI;CAAE;AAEhD,gBAAgB;AAChB,eAAO,MAAM,0BAA0B,eAA0E,CAAC;AAElH,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,OAAO;QACf,CAAC,0BAA0B,CAAC,CAAC,EAAE,OAAO,CAAC;KACxC;CACF;AAED;;GAEG;AACH,oBAAY,2BAA2B,GAAG;IACxC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC;CAC/B,GAAG;IACF,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC;CAC9B,GAAG;IACF,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC;CAC7B,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,0EAA0E;IAC1E,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;IACrB,sEAAsE;IACtE,CAAC,EAAE,MAAM,CAAC;IACV,sEAAsE;IACtE,CAAC,EAAE,MAAM,CAAC;IACV;;;OAGG;IACH,8BAA8B,CAAC,EAAE,OAAO,CAAC;IACzC,+GAA+G;IAC/G,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB;;;OAGG;IACH,IAAI,CAAC,EAAE,KAAK,CAAC;IACb;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,8BAAsB,QAAS,YAAW,WAAW,EAAE,QAAQ;IAC7D;;;;;OAKG;IACH,SAAgB,aAAa,eAAoB,QAAQ,KAAK,IAAI,EAAI;IACtE;;OAEG;IACH,SAAgB,cAAc,eAAoB,QAAQ,SAAS,aAAa,KAAK,IAAI,EAAI;IAC7F,iGAAiG;IACjG,SAAgB,oBAAoB,eAAoB,QAAQ,KAAK,IAAI,EAAI;IAC7E,gGAAgG;IAChG,SAAgB,mBAAmB,eAAoB,QAAQ,KAAK,IAAI,EAAI;IAC5E;;OAEG;IACH,SAAgB,qBAAqB,eAAoB,QAAQ,KAAK,IAAI,EAAI;IAC9E,gGAAgG;IAChG,SAAgB,yBAAyB,eAAoB,QAAQ,KAAK,IAAI,EAAI;IAClF,oHAAoH;IACpH,SAAgB,iCAAiC,eAAoB,QAAQ,KAAK,IAAI,EAAI;IAC1F,4FAA4F;IAC5F,SAAgB,qBAAqB,eAAoB,QAAQ,KAAK,IAAI,EAAI;IAC9E;;OAEG;IACH,SAAgB,gCAAgC,eAAoB,QAAQ,KAAK,IAAI,EAAI;IACzF,kGAAkG;IAClG,SAAgB,yBAAyB,eAAoB,QAAQ,KAAK,IAAI,EAAI;IAClF,0FAA0F;IAC1F,SAAgB,iBAAiB,eAAoB,QAAQ,WAAW,WAAW,KAAK,IAAI,EAAI;IAChG,yHAAyH;IACzH,SAAgB,YAAY,eAAoB,QAAQ,qBAAqB,SAAS,KAAK,IAAI,EAAI;IACnG;;OAEG;IACH,SAAgB,UAAU,eAAoB,QAAQ,KAAK,IAAI,EAAI;IACnE;OACG;IACH,SAAgB,SAAS,eAAoB,QAAQ,KAAK,IAAI,EAAI;IAClE;;OAEG;IACH,SAAgB,kBAAkB,eAAoB,QAAQ,QAAQ,2BAA2B,KAAK,IAAI,EAAI;IAE9G,gBAAgB;IAChB,SAAS,CAAC,gBAAgB,UAAS;IAEnC;;OAEG;IACH,OAAO,CAAC,KAAK,CAAa;IAC1B,oEAAoE;IACpE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAsB;IACtD,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAsB;IAE9D,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,sBAAsB,CAAS;IACvC,gBAAgB;IAChB,SAAS,CAAC,mBAAmB,UAAS;IACtC,gBAAgB;IAChB,SAAS,CAAC,iBAAiB,UAAS;IACpC,gBAAgB;IAChB,SAAS,CAAC,WAAW,UAAS;IAC9B,gBAAgB;IAChB,IAAW,UAAU,YAA+B;IACpD,gBAAgB;IAChB,SAAS,CAAC,gBAAgB,UAAS;IACnC,gBAAgB;IAChB,IAAW,eAAe,YAAoC;IAC9D,gBAAgB;IACT,kBAAkB;IACzB,gBAAgB;IAChB,SAAS,CAAC,gBAAgB,UAAS;IACnC,gBAAgB;IAChB,IAAW,eAAe,YAAoC;IAC9D,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,sBAAsB,CAAS;IACvC,gBAAgB;IAChB,IAAW,qBAAqB,YAA0C;IAC1E,OAAO,CAAC,eAAe,CAAS;IAChC,gBAAgB;IAChB,IAAW,cAAc,YAAmC;IAE5D,oCAAoC;IAC7B,WAAW,IAAI,IAAI;IAK1B;;;;;OAKG;IACI,qBAAqB,IAAI,IAAI;IAKpC;;;OAGG;IACI,eAAe,IAAI,IAAI;IAM9B,gBAAgB;IACT,oBAAoB,IAAI,IAAI;IAKnC,gBAAgB;IACT,oBAAoB,IAAI,IAAI;IAKnC,gBAAgB;IACT,aAAa;IAIpB;;;OAGG;IACI,aAAa,IAAI,IAAI;IAK5B,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,gBAAgB;IAChB,SAAS,CAAC,YAAY,qBAA4B;IAClD,OAAO,CAAC,kBAAkB,CAAQ;IAClC,OAAO,CAAC,QAAQ,CAAC,2BAA2B,CAAuC;IACnF,OAAO,CAAC,iBAAiB,CAAC,CAAS;IAEnC,gBAAgB;IAChB,SAAgB,aAAa,2BAAkC;IAE/D,sCAAsC;IACtC,OAAO,CAAC,gBAAgB,CAAC,CAAc;IACvC,wEAAwE;IACxE,OAAO,CAAC,eAAe,CAAK;IAC5B,2CAA2C;IAC3C,OAAO,CAAC,YAAY,CAAC,CAAS;IAC9B,kCAAkC;IAClC,OAAO,CAAC,gBAAgB,CAAC,CAAS;IAClC,2DAA2D;IAC3D,IAAW,oBAAoB,IAAI,UAAU,GAAG,SAAS,CAExD;IAED,OAAO,CAAC,oBAAoB,CAAQ;IACpC;;OAEG;IACH,IAAW,mBAAmB,IACO,OAAO,CAD0B;IACtE,IAAW,mBAAmB,CAAC,IAAI,EAAE,OAAO,EAK3C;IAED,OAAO,CAAC,6BAA6B,CAAS;IAC9C;;OAEG;IACH,IAAW,4BAA4B,IACO,OAAO,CADmC;IACxF,IAAW,4BAA4B,CAAC,IAAI,EAAE,OAAO,EAKpD;IAED,OAAO,CAAC,6BAA6B,CAAS;IAC9C;;OAEG;IACH,IAAW,4BAA4B,IACO,OAAO,CADmC;IACxF,IAAW,4BAA4B,CAAC,IAAI,EAAE,OAAO,EAKpD;IAED,6GAA6G;IAC7G,OAAc,SAAS,aAA8B;IAErD,OAAO,CAAC,mBAAmB,CAA6C;IACxE,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,OAAO,CAAC,CAAe;IAC/B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,WAAW,CAAC,CAAU;IAC9B,OAAO,CAAC,YAAY,CAAC,CAAU;IAC/B,OAAO,CAAC,qBAAqB,CAAkB;IAC/C,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAiC;IAC3E,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAoC;IAC5E,OAAO,CAAC,yBAAyB,CAAC,CAA2B;IAC7D,OAAO,CAAC,OAAO,CAAyB;IACxC,OAAO,CAAC,SAAS,CAAsE;IACvF,OAAO,CAAC,MAAM,CAAuB;IAErC,mDAAmD;IACnD,IAAW,aAAa,IAAI,aAAa,GAAG,SAAS,CAEpD;IACM,gBAAgB,CAAC,QAAQ,EAAE,aAAa;IAK/C,yDAAyD;IACzD,IAAW,mBAAmB,IAAI,mBAAmB,GAAG,SAAS,CAEhE;IACM,sBAAsB,CAAC,QAAQ,EAAE,mBAAmB;IAK3D,cAAc;IACd,IAAW,YAAY,IAAI,YAAY,CAA+B;IAEtE,uCAAuC;IACvC,IAAW,QAAQ,IAAI,QAAQ,CAAwC;IACvE,0EAA0E;IAC1E,IAAW,SAAS,IAAI,QAAQ,CAAyC;IACzE,+DAA+D;IAC/D,IAAW,cAAc,IAAI,KAAK,CAA8C;IAChF,4FAA4F;IAC5F,IAAW,aAAa,IAAI,KAAK,CAA6C;IAC9E,gBAAgB;IAChB,IAAW,aAAa,IAAI,MAAM,CAA6C;IAE/E,4DAA4D;IAC5D,IAAW,gBAAgB,IAAI,MAAM,CAEpC;IACD,IAAW,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAE3C;IAED,oDAAoD;IACpD,IAAW,SAAS,IAAI,MAAM,GAAG,SAAS,CAEzC;IACD,IAAW,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,EAE5C;IAED,gBAAgB;IAChB,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAkB;IAEzD,8EAA8E;IAC9E,aAAoB,QAAQ,IAAI,QAAQ,CAAC;IACzC,gBAAgB;IAChB,IAAW,mBAAmB,IAAI,OAAO,CAAkB;IAE3D,gBAAgB;IAChB,IAAW,MAAM,IAAI,YAAY,CAGhC;IAED;;;OAGG;IACH,IAAW,UAAU,IAAI,OAAO,CAE/B;IAED,2EAA2E;IAC3E,IAAW,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAyB;IAC7D,IAAW,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,EAGxC;IAED;;OAEG;IACH,IAAW,gBAAgB,IAAI,MAAM,CAAC,QAAQ,CAA2B;IACzE,IAAW,gBAAgB,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAGpD;IAED,2EAA2E;IAC3E,IAAW,aAAa,IAAI,aAAa,CAExC;IACD,IAAW,aAAa,CAAC,QAAQ,EAAE,aAAa,EAG/C;IAED;;OAEG;IACH,IAAW,QAAQ,IAAI,OAAO,CAAgC;IAE9D;;OAEG;IACH,IAAW,SAAS,IAAI,SAAS,CAAgC;IACjE,IAAW,SAAS,CAAC,SAAS,EAAE,SAAS,EAExC;IAED,qCAAqC;IACrC,IAAW,YAAY,IAAI,iBAAiB,CAAmC;IAC/E,IAAW,YAAY,CAAC,KAAK,EAAE,iBAAiB,EAE/C;IAED;;OAEG;IACI,oBAAoB,CAAC,SAAS,EAAE,yBAAyB,GAAG,IAAI;IAIvE,oDAAoD;IACpD,IAAW,SAAS,IAAI,SAAS,CAAiD;IAClF,IAAW,SAAS,CAAC,KAAK,EAAE,SAAS,EAEpC;IAED;;;;;OAKG;IACH,IAAW,gBAAgB,IAAI,MAAM,CAEpC;IACD,IAAW,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAK7C;IAED;;OAEG;IACH,IAAW,YAAY,YAMtB;IAED;;;OAGG;IACI,uBAAuB,CAAC,EAAE,EAAE,UAAU,GAAG,IAAI;IAIpD;;;;OAIG;IACI,mBAAmB,CAAC,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,mBAAmB,GAAG,IAAI;IAI1E;;;;OAIG;IACI,sBAAsB,CAAC,EAAE,EAAE,UAAU,GAAG,mBAAmB,GAAG,SAAS;IAI9E;;;;;;OAMG;IACI,wBAAwB,CAAC,EAAE,EAAE,UAAU,GAAG,qBAAqB;IAStE;;;;OAIG;IACI,oBAAoB,CAAC,EAAE,EAAE,UAAU,GAAG,OAAO;IAEpD;;;;OAIG;IACI,uBAAuB,CAAC,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,iBAAiB,GAAG,IAAI;IAI5E;;;OAGG;IACI,2BAA2B,CAAC,EAAE,EAAE,UAAU,GAAG,IAAI;IAIxD;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAU5B;;;;;;OAMG;IACI,qBAAqB,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,sBAAsB,GAAE,OAAe,GAAG,IAAI;IAYlH,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,sBAAsB;IAU9B,gBAAgB;IACT,gBAAgB,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,GAAG,SAAS;IAEpE;;;OAGG;IACI,wBAAwB,CAAC,aAAa,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAiBlF;;;OAGG;IACH,IAAW,qBAAqB,IAAI,qBAAqB,CAAoD;IAC7G,IAAW,qBAAqB,CAAC,QAAQ,EAAE,qBAAqB,EAE/D;IAED,yDAAyD;IAClD,wBAAwB,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI;IAIhE,4DAA4D;IACrD,2BAA2B,CAAC,KAAK,EAAE,0BAA0B,GAAG,IAAI;IAI3E,gBAAgB;IAChB,IAAW,aAAa,IAAI,oBAAoB,GAAG,SAAS,CAA0D;IAEtH,gBAAgB;IAChB,IAAW,UAAU,IAAI,oBAAoB,GAAG,SAAS,CAAuD;IAEhH,gBAAgB;IAChB,IAAW,kBAAkB,IAAI,oBAAoB,GAAG,SAAS,CAA+D;IAEhI,gBAAgB;IACT,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,uBAAuB,GAAG,SAAS;IAEzG;;OAEG;IACI,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO;IAEtD,6FAA6F;IACtF,UAAU,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO;IAE/C;;;;;;OAMG;IACU,mBAAmB,CAAC,WAAW,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,0BAA0B,GAAG,iBAAiB,GAAG,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBlJ;;;;;;OAMG;IACI,kBAAkB,CAAC,QAAQ,EAAE,OAAO,GAAG,OAAO;IASrD;;;;OAIG;IACU,mBAAmB,CAAC,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAOlE;;;;;;;OAOG;IACI,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO;IAYrE;;;;;OAKG;IACU,eAAe,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB5D;;OAEG;IACH,IAAW,kBAAkB,IAAI,iBAAiB,CAAqC;IACvF,IAAW,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAKrD;IACD;;OAEG;IACH,IAAW,WAAW,IAAI,OAAO,CAA8B;IAC/D,IAAW,WAAW,CAAC,MAAM,EAAE,OAAO,EAMrC;IAED,kCAAkC;IAClC,IAAW,MAAM,IAAI,gBAAgB,CAA6B;IAClE,gBAAgB;IAChB,IAAW,yBAAyB,IAAI,OAAO,CAA6B;IAC5E,gBAAgB;IAChB,IAAW,wBAAwB,IAAI,OAAO,CAAqE;IACnH,gBAAgB;IAChB,IAAW,yBAAyB,IAAI,OAAO,CAA+C;IAE9F;;;OAGG;IACH,IAAW,eAAe,IAAI,OAAO,CAAgC;IACrE,IAAW,eAAe,CAAC,MAAM,EAAE,OAAO,EAKzC;IACD,gBAAgB;IACH,UAAU,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC;IAiBtE,aAAa;IACA,iBAAiB,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,cAAc,CAAC;IA2BvE;;;;;OAKG;IACH,SAAgB,YAAY,uBAA4B,SAAS,UAAU,CAAC,KAAK,IAAI,EAAI;IAEzF,OAAO,CAAC,oBAAoB,CAA8C;IAE1E,gBAAgB;IAChB,SAAS,aAAa,MAAM,EAAE,YAAY;IAQnC,OAAO,IAAI,IAAI;IAWtB,OAAO,CAAC,OAAO;IAWf;;;;OAIG;IACH,SAAS,CAAC,YAAY,IAAI,IAAI;IAO9B,OAAO,CAAC,qBAAqB;IA+C7B,OAAO,CAAC,6BAA6B;IAkGrC;;;;;OAKG;IACH,SAAS,CAAC,cAAc,IAAI,IAAI;IAShC,OAAO,CAAC,sBAAsB;IAU9B;;;;;;;;;OASG;IACH,IAAW,mBAAmB,IAAI,OAAO,CAAwC;IACjF,IAAW,mBAAmB,CAAC,QAAQ,EAAE,OAAO,EAM/C;IACD;;OAEG;IACH,+JAA+J;IAC/J,IAAW,UAAU,IAAI,MAAM,CAE9B;IAED,sCAAsC;IACtC,IAAW,IAAI,IAAI,SAAS,CAE3B;IAED,gBAAgB;IAChB,IAAW,aAAa,WAGvB;IAED,gBAAgB;IAChB,IAAW,qBAAqB,IAAI,qBAAqB,GAAG,SAAS,CAA8D;IAEnI;;;OAGG;IACH,IAAW,UAAU,IAAI,OAAO,GAAG,SAAS,CAA6B;IAEzE;;;;OAIG;IACH,IAAW,WAAW,IAAI,OAAO,GAAG,SAAS,CAA8B;IAE3E;;OAEG;IACI,gBAAgB,IAAI,IAAI;IAW/B;;OAEG;IACI,eAAe,IAAI,IAAI;IAQ9B;;OAEG;IACI,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAMxC;;;;;OAKG;IACI,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,SAAS,GAAE,OAAe,GAAG,IAAI;IAOrE,wHAAwH;IACxH,IAAW,sBAAsB,IAAI,OAAO,CAAuC;IAEnF,kGAAkG;IAClG,IAAW,0BAA0B,IAAI,0BAA0B,CAAC,SAAS,CAA6C;IAE1H;;;OAGG;IACI,sCAAsC,CAAC,EAAE,EAAE,gBAAgB,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI;IAIzH;;;;;;;;;;OAUG;IACI,0BAA0B,CAAC,QAAQ,EAAE,uBAAuB,GAAG,OAAO;IAS7E;;;;OAIG;IACI,2BAA2B,CAAC,QAAQ,EAAE,uBAAuB,GAAG,OAAO;IAU9E;;;;;OAKG;IACI,2BAA2B,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,uBAAuB,KAAK,OAAO,GAAG,uBAAuB,GAAG,SAAS;IAQlI;;;;OAIG;IACH,IAAW,wBAAwB,IAAI,QAAQ,CAAC,uBAAuB,CAAC,CAEvE;IAED;;;;;OAKG;IACI,iCAAiC,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS;IAKhF,gBAAgB;IACT,mBAAmB,CAAC,IAAI,EAAE,gBAAgB,CAAC,SAAS,GAAG,IAAI;IAKlE;;OAEG;IACI,iCAAiC,IAAI,IAAI;IAKhD;;OAEG;IACH,IAAW,sBAAsB,IAAI,QAAQ,CAAC,qBAAqB,CAAC,CAEnE;IAED,gBAAgB;IACT,4BAA4B,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,qBAAqB,KAAK,IAAI,GAAG,IAAI;IAK1F,gBAAgB;IAChB,SAAS,CAAC,gCAAgC,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,IAAI,GAAG,IAAI;IAKxF,gBAAgB;IACT,iBAAiB,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,IAAI,GAAG,IAAI;IAKtE,gBAAgB;IACT,kBAAkB,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,IAAI,GAAG,IAAI;IAMvE;;OAEG;IACH,IAAW,qBAAqB,IAAI,OAAO,CAY1C;IAED;;OAEG;IACI,iBAAiB,CAAC,KAAK,EAAE,oBAAoB,GAAG,IAAI;IAM3D;;OAEG;IACI,wBAAwB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,IAAI;IAKtE;;OAEG;IACI,yBAAyB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,IAAI;IAKvE,sHAAsH;IAC/G,wBAAwB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,OAAO;IAIzE,gBAAgB;IACT,eAAe,CAAC,GAAG,EAAE,SAAS,GAAG,gBAAgB,GAAG,SAAS;IAIpE,gBAAgB;IACT,eAAe,CAAC,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,GAAG,gBAAgB,GAAG,SAAS;IAIpG,gBAAgB;IACT,qBAAqB,IAAI,OAAO;IAKvC,gBAAgB;IACT,kCAAkC,IAAI,IAAI;IAIjD,gBAAgB;IACT,qBAAqB;IAE5B,2DAA2D;IAC3D,IAAW,UAAU,IAAI,OAAO,CAE/B;IAED,gBAAgB;IACT,cAAc,CAAC,QAAQ,EAAE,WAAW,GAAG,SAAS,GAAG,IAAI;IAK9D,OAAO,CAAC,mBAAmB,CAAS;IAEpC;;;;;;;;;OASG;IACH,IAAW,SAAS,IAAI,UAAU,GAAG,SAAS,CAE7C;IACD,IAAW,SAAS,CAAC,EAAE,EAAE,UAAU,GAAG,SAAS,EAsB9C;IAED,IAAW,cAAc,IAAI,mBAAmB,CAAgD;IACzF,mBAAmB,CAAC,MAAM,CAAC,EAAE,QAAQ;IACrC,iBAAiB,CAAC,MAAM,CAAC,EAAE,OAAO;IAEzC;;OAEG;IACH,IAAW,iBAAiB,IAAI,MAAM,CAA4D;IAElG;;;;;OAKG;IACH,IAAW,gBAAgB,IAAI,MAAM,CAGpC;IAED;;;;;;OAMG;IACH,IAAW,aAAa,IAAI,MAAM,CAGjC;IAED,gBAAgB;IACT,iBAAiB,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,GAAG;IAC5C,gBAAgB;IACT,mBAAmB,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,GAAG;IAE9C;;;OAGG;IACI,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE,iBAAiB;IAc5D;;;;OAIG;IACI,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,GAAE,WAA+B,EAAE,mBAAmB,GAAE,MAAY,GAAG,OAAO;IAoB9H;;;;OAIG;IACI,0BAA0B,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,aAAa,GAAG,aAAa,GAAG,SAAS;IAyDrG;;OAEG;IACI,aAAa,IAAI,IAAI;IAO5B;;;;OAIG;IACI,YAAY,CAAC,SAAS,CAAC,EAAE,KAAK,GAAG,UAAU;IA2ClD,qEAAqE;IAC9D,mBAAmB,CAAC,EAAE,EAAE,cAAc,GAAG,IAAI;IAKpD,OAAO,CAAC,eAAe;IAwBvB,8FAA8F;IACvF,aAAa,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAG,UAAU;IAMjD;;OAEG;IACI,aAAa,CAAC,QAAQ,CAAC,EAAE,iBAAiB,GAAG,IAAI;IAExD,0EAA0E;IACnE,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI;IAC3C,0EAA0E;IACnE,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI;IAC3C;;;OAGG;IACI,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO;IACrD;;;OAGG;IACI,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO;IACrD,2EAA2E;IACpE,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI;IAC5C,2EAA2E;IACpE,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI;IAC5C,4EAA4E;IACrE,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI;IAC7C,yFAAyF;IAClF,kBAAkB,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,IAAI;IACxE,4EAA4E;IACrE,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE;IACtC,wFAAwF;IACjF,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI;IACxE;;;OAGG;IACI,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO;IACrD;;;OAGG;IACI,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO;IACrD;;;OAGG;IACI,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO;IACzD;;;OAGG;IACI,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO;IAC3D;;;OAGG;IACI,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO;IACzD;;;OAGG;IACI,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO;IAE5D;;;;OAIG;IACI,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAE/C;;;;;;;;;;;OAWG;IACI,UAAU,CAAC,GAAG,GAAE,WAA+B,EAAE,WAAW,GAAE,OAAc,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO;IAE5G,6FAA6F;IACtF,eAAe,CAAC,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO;IAE9C;;OAEG;IACI,MAAM,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,iBAAiB;IAsB5D;;;;OAIG;IACI,IAAI,CAAC,SAAS,EAAE,OAAO,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,aAAa,GAAG,kBAAkB,GAAG,UAAU;IAgDzI,gCAAgC;IACzB,oBAAoB,CAAC,cAAc,EAAE,cAAc,EAAE,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,aAAa,GAAG,aAAa,GAAG,IAAI;IAKhI;;;;;;OAMG;IACI,gBAAgB,CAAC,UAAU,EAAE,SAAS,EAAE,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,aAAa,GAAG,aAAa,GAAG,IAAI;IAiCnH;;;;OAIG;IACI,kBAAkB,CAAC,YAAY,EAAE,YAAY,EAAE,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,aAAa,GAAG,aAAa,GAAG,IAAI;IAc1H;;;OAGG;IACU,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,aAAa,GAAG,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrH;;;OAGG;IACI,YAAY,CAAC,MAAM,EAAE,aAAa,GAAG,YAAY,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,aAAa;IAKrG;;;OAGG;IACI,oBAAoB,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO;IAMxD,0EAA0E;IACnE,gBAAgB,IAAI,OAAO;IAQlC;;;;OAIG;IACI,WAAW,CAAC,QAAQ,CAAC,EAAE,QAAQ;IAUtC;;;OAGG;IACI,cAAc,CAAC,GAAG,EAAE,SAAS;IAOpC,gKAAgK;IAChK,SAAS,CAAC,iBAAiB,CAAC,OAAO,EAAE,SAAS,GAAG,IAAI;IAkCrD,OAAO,CAAC,MAAM,CAAC,SAAS;IAMxB,OAAO,CAAC,kBAAkB;IA6B1B,OAAO,CAAC,mBAAmB;IAoC3B,gBAAgB;IACT,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAYxC;;;;;;;;OAQG;IACI,mBAAmB,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM;IAcnD,OAAO,KAAK,wBAAwB,GAGnC;IAED,6JAA6J;IACtJ,4BAA4B,IAAI,QAAQ;IAI/C,OAAO,CAAC,YAAY;IAwBpB,sHAAsH;IAC/G,kBAAkB,IAAI,YAAY;IAIzC;;OAEG;IACI,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI;IAS/C;;OAEG;IACH,SAAgB,QAAQ,eAAoB,QAAQ,KAAK,IAAI,EAAI;IAEjE,gBAAgB;IAChB,SAAS,CAAC,kBAAkB;IAK5B,OAAO,CAAC,OAAO;IAKf;;;OAGG;IACI,WAAW,IAAI,IAAI;IA+J1B,gBAAgB;IAChB,SAAS,CAAC,cAAc,CAAC,YAAY,EAAE,WAAW,GAAG,IAAI;IAEzD;;;;;;OAMG;IACI,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,mBAAmB,UAAQ,GAAG,IAAI;IAQxH,gBAAgB;IACT,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI;IAU1C;;;;;;;OAOG;IACI,SAAS,CAAC,IAAI,GAAE,QAAmC,EAAE,UAAU,GAAE,OAA8B,EAAE,cAAc,GAAE,OAAe,GAAG,WAAW,GAAG,SAAS;IAKjK;;;;OAIG;IACI,eAAe,CAAC,IAAI,CAAC,EAAE,mBAAmB,GAAG,WAAW,GAAG,SAAS;IAI3E;;OAEG;IACI,iBAAiB,IAAI,iBAAiB;IAI7C;;;;;;;;OAQG;IACU,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC;IAmCpD;;OAEG;IACI,oBAAoB,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS;IAuB3G;;OAEG;IACI,sBAAsB,CAAC,IAAI,EAAE,0BAA0B,GAAG,OAAO,GAAG,SAAS;IAqBpF;;;;;OAKG;IACI,oBAAoB,CAAC,OAAO,EAAE,2BAA2B,EAAE,QAAQ,EAAE,4BAA4B,GAAG,IAAI;IAI/G,gBAAgB;IACT,iBAAiB,CAAC,KAAK,EAAE,YAAY,CAAC,UAAU,GAAG,IAAI;IAS9D;;;OAGG;IACI,wBAAwB,CAAC,QAAQ,EAAE,OAAO,GAAG,SAAS,GAAG,IAAI;IAKpE;;;;OAIG;IACH,IAAW,gBAAgB,IAAI,MAAM,CAEpC;IAED;;;OAGG;IACI,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS;IAWvD;;OAEG;IACH,IAAW,gBAAgB,IAAI,MAAM,CAEpC;IAED;;;;OAIG;IACI,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAIzD;;OAEG;IACI,gCAAgC,CAAC,QAAQ,EAAE,6BAA6B,GAAG,IAAI;IAItF;;;;;OAKG;IACH,IAAW,kBAAkB,IAAI,QAAQ,CAAC,MAAM,CAAC,CAEhD;IACD,IAAW,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,EAGtD;IAED;;;OAGG;IACI,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAIrD;;;OAGG;IACI,wBAAwB,IAAI,IAAI;IAIvC;;;;;;;OAOG;IACI,iCAAiC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,GAAG,SAAS,KAAK,IAAI,GAAG,MAAM,IAAI;IAyB7G,wCAAwC;IACxC,IAAW,UAAU,IAAI,MAAM,CAE9B;IAED,wCAAwC;IACjC,qBAAqB,IAAI,IAAI;CAGrC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,qBAAa,cAAe,SAAQ,QAAQ;IAC1C;;OAEG;IACH,OAAc,SAAS;QACrB,oDAAoD;;;;;YAKlD,uDAAuD;;;QAGzD,sDAAsD;;QAEtD;;;WAGG;;YAED,6EAA6E;;YAE7E,iGAAiG;;YAEjG;;;eAGG;;YAEH;;;eAGG;;YAEH,wGAAwG;;YAExG,wFAAwF;;;MAG1F;IAEF,OAAO,CAAC,aAAa,CAAC,CAAkB;IACxC,OAAO,CAAC,eAAe,CAAC,CAAiB;IACzC,OAAO,CAAC,oBAAoB,CAAC,CAAU;IACvC,0DAA0D;IACnD,YAAY,SAAM;IACzB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAkB;IAChD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkB;IAC7C,OAAO,CAAC,gBAAgB,CAAC,CAAW;IACpC,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,OAAO,CAAC,YAAY,CAAC,CAAoB;IACzC,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA0B;IAE3D,+CAA+C;IAC/C,SAAgB,SAAS,EAAE,cAAc,CAAC;IAC1C,qDAAqD;IACrD,SAAgB,KAAK,EAAE,cAAc,CAAC;IACtC,+CAA+C;IAC/C,SAAgB,MAAM,EAAE,iBAAiB,CAAC;IAC1C;;OAEG;IACH,SAAgB,aAAa,EAAE,cAAc,CAAC;IAC9C,uGAAuG;IACvG,SAAgB,UAAU,EAAE,cAAc,CAAC;IAE3C;;;;;;;OAOG;WACW,MAAM,CAAC,SAAS,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,GAAG,cAAc;IAUhF,gBAAgB;IACA,OAAO,IAAI,IAAI;IAK/B,gBAAgB;IACA,eAAe,IAAI,IAAI;IAOvC;;;OAGG;IACI,2BAA2B,CAAC,SAAS,EAAE,iBAAiB;IAO/D,gBAAgB;WACF,yBAAyB,CAAC,EAAE,EAAE,cAAc;IAK1D,gBAAgB;WACF,oBAAoB,CAAC,EAAE,EAAE,cAAc;IAMrD;;OAEG;WACW,iBAAiB,CAAC,EAAE,EAAE,cAAc;IAKlD;;OAEG;WACW,eAAe,CAAC,GAAG,EAAE,WAAW;IAO9C,gGAAgG;IAChG,OAAO,CAAC,WAAW;IAMnB,gBAAgB;IACT,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,GAAG,cAAc;IASvF;;OAEG;IACH,IAAW,IAAI,qBAAyB;IAExC,gBAAgB;IAChB,SAAS,CAAC,OAAO;IAoBjB,gBAAgB;IAChB,SAAS,aAAa,MAAM,EAAE,iBAAiB,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY;IAsBhG;;;;;OAKG;IACI,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM,EAAE,QAAQ,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,cAAc;IAI5F,gBAAgB;IACT,iBAAiB,CAAC,EAAE,EAAE,UAAU,GAAG,KAAK;IAK/C,gBAAgB;IACT,sBAAsB,CAAC,EAAE,EAAE,UAAU,GAAG,KAAK;IAIpD;;OAEG;IACI,kBAAkB,CAAC,UAAU,CAAC,EAAE,eAAe;IAOtD;;OAEG;IACI,gBAAgB,IAAI,IAAI;IAU/B;;OAEG;IACI,iBAAiB,IAAI,IAAI;IAMhC;;;;;;OAMG;IACI,0BAA0B,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,iBAAiB,UAAO,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS;IAwBpI,gBAAgB;IACT,MAAM,gBAAuB;IAEpC;;;;;;;OAOG;IACI,cAAc,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG;QAAE,KAAK,EAAE,4BAA4B,CAAC;QAAC,MAAM,EAAE,gBAAgB,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE;IA2E7K;;;;OAIG;IACI,oBAAoB,CAAC,OAAO,CAAC,EAAE,oBAAoB;IAK1D;;;;;OAKG;IACI,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,oBAAoB;IAKvE,6FAA6F;IAChF,8BAA8B,CAAC,WAAW,EAAE,cAAc;IAKvE,gBAAgB;IACT,oBAAoB,CAAC,EAAE,EAAE,KAAK;IAErC,uDAAuD;IAChD,aAAa,IAAI,OAAO;IAE/B,4HAA4H;IAC5H,IAAW,QAAQ,IAAI,QAAQ,CAG9B;IAED,gBAAgB;cACG,cAAc,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAuBjE,0CAA0C;IACnC,SAAS,CAAC,MAAM,GAAE,MAAkB,GAAG,IAAI;IAIlD,gBAAgB;IACA,aAAa,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,IAAI;IAchE,gBAAgB;cACG,kBAAkB;IAKrC;;;OAGG;IACa,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,iBAAiB;IAoBpE,gBAAgB;IAChB,IAAW,mBAAmB,IAAI,OAAO,GAAG,SAAS,CAAsC;IAC3F,IAAW,mBAAmB,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,EAAsE;IAChI,gEAAgE;IAChE,IAAW,cAAc,IAAI,OAAO,CAAuC;IAE3E,+DAA+D;IAC/D,IAAW,cAAc,IAAI,OAAO,CAA0C;IAE9E,2EAA2E;IACpE,aAAa,IAAI,IAAI;IAO5B,uJAAuJ;IAChJ,YAAY,IAAI,IAAI;IA6B3B,2EAA2E;IACpE,MAAM,CAAC,aAAa,CAAC,EAAE,UAAU;IAWxC,uFAAuF;IAChF,MAAM,CAAC,aAAa,CAAC,EAAE,UAAU;IAWxC,gBAAgB;IAChB,OAAO,CAAC,cAAc;IAOtB,0FAA0F;IACnF,SAAS;IAKhB,2EAA2E;IAC3E,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAsClC,gBAAgB;IACT,gBAAgB,CAAC,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,SAAS,GAAG,IAAI;IA2BtI;;;;;OAKG;IACH,IAAW,eAAe,IAAI,OAAO,CAA4C;IACjF,IAAW,eAAe,CAAC,QAAQ,EAAE,OAAO,EAiC3C;IAED,yBAAyB;IACH,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC;CA+D9D;AAUD;;;GAGG;AACH,MAAM,WAAW,wBAAwB;IACvC,4CAA4C;IAC5C,IAAI,EAAE,SAAS,CAAC;IAChB,sCAAsC;IACtC,QAAQ,EAAE,QAAQ,CAAC;IACnB,8DAA8D;IAC9D,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;GAKG;AACH,qBAAa,iBAAkB,SAAQ,QAAQ;IAC7C,SAAS,CAAC,oBAAoB,UAAS;IACvC,kEAAkE;IAClE,OAAO,CAAC,wBAAwB,CAAC,CAAY;IAC7C,kEAAkE;IAClE,IAAW,uBAAuB,IAAI,SAAS,GAAG,SAAS,CAE1D;IACD,IAAW,uBAAuB,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,EAIlE;WAEa,MAAM,CAAC,OAAO,EAAE,wBAAwB,GAAG,iBAAiB;IAI1E,iDAAiD;WACnC,cAAc,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,eAAe,UAAQ,GAAG,iBAAiB;IAQ/G,gBAAgB;IAChB,IAAoB,mBAAmB,IAAI,OAAO,CAEjD;IAED,gBAAgB;IAChB,IAAoB,QAAQ,IAAI,QAAQ,CAEvC;IAED,6CAA6C;IACtC,OAAO,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;CAIrC"}
|
package/lib/esm/Viewport.js
CHANGED
|
@@ -28,6 +28,7 @@ import { createRenderPlanFromViewport } from "./render/RenderPlan";
|
|
|
28
28
|
import { StandardView } from "./StandardView";
|
|
29
29
|
import { SubCategoriesCache } from "./SubCategoriesCache";
|
|
30
30
|
import { DisclosedTileTreeSet, MapTiledGraphicsProvider, TileBoundingBoxes, TiledGraphicsProvider, TileUser, } from "./tile/internal";
|
|
31
|
+
import { EventController } from "./tools/EventController";
|
|
31
32
|
import { ToolSettings } from "./tools/ToolSettings";
|
|
32
33
|
import { DecorateContext, SceneContext } from "./ViewContext";
|
|
33
34
|
import { ViewingSpace } from "./ViewingSpace";
|
|
@@ -569,6 +570,10 @@ export class Viewport {
|
|
|
569
570
|
get backgroundDrapeMap() { var _a; return (_a = this._mapTiledGraphicsProvider) === null || _a === void 0 ? void 0 : _a.backgroundDrapeMap; }
|
|
570
571
|
/** @internal */
|
|
571
572
|
getMapLayerImageryProvider(index, isOverlay) { var _a; return (_a = this._mapTiledGraphicsProvider) === null || _a === void 0 ? void 0 : _a.getMapLayerImageryProvider(index, isOverlay); }
|
|
573
|
+
/** @beta
|
|
574
|
+
* Fully reset a map-layer tile tree; by calling this, the map-layer will to go through initialize process again, and all previously fetched tile will be lost.
|
|
575
|
+
*/
|
|
576
|
+
resetMapLayer(index, isOverlay) { var _a; (_a = this._mapTiledGraphicsProvider) === null || _a === void 0 ? void 0 : _a.resetMapLayer(index, isOverlay); }
|
|
572
577
|
/** Returns true if this Viewport is currently displaying the model with the specified Id. */
|
|
573
578
|
viewsModel(modelId) { return this.view.viewsModel(modelId); }
|
|
574
579
|
/** Attempt to change the 2d Model this Viewport is displaying, if its ViewState is a ViewState2d.
|
|
@@ -1512,17 +1517,20 @@ export class Viewport {
|
|
|
1512
1517
|
if (undefined === view)
|
|
1513
1518
|
return ViewStatus.InvalidViewport;
|
|
1514
1519
|
if (view.is3d() && view.isCameraOn) {
|
|
1515
|
-
const
|
|
1516
|
-
const
|
|
1517
|
-
|
|
1518
|
-
|
|
1519
|
-
|
|
1520
|
-
|
|
1521
|
-
|
|
1522
|
-
|
|
1523
|
-
|
|
1524
|
-
|
|
1525
|
-
|
|
1520
|
+
const eyePoint = view.getEyePoint().clone();
|
|
1521
|
+
const targetPoint = view.getTargetPoint();
|
|
1522
|
+
if (newCenter) {
|
|
1523
|
+
const dir = eyePoint.vectorTo(targetPoint);
|
|
1524
|
+
newCenter.plusScaled(dir, -0.5, eyePoint);
|
|
1525
|
+
newCenter.plusScaled(dir, 0.5, targetPoint);
|
|
1526
|
+
}
|
|
1527
|
+
const transform = Transform.createFixedPointAndMatrix(targetPoint, Matrix3d.createScale(factor, factor, factor));
|
|
1528
|
+
const zDir = view.getZVector();
|
|
1529
|
+
transform.multiplyPoint3d(eyePoint, eyePoint);
|
|
1530
|
+
targetPoint.setFrom(eyePoint.plusScaled(zDir, zDir.dotProduct(eyePoint.vectorTo(targetPoint))));
|
|
1531
|
+
const status = view.lookAt({ eyePoint, targetPoint, upVector: view.getYVector(), lensAngle: view.camera.lens });
|
|
1532
|
+
if (ViewStatus.Success !== status)
|
|
1533
|
+
return status;
|
|
1526
1534
|
}
|
|
1527
1535
|
else {
|
|
1528
1536
|
// for non-camera views, do the zooming by adjusting the origin and delta directly so there can be no
|
|
@@ -2390,12 +2398,34 @@ export class ScreenViewport extends Viewport {
|
|
|
2390
2398
|
mouseMovementFromEvent(ev) {
|
|
2391
2399
|
return { x: ev.movementX, y: ev.movementY };
|
|
2392
2400
|
}
|
|
2393
|
-
/** Set the event controller for this Viewport. Destroys previous controller, if one was defined.
|
|
2401
|
+
/** Set the event controller for this Viewport. Destroys previous controller, if one was defined.
|
|
2402
|
+
* @deprecated this was intended for internal use only.
|
|
2403
|
+
*/
|
|
2394
2404
|
setEventController(controller) {
|
|
2395
2405
|
if (this._evController)
|
|
2396
2406
|
this._evController.destroy();
|
|
2397
2407
|
this._evController = controller;
|
|
2398
2408
|
}
|
|
2409
|
+
/** Invoked by ViewManager.addViewport.
|
|
2410
|
+
* @internal
|
|
2411
|
+
*/
|
|
2412
|
+
onViewManagerAdd() {
|
|
2413
|
+
this.onViewManagerDrop();
|
|
2414
|
+
this._evController = new EventController(this);
|
|
2415
|
+
this._resizeObserver = new ResizeObserver(() => {
|
|
2416
|
+
this.requestRedraw();
|
|
2417
|
+
});
|
|
2418
|
+
this._resizeObserver.observe(this.canvas);
|
|
2419
|
+
}
|
|
2420
|
+
/** Invoked by ViewManager.dropViewport.
|
|
2421
|
+
* @internal
|
|
2422
|
+
*/
|
|
2423
|
+
onViewManagerDrop() {
|
|
2424
|
+
var _a, _b;
|
|
2425
|
+
(_a = this._evController) === null || _a === void 0 ? void 0 : _a.destroy();
|
|
2426
|
+
(_b = this._resizeObserver) === null || _b === void 0 ? void 0 : _b.disconnect();
|
|
2427
|
+
this._evController = this._resizeObserver = undefined;
|
|
2428
|
+
}
|
|
2399
2429
|
/** Find a point on geometry visible in this Viewport, within a radius of supplied pick point.
|
|
2400
2430
|
* @param pickPoint Point to search about, in world coordinates
|
|
2401
2431
|
* @param radius Radius, in pixels, of the circular area to search.
|