// All material copyright Esri, All Rights Reserved, unless otherwise specified. // See https://js.arcgis.com/4.30/esri/copyright.txt for details. //>>built define("../../../chunks/tslib.es6 ../../../Graphic ../../../core/has ../../../core/reactiveUtils ../../../core/accessorSupport/decorators/property ../../../core/Logger ../../../core/RandomLCG ../../../core/accessorSupport/decorators/subclass ./I3SMeshView3D ./interfaces ./LayerView3D ../support/updatingProperties ../../layers/LayerView ../../support/layerViewUtils".split(" "),function(b,f,g,d,c,a,r,h,k,l,m,n,p,q){a=class extends k.I3SMeshView3D(m.LayerView3D(p)){constructor(){super(...arguments); this.type="integrated-mesh-3d";this._elevationContext="im";this._isIntegratedMesh=!0;this._supportsLabeling=!1;this._needsNormals=!g("disable-feature:im-shading");this.drapeTargetType=l.DrapeTargetType.WithoutRasterImage}get i3slayer(){return this.layer}get updatingProgressValue(){return this._controller?.updatingProgress??0}get lodFactor(){return this.view?.qualitySettings?.sceneService?.integratedMesh?.lodFactor??1}get progressiveLoadFactor(){return 1<=this.lodFactor?.2:1}get visibleAtCurrentScale(){return q.isInEffectiveScaleRange(this.i3slayer.effectiveScaleRange, this.view.terrainScale)}get layerPopupEnabledAndHasTemplate(){return!1}initialize(){this._updatingHandles.add(()=>this.layer.modifications,()=>this._loadModifications(),d.initial);this.view.basemapTerrain.overlayManager.registerDrapeTarget(this)}destroy(){this.view.basemapTerrain.overlayManager.unregisterDrapeTarget(this)}_createLayerGraphic(){return new f({layer:this.layer,sourceLayer:this.layer})}canResume(){return super.canResume()&&(!this._controller||this._controller.rootNodeVisible)}_loadModifications(){this.removeHandles("modifications"); if(null==this.layer.modifications)this._modifications=[];else{var e=this.layer.modifications;this.addHandles(this._updatingHandles.addOnCollectionChange(()=>e,()=>this._modifications=e.toArray(),d.initial),"modifications")}}};b.__decorate([c.property()],a.prototype,"layer",void 0);b.__decorate([c.property()],a.prototype,"i3slayer",null);b.__decorate([c.property(n.updatingProgress)],a.prototype,"updatingProgress",void 0);b.__decorate([c.property()],a.prototype,"updatingProgressValue",null);b.__decorate([c.property()], a.prototype,"lodFactor",null);b.__decorate([c.property({readOnly:!0})],a.prototype,"progressiveLoadFactor",null);b.__decorate([c.property({readOnly:!0})],a.prototype,"visibleAtCurrentScale",null);return a=b.__decorate([h.subclass("esri.views.3d.layers.IntegratedMeshLayerView3D")],a)});