@itwin/core-frontend 5.1.1 → 5.1.3-experimental.1
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 +13 -1
- package/lib/cjs/AccuDraw.js.map +1 -1
- package/lib/cjs/AccuSnap.js.map +1 -1
- package/lib/cjs/ApproximateTerrainHeights.js.map +1 -1
- package/lib/cjs/ApproximateTerrainHeightsProps.js.map +1 -1
- package/lib/cjs/AuxCoordSys.js.map +1 -1
- package/lib/cjs/BackgroundMapGeometry.js.map +1 -1
- package/lib/cjs/BingLocation.js.map +1 -1
- package/lib/cjs/BriefcaseConnection.js.map +1 -1
- package/lib/cjs/BriefcaseTxns.js.map +1 -1
- package/lib/cjs/CatalogConnection.js.map +1 -1
- package/lib/cjs/CategorySelectorState.js.map +1 -1
- package/lib/cjs/ChangeFlags.js.map +1 -1
- package/lib/cjs/CheckpointConnection.js.map +1 -1
- package/lib/cjs/ContextRealityModelState.js.map +1 -1
- package/lib/cjs/CoordSystem.js.map +1 -1
- package/lib/cjs/DecorationsCache.js.map +1 -1
- package/lib/cjs/DevTools.js.map +1 -1
- package/lib/cjs/DisplayStyleState.js.map +1 -1
- package/lib/cjs/DrawingViewState.js.map +1 -1
- package/lib/cjs/ElementLocateManager.js.map +1 -1
- package/lib/cjs/EmphasizeElements.js.map +1 -1
- package/lib/cjs/EntityState.js.map +1 -1
- package/lib/cjs/EnvironmentDecorations.js.map +1 -1
- package/lib/cjs/FeatureOverrideProvider.js.map +1 -1
- package/lib/cjs/FlashSettings.js.map +1 -1
- package/lib/cjs/FrontendHubAccess.js.map +1 -1
- package/lib/cjs/Frustum2d.js.map +1 -1
- package/lib/cjs/FrustumAnimator.js.map +1 -1
- package/lib/cjs/FuzzySearch.js.map +1 -1
- package/lib/cjs/GeoServices.js.map +1 -1
- package/lib/cjs/GlobeAnimator.js.map +1 -1
- package/lib/cjs/GraphicalEditingScope.js.map +1 -1
- package/lib/cjs/HitDetail.js.map +1 -1
- package/lib/cjs/IModelApp.js.map +1 -1
- package/lib/cjs/IModelConnection.js.map +1 -1
- package/lib/cjs/IModelRoutingContext.js.map +1 -1
- package/lib/cjs/IModeljs-css.js.map +1 -1
- package/lib/cjs/IpcApp.js.map +1 -1
- package/lib/cjs/LinePlaneIntersect.js.map +1 -1
- package/lib/cjs/LocalhostIpcApp.js.map +1 -1
- package/lib/cjs/MarginPercent.js.map +1 -1
- package/lib/cjs/Marker.js.map +1 -1
- package/lib/cjs/ModelSelectorState.js.map +1 -1
- package/lib/cjs/ModelState.js.map +1 -1
- package/lib/cjs/NativeApp.js.map +1 -1
- package/lib/cjs/NativeAppLogger.js.map +1 -1
- package/lib/cjs/NoRenderApp.js.map +1 -1
- package/lib/cjs/NotificationManager.js.map +1 -1
- package/lib/cjs/PerModelCategoryVisibility.js.map +1 -1
- package/lib/cjs/PlanarClipMaskState.js.map +1 -1
- package/lib/cjs/RealityDataSource.js.map +1 -1
- package/lib/cjs/RealityDataSourceCesiumIonAssetImpl.js.map +1 -1
- package/lib/cjs/RealityDataSourceContextShareImpl.js.map +1 -1
- package/lib/cjs/RealityDataSourceTilesetUrlImpl.js.map +1 -1
- package/lib/cjs/SelectionSet.js.map +1 -1
- package/lib/cjs/SheetViewState.js.map +1 -1
- package/lib/cjs/SpatialClassifiersState.js.map +1 -1
- package/lib/cjs/SpatialViewState.js.map +1 -1
- package/lib/cjs/Sprites.js.map +1 -1
- package/lib/cjs/StandardView.js.map +1 -1
- package/lib/cjs/SubCategoriesCache.js.map +1 -1
- package/lib/cjs/TentativePoint.js.map +1 -1
- package/lib/cjs/Tiles.js.map +1 -1
- package/lib/cjs/TxnEntityChanges.js.map +1 -1
- package/lib/cjs/UserPreferences.js.map +1 -1
- package/lib/cjs/ViewAnimation.js.map +1 -1
- package/lib/cjs/ViewContext.js.map +1 -1
- package/lib/cjs/ViewCreator2d.js.map +1 -1
- package/lib/cjs/ViewCreator3d.js.map +1 -1
- package/lib/cjs/ViewGlobalLocation.js.map +1 -1
- package/lib/cjs/ViewManager.js.map +1 -1
- package/lib/cjs/ViewPose.js.map +1 -1
- package/lib/cjs/ViewState.js.map +1 -1
- package/lib/cjs/ViewStatus.js.map +1 -1
- package/lib/cjs/ViewingSpace.js.map +1 -1
- package/lib/cjs/Viewport.js.map +1 -1
- package/lib/cjs/ViewportSync.js.map +1 -1
- package/lib/cjs/common/FrontendLoggerCategory.js.map +1 -1
- package/lib/cjs/common/ImageUtil.js.map +1 -1
- package/lib/cjs/common/ViewRect.js.map +1 -1
- package/lib/cjs/common/WorkerProxy.js.map +1 -1
- package/lib/cjs/common/gltf/GltfModel.js.map +1 -1
- package/lib/cjs/common/gltf/GltfParser.js.map +1 -1
- package/lib/cjs/common/gltf/GltfSchema.js.map +1 -1
- package/lib/cjs/common/imdl/CompactEdges.js.map +1 -1
- package/lib/cjs/common/imdl/ImdlModel.js.map +1 -1
- package/lib/cjs/common/imdl/ImdlSchema.js.map +1 -1
- package/lib/cjs/common/imdl/ParseImdlDocument.js.map +1 -1
- package/lib/cjs/common/internal/Symbols.js.map +1 -1
- package/lib/cjs/common/internal/render/AnimationNodeId.js.map +1 -1
- package/lib/cjs/common/internal/render/AuxChannelTable.js.map +1 -1
- package/lib/cjs/common/internal/render/ColorMap.js.map +1 -1
- package/lib/cjs/common/internal/render/DisplayParams.js.map +1 -1
- package/lib/cjs/common/internal/render/EdgeParams.js.map +1 -1
- package/lib/cjs/common/internal/render/GeometryAccumulator.js.map +1 -1
- package/lib/cjs/common/internal/render/GeometryList.js.map +1 -1
- package/lib/cjs/common/internal/render/GeometryPrimitives.js.map +1 -1
- package/lib/cjs/common/internal/render/GraphicDescriptionBuilderImpl.js.map +1 -1
- package/lib/cjs/common/internal/render/GraphicDescriptionContextImpl.js.map +1 -1
- package/lib/cjs/common/internal/render/InstancedGraphicPropsBuilder.js.map +1 -1
- package/lib/cjs/common/internal/render/LineCode.js.map +1 -1
- package/lib/cjs/common/internal/render/MeshBuilder.js.map +1 -1
- package/lib/cjs/common/internal/render/MeshBuilderMap.js.map +1 -1
- package/lib/cjs/common/internal/render/MeshParams.js.map +1 -1
- package/lib/cjs/common/internal/render/MeshPrimitive.js.map +1 -1
- package/lib/cjs/common/internal/render/MeshPrimitives.js.map +1 -1
- package/lib/cjs/common/internal/render/OvrFlags.js.map +1 -1
- package/lib/cjs/common/internal/render/PointCloudPrimitive.js.map +1 -1
- package/lib/cjs/common/internal/render/PointStringParams.js.map +1 -1
- package/lib/cjs/common/internal/render/Polyface.js.map +1 -1
- package/lib/cjs/common/internal/render/PolylineParams.js.map +1 -1
- package/lib/cjs/common/internal/render/Primitives.js.map +1 -1
- package/lib/cjs/common/internal/render/Strokes.js.map +1 -1
- package/lib/cjs/common/internal/render/SurfaceParams.js.map +1 -1
- package/lib/cjs/common/internal/render/VertexIndices.js.map +1 -1
- package/lib/cjs/common/internal/render/VertexKey.js.map +1 -1
- package/lib/cjs/common/internal/render/VertexTable.js.map +1 -1
- package/lib/cjs/common/internal/render/VertexTableBuilder.js.map +1 -1
- package/lib/cjs/common/internal/render/VertexTableSplitter.js.map +1 -1
- package/lib/cjs/common/render/BatchOptions.js.map +1 -1
- package/lib/cjs/common/render/GraphicAssembler.js.map +1 -1
- package/lib/cjs/common/render/GraphicDescriptionBuilder.js.map +1 -1
- package/lib/cjs/common/render/GraphicDescriptionContext.js.map +1 -1
- package/lib/cjs/common/render/GraphicPrimitive.js.map +1 -1
- package/lib/cjs/common/render/GraphicType.js.map +1 -1
- package/lib/cjs/common/render/InstancedGraphicParams.js.map +1 -1
- package/lib/cjs/common/render/MaterialParams.js.map +1 -1
- package/lib/cjs/common/render/RenderInstancesParams.js.map +1 -1
- package/lib/cjs/common/render/TextureParams.js.map +1 -1
- package/lib/cjs/common.js.map +1 -1
- package/lib/cjs/core-frontend.js.map +1 -1
- package/lib/cjs/extension/Extension.js.map +1 -1
- package/lib/cjs/extension/ExtensionAdmin.js.map +1 -1
- package/lib/cjs/extension/ExtensionHost.js.map +1 -1
- package/lib/cjs/extension/ExtensionRuntime.js.map +1 -1
- package/lib/cjs/extension/providers/ExtensionLoadScript.js.map +1 -1
- package/lib/cjs/extension/providers/LocalExtensionProvider.js.map +1 -1
- package/lib/cjs/extension/providers/RemoteExtensionProvider.js.map +1 -1
- package/lib/cjs/internal/GoogleMapsDecorator.js.map +1 -1
- package/lib/cjs/internal/RealityDataSourceGoogle3dTilesImpl.js.map +1 -1
- package/lib/cjs/internal/ScriptUtils.js.map +1 -1
- package/lib/cjs/internal/cross-package.js.map +1 -1
- package/lib/cjs/internal/render/AnimationBranchState.js.map +1 -1
- package/lib/cjs/internal/render/FrameStatsCollector.js.map +1 -1
- package/lib/cjs/internal/render/GraphicBranchFrustum.js.map +1 -1
- package/lib/cjs/internal/render/GraphicTemplateImpl.js.map +1 -1
- package/lib/cjs/internal/render/MeshMapLayerGraphicParams.js.map +1 -1
- package/lib/cjs/internal/render/MockRender.js.map +1 -1
- package/lib/cjs/internal/render/PrimitiveBuilder.js.map +1 -1
- package/lib/cjs/internal/render/QueryVisibileFeatures.js.map +1 -1
- package/lib/cjs/internal/render/RenderAreaPattern.js.map +1 -1
- package/lib/cjs/internal/render/RenderGeometry.js.map +1 -1
- package/lib/cjs/internal/render/RenderInstancesParamsImpl.js.map +1 -1
- package/lib/cjs/internal/render/RenderMaterialSource.js.map +1 -1
- package/lib/cjs/internal/render/RenderPlan.js.map +1 -1
- package/lib/cjs/internal/render/RenderPlanarClassifier.js.map +1 -1
- package/lib/cjs/internal/render/RenderSkyBoxParams.js.map +1 -1
- package/lib/cjs/internal/render/RenderSystemDebugControl.js.map +1 -1
- package/lib/cjs/internal/render/RenderTargetDebugControl.js.map +1 -1
- package/lib/cjs/internal/render/RenderTerrain.js.map +1 -1
- package/lib/cjs/internal/render/RenderTextureDrape.js.map +1 -1
- package/lib/cjs/internal/render/SceneVolumeClassifier.js.map +1 -1
- package/lib/cjs/internal/render/UpsampleRealityMeshParams.js.map +1 -1
- package/lib/cjs/internal/render/webgl/AtmosphereUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/AttributeBuffers.js.map +1 -1
- package/lib/cjs/internal/render/webgl/AttributeMap.js.map +1 -1
- package/lib/cjs/internal/render/webgl/BackgroundMapDrape.js +1 -1
- package/lib/cjs/internal/render/webgl/BackgroundMapDrape.js.map +1 -1
- package/lib/cjs/internal/render/webgl/BatchState.js.map +1 -1
- package/lib/cjs/internal/render/webgl/BatchUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/BranchStack.js.map +1 -1
- package/lib/cjs/internal/render/webgl/BranchState.js.map +1 -1
- package/lib/cjs/internal/render/webgl/BranchUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/CachedGeometry.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ClipStack.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ClipVolume.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ClippingProgram.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ColorInfo.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ContourUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Contours.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Diagnostics.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Disposable.js.map +1 -1
- package/lib/cjs/internal/render/webgl/DrawCommand.js.map +1 -1
- package/lib/cjs/internal/render/webgl/EDL.js.map +1 -1
- package/lib/cjs/internal/render/webgl/EdgeGeometry.js.map +1 -1
- package/lib/cjs/internal/render/webgl/EdgeSettings.js.map +1 -1
- package/lib/cjs/internal/render/webgl/FeatureOverrides.js.map +1 -1
- package/lib/cjs/internal/render/webgl/FloatRGBA.js.map +1 -1
- package/lib/cjs/internal/render/webgl/FrameBuffer.js.map +1 -1
- package/lib/cjs/internal/render/webgl/FrustumUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/GL.js.map +1 -1
- package/lib/cjs/internal/render/webgl/GLTimer.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Graphic.js.map +1 -1
- package/lib/cjs/internal/render/webgl/HiliteUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/IModelFrameLifecycle.js.map +1 -1
- package/lib/cjs/internal/render/webgl/IndexedEdgeGeometry.js.map +1 -1
- package/lib/cjs/internal/render/webgl/InstancedGeometry.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Layer.js.map +1 -1
- package/lib/cjs/internal/render/webgl/LayerCommands.js.map +1 -1
- package/lib/cjs/internal/render/webgl/LightingUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/LineCode.js.map +1 -1
- package/lib/cjs/internal/render/webgl/MapLayerParams.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Material.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Matrix.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Mesh.js.map +1 -1
- package/lib/cjs/internal/render/webgl/MeshData.js.map +1 -1
- package/lib/cjs/internal/render/webgl/MeshGeometry.js.map +1 -1
- package/lib/cjs/internal/render/webgl/PerformanceMetrics.js.map +1 -1
- package/lib/cjs/internal/render/webgl/PlanarClassifier.js +1 -1
- package/lib/cjs/internal/render/webgl/PlanarClassifier.js.map +1 -1
- package/lib/cjs/internal/render/webgl/PlanarGrid.js.map +1 -1
- package/lib/cjs/internal/render/webgl/PlanarTextureProjection.js.map +1 -1
- package/lib/cjs/internal/render/webgl/PointCloud.js.map +1 -1
- package/lib/cjs/internal/render/webgl/PointString.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Polyline.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Primitive.js.map +1 -1
- package/lib/cjs/internal/render/webgl/RealityMesh.js.map +1 -1
- package/lib/cjs/internal/render/webgl/RealityModelUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/RenderBuffer.js.map +1 -1
- package/lib/cjs/internal/render/webgl/RenderCommands.js.map +1 -1
- package/lib/cjs/internal/render/webgl/RenderFlags.js.map +1 -1
- package/lib/cjs/internal/render/webgl/RenderState.js.map +1 -1
- package/lib/cjs/internal/render/webgl/SceneCompositor.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ScratchDrawParams.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ScreenSpaceEffect.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ShaderBuilder.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ShaderProgram.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ShadowUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/SolarShadowMap.js.map +1 -1
- package/lib/cjs/internal/render/webgl/StyleUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/SurfaceGeometry.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Sync.js.map +1 -1
- package/lib/cjs/internal/render/webgl/System.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Target.js.map +1 -1
- package/lib/cjs/internal/render/webgl/TargetGraphics.js.map +1 -1
- package/lib/cjs/internal/render/webgl/TargetUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Technique.js.map +1 -1
- package/lib/cjs/internal/render/webgl/TechniqueFlags.js.map +1 -1
- package/lib/cjs/internal/render/webgl/TechniqueId.js.map +1 -1
- package/lib/cjs/internal/render/webgl/Texture.js.map +1 -1
- package/lib/cjs/internal/render/webgl/TextureDrape.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ThematicSensors.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ThematicUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/UniformHandle.js.map +1 -1
- package/lib/cjs/internal/render/webgl/VertexLUT.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ViewRectUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/VisibleTileFeatures.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/AmbientOcclusion.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Animation.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Atmosphere.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Blur.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/ClearPickAndColor.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/ClearTranslucent.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Clipping.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Color.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Combine3Textures.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/CombineTextures.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Common.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Composite.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Contours.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/CopyColor.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/CopyPickBuffers.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/CopyStencil.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Decode.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/EDL.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/EVSMFromDepth.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Edge.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/FeatureSymbology.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Fragment.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Instancing.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Lighting.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/LogarithmicDepthBuffer.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/LookupTable.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/MaplayerDraping.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Monochrome.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/PlanarClassification.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/PlanarGrid.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/PointCloud.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/PointString.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Polyline.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/RealityMesh.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/RenderPass.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/ScreenSpaceEffect.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/SkyBox.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/SkySphere.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/SolarShadowMapping.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Surface.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Thematic.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Translucency.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Vertex.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Viewport.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/ViewportQuad.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Wiremesh.js.map +1 -1
- package/lib/cjs/internal/tile/B3dmReader.js.map +1 -1
- package/lib/cjs/internal/tile/BatchedTileIdMap.js.map +1 -1
- package/lib/cjs/internal/tile/CesiumAssetProvider.js.map +1 -1
- package/lib/cjs/internal/tile/ClassifierTileTree.js.map +1 -1
- package/lib/cjs/internal/tile/ContextShareProvider.js.map +1 -1
- package/lib/cjs/internal/tile/DynamicIModelTile.js +1 -0
- package/lib/cjs/internal/tile/DynamicIModelTile.js.map +1 -1
- package/lib/cjs/internal/tile/FetchCloudStorage.js.map +1 -1
- package/lib/cjs/internal/tile/GraphicsCollector.js.map +1 -1
- package/lib/cjs/internal/tile/I3dmReader.js.map +1 -1
- package/lib/cjs/internal/tile/IModelTile.js.map +1 -1
- package/lib/cjs/internal/tile/IModelTileRequestChannels.js.map +1 -1
- package/lib/cjs/internal/tile/IModelTileTree.js.map +1 -1
- package/lib/cjs/internal/tile/ImdlDecoder.js.map +1 -1
- package/lib/cjs/internal/tile/ImdlGraphicsCreator.js.map +1 -1
- package/lib/cjs/internal/tile/ImdlParser.js.map +1 -1
- package/lib/cjs/internal/tile/LRUTileList.js.map +1 -1
- package/lib/cjs/internal/tile/LayerTileTreeHandler.js.map +1 -1
- package/lib/cjs/internal/tile/LayerTileTreeReferenceHandler.js.map +1 -1
- package/lib/cjs/internal/tile/MeshoptCompression.js.map +1 -1
- package/lib/cjs/internal/tile/OPCFormatInterpreter.js.map +1 -1
- package/lib/cjs/internal/tile/OrbitGtTileTree.js.map +1 -1
- package/lib/cjs/internal/tile/PntsReader.js.map +1 -1
- package/lib/cjs/internal/tile/PrimaryTileTree.js.map +1 -1
- package/lib/cjs/internal/tile/RealityModelTileTree.js.map +1 -1
- package/lib/cjs/internal/tile/RealityTileDrawArgs.js.map +1 -1
- package/lib/cjs/internal/tile/RealityTileLoader.js.map +1 -1
- package/lib/cjs/internal/tile/ThreeDTileFormatInterpreter.js.map +1 -1
- package/lib/cjs/internal/tile/TileUserSet.js.map +1 -1
- package/lib/cjs/internal/tile/ViewFlagOverrides.js.map +1 -1
- package/lib/cjs/internal/tile/map/ArcGISTileMap.js.map +1 -1
- package/lib/cjs/internal/tile/map/ArcGisUtilities.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/ArcGISImageryProvider.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/CoordinatesUtils.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/FeatureAttributeDrivenSymbology.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/FeatureGeometryRenderer.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/FeatureGraphicsRenderer.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/FeatureSymbologyRenderer.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/TileUrlImageryProvider.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/WebMercator.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/internal/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/internal/tile/map/MapTileAvailability.js.map +1 -1
- package/lib/cjs/internal/tile/map/MapTileLoader.js.map +1 -1
- package/lib/cjs/internal/tile/map/UrlUtils.js.map +1 -1
- package/lib/cjs/internal/tile/map/WmsCapabilities.js.map +1 -1
- package/lib/cjs/internal/tile/map/WmsUtilities.js.map +1 -1
- package/lib/cjs/internal/tile/map/WmtsCapabilities.js.map +1 -1
- package/lib/cjs/internal/webgl.js.map +1 -1
- package/lib/cjs/properties/AngleDescription.js.map +1 -1
- package/lib/cjs/properties/FormattedQuantityDescription.js.map +1 -1
- package/lib/cjs/properties/LengthDescription.js.map +1 -1
- package/lib/cjs/quantity-formatting/BaseUnitFormattingSettingsProvider.js.map +1 -1
- package/lib/cjs/quantity-formatting/BasicUnitsProvider.js.map +1 -1
- package/lib/cjs/quantity-formatting/LocalUnitFormatProvider.js.map +1 -1
- package/lib/cjs/quantity-formatting/QuantityFormatter.js.map +1 -1
- package/lib/cjs/quantity-formatting/QuantityTypesEditorSpecs.js.map +1 -1
- package/lib/cjs/quantity-formatting/UnitsData.js.map +1 -1
- package/lib/cjs/render/CanvasDecoration.js.map +1 -1
- package/lib/cjs/render/CreateRenderMaterialArgs.js.map +1 -1
- package/lib/cjs/render/CreateTextureArgs.js.map +1 -1
- package/lib/cjs/render/Decorations.js.map +1 -1
- package/lib/cjs/render/FeatureSymbology.js.map +1 -1
- package/lib/cjs/render/FrameStats.js.map +1 -1
- package/lib/cjs/render/GraphicBranch.js.map +1 -1
- package/lib/cjs/render/GraphicBuilder.js.map +1 -1
- package/lib/cjs/render/GraphicTemplate.js.map +1 -1
- package/lib/cjs/render/MeshArgs.js.map +1 -1
- package/lib/cjs/render/ParticleCollectionBuilder.js.map +1 -1
- package/lib/cjs/render/Pixel.js.map +1 -1
- package/lib/cjs/render/PolylineArgs.js.map +1 -1
- package/lib/cjs/render/RealityMeshParams.js.map +1 -1
- package/lib/cjs/render/RenderClipVolume.js.map +1 -1
- package/lib/cjs/render/RenderGraphic.js.map +1 -1
- package/lib/cjs/render/RenderMemory.js.map +1 -1
- package/lib/cjs/render/RenderSystem.js.map +1 -1
- package/lib/cjs/render/RenderTarget.js.map +1 -1
- package/lib/cjs/render/Scene.js.map +1 -1
- package/lib/cjs/render/ScreenSpaceEffectBuilder.js.map +1 -1
- package/lib/cjs/render/VisibleFeature.js.map +1 -1
- package/lib/cjs/request/Request.js.map +1 -1
- package/lib/cjs/request/utils.js.map +1 -1
- package/lib/cjs/tile/DisclosedTileTreeSet.js.map +1 -1
- package/lib/cjs/tile/GltfReader.js.map +1 -1
- package/lib/cjs/tile/ImdlReader.js.map +1 -1
- package/lib/cjs/tile/RealityTile.js.map +1 -1
- package/lib/cjs/tile/RealityTileTree.js.map +1 -1
- package/lib/cjs/tile/RenderGraphicTileTree.js.map +1 -1
- package/lib/cjs/tile/Tile.js.map +1 -1
- package/lib/cjs/tile/TileAdmin.js.map +1 -1
- package/lib/cjs/tile/TileContent.js.map +1 -1
- package/lib/cjs/tile/TileDrawArgs.js.map +1 -1
- package/lib/cjs/tile/TileGeometryCollector.js.map +1 -1
- package/lib/cjs/tile/TileParams.js.map +1 -1
- package/lib/cjs/tile/TileRequest.js.map +1 -1
- package/lib/cjs/tile/TileRequestChannel.js.map +1 -1
- package/lib/cjs/tile/TileRequestChannels.js.map +1 -1
- package/lib/cjs/tile/TileStorage.js.map +1 -1
- package/lib/cjs/tile/TileTree.js.map +1 -1
- package/lib/cjs/tile/TileTreeOwner.js.map +1 -1
- package/lib/cjs/tile/TileTreeParams.js.map +1 -1
- package/lib/cjs/tile/TileTreeReference.js.map +1 -1
- package/lib/cjs/tile/TileTreeSupplier.js.map +1 -1
- package/lib/cjs/tile/TileUsageMarker.js.map +1 -1
- package/lib/cjs/tile/TileUser.js.map +1 -1
- package/lib/cjs/tile/TiledGraphicsProvider.js.map +1 -1
- package/lib/cjs/tile/internal.js.map +1 -1
- package/lib/cjs/tile/map/BingElevation.js.map +1 -1
- package/lib/cjs/tile/map/CesiumTerrainProvider.js.map +1 -1
- package/lib/cjs/tile/map/EllipsoidTerrainProvider.js.map +1 -1
- package/lib/cjs/tile/map/ImageryTileTree.js.map +1 -1
- package/lib/cjs/tile/map/MapCartoRectangle.js.map +1 -1
- package/lib/cjs/tile/map/MapFeatureInfo.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerAuthentication.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerFormatRegistry.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerImageryFormats.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerImageryProvider.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerSources.js.map +1 -1
- package/lib/cjs/tile/map/MapLayerTileTreeReference.js.map +1 -1
- package/lib/cjs/tile/map/MapTile.js.map +1 -1
- package/lib/cjs/tile/map/MapTileTree.js.map +1 -1
- package/lib/cjs/tile/map/MapTiledGraphicsProvider.js.map +1 -1
- package/lib/cjs/tile/map/MapTilingScheme.js.map +1 -1
- package/lib/cjs/tile/map/QuadId.js.map +1 -1
- package/lib/cjs/tile/map/TerrainMeshProvider.js.map +1 -1
- package/lib/cjs/tile/map/TerrainProvider.js.map +1 -1
- package/lib/cjs/tools/AccuDrawTool.js.map +1 -1
- package/lib/cjs/tools/AccuDrawViewportUI.js.map +1 -1
- package/lib/cjs/tools/ClipViewTool.js.map +1 -1
- package/lib/cjs/tools/EditManipulator.js.map +1 -1
- package/lib/cjs/tools/ElementSetTool.js.map +1 -1
- package/lib/cjs/tools/EventController.js.map +1 -1
- package/lib/cjs/tools/IdleTool.js.map +1 -1
- package/lib/cjs/tools/MeasureTool.js.map +1 -1
- package/lib/cjs/tools/PrimitiveTool.js.map +1 -1
- package/lib/cjs/tools/SelectTool.js.map +1 -1
- package/lib/cjs/tools/Tool.js.map +1 -1
- package/lib/cjs/tools/ToolAdmin.js.map +1 -1
- package/lib/cjs/tools/ToolAssistance.js.map +1 -1
- package/lib/cjs/tools/ToolSettings.js.map +1 -1
- package/lib/cjs/tools/ViewTool.js.map +1 -1
- package/lib/cjs/workers/ImdlParser/Worker.js.map +1 -1
- package/lib/cjs/workers/RegisterWorker.js.map +1 -1
- package/lib/esm/AccuDraw.js.map +1 -1
- package/lib/esm/AccuSnap.js.map +1 -1
- package/lib/esm/ApproximateTerrainHeights.js.map +1 -1
- package/lib/esm/ApproximateTerrainHeightsProps.js.map +1 -1
- package/lib/esm/AuxCoordSys.js.map +1 -1
- package/lib/esm/BackgroundMapGeometry.js.map +1 -1
- package/lib/esm/BingLocation.js.map +1 -1
- package/lib/esm/BriefcaseConnection.js.map +1 -1
- package/lib/esm/BriefcaseTxns.js.map +1 -1
- package/lib/esm/CatalogConnection.js.map +1 -1
- package/lib/esm/CategorySelectorState.js.map +1 -1
- package/lib/esm/ChangeFlags.js.map +1 -1
- package/lib/esm/CheckpointConnection.js.map +1 -1
- package/lib/esm/ContextRealityModelState.js.map +1 -1
- package/lib/esm/CoordSystem.js.map +1 -1
- package/lib/esm/DecorationsCache.js.map +1 -1
- package/lib/esm/DevTools.js.map +1 -1
- package/lib/esm/DisplayStyleState.js.map +1 -1
- package/lib/esm/DrawingViewState.js.map +1 -1
- package/lib/esm/ElementLocateManager.js.map +1 -1
- package/lib/esm/EmphasizeElements.js.map +1 -1
- package/lib/esm/EntityState.js.map +1 -1
- package/lib/esm/EnvironmentDecorations.js.map +1 -1
- package/lib/esm/FeatureOverrideProvider.js.map +1 -1
- package/lib/esm/FlashSettings.js.map +1 -1
- package/lib/esm/FrontendHubAccess.js.map +1 -1
- package/lib/esm/Frustum2d.js.map +1 -1
- package/lib/esm/FrustumAnimator.js.map +1 -1
- package/lib/esm/FuzzySearch.js.map +1 -1
- package/lib/esm/GeoServices.js.map +1 -1
- package/lib/esm/GlobeAnimator.js.map +1 -1
- package/lib/esm/GraphicalEditingScope.js.map +1 -1
- package/lib/esm/HitDetail.js.map +1 -1
- package/lib/esm/IModelApp.js.map +1 -1
- package/lib/esm/IModelConnection.js.map +1 -1
- package/lib/esm/IModelRoutingContext.js.map +1 -1
- package/lib/esm/IModeljs-css.js.map +1 -1
- package/lib/esm/IpcApp.js.map +1 -1
- package/lib/esm/LinePlaneIntersect.js.map +1 -1
- package/lib/esm/LocalhostIpcApp.js.map +1 -1
- package/lib/esm/MarginPercent.js.map +1 -1
- package/lib/esm/Marker.js.map +1 -1
- package/lib/esm/ModelSelectorState.js.map +1 -1
- package/lib/esm/ModelState.js.map +1 -1
- package/lib/esm/NativeApp.js.map +1 -1
- package/lib/esm/NativeAppLogger.js.map +1 -1
- package/lib/esm/NoRenderApp.js.map +1 -1
- package/lib/esm/NotificationManager.js.map +1 -1
- package/lib/esm/PerModelCategoryVisibility.js.map +1 -1
- package/lib/esm/PlanarClipMaskState.js.map +1 -1
- package/lib/esm/RealityDataSource.js.map +1 -1
- package/lib/esm/RealityDataSourceCesiumIonAssetImpl.js.map +1 -1
- package/lib/esm/RealityDataSourceContextShareImpl.js.map +1 -1
- package/lib/esm/RealityDataSourceTilesetUrlImpl.js.map +1 -1
- package/lib/esm/SelectionSet.js.map +1 -1
- package/lib/esm/SheetViewState.js.map +1 -1
- package/lib/esm/SpatialClassifiersState.js.map +1 -1
- package/lib/esm/SpatialViewState.js.map +1 -1
- package/lib/esm/Sprites.js.map +1 -1
- package/lib/esm/StandardView.js.map +1 -1
- package/lib/esm/SubCategoriesCache.js.map +1 -1
- package/lib/esm/TentativePoint.js.map +1 -1
- package/lib/esm/Tiles.js.map +1 -1
- package/lib/esm/TxnEntityChanges.js.map +1 -1
- package/lib/esm/UserPreferences.js.map +1 -1
- package/lib/esm/ViewAnimation.js.map +1 -1
- package/lib/esm/ViewContext.js.map +1 -1
- package/lib/esm/ViewCreator2d.js.map +1 -1
- package/lib/esm/ViewCreator3d.js.map +1 -1
- package/lib/esm/ViewGlobalLocation.js.map +1 -1
- package/lib/esm/ViewManager.js.map +1 -1
- package/lib/esm/ViewPose.js.map +1 -1
- package/lib/esm/ViewState.js.map +1 -1
- package/lib/esm/ViewStatus.js.map +1 -1
- package/lib/esm/ViewingSpace.js.map +1 -1
- package/lib/esm/Viewport.js.map +1 -1
- package/lib/esm/ViewportSync.js.map +1 -1
- package/lib/esm/common/FrontendLoggerCategory.js.map +1 -1
- package/lib/esm/common/ImageUtil.js.map +1 -1
- package/lib/esm/common/ViewRect.js.map +1 -1
- package/lib/esm/common/WorkerProxy.js.map +1 -1
- package/lib/esm/common/gltf/GltfModel.js.map +1 -1
- package/lib/esm/common/gltf/GltfParser.js.map +1 -1
- package/lib/esm/common/gltf/GltfSchema.js.map +1 -1
- package/lib/esm/common/imdl/CompactEdges.js.map +1 -1
- package/lib/esm/common/imdl/ImdlModel.js.map +1 -1
- package/lib/esm/common/imdl/ImdlSchema.js.map +1 -1
- package/lib/esm/common/imdl/ParseImdlDocument.js.map +1 -1
- package/lib/esm/common/internal/Symbols.js.map +1 -1
- package/lib/esm/common/internal/render/AnimationNodeId.js.map +1 -1
- package/lib/esm/common/internal/render/AuxChannelTable.js.map +1 -1
- package/lib/esm/common/internal/render/ColorMap.js.map +1 -1
- package/lib/esm/common/internal/render/DisplayParams.js.map +1 -1
- package/lib/esm/common/internal/render/EdgeParams.js.map +1 -1
- package/lib/esm/common/internal/render/GeometryAccumulator.js.map +1 -1
- package/lib/esm/common/internal/render/GeometryList.js.map +1 -1
- package/lib/esm/common/internal/render/GeometryPrimitives.js.map +1 -1
- package/lib/esm/common/internal/render/GraphicDescriptionBuilderImpl.js.map +1 -1
- package/lib/esm/common/internal/render/GraphicDescriptionContextImpl.js.map +1 -1
- package/lib/esm/common/internal/render/InstancedGraphicPropsBuilder.js.map +1 -1
- package/lib/esm/common/internal/render/LineCode.js.map +1 -1
- package/lib/esm/common/internal/render/MeshBuilder.js.map +1 -1
- package/lib/esm/common/internal/render/MeshBuilderMap.js.map +1 -1
- package/lib/esm/common/internal/render/MeshParams.js.map +1 -1
- package/lib/esm/common/internal/render/MeshPrimitive.js.map +1 -1
- package/lib/esm/common/internal/render/MeshPrimitives.js.map +1 -1
- package/lib/esm/common/internal/render/OvrFlags.js.map +1 -1
- package/lib/esm/common/internal/render/PointCloudPrimitive.js.map +1 -1
- package/lib/esm/common/internal/render/PointStringParams.js.map +1 -1
- package/lib/esm/common/internal/render/Polyface.js.map +1 -1
- package/lib/esm/common/internal/render/PolylineParams.js.map +1 -1
- package/lib/esm/common/internal/render/Primitives.js.map +1 -1
- package/lib/esm/common/internal/render/Strokes.js.map +1 -1
- package/lib/esm/common/internal/render/SurfaceParams.js.map +1 -1
- package/lib/esm/common/internal/render/VertexIndices.js.map +1 -1
- package/lib/esm/common/internal/render/VertexKey.js.map +1 -1
- package/lib/esm/common/internal/render/VertexTable.js.map +1 -1
- package/lib/esm/common/internal/render/VertexTableBuilder.js.map +1 -1
- package/lib/esm/common/internal/render/VertexTableSplitter.js.map +1 -1
- package/lib/esm/common/render/BatchOptions.js.map +1 -1
- package/lib/esm/common/render/GraphicAssembler.js.map +1 -1
- package/lib/esm/common/render/GraphicDescriptionBuilder.js.map +1 -1
- package/lib/esm/common/render/GraphicDescriptionContext.js.map +1 -1
- package/lib/esm/common/render/GraphicPrimitive.js.map +1 -1
- package/lib/esm/common/render/GraphicType.js.map +1 -1
- package/lib/esm/common/render/InstancedGraphicParams.js.map +1 -1
- package/lib/esm/common/render/MaterialParams.js.map +1 -1
- package/lib/esm/common/render/RenderInstancesParams.js.map +1 -1
- package/lib/esm/common/render/TextureParams.js.map +1 -1
- package/lib/esm/common.js.map +1 -1
- package/lib/esm/core-frontend.js.map +1 -1
- package/lib/esm/extension/Extension.js.map +1 -1
- package/lib/esm/extension/ExtensionAdmin.js.map +1 -1
- package/lib/esm/extension/ExtensionHost.js.map +1 -1
- package/lib/esm/extension/ExtensionRuntime.js.map +1 -1
- package/lib/esm/extension/providers/ExtensionLoadScript.js.map +1 -1
- package/lib/esm/extension/providers/LocalExtensionProvider.js.map +1 -1
- package/lib/esm/extension/providers/RemoteExtensionProvider.js.map +1 -1
- package/lib/esm/internal/GoogleMapsDecorator.js.map +1 -1
- package/lib/esm/internal/RealityDataSourceGoogle3dTilesImpl.js.map +1 -1
- package/lib/esm/internal/ScriptUtils.js.map +1 -1
- package/lib/esm/internal/cross-package.js.map +1 -1
- package/lib/esm/internal/render/AnimationBranchState.js.map +1 -1
- package/lib/esm/internal/render/FrameStatsCollector.js.map +1 -1
- package/lib/esm/internal/render/GraphicBranchFrustum.js.map +1 -1
- package/lib/esm/internal/render/GraphicTemplateImpl.js.map +1 -1
- package/lib/esm/internal/render/MeshMapLayerGraphicParams.js.map +1 -1
- package/lib/esm/internal/render/MockRender.js.map +1 -1
- package/lib/esm/internal/render/PrimitiveBuilder.js.map +1 -1
- package/lib/esm/internal/render/QueryVisibileFeatures.js.map +1 -1
- package/lib/esm/internal/render/RenderAreaPattern.js.map +1 -1
- package/lib/esm/internal/render/RenderGeometry.js.map +1 -1
- package/lib/esm/internal/render/RenderInstancesParamsImpl.js.map +1 -1
- package/lib/esm/internal/render/RenderMaterialSource.js.map +1 -1
- package/lib/esm/internal/render/RenderPlan.js.map +1 -1
- package/lib/esm/internal/render/RenderPlanarClassifier.js.map +1 -1
- package/lib/esm/internal/render/RenderSkyBoxParams.js.map +1 -1
- package/lib/esm/internal/render/RenderSystemDebugControl.js.map +1 -1
- package/lib/esm/internal/render/RenderTargetDebugControl.js.map +1 -1
- package/lib/esm/internal/render/RenderTerrain.js.map +1 -1
- package/lib/esm/internal/render/RenderTextureDrape.js.map +1 -1
- package/lib/esm/internal/render/SceneVolumeClassifier.js.map +1 -1
- package/lib/esm/internal/render/UpsampleRealityMeshParams.js.map +1 -1
- package/lib/esm/internal/render/webgl/AtmosphereUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/AttributeBuffers.js.map +1 -1
- package/lib/esm/internal/render/webgl/AttributeMap.js.map +1 -1
- package/lib/esm/internal/render/webgl/BackgroundMapDrape.js +1 -1
- package/lib/esm/internal/render/webgl/BackgroundMapDrape.js.map +1 -1
- package/lib/esm/internal/render/webgl/BatchState.js.map +1 -1
- package/lib/esm/internal/render/webgl/BatchUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/BranchStack.js.map +1 -1
- package/lib/esm/internal/render/webgl/BranchState.js.map +1 -1
- package/lib/esm/internal/render/webgl/BranchUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/CachedGeometry.js.map +1 -1
- package/lib/esm/internal/render/webgl/ClipStack.js.map +1 -1
- package/lib/esm/internal/render/webgl/ClipVolume.js.map +1 -1
- package/lib/esm/internal/render/webgl/ClippingProgram.js.map +1 -1
- package/lib/esm/internal/render/webgl/ColorInfo.js.map +1 -1
- package/lib/esm/internal/render/webgl/ContourUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/Contours.js.map +1 -1
- package/lib/esm/internal/render/webgl/Diagnostics.js.map +1 -1
- package/lib/esm/internal/render/webgl/Disposable.js.map +1 -1
- package/lib/esm/internal/render/webgl/DrawCommand.js.map +1 -1
- package/lib/esm/internal/render/webgl/EDL.js.map +1 -1
- package/lib/esm/internal/render/webgl/EdgeGeometry.js.map +1 -1
- package/lib/esm/internal/render/webgl/EdgeSettings.js.map +1 -1
- package/lib/esm/internal/render/webgl/FeatureOverrides.js.map +1 -1
- package/lib/esm/internal/render/webgl/FloatRGBA.js.map +1 -1
- package/lib/esm/internal/render/webgl/FrameBuffer.js.map +1 -1
- package/lib/esm/internal/render/webgl/FrustumUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/GL.js.map +1 -1
- package/lib/esm/internal/render/webgl/GLTimer.js.map +1 -1
- package/lib/esm/internal/render/webgl/Graphic.js.map +1 -1
- package/lib/esm/internal/render/webgl/HiliteUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/IModelFrameLifecycle.js.map +1 -1
- package/lib/esm/internal/render/webgl/IndexedEdgeGeometry.js.map +1 -1
- package/lib/esm/internal/render/webgl/InstancedGeometry.js.map +1 -1
- package/lib/esm/internal/render/webgl/Layer.js.map +1 -1
- package/lib/esm/internal/render/webgl/LayerCommands.js.map +1 -1
- package/lib/esm/internal/render/webgl/LightingUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/LineCode.js.map +1 -1
- package/lib/esm/internal/render/webgl/MapLayerParams.js.map +1 -1
- package/lib/esm/internal/render/webgl/Material.js.map +1 -1
- package/lib/esm/internal/render/webgl/Matrix.js.map +1 -1
- package/lib/esm/internal/render/webgl/Mesh.js.map +1 -1
- package/lib/esm/internal/render/webgl/MeshData.js.map +1 -1
- package/lib/esm/internal/render/webgl/MeshGeometry.js.map +1 -1
- package/lib/esm/internal/render/webgl/PerformanceMetrics.js.map +1 -1
- package/lib/esm/internal/render/webgl/PlanarClassifier.js +1 -1
- package/lib/esm/internal/render/webgl/PlanarClassifier.js.map +1 -1
- package/lib/esm/internal/render/webgl/PlanarGrid.js.map +1 -1
- package/lib/esm/internal/render/webgl/PlanarTextureProjection.js.map +1 -1
- package/lib/esm/internal/render/webgl/PointCloud.js.map +1 -1
- package/lib/esm/internal/render/webgl/PointString.js.map +1 -1
- package/lib/esm/internal/render/webgl/Polyline.js.map +1 -1
- package/lib/esm/internal/render/webgl/Primitive.js.map +1 -1
- package/lib/esm/internal/render/webgl/RealityMesh.js.map +1 -1
- package/lib/esm/internal/render/webgl/RealityModelUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/RenderBuffer.js.map +1 -1
- package/lib/esm/internal/render/webgl/RenderCommands.js.map +1 -1
- package/lib/esm/internal/render/webgl/RenderFlags.js.map +1 -1
- package/lib/esm/internal/render/webgl/RenderState.js.map +1 -1
- package/lib/esm/internal/render/webgl/SceneCompositor.js.map +1 -1
- package/lib/esm/internal/render/webgl/ScratchDrawParams.js.map +1 -1
- package/lib/esm/internal/render/webgl/ScreenSpaceEffect.js.map +1 -1
- package/lib/esm/internal/render/webgl/ShaderBuilder.js.map +1 -1
- package/lib/esm/internal/render/webgl/ShaderProgram.js.map +1 -1
- package/lib/esm/internal/render/webgl/ShadowUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/SolarShadowMap.js.map +1 -1
- package/lib/esm/internal/render/webgl/StyleUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/SurfaceGeometry.js.map +1 -1
- package/lib/esm/internal/render/webgl/Sync.js.map +1 -1
- package/lib/esm/internal/render/webgl/System.js.map +1 -1
- package/lib/esm/internal/render/webgl/Target.js.map +1 -1
- package/lib/esm/internal/render/webgl/TargetGraphics.js.map +1 -1
- package/lib/esm/internal/render/webgl/TargetUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/Technique.js.map +1 -1
- package/lib/esm/internal/render/webgl/TechniqueFlags.js.map +1 -1
- package/lib/esm/internal/render/webgl/TechniqueId.js.map +1 -1
- package/lib/esm/internal/render/webgl/Texture.js.map +1 -1
- package/lib/esm/internal/render/webgl/TextureDrape.js.map +1 -1
- package/lib/esm/internal/render/webgl/ThematicSensors.js.map +1 -1
- package/lib/esm/internal/render/webgl/ThematicUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/UniformHandle.js.map +1 -1
- package/lib/esm/internal/render/webgl/VertexLUT.js.map +1 -1
- package/lib/esm/internal/render/webgl/ViewRectUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/VisibleTileFeatures.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/AmbientOcclusion.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Animation.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Atmosphere.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Blur.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/ClearPickAndColor.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/ClearTranslucent.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Clipping.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Color.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Combine3Textures.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/CombineTextures.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Common.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Composite.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Contours.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/CopyColor.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/CopyPickBuffers.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/CopyStencil.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Decode.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/EDL.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/EVSMFromDepth.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Edge.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/FeatureSymbology.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Fragment.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Instancing.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Lighting.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/LogarithmicDepthBuffer.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/LookupTable.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/MaplayerDraping.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Monochrome.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/PlanarClassification.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/PlanarGrid.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/PointCloud.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/PointString.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Polyline.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/RealityMesh.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/RenderPass.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/ScreenSpaceEffect.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/SkyBox.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/SkySphere.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/SolarShadowMapping.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Surface.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Thematic.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Translucency.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Vertex.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Viewport.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/ViewportQuad.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Wiremesh.js.map +1 -1
- package/lib/esm/internal/tile/B3dmReader.js.map +1 -1
- package/lib/esm/internal/tile/BatchedTileIdMap.js.map +1 -1
- package/lib/esm/internal/tile/CesiumAssetProvider.js.map +1 -1
- package/lib/esm/internal/tile/ClassifierTileTree.js.map +1 -1
- package/lib/esm/internal/tile/ContextShareProvider.js.map +1 -1
- package/lib/esm/internal/tile/DynamicIModelTile.js +1 -0
- package/lib/esm/internal/tile/DynamicIModelTile.js.map +1 -1
- package/lib/esm/internal/tile/FetchCloudStorage.js.map +1 -1
- package/lib/esm/internal/tile/GraphicsCollector.js.map +1 -1
- package/lib/esm/internal/tile/I3dmReader.js.map +1 -1
- package/lib/esm/internal/tile/IModelTile.js.map +1 -1
- package/lib/esm/internal/tile/IModelTileRequestChannels.js.map +1 -1
- package/lib/esm/internal/tile/IModelTileTree.js.map +1 -1
- package/lib/esm/internal/tile/ImdlDecoder.js.map +1 -1
- package/lib/esm/internal/tile/ImdlGraphicsCreator.js.map +1 -1
- package/lib/esm/internal/tile/ImdlParser.js.map +1 -1
- package/lib/esm/internal/tile/LRUTileList.js.map +1 -1
- package/lib/esm/internal/tile/LayerTileTreeHandler.js.map +1 -1
- package/lib/esm/internal/tile/LayerTileTreeReferenceHandler.js.map +1 -1
- package/lib/esm/internal/tile/MeshoptCompression.js.map +1 -1
- package/lib/esm/internal/tile/OPCFormatInterpreter.js.map +1 -1
- package/lib/esm/internal/tile/OrbitGtTileTree.js.map +1 -1
- package/lib/esm/internal/tile/PntsReader.js.map +1 -1
- package/lib/esm/internal/tile/PrimaryTileTree.js.map +1 -1
- package/lib/esm/internal/tile/RealityModelTileTree.js.map +1 -1
- package/lib/esm/internal/tile/RealityTileDrawArgs.js.map +1 -1
- package/lib/esm/internal/tile/RealityTileLoader.js.map +1 -1
- package/lib/esm/internal/tile/ThreeDTileFormatInterpreter.js.map +1 -1
- package/lib/esm/internal/tile/TileUserSet.js.map +1 -1
- package/lib/esm/internal/tile/ViewFlagOverrides.js.map +1 -1
- package/lib/esm/internal/tile/map/ArcGISTileMap.js.map +1 -1
- package/lib/esm/internal/tile/map/ArcGisUtilities.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/ArcGISImageryProvider.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/ArcGisGeometryReaderJSON.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/AzureMapsLayerImageryProvider.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/CoordinatesUtils.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/FeatureAttributeDrivenSymbology.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/FeatureGeometryRenderer.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/FeatureGraphicsRenderer.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/FeatureSymbologyRenderer.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/TileUrlImageryProvider.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/WebMercator.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/WmsMapLayerImageryProvider.js.map +1 -1
- package/lib/esm/internal/tile/map/ImageryProviders/WmtsMapLayerImageryProvider.js.map +1 -1
- package/lib/esm/internal/tile/map/MapTileAvailability.js.map +1 -1
- package/lib/esm/internal/tile/map/MapTileLoader.js.map +1 -1
- package/lib/esm/internal/tile/map/UrlUtils.js.map +1 -1
- package/lib/esm/internal/tile/map/WmsCapabilities.js.map +1 -1
- package/lib/esm/internal/tile/map/WmsUtilities.js.map +1 -1
- package/lib/esm/internal/tile/map/WmtsCapabilities.js.map +1 -1
- package/lib/esm/internal/webgl.js.map +1 -1
- package/lib/esm/properties/AngleDescription.js.map +1 -1
- package/lib/esm/properties/FormattedQuantityDescription.js.map +1 -1
- package/lib/esm/properties/LengthDescription.js.map +1 -1
- package/lib/esm/quantity-formatting/BaseUnitFormattingSettingsProvider.js.map +1 -1
- package/lib/esm/quantity-formatting/BasicUnitsProvider.js.map +1 -1
- package/lib/esm/quantity-formatting/LocalUnitFormatProvider.js.map +1 -1
- package/lib/esm/quantity-formatting/QuantityFormatter.js.map +1 -1
- package/lib/esm/quantity-formatting/QuantityTypesEditorSpecs.js.map +1 -1
- package/lib/esm/quantity-formatting/UnitsData.js.map +1 -1
- package/lib/esm/render/CanvasDecoration.js.map +1 -1
- package/lib/esm/render/CreateRenderMaterialArgs.js.map +1 -1
- package/lib/esm/render/CreateTextureArgs.js.map +1 -1
- package/lib/esm/render/Decorations.js.map +1 -1
- package/lib/esm/render/FeatureSymbology.js.map +1 -1
- package/lib/esm/render/FrameStats.js.map +1 -1
- package/lib/esm/render/GraphicBranch.js.map +1 -1
- package/lib/esm/render/GraphicBuilder.js.map +1 -1
- package/lib/esm/render/GraphicTemplate.js.map +1 -1
- package/lib/esm/render/MeshArgs.js.map +1 -1
- package/lib/esm/render/ParticleCollectionBuilder.js.map +1 -1
- package/lib/esm/render/Pixel.js.map +1 -1
- package/lib/esm/render/PolylineArgs.js.map +1 -1
- package/lib/esm/render/RealityMeshParams.js.map +1 -1
- package/lib/esm/render/RenderClipVolume.js.map +1 -1
- package/lib/esm/render/RenderGraphic.js.map +1 -1
- package/lib/esm/render/RenderMemory.js.map +1 -1
- package/lib/esm/render/RenderSystem.js.map +1 -1
- package/lib/esm/render/RenderTarget.js.map +1 -1
- package/lib/esm/render/Scene.js.map +1 -1
- package/lib/esm/render/ScreenSpaceEffectBuilder.js.map +1 -1
- package/lib/esm/render/VisibleFeature.js.map +1 -1
- package/lib/esm/request/Request.js.map +1 -1
- package/lib/esm/request/utils.js.map +1 -1
- package/lib/esm/tile/DisclosedTileTreeSet.js.map +1 -1
- package/lib/esm/tile/GltfReader.js.map +1 -1
- package/lib/esm/tile/ImdlReader.js.map +1 -1
- package/lib/esm/tile/RealityTile.js.map +1 -1
- package/lib/esm/tile/RealityTileTree.js.map +1 -1
- package/lib/esm/tile/RenderGraphicTileTree.js.map +1 -1
- package/lib/esm/tile/Tile.js.map +1 -1
- package/lib/esm/tile/TileAdmin.js.map +1 -1
- package/lib/esm/tile/TileContent.js.map +1 -1
- package/lib/esm/tile/TileDrawArgs.js.map +1 -1
- package/lib/esm/tile/TileGeometryCollector.js.map +1 -1
- package/lib/esm/tile/TileParams.js.map +1 -1
- package/lib/esm/tile/TileRequest.js.map +1 -1
- package/lib/esm/tile/TileRequestChannel.js.map +1 -1
- package/lib/esm/tile/TileRequestChannels.js.map +1 -1
- package/lib/esm/tile/TileStorage.js.map +1 -1
- package/lib/esm/tile/TileTree.js.map +1 -1
- package/lib/esm/tile/TileTreeOwner.js.map +1 -1
- package/lib/esm/tile/TileTreeParams.js.map +1 -1
- package/lib/esm/tile/TileTreeReference.js.map +1 -1
- package/lib/esm/tile/TileTreeSupplier.js.map +1 -1
- package/lib/esm/tile/TileUsageMarker.js.map +1 -1
- package/lib/esm/tile/TileUser.js.map +1 -1
- package/lib/esm/tile/TiledGraphicsProvider.js.map +1 -1
- package/lib/esm/tile/internal.js.map +1 -1
- package/lib/esm/tile/map/BingElevation.js.map +1 -1
- package/lib/esm/tile/map/CesiumTerrainProvider.js.map +1 -1
- package/lib/esm/tile/map/EllipsoidTerrainProvider.js.map +1 -1
- package/lib/esm/tile/map/ImageryTileTree.js.map +1 -1
- package/lib/esm/tile/map/MapCartoRectangle.js.map +1 -1
- package/lib/esm/tile/map/MapFeatureInfo.js.map +1 -1
- package/lib/esm/tile/map/MapLayerAuthentication.js.map +1 -1
- package/lib/esm/tile/map/MapLayerFormatRegistry.js.map +1 -1
- package/lib/esm/tile/map/MapLayerImageryFormats.js.map +1 -1
- package/lib/esm/tile/map/MapLayerImageryProvider.js.map +1 -1
- package/lib/esm/tile/map/MapLayerSources.js.map +1 -1
- package/lib/esm/tile/map/MapLayerTileTreeReference.js.map +1 -1
- package/lib/esm/tile/map/MapTile.js.map +1 -1
- package/lib/esm/tile/map/MapTileTree.js.map +1 -1
- package/lib/esm/tile/map/MapTiledGraphicsProvider.js.map +1 -1
- package/lib/esm/tile/map/MapTilingScheme.js.map +1 -1
- package/lib/esm/tile/map/QuadId.js.map +1 -1
- package/lib/esm/tile/map/TerrainMeshProvider.js.map +1 -1
- package/lib/esm/tile/map/TerrainProvider.js.map +1 -1
- package/lib/esm/tools/AccuDrawTool.js.map +1 -1
- package/lib/esm/tools/AccuDrawViewportUI.js.map +1 -1
- package/lib/esm/tools/ClipViewTool.js.map +1 -1
- package/lib/esm/tools/EditManipulator.js.map +1 -1
- package/lib/esm/tools/ElementSetTool.js.map +1 -1
- package/lib/esm/tools/EventController.js.map +1 -1
- package/lib/esm/tools/IdleTool.js.map +1 -1
- package/lib/esm/tools/MeasureTool.js.map +1 -1
- package/lib/esm/tools/PrimitiveTool.js.map +1 -1
- package/lib/esm/tools/SelectTool.js.map +1 -1
- package/lib/esm/tools/Tool.js.map +1 -1
- package/lib/esm/tools/ToolAdmin.js.map +1 -1
- package/lib/esm/tools/ToolAssistance.js.map +1 -1
- package/lib/esm/tools/ToolSettings.js.map +1 -1
- package/lib/esm/tools/ViewTool.js.map +1 -1
- package/lib/esm/workers/ImdlParser/Worker.js.map +1 -1
- package/lib/esm/workers/RegisterWorker.js.map +1 -1
- package/package.json +20 -20
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QuantityFormatter.js","sourceRoot":"","sources":["../../../src/quantity-formatting/QuantityFormatter.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 QuantityFormatting\r\n */\r\n\r\nimport { BeEvent, BentleyError, BeUiEvent, Logger } from \"@itwin/core-bentley\";\r\nimport {\r\n AlternateUnitLabelsProvider, Format, FormatDefinition, FormatProps, FormatsChangedArgs, FormatsProvider, FormatterSpec, ParseError, ParserSpec, QuantityParseResult,\r\n UnitConversionProps, UnitProps, UnitsProvider, UnitSystemKey,\r\n} from \"@itwin/core-quantity\";\r\nimport { FrontendLoggerCategory } from \"../common/FrontendLoggerCategory\";\r\nimport { IModelApp } from \"../IModelApp\";\r\nimport { IModelConnection } from \"../IModelConnection\";\r\nimport { BasicUnitsProvider, getDefaultAlternateUnitLabels } from \"./BasicUnitsProvider\";\r\nimport { CustomFormatPropEditorSpec } from \"./QuantityTypesEditorSpecs\";\r\n\r\n// cSpell:ignore FORMATPROPS FORMATKEY ussurvey uscustomary USCUSTOM\r\n\r\n/**\r\n * Defines standard format types for tools that need to display measurements to user.\r\n * @public\r\n */\r\nexport enum QuantityType {\r\n /** Length which is stored in meters. Typically formatted to display in meters or feet-inches based on active unit system. */\r\n Length = 1,\r\n /** Angular value which is stored in radians. Typically formatted to display degrees or Degrees-Minute-Seconds based on active unit system. */\r\n Angle = 2,\r\n /** Area value store in meters squared. Typically formatted to display in meters squared or feet squared based on active unit system. */\r\n Area = 3,\r\n /** Volume value which is stored in meters cubed. Typically formatted to display in meters cubed or feet cubed based on active unit system. */\r\n Volume = 4,\r\n /** LatLong is an angular value which is stored in radians. Typically formatted to display degrees or Degrees-Minute-Seconds based on active unit system. */\r\n LatLong = 5,\r\n /** Coordinate/Location value which is stored in meters. Typically formatted to display in meters or feet based on active unit system. */\r\n Coordinate = 6,\r\n /** Stationing is a distance value stored in meters. Typically formatted to display `xxx+xx` or `xx+xxx` based on active unit system. */\r\n Stationing = 7,\r\n /** LengthSurvey is a distance value stored in meters. Typically formatted to display in meters or US Survey Feet based on active unit system.. */\r\n LengthSurvey = 8,\r\n /** LengthEngineering is a distance value stored in meters. Typically formatted to display either meters or feet based on active unit system. */\r\n LengthEngineering = 9\r\n}\r\n\r\n/**\r\n * Used to uniquely identify the type or quantity. [[QuantityType]] are built-in types and `string` are used for custom quantity types.\r\n * @public\r\n */\r\nexport type QuantityTypeArg = QuantityType | string;\r\n\r\n/** String used to uniquely identify a QuantityType in the quantity registry. See function [[QuantityType.getQuantityTypeKey]].\r\n * @public\r\n */\r\nexport type QuantityTypeKey = string;\r\n\r\n/** String used to uniquely identify a UnitProp.\r\n * @public\r\n */\r\nexport type UnitNameKey = string;\r\n\r\n/**\r\n * Interface for the properties required to create a FormatterSpec or ParserSpec.\r\n * @beta\r\n */\r\nexport interface CreateFormattingSpecProps {\r\n /** The name of the persistence unit. */\r\n persistenceUnitName: string;\r\n /** The format properties to use for the spec. */\r\n formatProps: FormatProps;\r\n /** Optional name for the format. */\r\n formatName?: string;\r\n}\r\n\r\n/**\r\n * Class that contains alternate Unit Labels. These labels are used when parsing strings to quantities.\r\n * One use case is to allow a \"^\", which is easily input, to be used to specify \"°\".\r\n * @internal\r\n */\r\nexport class AlternateUnitLabelsRegistry implements AlternateUnitLabelsProvider {\r\n private _alternateLabelRegistry = new Map<UnitNameKey, Set<string>>();\r\n\r\n public addAlternateLabels(key: UnitNameKey, ...labels: string[]) {\r\n [...labels].forEach((value) => this._alternateLabelRegistry.get(key)?.add(value));\r\n }\r\n\r\n constructor(defaultAlternates?: Map<UnitNameKey, Set<string>>) {\r\n if (defaultAlternates) {\r\n this._alternateLabelRegistry = defaultAlternates;\r\n }\r\n }\r\n\r\n public getAlternateUnitLabels(unit: UnitProps): string[] | undefined {\r\n const key: UnitNameKey = unit.name;\r\n const labels = this._alternateLabelRegistry.get(key);\r\n if (labels)\r\n return [...labels.values()];\r\n\r\n return undefined;\r\n }\r\n}\r\n\r\n/**\r\n * Function to return a QuantityTypeKey given either a QuantityType enum value or a string. This allows caching and\r\n * retrieving standard and custom quantity types.\r\n * @public\r\n */\r\nexport function getQuantityTypeKey(type: QuantityTypeArg): QuantityTypeKey {\r\n // For QuantityType enum values, build a string that shouldn't collide with anything a user may come up with\r\n if (typeof type === \"number\")\r\n return `QuantityTypeEnumValue-${type.toString()}`;\r\n return type;\r\n}\r\n\r\n/**\r\n * This interface supplies the definition of a `standard` quantity type that is registered with the QuantityFormatter.\r\n * A `standard` quantity type could be one of the nine delivered QuantityTypes or a CustomQuantityTypeDefinition.\r\n * @public\r\n */\r\nexport interface QuantityTypeDefinition {\r\n /** String used as a key to look up the quantity type. If defining a [[CustomQuantityTypeDefinition]] the QuantityTypeKey\r\n * should match the QuantityTypeArg. */\r\n readonly key: QuantityTypeKey;\r\n /** The type value which can be one of the standard QuantityType enum values or a unique string if defining a custom type. */\r\n readonly type: QuantityTypeArg;\r\n /** The unit that the magnitude of the quantity is stored ie. (Meter for Length and Radian for Angle). The persistence unit is\r\n * also used during formatting if the FormatProps does not define one or more composite units. */\r\n readonly persistenceUnit: UnitProps;\r\n /** Localized label to display in UI */\r\n label: string;\r\n /** Localized description that may be used to provide detailed description for the Quantity type. */\r\n description: string;\r\n /* Provide a default FormatProps for a unit system. */\r\n getDefaultFormatPropsBySystem: (requestedSystem: UnitSystemKey) => FormatProps;\r\n /** Async function to generate a [FormatterSpec]$(core-quantity) that will be called to format values.*/\r\n generateFormatterSpec: (formatProps: FormatProps, unitsProvider: UnitsProvider) => Promise<FormatterSpec>;\r\n /** Async function to generate a [ParserSpec]$(core-quantity) that will be called to parse a string into a quantity value.*/\r\n generateParserSpec: (formatProps: FormatProps, unitsProvider: UnitsProvider, alternateUnitLabelsProvider?: AlternateUnitLabelsProvider) => Promise<ParserSpec>;\r\n}\r\n\r\n/** CustomQuantityTypeDefinition interface is used to define a Custom quantity type that can be registered with the [[QuantityFormatter]].\r\n * A custom quantity formatter must be able to generate a FormatterSpec and ParserSpec that will be called to format and parse values.\r\n * Optionally it can provide specification of custom properties that it will use to define any formatting options. CustomQuantityTypeDefinitions\r\n * must be registered with the [[QuantityFormatter]] using the method `IModelApp.quantityFormatter.registerQuantityType`.\r\n * @public\r\n */\r\nexport interface CustomQuantityTypeDefinition extends QuantityTypeDefinition {\r\n /** Return true if the FormatProps have the necessary `custom` property definition */\r\n isCompatibleFormatProps: (formatProps: FormatProps) => boolean;\r\n /** An array of specifications that are used to generate a label and editor in the UI used to display and edit the FormatProps.\r\n * UI items defined as primary will be shown higher in the list of UI components. */\r\n primaryPropEditorSpecs?: CustomFormatPropEditorSpec[];\r\n /** An array of specifications that are used to generate a label and editor in the UI used to display and edit the FormatProps.\r\n * UI items defined as secondary will be shown below other UI components that edit FormatProps. */\r\n secondaryPropEditorSpecs?: CustomFormatPropEditorSpec[];\r\n}\r\n\r\n/** CustomQuantityTypeDefinition type guard.\r\n * @public\r\n*/\r\nexport function isCustomQuantityTypeDefinition(item: QuantityTypeDefinition): item is CustomQuantityTypeDefinition {\r\n return !!(item as CustomQuantityTypeDefinition).isCompatibleFormatProps;\r\n}\r\n\r\n/** private class to hold standard quantity definitions as defined by QuantityType enum and implement QuantityTypeDefinition interface */\r\nclass StandardQuantityTypeDefinition implements QuantityTypeDefinition {\r\n private _label: string | undefined;\r\n private _description: string | undefined;\r\n private _key: string;\r\n\r\n constructor(public type: QuantityType, public persistenceUnit: UnitProps, private _labelKey: string, private _descriptionKey: string) {\r\n this._key = getQuantityTypeKey(type);\r\n }\r\n\r\n public get key(): string { return this._key; }\r\n\r\n public get label(): string {\r\n if (!this._label) {\r\n this._label = IModelApp.localization.getLocalizedString(this._labelKey);\r\n }\r\n return this._label ?? \"\";\r\n }\r\n\r\n public get description(): string {\r\n if (!this._description) {\r\n this._description = IModelApp.localization.getLocalizedString(this._descriptionKey);\r\n }\r\n return this._description ?? this.label;\r\n }\r\n\r\n /** Get a default format to show quantity in persistence unit with precision or 6 decimal places. */\r\n public getDefaultFormatPropsBySystem(requestedSystem: UnitSystemKey): FormatProps {\r\n // Fallback same as Format \"DefaultRealU\" in Formats ecschema\r\n const fallbackProps: FormatProps = {\r\n formatTraits: [\"keepSingleZero\", \"keepDecimalPoint\", \"showUnitLabel\"],\r\n precision: 6,\r\n type: \"Decimal\",\r\n uomSeparator: \" \",\r\n decimalSeparator: \".\",\r\n };\r\n\r\n const defaultUnitSystemData = DEFAULT_FORMATKEY_BY_UNIT_SYSTEM.find((value) => value.system === requestedSystem);\r\n if (defaultUnitSystemData) {\r\n const defaultFormatEntry = defaultUnitSystemData.entries.find((value) => value.type === this.key);\r\n if (defaultFormatEntry) {\r\n const defaultFormatPropsEntry = DEFAULT_FORMATPROPS.find((props) => props.key === defaultFormatEntry.formatKey);\r\n if (defaultFormatPropsEntry)\r\n return defaultFormatPropsEntry.format;\r\n }\r\n }\r\n\r\n return fallbackProps;\r\n }\r\n\r\n public async generateFormatterSpec(formatProps: FormatProps, unitsProvider: UnitsProvider): Promise<FormatterSpec> {\r\n const format = await Format.createFromJSON(this.key, unitsProvider, formatProps);\r\n return FormatterSpec.create(format.name, format, unitsProvider, this.persistenceUnit);\r\n }\r\n\r\n public async generateParserSpec(formatProps: FormatProps, unitsProvider: UnitsProvider, alternateUnitLabelsProvider?: AlternateUnitLabelsProvider) {\r\n const format = await Format.createFromJSON(this.key, unitsProvider, formatProps);\r\n return ParserSpec.create(format, unitsProvider, this.persistenceUnit, alternateUnitLabelsProvider);\r\n }\r\n}\r\n\r\n/** Override format entries can define formats for any of the different unit systems.\r\n * @public\r\n */\r\nexport interface OverrideFormatEntry {\r\n /** Override format for \"imperial\" unit system */\r\n imperial?: FormatProps;\r\n /** Override format for \"metric\" unit system */\r\n metric?: FormatProps;\r\n /** Override format for \"usCustomary\" unit system */\r\n usCustomary?: FormatProps;\r\n /** Override format for \"usSurvey\" unit system */\r\n usSurvey?: FormatProps;\r\n}\r\n\r\n/**\r\n * Entries returned when looking up specs from the [[QuantityFormatter._formatSpecsRegistry]]\r\n * @beta\r\n */\r\nexport interface FormattingSpecEntry {\r\n formatterSpec: FormatterSpec;\r\n parserSpec: ParserSpec;\r\n}\r\n/** Interface that defines the functions required to be implemented to provide custom formatting and parsing of a custom quantity type.\r\n * @public\r\n */\r\nexport interface FormatterParserSpecsProvider {\r\n /** Custom quantity id */\r\n quantityType: QuantityTypeArg;\r\n /** Async function to return FormatterSpec for a custom quantity type */\r\n createFormatterSpec: (unitSystem: UnitSystemKey) => Promise<FormatterSpec>;\r\n /** Async function to return ParserSpec for a custom quantity type */\r\n createParserSpec: (unitSystem: UnitSystemKey) => Promise<ParserSpec>;\r\n}\r\n\r\n/** Arguments sent to FormattingUnitSystemChanged event listeners.\r\n * @public\r\n */\r\nexport interface FormattingUnitSystemChangedArgs {\r\n /** string that defines unit system activated. */\r\n readonly system: UnitSystemKey;\r\n}\r\n\r\n/** Arguments sent to QuantityFormatsChanged event listeners.\r\n * @public\r\n */\r\nexport interface QuantityFormatsChangedArgs {\r\n /** string that represents the QuantityType that has been overriden or the overrides cleared. */\r\n readonly quantityType: string;\r\n}\r\n\r\n/** Arguments sent to [[UnitFormattingSettingsProvider]] when overrides are changed.\r\n * @public\r\n */\r\nexport interface QuantityFormatOverridesChangedArgs {\r\n /** string that represents the QuantityType that has been overriden or the overrides cleared. */\r\n readonly typeKey: QuantityTypeKey;\r\n /** overrideEntry will be undefined when clearing overrides */\r\n readonly overrideEntry?: OverrideFormatEntry;\r\n /** used only when change applies to a single unit system */\r\n readonly unitSystem?: UnitSystemKey;\r\n}\r\n\r\n/**\r\n * The UnitFormattingSettingsProvider interface is used to store and retrieve override FormatProps and Presentation Unit System\r\n * for use by the QuantityFormatter. If no UnitFormattingSettingsProvider is supplied to the QuantityFormatter then any overrides\r\n * set are lost when the session is closed. The `ui-test-app` has and example implementation that uses browser local storage via the\r\n * class [[LocalUnitFormatProvider]] [here](https://github.com/iTwin/itwinjs-core/blob/d341e030d4c1427effd80ea54b3d57fec8ad1bc1/test-apps/ui-test-app/src/frontend/index.tsx#L315).\r\n * @public\r\n */\r\nexport interface UnitFormattingSettingsProvider {\r\n /** serializes JSON object containing format overrides for a specific quantity type. */\r\n store(quantityTypeKey: QuantityTypeKey, overrideProps: OverrideFormatEntry): Promise<boolean>;\r\n /** retrieves serialized JSON object containing format overrides for a specific quantity type. */\r\n retrieve(quantityTypeKey: QuantityTypeKey): Promise<OverrideFormatEntry | undefined>;\r\n /** removes the override formats for a specific quantity type. */\r\n remove(quantityTypeKey: QuantityTypeKey): Promise<boolean>;\r\n /** retrieves the active unit system typically based on the \"active\" iModelConnection */\r\n retrieveUnitSystem(defaultKey: UnitSystemKey): Promise<UnitSystemKey>;\r\n /** store the active unit system typically for the \"active\" iModelConnection */\r\n storeUnitSystemKey(unitSystemKey: UnitSystemKey): Promise<boolean>;\r\n /** Function to load overrides for a specific IModelConnection. Typically this is not called often since typical\r\n * implementations monitor for IModelConnection changes and call this method internally. */\r\n loadOverrides(imodel: IModelConnection | undefined): Promise<void>;\r\n /** function called to save changes to Presentation Unit System */\r\n storeUnitSystemSetting(args: FormattingUnitSystemChangedArgs): Promise<void>;\r\n /** function called to save format overrides */\r\n storeFormatOverrides(args: QuantityFormatOverridesChangedArgs): Promise<void>;\r\n /** property that is set by the implementation to inform the BaseUnitFormattingSettingsProvider if the provider\r\n * should trigger reloading of the overrides when the \"active\" imodel changes. */\r\n readonly maintainOverridesPerIModel: boolean;\r\n}\r\n\r\n/**\r\n * A default formatsProvider, that provides a limited set of [[FormatDefinition]], associated to a few [[KindOfQuantity]].\r\n * Maps each KindOfQuantity to a [[QuantityType]].\r\n * When retrieving a valid [[KindOfQuantity]], returns the [[FormatProps]] for the associated [[QuantityType]].\r\n * @internal\r\n */\r\nexport class QuantityTypeFormatsProvider implements FormatsProvider {\r\n public onFormatsChanged = new BeEvent<(args: FormatsChangedArgs) => void>();\r\n\r\n public constructor() {\r\n IModelApp.quantityFormatter.onActiveFormattingUnitSystemChanged.addListener(() => {\r\n this.onFormatsChanged.raiseEvent({ formatsChanged: \"all\" });\r\n });\r\n }\r\n private _kindOfQuantityMap = new Map<string, QuantityType>([\r\n [\"AecUnits.LENGTH\", QuantityType.Length],\r\n [\"AecUnits.ANGLE\", QuantityType.Angle],\r\n [\"AecUnits.AREA\", QuantityType.Area],\r\n [\"AecUnits.VOLUME\", QuantityType.Volume],\r\n [\"AecUnits.LENGTH_COORDINATE\", QuantityType.Coordinate],\r\n [\"RoadRailUnits.STATION\", QuantityType.Stationing],\r\n [\"RoadRailUnits.LENGTH\", QuantityType.LengthSurvey],\r\n ]);\r\n\r\n public async getFormat(name: string): Promise<FormatDefinition | undefined> {\r\n const quantityType = this._kindOfQuantityMap.get(name);\r\n if (!quantityType) return undefined;\r\n\r\n return IModelApp.quantityFormatter.getFormatPropsByQuantityType(quantityType);\r\n }\r\n}\r\n\r\n/**\r\n * An implementation of the [[FormatsProvider]] interface that forwards calls to getFormats to the underlying FormatsProvider.\r\n * Also fires the onFormatsChanged event when the underlying FormatsProvider fires its own onFormatsChanged event.\r\n * @internal\r\n */\r\nexport class FormatsProviderManager implements FormatsProvider {\r\n public onFormatsChanged = new BeEvent<(args: FormatsChangedArgs) => void>();\r\n\r\n constructor(private _formatsProvider: FormatsProvider) {\r\n this._formatsProvider.onFormatsChanged.addListener((args: FormatsChangedArgs) => {\r\n this.onFormatsChanged.raiseEvent(args);\r\n });\r\n }\r\n\r\n public async getFormat(name: string): Promise<FormatDefinition | undefined> {\r\n return this._formatsProvider.getFormat(name);\r\n }\r\n\r\n public get formatsProvider(): FormatsProvider { return this; }\r\n\r\n public set formatsProvider(formatsProvider: FormatsProvider) {\r\n this._formatsProvider = formatsProvider;\r\n this._formatsProvider.onFormatsChanged.addListener((args: FormatsChangedArgs) => {\r\n this.onFormatsChanged.raiseEvent(args);\r\n });\r\n this.onFormatsChanged.raiseEvent({ formatsChanged: \"all\" });\r\n }\r\n}\r\n/** Class that supports formatting quantity values into strings and parsing strings into quantity values. This class also maintains\r\n * the \"active\" unit system and caches FormatterSpecs and ParserSpecs for the \"active\" unit system to allow synchronous access to\r\n * parsing and formatting values. The support unit systems are defined by [[UnitSystemKey]] and is kept in synch with the unit systems\r\n * provided by the Presentation Manager on the backend. The QuantityFormatter contains a registry of quantity type definitions. These definitions implement\r\n * the [[QuantityTypeDefinition]] interface, which among other things, provide default [[FormatProps]], and provide methods\r\n * to generate both a [[FormatterSpec]] and a [[ParserSpec]]. There are built-in quantity types that are\r\n * identified by the [[QuantityType]] enum. [[CustomQuantityTypeDefinition]] can be registered to extend the available quantity types available\r\n * by frontend tools. The QuantityFormatter also allows the default formats to be overriden.\r\n *\r\n * @public\r\n */\r\nexport class QuantityFormatter implements UnitsProvider {\r\n private _unitsProvider: UnitsProvider = new BasicUnitsProvider();\r\n private _alternateUnitLabelsRegistry = new AlternateUnitLabelsRegistry(getDefaultAlternateUnitLabels());\r\n /** Registry containing available quantity type definitions. */\r\n protected _quantityTypeRegistry: Map<QuantityTypeKey, QuantityTypeDefinition> = new Map<QuantityTypeKey, QuantityTypeDefinition>();\r\n /** Registry containing available FormatterSpec and ParserSpec, mapped by keys.\r\n * @beta\r\n */\r\n protected _formatSpecsRegistry: Map<string, FormattingSpecEntry> = new Map<string, FormattingSpecEntry>();\r\n\r\n /** Active UnitSystem key - must be one of \"imperial\", \"metric\", \"usCustomary\", or \"usSurvey\". */\r\n protected _activeUnitSystem: UnitSystemKey = \"imperial\";\r\n /** Map of FormatSpecs for all available QuantityTypes and the active Unit System */\r\n protected _activeFormatSpecsByType = new Map<QuantityTypeKey, FormatterSpec>();\r\n /** Map of ParserSpecs for all available QuantityTypes and the active Unit System */\r\n protected _activeParserSpecsByType = new Map<QuantityTypeKey, ParserSpec>();\r\n /** Map of FormatSpecs that have been overriden from the default. */\r\n protected _overrideFormatPropsByUnitSystem = new Map<UnitSystemKey, Map<QuantityTypeKey, FormatProps>>();\r\n /** Optional object that gets called to store and retrieve format overrides. */\r\n protected _unitFormattingSettingsProvider: UnitFormattingSettingsProvider | undefined;\r\n\r\n /** Set the settings provider and if not iModel specific initialize setting for user. */\r\n public async setUnitFormattingSettingsProvider(provider: UnitFormattingSettingsProvider) {\r\n this._unitFormattingSettingsProvider = provider;\r\n if (!provider.maintainOverridesPerIModel)\r\n await provider.loadOverrides(undefined);\r\n }\r\n\r\n /** Called after the active unit system is changed.\r\n * The system will report the UnitSystemKey/name of the the system that was activated.\r\n */\r\n public readonly onActiveFormattingUnitSystemChanged = new BeUiEvent<FormattingUnitSystemChangedArgs>();\r\n\r\n /** Called when the format of a QuantityType is overriden or the override is cleared. The string returned will\r\n * be a QuantityTypeKey generated by method `getQuantityTypeKey`.\r\n */\r\n public readonly onQuantityFormatsChanged = new BeUiEvent<QuantityFormatsChangedArgs>();\r\n\r\n /** Fired when the active UnitsProvider is updated. This will allow cached Formatter and Parser specs to be updated if necessary. */\r\n public readonly onUnitsProviderChanged = new BeUiEvent<void>();\r\n\r\n private _removeFormatsProviderListener?: () => void;\r\n /**\r\n * constructor\r\n * @param showMetricOrUnitSystem - Pass in `true` to show Metric formatted quantity values. Defaults to Imperial. To explicitly\r\n * set it to a specific unit system pass a UnitSystemKey.\r\n */\r\n constructor(showMetricOrUnitSystem?: boolean | UnitSystemKey) {\r\n if (undefined !== showMetricOrUnitSystem) {\r\n if (typeof showMetricOrUnitSystem === \"boolean\")\r\n this._activeUnitSystem = showMetricOrUnitSystem ? \"metric\" : \"imperial\";\r\n else\r\n this._activeUnitSystem = showMetricOrUnitSystem;\r\n }\r\n }\r\n\r\n public [Symbol.dispose](): void {\r\n if (this._removeFormatsProviderListener) {\r\n this._removeFormatsProviderListener();\r\n this._removeFormatsProviderListener = undefined;\r\n }\r\n }\r\n\r\n private getOverrideFormatPropsByQuantityType(quantityTypeKey: QuantityTypeKey, unitSystem?: UnitSystemKey): FormatProps | undefined {\r\n const requestedUnitSystem = unitSystem ?? this.activeUnitSystem;\r\n const overrideMap = this._overrideFormatPropsByUnitSystem.get(requestedUnitSystem);\r\n if (!overrideMap)\r\n return undefined;\r\n\r\n return overrideMap.get(quantityTypeKey);\r\n }\r\n\r\n /** Method used to register all QuantityTypes defined in QuantityType enum. */\r\n protected async initializeQuantityTypesRegistry() {\r\n // QuantityType.Length\r\n const lengthUnit = await this.findUnitByName(\"Units.M\");\r\n const lengthDefinition = new StandardQuantityTypeDefinition(QuantityType.Length, lengthUnit,\r\n \"iModelJs:QuantityType.Length.label\", \"iModelJs:QuantityType.Length.description\");\r\n this._quantityTypeRegistry.set(lengthDefinition.key, lengthDefinition);\r\n\r\n // QuantityType.LengthEngineering\r\n const lengthEngineeringDefinition = new StandardQuantityTypeDefinition(QuantityType.LengthEngineering, lengthUnit,\r\n \"iModelJs:QuantityType.LengthEngineering.label\", \"iModelJs:QuantityType.LengthEngineering.description\");\r\n this._quantityTypeRegistry.set(lengthEngineeringDefinition.key, lengthEngineeringDefinition);\r\n\r\n // QuantityType.Coordinate\r\n const coordinateDefinition = new StandardQuantityTypeDefinition(QuantityType.Coordinate, lengthUnit,\r\n \"iModelJs:QuantityType.Coordinate.label\", \"iModelJs:QuantityType.Coordinate.description\");\r\n this._quantityTypeRegistry.set(coordinateDefinition.key, coordinateDefinition);\r\n\r\n // QuantityType.Stationing\r\n const stationingDefinition = new StandardQuantityTypeDefinition(QuantityType.Stationing, lengthUnit,\r\n \"iModelJs:QuantityType.Stationing.label\", \"iModelJs:QuantityType.Stationing.description\");\r\n this._quantityTypeRegistry.set(stationingDefinition.key, stationingDefinition);\r\n\r\n // QuantityType.LengthSurvey\r\n const lengthSurveyDefinition = new StandardQuantityTypeDefinition(QuantityType.LengthSurvey, lengthUnit,\r\n \"iModelJs:QuantityType.LengthSurvey.label\", \"iModelJs:QuantityType.LengthSurvey.description\");\r\n this._quantityTypeRegistry.set(lengthSurveyDefinition.key, lengthSurveyDefinition);\r\n\r\n // QuantityType.Angle\r\n const radUnit = await this.findUnitByName(\"Units.RAD\");\r\n const angleDefinition = new StandardQuantityTypeDefinition(QuantityType.Angle, radUnit,\r\n \"iModelJs:QuantityType.Angle.label\", \"iModelJs:QuantityType.Angle.description\");\r\n this._quantityTypeRegistry.set(angleDefinition.key, angleDefinition);\r\n\r\n // QuantityType.LatLong\r\n const latLongDefinition = new StandardQuantityTypeDefinition(QuantityType.LatLong, radUnit,\r\n \"iModelJs:QuantityType.LatLong.label\", \"iModelJs:QuantityType.LatLong.description\");\r\n this._quantityTypeRegistry.set(latLongDefinition.key, latLongDefinition);\r\n\r\n // QuantityType.Area\r\n const sqMetersUnit = await this.findUnitByName(\"Units.SQ_M\");\r\n const areaDefinition = new StandardQuantityTypeDefinition(QuantityType.Area, sqMetersUnit,\r\n \"iModelJs:QuantityType.Area.label\", \"iModelJs:QuantityType.Area.description\");\r\n this._quantityTypeRegistry.set(areaDefinition.key, areaDefinition);\r\n\r\n // QuantityType.Volume\r\n const cubicMetersUnit = await this.findUnitByName(\"Units.CUB_M\");\r\n const volumeDefinition = new StandardQuantityTypeDefinition(QuantityType.Volume, cubicMetersUnit,\r\n \"iModelJs:QuantityType.Volume.label\", \"iModelJs:QuantityType.Volume.description\");\r\n this._quantityTypeRegistry.set(volumeDefinition.key, volumeDefinition);\r\n }\r\n\r\n /** Asynchronous call to load Formatting and ParsingSpecs for a unit system. This method ends up caching FormatterSpecs and ParserSpecs\r\n * so they can be quickly accessed.\r\n * @internal public for unit test usage\r\n */\r\n protected async loadFormatAndParsingMapsForSystem(systemType?: UnitSystemKey): Promise<void> {\r\n const systemKey = (undefined !== systemType) ? systemType : this._activeUnitSystem;\r\n const formatPropsByType = new Map<QuantityTypeDefinition, FormatProps>();\r\n\r\n // load cache for every registered QuantityType\r\n [...this.quantityTypesRegistry.keys()].forEach((key) => {\r\n const entry = this.quantityTypesRegistry.get(key)!;\r\n formatPropsByType.set(entry, this.getFormatPropsByQuantityTypeEntryAndSystem(entry, systemKey));\r\n });\r\n\r\n for (const [entry, formatProps] of formatPropsByType) {\r\n await this.loadFormatAndParserSpec(entry, formatProps);\r\n }\r\n }\r\n\r\n private getFormatPropsByQuantityTypeEntryAndSystem(quantityEntry: QuantityTypeDefinition, requestedSystem: UnitSystemKey, ignoreOverrides?: boolean): FormatProps {\r\n if (!ignoreOverrides) {\r\n const overrideProps = this.getOverrideFormatPropsByQuantityType(quantityEntry.key, requestedSystem);\r\n if (overrideProps)\r\n return overrideProps;\r\n }\r\n\r\n return quantityEntry.getDefaultFormatPropsBySystem(requestedSystem);\r\n }\r\n\r\n private async loadFormatAndParserSpec(quantityTypeDefinition: QuantityTypeDefinition, formatProps: FormatProps) {\r\n const formatterSpec = await quantityTypeDefinition.generateFormatterSpec(formatProps, this.unitsProvider);\r\n const parserSpec = await quantityTypeDefinition.generateParserSpec(formatProps, this.unitsProvider, this.alternateUnitLabelsProvider);\r\n this._activeFormatSpecsByType.set(quantityTypeDefinition.key, formatterSpec);\r\n this._activeParserSpecsByType.set(quantityTypeDefinition.key, parserSpec);\r\n }\r\n\r\n // repopulate formatSpec and parserSpec entries using only default format\r\n private async loadDefaultFormatAndParserSpecForQuantity(typeKey: QuantityTypeKey) {\r\n const quantityTypeDefinition = this.quantityTypesRegistry.get(typeKey);\r\n if (!quantityTypeDefinition)\r\n throw new Error(`Unable to locate QuantityType by key ${typeKey}`);\r\n\r\n const defaultFormat = quantityTypeDefinition.getDefaultFormatPropsBySystem(this.activeUnitSystem);\r\n await this.loadFormatAndParserSpec(quantityTypeDefinition, defaultFormat);\r\n }\r\n\r\n private async setOverrideFormatsByQuantityTypeKey(typeKey: QuantityTypeKey, overrideEntry: OverrideFormatEntry) {\r\n // extract overrides and insert into appropriate override map entry\r\n Object.keys(overrideEntry).forEach((systemKey) => {\r\n const unitSystemKey = systemKey as UnitSystemKey;\r\n const props = overrideEntry[unitSystemKey];\r\n if (props) {\r\n if (this._overrideFormatPropsByUnitSystem.has(unitSystemKey)) {\r\n this._overrideFormatPropsByUnitSystem.get(unitSystemKey)!.set(typeKey, props);\r\n } else {\r\n const newMap = new Map<string, FormatProps>();\r\n newMap.set(typeKey, props);\r\n this._overrideFormatPropsByUnitSystem.set(unitSystemKey, newMap);\r\n }\r\n }\r\n });\r\n\r\n await this._unitFormattingSettingsProvider?.storeFormatOverrides({ typeKey, overrideEntry });\r\n\r\n const formatProps = this.getOverrideFormatPropsByQuantityType(typeKey, this.activeUnitSystem);\r\n if (formatProps) {\r\n const typeEntry = this.quantityTypesRegistry.get(typeKey);\r\n if (typeEntry) {\r\n await this.loadFormatAndParserSpec(typeEntry, formatProps);\r\n // trigger a message to let callers know the format has changed.\r\n this.onQuantityFormatsChanged.emit({ quantityType: typeKey });\r\n }\r\n }\r\n }\r\n\r\n /** Method called to clear override and restore defaults formatter and parser spec */\r\n private async clearOverrideFormatsByQuantityTypeKey(type: QuantityTypeKey) {\r\n const unitSystem = this.activeUnitSystem;\r\n if (this.getOverrideFormatPropsByQuantityType(type, unitSystem)) {\r\n const overrideMap = this._overrideFormatPropsByUnitSystem.get(unitSystem);\r\n if (overrideMap && overrideMap.has(type)) {\r\n overrideMap.delete(type);\r\n await this._unitFormattingSettingsProvider?.storeFormatOverrides({ typeKey: type, unitSystem });\r\n\r\n await this.loadDefaultFormatAndParserSpecForQuantity(type);\r\n // trigger a message to let callers know the format has changed.\r\n this.onQuantityFormatsChanged.emit({ quantityType: type });\r\n }\r\n }\r\n }\r\n\r\n /** This method is called during IModelApp initialization to load the standard quantity types into the registry and to initialize the cache.\r\n * @internal\r\n */\r\n public async onInitialized() {\r\n await this.initializeQuantityTypesRegistry();\r\n\r\n const initialKoQs = [[\"AecUnits.LENGTH\", \"Units.M\"], [\"AecUnits.ANGLE\", \"Units.RAD\"], [\"AecUnits.AREA\", \"Units.SQ_M\"], [\"AecUnits.VOLUME\", \"Units.CUB_M\"], [\"AecUnits.LENGTH_COORDINATE\", \"Units.M\"], [\"RoadRailUnits.STATION\", \"Units.M\"], [\"RoadRailUnits.LENGTH\", \"Units.M\"]];\r\n for (const entry of initialKoQs) {\r\n try {\r\n await this.addFormattingSpecsToRegistry(entry[0], entry[1]);\r\n } catch (err: any) {\r\n Logger.logWarning(`${FrontendLoggerCategory.Package}.QuantityFormatter`, err.toString());\r\n }\r\n }\r\n this._removeFormatsProviderListener = IModelApp.formatsProvider.onFormatsChanged.addListener(async (args: FormatsChangedArgs) => {\r\n if (args.formatsChanged === \"all\") {\r\n for (const [name, entry] of this._formatSpecsRegistry.entries()) {\r\n const formatProps = await IModelApp.formatsProvider.getFormat(name);\r\n if (formatProps) {\r\n const persistenceUnitName = entry.formatterSpec.persistenceUnit.name;\r\n await this.addFormattingSpecsToRegistry(name, persistenceUnitName, formatProps);\r\n } else {\r\n this._formatSpecsRegistry.delete(name); // clear the specs if format was removed, or no longer exists.\r\n }\r\n }\r\n } else {\r\n for (const name of args.formatsChanged) {\r\n if (this._formatSpecsRegistry.has(name)) {\r\n const formatProps = await IModelApp.formatsProvider.getFormat(name);\r\n if (formatProps) {\r\n const existingEntry = this._formatSpecsRegistry.get(name);\r\n if (existingEntry) {\r\n const persistenceUnitName = existingEntry.formatterSpec.persistenceUnit.name;\r\n await this.addFormattingSpecsToRegistry(name, persistenceUnitName, formatProps);\r\n }\r\n } else {\r\n this._formatSpecsRegistry.delete(name);\r\n }\r\n }\r\n }\r\n }\r\n });\r\n\r\n // initialize default format and parsing specs\r\n await this.loadFormatAndParsingMapsForSystem();\r\n }\r\n\r\n /** Return a map that serves as a registry of all standard and custom quantity types. */\r\n public get quantityTypesRegistry() {\r\n return this._quantityTypeRegistry;\r\n }\r\n\r\n /** Return the class the contain map of all alternate labels for units. These alternate labels are used when parsing strings in quantity values. */\r\n public get alternateUnitLabelsProvider(): AlternateUnitLabelsProvider {\r\n return this._alternateUnitLabelsRegistry;\r\n }\r\n\r\n /**\r\n * Add one or more alternate labels for a unit - these labels are used during string parsing.\r\n * @param key UnitNameKey which comes from `UnitProps.name`\r\n * @param labels one or more unit labels\r\n */\r\n public addAlternateLabels(key: UnitNameKey, ...labels: string[]) {\r\n this._alternateUnitLabelsRegistry.addAlternateLabels(key, ...labels);\r\n this.onUnitsProviderChanged.emit();\r\n }\r\n\r\n /** Get/Set the active UnitsProvider class. */\r\n public get unitsProvider() {\r\n return this._unitsProvider;\r\n }\r\n\r\n public set unitsProvider(unitsProvider: UnitsProvider) {\r\n this.setUnitsProvider(unitsProvider); // eslint-disable-line @typescript-eslint/no-floating-promises\r\n }\r\n\r\n /** async method to set a units provider and reload caches */\r\n public async setUnitsProvider(unitsProvider: UnitsProvider) {\r\n this._unitsProvider = unitsProvider;\r\n\r\n try {\r\n // force all cached data to be reinitialized\r\n await IModelApp.quantityFormatter.onInitialized();\r\n } catch(err) {\r\n Logger.logWarning(`${FrontendLoggerCategory.Package}.quantityFormatter`, BentleyError.getErrorMessage(err), BentleyError.getErrorMetadata(err));\r\n Logger.logWarning(`${FrontendLoggerCategory.Package}.quantityFormatter`, \"An exception occurred initializing the iModelApp.quantityFormatter with the given UnitsProvider. Defaulting back to the internal units provider.\");\r\n // If there is a problem initializing with the given provider, default back to the internal provider\r\n await IModelApp.quantityFormatter.resetToUseInternalUnitsProvider();\r\n return;\r\n }\r\n\r\n // force default tool to start so any tool that may be using cached data will not be using bad data.\r\n if (IModelApp.toolAdmin)\r\n await IModelApp.toolAdmin.startDefaultTool();\r\n this.onUnitsProviderChanged.emit();\r\n }\r\n\r\n /** Async call typically used after IModel is closed to reset UnitsProvider to default one that does not require an Units schema. */\r\n public async resetToUseInternalUnitsProvider() {\r\n if (this._unitsProvider instanceof BasicUnitsProvider)\r\n return;\r\n\r\n await this.setUnitsProvider(new BasicUnitsProvider());\r\n }\r\n\r\n /** Async call to register a CustomQuantityType and load the FormatSpec and ParserSpec for the new type. */\r\n public async registerQuantityType(entry: CustomQuantityTypeDefinition, replace?: boolean) {\r\n if (!replace && this._quantityTypeRegistry.has(entry.key))\r\n return false;\r\n\r\n this._quantityTypeRegistry.set(entry.key, entry);\r\n // load any overrides so any saved overrides for the type being registered are applied\r\n if (this._unitFormattingSettingsProvider)\r\n await this._unitFormattingSettingsProvider.loadOverrides(undefined);\r\n\r\n if (entry.getDefaultFormatPropsBySystem) {\r\n const formatProps = entry.getDefaultFormatPropsBySystem(this.activeUnitSystem);\r\n await this.loadFormatAndParserSpec(entry, formatProps);\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n /** Reinitialize caches. Typically called by active UnitFormattingSettingsProvider.\r\n * startDefaultTool - set to true to start the Default to instead of leaving any active tool pointing to cached unit data that is no longer valid\r\n * @public\r\n */\r\n public async reinitializeFormatAndParsingsMaps(overrideFormatPropsByUnitSystem: Map<UnitSystemKey, Map<QuantityTypeKey, FormatProps>>,\r\n unitSystemKey?: UnitSystemKey, fireUnitSystemChanged?: boolean, startDefaultTool?: boolean): Promise<void> {\r\n this._overrideFormatPropsByUnitSystem.clear();\r\n if (overrideFormatPropsByUnitSystem.size) {\r\n this._overrideFormatPropsByUnitSystem = overrideFormatPropsByUnitSystem;\r\n }\r\n\r\n unitSystemKey && (this._activeUnitSystem = unitSystemKey);\r\n await this.loadFormatAndParsingMapsForSystem(this._activeUnitSystem);\r\n fireUnitSystemChanged && this.onActiveFormattingUnitSystemChanged.emit({ system: this._activeUnitSystem });\r\n IModelApp.toolAdmin && startDefaultTool && await IModelApp.toolAdmin.startDefaultTool();\r\n }\r\n\r\n /** Set the Active unit system to one of the supported types. This will asynchronously load the formatter and parser specs for the activated system. */\r\n public async setActiveUnitSystem(isImperialOrUnitSystem: UnitSystemKey | boolean, restartActiveTool?: boolean): Promise<void> {\r\n let systemType: UnitSystemKey;\r\n if (typeof isImperialOrUnitSystem === \"boolean\")\r\n systemType = isImperialOrUnitSystem ? \"imperial\" : \"metric\";\r\n else\r\n systemType = isImperialOrUnitSystem;\r\n\r\n if (this._activeUnitSystem === systemType)\r\n return;\r\n\r\n this._activeUnitSystem = systemType;\r\n await this.loadFormatAndParsingMapsForSystem(systemType);\r\n // allow settings provider to store the change\r\n await this._unitFormattingSettingsProvider?.storeUnitSystemSetting({ system: systemType });\r\n // fire current event\r\n this.onActiveFormattingUnitSystemChanged.emit({ system: systemType });\r\n if (IModelApp.toolAdmin && restartActiveTool)\r\n return IModelApp.toolAdmin.startDefaultTool();\r\n }\r\n\r\n /** Retrieve the active [[UnitSystemKey]] which is used to determine what formats are to be used to display quantities */\r\n public get activeUnitSystem(): UnitSystemKey { return this._activeUnitSystem; }\r\n\r\n /** Clear any formatting override for specified quantity type, but only for the \"active\" Unit System. */\r\n public async clearOverrideFormats(type: QuantityTypeArg) {\r\n await this.clearOverrideFormatsByQuantityTypeKey(this.getQuantityTypeKey(type));\r\n }\r\n\r\n /** Set formatting override for specified quantity type, but only for the \"active\" Unit System. */\r\n public async setOverrideFormats(type: QuantityTypeArg, overrideEntry: OverrideFormatEntry) {\r\n await this.setOverrideFormatsByQuantityTypeKey(this.getQuantityTypeKey(type), overrideEntry);\r\n }\r\n\r\n /** Set Override Format for a quantity type, but only in the \"active\" Unit System. */\r\n public async setOverrideFormat(type: QuantityTypeArg, overrideFormat: FormatProps) {\r\n const typeKey = this.getQuantityTypeKey(type);\r\n let overrideEntry: OverrideFormatEntry = {};\r\n if (this.activeUnitSystem === \"imperial\")\r\n overrideEntry = { imperial: overrideFormat };\r\n else if (this.activeUnitSystem === \"metric\")\r\n overrideEntry = { metric: overrideFormat };\r\n else if (this.activeUnitSystem === \"usCustomary\")\r\n overrideEntry = { usCustomary: overrideFormat };\r\n else\r\n overrideEntry = { usSurvey: overrideFormat };\r\n\r\n await this.setOverrideFormatsByQuantityTypeKey(typeKey, overrideEntry);\r\n }\r\n\r\n /** Clear formatting override for all quantity types, but only for the \"active\" Unit System. */\r\n public async clearAllOverrideFormats() {\r\n if (0 === this._overrideFormatPropsByUnitSystem.size)\r\n return;\r\n\r\n if (this._overrideFormatPropsByUnitSystem.has(this.activeUnitSystem)) {\r\n const overrides = this._overrideFormatPropsByUnitSystem.get(this.activeUnitSystem);\r\n const typesRemoved: string[] = [];\r\n if (overrides && overrides.size) {\r\n const promises = new Array<Promise<void> | undefined>();\r\n overrides.forEach((_props, typeKey) => {\r\n typesRemoved.push(typeKey);\r\n promises.push(this._unitFormattingSettingsProvider?.storeFormatOverrides({ typeKey, unitSystem: this.activeUnitSystem }));\r\n });\r\n await Promise.all(promises);\r\n }\r\n\r\n if (typesRemoved.length) {\r\n const promises = new Array<Promise<void>>();\r\n typesRemoved.forEach((typeRemoved) => promises.push(this.loadDefaultFormatAndParserSpecForQuantity(typeRemoved)));\r\n await Promise.all(promises);\r\n // trigger a message to let callers know the format has changed.\r\n this.onQuantityFormatsChanged.emit({ quantityType: typesRemoved.join(\"|\") });\r\n }\r\n }\r\n }\r\n\r\n /** Converts a QuantityTypeArg into a QuantityTypeKey/string value that can be used to lookup custom and standard quantity types. */\r\n public getQuantityTypeKey(type: QuantityTypeArg): string {\r\n return getQuantityTypeKey(type);\r\n }\r\n\r\n /** Return [[QuantityTypeDefinition]] if type has been registered. Standard QuantityTypes are automatically registered. */\r\n public getQuantityDefinition(type: QuantityTypeArg) {\r\n return this.quantityTypesRegistry.get(this.getQuantityTypeKey(type));\r\n }\r\n\r\n /** Synchronous call to get a FormatterSpec of a QuantityType. If the FormatterSpec is not yet cached an undefined object is returned. The\r\n * cache is populated by the async call loadFormatAndParsingMapsForSystem.\r\n */\r\n public findFormatterSpecByQuantityType(type: QuantityTypeArg, _unused?: boolean): FormatterSpec | undefined {\r\n return this._activeFormatSpecsByType.get(this.getQuantityTypeKey(type));\r\n }\r\n\r\n /** Asynchronous Call to get a FormatterSpec for a QuantityType. This formatter spec can be used to synchronously format quantities. */\r\n public async generateFormatterSpecByType(type: QuantityTypeArg, formatProps: FormatProps) {\r\n const quantityTypeDefinition = this.quantityTypesRegistry.get(this.getQuantityTypeKey(type));\r\n if (quantityTypeDefinition)\r\n return quantityTypeDefinition.generateFormatterSpec(formatProps, this.unitsProvider);\r\n\r\n throw new Error(`Unable to generate FormatSpec for QuantityType ${type}`);\r\n }\r\n\r\n /** Asynchronous Call to get a FormatterSpec for a QuantityType and a Unit System. This formatter spec can be used to synchronously format quantities.\r\n * @param type One of the built-in quantity types supported.\r\n * @param system Requested unit system key. Note it is more efficient to use setActiveUnitSystem to set up formatters for all\r\n * quantity types of a unit system.\r\n * @return A FormatterSpec Promise.\r\n */\r\n public async getFormatterSpecByQuantityTypeAndSystem(type: QuantityTypeArg, system?: UnitSystemKey): Promise<FormatterSpec | undefined> {\r\n const quantityKey = this.getQuantityTypeKey(type);\r\n const requestedSystem = system ?? this.activeUnitSystem;\r\n\r\n if (requestedSystem === this.activeUnitSystem) {\r\n const formatterSpec = this._activeFormatSpecsByType.get(quantityKey);\r\n if (formatterSpec)\r\n return formatterSpec;\r\n }\r\n\r\n const entry = this.quantityTypesRegistry.get(quantityKey);\r\n if (!entry)\r\n throw new Error(`Unable to find registered quantity type with key ${quantityKey}`);\r\n return entry.generateFormatterSpec(this.getFormatPropsByQuantityTypeEntryAndSystem(entry, requestedSystem), this.unitsProvider);\r\n }\r\n\r\n /** Asynchronous Call to get a FormatterSpec for a QuantityType.\r\n * @param type One of the built-in quantity types supported.\r\n * @param isImperial Argument to specify use of imperial or metric unit system. If left undefined the active unit system is used.\r\n * @return A FormatterSpec Promise.\r\n */\r\n public async getFormatterSpecByQuantityType(type: QuantityTypeArg, isImperial?: boolean): Promise<FormatterSpec | undefined> {\r\n let requestedSystem = this.activeUnitSystem;\r\n if (undefined !== isImperial)\r\n requestedSystem = isImperial ? \"imperial\" : \"metric\";\r\n return this.getFormatterSpecByQuantityTypeAndSystem(type, requestedSystem);\r\n }\r\n\r\n /** Synchronous call to get a ParserSpec for a QuantityType. If the ParserSpec is not yet cached an undefined object is returned. The\r\n * cache is populated when the active units system is set.\r\n */\r\n public findParserSpecByQuantityType(type: QuantityTypeArg): ParserSpec | undefined {\r\n return this._activeParserSpecsByType.get(this.getQuantityTypeKey(type));\r\n }\r\n\r\n /** Asynchronous Call to get a ParserSpec for a QuantityType. If the UnitSystemKey is not specified the active Unit System is used. **/\r\n public async getParserSpecByQuantityTypeAndSystem(type: QuantityTypeArg, system?: UnitSystemKey): Promise<ParserSpec | undefined> {\r\n const quantityKey = this.getQuantityTypeKey(type);\r\n const requestedSystem = system ?? this.activeUnitSystem;\r\n\r\n if (requestedSystem === this.activeUnitSystem) {\r\n const parserSpec = this._activeParserSpecsByType.get(quantityKey);\r\n if (parserSpec)\r\n return parserSpec;\r\n }\r\n\r\n const entry = this.quantityTypesRegistry.get(quantityKey);\r\n if (!entry)\r\n throw new Error(`Unable to find registered quantity type with key ${quantityKey}`);\r\n return entry.generateParserSpec(this.getFormatPropsByQuantityTypeEntryAndSystem(entry, requestedSystem), this.unitsProvider);\r\n }\r\n\r\n /** Asynchronous Call to get a ParserSpec for a QuantityType.\r\n * @param type One of the built-in quantity types supported.\r\n * @param isImperial Argument to specify use of imperial or metric unit system. If left undefined the active unit system is used.\r\n * @return A FormatterSpec Promise.\r\n */\r\n public async getParserSpecByQuantityType(type: QuantityTypeArg, isImperial?: boolean): Promise<ParserSpec | undefined> {\r\n let requestedSystem = this.activeUnitSystem;\r\n if (undefined !== isImperial)\r\n requestedSystem = isImperial ? \"imperial\" : \"metric\";\r\n return this.getParserSpecByQuantityTypeAndSystem(type, requestedSystem);\r\n }\r\n\r\n /** Generates a formatted string asynchronously for a quantity given the provided properties.\r\n * @param props - an object containing value, valueUnitName, and kindOfQuantityName.\r\n * @return A promise resolving to a formatted string.\r\n */\r\n public formatQuantity(props: {\r\n value: number;\r\n valueUnitName: string;\r\n kindOfQuantityName: string;\r\n }): Promise<string>;\r\n /** Generates a formatted string for a quantity given its format spec.\r\n * @param magnitude The magnitude of the quantity.\r\n * @param formatSpec The format specification. See methods getFormatterSpecByQuantityType and findFormatterSpecByQuantityType.\r\n * @return a formatted string.\r\n */\r\n public formatQuantity(magnitude: number, formatSpec?: FormatterSpec): string;\r\n\r\n public formatQuantity(args: number | object, spec?: FormatterSpec): string | Promise<string> {\r\n if (typeof args === \"number\") {\r\n /** Format a quantity value. Default FormatterSpec implementation uses Formatter.formatQuantity. */\r\n const magnitude = args;\r\n if (spec)\r\n return spec.applyFormatting(magnitude);\r\n return magnitude.toString();\r\n }\r\n\r\n return this.formatQuantityAsync(args as {\r\n value: number;\r\n valueUnitName: string;\r\n kindOfQuantityName: string;\r\n });\r\n }\r\n\r\n private async formatQuantityAsync(args: {\r\n value: number;\r\n valueUnitName: string;\r\n kindOfQuantityName: string;\r\n }): Promise<string> {\r\n const { value, valueUnitName, kindOfQuantityName } = args;\r\n const formatProps = await IModelApp.formatsProvider.getFormat(kindOfQuantityName);\r\n if (!formatProps) return value.toString();\r\n const formatSpec = await this.createFormatterSpec({\r\n persistenceUnitName: valueUnitName,\r\n formatProps,\r\n formatName: kindOfQuantityName,\r\n })\r\n return formatSpec.applyFormatting(value);\r\n }\r\n\r\n /** Parse input string asynchronously into a quantity given the provided properties.\r\n * @param props - an object containing value, valueUnitName, and kindOfQuantityName.\r\n * @return Promise resolving to a QuantityParseResult object containing either the parsed value or an error value if unsuccessful.\r\n */\r\n public parseToQuantityValue(props: {\r\n value: string;\r\n valueUnitName: string;\r\n kindOfQuantityName: string;\r\n }): Promise<QuantityParseResult>;\r\n /** Parse input string into quantity given the ParserSpec\r\n * @param inString The magnitude of the quantity.\r\n * @param parserSpec The parse specification the defines the expected format of the string and the conversion to the output unit.\r\n * @return QuantityParseResult object containing either the parsed value or an error value if unsuccessful.\r\n */\r\n public parseToQuantityValue(inString: string, parserSpec?: ParserSpec): QuantityParseResult;\r\n\r\n public parseToQuantityValue(args: string | object, parserSpec?: ParserSpec): QuantityParseResult | Promise<QuantityParseResult> {\r\n if (typeof args === \"string\") {\r\n /** Parse a quantity value. Default ParserSpec implementation uses ParserSpec.parseToQuantityValue. */\r\n const inString = args;\r\n if (parserSpec)\r\n return parserSpec.parseToQuantityValue(inString);\r\n return { ok: false, error: ParseError.InvalidParserSpec };\r\n }\r\n return this.parseToQuantityValueAsync(args as {\r\n value: string;\r\n valueUnitName: string;\r\n kindOfQuantityName: string;\r\n });\r\n }\r\n\r\n private async parseToQuantityValueAsync(args: {\r\n value: string;\r\n valueUnitName: string;\r\n kindOfQuantityName: string;\r\n }): Promise<QuantityParseResult> {\r\n const { value, valueUnitName, kindOfQuantityName } = args;\r\n const formatProps = await IModelApp.formatsProvider.getFormat(kindOfQuantityName);\r\n if (!formatProps) return { ok: false, error: ParseError.InvalidParserSpec };\r\n const parserSpec = await this.createParserSpec({\r\n persistenceUnitName: valueUnitName,\r\n formatProps,\r\n formatName: kindOfQuantityName,\r\n });\r\n return parserSpec.parseToQuantityValue(value);\r\n }\r\n\r\n /**\r\n * Get a UnitSystemKey from a string that may have been entered via a key-in. Supports different variation of\r\n * unit system names that have been used in the past.\r\n */\r\n public getUnitSystemFromString(inputSystem: string, fallback?: UnitSystemKey): UnitSystemKey {\r\n switch (inputSystem.toLowerCase()) {\r\n case \"metric\":\r\n case \"si\":\r\n return \"metric\";\r\n case \"imperial\":\r\n case \"british-imperial\":\r\n return \"imperial\";\r\n case \"uscustomary\":\r\n case \"us-customary\":\r\n case \"us\":\r\n return \"usCustomary\";\r\n case \"ussurvey\":\r\n case \"us-survey\":\r\n case \"survey\":\r\n return \"usSurvey\";\r\n default:\r\n if (undefined !== fallback)\r\n return fallback;\r\n break;\r\n }\r\n return \"imperial\";\r\n }\r\n\r\n /** Return true if the QuantityType is using an override format. */\r\n public hasActiveOverride(type: QuantityTypeArg, checkOnlyActiveUnitSystem?: boolean): boolean {\r\n const quantityTypeKey = this.getQuantityTypeKey(type);\r\n\r\n if (checkOnlyActiveUnitSystem) {\r\n const overrides = this._overrideFormatPropsByUnitSystem.get(this.activeUnitSystem);\r\n if (overrides && overrides.has(quantityTypeKey))\r\n return true;\r\n return false;\r\n }\r\n\r\n for (const [_key, overrideMap] of this._overrideFormatPropsByUnitSystem) {\r\n if (overrideMap.has(quantityTypeKey))\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n /** Get the cached FormatProps give a quantity type. If ignoreOverrides is false then if the format has been overridden\r\n * the overridden format is returned, else the standard format is returned.\r\n */\r\n public getFormatPropsByQuantityType(quantityType: QuantityTypeArg, requestedSystem?: UnitSystemKey, ignoreOverrides?: boolean) {\r\n const quantityEntry = this.quantityTypesRegistry.get(this.getQuantityTypeKey(quantityType));\r\n if (quantityEntry)\r\n return this.getFormatPropsByQuantityTypeEntryAndSystem(quantityEntry, requestedSystem ?? this.activeUnitSystem, ignoreOverrides);\r\n return undefined;\r\n }\r\n\r\n // keep following to maintain existing API of implementing UnitsProvider\r\n /** Find [UnitProp] for a specific unit label. */\r\n public async findUnit(unitLabel: string, schemaName?: string, phenomenon?: string, unitSystem?: string): Promise<UnitProps> {\r\n return this._unitsProvider.findUnit(unitLabel, schemaName, phenomenon, unitSystem);\r\n }\r\n\r\n /** Returns all defined units for the specified Unit Family/Phenomenon. */\r\n public async getUnitsByFamily(phenomenon: string): Promise<UnitProps[]> {\r\n return this._unitsProvider.getUnitsByFamily(phenomenon);\r\n }\r\n\r\n /** Find [UnitProp] for a specific unit name. */\r\n public async findUnitByName(unitName: string): Promise<UnitProps> {\r\n return this._unitsProvider.findUnitByName(unitName);\r\n }\r\n\r\n /** Returns data needed to convert from one Unit to another in the same Unit Family/Phenomenon. */\r\n public async getConversion(fromUnit: UnitProps, toUnit: UnitProps): Promise<UnitConversionProps> {\r\n return this._unitsProvider.getConversion(fromUnit, toUnit);\r\n }\r\n\r\n /**\r\n * Creates a [[FormatterSpec]] for a given persistence unit name and format properties, using the [[UnitsProvider]] to resolve the persistence unit.\r\n * @beta\r\n * @param props - A [[CreateFormattingSpecProps]] interface.\r\n */\r\n public async createFormatterSpec(props: CreateFormattingSpecProps): Promise<FormatterSpec> {\r\n const { persistenceUnitName, formatProps, formatName } = props;\r\n const persistenceUnitProps = await this._unitsProvider.findUnitByName(persistenceUnitName);\r\n const format = await Format.createFromJSON(formatName ?? \"temp\", this._unitsProvider, formatProps);\r\n return FormatterSpec.create(`${format.name}_format_spec`, format, this._unitsProvider, persistenceUnitProps);\r\n }\r\n\r\n /**\r\n * Creates a [[ParserSpec]] for a given persistence unit name and format properties, using the [[UnitsProvider]] to resolve the persistence unit.\r\n * @beta\r\n * @param props - A [[CreateFormattingSpecProps]] object.\r\n */\r\n public async createParserSpec(props: CreateFormattingSpecProps): Promise<ParserSpec> {\r\n const { persistenceUnitName, formatProps, formatName } = props;\r\n const persistenceUnitProps = await this._unitsProvider.findUnitByName(persistenceUnitName);\r\n const format = await Format.createFromJSON(formatName ?? \"temp\", this._unitsProvider, formatProps);\r\n return ParserSpec.create(format, this._unitsProvider, persistenceUnitProps);\r\n }\r\n\r\n /**\r\n * @beta\r\n * Returns a [[FormattingSpecEntry]] for a given name, typically a KindOfQuantity full name.\r\n */\r\n public getSpecsByName(name: string): FormattingSpecEntry | undefined {\r\n return this._formatSpecsRegistry.get(name);\r\n }\r\n\r\n /**\r\n * Populates the registry with a new FormatterSpec and ParserSpec entry for the given format name.\r\n * @beta\r\n * @param name The key used to identify the formatter and parser spec\r\n * @param persistenceUnitName The name of the persistence unit\r\n * @param formatProps If not supplied, tries to retrieve the [[FormatProps]] from [[IModelApp.formatsProvider]]\r\n */\r\n public async addFormattingSpecsToRegistry(name: string, persistenceUnitName: string, formatProps?: FormatProps): Promise<void> {\r\n if (!formatProps) {\r\n formatProps = await IModelApp.formatsProvider.getFormat(name);\r\n }\r\n if (formatProps) {\r\n const formatterSpec = await this.createFormatterSpec({\r\n persistenceUnitName,\r\n formatProps,\r\n formatName: name,\r\n });\r\n const parserSpec = await this.createParserSpec({\r\n persistenceUnitName,\r\n formatProps,\r\n formatName: name,\r\n });\r\n this._formatSpecsRegistry.set(name, { formatterSpec, parserSpec });\r\n } else {\r\n throw new Error(`Unable to find format properties for ${name} with persistence unit ${persistenceUnitName}`);\r\n }\r\n }\r\n}\r\n\r\n// ========================================================================================================================================\r\n// Default Data\r\n// ========================================================================================================================================\r\nconst DEFAULT_FORMATKEY_BY_UNIT_SYSTEM = [\r\n {\r\n system: \"metric\", // PresentationUnitSystem.Metric,\r\n entries: [\r\n { type: getQuantityTypeKey(QuantityType.Length), formatKey: \"[units:length]meter4\" },\r\n { type: getQuantityTypeKey(QuantityType.Angle), formatKey: \"[units:angle]degree2\" },\r\n { type: getQuantityTypeKey(QuantityType.Area), formatKey: \"[units:area]mSquared4\" },\r\n { type: getQuantityTypeKey(QuantityType.Volume), formatKey: \"[units:volume]mCubed4\" },\r\n { type: getQuantityTypeKey(QuantityType.LatLong), formatKey: \"[units:angle]dms\" },\r\n { type: getQuantityTypeKey(QuantityType.Coordinate), formatKey: \"[units:length]meter2\" },\r\n { type: getQuantityTypeKey(QuantityType.Stationing), formatKey: \"[units:length]m-sta2\" },\r\n { type: getQuantityTypeKey(QuantityType.LengthSurvey), formatKey: \"[units:length]meter4\" },\r\n { type: getQuantityTypeKey(QuantityType.LengthEngineering), formatKey: \"[units:length]meter4\" },\r\n ],\r\n },\r\n {\r\n system: \"imperial\", // PresentationUnitSystem.BritishImperial,\r\n entries: [\r\n { type: getQuantityTypeKey(QuantityType.Length), formatKey: \"[units:length]fi8\" },\r\n { type: getQuantityTypeKey(QuantityType.Angle), formatKey: \"[units:angle]dms2\" },\r\n { type: getQuantityTypeKey(QuantityType.Area), formatKey: \"[units:area]fSquared4\" },\r\n { type: getQuantityTypeKey(QuantityType.Volume), formatKey: \"[units:volume]fCubed4\" },\r\n { type: getQuantityTypeKey(QuantityType.LatLong), formatKey: \"[units:angle]dms\" },\r\n { type: getQuantityTypeKey(QuantityType.Coordinate), formatKey: \"[units:length]feet2\" },\r\n { type: getQuantityTypeKey(QuantityType.Stationing), formatKey: \"[units:length]f-sta2\" },\r\n { type: getQuantityTypeKey(QuantityType.LengthSurvey), formatKey: \"[units:length]f-survey-4-labeled\" },\r\n { type: getQuantityTypeKey(QuantityType.LengthEngineering), formatKey: \"[units:length]feet4\" },\r\n ],\r\n },\r\n {\r\n system: \"usCustomary\", // PresentationUnitSystem.UsCustomary\r\n entries: [\r\n { type: getQuantityTypeKey(QuantityType.Length), formatKey: \"[units:length]fi8\" },\r\n { type: getQuantityTypeKey(QuantityType.Angle), formatKey: \"[units:angle]dms2\" },\r\n { type: getQuantityTypeKey(QuantityType.Area), formatKey: \"[units:area]fSquared4\" },\r\n { type: getQuantityTypeKey(QuantityType.Volume), formatKey: \"[units:volume]fCubed4\" },\r\n { type: getQuantityTypeKey(QuantityType.LatLong), formatKey: \"[units:angle]dms\" },\r\n { type: getQuantityTypeKey(QuantityType.Coordinate), formatKey: \"[units:length]feet2\" },\r\n { type: getQuantityTypeKey(QuantityType.Stationing), formatKey: \"[units:length]f-sta2\" },\r\n { type: getQuantityTypeKey(QuantityType.LengthSurvey), formatKey: \"[units:length]f-survey-4\" },\r\n { type: getQuantityTypeKey(QuantityType.LengthEngineering), formatKey: \"[units:length]feet4\" },\r\n ],\r\n },\r\n {\r\n system: \"usSurvey\", // PresentationUnitSystem.UsSurvey\r\n entries: [\r\n { type: getQuantityTypeKey(QuantityType.Length), formatKey: \"[units:length]f-survey-4\" },\r\n { type: getQuantityTypeKey(QuantityType.Angle), formatKey: \"[units:angle]dms2\" },\r\n { type: getQuantityTypeKey(QuantityType.Area), formatKey: \"[units:area]usSurveyFtSquared4\" },\r\n { type: getQuantityTypeKey(QuantityType.Volume), formatKey: \"[units:volume]usSurveyFtCubed4\" },\r\n { type: getQuantityTypeKey(QuantityType.LatLong), formatKey: \"[units:angle]dms\" },\r\n { type: getQuantityTypeKey(QuantityType.Coordinate), formatKey: \"[units:length]f-survey-2\" },\r\n { type: getQuantityTypeKey(QuantityType.Stationing), formatKey: \"[units:length]f-survey-sta2\" },\r\n { type: getQuantityTypeKey(QuantityType.LengthSurvey), formatKey: \"[units:length]f-survey-4\" },\r\n { type: getQuantityTypeKey(QuantityType.LengthEngineering), formatKey: \"[units:length]f-survey-4\" },\r\n ],\r\n },\r\n];\r\n\r\n/** Interface used to define structure of default format definitions. */\r\ninterface UniqueFormatsProps {\r\n readonly key: string;\r\n readonly description?: string;\r\n readonly format: FormatProps;\r\n}\r\n\r\n/** List of default format definitions used by the Standard QuantityTypes. */\r\nconst DEFAULT_FORMATPROPS: UniqueFormatsProps[] = [\r\n {\r\n key: \"[units:length]meter4\",\r\n description: \"meters (labeled) 4 decimal places\",\r\n format: {\r\n composite: {\r\n includeZero: true,\r\n spacer: \"\",\r\n units: [{ label: \"m\", name: \"Units.M\" }],\r\n },\r\n formatTraits: [\"keepSingleZero\", \"showUnitLabel\"],\r\n precision: 4,\r\n type: \"Decimal\",\r\n },\r\n },\r\n {\r\n key: \"[units:length]meter2\",\r\n description: \"meters (labeled) 2 decimal places\",\r\n format: {\r\n composite: {\r\n includeZero: true,\r\n spacer: \"\",\r\n units: [{ label: \"m\", name: \"Units.M\" }],\r\n },\r\n formatTraits: [\"keepSingleZero\", \"showUnitLabel\"],\r\n precision: 2,\r\n type: \"Decimal\",\r\n },\r\n },\r\n\r\n {\r\n key: \"[units:length]feet4\",\r\n description: \"feet (labeled) 4 decimal places\",\r\n format: {\r\n composite: {\r\n includeZero: true,\r\n spacer: \"\",\r\n units: [{ label: \"ft\", name: \"Units.FT\" }],\r\n },\r\n formatTraits: [\"keepSingleZero\", \"showUnitLabel\"],\r\n precision: 4,\r\n type: \"Decimal\",\r\n },\r\n },\r\n {\r\n key: \"[units:length]feet2\",\r\n description: \"feet (labeled) 2 decimal places\",\r\n format: {\r\n composite: {\r\n includeZero: true,\r\n spacer: \"\",\r\n units: [{ label: \"ft\", name: \"Units.FT\" }],\r\n },\r\n formatTraits: [\"keepSingleZero\", \"showUnitLabel\"],\r\n precision: 2,\r\n type: \"Decimal\",\r\n },\r\n },\r\n {\r\n key: \"[units:length]fi8\",\r\n description: \"feet-inch 1/8 (labeled)\",\r\n format: {\r\n composite: {\r\n includeZero: true,\r\n spacer: \"-\",\r\n units: [{ label: \"'\", name: \"Units.FT\" }, { label: \"\\\"\", name: \"Units.IN\" }],\r\n },\r\n formatTraits: [\"keepSingleZero\", \"showUnitLabel\"],\r\n precision: 8,\r\n type: \"Fractional\",\r\n uomSeparator: \"\",\r\n },\r\n },\r\n {\r\n key: \"[units:length]f-sta2\",\r\n description: \"stationing feet-2 decimal places \",\r\n format: {\r\n composite: {\r\n includeZero: true,\r\n spacer: \"\",\r\n units: [{ label: \"ft\", name: \"Units.FT\" }],\r\n },\r\n formatTraits: [\"trailZeroes\", \"keepSingleZero\"],\r\n stationOffsetSize: 2,\r\n precision: 2,\r\n type: \"Station\",\r\n },\r\n },\r\n {\r\n key: \"[units:length]f-survey-sta2\",\r\n description: \"stationing feet-2 decimal places \",\r\n format: {\r\n composite: {\r\n includeZero: true,\r\n spacer: \"\",\r\n units: [{ label: \"ft\", name: \"Units.US_SURVEY_FT\" }],\r\n },\r\n formatTraits: [\"trailZeroes\", \"keepSingleZero\"],\r\n stationOffsetSize: 2,\r\n precision: 2,\r\n type: \"Station\",\r\n },\r\n },\r\n\r\n {\r\n key: \"[units:length]m-sta2\",\r\n description: \"stationing meters-2 decimal places \",\r\n format: {\r\n composite: {\r\n includeZero: true,\r\n spacer: \"\",\r\n units: [{ label: \"m\", name: \"Units.M\" }],\r\n },\r\n formatTraits: [\"trailZeroes\", \"keepSingleZero\"],\r\n stationOffsetSize: 3,\r\n precision: 2,\r\n type: \"Station\",\r\n },\r\n },\r\n {\r\n key: \"[units:length]f-survey-2\",\r\n description: \"survey feet (labeled)-2 decimal places \",\r\n format: {\r\n composite: {\r\n includeZero: true,\r\n spacer: \"\",\r\n units: [{ label: \"ft\", name: \"Units.US_SURVEY_FT\" }],\r\n },\r\n formatTraits: [\"keepSingleZero\", \"showUnitLabel\"],\r\n precision: 2,\r\n type: \"Decimal\",\r\n },\r\n },\r\n {\r\n key: \"[units:length]f-survey-4-labeled\",\r\n description: \"survey feet (labeled)-4 decimal places \",\r\n format: {\r\n composite: {\r\n includeZero: true,\r\n spacer: \"\",\r\n units: [{ label: \"ft (US Survey)\", name: \"Units.US_SURVEY_FT\" }],\r\n },\r\n formatTraits: [\"keepSingleZero\", \"showUnitLabel\"],\r\n precision: 4,\r\n type: \"Decimal\",\r\n },\r\n },\r\n\r\n {\r\n key: \"[units:length]f-survey-4\",\r\n description: \"survey feet (labeled)-4 decimal places \",\r\n format: {\r\n composite: {\r\n includeZero: true,\r\n spacer: \"\",\r\n units: [{ label: \"ft\", name: \"Units.US_SURVEY_FT\" }],\r\n },\r\n formatTraits: [\"keepSingleZero\", \"showUnitLabel\"],\r\n precision: 4,\r\n type: \"Decimal\",\r\n },\r\n },\r\n {\r\n key: \"[units:angle]degree2\",\r\n description: \"degrees (labeled) 2 decimal places\",\r\n format: {\r\n composite: {\r\n includeZero: true,\r\n spacer: \"\",\r\n units: [{ label: \"°\", name: \"Units.ARC_DEG\" }],\r\n },\r\n formatTraits: [\"keepSingleZero\", \"showUnitLabel\"],\r\n precision: 2,\r\n type: \"Decimal\",\r\n uomSeparator: \"\",\r\n },\r\n },\r\n {\r\n key: \"[units:angle]dms\",\r\n description: \"degrees minutes seconds (labeled) 0 decimal places\",\r\n format: {\r\n composite: {\r\n includeZero: true,\r\n spacer: \"\",\r\n units: [{ label: \"°\", name: \"Units.ARC_DEG\" }, { label: \"'\", name: \"Units.ARC_MINUTE\" }, { label: \"\\\"\", name: \"Units.ARC_SECOND\" }],\r\n },\r\n formatTraits: [\"keepSingleZero\", \"showUnitLabel\"],\r\n precision: 4,\r\n type: \"Decimal\",\r\n uomSeparator: \"\",\r\n },\r\n },\r\n {\r\n key: \"[units:angle]dms2\",\r\n description: \"degrees minutes seconds (labeled) 2 decimal places\",\r\n format: {\r\n composite: {\r\n includeZero: true,\r\n spacer: \"\",\r\n units: [{ label: \"°\", name: \"Units.ARC_DEG\" }, { label: \"'\", name: \"Units.ARC_MINUTE\" }, { label: \"\\\"\", name: \"Units.ARC_SECOND\" }],\r\n },\r\n formatTraits: [\"keepSingleZero\", \"showUnitLabel\"],\r\n precision: 2,\r\n type: \"Decimal\",\r\n uomSeparator: \"\",\r\n },\r\n },\r\n {\r\n key: \"[units:area]mSquared4\",\r\n description: \"square meters (labeled) 4 decimal places\",\r\n format: {\r\n composite: {\r\n includeZero: true,\r\n spacer: \"\",\r\n units: [{ label: \"m²\", name: \"Units.SQ_M\" }],\r\n },\r\n formatTraits: [\"keepSingleZero\", \"showUnitLabel\"],\r\n precision: 4,\r\n type: \"Decimal\",\r\n },\r\n },\r\n {\r\n key: \"[units:area]fSquared4\",\r\n description: \"square feet (labeled) 4 decimal places\",\r\n format: {\r\n composite: {\r\n includeZero: true,\r\n spacer: \"\",\r\n units: [{ label: \"ft²\", name: \"Units.SQ_FT\" }],\r\n },\r\n formatTraits: [\"keepSingleZero\", \"showUnitLabel\"],\r\n precision: 4,\r\n type: \"Decimal\",\r\n },\r\n },\r\n {\r\n key: \"[units:area]usSurveyFtSquared4\",\r\n description: \"square survey feet (labeled) 4 decimal places\",\r\n format: {\r\n composite: {\r\n includeZero: true,\r\n spacer: \"\",\r\n units: [{ label: \"ft²\", name: \"Units.SQ_US_SURVEY_FT\" }],\r\n },\r\n formatTraits: [\"keepSingleZero\", \"showUnitLabel\"],\r\n precision: 4,\r\n type: \"Decimal\",\r\n },\r\n },\r\n {\r\n key: \"[units:volume]mCubed4\",\r\n description: \"cubic meters (labeled) 4 decimal places\",\r\n format: {\r\n composite: {\r\n includeZero: true,\r\n spacer: \"\",\r\n units: [{ label: \"m³\", name: \"Units.CUB_M\" }],\r\n },\r\n formatTraits: [\"keepSingleZero\", \"showUnitLabel\"],\r\n precision: 4,\r\n type: \"Decimal\",\r\n },\r\n },\r\n {\r\n key: \"[units:volume]fCubed4\",\r\n description: \"cubic feet (labeled) 4 decimal places\",\r\n format: {\r\n composite: {\r\n includeZero: true,\r\n spacer: \"\",\r\n units: [{ label: \"ft³\", name: \"Units.CUB_FT\" }],\r\n },\r\n formatTraits: [\"keepSingleZero\", \"showUnitLabel\"],\r\n precision: 4,\r\n type: \"Decimal\",\r\n },\r\n },\r\n {\r\n key: \"[units:volume]usSurveyFtCubed4\",\r\n description: \"cubic survey feet (labeled) 4 decimal places\",\r\n format: {\r\n composite: {\r\n includeZero: true,\r\n spacer: \"\",\r\n units: [{ label: \"ft³\", name: \"Units.CUB_US_SURVEY_FT\" }],\r\n },\r\n formatTraits: [\"keepSingleZero\", \"showUnitLabel\"],\r\n precision: 4,\r\n type: \"Decimal\",\r\n },\r\n },\r\n];\r\n"]}
|
|
1
|
+
{"version":3,"file":"QuantityFormatter.js","sourceRoot":"","sources":["../../../src/quantity-formatting/QuantityFormatter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QuantityTypesEditorSpecs.js","sourceRoot":"","sources":["../../../src/quantity-formatting/QuantityTypesEditorSpecs.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAyBH;;GAEG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,IAAgC,EAAwC,EAAE;IACvH,OAAO,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC;AACxC,CAAC,CAAC;AAWF;;GAEG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,IAAgC,EAAyC,EAAE;IACzH,OAAO,IAAI,CAAC,UAAU,KAAK,MAAM,CAAC;AACpC,CAAC,CAAC;AAYF;;GAEG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,IAAgC,EAA0C,EAAE;IAC3H,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,CAAC;AACtC,CAAC,CAAC"
|
|
1
|
+
{"version":3,"file":"QuantityTypesEditorSpecs.js","sourceRoot":"","sources":["../../../src/quantity-formatting/QuantityTypesEditorSpecs.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAyBH;;GAEG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,IAAgC,EAAwC,EAAE;IACvH,OAAO,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC;AACxC,CAAC,CAAC;AAWF;;GAEG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,IAAgC,EAAyC,EAAE;IACzH,OAAO,IAAI,CAAC,UAAU,KAAK,MAAM,CAAC;AACpC,CAAC,CAAC;AAYF;;GAEG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,IAAgC,EAA0C,EAAE;IAC3H,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,CAAC;AACtC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UnitsData.js","sourceRoot":"","sources":["../../../src/quantity-formatting/UnitsData.ts"],"names":[],"mappings":"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"
|
|
1
|
+
{"version":3,"file":"UnitsData.js","sourceRoot":"","sources":["../../../src/quantity-formatting/UnitsData.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,8BAA8B;IAC9B,EAAE,IAAI,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC,QAAQ,CAAC,EAAE;IACnD,qBAAqB;IACrB,EAAE,IAAI,EAAE,eAAe,EAAE,gBAAgB,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE;IACzD,EAAE,IAAI,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,CAAC,KAAK,CAAC,EAAE;IACvD,EAAE,IAAI,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,CAAC,KAAK,CAAC,EAAE;IACvD,EAAE,IAAI,EAAE,YAAY,EAAE,gBAAgB,EAAE,CAAC,IAAI,CAAC,EAAE;IAChD,4BAA4B;IAC5B,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC,KAAK,CAAC,EAAE;IAC9C,EAAE,IAAI,EAAE,WAAW,EAAE,gBAAgB,EAAE,EAAE,EAAE;IAC3C,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC,IAAI,CAAC,EAAE;IAC9C,EAAE,IAAI,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC,KAAK,CAAC,EAAE;IAChD,EAAE,IAAI,EAAE,YAAY,EAAE,gBAAgB,EAAE,CAAC,MAAM,CAAC,EAAE;IAClD,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC,MAAM,CAAC,EAAE;IAChD,iDAAiD;IACjD,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC,OAAO,CAAC,EAAE;IAChD,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC,IAAI,CAAC,EAAE;IAC9C,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC,IAAI,CAAC,EAAE;IAC9C,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC,IAAI,CAAC,EAAE;IAC9C,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC,IAAI,CAAC,EAAE;IAC9C,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,EAAE,EAAE;IAC1C,EAAE,IAAI,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,EAAE,EAAE;IACjD,EAAE,IAAI,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,EAAE,EAAE;IACjD,EAAE,IAAI,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,EAAE,EAAE;IACjD,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;IACpD,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE;IACxD,EAAE,IAAI,EAAE,aAAa,EAAE,gBAAgB,EAAE,CAAC,OAAO,CAAC,EAAE;IACpD,EAAE,IAAI,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE;IACvD,EAAE,IAAI,EAAE,YAAY,EAAE,gBAAgB,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE;IACnE,EAAE,IAAI,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,gBAAgB,CAAC,EAAE;IACvF,EAAE,IAAI,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC,EAAE;IAC/E,EAAE,IAAI,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,CAAC,KAAK,EAAE,oBAAoB,CAAC,EAAE;IAC/E,EAAE,IAAI,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,CAAC,mBAAmB,EAAE,kBAAkB,EAAE,KAAK,CAAC,EAAE;IACpG,EAAE,IAAI,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,CAAC,oBAAoB,CAAC,EAAE;IAC3E,kDAAkD;IAClD,EAAE,IAAI,EAAE,aAAa,EAAE,gBAAgB,EAAE,CAAC,IAAI,CAAC,EAAE;IACjD,EAAE,IAAI,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,CAAC,OAAO,CAAC,EAAE;IAC9D,EAAE,IAAI,EAAE,YAAY,EAAE,gBAAgB,EAAE,CAAC,IAAI,CAAC,EAAE;IAChD,+CAA+C;IAC/C,EAAE,IAAI,EAAE,cAAc,EAAE,gBAAgB,EAAE,CAAC,IAAI,CAAC,EAAE;IAClD,EAAE,IAAI,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,CAAC,IAAI,CAAC,EAAE;IAC5D,EAAE,IAAI,EAAE,eAAe,EAAE,gBAAgB,EAAE,CAAC,IAAI,CAAC,EAAE;IACnD,EAAE,IAAI,EAAE,aAAa,EAAE,gBAAgB,EAAE,CAAC,IAAI,CAAC,EAAE;CAClD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CanvasDecoration.js","sourceRoot":"","sources":["../../../src/render/CanvasDecoration.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG"
|
|
1
|
+
{"version":3,"file":"CanvasDecoration.js","sourceRoot":"","sources":["../../../src/render/CanvasDecoration.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CreateRenderMaterialArgs.js","sourceRoot":"","sources":["../../../src/render/CreateRenderMaterialArgs.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG"
|
|
1
|
+
{"version":3,"file":"CreateRenderMaterialArgs.js","sourceRoot":"","sources":["../../../src/render/CreateRenderMaterialArgs.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CreateTextureArgs.js","sourceRoot":"","sources":["../../../src/render/CreateTextureArgs.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG"
|
|
1
|
+
{"version":3,"file":"CreateTextureArgs.js","sourceRoot":"","sources":["../../../src/render/CreateTextureArgs.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Decorations.js","sourceRoot":"","sources":["../../../src/render/Decorations.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAI5D;;;GAGG;AACH,MAAM,OAAO,WAAW;IACd,OAAO,CAAiB;IACxB,eAAe,CAAiB,CAAC,6FAA6F;IAC9H,OAAO,CAAe,CAAO,0CAA0C;IACvE,MAAM,CAAe,CAAQ,4DAA4D;IACzF,aAAa,CAAe,CAAC,qCAAqC;IAClE,YAAY,CAAe,CAAE,oCAAoC;IAElE,iBAAiB,CAAwB;IAEhD,uHAAuH;IACvH,IAAW,MAAM,KAAgC,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IACvE,IAAW,MAAM,CAAC,MAAiC;QACjD,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED,kGAAkG;IAClG,IAAW,cAAc,KAAgC,OAAO,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;IACvF,IAAW,cAAc,CAAC,cAAyC;QACjE,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC9B,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;IACxC,CAAC;IAED,uFAAuF;IACvF,IAAW,MAAM,KAA8B,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IACrE,IAAW,MAAM,CAAC,MAA+B;QAC/C,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED,wIAAwI;IACxI,IAAW,KAAK,KAA8B,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IACnE,IAAW,KAAK,CAAC,KAA8B;QAC7C,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAED,yFAAyF;IACzF,IAAW,YAAY,KAA8B,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;IACjF,IAAW,YAAY,CAAC,YAAqC;QAC3D,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACjC,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;IACpC,CAAC;IAED,uFAAuF;IACvF,IAAW,WAAW,KAA8B,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IAC/E,IAAW,WAAW,CAAC,WAAoC;QACzD,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAChC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;IAClC,CAAC;IAEM,CAAC,MAAM,CAAC,OAAO,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QACxB,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;QAChC,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;QAC9B,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;IAC1B,CAAC;IAED,qGAAqG;IAC9F,OAAO;QACZ,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;IACzB,CAAC;CACF"
|
|
1
|
+
{"version":3,"file":"Decorations.js","sourceRoot":"","sources":["../../../src/render/Decorations.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAI5D;;;GAGG;AACH,MAAM,OAAO,WAAW;IACd,OAAO,CAAiB;IACxB,eAAe,CAAiB,CAAC,6FAA6F;IAC9H,OAAO,CAAe,CAAO,0CAA0C;IACvE,MAAM,CAAe,CAAQ,4DAA4D;IACzF,aAAa,CAAe,CAAC,qCAAqC;IAClE,YAAY,CAAe,CAAE,oCAAoC;IAElE,iBAAiB,CAAwB;IAEhD,uHAAuH;IACvH,IAAW,MAAM,KAAgC,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IACvE,IAAW,MAAM,CAAC,MAAiC;QACjD,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED,kGAAkG;IAClG,IAAW,cAAc,KAAgC,OAAO,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;IACvF,IAAW,cAAc,CAAC,cAAyC;QACjE,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC9B,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;IACxC,CAAC;IAED,uFAAuF;IACvF,IAAW,MAAM,KAA8B,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IACrE,IAAW,MAAM,CAAC,MAA+B;QAC/C,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED,wIAAwI;IACxI,IAAW,KAAK,KAA8B,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IACnE,IAAW,KAAK,CAAC,KAA8B;QAC7C,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAED,yFAAyF;IACzF,IAAW,YAAY,KAA8B,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;IACjF,IAAW,YAAY,CAAC,YAAqC;QAC3D,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACjC,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;IACpC,CAAC;IAED,uFAAuF;IACvF,IAAW,WAAW,KAA8B,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IAC/E,IAAW,WAAW,CAAC,WAAoC;QACzD,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAChC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;IAClC,CAAC;IAEM,CAAC,MAAM,CAAC,OAAO,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QACxB,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;QAChC,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;QAC9B,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;IAC1B,CAAC;IAED,qGAAqG;IAC9F,OAAO;QACZ,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;IACzB,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeatureSymbology.js","sourceRoot":"","sources":["../../../src/render/FeatureSymbology.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 Rendering\r\n */\r\n\r\nimport { BeEvent, Id64 } from \"@itwin/core-bentley\";\r\nimport { FeatureAppearance, FeatureOverrides } from \"@itwin/core-common\";\r\nimport { Viewport } from \"../Viewport\";\r\nimport { ViewState } from \"../ViewState\";\r\n\r\n// cspell:ignore subcat subcats\r\n\r\n/** Contains types that enable an application to customize how [Feature]($common)s are drawn within a [[Viewport]].\r\n * @public\r\n * @extensions\r\n */\r\nexport namespace FeatureSymbology {\r\n /** An object that serves as the source of a [[FeatureSymbology.Overrides]].\r\n * Use this if you are drawing the same tiles into a single Viewport and overriding the FeatureSymbology.Overrides applied to them\r\n * by settings [[GraphicBranch.symbologyOverrides]].\r\n * Each tile will have a separate set of feature overrides per combination of Source and Viewport. This prevents the display system\r\n * from constantly recomputing the feature overrides for a tile.\r\n * You must call `onSourceDisposed.raiseEvent()` when the source is no longer being used by the Viewport to allow the feature overrides\r\n * and their WebGL resources to be freed - failure to do so will result in memory leaks, which may eventually produce WebGL context loss.\r\n * @alpha\r\n */\r\n export interface Source {\r\n /** An event raised when this source becomes disassociated with the viewport, indicating any WebGL resources allocated for it\r\n * can be freed.\r\n * Failure to invoke this event appropriately will result in memory leaks, which may eventually produce WebGL context loss.\r\n */\r\n readonly onSourceDisposed: BeEvent<() => void>;\r\n }\r\n\r\n /** Allows a [[Viewport]] to customize the appearance of individual [Feature]($common)s within it.\r\n *\r\n * The Viewport computes its base Overrides based on the following:\r\n * - The set of categories enabled for display in its [[CategorySelectorState]]. Every [[SubCategory]] belonging to an enabled [[Category]] is added to the set of visible subcategories - all other subcategories are assumed to be invisible.\r\n * - For the set of visible subcategories, any [[SubCategoryOverride]]s defined by the view's [[DisplayStyleState]] are applied. This may render some subcategories invisible, and change the symbology of others.\r\n * - The visibility of each [GeometryClass]($common) is set based on the view's [ViewFlags]($common).\r\n * - The line weight is overridden to 1 pixel for all Features if line weight has been disabled by the view's [ViewFlags]($common).\r\n * - The sets of elements which are always drawn and never drawn are initialized from the [[Viewport]]'s sets.\r\n * An application can further customize the symbology of any Features by registering a [[FeatureOverrideProvider]] with a [[Viewport]]. That provider's addFeatureOverrides function will be invoked\r\n * whenever the Overrides need to be regenerated.\r\n *\r\n * To override the symbology of *most* Features within a view, specify a `defaultOverrides` to be applied to any Feature not explicitly overridden.\r\n * If default overrides are defined and some Features should draw normally without being affected by the default overrides, override that Feature with\r\n * an Appearance which defines no overrides.\r\n *\r\n * It is possible to override multiple aspects of a Feature. For example, you might specify that all elements belonging to subcategory \"A\" should be drawn in red, and\r\n * that the element with Id \"0x123\" should be drawn with 0.25 transparency. In this case, when drawing a Feature with subcategory \"A\" and element Id \"0x123\", the two overrides will\r\n * be merged, causing the Feature's geometry to draw 25% transparent red. On the other hand, if subcategory \"A\" is specified to draw in red and element \"0x123\" to draw in green,\r\n * the color specified by the element override will take precedence over that specified for the subcategory, resulting in a green Feature.\r\n *\r\n * @see [[Viewport.alwaysDrawn]]\r\n * @see [[Viewport.neverDrawn]]\r\n */\r\n export class Overrides extends FeatureOverrides {\r\n private _source?: Source;\r\n\r\n /** @alpha */\r\n public get source(): Source | undefined {\r\n return this._source;\r\n }\r\n\r\n /** Construct a new Overrides. The result is an empty set of overrides if no view or viewport is supplied.\r\n * @param view If supplied, the overrides will be initialized based on the current state of the view or viewport.\r\n */\r\n public constructor(view?: ViewState | Viewport) {\r\n super();\r\n if (undefined !== view) {\r\n if (view instanceof Viewport)\r\n this.initFromViewport(view);\r\n else\r\n this.initFromView(view);\r\n }\r\n }\r\n\r\n /** Create symbology overrides associated with a [[FeatureSymbology.Source]].\r\n * @alpha\r\n */\r\n public static withSource(source: Source, view?: ViewState | Viewport): Overrides {\r\n const ovrs = new Overrides(view);\r\n ovrs._source = source;\r\n return ovrs;\r\n }\r\n\r\n /** Initialize these Overrides based on a specific view.\r\n * @internal\r\n */\r\n public initFromView(view: ViewState): void {\r\n this._initFromView(view);\r\n this._initSubCategoryOverrides(view);\r\n }\r\n\r\n /** Initialize these Overrides based on a specific viewport.\r\n * @internal\r\n */\r\n public initFromViewport(viewport: Viewport): void {\r\n // Set the initial always/never-drawn sets. Later, initFromView can add more elements to them.\r\n if (undefined !== viewport.neverDrawn)\r\n this.setNeverDrawnSet(viewport.neverDrawn);\r\n\r\n if (undefined !== viewport.alwaysDrawn)\r\n this.setAlwaysDrawnSet(viewport.alwaysDrawn, viewport.isAlwaysDrawnExclusive);\r\n\r\n this._initFromView(viewport.view);\r\n\r\n viewport.addFeatureOverrides(this);\r\n viewport.addModelSubCategoryVisibilityOverrides(this, this._modelSubCategoryOverrides);\r\n\r\n // This will include any per-model subcategory visibility overrides added above.\r\n this._initSubCategoryOverrides(viewport.view);\r\n }\r\n\r\n private _initFromView(view: ViewState): void {\r\n const { viewFlags } = view;\r\n const { constructions, dimensions, patterns } = viewFlags;\r\n\r\n this.neverDrawnAnimationNodes.clear();\r\n this.animationNodeOverrides.clear();\r\n\r\n for (const excluded of view.displayStyle.settings.excludedElementIds)\r\n this.setNeverDrawn(excluded);\r\n\r\n this._constructions = constructions;\r\n this._dimensions = dimensions;\r\n this._patterns = patterns;\r\n this._lineWeights = viewFlags.weights;\r\n\r\n for (const categoryId of view.categorySelector.categories) {\r\n const subCategoryIds = view.iModel.subcategories.getSubCategories(categoryId);\r\n if (undefined === subCategoryIds)\r\n continue;\r\n\r\n for (const subCategoryId of subCategoryIds) {\r\n if (view.isSubCategoryVisible(subCategoryId)) {\r\n const idLo = Id64.getLowerUint32(subCategoryId);\r\n const idHi = Id64.getUpperUint32(subCategoryId);\r\n this._visibleSubCategories.add(idLo, idHi);\r\n\r\n const app = view.iModel.subcategories.getSubCategoryAppearance(subCategoryId);\r\n if (undefined !== app)\r\n this._subCategoryPriorities.set(idLo, idHi, app.priority);\r\n }\r\n }\r\n }\r\n const style = view.displayStyle;\r\n style.settings.modelAppearanceOverrides.forEach((appearance, modelId) => this.override({ modelId, appearance, onConflict: \"skip\" }));\r\n\r\n style.forEachRealityModel((realityModel) => {\r\n if (realityModel.appearanceOverrides && realityModel.modelId)\r\n this.override({ modelId: realityModel.modelId, appearance: realityModel.appearanceOverrides });\r\n });\r\n\r\n const script = style.scheduleScript;\r\n if (script)\r\n script.addSymbologyOverrides(this, style.settings.timePoint ?? 0);\r\n\r\n if (!view.is3d())\r\n return;\r\n\r\n const planProjectionSettings = view.getDisplayStyle3d().settings.planProjectionSettings;\r\n if (undefined === planProjectionSettings)\r\n return;\r\n\r\n for (const [modelId, projSettings] of planProjectionSettings) {\r\n if (undefined !== projSettings.transparency)\r\n this.override({ modelId, appearance: FeatureAppearance.fromJSON({ transparency: projSettings.transparency }) });\r\n }\r\n }\r\n\r\n private _initSubCategoryOverrides(view: ViewState): void {\r\n const addOverride = (idLo: number, idHi: number) => {\r\n const subCategoryId = Id64.fromUint32Pair(idLo, idHi);\r\n const ovr = view.getSubCategoryOverride(subCategoryId);\r\n if (undefined !== ovr) {\r\n const app = FeatureAppearance.fromSubCategoryOverride(ovr);\r\n if (app.overridesSymbology)\r\n this._subCategoryOverrides.set(idLo, idHi, app);\r\n\r\n if (undefined !== ovr.priority)\r\n this._subCategoryPriorities.set(idLo, idHi, ovr.priority);\r\n }\r\n };\r\n\r\n // Add overrides for all subcategories visible in the view\r\n this._visibleSubCategories.forEach((idLo: number, idHi: number) => {\r\n addOverride(idLo, idHi);\r\n });\r\n\r\n // Add overrides for all subcategories overridden to be visible in specific models\r\n this._modelSubCategoryOverrides.forEach((_modelIdLo: number, _modelIdHi: number, subcats: Id64.Uint32Set) => {\r\n subcats.forEach((idLo: number, idHi: number) => {\r\n if (!this.isSubCategoryVisible(idLo, idHi)) {\r\n // Overridden to be visible in one or more models - will need the appearance overrides\r\n addOverride(idLo, idHi);\r\n }\r\n });\r\n });\r\n }\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"FeatureSymbology.js","sourceRoot":"","sources":["../../../src/render/FeatureSymbology.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FrameStats.js","sourceRoot":"","sources":["../../../src/render/FrameStats.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG"
|
|
1
|
+
{"version":3,"file":"FrameStats.js","sourceRoot":"","sources":["../../../src/render/FrameStats.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GraphicBranch.js","sourceRoot":"","sources":["../../../src/render/GraphicBranch.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAc,MAAM,qBAAqB,CAAC;AAgB/D;;;;;;;GAOG;AACH,MAAM,OAAO,aAAa;IACxB,qCAAqC;IACrB,OAAO,GAAoB,EAAE,CAAC;IAC9C,6GAA6G;IAC7F,WAAW,CAAU;IACrC;;OAEG;IACI,iBAAiB,GAAsB,EAAE,CAAC;IACjD;;OAEG;IACI,2BAA2B,CAA+B;IACjE,gBAAgB;IACT,iBAAiB,CAAW;IACnC,gFAAgF;IACzE,kBAAkB,CAA8B;IACvD;;OAEG;IACI,WAAW,CAAU;IAC5B;;OAEG;IACI,eAAe,CAA4B;IAElD;;;;;;;;OAQG;IACI,WAAW,CAAU;IAE5B;;OAEG;IACH,YAAmB,cAAuB,KAAK;QAC7C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED,oCAAoC;IAC7B,GAAG,CAAC,OAAsB;QAC/B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED;;;OAGG;IACI,YAAY,CAAC,KAAgB;QAClC,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAChD,CAAC;IAED,uFAAuF;IAChF,YAAY,CAAC,KAAgB;QAClC,IAAI,CAAC,iBAAiB,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;IACxC,CAAC;IAED,oCAAoC;IAC7B,oBAAoB,CAAC,GAAsB;QAChD,IAAI,CAAC,iBAAiB,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;IACtC,CAAC;IAED,uFAAuF;IAChF,CAAC,MAAM,CAAC,OAAO,CAAC;QACrB,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAED,qGAAqG;IAC9F,OAAO;QACZ,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;IACzB,CAAC;IAED,wDAAwD;IACxD,IAAW,OAAO;QAChB,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;IACnC,CAAC;IAED,sIAAsI;IAC/H,KAAK;QACV,IAAI,IAAI,CAAC,WAAW;YAClB,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;;YAE3B,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED,gBAAgB;IACT,iBAAiB,CAAC,KAA8B;QACrD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO;YAC9B,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;CACF"
|
|
1
|
+
{"version":3,"file":"GraphicBranch.js","sourceRoot":"","sources":["../../../src/render/GraphicBranch.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAc,MAAM,qBAAqB,CAAC;AAgB/D;;;;;;;GAOG;AACH,MAAM,OAAO,aAAa;IACxB,qCAAqC;IACrB,OAAO,GAAoB,EAAE,CAAC;IAC9C,6GAA6G;IAC7F,WAAW,CAAU;IACrC;;OAEG;IACI,iBAAiB,GAAsB,EAAE,CAAC;IACjD;;OAEG;IACI,2BAA2B,CAA+B;IACjE,gBAAgB;IACT,iBAAiB,CAAW;IACnC,gFAAgF;IACzE,kBAAkB,CAA8B;IACvD;;OAEG;IACI,WAAW,CAAU;IAC5B;;OAEG;IACI,eAAe,CAA4B;IAElD;;;;;;;;OAQG;IACI,WAAW,CAAU;IAE5B;;OAEG;IACH,YAAmB,cAAuB,KAAK;QAC7C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED,oCAAoC;IAC7B,GAAG,CAAC,OAAsB;QAC/B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED;;;OAGG;IACI,YAAY,CAAC,KAAgB;QAClC,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAChD,CAAC;IAED,uFAAuF;IAChF,YAAY,CAAC,KAAgB;QAClC,IAAI,CAAC,iBAAiB,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;IACxC,CAAC;IAED,oCAAoC;IAC7B,oBAAoB,CAAC,GAAsB;QAChD,IAAI,CAAC,iBAAiB,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;IACtC,CAAC;IAED,uFAAuF;IAChF,CAAC,MAAM,CAAC,OAAO,CAAC;QACrB,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAED,qGAAqG;IAC9F,OAAO;QACZ,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;IACzB,CAAC;IAED,wDAAwD;IACxD,IAAW,OAAO;QAChB,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;IACnC,CAAC;IAED,sIAAsI;IAC/H,KAAK;QACV,IAAI,IAAI,CAAC,WAAW;YAClB,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;;YAE3B,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED,gBAAgB;IACT,iBAAiB,CAAC,KAA8B;QACrD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO;YAC9B,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GraphicBuilder.js","sourceRoot":"","sources":["../../../src/render/GraphicBuilder.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAoB,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAInE,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAsGvE;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,OAAgB,cAAe,SAAQ,gBAAgB;IAC3D,uDAAuD;IACvC,MAAM,CAAoB;IAE1C,gBAAgB;IACG,sBAAsB,CAA8C;IAEvF,gBAAgB;IAChB,YAAsB,OAAoE;QACxF,MAAM,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC;QAC5B,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,SAAS,CAAC,cAAc,EAAE,CAAC;QAClE,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;QACzH,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,KAAK,CAAC,CAAC;QAC7F,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,WAAW,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,YAAY,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,cAAc,CAAC,CAAC;QAEtL,KAAK,CAAC;YACJ,GAAG,OAAO;YACV,CAAC,yBAAyB,CAAC,EAAE,SAAS;YACtC,SAAS;YACT,SAAS;YACT,WAAW;YACX,aAAa;SACd,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,GAAG,EAAE,EAAE,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;QAC3C,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACtB,IAAI,CAAC,sBAAsB,GAAG,OAAO,CAAC,qBAAqB,CAAC;YAC5D,OAAO;QACT,CAAC;QAED,IAAI,CAAC,sBAAsB,GAAG,CAAC,IAA+B,EAAE,EAAE;YAChE,IAAI,SAAS,GAAG,CAAC,CAAC;YAClB,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC5B,uGAAuG;gBACvG,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,CAAC;gBAC7E,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;gBAErE,kIAAkI;gBAClI,MAAM,IAAI,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC3F,IAAI,IAAI,GAAG,CAAC;oBACV,SAAS,IAAI,IAAI,CAAC;YACtB,CAAC;YAED,OAAO,SAAS,GAAG,IAAI,CAAC;QAC1B,CAAC,CAAC;IACJ,CAAC;CAeF","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 Rendering\r\n */\r\n\r\nimport { Point3d, Range3d, Transform } from \"@itwin/core-geometry\";\r\nimport { IModelConnection } from \"../IModelConnection\";\r\nimport { Viewport } from \"../Viewport\";\r\nimport { RenderGraphic } from \"./RenderGraphic\";\r\nimport { GraphicType } from \"../common/render/GraphicType\";\r\nimport type { PickableGraphicOptions} from \"../common/render/BatchOptions\";\r\nimport { GraphicAssembler } from \"../common/render/GraphicAssembler\";\r\nimport { _implementationProhibited } from \"../common/internal/Symbols\";\r\nimport { GraphicTemplate } from \"./GraphicTemplate\";\r\n\r\n/** Options for creating a [[GraphicBuilder]] used by functions like [[DecorateContext.createGraphic]] and [[RenderSystem.createGraphic]].\r\n * @see [[ViewportGraphicBuilderOptions]] to create a graphic builder for a [[Viewport]].\r\n * @see [[CustomGraphicBuilderOptions]] to create a graphic builder unassociated with any [[Viewport]].\r\n * @public\r\n * @extensions\r\n */\r\nexport interface GraphicBuilderOptions {\r\n /** The type of graphic to produce. */\r\n type: GraphicType;\r\n\r\n /** The local-to-world transform in which the builder's geometry is to be defined - by default, an identity transform. */\r\n placement?: Transform;\r\n\r\n /** If the graphic is to be pickable, specifies the pickable Id and other options. */\r\n pickable?: PickableGraphicOptions;\r\n\r\n /** If true, the order in which geometry is added to the builder is preserved.\r\n * This is useful for overlay and background graphics because they draw without using the depth buffer. For example, to draw an overlay containing a red shape with a white outline,\r\n * you would add the shape to the GraphicBuilder first, followed by the outline, to ensure the outline draws \"in front of\" the shape.\r\n * It defaults to true for overlays and background graphics, and false for other graphic types.\r\n * It is not useful for other types of graphics and imposes a performance penalty due to increased number of draw calls.\r\n * For overlay and background graphics that do not need to draw in any particular order, the performance penalty can be eliminated by setting this to `false`.\r\n */\r\n preserveOrder?: boolean;\r\n\r\n /** Controls whether normals are generated for surfaces. Normals allow 3d geometry to receive lighting; without them the geometry will be unaffected by lighting.\r\n * By default, normals are generated only for graphics of type [[GraphicType.Scene]]; or for any type of graphic if [[GraphicBuilder.wantEdges]] is true, because\r\n * normals are required to prevent z-fighting between surfaces and their edges. This default can be overridden by explicitly specifying `true` or `false`.\r\n * @see [[GraphicType]] for a description of whether and how different types of graphics are affected by lighting.\r\n */\r\n wantNormals?: boolean;\r\n\r\n /** Controls whether edges are generated for surfaces.\r\n * Edges are only displayed if [ViewFlags.renderMode]($common) is not [RenderMode.SmoothShade]($common) or [ViewFlags.visibleEdges]($common) is `true`.\r\n * Since all decoration graphics except [[GraphicType.Scene]] are drawn in smooth shaded mode with no visible edges, by default edges are only produced for scene graphics, and\r\n * - if a [[Viewport]] is supplied with the options - only if [ViewFlags.edgesRequired]($common) is true for the viewport.\r\n * That default can be overridden by explicitly specifying `true` or `false`. This can be useful for non-scene decorations contained in a [[GraphicBranch]] that applies [ViewFlagOverrides]($common)\r\n * that change the edge display settings; or for scene decorations that might be cached for reuse after the viewport's edge settings are changed.\r\n * @note Edges will tend to z-fight with their surfaces unless the graphic is [[pickable]].\r\n */\r\n generateEdges?: boolean;\r\n\r\n /** If defined, specifies a point about which the graphic will rotate such that it always faces the viewer.\r\n * This can be particular useful for planar regions to create a billboarding effect - e.g., to implement [[Marker]]-like WebGL decorations.\r\n * The graphic's [[placement]] transform is not applied to the point.\r\n * @note This has no effect for graphics displayed in a 2d view.\r\n */\r\n viewIndependentOrigin?: Point3d;\r\n}\r\n\r\n/** Options for creating a [[GraphicBuilder]] to produce a [[RenderGraphic]] to be displayed in a specific [[Viewport]].\r\n * The level of detail of the graphic will be computed from the position of its geometry within the viewport's [Frustum]($common).\r\n * Default values for [[GraphicBuilderOptions.wantNormals]] and [[GraphicBuilderOptions.generateEdges]] will be determined by the viewport's [ViewFlags]($common).\r\n * The [[GraphicBuilder.iModel]] will be set to the viewport's [[IModelConnection]].\r\n * @public\r\n * @extensions\r\n */\r\nexport interface ViewportGraphicBuilderOptions extends GraphicBuilderOptions {\r\n /** The viewport in which the resultant [[RenderGraphic]] is to be drawn. */\r\n viewport: Viewport;\r\n\r\n /** If true, [[ViewState.getAspectRatioSkew]] will be taken into account when computing the level of detail for the produced graphics. */\r\n applyAspectRatioSkew?: boolean;\r\n\r\n iModel?: never;\r\n computeChordTolerance?: never;\r\n}\r\n\r\n/** Arguments used to compute the chord tolerance (level of detail) of the [[RenderGraphic]] or [[GraphicTemplate]] produced by a [[GraphicBuilder]].\r\n * Generally, the chord tolerance should be roughly equivalent to the size in meters of one pixel on screen where the graphic is to be displayed.\r\n * For [[GraphicType.ViewOverlay]] and [[GraphicType.ViewBackground]], which already define their geometry in pixels, the chord tolerance should typically be 1.\r\n * @see [[CustomGraphicBuilderOptions.computeChordTolerance]].\r\n * @public\r\n * @extensions\r\n */\r\nexport interface ComputeChordToleranceArgs {\r\n /** The graphic builder being used to produce the graphics. */\r\n readonly graphic: GraphicBuilder;\r\n /** A function that computes a range enclosing all of the geometry that was added to the builder. */\r\n readonly computeRange: () => Range3d;\r\n}\r\n\r\n/** Options for creating a [[GraphicBuilder]] to produce a [[RenderGraphic]] or [[GraphicTemplate]] that is not associated with any particular [[Viewport]] and may not be associated with\r\n * any particular [[IModelConnection]].\r\n * This is primarily useful when the same graphic is to be saved and reused for display in multiple viewports and for which a chord tolerance can be computed\r\n * independently of each viewport's [Frustum]($common).\r\n * @public\r\n * @extensions\r\n */\r\nexport interface CustomGraphicBuilderOptions extends GraphicBuilderOptions {\r\n /** Optionally, the IModelConnection with which the graphic is associated. */\r\n iModel?: IModelConnection;\r\n /** A function that can compute the level of detail for the graphics produced by the builder. */\r\n computeChordTolerance: (args: ComputeChordToleranceArgs) => number;\r\n\r\n applyAspectRatioSkew?: never;\r\n viewport?: never;\r\n}\r\n\r\n/** Provides methods for constructing a [[RenderGraphic]] or [[GraphicTemplate]] from geometric primitives and symbology.\r\n * GraphicBuilder is primarily used for creating [[Decorations]] to be displayed inside a [[Viewport]].\r\n *\r\n * The typical process for constructing a [[RenderGraphic]] proceeds as follows:\r\n * 1. Use [[DecorateContext.createGraphic]] or [[RenderSystem.createGraphic]] to obtain a builder.\r\n * 2. Set up the symbology using [[GraphicBuilder.activateGraphicParams]] or [[GraphicBuilder.setSymbology]].\r\n * 3. Add one or more geometric primitives using methods like [[GraphicBuilder.addShape]] and [[GraphicBuilder.addLineString]], possibly setting new symbology in between.\r\n * 4. Use [[GraphicBuilder.finish]] to produce the finished [[RenderGraphic]].\r\n *\r\n * The process for constructing a [[GraphicTemplate]] is similar:\r\n * 1. Use [[RenderSystem.createGraphic]] to obtain a builder.\r\n * 2. Set up the symbology using [[GraphicBuilder.activateGraphicParams]] or [[GraphicBuilder.setSymbology]].\r\n * 3. Add one or more geometric primitives using methods like [[GraphicBuilder.addShape]] and [[GraphicBuilder.addLineString]], possibly setting new symbology in between.\r\n * 4. Use [[GraphicBuilder.finishTemplate]] to produce the finished [[GraphicTemplate]].\r\n *\r\n * @note Most of the methods which add geometry to the builder take ownership of their inputs rather than cloning them.\r\n * So, for example, if you pass an array of points to addLineString(), you should not subsequently modify that array.\r\n *\r\n * @public\r\n * @extensions\r\n */\r\nexport abstract class GraphicBuilder extends GraphicAssembler {\r\n /** The iModel associated with this builder, if any. */\r\n public readonly iModel?: IModelConnection;\r\n\r\n /** @internal */\r\n protected readonly _computeChordTolerance: (args: ComputeChordToleranceArgs) => number;\r\n\r\n /** @internal */\r\n protected constructor(options: ViewportGraphicBuilderOptions | CustomGraphicBuilderOptions) {\r\n const vp = options.viewport;\r\n const placement = options.placement ?? Transform.createIdentity();\r\n const wantEdges = options.generateEdges ?? (options.type === GraphicType.Scene && (!vp || vp.viewFlags.edgesRequired()));\r\n const wantNormals = options.wantNormals ?? (wantEdges || options.type === GraphicType.Scene);\r\n const preserveOrder = options.preserveOrder ?? (options.type === GraphicType.ViewOverlay || options.type === GraphicType.WorldOverlay || options.type === GraphicType.ViewBackground);\r\n\r\n super({\r\n ...options,\r\n [_implementationProhibited]: undefined,\r\n placement,\r\n wantEdges,\r\n wantNormals,\r\n preserveOrder,\r\n });\r\n\r\n this.iModel = vp?.iModel ?? options.iModel;\r\n if (!options.viewport) {\r\n this._computeChordTolerance = options.computeChordTolerance;\r\n return;\r\n }\r\n\r\n this._computeChordTolerance = (args: ComputeChordToleranceArgs) => {\r\n let pixelSize = 1;\r\n if (!this.isViewCoordinates) {\r\n // Compute the horizontal distance in meters between two adjacent pixels at the center of the geometry.\r\n pixelSize = options.viewport.getPixelSizeAtPoint(args.computeRange().center);\r\n pixelSize = options.viewport.target.adjustPixelSizeForLOD(pixelSize);\r\n\r\n // Aspect ratio skew > 1.0 stretches the view in Y. In that case use the smaller vertical pixel distance for our stroke tolerance.\r\n const skew = options.applyAspectRatioSkew ? options.viewport.view.getAspectRatioSkew() : 0;\r\n if (skew > 1)\r\n pixelSize /= skew;\r\n }\r\n\r\n return pixelSize * 0.25;\r\n };\r\n }\r\n\r\n /**\r\n * Processes the accumulated symbology and geometry to produce a renderable graphic.\r\n * This function can only be called once; after the [[RenderGraphic]] has been extracted the [[GraphicBuilder]] should no longer be used.\r\n * @see [[finishTemplate]] to obtain a [[GraphicTemplate]] instead.\r\n */\r\n public abstract finish(): RenderGraphic;\r\n\r\n /** Processes the accumulated symbology and geometry to produce a reusable template for a [[RenderGraphic]].\r\n * This function can only be called once; after the [[GraphicTemplate]] has been extracted the [[GraphicBuilder]] should no longer be used.\r\n * @see [[finish]] to obtain a [[RenderGraphic]] instead.\r\n * @beta\r\n */\r\n public abstract finishTemplate(): GraphicTemplate;\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"GraphicBuilder.js","sourceRoot":"","sources":["../../../src/render/GraphicBuilder.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAoB,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAInE,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAsGvE;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,OAAgB,cAAe,SAAQ,gBAAgB;IAC3D,uDAAuD;IACvC,MAAM,CAAoB;IAE1C,gBAAgB;IACG,sBAAsB,CAA8C;IAEvF,gBAAgB;IAChB,YAAsB,OAAoE;QACxF,MAAM,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC;QAC5B,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,SAAS,CAAC,cAAc,EAAE,CAAC;QAClE,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;QACzH,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,KAAK,CAAC,CAAC;QAC7F,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,WAAW,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,YAAY,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,cAAc,CAAC,CAAC;QAEtL,KAAK,CAAC;YACJ,GAAG,OAAO;YACV,CAAC,yBAAyB,CAAC,EAAE,SAAS;YACtC,SAAS;YACT,SAAS;YACT,WAAW;YACX,aAAa;SACd,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,GAAG,EAAE,EAAE,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;QAC3C,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACtB,IAAI,CAAC,sBAAsB,GAAG,OAAO,CAAC,qBAAqB,CAAC;YAC5D,OAAO;QACT,CAAC;QAED,IAAI,CAAC,sBAAsB,GAAG,CAAC,IAA+B,EAAE,EAAE;YAChE,IAAI,SAAS,GAAG,CAAC,CAAC;YAClB,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC5B,uGAAuG;gBACvG,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,CAAC;gBAC7E,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;gBAErE,kIAAkI;gBAClI,MAAM,IAAI,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC3F,IAAI,IAAI,GAAG,CAAC;oBACV,SAAS,IAAI,IAAI,CAAC;YACtB,CAAC;YAED,OAAO,SAAS,GAAG,IAAI,CAAC;QAC1B,CAAC,CAAC;IACJ,CAAC;CAeF"}
|