@arcgis/core 5.2.0-next.27 → 5.2.0-next.29
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/WebLinkChart.js +1 -1
- package/WebMap.js +1 -1
- package/applications/KnowledgeStudio/generalSharedKgUtils.d.ts +40 -2
- package/applications/KnowledgeStudio/generalSharedKgUtils.js +1 -1
- package/arcade/Dictionary.js +1 -1
- package/arcade/Feature.js +1 -1
- package/arcade/Pixel.js +1 -1
- package/arcade/deepClone.js +1 -1
- package/arcade/featureset/support/FeatureSet.js +1 -1
- package/arcade/functions/geometry.js +1 -1
- package/arcade/languageUtils.js +1 -1
- package/assets/esri/core/libs/libtess/libtess-f32.wasm +0 -0
- package/assets/esri/core/libs/libtess/libtess-f64.wasm +0 -0
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/0197e459fdb04dfb28ef.js +1 -0
- package/assets/esri/core/workers/chunks/{f7344d855f1092383abe.js → 15aa9b85976069acf4f3.js} +1 -1
- package/assets/esri/core/workers/chunks/{5ee887fc6e1e0e70e02f.js → 1664434dc7a67c8ce453.js} +1 -1
- package/assets/esri/core/workers/chunks/17b98787a0698f584882.js +1 -0
- package/assets/esri/core/workers/chunks/1837f97f720d255a1694.js +1 -0
- package/assets/esri/core/workers/chunks/1b9c68e8431bb4608209.js +1 -0
- package/assets/esri/core/workers/chunks/1bbf5f5da5842b93f638.js +1 -0
- package/assets/esri/core/workers/chunks/1bd7b7f4ee7ea6cb7ef9.js +1 -0
- package/assets/esri/core/workers/chunks/1e386475937e02b3f523.js +1 -0
- package/assets/esri/core/workers/chunks/209460f8aae3f9f8c9b8.js +1 -0
- package/assets/esri/core/workers/chunks/{316a3d5c7842b445e29e.js → 20ffeb09bb30400de110.js} +1 -1
- package/assets/esri/core/workers/chunks/21122f3f3e19a7fd7d33.js +1 -0
- package/assets/esri/core/workers/chunks/{25fd4d5d3af887536b3b.js → 2628136bf9f47d238a24.js} +1 -1
- package/assets/esri/core/workers/chunks/{bf9eca7dd107bdb06614.js → 2665337e1b665e7e2b70.js} +1 -1
- package/assets/esri/core/workers/chunks/2b044c8fab2055a8818d.js +1 -0
- package/assets/esri/core/workers/chunks/2b2b042a6d6949b06127.js +1 -0
- package/assets/esri/core/workers/chunks/2c15c227d057292d4fa8.js +1 -0
- package/assets/esri/core/workers/chunks/2f02880a7f081eb210cd.js +1 -0
- package/assets/esri/core/workers/chunks/2fc3e43b64300014dddc.js +1 -0
- package/assets/esri/core/workers/chunks/{31c4128b23968575feca.js → 31d92ba9089617aa59ab.js} +1 -1
- package/assets/esri/core/workers/chunks/32740b075d7a890d7888.js +1 -0
- package/assets/esri/core/workers/chunks/38b69fba9ae4ccbae6b7.js +1 -0
- package/assets/esri/core/workers/chunks/390f2beee8e3f2a302e4.js +1 -0
- package/assets/esri/core/workers/chunks/3c342e662c13a05f4caf.js +1 -0
- package/assets/esri/core/workers/chunks/{d670e134348954ce465d.js → 3d1e5bfd88771d4a0bf6.js} +1 -1
- package/assets/esri/core/workers/chunks/3eee32db0e9a5086b9a8.js +1 -0
- package/assets/esri/core/workers/chunks/43847d66726fd0bcbbb7.js +1 -0
- package/assets/esri/core/workers/chunks/4545cf12ad0824ce6b41.js +1 -0
- package/assets/esri/core/workers/chunks/45e4b9069263adeae394.js +1 -0
- package/assets/esri/core/workers/chunks/47290f27375c76bcc9c7.js +1 -0
- package/assets/esri/core/workers/chunks/{4e16d7fa2e6f11d082b5.js → 4ba4fd8fa31169760fee.js} +1 -1
- package/assets/esri/core/workers/chunks/{268ee59800e64baa9682.js → 4be0c64bbf2449d57ea5.js} +1 -1
- package/assets/esri/core/workers/chunks/5115059b012ef84407cf.js +1 -0
- package/assets/esri/core/workers/chunks/{e8e7cd26c43f231cdea2.js → 5189413a83faf3480e29.js} +1 -1
- package/assets/esri/core/workers/chunks/5c63b38160c7d063b8af.js +1 -0
- package/assets/esri/core/workers/chunks/5cccb8b06014ccef30f8.js +1 -0
- package/assets/esri/core/workers/chunks/{0098544169e429dd98d2.js → 689673173ca1c0e098fe.js} +1 -1
- package/assets/esri/core/workers/chunks/697e0ce10d77b90d4fee.js +1 -0
- package/assets/esri/core/workers/chunks/6991ba1b204668e7d4da.js +1 -0
- package/assets/esri/core/workers/chunks/{ccffaba50674adba7a0f.js → 6b56971783bf4c31a563.js} +1 -1
- package/assets/esri/core/workers/chunks/70c94bcfa20453134037.js +1 -0
- package/assets/esri/core/workers/chunks/{8f93e6fc11a158d4f1ee.js → 7335a762412bc8c15a2f.js} +1 -1
- package/assets/esri/core/workers/chunks/759686b896f51f0fe6a9.js +1 -0
- package/assets/esri/core/workers/chunks/7656900713e55036c3c1.js +1 -0
- package/assets/esri/core/workers/chunks/{b2b342b06d502fc61ea5.js → 76789f46b2c65d219cf9.js} +1 -1
- package/assets/esri/core/workers/chunks/774615303c1cc9a77e20.js +1 -0
- package/assets/esri/core/workers/chunks/7b290ac2e8a567ecae4a.js +1 -0
- package/assets/esri/core/workers/chunks/7ff37a4f315f7621462b.js +1 -0
- package/assets/esri/core/workers/chunks/8ad5e80e911419c1685a.js +1 -0
- package/assets/esri/core/workers/chunks/{a3ecde3794a7db3cf283.js → 8d90bef1091204fba0f1.js} +1 -1
- package/assets/esri/core/workers/chunks/8f16a358ed83d2264415.js +1 -0
- package/assets/esri/core/workers/chunks/{a454df829a72ab02c860.js → 8fd63cb38036f331a803.js} +1 -1
- package/assets/esri/core/workers/chunks/{bbcad2fde838819ffc7b.js → 906f4c0fa8135e6c2f03.js} +1 -1
- package/assets/esri/core/workers/chunks/989937c120bdd676ec1e.js +1 -0
- package/assets/esri/core/workers/chunks/9ba705a6ddabca0f77b1.js +1 -0
- package/assets/esri/core/workers/chunks/{87011d2fe14c54e296af.js → 9fe71d49c888fd871312.js} +1 -1
- package/assets/esri/core/workers/chunks/a14e5607c5c091c77e3d.js +1 -0
- package/assets/esri/core/workers/chunks/a2be8784f2cfdbb42681.js +1 -0
- package/assets/esri/core/workers/chunks/a6379a8df8c08b729b9c.js +1 -0
- package/assets/esri/core/workers/chunks/a988fd54912969b812ce.js +1 -0
- package/assets/esri/core/workers/chunks/a9db775210ebeee41738.js +1 -0
- package/assets/esri/core/workers/chunks/acbc14395c31f6da509e.js +1 -0
- package/assets/esri/core/workers/chunks/{11d1af758e2140095b10.js → aec82b94787821153d2b.js} +1 -1
- package/assets/esri/core/workers/chunks/b18b6bb85e52b03b85e3.js +680 -0
- package/assets/esri/core/workers/chunks/b624796ff4a9d4c406bf.js +1 -0
- package/assets/esri/core/workers/chunks/b7458bd3a2f590f32111.js +1 -0
- package/assets/esri/core/workers/chunks/bb1fad01d9f070e7d795.js +1 -0
- package/assets/esri/core/workers/chunks/{a9d477f90e5046400dd5.js → bcb2092c87d8d21c6458.js} +1 -1
- package/assets/esri/core/workers/chunks/{3e94ed4d57ee7d870cba.js → c6f5688074ae89c37add.js} +1 -1
- package/assets/esri/core/workers/chunks/caf150028aeac91b8d80.js +1 -0
- package/assets/esri/core/workers/chunks/cb30e8a66d6dcfebd439.js +1 -0
- package/assets/esri/core/workers/chunks/d7c0ab622caf495dbcef.js +1 -0
- package/assets/esri/core/workers/chunks/e181d0f5562878b3dc01.js +1 -0
- package/assets/esri/core/workers/chunks/{fd629872b5c07853f695.js → e4015870412edd69453c.js} +1 -1
- package/assets/esri/core/workers/chunks/{d07068c44d560e4ce02e.js → e5d2fab228d54b18a8a8.js} +1 -1
- package/assets/esri/core/workers/chunks/e774303efefee31952d0.js +1 -0
- package/assets/esri/core/workers/chunks/e98a8f80023c6023e72c.js +1 -0
- package/assets/esri/core/workers/chunks/f10a339b16d84b650012.js +2 -0
- package/assets/esri/core/workers/chunks/f1d211904d5a1de93cb3.js +1 -0
- package/assets/esri/core/workers/chunks/f847a4846c427f671455.js +1 -0
- package/assets/esri/core/workers/chunks/fe42fa2144691b9186fd.js +1 -0
- package/assets/esri/images/portal/gaussiansplatlayer16.png +0 -0
- package/assets/esri/images/portal/knowledgegraphlayer16.png +0 -0
- package/assets/esri/images/portal/propresentation16.png +0 -0
- package/assets/esri/images/portal/urbanproject16.png +0 -0
- package/assets/esri/images/support/loading-throb.gif +0 -0
- package/assets/esri/layers/raster/formats/lerc-wasm.wasm +0 -0
- package/assets/esri/libs/basisu/basis_encoder.wasm +0 -0
- package/assets/esri/libs/dxtEncoder/dxt_encoder.wasm +0 -0
- package/assets/esri/themes/base/icons/style.scss +0 -0
- package/assets/esri/themes/base/icons/variables.scss +0 -0
- package/assets/esri/themes/base/images/files/archive-32.svg +0 -0
- package/assets/esri/themes/base/images/files/cad-32.svg +0 -0
- package/assets/esri/themes/base/images/files/code-32.svg +0 -0
- package/assets/esri/themes/base/images/files/csv-32.svg +0 -0
- package/assets/esri/themes/base/images/files/excel-32.svg +0 -0
- package/assets/esri/themes/base/images/files/generic-32.svg +0 -0
- package/assets/esri/themes/base/images/files/gpx-32.svg +0 -0
- package/assets/esri/themes/base/images/files/image-32.svg +0 -0
- package/assets/esri/themes/base/images/files/pdf-32.svg +0 -0
- package/assets/esri/themes/base/images/files/report-32.svg +0 -0
- package/assets/esri/themes/base/images/files/sound-32.svg +0 -0
- package/assets/esri/themes/base/images/files/text-32.svg +0 -0
- package/assets/esri/themes/base/images/files/video-32.svg +0 -0
- package/assets/esri/themes/base/images/files/word-32.svg +0 -0
- package/assets/esri/themes/base/images/files/zip-32.svg +0 -0
- package/assets/esri/themes/base/images/loading-throb.gif +0 -0
- package/assets/esri/themes/base/widgets/_BatchAttributeForm.scss +24 -0
- package/assets/esri/themes/base/widgets/_Bookmarks.scss +0 -0
- package/assets/esri/themes/dark/main.css +1 -1
- package/assets/esri/themes/light/main.css +1 -1
- package/assets/esri/themes/light/view.css +1 -1
- package/chunks/GlowComposition.glsl.js +5 -5
- package/chunks/OITBlend.glsl.js +1 -1
- package/chunks/languageUtils.js +1 -1
- package/config.js +1 -1
- package/core/AsyncUpdate.js +1 -1
- package/core/Loadable.js +1 -1
- package/core/colorUtils.js +1 -1
- package/core/date.js +1 -1
- package/core/has.js +1 -1
- package/core/workers/WorkerHandle.js +1 -1
- package/core/workers/workerFactory.js +1 -1
- package/editing/sharedTemplates/SharedTemplateProvider.js +1 -1
- package/form/elements/AttachmentElement.d.ts +4 -1
- package/form/elements/inputs/attachments/AttachmentInput.d.ts +1 -0
- package/form/elements/inputs/attachments/AudioInput.d.ts +1 -0
- package/form/elements/inputs/attachments/DocumentInput.d.ts +3 -0
- package/form/elements/inputs/attachments/ImageInput.d.ts +1 -0
- package/form/elements/inputs/attachments/VideoInput.d.ts +1 -0
- package/geometry/Mesh.js +1 -1
- package/geometry/support/meshUtils/loadExternal.js +1 -1
- package/identity/OAuthCredential.js +1 -1
- package/kernel.js +1 -1
- package/layers/AnnotationFeatureLayer.d.ts +2 -4
- package/layers/AnnotationFeatureLayer.js +1 -1
- package/layers/DimensionFeatureLayer.d.ts +0 -2
- package/layers/DimensionFeatureLayer.js +1 -1
- package/layers/LinkChartLayer.js +1 -1
- package/layers/ParquetLayer.js +1 -1
- package/layers/PointCloudLayer.js +1 -1
- package/layers/SceneLayer.js +1 -1
- package/layers/buildingSublayers/BuildingComponentSublayer.js +1 -1
- package/layers/graphics/controllers/I3SOnDemandController.js +1 -1
- package/layers/graphics/editingSupport.js +1 -1
- package/layers/graphics/sources/MemorySource.js +1 -1
- package/layers/graphics/sources/ParquetSource.js +1 -1
- package/layers/graphics/sources/support/ParquetSourceWorker.js +1 -1
- package/layers/mixins/EditBusLayer.js +1 -1
- package/layers/mixins/SceneService.js +1 -1
- package/layers/support/KMLSublayer.js +1 -1
- package/layers/support/ParquetFilesData.js +1 -1
- package/layers/support/TitleCreator.js +1 -1
- package/layers/support/featureLayerUtils.js +1 -1
- package/layers/support/parquetUtils.js +1 -1
- package/linkChart/guards.js +2 -0
- package/linkChart/utils.js +1 -1
- package/networks/CircuitManager.d.ts +44 -0
- package/networks/support/CircuitExportJobInfo.d.ts +1 -1
- package/networks/support/CircuitVerifyJobInfo.d.ts +1 -1
- package/networks/support/jsonTypes.d.ts +2 -0
- package/package.json +5 -5
- package/rest/featureService/types.d.ts +4 -7
- package/rest/knowledgeGraph/ReplicaDefinition.d.ts +62 -6
- package/rest/networks/circuits/support/CircuitVerifyResult.d.ts +1 -1
- package/rest/networks/circuits/support/ExportCircuitsParameters.d.ts +1 -1
- package/rest/networks/circuits/support/VerifyCircuitsParameters.d.ts +17 -3
- package/rest/networks/unitIdentifiers/support/UnitQueryResult.d.ts +1 -1
- package/smartMapping/support/adapters/FeatureLayerAdapter.js +1 -1
- package/smartMapping/support/adapters/FeatureLayerBinningAdapter.js +1 -1
- package/support/ArcadeExpression.js +1 -1
- package/support/basemapUtils.js +1 -1
- package/support/revision.js +1 -1
- package/symbols/cim/CIMOperators.js +1 -1
- package/symbols/cim/utils.js +1 -1
- package/symbols/support/cimSymbolUtils.js +1 -1
- package/versionManagement/VersionManagementService.js +1 -1
- package/versionManagement/VersionManager.js +1 -1
- package/views/2d/analysis/AreaMeasurement/AreaMeasurementTool.js +1 -1
- package/views/2d/analysis/DistanceMeasurement/DistanceMeasurementTool.js +1 -1
- package/views/2d/engine/ParentChildStage.js +1 -1
- package/views/2d/engine/Stage.js +1 -1
- package/views/2d/engine/ThrottledCanvas.js +2 -0
- package/views/2d/engine/webgl/Profiler.js +1 -1
- package/views/2d/engine/webgl/mesh/factories/FeatureMeshFactory.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/text/TextMeshWriter.js +1 -1
- package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
- package/views/2d/engine/webgl/util/AnnotationMatcher.js +1 -1
- package/views/2d/engine/webgl/util/DictionaryMatcher.js +1 -1
- package/views/2d/engine/webgl/util/DimensionMatcher.js +1 -1
- package/views/2d/engine/webgl/util/IntervalMatcher.js +1 -1
- package/views/2d/engine/webgl/util/LabelMatcher.js +1 -1
- package/views/2d/engine/webgl/util/MapMatcher.js +1 -1
- package/views/2d/engine/webgl/util/Matcher.js +1 -1
- package/views/2d/engine/webgl/util/createMatcher.js +1 -1
- package/views/2d/layers/FeatureLikeLayerView2D.js +1 -1
- package/views/2d/layers/ImageryLayerView2D.js +1 -1
- package/views/2d/layers/LayerView2D.js +1 -1
- package/views/2d/layers/MediaLayerView2D.js +1 -1
- package/views/2d/layers/TileLayerView2D.js +1 -1
- package/views/2d/layers/features/Processor.js +1 -1
- package/views/2d/layers/features/layerAdapters/AnnotationLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/CatalogFootprintLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/DimensionLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/FeatureLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/InMemoryLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/KnowledgeGraphSublayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/OGCFeatureLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/OrientedImageryLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/ParquetLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/StreamLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/SubtypeGroupLayerAdapter.js +1 -1
- package/views/2d/layers/features/processor/BinningStrategy.js +1 -1
- package/views/2d/layers/features/processor/ClusterStrategy.js +1 -1
- package/views/2d/layers/features/processor/TrackStrategy.js +1 -1
- package/views/2d/layers/features/sources/strategies/support/queryAdapters.js +1 -1
- package/views/2d/layers/features/support/FeatureMetadata.js +1 -1
- package/views/2d/layers/features/support/FeatureSetReader.js +1 -1
- package/views/2d/layers/features/support/FeatureSetReaderIndirect.js +1 -1
- package/views/2d/layers/support/annodime/DimensionInfo.js +1 -1
- package/views/2d/layers/support/annodime/MatcherGeometryOverride.js +2 -0
- package/views/2d/layers/support/annodime/PrivateDimensionEffect.js +1 -1
- package/views/2d/layers/support/annodime/PrivateMatcherGeometryOverrideEffect.js +2 -0
- package/views/2d/layers/support/annodime/TileObjectId.js +2 -0
- package/views/2d/layers/support/annodime/annotationGraphic.js +1 -1
- package/views/2d/layers/support/annodime/debugUtils.js +2 -0
- package/views/2d/layers/support/annodime/dimensionStyleDefaults.js +2 -0
- package/views/2d/layers/support/annodime/dimensionSymbols.js +1 -1
- package/views/2d/layers/support/annodime/dimensionUtils.js +1 -1
- package/views/2d/layers/support/annodime/utils.js +1 -1
- package/views/3d/analysis/Viewshed/ViewshedPlacementController.js +1 -1
- package/views/3d/analysis/Viewshed/ViewshedPlacementPointPlugin.js +1 -1
- package/views/3d/analysis/Viewshed/ViewshedSubTool.js +1 -1
- package/views/3d/camera/constraintUtils/surfaceCollision.js +1 -1
- package/views/3d/camera/constraintUtils.js +1 -1
- package/views/3d/glTF/internal/Resource.js +1 -1
- package/views/3d/glTF/loader.js +1 -1
- package/views/3d/layers/BuildingSceneLayerView3D.js +1 -1
- package/views/3d/layers/I3SMeshView3D.js +1 -1
- package/views/3d/layers/PointCloudLayerView3D.js +1 -1
- package/views/3d/layers/SceneLayerGraphicsView3D.js +1 -1
- package/views/3d/layers/SceneLayerWorkerHandle.js +1 -1
- package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DPolygonFillSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DWaterSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/tessellationUtils.js +1 -1
- package/views/3d/layers/i3s/I3SOverrides.js +1 -1
- package/views/3d/state/GoToOperation.js +1 -1
- package/views/3d/state/SurfaceCollisionConstraint.js +1 -1
- package/views/3d/state/ViewState.js +1 -1
- package/views/3d/state/ViewStateManager.js +1 -1
- package/views/3d/state/controllers/PointToPointAnimationController.js +1 -1
- package/views/3d/state/controllers/ZoomControllerGlobal.js +1 -1
- package/views/3d/state/controllers/ZoomStepControllerGlobal.js +1 -1
- package/views/3d/support/renderInfoUtils/polygon.js +1 -1
- package/views/3d/webgl/ManagedFBO.js +1 -1
- package/views/3d/webgl/RenderCamera.js +1 -1
- package/views/3d/webgl/RenderNode.js +1 -1
- package/views/3d/webgl-engine/effects/RenderNodes.js +1 -1
- package/views/3d/webgl-engine/effects/atmosphere/ChapmanAtmosphere.js +1 -1
- package/views/3d/webgl-engine/effects/clouds/CloudsComposition.js +1 -1
- package/views/3d/webgl-engine/effects/debug/RenderNodeVisualizerNode.js +1 -1
- package/views/3d/webgl-engine/effects/focusArea/FocusAreaColorNode.js +1 -1
- package/views/3d/webgl-engine/effects/fog/Fog.js +1 -1
- package/views/3d/webgl-engine/effects/geometry/RenderOccludedRenderNode.js +1 -1
- package/views/3d/webgl-engine/effects/glow/Glow.js +1 -1
- package/views/3d/webgl-engine/effects/haze/Haze.js +1 -1
- package/views/3d/webgl-engine/effects/laserlines/LaserLineRenderer.js +1 -1
- package/views/3d/webgl-engine/effects/magnifier/Magnifier.js +1 -1
- package/views/3d/webgl-engine/effects/smaa/SMAA.js +1 -1
- package/views/3d/webgl-engine/effects/transparency/OITBlend.js +1 -1
- package/views/3d/webgl-engine/effects/transparency/OITBlendTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/lib/CutFillComputationRenderNode.js +1 -1
- package/views/3d/webgl-engine/lib/CutFillVisualizationRenderNode.js +1 -1
- package/views/3d/webgl-engine/lib/GPUPointOcclusionQuery.js +1 -1
- package/views/3d/webgl-engine/lib/GaussianSplatRenderNode.js +1 -1
- package/views/3d/webgl-engine/lib/Renderer.js +1 -1
- package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
- package/views/3d/webgl-engine/materials/renderers/MergedRenderer.js +1 -1
- package/views/3d/webgl-engine/materials/renderers/VaoWriter.js +1 -1
- package/views/3d/webgl.js +1 -1
- package/views/VideoView.js +1 -1
- package/views/View2D.js +1 -1
- package/views/Viewport2DBaseMixin.js +1 -1
- package/views/analysis/ElevationProfile/ElevationProfileLineGroundComputation.js +1 -1
- package/views/draw/DrawTool.js +1 -1
- package/views/draw/support/editingSessionUtils.js +1 -1
- package/views/interactive/sketch/SketchLabelOptions.d.ts +0 -6
- package/views/layers/AnnotationFeatureLayerView.d.ts +0 -7
- package/views/layers/DimensionFeatureLayerView.d.ts +0 -7
- package/views/popupAdapter.js +1 -1
- package/views/support/LayerViewManager.js +1 -1
- package/views/webgl/BufferObject.js +1 -1
- package/webdoc/support/webdocSaveUtils.js +1 -1
- package/widgets/BasemapGallery/BasemapGalleryViewModel.js +1 -1
- package/widgets/BasemapGallery/support/PortalBasemapsSource.js +1 -1
- package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.js +1 -1
- package/widgets/BatchAttributeForm/batchAttributeFormUtils.js +1 -1
- package/widgets/BatchAttributeForm/css.js +1 -1
- package/widgets/BatchAttributeForm/inputs/AttachmentElementInput.js +1 -1
- package/widgets/BatchAttributeForm/interfaceUtils.js +1 -1
- package/widgets/BatchAttributeForm/templates/support/createBatchFormTemplate.js +1 -1
- package/widgets/BatchAttributeForm.js +1 -1
- package/widgets/Directions/DirectionsViewModel.js +1 -1
- package/widgets/Directions.js +1 -1
- package/widgets/Editor/EditorViewModel.d.ts +1 -13
- package/widgets/Editor.d.ts +11 -13
- package/widgets/Editor.js +1 -1
- package/widgets/Feature/FeatureViewModel.js +1 -1
- package/widgets/Feature.js +1 -1
- package/widgets/FeatureForm/FeatureFormViewModel.js +1 -1
- package/widgets/FeatureTable/FeatureTableViewModel.js +1 -1
- package/widgets/FeatureTable/support/FeatureStore.js +1 -1
- package/widgets/FeatureTable.js +1 -1
- package/widgets/Features/FeaturesViewModel.js +1 -1
- package/widgets/Features.js +1 -1
- package/widgets/LayerList/LayerListViewModel.js +1 -1
- package/widgets/LinkChartLayoutSwitcher/LinkChartLayoutSwitcherViewModel.js +1 -1
- package/widgets/Locate/LocateViewModel.js +1 -1
- package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
- package/widgets/OrientedImageryViewer/adapters/sketch/DataCaptureAdapter.js +1 -1
- package/widgets/OrientedImageryViewer/adapters/sketch/MeasurementAdapter.js +1 -1
- package/widgets/OrientedImageryViewer/adapters/view/MapViewAdapter.js +1 -1
- package/widgets/OrientedImageryViewer/services/SuperimposeService.js +1 -1
- package/widgets/OrientedImageryViewer/support/MediaPrefetcher.js +1 -1
- package/widgets/PanoramicViewer/PanoramicViewerViewModel.js +1 -1
- package/widgets/Popup/PopupViewModel.d.ts +0 -1
- package/widgets/Popup/PopupViewModel.js +1 -1
- package/widgets/Popup.js +1 -1
- package/widgets/Print/PrintViewModel.js +1 -1
- package/widgets/Print.js +1 -1
- package/widgets/ScaleBar/ScaleBarViewModel.js +1 -1
- package/widgets/Sketch/SketchViewModel.d.ts +0 -12
- package/widgets/Sketch.d.ts +0 -12
- package/widgets/TableList/ListItem.js +1 -1
- package/widgets/UtilityNetworkTrace/UtilityNetworkTraceFeature.js +1 -1
- package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.js +1 -1
- package/widgets/VersionManagement/VersionManagementViewModel.js +1 -1
- package/widgets/Widget.js +1 -1
- package/widgets/support/geolocationUtils.js +1 -1
- package/widgets/support/tests.js +1 -1
- package/assets/esri/core/workers/chunks/04070767356c12026369.js +0 -1
- package/assets/esri/core/workers/chunks/045f178fecc23839bfa8.js +0 -680
- package/assets/esri/core/workers/chunks/073ee52705ea326fecfb.js +0 -1
- package/assets/esri/core/workers/chunks/0e81b6aa64d5491870b2.js +0 -1
- package/assets/esri/core/workers/chunks/126a8c26618425790804.js +0 -1
- package/assets/esri/core/workers/chunks/1a7c0a1dc6ecc93ea03a.js +0 -1
- package/assets/esri/core/workers/chunks/1cb1f125dccbf8c8cac9.js +0 -1
- package/assets/esri/core/workers/chunks/1f03e34520746e432719.js +0 -1
- package/assets/esri/core/workers/chunks/292498a9c7d462d215c6.js +0 -1
- package/assets/esri/core/workers/chunks/2ed81f1e490cb7e73405.js +0 -1
- package/assets/esri/core/workers/chunks/32f26757e36704923286.js +0 -1
- package/assets/esri/core/workers/chunks/33e86dd1a54e447fa0e3.js +0 -1
- package/assets/esri/core/workers/chunks/35c87b0a4d4ee7ce302d.js +0 -1
- package/assets/esri/core/workers/chunks/36b904912cea1744d1c6.js +0 -1
- package/assets/esri/core/workers/chunks/3a35779cae6a11cde51b.js +0 -1
- package/assets/esri/core/workers/chunks/3b7060d264888bf298b1.js +0 -1
- package/assets/esri/core/workers/chunks/3df5394b17e9659ecb8f.js +0 -1
- package/assets/esri/core/workers/chunks/4adfe7f8a8efe2cd8e80.js +0 -1
- package/assets/esri/core/workers/chunks/511b9c12a7479d39dac0.js +0 -1
- package/assets/esri/core/workers/chunks/5396a894e6f8030ca088.js +0 -1
- package/assets/esri/core/workers/chunks/5728d8440aca205e4f53.js +0 -1
- package/assets/esri/core/workers/chunks/66392ff750c28064040a.js +0 -1
- package/assets/esri/core/workers/chunks/668d84dc512b3085a960.js +0 -1
- package/assets/esri/core/workers/chunks/6849282c4a5cd733779d.js +0 -1
- package/assets/esri/core/workers/chunks/6adc17e6e287a365ad8d.js +0 -1
- package/assets/esri/core/workers/chunks/6db5ee9c589265b23b60.js +0 -1
- package/assets/esri/core/workers/chunks/76ed8e455f6bd79e561c.js +0 -1
- package/assets/esri/core/workers/chunks/7c34eb94e2c74602aeab.js +0 -1
- package/assets/esri/core/workers/chunks/831455798b177678720c.js +0 -1
- package/assets/esri/core/workers/chunks/88b08b386926ec889573.js +0 -1
- package/assets/esri/core/workers/chunks/8bd4c43c34aacf3b07da.js +0 -1
- package/assets/esri/core/workers/chunks/8ca88cfc0b9f84dc5832.js +0 -1
- package/assets/esri/core/workers/chunks/928b18e13e015330d44b.js +0 -1
- package/assets/esri/core/workers/chunks/937e347d130d469518ce.js +0 -1
- package/assets/esri/core/workers/chunks/93b40245378ced43ca08.js +0 -1
- package/assets/esri/core/workers/chunks/98dfe31e8ed9b522eaff.js +0 -1
- package/assets/esri/core/workers/chunks/a18cb809dd56c5537b3b.js +0 -1
- package/assets/esri/core/workers/chunks/a195f569eada3a8736be.js +0 -1
- package/assets/esri/core/workers/chunks/a40ede4d3375184f21fe.js +0 -1
- package/assets/esri/core/workers/chunks/a8167ab9fd846d699be5.js +0 -1
- package/assets/esri/core/workers/chunks/af96cbc4fb7bef726635.js +0 -1
- package/assets/esri/core/workers/chunks/b87aca8ad281870ae970.js +0 -1
- package/assets/esri/core/workers/chunks/ceb5bd9f2afaa2ea0808.js +0 -1
- package/assets/esri/core/workers/chunks/d25c37f169577a33db46.js +0 -1
- package/assets/esri/core/workers/chunks/d374cb2d17a2d11c500f.js +0 -1
- package/assets/esri/core/workers/chunks/dadf85890961bcc205eb.js +0 -1
- package/assets/esri/core/workers/chunks/db279d5d9c7deec554bb.js +0 -1
- package/assets/esri/core/workers/chunks/de0c94defb90e1805081.js +0 -1
- package/assets/esri/core/workers/chunks/e1340232962cf576d37e.js +0 -1
- package/assets/esri/core/workers/chunks/e38d1ba15babc238b151.js +0 -1
- package/assets/esri/core/workers/chunks/e73bb7c8de7412d9975c.js +0 -1
- package/assets/esri/core/workers/chunks/f23351a04643c464be84.js +0 -1
- package/assets/esri/core/workers/chunks/f3d331da3c61af5c5a2f.js +0 -1
- package/assets/esri/core/workers/chunks/f5125925f83c979edde7.js +0 -2
- package/assets/esri/core/workers/chunks/f912c173c58ae4299cbe.js +0 -1
- package/assets/esri/core/workers/chunks/f93facf47aba9b128fcc.js +0 -1
- package/assets/esri/core/workers/chunks/fae147d03ed723ab234d.js +0 -1
- package/views/2d/engine/ManagedCanvas.js +0 -2
- package/views/2d/layers/features/support/FeatureSetReaderAnnotationJSON.js +0 -2
- package/views/2d/layers/features/support/FeatureSetReaderDimensionJSON.js +0 -2
- package/views/2d/layers/support/annodime/annotationUtils.js +0 -2
- package/views/3d/state/controllers/SurfaceCollisionCorrectionController.js +0 -2
- /package/assets/esri/core/workers/chunks/{f5125925f83c979edde7.js.LICENSE.txt → f10a339b16d84b650012.js.LICENSE.txt} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[5669,5841],{24045(e,t,r){function n(e,t){const r=e.count;t||(t=new e.TypedArrayConstructor(r));for(let n=0;n<r;n++)t[n]=e.get(n);return t}r.d(t,{m:()=>n}),Object.freeze(Object.defineProperty({__proto__:null,makeDense:n},Symbol.toStringTag,{value:"Module"}))},43609(e,t,r){r.d(t,{a:()=>s,f:()=>a,n:()=>o});var n=r(34275);function o(e,t){s(e.typedBuffer,t.typedBuffer,e.typedBufferStride,t.typedBufferStride)}function s(e,t,r=2,o=r){const s=t.length/2;let a=0,i=0;if(!(0,n.iu)(t)||(0,n.dk)(t)){for(let n=0;n<s;++n)e[a]=t[i],e[a+1]=t[i+1],a+=r,i+=o;return}const u=(0,n.a3)(t);if((0,n.JI)(t))for(let n=0;n<s;++n)e[a]=Math.max(t[i]/u,-1),e[a+1]=Math.max(t[i+1]/u,-1),a+=r,i+=o;else for(let n=0;n<s;++n)e[a]=t[i]/u,e[a+1]=t[i+1]/u,a+=r,i+=o}function a(e,t,r,n){const o=e.typedBuffer,s=e.typedBufferStride,a=n?.count??e.count;let i=(n?.dstIndex??0)*s;for(let e=0;e<a;++e)o[i]=t,o[i+1]=r,i+=s}Object.freeze(Object.defineProperty({__proto__:null,fill:a,normalizeIntegerBuffer:s,normalizeIntegerBufferView:o},Symbol.toStringTag,{value:"Module"}))},46140(e,t,r){r.d(t,{A:()=>o});var n=r(49186);class o{constructor(e,t,r=""){this.major=e,this.minor=t,this._context=r}lessThan(e,t){return this.major<e||e===this.major&&this.minor<t}greaterEqual(e,t){return!this.lessThan(e,t)}toString(){return`${this.major}.${this.minor}`}validate(e){if(this.major!==e.major){const t=this._context&&this._context+":",r=this._context&&this._context+" ";throw new n.A(t+"unsupported-version",`Required major ${r}version is '${this.major}', but got '\${version.major}.\${version.minor}'`,{version:e})}}clone(){return new o(this.major,this.minor,this._context)}static parse(e,t=""){const[r,s]=e.split("."),a=/^\s*\d+\s*$/;if(!r?.match||!a.test(r))throw new n.A((t&&t+":")+"invalid-version","Expected major version to be a number, but got '${version}'",{version:e});if(!s?.match||!a.test(s))throw new n.A((t&&t+":")+"invalid-version","Expected minor version to be a number, but got '${version}'",{version:e});const i=parseInt(r,10),u=parseInt(s,10);return new o(i,u,t)}}},35841(e,t,r){r.r(t),r.d(t,{loadGLTFMesh:()=>L});var n=r(68197),o=r(40876),s=r(49186),a=r(91869),i=r(34727),u=r(77690),l=r(29242),c=r(51850),f=r(91829),d=r(16939),p=r(80882),m=r(35063),h=r(51147),g=r(1193),y=r(27615),T=r(13030),w=r(73354),x=r(50867),b=r(90239);Object.freeze(Object.defineProperty({__proto__:null,copy:function(e,t,r){const n=e.typedBuffer,o=e.typedBufferStride,s=t.typedBuffer,a=t.typedBufferStride,i=r?r.count:t.count;let u=(r?.dstIndex??0)*o,l=(r?.srcIndex??0)*a;for(let e=0;e<i;++e){for(let e=0;e<9;++e)n[u+e]=s[l+e];u+=o,l+=a}}},Symbol.toStringTag,{value:"Module"})),Object.freeze(Object.defineProperty({__proto__:null,copy:function(e,t,r){const n=e.typedBuffer,o=e.typedBufferStride,s=t.typedBuffer,a=t.typedBufferStride,i=r?r.count:t.count;let u=(r?.dstIndex??0)*o,l=(r?.srcIndex??0)*a;for(let e=0;e<i;++e){for(let e=0;e<16;++e)n[u+e]=s[l+e];u+=o,l+=a}}},Symbol.toStringTag,{value:"Module"})),r(24045);var _=r(43609);function S(e,t,r=3,n=r){const o=t.length/n;let s=0,a=0;for(let i=0;i<o;++i)e[s]=t[a],e[s+1]=t[a+1],e[s+2]=t[a+2],s+=r,a+=n}function v(e,t,r,n,o){const s=e.typedBuffer,a=e.typedBufferStride,i=o?.count??e.count;let u=(o?.dstIndex??0)*a;for(let e=0;e<i;++e)s[u]=t,s[u+1]=r,s[u+2]=n,u+=a}function A(e,t,r=4){const n=t.typedBuffer,o=t.typedBufferStride,s=t.count;let a=0,i=0;for(let t=0;t<s;++t)e[a]=n[i],e[a+1]=n[i+1],e[a+2]=n[i+2],e[a+3]=n[i+3],a+=r,i+=o}function O(e,t,r,n,o,s){const a=e.typedBuffer,i=e.typedBufferStride,u=s?.count??e.count;let l=(s?.dstIndex??0)*i;for(let e=0;e<u;++e)a[l]=t,a[l+1]=r,a[l+2]=n,a[l+3]=o,l+=i}function R(e,t){return new e(new ArrayBuffer(t*e.ElementCount*(0,b.GJ)(e.ElementType)))}Object.freeze(Object.defineProperty({__proto__:null,copy:S,copyView:function(e,t){S(e.typedBuffer,t.typedBuffer,e.typedBufferStride,t.typedBufferStride)},fill:v},Symbol.toStringTag,{value:"Module"})),Object.freeze(Object.defineProperty({__proto__:null,copy:A,copyView:function(e,t){A(e.typedBuffer,t,e.typedBufferStride)},fill:O},Symbol.toStringTag,{value:"Module"}));var C=r(72258),N=r(21015),E=r(51698),I=r(84498),B=r(51530);async function L(e,t,r){const o=new N.R(r?.resolveFile),u=await(0,E.loadGLTF)(o,t,r),l=u.model,d=l.lods.shift(),w=new Map,x=new Map;l.textures.forEach((e,t)=>w.set(t,function(e){return new m.default({data:((0,B.x3)(e.data),e.data),wrap:j(e.parameters.wrap)})}(e))),l.materials.forEach((e,t)=>x.set(t,function(e,t){const r=new n.A(function(e,t){return(0,f.fA)(P(e[0]),P(e[1]),P(e[2]),t)}(e.color,e.opacity)),o=e.emissiveFactor?new n.A(function(e){return(0,c.fA)(P(e[0]),P(e[1]),P(e[2]))}(e.emissiveFactor)):null,s=e=>e?new h.A({scale:e.scale?[e.scale[0],e.scale[1]]:[1,1],rotation:(0,i.KJ)(e.rotation??0),offset:e.offset?[e.offset[0],e.offset[1]]:[0,0]}):null;return new p.A({color:r,colorTexture:t.get(e.colorTexture),normalTexture:t.get(e.normalTexture),emissiveColor:o,emissiveStrength:e.emissiveStrengthKHR,emissiveTexture:t.get(e.emissiveTexture),occlusionTexture:t.get(e.occlusionTexture),alphaMode:D(e.alphaMode),alphaCutoff:e.alphaCutoff,doubleSided:e.doubleSided,metallic:e.metallicFactor,roughness:e.roughnessFactor,metallicRoughnessTexture:t.get(e.metallicRoughnessTexture),colorTextureTransform:s(e.colorTextureTransform),normalTextureTransform:s(e.normalTextureTransform),occlusionTextureTransform:s(e.occlusionTextureTransform),emissiveTextureTransform:s(e.emissiveTextureTransform),metallicRoughnessTextureTransform:s(e.metallicRoughnessTextureTransform)})}(e,w)));const b=function(e){let t=0;const r={color:!1,tangent:!1,normal:!1,texCoord0:!1},n=new Map,o=new Map,s=[];for(const i of e.parts){const{position:e,normal:u,color:l,tangent:c,texCoord0:f}=i.attributes,d=`\n ${M(e,n)}/\n ${M(u,n)}/\n ${M(l,n)}/\n ${M(c,n)}/\n ${M(f,n)}/\n ${F(i.transform)}\n `;let p=!1;const m=(0,a.tE)(o,d,()=>(p=!0,{start:t,length:e.count}));p&&(t+=e.count),u&&(r.normal=!0),l&&(r.color=!0),c&&(r.tangent=!0),f&&(r.texCoord0=!0),s.push({gltf:i,writeVertices:p,region:m})}return{vertexAttributes:{position:R(T.Xm,t),normal:r.normal?R(T.xs,t):null,tangent:r.tangent?R(T.Eq,t):null,color:r.color?R(T.XP,t):null,texCoord0:r.texCoord0?R(T.gH,t):null},parts:s,components:[]}}(d);for(const e of b.parts)U(b,e,x);const{position:_,normal:S,tangent:v,color:A,texCoord0:O}=b.vertexAttributes,I=(0,y.TE)(e,r),L=e.spatialReference.isGeographic?(0,y.TE)(e):I,G=(0,C.UR)({vertexAttributes:{position:_.typedBuffer,normal:S?.typedBuffer,tangent:v?.typedBuffer},vertexSpace:L,spatialReference:e.spatialReference},I,{allowBufferReuse:!0,sourceUnit:r?.unitConversionDisabled?void 0:"meters"});if(!G)throw new s.A("load-gltf-mesh:vertex-space-projection",`Failed to load mesh from glTF because we could not convert the vertex space from ${L.type} to ${I.type}`);return{mesh:{transform:null,vertexSpace:I,components:b.components,spatialReference:e.spatialReference,vertexAttributes:new g.default({...G,color:A?.typedBuffer,uv:O?.typedBuffer})},meta:u.meta}}function M(e,t){if(null==e)return"-";const r=e.typedBuffer;return`${(0,a.tE)(t,r.buffer,()=>t.size)}/${r.byteOffset}/${r.byteLength}`}function F(e){return null!=e?e.toString():"-"}function U(e,t,r){t.writeVertices&&function(e,t){const{position:r,normal:n,tangent:o,color:s,texCoord0:a}=e.vertexAttributes,c=t.region.start,{attributes:f,transform:d}=t.gltf,p=f.position.count;if((0,w.c)(r.slice(c,p),f.position,d),null!=f.normal&&null!=n){const e=(0,u.Ge)((0,l.vt)(),d),t=n.slice(c,p);(0,w.d)(t,f.normal,e),(0,i.or)(e)&&(0,w.e)(t,t)}else null!=n&&v(n,0,0,1,{dstIndex:c,count:p});if(null!=f.tangent&&null!=o){const e=(0,u.z0)((0,l.vt)(),d),t=o.slice(c,p);(0,x.a)(t,f.tangent,e),(0,i.or)(e)&&(0,x.n)(t,t)}else null!=o&&O(o,0,0,1,1,{dstIndex:c,count:p});if(null!=f.texCoord0&&null!=a?(0,_.n)(a.slice(c,p),f.texCoord0):null!=a&&(0,_.f)(a,0,0,{dstIndex:c,count:p}),null!=f.color&&null!=s){const e=f.color,t=s.slice(c,p);if(4===e.elementCount)e instanceof T.Eq?(0,x.l)(t,e,1,255):(e instanceof T.XP||e instanceof T.Uz)&&(0,x.l)(t,e,1/255,255);else{O(t,255,255,255,255);const r=T.eI.fromTypedArray(t.typedBuffer,t.typedBufferStride);e instanceof T.xs?(0,w.l)(r,e,1,255):(e instanceof T.eI||e instanceof T.nS)&&(0,w.l)(r,e,1/255,255)}}else null!=s&&O(s.slice(c,p),255,255,255,255)}(e,t);const{indices:n,attributes:o,primitiveType:s,material:a}=t.gltf;let c=(0,I.x)(n||o.position.count,s);const f=t.region.start;if(f){const e=new Uint32Array(c);for(let t=0;t<c.length;t++)e[t]+=f;c=e}e.components.push(new d.default({name:t.gltf.name,faces:c,material:r.get(a),shading:o.normal?"source":"flat",trustSourceNormals:!0}))}function D(e){switch(e){case"OPAQUE":return"opaque";case"MASK":return"mask";case"BLEND":return"blend"}}function j(e){return{horizontal:G(e.s),vertical:G(e.t)}}function G(e){switch(e){case 33071:return"clamp";case 33648:return"mirror";case 10497:return"repeat"}}function P(e){return e**(1/o.Tf)*255}},21015(e,t,r){r.d(t,{R:()=>u});var n=r(11254),o=r(60999),s=r(49186),a=r(17676),i=r(84952);class u{constructor(e=e=>e){this._resolveURI=e}async loadJSON(e,t){return this._load("json",e,t)}async loadBinary(e,t){return(0,i.DB)(e)?((0,a.Te)(t),(0,i.lJ)(e)):this._load("array-buffer",e,t)}async loadImage(e,t){return this._load("image",e,t)}async _load(e,t,r){t=this._resolveURI(t);const i=await(0,o.Ke)((0,n.A)(t,{responseType:e,...r}));if(i.ok)return i.value.data;throw(0,a.QP)(i.error),new s.A("gltf-loader-request-error",`Request for resource failed: ${i.error}`)}}},84498(e,t,r){r.d(t,{x:()=>a});var n=r(34275),o=r(97146),s=r(63907);function a(e,t){switch(t){case s.WR.TRIANGLES:return function(e){return"number"==typeof e?(0,o.tM)(e):(0,n.mg)(e)?new Uint16Array(e):e}(e);case s.WR.TRIANGLE_STRIP:return function(e){const t="number"==typeof e?e:e.length;if(t<3)return[];const r=t-2,n=(0,o.my)(3*r);if("number"==typeof e){let e=0;for(let t=0;t<r;t+=1)t%2==0?(n[e++]=t,n[e++]=t+1,n[e++]=t+2):(n[e++]=t+1,n[e++]=t,n[e++]=t+2)}else{let t=0;for(let o=0;o<r;o+=1)o%2==0?(n[t++]=e[o],n[t++]=e[o+1],n[t++]=e[o+2]):(n[t++]=e[o+1],n[t++]=e[o],n[t++]=e[o+2])}return n}(e);case s.WR.TRIANGLE_FAN:return function(e){const t="number"==typeof e?e:e.length;if(t<3)return new Uint16Array(0);const r=t-2,n=r<=65536?new Uint16Array(3*r):new Uint32Array(3*r);if("number"==typeof e){let e=0;for(let t=0;t<r;++t)n[e++]=0,n[e++]=t+1,n[e++]=t+2;return n}const o=e[0];let s=e[1],a=0;for(let t=0;t<r;++t){const r=e[t+2];n[a++]=o,n[a++]=s,n[a++]=r,s=r}return n}(e)}}},51530(e,t,r){r.d(t,{KB:()=>a,Xi:()=>o,pn:()=>i,x3:()=>s});var n=r(44208);class o{constructor(e){this.data=e,this.type="encoded-mesh-texture",this.encoding="image/ktx2"}}function s(e){return"encoded-mesh-texture"===e?.type}async function a(e){const t=new Blob([e]),r=await t.text();return JSON.parse(r)}async function i(e,t){if("image/ktx2"===t)return new o(e);const r=new Blob([e],{type:t});let s=URL.createObjectURL(r);switch(t){case"image/jpeg":s+="#.jpg";break;case"image/png":s+="#.png"}const a=new Image;if((0,n.A)("esri-iPhone"))return new Promise((e,t)=>{const r=()=>{o(),e(a)},n=e=>{o(),t(e)},o=()=>{URL.revokeObjectURL(s),a.removeEventListener("load",r),a.removeEventListener("error",n)};a.addEventListener("load",r),a.addEventListener("error",n),a.src=s});try{a.src=s,await a.decode()}catch{}return URL.revokeObjectURL(s),a}},51698(e,t,r){r.d(t,{loadGLTF:()=>G});var n=r(53966),o=r(93637),s=r(9093),a=r(49186),i=r(91869),u=r(17676),l=r(84952),c=r(46140),f=r(58083),d=r(67026),p=r(82534),m=r(13030),h=r(24045),g=r(2741);let y;function T(){return y??=(async()=>{const{default:e}=await r.e(2423).then(r.bind(r,2423));return await e({locateFile:e=>(0,g.s)(`esri/libs/dracoMeshDecoder/${e}`)})})(),y}class w{constructor(e){this._data=e,this._offset4=0,this._dataUint32=new Uint32Array(this._data,0,Math.floor(this._data.byteLength/4))}readUint32(){const e=this._offset4;return this._offset4+=1,this._dataUint32[e]}readUint8Array(e){const t=4*this._offset4;return this._offset4+=e/4,new Uint8Array(this._data,t,e)}remainingBytes(){return this._data.byteLength-4*this._offset4}}const x={baseColorFactor:[1,1,1,1],metallicFactor:1,roughnessFactor:1},b={pbrMetallicRoughness:x,emissiveFactor:[0,0,0],alphaMode:"OPAQUE",alphaCutoff:.5,doubleSided:!1},_={ESRI_externalColorMixMode:"tint",ESRI_receiveShadows:!0,ESRI_receiveAmbientOcclusion:!0},S=(e={})=>{const t={...x,...e.pbrMetallicRoughness},r=function(e){switch(e.ESRI_externalColorMixMode){case"multiply":case"tint":case"ignore":case"replace":break;default:e.ESRI_externalColorMixMode,e.ESRI_externalColorMixMode="tint"}return e}({..._,...e.extras});return{...b,...e,pbrMetallicRoughness:t,extras:r}},v={magFilter:9729,minFilter:9987,wrapS:10497,wrapT:10497};var A=r(51530),O=r(63907);const R=1179937895;class C{constructor(e,t,r,n){if(this._context=e,this.uri=t,this.json=r,this._glbBuffer=n,this._bufferLoaders=new Map,this._textureLoaders=new Map,this._dracoBuffersSize=0,this._textureCache=new Map,this._materialCache=new Map,this._nodeParentMap=new Map,this._nodeTransformCache=new Map,this._supportedExtensions=["KHR_texture_basisu","KHR_texture_transform","KHR_draco_mesh_compression","KHR_materials_emissive_strength"],this._baseUri=function(e){let t,r;return e.replace(/^(.*\/)?([^/]*)$/,(e,n,o)=>(t=n||"",r=o||"","")),{dirPart:t,filePart:r}}(this.uri).dirPart,this._checkVersionSupported(),this._checkRequiredExtensionsSupported(),null==r.scenes)throw new a.A("gltf-loader-unsupported-feature","Scenes must be defined.");if(null==r.meshes)throw new a.A("gltf-loader-unsupported-feature","Meshes must be defined");if(null==r.nodes)throw new a.A("gltf-loader-unsupported-feature","Nodes must be defined.");this._computeNodeParents()}static async load(e,t,r){if((0,l.DB)(t)){const r=(0,l.r$)(t);if(r&&"model/gltf-binary"!==r.mediaType)try{const n=JSON.parse(r.isBase64?atob(r.data):r.data);return new C(e,t,n)}catch{}const n=(0,l.lJ)(t);if(C._isGLBData(n))return this._fromGLBData(e,t,n)}if(U.test(t)||"gltf"===r?.expectedType){const n=await e.loadJSON(t,r);return new C(e,t,n)}const n=await e.loadBinary(t,r);if(C._isGLBData(n))return this._fromGLBData(e,t,n);if(D.test(t)||"glb"===r?.expectedType)throw new a.A("gltf-loader-invalid-glb","This is not a valid glb file.");const o=await e.loadJSON(t,r);return new C(e,t,o)}static _isGLBData(e){if(null==e)return!1;const t=new w(e);return t.remainingBytes()>=4&&t.readUint32()===R}static async _fromGLBData(e,t,r){const n=await C._parseGLBData(r);return new C(e,t,n.json,n.binaryData)}static async _parseGLBData(e){const t=new w(e);if(t.remainingBytes()<12)throw new a.A("gltf-loader-error","glb binary data is insufficiently large.");const r=t.readUint32(),o=t.readUint32(),s=t.readUint32();if(r!==R)throw new a.A("gltf-loader-error","Magic first 4 bytes do not fit to expected glb value.");if(e.byteLength<s)throw new a.A("gltf-loader-error","glb binary data is smaller than header specifies.");if(2!==o)throw new a.A("gltf-loader-unsupported-feature","An unsupported glb container version was detected. Only version 2 is supported.");let i,u,l=0;for(;t.remainingBytes()>=8;){const e=t.readUint32(),r=t.readUint32();if(0===l){if(1313821514!==r)throw new a.A("gltf-loader-error","First glb chunk must be JSON.");if(e<0)throw new a.A("gltf-loader-error","No JSON data found.");i=await(0,A.KB)(t.readUint8Array(e))}else if(1===l){if(5130562!==r)throw new a.A("gltf-loader-unsupported-feature","Second glb chunk expected to be BIN.");u=t.readUint8Array(e)}else n.A.getLogger("esri.views.3d.glTF").warn("[Unsupported Feature] More than 2 glb chunks detected. Skipping.");l+=1}if(!i)throw new a.A("gltf-loader-error","No glb JSON chunk detected.");return{json:i,binaryData:u}}async getBuffer(e,t){const r=this.json.buffers[e];if(null==r.uri){if(null==this._glbBuffer)throw new a.A("gltf-loader-error","glb buffer not present");return this._glbBuffer}const n=await this._getBufferLoader(e,t);if(n.byteLength!==r.byteLength)throw new a.A("gltf-loader-error","Buffer byte lengths should match.");return n}async _getBufferLoader(e,t){const r=this._bufferLoaders.get(e);if(r)return r;const n=this.json.buffers[e].uri,o=this._context.loadBinary(this._resolveUri(n),t).then(e=>new Uint8Array(e));return this._bufferLoaders.set(e,o),o}_validateAccessor(e){if(!this.json.accessors)throw new a.A("gltf-loader-unsupported-feature","Accessors missing.");const t=this.json.accessors[e];if(t.type in["MAT2","MAT3","MAT4"])throw new a.A("gltf-loader-unsupported-feature",`AttributeType ${t.type} is not supported`);return t}_getComponentInfo(e,t){const r=B[e.type],n=t?.componentType||e.componentType,o=L[n];return{componentType:n,componentCount:r,componentByteSize:o,denseByteStride:r*o}}getDracoAccessor(e,t){const r=this._validateAccessor(e),n=t.accessorInfos.get(e),{componentType:o,componentCount:s,componentByteSize:a,denseByteStride:i}=this._getComponentInfo(r,n);return{raw:t.data.buffer,byteStride:i,byteOffset:t.data.byteOffset+(n?.byteOffset||0),entryCount:n?.count??r.count,isDenselyPacked:!0,componentCount:s,componentByteSize:a,componentType:o,min:r.min,max:r.max,normalized:!!r.normalized}}async getAccessor(e,t){const r=this._validateAccessor(e);if(null==r?.bufferView)throw new a.A("gltf-loader-unsupported-feature","Some accessor does not specify a bufferView.");const{componentCount:n,componentByteSize:o,denseByteStride:s}=this._getComponentInfo(r),i=this.json.bufferViews[r.bufferView],u=await this.getBuffer(i.buffer,t),l=i.byteStride||s;return{raw:u.buffer,byteStride:l,byteOffset:u.byteOffset+(i.byteOffset||0)+(r.byteOffset||0),entryCount:r.count,isDenselyPacked:l===s,componentCount:n,componentByteSize:o,componentType:r.componentType,min:r.min,max:r.max,normalized:!!r.normalized}}async getIndexData(e,t,r){if(null==e.indices)return;const n=e.indices,o=r?this.getDracoAccessor(n,r):await this.getAccessor(n,t);if(o.isDenselyPacked)switch(o.componentType){case O.pe.UNSIGNED_BYTE:return new Uint8Array(o.raw,o.byteOffset,o.entryCount);case O.pe.UNSIGNED_SHORT:return new Uint16Array(o.raw,o.byteOffset,o.entryCount);case O.pe.UNSIGNED_INT:return new Uint32Array(o.raw,o.byteOffset,o.entryCount)}else switch(o.componentType){case O.pe.UNSIGNED_BYTE:return(0,h.m)(M(m.SL,o));case O.pe.UNSIGNED_SHORT:return(0,h.m)(M(m.h,o));case O.pe.UNSIGNED_INT:return(0,h.m)(M(m.P,o))}}async getPositionData(e,t,r){if(null==e.attributes.POSITION)throw new a.A("gltf-loader-unsupported-feature","No POSITION vertex data found.");const n=e.attributes.POSITION,s=r?this.getDracoAccessor(n,r):await this.getAccessor(n,t);if(s.componentType!==O.pe.FLOAT)throw new a.A("gltf-loader-unsupported-feature","Expected type FLOAT for POSITION vertex attribute, but found "+(0,o.i7)(O.pe,s.componentType));if(3!==s.componentCount)throw new a.A("gltf-loader-unsupported-feature","POSITION vertex attribute must have 3 components, but found "+s.componentCount.toFixed());return M(m.xs,s)}async getNormalData(e,t,r){if(null==e.attributes.NORMAL)throw new a.A("gltf-loader-error","No NORMAL vertex data found.");const n=e.attributes.NORMAL,s=r?this.getDracoAccessor(n,r):await this.getAccessor(n,t);if(s.componentType!==O.pe.FLOAT)throw new a.A("gltf-loader-unsupported-feature","Expected type FLOAT for NORMAL vertex attribute, but found "+(0,o.i7)(O.pe,s.componentType));if(3!==s.componentCount)throw new a.A("gltf-loader-unsupported-feature","NORMAL vertex attribute must have 3 components, but found "+s.componentCount.toFixed());return M(m.xs,s)}async getTangentData(e,t,r){if(null==e.attributes.TANGENT)throw new a.A("gltf-loader-error","No TANGENT vertex data found.");const n=e.attributes.TANGENT,s=r?this.getDracoAccessor(n,r):await this.getAccessor(n,t);if(s.componentType!==O.pe.FLOAT)throw new a.A("gltf-loader-unsupported-feature","Expected type FLOAT for TANGENT vertex attribute, but found "+(0,o.i7)(O.pe,s.componentType));if(4!==s.componentCount)throw new a.A("gltf-loader-unsupported-feature","TANGENT vertex attribute must have 4 components, but found "+s.componentCount.toFixed());return M(m.Eq,s)}async getTextureCoordinates(e,t,r){if(null==e.attributes.TEXCOORD_0)throw new a.A("gltf-loader-error","No TEXCOORD_0 vertex data found.");const n=e.attributes.TEXCOORD_0,o=r?this.getDracoAccessor(n,r):await this.getAccessor(n,t);if(2!==o.componentCount)throw new a.A("gltf-loader-unsupported-feature","TEXCOORD_0 vertex attribute must have 2 components, but found "+o.componentCount.toFixed());if(o.componentType===O.pe.FLOAT)return M(m.gH,o);if(!o.normalized)throw new a.A("gltf-loader-unsupported-feature","Integer component types are only supported for a normalized accessor for TEXCOORD_0.");return function(e){switch(e.componentType){case O.pe.BYTE:return new m.D6(e.raw,e.byteOffset,e.byteStride,e.byteOffset+e.byteStride*e.entryCount);case O.pe.UNSIGNED_BYTE:return new m.LC(e.raw,e.byteOffset,e.byteStride,e.byteOffset+e.byteStride*e.entryCount);case O.pe.SHORT:return new m.mJ(e.raw,e.byteOffset,e.byteStride,e.byteOffset+e.byteStride*e.entryCount);case O.pe.UNSIGNED_SHORT:return new m.Yi(e.raw,e.byteOffset,e.byteStride,e.byteOffset+e.byteStride*e.entryCount);case O.pe.UNSIGNED_INT:return new m.An(e.raw,e.byteOffset,e.byteStride,e.byteOffset+e.byteStride*e.entryCount);case O.pe.FLOAT:return new m.gH(e.raw,e.byteOffset,e.byteStride,e.byteOffset+e.byteStride*e.entryCount)}}(o)}async getVertexColors(e,t,r){if(null==e.attributes.COLOR_0)throw new a.A("gltf-loader-error","No COLOR_0 vertex data found.");const n=e.attributes.COLOR_0,s=r?this.getDracoAccessor(n,r):await this.getAccessor(n,t);if(4!==s.componentCount&&3!==s.componentCount)throw new a.A("gltf-loader-unsupported-feature","COLOR_0 attribute must have 3 or 4 components, but found "+s.componentCount.toFixed());if(4===s.componentCount){if(s.componentType===O.pe.FLOAT)return M(m.Eq,s);if(s.componentType===O.pe.UNSIGNED_BYTE)return M(m.XP,s);if(s.componentType===O.pe.UNSIGNED_SHORT)return M(m.Uz,s)}else if(3===s.componentCount){if(s.componentType===O.pe.FLOAT)return M(m.xs,s);if(s.componentType===O.pe.UNSIGNED_BYTE)return M(m.eI,s);if(s.componentType===O.pe.UNSIGNED_SHORT)return M(m.nS,s)}throw new a.A("gltf-loader-unsupported-feature","Unsupported component type for COLOR_0 attribute: "+(0,o.i7)(O.pe,s.componentType))}hasPositions(e){return void 0!==e.attributes.POSITION}hasNormals(e){return void 0!==e.attributes.NORMAL}hasVertexColors(e){return void 0!==e.attributes.COLOR_0}hasTextureCoordinates(e){return void 0!==e.attributes.TEXCOORD_0}hasTangents(e){return void 0!==e.attributes.TANGENT}async getMaterial(e,t,r,n){let o=e.material?this._materialCache.get(e.material):void 0;if(!o){const s=null!=e.material?S(this.json.materials[e.material]):S(),a=s.pbrMetallicRoughness,i=this.hasVertexColors(e),u=this.getTexture(a.baseColorTexture,t),l=this.getTexture(s.normalTexture,t),c=r?this.getTexture(s.occlusionTexture,t):void 0,f=n?this.getTexture(s.emissiveTexture,t):void 0,d=r?this.getTexture(a.metallicRoughnessTexture,t):void 0,p=null!=e.material?e.material:-1;o={alphaMode:s.alphaMode,alphaCutoff:s.alphaCutoff,color:a.baseColorFactor,doubleSided:!!s.doubleSided,colorTexture:await u,normalTexture:await l,name:s.name,id:p,occlusionTexture:await c,emissiveTexture:await f,emissiveFactor:s.emissiveFactor,emissiveStrengthKHR:s.extensions?.KHR_materials_emissive_strength?.emissiveStrength,metallicFactor:a.metallicFactor,roughnessFactor:a.roughnessFactor,metallicRoughnessTexture:await d,hasVertexColors:i,ESRI_externalColorMixMode:s.extras.ESRI_externalColorMixMode,colorTextureTransform:a?.baseColorTexture?.extensions?.KHR_texture_transform,normalTextureTransform:s.normalTexture?.extensions?.KHR_texture_transform,occlusionTextureTransform:s.occlusionTexture?.extensions?.KHR_texture_transform,emissiveTextureTransform:s.emissiveTexture?.extensions?.KHR_texture_transform,metallicRoughnessTextureTransform:a?.metallicRoughnessTexture?.extensions?.KHR_texture_transform,receiveAmbientOcclusion:s.extras.ESRI_receiveAmbientOcclusion,receiveShadows:s.extras.ESRI_receiveShadows}}return o}async decode(e,t){const r=e.extensions?.KHR_draco_mesh_compression;if(!r)return;if(null==e.indices)throw new a.A("gltf-loader-error","Found Draco compressed primitive without indices.");const n=this.json.bufferViews[r.bufferView],o=await this.getBuffer(n.buffer,t),s=(await T()).decode(new Uint8Array(o.buffer,o.byteOffset+(n.byteOffset||0),n.byteLength));this._bufferLoaders.delete(n.buffer);const i=new Map([[e.indices,s.indices],[e.attributes.POSITION,s.positions]]);return e.attributes.TEXCOORD_0&&i.set(e.attributes.TEXCOORD_0,s.uvs),e.attributes.NORMAL&&i.set(e.attributes.NORMAL,s.normals),e.attributes.COLOR_0&&i.set(e.attributes.COLOR_0,s.colors),e.attributes.TANGENT&&i.set(e.attributes.TANGENT,s.tangents),this._dracoBuffersSize+=s.buffer.byteLength,{data:s.buffer,accessorInfos:i}}async getTexture(e,t){if(!e)return;if(0!==(e.texCoord||0))throw new a.A("gltf-loader-unsupported-feature","Only TEXCOORD with index 0 is supported.");const r=e.index,n=this.json.textures[r],o=(e=>({...v,...e}))(null!=n.sampler?this.json.samplers[n.sampler]:{}),s=F(n),u=this.json.images[s],l=await this._loadTextureImageData(r,n,t);return(0,i.tE)(this._textureCache,r,()=>{const e=e=>33071===e||33648===e||10497===e,t=e=>{throw new a.A("gltf-loader-error",`Unexpected TextureSampler WrapMode: ${e}`)};return{data:l,wrapS:e(o.wrapS)?o.wrapS:t(o.wrapS),wrapT:e(o.wrapT)?o.wrapT:t(o.wrapT),minFilter:o.minFilter,name:u.name,id:r}})}getNodeTransform(e){if(void 0===e)return N;let t=this._nodeTransformCache.get(e);if(!t){const r=this.getNodeTransform(this._getNodeParent(e)),n=this.json.nodes[e];n.matrix?t=(0,f.lw)((0,s.vt)(),r,n.matrix):n.translation||n.rotation||n.scale?(t=(0,s.o8)(r),n.translation&&(0,f.Tl)(t,t,n.translation),n.rotation&&(I[3]=(0,d.Xd)(I,n.rotation),(0,f.e$)(t,t,I[3],I)),n.scale&&(0,f.hs)(t,t,n.scale)):t=(0,s.o8)(r),this._nodeTransformCache.set(e,t)}return t}_resolveUri(e){return(0,l.s2)(e,this._baseUri)}_getNodeParent(e){return this._nodeParentMap.get(e)}_checkVersionSupported(){const e=c.A.parse(this.json.asset.version,"glTF");E.validate(e)}_checkRequiredExtensionsSupported(){const e=this.json;if(e.extensionsRequired&&!e.extensionsRequired.every(e=>this._supportedExtensions.includes(e)))throw new a.A("gltf-loader-unsupported-feature","gltf loader was not able to load unsupported feature. Required extensions: "+e.extensionsRequired.join(", "))}_computeNodeParents(){this.json.nodes.forEach((e,t)=>{e.children&&e.children.forEach(e=>{this._nodeParentMap.set(e,t)})})}async _loadTextureImageData(e,t,r){const n=this._textureLoaders.get(e);if(n)return n;const o=this._createTextureLoader(t,r);return this._textureLoaders.set(e,o),o}async _createTextureLoader(e,t){const r=F(e),n=this.json.images[r];if(n.uri){if(n.uri.endsWith(".ktx2")){const e=await this._context.loadBinary(this._resolveUri(n.uri),t);return new A.Xi(new Uint8Array(e))}return this._context.loadImage(this._resolveUri(n.uri),t)}if(null==n.bufferView)throw new a.A("gltf-loader-unsupported-feature","Image bufferView must be defined.");if(null==n.mimeType)throw new a.A("gltf-loader-unsupported-feature","Image mimeType must be defined.");const o=this.json.bufferViews[n.bufferView],s=await this.getBuffer(o.buffer,t);if(null!=o.byteStride)throw new a.A("gltf-loader-unsupported-feature","byteStride not supported for image buffer");const i=s.byteOffset+(o.byteOffset||0);return(0,A.pn)(new Uint8Array(s.buffer,i,o.byteLength),n.mimeType)}async getLoadedBuffersSize(){if(this._glbBuffer)return this._glbBuffer.byteLength;const e=await(0,u.nA)(Array.from(this._bufferLoaders.values())),t=await(0,u.nA)(Array.from(this._textureLoaders.values()));return e.reduce((e,t)=>e+(t?.byteLength??0),0)+this._dracoBuffersSize+t.reduce((e,t)=>e+(t?(0,A.x3)(t)?t.data.byteLength:t.width*t.height*4:0),0)}}const N=(0,f.hM)((0,s.vt)(),Math.PI/2),E=new c.A(2,0,"glTF"),I=(0,p.vt)(),B={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},L={[O.pe.BYTE]:1,[O.pe.UNSIGNED_BYTE]:1,[O.pe.SHORT]:2,[O.pe.UNSIGNED_SHORT]:2,[O.pe.HALF_FLOAT]:2,[O.pe.FLOAT]:4,[O.pe.INT]:4,[O.pe.UNSIGNED_INT]:4};function M(e,t){return new e(t.raw,t.byteOffset,t.byteStride,t.byteOffset+t.byteStride*(t.entryCount-1)+t.componentByteSize*t.componentCount)}function F(e){if(null!=e.extensions?.KHR_texture_basisu)return e.extensions.KHR_texture_basisu.source;if(null!==e.source)return e.source;throw new a.A("gltf-loader-unsupported-feature","Source is expected to be defined for a texture. It can also be omitted in favour of an KHR_texture_basisu extension tag.")}const U=/\.gltf$/i,D=/\.glb$/i;let j=0;async function G(e,t,r={},a=!0,i=!0){const u=await C.load(e,t,r),l="gltf_"+j++,c={lods:[],materials:new Map,textures:new Map,meta:P(u)},f=!(!u.json.asset.extras||"symbolResource"!==u.json.asset.extras.ESRI_type),d=u.json.asset.extras?.ESRI_webstyleSymbol?.webstyle,p=new Map;let m=!1;await $(u,async(e,t,f,d)=>{const h=p.get(f)??0;p.set(f,h+1);const g=void 0!==e.mode?e.mode:O.WR.TRIANGLES,y=g===O.WR.TRIANGLES||g===O.WR.TRIANGLE_STRIP||g===O.WR.TRIANGLE_FAN?g:null;if(null==y)return void n.A.getLogger("esri.views.3d.glTF").warn("[Unsupported Feature] Unsupported primitive mode ("+(0,o.i7)(O.WR,g)+"). Skipping primitive.");if(!u.hasPositions(e))return void n.A.getLogger("esri.views.3d.glTF").warn("Skipping primitive without POSITION vertex attribute.");const T=await u.decode(e,r);m||=!!T;const w=u.getPositionData(e,r,T),x=u.getMaterial(e,r,a,i),b=u.hasNormals(e)?u.getNormalData(e,r,T):null,_=u.hasTangents(e)?u.getTangentData(e,r,T):null,S=u.hasTextureCoordinates(e)?u.getTextureCoordinates(e,r,T):null,v=u.hasVertexColors(e)?u.getVertexColors(e,r,T):null,A=u.getIndexData(e,r,T),R={name:d,transform:(0,s.o8)(t),attributes:{position:await w,normal:b?await b:null,texCoord0:S?await S:null,color:v?await v:null,tangent:_?await _:null},indices:await A,primitiveType:y,material:H(c,await x,l)};let C=null;null!=c.meta?.ESRI_lod&&"screenSpaceRadius"===c.meta.ESRI_lod.metric&&(C=c.meta.ESRI_lod.thresholds[f]),c.lods[f]=c.lods[f]||{parts:[],name:d,lodThreshold:C},c.lods[f].parts[h]=R});for(const e of c.lods)e.parts=e.parts.filter(e=>!!e);const h=await u.getLoadedBuffersSize();return{model:c,meta:{isEsriSymbolResource:f,uri:u.uri,ESRI_webstyle:d,isDracoDecompressed:m},customMeta:{},usedMemory:h}}function P(e){const t=e.json;let r=null;return t.nodes.forEach(e=>{const t=e.extras;null!=t&&(t.ESRI_proxyEllipsoid||t.ESRI_lod)&&(r=t)}),r}async function $(e,t){const r=e.json,o=r.scenes[r.scene||0].nodes,s=o.length>1,a=[];for(const e of o){const t=r.nodes[e];a.push(i(e,0)),k(t)&&!s&&t.extensions.MSFT_lod.ids.forEach((e,t)=>i(e,t+1))}async function i(o,s){const u=r.nodes[o],l=e.getNodeTransform(o);if(null!=u.weights&&n.A.getLogger("esri.views.3d.glTF").warn("[Unsupported Feature] Morph targets are not supported."),null!=u.mesh){const e=r.meshes[u.mesh];for(const r of e.primitives)a.push(t(r,l,s,e.name))}for(const e of u.children||[])a.push(i(e,s))}await Promise.all(a)}function k(e){return e.extensions?.MSFT_lod&&Array.isArray(e.extensions.MSFT_lod.ids)}function H(e,t,r){const n=t=>{const n=`${r}_tex_${t&&t.id}${t?.name?"_"+t.name:""}`;if(t&&!e.textures.has(n)){const r=function(e,t={}){return{data:e,parameters:{wrap:{s:10497,t:10497,...t.wrap},noUnpackFlip:!0,mipmap:!1,...t}}}(t.data,{wrap:{s:t.wrapS,t:t.wrapT},mipmap:z.has(t.minFilter),noUnpackFlip:!0});e.textures.set(n,r)}return n},o=`${r}_mat_${t.id}_${t.name}`;if(!e.materials.has(o)){const r=function(e={}){return{color:[1,1,1],opacity:1,alphaMode:"OPAQUE",alphaCutoff:.5,doubleSided:!1,castShadows:!0,receiveShadows:!0,receiveAmbientOcclusion:!0,colorTexture:null,normalTexture:null,occlusionTexture:null,emissiveTexture:null,emissiveStrengthKHR:null,metallicRoughnessTexture:null,colorTextureTransform:null,normalTextureTransform:null,occlusionTextureTransform:null,emissiveTextureTransform:null,metallicRoughnessTextureTransform:null,emissiveFactor:[0,0,0],metallicFactor:1,roughnessFactor:1,colorMixMode:"multiply",...e}}({color:[t.color[0],t.color[1],t.color[2]],opacity:t.color[3],alphaMode:t.alphaMode,alphaCutoff:t.alphaCutoff,doubleSided:t.doubleSided,colorMixMode:t.ESRI_externalColorMixMode,colorTexture:t.colorTexture?n(t.colorTexture):void 0,normalTexture:t.normalTexture?n(t.normalTexture):void 0,occlusionTexture:t.occlusionTexture?n(t.occlusionTexture):void 0,emissiveTexture:t.emissiveTexture?n(t.emissiveTexture):void 0,metallicRoughnessTexture:t.metallicRoughnessTexture?n(t.metallicRoughnessTexture):void 0,emissiveFactor:[t.emissiveFactor[0],t.emissiveFactor[1],t.emissiveFactor[2]],emissiveStrengthKHR:t.emissiveStrengthKHR,colorTextureTransform:t.colorTextureTransform,normalTextureTransform:t.normalTextureTransform,occlusionTextureTransform:t.occlusionTextureTransform,emissiveTextureTransform:t.emissiveTextureTransform,metallicRoughnessTextureTransform:t.metallicRoughnessTextureTransform,metallicFactor:t.metallicFactor,roughnessFactor:t.roughnessFactor,receiveShadows:t.receiveShadows,receiveAmbientOcclusion:t.receiveAmbientOcclusion});e.materials.set(o,r)}return o}const z=new Set([9987,9985])}}]);
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[5669,5841],{24045(e,t,r){function n(e,t){const r=e.count;t||(t=new e.TypedArrayConstructor(r));for(let n=0;n<r;n++)t[n]=e.get(n);return t}r.d(t,{m:()=>n}),Object.freeze(Object.defineProperty({__proto__:null,makeDense:n},Symbol.toStringTag,{value:"Module"}))},43609(e,t,r){r.d(t,{a:()=>s,f:()=>a,n:()=>o});var n=r(34275);function o(e,t){s(e.typedBuffer,t.typedBuffer,e.typedBufferStride,t.typedBufferStride)}function s(e,t,r=2,o=r){const s=t.length/2;let a=0,i=0;if(!(0,n.iu)(t)||(0,n.dk)(t)){for(let n=0;n<s;++n)e[a]=t[i],e[a+1]=t[i+1],a+=r,i+=o;return}const u=(0,n.a3)(t);if((0,n.JI)(t))for(let n=0;n<s;++n)e[a]=Math.max(t[i]/u,-1),e[a+1]=Math.max(t[i+1]/u,-1),a+=r,i+=o;else for(let n=0;n<s;++n)e[a]=t[i]/u,e[a+1]=t[i+1]/u,a+=r,i+=o}function a(e,t,r,n){const o=e.typedBuffer,s=e.typedBufferStride,a=n?.count??e.count;let i=(n?.dstIndex??0)*s;for(let e=0;e<a;++e)o[i]=t,o[i+1]=r,i+=s}Object.freeze(Object.defineProperty({__proto__:null,fill:a,normalizeIntegerBuffer:s,normalizeIntegerBufferView:o},Symbol.toStringTag,{value:"Module"}))},46140(e,t,r){r.d(t,{A:()=>o});var n=r(49186);class o{constructor(e,t,r=""){this.major=e,this.minor=t,this._context=r}lessThan(e,t){return this.major<e||e===this.major&&this.minor<t}greaterEqual(e,t){return!this.lessThan(e,t)}toString(){return`${this.major}.${this.minor}`}validate(e){if(this.major!==e.major){const t=this._context&&this._context+":",r=this._context&&this._context+" ";throw new n.A(t+"unsupported-version",`Required major ${r}version is '${this.major}', but got '\${version.major}.\${version.minor}'`,{version:e})}}clone(){return new o(this.major,this.minor,this._context)}static parse(e,t=""){const[r,s]=e.split("."),a=/^\s*\d+\s*$/;if(!r?.match||!a.test(r))throw new n.A((t&&t+":")+"invalid-version","Expected major version to be a number, but got '${version}'",{version:e});if(!s?.match||!a.test(s))throw new n.A((t&&t+":")+"invalid-version","Expected minor version to be a number, but got '${version}'",{version:e});const i=parseInt(r,10),u=parseInt(s,10);return new o(i,u,t)}}},35841(e,t,r){r.r(t),r.d(t,{loadGLTFMesh:()=>L});var n=r(68197),o=r(40876),s=r(49186),a=r(91869),i=r(34727),u=r(77690),l=r(29242),c=r(51850),f=r(91829),d=r(16939),p=r(80882),m=r(35063),h=r(51147),g=r(1193),y=r(27615),T=r(13030),w=r(73354),x=r(50867),b=r(90239);Object.freeze(Object.defineProperty({__proto__:null,copy:function(e,t,r){const n=e.typedBuffer,o=e.typedBufferStride,s=t.typedBuffer,a=t.typedBufferStride,i=r?r.count:t.count;let u=(r?.dstIndex??0)*o,l=(r?.srcIndex??0)*a;for(let e=0;e<i;++e){for(let e=0;e<9;++e)n[u+e]=s[l+e];u+=o,l+=a}}},Symbol.toStringTag,{value:"Module"})),Object.freeze(Object.defineProperty({__proto__:null,copy:function(e,t,r){const n=e.typedBuffer,o=e.typedBufferStride,s=t.typedBuffer,a=t.typedBufferStride,i=r?r.count:t.count;let u=(r?.dstIndex??0)*o,l=(r?.srcIndex??0)*a;for(let e=0;e<i;++e){for(let e=0;e<16;++e)n[u+e]=s[l+e];u+=o,l+=a}}},Symbol.toStringTag,{value:"Module"})),r(24045);var _=r(43609);function S(e,t,r=3,n=r){const o=t.length/n;let s=0,a=0;for(let i=0;i<o;++i)e[s]=t[a],e[s+1]=t[a+1],e[s+2]=t[a+2],s+=r,a+=n}function v(e,t,r,n,o){const s=e.typedBuffer,a=e.typedBufferStride,i=o?.count??e.count;let u=(o?.dstIndex??0)*a;for(let e=0;e<i;++e)s[u]=t,s[u+1]=r,s[u+2]=n,u+=a}function A(e,t,r=4){const n=t.typedBuffer,o=t.typedBufferStride,s=t.count;let a=0,i=0;for(let t=0;t<s;++t)e[a]=n[i],e[a+1]=n[i+1],e[a+2]=n[i+2],e[a+3]=n[i+3],a+=r,i+=o}function O(e,t,r,n,o,s){const a=e.typedBuffer,i=e.typedBufferStride,u=s?.count??e.count;let l=(s?.dstIndex??0)*i;for(let e=0;e<u;++e)a[l]=t,a[l+1]=r,a[l+2]=n,a[l+3]=o,l+=i}function R(e,t){return new e(new ArrayBuffer(t*e.ElementCount*(0,b.GJ)(e.ElementType)))}Object.freeze(Object.defineProperty({__proto__:null,copy:S,copyView:function(e,t){S(e.typedBuffer,t.typedBuffer,e.typedBufferStride,t.typedBufferStride)},fill:v},Symbol.toStringTag,{value:"Module"})),Object.freeze(Object.defineProperty({__proto__:null,copy:A,copyView:function(e,t){A(e.typedBuffer,t,e.typedBufferStride)},fill:O},Symbol.toStringTag,{value:"Module"}));var C=r(72258),N=r(21015),E=r(51698),I=r(84498),B=r(51530);async function L(e,t,r){const o=new N.R(r?.resolveFile),u=await(0,E.loadGLTF)(o,t,r),l=u.model,d=l.lods.shift(),w=new Map,x=new Map;l.textures.forEach((e,t)=>w.set(t,function(e){return new m.default({data:((0,B.x3)(e.data),e.data),wrap:j(e.parameters.wrap)})}(e))),l.materials.forEach((e,t)=>x.set(t,function(e,t){const r=new n.A(function(e,t){return(0,f.fA)(G(e[0]),G(e[1]),G(e[2]),t)}(e.color,e.opacity)),o=e.emissiveFactor?new n.A(function(e){return(0,c.fA)(G(e[0]),G(e[1]),G(e[2]))}(e.emissiveFactor)):null,s=e=>e?new h.A({scale:e.scale?[e.scale[0],e.scale[1]]:[1,1],rotation:(0,i.KJ)(e.rotation??0),offset:e.offset?[e.offset[0],e.offset[1]]:[0,0]}):null;return new p.A({color:r,colorTexture:t.get(e.colorTexture),normalTexture:t.get(e.normalTexture),emissiveColor:o,emissiveStrength:e.emissiveStrengthKHR,emissiveTexture:t.get(e.emissiveTexture),occlusionTexture:t.get(e.occlusionTexture),alphaMode:D(e.alphaMode),alphaCutoff:e.alphaCutoff,doubleSided:e.doubleSided,metallic:e.metallicFactor,roughness:e.roughnessFactor,metallicRoughnessTexture:t.get(e.metallicRoughnessTexture),colorTextureTransform:s(e.colorTextureTransform),normalTextureTransform:s(e.normalTextureTransform),occlusionTextureTransform:s(e.occlusionTextureTransform),emissiveTextureTransform:s(e.emissiveTextureTransform),metallicRoughnessTextureTransform:s(e.metallicRoughnessTextureTransform)})}(e,w)));const b=function(e){let t=0;const r={color:!1,tangent:!1,normal:!1,texCoord0:!1},n=new Map,o=new Map,s=[];for(const i of e.parts){const{position:e,normal:u,color:l,tangent:c,texCoord0:f}=i.attributes,d=`\n ${M(e,n)}/\n ${M(u,n)}/\n ${M(l,n)}/\n ${M(c,n)}/\n ${M(f,n)}/\n ${F(i.transform)}\n `;let p=!1;const m=(0,a.tE)(o,d,()=>(p=!0,{start:t,length:e.count}));p&&(t+=e.count),u&&(r.normal=!0),l&&(r.color=!0),c&&(r.tangent=!0),f&&(r.texCoord0=!0),s.push({gltf:i,writeVertices:p,region:m})}return{vertexAttributes:{position:R(T.Xm,t),normal:r.normal?R(T.xs,t):null,tangent:r.tangent?R(T.Eq,t):null,color:r.color?R(T.XP,t):null,texCoord0:r.texCoord0?R(T.gH,t):null},parts:s,components:[]}}(d);for(const e of b.parts)U(b,e,x);const{position:_,normal:S,tangent:v,color:A,texCoord0:O}=b.vertexAttributes,I=(0,y.TE)(e,r),L=e.spatialReference.isGeographic?(0,y.TE)(e):I,P=(0,C.UR)({vertexAttributes:{position:_.typedBuffer,normal:S?.typedBuffer,tangent:v?.typedBuffer},vertexSpace:L,spatialReference:e.spatialReference},I,{allowBufferReuse:!0,sourceUnit:r?.unitConversionDisabled?void 0:"meters"});if(!P)throw new s.A("load-gltf-mesh:vertex-space-projection",`Failed to load mesh from glTF because we could not convert the vertex space from ${L.type} to ${I.type}`);return{mesh:{transform:null,vertexSpace:I,components:b.components,spatialReference:e.spatialReference,vertexAttributes:new g.default({...P,color:A?.typedBuffer,uv:O?.typedBuffer})},meta:u.meta}}function M(e,t){if(null==e)return"-";const r=e.typedBuffer;return`${(0,a.tE)(t,r.buffer,()=>t.size)}/${r.byteOffset}/${r.byteLength}`}function F(e){return null!=e?e.toString():"-"}function U(e,t,r){t.writeVertices&&function(e,t){const{position:r,normal:n,tangent:o,color:s,texCoord0:a}=e.vertexAttributes,c=t.region.start,{attributes:f,transform:d}=t.gltf,p=f.position.count;if((0,w.c)(r.slice(c,p),f.position,d),null!=f.normal&&null!=n){const e=(0,u.Ge)((0,l.vt)(),d),t=n.slice(c,p);(0,w.d)(t,f.normal,e),(0,i.or)(e)&&(0,w.e)(t,t)}else null!=n&&v(n,0,0,1,{dstIndex:c,count:p});if(null!=f.tangent&&null!=o){const e=(0,u.z0)((0,l.vt)(),d),t=o.slice(c,p);(0,x.a)(t,f.tangent,e),(0,i.or)(e)&&(0,x.n)(t,t)}else null!=o&&O(o,0,0,1,1,{dstIndex:c,count:p});if(null!=f.texCoord0&&null!=a?(0,_.n)(a.slice(c,p),f.texCoord0):null!=a&&(0,_.f)(a,0,0,{dstIndex:c,count:p}),null!=f.color&&null!=s){const e=f.color,t=s.slice(c,p);if(4===e.elementCount)e instanceof T.Eq?(0,x.l)(t,e,1,255):(e instanceof T.XP||e instanceof T.Uz)&&(0,x.l)(t,e,1/255,255);else{O(t,255,255,255,255);const r=T.eI.fromTypedArray(t.typedBuffer,t.typedBufferStride);e instanceof T.xs?(0,w.l)(r,e,1,255):(e instanceof T.eI||e instanceof T.nS)&&(0,w.l)(r,e,1/255,255)}}else null!=s&&O(s.slice(c,p),255,255,255,255)}(e,t);const{indices:n,attributes:o,primitiveType:s,material:a}=t.gltf;let c=(0,I.x)(n||o.position.count,s);const f=t.region.start;if(f){const e=new Uint32Array(c);for(let t=0;t<c.length;t++)e[t]+=f;c=e}e.components.push(new d.default({name:t.gltf.name,faces:c,material:r.get(a),shading:o.normal?"source":"flat",trustSourceNormals:!0}))}function D(e){switch(e){case"OPAQUE":return"opaque";case"MASK":return"mask";case"BLEND":return"blend"}}function j(e){return{horizontal:P(e.s),vertical:P(e.t)}}function P(e){switch(e){case 33071:return"clamp";case 33648:return"mirror";case 10497:return"repeat"}}function G(e){return e**(1/o.Tf)*255}},21015(e,t,r){r.d(t,{R:()=>u});var n=r(11254),o=r(60999),s=r(49186),a=r(17676),i=r(84952);class u{constructor(e=e=>e){this._resolveURI=e}async loadJSON(e,t){return this._load("json",e,t)}async loadBinary(e,t){return(0,i.DB)(e)?((0,a.Te)(t),(0,i.lJ)(e)):this._load("array-buffer",e,t)}async loadImage(e,t){return this._load("image",e,t)}async _load(e,t,r){t=this._resolveURI(t);const i=await(0,o.Ke)((0,n.A)(t,{responseType:e,...r}));if(i.ok)return i.value.data;throw(0,a.QP)(i.error),new s.A("gltf-loader-request-error",`Request for resource failed: ${i.error}`)}}},84498(e,t,r){r.d(t,{x:()=>a});var n=r(34275),o=r(97146),s=r(63907);function a(e,t){switch(t){case s.WR.TRIANGLES:return function(e){return"number"==typeof e?(0,o.tM)(e):(0,n.mg)(e)?new Uint16Array(e):e}(e);case s.WR.TRIANGLE_STRIP:return function(e){const t="number"==typeof e?e:e.length;if(t<3)return[];const r=t-2,n=(0,o.my)(3*r);if("number"==typeof e){let e=0;for(let t=0;t<r;t+=1)t%2==0?(n[e++]=t,n[e++]=t+1,n[e++]=t+2):(n[e++]=t+1,n[e++]=t,n[e++]=t+2)}else{let t=0;for(let o=0;o<r;o+=1)o%2==0?(n[t++]=e[o],n[t++]=e[o+1],n[t++]=e[o+2]):(n[t++]=e[o+1],n[t++]=e[o],n[t++]=e[o+2])}return n}(e);case s.WR.TRIANGLE_FAN:return function(e){const t="number"==typeof e?e:e.length;if(t<3)return new Uint16Array(0);const r=t-2,n=r<=65536?new Uint16Array(3*r):new Uint32Array(3*r);if("number"==typeof e){let e=0;for(let t=0;t<r;++t)n[e++]=0,n[e++]=t+1,n[e++]=t+2;return n}const o=e[0];let s=e[1],a=0;for(let t=0;t<r;++t){const r=e[t+2];n[a++]=o,n[a++]=s,n[a++]=r,s=r}return n}(e)}}},51530(e,t,r){r.d(t,{KB:()=>a,Xi:()=>o,pn:()=>i,x3:()=>s});var n=r(44208);class o{constructor(e){this.data=e,this.type="encoded-mesh-texture",this.encoding="image/ktx2"}}function s(e){return"encoded-mesh-texture"===e?.type}async function a(e){const t=new Blob([e]),r=await t.text();return JSON.parse(r)}async function i(e,t){if("image/ktx2"===t)return new o(e);const r=new Blob([e],{type:t});let s=URL.createObjectURL(r);switch(t){case"image/jpeg":s+="#.jpg";break;case"image/png":s+="#.png"}const a=new Image;if((0,n.A)("esri-iPhone"))return new Promise((e,t)=>{const r=()=>{o(),e(a)},n=e=>{o(),t(e)},o=()=>{URL.revokeObjectURL(s),a.removeEventListener("load",r),a.removeEventListener("error",n)};a.addEventListener("load",r),a.addEventListener("error",n),a.src=s});try{a.src=s,await a.decode()}catch{}return URL.revokeObjectURL(s),a}},51698(e,t,r){r.d(t,{loadGLTF:()=>P});var n=r(53966),o=r(93637),s=r(9093),a=r(49186),i=r(91869),u=r(17676),l=r(84952),c=r(46140),f=r(58083),d=r(67026),p=r(82534),m=r(13030),h=r(24045),g=r(2741);let y;function T(){return y??=(async()=>{const{default:e}=await r.e(2423).then(r.bind(r,2423));return await e({locateFile:e=>(0,g.s)(`esri/libs/dracoMeshDecoder/${e}`)})})(),y}class w{constructor(e){this._data=e,this._offset4=0,this._dataUint32=new Uint32Array(this._data,0,Math.floor(this._data.byteLength/4))}readUint32(){const e=this._offset4;return this._offset4+=1,this._dataUint32[e]}readUint8Array(e){const t=4*this._offset4;return this._offset4+=e/4,new Uint8Array(this._data,t,e)}remainingBytes(){return this._data.byteLength-4*this._offset4}}const x={baseColorFactor:[1,1,1,1],metallicFactor:1,roughnessFactor:1},b={pbrMetallicRoughness:x,emissiveFactor:[0,0,0],alphaMode:"OPAQUE",alphaCutoff:.5,doubleSided:!1},_={ESRI_externalColorMixMode:"tint",ESRI_receiveShadows:!0,ESRI_receiveAmbientOcclusion:!0},S=(e={})=>{const t={...x,...e.pbrMetallicRoughness},r=function(e){switch(e.ESRI_externalColorMixMode){case"multiply":case"tint":case"ignore":case"replace":break;default:e.ESRI_externalColorMixMode,e.ESRI_externalColorMixMode="tint"}return e}({..._,...e.extras});return{...b,...e,pbrMetallicRoughness:t,extras:r}},v={magFilter:9729,minFilter:9987,wrapS:10497,wrapT:10497};var A=r(51530),O=r(63907);const R=1179937895;class C{constructor(e,t,r,n){if(this._context=e,this.uri=t,this.json=r,this._glbBuffer=n,this._bufferLoaders=new Map,this._textureLoaders=new Map,this._dracoBuffersSize=0,this._textureCache=new Map,this._materialCache=new Map,this._nodeParentMap=new Map,this._nodeTransformCache=new Map,this._supportedExtensions=["KHR_texture_basisu","KHR_texture_transform","KHR_draco_mesh_compression","KHR_materials_emissive_strength"],this._baseUri=function(e){let t,r;return e.replace(/^(.*\/)?([^/]*)$/,(e,n,o)=>(t=n||"",r=o||"","")),{dirPart:t,filePart:r}}(this.uri).dirPart,this._checkVersionSupported(),this._checkRequiredExtensionsSupported(),null==r.scenes)throw new a.A("gltf-loader-unsupported-feature","Scenes must be defined.");if(null==r.meshes)throw new a.A("gltf-loader-unsupported-feature","Meshes must be defined");if(null==r.nodes)throw new a.A("gltf-loader-unsupported-feature","Nodes must be defined.");this._computeNodeParents()}static async load(e,t,r){if((0,l.DB)(t)){const r=(0,l.r$)(t);if(r&&"model/gltf-binary"!==r.mediaType)try{const n=JSON.parse(r.isBase64?atob(r.data):r.data);return new C(e,t,n)}catch{}const n=(0,l.lJ)(t);if(C._isGLBData(n))return this._fromGLBData(e,t,n)}if(U.test(t)||"gltf"===r?.expectedType){const n=await e.loadJSON(t,r);return new C(e,t,n)}const n=await e.loadBinary(t,r);if(C._isGLBData(n))return this._fromGLBData(e,t,n);if(D.test(t)||"glb"===r?.expectedType)throw new a.A("gltf-loader-invalid-glb","This is not a valid glb file.");const o=await e.loadJSON(t,r);return new C(e,t,o)}static _isGLBData(e){if(null==e)return!1;const t=new w(e);return t.remainingBytes()>=4&&t.readUint32()===R}static async _fromGLBData(e,t,r){const n=await C._parseGLBData(r);return new C(e,t,n.json,n.binaryData)}static async _parseGLBData(e){const t=new w(e);if(t.remainingBytes()<12)throw new a.A("gltf-loader-error","glb binary data is insufficiently large.");const r=t.readUint32(),o=t.readUint32(),s=t.readUint32();if(r!==R)throw new a.A("gltf-loader-error","Magic first 4 bytes do not fit to expected glb value.");if(e.byteLength<s)throw new a.A("gltf-loader-error","glb binary data is smaller than header specifies.");if(2!==o)throw new a.A("gltf-loader-unsupported-feature","An unsupported glb container version was detected. Only version 2 is supported.");let i,u,l=0;for(;t.remainingBytes()>=8;){const e=t.readUint32(),r=t.readUint32();if(0===l){if(1313821514!==r)throw new a.A("gltf-loader-error","First glb chunk must be JSON.");if(e<0)throw new a.A("gltf-loader-error","No JSON data found.");i=await(0,A.KB)(t.readUint8Array(e))}else if(1===l){if(5130562!==r)throw new a.A("gltf-loader-unsupported-feature","Second glb chunk expected to be BIN.");u=t.readUint8Array(e)}else n.A.getLogger("esri.views.3d.glTF").warn("[Unsupported Feature] More than 2 glb chunks detected. Skipping.");l+=1}if(!i)throw new a.A("gltf-loader-error","No glb JSON chunk detected.");return{json:i,binaryData:u}}async getBuffer(e,t){const r=this.json.buffers[e];if(null==r.uri){if(null==this._glbBuffer)throw new a.A("gltf-loader-error","glb buffer not present");return this._glbBuffer}const n=await this._getBufferLoader(e,t);if(n.byteLength!==r.byteLength)throw new a.A("gltf-loader-error","Buffer byte lengths should match.");return n}async _getBufferLoader(e,t){const r=this._bufferLoaders.get(e);if(r)return r;const n=this.json.buffers[e].uri,o=this._context.loadBinary(this._resolveUri(n),t).then(e=>new Uint8Array(e));return this._bufferLoaders.set(e,o),o}_validateAccessor(e){if(!this.json.accessors)throw new a.A("gltf-loader-unsupported-feature","Accessors missing.");const t=this.json.accessors[e];if(t.type in["MAT2","MAT3","MAT4"])throw new a.A("gltf-loader-unsupported-feature",`AttributeType ${t.type} is not supported`);return t}_getComponentInfo(e,t){const r=B[e.type],n=t?.componentType||e.componentType,o=L[n];return{componentType:n,componentCount:r,componentByteSize:o,denseByteStride:r*o}}getDracoAccessor(e,t){const r=this._validateAccessor(e),n=t.accessorInfos.get(e),{componentType:o,componentCount:s,componentByteSize:a,denseByteStride:i}=this._getComponentInfo(r,n);return{raw:t.data.buffer,byteStride:i,byteOffset:t.data.byteOffset+(n?.byteOffset||0),entryCount:n?.count??r.count,isDenselyPacked:!0,componentCount:s,componentByteSize:a,componentType:o,min:r.min,max:r.max,normalized:!!r.normalized}}async getAccessor(e,t){const r=this._validateAccessor(e);if(null==r?.bufferView)throw new a.A("gltf-loader-unsupported-feature","Some accessor does not specify a bufferView.");const{componentCount:n,componentByteSize:o,denseByteStride:s}=this._getComponentInfo(r),i=this.json.bufferViews[r.bufferView],u=await this.getBuffer(i.buffer,t),l=i.byteStride||s;return{raw:u.buffer,byteStride:l,byteOffset:u.byteOffset+(i.byteOffset||0)+(r.byteOffset||0),entryCount:r.count,isDenselyPacked:l===s,componentCount:n,componentByteSize:o,componentType:r.componentType,min:r.min,max:r.max,normalized:!!r.normalized}}async getIndexData(e,t,r){if(null==e.indices)return;const n=e.indices,o=r?this.getDracoAccessor(n,r):await this.getAccessor(n,t);if(o.isDenselyPacked)switch(o.componentType){case O.pe.UNSIGNED_BYTE:return new Uint8Array(o.raw,o.byteOffset,o.entryCount);case O.pe.UNSIGNED_SHORT:return new Uint16Array(o.raw,o.byteOffset,o.entryCount);case O.pe.UNSIGNED_INT:return new Uint32Array(o.raw,o.byteOffset,o.entryCount)}else switch(o.componentType){case O.pe.UNSIGNED_BYTE:return(0,h.m)(M(m.SL,o));case O.pe.UNSIGNED_SHORT:return(0,h.m)(M(m.h,o));case O.pe.UNSIGNED_INT:return(0,h.m)(M(m.P,o))}}async getPositionData(e,t,r){if(null==e.attributes.POSITION)throw new a.A("gltf-loader-unsupported-feature","No POSITION vertex data found.");const n=e.attributes.POSITION,s=r?this.getDracoAccessor(n,r):await this.getAccessor(n,t);if(s.componentType!==O.pe.FLOAT)throw new a.A("gltf-loader-unsupported-feature","Expected type FLOAT for POSITION vertex attribute, but found "+(0,o.i7)(O.pe,s.componentType));if(3!==s.componentCount)throw new a.A("gltf-loader-unsupported-feature","POSITION vertex attribute must have 3 components, but found "+s.componentCount.toFixed());return M(m.xs,s)}async getNormalData(e,t,r){if(null==e.attributes.NORMAL)throw new a.A("gltf-loader-error","No NORMAL vertex data found.");const n=e.attributes.NORMAL,s=r?this.getDracoAccessor(n,r):await this.getAccessor(n,t);if(s.componentType!==O.pe.FLOAT)throw new a.A("gltf-loader-unsupported-feature","Expected type FLOAT for NORMAL vertex attribute, but found "+(0,o.i7)(O.pe,s.componentType));if(3!==s.componentCount)throw new a.A("gltf-loader-unsupported-feature","NORMAL vertex attribute must have 3 components, but found "+s.componentCount.toFixed());return M(m.xs,s)}async getTangentData(e,t,r){if(null==e.attributes.TANGENT)throw new a.A("gltf-loader-error","No TANGENT vertex data found.");const n=e.attributes.TANGENT,s=r?this.getDracoAccessor(n,r):await this.getAccessor(n,t);if(s.componentType!==O.pe.FLOAT)throw new a.A("gltf-loader-unsupported-feature","Expected type FLOAT for TANGENT vertex attribute, but found "+(0,o.i7)(O.pe,s.componentType));if(4!==s.componentCount)throw new a.A("gltf-loader-unsupported-feature","TANGENT vertex attribute must have 4 components, but found "+s.componentCount.toFixed());return M(m.Eq,s)}async getTextureCoordinates(e,t,r){if(null==e.attributes.TEXCOORD_0)throw new a.A("gltf-loader-error","No TEXCOORD_0 vertex data found.");const n=e.attributes.TEXCOORD_0,o=r?this.getDracoAccessor(n,r):await this.getAccessor(n,t);if(2!==o.componentCount)throw new a.A("gltf-loader-unsupported-feature","TEXCOORD_0 vertex attribute must have 2 components, but found "+o.componentCount.toFixed());if(o.componentType===O.pe.FLOAT)return M(m.gH,o);if(!o.normalized)throw new a.A("gltf-loader-unsupported-feature","Integer component types are only supported for a normalized accessor for TEXCOORD_0.");return function(e){switch(e.componentType){case O.pe.BYTE:return new m.D6(e.raw,e.byteOffset,e.byteStride,e.byteOffset+e.byteStride*e.entryCount);case O.pe.UNSIGNED_BYTE:return new m.LC(e.raw,e.byteOffset,e.byteStride,e.byteOffset+e.byteStride*e.entryCount);case O.pe.SHORT:return new m.mJ(e.raw,e.byteOffset,e.byteStride,e.byteOffset+e.byteStride*e.entryCount);case O.pe.UNSIGNED_SHORT:return new m.Yi(e.raw,e.byteOffset,e.byteStride,e.byteOffset+e.byteStride*e.entryCount);case O.pe.UNSIGNED_INT:return new m.An(e.raw,e.byteOffset,e.byteStride,e.byteOffset+e.byteStride*e.entryCount);case O.pe.FLOAT:return new m.gH(e.raw,e.byteOffset,e.byteStride,e.byteOffset+e.byteStride*e.entryCount)}}(o)}async getVertexColors(e,t,r){if(null==e.attributes.COLOR_0)throw new a.A("gltf-loader-error","No COLOR_0 vertex data found.");const n=e.attributes.COLOR_0,s=r?this.getDracoAccessor(n,r):await this.getAccessor(n,t);if(4!==s.componentCount&&3!==s.componentCount)throw new a.A("gltf-loader-unsupported-feature","COLOR_0 attribute must have 3 or 4 components, but found "+s.componentCount.toFixed());if(4===s.componentCount){if(s.componentType===O.pe.FLOAT)return M(m.Eq,s);if(s.componentType===O.pe.UNSIGNED_BYTE)return M(m.XP,s);if(s.componentType===O.pe.UNSIGNED_SHORT)return M(m.Uz,s)}else if(3===s.componentCount){if(s.componentType===O.pe.FLOAT)return M(m.xs,s);if(s.componentType===O.pe.UNSIGNED_BYTE)return M(m.eI,s);if(s.componentType===O.pe.UNSIGNED_SHORT)return M(m.nS,s)}throw new a.A("gltf-loader-unsupported-feature","Unsupported component type for COLOR_0 attribute: "+(0,o.i7)(O.pe,s.componentType))}hasPositions(e){return void 0!==e.attributes.POSITION}hasNormals(e){return void 0!==e.attributes.NORMAL}hasVertexColors(e){return void 0!==e.attributes.COLOR_0}hasTextureCoordinates(e){return void 0!==e.attributes.TEXCOORD_0}hasTangents(e){return void 0!==e.attributes.TANGENT}async getMaterial(e,t,r,n){let o=e.material?this._materialCache.get(e.material):void 0;if(!o){const s=null!=e.material?S(this.json.materials[e.material]):S(),a=s.pbrMetallicRoughness,i=this.hasVertexColors(e),u=this.getTexture(a.baseColorTexture,t),l=this.getTexture(s.normalTexture,t),c=r?this.getTexture(s.occlusionTexture,t):void 0,f=n?this.getTexture(s.emissiveTexture,t):void 0,d=r?this.getTexture(a.metallicRoughnessTexture,t):void 0,[p,m,h,g,y]=await Promise.all([u,l,c,f,d]),T=null!=e.material?e.material:-1;o={alphaMode:s.alphaMode,alphaCutoff:s.alphaCutoff,color:a.baseColorFactor,doubleSided:!!s.doubleSided,colorTexture:p,normalTexture:m,name:s.name,id:T,occlusionTexture:h,emissiveTexture:g,emissiveFactor:s.emissiveFactor,emissiveStrengthKHR:s.extensions?.KHR_materials_emissive_strength?.emissiveStrength,metallicFactor:a.metallicFactor,roughnessFactor:a.roughnessFactor,metallicRoughnessTexture:y,hasVertexColors:i,ESRI_externalColorMixMode:s.extras.ESRI_externalColorMixMode,colorTextureTransform:a?.baseColorTexture?.extensions?.KHR_texture_transform,normalTextureTransform:s.normalTexture?.extensions?.KHR_texture_transform,occlusionTextureTransform:s.occlusionTexture?.extensions?.KHR_texture_transform,emissiveTextureTransform:s.emissiveTexture?.extensions?.KHR_texture_transform,metallicRoughnessTextureTransform:a?.metallicRoughnessTexture?.extensions?.KHR_texture_transform,receiveAmbientOcclusion:s.extras.ESRI_receiveAmbientOcclusion,receiveShadows:s.extras.ESRI_receiveShadows}}return o}async decode(e,t){const r=e.extensions?.KHR_draco_mesh_compression;if(!r)return;if(null==e.indices)throw new a.A("gltf-loader-error","Found Draco compressed primitive without indices.");const n=this.json.bufferViews[r.bufferView],o=await this.getBuffer(n.buffer,t),s=(await T()).decode(new Uint8Array(o.buffer,o.byteOffset+(n.byteOffset||0),n.byteLength));this._bufferLoaders.delete(n.buffer);const i=new Map([[e.indices,s.indices],[e.attributes.POSITION,s.positions]]);return e.attributes.TEXCOORD_0&&i.set(e.attributes.TEXCOORD_0,s.uvs),e.attributes.NORMAL&&i.set(e.attributes.NORMAL,s.normals),e.attributes.COLOR_0&&i.set(e.attributes.COLOR_0,s.colors),e.attributes.TANGENT&&i.set(e.attributes.TANGENT,s.tangents),this._dracoBuffersSize+=s.buffer.byteLength,{data:s.buffer,accessorInfos:i}}async getTexture(e,t){if(!e)return;if(0!==(e.texCoord||0))throw new a.A("gltf-loader-unsupported-feature","Only TEXCOORD with index 0 is supported.");const r=e.index,n=this.json.textures[r],o=(e=>({...v,...e}))(null!=n.sampler?this.json.samplers[n.sampler]:{}),s=F(n),u=this.json.images[s],l=await this._loadTextureImageData(r,n,t);return(0,i.tE)(this._textureCache,r,()=>{const e=e=>33071===e||33648===e||10497===e,t=e=>{throw new a.A("gltf-loader-error",`Unexpected TextureSampler WrapMode: ${e}`)};return{data:l,wrapS:e(o.wrapS)?o.wrapS:t(o.wrapS),wrapT:e(o.wrapT)?o.wrapT:t(o.wrapT),minFilter:o.minFilter,name:u.name,id:r}})}getNodeTransform(e){if(void 0===e)return N;let t=this._nodeTransformCache.get(e);if(!t){const r=this.getNodeTransform(this._getNodeParent(e)),n=this.json.nodes[e];n.matrix?t=(0,f.lw)((0,s.vt)(),r,n.matrix):n.translation||n.rotation||n.scale?(t=(0,s.o8)(r),n.translation&&(0,f.Tl)(t,t,n.translation),n.rotation&&(I[3]=(0,d.Xd)(I,n.rotation),(0,f.e$)(t,t,I[3],I)),n.scale&&(0,f.hs)(t,t,n.scale)):t=(0,s.o8)(r),this._nodeTransformCache.set(e,t)}return t}_resolveUri(e){return(0,l.s2)(e,this._baseUri)}_getNodeParent(e){return this._nodeParentMap.get(e)}_checkVersionSupported(){const e=c.A.parse(this.json.asset.version,"glTF");E.validate(e)}_checkRequiredExtensionsSupported(){const e=this.json;if(e.extensionsRequired&&!e.extensionsRequired.every(e=>this._supportedExtensions.includes(e)))throw new a.A("gltf-loader-unsupported-feature","gltf loader was not able to load unsupported feature. Required extensions: "+e.extensionsRequired.join(", "))}_computeNodeParents(){this.json.nodes.forEach((e,t)=>{e.children&&e.children.forEach(e=>{this._nodeParentMap.set(e,t)})})}async _loadTextureImageData(e,t,r){const n=this._textureLoaders.get(e);if(n)return n;const o=this._createTextureLoader(t,r);return this._textureLoaders.set(e,o),o}async _createTextureLoader(e,t){const r=F(e),n=this.json.images[r];if(n.uri){if(n.uri.endsWith(".ktx2")){const e=await this._context.loadBinary(this._resolveUri(n.uri),t);return new A.Xi(new Uint8Array(e))}return this._context.loadImage(this._resolveUri(n.uri),t)}if(null==n.bufferView)throw new a.A("gltf-loader-unsupported-feature","Image bufferView must be defined.");if(null==n.mimeType)throw new a.A("gltf-loader-unsupported-feature","Image mimeType must be defined.");const o=this.json.bufferViews[n.bufferView],s=await this.getBuffer(o.buffer,t);if(null!=o.byteStride)throw new a.A("gltf-loader-unsupported-feature","byteStride not supported for image buffer");const i=s.byteOffset+(o.byteOffset||0);return(0,A.pn)(new Uint8Array(s.buffer,i,o.byteLength),n.mimeType)}async getLoadedBuffersSize(){if(this._glbBuffer)return this._glbBuffer.byteLength;const e=await(0,u.nA)(Array.from(this._bufferLoaders.values())),t=await(0,u.nA)(Array.from(this._textureLoaders.values()));return e.reduce((e,t)=>e+(t?.byteLength??0),0)+this._dracoBuffersSize+t.reduce((e,t)=>e+(t?(0,A.x3)(t)?t.data.byteLength:t.width*t.height*4:0),0)}}const N=(0,f.hM)((0,s.vt)(),Math.PI/2),E=new c.A(2,0,"glTF"),I=(0,p.vt)(),B={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},L={[O.pe.BYTE]:1,[O.pe.UNSIGNED_BYTE]:1,[O.pe.SHORT]:2,[O.pe.UNSIGNED_SHORT]:2,[O.pe.HALF_FLOAT]:2,[O.pe.FLOAT]:4,[O.pe.INT]:4,[O.pe.UNSIGNED_INT]:4};function M(e,t){return new e(t.raw,t.byteOffset,t.byteStride,t.byteOffset+t.byteStride*(t.entryCount-1)+t.componentByteSize*t.componentCount)}function F(e){if(null!=e.extensions?.KHR_texture_basisu)return e.extensions.KHR_texture_basisu.source;if(null!==e.source)return e.source;throw new a.A("gltf-loader-unsupported-feature","Source is expected to be defined for a texture. It can also be omitted in favour of an KHR_texture_basisu extension tag.")}const U=/\.gltf$/i,D=/\.glb$/i;let j=0;async function P(e,t,r={},a=!0,i=!0){const u=await C.load(e,t,r),l="gltf_"+j++,c={lods:[],materials:new Map,textures:new Map,meta:G(u)},f=!(!u.json.asset.extras||"symbolResource"!==u.json.asset.extras.ESRI_type),d=u.json.asset.extras?.ESRI_webstyleSymbol?.webstyle,p=new Map;let m=!1;await $(u,async(e,t,f,d)=>{const h=p.get(f)??0;p.set(f,h+1);const g=void 0!==e.mode?e.mode:O.WR.TRIANGLES,y=g===O.WR.TRIANGLES||g===O.WR.TRIANGLE_STRIP||g===O.WR.TRIANGLE_FAN?g:null;if(null==y)return void n.A.getLogger("esri.views.3d.glTF").warn("[Unsupported Feature] Unsupported primitive mode ("+(0,o.i7)(O.WR,g)+"). Skipping primitive.");if(!u.hasPositions(e))return void n.A.getLogger("esri.views.3d.glTF").warn("Skipping primitive without POSITION vertex attribute.");const T=await u.decode(e,r);m||=!!T;const w=u.getPositionData(e,r,T),x=u.getMaterial(e,r,a,i),b=u.hasNormals(e)?u.getNormalData(e,r,T):null,_=u.hasTangents(e)?u.getTangentData(e,r,T):null,S=u.hasTextureCoordinates(e)?u.getTextureCoordinates(e,r,T):null,v=u.hasVertexColors(e)?u.getVertexColors(e,r,T):null,A=u.getIndexData(e,r,T),[R,C,N,E,I,B,L]=await Promise.all([w,b,S,v,_,A,x]),M={name:d,transform:(0,s.o8)(t),attributes:{position:R,normal:C,texCoord0:N,color:E,tangent:I},indices:B,primitiveType:y,material:H(c,L,l)};let F=null;null!=c.meta?.ESRI_lod&&"screenSpaceRadius"===c.meta.ESRI_lod.metric&&(F=c.meta.ESRI_lod.thresholds[f]),c.lods[f]=c.lods[f]||{parts:[],name:d,lodThreshold:F},c.lods[f].parts[h]=M});for(const e of c.lods)e.parts=e.parts.filter(e=>!!e);const h=await u.getLoadedBuffersSize();return{model:c,meta:{isEsriSymbolResource:f,uri:u.uri,ESRI_webstyle:d,isDracoDecompressed:m},customMeta:{},usedMemory:h}}function G(e){const t=e.json;let r=null;return t.nodes.forEach(e=>{const t=e.extras;null!=t&&(t.ESRI_proxyEllipsoid||t.ESRI_lod)&&(r=t)}),r}async function $(e,t){const r=e.json,o=r.scenes[r.scene||0].nodes,s=o.length>1,a=[];for(const e of o){const t=r.nodes[e];a.push(i(e,0)),k(t)&&!s&&t.extensions.MSFT_lod.ids.forEach((e,t)=>a.push(i(e,t+1)))}async function i(o,s){const u=r.nodes[o],l=e.getNodeTransform(o);if(null!=u.weights&&n.A.getLogger("esri.views.3d.glTF").warn("[Unsupported Feature] Morph targets are not supported."),null!=u.mesh){const e=r.meshes[u.mesh];for(const r of e.primitives)a.push(t(r,l,s,e.name))}for(const e of u.children||[])a.push(i(e,s))}await Promise.all(a)}function k(e){return e.extensions?.MSFT_lod&&Array.isArray(e.extensions.MSFT_lod.ids)}function H(e,t,r){const n=t=>{const n=`${r}_tex_${t&&t.id}${t?.name?"_"+t.name:""}`;if(t&&!e.textures.has(n)){const r=function(e,t={}){return{data:e,parameters:{wrap:{s:10497,t:10497,...t.wrap},noUnpackFlip:!0,mipmap:!1,...t}}}(t.data,{wrap:{s:t.wrapS,t:t.wrapT},mipmap:z.has(t.minFilter),noUnpackFlip:!0});e.textures.set(n,r)}return n},o=`${r}_mat_${t.id}_${t.name}`;if(!e.materials.has(o)){const r=function(e={}){return{color:[1,1,1],opacity:1,alphaMode:"OPAQUE",alphaCutoff:.5,doubleSided:!1,castShadows:!0,receiveShadows:!0,receiveAmbientOcclusion:!0,colorTexture:null,normalTexture:null,occlusionTexture:null,emissiveTexture:null,emissiveStrengthKHR:null,metallicRoughnessTexture:null,colorTextureTransform:null,normalTextureTransform:null,occlusionTextureTransform:null,emissiveTextureTransform:null,metallicRoughnessTextureTransform:null,emissiveFactor:[0,0,0],metallicFactor:1,roughnessFactor:1,colorMixMode:"multiply",...e}}({color:[t.color[0],t.color[1],t.color[2]],opacity:t.color[3],alphaMode:t.alphaMode,alphaCutoff:t.alphaCutoff,doubleSided:t.doubleSided,colorMixMode:t.ESRI_externalColorMixMode,colorTexture:t.colorTexture?n(t.colorTexture):void 0,normalTexture:t.normalTexture?n(t.normalTexture):void 0,occlusionTexture:t.occlusionTexture?n(t.occlusionTexture):void 0,emissiveTexture:t.emissiveTexture?n(t.emissiveTexture):void 0,metallicRoughnessTexture:t.metallicRoughnessTexture?n(t.metallicRoughnessTexture):void 0,emissiveFactor:[t.emissiveFactor[0],t.emissiveFactor[1],t.emissiveFactor[2]],emissiveStrengthKHR:t.emissiveStrengthKHR,colorTextureTransform:t.colorTextureTransform,normalTextureTransform:t.normalTextureTransform,occlusionTextureTransform:t.occlusionTextureTransform,emissiveTextureTransform:t.emissiveTextureTransform,metallicRoughnessTextureTransform:t.metallicRoughnessTextureTransform,metallicFactor:t.metallicFactor,roughnessFactor:t.roughnessFactor,receiveShadows:t.receiveShadows,receiveAmbientOcclusion:t.receiveAmbientOcclusion});e.materials.set(o,r)}return o}const z=new Set([9987,9985])}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1199],{68197(e,t,r){r.d(t,{A:()=>u});var i=r(40876),n=r(4576),s=r(34727),o=r(56507);function a(e){return(0,s.qE)((0,o.Vr)(e),0,255)}function l(e,t){const r=e.toString(16).padStart(2,"0");return t?r.slice(0,1):r}class u{static blendColors(e,t,r,i=new u){return i.r=Math.round(e.r+(t.r-e.r)*r),i.g=Math.round(e.g+(t.g-e.g)*r),i.b=Math.round(e.b+(t.b-e.b)*r),i.a=e.a+(t.a-e.a)*r,i._sanitize()}static fromRgb(e,t){const r=(0,i.lT)(e);return r?u.fromArray(r,t):null}static fromHex(e,t=new u){const r=(0,i.oW)(e);return r?u.fromArray(r,t):null}static fromArray(e,t=new u){return t._set(Number(e[0]),Number(e[1]),Number(e[2]),Number(e[3])),isNaN(t.a)&&(t.a=1),t._sanitize()}static fromString(e,t){const r=(0,i.Eq)(e);return r?u.fromArray(r,t):null}static fromJSON(e){return null!=e?new u([e[0],e[1],e[2],(e[3]??255)/255]):void 0}toUnitRGB(){return[this.r/255,this.g/255,this.b/255]}toUnitRGBA(e){return e??=[0,0,0,0],e[0]=this.r/255,e[1]=this.g/255,e[2]=this.b/255,e[3]=null!=this.a?this.a:1,e}constructor(e){this.r=255,this.g=255,this.b=255,this.a=1,e&&this.setColor(e)}get isBright(){return.299*this.r+.587*this.g+.114*this.b>=127}setColor(e){if("string"==typeof e)u.fromString(e,this);else if((0,n.yc)(e))u.fromArray(e,this);else{const t=e;this._set(t.r??0,t.g??0,t.b??0,t.a??1),e instanceof u||this._sanitize()}return this}toRgb(){return[this.r,this.g,this.b]}toRgba(){return[this.r,this.g,this.b,this.a]}toHex(e){const t=e?.capitalize??!1,r=e?.digits??6,i=3===r||4===r,n=4===r||8===r,s=`#${l(this.r,i)}${l(this.g,i)}${l(this.b,i)}${n?l(Math.round(255*this.a),i):""}`;return t?s.toUpperCase():s}toCss(e=!1){const t=this.r+", "+this.g+", "+this.b;return e?`rgba(${t}, ${this.a})`:`rgb(${t})`}toString(){return this.toCss(!0)}toJSON(){return this.toArray()}toArray(e=0){const t=a(this.r),r=a(this.g),i=a(this.b);return 0===e||1!==this.a?[t,r,i,a(255*this.a)]:[t,r,i]}clone(){return new u(this.toRgba())}hash(){return this.r<<24|this.g<<16|this.b<<8|255*this.a}equals(e){return null!=e&&e.r===this.r&&e.g===this.g&&e.b===this.b&&e.a===this.a}_sanitize(){return this.r=(0,i.c1)(this.r),this.g=(0,i.c1)(this.g),this.b=(0,i.c1)(this.b),this.a=(0,i.G1)(this.a),this}_set(e,t,r,i){this.r=e,this.g=t,this.b=r,this.a=i}}u.prototype.declaredClass="esri.Color"},52106(e,t,r){r.d(t,{A:()=>v});var i,n,s=r(5482),o=r(37838),a=r(69540),l=r(51447),u=r(25482),c=r(53966),h=r(36708),d=r(24326),p=r(91429),f=r(12195),y=r(65864),m=r(50498),g=r(55156),b=r(60950),M=r(54339),_=r(94128),w=r(33910);function C(e){if(null==e)return null;const t={};for(const r in e){const i=e[r];i&&(t[r]=i.toJSON())}return 0!==Object.keys(t).length?t:null}let v=class extends((0,a.OU)(u.o)){static{i=_.Z}static{n=this}constructor(e){super(e),this[i]=!0,this.distance=null,this.isAggregate=!1,this.layer=null,this.origin=null,this.sourceLayer=null,this.statisticsAggregatedIds=void 0,this._version=0,Object.defineProperty(this,"uid",{value:(0,d.c)(),configurable:!0}),Object.defineProperty(this,"_lastMeshTransform",{value:{},configurable:!0,writable:!0,enumerable:!1}),arguments.length>1&&(0,l.eF)(c.A.getLogger(this),"Graphic",{version:"4.30"})}initialize(){this._watchMeshGeometryChanges()}set aggregateGeometries(e){const t=this._get("aggregateGeometries");JSON.stringify(t)!==JSON.stringify(e)&&this._set("aggregateGeometries",e)}set attributes(e){const t=this._get("attributes");t!==e&&(this._set("attributes",e),this._notifyLayer("attributes",t,e))}set geometry(e){const t=this._get("geometry");t!==e&&(this._set("geometry",e),"mesh"!==e?.type&&this._notifyLayer("geometry",t,e))}set popupTemplate(e){const t=this._get("popupTemplate");t!==e&&(this._set("popupTemplate",e),this._notifyLayer("popupTemplate",t,e))}set symbol(e){const t=this._get("symbol");t!==e&&(this._set("symbol",e),this._notifyLayer("symbol",t,e))}get version(){return this._version}set visible(e){const t=this._get("visible");t!==e&&(this._set("visible",e),this._notifyLayer("visible",t,e))}cloneShallow(){return new n({aggregateGeometries:this.aggregateGeometries,statisticsAggregatedIds:this.statisticsAggregatedIds,attributes:this.attributes,geometry:this.geometry,isAggregate:this.isAggregate,layer:this.layer,popupTemplate:this.popupTemplate,sourceLayer:this.sourceLayer,symbol:this.symbol,visible:this.visible,origin:this.origin})}getEffectivePopupTemplate(e=!1){if(this.popupTemplate)return this.popupTemplate;const t=(0,b.E_)(this.origin);if(t)return t.popupTemplate??(e?t.defaultPopupTemplate:null)??null;const r=this.origin&&"layer"in this.origin?this.origin.layer:null;for(const t of[r,this.sourceLayer,this.layer])if(t&&"object"==typeof t){if("popupTemplate"in t&&t.popupTemplate)return t.popupTemplate;if(e&&"defaultPopupTemplate"in t&&null!=t.defaultPopupTemplate)return t.defaultPopupTemplate}return null}getAttribute(e){return this.attributes?.[e]}setAttribute(e,t){if(this.attributes){const r=this.getAttribute(e);this.attributes[e]=t,this._notifyLayer("attributes",r,t,e)}else this.attributes={[e]:t}}getObjectId(){const e=(0,g.I)(this.origin);if(e)return(0,M.r)(this,e);const t=this.sourceLayer??this.layer;return t?(0,M.r)(this,t):null}getGlobalId(){const e=(0,g.I)(this.origin);if(e?.globalIdField)return this.getAttribute(e.globalIdField);const t=this.sourceLayer??this.layer;return t&&"globalIdField"in t&&t.globalIdField?this.getAttribute(t.globalIdField):null}toJSON(){const e={aggregateGeometries:C(this.aggregateGeometries),geometry:this.geometry?.toJSON()??null,symbol:this.symbol?.toJSON()??null,attributes:(0,f.W)(this.attributes)?this.attributes.toJSON():{...this.attributes},popupTemplate:this.popupTemplate?.toJSON()??null};return this.statisticsAggregatedIds?.length&&(e.aggregateIds=[...this.statisticsAggregatedIds]),null!=this.distance&&(e.distance=this.distance),e}notifyMeshTransformChanged(e={}){const{geometry:t}=this;if("mesh"===t?.type){const r={origin:t.origin,transform:t.transform};this._notifyLayer("origin-transform",r,r,e.action)}}_notifyLayer(e,t,r,i){if(this._version++,!this.layer||!("graphicChanged"in this.layer))return;const n={graphic:this,property:e,oldValue:t,newValue:r};"origin-transform"===e&&(n.action=i),"attributes"===e&&(n.attributeName=i),this.layer.graphicChanged(n)}_watchMeshGeometryChanges(){this.addHandles([(0,h.z7)(()=>"mesh"===this.geometry?.type&&this.geometry.vertexSpace.origin?{localMatrix:this.geometry.transform?.localMatrix,origin:this.geometry.vertexSpace.origin}:void 0,({localMatrix:e,origin:t})=>{this._lastMeshTransform.localMatrix===e&&this._lastMeshTransform.origin===t||(this._lastMeshTransform.localMatrix=e,this._lastMeshTransform.origin=t,this.notifyMeshTransformChanged())}),(0,h.z7)(()=>"mesh"===this.geometry?.type?{vertexAttributes:this.geometry.vertexAttributes}:void 0,()=>{const e=this.geometry;"mesh"===e?.type&&e.vertexSpace.origin?(this._lastMeshTransform.localMatrix=e.transform?.localMatrix,this._lastMeshTransform.origin=e.vertexSpace.origin):(this._lastMeshTransform.localMatrix=void 0,this._lastMeshTransform.origin=void 0),this._notifyLayer("geometry",this.geometry,this.geometry)},{equals:(e,t)=>e===t,sync:!0})])}};(0,s.Cg)([(0,p.MZ)({value:null,json:{read:function(e){if(!e)return null;const t={};for(const r in e){const i=(0,y.rS)(e[r]);i&&(t[r]=i)}return 0!==Object.keys(t).length?t:null}}})],v.prototype,"aggregateGeometries",null),(0,s.Cg)([(0,p.MZ)({value:null})],v.prototype,"attributes",null),(0,s.Cg)([(0,p.MZ)({value:null,types:m.yR,json:{read:y.rS}})],v.prototype,"geometry",null),(0,s.Cg)([(0,p.MZ)()],v.prototype,"distance",void 0),(0,s.Cg)([(0,p.MZ)({type:Boolean})],v.prototype,"isAggregate",void 0),(0,s.Cg)([(0,p.MZ)({clonable:!1})],v.prototype,"layer",void 0),(0,s.Cg)([(0,p.MZ)({clonable:"reference"})],v.prototype,"origin",void 0),(0,s.Cg)([(0,p.MZ)({type:o.A,value:null})],v.prototype,"popupTemplate",null),(0,s.Cg)([(0,p.MZ)({clonable:"reference"})],v.prototype,"sourceLayer",void 0),(0,s.Cg)([(0,p.MZ)({json:{name:"aggregateIds",read:e=>e?.map(e=>Array.isArray(e)?JSON.stringify(e):e)}})],v.prototype,"statisticsAggregatedIds",void 0),(0,s.Cg)([(0,p.MZ)({value:null,types:w.Es})],v.prototype,"symbol",null),(0,s.Cg)([(0,p.MZ)({clonable:!1,json:{read:!1,write:!1}})],v.prototype,"_version",void 0),(0,s.Cg)([(0,p.MZ)({type:Boolean,value:!0})],v.prototype,"visible",null),v=n=(0,s.Cg)([(0,p.$K)("esri.Graphic")],v)},40876(e,t,r){r.d(t,{Eq:()=>p,G1:()=>y,TS:()=>s,Tf:()=>b,V6:()=>n,Vm:()=>f,ay:()=>l,c1:()=>m,c4:()=>o,iw:()=>M,j5:()=>u,lT:()=>h,oW:()=>c,xV:()=>_});const i={transparent:[0,0,0,0],black:[0,0,0,1],silver:[192,192,192,1],gray:[128,128,128,1],white:[255,255,255,1],maroon:[128,0,0,1],red:[255,0,0,1],purple:[128,0,128,1],fuchsia:[255,0,255,1],green:[0,128,0,1],lime:[0,255,0,1],olive:[128,128,0,1],yellow:[255,255,0,1],navy:[0,0,128,1],blue:[0,0,255,1],teal:[0,128,128,1],aqua:[0,255,255,1],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],blanchedalmond:[255,235,205,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],oldlace:[253,245,230,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],rebeccapurple:[102,51,153,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],whitesmoke:[245,245,245,1],yellowgreen:[154,205,50,1]};function n(e){return!!i[e]||!!i[e.toLowerCase()]}function s(e){return i[e]??i[e.toLowerCase()]}function o(e){return[...s(e)]}function a(e,t,r){r<0&&++r,r>1&&--r;const i=6*r;return i<1?e+(t-e)*i:2*r<1?t:3*r<2?e+(t-e)*(2/3-r)*6:e}function l(e,t,r,i=1){const n=(e%360+360)%360/360,s=r<=.5?r*(t+1):r+t-r*t,o=2*r-s;return[Math.round(255*a(o,s,n+1/3)),Math.round(255*a(o,s,n)),Math.round(255*a(o,s,n-1/3)),i]}function u(e){const t=e.length>5,r=t?8:4,i=(1<<r)-1,n=t?1:17,s=t?9===e.length:5===e.length;let o=Number("0x"+e.slice(1));if(isNaN(o))return null;const a=[0,0,0,1];let l;return s&&(l=o&i,o>>=r,a[3]=n*l/255),l=o&i,o>>=r,a[2]=n*l,l=o&i,o>>=r,a[1]=n*l,l=o&i,o>>=r,a[0]=n*l,a}function c(e){if(!e.startsWith("#")||isNaN(Number(`0x${e.slice(1)}`)))return null;switch(e.length){case 4:case 5:{const t=parseInt(e.slice(1,2),16),r=parseInt(e.slice(2,3),16),i=parseInt(e.slice(3,4),16),n=4===e.length?15:parseInt(e.slice(4),16);return[t+16*t,r+16*r,i+16*i,(n+16*n)/255]}case 7:case 9:return[parseInt(e.slice(1,3),16),parseInt(e.slice(3,5),16),parseInt(e.slice(5,7),16),(7===e.length?255:parseInt(e.slice(7),16))/255];default:return null}}function h(e){const t=e.toLowerCase().match(/^(rgba?|hsla?)\(([\s.\-,%0-9]+)\)/);if(t){const e=t[2].split(/\s*,\s*/),r=t[1];if("rgb"===r&&3===e.length||"rgba"===r&&4===e.length){if(e[0].endsWith("%")){const t=e.map(e=>2.56*parseFloat(e));return 4===e.length&&(t[3]=parseFloat(e[3])),d(t)}return d(e.map(e=>parseFloat(e)))}if("hsl"===r&&3===e.length||"hsla"===r&&4===e.length)return l(parseFloat(e[0]),parseFloat(e[1])/100,parseFloat(e[2])/100,parseFloat(e[3]??"1"))}return null}function d(e){return e[0]=m(e[0]),e[1]=m(e[1]),e[2]=m(e[2]),e[3]=4===e.length?y(e[3]):1,e}function p(e){let t=n(e)?s(e):null;return t??=h(e),t??=c(e),t}function f(e){const t=p(e);return null!=t?[t[0]/255,t[1]/255,t[2]/255,t[3]]:null}function y(e){return g(e,0,1)}function m(e){return Math.round(g(e,0,255))}function g(e,t,r){return e=Number(e),isNaN(e)?r:e<t?t:e>r?r:e}const b=2.2,M=1/b;function _(e){return e**M}},66344(e,t,r){r.d(t,{q:()=>a});const i=!!(0,r(44208).A)("esri-tests-disable-gpu-memory-measurements");Symbol.iterator;class n{get size(){return this._size}constructor(e=10485760,t=.3){this._maxSize=e,this._maxClientSizeRatio=t,this._db=new Map,this._size=0,this._hit=0,this._miss=0,this._clients=new Map,this._sizeLimits=new Map}destroy(){this.clearAll(),this._sizeLimits.clear(),this._clients.clear(),this._db.clear()}register(e){this._clients.set(e.id.slice(0,-1),e)}deregister(e){this.clear(e),this._sizeLimits.delete(e),this._clients.delete(e.id.slice(0,-1))}get maxSize(){return this._maxSize}set maxSize(e){this._maxSize=Math.max(e,-1),this._checkSize()}get _maxClientSize(){return this._maxSize*this._maxClientSizeRatio}getSize(e,t){const r=this._db.get(e.id+t);return r?.size??0}put(e,t,r,n,o){t=e.id+t;const a=this._db.get(t);if(a&&(this._size-=a.size,e.size-=a.size,this._db.delete(t),a.entry!==r&&this._notifyRemove(t,a.entry,a.size,0)),n>this._maxSize)return void this._notifyRemove(t,r,n,0);if(void 0===r)return void console.warn("Refusing to cache undefined entry ");if(!n||n<0)return i||console.warn(`Refusing to cache entry with size ${n} for key ${t}`),void this._notifyRemove(t,r,0,0);const l=1+Math.max(o,-4)- -3;this._db.set(t,new s(r,n,l)),this._size+=n,e.size+=n,this._checkSize()}updateSize(e,t){t=e.id+t;const r=this._db.get(t);if(!r)return;this._size-=r.size,e.size-=r.size;let i=r.entry.usedMemory;for(;i>this._maxSize;){const e=this._notifyRemove(t,r.entry,i,1);if(!(null!=e&&e>0))return void this._db.delete(t);i=e}r.size=i,this._size+=i,e.size+=i,this._checkSize()}pop(e,t){t=e.id+t;const r=this._db.get(t);if(r)return this._size-=r.size,e.size-=r.size,this._db.delete(t),++this._hit,r.entry;++this._miss}get(e,t){t=e.id+t;const r=this._db.get(t);if(void 0!==r)return this._db.delete(t),r.lives=r.lifetime,this._db.set(t,r),++this._hit,r.entry;++this._miss}peek(e,t){const r=this._db.get(e.id+t);return r?++this._hit:++this._miss,r?.entry}get performanceInfo(){const e={Size:Math.round(this._size/1048576)+"/"+Math.round(this._maxSize/1048576)+"MB","Hit rate":Math.round(100*this._getHitRate())+"%",Entries:this._db.size.toString()},t={},r=new Array;this._db.forEach((e,i)=>{const n=e.lifetime;r[n]=(r[n]||0)+e.size,this._clients.forEach(r=>{const{id:n,name:s}=r;if(i.startsWith(n)){const r=t[s]||0;t[s]=r+e.size}})});const i={};this._clients.forEach(e=>{const r=e.name;if("hitRate"in e&&"number"==typeof e.hitRate&&!isNaN(e.hitRate)&&e.hitRate>0){const n=t[r]||0;t[r]=n,i[r]=Math.round(100*e.hitRate)+"%"}else i[r]="0%"});const n=Object.keys(t);n.sort((e,r)=>t[r]-t[e]),n.forEach(r=>e[r]=Math.round(t[r]/2**20)+"MB / "+i[r]);for(let t=r.length-1;t>=0;--t){const i=r[t];i&&(e["Priority "+(t+-3-1)]=Math.round(i/this._size*100)+"%")}return e}resetStats(){this._hit=this._miss=0,this._clients.forEach(e=>e.resetHitRate())}clear(e){const t=e.id;this._db.forEach((e,r)=>{r.startsWith(t)&&(this._size-=e.size,this._db.delete(r),this._notifyRemove(r,e.entry,e.size,0))}),e.size=0}clearAll(){this._db.forEach((e,t)=>this._notifyRemove(t,e.entry,e.size,0)),this._clients.forEach(e=>e.size=0),this._size=0,this._db.clear()}*values(e){for(const[t,r]of this._db)t.startsWith(e.id)&&(yield r.entry)}_getHitRate(){return this._hit/(this._hit+this._miss)}_notifyRemove(e,t,r,i){const n=this._clients.get(e.split(o)[0])?.removeFunc,s=n?.(t,i,r);return"number"==typeof s?s:null}_checkSize(){this._sizeLimits.forEach((e,t)=>this._checkSizeLimits(e,t)),this._clients.forEach(e=>this._checkSizeLimits(this._maxClientSize,e)),this._checkSizeLimits(this.maxSize)}setMaxClientSize(e,t){null==t||t<=0?this._sizeLimits.delete(e):this._sizeLimits.set(e,t)}_checkSizeLimits(e,t){const r=t??this;if(r.size<=e)return;const i=t?.id;let n=!0;for(;n;){n=!1;for(const[s,a]of this._db)if(0===a.lifetime&&(!i||s.startsWith(i))){const i=t??this._clients.get(s.split(o)[0]);if(this._purgeItem(s,a,i),r.size<=.9*e)return;n||=this._db.has(s)}}for(const[n,s]of this._db)if(!i||n.startsWith(i)){const i=t??this._clients.get(n.split(o)[0]);if(this._purgeItem(n,s,i),r.size<=.9*e)return}}_purgeItem(e,t,r){if(this._db.delete(e),t.lives<=1){this._size-=t.size,r&&(r.size-=t.size);const i=this._notifyRemove(e,t.entry,t.size,1);null!=i&&i>0&&(this._size+=i,r&&(r.size+=i),t.lives=t.lifetime,t.size=i,this._db.set(e,t))}else--t.lives,this._db.set(e,t)}}new n(0);class s{constructor(e,t,r){this.entry=e,this.size=t,this.lifetime=r,this.lives=r}}const o=":";class a{constructor(e,t){this.removeFunc=t,this.id="",this.name="",this.size=0,this._storage=new n(e,1),this._storage.register(this)}destroy(){this._storage.deregister(this),this._storage.destroy()}put(e,t,r=1){this._storage.put(this,e,t,r,1)}pop(e){return this._storage.pop(this,e)}get(e){return this._storage.get(this,e)}clear(){this._storage.clearAll()}get maxSize(){return this._storage.maxSize}set maxSize(e){this._storage.maxSize=e}resetHitRate(){}}},46140(e,t,r){r.d(t,{A:()=>n});var i=r(49186);class n{constructor(e,t,r=""){this.major=e,this.minor=t,this._context=r}lessThan(e,t){return this.major<e||e===this.major&&this.minor<t}greaterEqual(e,t){return!this.lessThan(e,t)}toString(){return`${this.major}.${this.minor}`}validate(e){if(this.major!==e.major){const t=this._context&&this._context+":",r=this._context&&this._context+" ";throw new i.A(t+"unsupported-version",`Required major ${r}version is '${this.major}', but got '\${version.major}.\${version.minor}'`,{version:e})}}clone(){return new n(this.major,this.minor,this._context)}static parse(e,t=""){const[r,s]=e.split("."),o=/^\s*\d+\s*$/;if(!r?.match||!o.test(r))throw new i.A((t&&t+":")+"invalid-version","Expected major version to be a number, but got '${version}'",{version:e});if(!s?.match||!o.test(s))throw new i.A((t&&t+":")+"invalid-version","Expected minor version to be a number, but got '${version}'",{version:e});const a=parseInt(r,10),l=parseInt(s,10);return new n(a,l,t)}}},6797(e,t,r){r.d(t,{Ui:()=>d});var i=r(69622),n=r(7762),s=r(88620);const o=new Set(["esri.Color","esri.portal.Portal","esri.symbols.support.Symbol3DAnchorPosition2D","esri.symbols.support.Symbol3DAnchorPosition3D"]);function a(e){return e instanceof i.A}function l(e){return e instanceof n.A?Object.keys(e.items):a(e)?(0,s.oY)(e).keys():e?Object.keys(e):[]}function u(e,t){return e instanceof n.A?e.items[t]:e[t]}function c(e){return e?e.declaredClass:null}function h(e,t){const r=e.diff;if(r&&"function"==typeof r)return r(e,t);const i=l(e),n=l(t);if(0===i.length&&0===n.length)return;if(!i.length||!n.length||function(e,t){return!(!Array.isArray(e)||!Array.isArray(t))&&e.length!==t.length}(e,t))return{type:"complete",oldValue:e,newValue:t};const s=n.filter(e=>!i.includes(e)),d=i.filter(e=>!n.includes(e)),p=i.filter(r=>n.includes(r)&&u(e,r)!==u(t,r)).concat(s,d).sort(),f=c(e);if(f&&o.has(f)&&p.length)return{type:"complete",oldValue:e,newValue:t};let y;const m=a(e)&&a(t);for(const i of p){const n=u(e,i),s=u(t,i);let o;if((m||"function"!=typeof n&&"function"!=typeof s)&&n!==s&&(null!=n||null!=s)){if(r&&r[i]&&"function"==typeof r[i])o=r[i]?.(n,s);else if(n instanceof Date&&s instanceof Date){if(n.getTime()===s.getTime())continue;o={type:"complete",oldValue:n,newValue:s}}else o="object"==typeof n&&"object"==typeof s&&c(n)===c(s)?h(n,s):{type:"complete",oldValue:n,newValue:s};null!=o&&(null!=y?y.diff[i]=o:y={type:"partial",diff:{[i]:o}})}}return y}function d(e,t){if("function"!=typeof e&&"function"!=typeof t&&(null!=e||null!=t))return null==e||null==t||"object"==typeof e&&"object"==typeof t&&c(e)!==c(t)?{type:"complete",oldValue:e,newValue:t}:h(e,t)}},91829(e,t,r){function i(){return[0,0,0,0]}function n(e,t,r,i){return[e,t,r,i]}function s(e,t,r,i){return[e,t,r,i]}function o(){return n(1,1,1,1)}function a(){return n(1,0,0,0)}function l(){return n(0,1,0,0)}function u(){return n(0,0,1,0)}function c(){return n(0,0,0,1)}r.d(t,{CN:()=>s,Un:()=>d,_Y:()=>c,fA:()=>n,uY:()=>h,vt:()=>i});const h=[0,0,0,0],d=o(),p=a(),f=l(),y=u(),m=c();Object.freeze(Object.defineProperty({__proto__:null,ONES:d,UNIT_W:m,UNIT_X:p,UNIT_Y:f,UNIT_Z:y,ZEROS:h,clone:function(e){return[e[0],e[1],e[2],e[3]]},create:i,freeze:s,fromArray:function(e,t=[0,0,0,0]){const r=Math.min(4,e.length);for(let i=0;i<r;++i)t[i]=e[i];return t},fromValues:n,ones:o,unitW:c,unitX:a,unitY:l,unitZ:u,zeros:function(){return[0,0,0,0]}},Symbol.toStringTag,{value:"Module"}))},78955(e,t,r){r.d(t,{Bw:()=>m,C:()=>n,Cc:()=>_,LI:()=>d,Om:()=>M,S8:()=>b,T9:()=>h,WQ:()=>o,Z0:()=>w,aI:()=>v,hG:()=>y,hZ:()=>s,hs:()=>p,jk:()=>c,m3:()=>g,t2:()=>C});var i=r(34304);function n(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e}function s(e,t,r,i,n){return e[0]=t,e[1]=r,e[2]=i,e[3]=n,e}function o(e,t,r){return e[0]=t[0]+r[0],e[1]=t[1]+r[1],e[2]=t[2]+r[2],e[3]=t[3]+r[3],e}function a(e,t,r){return e[0]=t[0]-r[0],e[1]=t[1]-r[1],e[2]=t[2]-r[2],e[3]=t[3]-r[3],e}function l(e,t,r){return e[0]=t[0]*r[0],e[1]=t[1]*r[1],e[2]=t[2]*r[2],e[3]=t[3]*r[3],e}function u(e,t,r){return e[0]=t[0]/r[0],e[1]=t[1]/r[1],e[2]=t[2]/r[2],e[3]=t[3]/r[3],e}function c(e,t,r){return e[0]=Math.min(t[0],r[0]),e[1]=Math.min(t[1],r[1]),e[2]=Math.min(t[2],r[2]),e[3]=Math.min(t[3],r[3]),e}function h(e,t,r){return e[0]=Math.max(t[0],r[0]),e[1]=Math.max(t[1],r[1]),e[2]=Math.max(t[2],r[2]),e[3]=Math.max(t[3],r[3]),e}function d(e,t){return e[0]=Math.round(t[0]),e[1]=Math.round(t[1]),e[2]=Math.round(t[2]),e[3]=Math.round(t[3]),e}function p(e,t,r){return e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e[3]=t[3]*r,e}function f(e,t){const r=t[0]-e[0],i=t[1]-e[1],n=t[2]-e[2],s=t[3]-e[3];return Math.sqrt(r*r+i*i+n*n+s*s)}function y(e,t){const r=t[0]-e[0],i=t[1]-e[1],n=t[2]-e[2],s=t[3]-e[3];return r*r+i*i+n*n+s*s}function m(e){const t=e[0],r=e[1],i=e[2],n=e[3];return Math.sqrt(t*t+r*r+i*i+n*n)}function g(e){const t=e[0],r=e[1],i=e[2],n=e[3];return t*t+r*r+i*i+n*n}function b(e,t){const r=t[0],i=t[1],n=t[2],s=t[3];let o=r*r+i*i+n*n+s*s;return o>0&&(o=1/Math.sqrt(o),e[0]=r*o,e[1]=i*o,e[2]=n*o,e[3]=s*o),e}function M(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]+e[3]*t[3]}function _(e,t,r,i){const n=t[0],s=t[1],o=t[2],a=t[3];return e[0]=n+i*(r[0]-n),e[1]=s+i*(r[1]-s),e[2]=o+i*(r[2]-o),e[3]=a+i*(r[3]-a),e}function w(e,t,r){const i=t[0],n=t[1],s=t[2],o=t[3];return e[0]=r[0]*i+r[4]*n+r[8]*s+r[12]*o,e[1]=r[1]*i+r[5]*n+r[9]*s+r[13]*o,e[2]=r[2]*i+r[6]*n+r[10]*s+r[14]*o,e[3]=r[3]*i+r[7]*n+r[11]*s+r[15]*o,e}function C(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]}function v(e,t){const r=e[0],n=e[1],s=e[2],o=e[3],a=t[0],l=t[1],u=t[2],c=t[3],h=(0,i.FD)();return Math.abs(r-a)<=h*Math.max(1,Math.abs(r),Math.abs(a))&&Math.abs(n-l)<=h*Math.max(1,Math.abs(n),Math.abs(l))&&Math.abs(s-u)<=h*Math.max(1,Math.abs(s),Math.abs(u))&&Math.abs(o-c)<=h*Math.max(1,Math.abs(o),Math.abs(c))}const S=a,I=l,x=u,z=f,A=y,T=m,k=g;Object.freeze(Object.defineProperty({__proto__:null,add:o,ceil:function(e,t){return e[0]=Math.ceil(t[0]),e[1]=Math.ceil(t[1]),e[2]=Math.ceil(t[2]),e[3]=Math.ceil(t[3]),e},copy:n,copyVec3:function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e},dist:z,distance:f,div:x,divide:u,dot:M,equals:v,exactEquals:C,floor:function(e,t){return e[0]=Math.floor(t[0]),e[1]=Math.floor(t[1]),e[2]=Math.floor(t[2]),e[3]=Math.floor(t[3]),e},inverse:function(e,t){return e[0]=1/t[0],e[1]=1/t[1],e[2]=1/t[2],e[3]=1/t[3],e},len:T,length:m,lerp:_,max:h,min:c,mul:I,multiply:l,negate:function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=-t[3],e},normalize:b,random:function(e,t=1){const r=i.Ov;let n,s,o,a,l,u;do{n=2*r()-1,s=2*r()-1,l=n*n+s*s}while(l>=1);do{o=2*r()-1,a=2*r()-1,u=o*o+a*a}while(u>=1);const c=Math.sqrt((1-l)/u);return e[0]=t*n,e[1]=t*s,e[2]=t*o*c,e[3]=t*a*c,e},round:d,scale:p,scaleAndAdd:function(e,t,r,i){return e[0]=t[0]+r[0]*i,e[1]=t[1]+r[1]*i,e[2]=t[2]+r[2]*i,e[3]=t[3]+r[3]*i,e},set:s,sqrDist:A,sqrLen:k,squaredDistance:y,squaredLength:g,str:function(e){return"vec4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+")"},sub:S,subtract:a,transformMat4:w,transformQuat:function(e,t,r){const i=t[0],n=t[1],s=t[2],o=r[0],a=r[1],l=r[2],u=r[3],c=u*i+a*s-l*n,h=u*n+l*i-o*s,d=u*s+o*n-a*i,p=-o*i-a*n-l*s;return e[0]=c*u+p*-o+h*-l-d*-a,e[1]=h*u+p*-a+d*-o-c*-l,e[2]=d*u+p*-l+c*-a-h*-o,e[3]=t[3],e}},Symbol.toStringTag,{value:"Module"}))},90629(e,t,r){r.d(t,{Lz:()=>n,PN:()=>s,cr:()=>o,gs:()=>l,r_:()=>u,tc:()=>a}),r(39829);const i=/^-?(\d+(\.\d+)?)\s*((px)|(pt))?$/i;function n(e){return e?e/72*96:0}function s(e){return e?72*e/96:0}function o(e){if("string"==typeof e){const t=e.match(i);if(t){const r=Number(t[1]),i=t[3]&&t[3].toLowerCase(),n=e.startsWith("-"),o="px"===i?s(r):r;return n?-o:o}return console.warn("screenUtils.toPt: input not recognized!"),null}return e}function a(e=0,t=0){return{x:e,y:t}}function l(e=0,t=0){return[e,t]}function u(e=0,t=0,r=0){return[e,t,r]}},44794(e,t,r){r.d(t,{v:()=>a});var i=r(4718),n=r(62788),s=r(95488);class o{constructor(e,t){this._observable=new s.I,this._value=e,this._equalityFunction=t}get value(){return(0,n.gc)(this._observable),this._value}set value(e){this._equalityFunction(e,this._value)||(this._value=e,this._observable.notify())}mutate(e){e(this._value),this._observable.notify()}}function a(e,t=i.gh){return new o(e,t)}},50498(e,t,r){r.d(t,{Ye:()=>h,gy:()=>c,iI:()=>p,yR:()=>d});var i=r(66552),n=r(5443),s=r(91075),o=r(48526),a=r(86738),l=r(39829),u=r(82799);const c=(0,i.O)()({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon"}),h=(0,i.O)()({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryEnvelope:"extent",mesh:"mesh"}),d={base:s.A,key:"type",typeMap:{extent:n.A,multipoint:o.A,point:a.A,polyline:u.A,polygon:l.A}},p=new i.J({esriGeometryBezier3Curve:"cubic-bezier",esriGeometryCircularArc:"circular-arc",esriGeometryEllipticArc:"elliptic-arc"},{ignoreUnknown:!0})},55156(e,t,r){r.d(t,{I:()=>n,e:()=>i});const i=Symbol("idFieldsProviderSymbol");function n(e){return(t=e)&&i in t?e[i]:void 0;var t}},99680(e,t,r){r.r(t),r.d(t,{default:()=>se});var i=r(5482),n=r(37838),s=r(69540),o=r(7762),a=r(51447),l=r(49186),u=r(44208),c=r(53966),h=r(25728),d=r(93637),p=r(36708),f=r(84952),y=r(10107),m=r(64108),g=r(43937),b=r(5443),M=r(16930),_=r(55156),w=r(60950),C=r(89808),v=r(99959);const S=Symbol("isParquetGraphicOrigin");var I;class x extends v.A{get[(I=S,w.ym)](){return this.layer}get[_.e](){return this.layer}get[C.Q](){return this.layer}constructor(e){super(),this[I]=!0,this.type="parquet",this.layer=e}get id(){return this.layer.id}}var z=r(4146),A=r(65529),T=r(92474),k=r(17676),P=r(83027),O=r(42760),F=r(22671);let R=class extends((0,A.Zt)(T.x_)){constructor(e){super(e),this.type="parquet"}load(e){const t=null!=e?e.signal:null;return this.addResolvingPromise(this._initialize(t)),this.addHandles([(0,p.wB)(()=>this.layer.data,async e=>{if(e)try{await this._proxy.updateFileProvider(await(0,O.Dt)(e))}catch{}}),(0,p.wB)(()=>this.layer.customParameters,e=>this._setCustomParameters(e))]),Promise.resolve(this)}async reload(e){const t=await this._createLoadParameters(e);return this._proxy.reload(t)}destroy(){this._connection?.destroy()}async openPorts(){return await this.load(),this._connection.openPorts()}async queryFeaturesJSON(e,t={}){return await this.load(t),this._proxy.queryFeatures(e.toJSON(),{signal:t?.signal})}async queryFeatures(e,t={}){const r=await this.queryFeaturesJSON(e,{signal:t?.signal});return F.A.fromJSON(r)}async queryObjectIds(e,t){return await this._proxy.queryObjectIds(e.toJSON(),{signal:t?.signal})}async queryFeatureCount(e,t){return this._proxy.queryFeatureCount(e.toJSON(),{signal:t?.signal})}async queryExtent(e,t){if(null==this.layer.geometryEncoding)return c.A.getLogger(this).warn("Tried to queryExtent, but source does not have a geometry. Returning null extent."),{count:0,extent:null};const r=await this._proxy.queryExtent(e.toJSON(),{signal:t?.signal});return{count:r.count,extent:b.A.fromJSON(r.extent)}}async _initialize(e){const t={onSourceChange:()=>this.emit("source-changed")};this._connection=await(0,P.h)("ParquetSourceWorker",{strategy:"dedicated",signal:e,registryTarget:this,client:t}),(0,k.Te)(e),this._proxy=this._connection.createInvokeProxy();const r=await this._createLoadParameters(e),{layerDefinition:i,capabilities:n}=await this._proxy.load(r);(0,k.Te)(e),this.sourceJSON=i,this.capabilities=n}async _createLoadParameters(e){if(!this.layer.data)throw new l.A("parquet:missing-data","A data source must be specified",this.layer);const t=await(0,O.Dt)(this.layer.data,{signal:e});return(0,k.Te)(e),{provider:t,fields:this.layer.fields?.map(e=>e.toJSON()),geometryType:this.layer.geometryType?(0,O.sA)(this.layer.geometryType):null,spatialReference:this.layer.spatialReference?.toJSON(),geometryEncoding:this.layer.geometryEncoding?.toJSON(),displayOptimization:this.layer.displayOptimization,customParameters:this.layer.customParameters}}_setCustomParameters(e){this._proxy.setCustomParameters(e).catch(()=>{c.A.getLogger(this).warn("Failed to update customParameters")})}_queryStream(e,t){return this._proxy.queryStream(e,t)}_getStreamNextFeatures(e,t){return this._proxy.getStreamNextFeatures(e,t)}};(0,i.Cg)([(0,y.MZ)()],R.prototype,"type",void 0),(0,i.Cg)([(0,y.MZ)({constructOnly:!0})],R.prototype,"layer",void 0),(0,i.Cg)([(0,y.MZ)()],R.prototype,"sourceJSON",void 0),(0,i.Cg)([(0,y.MZ)()],R.prototype,"capabilities",void 0),R=(0,i.Cg)([(0,m.$)("esri.layers.graphics.sources.ParquetSource")],R);var E=r(63074),q=r(69208),L=r(87718),G=r(56658),N=r(34287),j=r(32756),Z=r(25036),D=r(10873),J=r(29005),$=r(20437),V=r(17036),B=r(30524),U=r(9075),W=r(34582),Y=r(46499),H=r(39383),Q=r(56370),K=r(89160),X=r(41214),ee=r(97552),te=r(30291);const re=(0,V.p)(),ie="__OBJECTID",ne={types:{key:"type",base:null,typeMap:{wkb:W.A,location:U.A}},json:{name:"layerDefinition.geometryEncoding",write:{ignoreOrigin:!0,isRequired:!0},origins:{service:{read:{source:"geometryEncoding"}}}}};let se=class extends((0,G.J)((0,L.F)((0,E.dM)((0,j.fY)((0,Z.j)((0,N.q)((0,h.M)((0,q.d)((0,s.OU)(z.A)))))))))){constructor(e){super(e),this._emptyUrls=new o.A,this.copyright=null,this.definitionExpression=null,this.displayOptimization=null,this.fields=null,this.fieldsIndex=null,this.geometryEncoding=null,this.fullExtent=null,this.geometryType=null,this.graphicOrigin=new x(this),this.labelsVisible=!0,this.labelingInfo=null,this.objectIdField=ie,this.operationalLayerType="ParquetLayer",this.outFields=null,this.persistenceEnabled=!!(0,u.A)("parquetlayer-persistence-enabled"),this.popupTemplate=null,this.source=null,this.spatialReference=null,this.templates=null,this.type="parquet",this.data=null}initialize(){this.addHandles((0,p.on)(()=>this.source,"source-changed",()=>{this.emit("refresh",{dataChanged:!0})}))}destroy(){this.source?.destroy()}async load(e){return this.addResolvingPromise(this._load(e)),this}get capabilities(){return this.source?.capabilities}get defaultPopupTemplate(){return this.createPopupTemplate()}writeFields(e,t,r,i){const n=e.filter(e=>!(e.name===ie&&"oid"===e.type)).map(e=>e.toJSON(i));(0,d.sM)(r,n,t)}get isTable(){return null==this.geometryEncoding&&null==this.displayOptimization}set renderer(e){(0,B.yp)(e,this.fieldsIndex),this._set("renderer",e)}get title(){let e=this._get("title");if(e&&"defaults"!==this.originOf("title"))return e;switch(this.data?.type){case"files":{const t=this.data.urls?.at(0);e=t?(0,f.e7)(t,["parquet"]):null;break}case"portal-item":e=this.data.portalItem?.title}return e||"Parquet"}set title(e){this._set("title",e)}writeData(e,t,r,i){if(!e)return;if("portal-item"===e.type&&"Parquet Feature Layer"!==e.portalItem?.type)return void i.messages?.push(new l.A("parquet-layer:unsupported-data",`Portal item with type '${e.portalItem?.type}' is not supported in web maps`,{layer:this,itemId:e.portalItem?.id}));const n=e.write({},i);n&&(t.source=n)}get urls(){return"files"===this.data?.type?this.data.urls:this._emptyUrls}set urls(e){(0,a.Lx)(c.A.getLogger(this),"urls",{replacement:"data",version:"5.1",warnOnce:!0}),this.data=new Q.A({urls:this._normalizeUrls(e)})}createPopupTemplate(e){return(0,te.tn)(this,e)}createQuery(){const e=new ee.A;return e.returnGeometry=!0,e.outFields=["*"],e.where=this.definitionExpression||"1=1",e}async createSource(e){const t=new R({layer:this});return await t.load(e),t}getFieldDomain(e,t){return null}getField(e){return this.fieldsIndex.get(e)}async queryFeatures(e,t){await this.load();const r=await this.source.queryFeatures(this._normalizeQuery(e),t),i=this.graphicOrigin;if(r?.features)for(const e of r.features)e.layer=e.sourceLayer=this,e.origin=i;return r}async queryObjectIds(e,t){return await this.load(),this.source.queryObjectIds(this._normalizeQuery(e),t)}async queryFeatureCount(e,t){return await this.load(),this.source.queryFeatureCount(this._normalizeQuery(e),t)}async queryExtent(e,t){return await this.load(),this.source.queryExtent(this._normalizeQuery(e),t)}_normalizeQuery(e){return ee.A.from(e)??this.createQuery()}_normalizeUrls(e){return Array.isArray(e)?new o.A(e):e??new o.A}async _load(e){"portal-item"===this.data?.type&&await this.data.portalItem.load();const t=await this.createSource(e);this._set("source",t),this.read(t.sourceJSON,{origin:"service"}),["fields"].forEach(e=>this.revertToOrigin(e,"service")),(0,B.yp)(this.renderer,this.fieldsIndex),null==this.spatialReference&&(this.spatialReference=M.A.WGS84)}};(0,i.Cg)([(0,y.MZ)({readOnly:!0,json:{read:!1,write:!1}})],se.prototype,"capabilities",null),(0,i.Cg)([(0,y.MZ)({type:String})],se.prototype,"copyright",void 0),(0,i.Cg)([(0,y.MZ)({readOnly:!0})],se.prototype,"defaultPopupTemplate",null),(0,i.Cg)([(0,y.MZ)({type:String,json:{name:"layerDefinition.definitionExpression",write:{enabled:!0,allowNull:!0}}})],se.prototype,"definitionExpression",void 0),(0,i.Cg)([(0,y.MZ)()],se.prototype,"displayOptimization",void 0),(0,i.Cg)([(0,y.MZ)({type:[$.A],json:{name:"layerDefinition.fields",write:{ignoreOrigin:!0,isRequired:!0},origins:{service:{name:"fields"}}}})],se.prototype,"fields",void 0),(0,i.Cg)([(0,g.K)("fields")],se.prototype,"writeFields",null),(0,i.Cg)([(0,y.MZ)(re.fieldsIndex)],se.prototype,"fieldsIndex",void 0),(0,i.Cg)([(0,y.MZ)(ne)],se.prototype,"geometryEncoding",void 0),(0,i.Cg)([(0,y.MZ)({type:b.A,json:{name:"extent"}})],se.prototype,"fullExtent",void 0),(0,i.Cg)([(0,y.MZ)({type:O.ye.apiValues,json:{name:"layerDefinition.geometryType",read:{reader:O.ye.read},write:{writer:O.ye.write,ignoreOrigin:!0,isRequired:!0},origins:{service:{read:{source:"geometryType",reader:O.ye.read}}}}})],se.prototype,"geometryType",void 0),(0,i.Cg)([(0,y.MZ)({readOnly:!0,clonable:!1})],se.prototype,"graphicOrigin",void 0),(0,i.Cg)([(0,y.MZ)(D.kF)],se.prototype,"labelsVisible",void 0),(0,i.Cg)([(0,y.MZ)({type:[Y.A],json:{name:"layerDefinition.drawingInfo.labelingInfo",read:{reader:H.w},write:!0}})],se.prototype,"labelingInfo",void 0),(0,i.Cg)([(0,y.MZ)(D.fV)],se.prototype,"legendEnabled",void 0),(0,i.Cg)([(0,y.MZ)()],se.prototype,"file",void 0),(0,i.Cg)([(0,y.MZ)({type:String,readOnly:!0})],se.prototype,"objectIdField",void 0),(0,i.Cg)([(0,y.MZ)({type:["ParquetLayer"]})],se.prototype,"operationalLayerType",void 0),(0,i.Cg)([(0,y.MZ)(re.outFields)],se.prototype,"outFields",void 0),(0,i.Cg)([(0,y.MZ)(D.M6)],se.prototype,"popupEnabled",void 0),(0,i.Cg)([(0,y.MZ)({type:n.A,json:{name:"popupInfo",write:!0}})],se.prototype,"popupTemplate",void 0),(0,i.Cg)([(0,y.MZ)({types:X.Hg,json:{name:"layerDefinition.drawingInfo.renderer",write:!0,origins:{service:{read:{source:"drawingInfo.renderer"}}}}})],se.prototype,"renderer",null),(0,i.Cg)([(0,y.MZ)({type:R,readOnly:!0,cast:null,json:{read:!1}})],se.prototype,"source",void 0),(0,i.Cg)([(0,y.MZ)({type:M.A,json:{name:"layerDefinition.spatialReference",write:{ignoreOrigin:!0,isRequired:!0},origins:{service:{read:{source:"extent.spatialReference"}}}}})],se.prototype,"spatialReference",void 0),(0,i.Cg)([(0,y.MZ)({type:[J.A]})],se.prototype,"templates",void 0),(0,i.Cg)([(0,y.MZ)()],se.prototype,"title",null),(0,i.Cg)([(0,y.MZ)({json:{read:!1},readOnly:!0})],se.prototype,"type",void 0),(0,i.Cg)([(0,y.MZ)({types:{key:"type",base:null,typeMap:{files:Q.A,"portal-item":K.A}},json:{name:"source",origins:{"web-map":{write:{target:"source",ignoreOrigin:!0}}}}})],se.prototype,"data",void 0),(0,i.Cg)([(0,g.K)("web-map","data")],se.prototype,"writeData",null),(0,i.Cg)([(0,y.MZ)({type:o.A.ofType(String),json:{read:!1,write:!1}})],se.prototype,"urls",null),se=(0,i.Cg)([(0,m.$)("esri.layers.ParquetLayer")],se)},32756(e,t,r){r.d(t,{Rr:()=>a,fY:()=>u,ne:()=>l});var i=r(5482),n=r(93637),s=r(91429),o=r(91880);function a(e,t,r){if(!e)return null;const i=e.find(e=>!!e.field);if(!i)return null;const n=new o.A;return n.read(i,r),[n]}const l={type:[o.A],json:{origins:{"web-scene":{write:!1,read:!1}},name:"layerDefinition.orderBy",read:{reader:a},write:{writer:function(e,t,r,i){const s=e.find(e=>!!e.field);s&&(0,n.sM)(r,[s.toJSON()],t)}}}},u=e=>{const t=e;let r=class extends t{constructor(){super(...arguments),this.orderBy=null}};return(0,i.Cg)([(0,s.MZ)(l)],r.prototype,"orderBy",void 0),r=(0,i.Cg)([(0,s.$K)("esri.layers.mixins.OrderedLayer")],r),r}},91880(e,t,r){r.d(t,{A:()=>u});var i,n=r(5482),s=r(66552),o=r(25482),a=r(91429);const l=new s.J({asc:"ascending",desc:"descending"});let u=class extends o.o{static{i=this}constructor(e){super(e),this.field=null,this.valueExpression=null,this.order="ascending"}clone(){return new i({field:this.field,valueExpression:this.valueExpression,order:this.order})}};(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],u.prototype,"field",void 0),(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0,origins:{"web-scene":{read:!1,write:!1}}}})],u.prototype,"valueExpression",void 0),(0,n.Cg)([(0,a.MZ)({type:l.apiValues,json:{type:l.jsonValues,read:l.read,write:l.write}})],u.prototype,"order",void 0),u=i=(0,n.Cg)([(0,a.$K)("esri.layers.support.OrderByInfo")],u)},89160(e,t,r){r.d(t,{A:()=>h});var i=r(5482),n=r(69540),s=r(25482),o=r(91429),a=r(64108),l=r(80812),u=r(36005),c=r(43937);let h=class extends((0,s.T)(n.Pw)){constructor(e){super(e),this.type="portal-item"}readPortalItem(e,t,r){if(t.itemId)return new l.default({id:t.itemId,portal:r?.portal})}writePortalItem(e,t){e?.id&&(t.itemId=e.id)}};(0,i.Cg)([(0,o.MZ)({type:["portal-item"],nonNullable:!0,readOnly:!0,json:{read:!1,write:{isRequired:!0}}})],h.prototype,"type",void 0),(0,i.Cg)([(0,o.MZ)({type:l.default,json:{write:{isRequired:!0}}})],h.prototype,"portalItem",void 0),(0,i.Cg)([(0,u.w)("portalItem",["itemId"])],h.prototype,"readPortalItem",null),(0,i.Cg)([(0,c.K)("portalItem",{itemId:{type:String}})],h.prototype,"writePortalItem",null),h=(0,i.Cg)([(0,a.$)("esri.layers.support.ParquetPortalItemData")],h)},73681(e,t,r){r.d(t,{n:()=>l});var i=r(49186),n=r(53966),s=r(46140),o=r(95466),a=r(55674);class l{static async from(e,t,r){const o=e.dictionary_version?s.A.parse(e.dictionary_version):null,c=new Set(e.itemsNames),h={};if(t)for(const e in t)h[e]=t[e];if(e.authoringInfo.configuration)for(const t of e.authoringInfo.configuration)h.hasOwnProperty(t.name)||(h[t.name]=t.value);const d=new Set(e.authoringInfo.symbol);for(const e of Object.keys(r))d.delete(e);d.size&&n.A.getLogger("esri.renderers.support.DictionaryScriptEvaluator").warnOnce("missing-fields: fieldMap entries for the following symbol fields are missing",{symbolFields:d});const p=await(0,a.xR)(e.expression,null,h);if(!p)throw new i.A("dictionary-renderer:expression-error","Unable to create dictionary renderer expression");const f=!o||!o.greaterEqual(4,0);f&&n.A.getLogger("esri.renderers.support.DictionaryScriptEvaluator").warnOnce("Dictionary script does not support native field types. Applying fallback",{version:o});const y=new u(r,f);return new l(f,c,p,y)}constructor(e,t,r,i){this._requiresFieldCoercionToString=e,this._itemNames=t,this._compiled=r,this._reader=i}get itemNames(){return this._itemNames}evaluate(e,t,r,i){try{return this._reader.bind(e,r,i),this._compiled.evaluate(this._reader,{$view:{scale:t}})}catch(e){n.A.getLogger("esri.renderers.support.DictionaryScriptEvaluator").warnOnce("arcade: dictionary script evaluation failed",{error:e})}return null}createDictionaryFieldsIndex(e){if(!this._requiresFieldCoercionToString)return new o.A(e);const t=e.map(e=>({...e,type:"esriFieldTypeString"}));return new o.A(t)}}class u extends a.Gj{constructor(e,t){super(),this._fieldMap=e,this._requiresFieldCoercionToString=t}_getField(e){const t=this._fieldMap[e]??e;return this._boundSchema.fieldsIndex.get(t)}field(e){if(!this._requiresFieldCoercionToString)return super.field(e,!1);const t=this._getField(e);return null==t||null==this._boundTarget.attributes[t.name]?"":""+this._boundTarget.attributes[t.name]}}},22671(e,t,r){r.d(t,{A:()=>b});var i,n=r(5482),s=r(52106),o=r(66552),a=r(25482),l=r(4718),u=r(91429),c=r(16930),h=r(60408),d=r(65864),p=r(50498),f=r(20437),y=r(36005),m=r(43937);const g=new o.J({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryEnvelope:"extent",mesh:"mesh","":null});let b=i=class extends a.o{constructor(e){super(e),this.displayFieldName=null,this.exceededTransferLimit=!1,this.features=[],this.fields=null,this.geometryType=null,this.hasM=!1,this.hasZ=!1,this.queryGeometry=null,this.spatialReference=null}readFeatures(e,t){return this.readFeaturesWithClass(e,t,s.A)}writeGeometryType(e,t,r,i){if(e)return void g.write(e,t,r,i);const{features:n}=this;if(n)for(const e of n)if(null!=e?.geometry)return void g.write(e.geometry.type,t,r,i)}readQueryGeometry(e,t){if(!e)return null;const r=!!e.spatialReference,i=(0,d.rS)(e);return i&&!r&&t.spatialReference&&(i.spatialReference=c.A.fromJSON(t.spatialReference)),i}writeSpatialReference(e,t){if(e)return void(t.spatialReference=e.toJSON());const{features:r}=this;if(r)for(const e of r)if(e&&null!=e.geometry&&e.geometry.spatialReference)return void(t.spatialReference=e.geometry.spatialReference.toJSON())}clone(){return new i(this.cloneProperties())}cloneProperties(){return(0,l.o8)({displayFieldName:this.displayFieldName,exceededTransferLimit:this.exceededTransferLimit,features:this.features,fields:this.fields,geometryType:this.geometryType,hasM:this.hasM,hasZ:this.hasZ,queryGeometry:this.queryGeometry,spatialReference:this.spatialReference,transform:this.transform})}toJSON(e){const t=this.write();if(t.features&&Array.isArray(e)&&e.length>0)for(let r=0;r<t.features.length;r++){const i=t.features[r];if(i.geometry){const t=e?.[r];i.geometry=t?.toJSON()||i.geometry}}return t}quantize(e){const{scale:[t,r],translate:[i,n]}=e,s=this.features,o=this._getQuantizationFunction(this.geometryType,e=>Math.round((e-i)/t),e=>Math.round((n-e)/r));for(let e=0,t=s.length;e<t;e++)o?.(s[e].geometry)||(s.splice(e,1),e--,t--);return this.transform=e,this}unquantize(){const{geometryType:e,features:t,transform:r}=this;if(!r)return this;const{translate:[i,n],scale:[s,o]}=r;let a=null,l=null;if(this.hasZ&&null!=r?.scale?.[2]){const{translate:[,,e],scale:[,,t]}=r;a=r=>r*t+e}if(this.hasM&&null!=r?.scale?.[3]){const{translate:[,,,e],scale:[,,,t]}=r;l=r=>null==r?r:r*t+e}const u=this._getHydrationFunction(e,e=>e*s+i,e=>n-e*o,a,l);for(const{geometry:e}of t)null!=e&&u&&u(e);return this.transform=null,this}readFeaturesWithClass(e,t,r){const i=c.A.fromJSON(t.spatialReference),n=[];for(let t=0;t<e.length;t++){const s=e[t],o=r.fromJSON(s),a=s.geometry?.spatialReference;null==o.geometry||a||(o.geometry.spatialReference=i);const l=s.aggregateGeometries,u=o.aggregateGeometries;if(l&&null!=u)for(const e in u){const t=u[e],r=l[e],n=r?.spatialReference;null==t||n||(t.spatialReference=i)}n.push(o)}return n}_quantizePoints(e,t,r){let i,n;const s=[];for(let o=0,a=e.length;o<a;o++){const a=e[o];if(o>0){const e=t(a[0]),o=r(a[1]);e===i&&o===n||(s.push([e-i,o-n]),i=e,n=o)}else i=t(a[0]),n=r(a[1]),s.push([i,n])}return s.length>0?s:null}_getQuantizationFunction(e,t,r){return"point"===e?e=>(e.x=t(e.x),e.y=r(e.y),e):"polyline"===e||"polygon"===e?e=>{const i=(0,h.Bi)(e)?e.rings:e.paths,n=[];for(let e=0,s=i.length;e<s;e++){const s=i[e],o=this._quantizePoints(s,t,r);o&&n.push(o)}return n.length>0?((0,h.Bi)(e)?e.rings=n:e.paths=n,e):null}:"multipoint"===e?e=>{const i=this._quantizePoints(e.points,t,r);return i&&i.length>0?(e.points=i,e):null}:"extent"===e?e=>e:null}_getHydrationFunction(e,t,r,i,n){return"point"===e?e=>{e.x=t(e.x),e.y=r(e.y),i&&(e.z=i(e.z))}:"polyline"===e||"polygon"===e?e=>{const s=(0,h.Bi)(e)?e.rings:e.paths;let o,a;for(let e=0,i=s.length;e<i;e++){const i=s[e];for(let e=0,n=i.length;e<n;e++){const n=i[e];e>0?(o+=n[0],a+=n[1]):(o=n[0],a=n[1]),n[0]=t(o),n[1]=r(a)}}if(i&&n)for(let e=0,t=s.length;e<t;e++){const t=s[e];for(let e=0,r=t.length;e<r;e++){const r=t[e];r[2]=i(r[2]),r[3]=n(r[3])}}else if(i)for(let e=0,t=s.length;e<t;e++){const t=s[e];for(let e=0,r=t.length;e<r;e++){const r=t[e];r[2]=i(r[2])}}else if(n)for(let e=0,t=s.length;e<t;e++){const t=s[e];for(let e=0,r=t.length;e<r;e++){const r=t[e];r[2]=n(r[2])}}}:"extent"===e?e=>{e.xmin=t(e.xmin),e.ymin=r(e.ymin),e.xmax=t(e.xmax),e.ymax=r(e.ymax),i&&null!=e.zmax&&null!=e.zmin&&(e.zmax=i(e.zmax),e.zmin=i(e.zmin)),n&&null!=e.mmax&&null!=e.mmin&&(e.mmax=n(e.mmax),e.mmin=n(e.mmin))}:"multipoint"===e?e=>{const s=e.points;let o,a;for(let e=0,i=s.length;e<i;e++){const i=s[e];e>0?(o+=i[0],a+=i[1]):(o=i[0],a=i[1]),i[0]=t(o),i[1]=r(a)}if(i&&n)for(let e=0,t=s.length;e<t;e++){const t=s[e];t[2]=i(t[2]),t[3]=n(t[3])}else if(i)for(let e=0,t=s.length;e<t;e++){const t=s[e];t[2]=i(t[2])}else if(n)for(let e=0,t=s.length;e<t;e++){const t=s[e];t[2]=n(t[2])}}:null}};(0,n.Cg)([(0,u.MZ)({type:String,json:{write:!0}})],b.prototype,"displayFieldName",void 0),(0,n.Cg)([(0,u.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],b.prototype,"exceededTransferLimit",void 0),(0,n.Cg)([(0,u.MZ)({type:[s.A],json:{write:!0}})],b.prototype,"features",void 0),(0,n.Cg)([(0,y.w)("features")],b.prototype,"readFeatures",null),(0,n.Cg)([(0,u.MZ)({type:[f.A],json:{write:!0}})],b.prototype,"fields",void 0),(0,n.Cg)([(0,u.MZ)({type:["point","multipoint","polyline","polygon","extent","mesh"],json:{read:{reader:g.read}}})],b.prototype,"geometryType",void 0),(0,n.Cg)([(0,m.K)("geometryType")],b.prototype,"writeGeometryType",null),(0,n.Cg)([(0,u.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],b.prototype,"hasM",void 0),(0,n.Cg)([(0,u.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],b.prototype,"hasZ",void 0),(0,n.Cg)([(0,u.MZ)({types:p.yR,json:{write:!0}})],b.prototype,"queryGeometry",void 0),(0,n.Cg)([(0,y.w)("queryGeometry")],b.prototype,"readQueryGeometry",null),(0,n.Cg)([(0,u.MZ)({type:c.A,json:{write:!0}})],b.prototype,"spatialReference",void 0),(0,n.Cg)([(0,m.K)("spatialReference")],b.prototype,"writeSpatialReference",null),(0,n.Cg)([(0,u.MZ)({json:{write:!0}})],b.prototype,"transform",void 0),b=i=(0,n.Cg)([(0,u.$K)("esri.rest.support.FeatureSet")],b),b.prototype.toJSON.isDefaultToJSON=!0},41366(e,t,r){r.d(t,{K:()=>h,Q:()=>l});var i=r(5482),n=r(66552),s=r(53966),o=r(91429),a=r(93223);const l=(0,n.O)()({naturalLog:"natural-log",squareRoot:"square-root",percentOfTotal:"percent-of-total",log:"log",field:"field"}),u="percent-of-total",c="field",h=e=>{const t=e;let r=class extends t{constructor(){super(...arguments),this.normalizationField=null,this.normalizationMaxValue=null,this.normalizationMinValue=null,this.normalizationTotal=null}get normalizationType(){let e=this._get("normalizationType");const t=!!this.normalizationField,r=null!=this.normalizationTotal;return t||r?(e=t&&c||r&&u||null,t&&r&&s.A.getLogger(this).warn("warning: both normalizationField and normalizationTotal are set!")):e!==c&&e!==u||(e=null),e}set normalizationType(e){this._set("normalizationType",e)}};return(0,i.Cg)([(0,o.MZ)({type:String,json:{name:"parameters.normalizationField",write:!0}})],r.prototype,"normalizationField",void 0),(0,i.Cg)([(0,o.MZ)({type:Number,json:{name:"parameters.normalizationMaxValue",write:!0}})],r.prototype,"normalizationMaxValue",void 0),(0,i.Cg)([(0,o.MZ)({type:Number,json:{name:"parameters.normalizationMinValue",write:!0}})],r.prototype,"normalizationMinValue",void 0),(0,i.Cg)([(0,o.MZ)({type:Number,json:{name:"parameters.normalizationTotal",write:!0}})],r.prototype,"normalizationTotal",void 0),(0,i.Cg)([(0,a.e)(l,{name:"parameters.normalizationType"})],r.prototype,"normalizationType",null),r=(0,i.Cg)([(0,o.$K)("esri.rest.support.NormalizationBinParametersMixin")],r),r}},55674(e,t,r){r.d(t,{Ad:()=>p,Gj:()=>m,QY:()=>d,lL:()=>g,xR:()=>f});var i=r(66131),n=r(49186),s=(r(44208),r(44729)),o=r(15032),a=r(65864),l=r(95466),u=r(43668),c=r(98623);const h=["geometry","scale","timeProperties"];function d(e,t){if(null!=t)for(const r of h)t.hasArcadeDependency(r)&&e.add(r);return e}function p(e,t){return y.create(e,t,null,["$feature","$view"])}function f(e,t,r){return y.create(e,t,r,["$feature","$view","$config"])}class y{static async create(e,t,r,i){const{arcade:s,Dictionary:o}=await(0,u.l)();let a;try{a=s.parseScript(e)}catch(t){throw new n.A("arcade-bad-expression","Failed to parse arcade script",{script:e,error:t})}const l=s.scriptUsesGeometryEngine(a);l&&await s.enableGeometrySupport(),await s.loadDependentModules(new Set,a,null,!1,l);const c={vars:i.reduce((e,t)=>({...e,[t]:null}),{}),spatialReference:t,useAsync:!1},h=s.compileScript(a,c);let d=null;null!=r&&(d=new o(r),d.immutable=!0);const p=new o;return p.immutable=!1,p.setField("scale",0),new y(e,s,a,h,t,p,d,o)}constructor(e,t,r,i,n,s,o,a){this.script=e,this._arcade=t,this._syntaxTree=r,this._compiled=i,this._spatialReference=n,this._viewDict=s,this._configDict=o,this._dictionaryCtor=a,this._dependencies=new Map,this._featureReader=new m,this._dependencies.set("geometry",t.scriptTouchesGeometry(this._syntaxTree)),this._dependencies.set("scale",this._arcade.referencesMember(this._syntaxTree,"scale")),this._dependencies.set("timeProperties",this._arcade.scriptUsesViewProperties(this._syntaxTree,["timeProperties"]))}evaluate(e,t){const r=t.$view?.timeZone;if(t.$view){let e;if(this._viewDict.setField("scale",t.$view.scale),null!=t.$view.timeProperties){const{currentStart:n,currentEnd:s}=t.$view.timeProperties;e=new this._dictionaryCtor({currentStart:null!=n?null!=r?i.lY.epochToArcadeDate(n,r):i.lY.unknownEpochToArcadeDate(n):void 0,currentEnd:null!=s?null!=r?i.lY.epochToArcadeDate(s,r):i.lY.unknownEpochToArcadeDate(s):void 0,startIncluded:!0,endIncluded:!0})}this._viewDict.setField("timeProperties",e)}return this._compiled({vars:{$view:this._viewDict,$config:this._configDict,$feature:e},spatialReference:this._spatialReference,timeZone:r})}repurposeFeature(e,t){return this._featureReader.bind(e,t,this._spatialReference),this._featureReader}references(e){return this._dependencies.get(e)??!1}}class m{constructor(){this._boundTarget=null,this._boundSchema={fields:null,fieldsIndex:null,spatialReference:null,get geometryType(){return null},get objectIdField(){return null}},this.arcadeDeclaredClass="esri.arcade.Feature",this._contextTimeZone=null}bind(e,t,r){const i=t??new l.A(g(e.attributes));this._boundTarget=e,this._boundSchema.fields=i.fields,this._boundSchema.fieldsIndex=i,this._boundSchema.spatialReference=r}_getField(e){return this._boundSchema.fieldsIndex.get(e)}get contextTimeZone(){return this._contextTimeZone}set contextTimeZone(e){this._contextTimeZone=e}readArcadeFeature(){return this}hasField(e){return this._boundSchema.fieldsIndex.has(e)}geometry(){if("fromJSON"in this._boundTarget)return this._boundTarget.geometry;const e=(0,a.rS)(this._boundTarget.geometry);if(e){if(!this._boundSchema.spatialReference)throw new Error("InternalError: Expected spatial reference to be defined");e.spatialReference=this._boundSchema.spatialReference}return e}_hasGeometry(){return null!=this._boundTarget.geometry}isUnknownDateTimeField(e){return this._boundSchema.fieldsIndex.getTimeZone(e)===c.L5}field(e,t=!0){const r=this._getField(e);if(r){const t=this._boundTarget.attributes[r.name];if(null==t)return null;switch(r.type){case"date-only":case"esriFieldTypeDateOnly":return s.n.fromReader(t);case"time-only":case"esriFieldTypeTimeOnly":return o.k.fromReader(t);case"esriFieldTypeTimestampOffset":case"timestamp-offset":return i.lY.fromReaderAsTimeStampOffset(t);case"date":case"esriFieldTypeDate":return this.isUnknownDateTimeField(e)?i.lY.unknownEpochToArcadeDate(t):i.lY.epochToArcadeDate(t,this.contextTimeZone??c.qU);default:return t}}if(t)throw new Error(`Field ${e} does not exist`);return null}setField(e,t){throw new Error("Unable to update feature attribute values, feature is readonly")}keys(){return this._boundSchema.fieldsIndex.fields.map(e=>e.name)}isEmpty(){return this._boundSchema.fields.length<=0&&!this._hasGeometry()}castToText(e=!1){return JSON.stringify(this._boundTarget)}gdbVersion(){return null}fullSchema(){return this._boundSchema}castAsJson(){return{attributes:this._boundTarget.attributes,geometry:this.geometry()?.toJSON()??null}}castAsJsonAsync(){return Promise.resolve(this.castAsJson())}}function g(e){const t=[];for(const r in e)t.push({name:r,alias:r,type:"string"==typeof e[r]?"esriFieldTypeString":"esriFieldTypeDouble"});return t}},28076(e,t,r){r.d(t,{D:()=>n});var i=r(13337);const n={CIMVectorMarker:{scalesymbolsproportionally:!1,respectframe:!0,anchorpointunits:"Relative",offsetx:0,offsety:0,rotateclockwise:!1,rotation:0,size:10,enable:!0,colorlocked:!1},CIMPictureMarker:{scalex:1,texturefilter:"Draft",anchorpointunits:"Relative",offsetx:0,offsety:0,rotateclockwise:!1,rotation:0,size:10,enable:!0,colorlocked:!1},CIMTextSymbol:{angle:0,anglex:0,angley:0,halosize:1,height:10,horizontalalignment:"Left",kerning:!0,letterspacing:0,letterwidth:100,ligatures:!0,linegap:0,offsetx:0,offsety:0,strikethrough:!1,textcase:"Normal",textstring:"",underline:!1,verticalalignment:"Bottom",enable:!0,colorlocked:!1},CIMSolidStroke:{capstyle:"Round",joinstyle:"Round",miterlimit:4,width:4,enable:!0,colorlocked:!1},CIMPictureStroke:{texturefilter:"Draft",capstyle:"Round",joinstyle:"Round",miterlimit:4,width:4,enable:!0,colorlocked:!1},CIMGradientStroke:{capstyle:"Round",joinstyle:"Round",miterlimit:4,width:4,enable:!0,colorlocked:!1,gradientMethod:"AcrossLine",gradientSize:75,gradientSizeUnits:i.h.Relative,gradientType:"Discrete",interval:5},CIMSolidFill:{enable:!0,colorlocked:!1},CIMPictureFill:{offsetx:0,offsety:0,rotation:0,scalex:1,height:10,texturefilter:"Draft",enable:!0,colorlocked:!1},CIMHatchFill:{offsetx:0,offsety:0,rotation:0,separation:4,enable:!0,colorlocked:!1},CIMGradientFill:{enable:!0,angle:90,gradientMethod:"Linear",gradientSize:75,gradientSizeUnits:i.h.Relative,gradientType:"Discrete",interval:5},CIMGeometricEffectAddControlPoints:{angletolerance:120},CIMGeometricEffectArrow:{arrowtype:"OpenEnded",width:5},CIMGeometricEffectBuffer:{size:1},CIMGeometricEffectCut:{begincut:1,endcut:1,middlecut:0,invert:!1},CIMGeometricEffectDashes:{customendingoffset:0,linedashending:"NoConstraint",offsetalongline:0},CIMGeometricEffectDonut:{method:"Mitered",option:"Accurate",width:2},CIMGeometricEffectJog:{angle:225,length:20,position:50},CIMGeometricEffectControlMeasureLine:{rule:"FullGeometry",width:25},CIMGeometricEffectMove:{offsetx:1,offsety:-1},CIMGeometricEffectOffset:{method:"Square",offset:1,option:"Fast"},CIMGeometricEffectRadial:{angle:0,length:5},CIMGeometricEffectRotate:{angle:15},CIMGeometricEffectScale:{xscalefactor:1.15,yscalefactor:1.15},CIMGeometricEffectWave:{amplitude:2,period:3,seed:1,waveform:"Sinus"},CIMMarkerPlacementAlongLine:{customendingoffset:0,endings:"WithHalfGap",offsetalongline:0,placeperpart:!0,angletoline:!0,offset:0},CIMMarkerPlacementAtExtremities:{extremityplacement:"Both",offsetalongline:0,angletoline:!0,offset:0},CIMMarkerPlacementAtRatioPositions:{beginposition:0,endposition:0,flipfirst:!0,angletoline:!0,offset:0},CIMMarkerPlacementInsidePolygon:{gridangle:0,gridtype:"Fixed",offsetx:0,offsety:0,randomness:100,seed:0,shiftoddrows:!1,stepx:16,stepy:16,clipping:"ClipAtBoundary"},CIMMarkerPlacementOnLine:{relativeto:"LineMiddle",startpointoffset:0,angletoline:!0,offset:0},CIMMarkerPlacementOnVertices:{placeperpart:!0,placeoncontrolpoints:!0,placeonendpoints:!0,placeonregularvertices:!0,angletoline:!0,offset:0},CIMMarkerPlacementPolygonCenter:{method:"OnPolygon",offsetx:0,offsety:0,clipatboundary:!1},CIMAnimatedSymbolProperties:{playanimation:!1,reverseanimation:!1,randomizestarttime:!1,randomizestartseed:0,starttimeoffset:0,duration:3,endingduration:3,useendingduration:!1,repeattype:"Loop",repeatdelay:0,easing:"Linear"},CIMSymbolAnimationSize:{tosize:10},CIMSymbolAnimationScale:{scalefactor:1},CIMSymbolAnimationColor:{tocolor:[255,255,255,1],colormode:"Multiply"},CIMSymbolAnimationTransparency:{totransparency:0},CIMSymbolAnimationRotation:{torotation:0,rotateclockwise:!1},CIMSymbolAnimationOffset:{offsetx:0,offsety:0},CIMSymbolAnimationMoveAlongLine:{speed:30,distancealong:100,movementtype:"Distance"}}},13337(e,t,r){r.d(t,{h:()=>i});const i={Relative:0,Absolute:1}},93397(e,t,r){r.d(t,{$w:()=>y,Bu:()=>I,DW:()=>w,FH:()=>P,FM:()=>a,Kn:()=>M,Kq:()=>J,MM:()=>h,Nl:()=>x,O2:()=>z,UE:()=>A,YC:()=>F,YF:()=>T,_1:()=>v,_d:()=>_,_h:()=>o,bs:()=>O,e6:()=>u,gQ:()=>s,jn:()=>p,lW:()=>c,ll:()=>L,mA:()=>d,oI:()=>$,pM:()=>C,pV:()=>b,pk:()=>E,rB:()=>q,xo:()=>S,yX:()=>D,z9:()=>g,zb:()=>k,zr:()=>f});var i=r(28076);function n(e){let t=e.length;for(;t--;)if(!" /-,\n".includes(e.charAt(t)))return!1;return!0}function s(e,t){const r=[];let i=0,s=-1;do{if(s=e.indexOf("[",i),s>=i){if(s>i){const t=e.slice(i,s);r.push([t,null,n(t)])}if(i=s+1,s=e.indexOf("]",i),s>=i){if(s>i){const n=t[e.slice(i,s)];n&&r.push([null,n,!1])}i=s+1}}}while(-1!==s);if(i<e.length){const t=e.slice(i);r.push([t,null,n(t)])}return r}function o(e,t,r){let i="",n=null;for(const r of t){const[t,s,o]=r;if(null!=t&&""!==t)o?n=t:(null!=n&&(i+=n,n=null),i+=t);else{const t=e.readAttribute(s);null!=t&&""!==t&&(null!==n&&(i+=n,n=null),i+=t)}}return l(i,r)}function a(e,t,r,i){let n="",s=null;for(const i of t){const[t,o,a]=i;if(null!=t&&""!==t)a?s=t:(null!=s&&(n+=s,s=null),n+=t);else{let t=o;null!=r&&(t=R(o,r));const i=e.attributes[t];null!=i&&""!==i&&(null!=s&&(n+=s,s=null),n+=i)}}return l(n,i)}function l(e,t){switch("string"!=typeof e&&(e=String(e)),t){case"LowerCase":return e.toLowerCase();case"Allcaps":return e.toUpperCase();default:return e}}function u(e){return e?[e[0],e[1],e[2],e[3]/255]:[0,0,0,0]}function c(e){return e.data?.symbol??null}function h(e){return"CIMVectorMarker"===e.type||"CIMPictureMarker"===e.type||"CIMBarChartMarker"===e.type||"CIMCharacterMarker"===e.type||"CIMPieChartMarker"===e.type||"CIMStackedBarChartMarker"===e.type}function d(e){return"CIMGradientStroke"===e.type||"CIMPictureStroke"===e.type||"CIMSolidStroke"===e.type}function p(e){return null!=e&&("CIMGradientFill"===e.type||"CIMHatchFill"===e.type||"CIMPictureFill"===e.type||"CIMSolidFill"===e.type||"CIMWaterFill"===e.type)}function f(e){return null!=e&&("CIMMarkerPlacementAlongLineRandomSize"===e.type||"CIMMarkerPlacementAlongLineSameSize"===e.type||"CIMMarkerPlacementAlongLineVariableSize"===e.type||"CIMMarkerPlacementAtExtremities"===e.type||"CIMMarkerPlacementAtMeasuredUnits"===e.type||"CIMMarkerPlacementAtRatioPositions"===e.type||"CIMMarkerPlacementOnLine"===e.type||"CIMMarkerPlacementOnVertices"===e.type)}const y=(e,t=0)=>null==e||isNaN(e)?t:e;class m{constructor(e){this._import=e}getImportPromise(){return null==this._promise&&(this._promise=this._import().then(e=>this.module=e)),this._promise}}function g(e){return new m(e)}function b(e){if(!e)return"normal";switch(e.toLowerCase()){case"italic":return"italic";case"oblique":return"oblique";default:return"normal"}}function M(e){if(!e)return"normal";switch(e.toLowerCase()){case"bold":return"bold";case"bolder":return"bolder";case"lighter":return"lighter";default:return"normal"}}function _(e){let t="normal",r="normal";if(e){const i=e.toLowerCase();i.includes("italic")?t="italic":i.includes("oblique")&&(t="oblique"),i.includes("bold")?r="bold":i.includes("light")&&(r="lighter")}return{style:t,weight:r}}function w(e){return e.underline?"underline":e.strikethrough?"line-through":"none"}function C(e){if(!e)return null;switch(e.type){case"CIMPolygonSymbol":if(e.symbolLayers)for(const t of e.symbolLayers){const e=C(t);if(null!=e)return e}break;case"CIMTextSymbol":return C(e.symbol);case"CIMSolidFill":return e.color}return null}function v(e){if(e)switch(e.type){case"CIMPolygonSymbol":case"CIMLineSymbol":{const t=e.symbolLayers;if(t)for(const e of t){const t=v(e);if(null!=t)return t}break}case"CIMTextSymbol":return v(e.symbol);case"CIMSolidStroke":return e.color}}function S(e){if(e)switch(e.type){case"CIMPolygonSymbol":case"CIMLineSymbol":if(e.symbolLayers)for(const t of e.symbolLayers){const e=S(t);if(void 0!==e)return e}break;case"CIMTextSymbol":return S(e.symbol);case"CIMSolidStroke":case"CIMGradientStroke":case"CIMPictureStroke":return e.width}}function I(e){switch(e){case"Left":default:return"left";case"Right":return"right";case"Center":return"center";case"Justify":return"justify"}}function x(e){switch(e){default:case"Bottom":return"bottom";case"Top":return"top";case"Center":return"middle";case"Baseline":return"baseline"}}function z(e){return(e?Object.keys(e):[]).map(t=>({name:t,alias:t,type:"string"==typeof e[t]?"esriFieldTypeString":"esriFieldTypeDouble"}))}const A=e=>e.includes("data:image/svg+xml");function T(e){return e?e.charAt(0).toLowerCase()+e.slice(1):e}function k(e,t,r,i,n,s,o=!0){const{infos:a}=s;let l=1,u=0,c=0,h=0,d=1;for(const{absoluteAnchorPoint:e,offsetX:t,offsetY:r,rotation:i,size:n,frameHeight:s,rotateClockWise:p,scaleSymbolsProportionally:f}of a)d=e?1:l,c=j(t,r,u,d,c),h=N(t,r,u,d,h),s&&(f||o)&&(l*=n/s),u=Z(i,p,u);const p=j(i,n,u,d,c),f=N(i,n,u,d,h);return{size:e*l,rotation:Z(t,r,u),offsetX:p,offsetY:f}}function P(e){return e?.dashTemplate&&(e.dashTemplate=function(e){return"string"==typeof e?function(e){return e.split(" ").map(e=>Number(e))}(e):e}(e.dashTemplate)),e}function O(e){if(null==e)return"Normal";switch(e.type){case"CIMTextSymbol":return e.textCase??"Normal";case"CIMPointSymbol":case"CIMLineSymbol":case"CIMPolygonSymbol":{const t=e.symbolLayers;if(!t)return"Normal";for(const e of t)if("CIMVectorMarker"===e.type)return O(e)}break;case"CIMVectorMarker":{const t=e.markerGraphics;if(!t)return"Normal";for(const e of t)if(e.symbol)return O(e.symbol)}}return"Normal"}function F(e){if(e)switch(e.type){case"CIMTextSymbol":return e.height;case"CIMPointSymbol":{let t=0;if(e.symbolLayers)for(const r of e.symbolLayers)if(r)switch(r.type){case"CIMCharacterMarker":case"CIMPictureMarker":case"CIMVectorMarker":case"CIMObjectMarker3D":case"CIMglTFMarker3D":{const e=r.size??i.D.CIMVectorMarker.size;e>t&&(t=e);break}}return t}case"CIMLineSymbol":case"CIMPolygonSymbol":{let t=0;if(e.symbolLayers)for(const r of e.symbolLayers)if(r)switch(r.type){case"CIMSolidStroke":case"CIMPictureStroke":case"CIMGradientStroke":{const e=r.width;null!=e&&e>t&&(t=e);break}case"CIMCharacterMarker":case"CIMPictureMarker":case"CIMVectorMarker":case"CIMObjectMarker3D":case"CIMglTFMarker3D":if(r.markerPlacement&&f(r.markerPlacement)){const e=r.size??i.D.CIMVectorMarker.size;e>t&&(t=e)}break;case"CIMPictureFill":{const e=r.height;null!=e&&e>t&&(t=e)}}return t}}}function R(e,t){if(null!==t){const r=t.get(e);return r?r.name:e}return e}function E(e){return e.map(e=>({...e,propertyName:T(e.propertyName)}))}function q(e){const t={};for(const r in e){const i=e[r];t[T(r)]=i}return t}function L(e){if(!e)return 0;let t=0;for(const r of e)t+=G(r);return t}function G(e){if(!e)return 0;if(J(e))return e.inflateSize??256;switch(e.type){case"CIMGeometricEffectArrow":return Math.abs(.5*e.width);case"CIMGeometricEffectBuffer":return Math.abs(e.size);case"CIMGeometricEffectControlMeasureLine":return 500;case"CIMGeometricEffectExtension":return Math.abs(e.length);case"CIMGeometricEffectJog":return Math.abs(.5*e.length);case"CIMGeometricEffectMove":return Math.max(Math.abs(y(e.offsetX)),Math.abs(y(e.offsetY)));case"CIMGeometricEffectOffset":case"CIMGeometricEffectOffsetTangent":return Math.abs(e.offset);case"CIMGeometricEffectRadial":return Math.abs(e.length??5);case"CIMGeometricEffectRegularPolygon":return Math.abs(e.radius);case"CIMGeometricEffectRotate":case"CIMGeometricEffectScale":default:return 0;case"CIMGeometricEffectTaperedPolygon":return.5*Math.max(Math.abs(e.fromWidth),Math.abs(e.toWidth));case"CIMGeometricEffectWave":return Math.abs(e.amplitude);case"CIMGeometricEffectDonut":return Math.abs(e.width)}}function N(e,t,r,i,n){const s=r*Math.PI/180;if(s){const r=Math.cos(s);return(Math.sin(s)*e+r*t)*i+n}return t*i+n}function j(e,t,r,i,n){const s=r*Math.PI/180;return s?(Math.cos(s)*e-Math.sin(s)*t)*i+n:e*i+n}function Z(e,t,r){return t?r-e:r+e}function D(e,t){return Math.max(Math.min((e??t)/100,1),0)}function J(e){return e.type.startsWith("Private")}function $(e){return null!=e&&function(e){return"setControlPoint"in e&&"getControlPoint"in e&&"setControlPointAt"in e&&"getControlPointAt"in e}(e)?e:void 0}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[3309],{93309(e,t,i){i.r(t),i.d(t,{default:()=>V});var a=i(5482),n=i(67996),o=i(7762),s=i(51447),r=i(49186),l=i(53966),h=i(91869),d=i(25728),p=i(17676),u=i(36708),g=i(91429),y=i(35666),c=i(5443),m=i(86738),f=i(82799),L=i(12359),C=i(4146),M=i(90708),w=i(15375);const b={MULTIPLIER:"multiplier",ABSOLUTE:"absolute-value"};var k=i(24137),T=i(62796),v=i(40736),E=i(69860),N=i(99916),D=i(63074),S=i(34287),x=i(25036),I=i(10873),A=i(8460),_=i(69540),R=i(25482),Z=i(56507),B=i(69647),z=i(93223);let O=class extends((0,_.OU)(R.o)){constructor(e){super(e),this.durationLineWidth=5,this.entityPositionAtDurationRatio=1,this.eventsTicksVisualization="start-and-end",this.lineSeparationMultiplier=1,this.moveFirstBends=!0,this.secondBendRatio=.3,this.separateTimeOverlaps=!0,this.separateTimelineOverlaps=!0,this.separatedLineShapeRatio=0,this.showDurationLineForNonZeroDurationEntityEvents=!1,this.showNonZeroDurationIntervalBounds=!1,this.spaceSeparatedLinesEvenly=!1,this.timeBannerUTCOffsetInMinutes=0,this.timeDirection="right",this.useBezierCurves=!1}};(0,a.Cg)([(0,g.MZ)({type:Z.jz,range:{min:1,max:10},json:{write:!0}})],O.prototype,"durationLineWidth",void 0),(0,a.Cg)([(0,g.MZ)({type:Number,range:{min:0,max:1},json:{write:!0}})],O.prototype,"entityPositionAtDurationRatio",void 0),(0,a.Cg)([(0,z.e)(B.SJ)],O.prototype,"eventsTicksVisualization",void 0),(0,a.Cg)([(0,g.MZ)({type:Number,range:{min:0},json:{write:!0}})],O.prototype,"lineSeparationMultiplier",void 0),(0,a.Cg)([(0,g.MZ)({type:Boolean,json:{write:!0}})],O.prototype,"moveFirstBends",void 0),(0,a.Cg)([(0,g.MZ)({type:Number,range:{min:0,max:1},json:{write:!0}})],O.prototype,"secondBendRatio",void 0),(0,a.Cg)([(0,g.MZ)({type:Boolean,json:{write:!0}})],O.prototype,"separateTimeOverlaps",void 0),(0,a.Cg)([(0,g.MZ)({type:Boolean,json:{write:!0}})],O.prototype,"separateTimelineOverlaps",void 0),(0,a.Cg)([(0,g.MZ)({type:Number,range:{min:0,max:1},json:{write:!0}})],O.prototype,"separatedLineShapeRatio",void 0),(0,a.Cg)([(0,g.MZ)({type:Boolean,json:{write:!0}})],O.prototype,"showDurationLineForNonZeroDurationEntityEvents",void 0),(0,a.Cg)([(0,g.MZ)({type:Boolean,json:{write:!0}})],O.prototype,"showNonZeroDurationIntervalBounds",void 0),(0,a.Cg)([(0,g.MZ)({type:Boolean,json:{write:!0}})],O.prototype,"spaceSeparatedLinesEvenly",void 0),(0,a.Cg)([(0,g.MZ)({type:Z.jz,json:{write:!0}})],O.prototype,"timeBannerUTCOffsetInMinutes",void 0),(0,a.Cg)([(0,g.MZ)({type:["bottom","left","right","top"],json:{write:!0}})],O.prototype,"timeDirection",void 0),(0,a.Cg)([(0,g.MZ)({type:Boolean,json:{write:!0}})],O.prototype,"useBezierCurves",void 0),O=(0,a.Cg)([(0,g.$K)("esri.linkChart.ChronologicalLayoutSettings")],O);const P=O;let U=class extends((0,_.OU)(R.o)){constructor(e){super(e),this.absoluteIdealEdgeLength=1,this.autoRepulsionRadius=!0,this.computationBudgetTime=2,this.idealEdgeLengthType="multiplier",this.multiplicativeIdealEdgeLength=1,this.repulsionRadiusMultiplier=1}};(0,a.Cg)([(0,g.MZ)({type:Number,range:{min:0,max:360},json:{write:!0}})],U.prototype,"absoluteIdealEdgeLength",void 0),(0,a.Cg)([(0,g.MZ)({type:Boolean,json:{write:!0}})],U.prototype,"autoRepulsionRadius",void 0),(0,a.Cg)([(0,g.MZ)({type:Number,json:{write:!1}})],U.prototype,"computationBudgetTime",void 0),(0,a.Cg)([(0,z.e)(B.lg)],U.prototype,"idealEdgeLengthType",void 0),(0,a.Cg)([(0,g.MZ)({type:Number,range:{min:0,max:5},json:{write:!0}})],U.prototype,"multiplicativeIdealEdgeLength",void 0),(0,a.Cg)([(0,g.MZ)({type:Number,range:{min:1,max:99},json:{write:!0}})],U.prototype,"repulsionRadiusMultiplier",void 0),U=(0,a.Cg)([(0,g.$K)("esri.linkChart.OrganicLayoutSettings")],U);const j=U;let F=class extends((0,_.OU)(R.o)){constructor(e){super(e),this.rootEntities=[]}};(0,a.Cg)([(0,g.MZ)({type:[Object],json:{write:!0}})],F.prototype,"rootEntities",void 0),F=(0,a.Cg)([(0,g.$K)("esri.linkChart.RootedLayoutSettings")],F);let G=class extends((0,_.OU)(R.o)){constructor(e){super(e),this.chronologicalLayoutSettings=null,this.organicLayoutSettings=null,this.rootedLayoutSettings=null}};(0,a.Cg)([(0,g.MZ)({type:P,json:{write:!0}})],G.prototype,"chronologicalLayoutSettings",void 0),(0,a.Cg)([(0,g.MZ)({type:j,json:{write:!0}})],G.prototype,"organicLayoutSettings",void 0),(0,a.Cg)([(0,g.MZ)({type:F,json:{write:!0}})],G.prototype,"rootedLayoutSettings",void 0),G=(0,a.Cg)([(0,g.$K)("esri.linkChart.LayoutSettings")],G);var H=i(54628),$=i(53902),K=i(56400);let Q=class extends((0,S.q)((0,D.dM)((0,x.j)((0,d.M)(C.A))))){constructor(e){if(super(e),this.url=null,this.dataPreloadedInLocalCache=!1,this.initializationLinkChartConfig=null,this.membershipModified=!0,this._currentLinkChartConfig={layoutMode:"organic-standard"},this._graphTypeLookup=new Map,this.dataManager=null,this.knowledgeGraph=null,this.layers=new(o.A.ofType(T.A)),this.entityLinkChartDiagramLookup=new Map,this.relationshipLinkChartDiagramLookup=new Map,this.linkChartExtent=new c.A({xmin:-1e-7,ymin:-1e-7,xmax:1e-7,ymax:1e-7}),this.memberEntityTypes=null,this.memberRelationshipTypes=null,this.operationalLayerType="LinkChartLayer",this.sublayerIdsCache=new Map,this.tables=new(o.A.ofType(T.A)),this.type="link-chart",this.userHasEditingPrivileges=!0,this.userHasFullEditingPrivileges=!1,this.userHasUpdateItemPrivileges=!1,this.chronologicalAuxiliaryGraphics=null,this._originalInclusionList=e?.initializationInclusionModeDefinition,e?.dataPreloadedInLocalCache&&!e?.initializationInclusionModeDefinition)throw new r.A("knowledge-graph:linkchart-layer-constructor","If creating a link chart composite layer and configured that data is already loaded in the cache, you must specify an inclusion list so the Composite Layer knows what records belong to it");this.addHandles((0,u.wB)(()=>this.layers.concat(this.tables),(e,t)=>this._handleSublayersChange(e,t),u.OH))}normalizeCtorArgs(e){if(!e)return{};const{url:t,dataPreloadedInLocalCache:i,initializationLinkChartConfig:a}=e;let{title:n}=e;return!n&&e?.url&&(n=(0,v.$L)(e.url)),{url:t,title:n,dataPreloadedInLocalCache:i,initializationLinkChartConfig:a}}_initializeLayerProperties(e){const t=new Set;let i=[],a=[];if(e.inclusionModeDefinition&&(!e.inclusionModeDefinition.namedTypeDefinitions||e.inclusionModeDefinition.namedTypeDefinitions.size<1))throw new r.A("knowledge-graph:composite-layer-constructor","If an explicit inclusion definition is defined, at least one namedTypeDefinition must also be defined");e.inclusionModeDefinition?.generateAllSublayers?(i=e.knowledgeGraph.dataModel.entityTypes??[],a=e.knowledgeGraph.dataModel.relationshipTypes??[]):e.inclusionModeDefinition?.namedTypeDefinitions&&e.inclusionModeDefinition?.namedTypeDefinitions.size>0?e.inclusionModeDefinition?.namedTypeDefinitions.forEach((n,o)=>{const s=this._graphTypeLookup.get(o);if(!s)return l.A.getLogger(this).warn(`A named type, ${o}, was in the inclusion list that wasn't in the data model and will be removed`),void e.inclusionModeDefinition?.namedTypeDefinitions.delete(o);"relationship"===s.type?t.has(o)||(t.add(o),a.push(s)):"entity"===s.type?t.has(o)||(t.add(o),i.push(s)):(l.A.getLogger(this).warn(`A named type, ${o}, was in the inclusion list that wasn't properly modeled and will be removed`),e.inclusionModeDefinition?.namedTypeDefinitions.delete(o))}):(i=e.knowledgeGraph.dataModel.entityTypes??[],a=e.knowledgeGraph.dataModel.relationshipTypes??[]);const n=new k.P({knowledgeGraph:e.knowledgeGraph,inclusionModeDefinition:e.inclusionModeDefinition});this.knowledgeGraph=e.knowledgeGraph,this.memberEntityTypes=i,this.memberRelationshipTypes=a,this.dataManager=n}load(e){const t=async()=>{const e=[],t=[];this.loadLayerAssumingLocalCache(),this._layersLoadedFromAuthoritativeItem()||await(0,v.qN)(this),this.dataManager.inclusionModeDefinition&&(this.dataManager.inclusionModeDefinition.generateAllSublayers=!1),this.dataManager.inclusionModeDefinition?.namedTypeDefinitions.forEach(e=>{e.useAllData=!1}),await this._initializeDiagram(),this.layers.forEach(i=>{t.push(i.refreshCachedQueryEngine()),e.push(new Promise(e=>{i.on("layerview-create",()=>{e(null)})}))}),this.tables.forEach(e=>{t.push(e.refreshCachedQueryEngine())}),await Promise.all(t)};return this.addResolvingPromise(new Promise(i=>{(0,$.fetchKnowledgeGraph)(this.url).then(async a=>{a.dataModel.entityTypes?.forEach(e=>{e.name&&this._graphTypeLookup.set(e.name,e)}),a.dataModel.relationshipTypes?.forEach(e=>{e.name&&this._graphTypeLookup.set(e.name,e)});const o=this.linkChart?.linkChartProperties;6===o?.originIdOf("entitiesUrl")&&(this.membershipModified=!1,(0,H.lV)([o.entitiesUrl??"",o.relationshipsUrl??""],this.linkChart?.portalItem?.itemUrl??"").then(e=>{this.linkChart?.linkChartProperties?.setCreationDatesForResources?.(e)},()=>{}),this._originalInclusionList=await n.XW.fetchAndConvertSerializedLinkChart({entitiesUrl:o?.entitiesUrl,relationshipsUrl:o?.relationshipsUrl},{signal:e?.signal}),this._alignLayersDataModelAndInclusionDefinition(a.dataModel),this.initializationLinkChartConfig={layoutSettings:o?.layoutSettings??void 0,layoutMode:(0,N.k5)(o.layoutType)}),this._initializeLayerProperties({knowledgeGraph:a,inclusionModeDefinition:this._originalInclusionList}),this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.size||(this.dataManager.inclusionModeDefinition={generateAllSublayers:!1,namedTypeDefinitions:new Map},this.dataManager.knowledgeGraph.dataModel.entityTypes?.forEach(e=>{e.name&&this.dataManager.inclusionModeDefinition?.namedTypeDefinitions.set(e.name,{useAllData:!0})}),this.dataManager.knowledgeGraph.dataModel.relationshipTypes?.forEach(e=>{e.name&&this.dataManager.inclusionModeDefinition?.namedTypeDefinitions.set(e.name,{useAllData:!0})}));const{edit:s,fullEdit:r,updateItem:l}=await(0,v.N1)(a.serviceDefinition.serviceItemId,this.url,e);if(this._set("userHasEditingPrivileges",s),this._set("userHasFullEditingPrivileges",r),this._set("userHasUpdateItemPrivileges",l),this.read({dateFieldsTimeReference:a.serviceDefinition.dateFieldsTimeReference},{origin:"service"}),this.dataPreloadedInLocalCache){const e=E.A.getInstance();for(const[t,i]of this.dataManager.inclusionModeDefinition?.namedTypeDefinitions??[])for(const a of i.members?.values()??[]){const i=e.readFromStoreById(`${t}__${a.id}`);i&&(0,h.tE)(this.dataManager.sublayerCaches,t,()=>new Map).set(a.id,i)}await t()}else{const i="geographic-organic-standard"===this.initializationLinkChartConfig?.layoutMode;this.addResolvingPromise(this.dataManager.refreshCacheContent(void 0,!1,i,!0).then(async()=>{(0,p.Te)(e),await t()}))}i(null)})})),Promise.resolve(this)}set initializationInclusionModeDefinition(e){"loaded"!==this.loadStatus&&"failed"!==this.loadStatus?this._set("initializationInclusionModeDefinition",e):l.A.getLogger(this).error("#initializationInclusionModeDefinition","initializationInclusionModeDefinition cannot be changed after the layer is loaded.")}get linkChart(){return this.parent}get sublayerCapabilities(){return(0,v.hZ)(this.knowledgeGraph)}async addRecords(e,t){let i=[];t?.cascadeAddRelationshipEndNodes&&this.dataManager.knowledgeGraph.dataModel&&(i=await(0,N.aq)(e,this.dataManager.knowledgeGraph));const a=e.concat(i).filter(e=>!this.sublayerIdsCache.get(e.typeName)?.has(e.id));a.length>0&&(this.membershipModified=!0),await this._handleNewRecords(a,t)}async createSublayerForNamedType(e){await this.load();const t=this._graphTypeLookup.get(e);if(!t)throw new r.A("knowledge-graph:missing-type","The specified type does not exist in the knowledge graph.");if(this.dataManager.sublayerCaches.has(e))throw new r.A("knowledge-graph:duplicate-type","The specified type already exists as a sublayer.");this.dataManager.sublayerCaches.set(e,new Map),(0,h.tE)(this.sublayerIdsCache,e,()=>new Set);const i=this._createSublayer(t);return"entity"===t.type?this.dataManager.entityTypeNames.add(e):this.dataManager.relationshipTypeNames.add(e),this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.set(e,{useAllData:!1,members:new Map}),i.geometryType?this.layers.push(i):this.tables.push(i),await(0,v.qN)(this,[e]),this._refreshNamedTypes(),i}async removeRecords(e,{cascadeRemoveRelationships:t=!0,recalculateLayout:i=!1,overrideMembershipCheck:a=!1}={cascadeRemoveRelationships:!0,recalculateLayout:!1,overrideMembershipCheck:!1}){let n=[];for(const t of e)(a||!1===this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.get(t.typeName)?.useAllData&&this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.get(t.typeName)?.members?.has(t.id))&&n.push(t);if(t){const e=new Set,t=[];for(const t of n)if(this.dataManager.nodeConnectionsLookup.has(t.id))for(const i of this.dataManager.nodeConnectionsLookup.get(t.id))e.add(i);for(const i of e)if(this.dataManager.memberIdTypeLookup.has(i))for(const e of this.dataManager.memberIdTypeLookup.get(i))this.dataManager.relationshipTypeNames.has(e)&&t.push({id:i,typeName:e});n=n.concat(t)}const o=this._currentLinkChartConfig.layoutSettings?.rootedLayoutSettings?.rootEntities;if(o?.length){const e=new Set(n.map(({id:e})=>e)),t=o.filter(({id:t})=>!e.has(t));if(t.length!==o.length){this._currentLinkChartConfig.layoutSettings.rootedLayoutSettings.rootEntities=t;const e=this.linkChart?.linkChartProperties;e?.layoutSettings?.rootedLayoutSettings&&(e.layoutSettings.rootedLayoutSettings.rootEntities=t)}}this.dataManager.removeFromLayer(n);for(const e of n)this.sublayerIdsCache.get(e.typeName)?.delete(e.id),this.dataManager.relationshipTypeNames.has(e.typeName)?this.relationshipLinkChartDiagramLookup.delete(e.id):this.entityLinkChartDiagramLookup.delete(e.id);const s=i?void 0:this.getCurrentNodeLocations();await this._calculateLayoutWithSublayerTimeInfo(this._currentLinkChartConfig.layoutMode,{layoutSettings:this._currentLinkChartConfig.layoutSettings,lockedEntityLocations:s}),n.length>0&&(this.membershipModified=!0);const r=[];return this.layers.forEach(e=>{r.push(e.refreshCachedQueryEngine())}),await Promise.all(r),this._refreshNamedTypes(),n}async expand(e,t){let i=[];try{const a=await this.dataManager.getConnectedRecordIds(e,t?.relationshipTypeNames,t);i=a.filter(e=>!this.sublayerIdsCache.get(e.typeName)?.has(e.id)),await this._handleNewRecords(i,t),a.length>0&&(this.membershipModified=!0),(0,p.Te)(t?.signal)}catch(e){throw(0,p.zf)(e)&&i.length>0&&await this.removeRecords(i,{overrideMembershipCheck:!0}),e}return{records:i}}loadLayerAssumingLocalCache(){const e=[...this.memberRelationshipTypes,...this.memberEntityTypes];this.layers.length||0===this.originIdOf("tables")?0===this.originIdOf("layers")?this._createSublayers(e,this.layers,e=>!!e.geometryType):this._updateSublayers(e,this.layers):this.layers=new o.A,this.tables.length||0===this.originIdOf("layers")?0===this.originIdOf("tables")?this._createSublayers(e,this.tables,e=>!e.geometryType):this._updateSublayers(e,this.tables):this.tables=new o.A,this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.forEach((e,t)=>{const i=(0,h.tE)(this.sublayerIdsCache,t,()=>new Set);e.members?.forEach(({id:e,linkChartLocation:a})=>{if(i.add(e),a){const i="coords"in a&&"lengths"in a?a:(0,M.Ux)(a);this.dataManager.relationshipTypeNames.has(t)?this.relationshipLinkChartDiagramLookup.set(e,i):this.entityLinkChartDiagramLookup.set(e,i)}})})}async calculateLinkChartLayout(e="organic-standard",t){const i=[],a=[],n=[];this.dataManager.sublayerCaches.forEach((e,t)=>{this.dataManager.entityTypeNames.has(t)?e.forEach(e=>{i.push({typeName:t,feature:e})}):this.dataManager.relationshipTypeNames.has(t)&&e.forEach(e=>{a.push({typeName:t,feature:e})})}),this.entityLinkChartDiagramLookup=new Map,this.relationshipLinkChartDiagramLookup=new Map;const o=new Map,s=new Map,d=new Map,u=new Map,g=new Uint8Array(i.length),y=new Float64Array(i.length),C=new Float64Array(i.length),b=new Float64Array(i.length),k=new Float64Array(i.length),T=new Uint32Array(a.length),v=new Uint32Array(a.length),E=new Float64Array(a.length),N=new Float64Array(a.length),D=[];let S=!1;const x=new c.A({xmin:-1e-7,ymin:-1e-7,xmax:1e-7,ymax:1e-7});let I,_="organic-standard",R=0,Z=0;const B=A.i6.apply;switch(_="geographic-organic-standard"===e?"organic-standard":e,_){case"organic-standard":I=A.pM.apply;break;case"organic-community":I=A.Tu.apply;break;case"hierarchical-bottom-to-top":I=A.$C.apply;break;case"radial-root-centric":I=A.vJ.apply;break;case"tree-left-to-right":I=A.Xq.apply;break;default:I=A.Wg.apply}let z=!1;const O=new Set(t?.layoutSettings?.rootedLayoutSettings?.rootEntities?.map(({id:e})=>e));i.forEach(({typeName:i,feature:a})=>{if("chronological-mono-timeline"!==e&&"chronological-multi-timeline"!==e&&t?.lockedEntityLocations?.has(a.attributes[w.dr])){"geographic-organic-standard"===e&&this.dataManager.geographicLookup.has(i)?g[R]=2:g[R]=0;const n=t.lockedEntityLocations.get(a.attributes[w.dr]);y[R]=n.x,C[R]=n.y}else if("geographic-organic-standard"===e&&this.dataManager.geographicLookup.has(i)){g[R]=2;let e=null;const t=a.attributes[this.dataManager.geographicLookup.get(i).name],n=this.dataManager.geographicLookup.get(i)?.geometryType;switch(n){case"esriGeometryPoint":y[R]=t?.x,C[R]=t?.y;break;case"esriGeometryPolygon":{const i=t?(0,L.Ve)(t):null;e=i?m.A.fromJSON(i):null,null!=e?.x&&null!=e?.y?(y[R]=e.x,C[R]=e.y):g[R]=1;break}case"esriGeometryPolyline":case"esriGeometryMultipoint":e=t?.extent?.center,null!=e?.x&&null!=e?.y?(y[R]=e.x,C[R]=e.y):g[R]=1;break;default:g[R]=1}(null==y[R]||null==C[R]||Number.isNaN(y[R])||Number.isNaN(C[R]))&&(g[R]=1,y[R]=0,C[R]=0)}else if("chronological-mono-timeline"===e||"chronological-multi-timeline"===e){!z&&t?.lockedEntityLocations?.has(a.attributes[w.dr])&&(z=!0);const e=t?.timeInfoByTypeName?.get(i),n=e?.startField,o=n&&e?.startField?a.attributes[n]:null;b[R]=o?new Date(o).getTime():NaN;const s=e?.endField,r=s&&e?.endField?a.attributes[s]:null;k[R]=r?new Date(r).getTime():NaN,y[R]=0,C[R]=0,g[R]=1}else g[R]=1,y[R]=0,C[R]=0;O.has(a.attributes[w.dr])&&(g[R]|=4),u.set(a.attributes[w.dr],R),D[R]={feature:a,typeName:i},R++}),z&&l.A.getLogger(this).warn("Locked node locations are not supported for chronological layout at this time. Requested node locations were ignored");let P=!1;const U=new Map;a.forEach(i=>{const a=i.feature.attributes[w.Cz],o=i.feature.attributes[w.KQ],s=u.get(a),r=u.get(o),l=t?.timeInfoByTypeName?.get(i.typeName),h=t?.timeInfoByTypeName?l?.startField:null,d=h?i.feature.attributes[h]:null,p=l?.endField,g=p?i.feature.attributes[p]:null;if(void 0!==s&&void 0!==r){let t=a+"-"+o;"chronological-mono-timeline"!==e&&"chronological-multi-timeline"!==e||(t=t+"-"+d+"-"+g);const l=U.get(t),h=l?.has(i.typeName);h||(T[Z]=s,v[Z]=r,"chronological-mono-timeline"!==e&&"chronological-multi-timeline"!==e||(E[Z]=d?new Date(d).getTime():NaN,N[Z]=g?new Date(g).getTime():NaN),void 0===l?U.set(t,new Map([[i.typeName,Z]])):l.set(i.typeName,Z),Z++),n.push(i)}else P=!0,this.relationshipLinkChartDiagramLookup.set(a,null)}),P&&l.A.getLogger(this).warn("A relationship is a member of this layer that has either origin or destination entity nodes that are not members. The diagram geometry will be set to null");const j=this._validateOrganicLayoutSettings(e,t?.layoutSettings?.organicLayoutSettings),F=this._convertValidatedOrganicSettingsToCalculationSettings(j);await(0,A.Hh)();let G=1,H=null;if("chronological-mono-timeline"===e||"chronological-multi-timeline"===e){let i;({status:G,links:H,graphics:i}=B(()=>t?.signal?.aborted??!1,g,y,C,b,k,T.subarray(0,Z),v.subarray(0,Z),E.subarray(0,Z),N.subarray(0,Z),"chronological-multi-timeline"===e,t?.layoutSettings?.chronologicalLayoutSettings)),0===G&&(this.chronologicalAuxiliaryGraphics=i)}else({status:G,links:H}=I(()=>t?.signal?.aborted??!1,g,y,C,T.subarray(0,Z),v.subarray(0,Z),F.computationBudgetTime,F.idealEdgeLengthMultiplier,F.repulsionRadiusMultiplier));if((0,p.Te)(t?.signal),1===G)throw new r.A("knowledge-graph:layout-failed","Attempting to arrange the records in the specified layout failed");if(2===G)throw(0,p.NK)();for(let e=0;e<D.length;e++){if(C[e]>84.9999?C[e]=84.9999:C[e]<-84.9999&&(C[e]=-84.9999),y[e]>179.9999?y[e]=179.9999:y[e]<-179.9999&&(y[e]=-179.9999),D[e].feature.attributes[w.T1]=new m.A(y[e],C[e]),o.has(D[e].typeName)){const t=o.get(D[e].typeName);t?.set(D[e].feature.attributes[w.dr],D[e].feature)}else{const t=new Map;t.set(D[e].feature.attributes[w.dr],D[e].feature),o.set(D[e].typeName,t)}d.set(D[e].feature.attributes[w.dr],D[e].feature);const t=(0,M.Ux)(D[e].feature.attributes[w.T1]);this.entityLinkChartDiagramLookup.set(D[e].feature.attributes[w.dr],D[e].feature.attributes[w.T1]?t:null);const i=(0,h.tE)(this.dataManager.inclusionModeDefinition.namedTypeDefinitions,D[e].typeName,()=>({useAllData:!1,members:new Map}));(0,h.tE)(i.members,D[e].feature.attributes[w.dr],()=>({id:D[e].feature.attributes[w.dr],linkChartLocation:void 0})).linkChartLocation=D[e].feature.attributes[w.T1];const{x:a,y:n}=D[e].feature.attributes[w.T1];if(S)x.xmin=Math.min(x.xmin,a),x.xmax=Math.max(x.xmax,a),x.ymin=Math.min(x.ymin,n),x.ymax=Math.max(x.ymax,n);else{const e=1e-7;x.xmin=a-e,x.xmax=a+e,x.ymin=n-e,x.ymax=n+e,S=!0}}if(this.linkChartExtent.xmin=x.xmin,this.linkChartExtent.xmax=x.xmax,this.linkChartExtent.ymin=x.ymin,this.linkChartExtent.ymax=x.ymax,!H)throw new r.A("knowledge-graph:layout-failed","Attempting to retrieve link geometry from diagram engine failed");const $=new Map,K=new Map,Q=new Map,V=new Set;for(let i=0;i<n.length;i++){const a=[],o=n[i],r=o.feature.attributes[w.Cz],p=o.feature.attributes[w.KQ];let g=r+"-"+p;if("chronological-mono-timeline"===e||"chronological-multi-timeline"===e){const e=t?.timeInfoByTypeName?.get(o.typeName),i=t?.timeInfoByTypeName?e?.startField:null,a=i?o.feature.attributes[i]:null,n=e?.endField;g+="-"+a+"-"+(n?o.feature.attributes[n]:null)}const y=U.get(g).get(o.typeName),c=0===y?0:H?.vertexEndIndex[y-1];if(!V.has(y)){if(V.add(y),2===H.types[y]){const e=[H.vertices[2*c],H.vertices[2*c+1]],t=[H.vertices[2*(c+1)],H.vertices[2*(c+1)+1]],i=[.5*(e[0]+t[0]),.5*(e[1]+t[1])],n=[i[0]-e[0],i[1]-e[1]],o=[i[0]+n[1],i[1]-n[0]],s=[i[0]-n[1],i[1]+n[0]];a.push(e),a.push(o),a.push(t),a.push(s),a.push(e)}else{if(0!==H.types[y]){l.A.getLogger(this).warn("A relationship generated an unsupported link geometry type. It will not be rendered");continue}for(let e=c;e<H.vertexEndIndex[y];e++)a.push([H.vertices[2*e],H.vertices[2*e+1]])}if("chronological-mono-timeline"!==e&&"chronological-multi-timeline"!==e){const e=D[u.get(r)]?.feature.attributes[w.T1],t=D[u.get(p)]?.feature.attributes[w.T1];a[0][0]===e.x&&a[0][1]===e.y||(a[0]=[e.x,e.y]),a[a.length-1][0]===t.x&&a[a.length-1][1]===t.y||(a[a.length-1]=[t.x,t.y])}for(let e=1;e<a.length-1;e++)a[e][1]>85.5?a[e][1]=85.5:a[e][1]<-85.5&&(a[e][1]=-85.5),a[e][0]>179.9999?a[e][0]=179.9999:a[e][0]<-179.9999&&(a[e][0]=-179.9999);$.has(g)?$.get(g).push(a):$.set(g,[a])}const m=$.get(g);K.has(g)||(K.set(g,new Map),Q.set(g,new Map));const L=K.get(g),C=Q.get(g);L.has(o.typeName)||(L.set(o.typeName,m.shift()),C.set(o.typeName,0));const b=L.get(o.typeName);C.set(o.typeName,C.get(o.typeName)+1);const k=new f.A({paths:[b]});if(o.feature.attributes[w.T1]=k,s.has(o.typeName)){const e=s.get(o.typeName);e?.set(o.feature.attributes[w.dr],o.feature)}else{const e=new Map;e.set(o.feature.attributes[w.dr],o.feature),s.set(o.typeName,e)}d.set(o.feature.attributes[w.dr],o.feature);const T=(0,M.Ux)(o.feature.attributes[w.T1]);this.relationshipLinkChartDiagramLookup.set(o.feature.attributes[w.dr],o.feature.attributes[w.T1]?T:null);const v=(0,h.tE)(this.dataManager.inclusionModeDefinition.namedTypeDefinitions,o.typeName,()=>({useAllData:!1,members:new Map}));(0,h.tE)(v.members,o.feature.attributes[w.dr],()=>({id:o.feature.attributes[w.dr],linkChartLocation:void 0})).linkChartLocation=T}for(const e of n)e.feature.attributes[w.M1]=Q.get(e.feature.attributes[w.Cz]+"-"+e.feature.attributes[w.KQ])?.get(e.typeName)??null;return this._currentLinkChartConfig={layoutMode:e,layoutSettings:t?.layoutSettings?.clone()},{nodes:o,links:s,idMap:d}}async applyNewLinkChartLayout(e="organic-standard",t){let{lockedNodeLocations:i,lockedEntityLocations:a,rootEntityIds:n,...o}=t??{};!a&&i?((0,s.io)(l.A.getLogger(this),"lockedNodeLocations is deprecated in 5.0. Use lockedEntityLocations instead.",{replacement:"Use lockedEntityLocations instead.",version:"5.0"}),a=i):a&&i&&(0,s.io)(l.A.getLogger(this),"Both lockedNodeLocations (deprecated in 5.0) and lockedEntityLocations are defined. Use lockedEntityLocations only instead.",{replacement:"Use lockedEntityLocations instead.",version:"5.0"});const r=o.layoutSettings?.rootedLayoutSettings?.rootEntities;if(!r&&n){(0,s.io)(l.A.getLogger(this),"rootEntityIds is deprecated in 5.1. Use layoutSettings.rootedLayoutSettings.rootEntities instead.",{replacement:"Use layoutSettings.rootedLayoutSettings.rootEntities instead.",version:"5.1"});const e=[];for(const t of n){const i=this.dataManager.memberIdTypeLookup.get(t),a=Array.from(i??[]).find(e=>this.dataManager.entityTypeNames.has(e));a&&e.push({id:t,typeName:a})}o.layoutSettings=o.layoutSettings??new G,o.layoutSettings.rootedLayoutSettings=o.layoutSettings.rootedLayoutSettings??new F,o.layoutSettings.rootedLayoutSettings.rootEntities=e}else r&&n&&(0,s.io)(l.A.getLogger(this),"Both rootEntityIds (deprecated in 5.1) and layoutSettings.rootedLayoutSettings.rootEntities are defined. Use layoutSettings.rootedLayoutSettings.rootEntities only instead.",{replacement:"Use layoutSettings.rootedLayoutSettings.rootEntities instead.",version:"5.1"});const h=[];await this._calculateLayoutWithSublayerTimeInfo(e,{...o,lockedEntityLocations:a}),this.layers.forEach(e=>{h.push(e.refreshCachedQueryEngine())}),this.membershipModified=!0,await Promise.all(h),this._refreshNamedTypes()}getCurrentNodeLocations(){const e=new Map;for(const[t,i]of this.dataManager.inclusionModeDefinition?.namedTypeDefinitions.entries()??[])this.dataManager.relationshipTypeNames.has(t)||i?.members?.forEach(t=>{const i=t.linkChartLocation;let a;const n=t.id;i&&(a="x"in i?{x:i.x,y:i.y}:{x:i.coords[0],y:i.coords[1]},e.set(n,new m.A({x:a.x,y:a.y})))});return e}async refreshLinkChartCache(e){await this.dataManager.refreshCacheContent(e);const t=[];this.layers.forEach(e=>{t.push(e.refreshCachedQueryEngine())}),await Promise.all(t),this._refreshNamedTypes()}async connectBetweenEntities(e,t){if(!e.length)return{records:[]};let i=[];try{let a=[];for(const e of this.dataManager.relationshipTypeNames){const t=this.sublayerIdsCache.get(e);t&&(a=a.concat(Array.from(t.keys())))}i=await this.dataManager.getRelationshipsBetweenNodes(e,a,t),await this._handleNewRecords(i,t),(0,p.Te)(t)}catch(e){throw(0,p.zf)(e)&&this.removeRecords(i),e}return{records:i}}async connectFromEntities(e,t){if(!e.length)return{records:[]};let i=[];try{let a=[];for(const e of this.dataManager.relationshipTypeNames){const t=this.sublayerIdsCache.get(e);t&&(a=a.concat(Array.from(t.keys())))}let n=[];for(const e of this.dataManager.entityTypeNames){const t=this.sublayerIdsCache.get(e);t&&(n=n.concat(Array.from(t)))}i=await this.dataManager.getRelationshipsFromNodes(e,n,a,t),await this._handleNewRecords(i,t),i.length>0&&(this.membershipModified=!0),(0,p.Te)(t)}catch(e){throw(0,p.zf)(e)&&this.removeRecords(i),e}return{records:i}}getCurrentLayout(){return this._currentLinkChartConfig.layoutMode}async _calculateLayoutWithSublayerTimeInfo(e="organic-standard",t){const i=new Map;this.layers.forEach(e=>{i.set(e.objectType.name,e.timeInfo)}),await this.calculateLinkChartLayout(e,{timeInfoByTypeName:i,...t}),this.linkChart?.handleChronologicalOverlay()}async _handleNewRecords(e,t){const i=new Set,a=[],n=this.layers.concat(this.tables);for(const t of e)this._graphTypeLookup.has(t.typeName)&&(!1===n.some(e=>e.objectType.name===t.typeName)&&(this.dataManager.sublayerCaches.set(t.typeName,new Map),i.add(t.typeName)),(0,h.tE)(this.sublayerIdsCache,t.typeName,()=>new Set).add(t.id),a.push(t));this.dataManager.addToLayer(a);for(const e of i){const t=this._graphTypeLookup.get(e);if(t){const i=this._createSublayer(t);"entity"===t.type?this.dataManager.entityTypeNames.add(e):this.dataManager.relationshipTypeNames.add(e),i.geometryType?this.layers.push(i):this.tables.push(i)}}await(0,v.qN)(this,Array.from(i),t),await this.dataManager.refreshCacheContent(e.map(e=>e.id),void 0,void 0,void 0,t);const o={layoutSettings:this._currentLinkChartConfig.layoutSettings,lockedEntityLocations:new Map};for(const[e,t]of this.entityLinkChartDiagramLookup.entries())t&&o.lockedEntityLocations.set(e,new m.A(t.coords[0],t.coords[1]));await this.applyNewLinkChartLayout(this._currentLinkChartConfig.layoutMode,o)}_createSublayers(e,t,i){e.forEach(e=>{const a=this._createSublayer(e);i(a)&&t.push(a),this._updateSublayerCaches(e)})}_updateSublayers(e,t){t.forEach(t=>{t.parentCompositeLayer=this;const i=e.find(e=>e.type===t.graphType&&e.name===t.graphTypeName);i&&(t.objectType=i,t.read({title:i.name},{origin:"service"}),this._updateSublayerCaches(i))})}_updateSublayerCaches({name:e}){if(!e)return;const t=this.dataManager.sublayerCaches;t.has(e)||t.set(e,new Map)}_layersLoadedFromAuthoritativeItem(){const e=this.originIdOf("layers");return e>=3&&e<7}async _initializeDiagram(){this.initializationLinkChartConfig?this.initializationLinkChartConfig.doNotRecalculateLayout?(this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.forEach((e,t)=>{e?.members?.forEach(e=>{const i=e.linkChartLocation;let a;const n=e.id;if(!i)return;a="x"in i?{x:i.x,y:i.y}:{x:i.coords[0],y:i.coords[1]};const o=(0,M.Ux)(a);this.dataManager.relationshipTypeNames.has(t)?this.relationshipLinkChartDiagramLookup.set(n,o):this.entityLinkChartDiagramLookup.set(n,o),this.linkChartExtent.xmin>a.x&&(this.linkChartExtent.xmin=a.x),this.linkChartExtent.xmax<a.x&&(this.linkChartExtent.xmax=a.x),this.linkChartExtent.ymin>a.y&&(this.linkChartExtent.ymin=a.y),this.linkChartExtent.ymax<a.y&&(this.linkChartExtent.ymax=a.y)})}),this.memberRelationshipTypes.forEach(e=>{e.name&&this.dataManager.sublayerCaches.get(e.name)?.forEach(e=>{const t=this.relationshipLinkChartDiagramLookup.get(e.attributes[w.Cz]),i=this.relationshipLinkChartDiagramLookup.get(e.attributes[w.KQ]);if(t&&i){const a=(0,M.Ux)(new f.A({paths:[[[t.coords[0],t.coords[1]],[i.coords[0],i.coords[1]]]]}));this.relationshipLinkChartDiagramLookup.set(e.attributes[w.dr],a)}else this.relationshipLinkChartDiagramLookup.set(e.attributes[w.dr],null)})})):await this._calculateLayoutWithSublayerTimeInfo(this.initializationLinkChartConfig.layoutMode,{lockedEntityLocations:this.getCurrentNodeLocations(),...this.initializationLinkChartConfig}):await this._calculateLayoutWithSublayerTimeInfo("organic-standard",{lockedEntityLocations:this.getCurrentNodeLocations()})}_refreshNamedTypes(){for(const e of this.layers)e.emit("refresh",{dataChanged:!0});for(const e of this.tables)e.emit("refresh",{dataChanged:!0})}_validateOrganicLayoutSettings(e,t){const i=e=>"number"==typeof e&&!isNaN(e),a=e=>i(e)&&e>=0,n={};if(!new Set(["organic-standard","organic-community","geographic-organic-standard","chronological-multi-timeline","chronological-mono-timeline"]).has(e)||!t)return n;const{computationBudgetTime:o,autoRepulsionRadius:s,repulsionRadiusMultiplier:r,absoluteIdealEdgeLength:h,multiplicativeIdealEdgeLength:d,idealEdgeLengthType:p}=t;return(e=>i(e)&&e>=1)(o)?n.computationBudgetTime=o:o&&l.A.getLogger(this).warn("Invalid layout computationBudgetTime setting, will revert to default setting"),n.autoRepulsionRadius=s,!s&&(e=>i(e)&&e>=1)(r)?n.repulsionRadiusMultiplier=r:s||(n.autoRepulsionRadius=!0,l.A.getLogger(this).warn("Invalid layout repulsionRadiusMultiplier setting, will revert to default setting")),"geographic-organic-standard"===e&&((e=>Object.values(b).includes(e))(p)?n.idealEdgeLengthType=p:void 0!==p&&l.A.getLogger(this).warn('Invalid layout idealEdgeLengthType setting, will revert to "multiplier" setting'),"absolute-value"===p&&a(h)?n.absoluteIdealEdgeLength=h:"absolute-value"===p&&void 0!==h?l.A.getLogger(this).warn("Invalid layout idealEdgeLength setting, will revert to default setting"):"multiplier"===p&&a(d)?n.multiplicativeIdealEdgeLength=d:"multiplier"===p&&void 0!==d&&l.A.getLogger(this).warn("Invalid layout idealEdgeLength setting, will revert to default setting")),n}_convertValidatedOrganicSettingsToCalculationSettings(e){let t=e.idealEdgeLengthType===b.ABSOLUTE?e.absoluteIdealEdgeLength:e.multiplicativeIdealEdgeLength;return e.idealEdgeLengthType===b.ABSOLUTE&&(void 0===t?t=-1:t*=-1),{computationBudgetTime:e.computationBudgetTime??void 0,repulsionRadiusMultiplier:e.repulsionRadiusMultiplier&&!e.autoRepulsionRadius?e.repulsionRadiusMultiplier:void 0,idealEdgeLengthMultiplier:t}}_createSublayer(e){return new T.A({objectType:e,parentCompositeLayer:this,graphType:e.type})}_handleSublayersChange(e,t){if(t&&(t.forEach(e=>{e.parent=null}),this.removeHandles("sublayers-owner")),e){const t=[];e.forEach(e=>{e.parent=this,t.push(this._createVisibleRefreshHandle(e))}),this.addHandles([...t,e.on("after-add",({item:e})=>{e.parent=this,this.addHandles(this._createVisibleRefreshHandle(e),"sublayers-owner")}),e.on("after-remove",({item:e})=>{e.parent=null})],"sublayers-owner")}}_createVisibleRefreshHandle(e){return(0,u.wB)(()=>e.visible,(t,i)=>{!0===t&&!1===i&&e.emit("refresh",{dataChanged:!0})})}_alignLayersDataModelAndInclusionDefinition(e){const t=new Set((e.entityTypes??[]).map(e=>e.name).concat((e.relationshipTypes??[]).map(e=>e.name))),i=new Set((e.entityTypes??[]).map(e=>e.name)),a=new Set((e.relationshipTypes??[]).map(e=>e.name));if(this.layers){for(const e of this.layers)!e.graphType&&t.has(e.graphTypeName)&&(e.graphType=i.has(e.graphTypeName)?"entity":"relationship");const e=this.layers.filter(e=>t.has(e.graphTypeName)&&("entity"===e.graphType?i.has(e.graphTypeName):a.has(e.graphTypeName)));this.setAtOrigin("layers",e,(0,y.OL)(this.originIdOf("layers")))}else this.layers=new o.A;if(this.layers&&this._originalInclusionList){const e=new Set(this._originalInclusionList.namedTypeDefinitions.keys()),t=this.tables?.map(e=>e.graphTypeName)??[],i=this.layers.map(e=>e.graphTypeName).concat(t);for(const t of i)e.has(t)||this._originalInclusionList.namedTypeDefinitions.set(t,{useAllData:!1,members:new Map});const a=[];for(const e of this._originalInclusionList.namedTypeDefinitions.keys())i.includes(e)||(l.A.getLogger(this).warn(`A named type, ${e}, was in the serialized feature collection but did not have a sublayer config in the item, so will be removed`),a.push(e));for(const e of a)this._originalInclusionList.namedTypeDefinitions.delete(e)}}};(0,a.Cg)([(0,g.MZ)(I.OZ)],Q.prototype,"url",void 0),(0,a.Cg)([(0,g.MZ)()],Q.prototype,"dataPreloadedInLocalCache",void 0),(0,a.Cg)([(0,g.MZ)()],Q.prototype,"initializationLinkChartConfig",void 0),(0,a.Cg)([(0,g.MZ)()],Q.prototype,"membershipModified",void 0),(0,a.Cg)([(0,g.MZ)()],Q.prototype,"dataManager",void 0),(0,a.Cg)([(0,g.MZ)()],Q.prototype,"initializationInclusionModeDefinition",null),(0,a.Cg)([(0,g.MZ)()],Q.prototype,"knowledgeGraph",void 0),(0,a.Cg)([(0,g.MZ)({type:o.A.ofType(T.A),json:{write:{ignoreOrigin:!0}}})],Q.prototype,"layers",void 0),(0,a.Cg)([(0,g.MZ)({readOnly:!0})],Q.prototype,"linkChart",null),(0,a.Cg)([(0,g.MZ)()],Q.prototype,"entityLinkChartDiagramLookup",void 0),(0,a.Cg)([(0,g.MZ)()],Q.prototype,"relationshipLinkChartDiagramLookup",void 0),(0,a.Cg)([(0,g.MZ)()],Q.prototype,"linkChartExtent",void 0),(0,a.Cg)([(0,g.MZ)()],Q.prototype,"memberEntityTypes",void 0),(0,a.Cg)([(0,g.MZ)()],Q.prototype,"memberRelationshipTypes",void 0),(0,a.Cg)([(0,g.MZ)({type:["LinkChartLayer"]})],Q.prototype,"operationalLayerType",void 0),(0,a.Cg)([(0,g.MZ)()],Q.prototype,"sublayerCapabilities",null),(0,a.Cg)([(0,g.MZ)()],Q.prototype,"sublayerIdsCache",void 0),(0,a.Cg)([(0,g.MZ)({type:o.A.ofType(T.A),json:{write:{ignoreOrigin:!0}}})],Q.prototype,"tables",void 0),(0,a.Cg)([(0,g.MZ)({json:{read:!1}})],Q.prototype,"type",void 0),(0,a.Cg)([(0,g.MZ)({readOnly:!0})],Q.prototype,"userHasEditingPrivileges",void 0),(0,a.Cg)([(0,g.MZ)({readOnly:!0})],Q.prototype,"userHasFullEditingPrivileges",void 0),(0,a.Cg)([(0,g.MZ)({readOnly:!0})],Q.prototype,"userHasUpdateItemPrivileges",void 0),(0,a.Cg)([(0,g.MZ)({json:{read:!1}})],Q.prototype,"chronologicalAuxiliaryGraphics",void 0),(0,a.Cg)([(0,g.MZ)((0,K.P6)("dateFieldsTimeReference"))],Q.prototype,"dateFieldsTimeZone",void 0),Q=(0,a.Cg)([(0,g.$K)("esri.layers.LinkChartLayer")],Q);const V=Q}}]);
|