(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-44f12b50"],{"189c6":function(e,t,i){"use strict";i.r(t),i.d(t,"default",(function(){return ee}));var r=i("a4ee"),s=i("8d60"),a=i("59b2"),n=(i("b50f"),i("c120")),o=(i("cea0"),i("d386"));let l=class extends s["a"]{constructor(){super(...arguments),this.isAggregate=!0}getEffectivePopupTemplate(e=!1){if(this.popupTemplate)return this.popupTemplate;const t=this.sourceLayer&&this.sourceLayer.featureReduction;return t&&"popupTemplate"in t&&t.popupEnabled?t.popupTemplate:null}getObjectId(){return this.objectId}};Object(r["a"])([Object(a["b"])({type:Boolean})],l.prototype,"isAggregate",void 0),Object(r["a"])([Object(a["b"])({type:Number,json:{read:!0}})],l.prototype,"objectId",void 0),l=Object(r["a"])([Object(o["a"])("esri.AggregateGraphic")],l);const c=l;i("e06a");var u=i("2c4f"),d=i("ce50"),h=i("7ffa"),p=i("e92d"),y=i("b2b2"),f=i("f4cc"),b=i("477c"),g=i("fc29"),_=i("0326");let O=class extends g["a"]{constructor(e){super(e),this._filter=null,this.duration=Object(n["a"])("mapview-transitions-duration"),this._excludedEffectView=new _["a"](e),this._includedEffectView=new _["a"](e)}get excludedEffects(){return this._excludedEffectView.effects}set featureEffect(e){this._get("featureEffect")!==e&&this._transitionTo(e)}get filter(){var e;return this._filter||(null==(e=Object(y["t"])(this.featureEffect))?void 0:e.filter)||null}get hasEffects(){return this._excludedEffectView.hasEffects||this._includedEffectView.hasEffects}get includedEffects(){return this._includedEffectView.effects}set scale(e){this._set("scale",e),this._excludedEffectView.scale=e,this._includedEffectView.scale=e}get transitioning(){return this._excludedEffectView.transitioning||this._includedEffectView.transitioning}transitionStep(e,t){this._set("scale",t),this.transitioning?(this._includedEffectView.transitionStep(e,t),this._excludedEffectView.transitionStep(e,t),this.transitioning||(this._filter=null)):(this._excludedEffectView.scale=t,this._includedEffectView.scale=t)}end(){this._includedEffectView.end(),this._excludedEffectView.end(),this._filter=null}_transitionTo(e){const t=this._get("featureEffect"),i=Object(y["t"])(e),r=Object(y["t"])(null==i?void 0:i.includedEffect),s=Object(y["t"])(null==i?void 0:i.excludedEffect),a=this._includedEffectView.canTransitionTo(r)&&this._excludedEffectView.canTransitionTo(s);this._includedEffectView.effect=r,this._excludedEffectView.effect=s,this._set("featureEffect",i),this._filter=(null==i?void 0:i.filter)||(null==t?void 0:t.filter)||null,a||this.end()}};Object(r["a"])([Object(a["b"])()],O.prototype,"_filter",void 0),Object(r["a"])([Object(a["b"])()],O.prototype,"_excludedEffectView",void 0),Object(r["a"])([Object(a["b"])()],O.prototype,"_includedEffectView",void 0),Object(r["a"])([Object(a["b"])()],O.prototype,"duration",void 0),Object(r["a"])([Object(a["b"])()],O.prototype,"excludedEffects",null),Object(r["a"])([Object(a["b"])()],O.prototype,"featureEffect",null),Object(r["a"])([Object(a["b"])()],O.prototype,"filter",null),Object(r["a"])([Object(a["b"])()],O.prototype,"hasEffects",null),Object(r["a"])([Object(a["b"])()],O.prototype,"includedEffects",null),Object(r["a"])([Object(a["b"])({value:0})],O.prototype,"scale",null),Object(r["a"])([Object(a["b"])()],O.prototype,"transitioning",null),O=Object(r["a"])([Object(o["a"])("esri.layers.effects.FeatureEffectView")],O);const m=O;var v=i("96d4"),j=i("2edc"),w=i("69dd"),R=i("8c81"),x=i("566d"),E=i("a305");async function S(e,t){if(!e)return null;switch(e.type){case"class-breaks":case"simple":case"unique-value":case"dot-density":case"dictionary":return new((await Promise.all([i.e("chunk-0bf7ec9a"),i.e("chunk-39b24b6e")]).then(i.bind(null,"c1f7"))).default)(t);case"heatmap":return new((await Promise.all([i.e("chunk-0bf7ec9a"),i.e("chunk-67de5367")]).then(i.bind(null,"8e77"))).default)(t)}}var F=i("9bae"),q=i("b541");function I(e){return e.some(e=>e.globalId)}function k(e){return e.filter(e=>!e.error).map(e=>{var t;return null!=(t=e.objectId)?t:e.globalId})}function T(e,t){const i=new Set(e);for(const r of t.values())i.add(r);return i}function C(e,t){const i=new Set(e);for(const r of t.values())i.delete(r);return i}let V=class extends g["a"]{constructor(e){super(e),this._hasGlobalIds=!1}normalizeCtorArgs(e){return this._queueProcessor=new q["a"]({concurrency:1,process:e.process}),{}}destroy(){this.clear()}get updating(){return this._queueProcessor.length>0}clear(){this._queueProcessor.clear()}push(e){const t=this._queueProcessor,i=t.last();switch(e.type){case"update":case"refresh":if((null==i?void 0:i.type)===e.type)return;t.push(e).finally(()=>this.notifyChange("updating"));break;case"edit":{const r="processed-edit"===(null==i?void 0:i.type)?i:null;r&&t.popLast();const s=this._mergeEdits(r,e);for(const e of s)t.push(e).finally(()=>this.notifyChange("updating"));break}}this.notifyChange("updating")}_mergeEdits(e,t){var i,r;const{addedFeatures:s,deletedFeatures:a,updatedFeatures:n}=t.edits;if(this._hasGlobalIds=this._hasGlobalIds||I(s)||I(n)||I(a),this._hasGlobalIds)return[e,{type:"processed-edit",edits:{addOrModified:[...s,...n],removed:a}}];const o=new Set(k(null!=(i=null==e?void 0:e.edits.addOrModified)?i:[])),l=new Set(k(null!=(r=null==e?void 0:e.edits.removed)?r:[])),c=new Set([...k(s),...k(n)]),u=new Set(k(a));return[{type:"processed-edit",edits:{addOrModified:Array.from(T(C(o,u),c)).map(e=>({objectId:e})),removed:Array.from(T(C(l,c),u)).map(e=>({objectId:e}))}}]}};Object(r["a"])([Object(a["b"])({readOnly:!0})],V.prototype,"updating",null),V=Object(r["a"])([Object(o["a"])("esri.views.2d.layers.support.FeatureCommandQueue")],V);const U=V;var P=i("fab3"),N=i("dfa0");function A(e){return Array.isArray(e)}let L=class extends P["a"]{constructor(e){super(e),this._startupResolver=Object(f["g"])(),this.isReady=!1}initialize(){this._controller=new AbortController,this.addResolvingPromise(this._startWorker(this._controller.signal))}destroy(){this._controller.abort(),this._connection&&this._connection.close()}set tileRenderer(e){this.client.tileRenderer=e}get closed(){return this._connection.closed}async startup(e,t,i,r){await this.when();const s=this._controller.signal,a=A(i.source)?{transferList:i.source,signal:s}:void 0,n={service:i,config:t,tileInfo:e.tileInfo.toJSON(),tiles:r};await this._connection.invoke("startup",n,a),this._startupResolver.resolve(),this._set("isReady",!0)}async updateTiles(e){return await this._startupResolver.promise,Object(f["l"])(this._connection.invoke("updateTiles",e))}async update(e){const t={config:e};return await this._startupResolver.promise,this._connection.invoke("update",t)}async applyUpdate(e){return await this._startupResolver.promise,this._connection.invoke("applyUpdate",e)}async setHighlight(e){return await this._startupResolver.promise,Object(f["l"])(this._connection.invoke("controller.setHighlight",e))}async stop(){if(await this._startupResolver.promise,!this.closed)return Object(f["l"])(this._connection.invoke("stop"))}async refresh(e){return await this._startupResolver.promise,Object(f["l"])(this._connection.invoke("controller.refresh",e))}async querySummaryStatistics(e,t,i){return await this._startupResolver.promise,this._connection.invoke("controller.querySummaryStatistics",{query:e.toJSON(),params:t},i)}async queryUniqueValues(e,t,i){return await this._startupResolver.promise,this._connection.invoke("controller.queryUniqueValues",{query:e.toJSON(),params:t},i)}async queryClassBreaks(e,t,i){return await this._startupResolver.promise,this._connection.invoke("controller.queryClassBreaks",{query:e.toJSON(),params:t},i)}async queryHistogram(e,t,i){return await this._startupResolver.promise,this._connection.invoke("controller.queryHistogram",{query:e.toJSON(),params:t},i)}async queryFeatures(e,t){return await this._startupResolver.promise,this._connection.invoke("controller.queryFeatures",e.toJSON(),t)}async queryVisibleFeatures(e,t){return await this._startupResolver.promise,this._connection.invoke("controller.queryVisibleFeatures",e.toJSON(),t)}async queryObjectIds(e,t){return await this._startupResolver.promise,this._connection.invoke("controller.queryObjectIds",e.toJSON(),t)}async queryFeatureCount(e,t){return await this._startupResolver.promise,this._connection.invoke("controller.queryFeatureCount",e.toJSON(),t)}async queryExtent(e,t){return this._connection.invoke("controller.queryExtent",e.toJSON(),t)}async queryLatestObservations(e,t){return await this._startupResolver.promise,this._connection.invoke("controller.queryLatestObservations",e.toJSON(),t)}async queryStatistics(e){return await this._startupResolver.promise,this._connection.invoke("controller.queryStatistics",e)}async getObjectId(e){return await this._startupResolver.promise,this._connection.invoke("controller.getObjectId",e)}async getDisplayId(e){return await this._startupResolver.promise,this._connection.invoke("controller.getDisplayId",e)}async getFeatures(e){return await this._startupResolver.promise,this._connection.invoke("controller.getFeatures",e)}async getAggregates(){return await this._startupResolver.promise,this._connection.invoke("controller.getAggregates")}async getAggregateValueRanges(){return await this._startupResolver.promise,this._connection.invoke("controller.getAggregateValueRanges")}async mapValidDisplayIds(e){return await this._startupResolver.promise,this._connection.invoke("controller.mapValidDisplayIds",e)}async onEdits(e){return await this._startupResolver.promise,Object(f["l"])(this._connection.invoke("controller.onEdits",e))}async enableEvent(e,t){return await this._startupResolver.promise,Object(f["l"])(this._connection.invoke("controller.enableEvent",{name:e,value:t}))}pauseStream(){return Object(f["l"])(this._connection.invoke("controller.pauseStream"))}resumeStream(){return Object(f["l"])(this._connection.invoke("controller.resumeStream"))}async _startWorker(e){try{this._connection=await Object(N["b"])("Pipeline",{client:this.client,strategy:"dedicated",signal:e})}catch(t){Object(f["w"])(t)}}};Object(r["a"])([Object(a["b"])()],L.prototype,"isReady",void 0),Object(r["a"])([Object(a["b"])()],L.prototype,"client",void 0),Object(r["a"])([Object(a["b"])()],L.prototype,"tileRenderer",null),L=Object(r["a"])([Object(o["a"])("esri.views.2d.layers.support.FeatureLayerProxy")],L);const J=L;var z=i("45a5"),M=i("ba6a"),H=i("ae54");const Q=1e-6;class D{constructor(e){this._tiles=new Map,this.buffer=0,this.acquireTile=e.acquireTile,this.releaseTile=e.releaseTile,this.tileInfoView=e.tileInfoView,this.buffer=e.buffer}destroy(){}clear(){this._tiles.forEach(e=>this._releaseTile(e))}tileKeys(){const e=[];return this._tiles.forEach((t,i)=>e.push(i)),e}update(e){const t=this.tileInfoView.getTileCoverage(e.state,this.buffer,"closest"),{spans:i,lodInfo:r}=t,{level:s}=r,a=[],n=[],o=new Set,l=new Set;for(const{row:c,colFrom:u,colTo:d}of i)for(let e=u;e<=d;e++){const t=H["a"].getId(s,c,r.normalizeCol(e),r.getWorldForColumn(e)),i=this._getOrAcquireTile(a,t);o.add(t),i.isReady?i.visible=!0:l.add(i.key)}return l.forEach(e=>this._addPlaceholders(o,e)),this._tiles.forEach(e=>{o.has(e.key.id)||(n.push(e.key.id),this._releaseTile(e))}),M["a"].pool.release(t),{hasMissingTiles:l.size>0,added:a,removed:n}}_getOrAcquireTile(e,t){if(!this._tiles.has(t)){const i=this.acquireTile(new H["a"](t));e.push(t),this._tiles.set(t,i),i.visible=!1}return this._tiles.get(t)}_getTile(e){return this._tiles.get(e)}_releaseTile(e){this._tiles.delete(e.key.id),this.releaseTile(e)}_addPlaceholders(e,t){const i=this._addPlaceholderChildren(e,t);Math.abs(1-i){i+=this._addPlaceholderChild(e,r,t)}),i}_addPlaceholderChild(e,t,i){return t.key.level<=i.level||!t.hasData||!i.contains(t.key)?0:(t.visible=!0,e.add(t.key.id),1/(1<<2*(t.key.level-i.level)))}_addPlaceholderParent(e,t){let i=t.getParentKey(),r=0,s=null;for(;Object(y["k"])(i);){if(e.has(i.id))return!0;const t=this._getTile(i.id);if(null!=t&&t.isReady)return t.visible=!0,e.add(t.key.id),!0;null!=t&&t.hasData&&t.patchCount>r&&(r=t.patchCount,s=t),i=i.getParentKey()}return!!s&&(s.visible=!0,e.add(s.key.id),!0)}}var B=i("ceb0"),G=i("365a"),$=i("6c7a"),K=i("b2af"),W=i("3af1");function Z(e){return e&&"openPorts"in e}const X=p["a"].getLogger("esri.views.2d.layers.FeatureLayerView2D");let Y=class extends(Object(B["a"])(Object($["a"])(Object(x["a"])(G["a"])))){constructor(){super(...arguments),this._pipelineIsUpdating=!0,this._commandsQueue=new U({process:e=>{switch(e.type){case"processed-edit":return this._doEdit(e);case"refresh":return this._doRefresh(e.dataChanged);case"update":return this._doUpdate()}}}),this._visibilityOverrides=new Set,this._highlightIds=new Map,this._updateHighlight=Object(f["i"])(async()=>this._proxy.setHighlight(Array.from(this._highlightIds.keys()))),this._uploadsLocked=!1,this._needsClusterSizeUpdate=!1,this.featureEffectView=new m,this._lastDefinitionExpression=null}destroy(){var e;Object(y["b"])(this._updateClusterSizeTask,e=>e.remove()),null==(e=this._proxy)||e.destroy(),this._commandsQueue.destroy()}initialize(){this.addResolvingPromise(Promise.all([this._initProxy(),this._initServiceOptions()])),this.handles.add([this.on("valueRangesChanged",e=>{this._set("_aggregateValueRanges",e.valueRanges)}),Object(b["e"])(()=>this.featureEffect,e=>{this.featureEffectView.featureEffect=e},{initial:!0,sync:!0})])}async _initProxy(){if("isTable"in this.layer&&this.layer.isTable)throw new d["a"]("featurelayerview:table-not-supported","table feature layer can't be displayed",{layer:this.layer});this._proxy&&this._proxy.destroy();const e=this._createClientOptions();return this._set("_proxy",new J({client:e})),this._proxy.when()}async _initServiceOptions(){return this._set("_serviceOptions",await this._createServiceOptions()),this._serviceOptions}get orderByFields(){return"stream"!==this._serviceOptions.type&&this._serviceOptions.orderByFields}get labelsVisible(){const e="subtype-group"===this.layer.type?this.layer.sublayers.items:[this.layer];return!this.suspended&&e.some(e=>e.labelingInfo&&e.labelsVisible)}get queryMode(){return this._serviceOptions.type}get renderingConfigHash(){if(!this.layer)return null;const e=this.availableFields,t=this.layer,i=this.view.floors,{definitionExpression:r}=t,s="subtype-group"!==this.layer.type&&this.layer.labelsVisible&&this.layer.labelingInfo,a="renderer"in t&&t.renderer,n="feature"===t.type?t.gdbVersion:void 0,o="feature"===t.type&&t.historicMoment?t.historicMoment.getTime():void 0,{timeExtent:l}=this,c="customParameters"in t?JSON.stringify(t.customParameters):void 0,u="apiKey"in t?t.apiKey:void 0,d="stream"===t.type?`${JSON.stringify(t.geometryDefinition)}${t.definitionExpression}`:null,h=JSON.stringify(this.clips),p=t.featureReduction&&t.featureReduction.toJSON(),f="orderBy"in this.layer&&JSON.stringify(this.layer.orderBy),b="sublayers"in this.layer&&this.layer.sublayers.items.reduce((e,t)=>e+`${t.visible?1:0}.${JSON.stringify(t.renderer)}.${t.labelsVisible}\n.${JSON.stringify(t.labelingInfo)}`,"");return JSON.stringify({orderBy:f,sublayerHash:b,filterHash:Object(y["k"])(this.filter)&&this.filter.toJSON(),effectHash:Object(y["k"])(this.featureEffect)&&this.featureEffect.toJSON(),streamFilter:d,gdbVersion:n,definitionExpression:r,historicMoment:o,availableFields:e,renderer:a,labelingInfo:s,timeExtent:l,floors:i,clipsHash:h,featureReduction:p,customParameters:c,apiKey:u})}highlight(e){var t;let i;return e instanceof s["a"]?i=[e.getObjectId()]:"number"==typeof e||"string"==typeof e?i=[e]:Array.isArray(e)&&e.length>0?i="number"==typeof e[0]||"string"==typeof e[0]?e:e.map(e=>null==e?void 0:e.getObjectId()):u["a"].isCollection(e)&&e.length>0&&(i=e.map(e=>null==e?void 0:e.getObjectId()).toArray()),i=null==(t=i)?void 0:t.filter(e=>null!=e),i&&i.length?(this._addHighlight(i),{remove:()=>this._removeHighlight(i)}):{remove:()=>{}}}hasHighlight(){return!!this._highlightIds.size}async hitTest(e,t){if(!this.tileRenderer)return null;const i=await this.tileRenderer.hitTest(t);if(0===i.length)return null;const{features:r,aggregates:a}=await this._proxy.getFeatures(i);return[...a.map(e=>this._createHittestResult(c.fromJSON(e))),...r.map(e=>this._createHittestResult(s["a"].fromJSON(e)))]}async queryAggregates(){return(await this._proxy.getAggregates()).map(e=>c.fromJSON(e))}queryStatistics(){return this._proxy.queryStatistics()}async querySummaryStatistics(e,t,i){const r={...t,scale:this.view.scale};return this._proxy.querySummaryStatistics(this._cleanUpQuery(e),r,i)}async queryUniqueValues(e,t,i){const r={...t,scale:this.view.scale};return this._proxy.queryUniqueValues(this._cleanUpQuery(e),r,i)}async queryClassBreaks(e,t,i){const r={...t,scale:this.view.scale};return this._proxy.queryClassBreaks(this._cleanUpQuery(e),r,i)}async queryHistogram(e,t,i){const r={...t,scale:this.view.scale};return this._proxy.queryHistogram(this._cleanUpQuery(e),r,i)}queryFeatures(e,t){return this.queryFeaturesJSON(e,t).then(e=>{const t=j["default"].fromJSON(e);return t.features.forEach(e=>this._setLayersForFeature(e)),t})}queryVisibleFeatures(e,t){return this._proxy.queryVisibleFeatures(this._cleanUpQuery(e),t).then(e=>{const t=j["default"].fromJSON(e);return t.features.forEach(e=>this._setLayersForFeature(e)),t})}queryFeaturesJSON(e,t){return this._proxy.queryFeatures(this._cleanUpQuery(e),t)}queryObjectIds(e,t){return this._proxy.queryObjectIds(this._cleanUpQuery(e),t)}queryFeatureCount(e,t){return this._proxy.queryFeatureCount(this._cleanUpQuery(e),t)}queryExtent(e,t){return this._proxy.queryExtent(this._cleanUpQuery(e),t).then(e=>({count:e.count,extent:W["a"].fromJSON(e.extent)}))}setVisibility(e,t){t?this._visibilityOverrides.delete(e):this._visibilityOverrides.add(e),this._update()}update(e){if(!this._tileStrategy||!this.tileRenderer)return;const{hasMissingTiles:t,added:i,removed:r}=this._tileStrategy.update(e);(i.length||r.length)&&this._proxy.updateTiles({added:i,removed:r}),t&&this.requestUpdate(),this.notifyChange("updating")}attach(){this.view.timeline.record(this.layer.title+" (FeatureLayer) Attach"),this._tileStrategy=new D({acquireTile:e=>this._acquireTile(e),releaseTile:e=>this._releaseTile(e),tileInfoView:this.view.featuresTilingScheme,buffer:0}),this.handles.add(Object(b["e"])(()=>this.renderingConfigHash,()=>this._update(),b["a"]),"attach"),"stream"!==this.layer.type&&this.handles.add(this.layer.on("edits",e=>this._edit(e)),"attach")}detach(){var e;this._commandsQueue.clear(),null==(e=this._proxy)||e.stop(),this.container.removeAllChildren(),this.handles.remove("attach"),this.tileRenderer&&(this.tileRenderer.uninstall(this.container),this.tileRenderer=null),this._tileStrategy&&(this._tileStrategy.destroy(),this._tileStrategy=null),this._tileRendererHash=null}moveStart(){this.requestUpdate()}viewChange(){this.requestUpdate()}moveEnd(){this.requestUpdate()}isUpdating(){var e;const t="renderer"in this.layer&&null!=this.layer.renderer,i=this._commandsQueue.updating,r=null!=this._updatingRequiredFieldsPromise,s=!this._proxy||!this._proxy.isReady,a=this._pipelineIsUpdating,o=null==this.tileRenderer||(null==(e=this.tileRenderer)?void 0:e.updating),l=t&&(i||r||s||a||o);return Object(n["a"])("esri-2d-log-updating")&&console.log(`Updating FLV2D: ${l}\n -> hasRenderer ${t}\n -> hasPendingCommand ${i}\n -> updatingRequiredFields ${r}\n -> updatingProxy ${s}\n -> updatingPipeline ${a}\n -> updatingTileRenderer ${o}\n`),l}_createClientOptions(){return{setUpdating:e=>{this._set("_pipelineIsUpdating",e)},emitEvent:e=>{this.emit(e.name,e.event)}}}async _detectQueryMode(e){var t;const i="path"in e,r="editingInfo"in this.layer&&(null==(t=this.layer.editingInfo)?void 0:t.lastEditDate),s=!!this.layer.refreshInterval,a=!r&&s;if(i&&("feature"===this.layer.type||"subtype-group"===this.layer.type)&&"point"===this.layer.geometryType&&this.layer.capabilities.query.supportsPagination&&!this.layer.capabilities.operations.supportsEditing&&!a&&Object(n["a"])("featurelayer-snapshot-enabled"))try{const e=await this.layer.queryFeatureCount();if(e<=Object(n["a"])("featurelayer-snapshot-point-min-threshold"))return{mode:"snapshot",featureCount:e};const t=Object(n["a"])("featurelayer-snapshot-point-max-threshold"),i=Object(n["a"])("featurelayer-snapshot-point-coverage"),r=this.view.extent,s=Object(y["t"])(this.layer.fullExtent),a=null==s?void 0:s.clone().intersection(r),o=Object(y["k"])(a)?a.width*a.height:0,l=(null==s?void 0:s.width)*(null==s?void 0:s.height),c=0===l?0:o/l;if(e<=t&&c>=i)return{mode:"snapshot",featureCount:e}}catch(o){X.warn("mapview-feature-layer","Encountered an error when querying for featureCount",{error:o})}return{mode:"on-demand"}}async _createServiceOptions(){var e;const t=this.layer;if("stream"===t.type)return null;const{capabilities:i,objectIdField:r}=t,s=t.fields.map(e=>e.toJSON()),a=Object(y["k"])(t.fullExtent)&&t.fullExtent.toJSON(),n=Object(z["b"])(t.geometryType),o=t.timeInfo&&t.timeInfo.toJSON()||null,l=t.spatialReference?t.spatialReference.toJSON():null,c="feature"===t.type?t.globalIdField:null;let u;"ogc-feature"===t.type?u=t.source.getFeatureDefinition():Z(t.source)?u=await t.source.openPorts():t.parsedUrl&&(u=Object(h["a"])(t.parsedUrl),"dynamicDataSource"in t&&t.dynamicDataSource&&(u.query={layer:JSON.stringify({source:t.dynamicDataSource})}));const d="datesInUnknownTimezone"in this.layer&&this.layer.datesInUnknownTimezone,p=null!=(e="subtypeField"in this.layer&&this.layer.subtypeField)?e:null,{mode:f,featureCount:b}=await this._detectQueryMode(u);let g=this.layer.objectIdField;if("feature"===this.layer.type&&Object(y["k"])(this.layer.orderBy)&&this.layer.orderBy.length){const e=!this.layer.orderBy[0].valueExpression&&this.layer.orderBy[0].field;e&&(g=e)}return{type:f,timeReferenceUnknownClient:d,subtypeField:p,featureCount:b,globalIdField:c,maxRecordCount:i.query.maxRecordCount,tileMaxRecordCount:i.query.tileMaxRecordCount,capabilities:i,fields:s,fullExtent:a,geometryType:n,objectIdField:r,source:u,timeInfo:o,spatialReference:l,orderByFields:g}}async _createMemoryServiceOptions(e){const t=await e.openPorts();return{...this._createServiceOptions(),type:"memory",source:t}}_cleanUpQuery(e){const t=w["a"].from(e)||this.createQuery();return t.outSpatialReference||(t.outSpatialReference=this.view.spatialReference),t}async _update(){return this._commandsQueue.push({type:"update"})}async _edit(e){if(!this.suspended)return this._validateEdit(e)?this._commandsQueue.push({type:"edit",edits:e}):void 0;this._clearTiles()}async doRefresh(e){if(this._tileStrategy.tileKeys().length)return this.suspended&&e?void this._clearTiles():this._commandsQueue.push({type:"refresh",dataChanged:e})}_clearTiles(){this._tileStrategy.tileKeys().length&&(this._proxy.updateTiles({added:[],removed:this._tileStrategy.tileKeys()}),this._tileStrategy.clear(),this.requestUpdate(),this._commandsQueue.clear(),this._update())}_validateEdit(e){const t="globalIdField"in this.layer&&this.layer.globalIdField,i=e.deletedFeatures.some(e=>-1===e.objectId||!e.objectId),r=t&&this.availableFields.includes(t);return i&&!r?(X.error(new d["a"]("mapview-apply-edits",`Editing the specified service requires the layer's globalIdField, ${t} to be included the layer's outFields for updates to be reflected on the map`)),null):e}async _doUpdate(){try{if(this.destroyed||!this._hasRequiredSupport(this.layer)||!this._tileStrategy)return;const{featureEffectView:t,filter:i}=this;await this._updateRequiredFields();const{renderer:r}=this._getEffectiveRenderer();this._set("_effectiveRenderer",r);const s=this._createSchemaConfig(),a=this._createConfiguration(s,i,t.filter),n=this._lastDefinitionExpression!==a.definitionExpression;this._lastDefinitionExpression=a.definitionExpression;const o=this._createTileRendererHash(r);if("snapshot"===this._serviceOptions.type&&(a.schema.source.featureCount=this._serviceOptions.featureCount),o!==this._tileRendererHash){await this._initTileRenderer(r);const e=this.layer,t="stream"===e.type?await this._initServiceOptions():this._serviceOptions;this.tileRenderer.onConfigUpdate(r),"stream"!==e.type&&Z(e.source)&&(t.source=await e.source.openPorts());const i={added:this._tileStrategy.tileKeys(),removed:[]};await this._proxy.startup(this.view.featuresTilingScheme,a,t,i),this.hasHighlight()&&await this._proxy.setHighlight(Array.from(this._highlightIds.keys())),await this._onceTilesUpdated(),this.tileRenderer.onConfigUpdate(r)}else{"snapshot"===this._serviceOptions.type&&n&&(a.schema.source.featureCount=await this.layer.queryFeatureCount());const t=await this._proxy.update(a);(t.mesh||t.targets.aggregate)&&this._lockGPUUploads();try{await this._proxy.applyUpdate(t)}catch(e){Object(f["m"])(e)||X.error(e)}(t.mesh||t.targets.aggregate)&&this._unlockGPUUploads(),this.tileRenderer.onConfigUpdate(r),this._updateClusterSizeVariable(),this._forceAttributeTextureUpload()}this._tileRendererHash=o,this.tileRenderer.invalidateLabels(),this.requestUpdate()}catch(e){}}async _doEdit(e){try{await this._proxy.onEdits(e)}catch(t){Object(f["m"])(t)}}async _doRefresh(e){var t;this._lockGPUUploads();try{await this._proxy.refresh(e)}catch(i){Object(f["m"])(i)}this._unlockGPUUploads(),null!=(t=this.layer)&&t.featureReduction&&this._updateClusterSizeVariable()}_updateClusterSizeVariable(){this._needsClusterSizeUpdate&&(this.tileRenderer.onConfigUpdate(this._effectiveRenderer),this._needsClusterSizeUpdate=!1)}_createUpdateClusterSizeTask(e,t){return this.watch("_aggregateValueRanges",async i=>{this._updateClusterEffectiveRendererSizeVariable(e,t,i),this._needsClusterSizeUpdate=!0,this._uploadsLocked||this._updateClusterSizeVariable()})}async _updateClusterEffectiveRendererSizeVariable(e,t,i){if(e.dynamicClusterSize&&"visualVariables"in e&&e.visualVariables){const r=Object(F["c"])(e.visualVariables);if(Object(y["k"])(r)&&"cluster_count"===r.field){const s=e.visualVariables.indexOf(r);e.visualVariables[s]=Object(F["a"])(t,i);const a=e.clone();a.dynamicClusterSize=!0,this._set("_effectiveRenderer",a)}}}_getEffectiveRenderer(){const e="renderer"in this.layer&&this.layer.renderer,t=this.layer.featureReduction;if(Object(y["k"])(this._updateClusterSizeTask)&&(this._updateClusterSizeTask.remove(),this._updateClusterSizeTask=null),t&&"cluster"===t.type&&Object(F["d"])(e)){const i=t,r=[],s=Object(F["b"])(r,e,i,this._aggregateValueRanges);return Object(y["b"])(this._updateClusterSizeTask,e=>e.remove()),this._updateClusterSizeTask=this._createUpdateClusterSizeTask(s,i),{renderer:s,aggregateFields:r,featureReduction:t}}return{renderer:e,aggregateFields:[],featureReduction:null}}_acquireTile(e){const t=this.tileRenderer.acquireTile(e);return t.once("attach",()=>{this.requestUpdate()}),t}_releaseTile(e){this.tileRenderer.releaseTile(e)}async _initTileRenderer(e){const t=await S(e,{layerView:this,tileInfoView:this.view.featuresTilingScheme,layer:this.layer});return this.tileRenderer&&(this._tileStrategy.clear(),this.tileRenderer.uninstall(this.container),this.tileRenderer.destroy(),this.tileRenderer=null),this.destroyed?null:(this._proxy.tileRenderer=t,this._set("tileRenderer",t),this.tileRenderer.install(this.container),this.tileRenderer.onConfigUpdate(e),this.requestUpdate(),this.tileRenderer)}_createTileRendererHash(e){return""+("heatmap"===e.type?"heatmap":"symbol")}get hasFilter(){const e=!!("floorInfo"in this.layer&&this.layer.floorInfo&&this.view.floors&&this.view.floors.length);return!!this.filter||e||!!this._visibilityOverrides.size||!!this.timeExtent}_injectOverrides(e){const t=Object(y["k"])(e)?e.timeExtent:null,i=Object(y["k"])(this.timeExtent)&&Object(y["k"])(t)?this.timeExtent.intersection(t):this.timeExtent||t;let r=null;const s="floorInfo"in this.layer&&this.layer.floorInfo;if(s){const t=Object(y["k"])(e)&&e.where;r=this._addFloorFilterClause(t)}if(!this._visibilityOverrides.size&&!i&&!s)return Object(y["k"])(e)?e.toJSON():null;(e=Object(y["k"])(e)&&e.clone()||new v["a"]).timeExtent=i,r&&(e.where=r);const a=e.toJSON();return a.hiddenIds=Array.from(this._visibilityOverrides),a}_addFloorFilterClause(e){const t=this.layer;let i=e||"";if("floorInfo"in t&&t.floorInfo){var r;let e=this.view.floors;if(!e||!e.length)return i;null!=(r=t.floorInfo.viewAllLevelIds)&&r.length&&(e=t.floorInfo.viewAllLevelIds);const s=e.filter(e=>""!==e).map(e=>"'"+e+"'");s.push("''");const a=t.floorInfo.floorField;let n="("+a+" IN ({ids}) OR "+a+" IS NULL)";if(n=n.replace("{ids}",s.join(", ")),Object(y["k"])(i)&&i.includes(a)){let e=new RegExp("AND \\("+a+".*NULL\\)","g");i=i.replace(e,""),e=new RegExp("\\("+a+".*NULL\\)","g"),i=i.replace(e,""),i=i.replace(/\s+/g," ").trim()}i=""!==i?"("+i+") AND "+n:n}return""!==i?i:null}_createConfiguration(e,t,i){const r="feature"===this.layer.type&&this.layer.historicMoment?this.layer.historicMoment.getTime():void 0,s="feature"===this.layer.type?this.layer.gdbVersion:void 0,a=new Array(R["v"]),n=this._injectOverrides(t);a[0]=n,a[1]=Object(y["k"])(i)?i.toJSON():null;const o=Object(E["b"])(e);if(Object(y["j"])(o))return null;const l=Object(K["a"])();return{definitionExpression:this.layer.definitionExpression,availableFields:this.availableFields,gdbVersion:s,historicMoment:r,devicePixelRatio:window.devicePixelRatio||1,filters:a,schema:o,supportsTextureFloat:l.supportsTextureFloat,maxTextureSize:l.maxTextureSize}}_hasRequiredSupport(e){var t;return!("renderer"in e&&"dot-density"===(null==(t=e.renderer)?void 0:t.type)&&!Object(K["a"])().supportsTextureFloat)||(X.error(new d["a"]("webgl-missing-extension","Missing WebGL extension OES_Texture_Float which is required for DotDensity")),!1)}_onceTilesUpdated(){return this.requestUpdate(),Object(b["g"])(()=>!this._pipelineIsUpdating)}_lockGPUUploads(){this.tileRenderer&&(this._uploadsLocked=!0,this.tileRenderer.lockGPUUploads())}_unlockGPUUploads(){this.tileRenderer&&(this._uploadsLocked=!1,this.tileRenderer.unlockGPUUploads())}_forceAttributeTextureUpload(){this.tileRenderer&&this.tileRenderer.forceAttributeTextureUpload()}_createSchemaConfig(){const e="feature"===this.layer.type?this.layer.historicMoment:null,t="feature"===this.layer.type?this.layer.gdbVersion:null;return{renderer:"renderer"in this.layer&&this.layer.renderer,spatialReference:this.layer.spatialReference,timeExtent:this.layer.timeExtent,definitionExpression:this.layer.definitionExpression,featureReduction:this.layer.featureReduction,fields:this.layer.fields,geometryType:this.layer.geometryType,historicMoment:e,labelsVisible:"labelsVisible"in this.layer&&this.layer.labelsVisible,labelingInfo:"labelingInfo"in this.layer&&this.layer.labelingInfo,availableFields:this.availableFields,featureEffect:this.featureEffect,filter:this.filter,gdbVersion:t,pixelBuffer:0,orderBy:"orderBy"in this.layer&&this.layer.orderBy?this.layer.orderBy:null,customParameters:{..."customParameters"in this.layer?this.layer.customParameters:void 0,token:"apiKey"in this.layer?this.layer.apiKey:void 0}}}_addHighlight(e){for(const t of e)if(this._highlightIds.has(t)){const e=this._highlightIds.get(t);this._highlightIds.set(t,e+1)}else this._highlightIds.set(t,1);this._updateHighlight().catch(e=>{Object(f["m"])(e)||X.error(e)})}_removeHighlight(e){for(const t of e)if(this._highlightIds.has(t)){const e=this._highlightIds.get(t)-1;0===e?this._highlightIds.delete(t):this._highlightIds.set(t,e)}this._updateHighlight().catch(e=>{Object(f["m"])(e)||X.error(e)})}_setLayersForFeature(e){const t=this.layer;e.layer=t,e.sourceLayer=t}_createHittestResult(e){return this._setLayersForFeature(e),Object(y["k"])(e.geometry)&&(e.geometry.spatialReference=this.view.spatialReference),e}};Object(r["a"])([Object(a["b"])()],Y.prototype,"_serviceOptions",void 0),Object(r["a"])([Object(a["b"])()],Y.prototype,"_proxy",void 0),Object(r["a"])([Object(a["b"])()],Y.prototype,"_pipelineIsUpdating",void 0),Object(r["a"])([Object(a["b"])()],Y.prototype,"_effectiveRenderer",void 0),Object(r["a"])([Object(a["b"])()],Y.prototype,"_aggregateValueRanges",void 0),Object(r["a"])([Object(a["b"])()],Y.prototype,"_commandsQueue",void 0),Object(r["a"])([Object(a["b"])()],Y.prototype,"featureEffectView",void 0),Object(r["a"])([Object(a["b"])()],Y.prototype,"labelsVisible",null),Object(r["a"])([Object(a["b"])({readOnly:!0})],Y.prototype,"queryMode",null),Object(r["a"])([Object(a["b"])()],Y.prototype,"renderingConfigHash",null),Object(r["a"])([Object(a["b"])()],Y.prototype,"tileRenderer",void 0),Object(r["a"])([Object(a["b"])()],Y.prototype,"updating",void 0),Y=Object(r["a"])([Object(o["a"])("esri.views.2d.layers.FeatureLayerView2D")],Y);const ee=Y},"566d":function(e,t,i){"use strict";i.d(t,"a",(function(){return F}));var r=i("a4ee"),s=i("2c4f"),a=i("7d7d"),n=i("ce50"),o=i("477c"),l=i("59b2"),c=(i("b50f"),i("c120"),i("cea0"),i("d386")),u=i("00c0"),d=i("6a0ed");i("e92d"),i("2dd4");let h=class extends d["a"]{};h=Object(r["a"])([Object(c["a"])("esri.views.layers.support.ClipArea")],h);const p=h;var y;let f=y=class extends p{constructor(){super(...arguments),this.type="rect",this.left=null,this.right=null,this.top=null,this.bottom=null}clone(){return new y({left:this.left,right:this.right,top:this.top,bottom:this.bottom})}get version(){return(this._get("version")||0)+1}};Object(r["a"])([Object(l["b"])({type:[Number,String],json:{write:!0}})],f.prototype,"left",void 0),Object(r["a"])([Object(l["b"])({type:[Number,String],json:{write:!0}})],f.prototype,"right",void 0),Object(r["a"])([Object(l["b"])({type:[Number,String],json:{write:!0}})],f.prototype,"top",void 0),Object(r["a"])([Object(l["b"])({type:[Number,String],json:{write:!0}})],f.prototype,"bottom",void 0),Object(r["a"])([Object(l["b"])({readOnly:!0})],f.prototype,"version",null),f=y=Object(r["a"])([Object(c["a"])("esri.views.layers.support.ClipRect")],f);const b=f;i("e06a");var g,_=i("3760"),O=i("a9ab"),m=i("3af1"),v=i("1219");const j={base:_["a"],key:"type",typeMap:{extent:m["a"],polygon:v["a"]}};let w=g=class extends p{constructor(){super(...arguments),this.type="geometry",this.geometry=null}get version(){return(this._get("version")||0)+1}clone(){return new g({geometry:this.geometry.clone()})}};Object(r["a"])([Object(l["b"])({types:j,json:{read:O["a"],write:!0}})],w.prototype,"geometry",void 0),Object(r["a"])([Object(l["b"])({readOnly:!0})],w.prototype,"version",null),w=g=Object(r["a"])([Object(c["a"])("esri.views.layers.support.Geometry")],w);const R=w;let x=class extends p{constructor(){super(...arguments),this.type="path",this.path=[]}get version(){return(this._get("version")||0)+1}};Object(r["a"])([Object(l["b"])({type:[[[Number]]],json:{write:!0}})],x.prototype,"path",void 0),Object(r["a"])([Object(l["b"])({readOnly:!0})],x.prototype,"version",null),x=Object(r["a"])([Object(c["a"])("esri.views.layers.support.Path")],x);const E=x,S=s["a"].ofType({key:"type",base:p,typeMap:{rect:b,path:E,geometry:R}}),F=e=>{let t=class extends e{constructor(){super(...arguments),this.attached=!1,this.clips=new S,this.lastUpdateId=-1,this.moving=!1,this.updateRequested=!1}initialize(){var e,t,i,r;const s=null==(e=null==(t=this.view)?void 0:t.spatialReferenceLocked)||e;(null==(i=this.view)?void 0:i.spatialReference)&&s&&!this.spatialReferenceSupported?this.addResolvingPromise(Promise.reject(new n["a"]("layerview:spatial-reference-incompatible","The spatial reference of this layer does not meet the requirements of the view",{layer:this.layer}))):(this.container||(this.container=new u["a"]),this.container.fadeTransitionEnabled=!0,this.container.opacity=0,this.container.clips=this.clips,this.handles.add([Object(o["e"])(()=>this.suspended,e=>{this.container&&(this.container.visible=!e),this.view&&!e&&this.updateRequested&&this.view.requestUpdate()},o["d"]),Object(o["e"])(()=>{var e,t;return null!=(e=null==(t=this.layer)?void 0:t.opacity)?e:1},e=>{this.container&&(this.container.opacity=e)},o["d"]),Object(o["e"])(()=>this.layer&&"blendMode"in this.layer?this.layer.blendMode:"normal",e=>{this.container&&(this.container.blendMode=e)},o["d"]),Object(o["e"])(()=>this.layer&&"effect"in this.layer?this.layer.effect:null,e=>{this.container&&(this.container.effect=e)},o["d"]),Object(o["b"])(()=>this.clips,"change",()=>{this.container&&(this.container.clips=this.clips)})]),null!=(r=this.view)&&r.whenLayerView?this.view.whenLayerView(this.layer).then(e=>{e===this&&this.processAttach()},()=>{}):this.when().then(()=>{this.processAttach()},()=>{}))}destroy(){this.processDetach(),this.updateRequested=!1}get spatialReferenceSupported(){var e;const t=null==(e=this.view)?void 0:e.spatialReference;return null==t||this.supportsSpatialReference(t)}get updating(){var e;return this.spatialReferenceSupported&&(!this.attached||!this.suspended&&(this.updateRequested||this.isUpdating())||!(null==(e=this.updatingHandles)||!e.updating))}get visibleAtCurrentScale(){return this.isVisibleAtScale(this.view.scale)}processAttach(){this.isResolved()&&!this.attached&&!this.destroyed&&this.spatialReferenceSupported&&(this.attach(),this.attached=!0,this.requestUpdate())}processDetach(){this.attached&&(this.attached=!1,this.detach(),this.updateRequested=!1)}isVisibleAtScale(e){const t=this.layer&&"effectiveScaleRange"in this.layer?this.layer.effectiveScaleRange:null;if(!t)return!0;const{minScale:i,maxScale:r}=t;return(0===i||e<=i)&&(0===r||e>=r)}requestUpdate(){this.destroyed||this.updateRequested||(this.updateRequested=!0,this.suspended||this.view.requestUpdate())}processUpdate(e){!this.isFulfilled()||this.isResolved()?(this._set("updateParameters",e),this.updateRequested&&!this.suspended&&(this.updateRequested=!1,this.update(e))):this.updateRequested=!1}hitTest(e,t){return Promise.resolve(null)}supportsSpatialReference(e){return!0}canResume(){return!!this.spatialReferenceSupported&&!!super.canResume()&&this.visibleAtCurrentScale}getSuspendInfo(){const e=super.getSuspendInfo(),t=!this.spatialReferenceSupported,i=this.visibleAtCurrentScale;return t&&(e.spatialReferenceNotSupported=t),i&&(e.outsideScaleRange=i),e}};return Object(r["a"])([Object(l["b"])()],t.prototype,"attached",void 0),Object(r["a"])([Object(l["b"])({type:S,set(e){const t=Object(a["b"])(e,this._get("clips"),S);this._set("clips",t)}})],t.prototype,"clips",void 0),Object(r["a"])([Object(l["b"])()],t.prototype,"container",void 0),Object(r["a"])([Object(l["b"])()],t.prototype,"moving",void 0),Object(r["a"])([Object(l["b"])({readOnly:!0})],t.prototype,"spatialReferenceSupported",null),Object(r["a"])([Object(l["b"])({readOnly:!0})],t.prototype,"updateParameters",void 0),Object(r["a"])([Object(l["b"])()],t.prototype,"updateRequested",void 0),Object(r["a"])([Object(l["b"])()],t.prototype,"updating",null),Object(r["a"])([Object(l["b"])()],t.prototype,"view",void 0),Object(r["a"])([Object(l["b"])({readOnly:!0})],t.prototype,"visibleAtCurrentScale",null),t=Object(r["a"])([Object(c["a"])("esri.views.2d.layers.LayerView2D")],t),t}},"6c7a":function(e,t,i){"use strict";i.d(t,"a",(function(){return c}));var r=i("a4ee"),s=i("e92d"),a=i("f4cc"),n=i("477c"),o=i("59b2"),l=(i("b50f"),i("c120"),i("cea0"),i("d386"));const c=e=>{let t=class extends e{initialize(){this.handles.add(Object(n["b"])(()=>this.layer,"refresh",e=>{this.doRefresh(e.dataChanged).catch(e=>{Object(a["m"])(e)||s["a"].getLogger(this.declaredClass).error(e)})}),"RefreshableLayerView")}};return Object(r["a"])([Object(o["b"])()],t.prototype,"layer",void 0),t=Object(r["a"])([Object(l["a"])("esri.layers.mixins.RefreshableLayerView")],t),t}},ad73:function(e,t,i){"use strict";i.d(t,"a",(function(){return n})),i.d(t,"b",(function(){return a}));var r=i("b2b2"),s=i("c1da");async function a(e,t=e.popupTemplate){if(!Object(r["k"])(t))return[];const i=await t.getRequiredFields(e.fieldsIndex),{lastEditInfoEnabled:a}=t,{objectIdField:n,typeIdField:o,globalIdField:l,relationships:c}=e;if(i.includes("*"))return["*"];const u=a?await Object(s["n"])(e):[],d=Object(s["j"])(e.fieldsIndex,[...i,...u]);return o&&d.push(o),d&&n&&e.fieldsIndex.has(n)&&-1===d.indexOf(n)&&d.push(n),d&&l&&e.fieldsIndex.has(l)&&-1===d.indexOf(l)&&d.push(l),c&&c.forEach(t=>{const{keyField:i}=t;d&&i&&e.fieldsIndex.has(i)&&-1===d.indexOf(i)&&d.push(i)}),d}function n(e,t){return e.popupTemplate?e.popupTemplate:Object(r["k"])(t)&&t.defaultPopupTemplateEnabled&&Object(r["k"])(e.defaultPopupTemplate)?e.defaultPopupTemplate:null}},ceb0:function(e,t,i){"use strict";i.d(t,"a",(function(){return v}));var r=i("a4ee"),s=i("e20b"),a=i("ce50"),n=i("e92d"),o=i("b2b2"),l=i("f4cc"),c=i("3795"),u=i("59b2"),d=(i("b50f"),i("c120"),i("cea0"),i("d386")),h=i("22f4"),p=i("1f3b"),y=i("96d4"),f=i("c1da"),b=i("69dd"),g=i("82fa"),_=i("ad73"),O=i("f353");const m=n["a"].getLogger("esri.views.layers.FeatureLayerView"),v=e=>{let t=class extends e{constructor(...e){super(...e),this._updatingRequiredFieldsPromise=null,this.filter=null,this.timeExtent=null,this.layer=null,this.requiredFields=[],this.view=null}initialize(){Object(c["a"])(this,["layer.renderer","layer.labelingInfo","layer.elevationInfo.featureExpressionInfo","layer.displayField","filter","featureEffect","layer.timeInfo","layer.floorInfo","timeExtent"],()=>this._handleRequiredFieldsChange(),!0),Object(c["b"])(this,"view.floors","change",()=>this._handleRequiredFieldsChange()),Object(c["b"])(this,"layer.sublayer","change",()=>this._handleRequiredFieldsChange())}get availableFields(){const{layer:e,layer:{fieldsIndex:t},requiredFields:i}=this;return"outFields"in e&&e.outFields?Object(f["j"])(t,[...Object(f["u"])(t,e.outFields),...i]):Object(f["j"])(t,i)}set effect(e){Object(s["c"])(m,"effect",{replacement:"featureEffect",version:"4.22"}),this.featureEffect=e}get effect(){return Object(s["c"])(m,"effect",{replacement:"featureEffect",version:"4.22"}),this.featureEffect}get featureEffect(){return this.layer&&"featureEffect"in this.layer?this.layer.featureEffect:null}set featureEffect(e){void 0!==e?this._override("featureEffect",e):this._clearOverride("featureEffect")}get maximumNumberOfFeatures(){return 0}set maximumNumberOfFeatures(e){m.error("#maximumNumberOfFeatures=","Setting maximum number of features is not supported")}get maximumNumberOfFeaturesExceeded(){return!1}highlight(e){throw new Error("missing implementation")}createQuery(){const e={outFields:["*"],returnGeometry:!0,outSpatialReference:this.view.spatialReference},t=Object(o["k"])(this.filter)?this.filter.createQuery(e):new b["a"](e);if("feature"===this.layer.type){const e=Object(O["b"])(this);Object(o["k"])(e)&&(t.where=t.where?`(${t.where}) AND (${e})`:e)}return Object(o["k"])(this.timeExtent)&&(t.timeExtent=Object(o["k"])(t.timeExtent)?t.timeExtent.intersection(this.timeExtent):this.timeExtent.clone()),t}queryFeatures(e,t){throw new Error("missing implementation")}queryObjectIds(e,t){throw new Error("missing implementation")}queryFeatureCount(e,t){throw new Error("missing implementation")}queryExtent(e,t){throw new Error("missing implementation")}async fetchPopupFeatures(e,t){const i=this.validateFetchPopupFeatures(t);if(i)throw i;return this.fetchClientPopupFeatures(t)}_loadArcadeModules(e){if(e.get("expressionInfos.length")||Array.isArray(e.content)&&e.content.some(e=>"expression"===e.type))return Object(g["e"])()}_handleRequiredFieldsChange(){const e=this._updateRequiredFields();this._set("_updatingRequiredFieldsPromise",e),e.then(()=>{this._updatingRequiredFieldsPromise===e&&this._set("_updatingRequiredFieldsPromise",null)})}async _updateRequiredFields(){if(!this.layer||!this.view)return;const e="3d"===this.view.type,{layer:t,layer:{fieldsIndex:i,objectIdField:r}}=this,s="renderer"in t&&t.renderer,a="orderBy"in t&&t.orderBy,n=t.featureReduction,c=new Set,u=await Object(l["j"])([s?s.collectRequiredFields(c,i):null,Object(f["g"])(c,t),e?Object(f["b"])(c,t):null,Object(o["k"])(this.filter)?Object(f["f"])(c,t,this.filter):null,Object(o["k"])(this.featureEffect)?Object(f["f"])(c,t,this.featureEffect.filter):null,n?Object(f["c"])(c,t,n):null,a?Object(f["h"])(c,t,a):null]);if(t.timeInfo&&this.timeExtent&&Object(f["e"])(c,t.fieldsIndex,[t.timeInfo.startField,t.timeInfo.endField]),"feature"===t.type&&t.floorInfo&&Object(f["e"])(c,t.fieldsIndex,[t.floorInfo.floorField]),"subtype-group"===t.type){Object(f["d"])(c,i,t.subtypeField);const e=t.sublayers.map(e=>{var t;return Promise.all([null==(t=e.renderer)?void 0:t.collectRequiredFields(c,i),Object(f["g"])(c,e)])});await Object(l["j"])(e)}for(const o of u)o.error&&m.error(o.error);Object(f["d"])(c,i,r),e&&"displayField"in t&&t.displayField&&Object(f["d"])(c,i,t.displayField);const d=Array.from(c).sort();this._set("requiredFields",d)}validateFetchPopupFeatures(e){if(Object(o["j"])(e))return null;for(const t of e.clientGraphics){const i=t.layer;if("popupEnabled"in i&&!i.popupEnabled)return new a["a"]("featurelayerview:fetchPopupFeatures","Popups are disabled",{layer:i});if("popupTemplate"in i&&!Object(_["a"])(i,e))return new a["a"]("featurelayerview:fetchPopupFeatures","Layer does not define a popup template",{layer:i});if(t.isAggregate&&!(i.featureReduction&&"popupTemplate"in i.featureReduction&&i.featureReduction.popupEnabled&&i.featureReduction.popupTemplate))return new a["a"]("featurelayerview:fetchPopupFeatures","Popups are disabled",{layer:i})}}async fetchClientPopupFeatures(e){const t=Object(o["k"])(e)?e.clientGraphics:null;if(!t||0===t.length)return[];const i=new Array(t.length),r=new Map,s=await this.createPopupQuery(e);for(let a=0;ae.layer):[this.layer];for(const a of s){if(!("popupEnabled"in a))continue;const t=Object(_["a"])(a,e);if(!Object(o["k"])(t))continue;const s=await this._loadArcadeModules(t),n=s&&s.arcadeUtils.hasGeometryOperations(t);r=!("point"!==this.layer.geometryType&&!n);const l=await Object(_["b"])(this.layer,t);for(const e of l)i.add(e)}if(t.returnGeometry=r,t.returnZ=r,t.returnM=r,t.outFields=Array.from(i),t.outSpatialReference=this.view.spatialReference,"feature"===this.layer.type){const e=Object(O["b"])(this);Object(o["k"])(e)&&(t.where=t.where?`(${t.where}) AND (${e})`:e)}return t}canResume(){return!!super.canResume()&&(!Object(o["k"])(this.timeExtent)||!this.timeExtent.isEmpty)}};return Object(r["a"])([Object(u["b"])()],t.prototype,"_updatingRequiredFieldsPromise",void 0),Object(r["a"])([Object(u["b"])({readOnly:!0})],t.prototype,"availableFields",null),Object(r["a"])([Object(u["b"])()],t.prototype,"effect",null),Object(r["a"])([Object(u["b"])({type:p["a"]})],t.prototype,"featureEffect",null),Object(r["a"])([Object(u["b"])({type:y["a"]})],t.prototype,"filter",void 0),Object(r["a"])([Object(u["b"])(h["a"])],t.prototype,"timeExtent",void 0),Object(r["a"])([Object(u["b"])()],t.prototype,"layer",void 0),Object(r["a"])([Object(u["b"])({type:Number})],t.prototype,"maximumNumberOfFeatures",null),Object(r["a"])([Object(u["b"])({readOnly:!0,type:Boolean})],t.prototype,"maximumNumberOfFeaturesExceeded",null),Object(r["a"])([Object(u["b"])({readOnly:!0})],t.prototype,"requiredFields",void 0),Object(r["a"])([Object(u["b"])()],t.prototype,"suspended",void 0),Object(r["a"])([Object(u["b"])()],t.prototype,"view",void 0),t=Object(r["a"])([Object(d["a"])("esri.views.layers.FeatureLayerView")],t),t}}}]); //# sourceMappingURL=chunk-44f12b50.252c6918.js.map