@arcgis/core 5.2.0-next.73 → 5.2.0-next.74
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/analysis/ViewshedAnalysis.js +1 -1
- package/arcgisGlobal.d.ts +1 -0
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/{d3be4d914fc99a1d686c.js → 075e65cc4275ac886f08.js} +1 -1
- package/assets/esri/core/workers/chunks/087bd698b80ca0cea71e.js +1 -0
- package/assets/esri/core/workers/chunks/{b6c7b7b7f87dce5de811.js → 0bf644f93c180a2bc2f8.js} +1 -1
- package/assets/esri/core/workers/chunks/0e81c6d4f1c81f9b0a1b.js +1 -0
- package/assets/esri/core/workers/chunks/193aed69de2dec4f36b6.js +1 -0
- package/assets/esri/core/workers/chunks/1a3afee3ecd806b4aa81.js +1 -0
- package/assets/esri/core/workers/chunks/{014f9fd2818e2c9d9a3b.js → 264fd750691d517ab1f3.js} +1 -1
- package/assets/esri/core/workers/chunks/28f87daaba1ae3441364.js +1 -0
- package/assets/esri/core/workers/chunks/2baa16ec8559e77c226f.js +1 -0
- package/assets/esri/core/workers/chunks/2c31648a4b95275516ee.js +1 -0
- package/assets/esri/core/workers/chunks/2f81047790c4890ae625.js +1 -0
- package/assets/esri/core/workers/chunks/305eea9c1fc4aee3309e.js +1 -0
- package/assets/esri/core/workers/chunks/31d19bb72a9e79b30070.js +1 -0
- package/assets/esri/core/workers/chunks/45ccca01db0027b9dc16.js +1 -0
- package/assets/esri/core/workers/chunks/495f90fe3d0ad32bb82d.js +1 -0
- package/assets/esri/core/workers/chunks/4b5bd0c9a55ea2998601.js +1 -0
- package/assets/esri/core/workers/chunks/509aecafbc629bee1c15.js +1 -0
- package/assets/esri/core/workers/chunks/{d901f8503a73277cfa58.js → 553be2bd69bd311477ea.js} +1 -1
- package/assets/esri/core/workers/chunks/{31669511cfddf116d991.js → 66e60351aacbd162775f.js} +1 -1
- package/assets/esri/core/workers/chunks/762be5d3e6aeaea33f74.js +29 -0
- package/assets/esri/core/workers/chunks/76b573143d1a65fdbcb6.js +1 -0
- package/assets/esri/core/workers/chunks/7aaa051b51a8e34bbfb0.js +1 -0
- package/assets/esri/core/workers/chunks/{44b50d4716a2567ab6f1.js → 7b5b66ae79e0287e3ade.js} +1 -1
- package/assets/esri/core/workers/chunks/81130dbcb738d40f723b.js +1 -0
- package/assets/esri/core/workers/chunks/835af7b4fd92cb4e7af0.js +1 -0
- package/assets/esri/core/workers/chunks/859dd86c921053bf03a1.js +1 -0
- package/assets/esri/core/workers/chunks/877594b6db08da98acd7.js +1 -0
- package/assets/esri/core/workers/chunks/{96d861265566854760cd.js → 88fd698b940dadcc6dc5.js} +1 -1
- package/assets/esri/core/workers/chunks/8f0d4aec8bd3cbfefc40.js +1 -0
- package/assets/esri/core/workers/chunks/{7f208ef75ef2ce0d7cf9.js → 910c93bbbf8113a4a51f.js} +1 -1
- package/assets/esri/core/workers/chunks/92c4464b67fce6cea134.js +1 -0
- package/assets/esri/core/workers/chunks/{509cfac9e5d86a8ee449.js → 936d44c7bc3a181e64a3.js} +1 -1
- package/assets/esri/core/workers/chunks/{b9953277d0cd4a01bdc6.js → 94368a097e6190ce3c7a.js} +1 -1
- package/assets/esri/core/workers/chunks/947f1ea4dbc3e3419ecc.js +1 -0
- package/assets/esri/core/workers/chunks/9b76c8974424a1908e86.js +1 -0
- package/assets/esri/core/workers/chunks/{c203df41f9d2e4b80889.js → 9ca59077712e45ef4d56.js} +1 -1
- package/assets/esri/core/workers/chunks/9e25f715cda59c686a4c.js +1 -0
- package/assets/esri/core/workers/chunks/{36171c72a3c04b0d13ef.js → a0a1f0bd3648738354a6.js} +1 -1
- package/assets/esri/core/workers/chunks/a101152066dd56259619.js +1 -0
- package/assets/esri/core/workers/chunks/a2a2c7e274fb32fecffa.js +1 -0
- package/assets/esri/core/workers/chunks/a50421fe79f264ae3619.js +1 -0
- package/assets/esri/core/workers/chunks/a9053ad0f4e8c4705665.js +1 -0
- package/assets/esri/core/workers/chunks/aca5c524bd3c955e9243.js +1 -0
- package/assets/esri/core/workers/chunks/b1a175b3b2d1a7ddde8e.js +1 -0
- package/assets/esri/core/workers/chunks/b3b53cf0a3a30164d337.js +1 -0
- package/assets/esri/core/workers/chunks/b6d26d9738c0787acc38.js +1 -0
- package/assets/esri/core/workers/chunks/b9c61b20bbc91cb63036.js +1 -0
- package/assets/esri/core/workers/chunks/bf3dc3ad8df8488da3f0.js +1 -0
- package/assets/esri/core/workers/chunks/bff75cc7413bf0d319db.js +1 -0
- package/assets/esri/core/workers/chunks/c1568bcd3f04014152e1.js +1 -0
- package/assets/esri/core/workers/chunks/c1a4d499a30f3d80567b.js +1 -0
- package/assets/esri/core/workers/chunks/c374e5d5980db74c4aca.js +1 -0
- package/assets/esri/core/workers/chunks/{8c76f31a363dd0c3354d.js → c46f79d5b7712adbbd1c.js} +1 -1
- package/assets/esri/core/workers/chunks/c67e4a848d41038367b8.js +1 -0
- package/assets/esri/core/workers/chunks/de5013f89f0eae93978f.js +1 -0
- package/assets/esri/core/workers/chunks/e557043f90c051e93925.js +1 -0
- package/assets/esri/core/workers/chunks/{bee5e738ecf8680909c4.js → eaf26c1cc938789d5336.js} +1 -1
- package/assets/esri/core/workers/chunks/ebfb3cdc0df15eb05d75.js +1 -0
- package/assets/esri/core/workers/chunks/f1727b4a32cb6f36a5e6.js +1 -0
- package/assets/esri/core/workers/chunks/f4bc563c71c478d3912f.js +1 -0
- package/assets/esri/core/workers/chunks/fb0b89bbb4f8607d5f20.js +1 -0
- package/assets/esri/core/workers/chunks/fdca9873914b9dbd9244.js +1 -0
- package/assets/esri/core/workers/chunks/ff890167ff2baabfc4ce.js +1 -0
- package/config.js +1 -1
- package/kernel.js +1 -1
- package/layers/DimensionFeatureLayer.d.ts +22 -0
- package/layers/DimensionFeatureLayer.js +1 -1
- package/layers/save/featureLayerUtils.js +1 -1
- package/layers/support/layerUtils.js +1 -1
- package/layers/support/layersMapping.js +1 -1
- package/package.json +1 -1
- package/support/revision.js +1 -1
- package/views/2d/interactive/editingTools/draw/DrawGraphicTool2D.js +1 -1
- package/views/3d/analysis/LineOfSight/LineOfSightReshapeTool3D.js +1 -1
- package/views/3d/analysis/LineOfSight/lineOfSightPlacementUtils.js +1 -1
- package/views/3d/analysis/Viewshed/ViewshedEditTool.js +1 -1
- package/views/3d/analysis/Viewshed/ViewshedPlacementController.js +1 -1
- package/views/3d/analysis/Viewshed/placementUtils.js +1 -1
- package/views/3d/analysis/ViewshedAnalysisView3D.js +1 -1
- package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementShiftTool.js +1 -1
- package/views/3d/interactive/editingTools/draw/DrawGraphicTool3D.js +1 -1
- package/views/3d/interactive/editingTools/move/MoveTool3D.js +1 -1
- package/views/3d/interactive/editingTools/reshape/ReshapeOperation.js +1 -1
- package/views/3d/interactive/editingTools/reshape/ReshapeTool3D.js +1 -1
- package/views/3d/interactive/editingTools/reshape/reshapeTooltipUtils3D.js +1 -1
- package/views/3d/interactive/editingTools/tooltipUtils3D.js +1 -1
- package/views/3d/interactive/editingTools/transform/ExtentTransformTool.js +1 -1
- package/views/3d/interactive/editingTools/transform/ScaleRotateTransform.js +1 -1
- package/views/3d/interactive/editingTools/transform/TransformTool3D.js +1 -1
- package/views/3d/interactive/editingTools/transform/extentTransform/ExtentMove.js +1 -1
- package/views/3d/interactive/editingTools/transform/extentTransform/ExtentRotate.js +1 -1
- package/views/3d/interactive/editingTools/transform/extentTransform/ExtentScale.js +1 -1
- package/views/3d/layers/graphics/tessellationUtils.js +1 -1
- package/views/3d/layers/support/FeatureTileVisibility3D.js +1 -1
- package/views/3d/layers/support/MediaLayerInteraction.js +1 -1
- package/views/3d/support/flow/FlowSubViewTiles3D.js +1 -1
- package/views/3d/support/renderInfoUtils/polygon.js +1 -1
- package/views/3d/webgl-engine/lib/BindParameters.js +1 -1
- package/views/3d/webgl-engine/lib/Renderer.js +1 -1
- package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
- package/views/3d/webgl-engine/lib/ViewshedShadowMap.js +1 -1
- package/views/3d/webgl-engine/parts/RenderView.js +1 -1
- package/views/draw/DrawGraphicTool.js +1 -1
- package/views/draw/DrawTool.js +1 -1
- package/views/draw/plugins/PolylinePlugin.js +1 -1
- package/views/draw/support/Box.js +1 -1
- package/views/draw/support/InteractiveHandle.js +1 -1
- package/views/draw/support/Reshape.js +1 -1
- package/views/draw/support/drawToolUtils.js +1 -1
- package/views/draw/support/managers/InteractiveHandleManager.js +1 -1
- package/views/draw/support/managers/TooltipManager.js +1 -1
- package/views/draw/support/reshapeTooltipUtils.js +1 -1
- package/views/draw/support/tooltipUtils.js +1 -1
- package/views/interactive/options/InteractiveToolOptions.d.ts +36 -0
- package/views/interactive/options/InteractiveToolOptions.js +2 -0
- package/views/interactive/sketch/SketchOptions.d.ts +4 -3
- package/views/interactive/sketch/SketchOptions.js +1 -1
- package/views/interactive/tooltip/components/DrawHeaderActions.js +1 -1
- package/views/interactive/tooltip/content/TooltipContent.js +1 -1
- package/views/interactive/tooltip/content/TooltipContentDrawPolygon.js +1 -1
- package/views/interactive/tooltip/content/TooltipContentDrawPolyline.js +1 -1
- package/views/interactive/tooltip/content/TooltipContentDynamic.js +1 -1
- package/views/interactive/tooltip/fields/fields.js +1 -1
- package/views/interactive/tooltip/infos/DynamicTooltipInfo.js +1 -1
- package/views/interactive/tooltip/infos/SketchTooltipInfo.js +1 -1
- package/views/interactive/tooltip/tooltipCommonUtils.js +1 -1
- package/widgets/Sketch/SketchViewModel.js +1 -1
- package/widgets/support/GridControls/GridControlsViewModel.js +1 -1
- package/assets/esri/core/workers/chunks/00cbff0b785e24e87d97.js +0 -1
- package/assets/esri/core/workers/chunks/0623acb2bd14a61b65c9.js +0 -29
- package/assets/esri/core/workers/chunks/06c9aac75a01d3af6d54.js +0 -1
- package/assets/esri/core/workers/chunks/089f8c60e96d920a2cb2.js +0 -1
- package/assets/esri/core/workers/chunks/0c3c311400ee352187ea.js +0 -1
- package/assets/esri/core/workers/chunks/158d2ac0333d53556e33.js +0 -1
- package/assets/esri/core/workers/chunks/16cade1c2ddf44e336ee.js +0 -1
- package/assets/esri/core/workers/chunks/1b130af7d14eaae69d96.js +0 -1
- package/assets/esri/core/workers/chunks/1e0140556c2e3fa72545.js +0 -1
- package/assets/esri/core/workers/chunks/1e5cb72830c7f32f2961.js +0 -1
- package/assets/esri/core/workers/chunks/259bdacfb7b0f866a8d0.js +0 -1
- package/assets/esri/core/workers/chunks/2f58e1f64df2da8259a2.js +0 -1
- package/assets/esri/core/workers/chunks/383304d33b496c5d8baa.js +0 -1
- package/assets/esri/core/workers/chunks/3aacb935d632834d4154.js +0 -1
- package/assets/esri/core/workers/chunks/3c8e98cf23ad8ef12fcb.js +0 -1
- package/assets/esri/core/workers/chunks/3dc71e03a630dd50b28e.js +0 -1
- package/assets/esri/core/workers/chunks/3fd022df127af32782ce.js +0 -1
- package/assets/esri/core/workers/chunks/4344ab1250a1c550bf8b.js +0 -1
- package/assets/esri/core/workers/chunks/43de723f765ec8f268ac.js +0 -1
- package/assets/esri/core/workers/chunks/4695cd6120f60b234d5c.js +0 -1
- package/assets/esri/core/workers/chunks/582a1d468089b9986416.js +0 -1
- package/assets/esri/core/workers/chunks/5f201c77a09ae0df29d6.js +0 -1
- package/assets/esri/core/workers/chunks/6080e46fc79127500283.js +0 -1
- package/assets/esri/core/workers/chunks/67d3ff7fcefaa7d5d27f.js +0 -1
- package/assets/esri/core/workers/chunks/6a9002fcba11e2cf3f2e.js +0 -1
- package/assets/esri/core/workers/chunks/72dcd4bd1a28bf8605c5.js +0 -1
- package/assets/esri/core/workers/chunks/73f228d966b89c73c9e9.js +0 -1
- package/assets/esri/core/workers/chunks/77df0bb35d2688729479.js +0 -1
- package/assets/esri/core/workers/chunks/7a143ca61c0a70306185.js +0 -1
- package/assets/esri/core/workers/chunks/869d292a60747c93dc84.js +0 -1
- package/assets/esri/core/workers/chunks/9c57161ad48d8d546dc7.js +0 -1
- package/assets/esri/core/workers/chunks/a7f42ada0aa69873a938.js +0 -1
- package/assets/esri/core/workers/chunks/a988fd54912969b812ce.js +0 -1
- package/assets/esri/core/workers/chunks/aff0e7761276036e029d.js +0 -1
- package/assets/esri/core/workers/chunks/b7d8817018b3d277c454.js +0 -1
- package/assets/esri/core/workers/chunks/ba4f419f46be09a9a55c.js +0 -1
- package/assets/esri/core/workers/chunks/bfb6566c27c09deb0929.js +0 -1
- package/assets/esri/core/workers/chunks/c715c585c42d8c2b86f5.js +0 -1
- package/assets/esri/core/workers/chunks/c7e9513f75b8ec205562.js +0 -1
- package/assets/esri/core/workers/chunks/c838cc1c786368b78598.js +0 -1
- package/assets/esri/core/workers/chunks/cd4e5c948d1bfa9b9a2d.js +0 -1
- package/assets/esri/core/workers/chunks/cfe31b7d1c6c05fbd268.js +0 -1
- package/assets/esri/core/workers/chunks/d0c1bc90e474f706211c.js +0 -1
- package/assets/esri/core/workers/chunks/da484787bd9fd3b13d15.js +0 -1
- package/assets/esri/core/workers/chunks/e21b3490bfce75405e55.js +0 -1
- package/assets/esri/core/workers/chunks/e4353f0792f45aa6a62f.js +0 -1
- package/assets/esri/core/workers/chunks/e702abaeccef20b64a81.js +0 -1
- package/assets/esri/core/workers/chunks/ebd619533be077059494.js +0 -1
- package/assets/esri/core/workers/chunks/f475672ff4c2ec9367c2.js +0 -1
- package/assets/esri/core/workers/chunks/f69329b85b362b349a8c.js +0 -1
- package/assets/esri/core/workers/chunks/fba8065a3a6fbd877e23.js +0 -1
- package/assets/esri/core/workers/chunks/fec07a16b72cdcafc641.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1560,4926,6344],{52106(e,t,n){n.d(t,{A:()=>C});var r,i,s=n(5482),o=n(37838),a=n(69540),l=n(51447),u=n(25482),c=n(53966),d=n(36708),p=n(24326),f=n(91429),h=n(12195),y=n(65864),m=n(50498),g=n(55156),b=n(60950),M=n(54339),v=n(94128),w=n(33910);function I(e){if(null==e)return null;const t={};for(const n in e){const r=e[n];r&&(t[n]=r.toJSON())}return 0!==Object.keys(t).length?t:null}let C=class extends((0,a.OU)(u.o)){static{r=v.Z}static{i=this}constructor(e){super(e),this[r]=!0,this.distance=null,this.isAggregate=!1,this.layer=null,this.origin=null,this.sourceLayer=null,this.statisticsAggregatedIds=void 0,this._version=0,Object.defineProperty(this,"uid",{value:(0,p.c)(),configurable:!0}),Object.defineProperty(this,"_lastMeshTransform",{value:{},configurable:!0,writable:!0,enumerable:!1}),arguments.length>1&&(0,l.eF)(c.A.getLogger(this),"Graphic",{version:"4.30"})}initialize(){this._watchMeshGeometryChanges()}set aggregateGeometries(e){const t=this._get("aggregateGeometries");JSON.stringify(t)!==JSON.stringify(e)&&this._set("aggregateGeometries",e)}set attributes(e){const t=this._get("attributes");t!==e&&(this._set("attributes",e),this._notifyLayer("attributes",t,e))}set geometry(e){const t=this._get("geometry");t!==e&&(this._set("geometry",e),"mesh"!==e?.type&&this._notifyLayer("geometry",t,e))}set popupTemplate(e){const t=this._get("popupTemplate");t!==e&&(this._set("popupTemplate",e),this._notifyLayer("popupTemplate",t,e))}set symbol(e){const t=this._get("symbol");t!==e&&(this._set("symbol",e),this._notifyLayer("symbol",t,e))}get version(){return this._version}set visible(e){const t=this._get("visible");t!==e&&(this._set("visible",e),this._notifyLayer("visible",t,e))}cloneShallow(){return new i({aggregateGeometries:this.aggregateGeometries,statisticsAggregatedIds:this.statisticsAggregatedIds,attributes:this.attributes,geometry:this.geometry,isAggregate:this.isAggregate,layer:this.layer,popupTemplate:this.popupTemplate,sourceLayer:this.sourceLayer,symbol:this.symbol,visible:this.visible,origin:this.origin})}getEffectivePopupTemplate(e=!1){if(this.popupTemplate)return this.popupTemplate;const t=(0,b.E_)(this.origin);if(t)return t.popupTemplate??(e?t.defaultPopupTemplate:null)??null;const n=this.origin&&"layer"in this.origin?this.origin.layer:null;for(const t of[n,this.sourceLayer,this.layer])if(t&&"object"==typeof t){if("popupTemplate"in t&&t.popupTemplate)return t.popupTemplate;if(e&&"defaultPopupTemplate"in t&&null!=t.defaultPopupTemplate)return t.defaultPopupTemplate}return null}getAttribute(e){return this.attributes?.[e]}setAttribute(e,t){if(this.attributes){const n=this.getAttribute(e);this.attributes[e]=t,this._notifyLayer("attributes",n,t,e)}else this.attributes={[e]:t}}getObjectId(){const e=(0,g.I)(this.origin);if(e)return(0,M.r)(this,e);const t=this.sourceLayer??this.layer;return t?(0,M.r)(this,t):null}getGlobalId(){const e=(0,g.I)(this.origin);if(e?.globalIdField)return this.getAttribute(e.globalIdField);const t=this.sourceLayer??this.layer;return t&&"globalIdField"in t&&t.globalIdField?this.getAttribute(t.globalIdField):null}toJSON(){const e={aggregateGeometries:I(this.aggregateGeometries),geometry:this.geometry?.toJSON()??null,symbol:this.symbol?.toJSON()??null,attributes:(0,h.W)(this.attributes)?this.attributes.toJSON():{...this.attributes},popupTemplate:this.popupTemplate?.toJSON()??null};return this.statisticsAggregatedIds?.length&&(e.aggregateIds=[...this.statisticsAggregatedIds]),null!=this.distance&&(e.distance=this.distance),e}notifyMeshTransformChanged(e={}){const{geometry:t}=this;if("mesh"===t?.type){const n={origin:t.origin,transform:t.transform};this._notifyLayer("origin-transform",n,n,e.action)}}_notifyLayer(e,t,n,r){if(this._version++,!this.layer||!("graphicChanged"in this.layer))return;const i={graphic:this,property:e,oldValue:t,newValue:n};"origin-transform"===e&&(i.action=r),"attributes"===e&&(i.attributeName=r),this.layer.graphicChanged(i)}_watchMeshGeometryChanges(){this.addHandles([(0,d.z7)(()=>"mesh"===this.geometry?.type&&this.geometry.vertexSpace.origin?{localMatrix:this.geometry.transform?.localMatrix,origin:this.geometry.vertexSpace.origin}:void 0,({localMatrix:e,origin:t})=>{this._lastMeshTransform.localMatrix===e&&this._lastMeshTransform.origin===t||(this._lastMeshTransform.localMatrix=e,this._lastMeshTransform.origin=t,this.notifyMeshTransformChanged())}),(0,d.z7)(()=>"mesh"===this.geometry?.type?{vertexAttributes:this.geometry.vertexAttributes}:void 0,()=>{const e=this.geometry;"mesh"===e?.type&&e.vertexSpace.origin?(this._lastMeshTransform.localMatrix=e.transform?.localMatrix,this._lastMeshTransform.origin=e.vertexSpace.origin):(this._lastMeshTransform.localMatrix=void 0,this._lastMeshTransform.origin=void 0),this._notifyLayer("geometry",this.geometry,this.geometry)},{equals:(e,t)=>e===t,sync:!0})])}};(0,s.Cg)([(0,f.MZ)({value:null,json:{read:function(e){if(!e)return null;const t={};for(const n in e){const r=(0,y.rS)(e[n]);r&&(t[n]=r)}return 0!==Object.keys(t).length?t:null}}})],C.prototype,"aggregateGeometries",null),(0,s.Cg)([(0,f.MZ)({value:null})],C.prototype,"attributes",null),(0,s.Cg)([(0,f.MZ)({value:null,types:m.yR,json:{read:y.rS}})],C.prototype,"geometry",null),(0,s.Cg)([(0,f.MZ)()],C.prototype,"distance",void 0),(0,s.Cg)([(0,f.MZ)({type:Boolean})],C.prototype,"isAggregate",void 0),(0,s.Cg)([(0,f.MZ)({clonable:!1})],C.prototype,"layer",void 0),(0,s.Cg)([(0,f.MZ)({clonable:"reference"})],C.prototype,"origin",void 0),(0,s.Cg)([(0,f.MZ)({type:o.A,value:null})],C.prototype,"popupTemplate",null),(0,s.Cg)([(0,f.MZ)({clonable:"reference"})],C.prototype,"sourceLayer",void 0),(0,s.Cg)([(0,f.MZ)({json:{name:"aggregateIds",read:e=>e?.map(e=>Array.isArray(e)?JSON.stringify(e):e)}})],C.prototype,"statisticsAggregatedIds",void 0),(0,s.Cg)([(0,f.MZ)({value:null,types:w.Es})],C.prototype,"symbol",null),(0,s.Cg)([(0,f.MZ)({clonable:!1,json:{read:!1,write:!1}})],C.prototype,"_version",void 0),(0,s.Cg)([(0,f.MZ)({type:Boolean,value:!0})],C.prototype,"visible",null),C=i=(0,s.Cg)([(0,f.$K)("esri.Graphic")],C)},66344(e,t,n){n.d(t,{q:()=>a});const r=!!(0,n(44208).A)("esri-tests-disable-gpu-memory-measurements");Symbol.iterator;class i{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 n=this._db.get(e.id+t);return n?.size??0}put(e,t,n,i,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!==n&&this._notifyRemove(t,a.entry,a.size,0)),i>this._maxSize)return void this._notifyRemove(t,n,i,0);if(void 0===n)return void console.warn("Refusing to cache undefined entry ");if(!i||i<0)return r||console.warn(`Refusing to cache entry with size ${i} for key ${t}`),void this._notifyRemove(t,n,0,0);const l=1+Math.max(o,-4)- -3;this._db.set(t,new s(n,i,l)),this._size+=i,e.size+=i,this._checkSize()}updateSize(e,t){t=e.id+t;const n=this._db.get(t);if(!n)return;this._size-=n.size,e.size-=n.size;let r=n.entry.usedMemory;for(;r>this._maxSize;){const e=this._notifyRemove(t,n.entry,r,1);if(!(null!=e&&e>0))return void this._db.delete(t);r=e}n.size=r,this._size+=r,e.size+=r,this._checkSize()}pop(e,t){t=e.id+t;const n=this._db.get(t);if(n)return this._size-=n.size,e.size-=n.size,this._db.delete(t),++this._hit,n.entry;++this._miss}get(e,t){t=e.id+t;const n=this._db.get(t);if(void 0!==n)return this._db.delete(t),n.lives=n.lifetime,this._db.set(t,n),++this._hit,n.entry;++this._miss}peek(e,t){const n=this._db.get(e.id+t);return n?++this._hit:++this._miss,n?.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={},n=new Array;this._db.forEach((e,r)=>{const i=e.lifetime;n[i]=(n[i]||0)+e.size,this._clients.forEach(n=>{const{id:i,name:s}=n;if(r.startsWith(i)){const n=t[s]||0;t[s]=n+e.size}})});const r={};this._clients.forEach(e=>{const n=e.name;if("hitRate"in e&&"number"==typeof e.hitRate&&!isNaN(e.hitRate)&&e.hitRate>0){const i=t[n]||0;t[n]=i,r[n]=Math.round(100*e.hitRate)+"%"}else r[n]="0%"});const i=Object.keys(t);i.sort((e,n)=>t[n]-t[e]),i.forEach(n=>e[n]=Math.round(t[n]/2**20)+"MB / "+r[n]);for(let t=n.length-1;t>=0;--t){const r=n[t];r&&(e["Priority "+(t+-3-1)]=Math.round(r/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,n)=>{n.startsWith(t)&&(this._size-=e.size,this._db.delete(n),this._notifyRemove(n,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,n]of this._db)t.startsWith(e.id)&&(yield n.entry)}_getHitRate(){return this._hit/(this._hit+this._miss)}_notifyRemove(e,t,n,r){const i=this._clients.get(e.split(o)[0])?.removeFunc,s=i?.(t,r,n);return"number"==typeof s?s:null}_checkSize(){this._sizeLimits.forEach((e,t)=>this._checkSizeLimits(e,t)),this._clients.forEach(e=>this._checkSizeLimits(this._maxClientSize,e)),this._checkSizeLimits(this.maxSize)}setMaxClientSize(e,t){null==t||t<=0?this._sizeLimits.delete(e):this._sizeLimits.set(e,t)}_checkSizeLimits(e,t){const n=t??this;if(n.size<=e)return;const r=t?.id;let i=!0;for(;i;){i=!1;for(const[s,a]of this._db)if(0===a.lifetime&&(!r||s.startsWith(r))){const r=t??this._clients.get(s.split(o)[0]);if(this._purgeItem(s,a,r),n.size<=.9*e)return;i||=this._db.has(s)}}for(const[i,s]of this._db)if(!r||i.startsWith(r)){const r=t??this._clients.get(i.split(o)[0]);if(this._purgeItem(i,s,r),n.size<=.9*e)return}}_purgeItem(e,t,n){if(this._db.delete(e),t.lives<=1){this._size-=t.size,n&&(n.size-=t.size);const r=this._notifyRemove(e,t.entry,t.size,1);null!=r&&r>0&&(this._size+=r,n&&(n.size+=r),t.lives=t.lifetime,t.size=r,this._db.set(e,t))}else--t.lives,this._db.set(e,t)}}new i(0);class s{constructor(e,t,n){this.entry=e,this.size=t,this.lifetime=n,this.lives=n}}const o=":";class a{constructor(e,t){this.removeFunc=t,this.id="",this.name="",this.size=0,this._storage=new i(e,1),this._storage.register(this)}destroy(){this._storage.deregister(this),this._storage.destroy()}put(e,t,n=1){this._storage.put(this,e,t,n,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(){}}},6797(e,t,n){n.d(t,{Ui:()=>p});var r=n(69622),i=n(7762),s=n(88620);const o=new Set(["esri.Color","esri.portal.Portal","esri.symbols.support.Symbol3DAnchorPosition2D","esri.symbols.support.Symbol3DAnchorPosition3D"]);function a(e){return e instanceof r.A}function l(e){return e instanceof i.A?Object.keys(e.items):a(e)?(0,s.oY)(e).keys():e?Object.keys(e):[]}function u(e,t){return e instanceof i.A?e.items[t]:e[t]}function c(e){return e?e.declaredClass:null}function d(e,t){const n=e.diff;if(n&&"function"==typeof n)return n(e,t);const r=l(e),i=l(t);if(0===r.length&&0===i.length)return;if(!r.length||!i.length||function(e,t){return!(!Array.isArray(e)||!Array.isArray(t))&&e.length!==t.length}(e,t))return{type:"complete",oldValue:e,newValue:t};const s=i.filter(e=>!r.includes(e)),p=r.filter(e=>!i.includes(e)),f=r.filter(n=>i.includes(n)&&u(e,n)!==u(t,n)).concat(s,p).sort(),h=c(e);if(h&&o.has(h)&&f.length)return{type:"complete",oldValue:e,newValue:t};let y;const m=a(e)&&a(t);for(const r of f){const i=u(e,r),s=u(t,r);let o;if((m||"function"!=typeof i&&"function"!=typeof s)&&i!==s&&(null!=i||null!=s)){if(n&&n[r]&&"function"==typeof n[r])o=n[r]?.(i,s);else if(i instanceof Date&&s instanceof Date){if(i.getTime()===s.getTime())continue;o={type:"complete",oldValue:i,newValue:s}}else o="object"==typeof i&&"object"==typeof s&&c(i)===c(s)?d(i,s):{type:"complete",oldValue:i,newValue:s};null!=o&&(null!=y?y.diff[r]=o:y={type:"partial",diff:{[r]:o}})}}return y}function p(e,t){if("function"!=typeof e&&"function"!=typeof t&&(null!=e||null!=t))return null==e||null==t||"object"==typeof e&&"object"==typeof t&&c(e)!==c(t)?{type:"complete",oldValue:e,newValue:t}:d(e,t)}},85334(e,t,n){n.d(t,{$:()=>g,IB:()=>o,Iy:()=>w,N2:()=>b,RH:()=>v,ZD:()=>M});var r=n(68197),i=n(4576),s=n(4718);function o(e){return"r"in e&&"g"in e&&"b"in e}function a(e){return"h"in e&&"s"in e&&"v"in e}function l(e){return"l"in e&&"a"in e&&"b"in e}function u(e){return"l"in e&&"c"in e&&"h"in e}n(34727),n(78955),n(91829);const c=[[.4124,.3576,.1805],[.2126,.7152,.0722],[.0193,.1192,.9505]],d=[[3.2406,-1.5372,-.4986],[-.9689,1.8758,.0415],[.0557,-.204,1.057]];function p(e,t){const n=[];let r,i;if(e[0].length!==t.length)throw new Error("dimensions do not match");const s=e.length,o=e[0].length;let a=0;for(r=0;r<s;r++){for(a=0,i=0;i<o;i++)a+=e[r][i]*t[i];n.push(a)}return n}function f(e){const t=[e.r/255,e.g/255,e.b/255].map(e=>e<=.04045?e/12.92:((e+.055)/1.055)**2.4),n=p(c,t);return{x:100*n[0],y:100*n[1],z:100*n[2]}}function h(e){const t=p(d,[e.x/100,e.y/100,e.z/100]).map(e=>{const t=e<=.0031308?12.92*e:1.055*e**(1/2.4)-.055;return Math.min(1,Math.max(t,0))});return{r:Math.round(255*t[0]),g:Math.round(255*t[1]),b:Math.round(255*t[2])}}function y(e){const t=[e.x/95.047,e.y/100,e.z/108.883].map(e=>e>(6/29)**3?e**(1/3):1/3*(29/6)**2*e+4/29);return{l:116*t[1]-16,a:500*(t[0]-t[1]),b:200*(t[1]-t[2])}}function m(e){const t=e.l,n=[(t+16)/116+e.a/500,(t+16)/116,(t+16)/116-e.b/200].map(e=>e>6/29?e**3:3*(6/29)**2*(e-4/29));return{x:95.047*n[0],y:100*n[1],z:108.883*n[2]}}function g(e){return o(e)?e:u(e)?function(e){return h(m(function(e){const t=e.l,n=e.c,r=e.h;return{l:t,a:n*Math.cos(r),b:n*Math.sin(r)}}(e)))}(e):l(e)?function(e){return h(m(e))}(e):function(e){return"x"in e&&"y"in e&&"z"in e}(e)?h(e):a(e)?function(e){const t=(e.h+360)%360/60,n=e.s/100,r=e.v/100*255,i=r*n,s=i*(1-Math.abs(t%2-1));let o;switch(Math.floor(t)){case 0:o={r:i,g:s,b:0};break;case 1:o={r:s,g:i,b:0};break;case 2:o={r:0,g:i,b:s};break;case 3:o={r:0,g:s,b:i};break;case 4:o={r:s,g:0,b:i};break;case 5:case 6:o={r:i,g:0,b:s};break;default:o={r:0,g:0,b:0}}return o.r=Math.round(o.r+r-i),o.g=Math.round(o.g+r-i),o.b=Math.round(o.b+r-i),o}(e):e}function b(e){return a(e)?e:function(e){const{r:t,g:n,b:r}=e,i=Math.max(t,n,r),s=i-Math.min(t,n,r);let o=i,a=0===s?0:i===t?(n-r)/s%6:i===n?(r-t)/s+2:(t-n)/s+4,l=0===s?0:s/o;return a<0&&(a+=6),a*=60,l*=100,o*=100/255,{h:a,s:l,v:o}}(g(e))}function M(e){return l(e)?e:function(e){return y(f(e))}(g(e))}function v(e){return u(e)?e:function(e){return function(e){const t=e.l,n=e.a,r=e.b,i=Math.sqrt(n*n+r*r);let s=Math.atan2(r,n);return s=s>0?s:s+2*Math.PI,{l:t,c:i,h:s}}(y(f(e)))}(g(e))}function w(e,t,n={}){if(0===e.length||t<=0)return[];if(1===(e=e.map(e=>"string"==typeof e?new r.A(e):e)).length||1===t){const n=[],r=e[0];for(let e=0;e<t;e++)n.push(r.clone());return n}if(n.shuffle&&(e=(0,i.k4)((0,s.o8)(e),n.seed)),e.length>=t){const n=[],r=(e.length-1)/(t-1);for(let i=0;i<t;i++){const t=Math.round(i*r);n.push(e[t].clone())}return n}return function(e,t,n={}){const r=[],s=e.length-1,o=Math.ceil((t-e.length)/s);e:for(let i=0;i<s;i++){const s=e[i],a=e[i+1];for(let i=1;i<=o;i++){const l=i/(o+1);if(r.push(C(s,a,l,n)),r.length+e.length===t)break e}}return[...e.map(e=>e.clone()),...(0,i.k4)(r,n.seed??1)]}(e,t,n)}const I=(e,t)=>{const n=Math.floor(10*t())-5;return Math.min(255,Math.max(0,e+n))};function C(e,t,n,s={}){const o=e.r,a=e.g,l=e.b,u=t.r,c=t.g,d=t.b,p=Math.round(o+(u-o)*n),f=Math.round(a+(c-a)*n),h=Math.round(l+(d-l)*n);if(!s.offset)return new r.A([p,f,h]);const y=(0,i.Mo)(s.seed);return new r.A([I(p,y),I(f,y),I(h,y)])}},9093(e,t,n){function r(){return[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]}function i(e){return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8],e[9],e[10],e[11],e[12],e[13],e[14],e[15]]}n.d(t,{o8:()=>i,vt:()=>r});const s=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];Object.freeze(Object.defineProperty({__proto__:null,IDENTITY:s,clone:i,create:r,fromValues:function(e,t,n,r,i,s,o,a,l,u,c,d,p,f,h,y){return[e,t,n,r,i,s,o,a,l,u,c,d,p,f,h,y]}},Symbol.toStringTag,{value:"Module"})),n.d(t,["zK",0,s])},91829(e,t,n){function r(){return[0,0,0,0]}function i(e,t,n,r){return[e,t,n,r]}function s(e,t,n,r){return[e,t,n,r]}function o(){return i(1,1,1,1)}function a(){return i(1,0,0,0)}function l(){return i(0,1,0,0)}function u(){return i(0,0,1,0)}function c(){return i(0,0,0,1)}n.d(t,{CN:()=>s,_Y:()=>c,fA:()=>i,vt:()=>r});const d=[0,0,0,0],p=o(),f=a(),h=l(),y=u(),m=c();Object.freeze(Object.defineProperty({__proto__:null,ONES:p,UNIT_W:m,UNIT_X:f,UNIT_Y:h,UNIT_Z:y,ZEROS:d,clone:function(e){return[e[0],e[1],e[2],e[3]]},create:r,freeze:s,fromArray:function(e,t=[0,0,0,0]){const n=Math.min(4,e.length);for(let r=0;r<n;++r)t[r]=e[r];return t},fromValues:i,ones:o,unitW:c,unitX:a,unitY:l,unitZ:u,zeros:function(){return[0,0,0,0]}},Symbol.toStringTag,{value:"Module"})),n.d(t,["Un",0,p,"uY",0,d])},35522(e,t,n){n.d(t,{$A:()=>F,Bw:()=>s,C:()=>o,Cc:()=>S,DI:()=>I,Io:()=>b,Ln:()=>g,Om:()=>x,Qr:()=>d,Re:()=>u,S8:()=>C,T9:()=>y,WQ:()=>l,Z0:()=>A,_S:()=>f,aI:()=>z,ei:()=>_,fw:()=>E,g7:()=>k,gL:()=>T,hG:()=>M,hZ:()=>a,hs:()=>m,jk:()=>h,lw:()=>c,m3:()=>v,oW:()=>L,t2:()=>Z,tn:()=>p,ze:()=>w});var r=n(51850),i=n(34304);function s(e){const t=e[0],n=e[1],r=e[2];return Math.sqrt(t*t+n*n+r*r)}function o(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}function a(e,t,n,r){return e[0]=t,e[1]=n,e[2]=r,e}function l(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e}function u(e,t,n){return e[0]=t[0]-n[0],e[1]=t[1]-n[1],e[2]=t[2]-n[2],e}function c(e,t,n){return e[0]=t[0]*n[0],e[1]=t[1]*n[1],e[2]=t[2]*n[2],e}function d(e,t,n){return e[0]=t[0]/n[0],e[1]=t[1]/n[1],e[2]=t[2]/n[2],e}function p(e,t){return e[0]=Math.abs(t[0]),e[1]=Math.abs(t[1]),e[2]=Math.abs(t[2]),e}function f(e,t){return e[0]=Math.sign(t[0]),e[1]=Math.sign(t[1]),e[2]=Math.sign(t[2]),e}function h(e,t,n){return e[0]=Math.min(t[0],n[0]),e[1]=Math.min(t[1],n[1]),e[2]=Math.min(t[2],n[2]),e}function y(e,t,n){return e[0]=Math.max(t[0],n[0]),e[1]=Math.max(t[1],n[1]),e[2]=Math.max(t[2],n[2]),e}function m(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e}function g(e,t,n,r){return e[0]=t[0]+n[0]*r,e[1]=t[1]+n[1]*r,e[2]=t[2]+n[2]*r,e}function b(e,t){const n=t[0]-e[0],r=t[1]-e[1],i=t[2]-e[2];return Math.sqrt(n*n+r*r+i*i)}function M(e,t){const n=t[0]-e[0],r=t[1]-e[1],i=t[2]-e[2];return n*n+r*r+i*i}function v(e){const t=e[0],n=e[1],r=e[2];return t*t+n*n+r*r}function w(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e}function I(e,t){return e[0]=1/t[0],e[1]=1/t[1],e[2]=1/t[2],e}function C(e,t){const n=t[0],r=t[1],i=t[2];let s=n*n+r*r+i*i;return s>0&&(s=1/Math.sqrt(s),e[0]=t[0]*s,e[1]=t[1]*s,e[2]=t[2]*s),e}function x(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function F(e,t,n){const r=t[0],i=t[1],s=t[2],o=n[0],a=n[1],l=n[2];return e[0]=i*l-s*a,e[1]=s*o-r*l,e[2]=r*a-i*o,e}function S(e,t,n,r){const i=t[0],s=t[1],o=t[2];return e[0]=i+r*(n[0]-i),e[1]=s+r*(n[1]-s),e[2]=o+r*(n[2]-o),e}function A(e,t,n){const r=t[0],i=t[1],s=t[2];return e[0]=n[0]*r+n[4]*i+n[8]*s+n[12],e[1]=n[1]*r+n[5]*i+n[9]*s+n[13],e[2]=n[2]*r+n[6]*i+n[10]*s+n[14],e}function _(e,t,n){const r=t[0],i=t[1],s=t[2];return e[0]=r*n[0]+i*n[3]+s*n[6],e[1]=r*n[1]+i*n[4]+s*n[7],e[2]=r*n[2]+i*n[5]+s*n[8],e}function T(e,t,n){return E(e,t,n[0],n[1],n[2],n[3])}function E(e,t,n,r,i,s){const o=t[0],a=t[1],l=t[2],u=r*l-i*a,c=i*o-n*l,d=n*a-r*o,p=r*d-i*c,f=i*u-n*d,h=n*c-r*u,y=2*s;return e[0]=o+u*y+2*p,e[1]=a+c*y+2*f,e[2]=l+d*y+2*h,e}function k(e,t){C(j,e),C(P,t);const n=x(j,P);return n>1?0:n<-1?Math.PI:Math.acos(n)}const j=(0,r.vt)(),P=(0,r.vt)();function Z(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]}function z(e,t){if(e===t)return!0;const n=e[0],r=e[1],s=e[2],o=t[0],a=t[1],l=t[2],u=(0,i.FD)();return Math.abs(n-o)<=u*Math.max(1,Math.abs(n),Math.abs(o))&&Math.abs(r-a)<=u*Math.max(1,Math.abs(r),Math.abs(a))&&Math.abs(s-l)<=u*Math.max(1,Math.abs(s),Math.abs(l))}function L(e,t,n){const r=n[0]-t[0],i=n[1]-t[1],s=n[2]-t[2];let o=r*r+i*i+s*s;return o>0?(o=1/Math.sqrt(o),e[0]=r*o,e[1]=i*o,e[2]=s*o,e):(e[0]=0,e[1]=0,e[2]=0,e)}const O=u,R=c,N=d,V=b,G=M,q=s,B=v;Object.freeze(Object.defineProperty({__proto__:null,abs:p,add:l,angle:k,bezier:function(e,t,n,r,i,s){const o=1-s,a=o*o,l=s*s,u=a*o,c=3*s*a,d=3*l*o,p=l*s;return e[0]=t[0]*u+n[0]*c+r[0]*d+i[0]*p,e[1]=t[1]*u+n[1]*c+r[1]*d+i[1]*p,e[2]=t[2]*u+n[2]*c+r[2]*d+i[2]*p,e},ceil:function(e,t){return e[0]=Math.ceil(t[0]),e[1]=Math.ceil(t[1]),e[2]=Math.ceil(t[2]),e},clamp:function(e,t=0,n=1){return e[0]=Math.min(Math.max(e[0],t),n),e[1]=Math.min(Math.max(e[1],t),n),e[2]=Math.min(Math.max(e[2],t),n),e},copy:o,cross:F,crossAndNormalize:function(e,t,n){const r=t[0],i=t[1],s=t[2],o=n[0],a=n[1],l=n[2],u=i*l-s*a,c=s*o-r*l,d=r*a-i*o,p=Math.sqrt(u*u+c*c+d*d);return e[0]=u/p,e[1]=c/p,e[2]=d/p,e},direction:L,dist:V,distance:b,div:N,divide:d,dot:x,equals:z,exactEquals:Z,floor:function(e,t){return e[0]=Math.floor(t[0]),e[1]=Math.floor(t[1]),e[2]=Math.floor(t[2]),e},hermite:function(e,t,n,r,i,s){const o=s*s,a=o*(2*s-3)+1,l=o*(s-2)+s,u=o*(s-1),c=o*(3-2*s);return e[0]=t[0]*a+n[0]*l+r[0]*u+i[0]*c,e[1]=t[1]*a+n[1]*l+r[1]*u+i[1]*c,e[2]=t[2]*a+n[2]*l+r[2]*u+i[2]*c,e},inverse:I,len:q,length:s,lerp:S,max:y,min:h,mul:R,multiply:c,negate:w,normalize:C,random:function(e,t=1){const n=i.Ov,r=2*n()*Math.PI,s=2*n()-1,o=Math.sqrt(1-s*s)*t;return e[0]=Math.cos(r)*o,e[1]=Math.sin(r)*o,e[2]=s*t,e},rotateX:function(e,t,n,r){const i=[],s=[];return i[0]=t[0]-n[0],i[1]=t[1]-n[1],i[2]=t[2]-n[2],s[0]=i[0],s[1]=i[1]*Math.cos(r)-i[2]*Math.sin(r),s[2]=i[1]*Math.sin(r)+i[2]*Math.cos(r),e[0]=s[0]+n[0],e[1]=s[1]+n[1],e[2]=s[2]+n[2],e},rotateY:function(e,t,n,r){const i=[],s=[];return i[0]=t[0]-n[0],i[1]=t[1]-n[1],i[2]=t[2]-n[2],s[0]=i[2]*Math.sin(r)+i[0]*Math.cos(r),s[1]=i[1],s[2]=i[2]*Math.cos(r)-i[0]*Math.sin(r),e[0]=s[0]+n[0],e[1]=s[1]+n[1],e[2]=s[2]+n[2],e},rotateZ:function(e,t,n,r){const i=[],s=[];return i[0]=t[0]-n[0],i[1]=t[1]-n[1],i[2]=t[2]-n[2],s[0]=i[0]*Math.cos(r)-i[1]*Math.sin(r),s[1]=i[0]*Math.sin(r)+i[1]*Math.cos(r),s[2]=i[2],e[0]=s[0]+n[0],e[1]=s[1]+n[1],e[2]=s[2]+n[2],e},round:function(e,t){return e[0]=Math.round(t[0]),e[1]=Math.round(t[1]),e[2]=Math.round(t[2]),e},scale:m,scaleAndAdd:g,set:a,sign:f,sqrDist:G,sqrLen:B,squaredDistance:M,squaredLength:v,str:function(e){return"vec3("+e[0]+", "+e[1]+", "+e[2]+")"},sub:O,subtract:u,transformMat3:_,transformMat4:A,transformMat4Z:function(e,t){return t[2]*e[0]+t[6]*e[1]+t[10]*e[2]+t[14]},transformQuat:T,transformQuatValues:E},Symbol.toStringTag,{value:"Module"})),n.d(t,["Il",0,q,"jb",0,O,"lo",0,G,"uE",0,B,"xg",0,V])},78955(e,t,n){n.d(t,{Bw:()=>m,C:()=>i,Cc:()=>v,LI:()=>p,Om:()=>M,S8:()=>b,T9:()=>d,WQ:()=>o,Z0:()=>w,aI:()=>C,hG:()=>y,hZ:()=>s,hs:()=>f,jk:()=>c,m3:()=>g,t2:()=>I});var r=n(34304);function i(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e}function s(e,t,n,r,i){return e[0]=t,e[1]=n,e[2]=r,e[3]=i,e}function o(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e[3]=t[3]+n[3],e}function a(e,t,n){return e[0]=t[0]-n[0],e[1]=t[1]-n[1],e[2]=t[2]-n[2],e[3]=t[3]-n[3],e}function l(e,t,n){return e[0]=t[0]*n[0],e[1]=t[1]*n[1],e[2]=t[2]*n[2],e[3]=t[3]*n[3],e}function u(e,t,n){return e[0]=t[0]/n[0],e[1]=t[1]/n[1],e[2]=t[2]/n[2],e[3]=t[3]/n[3],e}function c(e,t,n){return e[0]=Math.min(t[0],n[0]),e[1]=Math.min(t[1],n[1]),e[2]=Math.min(t[2],n[2]),e[3]=Math.min(t[3],n[3]),e}function d(e,t,n){return e[0]=Math.max(t[0],n[0]),e[1]=Math.max(t[1],n[1]),e[2]=Math.max(t[2],n[2]),e[3]=Math.max(t[3],n[3]),e}function p(e,t){return e[0]=Math.round(t[0]),e[1]=Math.round(t[1]),e[2]=Math.round(t[2]),e[3]=Math.round(t[3]),e}function f(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e}function h(e,t){const n=t[0]-e[0],r=t[1]-e[1],i=t[2]-e[2],s=t[3]-e[3];return Math.sqrt(n*n+r*r+i*i+s*s)}function y(e,t){const n=t[0]-e[0],r=t[1]-e[1],i=t[2]-e[2],s=t[3]-e[3];return n*n+r*r+i*i+s*s}function m(e){const t=e[0],n=e[1],r=e[2],i=e[3];return Math.sqrt(t*t+n*n+r*r+i*i)}function g(e){const t=e[0],n=e[1],r=e[2],i=e[3];return t*t+n*n+r*r+i*i}function b(e,t){const n=t[0],r=t[1],i=t[2],s=t[3];let o=n*n+r*r+i*i+s*s;return o>0&&(o=1/Math.sqrt(o),e[0]=n*o,e[1]=r*o,e[2]=i*o,e[3]=s*o),e}function M(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]+e[3]*t[3]}function v(e,t,n,r){const i=t[0],s=t[1],o=t[2],a=t[3];return e[0]=i+r*(n[0]-i),e[1]=s+r*(n[1]-s),e[2]=o+r*(n[2]-o),e[3]=a+r*(n[3]-a),e}function w(e,t,n){const r=t[0],i=t[1],s=t[2],o=t[3];return e[0]=n[0]*r+n[4]*i+n[8]*s+n[12]*o,e[1]=n[1]*r+n[5]*i+n[9]*s+n[13]*o,e[2]=n[2]*r+n[6]*i+n[10]*s+n[14]*o,e[3]=n[3]*r+n[7]*i+n[11]*s+n[15]*o,e}function I(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]}function C(e,t){const n=e[0],i=e[1],s=e[2],o=e[3],a=t[0],l=t[1],u=t[2],c=t[3],d=(0,r.FD)();return Math.abs(n-a)<=d*Math.max(1,Math.abs(n),Math.abs(a))&&Math.abs(i-l)<=d*Math.max(1,Math.abs(i),Math.abs(l))&&Math.abs(s-u)<=d*Math.max(1,Math.abs(s),Math.abs(u))&&Math.abs(o-c)<=d*Math.max(1,Math.abs(o),Math.abs(c))}const x=a,F=l,S=u,A=h,_=y,T=m,E=g;Object.freeze(Object.defineProperty({__proto__:null,add:o,ceil:function(e,t){return e[0]=Math.ceil(t[0]),e[1]=Math.ceil(t[1]),e[2]=Math.ceil(t[2]),e[3]=Math.ceil(t[3]),e},copy:i,copyVec3:function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e},dist:A,distance:h,div:S,divide:u,dot:M,equals:C,exactEquals:I,floor:function(e,t){return e[0]=Math.floor(t[0]),e[1]=Math.floor(t[1]),e[2]=Math.floor(t[2]),e[3]=Math.floor(t[3]),e},inverse:function(e,t){return e[0]=1/t[0],e[1]=1/t[1],e[2]=1/t[2],e[3]=1/t[3],e},len:T,length:m,lerp:v,max:d,min:c,mul:F,multiply:l,negate:function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=-t[3],e},normalize:b,random:function(e,t=1){const n=r.Ov;let i,s,o,a,l,u;do{i=2*n()-1,s=2*n()-1,l=i*i+s*s}while(l>=1);do{o=2*n()-1,a=2*n()-1,u=o*o+a*a}while(u>=1);const c=Math.sqrt((1-l)/u);return e[0]=t*i,e[1]=t*s,e[2]=t*o*c,e[3]=t*a*c,e},round:p,scale:f,scaleAndAdd:function(e,t,n,r){return e[0]=t[0]+n[0]*r,e[1]=t[1]+n[1]*r,e[2]=t[2]+n[2]*r,e[3]=t[3]+n[3]*r,e},set:s,sqrDist:_,sqrLen:E,squaredDistance:y,squaredLength:g,str:function(e){return"vec4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+")"},sub:x,subtract:a,transformMat4:w,transformQuat:function(e,t,n){const r=t[0],i=t[1],s=t[2],o=n[0],a=n[1],l=n[2],u=n[3],c=u*r+a*s-l*i,d=u*i+l*r-o*s,p=u*s+o*i-a*r,f=-o*r-a*i-l*s;return e[0]=c*u+f*-o+d*-l-p*-a,e[1]=d*u+f*-a+p*-o-c*-l,e[2]=p*u+f*-l+c*-a-d*-o,e[3]=t[3],e}},Symbol.toStringTag,{value:"Module"}))},81583(e,t,n){n.d(t,{L:()=>a,g:()=>o});var r=n(60999),i=n(7762),s=n(92474);async function o(e,t){return await e.load(),a(e,t)}async function a(e,t){const n=[],o=(...e)=>{for(const t of e)null!=t&&(Array.isArray(t)?o(...t):i.A.isCollection(t)?t.forEach(e=>o(e)):(0,s.Zm)(t)&&n.push(t))};t(o);let a=null;if(await(0,r.Tj)(n,async e=>{const t=await(0,r.Ke)(function(e){return"loadAll"in e&&"function"==typeof e.loadAll}(e)?e.loadAll():e.load());!1!==t.ok||a||(a=t)}),a)throw a.error;return e}},16494(e,t,n){var r=n(17632);const i=["dd","dl","dt","h1","h2","h3","h4","h5","h6","sub","sup","animate","animatetransform","circle","clippath","defs","ellipse","g","image","line","lineargradient","marker","mask","path","pattern","polygon","polyline","radialgradient","rect","stop","svg","switch","symbol","text","textpath","tspan","use"].reduce((e,t)=>(e[t]=[],e),{}),s=["align","alink","alt","bgcolor","border","cellpadding","cellspacing","class","color","cols","colspan","coords","d","dir","face","height","hspace","ismap","lang","marginheight","marginwidth","multiple","nohref","noresize","noshade","nowrap","ref","rel","rev","rows","rowspan","scrolling","shape","span","summary","tabindex","title","usemap","valign","value","vlink","vspace","width"],o=new r.I({whiteList:i,onTagAttr:(e,t,n)=>{const r=`${t}="${n}"`;if(s.includes(t))return r},stripIgnoreTag:!0,stripIgnoreTagBody:["script","style"]},!0),a=new r.I({whiteList:{br:[]},stripIgnoreTag:!0,escapeHtml:e=>e},!1);n.d(t,["Nd",0,a,"W5",0,o])},13069(e,t,n){n.d(t,{AG:()=>a,lk:()=>i,vD:()=>o,yS:()=>s});const r="randomUUID"in crypto;function i(){if(r)return crypto.randomUUID();const e=crypto.getRandomValues(new Uint16Array(8));e[3]=4095&e[3]|16384,e[4]=16383&e[4]|32768;const t=t=>e[t].toString(16).padStart(4,"0");return t(0)+t(1)+"-"+t(2)+"-"+t(3)+"-"+t(4)+"-"+t(5)+t(6)+t(7)}function s(){return`{${i().toUpperCase()}}`}function o(){return`{${i()}}`}function a(e){const t=e.toUpperCase();return e.startsWith("{")?t:`{${t}}`}},159(e,t,n){n.d(t,{A:()=>u});var r,i=n(5482),s=n(69540),o=n(25482),a=n(91429),l=n(99157);let u=r=class extends((0,s.OU)(o.o)){constructor(e){super(e),this.steps=[]}getInverse(){const e=new r;for(let t=this.steps.length-1;t>=0;t--){const n=this.steps[t];e.steps.push(n.getInverse())}return e}};(0,i.Cg)([(0,a.MZ)({type:[l.A],nonNullable:!0,json:{name:"geoTransforms"}})],u.prototype,"steps",void 0),u=r=(0,i.Cg)([(0,a.$K)("esri.geometry.operators.support.GeographicTransformation")],u)},99157(e,t,n){n.d(t,{A:()=>l});var r,i=n(5482),s=n(69540),o=n(25482),a=n(91429);let l=r=class extends((0,s.OU)(o.o)){constructor(e){super(e),this.isInverse=!1,this.wkt=null,this.wkid=null}getInverse(){return new r({isInverse:!this.isInverse,wkid:this.wkid,wkt:this.wkt})}};(0,i.Cg)([(0,a.MZ)({json:{name:"transformForward",read:e=>!e,write:(e,t,n)=>{t[n]=!e}}})],l.prototype,"isInverse",void 0),(0,i.Cg)([(0,a.MZ)({json:{write:!0}})],l.prototype,"wkt",void 0),(0,i.Cg)([(0,a.MZ)({json:{write:!0}})],l.prototype,"wkid",void 0),l=r=(0,i.Cg)([(0,a.$K)("esri.geometry.operators.support.GeographicTransformationStep")],l)},9762(e,t,n){n.r(t),n.d(t,{projectBuffer:()=>i});var r=n(49208);function i(e,t,n,i,s,o,a=Math.floor(e.length/3)){const l=(0,r.jd)(t,s);if(null==l)return!1;if(l===r.pO){if(e===i&&n===o)return!0;const t=n+3*a;for(let r=n,s=o;r<t;r++,s++)i[s]=e[r]??0;return!0}const u=n+3*a;for(let t=n,r=o;t<u;t+=3,r+=3)l(e,t,i,r);return!0}},49208(e,t,n){n.d(t,{Tp:()=>d,jd:()=>c,pO:()=>f});var r=n(34727),i=n(86211),s=n(73941),o=n(79258),a=n(34403),l=n(21325);const u={2:{5:f,7:null,9:null,10:f,1:w,6:null,8:null,0:null,3:y,11:m,2:f,4:S},5:{5:f,7:null,9:null,10:f,1:w,6:null,8:null,0:null,3:y,11:m,2:f,4:S},7:{5:null,7:f,9:null,10:f,1:null,6:v,8:null,0:null,3:null,11:null,2:null,4:null},9:{5:null,7:null,9:f,10:f,1:null,6:null,8:M,0:null,3:null,11:null,2:null,4:null},3:{5:h,7:null,9:null,10:h,1:function(e,t,n,r){const i=e[t]/j,s=k-2*Math.atan(Math.exp(-e[t+1]/j)),o=j+(e[t+2]??0),a=Math.cos(s)*o;n[r]=Math.cos(i)*a,n[r+1]=Math.sin(i)*a,n[r+2]=Math.sin(s)*o},6:null,8:null,0:null,3:f,11:function(e,t,n,r){h(e,t,n,r),m(n,r,n,r)},2:h,4:function(e,t,n,r){h(e,t,n,r),S(n,r,n,r)}},4:{5:A,7:null,9:null,10:A,1:function(e,t,n,r){A(e,t,n,r),w(n,r,n,r)},6:null,8:null,0:null,3:function(e,t,n,r){A(e,t,n,r),y(n,r,n,r)},11:function(e,t,n,r){A(e,t,n,r),m(n,r,n,r)},2:A,4:f},1:{5:F,7:null,9:null,10:F,1:f,6:null,8:null,0:null,3:function(e,t,n,r){F(e,t,n,r),y(n,r,n,r)},11:function(e,t,n,r){F(e,t,n,r),m(n,r,n,r)},2:F,4:function(e,t,n,r){F(e,t,n,r),S(n,r,n,r)}},6:{5:null,7:x,9:null,10:x,1:null,6:f,8:null,0:null,3:null,11:null,2:null,4:null},8:{5:null,7:null,9:C,10:C,1:null,6:null,8:f,0:null,3:null,11:null,2:null,4:null},0:{5:null,7:null,9:null,10:null,1:null,6:null,8:null,0:f,3:null,11:null,2:null,4:null},10:{5:f,7:f,9:f,10:f,1:w,6:v,8:M,0:null,3:y,11:m,2:f,4:S},11:{5:g,7:null,9:null,10:g,1:function(e,t,n,r){g(e,t,n,r),w(n,r,n,r)},6:null,8:null,0:null,3:function(e,t,n,r){g(e,t,n,r),y(n,r,n,r)},11:f,2:g,4:function(e,t,n,r){g(e,t,n,r),S(n,r,n,r)}}};function c(e,t){return d(e,t)?.projector}function d(e,t){if(null==e||null==t)return null;if(_.source.spatialReference===e&&_.dest.spatialReference===t)return _;const n=p(e,_.source),r=p(t,_.dest);return 0===n&&0===r?(0,l.aI)(e,t)?_.projector=f:_.projector=null:_.projector=u[n][r],_}function p(e,t){return e?t.spatialReference===e?t.spatialReferenceId:(t.spatialReference=e,"metersPerUnit"in t&&(t.metersPerUnit=(0,i.GA)(e,1)),(0,s.jA)(e)?t.spatialReferenceId=1:(0,l.oT)(e)?t.spatialReferenceId=2:(0,l.K8)(e)?t.spatialReferenceId=3:(0,l.r1)(e)?t.spatialReferenceId=11:e.wkt===s.Ro.wkt?t.spatialReferenceId=4:4490===e.wkid?t.spatialReferenceId=5:e.wkt===s.FY.wkt?t.spatialReferenceId=6:e.wkt===s.LJ.wkt?t.spatialReferenceId=8:(0,s.q8)(e)?t.spatialReferenceId=7:(0,s.KQ)(e)?t.spatialReferenceId=9:t.spatialReferenceId=0):0}function f(e,t,n,r){e!==n&&(n[r++]=e[t++],n[r++]=e[t++],n[r]=e[t]??0)}function h(e,t,n,r){n[r]=E*(e[t]/j),n[r+1]=E*(k-2*Math.atan(Math.exp(-e[t+1]/j))),n[r+2]=e[t+2]??0}function y(e,t,n,i){!function(e,t,n,i,s){const o=.4999999*Math.PI,a=(0,r.qE)(T*e[t+1],-o,o),l=Math.sin(a);n[i++]=T*e[t]*s.radius,n[i++]=s.halfSemiMajorAxis*Math.log((1+l)/(1-l)),n[i]=e[t+2]??0}(e,t,n,i,o.$O)}function m(e,t,n,r){n[r]=e[t]*P,n[r+1]=e[t+1]*P,n[r+2]=e[t+2]??0}function g(e,t,n,r){n[r]=e[t]*Z,n[r+1]=e[t+1]*Z,n[r+2]=e[t+2]??0}function b(e,t,n,r,i){const s=i+(e[t+2]??0),o=T*e[t],a=T*e[t+1],l=Math.cos(a)*s;n[r]=Math.cos(o)*l,n[r+1]=Math.sin(o)*l,n[r+2]=Math.sin(a)*s}function M(e,t,n,r){b(e,t,n,r,o.Sw.radius)}function v(e,t,n,r){b(e,t,n,r,o.sH.radius)}function w(e,t,n,r){b(e,t,n,r,o.$O.radius)}function I(e,t,n,i,s){const o=e[t],a=e[t+1],l=e[t+2]??0,u=Math.sqrt(o*o+a*a+l*l),c=(0,r.YN)(l/(0===u?1:u)),d=Math.atan2(a,o);n[i++]=E*d,n[i++]=E*c,n[i]=u-s}function C(e,t,n,r){I(e,t,n,r,o.Sw.radius)}function x(e,t,n,r){I(e,t,n,r,o.sH.radius)}function F(e,t,n,r){I(e,t,n,r,o.$O.radius)}function S(e,t,n,r){!function(e,t,n,r,i){const s=T*e[t],o=T*e[t+1],a=e[t+2]??0,l=Math.sin(o),u=Math.cos(o),c=i.radius/Math.sqrt(1-i.eccentricitySquared*l*l);n[r++]=(c+a)*u*Math.cos(s),n[r++]=(c+a)*u*Math.sin(s),n[r++]=(c*(1-i.eccentricitySquared)+a)*l}(e,t,n,r,o.$O)}function A(e,t,n,r){const i=a.TP,s=e[t],l=e[t+1],u=e[t+2]??0;let c,d,p,f,h,y,m,g,b,M,v,w,I,C,x,F,S,A,_,T,k;c=Math.abs(u),d=s*s+l*l,p=Math.sqrt(d),f=d+u*u,h=Math.sqrt(f),T=Math.atan2(l,s),y=u*u/f,m=d/f,C=i.a2/h,x=i.a3-i.a4/h,m>.3?(g=c/h*(1+m*(i.a1+C+y*x)/h),_=Math.asin(g),M=g*g,b=Math.sqrt(1-M)):(b=p/h*(1-y*(i.a5-C-m*x)/h),_=Math.acos(b),M=1-b*b,g=Math.sqrt(M)),v=1-o.$O.eccentricitySquared*M,w=o.$O.radius/Math.sqrt(v),I=i.a6*w,C=p-w*b,x=c-I*g,S=b*C+g*x,F=b*x-g*C,A=F/(I/v+S),_+=A,k=S+F*A/2,u<0&&(_=-_),n[r++]=E*T,n[r++]=E*_,n[r]=k}const _={source:{spatialReference:null,spatialReferenceId:0,metersPerUnit:1},dest:{spatialReference:null,spatialReferenceId:0,metersPerUnit:1},projector:f},T=(0,r.kU)(1),E=(0,r.KJ)(1),k=.5*Math.PI,j=o.$O.radius,P=j*Math.PI/180,Z=180/(j*Math.PI);n.d(t,["w5",0,u])},91218(e,t,n){n.r(t),n.d(t,{canProjectWithoutEngine:()=>$,initializeProjection:()=>H,isEqualBaseGCS:()=>K,isLoaded:()=>j,isLoadedOrLoad:()=>P,isLoadedOrLoadFor:()=>Z,load:()=>L,project:()=>O,projectAsync:()=>U,projectExtent:()=>ie,projectMany:()=>R,projectMultipoint:()=>Q,projectOrLoad:()=>V,projectOrLoadMany:()=>G,projectPoint:()=>J,projectPolygon:()=>ne,projectPolyline:()=>ee,projectWithoutEngine:()=>W,requiresLoad:()=>z,test:()=>D,tryProject:()=>N,unload:()=>B});var r=n(49186),i=n(17676),s=n(62788),o=n(95488),a=n(51850),l=n(21276),u=n(73941),c=n(5443),d=n(91075),p=n(48526),f=n(86738),h=n(39829),y=n(82799),m=n(16930),g=n(98764),b=n(159),M=n(9762),v=n(49208);function w(e,t,n,r,i,s){return I[0]=e,I[1]=t,I[2]=n,(0,M.projectBuffer)(I,r,0,i,s,0)}const I=(0,a.vt)();var C=n(60408),x=n(21325),F=n(52006);let S=null,A=null,_=null,T=null,E={};const k=new o.I;function j(){return!!(A?.isLoaded()&&_?.isLoaded()&&T?.isLoaded())}function P(){return!!j()||((0,s.gc)(k),L(),!1)}function Z(e,t){return!e||!t||$(e,t)||P()}function z(e,t){return!$(e,t)&&!j()}async function L(e){null==S&&(S=Promise.all([n.e(3276).then(n.bind(n,83276)).then(e=>(A=e,A.load())),n.e(8377).then(n.bind(n,8377)).then(e=>(_=e,_.load())),n.e(2158).then(n.bind(n,12158)).then(e=>(T=e,T.load()))])),await S,(0,i.Te)(e),k.notify()}function O(e,t,n){return Array.isArray(e)?0===e.length?[]:((0,l.H)(e),R(e,e[0].spatialReference,t,n)):((0,l.f)(e),R([e],e.spatialReference,t,n)[0])}function R(e,t,n,r){if(null==t||null==n)return e;if($(t,n,r))return e.map(e=>W(e,t,n));if(null==r?.geographicTransformation&&(0,u.jA)(t))return R(e.map(e=>W(e,t,m.A.WGS84)),m.A.WGS84,n,{zConversionDisabled:r?.zConversionDisabled});if(null==r?.geographicTransformation&&(0,u.jA)(n))return R(e,t,m.A.WGS84).map(e=>W(e,m.A.WGS84,n));if(!j())throw new q;if(!r?.geographicTransformation)if(r?.extendedParams)r={...r,geographicTransformation:T.getTransformation(t,n,r.areaOfInterestExtent)||new b.A};else if(!r?.areaOfInterestExtent){const e=function(e,t){return[e.wkid?.toString()??"-1",e.wkt?.toString()??"",e.wkt2?.toString()??"",t.wkid?.toString()??"-1",t.wkt?.toString()??"",t.wkt2?.toString()??""].join()}(t,n);let i=E[e];i||(i=T.getTransformation(t,n)||new b.A,E[e]=i),r={geographicTransformation:i,zConversionDisabled:r?.zConversionDisabled}}return e[0].spatialReference||(e[0].spatialReference=t),e[0]instanceof d.A?A.executeMany(e,n,r):_.executeMany(e,n,r)}function N(e,t,n){try{return O(e,t,n)}catch(e){return null}}function V(e,t){const n=G([e],t);return null!=n.pending?{pending:n.pending,geometry:null}:null!=n.geometries?{pending:null,geometry:n.geometries[0]}:{pending:null,geometry:null}}function G(e,t,n){if(!j())for(const n of e)if(null!=n&&!(0,x.aI)(n.spatialReference,t)&&(0,x.fn)(n.spatialReference)&&(0,x.fn)(t)&&!$(n.spatialReference,t))return(0,s.gc)(k),{pending:L(),geometries:null};return{pending:null,geometries:e.map(e=>null==e?null:(0,x.aI)(e.spatialReference,t)?e:(0,x.fn)(e.spatialReference)&&(0,x.fn)(t)?O(e,t,n):null)}}class q extends r.A{constructor(){super("projection:not-loaded","projection engine not fully loaded yet, please call load()")}}function B(){S=null,A=null,_=null,T=null,E={}}const D={get loadPromise(){return S}};async function U(e,t,n){if((0,i.Te)(n),!e)return e;const r=G(Array.isArray(e)?e:[e],t,n);if(r.pending)return await r.pending,(0,i.Te)(n),U(e,t,n);const s=r.geometries??[];return Array.isArray(e)?s:s[0]}function $(e,t,n){return!(n?.areaOfInterestExtent||n?.extendedParams||n?.geographicTransformation)&&(!!(0,x.aI)(e,t)||(0,x.fn)(e)&&(0,x.fn)(t)&&!!(0,v.jd)(e,t))}function K(e,t){if((0,x.aI)(e,t))return!0;if(!(0,x.fn)(e)||!(0,x.fn)(t))return!1;const n=(0,x.oT)(e)||(0,x.K8)(e)||(0,x.x1)(e),r=(0,x.oT)(t)||(0,x.K8)(t)||(0,x.x1)(t);return n&&r}async function H(e,t,n,r){if(j())return(0,i.NO)(r);if(Array.isArray(e)){for(const{source:t,dest:n,options:i}of e)if(t&&n&&!$(t,n,i))return L(r)}else if(e&&t&&!$(e,t,n))return L(r);return(0,i.NO)(r)}function W(e,t,n){return e?(0,C.fT)(e)?Y(e,t,new f.A,n,0):(0,C.ZC)(e)?se(e,t,new c.A,n,0):(0,C.Bi)(e)?re(e,t,new h.A,n,0):(0,C.Rg)(e)?te(e,t,new y.A,n,0):(0,C.U9)(e)?X(e,t,new p.A,n,0):null:null}function J(e,t,n=t.spatialReference,r=0){return null!=n&&null!=e.spatialReference&&null!=Y(e,e.spatialReference,t,n,r)}function Y(e,t,n,r,i){ue[0]=e.x,ue[1]=e.y;const s=e.z;return ue[2]=void 0!==s?s:i,(0,M.projectBuffer)(ue,t,0,ue,r,0)?(n.x=ue[0],n.y=ue[1],n.spatialReference=r,void 0!==s||(0,u.xP)(r)?(n.z=ue[2],n.hasZ=!0):(n.z=void 0,n.hasZ=!1),void 0===e.m?(n.m=void 0,n.hasM=!1):(n.m=e.m,n.hasM=!0),n):null}function Q(e,t,n=t.spatialReference,r=0){return null!=e.spatialReference&&null!=n&&null!=X(e,e.spatialReference,t,n,r)}function X(e,t,n,r,i){const{points:s,hasZ:o,hasM:a}=e,l=[],u=s.length,c=[];for(const e of s)c.push(e[0],e[1],o?e[2]:i);if(!(0,M.projectBuffer)(c,t,0,c,r,0,u))return null;const d=le(o,r);for(let e=0;e<u;++e){const t=3*e,n=c[t],r=c[t+1];d&&a?l.push([n,r,c[t+2],s[e][3]]):d?l.push([n,r,c[t+2]]):a?l.push([n,r,s[e][2]]):l.push([n,r])}return n.points=l,n.spatialReference=r,n.hasZ=o,n.hasM=a,n}function ee(e,t,n=t.spatialReference,r=0){return null!=e.spatialReference&&null!=n&&null!=te(e,e.spatialReference,t,n,r)}function te(e,t,n,r,i){const{curvePaths:s,paths:o,hasZ:a,hasM:l}=e;if(!(s?ae(s,a??!1,l??!1,t,n.curvePaths=[],r,i):oe(o,a??!1,l??!1,t,n.paths,r,i)))return null;const u=le(a,r);return n.spatialReference=r,n.hasZ=u,n.hasM=l,n}function ne(e,t,n=t.spatialReference,r=0){return null!=e.spatialReference&&null!=n&&null!=re(e,e.spatialReference,t,n,r)}function re(e,t,n,r,i){const{curveRings:s,rings:o,hasZ:a,hasM:l}=e;return(s?ae(s,a??!1,l??!1,t,n.curveRings=[],r,i):oe(o,a??!1,l??!1,t,n.rings,r,i))?(n.spatialReference=r,n.hasZ=le(a,r),n.hasM=l,n):null}function ie(e,t,n=t.spatialReference,r=0){return null!=e.spatialReference&&null!=n&&null!=se(e,e.spatialReference,t,n,r)}function se(e,t,n,r,i){const{xmin:s,ymin:o,xmax:a,ymax:l,hasZ:u,hasM:c}=e;if(!w(s,o,u?e.zmin:i,t,ue,r))return null;const d=le(u,r);return n.xmin=ue[0],n.ymin=ue[1],d&&(n.zmin=ue[2]),w(a,l,u?e.zmax:i,t,ue,r)?(n.xmax=ue[0],n.ymax=ue[1],d&&(n.zmax=ue[2]),c&&(n.mmin=e.mmin,n.mmax=e.mmax),n.spatialReference=r,n):null}function oe(e,t,n,r,i,s,o=0){const a=new Array;for(const n of e)for(const e of n)a.push(e[0],e[1],t?e[2]:o);if(!(0,M.projectBuffer)(a,r,0,a,s,0))return!1;let l=0;i.length=0;const u=t?3:2,c=le(t,s);for(const t of e){const e=new Array;for(const r of t){const t=a.slice(l,l+=3);c||t.pop(),n&&t.push(r[u]),e.push(t)}i.push(e)}return!0}function ae(e,t,n,r,i,s,o=0){const a=new Array;for(const n of e)for(const e of n){if((0,F.FG)(e))return!1;if((0,F.aO)(e)){const[n,r]=e.c;a.push(n[0],n[1],t?n[2]:o,r[0],r[1],o);continue}if((0,F.n1)(e)){const[n,r,i]=e.b;a.push(n[0],n[1],t?n[2]:o,r[0],r[1],o,i[0],i[1],o);continue}const n=e;a.push(n[0],n[1],t?n[2]:o)}if(!(0,M.projectBuffer)(a,r,0,a,s,0))return!1;let l=0;i.length=0;const u=t?3:2,c=le(t,s);for(const t of e){const e=new Array;for(const r of t){const t=a.slice(l,l+=3);if(c||t.pop(),n&&t.push((0,F.yP)(r)[u]),(0,F.FG)(r))return!1;if((0,F.aO)(r)){const n=a[l++],r=a[l++];++l,e.push({c:[t,[n,r]]});continue}if((0,F.n1)(r)){const n=a[l++],r=a[l++];++l;const i=a[l++],s=a[l++];++l,e.push({b:[t,[n,r],[i,s]]});continue}e.push(t)}i.push(e)}return!0}function le(e,t){return e||(0,u.xP)(t)||(0,x.aI)(t,g.Y0)}const ue=(0,a.vt)()},98764(e,t,n){n.d(t,{lO:()=>c});var r=n(73941),i=n(16930),s=n(21325);const o=new i.A(r.fv),a=new i.A(r.FY),l=new i.A(r.LJ),u=new i.A(r.Ro);function c(e){const t=d.get(e);if(t)return t;let n=o;if(e)if(e===a)n=a;else if(e===l)n=l;else{const t=e.wkid,r=e.latestWkid;if(null!=t||null!=r)(0,s.tl)(t)||(0,s.tl)(r)?n=a:((0,s.ZL)(t)||(0,s.ZL)(r))&&(n=l);else{const t=e.wkt2??e.wkt;if(t){const e=t.toUpperCase();e===p?n=a:e===f&&(n=l)}}}return d.set(e,n),n}const d=new Map,p=a.wkt.toUpperCase(),f=l.wkt.toUpperCase();n.d(t,["GD",0,o,"Y0",0,u])},4197(e,t,n){n.d(t,{Vj:()=>c,cj:()=>u,jh:()=>s,l5:()=>a,yH:()=>l});var r=n(34275),i=n(9093);function s(e){return e<=1024?new Array(e).fill(0):new Float64Array(e)}function o(e){return((0,r.iu)(e)?e.byteLength/8:e.length)<=1024?Array.from(e):new Float64Array(e)}function a(e,t,n){return Array.isArray(e)?e.slice(t,t+n):e.subarray(t,t+n)}function l(e,t){if(0===t.length)return o(e);if(0===e.length)return o(t);const n=s(e.length+t.length);for(let t=0;t<e.length;++t)n[t]=e[t];for(let r=0;r<t.length;++r)n[e.length+r]=t[r];return n}function u(e){return[...e]}function c(e){const t=(0,i.vt)();for(let n=0;n<16;++n)t[n]=e[n];return t}},70328(e,t,n){n.d(t,{BI:()=>A,C:()=>o,DC:()=>p,Ej:()=>M,Ie:()=>F,Jt:()=>S,Lu:()=>w,Ne:()=>I,RF:()=>d,TF:()=>g,VL:()=>h,aI:()=>T,fA:()=>a,gE:()=>u,gX:()=>b,hZ:()=>x,iT:()=>f,is:()=>_,pg:()=>v,uJ:()=>m,vI:()=>C,vY:()=>l,vt:()=>s,w1:()=>c,yr:()=>y}),n(35522);var r=n(5443),i=(n(19419),n(4197));function s(e=k){return[e[0],e[1],e[2],e[3],e[4],e[5]]}function o(e,t){for(let n=0;n<6;n++)e[n]=t[n];return e}function a(e,t,n,r,i,o,a=s()){return a[0]=e,a[1]=t,a[2]=n,a[3]=r,a[4]=i,a[5]=o,a}function l(e,t=s()){return function(e,t,n,r=s()){return x(r,E),function(e,t,n=0,r=t.length/3){let i=e[0],s=e[1],o=e[2],a=e[3],l=e[4],u=e[5];for(let e=0;e<r;e++)i=Math.min(i,t[n+3*e]),s=Math.min(s,t[n+3*e+1]),o=Math.min(o,t[n+3*e+2]),a=Math.max(a,t[n+3*e]),l=Math.max(l,t[n+3*e+1]),u=Math.max(u,t[n+3*e+2]);e[0]=i,e[1]=s,e[2]=o,e[3]=a,e[4]=l,e[5]=u}(r,e,t,n),r}(e,0,e.length/3,t)}function u(e,t=(0,i.jh)(24)){const[n,r,s,o,a,l]=e;return t[0]=n,t[1]=r,t[2]=s,t[3]=n,t[4]=r,t[5]=l,t[6]=n,t[7]=a,t[8]=s,t[9]=n,t[10]=a,t[11]=l,t[12]=o,t[13]=r,t[14]=s,t[15]=o,t[16]=r,t[17]=l,t[18]=o,t[19]=a,t[20]=s,t[21]=o,t[22]=a,t[23]=l,t}function c(e,t){const n=isFinite(e[2])||isFinite(e[5]);return new r.A(n?{xmin:e[0],xmax:e[3],ymin:e[1],ymax:e[4],zmin:e[2],zmax:e[5],spatialReference:t}:{xmin:e[0],xmax:e[3],ymin:e[1],ymax:e[4],spatialReference:t})}function d(e,t,n=e){n[0]=Math.min(e[0],t[0]),n[1]=Math.min(e[1],t[1]),n[2]=Math.min(e[2],t[2]),n[3]=Math.max(e[3],t[3]),n[4]=Math.max(e[4],t[4]),n[5]=Math.max(e[5],t[5])}function p(e,t){e[0]=Math.min(e[0],t[0]),e[1]=Math.min(e[1],t[1]),e[3]=Math.max(e[3],t[2]),e[4]=Math.max(e[4],t[3])}function f(e,[t,n,r]){!function(e,t,n,r){e[0]=Math.min(e[0],t),e[1]=Math.min(e[1],n),e[2]=Math.min(e[2],r),e[3]=Math.max(e[3],t),e[4]=Math.max(e[4],n),e[5]=Math.max(e[5],r)}(e,t,n,r)}function h(e){return e[0]>=e[3]?0:e[3]-e[0]}function y(e){return e[1]>=e[4]?0:e[4]-e[1]}function m(e){return e[2]>=e[5]?0:e[5]-e[2]}function g(e){const t=h(e),n=m(e),r=y(e);return t*t+n*n+r*r}function b(e,t=[0,0,0]){return t[0]=e[0]+h(e)/2,t[1]=e[1]+y(e)/2,t[2]=e[2]+m(e)/2,t}function M(e,t=[0,0,0]){return t[0]=h(e),t[1]=y(e),t[2]=m(e),t}function v(e,t){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function w(e,t){return t[0]=e[3],t[1]=e[4],t[2]=e[5],t}function I(e,t,n=e){return n[0]=t[0],n[1]=t[1],n[2]=t[2],n!==e&&(n[3]=e[3],n[4]=e[4],n[5]=e[5]),n}function C(e,t,n=e){return n[3]=t[0],n[4]=t[1],n[5]=t[2],n!==e&&(n[0]=e[0],n[1]=e[1],n[2]=e[2]),e}function x(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e}function F(e){return e?x(e,E):s(E)}function S(e,t){return e[0]=t[0],e[1]=t[1],e[2]=Number.NEGATIVE_INFINITY,e[3]=t[2],e[4]=t[3],e[5]=Number.POSITIVE_INFINITY,e}function A(e,t,n,r,i){return e[0]=t,e[1]=n,e[2]=Number.NEGATIVE_INFINITY,e[3]=r,e[4]=i,e[5]=Number.POSITIVE_INFINITY,e}function _(e){return 6===e.length}function T(e,t,n){if(null==e||null==t)return e===t;if(!_(e)||!_(t))return!1;if(n){for(let r=0;r<e.length;r++)if(!n(e[r],t[r]))return!1}else for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}const E=[1/0,1/0,1/0,-1/0,-1/0,-1/0],k=[0,0,0,0,0,0];s(),n.d(t,["qv",0,E,"v_",0,k])},34403(e,t,n){var r=n(79258);Math.PI;const i=r.$O.radius,s=r.$O.eccentricitySquared,o={a1:i*s,a2:i*s*i*s,a3:i*s*s/2,a4:i*s*i*s*2.5,a5:i*s+i*s*s/2,a6:1-s};r.$O.radius,r.$O.flattening,r.Sw.radius,r.Sw.flattening,r.sH.radius,r.sH.flattening,r.sH.radius,n.d(t,["TP",0,o])},60408(e,t,n){function r(e){return void 0!==e.xmin&&void 0!==e.ymin&&void 0!==e.xmax&&void 0!==e.ymax}function i(e){return void 0!==e.points}function s(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?s(e)?"esriGeometryPoint":o(e)?"esriGeometryPolyline":a(e)?"esriGeometryPolygon":r(e)?"esriGeometryEnvelope":i(e)?"esriGeometryMultipoint":null:null}function c(e){return null!=e&&("hasZ"in e&&e.hasZ||"z"in e&&null!=e.z)}function d(e){return null!=e&&("hasM"in e&&e.hasM||"m"in e&&null!=e.m)}n.d(t,{$B:()=>u,Bi:()=>a,Pv:()=>c,Rg:()=>o,U9:()=>i,W0:()=>d,ZC:()=>r,fT:()=>s,uW:()=>l})},65864(e,t,n){n.d(t,{rS:()=>c,xD:()=>p});var r=n(5443),i=n(91075),s=n(48526),o=n(86738),a=n(39829),l=n(82799),u=n(60408);function c(e){return null==e?null:e instanceof i.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)?s.A.fromJSON(e):(0,u.ZC)(e)?r.A.fromJSON(e):null}const d={esriGeometryPoint:o.A,esriGeometryPolyline:l.A,esriGeometryPolygon:a.A,esriGeometryEnvelope:r.A,esriGeometryMultipoint:s.A,esriGeometryMultiPatch:a.A};function p(e){return e&&d[e]||null}},55156(e,t,n){n.d(t,{I:()=>i});const r=Symbol("idFieldsProviderSymbol");function i(e){return(t=e)&&r in t?e[r]:void 0;var t}n.d(t,["e",0,r])},97483(e,t,n){n.r(t),n.d(t,{default:()=>Ge});var r=n(5482),i=n(69540),s=n(7762),o=n(49186),a=n(81583),l=n(91869),u=n(25728),c=n(17676),d=n(36708),p=n(39516),f=n(91429),h=n(4146),y=n(52136),m=n(18768),g=n(63074),b=n(69208),M=n(6455),v=n(47685),w=n(10086),I=n(34287),C=n(8303),x=n(54310),F=n(25036),S=n(82935),A=n(60694),_=n(10873),T=n(15426),E=n(17036),k=n(30524),j=n(85334),P=n(90360),Z=n(86162),z=n(92438),L=n(96576),O=n(93618),R=n(62046),N=n(37531);const V={key:"type",base:z.A,errorContext:"renderer",typeMap:{simple:L.A,"unique-value":O.A,"class-breaks":Z.A}},G=(0,P.C)({types:V}),q=["#ed5151","#149ece","#a7c636","#9e559c","#fc921f","#ffde3e","#f789d8","#b7814a","#3caf99","#6b6bd6","#b54779","#7f7f7f"];var B=n(37838),D=n(4902),U=n(4718),$=n(92474),K=n(53966),H=n(97768),W=n(93637),J=n(89317),Y=n(78247),Q=n(16930),X=n(55156),ee=n(60950),te=n(89808),ne=n(99959);const re=Symbol("isSubtypeGroupGraphicOriginSymbol");var ie;class se extends ne.A{get[(ie=re,ee.ym)](){return this.sublayer}get[X.e](){return this.sublayer}get[te.Q](){return this.layer}constructor(e){super(),this[ie]=!0,this.type="subtype-group",this.sublayer=e}get layer(){return this.sublayer.parent}get id(){return`${this.layer.id}:__${this.sublayer.id}__`}}var oe=n(29005),ae=n(30279),le=n(16194),ue=n(46499),ce=n(39383),de=n(17311),pe=n(54546),fe=n(97552),he=n(30291),ye=n(59868),me=n(43440),ge=n(43937),be=n(36005);const Me=(0,E.p)();let ve=0;function we(e,t){let n=e.json.write;return"object"!=typeof n&&(n=e.json.write={}),n.ignoreOrigin=!0,t?.spatialOnly&&(n.layerContainerTypes=J.K),e}function Ie(e){const t={write:{ignoreOrigin:!0}};return e?.name&&(t.name=e.name),"object"==typeof t.write&&(e?.spatialOnly&&(t.write.layerContainerTypes=J.K),e?.target&&(t.write.target=e.target)),t}function Ce(e){switch(e){case"point":case"multipoint":return ye.UK.clone();case"polyline":return ye.A7.clone();case"polygon":case"multipatch":return ye.Cx.clone();default:return null}}function xe(e){return Se(e,"user")===e}function Fe(e){return Se(e,"service")}function Se(e,t){const n=e.parent?.getAtOrigin("sublayers",t);return n?.find(({subtypeCode:t})=>t===e.subtypeCode)}function Ae(e,t){return null==e?null:t.subtypes?.find(t=>t.code===e)}function _e(e,t){let n=null;switch(t.geometryType){case"esriGeometryPoint":case"esriGeometryMultipoint":n="point";break;case"esriGeometryPolyline":n="line";break;case"esriGeometryPolygon":case"esriGeometryMultiPatch":n="polygon";break;default:t.type,n=null}const r={},i=Ae(e,t);if(null!=i){const{defaultValues:e}=i;for(const t in e)r[t]=e[t]}return r[t.subtypeField]=e,new oe.A({name:"New Feature",drawingTool:n,prototype:{attributes:r}})}let Te=class extends((0,u.M)((0,i.OU)((0,D.s)($.x_)))){constructor(e){super(e),this.attributeTableTemplate=null,this.charts=null,this.editingEnabled=!0,this.fieldOverrides=null,this.fieldsIndex=null,this.formTemplate=null,this.graphicOrigin=new se(this),this.id=`${Date.now().toString(16)}-subtype-sublayer-${ve++}`,this.type="subtype-sublayer",this.labelsVisible=!0,this.labelingInfo=null,this.layerType="ArcGISFeatureLayer",this.legendEnabled=!0,this.listMode="show",this.minScale=0,this.maxScale=0,this.opacity=1,this.parent=null,this.popupEnabled=!0,this.popupTemplate=null,this.subtypeCode=null,this.visible=!0}load(e){return(0,k.yp)(this.renderer,this.fieldsIndex),Promise.resolve(this)}get _titleCreator(){const e=this._get("_titleCreator");return(0,H.pR)(e),new de.A({fieldsIndex:this.fieldsIndex,objectIdField:this.objectIdField,displayField:this.parent?.displayField??"",fields:this.fields,effectivePopupTemplate:this.popupTemplate??this.defaultPopupTemplate})}get capabilities(){return this.parent?.capabilities}get effectiveCapabilities(){return this.parent?.effectiveCapabilities}get effectiveEditingEnabled(){const{parent:e}=this;return e?e.effectiveEditingEnabled&&this.editingEnabled:this.editingEnabled}get elevationInfo(){return this.parent?.elevationInfo}get featureTitleFields(){return[...this._titleCreator.requiredFields]}set fieldConfigurations(e){if(this._override("fieldConfigurations",e),!this.parent?.loaded)return;const t=(0,le.sS)(this,e);t&&this._set("popupTemplate",t)}get fieldConfigurations(){return this._isOverridden("fieldConfigurations")?this._get("fieldConfigurations"):(0,le.QX)(this)||null}writeFieldOverrides(e,t,n){const{fields:r,parent:i}=this;let s;if(r){s=[];let e=0;r.forEach(({name:t,alias:n,editable:r,visible:o})=>{if(!o)return;const a=i?.fields?.find(e=>e.name===t);if(!a)return;const l={name:t};let u=!1;n!==a.alias&&(l.alias=n,u=!0),r!==a.editable&&(l.editable=r,u=!0),s.push(l),u&&e++}),0===e&&s.length===r.length&&(s=null)}else s=(0,U.o8)(e);s?.length&&(0,W.sM)(n,s,t)}get fields(){const{parent:e,fieldOverrides:t,subtypeCode:n}=this,r=e?.fields;if(!e||!r?.length)return null;const{subtypes:i,subtypeField:s}=e,o=i?.find(e=>e.code===n),a=o?.defaultValues,l=o?.domains,u=[];for(const e of r){const r=e.clone(),{name:i}=r,o=t?.find(e=>e.name===i);if(r.visible=!t?.length||!!o,o){const{alias:e,editable:t}=o;e&&(r.alias=e),!1===t&&(r.editable=!1)}const c=a?.[i]??null;r.defaultValue=i===s?n:c;const d=l?.[i]??null;r.domain=i===s?null:d?"inherited"===d.type?r.domain:d.clone():null,u.push(r)}return u}get floorInfo(){return this.parent?.floorInfo}get isTable(){return!!this.parent?.isTable}get geometryType(){return this.parent?.geometryType}get globalIdField(){return this.parent?this.parent.globalIdField:(K.A.getLogger(this).error(je("globalIdField")),null)}get effectiveScaleRange(){const{minScale:e,maxScale:t}=this;return{minScale:e,maxScale:t}}get objectIdField(){return this.parent||K.A.getLogger(this).error(je("objectIdField")),this.parent?.objectIdField}writePopupTemplate(e,t,n,r){e&&(t[n]=e.toJSON({...r,writeFieldFormat:!0}))}get defaultPopupTemplate(){return this.createPopupTemplate()}get relationships(){return this.parent?.relationships}set renderer(e){(0,k.yp)(e,this.fieldsIndex),this._override("renderer",e)}get renderer(){if(this._isOverridden("renderer"))return this._get("renderer");const{parent:e}=this;return e&&!e.isTable&&"mesh"!==e.geometryType?(xe(this)?(0,U.o8)(Fe(this)?.renderer):null)??function(e){return new L.A({symbol:Ce(e)})}(e.geometryType):null}readRendererFromService(e,t,n){if("Table"===t.type)return null;const r=t.drawingInfo?.renderer,i=G(r,t,n);let s;const{subtypeCode:o}=this;if(null!=o&&function(e,t){return!(!t||"unique-value"!==e?.type||null==e.field||e.field.toLowerCase()!==t.toLowerCase()||e.field2||e.field3||e.valueExpression)}(i,t.subtypeField)){const e=i.uniqueValueInfos?.find(({value:e})=>(e="number"==typeof e?String(e):e)===String(o));e&&(s=new L.A({symbol:e.symbol}))}else"simple"!==i?.type||i.visualVariables?.length||(s=i);return s}readRenderer(e,t,n){const r=t?.layerDefinition?.drawingInfo?.renderer;if(r)return G(r,t,n)||void 0}get spatialReference(){return this.parent?.spatialReference??Q.A.WGS84}get subtypeField(){return this.parent?.subtypeField}get templates(){return this._isOverridden("templates")?this._get("templates"):(0,U.o8)(xe(this)?Fe(this)?.templates:Se(this,"portal-item")?.templates||Fe(this)?.templates)}set templates(e){this._override("templates",e)}readTemplatesFromService(e,t){return[_e(this.subtypeCode,t)]}get title(){if(this._isOverridden("title"))return this._get("title");const e=xe(this)?Fe(this):null;return e?.title}set title(e){this._override("title",e)}readTitleFromService(e,t){const n=Ae(this.subtypeCode,t);return null!=n?n.name:null}get url(){return this.parent?.url}get userHasUpdateItemPrivileges(){return!!this.parent?.userHasUpdateItemPrivileges}async addAttachment(e,t,n){const{parent:r}=this;if(!r)throw je("addAttachment");if(e.getAttribute(r.subtypeField)!==this.subtypeCode)throw new o.A("subtype-sublayer:addAttachment","The feature provided does not belong to this SubtypeSublayer");return r.addAttachment(e,t,n)}async updateAttachment(e,t,n,r){const{parent:i}=this;if(!i)throw je("updateAttachment");if(e.getAttribute(i.subtypeField)!==this.subtypeCode)throw new o.A("subtype-sublayer:updateAttachment","The feature provided does not belong to this SubtypeSublayer");return i.updateAttachment(e,t,n,r)}async deleteAttachments(e,t,n){const{parent:r}=this;if(!r)throw je("deleteAttachments");if(e.getAttribute(r.subtypeField)!==this.subtypeCode)throw new o.A("subtype-sublayer:deleteAttachments","The feature provided does not belong to this SubtypeSublayer");return r.deleteAttachments(e,t,n)}async applyEdits(e,t){if(!this.parent)throw je("applyEdits");return this.parent.applyEdits(e,t)}createFieldConfigurations(){return(0,le.xY)(this)}createPopupTemplate(e){let t=this;const{parent:n,fields:r,title:i}=this;if(n){const{displayField:e,editFieldsInfo:s,objectIdField:o}=n;t={displayField:e,editFieldsInfo:s,fields:r,objectIdField:o,title:i}}return(0,he.tn)(t,e)}createQuery(){if(!this.parent)throw je("createQuery");const e=(0,T.VZ)(this.parent),t=`${this.parent.subtypeField}=${this.subtypeCode}`;return e.where=(0,p.mA)(t,this.parent.definitionExpression),e}getFeatureTitle(e,t){return this._titleCreator.getTitle(this,e,t)}getFeatureTitles(e,t){return this._titleCreator.getTitles(this,e,t)}getField(e){return this.fieldsIndex.get(e)}getFieldAlias(e){const t=this.getField(e);if(t)return this.getFieldConfiguration(t.name)?.alias||t.alias}getFieldConfiguration(e){return e=e.toLowerCase(),this.fieldConfigurations?.find(t=>t.name.toLowerCase()===e)}getFieldDomain(e,t){if(!t?.excludeImpliedDomains&&this.parent){const t=(0,T.pc)(this.parent,e);if(t)return t}return this._getLayerDomain(e)}async queryAttachments(e,t){const n=await this.load();if(!n.parent)throw je("queryAttachments");const r=e instanceof pe.A?e.clone():new pe.A(e);return r.where=ke(r.where,n.parent.subtypeField,n.subtypeCode),n.parent.queryAttachments(r,t)}async queryFeatureCount(e,t){const n=await this.load();if(!n.parent)throw je("queryFeatureCount");return n.parent.queryFeatureCount(Ee(n.parent,n,e),t)}async queryFeatures(e,t){const n=await this.load();if(!n.parent)throw je("queryFeatures");return n.parent.queryFeatures(Ee(n.parent,n,e),t)}async queryObjectIds(e,t){const n=await this.load();if(!n.parent)throw je("queryObjectIds");return n.parent.queryObjectIds(Ee(n.parent,n,e),t)}async queryRelatedFeatures(e,t){const n=await this.load();if(!n.parent)throw je("queryRelatedFeatures");return n.parent.queryRelatedFeatures(e,t)}async queryRelatedFeaturesCount(e,t){const n=await this.load();if(!n.parent)throw je("queryRelatedFeaturesCount");return n.parent.queryRelatedFeaturesCount(e,t)}_getLayerDomain(e){const t=this.fieldsIndex.get(e);return t?t.domain:null}};(0,r.Cg)([(0,f.MZ)({clonable:!1,readOnly:!0})],Te.prototype,"_titleCreator",null),(0,r.Cg)([(0,f.MZ)({type:me.A,json:Ie({name:"attributeTableInfo"})})],Te.prototype,"attributeTableTemplate",void 0),(0,r.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],Te.prototype,"capabilities",null),(0,r.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],Te.prototype,"effectiveCapabilities",null),(0,r.Cg)([(0,f.MZ)({json:Ie()})],Te.prototype,"charts",void 0),(0,r.Cg)([(0,f.MZ)({type:Boolean,nonNullable:!0,json:Ie({name:"enableEditing"})})],Te.prototype,"editingEnabled",void 0),(0,r.Cg)([(0,f.MZ)({type:Boolean,readOnly:!0})],Te.prototype,"effectiveEditingEnabled",null),(0,r.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],Te.prototype,"elevationInfo",null),(0,r.Cg)([(0,f.MZ)({clonable:!1,readOnly:!0})],Te.prototype,"featureTitleFields",null),(0,r.Cg)([(0,f.MZ)({type:[ae.A],json:{name:"layerDefinition.fieldConfigurations",write:{ignoreOrigin:!0}}})],Te.prototype,"fieldConfigurations",null),(0,r.Cg)([(0,f.MZ)({json:{name:"layerDefinition.fieldOverrides",origins:{service:{read:!1}},write:{ignoreOrigin:!0,allowNull:!0}}})],Te.prototype,"fieldOverrides",void 0),(0,r.Cg)([(0,ge.K)("fieldOverrides")],Te.prototype,"writeFieldOverrides",null),(0,r.Cg)([(0,f.MZ)({...Me.fields,readOnly:!0,json:{read:!1}})],Te.prototype,"fields",null),(0,r.Cg)([(0,f.MZ)(Me.fieldsIndex)],Te.prototype,"fieldsIndex",void 0),(0,r.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],Te.prototype,"floorInfo",null),(0,r.Cg)([(0,f.MZ)({type:Y.A,json:Ie({name:"formInfo"})})],Te.prototype,"formTemplate",void 0),(0,r.Cg)([(0,f.MZ)({readOnly:!0,clonable:!1})],Te.prototype,"graphicOrigin",void 0),(0,r.Cg)([(0,f.MZ)({type:String,clonable:!1,json:{origins:{service:{read:!1},"portal-item":{read:!1}},write:{ignoreOrigin:!0}}})],Te.prototype,"id",void 0),(0,r.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],Te.prototype,"isTable",null),(0,r.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],Te.prototype,"geometryType",null),(0,r.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],Te.prototype,"globalIdField",null),(0,r.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],Te.prototype,"type",void 0),(0,r.Cg)([(0,f.MZ)(we((0,U.o8)(_.kF)))],Te.prototype,"labelsVisible",void 0),(0,r.Cg)([(0,f.MZ)({type:[ue.A],json:{name:"layerDefinition.drawingInfo.labelingInfo",origins:{service:{read:!1}},read:{reader:ce.w},write:{ignoreOrigin:!0,layerContainerTypes:J.K}}})],Te.prototype,"labelingInfo",void 0),(0,r.Cg)([(0,f.MZ)({type:["ArcGISFeatureLayer"],readOnly:!0,json:{read:!1,write:{ignoreOrigin:!0,layerContainerTypes:J.K}}})],Te.prototype,"layerType",void 0),(0,r.Cg)([(0,f.MZ)(we((0,U.o8)(_.fV)))],Te.prototype,"legendEnabled",void 0),(0,r.Cg)([(0,f.MZ)({type:["show","hide"]})],Te.prototype,"listMode",void 0),(0,r.Cg)([(0,f.MZ)((()=>{const e=(0,U.o8)(_.hn);return e.json.origins.service.read=!1,we(e,{spatialOnly:!0})})())],Te.prototype,"minScale",void 0),(0,r.Cg)([(0,f.MZ)((()=>{const e=(0,U.o8)(_.hG);return e.json.origins.service.read=!1,we(e,{spatialOnly:!0})})())],Te.prototype,"maxScale",void 0),(0,r.Cg)([(0,f.MZ)({readOnly:!0})],Te.prototype,"effectiveScaleRange",null),(0,r.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],Te.prototype,"objectIdField",null),(0,r.Cg)([(0,f.MZ)({type:Number,range:{min:0,max:1},nonNullable:!0,json:Ie({spatialOnly:!0})})],Te.prototype,"opacity",void 0),(0,r.Cg)([(0,f.MZ)({clonable:!1})],Te.prototype,"parent",void 0),(0,r.Cg)([(0,f.MZ)(we((0,U.o8)(_.M6)))],Te.prototype,"popupEnabled",void 0),(0,r.Cg)([(0,f.MZ)({type:B.A,json:Ie({name:"popupInfo"})})],Te.prototype,"popupTemplate",void 0),(0,r.Cg)([(0,ge.K)("popupTemplate")],Te.prototype,"writePopupTemplate",null),(0,r.Cg)([(0,f.MZ)({readOnly:!0})],Te.prototype,"defaultPopupTemplate",null),(0,r.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],Te.prototype,"relationships",null),(0,r.Cg)([(0,f.MZ)({types:V,json:Ie({target:"layerDefinition.drawingInfo.renderer",spatialOnly:!0})})],Te.prototype,"renderer",null),(0,r.Cg)([(0,be.w)("service","renderer",["drawingInfo.renderer","subtypeField","type"])],Te.prototype,"readRendererFromService",null),(0,r.Cg)([(0,be.w)("renderer",["layerDefinition.drawingInfo.renderer"])],Te.prototype,"readRenderer",null),(0,r.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],Te.prototype,"spatialReference",null),(0,r.Cg)([(0,f.MZ)({type:Number,json:{origins:{service:{read:!1}},write:{ignoreOrigin:!0}}})],Te.prototype,"subtypeCode",void 0),(0,r.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],Te.prototype,"subtypeField",null),(0,r.Cg)([(0,f.MZ)({type:[oe.A],json:Ie({name:"layerDefinition.templates"})})],Te.prototype,"templates",null),(0,r.Cg)([(0,be.w)("service","templates",["geometryType","subtypeField","subtypes","type"])],Te.prototype,"readTemplatesFromService",null),(0,r.Cg)([(0,f.MZ)({type:String,json:Ie()})],Te.prototype,"title",null),(0,r.Cg)([(0,be.w)("service","title",["subtypes"])],Te.prototype,"readTitleFromService",null),(0,r.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],Te.prototype,"url",null),(0,r.Cg)([(0,f.MZ)({readOnly:!0})],Te.prototype,"userHasUpdateItemPrivileges",null),(0,r.Cg)([(0,f.MZ)({type:Boolean,nonNullable:!0,json:Ie({name:"visibility",spatialOnly:!0})})],Te.prototype,"visible",void 0),Te=(0,r.Cg)([(0,f.$K)("esri.layers.support.SubtypeSublayer")],Te);const Ee=(e,t,n)=>{if(!n)return t.createQuery();const r=fe.A.from(n);return r.where=ke(r.where,e.subtypeField,t.subtypeCode),r},ke=(e,t,n)=>{const r=new RegExp(`${t}\\s*=\\s*\\d+`),i=`${t}=${n}`,s=e??"";return r.test(s)?s.replace(r,i):(0,p.mA)(i,s)},je=e=>new o.A("subtype-sublayer:parent-missing",`This sublayer must have a parent SubtypeGroupLayer in order to use ${e}`);var Pe=n(96184),Ze=n(91908),ze=n(54218),Le=n(59923);const Oe="SubtypeGroupLayer";function Re(e,t){const n=[];for(const r of e){const e=new Te;e.read(r,t),n.push(e)}return n}const Ne=(0,E.p)();let Ve=class extends((0,w.j)((0,M.FJ)((0,v.w6)((0,g.dM)((0,S.e)((0,F.j)((0,x.J)((0,m.b)((0,I.q)((0,C.A)((0,u.M)((0,b.d)((0,y.p)((0,i.OU)(h.A))))))))))))))){constructor(...e){super(...e),this._sublayerLookup=new Map,this.fields=null,this.fieldsIndex=null,this.outFields=null,this.sublayers=new(s.A.ofType(Te)),this.useUniqueColorsForSublayers=!0,this.supportedSourceTypes=new Set(["Feature Layer","Table"]),this.timeInfo=null,this.title="Layer",this.type="subtype-group",this._debouncedSaveOperations=(0,c.sg)(async(e,t,r)=>{const{save:i,saveAs:s}=await n.e(5740).then(n.bind(n,33359));switch(e){case 0:return i(this,t);case 1:return s(this,r,t)}}),this.addHandles((0,d.wB)(()=>this.sublayers,(e,t)=>this._handleSublayersChange(e,t),d.OH))}destroy(){this.source?.destroy()}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}load(e){const t=null!=e?e.signal:null,n=this.loadFromPortal({supportedTypes:["Feature Service"]},e).catch(c.QP).then(async()=>{if(!this.url)throw new o.A("subtype-grouplayer:missing-url-or-source","SubtypeGroupLayer must be created with either a url or a portal item");if(null==this.layerId)throw new o.A("subtype-grouplayer:missing-layerid","layerId is required for a SubtypeGroupLayer created with url");this._initLayerProperties(await this.createGraphicsSource(t))}).then(()=>(0,T.VA)(this,"load",e));return this.addResolvingPromise(n),Promise.resolve(this)}get createQueryVersion(){return this.commitProperty("definitionExpression"),this.commitProperty("timeExtent"),this.commitProperty("timeOffset"),this.commitProperty("geometryType"),this.commitProperty("gdbVersion"),this.commitProperty("historicMoment"),this.commitProperty("returnZ"),this.commitProperty("capabilities"),this.commitProperty("returnM"),(this._get("createQueryVersion")??0)+1}get editingEnabled(){return this.loaded&&null!=this.capabilities&&this.capabilities.operations.supportsEditing&&this.userHasEditingPrivileges}get effectiveEditingEnabled(){return(0,T.C$)(this)}get operationalLayerType(){return this.isTable?"SubtypeGroupTable":"SubtypeGroupLayer"}set source(e){this._get("source")!==e&&this._set("source",e)}readTitleFromService(e,{name:t}){return this.url?(0,A.yG)(this.url,t):t}async addAttachment(e,t,n){const r=await(0,T.Xl)(this,e,t,Oe,n);return this.lastEditsEventDate=new Date,r}async updateAttachment(e,t,n,r){const i=await(0,T.bt)(this,e,t,n,Oe,r);return this.lastEditsEventDate=new Date,i}async applyEdits(e,t){return(0,T.ct)(this,e,t)}async createGraphicsSource(e){const{default:t}=await(0,c.qr)(Promise.all([n.e(893),n.e(2656),n.e(8548)]).then(n.bind(n,65515)),e);return new t({layer:this,supportedSourceTypes:this.supportedSourceTypes}).load({signal:e})}createQuery(){const e=(0,T.VZ)(this),t=this.sublayers.map(e=>e.subtypeCode);return e.where=(0,p.mA)(`${this.subtypeField} IN (${t.join(",")})`,this.definitionExpression),e}async deleteAttachments(e,t,n){const r=await(0,T.mm)(this,e,t,Oe,n);return this.lastEditsEventDate=new Date,r}async fetchRecomputedExtents(e){return(0,T.WP)(this,e,Oe)}findSublayerForFeature(e){const t=this.fieldsIndex.get(this.subtypeField),n=e.attributes[t.name];return this.findSublayerForSubtypeCode(n)}findSublayerForSubtypeCode(e){return this._sublayerLookup.get(e)}getFieldDomain(e,t){if(!t?.excludeImpliedDomains){const t=(0,T.pc)(this,e);if(t)return t}const n=(0,T.Nv)(this,t?.feature);if(n){const t=n.domains?.[e];return"inherited"===t?.type?this._getLayerDomain(e):t}return this._getLayerDomain(e)}loadAll(){return(0,a.g)(this,e=>{e(this.sublayers)})}async queryAttachments(e,t){return(0,T.lV)(this,e,t,Oe)}async queryFeatures(e,t){const n=await this.load(),r=fe.A.from(e)??n.createQuery(),i=r.outFields??[];i.includes(this.subtypeField)||(i.push(this.subtypeField),r.outFields=i);const s=await n.source.queryFeatures(r,t);if(s?.features)for(const e of s.features){const t=this.findSublayerForFeature(e);e.origin=t?.graphicOrigin,e.layer=e.sourceLayer=this.findSublayerForFeature(e)}return s}async queryObjectIds(e,t){return(await(0,T.sg)(this,e,t,Oe)).filter(ze.Et)}async queryFeatureCount(e,t){return(0,T.Ye)(this,e,t,Oe)}async queryExtent(e,t){return(0,T.B5)(this,e,t,Oe)}async queryRelatedFeatures(e,t){return(0,T.hM)(this,e,t,Oe)}async queryRelatedFeaturesCount(e,t){return(0,T.S2)(this,e,t,Oe)}async save(e){return this._debouncedSaveOperations(0,e)}async saveAs(e,t){return this._debouncedSaveOperations(1,t,e)}write(e,t){const{origin:n,layerContainerType:r,messages:i}=t;if(this.isTable){if("web-scene"===n||"web-map"===n&&"tables"!==r)return(0,Le.U4)(t,this,"a table source cannot be written to web scenes and web maps"),null}else if(this.loaded&&"web-map"===n&&"tables"===r)return(0,Le.U4)(t,this,"a non-table source cannot be written to tables in web maps"),null;return this.sublayers?.length?super.write(e,t):(i?.push(new o.A("web-document-write:invalid-property",`Layer (${this.title}, ${this.id}) of type '${this.declaredClass}' has invalid value for 'sublayers' property. 'sublayers' collection should contain at least one sublayer`,{layer:this})),null)}serviceSupportsSpatialReference(e){return!!this.loaded&&(0,Ze.D)(this,e)}async getFeatureTitle(e,t){const n=this.findSublayerForFeature(e);return n?await n.getFeatureTitle(e,t):this._getFeatureTitleForUnknownSublayer(e)}async getFeatureTitles(e,t){const n=new Map,r=new Map,i=[],s=[r];if(e.forEach(e=>{const s=this.findSublayerForFeature(e);if(s)(0,l.tE)(n,s,()=>[]).push(e);else{const n=e.getObjectId()??e.attributes[this.objectIdField];t?.fetchMissingFields?i.push(e):r.set(n,this._getFeatureTitleForUnknownSublayer(e))}}),i.length>0){const e=new Set(this.featureTitleFields);e.add(this.objectIdField),e.add(this.subtypeField);const t=await this.queryFeatures({outFields:[...e],returnGeometry:!1,objectIds:i.map(e=>e.getObjectId()??e.attributes[this.objectIdField])}),s=new Set;for(const e of t.features??[]){const t=e.getObjectId()??e.attributes[this.objectIdField];s.add(t);const i=this.findSublayerForFeature(e);i?(0,l.tE)(n,i,()=>[]).push(e):r.set(t,this._getFeatureTitleForUnknownSublayer(e))}for(const e of i){const t=e.getObjectId()??e.attributes[this.objectIdField];s.has(t)||r.set(t,this._getFeatureTitleForUnknownSublayer(e))}}const o=await Promise.all(Array.from(n).map(([e,n])=>e.getFeatureTitles(n,t)));o.forEach(e=>s.push(e));const a=new Map(s.flatMap(e=>[...e]));return r.forEach((e,t)=>{a.set(t,e)}),a}get featureTitleFields(){const e=new Set;for(const t of this.sublayers){const n=t.featureTitleFields;for(const t of n)e.add(t)}return[...e]}_getLayerDomain(e){const t=this.fieldsIndex.get(e);return t?t.domain:null}_initLayerProperties(e){this._set("source",e);const{sourceJSON:t}=e;if(t&&(this.sourceJSON=t,this.read(t,{origin:"service",url:this.parsedUrl})),!this.subtypes?.length)throw new o.A("subtype-grouplayer:missing-subtypes","SubtypeGroupLayer must be created using a layer with subtypes");this._verifyFields(),(0,k.sv)(this.timeInfo,this.fieldsIndex)}async hasDataChanged(){return(0,T.jp)(this)}_verifyFields(){const e=this.parsedUrl?.path??"undefined";this.objectIdField||console.log("SubtypeGroupLayer: 'objectIdField' property is not defined (url: "+e+")"),this.isTable||-1!==e.search(/\/FeatureServer\//i)||this.fields?.some(e=>"geometry"===e.type)||console.log("SubtypeGroupLayer: unable to find field of type 'geometry' in the layer 'fields' list. If you are using a map service layer, features will not have geometry (url: "+e+")")}_handleSublayersChange(e,t){t&&(t.forEach(e=>{e.parent=null}),this.removeHandles("sublayers-owner"),this._sublayerLookup.clear()),e&&(e.forEach(e=>{e.parent=this,this._sublayerLookup.set(e.subtypeCode,e)}),this.addHandles([e.on("after-add",({item:e})=>{e.parent=this,this._sublayerLookup.set(e.subtypeCode,e)}),e.on("after-remove",({item:e})=>{e.parent=null,this._sublayerLookup.delete(e.subtypeCode)})],"sublayers-owner"))}_getFeatureTitleForUnknownSublayer(e){const{displayField:t,fieldsIndex:n,objectIdField:r}=this;if(t&&n.has(t))return e.attributes[n.get(t).name]??"";const i=e.getObjectId();return null!=i?i.toString():r&&n.has(r)?e.attributes[n.get(r).name]??"":""}};(0,r.Cg)([(0,f.MZ)({readOnly:!0})],Ve.prototype,"createQueryVersion",null),(0,r.Cg)([(0,f.MZ)({readOnly:!0})],Ve.prototype,"editingEnabled",null),(0,r.Cg)([(0,f.MZ)({readOnly:!0})],Ve.prototype,"effectiveEditingEnabled",null),(0,r.Cg)([(0,f.MZ)({...Ne.fields,readOnly:!0,json:{origins:{service:{read:!0}},read:!1}})],Ve.prototype,"fields",void 0),(0,r.Cg)([(0,f.MZ)(Ne.fieldsIndex)],Ve.prototype,"fieldsIndex",void 0),(0,r.Cg)([(0,f.MZ)(_.id)],Ve.prototype,"id",void 0),(0,r.Cg)([(0,f.MZ)({type:["show","hide","hide-children"],json:{origins:{"portal-item":{read:!1,write:!1}}}})],Ve.prototype,"listMode",void 0),(0,r.Cg)([(0,f.MZ)({type:["SubtypeGroupLayer","SubtypeGroupTable"],json:{name:"layerType",read:{enabled:!0},write:{enabled:!0,ignoreOrigin:!0,isRequired:!0},origins:{"web-document":{name:"layerType",read:{enabled:!0},write:{enabled:!0,ignoreOrigin:!0,isRequired:!0}},"portal-item":{name:"layerType",read:{enabled:!0},write:{enabled:!0,ignoreOrigin:!0,isRequired:!0}}}}})],Ve.prototype,"operationalLayerType",null),(0,r.Cg)([(0,f.MZ)(Ne.outFields)],Ve.prototype,"outFields",void 0),(0,r.Cg)([(0,f.MZ)({clonable:!1})],Ve.prototype,"source",null),(0,r.Cg)([(0,f.MZ)({type:s.A.ofType(Te),json:{origins:{service:{read:{source:"subtypes",reader(e,t,n){let r=null;if(this.useUniqueColorsForSublayers){const i=function(e,t){const n=e.drawingInfo?.renderer,r=n?G(n,e,t):null;if("simple"===r?.type)return(0,N.Sx)(r.symbol,null)?r.symbol.clone():null}(t,n);r=i?function(e,t){return(0,j.Iy)(q,e,{offset:!0,shuffle:!0}).reverse().map(e=>{const n=t.clone();return"cim"===n.type?(0,R.Fe)(n,e):(0,N.dt)(n,e),new L.A({symbol:n})})}(e.length,i):null}const i=e.map(({code:e},i)=>{const s=new Te({subtypeCode:e});s.read(t,n);const o=r?.[i];return o&&s.read({drawingInfo:{renderer:o.toJSON()}},n),s});return new(s.A.ofType(Te))(i)}}}},read:{source:["layers","tables"],reader(e,t,n){let r;return"SubtypeGroupLayer"===t.layerType&&t.layers?.length?r=Re(t.layers,n):"SubtypeGroupTable"===t.layerType&&t.tables?.length&&(r=Re(t.tables,n)),new(s.A.ofType(Te))(r)}},write:{ignoreOrigin:!0,writer(e,t,n,r){const i=[];for(const t of e){const e=t.write({},r);i.push(e)}this.isTable?t.tables=i:t.layers=i}}}})],Ve.prototype,"sublayers",void 0),(0,r.Cg)([(0,f.MZ)()],Ve.prototype,"useUniqueColorsForSublayers",void 0),(0,r.Cg)([(0,f.MZ)({type:Pe.A})],Ve.prototype,"timeInfo",void 0),(0,r.Cg)([(0,f.MZ)({json:{origins:{"portal-item":{write:{enabled:!0,ignoreOrigin:!0,writerEnsuresNonNull:!0}}}}})],Ve.prototype,"title",void 0),(0,r.Cg)([(0,be.w)("service","title",["name"])],Ve.prototype,"readTitleFromService",null),(0,r.Cg)([(0,f.MZ)({json:{read:!1}})],Ve.prototype,"type",void 0),(0,r.Cg)([(0,f.MZ)({clonable:!1,readOnly:!0})],Ve.prototype,"featureTitleFields",null),Ve=(0,r.Cg)([(0,f.$K)("esri.layers.SubtypeGroupLayer")],Ve);const Ge=Ve},54339(e,t,n){function r(e,t){switch(t.type){case"object-id":case"unique-id-simple":return e.attributes[t.fieldName];case"unique-id-composite":{const n=[];for(const r of t.fieldNames)n.push(e.attributes[r]??null);return JSON.stringify(n)}}}function i(e,t){if("uniqueIdFields"in t&&t.uniqueIdFields?.length){if(1===t.uniqueIdFields.length)return e.attributes?.[t.uniqueIdFields[0]];const n=t.uniqueIdFields.map(t=>e.attributes?.[t]);return JSON.stringify(n)}return"objectIdField"in t&&t.objectIdField?e.attributes?.[t.objectIdField]:null}n.d(t,{W:()=>r,r:()=>i})},52136(e,t,n){var r=n(5482),i=n(91429);n.d(t,["p",0,e=>{const t=e;let n=class extends t{get apiKey(){return this._isOverridden("apiKey")?this._get("apiKey"):"portalItem"in this?this.portalItem?.apiKey:null}set apiKey(e){null!=e?this._override("apiKey",e):(this._clearOverride("apiKey"),this.clear("apiKey","user"))}};return(0,r.Cg)([(0,i.MZ)({type:String})],n.prototype,"apiKey",null),n=(0,r.Cg)([(0,i.$K)("esri.layers.mixins.APIKeyMixin")],n),n}])},47685(e,t,n){n.d(t,{Mk:()=>f,Zk:()=>d});var r=n(5482),i=n(65529),s=n(4718),o=n(91429),a=n(20816);const l=new i.bk;function u(e){return l.on("apply-edits",new WeakRef(e))}function c(e){return l.on("update-moment",new WeakRef(e))}function d(e,t,n=null,r=!1){const i=Promise.withResolvers();return r=null==t||r,l.emit("apply-edits",{serviceUrl:e,layerId:t,gdbVersion:n,mayReceiveServiceEdits:r,result:i.promise}),i}const p=Symbol();function f(e){return null!=e&&"object"==typeof e&&p in e}function h(e){return null!=e&&"object"==typeof e&&"gdbVersion"in e}function y(e,t,n){const r=new URL(e).host,i=a.Z3.get(r),s=e=>!e||e===i;return s(t)&&s(n)||t===n}n.d(t,["w6",0,e=>{var t;const n=e;let i=class extends n{static{t=p}constructor(...e){super(...e),this[t]=!0,this._applyEditsHandler=e=>{const{serviceUrl:t,layerId:n,gdbVersion:r,mayReceiveServiceEdits:i,result:o}=e,a=t===this.url,l=null!=n&&null!=this.layerId&&n===this.layerId,u=null!=n&&this.relationships?.some(e=>e.relatedTableId===n),c=h(this),d=h(this)&&y(t,r,this.gdbVersion);if(!a||c&&!d||!l&&!u&&!i)return;const p=o.then(e=>{if(this.lastEditsEventDate=new Date,l&&(e.addedFeatures.length||e.updatedFeatures.length||e.deletedFeatures.length||e.addedAttachments.length||e.updatedAttachments.length||e.deletedAttachments.length))return this.emit("edits",(0,s.o8)(e)),e;const n=e.editedFeatures?.find(({layerId:e})=>e===this.layerId);if(n){const{adds:t,updates:r,deletes:i}=n.editedFeatures,o={edits:null,addedAttachments:[],deletedAttachments:[],updatedAttachments:[],addedFeatures:t?t.map(({attributes:e})=>({objectId:this.objectIdField&&e[this.objectIdField],globalId:this.globalIdField&&e[this.globalIdField]})):[],deletedFeatures:i?i.map(({attributes:e})=>({objectId:this.objectIdField&&e[this.objectIdField],globalId:this.globalIdField&&e[this.globalIdField]})):[],updatedFeatures:r?r.map(({current:{attributes:e}})=>({objectId:this.objectIdField&&e[this.objectIdField],globalId:this.globalIdField&&e[this.globalIdField]})):[],editedFeatures:(0,s.o8)(e.editedFeatures),exceededTransferLimit:!1,historicMoment:(0,s.o8)(e.historicMoment)};return this.emit("edits",o),o}const i={edits:null,addedAttachments:[],deletedAttachments:[],updatedAttachments:[],addedFeatures:[],deletedFeatures:[],updatedFeatures:[],editedFeatures:(0,s.o8)(e.editedFeatures),exceededTransferLimit:!1,historicMoment:(0,s.o8)(e.historicMoment)};return"historicMoment"in this&&this._shouldUpdateHistoricMoment(t,r,i.historicMoment)&&this.emit("edits",i),i}).then(e=>("historicMoment"in this&&this._shouldUpdateHistoricMoment(t,r,e.historicMoment)&&(this.historicMoment=e.historicMoment),e));p.catch(()=>{}),this.emit("apply-edits",{result:p})},this._updateMomentHandler=e=>{const{serviceUrl:t,gdbVersion:n,moment:r}=e,i=t===this.url,s=h(this),o=h(this)&&y(t,n,this.gdbVersion),a=h(this)&&!y(t,this.gdbVersion,null);i&&s&&o&&a&&"historicMoment"in this&&this.historicMoment!==r&&(this.historicMoment=r)},this.when().then(()=>{this.addHandles(u(this._applyEditsHandler)),"historicMoment"in this&&this.addHandles(c(this._updateMomentHandler))},()=>{})}_shouldUpdateHistoricMoment(e,t,n){return"historicMoment"in this&&this.historicMoment!==n&&(0,a.w5)(e,t)}};return(0,r.Cg)([(0,o.MZ)()],i.prototype,"lastEditsEventDate",void 0),i=(0,r.Cg)([(0,o.$K)("esri.layers.mixins.EditBusLayer")],i),i}])},28032(e,t,n){n.d(t,{A:()=>l});var r=n(5482),i=n(69540),s=n(25482),o=n(91429),a=n(56400);let l=class extends((0,i.OU)(s.o)){constructor(e){super(e),this.creatorField=null,this.creationDateField=null,this.editorField=null,this.editDateField=null,this.realm=null,this.timeZone=null}};(0,r.Cg)([(0,o.MZ)()],l.prototype,"creatorField",void 0),(0,r.Cg)([(0,o.MZ)()],l.prototype,"creationDateField",void 0),(0,r.Cg)([(0,o.MZ)()],l.prototype,"editorField",void 0),(0,r.Cg)([(0,o.MZ)()],l.prototype,"editDateField",void 0),(0,r.Cg)([(0,o.MZ)()],l.prototype,"realm",void 0),(0,r.Cg)([(0,o.MZ)((0,a.P6)("dateFieldsTimeReference",!0))],l.prototype,"timeZone",void 0),l=(0,r.Cg)([(0,o.$K)("esri.layers.support.EditFieldsInfo")],l)},29005(e,t,n){n.d(t,{A:()=>u});var r=n(5482),i=n(69540),s=n(66552),o=n(25482),a=n(91429);const l=new s.J({esriFeatureEditToolAutoCompletePolygon:"auto-complete-polygon",esriFeatureEditToolCircle:"circle",esriFeatureEditToolEllipse:"ellipse",esriFeatureEditToolFreehand:"freehand",esriFeatureEditToolLine:"line",esriFeatureEditToolNone:"none",esriFeatureEditToolPoint:"point",esriFeatureEditToolPolygon:"polygon",esriFeatureEditToolRectangle:"rectangle",esriFeatureEditToolArrow:"arrow",esriFeatureEditToolTriangle:"triangle",esriFeatureEditToolLeftArrow:"left-arrow",esriFeatureEditToolRightArrow:"right-arrow",esriFeatureEditToolUpArrow:"up-arrow",esriFeatureEditToolDownArrow:"down-arrow"});let u=class extends((0,i.OU)(o.o)){constructor(e){super(e),this.name=null,this.description=null,this.drawingTool=null,this.prototype=null,this.thumbnail=null}};(0,r.Cg)([(0,a.MZ)({json:{write:!0}})],u.prototype,"name",void 0),(0,r.Cg)([(0,a.MZ)({json:{write:!0}})],u.prototype,"description",void 0),(0,r.Cg)([(0,a.MZ)({json:{read:l.read,write:l.write}})],u.prototype,"drawingTool",void 0),(0,r.Cg)([(0,a.MZ)({json:{write:!0}})],u.prototype,"prototype",void 0),(0,r.Cg)([(0,a.MZ)({json:{write:!0}})],u.prototype,"thumbnail",void 0),u=(0,r.Cg)([(0,a.$K)("esri.layers.support.FeatureTemplate")],u)},30279(e,t,n){n.d(t,{A:()=>u});var r=n(5482),i=n(69540),s=n(25482),o=n(10107),a=n(64108),l=n(62044);let u=class extends((0,i.OU)(s.o)){constructor(e){super(e),this.alias=null,this.name=void 0,this.fieldFormat=null}};(0,r.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],u.prototype,"alias",void 0),(0,r.Cg)([(0,o.MZ)({type:String,nonNullable:!0,json:{write:{isRequired:!0}}})],u.prototype,"name",void 0),(0,r.Cg)([(0,o.MZ)({types:l.fg,json:{write:!0}})],u.prototype,"fieldFormat",void 0),u=(0,r.Cg)([(0,a.$)("esri.layers.support.FieldConfiguration")],u)},95466(e,t,n){n.d(t,{A:()=>u});var r=n(49186),i=n(53966),s=n(12195),o=n(30524),a=n(98623),l=n(56400);class u{static fromJSON(e){return new u(e.fields,e.timeZoneByFieldName)}static fromLayer(e){return new u(e.fields??[],d(e))}static fromLayerJSON(e){return new u(e.fields??[],d(e))}constructor(e=[],t){this._fieldsMap=new Map,this._normalizedFieldsMap=new Map,this._dateFieldsSet=new Set,this._numericFieldsSet=new Set,this._requiredFields=null,this.dateFields=[],this.numericFields=[],this.fields=e||[],this._timeZoneByFieldName=t?new Map(t):null;const n=[];for(const e of this.fields){const t=e?.name,r=(0,o.GZ)(t);if(t&&r){const i=(0,o.NF)(t);this._fieldsMap.set(t,e),this._fieldsMap.set(i,e),this._normalizedFieldsMap.set(r,e),n.push(`${i}:${e.type}:${this._timeZoneByFieldName?.get(t)}`),(0,o.vE)(e)?(this.dateFields.push(e),this._dateFieldsSet.add(e)):(0,o.WA)(e)&&(this._numericFieldsSet.add(e),this.numericFields.push(e)),(0,o.te)(e)||(0,o.Xz)(e)||(e.editable=null==e.editable||!!e.editable,e.nullable=null==e.nullable||!!e.nullable)}}n.sort(),this.uid=n.join()}get requiredFields(){if(!this._requiredFields){this._requiredFields=[];for(const e of this.fields)(0,o.te)(e)||(0,o.Xz)(e)||e.nullable||void 0!==(0,o.lD)(e)||this._requiredFields.push(e)}return this._requiredFields}equals(e){return this.uid===e?.uid}has(e){return null!=this.get(e)}get(e){return(0,o.Vb)({fieldName:e,fieldsMap:this._fieldsMap,normalizedFieldsMap:this._normalizedFieldsMap})}getTimeZone(e){const t=this.get(e&&"string"!=typeof e?e.name:e);return t?this._timeZoneByFieldName?this._timeZoneByFieldName.get(t.name):"date"===t.type||"esriFieldTypeDate"===t.type?(i.A.getLogger("esri.layers.support.FieldsIndex").errorOnce(new r.A("getTimeZone:no-timezone-information",`no time zone information for field '${t.name}'`)),"UTC"):c.has(t.type)?a.L:null:null}isDateField(e){return this._dateFieldsSet.has(this.get(e))}isTimeOnlyField(e){return(0,o.OH)(this.get(e))}isNumericField(e){return this._numericFieldsSet.has(this.get(e))}normalizeFieldName(e){return this.get(e)?.name??void 0}toJSON(){return{fields:this.fields.map(e=>(0,s.W)(e)?e.toJSON():e),timeZoneByFieldName:this._timeZoneByFieldName?Array.from(this._timeZoneByFieldName.entries()):null}}}const c=new Set(["time-only","date-only","timestamp-offset","esriFieldTypeDateOnly","esriFieldTypeTimeOnly","esriFieldTypeTimestampOffset"]);function d(e){const t=new Map;if(!e.fields)return t;const n=!0===e.datesInUnknownTimezone,{timeInfo:r,editFieldsInfo:i}=e,s=(r?"startField"in r?r.startField:r.startTimeField:"")??"",u=(r?"endField"in r?r.endField:r.endTimeField:"")??"",d=function(e){return"dateFieldsTimeZone"in e}(e)?e.dateFieldsTimeZone??null:e.dateFieldsTimeReference?(0,l.ZS)(e.dateFieldsTimeReference):null,p=i?function(e){return"timeZone"in e}(i)?i.timeZone??d:i.dateFieldsTimeReference?(0,l.ZS)(i.dateFieldsTimeReference):d??"UTC":null,f=r?function(e){return"timeZone"in e}(r)?r.timeZone??d:r.timeReference?(0,l.ZS)(r.timeReference):d:null,h=new Map([[(0,o.NF)(i?.creationDateField??""),p],[(0,o.NF)(i?.editDateField??""),p],[(0,o.NF)(s),f],[(0,o.NF)(u),f]]);for(const{name:r,type:i}of e.fields)if(c.has(i))t.set(r,a.L);else if("date"!==i&&"esriFieldTypeDate"!==i)t.set(r,null);else if(n)t.set(r,a.L);else{const e=h.get((0,o.NF)(r??""))??d;t.set(r,e)}return t}},46499(e,t,n){n.d(t,{A:()=>C});var r,i,s=n(5482),o=(n(44208),n(66552)),a=n(25482),l=n(4718),u=n(90629),c=n(91429),d=n(73913),p=n(32730),f=n(77548),h=n(59868),y=n(73838),m=n(33910),g=n(36005),b=n(43937);const M=new o.J({esriServerPointLabelPlacementAboveCenter:"above-center",esriServerPointLabelPlacementAboveLeft:"above-left",esriServerPointLabelPlacementAboveRight:"above-right",esriServerPointLabelPlacementBelowCenter:"below-center",esriServerPointLabelPlacementBelowLeft:"below-left",esriServerPointLabelPlacementBelowRight:"below-right",esriServerPointLabelPlacementCenterCenter:"center-center",esriServerPointLabelPlacementCenterLeft:"center-left",esriServerPointLabelPlacementCenterRight:"center-right",esriServerLinePlacementAboveAfter:"above-after",esriServerLinePlacementAboveAlong:"above-along",esriServerLinePlacementAboveBefore:"above-before",esriServerLinePlacementAboveStart:"above-start",esriServerLinePlacementAboveEnd:"above-end",esriServerLinePlacementBelowAfter:"below-after",esriServerLinePlacementBelowAlong:"below-along",esriServerLinePlacementBelowBefore:"below-before",esriServerLinePlacementBelowStart:"below-start",esriServerLinePlacementBelowEnd:"below-end",esriServerLinePlacementCenterAfter:"center-after",esriServerLinePlacementCenterAlong:"center-along",esriServerLinePlacementCenterBefore:"center-before",esriServerLinePlacementCenterStart:"center-start",esriServerLinePlacementCenterEnd:"center-end",esriServerPolygonPlacementAlwaysHorizontal:"always-horizontal"},{ignoreUnknown:!0});function v(e,t,n){return{enabled:!(0,f.TU)(n?.layer)}}function w(e){return!e||"service"!==e.origin&&!("map-image"===e.layer?.type)}function I(e){return!!function(e){return"map-image"===e?.type}(e)&&!!e.capabilities?.exportMap?.supportsArcadeExpressionForLabeling}let C=class extends a.o{static{r=p.vK}static{i=this}static evaluateWhere(e,t){const n=(e,t,n)=>{switch(t){case"=":return e==n;case"<>":return e!=n;case">":return e>n;case">=":return e>=n;case"<":return e<n;case"<=":return e<=n}return!1};try{if(null==e)return!0;const r=e.split(" ");if(3===r.length)return n(t[r[0]],r[1],r[2]);if(7===r.length){const e=n(t[r[0]],r[1],r[2]),i=r[3],s=n(t[r[4]],r[5],r[6]);switch(i){case"AND":return e&&s;case"OR":return e||s}}return!1}catch(e){}}constructor(e){super(e),this[r]=!0,this.type="label",this.name=null,this.allowOverrun=!1,this.deconflictionStrategy="static",this.labelExpression=null,this.labelExpressionInfo=null,this.labelPlacement=null,this.labelPosition="curved",this.maxScale=0,this.minScale=0,this.repeatLabel=!0,this.symbol=h.Hk,this.useCodedValues=void 0,this.where=null}readLabelExpression(e,t){const n=t.labelExpressionInfo;if(!n||!n.value&&!n.expression)return e}writeLabelExpression(e,t,n){if(this.labelExpressionInfo)if(null!=this.labelExpressionInfo.value)e=(0,p.D3)(this.labelExpressionInfo.value);else if(null!=this.labelExpressionInfo.expression){const t=(0,p.tH)(this.labelExpressionInfo.expression);t&&(e="["+t+"]")}null!=e&&(t[n]=e)}writeLabelExpressionInfo(e,t,n,r){if(null==e&&null!=this.labelExpression&&w(r))e=new d.A({expression:this.getLabelExpressionArcade()});else if(!e)return;const i=e.toJSON(r);i.expression&&(t[n]=i)}writeMaxScale(e,t){(e||this.minScale)&&(t.maxScale=e)}writeMinScale(e,t){(e||this.maxScale)&&(t.minScale=e)}get repeatLabelDistance(){return this._get("repeatLabelDistance")}set repeatLabelDistance(e){this._set("repeatLabelDistance",e)}getLabelExpression(){return(0,p.XJ)(this)}getLabelExpressionArcade(){return(0,p.BI)(this)}getLabelExpressionSingleField(){return(0,p.rU)(this)}hash(){return JSON.stringify(this)}clone(){return new i({allowOverrun:this.allowOverrun,deconflictionStrategy:this.deconflictionStrategy,labelExpression:this.labelExpression,labelExpressionInfo:(0,l.o8)(this.labelExpressionInfo),labelPosition:this.labelPosition,labelPlacement:this.labelPlacement,maxScale:this.maxScale,minScale:this.minScale,name:this.name,repeatLabel:this.repeatLabel,repeatLabelDistance:this.repeatLabelDistance,symbol:(0,l.o8)(this.symbol),where:this.where,useCodedValues:this.useCodedValues})}};(0,s.Cg)([(0,c.MZ)({type:String,json:{write:!0}})],C.prototype,"name",void 0),(0,s.Cg)([(0,c.MZ)({type:Boolean,json:{write:!0,default:!1,origins:{"web-scene":{write:!1},"portal-item":{default:!1,write:{overridePolicy:v}}}}})],C.prototype,"allowOverrun",void 0),(0,s.Cg)([(0,c.MZ)({type:String,json:{write:!0,default:"static",origins:{"web-scene":{write:!1},"portal-item":{default:"static",write:{overridePolicy:v}}}}})],C.prototype,"deconflictionStrategy",void 0),(0,s.Cg)([(0,c.MZ)({type:String,json:{write:{overridePolicy(e,t,n){return this.labelExpressionInfo&&"service"===n?.origin&&I(n.layer)?{enabled:!1}:{allowNull:!0}}}}})],C.prototype,"labelExpression",void 0),(0,s.Cg)([(0,g.w)("labelExpression")],C.prototype,"readLabelExpression",null),(0,s.Cg)([(0,b.K)("labelExpression")],C.prototype,"writeLabelExpression",null),(0,s.Cg)([(0,c.MZ)({type:d.A,json:{write:{overridePolicy:(e,t,n)=>function(e){return w(e)||I(e?.layer)}(n)?{allowNull:!0}:{enabled:!1}}}})],C.prototype,"labelExpressionInfo",void 0),(0,s.Cg)([(0,b.K)("labelExpressionInfo")],C.prototype,"writeLabelExpressionInfo",null),(0,s.Cg)([(0,c.MZ)({type:M.apiValues,json:{type:M.jsonValues,read:M.read,write:M.write}})],C.prototype,"labelPlacement",void 0),(0,s.Cg)([(0,c.MZ)({type:["curved","parallel"],json:{write:!0,origins:{"web-map":{write:!1},"web-scene":{write:!1},"portal-item":{write:!1}}}})],C.prototype,"labelPosition",void 0),(0,s.Cg)([(0,c.MZ)({type:Number})],C.prototype,"maxScale",void 0),(0,s.Cg)([(0,b.K)("maxScale")],C.prototype,"writeMaxScale",null),(0,s.Cg)([(0,c.MZ)({type:Number})],C.prototype,"minScale",void 0),(0,s.Cg)([(0,b.K)("minScale")],C.prototype,"writeMinScale",null),(0,s.Cg)([(0,c.MZ)({type:Boolean,json:{write:!0,origins:{"web-scene":{write:!1},"portal-item":{write:{overridePolicy:v}}}}})],C.prototype,"repeatLabel",void 0),(0,s.Cg)([(0,c.MZ)({type:Number,cast:u.cr,json:{write:!0,origins:{"web-scene":{write:!1},"portal-item":{write:{overridePolicy:v}}}}})],C.prototype,"repeatLabelDistance",null),(0,s.Cg)([(0,c.MZ)({types:m.em,json:{origins:{"web-scene":{types:m.Rv,write:y.oO,default:null}},write:y.oO,default:null}})],C.prototype,"symbol",void 0),(0,s.Cg)([(0,c.MZ)({type:Boolean,json:{write:!0}})],C.prototype,"useCodedValues",void 0),(0,s.Cg)([(0,c.MZ)({type:String,json:{write:!0}})],C.prototype,"where",void 0),C=i=(0,s.Cg)([(0,c.$K)("esri.layers.support.LabelClass")],C)},73913(e,t,n){n.d(t,{A:()=>c});var r,i=n(5482),s=n(25482),o=n(91429),a=n(32730),l=n(36005),u=n(43937);let c=class extends s.o{static{r=this}constructor(e){super(e),this.expression=null,this.title=null,this.value=null}readExpression(e,t){return t.value?(0,a.mX)(t.value):e}writeExpression(e,t,n){null!=this.value&&(e=(0,a.mX)(this.value)),null!=e&&(t[n]=e)}clone(){return new r({expression:this.expression,title:this.title,value:this.value})}};(0,i.Cg)([(0,o.MZ)({type:String,json:{write:{writerEnsuresNonNull:!0}}})],c.prototype,"expression",void 0),(0,i.Cg)([(0,l.w)("expression",["expression","value"])],c.prototype,"readExpression",null),(0,i.Cg)([(0,u.K)("expression")],c.prototype,"writeExpression",null),(0,i.Cg)([(0,o.MZ)({type:String,json:{write:!0,origins:{"web-scene":{write:!1}}}})],c.prototype,"title",void 0),(0,i.Cg)([(0,o.MZ)({json:{read:!1,write:!1}})],c.prototype,"value",void 0),c=r=(0,i.Cg)([(0,o.$K)("esri.layers.support.LabelExpressionInfo")],c)},37352(e,t,n){n.d(t,{A:()=>l});var r,i=n(5482),s=n(7762),o=n(25482),a=n(91429);let l=r=class extends o.o{constructor(e){super(e),this.floorField=null,this.viewAllMode=!1,this.viewAllLevelIds=new s.A}clone(){return new r({floorField:this.floorField,viewAllMode:this.viewAllMode,viewAllLevelIds:this.viewAllLevelIds})}};(0,i.Cg)([(0,a.MZ)({type:String,json:{write:{isRequired:!0}}})],l.prototype,"floorField",void 0),(0,i.Cg)([(0,a.MZ)({json:{read:!1,write:!1}})],l.prototype,"viewAllMode",void 0),(0,i.Cg)([(0,a.MZ)({json:{read:!1,write:!1}})],l.prototype,"viewAllLevelIds",void 0),l=r=(0,i.Cg)([(0,a.$K)("esri.layers.support.LayerFloorInfo")],l)},45067(e,t,n){n.d(t,{A:()=>c});var r=n(5482),i=n(69540),s=n(66552),o=n(25482),a=n(91429);const l=new s.J({esriRelCardinalityOneToOne:"one-to-one",esriRelCardinalityOneToMany:"one-to-many",esriRelCardinalityManyToMany:"many-to-many"}),u=new s.J({esriRelRoleOrigin:"origin",esriRelRoleDestination:"destination"});let c=class extends((0,i.OU)(o.o)){constructor(e){super(e),this.cardinality=null,this.catalogId=null,this.composite=null,this.id=null,this.keyField=null,this.keyFieldInRelationshipTable=null,this.name=null,this.relatedTableId=null,this.relationshipTableId=null,this.role=null}};(0,r.Cg)([(0,a.MZ)({json:{read:l.read,write:l.write}})],c.prototype,"cardinality",void 0),(0,r.Cg)([(0,a.MZ)({json:{name:"catalogID"}})],c.prototype,"catalogId",void 0),(0,r.Cg)([(0,a.MZ)({json:{read:!0,write:!0}})],c.prototype,"composite",void 0),(0,r.Cg)([(0,a.MZ)({json:{read:!0,write:!0}})],c.prototype,"id",void 0),(0,r.Cg)([(0,a.MZ)({json:{read:!0,write:!0}})],c.prototype,"keyField",void 0),(0,r.Cg)([(0,a.MZ)({json:{read:!0,write:!0}})],c.prototype,"keyFieldInRelationshipTable",void 0),(0,r.Cg)([(0,a.MZ)({json:{read:!0,write:!0}})],c.prototype,"name",void 0),(0,r.Cg)([(0,a.MZ)({json:{read:!0,write:!0}})],c.prototype,"relatedTableId",void 0),(0,r.Cg)([(0,a.MZ)({json:{read:!0,write:!0}})],c.prototype,"relationshipTableId",void 0),(0,r.Cg)([(0,a.MZ)({json:{read:u.read,write:u.write}})],c.prototype,"role",void 0),c=(0,r.Cg)([(0,a.$K)("esri.layers.support.Relationship")],c)},17311(e,t,n){n.d(t,{A:()=>f});var r=n(5482),i=n(69622),s=n(4576),o=n(60999),a=n(7762),l=n(16494),u=n(91429),c=n(30524),d=n(43668);const p=/<br\s*\/*>/gi;let f=class extends i.A{constructor(e){super(e),this._featureUtils=null,this.effectivePopupTemplate=null}get _arcadeTask(){return this.expressionsUsedInTitle.length>0?this._get("_arcadeTask")||(0,o.UT)(()=>(0,d.l)()):null}get featureUtilsPromise(){return this._get("featureUtilsPromise")??Promise.all([n.e(4560),n.e(9301)]).then(n.bind(n,99301)).then(e=>this._featureUtils=e)}get calculatedExpressions(){const e=new a.A;if(!this.expressionsUsedInTitle.length)return e;if(!this._arcadeTask?.value){for(const t of this.expressionsUsedInTitle??[])e.push({name:t.name,invalid:!0});return e}for(const t of this.expressionsUsedInTitle)try{const n=this._arcadeTask.value.arcade.parseScript(t.expression,["$layer","$map","$datastore"]);if(n.isAsync){e.push({name:t.name,invalid:!0});break}e.push({name:t.name,syntax:n,invalid:!1,func:this._arcadeTask.value.arcade.compileScript(n,{vars:{$feature:"any"}})})}catch{e.push({name:t.name,invalid:!0});break}return e}get expressionsUsedInTitle(){let e=this.effectivePopupTemplate?.title??"";return"string"!=typeof e?[]:(e=e.toLowerCase(),this.effectivePopupTemplate?.expressionInfos?.filter(t=>e.includes(`{expression/${t.name.toLowerCase()}}`))??[])}get fieldInfoMap(){return this._featureUtils?this._createFieldInfoMap(this._featureUtils.getAllFieldInfos(this.effectivePopupTemplate)):null}get hasBadExpressions(){return this.calculatedExpressions.some(e=>!0===e.invalid)}get requiredFields(){const e=new Set;if(this._arcadeTask?.value&&!this.hasBadExpressions)for(const t of this.calculatedExpressions?.toArray()??[])try{const n=this._arcadeTask.value.arcade.extractFieldLiterals(t.syntax);for(const t of n){const n=t.split("."),r=this.fieldsIndex.get(n.at(-1)??"");r&&e.add(r.name)}}catch{}const t=this._extractFieldNames(this.workingTitle);for(const n of t){const t=this.fieldsIndex.get(n);t&&e.add(t.name)}return null!=this.objectIdField&&e.add(this.objectIdField),e}get titleFromDisplayField(){let e="";return this.displayField&&(e=this.fieldsIndex.get(this.displayField)?.name??""),e||(e=this.fieldsIndex.get(this.objectIdField)?.name??""),e?`{${e}}`:""}get workingTitle(){const e=this.effectivePopupTemplate?this.effectivePopupTemplate.title:"";return""===e||null==e||this.hasBadExpressions||"string"!=typeof e?this.titleFromDisplayField:e}async getTitle(e,t,n){const r=t.getObjectId()??t.attributes?.[e.objectIdField];return(await this.getTitles(e,[t],n)).get(r)??""}async getTitles(e,t,n){const r=new Map,i=n?.timeZone??"system";try{const[{substituteFieldsInLinksAndAttributes:s}]=await Promise.all([this.featureUtilsPromise,this._arcadeTask?.promise]);n?.fetchMissingFields&&(t=await this._checkAndReQueryGraphics(e,t));const{fieldInfoMap:o,workingTitle:a}=this,u=a&&o;t.forEach(t=>{const c=t.getObjectId()??t.attributes[e.objectIdField];let d=u?s({attributes:t.attributes,expressionAttributes:null,fieldInfoMap:o,globalAttributes:this._createFormattedAttributes(e,t,i).global,layer:e,text:a}):"";n?.removeHTML&&(d=l.Nd.sanitize(d).replaceAll(p," ")),r.set(c,d)})}catch{}return r}async _checkAndReQueryGraphics(e,t){const n=t.map(t=>t.getObjectId()??t.attributes[e.objectIdField]).filter(s.Ru);if(n.length!==t.length)return t;if(t.some(e=>!(0,c.Kl)(e,this.requiredFields))){const r=e.createQuery();r.where="1=1",r.outFields=[...this.requiredFields],r.objectIds=n;const i=await e.queryFeatures(r);if(i?.features.length===t.length)return i.features}return t}_createFieldInfoMap(e){const t=new Map;if(!e)return t;for(const n of e){if(!n.fieldName)continue;const e=this.fieldsIndex.get(n.fieldName),r=e?.name??n.fieldName;n.fieldName=r,t.set(r.toLowerCase(),n)}return t}_createFormattedAttributes(e,t,n="system"){const r=this.effectivePopupTemplate?.fieldInfos??[],i={};if(!this._featureUtils)return{};if(!this.hasBadExpressions&&this.calculatedExpressions.length>0&&this._arcadeTask?.value){const n=this._arcadeTask.value.Feature.createFromGraphicLikeObject(t.geometry,t.attributes,e,null);for(const e of this.calculatedExpressions)try{i[`expression/${e.name}`]=e.func({vars:{$feature:n}})}catch{}}const s={...t.attributes,...i};return{global:this._featureUtils.formatAttributes({fieldInfos:r,attributes:s,graphic:t,timeZone:n,layer:e,fieldInfoMap:this.fieldInfoMap}),content:[]}}_extractFieldNames(e){return(0,c.nw)(e).filter(e=>!(e.startsWith("relationships/")||e.startsWith("expression/")))}};(0,r.Cg)([(0,u.MZ)({readOnly:!0})],f.prototype,"_arcadeTask",null),(0,r.Cg)([(0,u.MZ)()],f.prototype,"_featureUtils",void 0),(0,r.Cg)([(0,u.MZ)({readOnly:!0})],f.prototype,"featureUtilsPromise",null),(0,r.Cg)([(0,u.MZ)({readOnly:!0})],f.prototype,"calculatedExpressions",null),(0,r.Cg)([(0,u.MZ)()],f.prototype,"displayField",void 0),(0,r.Cg)([(0,u.MZ)()],f.prototype,"effectivePopupTemplate",void 0),(0,r.Cg)([(0,u.MZ)()],f.prototype,"expressionsUsedInTitle",null),(0,r.Cg)([(0,u.MZ)()],f.prototype,"fieldsIndex",void 0),(0,r.Cg)([(0,u.MZ)()],f.prototype,"fieldInfoMap",null),(0,r.Cg)([(0,u.MZ)()],f.prototype,"fields",void 0),(0,r.Cg)([(0,u.MZ)()],f.prototype,"objectIdField",void 0),(0,r.Cg)([(0,u.MZ)()],f.prototype,"requiredFields",null),f=(0,r.Cg)([(0,u.$K)("esri.layers.support.TitleCreator")],f)},41560(e,t,n){n.d(t,{Ch:()=>o,mW:()=>s});var r=n(34727),i=n(39516);function s(e,t){return{...t,filterMode:e.mode}}function o(e,t,n){const s=function(e){if("manual"===u(e))return null;const t=[Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY];for(const{minScale:n,maxScale:r}of e.filters)t[0]=Math.max(t[0],c(n)),t[1]=Math.min(t[1],d(r));return t}(e);if(s&&((0,r.gg)(t,s[0])||(0,r.ZH)(n,s[1])))return"";const o=Array.from(a(e,t,n)),l=function(e,t,n){if(0===e.length)return!0;const i=c(e.at(0)?.minScale),s=d(e.at(-1)?.maxScale);if((0,r.ZH)(i,t)||(0,r.gg)(s,n))return!0;for(let t=0;t<e.length-1;t++){const n=e[t],i=e[t+1];if((0,r.ZH)(c(i.minScale),d(n.maxScale)))return!0}return!1}(o,t,n)?"1=1":o.map(e=>e.where||"1=1").reduce((e,t)=>(0,i.IW)(e,t),"");return l&&"1=1"!==l?l:""}function*a(e,t,n){if("manual"===u(e)){const t=e.filters.find(t=>t.id===e.activeFilterId);t&&(yield t)}else{"object"==typeof t&&(t=t.scale);for(const r of e.filters)l(r.minScale,r.maxScale,t,n)&&(yield r)}}function l(e,t,n,i){return e=c(e),n=c(n),t=d(t),!(!(0,r.Sp)(n,e)&&(i??n)>e||(0,r.Hx)(t,n)||void 0!==i&&(0,r.Sp)(i,e))}function u(e){return"mode"in e?e.mode:e.filterMode}function c(e){return e||Number.POSITIVE_INFINITY}function d(e){return e||0}},16194(e,t,n){n.d(t,{QX:()=>l,sS:()=>c,xY:()=>u});var r=n(4718),i=n(30279),s=n(62044),o=n(30524),a=n(41227);function l(e){const{popupTemplate:t,fieldsIndex:n}=e,r=t?.fieldInfos;if(!r?.length||!n)return;const o=[];for(const e of r){const{fieldName:t,label:r}=e,a=n.get(t);if(!a)continue;const l=r&&r!==a.alias?r:null,u=(0,s.iu)(e,a);(l||u)&&o.push(new i.A({name:a.name,alias:l,fieldFormat:u}))}return o.length?o:null}function u(e){const{fields:t}=e;if(!t?.length)return;const n=[];for(const e of t){const t=(0,s.qH)(e)?(0,s.$P)(e):null;t&&n.push(new i.A({name:e.name,fieldFormat:t}))}return n.length?n:null}function c(e,t){const{popupTemplate:n,fieldsIndex:i}=e;if(!n||!i)return;const o=function(e,t,n){t??=[],n=(0,r.o8)(n)??[];let i=!1;const o=new Map;for(const n of t){const t=e.fieldsIndex.get(n.name);t&&o.set(t.name,n)}for(const t of n){const n=e.fieldsIndex.get(t.fieldName);if(!n)continue;const r=o.get(n.name);t.label=r?.alias||n.alias,t.format=(0,s.qH)(n)&&r?.fieldFormat?(0,s.PK)(r.fieldFormat,n):null,i=!0,o.delete(n.name)}for(const t of o.values()){const r=d(e,t);r&&(n.push(r),i=!0)}return i?n:null}(e,t,n.fieldInfos);if(!o)return;const a=n.clone();return a.fieldInfos=o,a}function d(e,t){const{name:n,alias:r,fieldFormat:i}=t,l=e.fieldsIndex.get(n);if(!l||!r&&!i)return;const u=r||l.alias,c=(0,s.qH)(l)&&i?(0,s.PK)(i,l):null;return new a.A({fieldName:l.name,label:u,format:c,visible:!1,isEditable:(0,o.R$)(l,e)})}},32730(e,t,n){n.d(t,{BI:()=>f,D3:()=>d,XJ:()=>p,lc:()=>c,mX:()=>y,rU:()=>h,tH:()=>v,zA:()=>I});var r=n(799);const i="__begin__",s="__end__",o=new RegExp(i,"ig"),a=new RegExp(s,"ig"),l=new RegExp("^"+i,"i"),u=new RegExp(s+"$","i");function c(e){return e.replaceAll(new RegExp("\\[","g"),"{").replaceAll(new RegExp("\\]","g"),"}")}function d(e){return e.replaceAll(new RegExp("\\{","g"),"[").replaceAll(new RegExp("\\}","g"),"]")}function p(e){const t={expression:"",type:"none"};return e.labelExpressionInfo?e.labelExpressionInfo.value?(t.expression=e.labelExpressionInfo.value,t.type="conventional"):e.labelExpressionInfo.expression&&(t.expression=e.labelExpressionInfo.expression,t.type="arcade"):null!=e.labelExpression&&(t.expression=c(e.labelExpression),t.type="conventional"),t}function f(e){const t=p(e);if(!t)return null;switch(t.type){case"conventional":return y(t.expression);case"arcade":return t.expression}return null}function h(e){const t=p(e);if(!t)return null;switch(t.type){case"conventional":return function(e){const t=e?.match(m);return t?.[1].trim()||null}(t.expression);case"arcade":return v(t.expression)}return null}function y(e){let t;return e?(t=(0,r.HC)(e,e=>i+'$feature["'+e+'"]'+s),t=l.test(t)?t.replace(l,""):'"'+t,t=u.test(t)?t.replace(u,""):t+'"',t=t.replaceAll(o,'" + ').replaceAll(a,' + "')):t='""',t}const m=/^\s*\{([^}]+)\}\s*$/i,g=/^\s*(?:(?:\$feature\.(\w+))|(?:\$feature\[(["'])(.+)(\2)\]));?\s*$/i,b=/^\s*(?:(?:\$feature\.(\w+))|(?:\$feature\[(["'])(.+)(\2)\]));?\s*(?:DomainName\(\s*\$feature\s*,\s*(["'])(\1|\3)(\5)\s*\));?\s*$/i,M=/^\s*(?:DomainName\(\s*\$feature\s*,\s*(["'])(.+)(\1)\s*\));?\s*$/i;function v(e){if(!e)return null;let t=g.exec(e)||b.exec(e);return t?t[1]||t[3]:(t=M.exec(e),t?t[2]:null)}const w=Symbol("LabelClassInstance");function I(e){return null!=e&&"object"==typeof e&&w in e}n.d(t,["vK",0,w])},39383(e,t,n){n.d(t,{w:()=>l,z:()=>d});var r=n(49186),i=n(53966),s=n(46499);const o=()=>i.A.getLogger("esri.layers.support.labelingInfo"),a=/\[([^[\]]+)\]/gi;function l(e,t,n){return e?e.map(e=>{const r=new s.A;if(r.read(e,n),r.labelExpression){const e=t.fields||t.layerDefinition?.fields||this.fields;r.labelExpression=r.labelExpression.replaceAll(a,(t,n)=>`[${function(e,t){if(!t)return e;const n=e.toLowerCase();for(let e=0;e<t.length;e++){const r=t[e].name;if(r.toLowerCase()===n)return r}return e}(n,e)}]`)}return r}):null}const u=["above-right","above-center","above-left","center-center","center-left","center-right","below-center","below-left","below-right"],c={esriGeometryPoint:u,esriGeometryMultiPatch:["always-horizontal"],esriGeometryPolygon:["always-horizontal"],esriGeometryPolyline:["center-along","above-along","below-along"],esriGeometryMultipoint:u,esriGeometryEnvelope:null};function d(e,t){const n=[];for(const i of e){const e=i.labelPlacement,s=c[t];if(!i.symbol)return o().warn("No ILabelClass symbol specified."),[];if(!s)return o().error(new r.A("labeling:unsupported-geometry-type",`Unable to create labels for layer, geometry type '${t}' is not supported`)),[];if(s.includes(e))n.push(i);else{const r=s[0];e&&o().warn(`Found invalid label placement type ${e} for ${t}. Defaulting to ${r}`);const a=i.clone();a.labelPlacement=r,n.push(a)}}return n}},5757(e,t,n){n.d(t,{B:()=>i});const r=Symbol("PopupTemplateInstance");function i(e){return null!=e&&"object"==typeof e&&r in e}n.d(t,["P",0,r])},86162(e,t,n){n.d(t,{A:()=>S});var r,i=n(5482),s=n(66552),o=n(4718),a=n(53966),l=n(91429),u=n(56507),c=n(30524),d=n(92438),p=n(63988),f=n(88542),h=n(49849),y=n(20061),m=n(80911),g=n(43668),b=n(33910),M=n(36005),v=n(43937),w=n(93223);const I="percent-of-total",C="field",x=new s.J({esriNormalizeByLog:"log",esriNormalizeByPercentOfTotal:I,esriNormalizeByField:C}),F=(0,u.dp)(f.A);let S=r=class extends((0,p.h)(d.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,n){if(!Array.isArray(e))return;let r=t.minValue;return e.map(e=>{const t=new f.A;return t.read(e,n),null==t.minValue&&(t.minValue=r),null==t.maxValue&&(t.maxValue=t.minValue),r=t.maxValue,t})}writeClassBreakInfos(e,t,n,r){const i=e.map(e=>e.write({},r));this._areClassBreaksConsecutive()&&i.forEach(e=>delete e.classMinValue),t[n]=i}castField(e){return null==e?e:"function"==typeof e?(a.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,n=null!=this.normalizationTotal;return t||n?(e=t&&C||n&&I||null,t&&n&&a.A.getLogger(this).warn("warning: both normalizationField and normalizationTotal are set!")):e!==C&&e!==I||(e=null),e}set normalizationType(e){this._set("normalizationType",e)}addClassBreakInfo(e,t,n){let r=null;r="number"==typeof e?new f.A({minValue:e,maxValue:t,symbol:(0,b.dp)(n)}):F((0,o.o8)(e)),this.classBreakInfos.push(r),1===this.classBreakInfos.length&&this.notifyChange("minValue")}removeClassBreakInfo(e,t){const n=this.classBreakInfos.length;for(let r=0;r<n;r++){const n=[this.classBreakInfos[r].minValue,this.classBreakInfos[r].maxValue];if(n[0]===e&&n[1]===t){this.classBreakInfos.splice(r,1);break}}}getBreakIndex(e,t){return this.valueExpression&&null==t?.arcade&&a.A.getLogger(this).warn(""),this.valueExpression?this._getBreakIndexForExpression(e,t):this._getBreakIndexForField(e)}async getClassBreakInfo(e,t){let n=t;this.valueExpression&&null==t?.arcade&&(n={...n,arcade:await(0,g.l)()});const r=this.getBreakIndex(e,n);return-1!==r?this.classBreakInfos[r]:null}getSymbol(e,t){if(this.valueExpression&&null==t?.arcade)return void a.A.getLogger(this).error("#getSymbol()","Please use getSymbolAsync if valueExpression is used");const n=this.getBreakIndex(e,t);return-1===n?this.defaultSymbol:(0,m.c)(this.classBreakInfos[n],t?.scale)??this.defaultSymbol}async getSymbolAsync(e,t){let n=t;if(this.valueExpression&&null==t?.arcade){const e=await(0,g.l)(),{arcadeUtils:t}=e;t.hasGeometryOperations(this.valueExpression)&&await t.enableGeometryOperations(),n={...n,arcade:e}}const r=this.getBreakIndex(e,n);return-1===r?this.defaultSymbol:(0,m.c)(this.classBreakInfos[r],n?.scale)??this.defaultSymbol}get symbols(){const e=[];return this.classBreakInfos.forEach(t=>{t.symbol&&e.push(t.symbol),e.push(...t.alternateSymbols??[])}),this.defaultSymbol&&e.push(this.defaultSymbol),e}get arcadeRequired(){return this.arcadeRequiredForVisualVariables||!!this.valueExpression}clone(){return new r({field:this.field,backgroundFillSymbol:this.backgroundFillSymbol?.clone(),defaultLabel:this.defaultLabel,defaultSymbol:this.defaultSymbol?.clone(),valueExpression:this.valueExpression,valueExpressionTitle:this.valueExpressionTitle,classBreakInfos:(0,o.o8)(this.classBreakInfos),isMaxInclusive:this.isMaxInclusive,normalizationField:this.normalizationField,normalizationTotal:this.normalizationTotal,normalizationType:this.normalizationType,visualVariables:(0,o.o8)(this.visualVariables),legendOptions:(0,o.o8)(this.legendOptions),authoringInfo:(0,o.o8)(this.authoringInfo)})}async collectRequiredFields(e,t){const n=[this.collectVVRequiredFields(e,t),this.collectSymbolFields(e,t)];await Promise.all(n)}async collectSymbolFields(e,t){const n=[...this.symbols.map(n=>n.collectRequiredFields(e,t)),(0,c.Dx)(e,t,null,this.valueExpression)];(0,c.rq)(e,t,this.field),(0,c.rq)(e,t,this.normalizationField),await Promise.all(n)}_getBreakIndexForExpression(e,t){const{viewingMode:n,scale:r,spatialReference:i,arcade:s,timeZone:o}=t??{},{valueExpression:a}=this;let l=this._compiledValueExpression.valueExpression===a?this._compiledValueExpression.compiledFunction:null;const u=s.arcadeUtils;if(!l){const e=u.createSyntaxTree(a);l=u.createFunction(e),this._compiledValueExpression.compiledFunction=l}this._compiledValueExpression.valueExpression=a;const c=u.executeFunction(l,u.createExecContext(e,u.getViewInfo({viewingMode:n,scale:r,spatialReference:i}),o));return this._getBreakIndexfromInfos(c)}_getBreakIndexForField(e){const t=this.field,n=e.attributes,r=this.normalizationType;let i=parseFloat(n[t]);if(r){const e=this.normalizationTotal,t=parseFloat(this.normalizationField?n[this.normalizationField]:void 0);if("log"===r)i=Math.log(i)*Math.LOG10E;else if(r!==I||null==e||isNaN(e)){if(r===C&&!isNaN(t)){if(isNaN(i)||isNaN(t))return-1;i/=t}}else i=i/e*100}return this._getBreakIndexfromInfos(i)}_getBreakIndexfromInfos(e){const t=this.isMaxInclusive;if(null!=e&&"number"==typeof e&&!isNaN(e))for(let n=0;n<this.classBreakInfos.length;n++){const r=[this.classBreakInfos[n].minValue,this.classBreakInfos[n].maxValue];if(r[0]<=e&&(t?e<=r[1]:e<r[1]))return n}return-1}_areClassBreaksConsecutive(){const e=this.classBreakInfos,t=e.length;for(let n=1;n<t;n++)if(e[n-1].maxValue!==e[n].minValue)return!1;return!0}};(0,i.Cg)([(0,l.MZ)(h.As)],S.prototype,"backgroundFillSymbol",void 0),(0,i.Cg)([(0,l.MZ)({type:[f.A],json:{write:{isRequired:!0}}})],S.prototype,"classBreakInfos",void 0),(0,i.Cg)([(0,M.w)("classBreakInfos")],S.prototype,"readClassBreakInfos",null),(0,i.Cg)([(0,v.K)("classBreakInfos")],S.prototype,"writeClassBreakInfos",null),(0,i.Cg)([(0,l.MZ)({type:String,json:{write:!0}})],S.prototype,"defaultLabel",void 0),(0,i.Cg)([(0,l.MZ)(h.z4)],S.prototype,"defaultSymbol",void 0),(0,i.Cg)([(0,l.MZ)({type:String,json:{write:!0}})],S.prototype,"field",void 0),(0,i.Cg)([(0,l.wg)("field")],S.prototype,"castField",null),(0,i.Cg)([(0,l.MZ)({type:Boolean})],S.prototype,"isMaxInclusive",void 0),(0,i.Cg)([(0,l.MZ)({type:y.A,json:{write:!0}})],S.prototype,"legendOptions",void 0),(0,i.Cg)([(0,l.MZ)({type:Number,readOnly:!0,value:null,json:{read:!1,write:{overridePolicy(){return 0!==this.classBreakInfos.length&&this._areClassBreaksConsecutive()?{enabled:!0}:{enabled:!1}}}}})],S.prototype,"minValue",null),(0,i.Cg)([(0,l.MZ)({type:String,json:{write:!0}})],S.prototype,"normalizationField",void 0),(0,i.Cg)([(0,l.MZ)({type:Number,json:{write:!0}})],S.prototype,"normalizationTotal",void 0),(0,i.Cg)([(0,l.MZ)({type:x.apiValues,value:null,json:{type:x.jsonValues,read:x.read,write:x.write}})],S.prototype,"normalizationType",null),(0,i.Cg)([(0,w.e)({classBreaks:"class-breaks"})],S.prototype,"type",void 0),(0,i.Cg)([(0,l.MZ)({type:String,json:{write:!0}})],S.prototype,"valueExpression",void 0),(0,i.Cg)([(0,l.MZ)({type:String,json:{write:!0}})],S.prototype,"valueExpressionTitle",void 0),S=r=(0,i.Cg)([(0,l.$K)("esri.renderers.ClassBreaksRenderer")],S)},88542(e,t,n){n.d(t,{A:()=>u});var r,i=n(5482),s=n(25482),o=n(91429),a=n(49849),l=n(40863);let u=r=class extends s.o{constructor(e){super(e),this.description=null,this.label=null,this.minValue=null,this.maxValue=0,this.symbol=null}get alternateSymbols(){return this._get("alternateSymbols")??null}set alternateSymbols(e){e?this._set("alternateSymbols",e.map(e=>e instanceof l.A?e:(delete e.type,new l.A(e)))):this._set("alternateSymbols",null)}clone(){return new r({alternateSymbols:this.alternateSymbols?.map(e=>e.clone()),description:this.description,label:this.label,minValue:this.minValue,maxValue:this.maxValue,symbol:this.symbol?.clone()??null})}};(0,i.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],u.prototype,"description",void 0),(0,i.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],u.prototype,"label",void 0),(0,i.Cg)([(0,o.MZ)({type:Number,json:{read:{source:"classMinValue"},write:{target:"classMinValue"}}})],u.prototype,"minValue",void 0),(0,i.Cg)([(0,o.MZ)({type:Number,json:{read:{source:"classMaxValue"},write:{target:"classMaxValue"}}})],u.prototype,"maxValue",void 0),(0,i.Cg)([(0,o.MZ)(a.Wp)],u.prototype,"symbol",void 0),(0,i.Cg)([(0,o.MZ)({type:[l.A],useTypeForAutocast:!1,json:{write:!0,origins:{"web-scene":{write:!1}}}})],u.prototype,"alternateSymbols",null),u=r=(0,i.Cg)([(0,o.$K)("esri.renderers.support.ClassBreakInfo")],u)},98205(e,t,n){n.d(t,{KZ:()=>a,eh:()=>o,gf:()=>s,of:()=>i});const r=Symbol("SizeVariableInstance");function i(e){return null!=e&&"object"==typeof e&&r in e}function s(e){return null!=e&&!isNaN(e)&&isFinite(e)}function o(e){return e.valueExpression?"expression":e.field&&"string"==typeof e.field?"field":"unknown"}function a(e,t){const n=t||o(e),r=e.valueUnit||"unknown";return"unknown"===n?"constant":e.stops?"stops":null!=e.minSize&&null!=e.maxSize&&null!=e.minDataValue&&null!=e.maxDataValue?"clamped-linear":"unknown"===r?null!=e.minSize&&null!=e.minDataValue?e.minSize&&e.minDataValue?"proportional":"additive":"identity":"real-world-size"}n.d(t,["uY",0,r])},41366(e,t,n){var r=n(5482),i=n(66552),s=n(53966),o=n(91429),a=n(93223);const l=(0,i.O)()({naturalLog:"natural-log",squareRoot:"square-root",percentOfTotal:"percent-of-total",log:"log",field:"field"}),u="percent-of-total",c="field";n.d(t,["K",0,e=>{const t=e;let n=class extends t{constructor(){super(...arguments),this.normalizationField=null,this.normalizationMaxValue=null,this.normalizationMinValue=null,this.normalizationTotal=null}get normalizationType(){let e=this._get("normalizationType");const t=!!this.normalizationField,n=null!=this.normalizationTotal;return t||n?(e=t&&c||n&&u||null,t&&n&&s.A.getLogger(this).warn("warning: both normalizationField and normalizationTotal are set!")):e!==c&&e!==u||(e=null),e}set normalizationType(e){this._set("normalizationType",e)}};return(0,r.Cg)([(0,o.MZ)({type:String,json:{name:"parameters.normalizationField",write:!0}})],n.prototype,"normalizationField",void 0),(0,r.Cg)([(0,o.MZ)({type:Number,json:{name:"parameters.normalizationMaxValue",write:!0}})],n.prototype,"normalizationMaxValue",void 0),(0,r.Cg)([(0,o.MZ)({type:Number,json:{name:"parameters.normalizationMinValue",write:!0}})],n.prototype,"normalizationMinValue",void 0),(0,r.Cg)([(0,o.MZ)({type:Number,json:{name:"parameters.normalizationTotal",write:!0}})],n.prototype,"normalizationTotal",void 0),(0,r.Cg)([(0,a.e)(l,{name:"parameters.normalizationType"})],n.prototype,"normalizationType",null),n=(0,r.Cg)([(0,o.$K)("esri.rest.support.NormalizationBinParametersMixin")],n),n},"Q",0,l])},28076(e,t,n){var r=n(13337);const i={CIMVectorMarker:{scalesymbolsproportionally:!1,respectframe:!0,anchorpointunits:"Relative",offsetx:0,offsety:0,rotateclockwise:!1,rotation:0,size:10,enable:!0,colorlocked:!1},CIMPictureMarker:{scalex:1,texturefilter:"Draft",anchorpointunits:"Relative",offsetx:0,offsety:0,rotateclockwise:!1,rotation:0,size:10,enable:!0,colorlocked:!1},CIMTextSymbol:{angle:0,anglex:0,angley:0,halosize:1,height:10,horizontalalignment:"Left",kerning:!0,letterspacing:0,letterwidth:100,ligatures:!0,linegap:0,offsetx:0,offsety:0,strikethrough:!1,textcase:"Normal",textstring:"",underline:!1,verticalalignment:"Bottom",enable:!0,colorlocked:!1},CIMSolidStroke:{capstyle:"Round",joinstyle:"Round",miterlimit:4,width:4,enable:!0,colorlocked:!1},CIMPictureStroke:{texturefilter:"Draft",capstyle:"Round",joinstyle:"Round",miterlimit:4,width:4,enable:!0,colorlocked:!1},CIMGradientStroke:{capstyle:"Round",joinstyle:"Round",miterlimit:4,width:4,enable:!0,colorlocked:!1,gradientMethod:"AcrossLine",gradientSize:75,gradientSizeUnits:r.h.Relative,gradientType:"Discrete",interval:5},CIMSolidFill:{enable:!0,colorlocked:!1},CIMPictureFill:{offsetx:0,offsety:0,rotation:0,scalex:1,height:10,texturefilter:"Draft",enable:!0,colorlocked:!1},CIMHatchFill:{offsetx:0,offsety:0,rotation:0,separation:4,enable:!0,colorlocked:!1},CIMGradientFill:{enable:!0,angle:90,gradientMethod:"Linear",gradientSize:75,gradientSizeUnits:r.h.Relative,gradientType:"Discrete",interval:5},CIMGeometricEffectAddControlPoints:{angletolerance:120},CIMGeometricEffectArrow:{arrowtype:"OpenEnded",width:5},CIMGeometricEffectBuffer:{size:1},CIMGeometricEffectCircularSector:{radius:25,startangle:0,endangle:45},CIMGeometricEffectCut:{begincut:1,endcut:1,middlecut:0,invert:!1},CIMGeometricEffectDashes:{customendingoffset:0,linedashending:"NoConstraint",offsetalongline:0},CIMGeometricEffectDonut:{method:"Mitered",option:"Accurate",width:2},CIMGeometricEffectJog:{angle:225,length:20,position:50},CIMGeometricEffectControlMeasureLine:{rule:"FullGeometry",width:25},CIMGeometricEffectMove:{offsetx:1,offsety:-1},CIMGeometricEffectOffset:{method:"Square",offset:1,option:"Fast"},CIMGeometricEffectRadial:{angle:0,length:5},CIMGeometricEffectRotate:{angle:15},CIMGeometricEffectScale:{xscalefactor:1.15,yscalefactor:1.15},CIMGeometricEffectWave:{amplitude:2,period:3,seed:1,waveform:"Sinus"},CIMMarkerPlacementAlongLine:{customendingoffset:0,endings:"WithHalfGap",offsetalongline:0,placeperpart:!0,angletoline:!0,offset:0},CIMMarkerPlacementAtExtremities:{extremityplacement:"Both",offsetalongline:0,angletoline:!0,offset:0},CIMMarkerPlacementAtRatioPositions:{beginposition:0,endposition:0,flipfirst:!0,angletoline:!0,offset:0},CIMMarkerPlacementInsidePolygon:{gridangle:0,gridtype:"Fixed",offsetx:0,offsety:0,randomness:100,seed:0,shiftoddrows:!1,stepx:16,stepy:16,clipping:"ClipAtBoundary"},CIMMarkerPlacementOnLine:{relativeto:"LineMiddle",startpointoffset:0,angletoline:!0,offset:0},CIMMarkerPlacementOnVertices:{placeperpart:!0,placeoncontrolpoints:!0,placeonendpoints:!0,placeonregularvertices:!0,angletoline:!0,offset:0},CIMMarkerPlacementPolygonCenter:{method:"OnPolygon",offsetx:0,offsety:0,clipatboundary:!1},CIMAnimatedSymbolProperties:{playanimation:!1,reverseanimation:!1,randomizestarttime:!1,randomizestartseed:0,starttimeoffset:0,duration:3,endingduration:3,useendingduration:!1,repeattype:"Loop",repeatdelay:0,easing:"Linear"},CIMSymbolAnimationSize:{tosize:10},CIMSymbolAnimationScale:{scalefactor:1},CIMSymbolAnimationColor:{tocolor:[255,255,255,1],colormode:"Multiply"},CIMSymbolAnimationTransparency:{totransparency:0},CIMSymbolAnimationRotation:{torotation:0,rotateclockwise:!1},CIMSymbolAnimationOffset:{offsetx:0,offsety:0},CIMSymbolAnimationMoveAlongLine:{speed:30,distancealong:100,movementtype:"Distance"}};n.d(t,["D",0,i])},13337(e,t,n){n.d(t,["h",0,{Relative:0,Absolute:1}])},93397(e,t,n){n.d(t,{Bu:()=>F,DW:()=>w,FH:()=>E,FM:()=>a,Kn:()=>M,Kq:()=>q,MM:()=>d,Nl:()=>S,O2:()=>A,YC:()=>j,YF:()=>_,_1:()=>C,_d:()=>v,_h:()=>o,bs:()=>k,e6:()=>u,gQ:()=>s,jn:()=>f,lW:()=>c,ll:()=>L,mA:()=>p,oI:()=>B,pM:()=>I,pV:()=>b,pk:()=>Z,rB:()=>z,xo:()=>x,yX:()=>G,z9:()=>g,zb:()=>T,zr:()=>h});var r=n(28076);function i(e){let t=e.length;for(;t--;)if(!" /-,\n".includes(e.charAt(t)))return!1;return!0}function s(e,t){const n=[];let r=0,s=-1;do{if(s=e.indexOf("[",r),s>=r){if(s>r){const t=e.slice(r,s);n.push([t,null,i(t)])}if(r=s+1,s=e.indexOf("]",r),s>=r){if(s>r){const i=t[e.slice(r,s)];i&&n.push([null,i,!1])}r=s+1}}}while(-1!==s);if(r<e.length){const t=e.slice(r);n.push([t,null,i(t)])}return n}function o(e,t,n){let r="",i=null;for(const n of t){const[t,s,o]=n;if(null!=t&&""!==t)o?i=t:(null!=i&&(r+=i,i=null),r+=t);else{const t=e.readAttribute(s);null!=t&&""!==t&&(null!==i&&(r+=i,i=null),r+=t)}}return l(r,n)}function a(e,t,n,r){let i="",s=null;for(const r of t){const[t,o,a]=r;if(null!=t&&""!==t)a?s=t:(null!=s&&(i+=s,s=null),i+=t);else{let t=o;null!=n&&(t=P(o,n));const r=e.attributes[t];null!=r&&""!==r&&(null!=s&&(i+=s,s=null),i+=r)}}return l(i,r)}function l(e,t){switch("string"!=typeof e&&(e=String(e)),t){case"LowerCase":return e.toLowerCase();case"Allcaps":return e.toUpperCase();default:return e}}function u(e){return e?[e[0],e[1],e[2],e[3]/255]:[0,0,0,0]}function c(e){return e.data?.symbol??null}function d(e){return"CIMVectorMarker"===e.type||"CIMPictureMarker"===e.type||"CIMBarChartMarker"===e.type||"CIMCharacterMarker"===e.type||"CIMPieChartMarker"===e.type||"CIMStackedBarChartMarker"===e.type}function p(e){return"CIMGradientStroke"===e.type||"CIMPictureStroke"===e.type||"CIMSolidStroke"===e.type}function f(e){return null!=e&&("CIMGradientFill"===e.type||"CIMHatchFill"===e.type||"CIMPictureFill"===e.type||"CIMSolidFill"===e.type||"CIMWaterFill"===e.type)}function h(e){return null!=e&&("CIMMarkerPlacementAlongLineRandomSize"===e.type||"CIMMarkerPlacementAlongLineSameSize"===e.type||"CIMMarkerPlacementAlongLineVariableSize"===e.type||"CIMMarkerPlacementAtExtremities"===e.type||"CIMMarkerPlacementAtMeasuredUnits"===e.type||"CIMMarkerPlacementAtRatioPositions"===e.type||"CIMMarkerPlacementOnLine"===e.type||"CIMMarkerPlacementOnVertices"===e.type)}const y=(e,t=0)=>null==e||isNaN(e)?t:e;class m{constructor(e){this._import=e}getImportPromise(){return null==this._promise&&(this._promise=this._import().then(e=>this.module=e)),this._promise}}function g(e){return new m(e)}function b(e){if(!e)return"normal";switch(e.toLowerCase()){case"italic":return"italic";case"oblique":return"oblique";default:return"normal"}}function M(e){if(!e)return"normal";switch(e.toLowerCase()){case"bold":return"bold";case"bolder":return"bolder";case"lighter":return"lighter";default:return"normal"}}function v(e){let t="normal",n="normal";if(e){const r=e.toLowerCase();r.includes("italic")?t="italic":r.includes("oblique")&&(t="oblique"),r.includes("bold")?n="bold":r.includes("light")&&(n="lighter")}return{style:t,weight:n}}function w(e){return e.underline?"underline":e.strikethrough?"line-through":"none"}function I(e){if(!e)return null;switch(e.type){case"CIMPolygonSymbol":if(e.symbolLayers)for(const t of e.symbolLayers){const e=I(t);if(null!=e)return e}break;case"CIMTextSymbol":return I(e.symbol);case"CIMSolidFill":return e.color}return null}function C(e){if(e)switch(e.type){case"CIMPolygonSymbol":case"CIMLineSymbol":{const t=e.symbolLayers;if(t)for(const e of t){const t=C(e);if(null!=t)return t}break}case"CIMTextSymbol":return C(e.symbol);case"CIMSolidStroke":return e.color}}function x(e){if(e)switch(e.type){case"CIMPolygonSymbol":case"CIMLineSymbol":if(e.symbolLayers)for(const t of e.symbolLayers){const e=x(t);if(void 0!==e)return e}break;case"CIMTextSymbol":return x(e.symbol);case"CIMSolidStroke":case"CIMGradientStroke":case"CIMPictureStroke":return e.width}}function F(e){switch(e){case"Left":default:return"left";case"Right":return"right";case"Center":return"center";case"Justify":return"justify"}}function S(e){switch(e){default:case"Bottom":return"bottom";case"Top":return"top";case"Center":return"middle";case"Baseline":return"baseline"}}function A(e){return(e?Object.keys(e):[]).map(t=>({name:t,alias:t,type:"string"==typeof e[t]?"esriFieldTypeString":"esriFieldTypeDouble"}))}function _(e){return e?e.charAt(0).toLowerCase()+e.slice(1):e}function T(e,t,n,r,i,s,o=!0){const{infos:a}=s;let l=1,u=0,c=0,d=0,p=1;for(const{absoluteAnchorPoint:e,offsetX:t,offsetY:n,rotation:r,size:i,frameHeight:s,rotateClockWise:f,scaleSymbolsProportionally:h}of a)p=e?1:l,c=N(t,n,u,p,c),d=R(t,n,u,p,d),s&&(h||o)&&(l*=i/s),u=V(r,f,u);const f=N(r,i,u,p,c),h=R(r,i,u,p,d);return{size:e*l,rotation:V(t,n,u),offsetX:f,offsetY:h}}function E(e){return e?.dashTemplate&&(e.dashTemplate=function(e){return"string"==typeof e?function(e){return e.split(" ").map(e=>Number(e))}(e):e}(e.dashTemplate)),e}function k(e){if(null==e)return"Normal";switch(e.type){case"CIMTextSymbol":return e.textCase??"Normal";case"CIMPointSymbol":case"CIMLineSymbol":case"CIMPolygonSymbol":{const t=e.symbolLayers;if(!t)return"Normal";for(const e of t)if("CIMVectorMarker"===e.type)return k(e)}break;case"CIMVectorMarker":{const t=e.markerGraphics;if(!t)return"Normal";for(const e of t)if(e.symbol)return k(e.symbol)}}return"Normal"}function j(e){if(e)switch(e.type){case"CIMTextSymbol":return e.height;case"CIMPointSymbol":{let t=0;if(e.symbolLayers)for(const n of e.symbolLayers)if(n)switch(n.type){case"CIMCharacterMarker":case"CIMPictureMarker":case"CIMVectorMarker":case"CIMObjectMarker3D":case"CIMglTFMarker3D":{const e=n.size??r.D.CIMVectorMarker.size;e>t&&(t=e);break}}return t}case"CIMLineSymbol":case"CIMPolygonSymbol":{let t=0;if(e.symbolLayers)for(const n of e.symbolLayers)if(n)switch(n.type){case"CIMSolidStroke":case"CIMPictureStroke":case"CIMGradientStroke":{const e=n.width;null!=e&&e>t&&(t=e);break}case"CIMCharacterMarker":case"CIMPictureMarker":case"CIMVectorMarker":case"CIMObjectMarker3D":case"CIMglTFMarker3D":if(n.markerPlacement&&h(n.markerPlacement)){const e=n.size??r.D.CIMVectorMarker.size;e>t&&(t=e)}break;case"CIMPictureFill":{const e=n.height;null!=e&&e>t&&(t=e)}}return t}}}function P(e,t){if(null!==t){const n=t.get(e);return n?n.name:e}return e}function Z(e){return e.map(e=>({...e,propertyName:_(e.propertyName)}))}function z(e){const t={};for(const n in e){const r=e[n];t[_(n)]=r}return t}function L(e){if(!e)return 0;let t=0;for(const n of e)t+=O(n);return t}function O(e){if(!e)return 0;if(q(e))return e.inflateSize??256;switch(e.type){case"CIMGeometricEffectArrow":return Math.abs(.5*e.width);case"CIMGeometricEffectBuffer":return Math.abs(e.size);case"CIMGeometricEffectCircularSector":return Math.abs(e.radius??25);case"CIMGeometricEffectControlMeasureLine":return 500;case"CIMGeometricEffectExtension":return Math.abs(e.length);case"CIMGeometricEffectJog":return Math.abs(.5*e.length);case"CIMGeometricEffectMove":return Math.max(Math.abs(y(e.offsetX)),Math.abs(y(e.offsetY)));case"CIMGeometricEffectOffset":case"CIMGeometricEffectOffsetTangent":return Math.abs(e.offset);case"CIMGeometricEffectRadial":return Math.abs(e.length??5);case"CIMGeometricEffectRegularPolygon":return Math.abs(e.radius);case"CIMGeometricEffectRotate":case"CIMGeometricEffectScale":default:return 0;case"CIMGeometricEffectTaperedPolygon":return.5*Math.max(Math.abs(e.fromWidth),Math.abs(e.toWidth));case"CIMGeometricEffectWave":return Math.abs(e.amplitude);case"CIMGeometricEffectDonut":return Math.abs(e.width)}}function R(e,t,n,r,i){const s=n*Math.PI/180;if(s){const n=Math.cos(s);return(Math.sin(s)*e+n*t)*r+i}return t*r+i}function N(e,t,n,r,i){const s=n*Math.PI/180;return s?(Math.cos(s)*e-Math.sin(s)*t)*r+i:e*r+i}function V(e,t,n){return t?n-e:n+e}function G(e,t){return Math.max(Math.min((e??t)/100,1),0)}function q(e){return e.type.startsWith("Private")}function B(e){return null!=e&&function(e){return"setControlPoint"in e&&"getControlPoint"in e&&"setControlPointAt"in e&&"getControlPointAt"in e}(e)?e:void 0}n.d(t,["$w",0,y,"UE",0,e=>e.includes("data:image/svg+xml")])},20816(e,t,n){n.d(t,{We:()=>a,ZJ:()=>l,w5:()=>u});var r=n(11254);const i=(0,n(13069).vD)(),s=new Map,o=new Map;async function a(e,t,n){if(!e||!n)return!1;if(!t)return!0;const i=new URL(e).host;let o=s.get(i);if(!o){const t=e.replace(/\/FeatureServer/i,"/VersionManagementServer").replace(/\/\d*$/,"");o=(await(0,r.A)(t,{responseType:"json",query:{f:"json"}})).data.defaultVersionName}return o===t}async function l(e,t,r=!1){if(!e||!t)return!0;const s=e.replace(/\/FeatureServer/i,"/VersionManagementServer").replace(/\/\d*$/,""),a=o.get(s)?.entries();if(a)for(const[e,o]of a)if(o.name===t){const t=!o.stack?.hasForwardEdits();if(!t&&r){const[{deleteForwardEdits:t},{default:r}]=await Promise.all([n.e(2186).then(n.bind(n,32186)),n.e(2558).then(n.bind(n,32558))]),a=await t(s,e,new r({sessionId:i,moment:o.moment}));return a.success&&o.stack?.clearForwardEdits(),a.success}return t}return!0}function u(e,t){if(!e)return!1;const n=e.replace(/\/FeatureServer/i,"/VersionManagementServer").replace(/\/\d*$/,""),r=o.get(n)?.entries();if(r)for(const[e,n]of r)if(n.name===t)return"edit"===n.lockType;return!1}new Map,n.d(t,["TA",0,i,"Z3",0,s])}}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[6465],{69052(e,t,n){n.d(t,{hr:()=>r});var s=n(34727);class r{constructor(e,t){this.min=e,this.max=t,this.range=t-e}normalize(e,t=0,n=!1){return i(this.range,this.min,this.max,e,t,n)}clamp(e,t=0){return(0,s.qE)(e-t,this.min,this.max)+t}monotonic(e,t,n){return e<t?t:t+o(this.range,e-t,n)}minimalMonotonic(e,t,n){return i(this.range,e,e+this.range,t,n)}center(e,t,n){return t=this.monotonic(e,t,n),this.normalize((e+t)/2,n)}diff(e,t,n){return this.monotonic(e,t,n)-e}shortestSignedDiff(e,t){e=this.normalize(e);const n=(t=this.normalize(t))-e,s=t<e?this.minimalMonotonic(e,t)-e:t-this.minimalMonotonic(t,e);return Math.abs(n)<Math.abs(s)?n:s}contains(e,t,n){return t=this.minimalMonotonic(e,t),(n=this.minimalMonotonic(e,n))>e&&n<t}}function i(e,t,n,s,r=0,i=!1){return(s-=r)<t?s+=o(e,t-s):s>n&&(s-=o(e,s-n)),i&&s===n&&(s=t),s+r}function o(e,t,n=0){return Math.ceil((t-n)/e)*e+n}const a=new r(0,2*Math.PI),c=(new r(-Math.PI,Math.PI),new r(0,360));n.d(t,["ie",0,c,"uC",0,a])},56512(e,t,n){function s(e){let t,n,s=[],r=!1;return function(...i){return r&&t===this&&function(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;++n)if(e[n]!==t[n])return!1;return!0}(i,s)||(n=e.apply(this,i),t=this,s=i,r=!0),n}}n.d(t,{B:()=>s})},31411(e,t,n){n.d(t,{GS:()=>x,gh:()=>M});var s=n(49186),r=n(56512),i=n(65864),o=n(4305),a=n(50954),c=n(52006),u=n(49663),l=n(46068),h=n(15507);const f=1e-6,d=[0,0];function p(e){return{maxSegmentLength:e.maxSegmentLength??0,maxDeviation:e.maxDeviation??0,maxSegmentsPerCurve:e.maxSegmentsPerCurve??12e3,minSegmentsPerCurve:Math.max(e.minSegmentsPerCurve??1,1)}}class g{constructor(e,t){this.curveStart=e,this.curveEnd=t,this.tStart=0,this.tEnd=0,this.tEndStack=[],this.arcEndStack=[]}get stackSize(){return this.tEndStack.length}initialize(e,t){this.tStart=0,this.arcStart=e,this.tEndStack.push(1),this.arcEndStack.push(t)}splitAt(e){this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this.tEndStack.push(e),this.arcEndStack.push(this.interpolate(e))}splitInHalf(){return this.splitAt((this.tStart+this.tEnd)/2)}pop(){this.tEnd=this.tEndStack.pop(),this.arcEnd=this.arcEndStack.pop()}next(){this.tStart=this.tEnd,this.arcStart=this.arcEnd}densify(e,{maxDeviation:t,maxSegmentLength:n,maxSegmentsPerCurve:s,minSegmentsPerCurve:r}){const i=n*n,o=t*t,a=1/s,c=this.interpolate(0),u=this.interpolate(1);(0,h.kb)(this.curveStart,c)>f&&e.push(c),this.initialize(c,u);const l=1/r;for(let e=r-1;e>0;e--){const t=e*l;this.pop(),this.splitAt(t)}for(;this.stackSize>0;)this.pop(),this.tStart===this.tEnd||this.tEnd-this.tStart<a||(0===i||!isFinite(i)||(0,h.kb)(this.arcStart,this.arcEnd)<i)&&(0===o||!isFinite(o)||this.getDeviation2()<o)?(e.push(this.arcEnd),this.next()):this.splitInHalf();return(0,h.kb)(this.curveEnd,u)>f&&e.push([...this.curveEnd]),e}}class m extends g{constructor(e,t){const[n,s,r]=t.b;super(e,n),this._controlPointsStack=[],this._curveControlPoints=[s,r],this._arcControlPoints=[s,r],this._controlPointsStack.push(this._arcControlPoints)}splitAt(e){const{arcStart:t,arcEnd:n,tStart:s,tEnd:r}=this,[i,o]=this._arcControlPoints,a=(e-s)/(r-s),c=(0,h.RS)([],t,i,a),u=(0,h.RS)(d,i,o,a),l=(0,h.RS)([],o,n,a),f=(0,h.RS)([],c,u,a),p=(0,h.RS)([],u,l,a),g=(0,h.RS)([],f,p,a);this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this._controlPointsStack.push([p,l]),this.tEndStack.push(e),this.arcEndStack.push(g),this._arcControlPoints[0]=c,this._arcControlPoints[1]=f,this._controlPointsStack.push(this._arcControlPoints)}pop(){super.pop(),this._arcControlPoints=this._controlPointsStack.pop()}interpolate(e){const{curveStart:t,curveEnd:n}=this,[s,r]=this._curveControlPoints;return(0,o.B4)(t,s,r,n,e)}getDeviation2(){const{arcStart:e,arcEnd:t}=this,[n,s]=this._arcControlPoints;return Math.max((0,h.yE)(n,e,t),(0,h.yE)(s,e,t))}}class y extends g{constructor(e,t){const[n]=t.a;super(e,n),this._derivedEllipse=(0,l.SW)(e,t)}pop(){super.pop(),this._tMid=(this.tStart+this.tEnd)/2,this._arcMid=this.interpolate(this._tMid)}splitInHalf(){this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this.tEndStack.push(this._tMid),this.arcEndStack.push(this._arcMid)}interpolate(e){return(0,l.Uk)(this._derivedEllipse,e)}getDeviation2(){return(0,h.yE)(this._arcMid,this.arcStart,this.arcEnd)}}function _(e,t,n,{cx:s,cy:r,radius:i,thetaStart:o,thetaEnd:a,isInvalid:c},{maxDeviation:u,maxSegmentLength:l,maxSegmentsPerCurve:d,minSegmentsPerCurve:p}){if(c)return e.push([...n]),e;const g=2*i,m=[s+i*Math.cos(o),r+i*Math.sin(o)],y=[s+i*Math.cos(a),r+i*Math.sin(a)];(0,h.kb)(t,m)>f&&e.push(m);const _=Math.abs(a-o),S=l>0&&l<g?2*Math.asin(l/g):_,w=u>0&&u<=i?2*Math.acos(1-u/i):_,k=Math.min(S,w),b=Math.min(d,Math.max(p,Math.ceil(Math.abs(_/k)))),v=1/b;for(let t=1;t<b;t++){const n=t*v,c=o*(1-n)+a*n;e.push([s+i*Math.cos(c),r+i*Math.sin(c)])}return e.push(y),(0,h.kb)(n,y)>f&&e.push([...n]),e}function S(e,t,n,s){return new m(t,n).densify(e,s)}function w(e,t,n,s){const r=(0,a.pM)(t,n),[i]=n.c;return _(e,t,i,r,s)}function k(e,t,n,s){const r=(0,u.io)(t,n),[i]=n.a;return _(e,t,i,r,s)}function b(e,t,n,s){const[r,i,o,a,c,u,l]=n.a;return 0===u||0===l?(e.push([...r]),e):new y(t,n).densify(e,s)}function v(e,t,n,s){return(0,c.Xq)(n)?(e.push([...n]),e):(0,c.n1)(n)?S(e,t,n,s):(0,c.aO)(n)?w(e,t,n,s):(0,c.DA)(n)?k(e,t,n,s):b(e,t,n,s)}function x(e,t={}){if(!(0,c.Ed)(e))return e;const n=p(t),s=(0,c.FD)(e),r=[];for(const e of s){const t=[];for(let s=0;s<e.length-1;s++){const r=s+1,i=[...(0,c.yP)(e[s])];0===s&&t.push(i),v(t,i,e[r],n)}r.push(t)}return"curvePaths"in e?{...void 0!==e.hasZ?{hasZ:e.hasZ}:{},...void 0!==e.hasM?{hasM:e.hasM}:{},paths:r,spatialReference:e.spatialReference}:{...void 0!==e.hasZ?{hasZ:e.hasZ}:{},...void 0!==e.hasM?{hasM:e.hasM}:{},rings:r,spatialReference:e.spatialReference}}const A=(0,r.B)(e=>({maxDeviation:0,maxSegmentLength:100*e,maxSegmentsPerCurve:12e3,minSegmentsPerCurve:1}));async function M(e,t,r){const o=new Set(t);return await async function(e,t,r){let i=null;for(const o of e)if(o&&(0,c.Ed)(o)&&null==o.spatialReference.xyTolerance&&(0,c.V8)(o,t)){const e=o.spatialReference;if(!e)throw new s.A("geometry:missing-spatial-reference","Geometry contains an unsupported curve type, but it cannot be densified because it has no spatial reference.");const t=R(e);if(r.has(t))o.spatialReference=r.get(t);else{i||(i=await Promise.all([n.e(9187),n.e(8885),n.e(5756),n.e(3299),n.e(1550)]).then(n.bind(n,78125)));const a=i.fromSpatialReference(e),c=a?.getTolerance();if(null==c)throw new s.A("geometry:missing-tolerance","Geometry contains an unsupported curve type, but it cannot be densified because the tolerance of its spatial reference is unknown. Set the `xyTolerance` property of the spatial reference.");const u=o.spatialReference.clone();u.read({xyTolerance:c}),o.spatialReference=u,r.set(t,u)}}}(e,o,r),e.map(e=>{if(!e||!(0,c.Ed)(e))return e;const n=e.spatialReference.xyTolerance;if(null==n)return e;const s=A(n);return(0,i.rS)(function(e,t,n){if(!(0,c.Ed)(e))return e;const s=new Set(t),r=p(n),i=(0,c.FD)(e),o=[];let a=!1;for(const e of i){const t=[];for(let n=0;n<e.length-1;n++){const i=n+1,o=[...(0,c.yP)(e[n])];0===n&&t.push(o);const u=e[i];(0,c.Xq)(u)?t.push([...u]):(0,c.n1)(u)&&!s.has("cubic-bezier")?S(t,o,u,r):(0,c.aO)(u)&&!s.has("circular-arc")?w(t,o,u,r):(0,c.DA)(u)&&!s.has("elliptic-arc")?k(t,o,u,r):(0,c.wY)(u)&&!s.has("elliptic-arc")?b(t,o,u,r):(t.push((0,c.tk)(u)),a=!0)}o.push(t)}return"curvePaths"in e?{...void 0!==e.hasZ?{hasZ:e.hasZ}:{},...void 0!==e.hasM?{hasM:e.hasM}:{},spatialReference:e.spatialReference,...a?{curvePaths:o}:{paths:o}}:{hasZ:e.hasZ,hasM:e.hasM,spatialReference:e.spatialReference,...a?{curveRings:o}:{rings:o}}}(e,t,s))})}function R(e){if(null!=e.wkid)return`${e.wkid}`;if(null!=e.wkt)return e.wkt;const t="toJSON"in e&&"function"==typeof e.toJSON?e.toJSON():e;return JSON.stringify(t)}},17136(e,t,n){n.d(t,{Y_:()=>P,O7:()=>C,el:()=>R});var s=n(92602),r=n(69052),i=n(49186),o=n(53966),a=n(39829),c=n(82799),u=n(16930),l=n(80754),h=n(21325),f=n(28735),d=n(52006),p=n(31411),g=n(11254),m=n(60408),y=n(65864),_=n(2272),S=n(84952),w=n(92300);const k=()=>o.A.getLogger("esri.geometry.support.normalizeUtils");function b(e){return"polygon"===e[0].type}function v(e){return"polyline"===e[0].type}function x(e,t,n){const s=1e6;if(t){const t=(0,d.Ed)(e)?(0,p.GS)(e,{maxSegmentLength:s}):function(e,t){if(!(e instanceof c.A||e instanceof a.A)){const e="straightLineDensify: the input geometry is neither polyline nor polygon";throw k().error(e),new i.A("internal:geometry",e)}const n=(0,l.r8)(e),s=[];for(const e of n){const n=[];s.push(n),n.push([e[0][0],e[0][1]]);for(let s=0;s<e.length-1;s++){const r=e[s][0],i=e[s][1],o=e[s+1][0],a=e[s+1][1],c=Math.sqrt((o-r)*(o-r)+(a-i)*(a-i)),u=(a-i)/c,l=(o-r)/c,h=c/t;if(h>1){for(let e=1;e<=h-1;e++){const s=e*t,o=l*s+r,a=u*s+i;n.push([o,a])}const e=(c+Math.floor(h-1)*t)/2,s=l*e+r,o=u*e+i;n.push([s,o])}n.push([o,a])}}return function(e){return"polygon"===e.type}(e)?new a.A({rings:s,spatialReference:e.spatialReference}):new c.A({paths:s,spatialReference:e.spatialReference})}(e,s);e=(0,f.ci)(t,!0)}return n&&(e=(0,l.kS)(e,n)),e}function A(e,t,n){if(Array.isArray(e)){const s=e[0];if(s>t){const n=(0,l.kd)(s,t);e[0]=s+n*(-2*t)}else if(s<n){const t=(0,l.kd)(s,n);e[0]=s+t*(-2*n)}}else{const s=e.x;if(s>t){const n=(0,l.kd)(s,t);e=e.clone().offset(n*(-2*t),0)}else if(s<n){const t=(0,l.kd)(s,n);e=e.clone().offset(t*(-2*n),0)}}return e}function M(e,t){let n=-1;for(let s=0;s<t.cutIndexes.length;s++){const r=t.cutIndexes[s],i=t.geometries[s],o=(0,l.r8)(i);for(let e=0;e<o.length;e++){const t=o[e];t.some(n=>{if(n[0]<180)return!0;{let n=0;for(let e=0;e<t.length;e++){const s=t[e][0];n=s>n?s:n}n=Number(n.toFixed(9));const s=-360*(0,l.kd)(n,180);for(let n=0;n<t.length;n++){const t=i.getPoint(e,n);i.setPoint(e,n,t.clone().offset(s,0))}return!0}})}if(r===n){if(b(e))for(const t of(0,l.r8)(i))e[r]=e[r].addRing(t);else if(v(e))for(const t of(0,l.r8)(i))e[r]=e[r].addPath(t)}else n=r,e[r]=i}return e}async function R(e,t,n){if(!Array.isArray(e))return R([e],t);t&&"string"!=typeof t&&k().warn("normalizeCentralMeridian()","The url object is deprecated, use the url string instead");const r="string"==typeof t?t:t?.url??s.A.geometryServiceUrl;let i,o,u,d,p,b,v,C,E=0;const P=[],F=[];for(const t of e)if(null!=t)if(i||(i=t.spatialReference,o=(0,h.Vp)(i),u=i.isWebMercator,b=u?102100:4326,d=l.j7[b].maxX,p=l.j7[b].minX,v=l.j7[b].plus180Line,C=l.j7[b].minus180Line),o)if("mesh"===t.type)F.push(t);else if("point"===t.type)F.push(A(t.clone(),d,p));else if("multipoint"===t.type){const e=t.clone();e.points=e.points.map(e=>A(e,d,p)),F.push(e)}else if("extent"===t.type){const e=t.clone()._normalize(!1,!1,o);F.push(e.rings?new a.A(e):e)}else if(t.extent){const e=t.extent,n=(0,l.kd)(e.xmin,p)*(2*d);let s=0===n?t.clone():(0,l.kS)(t.clone(),n);e.offset(n,0);let{xmin:r,xmax:i}=e;r=Number(r.toFixed(9)),i=Number(i.toFixed(9)),e.intersects(v)&&i!==d?(E=i>E?i:E,s=x(s,u),P.push(s),F.push("cut")):e.intersects(C)&&r!==p?(E=i*(2*d)>E?i*(2*d):E,s=x(s,u,360),P.push(s),F.push("cut")):F.push(s)}else F.push(t.clone());else F.push(t);else F.push(t);let T=(0,l.kd)(E,d),N=-90;const L=T,I=new c.A;for(;T>0;){const e=360*T-180;I.addPath([[e,N],[e,-1*N]]),N*=-1,T--}if(P.length>0&&L>0){const t=M(P,await async function(e,t,n,s){const r=(0,_.Dl)(e),i=t[0].spatialReference,o={...s,responseType:"json",query:{...r.query,f:"json",sr:(0,h.YX)(i),target:JSON.stringify({geometryType:(0,m.$B)(t[0]),geometries:t}),cutter:JSON.stringify(n)}},a=await(0,g.A)(r.path+"/cut",o),{cutIndexes:c,geometries:u=[]}=a.data;return{cutIndexes:c,geometries:u.map(e=>{const t=(0,y.rS)(e);return t.spatialReference=i,t})}}(r,P,I,n)),s=[],i=[];for(let n=0;n<F.length;n++){const r=F[n];if("cut"!==r)i.push(r);else{const r=t.shift(),o=e[n];null!=o&&"polygon"===o.type&&o.rings&&o.rings.length>1&&r.rings.length>=o.rings.length?(s.push(r),i.push("simplify")):i.push(u?(0,f.Gh)(r):r)}}if(!s.length)return i;const o=await async function(e,t,n){const s="string"==typeof e?(0,S.An)(e):e,r=t[0].spatialReference,i=(0,m.$B)(t[0]),o={...n,query:{...s.query,f:"json",sr:(0,h.YX)(r),geometries:JSON.stringify((0,w.X)(t))}},{data:a}=await(0,g.A)(s.path+"/simplify",o);return(0,w.V)(a.geometries,i,r)}(r,s,n),a=[];for(let e=0;e<i.length;e++){const t=i[e];"simplify"!==t?a.push(t):a.push(u?(0,f.Gh)(o.shift()):o.shift())}return a}const j=[];for(let e=0;e<F.length;e++){const t=F[e];if("cut"!==t)j.push(t);else{const e=P.shift();j.push(!0===u?(0,f.Gh)(e):e)}}return j}function C(e,t,n){const s=(0,h.Vp)(n);if(null==s)return e;const[r,i]=s.valid,o=2*i;let a=0,c=0;t>i?a=Math.ceil(Math.abs(t-i)/o):t<r&&(a=-Math.ceil(Math.abs(t-r)/o)),e>i?c=Math.ceil(Math.abs(e-i)/o):e<r&&(c=-Math.ceil(Math.abs(e-r)/o));let u=e+(a-c)*o;const l=u-t;return l>i?u-=o:l<r&&(u+=o),u}function E(e){const t=(0,h.Vp)(e);if(null==t)return null;const[n,s]=t.valid;return new r.hr(n,s)}const P=E(u.A.WGS84);E(u.A.WebMercator)},80754(e,t,n){n.d(t,{kS:()=>u,kd:()=>c,r8:()=>l});var s=n(82799),r=n(16930),i=n(60408),o=n(52006);const a={102100:{maxX:20037508.342788905,minX:-20037508.342788905,plus180Line:new s.A({paths:[[[20037508.342788905,-20037508.342788905],[20037508.342788905,20037508.342788905]]],spatialReference:r.A.WebMercator}),minus180Line:new s.A({paths:[[[-20037508.342788905,-20037508.342788905],[-20037508.342788905,20037508.342788905]]],spatialReference:r.A.WebMercator})},4326:{maxX:180,minX:-180,plus180Line:new s.A({paths:[[[180,-180],[180,180]]],spatialReference:r.A.WGS84}),minus180Line:new s.A({paths:[[[-180,-180],[-180,180]]],spatialReference:r.A.WGS84})}};function c(e,t){return Math.ceil((e-t)/(2*t))}function u(e,t){if((0,o.Ed)(e))for(const n of function(e){return(0,i.Bi)(e)?e.curveRings:e.curvePaths}(e))for(const e of n){if((0,o.aO)(e)){const[n,s]=e.c;n[0]+=t,s[0]+=t;continue}if((0,o.FG)(e)){const[n,s]=e.a;n[0]+=t,s[0]+=t;continue}if((0,o.n1)(e)){const[n,s,r]=e.b;n[0]+=t,s[0]+=t,r[0]+=t;continue}e[0]+=t}for(const n of l(e))for(const e of n)e[0]+=t;return e}function l(e){return(0,i.Bi)(e)?e.rings:e.paths}n.d(t,["j7",0,a])},31464(e,t,n){n.d(t,{Cv:()=>p,Nk:()=>h,lK:()=>m});var s=n(4576),r=n(91218),i=n(21325),o=n(28735);const a=[0,0];function c(e,t){if(!t)return null;if("x"in t){const n={x:0,y:0};return[n.x,n.y]=e(t.x,t.y,a),null!=t.z&&(n.z=t.z),null!=t.m&&(n.m=t.m),n}if("xmin"in t){const n={xmin:0,ymin:0,xmax:0,ymax:0};return[n.xmin,n.ymin]=e(t.xmin,t.ymin,a),[n.xmax,n.ymax]=e(t.xmax,t.ymax,a),t.hasZ&&(n.zmin=t.zmin,n.zmax=t.zmax,n.hasZ=!0),t.hasM&&(n.mmin=t.mmin,n.mmax=t.mmax,n.hasM=!0),n}return"rings"in t?{rings:u(t.rings,e),hasM:t.hasM,hasZ:t.hasZ}:"paths"in t?{paths:u(t.paths,e),hasM:t.hasM,hasZ:t.hasZ}:"points"in t?{points:l(t.points,e),hasM:t.hasM,hasZ:t.hasZ}:null}function u(e,t){const n=[];for(const s of e)n.push(l(s,t));return n}function l(e,t){const n=[];for(const s of e){const e=t(s[0],s[1],[0,0]);n.push(e),s.length>2&&e.push(s[2]),s.length>3&&e.push(s[3])}return n}async function h(e,t){if(!e||!t)return;const n=Array.isArray(e)?e.map(e=>null!=e.geometry?e.geometry.spatialReference:null).filter(s.Ru):[e];await(0,r.initializeProjection)(n.map(e=>({source:e,dest:t})))}const f=c.bind(null,o.je),d=c.bind(null,o.tD);function p(e,t,n,s){if(!e)return null;if(n||(n=t,t=e.spatialReference),!(0,i.fn)(t)||!(0,i.fn)(n)||(0,i.aI)(t,n))return e;if((0,o.y7)(t,n)){const t=(0,i.K8)(n)?f(e):d(e);return t.spatialReference=n,t}return(0,r.projectMany)([e],t,n,s)[0]}const g=new class{constructor(){this._jobs=[],this._timer=null,this._process=this._process.bind(this)}async push(e,t,n,s){if(!e?.length||!t||!n||(0,i.aI)(t,n))return e;const r={geometries:e,inSpatialReference:t,outSpatialReference:n,options:s,resolve:Promise.withResolvers()};return this._jobs.push(r),this._timer??=setTimeout(this._process,10),r.resolve.promise}_process(){this._timer=null;const e=this._jobs.shift();if(!e)return;const{geometries:t,inSpatialReference:n,outSpatialReference:s,resolve:a,options:c}=e,u=t.filter(e=>null!=e);let l;l=(0,o.y7)(n,s)&&null==c?.extendedParams?(0,i.K8)(s)?u.map(f):u.map(d):(0,r.projectMany)(u,n,s,c);let h=0;const p=t.map(e=>null==e?null:l[h++]);a.resolve(p),this._jobs.length>0&&(this._timer=setTimeout(this._process,10))}};function m(e,t,n,s){return g.push(e,t,n,s)}},60986(e,t,n){n.r(t),n.d(t,{createConnection:()=>C});var s=n(11254),r=n(49186),i=n(31464),o=n(9916),a=n(5482),c=n(65529),u=n(91429);let l=class extends c.nJ{destroy(){this.emit("destroy")}get connectionError(){return this.errorString?new r.A("stream-connection",this.errorString):null}onFeature(e){this.emit("data-received",e)}onMessage(e){this.emit("message-received",e)}};(0,a.Cg)([(0,u.MZ)({readOnly:!0})],l.prototype,"connectionError",null),l=(0,a.Cg)([(0,u.$K)("esri.layers.support.StreamConnection")],l);class h extends l{constructor(e,t){super(),this._config=e,this._outSpatialReference=t,this.connectionStatus="connected",this.errorString=null,this._isPolling=!1,this._lastIngestedAt=null,this._pollTimer=null,this._pollRecentData=async()=>{if(!this.destroyed&&!this._isPolling){this._isPolling=!0;try{const e=await this._queryChanges(this._lastIngestedAt);if(this.destroyed)return;this._handleResult(e)}catch(e){this.errorString=e instanceof Error?e.message:"Failed to fetch"}finally{this._isPolling=!1}}},this._initialize()}destroy(){super.destroy(),this._pollTimer&&(clearInterval(this._pollTimer),this._pollTimer=null)}sendMessageToSocket(e){throw new r.A("kusto:unsupported","sendMessageToSocket not supported for Kusto connections")}sendMessageToClient(e){throw new r.A("kusto:unsupported","sendMessageToClient not supported for Kusto connections")}updateCustomParameters(e){throw new r.A("kusto:unsupported","updateCustomParameters not supported for Kusto connections")}async _initialize(){await(0,i.Nk)(this._config.sourceSpatialReference,this._outSpatialReference);try{const e=await this._queryInitial();this._handleResult(e),this._pollTimer=setInterval(this._pollRecentData,6e4*this._config.refreshInterval)}catch{throw new r.A("kusto:connection","Failed to query KQL database")}}async _queryInitial(){const{trackIdField:e}=this._config,t=f(await this._executeQuery(`${(0,o.xw)(this._config.table)} | extend IngestedAt = ingestion_time() | summarize arg_max(IngestedAt, *) by ${(0,o.xw)(e)}`));if(!t)throw new r.A("kusto:connection","Unable to find primaryTable");return{ingestedAt:d(t),table:t}}async _queryChanges(e=null){const t=e??"1970-01-01T00:00:00Z",n=f(await this._executeQuery(`${(0,o.xw)(this._config.table)} | extend IngestedAt = ingestion_time() | where IngestedAt > todatetime('${(0,o.iD)(t)}') | order by IngestedAt asc`));if(!n)throw new r.A("kusto:connection","Unable to find primaryTable");return{ingestedAt:d(n),table:n}}async _executeQuery(e){const t=this._config.database,n=t.properties.queryServiceUri,{data:r}=await(0,s.A)(`${n}/v2/rest/query`,{responseType:"json",method:"post",headers:{"Content-Type":"application/json"},body:JSON.stringify({db:t.displayName,csl:e})});return r}_handleResult(e){this._lastIngestedAt=e.ingestedAt;const t=this._createFeatures(e.table);if(null!=t){this.onMessage(t);for(const e of t)this.onFeature(e)}}_createFeatures(e){if(null==e||0===e.Rows.length)return null;const{xField:t,yField:n}=this._config.geometryEncoding,s=e.Columns.findIndex(e=>e.ColumnName===t),r=e.Columns.findIndex(e=>e.ColumnName===n);return e.Rows.map(t=>this._createFeature(e.Columns,s,r,t))}_createFeature(e,t,n,s){const{xField:r,yField:o}=this._config.geometryEncoding,a={};for(let t=0;t<e.length;t++){const n=e[t],i=s[t]??null;n.ColumnName!==o&&n.ColumnName!==r&&(a[n.ColumnName]=i)}let c=null;const u=s[t],l=s[n];return null!=l&&null!=u&&(c=(0,i.Cv)({x:u,y:l},this._config.sourceSpatialReference,this._outSpatialReference)),{attributes:a,geometry:c}}}function f(e){return e.find(e=>"DataTable"===e.FrameType&&"PrimaryResult"===e.TableKind)??null}function d(e){const t=e.Columns.findIndex(e=>"IngestedAt"===e.ColumnName);if(t<0)return null;let n=null;for(const s of e.Rows){const e=s[t];"string"==typeof e&&(null==n||e>n)&&(n=e)}return n}var p=n(53966),g=n(84952),m=n(16930),y=n(65864),_=n(17676),S=n(62815);function w(e,t){if(null==e&&null==t)return null;const n={};return null!=t&&(n.geometry=t),null!=e&&(n.where=e),n}let k=class extends l{constructor(e,t){super({}),this._outSpatialReference=t,this._outstandingMessages=[],this.errorString=null;const{geometryType:n,sourceSpatialReference:s}=e;this._config=e,this._featureZScaler=(0,S.N)(n,s,this._outSpatialReference),this._open()}normalizeCtorArgs(){return{}}async _open(){await this._tryCreateWebSocket(),this.destroyed||await this._handshake()}destroy(){super.destroy(),null!=this._websocket&&(this._websocket.onopen=null,this._websocket.onclose=null,this._websocket.onerror=null,this._websocket.onmessage=null,this._websocket.close()),this._websocket=null}get connectionStatus(){if(null==this._websocket)return"disconnected";switch(this._websocket.readyState){case 0:case 1:return"connected";case 2:case 3:return"disconnected"}}sendMessageToSocket(e){null!=this._websocket?this._websocket.send(JSON.stringify(e)):this._outstandingMessages.push(e)}sendMessageToClient(e){this._onMessage(e)}updateCustomParameters(e){this._config.customParameters=e,null!=this._websocket&&this._websocket.close()}async _tryCreateWebSocket(e=this._config.url.path,t=1e3,n=0){try{if(this.destroyed)return;const t=(0,g.a6)(e,this._config.customParameters??{});this._websocket=await this._createWebSocket(t),this.notifyChange("connectionStatus")}catch(s){const i=t/1e3;return this._config.maxReconnectionAttempts&&n>=this._config.maxReconnectionAttempts?(p.A.getLogger(this).error(new r.A("websocket-connection","Exceeded maxReconnectionAttempts attempts. No further attempts will be made")),void this.destroy()):(p.A.getLogger(this).error(new r.A("websocket-connection",`Failed to connect. Attempting to reconnect in ${i}s`,s)),await(0,_.Pl)(t),this._tryCreateWebSocket(e,Math.min(1.5*t,1e3*this._config.maxReconnectionInterval),n+1))}}_setWebSocketJSONParseHandler(e){e.onmessage=e=>{try{const t=JSON.parse(e.data);this._onMessage(t)}catch(e){return void p.A.getLogger(this).error(new r.A("websocket-connection","Failed to parse message, invalid JSON",{error:e}))}}}_createWebSocket(e){return new Promise((t,n)=>{const s=new WebSocket(e);s.onopen=()=>{if(s.onopen=null,this.destroyed)return s.onclose=null,void s.close();s.onclose=e=>this._onClose(e),s.onerror=e=>this._onError(e),this._setWebSocketJSONParseHandler(s),t(s)},s.onclose=e=>{s.onopen=s.onclose=null,n(e)}})}async _handshake(e=1e4){const t=this._websocket;if(null==t)return;const n=Promise.withResolvers(),s=t.onmessage,i=w(this._config.definitionExpression,this._config.geometryDefinition),{outFields:o}=this._config,a=setTimeout(()=>n.reject(),e),c=()=>{clearTimeout(a),n.reject()};return t.onmessage=e=>{let u=null;try{u=JSON.parse(e.data)}catch(e){}u&&"object"==typeof u||(p.A.getLogger(this).error(new r.A("websocket-connection","Protocol violation. Handshake failed - malformed message",e.data)),c(),this.destroy()),u.spatialReference?.wkid!==this._outSpatialReference?.wkid&&(p.A.getLogger(this).error(new r.A("websocket-connection",`Protocol violation. Handshake failed - expected wkid of ${this._outSpatialReference.wkid}`,e.data)),c(),this.destroy()),"json"!==u.format&&(p.A.getLogger(this).error(new r.A("websocket-connection","Protocol violation. Handshake failed - format is not set",e.data)),c(),this.destroy()),i&&u.filter!==i&&p.A.getLogger(this).error(new r.A("websocket-connection","Tried to set filter, but server doesn't support it")),o&&u.outFields!==o&&p.A.getLogger(this).error(new r.A("websocket-connection","Tried to set outFields, but server doesn't support it")),t.onmessage=s;for(const e of this._outstandingMessages)t.send(JSON.stringify(e));this._outstandingMessages=[],clearTimeout(a),n.resolve()},t.send(JSON.stringify({filter:i,outFields:o,format:"json",spatialReference:{wkid:this._outSpatialReference.wkid}})),n.promise}_onMessage(e){if(this.onMessage(e),"type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}}_onError(e){const t="Encountered an error over WebSocket connection";this._set("errorString",t),p.A.getLogger(this).error("websocket-connection",t)}_onClose(e){this._websocket=null,this.notifyChange("connectionStatus"),1e3!==e.code&&p.A.getLogger(this).error("websocket-connection",`WebSocket closed unexpectedly with error code ${e.code}`),this.destroyed||this._open()}};(0,a.Cg)([(0,u.MZ)()],k.prototype,"connectionStatus",null),(0,a.Cg)([(0,u.MZ)()],k.prototype,"errorString",void 0),k=(0,a.Cg)([(0,u.$K)("esri.layers.graphics.sources.connections.WebSocketConnection")],k);var b=n(80893),v=n(97552);const x={maxQueryDepth:5,maxRecordCountFactor:3};let A=class extends k{constructor(e,t){super({...x,...e},t),this._buddyServicesQuery=null,this._relatedFeatures=null}async _open(){const e=await this._fetchServiceDefinition(this._config.url);e.timeInfo.trackIdField||p.A.getLogger(this).warn("GeoEvent service was configured without a TrackIdField. This may result in certain functionality being disabled. The purgeOptions.maxObservations property will have no effect.");const t=this._fetchWebSocketUrl(e.streamUrls,this._outSpatialReference);this._buddyServicesQuery||(this._buddyServicesQuery=this._queryBuddyServices()),await this._buddyServicesQuery,await this._tryCreateWebSocket(t);const n=w(this._config.definitionExpression,this._config.geometryDefinition),{outFields:s}=this._config;this.destroyed||this._setFilter(n,s)}_onMessage(e){if("attributes"in e){let t;try{t=this._enrich(e),null!=this._featureZScaler&&this._featureZScaler(t.geometry)}catch(e){return void p.A.getLogger(this).error(new r.A("geoevent-connection","Failed to parse message",e))}this.onFeature(t)}else this.onMessage(e)}async _fetchServiceDefinition(e){const t={f:"json",...this._config.customParameters},n=(0,s.A)(e.path,{query:t,responseType:"json"}),r=(await n).data;return this._serviceDefinition=r,r}_fetchWebSocketUrl(e,t){const n=e[0],{urls:s,token:r}=n,i=this._inferWebSocketBaseUrl(s);return(0,g.a6)(`${i}/subscribe`,{outSR:""+t.wkid,token:r})}_inferWebSocketBaseUrl(e){if(1===e.length)return e[0];for(const t of e)if(t.includes("wss"))return t;return p.A.getLogger(this).error(new r.A("geoevent-connection","Unable to infer WebSocket url",e)),null}async _setFilter(e,t){const n=this._websocket;if(null==n||null==e&&null==t)return;const s=JSON.stringify({filter:this._serializeFilter(e,t)});let i=!1;const o=Promise.withResolvers();return n.onmessage=e=>{const t=JSON.parse(e.data);t.filter&&(t.error&&(p.A.getLogger(this).error(new r.A("geoevent-connection","Failed to set service filter",t.error)),this._set("errorString",`Could not set service filter - ${t.error}`),o.reject(t.error)),this._setWebSocketJSONParseHandler(n),i=!0,o.resolve())},n.send(s),setTimeout(()=>{i||(this.destroyed||this._websocket!==n||p.A.getLogger(this).error(new r.A("geoevent-connection","Server timed out when setting filter")),o.reject())},1e4),o.promise}_serializeFilter(e,t){const n={};if(null==e&&null==t)return n;if(e?.geometry)try{const t=(0,y.rS)(e.geometry);if("extent"!==t.type)throw new r.A("geoevent-connection",`Expected extent but found type ${t.type}`);n.geometry=JSON.stringify(t.shiftCentralMeridian())}catch(e){p.A.getLogger(this).error(new r.A("geoevent-connection","Encountered an error when setting connection geometryDefinition",e))}return e?.where&&"1 = 1"!==e.where&&"1=1"!==e.where&&(n.where=e.where),null!=t&&(n.outFields=t.join(",")),n}_enrich(e){if(!this._relatedFeatures)return e;const t=this._serviceDefinition.relatedFeatures.joinField,n=e.attributes[t],s=this._relatedFeatures.get(n);if(!s)return p.A.getLogger(this).warn("geoevent-connection","Feature join failed. Is the join field configured correctly?",e),e;const{attributes:i,geometry:o}=s;for(const t in i)e.attributes[t]=i[t];return o&&(e.geometry=o),e.geometry||e.centroid||p.A.getLogger(this).error(new r.A("geoevent-connection","Found malformed feature - no geometry found",e)),e}async _queryBuddyServices(){try{const{relatedFeatures:e,keepLatestArchive:t}=this._serviceDefinition,n=this._queryRelatedFeatures(e),s=this._queryArchive(t);await n;const r=await s;if(!r)return;for(const e of r.features)this.onFeature(this._enrich(e))}catch(e){p.A.getLogger(this).error(new r.A("geoevent-connection","Encountered an error when querying buddy services",{error:e}))}}async _queryRelatedFeatures(e){if(!e)return;const t=await this._queryBuddy(e.featuresUrl);this._addRelatedFeatures(t)}async _queryArchive(e){if(e)return this._queryBuddy(e.featuresUrl)}async _queryBuddy(e){const t=new((await Promise.all([n.e(7632),n.e(8278),n.e(7865),n.e(9953),n.e(6554),n.e(2869),n.e(3910),n.e(564),n.e(1214),n.e(2889),n.e(1017),n.e(500),n.e(4674),n.e(993),n.e(4333),n.e(3781),n.e(812),n.e(3470),n.e(958)]).then(n.bind(n,53781))).default)({url:e}),{capabilities:s}=await t.load(),r=s.query.supportsMaxRecordCountFactor,i=s.query.supportsPagination,o=s.query.supportsCentroid,a=this._config.maxRecordCountFactor,c=t.capabilities.query.maxRecordCount,u=r?c*a:c,l=new v.A;if(l.outFields=this._config.outFields??["*"],l.where=this._config.definitionExpression??"1=1",l.returnGeometry=!0,l.returnExceededLimitFeatures=!0,l.outSpatialReference=m.A.fromJSON(this._outSpatialReference),o&&(l.returnCentroid=!0),r&&(l.maxRecordCountFactor=a),i)return l.num=u,t.destroy(),this._queryPages(e,l);const h=await(0,b.eW)(e,l,this._config.sourceSpatialReference);return t.destroy(),h}async _queryPages(e,t,n=[],s=0){t.start=null!=t.num?s*t.num:null;const r=await(0,b.eW)(e,t,this._config.sourceSpatialReference);return r.exceededTransferLimit&&s<(this._config.maxQueryDepth??0)?(r.features.forEach(e=>n.push(e)),this._queryPages(e,t,n,s+1)):(n.forEach(e=>r.features.push(e)),r)}_addRelatedFeatures(e){const t=new Map,n=e.features,s=this._serviceDefinition.relatedFeatures.joinField;for(const e of n){const n=e.attributes[s];t.set(n,e)}this._relatedFeatures=t}};A=(0,a.Cg)([(0,u.$K)("esri.layers.graphics.sources.connections.GeoEventConnection")],A);var M=n(64108);let R=class extends l{constructor(e,t){super({}),this.connectionStatus="connected",this.errorString=null;const{geometryType:n,sourceSpatialReference:s}=e;this._featureZScaler=(0,S.N)(n,s,t)}normalizeCtorArgs(){return{}}updateCustomParameters(e){}sendMessageToSocket(e){}sendMessageToClient(e){if("type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}this.onMessage(e)}};function C(e,t){const n=t.toJSON();switch(e.type){case"client":return new R(e,n);case"custom":return new k(e,n);case"geoevent":return new A(e,n);case"kusto":return new h(e,n)}}(0,a.Cg)([(0,u.MZ)()],R.prototype,"connectionStatus",void 0),(0,a.Cg)([(0,u.MZ)()],R.prototype,"errorString",void 0),R=(0,a.Cg)([(0,M.$)("esri.layers.support.ClientSideConnection")],R)},92300(e,t,n){n.d(t,{V:()=>o,X:()=>i});var s=n(60408),r=n(65864);function i(e){return{geometryType:(0,s.$B)(e[0]),geometries:e.map(e=>e.toJSON())}}function o(e,t,n){const s=(0,r.xD)(t);return e.map(e=>{const t=s.fromJSON(e);return t.spatialReference=n,t})}}}]);
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[6465],{69052(e,t,n){n.d(t,{hr:()=>r});var s=n(34727);class r{constructor(e,t){this.min=e,this.max=t,this.range=t-e}normalize(e,t=0,n=!1){return i(this.range,this.min,this.max,e,t,n)}clamp(e,t=0){return(0,s.qE)(e-t,this.min,this.max)+t}monotonic(e,t,n){return e<t?t:t+o(this.range,e-t,n)}minimalMonotonic(e,t,n){return i(this.range,e,e+this.range,t,n)}center(e,t,n){return t=this.monotonic(e,t,n),this.normalize((e+t)/2,n)}diff(e,t,n){return this.monotonic(e,t,n)-e}shortestSignedDiff(e,t){e=this.normalize(e);const n=(t=this.normalize(t))-e,s=t<e?this.minimalMonotonic(e,t)-e:t-this.minimalMonotonic(t,e);return Math.abs(n)<Math.abs(s)?n:s}contains(e,t,n){return t=this.minimalMonotonic(e,t),(n=this.minimalMonotonic(e,n))>e&&n<t}}function i(e,t,n,s,r=0,i=!1){return(s-=r)<t?s+=o(e,t-s):s>n&&(s-=o(e,s-n)),i&&s===n&&(s=t),s+r}function o(e,t,n=0){return Math.ceil((t-n)/e)*e+n}const a=new r(0,2*Math.PI),c=(new r(-Math.PI,Math.PI),new r(0,360));n.d(t,["ie",0,c,"uC",0,a])},56512(e,t,n){function s(e){let t,n,s=[],r=!1;return function(...i){return r&&t===this&&function(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;++n)if(e[n]!==t[n])return!1;return!0}(i,s)||(n=e.apply(this,i),t=this,s=i,r=!0),n}}n.d(t,{B:()=>s})},31411(e,t,n){n.d(t,{GS:()=>x,gh:()=>M});var s=n(49186),r=n(56512),i=n(65864),o=n(4305),a=n(50954),c=n(52006),u=n(49663),l=n(46068),h=n(15507);const f=1e-6,d=[0,0];function p(e){return{maxSegmentLength:e.maxSegmentLength??0,maxDeviation:e.maxDeviation??0,maxSegmentsPerCurve:e.maxSegmentsPerCurve??12e3,minSegmentsPerCurve:Math.max(e.minSegmentsPerCurve??1,1)}}class g{constructor(e,t){this.curveStart=e,this.curveEnd=t,this.tStart=0,this.tEnd=0,this.tEndStack=[],this.arcEndStack=[]}get stackSize(){return this.tEndStack.length}initialize(e,t){this.tStart=0,this.arcStart=e,this.tEndStack.push(1),this.arcEndStack.push(t)}splitAt(e){this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this.tEndStack.push(e),this.arcEndStack.push(this.interpolate(e))}splitInHalf(){return this.splitAt((this.tStart+this.tEnd)/2)}pop(){this.tEnd=this.tEndStack.pop(),this.arcEnd=this.arcEndStack.pop()}next(){this.tStart=this.tEnd,this.arcStart=this.arcEnd}densify(e,{maxDeviation:t,maxSegmentLength:n,maxSegmentsPerCurve:s,minSegmentsPerCurve:r}){const i=n*n,o=t*t,a=1/s,c=this.interpolate(0),u=this.interpolate(1);(0,h.kb)(this.curveStart,c)>f&&e.push(c),this.initialize(c,u);const l=1/r;for(let e=r-1;e>0;e--){const t=e*l;this.pop(),this.splitAt(t)}for(;this.stackSize>0;)this.pop(),this.tStart===this.tEnd||this.tEnd-this.tStart<a||(0===i||!isFinite(i)||(0,h.kb)(this.arcStart,this.arcEnd)<i)&&(0===o||!isFinite(o)||this.getDeviation2()<o)?(e.push(this.arcEnd),this.next()):this.splitInHalf();return(0,h.kb)(this.curveEnd,u)>f&&e.push([...this.curveEnd]),e}}class m extends g{constructor(e,t){const[n,s,r]=t.b;super(e,n),this._controlPointsStack=[],this._curveControlPoints=[s,r],this._arcControlPoints=[s,r],this._controlPointsStack.push(this._arcControlPoints)}splitAt(e){const{arcStart:t,arcEnd:n,tStart:s,tEnd:r}=this,[i,o]=this._arcControlPoints,a=(e-s)/(r-s),c=(0,h.RS)([],t,i,a),u=(0,h.RS)(d,i,o,a),l=(0,h.RS)([],o,n,a),f=(0,h.RS)([],c,u,a),p=(0,h.RS)([],u,l,a),g=(0,h.RS)([],f,p,a);this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this._controlPointsStack.push([p,l]),this.tEndStack.push(e),this.arcEndStack.push(g),this._arcControlPoints[0]=c,this._arcControlPoints[1]=f,this._controlPointsStack.push(this._arcControlPoints)}pop(){super.pop(),this._arcControlPoints=this._controlPointsStack.pop()}interpolate(e){const{curveStart:t,curveEnd:n}=this,[s,r]=this._curveControlPoints;return(0,o.B4)(t,s,r,n,e)}getDeviation2(){const{arcStart:e,arcEnd:t}=this,[n,s]=this._arcControlPoints;return Math.max((0,h.yE)(n,e,t),(0,h.yE)(s,e,t))}}class y extends g{constructor(e,t){const[n]=t.a;super(e,n),this._derivedEllipse=(0,l.SW)(e,t)}pop(){super.pop(),this._tMid=(this.tStart+this.tEnd)/2,this._arcMid=this.interpolate(this._tMid)}splitInHalf(){this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this.tEndStack.push(this._tMid),this.arcEndStack.push(this._arcMid)}interpolate(e){return(0,l.Uk)(this._derivedEllipse,e)}getDeviation2(){return(0,h.yE)(this._arcMid,this.arcStart,this.arcEnd)}}function _(e,t,n,{cx:s,cy:r,radius:i,thetaStart:o,thetaEnd:a,isInvalid:c},{maxDeviation:u,maxSegmentLength:l,maxSegmentsPerCurve:d,minSegmentsPerCurve:p}){if(c)return e.push([...n]),e;const g=2*i,m=[s+i*Math.cos(o),r+i*Math.sin(o)],y=[s+i*Math.cos(a),r+i*Math.sin(a)];(0,h.kb)(t,m)>f&&e.push(m);const _=Math.abs(a-o),S=l>0&&l<g?2*Math.asin(l/g):_,w=u>0&&u<=i?2*Math.acos(1-u/i):_,k=Math.min(S,w),b=Math.min(d,Math.max(p,Math.ceil(Math.abs(_/k)))),v=1/b;for(let t=1;t<b;t++){const n=t*v,c=o*(1-n)+a*n;e.push([s+i*Math.cos(c),r+i*Math.sin(c)])}return e.push(y),(0,h.kb)(n,y)>f&&e.push([...n]),e}function S(e,t,n,s){return new m(t,n).densify(e,s)}function w(e,t,n,s){const r=(0,a.pM)(t,n),[i]=n.c;return _(e,t,i,r,s)}function k(e,t,n,s){const r=(0,u.io)(t,n),[i]=n.a;return _(e,t,i,r,s)}function b(e,t,n,s){const[r,i,o,a,c,u,l]=n.a;return 0===u||0===l?(e.push([...r]),e):new y(t,n).densify(e,s)}function v(e,t,n,s){return(0,c.Xq)(n)?(e.push([...n]),e):(0,c.n1)(n)?S(e,t,n,s):(0,c.aO)(n)?w(e,t,n,s):(0,c.DA)(n)?k(e,t,n,s):b(e,t,n,s)}function x(e,t={}){if(!(0,c.Ed)(e))return e;const n=p(t),s=(0,c.FD)(e),r=[];for(const e of s){const t=[];for(let s=0;s<e.length-1;s++){const r=s+1,i=[...(0,c.yP)(e[s])];0===s&&t.push(i),v(t,i,e[r],n)}r.push(t)}return"curvePaths"in e?{...void 0!==e.hasZ?{hasZ:e.hasZ}:{},...void 0!==e.hasM?{hasM:e.hasM}:{},paths:r,spatialReference:e.spatialReference}:{...void 0!==e.hasZ?{hasZ:e.hasZ}:{},...void 0!==e.hasM?{hasM:e.hasM}:{},rings:r,spatialReference:e.spatialReference}}const A=(0,r.B)(e=>({maxDeviation:0,maxSegmentLength:100*e,maxSegmentsPerCurve:12e3,minSegmentsPerCurve:1}));async function M(e,t,r){const o=new Set(t);return await async function(e,t,r){let i=null;for(const o of e)if(o&&(0,c.Ed)(o)&&null==o.spatialReference.xyTolerance&&(0,c.V8)(o,t)){const e=o.spatialReference;if(!e)throw new s.A("geometry:missing-spatial-reference","Geometry contains an unsupported curve type, but it cannot be densified because it has no spatial reference.");const t=R(e);if(r.has(t))o.spatialReference=r.get(t);else{i||(i=await Promise.all([n.e(9187),n.e(8885),n.e(5756),n.e(3299),n.e(1550)]).then(n.bind(n,78125)));const a=i.fromSpatialReference(e),c=a?.getTolerance();if(null==c)throw new s.A("geometry:missing-tolerance","Geometry contains an unsupported curve type, but it cannot be densified because the tolerance of its spatial reference is unknown. Set the `xyTolerance` property of the spatial reference.");const u=o.spatialReference.clone();u.read({xyTolerance:c}),o.spatialReference=u,r.set(t,u)}}}(e,o,r),e.map(e=>{if(!e||!(0,c.Ed)(e))return e;const n=e.spatialReference.xyTolerance;if(null==n)return e;const s=A(n);return(0,i.rS)(function(e,t,n){if(!(0,c.Ed)(e))return e;const s=new Set(t),r=p(n),i=(0,c.FD)(e),o=[];let a=!1;for(const e of i){const t=[];for(let n=0;n<e.length-1;n++){const i=n+1,o=[...(0,c.yP)(e[n])];0===n&&t.push(o);const u=e[i];(0,c.Xq)(u)?t.push([...u]):(0,c.n1)(u)&&!s.has("cubic-bezier")?S(t,o,u,r):(0,c.aO)(u)&&!s.has("circular-arc")?w(t,o,u,r):(0,c.DA)(u)&&!s.has("elliptic-arc")?k(t,o,u,r):(0,c.wY)(u)&&!s.has("elliptic-arc")?b(t,o,u,r):(t.push((0,c.tk)(u)),a=!0)}o.push(t)}return"curvePaths"in e?{...void 0!==e.hasZ?{hasZ:e.hasZ}:{},...void 0!==e.hasM?{hasM:e.hasM}:{},spatialReference:e.spatialReference,...a?{curvePaths:o}:{paths:o}}:{hasZ:e.hasZ,hasM:e.hasM,spatialReference:e.spatialReference,...a?{curveRings:o}:{rings:o}}}(e,t,s))})}function R(e){if(null!=e.wkid)return`${e.wkid}`;if(null!=e.wkt)return e.wkt;const t="toJSON"in e&&"function"==typeof e.toJSON?e.toJSON():e;return JSON.stringify(t)}},17136(e,t,n){n.d(t,{Y_:()=>P,O7:()=>C,el:()=>R});var s=n(92602),r=n(69052),i=n(49186),o=n(53966),a=n(39829),c=n(82799),u=n(16930),l=n(80754),h=n(21325),f=n(28735),d=n(52006),p=n(31411),g=n(11254),m=n(60408),y=n(65864),_=n(2272),S=n(84952),w=n(92300);const k=()=>o.A.getLogger("esri.geometry.support.normalizeUtils");function b(e){return"polygon"===e[0].type}function v(e){return"polyline"===e[0].type}function x(e,t,n){const s=1e6;if(t){const t=(0,d.Ed)(e)?(0,p.GS)(e,{maxSegmentLength:s}):function(e,t){if(!(e instanceof c.A||e instanceof a.A)){const e="straightLineDensify: the input geometry is neither polyline nor polygon";throw k().error(e),new i.A("internal:geometry",e)}const n=(0,l.r8)(e),s=[];for(const e of n){const n=[];s.push(n),n.push([e[0][0],e[0][1]]);for(let s=0;s<e.length-1;s++){const r=e[s][0],i=e[s][1],o=e[s+1][0],a=e[s+1][1],c=Math.sqrt((o-r)*(o-r)+(a-i)*(a-i)),u=(a-i)/c,l=(o-r)/c,h=c/t;if(h>1){for(let e=1;e<=h-1;e++){const s=e*t,o=l*s+r,a=u*s+i;n.push([o,a])}const e=(c+Math.floor(h-1)*t)/2,s=l*e+r,o=u*e+i;n.push([s,o])}n.push([o,a])}}return function(e){return"polygon"===e.type}(e)?new a.A({rings:s,spatialReference:e.spatialReference}):new c.A({paths:s,spatialReference:e.spatialReference})}(e,s);e=(0,f.ci)(t,!0)}return n&&(e=(0,l.kS)(e,n)),e}function A(e,t,n){if(Array.isArray(e)){const s=e[0];if(s>t){const n=(0,l.kd)(s,t);e[0]=s+n*(-2*t)}else if(s<n){const t=(0,l.kd)(s,n);e[0]=s+t*(-2*n)}}else{const s=e.x;if(s>t){const n=(0,l.kd)(s,t);e=e.clone().offset(n*(-2*t),0)}else if(s<n){const t=(0,l.kd)(s,n);e=e.clone().offset(t*(-2*n),0)}}return e}function M(e,t){let n=-1;for(let s=0;s<t.cutIndexes.length;s++){const r=t.cutIndexes[s],i=t.geometries[s],o=(0,l.r8)(i);for(let e=0;e<o.length;e++){const t=o[e];t.some(n=>{if(n[0]<180)return!0;{let n=0;for(let e=0;e<t.length;e++){const s=t[e][0];n=s>n?s:n}n=Number(n.toFixed(9));const s=-360*(0,l.kd)(n,180);for(let n=0;n<t.length;n++){const t=i.getPoint(e,n);i.setPoint(e,n,t.clone().offset(s,0))}return!0}})}if(r===n){if(b(e))for(const t of(0,l.r8)(i))e[r]=e[r].addRing(t);else if(v(e))for(const t of(0,l.r8)(i))e[r]=e[r].addPath(t)}else n=r,e[r]=i}return e}async function R(e,t,n){if(!Array.isArray(e))return R([e],t);t&&"string"!=typeof t&&k().warn("normalizeCentralMeridian()","The url object is deprecated, use the url string instead");const r="string"==typeof t?t:t?.url??s.A.geometryServiceUrl;let i,o,u,d,p,b,v,C,E=0;const P=[],F=[];for(const t of e)if(null!=t)if(i||(i=t.spatialReference,o=(0,h.Vp)(i),u=i.isWebMercator,b=u?102100:4326,d=l.j7[b].maxX,p=l.j7[b].minX,v=l.j7[b].plus180Line,C=l.j7[b].minus180Line),o)if("mesh"===t.type)F.push(t);else if("point"===t.type)F.push(A(t.clone(),d,p));else if("multipoint"===t.type){const e=t.clone();e.points=e.points.map(e=>A(e,d,p)),F.push(e)}else if("extent"===t.type){const e=t.clone()._normalize(!1,!1,o);F.push(e.rings?new a.A(e):e)}else if(t.extent){const e=t.extent,n=(0,l.kd)(e.xmin,p)*(2*d);let s=0===n?t.clone():(0,l.kS)(t.clone(),n);e.offset(n,0);let{xmin:r,xmax:i}=e;r=Number(r.toFixed(9)),i=Number(i.toFixed(9)),e.intersects(v)&&i!==d?(E=i>E?i:E,s=x(s,u),P.push(s),F.push("cut")):e.intersects(C)&&r!==p?(E=i*(2*d)>E?i*(2*d):E,s=x(s,u,360),P.push(s),F.push("cut")):F.push(s)}else F.push(t.clone());else F.push(t);else F.push(t);let T=(0,l.kd)(E,d),N=-90;const L=T,I=new c.A;for(;T>0;){const e=360*T-180;I.addPath([[e,N],[e,-1*N]]),N*=-1,T--}if(P.length>0&&L>0){const t=M(P,await async function(e,t,n,s){const r=(0,_.Dl)(e),i=t[0].spatialReference,o={...s,responseType:"json",query:{...r.query,f:"json",sr:(0,h.YX)(i),target:JSON.stringify({geometryType:(0,m.$B)(t[0]),geometries:t}),cutter:JSON.stringify(n)}},a=await(0,g.A)(r.path+"/cut",o),{cutIndexes:c,geometries:u=[]}=a.data;return{cutIndexes:c,geometries:u.map(e=>{const t=(0,y.rS)(e);return t.spatialReference=i,t})}}(r,P,I,n)),s=[],i=[];for(let n=0;n<F.length;n++){const r=F[n];if("cut"!==r)i.push(r);else{const r=t.shift(),o=e[n];null!=o&&"polygon"===o.type&&o.rings&&o.rings.length>1&&r.rings.length>=o.rings.length?(s.push(r),i.push("simplify")):i.push(u?(0,f.Gh)(r):r)}}if(!s.length)return i;const o=await async function(e,t,n){const s="string"==typeof e?(0,S.An)(e):e,r=t[0].spatialReference,i=(0,m.$B)(t[0]),o={...n,query:{...s.query,f:"json",sr:(0,h.YX)(r),geometries:JSON.stringify((0,w.X)(t))}},{data:a}=await(0,g.A)(s.path+"/simplify",o);return(0,w.V)(a.geometries,i,r)}(r,s,n),a=[];for(let e=0;e<i.length;e++){const t=i[e];"simplify"!==t?a.push(t):a.push(u?(0,f.Gh)(o.shift()):o.shift())}return a}const j=[];for(let e=0;e<F.length;e++){const t=F[e];if("cut"!==t)j.push(t);else{const e=P.shift();j.push(!0===u?(0,f.Gh)(e):e)}}return j}function C(e,t,n){const s=(0,h.Vp)(n);if(null==s)return e;const[r,i]=s.valid,o=2*i;let a=0,c=0;t>i?a=Math.ceil(Math.abs(t-i)/o):t<r&&(a=-Math.ceil(Math.abs(t-r)/o)),e>i?c=Math.ceil(Math.abs(e-i)/o):e<r&&(c=-Math.ceil(Math.abs(e-r)/o));let u=e+(a-c)*o;const l=u-t;return l>i?u-=o:l<r&&(u+=o),u}function E(e){const t=(0,h.Vp)(e);if(null==t)return null;const[n,s]=t.valid;return new r.hr(n,s)}const P=E(u.A.WGS84);E(u.A.WebMercator)},80754(e,t,n){n.d(t,{kS:()=>u,kd:()=>c,r8:()=>l});var s=n(82799),r=n(16930),i=n(60408),o=n(52006);const a={102100:{maxX:20037508.342788905,minX:-20037508.342788905,plus180Line:new s.A({paths:[[[20037508.342788905,-20037508.342788905],[20037508.342788905,20037508.342788905]]],spatialReference:r.A.WebMercator}),minus180Line:new s.A({paths:[[[-20037508.342788905,-20037508.342788905],[-20037508.342788905,20037508.342788905]]],spatialReference:r.A.WebMercator})},4326:{maxX:180,minX:-180,plus180Line:new s.A({paths:[[[180,-180],[180,180]]],spatialReference:r.A.WGS84}),minus180Line:new s.A({paths:[[[-180,-180],[-180,180]]],spatialReference:r.A.WGS84})}};function c(e,t){return Math.ceil((e-t)/(2*t))}function u(e,t){if((0,o.Ed)(e))for(const n of function(e){return(0,i.Bi)(e)?e.curveRings:e.curvePaths}(e))for(const e of n){if((0,o.aO)(e)){const[n,s]=e.c;n[0]+=t,s[0]+=t;continue}if((0,o.FG)(e)){const[n,s]=e.a;n[0]+=t,s[0]+=t;continue}if((0,o.n1)(e)){const[n,s,r]=e.b;n[0]+=t,s[0]+=t,r[0]+=t;continue}e[0]+=t}for(const n of l(e))for(const e of n)e[0]+=t;return e}function l(e){return(0,i.Bi)(e)?e.rings:e.paths}n.d(t,["j7",0,a])},31464(e,t,n){n.d(t,{Cv:()=>p,Nk:()=>h,lK:()=>m});var s=n(4576),r=n(91218),i=n(21325),o=n(28735);const a=[0,0];function c(e,t){if(!t)return null;if("x"in t){const n={x:0,y:0};return[n.x,n.y]=e(t.x,t.y,a),null!=t.z&&(n.z=t.z),null!=t.m&&(n.m=t.m),n}if("xmin"in t){const n={xmin:0,ymin:0,xmax:0,ymax:0};return[n.xmin,n.ymin]=e(t.xmin,t.ymin,a),[n.xmax,n.ymax]=e(t.xmax,t.ymax,a),t.hasZ&&(n.zmin=t.zmin,n.zmax=t.zmax,n.hasZ=!0),t.hasM&&(n.mmin=t.mmin,n.mmax=t.mmax,n.hasM=!0),n}return"rings"in t?{rings:u(t.rings,e),hasM:t.hasM,hasZ:t.hasZ}:"paths"in t?{paths:u(t.paths,e),hasM:t.hasM,hasZ:t.hasZ}:"points"in t?{points:l(t.points,e),hasM:t.hasM,hasZ:t.hasZ}:null}function u(e,t){const n=[];for(const s of e)n.push(l(s,t));return n}function l(e,t){const n=[];for(const s of e){const e=t(s[0],s[1],[0,0]);n.push(e),s.length>2&&e.push(s[2]),s.length>3&&e.push(s[3])}return n}async function h(e,t){if(!e||!t)return;const n=Array.isArray(e)?e.map(e=>null!=e.geometry?e.geometry.spatialReference:null).filter(s.Ru):[e];await(0,r.initializeProjection)(n.map(e=>({source:e,dest:t})))}const f=c.bind(null,o.je),d=c.bind(null,o.tD);function p(e,t,n,s){if(!e)return null;if(n||(n=t,t=e.spatialReference),!(0,i.fn)(t)||!(0,i.fn)(n)||(0,i.aI)(t,n))return e;if((0,o.y7)(t,n)){const t=(0,i.K8)(n)?f(e):d(e);return t.spatialReference=n,t}return(0,r.projectMany)([e],t,n,s)[0]}const g=new class{constructor(){this._jobs=[],this._timer=null,this._process=this._process.bind(this)}async push(e,t,n,s){if(!e?.length||!t||!n||(0,i.aI)(t,n))return e;const r={geometries:e,inSpatialReference:t,outSpatialReference:n,options:s,resolve:Promise.withResolvers()};return this._jobs.push(r),this._timer??=setTimeout(this._process,10),r.resolve.promise}_process(){this._timer=null;const e=this._jobs.shift();if(!e)return;const{geometries:t,inSpatialReference:n,outSpatialReference:s,resolve:a,options:c}=e,u=t.filter(e=>null!=e);let l;l=(0,o.y7)(n,s)&&null==c?.extendedParams?(0,i.K8)(s)?u.map(f):u.map(d):(0,r.projectMany)(u,n,s,c);let h=0;const p=t.map(e=>null==e?null:l[h++]);a.resolve(p),this._jobs.length>0&&(this._timer=setTimeout(this._process,10))}};function m(e,t,n,s){return g.push(e,t,n,s)}},60986(e,t,n){n.r(t),n.d(t,{createConnection:()=>C});var s=n(11254),r=n(49186),i=n(31464),o=n(9916),a=n(5482),c=n(65529),u=n(91429);let l=class extends c.nJ{destroy(){this.emit("destroy")}get connectionError(){return this.errorString?new r.A("stream-connection",this.errorString):null}onFeature(e){this.emit("data-received",e)}onMessage(e){this.emit("message-received",e)}};(0,a.Cg)([(0,u.MZ)({readOnly:!0})],l.prototype,"connectionError",null),l=(0,a.Cg)([(0,u.$K)("esri.layers.support.StreamConnection")],l);class h extends l{constructor(e,t){super(),this._config=e,this._outSpatialReference=t,this.connectionStatus="connected",this.errorString=null,this._isPolling=!1,this._lastIngestedAt=null,this._pollTimer=null,this._pollRecentData=async()=>{if(!this.destroyed&&!this._isPolling){this._isPolling=!0;try{const e=await this._queryChanges(this._lastIngestedAt);if(this.destroyed)return;this._handleResult(e)}catch(e){this.errorString=e instanceof Error?e.message:"Failed to fetch"}finally{this._isPolling=!1}}},this._initialize()}destroy(){super.destroy(),this._pollTimer&&(clearInterval(this._pollTimer),this._pollTimer=null)}sendMessageToSocket(e){throw new r.A("kusto:unsupported","sendMessageToSocket not supported for Kusto connections")}sendMessageToClient(e){throw new r.A("kusto:unsupported","sendMessageToClient not supported for Kusto connections")}updateCustomParameters(e){throw new r.A("kusto:unsupported","updateCustomParameters not supported for Kusto connections")}async _initialize(){await(0,i.Nk)(this._config.sourceSpatialReference,this._outSpatialReference);try{const e=await this._queryInitial();this._handleResult(e),this._pollTimer=setInterval(this._pollRecentData,6e4*this._config.refreshInterval)}catch{throw new r.A("kusto:connection","Failed to query KQL database")}}async _queryInitial(){const{trackIdField:e}=this._config,t=f(await this._executeQuery(`${(0,o.xw)(this._config.table)} | extend IngestedAt = ingestion_time() | summarize arg_max(IngestedAt, *) by ${(0,o.xw)(e)}`));if(!t)throw new r.A("kusto:connection","Unable to find primaryTable");return{ingestedAt:d(t),table:t}}async _queryChanges(e=null){const t=e??"1970-01-01T00:00:00Z",n=f(await this._executeQuery(`${(0,o.xw)(this._config.table)} | extend IngestedAt = ingestion_time() | where IngestedAt > todatetime('${(0,o.iD)(t)}') | order by IngestedAt asc`));if(!n)throw new r.A("kusto:connection","Unable to find primaryTable");return{ingestedAt:d(n),table:n}}async _executeQuery(e){const t=this._config.database,n=t.properties.queryServiceUri,{data:r}=await(0,s.A)(`${n}/v2/rest/query`,{responseType:"json",method:"post",headers:{"Content-Type":"application/json"},body:JSON.stringify({db:t.displayName,csl:e})});return r}_handleResult(e){this._lastIngestedAt=e.ingestedAt;const t=this._createFeatures(e.table);if(null!=t){this.onMessage(t);for(const e of t)this.onFeature(e)}}_createFeatures(e){if(null==e||0===e.Rows.length)return null;const{xField:t,yField:n}=this._config.geometryEncoding,s=e.Columns.findIndex(e=>e.ColumnName===t),r=e.Columns.findIndex(e=>e.ColumnName===n);return e.Rows.map(t=>this._createFeature(e.Columns,s,r,t))}_createFeature(e,t,n,s){const{xField:r,yField:o}=this._config.geometryEncoding,a={};for(let t=0;t<e.length;t++){const n=e[t],i=s[t]??null;n.ColumnName!==o&&n.ColumnName!==r&&(a[n.ColumnName]=i)}let c=null;const u=s[t],l=s[n];return null!=l&&null!=u&&(c=(0,i.Cv)({x:u,y:l},this._config.sourceSpatialReference,this._outSpatialReference)),{attributes:a,geometry:c}}}function f(e){return e.find(e=>"DataTable"===e.FrameType&&"PrimaryResult"===e.TableKind)??null}function d(e){const t=e.Columns.findIndex(e=>"IngestedAt"===e.ColumnName);if(t<0)return null;let n=null;for(const s of e.Rows){const e=s[t];"string"==typeof e&&(null==n||e>n)&&(n=e)}return n}var p=n(53966),g=n(84952),m=n(16930),y=n(65864),_=n(17676),S=n(62815);function w(e,t){if(null==e&&null==t)return null;const n={};return null!=t&&(n.geometry=t),null!=e&&(n.where=e),n}let k=class extends l{constructor(e,t){super({}),this._outSpatialReference=t,this._outstandingMessages=[],this.errorString=null;const{geometryType:n,sourceSpatialReference:s}=e;this._config=e,this._featureZScaler=(0,S.N)(n,s,this._outSpatialReference),this._open()}normalizeCtorArgs(){return{}}async _open(){await this._tryCreateWebSocket(),this.destroyed||await this._handshake()}destroy(){super.destroy(),null!=this._websocket&&(this._websocket.onopen=null,this._websocket.onclose=null,this._websocket.onerror=null,this._websocket.onmessage=null,this._websocket.close()),this._websocket=null}get connectionStatus(){if(null==this._websocket)return"disconnected";switch(this._websocket.readyState){case 0:case 1:return"connected";case 2:case 3:return"disconnected"}}sendMessageToSocket(e){null!=this._websocket?this._websocket.send(JSON.stringify(e)):this._outstandingMessages.push(e)}sendMessageToClient(e){this._onMessage(e)}updateCustomParameters(e){this._config.customParameters=e,null!=this._websocket&&this._websocket.close()}async _tryCreateWebSocket(e=this._config.url.path,t=1e3,n=0){try{if(this.destroyed)return;const t=(0,g.a6)(e,this._config.customParameters??{});this._websocket=await this._createWebSocket(t),this.notifyChange("connectionStatus")}catch(s){const i=t/1e3;return this._config.maxReconnectionAttempts&&n>=this._config.maxReconnectionAttempts?(p.A.getLogger(this).error(new r.A("websocket-connection","Exceeded maxReconnectionAttempts attempts. No further attempts will be made")),void this.destroy()):(p.A.getLogger(this).error(new r.A("websocket-connection",`Failed to connect. Attempting to reconnect in ${i}s`,s)),await(0,_.Pl)(t),this._tryCreateWebSocket(e,Math.min(1.5*t,1e3*this._config.maxReconnectionInterval),n+1))}}_setWebSocketJSONParseHandler(e){e.onmessage=e=>{try{const t=JSON.parse(e.data);this._onMessage(t)}catch(e){return void p.A.getLogger(this).error(new r.A("websocket-connection","Failed to parse message, invalid JSON",{error:e}))}}}_createWebSocket(e){return new Promise((t,n)=>{const s=new WebSocket(e);s.onopen=()=>{if(s.onopen=null,this.destroyed)return s.onclose=null,void s.close();s.onclose=e=>this._onClose(e),s.onerror=e=>this._onError(e),this._setWebSocketJSONParseHandler(s),t(s)},s.onclose=e=>{s.onopen=s.onclose=null,n(e)}})}async _handshake(e=1e4){const t=this._websocket;if(null==t)return;const n=Promise.withResolvers(),s=t.onmessage,i=w(this._config.definitionExpression,this._config.geometryDefinition),{outFields:o}=this._config,a=setTimeout(()=>n.reject(),e),c=()=>{clearTimeout(a),n.reject()};return t.onmessage=e=>{let u=null;try{u=JSON.parse(e.data)}catch(e){}u&&"object"==typeof u||(p.A.getLogger(this).error(new r.A("websocket-connection","Protocol violation. Handshake failed - malformed message",e.data)),c(),this.destroy()),u.spatialReference?.wkid!==this._outSpatialReference?.wkid&&(p.A.getLogger(this).error(new r.A("websocket-connection",`Protocol violation. Handshake failed - expected wkid of ${this._outSpatialReference.wkid}`,e.data)),c(),this.destroy()),"json"!==u.format&&(p.A.getLogger(this).error(new r.A("websocket-connection","Protocol violation. Handshake failed - format is not set",e.data)),c(),this.destroy()),i&&u.filter!==i&&p.A.getLogger(this).error(new r.A("websocket-connection","Tried to set filter, but server doesn't support it")),o&&u.outFields!==o&&p.A.getLogger(this).error(new r.A("websocket-connection","Tried to set outFields, but server doesn't support it")),t.onmessage=s;for(const e of this._outstandingMessages)t.send(JSON.stringify(e));this._outstandingMessages=[],clearTimeout(a),n.resolve()},t.send(JSON.stringify({filter:i,outFields:o,format:"json",spatialReference:{wkid:this._outSpatialReference.wkid}})),n.promise}_onMessage(e){if(this.onMessage(e),"type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}}_onError(e){const t="Encountered an error over WebSocket connection";this._set("errorString",t),p.A.getLogger(this).error("websocket-connection",t)}_onClose(e){this._websocket=null,this.notifyChange("connectionStatus"),1e3!==e.code&&p.A.getLogger(this).error("websocket-connection",`WebSocket closed unexpectedly with error code ${e.code}`),this.destroyed||this._open()}};(0,a.Cg)([(0,u.MZ)()],k.prototype,"connectionStatus",null),(0,a.Cg)([(0,u.MZ)()],k.prototype,"errorString",void 0),k=(0,a.Cg)([(0,u.$K)("esri.layers.graphics.sources.connections.WebSocketConnection")],k);var b=n(80893),v=n(97552);const x={maxQueryDepth:5,maxRecordCountFactor:3};let A=class extends k{constructor(e,t){super({...x,...e},t),this._buddyServicesQuery=null,this._relatedFeatures=null}async _open(){const e=await this._fetchServiceDefinition(this._config.url);e.timeInfo.trackIdField||p.A.getLogger(this).warn("GeoEvent service was configured without a TrackIdField. This may result in certain functionality being disabled. The purgeOptions.maxObservations property will have no effect.");const t=this._fetchWebSocketUrl(e.streamUrls,this._outSpatialReference);this._buddyServicesQuery||(this._buddyServicesQuery=this._queryBuddyServices()),await this._buddyServicesQuery,await this._tryCreateWebSocket(t);const n=w(this._config.definitionExpression,this._config.geometryDefinition),{outFields:s}=this._config;this.destroyed||this._setFilter(n,s)}_onMessage(e){if("attributes"in e){let t;try{t=this._enrich(e),null!=this._featureZScaler&&this._featureZScaler(t.geometry)}catch(e){return void p.A.getLogger(this).error(new r.A("geoevent-connection","Failed to parse message",e))}this.onFeature(t)}else this.onMessage(e)}async _fetchServiceDefinition(e){const t={f:"json",...this._config.customParameters},n=(0,s.A)(e.path,{query:t,responseType:"json"}),r=(await n).data;return this._serviceDefinition=r,r}_fetchWebSocketUrl(e,t){const n=e[0],{urls:s,token:r}=n,i=this._inferWebSocketBaseUrl(s);return(0,g.a6)(`${i}/subscribe`,{outSR:""+t.wkid,token:r})}_inferWebSocketBaseUrl(e){if(1===e.length)return e[0];for(const t of e)if(t.includes("wss"))return t;return p.A.getLogger(this).error(new r.A("geoevent-connection","Unable to infer WebSocket url",e)),null}async _setFilter(e,t){const n=this._websocket;if(null==n||null==e&&null==t)return;const s=JSON.stringify({filter:this._serializeFilter(e,t)});let i=!1;const o=Promise.withResolvers();return n.onmessage=e=>{const t=JSON.parse(e.data);t.filter&&(t.error&&(p.A.getLogger(this).error(new r.A("geoevent-connection","Failed to set service filter",t.error)),this._set("errorString",`Could not set service filter - ${t.error}`),o.reject(t.error)),this._setWebSocketJSONParseHandler(n),i=!0,o.resolve())},n.send(s),setTimeout(()=>{i||(this.destroyed||this._websocket!==n||p.A.getLogger(this).error(new r.A("geoevent-connection","Server timed out when setting filter")),o.reject())},1e4),o.promise}_serializeFilter(e,t){const n={};if(null==e&&null==t)return n;if(e?.geometry)try{const t=(0,y.rS)(e.geometry);if("extent"!==t.type)throw new r.A("geoevent-connection",`Expected extent but found type ${t.type}`);n.geometry=JSON.stringify(t.shiftCentralMeridian())}catch(e){p.A.getLogger(this).error(new r.A("geoevent-connection","Encountered an error when setting connection geometryDefinition",e))}return e?.where&&"1 = 1"!==e.where&&"1=1"!==e.where&&(n.where=e.where),null!=t&&(n.outFields=t.join(",")),n}_enrich(e){if(!this._relatedFeatures)return e;const t=this._serviceDefinition.relatedFeatures.joinField,n=e.attributes[t],s=this._relatedFeatures.get(n);if(!s)return p.A.getLogger(this).warn("geoevent-connection","Feature join failed. Is the join field configured correctly?",e),e;const{attributes:i,geometry:o}=s;for(const t in i)e.attributes[t]=i[t];return o&&(e.geometry=o),e.geometry||e.centroid||p.A.getLogger(this).error(new r.A("geoevent-connection","Found malformed feature - no geometry found",e)),e}async _queryBuddyServices(){try{const{relatedFeatures:e,keepLatestArchive:t}=this._serviceDefinition,n=this._queryRelatedFeatures(e),s=this._queryArchive(t);await n;const r=await s;if(!r)return;for(const e of r.features)this.onFeature(this._enrich(e))}catch(e){p.A.getLogger(this).error(new r.A("geoevent-connection","Encountered an error when querying buddy services",{error:e}))}}async _queryRelatedFeatures(e){if(!e)return;const t=await this._queryBuddy(e.featuresUrl);this._addRelatedFeatures(t)}async _queryArchive(e){if(e)return this._queryBuddy(e.featuresUrl)}async _queryBuddy(e){const t=new((await Promise.all([n.e(7632),n.e(8278),n.e(7865),n.e(9953),n.e(6554),n.e(2869),n.e(3910),n.e(564),n.e(1214),n.e(2889),n.e(1017),n.e(9789),n.e(4674),n.e(2718),n.e(3781),n.e(812),n.e(3470),n.e(9295)]).then(n.bind(n,53781))).default)({url:e}),{capabilities:s}=await t.load(),r=s.query.supportsMaxRecordCountFactor,i=s.query.supportsPagination,o=s.query.supportsCentroid,a=this._config.maxRecordCountFactor,c=t.capabilities.query.maxRecordCount,u=r?c*a:c,l=new v.A;if(l.outFields=this._config.outFields??["*"],l.where=this._config.definitionExpression??"1=1",l.returnGeometry=!0,l.returnExceededLimitFeatures=!0,l.outSpatialReference=m.A.fromJSON(this._outSpatialReference),o&&(l.returnCentroid=!0),r&&(l.maxRecordCountFactor=a),i)return l.num=u,t.destroy(),this._queryPages(e,l);const h=await(0,b.eW)(e,l,this._config.sourceSpatialReference);return t.destroy(),h}async _queryPages(e,t,n=[],s=0){t.start=null!=t.num?s*t.num:null;const r=await(0,b.eW)(e,t,this._config.sourceSpatialReference);return r.exceededTransferLimit&&s<(this._config.maxQueryDepth??0)?(r.features.forEach(e=>n.push(e)),this._queryPages(e,t,n,s+1)):(n.forEach(e=>r.features.push(e)),r)}_addRelatedFeatures(e){const t=new Map,n=e.features,s=this._serviceDefinition.relatedFeatures.joinField;for(const e of n){const n=e.attributes[s];t.set(n,e)}this._relatedFeatures=t}};A=(0,a.Cg)([(0,u.$K)("esri.layers.graphics.sources.connections.GeoEventConnection")],A);var M=n(64108);let R=class extends l{constructor(e,t){super({}),this.connectionStatus="connected",this.errorString=null;const{geometryType:n,sourceSpatialReference:s}=e;this._featureZScaler=(0,S.N)(n,s,t)}normalizeCtorArgs(){return{}}updateCustomParameters(e){}sendMessageToSocket(e){}sendMessageToClient(e){if("type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}this.onMessage(e)}};function C(e,t){const n=t.toJSON();switch(e.type){case"client":return new R(e,n);case"custom":return new k(e,n);case"geoevent":return new A(e,n);case"kusto":return new h(e,n)}}(0,a.Cg)([(0,u.MZ)()],R.prototype,"connectionStatus",void 0),(0,a.Cg)([(0,u.MZ)()],R.prototype,"errorString",void 0),R=(0,a.Cg)([(0,M.$)("esri.layers.support.ClientSideConnection")],R)},92300(e,t,n){n.d(t,{V:()=>o,X:()=>i});var s=n(60408),r=n(65864);function i(e){return{geometryType:(0,s.$B)(e[0]),geometries:e.map(e=>e.toJSON())}}function o(e,t,n){const s=(0,r.xD)(t);return e.map(e=>{const t=s.fromJSON(e);return t.spatialReference=n,t})}}}]);
|