@arcgis/core 4.34.0-next.24 → 4.34.0-next.25
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/Basemap.js +1 -1
- package/analysis/VolumeMeasurement/CutFillOptions.d.ts +4 -0
- package/analysis/VolumeMeasurement/CutFillOptions.js +1 -1
- package/analysis/VolumeMeasurementAnalysis.js +1 -1
- package/applications/Components/imageryUtils.d.ts +4 -0
- package/applications/Components/imageryUtils.js +5 -0
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/{0867aa688fa8938906da.js → 03bef3f4b6b09b1e864b.js} +1 -1
- package/assets/esri/core/workers/chunks/06cdbccc9f325dcc303d.js +1 -0
- package/assets/esri/core/workers/chunks/07613c89255bdab6b7c6.js +1 -0
- package/assets/esri/core/workers/chunks/09618761df5c4fdd52a0.js +1 -0
- package/assets/esri/core/workers/chunks/0ae00339991f5387203e.js +1 -0
- package/assets/esri/core/workers/chunks/0b4b294f3ce74fde5620.js +1 -0
- package/assets/esri/core/workers/chunks/{146520d263b910b5bdc7.js → 0e96a3b7228f1ff8e6c5.js} +1 -1
- package/assets/esri/core/workers/chunks/109ef17dd4f9430bb686.js +1 -0
- package/assets/esri/core/workers/chunks/1597aca21334cab3b802.js +1 -0
- package/assets/esri/core/workers/chunks/196564ad230bef6b59cf.js +1 -0
- package/assets/esri/core/workers/chunks/19f8d551cbebc11db1eb.js +1 -0
- package/assets/esri/core/workers/chunks/1ceee047e3fa617b0600.js +1 -0
- package/assets/esri/core/workers/chunks/1d27701832ea139fcc20.js +1 -0
- package/assets/esri/core/workers/chunks/1f296f85becf1ca6714d.js +1 -0
- package/assets/esri/core/workers/chunks/1f8d7bd44d53c30df383.js +1 -0
- package/assets/esri/core/workers/chunks/1fabb5ec59da698c1618.js +1 -0
- package/assets/esri/core/workers/chunks/{919d2fd7ebc0c840a759.js → 219b2911668db120452b.js} +1 -1
- package/assets/esri/core/workers/chunks/29ae5723fa35aa73ff9b.js +1 -0
- package/assets/esri/core/workers/chunks/2b4b073254fe8b6a081c.js +1 -0
- package/assets/esri/core/workers/chunks/30293b88501b5d6162fc.js +1 -0
- package/assets/esri/core/workers/chunks/31533f5e8b76b307f61c.js +1 -0
- package/assets/esri/core/workers/chunks/347117e61e1c6edd074f.js +1 -0
- package/assets/esri/core/workers/chunks/3616eb2607843524483f.js +1 -0
- package/assets/esri/core/workers/chunks/36648facd56ee91afc7c.js +1 -0
- package/assets/esri/core/workers/chunks/394477e88be0c6790f02.js +1 -0
- package/assets/esri/core/workers/chunks/3b80b01551d124534a1b.js +1 -0
- package/assets/esri/core/workers/chunks/{89d91ce2f566dd3f57f7.js → 3be9ec0503a669bcfce6.js} +1 -1
- package/assets/esri/core/workers/chunks/3c9cf06ac6aa1db6c4f6.js +1 -0
- package/assets/esri/core/workers/chunks/40fc7c43feaeef8b814d.js +1 -0
- package/assets/esri/core/workers/chunks/42cddc8f8c8d73e22ee2.js +1 -0
- package/assets/esri/core/workers/chunks/437a4100a837ee16df7c.js +1 -0
- package/assets/esri/core/workers/chunks/453e536f566d80a9863b.js +1 -0
- package/assets/esri/core/workers/chunks/472c677a74d779ce62d7.js +1 -0
- package/assets/esri/core/workers/chunks/4b68b6985430c42316b7.js +1 -0
- package/assets/esri/core/workers/chunks/4ce671bc4d36387b55fa.js +1 -0
- package/assets/esri/core/workers/chunks/51cfa2f70ec222e1582b.js +1 -0
- package/assets/esri/core/workers/chunks/5284d46aecd6fe0345b8.js +1 -0
- package/assets/esri/core/workers/chunks/567385709e18ace93b1e.js +1 -0
- package/assets/esri/core/workers/chunks/5a9b27f2b343cd5b0852.js +1 -0
- package/assets/esri/core/workers/chunks/{4c2f3e43992a918e4c2d.js → 5ef3256c32c4b622bd11.js} +1 -1
- package/assets/esri/core/workers/chunks/{5ce62d9fff80d014d186.js → 60aeb7a5ccd8bc71be02.js} +1 -1
- package/assets/esri/core/workers/chunks/{55e9b02d70812f7cdac2.js → 63966066a963e9a1fb14.js} +1 -1
- package/assets/esri/core/workers/chunks/63f50ff2ae94f684d56b.js +1 -0
- package/assets/esri/core/workers/chunks/{8bf04be4052bf148777a.js → 6a1cf6b0ffdf6080b5c4.js} +1 -1
- package/assets/esri/core/workers/chunks/6deaa08e3a61a455e564.js +1 -0
- package/assets/esri/core/workers/chunks/6e9b4bfe2a1497c96100.js +1 -0
- package/assets/esri/core/workers/chunks/6efc3d120c9c2c09cb06.js +1 -0
- package/assets/esri/core/workers/chunks/7338ce95bceb2c7fab87.js +1 -0
- package/assets/esri/core/workers/chunks/{c64fa94cba71ba2794e2.js → 771012f129890f9a089c.js} +1 -1
- package/assets/esri/core/workers/chunks/{d1b363c418a67b087306.js → 780ff9314f26ae62f75f.js} +1 -1
- package/assets/esri/core/workers/chunks/820cf4337b248a0cb63c.js +1 -0
- package/assets/esri/core/workers/chunks/{fedbf639a0788417a70f.js → 86abfce1f2ac93cc4d54.js} +1 -1
- package/assets/esri/core/workers/chunks/{c94cc026c4ed330408fb.js → 8894483b91bcda845b6f.js} +1 -1
- package/assets/esri/core/workers/chunks/{f050ab9d100012b77bb9.js → 8c5b1114cc2a58305a81.js} +1 -1
- package/assets/esri/core/workers/chunks/{6ca764b4baadef5c1515.js → 92737419b66894799a34.js} +1 -1
- package/assets/esri/core/workers/chunks/9511e55e4fabb3235eac.js +1 -0
- package/assets/esri/core/workers/chunks/{909a6218db87cba2c9ba.js → 9a78cb291c966f8ddda6.js} +1 -1
- package/assets/esri/core/workers/chunks/9f8341caab3b1d02f387.js +1 -0
- package/assets/esri/core/workers/chunks/a08d018d8c137fc4ca17.js +1 -0
- package/assets/esri/core/workers/chunks/{7051bcc178eb512819f6.js → a55338add265d330124b.js} +1 -1
- package/assets/esri/core/workers/chunks/afe4fd3b1b3521712edd.js +1 -0
- package/assets/esri/core/workers/chunks/{9991bd3c7991bffd8260.js → b37f3c416cefc1a6ea2c.js} +1 -1
- package/assets/esri/core/workers/chunks/bb50b4a3af627f91d789.js +1 -0
- package/assets/esri/core/workers/chunks/{f42155b7a4e6c5e80757.js → bbc2a4976d044b990193.js} +1 -1
- package/assets/esri/core/workers/chunks/bbf2c31d217de1b8ba6e.js +1 -0
- package/assets/esri/core/workers/chunks/be3977f7fe0c46a1b493.js +1 -0
- package/assets/esri/core/workers/chunks/befba7ceeb26a38732c1.js +1 -0
- package/assets/esri/core/workers/chunks/bf3fc71881aa559fc931.js +1 -0
- package/assets/esri/core/workers/chunks/c19421707257fc93acb9.js +1 -0
- package/assets/esri/core/workers/chunks/c1fb5290e0e259b74389.js +1 -0
- package/assets/esri/core/workers/chunks/c361bf4d41a1843d4640.js +1 -0
- package/assets/esri/core/workers/chunks/c51099eab5a99c88e5de.js +1 -0
- package/assets/esri/core/workers/chunks/c56b05a8be498b6f3ee7.js +1 -0
- package/assets/esri/core/workers/chunks/c82e78590c2fabc67609.js +1 -0
- package/assets/esri/core/workers/chunks/{7d7f8f2936ddee65e3da.js → c9e580867f7ac17be329.js} +1 -1
- package/assets/esri/core/workers/chunks/{92ad9098006568358550.js → cafcb46d723d38b377a9.js} +1 -1
- package/assets/esri/core/workers/chunks/{1d75cb1747ffb7b8b050.js → cb81d448ed6bad205346.js} +1 -1
- package/assets/esri/core/workers/chunks/{0f6203ae32663b2b52db.js → d08a523b548e892e1222.js} +1 -1
- package/assets/esri/core/workers/chunks/d29ae64703a947bfb83b.js +1 -0
- package/assets/esri/core/workers/chunks/{04c17957c15234ca0321.js → d81260303a11d3fbe940.js} +1 -1
- package/assets/esri/core/workers/chunks/de1457b07f4e263f1524.js +1 -0
- package/assets/esri/core/workers/chunks/{6bf43bc3714d7b3878fa.js → e547318638c8f496c1a0.js} +1 -1
- package/assets/esri/core/workers/chunks/e8e993fb8697b8f3e0c7.js +346 -0
- package/assets/esri/core/workers/chunks/{53781ccca16e53d4a8c3.js → f291ccf9da6aa7d7ae23.js} +1 -1
- package/assets/esri/core/workers/chunks/f61a8cc7e2b198e521ba.js +1 -0
- package/assets/esri/core/workers/chunks/f9442a281cb91c64c7cd.js +1 -0
- package/assets/esri/core/workers/chunks/fb785bc38323cce6e549.js +1 -0
- package/assets/esri/core/workers/chunks/{c3213b487c11076985af.js → fbf3240b36718fa5dc76.js} +1 -1
- package/assets/esri/rest/knowledgeGraph/wasmInterface/arcgis-knowledge-client-core-simd.wasm +0 -0
- package/assets/esri/rest/knowledgeGraph/wasmInterface/arcgis-knowledge-client-core.wasm +0 -0
- package/chunks/ComponentShader.glsl.js +36 -36
- package/chunks/RibbonLine.glsl.js +40 -33
- package/chunks/persistableUrlUtils.js +1 -1
- package/config.js +1 -1
- package/core/AsyncUpdate.js +1 -1
- package/core/Clonable.js +1 -1
- package/core/Evented.js +1 -1
- package/core/Identifiable.js +1 -1
- package/core/JSONSupport.js +1 -1
- package/core/Loadable.js +1 -1
- package/core/MapUtils.js +1 -1
- package/core/MemCache.js +1 -1
- package/core/MultiOriginJSONSupport.js +1 -1
- package/core/ObjectPool.js +1 -1
- package/core/Promise.js +1 -1
- package/core/ReadOnlyMultiOriginJSONSupport.js +1 -1
- package/core/quantity.d.ts +1 -0
- package/geometry/support/buffer/BufferPool.js +1 -1
- package/geometry/support/meshUtils/loadGLTFMesh.js +1 -1
- package/interfaces.d.ts +147 -12
- package/kernel.js +1 -1
- package/layers/CatalogLayer.js +1 -1
- package/layers/FeatureLayer.js +1 -1
- package/layers/GeoJSONLayer.js +1 -1
- package/layers/SubtypeGroupLayer.js +1 -1
- package/layers/knowledgeGraph/KnowledgeGraphSublayerBase.js +1 -1
- package/layers/mixins/APIKeyMixin.js +1 -1
- package/layers/mixins/ArcGISCachedService.js +1 -1
- package/layers/mixins/ArcGISImageService.js +1 -1
- package/layers/mixins/ArcGISMapService.js +1 -1
- package/layers/mixins/ArcGISService.js +1 -1
- package/layers/mixins/BlendLayer.js +1 -1
- package/layers/mixins/CustomParametersMixin.js +1 -1
- package/layers/mixins/DisplayFilteredLayer.js +1 -1
- package/layers/mixins/EditBusLayer.js +1 -1
- package/layers/mixins/FeatureEffectLayer.js +1 -1
- package/layers/mixins/FeatureLayerBase.js +1 -1
- package/layers/mixins/FeatureReductionLayer.js +1 -1
- package/layers/mixins/ImageryTileMixin.js +1 -1
- package/layers/mixins/OperationalLayer.js +1 -1
- package/layers/mixins/OrderedLayer.js +1 -1
- package/layers/mixins/PortalLayer.js +1 -1
- package/layers/mixins/PublishableLayer.js +1 -1
- package/layers/mixins/RasterJobHandlerMixin.js +1 -1
- package/layers/mixins/RasterPresetRendererMixin.js +1 -1
- package/layers/mixins/RefreshableLayer.js +1 -1
- package/layers/mixins/ScaleRangeLayer.js +1 -1
- package/layers/mixins/SceneService.js +1 -1
- package/layers/mixins/SublayersOwner.js +1 -1
- package/layers/mixins/TemporalLayer.js +1 -1
- package/layers/mixins/TemporalSceneLayer.js +1 -1
- package/layers/mixins/TrackableLayer.js +1 -1
- package/layers/ogc/wfsUtils.js +1 -1
- package/layers/support/RasterJobHandler.js +1 -1
- package/layers/support/RasterWorker.js +1 -1
- package/layers/support/Sublayer.js +1 -1
- package/layers/support/arcgisLayerUrl.js +1 -1
- package/layers/support/multiLayerServiceUtils.js +1 -1
- package/layers/support/rasterDatasets/pixelReader.js +5 -0
- package/layers/support/rasterFormats/pixelRangeUtils.js +1 -1
- package/layers/support/rasterFunctions/pixelUtils.js +1 -1
- package/package.json +1 -1
- package/renderers/mixins/VisualVariablesMixin.js +1 -1
- package/rest/support/CameraInfoMixin.js +1 -1
- package/rest/support/NormalizationBinParametersMixin.js +1 -1
- package/smartMapping/renderers/color.js +1 -1
- package/smartMapping/renderers/heatmap.js +1 -1
- package/smartMapping/renderers/pieChart.js +1 -1
- package/smartMapping/renderers/size.js +1 -1
- package/smartMapping/renderers/support/regenerateUtils.js +1 -1
- package/smartMapping/renderers/support/rendererUtils.js +1 -1
- package/smartMapping/renderers/type.js +1 -1
- package/smartMapping/symbology/color.js +1 -1
- package/smartMapping/symbology/support/utils.js +1 -1
- package/support/LayersMixin.js +1 -1
- package/support/TablesMixin.js +1 -1
- package/support/revision.js +1 -1
- package/symbols/support/utils.js +1 -1
- package/views/2d/engine/ParentChildStage.js +1 -1
- package/views/2d/engine/webgl/VideoScreenRenderer.js +1 -1
- package/views/2d/engine/webgl/meshing/Mesh.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/shaders/raster/processor/MultiRasterMixin.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/videoScreenRenderer/VideoScreenTechnique.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/typed/TypedShaderProgram.js +1 -1
- package/views/2d/engine/webgl/textureUtils.js +1 -1
- package/views/2d/layers/BitmapTileLayerView2D.js +1 -1
- package/views/2d/layers/LayerView2D.js +1 -1
- package/views/2d/layers/MediaLayerView2D.js +1 -1
- package/views/2d/layers/TileLayerView2D.js +1 -1
- package/views/2d/layers/features/support/AttributeStore.js +1 -1
- package/views/2d/layers/support/DebugOverlay.js +1 -1
- package/views/3d/analysis/AnalysisView3D.js +1 -1
- package/views/3d/analysis/VolumeMeasurement/CutFillVolumeMeasurementController.js +5 -0
- package/views/3d/analysis/VolumeMeasurementAnalysisView3D.js +1 -1
- package/views/3d/glTF/DefaultLoadingContext.js +1 -1
- package/views/3d/interactive/measurementTools/areaMeasurement3D/AreaMeasurement3DTool.js +1 -1
- package/views/3d/layers/BuildingSublayerView3D.js +1 -1
- package/views/3d/layers/ElevationLayerView3D.js +1 -1
- package/views/3d/layers/FeatureLikeLayerView3D.js +1 -1
- package/views/3d/layers/FlowSubView3D.js +1 -1
- package/views/3d/layers/I3SMeshView3D.js +1 -1
- package/views/3d/layers/ImageryLayerView3D.js +1 -1
- package/views/3d/layers/ImageryTileLayerView3D.js +1 -1
- package/views/3d/layers/LayerView3D.js +1 -1
- package/views/3d/layers/PointCloudLayerView3D.js +1 -1
- package/views/3d/layers/StreamLayerView3D.js +1 -1
- package/views/3d/layers/TiledLayerView3D.js +1 -1
- package/views/3d/layers/graphics/Graphics3DSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DWaterSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Labeler.js +1 -1
- package/views/3d/layers/graphics/StreamController.js +5 -0
- package/views/3d/layers/graphics/StreamGraphics3DGraphicsPipeline.js +1 -1
- package/views/3d/layers/graphics/defaultSymbolComplexity.js +1 -1
- package/views/3d/layers/graphics/wosrLoader.js +1 -1
- package/views/3d/layers/i3s/I3SIndex.js +1 -1
- package/views/3d/layers/i3s/I3SNodeLoader.js +1 -1
- package/views/3d/layers/support/DefinitionExpressionSceneLayerView.js +1 -1
- package/views/3d/layers/support/PopupSceneLayerView.js +1 -1
- package/views/3d/layers/support/TemporalSceneLayerView.js +1 -1
- package/views/3d/layers/support/fetchTile.js +1 -1
- package/views/3d/support/MemoryController.js +1 -1
- package/views/3d/support/ResourceController.js +1 -1
- package/views/3d/support/StreamDataLoader.js +1 -1
- package/views/3d/support/StreamDataRequester.js +5 -0
- package/views/3d/support/StreamTextureCollection.js +1 -1
- package/views/3d/support/engineContent/line.js +1 -1
- package/views/3d/support/flow/FlowSubViewExtent3D.js +1 -1
- package/views/3d/support/flow/FlowSubViewTiles3D.js +1 -1
- package/views/3d/support/flow/StreamlinesResources3D.js +1 -1
- package/views/3d/support/flow/geometryUtils.js +1 -1
- package/views/3d/support/index.js +1 -1
- package/views/3d/terrain/OverlayRenderer.js +1 -1
- package/views/3d/terrain/TerrainRenderer.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/shader/ComponentShader.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/terrain/Overlay.glsl.js +3 -3
- package/views/3d/webgl-engine/lib/DrapedHeatmapRenderer.js +1 -1
- package/views/3d/webgl-engine/lib/GeometryUtil.js +1 -1
- package/views/3d/webgl-engine/lib/SortedRenderGeometryRenderer.js +1 -1
- package/views/3d/webgl-engine/lib/TextTextureAtlas.js +1 -1
- package/views/3d/webgl-engine/lib/VertexAttribute.js +1 -1
- package/views/3d/webgl-engine/materials/DefaultLayouts.js +1 -1
- package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/WaterMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/renderers/MergedRenderer.js +1 -1
- package/views/3d/webgl-engine/shaders/AnimatedLine.glsl.js +17 -0
- package/views/3d/webgl-engine/shaders/RibbonLine.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/RibbonLineTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/RibbonLineTechniqueConfiguration.js +1 -1
- package/views/BreakpointsOwner.js +1 -1
- package/views/DOMContainer.js +1 -1
- package/views/PopupView.js +1 -1
- package/views/VideoView.js +1 -1
- package/views/Viewport2DBaseMixin.js +1 -1
- package/views/Viewport2DMixin.js +1 -1
- package/views/draw/DrawGraphicTool.js +1 -1
- package/views/draw/DrawScreenTool.js +1 -1
- package/views/draw/DrawTool.js +1 -1
- package/views/interactive/tooltip/infos/TooltipInfoWithCoordinates.js +1 -1
- package/views/layers/CatalogDynamicGroupLayerView.js +1 -1
- package/views/layers/CatalogFootprintLayerView.js +1 -1
- package/views/layers/CatalogLayerView.js +1 -1
- package/views/layers/DimensionLayerView.js +1 -1
- package/views/layers/FeatureLayerView.js +1 -1
- package/views/layers/ImageryLayerView.js +1 -1
- package/views/layers/ImageryTileLayerView.js +1 -1
- package/views/layers/LineOfSightLayerView.js +1 -1
- package/views/layers/MapImageLayerView.js +1 -1
- package/views/layers/MediaLayerView.js +1 -1
- package/views/layers/OGCFeatureLayerView.js +1 -1
- package/views/layers/PointCloudLayerView.js +1 -1
- package/views/layers/RefreshableLayerView.js +1 -1
- package/views/layers/StreamLayerView.js +1 -1
- package/views/layers/ViewshedLayerView.js +1 -1
- package/views/layers/WMSLayerView.js +1 -1
- package/views/support/Scheduler.js +1 -1
- package/views/video/VideoOperationalDataView.js +1 -1
- package/views/webgl/BufferObject.js +1 -1
- package/views/webgl/Program.js +1 -1
- package/views/webgl/Renderbuffer.js +1 -1
- package/views/webgl/Texture.js +1 -1
- package/views/webgl/Util.js +1 -1
- package/webscene/SunLighting.js +1 -1
- package/webscene/VirtualLighting.js +1 -1
- package/widgets/BasemapGallery/support/PortalBasemapsSource.js +1 -1
- package/widgets/Directions/DirectionsSearchTool.js +1 -1
- package/widgets/Editor/EditorViewModel.js +1 -1
- package/widgets/Editor/UpdateFeaturesWorkflow.js +1 -1
- package/widgets/Editor/components/UpdateFeaturePanelContent.js +1 -1
- package/widgets/Feature/FeatureExpression/FeatureExpressionViewModel.js +1 -1
- package/widgets/Feature/support/FeatureContentMixin.js +1 -1
- package/widgets/Feature/support/arcadeFeatureUtils.js +1 -1
- package/widgets/FeatureTable/support/EditableColumnTemplateMixin.js +1 -1
- package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
- package/widgets/OrientedImageryViewer/mixins/ImageMeasurementMixin.js +1 -1
- package/widgets/OrientedImageryViewer/mixins/SketchHandlerMixin.js +1 -1
- package/widgets/OrientedImageryViewer/mixins/TriangulatedImageMeasurementMixin.js +1 -1
- package/widgets/OrientedImageryViewer/mixins/TriangulatedSketchHandlerMixin.js +1 -1
- package/widgets/PanoramicViewer/PanoramicViewerViewModel.js +1 -1
- package/widgets/PanoramicViewer/PanoramicZoomConditions.js +1 -1
- package/widgets/PanoramicViewer.js +1 -1
- package/widgets/Sketch/support/ResponsiveToolbar/ToolbarGroupBase.js +1 -1
- package/widgets/support/GoTo.js +1 -1
- package/assets/esri/core/workers/chunks/0202c2ac73354e3970b2.js +0 -1
- package/assets/esri/core/workers/chunks/02dc6e31b1244e5bb785.js +0 -1
- package/assets/esri/core/workers/chunks/080c79d6caca3b6a2db2.js +0 -1
- package/assets/esri/core/workers/chunks/084236ca316aad980192.js +0 -1
- package/assets/esri/core/workers/chunks/0b484224a92b52c34330.js +0 -1
- package/assets/esri/core/workers/chunks/16a78f5a82f5ca163816.js +0 -1
- package/assets/esri/core/workers/chunks/1cc30073f8200b67cff6.js +0 -1
- package/assets/esri/core/workers/chunks/242b216d61940aebe8e1.js +0 -1
- package/assets/esri/core/workers/chunks/32756905bcf11699b3f7.js +0 -1
- package/assets/esri/core/workers/chunks/35d238a5a6501f89bed7.js +0 -1
- package/assets/esri/core/workers/chunks/36a2a8b6547604bad2ab.js +0 -1
- package/assets/esri/core/workers/chunks/3fcd73ba832cb53d3a07.js +0 -1
- package/assets/esri/core/workers/chunks/40c1d65039c8f1d6afa0.js +0 -1
- package/assets/esri/core/workers/chunks/49dce142ad1ea4c01d00.js +0 -1
- package/assets/esri/core/workers/chunks/4b89d5b9e35bf79b321e.js +0 -1
- package/assets/esri/core/workers/chunks/4c47d327815e281c457e.js +0 -1
- package/assets/esri/core/workers/chunks/4ea96aff38bb301dc40d.js +0 -346
- package/assets/esri/core/workers/chunks/54a49a25845897a15ab1.js +0 -1
- package/assets/esri/core/workers/chunks/576e408fb0834f3948e8.js +0 -1
- package/assets/esri/core/workers/chunks/5e805c9e9012dd39ec86.js +0 -1
- package/assets/esri/core/workers/chunks/6136bf09950adc46bc33.js +0 -1
- package/assets/esri/core/workers/chunks/666afe669866c44830bd.js +0 -1
- package/assets/esri/core/workers/chunks/6a0fbc54638f7de138c1.js +0 -1
- package/assets/esri/core/workers/chunks/843b6029d4c13115e1ac.js +0 -1
- package/assets/esri/core/workers/chunks/86d6007c45f2aa643ac8.js +0 -1
- package/assets/esri/core/workers/chunks/8ea34878a1ef24b4ded3.js +0 -1
- package/assets/esri/core/workers/chunks/8eea6251aa09725e654e.js +0 -1
- package/assets/esri/core/workers/chunks/90145d49a0cec902435c.js +0 -1
- package/assets/esri/core/workers/chunks/916691122d7fb38497d6.js +0 -1
- package/assets/esri/core/workers/chunks/9ae18a17f62d91167202.js +0 -1
- package/assets/esri/core/workers/chunks/9c510df592befb9ff892.js +0 -1
- package/assets/esri/core/workers/chunks/a273f80298417edecc07.js +0 -1
- package/assets/esri/core/workers/chunks/a2ed7a3cd518dd136ec7.js +0 -1
- package/assets/esri/core/workers/chunks/a6a7279b09d7962147ec.js +0 -1
- package/assets/esri/core/workers/chunks/aba520714efc01bead36.js +0 -1
- package/assets/esri/core/workers/chunks/acb9c166259872828646.js +0 -1
- package/assets/esri/core/workers/chunks/accff253af360c34e8a8.js +0 -1
- package/assets/esri/core/workers/chunks/ae6eed26fc932bc08356.js +0 -1
- package/assets/esri/core/workers/chunks/b32c1b60896a72e0ae90.js +0 -1
- package/assets/esri/core/workers/chunks/b4bb461955a4c2bce072.js +0 -1
- package/assets/esri/core/workers/chunks/b98279213f45a0c27600.js +0 -1
- package/assets/esri/core/workers/chunks/ba5b24beebeb703b5919.js +0 -1
- package/assets/esri/core/workers/chunks/bd7d19ba0c7d9143a455.js +0 -1
- package/assets/esri/core/workers/chunks/bffaf1f20f18c75fad4e.js +0 -1
- package/assets/esri/core/workers/chunks/c4f8da6c238eb5e91f91.js +0 -1
- package/assets/esri/core/workers/chunks/cdabea4718a7e7d34cb8.js +0 -1
- package/assets/esri/core/workers/chunks/ce7155ae63e7bb74be00.js +0 -1
- package/assets/esri/core/workers/chunks/d45383d76ba99718b6d9.js +0 -1
- package/assets/esri/core/workers/chunks/d915d0a30d9beb24bd3a.js +0 -1
- package/assets/esri/core/workers/chunks/dc6538a2d5a1e60d0209.js +0 -1
- package/assets/esri/core/workers/chunks/dca633ae3bfd4a3f9bb3.js +0 -1
- package/assets/esri/core/workers/chunks/dfa7976085f7408a366c.js +0 -1
- package/assets/esri/core/workers/chunks/e0a5b499b3ae38c21278.js +0 -1
- package/assets/esri/core/workers/chunks/e1a20ba7d6279f59adc0.js +0 -1
- package/assets/esri/core/workers/chunks/e49a135a2933306a6105.js +0 -1
- package/assets/esri/core/workers/chunks/e9a9174c4d1a0a9effb6.js +0 -1
- package/assets/esri/core/workers/chunks/edead1a123860cc74b1b.js +0 -1
- package/assets/esri/core/workers/chunks/f90573c9dc36e51cd588.js +0 -1
- package/assets/esri/core/workers/chunks/fa9658dbfb921f9c13af.js +0 -1
- package/assets/esri/core/workers/chunks/fb5e2b1ced03eef28e96.js +0 -1
- package/assets/esri/core/workers/chunks/fd8f4eabb8bbc593dd9c.js +0 -1
- package/assets/esri/core/workers/chunks/fe1902d63f610cebd947.js +0 -1
- package/layers/graphics/controllers/StreamController.js +0 -5
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{ShaderOutput as e}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutput.js";import{SliceDraw as i}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{ObjectAndLayerIdColor as t}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/ObjectAndLayerIdColor.glsl.js";import{RibbonVertexPosition as n}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js";import{LineStipple as r,computePixelSize as o}from"../views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js";import{MarkerSizing as a}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MarkerSizing.glsl.js";import{PiUtils as s}from"../views/3d/webgl-engine/core/shaderLibrary/shading/PiUtils.glsl.js";import{terrainDepthTest as l}from"../views/3d/webgl-engine/core/shaderLibrary/shading/TerrainDepthTest.glsl.js";import{ColorConversion as d}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{addProjViewLocalOrigin as p,addPixelRatio as c}from"../views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js";import{Float2BindUniform as m}from"../views/3d/webgl-engine/core/shaderModules/Float2BindUniform.js";import{Float4BindUniform as
|
|
5
|
+
import{ShaderOutput as e}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutput.js";import{SliceDraw as i}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{ObjectAndLayerIdColor as t}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/ObjectAndLayerIdColor.glsl.js";import{RibbonVertexPosition as n}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js";import{LineStipple as r,computePixelSize as o}from"../views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js";import{MarkerSizing as a}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MarkerSizing.glsl.js";import{PiUtils as s}from"../views/3d/webgl-engine/core/shaderLibrary/shading/PiUtils.glsl.js";import{terrainDepthTest as l}from"../views/3d/webgl-engine/core/shaderLibrary/shading/TerrainDepthTest.glsl.js";import{ColorConversion as d}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{addProjViewLocalOrigin as p,addPixelRatio as c}from"../views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js";import{Float2BindUniform as m}from"../views/3d/webgl-engine/core/shaderModules/Float2BindUniform.js";import{Float4BindUniform as f}from"../views/3d/webgl-engine/core/shaderModules/Float4BindUniform.js";import{Float4PassUniform as v}from"../views/3d/webgl-engine/core/shaderModules/Float4PassUniform.js";import{FloatBindUniform as g}from"../views/3d/webgl-engine/core/shaderModules/FloatBindUniform.js";import{FloatPassUniform as h}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{glsl as D,If as S}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{Matrix4BindUniform as u}from"../views/3d/webgl-engine/core/shaderModules/Matrix4BindUniform.js";import{VertexAttribute as x}from"../views/3d/webgl-engine/lib/VertexAttribute.js";import{AnimatedLine as L,Animation as w}from"../views/3d/webgl-engine/shaders/AnimatedLine.glsl.js";import{LineMarkerSpace as b}from"../views/3d/webgl-engine/shaders/LineMarkerTechniqueConfiguration.js";import{outputColorHighlightOID as y}from"../views/3d/webgl-engine/shaders/OutputColorHighlightOID.glsl.js";import{CapType as j}from"../views/3d/webgl-engine/shaders/RibbonLineTechniqueConfiguration.js";import{ShaderBuilder as C}from"../views/webgl/ShaderBuilder.js";import{alphaCutoff as P}from"../webscene/support/AlphaCutoff.js";const A=1;function F(F){const R=new C,{attributes:z,varyings:T,vertex:V,fragment:W}=R,{applyMarkerOffset:E,draped:O,output:M,capType:N,stippleEnabled:_,falloffEnabled:I,roundJoins:k,wireframe:$,innerColorEnabled:U,animation:B}=F;W.include(s),R.include(n,F),R.include(r,F),R.include(t,F),R.include(l,F),R.include(L,F);const H=E&&!O;H&&(V.uniforms.add(new h("markerScale",e=>e.markerScale)),R.include(a,{space:b.World})),p(V,F),V.uniforms.add(new u("inverseProjectionMatrix",e=>e.camera.inverseProjectionMatrix),new m("nearFar",e=>e.camera.nearFar),new h("miterLimit",e=>"miter"!==e.join?0:e.miterLimit),new f("viewport",e=>e.camera.fullViewport)),V.constants.add("LARGE_HALF_FLOAT","float",65500),z.add(x.POSITION,"vec3"),z.add(x.PREVIOUSDELTA,"vec4"),z.add(x.NEXTDELTA,"vec4"),z.add(x.LINEPARAMETERS,"vec2"),z.add(x.U0,"float"),T.add("vColor","vec4"),T.add("vpos","vec3",{invariant:!0}),T.add("vLineDistance","float"),T.add("vLineWidth","float");const J=_;J&&T.add("vLineSizeInv","float");const G=N===j.ROUND,q=_&&G,X=I||q;X&&T.add("vLineDistanceNorm","float"),G&&(T.add("vSegmentSDF","float"),T.add("vReverseSegmentSDF","float")),V.code.add(D`vec2 perpendicular(vec2 v) {
|
|
6
6
|
return vec2(v.y, -v.x);
|
|
7
7
|
}
|
|
8
8
|
float interp(float ncp, vec4 a, vec4 b) {
|
|
@@ -13,11 +13,11 @@ float s = sin(a);
|
|
|
13
13
|
float c = cos(a);
|
|
14
14
|
mat2 m = mat2(c, -s, s, c);
|
|
15
15
|
return m * v;
|
|
16
|
-
}`),
|
|
16
|
+
}`),V.code.add(D`vec4 projectAndScale(vec4 pos) {
|
|
17
17
|
vec4 posNdc = proj * pos;
|
|
18
18
|
posNdc.xy *= viewport.zw / posNdc.w;
|
|
19
19
|
return posNdc;
|
|
20
|
-
}`),
|
|
20
|
+
}`),V.code.add(D`void clipAndTransform(inout vec4 pos, inout vec4 prev, inout vec4 next, in bool isStartVertex) {
|
|
21
21
|
float vnp = nearFar[0] * 0.99;
|
|
22
22
|
if(pos.z > -nearFar[0]) {
|
|
23
23
|
if (!isStartVertex) {
|
|
@@ -47,7 +47,7 @@ forwardViewPosDepth(pos.xyz);
|
|
|
47
47
|
pos = projectAndScale(pos);
|
|
48
48
|
next = projectAndScale(next);
|
|
49
49
|
prev = projectAndScale(prev);
|
|
50
|
-
}`),c(
|
|
50
|
+
}`),c(V),V.constants.add("aaWidth","float",_?0:1).main.add(D`
|
|
51
51
|
// unpack values from vertex type
|
|
52
52
|
bool isStartVertex = abs(abs(lineParameters.y)-3.0) == 1.0;
|
|
53
53
|
vec3 prevPosition = position + previousDelta.xyz * previousDelta.w;
|
|
@@ -73,25 +73,25 @@ prev = projectAndScale(prev);
|
|
|
73
73
|
|
|
74
74
|
float lineWidth = lineSize * pixelRatio;
|
|
75
75
|
vLineWidth = lineWidth;
|
|
76
|
-
${
|
|
76
|
+
${J?D`vLineSizeInv = 1.0 / lineSize;`:""}
|
|
77
77
|
|
|
78
78
|
vec4 pos = view * vec4(position, 1.0);
|
|
79
79
|
vec4 prev = view * vec4(prevPosition, 1.0);
|
|
80
80
|
vec4 next = view * vec4(nextPosition, 1.0);
|
|
81
|
-
`),
|
|
81
|
+
`),H&&V.main.add(D`vec4 other = isStartVertex ? next : prev;
|
|
82
82
|
bool markersHidden = areWorldMarkersHidden(pos, other);
|
|
83
83
|
if(!isJoin && !markersHidden) {
|
|
84
84
|
pos.xyz += normalize(other.xyz - pos.xyz) * getWorldMarkerSize(pos) * 0.5;
|
|
85
|
-
}`),
|
|
85
|
+
}`),V.main.add(D`clipAndTransform(pos, prev, next, isStartVertex);
|
|
86
86
|
vec2 left = (pos.xy - prev.xy);
|
|
87
87
|
vec2 right = (next.xy - pos.xy);
|
|
88
88
|
float leftLen = length(left);
|
|
89
|
-
float rightLen = length(right);`);(
|
|
89
|
+
float rightLen = length(right);`);(_||G)&&V.main.add(D`
|
|
90
90
|
float isEndVertex = float(!isStartVertex);
|
|
91
91
|
vec2 segmentOrigin = mix(pos.xy, prev.xy, isEndVertex);
|
|
92
92
|
vec2 segment = mix(right, left, isEndVertex);
|
|
93
|
-
${
|
|
94
|
-
`),
|
|
93
|
+
${G?D`vec2 segmentEnd = mix(next.xy, pos.xy, isEndVertex);`:""}
|
|
94
|
+
`),V.main.add(D`left = (leftLen > 0.001) ? left/leftLen : vec2(0.0, 0.0);
|
|
95
95
|
right = (rightLen > 0.001) ? right/rightLen : vec2(0.0, 0.0);
|
|
96
96
|
vec2 capDisplacementDir = vec2(0, 0);
|
|
97
97
|
vec2 joinDisplacementDir = vec2(0, 0);
|
|
@@ -108,18 +108,18 @@ displacementLen = min(displacementLen, min(leftLen, rightLen)/abs(nDotSeg));
|
|
|
108
108
|
}
|
|
109
109
|
}
|
|
110
110
|
float subdivisionFactor = lineParameters.x;
|
|
111
|
-
if (isOutside && (displacementLen > miterLimit * lineWidth)) {`),
|
|
111
|
+
if (isOutside && (displacementLen > miterLimit * lineWidth)) {`),k?V.main.add(D`
|
|
112
112
|
vec2 startDir = leftLen < 0.001 ? right : left;
|
|
113
113
|
startDir = perpendicular(startDir);
|
|
114
114
|
|
|
115
115
|
vec2 endDir = rightLen < 0.001 ? left : right;
|
|
116
116
|
endDir = perpendicular(endDir);
|
|
117
117
|
|
|
118
|
-
float factor = ${
|
|
118
|
+
float factor = ${_?D`min(1.0, subdivisionFactor * ${D.float((A+2)/(A+1))})`:D`subdivisionFactor`};
|
|
119
119
|
|
|
120
120
|
float rotationAngle = acos(clamp(dot(startDir, endDir), -1.0, 1.0));
|
|
121
121
|
joinDisplacementDir = rotate(startDir, -sign(lineParameters.y) * factor * rotationAngle);
|
|
122
|
-
`):
|
|
122
|
+
`):V.main.add(D`if (leftLen < 0.001) {
|
|
123
123
|
joinDisplacementDir = right;
|
|
124
124
|
}
|
|
125
125
|
else if (rightLen < 0.001) {
|
|
@@ -128,7 +128,7 @@ joinDisplacementDir = left;
|
|
|
128
128
|
else {
|
|
129
129
|
joinDisplacementDir = (isStartVertex || subdivisionFactor > 0.0) ? right : left;
|
|
130
130
|
}
|
|
131
|
-
joinDisplacementDir = perpendicular(joinDisplacementDir);`);const
|
|
131
|
+
joinDisplacementDir = perpendicular(joinDisplacementDir);`);const K=N!==j.BUTT;return V.main.add(D`
|
|
132
132
|
displacementLen = lineWidth;
|
|
133
133
|
}
|
|
134
134
|
} else {
|
|
@@ -136,27 +136,27 @@ joinDisplacementDir = perpendicular(joinDisplacementDir);`);const J=E!==w.BUTT;r
|
|
|
136
136
|
joinDisplacementDir = isStartVertex ? right : left;
|
|
137
137
|
joinDisplacementDir = perpendicular(joinDisplacementDir);
|
|
138
138
|
|
|
139
|
-
${
|
|
139
|
+
${K?D`capDisplacementDir = isStartVertex ? -right : left;`:""}
|
|
140
140
|
}
|
|
141
|
-
`),
|
|
141
|
+
`),V.main.add(D`
|
|
142
142
|
// Displacement (in pixels) caused by join/or cap
|
|
143
143
|
vec2 dpos = joinDisplacementDir * sign(lineParameters.y) * displacementLen + capDisplacementDir * displacementLen;
|
|
144
144
|
float lineDistNorm = sign(lineParameters.y) * pos.w;
|
|
145
145
|
|
|
146
146
|
vLineDistance = lineWidth * lineDistNorm;
|
|
147
|
-
${
|
|
147
|
+
${X?D`vLineDistanceNorm = lineDistNorm;`:""}
|
|
148
148
|
|
|
149
149
|
pos.xy += dpos;
|
|
150
|
-
`),
|
|
150
|
+
`),G&&V.main.add(D`vec2 segmentDir = normalize(segment);
|
|
151
151
|
vSegmentSDF = (isJoin && isStartVertex) ? LARGE_HALF_FLOAT : (dot(pos.xy - segmentOrigin, segmentDir) * pos.w) ;
|
|
152
|
-
vReverseSegmentSDF = (isJoin && !isStartVertex) ? LARGE_HALF_FLOAT : (dot(pos.xy - segmentEnd, -segmentDir) * pos.w);`),
|
|
153
|
-
float worldToScreenRatio = computeWorldToScreenRatio(segmentCenter);`),
|
|
152
|
+
vReverseSegmentSDF = (isJoin && !isStartVertex) ? LARGE_HALF_FLOAT : (dot(pos.xy - segmentEnd, -segmentDir) * pos.w);`),_&&(O?V.uniforms.add(new g("worldToScreenRatio",e=>1/e.screenToPCSRatio)):V.main.add(D`vec3 segmentCenter = mix((nextPosition + position) * 0.5, (position + prevPosition) * 0.5, isEndVertex);
|
|
153
|
+
float worldToScreenRatio = computeWorldToScreenRatio(segmentCenter);`),V.main.add(D`float segmentLengthScreenDouble = length(segment);
|
|
154
154
|
float segmentLengthScreen = segmentLengthScreenDouble * 0.5;
|
|
155
155
|
float discreteWorldToScreenRatio = discretizeWorldToScreenRatio(worldToScreenRatio);
|
|
156
156
|
float segmentLengthRender = length(mix(nextPosition - position, position - prevPosition, isEndVertex));
|
|
157
|
-
vStipplePatternStretch = worldToScreenRatio / discreteWorldToScreenRatio;`),V
|
|
158
|
-
float startPseudoScreen = u0 * discreteWorldToScreenRatio - mix(0.0, segmentLengthPseudoScreen, isEndVertex);`):
|
|
159
|
-
float segmentLengthPseudoScreen = segmentLengthRender * discreteWorldToScreenRatio;`),
|
|
157
|
+
vStipplePatternStretch = worldToScreenRatio / discreteWorldToScreenRatio;`),O?V.main.add(D`float segmentLengthPseudoScreen = segmentLengthScreen / pixelRatio * discreteWorldToScreenRatio / worldToScreenRatio;
|
|
158
|
+
float startPseudoScreen = u0 * discreteWorldToScreenRatio - mix(0.0, segmentLengthPseudoScreen, isEndVertex);`):V.main.add(D`float startPseudoScreen = mix(u0, u0 - segmentLengthRender, isEndVertex) * discreteWorldToScreenRatio;
|
|
159
|
+
float segmentLengthPseudoScreen = segmentLengthRender * discreteWorldToScreenRatio;`),V.uniforms.add(new h("stipplePatternPixelSize",e=>o(e))),V.main.add(D`float patternLength = lineSize * stipplePatternPixelSize;
|
|
160
160
|
vStippleDistanceLimits = computeStippleDistanceLimits(startPseudoScreen, segmentLengthPseudoScreen, segmentLengthScreen, patternLength);
|
|
161
161
|
vStippleDistance = mix(vStippleDistanceLimits.x, vStippleDistanceLimits.y, isEndVertex);
|
|
162
162
|
if (segmentLengthScreenDouble >= 0.001) {
|
|
@@ -170,21 +170,21 @@ vStippleDistanceLimits = isJoin ?
|
|
|
170
170
|
vStippleDistanceLimits :
|
|
171
171
|
isStartVertex ?
|
|
172
172
|
vec2(-1e34, vStippleDistanceLimits.y) :
|
|
173
|
-
vec2(vStippleDistanceLimits.x, 1e34);`)),
|
|
173
|
+
vec2(vStippleDistanceLimits.x, 1e34);`)),V.main.add(D`
|
|
174
174
|
// Convert back into NDC
|
|
175
175
|
pos.xy = (pos.xy / viewport.zw) * pos.w;
|
|
176
176
|
|
|
177
177
|
vColor = getColor();
|
|
178
178
|
vColor.a *= coverage;
|
|
179
179
|
|
|
180
|
-
${
|
|
180
|
+
${$&&!O?"pos.z -= 0.001 * pos.w;":""}
|
|
181
181
|
|
|
182
182
|
// transform final position to camera space for slicing
|
|
183
183
|
vpos = (inverseProjectionMatrix * pos).xyz;
|
|
184
184
|
gl_Position = pos;
|
|
185
185
|
forwardObjectAndLayerIdColor();
|
|
186
|
-
}`),
|
|
187
|
-
discardByTerrainDepth();`)
|
|
186
|
+
}`),R.fragment.include(i,F),R.include(y,F),W.include(d),W.main.add(D`discardBySlice(vpos);
|
|
187
|
+
discardByTerrainDepth();`),$?W.main.add(D`vec4 finalColor = vec4(1.0, 0.0, 1.0, 1.0);`):(G&&W.main.add(D`
|
|
188
188
|
float sdf = min(vSegmentSDF, vReverseSegmentSDF);
|
|
189
189
|
vec2 fragmentPosition = vec2(
|
|
190
190
|
min(sdf, 0.0),
|
|
@@ -195,10 +195,10 @@ discardByTerrainDepth();`),_?z.main.add(D`vec4 finalColor = vec4(1.0, 0.0, 1.0,
|
|
|
195
195
|
float fragmentCapSDF = (fragmentRadius - vLineWidth) * 0.5; // Divide by 2 to transform from double pixel scale
|
|
196
196
|
float capCoverage = clamp(0.5 - fragmentCapSDF, 0.0, 1.0);
|
|
197
197
|
|
|
198
|
-
if (capCoverage < ${D.float(
|
|
198
|
+
if (capCoverage < ${D.float(P)}) {
|
|
199
199
|
discard;
|
|
200
200
|
}
|
|
201
|
-
`)
|
|
201
|
+
`),q?W.main.add(D`
|
|
202
202
|
vec2 stipplePosition = vec2(
|
|
203
203
|
min(getStippleSDF() * 2.0 - 1.0, 0.0),
|
|
204
204
|
vLineDistanceNorm * gl_FragCoord.w
|
|
@@ -206,11 +206,18 @@ discardByTerrainDepth();`),_?z.main.add(D`vec4 finalColor = vec4(1.0, 0.0, 1.0,
|
|
|
206
206
|
float stippleRadius = length(stipplePosition * vLineWidth);
|
|
207
207
|
float stippleCapSDF = (stippleRadius - vLineWidth) * 0.5; // Divide by 2 to transform from double pixel scale
|
|
208
208
|
float stippleCoverage = clamp(0.5 - stippleCapSDF, 0.0, 1.0);
|
|
209
|
-
float stippleAlpha = step(${D.float(
|
|
210
|
-
`):
|
|
209
|
+
float stippleAlpha = step(${D.float(P)}, stippleCoverage);
|
|
210
|
+
`):W.main.add(D`float stippleAlpha = getStippleAlpha();`),M!==e.ObjectAndLayerIdColor&&W.main.add(D`discardByStippleAlpha(stippleAlpha, ${D.float(P)});`),W.uniforms.add(new v("intrinsicColor",e=>e.color)),W.main.add(D`vec4 color = intrinsicColor * vColor;`),U&&(W.uniforms.add(new v("innerColor",e=>e.innerColor??e.color),new h("innerWidth",(e,i)=>e.innerWidth*i.camera.pixelRatio)),W.main.add(D`float distToInner = abs(vLineDistance * gl_FragCoord.w) - innerWidth;
|
|
211
211
|
float innerAA = clamp(0.5 - distToInner, 0.0, 1.0);
|
|
212
212
|
float innerAlpha = innerColor.a + color.a * (1.0 - innerColor.a);
|
|
213
|
-
color = mix(color, vec4(innerColor.rgb, innerAlpha), innerAA);`)),
|
|
213
|
+
color = mix(color, vec4(innerColor.rgb, innerAlpha), innerAA);`)),W.main.add(D`vec4 finalColor = blendStipple(color, stippleAlpha);`),I&&(W.uniforms.add(new h("falloff",e=>e.falloff)),W.main.add(D`finalColor.a *= pow(max(0.0, 1.0 - abs(vLineDistanceNorm * gl_FragCoord.w)), falloff);`)),_||W.main.add(D`float featherStartDistance = max(vLineWidth - 2.0, 0.0);
|
|
214
214
|
float value = abs(vLineDistance) * gl_FragCoord.w;
|
|
215
215
|
float feather = (value - featherStartDistance) / (vLineWidth - featherStartDistance);
|
|
216
|
-
finalColor.a *= 1.0 - clamp(feather, 0.0, 1.0);`)
|
|
216
|
+
finalColor.a *= 1.0 - clamp(feather, 0.0, 1.0);`),B!==w.None&&W.main.add(D`
|
|
217
|
+
finalColor = animate(finalColor);
|
|
218
|
+
|
|
219
|
+
${S(M!==e.ObjectAndLayerIdColor,D`
|
|
220
|
+
if (finalColor.a <= ${D.float(P)}) {
|
|
221
|
+
discard;
|
|
222
|
+
}`)}
|
|
223
|
+
`)),W.main.add(D`outputColorHighlightOID(finalColor, vpos, finalColor.rgb);`),R}const R=Object.freeze(Object.defineProperty({__proto__:null,build:F,ribbonlineNumRoundJoinSubdivisions:A},Symbol.toStringTag,{value:"Module"}));export{R,F as b,A as r};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{id as e}from"../kernel.js";import{
|
|
5
|
+
import{id as e}from"../kernel.js";import{makeAbsolute as t,makeRelative as r,isAbsolute as s,normalize as o,isDataProtocol as n,changeDomain as l,hasSameOrigin as a,getAppUrl as c,splitPathExtension as i}from"../core/urlUtils.js";import{normalizeArcGISOnlineOrgDomain as u}from"../portal/support/urlUtils.js";function p(e,s){const o=s?.url?.path;if(e&&o&&(e=t(e,o,{preserveProtocolRelative:!0}),s.portalItem&&s.readResourcePaths)){const t=r(e,s.portalItem.itemUrl);null!=t&&v.test(t)&&s.readResourcePaths.push(s.portalItem.resourceFromPath(t).path)}return(e=I(e,s?.portal))&&d.test(e)?R(e):e}function m(e,l,a=y.YES){if(null==(e=e&&d.test(e)?w(e):e))return e;!s(e)&&l?.blockedRelativeUrls&&l.blockedRelativeUrls.push(e);let c=t(e);if(l){const t=l.verifyItemRelativeUrls?.rootPath||l.url?.path;if(t){const s=I(t,l.portal),o=I(c,l.portal);c=r(o,s,s);null!=c&&c!==o&&c!==e&&l.verifyItemRelativeUrls&&l.verifyItemRelativeUrls.writtenUrls.push(c)}}return c=x(c,l?.portal),s(c)&&(c=o(c)),l?.resources&&l?.portalItem&&!s(c)&&!n(c)&&a===y.YES&&l.resources.toKeep.push({resource:l.portalItem.resourceFromPath(c),compress:!1}),c}function f(e,t,r){return p(e,r)}function h(e,t,r,s){const o=m(e,s);void 0!==o&&(t[r]=o)}const d=/\/items\/([^/]+)\/resources\/(.*)/,v=/^\.\/resources\//;function U(e){const t=e?.match(d)??null;return t?.[1]??null}function g(e){const t=e?.match(d)??null;if(null==t)return null;const r=t[2],s=r.lastIndexOf("/");if(-1===s){const{path:e,extension:t}=i(r);return{prefix:null,filename:e,extension:t}}const{path:o,extension:n}=i(r.slice(s+1));return{prefix:r.slice(0,s),filename:o,extension:n}}function x(e,t){return t&&!t.isPortal&&t.urlKey&&t.customBaseUrl?l(e,`${t.urlKey}.${t.customBaseUrl}`,t.portalHostname):e}function I(e,t){if(!t||t.isPortal||!t.urlKey||!t.customBaseUrl)return e;const r=`${t.urlKey}.${t.customBaseUrl}`,s=c();return a(s,`${s.scheme}://${r}`)?l(e,t.portalHostname,r):l(e,r,t.portalHostname)}function R(t){if(!t)return t||null;let r=t;return r&&e&&!e.findCredential(r)&&(r=u(r),r=r.replace(/^https?:\/\/www\.arcgis\.com/,"https://cdn.arcgis.com"),r=r.replace(/^https?:\/\/devext\.arcgis\.com/,"https://cdndev.arcgis.com"),r=r.replace(/^https?:\/\/qaext\.arcgis\.com/,"https://cdnqa.arcgis.com")),r}function w(t){if(!t)return t||null;let r=t;return r=r.replace(/^https?:\/\/cdn\.arcgis\.com/,"https://www.arcgis.com"),r=r.replace(/^https?:\/\/cdndev\.arcgis\.com/,"https://devext.arcgis.com"),r=r.replace(/^https?:\/\/cdnqa\.arcgis\.com/,"https://qaext.arcgis.com"),r&&e&&!e.findCredential(r)&&(r=u(r)),r}var y;!function(e){e[e.YES=0]="YES",e[e.NO=1]="NO"}(y||(y={}));const P=Object.freeze(Object.defineProperty({__proto__:null,get MarkKeep(){return y},ensureMainOnlineDomain:x,fromCDNUrl:w,fromJSON:p,itemIdFromResourceUrl:U,prefixAndFilenameFromResourceUrl:g,read:f,toCDNUrl:R,toJSON:m,write:h},Symbol.toStringTag,{value:"Module"}));export{y as M,R as a,P as b,w as c,x as e,p as f,U as i,g as p,f as r,m as t,h as w};
|
package/config.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import"./core/has.js";import{deepMerge as e}from"./core/object.js";const s={apiKey:void 0,apiKeys:{scopes:[]},applicationName:"",applicationUrl:globalThis.location?.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",userPrivilegesApplied:!0,portalUrl:"https://www.arcgis.com",respectPrefersReducedMotion:!0,routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{crossOriginNoCorsDomains:null,httpsDomains:["arcgis.com","arcgisonline.com","esrikr.com","premiumservices.blackbridge.com","esripremium.accuweather.com","gbm.digitalglobe.com","firstlook.digitalglobe.com","msi.digitalglobe.com"],interceptors:[],internalInterceptors:[],maxUrlLength:2e3,priority:"high",proxyRules:[],proxyUrl:null,timeout:62e3,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&(e(s,globalThis.esriConfig,!0),delete s.has),!s.assetsPath){{const e="4.34.0-next.
|
|
5
|
+
import"./core/has.js";import{deepMerge as e}from"./core/object.js";const s={apiKey:void 0,apiKeys:{scopes:[]},applicationName:"",applicationUrl:globalThis.location?.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",userPrivilegesApplied:!0,portalUrl:"https://www.arcgis.com",respectPrefersReducedMotion:!0,routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{crossOriginNoCorsDomains:null,httpsDomains:["arcgis.com","arcgisonline.com","esrikr.com","premiumservices.blackbridge.com","esripremium.accuweather.com","gbm.digitalglobe.com","firstlook.digitalglobe.com","msi.digitalglobe.com"],interceptors:[],internalInterceptors:[],maxUrlLength:2e3,priority:"high",proxyRules:[],proxyUrl:null,timeout:62e3,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&(e(s,globalThis.esriConfig,!0),delete s.has),!s.assetsPath){{const e="4.34.0-next.25";s.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@${e}/assets`}s.defaultAssetsPath=s.assetsPath}export{s as default};
|
package/core/AsyncUpdate.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as t}from"../chunks/tslib.es6.js";import s from"./Accessor.js";import r from"./Logger.js";import{debounce as o}from"./promiseUtils.js";import{watch as e,initial as n}from"./reactiveUtils.js";import{property as i}from"./accessorSupport/decorators/property.js";import{subclass as p}from"./accessorSupport/decorators/subclass.js";const c=s=>{
|
|
5
|
+
import{_ as t}from"../chunks/tslib.es6.js";import s from"./Accessor.js";import r from"./Logger.js";import{debounce as o}from"./promiseUtils.js";import{watch as e,initial as n}from"./reactiveUtils.js";import{property as i}from"./accessorSupport/decorators/property.js";import{subclass as p}from"./accessorSupport/decorators/subclass.js";const c=s=>{const c=s;let a=class extends c{constructor(){super(...arguments),this._numUpdating=0}get updating(){return this._numUpdating>0}autoUpdateAsync(t,s){const i=o(async s=>{++this._numUpdating;try{const r=await s;this.destroyed||this._set(t,r)}catch(o){r.getLogger(this).warn(`Async update of "${String(t)}" failed. Async update functions should not throw exceptions.`)}--this._numUpdating});return e(s,i,n)}};return t([i({readOnly:!0})],a.prototype,"updating",null),t([i()],a.prototype,"_numUpdating",void 0),a=t([p("esri.core.AsyncUpdate")],a),a};let a=class extends(c(s)){};a=t([p("esri.core.AsyncUpdate")],a);export{a as AsyncUpdate,c as AsyncUpdateMixin};
|
package/core/Clonable.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as o}from"../chunks/tslib.es6.js";import s from"./Accessor.js";import"./has.js";import{tryClone as t}from"./lang.js";import"./Logger.js";import{assertIsSome as e}from"./maybe.js";import{OriginId as r}from"./accessorSupport/PropertyOrigin.js";import{getProperties as n}from"./accessorSupport/utils.js";import{subclass as c}from"./accessorSupport/decorators/subclass.js";const i=s=>{
|
|
5
|
+
import{_ as o}from"../chunks/tslib.es6.js";import s from"./Accessor.js";import"./has.js";import{tryClone as t}from"./lang.js";import"./Logger.js";import{assertIsSome as e}from"./maybe.js";import{OriginId as r}from"./accessorSupport/PropertyOrigin.js";import{getProperties as n}from"./accessorSupport/utils.js";import{subclass as c}from"./accessorSupport/decorators/subclass.js";const i=s=>{const i=s;let l=class extends i{clone(o){const s=n(this);e(s,"unable to clone instance of non-accessor class");const c=s.metadata,i=s.store,l={},a=new Map;for(const e in c){const s=c[e],n=i?.originOf(e),f=s.clonable;if(s.readOnly||!1===f||n!==r.USER&&n!==r.DEFAULTS&&n!==r.WEB_MAP&&n!==r.WEB_SCENE)continue;const p=this[e];let m=null;m="function"==typeof f?f(p,o):"reference"===f?p:t(p,o),null!=p&&null==m||(n===r.DEFAULTS?a.set(e,m):l[e]=m)}const f=new(0,Object.getPrototypeOf(this).constructor)(l);if(a.size){const o=n(f)?.store;if(o)for(const[s,t]of a)o.set(s,t,r.DEFAULTS)}return f}};return l=o([c("esri.core.Clonable")],l),l};let l=class extends(i(s)){};l=o([c("esri.core.Clonable")],l),function(o){o.ClonableMixin=i}(l||(l={}));const a=l;export{a as default};
|
package/core/Evented.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as e}from"../chunks/tslib.es6.js";import t from"./Accessor.js";import{handlesGroup as r,makeHandle as s}from"./handleUtils.js";import{subclass as n}from"./accessorSupport/decorators/subclass.js";class i{constructor(){this._emitter=new i.EventEmitter(this)}emit(e,t){return this._emitter.emit(e,t)}on(e,t){return this._emitter.on(e,t)}once(e,t){return this._emitter.once(e,t)}hasEventListener(e){return this._emitter.hasEventListener(e)}}!function(o){class c{constructor(e=null){this._target=e,this._listenersMap=null}clear(){this._listenersMap?.clear(),this._listenersMap=null}destroy(){this.clear()}emit(e,t){let r=this._listenersMap?.get(e);if(!r)return!1;const s=this._target||this;let n=!1;for(const i of r.slice()){const e="deref"in i?i.deref():i;e?e?.call(s,t):n=!0}return n&&(r=r.filter(e=>!("deref"in e)||null!=e.deref()),this._listenersMap.set(e,r)),r.length>0}on(e,t){if(Array.isArray(e)){const s=e.map(e=>this.on(e,t));return r(s)}if(e.includes(","))throw new TypeError("Evented.on() with a comma delimited string of event types is not supported");this._listenersMap??=new Map;const n=this._listenersMap.get(e)||[];return n.push(t),this._listenersMap.set(e,n),s(()=>{const r=this._listenersMap?.get(e),s=r?.indexOf(t)??-1;s>=0&&r.splice(s,1)})}once(e,t){const r=this.on(e,e=>{r.remove();const s="deref"in t?t.deref():t;s?.call(null,e)});return r}hasEventListener(e){const t=this._listenersMap?.get(e);return null!=t&&t.length>0}}o.EventEmitter=c,o.EventedMixin=t=>{
|
|
5
|
+
import{_ as e}from"../chunks/tslib.es6.js";import t from"./Accessor.js";import{handlesGroup as r,makeHandle as s}from"./handleUtils.js";import{subclass as n}from"./accessorSupport/decorators/subclass.js";class i{constructor(){this._emitter=new i.EventEmitter(this)}emit(e,t){return this._emitter.emit(e,t)}on(e,t){return this._emitter.on(e,t)}once(e,t){return this._emitter.once(e,t)}hasEventListener(e){return this._emitter.hasEventListener(e)}}!function(o){class c{constructor(e=null){this._target=e,this._listenersMap=null}clear(){this._listenersMap?.clear(),this._listenersMap=null}destroy(){this.clear()}emit(e,t){let r=this._listenersMap?.get(e);if(!r)return!1;const s=this._target||this;let n=!1;for(const i of r.slice()){const e="deref"in i?i.deref():i;e?e?.call(s,t):n=!0}return n&&(r=r.filter(e=>!("deref"in e)||null!=e.deref()),this._listenersMap.set(e,r)),r.length>0}on(e,t){if(Array.isArray(e)){const s=e.map(e=>this.on(e,t));return r(s)}if(e.includes(","))throw new TypeError("Evented.on() with a comma delimited string of event types is not supported");this._listenersMap??=new Map;const n=this._listenersMap.get(e)||[];return n.push(t),this._listenersMap.set(e,n),s(()=>{const r=this._listenersMap?.get(e),s=r?.indexOf(t)??-1;s>=0&&r.splice(s,1)})}once(e,t){const r=this.on(e,e=>{r.remove();const s="deref"in t?t.deref():t;s?.call(null,e)});return r}hasEventListener(e){const t=this._listenersMap?.get(e);return null!=t&&t.length>0}}o.EventEmitter=c,o.EventedMixin=t=>{const r=t;let s=class extends r{constructor(){super(...arguments),this._emitter=new c}destroy(){this._emitter.clear()}emit(e,t){return this._emitter.emit(e,t)}on(e,t){return this._emitter.on(e,t)}once(e,t){return this._emitter.once(e,t)}hasEventListener(e){return this._emitter.hasEventListener(e)}};return s=e([n("esri.core.Evented")],s),s};let l=class extends t{constructor(){super(...arguments),this._emitter=new i.EventEmitter(this)}destroy(){this._emitter.clear()}emit(e,t){return this._emitter.emit(e,t)}on(e,t){return this._emitter.on(e,t)}once(e,t){return this._emitter.once(e,t)}hasEventListener(e){return this._emitter.hasEventListener(e)}};l=e([n("esri.core.Evented.EventedAccessor")],l),o.EventedAccessor=l}(i||(i={}));const o=i;export{o as default};
|
package/core/Identifiable.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as e}from"../chunks/tslib.es6.js";import{subclass as t}from"./accessorSupport/decorators/subclass.js";let
|
|
5
|
+
import{_ as e}from"../chunks/tslib.es6.js";import{subclass as t}from"./accessorSupport/decorators/subclass.js";let s=0;const i=i=>{const r=i;let c=class extends r{constructor(...e){super(...e),Object.defineProperty(this,"uid",{writable:!1,configurable:!1,value:Date.now().toString(16)+"-object-"+s++})}};return c=e([t("esri.core.Identifiable")],c),c},r=i=>{const r=i;let c=class extends r{constructor(...e){super(...e),Object.defineProperty(this,"uid",{writable:!1,configurable:!1,value:s++})}};return c=e([t("esri.core.Identifiable.NumericIdentifiable")],c),c};let c=class extends(i(class{})){};c=e([t("esri.core.Identifiable")],c),function(e){e.IdentifiableMixin=i,e.NumericIdentifiableMixin=r}(c||(c={}));const n=c;export{n as default};
|
package/core/JSONSupport.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as r}from"../chunks/tslib.es6.js";import t from"./Accessor.js";import{DefaultsStore as s}from"./accessorSupport/DefaultsStore.js";import{setupConstructedDefaults as o}from"./accessorSupport/defaultsStoreUtils.js";import{read as e}from"./accessorSupport/read.js";import{getProperties as c}from"./accessorSupport/utils.js";import{write as i}from"./accessorSupport/write.js";import{subclass as p}from"./accessorSupport/decorators/subclass.js";const u=t=>{
|
|
5
|
+
import{_ as r}from"../chunks/tslib.es6.js";import t from"./Accessor.js";import{DefaultsStore as s}from"./accessorSupport/DefaultsStore.js";import{setupConstructedDefaults as o}from"./accessorSupport/defaultsStoreUtils.js";import{read as e}from"./accessorSupport/read.js";import{getProperties as c}from"./accessorSupport/utils.js";import{write as i}from"./accessorSupport/write.js";import{subclass as p}from"./accessorSupport/decorators/subclass.js";const u=t=>{const u=t;let n=class extends u{constructor(...r){super(...r);const t=c(this),e=t.store,i=new s;t.store=i,o(t,e,i)}read(r,t){e(this,r,t)}write(r,t){return i(this,r??{},t)}toJSON(r){return this.write({},r)}static fromJSON(r,t){return a.call(this,r,t)}};return n=r([p("esri.core.JSONSupport")],n),n.prototype.toJSON.isDefaultToJSON=!0,n};function a(r,t){if(!r)return null;if(r.declaredClass)throw new Error("JSON object is already hydrated");const s=new this;return s.read(r,t),s}let n=class extends(u(t)){};n=r([p("esri.core.JSONSupport")],n),function(r){r.JSONSupportMixin=u}(n||(n={}));const l=n;export{l as default};
|
package/core/Loadable.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as o}from"../chunks/tslib.es6.js";import t from"./Error.js";import{abortMaybe as r}from"./maybe.js";import s from"./Promise.js";import{onAbortOrThrow as l}from"./promiseUtils.js";import e from"./Warning.js";import{property as a}from"./accessorSupport/decorators/property.js";import{subclass as
|
|
5
|
+
import{_ as o}from"../chunks/tslib.es6.js";import t from"./Error.js";import{abortMaybe as r}from"./maybe.js";import s from"./Promise.js";import{onAbortOrThrow as l}from"./promiseUtils.js";import e from"./Warning.js";import{property as a}from"./accessorSupport/decorators/property.js";import{subclass as n}from"./accessorSupport/decorators/subclass.js";const i="not-loaded",d="loading",h="failed",c="loaded",u=s=>{const u=s;let p=class extends u{constructor(...o){super(...o),this._loadController=null,this.loadError=null,this.loadStatus="not-loaded",this._set("loadWarnings",[]),this.addResolvingPromise(new Promise(o=>{const r=this.load.bind(this);this.load=s=>{const e=new Promise((o,r)=>{const e=l(s,r);this.destroyed&&r(new t("load:instance-destroyed",`Instance of '${this.declaredClass||this.constructor.name}' is already destroyed`,{instance:this})),this.when(o,r).finally(()=>{e&&e.remove()})});if(this.loadStatus===i){this._set("loadStatus",d);const o=this._loadController=new AbortController;r({signal:o.signal})}return o(),e}})),this.when(()=>{this._set("loadStatus",c),this._loadController=null},o=>{this._set("loadStatus",h),this._set("loadError",o),this._loadController=null})}destroy(){this._loadController&&(this._loadController=r(this._loadController),this._promiseProps.abort()),this._set("loadError",null),this._set("loadWarnings",[])}get loaded(){return this.loadStatus===c}get loadWarnings(){return this._get("loadWarnings")}load(o){return null}cancelLoad(){return this.isFulfilled()||(this._set("loadError",new t("load:cancelled","Cancelled")),this._loadController?.abort(),this._promiseProps.abort()),this}};return o([a({readOnly:!0})],p.prototype,"loaded",null),o([a({readOnly:!0})],p.prototype,"loadError",void 0),o([a({clonable:!1})],p.prototype,"loadStatus",void 0),o([a({type:[e],readOnly:!0})],p.prototype,"loadWarnings",null),p=o([n("esri.core.Loadable")],p),p};let p=class extends(u(s)){};p=o([n("esri.core.Loadable")],p),function(o){function t(o){return!(!o||!o.load)}o.LoadableMixin=u,o.isLoadable=t}(p||(p={}));export{p as default};
|
package/core/MapUtils.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
function n(n,t){for(const r of n.values())if(t(r))return!0;return!1}function t(n,t){if(null==n&&null==t)return!0;if(null==n||null==t||n.size!==t.size)return!1;for(const[r,u]of n)if(!t.has(r)||u!==t.get(r))return!1;return!0}function
|
|
5
|
+
function n(n,t){for(const r of n.values())if(t(r))return!0;return!1}function t(n,t){for(const r of n.values())if(!t(r))return!1;return!0}function r(n,t){if(null==n&&null==t)return!0;if(null==n||null==t||n.size!==t.size)return!1;for(const[r,u]of n)if(!t.has(r)||u!==t.get(r))return!1;return!0}function u(n,t){for(const r of n.values())if(t(r))return r;return null}function e(n,t,r){const u=n.get(t);if(void 0!==u)return u;const e=r();return n.set(t,e),e}function o(n){const t=new Map;return r=>(t.has(r)||t.set(r,n(r)),t.get(r))}export{r as equals,t as everyMap,u as findInMap,e as getOrCreateMapValue,o as memoize,n as someMap};
|
package/core/MemCache.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
const t=-3,
|
|
5
|
+
import has from"./has.js";const t=-3,s=t-1;var i;!function(t){t[t.ALL=0]="ALL",t[t.SOME=1]="SOME"}(i||(i={}));const e=!!has("esri-tests-disable-gpu-memory-measurements");class h{constructor(t,s,i,e=0){this.name=t,this._storage=s,this.removeFunc=i,this._defaultPriority=e,this.id=`${o++}${n}`,this.size=0,this._hit=0,this._miss=0,this._storage.register(this)}destroy(){this._storage.deregister(this),this._storage=null}get hitRate(){return this._hit/(this._hit+this._miss)}get storageSize(){return this._storage.size}getSize(t){return this._storage.getSize(this,t)}set maxSize(t){this._storage.setMaxSize(this,t)}resetHitRate(){this._hit=this._miss=0}put(t,s,i=this._defaultPriority){this._storage.put(this,t,s,s.cachedMemory,i)}pop(t){const s=this._storage.pop(this,t);return void 0===s?++this._miss:++this._hit,s}get(t){const s=this._storage.get(this,t);return void 0===s?++this._miss:++this._hit,s}peek(t){return this._storage.peek(this,t)}updateSize(t,s){this._storage.updateSize(this,t,s,s.cachedMemory)}clear(){this._storage.clear(this)}clearAll(){this._storage.clearAll()}*[Symbol.iterator](){yield*this._storage.values(this)}get performanceInfo(){return this._storage.performanceInfo}resetStats(){this._storage.resetStats()}}class r{get size(){return this._size}constructor(t=10485760){this._maxSize=t,this._db=new Map,this._size=0,this._hit=0,this._miss=0,this._users=new Map,this._sizeLimits=new Map}destroy(){this.clearAll(),this._sizeLimits.clear(),this._users.clear(),this._db=null}register(t){this._users.set(t.id.slice(0,-1),t)}deregister(t){this.clear(t),this._sizeLimits.delete(t),this._users.delete(t.id.slice(0,-1))}get maxSize(){return this._maxSize}set maxSize(t){this._maxSize=Math.max(t,-1),this._checkSize()}getSize(t,s){const i=this._db.get(t.id+s);return i?.size??0}put(h,r,o,n,a){r=h.id+r;const c=this._db.get(r);if(c&&(this._size-=c.size,h.size-=c.size,this._db.delete(r),c.entry!==o&&this._notifyRemove(r,c.entry,c.size,i.ALL)),n>this._maxSize)return void this._notifyRemove(r,o,n,i.ALL);if(void 0===o)return void console.warn("Refusing to cache undefined entry ");if(!n||n<0)return e||console.warn(`Refusing to cache entry with size ${n} for key ${r}`),void this._notifyRemove(r,o,0,i.ALL);const z=1+Math.max(a,s)-t;this._db.set(r,new _(o,n,z)),this._size+=n,h.size+=n,this._checkSize()}updateSize(t,s,e,h){s=t.id+s;const r=this._db.get(s);if(r&&r.entry===e){for(this._size-=r.size,t.size-=r.size;h>this._maxSize;){const t=this._notifyRemove(s,e,h,i.SOME);if(!(null!=t&&t>0))return void this._db.delete(s);h=t}r.size=h,this._size+=h,t.size+=h,this._checkSize()}}pop(t,s){s=t.id+s;const i=this._db.get(s);if(i)return this._size-=i.size,t.size-=i.size,this._db.delete(s),++this._hit,i.entry;++this._miss}get(t,s){s=t.id+s;const i=this._db.get(s);if(void 0!==i)return this._db.delete(s),i.lives=i.lifetime,this._db.set(s,i),++this._hit,i.entry;++this._miss}peek(t,s){const i=this._db.get(t.id+s);return i?++this._hit:++this._miss,i?.entry}get performanceInfo(){const s={Size:Math.round(this._size/1048576)+"/"+Math.round(this._maxSize/1048576)+"MB","Hit rate":Math.round(100*this._getHitRate())+"%",Entries:this._db.size.toString()},i={},e=new Array;this._db.forEach((t,s)=>{const h=t.lifetime;e[h]=(e[h]||0)+t.size,this._users.forEach(e=>{const{id:h,name:r}=e;if(s.startsWith(h)){const s=i[r]||0;i[r]=s+t.size}})});const h={};this._users.forEach(t=>{const s=t.name;if("hitRate"in t&&"number"==typeof t.hitRate&&!isNaN(t.hitRate)&&t.hitRate>0){const e=i[s]||0;i[s]=e,h[s]=Math.round(100*t.hitRate)+"%"}else h[s]="0%"});const r=Object.keys(i);r.sort((t,s)=>i[s]-i[t]),r.forEach(t=>s[t]=Math.round(i[t]/2**20)+"MB / "+h[t]);for(let o=e.length-1;o>=0;--o){const i=e[o];i&&(s["Priority "+(o+t-1)]=Math.round(i/this._size*100)+"%")}return s}resetStats(){this._hit=this._miss=0,this._users.forEach(t=>t.resetHitRate())}clear(t){const s=t.id;this._db.forEach((t,e)=>{e.startsWith(s)&&(this._size-=t.size,this._db.delete(e),this._notifyRemove(e,t.entry,t.size,i.ALL))}),t.size=0}clearAll(){this._db.forEach((t,s)=>this._notifyRemove(s,t.entry,t.size,i.ALL)),this._users.forEach(t=>t.size=0),this._size=0,this._db.clear()}*values(t){for(const[s,i]of this._db)s.startsWith(t.id)&&(yield i.entry)}_getHitRate(){return this._hit/(this._hit+this._miss)}_notifyRemove(t,s,i,e){const h=this._users.get(t.split(n)[0])?.removeFunc,r=h?.(s,e,i);return"number"==typeof r?r:null}_checkSize(){this._sizeLimits.forEach((t,s)=>this._checkSizeLimits(t,s)),this._checkSizeLimits(this.maxSize)}setMaxSize(t,s){null==s||s<=0?this._sizeLimits.delete(t):this._sizeLimits.set(t,s)}_checkSizeLimits(t,s){const i=s??this;if(i.size<=t)return;const e=s?.id;let h=!0;for(;h;){h=!1;for(const[r,o]of this._db)if(0===o.lifetime&&(!e||r.startsWith(e))){const e=s??this._users.get(r.split(n)[0]);if(this._purgeItem(r,o,e),i.size<=.9*t)return;h||=this._db.has(r)}}for(const[r,o]of this._db)if(!e||r.startsWith(e)){const e=s??this._users.get(r.split(n)[0]);if(this._purgeItem(r,o,e),i.size<=.9*t)return}}_purgeItem(t,s,e){if(this._db.delete(t),s.lives<=1){this._size-=s.size,e&&(e.size-=s.size);const h=this._notifyRemove(t,s.entry,s.size,i.SOME);null!=h&&h>0&&(this._size+=h,e&&(e.size+=h),s.lives=s.lifetime,s.size=h,this._db.set(t,s))}else--s.lives,this._db.set(t,s)}}let o=0;class _{constructor(t,s,i){this.entry=t,this.size=s,this.lifetime=i,this.lives=i}}const n=":";export{h as MemCache,r as MemCacheStorage,t as MinPriority,s as NoPriority,i as RemoveMode};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as r}from"../chunks/tslib.es6.js";import t from"./Accessor.js";import{ReadOnlyMultiOriginJSONMixin as s}from"./ReadOnlyMultiOriginJSONSupport.js";import{get as o}from"./accessorSupport/get.js";import{nameToId as e,OriginId as i,originIdNum as
|
|
5
|
+
import{_ as r}from"../chunks/tslib.es6.js";import t from"./Accessor.js";import{ReadOnlyMultiOriginJSONMixin as s}from"./ReadOnlyMultiOriginJSONSupport.js";import{get as o}from"./accessorSupport/get.js";import{nameToId as e,OriginId as i,originIdNum as c}from"./accessorSupport/PropertyOrigin.js";import{getProperties as p}from"./accessorSupport/utils.js";import{write as n}from"./accessorSupport/write.js";import{subclass as u}from"./accessorSupport/decorators/subclass.js";const l=t=>{const s=t;let l=class extends s{constructor(...r){super(...r)}clear(r,t="user"){p(this).clearOrigin(r,e(t))}write(r,t){return n(this,r=r||{},t),r}setAtOrigin(r,t,s){p(this).setAtOrigin(r,t,e(s))}removeOrigin(r){const t=O(this),s=e(r),o=t.keys(s);for(const e of o)t.originOf(e)===s&&t.set(e,t.get(e,s),i.USER)}updateOrigin(r,t){const s=O(this),i=e(t),p=o(this,r);for(let o=i+1;o<c;++o)s.delete(r,o);s.set(r,p,i)}toJSON(r){return this.write({},r)}};return l=r([u("esri.core.MultiOriginJSONSupport.WriteableMultiOriginJSONSupport")],l),l.prototype.toJSON.isDefaultToJSON=!0,l};function O(r){return p(r).store}const S=t=>{const o=l(s(t));let e=class extends o{constructor(...r){super(...r)}};return e=r([u("esri.core.MultiOriginJSONSupport")],e),e};let a=class extends(S(t)){};a=r([u("esri.core.MultiOriginJSONSupport")],a);export{S as MultiOriginJSONMixin,a as MultiOriginJSONSupport};
|
package/core/ObjectPool.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
function t(t){return t?.release&&"function"==typeof t.release}function i(t){return t?.acquire&&"function"==typeof t.acquire}class e{constructor(t,i,e,s=1,o=0){this._ctor=t,this._acquireFunction=i,this._releaseFunction=e,this.allocationSize=s,this._pool=new Array(o),this._initialSize=o;for(let n=0;n<o;n++)this._pool[n]=new this._ctor;this.allocationSize=Math.max(s,1)}destroy(){this.prune(0)}acquire(...t){let s;if(e.test.disabled)s=new this._ctor;else{if(0===this._pool.length){const t=this.allocationSize;for(let i=0;i<t;i++)this._pool[i]=new this._ctor}s=this._pool.pop()}return this._acquireFunction?this._acquireFunction(s,...t):i(s)&&s.acquire(...t),s}release(i){i&&!e.test.disabled&&(this._releaseFunction?this._releaseFunction(i):t(i)&&i.release(),this._pool.push(i))}prune(t=this._initialSize){if(!(t>=this._pool.length)){for(let i=t;i<this._pool.length;++i){const t=this._pool[i];this._dispose(t)}this._pool.length=t}}_dispose(t){t.dispose&&"function"==typeof t.dispose&&t.dispose()}static{this.test={disabled
|
|
5
|
+
import has from"./has.js";function t(t){return t?.release&&"function"==typeof t.release}function i(t){return t?.acquire&&"function"==typeof t.acquire}class e{constructor(t,i,e,s=1,o=0){this._ctor=t,this._acquireFunction=i,this._releaseFunction=e,this.allocationSize=s,this._pool=new Array(o),this._initialSize=o;for(let n=0;n<o;n++)this._pool[n]=new this._ctor;this.allocationSize=Math.max(s,1)}destroy(){this.prune(0)}acquire(...t){let s;if(e.test.disabled)s=new this._ctor;else{if(0===this._pool.length){const t=this.allocationSize;for(let i=0;i<t;i++)this._pool[i]=new this._ctor}s=this._pool.pop()}return this._acquireFunction?this._acquireFunction(s,...t):i(s)&&s.acquire(...t),s}release(i){i&&!e.test.disabled&&(this._releaseFunction?this._releaseFunction(i):t(i)&&i.release(),this._pool.push(i))}prune(t=this._initialSize){if(!(t>=this._pool.length)){for(let i=t;i<this._pool.length;++i){const t=this._pool[i];this._dispose(t)}this._pool.length=t}}_dispose(t){t.dispose&&"function"==typeof t.dispose&&t.dispose()}static{this.test={disabled:!!has("esri-tests-disable-memory-pools")}}}export{e as default};
|
package/core/Promise.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as s}from"../chunks/tslib.es6.js";import e from"./Accessor.js";import{createResolver as i,createAbortError as r,isAbortError as t}from"./promiseUtils.js";import{subclass as o}from"./accessorSupport/decorators/subclass.js";var l;!function(s){s[s.PENDING=0]="PENDING",s[s.RESOLVED=1]="RESOLVED",s[s.REJECTED=2]="REJECTED"}(l||(l={}));class h{constructor(){this._resolver=i(),this._status=l.PENDING,this._resolvingPromises=[],this._resolver.promise.then(()=>{this._status=l.RESOLVED,this._cleanUp()},()=>{this._status=l.REJECTED,this._cleanUp()}),this.promise=this._resolver.promise}destroy(){this._cleanUp()}addResolvingPromise(s){this._resolvingPromises.push(s),this._tryResolve()}isResolved(){return this._status===l.RESOLVED}isRejected(){return this._status===l.REJECTED}isFulfilled(){return this._status!==l.PENDING}abort(){this._resolver.reject(r())}_cleanUp(){this._allPromise=null,this._resolvingPromises=null}_tryResolve(){if(this.isFulfilled())return;const s=i(),e=[...this._resolvingPromises,s.promise],r=this._allPromise=Promise.all(e);r.then(()=>{this.isFulfilled()||this._allPromise!==r||this._resolver.resolve()},s=>{this.isFulfilled()||this._allPromise!==r||t(s)||this._resolver.reject(s)}),s.resolve()}}const n=e=>{
|
|
5
|
+
import{_ as s}from"../chunks/tslib.es6.js";import e from"./Accessor.js";import{createResolver as i,createAbortError as r,isAbortError as t}from"./promiseUtils.js";import{subclass as o}from"./accessorSupport/decorators/subclass.js";var l;!function(s){s[s.PENDING=0]="PENDING",s[s.RESOLVED=1]="RESOLVED",s[s.REJECTED=2]="REJECTED"}(l||(l={}));class h{constructor(){this._resolver=i(),this._status=l.PENDING,this._resolvingPromises=[],this._resolver.promise.then(()=>{this._status=l.RESOLVED,this._cleanUp()},()=>{this._status=l.REJECTED,this._cleanUp()}),this.promise=this._resolver.promise}destroy(){this._cleanUp()}addResolvingPromise(s){this._resolvingPromises.push(s),this._tryResolve()}isResolved(){return this._status===l.RESOLVED}isRejected(){return this._status===l.REJECTED}isFulfilled(){return this._status!==l.PENDING}abort(){this._resolver.reject(r())}_cleanUp(){this._allPromise=null,this._resolvingPromises=null}_tryResolve(){if(this.isFulfilled())return;const s=i(),e=[...this._resolvingPromises,s.promise],r=this._allPromise=Promise.all(e);r.then(()=>{this.isFulfilled()||this._allPromise!==r||this._resolver.resolve()},s=>{this.isFulfilled()||this._allPromise!==r||t(s)||this._resolver.reject(s)}),s.resolve()}}const n=e=>{const i=e;let r=class extends i{constructor(...s){super(...s),this._promiseProps=new h,this.addResolvingPromise(Promise.resolve())}destroy(){this._promiseProps.destroy()}isResolved(){return this._promiseProps.isResolved()}isRejected(){return this._promiseProps.isRejected()}isFulfilled(){return this._promiseProps.isFulfilled()}when(s,e){return this._promiseProps.promise.then(()=>this).then(s,e)}catch(s){return this.when(null,s)}addResolvingPromise(s){s&&!this._promiseProps.isFulfilled()&&this._promiseProps.addResolvingPromise("_promiseProps"in s?s.when():s)}};return r=s([o("esri.core.Promise")],r),r};let m=class extends(n(e)){};m=s([o("esri.core.Promise")],m),function(s){s.EsriPromiseMixin=n}(m||(m={}));export{m as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as r}from"../chunks/tslib.es6.js";import t from"./Accessor.js";import{setupConstructedDefaults as s}from"./accessorSupport/defaultsStoreUtils.js";import o from"./accessorSupport/MultiOriginStore.js";import{nameToId as e,idToName as i}from"./accessorSupport/PropertyOrigin.js";import{read as c}from"./accessorSupport/read.js";import{getProperties as n}from"./accessorSupport/utils.js";import{subclass as p}from"./accessorSupport/decorators/subclass.js";const u=t=>{
|
|
5
|
+
import{_ as r}from"../chunks/tslib.es6.js";import t from"./Accessor.js";import{setupConstructedDefaults as s}from"./accessorSupport/defaultsStoreUtils.js";import o from"./accessorSupport/MultiOriginStore.js";import{nameToId as e,idToName as i}from"./accessorSupport/PropertyOrigin.js";import{read as c}from"./accessorSupport/read.js";import{getProperties as n}from"./accessorSupport/utils.js";import{subclass as p}from"./accessorSupport/decorators/subclass.js";const u=t=>{const u=t;let f=class extends u{constructor(...r){super(...r);const t=n(this),e=t.store,i=new o;t.store=i,s(t,e,i)}read(r,t){c(this,r,t)}getAtOrigin(r,t){const s=a(this),o=e(t);if("string"==typeof r)return s.get(r,o);const i={};return r.forEach(r=>{i[r]=s.get(r,o)}),i}originOf(r){return i(this.originIdOf(r))}originIdOf(r){return a(this).originOf(r)}revert(r,t){const s=a(this),o=e(t),i=n(this);let c;c="string"==typeof r?"*"===r?s.keys(o):[r]:r,c.forEach(r=>{i.invalidate(r),s.revert(r,o),i.commit(r)})}};return f=r([p("esri.core.ReadOnlyMultiOriginJSONSupport")],f),f};function a(r){return n(r).store}let f=class extends(u(t)){};f=r([p("esri.core.ReadOnlyMultiOriginJSONSupport")],f);export{u as ReadOnlyMultiOriginJSONMixin,f as ReadOnlyMultiOriginJSONSupport};
|
package/core/quantity.d.ts
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import"../../../core/has.js";import t from"../../../core/PooledArray.js";class
|
|
5
|
+
import has from"../../../core/has.js";import t from"../../../core/PooledArray.js";class s{constructor(t,s){this._factoryCallback=t,this._lengthCallback=s,this._pool=new Map}acquire(t){if(!s.test.disabled){const s=this._pool.get(t);if(s&&0!==s.length)return s.pop()}try{return this._factoryCallback(t)}catch(e){throw e}}release(e){if(s.test.disabled)return;const o=this._lengthCallback(e);let r=this._pool.get(o);r||(r=new t({shrink:!0}),this._pool.set(o,r)),r.push(e)}clear(){this._pool.clear()}get test(){}static{this.test={disabled:!!has("esri-tests-disable-memory-pools")}}}export{s as BufferPool};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.34/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import e from"../../../Color.js";import{colorGamma as t}from"../../../colorUtils.js";import r from"../../../request.js";import o from"../../../core/Error.js";import{getOrCreateMapValue as n}from"../../../core/MapUtils.js";import{rad2deg as s,hasScaling as i}from"../../../core/mathUtils.js";import{normalFromMat4 as a,fromMat4 as l}from"../../../core/libs/gl-matrix-2/math/mat3.js";import{create as c}from"../../../core/libs/gl-matrix-2/factories/mat3f64.js";import{fromValues as u}from"../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{fromValues as f}from"../../../core/libs/gl-matrix-2/factories/vec4f64.js";import m from"../MeshComponent.js";import p from"../MeshMaterialMetallicRoughness.js";import d from"../MeshTexture.js";import x from"../MeshTextureTransform.js";import{MeshVertexAttributes as g}from"../MeshVertexAttributes.js";import{selectVertexSpace as T}from"../meshVertexSpaceUtils.js";import{BufferViewVec4f as h,BufferViewVec4u8 as v,BufferViewVec4u16 as w,BufferViewVec3u8 as j,BufferViewVec3f as b,BufferViewVec3u16 as y,BufferViewVec2f as C,BufferViewVec3f64 as M}from"../buffer/BufferView.js";import{d as
|
|
5
|
+
import e from"../../../Color.js";import{colorGamma as t}from"../../../colorUtils.js";import r from"../../../request.js";import o from"../../../core/Error.js";import{getOrCreateMapValue as n}from"../../../core/MapUtils.js";import{rad2deg as s,hasScaling as i}from"../../../core/mathUtils.js";import{normalFromMat4 as a,fromMat4 as l}from"../../../core/libs/gl-matrix-2/math/mat3.js";import{create as c}from"../../../core/libs/gl-matrix-2/factories/mat3f64.js";import{fromValues as u}from"../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{fromValues as f}from"../../../core/libs/gl-matrix-2/factories/vec4f64.js";import m from"../MeshComponent.js";import p from"../MeshMaterialMetallicRoughness.js";import d from"../MeshTexture.js";import x from"../MeshTextureTransform.js";import{MeshVertexAttributes as g}from"../MeshVertexAttributes.js";import{selectVertexSpace as T}from"../meshVertexSpaceUtils.js";import{BufferViewVec4f as h,BufferViewVec4u8 as v,BufferViewVec4u16 as w,BufferViewVec3u8 as j,BufferViewVec3f as b,BufferViewVec3u16 as y,BufferViewVec2f as C,BufferViewVec3f64 as M}from"../buffer/BufferView.js";import{d as A,c as R,e as E,l as B}from"../../../chunks/vec3.js";import{a as F,n as $,l as S}from"../../../chunks/vec4.js";import{createBuffer as U}from"../buffer/utils.js";import{convertVertexSpace as I}from"./vertexSpaceConversion.js";import{DocType as k}from"../../../views/3d/support/index.js";import{DefaultLoadingContext as D}from"../../../views/3d/glTF/DefaultLoadingContext.js";import{loadGLTF as V}from"../../../views/3d/glTF/loader.js";import{convertPrimitiveToTriangles as P}from"../../../views/3d/glTF/internal/indexUtils.js";import{isEncodedMeshTexture as _}from"../../../views/3d/glTF/internal/resourceUtils.js";import{TextureWrapMode as G}from"../../../views/webgl/enums.js";import{f as L}from"../../../chunks/vec33.js";import{f as N}from"../../../chunks/vec43.js";import{n as O,f as q}from"../../../chunks/vec2.js";async function z(e,t,r){const n=new D(Y(r)),s=(await V(n,t,r,!0)).model,i=s.lods.shift(),a=new Map,l=new Map;s.textures.forEach((e,t)=>a.set(t,J(e))),s.materials.forEach((e,t)=>l.set(t,W(e,a)));const c=H(i);for(const o of c.parts)X(c,o,l);const{position:u,normal:f,tangent:m,color:p,texCoord0:d}=c.vertexAttributes,x=T(e,r),h=e.spatialReference.isGeographic?T(e):x,v=I({vertexAttributes:{position:u.typedBuffer,normal:f?.typedBuffer,tangent:m?.typedBuffer},vertexSpace:h,spatialReference:e.spatialReference},x,{allowBufferReuse:!0,sourceUnit:r?.unitConversionDisabled?void 0:"meters"});if(!v)throw new o("load-gltf-mesh:vertex-space-projection",`Failed to load mesh from glTF because we could not convert the vertex space from ${h.type} to ${x.type}`);return{transform:null,vertexSpace:x,components:c.components,spatialReference:e.spatialReference,vertexAttributes:new g({...v,color:p?.typedBuffer,uv:d?.typedBuffer})}}function Y(e){const t=e?.resolveFile;return t?{busy:!1,request:async(e,o,n)=>{const s=t?.(e)??e,i=o===k.IMAGE?"image":o===k.BINARY||o===k.IMAGE_AND_TYPE?"array-buffer":"json";return(await r(s,{responseType:i,signal:n?.signal,timeout:0})).data}}:null}function K(e,t){if(null==e)return"-";const r=e.typedBuffer;return`${n(t,r.buffer,()=>t.size)}/${r.byteOffset}/${r.byteLength}`}function Q(e){return null!=e?e.toString():"-"}function H(e){let t=0;const has={color:!1,tangent:!1,normal:!1,texCoord0:!1},r=new Map,o=new Map,s=[];for(const i of e.parts){const{position:e,normal:a,color:l,tangent:c,texCoord0:u}=i.attributes,f=`\n ${K(e,r)}/\n ${K(a,r)}/\n ${K(l,r)}/\n ${K(c,r)}/\n ${K(u,r)}/\n ${Q(i.transform)}\n `;let m=!1;const p=n(o,f,()=>(m=!0,{start:t,length:e.count}));m&&(t+=e.count),a&&(has.normal=!0),l&&(has.color=!0),c&&(has.tangent=!0),u&&(has.texCoord0=!0),s.push({gltf:i,writeVertices:m,region:p})}return{vertexAttributes:{position:U(M,t),normal:has.normal?U(b,t):null,tangent:has.tangent?U(h,t):null,color:has.color?U(v,t):null,texCoord0:has.texCoord0?U(C,t):null},parts:s,components:[]}}function J(e){return new d({data:(_(e.data),e.data),wrap:te(e.parameters.wrap)})}function W(t,r){const o=new e(ne(t.color,t.opacity)),n=t.emissiveFactor?new e(se(t.emissiveFactor)):null,i=e=>e?new x({scale:e.scale?[e.scale[0],e.scale[1]]:[1,1],rotation:s(e.rotation??0),offset:e.offset?[e.offset[0],e.offset[1]]:[0,0]}):null;return new p({color:o,colorTexture:r.get(t.colorTexture),normalTexture:r.get(t.normalTexture),emissiveColor:n,emissiveTexture:r.get(t.emissiveTexture),occlusionTexture:r.get(t.occlusionTexture),alphaMode:ee(t.alphaMode),alphaCutoff:t.alphaCutoff,doubleSided:t.doubleSided,metallic:t.metallicFactor,roughness:t.roughnessFactor,metallicRoughnessTexture:r.get(t.metallicRoughnessTexture),colorTextureTransform:i(t.colorTextureTransform),normalTextureTransform:i(t.normalTextureTransform),occlusionTextureTransform:i(t.occlusionTextureTransform),emissiveTextureTransform:i(t.emissiveTextureTransform),metallicRoughnessTextureTransform:i(t.metallicRoughnessTextureTransform)})}function X(e,t,r){t.writeVertices&&Z(e,t);const{indices:o,attributes:n,primitiveType:s,material:i}=t.gltf;let a=P(o||n.position.count,s);const l=t.region.start;if(l){const e=new Uint32Array(a);for(let t=0;t<a.length;t++)e[t]+=l;a=e}e.components.push(new m({name:t.gltf.name,faces:a,material:r.get(i),shading:n.normal?"source":"flat",trustSourceNormals:!0}))}function Z(e,t){const{position:r,normal:o,tangent:n,color:s,texCoord0:u}=e.vertexAttributes,f=t.region.start,{attributes:m,transform:p}=t.gltf,d=m.position.count;if(A(r.slice(f,d),m.position,p),null!=m.normal&&null!=o){const e=a(c(),p),t=o.slice(f,d);R(t,m.normal,e),i(e)&&E(t,t)}else null!=o&&L(o,0,0,1,{dstIndex:f,count:d});if(null!=m.tangent&&null!=n){const e=l(c(),p),t=n.slice(f,d);F(t,m.tangent,e),i(e)&&$(t,t)}else null!=n&&N(n,0,0,1,1,{dstIndex:f,count:d});if(null!=m.texCoord0&&null!=u?O(u.slice(f,d),m.texCoord0):null!=u&&q(u,0,0,{dstIndex:f,count:d}),null!=m.color&&null!=s){const e=m.color,t=s.slice(f,d);if(4===e.elementCount)e instanceof h?S(t,e,1,255):(e instanceof v||e instanceof w)&&S(t,e,1/255,255);else{N(t,255,255,255,255);const r=j.fromTypedArray(t.typedBuffer,t.typedBufferStride);e instanceof b?B(r,e,1,255):(e instanceof j||e instanceof y)&&B(r,e,1/255,255)}}else null!=s&&N(s.slice(f,d),255,255,255,255)}function ee(e){switch(e){case"OPAQUE":return"opaque";case"MASK":return"mask";case"BLEND":return"blend"}}function te(e){return{horizontal:re(e.s),vertical:re(e.t)}}function re(e){switch(e){case G.CLAMP_TO_EDGE:return"clamp";case G.MIRRORED_REPEAT:return"mirror";case G.REPEAT:return"repeat"}}function oe(e){return e**(1/t)*255}function ne(e,t){return f(oe(e[0]),oe(e[1]),oe(e[2]),t)}function se(e){return u(oe(e[0]),oe(e[1]),oe(e[2]))}export{z as loadGLTFMesh};
|