@doegis/core
Version:
DOE GIS API
3 lines (1 loc) • 1.72 kB
JavaScript
import{_ as e}from"../../../../chunks/tslib.es6.js";import t from"../../../../core/Handles.js";import{makeHandle as r}from"../../../../core/handleUtils.js";import{property as o}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/accessorSupport/ensureType.js";import"../../../../core/arrayUtils.js";import{subclass as s}from"../../../../core/accessorSupport/decorators/subclass.js";import a from"../../../../geometry/Polygon.js";import{toExtent as i}from"../../../../geometry/support/aaBoundingRect.js";import{TileTreeDebugger as n}from"../../../support/TileTreeDebugger.js";let d=class extends n{constructor(e){super(e),this._handles=new t}initialize(){const e=setInterval((()=>this._fetchDebugInfo()),2e3);this._handles.add(r((()=>clearInterval(e))))}destroy(){this._handles.destroy()}getTiles(){if(!this._debugInfo)return[];const e=new Map,t=new Map;this._debugInfo.storedTiles.forEach((t=>{e.set(t.data.id,t.featureCount)})),this._debugInfo.pendingTiles.forEach((r=>{e.set(r.data.id,r.featureCount),t.set(r.data.id,r.state)}));const r=r=>{const o=t.get(r),s=e.get(r)??"?";return o?`${o}:${s}\n${r}`:`store:${s}\n${r}`},o=new Map;return this._debugInfo.storedTiles.forEach((e=>{o.set(e.data.id,e.data)})),this._debugInfo.pendingTiles.forEach((e=>{o.set(e.data.id,e.data)})),Array.from(o.values()).map((e=>({lij:[e.level,e.row,e.col],geometry:a.fromExtent(i(e.extent,this.view.spatialReference)),label:r(e.id)})))}_fetchDebugInfo(){this.handle.getDebugInfo(null).then((e=>{this._debugInfo=e,this.update()}))}};e([o({constructOnly:!0})],d.prototype,"handle",void 0),d=e([s("esri.views.interactive.snapping.featureSources.WorkerTileTreeDebugger")],d);export{d as WorkerTileTreeDebugger};