/* All material copyright ESRI, All Rights Reserved, unless otherwise specified. See https://js.arcgis.com/4.25/esri/copyright.txt for details. */ import{_ as t}from"../chunks/tslib.es6.js";import{isSome as e}from"../core/maybe.js";import{property as o}from"../core/accessorSupport/decorators/property.js";import"../core/arrayUtils.js";import"../core/accessorSupport/ensureType.js";import{enumeration as r}from"../core/accessorSupport/decorators/enumeration.js";import{reader as i}from"../core/accessorSupport/decorators/reader.js";import{subclass as s}from"../core/accessorSupport/decorators/subclass.js";import p from"./Symbol3DLayer.js";import{Symbol3DMaterial as a}from"./support/Symbol3DMaterial.js";import{lineJoins as l,pathCaps as h}from"./support/symbolLayerUtils3D.js";var n;let d=n=class extends p{constructor(t){super(t),this.material=null,this.castShadows=!0,this.type="path",this.profile="circle",this.join="miter",this.cap="butt",this.width=void 0,this.height=void 0,this.anchor="center",this.profileRotation="all"}readWidth(t,e){return null!=t?t:null==e.height&&null!=e.size?e.size:void 0}readHeight(t,e){return null!=t?t:null==e.width&&null!=e.size?e.size:void 0}clone(){return new n({enabled:this.enabled,material:e(this.material)?this.material.clone():null,castShadows:this.castShadows,profile:this.profile,join:this.join,cap:this.cap,width:this.width,height:this.height,profileRotation:this.profileRotation,anchor:this.anchor})}};t([o({type:a,json:{write:!0}})],d.prototype,"material",void 0),t([o({type:Boolean,nonNullable:!0,json:{write:!0,default:!0}})],d.prototype,"castShadows",void 0),t([r({Path:"path"},{readOnly:!0})],d.prototype,"type",void 0),t([o({type:["circle","quad"],json:{write:!0,default:"circle"}})],d.prototype,"profile",void 0),t([o({type:l,json:{write:!0,default:"miter"}})],d.prototype,"join",void 0),t([o({type:h,json:{write:!0,default:"butt"}})],d.prototype,"cap",void 0),t([o({type:Number,json:{write:{enabled:!0,target:{width:{type:Number},size:{type:Number}}}}})],d.prototype,"width",void 0),t([i("width",["width","size","height"])],d.prototype,"readWidth",null),t([o({type:Number,json:{write:!0}})],d.prototype,"height",void 0),t([i("height",["height","size","width"])],d.prototype,"readHeight",null),t([o({type:["center","bottom","top"],json:{write:!0,default:"center"}})],d.prototype,"anchor",void 0),t([o({type:["heading","all"],json:{write:!0,default:"all"}})],d.prototype,"profileRotation",void 0),d=n=t([s("esri.symbols.PathSymbol3DLayer")],d);const c=d;export{c as default};