@arcgis/core 4.33.0-next.20250326 → 4.33.0-next.20250328
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/applications/Components/viewUtils.d.ts +3 -0
- package/applications/Components/viewUtils.js +5 -0
- package/applications/KnowledgeStudio/layerInternalAccessUtils.d.ts +1 -0
- package/applications/KnowledgeStudio/layerInternalAccessUtils.js +1 -1
- package/arcade/arcadeAsyncRuntime.js +1 -1
- package/arcade/arcadeCompiler.js +1 -1
- package/arcade/arcadeRuntime.js +1 -1
- package/arcade/functions/date.js +1 -1
- package/arcade/functions/feature.js +1 -1
- package/arcade/functions/featuresetbase.js +1 -1
- package/arcade/functions/featuresetgeom.js +1 -1
- package/arcade/functions/featuresetstats.js +1 -1
- package/arcade/functions/featuresetstring.js +1 -1
- package/arcade/functions/geomasync.js +1 -1
- package/arcade/functions/geometry.js +1 -1
- package/arcade/functions/geomsync.js +1 -1
- package/arcade/functions/knowledgegraph.js +1 -1
- package/arcade/functions/maths.js +1 -1
- package/arcade/functions/stats.js +1 -1
- package/arcade/functions/string.js +1 -1
- package/arcade/geometry/functions.js +1 -1
- package/arcade/languageUtils.js +1 -1
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/08ea652b7896c1da022d.js +1 -0
- package/assets/esri/core/workers/chunks/{66cae76da0582cfa8656.js → 0943695a1dcd21c45e83.js} +1 -1
- package/assets/esri/core/workers/chunks/09ca64184bed6abafcd9.js +1 -0
- package/assets/esri/core/workers/chunks/{c6bcfa99fb222894fa0e.js → 0a0e5d699ddb7052c5c0.js} +1 -1
- package/assets/esri/core/workers/chunks/0a675f9f69b8b13b7443.js +1 -0
- package/assets/esri/core/workers/chunks/0eed612e82a279ac8d1e.js +1 -0
- package/assets/esri/core/workers/chunks/{cbe22c58b3230b12b31a.js → 13ad4ee2e064d13ca34d.js} +1 -1
- package/assets/esri/core/workers/chunks/176e7c7c2a871bcb512e.js +1 -0
- package/assets/esri/core/workers/chunks/18d0fe269531b951e309.js +1 -0
- package/assets/esri/core/workers/chunks/201db423e3c6f947b77c.js +1 -0
- package/assets/esri/core/workers/chunks/213e82a7e3fa5b253ec1.js +1 -0
- package/assets/esri/core/workers/chunks/{22618753349eb9d8b3df.js → 222446da9cb58c3c3b7e.js} +1 -1
- package/assets/esri/core/workers/chunks/277b61af8982092a4c81.js +1 -0
- package/assets/esri/core/workers/chunks/2b07bdb6c4c4a5b2f968.js +1 -0
- package/assets/esri/core/workers/chunks/2bda2cfc6e81818d7d33.js +1 -0
- package/assets/esri/core/workers/chunks/2cbab0c078d0b844934c.js +1 -0
- package/assets/esri/core/workers/chunks/{a68b48fd1a529f69705e.js → 2fcfc21ba38d9919730a.js} +1 -1
- package/assets/esri/core/workers/chunks/{193b4fecdfee927d6200.js → 37e4f588a6896f98bce3.js} +1 -1
- package/assets/esri/core/workers/chunks/392e64a573f67817db02.js +1 -0
- package/assets/esri/core/workers/chunks/3a743653b786b010a57f.js +1 -0
- package/assets/esri/core/workers/chunks/3be007f32ea1e18b8b3b.js +1 -0
- package/assets/esri/core/workers/chunks/451555af283b32a10fef.js +1 -0
- package/assets/esri/core/workers/chunks/{835fa4484c58d9b31c78.js → 460afde071df9f35182d.js} +1 -1
- package/assets/esri/core/workers/chunks/{26bedec014488e1fc5e4.js → 4816cf647eca2f4cecc2.js} +1 -1
- package/assets/esri/core/workers/chunks/{09c9e4e94f09ba9f4c22.js → 4aa0a58ded4465ea28bd.js} +1 -1
- package/assets/esri/core/workers/chunks/4d02e211967384994e5e.js +1 -0
- package/assets/esri/core/workers/chunks/4d798da25a726f179089.js +319 -0
- package/assets/esri/core/workers/chunks/51339193abddfe37745d.js +1 -0
- package/assets/esri/core/workers/chunks/{0a98dc3ea67ce97a6e7b.js → 5269793822e41dd07fe1.js} +1 -1
- package/assets/esri/core/workers/chunks/52d160cb7921ae7a4f57.js +1 -0
- package/assets/esri/core/workers/chunks/{630a9afdf0523c27ddb6.js → 555c95b149e3a82a4460.js} +1 -1
- package/assets/esri/core/workers/chunks/{eab1e3c101158675abba.js → 5660f479c005149bce8d.js} +1 -1
- package/assets/esri/core/workers/chunks/5a51c75a2932d9da001a.js +1 -0
- package/assets/esri/core/workers/chunks/{37a3533f004bf2e888da.js → 5d01f0b86566d08ba29d.js} +1 -1
- package/assets/esri/core/workers/chunks/{0576b035c1654a43ad5c.js → 5de3aee547113bfd59df.js} +1 -1
- package/assets/esri/core/workers/chunks/{45eee326f7a649c5a15b.js → 626db8488f9d931cf55c.js} +2 -2
- package/assets/esri/core/workers/chunks/{5a6f7360183693f8490d.js → 6339a24874c698594101.js} +1 -1
- package/assets/esri/core/workers/chunks/63dade3e1cc7f5b76846.js +1 -0
- package/assets/esri/core/workers/chunks/6c378e7a6ca29d530880.js +1 -0
- package/assets/esri/core/workers/chunks/71e46e866c23372b0b58.js +1 -0
- package/assets/esri/core/workers/chunks/{c591527543fd75a917d4.js → 72c7126dbd27fa48fcdb.js} +1 -1
- package/assets/esri/core/workers/chunks/{d459c790a3b89ac53d2d.js → 759c12b0715279e3c0f6.js} +1 -1
- package/assets/esri/core/workers/chunks/75a04b073231da70c18d.js +1 -0
- package/assets/esri/core/workers/chunks/75fa861b5757551f8fdc.js +1 -0
- package/assets/esri/core/workers/chunks/7655be1470ce39f0e494.js +1 -0
- package/assets/esri/core/workers/chunks/796cf1c2ca9955595836.js +1 -0
- package/assets/esri/core/workers/chunks/79c4f10da8360ee60cd2.js +1 -0
- package/assets/esri/core/workers/chunks/{49c346d2fb8538990f45.js → 7d1c39c2a80e20a0595f.js} +1 -1
- package/assets/esri/core/workers/chunks/7f36cffc6ed984b7e467.js +1 -0
- package/assets/esri/core/workers/chunks/{fa3eeb40e2d732c184d8.js → 7f8c7e3e41e51ab4d612.js} +1 -1
- package/assets/esri/core/workers/chunks/80aaf31c8eec3cff2add.js +1 -0
- package/assets/esri/core/workers/chunks/82353e59ac6d909dcf41.js +1 -0
- package/assets/esri/core/workers/chunks/84d301e1b6b0d0b48f51.js +1 -0
- package/assets/esri/core/workers/chunks/86931186095c23e47c0c.js +1 -0
- package/assets/esri/core/workers/chunks/86ee278919038260696e.js +39 -0
- package/assets/esri/core/workers/chunks/{4496ef270c700078df0c.js → 8752f807c05d1ec215e8.js} +1 -1
- package/assets/esri/core/workers/chunks/{59e4e780dcdfed555ca5.js → 8ef5e6f1c606e5e41002.js} +1 -1
- package/assets/esri/core/workers/chunks/{55c7c51e56d72f507c22.js → 90afead317186b31b2f9.js} +1 -1
- package/assets/esri/core/workers/chunks/90c893959145827961ac.js +1 -0
- package/assets/esri/core/workers/chunks/931275cfa2c55eb0f504.js +1 -0
- package/assets/esri/core/workers/chunks/{7e0e9ca84490a0c67197.js → 98da74243df03e0cc70d.js} +1 -1
- package/assets/esri/core/workers/chunks/{354117429b3a0a0794c9.js → 999e8dbe6f4d0665b3ab.js} +1 -1
- package/assets/esri/core/workers/chunks/9c59fc2df8081e65a128.js +1 -0
- package/assets/esri/core/workers/chunks/a348ff2dd936c6bf9399.js +1 -0
- package/assets/esri/core/workers/chunks/a53e9f5092de715da025.js +1 -0
- package/assets/esri/core/workers/chunks/a9b6377f1fef5826f28d.js +1 -0
- package/assets/esri/core/workers/chunks/{8063e35dacf8f99471d8.js → aa404aaec843a4f46ab6.js} +1 -1
- package/assets/esri/core/workers/chunks/{21016d58428b15f7427c.js → aa712f850fd129ca5ed8.js} +1 -1
- package/assets/esri/core/workers/chunks/ab0113d1269675dcd520.js +1 -0
- package/assets/esri/core/workers/chunks/aff7c4477e1f0c31fffa.js +1 -0
- package/assets/esri/core/workers/chunks/{726e3f413824f02fe689.js → bd2dcc55ac3418421ee5.js} +1 -1
- package/assets/esri/core/workers/chunks/bf453744067267e84d1b.js +1 -0
- package/assets/esri/core/workers/chunks/c2f38c66fae2cdb57445.js +1 -0
- package/assets/esri/core/workers/chunks/c7aa4a8263e21f631004.js +1 -0
- package/assets/esri/core/workers/chunks/{b8a4352f83502449ff95.js → cbbbaccc0d3683e1c0fe.js} +1 -1
- package/assets/esri/core/workers/chunks/{e4290719c8afc2a4ee8c.js → cc441051a52bfbda9caf.js} +1 -1
- package/assets/esri/core/workers/chunks/{3be465c653236d6d8c1f.js → d2c7067bb6654c0e2793.js} +1 -1
- package/assets/esri/core/workers/chunks/{bc3f42401131a12fce9b.js → d2eb3802fa003c2d497e.js} +1 -1
- package/assets/esri/core/workers/chunks/d3912886ac2910290f43.js +1 -0
- package/assets/esri/core/workers/chunks/da7c14ae1a25fc7163ce.js +1 -0
- package/assets/esri/core/workers/chunks/daa54c8a317c27881763.js +1 -0
- package/assets/esri/core/workers/chunks/e08bff9f8247909776a4.js +1 -0
- package/assets/esri/core/workers/chunks/e15c612caadf7bac4ab9.js +1 -0
- package/assets/esri/core/workers/chunks/{d5d2a4e8e19898d86c6d.js → e2029267cddb8e2effab.js} +1 -1
- package/assets/esri/core/workers/chunks/e3ef0451dcdc2e966628.js +1 -0
- package/assets/esri/core/workers/chunks/e7e987558cf017c62458.js +1 -0
- package/assets/esri/core/workers/chunks/{042771b4e56355924140.js → e9993d4f2bfdc434fbcc.js} +1 -1
- package/assets/esri/core/workers/chunks/eabfab23246d4a052ea3.js +1 -0
- package/assets/esri/core/workers/chunks/ed3d1d0465f4a4d8df4a.js +1 -0
- package/assets/esri/core/workers/chunks/{4dc1e7d7ac2a4b0144c4.js → f128d3431da86e484117.js} +28 -29
- package/assets/esri/core/workers/chunks/{ed4afafbcb31491c2049.js → f452ca61842dbe8de9af.js} +1 -1
- package/assets/esri/core/workers/chunks/f54546c155fba2fd3a7e.js +1 -0
- package/assets/esri/core/workers/chunks/{4c8164955f8d844c09ee.js → f8d1c7df671733c3325c.js} +1 -1
- package/assets/esri/core/workers/chunks/{e45404a982e173459990.js → f92d521ed3df3c9f737b.js} +1 -1
- package/assets/esri/core/workers/chunks/{b2289c18c02c868a2939.js → f9bedb421d4e115a888f.js} +1 -1
- package/assets/esri/core/workers/chunks/{55f7b1de8882569861c0.js → faed301a25252c619cff.js} +1 -1
- package/assets/esri/core/workers/chunks/fb22b2e4988ecf4d6376.js +1 -0
- package/assets/esri/core/workers/chunks/fb455fd89b74b70a6a2b.js +1 -0
- package/assets/esri/core/workers/chunks/{6d77c7e9dec323fc4145.js → fb603edd374e24f366ff.js} +1 -1
- package/chunks/ComponentShader.glsl.js +25 -25
- package/chunks/HUDMaterial.glsl.js +2 -2
- package/chunks/LineMarker.glsl.js +26 -26
- package/chunks/Point2D.js +1 -1
- package/chunks/ProjectionTransformation.js +1 -1
- package/chunks/QuadraticBezier.js +1 -1
- package/chunks/RibbonLine.glsl.js +35 -33
- package/chunks/Terrain.glsl.js +33 -33
- package/chunks/aiServices.js +1 -1
- package/chunks/array.js +1 -1
- package/chunks/languageUtils.js +1 -1
- package/core/Accessor.js +1 -1
- package/core/accessorSupport/utils.js +1 -1
- package/core/workers/registry.js +1 -1
- package/geometry/operators/projectOperator.js +1 -1
- package/geometry/operators/shapePreservingProjectOperator.js +1 -1
- package/geometry/support/meshUtils/elevation.js +1 -1
- package/geometry/support/meshUtils.js +1 -1
- package/interfaces.d.ts +284 -10
- package/intl/locale.js +1 -1
- package/layers/LinkChartLayer.js +1 -1
- package/layers/MapImageLayer.js +1 -1
- package/layers/TileLayer.js +1 -1
- package/layers/support/RasterWorker.js +1 -1
- package/layers/support/VideoElement.js +1 -1
- package/layers/support/rasterDatasets/FunctionRaster.js +1 -1
- package/layers/support/rasterFunctions/clipUtils.js +1 -1
- package/layers/support/rasterFunctions/rasterProjectionHelper.js +1 -1
- package/package.json +2 -2
- package/rest/networks/queryAssociations.js +1 -1
- package/support/revision.js +1 -1
- package/symbols/WebStyleSymbol.js +1 -1
- package/symbols/support/symbolUtils.js +1 -1
- package/views/2d/LabelManager.js +1 -1
- package/views/2d/engine/webgl/Overlay.js +1 -1
- package/views/2d/layers/MapImageLayerView2D.js +1 -1
- package/views/2d/layers/TileLayerView2D.js +1 -1
- package/views/2d/layers/features/layerAdapters/OGCFeatureLayerAdapter.js +1 -1
- package/views/2d/layers/features/schema/processor/symbols/SymbolSchema.js +1 -1
- package/views/2d/layers/graphics/GraphicsView2D.js +1 -1
- package/views/2d/layers/support/util.js +1 -1
- package/views/3d/analysis/Dimension/LengthDimensionSubTool.js +1 -1
- package/views/3d/analysis/Slice/RotateManipulator.js +1 -1
- package/views/3d/layers/DrapedSubView3D.js +1 -1
- package/views/3d/layers/GraphicsView3D.js +1 -1
- package/views/3d/layers/ImageryLayerView3D.js +1 -1
- package/views/3d/layers/MapImageLayerView3D.js +1 -1
- package/views/3d/layers/MediaLayerView3D.js +1 -1
- package/views/3d/layers/TileLayerView3D.js +1 -1
- package/views/3d/layers/graphics/Graphics3DWebStyleSymbol.js +1 -1
- package/views/3d/layers/graphics/GraphicsProcessor.js +1 -1
- package/views/3d/layers/i3s/PointCloudRenderer.js +1 -1
- package/views/3d/layers/support/ImageHighlightHelper3D.js +5 -0
- package/views/3d/layers/support/SublayerPopupHighlightHelper3D.js +5 -0
- package/views/3d/terrain/Overlay.js +1 -1
- package/views/3d/terrain/OverlayRenderer.js +1 -1
- package/views/3d/terrain/RasterTile.js +1 -1
- package/views/3d/terrain/TerrainRenderer.js +1 -1
- package/views/3d/terrain/TerrainSurface.js +1 -1
- package/views/3d/terrain/TileCompositor.js +1 -1
- package/views/3d/terrain/TileRenderer.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/shader/ComponentShader.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js +9 -10
- package/views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlightOverlay.js +11 -0
- package/views/3d/webgl-engine/core/shaderLibrary/shading/ComputeNormalTexture.glsl.js +3 -3
- package/views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRendering.glsl.js +3 -6
- package/views/3d/webgl-engine/core/shaderLibrary/terrain/BlendLayersOutput.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/terrain/TileBackground.glsl.js +1 -1
- package/views/3d/webgl-engine/lib/Material.js +1 -1
- package/views/3d/webgl-engine/lib/Program.js +1 -1
- package/views/3d/webgl-engine/lib/Renderer.js +1 -1
- package/views/3d/webgl-engine/lib/Texture.js +1 -1
- package/views/3d/webgl-engine/lib/VertexAttribute.js +1 -1
- package/views/3d/webgl-engine/materials/CheckerBoardMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/ColorMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/DefaultTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/HeatmapDensityMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/ImageMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/LineCalloutMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/LineMarkerMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/MeasurementArrowMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/NativeLineMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/PathMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/PathTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/materials/PatternMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/ShadedColorMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/WaterMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/WaterTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/materials/internal/bufferWriterUtils.js +1 -1
- package/views/3d/webgl-engine/parts/RenderView.js +1 -1
- package/views/3d/webgl-engine/shaders/CheckerBoardTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/shaders/DefaultMaterialTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/shaders/ImageMaterialTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/shaders/LineMarkerTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/LineMarkerTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/shaders/NativeLineTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/shaders/PatternTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/shaders/PointRendererTechniqueConfiguration.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/3d/webgl-engine/shaders/ShadedColorMaterialTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/shaders/Terrain.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/TerrainTechniqueConfiguration.js +1 -1
- package/views/DOMContainer.js +1 -1
- package/views/FocusArea.js +1 -1
- package/views/GroundView.js +1 -1
- package/views/PopupView.js +1 -1
- package/views/SceneView.js +1 -1
- package/views/VideoView.d.ts +4 -0
- package/views/VideoView.js +1 -1
- package/views/layers/support/MapServiceLayerViewHelper.js +1 -1
- package/views/layers/support/highlightUtils.js +5 -0
- package/views/support/GroundViewElevationSampler.js +1 -1
- package/views/support/TextureCompressionHandle.js +5 -0
- package/views/support/TextureCompressionHelper.js +1 -1
- package/views/support/TextureCompressionWorker.js +5 -0
- package/views/support/TextureCompressionWorkerHandle.js +5 -0
- package/views/support/imageReprojection.js +1 -1
- package/views/webgl/ShaderBuilder.js +1 -1
- package/views/webgl/Texture.js +1 -1
- package/views/webgl/TextureDescriptor.js +1 -1
- package/webscene/Slide.js +1 -1
- package/widgets/CatalogLayerList/CatalogLayerListViewModel.js +1 -1
- package/widgets/CatalogLayerList.js +1 -1
- package/widgets/Directions.js +1 -1
- package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/UtilityNetworkAssociationItemList.js +1 -1
- package/widgets/Features/FeaturesViewModel.js +1 -1
- package/widgets/LayerList/ListItem.js +1 -1
- package/widgets/Legend/support/ActiveLayerInfo.js +1 -1
- package/widgets/Legend.js +1 -1
- package/widgets/TableList/ListItem.js +1 -1
- package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.js +1 -1
- package/widgets/UtilityNetworkTrace.js +1 -1
- package/widgets/ValuePicker.js +1 -1
- package/widgets/support/uriUtils.js +1 -1
- package/assets/esri/core/workers/chunks/0059295780fa4a090f30.js +0 -319
- package/assets/esri/core/workers/chunks/07910d16d1efae41d4bc.js +0 -1
- package/assets/esri/core/workers/chunks/0a3c1642cfabf9acd5c5.js +0 -1
- package/assets/esri/core/workers/chunks/0b7331613f91a3258352.js +0 -1
- package/assets/esri/core/workers/chunks/1a09dfb2c9fd7cd84cd4.js +0 -1
- package/assets/esri/core/workers/chunks/1dd6d68d23ba07587ae4.js +0 -1
- package/assets/esri/core/workers/chunks/2079f9d28e4199714f22.js +0 -1
- package/assets/esri/core/workers/chunks/29ba2022c2978e9bd53e.js +0 -1
- package/assets/esri/core/workers/chunks/29fe3e9a0ecab74bb729.js +0 -1
- package/assets/esri/core/workers/chunks/35f3eef81fac7924a487.js +0 -1
- package/assets/esri/core/workers/chunks/3fc18638f8799b85001d.js +0 -1
- package/assets/esri/core/workers/chunks/4539a802cba77a7a7cc7.js +0 -1
- package/assets/esri/core/workers/chunks/4d7bd2bbe9045a2fee7a.js +0 -1
- package/assets/esri/core/workers/chunks/50b6be13c270d7ac80d3.js +0 -1
- package/assets/esri/core/workers/chunks/54ace3e4802934f3f9f2.js +0 -1
- package/assets/esri/core/workers/chunks/5656cc44e3d4547668db.js +0 -1
- package/assets/esri/core/workers/chunks/597f450a57750637cb4d.js +0 -1
- package/assets/esri/core/workers/chunks/6e7577cb6378ff34e722.js +0 -1
- package/assets/esri/core/workers/chunks/6eb8d7edafeafeb10cae.js +0 -1
- package/assets/esri/core/workers/chunks/6ff981ec0c725efe5525.js +0 -1
- package/assets/esri/core/workers/chunks/71bd94cc789a55910f92.js +0 -1
- package/assets/esri/core/workers/chunks/762567124623f6d11e67.js +0 -1
- package/assets/esri/core/workers/chunks/77845cd5d824c1004bfa.js +0 -1
- package/assets/esri/core/workers/chunks/78683f1aadc1377be5fd.js +0 -1
- package/assets/esri/core/workers/chunks/7a4413a188a8f1affb2f.js +0 -1
- package/assets/esri/core/workers/chunks/7d3b2bdc75525d47389c.js +0 -1
- package/assets/esri/core/workers/chunks/81bf362ec0d23ffdc90c.js +0 -39
- package/assets/esri/core/workers/chunks/81f2f1614ea27f4c2e65.js +0 -1
- package/assets/esri/core/workers/chunks/901c957c049f53318e87.js +0 -1
- package/assets/esri/core/workers/chunks/94f41ef15f6c61562e5e.js +0 -1
- package/assets/esri/core/workers/chunks/95f23bd17ce9e07fc8ef.js +0 -1
- package/assets/esri/core/workers/chunks/96d7f47ea8fbf345101c.js +0 -1
- package/assets/esri/core/workers/chunks/9f312f7284e506a84ed7.js +0 -1
- package/assets/esri/core/workers/chunks/a59ad50d932da1e28c8f.js +0 -1
- package/assets/esri/core/workers/chunks/ac86d0b31f6368bd1fb1.js +0 -1
- package/assets/esri/core/workers/chunks/ad9b3b83aa96db7b79ea.js +0 -1
- package/assets/esri/core/workers/chunks/afe94e351b4a50d7bc53.js +0 -1
- package/assets/esri/core/workers/chunks/b02ac03503bfff1ff922.js +0 -1
- package/assets/esri/core/workers/chunks/b8416f2560710258c239.js +0 -1
- package/assets/esri/core/workers/chunks/b948fe33b4d650eea796.js +0 -1
- package/assets/esri/core/workers/chunks/ba47e43ef039fe4b8c5c.js +0 -1
- package/assets/esri/core/workers/chunks/be002f24beb832a369ce.js +0 -1
- package/assets/esri/core/workers/chunks/bf3c4c1bff8b71bc0b13.js +0 -1
- package/assets/esri/core/workers/chunks/d45ff061bf71b73e9f26.js +0 -1
- package/assets/esri/core/workers/chunks/d8ddff920725acb99200.js +0 -1
- package/assets/esri/core/workers/chunks/db4c110ab4c26c4b768c.js +0 -1
- package/assets/esri/core/workers/chunks/dfa4be2e07cc4c0938b0.js +0 -1
- package/assets/esri/core/workers/chunks/e088edb9ffbaa1ed12eb.js +0 -1
- package/assets/esri/core/workers/chunks/e0ac90b4ad8c36fb7d70.js +0 -1
- package/assets/esri/core/workers/chunks/e491daf73ab1264aa1b9.js +0 -1
- package/assets/esri/core/workers/chunks/f2a6287c8d28be24f71e.js +0 -1
- package/assets/esri/core/workers/chunks/f454e773505c0eef2f9d.js +0 -1
- package/assets/esri/core/workers/chunks/f4861d73c62096f73e48.js +0 -1
- package/assets/esri/core/workers/chunks/f70dd16f14279bb7e60d.js +0 -1
- package/assets/esri/core/workers/chunks/fa011ad649c05201e92a.js +0 -1
- package/views/3d/webgl-engine/lib/TextureCompressionWorker.js +0 -5
- package/views/3d/webgl-engine/lib/TextureCompressionWorkerHandle.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.33/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 v}from"../views/3d/webgl-engine/core/shaderModules/Float4BindUniform.js";import{Float4PassUniform as f}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}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{Matrix4BindUniform as S}from"../views/3d/webgl-engine/core/shaderModules/Matrix4BindUniform.js";import{VertexAttribute as u}from"../views/3d/webgl-engine/lib/VertexAttribute.js";import{LineMarkerSpace as x}from"../views/3d/webgl-engine/shaders/LineMarkerTechniqueConfiguration.js";import{outputColorHighlightOID as L}from"../views/3d/webgl-engine/shaders/OutputColorHighlightOID.glsl.js";import{CapType as w}from"../views/3d/webgl-engine/shaders/RibbonLineTechniqueConfiguration.js";import{ShaderBuilder as b}from"../views/webgl/ShaderBuilder.js";import{alphaCutoff as y}from"../webscene/support/AlphaCutoff.js";const j=1;function P(P){const C=new b,{attributes:F,varyings:A,vertex:R,fragment:z}=C,{applyMarkerOffset:T,draped:V,output:W,capType:E,stippleEnabled:O,falloffEnabled:M,roundJoins:N,wireframe:_,innerColorEnabled:I}=P;C.include(s),C.include(n,P),C.include(r,P),C.include(t,P),C.include(l,P);const k=T&&!V;k&&(R.uniforms.add(new h("markerScale",(e=>e.markerScale))),C.include(a,{space:x.World})),p(R,P),R.uniforms.add(new S("inverseProjectionMatrix",(e=>e.camera.inverseProjectionMatrix)),new m("nearFar",(e=>e.camera.nearFar)),new h("miterLimit",(e=>"miter"!==e.join?0:e.miterLimit)),new v("viewport",(e=>e.camera.fullViewport))),R.constants.add("LARGE_HALF_FLOAT","float",65500),F.add(u.POSITION,"vec3"),F.add(u.PREVIOUSDELTA,"vec4"),F.add(u.NEXTDELTA,"vec4"),F.add(u.LINEPARAMETERS,"vec2"),F.add(u.U0,"float"),A.add("vColor","vec4"),A.add("vpos","vec3",{invariant:!0}),A.add("vLineDistance","float"),A.add("vLineWidth","float");const U=O;U&&A.add("vLineSizeInv","float");const B=E===w.ROUND,$=O&&B,H=M||$;H&&A.add("vLineDistanceNorm","float"),B&&(A.add("vSegmentSDF","float"),A.add("vReverseSegmentSDF","float")),R.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
|
+
}`),R.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
|
+
}`),R.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,9 +47,11 @@ forwardViewPosDepth(pos.xyz);
|
|
|
47
47
|
pos = projectAndScale(pos);
|
|
48
48
|
next = projectAndScale(next);
|
|
49
49
|
prev = projectAndScale(prev);
|
|
50
|
-
}`),c(
|
|
50
|
+
}`),c(R),R.constants.add("aaWidth","float",O?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
|
+
vec3 prevPosition = position + previousDelta.xyz * previousDelta.w;
|
|
54
|
+
vec3 nextPosition = position + nextDelta.xyz * nextDelta.w;
|
|
53
55
|
|
|
54
56
|
float coverage = 1.0;
|
|
55
57
|
|
|
@@ -71,25 +73,25 @@ prev = projectAndScale(prev);
|
|
|
71
73
|
|
|
72
74
|
float lineWidth = lineSize * pixelRatio;
|
|
73
75
|
vLineWidth = lineWidth;
|
|
74
|
-
${
|
|
76
|
+
${U?D`vLineSizeInv = 1.0 / lineSize;`:""}
|
|
75
77
|
|
|
76
78
|
vec4 pos = view * vec4(position, 1.0);
|
|
77
79
|
vec4 prev = view * vec4(prevPosition, 1.0);
|
|
78
80
|
vec4 next = view * vec4(nextPosition, 1.0);
|
|
79
|
-
`),k&&
|
|
81
|
+
`),k&&R.main.add(D`vec4 other = isStartVertex ? next : prev;
|
|
80
82
|
bool markersHidden = areWorldMarkersHidden(pos, other);
|
|
81
83
|
if(!isJoin && !markersHidden) {
|
|
82
84
|
pos.xyz += normalize(other.xyz - pos.xyz) * getWorldMarkerSize(pos) * 0.5;
|
|
83
|
-
}`),
|
|
85
|
+
}`),R.main.add(D`clipAndTransform(pos, prev, next, isStartVertex);
|
|
84
86
|
vec2 left = (pos.xy - prev.xy);
|
|
85
87
|
vec2 right = (next.xy - pos.xy);
|
|
86
88
|
float leftLen = length(left);
|
|
87
|
-
float rightLen = length(right);`);(
|
|
89
|
+
float rightLen = length(right);`);(O||B)&&R.main.add(D`
|
|
88
90
|
float isEndVertex = float(!isStartVertex);
|
|
89
91
|
vec2 segmentOrigin = mix(pos.xy, prev.xy, isEndVertex);
|
|
90
92
|
vec2 segment = mix(right, left, isEndVertex);
|
|
91
|
-
${
|
|
92
|
-
`),
|
|
93
|
+
${B?D`vec2 segmentEnd = mix(next.xy, pos.xy, isEndVertex);`:""}
|
|
94
|
+
`),R.main.add(D`left = (leftLen > 0.001) ? left/leftLen : vec2(0.0, 0.0);
|
|
93
95
|
right = (rightLen > 0.001) ? right/rightLen : vec2(0.0, 0.0);
|
|
94
96
|
vec2 capDisplacementDir = vec2(0, 0);
|
|
95
97
|
vec2 joinDisplacementDir = vec2(0, 0);
|
|
@@ -106,18 +108,18 @@ displacementLen = min(displacementLen, min(leftLen, rightLen)/abs(nDotSeg));
|
|
|
106
108
|
}
|
|
107
109
|
}
|
|
108
110
|
float subdivisionFactor = lineParameters.x;
|
|
109
|
-
if (isOutside && (displacementLen > miterLimit * lineWidth)) {`),
|
|
111
|
+
if (isOutside && (displacementLen > miterLimit * lineWidth)) {`),N?R.main.add(D`
|
|
110
112
|
vec2 startDir = leftLen < 0.001 ? right : left;
|
|
111
113
|
startDir = perpendicular(startDir);
|
|
112
114
|
|
|
113
115
|
vec2 endDir = rightLen < 0.001 ? left : right;
|
|
114
116
|
endDir = perpendicular(endDir);
|
|
115
117
|
|
|
116
|
-
float factor = ${
|
|
118
|
+
float factor = ${O?D`min(1.0, subdivisionFactor * ${D.float((j+2)/(j+1))})`:D`subdivisionFactor`};
|
|
117
119
|
|
|
118
120
|
float rotationAngle = acos(clamp(dot(startDir, endDir), -1.0, 1.0));
|
|
119
121
|
joinDisplacementDir = rotate(startDir, -sign(lineParameters.y) * factor * rotationAngle);
|
|
120
|
-
`):
|
|
122
|
+
`):R.main.add(D`if (leftLen < 0.001) {
|
|
121
123
|
joinDisplacementDir = right;
|
|
122
124
|
}
|
|
123
125
|
else if (rightLen < 0.001) {
|
|
@@ -126,7 +128,7 @@ joinDisplacementDir = left;
|
|
|
126
128
|
else {
|
|
127
129
|
joinDisplacementDir = (isStartVertex || subdivisionFactor > 0.0) ? right : left;
|
|
128
130
|
}
|
|
129
|
-
joinDisplacementDir = perpendicular(joinDisplacementDir);`);const J=
|
|
131
|
+
joinDisplacementDir = perpendicular(joinDisplacementDir);`);const J=E!==w.BUTT;return R.main.add(D`
|
|
130
132
|
displacementLen = lineWidth;
|
|
131
133
|
}
|
|
132
134
|
} else {
|
|
@@ -134,27 +136,27 @@ joinDisplacementDir = perpendicular(joinDisplacementDir);`);const J=O!==w.BUTT;r
|
|
|
134
136
|
joinDisplacementDir = isStartVertex ? right : left;
|
|
135
137
|
joinDisplacementDir = perpendicular(joinDisplacementDir);
|
|
136
138
|
|
|
137
|
-
${J?
|
|
139
|
+
${J?D`capDisplacementDir = isStartVertex ? -right : left;`:""}
|
|
138
140
|
}
|
|
139
|
-
`),
|
|
141
|
+
`),R.main.add(D`
|
|
140
142
|
// Displacement (in pixels) caused by join/or cap
|
|
141
143
|
vec2 dpos = joinDisplacementDir * sign(lineParameters.y) * displacementLen + capDisplacementDir * displacementLen;
|
|
142
144
|
float lineDistNorm = sign(lineParameters.y) * pos.w;
|
|
143
145
|
|
|
144
146
|
vLineDistance = lineWidth * lineDistNorm;
|
|
145
|
-
${H?
|
|
147
|
+
${H?D`vLineDistanceNorm = lineDistNorm;`:""}
|
|
146
148
|
|
|
147
149
|
pos.xy += dpos;
|
|
148
|
-
`),
|
|
150
|
+
`),B&&R.main.add(D`vec2 segmentDir = normalize(segment);
|
|
149
151
|
vSegmentSDF = (isJoin && isStartVertex) ? LARGE_HALF_FLOAT : (dot(pos.xy - segmentOrigin, segmentDir) * pos.w) ;
|
|
150
|
-
vReverseSegmentSDF = (isJoin && !isStartVertex) ? LARGE_HALF_FLOAT : (dot(pos.xy - segmentEnd, -segmentDir) * pos.w);`),
|
|
151
|
-
float worldToScreenRatio = computeWorldToScreenRatio(segmentCenter);`),
|
|
152
|
+
vReverseSegmentSDF = (isJoin && !isStartVertex) ? LARGE_HALF_FLOAT : (dot(pos.xy - segmentEnd, -segmentDir) * pos.w);`),O&&(V?R.uniforms.add(new g("worldToScreenRatio",(e=>1/e.screenToPCSRatio))):R.main.add(D`vec3 segmentCenter = mix((nextPosition + position) * 0.5, (position + prevPosition) * 0.5, isEndVertex);
|
|
153
|
+
float worldToScreenRatio = computeWorldToScreenRatio(segmentCenter);`),R.main.add(D`float segmentLengthScreenDouble = length(segment);
|
|
152
154
|
float segmentLengthScreen = segmentLengthScreenDouble * 0.5;
|
|
153
155
|
float discreteWorldToScreenRatio = discretizeWorldToScreenRatio(worldToScreenRatio);
|
|
154
156
|
float segmentLengthRender = length(mix(nextPosition - position, position - prevPosition, isEndVertex));
|
|
155
|
-
vStipplePatternStretch = worldToScreenRatio / discreteWorldToScreenRatio;`),V?
|
|
156
|
-
float startPseudoScreen = u0 * discreteWorldToScreenRatio - mix(0.0, segmentLengthPseudoScreen, isEndVertex);`):
|
|
157
|
-
float segmentLengthPseudoScreen = segmentLengthRender * discreteWorldToScreenRatio;`),
|
|
157
|
+
vStipplePatternStretch = worldToScreenRatio / discreteWorldToScreenRatio;`),V?R.main.add(D`float segmentLengthPseudoScreen = segmentLengthScreen / pixelRatio * discreteWorldToScreenRatio / worldToScreenRatio;
|
|
158
|
+
float startPseudoScreen = u0 * discreteWorldToScreenRatio - mix(0.0, segmentLengthPseudoScreen, isEndVertex);`):R.main.add(D`float startPseudoScreen = mix(u0, u0 - segmentLengthRender, isEndVertex) * discreteWorldToScreenRatio;
|
|
159
|
+
float segmentLengthPseudoScreen = segmentLengthRender * discreteWorldToScreenRatio;`),R.uniforms.add(new h("stipplePatternPixelSize",(e=>o(e)))),R.main.add(D`float patternLength = lineSize * stipplePatternPixelSize;
|
|
158
160
|
vStippleDistanceLimits = computeStippleDistanceLimits(startPseudoScreen, segmentLengthPseudoScreen, segmentLengthScreen, patternLength);
|
|
159
161
|
vStippleDistance = mix(vStippleDistanceLimits.x, vStippleDistanceLimits.y, isEndVertex);
|
|
160
162
|
if (segmentLengthScreenDouble >= 0.001) {
|
|
@@ -168,21 +170,21 @@ vStippleDistanceLimits = isJoin ?
|
|
|
168
170
|
vStippleDistanceLimits :
|
|
169
171
|
isStartVertex ?
|
|
170
172
|
vec2(-1e34, vStippleDistanceLimits.y) :
|
|
171
|
-
vec2(vStippleDistanceLimits.x, 1e34);`)),
|
|
173
|
+
vec2(vStippleDistanceLimits.x, 1e34);`)),R.main.add(D`
|
|
172
174
|
// Convert back into NDC
|
|
173
175
|
pos.xy = (pos.xy / viewport.zw) * pos.w;
|
|
174
176
|
|
|
175
177
|
vColor = getColor();
|
|
176
178
|
vColor.a *= coverage;
|
|
177
179
|
|
|
178
|
-
${
|
|
180
|
+
${_&&!V?"pos.z -= 0.001 * pos.w;":""}
|
|
179
181
|
|
|
180
182
|
// transform final position to camera space for slicing
|
|
181
183
|
vpos = (inverseProjectionMatrix * pos).xyz;
|
|
182
184
|
gl_Position = pos;
|
|
183
185
|
forwardObjectAndLayerIdColor();
|
|
184
|
-
}`),C.fragment.include(i,P),C.include(L,P),z.include(d),z.main.add(
|
|
185
|
-
discardByTerrainDepth();`),
|
|
186
|
+
}`),C.fragment.include(i,P),C.include(L,P),z.include(d),z.main.add(D`discardBySlice(vpos);
|
|
187
|
+
discardByTerrainDepth();`),_?z.main.add(D`vec4 finalColor = vec4(1.0, 0.0, 1.0, 1.0);`):(B&&z.main.add(D`
|
|
186
188
|
float sdf = min(vSegmentSDF, vReverseSegmentSDF);
|
|
187
189
|
vec2 fragmentPosition = vec2(
|
|
188
190
|
min(sdf, 0.0),
|
|
@@ -193,10 +195,10 @@ discardByTerrainDepth();`),I?z.main.add(S`vec4 finalColor = vec4(1.0, 0.0, 1.0,
|
|
|
193
195
|
float fragmentCapSDF = (fragmentRadius - vLineWidth) * 0.5; // Divide by 2 to transform from double pixel scale
|
|
194
196
|
float capCoverage = clamp(0.5 - fragmentCapSDF, 0.0, 1.0);
|
|
195
197
|
|
|
196
|
-
if (capCoverage < ${
|
|
198
|
+
if (capCoverage < ${D.float(y)}) {
|
|
197
199
|
discard;
|
|
198
200
|
}
|
|
199
|
-
`),$?z.main.add(
|
|
201
|
+
`),$?z.main.add(D`
|
|
200
202
|
vec2 stipplePosition = vec2(
|
|
201
203
|
min(getStippleSDF() * 2.0 - 1.0, 0.0),
|
|
202
204
|
vLineDistanceNorm * gl_FragCoord.w
|
|
@@ -204,11 +206,11 @@ discardByTerrainDepth();`),I?z.main.add(S`vec4 finalColor = vec4(1.0, 0.0, 1.0,
|
|
|
204
206
|
float stippleRadius = length(stipplePosition * vLineWidth);
|
|
205
207
|
float stippleCapSDF = (stippleRadius - vLineWidth) * 0.5; // Divide by 2 to transform from double pixel scale
|
|
206
208
|
float stippleCoverage = clamp(0.5 - stippleCapSDF, 0.0, 1.0);
|
|
207
|
-
float stippleAlpha = step(${
|
|
208
|
-
`):z.main.add(
|
|
209
|
+
float stippleAlpha = step(${D.float(y)}, stippleCoverage);
|
|
210
|
+
`):z.main.add(D`float stippleAlpha = getStippleAlpha();`),W!==e.ObjectAndLayerIdColor&&z.main.add(D`discardByStippleAlpha(stippleAlpha, ${D.float(y)});`),z.uniforms.add(new f("intrinsicColor",(e=>e.color))),z.main.add(D`vec4 color = intrinsicColor * vColor;`),I&&(z.uniforms.add(new f("innerColor",(e=>e.innerColor??e.color)),new h("innerWidth",((e,i)=>e.innerWidth*i.camera.pixelRatio))),z.main.add(D`float distToInner = abs(vLineDistance * gl_FragCoord.w) - innerWidth;
|
|
209
211
|
float innerAA = clamp(0.5 - distToInner, 0.0, 1.0);
|
|
210
212
|
float innerAlpha = innerColor.a + color.a * (1.0 - innerColor.a);
|
|
211
|
-
color = mix(color, vec4(innerColor.rgb, innerAlpha), innerAA);`)),z.main.add(
|
|
213
|
+
color = mix(color, vec4(innerColor.rgb, innerAlpha), innerAA);`)),z.main.add(D`vec4 finalColor = blendStipple(color, stippleAlpha);`),M&&(z.uniforms.add(new h("falloff",(e=>e.falloff))),z.main.add(D`finalColor.a *= pow(max(0.0, 1.0 - abs(vLineDistanceNorm * gl_FragCoord.w)), falloff);`)),O||z.main.add(D`float featherStartDistance = max(vLineWidth - 2.0, 0.0);
|
|
212
214
|
float value = abs(vLineDistance) * gl_FragCoord.w;
|
|
213
215
|
float feather = (value - featherStartDistance) / (vLineWidth - featherStartDistance);
|
|
214
|
-
finalColor.a *= 1.0 - clamp(feather, 0.0, 1.0);`)),z.main.add(
|
|
216
|
+
finalColor.a *= 1.0 - clamp(feather, 0.0, 1.0);`)),z.main.add(D`outputColorHighlightOID(finalColor, vpos);`),C}const C=Object.freeze(Object.defineProperty({__proto__:null,build:P,ribbonlineNumRoundJoinSubdivisions:j},Symbol.toStringTag,{value:"Module"}));export{C as R,P as b,j as r};
|
package/chunks/Terrain.glsl.js
CHANGED
|
@@ -2,53 +2,53 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.33/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{translate as e}from"../core/libs/gl-matrix-2/math/mat4.js";import{create as r}from"../core/libs/gl-matrix-2/factories/mat4f64.js";import{n as o,i as a}from"./vec32.js";import{create as i}from"../core/libs/gl-matrix-2/factories/vec3f64.js";import{OverlayContent as l}from"../views/3d/terrain/OverlayContent.js";import{TransparencyMode as t}from"../views/3d/terrain/TransparencyMode.js";import{addLinearDepth as n,addNearFar as s,ForwardLinearDepth as c}from"../views/3d/webgl-engine/core/shaderLibrary/ForwardLinearDepth.glsl.js";import{ShaderOutput as d}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutput.js";import{SliceDraw as m}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as v}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{NormalAttribute as g}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/NormalAttribute.glsl.js";import{TextureCoordinateAttribute as p}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js";import{VertexTangent as f}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexTangent.glsl.js";import{OutputDepth as
|
|
5
|
+
import{translate as e}from"../core/libs/gl-matrix-2/math/mat4.js";import{create as r}from"../core/libs/gl-matrix-2/factories/mat4f64.js";import{n as o,i as a}from"./vec32.js";import{create as i}from"../core/libs/gl-matrix-2/factories/vec3f64.js";import{OverlayContent as l}from"../views/3d/terrain/OverlayContent.js";import{TransparencyMode as t}from"../views/3d/terrain/TransparencyMode.js";import{addLinearDepth as n,addNearFar as s,ForwardLinearDepth as c}from"../views/3d/webgl-engine/core/shaderLibrary/ForwardLinearDepth.glsl.js";import{ShaderOutput as d}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutput.js";import{SliceDraw as m}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as v}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{NormalAttribute as g}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/NormalAttribute.glsl.js";import{TextureCoordinateAttribute as p}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js";import{VertexTangent as f}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexTangent.glsl.js";import{OutputDepth as u}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputDepth.glsl.js";import{OutputHighlight as w}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js";import{OutputHighlightOverlay as h}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlightOverlay.js";import{EvaluateAmbientOcclusion as b}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientOcclusion.glsl.js";import{EvaluateSceneLighting as C,addAmbientBoostFactor as y,addLightingGlobalFactor as x}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js";import{addMainLightDirection as O,addMainLightIntensity as j}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MainLighting.glsl.js";import{NormalUtils as S}from"../views/3d/webgl-engine/core/shaderLibrary/shading/NormalUtils.glsl.js";import{PBRMode as L}from"../views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js";import{ReadShadowMapDraw as T}from"../views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js";import{OverlayTerrain as z,OverlayMode as P}from"../views/3d/webgl-engine/core/shaderLibrary/terrain/Overlay.glsl.js";import{OverlayTerrainPassParameters as M,TerrainTexture as $}from"../views/3d/webgl-engine/core/shaderLibrary/terrain/TerrainTexture.glsl.js";import{addProjViewLocalOrigin as N,addViewNormal as W,addCameraPosition as D}from"../views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js";import{Float3BindUniform as A}from"../views/3d/webgl-engine/core/shaderModules/Float3BindUniform.js";import{glsl as F,If as V}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{Matrix4DrawUniform as _}from"../views/3d/webgl-engine/core/shaderModules/Matrix4DrawUniform.js";import{Texture2DBindUniform as B}from"../views/3d/webgl-engine/core/shaderModules/Texture2DBindUniform.js";import{VertexAttribute as U}from"../views/3d/webgl-engine/lib/VertexAttribute.js";import{ShaderBuilder as H}from"../views/webgl/ShaderBuilder.js";import{alphaCutoff as I}from"../webscene/support/AlphaCutoff.js";class k extends M{}function E(r){const i=new H,{attributes:M,vertex:k,fragment:E,varyings:R}=i;M.add(U.POSITION,"vec3"),i.include(g,r),i.include(p,r);const J=()=>{i.include(S,r),k.code.add(F`vec3 getNormal() {
|
|
6
6
|
float z = 1.0 - abs(normalCompressed.x) - abs(normalCompressed.y);
|
|
7
7
|
vec3 n = vec3(normalCompressed + vec2(normalCompressed.x >= 0.0 ? 1.0 : -1.0,
|
|
8
8
|
normalCompressed.y >= 0.0 ? 1.0 : -1.0) * min(z, 0.0), z);
|
|
9
9
|
return normalize(n);
|
|
10
|
-
}`)}
|
|
10
|
+
}`)};N(k,r),i.include(v,r);const{output:K,pbrMode:Q,overlayMode:X,tileBorders:Y,spherical:Z,transparencyMode:ee,screenSizePerspective:re,overlayEnabled:oe}=r,ae=ee===t.InvisibleWithDraped||ee===t.Invisible,ie=oe&&ae;switch(K){case d.ColorEmission:case d.Color:{i.include($,r),i.include(C,r),oe&&(r.pbrMode=Q===L.Simplified?L.TerrainWithWater:L.Water,i.include(z,r),r.pbrMode=Q);const t=X===P.EnabledWithWater;t&&i.include(f,r),R.add("vnormal","vec3"),R.add("vpos","vec3",{invariant:!0}),R.add("vup","vec3"),J(),re&&W(k);const n=r.receiveShadows&&!r.renderOccluded;n&&i.include(c,r),re&&(R.add("screenSizeDistanceToCamera","float"),R.add("screenSizeCosAngle","float")),k.main.add(F`
|
|
11
11
|
vpos = position;
|
|
12
12
|
vec3 positionWorld = position + localOrigin;
|
|
13
13
|
gl_Position = transformPosition(proj, view, vpos);
|
|
14
14
|
vnormal = getNormal();
|
|
15
15
|
vup = getLocalUp(position, localOrigin);
|
|
16
|
-
${
|
|
16
|
+
${V(t,F`forwardVertexTangent(vnormal);`)}
|
|
17
17
|
|
|
18
18
|
forwardTextureCoordinatesWithTransform(uv0);
|
|
19
|
-
${
|
|
20
|
-
${
|
|
21
|
-
${
|
|
19
|
+
${V(oe,"setOverlayVTC(uv0);")}
|
|
20
|
+
${V(Y,"forwardTextureCoordinates();")}
|
|
21
|
+
${V(re,F`vec3 viewPos = (view * vec4(vpos, 1.0)).xyz;
|
|
22
22
|
screenSizeDistanceToCamera = length(viewPos);
|
|
23
23
|
vec3 viewSpaceNormal = (viewNormal * vec4(normalize(positionWorld), 1.0)).xyz;
|
|
24
24
|
screenSizeCosAngle = abs(viewSpaceNormal.z);`)}
|
|
25
|
-
${
|
|
25
|
+
${V(n,"forwardLinearDepth();")}`),i.fragment.include(m,r),i.include(C,r),i.include(b,r),i.include(T,r),D(E,r),y(E),x(E),E.uniforms.add(k.uniforms.get("localOrigin"),new A("viewDirection",(({camera:e})=>o(G,a(G,e.viewMatrix[12],e.viewMatrix[13],e.viewMatrix[14]))))),t&&E.uniforms.add(new B("ovWaterTex",(e=>e.overlay?.getTexture(l.WaterNormal))),new _("view",(({origin:r},{camera:o})=>e(q,o.viewMatrix,r))));const s=.2;E.code.add(F`float lum(vec3 c) {
|
|
26
26
|
return (min(min(c.r, c.g), c.b) + max(max(c.r, c.g), c.b)) * 0.5;
|
|
27
|
-
}`),
|
|
27
|
+
}`),O(E),j(E),E.main.add(F`
|
|
28
28
|
vec3 normal = normalize(vnormal);
|
|
29
29
|
float vndl = dot(normal, mainLightDirection);
|
|
30
30
|
|
|
31
31
|
float additionalAmbientScale = smoothstep(0.0, 1.0, clamp(vndl*2.5, 0.0, 1.0));
|
|
32
|
-
float shadow = ${n?"max(lightingGlobalFactor * (1.0 - additionalAmbientScale), readShadowMap(vpos, linearDepth))":
|
|
32
|
+
float shadow = ${n?"max(lightingGlobalFactor * (1.0 - additionalAmbientScale), readShadowMap(vpos, linearDepth))":Z?"lightingGlobalFactor * (1.0 - additionalAmbientScale)":"0.0"};
|
|
33
33
|
|
|
34
34
|
float ssao = evaluateAmbientOcclusionInverse();
|
|
35
35
|
vec4 tileColor = getTileColor();
|
|
36
36
|
|
|
37
|
-
${
|
|
37
|
+
${V(oe,F`vec4 overlayColorOpaque = getOverlayColor(ovColorTex, vtcOverlay);
|
|
38
38
|
vec4 overlayColor = overlayOpacity * overlayColorOpaque;
|
|
39
|
-
${
|
|
39
|
+
${V(ae,`if (overlayColor.a < ${F.float(I)}) { discard; }`)}
|
|
40
40
|
vec4 groundColor = tileColor;
|
|
41
41
|
tileColor = tileColor * (1.0 - overlayColor.a) + overlayColor;`)}
|
|
42
42
|
|
|
43
43
|
// If combined alpha is 0 we can discard pixel. The performance impact by having a discard here
|
|
44
44
|
// is neglectable because terrain typically renders first into the framebuffer.
|
|
45
|
-
if(tileColor.a < ${
|
|
45
|
+
if(tileColor.a < ${F.float(I)}) {
|
|
46
46
|
discard;
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
bool sliced = rejectBySlice(vpos);
|
|
50
50
|
if (sliced) {
|
|
51
|
-
tileColor *= ${
|
|
51
|
+
tileColor *= ${F.float(s)};
|
|
52
52
|
}
|
|
53
53
|
|
|
54
54
|
vec3 albedo = tileColor.rgb;
|
|
@@ -57,8 +57,8 @@ return (min(min(c.r, c.g), c.b) + max(max(c.r, c.g), c.b)) * 0.5;
|
|
|
57
57
|
|
|
58
58
|
vec3 additionalLight = ssao * mainLightIntensity * additionalAmbientScale * ambientBoostFactor * lightingGlobalFactor;
|
|
59
59
|
|
|
60
|
-
${
|
|
61
|
-
${
|
|
60
|
+
${Q===L.Simplified||Q===L.TerrainWithWater?F`fragColor = vec4(evaluatePBRSimplifiedLighting(normal, albedo, shadow, 1.0 - ssao, additionalLight, normalize(vpos - cameraPosition), vup), tileColor.a);`:F`fragColor = vec4(evaluateSceneLighting(normal, albedo, shadow, 1.0 - ssao, additionalLight), tileColor.a);`}
|
|
61
|
+
${V(t,F`vec4 overlayWaterMask = getOverlayColor(ovWaterTex, vtcOverlay);
|
|
62
62
|
float waterNormalLength = length(overlayWaterMask);
|
|
63
63
|
if (waterNormalLength > 0.95) {
|
|
64
64
|
mat3 tbnMatrix = mat3(tbnTangent, tbnBiTangent, vnormal);
|
|
@@ -66,11 +66,11 @@ return (min(min(c.r, c.g), c.b) + max(max(c.r, c.g), c.b)) * 0.5;
|
|
|
66
66
|
vec4 viewPosition = view*vec4(vpos, 1.0);
|
|
67
67
|
vec4 waterColorLinear = getOverlayWaterColor(overlayWaterMask, waterOverlayColor, -normalize(vpos - cameraPosition), shadow, vnormal, tbnMatrix, viewPosition.xyz, vpos + localOrigin);
|
|
68
68
|
vec4 waterColorNonLinear = delinearizeGamma(vec4(waterColorLinear.xyz, 1.0));
|
|
69
|
-
float opacity = sliced ? ${
|
|
69
|
+
float opacity = sliced ? ${F.float(s)} : 1.0;
|
|
70
70
|
// un-gamma the ground color to mix in linear space
|
|
71
71
|
fragColor = mix(groundColor, waterColorNonLinear, waterColorLinear.w) * opacity;
|
|
72
72
|
}`)}
|
|
73
|
-
${
|
|
73
|
+
${V(re,F`float perspectiveScale = screenSizePerspectiveScaleFloat(1.0, screenSizeCosAngle, screenSizeDistanceToCamera, vec4(0.0));
|
|
74
74
|
if (perspectiveScale <= 0.25) {
|
|
75
75
|
fragColor = mix(fragColor, vec4(1.0, 0.0, 0.0, 1.0), perspectiveScale * 4.0);
|
|
76
76
|
} else if (perspectiveScale <= 0.5) {
|
|
@@ -80,34 +80,34 @@ return (min(min(c.r, c.g), c.b) + max(max(c.r, c.g), c.b)) * 0.5;
|
|
|
80
80
|
} else {
|
|
81
81
|
fragColor = mix(fragColor, vec4(1.0, 0.0, 1.0, 1.0), (perspectiveScale - 0.5) * 2.0);
|
|
82
82
|
}`)}
|
|
83
|
-
${
|
|
83
|
+
${V(r.visualizeNormals,Z?F`
|
|
84
84
|
vec3 localUp = normalize(vpos + localOrigin);
|
|
85
85
|
vec3 right = normalize(cross(vec3(0.0, 0.0, 1.0), localUp));
|
|
86
86
|
vec3 forward = normalize(cross(localUp, right));
|
|
87
87
|
mat3 tbn = mat3(right, forward, localUp);
|
|
88
88
|
vec3 tNormal = normalize(normal * tbn);
|
|
89
|
-
fragColor = vec4(vec3(0.5) + 0.5 * tNormal, 0.0);`:
|
|
89
|
+
fragColor = vec4(vec3(0.5) + 0.5 * tNormal, 0.0);`:F`
|
|
90
90
|
vec3 tNormal = normalize(normal);
|
|
91
91
|
fragColor = vec4(vec3(0.5) + 0.5 * tNormal, 0.0);`)}
|
|
92
|
-
${
|
|
92
|
+
${V(Y,F`vec2 dVuv = fwidth(vuv0);
|
|
93
93
|
vec2 edgeFactors = smoothstep(vec2(0.0), 1.5 * dVuv, min(vuv0, 1.0 - vuv0));
|
|
94
94
|
float edgeFactor = 1.0 - min(edgeFactors.x, edgeFactors.y);
|
|
95
95
|
fragColor = mix(fragColor, vec4(1.0, 0.0, 0.0, 1.0), edgeFactor);`)}
|
|
96
|
-
fragColor = applySlice(fragColor, vpos);`)}break;case d.Depth:
|
|
97
|
-
${
|
|
98
|
-
gl_Position = transformPosition(proj, view, position);`),
|
|
99
|
-
${
|
|
96
|
+
fragColor = applySlice(fragColor, vpos);`)}break;case d.Depth:ie&&i.include(z,r),k.main.add(F`
|
|
97
|
+
${V(ie,"setOverlayVTC(uv0);")}
|
|
98
|
+
gl_Position = transformPosition(proj, view, position);`),E.main.add(`${V(ie,`if (getCombinedOverlayColor().a < ${F.float(I)}) discard;`)}`);break;case d.Shadow:case d.ShadowHighlight:case d.ShadowExcludeHighlight:case d.ViewshedShadow:i.include(u,r),n(i),s(i),k.main.add(F`gl_Position = transformPositionWithDepth(proj, view, position, nearFar, linearDepth);`),E.main.add(F`outputDepth(linearDepth);`);break;case d.Normal:ie&&i.include(z,r),R.add("vnormal","vec3"),W(k),J(),k.main.add(F`
|
|
99
|
+
${V(ie,"setOverlayVTC(uv0);")}
|
|
100
100
|
gl_Position = transformPosition(proj, view, position);
|
|
101
|
-
vnormal = normalize((viewNormal * vec4(getNormal(), 1.0)).xyz);`),
|
|
102
|
-
${
|
|
101
|
+
vnormal = normalize((viewNormal * vec4(getNormal(), 1.0)).xyz);`),E.main.add(F`
|
|
102
|
+
${V(ie,`if (getCombinedOverlayColor().a < ${F.float(I)}) discard;`)}
|
|
103
103
|
vec3 normal = normalize(vnormal);
|
|
104
104
|
if (gl_FrontFacing == false) {
|
|
105
105
|
normal = -normal;
|
|
106
106
|
}
|
|
107
|
-
fragColor = vec4(vec3(0.5) + 0.5 * normal, 1.0);`);break;case d.Highlight:oe&&i.include(z,r),k.main.add(
|
|
108
|
-
${
|
|
109
|
-
gl_Position = transformPosition(proj, view, position);`),i.include(
|
|
110
|
-
${
|
|
111
|
-
|
|
112
|
-
`)}if(
|
|
113
|
-
setOverlayVTC(uv0);`),
|
|
107
|
+
fragColor = vec4(vec3(0.5) + 0.5 * normal, 1.0);`);break;case d.Highlight:oe&&(i.include(z,r),i.include(h,r)),k.main.add(F`
|
|
108
|
+
${V(oe,"setOverlayVTC(uv0);")}
|
|
109
|
+
gl_Position = transformPosition(proj, view, position);`),i.include(w,r),E.main.add(F`
|
|
110
|
+
${V(oe,F`
|
|
111
|
+
calculateOcclusionAndOutputHighlight(getAllOverlayHighlightValuesEncoded());`,"calculateOcclusionAndOutputHighlight();")}
|
|
112
|
+
`)}if(K===d.ObjectAndLayerIdColor)if(oe)r.pbrMode=L.Disabled,i.include(z,r),r.pbrMode=Q,k.main.add(F`gl_Position = transformPosition(proj, view, position);
|
|
113
|
+
setOverlayVTC(uv0);`),E.main.add(F`fragColor = getOverlayColorTexel();`);else{const e=ee===t.Opaque;k.main.add(F`${V(e,"gl_Position = transformPosition(proj, view, position);")}`),E.main.add(F`fragColor = vec4(0.0);`)}return i}const q=r(),G=i(),R=Object.freeze(Object.defineProperty({__proto__:null,TerrainPassParameters:k,build:E},Symbol.toStringTag,{value:"Module"}));export{k as T,R as a,E as b};
|
package/chunks/aiServices.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.33/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{toSymbolId as r}from"../arcade/arcadeEnvironment.js";import t from"../arcade/Dictionary.js";import{ArcadeExecutionError as e,ExecutionErrorCodes as s}from"../arcade/executionError.js";import{
|
|
5
|
+
import{toSymbolId as r}from"../arcade/arcadeEnvironment.js";import t from"../arcade/Dictionary.js";import{ArcadeExecutionError as e,ExecutionErrorCodes as s}from"../arcade/executionError.js";import{D as o,m as n,M as a}from"./languageUtils.js";import i from"../core/Logger.js";import c from"../portal/Portal.js";import{translate as l}from"../rest/translate.js";import m from"../rest/support/TranslateContent.js";import u from"../rest/support/TranslateParameters.js";import p from"../rest/support/TranslateResult.js";import{isString as f,isArray as d}from"../support/guards.js";function w(w){"async"===w.mode&&(w.functions[r("TranslateText")]=function(r,g){return w.standardFunctionAsync(r,g,(async(r,w,g)=>{if(o(g,2,3,r,w),!f(g[0])&&!d(g[0])&&!n(g[0]))throw new e(r,s.InvalidParameter,w);const j=a(g[0]);if(!f(g[1])&&!d(g[1])&&!n(g[1]))throw new e(r,s.InvalidParameter,w);const v=a(g[1]);let y=null;if(g.length>=3){if(!f(g[2]))throw new e(r,s.InvalidParameter,w);y=g[2]}const S=r.services?.portal??c.getDefault(),T=new u({to:v,contents:j.map(((r,t)=>new m({key:String(t),text:r}))),from:y,portalUrl:S.url});if(null!=r.services?.translation){const e=await r.services.translation.translate(T);return e.success?t.convertJsonToArcade(e.results.map((r=>p.fromJSON(r).toJSON())),r.timeZone??"system",!0):new t({success:!1})}S.loaded||await S.load();const h=S.helperServices?.aiUtilityServices;if(null==h)return new t({success:!1});const P=h.url+h.translateUtility;try{const e=await l(P,T);return new t({success:!0,results:t.convertJsonToArcade(e?.map((r=>r.toJSON())),r.timeZone??"system",!0)})}catch(J){return i.getLogger("esri.arcade.functions.aiServices").error(J),new t({success:!1})}}))})}const g=Object.freeze(Object.defineProperty({__proto__:null,registerFunctions:w},Symbol.toStringTag,{value:"Module"}));export{g as A,w as r};
|
package/chunks/array.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.33/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{deepClone as n}from"../arcade/deepClone.js";import{ArcadeExecutionError as t,ExecutionErrorCodes as r}from"../arcade/executionError.js";import e from"../arcade/ImmutableArray.js";import{
|
|
5
|
+
import{deepClone as n}from"../arcade/deepClone.js";import{ArcadeExecutionError as t,ExecutionErrorCodes as r}from"../arcade/executionError.js";import e from"../arcade/ImmutableArray.js";import{D as o,K as i,m as u,t as a,v as c,A as s,i as l,N as f,f as d}from"./languageUtils.js";import{isPromiseLike as h}from"../core/promiseUtils.js";import{isArray as w,isBoolean as g,isInteger as m}from"../support/guards.js";function F(F){function p(n,o,i){if(n instanceof e)return n.toArray();if(w(n))return n;throw new t(o,r.InvalidParameter,i)}function y(n,t){const r=n.length,e=Math.floor(r/2);return 0===r?[]:1===r?[n[0]]:v(y(n.slice(0,e),t),y(n.slice(e,r),t),t)}function v(n,t,r){const e=[];for(;n.length>0||t.length>0;)if(n.length>0&&t.length>0){let o=r(n[0],t[0]);isNaN(o)&&(o=0),o<=0?(e.push(n[0]),n=n.slice(1)):(e.push(t[0]),t=t.slice(1))}else n.length>0?(e.push(n[0]),n=n.slice(1)):t.length>0&&(e.push(t[0]),t=t.slice(1));return e}async function P(n,t){const r=n.length,e=Math.floor(r/2);if(0===r)return[];if(1===r)return[n[0]];const o=[await P(n.slice(0,e),t),await P(n.slice(e,r),t)];return I(o[0],o[1],t,[])}async function I(n,t,r,e){const o=e;if(n.length>0||t.length>0){if(n.length>0&&t.length>0){let i=await r(n[0],t[0]);return isNaN(i)&&(i=1),i<=0?(o.push(n[0]),n=n.slice(1)):(o.push(t[0]),t=t.slice(1)),I(n,t,r,e)}return n.length>0?(o.push(n[0]),I(n=n.slice(1),t,r,e)):(o.push(t[0]),I(n,t=t.slice(1),r,e))}return e}function N(n,e,i,a){o(i,1,2,n,e);let s=i[0];if(u(s)&&(s=s.toArray()),!1===w(s))throw new t(n,r.InvalidParameter,e);if(i.length>1){if(!1===l(i[1]))throw new t(n,r.InvalidParameter,e);let o=s;const u=i[1].createFunction(n);return a?P(o,u):(o=y(o,((n,t)=>u(n,t))),o)}let h=s;if(0===h.length)return[];const g={};for(let t=0;t<h.length;t++){const n=f(h[t]);""!==n&&(g[n]=!0)}if(!0===g.Array||!0===g.Dictionary||!0===g.Feature||!0===g.Voxel||!0===g.Point||!0===g.Polygon||!0===g.Polyline||!0===g.Multipoint||!0===g.Extent||!0===g.Function)return h.slice();let m=0,F="";for(const t in g)m++,F=t;return h=m>1||"String"===F?y(h,((n,t)=>{if(null==n||n===c)return null==t||t===c?0:1;if(null==t||t===c)return-1;const r=d(n),e=d(t);return r<e?-1:r===e?0:1})):"Number"===F?y(h,((n,t)=>n-t)):"Boolean"===F?y(h,((n,t)=>n===t?0:t?-1:1)):"Date"===F?y(h,((n,t)=>n.toNumber()-t.toNumber())):h.slice(),h}F.functions.array=function(e,c){return F.standardFunction(e,c,((s,l,f)=>{if(o(f,0,2,e,c),0===f.length)return[];if(1===f.length&&null===f[0])return[];if(w(f[0])){if(2===f.length&&!1===g(f[1]))throw new t(e,r.InvalidParameter,c);return!0===i(f[1],!1)?n(f[0]):f[0].slice()}if(u(f[0])){if(2===f.length&&!1===g(f[1]))throw new t(e,r.InvalidParameter,c);return!0===i(f[1],!1)?n(f[0]):f[0].toArray().slice()}const d=a(f[0]);if(isNaN(d)||!1===m(d))throw new t(e,r.InvalidParameter,c);const h=i(f[1],null),F=new Array(d);return F.fill(h),F}))},F.functions.front=function(n,e){return F.standardFunction(n,e,((i,a,c)=>{if(o(c,1,1,n,e),u(c[0])){if(c[0].length()<=0)throw new t(n,r.OutOfBounds,e);return c[0].get(0)}if(w(c[0])){if(c[0].length<=0)throw new t(n,r.OutOfBounds,e);return c[0][0]}throw new t(n,r.InvalidParameter,e)}))},F.functions.back=function(n,e){return F.standardFunction(n,e,((i,a,c)=>{if(o(c,1,1,n,e),u(c[0])){if(c[0].length()<=0)throw new t(n,r.OutOfBounds,e);return c[0].get(c[0].length()-1)}if(w(c[0])){if(c[0].length<=0)throw new t(n,r.OutOfBounds,e);return c[0][c[0].length-1]}throw new t(n,r.InvalidParameter,e)}))},F.functions.push=function(n,e){return F.standardFunction(n,e,((i,u,a)=>{if(o(a,1,2,n,e),w(a[0]))return a[0][a[0].length]=a[1],a[0].length;throw new t(n,r.InvalidParameter,e)}))},F.functions.pop=function(n,e){return F.standardFunction(n,e,((i,u,a)=>{if(o(a,1,1,n,e),w(a[0])){if(a[0].length<=0)throw new t(n,r.OutOfBounds,e);const o=a[0][a[0].length-1];return a[0].length=a[0].length-1,o}throw new t(n,r.InvalidParameter,e)}))},F.functions.erase=function(n,e){return F.standardFunction(n,e,((i,u,s)=>{if(o(s,2,2,n,e),w(s[0])){let o=a(s[1]);if(isNaN(o)||!1===m(o))throw new t(n,r.InvalidParameter,e);const i=s[0];if(i.length<=0)throw new t(n,r.OutOfBounds,e);if(o<0&&(o=i.length+o),o<0)throw new t(n,r.OutOfBounds,e);if(o>=i.length)throw new t(n,r.OutOfBounds,e);return i.splice(o,1),c}throw new t(n,r.InvalidParameter,e)}))},F.functions.insert=function(n,e){return F.standardFunction(n,e,((i,u,s)=>{if(o(s,3,3,n,e),w(s[0])){const o=a(s[1]);if(isNaN(o)||!1===m(o))throw new t(n,r.InvalidParameter,e);const i=s[2],u=s[0];if(o>u.length)throw new t(n,r.OutOfBounds,e);if(o<0&&o<-1*u.length)throw new t(n,r.OutOfBounds,e);return o===u.length?(u[o]=i,c):(u.splice(o,0,i),c)}throw new t(n,r.InvalidParameter,e)}))},F.functions.resize=function(n,e){return F.standardFunction(n,e,((u,s,l)=>{if(o(l,2,3,n,e),w(l[0])){const o=a(l[1]);if(isNaN(o)||!1===m(o))throw new t(n,r.InvalidParameter,e);if(o<0)throw new t(n,r.InvalidParameter,e);const u=i(l[2],null),s=l[0];if(s.length>=o)return s.length=o,c;const f=s.length;s.length=o;for(let n=f;n<s.length;n++)s[n]=u;return c}throw new t(n,r.InvalidParameter,e)}))},F.functions.includes=function(n,e){return F.standardFunction(n,e,((i,a,c)=>{if(o(c,2,2,n,e),w(c[0])){const n=c[1];return!!c[0].some((t=>s(t,n)))}if(u(c[0])){const n=c[1];return!!c[0].toArray().some((t=>s(t,n)))}throw new t(n,r.InvalidParameter,e)}))},F.functions.slice=function(n,e){return F.standardFunction(n,e,((c,s,l)=>{if(o(l,1,3,n,e),w(l[0])){const o=a(i(l[1],0)),u=a(i(l[2],l[0].length));if(isNaN(o)||!1===m(o))throw new t(n,r.InvalidParameter,e);if(isNaN(u)||!1===m(u))throw new t(n,r.InvalidParameter,e);return l[0].slice(o,u)}if(u(l[0])){const o=l[0],u=a(i(l[1],0)),c=a(i(l[2],o.length()));if(isNaN(u)||!1===m(u))throw new t(n,r.InvalidParameter,e);if(isNaN(c)||!1===m(c))throw new t(n,r.InvalidParameter,e);return o.toArray().slice(u,c)}throw new t(n,r.InvalidParameter,e)}))},F.functions.splice=function(n,t){return F.standardFunction(n,t,((n,t,r)=>{const e=[];for(let o=0;o<r.length;o++)w(r[o])?e.push(...r[o]):u(r[o])?e.push(...r[o].toArray()):e.push(r[o]);return e}))},F.functions.top=function(n,e){return F.standardFunction(n,e,((i,c,s)=>{if(o(s,2,2,n,e),w(s[0]))return a(s[1])>=s[0].length?s[0].slice():s[0].slice(0,a(s[1]));if(u(s[0]))return a(s[1])>=s[0].length()?s[0].slice():s[0].slice(0,a(s[1]));throw new t(n,r.InvalidParameter,e)}))},F.functions.first=function(n,t){return F.standardFunction(n,t,((r,e,i)=>(o(i,1,1,n,t),w(i[0])?0===i[0].length?null:i[0][0]:u(i[0])?0===i[0].length()?null:i[0].get(0):null)))},"sync"===F.mode&&(F.functions.sort=function(n,t){return F.standardFunction(n,t,((t,r,e)=>N(n,r,e,!1)))},F.functions.any=function(n,t){return F.standardFunction(n,t,((t,r,e)=>{o(e,2,2,n,r);const i=e[1].createFunction(n),u=p(e[0],n,r);for(const n of u){const t=i(n);if(g(t)&&!0===t)return!0}return!1}))},F.functions.all=function(n,t){return F.standardFunction(n,t,((t,r,e)=>{o(e,2,2,n,r);const i=e[1].createFunction(n),u=p(e[0],n,r);for(const n of u){if(!0!==i(n))return!1}return!0}))},F.functions.none=function(n,t){return F.standardFunction(n,t,((t,r,e)=>{o(e,2,2,n,r);const i=e[1].createFunction(n),u=p(e[0],n,r);for(const n of u){if(!0===i(n))return!1}return!0}))},F.functions.reduce=function(n,t){return F.standardFunction(n,t,((t,r,e)=>{o(e,2,3,n,r);const i=e[1].createFunction(n),u=p(e[0],n,r);return 2===e.length?0===u.length?null:u.reduce(((n,t)=>{const r=i(n,t);return n=void 0!==r&&r!==c?r:null})):u.reduce(((n,t)=>{const r=i(n,t);return n=void 0!==r&&r!==c?r:null}),e[2])}))},F.functions.map=function(n,t){return F.standardFunction(n,t,((t,r,e)=>{o(e,2,2,n,r);const i=e[1].createFunction(n),u=p(e[0],n,r),a=[];for(const n of u){const t=i(n);void 0!==t&&t!==c?a.push(t):a.push(null)}return a}))},F.functions.filter=function(n,t){return F.standardFunction(n,t,((t,r,e)=>{o(e,2,2,n,r);const i=e[1].createFunction(n),u=p(e[0],n,r),a=[];for(const n of u){!0===i(n)&&a.push(n)}return a}))}),"async"===F.mode&&(F.functions.sort=function(n,t){return F.standardFunctionAsync(n,t,(async(t,r,e)=>N(n,r,e,!0)))},F.functions.any=function(n,t){return F.standardFunctionAsync(n,t,(async(t,r,e)=>{o(e,2,2,n,r);const i=e[1].createFunction(n),u=p(e[0],n,r);for(const n of u){const t=await i(n);let r=null;if(r=h(r)?await t:t,g(r)&&!0===r)return!0}return!1}))},F.functions.all=function(n,t){return F.standardFunctionAsync(n,t,(async(t,r,e)=>{o(e,2,2,n,r);const i=e[1].createFunction(n),u=p(e[0],n,r);for(const n of u){const t=await i(n);let r=null;if(r=h(r)?await t:t,!0!==r)return!1}return!0}))},F.functions.none=function(n,t){return F.standardFunctionAsync(n,t,(async(t,r,e)=>{o(e,2,2,n,r);const i=e[1].createFunction(n),u=p(e[0],n,r);for(const n of u){const t=await i(n);let r=null;if(r=h(r)?await t:t,!0===r)return!1}return!0}))},F.functions.filter=function(n,t){return F.standardFunctionAsync(n,t,(async(t,r,e)=>{o(e,2,2,n,r);const i=e[1].createFunction(n),u=p(e[0],n,r),a=[];for(const n of u){const t=await i(n);let r=null;r=h(r)?await t:t,!0===r&&a.push(n)}return a}))},F.functions.reduce=function(n,t){return F.standardFunctionAsync(n,t,(async(t,r,e)=>{o(e,2,3,n,r);const u=e[1].createFunction(n),a=p(e[0],n,r);let s;if(e.length>2){const n=i(e[2],null);s=a.reduce((async(n,t)=>{let r=await n;return void 0!==r&&r!==c||(r=null),u(r,t)}),Promise.resolve(n))}else{if(0===a.length)return null;s=a.reduce((async(n,t,r)=>{if(r<=1)return u(n,t);let e=await n;return void 0!==e&&e!==c||(e=null),u(e,t)}))}return s.then((n=>void 0!==n&&n!==c?n:null))}))},F.functions.map=function(n,t){return F.standardFunctionAsync(n,t,(async(t,r,e)=>{o(e,2,2,n,r);const i=e[1].createFunction(n),u=p(e[0],n,r),a=[];for(const n of u){const t=await i(n);let r=null;r=h(r)?await t:t,void 0!==r&&r!==c?a.push(r):a.push(null)}return a}))})}const p=Object.freeze(Object.defineProperty({__proto__:null,registerFunctions:F},Symbol.toStringTag,{value:"Module"}));export{p as A,F as r};
|
package/chunks/languageUtils.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.33/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import e from"../config.js";import{version as t}from"../kernel.js";import{ArcadeDate as n,createDateTimeZone as r}from"../arcade/ArcadeDate.js";import{ArcadeModule as i}from"../arcade/ArcadeModule.js";import{ArcadeExecutionError as o,ExecutionErrorCodes as a}from"../arcade/executionError.js";import{ArcadeFunction as u}from"../arcade/FunctionWrapper.js";import s from"../arcade/ImmutableArray.js";import l from"../arcade/ImmutablePathArray.js";import f from"../arcade/ImmutablePointArray.js";import{esriFieldToJson as c,layerGeometryEsriRestConstants as m}from"../arcade/featureset/support/shared.js";import{format as d,parse as y}from"../core/number.js";import{DateOnly as p}from"../core/sql/DateOnly.js";import{TimeOnly as g}from"../core/sql/TimeOnly.js";import h from"../geometry/Extent.js";import b from"../geometry/Geometry.js";import N from"../geometry/Multipoint.js";import S from"../geometry/Point.js";import Z from"../geometry/Polygon.js";import T from"../geometry/Polyline.js";import A from"../geometry/SpatialReference.js";import{isClockwise as k}from"../geometry/support/coordsUtils.js";import{fromJSON as j}from"../geometry/support/jsonUtils.js";import{getLocale as D}from"../intl/locale.js";import{isString as O,isNumber as C,isBoolean as x,isArray as F,isDate as w,isGraphic as J,isInteger as M}from"../support/guards.js";import{DateTime as R}from"luxon";class _{constructor(e){this.value=e}}class I{constructor(e){this.value=e}}const v={type:"VOID"},Y=Symbol("BREAK"),L=Symbol("CONTINUE");function P(e,t,n){return""===t||null==t||t===n||t===n?e:e=e.split(t).join(n)}function G(e){return e instanceof u}function V(e){return e instanceof i}function z(e){return!!O(e)||(!!C(e)||(!!ne(e)||(!!re(e)||(!!ie(e)||(!!x(e)||(null===e||(e===v||"number"==typeof e)))))))}function q(e,t){return void 0===e?t:e}function E(e){return null==e?"":F(e)||te(e)?"Array":ne(e)?"Date":ie(e)?"Time":re(e)?"DateOnly":O(e)?"String":x(e)?"Boolean":C(e)?"Number":"esri.arcade.Attachment"===e?.declaredClass?"Attachment":"esri.arcade.Portal"===e?.declaredClass?"Portal":"esri.arcade.Dictionary"===e?.declaredClass?"Dictionary":ee(e)?"KnowledgeGraph":e instanceof i?"Module":$(e)?"Feature":e instanceof S?"Point":e instanceof Z?"Polygon":e instanceof T?"Polyline":e instanceof N?"Multipoint":e instanceof h?"Extent":G(e)?"Function":K(e)?"FeatureSet":X(e)?"FeatureSetCollection":B(e)?"Voxel":e===v?"":"number"==typeof e&&isNaN(e)?"Number":"Unrecognized Type"}function U(e){return e===v}function H(e){return e instanceof b}function $(e){return"esri.arcade.Feature"===e?.arcadeDeclaredClass}function B(e){return"esri.arcade.Voxel"===e?.arcadeDeclaredClass}function K(e){return"esri.arcade.featureset.support.FeatureSet"===e?.declaredRootClass}function W(e){return"esri.arcade.Dictionary"===e?.declaredClass}function Q(e){return W(e)||$(e)||B(e)}function X(e){return"esri.arcade.featureSetCollection"===e?.declaredRootClass}function ee(e){return"esri.rest.knowledgeGraph.KnowledgeGraph"===e?.declaredClass}function te(e){return e instanceof s}function ne(e){return e instanceof n}function re(e){return e instanceof p}function ie(e){return e instanceof g}function oe(e){return null!=e&&"object"==typeof e}function ae(e,t,n,r,i){if(e.length<t||e.length>n)throw new o(r,a.WrongNumberOfParameters,i)}function ue(e){return e<0?-Math.round(-e):Math.round(e)}function se(e,t){return isNaN(e)||null==t||""===t?e.toString():(t=P(t,"‰",""),t=P(t,"¤",""),d(e,{pattern:t}))}function le(e,t){return null==t||""===t?e.toISOString(!0):e.toFormat(fe(t),{locale:D(),numberingSystem:"latn"})}function fe(e,t=!1){e=e.replaceAll(/LTS|LT|L{1,4}|l{1,4}/g,"[$&]");let n="";const r=/(\[[^[]*\])|(\\)?([Hh]mm(ss)?|Mo|M{1,4}|Do|DDDo|D{1,4}|d{2,4}|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|Z{1,5}|.)/g;for(const i of e.match(r)||[])switch(i){case"D":n+="d";break;case"DD":n+="dd";break;case"DDD":n+="o";break;case"d":n+="c";break;case"ddd":n+="ccc";break;case"dddd":n+="cccc";break;case"M":n+="L";break;case"MM":n+="LL";break;case"MMM":n+="LLL";break;case"MMMM":n+="LLLL";break;case"YY":n+="yy";break;case"Y":case"YYYY":n+="yyyy";break;case"Q":n+="q";break;case"Z":n+="Z";break;case"ZZ":n+="ZZ";break;case"ZZZ":n+="ZZZ";break;case"ZZZZ":n+=t?"[ZZZZ]":"ZZZZ";break;case"ZZZZZ":n+=t?"[ZZZZZ]":"ZZZZZ";break;case"S":n+="'S'";break;case"SS":n+="'SS'";break;case"SSS":n+="u";break;case"A":case"a":n+="a";break;case"m":case"mm":case"h":case"hh":case"H":case"HH":case"s":case"ss":case"X":case"x":n+=i;break;default:i.length>=2&&"["===i.slice(0,1)&&"]"===i.slice(-1)?n+=`'${i.slice(1,-1)}'`:n+=`'${i}'`}return n}function ce(e,t,n){switch(n){case">":return e>t;case"<":return e<t;case">=":return e>=t;case"<=":return e<=t}return!1}function me(e,t,r){if(null===e){if(null===t||t===v)return ce(null,null,r);if(C(t))return ce(0,t,r);if(O(t))return ce(0,Ne(t),r);if(x(t))return ce(0,Ne(t),r);if(ne(t))return ce(0,t.toNumber(),r);if(ie(t))return ce(e,t.toNumber(),r);if(re(t))return ce(e,t.toNumber(),r)}if(e===v){if(null===t||t===v)return ce(null,null,r);if(C(t))return ce(0,t,r);if(O(t))return ce(0,Ne(t),r);if(x(t))return ce(0,Ne(t),r);if(ne(t))return ce(0,t.toNumber(),r);if(ie(t))return ce(e,t.toNumber(),r);if(re(t))return ce(e,t.toNumber(),r)}else if(C(e)){if(C(t))return ce(e,t,r);if(x(t))return ce(e,Ne(t),r);if(null===t||t===v)return ce(e,0,r);if(O(t))return ce(e,Ne(t),r);if(ne(t))return ce(e,t.toNumber(),r);if(ie(t))return ce(e,t.toNumber(),r);if(re(t))return ce(e,t.toNumber(),r)}else if(O(e)){if(O(t))return ce(pe(e),pe(t),r);if(ne(t))return ce(Ne(e),t.toNumber(),r);if(ie(t))return ce(Ne(e),t.toNumber(),r);if(re(t))return ce(Ne(e),t.toNumber(),r);if(C(t))return ce(Ne(e),t,r);if(null===t||t===v)return ce(Ne(e),0,r);if(x(t))return ce(Ne(e),Ne(t),r)}else if(ne(e)){if(ne(t))return e.timeZone!==t.timeZone&&(e.isUnknownTimeZone?e=n.arcadeDateAndZoneToArcadeDate(e,t.timeZone):t.isUnknownTimeZone&&(t=n.arcadeDateAndZoneToArcadeDate(t,e.timeZone))),ce(e.toNumber(),t.toNumber(),r);if(null===t||t===v)return ce(e.toNumber(),0,r);if(C(t))return ce(e.toNumber(),t,r);if(x(t))return ce(e.toNumber(),Ne(t),r);if(O(t))return ce(e.toNumber(),Ne(t),r);if(ie(t))throw new o(null,a.CannotCompareDateAndTime,null);if(re(t))return ce(e.toNumber(),t.toNumber(),r)}else if(x(e)){if(x(t))return ce(e,t,r);if(C(t))return ce(Ne(e),Ne(t),r);if(ne(t))return ce(Ne(e),t.toNumber(),r);if(ie(t))return ce(Ne(e),t.toNumber(),r);if(re(t))return ce(Ne(e),t.toNumber(),r);if(null===t||t===v)return ce(Ne(e),0,r);if(O(t))return ce(Ne(e),Ne(t),r)}else if(re(e)){if(ne(t))return ce(e.toNumber(),t.toNumber(),r);if(null===t||t===v)return ce(e.toNumber(),0,r);if(C(t))return ce(e.toNumber(),t,r);if(x(t))return ce(e.toNumber(),Ne(t),r);if(O(t))return ce(e.toNumber(),Ne(t),r);if(ie(t))throw new o(null,a.CannotCompareDateAndTime,null);if(re(t))return ce(e.toNumber(),t.toNumber(),r)}else if(ie(e)){if(ne(t))throw new o(null,a.CannotCompareDateAndTime,null);if(null===t||t===v)return ce(e.toNumber(),0,r);if(C(t))return ce(e.toNumber(),t,r);if(x(t))return ce(e.toNumber(),Ne(t),r);if(O(t))return ce(e.toNumber(),Ne(t),r);if(ie(t))return ce(e.toNumber(),t.toNumber(),r);if(re(t))throw new o(null,a.CannotCompareDateAndTime,null)}return!!de(e,t)&&("<="===r||">="===r)}function de(e,t){if(e===t)return!0;if(null===e&&t===v||null===t&&e===v)return!0;if(ne(e)&&ne(t))return e.equals(t);if(ie(e)&&ie(t))return e.equals(t);if(re(e)&&re(t))return e.equals(t);if(e instanceof l)return e.equalityTest(t);if(e instanceof f)return e.equalityTest(t);if(e instanceof S&&t instanceof S){const n=e.cache._arcadeCacheId,r=t.cache._arcadeCacheId;if(null!=n)return n===r}if(oe(e)&&oe(t)){if(e._arcadeCacheId===t._arcadeCacheId&&void 0!==e._arcadeCacheId&&null!==e._arcadeCacheId)return!0;if(e._underlyingGraphic===t._underlyingGraphic&&void 0!==e._underlyingGraphic&&null!==e._underlyingGraphic)return!0}return!1}function ye(e,{useNumbersForDates:t}){let n="";for(const r in e){""!==n&&(n+=",");const i=e[r];null==i?n+=JSON.stringify(r)+":null":x(i)||C(i)||O(i)?n+=JSON.stringify(r)+":"+JSON.stringify(i):H(i)?n+=JSON.stringify(r)+":"+he(i):ie(i)||re(i)?n+=`${JSON.stringify(r)}:${JSON.stringify(i.toString())}`:te(i)||Array.isArray(i)?n+=JSON.stringify(r)+":"+he(i,null,t):ne(i)?n+=t?JSON.stringify(r)+":"+JSON.stringify(i.getTime()):JSON.stringify(r)+":"+i.stringify():null!==i&&"object"==typeof i&&"castToText"in i&&(n+=JSON.stringify(r)+":"+i.castToText(t))}return"{"+n+"}"}function pe(e,t){if(O(e))return e;if(null===e)return"";if(C(e))return se(e,t);if(x(e))return e.toString();if(ne(e))return le(e,t);if(ie(e))return e.toFormat(t);if(re(e))return e.toFormat(t);if(e instanceof b)return JSON.stringify(e.toJSON());if(F(e)){const t=[];for(let n=0;n<e.length;n++)t[n]=be(e[n]);return"["+t.join(",")+"]"}if(e instanceof s){const t=[];for(let n=0;n<e.length();n++)t[n]=be(e.get(n));return"["+t.join(",")+"]"}return null!==e&&"object"==typeof e&&"castToText"in e?e.castToText():G(e)?"object, Function":e===v?"":V(e)?"object, Module":""}function ge(e){const t=[];if(e instanceof s){for(let n=0;n<e.length();n++)t[n]=Ne(e.get(n));return t}if(!F(e))return null;for(let n=0;n<e.length;n++)t[n]=Ne(e[n]);return t}function he(e,t,n=!1){if(O(e))return e;if(null===e)return"";if(C(e))return se(e,t);if(x(e))return e.toString();if(ne(e))return le(e,t);if(ie(e))return e.toFormat(t);if(re(e))return e.toFormat(t);if(e instanceof b)return e instanceof h?'{"xmin":'+e.xmin.toString()+',"ymin":'+e.ymin.toString()+","+(e.hasZ?'"zmin":'+e.zmin.toString()+",":"")+(e.hasM?'"mmin":'+e.mmin.toString()+",":"")+'"xmax":'+e.xmax.toString()+',"ymax":'+e.ymax.toString()+","+(e.hasZ?'"zmax":'+e.zmax.toString()+",":"")+(e.hasM?'"mmax":'+e.mmax.toString()+",":"")+'"spatialReference":'+Fe(e.spatialReference)+"}":Fe(e.toJSON(),((e,t)=>e.key===t.key?0:"spatialReference"===e.key?1:"spatialReference"===t.key||e.key<t.key?-1:e.key>t.key?1:0));if(F(e)){const t=[];for(let r=0;r<e.length;r++)t[r]=be(e[r],n);return"["+t.join(",")+"]"}if(e instanceof s){const t=[];for(let r=0;r<e.length();r++)t[r]=be(e.get(r),n);return"["+t.join(",")+"]"}return null!==e&&"object"==typeof e&&"castToText"in e?e.castToText(n):G(e)?"object, Function":e===v?"":V(e)?"object, Module":""}function be(e,t=!1){if(null===e)return"null";if(x(e)||C(e)||O(e))return JSON.stringify(e);if(e instanceof b)return he(e,null,t);if(e instanceof s)return he(e,null,t);if(Array.isArray(e))return he(e,null,t);if(ne(e))return t?JSON.stringify(e.getTime()):JSON.stringify(le(e,""));if(ie(e))return JSON.stringify(e.toString());if(re(e))return JSON.stringify(e.toString());if(null!==e&&"object"==typeof e){if("castToText"in e)return e.castToText(t)}else if(e===v)return"null";return"null"}function Ne(e,t){return C(e)?e:null===e||""===e?0:ne(e)||re(e)||ie(e)?NaN:x(e)?e?1:0:F(e)||""===e||void 0===e?NaN:void 0!==t&&O(e)?(t=P(t,"‰",""),t=P(t,"¤",""),y(e,{pattern:t})):e===v?0:Number(e)}function Se(e,t){if(ne(e))return e;if(O(e)){const r=Ze(e,t);if(r)return n.dateTimeToArcadeDate(r)}return null}function Ze(e,t){const n=/ (\d\d)/,i=r(t);let o=R.fromISO(e,{zone:i});return o.isValid||n.test(e)&&(e=e.replace(n,"T$1"),o=R.fromISO(e,{zone:t}),o.isValid)?o:null}function Te(e){return x(e)?e:O(e)?"true"===(e=e.toLowerCase()):!!C(e)&&(0!==e&&!isNaN(e))}function Ae(e,t){const n=JSON.parse(e);return n&&!n.spatialReference&&(n.spatialReference=t),j(n)}function ke(e,t){return null==e?null:(null!==e.spatialReference&&void 0!==e.spatialReference||(e.spatialReference=t),e)}function je(e){if(null===e)return null;if(e instanceof S)return"NaN"===e.x||null===e.x||isNaN(e.x)?null:e;if(e instanceof Z){if(0===e.rings.length)return null;for(const t of e.rings)if(t.length>0)return e;return null}if(e instanceof T){if(0===e.paths.length)return null;for(const t of e.paths)if(t.length>0)return e;return null}return e instanceof N?0===e.points.length?null:e:e instanceof h?"NaN"===e.xmin||null===e.xmin||isNaN(e.xmin)?null:e:null}function De(e,t){if(!e)return t;if(!e.domain)return t;let n=null,r=null;if(ne(t))n=t.toNumber();else if(re(t))n=t.toString();else if(ie(t))n=t.toStorageString();else if("string"===e.field.type||"esriFieldTypeString"===e.field.type)n=pe(t);else{if(null==t)return null;if(""===t)return t;n=Ne(t)}for(let i=0;i<e.domain.codedValues.length;i++){const t=e.domain.codedValues[i];t.code===n&&(r=t)}return null===r?pe(t):r.name}function Oe(e,t){if(!e)return t;if(!e.domain)return t;let n=null;const r=pe(t);for(let i=0;i<e.domain.codedValues.length;i++){const t=e.domain.codedValues[i];t.name===r&&(n=t)}return null===n?t:n.code}function Ce(e,t,n=null,r=null){if(!t)return null;if(!t.fields)return null;let i,u,s=null;for(let o=0;o<t.fields.length;o++){const n=t.fields[o];n.name.toLowerCase()===e.toString().toLowerCase()&&(s=n)}if(null===s)throw new o(null,a.FieldNotFound,null,{key:e});let l=t.typeIdField,f="id",c=t.types;if(t.subtypeField&&(l=t.subtypeField,f="code",c=t.subtypes??[]),null===r&&n&&l)r=n.hasField(l)?n.field(l):null;else if(l&&null!==r){let e=!1;for(const t of c||[])if(r===t[f]){e=!0;break}if(!e)for(const t of c||[])if(r===t.name){r=t[f],e=!0;break}e||(r=null,n&&l&&(r=n.hasField(l)?n.field(l):null))}return null!=r&&c.some((e=>e[f]===r&&(i=e.domains?.[s.name],i&&"inherited"===i.type&&(i=xe(s.name,t),u=!0),!0))),u||i||(i=xe(e,t)),{field:s,domain:i}}function xe(e,t){let n;return t.fields.some((t=>(t.name.toLowerCase()===e.toLowerCase()&&(n=t.domain),!!n))),n}function Fe(e,t){t||(t={}),"function"==typeof t&&(t={cmp:t});const n="boolean"==typeof t.cycles&&t.cycles,r=t.cmp&&(i=t.cmp,function(e){return function(t,n){const r={key:t,value:e[t]},o={key:n,value:e[n]};return i(r,o)}});var i;const o=[];return function e(t){if(t?.toJSON&&"function"==typeof t.toJSON&&(t=t.toJSON()),void 0===t)return;if("number"==typeof t)return isFinite(t)?""+t:"null";if("object"!=typeof t)return JSON.stringify(t);let i,a;if(Array.isArray(t)){for(a="[",i=0;i<t.length;i++)i&&(a+=","),a+=e(t[i])||"null";return a+"]"}if(null===t)return"null";if(o.includes(t)){if(n)return JSON.stringify("__cycle__");throw new TypeError("Converting circular structure to JSON")}const u=o.push(t)-1,s=Object.keys(t).sort(r?.(t));for(a="",i=0;i<s.length;i++){const n=s[i],r=e(t[n]);r&&(a&&(a+=","),a+=JSON.stringify(n)+":"+r)}return o.splice(u,1),"{"+a+"}"}(e)}function we(e){if(null===e)return null;const t=[];for(const n of e)$(n)?t.push(n.geometry()):t.push(n);return t}function Je(e,t){if(!(t instanceof S))throw new o(null,a.InvalidParameter,null);e.push(t.hasZ?t.hasM?[t.x,t.y,t.z,t.m]:[t.x,t.y,t.z]:[t.x,t.y])}function Me(e,t){if(F(e)||te(e)){let n=!1,r=!1,i=[],u=t;if(F(e)){for(const t of e)Je(i,t);i.length>0&&(u=e[0].spatialReference,n=e[0].hasZ,r=e[0].hasM)}else if(e instanceof f)i=e._elements,i.length>0&&(n=e._hasZ,r=e._hasM,u=e.get(0).spatialReference);else{if(!te(e))throw new o(null,a.InvalidParameter,null);for(const t of e.toArray())Je(i,t);i.length>0&&(u=e.get(0).spatialReference,n=!0===e.get(0).hasZ,r=!0===e.get(0).hasM)}if(0===i.length)return null;return k(i)||(i=i.slice().reverse()),new Z({rings:[i],spatialReference:u,hasZ:n,hasM:r})}return e}function Re(e,t){if(F(e)||te(e)){let n=!1,r=!1,i=[],o=t;if(F(e)){for(const t of e)Je(i,t);i.length>0&&(o=e[0].spatialReference,n=!0===e[0].hasZ,r=!0===e[0].hasM)}else if(e instanceof f)i=e._elements,i.length>0&&(n=e._hasZ,r=e._hasM,o=e.get(0).spatialReference);else if(te(e)){for(const t of e.toArray())Je(i,t);i.length>0&&(o=e.get(0).spatialReference,n=!0===e.get(0).hasZ,r=!0===e.get(0).hasM)}return 0===i.length?null:new T({paths:[i],spatialReference:o,hasZ:n,hasM:r})}return e}function _e(e,t){if(F(e)||te(e)){let n=!1,r=!1,i=[],o=t;if(F(e)){for(const t of e)Je(i,t);i.length>0&&(o=e[0].spatialReference,n=!0===e[0].hasZ,r=!0===e[0].hasM)}else if(e instanceof f)i=e._elements,i.length>0&&(n=e._hasZ,r=e._hasM,o=e.get(0).spatialReference);else if(te(e)){for(const t of e.toArray())Je(i,t);i.length>0&&(o=e.get(0).spatialReference,n=!0===e.get(0).hasZ,r=!0===e.get(0).hasM)}return 0===i.length?null:new N({points:i,spatialReference:o,hasZ:n,hasM:r})}return e}function Ie(e,t=!0){if(null==e)return[];if(F(e)){const n=[];for(const r of e){const e=pe(r);(t||""!==e)&&n.push(e)}return n}if(te(e)){const n=[];for(let r=0;r<e.length();r++){const i=pe(e.get(r));(t||""!==i)&&n.push(i)}return n}if(z(e)){const n=pe(e);if(t||""!==n)return[n]}return[]}let ve=0;function Ye(e){return ve++,ve%100==0?(ve=0,new Promise((t=>{setTimeout((()=>{t(e)}),0)}))):e}function Le(e,t,n){switch(n){case"&":return e&t;case"|":return e|t;case"^":return e^t;case"<<":return e<<t;case">>":return e>>t;case">>>":return e>>>t}}function Pe(e,t=null){return null==e?null:x(e)||C(e)||O(e)?e:e instanceof b?!0===t?.keepGeometryType?e:e.toJSON():e instanceof s?e.toArray().map((e=>Pe(e,t))):Array.isArray(e)?e.map((e=>Pe(e,t))):w(e)?e:ne(e)?e.toJSDate():ie(e)?e.toString():re(e)?e.toJSDate():null!==e&&"object"==typeof e&&void 0!==e.castAsJson?e.castAsJson(t):null}async function Ge(e,t,n,r,i){const o=await Ve(e,t,n);i[r]=o}async function Ve(e,t=null,n=null){if(e instanceof s&&(e=e.toArray()),null==e)return null;if(z(e)||e instanceof b||w(e)||ne(e))return Pe(e,n);if(Array.isArray(e)){const r=[],i=[];for(const o of e)null===o||z(o)||o instanceof b||w(o)||ne(o)?i.push(Pe(o,n)):(i.push(null),r.push(Ge(o,t,n,i.length-1,i)));return r.length>0&&await Promise.all(r),i}return null!==e&&"object"==typeof e&&void 0!==e.castAsJsonAsync?e.castAsJsonAsync(t,n):null}function ze(e){return qe(e)?e.parent:e}function qe(e){return e&&"declaredClass"in e&&"esri.layers.support.SubtypeSublayer"===e.declaredClass}function Ee(e){return e&&"declaredClass"in e&&"esri.layers.SubtypeGroupLayer"===e.declaredClass}function Ue(e,t,n){const r=ze(e.fullSchema());if(null===r)return null;if(!r.fields)return null;return Ce(t,r,e,n)}function He(e){const t=ze(e.fullSchema());return null===t?null:t.fields?t.subtypeField?{subtypeField:t.subtypeField,subtypes:t.subtypes?t.subtypes.map((e=>({name:e.name,code:e.code}))):[]}:t.typeIdField?{subtypeField:t.typeIdField,subtypes:t.types?t.types.map((e=>({name:e.name,code:e.id}))):[]}:null:null}function $e(e,t,n,r){const i=ze(e.fullSchema());if(null===i)return null;if(!i.fields)return null;const o=Ce(t,i,e,r);if(void 0===n)try{n=e.field(t)}catch(a){return null}return De(o,n)}function Be(e,t,n,r){const i=ze(e.fullSchema());if(null===i)return null;if(!i.fields)return null;if(void 0===n){try{n=e.field(t)}catch(o){return null}return n}return Oe(Ce(t,i,e,r),n)}function Ke(e){return e?.timeZone??"system"}function We(e){const t=ze(e.fullSchema());if(null===t)return null;if(!t.fields)return null;const n=[];for(const r of t.fields)n.push(c(r));return{objectIdField:t.objectIdField,globalIdField:t.globalIdField??"",geometryType:void 0===m[t.geometryType]?"":m[t.geometryType],fields:n}}function Qe(r,i){const o=n.systemTimeZoneCanonicalName;return"system"===r&&(r=o),{version:Xe,engineVersion:t,timeZone:r,userTimeZone:o,spatialReference:i instanceof A?i.toJSON():i,application:e.applicationName??"",engine:"web",locale:D()}}const Xe="1.30",et=Object.freeze(Object.defineProperty({__proto__:null,ImplicitResult:I,ReturnResult:_,absRound:ue,arcadeVersion:Xe,autoCastArrayOfPointsToMultiPoint:_e,autoCastArrayOfPointsToPolygon:Me,autoCastArrayOfPointsToPolyline:Re,autoCastFeatureToGeometry:we,binaryOperator:Le,breakResult:Y,castAsJson:Pe,castAsJsonAsync:Ve,castRecordToText:ye,continueResult:L,defaultExecutingContext:Qe,defaultTimeZone:Ke,defaultUndefined:q,equalityTest:de,featureDomainCodeLookup:Be,featureDomainValueLookup:$e,featureFullDomain:Ue,featureSchema:We,featureSubtypes:He,fixNullGeometry:je,fixSpatialReference:ke,formatDate:le,formatNumber:se,getDomain:Ce,getDomainCode:Oe,getDomainValue:De,getType:E,greaterThanLessThan:me,isArray:F,isBoolean:x,isDate:ne,isDateOnly:re,isDictionary:W,isDictionaryLike:Q,isFeature:$,isFeatureSet:K,isFeatureSetCollection:X,isFunctionParameter:G,isGeometry:H,isGraphic:J,isImmutableArray:te,isInteger:M,isJsDate:w,isKnowledgeGraph:ee,isModule:V,isNumber:C,isObject:oe,isSimpleType:z,isString:O,isSubtypeGrouplayer:Ee,isSubtypeSublayer:qe,isTime:ie,isVoid:U,isVoxel:B,multiReplace:P,parseGeometryFromJson:Ae,pcCheck:ae,stableStringify:Fe,standardiseDateFormat:fe,tick:Ye,toBoolean:Te,toDate:Se,toNumber:Ne,toNumberArray:ge,toString:pe,toStringArray:Ie,toStringExplicit:he,voidOperation:v},Symbol.toStringTag,{value:"Module"}));export{qe as $,de as A,Le as B,ae as C,U as D,ke as E,we as F,Me as G,Re as H,I,_e as J,q as K,Ke as L,Ie as M,E as N,fe as O,ue as P,Ue as Q,_ as R,Be as S,$e as T,We as U,He as V,je as W,B as X,P as Y,Qe as Z,ge as _,Pe as a,Ye as a0,Ce as a1,De as a2,Oe as a3,V as a4,oe as a5,se as a6,le as a7,Ae as a8,Fe as a9,Ee as aa,Xe as ab,Ve as b,ye as c,z as d,Te as e,pe as f,ne as g,Se as h,G as i,re as j,ie as k,H as l,te as m,$ as n,X as o,K as p,W as q,ee as r,he as s,Ne as t,et as u,v,Y as w,L as x,Q as y,me as z};
|
|
5
|
+
import e from"../config.js";import{version as t}from"../kernel.js";import{ArcadeDate as n,createDateTimeZone as r}from"../arcade/ArcadeDate.js";import{ArcadeModule as i}from"../arcade/ArcadeModule.js";import{ArcadeExecutionError as o,ExecutionErrorCodes as a}from"../arcade/executionError.js";import{ArcadeFunction as u}from"../arcade/FunctionWrapper.js";import s from"../arcade/ImmutableArray.js";import l from"../arcade/ImmutablePathArray.js";import f from"../arcade/ImmutablePointArray.js";import{esriFieldToJson as c,layerGeometryEsriRestConstants as m}from"../arcade/featureset/support/shared.js";import{format as d,parse as y}from"../core/number.js";import{DateOnly as p}from"../core/sql/DateOnly.js";import{TimeOnly as g}from"../core/sql/TimeOnly.js";import h from"../geometry/Extent.js";import b from"../geometry/Geometry.js";import N from"../geometry/Multipoint.js";import S from"../geometry/Point.js";import Z from"../geometry/Polygon.js";import T from"../geometry/Polyline.js";import A from"../geometry/SpatialReference.js";import{isClockwise as k}from"../geometry/support/coordsUtils.js";import{fromJSON as j}from"../geometry/support/jsonUtils.js";import{getLocale as D}from"../intl/locale.js";import{isString as O,isNumber as C,isBoolean as x,isArray as F,isDate as w,isGraphic as J,isInteger as M}from"../support/guards.js";import{DateTime as R}from"luxon";class _{constructor(e){this.value=e}}class I{constructor(e){this.value=e}}const v={type:"VOID"},Y=Symbol("BREAK"),L=Symbol("CONTINUE");function P(e,t,n){return""===t||null==t||t===n||t===n?e:e=e.split(t).join(n)}function G(e){return e instanceof u}function V(e){return e instanceof i}function z(e){return!!O(e)||(!!C(e)||(!!ne(e)||(!!re(e)||(!!ie(e)||(!!x(e)||(null===e||(e===v||"number"==typeof e)))))))}function q(e,t){return void 0===e?t:e}function E(e){return null==e?"":F(e)||te(e)?"Array":ne(e)?"Date":ie(e)?"Time":re(e)?"DateOnly":O(e)?"String":x(e)?"Boolean":C(e)?"Number":"esri.arcade.Attachment"===e?.declaredClass?"Attachment":"esri.arcade.Portal"===e?.declaredClass?"Portal":"esri.arcade.Dictionary"===e?.declaredClass?"Dictionary":ee(e)?"KnowledgeGraph":e instanceof i?"Module":$(e)?"Feature":e instanceof S?"Point":e instanceof Z?"Polygon":e instanceof T?"Polyline":e instanceof N?"Multipoint":e instanceof h?"Extent":G(e)?"Function":K(e)?"FeatureSet":X(e)?"FeatureSetCollection":B(e)?"Voxel":e===v?"":"number"==typeof e&&isNaN(e)?"Number":"Unrecognized Type"}function U(e){return e===v}function H(e){return e instanceof b}function $(e){return"esri.arcade.Feature"===e?.arcadeDeclaredClass}function B(e){return"esri.arcade.Voxel"===e?.arcadeDeclaredClass}function K(e){return"esri.arcade.featureset.support.FeatureSet"===e?.declaredRootClass}function W(e){return"esri.arcade.Dictionary"===e?.declaredClass}function Q(e){return W(e)||$(e)||B(e)}function X(e){return"esri.arcade.featureSetCollection"===e?.declaredRootClass}function ee(e){return"esri.rest.knowledgeGraph.KnowledgeGraph"===e?.declaredClass}function te(e){return e instanceof s}function ne(e){return e instanceof n}function re(e){return e instanceof p}function ie(e){return e instanceof g}function oe(e){return null!=e&&"object"==typeof e}function ae(e,t,n,r,i){if(e.length<t||e.length>n)throw new o(r,a.WrongNumberOfParameters,i)}function ue(e){return e<0?-Math.round(-e):Math.round(e)}function se(e,t){return isNaN(e)||null==t||""===t?e.toString():(t=P(t,"‰",""),t=P(t,"¤",""),d(e,{pattern:t}))}function le(e,t){return null==t||""===t?e.toISOString(!0):e.toFormat(fe(t),{locale:D(),numberingSystem:"latn"})}function fe(e,t=!1){e=e.replaceAll(/LTS|LT|L{1,4}|l{1,4}/g,"[$&]");let n="";const r=/(\[[^[]*\])|(\\)?([Hh]mm(ss)?|Mo|M{1,4}|Do|DDDo|D{1,4}|d{2,4}|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|Z{1,5}|.)/g;for(const i of e.match(r)||[])switch(i){case"D":n+="d";break;case"DD":n+="dd";break;case"DDD":n+="o";break;case"d":n+="c";break;case"ddd":n+="ccc";break;case"dddd":n+="cccc";break;case"M":n+="L";break;case"MM":n+="LL";break;case"MMM":n+="LLL";break;case"MMMM":n+="LLLL";break;case"YY":n+="yy";break;case"Y":case"YYYY":n+="yyyy";break;case"Q":n+="q";break;case"Z":n+="Z";break;case"ZZ":n+="ZZ";break;case"ZZZ":n+="ZZZ";break;case"ZZZZ":n+=t?"[ZZZZ]":"ZZZZ";break;case"ZZZZZ":n+=t?"[ZZZZZ]":"ZZZZZ";break;case"S":n+="'S'";break;case"SS":n+="'SS'";break;case"SSS":n+="u";break;case"A":case"a":n+="a";break;case"m":case"mm":case"h":case"hh":case"H":case"HH":case"s":case"ss":case"X":case"x":n+=i;break;default:i.length>=2&&"["===i.slice(0,1)&&"]"===i.slice(-1)?n+=`'${i.slice(1,-1)}'`:n+=`'${i}'`}return n}function ce(e,t,n){switch(n){case">":return e>t;case"<":return e<t;case">=":return e>=t;case"<=":return e<=t}return!1}function me(e,t,r){if(null===e){if(null===t||t===v)return ce(null,null,r);if(C(t))return ce(0,t,r);if(O(t))return ce(0,Ne(t),r);if(x(t))return ce(0,Ne(t),r);if(ne(t))return ce(0,t.toNumber(),r);if(ie(t))return ce(e,t.toNumber(),r);if(re(t))return ce(e,t.toNumber(),r)}if(e===v){if(null===t||t===v)return ce(null,null,r);if(C(t))return ce(0,t,r);if(O(t))return ce(0,Ne(t),r);if(x(t))return ce(0,Ne(t),r);if(ne(t))return ce(0,t.toNumber(),r);if(ie(t))return ce(e,t.toNumber(),r);if(re(t))return ce(e,t.toNumber(),r)}else if(C(e)){if(C(t))return ce(e,t,r);if(x(t))return ce(e,Ne(t),r);if(null===t||t===v)return ce(e,0,r);if(O(t))return ce(e,Ne(t),r);if(ne(t))return ce(e,t.toNumber(),r);if(ie(t))return ce(e,t.toNumber(),r);if(re(t))return ce(e,t.toNumber(),r)}else if(O(e)){if(O(t))return ce(pe(e),pe(t),r);if(ne(t))return ce(Ne(e),t.toNumber(),r);if(ie(t))return ce(Ne(e),t.toNumber(),r);if(re(t))return ce(Ne(e),t.toNumber(),r);if(C(t))return ce(Ne(e),t,r);if(null===t||t===v)return ce(Ne(e),0,r);if(x(t))return ce(Ne(e),Ne(t),r)}else if(ne(e)){if(ne(t))return e.timeZone!==t.timeZone&&(e.isUnknownTimeZone?e=n.arcadeDateAndZoneToArcadeDate(e,t.timeZone):t.isUnknownTimeZone&&(t=n.arcadeDateAndZoneToArcadeDate(t,e.timeZone))),ce(e.toNumber(),t.toNumber(),r);if(null===t||t===v)return ce(e.toNumber(),0,r);if(C(t))return ce(e.toNumber(),t,r);if(x(t))return ce(e.toNumber(),Ne(t),r);if(O(t))return ce(e.toNumber(),Ne(t),r);if(ie(t))throw new o(null,a.CannotCompareDateAndTime,null);if(re(t))return ce(e.toNumber(),t.toNumber(),r)}else if(x(e)){if(x(t))return ce(e,t,r);if(C(t))return ce(Ne(e),Ne(t),r);if(ne(t))return ce(Ne(e),t.toNumber(),r);if(ie(t))return ce(Ne(e),t.toNumber(),r);if(re(t))return ce(Ne(e),t.toNumber(),r);if(null===t||t===v)return ce(Ne(e),0,r);if(O(t))return ce(Ne(e),Ne(t),r)}else if(re(e)){if(ne(t))return ce(e.toNumber(),t.toNumber(),r);if(null===t||t===v)return ce(e.toNumber(),0,r);if(C(t))return ce(e.toNumber(),t,r);if(x(t))return ce(e.toNumber(),Ne(t),r);if(O(t))return ce(e.toNumber(),Ne(t),r);if(ie(t))throw new o(null,a.CannotCompareDateAndTime,null);if(re(t))return ce(e.toNumber(),t.toNumber(),r)}else if(ie(e)){if(ne(t))throw new o(null,a.CannotCompareDateAndTime,null);if(null===t||t===v)return ce(e.toNumber(),0,r);if(C(t))return ce(e.toNumber(),t,r);if(x(t))return ce(e.toNumber(),Ne(t),r);if(O(t))return ce(e.toNumber(),Ne(t),r);if(ie(t))return ce(e.toNumber(),t.toNumber(),r);if(re(t))throw new o(null,a.CannotCompareDateAndTime,null)}return!!de(e,t)&&("<="===r||">="===r)}function de(e,t){if(e===t)return!0;if(null===e&&t===v||null===t&&e===v)return!0;if(ne(e)&&ne(t))return e.equals(t);if(ie(e)&&ie(t))return e.equals(t);if(re(e)&&re(t))return e.equals(t);if(e instanceof l)return e.equalityTest(t);if(e instanceof f)return e.equalityTest(t);if(e instanceof S&&t instanceof S){const n=e.cache._arcadeCacheId,r=t.cache._arcadeCacheId;if(null!=n)return n===r}if(oe(e)&&oe(t)){if(e._arcadeCacheId===t._arcadeCacheId&&void 0!==e._arcadeCacheId&&null!==e._arcadeCacheId)return!0;if(e._underlyingGraphic===t._underlyingGraphic&&void 0!==e._underlyingGraphic&&null!==e._underlyingGraphic)return!0}return!1}function ye(e,{useNumbersForDates:t}){let n="";for(const r in e){""!==n&&(n+=",");const i=e[r];null==i?n+=JSON.stringify(r)+":null":x(i)||C(i)||O(i)?n+=JSON.stringify(r)+":"+JSON.stringify(i):H(i)?n+=JSON.stringify(r)+":"+he(i):ie(i)||re(i)?n+=`${JSON.stringify(r)}:${JSON.stringify(i.toString())}`:te(i)||Array.isArray(i)?n+=JSON.stringify(r)+":"+he(i,null,t):ne(i)?n+=t?JSON.stringify(r)+":"+JSON.stringify(i.getTime()):JSON.stringify(r)+":"+i.stringify():null!==i&&"object"==typeof i&&"castToText"in i&&(n+=JSON.stringify(r)+":"+i.castToText(t))}return"{"+n+"}"}function pe(e,t){if(O(e))return e;if(null===e)return"";if(C(e))return se(e,t);if(x(e))return e.toString();if(ne(e))return le(e,t);if(ie(e))return e.toFormat(t);if(re(e))return e.toFormat(t);if(e instanceof b)return JSON.stringify(e.toJSON());if(F(e)){const t=[];for(let n=0;n<e.length;n++)t[n]=be(e[n]);return"["+t.join(",")+"]"}if(e instanceof s){const t=[];for(let n=0;n<e.length();n++)t[n]=be(e.get(n));return"["+t.join(",")+"]"}return null!==e&&"object"==typeof e&&"castToText"in e?e.castToText():G(e)?"object, Function":e===v?"":V(e)?"object, Module":""}function ge(e){const t=[];if(e instanceof s){for(let n=0;n<e.length();n++)t[n]=Ne(e.get(n));return t}if(!F(e))return null;for(let n=0;n<e.length;n++)t[n]=Ne(e[n]);return t}function he(e,t,n=!1){if(O(e))return e;if(null===e)return"";if(C(e))return se(e,t);if(x(e))return e.toString();if(ne(e))return le(e,t);if(ie(e))return e.toFormat(t);if(re(e))return e.toFormat(t);if(e instanceof b)return e instanceof h?'{"xmin":'+e.xmin.toString()+',"ymin":'+e.ymin.toString()+","+(e.hasZ?'"zmin":'+e.zmin.toString()+",":"")+(e.hasM?'"mmin":'+e.mmin.toString()+",":"")+'"xmax":'+e.xmax.toString()+',"ymax":'+e.ymax.toString()+","+(e.hasZ?'"zmax":'+e.zmax.toString()+",":"")+(e.hasM?'"mmax":'+e.mmax.toString()+",":"")+'"spatialReference":'+Fe(e.spatialReference)+"}":Fe(e.toJSON(),((e,t)=>e.key===t.key?0:"spatialReference"===e.key?1:"spatialReference"===t.key||e.key<t.key?-1:e.key>t.key?1:0));if(F(e)){const t=[];for(let r=0;r<e.length;r++)t[r]=be(e[r],n);return"["+t.join(",")+"]"}if(e instanceof s){const t=[];for(let r=0;r<e.length();r++)t[r]=be(e.get(r),n);return"["+t.join(",")+"]"}return null!==e&&"object"==typeof e&&"castToText"in e?e.castToText(n):G(e)?"object, Function":e===v?"":V(e)?"object, Module":""}function be(e,t=!1){if(null===e)return"null";if(x(e)||C(e)||O(e))return JSON.stringify(e);if(e instanceof b)return he(e,null,t);if(e instanceof s)return he(e,null,t);if(Array.isArray(e))return he(e,null,t);if(ne(e))return t?JSON.stringify(e.getTime()):JSON.stringify(le(e,""));if(ie(e))return JSON.stringify(e.toString());if(re(e))return JSON.stringify(e.toString());if(null!==e&&"object"==typeof e){if("castToText"in e)return e.castToText(t)}else if(e===v)return"null";return"null"}function Ne(e,t){return C(e)?e:null===e||""===e?0:ne(e)||re(e)||ie(e)?NaN:x(e)?e?1:0:F(e)||""===e||void 0===e?NaN:void 0!==t&&O(e)?(t=P(t,"‰",""),t=P(t,"¤",""),y(e,{pattern:t})):e===v?0:Number(e)}function Se(e,t){if(ne(e))return e;if(O(e)){const r=Ze(e,t);if(r)return n.dateTimeToArcadeDate(r)}return null}function Ze(e,t){const n=/ (\d\d)/,i=r(t);let o=R.fromISO(e,{zone:i});return o.isValid||n.test(e)&&(e=e.replace(n,"T$1"),o=R.fromISO(e,{zone:t}),o.isValid)?o:null}function Te(e){return x(e)?e:O(e)?"true"===(e=e.toLowerCase()):!!C(e)&&(0!==e&&!isNaN(e))}function Ae(e,t){const n=JSON.parse(e);return n&&!n.spatialReference&&(n.spatialReference=t),j(n)}function ke(e,t){return null==e?null:(null!==e.spatialReference&&void 0!==e.spatialReference||(e.spatialReference=t),e)}function je(e){if(null===e)return null;if(e instanceof S)return"NaN"===e.x||null===e.x||isNaN(e.x)?null:e;if(e instanceof Z){if(0===e.rings.length)return null;for(const t of e.rings)if(t.length>0)return e;return null}if(e instanceof T){if(0===e.paths.length)return null;for(const t of e.paths)if(t.length>0)return e;return null}return e instanceof N?0===e.points.length?null:e:e instanceof h?"NaN"===e.xmin||null===e.xmin||isNaN(e.xmin)?null:e:null}function De(e,t){if(!e)return t;if(!e.domain)return t;let n=null,r=null;if(ne(t))n=t.toNumber();else if(re(t))n=t.toString();else if(ie(t))n=t.toStorageString();else if("string"===e.field.type||"esriFieldTypeString"===e.field.type)n=pe(t);else{if(null==t)return null;if(""===t)return t;n=Ne(t)}for(let i=0;i<e.domain.codedValues.length;i++){const t=e.domain.codedValues[i];t.code===n&&(r=t)}return null===r?pe(t):r.name}function Oe(e,t){if(!e)return t;if(!e.domain)return t;let n=null;const r=pe(t);for(let i=0;i<e.domain.codedValues.length;i++){const t=e.domain.codedValues[i];t.name===r&&(n=t)}return null===n?t:n.code}function Ce(e,t,n=null,r=null){if(!t)return null;if(!t.fields)return null;let i,u,s=null;for(let o=0;o<t.fields.length;o++){const n=t.fields[o];n.name.toLowerCase()===e.toString().toLowerCase()&&(s=n)}if(null===s)throw new o(null,a.FieldNotFound,null,{key:e});let l=t.typeIdField,f="id",c=t.types;if(t.subtypeField&&(l=t.subtypeField,f="code",c=t.subtypes??[]),null===r&&n&&l)r=n.hasField(l)?n.field(l):null;else if(l&&null!==r){let e=!1;for(const t of c||[])if(r===t[f]){e=!0;break}if(!e)for(const t of c||[])if(r===t.name){r=t[f],e=!0;break}e||(r=null,n&&l&&(r=n.hasField(l)?n.field(l):null))}return null!=r&&c.some((e=>e[f]===r&&(i=e.domains?.[s.name],i&&"inherited"===i.type&&(i=xe(s.name,t),u=!0),!0))),u||i||(i=xe(e,t)),{field:s,domain:i}}function xe(e,t){let n;return t.fields.some((t=>(t.name.toLowerCase()===e.toLowerCase()&&(n=t.domain),!!n))),n}function Fe(e,t){t||(t={}),"function"==typeof t&&(t={cmp:t});const n="boolean"==typeof t.cycles&&t.cycles,r=t.cmp&&(i=t.cmp,function(e){return function(t,n){const r={key:t,value:e[t]},o={key:n,value:e[n]};return i(r,o)}});var i;const o=[];return function e(t){if(t?.toJSON&&"function"==typeof t.toJSON&&(t=t.toJSON()),void 0===t)return;if("number"==typeof t)return isFinite(t)?""+t:"null";if("object"!=typeof t)return JSON.stringify(t);let i,a;if(Array.isArray(t)){for(a="[",i=0;i<t.length;i++)i&&(a+=","),a+=e(t[i])||"null";return a+"]"}if(null===t)return"null";if(o.includes(t)){if(n)return JSON.stringify("__cycle__");throw new TypeError("Converting circular structure to JSON")}const u=o.push(t)-1,s=Object.keys(t).sort(r?.(t));for(a="",i=0;i<s.length;i++){const n=s[i],r=e(t[n]);r&&(a&&(a+=","),a+=JSON.stringify(n)+":"+r)}return o.splice(u,1),"{"+a+"}"}(e)}function we(e){if(null===e)return null;const t=[];for(const n of e)$(n)?t.push(n.geometry()):t.push(n);return t}function Je(e,t){if(!(t instanceof S))throw new o(null,a.InvalidParameter,null);e.push(t.hasZ?t.hasM?[t.x,t.y,t.z,t.m]:[t.x,t.y,t.z]:[t.x,t.y])}function Me(e,t){if(F(e)||te(e)){let n=!1,r=!1,i=[],u=t;if(F(e)){for(const t of e)Je(i,t);i.length>0&&(u=e[0].spatialReference,n=e[0].hasZ,r=e[0].hasM)}else if(e instanceof f)i=e._elements,i.length>0&&(n=e._hasZ,r=e._hasM,u=e.get(0).spatialReference);else{if(!te(e))throw new o(null,a.InvalidParameter,null);for(const t of e.toArray())Je(i,t);i.length>0&&(u=e.get(0).spatialReference,n=!0===e.get(0).hasZ,r=!0===e.get(0).hasM)}if(0===i.length)return null;return k(i)||(i=i.slice().reverse()),new Z({rings:[i],spatialReference:u,hasZ:n,hasM:r})}return e}function Re(e,t){if(F(e)||te(e)){let n=!1,r=!1,i=[],o=t;if(F(e)){for(const t of e)Je(i,t);i.length>0&&(o=e[0].spatialReference,n=!0===e[0].hasZ,r=!0===e[0].hasM)}else if(e instanceof f)i=e._elements,i.length>0&&(n=e._hasZ,r=e._hasM,o=e.get(0).spatialReference);else if(te(e)){for(const t of e.toArray())Je(i,t);i.length>0&&(o=e.get(0).spatialReference,n=!0===e.get(0).hasZ,r=!0===e.get(0).hasM)}return 0===i.length?null:new T({paths:[i],spatialReference:o,hasZ:n,hasM:r})}return e}function _e(e,t){if(F(e)||te(e)){let n=!1,r=!1,i=[],o=t;if(F(e)){for(const t of e)Je(i,t);i.length>0&&(o=e[0].spatialReference,n=!0===e[0].hasZ,r=!0===e[0].hasM)}else if(e instanceof f)i=e._elements,i.length>0&&(n=e._hasZ,r=e._hasM,o=e.get(0).spatialReference);else if(te(e)){for(const t of e.toArray())Je(i,t);i.length>0&&(o=e.get(0).spatialReference,n=!0===e.get(0).hasZ,r=!0===e.get(0).hasM)}return 0===i.length?null:new N({points:i,spatialReference:o,hasZ:n,hasM:r})}return e}function Ie(e,t=!0){if(null==e)return[];if(F(e)){const n=[];for(const r of e){const e=pe(r);(t||""!==e)&&n.push(e)}return n}if(te(e)){const n=[];for(let r=0;r<e.length();r++){const i=pe(e.get(r));(t||""!==i)&&n.push(i)}return n}if(z(e)){const n=pe(e);if(t||""!==n)return[n]}return[]}let ve=0;function Ye(e){return ve++,ve%100==0?(ve=0,new Promise((t=>{setTimeout((()=>{t(e)}),0)}))):e}function Le(e,t,n){switch(n){case"&":return e&t;case"|":return e|t;case"^":return e^t;case"<<":return e<<t;case">>":return e>>t;case">>>":return e>>>t}}function Pe(e,t=null){return null==e?null:x(e)||C(e)||O(e)?e:e instanceof b?!0===t?.keepGeometryType?e:e.toJSON():e instanceof s?e.toArray().map((e=>Pe(e,t))):Array.isArray(e)?e.map((e=>Pe(e,t))):w(e)?e:ne(e)?e.toJSDate():ie(e)?e.toString():re(e)?e.toJSDate():null!==e&&"object"==typeof e&&void 0!==e.castAsJson?e.castAsJson(t):null}async function Ge(e,t,n,r,i){const o=await Ve(e,t,n);i[r]=o}async function Ve(e,t=null,n=null){if(e instanceof s&&(e=e.toArray()),null==e)return null;if(z(e)||e instanceof b||w(e)||ne(e))return Pe(e,n);if(Array.isArray(e)){const r=[],i=[];for(const o of e)null===o||z(o)||o instanceof b||w(o)||ne(o)?i.push(Pe(o,n)):(i.push(null),r.push(Ge(o,t,n,i.length-1,i)));return r.length>0&&await Promise.all(r),i}return null!==e&&"object"==typeof e&&void 0!==e.castAsJsonAsync?e.castAsJsonAsync(t,n):null}function ze(e){return qe(e)?e.parent:e}function qe(e){return e&&"declaredClass"in e&&"esri.layers.support.SubtypeSublayer"===e.declaredClass}function Ee(e){return e&&"declaredClass"in e&&"esri.layers.SubtypeGroupLayer"===e.declaredClass}function Ue(e,t,n){const r=ze(e.fullSchema());if(null===r)return null;if(!r.fields)return null;return Ce(t,r,e,n)}function He(e){const t=ze(e.fullSchema());return null===t?null:t.fields?t.subtypeField?{subtypeField:t.subtypeField,subtypes:t.subtypes?t.subtypes.map((e=>({name:e.name,code:e.code}))):[]}:t.typeIdField?{subtypeField:t.typeIdField,subtypes:t.types?t.types.map((e=>({name:e.name,code:e.id}))):[]}:null:null}function $e(e,t,n,r){const i=ze(e.fullSchema());if(null===i)return null;if(!i.fields)return null;const o=Ce(t,i,e,r);if(void 0===n)try{n=e.field(t)}catch(a){return null}return De(o,n)}function Be(e,t,n,r){const i=ze(e.fullSchema());if(null===i)return null;if(!i.fields)return null;if(void 0===n){try{n=e.field(t)}catch(o){return null}return n}return Oe(Ce(t,i,e,r),n)}function Ke(e){return e?.timeZone??"system"}function We(e){const t=ze(e.fullSchema());if(null===t)return null;if(!t.fields)return null;const n=[];for(const r of t.fields)n.push(c(r));return{objectIdField:t.objectIdField,globalIdField:t.globalIdField??"",geometryType:void 0===m[t.geometryType]?"":m[t.geometryType],fields:n}}function Qe(r,i){const o=n.systemTimeZoneCanonicalName;return"system"===r&&(r=o),{version:Xe,engineVersion:t,timeZone:r,userTimeZone:o,spatialReference:i instanceof A?i.toJSON():i,application:e.applicationName??"",engine:"web",locale:D()}}const Xe="1.30",et=Object.freeze(Object.defineProperty({__proto__:null,ImplicitResult:I,ReturnResult:_,absRound:ue,arcadeVersion:Xe,autoCastArrayOfPointsToMultiPoint:_e,autoCastArrayOfPointsToPolygon:Me,autoCastArrayOfPointsToPolyline:Re,autoCastFeatureToGeometry:we,binaryOperator:Le,breakResult:Y,castAsJson:Pe,castAsJsonAsync:Ve,castRecordToText:ye,continueResult:L,defaultExecutingContext:Qe,defaultTimeZone:Ke,defaultUndefined:q,equalityTest:de,featureDomainCodeLookup:Be,featureDomainValueLookup:$e,featureFullDomain:Ue,featureSchema:We,featureSubtypes:He,fixNullGeometry:je,fixSpatialReference:ke,formatDate:le,formatNumber:se,getDomain:Ce,getDomainCode:Oe,getDomainValue:De,getType:E,greaterThanLessThan:me,isArray:F,isBoolean:x,isDate:ne,isDateOnly:re,isDictionary:W,isDictionaryLike:Q,isFeature:$,isFeatureSet:K,isFeatureSetCollection:X,isFunctionParameter:G,isGeometry:H,isGraphic:J,isImmutableArray:te,isInteger:M,isJsDate:w,isKnowledgeGraph:ee,isModule:V,isNumber:C,isObject:oe,isSimpleType:z,isString:O,isSubtypeGrouplayer:Ee,isSubtypeSublayer:qe,isTime:ie,isVoid:U,isVoxel:B,multiReplace:P,parseGeometryFromJson:Ae,pcCheck:ae,stableStringify:Fe,standardiseDateFormat:fe,tick:Ye,toBoolean:Te,toDate:Se,toNumber:Ne,toNumberArray:ge,toString:pe,toStringArray:Ie,toStringExplicit:he,voidOperation:v},Symbol.toStringTag,{value:"Module"}));export{qe as $,de as A,Le as B,U as C,ae as D,we as E,ke as F,Me as G,Re as H,I,_e as J,q as K,Ke as L,Ie as M,E as N,fe as O,ue as P,Ue as Q,_ as R,Be as S,$e as T,We as U,He as V,je as W,B as X,P as Y,Qe as Z,ge as _,Pe as a,Ye as a0,Ce as a1,De as a2,Oe as a3,V as a4,oe as a5,se as a6,le as a7,Ae as a8,Fe as a9,Ee as aa,Xe as ab,Ve as b,ye as c,z as d,Te as e,pe as f,ne as g,Se as h,G as i,re as j,ie as k,H as l,te as m,$ as n,X as o,K as p,W as q,ee as r,he as s,Ne as t,et as u,v,Y as w,L as x,Q as y,me as z};
|