@arcgis/core 5.1.0-next.57 → 5.1.0-next.59
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/applications/Components/SelectionOperation.d.ts +2 -2
- package/applications/Components/SelectionOperation.js +1 -1
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/04ea806b933d4dd41609.js +1 -0
- package/assets/esri/core/workers/chunks/{278eecd729bed2832702.js → 0622e238693c257abacb.js} +1 -1
- package/assets/esri/core/workers/chunks/{05bc675c029ed311427f.js → 155c741a9839d24f04a2.js} +1 -1
- package/assets/esri/core/workers/chunks/1ae4e43a399e1974f106.js +1 -0
- package/assets/esri/core/workers/chunks/1f8e22df08c2f5fbb8c8.js +1 -0
- package/assets/esri/core/workers/chunks/{2327b368673a974dee8b.js → 2339465190c9d5ede25f.js} +1 -1
- package/assets/esri/core/workers/chunks/23f6d24bf850bc3280ec.js +1 -0
- package/assets/esri/core/workers/chunks/2541ac6e0ed1184edc9b.js +1 -0
- package/assets/esri/core/workers/chunks/34207774bc371e95ba3c.js +1 -0
- package/assets/esri/core/workers/chunks/{01777e91cd4e0bf04fd0.js → 35217befc8f9882d139e.js} +1 -1
- package/assets/esri/core/workers/chunks/{40bcfc4f8efe7de7ec9d.js → 3de17e89973160b42923.js} +1 -1
- package/assets/esri/core/workers/chunks/{992e74570b76f3f9e52e.js → 48d289db3145ce6c02bb.js} +1 -1
- package/assets/esri/core/workers/chunks/4c73c2f4331351e2a50c.js +1 -0
- package/assets/esri/core/workers/chunks/{2757cf54656b5d318b11.js → 55a0b69cf034ac32fc25.js} +1 -1
- package/assets/esri/core/workers/chunks/{4d54beab8ae5ff31e7b0.js → 5a9f5a49dc68b42762bb.js} +1 -1
- package/assets/esri/core/workers/chunks/{7cec3252e3ee56424b9e.js → 5c6e5f22450dd0583074.js} +1 -1
- package/assets/esri/core/workers/chunks/{b39b4db86a1049f0b901.js → 6be9d00839002f24fafd.js} +1 -1
- package/assets/esri/core/workers/chunks/6c886f19875291d02407.js +1 -0
- package/assets/esri/core/workers/chunks/75e28458e08b0738b35a.js +2 -0
- package/assets/esri/core/workers/chunks/{c460ca93ed8e20d8b53a.js → 86a6dd19903fa5023cc7.js} +1 -1
- package/assets/esri/core/workers/chunks/{4afddb66242438b38df0.js → 8ccf2f65d8ed3c48ffff.js} +1 -1
- package/assets/esri/core/workers/chunks/{fcfaaced184f8da3e28d.js → 9b53aa2429573f1b977f.js} +1 -1
- package/assets/esri/core/workers/chunks/9d580b5bcd59857a5702.js +1405 -0
- package/assets/esri/core/workers/chunks/a37697ef360e2425768a.js +1 -0
- package/assets/esri/core/workers/chunks/{a787fe09d3df9d4254ba.js → ab3183f2327ff26e2b45.js} +1 -1
- package/assets/esri/core/workers/chunks/b0f2ce61d3cad413898e.js +1 -0
- package/assets/esri/core/workers/chunks/{53c149bca42595b7dd1e.js → bbdf27bc34fadbe8e6fe.js} +1 -1
- package/assets/esri/core/workers/chunks/be42fe0b7ba0e27030b2.js +1 -0
- package/assets/esri/core/workers/chunks/d0c3ab70f390cd579fed.js +1 -0
- package/assets/esri/core/workers/chunks/{5a573fa1012092328b88.js → d816d1a4220d827faf63.js} +1 -1
- package/assets/esri/core/workers/chunks/e26894655823849947f4.js +1 -0
- package/assets/esri/core/workers/chunks/e59f5dc8c85bcea66e98.js +1 -0
- package/assets/esri/core/workers/chunks/{ccf845ac0ac354507a25.js → ec1b2eb05410848081c9.js} +1 -1
- package/assets/esri/core/workers/chunks/{851dd71d28681d4eccfd.js → f7af90c5f9d371eb7009.js} +1 -1
- package/assets/esri/core/workers/chunks/fa6e1ad099b43a6f5501.js +1 -0
- package/assets/esri/core/workers/chunks/{4a6186001323b47c23a4.js → fee1d873127dca02459f.js} +1 -1
- package/chunks/GlobalIllumination.glsl.js +101 -0
- package/chunks/GlobalIlluminationBlur.glsl.js +68 -0
- package/chunks/ScreenSpaceShadowHighlight.glsl.js +6 -0
- package/chunks/ShadowCastAccumulate.glsl.js +1 -1
- package/chunks/ShadowHighlight.glsl.js +15 -8
- package/config.js +1 -1
- package/geometry/Mesh.js +1 -1
- package/geometry/support/polygonUtils.js +1 -1
- package/geometry/support/{triangulationUtils.js → triangulationUtilsDeprecated.js} +1 -1
- package/kernel.js +1 -1
- package/layers/support/SceneModification.js +1 -1
- package/networks/support/jsonTypes.d.ts +6 -0
- package/package.json +2 -2
- package/renderers/ClassBreaksRenderer.js +1 -1
- package/renderers/DictionaryRenderer.js +1 -1
- package/renderers/DotDensityRenderer.js +1 -1
- package/renderers/HeatmapRenderer.js +1 -1
- package/renderers/PieChartRenderer.js +1 -1
- package/renderers/Renderer.js +1 -1
- package/renderers/SimpleRenderer.js +1 -1
- package/renderers/UniqueValueRenderer.js +1 -1
- package/renderers/support/AttributeColorInfo.js +1 -1
- package/renderers/support/ClassBreakInfo.d.ts +6 -0
- package/renderers/support/ClassBreakInfo.js +1 -1
- package/renderers/support/UniqueValueClass.d.ts +12 -0
- package/renderers/support/UniqueValueClass.js +1 -1
- package/renderers/support/UniqueValueInfo.d.ts +12 -0
- package/renderers/support/UniqueValueInfo.js +1 -1
- package/renderers/visualVariables/ColorVariable.js +1 -1
- package/renderers/visualVariables/OpacityVariable.js +1 -1
- package/renderers/visualVariables/SizeVariable.js +1 -1
- package/renderers/visualVariables/VisualVariable.js +1 -1
- package/rest/networks/support/FunctionResult.d.ts +6 -0
- package/rest/networks/support/FunctionResult.js +1 -1
- package/support/revision.js +1 -1
- package/symbols/cim/CIMSymbolDrawHelper.js +1 -1
- package/views/2d/engine/vectorTiles/VTLPainter3D.js +1 -1
- package/views/2d/engine/webgl/GlyphMosaic.js +1 -1
- package/views/2d/engine/webgl/GlyphSource.js +1 -1
- package/views/2d/engine/webgl/mesh/templates/shapingUtils.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/labels/LabelMeshWriter.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/text/TextMeshWriter.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/text/TextShader.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/vectorTiles/VTLTechniqueFill.js +1 -1
- package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
- package/views/2d/engine/webgl/util/IntervalMatcher.js +1 -1
- package/views/2d/engine/webgl/util/MapMatcher.js +1 -1
- package/views/2d/layers/features/schema/processor/MatcherSchema.js +1 -1
- package/views/2d/layers/features/schema/processor/SimpleProcessorSchema.js +1 -1
- package/views/3d/FocusAreasView.js +1 -1
- package/views/3d/analysis/AreaMeasurement/support/MeasurementData.js +1 -1
- package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementCutFillController.js +1 -1
- package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementCutFillVisualization.js +1 -1
- package/views/3d/interactive/visualElements/MeasurementArrowVisualElement.js +1 -1
- package/views/3d/layers/GaussianSplatLayerView3D.js +1 -1
- package/views/3d/layers/Lyr3DWorker.js +1 -1
- package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DPolygonFillSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DWaterSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/extrudeUtils.js +1 -1
- package/views/3d/layers/graphics/extrudeUtilsDeprecated.js +2 -0
- package/views/3d/layers/graphics/tessellationUtils.js +2 -0
- package/views/3d/layers/i3s/PointCloudHighlights.js +1 -1
- package/views/3d/layers/i3s/PointCloudRenderer.js +1 -1
- package/views/3d/layers/i3s/PointCloudRendererNode.js +1 -1
- package/views/3d/layers/support/Tiles3DBVH.js +1 -1
- package/views/3d/support/gaussianSplatting/GaussianSplatDataStore.js +1 -1
- package/views/3d/support/gaussianSplatting/GaussianSplatIntersectionHandler.js +1 -1
- package/views/3d/support/gaussianSplatting/GaussianTile.js +1 -1
- package/views/3d/support/renderInfoUtils/line.js +1 -1
- package/views/3d/support/renderInfoUtils/polygon.js +1 -1
- package/views/3d/support/renderInfoUtils/polygonDeprecated.js +2 -0
- package/views/3d/terrain/OverlayRenderer.js +1 -1
- package/views/3d/terrain/TerrainRenderer.js +1 -1
- package/views/3d/terrain/TerrainSurface.js +1 -1
- package/views/3d/webgl/RenderNode.js +1 -1
- package/views/3d/webgl-engine/collections/Component/ComponentData.js +1 -1
- package/views/3d/webgl-engine/collections/Component/ComponentObject.js +1 -1
- package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/collections/Component/RenderGeometry.js +1 -1
- package/views/3d/webgl-engine/collections/Component/RenderSubmitSystem.js +1 -1
- package/views/3d/webgl-engine/core/renderPasses/RenderPass.js +1 -1
- package/views/3d/webgl-engine/core/renderPasses/RenderPassManager.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/output/ReadDepth.glsl.js +6 -5
- package/views/3d/webgl-engine/core/shaderLibrary/output/ReadDepthLastFrame.glsl.js +4 -0
- package/views/3d/webgl-engine/core/shaderLibrary/shading/EncodingColor.glsl.js +7 -0
- package/views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientLighting.glsl.js +6 -6
- package/views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js +93 -72
- package/views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRendering.glsl.js +46 -22
- package/views/3d/webgl-engine/core/shaderLibrary/shading/ReadGlobalIllumination.glsl.js +20 -0
- package/views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js +18 -13
- package/views/3d/webgl-engine/core/shaderLibrary/shading/ScreenSpaceReflections.glsl.js +23 -9
- package/views/3d/webgl-engine/core/shaderLibrary/shading/WaterColor.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/util/CloudsParallaxShading.glsl.js +1 -1
- package/views/3d/webgl-engine/effects/RenderPlugin.js +1 -1
- package/views/3d/webgl-engine/effects/RenderPluginManager.js +1 -1
- package/views/3d/webgl-engine/effects/emissive/emissions.js +2 -0
- package/views/3d/webgl-engine/effects/globalIllumination/BlueNoise.js +2 -0
- package/views/3d/webgl-engine/effects/globalIllumination/GlobalIllumination.js +2 -0
- package/views/3d/webgl-engine/effects/globalIllumination/GlobalIlluminationBlurTechnique.js +2 -0
- package/views/3d/webgl-engine/effects/globalIllumination/GlobalIlluminationTechnique.js +2 -0
- package/views/3d/webgl-engine/effects/globalIllumination/GlobalIlluminationTechniqueConfiguration.js +2 -0
- package/views/3d/webgl-engine/effects/highlight/ScreenSpaceShadowHighlight.glsl.js +2 -0
- package/views/3d/webgl-engine/effects/highlight/ScreenSpaceShadowHighlightRenderNode.js +2 -0
- package/views/3d/webgl-engine/effects/highlight/ScreenSpaceShadowHighlightTechnique.js +2 -0
- package/views/3d/webgl-engine/effects/highlight/ShadowHighlight.js +1 -1
- package/views/3d/webgl-engine/effects/laserlines/LaserLineRenderer.js +1 -1
- package/views/3d/webgl-engine/effects/ssao/SSAO.js +1 -1
- package/views/3d/webgl-engine/effects/transparency/OITBlend.js +1 -1
- package/views/3d/webgl-engine/lib/BindParameters.js +1 -1
- package/views/3d/webgl-engine/lib/Material.js +1 -1
- package/views/3d/webgl-engine/lib/RayIntersections.js +1 -1
- package/views/3d/webgl-engine/lib/RenderFeature.js +1 -1
- package/views/3d/webgl-engine/lib/Renderer.js +1 -1
- package/views/3d/webgl-engine/lib/ReprojectionUniforms.js +1 -1
- package/views/3d/webgl-engine/lib/lodRendering/LodComponentData.js +1 -1
- package/views/3d/webgl-engine/lib/lodRendering/LodLevel.js +1 -1
- package/views/3d/webgl-engine/lib/lodRendering/LodRenderer.js +1 -1
- package/views/3d/webgl-engine/materials/ColorMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/MeasurementArrowMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/PathMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/PathTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/materials/PatternMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/WaterMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/WaterTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/materials/renderers/MergedRenderer.js +1 -1
- package/views/3d/webgl-engine/parts/RenderView.js +1 -1
- package/views/3d/webgl-engine/shaders/DefaultMaterialTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/shaders/GaussianSplatTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/shaders/GlobalIllumination.glsl.js +2 -0
- package/views/3d/webgl-engine/shaders/GlobalIlluminationBlur.glsl.js +2 -0
- package/views/3d/webgl-engine/shaders/MeasurementArrowTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/MeasurementArrowTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/shaders/ReceiveShadowsConfiguration.js +1 -1
- package/views/3d/webgl-engine/shaders/TerrainTechniqueConfiguration.js +1 -1
- package/views/3d/webgl.js +1 -1
- package/views/selection/SelectionOperation.d.ts +190 -0
- package/views/selection/SelectionOperation.js +2 -0
- package/views/selection/types.d.ts +146 -1
- package/widgets/support/SelectionToolbar/SelectionToolbarViewModel.js +1 -1
- package/assets/esri/core/workers/chunks/009db7b459b18f6a668b.js +0 -1
- package/assets/esri/core/workers/chunks/0fc60b4c44c4e865b699.js +0 -2
- package/assets/esri/core/workers/chunks/34484afe767d60f85982.js +0 -1
- package/assets/esri/core/workers/chunks/55bb5b7817c2963c8bfa.js +0 -1
- package/assets/esri/core/workers/chunks/572fcd33ae3648ed4f9c.js +0 -1
- package/assets/esri/core/workers/chunks/66a4d764937918a2779f.js +0 -1
- package/assets/esri/core/workers/chunks/6b56c8ba978ec6edd6b8.js +0 -1
- package/assets/esri/core/workers/chunks/9806cc96414065ae0afe.js +0 -1
- package/assets/esri/core/workers/chunks/9b365a6242b0287f8727.js +0 -1
- package/assets/esri/core/workers/chunks/a029db48079af4b5cccd.js +0 -1
- package/assets/esri/core/workers/chunks/ea068f75397c3b3337ec.js +0 -1034
- package/assets/esri/core/workers/chunks/ec91d5081f423755cb07.js +0 -1
- package/assets/esri/core/workers/chunks/f9fe89ced41b49608667.js +0 -1
- package/assets/esri/core/workers/chunks/fce30184f354fb7d11af.js +0 -1
- package/widgets/support/Selector2D/SelectionOperation.js +0 -2
- /package/assets/esri/core/workers/chunks/{0fc60b4c44c4e865b699.js.LICENSE.txt → 75e28458e08b0738b35a.js.LICENSE.txt} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[88,926],{69540(e,t,i){i.d(t,{OU:()=>h,Pw:()=>c});var s=i(5482),r=i(69622),n=(i(44208),i(4718)),o=(i(53966),i(97768)),a=i(88620),l=i(64108);const u=Symbol("ClonableMixin"),h=e=>{var t;const i=e;let r=class extends i{constructor(){super(...arguments),this[t]=!0}static{t=u}clone(e){const t=(0,a.oY)(this);(0,o.Lw)(t,"unable to clone instance of non-accessor class");const i=t.metadata,s=t.store,r={},l=new Map;for(const t in i){const o=i[t],a=s?.originOf(t),u=o.clonable;if(o.readOnly||!1===u||7!==a&&0!==a&&5!==a&&4!==a)continue;const h=this[t];let c=null;if("function"==typeof u)c=u(h,e);else if("reference"===u)c=h;else if(c=(0,n.TU)(h,e),null!=h&&null==c)continue;0===a?l.set(t,c):r[t]=c}const u=new(0,Object.getPrototypeOf(this).constructor)(r);if(l.size){const e=(0,a.oY)(u)?.store;if(e)for(const[t,i]of l)e.set(t,i,0)}return u}};return r=(0,s.Cg)([(0,l.$)("esri.core.Clonable")],r),r},c=h(r.A)},66344(e,t,i){i.d(t,{q:()=>a});const s=!!(0,i(44208).A)("esri-tests-disable-gpu-memory-measurements");Symbol.iterator;class r{get size(){return this._size}constructor(e=10485760,t=.3){this._maxSize=e,this._maxClientSizeRatio=t,this._db=new Map,this._size=0,this._hit=0,this._miss=0,this._clients=new Map,this._sizeLimits=new Map}destroy(){this.clearAll(),this._sizeLimits.clear(),this._clients.clear(),this._db.clear()}register(e){this._clients.set(e.id.slice(0,-1),e)}deregister(e){this.clear(e),this._sizeLimits.delete(e),this._clients.delete(e.id.slice(0,-1))}get maxSize(){return this._maxSize}set maxSize(e){this._maxSize=Math.max(e,-1),this._checkSize()}get _maxClientSize(){return this._maxSize*this._maxClientSizeRatio}getSize(e,t){const i=this._db.get(e.id+t);return i?.size??0}put(e,t,i,r,o){t=e.id+t;const a=this._db.get(t);if(a&&(this._size-=a.size,e.size-=a.size,this._db.delete(t),a.entry!==i&&this._notifyRemove(t,a.entry,a.size,0)),r>this._maxSize)return void this._notifyRemove(t,i,r,0);if(void 0===i)return void console.warn("Refusing to cache undefined entry ");if(!r||r<0)return s||console.warn(`Refusing to cache entry with size ${r} for key ${t}`),void this._notifyRemove(t,i,0,0);const l=1+Math.max(o,-4)- -3;this._db.set(t,new n(i,r,l)),this._size+=r,e.size+=r,this._checkSize()}updateSize(e,t){t=e.id+t;const i=this._db.get(t);if(!i)return;this._size-=i.size,e.size-=i.size;let s=i.entry.usedMemory;for(;s>this._maxSize;){const e=this._notifyRemove(t,i.entry,s,1);if(!(null!=e&&e>0))return void this._db.delete(t);s=e}i.size=s,this._size+=s,e.size+=s,this._checkSize()}pop(e,t){t=e.id+t;const i=this._db.get(t);if(i)return this._size-=i.size,e.size-=i.size,this._db.delete(t),++this._hit,i.entry;++this._miss}get(e,t){t=e.id+t;const i=this._db.get(t);if(void 0!==i)return this._db.delete(t),i.lives=i.lifetime,this._db.set(t,i),++this._hit,i.entry;++this._miss}peek(e,t){const i=this._db.get(e.id+t);return i?++this._hit:++this._miss,i?.entry}get performanceInfo(){const e={Size:Math.round(this._size/1048576)+"/"+Math.round(this._maxSize/1048576)+"MB","Hit rate":Math.round(100*this._getHitRate())+"%",Entries:this._db.size.toString()},t={},i=new Array;this._db.forEach((e,s)=>{const r=e.lifetime;i[r]=(i[r]||0)+e.size,this._clients.forEach(i=>{const{id:r,name:n}=i;if(s.startsWith(r)){const i=t[n]||0;t[n]=i+e.size}})});const s={};this._clients.forEach(e=>{const i=e.name;if("hitRate"in e&&"number"==typeof e.hitRate&&!isNaN(e.hitRate)&&e.hitRate>0){const r=t[i]||0;t[i]=r,s[i]=Math.round(100*e.hitRate)+"%"}else s[i]="0%"});const r=Object.keys(t);r.sort((e,i)=>t[i]-t[e]),r.forEach(i=>e[i]=Math.round(t[i]/2**20)+"MB / "+s[i]);for(let t=i.length-1;t>=0;--t){const s=i[t];s&&(e["Priority "+(t+-3-1)]=Math.round(s/this._size*100)+"%")}return e}resetStats(){this._hit=this._miss=0,this._clients.forEach(e=>e.resetHitRate())}clear(e){const t=e.id;this._db.forEach((e,i)=>{i.startsWith(t)&&(this._size-=e.size,this._db.delete(i),this._notifyRemove(i,e.entry,e.size,0))}),e.size=0}clearAll(){this._db.forEach((e,t)=>this._notifyRemove(t,e.entry,e.size,0)),this._clients.forEach(e=>e.size=0),this._size=0,this._db.clear()}*values(e){for(const[t,i]of this._db)t.startsWith(e.id)&&(yield i.entry)}_getHitRate(){return this._hit/(this._hit+this._miss)}_notifyRemove(e,t,i,s){const r=this._clients.get(e.split(o)[0])?.removeFunc,n=r?.(t,s,i);return"number"==typeof n?n:null}_checkSize(){this._sizeLimits.forEach((e,t)=>this._checkSizeLimits(e,t)),this._clients.forEach(e=>this._checkSizeLimits(this._maxClientSize,e)),this._checkSizeLimits(this.maxSize)}setMaxClientSize(e,t){null==t||t<=0?this._sizeLimits.delete(e):this._sizeLimits.set(e,t)}_checkSizeLimits(e,t){const i=t??this;if(i.size<=e)return;const s=t?.id;let r=!0;for(;r;){r=!1;for(const[n,a]of this._db)if(0===a.lifetime&&(!s||n.startsWith(s))){const s=t??this._clients.get(n.split(o)[0]);if(this._purgeItem(n,a,s),i.size<=.9*e)return;r||=this._db.has(n)}}for(const[r,n]of this._db)if(!s||r.startsWith(s)){const s=t??this._clients.get(r.split(o)[0]);if(this._purgeItem(r,n,s),i.size<=.9*e)return}}_purgeItem(e,t,i){if(this._db.delete(e),t.lives<=1){this._size-=t.size,i&&(i.size-=t.size);const s=this._notifyRemove(e,t.entry,t.size,1);null!=s&&s>0&&(this._size+=s,i&&(i.size+=s),t.lives=t.lifetime,t.size=s,this._db.set(e,t))}else--t.lives,this._db.set(e,t)}}new r(0);class n{constructor(e,t,i){this.entry=e,this.size=t,this.lifetime=i,this.lives=i}}const o=":";class a{constructor(e,t){this.removeFunc=t,this.id="",this.name="",this.size=0,this._storage=new r(e,1),this._storage.register(this)}destroy(){this._storage.deregister(this),this._storage.destroy()}put(e,t,i=1){this._storage.put(this,e,t,i,1)}pop(e){return this._storage.pop(this,e)}get(e){return this._storage.get(this,e)}clear(){this._storage.clearAll()}get maxSize(){return this._storage.maxSize}set maxSize(e){this._storage.maxSize=e}resetHitRate(){}}},60999(e,t,i){i.d(t,{DZ:()=>p,Ke:()=>f,Tj:()=>h,UT:()=>m,aD:()=>y,jJ:()=>u});var s=i(5482),r=i(69622),n=i(97768),o=i(17676),a=i(10107),l=i(64108);function u(e,t,i){return(0,o.Lx)(e.map((e,s)=>t.apply(i,[e,s])))}async function h(e,t,i){return(await(0,o.Lx)(e.map((e,s)=>t.apply(i,[e,s])))).map(e=>e.value)}function c(e){return{ok:!0,value:e}}function d(e){return{ok:!1,error:e}}async function f(e){if(null==e)return{ok:!1,error:new Error("no promise provided")};try{return c(await e)}catch(e){return d(e)}}async function p(e){try{return c(await e)}catch(e){return(0,o.QP)(e),d(e)}}function m(e,t){return new _(e,t)}let _=class extends r.A{get value(){return null!=(e=this._result)&&!0===e.ok?e.value:null;var e}get error(){return null!=(e=this._result)&&!1===e.ok?e.error:null;var e}get finished(){return null!=this._result}constructor(e,t){super({}),this._result=null,this._abortHandle=null,this.abort=()=>{this._abortController=(0,n.DC)(this._abortController)},this.remove=this.abort,this._abortController=new AbortController;const{signal:i}=this._abortController;this.promise=e(i),this.promise.then(e=>{this._result=c(e),this._cleanup()},e=>{this._result=d(e),this._cleanup()}),this._abortHandle=(0,o.u7)(t,this.abort)}normalizeCtorArgs(){return{}}destroy(){this.abort()}_cleanup(){this._abortHandle=(0,n.xt)(this._abortHandle),this._abortController=null}};(0,s.Cg)([(0,a.MZ)()],_.prototype,"value",null),(0,s.Cg)([(0,a.MZ)()],_.prototype,"error",null),(0,s.Cg)([(0,a.MZ)()],_.prototype,"finished",null),(0,s.Cg)([(0,a.MZ)()],_.prototype,"promise",void 0),(0,s.Cg)([(0,a.MZ)()],_.prototype,"_result",void 0),_=(0,s.Cg)([(0,l.$)("esri.core.asyncUtils.ReactiveTask")],_);class y{constructor(){this._sequence=Promise.resolve()}async acquire(){let e;this._sequence=new Promise(t=>{e=this._sequence.then(()=>t,()=>t)});const t=await e;return{[Symbol.dispose]:t}}async run(e){const t={stack:[],error:void 0,hasError:!1};try{return(0,s.mS)(t,await this.acquire(),!1),await e()}catch(e){t.error=e,t.hasError=!0}finally{(0,s.hk)(t)}}}},75503(e,t,i){i.d(t,{wq:()=>a});var s=i(4576),r=i(21818),n=(i(44208),i(15142)),o=i(11006);class a{constructor(e=9,t){this._compareMinX=d,this._compareMinY=f,this._toBBox=e=>e,this._maxEntries=Math.max(4,e||9),this._minEntries=Math.max(2,Math.ceil(.4*this._maxEntries)),t&&("function"==typeof t?this._toBBox=t:this._initFormat(t)),this.clear()}destroy(){this.clear(),b.prune(),w.prune(),C.prune(),S.prune()}all(e){l(this._data,e)}search(e,t){let i=this._data;const s=this._toBBox;if(v(e,i))for(b.clear();i;){for(let r=0,n=i.children.length;r<n;r++){const n=i.children[r],o=i.leaf?s(n):n;v(e,o)&&(i.leaf?t(n):g(e,o)?l(n,t):b.push(n))}i=b.pop()}}collides(e){let t=this._data;const i=this._toBBox;if(!v(e,t))return!1;for(b.clear();t;){for(let s=0,r=t.children.length;s<r;s++){const r=t.children[s],n=t.leaf?i(r):r;if(v(e,n)){if(t.leaf||g(e,n))return!0;b.push(r)}}t=b.pop()}return!1}load(e){if(!e.length)return this;if(e.length<this._minEntries){for(let t=0,i=e.length;t<i;t++)this.insert(e[t]);return this}let t=this._build(e.slice(),0,e.length-1,0);if(this._data.children.length)if(this._data.height===t.height)this._splitRoot(this._data,t);else{if(this._data.height<t.height){const e=this._data;this._data=t,t=e}this._insert(t,this._data.height-t.height-1,!0)}else this._data=t;return this}insert(e){return e&&this._insert(e,this._data.height-1),this}clear(){return this._data=new F([]),this}remove(e){if(!e)return this;let t,i=this._data,n=null,o=0,a=!1;const l=this._toBBox(e);for(C.clear(),S.clear();i||C.length>0;){if(i||(i=C.pop(),n=C.data[C.length-1],o=S.pop()??0,a=!0),i.leaf&&(t=(0,s.qh)(i.children,(0,r.z)(e),i.children.length,i.indexHint),-1!==t))return i.children.splice(t,1),C.push(i),this._condense(C),this;a||i.leaf||!g(i,l)?n?(o++,i=n.children[o],a=!1):i=null:(C.push(i),S.push(o),o=0,n=i,i=i.children[0])}return this}toJSON(){return this._data}fromJSON(e){return this._data=e,this}_build(e,t,i,s){const r=i-t+1;let n=this._maxEntries;if(r<=n){const s=new F(e.slice(t,i+1));return u(s,this._toBBox),s}s||(s=Math.ceil(Math.log(r)/Math.log(n)),n=Math.ceil(r/n**(s-1)));const o=new T([]);o.height=s;const a=Math.ceil(r/n),l=a*Math.ceil(Math.sqrt(n));x(e,t,i,l,this._compareMinX);for(let r=t;r<=i;r+=l){const t=Math.min(r+l-1,i);x(e,r,t,a,this._compareMinY);for(let i=r;i<=t;i+=a){const r=Math.min(i+a-1,t);o.children.push(this._build(e,i,r,s-1))}}return u(o,this._toBBox),o}_insert(e,t,i){const s=this._toBBox,r=i?e:s(e);C.clear();const n=function(e,t,i,s){for(;s.push(t),!0!==t.leaf&&s.length-1!==i;){let i,s=1/0,r=1/0;for(let n=0,o=t.children.length;n<o;n++){const o=t.children[n],a=p(o),l=_(e,o)-a;l<r?(r=l,s=a<s?a:s,i=o):l===r&&a<s&&(s=a,i=o)}t=i||t.children[0]}return t}(r,this._data,t,C);for(n.children.push(e),c(n,r);t>=0&&C.data[t].children.length>this._maxEntries;)this._split(C,t),t--;!function(e,t,i){for(let s=i;s>=0;s--)c(t.data[s],e)}(r,C,t)}_split(e,t){const i=e.data[t],s=i.children.length,r=this._minEntries;this._chooseSplitAxis(i,r,s);const n=this._chooseSplitIndex(i,r,s);if(!n)return;const o=i.children.splice(n,i.children.length-n),a=i.leaf?new F(o):new T(o);a.height=i.height,u(i,this._toBBox),u(a,this._toBBox),t?e.data[t-1].children.push(a):this._splitRoot(i,a)}_splitRoot(e,t){this._data=new T([e,t]),this._data.height=e.height+1,u(this._data,this._toBBox)}_chooseSplitIndex(e,t,i){let s,r,n;s=r=1/0;for(let o=t;o<=i-t;o++){const t=h(e,0,o,this._toBBox),a=h(e,o,i,this._toBBox),l=y(t,a),u=p(t)+p(a);l<s?(s=l,n=o,r=u<r?u:r):l===s&&u<r&&(r=u,n=o)}return n}_chooseSplitAxis(e,t,i){const s=e.leaf?this._compareMinX:d,r=e.leaf?this._compareMinY:f;this._allDistMargin(e,t,i,s)<this._allDistMargin(e,t,i,r)&&e.children.sort(s)}_allDistMargin(e,t,i,s){e.children.sort(s);const r=this._toBBox,n=h(e,0,t,r),o=h(e,i-t,i,r);let a=m(n)+m(o);for(let s=t;s<i-t;s++){const t=e.children[s];c(n,e.leaf?r(t):t),a+=m(n)}for(let s=i-t-1;s>=t;s--){const t=e.children[s];c(o,e.leaf?r(t):t),a+=m(o)}return a}_condense(e){for(let t=e.length-1;t>=0;t--){const i=e.data[t];if(0===i.children.length)if(t>0){const r=e.data[t-1],n=r.children;n.splice((0,s.qh)(n,i,n.length,r.indexHint),1)}else this.clear();else u(i,this._toBBox)}}_initFormat(e){const t=["return a"," - b",";"];this._compareMinX=new Function("a","b",t.join(e[0])),this._compareMinY=new Function("a","b",t.join(e[1])),this._toBBox=new Function("a","return {minX: a"+e[0]+", minY: a"+e[1]+", maxX: a"+e[2]+", maxY: a"+e[3]+"};")}}function l(e,t){let i=e;for(w.clear();i;){if(!0===i.leaf)for(const e of i.children)t((0,r.z)(e));else w.pushArray(i.children);i=w.pop()??null}}function u(e,t){h(e,0,e.children.length,t,e)}function h(e,t,i,s,r){r||(r=new F([])),r.minX=1/0,r.minY=1/0,r.maxX=-1/0,r.maxY=-1/0;for(let n,o=t;o<i;o++)n=e.children[o],c(r,e.leaf?s(n):n);return r}function c(e,t){e.minX=Math.min(e.minX,t.minX),e.minY=Math.min(e.minY,t.minY),e.maxX=Math.max(e.maxX,t.maxX),e.maxY=Math.max(e.maxY,t.maxY)}function d(e,t){return e.minX-t.minX}function f(e,t){return e.minY-t.minY}function p(e){return(e.maxX-e.minX)*(e.maxY-e.minY)}function m(e){return e.maxX-e.minX+(e.maxY-e.minY)}function _(e,t){return(Math.max(t.maxX,e.maxX)-Math.min(t.minX,e.minX))*(Math.max(t.maxY,e.maxY)-Math.min(t.minY,e.minY))}function y(e,t){const i=Math.max(e.minX,t.minX),s=Math.max(e.minY,t.minY),r=Math.min(e.maxX,t.maxX),n=Math.min(e.maxY,t.maxY);return Math.max(0,r-i)*Math.max(0,n-s)}function g(e,t){return e.minX<=t.minX&&e.minY<=t.minY&&t.maxX<=e.maxX&&t.maxY<=e.maxY}function v(e,t){return t.minX<=e.maxX&&t.minY<=e.maxY&&t.maxX>=e.minX&&t.maxY>=e.minY}function x(e,t,i,s,r){const n=[t,i];for(;n.length;){const t=n.pop(),i=n.pop();if(t-i<=s)continue;const a=i+Math.ceil((t-i)/s/2)*s;(0,o.q)(e,a,i,t,r),n.push(i,a,a,t)}}const b=new n.A,w=new n.A,C=new n.A,S=new n.A({deallocator:void 0});class I{constructor(){this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0}}class M extends I{constructor(){super(...arguments),this.height=1,this.indexHint=new s.vW}}class F extends M{constructor(e){super(),this.children=e,this.leaf=!0}}class T extends M{constructor(e){super(),this.children=e,this.leaf=!1}}},36708(e,t,i){i.d(t,{C_:()=>d,OH:()=>m,Vh:()=>_,on:()=>c,pc:()=>y,wB:()=>l,z7:()=>u});var s=i(37955),r=i(36563),n=i(97768),o=i(17676),a=i(14012);function l(e,t,i={}){return h(e,t,i,f)}function u(e,t,i={}){return h(e,t,i,p)}function h(e,t,i={},s){let r=null;const o=i.once?(e,i)=>{s(e)&&((0,n.xt)(r),t(e,i))}:(e,i)=>{s(e)&&t(e,i)};if(r=(0,a.Cn)(e,o,i.sync,i.equals),i.initial){const t=e();o(t,t)}return r}function c(e,t,i,o={}){let a=null,u=null,h=null;function c(){a&&u&&(u.remove(),o.onListenerRemove?.(a),a=null,u=null)}function d(e){o.once&&o.once&&(0,n.xt)(h),i(e)}const f=l(e,(e,i)=>{c(),(0,s.wb)(e)&&(a=e,u=(0,s.on)(e,t,d),o.onListenerAdd?.(e))},{sync:o.sync,initial:!0});return h=(0,r.hA)(()=>{f.remove(),c()}),h}function d(e,t){return function(e,t,i){if((0,o.G4)(i))return Promise.reject((0,o.NK)());const s=e();if(t?.(s))return Promise.resolve(s);let a=null;function l(){a=(0,n.xt)(a)}return new Promise((s,n)=>{a=(0,r.vE)([(0,o.u7)(i,()=>{l(),n((0,o.NK)())}),h(e,e=>{l(),s(e)},{sync:!1,once:!0},t??f)])})}(e,p,t)}function f(e){return!0}function p(e){return!!e}i(80559);const m={sync:!0},_={initial:!0},y={sync:!0,initial:!0}},60408(e,t,i){function s(e){return void 0!==e.xmin&&void 0!==e.ymin&&void 0!==e.xmax&&void 0!==e.ymax}function r(e){return void 0!==e.points}function n(e){return void 0!==e.x&&void 0!==e.y}function o(e){return void 0!==e.paths||void 0!==e.curvePaths}function a(e){return void 0!==e.rings||void 0!==e.curveRings}function l(e){return"object"==typeof e&&"vertexAttributes"in e}function u(e){return e?n(e)?"esriGeometryPoint":o(e)?"esriGeometryPolyline":a(e)?"esriGeometryPolygon":s(e)?"esriGeometryEnvelope":r(e)?"esriGeometryMultipoint":null:null}function h(e){return null!=e&&("hasZ"in e&&e.hasZ||"z"in e&&null!=e.z)}function c(e){return null!=e&&("hasM"in e&&e.hasM||"m"in e&&null!=e.m)}i.d(t,{$B:()=>u,Bi:()=>a,Pv:()=>h,Rg:()=>o,U9:()=>r,W0:()=>c,ZC:()=>s,fT:()=>n,uW:()=>l})},65864(e,t,i){i.d(t,{rS:()=>h,xD:()=>d});var s=i(5443),r=i(91075),n=i(48526),o=i(86738),a=i(39829),l=i(82799),u=i(60408);function h(e){return null==e?null:e instanceof r.A?e:(0,u.fT)(e)?o.A.fromJSON(e):(0,u.Rg)(e)?l.A.fromJSON(e):(0,u.Bi)(e)?a.A.fromJSON(e):(0,u.U9)(e)?n.A.fromJSON(e):(0,u.ZC)(e)?s.A.fromJSON(e):null}const c={esriGeometryPoint:o.A,esriGeometryPolyline:l.A,esriGeometryPolygon:a.A,esriGeometryEnvelope:s.A,esriGeometryMultipoint:n.A,esriGeometryMultiPatch:a.A};function d(e){return e&&c[e]||null}},50498(e,t,i){i.d(t,{Ye:()=>c,gy:()=>h,iI:()=>f,yR:()=>d});var s=i(66552),r=i(5443),n=i(91075),o=i(48526),a=i(86738),l=i(39829),u=i(82799);const h=(0,s.O)()({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon"}),c=(0,s.O)()({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryEnvelope:"extent",mesh:"mesh"}),d={base:n.A,key:"type",typeMap:{extent:r.A,multipoint:o.A,point:a.A,polyline:u.A,polygon:l.A}},f=new s.J({esriGeometryBezier3Curve:"cubic-bezier",esriGeometryCircularArc:"circular-arc",esriGeometryEllipticArc:"elliptic-arc"},{ignoreUnknown:!0})},6518(e,t,i){i.d(t,{F:()=>a});var s=i(44208),r=i(75503),n=i(19419);const o={minX:0,minY:0,maxX:0,maxY:0};class a{constructor(){this._indexInvalid=!1,this._boundsToLoad=[],this._boundsById=new Map,this._idByBounds=new Map,this._index=new r.wq(9,(0,s.A)("esri-csp-restrictions")?e=>({minX:e[0],minY:e[1],maxX:e[2],maxY:e[3]}):["[0]","[1]","[2]","[3]"]),this._loadIndex=()=>{if(this._indexInvalid){const e=new Array(this._idByBounds.size);let t=0;this._idByBounds.forEach((i,s)=>{e[t++]=s}),this._indexInvalid=!1,this._index.clear(),this._index.load(e)}else this._boundsToLoad.length&&(this._index.load(Array.from(new Set(this._boundsToLoad.filter(e=>this._idByBounds.has(e))))),this._boundsToLoad.length=0)}}get fullBounds(){if(!this._boundsById.size)return null;const e=(0,n.Ie)();for(const t of this._boundsById.values())t&&(e[0]=Math.min(t[0],e[0]),e[1]=Math.min(t[1],e[1]),e[2]=Math.max(t[2],e[2]),e[3]=Math.max(t[3],e[3]));return e}get valid(){return!this._indexInvalid}clear(){this._indexInvalid=!1,this._boundsToLoad.length=0,this._boundsById.clear(),this._idByBounds.clear(),this._index.clear()}delete(e){const t=this._boundsById.get(e);this._boundsById.delete(e),t&&(this._idByBounds.delete(t),this._indexInvalid||this._index.remove(t))}forEachInBounds(e,t){this._loadIndex(),function(e,t,i){(function(e){o.minX=e[0],o.minY=e[1],o.maxX=e[2],o.maxY=e[3]})(t),e.search(o,i)}(this._index,e,e=>t(this._idByBounds.get(e)))}get(e){return this._boundsById.get(e)}has(e){return this._boundsById.has(e)}invalidateIndex(){this._indexInvalid||(this._indexInvalid=!0,this._boundsToLoad.length=0)}set(e,t){if(!this._indexInvalid){const t=this._boundsById.get(e);t&&(this._index.remove(t),this._idByBounds.delete(t))}this._boundsById.set(e,t),t&&(this._idByBounds.set(t,e),this._indexInvalid||(this._boundsToLoad.push(t),this._boundsToLoad.length>5e4&&this._loadIndex()))}}},39357(e,t,i){i.d(t,{A:()=>a});var s,r=i(5482),n=i(25482),o=i(91429);let a=s=class extends n.o{constructor(e){super(e),this.name=null,this.code=null}clone(){return new s({name:this.name,code:this.code})}};(0,r.Cg)([(0,o.MZ)({type:String,json:{write:{isRequired:!0}}})],a.prototype,"name",void 0),(0,r.Cg)([(0,o.MZ)({type:[String,Number],json:{write:{isRequired:!0}}})],a.prototype,"code",void 0),a=s=(0,r.Cg)([(0,o.$K)("esri.layers.support.CodedValue")],a)},53177(e,t,i){i.d(t,{A:()=>h});var s,r=i(5482),n=i(4718),o=i(91429),a=i(39357),l=i(76357),u=i(93223);let h=class extends l.A{static{s=this}constructor(e){super(e),this.codedValues=null,this.type="coded-value"}getName(e){let t=null;if(this.codedValues){const i=String(e);this.codedValues.some(e=>(String(e.code)===i&&(t=e.name),!!t))}return t}clone(){return new s({codedValues:(0,n.o8)(this.codedValues),name:this.name})}};(0,r.Cg)([(0,o.MZ)({type:[a.A],json:{write:{isRequired:!0}}})],h.prototype,"codedValues",void 0),(0,r.Cg)([(0,u.e)({codedValue:"coded-value"})],h.prototype,"type",void 0),h=s=(0,r.Cg)([(0,o.$K)("esri.layers.support.CodedValueDomain")],h)},76357(e,t,i){i.d(t,{A:()=>u});var s=i(5482),r=i(66552),n=i(25482),o=i(91429),a=i(93223);const l=new r.J({inherited:"inherited",codedValue:"coded-value",range:"range"});let u=class extends n.o{constructor(e){super(e),this.name=null,this.type=null}};(0,s.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],u.prototype,"name",void 0),(0,s.Cg)([(0,a.e)(l),(0,o.MZ)({json:{write:{isRequired:!0}}})],u.prototype,"type",void 0),u=(0,s.Cg)([(0,o.$K)("esri.layers.support.Domain")],u)},20437(e,t,i){i.d(t,{A:()=>p});var s,r=i(5482),n=i(66552),o=i(25482),a=i(91429),l=i(56507),u=i(8631),h=i(98453),c=i(36005),d=i(93223);const f=new n.J({binary:"binary",coordinate:"coordinate",countOrAmount:"count-or-amount",currency:"currency",dateAndTime:"date-and-time",description:"description",emailAddress:"email-address",locationOrPlaceName:"location-or-place-name",measurement:"measurement",nameOrTitle:"name-or-title",none:"none",orderedOrRanked:"ordered-or-ranked",percentageOrRatio:"percentage-or-ratio",phoneNumber:"phone-number",typeOrCategory:"type-or-category",uniqueIdentifier:"unique-identifier"});let p=class extends o.o{static{s=this}constructor(e){super(e),this.alias=null,this.defaultValue=void 0,this.description=null,this.domain=null,this.editable=!0,this.length=void 0,this.name=null,this.nullable=!0,this.type=null,this.valueType=null,this.visible=!0}readDescription(e,{description:t}){let i=null;try{i=t?JSON.parse(t):null}catch(e){}return i?.value??null}readValueType(e,{description:t}){let i=null;try{i=t?JSON.parse(t):null}catch(e){}return i?f.fromJSON(i.fieldValueType):null}clone(){return new s({alias:this.alias,defaultValue:this.defaultValue,description:this.description,domain:this.domain?.clone()??null,editable:this.editable,length:this.length,name:this.name,nullable:this.nullable,type:this.type,valueType:this.valueType,visible:this.visible})}};(0,r.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],p.prototype,"alias",void 0),(0,r.Cg)([(0,a.MZ)({type:[String,Number],json:{write:{allowNull:!0}}})],p.prototype,"defaultValue",void 0),(0,r.Cg)([(0,a.MZ)()],p.prototype,"description",void 0),(0,r.Cg)([(0,c.w)("description")],p.prototype,"readDescription",null),(0,r.Cg)([(0,a.MZ)({types:u.g,json:{read:{reader:u.r},write:!0}})],p.prototype,"domain",void 0),(0,r.Cg)([(0,a.MZ)({type:Boolean,json:{write:!0}})],p.prototype,"editable",void 0),(0,r.Cg)([(0,a.MZ)({type:l.jz,json:{write:{overridePolicy:e=>({enabled:Number.isFinite(e)})}}})],p.prototype,"length",void 0),(0,r.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],p.prototype,"name",void 0),(0,r.Cg)([(0,a.MZ)({type:Boolean,json:{write:!0}})],p.prototype,"nullable",void 0),(0,r.Cg)([(0,d.e)(h.m)],p.prototype,"type",void 0),(0,r.Cg)([(0,a.MZ)()],p.prototype,"valueType",void 0),(0,r.Cg)([(0,c.w)("valueType",["description"])],p.prototype,"readValueType",null),(0,r.Cg)([(0,a.MZ)({type:Boolean,json:{read:!1}})],p.prototype,"visible",void 0),p=s=(0,r.Cg)([(0,a.$K)("esri.layers.support.Field")],p)},41628(e,t,i){i.d(t,{A:()=>l});var s,r=i(5482),n=i(91429),o=i(76357),a=i(93223);let l=class extends o.A{static{s=this}constructor(e){super(e),this.maxValue=null,this.minValue=null,this.type="range"}clone(){return new s({maxValue:this.maxValue,minValue:this.minValue,name:this.name})}};(0,r.Cg)([(0,n.MZ)({json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range?.[1]},write:{enabled:!1,overridePolicy(){return{enabled:null!=this.maxValue&&null==this.minValue}},target:"range",writer(e,t,i){t[i]=[this.minValue||0,e]},isRequired:!0}}})],l.prototype,"maxValue",void 0),(0,r.Cg)([(0,n.MZ)({json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range?.[0]},write:{target:"range",writer(e,t,i){t[i]=[e,this.maxValue||0]},isRequired:!0}}})],l.prototype,"minValue",void 0),(0,r.Cg)([(0,a.e)({range:"range"})],l.prototype,"type",void 0),l=s=(0,r.Cg)([(0,n.$K)("esri.layers.support.RangeDomain")],l)},8631(e,t,i){i.d(t,{r:()=>d,g:()=>c});var s,r=i(53177),n=i(76357),o=i(5482),a=i(91429),l=i(93223);let u=class extends n.A{static{s=this}constructor(e){super(e),this.type="inherited"}clone(){return new s}};(0,o.Cg)([(0,l.e)({inherited:"inherited"})],u.prototype,"type",void 0),u=s=(0,o.Cg)([(0,a.$K)("esri.layers.support.InheritedDomain")],u);var h=i(41628);const c={key:"type",base:n.A,typeMap:{range:h.A,"coded-value":r.A,inherited:u}};function d(e){if(!e?.type)return null;switch(e.type){case"range":return h.A.fromJSON(e);case"codedValue":return r.A.fromJSON(e);case"inherited":return u.fromJSON(e)}return null}},98453(e,t,i){i.d(t,{m:()=>s});const s=new(i(66552).J)({esriFieldTypeSmallInteger:"small-integer",esriFieldTypeInteger:"integer",esriFieldTypeSingle:"single",esriFieldTypeDouble:"double",esriFieldTypeLong:"long",esriFieldTypeString:"string",esriFieldTypeDate:"date",esriFieldTypeOID:"oid",esriFieldTypeGeometry:"geometry",esriFieldTypeBlob:"blob",esriFieldTypeRaster:"raster",esriFieldTypeGUID:"guid",esriFieldTypeGlobalID:"global-id",esriFieldTypeXML:"xml",esriFieldTypeBigInteger:"big-integer",esriFieldTypeDateOnly:"date-only",esriFieldTypeTimeOnly:"time-only",esriFieldTypeTimestampOffset:"timestamp-offset"})},31756(e,t,i){i.d(t,{j:()=>n});var s=i(86211),r=i(79258);const n={unknown:1,inches:(0,s.oU)(1,"meters","inches"),feet:(0,s.oU)(1,"meters","feet"),"us-feet":(0,s.oU)(1,"meters","us-feet"),yards:(0,s.oU)(1,"meters","yards"),miles:(0,s.oU)(1,"meters","miles"),"nautical-miles":(0,s.oU)(1,"meters","nautical-miles"),millimeters:(0,s.oU)(1,"meters","millimeters"),centimeters:(0,s.oU)(1,"meters","centimeters"),decimeters:(0,s.oU)(1,"meters","decimeters"),meters:(0,s.oU)(1,"meters","meters"),kilometers:(0,s.oU)(1,"meters","kilometers"),"decimal-degrees":1/(0,s.vl)(1,"meters",r.$O.radius)}},63746(e,t,i){function s(e){return class{constructor(){for(const t of e)this[t]=null}}}function r(e,t=1){const{transform:i,hasZ:s,hasM:r}=e;if(null==i)return s&&1!==t?e=>{e[2]*=t}:null;const[n,o]=function(e,t,i,s){let{scale:r,translate:n,originPosition:o}=e;return"upperLeft"===o&&(r=r.map((e,t)=>1===t?-e:e)),t&&(r=r.map((e,t)=>2===t?e*s:e),n=n.map((e,t)=>2===t?e*s:e)),!t&&i&&(r=r.filter((e,t)=>2!==t),n=n.filter((e,t)=>2!==t)),[r,n]}(i,s,r,t),a=e.hasZ?3:2;return e=>{for(let t=0;t<e.length&&(t!==a||0!==e[t]);++t)e[t]=e[t]*n[t]+o[t]}}i.d(t,{Mv:()=>r,_7:()=>s}),i(53966)},2272(e,t,i){i.d(t,{Dl:()=>u,gf:()=>c,jV:()=>l,lF:()=>h});var s=i(92602),r=i(70333),n=i(4718),o=i(84952),a=i(926);function l(e,t){return t?{...t,query:{...e,...t.query}}:{query:e}}function u(e){return"string"==typeof e?(0,o.An)(e):(0,n.o8)(e)}function h(e,t,i){const s={};for(const r in e){if("declaredClass"===r)continue;const n=e[r];if(null!=n&&"function"!=typeof n)if(Array.isArray(n))s[r]=n.map(e=>h(e));else if("object"==typeof n)if(n.toJSON){const e=n.toJSON(i?.[r]);s[r]=t?e:JSON.stringify(e)}else s[r]=t?n:JSON.stringify(n);else s[r]=n}return s}async function c(e,t,n){const o=function(e,t){return e?t&&(0,a.Qc)(e)?t:(0,a.getApiKey)(e)??r.id?.findCredential(e)?.token:null}(e,t);if(o)return o;!r.id&&s.A.request.useIdentity&&await Promise.all([i.e(7632),i.e(692),i.e(148)]).then(i.bind(i,50148));const l=await r.id.getCredential(e,n);return l?.token}},926(e,t,i){i.d(t,{Dd:()=>d,Jn:()=>f,Qc:()=>p,getApiKey:()=>h,getSessionToken:()=>c});var s=i(92602),r=i(11254),n=i(84952);const o=/^https?:\/\/(i?basemaps|basemapstyles)-api\.arcgis\.com\//i,a=new Set(["elevation3d.arcgis.com","js.arcgis.com","jsdev.arcgis.com","jsqa.arcgis.com","static.arcgis.com"]),l=new Map;let u=null;function h(e){if(!p(e))return null;const t=t=>t instanceof RegExp?t.test(e):"string"==typeof t&&e.startsWith(t),i=s.A.apiKeys;if(Array.isArray(i.scopes))for(const e of i.scopes)if(Array.isArray(e.urls)){if(e.urls.some(t))return e.token}else if(t(e.urls))return e.token;return i.basemapStyles&&o.test(e)?i.basemapStyles:s.A.apiKey&&/^https?:\/\/.+\.arcgis\.com(\/|$)/i.test(e)?s.A.apiKey:null}async function c(e){if(!s.A.sessions?.basemap?.enabled||!o.test(e))return null;const t=h(e);if(!t)return null;u&&await u;const{styleFamily:i="arcgis",autoRefresh:n,duration:a=43200}=s.A.sessions.basemap,c=`${t}:${i}`,d=l.get(c);if(d&&(!n||d.endTime>Date.now()))return d.sessionToken;let f;u=(0,r.A)("https://basemapstyles-api.arcgis.com/arcgis/rest/services/styles/v2/sessions/start",{cacheBust:!0,query:{durationSeconds:a,styleFamily:i,token:t}});try{f=(await u).data,f.endTime-=5e3,l.set(c,f)}finally{u=null}return f.sessionToken}function d(){return null!=s.A.apiKey||null!=s.A.apiKeys.basemapStyles}function f(e,t){return t?p(e):null!=h(e)}function p(e){const t=(0,n.$z)(e,!0);return!!t&&!a.has(t)&&!e.endsWith("/sharing/rest/generateToken")}},88625(e,t,i){i.d(t,{A:()=>g});var s,r=i(5482),n=i(69540),o=i(66552),a=i(25482),l=i(97768),u=i(91429),h=i(30524);let c=s=class extends a.o{constructor(e){super(e),this.expression=void 0,this.title=void 0}async collectRequiredFields(e,t){return(0,h.Dx)(e,t,null,this.expression)}clone(){return new s({expression:this.expression,title:this.title})}equals(e){return this.expression===e.expression&&this.title===e.title}};(0,r.Cg)([(0,u.MZ)({type:String,json:{write:{isRequired:!0}}})],c.prototype,"expression",void 0),(0,r.Cg)([(0,u.MZ)({type:String,json:{write:!0}})],c.prototype,"title",void 0),c=s=(0,r.Cg)([(0,u.$K)("esri.symbols.support.FeatureExpressionInfo")],c);const d=c;var f=i(16271),p=i(36005),m=i(43937);const _=(0,o.O)()({onTheGround:"on-the-ground",relativeToGround:"relative-to-ground",relativeToScene:"relative-to-scene",absoluteHeight:"absolute-height"}),y=new o.J({foot:"feet",kilometer:"kilometers",meter:"meters",mile:"miles","us-foot":"us-feet",yard:"yards"});let g=class extends((0,n.OU)(a.o)){constructor(e){super(e),this.featureExpressionInfo=void 0,this.offset=null}readFeatureExpressionInfo(e,t){return null!=e?e.expression?e:void 0:t.featureExpression&&0===t.featureExpression.value?{expression:"0"}:void 0}writeFeatureExpressionInfo(e,t,i,s){t[i]=e.write({},s),"0"===e.expression&&(t.featureExpression={value:0})}get mode(){const{offset:e,featureExpressionInfo:t}=this;return this._isOverridden("mode")?this._get("mode"):null!=e||t?"relative-to-ground":"on-the-ground"}set mode(e){this._override("mode",e)}set unit(e){this._set("unit",e)}write(e,t){return this.offset||this.mode||this.featureExpressionInfo||this.unit?super.write(e,t):null}equals(e){return this.mode===e.mode&&this.offset===e.offset&&this.unit===e.unit&&(0,l.CM)(this.featureExpressionInfo,e.featureExpressionInfo)}};(0,r.Cg)([(0,u.MZ)({type:d,json:{write:!0}})],g.prototype,"featureExpressionInfo",void 0),(0,r.Cg)([(0,p.w)("featureExpressionInfo",["featureExpressionInfo","featureExpression"])],g.prototype,"readFeatureExpressionInfo",null),(0,r.Cg)([(0,m.K)("featureExpressionInfo",{featureExpressionInfo:{type:d},"featureExpression.value":{type:[0]}})],g.prototype,"writeFeatureExpressionInfo",null),(0,r.Cg)([(0,u.MZ)({type:_.apiValues,nonNullable:!0,json:{type:_.jsonValues,read:_.read,write:{writer:_.write,isRequired:!0}}})],g.prototype,"mode",null),(0,r.Cg)([(0,u.MZ)({type:Number,json:{write:!0}})],g.prototype,"offset",void 0),(0,r.Cg)([(0,u.MZ)({type:f.KQ,json:{type:String,read:y.read,write:y.write}})],g.prototype,"unit",null),g=(0,r.Cg)([(0,u.$K)("esri.symbols.support.ElevationInfo")],g)},16271(e,t,i){i.d(t,{Ao:()=>n,KQ:()=>o});var s=i(4576),r=i(31756);function n(e){return 1/(r.j[e]||1)}const o=function(){const e=Object.keys(r.j);return(0,s.TF)(e,"decimal-degrees"),e.sort(),e}()},20401(e,t,i){i.r(t),i.d(t,{default:()=>Pe});var s=i(5482),r=i(65529),n=i(17676),o=i(36708),a=i(91429),l=i(79897),u=i(16930),h=i(65864),c=i(4576),d=i(49186),f=i(53966),p=i(87992),m=i(70328),_=i(6518),y=i(50498),g=i(69397),v=i(27647);class x{constructor(e=null,t={},i,s,r=0){this.geometry=e,this.attributes=t,this.centroid=i,this.objectId=s,this.displayId=r}weakClone(){return new x(this.geometry,this.attributes,this.centroid,this.objectId,this.displayId)}clone(){return new x(this.geometry?.clone(),{...this.attributes},this.centroid?.clone(),this.objectId,this.displayId)}get usedMemory(){return 128+(0,g.lM)(this.attributes)+(this.geometry?.usedMemory??0)}ensureCentroid(e){return this.centroid??=(0,v.Q)(this.geometry&&(0,p.JR)(this.geometry)),this.centroid}}const b={getObjectId:e=>e.objectId,getAttributes:e=>e.attributes,getAttribute:(e,t)=>e.attributes[t],cloneWithGeometry:(e,t,i)=>new x((0,p.Nh)(y.gy.fromJSON(i),t),e.attributes,null,e.objectId),getGeometry:e=>e.geometry&&(0,p.JR)(e.geometry),getGeometryWithCurves:e=>e.geometry,getCentroid:(e,t)=>e.ensureCentroid(t)};var w=i(51441);const C=(0,m.vt)();class S{constructor(e,t,i){this.geometryType=e,this.hasZ=t,this.hasM=i,this._boundsStore=new _.F,this._featuresById=new Map,this._usedMemory=0,this.events=new r.bk,this.featureAdapter=b}get usedMemory(){return this._usedMemory}get numFeatures(){return this._featuresById.size}get fullBounds(){return this._boundsStore.fullBounds}get storeStatistics(){const e=this._featuresById.size;let t=0;return this._featuresById.forEach(({geometry:e})=>{t+=e?e.vertexCount:0}),{featureCount:e,vertexCount:t}}getFullExtent(e){if(null==this.fullBounds)return null;const[t,i,s,r]=this.fullBounds;return{xmin:t,ymin:i,xmax:s,ymax:r,spatialReference:(0,w.ag)(e)}}add(e){this._add(e),this._emitChanged()}addMany(e){for(const t of e)this._add(t);this._emitChanged()}upsertMany(e){const t=e.map(e=>this._upsert(e));return this._emitChanged(),t.filter(c.Ru)}clear(){this._featuresById.clear(),this._boundsStore.clear(),this._emitChanged(),this._usedMemory=0}removeById(e){const t=this._featuresById.get(e);return t?(this._remove(t),this._emitChanged(),t):null}removeManyById(e){this._boundsStore.invalidateIndex();for(const t of e){const e=this._featuresById.get(t);e&&this._remove(e)}this._emitChanged()}forEachBounds(e,t){for(const i of e){const e=this._boundsStore.get(i.objectId);e&&t((0,m.Jt)(C,e))}}getFeature(e){return this._featuresById.get(e)}has(e){return this._featuresById.has(e)}forEach(e){this._featuresById.forEach(t=>e(t))}forEachInBounds(e,t){this._boundsStore.forEachInBounds(e,e=>{t(this._featuresById.get(e))})}_emitChanged(){this.events.emit("changed",void 0)}_add(e){if(!e)return;const t=e.objectId;if(null==t)return void f.A.getLogger("esri.layers.graphics.data.FeatureStore").error(new d.A("featurestore:invalid-feature","feature id is missing",{feature:e}));const i=this._featuresById.get(t);let s;if(i?(e.displayId=i.displayId,s=this._boundsStore.get(t)??void 0,this._boundsStore.delete(t),this._usedMemory-=this.estimateFeatureUsedMemory?.(i)??0):this.onFeatureAdd?.(e),!e.geometry)return this._boundsStore.set(t,null),void this._featuresById.set(t,e);this._boundsStore.set(t,(0,p.NO)(e.geometry,s)),this._featuresById.set(t,e),this._usedMemory+=this.estimateFeatureUsedMemory?.(e)??0}_upsert(e){const t=e?.objectId;if(null==t)return f.A.getLogger("esri.layers.graphics.data.FeatureStore").error(new d.A("featurestore:invalid-feature","feature id is missing",{feature:e})),null;const i=this._featuresById.get(t);if(!i)return this._add(e),e;this._usedMemory-=this.estimateFeatureUsedMemory?.(i)??0;const{geometry:s,attributes:r}=e;for(const e in r)i.attributes[e]=r[e];return s&&(i.geometry=s,this._boundsStore.set(t,(0,p.NO)(s)??null)),this._usedMemory+=this.estimateFeatureUsedMemory?.(i)??0,i}_remove(e){null!=this.onFeatureRemove&&this.onFeatureRemove(e);const t=e.objectId;return this._boundsStore.delete(t),this._featuresById.delete(t),this._usedMemory-=this.estimateFeatureUsedMemory?.(e)??0,e}}var I=i(56390),M=i(87045),F=i(72802),T=i(61956),A=i(88625),z=i(66344),B=i(91869),P=i(86211),O=i(52006),E=i(16271);function R(e=!1,t){if(e){const{elevationInfo:e,alignPointsInFeatures:i}=t;return new Z(e,i)}return new j}class j{async alignCandidates(e,t,i){return e}notifyElevationSourceChange(){}}class Z{constructor(e,t){this._elevationInfo=e,this._alignPointsInFeatures=t,this._alignmentsCache=new z.q(1024),this._cacheVersion=0}async alignCandidates(e,t,i){const s=this._elevationInfo;return null==s||"absolute-height"!==s.mode||s.featureExpressionInfo?this._alignComputedElevationCandidates(e,t,i):(function(e,t,i){const{offset:s,unit:r}=i;if(null==s)return;const n=(0,P.G9)(t),o=s*((0,E.Ao)(r??"meters")/n);for(const t of e)switch(t.type){case"edge":t.start.z+=o,t.end.z+=o,t.curve&&((0,O.yP)(t.curve)[2]+=o);continue;case"vertex":t.target.z+=o;continue}}(e,t,s),e)}notifyElevationSourceChange(){this._alignmentsCache.clear(),this._cacheVersion++}async _alignComputedElevationCandidates(e,t,i){const s=new Map;for(const t of e)(0,B.tE)(s,t.objectId,Y).push(t);const[r,o,a]=this._prepareQuery(s,t),l=await this._alignPointsInFeatures(r,i);if((0,n.Te)(i),a!==this._cacheVersion)return this._alignComputedElevationCandidates(e,t,i);this._applyCacheAndResponse(r,l,o);const{drapedObjectIds:u,failedObjectIds:h}=l,c=[];for(const t of e){const{objectId:e}=t;u.has(e)&&"edge"===t.type&&(t.draped=!0),h.has(e)||c.push(t)}return c}_prepareQuery(e,t){const i=[],s=[];for(const[t,r]of e){const e=[];for(const i of r)this._addToQueriesOrCachedResult(t,i.target,e,s),"edge"===i.type&&(this._addToQueriesOrCachedResult(t,i.start,e,s),this._addToQueriesOrCachedResult(t,i.end,e,s));0!==e.length&&i.push({objectId:t,points:e})}return[{spatialReference:t.toJSON(),pointsInFeatures:i},s,this._cacheVersion]}_addToQueriesOrCachedResult(e,t,i,s){const r=q(e,t),n=this._alignmentsCache.get(r);null==n?i.push(t):s.push(new k(t,n))}_applyCacheAndResponse(e,{elevations:t,drapedObjectIds:i,failedObjectIds:s},r){for(const e of r)e.apply();let n=0;const o=this._alignmentsCache;for(const{objectId:r,points:a}of e.pointsInFeatures){if(s.has(r)){n+=a.length;continue}const e=!i.has(r);for(const i of a){const s=q(r,i),a=t[n++];i.z=a,e&&o.put(s,a,1)}}}}class k{constructor(e,t){this.point=e,this.z=t}apply(){this.point.z=this.z}}function q(e,{x:t,y:i,z:s,spatialReference:r}){return`${e}-${t}-${i}-${s??0}}-wkid:${r?.wkid}`}function Y(){return[]}class X{filter(e,t){return t}notifyElevationSourceChange(){}}class N{filter(e,t){const{point:i,distance:s}=e,{z:r}=i;if(null==r)return t;if(0===t.length)return t;const n=function(e){return"number"==typeof e?{x:e,y:e,z:e}:e}(s),o=this._updateCandidatesTo3D(t,i,n).filter(V);return o.sort(J),o}_updateCandidatesTo3D(e,t,i){for(const s of e)switch(s.type){case"edge":L(s,t,i);continue;case"vertex":H(s,t,i);continue}return e}}function V(e){return e.distance<=1}function G(e=!1){return e?new N:new X}function L(e,t,{x:i,y:s,z:r}){const{start:n,end:o,target:a}=e;if(e.curve)throw new Error("Curves are not yet supported.");e.draped||function(e,t,i,s){const r=s.x-i.x,n=s.y-i.y,o=s.z-i.z,a=r*r+n*n+o*o,l=(t.x-i.x)*r+(t.y-i.y)*n+o*(t.z-i.z),u=Math.min(1,Math.max(0,l/a)),h=i.x+r*u,c=i.y+n*u,d=i.z+o*u;e.x=h,e.y=c,e.z=d}(a,t,n,o);const l=(t.x-a.x)/i,u=(t.y-a.y)/s,h=(t.z-a.z)/r;e.distance=Math.sqrt(l*l+u*u+h*h)}function H(e,t,{x:i,y:s,z:r}){const{target:n}=e,o=(t.x-n.x)/i,a=(t.y-n.y)/s,l=(t.z-n.z)/r,u=Math.sqrt(o*o+a*a+l*l);e.distance=u}function J(e,t){return e.distance-t.distance}var $=i(4718),U=i(799);function D(e=!1,t){return e?new W(t):new K}class K{async fetch(){return[]}notifySymbologyChange(){}}class W{constructor(e){this._getSymbologyCandidates=e,this._candidatesCache=new z.q(1024),this._cacheVersion=0}async fetch(e,t){if(0===e.length)return[];const i=[],s=[],r=this._candidatesCache;for(const t of e){const e=Q(t),n=r.get(e);if(n)for(const e of n)s.push((0,$.o8)(e));else i.push(t),r.put(e,[],1)}if(0===i.length)return s;const o=this._cacheVersion,{candidates:a,sourceCandidateIndices:l}=await this._getSymbologyCandidates(i,t);if((0,n.Te)(t),o!==this._cacheVersion)return this.fetch(e,t);const u=[],{length:h}=a;for(let e=0;e<h;++e){const t=a[e],s=Q(i[l[e]]),n=r.get(s);n.push(t),r.put(s,n,n.length),u.push((0,$.o8)(t))}return s.concat(u)}notifySymbologyChange(){this._candidatesCache.clear(),this._cacheVersion++}}function Q(e){switch(e.type){case"vertex":{const{objectId:t,target:i}=e,s=`${t}-vertex-${i.x}-${i.y}-${i.z??0}`;return(0,U.Wm)(s).toString()}case"edge":{const{objectId:t,start:i,end:s}=e,r=`${t}-edge-${i.x}-${i.y}-${i.z??0}-to-${s.x}-${s.y}-${s.z??0}`;return(0,U.Wm)(r).toString()}default:return""}}var ee=i(69622),te=i(60999),ie=i(3483),se=i(13069),re=i(5443),ne=i(19419),oe=i(92722),ae=i(54339);class le{constructor(){this.globalIdFieldName=null,this.geohashFieldName=null,this.geometryProperties=null,this.geometryType=null,this.spatialReference=null,this.hasZ=!1,this.hasM=!1,this.features=[],this.fields=[],this.transform=null,this.exceededTransferLimit=!1,this.uniqueIdField=null,this.queryGeometryType=null,this.queryGeometry=null}weakClone(){const e=new le;return e.globalIdFieldName=this.globalIdFieldName,e.geohashFieldName=this.geohashFieldName,e.geometryProperties=this.geometryProperties,e.geometryType=this.geometryType,e.spatialReference=this.spatialReference,e.hasZ=this.hasZ,e.hasM=this.hasM,e.features=this.features,e.fields=this.fields,e.transform=this.transform,e.exceededTransferLimit=this.exceededTransferLimit,e.uniqueIdField=this.uniqueIdField,e.queryGeometry=this.queryGeometry,e.queryGeometryType=this.queryGeometryType,e}}var ue=i(60694),he=i(62815),ce=i(63746);class de{constructor(e){this._options=e,this.featureSet=new le,this.parseOnly=null,this._idInfo=null,this._transformInPlace=null,this._transformInPlaceXY=null,this._push=de._pushXY,this._attributesClass=null,this._previousX=0,this._previousY=0,this._vertex=[],this._i=0,this._geometry=null,this._iVertex=0,this._iPart=0,this._isPolygon=!1,this._ringEndsAt=-1}queryGeometryType(){return this.featureSet.queryGeometryType}queryGeometry(){return this.featureSet.queryGeometry}idField(e){"string"==typeof e?this._idInfo??={type:"object-id",fieldName:e}:this._idInfo={type:"unique-id-simple",fieldName:e.name}}finish(){if(this._idInfo)for(const e of this.featureSet.features)e.objectId=(0,ae.W)(e,this._idInfo);const{spatialReference:e,features:t}=this.featureSet;if(e)for(const{geometry:i}of t)i&&(i.spatialReference=e);this.featureSet.transform=null}feature(){this._attributesClass??=(0,ce._7)(this.featureSet.fields?.map(e=>e.name)??[]),this.featureSet.features.push(new x(null,new this._attributesClass,null,0)),this._setVertexTransformer()}centroid(e){const{hasZ:t,hasM:i}=this.featureSet;this.featureSet.features.at(-1).centroid=new oe.A([],e,t,i)}geometry(e,t,i){this._previousX=this._previousY=0,this._i=this._iVertex=this._iPart=0;let{hasZ:s,hasM:r}=this.featureSet;s??=!1,r??=!1,this._vertex=[0,0],s&&this._vertex.push(0),r&&this._vertex.push(0);const n=y.gy.fromJSON(t);this._isPolygon="polygon"===n;const o=Number(this._isPolygon),a="point"===n?1:i.reduce((e,t)=>e+t-o,0),l="point"===n?0:i.length;if(this._geometry=(0,p.V2)(n,a,l,s,r,!1),this._push=s?r?de._pushXYZM:de._pushXYZ:r?de._pushXYM:de._pushXY,this._geometry.isMultipart()){this._geometry.partOffsets[0]=0;for(let e=0;e<l;++e)this._geometry.partOffsets[e+1]=this._geometry.partOffsets[e]+i[e]-o}this._ringEndsAt=o?this._geometry.partOffsets.at(1)??0:-1,1===e?(this.featureSet.queryGeometry=this._geometry,this.featureSet.queryGeometryType=t):this.featureSet.features.at(-1).geometry=this._geometry}coord(e){const t=this._vertex;t[this._i++]=e,this._i<t.length||(this._i=0,t[0]+=this._previousX,t[1]+=this._previousY,[this._previousX,this._previousY]=t,this._iVertex===this._ringEndsAt&&(++this._iPart,this._ringEndsAt=this._geometry.partOffsets[this._iPart+1],this._previousX=this._previousY=0,this._isPolygon)||(this._transformInPlace?.(t),this._push(this)))}curvedGeometry(e,t,i,s){let{hasZ:r,hasM:n}=this.featureSet;r??=!1,n??=!1,this._i=this._iVertex=this._iPart=0;const o=y.gy.fromJSON(e);this._isPolygon="polygon"===o;const a=Number(!this._isPolygon),l=t.length;let u=0,h=0,c=a*l;for(let e=0;e<i.length;++e)switch(c+=s[e],i[e]){case 1:case 3:u+=s[e];continue;case 2:h+=s[e]}this._geometry=(0,p.V2)(o,c,l,r,n,!0,u,h);const{partOffsets:d}=this._geometry;d[0]=0;for(let e=0,i=0;e<l;++e){d[e+1]=d[e]+a;for(let r=0;r<t[e];++r)d[e+1]+=s[i++]}switch(e){case"esriGeometryPoint":case"esriGeometryMultipoint":throw new Error(`Curved ${e} does not make sense`)}this.featureSet.features.at(-1).geometry=this._geometry}startCurvedPart(e){}finishCurvedPart(e){this._isPolygon||(this._transform(e,this._vertex),this._push(this)),++this._iPart}lineSegment(e,t){this._transform(e,this._vertex),this._push(this)}bezierSegment(e,t,i,s){this._transform(e,this._vertex),this._push(this),this._transformXY(t,me.b[0]),this._transformXY(i,me.b[1]),this._transformXY(s,me.b[2]),this._i=(0,p.tr)(this._vertex,me,this._geometry,this._iVertex-1,this._i)}circularArcSegment(e,t,i){this._transform(e,this._vertex),this._push(this),this._transformXY(t,fe.c[0]),this._transformXY(i,fe.c[1]),this._i=(0,p.e6)(this._vertex,fe,this._geometry,this._iVertex-1,this._i)}ellipticArcSegment(e,t,i,s,r,n,o,a){this._transform(e,this._vertex),this._push(this),this._transformXY(t,pe.a[0]),this._transformXY(i,pe.a[1]),pe.a[2]=s,pe.a[3]=r,pe.a[4]=n,pe.a[5]=o,pe.a[6]=a,this._i=(0,p._s)(this._vertex,pe,this._geometry,this._iVertex-1,this._i)}static _pushXY(e){const t=e._iVertex++,{vertexXY:i}=e._geometry;[i[2*t],i[2*t+1]]=e._vertex}static _pushXYZ(e){const t=e._iVertex++,{vertexXY:i,vertexZ:s}=e._geometry;[i[2*t],i[2*t+1],s[t]]=e._vertex}static _pushXYM(e){const t=e._iVertex++,{vertexXY:i,vertexM:s}=e._geometry;[i[2*t],i[2*t+1],s[t]]=e._vertex}static _pushXYZM(e){const t=e._iVertex++,{vertexXY:i,vertexM:s,vertexZ:r}=e._geometry;[i[2*t],i[2*t+1],r[t],s[t]]=e._vertex}_setVertexTransformer(){const{sourceSpatialReference:e}=this._options,{spatialReference:t,hasZ:i,transform:s}=this.featureSet,r=i?(0,he.d)(e,t):1;this._transformInPlace??=(0,ce.Mv)(this.featureSet,r),this._transformInPlaceXY??=(0,ce.Mv)({transform:s})}_transform(e,t){for(let i=0;i<e.length;++i)t[i]=e[i];this._transformInPlace?.(t)}_transformXY(e,t){t[0]=e[0],t[1]=e[1],this._transformInPlaceXY?.(t)}}const fe={c:[[0,0],[0,0]]},pe={a:[[0,0],[0,0],0,0,0,0,0]},me={b:[[0,0],[0,0],[0,0]]};var _e=i(80893);class ye{constructor(e,t){this.key=e,this.resolution=t,this.state={type:0},this.alive=!0}process(e){switch(this.state.type){case 0:return this.state=this._gotoFetchCount(this.state,e),this.state.task.promise.then(e.resume,e.resume);case 1:case 3:break;case 2:return this.state=this._gotoFetchFeatures(this.state,e),this.state.task.promise.then(e.resume,e.resume);case 4:this.state=this._goToDone(this.state,e)}return null}get debugInfo(){return{key:this.key,featureCount:this._featureCount,state:this._stateToString}}get _featureCount(){switch(this.state.type){case 0:case 1:return 0;case 2:return this.state.featureCount;case 3:return this.state.previous.featureCount;case 4:return this.state.features.length;case 5:return this.state.previous.features.length}}get _stateToString(){switch(this.state.type){case 0:return"created";case 1:return"fetch-count";case 2:return"fetched-count";case 3:return"fetch-features";case 4:return"fetched-features";case 5:return"done"}}_gotoFetchCount(e,t){return{type:1,previous:e,task:(0,te.UT)(async e=>{const i=await(0,te.DZ)(t.fetchCount(this,e));1===this.state.type&&(this.state=function(e,t){return{type:2,featureCount:t,previous:e}}(this.state,i.ok?i.value:1/0))})}}_gotoFetchFeatures(e,t){return{type:3,previous:e,task:(0,te.UT)(async i=>{const s=await(0,te.DZ)(t.fetchFeatures(this,e.featureCount,i));3===this.state.type&&(this.state=function(e,t){return{type:4,previous:e,features:t}}(this.state,s.ok?s.value:[]))})}}_goToDone(e,t){return t.finish(this,e.features),{type:5,previous:e}}reset(){const e=this.state;switch(this.state={type:0},e.type){case 0:case 2:case 4:case 5:break;case 1:case 3:e.task.abort()}}}let ge=class extends ee.A{get _minimumVerticesPerFeature(){switch(this.store?.featureStore.geometryType){case"esriGeometryPoint":case"esriGeometryMultipoint":return 1;case"esriGeometryPolygon":return 4;case"esriGeometryPolyline":return 2}}get _mandatoryOutFields(){const e=new Set;return this.objectIdField&&e.add(this.objectIdField),this.globalIdField&&e.add(this.globalIdField),e}set outFields(e){const t=this._get("outFields"),i=(0,ie.KC)(e,this._mandatoryOutFields);(0,ie.aI)(i,t)||(this._set("outFields",i),(0,ie.Yy)(i,t)||this.refresh())}get outFields(){return this._get("outFields")??this._mandatoryOutFields}set filter(e){const t=this._get("filter"),i=this._filterProperties(e);JSON.stringify(t)!==JSON.stringify(i)&&this._set("filter",i)}set customParameters(e){const t=this._get("customParameters");JSON.stringify(t)!==JSON.stringify(e)&&this._set("customParameters",e)}get _configuration(){return{filter:this.filter,customParameters:this.customParameters,tileInfo:this.tileInfo,tileSize:this.tileSize}}set tileInfo(e){const t=this._get("tileInfo");t!==e&&(null!=e&&null!=t&&JSON.stringify(e)===JSON.stringify(t)||(this._set("tileInfo",e),this.store.tileInfo=e))}set tileSize(e){this._get("tileSize")!==e&&this._set("tileSize",e)}get updating(){return this._updatingHandles.updating}get hasZ(){return this.store.featureStore.hasZ}constructor(e){super(e),this.suspended=!0,this._historicMoment=null,this.tilesOfInterest=new Array,this.availability=0,this._pendingTiles=new Map,this._updatingHandles=new l.U}initialize(){this._initializeFetchExtent(),this._updatingHandles.add(()=>this._configuration,()=>this.refresh()),this._updatingHandles.add(()=>this.tilesOfInterest,()=>{this._updatePriorities(),this._process()},{sync:!0,initial:!0,equals:(e,t)=>(0,c.aI)(e,t,({id:e},{id:t})=>e===t)}),this.addHandles((0,o.z7)(()=>!this.suspended,()=>this._process()))}_updatePriorities(){this.store.setPriorityOrderByKey(this.tilesOfInterest.map(({id:e})=>e)??[])}destroy(){this._pendingTiles.forEach(e=>this._deletePendingTile(e)),this._pendingTiles.clear(),this.store.destroy(),this.tilesOfInterest.length=0,this._updatingHandles.destroy()}refresh(){this.store.refresh(),this._pendingTiles.forEach(e=>this._deletePendingTile(e)),this._process()}async handleEdits(e){if(e.historicMoment&&(this._historicMoment=e.historicMoment),!e.addedFeatures.length&&!e.updatedFeatures.length&&!e.deletedFeatures.length)return;for(const e of this._pendingTiles.values())e.reset();const t={...e,deletedFeatures:e.deletedFeatures.map(({objectId:e,globalId:t})=>e&&-1!==e?e:this._lookupObjectIdByGlobalId(t))},i=(0,te.UT)(async e=>{try{await this.store.processEdits(t,(e,t)=>this._queryFeaturesById(e,t),e),this._processPendingTiles()}catch(e){(0,n.QP)(e),f.A.getLogger(this).warn("Failed to apply edits",e)}});this.addHandles(i),await this._updatingHandles.addPromise(i.promise)}setHistoricMoment(e){e?.getTime()!==this._historicMoment?.getTime()&&(this._historicMoment=e,this.refresh())}_initializeFetchExtent(){if(!this.capabilities.query.supportsExtent||!(0,ue.Wo)(this.url))return;const e=(0,te.UT)(async e=>{try{const t=await(0,_e.Jf)(this.url,new T.A({where:"1=1",outSpatialReference:this.spatialReference,cacheHint:this.capabilities.query.supportsCacheHint??void 0}),{query:this._configuration.customParameters,signal:e});this.store.extent=re.A.fromJSON(t?.extent)}catch(e){(0,n.QP)(e),f.A.getLogger(this).warn("Failed to fetch data extent",e)}});this._updatingHandles.consumePromise(e.promise.then(()=>this._process())),this.addHandles(e)}get debugInfo(){return{numberOfFeatures:this.store.featureStore.numFeatures,tilesOfInterest:this.tilesOfInterest,pendingTiles:Array.from(this._pendingTiles.values()).map(e=>e.debugInfo),storedTiles:this.store.debugInfo}}_process(){this._markTilesNotAlive(),this._createPendingTiles(),this._deletePendingTiles(),this._processPendingTiles()}_markTilesNotAlive(){for(const e of this._pendingTiles.values())e.alive=!1}_createPendingTiles(){if(this.suspended)return;const e=this._collectMissingTilesInfo();if(this._setAvailability(null==e?1:e.coveredArea/e.fullArea),null!=e)for(const{data:t,resolution:i}of e.missingTiles){const e=this._pendingTiles.get(t.id);e?(e.resolution=i,e.alive=!0):this._createPendingTile(t,i)}}_collectMissingTilesInfo(){let e=null;for(const t of this.tilesOfInterest){const i=this.store.process(t,(e,t)=>this._verifyTileComplexity(e,t),this.outFields);null==e?e=i:e.prepend(i)}return e}_deletePendingTiles(){for(const e of this._pendingTiles.values())e.alive||this._deletePendingTile(e)}_processPendingTiles(){const e={fetchCount:(e,t)=>this._fetchCount(e,t),fetchFeatures:(e,t,i)=>this._fetchFeatures(e,t,i),finish:(e,t)=>this._finishPendingTile(e,t),resume:()=>this._processPendingTiles()};if(this._ensureFetchAllCounts(e))for(const t of this._pendingTiles.values())this._verifyTileComplexity(this.store.getFeatureCount(t.key),t.resolution)&&this._updatingHandles.consumePromise(t.process(e))}_verifyTileComplexity(e,t){return this._verifyVertexComplexity(e)&&this._verifyFeatureDensity(e,t)}_verifyVertexComplexity(e){return e*this._minimumVerticesPerFeature<be}_verifyFeatureDensity(e,t){if(null==this.tileInfo)return!1;const i=this.tileSize*t;return e*(we/(i*i))<Ce}_ensureFetchAllCounts(e){let t=!0;for(const i of this._pendingTiles.values())i.state.type<2&&this._updatingHandles.consumePromise(i.process(e)),i.state.type<=1&&(t=!1);return t}_finishPendingTile(e,t){this.store.add(e.key,t),this._deletePendingTile(e),this._updateAvailability()}_updateAvailability(){const e=this._collectMissingTilesInfo();this._setAvailability(null==e?1:e.coveredArea/e.fullArea)}_setAvailability(e){this._set("availability",e)}_createPendingTile(e,t){const i=new ye(e,t);return this._pendingTiles.set(e.id,i),i}_deletePendingTile(e){e.reset(),this._pendingTiles.delete(e.key.id)}async _fetchCount(e,t){return this.store.fetchCount(e.key,this.url,this._createCountQuery(e),{query:this.customParameters,timeout:xe,signal:t})}async _fetchFeatures(e,t,i){let s=0;const r=[];let n=0,o=t;for(;;){const a=this._createFeaturesQuery(e),l=this._setPagingParameters(a,s,o),{features:u,exceededTransferLimit:h}=await this._queryFeatures(a,i);l&&(s+=a.num),n+=u.length;for(const e of u)r.push(e);if(o=t-n,!l||!h||o<=0)return r}}_filterProperties(e){return null==e?{where:"1=1",gdbVersion:void 0,timeExtent:void 0}:{where:e.where||"1=1",timeExtent:e.timeExtent,gdbVersion:e.gdbVersion}}_lookupObjectIdByGlobalId(e){const t=this.globalIdField,i=this.objectIdField;if(null==t)throw new Error("Expected globalIdField to be defined");let s=null;const r=e?(0,se.AG)(e):e;if(this.store.featureStore.forEach(e=>{r===(0,se.AG)(e.attributes[t])&&(s=e.objectId??e.attributes[i])}),null==s)throw new Error(`Expected to find a feature with globalId ${e}`);return s}_queryFeaturesById(e,t){const i=this._createFeaturesQuery();return i.objectIds=e,this._queryFeatures(i,t)}async _queryFeatures(e,t){return 0===e.num?new le:this.capabilities.query.supportsFormatPBF?this._queryFeaturesPBF(e,t):this._queryFeaturesJSON(e,t)}async _queryFeaturesPBF(e,t){const{sourceSpatialReference:i}=this;return await(0,_e.IJ)(this.url,e,new de({sourceSpatialReference:i}),{query:this._configuration.customParameters,timeout:xe,signal:t})}async _queryFeaturesJSON(e,t){const{sourceSpatialReference:i}=this;return function({exceededTransferLimit:e,features:t,fields:i,geometryType:s,hasM:r,hasZ:n,spatialReference:o,transform:a},l){const u=new le;u.exceededTransferLimit=e??!1;for(const e of t??[]){let t,i;s&&(t=e.geometry&&(0,p.ME)(e.geometry),i=e.centroid&&new oe.A([],[e.centroid.x,e.centroid.y]));const r=(0,ae.W)(e,l);u.features.push(new x(t,e.attributes,i,r))}return u.fields=i??u.fields,u.geometryType=s??null,u.hasM=r??!1,u.hasZ=n??!1,u.spatialReference=o??null,u.transform=a??null,u}(await(0,_e.eW)(this.url,e,i,{query:this._configuration.customParameters,timeout:xe,signal:t}),{type:"object-id",fieldName:this.objectIdField})}_createCountQuery(e){const t=this._createBaseQuery(e);return this.capabilities.query.supportsCacheHint&&(t.cacheHint=!0),t}_createFeaturesQuery(e=null){const t=this._createBaseQuery(e),i=null!=e?.key?this.store.getAttributesForTile(e?.key?.id):null,s=(0,ie.KC)((0,ie.iv)(this.outFields,i??new Set),this._mandatoryOutFields);return t.outFields=Array.from(s),t.returnGeometry=!0,this.capabilities.data.supportsTrueCurve&&(!this.capabilities.query.supportsFormatPBF||this.capabilities.query.supportsFormatPBFWithCurves)&&(t.returnTrueCurves=!0),null!=e&&(this.capabilities.query.supportsResultType?t.resultType="tile":this.capabilities.query.supportsCacheHint&&(t.cacheHint=!0)),t}_createBaseQuery(e){const t=new T.A({returnZ:this.hasZ,returnM:!1,historicMoment:this._historicMoment,geometry:null!=this.tileInfo&&null!=e?(0,ne.w1)(e.key.extent,this.tileInfo.spatialReference):void 0}),i=this._configuration.filter;return null!=i&&(t.where=i.where,t.gdbVersion=i.gdbVersion,t.timeExtent=i.timeExtent),t.outSpatialReference=this.spatialReference,t}_setPagingParameters(e,t,i){if(!this.capabilities.query.supportsPagination)return!1;const{supportsMaxRecordCountFactor:s,supportsCacheHint:r,tileMaxRecordCount:n,maxRecordCount:o,supportsResultType:a}=this.capabilities.query,l=s?T.A.MAX_MAX_RECORD_COUNT_FACTOR:1,u=l*((a||r)&&n?n:o||ve);return e.start=t,s?(e.maxRecordCountFactor=Math.min(l,Math.ceil(i/u)),e.num=Math.min(i,e.maxRecordCountFactor*u)):e.num=Math.min(i,u),!0}};(0,s.Cg)([(0,a.MZ)({constructOnly:!0})],ge.prototype,"url",void 0),(0,s.Cg)([(0,a.MZ)({constructOnly:!0})],ge.prototype,"currentVersion",void 0),(0,s.Cg)([(0,a.MZ)({constructOnly:!0})],ge.prototype,"objectIdField",void 0),(0,s.Cg)([(0,a.MZ)({constructOnly:!0})],ge.prototype,"globalIdField",void 0),(0,s.Cg)([(0,a.MZ)({constructOnly:!0})],ge.prototype,"capabilities",void 0),(0,s.Cg)([(0,a.MZ)({constructOnly:!0})],ge.prototype,"sourceSpatialReference",void 0),(0,s.Cg)([(0,a.MZ)({constructOnly:!0})],ge.prototype,"spatialReference",void 0),(0,s.Cg)([(0,a.MZ)({constructOnly:!0})],ge.prototype,"store",void 0),(0,s.Cg)([(0,a.MZ)({readOnly:!0})],ge.prototype,"_minimumVerticesPerFeature",null),(0,s.Cg)([(0,a.MZ)()],ge.prototype,"_mandatoryOutFields",null),(0,s.Cg)([(0,a.MZ)()],ge.prototype,"outFields",null),(0,s.Cg)([(0,a.MZ)()],ge.prototype,"suspended",void 0),(0,s.Cg)([(0,a.MZ)()],ge.prototype,"_historicMoment",void 0),(0,s.Cg)([(0,a.MZ)()],ge.prototype,"filter",null),(0,s.Cg)([(0,a.MZ)()],ge.prototype,"customParameters",null),(0,s.Cg)([(0,a.MZ)({readOnly:!0})],ge.prototype,"_configuration",null),(0,s.Cg)([(0,a.MZ)()],ge.prototype,"tileInfo",null),(0,s.Cg)([(0,a.MZ)()],ge.prototype,"tileSize",null),(0,s.Cg)([(0,a.MZ)()],ge.prototype,"tilesOfInterest",void 0),(0,s.Cg)([(0,a.MZ)({readOnly:!0})],ge.prototype,"updating",null),(0,s.Cg)([(0,a.MZ)({readOnly:!0})],ge.prototype,"availability",void 0),(0,s.Cg)([(0,a.MZ)()],ge.prototype,"hasZ",null),ge=(0,s.Cg)([(0,a.$K)("esri.views.interactive.snapping.featureSources.featureServiceSource.FeatureServiceTiledFetcher")],ge);const ve=2e3,xe=6e5,be=1e6,we=25,Ce=1;i(44208);class Se{constructor(){this._store=new Map,this._priorities=new Map}get size(){return this._store.size}setPriorityOrderByKey(e){this._priorities.clear();for(let t=e.length-1;t>=0;t--)this._priorities.set(e[t],e.length-t)}hasLowerPriority(e){const t=this._priorities.get(e);if(null==t)return!0;for(const[e]of this._store){const i=this._priorities.get(e);if(null==i||i<t)return!0}return!1}someFromLowestToHighestPriority(e){const{_priorities:t}=this;for(const[i,s]of this._store)if(!t.has(i)&&e(s,i))return!0;for(const[i]of t){const t=this._store.get(i);if(t&&e(t,i))return!0}return!1}set(e,t){this._store.set(e,t)}delete(e){return this._store.delete(e)}get(e){return this._store.get(e)}has(e){return this._store.has(e)}clear(){this._store.clear()}values(){return this._store.values()}[Symbol.iterator](){return this._store[Symbol.iterator]()}}let Ie=class extends ee.A{setPriorityOrderByKey(e){this._tiles.setPriorityOrderByKey(e)}get _memoryLimitExceeded(){return this.featureStore.usedMemory>=this.maximumByteSize}constructor(e){super(e),this.tileInfo=null,this.extent=null,this.maximumByteSize=10485760,this._tileBounds=new _.F,this._tiles=new Se,this._refCounts=new Map,this._tileFeatureCounts=new Map,this._tmpBoundingRect=(0,ne.vt)()}add(e,t){for(const e of t)this._referenceFeature(e.objectId);const i=this.featureStore.upsertMany(t),s=i.map(e=>new Set(Object.keys(e.attributes))).reduce((e,t)=>(0,ie.E$)(e,t),new Set(Object.keys(i[0]?.attributes??[]))),r=this._memoryLimitExceeded;this._addTileStorage(e,new Set(i.map(e=>e.objectId)),s),r&&this._applyCacheMemoryLimits()}_applyCacheMemoryLimits(){if(!this._memoryLimitExceeded)return;const{_tiles:e,featureStore:t,maximumByteSize:i}=this;e.someFromLowestToHighestPriority(e=>!this._memoryLimitExceeded||t.usedMemory-this._estimateRemoveTileMemoryReduction(e)<i||(this._removeTileStorage(e),!1))}_estimateRemoveTileMemoryReduction(e){let t=0;for(const i of e.objectIds)if(1===this._refCounts.get(i)){const e=this.featureStore.getFeature(i);e&&(t+=this.featureStore.estimateFeatureUsedMemory?.(e)??0)}return t}_hasAttributesForTile(e,t){if(e){const i=this._tiles.get(e);if(i)return!i.objectIds.size||(0,ie.Yy)(t,i.attributeKeys)}return!1}getAttributesForTile(e){return e?this._tiles.get(e)?.attributeKeys:null}destroy(){this.clear(),this._tileFeatureCounts.clear()}clear(){this.featureStore.clear(),this._tileBounds.clear(),this._tiles.clear(),this._refCounts.clear()}refresh(){this.clear(),this._tileFeatureCounts.clear()}processEdits(e,t,i){return this._processEditsDelete(e.deletedFeatures.concat(e.updatedFeatures)),this._processEditsRefetch(e.addedFeatures.concat(e.updatedFeatures),t,i)}_addTileStorage(e,t,i){const s=e.id;this._tiles.set(s,new Me(e,t,i)),this._tileBounds.set(s,e.extent),this._tileFeatureCounts.set(s,t.size)}_remove({id:e}){const t=this._tiles.get(e);t&&this._removeTileStorage(t)}_removeTileStorage(e){const t=[];for(const i of e.objectIds)1===this._unreferenceFeature(i)&&t.push(i);this.featureStore.removeManyById(t);const i=e.key.id;this._tiles.delete(i),this._tileBounds.delete(i)}_processEditsDelete(e){this.featureStore.removeManyById(e);for(const t of this._tiles.values()){for(const i of e)t.objectIds.delete(i);this._tileFeatureCounts.set(t.key.id,t.objectIds.size)}for(const t of e)this._refCounts.delete(t)}async _processEditsRefetch(e,t,i){if(!e.length)return;const{features:s}=await t(e,i);for(const e of s){if(this._tmpBoundingRect.fill(0),null==e.geometry||0===e.geometry.vertexCount)continue;(0,ne.Ie)(this._tmpBoundingRect);const t=(0,p.NO)(e.geometry,this._tmpBoundingRect);this._tileBounds.forEachInBounds(t,t=>{const i=this._tiles.get(t);this.featureStore.add(e);const s=e.objectId;i.objectIds.has(s)||(i.objectIds.add(s),this._referenceFeature(s),this._tileFeatureCounts.set(i.key.id,i.objectIds.size))})}}process(e,t=()=>!0,i){if(null==this.tileInfo||!e.extent||null!=this.extent&&!(0,ne.HY)((0,ne.VY)(this.extent,this._tmpBoundingRect),e.extent))return new Te(e);if(this._memoryLimitExceeded&&!this._tiles.hasLowerPriority(e.id??""))return new Te(e);if(this._hasAttributesForTile(e.id,i))return new Te(e);const s=this._createTileTree(e,this.tileInfo);return this._simplify(s,t,null,0,1),this._collectMissingTiles(e,s,this.tileInfo,i)}get debugInfo(){return Array.from(this._tiles.values()).map(({key:e})=>({key:e.toJSON(),featureCount:this._tileFeatureCounts.get(e.id)||0}))}getFeatureCount(e){return this._tileFeatureCounts.get(e.id)??0}async fetchCount(e,t,i,s){let r=this._tileFeatureCounts.get(e.id);return null!=r||(r=await(0,_e.gW)(t,i,s),this._tileFeatureCounts.set(e.id,r)),r}_createTileTree(e,t){const i=new Fe(e.level,e.row,e.col);return t.updateTileInfo(i,1),this._tileBounds.forEachInBounds(e.extent,s=>{const r=this._tiles.get(s)?.key;r&&function(e,t){if(!e||!t)return!1;if(e.level===t.level)return e.row===t.row&&e.col===t.col;const i=e.level<t.level,s=i?e:t,r=i?t:e,n=1<<r.level-s.level;return Math.floor(r.row/n)===s.row&&Math.floor(r.col/n)===s.col}(e,r)&&this._populateChildren(i,r,t,this._tileFeatureCounts.get(r.id)||0)}),i}_populateChildren(e,t,i,s){const r=t.level-e.level-1;if(r<0)return void(e.isLeaf=!0);const n=t.row>>r,o=t.col>>r,a=e.row<<1,l=o-(e.col<<1)+(n-a<<1),u=e.children[l];if(null!=u)this._populateChildren(u,t,i,s);else{const r=new Fe(e.level+1,n,o);i.updateTileInfo(r,1),e.children[l]=r,this._populateChildren(r,t,i,s)}}_simplify(e,t,i,s,r){const n=r*r;if(e.isLeaf)return t(this.getFeatureCount(e),r)?0:(this._remove(e),null!=i&&(i.children[s]=null),n);const o=r/2,a=o*o;let l=0;for(let i=0;i<e.children.length;i++){const s=e.children[i];l+=null!=s?this._simplify(s,t,e,i,o):a}return 0===l?this._mergeChildren(e):1-l/n<ze&&(this._purge(e),null!=i&&(i.children[s]=null),l=n),l}_mergeChildren(e){const t=new Set;let i;this._forEachLeaf(e,e=>{const s=this._tiles.get(e.id);if(s){i=i?(0,ie.E$)(i,s.attributeKeys):new Set(s.attributeKeys);for(const e of s.objectIds)t.has(e)||(t.add(e),this._referenceFeature(e));this._remove(e)}}),this._addTileStorage(e,t,i??new Set),e.isLeaf=!0,e.children[0]=e.children[1]=e.children[2]=e.children[3]=null,this._tileFeatureCounts.set(e.id,t.size)}_forEachLeaf(e,t){for(const i of e.children)null!=i&&(i.isLeaf?t(i):this._forEachLeaf(i,t))}_purge(e){if(null!=e)if(e.isLeaf)this._remove(e);else for(let t=0;t<e.children.length;t++){const i=e.children[t];this._purge(i),e.children[t]=null}}_collectMissingTiles(e,t,i,s){const r=new Ae(i,e,this.extent);return this._collectMissingTilesRecurse(t,r,1,s),r.info}_collectMissingTilesRecurse(e,t,i,s){const r=this._tiles.has(e.id)&&!this._hasAttributesForTile(e.id,s);if(r&&t.addMissing(e.level,e.row,e.col,i),e.isLeaf)return;if(!e.hasChildren)return void(r||t.addMissing(e.level,e.row,e.col,i));const n=i/2;for(let i=0;i<e.children.length;i++){const r=e.children[i];null==r?t.addMissing(e.level+1,(e.row<<1)+((2&i)>>1),(e.col<<1)+(1&i),n):this._collectMissingTilesRecurse(r,t,n,s)}}_referenceFeature(e){const t=(this._refCounts.get(e)||0)+1;return this._refCounts.set(e,t),1===t?0:2}_unreferenceFeature(e){const t=(this._refCounts.get(e)||0)-1;return 0===t?(this._refCounts.delete(e),1):(t>0&&this._refCounts.set(e,t),2)}get test(){}};(0,s.Cg)([(0,a.MZ)({constructOnly:!0})],Ie.prototype,"featureStore",void 0),(0,s.Cg)([(0,a.MZ)()],Ie.prototype,"tileInfo",void 0),(0,s.Cg)([(0,a.MZ)()],Ie.prototype,"extent",void 0),(0,s.Cg)([(0,a.MZ)()],Ie.prototype,"maximumByteSize",void 0),Ie=(0,s.Cg)([(0,a.$K)("esri.views.interactive.snapping.featureSources.featureServiceSource.FeatureServiceTileStore")],Ie);class Me{constructor(e,t,i){this.key=e,this.objectIds=t,this.attributeKeys=i}}class Fe extends F.U{constructor(){super(...arguments),this.isLeaf=!1,this.children=[null,null,null,null]}get hasChildren(){return!this.isLeaf&&(null!=this.children[0]||null!=this.children[1]||null!=this.children[2]||null!=this.children[3])}}class Te{constructor(e,t=[]){this.missingTiles=t,this.fullArea=0,this.coveredArea=0,this.fullArea=(0,ne.Wc)(e.extent),this.coveredArea=this.fullArea}prepend(e){this.missingTiles=e.missingTiles.concat(this.missingTiles),this.coveredArea+=e.coveredArea,this.fullArea+=e.fullArea}}class Ae{constructor(e,t,i){this._tileInfo=e,this._extent=null,this.info=new Te(t),null!=i&&(this._extent=(0,ne.VY)(i))}addMissing(e,t,i,s){const r=new F.U(e,t,i);this._tileInfo.updateTileInfo(r,1)&&(null==this._extent||(0,ne.HY)(this._extent,r.extent))&&(this.info.missingTiles.push({data:r,resolution:s}),this.info.coveredArea-=(0,ne.Wc)(r.extent))}}const ze=.18751;let Be=class extends r.nJ{constructor(){super(...arguments),this._isInitializing=!0,this.remoteClient=null,this._whenSetup=Promise.withResolvers(),this._elevationAligner=R(),this._elevationFilter=G(),this._symbologyCandidatesFetcher=D(),this._updatingHandles=new l.U,this._alignPointsInFeatures=async(e,t)=>{const i={query:e},s=await this.remoteClient.invoke("alignElevation",i,{signal:t});return(0,n.Te)(t),s},this._getSymbologyCandidates=async(e,t)=>{const i={candidates:e,spatialReference:this._spatialReference.toJSON()},s=await this.remoteClient.invoke("getSymbologyCandidates",i,{signal:t});return(0,n.Te)(t),s}}get updating(){return this._isInitializing||this._updatingHandles.updating||this._featureFetcher.updating}destroy(){this._featureFetcher?.destroy(),this._queryEngine?.destroy(),this._featureStore?.clear()}async setup(e){if(this.destroyed)return{result:{}};const{geometryType:t,objectIdField:i,timeInfo:s,fieldsIndex:r}=e.serviceInfo,{hasZ:n}=e,a=u.A.fromJSON(e.spatialReference);this._spatialReference=a,this._featureStore=new S(t,n,!1),this._featureStore.estimateFeatureUsedMemory=e=>e.usedMemory,this._queryEngine=new I.do({spatialReference:e.spatialReference,featureStore:this._featureStore,geometryType:t,fieldsIndex:r,hasZ:n,hasM:!1,featureIdInfo:{type:"object-id",fieldName:i},timeInfo:s}),this._featureFetcher=new ge({store:new Ie({featureStore:this._featureStore}),url:e.serviceInfo.url,currentVersion:e.serviceInfo.currentVersion,objectIdField:e.serviceInfo.objectIdField,globalIdField:e.serviceInfo.globalIdField,capabilities:e.serviceInfo.capabilities,spatialReference:a,sourceSpatialReference:u.A.fromJSON(e.serviceInfo.spatialReference),customParameters:e.configuration.customParameters});const l="3d"===e.configuration.viewType;return this._elevationAligner=R(l,{elevationInfo:null!=e.elevationInfo?A.A.fromJSON(e.elevationInfo):null,alignPointsInFeatures:this._alignPointsInFeatures}),this._elevationFilter=G(l),this.addHandles([(0,o.wB)(()=>this._featureFetcher.availability,e=>this.emit("notify-availability",{availability:e}),o.OH),(0,o.wB)(()=>this.updating,()=>this._notifyUpdating())]),this._whenSetup.resolve(),this._isInitializing=!1,this.configure(e.configuration)}async configure(e){return await this._updatingHandles.addPromise(this._whenSetup.promise),this._updateFeatureFetcherConfiguration(e),Oe}async setSuspended(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),this._featureFetcher.suspended=e,Oe}async updateOutFields(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),this._featureFetcher.outFields=new Set(e??[]),Oe}async fetchCandidates(e,t){await this._whenSetup.promise,(0,n.Te)(t);const i=function(e,t){const i=!!t||void 0;if(!e.filter)return{...e,query:{where:"1=1",returnZ:i}};const{distance:s,units:r,spatialRel:n,where:o,timeExtent:a,objectIds:l}=e.filter,u={geometry:e.filter.geometry?(0,h.rS)(e.filter.geometry):void 0,distance:s,units:r,spatialRel:n,timeExtent:a,objectIds:l,returnZ:i,where:o??"1=1"};return{...e,query:u}}(e,this._featureStore.hasZ),s=t?.signal,r=await this._queryEngine.executeQueryForSnapping(i,s);(0,n.Te)(s);const o=await this._elevationAligner.alignCandidates(r.candidates,u.A.fromJSON(e.point.spatialReference)??u.A.WGS84,s);(0,n.Te)(s);const a=await this._symbologyCandidatesFetcher.fetch(o,s);(0,n.Te)(s);const l=0===a.length?o:o.concat(a);return{result:{candidates:this._elevationFilter.filter(i,l)}}}async updateTiles(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),this._featureFetcher.tileSize=e.tileSize,this._featureFetcher.tilesOfInterest=e.tiles.map(e=>F.U.fromJSON(e)),this._featureFetcher.tileInfo=null!=e.tileInfo?M.A.fromJSON(e.tileInfo):null,Oe}async refresh(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),this._featureFetcher.refresh(),Oe}async whenNotUpdating(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),await(0,o.C_)(()=>!this.updating,t),(0,n.Te)(t),Oe}async getDebugInfo(e,t){return(0,n.Te)(t),{result:this._featureFetcher.debugInfo}}async handleEdits(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),await this._updatingHandles.addPromise(this._featureFetcher.handleEdits(e)),(0,n.Te)(t),Oe}async setHistoricMoment(e,t){return this._featureFetcher.setHistoricMoment(e.moment),Oe}async notifyElevationSourceChange(e,t){return this._elevationAligner.notifyElevationSourceChange(),Oe}async notifySymbologyChange(e,t){return this._symbologyCandidatesFetcher.notifySymbologyChange(),Oe}async setSymbologySnappingSupported(e){return this._symbologyCandidatesFetcher=D(e,this._getSymbologyCandidates),Oe}_updateFeatureFetcherConfiguration(e){this._featureFetcher.filter=null!=e.filter?T.A.fromJSON(e.filter):null,this._featureFetcher.customParameters=e.customParameters}_notifyUpdating(){this.emit("notify-updating",{updating:this.updating})}};(0,s.Cg)([(0,a.MZ)({readOnly:!0})],Be.prototype,"updating",null),(0,s.Cg)([(0,a.MZ)()],Be.prototype,"_isInitializing",void 0),Be=(0,s.Cg)([(0,a.$K)("esri.views.interactive.snapping.featureSources.featureServiceSource.FeatureServiceSnappingSourceWorker")],Be);const Pe=Be,Oe={result:{}}}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[4903],{60999(e,t,i){i.d(t,{DZ:()=>y,Ke:()=>h,Tj:()=>p,UT:()=>f,aD:()=>g,jJ:()=>u});var s=i(5482),l=i(69622),r=i(97768),n=i(17676),o=i(10107),a=i(64108);function u(e,t,i){return(0,n.Lx)(e.map((e,s)=>t.apply(i,[e,s])))}async function p(e,t,i){return(await(0,n.Lx)(e.map((e,s)=>t.apply(i,[e,s])))).map(e=>e.value)}function c(e){return{ok:!0,value:e}}function d(e){return{ok:!1,error:e}}async function h(e){if(null==e)return{ok:!1,error:new Error("no promise provided")};try{return c(await e)}catch(e){return d(e)}}async function y(e){try{return c(await e)}catch(e){return(0,n.QP)(e),d(e)}}function f(e,t){return new m(e,t)}let m=class extends l.A{get value(){return null!=(e=this._result)&&!0===e.ok?e.value:null;var e}get error(){return null!=(e=this._result)&&!1===e.ok?e.error:null;var e}get finished(){return null!=this._result}constructor(e,t){super({}),this._result=null,this._abortHandle=null,this.abort=()=>{this._abortController=(0,r.DC)(this._abortController)},this.remove=this.abort,this._abortController=new AbortController;const{signal:i}=this._abortController;this.promise=e(i),this.promise.then(e=>{this._result=c(e),this._cleanup()},e=>{this._result=d(e),this._cleanup()}),this._abortHandle=(0,n.u7)(t,this.abort)}normalizeCtorArgs(){return{}}destroy(){this.abort()}_cleanup(){this._abortHandle=(0,r.xt)(this._abortHandle),this._abortController=null}};(0,s.Cg)([(0,o.MZ)()],m.prototype,"value",null),(0,s.Cg)([(0,o.MZ)()],m.prototype,"error",null),(0,s.Cg)([(0,o.MZ)()],m.prototype,"finished",null),(0,s.Cg)([(0,o.MZ)()],m.prototype,"promise",void 0),(0,s.Cg)([(0,o.MZ)()],m.prototype,"_result",void 0),m=(0,s.Cg)([(0,a.$)("esri.core.asyncUtils.ReactiveTask")],m);class g{constructor(){this._sequence=Promise.resolve()}async acquire(){let e;this._sequence=new Promise(t=>{e=this._sequence.then(()=>t,()=>t)});const t=await e;return{[Symbol.dispose]:t}}async run(e){const t={stack:[],error:void 0,hasError:!1};try{return(0,s.mS)(t,await this.acquire(),!1),await e()}catch(e){t.error=e,t.hasError=!0}finally{(0,s.hk)(t)}}}},86162(e,t,i){i.d(t,{A:()=>M});var s,l=i(5482),r=i(66552),n=i(4718),o=i(53966),a=i(91429),u=i(56507),p=i(30524),c=i(92438),d=i(63988),h=i(88542),y=i(49849),f=i(20061),m=i(43668),g=i(33910),v=i(36005),b=i(43937),w=i(93223);const V="percent-of-total",S="field",C=new r.J({esriNormalizeByLog:"log",esriNormalizeByPercentOfTotal:V,esriNormalizeByField:S}),x=(0,u.dp)(h.A);let M=s=class extends((0,d.h)(c.A)){constructor(e){super(e),this._compiledValueExpression={valueExpression:null,compiledFunction:null},this.backgroundFillSymbol=null,this.classBreakInfos=null,this.defaultLabel=null,this.defaultSymbol=null,this.field=null,this.isMaxInclusive=!0,this.legendOptions=null,this.normalizationField=null,this.normalizationTotal=null,this.type="class-breaks",this.valueExpression=null,this.valueExpressionTitle=null,this._set("classBreakInfos",[])}readClassBreakInfos(e,t,i){if(!Array.isArray(e))return;let s=t.minValue;return e.map(e=>{const t=new h.A;return t.read(e,i),null==t.minValue&&(t.minValue=s),null==t.maxValue&&(t.maxValue=t.minValue),s=t.maxValue,t})}writeClassBreakInfos(e,t,i,s){const l=e.map(e=>e.write({},s));this._areClassBreaksConsecutive()&&l.forEach(e=>delete e.classMinValue),t[i]=l}castField(e){return null==e?e:"function"==typeof e?(o.A.getLogger(this).error(".field: field must be a string value"),null):(0,u.GX)(e)}get minValue(){return this.classBreakInfos&&this.classBreakInfos[0]&&this.classBreakInfos[0].minValue||0}get normalizationType(){let e=this._get("normalizationType");const t=!!this.normalizationField,i=null!=this.normalizationTotal;return t||i?(e=t&&S||i&&V||null,t&&i&&o.A.getLogger(this).warn("warning: both normalizationField and normalizationTotal are set!")):e!==S&&e!==V||(e=null),e}set normalizationType(e){this._set("normalizationType",e)}addClassBreakInfo(e,t,i){let s=null;s="number"==typeof e?new h.A({minValue:e,maxValue:t,symbol:(0,g.dp)(i)}):x((0,n.o8)(e)),this.classBreakInfos.push(s),1===this.classBreakInfos.length&&this.notifyChange("minValue")}removeClassBreakInfo(e,t){const i=this.classBreakInfos.length;for(let s=0;s<i;s++){const i=[this.classBreakInfos[s].minValue,this.classBreakInfos[s].maxValue];if(i[0]===e&&i[1]===t){this.classBreakInfos.splice(s,1);break}}}getBreakIndex(e,t){return this.valueExpression&&null==t?.arcade&&o.A.getLogger(this).warn(""),this.valueExpression?this._getBreakIndexForExpression(e,t):this._getBreakIndexForField(e)}async getClassBreakInfo(e,t){let i=t;this.valueExpression&&null==t?.arcade&&(i={...i,arcade:await(0,m.l)()});const s=this.getBreakIndex(e,i);return-1!==s?this.classBreakInfos[s]:null}getSymbol(e,t){if(this.valueExpression&&null==t?.arcade)return void o.A.getLogger(this).error("#getSymbol()","Please use getSymbolAsync if valueExpression is used");const i=this.getBreakIndex(e,t);return i>-1?this.classBreakInfos[i].symbol:this.defaultSymbol}async getSymbolAsync(e,t){let i=t;if(this.valueExpression&&null==t?.arcade){const e=await(0,m.l)(),{arcadeUtils:t}=e;t.hasGeometryOperations(this.valueExpression)&&await t.enableGeometryOperations(),i={...i,arcade:e}}const s=this.getBreakIndex(e,i);return s>-1?this.classBreakInfos[s].symbol:this.defaultSymbol}get symbols(){const e=[];return this.classBreakInfos.forEach(t=>{t.symbol&&e.push(t.symbol)}),this.defaultSymbol&&e.push(this.defaultSymbol),e}getAttributeHash(){return this.visualVariables?.reduce((e,t)=>e+t.getAttributeHash(),"")??""}getMeshHash(){const e=JSON.stringify(this.backgroundFillSymbol),t=JSON.stringify(this.defaultSymbol),i=`${this.normalizationField}.${this.normalizationType}.${this.normalizationTotal}`;return`${e}.${t}.${this.classBreakInfos.reduce((e,t)=>e+t.getMeshHash(),"")}.${i}.${this.field}.${this.valueExpression}`}get arcadeRequired(){return this.arcadeRequiredForVisualVariables||!!this.valueExpression}clone(){return new s({field:this.field,backgroundFillSymbol:this.backgroundFillSymbol?.clone(),defaultLabel:this.defaultLabel,defaultSymbol:this.defaultSymbol?.clone(),valueExpression:this.valueExpression,valueExpressionTitle:this.valueExpressionTitle,classBreakInfos:(0,n.o8)(this.classBreakInfos),isMaxInclusive:this.isMaxInclusive,normalizationField:this.normalizationField,normalizationTotal:this.normalizationTotal,normalizationType:this.normalizationType,visualVariables:(0,n.o8)(this.visualVariables),legendOptions:(0,n.o8)(this.legendOptions),authoringInfo:(0,n.o8)(this.authoringInfo)})}async collectRequiredFields(e,t){const i=[this.collectVVRequiredFields(e,t),this.collectSymbolFields(e,t)];await Promise.all(i)}async collectSymbolFields(e,t){const i=[...this.symbols.map(i=>i.collectRequiredFields(e,t)),(0,p.Dx)(e,t,null,this.valueExpression)];(0,p.rq)(e,t,this.field),(0,p.rq)(e,t,this.normalizationField),await Promise.all(i)}_getBreakIndexForExpression(e,t){const{viewingMode:i,scale:s,spatialReference:l,arcade:r,timeZone:n}=t??{},{valueExpression:o}=this;let a=this._compiledValueExpression.valueExpression===o?this._compiledValueExpression.compiledFunction:null;const u=r.arcadeUtils;if(!a){const e=u.createSyntaxTree(o);a=u.createFunction(e),this._compiledValueExpression.compiledFunction=a}this._compiledValueExpression.valueExpression=o;const p=u.executeFunction(a,u.createExecContext(e,u.getViewInfo({viewingMode:i,scale:s,spatialReference:l}),n));return this._getBreakIndexfromInfos(p)}_getBreakIndexForField(e){const t=this.field,i=e.attributes,s=this.normalizationType;let l=parseFloat(i[t]);if(s){const e=this.normalizationTotal,t=parseFloat(this.normalizationField?i[this.normalizationField]:void 0);if("log"===s)l=Math.log(l)*Math.LOG10E;else if(s!==V||null==e||isNaN(e)){if(s===S&&!isNaN(t)){if(isNaN(l)||isNaN(t))return-1;l/=t}}else l=l/e*100}return this._getBreakIndexfromInfos(l)}_getBreakIndexfromInfos(e){const t=this.isMaxInclusive;if(null!=e&&"number"==typeof e&&!isNaN(e))for(let i=0;i<this.classBreakInfos.length;i++){const s=[this.classBreakInfos[i].minValue,this.classBreakInfos[i].maxValue];if(s[0]<=e&&(t?e<=s[1]:e<s[1]))return i}return-1}_areClassBreaksConsecutive(){const e=this.classBreakInfos,t=e.length;for(let i=1;i<t;i++)if(e[i-1].maxValue!==e[i].minValue)return!1;return!0}};(0,l.Cg)([(0,a.MZ)(y.As)],M.prototype,"backgroundFillSymbol",void 0),(0,l.Cg)([(0,a.MZ)({type:[h.A],json:{write:{isRequired:!0}}})],M.prototype,"classBreakInfos",void 0),(0,l.Cg)([(0,v.w)("classBreakInfos")],M.prototype,"readClassBreakInfos",null),(0,l.Cg)([(0,b.K)("classBreakInfos")],M.prototype,"writeClassBreakInfos",null),(0,l.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],M.prototype,"defaultLabel",void 0),(0,l.Cg)([(0,a.MZ)(y.z4)],M.prototype,"defaultSymbol",void 0),(0,l.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],M.prototype,"field",void 0),(0,l.Cg)([(0,a.wg)("field")],M.prototype,"castField",null),(0,l.Cg)([(0,a.MZ)({type:Boolean})],M.prototype,"isMaxInclusive",void 0),(0,l.Cg)([(0,a.MZ)({type:f.A,json:{write:!0}})],M.prototype,"legendOptions",void 0),(0,l.Cg)([(0,a.MZ)({type:Number,readOnly:!0,value:null,json:{read:!1,write:{overridePolicy(){return 0!==this.classBreakInfos.length&&this._areClassBreaksConsecutive()?{enabled:!0}:{enabled:!1}}}}})],M.prototype,"minValue",null),(0,l.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],M.prototype,"normalizationField",void 0),(0,l.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],M.prototype,"normalizationTotal",void 0),(0,l.Cg)([(0,a.MZ)({type:C.apiValues,value:null,json:{type:C.jsonValues,read:C.read,write:C.write}})],M.prototype,"normalizationType",null),(0,l.Cg)([(0,w.e)({classBreaks:"class-breaks"})],M.prototype,"type",void 0),(0,l.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],M.prototype,"valueExpression",void 0),(0,l.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],M.prototype,"valueExpressionTitle",void 0),M=s=(0,l.Cg)([(0,a.$K)("esri.renderers.ClassBreaksRenderer")],M)},92438(e,t,i){i.d(t,{A:()=>u});var s=i(5482),l=i(66552),r=i(25482),n=i(91429),o=i(30943);const a=new l.J({simple:"simple",uniqueValue:"unique-value",classBreaks:"class-breaks",heatmap:"heatmap",dotDensity:"dot-density",dictionary:"dictionary",pieChart:"pie-chart"},{ignoreUnknown:!0});let u=class extends r.o{constructor(e){super(e),this.authoringInfo=null,this.type=null}async getRequiredFields(e){if(!this.collectRequiredFields)return[];const t=new Set;return await this.collectRequiredFields(t,e),Array.from(t).sort()}getSymbol(e,t){}async getSymbolAsync(e,t){}get symbols(){return[]}get arcadeRequired(){return!1}getAttributeHash(){return JSON.stringify(this)}getMeshHash(){return JSON.stringify(this)}};(0,s.Cg)([(0,n.MZ)({type:o.A,json:{write:!0}})],u.prototype,"authoringInfo",void 0),(0,s.Cg)([(0,n.MZ)({type:a.apiValues,readOnly:!0,json:{type:a.jsonValues,read:!1,write:{writer:a.write,ignoreOrigin:!0,isRequired:!0}}})],u.prototype,"type",void 0),u=(0,s.Cg)([(0,n.$K)("esri.renderers.Renderer")],u)},93618(e,t,i){i.d(t,{A:()=>O});var s=i(5482),l=i(4718),r=i(53966),n=i(93637),o=i(36708),a=i(91429),u=i(6797),p=i(56507),c=i(30524),d=i(20655),h=i(92438),y=i(63988),f=i(49849),m=i(20061),g=i(69540),v=i(25482);let b=class extends((0,g.OU)(v.o)){constructor(e){super(e),this.value=null,this.value2=null,this.value3=null}};(0,s.Cg)([(0,a.MZ)(f.Ug)],b.prototype,"value",void 0),(0,s.Cg)([(0,a.MZ)(f.Ug)],b.prototype,"value2",void 0),(0,s.Cg)([(0,a.MZ)(f.Ug)],b.prototype,"value3",void 0),b=(0,s.Cg)([(0,a.$K)("esri.renderers.support.UniqueValue")],b);var w=i(4576);let V=class extends((0,g.OU)(v.o)){constructor(e){super(e),this.description=null,this.label=null,this.symbol=null}get values(){return this._get("values")}set values(e){if(null!=e){const t=typeof(e=Array.isArray(e)?e:[e])[0];e="string"===t||"number"===t?e.map(e=>new b({value:e})):"object"===t?e[0]instanceof b?e:e.map(e=>new b(e)):null}this._set("values",e)}};(0,s.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],V.prototype,"description",void 0),(0,s.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],V.prototype,"label",void 0),(0,s.Cg)([(0,a.MZ)(f.z4)],V.prototype,"symbol",void 0),(0,s.Cg)([(0,a.MZ)({json:{type:[[String]],read:{reader:e=>e?e.map(e=>new b({value:e[0],value2:e[1],value3:e[2]})):null},write:{writer:(e,t)=>{const i=[];for(const t of e){const e=[t.value,t.value2,t.value3].filter(w.Ru).map(e=>e.toString());i.push(e)}t.values=i}}}})],V.prototype,"values",null),V=(0,s.Cg)([(0,a.$K)("esri.renderers.support.UniqueValueClass")],V);let S=class extends((0,g.OU)(v.o)){constructor(e){super(e),this.heading=null,this.classes=null}};(0,s.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],S.prototype,"heading",void 0),(0,s.Cg)([(0,a.MZ)({type:[V],json:{write:{isRequired:!0}}})],S.prototype,"classes",void 0),S=(0,s.Cg)([(0,a.$K)("esri.renderers.support.UniqueValueGroup")],S);var C,x=i(94833),M=i(43668),z=i(97159),_=i(37757),I=i(85594),A=i(33910),j=i(59923),q=i(93223),Z=i(43937),F=i(36005);const k="uvInfos-watcher",E="uvGroups-watcher",U=(0,p.dp)(x.A);function T(e){return null!=e&&""!==e&&("string"!=typeof e||""!==e.trim()&&"<null>"!==e.toLowerCase())||(e=null),e+""}let O=C=class extends((0,y.h)(h.A)){constructor(e){super(e),this._valueInfoMap={},this._isDefaultSymbolDerived=!1,this._isInfosSource=null,this.type="unique-value",this.backgroundFillSymbol=null,this.orderByClassesEnabled=!1,this.valueExpressionTitle=null,this.legendOptions=null,this.defaultLabel=null,this.portal=null,this.styleOrigin=null,this.diff={uniqueValueInfos(e,t){if(!e&&!t)return;if(!e||!t)return{type:"complete",oldValue:e,newValue:t};let i=!1;const s={type:"collection",added:[],removed:[],changed:[],unchanged:[]};for(let l=0;l<t.length;l++){const r=e.find(e=>e.value===t[l].value);r?(0,u.Ui)(r,t[l])?(s.changed.push({type:"complete",oldValue:r,newValue:t[l]}),i=!0):s.unchanged.push({oldValue:r,newValue:t[l]}):(s.added.push(t[l]),i=!0)}for(let l=0;l<e.length;l++)t.find(t=>t.value===e[l].value)||(s.removed.push(e[l]),i=!0);return i?s:void 0}},this._set("uniqueValueInfos",[]),this._set("uniqueValueGroups",[])}get _cache(){return{compiledFunc:null}}set field(e){this._set("field",e),this._updateFieldDelimiter(),this._updateUniqueValues()}castField(e){return null==e||"function"==typeof e?e:(0,p.GX)(e)}writeField(e,t,i,s){"string"==typeof e?t[i]=e:s?.messages?(0,j.qt)(s,"UniqueValueRenderer.field","set to a function cannot be written to JSON"):r.A.getLogger(this).error(".field: cannot write field to JSON since it's not a string value")}set field2(e){this._set("field2",e),this._updateFieldDelimiter(),this._updateUniqueValues()}set field3(e){this._set("field3",e),this._updateUniqueValues()}set valueExpression(e){this._set("valueExpression",e),this._updateUniqueValues()}set defaultSymbol(e){this._isDefaultSymbolDerived=!1,this._set("defaultSymbol",e)}set fieldDelimiter(e){this._set("fieldDelimiter",e),this._updateUniqueValues()}readPortal(e,t,i){return i.portal||d.A.getDefault()}readStyleOrigin(e,t,i){if(t.styleName)return Object.freeze({styleName:t.styleName});if(t.styleUrl){const e=(0,z.f)(t.styleUrl,i);return Object.freeze({styleUrl:e})}}writeStyleOrigin(e,t,i,s){e.styleName?t.styleName=e.styleName:e.styleUrl&&(t.styleUrl=(0,z.t)(e.styleUrl,s))}set uniqueValueGroups(e){this.styleOrigin?r.A.getLogger(this).error("#uniqueValueGroups=","Cannot modify unique value groups of a UniqueValueRenderer created from a web style"):(this._set("uniqueValueGroups",e),this._updateInfosFromGroups(),this._isInfosSource=!1,this._watchUniqueValueGroups())}set uniqueValueInfos(e){this.styleOrigin?r.A.getLogger(this).error("#uniqueValueInfos=","Cannot modify unique value infos of a UniqueValueRenderer created from a web style"):(this._set("uniqueValueInfos",e),this._updateValueInfoMap(),this._updateGroupsFromInfos(),this._isInfosSource=!0,this._watchUniqueValueInfos())}addUniqueValueInfo(e,t){if(this.styleOrigin)return void r.A.getLogger(this).error("#addUniqueValueInfo()","Cannot modify unique value infos of a UniqueValueRenderer created from a web style");let i;i="object"==typeof e?U(e):new x.A({value:e,symbol:(0,A.dp)(t)}),this.uniqueValueInfos?.push(i),this._valueInfoMap[T(i.value)]=i,this._updateGroupsFromInfos(),this._isInfosSource=!0,this._watchUniqueValueInfos()}removeUniqueValueInfo(e){if(this.styleOrigin)return void r.A.getLogger(this).error("#removeUniqueValueInfo()","Cannot modify unique value infos of a UniqueValueRenderer created from a web style");const t=this.uniqueValueInfos;if(t)for(let i=0;i<t.length;i++){const s=t[i];if(String(s.value)===String(e)){delete this._valueInfoMap[T(e)],t.splice(i,1);break}}this._updateGroupsFromInfos(),this._isInfosSource=!0,this._watchUniqueValueInfos()}async getUniqueValueInfo(e,t){let i=t;return this.valueExpression&&null==t?.arcade&&(i={...i,arcade:await(0,M.l)()}),this._getUniqueValueInfo(e,i)}getSymbol(e,t){if(this.valueExpression&&null==t?.arcade)return void r.A.getLogger(this).error("#getSymbol()","Please use getSymbolAsync if valueExpression is used");const i=this._getUniqueValueInfo(e,t);return i?.symbol||this.defaultSymbol}async getSymbolAsync(e,t){let i=t;if(this.valueExpression&&null==i?.arcade){const e=await(0,M.l)(),{arcadeUtils:t}=e;t.hasGeometryOperations(this.valueExpression)&&await t.enableGeometryOperations(),i={...i,arcade:e}}const s=this._getUniqueValueInfo(e,i);return s?.symbol||this.defaultSymbol}get symbols(){const e=[];if(this._isInfosSource)for(const t of this.uniqueValueInfos??[])t.symbol&&e.push(t.symbol);else for(const t of this.uniqueValueGroups??[])for(const i of t.classes??[])i.symbol&&e.push(i.symbol);return this.defaultSymbol&&e.push(this.defaultSymbol),e}getAttributeHash(){return this.visualVariables?.reduce((e,t)=>e+t.getAttributeHash(),"")??""}getMeshHash(){const e=JSON.stringify(this.backgroundFillSymbol),t=JSON.stringify(this.defaultSymbol),i=this.uniqueValueInfos?.reduce((e,t)=>e+t.getMeshHash(),"");return`${e}.${t}.${i}.${this.field}.${this.field2}.${this.field3}.${this.fieldDelimiter}.${this.valueExpression}`}clone(){const e=new C({field:this.field,field2:this.field2,field3:this.field3,defaultLabel:this.defaultLabel,defaultSymbol:(0,l.o8)(this.defaultSymbol),orderByClassesEnabled:this.orderByClassesEnabled,valueExpression:this.valueExpression,valueExpressionTitle:this.valueExpressionTitle,fieldDelimiter:this.fieldDelimiter,visualVariables:(0,l.o8)(this.visualVariables),legendOptions:(0,l.o8)(this.legendOptions),authoringInfo:(0,l.o8)(this.authoringInfo),backgroundFillSymbol:(0,l.o8)(this.backgroundFillSymbol)});this._isDefaultSymbolDerived&&(e._isDefaultSymbolDerived=!0),e._set("portal",this.portal);const t=(0,l.o8)(this.uniqueValueInfos),i=(0,l.o8)(this.uniqueValueGroups);return this.styleOrigin&&(e._set("styleOrigin",Object.freeze((0,l.o8)(this.styleOrigin))),Object.freeze(t),Object.freeze(i)),e._set("uniqueValueInfos",t),e._updateValueInfoMap(),e._set("uniqueValueGroups",i),e._isInfosSource=this._isInfosSource,e._watchUniqueValueInfosAndGroups(),e}get arcadeRequired(){return this.arcadeRequiredForVisualVariables||!!this.valueExpression}async collectRequiredFields(e,t){const i=[this.collectVVRequiredFields(e,t),this.collectSymbolFields(e,t)];await Promise.all(i)}async collectSymbolFields(e,t){const i=[...this.symbols.map(i=>i.collectRequiredFields(e,t)),(0,c.Dx)(e,t,null,this.valueExpression)];(0,c.rq)(e,t,this.field),(0,c.rq)(e,t,this.field2),(0,c.rq)(e,t,this.field3),await Promise.all(i)}populateFromStyle(){return(0,I.cF)(this.styleOrigin,{portal:this.portal}).then(e=>{const t=[];return this._valueInfoMap={},e?.data&&Array.isArray(e.data.items)&&e.data.items.forEach(i=>{const s=new _.A({styleUrl:e.styleUrl,styleName:e.styleName,portal:this.portal,name:i.name});this.defaultSymbol||i.name!==e.data.defaultItem||(this.defaultSymbol=s,this._isDefaultSymbolDerived=!0);const l=new x.A({value:i.name,symbol:s});t.push(l),this._valueInfoMap[T(i.name)]=l}),this._set("uniqueValueInfos",Object.freeze(t)),this._updateGroupsFromInfos(!0),this._isInfosSource=null,this._watchUniqueValueInfos(),!this.defaultSymbol&&this.uniqueValueInfos?.length&&(this.defaultSymbol=this.uniqueValueInfos[0].symbol,this._isDefaultSymbolDerived=!0),this})}_updateFieldDelimiter(){this.field&&this.field2&&!this.fieldDelimiter&&this._set("fieldDelimiter",",")}_updateUniqueValues(){null!=this._isInfosSource&&(this._isInfosSource?this._updateGroupsFromInfos():this._updateInfosFromGroups())}_updateValueInfoMap(){this._valueInfoMap={};const{uniqueValueInfos:e}=this;if(e)for(const t of e)this._valueInfoMap[T(t.value)]=t}_watchUniqueValueInfosAndGroups(){this._watchUniqueValueInfos(),this._watchUniqueValueGroups()}_watchUniqueValueInfos(){this.removeHandles(k);const{uniqueValueInfos:e}=this;if(e){const t=[];for(const i of e)t.push((0,o.wB)(()=>({symbol:i.symbol,value:i.value,label:i.label,description:i.description}),(e,t)=>{e!==t&&(this._updateGroupsFromInfos(),this._isInfosSource=!0)},{sync:!0}));this.addHandles(t,k)}}_watchUniqueValueGroups(){this.removeHandles(E);const{uniqueValueGroups:e}=this;if(e){const t=[];for(const i of e){t.push((0,o.wB)(()=>({classes:i.classes}),(e,t)=>{e!==t&&(this._updateInfosFromGroups(),this._isInfosSource=!1)},{sync:!0}));for(const e of i.classes??[])t.push((0,o.wB)(()=>({symbol:e.symbol,values:e.values,label:e.label,description:e.description}),(e,t)=>{e!==t&&(this._updateInfosFromGroups(),this._isInfosSource=!1)},{sync:!0}))}this.addHandles(t,E)}}_updateInfosFromGroups(){if(!this.uniqueValueGroups)return this._set("uniqueValueInfos",null),this._updateValueInfoMap(),void this._watchUniqueValueInfos();const e=[],{field:t,field2:i,field3:s,fieldDelimiter:l,uniqueValueGroups:r,valueExpression:n}=this;if(!t&&!n)return this._set("uniqueValueInfos",e),this._updateValueInfoMap(),void this._watchUniqueValueInfos();const o=!(!t||!i);for(const t of r)for(const r of t.classes??[]){const{symbol:t,label:n,values:a,description:u}=r;for(const r of a??[]){const{value:a,value2:p,value3:c}=r,d=[a];i&&d.push(p),s&&d.push(c);const h=o?d.join(l||""):d[0]??void 0;e.push(new x.A({symbol:t,label:n,value:h,description:u}))}}this._set("uniqueValueInfos",e),this._updateValueInfoMap(),this._watchUniqueValueInfos()}_updateGroupsFromInfos(e=!1){if(!this.uniqueValueInfos)return this._set("uniqueValueGroups",null),void this._watchUniqueValueGroups();const{field:t,field2:i,valueExpression:s,fieldDelimiter:l,uniqueValueInfos:r}=this;if(!t&&!s||!r.length)return this._set("uniqueValueGroups",[]),void this._watchUniqueValueGroups();const n=!(!t||!i),o=r.map(e=>{const{symbol:t,label:i,value:s,description:r}=e,[o,a,u]=n?s?.toString()?.split(l||"")||[]:[s];return new V({symbol:t,label:i,description:r,values:[new b({value:o,value2:a,value3:u})]})}),a=[new S({classes:o})];e&&Object.freeze(a),this._set("uniqueValueGroups",a),this._watchUniqueValueGroups()}_getUniqueValueInfo(e,t){return this.valueExpression?this._getUnqiueValueInfoForExpression(e,t):this._getUnqiueValueInfoForFields(e)}_getUnqiueValueInfoForExpression(e,t){const{viewingMode:i,scale:s,spatialReference:l,arcade:r,timeZone:n}=t??{};let o=this._cache.compiledFunc;const a=r.arcadeUtils;if(!o){const e=a.createSyntaxTree(this.valueExpression);o=a.createFunction(e),this._cache.compiledFunc=o}const u=a.executeFunction(o,a.createExecContext(e,a.getViewInfo({viewingMode:i,scale:s,spatialReference:l}),n));return this._valueInfoMap[T(u)]}_getUnqiueValueInfoForFields(e){const t=this.field,i=e.attributes;let s;if(this.field2){const e=this.field2,l=this.field3,r=[];t&&r.push(i[t]),e&&r.push(i[e]),l&&r.push(i[l]),s=r.join(this.fieldDelimiter||"")}else t&&(s=i[t]);return this._valueInfoMap[T(s)]}static fromPortalStyle(e,t){const i=new C(t?.properties);i._set("styleOrigin",Object.freeze({styleName:e})),i._set("portal",t?.portal||d.A.getDefault());const s=i.populateFromStyle();return s.catch(t=>{r.A.getLogger(this.prototype).error(`#fromPortalStyle('${e}'[, ...])`,"Failed to create unique value renderer from style name",t)}),s}static fromStyleUrl(e,t){const i=new C(t?.properties);i._set("styleOrigin",Object.freeze({styleUrl:e}));const s=i.populateFromStyle();return s.catch(t=>{r.A.getLogger(this.prototype).error(`#fromStyleUrl('${e}'[, ...])`,"Failed to create unique value renderer from style URL",t)}),s}};(0,s.Cg)([(0,a.MZ)({readOnly:!0})],O.prototype,"_cache",null),(0,s.Cg)([(0,q.e)({uniqueValue:"unique-value"})],O.prototype,"type",void 0),(0,s.Cg)([(0,a.MZ)(f.As)],O.prototype,"backgroundFillSymbol",void 0),(0,s.Cg)([(0,a.MZ)({value:null,json:{type:String,read:{source:"field1"},write:{target:"field1"}}})],O.prototype,"field",null),(0,s.Cg)([(0,a.wg)("field")],O.prototype,"castField",null),(0,s.Cg)([(0,Z.K)("field")],O.prototype,"writeField",null),(0,s.Cg)([(0,a.MZ)({type:String,value:null,json:{write:!0}})],O.prototype,"field2",null),(0,s.Cg)([(0,a.MZ)({type:String,value:null,json:{write:!0}})],O.prototype,"field3",null),(0,s.Cg)([(0,a.MZ)({type:Boolean,json:{name:"drawInClassOrder",default:!1,write:!0,origins:{"web-scene":{write:!1}}}})],O.prototype,"orderByClassesEnabled",void 0),(0,s.Cg)([(0,a.MZ)({type:String,value:null,json:{write:!0}})],O.prototype,"valueExpression",null),(0,s.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],O.prototype,"valueExpressionTitle",void 0),(0,s.Cg)([(0,a.MZ)({type:m.A,json:{write:!0}})],O.prototype,"legendOptions",void 0),(0,s.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],O.prototype,"defaultLabel",void 0),(0,s.Cg)([(0,a.MZ)((0,n.$N)({...f.z4},{json:{write:{overridePolicy(){return{enabled:!this._isDefaultSymbolDerived}}},origins:{"web-scene":{write:{overridePolicy(){return{enabled:!this._isDefaultSymbolDerived}}}}}}}))],O.prototype,"defaultSymbol",null),(0,s.Cg)([(0,a.MZ)({type:String,value:null,json:{write:!0}})],O.prototype,"fieldDelimiter",null),(0,s.Cg)([(0,a.MZ)({type:d.A,readOnly:!0})],O.prototype,"portal",void 0),(0,s.Cg)([(0,F.w)("portal",["styleName"])],O.prototype,"readPortal",null),(0,s.Cg)([(0,a.MZ)({readOnly:!0,json:{write:{enabled:!1,overridePolicy:()=>({enabled:!0})}}})],O.prototype,"styleOrigin",void 0),(0,s.Cg)([(0,F.w)("styleOrigin",["styleName","styleUrl"])],O.prototype,"readStyleOrigin",null),(0,s.Cg)([(0,Z.K)("styleOrigin",{styleName:{type:String},styleUrl:{type:String}})],O.prototype,"writeStyleOrigin",null),(0,s.Cg)([(0,a.MZ)({type:[S],json:{read:{source:["uniqueValueGroups","uniqueValueInfos"],reader:(e,t,i)=>(t.uniqueValueGroups||function(e){const{field1:t,field2:i,field3:s,fieldDelimiter:l,uniqueValueInfos:r,valueExpression:n}=e,o=!(!t||!i);return[{classes:(r??[]).map(e=>{const{symbol:r,label:a,value:u,description:p}=e,[c,d,h]=o?u?.toString()?.split(l||"")||[]:[u],y=[];return(t||n)&&y.push(c),i&&y.push(d),s&&y.push(h),{symbol:r,label:a,values:[y],description:p}})}]}(t)).map(e=>S.fromJSON(e,i))},write:{overridePolicy(){return this.styleOrigin?{enabled:!1}:{enabled:!0}}}}})],O.prototype,"uniqueValueGroups",null),(0,s.Cg)([(0,a.MZ)({type:[x.A],json:{read:!1,write:{isRequired:!0,overridePolicy(){return this.styleOrigin?{enabled:!1}:{enabled:!0,isRequired:!0}}}}})],O.prototype,"uniqueValueInfos",null),O=C=(0,s.Cg)([(0,a.$K)("esri.renderers.UniqueValueRenderer")],O)},63988(e,t,i){i.d(t,{h:()=>C});var s=i(5482),l=i(91429),r=i(30524),n=i(2024),o=i(62724),a=i(23461),u=i(48940),p=i(2795),c=i(69622),d=i(66552),h=i(53966),y=i(59923);const f={color:n.A,size:u.A,opacity:o.A,rotation:a.A},m=new d.J({colorInfo:"color",transparencyInfo:"opacity",rotationInfo:"rotation",sizeInfo:"size"}),g=/^\[([^\]]+)\]$/i;let v=class extends c.A{constructor(){super(...arguments),this.colorVariables=null,this.opacityVariables=null,this.rotationVariables=null,this.sizeVariables=null}set visualVariables(e){if(this._resetVariables(),e=e?.filter(e=>!!e),e?.length){for(const t of e)switch(t.type){case"color":this.colorVariables.push(t);break;case"opacity":this.opacityVariables.push(t);break;case"rotation":this.rotationVariables.push(t);break;case"size":this.sizeVariables.push(t)}this.sizeVariables.length&&this.sizeVariables.some(e=>!!e.target)&&e.sort((e,t)=>{let i=null;return i=e.target===t.target?0:e.target?1:-1,i});for(let t=0;t<e.length;t++)e[t].index=t;this._set("visualVariables",e)}else this._set("visualVariables",e)}readVariables(e,t,i){const{rotationExpression:s,rotationType:l}=t,r=s?.match(g),n=r?.[1];if(n&&(e||(e=[]),e.push({type:"rotationInfo",rotationType:l,field:n})),e)return e.map(e=>{const t=m.read(e.type),s=f[t];s||(h.A.getLogger(this).warn(`Unknown variable type: ${t}`),(0,y.Yc)(i,"warning","visual-variable",`visualVariable of type '${t}' is not supported`,{definition:e}));const l=new s;return l.read(e,i),l})}writeVariables(e,t){const i=[];for(const s of e){const e=s.toJSON(t);e&&i.push(e)}return i}_resetVariables(){this.colorVariables=[],this.opacityVariables=[],this.rotationVariables=[],this.sizeVariables=[]}};(0,s.Cg)([(0,l.MZ)()],v.prototype,"visualVariables",null),v=(0,s.Cg)([(0,l.$K)("esri.renderers.visualVariables.VisualVariableFactory")],v);var b=i(69309),w=i(36005),V=i(43937);const S={base:p.A,key:"type",typeMap:{opacity:o.A,color:n.A,rotation:a.A,size:u.A}},C=e=>{const t=e;let i=class extends t{constructor(){super(...arguments),this._vvFactory=new v}set visualVariables(e){this._vvFactory.visualVariables=e,this._set("visualVariables",this._vvFactory.visualVariables)}readVisualVariables(e,t,i){return this._vvFactory.readVariables(e,t,i)}writeVisualVariables(e,t,i,s){t[i]=this._vvFactory.writeVariables(e,s)}get arcadeRequiredForVisualVariables(){return this.visualVariables?.some(({arcadeRequired:e})=>e)??!1}hasVisualVariables(e,t){return e?this.getVisualVariablesForType(e,t).length>0:this.getVisualVariablesForType("size",t).length>0||this.getVisualVariablesForType("color",t).length>0||this.getVisualVariablesForType("opacity",t).length>0||this.getVisualVariablesForType("rotation",t).length>0}getVisualVariablesForType(e,t){return this.visualVariables?.filter(i=>i.type===e&&("string"==typeof t?i.target===t:!1!==t||!i.target))??[]}async collectVVRequiredFields(e,t){let i=[];this.visualVariables&&(i=i.concat(this.visualVariables));for(const s of i)s&&(s.field&&(0,r.rq)(e,t,s.field),s.normalizationField&&(0,r.rq)(e,t,s.normalizationField),s.valueExpression&&(x(s.valueExpression,e,t)||await(0,r.Dx)(e,t,null,s.valueExpression)))}};return(0,s.Cg)([(0,l.MZ)({types:[S],value:null,json:{write:!0}})],i.prototype,"visualVariables",null),(0,s.Cg)([(0,w.w)("visualVariables",["visualVariables","rotationType","rotationExpression"])],i.prototype,"readVisualVariables",null),(0,s.Cg)([(0,V.K)("visualVariables")],i.prototype,"writeVisualVariables",null),i=(0,s.Cg)([(0,l.$K)("esri.renderers.mixins.VisualVariablesMixin")],i),i};function x(e,t,i){const s=(0,b.D)(e);return null!=s&&((0,r.rq)(t,i,s),!0)}},30943(e,t,i){i.d(t,{A:()=>k});var s,l=i(5482),r=i(66552),n=i(25482),o=i(4718),a=i(91429),u=i(56507);let p=s=class extends n.o{constructor(e){super(e),this.minValue=0,this.maxValue=0}clone(){return new s({minValue:this.minValue,maxValue:this.maxValue})}};(0,l.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],p.prototype,"minValue",void 0),(0,l.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],p.prototype,"maxValue",void 0),p=s=(0,l.Cg)([(0,a.$K)("esri.renderers.support.AuthoringInfoClassBreakInfo")],p);const c=p;var d;let h=d=class extends n.o{constructor(e){super(e),this.field="",this.normalizationField="",this.label="",this.classBreakInfos=new Array}clone(){return new d({field:this.field,normalizationField:this.normalizationField,label:this.label,classBreakInfos:(0,o.o8)(this.classBreakInfos)})}};(0,l.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],h.prototype,"field",void 0),(0,l.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],h.prototype,"normalizationField",void 0),(0,l.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],h.prototype,"label",void 0),(0,l.Cg)([(0,a.MZ)({type:[c],json:{write:!0}})],h.prototype,"classBreakInfos",void 0),h=d=(0,l.Cg)([(0,a.$K)("esri.renderers.support.AuthoringInfoFieldInfo")],h);const y=h;var f,m=i(79901);let g=f=class extends n.o{constructor(e){super(e),this.label=null,this.size=null,this.value=null}clone(){return new f({label:this.label,value:this.value,size:this.size})}};(0,l.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],g.prototype,"label",void 0),(0,l.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],g.prototype,"size",void 0),(0,l.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],g.prototype,"value",void 0),g=f=(0,l.Cg)([(0,a.$K)("esri.renderers.support.AuthoringInfoSizeStop")],g);const v=g;var b;const w=new r.J({percentTotal:"percent-of-total",ratio:"ratio",percent:"percent"}),V=new r.J({sizeInfo:"size",colorInfo:"color",transparencyInfo:"opacity",rotationInfo:"rotation"}),S={key:e=>"number"==typeof e?"number":"string",typeMap:{number:Number,string:String},base:null},C=["high-to-low","above-and-below","centered-on","extremes"],x=[...new Set(["high-to-low","above-and-below","centered-on","extremes","above","below","high-to-low","above-and-below","above","below","reference-size","spike"])],M=["seconds","minutes","hours","days","months","years"];let z=b=class extends n.o{constructor(e){super(e),this.endTime=null,this.field=null,this.maxSliderValue=null,this.minSliderValue=null,this.startTime=null,this.type=null,this.units=null}castEndTime(e){return"string"==typeof e||"number"==typeof e?e:null}get normalizationField(){return"reference-size"===this.theme||"spike"===this.theme?this._get("normalizationField"):null}set normalizationField(e){this._set("normalizationField",e)}get referenceSizeScale(){return"reference-size"===this.theme?this._get("referenceSizeScale"):null}set referenceSizeScale(e){this._set("referenceSizeScale",e)}get referenceSizeSymbolStyle(){return"reference-size"===this.theme?this._get("referenceSizeSymbolStyle"):null}set referenceSizeSymbolStyle(e){this._set("referenceSizeSymbolStyle",e)}get spikeSymbolStyle(){return"spike"===this.theme?this._get("spikeSymbolStyle"):null}set spikeSymbolStyle(e){this._set("spikeSymbolStyle",e)}castStartTime(e){return"string"==typeof e||"number"==typeof e?e:null}get sizeStops(){return"reference-size"===this.theme||"spike"===this.theme?this._get("sizeStops"):null}set sizeStops(e){this._set("sizeStops",e)}get style(){return"color"===this.type?this._get("style"):null}set style(e){this._set("style",e)}get theme(){return"color"===this.type||"size"===this.type?this._get("theme")||"high-to-low":null}set theme(e){this._set("theme",e)}clone(){return new b({endTime:this.endTime,field:this.field,maxSliderValue:this.maxSliderValue,minSliderValue:this.minSliderValue,normalizationField:this.normalizationField,referenceSizeScale:this.referenceSizeScale,referenceSizeSymbolStyle:this.referenceSizeSymbolStyle,spikeSymbolStyle:this.spikeSymbolStyle,sizeStops:(0,o.o8)(this.sizeStops),startTime:this.startTime,style:this.style,theme:this.theme,type:this.type,units:this.units})}};(0,l.Cg)([(0,a.MZ)({types:S,json:{write:!0}})],z.prototype,"endTime",void 0),(0,l.Cg)([(0,m.w)("endTime")],z.prototype,"castEndTime",null),(0,l.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],z.prototype,"field",void 0),(0,l.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],z.prototype,"maxSliderValue",void 0),(0,l.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],z.prototype,"minSliderValue",void 0),(0,l.Cg)([(0,a.MZ)({type:String,json:{origins:{"web-scene":{write:!1}},write:!0}})],z.prototype,"normalizationField",null),(0,l.Cg)([(0,a.MZ)({type:Number,value:null,json:{origins:{"web-scene":{write:!1}},write:!0}})],z.prototype,"referenceSizeScale",null),(0,l.Cg)([(0,a.MZ)({type:["circle","diamond","hexagon-flat","hexagon-pointy","square"],value:null,json:{origins:{"web-scene":{write:!1}},write:!0}})],z.prototype,"referenceSizeSymbolStyle",null),(0,l.Cg)([(0,a.MZ)({type:["triangle-closed-outline","triangle-gradient-fill-closed","triangle-gradient-fill-closed-outline","triangle-gradient-fill-open","triangle-gradient-fill-open-outline","triangle-open-outline","triangle-solid-fill-closed","triangle-solid-fill-closed-outline","triangle-solid-fill-open","triangle-solid-fill-open-outline"],value:null,json:{origins:{"web-scene":{write:!1}},write:!0}})],z.prototype,"spikeSymbolStyle",null),(0,l.Cg)([(0,a.MZ)({types:S,json:{write:!0}})],z.prototype,"startTime",void 0),(0,l.Cg)([(0,m.w)("startTime")],z.prototype,"castStartTime",null),(0,l.Cg)([(0,a.MZ)({type:[v],json:{origins:{"web-scene":{write:!1}},write:!0}})],z.prototype,"sizeStops",null),(0,l.Cg)([(0,a.MZ)({type:w.apiValues,value:null,json:{type:w.jsonValues,read:w.read,write:w.write}})],z.prototype,"style",null),(0,l.Cg)([(0,a.MZ)({type:x,value:null,json:{type:x,origins:{"web-scene":{type:C,write:{writer:(e,t)=>{C.includes(e)&&(t.theme=e)}}}},write:!0}})],z.prototype,"theme",null),(0,l.Cg)([(0,a.MZ)({type:V.apiValues,json:{type:V.jsonValues,read:V.read,write:V.write}})],z.prototype,"type",void 0),(0,l.Cg)([(0,a.MZ)({type:M,json:{type:M,write:!0}})],z.prototype,"units",void 0),z=b=(0,l.Cg)([(0,a.$K)("esri.renderers.support.AuthoringInfoVisualVariable")],z);const _=z;var I,A=i(95349),j=i(36005);const q=new r.J({esriClassifyDefinedInterval:"defined-interval",esriClassifyEqualInterval:"equal-interval",esriClassifyManual:"manual",esriClassifyNaturalBreaks:"natural-breaks",esriClassifyQuantile:"quantile",esriClassifyStandardDeviation:"standard-deviation"}),Z=new r.J({classedSize:"class-breaks-size",classedColor:"class-breaks-color",univariateColorSize:"univariate-color-size",relationship:"relationship",predominance:"predominance",dotDensity:"dot-density",flow:"flow"}),F=["inches","feet","yards","miles","nautical-miles","millimeters","centimeters","decimeters","meters","kilometers"];let k=I=class extends n.o{constructor(e){super(e),this.colorRamp=null,this.fadeRatio=null,this.isAutoGenerated=!1,this.lengthUnit=null,this.maxSliderValue=null,this.minSliderValue=null,this.visualVariables=null}get classificationMethod(){const e=this._get("classificationMethod"),t=this.type;return t&&"relationship"!==t?"class-breaks-size"===t||"class-breaks-color"===t?e||"manual":null:e}set classificationMethod(e){this._set("classificationMethod",e)}readColorRamp(e){return e?(0,A.r)(e):void 0}get fields(){return this.type&&"predominance"!==this.type?null:this._get("fields")}set fields(e){this._set("fields",e)}get field1(){return this.type&&"relationship"!==this.type?null:this._get("field1")}set field1(e){this._set("field1",e)}get field2(){return this.type&&"relationship"!==this.type?null:this._get("field2")}set field2(e){this._set("field2",e)}get flowTheme(){return"flow"===this.type?this._get("flowTheme"):null}set flowTheme(e){this._set("flowTheme",e)}get focus(){return this.type&&"relationship"!==this.type?null:this._get("focus")}set focus(e){this._set("focus",e)}get numClasses(){return this.type&&"relationship"!==this.type?null:this._get("numClasses")}set numClasses(e){this._set("numClasses",e)}get statistics(){return"univariate-color-size"===this.type&&"above-and-below"===this.univariateTheme?this._get("statistics"):null}set statistics(e){this._set("statistics",e)}get standardDeviationInterval(){const e=this.type;return e&&"relationship"!==e&&"class-breaks-size"!==e&&"class-breaks-color"!==e||this.classificationMethod&&"standard-deviation"!==this.classificationMethod?null:this._get("standardDeviationInterval")}set standardDeviationInterval(e){this._set("standardDeviationInterval",e)}get type(){return this._get("type")}set type(e){let t=e;"classed-size"===e?t="class-breaks-size":"classed-color"===e&&(t="class-breaks-color"),this._set("type",t)}get univariateSymbolStyle(){return"univariate-color-size"===this.type&&"above-and-below"===this.univariateTheme?this._get("univariateSymbolStyle"):null}set univariateSymbolStyle(e){this._set("univariateSymbolStyle",e)}get univariateTheme(){return"univariate-color-size"===this.type?this._get("univariateTheme"):null}set univariateTheme(e){this._set("univariateTheme",e)}clone(){return new I({classificationMethod:this.classificationMethod,colorRamp:(0,o.o8)(this.colorRamp),fadeRatio:(0,o.o8)(this.fadeRatio),fields:this.fields?.slice(),field1:(0,o.o8)(this.field1),field2:(0,o.o8)(this.field2),isAutoGenerated:this.isAutoGenerated,focus:this.focus,numClasses:this.numClasses,maxSliderValue:this.maxSliderValue,minSliderValue:this.minSliderValue,lengthUnit:this.lengthUnit,statistics:this.statistics,standardDeviationInterval:this.standardDeviationInterval,type:this.type,visualVariables:this.visualVariables&&this.visualVariables.map(e=>e.clone()),univariateSymbolStyle:this.univariateSymbolStyle,univariateTheme:this.univariateTheme,flowTheme:this.flowTheme})}};(0,l.Cg)([(0,a.MZ)({type:q.apiValues,value:null,json:{type:q.jsonValues,read:q.read,write:q.write,origins:{"web-document":{default:"manual",type:q.jsonValues,read:q.read,write:q.write}}}})],k.prototype,"classificationMethod",null),(0,l.Cg)([(0,a.MZ)({types:A.g,json:{write:!0}})],k.prototype,"colorRamp",void 0),(0,l.Cg)([(0,j.w)("colorRamp")],k.prototype,"readColorRamp",null),(0,l.Cg)([(0,a.MZ)({json:{write:!0,origins:{"web-scene":{write:!1,read:!1}}}})],k.prototype,"fadeRatio",void 0),(0,l.Cg)([(0,a.MZ)({type:[String],value:null,json:{write:!0}})],k.prototype,"fields",null),(0,l.Cg)([(0,a.MZ)({type:y,value:null,json:{write:!0}})],k.prototype,"field1",null),(0,l.Cg)([(0,a.MZ)({type:y,value:null,json:{write:!0}})],k.prototype,"field2",null),(0,l.Cg)([(0,a.MZ)({type:["flow-line","wave-front"],value:null,json:{write:!0,origins:{"web-scene":{write:!1}}}})],k.prototype,"flowTheme",null),(0,l.Cg)([(0,a.MZ)({type:["HH","HL","LH","LL"],value:null,json:{write:!0}})],k.prototype,"focus",null),(0,l.Cg)([(0,a.MZ)({type:Boolean,json:{write:!0,default:!1,origins:{"web-scene":{write:!1}}}})],k.prototype,"isAutoGenerated",void 0),(0,l.Cg)([(0,a.MZ)({type:Number,value:null,json:{type:u.jz,write:!0}})],k.prototype,"numClasses",null),(0,l.Cg)([(0,a.MZ)({type:F,json:{type:F,read:!1,write:!1,origins:{"web-scene":{read:!0,write:!0}}}})],k.prototype,"lengthUnit",void 0),(0,l.Cg)([(0,a.MZ)({type:Number,json:{write:!0,origins:{"web-scene":{write:!1,read:!1}}}})],k.prototype,"maxSliderValue",void 0),(0,l.Cg)([(0,a.MZ)({type:Number,json:{write:!0,origins:{"web-scene":{write:!1,read:!1}}}})],k.prototype,"minSliderValue",void 0),(0,l.Cg)([(0,a.MZ)({type:Object,value:null,json:{write:!0,origins:{"web-scene":{write:!1,read:!1}}}})],k.prototype,"statistics",null),(0,l.Cg)([(0,a.MZ)({type:[.25,.33,.5,1],value:null,json:{type:[.25,.33,.5,1],write:!0}})],k.prototype,"standardDeviationInterval",null),(0,l.Cg)([(0,a.MZ)({type:Z.apiValues,value:null,json:{type:Z.jsonValues,read:Z.read,write:Z.write}})],k.prototype,"type",null),(0,l.Cg)([(0,a.MZ)({type:[_],json:{write:!0}})],k.prototype,"visualVariables",void 0),(0,l.Cg)([(0,a.MZ)({type:["caret","circle-caret","arrow","circle-arrow","plus-minus","circle-plus-minus","square","circle","triangle","happy-sad","thumb","custom"],value:null,json:{write:!0,origins:{"web-scene":{write:!1}}}})],k.prototype,"univariateSymbolStyle",null),(0,l.Cg)([(0,a.MZ)({type:["high-to-low","above-and-below","above","below"],value:null,json:{write:!0,origins:{"web-scene":{write:!1}}}})],k.prototype,"univariateTheme",null),k=I=(0,l.Cg)([(0,a.$K)("esri.renderers.support.AuthoringInfo")],k)},88542(e,t,i){i.d(t,{A:()=>a});var s,l=i(5482),r=i(25482),n=i(91429),o=i(49849);let a=s=class extends r.o{constructor(e){super(e),this.description=null,this.label=null,this.minValue=null,this.maxValue=0,this.symbol=null}clone(){return new s({description:this.description,label:this.label,minValue:this.minValue,maxValue:this.maxValue,symbol:this.symbol?.clone()??null})}getMeshHash(){const e=JSON.stringify(this.symbol);return`${this.minValue}.${this.maxValue}.${e}`}};(0,l.Cg)([(0,n.MZ)({type:String,json:{write:!0}})],a.prototype,"description",void 0),(0,l.Cg)([(0,n.MZ)({type:String,json:{write:!0}})],a.prototype,"label",void 0),(0,l.Cg)([(0,n.MZ)({type:Number,json:{read:{source:"classMinValue"},write:{target:"classMinValue"}}})],a.prototype,"minValue",void 0),(0,l.Cg)([(0,n.MZ)({type:Number,json:{read:{source:"classMaxValue"},write:{target:"classMaxValue"}}})],a.prototype,"maxValue",void 0),(0,l.Cg)([(0,n.MZ)(o.Wp)],a.prototype,"symbol",void 0),a=s=(0,l.Cg)([(0,n.$K)("esri.renderers.support.ClassBreakInfo")],a)},20061(e,t,i){i.d(t,{A:()=>h});var s,l=i(5482),r=i(69540),n=i(66552),o=i(25482),a=i(91429),u=i(56507),p=i(93223);const c=(0,n.O)()({ascendingValues:"ascending-values",descendingValues:"descending-values"});let d=s=class extends((0,r.OU)(o.o)){static from(e){return(0,u.PZ)(s,e)}constructor(e){super(e),this.title=null,this.order=null}};(0,l.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],d.prototype,"title",void 0),(0,l.Cg)([(0,p.e)(c)],d.prototype,"order",void 0),d=s=(0,l.Cg)([(0,a.$K)("esri.renderers.support.RendererLegendOptions")],d);const h=d},94833(e,t,i){i.d(t,{A:()=>a});var s,l=i(5482),r=i(25482),n=i(91429),o=i(49849);let a=s=class extends r.o{constructor(e){super(e),this.description=null,this.label=null,this.symbol=null,this.value=null}clone(){return new s({value:this.value,description:this.description,label:this.label,symbol:this.symbol?this.symbol.clone():null})}getMeshHash(){const e=JSON.stringify(this.symbol?.toJSON());return`${this.value}.${e}`}};(0,l.Cg)([(0,n.MZ)({type:String,json:{write:!0}})],a.prototype,"description",void 0),(0,l.Cg)([(0,n.MZ)({type:String,json:{write:!0}})],a.prototype,"label",void 0),(0,l.Cg)([(0,n.MZ)(o.Wp)],a.prototype,"symbol",void 0),(0,l.Cg)([(0,n.MZ)(o.Ug)],a.prototype,"value",void 0),a=s=(0,l.Cg)([(0,n.$K)("esri.renderers.support.UniqueValueInfo")],a)},49849(e,t,i){i.d(t,{As:()=>c,Ug:()=>d,Wp:()=>p,z4:()=>u});var s=i(93637),l=i(90360),r=i(65365),n=i(20378),o=i(73838),a=i(33910);const u={types:a.xK,json:{write:{writer:o.M9},origins:{"web-scene":{types:a.On,write:{writer:o.M9},read:{reader:(0,l.C)({types:a.On})}}}}},p=(0,s.$N)({json:{origins:{"web-scene":{write:{isRequired:!0}}}}},u),c={types:{base:n.A,key:"type",typeMap:{"simple-fill":a.Es.typeMap["simple-fill"],"picture-fill":a.Es.typeMap["picture-fill"],"polygon-3d":a.Es.typeMap["polygon-3d"],cim:a.Es.typeMap.cim}},json:{write:{writer:o.M9},origins:{"web-scene":{type:r.A,write:{writer:o.M9}}}}},d={cast:e=>null==e||"string"==typeof e||"number"==typeof e?e:`${e}`,json:{type:String,write:{writer:(e,t)=>{t.value=e?.toString()}}}}},2024(e,t,i){i.d(t,{A:()=>a});var s,l=i(5482),r=i(91429),n=i(2795),o=i(72500);let a=s=class extends n.A{constructor(e){super(e),this.type="color",this.normalizationField=null}get cache(){return{ipData:this._interpolateData(),hasExpression:!!this.valueExpression,compiledFunc:null}}set stops(e){e&&Array.isArray(e)&&(e=e.filter(e=>!!e)).sort((e,t)=>e.value-t.value),this._set("stops",e)}clone(){return new s({field:this.field,normalizationField:this.normalizationField,valueExpression:this.valueExpression,valueExpressionTitle:this.valueExpressionTitle,stops:this.stops&&this.stops.map(e=>e.clone()),legendOptions:this.legendOptions?.clone()})}getAttributeHash(){return`${super.getAttributeHash()}-${this.normalizationField}`}_interpolateData(){return this.stops&&this.stops.map(e=>e.value||0)}};(0,l.Cg)([(0,r.MZ)({readOnly:!0})],a.prototype,"cache",null),(0,l.Cg)([(0,r.MZ)({type:["color"],json:{type:["colorInfo"]}})],a.prototype,"type",void 0),(0,l.Cg)([(0,r.MZ)({type:String,json:{write:!0}})],a.prototype,"normalizationField",void 0),(0,l.Cg)([(0,r.MZ)({type:[o.A],json:{write:!0}})],a.prototype,"stops",null),a=s=(0,l.Cg)([(0,r.$K)("esri.renderers.visualVariables.ColorVariable")],a)},62724(e,t,i){i.d(t,{A:()=>f});var s,l=i(5482),r=i(91429),n=i(2795),o=i(25482),a=i(56507),u=i(78553),p=i(36005),c=i(43937);let d=s=class extends o.o{constructor(e){super(e),this.label=null,this.opacity=null,this.value=null}readOpacity(e,t){return(0,u.D)(t.transparency)}writeOpacity(e,t,i){t[i]=(0,u.p)(e)}clone(){return new s({label:this.label,opacity:this.opacity,value:this.value})}};(0,l.Cg)([(0,r.MZ)({type:String,json:{write:!0}})],d.prototype,"label",void 0),(0,l.Cg)([(0,r.MZ)({type:Number,json:{type:a.jz,write:{target:"transparency",isRequired:!0}}})],d.prototype,"opacity",void 0),(0,l.Cg)([(0,p.w)("opacity",["transparency"])],d.prototype,"readOpacity",null),(0,l.Cg)([(0,c.K)("opacity")],d.prototype,"writeOpacity",null),(0,l.Cg)([(0,r.MZ)({type:Number,json:{write:{isRequired:!0}}})],d.prototype,"value",void 0),d=s=(0,l.Cg)([(0,r.$K)("esri.renderers.visualVariables.support.OpacityStop")],d);const h=d;var y;let f=y=class extends n.A{constructor(e){super(e),this.type="opacity",this.normalizationField=null}get cache(){return{ipData:this._interpolateData(),hasExpression:!!this.valueExpression,compiledFunc:null}}set stops(e){e&&Array.isArray(e)&&(e=e.filter(e=>!!e)).sort((e,t)=>e.value-t.value),this._set("stops",e)}clone(){return new y({field:this.field,normalizationField:this.normalizationField,valueExpression:this.valueExpression,valueExpressionTitle:this.valueExpressionTitle,stops:this.stops&&this.stops.map(e=>e.clone()),legendOptions:this.legendOptions?.clone()})}getAttributeHash(){return`${super.getAttributeHash()}-${this.normalizationField}`}_interpolateData(){return this.stops&&this.stops.map(e=>e.value||0)}};(0,l.Cg)([(0,r.MZ)({readOnly:!0})],f.prototype,"cache",null),(0,l.Cg)([(0,r.MZ)({type:["opacity"],json:{type:["transparencyInfo"]}})],f.prototype,"type",void 0),(0,l.Cg)([(0,r.MZ)({type:String,json:{write:!0}})],f.prototype,"normalizationField",void 0),(0,l.Cg)([(0,r.MZ)({type:[h],json:{write:!0}})],f.prototype,"stops",null),f=y=(0,l.Cg)([(0,r.$K)("esri.renderers.visualVariables.OpacityVariable")],f)},23461(e,t,i){i.d(t,{A:()=>o});var s,l=i(5482),r=i(91429),n=i(2795);let o=s=class extends n.A{constructor(e){super(e),this.axis=null,this.type="rotation",this.rotationType="geographic"}get cache(){return{hasExpression:!!this.valueExpression,compiledFunc:null}}clone(){return new s({axis:this.axis,rotationType:this.rotationType,field:this.field,valueExpression:this.valueExpression,valueExpressionTitle:this.valueExpressionTitle,legendOptions:this.legendOptions?.clone()})}};(0,l.Cg)([(0,r.MZ)({readOnly:!0})],o.prototype,"cache",null),(0,l.Cg)([(0,r.MZ)({type:["heading","tilt","roll"],json:{origins:{"web-scene":{default:"heading",write:!0}}}})],o.prototype,"axis",void 0),(0,l.Cg)([(0,r.MZ)({type:["rotation"],json:{type:["rotationInfo"]}})],o.prototype,"type",void 0),(0,l.Cg)([(0,r.MZ)({type:["geographic","arithmetic"],json:{write:!0,origins:{"web-document":{write:!0,default:"geographic"}}}})],o.prototype,"rotationType",void 0),o=s=(0,l.Cg)([(0,r.$K)("esri.renderers.visualVariables.RotationVariable")],o)},48940(e,t,i){i.d(t,{A:()=>x});var s=i(5482),l=i(66552),r=i(53966),n=i(91429),o=i(2795),a=i(90629),u=i(12330),p=i(41078);let c=class extends p.A{constructor(e){super(e),this.customValues=null}};(0,s.Cg)([(0,n.MZ)({type:[Number],json:{write:!0}})],c.prototype,"customValues",void 0),c=(0,s.Cg)([(0,n.$K)("esri.renderers.visualVariables.support.SizeVariableLegendOptions")],c);const d=c;var h,y=i(98205),f=i(29266),m=i(59923),g=i(36005),v=i(43937);const b=new l.J({width:"width",depth:"depth",height:"height",widthAndDepth:"width-and-depth",all:"all"}),w=new l.J({unknown:"unknown",inch:"inches",foot:"feet",yard:"yards",mile:"miles","nautical-mile":"nautical-miles",millimeter:"millimeters",centimeter:"centimeters",decimeter:"decimeters",meter:"meters",kilometer:"kilometers"});function V(e){if(null!=e)return"string"==typeof e||"number"==typeof e?function(e){return(0,a.cr)(e)}(e):"size"===e.type?(0,y.of)(e)?e:(delete(e={...e}).type,new x(e)):void 0}function S(e,t,i){if("object"!=typeof e)return e;if("web-scene"===i.origin)return;const s=new x;return s.read(e,i),s}function C(e,t,i,s){"number"!=typeof e?"web-scene"!==s?.origin?t[i]=e.toJSON(s):(0,m.Yc)(s,"error","property",`Size variable '${i}' can only be a number in web scenes.`):t[i]=e}let x=h=class extends o.A{constructor(e){super(e),this.axis=null,this.legendOptions=null,this.normalizationField=null,this.scaleBy=null,this.target=null,this.type="size",this.useSymbolValue=null,this.valueExpression=null,this.valueRepresentation=null,this.valueUnit=null}get cache(){return{ipData:this._interpolateData(),hasExpression:!!this.valueExpression,compiledFunc:null,isScaleDriven:null!=this.valueExpression&&f.RV.test(this.valueExpression)}}set index(e){(0,y.of)(this.maxSize)&&(this.maxSize.index=`visualVariables[${e}].maxSize`),(0,y.of)(this.minSize)&&(this.minSize.index=`visualVariables[${e}].minSize`),this._set("index",e)}get inputValueType(){return(0,y.eh)(this)}set maxDataValue(e){e&&this.stops&&(r.A.getLogger(this).warn("cannot set maxDataValue when stops is not null."),e=null),this._set("maxDataValue",e)}get maxSize(){return this._get("maxSize")}set maxSize(e){e&&this.stops&&(r.A.getLogger(this).warn("cannot set maxSize when stops is not null."),e=null),this._set("maxSize",V(e))}readMaxSize(e,t,i){return S(e,0,i)}writeMaxSize(e,t,i,s){return C(e,t,i,s)}set minDataValue(e){e&&this.stops&&(r.A.getLogger(this).warn("cannot set minDataValue when stops is not null."),e=null),this._set("minDataValue",e)}get minSize(){return this._get("minSize")}set minSize(e){e&&this.stops&&(r.A.getLogger(this).warn("cannot set minSize when stops is not null."),e=null),this._set("minSize",V(e))}readMinSize(e,t,i){return S(e,0,i)}writeMinSize(e,t,i,s){return C(e,t,i,s)}get arcadeRequired(){return!!this.valueExpression||null!=this.minSize&&"object"==typeof this.minSize&&this.minSize.arcadeRequired||null!=this.maxSize&&"object"==typeof this.maxSize&&this.maxSize.arcadeRequired}set stops(e){null==this.minDataValue&&null==this.maxDataValue&&null==this.minSize&&null==this.maxSize?e&&Array.isArray(e)&&(e=e.filter(e=>!!e)).sort((e,t)=>e.value-t.value):e&&(r.A.getLogger(this).warn("cannot set stops when one of minDataValue, maxDataValue, minSize or maxSize is not null."),e=null),this._set("stops",e)}get transformationType(){return(0,y.KZ)(this,this.inputValueType)}readValueExpression(e,t){return e||t.expression&&"$view.scale"}writeValueExpressionWebScene(e,t,i,s){if(f.RV.test(e)){if(s?.messages){const e=this.index;(0,m.qt)(s,`visualVariables[${"string"==typeof e?e:`visualVariables[${e}]`}].valueExpression`,"SizeVariable with '$view.scale' valueExpression is not supported in Web Scene. Please remove this property to save the Web Scene.")}}else t[i]=e}readValueUnit(e){return e?w.read(e):null}clone(){return new h({axis:this.axis,field:this.field,valueExpression:this.valueExpression,valueExpressionTitle:this.valueExpressionTitle,maxDataValue:this.maxDataValue,maxSize:(0,y.of)(this.maxSize)?this.maxSize.clone():this.maxSize,minDataValue:this.minDataValue,minSize:(0,y.of)(this.minSize)?this.minSize.clone():this.minSize,normalizationField:this.normalizationField,stops:this.stops?.map(e=>e.clone()),target:this.target,useSymbolValue:this.useSymbolValue,valueRepresentation:this.valueRepresentation,valueUnit:this.valueUnit,legendOptions:this.legendOptions?.clone()})}flipSizes(){if("clamped-linear"===this.transformationType){const{minSize:e,maxSize:t}=this;return this.minSize=t,this.maxSize=e,this}if("stops"===this.transformationType){const e=this.stops;if(!e)return this;const t=e.map(e=>e.size).reverse(),i=e.length;for(let s=0;s<i;s++)e[s].size=t[s];return this}return this}getAttributeHash(){return`${super.getAttributeHash()}-${this.target}-${this.normalizationField}`}_interpolateData(){return this.stops?.map(e=>e.value||0)}};(0,s.Cg)([(0,n.MZ)({readOnly:!0})],x.prototype,"cache",null),(0,s.Cg)([(0,n.MZ)({type:b.apiValues,json:{type:b.jsonValues,origins:{"web-map":{read:!1}},read:b.read,write:b.write}})],x.prototype,"axis",void 0),(0,s.Cg)([(0,n.MZ)()],x.prototype,"index",null),(0,s.Cg)([(0,n.MZ)({type:String,readOnly:!0})],x.prototype,"inputValueType",null),(0,s.Cg)([(0,n.MZ)({type:d,json:{write:!0}})],x.prototype,"legendOptions",void 0),(0,s.Cg)([(0,n.MZ)({type:Number,value:null,json:{write:!0}})],x.prototype,"maxDataValue",null),(0,s.Cg)([(0,n.MZ)({type:Number,useTypeForAutocast:!1,value:null,json:{write:!0}})],x.prototype,"maxSize",null),(0,s.Cg)([(0,g.w)("maxSize")],x.prototype,"readMaxSize",null),(0,s.Cg)([(0,v.K)("maxSize")],x.prototype,"writeMaxSize",null),(0,s.Cg)([(0,n.MZ)({type:Number,value:null,json:{write:!0}})],x.prototype,"minDataValue",null),(0,s.Cg)([(0,n.MZ)({type:Number,useTypeForAutocast:!1,value:null,json:{write:!0}})],x.prototype,"minSize",null),(0,s.Cg)([(0,g.w)("minSize")],x.prototype,"readMinSize",null),(0,s.Cg)([(0,v.K)("minSize")],x.prototype,"writeMinSize",null),(0,s.Cg)([(0,n.MZ)({type:String,json:{write:!0}})],x.prototype,"normalizationField",void 0),(0,s.Cg)([(0,n.MZ)({readOnly:!0})],x.prototype,"arcadeRequired",null),(0,s.Cg)([(0,n.MZ)({type:String})],x.prototype,"scaleBy",void 0),(0,s.Cg)([(0,n.MZ)({type:[u.A],value:null,json:{write:!0}})],x.prototype,"stops",null),(0,s.Cg)([(0,n.MZ)({type:["outline"],json:{write:!0}})],x.prototype,"target",void 0),(0,s.Cg)([(0,n.MZ)({type:String,readOnly:!0})],x.prototype,"transformationType",null),(0,s.Cg)([(0,n.MZ)({type:["size"],json:{type:["sizeInfo"]}})],x.prototype,"type",void 0),(0,s.Cg)([(0,n.MZ)({type:Boolean,json:{write:!0,origins:{"web-map":{read:!1}}}})],x.prototype,"useSymbolValue",void 0),(0,s.Cg)([(0,n.MZ)({type:String,json:{write:!0}})],x.prototype,"valueExpression",void 0),(0,s.Cg)([(0,g.w)("valueExpression",["valueExpression","expression"])],x.prototype,"readValueExpression",null),(0,s.Cg)([(0,v.K)("web-scene","valueExpression")],x.prototype,"writeValueExpressionWebScene",null),(0,s.Cg)([(0,n.MZ)({type:["radius","diameter","area","width","distance"],json:{write:!0}})],x.prototype,"valueRepresentation",void 0),(0,s.Cg)([(0,n.MZ)({type:w.apiValues,json:{write:w.write,origins:{"web-map":{read:!1},"web-scene":{write:!0},"portal-item":{write:!0}}}})],x.prototype,"valueUnit",void 0),(0,s.Cg)([(0,g.w)("valueUnit")],x.prototype,"readValueUnit",null),x=h=(0,s.Cg)([(0,n.$K)("esri.renderers.visualVariables.SizeVariable")],x)},2795(e,t,i){i.d(t,{A:()=>c});var s=i(5482),l=i(66552),r=i(25482),n=i(53966),o=i(91429),a=i(56507),u=i(41078);const p=new l.J({colorInfo:"color",transparencyInfo:"opacity",rotationInfo:"rotation",sizeInfo:"size"});let c=class extends r.o{constructor(e){super(e),this.index=null,this.type=null,this.field=null,this.valueExpression=null,this.valueExpressionTitle=null,this.legendOptions=null}castField(e){return null==e?e:"function"==typeof e?(n.A.getLogger(this).error(".field: field must be a string value"),null):(0,a.GX)(e)}get arcadeRequired(){return!!this.valueExpression}clone(){}getAttributeHash(){return`${this.type}-${this.field}-${this.valueExpression}`}};(0,s.Cg)([(0,o.MZ)()],c.prototype,"index",void 0),(0,s.Cg)([(0,o.MZ)({type:p.apiValues,readOnly:!0,json:{read:p.read,write:{writer:p.write,isRequired:!0}}})],c.prototype,"type",void 0),(0,s.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],c.prototype,"field",void 0),(0,s.Cg)([(0,o.wg)("field")],c.prototype,"castField",null),(0,s.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],c.prototype,"valueExpression",void 0),(0,s.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],c.prototype,"valueExpressionTitle",void 0),(0,s.Cg)([(0,o.MZ)({readOnly:!0})],c.prototype,"arcadeRequired",null),(0,s.Cg)([(0,o.MZ)({type:u.A,json:{write:!0}})],c.prototype,"legendOptions",void 0),c=(0,s.Cg)([(0,o.$K)("esri.renderers.visualVariables.VisualVariable")],c)},72500(e,t,i){i.d(t,{A:()=>c});var s,l=i(5482),r=i(68197),n=i(25482),o=i(91429),a=i(56507),u=i(43937);let p=s=class extends n.o{constructor(e){super(e),this.color=null,this.label=null,this.value=null}writeValue(e,t,i){t[i]=e??0}clone(){return new s({color:this.color&&this.color.clone(),label:this.label,value:this.value})}};(0,l.Cg)([(0,o.MZ)({type:r.A,json:{type:[a.jz],write:{isRequired:!0}}})],p.prototype,"color",void 0),(0,l.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],p.prototype,"label",void 0),(0,l.Cg)([(0,o.MZ)({type:Number,json:{write:{writerEnsuresNonNull:!0}}})],p.prototype,"value",void 0),(0,l.Cg)([(0,u.K)("value")],p.prototype,"writeValue",null),p=s=(0,l.Cg)([(0,o.$K)("esri.renderers.visualVariables.support.ColorStop")],p);const c=p},12330(e,t,i){i.d(t,{A:()=>a});var s,l=i(5482),r=i(25482),n=i(90629),o=i(91429);let a=s=class extends r.o{constructor(e){super(e),this.label=null,this.value=null,this.useMinValue=null,this.useMaxValue=null}get size(){return this._get("size")}set size(e){this._set("size",e)}clone(){return new s({label:this.label,size:this.size,value:this.value,useMaxValue:this.useMaxValue,useMinValue:this.useMinValue})}};(0,l.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],a.prototype,"label",void 0),(0,l.Cg)([(0,o.MZ)({type:Number,cast:n.cr,json:{write:{isRequired:!0}}})],a.prototype,"size",null),(0,l.Cg)([(0,o.MZ)({type:Number,json:{write:{isRequired:!0}}})],a.prototype,"value",void 0),(0,l.Cg)([(0,o.MZ)({type:Boolean,json:{write:!1}})],a.prototype,"useMinValue",void 0),(0,l.Cg)([(0,o.MZ)({type:Boolean,json:{write:!1}})],a.prototype,"useMaxValue",void 0),a=s=(0,l.Cg)([(0,o.$K)("esri.renderers.visualVariables.support.SizeStop")],a)},41078(e,t,i){i.d(t,{A:()=>a});var s=i(5482),l=i(69540),r=i(25482),n=i(91429);let o=class extends((0,l.OU)(r.o)){constructor(e){super(e),this.showLegend=null,this.title=null}};(0,s.Cg)([(0,n.MZ)({type:Boolean,json:{write:!0}})],o.prototype,"showLegend",void 0),(0,s.Cg)([(0,n.MZ)({type:String,json:{write:!0}})],o.prototype,"title",void 0),o=(0,s.Cg)([(0,n.$K)("esri.renderers.visualVariables.support.VisualVariableLegendOptions")],o);const a=o},98205(e,t,i){function s(e){return e&&"esri.renderers.visualVariables.SizeVariable"===e.declaredClass}function l(e){return null!=e&&!isNaN(e)&&isFinite(e)}function r(e){return e.valueExpression?"expression":e.field&&"string"==typeof e.field?"field":"unknown"}function n(e,t){const i=t||r(e),s=e.valueUnit||"unknown";return"unknown"===i?"constant":e.stops?"stops":null!=e.minSize&&null!=e.maxSize&&null!=e.minDataValue&&null!=e.maxDataValue?"clamped-linear":"unknown"===s?null!=e.minSize&&null!=e.minDataValue?e.minSize&&e.minDataValue?"proportional":"additive":"identity":"real-world-size"}i.d(t,{KZ:()=>n,eh:()=>r,gf:()=>l,of:()=>s})},29266(e,t,i){i.d(t,{RV:()=>c,UT:()=>d,Yz:()=>b}),i(68197);var s=i(52106),l=i(53966),r=i(31756),n=i(98205);const o=()=>l.A.getLogger("esri.renderers.visualVariables.support.visualVariableUtils"),a=e=>o().warn(`The visualVariable should be an instance of esri.renderers.visualVariables.${e}`),u=()=>o().error("Use of arcade expressions requires an arcade context"),p=(new s.A,Math.PI),c=/^\s*(return\s+)?\$view\.scale\s*(;)?\s*$/i;function d(e,t,i){return function(e,t,i){const s="visualVariables"in e?e.visualVariables?.find(e=>"rotation"===e.type):e;if(!s)return;if("esri.renderers.visualVariables.RotationVariable"!==s.declaredClass)return void a("RotationVariable");const l=s.axis||"heading",r="heading"===l&&"arithmetic"===s.rotationType?90:0,n="heading"===l&&"arithmetic"===s.rotationType?-1:1,o=s.field,{hasExpression:u}=s.cache;if(!o&&!u)return;const p=h(s,t,i);let c=p;return c="number"!=typeof c||isNaN(c)?null:r+n*c,new v(s,c,p)}(e,t,i)?.output}function h(e,t,i){const{hasExpression:s}=e.cache;if("number"==typeof t)return t;const l=t?.attributes,r=e.field;if(!s)return l?.[r];if(null==i?.arcade)return void u();const n={viewingMode:i.viewingMode,scale:i.scale,spatialReference:i.spatialReference},o=i.arcade.arcadeUtils,a=o.getViewInfo(n),p=o.createExecContext(t,a,i.timeZone);if(!e.cache.compiledFunc){const t=o.createSyntaxTree(e.valueExpression);e.cache.compiledFunc=o.createFunction(t)}return o.executeFunction(e.cache.compiledFunc,p)}function y(e,t,i){const s="number"==typeof t,l=s?null:t,r=l?.attributes;let o=s?t:null;const{isScaleDriven:a}=e.cache;let p=e.cache.compiledFunc;if(a){const t=null!=i?i.scale:void 0,s=null!=i?i.view:void 0;o=null==t||"3d"===s?function(e){let t=null,i=null;const s=e.stops;return s?(t=s[0].value,i=s[s.length-1].value):(t=e.minDataValue||0,i=e.maxDataValue||0),(t+i)/2}(e):t}else if(!s)switch(e.inputValueType){case"expression":{if(null==i?.arcade)return void u();const t={viewingMode:i.viewingMode,scale:i.scale,spatialReference:i.spatialReference},s=i.arcade.arcadeUtils,r=s.getViewInfo(t),n=s.createExecContext(l,r,i.timeZone);if(!p){const t=s.createSyntaxTree(e.valueExpression);p=s.createFunction(t),e.cache.compiledFunc=p}o=s.executeFunction(p,n);break}case"field":r&&(o=r[e.field]);break;case"unknown":o=null}return(0,n.gf)(o)?o:null}function f(e,t,i){return function(e,t,i){const s="visualVariables"in e?e.visualVariables?.find(e=>"size"===e.type):e;if(!s)return;if("esri.renderers.visualVariables.SizeVariable"!==s.declaredClass)return void a("SizeVariable");const l=y(s,t,i);let o=l;if(null!=o&&"number"!=typeof t&&t&&s.normalizationField){const e=t.attributes,i=parseFloat(e?.[s.normalizationField]);if(!(0,n.gf)(i)||0===i)return;o/=i}const u=function(e,t,i,s,l){switch(t.transformationType){case"additive":return function(e,t,i,s){const l=m(t.minSize,i,s)||t.minDataValue;return null==e&&null==l?null:(e??0)+(l??0)}(e,t,i,s);case"constant":return function(e,t,i){const s=e.stops;let l=s?.length&&s[0].size;return null==l&&(l=e.minSize),m(l,t,i)}(t,i,s);case"clamped-linear":return function(e,t,i,s){const l=m(t.minSize,i,s);if(null==e)return l;const{minDataValue:r,maxDataValue:n}=t;if(null==r||null==n)return null;const o=(e-r)/(n-r),a=m(t.maxSize,i,s),u=null!=s?s.shape:void 0;if(e<=r)return l;if(e>=n)return a;if(null==l||null==a)return null;if("area"===t.scaleBy&&u){const e="circle"===u,t=e?p*(l/2)**2:l*l,i=t+o*((e?p*(a/2)**2:a*a)-t);return e?2*Math.sqrt(i/p):Math.sqrt(i)}return l+o*(a-l)}(e,t,i,s);case"proportional":return function(e,t,i,s){const l=m(t.minSize,i,s);if(null==e||null==l)return l;const r=null!=s?s.shape:void 0,{minDataValue:n}=t;if(null==n)return null;const o=e/n,a=m(t.maxSize,i,s);let u=null;return u="circle"===r?2*Math.sqrt(o*(l/2)**2):"square"===r||"diamond"===r||"image"===r?Math.sqrt(o*l**2):o*l,g(u,l,a)}(e,t,i,s);case"stops":return function(e,t,i,s,l){if(null==e)return null;const[r,n,o]=function(e,t){if(!t)return;let i=0,s=t.length-1;return t.some((t,l)=>e<t?(s=l,!0):(i=l,!1)),[i,s,(e-t[i])/(t[s]-t[i])]}(e,l);if(r===n)return m(t.stops?.[r].size,i,s);{const e=m(t.stops?.[r].size,i,s),l=m(t.stops?.[n].size,i,s);return null==e||null==l?null:e+(l-e)*o}}(e,t,i,s,l);case"real-world-size":return function(e,t,i,s){const l=(s?.resolution??1)*r.j[t.valueUnit],n=m(t.minSize,i,s),o=m(t.maxSize,i,s),{valueRepresentation:a}=t;if(null==e)return n;let u=null;return u="area"===a?2*Math.sqrt(e/p)/l:"radius"===a||"distance"===a?2*e/l:e/l,g(u,n,o)}(e,t,i,s);case"identity":return e;case"unknown":return null}}(o,s,t,i,s.cache.ipData);return new v(s,null==u||isNaN(u)?void 0:u,l)}(e,t,i)?.output}function m(e,t,i){return null==e?null:(0,n.of)(e)?f(e,t,i):(0,n.gf)(e)?e:null}function g(e,t,i){return(0,n.gf)(i)&&e>i?i:(0,n.gf)(t)&&e<t?t:e}class v{get type(){return this.variable.type}constructor(e,t,i){this.variable=e,this.output=t,this.input=i}}function b(e,t,i){const s=["proportional","proportional","proportional"];for(const l of e){const e=l.useSymbolValue?"symbol-value":f(l,t,i)??"proportional";switch(l.axis){case"width":s[0]=e;break;case"depth":s[1]=e;break;case"height":s[2]=e;break;case"width-and-depth":s[0]=e,s[1]=e;break;case"all":case void 0:case null:s[0]=e,s[1]=e,s[2]=e;break;default:l.axis}}return s}},2485(e,t,i){i.d(t,{A:()=>c});var s,l=i(5482),r=i(68197),n=i(4718),o=i(91429),a=i(56507),u=i(72606),p=i(93223);let c=s=class extends u.A{constructor(e){super(e),this.algorithm=null,this.fromColor=null,this.toColor=null,this.type="algorithmic"}clone(){return new s({fromColor:(0,n.o8)(this.fromColor),toColor:(0,n.o8)(this.toColor),algorithm:this.algorithm})}};(0,l.Cg)([(0,p.e)({esriCIELabAlgorithm:"cie-lab",esriHSVAlgorithm:"hsv",esriLabLChAlgorithm:"lab-lch"})],c.prototype,"algorithm",void 0),(0,l.Cg)([(0,o.MZ)({type:r.A,json:{type:[a.jz],write:{isRequired:!0}}})],c.prototype,"fromColor",void 0),(0,l.Cg)([(0,o.MZ)({type:r.A,json:{type:[a.jz],write:{isRequired:!0}}})],c.prototype,"toColor",void 0),(0,l.Cg)([(0,o.MZ)({type:["algorithmic"],json:{write:{isRequired:!0}}})],c.prototype,"type",void 0),c=s=(0,l.Cg)([(0,o.$K)("esri.rest.support.AlgorithmicColorRamp")],c)},72606(e,t,i){i.d(t,{A:()=>n});var s=i(5482),l=i(25482),r=i(91429);let n=class extends l.o{constructor(e){super(e),this.type=null}};(0,s.Cg)([(0,r.MZ)({readOnly:!0,json:{read:!1,write:!0}})],n.prototype,"type",void 0),n=(0,s.Cg)([(0,r.$K)("esri.rest.support.ColorRamp")],n)},1626(e,t,i){i.d(t,{A:()=>c});var s,l=i(5482),r=i(4718),n=i(91429),o=i(2485),a=i(72606),u=i(43937),p=i(36005);let c=s=class extends a.A{constructor(e){super(e),this.colorRamps=null,this.type="multipart",this.weights=void 0}writeColorRamps(e,t,i,s){const l=e?.map(e=>e.toJSON(s)),{weights:r}=this;if(l&&r?.length&&l.length===r?.length){const e=100/r.reduce((e,t)=>e+t);let t=0;l.forEach((i,s)=>{i.start=t,t+=r[s]*e,i.stop=t})}t.colorRamps=l}readWeights(e,t){const i=t.colorRamps?.map(({start:e,stop:t})=>null==e||null==t?-1:t-e);if(!i?.some(e=>e<0))return i}clone(){return new s({colorRamps:(0,r.o8)(this.colorRamps)})}};(0,l.Cg)([(0,n.MZ)({type:[o.A],json:{write:{isRequired:!0}}})],c.prototype,"colorRamps",void 0),(0,l.Cg)([(0,u.K)("colorRamps")],c.prototype,"writeColorRamps",null),(0,l.Cg)([(0,n.MZ)({type:["multipart"],json:{write:{isRequired:!0}}})],c.prototype,"type",void 0),(0,l.Cg)([(0,n.MZ)({type:[Number]})],c.prototype,"weights",void 0),(0,l.Cg)([(0,p.w)("weights",["colorRamps"])],c.prototype,"readWeights",null),c=s=(0,l.Cg)([(0,n.$K)("esri.rest.support.MultipartColorRamp")],c)},95349(e,t,i){i.d(t,{g:()=>n,r:()=>o});var s=i(2485),l=i(72606),r=i(1626);const n={key:"type",base:l.A,typeMap:{algorithmic:s.A,multipart:r.A}};function o(e){return e?.type?"algorithmic"===e.type?s.A.fromJSON(e):"multipart"===e.type?r.A.fromJSON(e):null:null}},73838(e,t,i){i.d(t,{rS:()=>E,M9:()=>q,oO:()=>Z});var s=i(93637),l=i(77548),r=i(37757),n=i(49186),o=i(13313),a=i(97887),u=i(68548),p=i(58592),c=i(75981),d=i(65365),h=i(94985),y=i(31593),f=i(53930),m=i(68249),g=i(68197),v=i(7762),b=i(90629),w=i(27845),V=i(11506),S=i(39065),C=i(59868),x=i(93470);c.A.fromSimpleMarkerSymbol(C.UK),a.A.fromSimpleLineSymbol(C.A7),d.A.fromSimpleFillSymbol(C.Cx),new u.A({symbolLayers:new v.A([new w.A({material:{color:x.fT},edges:new S.A({size:(0,b.PN)(1),color:new g.A(x.JR)})})])});const M=new a.A({symbolLayers:new v.A([new V.A({material:{color:new g.A([0,0,0])},size:(0,b.PN)(1)})])}),z=new d.A({symbolLayers:new v.A([new w.A({outline:{color:new g.A([0,0,0]),size:(0,b.PN)(1)}})])});var _=i(33910);const I="#useCIMFallbackSymbology()",A={retainId:!1,ignoreDrivers:!1,hasLabelingContext:!0};var j=i(59923);function q(e,t,i,l){const r=k(e,{},{context:l,isLabelSymbol:!1});null!=r&&(0,s.sM)(i,r,t)}function Z(e,t,i,s){const l=k(e,{},{context:s,isLabelSymbol:!0});null!=l&&(t[i]=l)}function F(e){return(0,_.wk)(e)||e instanceof r.A}function k(e,t,i){if(null==e)return null;const{context:s,isLabelSymbol:g}=i,v=s?.origin;if("web-scene"===v&&!F(e)){const i=function(e,t=A){if(!e)return{symbol:null};const{retainId:i=A.retainId,ignoreDrivers:s=A.ignoreDrivers,hasLabelingContext:l=A.hasLabelingContext,retainCIM:g=A.retainCIM,cimFallbackEnabled:v=A.cimFallbackEnabled}=t;let b=null;if((0,_.wk)(e))b=e.clone();else if("web-style"===e.type)b=e.clone();else if("cim"===e.type){const i=e.data?.symbol?.type;switch(i){case"CIMPointSymbol":b=g?e.clone():c.A.fromCIMSymbol(e);break;case"CIMLineSymbol":v&&(b=M.clone(),t?.logWarning?.(I,"Unsupported CIM line symbology converted to fallback 3D line symbology"));break;case"CIMPolygonSymbol":v&&(b=z.clone(),t?.logWarning?.(I,"Unsupported CIM polygon symbology converted to fallback 3D polygon symbology"))}if(!b)return{error:new n.A("symbol-conversion:unsupported-cim-symbol",`CIM symbol of type '${i||"unknown"}' is unsupported in 3D`,{symbol:e})}}else if(e instanceof y.A)b=a.A.fromSimpleLineSymbol(e);else if(e instanceof f.A)b=c.A.fromSimpleMarkerSymbol(e);else if(e instanceof p.A)b=c.A.fromPictureMarkerSymbol(e);else if(e instanceof h.A)b=t.geometryType&&"mesh"===t.geometryType?u.A.fromSimpleFillSymbol(e):d.A.fromSimpleFillSymbol(e);else{if(!(e instanceof m.A))return{error:new n.A("symbol-conversion:unsupported-2d-symbol",`2D symbol of type '${e.type||e.declaredClass}' is unsupported in 3D`,{symbol:e})};b=l?o.A.fromTextSymbol(e):c.A.fromTextSymbol(e)}return i&&b&&"cim"!==b.type&&(b.id=e.id),!s||"cim"===b.type||b instanceof r.A||b.symbolLayers.forEach(e=>e.ignoreDrivers=!0),{symbol:b}}(e,{retainCIM:!0,hasLabelingContext:g});return null!=i.symbol?i.symbol.write(t,s):((0,j.bA)(s,e,"Use 3D symbology instead when working with WebScene and SceneView",{error:i.error}),null)}return(0,l.TU)(s?.layer)&&function(e){return"polygon-3d"===e?.type||"line-3d"===e?.type}(e)?((0,j.bA)(s,e,`unsupported in layers of type ${s?.layer?.declaredClass}`),null):("web-map"===v||"portal-item"===v&&!(0,l.TU)(s?.layer))&&F(e)?((0,j.bA)(s,e,"Use 2D symbology and CIMSymbol instead when working with MapView"),null):e.write(t,s)}function E(e,t){return(0,_.Bu)(e,null,t)}},85594(e,t,i){i.d(t,{jg:()=>v,cF:()=>c,bo:()=>d,yA:()=>f,o5:()=>h});var s=i(11254),l=i(49186),r=i(44208),n=i(17676),o=i(84952),a=i(20655),u=i(16405);const p=new Map;function c(e,t,i){return null!=e?.styleUrl?async function(e,t){try{return{data:(await f(e,t)).data,baseUrl:(0,o.nM)(e),styleUrl:e}}catch(e){return(0,n.QP)(e),null}}(e.styleUrl,i):null!=e?.styleName?function(e,t,i){const s=null!=t.portal?t.portal:a.A.getDefault();let r;const n=`${s.url} - ${s.user?.username} - ${e}`,o=p.get(n);if(o)return o;const c=function(e,t,i){return t.load(i).then(()=>{const s=new u.A({disableExtraQuery:!0,query:`owner:${m} AND type:${g} AND typekeywords:"${e}"`});return t.queryItems(s,i)}).then(({results:t})=>{let s=null;const r=e.toLowerCase();if(t&&Array.isArray(t))for(const e of t){const t=e.typeKeywords?.some(e=>e.toLowerCase()===r);if(t&&e.type===g&&e.owner===m){s=e;break}}if(!s)throw new l.A("symbolstyleutils:style-not-found",`The style '${e}' could not be found`,{styleName:e});return s.load(i)})}(e,s,i).then(e=>(r=e,e.fetchData())).then(t=>({data:t,baseUrl:r.itemUrl??"",styleName:e}));return p.set(n,c),c}(e.styleName,t,i):Promise.reject(new l.A("symbolstyleutils:style-url-and-name-missing","Either styleUrl or styleName is required to resolve a style"))}function d(e){return null===e||"CIMSymbolReference"===e.type?e:{type:"CIMSymbolReference",symbol:e}}function h(e,t){for(const i of t)switch(i){case"cim":if(e.cimRef)return{format:i,url:encodeURI(e.cimRef)};break;case"web-gltf-basisu":{const t=y(e,"gltf_basisu");if(t)return{format:i,url:t};break}case"web-gltf":{const t=y(e,"gltf");if(t)return{format:i,url:t};break}case"web":{const t=y(e,"gltf");if(t)return{format:"web-gltf",url:t};if(e.webRef)return{format:i,url:encodeURI(e.webRef)};break}}}function y(e,t){if(!(0,r.A)("enable-feature:force-wosr"))return e.formatInfos?.find(e=>e.type===t)?.href}function f(e,t){const i={responseType:"json",query:{f:"json"},...t};return(0,s.A)((0,o.S8)(e),i)}const m="esri_en",g="Style",v="https://cdn.arcgis.com/sharing/rest/content/items/220936cc6ed342c9937abd8f180e7d1e/resources/styles/cim/{SymbolName}.json?f=json"}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[2772],{72772(s,t,e){e.r(t),e.d(t,{addSpatialReferenceInfo:()=>c,destroyWasm:()=>u,initialize:()=>f,isInitialized:()=>d,process:()=>a,switchMeshModificationPolygonVCSSync:()=>l});var n=e(2741);function i(s){return(0,n.s)(`esri/libs/lyr3d/${s}`)}let r,o;async function a(s){await f();const t={status:1,error:"",jobDescJson:"",data:new Uint8Array(0),missingInputUrls:[]};if(s.inputs.length<1)return{result:t,transferList:[]};const e={ptrs:[],sizes:[]};for(const t of s.inputs){const s=o._malloc(t.byteLength);new Uint8Array(o.HEAPU8.buffer,s,t.byteLength).set(new Uint8Array(t)),e.ptrs.push(s),e.sizes.push(t.byteLength)}const n=o.process(s.jobDescJson,s.id,e,s.isMissingResourceCase);t.status=n.status,t.missingInputUrls=n.missingInputUrls.slice();const i=0===n.status&&n.data,r=2===t.status&&t.missingInputUrls.length>0;t.jobDescJson=n.jobDescJson.slice(),t.error=n.error.slice(),i?t.data=n.data.slice():r&&(t.originalInputs=s.inputs.slice());for(let s=0;s<e.ptrs.length;++s)o._free(e.ptrs[s]);const a=[];if(i)a.push(t.data.buffer);else if(r)for(const t of s.inputs)a.push(t);return{result:t,transferList:a}}async function c(s){await f(),o.add_spatial_reference_info(s.sr,s.isGCS,s.toMetersXY,s.toMetersZ)}function l(s){if(!o)return{success:!1,modifications:null};const t=o._malloc(8*s.modifications.length),e=new Float64Array(o.HEAPF64.buffer,t,s.modifications.length);e.set(s.modifications);const n=o.switch_mesh_modification_polygon_vcs(t,s.modifications.length,s.inVCS);let i=null;return n&&(i=e.slice()),o._free(t),{success:n,modifications:i}}function u(){o&&(o.uninitialize_lyr3d_worker_wasm(),o=null)}function f(){return o?Promise.resolve():(r||(r=new Promise(s=>e.e(2343).then(e.bind(e,2343)).then(({default:t})=>{const e=t({locateFile:i,onRuntimeInitialized:()=>s(e)})})).catch(s=>{throw s}).then(s=>{o=s,o.initialize_lyr3d_worker_wasm(),r=null})),r)}function d(){return null!==o}}}]);
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import{__decorate as e}from"tslib";import{createTask as t}from"../../../core/asyncUtils.js";import o from"../../../core/Collection.js";import{EventedAccessor as r}from"../../../core/Evented.js";import{makeHandle as s}from"../../../core/handleUtils.js";import i from"../../../core/Logger.js";import{abortMaybe as n}from"../../../core/maybe.js";import{debounce as l,onAbort as c,ignoreAbortErrors as a}from"../../../core/promiseUtils.js";import{createScreenPoint as p}from"../../../core/screenUtils.js";import{property as d,subclass as h}from"../../../core/accessorSupport/decorators.js";import m from"../../../geometry/Point.js";import y from"../../../geometry/Polygon.js";import{isClockwise as u}from"../../../geometry/support/coordsUtils.js";import{sketchKeys as v,selectionKeys as f}from"../../../views/interactive/keybindings.js";import{getSelectionFromGeometry as _}from"./selectorUtils.js";const g=100;let w=class extends r{constructor(e){super(e),this._completed=!1,this._isConstraintKeyDown=!1,this._processTask=null,this.createTool="rectangle",this.mode=null,this.persistSelection=!0,this.returnFeatureTitleFields=!1,this.returnGeometry=!0,this.selection=new o,this.selectionManager=null,this.selectOnComplete=!0,this.sources=null,this.toolName="",this.type="add",this._process=l(async(e,o)=>{const{callback:r,selector:s,completed:i}=e,n=t(async e=>{const{effectiveSelectionManager:t,returnFeatureTitleFields:o,returnGeometry:n,selection:l,sources:c,view:a}=this;if(!(!c?.length&&!t.sources.length)&&a){if(s&&null!=c){const r=await _({returnFeatureTitleFields:o,returnGeometry:n,selector:s,signal:e,sources:c,view:a});if(l.removeAll(),l.addMany(r),i&&this.persistSelection)switch(this.effectiveType){case"remove":t.updateSelection({current:[],added:[],removed:r});break;case"replace":t.clear(),t.updateSelection({current:r,added:[],removed:[]});break;default:t.updateSelection({current:r,added:[],removed:[]})}}r&&r()}else l.removeAll()});return c(o,()=>n.abort()),this._processTask=n,n.promise},g),this._onOperationFinish=this._onOperationFinish.bind(this)}initialize(){this._setup()}get _defaultMode(){return"polygon"===this.createTool?"click":"hybrid"}get _selectionArea(){const e=this._tool.coordinates;if(0===e.length)return;const t=p(),o=this.view.spatialReference,r=e=>{t.x=e[0],t.y=e[1];const o=this.view.toMap(t);return[o?.x??0,o?.y??0]};if(1===e.length||e.every(([t,o])=>t===e[0][0]&&o===e[0][1])){const[t,s]=r(e[0]);return new m({x:t,y:s,spatialReference:o})}const s=e.map(r);if(0===s.length)return;u(s)||s.reverse();return new y({spatialReference:o,rings:[s]})}get completed(){return this._completed}get effectiveSelectionManager(){return this.selectionManager??this.view.selectionManager}get effectiveType(){const e=this.type??"add";if(this._isConstraintKeyDown)switch(e){case"add":return"remove";case"remove":case"replace":return"add";default:return e}return e}get processingFinalSelection(){return!(!this._processTask||!this._tool?.drawOperation?.isCompleted)}cancel(){this.selection.removeAll(),this._onOperationFinish(!0)}destroy(){this._toolImportController=n(this._toolImportController)}async _setup(){const{createTool:e,view:t}=this;if(await t.whenReady(),this.destroyed||this._toolImportController)return;const o=new AbortController;this._toolImportController=o;const r=await import("../../../views/draw/DrawScreenTool.js");if(o.signal.aborted)return;const n=Symbol();try{this._tool=new r.DrawScreenTool({view:t,mode:this.mode??this._defaultMode,geometryType:e,cursor:"point"===e?"default":"crosshair"})}finally{this._toolImportController=null}this._tool?(this.selectOnComplete||this.addHandles(this._tool.on(["cursor-update","vertex-add","vertex-remove"],()=>{this._syncConstraintKeyDown(),a(this._process({selector:this._selectionArea}))}),n),this._syncConstraintKeyDown(),this.addHandles([t.on("key-down",e=>{if(!e.repeat)switch(this._syncConstraintKeyDown(),e.key){case v.constraint:this._tool.uniformSizeToggled=!0,e.stopPropagation();break;case v.center:this._tool.centeredToggled=!0,e.stopPropagation()}}),t.on("key-up",e=>{switch(this._syncConstraintKeyDown(),e.key){case v.constraint:this._tool.uniformSizeToggled=!1,e.stopPropagation();break;case v.center:this._tool.centeredToggled=!1,e.stopPropagation()}}),this.selection.on("change",({added:e,removed:t})=>this.emit("selection-change",{operationType:this.effectiveType,added:e,removed:t})),this._tool.on("complete",async e=>{this._syncConstraintKeyDown(),this.removeHandles(n),e.aborted?this.cancel():(this._tool.cursor="progress",await this._process({selector:this._selectionArea,callback:this._onOperationFinish,completed:!0}))})],n),this.addHandles(s(()=>t.tools.remove(this._tool))),t.addAndActivateTool(this._tool)):i.getLogger(this).warn("Unable to import Draw module. SelectionOperation failed to load.")}_syncConstraintKeyDown(){const{inputManager:e}=this.view;this._isConstraintKeyDown=f.invertType.some(t=>e.isModifierKeyDown(t))}_onOperationFinish(e=!1){this.removeAllHandles(),this._processTask?.abort(),this._completed=!0,this.emit("complete",{aborted:e,operationType:this.effectiveType,selection:this.selection.toArray(),toolName:this.toolName})}};e([d()],w.prototype,"_completed",void 0),e([d()],w.prototype,"_defaultMode",null),e([d()],w.prototype,"_isConstraintKeyDown",void 0),e([d()],w.prototype,"_processTask",void 0),e([d()],w.prototype,"_selectionArea",null),e([d()],w.prototype,"completed",null),e([d({constructOnly:!0})],w.prototype,"createTool",void 0),e([d()],w.prototype,"effectiveSelectionManager",null),e([d()],w.prototype,"effectiveType",null),e([d({constructOnly:!0})],w.prototype,"mode",void 0),e([d()],w.prototype,"persistSelection",void 0),e([d()],w.prototype,"processingFinalSelection",null),e([d()],w.prototype,"returnFeatureTitleFields",void 0),e([d()],w.prototype,"returnGeometry",void 0),e([d({readOnly:!0})],w.prototype,"selection",void 0),e([d({constructOnly:!0})],w.prototype,"selectionManager",void 0),e([d({constructOnly:!0})],w.prototype,"selectOnComplete",void 0),e([d()],w.prototype,"sources",void 0),e([d({constructOnly:!0})],w.prototype,"toolName",void 0),e([d()],w.prototype,"type",void 0),e([d({constructOnly:!0})],w.prototype,"view",void 0),w=e([h("esri.widgets.support.Selector2D.SelectionOperation")],w);const T=w;export{T as default};
|
|
File without changes
|