@arcgis/core 5.2.0-next.62 → 5.2.0-next.63
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/WebDocument2D.d.ts +17 -1
- package/WebDocument2D.js +1 -1
- package/WebLinkChart.js +1 -1
- package/WebMap.js +1 -1
- package/WebScene.js +1 -1
- package/arcade/featureset/sources/FeatureLayerDynamic.js +1 -1
- package/arcgisGlobal.d.ts +5 -0
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/02dd79beb13eff6be85e.js +1 -0
- package/assets/esri/core/workers/chunks/04ffe788d2efc0a076dd.js +1 -0
- package/assets/esri/core/workers/chunks/0623acb2bd14a61b65c9.js +29 -0
- package/assets/esri/core/workers/chunks/08c2bf9defcece9e049a.js +1 -0
- package/assets/esri/core/workers/chunks/0d61c8d348b09179777a.js +1 -0
- package/assets/esri/core/workers/chunks/14cd8bb1ad4da8d1d2ca.js +1 -0
- package/assets/esri/core/workers/chunks/23a3d8f91caf3136b2aa.js +1 -0
- package/assets/esri/core/workers/chunks/{1b68b1b724ad30396723.js → 2426601b8cae7f06af4d.js} +1 -1
- package/assets/esri/core/workers/chunks/2a1c6df073e6ca6a6365.js +1 -0
- package/assets/esri/core/workers/chunks/{f4891345507df63cff3c.js → 3f775deea48e268411f1.js} +3 -3
- package/assets/esri/core/workers/chunks/{e3623e557ab463580fd2.js → 41e821ce229bc56dc1a1.js} +1 -1
- package/assets/esri/core/workers/chunks/{17acbf40e7c1cb42d9bd.js → 44b1cdf28269b4fa8a39.js} +1 -1
- package/assets/esri/core/workers/chunks/44e8cd4b3dad777ab0c9.js +1 -0
- package/assets/esri/core/workers/chunks/456e616f32e7de696d38.js +1 -0
- package/assets/esri/core/workers/chunks/54b9667450d066c6f6ce.js +1 -0
- package/assets/esri/core/workers/chunks/5dbd8ca7e7b8eb9a0bf7.js +1 -0
- package/assets/esri/core/workers/chunks/5e3d5347223f0111f40f.js +1 -0
- package/assets/esri/core/workers/chunks/62f3ca0719ac6bc76512.js +1 -0
- package/assets/esri/core/workers/chunks/63ede7295938f7010808.js +1 -0
- package/assets/esri/core/workers/chunks/687cf21e027f49b44d22.js +1 -0
- package/assets/esri/core/workers/chunks/6c98a64d92c9bca78203.js +1 -0
- package/assets/esri/core/workers/chunks/{e7402dfd683f82878360.js → 752343d92ed48e674351.js} +1 -1
- package/assets/esri/core/workers/chunks/7538a0fe0cec3156769e.js +1 -0
- package/assets/esri/core/workers/chunks/{64247e439ef3e1f712e9.js → 7fdd6a5fa062778be55d.js} +1 -1
- package/assets/esri/core/workers/chunks/8369edafab7bdc59b95a.js +1 -0
- package/assets/esri/core/workers/chunks/{94e9cf8e729ec36de5be.js → 8c535c6a39d2be2ed655.js} +1 -1
- package/assets/esri/core/workers/chunks/8e1d4867406753c5483c.js +1 -0
- package/assets/esri/core/workers/chunks/92696cce2b980373f9ad.js +1 -0
- package/assets/esri/core/workers/chunks/{580451761cadfe308919.js → 9954149def644c371894.js} +1 -1
- package/assets/esri/core/workers/chunks/9f65cc6d9f7390bb1d5b.js +1 -0
- package/assets/esri/core/workers/chunks/a09ce34fc7c8abe64ed5.js +1 -0
- package/assets/esri/core/workers/chunks/{83991475aa54fd5aa008.js → a965d151515b76dd7566.js} +1 -1
- package/assets/esri/core/workers/chunks/{128799741dd3c6fc69b9.js → ac4131121230cfc14f21.js} +1 -1
- package/assets/esri/core/workers/chunks/afeeb11b39e140303b5a.js +1 -0
- package/assets/esri/core/workers/chunks/b13d2da33ec07e9d41ff.js +1 -0
- package/assets/esri/core/workers/chunks/{33bd9785bd0b6ccef21b.js → b2cf1d3f0d48eac23a84.js} +1 -1
- package/assets/esri/core/workers/chunks/c53b2be005721591e29b.js +1 -0
- package/assets/esri/core/workers/chunks/{e287113777a94ded8de6.js → c82ab4f0908290e70ee9.js} +1 -1
- package/assets/esri/core/workers/chunks/d456520e4b119a2816b6.js +1 -0
- package/assets/esri/core/workers/chunks/d83ea3e4e9ab45334068.js +1 -0
- package/assets/esri/core/workers/chunks/{4f59357f535f30a6b5cc.js → d9b83d7dd7d1f7729a91.js} +1 -1
- package/assets/esri/core/workers/chunks/dbcec48c4ba104a6d0b5.js +1 -0
- package/assets/esri/core/workers/chunks/e02f02040b63d9c2e654.js +1 -0
- package/assets/esri/core/workers/chunks/e08c64e4ae5a68eae2be.js +1 -0
- package/assets/esri/core/workers/chunks/e2ddfc96ddba92302e0c.js +1 -0
- package/assets/esri/core/workers/chunks/{61d3fcb419d6bf7e355e.js → e65ee26feca0564aeb9b.js} +1 -1
- package/assets/esri/core/workers/chunks/{35cbf00f0c37a86517af.js → ed1de8b7406269e217b9.js} +1 -1
- package/assets/esri/core/workers/chunks/ed4ac5568dc2815b066d.js +1 -0
- package/assets/esri/core/workers/chunks/f029c12f1afee0e9b2a1.js +1 -0
- package/assets/esri/core/workers/chunks/{461c2de938bf4c9b1442.js → f6715b8765cd36d81ec8.js} +1 -1
- package/assets/esri/core/workers/chunks/f9a4f4efd63b8189a4eb.js +1 -0
- package/assets/esri/core/workers/chunks/{26a2d4b95cda0a41d980.js → fa1c58e5b582d61a03ab.js} +1 -1
- package/assets/esri/core/workers/chunks/fa377112ef3b78f6ed18.js +1 -0
- package/chunks/VolumeMask.glsl.js +3 -0
- package/chunks/persistableUrlUtils.js +1 -1
- package/config.js +1 -1
- package/core/Collection.d.ts +42 -6
- package/core/Collection.js +1 -1
- package/geometry/SpatialReference.d.ts +1 -4
- package/kernel.js +1 -1
- package/layers/BaseElevationLayer.js +1 -1
- package/layers/ElevationLayer.js +1 -1
- package/layers/IntegratedMesh3DTilesLayer.js +1 -1
- package/layers/KnowledgeGraphLayer.js +1 -1
- package/layers/Lyr3DWasmPerSceneView.js +1 -1
- package/layers/StreamLayer.js +1 -1
- package/layers/VoxelWasmPerSceneView.js +1 -1
- package/layers/graphics/sources/connections/createConnection.js +1 -1
- package/layers/graphics/sources/parquet/ParquetFileStatistics.js +1 -1
- package/layers/graphics/sources/support/ParquetSourceWorker.js +1 -1
- package/layers/graphics/sources/support/QueryTask.js +1 -1
- package/layers/mixins/SceneService.js +1 -1
- package/layers/raster/datasets/BaseRaster.js +1 -1
- package/layers/save/groupLayerUtils.js +1 -1
- package/layers/save/mediaLayerUtils.js +1 -1
- package/layers/support/ElevationQueryTileCache.js +1 -1
- package/layers/video/types.d.ts +17 -1
- package/linkChart/LinkChartProperties.js +1 -1
- package/package.json +1 -1
- package/portal/support/jsonContext.js +1 -1
- package/support/persistableUrlUtils.js +1 -1
- package/support/revision.js +1 -1
- package/views/2d/layers/features/sources/strategies/AFeatureLoadStrategy.js +1 -1
- package/views/2d/layers/features/sources/strategies/FeatureHybridTileLoadStrategy.js +1 -1
- package/views/3d/GroundView3D.js +1 -1
- package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementCutFillController.js +1 -1
- package/views/3d/layers/IntegratedMesh3DTilesLayerView3D.js +1 -1
- package/views/3d/layers/i3s/I3SIntersectionHandler.js +1 -1
- package/views/3d/layers/i3s/PointCloudRenderer.js +1 -1
- package/views/3d/layers/support/Tiles3DMeshIntersectionHandler.js +1 -1
- package/views/3d/state/helpers/SceneIntersectionHelper.js +1 -1
- package/views/3d/support/gaussianSplatting/GaussianSplatHeaderTexture.js +1 -1
- package/views/3d/support/gaussianSplatting/GaussianSplatIntersectionHandler.js +1 -1
- package/views/3d/support/hitTest.js +1 -1
- package/views/3d/support/pointsOfInterest/CameraOnSurface.js +1 -1
- package/views/3d/support/pointsOfInterest/PointsOfInterest.js +1 -1
- package/views/3d/support/pointsOfInterest/StableSurfaceCenter.js +1 -1
- package/views/3d/terrain/TerrainRenderer.js +1 -1
- package/views/3d/terrain/TerrainSurface.js +1 -1
- package/views/3d/webgl-engine/collections/Component/ComponentObjectElevationAgnosticBVH.js +1 -1
- package/views/3d/webgl-engine/collections/Component/ComponentObjectFixedBVH.js +1 -1
- package/views/3d/webgl-engine/collections/Component/IntersectionGeometry.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/TextureBackedBufferFields.glsl.js +1 -1
- package/views/3d/webgl-engine/effects/focusArea/FocusAreaMask.js +1 -1
- package/views/3d/webgl-engine/lib/CutFillVisualization.js +1 -1
- package/views/3d/webgl-engine/lib/Intersector.js +1 -1
- package/views/3d/webgl-engine/lib/IntersectorResult.js +1 -1
- package/views/3d/webgl-engine/lib/RayIntersections.js +1 -1
- package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
- package/views/3d/webgl-engine/lib/SortedRenderGeometryRenderer.js +1 -1
- package/views/3d/webgl-engine/lib/TextureBackedBuffer/TextureBackedBufferFieldCreation.js +1 -1
- package/views/3d/webgl-engine/lib/lodRendering/LodResources.js +1 -1
- package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/HeatmapDensityMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/NativeLineMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/intersectWithPolygonOffset.js +1 -1
- package/views/3d/webgl-engine/shaders/ShadowCastMaskTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/{CutFillMask.glsl.js → VolumeMask.glsl.js} +1 -1
- package/views/3d/webgl-engine/shaders/VolumeMaskTechnique.js +2 -0
- package/webdoc/support/resourceUtils.js +1 -1
- package/webdoc/support/types.d.ts +2 -0
- package/webdoc/support/utils.js +2 -0
- package/webdoc/support/webdocLoadUtils.js +1 -1
- package/webdoc/support/webdocSaveUtils.js +1 -1
- package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.js +1 -1
- package/widgets/BatchAttributeForm/batchAttributeFormUtils.js +1 -1
- package/widgets/BatchAttributeForm/expressions/ArcadeExecutorProvider.js +1 -1
- package/widgets/BatchAttributeForm/expressions/ExpressionsManager.js +1 -1
- package/widgets/BatchAttributeForm/expressions/ExpressionsModel.js +1 -1
- package/widgets/BatchAttributeForm/inputs/AttachmentElementInput.js +1 -1
- package/widgets/BatchAttributeForm/inputs/BatchFormInputs.js +1 -1
- package/widgets/BatchAttributeForm/inputs/FieldInput.js +1 -1
- package/widgets/BatchAttributeForm/inputs/RelationshipElementInput.js +1 -1
- package/widgets/BatchAttributeForm/inputs/support/inputUtils.js +1 -1
- package/widgets/BatchAttributeForm/rendered-content/RelationshipDetails.js +1 -1
- package/widgets/BatchAttributeForm/templates/support/createBatchFormTemplate.js +1 -1
- package/widgets/BatchAttributeForm.js +1 -1
- package/widgets/Editor/UpdateWorkflow.js +1 -1
- package/widgets/Editor.js +1 -1
- package/widgets/FeatureForm.js +1 -1
- package/widgets/FeatureTable/Grid/Column.d.ts +6 -0
- package/widgets/Legend/support/ActiveLayerInfo.js +1 -1
- package/widgets/Sketch/SketchViewModel.js +1 -1
- package/widgets/support/SelectionList/FeatureItem.d.ts +116 -0
- package/widgets/support/SelectionList/GroupLayerItem.d.ts +94 -0
- package/widgets/support/SelectionList/ItemBase.d.ts +70 -0
- package/widgets/support/SelectionList/LayerItem.d.ts +140 -0
- package/widgets/support/SelectionList/LayerItem.js +1 -1
- package/widgets/support/SelectionList/SelectionListViewModel.d.ts +265 -0
- package/widgets/support/SelectionList/SelectionListViewModel.js +1 -1
- package/widgets/support/SelectionList/types.d.ts +42 -0
- package/widgets/support/forms/formUtils.js +1 -1
- package/assets/esri/core/workers/chunks/003a87b16f8a4b476e14.js +0 -1
- package/assets/esri/core/workers/chunks/0a50efb07eee36237e21.js +0 -1
- package/assets/esri/core/workers/chunks/129fdd1636e67997337c.js +0 -1
- package/assets/esri/core/workers/chunks/12e0c5b7cc5c3f9e6f0f.js +0 -1
- package/assets/esri/core/workers/chunks/147a89553188cc6aabf4.js +0 -1
- package/assets/esri/core/workers/chunks/26f1fd3f2be5102aae1d.js +0 -1
- package/assets/esri/core/workers/chunks/34fbeeeeef4bd01672c6.js +0 -1
- package/assets/esri/core/workers/chunks/36fe6adf6517d8f80125.js +0 -1
- package/assets/esri/core/workers/chunks/403f08e0c1a9203f7fba.js +0 -1
- package/assets/esri/core/workers/chunks/4f2170609742b51bd7b8.js +0 -1
- package/assets/esri/core/workers/chunks/5133083222588799493f.js +0 -1
- package/assets/esri/core/workers/chunks/52993a9dc0c56e9bda19.js +0 -1
- package/assets/esri/core/workers/chunks/5e35828216020f33e26b.js +0 -1
- package/assets/esri/core/workers/chunks/5f0d6c853873a7f32527.js +0 -1
- package/assets/esri/core/workers/chunks/6121cd0264b6841a5bac.js +0 -1
- package/assets/esri/core/workers/chunks/6823ba1688dfedba0107.js +0 -1
- package/assets/esri/core/workers/chunks/705d6b108fd121cea887.js +0 -1
- package/assets/esri/core/workers/chunks/73aa1bfa6e1dc271c9d7.js +0 -1
- package/assets/esri/core/workers/chunks/825eb845216762a1ed2f.js +0 -1
- package/assets/esri/core/workers/chunks/88df19742edb0cdc3e67.js +0 -1
- package/assets/esri/core/workers/chunks/8977c85aecc7e08ab13c.js +0 -1
- package/assets/esri/core/workers/chunks/8bdca809dd88eab9e5d8.js +0 -29
- package/assets/esri/core/workers/chunks/8c5726c7ce40a92901e6.js +0 -1
- package/assets/esri/core/workers/chunks/8c5e65982c3f9295e844.js +0 -1
- package/assets/esri/core/workers/chunks/8ce649e55fefc8eca55c.js +0 -1
- package/assets/esri/core/workers/chunks/90ae80b797642bff0efa.js +0 -1
- package/assets/esri/core/workers/chunks/97c758f736f28c5dab84.js +0 -1
- package/assets/esri/core/workers/chunks/a494abeb026d536d9fae.js +0 -1
- package/assets/esri/core/workers/chunks/a8ade34612e73862de6f.js +0 -1
- package/assets/esri/core/workers/chunks/a9d391071803b1e9e8a0.js +0 -1
- package/assets/esri/core/workers/chunks/aa3abc07de2921ef6ca1.js +0 -1
- package/assets/esri/core/workers/chunks/b03f09ee2224f0cc526a.js +0 -1
- package/assets/esri/core/workers/chunks/b3f1a442d6b7826e917f.js +0 -1
- package/assets/esri/core/workers/chunks/b819a9187426d0c146df.js +0 -1
- package/assets/esri/core/workers/chunks/f0225829f7d941914815.js +0 -1
- package/assets/esri/core/workers/chunks/fb34d6d96c8c0d53fcf6.js +0 -1
- package/chunks/CutFillMask.glsl.js +0 -3
- package/chunks/FocusAreaMask.glsl.js +0 -3
- package/views/3d/webgl-engine/effects/focusArea/FocusAreaMask.glsl.js +0 -2
- package/views/3d/webgl-engine/effects/focusArea/FocusAreaMaskTechnique.js +0 -2
- package/views/3d/webgl-engine/shaders/CutFillMaskTechnique.js +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1749],{69052(e,t,n){n.d(t,{hr:()=>r});var s=n(34727);class r{constructor(e,t){this.min=e,this.max=t,this.range=t-e}normalize(e,t=0,n=!1){return i(this.range,this.min,this.max,e,t,n)}clamp(e,t=0){return(0,s.qE)(e-t,this.min,this.max)+t}monotonic(e,t,n){return e<t?t:t+o(this.range,e-t,n)}minimalMonotonic(e,t,n){return i(this.range,e,e+this.range,t,n)}center(e,t,n){return t=this.monotonic(e,t,n),this.normalize((e+t)/2,n)}diff(e,t,n){return this.monotonic(e,t,n)-e}shortestSignedDiff(e,t){e=this.normalize(e);const n=(t=this.normalize(t))-e,s=t<e?this.minimalMonotonic(e,t)-e:t-this.minimalMonotonic(t,e);return Math.abs(n)<Math.abs(s)?n:s}contains(e,t,n){return t=this.minimalMonotonic(e,t),(n=this.minimalMonotonic(e,n))>e&&n<t}}function i(e,t,n,s,r=0,i=!1){return(s-=r)<t?s+=o(e,t-s):s>n&&(s-=o(e,s-n)),i&&s===n&&(s=t),s+r}function o(e,t,n=0){return Math.ceil((t-n)/e)*e+n}const a=new r(0,2*Math.PI),c=(new r(-Math.PI,Math.PI),new r(0,360));n.d(t,["ie",0,c,"uC",0,a])},56512(e,t,n){function s(e){let t,n,s=[],r=!1;return function(...i){return r&&t===this&&function(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;++n)if(e[n]!==t[n])return!1;return!0}(i,s)||(n=e.apply(this,i),t=this,s=i,r=!0),n}}n.d(t,{B:()=>s})},69397(e,t,n){n.d(t,{Qf:()=>a,Qh:()=>i,lM:()=>r});var s=n(34275);function r(e){if(!e)return 0;let t=u;for(const n in e)e.hasOwnProperty(n)&&(t+=o(e[n],!1));return t}function i(e){if(!e)return 0;if("number"==typeof e[0])return a(e);if(Array.isArray(e))return function(e){const t=e.length;if(0===t||"number"==typeof e[0])return c(e,8);let n=l;for(let s=0;s<t;s++)n+=o(e[s]);return n}(e);let t=u;for(const n in e)e.hasOwnProperty(n)&&(t+=o(e[n]));return t}function o(e,t=!0){switch(typeof e){case"object":return t?i(e):u;case"string":return function(e){return 32+e.length}(e);case"number":return 16;case"boolean":return 4;default:return 8}}function a(...e){return e.reduce((e,t)=>e+(t?(0,s.iu)(t)?t.byteLength+h:Array.isArray(t)?c(t,16):0:0),0)}function c(e,t){return l+e.length*t}const u=32,l=16,h=145},31411(e,t,n){n.d(t,{GS:()=>x,gh:()=>M});var s=n(49186),r=n(56512),i=n(65864),o=n(4305),a=n(50954),c=n(52006),u=n(49663),l=n(46068),h=n(15507);const f=1e-6,d=[0,0];function p(e){return{maxSegmentLength:e.maxSegmentLength??0,maxDeviation:e.maxDeviation??0,maxSegmentsPerCurve:e.maxSegmentsPerCurve??12e3,minSegmentsPerCurve:Math.max(e.minSegmentsPerCurve??1,1)}}class g{constructor(e,t){this.curveStart=e,this.curveEnd=t,this.tStart=0,this.tEnd=0,this.tEndStack=[],this.arcEndStack=[]}get stackSize(){return this.tEndStack.length}initialize(e,t){this.tStart=0,this.arcStart=e,this.tEndStack.push(1),this.arcEndStack.push(t)}splitAt(e){this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this.tEndStack.push(e),this.arcEndStack.push(this.interpolate(e))}splitInHalf(){return this.splitAt((this.tStart+this.tEnd)/2)}pop(){this.tEnd=this.tEndStack.pop(),this.arcEnd=this.arcEndStack.pop()}next(){this.tStart=this.tEnd,this.arcStart=this.arcEnd}densify(e,{maxDeviation:t,maxSegmentLength:n,maxSegmentsPerCurve:s,minSegmentsPerCurve:r}){const i=n*n,o=t*t,a=1/s,c=this.interpolate(0),u=this.interpolate(1);(0,h.kb)(this.curveStart,c)>f&&e.push(c),this.initialize(c,u);const l=1/r;for(let e=r-1;e>0;e--){const t=e*l;this.pop(),this.splitAt(t)}for(;this.stackSize>0;)this.pop(),this.tStart===this.tEnd||this.tEnd-this.tStart<a||(0===i||!isFinite(i)||(0,h.kb)(this.arcStart,this.arcEnd)<i)&&(0===o||!isFinite(o)||this.getDeviation2()<o)?(e.push(this.arcEnd),this.next()):this.splitInHalf();return(0,h.kb)(this.curveEnd,u)>f&&e.push([...this.curveEnd]),e}}class m extends g{constructor(e,t){const[n,s,r]=t.b;super(e,n),this._controlPointsStack=[],this._curveControlPoints=[s,r],this._arcControlPoints=[s,r],this._controlPointsStack.push(this._arcControlPoints)}splitAt(e){const{arcStart:t,arcEnd:n,tStart:s,tEnd:r}=this,[i,o]=this._arcControlPoints,a=(e-s)/(r-s),c=(0,h.RS)([],t,i,a),u=(0,h.RS)(d,i,o,a),l=(0,h.RS)([],o,n,a),f=(0,h.RS)([],c,u,a),p=(0,h.RS)([],u,l,a),g=(0,h.RS)([],f,p,a);this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this._controlPointsStack.push([p,l]),this.tEndStack.push(e),this.arcEndStack.push(g),this._arcControlPoints[0]=c,this._arcControlPoints[1]=f,this._controlPointsStack.push(this._arcControlPoints)}pop(){super.pop(),this._arcControlPoints=this._controlPointsStack.pop()}interpolate(e){const{curveStart:t,curveEnd:n}=this,[s,r]=this._curveControlPoints;return(0,o.B4)(t,s,r,n,e)}getDeviation2(){const{arcStart:e,arcEnd:t}=this,[n,s]=this._arcControlPoints;return Math.max((0,h.yE)(n,e,t),(0,h.yE)(s,e,t))}}class y extends g{constructor(e,t){const[n]=t.a;super(e,n),this._derivedEllipse=(0,l.SW)(e,t)}pop(){super.pop(),this._tMid=(this.tStart+this.tEnd)/2,this._arcMid=this.interpolate(this._tMid)}splitInHalf(){this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this.tEndStack.push(this._tMid),this.arcEndStack.push(this._arcMid)}interpolate(e){return(0,l.Uk)(this._derivedEllipse,e)}getDeviation2(){return(0,h.yE)(this._arcMid,this.arcStart,this.arcEnd)}}function _(e,t,n,{cx:s,cy:r,radius:i,thetaStart:o,thetaEnd:a,isInvalid:c},{maxDeviation:u,maxSegmentLength:l,maxSegmentsPerCurve:d,minSegmentsPerCurve:p}){if(c)return e.push([...n]),e;const g=2*i,m=[s+i*Math.cos(o),r+i*Math.sin(o)],y=[s+i*Math.cos(a),r+i*Math.sin(a)];(0,h.kb)(t,m)>f&&e.push(m);const _=Math.abs(a-o),S=l>0&&l<g?2*Math.asin(l/g):_,w=u>0&&u<=i?2*Math.acos(1-u/i):_,b=Math.min(S,w),k=Math.min(d,Math.max(p,Math.ceil(Math.abs(_/b)))),v=1/k;for(let t=1;t<k;t++){const n=t*v,c=o*(1-n)+a*n;e.push([s+i*Math.cos(c),r+i*Math.sin(c)])}return e.push(y),(0,h.kb)(n,y)>f&&e.push([...n]),e}function S(e,t,n,s){return new m(t,n).densify(e,s)}function w(e,t,n,s){const r=(0,a.pM)(t,n),[i]=n.c;return _(e,t,i,r,s)}function b(e,t,n,s){const r=(0,u.io)(t,n),[i]=n.a;return _(e,t,i,r,s)}function k(e,t,n,s){const[r,i,o,a,c,u,l]=n.a;return 0===u||0===l?(e.push([...r]),e):new y(t,n).densify(e,s)}function v(e,t,n,s){return(0,c.Xq)(n)?(e.push([...n]),e):(0,c.n1)(n)?S(e,t,n,s):(0,c.aO)(n)?w(e,t,n,s):(0,c.DA)(n)?b(e,t,n,s):k(e,t,n,s)}function x(e,t={}){if(!(0,c.Ed)(e))return e;const n=p(t),s=(0,c.FD)(e),r=[];for(const e of s){const t=[];for(let s=0;s<e.length-1;s++){const r=s+1,i=[...(0,c.yP)(e[s])];0===s&&t.push(i),v(t,i,e[r],n)}r.push(t)}return"curvePaths"in e?{...void 0!==e.hasZ?{hasZ:e.hasZ}:{},...void 0!==e.hasM?{hasM:e.hasM}:{},paths:r,spatialReference:e.spatialReference}:{...void 0!==e.hasZ?{hasZ:e.hasZ}:{},...void 0!==e.hasM?{hasM:e.hasM}:{},rings:r,spatialReference:e.spatialReference}}const A=(0,r.B)(e=>({maxDeviation:0,maxSegmentLength:100*e,maxSegmentsPerCurve:12e3,minSegmentsPerCurve:1}));async function M(e,t,r){const o=new Set(t);return await async function(e,t,r){let i=null;for(const o of e)if(o&&(0,c.Ed)(o)&&null==o.spatialReference.xyTolerance&&(0,c.V8)(o,t)){const e=o.spatialReference;if(!e)throw new s.A("geometry:missing-spatial-reference","Geometry contains an unsupported curve type, but it cannot be densified because it has no spatial reference.");const t=R(e);if(r.has(t))o.spatialReference=r.get(t);else{i||(i=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(1550)]).then(n.bind(n,78125)));const a=i.fromSpatialReference(e),c=a?.getTolerance();if(null==c)throw new s.A("geometry:missing-tolerance","Geometry contains an unsupported curve type, but it cannot be densified because the tolerance of its spatial reference is unknown. Set the `xyTolerance` property of the spatial reference.");const u=o.spatialReference.clone();u.read({xyTolerance:c}),o.spatialReference=u,r.set(t,u)}}}(e,o,r),e.map(e=>{if(!e||!(0,c.Ed)(e))return e;const n=e.spatialReference.xyTolerance;if(null==n)return e;const s=A(n);return(0,i.rS)(function(e,t,n){if(!(0,c.Ed)(e))return e;const s=new Set(t),r=p(n),i=(0,c.FD)(e),o=[];let a=!1;for(const e of i){const t=[];for(let n=0;n<e.length-1;n++){const i=n+1,o=[...(0,c.yP)(e[n])];0===n&&t.push(o);const u=e[i];(0,c.Xq)(u)?t.push([...u]):(0,c.n1)(u)&&!s.has("cubic-bezier")?S(t,o,u,r):(0,c.aO)(u)&&!s.has("circular-arc")?w(t,o,u,r):(0,c.DA)(u)&&!s.has("elliptic-arc")?b(t,o,u,r):(0,c.wY)(u)&&!s.has("elliptic-arc")?k(t,o,u,r):(t.push((0,c.tk)(u)),a=!0)}o.push(t)}return"curvePaths"in e?{...void 0!==e.hasZ?{hasZ:e.hasZ}:{},...void 0!==e.hasM?{hasM:e.hasM}:{},spatialReference:e.spatialReference,...a?{curvePaths:o}:{paths:o}}:{hasZ:e.hasZ,hasM:e.hasM,spatialReference:e.spatialReference,...a?{curveRings:o}:{rings:o}}}(e,t,s))})}function R(e){if(null!=e.wkid)return`${e.wkid}`;if(null!=e.wkt)return e.wkt;const t="toJSON"in e&&"function"==typeof e.toJSON?e.toJSON():e;return JSON.stringify(t)}},17136(e,t,n){n.d(t,{Y_:()=>P,O7:()=>C,el:()=>R});var s=n(92602),r=n(69052),i=n(49186),o=n(53966),a=n(39829),c=n(82799),u=n(16930),l=n(80754),h=n(21325),f=n(28735),d=n(52006),p=n(31411),g=n(11254),m=n(60408),y=n(65864),_=n(2272),S=n(84952),w=n(92300);const b=()=>o.A.getLogger("esri.geometry.support.normalizeUtils");function k(e){return"polygon"===e[0].type}function v(e){return"polyline"===e[0].type}function x(e,t,n){const s=1e6;if(t){const t=(0,d.Ed)(e)?(0,p.GS)(e,{maxSegmentLength:s}):function(e,t){if(!(e instanceof c.A||e instanceof a.A)){const e="straightLineDensify: the input geometry is neither polyline nor polygon";throw b().error(e),new i.A("internal:geometry",e)}const n=(0,l.r8)(e),s=[];for(const e of n){const n=[];s.push(n),n.push([e[0][0],e[0][1]]);for(let s=0;s<e.length-1;s++){const r=e[s][0],i=e[s][1],o=e[s+1][0],a=e[s+1][1],c=Math.sqrt((o-r)*(o-r)+(a-i)*(a-i)),u=(a-i)/c,l=(o-r)/c,h=c/t;if(h>1){for(let e=1;e<=h-1;e++){const s=e*t,o=l*s+r,a=u*s+i;n.push([o,a])}const e=(c+Math.floor(h-1)*t)/2,s=l*e+r,o=u*e+i;n.push([s,o])}n.push([o,a])}}return function(e){return"polygon"===e.type}(e)?new a.A({rings:s,spatialReference:e.spatialReference}):new c.A({paths:s,spatialReference:e.spatialReference})}(e,s);e=(0,f.ci)(t,!0)}return n&&(e=(0,l.kS)(e,n)),e}function A(e,t,n){if(Array.isArray(e)){const s=e[0];if(s>t){const n=(0,l.kd)(s,t);e[0]=s+n*(-2*t)}else if(s<n){const t=(0,l.kd)(s,n);e[0]=s+t*(-2*n)}}else{const s=e.x;if(s>t){const n=(0,l.kd)(s,t);e=e.clone().offset(n*(-2*t),0)}else if(s<n){const t=(0,l.kd)(s,n);e=e.clone().offset(t*(-2*n),0)}}return e}function M(e,t){let n=-1;for(let s=0;s<t.cutIndexes.length;s++){const r=t.cutIndexes[s],i=t.geometries[s],o=(0,l.r8)(i);for(let e=0;e<o.length;e++){const t=o[e];t.some(n=>{if(n[0]<180)return!0;{let n=0;for(let e=0;e<t.length;e++){const s=t[e][0];n=s>n?s:n}n=Number(n.toFixed(9));const s=-360*(0,l.kd)(n,180);for(let n=0;n<t.length;n++){const t=i.getPoint(e,n);i.setPoint(e,n,t.clone().offset(s,0))}return!0}})}if(r===n){if(k(e))for(const t of(0,l.r8)(i))e[r]=e[r].addRing(t);else if(v(e))for(const t of(0,l.r8)(i))e[r]=e[r].addPath(t)}else n=r,e[r]=i}return e}async function R(e,t,n){if(!Array.isArray(e))return R([e],t);t&&"string"!=typeof t&&b().warn("normalizeCentralMeridian()","The url object is deprecated, use the url string instead");const r="string"==typeof t?t:t?.url??s.A.geometryServiceUrl;let i,o,u,d,p,k,v,C,E=0;const P=[],F=[];for(const t of e)if(null!=t)if(i||(i=t.spatialReference,o=(0,h.Vp)(i),u=i.isWebMercator,k=u?102100:4326,d=l.j7[k].maxX,p=l.j7[k].minX,v=l.j7[k].plus180Line,C=l.j7[k].minus180Line),o)if("mesh"===t.type)F.push(t);else if("point"===t.type)F.push(A(t.clone(),d,p));else if("multipoint"===t.type){const e=t.clone();e.points=e.points.map(e=>A(e,d,p)),F.push(e)}else if("extent"===t.type){const e=t.clone()._normalize(!1,!1,o);F.push(e.rings?new a.A(e):e)}else if(t.extent){const e=t.extent,n=(0,l.kd)(e.xmin,p)*(2*d);let s=0===n?t.clone():(0,l.kS)(t.clone(),n);e.offset(n,0);let{xmin:r,xmax:i}=e;r=Number(r.toFixed(9)),i=Number(i.toFixed(9)),e.intersects(v)&&i!==d?(E=i>E?i:E,s=x(s,u),P.push(s),F.push("cut")):e.intersects(C)&&r!==p?(E=i*(2*d)>E?i*(2*d):E,s=x(s,u,360),P.push(s),F.push("cut")):F.push(s)}else F.push(t.clone());else F.push(t);else F.push(t);let T=(0,l.kd)(E,d),L=-90;const N=T,I=new c.A;for(;T>0;){const e=360*T-180;I.addPath([[e,L],[e,-1*L]]),L*=-1,T--}if(P.length>0&&N>0){const t=M(P,await async function(e,t,n,s){const r=(0,_.Dl)(e),i=t[0].spatialReference,o={...s,responseType:"json",query:{...r.query,f:"json",sr:(0,h.YX)(i),target:JSON.stringify({geometryType:(0,m.$B)(t[0]),geometries:t}),cutter:JSON.stringify(n)}},a=await(0,g.A)(r.path+"/cut",o),{cutIndexes:c,geometries:u=[]}=a.data;return{cutIndexes:c,geometries:u.map(e=>{const t=(0,y.rS)(e);return t.spatialReference=i,t})}}(r,P,I,n)),s=[],i=[];for(let n=0;n<F.length;n++){const r=F[n];if("cut"!==r)i.push(r);else{const r=t.shift(),o=e[n];null!=o&&"polygon"===o.type&&o.rings&&o.rings.length>1&&r.rings.length>=o.rings.length?(s.push(r),i.push("simplify")):i.push(u?(0,f.Gh)(r):r)}}if(!s.length)return i;const o=await async function(e,t,n){const s="string"==typeof e?(0,S.An)(e):e,r=t[0].spatialReference,i=(0,m.$B)(t[0]),o={...n,query:{...s.query,f:"json",sr:(0,h.YX)(r),geometries:JSON.stringify((0,w.X)(t))}},{data:a}=await(0,g.A)(s.path+"/simplify",o);return(0,w.V)(a.geometries,i,r)}(r,s,n),a=[];for(let e=0;e<i.length;e++){const t=i[e];"simplify"!==t?a.push(t):a.push(u?(0,f.Gh)(o.shift()):o.shift())}return a}const j=[];for(let e=0;e<F.length;e++){const t=F[e];if("cut"!==t)j.push(t);else{const e=P.shift();j.push(!0===u?(0,f.Gh)(e):e)}}return j}function C(e,t,n){const s=(0,h.Vp)(n);if(null==s)return e;const[r,i]=s.valid,o=2*i;let a=0,c=0;t>i?a=Math.ceil(Math.abs(t-i)/o):t<r&&(a=-Math.ceil(Math.abs(t-r)/o)),e>i?c=Math.ceil(Math.abs(e-i)/o):e<r&&(c=-Math.ceil(Math.abs(e-r)/o));let u=e+(a-c)*o;const l=u-t;return l>i?u-=o:l<r&&(u+=o),u}function E(e){const t=(0,h.Vp)(e);if(null==t)return null;const[n,s]=t.valid;return new r.hr(n,s)}const P=E(u.A.WGS84);E(u.A.WebMercator)},80754(e,t,n){n.d(t,{kS:()=>u,kd:()=>c,r8:()=>l});var s=n(82799),r=n(16930),i=n(60408),o=n(52006);const a={102100:{maxX:20037508.342788905,minX:-20037508.342788905,plus180Line:new s.A({paths:[[[20037508.342788905,-20037508.342788905],[20037508.342788905,20037508.342788905]]],spatialReference:r.A.WebMercator}),minus180Line:new s.A({paths:[[[-20037508.342788905,-20037508.342788905],[-20037508.342788905,20037508.342788905]]],spatialReference:r.A.WebMercator})},4326:{maxX:180,minX:-180,plus180Line:new s.A({paths:[[[180,-180],[180,180]]],spatialReference:r.A.WGS84}),minus180Line:new s.A({paths:[[[-180,-180],[-180,180]]],spatialReference:r.A.WGS84})}};function c(e,t){return Math.ceil((e-t)/(2*t))}function u(e,t){if((0,o.Ed)(e))for(const n of function(e){return(0,i.Bi)(e)?e.curveRings:e.curvePaths}(e))for(const e of n){if((0,o.aO)(e)){const[n,s]=e.c;n[0]+=t,s[0]+=t;continue}if((0,o.FG)(e)){const[n,s]=e.a;n[0]+=t,s[0]+=t;continue}if((0,o.n1)(e)){const[n,s,r]=e.b;n[0]+=t,s[0]+=t,r[0]+=t;continue}e[0]+=t}for(const n of l(e))for(const e of n)e[0]+=t;return e}function l(e){return(0,i.Bi)(e)?e.rings:e.paths}n.d(t,["j7",0,a])},31464(e,t,n){n.d(t,{Cv:()=>p,Nk:()=>h,lK:()=>m});var s=n(4576),r=n(91218),i=n(21325),o=n(28735);const a=[0,0];function c(e,t){if(!t)return null;if("x"in t){const n={x:0,y:0};return[n.x,n.y]=e(t.x,t.y,a),null!=t.z&&(n.z=t.z),null!=t.m&&(n.m=t.m),n}if("xmin"in t){const n={xmin:0,ymin:0,xmax:0,ymax:0};return[n.xmin,n.ymin]=e(t.xmin,t.ymin,a),[n.xmax,n.ymax]=e(t.xmax,t.ymax,a),t.hasZ&&(n.zmin=t.zmin,n.zmax=t.zmax,n.hasZ=!0),t.hasM&&(n.mmin=t.mmin,n.mmax=t.mmax,n.hasM=!0),n}return"rings"in t?{rings:u(t.rings,e),hasM:t.hasM,hasZ:t.hasZ}:"paths"in t?{paths:u(t.paths,e),hasM:t.hasM,hasZ:t.hasZ}:"points"in t?{points:l(t.points,e),hasM:t.hasM,hasZ:t.hasZ}:null}function u(e,t){const n=[];for(const s of e)n.push(l(s,t));return n}function l(e,t){const n=[];for(const s of e){const e=t(s[0],s[1],[0,0]);n.push(e),s.length>2&&e.push(s[2]),s.length>3&&e.push(s[3])}return n}async function h(e,t){if(!e||!t)return;const n=Array.isArray(e)?e.map(e=>null!=e.geometry?e.geometry.spatialReference:null).filter(s.Ru):[e];await(0,r.initializeProjection)(n.map(e=>({source:e,dest:t})))}const f=c.bind(null,o.je),d=c.bind(null,o.tD);function p(e,t,n,s){if(!e)return null;if(n||(n=t,t=e.spatialReference),!(0,i.fn)(t)||!(0,i.fn)(n)||(0,i.aI)(t,n))return e;if((0,o.y7)(t,n)){const t=(0,i.K8)(n)?f(e):d(e);return t.spatialReference=n,t}return(0,r.projectMany)([e],t,n,s)[0]}const g=new class{constructor(){this._jobs=[],this._timer=null,this._process=this._process.bind(this)}async push(e,t,n,s){if(!e?.length||!t||!n||(0,i.aI)(t,n))return e;const r={geometries:e,inSpatialReference:t,outSpatialReference:n,options:s,resolve:Promise.withResolvers()};return this._jobs.push(r),this._timer??=setTimeout(this._process,10),r.resolve.promise}_process(){this._timer=null;const e=this._jobs.shift();if(!e)return;const{geometries:t,inSpatialReference:n,outSpatialReference:s,resolve:a,options:c}=e,u=t.filter(e=>null!=e);let l;l=(0,o.y7)(n,s)&&null==c?.extendedParams?(0,i.K8)(s)?u.map(f):u.map(d):(0,r.projectMany)(u,n,s,c);let h=0;const p=t.map(e=>null==e?null:l[h++]);a.resolve(p),this._jobs.length>0&&(this._timer=setTimeout(this._process,10))}};function m(e,t,n,s){return g.push(e,t,n,s)}},60986(e,t,n){n.r(t),n.d(t,{createConnection:()=>C});var s=n(11254),r=n(49186),i=n(31464),o=n(9916),a=n(5482),c=n(65529),u=n(91429);let l=class extends c.nJ{destroy(){this.emit("destroy")}get connectionError(){return this.errorString?new r.A("stream-connection",this.errorString):null}onFeature(e){this.emit("data-received",e)}onMessage(e){this.emit("message-received",e)}};(0,a.Cg)([(0,u.MZ)({readOnly:!0})],l.prototype,"connectionError",null),l=(0,a.Cg)([(0,u.$K)("esri.layers.support.StreamConnection")],l);class h extends l{constructor(e,t){super(),this._config=e,this._outSpatialReference=t,this.connectionStatus="connected",this.errorString=null,this._isPolling=!1,this._lastIngestedAt=null,this._pollTimer=null,this._pollRecentData=async()=>{if(!this.destroyed&&!this._isPolling){this._isPolling=!0;try{const e=await this._queryChanges(this._lastIngestedAt);if(this.destroyed)return;this._handleResult(e)}catch(e){this.errorString=e instanceof Error?e.message:"Failed to fetch"}finally{this._isPolling=!1}}},this._initialize()}destroy(){super.destroy(),this._pollTimer&&(clearInterval(this._pollTimer),this._pollTimer=null)}sendMessageToSocket(e){throw new r.A("kusto:unsupported","sendMessageToSocket not supported for Kusto connections")}sendMessageToClient(e){throw new r.A("kusto:unsupported","sendMessageToClient not supported for Kusto connections")}updateCustomParameters(e){throw new r.A("kusto:unsupported","updateCustomParameters not supported for Kusto connections")}async _initialize(){await(0,i.Nk)(this._config.sourceSpatialReference,this._outSpatialReference);try{const e=await this._queryInitial();this._handleResult(e),this._pollTimer=setInterval(this._pollRecentData,6e4*this._config.refreshInterval)}catch{throw new r.A("kusto:connection","Failed to query KQL database")}}async _queryInitial(){const{trackIdField:e}=this._config,t=f(await this._executeQuery(`${(0,o.xw)(this._config.table)} | extend IngestedAt = ingestion_time() | summarize arg_max(IngestedAt, *) by ${(0,o.xw)(e)}`));if(!t)throw new r.A("kusto:connection","Unable to find primaryTable");return{ingestedAt:d(t),table:t}}async _queryChanges(e=null){const t=e??"1970-01-01T00:00:00Z",n=f(await this._executeQuery(`${(0,o.xw)(this._config.table)} | extend IngestedAt = ingestion_time() | where IngestedAt > todatetime('${(0,o.iD)(t)}') | order by IngestedAt asc`));if(!n)throw new r.A("kusto:connection","Unable to find primaryTable");return{ingestedAt:d(n),table:n}}async _executeQuery(e){const t=this._config.database,n=t.properties.queryServiceUri,{data:r}=await(0,s.A)(`${n}/v2/rest/query`,{responseType:"json",method:"post",headers:{"Content-Type":"application/json"},body:JSON.stringify({db:t.displayName,csl:e})});return r}_handleResult(e){this._lastIngestedAt=e.ingestedAt;const t=this._createFeatures(e.table);if(null!=t){this.onMessage(t);for(const e of t)this.onFeature(e)}}_createFeatures(e){if(null==e||0===e.Rows.length)return null;const{xField:t,yField:n}=this._config.geometryEncoding,s=e.Columns.findIndex(e=>e.ColumnName===t),r=e.Columns.findIndex(e=>e.ColumnName===n);return e.Rows.map(t=>this._createFeature(e.Columns,s,r,t))}_createFeature(e,t,n,s){const{xField:r,yField:o}=this._config.geometryEncoding,a={};for(let t=0;t<e.length;t++){const n=e[t],i=s[t]??null;n.ColumnName!==o&&n.ColumnName!==r&&(a[n.ColumnName]=i)}let c=null;const u=s[t],l=s[n];return null!=l&&null!=u&&(c=(0,i.Cv)({x:u,y:l},this._config.sourceSpatialReference,this._outSpatialReference)),{attributes:a,geometry:c}}}function f(e){return e.find(e=>"DataTable"===e.FrameType&&"PrimaryResult"===e.TableKind)??null}function d(e){const t=e.Columns.findIndex(e=>"IngestedAt"===e.ColumnName);if(t<0)return null;let n=null;for(const s of e.Rows){const e=s[t];"string"==typeof e&&(null==n||e>n)&&(n=e)}return n}var p=n(53966),g=n(84952),m=n(16930),y=n(65864),_=n(17676),S=n(62815);function w(e,t){if(null==e&&null==t)return null;const n={};return null!=t&&(n.geometry=t),null!=e&&(n.where=e),n}let b=class extends l{constructor(e,t){super({}),this._outSpatialReference=t,this._outstandingMessages=[],this.errorString=null;const{geometryType:n,sourceSpatialReference:s}=e;this._config=e,this._featureZScaler=(0,S.N)(n,s,this._outSpatialReference),this._open()}normalizeCtorArgs(){return{}}async _open(){await this._tryCreateWebSocket(),this.destroyed||await this._handshake()}destroy(){super.destroy(),null!=this._websocket&&(this._websocket.onopen=null,this._websocket.onclose=null,this._websocket.onerror=null,this._websocket.onmessage=null,this._websocket.close()),this._websocket=null}get connectionStatus(){if(null==this._websocket)return"disconnected";switch(this._websocket.readyState){case 0:case 1:return"connected";case 2:case 3:return"disconnected"}}sendMessageToSocket(e){null!=this._websocket?this._websocket.send(JSON.stringify(e)):this._outstandingMessages.push(e)}sendMessageToClient(e){this._onMessage(e)}updateCustomParameters(e){this._config.customParameters=e,null!=this._websocket&&this._websocket.close()}async _tryCreateWebSocket(e=this._config.url.path,t=1e3,n=0){try{if(this.destroyed)return;const t=(0,g.a6)(e,this._config.customParameters??{});this._websocket=await this._createWebSocket(t),this.notifyChange("connectionStatus")}catch(s){const i=t/1e3;return this._config.maxReconnectionAttempts&&n>=this._config.maxReconnectionAttempts?(p.A.getLogger(this).error(new r.A("websocket-connection","Exceeded maxReconnectionAttempts attempts. No further attempts will be made")),void this.destroy()):(p.A.getLogger(this).error(new r.A("websocket-connection",`Failed to connect. Attempting to reconnect in ${i}s`,s)),await(0,_.Pl)(t),this._tryCreateWebSocket(e,Math.min(1.5*t,1e3*this._config.maxReconnectionInterval),n+1))}}_setWebSocketJSONParseHandler(e){e.onmessage=e=>{try{const t=JSON.parse(e.data);this._onMessage(t)}catch(e){return void p.A.getLogger(this).error(new r.A("websocket-connection","Failed to parse message, invalid JSON",{error:e}))}}}_createWebSocket(e){return new Promise((t,n)=>{const s=new WebSocket(e);s.onopen=()=>{if(s.onopen=null,this.destroyed)return s.onclose=null,void s.close();s.onclose=e=>this._onClose(e),s.onerror=e=>this._onError(e),this._setWebSocketJSONParseHandler(s),t(s)},s.onclose=e=>{s.onopen=s.onclose=null,n(e)}})}async _handshake(e=1e4){const t=this._websocket;if(null==t)return;const n=Promise.withResolvers(),s=t.onmessage,i=w(this._config.definitionExpression,this._config.geometryDefinition),{outFields:o}=this._config,a=setTimeout(()=>n.reject(),e),c=()=>{clearTimeout(a),n.reject()};return t.onmessage=e=>{let u=null;try{u=JSON.parse(e.data)}catch(e){}u&&"object"==typeof u||(p.A.getLogger(this).error(new r.A("websocket-connection","Protocol violation. Handshake failed - malformed message",e.data)),c(),this.destroy()),u.spatialReference?.wkid!==this._outSpatialReference?.wkid&&(p.A.getLogger(this).error(new r.A("websocket-connection",`Protocol violation. Handshake failed - expected wkid of ${this._outSpatialReference.wkid}`,e.data)),c(),this.destroy()),"json"!==u.format&&(p.A.getLogger(this).error(new r.A("websocket-connection","Protocol violation. Handshake failed - format is not set",e.data)),c(),this.destroy()),i&&u.filter!==i&&p.A.getLogger(this).error(new r.A("websocket-connection","Tried to set filter, but server doesn't support it")),o&&u.outFields!==o&&p.A.getLogger(this).error(new r.A("websocket-connection","Tried to set outFields, but server doesn't support it")),t.onmessage=s;for(const e of this._outstandingMessages)t.send(JSON.stringify(e));this._outstandingMessages=[],clearTimeout(a),n.resolve()},t.send(JSON.stringify({filter:i,outFields:o,format:"json",spatialReference:{wkid:this._outSpatialReference.wkid}})),n.promise}_onMessage(e){if(this.onMessage(e),"type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}}_onError(e){const t="Encountered an error over WebSocket connection";this._set("errorString",t),p.A.getLogger(this).error("websocket-connection",t)}_onClose(e){this._websocket=null,this.notifyChange("connectionStatus"),1e3!==e.code&&p.A.getLogger(this).error("websocket-connection",`WebSocket closed unexpectedly with error code ${e.code}`),this.destroyed||this._open()}};(0,a.Cg)([(0,u.MZ)()],b.prototype,"connectionStatus",null),(0,a.Cg)([(0,u.MZ)()],b.prototype,"errorString",void 0),b=(0,a.Cg)([(0,u.$K)("esri.layers.graphics.sources.connections.WebSocketConnection")],b);var k=n(80893),v=n(97552);const x={maxQueryDepth:5,maxRecordCountFactor:3};let A=class extends b{constructor(e,t){super({...x,...e},t),this._buddyServicesQuery=null,this._relatedFeatures=null}async _open(){const e=await this._fetchServiceDefinition(this._config.url);e.timeInfo.trackIdField||p.A.getLogger(this).warn("GeoEvent service was configured without a TrackIdField. This may result in certain functionality being disabled. The purgeOptions.maxObservations property will have no effect.");const t=this._fetchWebSocketUrl(e.streamUrls,this._outSpatialReference);this._buddyServicesQuery||(this._buddyServicesQuery=this._queryBuddyServices()),await this._buddyServicesQuery,await this._tryCreateWebSocket(t);const n=w(this._config.definitionExpression,this._config.geometryDefinition),{outFields:s}=this._config;this.destroyed||this._setFilter(n,s)}_onMessage(e){if("attributes"in e){let t;try{t=this._enrich(e),null!=this._featureZScaler&&this._featureZScaler(t.geometry)}catch(e){return void p.A.getLogger(this).error(new r.A("geoevent-connection","Failed to parse message",e))}this.onFeature(t)}else this.onMessage(e)}async _fetchServiceDefinition(e){const t={f:"json",...this._config.customParameters},n=(0,s.A)(e.path,{query:t,responseType:"json"}),r=(await n).data;return this._serviceDefinition=r,r}_fetchWebSocketUrl(e,t){const n=e[0],{urls:s,token:r}=n,i=this._inferWebSocketBaseUrl(s);return(0,g.a6)(`${i}/subscribe`,{outSR:""+t.wkid,token:r})}_inferWebSocketBaseUrl(e){if(1===e.length)return e[0];for(const t of e)if(t.includes("wss"))return t;return p.A.getLogger(this).error(new r.A("geoevent-connection","Unable to infer WebSocket url",e)),null}async _setFilter(e,t){const n=this._websocket;if(null==n||null==e&&null==t)return;const s=JSON.stringify({filter:this._serializeFilter(e,t)});let i=!1;const o=Promise.withResolvers();return n.onmessage=e=>{const t=JSON.parse(e.data);t.filter&&(t.error&&(p.A.getLogger(this).error(new r.A("geoevent-connection","Failed to set service filter",t.error)),this._set("errorString",`Could not set service filter - ${t.error}`),o.reject(t.error)),this._setWebSocketJSONParseHandler(n),i=!0,o.resolve())},n.send(s),setTimeout(()=>{i||(this.destroyed||this._websocket!==n||p.A.getLogger(this).error(new r.A("geoevent-connection","Server timed out when setting filter")),o.reject())},1e4),o.promise}_serializeFilter(e,t){const n={};if(null==e&&null==t)return n;if(e?.geometry)try{const t=(0,y.rS)(e.geometry);if("extent"!==t.type)throw new r.A("geoevent-connection",`Expected extent but found type ${t.type}`);n.geometry=JSON.stringify(t.shiftCentralMeridian())}catch(e){p.A.getLogger(this).error(new r.A("geoevent-connection","Encountered an error when setting connection geometryDefinition",e))}return e?.where&&"1 = 1"!==e.where&&"1=1"!==e.where&&(n.where=e.where),null!=t&&(n.outFields=t.join(",")),n}_enrich(e){if(!this._relatedFeatures)return e;const t=this._serviceDefinition.relatedFeatures.joinField,n=e.attributes[t],s=this._relatedFeatures.get(n);if(!s)return p.A.getLogger(this).warn("geoevent-connection","Feature join failed. Is the join field configured correctly?",e),e;const{attributes:i,geometry:o}=s;for(const t in i)e.attributes[t]=i[t];return o&&(e.geometry=o),e.geometry||e.centroid||p.A.getLogger(this).error(new r.A("geoevent-connection","Found malformed feature - no geometry found",e)),e}async _queryBuddyServices(){try{const{relatedFeatures:e,keepLatestArchive:t}=this._serviceDefinition,n=this._queryRelatedFeatures(e),s=this._queryArchive(t);await n;const r=await s;if(!r)return;for(const e of r.features)this.onFeature(this._enrich(e))}catch(e){p.A.getLogger(this).error(new r.A("geoevent-connection","Encountered an error when querying buddy services",{error:e}))}}async _queryRelatedFeatures(e){if(!e)return;const t=await this._queryBuddy(e.featuresUrl);this._addRelatedFeatures(t)}async _queryArchive(e){if(e)return this._queryBuddy(e.featuresUrl)}async _queryBuddy(e){const t=new((await Promise.all([n.e(7632),n.e(8278),n.e(7865),n.e(6554),n.e(2869),n.e(3910),n.e(9953),n.e(564),n.e(1214),n.e(2889),n.e(1017),n.e(500),n.e(4674),n.e(993),n.e(4333),n.e(3781),n.e(812),n.e(3470),n.e(958)]).then(n.bind(n,53781))).default)({url:e}),{capabilities:s}=await t.load(),r=s.query.supportsMaxRecordCountFactor,i=s.query.supportsPagination,o=s.query.supportsCentroid,a=this._config.maxRecordCountFactor,c=t.capabilities.query.maxRecordCount,u=r?c*a:c,l=new v.A;if(l.outFields=this._config.outFields??["*"],l.where=this._config.definitionExpression??"1=1",l.returnGeometry=!0,l.returnExceededLimitFeatures=!0,l.outSpatialReference=m.A.fromJSON(this._outSpatialReference),o&&(l.returnCentroid=!0),r&&(l.maxRecordCountFactor=a),i)return l.num=u,t.destroy(),this._queryPages(e,l);const h=await(0,k.eW)(e,l,this._config.sourceSpatialReference);return t.destroy(),h}async _queryPages(e,t,n=[],s=0){t.start=null!=t.num?s*t.num:null;const r=await(0,k.eW)(e,t,this._config.sourceSpatialReference);return r.exceededTransferLimit&&s<(this._config.maxQueryDepth??0)?(r.features.forEach(e=>n.push(e)),this._queryPages(e,t,n,s+1)):(n.forEach(e=>r.features.push(e)),r)}_addRelatedFeatures(e){const t=new Map,n=e.features,s=this._serviceDefinition.relatedFeatures.joinField;for(const e of n){const n=e.attributes[s];t.set(n,e)}this._relatedFeatures=t}};A=(0,a.Cg)([(0,u.$K)("esri.layers.graphics.sources.connections.GeoEventConnection")],A);var M=n(64108);let R=class extends l{constructor(e,t){super({}),this.connectionStatus="connected",this.errorString=null;const{geometryType:n,sourceSpatialReference:s}=e;this._featureZScaler=(0,S.N)(n,s,t)}normalizeCtorArgs(){return{}}updateCustomParameters(e){}sendMessageToSocket(e){}sendMessageToClient(e){if("type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}this.onMessage(e)}};function C(e,t){switch(e.type){case"client":return new R(e,t);case"custom":return new b(e,t);case"geoevent":return new A(e,t);case"kusto":return new h(e,t)}}(0,a.Cg)([(0,u.MZ)()],R.prototype,"connectionStatus",void 0),(0,a.Cg)([(0,u.MZ)()],R.prototype,"errorString",void 0),R=(0,a.Cg)([(0,M.$)("esri.layers.support.ClientSideConnection")],R)},92300(e,t,n){n.d(t,{V:()=>o,X:()=>i});var s=n(60408),r=n(65864);function i(e){return{geometryType:(0,s.$B)(e[0]),geometries:e.map(e=>e.toJSON())}}function o(e,t,n){const s=(0,r.xD)(t);return e.map(e=>{const t=s.fromJSON(e);return t.spatialReference=n,t})}}}]);
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1749],{69052(e,t,n){n.d(t,{hr:()=>r});var s=n(34727);class r{constructor(e,t){this.min=e,this.max=t,this.range=t-e}normalize(e,t=0,n=!1){return i(this.range,this.min,this.max,e,t,n)}clamp(e,t=0){return(0,s.qE)(e-t,this.min,this.max)+t}monotonic(e,t,n){return e<t?t:t+o(this.range,e-t,n)}minimalMonotonic(e,t,n){return i(this.range,e,e+this.range,t,n)}center(e,t,n){return t=this.monotonic(e,t,n),this.normalize((e+t)/2,n)}diff(e,t,n){return this.monotonic(e,t,n)-e}shortestSignedDiff(e,t){e=this.normalize(e);const n=(t=this.normalize(t))-e,s=t<e?this.minimalMonotonic(e,t)-e:t-this.minimalMonotonic(t,e);return Math.abs(n)<Math.abs(s)?n:s}contains(e,t,n){return t=this.minimalMonotonic(e,t),(n=this.minimalMonotonic(e,n))>e&&n<t}}function i(e,t,n,s,r=0,i=!1){return(s-=r)<t?s+=o(e,t-s):s>n&&(s-=o(e,s-n)),i&&s===n&&(s=t),s+r}function o(e,t,n=0){return Math.ceil((t-n)/e)*e+n}const a=new r(0,2*Math.PI),c=(new r(-Math.PI,Math.PI),new r(0,360));n.d(t,["ie",0,c,"uC",0,a])},56512(e,t,n){function s(e){let t,n,s=[],r=!1;return function(...i){return r&&t===this&&function(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;++n)if(e[n]!==t[n])return!1;return!0}(i,s)||(n=e.apply(this,i),t=this,s=i,r=!0),n}}n.d(t,{B:()=>s})},69397(e,t,n){n.d(t,{Qf:()=>a,Qh:()=>i,lM:()=>r});var s=n(34275);function r(e){if(!e)return 0;let t=u;for(const n in e)e.hasOwnProperty(n)&&(t+=o(e[n],!1));return t}function i(e){if(!e)return 0;if("number"==typeof e[0])return a(e);if(Array.isArray(e))return function(e){const t=e.length;if(0===t||"number"==typeof e[0])return c(e,8);let n=l;for(let s=0;s<t;s++)n+=o(e[s]);return n}(e);let t=u;for(const n in e)e.hasOwnProperty(n)&&(t+=o(e[n]));return t}function o(e,t=!0){switch(typeof e){case"object":return t?i(e):u;case"string":return function(e){return 32+e.length}(e);case"number":return 16;case"boolean":return 4;default:return 8}}function a(...e){return e.reduce((e,t)=>e+(t?(0,s.iu)(t)?t.byteLength+h:Array.isArray(t)?c(t,16):0:0),0)}function c(e,t){return l+e.length*t}const u=32,l=16,h=145},31411(e,t,n){n.d(t,{GS:()=>x,gh:()=>M});var s=n(49186),r=n(56512),i=n(65864),o=n(4305),a=n(50954),c=n(52006),u=n(49663),l=n(46068),h=n(15507);const f=1e-6,d=[0,0];function p(e){return{maxSegmentLength:e.maxSegmentLength??0,maxDeviation:e.maxDeviation??0,maxSegmentsPerCurve:e.maxSegmentsPerCurve??12e3,minSegmentsPerCurve:Math.max(e.minSegmentsPerCurve??1,1)}}class g{constructor(e,t){this.curveStart=e,this.curveEnd=t,this.tStart=0,this.tEnd=0,this.tEndStack=[],this.arcEndStack=[]}get stackSize(){return this.tEndStack.length}initialize(e,t){this.tStart=0,this.arcStart=e,this.tEndStack.push(1),this.arcEndStack.push(t)}splitAt(e){this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this.tEndStack.push(e),this.arcEndStack.push(this.interpolate(e))}splitInHalf(){return this.splitAt((this.tStart+this.tEnd)/2)}pop(){this.tEnd=this.tEndStack.pop(),this.arcEnd=this.arcEndStack.pop()}next(){this.tStart=this.tEnd,this.arcStart=this.arcEnd}densify(e,{maxDeviation:t,maxSegmentLength:n,maxSegmentsPerCurve:s,minSegmentsPerCurve:r}){const i=n*n,o=t*t,a=1/s,c=this.interpolate(0),u=this.interpolate(1);(0,h.kb)(this.curveStart,c)>f&&e.push(c),this.initialize(c,u);const l=1/r;for(let e=r-1;e>0;e--){const t=e*l;this.pop(),this.splitAt(t)}for(;this.stackSize>0;)this.pop(),this.tStart===this.tEnd||this.tEnd-this.tStart<a||(0===i||!isFinite(i)||(0,h.kb)(this.arcStart,this.arcEnd)<i)&&(0===o||!isFinite(o)||this.getDeviation2()<o)?(e.push(this.arcEnd),this.next()):this.splitInHalf();return(0,h.kb)(this.curveEnd,u)>f&&e.push([...this.curveEnd]),e}}class m extends g{constructor(e,t){const[n,s,r]=t.b;super(e,n),this._controlPointsStack=[],this._curveControlPoints=[s,r],this._arcControlPoints=[s,r],this._controlPointsStack.push(this._arcControlPoints)}splitAt(e){const{arcStart:t,arcEnd:n,tStart:s,tEnd:r}=this,[i,o]=this._arcControlPoints,a=(e-s)/(r-s),c=(0,h.RS)([],t,i,a),u=(0,h.RS)(d,i,o,a),l=(0,h.RS)([],o,n,a),f=(0,h.RS)([],c,u,a),p=(0,h.RS)([],u,l,a),g=(0,h.RS)([],f,p,a);this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this._controlPointsStack.push([p,l]),this.tEndStack.push(e),this.arcEndStack.push(g),this._arcControlPoints[0]=c,this._arcControlPoints[1]=f,this._controlPointsStack.push(this._arcControlPoints)}pop(){super.pop(),this._arcControlPoints=this._controlPointsStack.pop()}interpolate(e){const{curveStart:t,curveEnd:n}=this,[s,r]=this._curveControlPoints;return(0,o.B4)(t,s,r,n,e)}getDeviation2(){const{arcStart:e,arcEnd:t}=this,[n,s]=this._arcControlPoints;return Math.max((0,h.yE)(n,e,t),(0,h.yE)(s,e,t))}}class y extends g{constructor(e,t){const[n]=t.a;super(e,n),this._derivedEllipse=(0,l.SW)(e,t)}pop(){super.pop(),this._tMid=(this.tStart+this.tEnd)/2,this._arcMid=this.interpolate(this._tMid)}splitInHalf(){this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this.tEndStack.push(this._tMid),this.arcEndStack.push(this._arcMid)}interpolate(e){return(0,l.Uk)(this._derivedEllipse,e)}getDeviation2(){return(0,h.yE)(this._arcMid,this.arcStart,this.arcEnd)}}function _(e,t,n,{cx:s,cy:r,radius:i,thetaStart:o,thetaEnd:a,isInvalid:c},{maxDeviation:u,maxSegmentLength:l,maxSegmentsPerCurve:d,minSegmentsPerCurve:p}){if(c)return e.push([...n]),e;const g=2*i,m=[s+i*Math.cos(o),r+i*Math.sin(o)],y=[s+i*Math.cos(a),r+i*Math.sin(a)];(0,h.kb)(t,m)>f&&e.push(m);const _=Math.abs(a-o),S=l>0&&l<g?2*Math.asin(l/g):_,w=u>0&&u<=i?2*Math.acos(1-u/i):_,b=Math.min(S,w),k=Math.min(d,Math.max(p,Math.ceil(Math.abs(_/b)))),v=1/k;for(let t=1;t<k;t++){const n=t*v,c=o*(1-n)+a*n;e.push([s+i*Math.cos(c),r+i*Math.sin(c)])}return e.push(y),(0,h.kb)(n,y)>f&&e.push([...n]),e}function S(e,t,n,s){return new m(t,n).densify(e,s)}function w(e,t,n,s){const r=(0,a.pM)(t,n),[i]=n.c;return _(e,t,i,r,s)}function b(e,t,n,s){const r=(0,u.io)(t,n),[i]=n.a;return _(e,t,i,r,s)}function k(e,t,n,s){const[r,i,o,a,c,u,l]=n.a;return 0===u||0===l?(e.push([...r]),e):new y(t,n).densify(e,s)}function v(e,t,n,s){return(0,c.Xq)(n)?(e.push([...n]),e):(0,c.n1)(n)?S(e,t,n,s):(0,c.aO)(n)?w(e,t,n,s):(0,c.DA)(n)?b(e,t,n,s):k(e,t,n,s)}function x(e,t={}){if(!(0,c.Ed)(e))return e;const n=p(t),s=(0,c.FD)(e),r=[];for(const e of s){const t=[];for(let s=0;s<e.length-1;s++){const r=s+1,i=[...(0,c.yP)(e[s])];0===s&&t.push(i),v(t,i,e[r],n)}r.push(t)}return"curvePaths"in e?{...void 0!==e.hasZ?{hasZ:e.hasZ}:{},...void 0!==e.hasM?{hasM:e.hasM}:{},paths:r,spatialReference:e.spatialReference}:{...void 0!==e.hasZ?{hasZ:e.hasZ}:{},...void 0!==e.hasM?{hasM:e.hasM}:{},rings:r,spatialReference:e.spatialReference}}const A=(0,r.B)(e=>({maxDeviation:0,maxSegmentLength:100*e,maxSegmentsPerCurve:12e3,minSegmentsPerCurve:1}));async function M(e,t,r){const o=new Set(t);return await async function(e,t,r){let i=null;for(const o of e)if(o&&(0,c.Ed)(o)&&null==o.spatialReference.xyTolerance&&(0,c.V8)(o,t)){const e=o.spatialReference;if(!e)throw new s.A("geometry:missing-spatial-reference","Geometry contains an unsupported curve type, but it cannot be densified because it has no spatial reference.");const t=R(e);if(r.has(t))o.spatialReference=r.get(t);else{i||(i=await Promise.all([n.e(3661),n.e(1878),n.e(8885),n.e(5756),n.e(3299),n.e(1550)]).then(n.bind(n,78125)));const a=i.fromSpatialReference(e),c=a?.getTolerance();if(null==c)throw new s.A("geometry:missing-tolerance","Geometry contains an unsupported curve type, but it cannot be densified because the tolerance of its spatial reference is unknown. Set the `xyTolerance` property of the spatial reference.");const u=o.spatialReference.clone();u.read({xyTolerance:c}),o.spatialReference=u,r.set(t,u)}}}(e,o,r),e.map(e=>{if(!e||!(0,c.Ed)(e))return e;const n=e.spatialReference.xyTolerance;if(null==n)return e;const s=A(n);return(0,i.rS)(function(e,t,n){if(!(0,c.Ed)(e))return e;const s=new Set(t),r=p(n),i=(0,c.FD)(e),o=[];let a=!1;for(const e of i){const t=[];for(let n=0;n<e.length-1;n++){const i=n+1,o=[...(0,c.yP)(e[n])];0===n&&t.push(o);const u=e[i];(0,c.Xq)(u)?t.push([...u]):(0,c.n1)(u)&&!s.has("cubic-bezier")?S(t,o,u,r):(0,c.aO)(u)&&!s.has("circular-arc")?w(t,o,u,r):(0,c.DA)(u)&&!s.has("elliptic-arc")?b(t,o,u,r):(0,c.wY)(u)&&!s.has("elliptic-arc")?k(t,o,u,r):(t.push((0,c.tk)(u)),a=!0)}o.push(t)}return"curvePaths"in e?{...void 0!==e.hasZ?{hasZ:e.hasZ}:{},...void 0!==e.hasM?{hasM:e.hasM}:{},spatialReference:e.spatialReference,...a?{curvePaths:o}:{paths:o}}:{hasZ:e.hasZ,hasM:e.hasM,spatialReference:e.spatialReference,...a?{curveRings:o}:{rings:o}}}(e,t,s))})}function R(e){if(null!=e.wkid)return`${e.wkid}`;if(null!=e.wkt)return e.wkt;const t="toJSON"in e&&"function"==typeof e.toJSON?e.toJSON():e;return JSON.stringify(t)}},17136(e,t,n){n.d(t,{Y_:()=>P,O7:()=>C,el:()=>R});var s=n(92602),r=n(69052),i=n(49186),o=n(53966),a=n(39829),c=n(82799),u=n(16930),l=n(80754),h=n(21325),f=n(28735),d=n(52006),p=n(31411),g=n(11254),m=n(60408),y=n(65864),_=n(2272),S=n(84952),w=n(92300);const b=()=>o.A.getLogger("esri.geometry.support.normalizeUtils");function k(e){return"polygon"===e[0].type}function v(e){return"polyline"===e[0].type}function x(e,t,n){const s=1e6;if(t){const t=(0,d.Ed)(e)?(0,p.GS)(e,{maxSegmentLength:s}):function(e,t){if(!(e instanceof c.A||e instanceof a.A)){const e="straightLineDensify: the input geometry is neither polyline nor polygon";throw b().error(e),new i.A("internal:geometry",e)}const n=(0,l.r8)(e),s=[];for(const e of n){const n=[];s.push(n),n.push([e[0][0],e[0][1]]);for(let s=0;s<e.length-1;s++){const r=e[s][0],i=e[s][1],o=e[s+1][0],a=e[s+1][1],c=Math.sqrt((o-r)*(o-r)+(a-i)*(a-i)),u=(a-i)/c,l=(o-r)/c,h=c/t;if(h>1){for(let e=1;e<=h-1;e++){const s=e*t,o=l*s+r,a=u*s+i;n.push([o,a])}const e=(c+Math.floor(h-1)*t)/2,s=l*e+r,o=u*e+i;n.push([s,o])}n.push([o,a])}}return function(e){return"polygon"===e.type}(e)?new a.A({rings:s,spatialReference:e.spatialReference}):new c.A({paths:s,spatialReference:e.spatialReference})}(e,s);e=(0,f.ci)(t,!0)}return n&&(e=(0,l.kS)(e,n)),e}function A(e,t,n){if(Array.isArray(e)){const s=e[0];if(s>t){const n=(0,l.kd)(s,t);e[0]=s+n*(-2*t)}else if(s<n){const t=(0,l.kd)(s,n);e[0]=s+t*(-2*n)}}else{const s=e.x;if(s>t){const n=(0,l.kd)(s,t);e=e.clone().offset(n*(-2*t),0)}else if(s<n){const t=(0,l.kd)(s,n);e=e.clone().offset(t*(-2*n),0)}}return e}function M(e,t){let n=-1;for(let s=0;s<t.cutIndexes.length;s++){const r=t.cutIndexes[s],i=t.geometries[s],o=(0,l.r8)(i);for(let e=0;e<o.length;e++){const t=o[e];t.some(n=>{if(n[0]<180)return!0;{let n=0;for(let e=0;e<t.length;e++){const s=t[e][0];n=s>n?s:n}n=Number(n.toFixed(9));const s=-360*(0,l.kd)(n,180);for(let n=0;n<t.length;n++){const t=i.getPoint(e,n);i.setPoint(e,n,t.clone().offset(s,0))}return!0}})}if(r===n){if(k(e))for(const t of(0,l.r8)(i))e[r]=e[r].addRing(t);else if(v(e))for(const t of(0,l.r8)(i))e[r]=e[r].addPath(t)}else n=r,e[r]=i}return e}async function R(e,t,n){if(!Array.isArray(e))return R([e],t);t&&"string"!=typeof t&&b().warn("normalizeCentralMeridian()","The url object is deprecated, use the url string instead");const r="string"==typeof t?t:t?.url??s.A.geometryServiceUrl;let i,o,u,d,p,k,v,C,E=0;const P=[],F=[];for(const t of e)if(null!=t)if(i||(i=t.spatialReference,o=(0,h.Vp)(i),u=i.isWebMercator,k=u?102100:4326,d=l.j7[k].maxX,p=l.j7[k].minX,v=l.j7[k].plus180Line,C=l.j7[k].minus180Line),o)if("mesh"===t.type)F.push(t);else if("point"===t.type)F.push(A(t.clone(),d,p));else if("multipoint"===t.type){const e=t.clone();e.points=e.points.map(e=>A(e,d,p)),F.push(e)}else if("extent"===t.type){const e=t.clone()._normalize(!1,!1,o);F.push(e.rings?new a.A(e):e)}else if(t.extent){const e=t.extent,n=(0,l.kd)(e.xmin,p)*(2*d);let s=0===n?t.clone():(0,l.kS)(t.clone(),n);e.offset(n,0);let{xmin:r,xmax:i}=e;r=Number(r.toFixed(9)),i=Number(i.toFixed(9)),e.intersects(v)&&i!==d?(E=i>E?i:E,s=x(s,u),P.push(s),F.push("cut")):e.intersects(C)&&r!==p?(E=i*(2*d)>E?i*(2*d):E,s=x(s,u,360),P.push(s),F.push("cut")):F.push(s)}else F.push(t.clone());else F.push(t);else F.push(t);let T=(0,l.kd)(E,d),N=-90;const L=T,I=new c.A;for(;T>0;){const e=360*T-180;I.addPath([[e,N],[e,-1*N]]),N*=-1,T--}if(P.length>0&&L>0){const t=M(P,await async function(e,t,n,s){const r=(0,_.Dl)(e),i=t[0].spatialReference,o={...s,responseType:"json",query:{...r.query,f:"json",sr:(0,h.YX)(i),target:JSON.stringify({geometryType:(0,m.$B)(t[0]),geometries:t}),cutter:JSON.stringify(n)}},a=await(0,g.A)(r.path+"/cut",o),{cutIndexes:c,geometries:u=[]}=a.data;return{cutIndexes:c,geometries:u.map(e=>{const t=(0,y.rS)(e);return t.spatialReference=i,t})}}(r,P,I,n)),s=[],i=[];for(let n=0;n<F.length;n++){const r=F[n];if("cut"!==r)i.push(r);else{const r=t.shift(),o=e[n];null!=o&&"polygon"===o.type&&o.rings&&o.rings.length>1&&r.rings.length>=o.rings.length?(s.push(r),i.push("simplify")):i.push(u?(0,f.Gh)(r):r)}}if(!s.length)return i;const o=await async function(e,t,n){const s="string"==typeof e?(0,S.An)(e):e,r=t[0].spatialReference,i=(0,m.$B)(t[0]),o={...n,query:{...s.query,f:"json",sr:(0,h.YX)(r),geometries:JSON.stringify((0,w.X)(t))}},{data:a}=await(0,g.A)(s.path+"/simplify",o);return(0,w.V)(a.geometries,i,r)}(r,s,n),a=[];for(let e=0;e<i.length;e++){const t=i[e];"simplify"!==t?a.push(t):a.push(u?(0,f.Gh)(o.shift()):o.shift())}return a}const j=[];for(let e=0;e<F.length;e++){const t=F[e];if("cut"!==t)j.push(t);else{const e=P.shift();j.push(!0===u?(0,f.Gh)(e):e)}}return j}function C(e,t,n){const s=(0,h.Vp)(n);if(null==s)return e;const[r,i]=s.valid,o=2*i;let a=0,c=0;t>i?a=Math.ceil(Math.abs(t-i)/o):t<r&&(a=-Math.ceil(Math.abs(t-r)/o)),e>i?c=Math.ceil(Math.abs(e-i)/o):e<r&&(c=-Math.ceil(Math.abs(e-r)/o));let u=e+(a-c)*o;const l=u-t;return l>i?u-=o:l<r&&(u+=o),u}function E(e){const t=(0,h.Vp)(e);if(null==t)return null;const[n,s]=t.valid;return new r.hr(n,s)}const P=E(u.A.WGS84);E(u.A.WebMercator)},80754(e,t,n){n.d(t,{kS:()=>u,kd:()=>c,r8:()=>l});var s=n(82799),r=n(16930),i=n(60408),o=n(52006);const a={102100:{maxX:20037508.342788905,minX:-20037508.342788905,plus180Line:new s.A({paths:[[[20037508.342788905,-20037508.342788905],[20037508.342788905,20037508.342788905]]],spatialReference:r.A.WebMercator}),minus180Line:new s.A({paths:[[[-20037508.342788905,-20037508.342788905],[-20037508.342788905,20037508.342788905]]],spatialReference:r.A.WebMercator})},4326:{maxX:180,minX:-180,plus180Line:new s.A({paths:[[[180,-180],[180,180]]],spatialReference:r.A.WGS84}),minus180Line:new s.A({paths:[[[-180,-180],[-180,180]]],spatialReference:r.A.WGS84})}};function c(e,t){return Math.ceil((e-t)/(2*t))}function u(e,t){if((0,o.Ed)(e))for(const n of function(e){return(0,i.Bi)(e)?e.curveRings:e.curvePaths}(e))for(const e of n){if((0,o.aO)(e)){const[n,s]=e.c;n[0]+=t,s[0]+=t;continue}if((0,o.FG)(e)){const[n,s]=e.a;n[0]+=t,s[0]+=t;continue}if((0,o.n1)(e)){const[n,s,r]=e.b;n[0]+=t,s[0]+=t,r[0]+=t;continue}e[0]+=t}for(const n of l(e))for(const e of n)e[0]+=t;return e}function l(e){return(0,i.Bi)(e)?e.rings:e.paths}n.d(t,["j7",0,a])},31464(e,t,n){n.d(t,{Cv:()=>p,Nk:()=>h,lK:()=>m});var s=n(4576),r=n(91218),i=n(21325),o=n(28735);const a=[0,0];function c(e,t){if(!t)return null;if("x"in t){const n={x:0,y:0};return[n.x,n.y]=e(t.x,t.y,a),null!=t.z&&(n.z=t.z),null!=t.m&&(n.m=t.m),n}if("xmin"in t){const n={xmin:0,ymin:0,xmax:0,ymax:0};return[n.xmin,n.ymin]=e(t.xmin,t.ymin,a),[n.xmax,n.ymax]=e(t.xmax,t.ymax,a),t.hasZ&&(n.zmin=t.zmin,n.zmax=t.zmax,n.hasZ=!0),t.hasM&&(n.mmin=t.mmin,n.mmax=t.mmax,n.hasM=!0),n}return"rings"in t?{rings:u(t.rings,e),hasM:t.hasM,hasZ:t.hasZ}:"paths"in t?{paths:u(t.paths,e),hasM:t.hasM,hasZ:t.hasZ}:"points"in t?{points:l(t.points,e),hasM:t.hasM,hasZ:t.hasZ}:null}function u(e,t){const n=[];for(const s of e)n.push(l(s,t));return n}function l(e,t){const n=[];for(const s of e){const e=t(s[0],s[1],[0,0]);n.push(e),s.length>2&&e.push(s[2]),s.length>3&&e.push(s[3])}return n}async function h(e,t){if(!e||!t)return;const n=Array.isArray(e)?e.map(e=>null!=e.geometry?e.geometry.spatialReference:null).filter(s.Ru):[e];await(0,r.initializeProjection)(n.map(e=>({source:e,dest:t})))}const f=c.bind(null,o.je),d=c.bind(null,o.tD);function p(e,t,n,s){if(!e)return null;if(n||(n=t,t=e.spatialReference),!(0,i.fn)(t)||!(0,i.fn)(n)||(0,i.aI)(t,n))return e;if((0,o.y7)(t,n)){const t=(0,i.K8)(n)?f(e):d(e);return t.spatialReference=n,t}return(0,r.projectMany)([e],t,n,s)[0]}const g=new class{constructor(){this._jobs=[],this._timer=null,this._process=this._process.bind(this)}async push(e,t,n,s){if(!e?.length||!t||!n||(0,i.aI)(t,n))return e;const r={geometries:e,inSpatialReference:t,outSpatialReference:n,options:s,resolve:Promise.withResolvers()};return this._jobs.push(r),this._timer??=setTimeout(this._process,10),r.resolve.promise}_process(){this._timer=null;const e=this._jobs.shift();if(!e)return;const{geometries:t,inSpatialReference:n,outSpatialReference:s,resolve:a,options:c}=e,u=t.filter(e=>null!=e);let l;l=(0,o.y7)(n,s)&&null==c?.extendedParams?(0,i.K8)(s)?u.map(f):u.map(d):(0,r.projectMany)(u,n,s,c);let h=0;const p=t.map(e=>null==e?null:l[h++]);a.resolve(p),this._jobs.length>0&&(this._timer=setTimeout(this._process,10))}};function m(e,t,n,s){return g.push(e,t,n,s)}},60986(e,t,n){n.r(t),n.d(t,{createConnection:()=>C});var s=n(11254),r=n(49186),i=n(31464),o=n(9916),a=n(5482),c=n(65529),u=n(91429);let l=class extends c.nJ{destroy(){this.emit("destroy")}get connectionError(){return this.errorString?new r.A("stream-connection",this.errorString):null}onFeature(e){this.emit("data-received",e)}onMessage(e){this.emit("message-received",e)}};(0,a.Cg)([(0,u.MZ)({readOnly:!0})],l.prototype,"connectionError",null),l=(0,a.Cg)([(0,u.$K)("esri.layers.support.StreamConnection")],l);class h extends l{constructor(e,t){super(),this._config=e,this._outSpatialReference=t,this.connectionStatus="connected",this.errorString=null,this._isPolling=!1,this._lastIngestedAt=null,this._pollTimer=null,this._pollRecentData=async()=>{if(!this.destroyed&&!this._isPolling){this._isPolling=!0;try{const e=await this._queryChanges(this._lastIngestedAt);if(this.destroyed)return;this._handleResult(e)}catch(e){this.errorString=e instanceof Error?e.message:"Failed to fetch"}finally{this._isPolling=!1}}},this._initialize()}destroy(){super.destroy(),this._pollTimer&&(clearInterval(this._pollTimer),this._pollTimer=null)}sendMessageToSocket(e){throw new r.A("kusto:unsupported","sendMessageToSocket not supported for Kusto connections")}sendMessageToClient(e){throw new r.A("kusto:unsupported","sendMessageToClient not supported for Kusto connections")}updateCustomParameters(e){throw new r.A("kusto:unsupported","updateCustomParameters not supported for Kusto connections")}async _initialize(){await(0,i.Nk)(this._config.sourceSpatialReference,this._outSpatialReference);try{const e=await this._queryInitial();this._handleResult(e),this._pollTimer=setInterval(this._pollRecentData,6e4*this._config.refreshInterval)}catch{throw new r.A("kusto:connection","Failed to query KQL database")}}async _queryInitial(){const{trackIdField:e}=this._config,t=f(await this._executeQuery(`${(0,o.xw)(this._config.table)} | extend IngestedAt = ingestion_time() | summarize arg_max(IngestedAt, *) by ${(0,o.xw)(e)}`));if(!t)throw new r.A("kusto:connection","Unable to find primaryTable");return{ingestedAt:d(t),table:t}}async _queryChanges(e=null){const t=e??"1970-01-01T00:00:00Z",n=f(await this._executeQuery(`${(0,o.xw)(this._config.table)} | extend IngestedAt = ingestion_time() | where IngestedAt > todatetime('${(0,o.iD)(t)}') | order by IngestedAt asc`));if(!n)throw new r.A("kusto:connection","Unable to find primaryTable");return{ingestedAt:d(n),table:n}}async _executeQuery(e){const t=this._config.database,n=t.properties.queryServiceUri,{data:r}=await(0,s.A)(`${n}/v2/rest/query`,{responseType:"json",method:"post",headers:{"Content-Type":"application/json"},body:JSON.stringify({db:t.displayName,csl:e})});return r}_handleResult(e){this._lastIngestedAt=e.ingestedAt;const t=this._createFeatures(e.table);if(null!=t){this.onMessage(t);for(const e of t)this.onFeature(e)}}_createFeatures(e){if(null==e||0===e.Rows.length)return null;const{xField:t,yField:n}=this._config.geometryEncoding,s=e.Columns.findIndex(e=>e.ColumnName===t),r=e.Columns.findIndex(e=>e.ColumnName===n);return e.Rows.map(t=>this._createFeature(e.Columns,s,r,t))}_createFeature(e,t,n,s){const{xField:r,yField:o}=this._config.geometryEncoding,a={};for(let t=0;t<e.length;t++){const n=e[t],i=s[t]??null;n.ColumnName!==o&&n.ColumnName!==r&&(a[n.ColumnName]=i)}let c=null;const u=s[t],l=s[n];return null!=l&&null!=u&&(c=(0,i.Cv)({x:u,y:l},this._config.sourceSpatialReference,this._outSpatialReference)),{attributes:a,geometry:c}}}function f(e){return e.find(e=>"DataTable"===e.FrameType&&"PrimaryResult"===e.TableKind)??null}function d(e){const t=e.Columns.findIndex(e=>"IngestedAt"===e.ColumnName);if(t<0)return null;let n=null;for(const s of e.Rows){const e=s[t];"string"==typeof e&&(null==n||e>n)&&(n=e)}return n}var p=n(53966),g=n(84952),m=n(16930),y=n(65864),_=n(17676),S=n(62815);function w(e,t){if(null==e&&null==t)return null;const n={};return null!=t&&(n.geometry=t),null!=e&&(n.where=e),n}let b=class extends l{constructor(e,t){super({}),this._outSpatialReference=t,this._outstandingMessages=[],this.errorString=null;const{geometryType:n,sourceSpatialReference:s}=e;this._config=e,this._featureZScaler=(0,S.N)(n,s,this._outSpatialReference),this._open()}normalizeCtorArgs(){return{}}async _open(){await this._tryCreateWebSocket(),this.destroyed||await this._handshake()}destroy(){super.destroy(),null!=this._websocket&&(this._websocket.onopen=null,this._websocket.onclose=null,this._websocket.onerror=null,this._websocket.onmessage=null,this._websocket.close()),this._websocket=null}get connectionStatus(){if(null==this._websocket)return"disconnected";switch(this._websocket.readyState){case 0:case 1:return"connected";case 2:case 3:return"disconnected"}}sendMessageToSocket(e){null!=this._websocket?this._websocket.send(JSON.stringify(e)):this._outstandingMessages.push(e)}sendMessageToClient(e){this._onMessage(e)}updateCustomParameters(e){this._config.customParameters=e,null!=this._websocket&&this._websocket.close()}async _tryCreateWebSocket(e=this._config.url.path,t=1e3,n=0){try{if(this.destroyed)return;const t=(0,g.a6)(e,this._config.customParameters??{});this._websocket=await this._createWebSocket(t),this.notifyChange("connectionStatus")}catch(s){const i=t/1e3;return this._config.maxReconnectionAttempts&&n>=this._config.maxReconnectionAttempts?(p.A.getLogger(this).error(new r.A("websocket-connection","Exceeded maxReconnectionAttempts attempts. No further attempts will be made")),void this.destroy()):(p.A.getLogger(this).error(new r.A("websocket-connection",`Failed to connect. Attempting to reconnect in ${i}s`,s)),await(0,_.Pl)(t),this._tryCreateWebSocket(e,Math.min(1.5*t,1e3*this._config.maxReconnectionInterval),n+1))}}_setWebSocketJSONParseHandler(e){e.onmessage=e=>{try{const t=JSON.parse(e.data);this._onMessage(t)}catch(e){return void p.A.getLogger(this).error(new r.A("websocket-connection","Failed to parse message, invalid JSON",{error:e}))}}}_createWebSocket(e){return new Promise((t,n)=>{const s=new WebSocket(e);s.onopen=()=>{if(s.onopen=null,this.destroyed)return s.onclose=null,void s.close();s.onclose=e=>this._onClose(e),s.onerror=e=>this._onError(e),this._setWebSocketJSONParseHandler(s),t(s)},s.onclose=e=>{s.onopen=s.onclose=null,n(e)}})}async _handshake(e=1e4){const t=this._websocket;if(null==t)return;const n=Promise.withResolvers(),s=t.onmessage,i=w(this._config.definitionExpression,this._config.geometryDefinition),{outFields:o}=this._config,a=setTimeout(()=>n.reject(),e),c=()=>{clearTimeout(a),n.reject()};return t.onmessage=e=>{let u=null;try{u=JSON.parse(e.data)}catch(e){}u&&"object"==typeof u||(p.A.getLogger(this).error(new r.A("websocket-connection","Protocol violation. Handshake failed - malformed message",e.data)),c(),this.destroy()),u.spatialReference?.wkid!==this._outSpatialReference?.wkid&&(p.A.getLogger(this).error(new r.A("websocket-connection",`Protocol violation. Handshake failed - expected wkid of ${this._outSpatialReference.wkid}`,e.data)),c(),this.destroy()),"json"!==u.format&&(p.A.getLogger(this).error(new r.A("websocket-connection","Protocol violation. Handshake failed - format is not set",e.data)),c(),this.destroy()),i&&u.filter!==i&&p.A.getLogger(this).error(new r.A("websocket-connection","Tried to set filter, but server doesn't support it")),o&&u.outFields!==o&&p.A.getLogger(this).error(new r.A("websocket-connection","Tried to set outFields, but server doesn't support it")),t.onmessage=s;for(const e of this._outstandingMessages)t.send(JSON.stringify(e));this._outstandingMessages=[],clearTimeout(a),n.resolve()},t.send(JSON.stringify({filter:i,outFields:o,format:"json",spatialReference:{wkid:this._outSpatialReference.wkid}})),n.promise}_onMessage(e){if(this.onMessage(e),"type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}}_onError(e){const t="Encountered an error over WebSocket connection";this._set("errorString",t),p.A.getLogger(this).error("websocket-connection",t)}_onClose(e){this._websocket=null,this.notifyChange("connectionStatus"),1e3!==e.code&&p.A.getLogger(this).error("websocket-connection",`WebSocket closed unexpectedly with error code ${e.code}`),this.destroyed||this._open()}};(0,a.Cg)([(0,u.MZ)()],b.prototype,"connectionStatus",null),(0,a.Cg)([(0,u.MZ)()],b.prototype,"errorString",void 0),b=(0,a.Cg)([(0,u.$K)("esri.layers.graphics.sources.connections.WebSocketConnection")],b);var k=n(80893),v=n(97552);const x={maxQueryDepth:5,maxRecordCountFactor:3};let A=class extends b{constructor(e,t){super({...x,...e},t),this._buddyServicesQuery=null,this._relatedFeatures=null}async _open(){const e=await this._fetchServiceDefinition(this._config.url);e.timeInfo.trackIdField||p.A.getLogger(this).warn("GeoEvent service was configured without a TrackIdField. This may result in certain functionality being disabled. The purgeOptions.maxObservations property will have no effect.");const t=this._fetchWebSocketUrl(e.streamUrls,this._outSpatialReference);this._buddyServicesQuery||(this._buddyServicesQuery=this._queryBuddyServices()),await this._buddyServicesQuery,await this._tryCreateWebSocket(t);const n=w(this._config.definitionExpression,this._config.geometryDefinition),{outFields:s}=this._config;this.destroyed||this._setFilter(n,s)}_onMessage(e){if("attributes"in e){let t;try{t=this._enrich(e),null!=this._featureZScaler&&this._featureZScaler(t.geometry)}catch(e){return void p.A.getLogger(this).error(new r.A("geoevent-connection","Failed to parse message",e))}this.onFeature(t)}else this.onMessage(e)}async _fetchServiceDefinition(e){const t={f:"json",...this._config.customParameters},n=(0,s.A)(e.path,{query:t,responseType:"json"}),r=(await n).data;return this._serviceDefinition=r,r}_fetchWebSocketUrl(e,t){const n=e[0],{urls:s,token:r}=n,i=this._inferWebSocketBaseUrl(s);return(0,g.a6)(`${i}/subscribe`,{outSR:""+t.wkid,token:r})}_inferWebSocketBaseUrl(e){if(1===e.length)return e[0];for(const t of e)if(t.includes("wss"))return t;return p.A.getLogger(this).error(new r.A("geoevent-connection","Unable to infer WebSocket url",e)),null}async _setFilter(e,t){const n=this._websocket;if(null==n||null==e&&null==t)return;const s=JSON.stringify({filter:this._serializeFilter(e,t)});let i=!1;const o=Promise.withResolvers();return n.onmessage=e=>{const t=JSON.parse(e.data);t.filter&&(t.error&&(p.A.getLogger(this).error(new r.A("geoevent-connection","Failed to set service filter",t.error)),this._set("errorString",`Could not set service filter - ${t.error}`),o.reject(t.error)),this._setWebSocketJSONParseHandler(n),i=!0,o.resolve())},n.send(s),setTimeout(()=>{i||(this.destroyed||this._websocket!==n||p.A.getLogger(this).error(new r.A("geoevent-connection","Server timed out when setting filter")),o.reject())},1e4),o.promise}_serializeFilter(e,t){const n={};if(null==e&&null==t)return n;if(e?.geometry)try{const t=(0,y.rS)(e.geometry);if("extent"!==t.type)throw new r.A("geoevent-connection",`Expected extent but found type ${t.type}`);n.geometry=JSON.stringify(t.shiftCentralMeridian())}catch(e){p.A.getLogger(this).error(new r.A("geoevent-connection","Encountered an error when setting connection geometryDefinition",e))}return e?.where&&"1 = 1"!==e.where&&"1=1"!==e.where&&(n.where=e.where),null!=t&&(n.outFields=t.join(",")),n}_enrich(e){if(!this._relatedFeatures)return e;const t=this._serviceDefinition.relatedFeatures.joinField,n=e.attributes[t],s=this._relatedFeatures.get(n);if(!s)return p.A.getLogger(this).warn("geoevent-connection","Feature join failed. Is the join field configured correctly?",e),e;const{attributes:i,geometry:o}=s;for(const t in i)e.attributes[t]=i[t];return o&&(e.geometry=o),e.geometry||e.centroid||p.A.getLogger(this).error(new r.A("geoevent-connection","Found malformed feature - no geometry found",e)),e}async _queryBuddyServices(){try{const{relatedFeatures:e,keepLatestArchive:t}=this._serviceDefinition,n=this._queryRelatedFeatures(e),s=this._queryArchive(t);await n;const r=await s;if(!r)return;for(const e of r.features)this.onFeature(this._enrich(e))}catch(e){p.A.getLogger(this).error(new r.A("geoevent-connection","Encountered an error when querying buddy services",{error:e}))}}async _queryRelatedFeatures(e){if(!e)return;const t=await this._queryBuddy(e.featuresUrl);this._addRelatedFeatures(t)}async _queryArchive(e){if(e)return this._queryBuddy(e.featuresUrl)}async _queryBuddy(e){const t=new((await Promise.all([n.e(7632),n.e(8278),n.e(7865),n.e(6554),n.e(2869),n.e(3910),n.e(9953),n.e(564),n.e(1214),n.e(2889),n.e(1017),n.e(500),n.e(4674),n.e(993),n.e(4333),n.e(3781),n.e(812),n.e(3470),n.e(958)]).then(n.bind(n,53781))).default)({url:e}),{capabilities:s}=await t.load(),r=s.query.supportsMaxRecordCountFactor,i=s.query.supportsPagination,o=s.query.supportsCentroid,a=this._config.maxRecordCountFactor,c=t.capabilities.query.maxRecordCount,u=r?c*a:c,l=new v.A;if(l.outFields=this._config.outFields??["*"],l.where=this._config.definitionExpression??"1=1",l.returnGeometry=!0,l.returnExceededLimitFeatures=!0,l.outSpatialReference=m.A.fromJSON(this._outSpatialReference),o&&(l.returnCentroid=!0),r&&(l.maxRecordCountFactor=a),i)return l.num=u,t.destroy(),this._queryPages(e,l);const h=await(0,k.eW)(e,l,this._config.sourceSpatialReference);return t.destroy(),h}async _queryPages(e,t,n=[],s=0){t.start=null!=t.num?s*t.num:null;const r=await(0,k.eW)(e,t,this._config.sourceSpatialReference);return r.exceededTransferLimit&&s<(this._config.maxQueryDepth??0)?(r.features.forEach(e=>n.push(e)),this._queryPages(e,t,n,s+1)):(n.forEach(e=>r.features.push(e)),r)}_addRelatedFeatures(e){const t=new Map,n=e.features,s=this._serviceDefinition.relatedFeatures.joinField;for(const e of n){const n=e.attributes[s];t.set(n,e)}this._relatedFeatures=t}};A=(0,a.Cg)([(0,u.$K)("esri.layers.graphics.sources.connections.GeoEventConnection")],A);var M=n(64108);let R=class extends l{constructor(e,t){super({}),this.connectionStatus="connected",this.errorString=null;const{geometryType:n,sourceSpatialReference:s}=e;this._featureZScaler=(0,S.N)(n,s,t)}normalizeCtorArgs(){return{}}updateCustomParameters(e){}sendMessageToSocket(e){}sendMessageToClient(e){if("type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}this.onMessage(e)}};function C(e,t){const n=t.toJSON();switch(e.type){case"client":return new R(e,n);case"custom":return new b(e,n);case"geoevent":return new A(e,n);case"kusto":return new h(e,n)}}(0,a.Cg)([(0,u.MZ)()],R.prototype,"connectionStatus",void 0),(0,a.Cg)([(0,u.MZ)()],R.prototype,"errorString",void 0),R=(0,a.Cg)([(0,M.$)("esri.layers.support.ClientSideConnection")],R)},92300(e,t,n){n.d(t,{V:()=>o,X:()=>i});var s=n(60408),r=n(65864);function i(e){return{geometryType:(0,s.$B)(e[0]),geometries:e.map(e=>e.toJSON())}}function o(e,t,n){const s=(0,r.xD)(t);return e.map(e=>{const t=s.fromJSON(e);return t.spatialReference=n,t})}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[909,9933],{92009(e,a,r){r.d(a,{L:()=>c});var t=r(70333),n=r(11254),i=r(49186),y=r(17676),l=r(60694),s=r(20655),o=r(80812);async function c(e,a){const r=(0,l.qg)(e);if(!r)throw new i.A("invalid-url","Invalid scene service url");const c={...a,sceneServerUrl:r.url.path,layerId:r.sublayer??void 0};if(c.sceneLayerItem??=await async function(e){const a=(await u(e)).serviceItemId;if(!a)return null;const r=new o.default({id:a,apiKey:e.apiKey}),i=await async function(e){const a=t.id?.findServerInfo(e.sceneServerUrl);if(a?.owningSystemUrl)return a.owningSystemUrl;const r=e.sceneServerUrl.replace(/(.*\/rest)\/.*/i,"$1")+"/info";try{const a=(await(0,n.A)(r,{query:{f:"json"},responseType:"json",signal:e.signal})).data.owningSystemUrl;if(a)return a}catch(e){(0,y.QP)(e)}return null}(e);null!=i&&(r.portal=new s.A({url:i}));try{return await r.load({signal:e.signal})}catch(e){return(0,y.QP)(e),null}}(c),null==c.sceneLayerItem)return L(c.sceneServerUrl.replace("/SceneServer","/FeatureServer"),c);const d=await async function({sceneLayerItem:e,signal:a}){if(!e)return null;try{const r=(await e.fetchRelatedItems({relationshipType:"Service2Service",direction:"reverse"},{signal:a})).find(e=>"Feature Service"===e.type)||null;if(!r)return null;const t=new o.default({portal:r.portal,id:r.id});return await t.load(),t}catch(e){return(0,y.QP)(e),null}}(c);if(!d?.url)throw new i.A("related-service-not-found","Could not find feature service through portal item relationship");c.featureServiceItem=d;const S=await L(d.url,c);return S.portalItem=d,S}async function u(e){if(e.rootDocument)return e.rootDocument;const a={query:{f:"json",...e.customParameters,token:e.apiKey},responseType:"json",signal:e.signal};try{const r=await(0,n.A)(e.sceneServerUrl,a);e.rootDocument=r.data}catch{e.rootDocument={}}return e.rootDocument}async function L(e,a){const r=(0,l.qg)(e);if(!r)throw new i.A("invalid-feature-service-url","Invalid feature service url");const t=r.url.path,y=a.layerId;if(null==y)return{serverUrl:t};const s=u(a),o=a.featureServiceItem?await a.featureServiceItem.fetchData("json"):null,c=(o?.layers?.[0]||o?.tables?.[0])?.customParameters,L=e=>{const r={query:{f:"json",...c},responseType:"json",authMode:e,signal:a.signal};return(0,n.A)(t,r)},d=L("anonymous").catch(()=>L("no-prompt")),[S,f]=await Promise.all([d,s]),p=f?.layers,m=S.data&&S.data.layers;if(!Array.isArray(m))throw new Error("expected layers array");if(Array.isArray(p)){for(let e=0;e<Math.min(p.length,m.length);e++)if(p[e].id===y)return{serverUrl:t,layerId:m[e].id}}else if(null!=y&&y<m.length)return{serverUrl:t,layerId:m[y].id};throw new Error("could not find matching associated sublayer")}},23154(e,a,r){r.d(a,{A6:()=>l,Aq:()=>f,Jo:()=>S,QM:()=>y});var t=r(77548),n=r(7861);const i=new Set(["Annotation Layer","Catalog Layer","Dimension Layer","Feature Layer","Oriented Imagery Layer"]);async function y(e,a){const{serviceJSON:r,layersJSON:t,...n}=await l(e,a);c(r);const i={serviceJSON:r,...n};return t&&(c(t),i.layersJSON=t),i}async function l(e,a){const{loadContext:r,...i}=a||{},y=r?await r.fetchServiceMetadata(e,i):await(0,n.L)(e,i),l=(0,t.G$)();d(y);const s={serviceJSON:y,preferredHost:l};if((y.currentVersion??0)<10.5)return s;const o=`${(0,t.$x)()??e}/layers`,c=r?await r.fetchServiceMetadata(o,i):await(0,n.L)(o,i);return d(c),s.layersJSON={layers:c.layers,tables:c.tables},s}function s(e){return i.has(e.type)}function o(e){return"Table"===e.type}function c(e){e.layers=e.layers?.filter(s),e.tables=e.tables?.filter(o)}function u(e){e.type||="Feature Layer"}function L(e){e.type||="Table"}function d(e){e.layers?.forEach(u),e.tables?.forEach(L)}function S(e){if(!e)return"FeatureLayer";switch(e){case"Feature Layer":case"Table":return"FeatureLayer";case"Oriented Imagery Layer":return"OrientedImageryLayer";case"Catalog Layer":return"CatalogLayer";case"Dimension Layer":return"DimensionFeatureLayer";case"Annotation Layer":return"AnnotationFeatureLayer"}return null}function f(e,a){if(!e)return a?"Table":"ArcGISFeatureLayer";switch(e){case"Annotation Layer":return"ArcGISAnnotationLayer";case"Catalog Layer":return"CatalogLayer";case"Dimension Layer":return"ArcGISDimensionLayer";case"Feature Layer":return"ArcGISFeatureLayer";case"Oriented Imagery Layer":return"OrientedImageryLayer";case"Parcel Layer":return"ParcelLayer";case"Table":return"Table";case"Topology Layer":return"TopologyLayer";case"Trace Network Layer":return"TraceNetworkLayer";case"Utility Network Layer":return"UtilityNetworkLayer";default:return null}}},75356(e,a,r){r.d(a,{N:()=>f,populateOperationalLayers:()=>u});var t=r(7762),n=(r(44208),r(22429)),i=r(2976),y=r(6345),l=r(80812);function s(e,a){return!(!e.layerType||"ArcGISFeatureLayer"!==e.layerType)&&e.featureCollectionType===a}var o=r(45613),c=r(8947);async function u(e,a,r){if(!a)return;const t=a.map(e=>async function(e,a){return async function(e,a,r){const t=new e;return t.read(a,r.context),"group"===t.type&&("GroupLayer"===a.layerType?await f(t,a,r):S(a)?function(e,a,r){a.itemId&&(e.portalItem=new l.default({id:a.itemId,portal:r?.portal}),e.when(()=>{const t=t=>{const n=t.layerId;p(t,e,a,n,r);const i=a.featureCollection?.layers?.[n];i&&t.read(i,r)};e.layers?.forEach(t),e.tables?.forEach(t)}))}(t,a,r.context):d(a)&&await async function(e,a,r){const t=i.U.FeatureLayer,n=await t(),y=a.featureCollection,l=y?.showLegend,s=y?.layers?.map((t,i)=>{const y=new n;y.read(t,r);const s={...r,ignoreDefaults:!0};return p(y,e,a,i,s),null!=l&&y.read({showLegend:l},s),y});e.layers.addMany(s??[])}(t,a,r.context)),await(0,c.L)(t,r.context),t}(await L(e,a),e,a)}(e,r)),n=await Promise.allSettled(t);for(const a of n)"rejected"===a.status||a.value&&e.add(a.value)}async function L(e,a){const r=a.context,t=(e.layerType||e.type)??a.defaultLayerType;switch(t){case"Feature Collection":case"ArcGISFeatureLayer":if(function(e){return s(e,"notes")}(e)||function(e){return s(e,"markup")}(e))return i.U.MapNotesLayer();if(function(e){return s(e,"route")}(e))return i.U.RouteLayer();if(S(e)){const a=r?.portal;if(e.itemId){const r=new l.default({id:e.itemId,portal:a});await r.load();const t=(await(0,o.n)(r,new n.v)).className||"UnknownLayer";return i.U[t]()}return i.U.UnknownLayer()}return d(e)?i.U.GroupLayer():i.U.FeatureLayer();case"WebTiledLayer":return e.wmtsInfo?.url&&e.wmtsInfo.layerIdentifier?i.U.WMTSLayer():i.U.WebTileLayer();case"WFS":return"2.0.0"!==e.wfsInfo?.version?i.U.UnsupportedLayer():i.U.WFSLayer();default:{const e=(0,y.VH)(r,t);return(0,i.U[e])()}}}function d(e){return"ArcGISFeatureLayer"===e.layerType&&!S(e)&&(e.featureCollection?.layers?.length??0)>1}function S(e){return"Feature Collection"===e.type}async function f(e,a,r){const n=new t.A,i=u(n,Array.isArray(a.layers)?a.layers:[],r);try{try{if(await i,"group"===e.type)return e.layers.addMany(n),e}catch(a){e.destroy();for(const e of n)e.destroy();throw a}}catch(e){throw e}}function p(e,a,r,t,n){e.read({id:`${a.id}-sublayer-${t}`,visibility:r.visibleLayers?.includes(t)??!0},n)}},2976(e,a,r){const t={AnnotationFeatureLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(564),r.e(7552),r.e(2889),r.e(4674),r.e(4333),r.e(9296)]).then(r.bind(r,20737))).default,BingMapsLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(6684)]).then(r.bind(r,17029))).default,BuildingSceneLayer:async()=>(await Promise.all([r.e(7632),r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(564),r.e(7552),r.e(1214),r.e(2889),r.e(1017),r.e(500),r.e(4674),r.e(993),r.e(4333),r.e(3781),r.e(6231),r.e(7005),r.e(9240),r.e(560),r.e(3290),r.e(990),r.e(594)]).then(r.bind(r,82411))).default,CSVLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(564),r.e(7552),r.e(1214),r.e(2889),r.e(1017),r.e(4778)]).then(r.bind(r,68695))).default,CatalogLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(564),r.e(7552),r.e(1214),r.e(2889),r.e(500),r.e(4674),r.e(893),r.e(993),r.e(4333),r.e(3636),r.e(4571),r.e(318)]).then(r.bind(r,83508))).default,DimensionFeatureLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(564),r.e(7552),r.e(2889),r.e(4674),r.e(4333),r.e(4428)]).then(r.bind(r,25077))).default,DimensionLayer:async()=>(await Promise.all([r.e(8278),r.e(3813)]).then(r.bind(r,71493))).default,ElevationLayer:async()=>(await Promise.all([r.e(8278),r.e(9953),r.e(2827),r.e(4493)]).then(r.bind(r,38732))).default,FeatureLayer:async()=>(await Promise.all([r.e(7632),r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(564),r.e(7552),r.e(1214),r.e(2889),r.e(1017),r.e(500),r.e(4674),r.e(993),r.e(4333),r.e(3781),r.e(5604)]).then(r.bind(r,53781))).default,GaussianSplatLayer:async()=>(await Promise.all([r.e(8278),r.e(6231),r.e(9177),r.e(6475)]).then(r.bind(r,36475))).default,GeoJSONLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(564),r.e(7552),r.e(1214),r.e(2889),r.e(1017),r.e(500),r.e(7828)]).then(r.bind(r,15481))).default,GeoRSSLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(9657)]).then(r.bind(r,63201))).default,GroupLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(5613),r.e(6569)]).then(r.bind(r,85989))).default,ImageryLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(564),r.e(7552),r.e(893),r.e(6231),r.e(1683),r.e(1356),r.e(5138),r.e(7772),r.e(4884)]).then(r.bind(r,87772))).default,ImageryTileLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(564),r.e(6231),r.e(1683),r.e(2827),r.e(1356),r.e(2754),r.e(5138),r.e(9235),r.e(3500),r.e(1003),r.e(2806),r.e(7944)]).then(r.bind(r,90124))).default,IntegratedMesh3DTilesLayer:async()=>(await Promise.all([r.e(8278),r.e(9953),r.e(6231),r.e(9177),r.e(8325),r.e(132)]).then(r.bind(r,61528))).default,IntegratedMeshLayer:async()=>(await Promise.all([r.e(8278),r.e(9953),r.e(6231),r.e(9240),r.e(9177),r.e(8325),r.e(7464)]).then(r.bind(r,74660))).default,KMLLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(564),r.e(1214),r.e(4664)]).then(r.bind(r,162))).default,KnowledgeGraphLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(564),r.e(7552),r.e(1214),r.e(2889),r.e(1017),r.e(500),r.e(993),r.e(708),r.e(9696),r.e(8245),r.e(1683),r.e(217),r.e(1521),r.e(2969),r.e(2459),r.e(8692)]).then(r.bind(r,28692))).default,LineOfSightLayer:async()=>(await Promise.all([r.e(8278),r.e(6231),r.e(4807),r.e(9695)]).then(r.bind(r,49695))).default,LinkChartLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(564),r.e(7552),r.e(1214),r.e(2889),r.e(1017),r.e(500),r.e(993),r.e(708),r.e(9696),r.e(8245),r.e(1683),r.e(217),r.e(1521),r.e(2969),r.e(2459),r.e(3309)]).then(r.bind(r,93309))).default,MapImageLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(564),r.e(7552),r.e(1214),r.e(2889),r.e(500),r.e(4674),r.e(893),r.e(822),r.e(13)]).then(r.bind(r,7656))).default,MapNotesLayer:async()=>(await Promise.all([r.e(7632),r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(564),r.e(7552),r.e(1214),r.e(2889),r.e(1017),r.e(500),r.e(4674),r.e(993),r.e(4333),r.e(3781),r.e(2969),r.e(9062)]).then(r.bind(r,96299))).default,MediaLayer:async()=>(await Promise.all([r.e(7632),r.e(8278),r.e(7865),r.e(1670),r.e(2491)]).then(r.bind(r,90182))).default,OGCFeatureLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(564),r.e(7552),r.e(1214),r.e(2889),r.e(1017),r.e(500),r.e(708),r.e(560),r.e(5594)]).then(r.bind(r,65977))).default,OpenStreetMapLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(7269),r.e(349)]).then(r.bind(r,40349))).default,OrientedImageryLayer:async()=>(await Promise.all([r.e(7632),r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(564),r.e(7552),r.e(1214),r.e(2889),r.e(1017),r.e(500),r.e(4674),r.e(993),r.e(4333),r.e(3781),r.e(6113),r.e(5982)]).then(r.bind(r,16852))).default,ParquetLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(2869),r.e(3910),r.e(9953),r.e(564),r.e(7552),r.e(1214),r.e(2889),r.e(1017),r.e(500),r.e(3819),r.e(1199),r.e(1698)]).then(r.bind(r,99680))).default,PointCloudLayer:async()=>(await Promise.all([r.e(8278),r.e(2869),r.e(6231),r.e(9240),r.e(7984),r.e(6533)]).then(r.bind(r,77885))).default,RouteLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(2869),r.e(3910),r.e(564),r.e(1214),r.e(217),r.e(8195)]).then(r.bind(r,39622))).default,SceneLayer:async()=>(await Promise.all([r.e(8278),r.e(2869),r.e(3910),r.e(564),r.e(7552),r.e(1214),r.e(2889),r.e(6231),r.e(7005),r.e(9240),r.e(560),r.e(3290),r.e(990),r.e(8231)]).then(r.bind(r,2e4))).default,StreamLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(564),r.e(7552),r.e(1214),r.e(2889),r.e(1017),r.e(3681),r.e(2509)]).then(r.bind(r,79457))).default,SubtypeGroupLayer:async()=>(await Promise.all([r.e(7632),r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(564),r.e(7552),r.e(2889),r.e(500),r.e(4674),r.e(993),r.e(4333),r.e(1683),r.e(6008)]).then(r.bind(r,97483))).default,TileLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(564),r.e(7552),r.e(1214),r.e(2889),r.e(500),r.e(4674),r.e(893),r.e(2827),r.e(822),r.e(2746)]).then(r.bind(r,71756))).default,UnknownLayer:async()=>(await r.e(146).then(r.bind(r,146))).default,UnsupportedLayer:async()=>(await r.e(5165).then(r.bind(r,45165))).default,VectorTileLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2827),r.e(5228),r.e(5013),r.e(3897)]).then(r.bind(r,48757))).default,VideoLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(3910),r.e(4674),r.e(1683),r.e(1670),r.e(1563)]).then(r.bind(r,86875))).default,ViewshedLayer:async()=>(await Promise.all([r.e(8278),r.e(6231),r.e(4807),r.e(6650)]).then(r.bind(r,96650))).default,VoxelLayer:async()=>(await Promise.all([r.e(8278),r.e(2869),r.e(9240),r.e(117)]).then(r.bind(r,21005))).default,WCSLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(564),r.e(1683),r.e(1356),r.e(2754),r.e(5138),r.e(9235),r.e(3500),r.e(2806),r.e(6792)]).then(r.bind(r,20521))).default,WFSLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(564),r.e(7552),r.e(1214),r.e(2889),r.e(1017),r.e(708),r.e(7431)]).then(r.bind(r,21901))).default,WMSLayer:async()=>(await Promise.all([r.e(7632),r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(1728)]).then(r.bind(r,51904))).default,WMTSLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(7269),r.e(309)]).then(r.bind(r,20309))).default,WebTileLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(7269)]).then(r.bind(r,47314))).default};r.d(a,["U",0,t])},6345(e,a,r){r.d(a,{Bu:()=>w,VH:()=>g});var t=r(44208);const n={ArcGISImageServiceLayer:"ImageryLayer",ArcGISImageServiceVectorLayer:"ImageryLayer",ArcGISMapServiceLayer:"MapImageLayer",ArcGISTiledImageServiceLayer:"ImageryTileLayer",ArcGISTiledMapServiceLayer:"TileLayer",BingMapsAerial:"BingMapsLayer",BingMapsHybrid:"BingMapsLayer",BingMapsRoad:"BingMapsLayer",OpenStreetMap:"OpenStreetMapLayer",VectorTileLayer:"VectorTileLayer",WCS:"WCSLayer",WMS:"WMSLayer",WebTiledLayer:"WebTileLayer"},i={ArcGISAnnotationLayer:"AnnotationFeatureLayer",ArcGISDimensionLayer:"DimensionFeatureLayer",ArcGISFeatureLayer:"FeatureLayer",ArcGISImageServiceLayer:"ImageryLayer",ArcGISImageServiceVectorLayer:"ImageryLayer",ArcGISMapServiceLayer:"MapImageLayer",ArcGISStreamLayer:"StreamLayer",ArcGISTiledImageServiceLayer:"ImageryTileLayer",ArcGISTiledMapServiceLayer:"TileLayer",ArcGISVideoLayer:"VideoLayer",BingMapsAerial:"BingMapsLayer",BingMapsHybrid:"BingMapsLayer",BingMapsRoad:"BingMapsLayer",CatalogLayer:"CatalogLayer",CSV:"CSVLayer",GeoJSON:"GeoJSONLayer",GeoRSS:"GeoRSSLayer",GroupLayer:"GroupLayer",KML:"KMLLayer",KnowledgeGraphLayer:"KnowledgeGraphLayer",MediaLayer:"MediaLayer",OGCFeatureLayer:"OGCFeatureLayer",OrientedImageryLayer:"OrientedImageryLayer",get ParquetLayer(){return(0,t.A)("parquetlayer-persistence-enabled")?"ParquetLayer":"UnsupportedLayer"},SubtypeGroupLayer:"SubtypeGroupLayer",VectorTileLayer:"VectorTileLayer",WCS:"WCSLayer",WFS:"WFSLayer",WMS:"WMSLayer",WebTiledLayer:"WebTileLayer"},y={ArcGISFeatureLayer:"FeatureLayer",SubtypeGroupTable:"SubtypeGroupLayer"},l={ArcGISImageServiceLayer:"UnsupportedLayer",ArcGISMapServiceLayer:"UnsupportedLayer",ArcGISSceneServiceLayer:"SceneLayer",ArcGISTiledImageServiceLayer:"ImageryTileLayer",ArcGISTiledMapServiceLayer:"TileLayer",OpenStreetMap:"OpenStreetMapLayer",VectorTileLayer:"VectorTileLayer",WCS:"UnsupportedLayer",WMS:"UnsupportedLayer",WebTiledLayer:"WebTileLayer"},s={IntegratedMesh3DTilesLayer:"IntegratedMesh3DTilesLayer"},o={ArcGISTiledElevationServiceLayer:"ElevationLayer",RasterDataElevationLayer:"UnsupportedLayer"},c={ArcGISDimensionLayer:"DimensionLayer",ArcGISFeatureLayer:"FeatureLayer",ArcGISImageServiceLayer:"ImageryLayer",ArcGISMapServiceLayer:"MapImageLayer",ArcGISSceneServiceLayer:"SceneLayer",ArcGISTiledElevationServiceLayer:"ElevationLayer",ArcGISTiledImageServiceLayer:"ImageryTileLayer",ArcGISTiledMapServiceLayer:"TileLayer",BuildingSceneLayer:"BuildingSceneLayer",CatalogLayer:"CatalogLayer",CSV:"CSVLayer",GaussianSplatLayer:"GaussianSplatLayer",GeoJSON:"GeoJSONLayer",GroupLayer:"GroupLayer",IntegratedMesh3DTilesLayer:"IntegratedMesh3DTilesLayer",Object3DTilesLayer:"UnsupportedLayer",IntegratedMeshLayer:"IntegratedMeshLayer",KML:"KMLLayer",LineOfSightLayer:"LineOfSightLayer",MediaLayer:"MediaLayer",OGCFeatureLayer:"OGCFeatureLayer",OrientedImageryLayer:"OrientedImageryLayer",PointCloudLayer:"PointCloudLayer",RasterDataLayer:"UnsupportedLayer",VectorTileLayer:"VectorTileLayer",ViewshedLayer:"ViewshedLayer",Voxel:"VoxelLayer",WCS:"WCSLayer",WFS:"WFSLayer",WMS:"WMSLayer",WebTiledLayer:"WebTileLayer"},u={ArcGISFeatureLayer:"FeatureLayer"},L={...i,LinkChartLayer:"LinkChartLayer"},d=n,S=y,f={ArcGISFeatureLayer:"FeatureLayer",ArcGISImageServiceLayer:"ImageryLayer",ArcGISMapServiceLayer:"MapImageLayer",ArcGISSceneServiceLayer:"SceneLayer",ArcGISStreamLayer:"StreamLayer",ArcGISTiledImageServiceLayer:"ImageryTileLayer",BuildingSceneLayer:"BuildingSceneLayer",IntegratedMesh3DTilesLayer:"IntegratedMesh3DTilesLayer",IntegratedMeshLayer:"IntegratedMeshLayer",MediaLayer:"MediaLayer",OrientedImageryLayer:"OrientedImageryLayer",PointCloudLayer:"PointCloudLayer",SubtypeGroupLayer:"SubtypeGroupLayer",WCS:"WCSLayer"},p=y;function m(e){switch(e.origin){case"web-scene":switch(e.layerContainerType){case"basemap-base-layers":return l;case"basemap-ground-layers":return s;case"ground":return o;case"tables":return u;default:return c}case"link-chart":switch(e.layerContainerType){case"basemap-base-layers":return d;case"tables":return S;default:return L}default:switch(e.layerContainerType){case"basemap-base-layers":return n;case"tables":return y;case"ground":case"basemap-ground-layers":return;default:return i}}}function g(e,a){if(!a)return"UnknownLayer";if("DefaultTileLayer"===a){let a="UnknownLayer";if("web-scene"===e.origin)switch(e.layerContainerType){case"operational-layers":case"basemap-base-layers":a="TileLayer";break;case"ground":a="ElevationLayer"}else switch(e.layerContainerType){case"basemap-base-layers":case"operational-layers":a="TileLayer"}return a}return m(e)?.[a]??"UnknownLayer"}function w(e,a,r){if(!e?.origin)return!1;switch(e.origin){case"web-map":case"link-chart":if("operational-layers"===e.layerContainerType&&"ArcGISDimensionLayer"===a&&"dimension-feature"!==r)return!1;break;case"web-scene":if("operational-layers"===e.layerContainerType&&"ArcGISTiledElevationServiceLayer"===a)return!1}const t=function(e){if("portal-item"===e.origin)switch(e.layerContainerType){case"basemap-base-layers":case"ground":case"basemap-ground-layers":return;case"tables":return p;default:return f}return m(e)}(e)?.[a];return null!=t&&"UnknownLayer"!==t&&"UnsupportedLayer"!==t}},8947(e,a,r){r.d(a,{L:()=>y});var t=r(60999),n=r(17676),i=r(67076);async function y(e,a,r){const y=e&&e.getAtOrigin&&e.getAtOrigin("renderer",a.origin);if(y&&"unique-value"===y.type&&y.styleOrigin){const l=await(0,t.Ke)(y.populateFromStyle());if((0,n.Te)(r),!1===l.ok){const r=l.error;a?.messages&&a.messages.push(new i.A("renderer:style-reference",`Failed to create unique value renderer from style reference: ${r.message}`,{error:r,context:a})),e.clear("renderer",a?.origin)}}}},7861(e,a,r){r.d(a,{L:()=>n});var t=r(11254);async function n(e,a){return(await(0,t.A)(e,{responseType:"json",query:{f:"json",...a?.customParameters,token:a?.apiKey}})).data}}}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[5740],{46130(e,t,r){r.d(t,{v:()=>n});var a=r(76553);function n(e){e?.writtenProperties&&e.writtenProperties.forEach(({target:e,propName:t,newOrigin:r})=>{(0,a.H)(e)&&r&&e.originOf(t)!==r&&e.updateOrigin(t,r)})}},76553(e,t,r){function a(e){return e&&"getAtOrigin"in e&&"originOf"in e}r.d(t,{H:()=>a})},33359(e,t,r){r.d(t,{save:()=>C,saveAs:()=>k});var a=r(4576),n=(r(49186),r(71530)),o=r(60694),i=r(23154),s=(r(20655),r(80812),r(88788)),l=r(10407);const u="Feature Service",c="feature-layer-utils",y=`${c}-save`,p=`${c}-save-as`;function f(e){const t=e?.type;return("feature"===t||"subtype-group"===t||"oriented-imagery"===t)&&"feature-layer"===e?.source?.type}function d(e){return{isValid:f(e)&&(!("dynamicDataSource"in e)||!e.dynamicDataSource),errorMessage:"Feature layer should be a layer or table in a map or feature service"}}function m(e,t){const r=(0,s.m)(e,"portal-item");return t?.isTable&&(r.layerContainerType="tables"),r}function h(e){const t=[],r=[];for(const{layer:a,layerJSON:n}of e)w(a)?r.push(n):t.push(n);return{layers:t,tables:r}}function w(e,t){return e.isTable}function b(e){return h([e])}async function S(e,t){return/\/\d+\/?$/.test(e.url)?b(t[0]):async function(e,t){if(e.reverse(),!t)return h(e);const a=await async function(e,t){let a,n=await e.fetchData("json");if(!function(e){return!!(e&&Array.isArray(e.layers)&&Array.isArray(e.tables))}(n)||(0,l.Y)(e,l.mm.HOSTED_SERVICE))a=!0;else{if(function(e){return[...e.layers,...e.tables].every(e=>"layerType"in e&&!!e.layerType)}(n))return n;a=!1}n??={},function(e){e.layers??=[],e.tables??=[]}(n);const{layer:{url:o,customParameters:s,apiKey:u}}=t[0];return await async function(e,t,a,n){const{url:o,customParameters:s,apiKey:l}=t,{serviceJSON:u,layersJSON:c}=await(0,i.A6)(o,{customParameters:s,apiKey:l});if(!n)return void L(e,u);const y=I(e.layers,u.layers,a),p=I(e.tables,u.tables,a);e.layers=y.itemResources,e.tables=p.itemResources,L(e,u);const f=[...y.added,...p.added],d=c?[...c.layers,...c.tables]:[];await async function(e,t,a,n){const o=await async function(e){const t=new Set,a=[];for(const{type:n}of e){const e=(0,i.Jo)(n);if(e&&!t.has(n))switch(t.add(n),e){case"AnnotationFeatureLayer":a.push(r.e(737).then(r.bind(r,20737)).then(e=>e.default));break;case"CatalogLayer":a.push(Promise.all([r.e(1214),r.e(893),r.e(3636),r.e(4571)]).then(r.bind(r,83508)).then(e=>e.default));break;case"DimensionFeatureLayer":a.push(r.e(5077).then(r.bind(r,25077)).then(e=>e.default));break;case"FeatureLayer":a.push(Promise.all([r.e(9953),r.e(1214),r.e(1017),r.e(3781),r.e(6196)]).then(r.bind(r,53781)).then(e=>e.default));break;case"OrientedImageryLayer":a.push(Promise.all([r.e(9953),r.e(1214),r.e(1017),r.e(3781),r.e(6113)]).then(r.bind(r,16852)).then(e=>e.default))}}const n=await Promise.all(a),o=new Map;return Array.from(t).forEach((e,t)=>{o.set(e,n[t])}),o}(t),s=[];for(const{id:e,type:r}of t){const t=o.get(r);t&&s.push(new t({url:a,layerId:e,sourceJSON:n.find(({id:t})=>t===e)}))}await Promise.allSettled(s.map(e=>e.load()));for(const t of s){const{layerId:r,loaded:a}=t;if(!a||!("defaultPopupTemplate"in t)||!t.defaultPopupTemplate)continue;const n={id:r,popupInfo:t.defaultPopupTemplate.toJSON()};g(t,"ArcGISFeatureLayer"===t.operationalLayerType?n:{...n,layerType:t.operationalLayerType},e)}}(e,f,o,d)}(n,{url:o??"",customParameters:s,apiKey:u},t.map(e=>e.layer.layerId),a),n}(t,e);for(const t of e)g(t.layer,t.layerJSON,a);return function(e,t){const r=[],a=[];for(const{layer:e}of t){const{isTable:t,layerId:n}=e;t?a.push(n):r.push(n)}v(e.layers,r),v(e.tables,a)}(a,e),a}(t,e)}function v(e,t){if(e.length<2)return;const r=[];for(const{id:t}of e)r.push(t);(0,a.aI)(r.sort(T),t.slice().sort(T))&&e.sort((e,r)=>{const a=t.indexOf(e.id),n=t.indexOf(r.id);return a<n?-1:a>n?1:0})}function T(e,t){return e<t?-1:e>t?1:0}function I(e,t,r){const n=(0,a.iv)(e,t,(e,t)=>e.id===t.id);e=e.filter(e=>!n.removed.some(t=>t.id===e.id));const o=n.added;for(const{id:t}of o)e.push({id:t});return{itemResources:e,added:o.filter(({id:e})=>!r.includes(e))}}function g(e,t,r){e.isTable?A(r.tables,t):A(r.layers,t)}function A(e,t){const r=e.findIndex(({id:e})=>e===t.id);-1===r?e.push(t):e[r]=t}function L(e,t){const r=e.layers??[],a=e.tables??[],n=[...t.layers??[],...t.tables??[]];for(const e of[...r,...a]){const{id:t}=e;if("layerType"in e&&e.layerType)continue;const r=n.find(({id:e})=>e===t);if(!r)continue;const o=(0,i.Aq)(r.type,a.includes(e));o&&P(0,o)&&O(o)&&(e.layerType=o)}}function P(e,t){return"ArcGISFeatureLayer"!==t&&"Table"!==t}function O(e){return"ArcGISFeatureLayer"!==e&&"Table"!==e}function E(e){if(!("layerType"in e))return!!e.charts?.length;switch(e.layerType){case"CatalogLayer":return!!e.footprintLayer?.charts?.length;case"OrientedImageryLayer":return!!e.charts?.length;case"SubtypeGroupLayer":return!!e.layers.some(e=>!!e.charts?.length);case"SubtypeGroupTable":return!!e.tables.some(e=>!!e.charts?.length)}return!1}function N(e,t){let r=0,a=0,n=0,o=0,i=0,s=0,u=0;for(const e of[...t.layers,...t.tables])if(E(e)&&u++,"layerType"in e)switch(e.layerType){case"CatalogLayer":r++;break;case"OrientedImageryLayer":a++;break;case"ParcelLayer":i++;break;case"SubtypeGroupLayer":n++;break;case"SubtypeGroupTable":o++;break;case"UtilityNetworkLayer":s++}(0,l.Sm)(e,l.mm.CATALOG_LAYER,r>0),(0,l.Sm)(e,l.mm.ORIENTED_IMAGERY_LAYER,a>0),(0,l.Sm)(e,l.mm.PARCEL_FABRIC,i>0),(0,l.Sm)(e,l.mm.SUBTYPE_GROUP_LAYER,n>0),(0,l.Sm)(e,l.mm.SUBTYPE_GROUP_TABLE,o>0),(0,l.Sm)(e,l.mm.UTILITY_NETWORK,s>0),(0,l.Sm)(e,l.mm.CHARTS,u>0)}function R(e,t,r){N(t,r)}async function U(e,t,r){const{url:a,layerId:n,title:i,fullExtent:s,isTable:u}=e,c=(0,o.qg)(a);t.url=("FeatureServer"===c?.serverType?a:`${a}/${n}`)??null,t.title||=i,t.extent=null,u||null==s||(t.extent=await(0,l.sQ)(s)),function(e,t,r){(0,l.OM)(t,l.mm.METADATA),(0,l.Sm)(t,l.mm.MULTI_LAYER,e.length>1),(0,l.Sm)(t,l.mm.SINGLE_LAYER,1===e.length),(0,l.Sm)(t,l.mm.TABLE,r.tables.length>0&&0===r.layers.length),N(t,r)}([e],t,r)}async function C(e,t){return(0,n.UN)({layer:e,itemType:u,validateLayer:d,createJSONContext:t=>m(t,e),createItemData:(e,t)=>S(t,[e]),errorNamePrefix:y,setItemProperties:R},t)}async function k(e,t,r){return(0,n.Uh)({layer:e,itemType:u,validateLayer:d,createJSONContext:t=>m(t,e),createItemData:(e,t)=>Promise.resolve(b(e)),errorNamePrefix:p,newItem:t,setItemProperties:U},r)}},71530(e,t,r){r.d(t,{UN:()=>b,Uh:()=>S});var a=r(49186),n=r(46130),o=r(20655),i=r(80812),s=r(88788),l=r(10407),u=r(26121);async function c(e){const{layer:t,errorNamePrefix:r,validateLayer:n}=e;await t.load(),function(e,t,r){const n=r(e);if(!n.isValid)throw new a.A(`${t}:invalid-parameters`,n.errorMessage,{layer:e})}(t,r,n)}function y(e,t){return`Layer (title: ${e.title}, id: ${e.id}) of type '${e.declaredClass}' ${t}`}function p(e){const{item:t,errorNamePrefix:r,layer:n,validateItem:o}=e;if(function(e){const{item:t,itemType:r,additionalItemType:n,errorNamePrefix:o,layer:i}=e,s=[r];if(n&&s.push(n),!s.includes(t.type)){const e=s.map(e=>`'${e}'`).join(", ");throw new a.A(`${o}:portal-item-wrong-type`,`Portal item type should be one of: "${e}"`,{item:t,layer:i})}}(e),o){const e=o(t);if(!e.isValid)throw new a.A(`${r}:invalid-parameters`,e.errorMessage,{layer:n})}}function f(e){const{layer:t,errorNamePrefix:r}=e,{portalItem:n}=t;if(!n)throw new a.A(`${r}:portal-item-not-set`,y(t,"requires the portalItem property to be set"));if(!n.loaded)throw new a.A(`${r}:portal-item-not-loaded`,y(t,"cannot be saved to a portal item that does not exist or is inaccessible"));p({...e,item:n})}function d(e){const{newItem:t,itemType:r}=e;let a=i.default.from(t);return a.id&&(a=a.clone(),a.id=null),a.type??=r,a.portal??=o.A.getDefault(),p({...e,item:a}),a}function m(e){return(0,s.m)(e,"portal-item")}async function h(e,t,r){"beforeSave"in e&&"function"==typeof e.beforeSave&&await e.beforeSave();const a=e.write({},t);return await Promise.all(t.resources?.pendingOperations??[]),(0,u.ci)(t,{errorName:"layer-write:unsupported"},r),a}function w(e){(0,l.LG)(e,l.mm.JSAPI),e.typeKeywords&&(e.typeKeywords=e.typeKeywords.filter((e,t,r)=>r.indexOf(e)===t))}async function b(e,t){const{layer:r,createItemData:a,createJSONContext:o,setItemProperties:i,saveResources:s,supplementalUnsupportedErrors:l}=e;await c(e),f(e);const u=r.portalItem,y=o?o(u):m(u),p=await h(r,y,{...t,supplementalUnsupportedErrors:l}),d=await a({layer:r,layerJSON:p},u);return await(i?.(r,u,d)),w(u),await u.update({data:d}),(0,n.v)(y),await(s?.(u,y)),u}async function S(e,t){const{layer:r,createItemData:a,createJSONContext:o,setItemProperties:i,saveResources:s,supplementalUnsupportedErrors:l}=e;await c(e);const u=d(e),y=o?o(u):m(u),p=await h(r,y,{...t,supplementalUnsupportedErrors:l}),f=await a({layer:r,layerJSON:p},u);return await i(r,u,f),w(u),await async function(e,t,r){const a=e.portal;await a.signIn(),await a.user.addItem({item:e,data:t,folder:r?.folder})}(u,f,t),r.portalItem=u,(0,n.v)(y),await(s?.(u,y)),u}},88788(e,t,r){r.d(t,{m:()=>i,v:()=>o});var a=r(84952),n=r(20655);function o(e,t){return{...s(e,t),readResourcePaths:[]}}function i(e,t,r){const n=(0,a.An)(e.itemUrl);return{...s(e,t),messages:[],writtenProperties:[],blockedRelativeUrls:[],verifyItemRelativeUrls:n?{rootPath:n.path,writtenUrls:[]}:null,resources:r?{toAdd:[],toUpdate:[],toKeep:[],pendingOperations:[]}:null}}function s(e,t){return{origin:t,url:(0,a.An)(e.itemUrl),portal:e.portal||n.A.getDefault(),portalItem:e}}},26121(e,t,r){r.d(t,{I6:()=>l,ci:()=>s,dL:()=>i});var a=r(49186),n=r(77548),o=r(59923);async function i(e){const t=[];for(const r of e.allLayers)if("beforeSave"in r&&"function"==typeof r.beforeSave){const e=r.beforeSave();e&&t.push(e)}await Promise.allSettled(t)}function s(e,t,r){let n=(e.messages??[]).filter(({type:e})=>"error"===e).map(({name:e,message:t,details:r})=>new a.A(e,t,r));if(e.blockedRelativeUrls&&(n=n.concat(e.blockedRelativeUrls.map(e=>(0,o.GL)("url",`Relative url '${e}' is not supported`)))),r){const{ignoreUnsupported:e,supplementalUnsupportedErrors:t=[],requiredPropertyChecksDisabled:a}=r;e&&(n=n.filter(({name:e})=>!(o.MG.has(e)||t.includes(e)))),a&&(n=n.filter(e=>"web-document-write:property-required"!==e.name))}if(n.length>0)throw new a.A(t.errorName,"Failed to save due to unsupported or invalid content. See 'details.errors' for more detailed information",{errors:n})}function l(e){return(0,n.qd)(e).some(e=>!!e.charts?.length)}}}]);
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[5740],{46130(e,t,r){r.d(t,{v:()=>n});var a=r(76553);function n(e){e?.writtenProperties&&e.writtenProperties.forEach(({target:e,propName:t,newOrigin:r})=>{(0,a.H)(e)&&r&&e.originOf(t)!==r&&e.updateOrigin(t,r)})}},76553(e,t,r){function a(e){return e&&"getAtOrigin"in e&&"originOf"in e}r.d(t,{H:()=>a})},33359(e,t,r){r.d(t,{save:()=>C,saveAs:()=>x});var a=r(4576),n=(r(49186),r(71530)),o=r(60694),i=r(23154),s=(r(20655),r(80812),r(88788)),l=r(10407);const u="Feature Service",c="feature-layer-utils",y=`${c}-save`,f=`${c}-save-as`;function p(e){const t=e?.type;return("feature"===t||"subtype-group"===t||"oriented-imagery"===t)&&"feature-layer"===e?.source?.type}function d(e){return{isValid:p(e)&&(!("dynamicDataSource"in e)||!e.dynamicDataSource),errorMessage:"Feature layer should be a layer or table in a map or feature service"}}function m(e,t){const r=(0,s.m)(e,"portal-item");return t?.isTable&&(r.layerContainerType="tables"),r}function h(e){const t=[],r=[];for(const{layer:a,layerJSON:n}of e)w(a)?r.push(n):t.push(n);return{layers:t,tables:r}}function w(e,t){return e.isTable}function b(e){return h([e])}async function S(e,t){return/\/\d+\/?$/.test(e.url)?b(t[0]):async function(e,t){if(e.reverse(),!t)return h(e);const a=await async function(e,t){let a,n=await e.fetchData("json");if(!function(e){return!!(e&&Array.isArray(e.layers)&&Array.isArray(e.tables))}(n)||(0,l.Y)(e,l.mm.HOSTED_SERVICE))a=!0;else{if(function(e){return[...e.layers,...e.tables].every(e=>"layerType"in e&&!!e.layerType)}(n))return n;a=!1}n??={},function(e){e.layers??=[],e.tables??=[]}(n);const{layer:{url:o,customParameters:s,apiKey:u}}=t[0];return await async function(e,t,a,n){const{url:o,customParameters:s,apiKey:l}=t,{serviceJSON:u,layersJSON:c}=await(0,i.A6)(o,{customParameters:s,apiKey:l});if(!n)return void L(e,u);const y=T(e.layers,u.layers,a),f=T(e.tables,u.tables,a);e.layers=y.itemResources,e.tables=f.itemResources,L(e,u);const p=[...y.added,...f.added],d=c?[...c.layers,...c.tables]:[];await async function(e,t,a,n){const o=await async function(e){const t=new Set,a=[];for(const{type:n}of e){const e=(0,i.Jo)(n);if(e&&!t.has(n))switch(t.add(n),e){case"AnnotationFeatureLayer":a.push(r.e(737).then(r.bind(r,20737)).then(e=>e.default));break;case"CatalogLayer":a.push(Promise.all([r.e(1214),r.e(893),r.e(3636),r.e(4571)]).then(r.bind(r,83508)).then(e=>e.default));break;case"DimensionFeatureLayer":a.push(r.e(5077).then(r.bind(r,25077)).then(e=>e.default));break;case"FeatureLayer":a.push(Promise.all([r.e(9953),r.e(1214),r.e(1017),r.e(3781),r.e(6196)]).then(r.bind(r,53781)).then(e=>e.default));break;case"OrientedImageryLayer":a.push(Promise.all([r.e(9953),r.e(1214),r.e(1017),r.e(3781),r.e(6113)]).then(r.bind(r,16852)).then(e=>e.default))}}const n=await Promise.all(a),o=new Map;return Array.from(t).forEach((e,t)=>{o.set(e,n[t])}),o}(t),s=[];for(const{id:e,type:r}of t){const t=o.get(r);t&&s.push(new t({url:a,layerId:e,sourceJSON:n.find(({id:t})=>t===e)}))}await Promise.allSettled(s.map(e=>e.load()));for(const t of s){const{layerId:r,loaded:a}=t;if(!a||!("defaultPopupTemplate"in t)||!t.defaultPopupTemplate)continue;const n={id:r,popupInfo:t.defaultPopupTemplate.toJSON()};g(t,"ArcGISFeatureLayer"===t.operationalLayerType?n:{...n,layerType:t.operationalLayerType},e)}}(e,p,o,d)}(n,{url:o??"",customParameters:s,apiKey:u},t.map(e=>e.layer.layerId),a),n}(t,e);for(const t of e)g(t.layer,t.layerJSON,a);return function(e,t){const r=[],a=[];for(const{layer:e}of t){const{isTable:t,layerId:n}=e;t?a.push(n):r.push(n)}v(e.layers,r),v(e.tables,a)}(a,e),a}(t,e)}function v(e,t){if(e.length<2)return;const r=[];for(const{id:t}of e)r.push(t);(0,a.aI)(r.sort(I),t.slice().sort(I))&&e.sort((e,r)=>{const a=t.indexOf(e.id),n=t.indexOf(r.id);return a<n?-1:a>n?1:0})}function I(e,t){return e<t?-1:e>t?1:0}function T(e,t,r){const n=(0,a.iv)(e,t,(e,t)=>e.id===t.id);e=e.filter(e=>!n.removed.some(t=>t.id===e.id));const o=n.added;for(const{id:t}of o)e.push({id:t});return{itemResources:e,added:o.filter(({id:e})=>!r.includes(e))}}function g(e,t,r){e.isTable?A(r.tables,t):A(r.layers,t)}function A(e,t){const r=e.findIndex(({id:e})=>e===t.id);-1===r?e.push(t):e[r]=t}function L(e,t){const r=e.layers??[],a=e.tables??[],n=[...t.layers??[],...t.tables??[]];for(const e of[...r,...a]){const{id:t}=e;if("layerType"in e&&e.layerType)continue;const r=n.find(({id:e})=>e===t);if(!r)continue;const o=(0,i.Aq)(r.type,a.includes(e));o&&P(0,o)&&O(o)&&(e.layerType=o)}}function P(e,t){return"ArcGISFeatureLayer"!==t&&"Table"!==t}function O(e){return"ArcGISFeatureLayer"!==e&&"Table"!==e}function N(e){if(!("layerType"in e))return!!e.charts?.length;switch(e.layerType){case"CatalogLayer":return!!e.footprintLayer?.charts?.length;case"OrientedImageryLayer":return!!e.charts?.length;case"SubtypeGroupLayer":return!!e.layers.some(e=>!!e.charts?.length);case"SubtypeGroupTable":return!!e.tables.some(e=>!!e.charts?.length)}return!1}function R(e,t){let r=0,a=0,n=0,o=0,i=0,s=0,u=0;for(const e of[...t.layers,...t.tables])if(N(e)&&u++,"layerType"in e)switch(e.layerType){case"CatalogLayer":r++;break;case"OrientedImageryLayer":a++;break;case"ParcelLayer":i++;break;case"SubtypeGroupLayer":n++;break;case"SubtypeGroupTable":o++;break;case"UtilityNetworkLayer":s++}(0,l.Sm)(e,l.mm.CATALOG_LAYER,r>0),(0,l.Sm)(e,l.mm.ORIENTED_IMAGERY_LAYER,a>0),(0,l.Sm)(e,l.mm.PARCEL_FABRIC,i>0),(0,l.Sm)(e,l.mm.SUBTYPE_GROUP_LAYER,n>0),(0,l.Sm)(e,l.mm.SUBTYPE_GROUP_TABLE,o>0),(0,l.Sm)(e,l.mm.UTILITY_NETWORK,s>0),(0,l.Sm)(e,l.mm.CHARTS,u>0)}function E(e,t,r){R(t,r)}async function U(e,t,r){const{url:a,layerId:n,title:i,fullExtent:s,isTable:u}=e,c=(0,o.qg)(a);t.url=("FeatureServer"===c?.serverType?a:`${a}/${n}`)??null,t.title||=i,t.extent=null,u||null==s||(t.extent=await(0,l.sQ)(s)),function(e,t,r){(0,l.OM)(t,l.mm.METADATA),(0,l.Sm)(t,l.mm.MULTI_LAYER,e.length>1),(0,l.Sm)(t,l.mm.SINGLE_LAYER,1===e.length),(0,l.Sm)(t,l.mm.TABLE,r.tables.length>0&&0===r.layers.length),R(t,r)}([e],t,r)}async function C(e,t){return(0,n.UN)({layer:e,itemType:u,validateLayer:d,createJSONContext:t=>m(t,e),createItemData:(e,t)=>S(t,[e]),errorNamePrefix:y,setItemProperties:E},t)}async function x(e,t,r){return(0,n.Uh)({layer:e,itemType:u,validateLayer:d,createJSONContext:t=>m(t,e),createItemData:(e,t)=>Promise.resolve(b(e)),errorNamePrefix:f,newItem:t,setItemProperties:U},r)}},71530(e,t,r){r.d(t,{UN:()=>b,Uh:()=>S});var a=r(49186),n=r(46130),o=r(20655),i=r(80812),s=r(88788),l=r(10407),u=r(26121);async function c(e){const{layer:t,errorNamePrefix:r,validateLayer:n}=e;await t.load(),function(e,t,r){const n=r(e);if(!n.isValid)throw new a.A(`${t}:invalid-parameters`,n.errorMessage,{layer:e})}(t,r,n)}function y(e,t){return`Layer (title: ${e.title}, id: ${e.id}) of type '${e.declaredClass}' ${t}`}function f(e){const{item:t,errorNamePrefix:r,layer:n,validateItem:o}=e;if(function(e){const{item:t,itemType:r,additionalItemType:n,errorNamePrefix:o,layer:i}=e,s=[r];if(n&&s.push(n),!s.includes(t.type)){const e=s.map(e=>`'${e}'`).join(", ");throw new a.A(`${o}:portal-item-wrong-type`,`Portal item type should be one of: "${e}"`,{item:t,layer:i})}}(e),o){const e=o(t);if(!e.isValid)throw new a.A(`${r}:invalid-parameters`,e.errorMessage,{layer:n})}}function p(e){const{layer:t,errorNamePrefix:r}=e,{portalItem:n}=t;if(!n)throw new a.A(`${r}:portal-item-not-set`,y(t,"requires the portalItem property to be set"));if(!n.loaded)throw new a.A(`${r}:portal-item-not-loaded`,y(t,"cannot be saved to a portal item that does not exist or is inaccessible"));f({...e,item:n})}function d(e){const{newItem:t,itemType:r}=e;let a=i.default.from(t);return a.id&&(a=a.clone(),a.id=null),a.type??=r,a.portal??=o.A.getDefault(),f({...e,item:a}),a}function m(e){return(0,s.m)(e,"portal-item")}async function h(e,t,r){"beforeSave"in e&&"function"==typeof e.beforeSave&&await e.beforeSave();const a=e.write({},t);return await Promise.all(t.resources?.pendingOperations??[]),(0,u.ci)(t,{errorName:"layer-write:unsupported"},r),a}function w(e){(0,l.LG)(e,l.mm.JSAPI),e.typeKeywords&&(e.typeKeywords=e.typeKeywords.filter((e,t,r)=>r.indexOf(e)===t))}async function b(e,t){const{layer:r,createItemData:a,createJSONContext:o,setItemProperties:i,saveResources:s,supplementalUnsupportedErrors:l}=e;await c(e),p(e);const u=r.portalItem,y=o?o(u):m(u),f=await h(r,y,{...t,supplementalUnsupportedErrors:l}),d=await a({layer:r,layerJSON:f},u);return await(i?.(r,u,d)),w(u),await u.update({data:d}),(0,n.v)(y),await(s?.(u,y)),u}async function S(e,t){const{layer:r,createItemData:a,createJSONContext:o,setItemProperties:i,saveResources:s,supplementalUnsupportedErrors:l}=e;await c(e);const u=d(e),y=o?o(u):m(u),f=await h(r,y,{...t,supplementalUnsupportedErrors:l}),p=await a({layer:r,layerJSON:f},u);return await i(r,u,p),w(u),await async function(e,t,r){const a=e.portal;await a.signIn(),await a.user.addItem({item:e,data:t,folder:r?.folder})}(u,p,t),r.portalItem=u,(0,n.v)(y),await(s?.(u,y)),u}},88788(e,t,r){r.d(t,{m:()=>i,v:()=>o});var a=r(84952),n=r(20655);function o(e,t){return{...s(e,t),readResourcePaths:[]}}function i(e,t,r){const n=(0,a.An)(r?.forceNewItemContext?null:e.itemUrl);return{...s(e,t,r),messages:[],writtenProperties:[],blockedRelativeUrls:[],verifyItemRelativeUrls:n?{rootPath:n.path,writtenUrls:[]}:null,resources:r?.withResources?{toAdd:[],toUpdate:[],toKeep:[],pendingOperations:[]}:null}}function s(e,t,r){return{origin:t,url:(0,a.An)(r?.forceNewItemContext?null:e.itemUrl),portal:e.portal||n.A.getDefault(),portalItem:e}}},26121(e,t,r){r.d(t,{I6:()=>l,ci:()=>s,dL:()=>i});var a=r(49186),n=r(77548),o=r(59923);async function i(e){const t=[];for(const r of e.allLayers)if("beforeSave"in r&&"function"==typeof r.beforeSave){const e=r.beforeSave();e&&t.push(e)}await Promise.allSettled(t)}function s(e,t,r){let n=(e.messages??[]).filter(({type:e})=>"error"===e).map(({name:e,message:t,details:r})=>new a.A(e,t,r));if(e.blockedRelativeUrls&&(n=n.concat(e.blockedRelativeUrls.map(e=>(0,o.GL)("url",`Relative url '${e}' is not supported`)))),r){const{ignoreUnsupported:e,supplementalUnsupportedErrors:t=[],requiredPropertyChecksDisabled:a}=r;e&&(n=n.filter(({name:e})=>!(o.MG.has(e)||t.includes(e)))),a&&(n=n.filter(e=>"web-document-write:property-required"!==e.name))}if(n.length>0)throw new a.A(t.errorName,"Failed to save due to unsupported or invalid content. See 'details.errors' for more detailed information",{errors:n})}function l(e){return(0,n.qd)(e).some(e=>!!e.charts?.length)}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[3561,5804],{46130(e,t,r){r.d(t,{v:()=>o});var a=r(76553);function o(e){e?.writtenProperties&&e.writtenProperties.forEach(({target:e,propName:t,newOrigin:r})=>{(0,a.H)(e)&&r&&e.originOf(t)!==r&&e.updateOrigin(t,r)})}},76553(e,t,r){function a(e){return e&&"getAtOrigin"in e&&"originOf"in e}r.d(t,{H:()=>a})},63561(e,t,r){r.d(t,{save:()=>m,saveAs:()=>h});var a=r(71530),o=r(88788),s=r(10407),n=r(91682);const i="Media Layer",c=["media-layer:unsupported-source"];function l(e){return{isValid:"media"===e.type,errorMessage:"Layer.type should be 'media'"}}function u(e){return(0,o.m)(e,"portal-item",{withResources:!0})}function p(e){return Promise.resolve(e.layerJSON)}async function d(e,t){t.extent=e.fullExtent?await(0,s.sQ)(e.fullExtent):null}async function f(e,t){t.title||=e.title,await d(e,t),(0,s.OM)(t,s.mm.METADATA)}async function m(e,t){return(0,a.UN)({layer:e,itemType:i,validateLayer:l,createJSONContext:e=>u(e),createItemData:p,errorNamePrefix:"media-layer-save",supplementalUnsupportedErrors:c,setItemProperties:d,saveResources:(t,r)=>(0,n.r)(e.resourceReferences,r)},t)}async function h(e,t,r){return(0,a.Uh)({layer:e,itemType:i,validateLayer:l,createJSONContext:e=>u(e),createItemData:p,errorNamePrefix:"media-layer-save-as",supplementalUnsupportedErrors:c,newItem:t,setItemProperties:f,saveResources:(t,r)=>(0,n.r)(e.resourceReferences,r)},r)}},71530(e,t,r){r.d(t,{UN:()=>v,Uh:()=>g});var a=r(49186),o=r(46130),s=r(20655),n=r(80812),i=r(88788),c=r(10407),l=r(26121);async function u(e){const{layer:t,errorNamePrefix:r,validateLayer:o}=e;await t.load(),function(e,t,r){const o=r(e);if(!o.isValid)throw new a.A(`${t}:invalid-parameters`,o.errorMessage,{layer:e})}(t,r,o)}function p(e,t){return`Layer (title: ${e.title}, id: ${e.id}) of type '${e.declaredClass}' ${t}`}function d(e){const{item:t,errorNamePrefix:r,layer:o,validateItem:s}=e;if(function(e){const{item:t,itemType:r,additionalItemType:o,errorNamePrefix:s,layer:n}=e,i=[r];if(o&&i.push(o),!i.includes(t.type)){const e=i.map(e=>`'${e}'`).join(", ");throw new a.A(`${s}:portal-item-wrong-type`,`Portal item type should be one of: "${e}"`,{item:t,layer:n})}}(e),s){const e=s(t);if(!e.isValid)throw new a.A(`${r}:invalid-parameters`,e.errorMessage,{layer:o})}}function f(e){const{layer:t,errorNamePrefix:r}=e,{portalItem:o}=t;if(!o)throw new a.A(`${r}:portal-item-not-set`,p(t,"requires the portalItem property to be set"));if(!o.loaded)throw new a.A(`${r}:portal-item-not-loaded`,p(t,"cannot be saved to a portal item that does not exist or is inaccessible"));d({...e,item:o})}function m(e){const{newItem:t,itemType:r}=e;let a=n.default.from(t);return a.id&&(a=a.clone(),a.id=null),a.type??=r,a.portal??=s.A.getDefault(),d({...e,item:a}),a}function h(e){return(0,i.m)(e,"portal-item")}async function w(e,t,r){"beforeSave"in e&&"function"==typeof e.beforeSave&&await e.beforeSave();const a=e.write({},t);return await Promise.all(t.resources?.pendingOperations??[]),(0,l.ci)(t,{errorName:"layer-write:unsupported"},r),a}function y(e){(0,c.LG)(e,c.mm.JSAPI),e.typeKeywords&&(e.typeKeywords=e.typeKeywords.filter((e,t,r)=>r.indexOf(e)===t))}async function v(e,t){const{layer:r,createItemData:a,createJSONContext:s,setItemProperties:n,saveResources:i,supplementalUnsupportedErrors:c}=e;await u(e),f(e);const l=r.portalItem,p=s?s(l):h(l),d=await w(r,p,{...t,supplementalUnsupportedErrors:c}),m=await a({layer:r,layerJSON:d},l);return await(n?.(r,l,m)),y(l),await l.update({data:m}),(0,o.v)(p),await(i?.(l,p)),l}async function g(e,t){const{layer:r,createItemData:a,createJSONContext:s,setItemProperties:n,saveResources:i,supplementalUnsupportedErrors:c}=e;await u(e);const l=m(e),p=s?s(l):h(l),d=await w(r,p,{...t,supplementalUnsupportedErrors:c}),f=await a({layer:r,layerJSON:d},l);return await n(r,l,f),y(l),await async function(e,t,r){const a=e.portal;await a.signIn(),await a.user.addItem({item:e,data:t,folder:r?.folder})}(l,f,t),r.portalItem=l,(0,o.v)(p),await(i?.(l,p)),l}},88788(e,t,r){r.d(t,{m:()=>n,v:()=>s});var a=r(84952),o=r(20655);function s(e,t){return{...i(e,t),readResourcePaths:[]}}function n(e,t,r){const o=(0,a.An)(r?.forceNewItemContext?null:e.itemUrl);return{...i(e,t,r),messages:[],writtenProperties:[],blockedRelativeUrls:[],verifyItemRelativeUrls:o?{rootPath:o.path,writtenUrls:[]}:null,resources:r?.withResources?{toAdd:[],toUpdate:[],toKeep:[],pendingOperations:[]}:null}}function i(e,t,r){return{origin:t,url:(0,a.An)(r?.forceNewItemContext?null:e.itemUrl),portal:e.portal||o.A.getDefault(),portalItem:e}}},15804(e,t,r){r.d(t,{addOrUpdateResources:()=>i,bg:()=>d,cL:()=>p,fetchResources:()=>n,removeAllResources:()=>l,removeResource:()=>c});var a=r(11254),o=r(49186),s=r(84952);async function n(e,t={},r){await e.load(r);const a=(0,s.fj)(e.itemUrl,"resources"),{start:o=1,num:n=10,sortOrder:i="asc",sortField:c="resource"}=t,l={query:{start:o,num:n,sortOrder:i,sortField:c,token:e.apiKey},signal:r?.signal},u=await e.portal.request(a,l);return{total:u.total,nextStart:u.nextStart,resources:u.resources.map(({created:t,size:r,resource:a})=>({created:new Date(t),size:r,resource:e.resourceFromPath(a)}))}}async function i(e,t,r,a){const n=new Map;for(const{resource:e,content:a,compress:s,access:i}of t){if(!e.hasPath())throw new o.A(`portal-item-resource-${r}:invalid-path`,"Resource does not have a valid path");const[t,c]=u(e.path),l=`${t}/${s??""}/${i??""}`;n.has(l)||n.set(l,{prefix:t,compress:s,access:i,files:[]}),n.get(l).files.push({fileName:c,content:a})}await e.load(a);const i=(0,s.fj)(e.userItemUrl,"add"===r?"addResources":"updateResources");for(const{prefix:t,compress:r,access:s,files:c}of n.values()){const n=25;for(let l=0;l<c.length;l+=n){const u=c.slice(l,l+n),p=new FormData;t&&"."!==t&&p.append("resourcesPrefix",t),r&&p.append("compress","true"),s&&p.append("access",s);let d=0;for(const{fileName:e,content:t}of u)p.append("file"+ ++d,t,e);p.append("f","json");try{await e.portal.request(i,{method:"post",body:p,signal:a?.signal})}catch(e){if(a?.ignoreResourceCopyErrors&&e instanceof o.A&&"CONT_00942"===e.details?.messageCode)continue;throw e}}}}async function c(e,t,r){if(!t.hasPath())throw new o.A("portal-item-resources-remove:invalid-path","Resource does not have a valid path");await e.load(r);const a=(0,s.fj)(e.userItemUrl,"removeResources");await e.portal.request(a,{method:"post",query:{resource:t.path},signal:r?.signal}),t.portalItem=null}async function l(e,t){await e.load(t);const r=(0,s.fj)(e.userItemUrl,"removeResources");return e.portal.request(r,{method:"post",query:{deleteAll:!0},signal:t?.signal})}function u(e){const t=e.lastIndexOf("/");return-1===t?[".",e]:[e.slice(0,t),e.slice(t+1)]}async function p(e){return"blob"===e.type?e.blob:"json"===e.type?new Blob([e.jsonString],{type:"application/json"}):(await(0,a.A)(e.url,{responseType:"blob"})).data}function d(e,t){if(!e.hasPath())return null;const[r,,a]=function(e){const[t,r]=function(e){const t=(0,s.Zo)(e);return null==t?[e,""]:[e.slice(0,e.length-t.length-1),`.${t}`]}(e),[a,o]=u(t);return[a,o,r]}(e.path);return e.portalItem.resourceFromPath((0,s.fj)(r,t+a))}},91682(e,t,r){r.d(t,{S:()=>c,r:()=>i});var a=r(49186),o=r(17676),s=r(13069),n=r(15804);async function i(e,t,r){const a=await l(e,t,r);await u(a,t,r)}async function c(e,t,r,a,o){const s=await l(r,a,o);await e.update({data:t}),await u(s,a,o)}async function l(e,t,i){if(!t?.resources)return;const c=function(e,t){const{portalItem:r,portalItemResourcePath:a}=e,{portalItem:o,portalItemResourcePath:s}=t;return r===o&&(!(a||s)||a===s)}(e,t)?new Set(e.paths):new Set;e.paths.length=0,e.portalItem=t.portalItem,e.portalItemResourcePath=t.portalItemResourcePath;const l=new Set(t.resources.toKeep.map(e=>e.resource.path)),u=new Set,p=[];l.forEach(t=>{c.delete(t),e.paths.push(t)});const d=[],f=[],m=[];for(const r of t.resources.toUpdate)if(c.delete(r.resource.path),l.has(r.resource.path)||u.has(r.resource.path)){const{resource:t,content:a,finish:o}=r,i=(0,n.bg)(t,(0,s.lk)());e.paths.push(i.path),d.push({resource:i,content:await(0,n.cL)(a),compress:r.compress}),o&&m.push(()=>o(i))}else{e.paths.push(r.resource.path),f.push({resource:r.resource,content:await(0,n.cL)(r.content),compress:r.compress});const t=r.finish;t&&m.push(()=>t(r.resource)),u.add(r.resource.path)}for(const r of t.resources.toAdd)if(e.paths.push(r.resource.path),c.has(r.resource.path))c.delete(r.resource.path);else{d.push({resource:r.resource,content:await(0,n.cL)(r.content),compress:r.compress});const e=r.finish;e&&m.push(()=>e(r.resource))}if(d.length||f.length){const{addOrUpdateResources:e}=await Promise.resolve().then(r.bind(r,15804));await e(t.portalItem,d,"add",i),await e(t.portalItem,f,"update",i)}if(m.forEach(e=>e()),0===p.length)return c;const h=await(0,o.Ol)(p);if((0,o.Te)(i),h.length>0)throw new a.A("save:resources","Failed to save one or more resources",{errors:h});return c}async function u(e,t,r){if(!e||!t.portalItem)return;const a=[];for(const o of e){const e=t.portalItem.resourceFromPath(o);a.push(e.portalItem.removeResource(e,r))}await(0,o.Lx)(a)}},26121(e,t,r){r.d(t,{I6:()=>c,ci:()=>i,dL:()=>n});var a=r(49186),o=r(77548),s=r(59923);async function n(e){const t=[];for(const r of e.allLayers)if("beforeSave"in r&&"function"==typeof r.beforeSave){const e=r.beforeSave();e&&t.push(e)}await Promise.allSettled(t)}function i(e,t,r){let o=(e.messages??[]).filter(({type:e})=>"error"===e).map(({name:e,message:t,details:r})=>new a.A(e,t,r));if(e.blockedRelativeUrls&&(o=o.concat(e.blockedRelativeUrls.map(e=>(0,s.GL)("url",`Relative url '${e}' is not supported`)))),r){const{ignoreUnsupported:e,supplementalUnsupportedErrors:t=[],requiredPropertyChecksDisabled:a}=r;e&&(o=o.filter(({name:e})=>!(s.MG.has(e)||t.includes(e)))),a&&(o=o.filter(e=>"web-document-write:property-required"!==e.name))}if(o.length>0)throw new a.A(t.errorName,"Failed to save due to unsupported or invalid content. See 'details.errors' for more detailed information",{errors:o})}function c(e){return(0,o.qd)(e).some(e=>!!e.charts?.length)}}}]);
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
+
import{translate as e}from"../core/libs/gl-matrix-2/math/mat4.js";import{create as r}from"../core/libs/gl-matrix-2/factories/mat4f64.js";import{ZEROS as o}from"../core/libs/gl-matrix-2/factories/vec3f64.js";import{glsl as i}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{Matrix4BindUniform as t}from"../views/3d/webgl-engine/core/shaderModules/Matrix4BindUniform.js";import{Matrix4DrawUniform as s}from"../views/3d/webgl-engine/core/shaderModules/Matrix4DrawUniform.js";import{NoParameters as a}from"../views/webgl/NoParameters.js";import{ShaderBuilder as n}from"../views/webgl/ShaderBuilder.js";class m extends a{constructor(){super(...arguments),this.origin=o}}function l(){const r=new n;return r.attributes.add("position","vec3"),r.outputs.add("fragColor","vec4",0),r.vertex.uniforms.add(new t("proj",e=>e.camera.projectionMatrix),new s("view",(r,o)=>e(d,o.camera.viewMatrix,r.origin))).main.add(i`gl_Position = proj * view * vec4(position, 1.0);
|
|
3
|
+
gl_Position.z = min(gl_Position.z, gl_Position.w);`),r.fragment.main.add(i`fragColor = vec4(1);`),r}const d=r(),c=Object.freeze(Object.defineProperty({__proto__:null,VolumeMaskDrawParameters:m,build:l},Symbol.toStringTag,{value:"Module"}));export{m as V,c as a,l as b};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{id as
|
|
2
|
+
import{id as t}from"../kernel.js";import{makeAbsolute as e,makeRelative as r,isAbsolute as s,normalize as o,isDataProtocol as n,hasSameOrigin as l,changeDomain as c,getAppUrl as a,splitPathExtension as i}from"../core/urlUtils.js";import{normalizeArcGISOnlineOrgDomain as u}from"../portal/support/urlUtils.js";function p(t,s){const o=s?.url?.path;if(t&&o&&(t=e(t,o,{preserveProtocolRelative:!0}),s.portalItem&&s.readResourcePaths)){const e=r(t,s.portalItem.itemUrl);null!=e&&e.startsWith(U)&&s.readResourcePaths.push(s.portalItem.resourceFromPath(e).path)}return(t=w(t,s?.portal))&&d.test(t)?y(t):t}function m(t,l,c=0){if(null==(t=t&&d.test(t)?P(t):t))return t;!s(t)&&l?.blockedRelativeUrls&&l.blockedRelativeUrls.push(t);let a=e(t);if(l){const e=l.verifyItemRelativeUrls?.rootPath||l.url?.path;if(e){const s=w(e,l.portal),o=w(a,l.portal);a=r(o,s,s);null!=a&&a!==o&&a!==t&&l.verifyItemRelativeUrls&&l.verifyItemRelativeUrls.writtenUrls.push(a)}}return a=I(a,l?.portal),s(a)&&(a=o(a)),l?.resources&&l?.portalItem&&!s(a)&&!n(a)&&0===c&&l.resources.toKeep.push({resource:l.portalItem.resourceFromPath(a),compress:!1}),a}function f(t,e,r){return p(t,r)}function h(t,e,r,s){const o=m(t,s);void 0!==o&&(e[r]=o)}const d=/\/items\/([^/]+)\/resources\/(.*)/,U="./resources/";function v(t){const e=t?.match(d)??null;return e?.[1]??null}const g=/http.+\/items\/[^/]+/i;function x(t){const e=t&&d.test(t)?t.match(g):null;return e?.[0]??null}function R(t){const e=t?.match(d)??null;if(null==e)return null;const r=e[2],s=r.lastIndexOf("/");if(-1===s){const{path:t,extension:e}=i(r);return{prefix:null,filename:t,extension:e}}const{path:o,extension:n}=i(r.slice(s+1));return{prefix:r.slice(0,s),filename:o,extension:n}}function I(t,e){return e&&!e.isPortal&&e.urlKey&&e.customBaseUrl?c(t,`${e.urlKey}.${e.customBaseUrl}`,e.portalHostname):t}function w(t,e){if(!e||e.isPortal||!e.urlKey||!e.customBaseUrl)return t;const r=`${e.urlKey}.${e.customBaseUrl}`,s=a();return l(s,`${s.scheme}://${r}`)?c(t,e.portalHostname,r):c(t,r,e.portalHostname)}function y(e){if(!e)return e||null;let r=e;return r&&t&&!t.findCredential(r)&&(r=u(r),r=r.replace(/^https?:\/\/www\.arcgis\.com/,"https://cdn.arcgis.com"),r=r.replace(/^https?:\/\/devext\.arcgis\.com/,"https://cdndev.arcgis.com"),r=r.replace(/^https?:\/\/qaext\.arcgis\.com/,"https://cdnqa.arcgis.com")),r}function P(e){if(!e)return e||null;let r=e;return r=r.replace(/^https?:\/\/cdn\.arcgis\.com/,"https://www.arcgis.com"),r=r.replace(/^https?:\/\/cdndev\.arcgis\.com/,"https://devext.arcgis.com"),r=r.replace(/^https?:\/\/cdnqa\.arcgis\.com/,"https://qaext.arcgis.com"),r&&t&&!t.findCredential(r)&&(r=u(r)),r}const b=Object.freeze(Object.defineProperty({__proto__:null,ensureMainOnlineDomain:I,fromCDNUrl:P,fromJSON:p,itemIdFromResourceUrl:v,itemUrlFromResourceUrl:x,prefixAndFilenameFromResourceUrl:R,read:f,toCDNUrl:y,toJSON:m,write:h},Symbol.toStringTag,{value:"Module"}));export{y as a,b,x as c,P as d,I as e,p as f,v as i,R as p,f as r,m as t,h as w};
|
package/config.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import"./core/has.js";import{deepMerge as e}from"./core/object.js";const s={apiKey:void 0,apiKeys:{scopes:[]},applicationName:"",applicationUrl:globalThis.location?.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",userPrivilegesApplied:!0,portalUrl:"https://www.arcgis.com",respectPrefersReducedMotion:!0,routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{crossOriginNoCorsDomains:null,httpsDomains:["arcgis.com","arcgisonline.com","esrikr.com","premiumservices.blackbridge.com","esripremium.accuweather.com","gbm.digitalglobe.com","firstlook.digitalglobe.com","msi.digitalglobe.com"],interceptors:[],internalInterceptors:[],maxUrlLength:2e3,priority:"high",proxyRules:[],proxyUrl:null,timeout:62e3,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&(e(s,globalThis.esriConfig,!0),delete s.has),!s.assetsPath){{const e="5.2.0-next.
|
|
2
|
+
import"./core/has.js";import{deepMerge as e}from"./core/object.js";const s={apiKey:void 0,apiKeys:{scopes:[]},applicationName:"",applicationUrl:globalThis.location?.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",userPrivilegesApplied:!0,portalUrl:"https://www.arcgis.com",respectPrefersReducedMotion:!0,routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{crossOriginNoCorsDomains:null,httpsDomains:["arcgis.com","arcgisonline.com","esrikr.com","premiumservices.blackbridge.com","esripremium.accuweather.com","gbm.digitalglobe.com","firstlook.digitalglobe.com","msi.digitalglobe.com"],interceptors:[],internalInterceptors:[],maxUrlLength:2e3,priority:"high",proxyRules:[],proxyUrl:null,timeout:62e3,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&(e(s,globalThis.esriConfig,!0),delete s.has),!s.assetsPath){{const e="5.2.0-next.63";s.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@${e}/assets`}s.defaultAssetsPath=s.assetsPath}export{s as default};
|
package/core/Collection.d.ts
CHANGED
|
@@ -393,9 +393,8 @@ export default class Collection<T = any> extends EventedAccessor {
|
|
|
393
393
|
*/
|
|
394
394
|
filter(callback: ItemTestCallback<T>, thisArg?: any): Collection<T>;
|
|
395
395
|
/**
|
|
396
|
-
* Returns
|
|
397
|
-
*
|
|
398
|
-
* `callback` function, which
|
|
396
|
+
* Returns the first item in the Collection that passes a test defined by the
|
|
397
|
+
* `callback` function. Each item is passed into the `callback` function, which
|
|
399
398
|
* returns `true` if the item passes the test and `false` if it does not.
|
|
400
399
|
*
|
|
401
400
|
* @param callback - The testing function that will assess
|
|
@@ -413,8 +412,8 @@ export default class Collection<T = any> extends EventedAccessor {
|
|
|
413
412
|
*/
|
|
414
413
|
find(callback: ItemTestCallback<T>, thisArg?: any): T | undefined;
|
|
415
414
|
/**
|
|
416
|
-
* Returns the index of
|
|
417
|
-
*
|
|
415
|
+
* Returns the index of the first item in the Collection that passes a test defined by the
|
|
416
|
+
* `callback` function. Each item is passed into the `callback` function, which
|
|
418
417
|
* returns `true` if the item passes the test and `false` if it does not.
|
|
419
418
|
*
|
|
420
419
|
* @param callback - The testing function that will assess each
|
|
@@ -432,6 +431,43 @@ export default class Collection<T = any> extends EventedAccessor {
|
|
|
432
431
|
* });
|
|
433
432
|
*/
|
|
434
433
|
findIndex(callback: ItemTestCallback<T>, thisArg?: any): number;
|
|
434
|
+
/**
|
|
435
|
+
* Returns the last item in the Collection that passes a test defined by the
|
|
436
|
+
* `callback` function. Each item is passed into the `callback` function in reverse order.
|
|
437
|
+
*
|
|
438
|
+
* @param callback - The testing function that will assess
|
|
439
|
+
* each item in the Collection. Returns `true` if an item passes the test
|
|
440
|
+
* and `false` if it fails.
|
|
441
|
+
* @param thisArg - Value to use as `this` when executing `callback`.
|
|
442
|
+
* @returns The last item in the Collection that satisfies the test function.
|
|
443
|
+
* @since 5.2
|
|
444
|
+
* @see [Array.prototype.findLast()](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array/findLast)
|
|
445
|
+
* @example
|
|
446
|
+
* // Find the last layer in the collection that is visible
|
|
447
|
+
* const visibleLayer = map.layers.findLast(function(layer) {
|
|
448
|
+
* return layer.visible;
|
|
449
|
+
* });
|
|
450
|
+
*/
|
|
451
|
+
findLast(callback: ItemTestCallback<T>, thisArg?: any): T | undefined;
|
|
452
|
+
/**
|
|
453
|
+
* Returns the index of the last item in the Collection that passes a test defined by the
|
|
454
|
+
* `callback` function. Each item is passed into the `callback` function in reverse order.
|
|
455
|
+
*
|
|
456
|
+
* @param callback - The testing function that will assess each
|
|
457
|
+
* item in the Collection. Returns `true` if an item passes the test and
|
|
458
|
+
* `false` if it fails.
|
|
459
|
+
* @param thisArg - Value to use as `this` when executing `callback`.
|
|
460
|
+
* @returns The index of the last Collection item that satisfies the test function.
|
|
461
|
+
* If no item satisfies the test, `-1` is returned.
|
|
462
|
+
* @since 5.2
|
|
463
|
+
* @see [Array.prototype.findLastIndex()](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array/findLastIndex)
|
|
464
|
+
* @example
|
|
465
|
+
* // Find the index of the last visible layer in the collection
|
|
466
|
+
* const visibleLayerIndex = map.layers.findLastIndex(function(layer) {
|
|
467
|
+
* return layer.visible;
|
|
468
|
+
* });
|
|
469
|
+
*/
|
|
470
|
+
findLastIndex(callback: ItemTestCallback<T>, thisArg?: any): number;
|
|
435
471
|
/**
|
|
436
472
|
* Flattens a hierarchical Collection containing at least one child collection.
|
|
437
473
|
* Each item in the collection is passed into the `callback` function, which
|
|
@@ -823,7 +859,7 @@ export default class Collection<T = any> extends EventedAccessor {
|
|
|
823
859
|
unshift(...items: T[]): number;
|
|
824
860
|
}
|
|
825
861
|
|
|
826
|
-
export interface ReadonlyCollection<T> extends EventedMixin, Pick<Collection<T>, "addHandles" | "at" | "clone" | "concat" | "declaredClass" | "destroyed" | "every" | "filter" | "find" | "findIndex" | "flatten" | "forEach" | "getItemAt" | "hasHandles" | "includes" | "initialized" | "indexOf" | "join" | "lastIndexOf" | "map" | "reduce" | "reduceRight" | "removeHandles" | "slice" | "some" | "toArray" | "toString" | "watch" | typeof Symbol.iterator> {
|
|
862
|
+
export interface ReadonlyCollection<T> extends EventedMixin, Pick<Collection<T>, "addHandles" | "at" | "clone" | "concat" | "declaredClass" | "destroyed" | "every" | "filter" | "find" | "findLast" | "findIndex" | "findLastIndex" | "flatten" | "forEach" | "getItemAt" | "hasHandles" | "includes" | "initialized" | "indexOf" | "join" | "lastIndexOf" | "map" | "reduce" | "reduceRight" | "removeHandles" | "slice" | "some" | "toArray" | "toString" | "watch" | typeof Symbol.iterator> {
|
|
827
863
|
readonly "@eventTypes": Collection<T>["@eventTypes"];
|
|
828
864
|
readonly length: number;
|
|
829
865
|
}
|
package/core/Collection.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{__decorate as e}from"tslib";import t from"./ArrayPool.js";import{isArrayWithReadonly as s}from"./arrayUtils.js";import{EventedAccessor as i}from"./Evented.js";import{makeHandle as r}from"./handleUtils.js";import{clone as n}from"./lang.js";import h from"./Logger.js";import o from"./ObjectPool.js";import{schedule as l}from"./scheduling.js";import{ensureType as a,ensureOneOfType as c}from"./accessorSupport/ensureType.js";import{trackAccess as f}from"./accessorSupport/tracking.js";import{property as _}from"./accessorSupport/decorators/property.js";import{shared as u}from"./accessorSupport/decorators/shared.js";import{subclass as g}from"./accessorSupport/decorators/subclass.js";import{SimpleObservable as m}from"./accessorSupport/tracking/SimpleObservable.js";import{isSerializable as p}from"./support/jsonUtils.js";var d;class b{constructor(){this.target=null,this.cancellable=!1,this.defaultPrevented=!1,this.item=void 0,this.type=void 0}preventDefault(){this.cancellable&&(this.defaultPrevented=!0)}reset(e){this.defaultPrevented=!1,this.item=e}}class v{constructor(e,t,s,i,r){this.target=e,this.added=t,this.removed=s,this.start=i,this.deleteCount=r}}const y=new o(()=>new b,void 0,e=>{e.item=null,e.target=null,e.defaultPrevented=!1,e.cancellable=!1});function C(e){e&&"object"==typeof e&&"destroy"in e&&"function"==typeof e.destroy&&e.destroy()}function A(e){return e?e instanceof I?e.toArray():e.length?Array.prototype.slice.apply(e):[]:[]}function x(e){if(e?.length)return e[0]}function j(e,t,s,i){const r=Math.min(e.length-s,t.length-i);let n=0;for(;n<r&&e[s+n]===t[i+n];)n++;return n}function E(e,t,s,i){t&&t.forEach((t,r,n)=>{e.push(t),E(e,s.call(i,t,r,n),s,i)})}const w=new Set,L=new Set,S=new Set,B=new Map;let O=0,I=d=class extends i{static ofType(t){if(!t)return d;if(B.has(t))return B.get(t);let s=null;if("function"==typeof t)s=t.prototype.declaredClass;else if(t.base)s=t.base.prototype.declaredClass;else for(const e in t.typeMap){const i=t.typeMap[e].prototype.declaredClass;s?s+=` | ${i}`:s=i}let i=class extends d{};return e([u({Type:t,ensureType:"function"==typeof t?a(t):c(t)})],i.prototype,"itemType",void 0),i=e([g(`esri.core.Collection<${s}>`)],i),B.set(t,i),i}static isCollection(e){return null!=e&&e instanceof d}constructor(e){super(e),this._chgListeners=[],this._notifications=null,this._updating=!1,this._timer=null,this._observable=new m,this._length=0,this._items=[],Object.defineProperty(this,"uid",{value:O++})}normalizeCtorArgs(e){return e?s(e)||e instanceof d?{items:e}:e:{}}destroy(){this._removeAllRaw(),this._timer&&this._timer.remove(),super.destroy(),this._notifications=null}*[Symbol.iterator](){yield*this.items}get length(){return this._length}set length(e){e>this._length?h.getLogger(this).error("#length=","Cannot increase the length of the collection by assigning to the length property."):this.splice(e,Math.max(0,this._length-e))}get items(){return f(this._observable),this._items}set items(e){this._emitBeforeChanges(1)||(this._splice(0,this.length,A(e)),this._emitAfterChanges(1))}hasEventListener(e){return!this.destroyed&&("change"===e?this._chgListeners.length>0:super.hasEventListener(e))}on(e,t){if(this.destroyed)return r();if("change"===e){const e=this._chgListeners,s={removed:!1,callback:t};return e.push(s),this._notifications&&this._notifications.push({listeners:e.slice(),items:this._items.slice(),changes:[]}),r(()=>{s.removed=!0,e.splice(e.indexOf(s),1)})}return super.on(e,t)}once(e,t){const s="deref"in t?()=>t.deref():()=>t,i=this.on(e,e=>{s()?.call(null,e),i.remove()});return i}add(e,t){if(f(this._observable),this._emitBeforeChanges(1))return this;const s=this.getNextIndex(t??null);return this._splice(s,0,[e]),this._emitAfterChanges(1),this}addMany(e,t=this._items.length){if(f(this._observable),!e?.length)return this;if(this._emitBeforeChanges(1))return this;const s=this.getNextIndex(t);return this._splice(s,0,A(e)),this._emitAfterChanges(1),this}at(e){if(f(this._observable),(e=Math.trunc(e)||0)<0&&(e+=this.length),!(e<0||e>=this.length))return this._items[e]}removeAll(){if(f(this._observable),!this.length||this._emitBeforeChanges(2))return[];const e=this._removeAllRaw();return this._emitAfterChanges(2),e}_removeAllRaw(){return 0===this.length?[]:this._splice(0,this.length)||[]}clone(){return f(this._observable),this._createNewInstance({items:this._items.map(n)})}concat(...e){f(this._observable);const t=e.map(A);return this._createNewInstance({items:this._items.concat(...t)})}drain(e,t){if(f(this._observable),!this.length||this._emitBeforeChanges(2))return;const s=this._splice(0,this.length),i=s.length;for(let r=0;r<i;r++)e.call(t,s[r],r,s);this._emitAfterChanges(2)}destroyAll(){this.drain(C)}destroyMany(e){const t=this.removeMany(e);return t.forEach(C),t}every(e,t){return f(this._observable),this._items.every(e,t)}filter(e,t){f(this._observable);const s=2===arguments.length?this._items.filter(e,t):this._items.filter(e);return this._createNewInstance({items:s})}find(e,t){return f(this._observable),this._items.find(e,t)}findIndex(e,t){return f(this._observable),this._items.findIndex(e,t)}flatten(e,t){f(this._observable);const s=[];return E(s,this,e,t),new d(s)}forEach(e,t){return f(this._observable),this._items.forEach(e,t)}getItemAt(e){return f(this._observable),this._items[e]}getNextIndex(e){f(this._observable);const t=this.length;return(e=e??t)<0?e=0:e>t&&(e=t),e}includes(e,t=0){return f(this._observable),this._items.includes(e,t)}indexOf(e,t=0){return f(this._observable),this._items.indexOf(e,t)}join(e=","){return f(this._observable),this._items.join(e)}lastIndexOf(e,t=this.length-1){return f(this._observable),this._items.lastIndexOf(e,t)}map(e,t){f(this._observable);const s=this._items.map(e,t);return new d({items:s})}reorder(e,t=this.length-1){f(this._observable);const s=this.indexOf(e);if(-1!==s){if(t<0?t=0:t>=this.length&&(t=this.length-1),s!==t){if(this._emitBeforeChanges(4))return e;this._splice(s,1),this._splice(t,0,[e]),this._emitAfterChanges(4)}return e}}pop(){if(f(this._observable),!this.length||this._emitBeforeChanges(2))return;const e=x(this._splice(this.length-1,1));return this._emitAfterChanges(2),e}push(...e){return f(this._observable),this._emitBeforeChanges(1)||(this._splice(this.length,0,e),this._emitAfterChanges(1)),this.length}reduce(e,t){f(this._observable);const s=this._items;return 2===arguments.length?s.reduce(e,t):s.reduce(e)}reduceRight(e,t){f(this._observable);const s=this._items;return 2===arguments.length?s.reduceRight(e,t):s.reduceRight(e)}remove(e){return f(this._observable),this.removeAt(this.indexOf(e))}removeAt(e){if(f(this._observable),e<0||e>=this.length||this._emitBeforeChanges(2))return;const t=x(this._splice(e,1));return this._emitAfterChanges(2),t}removeMany(e){if(f(this._observable),!e?.length||this._emitBeforeChanges(2))return[];const t=e instanceof d?e.toArray():e,s=this._items,i=[],r=t.length;for(let n=0;n<r;n++){const e=t[n],r=s.indexOf(e);if(r>-1){const e=1+j(t,s,n+1,r+1),h=this._splice(r,e);h&&h.length>0&&i.push.apply(i,h),n+=e-1}}return this._emitAfterChanges(2),i}reverse(){if(f(this._observable),this._emitBeforeChanges(4))return this;const e=this._splice(0,this.length);return e&&(e.reverse(),this._splice(0,0,e)),this._emitAfterChanges(4),this}shift(){if(f(this._observable),!this.length||this._emitBeforeChanges(2))return;const e=x(this._splice(0,1));return this._emitAfterChanges(2),e}slice(e=0,t=this.length){return f(this._observable),this._createNewInstance({items:this._items.slice(e,t)})}some(e,t){return f(this._observable),this._items.some(e,t)}sort(e){if(f(this._observable),!this.length||this._emitBeforeChanges(4)||!this._requiresSort(e))return this;const t=this._splice(0,this.length);return arguments.length?t.sort(e):t.sort(),this._splice(0,0,t),this._emitAfterChanges(4),this}_requiresSort(e=(e,t)=>e===t?0:e<t?-1:1){const t=this.length-1;for(let s=0;s<t;s++){if(e(this.items[s],this.items[s+1])>0)return!0}return!1}splice(e,t,...s){f(this._observable),1===arguments.length&&(t=this.length),t??=0;const i=(t?2:0)|(s.length?1:0);if(this._emitBeforeChanges(i))return[];const r=this._splice(e,t,s)||[];return this._emitAfterChanges(i),r}toArray(){return f(this._observable),this._items.slice()}toJSON(e){f(this._observable);return this.toArray().map(t=>p(t)?t.toJSON(e):t)}toLocaleString(){return f(this._observable),this._items.toLocaleString()}toString(){return f(this._observable),this._items.toString()}unshift(...e){return f(this._observable),!e.length||this._emitBeforeChanges(1)||(this._splice(0,0,e),this._emitAfterChanges(1)),this.length}_createNewInstance(e){return new this.constructor(e)}_splice(e,t,s){const i=this._items,r=this.itemType;let n,h;if(!this._notifications&&this.hasEventListener("change")&&(this._notifications=[{listeners:this._chgListeners.slice(),items:this._items.slice(),changes:[]}],this._timer&&this._timer.remove(),this._updating=!0,this._timer=l(()=>this._dispatchChange())),e<0&&(e+=this.length),t){if(h=i.splice(e,t),this.hasEventListener("before-remove")){const t=y.acquire();t.target=this,t.cancellable=!0;for(let s=0,r=h.length;s<r;s++)n=h[s],t.reset(n),this.emit("before-remove",t),t.defaultPrevented&&(h.splice(s,1),i.splice(e,0,n),e+=1,s-=1,r-=1);y.release(t)}if(this._length=this._items.length,this.hasEventListener("after-remove")){const e=y.acquire();e.target=this,e.cancellable=!1;const t=h.length;for(let s=0;s<t;s++)e.reset(h[s]),this.emit("after-remove",e);y.release(e)}}if(s?.length){if(r){const e=[];for(const t of s){const s=r.ensureType(t);null==s&&null!=t||e.push(s)}s=e}const t=this.hasEventListener("before-add"),n=this.hasEventListener("after-add"),h=e===this.length;if(t||n){const r=y.acquire();r.target=this,r.cancellable=!0;const o=y.acquire();o.target=this,o.cancellable=!1;for(const l of s)t?(r.reset(l),this.emit("before-add",r),r.defaultPrevented||(h?i.push(l):i.splice(e++,0,l),this._length=i.length,n&&(o.reset(l),this.emit("after-add",o)))):(h?i.push(l):i.splice(e++,0,l),this._length=i.length,o.reset(l),this.emit("after-add",o));y.release(o),y.release(r)}else{if(h)for(const e of s)i.push(e);else i.splice(e,0,...s);this._length=i.length}}if((s?.length||h?.length)&&this._notifyChangeEvent(s,h),this.hasEventListener("after-splice")){const i=new v(this,s,h,e,t);this.emit("after-splice",i)}return h}_emitBeforeChanges(e){let t=!1;if(this.hasEventListener("before-changes")){const s=y.acquire();s.target=this,s.cancellable=!0,s.type=e,this.emit("before-changes",s),t=s.defaultPrevented,y.release(s)}return t}_emitAfterChanges(e){if(this.hasEventListener("after-changes")){const t=y.acquire();t.target=this,t.cancellable=!1,t.type=e,this.emit("after-changes",t),y.release(t)}this._observable.notify()}_notifyChangeEvent(e,t){this.hasEventListener("change")&&this._notifications&&this._notifications[this._notifications.length-1].changes.push({added:e,removed:t})}get updating(){return this._updating}_dispatchChange(){if(this._timer&&(this._timer.remove(),this._timer=null),this._updating=!1,!this._notifications)return;const e=this._notifications;this._notifications=null;for(const s of e){const e=s.changes;w.clear(),L.clear(),S.clear();for(const{added:t,removed:s}of e){if(t)if(0===S.size&&0===L.size)for(const e of t)w.add(e);else for(const e of t)L.has(e)?(S.add(e),L.delete(e)):S.has(e)||w.add(e);if(s)if(0===S.size&&0===w.size)for(const e of s)L.add(e);else for(const e of s)w.has(e)?w.delete(e):(S.delete(e),L.add(e))}const i=t.acquire();w.forEach(e=>{i.push(e)});const r=t.acquire();L.forEach(e=>{r.push(e)});const n=this._items,h=s.items,o=t.acquire();if(S.forEach(e=>{h.indexOf(e)!==n.indexOf(e)&&o.push(e)}),s.listeners&&(i.length||r.length||o.length)){const e={target:this,added:i,removed:r,moved:o},t=s.listeners.length;for(let i=0;i<t;i++){const t=s.listeners[i];t.removed||t.callback.call(this,e)}}t.release(i),t.release(r),t.release(o)}w.clear(),L.clear(),S.clear()}};e([_()],I.prototype,"_updating",void 0),e([_()],I.prototype,"_length",void 0),e([_()],I.prototype,"length",null),e([_()],I.prototype,"items",null),e([_({readOnly:!0})],I.prototype,"updating",null),I=d=e([g("esri.core.Collection")],I);const q=I;export{q as default};
|
|
2
|
+
import{__decorate as e}from"tslib";import t from"./ArrayPool.js";import{isArrayWithReadonly as s}from"./arrayUtils.js";import{EventedAccessor as i}from"./Evented.js";import{makeHandle as r}from"./handleUtils.js";import{clone as n}from"./lang.js";import h from"./Logger.js";import o from"./ObjectPool.js";import{schedule as l}from"./scheduling.js";import{ensureType as a,ensureOneOfType as c}from"./accessorSupport/ensureType.js";import{trackAccess as f}from"./accessorSupport/tracking.js";import{property as _}from"./accessorSupport/decorators/property.js";import{shared as u}from"./accessorSupport/decorators/shared.js";import{subclass as m}from"./accessorSupport/decorators/subclass.js";import{SimpleObservable as g}from"./accessorSupport/tracking/SimpleObservable.js";import{isSerializable as d}from"./support/jsonUtils.js";var p;class b{constructor(){this.target=null,this.cancellable=!1,this.defaultPrevented=!1,this.item=void 0,this.type=void 0}preventDefault(){this.cancellable&&(this.defaultPrevented=!0)}reset(e){this.defaultPrevented=!1,this.item=e}}class v{constructor(e,t,s,i,r){this.target=e,this.added=t,this.removed=s,this.start=i,this.deleteCount=r}}const y=new o(()=>new b,void 0,e=>{e.item=null,e.target=null,e.defaultPrevented=!1,e.cancellable=!1});function C(e){e&&"object"==typeof e&&"destroy"in e&&"function"==typeof e.destroy&&e.destroy()}function A(e){return e?e instanceof I?e.toArray():e.length?Array.prototype.slice.apply(e):[]:[]}function x(e){if(e?.length)return e[0]}function L(e,t,s,i){const r=Math.min(e.length-s,t.length-i);let n=0;for(;n<r&&e[s+n]===t[i+n];)n++;return n}function j(e,t,s,i){t&&t.forEach((t,r,n)=>{e.push(t),j(e,s.call(i,t,r,n),s,i)})}const E=new Set,w=new Set,S=new Set,B=new Map;let O=0,I=p=class extends i{static ofType(t){if(!t)return p;if(B.has(t))return B.get(t);let s=null;if("function"==typeof t)s=t.prototype.declaredClass;else if(t.base)s=t.base.prototype.declaredClass;else for(const e in t.typeMap){const i=t.typeMap[e].prototype.declaredClass;s?s+=` | ${i}`:s=i}let i=class extends p{};return e([u({Type:t,ensureType:"function"==typeof t?a(t):c(t)})],i.prototype,"itemType",void 0),i=e([m(`esri.core.Collection<${s}>`)],i),B.set(t,i),i}static isCollection(e){return null!=e&&e instanceof p}constructor(e){super(e),this._chgListeners=[],this._notifications=null,this._updating=!1,this._timer=null,this._observable=new g,this._length=0,this._items=[],Object.defineProperty(this,"uid",{value:O++})}normalizeCtorArgs(e){return e?s(e)||e instanceof p?{items:e}:e:{}}destroy(){this._removeAllRaw(),this._timer&&this._timer.remove(),super.destroy(),this._notifications=null}*[Symbol.iterator](){yield*this.items}get length(){return this._length}set length(e){e>this._length?h.getLogger(this).error("#length=","Cannot increase the length of the collection by assigning to the length property."):this.splice(e,Math.max(0,this._length-e))}get items(){return f(this._observable),this._items}set items(e){this._emitBeforeChanges(1)||(this._splice(0,this.length,A(e)),this._emitAfterChanges(1))}hasEventListener(e){return!this.destroyed&&("change"===e?this._chgListeners.length>0:super.hasEventListener(e))}on(e,t){if(this.destroyed)return r();if("change"===e){const e=this._chgListeners,s={removed:!1,callback:t};return e.push(s),this._notifications&&this._notifications.push({listeners:e.slice(),items:this._items.slice(),changes:[]}),r(()=>{s.removed=!0,e.splice(e.indexOf(s),1)})}return super.on(e,t)}once(e,t){const s="deref"in t?()=>t.deref():()=>t,i=this.on(e,e=>{s()?.call(null,e),i.remove()});return i}add(e,t){if(f(this._observable),this._emitBeforeChanges(1))return this;const s=this.getNextIndex(t??null);return this._splice(s,0,[e]),this._emitAfterChanges(1),this}addMany(e,t=this._items.length){if(f(this._observable),!e?.length)return this;if(this._emitBeforeChanges(1))return this;const s=this.getNextIndex(t);return this._splice(s,0,A(e)),this._emitAfterChanges(1),this}at(e){if(f(this._observable),(e=Math.trunc(e)||0)<0&&(e+=this.length),!(e<0||e>=this.length))return this._items[e]}removeAll(){if(f(this._observable),!this.length||this._emitBeforeChanges(2))return[];const e=this._removeAllRaw();return this._emitAfterChanges(2),e}_removeAllRaw(){return 0===this.length?[]:this._splice(0,this.length)||[]}clone(){return f(this._observable),this._createNewInstance({items:this._items.map(n)})}concat(...e){f(this._observable);const t=e.map(A);return this._createNewInstance({items:this._items.concat(...t)})}drain(e,t){if(f(this._observable),!this.length||this._emitBeforeChanges(2))return;const s=this._splice(0,this.length),i=s.length;for(let r=0;r<i;r++)e.call(t,s[r],r,s);this._emitAfterChanges(2)}destroyAll(){this.drain(C)}destroyMany(e){const t=this.removeMany(e);return t.forEach(C),t}every(e,t){return f(this._observable),this._items.every(e,t)}filter(e,t){f(this._observable);const s=2===arguments.length?this._items.filter(e,t):this._items.filter(e);return this._createNewInstance({items:s})}find(e,t){return f(this._observable),this._items.find(e,t)}findIndex(e,t){return f(this._observable),this._items.findIndex(e,t)}findLast(e,t){return f(this._observable),this._items.findLast(e,t)}findLastIndex(e,t){return f(this._observable),this._items.findLastIndex(e,t)}flatten(e,t){f(this._observable);const s=[];return j(s,this,e,t),new p(s)}forEach(e,t){return f(this._observable),this._items.forEach(e,t)}getItemAt(e){return f(this._observable),this._items[e]}getNextIndex(e){f(this._observable);const t=this.length;return(e=e??t)<0?e=0:e>t&&(e=t),e}includes(e,t=0){return f(this._observable),this._items.includes(e,t)}indexOf(e,t=0){return f(this._observable),this._items.indexOf(e,t)}join(e=","){return f(this._observable),this._items.join(e)}lastIndexOf(e,t=this.length-1){return f(this._observable),this._items.lastIndexOf(e,t)}map(e,t){f(this._observable);const s=this._items.map(e,t);return new p({items:s})}reorder(e,t=this.length-1){f(this._observable);const s=this.indexOf(e);if(-1!==s){if(t<0?t=0:t>=this.length&&(t=this.length-1),s!==t){if(this._emitBeforeChanges(4))return e;this._splice(s,1),this._splice(t,0,[e]),this._emitAfterChanges(4)}return e}}pop(){if(f(this._observable),!this.length||this._emitBeforeChanges(2))return;const e=x(this._splice(this.length-1,1));return this._emitAfterChanges(2),e}push(...e){return f(this._observable),this._emitBeforeChanges(1)||(this._splice(this.length,0,e),this._emitAfterChanges(1)),this.length}reduce(e,t){f(this._observable);const s=this._items;return 2===arguments.length?s.reduce(e,t):s.reduce(e)}reduceRight(e,t){f(this._observable);const s=this._items;return 2===arguments.length?s.reduceRight(e,t):s.reduceRight(e)}remove(e){return f(this._observable),this.removeAt(this.indexOf(e))}removeAt(e){if(f(this._observable),e<0||e>=this.length||this._emitBeforeChanges(2))return;const t=x(this._splice(e,1));return this._emitAfterChanges(2),t}removeMany(e){if(f(this._observable),!e?.length||this._emitBeforeChanges(2))return[];const t=e instanceof p?e.toArray():e,s=this._items,i=[],r=t.length;for(let n=0;n<r;n++){const e=t[n],r=s.indexOf(e);if(r>-1){const e=1+L(t,s,n+1,r+1),h=this._splice(r,e);h&&h.length>0&&i.push.apply(i,h),n+=e-1}}return this._emitAfterChanges(2),i}reverse(){if(f(this._observable),this._emitBeforeChanges(4))return this;const e=this._splice(0,this.length);return e&&(e.reverse(),this._splice(0,0,e)),this._emitAfterChanges(4),this}shift(){if(f(this._observable),!this.length||this._emitBeforeChanges(2))return;const e=x(this._splice(0,1));return this._emitAfterChanges(2),e}slice(e=0,t=this.length){return f(this._observable),this._createNewInstance({items:this._items.slice(e,t)})}some(e,t){return f(this._observable),this._items.some(e,t)}sort(e){if(f(this._observable),!this.length||this._emitBeforeChanges(4)||!this._requiresSort(e))return this;const t=this._splice(0,this.length);return arguments.length?t.sort(e):t.sort(),this._splice(0,0,t),this._emitAfterChanges(4),this}_requiresSort(e=(e,t)=>e===t?0:e<t?-1:1){const t=this.length-1;for(let s=0;s<t;s++){if(e(this.items[s],this.items[s+1])>0)return!0}return!1}splice(e,t,...s){f(this._observable),1===arguments.length&&(t=this.length),t??=0;const i=(t?2:0)|(s.length?1:0);if(this._emitBeforeChanges(i))return[];const r=this._splice(e,t,s)||[];return this._emitAfterChanges(i),r}toArray(){return f(this._observable),this._items.slice()}toJSON(e){f(this._observable);return this.toArray().map(t=>d(t)?t.toJSON(e):t)}toLocaleString(){return f(this._observable),this._items.toLocaleString()}toString(){return f(this._observable),this._items.toString()}unshift(...e){return f(this._observable),!e.length||this._emitBeforeChanges(1)||(this._splice(0,0,e),this._emitAfterChanges(1)),this.length}_createNewInstance(e){return new this.constructor(e)}_splice(e,t,s){const i=this._items,r=this.itemType;let n,h;if(!this._notifications&&this.hasEventListener("change")&&(this._notifications=[{listeners:this._chgListeners.slice(),items:this._items.slice(),changes:[]}],this._timer&&this._timer.remove(),this._updating=!0,this._timer=l(()=>this._dispatchChange())),e<0&&(e+=this.length),t){if(h=i.splice(e,t),this.hasEventListener("before-remove")){const t=y.acquire();t.target=this,t.cancellable=!0;for(let s=0,r=h.length;s<r;s++)n=h[s],t.reset(n),this.emit("before-remove",t),t.defaultPrevented&&(h.splice(s,1),i.splice(e,0,n),e+=1,s-=1,r-=1);y.release(t)}if(this._length=this._items.length,this.hasEventListener("after-remove")){const e=y.acquire();e.target=this,e.cancellable=!1;const t=h.length;for(let s=0;s<t;s++)e.reset(h[s]),this.emit("after-remove",e);y.release(e)}}if(s?.length){if(r){const e=[];for(const t of s){const s=r.ensureType(t);null==s&&null!=t||e.push(s)}s=e}const t=this.hasEventListener("before-add"),n=this.hasEventListener("after-add"),h=e===this.length;if(t||n){const r=y.acquire();r.target=this,r.cancellable=!0;const o=y.acquire();o.target=this,o.cancellable=!1;for(const l of s)t?(r.reset(l),this.emit("before-add",r),r.defaultPrevented||(h?i.push(l):i.splice(e++,0,l),this._length=i.length,n&&(o.reset(l),this.emit("after-add",o)))):(h?i.push(l):i.splice(e++,0,l),this._length=i.length,o.reset(l),this.emit("after-add",o));y.release(o),y.release(r)}else{if(h)for(const e of s)i.push(e);else i.splice(e,0,...s);this._length=i.length}}if((s?.length||h?.length)&&this._notifyChangeEvent(s,h),this.hasEventListener("after-splice")){const i=new v(this,s,h,e,t);this.emit("after-splice",i)}return h}_emitBeforeChanges(e){let t=!1;if(this.hasEventListener("before-changes")){const s=y.acquire();s.target=this,s.cancellable=!0,s.type=e,this.emit("before-changes",s),t=s.defaultPrevented,y.release(s)}return t}_emitAfterChanges(e){if(this.hasEventListener("after-changes")){const t=y.acquire();t.target=this,t.cancellable=!1,t.type=e,this.emit("after-changes",t),y.release(t)}this._observable.notify()}_notifyChangeEvent(e,t){this.hasEventListener("change")&&this._notifications&&this._notifications[this._notifications.length-1].changes.push({added:e,removed:t})}get updating(){return this._updating}_dispatchChange(){if(this._timer&&(this._timer.remove(),this._timer=null),this._updating=!1,!this._notifications)return;const e=this._notifications;this._notifications=null;for(const s of e){const e=s.changes;E.clear(),w.clear(),S.clear();for(const{added:t,removed:s}of e){if(t)if(0===S.size&&0===w.size)for(const e of t)E.add(e);else for(const e of t)w.has(e)?(S.add(e),w.delete(e)):S.has(e)||E.add(e);if(s)if(0===S.size&&0===E.size)for(const e of s)w.add(e);else for(const e of s)E.has(e)?E.delete(e):(S.delete(e),w.add(e))}const i=t.acquire();E.forEach(e=>{i.push(e)});const r=t.acquire();w.forEach(e=>{r.push(e)});const n=this._items,h=s.items,o=t.acquire();if(S.forEach(e=>{h.indexOf(e)!==n.indexOf(e)&&o.push(e)}),s.listeners&&(i.length||r.length||o.length)){const e={target:this,added:i,removed:r,moved:o},t=s.listeners.length;for(let i=0;i<t;i++){const t=s.listeners[i];t.removed||t.callback.call(this,e)}}t.release(i),t.release(r),t.release(o)}E.clear(),w.clear(),S.clear()}};e([_()],I.prototype,"_updating",void 0),e([_()],I.prototype,"_length",void 0),e([_()],I.prototype,"length",null),e([_()],I.prototype,"items",null),e([_({readOnly:!0})],I.prototype,"updating",null),I=p=e([m("esri.core.Collection")],I);const q=I;export{q as default};
|
|
@@ -134,10 +134,7 @@ export default class SpatialReference extends JSONSupport {
|
|
|
134
134
|
* `102113`, `102100`, `3857`.
|
|
135
135
|
*/
|
|
136
136
|
get isWebMercator(): boolean;
|
|
137
|
-
/**
|
|
138
|
-
* Indicates if the [wkid](https://developers.arcgis.com/javascript/latest/references/core/geometry/SpatialReference/#wkid) of the spatial reference object is
|
|
139
|
-
* `4326`.
|
|
140
|
-
*/
|
|
137
|
+
/** Indicates if the [wkid](https://developers.arcgis.com/javascript/latest/references/core/geometry/SpatialReference/#wkid) of the spatial reference object is `4326`. */
|
|
141
138
|
get isWGS84(): boolean;
|
|
142
139
|
/**
|
|
143
140
|
* Indicates if the spatial reference of the map supports wrapping around the International
|
package/kernel.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import has from"./core/has.js";import{addQueryParameter as o}from"./core/urlUtils.js";export{buildDate,commitHash as revision}from"./support/revision.js";Symbol.dispose??=Symbol("Symbol.dispose"),Symbol.asyncDispose??=Symbol("Symbol.asyncDispose");const e="5.2";let s,r=e;function i(o){s=o}function t(e){const r=s?.findCredential(e);return r?.token?o(e,"token",r.token):e}r="5.2.0-next.
|
|
2
|
+
import has from"./core/has.js";import{addQueryParameter as o}from"./core/urlUtils.js";export{buildDate,commitHash as revision}from"./support/revision.js";Symbol.dispose??=Symbol("Symbol.dispose"),Symbol.asyncDispose??=Symbol("Symbol.asyncDispose");const e="5.2";let s,r=e;function i(o){s=o}function t(e){const r=s?.findCredential(e);return r?.token?o(e,"token",r.token):e}r="5.2.0-next.63",has("host-webworker")||globalThis.$arcgis||Object.defineProperty(globalThis,"$arcgis",{configurable:!1,enumerable:!0,writable:!1,value:{}}),has("host-webworker");export{t as addTokenParameter,r as fullVersion,s as id,i as setId,e as version};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{__decorate as e}from"tslib";import t from"../core/Error.js";import{property as o,subclass as r}from"../core/accessorSupport/decorators.js";import i from"../geometry/Extent.js";import s from"../geometry/SpatialReference.js";import{create as
|
|
2
|
+
import{__decorate as e}from"tslib";import t from"../core/Error.js";import{property as o,subclass as r}from"../core/accessorSupport/decorators.js";import i from"../geometry/Extent.js";import s from"../geometry/SpatialReference.js";import{create as n}from"../geometry/support/aaBoundingRect.js";import a from"./Layer.js";import{ScaleRangeLayer as p}from"./mixins/ScaleRangeLayer.js";import l from"./support/TileInfo.js";import{TileKey as m}from"./support/TileKey.js";const c=new m(0,0,0);let u=class extends(p(a)){constructor(e){super(e),this.tileInfo=l.create({spatialReference:s.WebMercator,size:256}),this.fullExtent=new i(-20037508.342787,-20037508.34278,20037508.34278,20037508.342787,s.WebMercator),this.spatialReference=s.WebMercator,this.type="base-elevation"}get memoizedElevationQueryDependencies(){return[this.loadStatus,this.tileInfo,this.fullExtent,this.spatialReference]}addResolvingPromise(e){super.addResolvingPromise(e)}getTileBounds(e,t,o,r){const i=r??n();return c.level=e,c.row=t,c.col=o,c.extent=i,this.tileInfo.updateTileInfo(c),i}fetchTile(){throw new t("BaseElevationLayer:fetchTile-not-implemented","fetchTile() is not implemented")}async queryElevation(e,t){const{query:o}=await this._importElevationQuery();return o(this,e,t)}createElevationSampler(e,t){return this._importElevationQuery().then(({createSampler:o})=>o(this,e,t))}_importElevationQuery(){return import("./support/ElevationQuery.js")}};e([o({type:l})],u.prototype,"tileInfo",void 0),e([o({type:["show","hide"]})],u.prototype,"listMode",void 0),e([o()],u.prototype,"fullExtent",void 0),e([o({type:s})],u.prototype,"spatialReference",void 0),e([o()],u.prototype,"memoizedElevationQueryDependencies",null),e([o({readOnly:!0,value:"base-elevation"})],u.prototype,"type",void 0),u=e([r("esri.layers.BaseElevationLayer")],u);const y=u;export{y as default};
|
package/layers/ElevationLayer.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{__decorate as e}from"tslib";import t from"../request.js";import r from"../core/Error.js";import{releaseMaybe as i}from"../core/maybe.js";import{MultiOriginJSONSupportMixin as o}from"../core/MultiOriginJSONSupport.js";import{throwIfAbortError as a,throwIfAborted as s}from"../core/promiseUtils.js";import{objectToQuery as l}from"../core/urlUtils.js";import{property as p,subclass as n}from"../core/accessorSupport/decorators.js";import c from"../geometry/HeightModelInfo.js";import d from"./Layer.js";import{ArcGISCachedService as u}from"./mixins/ArcGISCachedService.js";import{ArcGISService as y}from"./mixins/ArcGISService.js";import{OperationalLayer as h}from"./mixins/OperationalLayer.js";import{PortalLayer as m}from"./mixins/PortalLayer.js";import{url as v}from"./support/commonProperties.js";import f from"./support/ElevationTileData.js";import{acquireDecoder as w}from"./support/LercDecoder.js";import{reader as g}from"../core/accessorSupport/decorators/reader.js";let S=class extends(u(y(h(m(o(d)))))){constructor(...e){super(...e),this.capabilities={operations:{supportsTileMap:!1}},this.copyright=null,this.heightModelInfo=null,this.path=null,this.minScale=void 0,this.maxScale=void 0,this.opacity=1,this.operationalLayerType="ArcGISTiledElevationServiceLayer",this.sourceJSON=null,this.type="elevation",this.url=null,this.version=null,this._lercDecoder=w()}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}destroy(){this._lercDecoder=i(this._lercDecoder)}readCapabilities(e,t){const r=t.capabilities&&t.capabilities.split(",").map(e=>e.toLowerCase().trim());if(!r)return{operations:{supportsTileMap:!1}};return{operations:{supportsTileMap:r.includes("tilemap")}}}readVersion(e,t){let r=t.currentVersion;return r||(r=9.3),r}load(e){const t=null!=e?e.signal:null;return this.addResolvingPromise(this.loadFromPortal({supportedTypes:["Image Service"],supportsData:!1,validateItem:e=>{if(e.typeKeywords)for(let t=0;t<e.typeKeywords.length;t++)if("elevation 3d layer"===e.typeKeywords[t].toLowerCase())return!0;throw new r("portal:invalid-layer-item-type","Invalid layer item type '${type}', expected '${expectedType}' ",{type:"Image Service",expectedType:"Image Service Elevation 3D Layer"})}},e).catch(a).then(()=>this._fetchImageService(t))),Promise.resolve(this)}async fetchTile(e,i,o,a){const s=a?.signal,l={responseType:"array-buffer",signal:s,useQueue:a?.useQueue,priority:a?.priority},p={noDataValue:a?.noDataValue,returnFileInfo:!0};await this.load(),await this._fetchTileAvailability(e,i,o,a);const n=await t(this.getTileUrl(e,i,o),l),c=await this._lercDecoder.decode(n.data,p,s);if(!c)throw new r("elevation-layer:tile-decode-failed","Failed to decode elevation tile data.");return new f({values:c.pixelData,width:c.width,height:c.height,noDataValue:c.noDataValue})}getTileUrl(e,t,r){const i=!this.capabilities.operations.supportsTileMap&&this.supportsBlankTile,o=l({...this.parsedUrl.query,blankTile:!i&&null});return`${this.parsedUrl.path}/tile/${e}/${t}/${r}${o?"?"+o:""}`}async queryElevation(e,t){const{query:r}=await import("./support/ElevationQuery.js");return s(t),r(this,e,t)}async createElevationSampler(e,t){const{createSampler:r}=await import("./support/ElevationQuery.js");return s(t),r(this,e,t)}_fetchTileAvailability(e,t,r,i){return this.tilemapCache?this.tilemapCache.fetchAvailability(e,t,r,i):Promise.resolve("unknown")}async _fetchImageService(e){if(this.sourceJSON)return this.sourceJSON;const r={query:{f:"json",...this.parsedUrl.query},responseType:"json",signal:e},i=await t(this.parsedUrl.path,r);i.ssl&&(this.url=this.url?.replace(/^http:/i,"https:")),this.sourceJSON=i.data,this.read(i.data,{origin:"service",url:this.parsedUrl})}get hasOverriddenFetchTile(){return!this.fetchTile[j]}};e([p({readOnly:!0})],S.prototype,"capabilities",void 0),e([g("service","capabilities",["capabilities"])],S.prototype,"readCapabilities",null),e([p({json:{read:{source:"copyrightText"}}})],S.prototype,"copyright",void 0),e([p({readOnly:!0,type:c})],S.prototype,"heightModelInfo",void 0),e([p({type:String,json:{origins:{"web-scene":{read:!0,write:!0}},read:!1}})],S.prototype,"path",void 0),e([p({type:["show","hide"]})],S.prototype,"listMode",void 0),e([p({json:{read:!1,write:!1,origins:{service:{read:!1,write:!1},"portal-item":{read:!1,write:!1},"web-document":{read:!1,write:!1}}},readOnly:!0})],S.prototype,"minScale",void 0),e([p({json:{read:!1,write:!1,origins:{service:{read:!1,write:!1},"portal-item":{read:!1,write:!1},"web-document":{read:!1,write:!1}}},readOnly:!0})],S.prototype,"maxScale",void 0),e([p({json:{read:!1,write:!1,origins:{"web-document":{read:!1,write:!1}}}})],S.prototype,"opacity",void 0),e([p({type:["ArcGISTiledElevationServiceLayer"]})],S.prototype,"operationalLayerType",void 0),e([p()],S.prototype,"sourceJSON",void 0),e([p({json:{read:!1},value:"elevation",readOnly:!0})],S.prototype,"type",void 0),e([p(v)],S.prototype,"url",void 0),e([p()],S.prototype,"version",void 0),e([g("version",["currentVersion"])],S.prototype,"readVersion",null),S=e([n("esri.layers.ElevationLayer")],S);const j=Symbol("default-fetch-tile");S.prototype.fetchTile[j]=!0;const T=S;export{T as default};
|
|
2
|
+
import{__decorate as e}from"tslib";import t from"../request.js";import r from"../core/Error.js";import{releaseMaybe as i}from"../core/maybe.js";import{MultiOriginJSONSupportMixin as o}from"../core/MultiOriginJSONSupport.js";import{throwIfAbortError as a,throwIfAborted as s}from"../core/promiseUtils.js";import{objectToQuery as l}from"../core/urlUtils.js";import{property as p,subclass as n}from"../core/accessorSupport/decorators.js";import c from"../geometry/HeightModelInfo.js";import d from"./Layer.js";import{ArcGISCachedService as u}from"./mixins/ArcGISCachedService.js";import{ArcGISService as y}from"./mixins/ArcGISService.js";import{OperationalLayer as h}from"./mixins/OperationalLayer.js";import{PortalLayer as m}from"./mixins/PortalLayer.js";import{url as v}from"./support/commonProperties.js";import f from"./support/ElevationTileData.js";import{acquireDecoder as w}from"./support/LercDecoder.js";import{reader as g}from"../core/accessorSupport/decorators/reader.js";let S=class extends(u(y(h(m(o(d)))))){constructor(...e){super(...e),this.capabilities={operations:{supportsTileMap:!1}},this.copyright=null,this.heightModelInfo=null,this.path=null,this.minScale=void 0,this.maxScale=void 0,this.opacity=1,this.operationalLayerType="ArcGISTiledElevationServiceLayer",this.sourceJSON=null,this.type="elevation",this.url=null,this.version=null,this._lercDecoder=w()}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}destroy(){this._lercDecoder=i(this._lercDecoder)}readCapabilities(e,t){const r=t.capabilities&&t.capabilities.split(",").map(e=>e.toLowerCase().trim());if(!r)return{operations:{supportsTileMap:!1}};return{operations:{supportsTileMap:r.includes("tilemap")}}}get memoizedElevationQueryDependencies(){return[this.loadStatus,this.tileInfo,this.fullExtent,this.spatialReference]}readVersion(e,t){let r=t.currentVersion;return r||(r=9.3),r}load(e){const t=null!=e?e.signal:null;return this.addResolvingPromise(this.loadFromPortal({supportedTypes:["Image Service"],supportsData:!1,validateItem:e=>{if(e.typeKeywords)for(let t=0;t<e.typeKeywords.length;t++)if("elevation 3d layer"===e.typeKeywords[t].toLowerCase())return!0;throw new r("portal:invalid-layer-item-type","Invalid layer item type '${type}', expected '${expectedType}' ",{type:"Image Service",expectedType:"Image Service Elevation 3D Layer"})}},e).catch(a).then(()=>this._fetchImageService(t))),Promise.resolve(this)}async fetchTile(e,i,o,a){const s=a?.signal,l={responseType:"array-buffer",signal:s,useQueue:a?.useQueue,priority:a?.priority},p={noDataValue:a?.noDataValue,returnFileInfo:!0};await this.load(),await this._fetchTileAvailability(e,i,o,a);const n=await t(this.getTileUrl(e,i,o),l),c=await this._lercDecoder.decode(n.data,p,s);if(!c)throw new r("elevation-layer:tile-decode-failed","Failed to decode elevation tile data.");return new f({values:c.pixelData,width:c.width,height:c.height,noDataValue:c.noDataValue})}getTileUrl(e,t,r){const i=!this.capabilities.operations.supportsTileMap&&this.supportsBlankTile,o=l({...this.parsedUrl.query,blankTile:!i&&null});return`${this.parsedUrl.path}/tile/${e}/${t}/${r}${o?"?"+o:""}`}async queryElevation(e,t){const{query:r}=await import("./support/ElevationQuery.js");return s(t),r(this,e,t)}async createElevationSampler(e,t){const{createSampler:r}=await import("./support/ElevationQuery.js");return s(t),r(this,e,t)}_fetchTileAvailability(e,t,r,i){return this.tilemapCache?this.tilemapCache.fetchAvailability(e,t,r,i):Promise.resolve("unknown")}async _fetchImageService(e){if(this.sourceJSON)return this.sourceJSON;const r={query:{f:"json",...this.parsedUrl.query},responseType:"json",signal:e},i=await t(this.parsedUrl.path,r);i.ssl&&(this.url=this.url?.replace(/^http:/i,"https:")),this.sourceJSON=i.data,this.read(i.data,{origin:"service",url:this.parsedUrl})}get hasOverriddenFetchTile(){return!this.fetchTile[j]}};e([p({readOnly:!0})],S.prototype,"capabilities",void 0),e([g("service","capabilities",["capabilities"])],S.prototype,"readCapabilities",null),e([p({json:{read:{source:"copyrightText"}}})],S.prototype,"copyright",void 0),e([p({readOnly:!0,type:c})],S.prototype,"heightModelInfo",void 0),e([p({type:String,json:{origins:{"web-scene":{read:!0,write:!0}},read:!1}})],S.prototype,"path",void 0),e([p({type:["show","hide"]})],S.prototype,"listMode",void 0),e([p({json:{read:!1,write:!1,origins:{service:{read:!1,write:!1},"portal-item":{read:!1,write:!1},"web-document":{read:!1,write:!1}}},readOnly:!0})],S.prototype,"minScale",void 0),e([p({json:{read:!1,write:!1,origins:{service:{read:!1,write:!1},"portal-item":{read:!1,write:!1},"web-document":{read:!1,write:!1}}},readOnly:!0})],S.prototype,"maxScale",void 0),e([p({json:{read:!1,write:!1,origins:{"web-document":{read:!1,write:!1}}}})],S.prototype,"opacity",void 0),e([p({type:["ArcGISTiledElevationServiceLayer"]})],S.prototype,"operationalLayerType",void 0),e([p()],S.prototype,"sourceJSON",void 0),e([p({json:{read:!1},value:"elevation",readOnly:!0})],S.prototype,"type",void 0),e([p()],S.prototype,"memoizedElevationQueryDependencies",null),e([p(v)],S.prototype,"url",void 0),e([p()],S.prototype,"version",void 0),e([g("version",["currentVersion"])],S.prototype,"readVersion",null),S=e([n("esri.layers.ElevationLayer")],S);const j=Symbol("default-fetch-tile");S.prototype.fetchTile[j]=!0;const T=S;export{T as default};
|