// All material copyright Esri, All Rights Reserved, unless otherwise specified. // See https://js.arcgis.com/4.30/esri/copyright.txt for details. //>>built require({cache:{"esri/geometry/support/scaleUtils":function(){define(["exports","../../core/mathUtils","../../core/unitUtils"],function(k,c,d){function v(g,f){f=d.getMetersPerUnitForSR(f);return g/(f*d.inchesPerMeter*96)}k.getExtentForScale=function(g,f){const q=g.extent;g=g.width-(g.padding?g.padding.left+g.padding.right:0);f=v(f,q.spatialReference);return q.clone().expand(f*g/q.width)};k.getResolutionForScale=v;k.getResolutionInMetersForScale=function(g){return g/(96*d.inchesPerMeter)};k.getScale= function(g,f){f=f||g.extent;g=g.width;const q=d.getMetersPerUnitForSR(f?.spatialReference);return f&&g?f.width/g*q*d.inchesPerMeter*96:0};k.getScaleForResolution=function(g,f){f=d.getMetersPerUnitForSR(f);return g*f*d.inchesPerMeter*96};k.isInScaleRange=function(g,f,q){if(f=0===f||c.floatEqualAbsolute(g,f)||gq;return f};Object.defineProperty(k,Symbol.toStringTag,{value:"Module"})})},"esri/layers/mixins/ArcGISMapService":function(){define("exports ../../chunks/tslib.es6 ../../request ../../core/MapUtils ../../core/promiseUtils ../../core/urlUtils ../../core/Version ../../core/accessorSupport/decorators/property ../../core/has ../../core/Logger ../../core/RandomLCG ../../core/accessorSupport/decorators/reader ../../core/accessorSupport/decorators/subclass ../../core/accessorSupport/PropertyOrigin ../../geometry/Extent ../../geometry/SpatialReference ../support/arcgisLayerUrl ../support/commonProperties ../../portal/support/portalItemUtils".split(" "), function(k,c,d,v,g,f,q,n,V,aa,ba,W,D,r,A,K,M,w,F){k.ArcGISMapService=t=>{t=class extends t{constructor(){super(...arguments);this.capabilities=void 0;this.fullExtent=this.copyright=null;this.legendEnabled=!0;this.spatialReference=null;this.version=void 0;this._allLayersAndTablesMap=null}readCapabilities(h,l){var u=l.capabilities&&l.capabilities.split(",").map(B=>B.toLowerCase().trim());if(!u)return{operations:{supportsExportMap:!1,supportsExportTiles:!1,supportsIdentify:!1,supportsQuery:!1,supportsTileMap:!1}, exportMap:null,exportTiles:null};var x=this.type;h="tile"!==x&&!!l.supportsDynamicLayers;const G=u.includes("query"),P=u.includes("map"),p=!!l.exportTilesAllowed,R=u.includes("tilemap");u=u.includes("data");const N="tile"!==x&&(!l.tileInfo||h),X="tile"!==x&&(!l.tileInfo||h);x="tile"!==x;var z=l.cimVersion&&q.Version.parse(l.cimVersion);const Q=z?.since(1,4)??!1;z=z?.since(2,0)??!1;return{operations:{supportsExportMap:P,supportsExportTiles:p,supportsIdentify:G,supportsQuery:u,supportsTileMap:R},exportMap:P? {supportsArcadeExpressionForLabeling:Q,supportsSublayersChanges:x,supportsDynamicLayers:h,supportsSublayerVisibility:N,supportsSublayerDefinitionExpression:X,supportsCIMSymbols:z}:null,exportTiles:p?{maxExportTilesCount:+l.maxExportTilesCount}:null}}readVersion(h,l){(h=l.currentVersion)||(h=l.hasOwnProperty("capabilities")||l.hasOwnProperty("tables")?10:l.hasOwnProperty("supportedImageFormatTypes")?9.31:9.3);return h}async fetchRelatedService(h){var l=this.portalItem;if(!l||!F.isHostedLayer(l))return null; this._relatedFeatureServicePromise||(this._relatedFeatureServicePromise=l.fetchRelatedItems({relationshipType:"Service2Service",direction:"reverse"},h).then(u=>u.find(x=>"Feature Service"===x.type)??null,()=>null));l=await this._relatedFeatureServicePromise;g.throwIfAborted(h);return l?{itemId:l.id,url:l.url}:null}async fetchSublayerInfo(h,l){const {source:u}=h;if(this?.portalItem&&"tile"===this.type&&"map-layer"===u?.type&&F.isHostedLayer(this.portalItem)&&h.originIdOf("url")r.OriginId.SERVICE)try{const P=await this._fetchAllLayersAndTablesFromService(x),p=M.parse(x)?.sublayer??u.mapLayerId;G=P.get(p)}catch{}else{h=h.id;"map-layer"===u?.type&&(h=u.mapLayerId);try{G=(await this.fetchAllLayersAndTables(l)).get(h)}catch{}}return G}async fetchAllLayersAndTables(h){return this._fetchAllLayersAndTablesFromService(this.parsedUrl?.path, h)}async _fetchAllLayersAndTablesFromService(h,l){await this.load(l);this._allLayersAndTablesMap||(this._allLayersAndTablesMap=new Map);const u=M.parse(h);h=await v.getOrCreateMapValue(this._allLayersAndTablesMap,u?.url.path,()=>d(f.join(u?.url.path,"/layers"),{responseType:"json",query:{f:"json",...this.customParameters,token:this.apiKey}}).then(x=>{const G=new Map,{layers:P,tables:p}=x.data;x=[...(P??[]),...(p??[])];for(const R of x)G.set(R.id,R);return{result:G}},x=>({error:x})));g.throwIfAborted(l); if("result"in h)return h.result;throw h.error;}};c.__decorate([n.property({readOnly:!0})],t.prototype,"capabilities",void 0);c.__decorate([W.reader("service","capabilities",["capabilities","exportTilesAllowed","maxExportTilesCount","supportsDynamicLayers","tileInfo"])],t.prototype,"readCapabilities",null);c.__decorate([n.property({json:{read:{source:"copyrightText"}}})],t.prototype,"copyright",void 0);c.__decorate([n.property({type:A})],t.prototype,"fullExtent",void 0);c.__decorate([n.property(w.id)], t.prototype,"id",void 0);c.__decorate([n.property({type:Boolean,json:{origins:{service:{read:{enabled:!1}}},read:{source:"showLegend"},write:{target:"showLegend"}}})],t.prototype,"legendEnabled",void 0);c.__decorate([n.property(w.popupEnabled)],t.prototype,"popupEnabled",void 0);c.__decorate([n.property({type:K})],t.prototype,"spatialReference",void 0);c.__decorate([n.property({readOnly:!0})],t.prototype,"version",void 0);c.__decorate([W.reader("version",["currentVersion","capabilities","tables", "supportedImageFormatTypes"])],t.prototype,"readVersion",null);return t=c.__decorate([D.subclass("esri.layers.mixins.ArcGISMapService")],t)};Object.defineProperty(k,Symbol.toStringTag,{value:"Module"})})},"esri/layers/mixins/SublayersOwner":function(){define("exports ../../chunks/tslib.es6 ../../core/Collection ../../core/CollectionFlattener ../../core/Error ../../core/Logger ../../core/reactiveUtils ../../core/accessorSupport/decorators/property ../../core/has ../../core/RandomLCG ../../core/accessorSupport/utils ../../core/accessorSupport/decorators/subclass ../../core/accessorSupport/PropertyOrigin ../support/Sublayer ../support/sublayerUtils".split(" "), function(k,c,d,v,g,f,q,n,V,aa,ba,W,D,r,A){function K(F,t){const h=[],l={};if(!F)return h;F.forEach(u=>{const x=new r;x.read(u,t);l[x.id]=x;null!=u.parentLayerId&&-1!==u.parentLayerId?(u=l[u.parentLayerId],u.sublayers||(u.sublayers=[]),u.sublayers.unshift(x)):h.unshift(x)});return h}function M(F,t){F&&F.forEach(h=>{t(h);h.sublayers&&h.sublayers.length&&M(h.sublayers,t)})}const w=d.ofType(r);k.SublayersOwner=F=>{F=class extends F{constructor(...t){super(...t);this.allSublayers=new v({getCollections:()=> [this.sublayers],getChildrenFunction(h){return h.sublayers}});this.sublayersSourceJSON={[D.OriginId.SERVICE]:{},[D.OriginId.PORTAL_ITEM]:{},[D.OriginId.WEB_SCENE]:{},[D.OriginId.WEB_MAP]:{}};this.subtables=null;this.addHandles([q.watch(()=>this.sublayers,(h,l)=>this._handleSublayersChange(h,l),q.sync),q.watch(()=>this.subtables,(h,l)=>this._handleSublayersChange(h,l),q.sync)])}destroy(){this.allSublayers.destroy()}readSublayers(t,h){if(h&&t){var {sublayersSourceJSON:l}=this,u=D.nameToId(h.origin); if(!(uD.OriginId.SERVICE))){this._set("serviceSublayers",this.createSublayersForOrigin("service").sublayers);var {sublayers:x,origin:G}=this.createSublayersForOrigin("web-document");t=ba.getProperties(this);t.setDefaultOrigin(G);this._set("sublayers",new w(x));t.setDefaultOrigin("user")}}}findSublayerById(t){return this.allSublayers.find(h=>h.id===t)}createServiceSublayers(){return this.createSublayersForOrigin("service").sublayers}createSublayersForOrigin(t){const h= "web-document"===t?D.nameToId("web-map"):D.nameToId(t);let l=D.OriginId.SERVICE;t=this.sublayersSourceJSON[D.OriginId.SERVICE].layers;let u=this.sublayersSourceJSON[D.OriginId.SERVICE].context,x=null;var G=[D.OriginId.PORTAL_ITEM,D.OriginId.WEB_SCENE,D.OriginId.WEB_MAP].filter(z=>z<=h);for(var P of G)G=this.sublayersSourceJSON[P],A.isSublayerOverhaul(G.layers)&&(l=P,t=G.layers,u=G.context,G.visibleLayers&&(x={visibleLayers:G.visibleLayers,context:G.context}));P=[D.OriginId.PORTAL_ITEM,D.OriginId.WEB_SCENE, D.OriginId.WEB_MAP].filter(z=>z>l&&z<=h);let p=null;for(var R of P){const {layers:z,visibleLayers:Q,context:B}=this.sublayersSourceJSON[R];z&&(p={layers:z,context:B});Q&&(x={visibleLayers:Q,context:B})}R=K(t,u);const N=new Map,X=new Set;if(p)for(const z of p.layers)N.set(z.id,z);if(x?.visibleLayers)for(const z of x.visibleLayers)X.add(z);M(R,z=>{p&&z.read(N.get(z.id),p.context);x&&z.read({defaultVisibility:X.has(z.id)},x.context)});return{origin:D.idToName(l),sublayers:new w({items:R})}}read(t,h){super.read(t, h);this.readSublayers(t,h)}_handleSublayersChange(t,h){h&&(h.forEach(l=>{l.parent=null;l.layer=null}),this.removeHandles("sublayers-owner"));t&&(t.forEach(l=>{l.parent=this;l.layer=this}),this.addHandles([t.on("after-add",({item:l})=>{l.parent=this;l.layer=this}),t.on("after-remove",({item:l})=>{l.parent=null;l.layer=null})],"sublayers-owner"),"tile"===this.type&&this.addHandles(t.on("before-changes",l=>{f.getLogger("esri.layers.TileLayer").error(new g("tilelayer:sublayers-non-modifiable","ISublayer can't be added, moved, or removed from the layer's sublayers", {layer:this}));l.preventDefault()}),"sublayers-owner"))}};c.__decorate([n.property({readOnly:!0})],F.prototype,"allSublayers",void 0);c.__decorate([n.property({readOnly:!0,type:d.ofType(r)})],F.prototype,"serviceSublayers",void 0);c.__decorate([n.property({value:null,type:w,json:{read:!1,write:{allowNull:!0,ignoreOrigin:!0}}})],F.prototype,"sublayers",void 0);c.__decorate([n.property({readOnly:!0})],F.prototype,"sublayersSourceJSON",void 0);c.__decorate([n.property({type:w,json:{read:{source:"tables"}}})], F.prototype,"subtables",void 0);return F=c.__decorate([W.subclass("esri.layers.mixins.SublayersOwner")],F)};k.forEachSublayer=M;Object.defineProperty(k,Symbol.toStringTag,{value:"Module"})})},"esri/layers/support/Sublayer":function(){define("require ../../chunks/tslib.es6 ../../geometry ../../PopupTemplate ../../renderers/ClassBreaksRenderer ../../renderers/DictionaryRenderer ../../renderers/DotDensityRenderer ../../renderers/HeatmapRenderer ../../renderers/PieChartRenderer ../../renderers/Renderer ../../renderers/SimpleRenderer ../../renderers/UniqueValueRenderer ../../renderers/support/jsonUtils ../../renderers/support/types ../../request ../../symbols ../../core/Collection ../../core/Error ../../core/has ../../core/Identifiable ../../core/lang ../../core/Loadable ../../core/Logger ../../core/MultiOriginJSONSupport ../../core/sql ../../core/urlUtils ../../core/accessorSupport/decorators/property ../../core/accessorSupport/decorators/cast ../../core/accessorSupport/decorators/reader ../../core/accessorSupport/decorators/subclass ../../core/accessorSupport/decorators/writer ../../core/accessorSupport/ensureType ../../core/accessorSupport/PropertyOrigin ../../core/accessorSupport/utils ../graphics/sources/support/QueryTask ./featureLayerUtils ./FeatureType ./Field ./FieldsIndex ./fieldUtils ./LabelClass ./labelingInfo ./LayerFloorInfo ./Relationship ./serviceCapabilitiesUtils ./source/DataLayerSource ./source/MapLayerSource ../../rest/utils ../../rest/support/AttachmentQuery ../../rest/support/Query ../../support/popupUtils ../../geometry/Extent ../../geometry/SpatialReference ../../geometry/support/typeUtils".split(" "), function(k,c,d,v,g,f,q,n,V,aa,ba,W,D,r,A,K,M,w,F,t,h,l,u,x,G,P,p,R,N,X,z,Q,B,ca,ea,ja,fa,m,C,L,I,H,O,da,Y,J,U,qa,ra,sa,ta,ua,va,ka){function la(a,b,e){a=this.originIdOf(b)>=B.nameToId(e.origin);return{ignoreOrigin:!0,allowNull:a,enabled:e?"map-image"===e.layer?.type&&(e.writeSublayerStructure||a):!1}}function ma(a,b,e){return{enabled:e?"tile"===e.layer?.type&&(e.origin&&this.originIdOf(b)>=B.nameToId(e.origin)||this._isOverridden(b)):!1}}function T(a,b,e){return{ignoreOrigin:!0,enabled:e&&e.writeSublayerStructure|| !1}}function ha(a,b,e){return{ignoreOrigin:!0,enabled:e?e.writeSublayerStructure||this.originIdOf(b)>=B.nameToId(e.origin):!1}}var ia;let wa=0;const xa=new Set("layer parent loaded loadStatus loadError loadWarnings".split(" "));d=ia=class extends x.MultiOriginJSONMixin(t.IdentifiableMixin(l)){constructor(a){super(a);this.capabilities=void 0;this.maxScaleRange={minScale:0,maxScale:0};this.globalIdField=this.geometryType=this.fullExtent=this.fields=null;this.isTable=!1;this.legendEnabled=!0;this.parent= this.objectIdField=null;this.popupEnabled=!0;this.typeIdField=this.title=this.spatialReference=this.sourceJSON=this.relationships=this.popupTemplate=null;this.type="sublayer";this._lastParsedUrl=this.types=null}async load(a){this.addResolvingPromise((async()=>{const {layer:b,url:e}=this;if(!b&&!e)throw new w("sublayer:missing-layer","Sublayer can't be loaded without being part of a layer",{sublayer:this});const y=b?await b.fetchSublayerInfo(this,a):(await A(e,{responseType:"json",query:{f:"json"}, ...a})).data;y&&(this.sourceJSON=y,this.read({layerDefinition:y},{origin:"service",layer:b,url:qa.parseUrl(e)}))})());return this}readCapabilities(a,b){b=b.layerDefinition||b;const {operations:{supportsQuery:e,supportsQueryAttachments:y},query:{supportsFormatPBF:E,supportsOrderBy:S,supportsPagination:Z},data:{supportsAttachment:na},queryRelated:oa}=Y.getFeatureLayerCapabilities(b,this.url);return{exportMap:{supportsModification:!!b.canModifyLayer},operations:{supportsQuery:e,supportsQueryAttachments:y}, data:{supportsAttachment:na},query:{supportsFormatPBF:E,supportsOrderBy:S,supportsPagination:Z},queryRelated:oa}}get defaultPopupTemplate(){return this.createPopupTemplate()}set definitionExpression(a){this._setAndNotifyLayer("definitionExpression",a)}get effectiveScaleRange(){const {minScale:a,maxScale:b}=this;return{minScale:a,maxScale:b}}readMaxScaleRange(a,b){b=b.layerDefinition||b;return{minScale:b.minScale??0,maxScale:b.maxScale??0}}get fieldsIndex(){return new C(this.fields||[])}set floorInfo(a){this._setAndNotifyLayer("floorInfo", a)}readGlobalIdFieldFromService(a,b){b=b.layerDefinition||b;if(b.globalIdField)return b.globalIdField;if(b.fields)for(const e of b.fields)if("esriFieldTypeGlobalID"===e.type)return e.name}get id(){const a=this._get("id");return null==a?wa++:a}set id(a){this._get("id")!==a&&(!1===this.layer?.capabilities?.exportMap?.supportsDynamicLayers?this._logLockedError("id","capability not available 'layer.capabilities.exportMap.supportsDynamicLayers'"):this._set("id",a))}readIsTable(a,b){return"Table"===b.type}set labelingInfo(a){this._setAndNotifyLayer("labelingInfo", a)}writeLabelingInfo(a,b,e,y){a&&a.length&&(b.layerDefinition={drawingInfo:{labelingInfo:a.map(E=>E.write({},y))}})}set labelsVisible(a){this._setAndNotifyLayer("labelsVisible",a)}set layer(a){this._set("layer",a);this.sublayers?.forEach(b=>b.layer=a)}set listMode(a){this._set("listMode",a)}set minScale(a){this._setAndNotifyLayer("minScale",a)}readMinScale(a,b){return b.minScale||b.layerDefinition?.minScale||0}set maxScale(a){this._setAndNotifyLayer("maxScale",a)}readMaxScale(a,b){return b.maxScale|| b.layerDefinition?.maxScale||0}readObjectIdFieldFromService(a,b){b=b.layerDefinition||b;return b.objectIdField?b.objectIdField:b.fields?.find(e=>"esriFieldTypeOID"===e.type)?.name}set opacity(a){this._setAndNotifyLayer("opacity",a)}readOpacity(a,b){({layerDefinition:a}=b);return 1-.01*(a?.transparency??a?.drawingInfo?.transparency??0)}writeOpacity(a,b,e,y){b.layerDefinition={drawingInfo:{transparency:100-100*a}}}writeParent(a,b){b.parentLayerId=this.parent&&this.parent!==this.layer?Q.ensureInteger(this.parent.id): -1}get queryTask(){if(!this.layer)return null;const {capabilities:a,fieldsIndex:b,layer:e,url:y}=this,{spatialReference:E}=e,S="gdbVersion"in e?e.gdbVersion:void 0,Z=F("featurelayer-pbf")&&a?.query.supportsFormatPBF;return new ea({fieldsIndex:b,gdbVersion:S,pbfSupported:Z,queryAttachmentsSupported:a?.operations?.supportsQueryAttachments??!1,sourceSpatialReference:E,url:y})}set renderer(a){L.fixRendererFields(a,this.fieldsIndex);if(a)for(const b of a.getSymbols())if(K.isSymbol3D(b)){u.getLogger(this).warn("Sublayer renderer should use 2D symbols"); break}this._setAndNotifyLayer("renderer",a)}get source(){return this._get("source")||new U.MapLayerSource({mapLayerId:this.id})}set source(a){this._setAndNotifyLayer("source",a)}set sublayers(a){this._handleSublayersChange(a,this._get("sublayers"));this._set("sublayers",a)}castSublayers(a){return Q.ensureType(M.ofType(ia),a)}writeSublayers(a,b,e){this.sublayers?.length&&(b[e]=this.sublayers.map(y=>y.id).toArray().reverse())}readTitle(a,b){return b.layerDefinition?.name??b.name}readTypeIdField(a,b){b= b.layerDefinition||b;let e=b.typeIdField;e&&b.fields&&(e=e.toLowerCase(),a=b.fields.find(y=>y.name.toLowerCase()===e))&&(e=a.name);return e}get url(){const a=this.layer?.parsedUrl??this._lastParsedUrl;var b=this.source;if(!a)return null;this._lastParsedUrl=a;if("map-layer"===b?.type)return`${a.path}/${b.mapLayerId}`;b={layer:JSON.stringify({source:this.source})};return`${a.path}/dynamicLayer?${P.objectToQuery(b)}`}set url(a){this._overrideIfSome("url",a)}set visible(a){this._setAndNotifyLayer("visible", a)}writeVisible(a,b,e,y){b[e]=this.getAtOrigin("defaultVisibility","service")||a}clone(){const {store:a}=ca.getProperties(this),b=new ia;ca.getProperties(b).store=a.clone(xa);this.commitProperty("url");b._lastParsedUrl=this._lastParsedUrl;return b}createPopupTemplate(a){return ta.createPopupTemplate(this,a)}createQuery(){return new sa({returnGeometry:!0,where:this.definitionExpression||"1\x3d1"})}async createFeatureLayer(){if(this.hasOwnProperty("sublayers"))return null;var a=(await new Promise((y, E)=>k(["../FeatureLayer"],S=>y(Object.freeze(Object.defineProperty({__proto__:null,default:S},Symbol.toStringTag,{value:"Module"}))),E))).default;const {layer:b,url:e}=this;if(e&&this.originIdOf("url")>B.OriginId.SERVICE)a=new a({url:e});else if(b?.parsedUrl){const y=b.parsedUrl;a=new a({url:y.path});y&&this.source&&("map-layer"===this.source.type?a.layerId=this.source.mapLayerId:a.dynamicDataSource=this.source)}else throw new w("createFeatureLayer:missing-information","Cannot create a FeatureLayer without a url or a parent layer"); null!=b?.refreshInterval&&(a.refreshInterval=b.refreshInterval);this.definitionExpression&&(a.definitionExpression=this.definitionExpression);this.floorInfo&&(a.floorInfo=h.clone(this.floorInfo));this.originIdOf("labelingInfo")>B.OriginId.SERVICE&&(a.labelingInfo=h.clone(this.labelingInfo));this.originIdOf("labelsVisible")>B.OriginId.DEFAULTS&&(a.labelsVisible=this.labelsVisible);this.originIdOf("legendEnabled")>B.OriginId.DEFAULTS&&(a.legendEnabled=this.legendEnabled);this.originIdOf("visible")> B.OriginId.DEFAULTS&&(a.visible=this.visible);this.originIdOf("minScale")>B.OriginId.DEFAULTS&&(a.minScale=this.minScale);this.originIdOf("maxScale")>B.OriginId.DEFAULTS&&(a.maxScale=this.maxScale);this.originIdOf("opacity")>B.OriginId.DEFAULTS&&(a.opacity=this.opacity);this.originIdOf("popupTemplate")>B.OriginId.DEFAULTS&&(a.popupTemplate=h.clone(this.popupTemplate));this.originIdOf("renderer")>B.OriginId.SERVICE&&(a.renderer=h.clone(this.renderer));"data-layer"===this.source?.type&&(a.dynamicDataSource= this.source.clone());this.originIdOf("title")>B.OriginId.DEFAULTS&&(a.title=this.title);"map-image"===b?.type&&b.originIdOf("customParameters")>B.OriginId.DEFAULTS&&(a.customParameters=b.customParameters);"tile"===b?.type&&b.originIdOf("customParameters")>B.OriginId.DEFAULTS&&(a.customParameters=b.customParameters);return a}getField(a){return this.fieldsIndex.get(a)}getFeatureType(a){return ja.getFeatureType(this.types,this.typeIdField,a)}getFieldDomain(a,b){return(b=this.getFeatureType(b?.feature))&& (b=b.domains&&b.domains[a])&&"inherited"!==b.type?b:this._getLayerDomain(a)}async queryAttachments(a,b){await this.load();a=ra.from(a);const e=this.capabilities;if(!e?.data?.supportsAttachment)throw new w("queryAttachments:not-supported","this layer doesn't support attachments");const {attachmentTypes:y,objectIds:E,globalIds:S,num:Z,size:na,start:oa,where:pa}=a;if(!e?.operations?.supportsQueryAttachments&&(0{y[E]=this.originIdOf(E);return y},{});if(Object.keys(e).some(y=>e[y]>B.OriginId.SERVICE)){a=b.drawingInfo={};e.renderer>B.OriginId.SERVICE&&(a.renderer=this.renderer?this.renderer.toJSON():null);e.labelsVisible>B.OriginId.SERVICE&&(a.showLabels=this.labelsVisible);if(this.labelsVisible&&e.labelingInfo>B.OriginId.SERVICE)if(this.labelingInfo){!this.loaded&& this.labelingInfo?.some(E=>!E.labelPlacement)&&u.getLogger(this).warnOnce(`A Sublayer (title: ${this.title}, id: ${this.id}) has an undefined 'labelPlacement' `+"and so labels cannot be displayed. Either define a valid 'labelPlacement' or call Sublayer.load() to use a default value based on geometry type.",{sublayer:this});let y=this.labelingInfo;null!=this.geometryType&&(y=H.validateLabelingInfo(this.labelingInfo,ka.featureGeometryTypeKebabDictionary.toJSON(this.geometryType)));a.showLabels=!0;a.labelingInfo= y.filter(E=>E.labelPlacement).map(E=>E.toJSON({origin:"service",layer:this.layer}))}else a.showLabels=!1;e.opacity>B.OriginId.SERVICE&&(a.transparency=100-100*this.opacity);this._assignDefaultSymbolColors(a.renderer)}return b}_assignDefaultSymbolColors(a){this._forEachSimpleMarkerSymbols(a,b=>{b.color||"esriSMSX"!==b.style&&"esriSMSCross"!==b.style||(b.color=b.outline?.color?b.outline.color:[0,0,0,0])})}_forEachSimpleMarkerSymbols(a,b){if(a){const e=("uniqueValueInfos"in a?a.uniqueValueInfos:"classBreakInfos"in a?a.classBreakInfos:null)??[];for(const y of e)"esriSMS"===y.symbol?.type&&b(y.symbol);"symbol"in a&&"esriSMS"===a.symbol?.type&&b(a.symbol);"defaultSymbol"in a&&"esriSMS"===a.defaultSymbol?.type&&b(a.defaultSymbol)}}_setAndNotifyLayer(a,b){const e=this.layer,y=this._get(a);let E,S;switch(a){case "definitionExpression":case "floorInfo":E="supportsSublayerDefinitionExpression";break;case "minScale":case "maxScale":case "visible":E="supportsSublayerVisibility";break;case "labelingInfo":case "labelsVisible":case "opacity":case "renderer":case "source":E= "supportsDynamicLayers",S="supportsModification"}const Z=ca.getProperties(this).getDefaultOrigin();if("service"!==Z){if(E&&!1===this.layer?.capabilities?.exportMap?.[E]){this._logLockedError(a,`capability not available 'layer.capabilities.exportMap.${E}'`);return}if(S&&!1===this.capabilities?.exportMap[S]){this._logLockedError(a,`capability not available 'capabilities.exportMap.${S}'`);return}}"source"===a&&"not-loaded"!==this.loadStatus?this._logLockedError(a,"'source' can't be changed after calling sublayer.load()"): (this._set(a,b),"service"!==Z&&y!==b&&e&&e.emit&&e.emit("sublayer-update",{propertyName:a,target:this}))}_handleSublayersChange(a,b){b&&(b.forEach(e=>{e.parent=null;e.layer=null}),this.removeAllHandles());a&&(a.forEach(e=>{e.parent=this;e.layer=this.layer}),this.addHandles([a.on("after-add",({item:e})=>{e.parent=this;e.layer=this.layer}),a.on("after-remove",({item:e})=>{e.parent=null;e.layer=null}),a.on("before-changes",e=>{(this.layer?.capabilities?.exportMap?.supportsSublayersChanges??!0)||(u.getLogger(this).error(new w("sublayer:sublayers-non-modifiable", "Sublayer can't be added, moved, or removed from the layer's sublayers",{sublayer:this,layer:this.layer})),e.preventDefault())})]))}_logLockedError(a,b){const {layer:e,declaredClass:y}=this;u.getLogger(y).error(new w("sublayer:locked",`Property '${String(a)}' can't be changed on Sublayer from the layer '${e?.id}'`,{reason:b,sublayer:this,layer:e}))}_getLayerDomain(a){return this.fieldsIndex.get(a)?.domain??null}};d.test={isMapImageLayerOverridePolicy:a=>a===T||a===la,isTileImageLayerOverridePolicy:a=> a===ma};c.__decorate([p.property({readOnly:!0})],d.prototype,"capabilities",void 0);c.__decorate([N.reader("service","capabilities",["layerDefinition.canModifyLayer","layerDefinition.capabilities"])],d.prototype,"readCapabilities",null);c.__decorate([p.property()],d.prototype,"defaultPopupTemplate",null);c.__decorate([p.property({type:String,value:null,json:{name:"layerDefinition.definitionExpression",write:{allowNull:!0,overridePolicy:la}}})],d.prototype,"definitionExpression",null);c.__decorate([p.property({readOnly:!0})], d.prototype,"effectiveScaleRange",null);c.__decorate([N.reader("service","maxScaleRange",["minScale","maxScale"])],d.prototype,"readMaxScaleRange",null);c.__decorate([p.property({type:[m],json:{origins:{service:{read:{source:"layerDefinition.fields"}}}}})],d.prototype,"fields",void 0);c.__decorate([p.property({readOnly:!0})],d.prototype,"fieldsIndex",null);c.__decorate([p.property({type:O,value:null,json:{name:"layerDefinition.floorInfo",read:{source:"layerDefinition.floorInfo"},write:{target:"layerDefinition.floorInfo", overridePolicy:la},origins:{"web-scene":{read:!1,write:!1}}}})],d.prototype,"floorInfo",null);c.__decorate([p.property({type:ua,json:{read:{source:"layerDefinition.extent"}}})],d.prototype,"fullExtent",void 0);c.__decorate([p.property({type:ka.featureGeometryTypeKebabDictionary.apiValues,json:{origins:{service:{name:"layerDefinition.geometryType",read:{reader:ka.featureGeometryTypeKebabDictionary.read}}}}})],d.prototype,"geometryType",void 0);c.__decorate([p.property({type:String})],d.prototype,"globalIdField", void 0);c.__decorate([N.reader("service","globalIdField",["layerDefinition.globalIdField","layerDefinition.fields"])],d.prototype,"readGlobalIdFieldFromService",null);c.__decorate([p.property({type:Q.Integer,json:{write:{ignoreOrigin:!0}}})],d.prototype,"id",null);c.__decorate([p.property({readOnly:!0})],d.prototype,"isTable",void 0);c.__decorate([N.reader("service","isTable",["type"])],d.prototype,"readIsTable",null);c.__decorate([p.property({value:null,type:[I],json:{read:{source:"layerDefinition.drawingInfo.labelingInfo"}, write:{target:"layerDefinition.drawingInfo.labelingInfo",overridePolicy:T}}})],d.prototype,"labelingInfo",null);c.__decorate([z.writer("labelingInfo")],d.prototype,"writeLabelingInfo",null);c.__decorate([p.property({type:Boolean,value:!0,json:{read:{source:"layerDefinition.drawingInfo.showLabels"},write:{target:"layerDefinition.drawingInfo.showLabels",overridePolicy:T}}})],d.prototype,"labelsVisible",null);c.__decorate([p.property({value:null})],d.prototype,"layer",null);c.__decorate([p.property({type:String, json:{write:{overridePolicy:ma}}})],d.prototype,"layerItemId",void 0);c.__decorate([p.property({type:Boolean,value:!0,json:{origins:{service:{read:{enabled:!1}}},read:{source:"showLegend"},write:{target:"showLegend",overridePolicy:ha}}})],d.prototype,"legendEnabled",void 0);c.__decorate([p.property({type:["show","hide","hide-children"],value:"show",json:{read:!1,write:!1,origins:{"web-scene":{read:!0,write:!0}}}})],d.prototype,"listMode",null);c.__decorate([p.property({type:Number,value:0,json:{write:{overridePolicy:T}}})], d.prototype,"minScale",null);c.__decorate([N.reader("minScale",["minScale","layerDefinition.minScale"])],d.prototype,"readMinScale",null);c.__decorate([p.property({type:Number,value:0,json:{write:{overridePolicy:T}}})],d.prototype,"maxScale",null);c.__decorate([N.reader("maxScale",["maxScale","layerDefinition.maxScale"])],d.prototype,"readMaxScale",null);c.__decorate([p.property()],d.prototype,"objectIdField",void 0);c.__decorate([N.reader("service","objectIdField",["layerDefinition.objectIdField", "layerDefinition.fields"])],d.prototype,"readObjectIdFieldFromService",null);c.__decorate([p.property({type:Number,value:1,json:{write:{target:"layerDefinition.drawingInfo.transparency",overridePolicy:T}}})],d.prototype,"opacity",null);c.__decorate([N.reader("opacity",["layerDefinition.drawingInfo.transparency","layerDefinition.transparency"])],d.prototype,"readOpacity",null);c.__decorate([z.writer("opacity")],d.prototype,"writeOpacity",null);c.__decorate([p.property({json:{type:Q.Integer,write:{target:"parentLayerId", writerEnsuresNonNull:!0,overridePolicy:T}}})],d.prototype,"parent",void 0);c.__decorate([z.writer("parent")],d.prototype,"writeParent",null);c.__decorate([p.property({type:Boolean,value:!0,json:{read:{source:"disablePopup",reader(a,b){return!b.disablePopup}},write:{target:"disablePopup",overridePolicy:ha,writer(a,b,e){b[e]=!a}}}})],d.prototype,"popupEnabled",void 0);c.__decorate([p.property({type:v,json:{read:{source:"popupInfo"},write:{target:"popupInfo",overridePolicy:ha}}})],d.prototype,"popupTemplate", void 0);c.__decorate([p.property({readOnly:!0})],d.prototype,"queryTask",null);c.__decorate([p.property({type:[da],readOnly:!0,json:{origins:{service:{read:{source:"layerDefinition.relationships"}}}}})],d.prototype,"relationships",void 0);c.__decorate([p.property({types:r.rendererTypes,value:null,json:{name:"layerDefinition.drawingInfo.renderer",write:{overridePolicy:T},origins:{"web-scene":{types:r.webSceneRendererTypes,name:"layerDefinition.drawingInfo.renderer",write:{overridePolicy:T}}}}})],d.prototype, "renderer",null);c.__decorate([p.property({types:{key:"type",base:null,typeMap:{"data-layer":J.DataLayerSource,"map-layer":U.MapLayerSource}},cast(a){if(a){if("mapLayerId"in a)return Q.ensureClass(U.MapLayerSource,a);if("dataSource"in a)return Q.ensureClass(J.DataLayerSource,a)}return a},json:{name:"layerDefinition.source",write:{overridePolicy:T}}})],d.prototype,"source",null);c.__decorate([p.property()],d.prototype,"sourceJSON",void 0);c.__decorate([p.property({type:va,json:{origins:{service:{read:{source:"layerDefinition.extent.spatialReference"}}}}})], d.prototype,"spatialReference",void 0);c.__decorate([p.property({value:null,json:{type:[Q.Integer],write:{target:"subLayerIds",allowNull:!0,overridePolicy:T}}})],d.prototype,"sublayers",null);c.__decorate([R.cast("sublayers")],d.prototype,"castSublayers",null);c.__decorate([z.writer("sublayers")],d.prototype,"writeSublayers",null);c.__decorate([p.property({type:String,json:{name:"name",write:{overridePolicy:ha}}})],d.prototype,"title",void 0);c.__decorate([N.reader("service","title",["name","layerDefinition.name"])], d.prototype,"readTitle",null);c.__decorate([p.property({type:String})],d.prototype,"typeIdField",void 0);c.__decorate([p.property({json:{read:!1},readOnly:!0,value:"sublayer"})],d.prototype,"type",void 0);c.__decorate([N.reader("typeIdField",["layerDefinition.typeIdField"])],d.prototype,"readTypeIdField",null);c.__decorate([p.property({type:[fa],json:{origins:{service:{read:{source:"layerDefinition.types"}}}}})],d.prototype,"types",void 0);c.__decorate([p.property({type:String,json:{name:"layerUrl", write:{overridePolicy:ma}}})],d.prototype,"url",null);c.__decorate([p.property({type:Boolean,value:!0,json:{read:{source:"defaultVisibility"},write:{target:"defaultVisibility",overridePolicy:T}}})],d.prototype,"visible",null);c.__decorate([z.writer("visible")],d.prototype,"writeVisible",null);return d=ia=c.__decorate([X.subclass("esri.layers.support.Sublayer")],d)})},"esri/layers/support/sublayerUtils":function(){define(["exports","../../core/accessorSupport/PropertyOrigin"],function(k,c){function d(v, g){if(!v?.length||null==g)return!0;g=g.slice().reverse().flatten(({sublayers:n})=>n&&n.toArray().reverse()).map(n=>n.id).toArray();if(v.length>g.length)return!1;let f=0;const q=g.length;for(const {id:n}of v){for(;f=q)return!1}return!0}k.isExportDynamic=function(v,g,f){return v.some(q=>{var n=q.source;n=!n||"map-layer"===n.type&&n.mapLayerId===q.id&&(null==n.gdbVersion||n.gdbVersion===f);q.commitProperty("renderer");q.commitProperty("labelingInfo");q.commitProperty("opacity"); q.commitProperty("labelsVisible");return!n||q.originIdOf("renderer")>c.OriginId.SERVICE||q.originIdOf("labelingInfo")>c.OriginId.SERVICE||q.originIdOf("opacity")>c.OriginId.SERVICE||q.originIdOf("labelsVisible")>c.OriginId.SERVICE})?!0:!d(v,g)};k.isSublayerOverhaul=function(v){return!!v&&v.some(g=>null!=g.minScale||null!=g.layerDefinition?.minScale)};k.shouldWriteSublayerStructure=function(v,g,f){return g.flatten(({sublayers:q})=>q).length!==v.length||v.some(q=>q.originIdOf("minScale")>f||q.originIdOf("maxScale")> f||q.originIdOf("renderer")>f||q.originIdOf("labelingInfo")>f||q.originIdOf("opacity")>f||q.originIdOf("labelsVisible")>f||q.originIdOf("source")>f)?!0:!d(v,g)};Object.defineProperty(k,Symbol.toStringTag,{value:"Module"})})},"esri/layers/support/ExportImageParameters":function(){define("exports ../../chunks/tslib.es6 ../../core/Accessor ../../core/sql ../../core/accessorSupport/decorators/property ../../core/has ../../core/Logger ../../core/RandomLCG ../../core/accessorSupport/decorators/subclass ../../geometry/support/scaleUtils ./floorFilterUtils ./sublayerUtils".split(" "), function(k,c,d,v,g,f,q,n,V,aa,ba,W){const D={visible:"visibleSublayers",definitionExpression:"layerDefs",labelingInfo:"hasDynamicLayers",labelsVisible:"hasDynamicLayers",opacity:"hasDynamicLayers",minScale:"visibleSublayers",maxScale:"visibleSublayers",renderer:"hasDynamicLayers",source:"hasDynamicLayers"};k.ExportImageParameters=class extends d{constructor(r){super(r);this.floors=null;this.scale=0}destroy(){this.layer=null}get dynamicLayers(){if(!this.hasDynamicLayers)return null;const r=this.visibleSublayers.map(A=> {const K=ba.getLayerFloorFilterClause(this.floors,A);return A.toExportImageJSON(K)});return r.length?JSON.stringify(r):null}get hasDynamicLayers(){return this.layer&&W.isExportDynamic(this.visibleSublayers,this.layer.serviceSublayers,this.layer.gdbVersion)}set layer(r){this._get("layer")!==r&&(this._set("layer",r),this.removeHandles("layer"),r&&this.addHandles([r.allSublayers.on("change",()=>this.notifyChange("visibleSublayers")),r.on("sublayer-update",A=>this.notifyChange(D[A.propertyName]))],"layer"))}get layers(){const r= this.visibleSublayers;return r?r.length?"show:"+r.map(A=>A.id).join(","):"show:-1":null}get layerDefs(){const r=!!this.floors?.length,A=this.visibleSublayers.filter(K=>null!=K.definitionExpression||r&&null!=K.floorInfo);return A.length?JSON.stringify(A.reduce((K,M)=>{var w=ba.getLayerFloorFilterClause(this.floors,M);w=v.sqlAnd(w,M.definitionExpression);null!=w&&(K[M.id]=w);return K},{})):null}get version(){this.commitProperty("layers");this.commitProperty("layerDefs");this.commitProperty("dynamicLayers"); const r=this.layer;r&&(r.commitProperty("dpi"),r.commitProperty("imageFormat"),r.commitProperty("imageTransparency"),r.commitProperty("gdbVersion"));return(this._get("version")||0)+1}get visibleSublayers(){const r=[];if(!this.layer)return r;var A=this.layer.sublayers;const K=this.scale,M=w=>{w.visible&&(0===K||aa.isInScaleRange(K,w.minScale,w.maxScale))&&(w.sublayers?w.sublayers.forEach(M):r.unshift(w))};A&&A.forEach(M);A=this._get("visibleSublayers");return!A||A.length!==r.length||A.some((w,F)=> r[F]!==w)?r:A}toJSON(){var r=this.layer;r={dpi:r.dpi,format:r.imageFormat,transparent:r.imageTransparency,gdbVersion:r.gdbVersion||null};this.hasDynamicLayers&&this.dynamicLayers?r.dynamicLayers=this.dynamicLayers:r={...r,layers:this.layers,layerDefs:this.layerDefs};return r}};c.__decorate([g.property({readOnly:!0})],k.ExportImageParameters.prototype,"dynamicLayers",null);c.__decorate([g.property()],k.ExportImageParameters.prototype,"floors",void 0);c.__decorate([g.property({readOnly:!0})],k.ExportImageParameters.prototype, "hasDynamicLayers",null);c.__decorate([g.property()],k.ExportImageParameters.prototype,"layer",null);c.__decorate([g.property({readOnly:!0})],k.ExportImageParameters.prototype,"layers",null);c.__decorate([g.property({readOnly:!0})],k.ExportImageParameters.prototype,"layerDefs",null);c.__decorate([g.property({type:Number})],k.ExportImageParameters.prototype,"scale",void 0);c.__decorate([g.property({readOnly:!0})],k.ExportImageParameters.prototype,"version",null);c.__decorate([g.property({readOnly:!0})], k.ExportImageParameters.prototype,"visibleSublayers",null);k.ExportImageParameters=c.__decorate([V.subclass("esri.layers.support.ExportImageParameters")],k.ExportImageParameters);Object.defineProperty(k,Symbol.toStringTag,{value:"Module"})})},"esri/layers/support/floorFilterUtils":function(){define(["exports"],function(k){function c(d,v){if(!d?.length)return null;d=d.filter(g=>""!==g).map(g=>`'${g}'`);d.push("''");return`${v} IN (${d.join(",")}) OR ${v} IS NULL`}k.getFloorFilterClause=function(d){const v= d.layer;return"floorInfo"in v&&v.floorInfo?.floorField&&"floors"in d.view?c(d.view.floors,v.floorInfo.floorField):null};k.getLayerFloorFilterClause=function(d,v){return"floorInfo"in v&&v.floorInfo?.floorField?c(d,v.floorInfo.floorField):null};Object.defineProperty(k,Symbol.toStringTag,{value:"Module"})})},"esri/layers/support/imageBitmapUtils":function(){define(["exports","../../core/Error","../../core/promiseUtils"],function(k,c,d){k.createBitmap=async function(v,g,f){let q;try{q=await createImageBitmap(v)}catch(n){throw new c("request:server", `Unable to load ${g}`,{url:g,error:n});}d.throwIfAborted(f);return q};k.createTileBitmap=async function(v,g,f,q,n){let V;try{V=await createImageBitmap(v)}catch(aa){throw new c("request:server",`Unable to load tile ${g}/${f}/${q}`,{error:aa,level:g,row:f,col:q});}d.throwIfAborted(n);return V};Object.defineProperty(k,Symbol.toStringTag,{value:"Module"})})},"*noref":1}}); define("../chunks/tslib.es6 ../request ../TimeExtent ../core/Error ../core/loadAll ../core/MultiOriginJSONSupport ../core/promiseUtils ../core/accessorSupport/decorators/property ../core/accessorSupport/ensureType ../core/RandomLCG ../core/has ../core/accessorSupport/decorators/reader ../core/accessorSupport/decorators/subclass ../core/accessorSupport/decorators/writer ../core/accessorSupport/PropertyOrigin ../geometry/Extent ../geometry/support/scaleUtils ../geometry/support/spatialReferenceUtils ./Layer ./mixins/APIKeyMixin ./mixins/ArcGISMapService ./mixins/ArcGISService ./mixins/BlendLayer ./mixins/CustomParametersMixin ./mixins/OperationalLayer ./mixins/PortalLayer ./mixins/RefreshableLayer ./mixins/ScaleRangeLayer ./mixins/SublayersOwner ./mixins/TemporalLayer ./support/commonProperties ./support/ExportImageParameters ./support/imageBitmapUtils ./support/Sublayer ./support/sublayerUtils ./support/versionUtils ../time/timeZoneUtils".split(" "),function(k, c,d,v,g,f,q,n,V,aa,ba,W,D,r,A,K,M,w,F,t,h,l,u,x,G,P,p,R,N,X,z,Q,B,ca,ea,ja,fa){f=class extends u.BlendLayer(X.TemporalLayer(R.ScaleRangeLayer(N.SublayersOwner(h.ArcGISMapService(l.ArcGISService(G.OperationalLayer(P.PortalLayer(f.MultiOriginJSONMixin(p.RefreshableLayer(t.APIKeyMixin(x.CustomParametersMixin(F)))))))))))){constructor(...m){super(...m);this._exportImageParameters=new Q.ExportImageParameters({layer:this});this.dateFieldsTimeZone=null;this.datesInUnknownTimezone=!1;this.dpi=96;this.gdbVersion= null;this.imageFormat="png24";this.imageMaxWidth=this.imageMaxHeight=2048;this.imageTransparency=!0;this.isReference=null;this.labelsVisible=!1;this.operationalLayerType="ArcGISMapServiceLayer";this.sublayers=this.sourceJSON=this.preferredTimeZone=null;this.type="map-image";this.url=null}normalizeCtorArgs(m,C){return"string"===typeof m?{url:m,...C}:m}load(m){const C=null!=m?m.signal:null;this.addResolvingPromise(this.loadFromPortal({supportedTypes:["Map Service"]},m).catch(q.throwIfAbortError).then(()=> this._fetchService(C)));return Promise.resolve(this)}destroy(){this._exportImageParameters.destroy()}readImageFormat(m,C){return(m=C.supportedImageFormatTypes)&&m.includes("PNG32")?"png32":"png24"}writeSublayers(m,C,L,I){if(this.loaded&&m){m=m.slice().reverse().flatten(({sublayers:J})=>J&&J.toArray().reverse()).toArray();var H=!1;L=A.nameToId(I.origin);this.capabilities?.operations.supportsExportMap&&this.capabilities?.exportMap?.supportsDynamicLayers&&(L===A.OriginId.PORTAL_ITEM?(H=this.createSublayersForOrigin("service").sublayers, H=ea.shouldWriteSublayerStructure(m,H,A.OriginId.SERVICE)):L>A.OriginId.PORTAL_ITEM&&(H=this.createSublayersForOrigin("portal-item"),H=ea.shouldWriteSublayerStructure(m,H.sublayers,A.nameToId(H.origin))));var O=[],da={writeSublayerStructure:H,...I},Y=H||this.hasVisibleLayersForOrigin(L);m.forEach(J=>{const U=J.write({},da);O.push(U);Y=Y||"user"===J.originOf("visible")});O.some(J=>1J.visible).map(J=>J.id))}}createExportImageParameters(m, C,L,I){var H=I?.pixelRatio||1;m&&10<=this.version&&(m=m.clone().shiftCentralMeridian());this._exportImageParameters.floors=I?.floors??null;this._exportImageParameters.scale=M.getScale({extent:m,width:C})*H;const O=this._exportImageParameters.toJSON(),da=!I?.rotation||10.3>this.version?{}:{rotation:-I.rotation},Y=w.srToRESTValue(m?.spatialReference);O.dpi*=H;H={};if(I?.timeExtent){const {start:J,end:U}=I.timeExtent.toJSON();H.time=J&&U&&J===U?""+J:`${null==J?"null":J},${null==U?"null":U}`}else this.timeInfo&& !this.timeInfo.hasLiveData&&(H.time="null,null");return{bbox:m&&m.xmin+","+m.ymin+","+m.xmax+","+m.ymax,bboxSR:Y,imageSR:Y,size:C+","+L,...O,...da,...H}}async fetchImage(m,C,L,I){({data:m}=await this._fetchImage("image",m,C,L,I));return m}async fetchImageBitmap(m,C,L,I){const {data:H,url:O}=await this._fetchImage("blob",m,C,L,I);return B.createBitmap(H,O,I?.signal)}async fetchRecomputedExtents(m={}){({data:m}=await c(this.url,{...m,query:{returnUpdates:!0,f:"json",...this.customParameters,token:this.apiKey}})); const {extent:C,fullExtent:L,timeExtent:I}=m;m=C||L;return{fullExtent:m&&K.fromJSON(m),timeExtent:I&&d.fromJSON({start:I[0],end:I[1]})}}loadAll(){return g.loadAll(this,m=>{m(this.allSublayers);m(this.subtables)})}serviceSupportsSpatialReference(m){return ja.serviceSupportsSpatialReference(this,m)}async _fetchImage(m,C,L,I,H){m={responseType:m,signal:H?.signal??null,query:{...this.parsedUrl.query,...this.createExportImageParameters(C,L,I,H),f:"image",...this.refreshParameters,...this.customParameters, token:this.apiKey}};C=this.parsedUrl.path+"/export";if(null!=m.query?.dynamicLayers&&!this.capabilities?.exportMap?.supportsDynamicLayers)throw new v("mapimagelayer:dynamiclayer-not-supported",`service ${this.url} doesn't support dynamic layers, which is required to be able to change the sublayer's order, rendering, labeling or source.`,{query:m.query});try{const {data:O}=await c(C,m);return{data:O,url:C}}catch(O){if(q.isAbortError(O))throw O;throw new v("mapimagelayer:image-fetch-error",`Unable to load image: ${C}`, {error:O});}}async _fetchService(m){if(this.sourceJSON)this.read(this.sourceJSON,{origin:"service",url:this.parsedUrl});else{var {data:C,ssl:L}=await c(this.parsedUrl.path,{query:{f:"json",...this.parsedUrl.query,...this.customParameters,token:this.apiKey},signal:m});L&&(this.url=this.url.replace(/^http:/i,"https:"));this.sourceJSON=C;this.read(C,{origin:"service",url:this.parsedUrl})}}hasVisibleLayersForOrigin(m){return!(null==m||!this.sublayersSourceJSON[m]?.visibleLayers)}};k.__decorate([n.property(fa.timeZoneProperty("dateFieldsTimeReference"))], f.prototype,"dateFieldsTimeZone",void 0);k.__decorate([n.property({type:Boolean})],f.prototype,"datesInUnknownTimezone",void 0);k.__decorate([n.property()],f.prototype,"dpi",void 0);k.__decorate([n.property()],f.prototype,"gdbVersion",void 0);k.__decorate([n.property()],f.prototype,"imageFormat",void 0);k.__decorate([W.reader("imageFormat",["supportedImageFormatTypes"])],f.prototype,"readImageFormat",null);k.__decorate([n.property({json:{origins:{service:{read:{source:"maxImageHeight"}}}}})],f.prototype, "imageMaxHeight",void 0);k.__decorate([n.property({json:{origins:{service:{read:{source:"maxImageWidth"}}}}})],f.prototype,"imageMaxWidth",void 0);k.__decorate([n.property()],f.prototype,"imageTransparency",void 0);k.__decorate([n.property({type:Boolean,json:{read:!1,write:{enabled:!0,overridePolicy:()=>({enabled:!1})}}})],f.prototype,"isReference",void 0);k.__decorate([n.property({json:{read:!1,write:!1}})],f.prototype,"labelsVisible",void 0);k.__decorate([n.property({type:["ArcGISMapServiceLayer"]})], f.prototype,"operationalLayerType",void 0);k.__decorate([n.property({json:{read:!1,write:!1}})],f.prototype,"popupEnabled",void 0);k.__decorate([n.property(fa.timeZoneProperty("preferredTimeReference"))],f.prototype,"preferredTimeZone",void 0);k.__decorate([n.property()],f.prototype,"sourceJSON",void 0);k.__decorate([n.property({json:{write:{ignoreOrigin:!0}}})],f.prototype,"sublayers",void 0);k.__decorate([r.writer("sublayers",{layers:{type:[ca]},visibleLayers:{type:[V.Integer]}})],f.prototype,"writeSublayers", null);k.__decorate([n.property({type:["show","hide","hide-children"]})],f.prototype,"listMode",void 0);k.__decorate([n.property({json:{read:!1},readOnly:!0,value:"map-image"})],f.prototype,"type",void 0);k.__decorate([n.property(z.url)],f.prototype,"url",void 0);return f=k.__decorate([D.subclass("esri.layers.MapImageLayer")],f)});