@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
6 lines (5 loc) • 1.42 kB
JavaScript
/*
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/4.32/esri/copyright.txt for details.
*/
import{_ as t}from"../../../../chunks/tslib.es6.js";import{property as r}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/has.js";import"../../../../core/Logger.js";import"../../../../core/RandomLCG.js";import{subclass as s}from"../../../../core/accessorSupport/decorators/subclass.js";import{Deconflictor as e,State as o}from"./Deconflictor.js";import{VisibilityGroup as i}from"./enums.js";import{RenderState as a}from"../../../support/RenderState.js";import{Yield as n}from"../../../support/Yield.js";const c=2e3;let p=class extends e{constructor(t){super(t),this.visibilityGroup=i.LABEL,this.marginFactor=.05,this._lastDeconfliction=0}initialize(){this._updatingHandles.add((()=>0===(this.view?.map?.ground?.opacity??0)),(()=>this.setDirty()))}get viewState(){return this.parent.viewState}runTask(t){if(this.parent.running)return n;const r=performance.now();if(t.state!==a.IDLE&&r-this._lastDeconfliction<c)return n;super.runTask(t),this.state===o.Idle&&(this._lastDeconfliction=r)}enabledChanged(t,r){this.modifyGraphics(r,t.labelsEnabled)}getGraphicsLayers(t){return t.labelLayers}};t([r({constructOnly:!0})],p.prototype,"parent",void 0),p=t([s("esri.views.3d.layers.graphics.LabelDeconflictor")],p);export{p as LabelDeconflictor};