/*
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
*/
define(["../chunks/_rollupPluginBabelHelpers","../chunks/tslib.es6","../core/Collection","../core/lang","../core/maybe","../core/accessorSupport/decorators/property","../core/accessorSupport/ensureType","../core/accessorSupport/decorators/enumeration","../core/accessorSupport/decorators/subclass","./ExtrudeSymbol3DLayer","./FillSymbol3DLayer","./IconSymbol3DLayer","./LineSymbol3DLayer","./ObjectSymbol3DLayer","./Symbol3D","./TextSymbol3DLayer","./WaterSymbol3DLayer"],(function(e,o,r,t,l,s,y,n,a,i,c,m,b,p,u,L,S){"use strict";var d;const f=r.ofType({base:null,key:"type",typeMap:{extrude:i,fill:c,icon:m,line:b,object:p,text:L,water:S}});let g=d=function(o){function r(e){var r;return(r=o.call(this,e)||this).symbolLayers=new f,r.type="polygon-3d",r}return e._inheritsLoose(r,o),r.prototype.clone=function(){return new d({styleOrigin:t.clone(this.styleOrigin),symbolLayers:t.clone(this.symbolLayers),thumbnail:t.clone(this.thumbnail)})},r.fromJSON=function(e){const o=new d;if(o.read(e),2===o.symbolLayers.length&&"fill"===o.symbolLayers.getItemAt(0).type&&"line"===o.symbolLayers.getItemAt(1).type){const r=o.symbolLayers.getItemAt(0),t=o.symbolLayers.getItemAt(1);!t.enabled||e.symbolLayers&&e.symbolLayers[1]&&!1===e.symbolLayers[1].enable||(r.outline={size:t.size,color:l.isSome(t.material)?t.material.color:null}),o.symbolLayers.removeAt(1)}return o},r.fromSimpleFillSymbol=function(e){return new d({symbolLayers:[c.fromSimpleFillSymbol(e)]})},r}(u);o.__decorate([s.property({type:f,json:{write:!0}})],g.prototype,"symbolLayers",void 0),o.__decorate([n.enumeration({PolygonSymbol3D:"polygon-3d"},{readOnly:!0})],g.prototype,"type",void 0),g=d=o.__decorate([a.subclass("esri.symbols.PolygonSymbol3D")],g);return g}));
