/*
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/lang","../core/screenUtils","../core/accessorSupport/decorators/property","../core/accessorSupport/ensureType","../core/accessorSupport/decorators/enumeration","../core/accessorSupport/decorators/subclass","./FillSymbol","./support/urlUtils"],(function(t,e,o,r,s,i,c,l,p,n){"use strict";var u;let a=u=function(e){function s(...t){var o;return(o=e.call(this,...t)||this).type="picture-fill",o.url=null,o.xscale=1,o.yscale=1,o.width=12,o.height=12,o.xoffset=0,o.yoffset=0,o.source=null,o}t._inheritsLoose(s,e);var i=s.prototype;return i.normalizeCtorArgs=function(t,e,o,s){if(t&&"string"!=typeof t&&null==t.imageData)return t;const i={};return t&&(i.url=t),e&&(i.outline=e),null!=o&&(i.width=r.toPt(o)),null!=s&&(i.height=r.toPt(s)),i},i.clone=function(){const t=new u({color:o.clone(this.color),height:this.height,outline:this.outline&&this.outline.clone(),url:this.url,width:this.width,xoffset:this.xoffset,xscale:this.xscale,yoffset:this.yoffset,yscale:this.yscale});return t._set("source",o.clone(this.source)),t},i.hash=function(){var t;return`${e.prototype.hash.call(this)}.${null==(t=this.color)?void 0:t.hash()}.${this.height}.${this.url}.${this.width}.${this.xoffset}.${this.xscale}.${this.yoffset}.${this.yscale}`},s}(p);e.__decorate([c.enumeration({esriPFS:"picture-fill"},{readOnly:!0})],a.prototype,"type",void 0),e.__decorate([s.property(n.urlPropertyDefinition)],a.prototype,"url",void 0),e.__decorate([s.property({type:Number,json:{write:!0}})],a.prototype,"xscale",void 0),e.__decorate([s.property({type:Number,json:{write:!0}})],a.prototype,"yscale",void 0),e.__decorate([s.property({type:Number,cast:r.toPt,json:{write:!0}})],a.prototype,"width",void 0),e.__decorate([s.property({type:Number,cast:r.toPt,json:{write:!0}})],a.prototype,"height",void 0),e.__decorate([s.property({type:Number,cast:r.toPt,json:{write:!0}})],a.prototype,"xoffset",void 0),e.__decorate([s.property({type:Number,cast:r.toPt,json:{write:!0}})],a.prototype,"yoffset",void 0),e.__decorate([s.property(n.sourcePropertyDefinition)],a.prototype,"source",void 0),a=u=e.__decorate([l.subclass("esri.symbols.PictureFillSymbol")],a);return a}));
