(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d217289"],{c611:function(e,s,a){"use strict";a.r(s),a.d(s,"default",(function(){return w}));var i=a("a4ee"),t=a("2c4f"),n=(a("c120"),a("ce50")),l=a("b2b2"),r=a("f4cc"),o=a("59b2"),c=a("d386"),y=a("66af"),d=a("365a");const h="analysis-view-handles";let u=class extends(Object(y["a"])(d["a"])){constructor(e){super(e),this.type="analysis-3d",this.allAnalysisViews=new t["a"],this._creatingViewCount=0,this._analysisViewCreationTasks=new Map,this._analysisModules={"area-measurement":{module:null},"direct-line-measurement":{module:null},"line-of-sight":{module:null},slice:{module:null}}}initialize(){for(const e of this.layer.analyses)this._createAnalysisView(e);this.handles.add([this.layer.analyses.on("after-add",e=>{this._createAnalysisView(e.item)}),this.layer.analyses.on("after-remove",e=>{const s=this.allAnalysisViews.removeAt(this.allAnalysisViews.findIndex(s=>s.analysis===e.item));Object(l["k"])(s)&&s.destroy();const a=this._analysisViewCreationTasks.get(e.item);Object(l["k"])(a)&&(a.abort(),this._analysisViewCreationTasks.delete(e.item))})],h)}destroy(){this.handles.remove(h),this.allAnalysisViews.drain(e=>e.destroy()),this._analysisViewCreationTasks.clear(),this._creatingViewCount=0}whenAnalysisView(e){const s=this._analysisViewCreationTasks.get(e);if(Object(l["k"])(s))return s.promise;const a=new n["a"]("layerview:no-analysisview-for-analysis","The analysis has not been added to the AnalysisLayer of this layer view",{analysis:e});return Promise.reject(a)}isUpdating(){return 0!==this._creatingViewCount||this.allAnalysisViews.some(e=>e.updating)}_createAnalysisView(e){this._analysisViewCreationTasks.set(e,Object(r["h"])(s=>this._createAnalysisViewPromise(e,s)))}async _createAnalysisViewPromise(e,s){this._creatingViewCount+=1;const a=e.type,i=this._analysisModules[a];if(Object(l["j"])(i.module)){const e=await this._loadAnalysisModule(a);i.module=e}const t=new i.module.default({analysis:e,view:this.view,parent:this});if(await t.when(),this._creatingViewCount-=1,Object(r["n"])(s))throw t.destroy(),new n["a"]("layerview:no-analysisview-for-analysis","The analysis has not been added to the AnalysisLayer of this layer view",{analysis:e});return this.allAnalysisViews.add(t),t}_loadAnalysisModule(e){switch(e){case"area-measurement":return Promise.all([a.e("chunk-2d22cf8c"),a.e("chunk-72413f24"),a.e("chunk-422e17ee")]).then(a.bind(null,"fbed"));case"direct-line-measurement":return Promise.all([a.e("chunk-2d22cf8c"),a.e("chunk-72413f24"),a.e("chunk-e7725ec6")]).then(a.bind(null,"6d28"));case"line-of-sight":return a.e("chunk-743c160e").then(a.bind(null,"d92e"));case"slice":return a.e("chunk-08e8eb9a").then(a.bind(null,"4e85"));default:return null}}};Object(i["a"])([Object(o["b"])()],u.prototype,"type",void 0),Object(i["a"])([Object(o["b"])()],u.prototype,"layer",void 0),Object(i["a"])([Object(o["b"])()],u.prototype,"allAnalysisViews",void 0),Object(i["a"])([Object(o["b"])()],u.prototype,"_creatingViewCount",void 0),u=Object(i["a"])([Object(c["a"])("esri.views.3d.layers.AnalysisLayerView3D")],u);const w=u}}]); //# sourceMappingURL=chunk-2d217289.06b746d5.js.map