UNPKG

@arcgis/core

Version:

ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API

3 lines (2 loc) 1.42 kB
/* COPYRIGHT Esri - https://js.arcgis.com/5.0.8/LICENSE.txt */ import{__decorate as t}from"tslib";import e from"../../core/Accessor.js";import{property as i,subclass as o}from"../../core/accessorSupport/decorators.js";import c from"./MultipointDrawAction.js";import r from"./PointDrawAction.js";import s from"./PolygonDrawAction.js";import n from"./PolylineDrawAction.js";import a from"./SegmentDrawAction.js";let p=class extends e{constructor(t){super(t),this.activeAction=null,this.type="draw",this.view=null}destroy(){this.activeAction&&(this.activeAction.destroy(),this.activeAction=null)}create(t,e){this.reset();const i={view:this.view,...e};switch(t){case"point":i.editGeometryType="point",this.activeAction=new r(i);break;case"polyline":i.editGeometryType="polyline",this.activeAction=new n(i);break;case"multipoint":i.editGeometryType="polygon",this.activeAction=new c(i);break;case"polygon":i.editGeometryType="polygon",this.activeAction=new s(i);break;case"rectangle":case"circle":case"ellipse":case"triangle":i.editGeometryType="polygon",this.activeAction=new a(i)}return this.activeAction}complete(){this.activeAction?.complete(),this.activeAction=null}reset(){this.activeAction?.destroy(),this.activeAction=null}};t([i()],p.prototype,"activeAction",void 0),t([i({readOnly:!0})],p.prototype,"type",void 0),t([i()],p.prototype,"view",void 0),p=t([o("esri.views.draw.Draw")],p);const l=p;export{l as default};