@itwin/core-frontend 3.0.0-extension.1 → 3.1.0-dev.6
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 +89 -1
- package/LICENSE.md +1 -1
- package/lib/cjs/AccuSnap.js +3 -3
- package/lib/cjs/AccuSnap.js.map +1 -1
- package/lib/cjs/ApproximateTerrainHeights.d.ts.map +1 -1
- package/lib/cjs/ApproximateTerrainHeights.js +10 -5
- package/lib/cjs/ApproximateTerrainHeights.js.map +1 -1
- package/lib/cjs/BackgroundMapGeometry.d.ts +1 -1
- package/lib/cjs/BackgroundMapGeometry.d.ts.map +1 -1
- package/lib/cjs/BackgroundMapGeometry.js +2 -2
- package/lib/cjs/BackgroundMapGeometry.js.map +1 -1
- package/lib/cjs/BingLocation.js +2 -2
- package/lib/cjs/BingLocation.js.map +1 -1
- package/lib/cjs/CheckpointConnection.js +1 -1
- package/lib/cjs/CheckpointConnection.js.map +1 -1
- package/lib/cjs/ContextRealityModelState.js +1 -1
- package/lib/cjs/ContextRealityModelState.js.map +1 -1
- package/lib/cjs/DisplayStyleState.d.ts +10 -163
- package/lib/cjs/DisplayStyleState.d.ts.map +1 -1
- package/lib/cjs/DisplayStyleState.js +69 -350
- package/lib/cjs/DisplayStyleState.js.map +1 -1
- package/lib/cjs/DrawingViewState.d.ts +2 -2
- package/lib/cjs/DrawingViewState.d.ts.map +1 -1
- package/lib/cjs/DrawingViewState.js +3 -3
- package/lib/cjs/DrawingViewState.js.map +1 -1
- package/lib/cjs/EmphasizeElements.d.ts.map +1 -1
- package/lib/cjs/EmphasizeElements.js +14 -4
- package/lib/cjs/EmphasizeElements.js.map +1 -1
- package/lib/cjs/EnvironmentDecorations.d.ts +39 -0
- package/lib/cjs/EnvironmentDecorations.d.ts.map +1 -0
- package/lib/cjs/EnvironmentDecorations.js +200 -0
- package/lib/cjs/EnvironmentDecorations.js.map +1 -0
- package/lib/cjs/FrontendHubAccess.d.ts +11 -7
- package/lib/cjs/FrontendHubAccess.d.ts.map +1 -1
- package/lib/cjs/FrontendHubAccess.js.map +1 -1
- package/lib/cjs/FrontendLoggerCategory.d.ts +2 -8
- package/lib/cjs/FrontendLoggerCategory.d.ts.map +1 -1
- package/lib/cjs/FrontendLoggerCategory.js +2 -8
- package/lib/cjs/FrontendLoggerCategory.js.map +1 -1
- package/lib/cjs/HitDetail.js +7 -7
- package/lib/cjs/HitDetail.js.map +1 -1
- package/lib/cjs/IModelApp.d.ts +31 -24
- package/lib/cjs/IModelApp.d.ts.map +1 -1
- package/lib/cjs/IModelApp.js +35 -36
- package/lib/cjs/IModelApp.js.map +1 -1
- package/lib/cjs/IModelConnection.d.ts +4 -6
- package/lib/cjs/IModelConnection.d.ts.map +1 -1
- package/lib/cjs/IModelConnection.js +6 -11
- package/lib/cjs/IModelConnection.js.map +1 -1
- package/lib/cjs/IModeljs-css.d.ts.map +1 -1
- package/lib/cjs/IModeljs-css.js +8 -6
- package/lib/cjs/IModeljs-css.js.map +1 -1
- package/lib/cjs/ImageUtil.d.ts +3 -3
- package/lib/cjs/ImageUtil.d.ts.map +1 -1
- package/lib/cjs/ImageUtil.js +7 -4
- package/lib/cjs/ImageUtil.js.map +1 -1
- package/lib/cjs/LocalhostIpcApp.d.ts +2 -1
- package/lib/cjs/LocalhostIpcApp.d.ts.map +1 -1
- package/lib/cjs/LocalhostIpcApp.js +21 -7
- package/lib/cjs/LocalhostIpcApp.js.map +1 -1
- package/lib/cjs/Marker.d.ts +9 -2
- package/lib/cjs/Marker.d.ts.map +1 -1
- package/lib/cjs/Marker.js +33 -5
- package/lib/cjs/Marker.js.map +1 -1
- package/lib/cjs/ModelState.js +1 -1
- package/lib/cjs/ModelState.js.map +1 -1
- package/lib/cjs/NativeApp.d.ts +3 -38
- package/lib/cjs/NativeApp.d.ts.map +1 -1
- package/lib/cjs/NativeApp.js +4 -73
- package/lib/cjs/NativeApp.js.map +1 -1
- package/lib/cjs/NoRenderApp.d.ts +0 -1
- package/lib/cjs/NoRenderApp.d.ts.map +1 -1
- package/lib/cjs/NoRenderApp.js +0 -1
- package/lib/cjs/NoRenderApp.js.map +1 -1
- package/lib/cjs/NotificationManager.d.ts +3 -1
- package/lib/cjs/NotificationManager.d.ts.map +1 -1
- package/lib/cjs/NotificationManager.js +2 -0
- package/lib/cjs/NotificationManager.js.map +1 -1
- package/lib/cjs/RealityDataSource.d.ts +59 -29
- package/lib/cjs/RealityDataSource.d.ts.map +1 -1
- package/lib/cjs/RealityDataSource.js +247 -94
- package/lib/cjs/RealityDataSource.js.map +1 -1
- package/lib/cjs/RenderScheduleState.d.ts +2 -0
- package/lib/cjs/RenderScheduleState.d.ts.map +1 -1
- package/lib/cjs/RenderScheduleState.js +10 -5
- package/lib/cjs/RenderScheduleState.js.map +1 -1
- package/lib/cjs/SheetViewState.d.ts +2 -2
- package/lib/cjs/SheetViewState.d.ts.map +1 -1
- package/lib/cjs/SheetViewState.js +8 -9
- package/lib/cjs/SheetViewState.js.map +1 -1
- package/lib/cjs/SpatialViewState.d.ts +10 -2
- package/lib/cjs/SpatialViewState.d.ts.map +1 -1
- package/lib/cjs/SpatialViewState.js +12 -2
- package/lib/cjs/SpatialViewState.js.map +1 -1
- package/lib/cjs/SubCategoriesCache.js +1 -1
- package/lib/cjs/SubCategoriesCache.js.map +1 -1
- package/lib/cjs/Tiles.d.ts +11 -1
- package/lib/cjs/Tiles.d.ts.map +1 -1
- package/lib/cjs/Tiles.js +7 -0
- package/lib/cjs/Tiles.js.map +1 -1
- package/lib/cjs/TwoWayViewportSync.d.ts +35 -6
- package/lib/cjs/TwoWayViewportSync.d.ts.map +1 -1
- package/lib/cjs/TwoWayViewportSync.js +51 -11
- package/lib/cjs/TwoWayViewportSync.js.map +1 -1
- package/lib/cjs/UserPreferences.d.ts +72 -0
- package/lib/cjs/UserPreferences.d.ts.map +1 -0
- package/lib/cjs/{extension/ExtensionLoader.js → UserPreferences.js} +1 -5
- package/lib/cjs/UserPreferences.js.map +1 -0
- package/lib/cjs/ViewContext.d.ts +3 -1
- package/lib/cjs/ViewContext.d.ts.map +1 -1
- package/lib/cjs/ViewContext.js +4 -0
- package/lib/cjs/ViewContext.js.map +1 -1
- package/lib/cjs/ViewCreator2d.js +3 -3
- package/lib/cjs/ViewCreator2d.js.map +1 -1
- package/lib/cjs/ViewCreator3d.d.ts +1 -1
- package/lib/cjs/ViewCreator3d.d.ts.map +1 -1
- package/lib/cjs/ViewCreator3d.js +4 -5
- package/lib/cjs/ViewCreator3d.js.map +1 -1
- package/lib/cjs/ViewManager.d.ts +6 -6
- package/lib/cjs/ViewManager.d.ts.map +1 -1
- package/lib/cjs/ViewManager.js +13 -13
- package/lib/cjs/ViewManager.js.map +1 -1
- package/lib/cjs/ViewState.d.ts +11 -5
- package/lib/cjs/ViewState.d.ts.map +1 -1
- package/lib/cjs/ViewState.js +18 -63
- package/lib/cjs/ViewState.js.map +1 -1
- package/lib/cjs/ViewingSpace.js +1 -1
- package/lib/cjs/ViewingSpace.js.map +1 -1
- package/lib/cjs/Viewport.d.ts +34 -6
- package/lib/cjs/Viewport.d.ts.map +1 -1
- package/lib/cjs/Viewport.js +42 -22
- package/lib/cjs/Viewport.js.map +1 -1
- package/lib/cjs/core-frontend.d.ts +17 -31
- package/lib/cjs/core-frontend.d.ts.map +1 -1
- package/lib/cjs/core-frontend.js +17 -31
- package/lib/cjs/core-frontend.js.map +1 -1
- package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.d.ts +3 -2
- package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.d.ts.map +1 -1
- package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.js +3 -2
- package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.js.map +1 -1
- package/lib/cjs/quantity-formatting/BasicUnitsProvider.d.ts +5 -1
- package/lib/cjs/quantity-formatting/BasicUnitsProvider.d.ts.map +1 -1
- package/lib/cjs/quantity-formatting/BasicUnitsProvider.js +20 -5
- package/lib/cjs/quantity-formatting/BasicUnitsProvider.js.map +1 -1
- package/lib/cjs/quantity-formatting/QuantityFormatter.d.ts +26 -3
- package/lib/cjs/quantity-formatting/QuantityFormatter.d.ts.map +1 -1
- package/lib/cjs/quantity-formatting/QuantityFormatter.js +46 -7
- package/lib/cjs/quantity-formatting/QuantityFormatter.js.map +1 -1
- package/lib/cjs/render/FeatureSymbology.d.ts.map +1 -1
- package/lib/cjs/render/FeatureSymbology.js +3 -3
- package/lib/cjs/render/FeatureSymbology.js.map +1 -1
- package/lib/cjs/render/GraphicBranch.d.ts +18 -2
- package/lib/cjs/render/GraphicBranch.d.ts.map +1 -1
- package/lib/cjs/render/GraphicBranch.js +9 -1
- package/lib/cjs/render/GraphicBranch.js.map +1 -1
- package/lib/cjs/render/GraphicBuilder.d.ts +7 -1
- package/lib/cjs/render/GraphicBuilder.d.ts.map +1 -1
- package/lib/cjs/render/GraphicBuilder.js.map +1 -1
- package/lib/cjs/render/MockRender.d.ts +3 -1
- package/lib/cjs/render/MockRender.d.ts.map +1 -1
- package/lib/cjs/render/MockRender.js.map +1 -1
- package/lib/cjs/render/RenderMaterial.d.ts +61 -0
- package/lib/cjs/render/RenderMaterial.d.ts.map +1 -0
- package/lib/cjs/render/RenderMaterial.js +10 -0
- package/lib/cjs/render/RenderMaterial.js.map +1 -0
- package/lib/cjs/render/RenderMemory.d.ts +21 -15
- package/lib/cjs/render/RenderMemory.d.ts.map +1 -1
- package/lib/cjs/render/RenderMemory.js +21 -15
- package/lib/cjs/render/RenderMemory.js.map +1 -1
- package/lib/cjs/render/RenderSystem.d.ts +44 -7
- package/lib/cjs/render/RenderSystem.d.ts.map +1 -1
- package/lib/cjs/render/RenderSystem.js +32 -9
- package/lib/cjs/render/RenderSystem.js.map +1 -1
- package/lib/cjs/render/RenderTarget.d.ts +10 -2
- package/lib/cjs/render/RenderTarget.d.ts.map +1 -1
- package/lib/cjs/render/RenderTarget.js +2 -1
- package/lib/cjs/render/RenderTarget.js.map +1 -1
- package/lib/cjs/render/RenderTexture.d.ts +2 -17
- package/lib/cjs/render/RenderTexture.d.ts.map +1 -1
- package/lib/cjs/render/RenderTexture.js +0 -17
- package/lib/cjs/render/RenderTexture.js.map +1 -1
- package/lib/cjs/render/primitives/EdgeParams.d.ts +84 -0
- package/lib/cjs/render/primitives/EdgeParams.d.ts.map +1 -0
- package/lib/cjs/render/primitives/EdgeParams.js +220 -0
- package/lib/cjs/render/primitives/EdgeParams.js.map +1 -0
- package/lib/cjs/render/primitives/PointStringParams.d.ts +16 -0
- package/lib/cjs/render/primitives/PointStringParams.d.ts.map +1 -0
- package/lib/cjs/render/primitives/PointStringParams.js +43 -0
- package/lib/cjs/render/primitives/PointStringParams.js.map +1 -0
- package/lib/cjs/render/primitives/PolylineParams.d.ts +44 -0
- package/lib/cjs/render/primitives/PolylineParams.d.ts.map +1 -0
- package/lib/cjs/render/primitives/PolylineParams.js +205 -0
- package/lib/cjs/render/primitives/PolylineParams.js.map +1 -0
- package/lib/cjs/render/primitives/Primitives.d.ts +1 -1
- package/lib/cjs/render/primitives/Primitives.d.ts.map +1 -1
- package/lib/cjs/render/primitives/Primitives.js.map +1 -1
- package/lib/cjs/render/primitives/SurfaceParams.d.ts +46 -0
- package/lib/cjs/render/primitives/SurfaceParams.d.ts.map +1 -0
- package/lib/cjs/render/primitives/SurfaceParams.js +42 -0
- package/lib/cjs/render/primitives/SurfaceParams.js.map +1 -0
- package/lib/cjs/render/primitives/VertexTable.d.ts +4 -123
- package/lib/cjs/render/primitives/VertexTable.d.ts.map +1 -1
- package/lib/cjs/render/primitives/VertexTable.js +16 -352
- package/lib/cjs/render/primitives/VertexTable.js.map +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryAccumulator.d.ts +2 -0
- package/lib/cjs/render/primitives/geometry/GeometryAccumulator.d.ts.map +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryAccumulator.js +2 -1
- package/lib/cjs/render/primitives/geometry/GeometryAccumulator.js.map +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryListBuilder.d.ts.map +1 -1
- package/lib/cjs/render/primitives/geometry/GeometryListBuilder.js +1 -0
- package/lib/cjs/render/primitives/geometry/GeometryListBuilder.js.map +1 -1
- package/lib/cjs/render/primitives/mesh/MeshPrimitives.d.ts +2 -2
- package/lib/cjs/render/primitives/mesh/MeshPrimitives.d.ts.map +1 -1
- package/lib/cjs/render/primitives/mesh/MeshPrimitives.js +3 -3
- package/lib/cjs/render/primitives/mesh/MeshPrimitives.js.map +1 -1
- package/lib/cjs/render/primitives/mesh/TerrainMeshPrimitive.d.ts +1 -1
- package/lib/cjs/render/primitives/mesh/TerrainMeshPrimitive.js +1 -1
- package/lib/cjs/render/primitives/mesh/TerrainMeshPrimitive.js.map +1 -1
- package/lib/cjs/render/webgl/AttributeMap.js +5 -5
- package/lib/cjs/render/webgl/BackgroundMapDrape.js +1 -1
- package/lib/cjs/render/webgl/BackgroundMapDrape.js.map +1 -1
- package/lib/cjs/render/webgl/BranchUniforms.d.ts.map +1 -1
- package/lib/cjs/render/webgl/BranchUniforms.js +8 -5
- package/lib/cjs/render/webgl/BranchUniforms.js.map +1 -1
- package/lib/cjs/render/webgl/CachedGeometry.d.ts +16 -11
- package/lib/cjs/render/webgl/CachedGeometry.d.ts.map +1 -1
- package/lib/cjs/render/webgl/CachedGeometry.js +26 -23
- package/lib/cjs/render/webgl/CachedGeometry.js.map +1 -1
- package/lib/cjs/render/webgl/DrawCommand.d.ts +2 -3
- 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/EdgeGeometry.d.ts +73 -0
- package/lib/cjs/render/webgl/EdgeGeometry.d.ts.map +1 -0
- package/lib/cjs/render/webgl/EdgeGeometry.js +141 -0
- package/lib/cjs/render/webgl/EdgeGeometry.js.map +1 -0
- package/lib/cjs/render/webgl/FeatureOverrides.d.ts +2 -0
- package/lib/cjs/render/webgl/FeatureOverrides.d.ts.map +1 -1
- package/lib/cjs/render/webgl/FeatureOverrides.js +11 -3
- package/lib/cjs/render/webgl/FeatureOverrides.js.map +1 -1
- package/lib/cjs/render/webgl/FloatRGBA.d.ts.map +1 -1
- package/lib/cjs/render/webgl/FloatRGBA.js +13 -11
- package/lib/cjs/render/webgl/FloatRGBA.js.map +1 -1
- package/lib/cjs/render/webgl/Graphic.d.ts +13 -0
- package/lib/cjs/render/webgl/Graphic.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Graphic.js +41 -3
- package/lib/cjs/render/webgl/Graphic.js.map +1 -1
- package/lib/cjs/render/webgl/IndexedEdgeGeometry.d.ts +51 -0
- package/lib/cjs/render/webgl/IndexedEdgeGeometry.d.ts.map +1 -0
- package/lib/cjs/render/webgl/IndexedEdgeGeometry.js +90 -0
- package/lib/cjs/render/webgl/IndexedEdgeGeometry.js.map +1 -0
- package/lib/cjs/render/webgl/InstancedGeometry.d.ts +6 -5
- package/lib/cjs/render/webgl/InstancedGeometry.d.ts.map +1 -1
- package/lib/cjs/render/webgl/InstancedGeometry.js +2 -1
- package/lib/cjs/render/webgl/InstancedGeometry.js.map +1 -1
- package/lib/cjs/render/webgl/Material.d.ts +1 -1
- package/lib/cjs/render/webgl/Material.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Material.js +2 -0
- package/lib/cjs/render/webgl/Material.js.map +1 -1
- package/lib/cjs/render/webgl/Mesh.d.ts +8 -162
- package/lib/cjs/render/webgl/Mesh.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Mesh.js +18 -458
- package/lib/cjs/render/webgl/Mesh.js.map +1 -1
- package/lib/cjs/render/webgl/MeshData.d.ts +38 -0
- package/lib/cjs/render/webgl/MeshData.d.ts.map +1 -0
- package/lib/cjs/render/webgl/MeshData.js +66 -0
- package/lib/cjs/render/webgl/MeshData.js.map +1 -0
- package/lib/cjs/render/webgl/MeshGeometry.d.ts +38 -0
- package/lib/cjs/render/webgl/MeshGeometry.d.ts.map +1 -0
- package/lib/cjs/render/webgl/MeshGeometry.js +59 -0
- package/lib/cjs/render/webgl/MeshGeometry.js.map +1 -0
- package/lib/cjs/render/webgl/PlanarClassifier.d.ts.map +1 -1
- package/lib/cjs/render/webgl/PlanarClassifier.js +8 -4
- package/lib/cjs/render/webgl/PlanarClassifier.js.map +1 -1
- package/lib/cjs/render/webgl/PlanarGrid.d.ts +2 -3
- package/lib/cjs/render/webgl/PlanarGrid.d.ts.map +1 -1
- package/lib/cjs/render/webgl/PlanarGrid.js +3 -3
- package/lib/cjs/render/webgl/PlanarGrid.js.map +1 -1
- package/lib/cjs/render/webgl/PlanarTextureProjection.d.ts.map +1 -1
- package/lib/cjs/render/webgl/PlanarTextureProjection.js +1 -0
- package/lib/cjs/render/webgl/PlanarTextureProjection.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 -2
- package/lib/cjs/render/webgl/PointCloud.js.map +1 -1
- package/lib/cjs/render/webgl/PointString.d.ts +3 -3
- package/lib/cjs/render/webgl/PointString.d.ts.map +1 -1
- package/lib/cjs/render/webgl/PointString.js +1 -1
- package/lib/cjs/render/webgl/PointString.js.map +1 -1
- package/lib/cjs/render/webgl/Polyline.d.ts +3 -3
- package/lib/cjs/render/webgl/Polyline.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Polyline.js +6 -6
- package/lib/cjs/render/webgl/Polyline.js.map +1 -1
- package/lib/cjs/render/webgl/Primitive.d.ts +2 -2
- package/lib/cjs/render/webgl/Primitive.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Primitive.js +5 -5
- package/lib/cjs/render/webgl/Primitive.js.map +1 -1
- package/lib/cjs/render/webgl/RealityMesh.d.ts +2 -2
- package/lib/cjs/render/webgl/RealityMesh.d.ts.map +1 -1
- package/lib/cjs/render/webgl/RealityMesh.js +9 -9
- package/lib/cjs/render/webgl/RealityMesh.js.map +1 -1
- package/lib/cjs/render/webgl/RenderCommands.d.ts +6 -2
- package/lib/cjs/render/webgl/RenderCommands.d.ts.map +1 -1
- package/lib/cjs/render/webgl/RenderCommands.js +81 -48
- package/lib/cjs/render/webgl/RenderCommands.js.map +1 -1
- package/lib/cjs/render/webgl/RenderFlags.d.ts +48 -1
- package/lib/cjs/render/webgl/RenderFlags.d.ts.map +1 -1
- package/lib/cjs/render/webgl/RenderFlags.js +64 -2
- package/lib/cjs/render/webgl/RenderFlags.js.map +1 -1
- package/lib/cjs/render/webgl/SceneCompositor.js +10 -9
- package/lib/cjs/render/webgl/SceneCompositor.js.map +1 -1
- package/lib/cjs/render/webgl/ScreenSpaceEffect.js +1 -1
- package/lib/cjs/render/webgl/ShaderBuilder.d.ts +23 -20
- package/lib/cjs/render/webgl/ShaderBuilder.d.ts.map +1 -1
- package/lib/cjs/render/webgl/ShaderBuilder.js +38 -32
- package/lib/cjs/render/webgl/ShaderBuilder.js.map +1 -1
- package/lib/cjs/render/webgl/ShaderProgram.d.ts +1 -1
- package/lib/cjs/render/webgl/ShaderProgram.d.ts.map +1 -1
- package/lib/cjs/render/webgl/ShaderProgram.js +4 -4
- package/lib/cjs/render/webgl/ShaderProgram.js.map +1 -1
- package/lib/cjs/render/webgl/SolarShadowMap.d.ts.map +1 -1
- package/lib/cjs/render/webgl/SolarShadowMap.js +4 -3
- package/lib/cjs/render/webgl/SolarShadowMap.js.map +1 -1
- package/lib/cjs/render/webgl/SurfaceGeometry.d.ts +54 -0
- package/lib/cjs/render/webgl/SurfaceGeometry.d.ts.map +1 -0
- package/lib/cjs/render/webgl/SurfaceGeometry.js +248 -0
- package/lib/cjs/render/webgl/SurfaceGeometry.js.map +1 -0
- package/lib/cjs/render/webgl/System.d.ts +13 -10
- package/lib/cjs/render/webgl/System.d.ts.map +1 -1
- package/lib/cjs/render/webgl/System.js +75 -21
- package/lib/cjs/render/webgl/System.js.map +1 -1
- package/lib/cjs/render/webgl/Target.d.ts +13 -1
- package/lib/cjs/render/webgl/Target.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Target.js +88 -2
- 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 +112 -119
- package/lib/cjs/render/webgl/Technique.js.map +1 -1
- package/lib/cjs/render/webgl/TechniqueFlags.d.ts +7 -1
- package/lib/cjs/render/webgl/TechniqueFlags.d.ts.map +1 -1
- package/lib/cjs/render/webgl/TechniqueFlags.js +10 -1
- package/lib/cjs/render/webgl/TechniqueFlags.js.map +1 -1
- package/lib/cjs/render/webgl/TechniqueId.d.ts +29 -28
- package/lib/cjs/render/webgl/TechniqueId.d.ts.map +1 -1
- package/lib/cjs/render/webgl/TechniqueId.js +7 -7
- package/lib/cjs/render/webgl/TechniqueId.js.map +1 -1
- package/lib/cjs/render/webgl/Texture.d.ts +15 -12
- package/lib/cjs/render/webgl/Texture.d.ts.map +1 -1
- package/lib/cjs/render/webgl/Texture.js +26 -23
- package/lib/cjs/render/webgl/Texture.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/AmbientOcclusion.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/AmbientOcclusion.js +83 -18
- package/lib/cjs/render/webgl/glsl/AmbientOcclusion.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Animation.js +1 -1
- package/lib/cjs/render/webgl/glsl/Blur.js +1 -1
- package/lib/cjs/render/webgl/glsl/ClearPickAndColor.js +2 -2
- package/lib/cjs/render/webgl/glsl/ClearTranslucent.js +2 -2
- package/lib/cjs/render/webgl/glsl/Color.js +1 -1
- package/lib/cjs/render/webgl/glsl/Combine3Textures.js +1 -1
- package/lib/cjs/render/webgl/glsl/CombineTextures.js +1 -1
- package/lib/cjs/render/webgl/glsl/Composite.js +1 -1
- package/lib/cjs/render/webgl/glsl/CopyColor.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/CopyColor.js +17 -2
- package/lib/cjs/render/webgl/glsl/CopyColor.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/CopyPickBuffers.js +2 -2
- package/lib/cjs/render/webgl/glsl/CopyStencil.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/CopyStencil.js +10 -13
- package/lib/cjs/render/webgl/glsl/CopyStencil.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/EVSMFromDepth.js +2 -2
- package/lib/cjs/render/webgl/glsl/EVSMFromDepth.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Edge.d.ts +2 -1
- package/lib/cjs/render/webgl/glsl/Edge.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/Edge.js +132 -14
- package/lib/cjs/render/webgl/glsl/Edge.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/FeatureSymbology.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/FeatureSymbology.js +43 -21
- package/lib/cjs/render/webgl/glsl/FeatureSymbology.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Fragment.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/Fragment.js +19 -11
- package/lib/cjs/render/webgl/glsl/Fragment.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/LogarithmicDepthBuffer.js +1 -1
- package/lib/cjs/render/webgl/glsl/LookupTable.d.ts +4 -2
- package/lib/cjs/render/webgl/glsl/LookupTable.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/LookupTable.js +7 -3
- package/lib/cjs/render/webgl/glsl/LookupTable.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/PlanarClassification.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/PlanarClassification.js +13 -4
- package/lib/cjs/render/webgl/glsl/PlanarClassification.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/PlanarGrid.js +2 -2
- package/lib/cjs/render/webgl/glsl/PlanarGrid.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/PointCloud.js +2 -2
- package/lib/cjs/render/webgl/glsl/PointCloud.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/PointString.js +1 -1
- package/lib/cjs/render/webgl/glsl/PointString.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Polyline.js +1 -1
- package/lib/cjs/render/webgl/glsl/Polyline.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/RealityMesh.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/RealityMesh.js +9 -6
- package/lib/cjs/render/webgl/glsl/RealityMesh.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/ScreenSpaceEffect.js +2 -2
- package/lib/cjs/render/webgl/glsl/ScreenSpaceEffect.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/SkyBox.js +2 -2
- package/lib/cjs/render/webgl/glsl/SkyBox.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/SkySphere.js +2 -2
- package/lib/cjs/render/webgl/glsl/Surface.d.ts.map +1 -1
- package/lib/cjs/render/webgl/glsl/Surface.js +41 -16
- package/lib/cjs/render/webgl/glsl/Surface.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Translucency.js +2 -2
- package/lib/cjs/render/webgl/glsl/Vertex.js +2 -2
- package/lib/cjs/render/webgl/glsl/Vertex.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/ViewportQuad.js +1 -1
- package/lib/cjs/render/webgl/glsl/ViewportQuad.js.map +1 -1
- package/lib/cjs/render/webgl/glsl/Wiremesh.d.ts +9 -0
- package/lib/cjs/render/webgl/glsl/Wiremesh.d.ts.map +1 -0
- package/lib/cjs/render/webgl/glsl/Wiremesh.js +40 -0
- package/lib/cjs/render/webgl/glsl/Wiremesh.js.map +1 -0
- package/lib/cjs/render-primitives.d.ts +5 -1
- package/lib/cjs/render-primitives.d.ts.map +1 -1
- package/lib/cjs/render-primitives.js +5 -1
- package/lib/cjs/render-primitives.js.map +1 -1
- package/lib/cjs/request/Request.d.ts +167 -0
- package/lib/cjs/request/Request.d.ts.map +1 -0
- package/lib/cjs/request/Request.js +315 -0
- package/lib/cjs/request/Request.js.map +1 -0
- package/lib/cjs/tile/B3dmReader.d.ts +2 -1
- package/lib/cjs/tile/B3dmReader.d.ts.map +1 -1
- package/lib/cjs/tile/B3dmReader.js +11 -7
- package/lib/cjs/tile/B3dmReader.js.map +1 -1
- package/lib/cjs/tile/CesiumAssetProvider.d.ts +14 -0
- package/lib/cjs/tile/CesiumAssetProvider.d.ts.map +1 -0
- package/lib/cjs/tile/CesiumAssetProvider.js +35 -0
- package/lib/cjs/tile/CesiumAssetProvider.js.map +1 -0
- package/lib/cjs/tile/ContextShareProvider.d.ts +22 -0
- package/lib/cjs/tile/ContextShareProvider.d.ts.map +1 -0
- package/lib/cjs/tile/ContextShareProvider.js +129 -0
- package/lib/cjs/tile/ContextShareProvider.js.map +1 -0
- package/lib/cjs/tile/DynamicIModelTile.js +9 -3
- package/lib/cjs/tile/DynamicIModelTile.js.map +1 -1
- package/lib/cjs/tile/GltfReader.d.ts +594 -55
- package/lib/cjs/tile/GltfReader.d.ts.map +1 -1
- package/lib/cjs/tile/GltfReader.js +703 -264
- package/lib/cjs/tile/GltfReader.js.map +1 -1
- package/lib/cjs/tile/I3dmReader.d.ts +2 -1
- package/lib/cjs/tile/I3dmReader.d.ts.map +1 -1
- package/lib/cjs/tile/I3dmReader.js +10 -6
- package/lib/cjs/tile/I3dmReader.js.map +1 -1
- package/lib/cjs/tile/IModelTile.d.ts.map +1 -1
- package/lib/cjs/tile/IModelTile.js +14 -7
- package/lib/cjs/tile/IModelTile.js.map +1 -1
- package/lib/cjs/tile/IModelTileTree.d.ts +8 -0
- package/lib/cjs/tile/IModelTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/IModelTileTree.js +36 -1
- package/lib/cjs/tile/IModelTileTree.js.map +1 -1
- package/lib/cjs/tile/ImdlReader.d.ts +365 -10
- package/lib/cjs/tile/ImdlReader.d.ts.map +1 -1
- package/lib/cjs/tile/ImdlReader.js +202 -68
- package/lib/cjs/tile/ImdlReader.js.map +1 -1
- package/lib/cjs/tile/OrbitGtTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/OrbitGtTileTree.js +8 -5
- package/lib/cjs/tile/OrbitGtTileTree.js.map +1 -1
- package/lib/cjs/tile/PrimaryTileTree.d.ts +14 -5
- package/lib/cjs/tile/PrimaryTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/PrimaryTileTree.js +69 -14
- package/lib/cjs/tile/PrimaryTileTree.js.map +1 -1
- package/lib/cjs/tile/RealityModelTileTree.d.ts +3 -55
- package/lib/cjs/tile/RealityModelTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/RealityModelTileTree.js +57 -232
- package/lib/cjs/tile/RealityModelTileTree.js.map +1 -1
- package/lib/cjs/tile/RealityTileLoader.d.ts +1 -0
- package/lib/cjs/tile/RealityTileLoader.d.ts.map +1 -1
- package/lib/cjs/tile/RealityTileLoader.js +4 -3
- package/lib/cjs/tile/RealityTileLoader.js.map +1 -1
- package/lib/cjs/tile/Tile.d.ts.map +1 -1
- package/lib/cjs/tile/Tile.js +5 -1
- package/lib/cjs/tile/Tile.js.map +1 -1
- package/lib/cjs/tile/TileAdmin.d.ts +37 -4
- package/lib/cjs/tile/TileAdmin.d.ts.map +1 -1
- package/lib/cjs/tile/TileAdmin.js +18 -12
- package/lib/cjs/tile/TileAdmin.js.map +1 -1
- package/lib/cjs/tile/TileDrawArgs.d.ts +11 -0
- package/lib/cjs/tile/TileDrawArgs.d.ts.map +1 -1
- package/lib/cjs/tile/TileDrawArgs.js +6 -1
- package/lib/cjs/tile/TileDrawArgs.js.map +1 -1
- package/lib/cjs/tile/TileTreeReference.d.ts +2 -0
- package/lib/cjs/tile/TileTreeReference.d.ts.map +1 -1
- package/lib/cjs/tile/TileTreeReference.js +5 -0
- package/lib/cjs/tile/TileTreeReference.js.map +1 -1
- package/lib/cjs/tile/internal.d.ts +4 -1
- package/lib/cjs/tile/internal.d.ts.map +1 -1
- package/lib/cjs/tile/internal.js +4 -1
- package/lib/cjs/tile/internal.js.map +1 -1
- package/lib/cjs/tile/map/ArcGISTileMap.d.ts +22 -0
- package/lib/cjs/tile/map/ArcGISTileMap.d.ts.map +1 -0
- package/lib/cjs/tile/map/ArcGISTileMap.js +177 -0
- package/lib/cjs/tile/map/ArcGISTileMap.js.map +1 -0
- package/lib/cjs/tile/map/ArcGisTokenGenerator.js +3 -3
- package/lib/cjs/tile/map/ArcGisTokenGenerator.js.map +1 -1
- package/lib/cjs/tile/map/ArcGisUtilities.d.ts +1 -1
- package/lib/cjs/tile/map/ArcGisUtilities.d.ts.map +1 -1
- package/lib/cjs/tile/map/ArcGisUtilities.js +18 -10
- package/lib/cjs/tile/map/ArcGisUtilities.js.map +1 -1
- package/lib/cjs/tile/map/BingElevation.js +4 -4
- package/lib/cjs/tile/map/BingElevation.js.map +1 -1
- package/lib/cjs/tile/map/CesiumTerrainProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/CesiumTerrainProvider.js +27 -15
- package/lib/cjs/tile/map/CesiumTerrainProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +2 -2
- package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +23 -44
- package/lib/cjs/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.js +3 -3
- package/lib/cjs/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts +8 -0
- package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js +51 -10
- package/lib/cjs/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts +6 -1
- package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js +63 -21
- package/lib/cjs/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryTileTree.d.ts +4 -4
- package/lib/cjs/tile/map/ImageryTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/map/ImageryTileTree.js +20 -24
- package/lib/cjs/tile/map/ImageryTileTree.js.map +1 -1
- package/lib/cjs/tile/map/MapCartoRectangle.js +1 -1
- package/lib/cjs/tile/map/MapCartoRectangle.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerAuthentication.d.ts +20 -0
- package/lib/cjs/tile/map/MapLayerAuthentication.d.ts.map +1 -0
- package/lib/cjs/tile/map/MapLayerAuthentication.js +18 -0
- package/lib/cjs/tile/map/MapLayerAuthentication.js.map +1 -0
- package/lib/cjs/tile/map/MapLayerFormatRegistry.d.ts +6 -3
- package/lib/cjs/tile/map/MapLayerFormatRegistry.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapLayerFormatRegistry.js +3 -1
- package/lib/cjs/tile/map/MapLayerFormatRegistry.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerImageryFormats.d.ts +2 -2
- package/lib/cjs/tile/map/MapLayerImageryFormats.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapLayerImageryFormats.js +21 -8
- package/lib/cjs/tile/map/MapLayerImageryFormats.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts +18 -6
- package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapLayerImageryProvider.js +47 -14
- package/lib/cjs/tile/map/MapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerSources.d.ts +3 -11
- package/lib/cjs/tile/map/MapLayerSources.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapLayerSources.js +5 -34
- package/lib/cjs/tile/map/MapLayerSources.js.map +1 -1
- package/lib/cjs/tile/map/MapTile.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTile.js +4 -3
- package/lib/cjs/tile/map/MapTile.js.map +1 -1
- package/lib/cjs/tile/map/MapTileLoader.js +2 -2
- package/lib/cjs/tile/map/MapTileLoader.js.map +1 -1
- package/lib/cjs/tile/map/MapTileTree.d.ts +1 -1
- package/lib/cjs/tile/map/MapTileTree.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTileTree.js +30 -21
- package/lib/cjs/tile/map/MapTileTree.js.map +1 -1
- package/lib/cjs/tile/map/MapTiledGraphicsProvider.d.ts +3 -3
- package/lib/cjs/tile/map/MapTiledGraphicsProvider.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTiledGraphicsProvider.js +4 -6
- package/lib/cjs/tile/map/MapTiledGraphicsProvider.js.map +1 -1
- package/lib/cjs/tile/map/MapTilingScheme.d.ts +7 -2
- package/lib/cjs/tile/map/MapTilingScheme.d.ts.map +1 -1
- package/lib/cjs/tile/map/MapTilingScheme.js +21 -8
- package/lib/cjs/tile/map/MapTilingScheme.js.map +1 -1
- package/lib/cjs/tile/map/QuadId.d.ts +1 -0
- package/lib/cjs/tile/map/QuadId.d.ts.map +1 -1
- package/lib/cjs/tile/map/QuadId.js +2 -1
- package/lib/cjs/tile/map/QuadId.js.map +1 -1
- package/lib/cjs/tile/map/TerrainMeshProvider.d.ts +1 -1
- package/lib/cjs/tile/map/TerrainMeshProvider.js.map +1 -1
- package/lib/cjs/tile/map/WmsCapabilities.d.ts +8 -1
- package/lib/cjs/tile/map/WmsCapabilities.d.ts.map +1 -1
- package/lib/cjs/tile/map/WmsCapabilities.js +39 -5
- package/lib/cjs/tile/map/WmsCapabilities.js.map +1 -1
- package/lib/cjs/tile/map/WmtsCapabilities.d.ts +11 -1
- package/lib/cjs/tile/map/WmtsCapabilities.d.ts.map +1 -1
- package/lib/cjs/tile/map/WmtsCapabilities.js +23 -9
- package/lib/cjs/tile/map/WmtsCapabilities.js.map +1 -1
- package/lib/cjs/tools/EditManipulator.d.ts.map +1 -1
- package/lib/cjs/tools/EditManipulator.js +1 -1
- package/lib/cjs/tools/EditManipulator.js.map +1 -1
- package/lib/cjs/tools/ElementSetTool.js +2 -2
- package/lib/cjs/tools/ElementSetTool.js.map +1 -1
- package/lib/cjs/tools/PrimitiveTool.d.ts +4 -4
- package/lib/cjs/tools/PrimitiveTool.d.ts.map +1 -1
- package/lib/cjs/tools/PrimitiveTool.js +2 -2
- package/lib/cjs/tools/PrimitiveTool.js.map +1 -1
- package/lib/cjs/tools/Tool.d.ts +29 -1
- package/lib/cjs/tools/Tool.d.ts.map +1 -1
- package/lib/cjs/tools/Tool.js +66 -0
- package/lib/cjs/tools/Tool.js.map +1 -1
- package/lib/cjs/tools/ToolAdmin.d.ts.map +1 -1
- package/lib/cjs/tools/ToolAdmin.js +20 -10
- package/lib/cjs/tools/ToolAdmin.js.map +1 -1
- package/lib/cjs/tools/ViewTool.js +1 -1
- package/lib/cjs/tools/ViewTool.js.map +1 -1
- package/lib/cjs/webgl.d.ts +5 -0
- package/lib/cjs/webgl.d.ts.map +1 -1
- package/lib/cjs/webgl.js +5 -0
- package/lib/cjs/webgl.js.map +1 -1
- package/lib/esm/AccuSnap.js +3 -3
- package/lib/esm/AccuSnap.js.map +1 -1
- package/lib/esm/ApproximateTerrainHeights.d.ts.map +1 -1
- package/lib/esm/ApproximateTerrainHeights.js +10 -5
- package/lib/esm/ApproximateTerrainHeights.js.map +1 -1
- package/lib/esm/BackgroundMapGeometry.d.ts +1 -1
- package/lib/esm/BackgroundMapGeometry.d.ts.map +1 -1
- package/lib/esm/BackgroundMapGeometry.js +2 -2
- package/lib/esm/BackgroundMapGeometry.js.map +1 -1
- package/lib/esm/BingLocation.js +1 -1
- package/lib/esm/BingLocation.js.map +1 -1
- package/lib/esm/CheckpointConnection.js +1 -1
- package/lib/esm/CheckpointConnection.js.map +1 -1
- package/lib/esm/ContextRealityModelState.js +1 -1
- package/lib/esm/ContextRealityModelState.js.map +1 -1
- package/lib/esm/DisplayStyleState.d.ts +10 -163
- package/lib/esm/DisplayStyleState.d.ts.map +1 -1
- package/lib/esm/DisplayStyleState.js +70 -346
- package/lib/esm/DisplayStyleState.js.map +1 -1
- package/lib/esm/DrawingViewState.d.ts +2 -2
- package/lib/esm/DrawingViewState.d.ts.map +1 -1
- package/lib/esm/DrawingViewState.js +3 -3
- package/lib/esm/DrawingViewState.js.map +1 -1
- package/lib/esm/EmphasizeElements.d.ts.map +1 -1
- package/lib/esm/EmphasizeElements.js +14 -4
- package/lib/esm/EmphasizeElements.js.map +1 -1
- package/lib/esm/EnvironmentDecorations.d.ts +39 -0
- package/lib/esm/EnvironmentDecorations.d.ts.map +1 -0
- package/lib/esm/EnvironmentDecorations.js +196 -0
- package/lib/esm/EnvironmentDecorations.js.map +1 -0
- package/lib/esm/FrontendHubAccess.d.ts +11 -7
- package/lib/esm/FrontendHubAccess.d.ts.map +1 -1
- package/lib/esm/FrontendHubAccess.js.map +1 -1
- package/lib/esm/FrontendLoggerCategory.d.ts +2 -8
- package/lib/esm/FrontendLoggerCategory.d.ts.map +1 -1
- package/lib/esm/FrontendLoggerCategory.js +2 -8
- package/lib/esm/FrontendLoggerCategory.js.map +1 -1
- package/lib/esm/HitDetail.js +7 -7
- package/lib/esm/HitDetail.js.map +1 -1
- package/lib/esm/IModelApp.d.ts +31 -24
- package/lib/esm/IModelApp.d.ts.map +1 -1
- package/lib/esm/IModelApp.js +34 -35
- package/lib/esm/IModelApp.js.map +1 -1
- package/lib/esm/IModelConnection.d.ts +4 -6
- package/lib/esm/IModelConnection.d.ts.map +1 -1
- package/lib/esm/IModelConnection.js +6 -11
- package/lib/esm/IModelConnection.js.map +1 -1
- package/lib/esm/IModeljs-css.d.ts.map +1 -1
- package/lib/esm/IModeljs-css.js +8 -6
- package/lib/esm/IModeljs-css.js.map +1 -1
- package/lib/esm/ImageUtil.d.ts +3 -3
- package/lib/esm/ImageUtil.d.ts.map +1 -1
- package/lib/esm/ImageUtil.js +7 -4
- package/lib/esm/ImageUtil.js.map +1 -1
- package/lib/esm/LocalhostIpcApp.d.ts +2 -1
- package/lib/esm/LocalhostIpcApp.d.ts.map +1 -1
- package/lib/esm/LocalhostIpcApp.js +22 -8
- package/lib/esm/LocalhostIpcApp.js.map +1 -1
- package/lib/esm/Marker.d.ts +9 -2
- package/lib/esm/Marker.d.ts.map +1 -1
- package/lib/esm/Marker.js +34 -6
- package/lib/esm/Marker.js.map +1 -1
- package/lib/esm/ModelState.js +1 -1
- package/lib/esm/ModelState.js.map +1 -1
- package/lib/esm/NativeApp.d.ts +3 -38
- package/lib/esm/NativeApp.d.ts.map +1 -1
- package/lib/esm/NativeApp.js +1 -69
- package/lib/esm/NativeApp.js.map +1 -1
- package/lib/esm/NoRenderApp.d.ts +0 -1
- package/lib/esm/NoRenderApp.d.ts.map +1 -1
- package/lib/esm/NoRenderApp.js +0 -1
- package/lib/esm/NoRenderApp.js.map +1 -1
- package/lib/esm/NotificationManager.d.ts +3 -1
- package/lib/esm/NotificationManager.d.ts.map +1 -1
- package/lib/esm/NotificationManager.js +2 -0
- package/lib/esm/NotificationManager.js.map +1 -1
- package/lib/esm/RealityDataSource.d.ts +59 -29
- package/lib/esm/RealityDataSource.d.ts.map +1 -1
- package/lib/esm/RealityDataSource.js +247 -92
- package/lib/esm/RealityDataSource.js.map +1 -1
- package/lib/esm/RenderScheduleState.d.ts +2 -0
- package/lib/esm/RenderScheduleState.d.ts.map +1 -1
- package/lib/esm/RenderScheduleState.js +8 -4
- package/lib/esm/RenderScheduleState.js.map +1 -1
- package/lib/esm/SheetViewState.d.ts +2 -2
- package/lib/esm/SheetViewState.d.ts.map +1 -1
- package/lib/esm/SheetViewState.js +8 -9
- package/lib/esm/SheetViewState.js.map +1 -1
- package/lib/esm/SpatialViewState.d.ts +10 -2
- package/lib/esm/SpatialViewState.d.ts.map +1 -1
- package/lib/esm/SpatialViewState.js +12 -2
- package/lib/esm/SpatialViewState.js.map +1 -1
- package/lib/esm/SubCategoriesCache.js +1 -1
- package/lib/esm/SubCategoriesCache.js.map +1 -1
- package/lib/esm/Tiles.d.ts +11 -1
- package/lib/esm/Tiles.d.ts.map +1 -1
- package/lib/esm/Tiles.js +7 -0
- package/lib/esm/Tiles.js.map +1 -1
- package/lib/esm/TwoWayViewportSync.d.ts +35 -6
- package/lib/esm/TwoWayViewportSync.d.ts.map +1 -1
- package/lib/esm/TwoWayViewportSync.js +49 -10
- package/lib/esm/TwoWayViewportSync.js.map +1 -1
- package/lib/esm/UserPreferences.d.ts +72 -0
- package/lib/esm/UserPreferences.d.ts.map +1 -0
- package/lib/esm/{extension/ExtensionLoader.js → UserPreferences.js} +1 -5
- package/lib/esm/UserPreferences.js.map +1 -0
- package/lib/esm/ViewContext.d.ts +3 -1
- package/lib/esm/ViewContext.d.ts.map +1 -1
- package/lib/esm/ViewContext.js +4 -0
- package/lib/esm/ViewContext.js.map +1 -1
- package/lib/esm/ViewCreator2d.js +3 -3
- package/lib/esm/ViewCreator2d.js.map +1 -1
- package/lib/esm/ViewCreator3d.d.ts +1 -1
- package/lib/esm/ViewCreator3d.d.ts.map +1 -1
- package/lib/esm/ViewCreator3d.js +5 -6
- package/lib/esm/ViewCreator3d.js.map +1 -1
- package/lib/esm/ViewManager.d.ts +6 -6
- package/lib/esm/ViewManager.d.ts.map +1 -1
- package/lib/esm/ViewManager.js +13 -13
- package/lib/esm/ViewManager.js.map +1 -1
- package/lib/esm/ViewState.d.ts +11 -5
- package/lib/esm/ViewState.d.ts.map +1 -1
- package/lib/esm/ViewState.js +21 -66
- package/lib/esm/ViewState.js.map +1 -1
- package/lib/esm/ViewingSpace.js +1 -1
- package/lib/esm/ViewingSpace.js.map +1 -1
- package/lib/esm/Viewport.d.ts +34 -6
- package/lib/esm/Viewport.d.ts.map +1 -1
- package/lib/esm/Viewport.js +43 -23
- package/lib/esm/Viewport.js.map +1 -1
- package/lib/esm/core-frontend.d.ts +17 -31
- package/lib/esm/core-frontend.d.ts.map +1 -1
- package/lib/esm/core-frontend.js +17 -31
- package/lib/esm/core-frontend.js.map +1 -1
- package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.d.ts +3 -2
- package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.d.ts.map +1 -1
- package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.js +3 -2
- package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.js.map +1 -1
- package/lib/esm/quantity-formatting/BasicUnitsProvider.d.ts +5 -1
- package/lib/esm/quantity-formatting/BasicUnitsProvider.d.ts.map +1 -1
- package/lib/esm/quantity-formatting/BasicUnitsProvider.js +18 -4
- package/lib/esm/quantity-formatting/BasicUnitsProvider.js.map +1 -1
- package/lib/esm/quantity-formatting/QuantityFormatter.d.ts +26 -3
- package/lib/esm/quantity-formatting/QuantityFormatter.d.ts.map +1 -1
- package/lib/esm/quantity-formatting/QuantityFormatter.js +45 -7
- package/lib/esm/quantity-formatting/QuantityFormatter.js.map +1 -1
- package/lib/esm/render/FeatureSymbology.d.ts.map +1 -1
- package/lib/esm/render/FeatureSymbology.js +3 -3
- package/lib/esm/render/FeatureSymbology.js.map +1 -1
- package/lib/esm/render/GraphicBranch.d.ts +18 -2
- package/lib/esm/render/GraphicBranch.d.ts.map +1 -1
- package/lib/esm/render/GraphicBranch.js +8 -0
- package/lib/esm/render/GraphicBranch.js.map +1 -1
- package/lib/esm/render/GraphicBuilder.d.ts +7 -1
- package/lib/esm/render/GraphicBuilder.d.ts.map +1 -1
- package/lib/esm/render/GraphicBuilder.js.map +1 -1
- package/lib/esm/render/MockRender.d.ts +3 -1
- package/lib/esm/render/MockRender.d.ts.map +1 -1
- package/lib/esm/render/MockRender.js.map +1 -1
- package/lib/esm/render/RenderMaterial.d.ts +61 -0
- package/lib/esm/render/RenderMaterial.d.ts.map +1 -0
- package/lib/esm/render/RenderMaterial.js +9 -0
- package/lib/esm/render/RenderMaterial.js.map +1 -0
- package/lib/esm/render/RenderMemory.d.ts +21 -15
- package/lib/esm/render/RenderMemory.d.ts.map +1 -1
- package/lib/esm/render/RenderMemory.js +21 -15
- package/lib/esm/render/RenderMemory.js.map +1 -1
- package/lib/esm/render/RenderSystem.d.ts +44 -7
- package/lib/esm/render/RenderSystem.d.ts.map +1 -1
- package/lib/esm/render/RenderSystem.js +32 -9
- package/lib/esm/render/RenderSystem.js.map +1 -1
- package/lib/esm/render/RenderTarget.d.ts +10 -2
- package/lib/esm/render/RenderTarget.d.ts.map +1 -1
- package/lib/esm/render/RenderTarget.js +2 -1
- package/lib/esm/render/RenderTarget.js.map +1 -1
- package/lib/esm/render/RenderTexture.d.ts +2 -17
- package/lib/esm/render/RenderTexture.d.ts.map +1 -1
- package/lib/esm/render/RenderTexture.js +1 -16
- package/lib/esm/render/RenderTexture.js.map +1 -1
- package/lib/esm/render/primitives/EdgeParams.d.ts +84 -0
- package/lib/esm/render/primitives/EdgeParams.d.ts.map +1 -0
- package/lib/esm/render/primitives/EdgeParams.js +217 -0
- package/lib/esm/render/primitives/EdgeParams.js.map +1 -0
- package/lib/esm/render/primitives/PointStringParams.d.ts +16 -0
- package/lib/esm/render/primitives/PointStringParams.d.ts.map +1 -0
- package/lib/esm/render/primitives/PointStringParams.js +39 -0
- package/lib/esm/render/primitives/PointStringParams.js.map +1 -0
- package/lib/esm/render/primitives/PolylineParams.d.ts +44 -0
- package/lib/esm/render/primitives/PolylineParams.d.ts.map +1 -0
- package/lib/esm/render/primitives/PolylineParams.js +199 -0
- package/lib/esm/render/primitives/PolylineParams.js.map +1 -0
- package/lib/esm/render/primitives/Primitives.d.ts +1 -1
- package/lib/esm/render/primitives/Primitives.d.ts.map +1 -1
- package/lib/esm/render/primitives/Primitives.js.map +1 -1
- package/lib/esm/render/primitives/SurfaceParams.d.ts +46 -0
- package/lib/esm/render/primitives/SurfaceParams.d.ts.map +1 -0
- package/lib/esm/render/primitives/SurfaceParams.js +37 -0
- package/lib/esm/render/primitives/SurfaceParams.js.map +1 -0
- package/lib/esm/render/primitives/VertexTable.d.ts +4 -123
- package/lib/esm/render/primitives/VertexTable.d.ts.map +1 -1
- package/lib/esm/render/primitives/VertexTable.js +11 -342
- package/lib/esm/render/primitives/VertexTable.js.map +1 -1
- package/lib/esm/render/primitives/geometry/GeometryAccumulator.d.ts +2 -0
- package/lib/esm/render/primitives/geometry/GeometryAccumulator.d.ts.map +1 -1
- package/lib/esm/render/primitives/geometry/GeometryAccumulator.js +2 -1
- package/lib/esm/render/primitives/geometry/GeometryAccumulator.js.map +1 -1
- package/lib/esm/render/primitives/geometry/GeometryListBuilder.d.ts.map +1 -1
- package/lib/esm/render/primitives/geometry/GeometryListBuilder.js +1 -0
- package/lib/esm/render/primitives/geometry/GeometryListBuilder.js.map +1 -1
- package/lib/esm/render/primitives/mesh/MeshPrimitives.d.ts +2 -2
- package/lib/esm/render/primitives/mesh/MeshPrimitives.d.ts.map +1 -1
- package/lib/esm/render/primitives/mesh/MeshPrimitives.js +3 -3
- package/lib/esm/render/primitives/mesh/MeshPrimitives.js.map +1 -1
- package/lib/esm/render/primitives/mesh/TerrainMeshPrimitive.d.ts +1 -1
- package/lib/esm/render/primitives/mesh/TerrainMeshPrimitive.js +1 -1
- package/lib/esm/render/primitives/mesh/TerrainMeshPrimitive.js.map +1 -1
- package/lib/esm/render/webgl/AttributeMap.js +5 -5
- package/lib/esm/render/webgl/BackgroundMapDrape.js +2 -2
- package/lib/esm/render/webgl/BackgroundMapDrape.js.map +1 -1
- package/lib/esm/render/webgl/BranchUniforms.d.ts.map +1 -1
- package/lib/esm/render/webgl/BranchUniforms.js +8 -5
- package/lib/esm/render/webgl/BranchUniforms.js.map +1 -1
- package/lib/esm/render/webgl/CachedGeometry.d.ts +16 -11
- package/lib/esm/render/webgl/CachedGeometry.d.ts.map +1 -1
- package/lib/esm/render/webgl/CachedGeometry.js +26 -23
- package/lib/esm/render/webgl/CachedGeometry.js.map +1 -1
- package/lib/esm/render/webgl/DrawCommand.d.ts +2 -3
- 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/EdgeGeometry.d.ts +73 -0
- package/lib/esm/render/webgl/EdgeGeometry.d.ts.map +1 -0
- package/lib/esm/render/webgl/EdgeGeometry.js +135 -0
- package/lib/esm/render/webgl/EdgeGeometry.js.map +1 -0
- package/lib/esm/render/webgl/FeatureOverrides.d.ts +2 -0
- package/lib/esm/render/webgl/FeatureOverrides.d.ts.map +1 -1
- package/lib/esm/render/webgl/FeatureOverrides.js +11 -3
- package/lib/esm/render/webgl/FeatureOverrides.js.map +1 -1
- package/lib/esm/render/webgl/FloatRGBA.d.ts.map +1 -1
- package/lib/esm/render/webgl/FloatRGBA.js +13 -11
- package/lib/esm/render/webgl/FloatRGBA.js.map +1 -1
- package/lib/esm/render/webgl/Graphic.d.ts +13 -0
- package/lib/esm/render/webgl/Graphic.d.ts.map +1 -1
- package/lib/esm/render/webgl/Graphic.js +39 -2
- package/lib/esm/render/webgl/Graphic.js.map +1 -1
- package/lib/esm/render/webgl/IndexedEdgeGeometry.d.ts +51 -0
- package/lib/esm/render/webgl/IndexedEdgeGeometry.d.ts.map +1 -0
- package/lib/esm/render/webgl/IndexedEdgeGeometry.js +85 -0
- package/lib/esm/render/webgl/IndexedEdgeGeometry.js.map +1 -0
- package/lib/esm/render/webgl/InstancedGeometry.d.ts +6 -5
- package/lib/esm/render/webgl/InstancedGeometry.d.ts.map +1 -1
- package/lib/esm/render/webgl/InstancedGeometry.js +2 -1
- package/lib/esm/render/webgl/InstancedGeometry.js.map +1 -1
- package/lib/esm/render/webgl/Material.d.ts +1 -1
- package/lib/esm/render/webgl/Material.d.ts.map +1 -1
- package/lib/esm/render/webgl/Material.js +2 -0
- package/lib/esm/render/webgl/Material.js.map +1 -1
- package/lib/esm/render/webgl/Mesh.d.ts +8 -162
- package/lib/esm/render/webgl/Mesh.d.ts.map +1 -1
- package/lib/esm/render/webgl/Mesh.js +12 -445
- package/lib/esm/render/webgl/Mesh.js.map +1 -1
- package/lib/esm/render/webgl/MeshData.d.ts +38 -0
- package/lib/esm/render/webgl/MeshData.d.ts.map +1 -0
- package/lib/esm/render/webgl/MeshData.js +62 -0
- package/lib/esm/render/webgl/MeshData.js.map +1 -0
- package/lib/esm/render/webgl/MeshGeometry.d.ts +38 -0
- package/lib/esm/render/webgl/MeshGeometry.d.ts.map +1 -0
- package/lib/esm/render/webgl/MeshGeometry.js +55 -0
- package/lib/esm/render/webgl/MeshGeometry.js.map +1 -0
- package/lib/esm/render/webgl/PlanarClassifier.d.ts.map +1 -1
- package/lib/esm/render/webgl/PlanarClassifier.js +9 -5
- package/lib/esm/render/webgl/PlanarClassifier.js.map +1 -1
- package/lib/esm/render/webgl/PlanarGrid.d.ts +2 -3
- package/lib/esm/render/webgl/PlanarGrid.d.ts.map +1 -1
- package/lib/esm/render/webgl/PlanarGrid.js +3 -3
- package/lib/esm/render/webgl/PlanarGrid.js.map +1 -1
- package/lib/esm/render/webgl/PlanarTextureProjection.d.ts.map +1 -1
- package/lib/esm/render/webgl/PlanarTextureProjection.js +1 -0
- package/lib/esm/render/webgl/PlanarTextureProjection.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 -2
- package/lib/esm/render/webgl/PointCloud.js.map +1 -1
- package/lib/esm/render/webgl/PointString.d.ts +3 -3
- package/lib/esm/render/webgl/PointString.d.ts.map +1 -1
- package/lib/esm/render/webgl/PointString.js +1 -1
- package/lib/esm/render/webgl/PointString.js.map +1 -1
- package/lib/esm/render/webgl/Polyline.d.ts +3 -3
- package/lib/esm/render/webgl/Polyline.d.ts.map +1 -1
- package/lib/esm/render/webgl/Polyline.js +6 -6
- package/lib/esm/render/webgl/Polyline.js.map +1 -1
- package/lib/esm/render/webgl/Primitive.d.ts +2 -2
- package/lib/esm/render/webgl/Primitive.d.ts.map +1 -1
- package/lib/esm/render/webgl/Primitive.js +5 -5
- package/lib/esm/render/webgl/Primitive.js.map +1 -1
- package/lib/esm/render/webgl/RealityMesh.d.ts +2 -2
- package/lib/esm/render/webgl/RealityMesh.d.ts.map +1 -1
- package/lib/esm/render/webgl/RealityMesh.js +9 -9
- package/lib/esm/render/webgl/RealityMesh.js.map +1 -1
- package/lib/esm/render/webgl/RenderCommands.d.ts +6 -2
- package/lib/esm/render/webgl/RenderCommands.d.ts.map +1 -1
- package/lib/esm/render/webgl/RenderCommands.js +78 -45
- package/lib/esm/render/webgl/RenderCommands.js.map +1 -1
- package/lib/esm/render/webgl/RenderFlags.d.ts +48 -1
- package/lib/esm/render/webgl/RenderFlags.d.ts.map +1 -1
- package/lib/esm/render/webgl/RenderFlags.js +63 -1
- package/lib/esm/render/webgl/RenderFlags.js.map +1 -1
- package/lib/esm/render/webgl/SceneCompositor.js +10 -9
- package/lib/esm/render/webgl/SceneCompositor.js.map +1 -1
- package/lib/esm/render/webgl/ScreenSpaceEffect.js +1 -1
- package/lib/esm/render/webgl/ShaderBuilder.d.ts +23 -20
- package/lib/esm/render/webgl/ShaderBuilder.d.ts.map +1 -1
- package/lib/esm/render/webgl/ShaderBuilder.js +38 -32
- package/lib/esm/render/webgl/ShaderBuilder.js.map +1 -1
- package/lib/esm/render/webgl/ShaderProgram.d.ts +1 -1
- package/lib/esm/render/webgl/ShaderProgram.d.ts.map +1 -1
- package/lib/esm/render/webgl/ShaderProgram.js +4 -4
- package/lib/esm/render/webgl/ShaderProgram.js.map +1 -1
- package/lib/esm/render/webgl/SolarShadowMap.d.ts.map +1 -1
- package/lib/esm/render/webgl/SolarShadowMap.js +5 -4
- package/lib/esm/render/webgl/SolarShadowMap.js.map +1 -1
- package/lib/esm/render/webgl/SurfaceGeometry.d.ts +54 -0
- package/lib/esm/render/webgl/SurfaceGeometry.d.ts.map +1 -0
- package/lib/esm/render/webgl/SurfaceGeometry.js +243 -0
- package/lib/esm/render/webgl/SurfaceGeometry.js.map +1 -0
- package/lib/esm/render/webgl/System.d.ts +13 -10
- package/lib/esm/render/webgl/System.d.ts.map +1 -1
- package/lib/esm/render/webgl/System.js +77 -23
- package/lib/esm/render/webgl/System.js.map +1 -1
- package/lib/esm/render/webgl/Target.d.ts +13 -1
- package/lib/esm/render/webgl/Target.d.ts.map +1 -1
- package/lib/esm/render/webgl/Target.js +88 -2
- 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 +112 -119
- package/lib/esm/render/webgl/Technique.js.map +1 -1
- package/lib/esm/render/webgl/TechniqueFlags.d.ts +7 -1
- package/lib/esm/render/webgl/TechniqueFlags.d.ts.map +1 -1
- package/lib/esm/render/webgl/TechniqueFlags.js +10 -1
- package/lib/esm/render/webgl/TechniqueFlags.js.map +1 -1
- package/lib/esm/render/webgl/TechniqueId.d.ts +29 -28
- package/lib/esm/render/webgl/TechniqueId.d.ts.map +1 -1
- package/lib/esm/render/webgl/TechniqueId.js +7 -7
- package/lib/esm/render/webgl/TechniqueId.js.map +1 -1
- package/lib/esm/render/webgl/Texture.d.ts +15 -12
- package/lib/esm/render/webgl/Texture.d.ts.map +1 -1
- package/lib/esm/render/webgl/Texture.js +27 -24
- package/lib/esm/render/webgl/Texture.js.map +1 -1
- package/lib/esm/render/webgl/glsl/AmbientOcclusion.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/AmbientOcclusion.js +84 -19
- package/lib/esm/render/webgl/glsl/AmbientOcclusion.js.map +1 -1
- package/lib/esm/render/webgl/glsl/Animation.js +1 -1
- package/lib/esm/render/webgl/glsl/Blur.js +1 -1
- package/lib/esm/render/webgl/glsl/ClearPickAndColor.js +2 -2
- package/lib/esm/render/webgl/glsl/ClearTranslucent.js +2 -2
- package/lib/esm/render/webgl/glsl/Color.js +1 -1
- package/lib/esm/render/webgl/glsl/Combine3Textures.js +1 -1
- package/lib/esm/render/webgl/glsl/CombineTextures.js +1 -1
- package/lib/esm/render/webgl/glsl/Composite.js +1 -1
- package/lib/esm/render/webgl/glsl/CopyColor.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/CopyColor.js +17 -2
- package/lib/esm/render/webgl/glsl/CopyColor.js.map +1 -1
- package/lib/esm/render/webgl/glsl/CopyPickBuffers.js +2 -2
- package/lib/esm/render/webgl/glsl/CopyStencil.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/CopyStencil.js +10 -13
- package/lib/esm/render/webgl/glsl/CopyStencil.js.map +1 -1
- package/lib/esm/render/webgl/glsl/EVSMFromDepth.js +2 -2
- package/lib/esm/render/webgl/glsl/EVSMFromDepth.js.map +1 -1
- package/lib/esm/render/webgl/glsl/Edge.d.ts +2 -1
- package/lib/esm/render/webgl/glsl/Edge.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/Edge.js +132 -14
- package/lib/esm/render/webgl/glsl/Edge.js.map +1 -1
- package/lib/esm/render/webgl/glsl/FeatureSymbology.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/FeatureSymbology.js +44 -22
- package/lib/esm/render/webgl/glsl/FeatureSymbology.js.map +1 -1
- package/lib/esm/render/webgl/glsl/Fragment.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/Fragment.js +19 -11
- package/lib/esm/render/webgl/glsl/Fragment.js.map +1 -1
- package/lib/esm/render/webgl/glsl/LogarithmicDepthBuffer.js +1 -1
- package/lib/esm/render/webgl/glsl/LookupTable.d.ts +4 -2
- package/lib/esm/render/webgl/glsl/LookupTable.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/LookupTable.js +7 -3
- package/lib/esm/render/webgl/glsl/LookupTable.js.map +1 -1
- package/lib/esm/render/webgl/glsl/PlanarClassification.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/PlanarClassification.js +13 -4
- package/lib/esm/render/webgl/glsl/PlanarClassification.js.map +1 -1
- package/lib/esm/render/webgl/glsl/PlanarGrid.js +2 -2
- package/lib/esm/render/webgl/glsl/PlanarGrid.js.map +1 -1
- package/lib/esm/render/webgl/glsl/PointCloud.js +2 -2
- package/lib/esm/render/webgl/glsl/PointCloud.js.map +1 -1
- package/lib/esm/render/webgl/glsl/PointString.js +1 -1
- package/lib/esm/render/webgl/glsl/PointString.js.map +1 -1
- package/lib/esm/render/webgl/glsl/Polyline.js +1 -1
- package/lib/esm/render/webgl/glsl/Polyline.js.map +1 -1
- package/lib/esm/render/webgl/glsl/RealityMesh.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/RealityMesh.js +9 -6
- package/lib/esm/render/webgl/glsl/RealityMesh.js.map +1 -1
- package/lib/esm/render/webgl/glsl/ScreenSpaceEffect.js +2 -2
- package/lib/esm/render/webgl/glsl/ScreenSpaceEffect.js.map +1 -1
- package/lib/esm/render/webgl/glsl/SkyBox.js +2 -2
- package/lib/esm/render/webgl/glsl/SkyBox.js.map +1 -1
- package/lib/esm/render/webgl/glsl/SkySphere.js +2 -2
- package/lib/esm/render/webgl/glsl/Surface.d.ts.map +1 -1
- package/lib/esm/render/webgl/glsl/Surface.js +41 -16
- package/lib/esm/render/webgl/glsl/Surface.js.map +1 -1
- package/lib/esm/render/webgl/glsl/Translucency.js +2 -2
- package/lib/esm/render/webgl/glsl/Vertex.js +3 -3
- package/lib/esm/render/webgl/glsl/Vertex.js.map +1 -1
- package/lib/esm/render/webgl/glsl/ViewportQuad.js +1 -1
- package/lib/esm/render/webgl/glsl/ViewportQuad.js.map +1 -1
- package/lib/esm/render/webgl/glsl/Wiremesh.d.ts +9 -0
- package/lib/esm/render/webgl/glsl/Wiremesh.d.ts.map +1 -0
- package/lib/esm/render/webgl/glsl/Wiremesh.js +36 -0
- package/lib/esm/render/webgl/glsl/Wiremesh.js.map +1 -0
- package/lib/esm/render-primitives.d.ts +5 -1
- package/lib/esm/render-primitives.d.ts.map +1 -1
- package/lib/esm/render-primitives.js +5 -1
- package/lib/esm/render-primitives.js.map +1 -1
- package/lib/esm/request/Request.d.ts +167 -0
- package/lib/esm/request/Request.d.ts.map +1 -0
- package/lib/esm/request/Request.js +289 -0
- package/lib/esm/request/Request.js.map +1 -0
- package/lib/esm/tile/B3dmReader.d.ts +2 -1
- package/lib/esm/tile/B3dmReader.d.ts.map +1 -1
- package/lib/esm/tile/B3dmReader.js +12 -8
- package/lib/esm/tile/B3dmReader.js.map +1 -1
- package/lib/esm/tile/CesiumAssetProvider.d.ts +14 -0
- package/lib/esm/tile/CesiumAssetProvider.d.ts.map +1 -0
- package/lib/esm/tile/CesiumAssetProvider.js +31 -0
- package/lib/esm/tile/CesiumAssetProvider.js.map +1 -0
- package/lib/esm/tile/ContextShareProvider.d.ts +22 -0
- package/lib/esm/tile/ContextShareProvider.d.ts.map +1 -0
- package/lib/esm/tile/ContextShareProvider.js +125 -0
- package/lib/esm/tile/ContextShareProvider.js.map +1 -0
- package/lib/esm/tile/DynamicIModelTile.js +9 -3
- package/lib/esm/tile/DynamicIModelTile.js.map +1 -1
- package/lib/esm/tile/GltfReader.d.ts +594 -55
- package/lib/esm/tile/GltfReader.d.ts.map +1 -1
- package/lib/esm/tile/GltfReader.js +678 -242
- package/lib/esm/tile/GltfReader.js.map +1 -1
- package/lib/esm/tile/I3dmReader.d.ts +2 -1
- package/lib/esm/tile/I3dmReader.d.ts.map +1 -1
- package/lib/esm/tile/I3dmReader.js +11 -7
- package/lib/esm/tile/I3dmReader.js.map +1 -1
- package/lib/esm/tile/IModelTile.d.ts.map +1 -1
- package/lib/esm/tile/IModelTile.js +14 -7
- package/lib/esm/tile/IModelTile.js.map +1 -1
- package/lib/esm/tile/IModelTileTree.d.ts +8 -0
- package/lib/esm/tile/IModelTileTree.d.ts.map +1 -1
- package/lib/esm/tile/IModelTileTree.js +36 -1
- package/lib/esm/tile/IModelTileTree.js.map +1 -1
- package/lib/esm/tile/ImdlReader.d.ts +365 -10
- package/lib/esm/tile/ImdlReader.d.ts.map +1 -1
- package/lib/esm/tile/ImdlReader.js +199 -66
- package/lib/esm/tile/ImdlReader.js.map +1 -1
- package/lib/esm/tile/OrbitGtTileTree.d.ts.map +1 -1
- package/lib/esm/tile/OrbitGtTileTree.js +8 -5
- package/lib/esm/tile/OrbitGtTileTree.js.map +1 -1
- package/lib/esm/tile/PrimaryTileTree.d.ts +14 -5
- package/lib/esm/tile/PrimaryTileTree.d.ts.map +1 -1
- package/lib/esm/tile/PrimaryTileTree.js +70 -15
- package/lib/esm/tile/PrimaryTileTree.js.map +1 -1
- package/lib/esm/tile/RealityModelTileTree.d.ts +3 -55
- package/lib/esm/tile/RealityModelTileTree.d.ts.map +1 -1
- package/lib/esm/tile/RealityModelTileTree.js +56 -230
- package/lib/esm/tile/RealityModelTileTree.js.map +1 -1
- package/lib/esm/tile/RealityTileLoader.d.ts +1 -0
- package/lib/esm/tile/RealityTileLoader.d.ts.map +1 -1
- package/lib/esm/tile/RealityTileLoader.js +4 -3
- package/lib/esm/tile/RealityTileLoader.js.map +1 -1
- package/lib/esm/tile/Tile.d.ts.map +1 -1
- package/lib/esm/tile/Tile.js +5 -1
- package/lib/esm/tile/Tile.js.map +1 -1
- package/lib/esm/tile/TileAdmin.d.ts +37 -4
- package/lib/esm/tile/TileAdmin.d.ts.map +1 -1
- package/lib/esm/tile/TileAdmin.js +19 -13
- package/lib/esm/tile/TileAdmin.js.map +1 -1
- package/lib/esm/tile/TileDrawArgs.d.ts +11 -0
- package/lib/esm/tile/TileDrawArgs.d.ts.map +1 -1
- package/lib/esm/tile/TileDrawArgs.js +6 -1
- package/lib/esm/tile/TileDrawArgs.js.map +1 -1
- package/lib/esm/tile/TileTreeReference.d.ts +2 -0
- package/lib/esm/tile/TileTreeReference.d.ts.map +1 -1
- package/lib/esm/tile/TileTreeReference.js +5 -0
- package/lib/esm/tile/TileTreeReference.js.map +1 -1
- package/lib/esm/tile/internal.d.ts +4 -1
- package/lib/esm/tile/internal.d.ts.map +1 -1
- package/lib/esm/tile/internal.js +4 -1
- package/lib/esm/tile/internal.js.map +1 -1
- package/lib/esm/tile/map/ArcGISTileMap.d.ts +22 -0
- package/lib/esm/tile/map/ArcGISTileMap.d.ts.map +1 -0
- package/lib/esm/tile/map/ArcGISTileMap.js +173 -0
- package/lib/esm/tile/map/ArcGISTileMap.js.map +1 -0
- package/lib/esm/tile/map/ArcGisTokenGenerator.js +1 -1
- package/lib/esm/tile/map/ArcGisTokenGenerator.js.map +1 -1
- package/lib/esm/tile/map/ArcGisUtilities.d.ts +1 -1
- package/lib/esm/tile/map/ArcGisUtilities.d.ts.map +1 -1
- package/lib/esm/tile/map/ArcGisUtilities.js +14 -6
- package/lib/esm/tile/map/ArcGisUtilities.js.map +1 -1
- package/lib/esm/tile/map/BingElevation.js +1 -1
- package/lib/esm/tile/map/BingElevation.js.map +1 -1
- package/lib/esm/tile/map/CesiumTerrainProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/CesiumTerrainProvider.js +25 -13
- package/lib/esm/tile/map/CesiumTerrainProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +2 -2
- package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +21 -42
- package/lib/esm/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.js +2 -2
- package/lib/esm/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts +8 -0
- package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js +51 -10
- package/lib/esm/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts +6 -1
- package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js +63 -21
- package/lib/esm/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryTileTree.d.ts +4 -4
- package/lib/esm/tile/map/ImageryTileTree.d.ts.map +1 -1
- package/lib/esm/tile/map/ImageryTileTree.js +21 -25
- package/lib/esm/tile/map/ImageryTileTree.js.map +1 -1
- package/lib/esm/tile/map/MapCartoRectangle.js +1 -1
- package/lib/esm/tile/map/MapCartoRectangle.js.map +1 -1
- package/lib/esm/tile/map/MapLayerAuthentication.d.ts +20 -0
- package/lib/esm/tile/map/MapLayerAuthentication.d.ts.map +1 -0
- package/lib/esm/tile/map/MapLayerAuthentication.js +15 -0
- package/lib/esm/tile/map/MapLayerAuthentication.js.map +1 -0
- package/lib/esm/tile/map/MapLayerFormatRegistry.d.ts +6 -3
- package/lib/esm/tile/map/MapLayerFormatRegistry.d.ts.map +1 -1
- package/lib/esm/tile/map/MapLayerFormatRegistry.js +3 -1
- package/lib/esm/tile/map/MapLayerFormatRegistry.js.map +1 -1
- package/lib/esm/tile/map/MapLayerImageryFormats.d.ts +2 -2
- package/lib/esm/tile/map/MapLayerImageryFormats.d.ts.map +1 -1
- package/lib/esm/tile/map/MapLayerImageryFormats.js +22 -9
- package/lib/esm/tile/map/MapLayerImageryFormats.js.map +1 -1
- package/lib/esm/tile/map/MapLayerImageryProvider.d.ts +18 -6
- package/lib/esm/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/MapLayerImageryProvider.js +44 -11
- package/lib/esm/tile/map/MapLayerImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/MapLayerSources.d.ts +3 -11
- package/lib/esm/tile/map/MapLayerSources.d.ts.map +1 -1
- package/lib/esm/tile/map/MapLayerSources.js +7 -36
- package/lib/esm/tile/map/MapLayerSources.js.map +1 -1
- package/lib/esm/tile/map/MapTile.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTile.js +4 -3
- package/lib/esm/tile/map/MapTile.js.map +1 -1
- package/lib/esm/tile/map/MapTileLoader.js +1 -1
- package/lib/esm/tile/map/MapTileLoader.js.map +1 -1
- package/lib/esm/tile/map/MapTileTree.d.ts +1 -1
- package/lib/esm/tile/map/MapTileTree.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTileTree.js +30 -21
- package/lib/esm/tile/map/MapTileTree.js.map +1 -1
- package/lib/esm/tile/map/MapTiledGraphicsProvider.d.ts +3 -3
- package/lib/esm/tile/map/MapTiledGraphicsProvider.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTiledGraphicsProvider.js +4 -6
- package/lib/esm/tile/map/MapTiledGraphicsProvider.js.map +1 -1
- package/lib/esm/tile/map/MapTilingScheme.d.ts +7 -2
- package/lib/esm/tile/map/MapTilingScheme.d.ts.map +1 -1
- package/lib/esm/tile/map/MapTilingScheme.js +22 -9
- package/lib/esm/tile/map/MapTilingScheme.js.map +1 -1
- package/lib/esm/tile/map/QuadId.d.ts +1 -0
- package/lib/esm/tile/map/QuadId.d.ts.map +1 -1
- package/lib/esm/tile/map/QuadId.js +2 -1
- package/lib/esm/tile/map/QuadId.js.map +1 -1
- package/lib/esm/tile/map/TerrainMeshProvider.d.ts +1 -1
- package/lib/esm/tile/map/TerrainMeshProvider.js.map +1 -1
- package/lib/esm/tile/map/WmsCapabilities.d.ts +8 -1
- package/lib/esm/tile/map/WmsCapabilities.d.ts.map +1 -1
- package/lib/esm/tile/map/WmsCapabilities.js +37 -3
- package/lib/esm/tile/map/WmsCapabilities.js.map +1 -1
- package/lib/esm/tile/map/WmtsCapabilities.d.ts +11 -1
- package/lib/esm/tile/map/WmtsCapabilities.d.ts.map +1 -1
- package/lib/esm/tile/map/WmtsCapabilities.js +20 -6
- package/lib/esm/tile/map/WmtsCapabilities.js.map +1 -1
- package/lib/esm/tools/EditManipulator.d.ts.map +1 -1
- package/lib/esm/tools/EditManipulator.js +1 -1
- package/lib/esm/tools/EditManipulator.js.map +1 -1
- package/lib/esm/tools/ElementSetTool.js +2 -2
- package/lib/esm/tools/ElementSetTool.js.map +1 -1
- package/lib/esm/tools/PrimitiveTool.d.ts +4 -4
- package/lib/esm/tools/PrimitiveTool.d.ts.map +1 -1
- package/lib/esm/tools/PrimitiveTool.js +2 -2
- package/lib/esm/tools/PrimitiveTool.js.map +1 -1
- package/lib/esm/tools/Tool.d.ts +29 -1
- package/lib/esm/tools/Tool.d.ts.map +1 -1
- package/lib/esm/tools/Tool.js +66 -0
- package/lib/esm/tools/Tool.js.map +1 -1
- package/lib/esm/tools/ToolAdmin.d.ts.map +1 -1
- package/lib/esm/tools/ToolAdmin.js +20 -10
- package/lib/esm/tools/ToolAdmin.js.map +1 -1
- package/lib/esm/tools/ViewTool.js +1 -1
- package/lib/esm/tools/ViewTool.js.map +1 -1
- package/lib/esm/webgl.d.ts +5 -0
- package/lib/esm/webgl.d.ts.map +1 -1
- package/lib/esm/webgl.js +5 -0
- package/lib/esm/webgl.js.map +1 -1
- package/lib/public/locales/en/iModelJs.json +3 -1
- package/package.json +32 -27
- package/lib/cjs/RealityDataAccessProps.d.ts +0 -42
- package/lib/cjs/RealityDataAccessProps.d.ts.map +0 -1
- package/lib/cjs/RealityDataAccessProps.js +0 -23
- package/lib/cjs/RealityDataAccessProps.js.map +0 -1
- package/lib/cjs/RealityDataConnection.d.ts +0 -31
- package/lib/cjs/RealityDataConnection.d.ts.map +0 -1
- package/lib/cjs/RealityDataConnection.js +0 -101
- package/lib/cjs/RealityDataConnection.js.map +0 -1
- package/lib/cjs/extension/Extension.d.ts +0 -39
- package/lib/cjs/extension/Extension.d.ts.map +0 -1
- package/lib/cjs/extension/Extension.js +0 -39
- package/lib/cjs/extension/Extension.js.map +0 -1
- package/lib/cjs/extension/ExtensionAdmin.d.ts +0 -70
- package/lib/cjs/extension/ExtensionAdmin.d.ts.map +0 -1
- package/lib/cjs/extension/ExtensionAdmin.js +0 -105
- package/lib/cjs/extension/ExtensionAdmin.js.map +0 -1
- package/lib/cjs/extension/ExtensionHost.d.ts +0 -22
- package/lib/cjs/extension/ExtensionHost.d.ts.map +0 -1
- package/lib/cjs/extension/ExtensionHost.js +0 -24
- package/lib/cjs/extension/ExtensionHost.js.map +0 -1
- package/lib/cjs/extension/ExtensionImpl.d.ts +0 -16
- package/lib/cjs/extension/ExtensionImpl.d.ts.map +0 -1
- package/lib/cjs/extension/ExtensionImpl.js +0 -40
- package/lib/cjs/extension/ExtensionImpl.js.map +0 -1
- package/lib/cjs/extension/ExtensionLoader.d.ts +0 -20
- package/lib/cjs/extension/ExtensionLoader.d.ts.map +0 -1
- package/lib/cjs/extension/ExtensionLoader.js.map +0 -1
- package/lib/cjs/extension/ExtensionRuntime.d.ts +0 -2
- package/lib/cjs/extension/ExtensionRuntime.d.ts.map +0 -1
- package/lib/cjs/extension/ExtensionRuntime.js +0 -71
- package/lib/cjs/extension/ExtensionRuntime.js.map +0 -1
- package/lib/cjs/extension/extensions.d.ts +0 -18
- package/lib/cjs/extension/extensions.d.ts.map +0 -1
- package/lib/cjs/extension/extensions.js +0 -35
- package/lib/cjs/extension/extensions.js.map +0 -1
- package/lib/cjs/tile/map/MapLayerSettingsService.d.ts +0 -39
- package/lib/cjs/tile/map/MapLayerSettingsService.d.ts.map +0 -1
- package/lib/cjs/tile/map/MapLayerSettingsService.js +0 -190
- package/lib/cjs/tile/map/MapLayerSettingsService.js.map +0 -1
- package/lib/esm/RealityDataAccessProps.d.ts +0 -42
- package/lib/esm/RealityDataAccessProps.d.ts.map +0 -1
- package/lib/esm/RealityDataAccessProps.js +0 -20
- package/lib/esm/RealityDataAccessProps.js.map +0 -1
- package/lib/esm/RealityDataConnection.d.ts +0 -31
- package/lib/esm/RealityDataConnection.d.ts.map +0 -1
- package/lib/esm/RealityDataConnection.js +0 -98
- package/lib/esm/RealityDataConnection.js.map +0 -1
- package/lib/esm/extension/Extension.d.ts +0 -39
- package/lib/esm/extension/Extension.d.ts.map +0 -1
- package/lib/esm/extension/Extension.js +0 -38
- package/lib/esm/extension/Extension.js.map +0 -1
- package/lib/esm/extension/ExtensionAdmin.d.ts +0 -70
- package/lib/esm/extension/ExtensionAdmin.d.ts.map +0 -1
- package/lib/esm/extension/ExtensionAdmin.js +0 -101
- package/lib/esm/extension/ExtensionAdmin.js.map +0 -1
- package/lib/esm/extension/ExtensionHost.d.ts +0 -22
- package/lib/esm/extension/ExtensionHost.d.ts.map +0 -1
- package/lib/esm/extension/ExtensionHost.js +0 -20
- package/lib/esm/extension/ExtensionHost.js.map +0 -1
- package/lib/esm/extension/ExtensionImpl.d.ts +0 -16
- package/lib/esm/extension/ExtensionImpl.d.ts.map +0 -1
- package/lib/esm/extension/ExtensionImpl.js +0 -35
- package/lib/esm/extension/ExtensionImpl.js.map +0 -1
- package/lib/esm/extension/ExtensionLoader.d.ts +0 -20
- package/lib/esm/extension/ExtensionLoader.d.ts.map +0 -1
- package/lib/esm/extension/ExtensionLoader.js.map +0 -1
- package/lib/esm/extension/ExtensionRuntime.d.ts +0 -2
- package/lib/esm/extension/ExtensionRuntime.d.ts.map +0 -1
- package/lib/esm/extension/ExtensionRuntime.js +0 -69
- package/lib/esm/extension/ExtensionRuntime.js.map +0 -1
- package/lib/esm/extension/extensions.d.ts +0 -18
- package/lib/esm/extension/extensions.d.ts.map +0 -1
- package/lib/esm/extension/extensions.js +0 -23
- package/lib/esm/extension/extensions.js.map +0 -1
- package/lib/esm/tile/map/MapLayerSettingsService.d.ts +0 -39
- package/lib/esm/tile/map/MapLayerSettingsService.d.ts.map +0 -1
- package/lib/esm/tile/map/MapLayerSettingsService.js +0 -186
- package/lib/esm/tile/map/MapLayerSettingsService.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModelState.js","sourceRoot":"","sources":["../../src/ModelState.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 ModelState\r\n */\r\n\r\nimport { Id64, Id64String, JsonUtils } from \"@itwin/core-bentley\";\r\nimport {\r\n GeometricModel2dProps, GeometricModel3dProps, GeometricModelProps, ModelProps, RealityDataFormat, RealityDataSourceKey, RelatedElement, SpatialClassifiers,\r\n} from \"@itwin/core-common\";\r\nimport { Point2d, Range3d } from \"@itwin/core-geometry\";\r\nimport { EntityState } from \"./EntityState\";\r\nimport { HitDetail } from \"./HitDetail\";\r\nimport { IModelConnection } from \"./IModelConnection\";\r\nimport { RealityDataSource } from \"./RealityDataSource\";\r\nimport { createOrbitGtTileTreeReference, createPrimaryTileTreeReference, createRealityTileTreeReference, TileTreeReference } from \"./tile/internal\";\r\nimport { ViewState } from \"./ViewState\";\r\n\r\n/** Represents the front-end state of a [Model]($backend).\r\n * @public\r\n */\r\nexport class ModelState extends EntityState implements ModelProps {\r\n /** @internal */\r\n public static override get className() { return \"Model\"; }\r\n public readonly modeledElement: RelatedElement;\r\n public readonly name: string;\r\n public parentModel: Id64String;\r\n public readonly isPrivate: boolean;\r\n public readonly isTemplate: boolean;\r\n\r\n constructor(props: ModelProps, iModel: IModelConnection, state?: ModelState) {\r\n super(props, iModel, state);\r\n this.modeledElement = RelatedElement.fromJSON(props.modeledElement)!;\r\n this.name = props.name ? props.name : \"\";\r\n this.parentModel = Id64.fromJSON(props.parentModel)!; // NB! Must always match the model of the modeledElement!\r\n this.isPrivate = JsonUtils.asBool(props.isPrivate);\r\n this.isTemplate = JsonUtils.asBool(props.isTemplate);\r\n }\r\n\r\n /** Add all custom-handled properties of a Model to a json object. */\r\n public override toJSON(): ModelProps {\r\n const val = super.toJSON() as ModelProps;\r\n val.modeledElement = this.modeledElement;\r\n val.parentModel = this.parentModel;\r\n val.name = this.name;\r\n if (this.isPrivate)\r\n val.isPrivate = this.isPrivate;\r\n if (this.isTemplate)\r\n val.isTemplate = this.isTemplate;\r\n return val;\r\n }\r\n\r\n /** Determine whether this is a GeometricModel */\r\n public get isGeometricModel(): boolean { return false; }\r\n\r\n /** Attempts to cast this model to a geometric model. */\r\n public get asGeometricModel(): GeometricModelState | undefined { return undefined; }\r\n /** Attempts to cast this model to a 3d geometric model. */\r\n public get asGeometricModel3d(): GeometricModel3dState | undefined { return undefined; }\r\n /** Attempts to cast this model to a 2d geometric model. */\r\n public get asGeometricModel2d(): GeometricModel2dState | undefined { return undefined; }\r\n /** Attempts to cast this model to a spatial model. */\r\n public get asSpatialModel(): SpatialModelState | undefined { return undefined; }\r\n\r\n /**\r\n * Return the tool tip for this model. This is called only if the hit does not return a tooltip.\r\n * @internal\r\n */\r\n public getToolTip(_hit: HitDetail): HTMLElement | string | undefined { return undefined; }\r\n}\r\n\r\n/** Represents the front-end state of a [GeometricModel]($backend).\r\n * The contents of a GeometricModelState can be rendered inside a [[Viewport]].\r\n * @public\r\n */\r\nexport abstract class GeometricModelState extends ModelState implements GeometricModelProps {\r\n /** @internal */\r\n public static override get className() { return \"GeometricModel\"; }\r\n /** @internal */\r\n public geometryGuid?: string;\r\n\r\n private _modelRange?: Range3d;\r\n\r\n constructor(props: GeometricModelProps, iModel: IModelConnection, state?: GeometricModelState) {\r\n super(props, iModel, state);\r\n this.geometryGuid = props.geometryGuid;\r\n }\r\n\r\n /** Returns true if this is a 3d model (a [[GeometricModel3dState]]). */\r\n public abstract get is3d(): boolean;\r\n /** @internal */\r\n public override get asGeometricModel(): GeometricModelState { return this; }\r\n /** Returns true if this is a 2d model (a [[GeometricModel2dState]]). */\r\n public get is2d(): boolean { return !this.is3d; }\r\n\r\n /** @internal */\r\n public override get isGeometricModel(): boolean { return true; }\r\n /** @internal */\r\n public get treeModelId(): Id64String { return this.id; }\r\n\r\n /** Query for the union of the ranges of all the elements in this GeometricModel.\r\n * @internal\r\n */\r\n public async queryModelRange(): Promise<Range3d> {\r\n if (undefined === this._modelRange) {\r\n const ranges = await this.iModel.models.queryModelRanges(this.id);\r\n this._modelRange = Range3d.fromJSON(ranges[0]);\r\n }\r\n return this._modelRange;\r\n }\r\n\r\n /** @internal */\r\n public createTileTreeReference(view: ViewState): TileTreeReference {\r\n // If this is a reality model, its tile tree is obtained from reality data service URL.\r\n\r\n const spatialModel = this.asSpatialModel;\r\n const rdSourceKey = this.jsonProperties.rdSourceKey;\r\n\r\n if (rdSourceKey) {\r\n const useOrbitGtTileTreeReference = rdSourceKey.format === RealityDataFormat.OPC;\r\n const treeRef = (!useOrbitGtTileTreeReference) ?\r\n createRealityTileTreeReference({\r\n rdSourceKey,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n // url: tilesetUrl, // If rdSourceKey is defined, url is not used\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n }) :\r\n createOrbitGtTileTreeReference({\r\n rdSourceKey,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n // orbitGtBlob: props.orbitGtBlob!, // If rdSourceKey is defined, orbitGtBlob is not used\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n });\r\n return treeRef;\r\n }\r\n\r\n const orbitGtBlob = this.jsonProperties.orbitGtBlob;\r\n\r\n // If this is an OrbitGt reality model, create it's reference\r\n if(orbitGtBlob) {\r\n let orbitGtName = \"\";\r\n if (orbitGtBlob.blobFileName !== \"\") {\r\n if (orbitGtBlob.blobFileName[0] === \"/\")\r\n orbitGtName = orbitGtBlob.blobFileName.substring(1);\r\n else\r\n orbitGtName = orbitGtBlob.blobFileName;\r\n }\r\n // Create rdSourceKey if not provided\r\n const rdSourceKeyOGT: RealityDataSourceKey = RealityDataSource.createKeyFromOrbitGtBlobProps(orbitGtBlob);\r\n\r\n return createOrbitGtTileTreeReference({\r\n rdSourceKey: rdSourceKeyOGT,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n orbitGtBlob,\r\n name: orbitGtName,\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n });\r\n }\r\n\r\n // If this is a TileTree reality model, create it's reference\r\n const tilesetUrl = this.jsonProperties.tilesetUrl;\r\n\r\n if(tilesetUrl) {\r\n const rdSourceKeyCS = RealityDataSource.createRealityDataSourceKeyFromUrl(tilesetUrl);\r\n return createRealityTileTreeReference({\r\n rdSourceKey: rdSourceKeyCS,\r\n url : tilesetUrl,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n tilesetToDbTransform: this.jsonProperties.tilesetToDbTransform,\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n });\r\n }\r\n\r\n return createPrimaryTileTreeReference(view, this);\r\n }\r\n}\r\n/** Represents the front-end state of a [GeometricModel2d]($backend).\r\n * @public\r\n */\r\nexport class GeometricModel2dState extends GeometricModelState implements GeometricModel2dProps {\r\n /** @internal */\r\n public static override get className() { return \"GeometricModel2d\"; }\r\n /** @internal */\r\n public readonly globalOrigin: Point2d;\r\n\r\n constructor(props: GeometricModel2dProps, iModel: IModelConnection, state?: GeometricModel2dState) {\r\n super(props, iModel, state);\r\n this.globalOrigin = Point2d.fromJSON(props.globalOrigin);\r\n }\r\n\r\n /** @internal */\r\n public get is3d(): boolean { return false; }\r\n /** @internal */\r\n public override get asGeometricModel2d(): GeometricModel2dState { return this; }\r\n\r\n public override toJSON(): GeometricModel2dProps {\r\n const val = super.toJSON() as GeometricModel2dProps;\r\n val.globalOrigin = this.globalOrigin;\r\n return val;\r\n }\r\n}\r\n\r\n/** Represents the front-end state of a [GeometricModel3d]($backend).\r\n * @public\r\n */\r\nexport class GeometricModel3dState extends GeometricModelState {\r\n /** @internal */\r\n public static override get className() { return \"GeometricModel3d\"; }\r\n\r\n constructor(props: GeometricModel3dProps, iModel: IModelConnection, state?: GeometricModel3dState) {\r\n super(props, iModel, state);\r\n this.isNotSpatiallyLocated = JsonUtils.asBool(props.isNotSpatiallyLocated);\r\n this.isPlanProjection = JsonUtils.asBool(props.isPlanProjection);\r\n }\r\n\r\n /** @internal */\r\n public override toJSON(): GeometricModel3dProps {\r\n const val = super.toJSON() as GeometricModel3dProps;\r\n if (this.isNotSpatiallyLocated)\r\n val.isNotSpatiallyLocated = true;\r\n\r\n if (this.isPlanProjection)\r\n val.isPlanProjection = true;\r\n\r\n return val;\r\n }\r\n\r\n /** @internal */\r\n public get is3d(): boolean { return true; }\r\n /** @internal */\r\n public override get asGeometricModel3d(): GeometricModel3dState { return this; }\r\n\r\n /** If true, then the elements in this GeometricModel3dState are expected to be in an XY plane.\r\n * @note The associated ECProperty was added to the BisCore schema in version 1.0.8\r\n */\r\n public readonly isPlanProjection: boolean;\r\n\r\n /** If true, then the elements in this GeometricModel3dState are not in real-world coordinates and will not be in the spatial index.\r\n * @note The associated ECProperty was added to the BisCore schema in version 1.0.8\r\n */\r\n public readonly isNotSpatiallyLocated: boolean;\r\n\r\n /** If true, then the elements in this GeometricModel3dState are in real-world coordinates and will be in the spatial index. */\r\n public get isSpatiallyLocated(): boolean { return !this.isNotSpatiallyLocated; }\r\n}\r\n\r\n/** Represents the front-end state of a [SheetModel]($backend).\r\n * @public\r\n */\r\nexport class SheetModelState extends GeometricModel2dState {\r\n /** @internal */\r\n public static override get className() { return \"SheetModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [SpatialModel]($backend).\r\n * @public\r\n */\r\nexport class SpatialModelState extends GeometricModel3dState {\r\n /** If this is a reality model, provides access to a list of available spatial classifiers that can be applied to it. */\r\n public readonly classifiers?: SpatialClassifiers;\r\n\r\n /** @internal */\r\n public static override get className() { return \"SpatialModel\"; }\r\n /** @internal */\r\n public override get asSpatialModel(): SpatialModelState { return this; }\r\n\r\n public constructor(props: ModelProps, iModel: IModelConnection, state?: SpatialModelState) {\r\n super(props, iModel, state);\r\n if (this.isRealityModel)\r\n this.classifiers = new SpatialClassifiers(this.jsonProperties);\r\n }\r\n /** Return true if this is a reality model (represented by a 3d tile set). */\r\n public get isRealityModel(): boolean {\r\n return undefined !== this.jsonProperties.tilesetUrl;\r\n }\r\n}\r\n\r\n/** Represents the front-end state of a [PhysicalModel]($backend).\r\n * @public\r\n */\r\nexport class PhysicalModelState extends SpatialModelState {\r\n /** @internal */\r\n public static override get className() { return \"PhysicalModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [SpatialLocationModel]($backend).\r\n * @public\r\n */\r\nexport class SpatialLocationModelState extends SpatialModelState {\r\n /** @internal */\r\n public static override get className() { return \"SpatialLocationModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [DrawingModel]($backend).\r\n * @public\r\n */\r\nexport class DrawingModelState extends GeometricModel2dState {\r\n /** @internal */\r\n public static override get className() { return \"DrawingModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [SectionDrawingModel]($backend).\r\n * @public\r\n */\r\nexport class SectionDrawingModelState extends DrawingModelState {\r\n /** @internal */\r\n public static override get className() { return \"SectionDrawingModel\"; }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"ModelState.js","sourceRoot":"","sources":["../../src/ModelState.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 ModelState\r\n */\r\n\r\nimport { Id64, Id64String, JsonUtils } from \"@itwin/core-bentley\";\r\nimport {\r\n GeometricModel2dProps, GeometricModel3dProps, GeometricModelProps, ModelProps, RealityDataFormat, RealityDataSourceKey, RelatedElement, SpatialClassifiers,\r\n} from \"@itwin/core-common\";\r\nimport { Point2d, Range3d } from \"@itwin/core-geometry\";\r\nimport { EntityState } from \"./EntityState\";\r\nimport { HitDetail } from \"./HitDetail\";\r\nimport { IModelConnection } from \"./IModelConnection\";\r\nimport { RealityDataSource } from \"./RealityDataSource\";\r\nimport { createOrbitGtTileTreeReference, createPrimaryTileTreeReference, createRealityTileTreeReference, TileTreeReference } from \"./tile/internal\";\r\nimport { ViewState } from \"./ViewState\";\r\n\r\n/** Represents the front-end state of a [Model]($backend).\r\n * @public\r\n */\r\nexport class ModelState extends EntityState implements ModelProps {\r\n /** @internal */\r\n public static override get className() { return \"Model\"; }\r\n public readonly modeledElement: RelatedElement;\r\n public readonly name: string;\r\n public parentModel: Id64String;\r\n public readonly isPrivate: boolean;\r\n public readonly isTemplate: boolean;\r\n\r\n constructor(props: ModelProps, iModel: IModelConnection, state?: ModelState) {\r\n super(props, iModel, state);\r\n this.modeledElement = RelatedElement.fromJSON(props.modeledElement)!;\r\n this.name = props.name ? props.name : \"\";\r\n this.parentModel = Id64.fromJSON(props.parentModel)!; // NB! Must always match the model of the modeledElement!\r\n this.isPrivate = JsonUtils.asBool(props.isPrivate);\r\n this.isTemplate = JsonUtils.asBool(props.isTemplate);\r\n }\r\n\r\n /** Add all custom-handled properties of a Model to a json object. */\r\n public override toJSON(): ModelProps {\r\n const val = super.toJSON() as ModelProps;\r\n val.modeledElement = this.modeledElement;\r\n val.parentModel = this.parentModel;\r\n val.name = this.name;\r\n if (this.isPrivate)\r\n val.isPrivate = this.isPrivate;\r\n if (this.isTemplate)\r\n val.isTemplate = this.isTemplate;\r\n return val;\r\n }\r\n\r\n /** Determine whether this is a GeometricModel */\r\n public get isGeometricModel(): boolean { return false; }\r\n\r\n /** Attempts to cast this model to a geometric model. */\r\n public get asGeometricModel(): GeometricModelState | undefined { return undefined; }\r\n /** Attempts to cast this model to a 3d geometric model. */\r\n public get asGeometricModel3d(): GeometricModel3dState | undefined { return undefined; }\r\n /** Attempts to cast this model to a 2d geometric model. */\r\n public get asGeometricModel2d(): GeometricModel2dState | undefined { return undefined; }\r\n /** Attempts to cast this model to a spatial model. */\r\n public get asSpatialModel(): SpatialModelState | undefined { return undefined; }\r\n\r\n /**\r\n * Return the tool tip for this model. This is called only if the hit does not return a tooltip.\r\n * @internal\r\n */\r\n public getToolTip(_hit: HitDetail): HTMLElement | string | undefined { return undefined; }\r\n}\r\n\r\n/** Represents the front-end state of a [GeometricModel]($backend).\r\n * The contents of a GeometricModelState can be rendered inside a [[Viewport]].\r\n * @public\r\n */\r\nexport abstract class GeometricModelState extends ModelState implements GeometricModelProps {\r\n /** @internal */\r\n public static override get className() { return \"GeometricModel\"; }\r\n /** @internal */\r\n public geometryGuid?: string;\r\n\r\n private _modelRange?: Range3d;\r\n\r\n constructor(props: GeometricModelProps, iModel: IModelConnection, state?: GeometricModelState) {\r\n super(props, iModel, state);\r\n this.geometryGuid = props.geometryGuid;\r\n }\r\n\r\n /** Returns true if this is a 3d model (a [[GeometricModel3dState]]). */\r\n public abstract get is3d(): boolean;\r\n /** @internal */\r\n public override get asGeometricModel(): GeometricModelState { return this; }\r\n /** Returns true if this is a 2d model (a [[GeometricModel2dState]]). */\r\n public get is2d(): boolean { return !this.is3d; }\r\n\r\n /** @internal */\r\n public override get isGeometricModel(): boolean { return true; }\r\n /** @internal */\r\n public get treeModelId(): Id64String { return this.id; }\r\n\r\n /** Query for the union of the ranges of all the elements in this GeometricModel.\r\n * @internal\r\n */\r\n public async queryModelRange(): Promise<Range3d> {\r\n if (undefined === this._modelRange) {\r\n const ranges = await this.iModel.models.queryModelRanges(this.id);\r\n this._modelRange = Range3d.fromJSON(ranges[0]);\r\n }\r\n return this._modelRange;\r\n }\r\n\r\n /** @internal */\r\n public createTileTreeReference(view: ViewState): TileTreeReference {\r\n // If this is a reality model, its tile tree is obtained from reality data service URL.\r\n\r\n const spatialModel = this.asSpatialModel;\r\n const rdSourceKey = this.jsonProperties.rdSourceKey;\r\n\r\n if (rdSourceKey) {\r\n const useOrbitGtTileTreeReference = rdSourceKey.format === RealityDataFormat.OPC;\r\n const treeRef = (!useOrbitGtTileTreeReference) ?\r\n createRealityTileTreeReference({\r\n rdSourceKey,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n // url: tilesetUrl, // If rdSourceKey is defined, url is not used\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n }) :\r\n createOrbitGtTileTreeReference({\r\n rdSourceKey,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n // orbitGtBlob: props.orbitGtBlob!, // If rdSourceKey is defined, orbitGtBlob is not used\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n });\r\n return treeRef;\r\n }\r\n\r\n const orbitGtBlob = this.jsonProperties.orbitGtBlob;\r\n\r\n // If this is an OrbitGt reality model, create it's reference\r\n if(orbitGtBlob) {\r\n let orbitGtName = \"\";\r\n if (orbitGtBlob.blobFileName !== \"\") {\r\n if (orbitGtBlob.blobFileName[0] === \"/\")\r\n orbitGtName = orbitGtBlob.blobFileName.substring(1);\r\n else\r\n orbitGtName = orbitGtBlob.blobFileName;\r\n }\r\n // Create rdSourceKey if not provided\r\n const rdSourceKeyOGT: RealityDataSourceKey = RealityDataSource.createKeyFromOrbitGtBlobProps(orbitGtBlob);\r\n\r\n return createOrbitGtTileTreeReference({\r\n rdSourceKey: rdSourceKeyOGT,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n orbitGtBlob,\r\n name: orbitGtName,\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n });\r\n }\r\n\r\n // If this is a TileTree reality model, create it's reference\r\n const tilesetUrl = this.jsonProperties.tilesetUrl;\r\n\r\n if(tilesetUrl) {\r\n const rdSourceKeyCS = RealityDataSource.createKeyFromUrl(tilesetUrl);\r\n return createRealityTileTreeReference({\r\n rdSourceKey: rdSourceKeyCS,\r\n url : tilesetUrl,\r\n iModel: this.iModel,\r\n source: view,\r\n modelId: this.id,\r\n tilesetToDbTransform: this.jsonProperties.tilesetToDbTransform,\r\n classifiers: undefined !== spatialModel ? spatialModel.classifiers : undefined,\r\n });\r\n }\r\n\r\n return createPrimaryTileTreeReference(view, this);\r\n }\r\n}\r\n/** Represents the front-end state of a [GeometricModel2d]($backend).\r\n * @public\r\n */\r\nexport class GeometricModel2dState extends GeometricModelState implements GeometricModel2dProps {\r\n /** @internal */\r\n public static override get className() { return \"GeometricModel2d\"; }\r\n /** @internal */\r\n public readonly globalOrigin: Point2d;\r\n\r\n constructor(props: GeometricModel2dProps, iModel: IModelConnection, state?: GeometricModel2dState) {\r\n super(props, iModel, state);\r\n this.globalOrigin = Point2d.fromJSON(props.globalOrigin);\r\n }\r\n\r\n /** @internal */\r\n public get is3d(): boolean { return false; }\r\n /** @internal */\r\n public override get asGeometricModel2d(): GeometricModel2dState { return this; }\r\n\r\n public override toJSON(): GeometricModel2dProps {\r\n const val = super.toJSON() as GeometricModel2dProps;\r\n val.globalOrigin = this.globalOrigin;\r\n return val;\r\n }\r\n}\r\n\r\n/** Represents the front-end state of a [GeometricModel3d]($backend).\r\n * @public\r\n */\r\nexport class GeometricModel3dState extends GeometricModelState {\r\n /** @internal */\r\n public static override get className() { return \"GeometricModel3d\"; }\r\n\r\n constructor(props: GeometricModel3dProps, iModel: IModelConnection, state?: GeometricModel3dState) {\r\n super(props, iModel, state);\r\n this.isNotSpatiallyLocated = JsonUtils.asBool(props.isNotSpatiallyLocated);\r\n this.isPlanProjection = JsonUtils.asBool(props.isPlanProjection);\r\n }\r\n\r\n /** @internal */\r\n public override toJSON(): GeometricModel3dProps {\r\n const val = super.toJSON() as GeometricModel3dProps;\r\n if (this.isNotSpatiallyLocated)\r\n val.isNotSpatiallyLocated = true;\r\n\r\n if (this.isPlanProjection)\r\n val.isPlanProjection = true;\r\n\r\n return val;\r\n }\r\n\r\n /** @internal */\r\n public get is3d(): boolean { return true; }\r\n /** @internal */\r\n public override get asGeometricModel3d(): GeometricModel3dState { return this; }\r\n\r\n /** If true, then the elements in this GeometricModel3dState are expected to be in an XY plane.\r\n * @note The associated ECProperty was added to the BisCore schema in version 1.0.8\r\n */\r\n public readonly isPlanProjection: boolean;\r\n\r\n /** If true, then the elements in this GeometricModel3dState are not in real-world coordinates and will not be in the spatial index.\r\n * @note The associated ECProperty was added to the BisCore schema in version 1.0.8\r\n */\r\n public readonly isNotSpatiallyLocated: boolean;\r\n\r\n /** If true, then the elements in this GeometricModel3dState are in real-world coordinates and will be in the spatial index. */\r\n public get isSpatiallyLocated(): boolean { return !this.isNotSpatiallyLocated; }\r\n}\r\n\r\n/** Represents the front-end state of a [SheetModel]($backend).\r\n * @public\r\n */\r\nexport class SheetModelState extends GeometricModel2dState {\r\n /** @internal */\r\n public static override get className() { return \"SheetModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [SpatialModel]($backend).\r\n * @public\r\n */\r\nexport class SpatialModelState extends GeometricModel3dState {\r\n /** If this is a reality model, provides access to a list of available spatial classifiers that can be applied to it. */\r\n public readonly classifiers?: SpatialClassifiers;\r\n\r\n /** @internal */\r\n public static override get className() { return \"SpatialModel\"; }\r\n /** @internal */\r\n public override get asSpatialModel(): SpatialModelState { return this; }\r\n\r\n public constructor(props: ModelProps, iModel: IModelConnection, state?: SpatialModelState) {\r\n super(props, iModel, state);\r\n if (this.isRealityModel)\r\n this.classifiers = new SpatialClassifiers(this.jsonProperties);\r\n }\r\n /** Return true if this is a reality model (represented by a 3d tile set). */\r\n public get isRealityModel(): boolean {\r\n return undefined !== this.jsonProperties.tilesetUrl;\r\n }\r\n}\r\n\r\n/** Represents the front-end state of a [PhysicalModel]($backend).\r\n * @public\r\n */\r\nexport class PhysicalModelState extends SpatialModelState {\r\n /** @internal */\r\n public static override get className() { return \"PhysicalModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [SpatialLocationModel]($backend).\r\n * @public\r\n */\r\nexport class SpatialLocationModelState extends SpatialModelState {\r\n /** @internal */\r\n public static override get className() { return \"SpatialLocationModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [DrawingModel]($backend).\r\n * @public\r\n */\r\nexport class DrawingModelState extends GeometricModel2dState {\r\n /** @internal */\r\n public static override get className() { return \"DrawingModel\"; }\r\n}\r\n\r\n/** Represents the front-end state of a [SectionDrawingModel]($backend).\r\n * @public\r\n */\r\nexport class SectionDrawingModelState extends DrawingModelState {\r\n /** @internal */\r\n public static override get className() { return \"SectionDrawingModel\"; }\r\n}\r\n"]}
|
package/lib/esm/NativeApp.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/** @packageDocumentation
|
|
2
2
|
* @module NativeApp
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import { ProgressCallback } from "
|
|
4
|
+
import { AsyncMethodsOf, BeEvent, GuidString, PromiseReturnType } from "@itwin/core-bentley";
|
|
5
|
+
import { BriefcaseDownloader, BriefcaseProps, IModelVersion, InternetConnectivityStatus, IpcSocketFrontend, LocalBriefcaseProps, NativeAppFunctions, StorageValue, SyncMode } from "@itwin/core-common";
|
|
6
|
+
import { ProgressCallback } from "./request/Request";
|
|
7
7
|
import { IpcAppOptions } from "./IpcApp";
|
|
8
8
|
/** Properties for specifying the BriefcaseId for downloading. May either specify a BriefcaseId directly (preferable) or, for
|
|
9
9
|
* backwards compatibility, a [SyncMode]($common). If [SyncMode.PullAndPush]($common) is supplied, a new briefcaseId will be acquired.
|
|
@@ -26,41 +26,6 @@ export declare type DownloadBriefcaseOptions = DownloadBriefcaseId & {
|
|
|
26
26
|
/** interval for calling progress function, in milliseconds */
|
|
27
27
|
progressInterval?: number;
|
|
28
28
|
};
|
|
29
|
-
/**
|
|
30
|
-
* Object to be set as `IModelApp.authorizationClient` for the frontend of NativeApps.
|
|
31
|
-
* Since NativeApps use the backend for all authorization, this class sends signIn/signOut requests to the backend
|
|
32
|
-
* and then listens for the `onAccessTokenChanged` event to cache the accessToken. The token is cached
|
|
33
|
-
* here on the frontend because it is used for every RPC operation, even when we're running as a NativeApp.
|
|
34
|
-
* We must therefore check for expiration and request refreshes as/when necessary.
|
|
35
|
-
* @public
|
|
36
|
-
*/
|
|
37
|
-
export declare class NativeAppAuthorization implements AuthorizationClient {
|
|
38
|
-
private _config?;
|
|
39
|
-
private _cachedToken;
|
|
40
|
-
private _refreshingToken;
|
|
41
|
-
protected _expireSafety: number;
|
|
42
|
-
readonly onAccessTokenChanged: BeEvent<(token: AccessToken) => void>;
|
|
43
|
-
get hasSignedIn(): boolean;
|
|
44
|
-
get isAuthorized(): boolean;
|
|
45
|
-
/** ctor for NativeAppAuthorization
|
|
46
|
-
* @param config if present, overrides backend supplied configuration. Generally not necessary, should be supplied
|
|
47
|
-
* in [NativeHostOpts]($backend)
|
|
48
|
-
*/
|
|
49
|
-
constructor(config?: NativeAppAuthorizationConfiguration);
|
|
50
|
-
/** Used to initialize the the backend authorization. Must be awaited before any other methods are called */
|
|
51
|
-
initialize(props: SessionProps): Promise<void>;
|
|
52
|
-
/** Called to start the sign-in process. Subscribe to onAccessTokenChanged to be notified when sign-in completes */
|
|
53
|
-
signIn(): Promise<void>;
|
|
54
|
-
/** Called to start the sign-out process. Subscribe to onAccessTokenChanged to be notified when sign-out completes */
|
|
55
|
-
signOut(): Promise<void>;
|
|
56
|
-
/** Returns a promise that resolves to the AccessToken if signed in.
|
|
57
|
-
* - The token is ensured to be valid *at least* for the buffer of time specified by the configuration.
|
|
58
|
-
* - The token is refreshed if it's possible and necessary.
|
|
59
|
-
* - This method must be called to refresh the token - the client does NOT automatically monitor for token expiry.
|
|
60
|
-
* - Getting or refreshing the token will trigger the [[onAccessTokenChanged]] event.
|
|
61
|
-
*/
|
|
62
|
-
getAccessToken(): Promise<AccessToken>;
|
|
63
|
-
}
|
|
64
29
|
/**
|
|
65
30
|
* Options for [[NativeApp.startup]]
|
|
66
31
|
* @public
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NativeApp.d.ts","sourceRoot":"","sources":["../../src/NativeApp.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"NativeApp.d.ts","sourceRoot":"","sources":["../../src/NativeApp.ts"],"names":[],"mappings":"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"}
|
package/lib/esm/NativeApp.js
CHANGED
|
@@ -8,9 +8,8 @@
|
|
|
8
8
|
var _a;
|
|
9
9
|
import { BeEvent, Logger } from "@itwin/core-bentley";
|
|
10
10
|
import { IModelVersion, InternetConnectivityStatus, nativeAppChannel, nativeAppNotify, OverriddenBy, SyncMode, } from "@itwin/core-common";
|
|
11
|
-
import { RequestGlobalOptions } from "
|
|
11
|
+
import { RequestGlobalOptions } from "./request/Request";
|
|
12
12
|
import { FrontendLoggerCategory } from "./FrontendLoggerCategory";
|
|
13
|
-
import { IModelApp } from "./IModelApp";
|
|
14
13
|
import { IpcApp, NotificationHandler } from "./IpcApp";
|
|
15
14
|
import { NativeAppLogger } from "./NativeAppLogger";
|
|
16
15
|
/** NativeApp notifications from backend */
|
|
@@ -20,67 +19,6 @@ class NativeAppNotifyHandler extends NotificationHandler {
|
|
|
20
19
|
Logger.logInfo(FrontendLoggerCategory.NativeApp, "Internet connectivity changed");
|
|
21
20
|
NativeApp.onInternetConnectivityChanged.raiseEvent(status);
|
|
22
21
|
}
|
|
23
|
-
notifyAccessTokenChanged(accessToken) {
|
|
24
|
-
const client = IModelApp.authorizationClient;
|
|
25
|
-
client === null || client === void 0 ? void 0 : client.onAccessTokenChanged.raiseEvent(accessToken);
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* Object to be set as `IModelApp.authorizationClient` for the frontend of NativeApps.
|
|
30
|
-
* Since NativeApps use the backend for all authorization, this class sends signIn/signOut requests to the backend
|
|
31
|
-
* and then listens for the `onAccessTokenChanged` event to cache the accessToken. The token is cached
|
|
32
|
-
* here on the frontend because it is used for every RPC operation, even when we're running as a NativeApp.
|
|
33
|
-
* We must therefore check for expiration and request refreshes as/when necessary.
|
|
34
|
-
* @public
|
|
35
|
-
*/
|
|
36
|
-
export class NativeAppAuthorization {
|
|
37
|
-
/** ctor for NativeAppAuthorization
|
|
38
|
-
* @param config if present, overrides backend supplied configuration. Generally not necessary, should be supplied
|
|
39
|
-
* in [NativeHostOpts]($backend)
|
|
40
|
-
*/
|
|
41
|
-
constructor(config) {
|
|
42
|
-
this._cachedToken = "";
|
|
43
|
-
this._refreshingToken = false;
|
|
44
|
-
this._expireSafety = 60 * 10; // seconds before real expiration time so token will be refreshed before it expires
|
|
45
|
-
this.onAccessTokenChanged = new BeEvent();
|
|
46
|
-
this._config = config;
|
|
47
|
-
this.onAccessTokenChanged.addListener((token) => this._cachedToken = token);
|
|
48
|
-
}
|
|
49
|
-
get hasSignedIn() { return this._cachedToken !== ""; }
|
|
50
|
-
get isAuthorized() {
|
|
51
|
-
return this.hasSignedIn;
|
|
52
|
-
}
|
|
53
|
-
/** Used to initialize the the backend authorization. Must be awaited before any other methods are called */
|
|
54
|
-
async initialize(props) {
|
|
55
|
-
this._expireSafety = await NativeApp.callNativeHost("initializeAuth", props, this._config);
|
|
56
|
-
}
|
|
57
|
-
/** Called to start the sign-in process. Subscribe to onAccessTokenChanged to be notified when sign-in completes */
|
|
58
|
-
async signIn() {
|
|
59
|
-
return NativeApp.callNativeHost("signIn");
|
|
60
|
-
}
|
|
61
|
-
/** Called to start the sign-out process. Subscribe to onAccessTokenChanged to be notified when sign-out completes */
|
|
62
|
-
async signOut() {
|
|
63
|
-
return NativeApp.callNativeHost("signOut");
|
|
64
|
-
}
|
|
65
|
-
/** Returns a promise that resolves to the AccessToken if signed in.
|
|
66
|
-
* - The token is ensured to be valid *at least* for the buffer of time specified by the configuration.
|
|
67
|
-
* - The token is refreshed if it's possible and necessary.
|
|
68
|
-
* - This method must be called to refresh the token - the client does NOT automatically monitor for token expiry.
|
|
69
|
-
* - Getting or refreshing the token will trigger the [[onAccessTokenChanged]] event.
|
|
70
|
-
*/
|
|
71
|
-
async getAccessToken() {
|
|
72
|
-
// if we have a valid token, return it. Otherwise call backend to refresh the token.
|
|
73
|
-
if (!this.isAuthorized) {
|
|
74
|
-
if (this._refreshingToken) {
|
|
75
|
-
return Promise.reject(); // short-circuits any recursive use of this function
|
|
76
|
-
}
|
|
77
|
-
this._refreshingToken = true;
|
|
78
|
-
this._cachedToken = (await NativeApp.callNativeHost("getAccessToken"));
|
|
79
|
-
this._refreshingToken = false;
|
|
80
|
-
}
|
|
81
|
-
// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion
|
|
82
|
-
return this._cachedToken;
|
|
83
|
-
}
|
|
84
22
|
}
|
|
85
23
|
/**
|
|
86
24
|
* The frontend of a native application
|
|
@@ -132,12 +70,6 @@ export class NativeApp {
|
|
|
132
70
|
RequestGlobalOptions.online = window.navigator.onLine;
|
|
133
71
|
await this.setConnectivity(OverriddenBy.Browser, window.navigator.onLine ? InternetConnectivityStatus.Online : InternetConnectivityStatus.Offline);
|
|
134
72
|
}
|
|
135
|
-
const auth = new NativeAppAuthorization();
|
|
136
|
-
IModelApp.authorizationClient = auth;
|
|
137
|
-
const connStatus = await NativeApp.checkInternetConnectivity();
|
|
138
|
-
if (connStatus === InternetConnectivityStatus.Online) {
|
|
139
|
-
await auth.initialize({ applicationId: IModelApp.applicationId, applicationVersion: IModelApp.applicationVersion, sessionId: IModelApp.sessionId });
|
|
140
|
-
}
|
|
141
73
|
}
|
|
142
74
|
/** @internal */
|
|
143
75
|
static async shutdown() {
|
package/lib/esm/NativeApp.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NativeApp.js","sourceRoot":"","sources":["../../src/NativeApp.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 NativeApp\r\n */\r\n\r\nimport { AccessToken, AsyncMethodsOf, BeEvent, GuidString, Logger, PromiseReturnType } from \"@itwin/core-bentley\";\r\nimport {\r\n AuthorizationClient, BriefcaseDownloader, BriefcaseProps, IModelVersion, InternetConnectivityStatus, IpcSocketFrontend, LocalBriefcaseProps,\r\n NativeAppAuthorizationConfiguration, nativeAppChannel, NativeAppFunctions, NativeAppNotifications, nativeAppNotify, OverriddenBy,\r\n RequestNewBriefcaseProps, SessionProps, StorageValue, SyncMode,\r\n} from \"@itwin/core-common\";\r\nimport { ProgressCallback, RequestGlobalOptions } from \"@bentley/itwin-client\";\r\nimport { FrontendLoggerCategory } from \"./FrontendLoggerCategory\";\r\nimport { IModelApp } from \"./IModelApp\";\r\nimport { IpcApp, IpcAppOptions, NotificationHandler } from \"./IpcApp\";\r\nimport { NativeAppLogger } from \"./NativeAppLogger\";\r\n\r\n/** Properties for specifying the BriefcaseId for downloading. May either specify a BriefcaseId directly (preferable) or, for\r\n * backwards compatibility, a [SyncMode]($common). If [SyncMode.PullAndPush]($common) is supplied, a new briefcaseId will be acquired.\r\n * @public\r\n */\r\nexport type DownloadBriefcaseId =\r\n { syncMode?: SyncMode, briefcaseId?: never } |\r\n { briefcaseId: number, syncMode?: never };\r\n\r\n/**\r\n* Options to download a briefcase\r\n* @public\r\n*/\r\nexport type DownloadBriefcaseOptions = DownloadBriefcaseId & {\r\n /** the full path for the briefcase file */\r\n fileName?: string;\r\n /** interval for calling progress function, in milliseconds */\r\n progressInterval?: number;\r\n};\r\n\r\n/** NativeApp notifications from backend */\r\nclass NativeAppNotifyHandler extends NotificationHandler implements NativeAppNotifications {\r\n public get channelName() { return nativeAppNotify; }\r\n public notifyInternetConnectivityChanged(status: InternetConnectivityStatus) {\r\n Logger.logInfo(FrontendLoggerCategory.NativeApp, \"Internet connectivity changed\");\r\n NativeApp.onInternetConnectivityChanged.raiseEvent(status);\r\n }\r\n public notifyAccessTokenChanged(accessToken: AccessToken) {\r\n const client = (IModelApp.authorizationClient as NativeAppAuthorization);\r\n client?.onAccessTokenChanged.raiseEvent(accessToken);\r\n }\r\n}\r\n\r\n/**\r\n * Object to be set as `IModelApp.authorizationClient` for the frontend of NativeApps.\r\n * Since NativeApps use the backend for all authorization, this class sends signIn/signOut requests to the backend\r\n * and then listens for the `onAccessTokenChanged` event to cache the accessToken. The token is cached\r\n * here on the frontend because it is used for every RPC operation, even when we're running as a NativeApp.\r\n * We must therefore check for expiration and request refreshes as/when necessary.\r\n * @public\r\n */\r\nexport class NativeAppAuthorization implements AuthorizationClient {\r\n private _config?: NativeAppAuthorizationConfiguration;\r\n private _cachedToken: AccessToken = \"\";\r\n private _refreshingToken = false;\r\n protected _expireSafety = 60 * 10; // seconds before real expiration time so token will be refreshed before it expires\r\n public readonly onAccessTokenChanged = new BeEvent<(token: AccessToken) => void>();\r\n public get hasSignedIn() { return this._cachedToken !== \"\"; }\r\n public get isAuthorized(): boolean {\r\n return this.hasSignedIn;\r\n }\r\n\r\n /** ctor for NativeAppAuthorization\r\n * @param config if present, overrides backend supplied configuration. Generally not necessary, should be supplied\r\n * in [NativeHostOpts]($backend)\r\n */\r\n public constructor(config?: NativeAppAuthorizationConfiguration) {\r\n this._config = config;\r\n this.onAccessTokenChanged.addListener((token: AccessToken) => this._cachedToken = token);\r\n }\r\n\r\n /** Used to initialize the the backend authorization. Must be awaited before any other methods are called */\r\n public async initialize(props: SessionProps): Promise<void> {\r\n this._expireSafety = await NativeApp.callNativeHost(\"initializeAuth\", props, this._config);\r\n }\r\n\r\n /** Called to start the sign-in process. Subscribe to onAccessTokenChanged to be notified when sign-in completes */\r\n public async signIn(): Promise<void> {\r\n return NativeApp.callNativeHost(\"signIn\");\r\n }\r\n\r\n /** Called to start the sign-out process. Subscribe to onAccessTokenChanged to be notified when sign-out completes */\r\n public async signOut(): Promise<void> {\r\n return NativeApp.callNativeHost(\"signOut\");\r\n }\r\n\r\n /** Returns a promise that resolves to the AccessToken if signed in.\r\n * - The token is ensured to be valid *at least* for the buffer of time specified by the configuration.\r\n * - The token is refreshed if it's possible and necessary.\r\n * - This method must be called to refresh the token - the client does NOT automatically monitor for token expiry.\r\n * - Getting or refreshing the token will trigger the [[onAccessTokenChanged]] event.\r\n */\r\n public async getAccessToken(): Promise<AccessToken> {\r\n // if we have a valid token, return it. Otherwise call backend to refresh the token.\r\n if (!this.isAuthorized) {\r\n if (this._refreshingToken) {\r\n return Promise.reject(); // short-circuits any recursive use of this function\r\n }\r\n\r\n this._refreshingToken = true;\r\n this._cachedToken = (await NativeApp.callNativeHost(\"getAccessToken\"));\r\n this._refreshingToken = false;\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\r\n return this._cachedToken!;\r\n }\r\n}\r\n\r\n/**\r\n * Options for [[NativeApp.startup]]\r\n * @public\r\n */\r\nexport interface NativeAppOpts extends IpcAppOptions {\r\n nativeApp?: {};\r\n}\r\n\r\n/**\r\n * The frontend of a native application\r\n * @see [Native Applications]($docs/learning/NativeApps.md)\r\n * @public\r\n */\r\nexport class NativeApp {\r\n public static async callNativeHost<T extends AsyncMethodsOf<NativeAppFunctions>>(methodName: T, ...args: Parameters<NativeAppFunctions[T]>) {\r\n return IpcApp.callIpcChannel(nativeAppChannel, methodName, ...args) as PromiseReturnType<NativeAppFunctions[T]>;\r\n }\r\n\r\n private static _storages = new Map<string, Storage>();\r\n private static _onOnline = async () => {\r\n await NativeApp.setConnectivity(OverriddenBy.Browser, InternetConnectivityStatus.Online);\r\n };\r\n private static _onOffline = async () => {\r\n await NativeApp.setConnectivity(OverriddenBy.Browser, InternetConnectivityStatus.Offline);\r\n };\r\n private static async setConnectivity(by: OverriddenBy, status: InternetConnectivityStatus) {\r\n RequestGlobalOptions.online = (status === InternetConnectivityStatus.Online);\r\n await this.callNativeHost(\"overrideInternetConnectivity\", by, status);\r\n }\r\n private static hookBrowserConnectivityEvents() {\r\n if (typeof window === \"object\" && window.ononline && window.onoffline) {\r\n window.addEventListener(\"online\", this._onOnline);\r\n window.addEventListener(\"offline\", this._onOffline);\r\n }\r\n }\r\n private static unhookBrowserConnectivityEvents() {\r\n if (typeof window === \"object\" && window.ononline && window.onoffline) {\r\n window.removeEventListener(\"online\", this._onOnline);\r\n window.removeEventListener(\"offline\", this._onOffline);\r\n }\r\n }\r\n /** event called when internet connectivity changes, if known */\r\n public static onInternetConnectivityChanged = new BeEvent<(status: InternetConnectivityStatus) => void>();\r\n\r\n /** determine whether the app currently has internet connectivity, if known */\r\n public static async checkInternetConnectivity(): Promise<InternetConnectivityStatus> {\r\n return this.callNativeHost(\"checkInternetConnectivity\");\r\n }\r\n /** @internal */\r\n public static async overrideInternetConnectivity(status: InternetConnectivityStatus): Promise<void> {\r\n return this.callNativeHost(\"overrideInternetConnectivity\", OverriddenBy.User, status);\r\n }\r\n private static _isValid = false;\r\n public static get isValid(): boolean { return this._isValid; }\r\n\r\n /**\r\n * This is called by either ElectronApp.startup or MobileApp.startup - it should not be called directly\r\n * @internal\r\n */\r\n public static async startup(ipc: IpcSocketFrontend, opts?: NativeAppOpts) {\r\n await IpcApp.startup(ipc, opts);\r\n if (this._isValid)\r\n return;\r\n this._isValid = true;\r\n\r\n NativeAppNotifyHandler.register(); // receives notifications from backend\r\n NativeApp.hookBrowserConnectivityEvents();\r\n\r\n // initialize current online state.\r\n if (window.navigator.onLine) {\r\n RequestGlobalOptions.online = window.navigator.onLine;\r\n await this.setConnectivity(OverriddenBy.Browser, window.navigator.onLine ? InternetConnectivityStatus.Online : InternetConnectivityStatus.Offline);\r\n }\r\n\r\n const auth = new NativeAppAuthorization();\r\n IModelApp.authorizationClient = auth;\r\n const connStatus = await NativeApp.checkInternetConnectivity();\r\n if (connStatus === InternetConnectivityStatus.Online) {\r\n await auth.initialize({ applicationId: IModelApp.applicationId, applicationVersion: IModelApp.applicationVersion, sessionId: IModelApp.sessionId });\r\n }\r\n }\r\n\r\n /** @internal */\r\n public static async shutdown() {\r\n NativeApp.unhookBrowserConnectivityEvents();\r\n await NativeAppLogger.flush();\r\n await IpcApp.shutdown();\r\n this._isValid = false;\r\n }\r\n\r\n public static async requestDownloadBriefcase(iTwinId: string, iModelId: string, downloadOptions: DownloadBriefcaseOptions,\r\n asOf: IModelVersion = IModelVersion.latest(), progress?: ProgressCallback): Promise<BriefcaseDownloader> {\r\n\r\n let stopProgressEvents = () => { };\r\n if (progress !== undefined) {\r\n stopProgressEvents = IpcApp.addListener(`nativeApp.progress-${iModelId}`, (_evt: Event, data: { loaded: number, total: number }) => {\r\n progress(data);\r\n });\r\n }\r\n\r\n const briefcaseId = (undefined !== downloadOptions.briefcaseId) ? downloadOptions.briefcaseId :\r\n (downloadOptions.syncMode === SyncMode.PullOnly ? 0 : await this.callNativeHost(\"acquireNewBriefcaseId\", iModelId));\r\n\r\n const fileName = downloadOptions.fileName ?? await this.getBriefcaseFileName({ briefcaseId, iModelId });\r\n const requestProps: RequestNewBriefcaseProps = { iModelId, briefcaseId, iTwinId, asOf: asOf.toJSON(), fileName };\r\n\r\n const doDownload = async (): Promise<void> => {\r\n try {\r\n await this.callNativeHost(\"downloadBriefcase\", requestProps, progress !== undefined, downloadOptions.progressInterval);\r\n } finally {\r\n stopProgressEvents();\r\n }\r\n };\r\n\r\n const requestCancel = async (): Promise<boolean> => {\r\n const status = await this.callNativeHost(\"requestCancelDownloadBriefcase\", fileName);\r\n if (status)\r\n stopProgressEvents();\r\n return status;\r\n };\r\n\r\n return { briefcaseId, fileName, downloadPromise: doDownload(), requestCancel };\r\n }\r\n\r\n /** Get the full path filename for a briefcase within the briefcase cache */\r\n public static async getBriefcaseFileName(props: BriefcaseProps): Promise<string> {\r\n return this.callNativeHost(\"getBriefcaseFileName\", props);\r\n }\r\n\r\n /** Delete an existing briefcase\r\n * @param fileName the briefcase fileName\r\n */\r\n public static async deleteBriefcase(fileName: string): Promise<void> {\r\n await this.callNativeHost(\"deleteBriefcaseFiles\", fileName);\r\n }\r\n\r\n /** Get a list of all briefcase files held in the local briefcase cache directory */\r\n public static async getCachedBriefcases(iModelId?: GuidString): Promise<LocalBriefcaseProps[]> {\r\n return this.callNativeHost(\"getCachedBriefcases\", iModelId);\r\n }\r\n\r\n /**\r\n * Open a [[Storage]]. Creates a new Storage with that name if it does not already exist.\r\n * @param name Should be a local filename without an extension.\r\n * @returns a Promise for the [[Storage]].\r\n */\r\n public static async openStorage(name: string): Promise<Storage> {\r\n if (this._storages.has(name))\r\n return this._storages.get(name)!;\r\n\r\n const storage = new Storage(await this.callNativeHost(\"storageMgrOpen\", name));\r\n this._storages.set(storage.id, storage);\r\n return storage;\r\n }\r\n\r\n /**\r\n * Close a Storage and optionally delete it.\r\n * @param storage normally not call directly instead use Storage.close()\r\n * @param deleteStorage if true, delete the storage from disk after closing it.\r\n */\r\n public static async closeStorage(storage: Storage, deleteStorage: boolean = false): Promise<void> {\r\n if (!this._storages.has(storage.id))\r\n throw new Error(`Storage [Id=${storage.id}] not open`);\r\n\r\n await this.callNativeHost(\"storageMgrClose\", storage.id, deleteStorage);\r\n this._storages.delete(storage.id);\r\n }\r\n\r\n /** Get the list of existing Storages on the local disk. */\r\n public static async getStorageNames(): Promise<string[]> {\r\n return NativeApp.callNativeHost(\"storageMgrNames\");\r\n }\r\n}\r\n\r\n/**\r\n * A local disk-based cache for key value pairs for NativeApps.\r\n * @note This should be used only for local caching, since its not guaranteed to exist permanently.\r\n * @public\r\n */\r\nexport class Storage {\r\n constructor(public readonly id: string) { }\r\n\r\n /** get the type of a value for a key, or undefined if not present. */\r\n public async getValueType(key: string): Promise<\"number\" | \"string\" | \"boolean\" | \"Uint8Array\" | \"null\" | undefined> {\r\n return NativeApp.callNativeHost(\"storageGetValueType\", this.id, key);\r\n }\r\n\r\n /** Get the value for a key */\r\n public async getData(key: string): Promise<StorageValue> {\r\n return NativeApp.callNativeHost(\"storageGet\", this.id, key);\r\n }\r\n\r\n /** Set value for a key */\r\n public async setData(key: string, value: StorageValue): Promise<void> {\r\n return NativeApp.callNativeHost(\"storageSet\", this.id, key, value);\r\n }\r\n\r\n /**\r\n * Return an array of all keys in this Storage.\r\n * @note This can be expensive, depending on the number of keys present.\r\n */\r\n public async getKeys(): Promise<string[]> {\r\n return NativeApp.callNativeHost(\"storageKeys\", this.id);\r\n }\r\n\r\n /** Remove a key and its data. */\r\n public async removeData(key: string): Promise<void> {\r\n return NativeApp.callNativeHost(\"storageRemove\", this.id, key);\r\n }\r\n\r\n /** Remove all keys and their data. */\r\n public async removeAll(): Promise<void> {\r\n return NativeApp.callNativeHost(\"storageRemoveAll\", this.id);\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"NativeApp.js","sourceRoot":"","sources":["../../src/NativeApp.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;;AAEH,OAAO,EAAkB,OAAO,EAAc,MAAM,EAAqB,MAAM,qBAAqB,CAAC;AACrG,OAAO,EACgC,aAAa,EAAE,0BAA0B,EAC9E,gBAAgB,EAA8C,eAAe,EAAE,YAAY,EACnD,QAAQ,GACjD,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAoB,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,MAAM,EAAiB,mBAAmB,EAAE,MAAM,UAAU,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAqBpD,2CAA2C;AAC3C,MAAM,sBAAuB,SAAQ,mBAAmB;IACtD,IAAW,WAAW,KAAK,OAAO,eAAe,CAAC,CAAC,CAAC;IAC7C,iCAAiC,CAAC,MAAkC;QACzE,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,SAAS,EAAE,+BAA+B,CAAC,CAAC;QAClF,SAAS,CAAC,6BAA6B,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAC7D,CAAC;CACF;AAUD;;;;GAIG;AACH,MAAM,OAAO,SAAS;IACb,MAAM,CAAC,KAAK,CAAC,cAAc,CAA+C,UAAa,EAAE,GAAG,IAAuC;QACxI,OAAO,MAAM,CAAC,cAAc,CAAC,gBAAgB,EAAE,UAAU,EAAE,GAAG,IAAI,CAA6C,CAAC;IAClH,CAAC;IASO,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,EAAgB,EAAE,MAAkC;QACvF,oBAAoB,CAAC,MAAM,GAAG,CAAC,MAAM,KAAK,0BAA0B,CAAC,MAAM,CAAC,CAAC;QAC7E,MAAM,IAAI,CAAC,cAAc,CAAC,8BAA8B,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;IACxE,CAAC;IACO,MAAM,CAAC,6BAA6B;QAC1C,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,SAAS,EAAE;YACrE,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YAClD,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;SACrD;IACH,CAAC;IACO,MAAM,CAAC,+BAA+B;QAC5C,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,SAAS,EAAE;YACrE,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YACrD,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;SACxD;IACH,CAAC;IAID,8EAA8E;IACvE,MAAM,CAAC,KAAK,CAAC,yBAAyB;QAC3C,OAAO,IAAI,CAAC,cAAc,CAAC,2BAA2B,CAAC,CAAC;IAC1D,CAAC;IACD,gBAAgB;IACT,MAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,MAAkC;QACjF,OAAO,IAAI,CAAC,cAAc,CAAC,8BAA8B,EAAE,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACxF,CAAC;IAEM,MAAM,KAAK,OAAO,KAAc,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE9D;;;OAGG;IACI,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,GAAsB,EAAE,IAAoB;QACtE,MAAM,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAChC,IAAI,IAAI,CAAC,QAAQ;YACf,OAAO;QACT,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QAErB,sBAAsB,CAAC,QAAQ,EAAE,CAAC,CAAC,sCAAsC;QACzE,SAAS,CAAC,6BAA6B,EAAE,CAAC;QAE1C,mCAAmC;QACnC,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE;YAC3B,oBAAoB,CAAC,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;YACtD,MAAM,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC;SACpJ;IACH,CAAC;IAED,gBAAgB;IACT,MAAM,CAAC,KAAK,CAAC,QAAQ;QAC1B,SAAS,CAAC,+BAA+B,EAAE,CAAC;QAC5C,MAAM,eAAe,CAAC,KAAK,EAAE,CAAC;QAC9B,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;IACxB,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,OAAe,EAAE,QAAgB,EAAE,eAAyC,EACvH,OAAsB,aAAa,CAAC,MAAM,EAAE,EAAE,QAA2B;;QAEzE,IAAI,kBAAkB,GAAG,GAAG,EAAE,GAAG,CAAC,CAAC;QACnC,IAAI,QAAQ,KAAK,SAAS,EAAE;YAC1B,kBAAkB,GAAG,MAAM,CAAC,WAAW,CAAC,sBAAsB,QAAQ,EAAE,EAAE,CAAC,IAAW,EAAE,IAAuC,EAAE,EAAE;gBACjI,QAAQ,CAAC,IAAI,CAAC,CAAC;YACjB,CAAC,CAAC,CAAC;SACJ;QAED,MAAM,WAAW,GAAG,CAAC,SAAS,KAAK,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;YAC7F,CAAC,eAAe,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CAAC,CAAC;QAEtH,MAAM,QAAQ,GAAG,MAAA,eAAe,CAAC,QAAQ,mCAAI,MAAM,IAAI,CAAC,oBAAoB,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC;QACxG,MAAM,YAAY,GAA6B,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC;QAEjH,MAAM,UAAU,GAAG,KAAK,IAAmB,EAAE;YAC3C,IAAI;gBACF,MAAM,IAAI,CAAC,cAAc,CAAC,mBAAmB,EAAE,YAAY,EAAE,QAAQ,KAAK,SAAS,EAAE,eAAe,CAAC,gBAAgB,CAAC,CAAC;aACxH;oBAAS;gBACR,kBAAkB,EAAE,CAAC;aACtB;QACH,CAAC,CAAC;QAEF,MAAM,aAAa,GAAG,KAAK,IAAsB,EAAE;YACjD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,gCAAgC,EAAE,QAAQ,CAAC,CAAC;YACrF,IAAI,MAAM;gBACR,kBAAkB,EAAE,CAAC;YACvB,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC;QAEF,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,eAAe,EAAE,UAAU,EAAE,EAAE,aAAa,EAAE,CAAC;IACjF,CAAC;IAED,4EAA4E;IACrE,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,KAAqB;QAC5D,OAAO,IAAI,CAAC,cAAc,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC;IAC5D,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,QAAgB;QAClD,MAAM,IAAI,CAAC,cAAc,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CAAC;IAC9D,CAAC;IAED,qFAAqF;IAC9E,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,QAAqB;QAC3D,OAAO,IAAI,CAAC,cAAc,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;IAC9D,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAY;QAC1C,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC;YAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC;QAEnC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC,CAAC;QAC/E,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QACxC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,OAAgB,EAAE,gBAAyB,KAAK;QAC/E,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,eAAe,OAAO,CAAC,EAAE,YAAY,CAAC,CAAC;QAEzD,MAAM,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,OAAO,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;QACxE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC;IAED,2DAA2D;IACpD,MAAM,CAAC,KAAK,CAAC,eAAe;QACjC,OAAO,SAAS,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;IACrD,CAAC;;;AAlJc,mBAAS,GAAG,IAAI,GAAG,EAAoB,CAAA;AACvC,mBAAS,GAAG,KAAK,IAAI,EAAE;IACpC,MAAM,SAAS,CAAC,eAAe,CAAC,YAAY,CAAC,OAAO,EAAE,0BAA0B,CAAC,MAAM,CAAC,CAAC;AAC3F,CAAE,CAAA;AACa,oBAAU,GAAG,KAAK,IAAI,EAAE;IACrC,MAAM,SAAS,CAAC,eAAe,CAAC,YAAY,CAAC,OAAO,EAAE,0BAA0B,CAAC,OAAO,CAAC,CAAC;AAC5F,CAAE,CAAA;AAiBF,gEAAgE;AAClD,uCAA6B,GAAG,IAAI,OAAO,EAAiD,CAAA;AAU3F,kBAAQ,GAAG,KAAM,CAAA;AAmHlC;;;;GAIG;AACH,MAAM,OAAO,OAAO;IAClB,YAA4B,EAAU;QAAV,OAAE,GAAF,EAAE,CAAQ;IAAI,CAAC;IAE3C,sEAAsE;IAC/D,KAAK,CAAC,YAAY,CAAC,GAAW;QACnC,OAAO,SAAS,CAAC,cAAc,CAAC,qBAAqB,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IACvE,CAAC;IAED,8BAA8B;IACvB,KAAK,CAAC,OAAO,CAAC,GAAW;QAC9B,OAAO,SAAS,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IAC9D,CAAC;IAED,0BAA0B;IACnB,KAAK,CAAC,OAAO,CAAC,GAAW,EAAE,KAAmB;QACnD,OAAO,SAAS,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IACrE,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,OAAO;QAClB,OAAO,SAAS,CAAC,cAAc,CAAC,aAAa,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED,iCAAiC;IAC1B,KAAK,CAAC,UAAU,CAAC,GAAW;QACjC,OAAO,SAAS,CAAC,cAAc,CAAC,eAAe,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IACjE,CAAC;IAED,sCAAsC;IAC/B,KAAK,CAAC,SAAS;QACpB,OAAO,SAAS,CAAC,cAAc,CAAC,kBAAkB,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/D,CAAC;CACF","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 NativeApp\r\n */\r\n\r\nimport { AsyncMethodsOf, BeEvent, GuidString, Logger, PromiseReturnType } from \"@itwin/core-bentley\";\r\nimport {\r\n BriefcaseDownloader, BriefcaseProps, IModelVersion, InternetConnectivityStatus, IpcSocketFrontend, LocalBriefcaseProps,\r\n nativeAppChannel, NativeAppFunctions, NativeAppNotifications, nativeAppNotify, OverriddenBy,\r\n RequestNewBriefcaseProps, StorageValue, SyncMode,\r\n} from \"@itwin/core-common\";\r\nimport { ProgressCallback, RequestGlobalOptions } from \"./request/Request\";\r\nimport { FrontendLoggerCategory } from \"./FrontendLoggerCategory\";\r\nimport { IpcApp, IpcAppOptions, NotificationHandler } from \"./IpcApp\";\r\nimport { NativeAppLogger } from \"./NativeAppLogger\";\r\n\r\n/** Properties for specifying the BriefcaseId for downloading. May either specify a BriefcaseId directly (preferable) or, for\r\n * backwards compatibility, a [SyncMode]($common). If [SyncMode.PullAndPush]($common) is supplied, a new briefcaseId will be acquired.\r\n * @public\r\n */\r\nexport type DownloadBriefcaseId =\r\n { syncMode?: SyncMode, briefcaseId?: never } |\r\n { briefcaseId: number, syncMode?: never };\r\n\r\n/**\r\n* Options to download a briefcase\r\n* @public\r\n*/\r\nexport type DownloadBriefcaseOptions = DownloadBriefcaseId & {\r\n /** the full path for the briefcase file */\r\n fileName?: string;\r\n /** interval for calling progress function, in milliseconds */\r\n progressInterval?: number;\r\n};\r\n\r\n/** NativeApp notifications from backend */\r\nclass NativeAppNotifyHandler extends NotificationHandler implements NativeAppNotifications {\r\n public get channelName() { return nativeAppNotify; }\r\n public notifyInternetConnectivityChanged(status: InternetConnectivityStatus) {\r\n Logger.logInfo(FrontendLoggerCategory.NativeApp, \"Internet connectivity changed\");\r\n NativeApp.onInternetConnectivityChanged.raiseEvent(status);\r\n }\r\n}\r\n\r\n/**\r\n * Options for [[NativeApp.startup]]\r\n * @public\r\n */\r\nexport interface NativeAppOpts extends IpcAppOptions {\r\n nativeApp?: {};\r\n}\r\n\r\n/**\r\n * The frontend of a native application\r\n * @see [Native Applications]($docs/learning/NativeApps.md)\r\n * @public\r\n */\r\nexport class NativeApp {\r\n public static async callNativeHost<T extends AsyncMethodsOf<NativeAppFunctions>>(methodName: T, ...args: Parameters<NativeAppFunctions[T]>) {\r\n return IpcApp.callIpcChannel(nativeAppChannel, methodName, ...args) as PromiseReturnType<NativeAppFunctions[T]>;\r\n }\r\n\r\n private static _storages = new Map<string, Storage>();\r\n private static _onOnline = async () => {\r\n await NativeApp.setConnectivity(OverriddenBy.Browser, InternetConnectivityStatus.Online);\r\n };\r\n private static _onOffline = async () => {\r\n await NativeApp.setConnectivity(OverriddenBy.Browser, InternetConnectivityStatus.Offline);\r\n };\r\n private static async setConnectivity(by: OverriddenBy, status: InternetConnectivityStatus) {\r\n RequestGlobalOptions.online = (status === InternetConnectivityStatus.Online);\r\n await this.callNativeHost(\"overrideInternetConnectivity\", by, status);\r\n }\r\n private static hookBrowserConnectivityEvents() {\r\n if (typeof window === \"object\" && window.ononline && window.onoffline) {\r\n window.addEventListener(\"online\", this._onOnline);\r\n window.addEventListener(\"offline\", this._onOffline);\r\n }\r\n }\r\n private static unhookBrowserConnectivityEvents() {\r\n if (typeof window === \"object\" && window.ononline && window.onoffline) {\r\n window.removeEventListener(\"online\", this._onOnline);\r\n window.removeEventListener(\"offline\", this._onOffline);\r\n }\r\n }\r\n /** event called when internet connectivity changes, if known */\r\n public static onInternetConnectivityChanged = new BeEvent<(status: InternetConnectivityStatus) => void>();\r\n\r\n /** determine whether the app currently has internet connectivity, if known */\r\n public static async checkInternetConnectivity(): Promise<InternetConnectivityStatus> {\r\n return this.callNativeHost(\"checkInternetConnectivity\");\r\n }\r\n /** @internal */\r\n public static async overrideInternetConnectivity(status: InternetConnectivityStatus): Promise<void> {\r\n return this.callNativeHost(\"overrideInternetConnectivity\", OverriddenBy.User, status);\r\n }\r\n private static _isValid = false;\r\n public static get isValid(): boolean { return this._isValid; }\r\n\r\n /**\r\n * This is called by either ElectronApp.startup or MobileApp.startup - it should not be called directly\r\n * @internal\r\n */\r\n public static async startup(ipc: IpcSocketFrontend, opts?: NativeAppOpts) {\r\n await IpcApp.startup(ipc, opts);\r\n if (this._isValid)\r\n return;\r\n this._isValid = true;\r\n\r\n NativeAppNotifyHandler.register(); // receives notifications from backend\r\n NativeApp.hookBrowserConnectivityEvents();\r\n\r\n // initialize current online state.\r\n if (window.navigator.onLine) {\r\n RequestGlobalOptions.online = window.navigator.onLine;\r\n await this.setConnectivity(OverriddenBy.Browser, window.navigator.onLine ? InternetConnectivityStatus.Online : InternetConnectivityStatus.Offline);\r\n }\r\n }\r\n\r\n /** @internal */\r\n public static async shutdown() {\r\n NativeApp.unhookBrowserConnectivityEvents();\r\n await NativeAppLogger.flush();\r\n await IpcApp.shutdown();\r\n this._isValid = false;\r\n }\r\n\r\n public static async requestDownloadBriefcase(iTwinId: string, iModelId: string, downloadOptions: DownloadBriefcaseOptions,\r\n asOf: IModelVersion = IModelVersion.latest(), progress?: ProgressCallback): Promise<BriefcaseDownloader> {\r\n\r\n let stopProgressEvents = () => { };\r\n if (progress !== undefined) {\r\n stopProgressEvents = IpcApp.addListener(`nativeApp.progress-${iModelId}`, (_evt: Event, data: { loaded: number, total: number }) => {\r\n progress(data);\r\n });\r\n }\r\n\r\n const briefcaseId = (undefined !== downloadOptions.briefcaseId) ? downloadOptions.briefcaseId :\r\n (downloadOptions.syncMode === SyncMode.PullOnly ? 0 : await this.callNativeHost(\"acquireNewBriefcaseId\", iModelId));\r\n\r\n const fileName = downloadOptions.fileName ?? await this.getBriefcaseFileName({ briefcaseId, iModelId });\r\n const requestProps: RequestNewBriefcaseProps = { iModelId, briefcaseId, iTwinId, asOf: asOf.toJSON(), fileName };\r\n\r\n const doDownload = async (): Promise<void> => {\r\n try {\r\n await this.callNativeHost(\"downloadBriefcase\", requestProps, progress !== undefined, downloadOptions.progressInterval);\r\n } finally {\r\n stopProgressEvents();\r\n }\r\n };\r\n\r\n const requestCancel = async (): Promise<boolean> => {\r\n const status = await this.callNativeHost(\"requestCancelDownloadBriefcase\", fileName);\r\n if (status)\r\n stopProgressEvents();\r\n return status;\r\n };\r\n\r\n return { briefcaseId, fileName, downloadPromise: doDownload(), requestCancel };\r\n }\r\n\r\n /** Get the full path filename for a briefcase within the briefcase cache */\r\n public static async getBriefcaseFileName(props: BriefcaseProps): Promise<string> {\r\n return this.callNativeHost(\"getBriefcaseFileName\", props);\r\n }\r\n\r\n /** Delete an existing briefcase\r\n * @param fileName the briefcase fileName\r\n */\r\n public static async deleteBriefcase(fileName: string): Promise<void> {\r\n await this.callNativeHost(\"deleteBriefcaseFiles\", fileName);\r\n }\r\n\r\n /** Get a list of all briefcase files held in the local briefcase cache directory */\r\n public static async getCachedBriefcases(iModelId?: GuidString): Promise<LocalBriefcaseProps[]> {\r\n return this.callNativeHost(\"getCachedBriefcases\", iModelId);\r\n }\r\n\r\n /**\r\n * Open a [[Storage]]. Creates a new Storage with that name if it does not already exist.\r\n * @param name Should be a local filename without an extension.\r\n * @returns a Promise for the [[Storage]].\r\n */\r\n public static async openStorage(name: string): Promise<Storage> {\r\n if (this._storages.has(name))\r\n return this._storages.get(name)!;\r\n\r\n const storage = new Storage(await this.callNativeHost(\"storageMgrOpen\", name));\r\n this._storages.set(storage.id, storage);\r\n return storage;\r\n }\r\n\r\n /**\r\n * Close a Storage and optionally delete it.\r\n * @param storage normally not call directly instead use Storage.close()\r\n * @param deleteStorage if true, delete the storage from disk after closing it.\r\n */\r\n public static async closeStorage(storage: Storage, deleteStorage: boolean = false): Promise<void> {\r\n if (!this._storages.has(storage.id))\r\n throw new Error(`Storage [Id=${storage.id}] not open`);\r\n\r\n await this.callNativeHost(\"storageMgrClose\", storage.id, deleteStorage);\r\n this._storages.delete(storage.id);\r\n }\r\n\r\n /** Get the list of existing Storages on the local disk. */\r\n public static async getStorageNames(): Promise<string[]> {\r\n return NativeApp.callNativeHost(\"storageMgrNames\");\r\n }\r\n}\r\n\r\n/**\r\n * A local disk-based cache for key value pairs for NativeApps.\r\n * @note This should be used only for local caching, since its not guaranteed to exist permanently.\r\n * @public\r\n */\r\nexport class Storage {\r\n constructor(public readonly id: string) { }\r\n\r\n /** get the type of a value for a key, or undefined if not present. */\r\n public async getValueType(key: string): Promise<\"number\" | \"string\" | \"boolean\" | \"Uint8Array\" | \"null\" | undefined> {\r\n return NativeApp.callNativeHost(\"storageGetValueType\", this.id, key);\r\n }\r\n\r\n /** Get the value for a key */\r\n public async getData(key: string): Promise<StorageValue> {\r\n return NativeApp.callNativeHost(\"storageGet\", this.id, key);\r\n }\r\n\r\n /** Set value for a key */\r\n public async setData(key: string, value: StorageValue): Promise<void> {\r\n return NativeApp.callNativeHost(\"storageSet\", this.id, key, value);\r\n }\r\n\r\n /**\r\n * Return an array of all keys in this Storage.\r\n * @note This can be expensive, depending on the number of keys present.\r\n */\r\n public async getKeys(): Promise<string[]> {\r\n return NativeApp.callNativeHost(\"storageKeys\", this.id);\r\n }\r\n\r\n /** Remove a key and its data. */\r\n public async removeData(key: string): Promise<void> {\r\n return NativeApp.callNativeHost(\"storageRemove\", this.id, key);\r\n }\r\n\r\n /** Remove all keys and their data. */\r\n public async removeAll(): Promise<void> {\r\n return NativeApp.callNativeHost(\"storageRemoveAll\", this.id);\r\n }\r\n}\r\n"]}
|
package/lib/esm/NoRenderApp.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NoRenderApp.d.ts","sourceRoot":"","sources":["../../src/NoRenderApp.ts"],"names":[],"mappings":"AAIA,OAAO,EAAa,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC;;;;GAIG;AACH,qBAAa,UAAW,SAAQ,YAAY;IAC1C,IAAW,gBAAgB,IAAI,MAAM,CAAc;IACnD,IAAW,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAK;IAClD,IAAW,YAAY,QAA+B;IACtD,IAAW,QAAQ,IAAI,QAAQ,CAA2B;IAC1D,IAAW,yBAAyB,IAAI,OAAO,CAAkB;IACjE,IAAoB,iBAAiB,IAAI,qBAAqB,GAAG,SAAS,CAAsB;IAChG,IAAoB,iBAAiB,CAAC,SAAS,EAAE,qBAAqB,GAAG,SAAS,EAAK;IAChF,SAAS,IAAI,IAAI;IACR,KAAK,IAAI,IAAI;IACtB,WAAW,IAAI,IAAI;IACnB,cAAc,IAAI,IAAI;IACtB,iBAAiB,IAAI,IAAI;IACzB,gBAAgB,IAAI,IAAI;IACxB,SAAS,CAAC,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI;IACpC,wBAAwB,IAAI,IAAI;IAChC,YAAY,IAAI,IAAI;IACpB,UAAU,IAAI,IAAI;IAC3B,WAAW,IAAI,IAAI;IACV,SAAS,IAAI,IAAI;IACjB,OAAO,IAAI,IAAI;IACxB,cAAc,IAAI,OAAO;IACzB,UAAU,IAAI,IAAI;
|
|
1
|
+
{"version":3,"file":"NoRenderApp.d.ts","sourceRoot":"","sources":["../../src/NoRenderApp.ts"],"names":[],"mappings":"AAIA,OAAO,EAAa,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC;;;;GAIG;AACH,qBAAa,UAAW,SAAQ,YAAY;IAC1C,IAAW,gBAAgB,IAAI,MAAM,CAAc;IACnD,IAAW,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAK;IAClD,IAAW,YAAY,QAA+B;IACtD,IAAW,QAAQ,IAAI,QAAQ,CAA2B;IAC1D,IAAW,yBAAyB,IAAI,OAAO,CAAkB;IACjE,IAAoB,iBAAiB,IAAI,qBAAqB,GAAG,SAAS,CAAsB;IAChG,IAAoB,iBAAiB,CAAC,SAAS,EAAE,qBAAqB,GAAG,SAAS,EAAK;IAChF,SAAS,IAAI,IAAI;IACR,KAAK,IAAI,IAAI;IACtB,WAAW,IAAI,IAAI;IACnB,cAAc,IAAI,IAAI;IACtB,iBAAiB,IAAI,IAAI;IACzB,gBAAgB,IAAI,IAAI;IACxB,SAAS,CAAC,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI;IACpC,wBAAwB,IAAI,IAAI;IAChC,YAAY,IAAI,IAAI;IACpB,UAAU,IAAI,IAAI;IAC3B,WAAW,IAAI,IAAI;IACV,SAAS,IAAI,IAAI;IACjB,OAAO,IAAI,IAAI;IACxB,cAAc,IAAI,OAAO;IACzB,UAAU,IAAI,IAAI;IACzB,IAAW,kBAAkB,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAe;IAChE,IAAW,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAK;CAC9D;AAED;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,YAAY;IAChD,IAAW,OAAO,IAAI,OAAO,CAAkB;IACxC,UAAU,IAAI,OAAO;IACrB,YAAY;IACZ,qBAAqB;IACrB,aAAa;IACb,iBAAiB;IACjB,mBAAmB;IACnB,WAAW;IACX,OAAO;;IAEE,mBAAmB;CACpC;AAED;;;;GAIG;AACH,qBAAa,WAAW;WACF,OAAO,CAAC,IAAI,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;CAKpE"}
|
package/lib/esm/NoRenderApp.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NoRenderApp.js","sourceRoot":"","sources":["../../src/NoRenderApp.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F,OAAO,EAAE,SAAS,EAAoB,MAAM,aAAa,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC;;;;GAIG;AACH,MAAM,OAAO,UAAW,SAAQ,YAAY;IAC1C,IAAW,gBAAgB,KAAa,OAAO,CAAC,CAAC,CAAC,CAAC;IACnD,IAAW,gBAAgB,CAAC,SAAiB,IAAI,CAAC;IAClD,IAAW,YAAY,KAAK,OAAO,SAAgB,CAAC,CAAC,CAAC;IACtD,IAAW,QAAQ,KAAe,OAAO,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC1D,IAAW,yBAAyB,KAAc,OAAO,KAAK,CAAC,CAAC,CAAC;IACjE,IAAoB,iBAAiB,KAAwC,OAAO,SAAS,CAAC,CAAC,CAAC;IAChG,IAAoB,iBAAiB,CAAC,SAA4C,IAAI,CAAC;IAChF,SAAS,KAAW,CAAC;IACZ,KAAK,KAAW,CAAC;IAC1B,WAAW,KAAW,CAAC;IACvB,cAAc,KAAW,CAAC;IAC1B,iBAAiB,KAAW,CAAC;IAC7B,gBAAgB,KAAW,CAAC;IAC5B,SAAS,CAAC,mBAA4B,IAAU,CAAC;IACxC,wBAAwB,KAAW,CAAC;IACpC,YAAY,KAAW,CAAC;IACxB,UAAU,KAAW,CAAC;IAC/B,WAAW,KAAW,CAAC;IACd,SAAS,KAAW,CAAC;IACrB,OAAO,KAAW,CAAC;IAC5B,cAAc,KAAc,OAAO,KAAK,CAAC,CAAC,CAAC;IAC3C,UAAU,KAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"NoRenderApp.js","sourceRoot":"","sources":["../../src/NoRenderApp.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F,OAAO,EAAE,SAAS,EAAoB,MAAM,aAAa,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC;;;;GAIG;AACH,MAAM,OAAO,UAAW,SAAQ,YAAY;IAC1C,IAAW,gBAAgB,KAAa,OAAO,CAAC,CAAC,CAAC,CAAC;IACnD,IAAW,gBAAgB,CAAC,SAAiB,IAAI,CAAC;IAClD,IAAW,YAAY,KAAK,OAAO,SAAgB,CAAC,CAAC,CAAC;IACtD,IAAW,QAAQ,KAAe,OAAO,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC1D,IAAW,yBAAyB,KAAc,OAAO,KAAK,CAAC,CAAC,CAAC;IACjE,IAAoB,iBAAiB,KAAwC,OAAO,SAAS,CAAC,CAAC,CAAC;IAChG,IAAoB,iBAAiB,CAAC,SAA4C,IAAI,CAAC;IAChF,SAAS,KAAW,CAAC;IACZ,KAAK,KAAW,CAAC;IAC1B,WAAW,KAAW,CAAC;IACvB,cAAc,KAAW,CAAC;IAC1B,iBAAiB,KAAW,CAAC;IAC7B,gBAAgB,KAAW,CAAC;IAC5B,SAAS,CAAC,mBAA4B,IAAU,CAAC;IACxC,wBAAwB,KAAW,CAAC;IACpC,YAAY,KAAW,CAAC;IACxB,UAAU,KAAW,CAAC;IAC/B,WAAW,KAAW,CAAC;IACd,SAAS,KAAW,CAAC;IACrB,OAAO,KAAW,CAAC;IAC5B,cAAc,KAAc,OAAO,KAAK,CAAC,CAAC,CAAC;IAC3C,UAAU,KAAW,CAAC;IAC7B,IAAW,kBAAkB,KAAuB,OAAO,EAAE,CAAC,CAAC,CAAC;IAChE,IAAW,kBAAkB,CAAC,QAA0B,IAAI,CAAC;CAC9D;AAED;;;;GAIG;AACH,MAAM,OAAO,gBAAiB,SAAQ,YAAY;IAChD,IAAW,OAAO,KAAc,OAAO,KAAK,CAAC,CAAC,CAAC;IACxC,UAAU,KAAc,OAAO,KAAK,CAAC,CAAC,CAAC;IACvC,YAAY,KAAK,OAAO,IAAI,UAAU,EAAE,CAAC,CAAC,CAAC;IAC3C,qBAAqB,KAAK,OAAO,IAAI,UAAU,EAAE,CAAC,CAAC,CAAC;IACpD,aAAa,KAAK,OAAO,SAAgB,CAAC,CAAC,CAAC;IAC5C,iBAAiB,KAAK,OAAO,SAAgB,CAAC,CAAC,CAAC;IAChD,mBAAmB,KAAK,OAAO,SAAgB,CAAC,CAAC,CAAC;IAClD,WAAW,KAAK,OAAO,SAAgB,CAAC,CAAC,CAAC;IAC1C,OAAO,KAAK,CAAC;IACpB,gBAAuB,KAAK,EAAE,CAAC,CAAC,CAAC;IACjB,mBAAmB,KAAK,OAAO,SAAS,CAAC,CAAC,CAAC;CAC5D;AAED;;;;GAIG;AACH,MAAM,OAAO,WAAW;IACf,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAuB;QACjD,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,IAAI,gBAAgB,EAAE,CAAC;QACxC,MAAM,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;CACF","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\nimport { IModelApp, IModelAppOptions } from \"./IModelApp\";\r\nimport { AnimationBranchStates } from \"./render/GraphicBranch\";\r\nimport { RenderSystem } from \"./render/RenderSystem\";\r\nimport { RenderTarget } from \"./render/RenderTarget\";\r\nimport { ViewRect } from \"./ViewRect\";\r\n\r\n/**\r\n * A RenderTarget for applications that must run in environments where WebGL is not present.\r\n * This is typically used in tests.\r\n * @internal\r\n */\r\nexport class NullTarget extends RenderTarget {\r\n public get analysisFraction(): number { return 0; }\r\n public set analysisFraction(_fraction: number) { }\r\n public get renderSystem() { return undefined as any; }\r\n public get viewRect(): ViewRect { return new ViewRect(); }\r\n public get wantInvertBlackBackground(): boolean { return false; }\r\n public override get animationBranches(): AnimationBranchStates | undefined { return undefined; }\r\n public override set animationBranches(_branches: AnimationBranchStates | undefined) { }\r\n public onDestroy(): void { }\r\n public override reset(): void { }\r\n public changeScene(): void { }\r\n public changeDynamics(): void { }\r\n public changeDecorations(): void { }\r\n public changeRenderPlan(): void { }\r\n public drawFrame(_sceneMilSecElapsed?: number): void { }\r\n public override overrideFeatureSymbology(): void { }\r\n public override setHiliteSet(): void { }\r\n public override setFlashed(): void { }\r\n public setViewRect(): void { }\r\n public override onResized(): void { }\r\n public override dispose(): void { }\r\n public updateViewRect(): boolean { return false; }\r\n public readPixels(): void { }\r\n public get screenSpaceEffects(): Iterable<string> { return []; }\r\n public set screenSpaceEffects(_effects: Iterable<string>) { }\r\n}\r\n\r\n/**\r\n * A RenderSystem for applications that must run in environments where WebGL is not present.\r\n * This is typically used in tests.\r\n * @internal\r\n */\r\nexport class NullRenderSystem extends RenderSystem {\r\n public get isValid(): boolean { return false; }\r\n public doIdleWork(): boolean { return false; }\r\n public createTarget() { return new NullTarget(); }\r\n public createOffscreenTarget() { return new NullTarget(); }\r\n public createGraphic() { return undefined as any; }\r\n public createGraphicList() { return undefined as any; }\r\n public createGraphicBranch() { return undefined as any; }\r\n public createBatch() { return undefined as any; }\r\n public dispose() { }\r\n public constructor() { super(); }\r\n public override createRenderGraphic() { return undefined; }\r\n}\r\n\r\n/**\r\n * A class for applications that must run in environments where WebGL is not present.\r\n * This is typically used in tests.\r\n * @internal\r\n */\r\nexport class NoRenderApp {\r\n public static async startup(opts?: IModelAppOptions): Promise<void> {\r\n opts = opts ? opts : {};\r\n opts.renderSys = new NullRenderSystem();\r\n await IModelApp.startup(opts);\r\n }\r\n}\r\n"]}
|
|
@@ -25,6 +25,7 @@ export declare enum OutputMessageType {
|
|
|
25
25
|
*/
|
|
26
26
|
export declare enum OutputMessagePriority {
|
|
27
27
|
None = 0,
|
|
28
|
+
Success = 1,
|
|
28
29
|
Error = 10,
|
|
29
30
|
Warning = 11,
|
|
30
31
|
Info = 12,
|
|
@@ -65,7 +66,8 @@ export declare enum MessageBoxIconType {
|
|
|
65
66
|
Information = 1,
|
|
66
67
|
Question = 2,
|
|
67
68
|
Warning = 3,
|
|
68
|
-
Critical = 4
|
|
69
|
+
Critical = 4,
|
|
70
|
+
Success = 5
|
|
69
71
|
}
|
|
70
72
|
/** Describes the possible return values produced when the user clicks a button in a messagebox opened using [[NotificationManager.openMessageBox]].
|
|
71
73
|
* @public
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NotificationManager.d.ts","sourceRoot":"","sources":["../../src/NotificationManager.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEhH,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AAIpE;;GAEG;AACH,oBAAY,iBAAiB;IAC3B,uGAAuG;IACvG,KAAK,IAAI;IACT,2GAA2G;IAC3G,OAAO,IAAI;IACX,2FAA2F;IAC3F,MAAM,IAAI;IACV,4EAA4E;IAC5E,UAAU,IAAI;IACd,yBAAyB;IACzB,KAAK,IAAI;CACV;AAED;;GAEG;AACH,oBAAY,qBAAqB;IAC/B,IAAI,IAAI;IACR,KAAK,KAAK;IACV,OAAO,KAAK;IACZ,IAAI,KAAK;IACT,KAAK,KAAK;IACV,KAAK,KAAK;CACX;AAED;;GAEG;AACH,oBAAY,kBAAkB;IAC5B,IAAI,IAAI;IACR,MAAM,IAAI;IACV,OAAO,IAAI;CACZ;AAED;;GAEG;AACH,oBAAY,wBAAwB;IAClC,SAAS,IAAI;IACb,SAAS,IAAI;CACd;AAED;;GAEG;AACH,oBAAY,cAAc;IACxB,QAAQ,IAAA;IACR,EAAE,IAAA;IACF,OAAO,IAAA;IACP,WAAW,IAAA;IACX,WAAW,IAAA;IACX,KAAK,IAAA;CACN;AAED;;GAEG;AACH,oBAAY,kBAAkB;IAC5B,QAAQ,IAAI;IACZ,WAAW,IAAI;IACf,QAAQ,IAAI;IACZ,OAAO,IAAI;IACX,QAAQ,IAAI;
|
|
1
|
+
{"version":3,"file":"NotificationManager.d.ts","sourceRoot":"","sources":["../../src/NotificationManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -32,6 +32,7 @@ export var OutputMessageType;
|
|
|
32
32
|
export var OutputMessagePriority;
|
|
33
33
|
(function (OutputMessagePriority) {
|
|
34
34
|
OutputMessagePriority[OutputMessagePriority["None"] = 0] = "None";
|
|
35
|
+
OutputMessagePriority[OutputMessagePriority["Success"] = 1] = "Success";
|
|
35
36
|
OutputMessagePriority[OutputMessagePriority["Error"] = 10] = "Error";
|
|
36
37
|
OutputMessagePriority[OutputMessagePriority["Warning"] = 11] = "Warning";
|
|
37
38
|
OutputMessagePriority[OutputMessagePriority["Info"] = 12] = "Info";
|
|
@@ -77,6 +78,7 @@ export var MessageBoxIconType;
|
|
|
77
78
|
MessageBoxIconType[MessageBoxIconType["Question"] = 2] = "Question";
|
|
78
79
|
MessageBoxIconType[MessageBoxIconType["Warning"] = 3] = "Warning";
|
|
79
80
|
MessageBoxIconType[MessageBoxIconType["Critical"] = 4] = "Critical";
|
|
81
|
+
MessageBoxIconType[MessageBoxIconType["Success"] = 5] = "Success";
|
|
80
82
|
})(MessageBoxIconType || (MessageBoxIconType = {}));
|
|
81
83
|
/** Describes the possible return values produced when the user clicks a button in a messagebox opened using [[NotificationManager.openMessageBox]].
|
|
82
84
|
* @public
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NotificationManager.js","sourceRoot":"","sources":["../../src/NotificationManager.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 Notifications\r\n */\r\nimport { BeDuration } from \"@itwin/core-bentley\";\r\nimport { Point2d, XAndY } from \"@itwin/core-geometry\";\r\nimport { DisplayMessageType, MessagePresenter, MessageSeverity, RelativePosition } from \"@itwin/appui-abstract\";\r\nimport { IModelApp } from \"./IModelApp\";\r\nimport { ToolAssistanceInstructions } from \"./tools/ToolAssistance\";\r\n\r\n// cSpell:words messagebox\r\n\r\n/** Describes the type and behavior of a [[NotifyMessageDetails]].\r\n * @public\r\n */\r\nexport enum OutputMessageType {\r\n /** Temporary message box displays at the top or bottom of the screen then disappears automatically. */\r\n Toast = 0,\r\n /** Message box displays near the cursor over a Viewport and is closed by calling `closePointerMessage`. */\r\n Pointer = 1,\r\n /** Message box displays at the top or bottom of the screen and contains a Close button. */\r\n Sticky = 2,\r\n /** Message box displays near an input field and contains a Close button. */\r\n InputField = 3,\r\n /** Modal message box. */\r\n Alert = 4,\r\n}\r\n\r\n/** Classifies a [[NotifyMessageDetails]] by its level of importance.\r\n * @public\r\n */\r\nexport enum OutputMessagePriority {\r\n None = 0,\r\n Error = 10,\r\n Warning = 11,\r\n Info = 12,\r\n Debug = 13,\r\n Fatal = 17,\r\n}\r\n\r\n/** Describes the alert behavior of a [[NotifyMessageDetails]].\r\n * @public\r\n */\r\nexport enum OutputMessageAlert {\r\n None = 0,\r\n Dialog = 1,\r\n Balloon = 2,\r\n}\r\n\r\n/** Reason for ending the activity message via endActivityMessage\r\n * @public\r\n */\r\nexport enum ActivityMessageEndReason {\r\n Completed = 0,\r\n Cancelled = 1,\r\n}\r\n\r\n/** Describes the set of buttons displayed in a message box opened using [[NotificationManager.openMessageBox]].\r\n * @public\r\n */\r\nexport enum MessageBoxType {\r\n OkCancel,\r\n Ok,\r\n LargeOk,\r\n MediumAlert,\r\n YesNoCancel,\r\n YesNo,\r\n}\r\n\r\n/** Describes the icon displayed in a messagebox opened using [[NotificationManager.openMessageBox]].\r\n * @public\r\n */\r\nexport enum MessageBoxIconType {\r\n NoSymbol = 0, // Means Don't draw Symbol\r\n Information = 1, // Lower Case i\r\n Question = 2, // Question Mark\r\n Warning = 3, // Exclamation Point\r\n Critical = 4, // Stop Sign\r\n}\r\n\r\n/** Describes the possible return values produced when the user clicks a button in a messagebox opened using [[NotificationManager.openMessageBox]].\r\n * @public\r\n */\r\nexport enum MessageBoxValue {\r\n Apply = 1,\r\n Reset = 2,\r\n Ok = 3,\r\n Cancel = 4,\r\n Default = 5,\r\n Yes = 6,\r\n No = 7,\r\n Retry = 8,\r\n Stop = 9,\r\n Help = 10,\r\n YesToAll = 11,\r\n NoToAll = 12,\r\n}\r\n\r\n/** Describes the behavior of a tooltip created using [[NotificationManager.openToolTip]].\r\n * @public\r\n */\r\nexport interface ToolTipOptions {\r\n duration?: BeDuration;\r\n placement?: string;\r\n}\r\n\r\n/** Describes a message to be displayed to the user.\r\n * @public\r\n */\r\nexport class NotifyMessageDetails {\r\n public displayTime = BeDuration.fromSeconds(5);\r\n public viewport?: HTMLElement;\r\n public inputField?: HTMLElement;\r\n public displayPoint?: Point2d;\r\n public relativePosition = RelativePosition.TopRight;\r\n\r\n /** Constructor\r\n * @param priority The priority this message should be accorded by the NotificationManager.\r\n * @param briefMessage A short message that conveys the simplest explanation of the issue.\r\n * @param detailedMessage An optional comprehensive message that explains the issue in detail and potentially offers a solution.\r\n * @param msgType The type of message. Defaults to Toast.\r\n * @param openAlert Whether an alert box should be displayed or not, and if so what kind.\r\n */\r\n public constructor(public priority: OutputMessagePriority, public briefMessage: HTMLElement | string,\r\n public detailedMessage?: HTMLElement | string, public msgType = OutputMessageType.Toast, public openAlert = OutputMessageAlert.None) { }\r\n\r\n /** Set OutputMessageType.Pointer message details.\r\n * @param viewport Viewport over which to display the Pointer type message.\r\n * @param displayPoint Point at which to display the Pointer type message.\r\n * @param relativePosition Position relative to displayPoint at which to display the Pointer type message.\r\n */\r\n public setPointerTypeDetails(viewport: HTMLElement, displayPoint: XAndY, relativePosition = RelativePosition.TopRight) {\r\n this.viewport = viewport;\r\n this.displayPoint = Point2d.fromJSON(displayPoint);\r\n this.relativePosition = relativePosition;\r\n this.msgType = OutputMessageType.Pointer;\r\n }\r\n\r\n /** Set OutputMessageType.InputField message details.\r\n * @param inputField Input field to which the message pertains. The message will be shown just below this input field element.\r\n */\r\n public setInputFieldTypeDetails(inputField: HTMLElement) {\r\n this.inputField = inputField;\r\n this.msgType = OutputMessageType.InputField;\r\n }\r\n}\r\n\r\n/** Specifies the details of an activity message to be displayed to the user.\r\n * @public\r\n */\r\nexport class ActivityMessageDetails {\r\n public wasCancelled = false;\r\n\r\n /**\r\n * @param showProgressBar Indicates whether to show the progress bar in the activity message dialog.\r\n * @param showPercentInMessage Indicates whether to show the percentage complete in the activity message text.\r\n * @param supportsCancellation Indicates whether to show the Cancel button, giving the user the ability to cancel the operation.\r\n * @param showDialogInitially Indicates whether to show the activity message dialog initially. User can click status bar to open it.\r\n */\r\n public constructor(public showProgressBar: boolean, public showPercentInMessage: boolean, public supportsCancellation: boolean, public showDialogInitially: boolean = true) { }\r\n\r\n /** Called from NotificationAdmin when the user cancels the activity. */\r\n public onActivityCancelled() { this.wasCancelled = true; }\r\n\r\n /** Called from NotificationAdmin when the activity completes successfully. */\r\n public onActivityCompleted() { this.wasCancelled = false; }\r\n}\r\n\r\n/** The NotificationManager controls the interaction with the user for prompts, error messages, and alert dialogs.\r\n * Implementations of the NotificationManager may present the information in different ways. For example, in\r\n * non-interactive sessions, these messages may be saved to a log file or simply discarded.\r\n * @public\r\n */\r\nexport class NotificationManager implements MessagePresenter {\r\n public readonly toolTipLocation = new Point2d();\r\n\r\n /** Output a prompt, given a localization key.\r\n * @param key The key of the localized string with the prompt message.\r\n */\r\n public outputPromptByKey(key: string) { this.outputPrompt(IModelApp.localization.getLocalizedString(key)); }\r\n\r\n /** Output a localized prompt to the user. A 'prompt' indicates an action the user should take to proceed.\r\n * @param _prompt The localized string with the prompt message.\r\n */\r\n public outputPrompt(_prompt: string) { }\r\n\r\n /** Output a message and/or alert to the user. */\r\n public outputMessage(_message: NotifyMessageDetails) { }\r\n\r\n /** Output a MessageBox and wait for response from the user.\r\n * @param _mbType The MessageBox type.\r\n * @param _message The message to display.\r\n * @param _icon The MessageBox icon type.\r\n * @return the response from the user.\r\n */\r\n public async openMessageBox(_mbType: MessageBoxType, _message: HTMLElement | string, _icon: MessageBoxIconType): Promise<MessageBoxValue> { return MessageBoxValue.Ok; }\r\n\r\n /**\r\n * Set up for activity messages.\r\n * @param _details The activity message details.\r\n * @return true if the message was displayed, false if an invalid priority is specified.\r\n */\r\n public setupActivityMessage(_details: ActivityMessageDetails) { return true; }\r\n\r\n /**\r\n * Output an activity message to the user.\r\n * @param _messageText The message text.\r\n * @param _percentComplete The percentage of completion.\r\n * @return true if the message was displayed, false if the message could not be displayed.\r\n */\r\n public outputActivityMessage(_messageText: HTMLElement | string, _percentComplete: number) { return true; }\r\n\r\n /**\r\n * End an activity message.\r\n * @param _reason The reason for the end of the Activity Message.\r\n * @return true if the message was ended successfully, false if the activityMessage could not be ended.\r\n */\r\n public endActivityMessage(_reason: ActivityMessageEndReason) { return true; }\r\n\r\n /** Return true if _showTooltip has an implementation and will display a tooltip. */\r\n public get isToolTipSupported(): boolean { return false; }\r\n\r\n /** Return true if the tooltip is currently open. */\r\n public get isToolTipOpen(): boolean { return false; }\r\n\r\n /** Implement to display a tooltip message at the specified location. */\r\n protected _showToolTip(_htmlElement: HTMLElement, _message: HTMLElement | string, _location?: XAndY, _options?: ToolTipOptions): void { }\r\n\r\n /** Show a tooltip window. Saves tooltip location for AccuSnap to test if cursor has moved far enough away to close tooltip.\r\n * @param htmlElement The HTMLElement that anchors the toolTip.\r\n * @param message What to display inside the ToolTip. May be a string or an HTMLElement.\r\n * @param location An optional location, relative to the origin of _htmlElement, for the ToolTip. If undefined, center of `htmlElement`\r\n * @param options Options that supply additional information about how the ToolTip should function.\r\n * @note If message is an HTMLElement, the notification manager will display the HTMLElement verbatim. This can represent a security\r\n * risk if any part the element is created from user input. Applications should be careful to *sanitize* any such input before\r\n * creating an HTMLElement to pass to this method.\r\n */\r\n public openToolTip(htmlElement: HTMLElement, message: HTMLElement | string, location?: XAndY, options?: ToolTipOptions): void {\r\n this.toolTipLocation.setFrom(location);\r\n this._showToolTip(htmlElement, message, location, options);\r\n }\r\n\r\n /** Clear the tooltip if it is currently open. */\r\n public clearToolTip(): void { }\r\n\r\n /** Update message position created with [[OutputMessageType.Pointer]].\r\n * @param displayPoint Point at which to display the Pointer type message.\r\n * @param relativePosition Position relative to displayPoint at which to display the Pointer type message.\r\n */\r\n public updatePointerMessage(_displayPoint: XAndY, _relativePosition = RelativePosition.TopRight): void { }\r\n\r\n /** Close message created with [[OutputMessageType.Pointer]]. */\r\n public closePointerMessage(): void { }\r\n\r\n /** Close message created with [[OutputMessageType.InputField]]. */\r\n public closeInputFieldMessage(): void { }\r\n\r\n /** Setup tool assistance instructions for a tool. The instructions include the main instruction, which includes the current prompt.\r\n * @param instructions The tool assistance instructions.\r\n */\r\n public setToolAssistance(instructions: ToolAssistanceInstructions | undefined) {\r\n this.outputPrompt(instructions ? instructions.mainInstruction.text : \"\");\r\n }\r\n\r\n /**\r\n * Displays a notification message.\r\n * @param severity The severity of the message.\r\n * @param briefMessage A short message that conveys the simplest explanation of the issue.\r\n * @param detailedMessage An optional comprehensive message that explains the issue in detail and potentially offers a solution.\r\n * @param messageType The type of message. Defaults to Toast.\r\n */\r\n public displayMessage(severity: MessageSeverity, briefMessage: HTMLElement | string, detailedMessage?: HTMLElement | string, messageType?: DisplayMessageType): void {\r\n const details = new NotifyMessageDetails(this.convertSeverityToPriority(severity), briefMessage, detailedMessage, this.convertMessageType(messageType));\r\n this.outputMessage(details);\r\n }\r\n\r\n /**\r\n * Displays an input field notification message.\r\n * @param inputField Input field to which the message pertains. The message will be shown just below this input field element.\r\n * @param severity The severity of the message.\r\n * @param briefMessage A short message that conveys the simplest explanation of the issue.\r\n * @param detailedMessage An optional comprehensive message that explains the issue in detail and potentially offers a solution.\r\n */\r\n public displayInputFieldMessage(inputField: HTMLElement, severity: MessageSeverity, briefMessage: HTMLElement | string, detailedMessage?: HTMLElement | string): void {\r\n const details = new NotifyMessageDetails(this.convertSeverityToPriority(severity), briefMessage, detailedMessage);\r\n details.setInputFieldTypeDetails(inputField);\r\n this.outputMessage(details);\r\n }\r\n\r\n private convertSeverityToPriority(severity: MessageSeverity): OutputMessagePriority {\r\n switch (severity) {\r\n case MessageSeverity.Information:\r\n return OutputMessagePriority.Info;\r\n case MessageSeverity.Warning:\r\n return OutputMessagePriority.Warning;\r\n case MessageSeverity.Error:\r\n return OutputMessagePriority.Error;\r\n case MessageSeverity.Fatal:\r\n return OutputMessagePriority.Fatal;\r\n case MessageSeverity.None:\r\n default:\r\n return OutputMessagePriority.None;\r\n }\r\n }\r\n\r\n private convertMessageType(inMessageType?: DisplayMessageType): OutputMessageType | undefined {\r\n switch (inMessageType) {\r\n case DisplayMessageType.Alert:\r\n return OutputMessageType.Alert;\r\n case DisplayMessageType.InputField:\r\n return OutputMessageType.InputField;\r\n case DisplayMessageType.Sticky:\r\n return OutputMessageType.Sticky;\r\n case DisplayMessageType.Toast:\r\n return OutputMessageType.Toast;\r\n default:\r\n return undefined;\r\n }\r\n }\r\n\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"NotificationManager.js","sourceRoot":"","sources":["../../src/NotificationManager.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 Notifications\r\n */\r\nimport { BeDuration } from \"@itwin/core-bentley\";\r\nimport { Point2d, XAndY } from \"@itwin/core-geometry\";\r\nimport { DisplayMessageType, MessagePresenter, MessageSeverity, RelativePosition } from \"@itwin/appui-abstract\";\r\nimport { IModelApp } from \"./IModelApp\";\r\nimport { ToolAssistanceInstructions } from \"./tools/ToolAssistance\";\r\n\r\n// cSpell:words messagebox\r\n\r\n/** Describes the type and behavior of a [[NotifyMessageDetails]].\r\n * @public\r\n */\r\nexport enum OutputMessageType {\r\n /** Temporary message box displays at the top or bottom of the screen then disappears automatically. */\r\n Toast = 0,\r\n /** Message box displays near the cursor over a Viewport and is closed by calling `closePointerMessage`. */\r\n Pointer = 1,\r\n /** Message box displays at the top or bottom of the screen and contains a Close button. */\r\n Sticky = 2,\r\n /** Message box displays near an input field and contains a Close button. */\r\n InputField = 3,\r\n /** Modal message box. */\r\n Alert = 4,\r\n}\r\n\r\n/** Classifies a [[NotifyMessageDetails]] by its level of importance.\r\n * @public\r\n */\r\nexport enum OutputMessagePriority {\r\n None = 0,\r\n Success = 1,\r\n Error = 10,\r\n Warning = 11,\r\n Info = 12,\r\n Debug = 13,\r\n Fatal = 17,\r\n}\r\n\r\n/** Describes the alert behavior of a [[NotifyMessageDetails]].\r\n * @public\r\n */\r\nexport enum OutputMessageAlert {\r\n None = 0,\r\n Dialog = 1,\r\n Balloon = 2,\r\n}\r\n\r\n/** Reason for ending the activity message via endActivityMessage\r\n * @public\r\n */\r\nexport enum ActivityMessageEndReason {\r\n Completed = 0,\r\n Cancelled = 1,\r\n}\r\n\r\n/** Describes the set of buttons displayed in a message box opened using [[NotificationManager.openMessageBox]].\r\n * @public\r\n */\r\nexport enum MessageBoxType {\r\n OkCancel,\r\n Ok,\r\n LargeOk,\r\n MediumAlert,\r\n YesNoCancel,\r\n YesNo,\r\n}\r\n\r\n/** Describes the icon displayed in a messagebox opened using [[NotificationManager.openMessageBox]].\r\n * @public\r\n */\r\nexport enum MessageBoxIconType {\r\n NoSymbol = 0, // Means Don't draw Symbol\r\n Information = 1, // Lower Case i\r\n Question = 2, // Question Mark\r\n Warning = 3, // Exclamation Point\r\n Critical = 4, // Stop Sign\r\n Success = 5, // check mark\r\n}\r\n\r\n/** Describes the possible return values produced when the user clicks a button in a messagebox opened using [[NotificationManager.openMessageBox]].\r\n * @public\r\n */\r\nexport enum MessageBoxValue {\r\n Apply = 1,\r\n Reset = 2,\r\n Ok = 3,\r\n Cancel = 4,\r\n Default = 5,\r\n Yes = 6,\r\n No = 7,\r\n Retry = 8,\r\n Stop = 9,\r\n Help = 10,\r\n YesToAll = 11,\r\n NoToAll = 12,\r\n}\r\n\r\n/** Describes the behavior of a tooltip created using [[NotificationManager.openToolTip]].\r\n * @public\r\n */\r\nexport interface ToolTipOptions {\r\n duration?: BeDuration;\r\n placement?: string;\r\n}\r\n\r\n/** Describes a message to be displayed to the user.\r\n * @public\r\n */\r\nexport class NotifyMessageDetails {\r\n public displayTime = BeDuration.fromSeconds(5);\r\n public viewport?: HTMLElement;\r\n public inputField?: HTMLElement;\r\n public displayPoint?: Point2d;\r\n public relativePosition = RelativePosition.TopRight;\r\n\r\n /** Constructor\r\n * @param priority The priority this message should be accorded by the NotificationManager.\r\n * @param briefMessage A short message that conveys the simplest explanation of the issue.\r\n * @param detailedMessage An optional comprehensive message that explains the issue in detail and potentially offers a solution.\r\n * @param msgType The type of message. Defaults to Toast.\r\n * @param openAlert Whether an alert box should be displayed or not, and if so what kind.\r\n */\r\n public constructor(public priority: OutputMessagePriority, public briefMessage: HTMLElement | string,\r\n public detailedMessage?: HTMLElement | string, public msgType = OutputMessageType.Toast, public openAlert = OutputMessageAlert.None) { }\r\n\r\n /** Set OutputMessageType.Pointer message details.\r\n * @param viewport Viewport over which to display the Pointer type message.\r\n * @param displayPoint Point at which to display the Pointer type message.\r\n * @param relativePosition Position relative to displayPoint at which to display the Pointer type message.\r\n */\r\n public setPointerTypeDetails(viewport: HTMLElement, displayPoint: XAndY, relativePosition = RelativePosition.TopRight) {\r\n this.viewport = viewport;\r\n this.displayPoint = Point2d.fromJSON(displayPoint);\r\n this.relativePosition = relativePosition;\r\n this.msgType = OutputMessageType.Pointer;\r\n }\r\n\r\n /** Set OutputMessageType.InputField message details.\r\n * @param inputField Input field to which the message pertains. The message will be shown just below this input field element.\r\n */\r\n public setInputFieldTypeDetails(inputField: HTMLElement) {\r\n this.inputField = inputField;\r\n this.msgType = OutputMessageType.InputField;\r\n }\r\n}\r\n\r\n/** Specifies the details of an activity message to be displayed to the user.\r\n * @public\r\n */\r\nexport class ActivityMessageDetails {\r\n public wasCancelled = false;\r\n\r\n /**\r\n * @param showProgressBar Indicates whether to show the progress bar in the activity message dialog.\r\n * @param showPercentInMessage Indicates whether to show the percentage complete in the activity message text.\r\n * @param supportsCancellation Indicates whether to show the Cancel button, giving the user the ability to cancel the operation.\r\n * @param showDialogInitially Indicates whether to show the activity message dialog initially. User can click status bar to open it.\r\n */\r\n public constructor(public showProgressBar: boolean, public showPercentInMessage: boolean, public supportsCancellation: boolean, public showDialogInitially: boolean = true) { }\r\n\r\n /** Called from NotificationAdmin when the user cancels the activity. */\r\n public onActivityCancelled() { this.wasCancelled = true; }\r\n\r\n /** Called from NotificationAdmin when the activity completes successfully. */\r\n public onActivityCompleted() { this.wasCancelled = false; }\r\n}\r\n\r\n/** The NotificationManager controls the interaction with the user for prompts, error messages, and alert dialogs.\r\n * Implementations of the NotificationManager may present the information in different ways. For example, in\r\n * non-interactive sessions, these messages may be saved to a log file or simply discarded.\r\n * @public\r\n */\r\nexport class NotificationManager implements MessagePresenter {\r\n public readonly toolTipLocation = new Point2d();\r\n\r\n /** Output a prompt, given a localization key.\r\n * @param key The key of the localized string with the prompt message.\r\n */\r\n public outputPromptByKey(key: string) { this.outputPrompt(IModelApp.localization.getLocalizedString(key)); }\r\n\r\n /** Output a localized prompt to the user. A 'prompt' indicates an action the user should take to proceed.\r\n * @param _prompt The localized string with the prompt message.\r\n */\r\n public outputPrompt(_prompt: string) { }\r\n\r\n /** Output a message and/or alert to the user. */\r\n public outputMessage(_message: NotifyMessageDetails) { }\r\n\r\n /** Output a MessageBox and wait for response from the user.\r\n * @param _mbType The MessageBox type.\r\n * @param _message The message to display.\r\n * @param _icon The MessageBox icon type.\r\n * @return the response from the user.\r\n */\r\n public async openMessageBox(_mbType: MessageBoxType, _message: HTMLElement | string, _icon: MessageBoxIconType): Promise<MessageBoxValue> { return MessageBoxValue.Ok; }\r\n\r\n /**\r\n * Set up for activity messages.\r\n * @param _details The activity message details.\r\n * @return true if the message was displayed, false if an invalid priority is specified.\r\n */\r\n public setupActivityMessage(_details: ActivityMessageDetails) { return true; }\r\n\r\n /**\r\n * Output an activity message to the user.\r\n * @param _messageText The message text.\r\n * @param _percentComplete The percentage of completion.\r\n * @return true if the message was displayed, false if the message could not be displayed.\r\n */\r\n public outputActivityMessage(_messageText: HTMLElement | string, _percentComplete: number) { return true; }\r\n\r\n /**\r\n * End an activity message.\r\n * @param _reason The reason for the end of the Activity Message.\r\n * @return true if the message was ended successfully, false if the activityMessage could not be ended.\r\n */\r\n public endActivityMessage(_reason: ActivityMessageEndReason) { return true; }\r\n\r\n /** Return true if _showTooltip has an implementation and will display a tooltip. */\r\n public get isToolTipSupported(): boolean { return false; }\r\n\r\n /** Return true if the tooltip is currently open. */\r\n public get isToolTipOpen(): boolean { return false; }\r\n\r\n /** Implement to display a tooltip message at the specified location. */\r\n protected _showToolTip(_htmlElement: HTMLElement, _message: HTMLElement | string, _location?: XAndY, _options?: ToolTipOptions): void { }\r\n\r\n /** Show a tooltip window. Saves tooltip location for AccuSnap to test if cursor has moved far enough away to close tooltip.\r\n * @param htmlElement The HTMLElement that anchors the toolTip.\r\n * @param message What to display inside the ToolTip. May be a string or an HTMLElement.\r\n * @param location An optional location, relative to the origin of _htmlElement, for the ToolTip. If undefined, center of `htmlElement`\r\n * @param options Options that supply additional information about how the ToolTip should function.\r\n * @note If message is an HTMLElement, the notification manager will display the HTMLElement verbatim. This can represent a security\r\n * risk if any part the element is created from user input. Applications should be careful to *sanitize* any such input before\r\n * creating an HTMLElement to pass to this method.\r\n */\r\n public openToolTip(htmlElement: HTMLElement, message: HTMLElement | string, location?: XAndY, options?: ToolTipOptions): void {\r\n this.toolTipLocation.setFrom(location);\r\n this._showToolTip(htmlElement, message, location, options);\r\n }\r\n\r\n /** Clear the tooltip if it is currently open. */\r\n public clearToolTip(): void { }\r\n\r\n /** Update message position created with [[OutputMessageType.Pointer]].\r\n * @param displayPoint Point at which to display the Pointer type message.\r\n * @param relativePosition Position relative to displayPoint at which to display the Pointer type message.\r\n */\r\n public updatePointerMessage(_displayPoint: XAndY, _relativePosition = RelativePosition.TopRight): void { }\r\n\r\n /** Close message created with [[OutputMessageType.Pointer]]. */\r\n public closePointerMessage(): void { }\r\n\r\n /** Close message created with [[OutputMessageType.InputField]]. */\r\n public closeInputFieldMessage(): void { }\r\n\r\n /** Setup tool assistance instructions for a tool. The instructions include the main instruction, which includes the current prompt.\r\n * @param instructions The tool assistance instructions.\r\n */\r\n public setToolAssistance(instructions: ToolAssistanceInstructions | undefined) {\r\n this.outputPrompt(instructions ? instructions.mainInstruction.text : \"\");\r\n }\r\n\r\n /**\r\n * Displays a notification message.\r\n * @param severity The severity of the message.\r\n * @param briefMessage A short message that conveys the simplest explanation of the issue.\r\n * @param detailedMessage An optional comprehensive message that explains the issue in detail and potentially offers a solution.\r\n * @param messageType The type of message. Defaults to Toast.\r\n */\r\n public displayMessage(severity: MessageSeverity, briefMessage: HTMLElement | string, detailedMessage?: HTMLElement | string, messageType?: DisplayMessageType): void {\r\n const details = new NotifyMessageDetails(this.convertSeverityToPriority(severity), briefMessage, detailedMessage, this.convertMessageType(messageType));\r\n this.outputMessage(details);\r\n }\r\n\r\n /**\r\n * Displays an input field notification message.\r\n * @param inputField Input field to which the message pertains. The message will be shown just below this input field element.\r\n * @param severity The severity of the message.\r\n * @param briefMessage A short message that conveys the simplest explanation of the issue.\r\n * @param detailedMessage An optional comprehensive message that explains the issue in detail and potentially offers a solution.\r\n */\r\n public displayInputFieldMessage(inputField: HTMLElement, severity: MessageSeverity, briefMessage: HTMLElement | string, detailedMessage?: HTMLElement | string): void {\r\n const details = new NotifyMessageDetails(this.convertSeverityToPriority(severity), briefMessage, detailedMessage);\r\n details.setInputFieldTypeDetails(inputField);\r\n this.outputMessage(details);\r\n }\r\n\r\n private convertSeverityToPriority(severity: MessageSeverity): OutputMessagePriority {\r\n switch (severity) {\r\n case MessageSeverity.Information:\r\n return OutputMessagePriority.Info;\r\n case MessageSeverity.Warning:\r\n return OutputMessagePriority.Warning;\r\n case MessageSeverity.Error:\r\n return OutputMessagePriority.Error;\r\n case MessageSeverity.Fatal:\r\n return OutputMessagePriority.Fatal;\r\n case MessageSeverity.None:\r\n default:\r\n return OutputMessagePriority.None;\r\n }\r\n }\r\n\r\n private convertMessageType(inMessageType?: DisplayMessageType): OutputMessageType | undefined {\r\n switch (inMessageType) {\r\n case DisplayMessageType.Alert:\r\n return OutputMessageType.Alert;\r\n case DisplayMessageType.InputField:\r\n return OutputMessageType.InputField;\r\n case DisplayMessageType.Sticky:\r\n return OutputMessageType.Sticky;\r\n case DisplayMessageType.Toast:\r\n return OutputMessageType.Toast;\r\n default:\r\n return undefined;\r\n }\r\n }\r\n\r\n}\r\n"]}
|