UNPKG

@arcgis/core

Version:

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

1 lines • 25.4 kB
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[5920],{4902:(e,t,r)=>{r.d(t,{A:()=>p});var l=r(90237),i=r(40608);let s=0;const n=e=>{let t=class extends e{constructor(...e){super(...e),Object.defineProperty(this,"uid",{writable:!1,configurable:!1,value:Date.now().toString(16)+"-object-"+s++})}};return t=(0,l._)([(0,i.$)("esri.core.Identifiable")],t),t},o=e=>{let t=class extends e{constructor(...e){super(...e),Object.defineProperty(this,"uid",{writable:!1,configurable:!1,value:s++})}};return t=(0,l._)([(0,i.$)("esri.core.Identifiable.NumericIdentifiable")],t),t};let a=class extends(n(class{})){};var u;a=(0,l._)([(0,i.$)("esri.core.Identifiable")],a),(u=a||(a={})).IdentifiableMixin=n,u.NumericIdentifiableMixin=o;const p=a},36708:(e,t,r)=>{r.d(t,{C_:()=>d,OH:()=>y,Vh:()=>m,on:()=>c,pc:()=>w,wB:()=>a,z7:()=>u}),r(60999),r(5503);var l=r(37955),i=r(36563),s=r(97768),n=r(74887),o=r(14012);function a(e,t,r={}){return p(e,t,r,h)}function u(e,t,r={}){return p(e,t,r,f)}function p(e,t,r={},l){let i=null;const n=r.once?(e,r)=>{l(e)&&((0,s.xt)(i),t(e,r))}:(e,r)=>{l(e)&&t(e,r)};if(i=(0,o.Cn)(e,n,r.sync,r.equals),r.initial){const t=e();n(t,t)}return i}function c(e,t,r,n={}){let o=null,u=null,p=null;function c(){o&&u&&(u.remove(),n.onListenerRemove?.(o),o=null,u=null)}function d(e){n.once&&n.once&&(0,s.xt)(p),r(e)}const h=a(e,((e,r)=>{c(),(0,l.wb)(e)&&(o=e,u=(0,l.on)(e,t,d),n.onListenerAdd?.(e))}),{sync:n.sync,initial:!0});return p=(0,i.hA)((()=>{h.remove(),c()})),p}function d(e,t){return function(e,t,r){if((0,n.G4)(r))return Promise.reject((0,n.NK)());const l=e();if(t?.(l))return Promise.resolve(l);let o=null;function a(){o=(0,s.xt)(o)}return new Promise(((l,s)=>{o=(0,i.vE)([(0,n.u7)(r,(()=>{a(),s((0,n.NK)())})),p(e,(e=>{a(),l(e)}),{sync:!1,once:!0},t??h)])}))}(e,f,t)}function h(e){return!0}function f(e){return!!e}r(80559);const y={sync:!0},m={initial:!0},w={sync:!0,initial:!0}},47314:(e,t,r)=>{r.r(t),r.d(t,{default:()=>E});var l,i=r(90237),s=r(78888),n=r(49186),o=r(92071),a=r(799),u=r(84952),p=r(10107),c=(r(44208),r(53966),r(87811),r(36005)),d=r(40608),h=r(43937),f=r(5443),y=r(86738),m=r(16930),w=r(4146),v=r(63074),g=r(16131),_=r(8303),A=r(54310),T=r(25036),M=r(33446),b=r(91806),I=r(87045),P=r(83703);let x=l=class extends((0,v.dM)((0,A.J)((0,T.j)((0,g.q)((0,_.A)((0,o.P)(w.A))))))){constructor(...e){super(...e),this.copyright="",this.fullExtent=new f.A(-20037508.342787,-20037508.34278,20037508.34278,20037508.342787,m.A.WebMercator),this.legendEnabled=!1,this.isReference=null,this.popupEnabled=!1,this.spatialReference=m.A.WebMercator,this.subDomains=null,this.tileInfo=new I.A({size:[256,256],dpi:96,format:"png8",compressionQuality:0,origin:new y.A({x:-20037508.342787,y:20037508.342787,spatialReference:m.A.WebMercator}),spatialReference:m.A.WebMercator,lods:[new b.A({level:0,scale:591657527.591555,resolution:156543.033928}),new b.A({level:1,scale:295828763.795777,resolution:78271.5169639999}),new b.A({level:2,scale:147914381.897889,resolution:39135.7584820001}),new b.A({level:3,scale:73957190.948944,resolution:19567.8792409999}),new b.A({level:4,scale:36978595.474472,resolution:9783.93962049996}),new b.A({level:5,scale:18489297.737236,resolution:4891.96981024998}),new b.A({level:6,scale:9244648.868618,resolution:2445.98490512499}),new b.A({level:7,scale:4622324.434309,resolution:1222.99245256249}),new b.A({level:8,scale:2311162.217155,resolution:611.49622628138}),new b.A({level:9,scale:1155581.108577,resolution:305.748113140558}),new b.A({level:10,scale:577790.554289,resolution:152.874056570411}),new b.A({level:11,scale:288895.277144,resolution:76.4370282850732}),new b.A({level:12,scale:144447.638572,resolution:38.2185141425366}),new b.A({level:13,scale:72223.819286,resolution:19.1092570712683}),new b.A({level:14,scale:36111.909643,resolution:9.55462853563415}),new b.A({level:15,scale:18055.954822,resolution:4.77731426794937}),new b.A({level:16,scale:9027.977411,resolution:2.38865713397468}),new b.A({level:17,scale:4513.988705,resolution:1.19432856685505}),new b.A({level:18,scale:2256.994353,resolution:.597164283559817}),new b.A({level:19,scale:1128.497176,resolution:.298582141647617}),new b.A({level:20,scale:564.248588,resolution:.14929107082380833}),new b.A({level:21,scale:282.124294,resolution:.07464553541190416}),new b.A({level:22,scale:141.062147,resolution:.03732276770595208}),new b.A({level:23,scale:70.5310735,resolution:.01866138385297604})]}),this.type="web-tile",this.urlTemplate=null,this.wmtsInfo=null}normalizeCtorArgs(e,t){return"string"==typeof e?{urlTemplate:e,...t}:e}load(e){const t=this.loadFromPortal({supportedTypes:["WMTS"]},e).then((()=>{let e="";if(this.urlTemplate)if(this.spatialReference.equals(this.tileInfo.spatialReference)){const t=new u.s0(this.urlTemplate);!(this.subDomains&&this.subDomains.length>0)&&t.authority?.includes("{subDomain}")&&(e="is missing 'subDomains' property")}else e="spatialReference must match tileInfo.spatialReference";else e="is missing the required 'urlTemplate' property value";if(e)throw new n.A("web-tile-layer:load",`WebTileLayer (title: '${this.title}', id: '${this.id}') ${e}`)}));return this.addResolvingPromise(t),Promise.resolve(this)}get levelValues(){const e=[];if(!this.tileInfo)return null;for(const t of this.tileInfo.lods)e[t.level]=t.levelValue||t.level;return e}readSpatialReference(e,t){return e||m.A.fromJSON(t.fullExtent?.spatialReference)}get tileServers(){if(!this.urlTemplate)return null;const e=[],{urlTemplate:t,subDomains:r}=this,l=new u.s0(t),i=l.scheme?l.scheme+"://":"//",s=i+l.authority+"/",n=l.authority;if(n?.includes("{subDomain}")){if(r&&r.length>0&&n.split(".").length>1)for(const t of r)e.push(i+n.replaceAll(/\{subDomain\}/gi,t)+"/")}else e.push(s);return e.map(u.Il)}get urlPath(){if(!this.urlTemplate)return null;const e=this.urlTemplate,t=new u.s0(e),r=(t.scheme?t.scheme+"://":"//")+t.authority+"/";return e.slice(r.length)}readUrlTemplate(e,t){return e||t.templateUrl}writeUrlTemplate(e,t){(0,u.BQ)(e)&&(e="https:"+e),e&&(e=e.replaceAll(/\{z\}/gi,"{level}").replaceAll(/\{x\}/gi,"{col}").replaceAll(/\{y\}/gi,"{row}"),e=(0,u.S8)(e)),t.templateUrl=e}fetchTile(e,t,r,l={}){const{signal:i}=l,n=this.getTileUrl(e,t,r),o={responseType:"image",signal:i,query:{...this.refreshParameters}};return(0,s.A)(n,o).then((e=>e.data))}async fetchImageBitmapTile(e,t,r,i={}){const{signal:n}=i;if(this.fetchTile!==l.prototype.fetchTile){const l=await this.fetchTile(e,t,r,i);return(0,M.C)(l,e,t,r,n)}const o=this.getTileUrl(e,t,r),a={responseType:"blob",signal:n,query:{...this.refreshParameters}},{data:u}=await(0,s.A)(o,a);return(0,M.C)(u,e,t,r,n)}getTileUrl(e,t,r){const{levelValues:l,tileServers:i,urlPath:s}=this;if(!l||!i||!s)return"";const n=l[e];return i[t%i.length]+(0,a.HC)(s,{level:n,z:n,col:r,x:r,row:t,y:t})}};(0,i._)([(0,p.MZ)({type:String,value:"",json:{write:!0}})],x.prototype,"copyright",void 0),(0,i._)([(0,p.MZ)({type:f.A,json:{write:!0},nonNullable:!0})],x.prototype,"fullExtent",void 0),(0,i._)([(0,p.MZ)({readOnly:!0,json:{read:!1,write:!1}})],x.prototype,"legendEnabled",void 0),(0,i._)([(0,p.MZ)({type:["show","hide"]})],x.prototype,"listMode",void 0),(0,i._)([(0,p.MZ)({json:{read:!0,write:!0}})],x.prototype,"blendMode",void 0),(0,i._)([(0,p.MZ)()],x.prototype,"levelValues",null),(0,i._)([(0,p.MZ)({type:Boolean,json:{read:!1,write:{enabled:!0,overridePolicy:()=>({enabled:!1})}}})],x.prototype,"isReference",void 0),(0,i._)([(0,p.MZ)({type:["WebTiledLayer"],value:"WebTiledLayer"})],x.prototype,"operationalLayerType",void 0),(0,i._)([(0,p.MZ)({readOnly:!0,json:{read:!1,write:!1}})],x.prototype,"popupEnabled",void 0),(0,i._)([(0,p.MZ)({type:m.A})],x.prototype,"spatialReference",void 0),(0,i._)([(0,c.w)("spatialReference",["spatialReference","fullExtent.spatialReference"])],x.prototype,"readSpatialReference",null),(0,i._)([(0,p.MZ)({type:[String],json:{write:!0}})],x.prototype,"subDomains",void 0),(0,i._)([(0,p.MZ)({type:I.A,json:{write:!0}})],x.prototype,"tileInfo",void 0),(0,i._)([(0,p.MZ)({readOnly:!0})],x.prototype,"tileServers",null),(0,i._)([(0,p.MZ)({json:{read:!1}})],x.prototype,"type",void 0),(0,i._)([(0,p.MZ)()],x.prototype,"urlPath",null),(0,i._)([(0,p.MZ)({type:String,json:{origins:{"portal-item":{read:{source:"url"}}}}})],x.prototype,"urlTemplate",void 0),(0,i._)([(0,c.w)("urlTemplate",["urlTemplate","templateUrl"])],x.prototype,"readUrlTemplate",null),(0,i._)([(0,h.K)("urlTemplate",{templateUrl:{type:String}})],x.prototype,"writeUrlTemplate",null),(0,i._)([(0,p.MZ)({type:P.x,json:{write:!0}})],x.prototype,"wmtsInfo",void 0),x=l=(0,i._)([(0,d.$)("esri.layers.WebTileLayer")],x);const E=x},8303:(e,t,r)=>{r.d(t,{A:()=>T});var l=r(90237),i=r(92602),s=r(70333),n=r(78888),o=r(60999),a=r(49186),u=r(53966),p=r(97768),c=r(74887),d=r(84952),h=r(10107),f=(r(44208),r(87811),r(36005)),y=r(40608),m=r(43937),w=r(83531),v=r(20655),g=r(80812),_=r(41318),A=r(10407);const T=e=>{let t=class extends e{constructor(){super(...arguments),this.resourceReferences={portalItem:null,paths:[]},this.userHasEditingPrivileges=!0,this.userHasFullEditingPrivileges=!1,this.userHasUpdateItemPrivileges=!1}destroy(){this.portalItem=(0,p.pR)(this.portalItem),this.resourceReferences.portalItem=null,this.resourceReferences.paths.length=0}set portalItem(e){e!==this._get("portalItem")&&(this.removeOrigin("portal-item"),this._set("portalItem",e))}readPortalItem(e,t,r){if(t.itemId)return new g.default({id:t.itemId,portal:r?.portal})}writePortalItem(e,t){e?.id&&(t.itemId=e.id)}async loadFromPortal(e,t){if(this.portalItem?.id)try{const{load:l}=await r.e(1204).then(r.bind(r,41204));return(0,c.Te)(t),await l({instance:this,supportedTypes:e.supportedTypes,validateItem:e.validateItem,supportsData:e.supportsData,layerModuleTypeMap:e.layerModuleTypeMap,populateGroupLayer:e.populateGroupLayer},t)}catch(e){throw(0,c.zf)(e)||u.A.getLogger(this).warn(`Failed to load layer (${this.title}, ${this.id}) portal item (${this.portalItem.id})\n ${e}`),e}}async finishLoadEditablePortalLayer(e){this._set("userHasEditingPrivileges",await this._fetchUserHasEditingPrivileges(e).catch((e=>((0,c.QP)(e),!0))))}async setUserPrivileges(e,t){if(!i.A.userPrivilegesApplied)return this.finishLoadEditablePortalLayer(t);if(this.url)try{const{features:{edit:r,fullEdit:l},content:{updateItem:i}}=await this._fetchUserPrivileges(e,t);this._set("userHasEditingPrivileges",r),this._set("userHasFullEditingPrivileges",l),this._set("userHasUpdateItemPrivileges",i)}catch(e){(0,c.QP)(e)}}async _fetchUserPrivileges(e,t){let r=this.portalItem;if(!e||!r||!r.loaded||r.sourceUrl)return this._fetchFallbackUserPrivileges(t);const l=!s.id?.findCredential(this.url),i=e===r.id;if(i&&r.portal.user)return this._getUserPrivileges(r,l);let n,o;if(i)n=r.portal.url;else try{n=await(0,w.wI)(this.url,t)}catch(e){(0,c.QP)(e)}if(!n||!(0,d.b8)(n,r.portal.url))return this._fetchFallbackUserPrivileges(t);try{const e=null!=t?t.signal:null;o=await(s.id?.getCredential(`${n}/sharing`,{prompt:!1,signal:e}))}catch(e){(0,c.QP)(e)}const a=!0,u=!1,p=!1;if(!o)return{features:{edit:a,fullEdit:u},content:{updateItem:p}};try{if(i?await r.reload():(r=new g.default({id:e,portal:{url:n}}),await r.load(t)),r.portal.user)return this._getUserPrivileges(r,l)}catch(e){(0,c.QP)(e)}return{features:{edit:a,fullEdit:u},content:{updateItem:p}}}_getUserPrivileges(e,t){const r=(0,A.It)(e);return t&&(r.features.edit=!0),r}async _fetchFallbackUserPrivileges(e){let t=!0;try{t=await this._fetchUserHasEditingPrivileges(e)}catch(e){(0,c.QP)(e)}return{features:{edit:t,fullEdit:!1},content:{updateItem:!1}}}async _fetchUserHasEditingPrivileges(e){const t=this.url?s.id?.findCredential(this.url):null;if(!t)return!0;const r=M.credential===t?M.user:await this._fetchEditingUser(e);return M.credential=t,M.user=r,null==r?.privileges||r.privileges.includes("features:user:edit")}async _fetchEditingUser(e){const t=this.portalItem?.portal?.user;if(t)return t;const r=s.id?.findServerInfo(this.url??"");if(!r?.owningSystemUrl)return null;const l=`${r.owningSystemUrl}/sharing/rest`,i=v.A.getDefault();if(i&&i.loaded&&(0,d.S8)(i.restUrl)===(0,d.S8)(l))return i.user;const a=`${l}/community/self`,u=null!=e?e.signal:null,p=await(0,o.Ke)((0,n.A)(a,{authMode:"no-prompt",query:{f:"json"},signal:u}));return p.ok?_.A.fromJSON(p.value.data):null}read(e,t){t&&(t.layer=this),super.read(e,t)}write(e,t){const r=t?.portal,l=this.portalItem?.id&&(this.portalItem.portal||v.A.getDefault());return r&&l&&!(0,d.ut)(l.restUrl,r.restUrl)?(t.messages&&t.messages.push(new a.A("layer:cross-portal",`The layer '${this.title} (${this.id})' cannot be persisted because it refers to an item on a different portal than the one being saved to. To save, set layer.portalItem to null or save to the same portal as the item associated with the layer`,{layer:this})),null):super.write(e,{...t,layer:this})}};return(0,l._)([(0,h.MZ)({type:g.default})],t.prototype,"portalItem",null),(0,l._)([(0,f.w)("web-document","portalItem",["itemId"])],t.prototype,"readPortalItem",null),(0,l._)([(0,m.K)("web-document","portalItem",{itemId:{type:String}})],t.prototype,"writePortalItem",null),(0,l._)([(0,h.MZ)({clonable:!1})],t.prototype,"resourceReferences",void 0),(0,l._)([(0,h.MZ)({type:Boolean,readOnly:!0})],t.prototype,"userHasEditingPrivileges",void 0),(0,l._)([(0,h.MZ)({type:Boolean,readOnly:!0})],t.prototype,"userHasFullEditingPrivileges",void 0),(0,l._)([(0,h.MZ)({type:Boolean,readOnly:!0})],t.prototype,"userHasUpdateItemPrivileges",void 0),t=(0,l._)([(0,y.$)("esri.layers.mixins.PortalLayer")],t),t},M={credential:null,user:null}},91806:(e,t,r)=>{r.d(t,{A:()=>p});var l,i=r(90237),s=r(25482),n=r(10107),o=r(56507),a=(r(44208),r(87811),r(40608));let u=l=class extends s.A{constructor(e){super(e),this.cols=null,this.level=0,this.levelValue=null,this.origin=null,this.resolution=0,this.rows=null,this.scale=0}clone(){return new l({cols:this.cols,level:this.level,levelValue:this.levelValue,resolution:this.resolution,rows:this.rows,scale:this.scale})}};(0,i._)([(0,n.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],u.prototype,"cols",void 0),(0,i._)([(0,n.MZ)({type:o.jz,json:{write:!0}})],u.prototype,"level",void 0),(0,i._)([(0,n.MZ)({type:String,json:{write:!0}})],u.prototype,"levelValue",void 0),(0,i._)([(0,n.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],u.prototype,"origin",void 0),(0,i._)([(0,n.MZ)({type:Number,json:{write:!0}})],u.prototype,"resolution",void 0),(0,i._)([(0,n.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],u.prototype,"rows",void 0),(0,i._)([(0,n.MZ)({type:Number,json:{write:!0}})],u.prototype,"scale",void 0),u=l=(0,i._)([(0,a.$)("esri.layers.support.LOD")],u);const p=u},87045:(e,t,r)=>{r.d(t,{A:()=>b});var l,i=r(90237),s=r(66552),n=r(25482),o=r(83047),a=r(10107),u=r(56507),p=(r(44208),r(87811),r(36005)),c=r(40608),d=r(43937),h=r(86738),f=r(16930),y=r(19419),m=r(21325),w=r(28735),v=r(91806),g=r(72802);const _=new s.J({PNG:"png",PNG8:"png8",PNG24:"png24",PNG32:"png32",JPEG:"jpg",JPG:"jpg",DIB:"dib",TIFF:"tiff",EMF:"emf",PS:"ps",PDF:"pdf",GIF:"gif",SVG:"svg",SVGZ:"svgz",Mixed:"mixed",MIXED:"mixed",LERC:"lerc",LERC2D:"lerc2d",RAW:"raw",pbf:"pbf"});let A=l=class extends n.A{static create(e={}){const{resolutionFactor:t=1,scales:r,size:i=256,spatialReference:s=f.A.WebMercator,numLODs:n=24}=e;if(!(0,m.fn)(s)){const e=[];if(r)for(let t=0;t<r.length;t++){const l=r[t];e.push(new v.A({level:t,scale:l,resolution:l}))}else{let t=5e-4;for(let r=n-1;r>=0;r--)e.unshift(new v.A({level:r,scale:t,resolution:t})),t*=2}return new l({dpi:96,lods:e,origin:new h.A(0,0,s),size:[i,i],spatialReference:s})}const a=(0,m.Vp)(s),u=e.origin?new h.A({x:e.origin.x,y:e.origin.y,spatialReference:s}):new h.A(a?{x:a.origin[0],y:a.origin[1],spatialReference:s}:{x:0,y:0,spatialReference:s}),p=1/(39.37*(0,o.GA)(s)*96),c=[];if(r)for(let e=0;e<r.length;e++){const t=r[e],l=t*p;c.push(new v.A({level:e,scale:t,resolution:l}))}else{let e=(0,m.EA)(s)?512/i*591657527.5917094:256/i*591657527.591555;const r=Math.ceil(n/t);c.push(new v.A({level:0,scale:e,resolution:e*p}));for(let l=1;l<r;l++){const r=e/2**t,i=r*p;c.push(new v.A({level:l,scale:r,resolution:i})),e=r}}return new l({dpi:96,lods:c,origin:u,size:[i,i],spatialReference:s})}constructor(e){super(e),this.dpi=96,this.format=null,this.origin=null,this.size=null,this.spatialReference=null}get isWrappable(){const{spatialReference:e,origin:t}=this;if(e&&t){const r=(0,m.Vp)(e);return e.isWrappable&&!!r&&Math.abs(r.origin[0]-t.x)<=r.dx}return!1}readOrigin(e,t){return h.A.fromJSON({spatialReference:t.spatialReference,...e})}set lods(e){let t=0,r=0;const l=[],i=this._levelToLOD={};e&&(t=-1/0,r=1/0,e.forEach((e=>{l.push(e.scale),t=e.scale>t?e.scale:t,r=e.scale<r?e.scale:r,i[e.level]=e}))),this._set("scales",l),this._set("lods",e),this._initializeUpsampleLevels()}readSize(e,t){return[t.cols,t.rows]}writeSize(e,t){t.cols=e[0],t.rows=e[1]}zoomToScale(e){const t=this.scales;if(e<=0)return t[0];if(e>=t.length-1)return t[t.length-1];const r=Math.floor(e),l=r+1;return t[r]/(t[r]/t[l])**(e-r)}scaleToZoom(e){const t=this.scales,r=t.length-1;let l=0;for(;l<r;l++){const r=t[l],i=t[l+1];if(r<=e)return l;if(i===e)return l+1;if(r>e&&i<e)return l+Math.log(r/e)/Math.log(r/i)}return l}tileAt(e,t,r,l){const i=this.lodAt(e);if(!i)return null;let s,n;if("number"==typeof t)s=t,n=r;else if((0,m.aI)(t.spatialReference,this.spatialReference))s=t.x,n=t.y,l=r;else{const e=(0,w.Cv)(t,this.spatialReference);if(null==e)return null;s=e.x,n=e.y,l=r}const o=i.resolution*this.size[0],a=i.resolution*this.size[1];return l||(l=new g.U(null,0,0,0,(0,y.vt)())),l.level=e,l.row=Math.floor((this.origin.y-n)/a+.001),l.col=Math.floor((s-this.origin.x)/o+.001),this.updateTileInfo(l),l}updateTileInfo(e,t=l.ExtrapolateOptions.NONE){let r=this.lodAt(e.level);if(!r&&t===l.ExtrapolateOptions.POWER_OF_TWO){const t=this.lods[this.lods.length-1];t.level<e.level&&(r=t)}if(!r)return;const i=e.level-r.level,s=r.resolution*this.size[0]/2**i,n=r.resolution*this.size[1]/2**i;e.id=`${e.level}/${e.row}/${e.col}`,e.extent||(e.extent=(0,y.vt)()),e.extent[0]=this.origin.x+e.col*s,e.extent[1]=this.origin.y-(e.row+1)*n,e.extent[2]=e.extent[0]+s,e.extent[3]=e.extent[1]+n}upsampleTile(e){const t=this._upsampleLevels[e.level];return!(!t||-1===t.parentLevel||(e.level=t.parentLevel,e.row=Math.floor(e.row/t.factor+.001),e.col=Math.floor(e.col/t.factor+.001),this.updateTileInfo(e),0))}getTileBounds(e,t){const r=this.lodAt(t.level);if(null==r)return null;const{resolution:l}=r,i=l*this.size[0],s=l*this.size[1];return e[0]=this.origin.x+t.col*i,e[1]=this.origin.y-(t.row+1)*s,e[2]=e[0]+i,e[3]=e[1]+s,e}lodAt(e){return this._levelToLOD?.[e]??null}clone(){return l.fromJSON(this.write({}))}getCompatibleForVTL(e){if(this.size[0]!==this.size[1]||256===this.size[0]&&512===e)return null;const t=(512===this.size[0]&&256===e?-1:0)+(this.spatialReference.isGeographic?1:0);if(this.size[0]===e&&0===t)return this;const r=[],i=this.lods.length-t;for(let e=0;e<i;e++){const l=e+t,{scale:i,resolution:s}=l>=0?this.lods[l]:{scale:2*this.lods[0].scale,resolution:2*this.lods[0].resolution};r.push(new v.A({level:e,scale:i,resolution:s}))}return new l({size:[e,e],dpi:this.dpi,format:this.format,compressionQuality:this.compressionQuality,origin:this.origin,spatialReference:this.spatialReference,lods:r})}_initializeUpsampleLevels(){const e=this.lods;this._upsampleLevels=[];let t=null;for(let r=0;r<e.length;r++){const l=e[r];this._upsampleLevels[l.level]={parentLevel:t?t.level:-1,factor:t?t.resolution/l.resolution:0},t=l}}};var T,M;(0,i._)([(0,a.MZ)({type:Number,json:{write:!0}})],A.prototype,"compressionQuality",void 0),(0,i._)([(0,a.MZ)({type:Number,json:{write:!0}})],A.prototype,"dpi",void 0),(0,i._)([(0,a.MZ)({type:String,json:{read:_.read,write:_.write,origins:{"web-scene":{read:!1,write:!1}}}})],A.prototype,"format",void 0),(0,i._)([(0,a.MZ)({readOnly:!0})],A.prototype,"isWrappable",null),(0,i._)([(0,a.MZ)({type:h.A,json:{write:!0}})],A.prototype,"origin",void 0),(0,i._)([(0,p.w)("origin")],A.prototype,"readOrigin",null),(0,i._)([(0,a.MZ)({type:[v.A],value:null,json:{write:!0}})],A.prototype,"lods",null),(0,i._)([(0,a.MZ)({readOnly:!0})],A.prototype,"scales",void 0),(0,i._)([(0,a.MZ)({cast:e=>Array.isArray(e)?e:"number"==typeof e?[e,e]:[256,256]})],A.prototype,"size",void 0),(0,i._)([(0,p.w)("size",["rows","cols"])],A.prototype,"readSize",null),(0,i._)([(0,d.K)("size",{cols:{type:u.jz},rows:{type:u.jz}})],A.prototype,"writeSize",null),(0,i._)([(0,a.MZ)({type:f.A,json:{write:!0}})],A.prototype,"spatialReference",void 0),A=l=(0,i._)([(0,c.$)("esri.layers.support.TileInfo")],A),T=A||(A={}),(M=T.ExtrapolateOptions||(T.ExtrapolateOptions={}))[M.NONE=0]="NONE",M[M.POWER_OF_TWO=1]="POWER_OF_TWO";const b=A},72802:(e,t,r)=>{r.d(t,{U:()=>l});class l{constructor(e,t,r,l,i=void 0){this.id=e,this.level=t,this.row=r,this.col=l,this.extent=i}}},83703:(e,t,r)=>{r.d(t,{x:()=>u});var l,i=r(90237),s=r(25482),n=r(4718),o=r(10107),a=(r(44208),r(53966),r(40608));let u=l=class extends s.A{constructor(e){super(e)}clone(){return new l({customLayerParameters:(0,n.o8)(this.customLayerParameters),customParameters:(0,n.o8)(this.customParameters),layerIdentifier:this.layerIdentifier,tileMatrixSet:this.tileMatrixSet,url:this.url})}};(0,i._)([(0,o.MZ)({json:{type:Object,write:!0}})],u.prototype,"customLayerParameters",void 0),(0,i._)([(0,o.MZ)({json:{type:Object,write:!0}})],u.prototype,"customParameters",void 0),(0,i._)([(0,o.MZ)({type:String,json:{write:!0}})],u.prototype,"layerIdentifier",void 0),(0,i._)([(0,o.MZ)({type:String,json:{write:!0}})],u.prototype,"tileMatrixSet",void 0),(0,i._)([(0,o.MZ)({type:String,json:{write:!0}})],u.prototype,"url",void 0),u=l=(0,i._)([(0,a.$)("esri.layers.support.WMTSLayerInfo")],u)},33446:(e,t,r)=>{r.d(t,{C:()=>n,m:()=>s});var l=r(49186),i=r(74887);async function s(e,t,r){let s;try{s=await createImageBitmap(e)}catch(e){throw new l.A("request:server",`Unable to load ${t}`,{url:t,error:e})}return(0,i.Te)(r),s}async function n(e,t,r,s,n){let o;try{o=await createImageBitmap(e)}catch(e){throw new l.A("request:server",`Unable to load tile ${t}/${r}/${s}`,{error:e,level:t,row:r,col:s})}return(0,i.Te)(n),o}},79677:(e,t,r)=>{r.d(t,{A:()=>h});var l,i=r(90237),s=r(25482),n=r(88930),o=r(10107),a=(r(44208),r(53966),r(87811),r(36005)),u=r(40608),p=r(43937),c=r(98623);let d=l=class extends s.A{static get allTime(){return f}static get empty(){return y}static fromArray(e){return new l({start:null!=e[0]?new Date(e[0]):e[0],end:null!=e[1]?new Date(e[1]):e[1]})}constructor(e){super(e),this.end=null,this.start=null}readEnd(e,t){return null!=t.end?new Date(t.end):null}writeEnd(e,t){t.end=e?.getTime()??null}get isAllTime(){return this.equals(l.allTime)}get isEmpty(){return this.equals(l.empty)}readStart(e,t){return null!=t.start?new Date(t.start):null}writeStart(e,t){t.start=e?.getTime()??null}clone(){return new l({end:this.end,start:this.start})}equals(e){if(!e)return!1;const t=this.start?.getTime()??this.start,r=this.end?.getTime()??this.end,l=e.start?.getTime()??e.start,i=e.end?.getTime()??e.end;return t===l&&r===i}expandTo(e,t=c.qU){if(this.isEmpty||this.isAllTime)return this.clone();let r=this.start;r&&(r=(0,n.lL)(r,e,t));let i=this.end;if(i){const r=(0,n.lL)(i,e,t);i=i.getTime()===r.getTime()?r:(0,n.S1)(r,1,e,t)}return new l({start:r,end:i})}intersection(e){if(!e)return this.clone();if(this.isEmpty||e.isEmpty)return l.empty;if(this.isAllTime)return e.clone();if(e.isAllTime)return this.clone();const t=this.start?.getTime()??-1/0,r=this.end?.getTime()??1/0,i=e.start?.getTime()??-1/0,s=e.end?.getTime()??1/0;let n,o;return i>=t&&i<=r?n=i:t>=i&&t<=s&&(n=t),r>=i&&r<=s?o=r:s>=t&&s<=r&&(o=s),null==n||null==o||isNaN(n)||isNaN(o)?l.empty:new l({start:n===-1/0?null:new Date(n),end:o===1/0?null:new Date(o)})}offset(e,t,r=c.qU){if(this.isEmpty||this.isAllTime)return this.clone();const i=new l,{start:s,end:o}=this;return null!=s&&(i.start=(0,n.S1)(s,e,t,r)),null!=o&&(i.end=(0,n.S1)(o,e,t,r)),i}toArray(){return this.isEmpty?[void 0,void 0]:[this.start?.getTime()??null,this.end?.getTime()??null]}union(e){if(!e||e.isEmpty)return this.clone();if(this.isEmpty)return e.clone();if(this.isAllTime||e.isAllTime)return f.clone();const t=null!=this.start&&null!=e.start?new Date(Math.min(this.start.getTime(),e.start.getTime())):null,r=null!=this.end&&null!=e.end?new Date(Math.max(this.end.getTime(),e.end.getTime())):null;return new l({start:t,end:r})}};(0,i._)([(0,o.MZ)({type:Date,json:{write:{allowNull:!0}}})],d.prototype,"end",void 0),(0,i._)([(0,a.w)("end")],d.prototype,"readEnd",null),(0,i._)([(0,p.K)("end")],d.prototype,"writeEnd",null),(0,i._)([(0,o.MZ)({readOnly:!0,json:{read:!1}})],d.prototype,"isAllTime",null),(0,i._)([(0,o.MZ)({readOnly:!0,json:{read:!1}})],d.prototype,"isEmpty",null),(0,i._)([(0,o.MZ)({type:Date,json:{write:{allowNull:!0}}})],d.prototype,"start",void 0),(0,i._)([(0,a.w)("start")],d.prototype,"readStart",null),(0,i._)([(0,p.K)("start")],d.prototype,"writeStart",null),d=l=(0,i._)([(0,u.$)("esri.time.TimeExtent")],d);const h=d,f=new d,y=new d({start:void 0,end:void 0})},78553:(e,t,r)=>{r.d(t,{D:()=>s,p:()=>i});var l=r(56507);function i(e){const t=(0,l.Vr)(100*(1-e));return Math.max(0,Math.min(t,100))}function s(e){const t=1-e/100;return Math.max(0,Math.min(t,1))}}}]);