@arcgis/core 4.22.0-next.20211207 → 4.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/assets/esri/core/workers/RemoteClient.js +1 -1
  2. package/assets/esri/core/workers/chunks/{44ccee36f8c74f4f134e.js → 025df54bafc05c183182.js} +1 -1
  3. package/assets/esri/core/workers/chunks/{23af0b02208e20d5c07e.js → 22c0032451a4e1d43167.js} +1 -1
  4. package/assets/esri/core/workers/chunks/{fd874267d81bc0b2be50.js → 5915752b754997630665.js} +1 -1
  5. package/assets/esri/core/workers/chunks/{f3da8b797c8e1fcb1c21.js → 63161320a58a0b1702a2.js} +1 -1
  6. package/assets/esri/core/workers/chunks/{96a62dc1e07f3ef20a30.js → 67482a0c298e41ea47f5.js} +1 -1
  7. package/assets/esri/core/workers/chunks/{52aa3b44bddb10caa343.js → 753846665158c1c321ee.js} +1 -1
  8. package/assets/esri/core/workers/chunks/{8bc4ea821be16a752226.js → 764126387018aa548f58.js} +1 -1
  9. package/assets/esri/core/workers/chunks/{bc0b85bc1e5116836ba4.js → 79ddc2e92f0f057f6be3.js} +1 -1
  10. package/assets/esri/core/workers/chunks/{b1e7e0ee0fc8d3ba7c3c.js → 8150ec4b80adcf5fca86.js} +1 -1
  11. package/assets/esri/core/workers/chunks/{6210b23872c362f51b12.js → 89d1c5f6ed167515ad24.js} +1 -1
  12. package/assets/esri/core/workers/chunks/{4417dfcb2ba50ac9f199.js → 8ac288ac3ff8e61b98c4.js} +1 -1
  13. package/assets/esri/core/workers/chunks/95b085ff097005995ced.js +1 -0
  14. package/assets/esri/core/workers/chunks/{6e736a6717e09bf6c1fc.js → ab635e54fda321961683.js} +1 -1
  15. package/assets/esri/core/workers/chunks/{9d66ca0feda89e902494.js → c32a849111ae061ae194.js} +1 -1
  16. package/assets/esri/core/workers/chunks/{6a1ce00bcb689ea95bcb.js → dab0bfa26073cf325e08.js} +1 -1
  17. package/chunks/Clouds.glsl.js +4 -4
  18. package/config.js +1 -1
  19. package/interfaces.d.ts +133 -6
  20. package/package.json +1 -1
  21. package/renderers/VectorFieldRenderer.js +1 -1
  22. package/renderers/support/RasterSymbolizer.js +1 -1
  23. package/renderers/support/rasterRendererHelper.js +1 -1
  24. package/support/revision.js +1 -1
  25. package/views/2d/MapViewConstraints.js +1 -1
  26. package/views/2d/constraints/ZoomConstraint.js +1 -1
  27. package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
  28. package/views/2d/layers/FeatureLayerView2D.js +1 -1
  29. package/views/3d/environment/Clouds.glsl.js +1 -1
  30. package/views/3d/environment/CloudsGenerator.js +1 -1
  31. package/views/3d/environment/NoiseTextureAtlas.js +1 -1
  32. package/views/MapView.js +1 -1
  33. package/views/webgl/Program.js +1 -1
  34. package/widgets/Legend/support/ActiveLayerInfo.js +1 -1
  35. package/widgets/UtilityNetworkTrace.js +1 -1
  36. package/assets/esri/core/workers/chunks/26a4a4762a635109383f.js +0 -1
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[8216],{38171:(e,t,r)=>{r.d(t,{Z:()=>f});var s,o=r(43697),i=r(66577),n=r(51773),a=r(78223),l=r(10736),u=r(22974),c=r(70586),p=r(99001),d=r(5600),h=(r(75215),r(52011)),y=r(33955);let m=s=class extends l.wq{constructor(...e){super(...e),this.isAggregate=!1,this.layer=null,this.popupTemplate=null,this.sourceLayer=null,Object.defineProperty(this,"uid",{value:(0,p.D)(),configurable:!0})}normalizeCtorArgs(e,t,r,s){return e&&!e.declaredClass?e:{geometry:e,symbol:t,attributes:r,popupTemplate:s}}set attributes(e){const t=this._get("attributes");t!==e&&(this._set("attributes",e),this._notifyLayer("attributes",t,e))}set geometry(e){const t=this._get("geometry");t!==e&&(this._set("geometry",e),this._notifyLayer("geometry",t,e))}set symbol(e){const t=this._get("symbol");t!==e&&(this._set("symbol",e),this._notifyLayer("symbol",t,e))}set visible(e){const t=this._get("visible");t!==e&&(this._set("visible",e),this._notifyLayer("visible",t,e))}getEffectivePopupTemplate(e=!1){if(this.popupTemplate)return this.popupTemplate;for(const t of[this.sourceLayer,this.layer])if(t){if("popupTemplate"in t&&t.popupTemplate)return t.popupTemplate;if(e&&"defaultPopupTemplate"in t&&(0,c.pC)(t.defaultPopupTemplate))return t.defaultPopupTemplate}return null}getAttribute(e){return this.attributes&&this.attributes[e]}setAttribute(e,t){if(this.attributes){const r=this.getAttribute(e);this.attributes[e]=t,this._notifyLayer("attributes",r,t,e)}else this.attributes={[e]:t},this._notifyLayer("attributes",void 0,t,e)}getObjectId(){return this.sourceLayer&&"objectIdField"in this.sourceLayer&&this.sourceLayer.objectIdField?this.getAttribute(this.sourceLayer.objectIdField):null}toJSON(){return{geometry:(0,c.pC)(this.geometry)?this.geometry.toJSON():null,symbol:(0,c.pC)(this.symbol)?this.symbol.toJSON():null,attributes:{...this.attributes},popupTemplate:this.popupTemplate&&this.popupTemplate.toJSON()}}clone(){return new s(this.cloneProperties())}notifyGeometryChanged(){this._notifyLayer("geometry",this.geometry,this.geometry)}cloneProperties(){return{attributes:(0,u.d9)(this.attributes),geometry:(0,u.d9)(this.geometry),layer:this.layer,popupTemplate:this.popupTemplate&&this.popupTemplate.clone(),sourceLayer:this.sourceLayer,symbol:(0,u.d9)(this.symbol),visible:this.visible}}_notifyLayer(e,t,r,s){if(!this.layer||!("graphicChanged"in this.layer))return;const o={graphic:this,property:e,oldValue:t,newValue:r};"attributes"===e&&(o.attributeName=s),this.layer.graphicChanged(o)}};(0,o._)([(0,d.Cb)({value:null})],m.prototype,"attributes",null),(0,o._)([(0,d.Cb)({value:null,types:i.qM,json:{read:y.im}})],m.prototype,"geometry",null),(0,o._)([(0,d.Cb)({type:Boolean})],m.prototype,"isAggregate",void 0),(0,o._)([(0,d.Cb)()],m.prototype,"layer",void 0),(0,o._)([(0,d.Cb)({type:n.Z})],m.prototype,"popupTemplate",void 0),(0,o._)([(0,d.Cb)()],m.prototype,"sourceLayer",void 0),(0,o._)([(0,d.Cb)({value:null,types:a.LB})],m.prototype,"symbol",null),(0,o._)([(0,d.Cb)({type:Boolean,value:!0})],m.prototype,"visible",null),m=s=(0,o._)([(0,h.j)("esri.Graphic")],m),(m||(m={})).generateUID=p.D;const f=m},99880:(e,t,r)=>{r.d(t,{V:()=>l});var s=r(68773),o=(r(3172),r(20102)),i=r(92604),n=r(17452);const a=i.Z.getLogger("esri.assets");function l(e){if(!s.Z.assetsPath)throw a.errorOnce("The API assets location needs to be set using config.assetsPath. More information: https://arcg.is/1OzLe50"),new o.Z("assets:path-not-set","config.assetsPath is not set");return(0,n.v_)(s.Z.assetsPath,e)}},3920:(e,t,r)=>{r.d(t,{r:()=>c,p:()=>u});var s=r(43697),o=r(15923),i=r(61247),n=r(5600),a=r(52011),l=r(89749);const u=e=>{let t=class extends e{destroy(){var e,t;this.destroyed||(null==(e=this._get("handles"))||e.destroy(),null==(t=this._get("updatingHandles"))||t.destroy())}get handles(){return this._get("handles")||new i.Z}get updatingHandles(){return this._get("updatingHandles")||new l.t}};return(0,s._)([(0,n.Cb)({readOnly:!0})],t.prototype,"handles",null),(0,s._)([(0,n.Cb)({readOnly:!0})],t.prototype,"updatingHandles",null),t=(0,s._)([(0,a.j)("esri.core.HandleOwner")],t),t};let c=class extends(u(o.Z)){};c=(0,s._)([(0,a.j)("esri.core.HandleOwner")],c)},36030:(e,t,r)=>{r.d(t,{J:()=>i});var s=r(35454),o=r(5600);function i(e,t={}){var r;const i=e instanceof s.Xn?e:new s.Xn(e,t),n={type:null==(r=null==t?void 0:t.ignoreUnknown)||r?i.apiValues:String,readOnly:null==t?void 0:t.readOnly,json:{type:i.jsonValues,read:(null==t||!t.readOnly)&&{reader:i.read},write:{writer:i.write}}};return void 0!==(null==t?void 0:t.default)&&(n.json.default=t.default),void 0!==(null==t?void 0:t.name)&&(n.json.name=t.name),(0,o.Cb)(n)}},74085:(e,t,r)=>{function s(e){}r.d(t,{Bg:()=>s}),r(80442)},43050:(e,t,r)=>{r.d(t,{S1:()=>n,on:()=>p,OY:()=>c,cm:()=>l,N1:()=>a,LR:()=>u,tH:()=>d});var s=r(91460),o=(r(22974),r(95330));const i=/\?(\.|$)/g;function n(e,t,r,s){const o=Array.isArray(t)?t:t.indexOf(",")>-1?t.split(","):[t],n=function(e,t,r,s){return e.watch(t,r,s)}(e,t,r,s);for(const t of o){const s=t.trim().replace(i,"$1"),o=e.get(s);r.call(e,o,o,s,e)}return n}function a(e,t,r,s){return d(e,t,h,r,s)}function l(e,t,r,s){return d(e,t,y,r,s)}function u(e,t,r,s){return d(e,t,m,r,s)}function c(e,t,r,s){return d(e,t,f,r,s)}function p(e,t,r,o,i,a,l){const u={};function c(t){const s=u[t];s&&(a&&a(s.target,t,e,r),s.handle.remove(),delete u[t])}const p=n(e,t,((t,n,a)=>{c(a),(0,s.vT)(t)&&(u[a]={handle:(0,s.on)(t,r,o),target:t},i&&i(t,a,e,r))}),l);return{remove(){p.remove();for(const e in u)c(e)}}}function d(e,t,r,s,i){const n="function"==typeof s?s:null,a="object"==typeof s?s:null;"boolean"==typeof s&&(i=s);let l,u=!1;function c(){l&&(l.remove(),l=null)}const p=(0,o.dD)();(0,o.fu)(a,(()=>{c(),p.reject((0,o.zE)())}));const d={then:p.promise.then.bind(p.promise),catch:p.promise.catch.bind(p.promise),remove:c};return Object.freeze(d),l=function(e,t,r,s,o){const i=e.watch(t,((t,o,i,n)=>{r&&!r(t)||null==s||s.call(e,t,o,i,n)}),o);if(Array.isArray(t))for(const o of t){const i=e.get(o);r&&r(i)&&(null==s||s.call(e,i,i,t,e))}else{const o=e.get(t);r&&r(o)&&(null==s||s.call(e,o,o,t,e))}return i}(e,t,r,((t,r,s,o)=>{u=!0,c(),n&&n.call(e,t,r,s,o),p.resolve({value:t,oldValue:r,propertyName:s,target:o})}),i),u&&c(),d}function h(e){return!!e}function y(e){return!e}function m(e){return!0===e}function f(e){return!1===e}},80903:(e,t,r)=>{r.d(t,{Z:()=>l});var s=r(50758),o=r(92604),i=r(95330),n=r(25045);const a=o.Z.getLogger("esri.core.workers.Connection");class l{constructor(){this._clients=new Array,this._clientPromises=new Array,this._clientIdx=0}destroy(){this.close()}get closed(){return!this._clients||!this._clients.length}open(e,t){return new Promise(((r,s)=>{let o=!0;const a=e=>{(0,i.k_)(t.signal),o&&(o=!1,e())};this._clients.length=e.length,this._clientPromises.length=e.length;for(let o=0;o<e.length;++o){const l=e[o];(0,i.y8)(l)?this._clientPromises[o]=l.then((e=>(this._clients[o]=new n.default(e,t),a(r),this._clients[o])),(()=>(a(s),null))):(this._clients[o]=new n.default(l,t),this._clientPromises[o]=Promise.resolve(this._clients[o]),a(r))}}))}broadcast(e,t,r){const s=new Array(this._clientPromises.length);for(let o=0;o<this._clientPromises.length;++o){const i=this._clientPromises[o];s[o]=i.then((s=>s.invoke(e,t,r)))}return s}close(){for(const e of this._clientPromises)e.then((e=>e.close()));this._clients.length=0,this._clientPromises.length=0}getAvailableClient(){let e;for(let t=0;t<this._clients.length;++t){const r=this._clients[t];if(r){if(!r.isBusy())return Promise.resolve(r)}else e=e||[],e.push(this._clientPromises[t])}return e?Promise.race(e):(this._clientIdx=(this._clientIdx+1)%this._clients.length,Promise.resolve(this._clients[this._clientIdx]))}invoke(e,t,r){let s=null;return Array.isArray(r)?(a.warn("invoke()","The transferList parameter is deprecated, use the options object instead"),s={transferList:r}):s=r,this.closed?Promise.reject(new Error("Connection closed")):this.getAvailableClient().then((r=>r.invoke(e,t,s)))}on(e,t){return Promise.all(this._clientPromises).then((()=>(0,s.AL)(this._clients.map((r=>r.on(e,t))))))}openPorts(){return new Promise((e=>{const t=new Array(this._clientPromises.length);let r=t.length;for(let s=0;s<this._clientPromises.length;++s)this._clientPromises[s].then((o=>{t[s]=o.openPort(),0==--r&&e(t)}))}))}get test(){return{numClients:this._clients.length}}}},25045:(e,t,r)=>{r.r(t),r.d(t,{default:()=>b});var s=r(40330),o=r(20102),i=r(91460),n=r(70586),a=r(95330),l=r(94362),u=r(17202);const c={statsWorker:()=>Promise.all([r.e(8778),r.e(6570),r.e(8316),r.e(2303),r.e(6841)]).then(r.bind(r,36841)),geometryEngineWorker:()=>Promise.all([r.e(5837),r.e(8227)]).then(r.bind(r,48227)),CSVSourceWorker:()=>Promise.all([r.e(8778),r.e(6570),r.e(8316),r.e(2303),r.e(7668),r.e(411),r.e(1534),r.e(3578),r.e(8961),r.e(7054),r.e(2781),r.e(966)]).then(r.bind(r,27793)),EdgeProcessingWorker:()=>Promise.all([r.e(6481),r.e(8936)]).then(r.bind(r,18936)),ElevationSamplerWorker:()=>Promise.all([r.e(8778),r.e(6570),r.e(8316),r.e(411),r.e(2781),r.e(6481),r.e(6459),r.e(3553)]).then(r.bind(r,61787)),FeatureServiceSnappingSourceWorker:()=>Promise.all([r.e(8778),r.e(6570),r.e(8316),r.e(2303),r.e(7668),r.e(4588),r.e(411),r.e(1534),r.e(3485),r.e(3578),r.e(8961),r.e(7054),r.e(2781),r.e(5158)]).then(r.bind(r,41650)),GeoJSONSourceWorker:()=>Promise.all([r.e(8778),r.e(6570),r.e(8316),r.e(2303),r.e(7668),r.e(411),r.e(1534),r.e(3578),r.e(8961),r.e(7054),r.e(2781),r.e(6348),r.e(7845)]).then(r.bind(r,97845)),LercWorker:()=>r.e(3027).then(r.bind(r,23027)),MemorySourceWorker:()=>Promise.all([r.e(8778),r.e(6570),r.e(8316),r.e(2303),r.e(7668),r.e(411),r.e(1534),r.e(3578),r.e(8961),r.e(7054),r.e(2781),r.e(6348),r.e(639)]).then(r.bind(r,30639)),PBFDecoderWorker:()=>Promise.all([r.e(8778),r.e(6570),r.e(8316),r.e(8961),r.e(147)]).then(r.bind(r,61916)),Pipeline:()=>Promise.all([r.e(8778),r.e(6570),r.e(8316),r.e(2303),r.e(7668),r.e(5638),r.e(4588),r.e(411),r.e(1534),r.e(3485),r.e(3578),r.e(8961),r.e(7054),r.e(2730),r.e(7783)]).then(r.bind(r,97783)),PointCloudWorker:()=>Promise.all([r.e(8778),r.e(6570),r.e(8316),r.e(2303),r.e(411),r.e(9294),r.e(9474)]).then(r.bind(r,16583)),RasterWorker:()=>Promise.all([r.e(8778),r.e(6570),r.e(8316),r.e(2303),r.e(411),r.e(176),r.e(8034)]).then(r.bind(r,61576)),SceneLayerWorker:()=>r.e(5265).then(r.bind(r,55265)),WFSSourceWorker:()=>Promise.all([r.e(8778),r.e(6570),r.e(8316),r.e(2303),r.e(7668),r.e(411),r.e(1534),r.e(3578),r.e(8961),r.e(7054),r.e(2781),r.e(6348),r.e(4556),r.e(3230)]).then(r.bind(r,43230)),WorkerTileHandler:()=>Promise.all([r.e(2303),r.e(1785),r.e(6810),r.e(9872)]).then(r.bind(r,56456))},{CLOSE:p,ABORT:d,INVOKE:h,RESPONSE:y,OPEN_PORT:m,ON:f}=l.Cs;class g{constructor(e){this._timer=null,this._cancelledJobIds=new Set,this._invokeMessages=[],this._invoke=e,this._timer=null,this._process=this._process.bind(this)}push(e){e.type===l.Cs.ABORT?this._cancelledJobIds.add(e.jobId):(this._invokeMessages.push(e),null===this._timer&&(this._timer=setTimeout(this._process,0)))}clear(){this._invokeMessages.length=0,this._cancelledJobIds.clear(),this._timer=null}_process(){this._timer=null;for(const e of this._invokeMessages)this._cancelledJobIds.has(e.jobId)||this._invoke(e);this._cancelledJobIds.clear(),this._invokeMessages.length=0}}class b{constructor(e,t){this._port=e,this._outJobs=new Map,this._inJobs=new Map,this._invokeQueue=new g((e=>this._onInvokeMessage(e))),this._client=t.client,this._onMessage=this._onMessage.bind(this),this._channel=t.channel,this._schedule=t.schedule,this._port.addEventListener("message",this._onMessage),this._port.start()}static connect(e){const t=new MessageChannel;let r;r="function"==typeof e?new e:"default"in e&&"function"==typeof e.default?new e.default:e;const s=new b(t.port1,{channel:t,client:r});return"object"==typeof r&&"remoteClient"in r&&(r.remoteClient=s),b.clients.set(s,r),t.port2}static loadWorker(e){const t=c[e];return t?t():Promise.resolve(null)}close(){this._post({type:p}),this._close()}isBusy(){return this._outJobs.size>0}invoke(e,t,r){const s=r&&r.signal,i=r&&r.transferList;if(!this._port)return Promise.reject(new o.Z("worker:port-closed",`Cannot call invoke('${e}'), port is closed`,{methodName:e,data:t}));const n=(0,l.jt)();return new Promise(((r,o)=>{const l=(0,a.$F)(s,(()=>{var e;const t=this._outJobs.get(n);t&&(this._outJobs.delete(n),null==(e=t.abortHandle)||e.remove(),this._post({type:d,jobId:n}),o((0,a.zE)()))})),u={resolve:r,reject:o,abortHandle:l,debugInfo:e};this._outJobs.set(n,u),this._post({type:h,jobId:n,methodName:e,abortable:null!=s},t,i)}))}on(e,t){const r=new MessageChannel;function s(e){t(e.data)}return this._port.postMessage({type:l.Cs.ON,eventType:e,port:r.port2},[r.port2]),r.port1.addEventListener("message",s),r.port1.start(),{remove(){r.port1.postMessage({type:l.Cs.CLOSE}),r.port1.close(),r.port1.removeEventListener("message",s)}}}openPort(){const e=new MessageChannel;return this._post({type:m,port:e.port2}),e.port1}_close(){this._channel&&(this._channel=null),this._port.removeEventListener("message",this._onMessage),this._port.close(),this._outJobs.forEach((e=>{var t;null==(t=e.abortHandle)||t.remove(),e.reject((0,a.zE)(`Worker closing, aborting job calling '${e.debugInfo}'`))})),this._inJobs.clear(),this._outJobs.clear(),this._invokeQueue.clear(),this._port=this._client=this._schedule=null}_onMessage(e){(0,n.pC)(this._schedule)?this._schedule((()=>this._processMessage(e))):this._processMessage(e)}_processMessage(e){const t=(0,l.QM)(e);if(t)switch(t.type){case y:this._onResponseMessage(t);break;case h:this._invokeQueue.push(t);break;case d:this._onAbortMessage(t);break;case p:this._onCloseMessage();break;case m:this._onOpenPortMessage(t);break;case f:this._onOnMessage(t)}}_onAbortMessage(e){const t=this._inJobs,r=e.jobId,s=t.get(r);this._invokeQueue.push(e),s&&(s.controller&&s.controller.abort(),t.delete(r))}_onCloseMessage(){const e=this._client;this._close(),e&&"destroy"in e&&b.clients.get(this)===e&&e.destroy(),b.clients.delete(this),e&&e.remoteClient&&(e.remoteClient=null)}_onInvokeMessage(e){const{methodName:t,jobId:r,data:s,abortable:o}=e,i=o?new AbortController:null,n=this._inJobs;let u,c=this._client,p=c[t];try{if(!p&&t&&-1!==t.indexOf(".")){const e=t.split(".");for(let t=0;t<e.length-1;t++)c=c[e[t]],p=c[e[t+1]]}if("function"!=typeof p)throw new TypeError(`${t} is not a function`);u=p.call(c,s,{client:this,signal:i?i.signal:null})}catch(e){return void this._post({type:y,jobId:r,error:(0,l.AB)(e)})}(0,a.y8)(u)?(n.set(r,{controller:i,promise:u}),u.then((e=>{n.has(r)&&(n.delete(r),this._post({type:y,jobId:r},e))}),(e=>{n.has(r)&&(n.delete(r),(0,a.D_)(e)||this._post({type:y,jobId:r,error:(0,l.AB)(e||{message:`Error encountered at method ${t}`})}))}))):this._post({type:y,jobId:r},u)}_onOpenPortMessage(e){new b(e.port,{client:this._client})}_onOnMessage(e){const{port:t}=e,r=this._client.on(e.eventType,(e=>{t.postMessage(e)})),s=(0,i.on)(e.port,"message",(e=>{(0,l.QM)(e).type===l.Cs.CLOSE&&(s.remove(),r.remove(),t.close())}))}_onResponseMessage(e){var t;const{jobId:r,error:s,data:i}=e,n=this._outJobs;if(!n.has(r))return;const a=n.get(r);n.delete(r),null==(t=a.abortHandle)||t.remove(),s?a.reject(o.Z.fromJSON(JSON.parse(s))):a.resolve(i)}_post(e,t,r){return(0,l.oi)(this._port,e,t,r)}}b.kernelInfo={revision:u.$,version:s.i8,buildDate:u.r},b.clients=new Map},94362:(e,t,r)=>{r.d(t,{Cs:()=>s,jt:()=>a,oi:()=>u,QM:()=>c,AB:()=>l});var s,o,i=r(80442);(o=s||(s={}))[o.HANDSHAKE=0]="HANDSHAKE",o[o.OPEN=1]="OPEN",o[o.OPENED=2]="OPENED",o[o.RESPONSE=3]="RESPONSE",o[o.INVOKE=4]="INVOKE",o[o.ABORT=5]="ABORT",o[o.CLOSE=6]="CLOSE",o[o.OPEN_PORT=7]="OPEN_PORT",o[o.ON=8]="ON";let n=0;function a(){return n++}function l(e){return e?"string"==typeof e?JSON.stringify({name:"message",message:e}):e.toJSON?JSON.stringify(e):JSON.stringify({name:e.name,message:e.message,details:e.details||{stack:e.stack}}):null}function u(e,t,r,o){if(t.type===s.OPEN_PORT)return void e.postMessage(t,[t.port]);if(t.type!==s.INVOKE&&t.type!==s.RESPONSE)return void e.postMessage(t);let i;!function(e){return e&&"object"==typeof e&&("result"in e||"transferList"in e)}(r)?(i=p(o),t.data=r):(i=p(r.transferList),t.data=r.result),i?e.postMessage(t,i):e.postMessage(t)}function c(e){if(!e)return null;const t=e.data;return t?"string"==typeof t?JSON.parse(t):t:null}function p(e){if(!e||!e.length)return null;if((0,i.Z)("esri-workers-arraybuffer-transfer"))return e;const t=e.filter((e=>!function(e){return e instanceof ArrayBuffer||e&&e.constructor&&"ArrayBuffer"===e.constructor.name}(e)));return t.length?t:null}},69285:(e,t,r)=>{r.d(t,{k:()=>n});var s=r(70586),o=r(67900),i=r(8744);function n(e,t,r){if((0,s.Wi)(t)||(0,s.Wi)(r)||r.vcsWkid||(0,i.fS)(t,r))return null;const n=(0,o._R)(t)/(0,o._R)(r);if(1===n)return null;switch(e){case"point":case"esriGeometryPoint":return e=>function(e,t){e&&null!=e.z&&(e.z*=t)}(e,n);case"polyline":case"esriGeometryPolyline":return e=>function(e,t){if(e)for(const r of e.paths)for(const e of r)e.length>2&&(e[2]*=t)}(e,n);case"polygon":case"esriGeometryPolygon":return e=>function(e,t){if(e)for(const r of e.rings)for(const e of r)e.length>2&&(e[2]*=t)}(e,n);case"multipoint":case"esriGeometryMultipoint":return e=>function(e,t){if(e)for(const r of e.points)r.length>2&&(r[2]*=t)}(e,n);case"extent":case"esriGeometryExtent":return e=>function(e,t){e&&null!=e.zmin&&null!=e.zmax&&(e.zmin*=t,e.zmax*=t)}(e,n);default:return null}}},70082:(e,t,r)=>{r.d(t,{Z:()=>c});var s=r(43697),o=r(35454),i=r(10736),n=r(5600),a=(r(67676),r(80442),r(75215),r(52011));const l=new o.Xn({esriFeatureEditToolAutoCompletePolygon:"auto-complete-polygon",esriFeatureEditToolCircle:"circle",esriFeatureEditToolEllipse:"ellipse",esriFeatureEditToolFreehand:"freehand",esriFeatureEditToolLine:"line",esriFeatureEditToolNone:"none",esriFeatureEditToolPoint:"point",esriFeatureEditToolPolygon:"polygon",esriFeatureEditToolRectangle:"rectangle",esriFeatureEditToolArrow:"arrow",esriFeatureEditToolTriangle:"triangle",esriFeatureEditToolLeftArrow:"left-arrow",esriFeatureEditToolRightArrow:"right-arrow",esriFeatureEditToolUpArrow:"up-arrow",esriFeatureEditToolDownArrow:"down-arrow"});let u=class extends i.wq{constructor(e){super(e),this.name=null,this.description=null,this.drawingTool=null,this.prototype=null,this.thumbnail=null}};(0,s._)([(0,n.Cb)({json:{write:!0}})],u.prototype,"name",void 0),(0,s._)([(0,n.Cb)({json:{write:!0}})],u.prototype,"description",void 0),(0,s._)([(0,n.Cb)({json:{read:l.read,write:l.write}})],u.prototype,"drawingTool",void 0),(0,s._)([(0,n.Cb)({json:{write:!0}})],u.prototype,"prototype",void 0),(0,s._)([(0,n.Cb)({json:{write:!0}})],u.prototype,"thumbnail",void 0),u=(0,s._)([(0,a.j)("esri.layers.support.FeatureTemplate")],u);const c=u},16451:(e,t,r)=>{r.d(t,{Z:()=>d});var s=r(43697),o=r(10736),i=r(5600),n=(r(67676),r(80442),r(75215),r(71715)),a=r(52011),l=r(30556),u=r(72729),c=r(70082);let p=class extends o.wq{constructor(e){super(e),this.id=null,this.name=null,this.domains=null,this.templates=null}readDomains(e){const t={};for(const r of Object.keys(e))t[r]=(0,u.im)(e[r]);return t}writeDomains(e,t){const r={};for(const t of Object.keys(e)){var s;e[t]&&(r[t]=null==(s=e[t])?void 0:s.toJSON())}t.domains=r}};(0,s._)([(0,i.Cb)({json:{write:!0}})],p.prototype,"id",void 0),(0,s._)([(0,i.Cb)({json:{write:!0}})],p.prototype,"name",void 0),(0,s._)([(0,i.Cb)({json:{write:!0}})],p.prototype,"domains",void 0),(0,s._)([(0,n.r)("domains")],p.prototype,"readDomains",null),(0,s._)([(0,l.c)("domains")],p.prototype,"writeDomains",null),(0,s._)([(0,i.Cb)({type:[c.Z],json:{write:!0}})],p.prototype,"templates",void 0),p=(0,s._)([(0,a.j)("esri.layers.support.FeatureType")],p);const d=p},14147:(e,t,r)=>{r.d(t,{W:()=>c});var s=r(40330),o=r(3172),i=r(70586),n=r(95330),a=r(67284),l=r(65587),u=r(15235);class c{constructor(e,t,r,s){this.parsedUrl=e,this.portalItem=t,this.apiKey=r,this.signal=s,this.rootDocument=null;const o=this.parsedUrl.path.match(/^(.*)\/SceneServer\/layers\/([\d]*)\/?$/i);o&&(this.urlParts={root:o[1],layerId:parseInt(o[2],10)})}async fetch(){var e;if(!this.urlParts)return null;const t=null!=(e=this.portalItem)?e:await this.portalItemFromServiceItemId();if((0,i.Wi)(t))return this.loadFromUrl();const r=await this.findAndLoadRelatedPortalItem(t);return(0,i.Wi)(r)?null:this.loadFeatureLayerFromPortalItem(r)}async fetchPortalItem(){var e;if(!this.urlParts)return null;const t=null!=(e=this.portalItem)?e:await this.portalItemFromServiceItemId();return(0,i.Wi)(t)?null:this.findAndLoadRelatedPortalItem(t)}async fetchRootDocument(){if((0,i.pC)(this.rootDocument))return this.rootDocument;if((0,i.Wi)(this.urlParts))return this.rootDocument={},{};const e={query:{f:"json",token:this.apiKey},responseType:"json",signal:this.signal},t=`${this.urlParts.root}/SceneServer`;try{const r=await(0,o.default)(t,e);this.rootDocument=r.data}catch{this.rootDocument={}}return this.rootDocument}async fetchServiceOwningPortalUrl(){var e;const t=null==(e=s.id)?void 0:e.findServerInfo(this.parsedUrl.path);if(null!=t&&t.owningSystemUrl)return t.owningSystemUrl;const r=this.parsedUrl.path.replace(/(.*\/rest)\/.*/i,"$1")+"/info";try{const e=(await(0,o.default)(r,{query:{f:"json"},responseType:"json",signal:this.signal})).data.owningSystemUrl;if(e)return e}catch(e){(0,n.r9)(e)}return null}async findAndLoadRelatedPortalItem(e){try{return(await e.fetchRelatedItems({relationshipType:"Service2Service",direction:"reverse"},{signal:this.signal})).find((e=>"Feature Service"===e.type))||null}catch(e){return(0,n.r9)(e),null}}async loadFeatureLayerFromPortalItem(e){await e.load({signal:this.signal});const t=await this.findMatchingAssociatedSublayerUrl(e.url);return new a.default({url:t,portalItem:e}).load({signal:this.signal})}async loadFromUrl(){const e=await this.findMatchingAssociatedSublayerUrl(`${this.urlParts.root}/FeatureServer`);return new a.default({url:e}).load({signal:this.signal})}async findMatchingAssociatedSublayerUrl(e){const t=e.replace(/^(.*FeatureServer)(\/[\d]*\/?)?$/i,"$1"),r={query:{f:"json"},responseType:"json",authMode:"no-prompt",signal:this.signal},s=this.urlParts.layerId,i=this.fetchRootDocument(),n=(0,o.default)(t,r),[a,l]=await Promise.all([n,i]),u=l&&l.layers,c=a.data&&a.data.layers;if(!Array.isArray(c))throw new Error("expected layers array");if(Array.isArray(u)){for(let e=0;e<Math.min(u.length,c.length);e++)if(u[e].id===s)return`${t}/${c[e].id}`}else if(s<c.length)return`${t}/${c[s].id}`;throw new Error("could not find matching associated sublayer")}async portalItemFromServiceItemId(){const e=(await this.fetchRootDocument()).serviceItemId;if(!e)return null;const t=new u.default({id:e,apiKey:this.apiKey}),r=await this.fetchServiceOwningPortalUrl();(0,i.pC)(r)&&(t.portal=new l.Z({url:r}));try{return t.load({signal:this.signal})}catch(e){return(0,n.r9)(e),null}}}},1231:(e,t,r)=>{r.d(t,{Z:()=>f});var s,o=r(43697),i=r(35454),n=r(10736),a=r(5600),l=(r(67676),r(80442),r(75215)),u=r(36030),c=r(71715),p=r(52011),d=r(72729),h=r(86719);const y=new i.Xn({binary:"binary",coordinate:"coordinate",countOrAmount:"count-or-amount",dateAndTime:"date-and-time",description:"description",locationOrPlaceName:"location-or-place-name",measurement:"measurement",nameOrTitle:"name-or-title",none:"none",orderedOrRanked:"ordered-or-ranked",percentageOrRatio:"percentage-or-ratio",typeOrCategory:"type-or-category",uniqueIdentifier:"unique-identifier"});let m=s=class extends n.wq{constructor(e){super(e),this.alias=null,this.defaultValue=void 0,this.description=null,this.domain=null,this.editable=!0,this.length=-1,this.name=null,this.nullable=!0,this.type=null,this.valueType=null}readDescription(e,{description:t}){let r;try{r=JSON.parse(t)}catch(e){}return r?r.value:null}readValueType(e,{description:t}){let r;try{r=JSON.parse(t)}catch(e){}return r?y.fromJSON(r.fieldValueType):null}clone(){return new s({alias:this.alias,defaultValue:this.defaultValue,description:this.description,domain:this.domain&&this.domain.clone()||null,editable:this.editable,length:this.length,name:this.name,nullable:this.nullable,type:this.type,valueType:this.valueType})}};(0,o._)([(0,a.Cb)({type:String,json:{write:!0}})],m.prototype,"alias",void 0),(0,o._)([(0,a.Cb)({type:[String,Number],json:{write:{allowNull:!0}}})],m.prototype,"defaultValue",void 0),(0,o._)([(0,a.Cb)()],m.prototype,"description",void 0),(0,o._)([(0,c.r)("description")],m.prototype,"readDescription",null),(0,o._)([(0,a.Cb)({types:d.V5,json:{read:{reader:d.im},write:!0}})],m.prototype,"domain",void 0),(0,o._)([(0,a.Cb)({type:Boolean,json:{write:!0}})],m.prototype,"editable",void 0),(0,o._)([(0,a.Cb)({type:l.z8,json:{write:!0}})],m.prototype,"length",void 0),(0,o._)([(0,a.Cb)({type:String,json:{write:!0}})],m.prototype,"name",void 0),(0,o._)([(0,a.Cb)({type:Boolean,json:{write:!0}})],m.prototype,"nullable",void 0),(0,o._)([(0,u.J)(h.v)],m.prototype,"type",void 0),(0,o._)([(0,a.Cb)()],m.prototype,"valueType",void 0),(0,o._)([(0,c.r)("valueType",["description"])],m.prototype,"readValueType",null),m=s=(0,o._)([(0,p.j)("esri.layers.support.Field")],m);const f=m},51161:(e,t,r)=>{r.d(t,{H3:()=>g,QI:()=>p,U4:()=>l,Yh:()=>h});var s=r(43697),o=r(10736),i=r(5600),n=(r(67676),r(80442),r(75215),r(36030)),a=r(52011);let l=class extends o.wq{constructor(){super(...arguments),this.nodesPerPage=null,this.rootIndex=0,this.lodSelectionMetricType=null}};(0,s._)([(0,i.Cb)({type:Number})],l.prototype,"nodesPerPage",void 0),(0,s._)([(0,i.Cb)({type:Number})],l.prototype,"rootIndex",void 0),(0,s._)([(0,i.Cb)({type:String})],l.prototype,"lodSelectionMetricType",void 0),l=(0,s._)([(0,a.j)("esri.layer.support.I3SNodePageDefinition")],l);let u=class extends o.wq{constructor(){super(...arguments),this.factor=1}};(0,s._)([(0,i.Cb)({type:Number,json:{read:{source:"textureSetDefinitionId"}}})],u.prototype,"id",void 0),(0,s._)([(0,i.Cb)({type:Number})],u.prototype,"factor",void 0),u=(0,s._)([(0,a.j)("esri.layer.support.I3SMaterialTexture")],u);let c=class extends o.wq{constructor(){super(...arguments),this.baseColorFactor=[1,1,1,1],this.baseColorTexture=null,this.metallicRoughnessTexture=null,this.metallicFactor=1,this.roughnessFactor=1}};(0,s._)([(0,i.Cb)({type:[Number]})],c.prototype,"baseColorFactor",void 0),(0,s._)([(0,i.Cb)({type:u})],c.prototype,"baseColorTexture",void 0),(0,s._)([(0,i.Cb)({type:u})],c.prototype,"metallicRoughnessTexture",void 0),(0,s._)([(0,i.Cb)({type:Number})],c.prototype,"metallicFactor",void 0),(0,s._)([(0,i.Cb)({type:Number})],c.prototype,"roughnessFactor",void 0),c=(0,s._)([(0,a.j)("esri.layer.support.I3SMaterialPBRMetallicRoughness")],c);let p=class extends o.wq{constructor(){super(...arguments),this.alphaMode="opaque",this.alphaCutoff=.25,this.doubleSided=!1,this.cullFace="none",this.normalTexture=null,this.occlusionTexture=null,this.emissiveTexture=null,this.emissiveFactor=null,this.pbrMetallicRoughness=null}};(0,s._)([(0,n.J)({opaque:"opaque",mask:"mask",blend:"blend"})],p.prototype,"alphaMode",void 0),(0,s._)([(0,i.Cb)({type:Number})],p.prototype,"alphaCutoff",void 0),(0,s._)([(0,i.Cb)({type:Boolean})],p.prototype,"doubleSided",void 0),(0,s._)([(0,n.J)({none:"none",back:"back",front:"front"})],p.prototype,"cullFace",void 0),(0,s._)([(0,i.Cb)({type:u})],p.prototype,"normalTexture",void 0),(0,s._)([(0,i.Cb)({type:u})],p.prototype,"occlusionTexture",void 0),(0,s._)([(0,i.Cb)({type:u})],p.prototype,"emissiveTexture",void 0),(0,s._)([(0,i.Cb)({type:[Number]})],p.prototype,"emissiveFactor",void 0),(0,s._)([(0,i.Cb)({type:c})],p.prototype,"pbrMetallicRoughness",void 0),p=(0,s._)([(0,a.j)("esri.layer.support.I3SMaterialDefinition")],p);let d=class extends o.wq{};(0,s._)([(0,i.Cb)({type:String,json:{read:{source:["name","index"],reader:(e,t)=>null!=e?e:`${t.index}`}}})],d.prototype,"name",void 0),(0,s._)([(0,n.J)({jpg:"jpg",png:"png",dds:"dds","ktx-etc2":"ktx-etc2",ktx2:"ktx2",basis:"basis"})],d.prototype,"format",void 0),d=(0,s._)([(0,a.j)("esri.layer.support.I3STextureFormat")],d);let h=class extends o.wq{constructor(){super(...arguments),this.atlas=!1}};(0,s._)([(0,i.Cb)({type:[d]})],h.prototype,"formats",void 0),(0,s._)([(0,i.Cb)({type:Boolean})],h.prototype,"atlas",void 0),h=(0,s._)([(0,a.j)("esri.layer.support.I3STextureSetDefinition")],h);let y=class extends o.wq{};(0,s._)([(0,n.J)({Float32:"Float32",UInt64:"UInt64",UInt32:"UInt32",UInt16:"UInt16",UInt8:"UInt8"})],y.prototype,"type",void 0),(0,s._)([(0,i.Cb)({type:Number})],y.prototype,"component",void 0),y=(0,s._)([(0,a.j)("esri.layer.support.I3SGeometryAttribute")],y);let m=class extends o.wq{};(0,s._)([(0,n.J)({draco:"draco"})],m.prototype,"encoding",void 0),(0,s._)([(0,i.Cb)({type:[String]})],m.prototype,"attributes",void 0),m=(0,s._)([(0,a.j)("esri.layer.support.I3SGeometryCompressedAttributes")],m);let f=class extends o.wq{constructor(){super(...arguments),this.offset=0}};(0,s._)([(0,i.Cb)({type:Number})],f.prototype,"offset",void 0),(0,s._)([(0,i.Cb)({type:y})],f.prototype,"position",void 0),(0,s._)([(0,i.Cb)({type:y})],f.prototype,"normal",void 0),(0,s._)([(0,i.Cb)({type:y})],f.prototype,"uv0",void 0),(0,s._)([(0,i.Cb)({type:y})],f.prototype,"color",void 0),(0,s._)([(0,i.Cb)({type:y})],f.prototype,"uvRegion",void 0),(0,s._)([(0,i.Cb)({type:y})],f.prototype,"featureId",void 0),(0,s._)([(0,i.Cb)({type:y})],f.prototype,"faceRange",void 0),(0,s._)([(0,i.Cb)({type:m})],f.prototype,"compressedAttributes",void 0),f=(0,s._)([(0,a.j)("esri.layer.support.I3SGeometryBuffer")],f);let g=class extends o.wq{};(0,s._)([(0,n.J)({triangle:"triangle"})],g.prototype,"topology",void 0),(0,s._)([(0,i.Cb)()],g.prototype,"geometryBuffers",void 0),g=(0,s._)([(0,a.j)("esri.layer.support.I3SGeometryDefinition")],g)},56765:(e,t,r)=>{r.d(t,{Z:()=>c});var s,o=r(43697),i=r(81049),n=r(10736),a=r(5600),l=(r(67676),r(80442),r(75215),r(52011));let u=s=class extends n.wq{constructor(e){super(e),this.floorField=null,this.viewAllMode=!1,this.viewAllLevelIds=new i.Z}clone(){return new s({floorField:this.floorField,viewAllMode:this.viewAllMode,viewAllLevelIds:this.viewAllLevelIds})}};(0,o._)([(0,a.Cb)({type:String,json:{write:!0}})],u.prototype,"floorField",void 0),(0,o._)([(0,a.Cb)({json:{read:!1,write:!1}})],u.prototype,"viewAllMode",void 0),(0,o._)([(0,a.Cb)({json:{read:!1,write:!1}})],u.prototype,"viewAllLevelIds",void 0),u=s=(0,o._)([(0,l.j)("esri.layers.support.LayerFloorInfo")],u);const c=u},15506:(e,t,r)=>{r.d(t,{C:()=>s});const s={attachment:{supportsContentType:!1,supportsExifInfo:!1,supportsKeywords:!1,supportsName:!1,supportsSize:!1},data:{isVersioned:!1,supportsAttachment:!1,supportsM:!1,supportsZ:!1},editing:{supportsDeleteByAnonymous:!1,supportsDeleteByOthers:!1,supportsGeometryUpdate:!1,supportsGlobalId:!1,supportsReturnServiceEditsInSourceSpatialReference:!1,supportsRollbackOnFailure:!1,supportsUpdateByAnonymous:!1,supportsUpdateByOthers:!1,supportsUpdateWithoutM:!1,supportsUploadWithItemId:!1},metadata:{supportsAdvancedFieldProperties:!1},operations:{supportsCalculate:!1,supportsTruncate:!1,supportsValidateSql:!1,supportsAdd:!1,supportsDelete:!1,supportsEditing:!1,supportsChangeTracking:!1,supportsQuery:!1,supportsQueryAttachments:!1,supportsResizeAttachments:!1,supportsSync:!1,supportsUpdate:!1,supportsExceedsLimitStatistics:!1},queryRelated:{supportsCount:!1,supportsOrderBy:!1,supportsPagination:!1},query:{maxRecordCount:0,maxRecordCountFactor:0,standardMaxRecordCount:0,supportsCacheHint:!1,supportsCentroid:!1,supportsDisjointSpatialRelationship:!1,supportsDistance:!1,supportsDistinct:!1,supportsExtent:!1,supportsFormatPBF:!1,supportsGeometryProperties:!1,supportsHavingClause:!1,supportsHistoricMoment:!1,supportsMaxRecordCountFactor:!1,supportsOrderBy:!1,supportsPagination:!1,supportsPercentileStatistics:!1,supportsQuantization:!1,supportsQuantizationEditMode:!1,supportsQueryByOthers:!1,supportsQueryGeometry:!1,supportsResultType:!1,supportsSqlExpression:!1,supportsStandardizedQueriesOnly:!1,supportsTopFeaturesQuery:!1,supportsStatistics:!1,tileMaxRecordCount:0}}},72729:(e,t,r)=>{r.d(t,{im:()=>x,V5:()=>P}),r(80442);var s,o=r(43697),i=r(22974),n=r(5600),a=(r(75215),r(36030)),l=r(52011),u=r(10736);r(67676);let c=s=class extends u.wq{constructor(e){super(e),this.name=null,this.code=null}clone(){return new s({name:this.name,code:this.code})}};(0,o._)([(0,n.Cb)({type:String,json:{write:!0}})],c.prototype,"name",void 0),(0,o._)([(0,n.Cb)({type:[String,Number],json:{write:!0}})],c.prototype,"code",void 0),c=s=(0,o._)([(0,l.j)("esri.layers.support.CodedValue")],c);const p=c,d=new(r(35454).Xn)({inherited:"inherited",codedValue:"coded-value",range:"range"});let h=class extends u.wq{constructor(e){super(e),this.name=null,this.type=null}};(0,o._)([(0,n.Cb)({type:String,json:{write:!0}})],h.prototype,"name",void 0),(0,o._)([(0,a.J)(d)],h.prototype,"type",void 0),h=(0,o._)([(0,l.j)("esri.layers.support.Domain")],h);const y=h;var m;let f=m=class extends y{constructor(e){super(e),this.codedValues=null,this.type="coded-value"}getName(e){let t=null;if(this.codedValues){const r=String(e);this.codedValues.some((e=>(String(e.code)===r&&(t=e.name),!!t)))}return t}clone(){return new m({codedValues:(0,i.d9)(this.codedValues),name:this.name})}};(0,o._)([(0,n.Cb)({type:[p],json:{write:!0}})],f.prototype,"codedValues",void 0),(0,o._)([(0,a.J)({codedValue:"coded-value"})],f.prototype,"type",void 0),f=m=(0,o._)([(0,l.j)("esri.layers.support.CodedValueDomain")],f);const g=f;var b;r(92604),r(37697);let v=b=class extends y{constructor(e){super(e),this.type="inherited"}clone(){return new b}};(0,o._)([(0,a.J)({inherited:"inherited"})],v.prototype,"type",void 0),v=b=(0,o._)([(0,l.j)("esri.layers.support.InheritedDomain")],v);const _=v;var w;let S=w=class extends y{constructor(e){super(e),this.maxValue=null,this.minValue=null,this.type="range"}clone(){return new w({maxValue:this.maxValue,minValue:this.minValue,name:this.name})}};(0,o._)([(0,n.Cb)({type:Number,json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range&&t.range[1]},write:{enabled:!1,overridePolicy(){return{enabled:null!=this.maxValue&&null==this.minValue}},target:"range",writer(e,t,r){t[r]=[this.minValue||0,e]}}}})],S.prototype,"maxValue",void 0),(0,o._)([(0,n.Cb)({type:Number,json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range&&t.range[0]},write:{target:"range",writer(e,t,r){t[r]=[e,this.maxValue||0]}}}})],S.prototype,"minValue",void 0),(0,o._)([(0,a.J)({range:"range"})],S.prototype,"type",void 0),S=w=(0,o._)([(0,l.j)("esri.layers.support.RangeDomain")],S);const C=S,P={key:"type",base:y,typeMap:{range:S,"coded-value":g,inherited:_}};function x(e){if(!e||!e.type)return null;switch(e.type){case"range":return C.fromJSON(e);case"codedValue":return g.fromJSON(e);case"inherited":return _.fromJSON(e)}return null}},86719:(e,t,r)=>{r.d(t,{v:()=>s});const s=new(r(35454).Xn)({esriFieldTypeSmallInteger:"small-integer",esriFieldTypeInteger:"integer",esriFieldTypeSingle:"single",esriFieldTypeDouble:"double",esriFieldTypeLong:"long",esriFieldTypeString:"string",esriFieldTypeDate:"date",esriFieldTypeOID:"oid",esriFieldTypeGeometry:"geometry",esriFieldTypeBlob:"blob",esriFieldTypeRaster:"raster",esriFieldTypeGUID:"guid",esriFieldTypeGlobalID:"global-id",esriFieldTypeXML:"xml"})},51706:(e,t,r)=>{function s(e){return e&&"esri.renderers.visualVariables.SizeVariable"===e.declaredClass}function o(e){return null!=e&&!isNaN(e)&&isFinite(e)}function i(e){return e.valueExpression?"expression":e.field&&"string"==typeof e.field?"field":"unknown"}function n(e,t){const r=t||i(e),s=e.valueUnit||"unknown";return"unknown"===r?"constant":e.stops?"stops":null!=e.minSize&&null!=e.maxSize&&null!=e.minDataValue&&null!=e.maxDataValue?"clamped-linear":"unknown"===s?null!=e.minSize&&null!=e.minDataValue?e.minSize&&e.minDataValue?"proportional":"additive":"identity":"real-world-size"}r.d(t,{PS:()=>i,QW:()=>n,iY:()=>s,qh:()=>o})},28101:(e,t,r)=>{r.d(t,{PR:()=>S,Lq:()=>y,Km:()=>m,cM:()=>f,ap:()=>g,V3:()=>_,B3:()=>h});var s=r(22303),o=r(38171),i=r(74085),n=r(92604),a=r(70586),l=r(99282),u=r(51706);const c=n.Z.getLogger("esri.renderers.visualVariables.support.visualVariableUtils"),p=new o.Z,d=Math.PI,h=/^\s*(return\s+)?\$view\.scale\s*(;)?\s*$/i;function y(e,t,r){const o="visualVariables"in e&&e.visualVariables?e.visualVariables.filter((e=>"color"===e.type))[0]:e;if(!o)return;if("esri.renderers.visualVariables.ColorVariable"!==o.declaredClass)return void c.warn("The visualVariable should be an instance of esri.renderers.visualVariables.ColorVariable");const i="number"==typeof t,n=i?null:t,l=n&&n.attributes;let u=i?t:null;const p=o.field,{ipData:d,hasExpression:h}=o.cache;let y=o.cache.compiledFunc;if(!p&&!h){const e=o.stops;return e&&e[0]&&e[0].color}if("number"!=typeof u)if(h){if(!(0,a.pC)(r)||!(0,a.pC)(r.arcade))return void c.error("Use of arcade expressions requires an arcade context");const e={viewingMode:r.viewingMode,scale:r.scale,spatialReference:r.spatialReference},t=r.arcade.arcadeUtils,s=t.getViewInfo(e),i=t.createExecContext(n,s);if(!y){const e=t.createSyntaxTree(o.valueExpression);y=t.createFunction(e),o.cache.compiledFunc=y}u=t.executeFunction(y,i)}else l&&(u=l[p]);const m=o.normalizationField,f=l?parseFloat(l[m]):void 0;if(null!=u&&(!m||i||!isNaN(f)&&0!==f)){isNaN(f)||i||(u/=f);const e=w(u,d);if(e){const t=e[0],i=e[1],n=t===i?o.stops[t].color:s.Z.blendColors(o.stops[t].color,o.stops[i].color,e[2],(0,a.pC)(r)?r.color:void 0);return new s.Z(n)}}}function m(e,t,r){const s="visualVariables"in e&&e.visualVariables?e.visualVariables.filter((e=>"opacity"===e.type))[0]:e;if(!s)return;if("esri.renderers.visualVariables.OpacityVariable"!==s.declaredClass)return void c.warn("The visualVariable should be an instance of esri.renderers.visualVariables.OpacityVariable");const o="number"==typeof t,i=o?null:t,n=i&&i.attributes;let l=o?t:null;const u=s.field,{ipData:p,hasExpression:d}=s.cache;let h=s.cache.compiledFunc;if(!u&&!d){const e=s.stops;return e&&e[0]&&e[0].opacity}if("number"!=typeof l)if(d){if((0,a.Wi)(r)||(0,a.Wi)(r.arcade))return void c.error("Use of arcade expressions requires an arcade context");const e={viewingMode:r.viewingMode,scale:r.scale,spatialReference:r.spatialReference},t=r.arcade.arcadeUtils,o=t.getViewInfo(e),n=t.createExecContext(i,o);if(!h){const e=t.createSyntaxTree(s.valueExpression);h=t.createFunction(e),s.cache.compiledFunc=h}l=t.executeFunction(h,n)}else n&&(l=n[u]);const y=s.normalizationField,m=n?parseFloat(n[y]):void 0;if(null!=l&&(!y||o||!isNaN(m)&&0!==m)){isNaN(m)||o||(l/=m);const e=w(l,p);if(e){const t=e[0],r=e[1];if(t===r)return s.stops[t].opacity;{const o=s.stops[t].opacity;return o+(s.stops[r].opacity-o)*e[2]}}}}function f(e,t,r){const s="visualVariables"in e&&e.visualVariables?e.visualVariables.filter((e=>"rotation"===e.type))[0]:e;if(!s)return;if("esri.renderers.visualVariables.RotationVariable"!==s.declaredClass)return void c.warn("The visualVariable should be an instance of esri.renderers.visualVariables.RotationVariable");const o=s.axis||"heading",i="heading"===o&&"arithmetic"===s.rotationType?90:0,n="heading"===o&&"arithmetic"===s.rotationType?-1:1,l="number"==typeof t?null:t,u=l&&l.attributes,p=s.field,{hasExpression:d}=s.cache;let h=s.cache.compiledFunc,y=0;if(!p&&!d)return y;if(d){if((0,a.Wi)(r)||(0,a.Wi)(r.arcade))return void c.error("Use of arcade expressions requires an arcade context");const e={viewingMode:r.viewingMode,scale:r.scale,spatialReference:r.spatialReference},t=r.arcade.arcadeUtils,o=t.getViewInfo(e),i=t.createExecContext(l,o);if(!h){const e=t.createSyntaxTree(s.valueExpression);h=t.createFunction(e),s.cache.compiledFunc=h}y=t.executeFunction(h,i)}else u&&(y=u[p]||0);return y="number"!=typeof y||isNaN(y)?null:i+n*y,y}function g(e,t,r){const s="visualVariables"in e&&e.visualVariables?e.visualVariables.filter((e=>"size"===e.type))[0]:e;if(!s)return;if("esri.renderers.visualVariables.SizeVariable"!==s.declaredClass)return void c.warn("The visualVariable should be an instance of esri.renderers.visualVariables.SizeVariable");const o=function(e,t,r,s,o){switch(t.transformationType){case"additive":return function(e,t,r,s){return e+(b(t.minSize,r,s)||t.minDataValue)}(e,t,r,s);case"constant":return function(e,t,r){const s=e.stops;let o=s&&s.length&&s[0].size;return null==o&&(o=e.minSize),b(o,t,r)}(t,r,s);case"clamped-linear":return function(e,t,r,s){const o=(e-t.minDataValue)/(t.maxDataValue-t.minDataValue),i=b(t.minSize,r,s),n=b(t.maxSize,r,s),l=(0,a.pC)(s)?s.shape:void 0;if(e<=t.minDataValue)return i;if(e>=t.maxDataValue)return n;if("area"===t.scaleBy&&l){const e="circle"===l,t=e?d*(i/2)**2:i*i,r=t+o*((e?d*(n/2)**2:n*n)-t);return e?2*Math.sqrt(r/d):Math.sqrt(r)}return i+o*(n-i)}(e,t,r,s);case"proportional":return function(e,t,r,s){const o=(0,a.pC)(s)?s.shape:void 0,i=e/t.minDataValue,n=b(t.minSize,r,s),l=b(t.maxSize,r,s);let u=null;return u="circle"===o?2*Math.sqrt(i*(n/2)**2):"square"===o||"diamond"===o||"image"===o?Math.sqrt(i*n**2):i*n,v(u,n,l)}(e,t,r,s);case"stops":return function(e,t,r,s,o){const[i,n,a]=w(e,o);if(i===n)return b(t.stops[i].size,r,s);{const e=b(t.stops[i].size,r,s);return e+(b(t.stops[n].size,r,s)-e)*a}}(e,t,r,s,o);case"real-world-size":return function(e,t,r,s){const o=((0,a.pC)(s)&&s.resolution?s.resolution:1)*l.a[t.valueUnit],i=b(t.minSize,r,s),n=b(t.maxSize,r,s),{valueRepresentation:u}=t;let c=null;return c="area"===u?2*Math.sqrt(e/d)/o:"radius"===u||"distance"===u?2*e/o:e/o,v(c,i,n)}(e,t,r,s);case"identity":return e;case"unknown":return null}}(function(e,t,r){const s="number"==typeof t,o=s?null:t,i=o&&o.attributes;let n=s?t:null;const{isScaleDriven:l}=e.cache;let p=e.cache.compiledFunc;if(l){const t=(0,a.pC)(r)?r.scale:void 0,s=(0,a.pC)(r)?r.view:void 0;n=null==t||"3d"===s?function(e){let t=null,r=null;const s=e.stops;return s?(t=s[0].value,r=s[s.length-1].value):(t=e.minDataValue||0,r=e.maxDataValue||0),(t+r)/2}(e):t}else if(!s)switch(e.inputValueType){case"expression":{if((0,a.Wi)(r)||(0,a.Wi)(r.arcade))return void c.error("Use of arcade expressions requires an arcade context");const t={viewingMode:r.viewingMode,scale:r.scale,spatialReference:r.spatialReference},s=r.arcade.arcadeUtils,i=s.getViewInfo(t),l=s.createExecContext(o,i);if(!p){const t=s.createSyntaxTree(e.valueExpression);p=s.createFunction(t),e.cache.compiledFunc=p}n=s.executeFunction(p,l);break}case"field":i&&(n=i[e.field]);break;case"unknown":n=null}if(!(0,u.qh)(n))return null;if(s||!e.normalizationField)return n;const d=i?parseFloat(i[e.normalizationField]):null;return(0,u.qh)(d)&&0!==d?n/d:null}(s,t,r),s,t,r,s.cache.ipData);return null==o||isNaN(o)?0:o}function b(e,t,r){return null==e?null:(0,u.iY)(e)?g(e,t,r):(0,u.qh)(e)?e:null}function v(e,t,r){return(0,u.qh)(r)&&e>r?r:(0,u.qh)(t)&&e<t?t:e}function _(e,t,r){const{isScaleDriven:s}=e.cache;if(!(s&&"3d"===r||t))return null;const o={scale:t,view:r};let i=b(e.minSize,p,o),n=b(e.maxSize,p,o);if(null!=i||null!=n){if(i>n){const e=n;n=i,i=e}return{minSize:i,maxSize:n}}}function w(e,t){if(!t)return;let r=0,s=t.length-1;return t.some(((t,o)=>e<t?(s=o,!0):(r=o,!1))),[r,s,(e-t[r])/(t[s]-t[r])]}function S(e,t,r){const s=["proportional","proportional","proportional"];for(const o of e){const e=o.useSymbolValue?"symbol-value":g(o,t,r);switch(o.axis){case"width":s[0]=e;break;case"depth":s[1]=e;break;case"height":s[2]=e;break;case"width-and-depth":s[0]=e,s[1]=e;break;case"all":case void 0:case null:s[0]=e,s[1]=e,s[2]=e;break;default:(0,i.Bg)(o.axis)}}return s}},28694:(e,t,r)=>{r.d(t,{p:()=>i});var s=r(70586),o=r(69285);function i(e,t,r){if(!r||!r.features||!r.hasZ)return;const i=(0,o.k)(r.geometryType,t,e.outSpatialReference);if(!(0,s.Wi)(i))for(const e of r.features)i(e.geometry)}},58333:(e,t,r)=>{r.d(t,{I4:()=>o,lF:()=>n,ET:()=>i,qP:()=>a,eG:()=>l,lj:()=>c,wW:()=>u});const s=[252,146,31,255],o={type:"esriSMS",style:"esriSMSCircle",size:6,color:s,outline:{type:"esriSLS",style:"esriSLSSolid",width:.75,color:[153,153,153,255]}},i={type:"esriSLS",style:"esriSLSSolid",width:.75,color:s},n={type:"esriSFS",style:"esriSFSSolid",color:[252,146,31,196],outline:{type:"esriSLS",style:"esriSLSSolid",width:.75,color:[255,255,255,191]}},a={type:"esriTS",color:[255,255,255,255],font:{family:"arial-unicode-ms",size:10,weight:"bold"},horizontalAlignment:"center",kerning:!0,haloColor:[0,0,0,255],haloSize:1,rotated:!1,text:"",xoffset:0,yoffset:0,angle:0},l={type:"esriSMS",style:"esriSMSCircle",color:[0,0,0,255],outline:null,size:10.5},u={type:"esriSLS",style:"esriSLSSolid",color:[0,0,0,255],width:1.5},c={type:"esriSFS",style:"esriSFSSolid",color:[0,0,0,255],outline:null}},89749:(e,t,r)=>{r.d(t,{t:()=>h});var s=r(43697),o=r(15923),i=r(61247),n=r(70586),a=r(17445),l=r(1654),u=r(43050),c=r(67723),p=r(5600),d=r(52011);let h=class extends o.Z{constructor(){super(...arguments),this.updating=!1,this.handleId=0,this.handles=new i.Z,this.scheduleHandleId=0,this.pendingPromises=new Set}destroy(){this.removeAll(),this.handles.destroy()}add(e,t,r,s=0){const o=0!=(1&s),i=++this.handleId;o||this.installSyncUpdatingWatch(e,t,i);const n=0!=(2&s)?(0,u.S1)(e,t,r,o):e.watch(t,r,o);return this.handles.add(n,i),{remove:()=>this.handles.remove(i)}}addOnCollectionPropertyChange(e,t,r,s=0){const o=0!=(2&s),i=++this.handleId;return this.handles.add([(0,u.on)(e,t,"after-changes",this.createSyncUpdatingCallback()),(0,u.on)(e,t,"change",r,o?e=>{r({added:e.items,removed:[],moved:[],target:e})}:void 0)],i),{remove:()=>{this.handles.remove(i)}}}addOnCollectionChange(e,t,r=0){const s=0!=(2&r),o=++this.handleId;return this.handles.add([e.on("after-changes",this.createSyncUpdatingCallback()),e.on("change",t)],o),s&&t({added:e.items,removed:[],moved:[],target:e}),{remove:()=>{this.handles.remove(o)}}}addPromise(e){if((0,n.Wi)(e))return e;const t=++this.handleId;this.handles.add({remove:()=>{this.pendingPromises.delete(e)&&(0!==this.pendingPromises.size||this.handles.has(y)||this._set("updating",!1))}},t),this.pendingPromises.add(e),this._set("updating",!0);const r=()=>this.handles.remove(t);return e.then(r,r),e}removeAll(){this.pendingPromises.clear(),this.handles.removeAll(),this._set("updating",!1)}installSyncUpdatingWatch(e,t,r){const s=this.createSyncUpdatingCallback(),o=(0,a.Ym)((()=>(0,c.$z)(e,t)),s,{sync:!0,equals:()=>!1});return this.handles.add(o,r),o}createSyncUpdatingCallback(){return()=>{this.handles.remove(y),++this.scheduleHandleId;const e=this.scheduleHandleId;this._get("updating")||this._set("updating",!0),this.handles.add((0,l.Os)((()=>{e===this.scheduleHandleId&&(this._set("updating",this.pendingPromises.size>0),this.handles.remove(y))})),y)}}};(0,s._)([(0,p.Cb)({readOnly:!0})],h.prototype,"updating",void 0),h=(0,s._)([(0,d.j)("esri.views.support.WatchUpdatingTracking")],h);const y=-42}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[8216],{38171:(e,t,r)=>{r.d(t,{Z:()=>f});var s,o=r(43697),i=r(66577),n=r(51773),a=r(78223),l=r(10736),u=r(22974),c=r(70586),p=r(99001),d=r(5600),h=(r(75215),r(52011)),y=r(33955);let m=s=class extends l.wq{constructor(...e){super(...e),this.isAggregate=!1,this.layer=null,this.popupTemplate=null,this.sourceLayer=null,Object.defineProperty(this,"uid",{value:(0,p.D)(),configurable:!0})}normalizeCtorArgs(e,t,r,s){return e&&!e.declaredClass?e:{geometry:e,symbol:t,attributes:r,popupTemplate:s}}set attributes(e){const t=this._get("attributes");t!==e&&(this._set("attributes",e),this._notifyLayer("attributes",t,e))}set geometry(e){const t=this._get("geometry");t!==e&&(this._set("geometry",e),this._notifyLayer("geometry",t,e))}set symbol(e){const t=this._get("symbol");t!==e&&(this._set("symbol",e),this._notifyLayer("symbol",t,e))}set visible(e){const t=this._get("visible");t!==e&&(this._set("visible",e),this._notifyLayer("visible",t,e))}getEffectivePopupTemplate(e=!1){if(this.popupTemplate)return this.popupTemplate;for(const t of[this.sourceLayer,this.layer])if(t){if("popupTemplate"in t&&t.popupTemplate)return t.popupTemplate;if(e&&"defaultPopupTemplate"in t&&(0,c.pC)(t.defaultPopupTemplate))return t.defaultPopupTemplate}return null}getAttribute(e){return this.attributes&&this.attributes[e]}setAttribute(e,t){if(this.attributes){const r=this.getAttribute(e);this.attributes[e]=t,this._notifyLayer("attributes",r,t,e)}else this.attributes={[e]:t},this._notifyLayer("attributes",void 0,t,e)}getObjectId(){return this.sourceLayer&&"objectIdField"in this.sourceLayer&&this.sourceLayer.objectIdField?this.getAttribute(this.sourceLayer.objectIdField):null}toJSON(){return{geometry:(0,c.pC)(this.geometry)?this.geometry.toJSON():null,symbol:(0,c.pC)(this.symbol)?this.symbol.toJSON():null,attributes:{...this.attributes},popupTemplate:this.popupTemplate&&this.popupTemplate.toJSON()}}clone(){return new s(this.cloneProperties())}notifyGeometryChanged(){this._notifyLayer("geometry",this.geometry,this.geometry)}cloneProperties(){return{attributes:(0,u.d9)(this.attributes),geometry:(0,u.d9)(this.geometry),layer:this.layer,popupTemplate:this.popupTemplate&&this.popupTemplate.clone(),sourceLayer:this.sourceLayer,symbol:(0,u.d9)(this.symbol),visible:this.visible}}_notifyLayer(e,t,r,s){if(!this.layer||!("graphicChanged"in this.layer))return;const o={graphic:this,property:e,oldValue:t,newValue:r};"attributes"===e&&(o.attributeName=s),this.layer.graphicChanged(o)}};(0,o._)([(0,d.Cb)({value:null})],m.prototype,"attributes",null),(0,o._)([(0,d.Cb)({value:null,types:i.qM,json:{read:y.im}})],m.prototype,"geometry",null),(0,o._)([(0,d.Cb)({type:Boolean})],m.prototype,"isAggregate",void 0),(0,o._)([(0,d.Cb)()],m.prototype,"layer",void 0),(0,o._)([(0,d.Cb)({type:n.Z})],m.prototype,"popupTemplate",void 0),(0,o._)([(0,d.Cb)()],m.prototype,"sourceLayer",void 0),(0,o._)([(0,d.Cb)({value:null,types:a.LB})],m.prototype,"symbol",null),(0,o._)([(0,d.Cb)({type:Boolean,value:!0})],m.prototype,"visible",null),m=s=(0,o._)([(0,h.j)("esri.Graphic")],m),(m||(m={})).generateUID=p.D;const f=m},99880:(e,t,r)=>{r.d(t,{V:()=>l});var s=r(68773),o=(r(3172),r(20102)),i=r(92604),n=r(17452);const a=i.Z.getLogger("esri.assets");function l(e){if(!s.Z.assetsPath)throw a.errorOnce("The API assets location needs to be set using config.assetsPath. More information: https://arcg.is/1OzLe50"),new o.Z("assets:path-not-set","config.assetsPath is not set");return(0,n.v_)(s.Z.assetsPath,e)}},3920:(e,t,r)=>{r.d(t,{r:()=>c,p:()=>u});var s=r(43697),o=r(15923),i=r(61247),n=r(5600),a=r(52011),l=r(89749);const u=e=>{let t=class extends e{destroy(){var e,t;this.destroyed||(null==(e=this._get("handles"))||e.destroy(),null==(t=this._get("updatingHandles"))||t.destroy())}get handles(){return this._get("handles")||new i.Z}get updatingHandles(){return this._get("updatingHandles")||new l.t}};return(0,s._)([(0,n.Cb)({readOnly:!0})],t.prototype,"handles",null),(0,s._)([(0,n.Cb)({readOnly:!0})],t.prototype,"updatingHandles",null),t=(0,s._)([(0,a.j)("esri.core.HandleOwner")],t),t};let c=class extends(u(o.Z)){};c=(0,s._)([(0,a.j)("esri.core.HandleOwner")],c)},36030:(e,t,r)=>{r.d(t,{J:()=>i});var s=r(35454),o=r(5600);function i(e,t={}){var r;const i=e instanceof s.Xn?e:new s.Xn(e,t),n={type:null==(r=null==t?void 0:t.ignoreUnknown)||r?i.apiValues:String,readOnly:null==t?void 0:t.readOnly,json:{type:i.jsonValues,read:(null==t||!t.readOnly)&&{reader:i.read},write:{writer:i.write}}};return void 0!==(null==t?void 0:t.default)&&(n.json.default=t.default),void 0!==(null==t?void 0:t.name)&&(n.json.name=t.name),(0,o.Cb)(n)}},74085:(e,t,r)=>{function s(e){}r.d(t,{Bg:()=>s}),r(80442)},43050:(e,t,r)=>{r.d(t,{S1:()=>n,on:()=>p,OY:()=>c,cm:()=>l,N1:()=>a,LR:()=>u,tH:()=>d});var s=r(91460),o=(r(22974),r(95330));const i=/\?(\.|$)/g;function n(e,t,r,s){const o=Array.isArray(t)?t:t.indexOf(",")>-1?t.split(","):[t],n=function(e,t,r,s){return e.watch(t,r,s)}(e,t,r,s);for(const t of o){const s=t.trim().replace(i,"$1"),o=e.get(s);r.call(e,o,o,s,e)}return n}function a(e,t,r,s){return d(e,t,h,r,s)}function l(e,t,r,s){return d(e,t,y,r,s)}function u(e,t,r,s){return d(e,t,m,r,s)}function c(e,t,r,s){return d(e,t,f,r,s)}function p(e,t,r,o,i,a,l){const u={};function c(t){const s=u[t];s&&(a&&a(s.target,t,e,r),s.handle.remove(),delete u[t])}const p=n(e,t,((t,n,a)=>{c(a),(0,s.vT)(t)&&(u[a]={handle:(0,s.on)(t,r,o),target:t},i&&i(t,a,e,r))}),l);return{remove(){p.remove();for(const e in u)c(e)}}}function d(e,t,r,s,i){const n="function"==typeof s?s:null,a="object"==typeof s?s:null;"boolean"==typeof s&&(i=s);let l,u=!1;function c(){l&&(l.remove(),l=null)}const p=(0,o.dD)();(0,o.fu)(a,(()=>{c(),p.reject((0,o.zE)())}));const d={then:p.promise.then.bind(p.promise),catch:p.promise.catch.bind(p.promise),remove:c};return Object.freeze(d),l=function(e,t,r,s,o){const i=e.watch(t,((t,o,i,n)=>{r&&!r(t)||null==s||s.call(e,t,o,i,n)}),o);if(Array.isArray(t))for(const o of t){const i=e.get(o);r&&r(i)&&(null==s||s.call(e,i,i,t,e))}else{const o=e.get(t);r&&r(o)&&(null==s||s.call(e,o,o,t,e))}return i}(e,t,r,((t,r,s,o)=>{u=!0,c(),n&&n.call(e,t,r,s,o),p.resolve({value:t,oldValue:r,propertyName:s,target:o})}),i),u&&c(),d}function h(e){return!!e}function y(e){return!e}function m(e){return!0===e}function f(e){return!1===e}},80903:(e,t,r)=>{r.d(t,{Z:()=>l});var s=r(50758),o=r(92604),i=r(95330),n=r(25045);const a=o.Z.getLogger("esri.core.workers.Connection");class l{constructor(){this._clients=new Array,this._clientPromises=new Array,this._clientIdx=0}destroy(){this.close()}get closed(){return!this._clients||!this._clients.length}open(e,t){return new Promise(((r,s)=>{let o=!0;const a=e=>{(0,i.k_)(t.signal),o&&(o=!1,e())};this._clients.length=e.length,this._clientPromises.length=e.length;for(let o=0;o<e.length;++o){const l=e[o];(0,i.y8)(l)?this._clientPromises[o]=l.then((e=>(this._clients[o]=new n.default(e,t),a(r),this._clients[o])),(()=>(a(s),null))):(this._clients[o]=new n.default(l,t),this._clientPromises[o]=Promise.resolve(this._clients[o]),a(r))}}))}broadcast(e,t,r){const s=new Array(this._clientPromises.length);for(let o=0;o<this._clientPromises.length;++o){const i=this._clientPromises[o];s[o]=i.then((s=>s.invoke(e,t,r)))}return s}close(){for(const e of this._clientPromises)e.then((e=>e.close()));this._clients.length=0,this._clientPromises.length=0}getAvailableClient(){let e;for(let t=0;t<this._clients.length;++t){const r=this._clients[t];if(r){if(!r.isBusy())return Promise.resolve(r)}else e=e||[],e.push(this._clientPromises[t])}return e?Promise.race(e):(this._clientIdx=(this._clientIdx+1)%this._clients.length,Promise.resolve(this._clients[this._clientIdx]))}invoke(e,t,r){let s=null;return Array.isArray(r)?(a.warn("invoke()","The transferList parameter is deprecated, use the options object instead"),s={transferList:r}):s=r,this.closed?Promise.reject(new Error("Connection closed")):this.getAvailableClient().then((r=>r.invoke(e,t,s)))}on(e,t){return Promise.all(this._clientPromises).then((()=>(0,s.AL)(this._clients.map((r=>r.on(e,t))))))}openPorts(){return new Promise((e=>{const t=new Array(this._clientPromises.length);let r=t.length;for(let s=0;s<this._clientPromises.length;++s)this._clientPromises[s].then((o=>{t[s]=o.openPort(),0==--r&&e(t)}))}))}get test(){return{numClients:this._clients.length}}}},25045:(e,t,r)=>{r.r(t),r.d(t,{default:()=>b});var s=r(40330),o=r(20102),i=r(91460),n=r(70586),a=r(95330),l=r(94362),u=r(17202);const c={statsWorker:()=>Promise.all([r.e(8778),r.e(6570),r.e(8316),r.e(2303),r.e(6841)]).then(r.bind(r,36841)),geometryEngineWorker:()=>Promise.all([r.e(5837),r.e(8227)]).then(r.bind(r,48227)),CSVSourceWorker:()=>Promise.all([r.e(8778),r.e(6570),r.e(8316),r.e(2303),r.e(7668),r.e(411),r.e(1534),r.e(3578),r.e(8961),r.e(7054),r.e(2781),r.e(966)]).then(r.bind(r,27793)),EdgeProcessingWorker:()=>Promise.all([r.e(6481),r.e(8936)]).then(r.bind(r,18936)),ElevationSamplerWorker:()=>Promise.all([r.e(8778),r.e(6570),r.e(8316),r.e(411),r.e(2781),r.e(6481),r.e(6459),r.e(3553)]).then(r.bind(r,61787)),FeatureServiceSnappingSourceWorker:()=>Promise.all([r.e(8778),r.e(6570),r.e(8316),r.e(2303),r.e(7668),r.e(4588),r.e(411),r.e(1534),r.e(3485),r.e(3578),r.e(8961),r.e(7054),r.e(2781),r.e(5158)]).then(r.bind(r,41650)),GeoJSONSourceWorker:()=>Promise.all([r.e(8778),r.e(6570),r.e(8316),r.e(2303),r.e(7668),r.e(411),r.e(1534),r.e(3578),r.e(8961),r.e(7054),r.e(2781),r.e(6348),r.e(7845)]).then(r.bind(r,97845)),LercWorker:()=>r.e(3027).then(r.bind(r,23027)),MemorySourceWorker:()=>Promise.all([r.e(8778),r.e(6570),r.e(8316),r.e(2303),r.e(7668),r.e(411),r.e(1534),r.e(3578),r.e(8961),r.e(7054),r.e(2781),r.e(6348),r.e(639)]).then(r.bind(r,30639)),PBFDecoderWorker:()=>Promise.all([r.e(8778),r.e(6570),r.e(8316),r.e(8961),r.e(147)]).then(r.bind(r,61916)),Pipeline:()=>Promise.all([r.e(8778),r.e(6570),r.e(8316),r.e(2303),r.e(7668),r.e(5638),r.e(4588),r.e(411),r.e(1534),r.e(3485),r.e(3578),r.e(8961),r.e(7054),r.e(2730),r.e(7783)]).then(r.bind(r,97783)),PointCloudWorker:()=>Promise.all([r.e(8778),r.e(6570),r.e(8316),r.e(2303),r.e(411),r.e(9294),r.e(9474)]).then(r.bind(r,16583)),RasterWorker:()=>Promise.all([r.e(8778),r.e(6570),r.e(8316),r.e(2303),r.e(411),r.e(176),r.e(8034)]).then(r.bind(r,61576)),SceneLayerWorker:()=>r.e(5265).then(r.bind(r,55265)),WFSSourceWorker:()=>Promise.all([r.e(8778),r.e(6570),r.e(8316),r.e(2303),r.e(7668),r.e(411),r.e(1534),r.e(3578),r.e(8961),r.e(7054),r.e(2781),r.e(6348),r.e(4556),r.e(3230)]).then(r.bind(r,43230)),WorkerTileHandler:()=>Promise.all([r.e(2303),r.e(1785),r.e(6810),r.e(9872)]).then(r.bind(r,56456))},{CLOSE:p,ABORT:d,INVOKE:h,RESPONSE:y,OPEN_PORT:m,ON:f}=l.Cs;class g{constructor(e){this._timer=null,this._cancelledJobIds=new Set,this._invokeMessages=[],this._invoke=e,this._timer=null,this._process=this._process.bind(this)}push(e){e.type===l.Cs.ABORT?this._cancelledJobIds.add(e.jobId):(this._invokeMessages.push(e),null===this._timer&&(this._timer=setTimeout(this._process,0)))}clear(){this._invokeMessages.length=0,this._cancelledJobIds.clear(),this._timer=null}_process(){this._timer=null;for(const e of this._invokeMessages)this._cancelledJobIds.has(e.jobId)||this._invoke(e);this._cancelledJobIds.clear(),this._invokeMessages.length=0}}class b{constructor(e,t){this._port=e,this._outJobs=new Map,this._inJobs=new Map,this._invokeQueue=new g((e=>this._onInvokeMessage(e))),this._client=t.client,this._onMessage=this._onMessage.bind(this),this._channel=t.channel,this._schedule=t.schedule,this._port.addEventListener("message",this._onMessage),this._port.start()}static connect(e){const t=new MessageChannel;let r;r="function"==typeof e?new e:"default"in e&&"function"==typeof e.default?new e.default:e;const s=new b(t.port1,{channel:t,client:r});return"object"==typeof r&&"remoteClient"in r&&(r.remoteClient=s),b.clients.set(s,r),t.port2}static loadWorker(e){const t=c[e];return t?t():Promise.resolve(null)}close(){this._post({type:p}),this._close()}isBusy(){return this._outJobs.size>0}invoke(e,t,r){const s=r&&r.signal,i=r&&r.transferList;if(!this._port)return Promise.reject(new o.Z("worker:port-closed",`Cannot call invoke('${e}'), port is closed`,{methodName:e,data:t}));const n=(0,l.jt)();return new Promise(((r,o)=>{const l=(0,a.$F)(s,(()=>{var e;const t=this._outJobs.get(n);t&&(this._outJobs.delete(n),null==(e=t.abortHandle)||e.remove(),this._post({type:d,jobId:n}),o((0,a.zE)()))})),u={resolve:r,reject:o,abortHandle:l,debugInfo:e};this._outJobs.set(n,u),this._post({type:h,jobId:n,methodName:e,abortable:null!=s},t,i)}))}on(e,t){const r=new MessageChannel;function s(e){t(e.data)}return this._port.postMessage({type:l.Cs.ON,eventType:e,port:r.port2},[r.port2]),r.port1.addEventListener("message",s),r.port1.start(),{remove(){r.port1.postMessage({type:l.Cs.CLOSE}),r.port1.close(),r.port1.removeEventListener("message",s)}}}openPort(){const e=new MessageChannel;return this._post({type:m,port:e.port2}),e.port1}_close(){this._channel&&(this._channel=null),this._port.removeEventListener("message",this._onMessage),this._port.close(),this._outJobs.forEach((e=>{var t;null==(t=e.abortHandle)||t.remove(),e.reject((0,a.zE)(`Worker closing, aborting job calling '${e.debugInfo}'`))})),this._inJobs.clear(),this._outJobs.clear(),this._invokeQueue.clear(),this._port=this._client=this._schedule=null}_onMessage(e){(0,n.pC)(this._schedule)?this._schedule((()=>this._processMessage(e))):this._processMessage(e)}_processMessage(e){const t=(0,l.QM)(e);if(t)switch(t.type){case y:this._onResponseMessage(t);break;case h:this._invokeQueue.push(t);break;case d:this._onAbortMessage(t);break;case p:this._onCloseMessage();break;case m:this._onOpenPortMessage(t);break;case f:this._onOnMessage(t)}}_onAbortMessage(e){const t=this._inJobs,r=e.jobId,s=t.get(r);this._invokeQueue.push(e),s&&(s.controller&&s.controller.abort(),t.delete(r))}_onCloseMessage(){const e=this._client;this._close(),e&&"destroy"in e&&b.clients.get(this)===e&&e.destroy(),b.clients.delete(this),e&&e.remoteClient&&(e.remoteClient=null)}_onInvokeMessage(e){const{methodName:t,jobId:r,data:s,abortable:o}=e,i=o?new AbortController:null,n=this._inJobs;let u,c=this._client,p=c[t];try{if(!p&&t&&-1!==t.indexOf(".")){const e=t.split(".");for(let t=0;t<e.length-1;t++)c=c[e[t]],p=c[e[t+1]]}if("function"!=typeof p)throw new TypeError(`${t} is not a function`);u=p.call(c,s,{client:this,signal:i?i.signal:null})}catch(e){return void this._post({type:y,jobId:r,error:(0,l.AB)(e)})}(0,a.y8)(u)?(n.set(r,{controller:i,promise:u}),u.then((e=>{n.has(r)&&(n.delete(r),this._post({type:y,jobId:r},e))}),(e=>{n.has(r)&&(n.delete(r),(0,a.D_)(e)||this._post({type:y,jobId:r,error:(0,l.AB)(e||{message:`Error encountered at method ${t}`})}))}))):this._post({type:y,jobId:r},u)}_onOpenPortMessage(e){new b(e.port,{client:this._client})}_onOnMessage(e){const{port:t}=e,r=this._client.on(e.eventType,(e=>{t.postMessage(e)})),s=(0,i.on)(e.port,"message",(e=>{(0,l.QM)(e).type===l.Cs.CLOSE&&(s.remove(),r.remove(),t.close())}))}_onResponseMessage(e){var t;const{jobId:r,error:s,data:i}=e,n=this._outJobs;if(!n.has(r))return;const a=n.get(r);n.delete(r),null==(t=a.abortHandle)||t.remove(),s?a.reject(o.Z.fromJSON(JSON.parse(s))):a.resolve(i)}_post(e,t,r){return(0,l.oi)(this._port,e,t,r)}}b.kernelInfo={revision:u.$,version:s.i8,buildDate:u.r},b.clients=new Map},94362:(e,t,r)=>{r.d(t,{Cs:()=>s,jt:()=>a,oi:()=>u,QM:()=>c,AB:()=>l});var s,o,i=r(80442);(o=s||(s={}))[o.HANDSHAKE=0]="HANDSHAKE",o[o.OPEN=1]="OPEN",o[o.OPENED=2]="OPENED",o[o.RESPONSE=3]="RESPONSE",o[o.INVOKE=4]="INVOKE",o[o.ABORT=5]="ABORT",o[o.CLOSE=6]="CLOSE",o[o.OPEN_PORT=7]="OPEN_PORT",o[o.ON=8]="ON";let n=0;function a(){return n++}function l(e){return e?"string"==typeof e?JSON.stringify({name:"message",message:e}):e.toJSON?JSON.stringify(e):JSON.stringify({name:e.name,message:e.message,details:e.details||{stack:e.stack}}):null}function u(e,t,r,o){if(t.type===s.OPEN_PORT)return void e.postMessage(t,[t.port]);if(t.type!==s.INVOKE&&t.type!==s.RESPONSE)return void e.postMessage(t);let i;!function(e){return e&&"object"==typeof e&&("result"in e||"transferList"in e)}(r)?(i=p(o),t.data=r):(i=p(r.transferList),t.data=r.result),i?e.postMessage(t,i):e.postMessage(t)}function c(e){if(!e)return null;const t=e.data;return t?"string"==typeof t?JSON.parse(t):t:null}function p(e){if(!e||!e.length)return null;if((0,i.Z)("esri-workers-arraybuffer-transfer"))return e;const t=e.filter((e=>!function(e){return e instanceof ArrayBuffer||e&&e.constructor&&"ArrayBuffer"===e.constructor.name}(e)));return t.length?t:null}},69285:(e,t,r)=>{r.d(t,{k:()=>n});var s=r(70586),o=r(67900),i=r(8744);function n(e,t,r){if((0,s.Wi)(t)||(0,s.Wi)(r)||r.vcsWkid||(0,i.fS)(t,r))return null;const n=(0,o._R)(t)/(0,o._R)(r);if(1===n)return null;switch(e){case"point":case"esriGeometryPoint":return e=>function(e,t){e&&null!=e.z&&(e.z*=t)}(e,n);case"polyline":case"esriGeometryPolyline":return e=>function(e,t){if(e)for(const r of e.paths)for(const e of r)e.length>2&&(e[2]*=t)}(e,n);case"polygon":case"esriGeometryPolygon":return e=>function(e,t){if(e)for(const r of e.rings)for(const e of r)e.length>2&&(e[2]*=t)}(e,n);case"multipoint":case"esriGeometryMultipoint":return e=>function(e,t){if(e)for(const r of e.points)r.length>2&&(r[2]*=t)}(e,n);case"extent":case"esriGeometryExtent":return e=>function(e,t){e&&null!=e.zmin&&null!=e.zmax&&(e.zmin*=t,e.zmax*=t)}(e,n);default:return null}}},70082:(e,t,r)=>{r.d(t,{Z:()=>c});var s=r(43697),o=r(35454),i=r(10736),n=r(5600),a=(r(67676),r(80442),r(75215),r(52011));const l=new o.Xn({esriFeatureEditToolAutoCompletePolygon:"auto-complete-polygon",esriFeatureEditToolCircle:"circle",esriFeatureEditToolEllipse:"ellipse",esriFeatureEditToolFreehand:"freehand",esriFeatureEditToolLine:"line",esriFeatureEditToolNone:"none",esriFeatureEditToolPoint:"point",esriFeatureEditToolPolygon:"polygon",esriFeatureEditToolRectangle:"rectangle",esriFeatureEditToolArrow:"arrow",esriFeatureEditToolTriangle:"triangle",esriFeatureEditToolLeftArrow:"left-arrow",esriFeatureEditToolRightArrow:"right-arrow",esriFeatureEditToolUpArrow:"up-arrow",esriFeatureEditToolDownArrow:"down-arrow"});let u=class extends i.wq{constructor(e){super(e),this.name=null,this.description=null,this.drawingTool=null,this.prototype=null,this.thumbnail=null}};(0,s._)([(0,n.Cb)({json:{write:!0}})],u.prototype,"name",void 0),(0,s._)([(0,n.Cb)({json:{write:!0}})],u.prototype,"description",void 0),(0,s._)([(0,n.Cb)({json:{read:l.read,write:l.write}})],u.prototype,"drawingTool",void 0),(0,s._)([(0,n.Cb)({json:{write:!0}})],u.prototype,"prototype",void 0),(0,s._)([(0,n.Cb)({json:{write:!0}})],u.prototype,"thumbnail",void 0),u=(0,s._)([(0,a.j)("esri.layers.support.FeatureTemplate")],u);const c=u},16451:(e,t,r)=>{r.d(t,{Z:()=>d});var s=r(43697),o=r(10736),i=r(5600),n=(r(67676),r(80442),r(75215),r(71715)),a=r(52011),l=r(30556),u=r(72729),c=r(70082);let p=class extends o.wq{constructor(e){super(e),this.id=null,this.name=null,this.domains=null,this.templates=null}readDomains(e){const t={};for(const r of Object.keys(e))t[r]=(0,u.im)(e[r]);return t}writeDomains(e,t){const r={};for(const t of Object.keys(e)){var s;e[t]&&(r[t]=null==(s=e[t])?void 0:s.toJSON())}t.domains=r}};(0,s._)([(0,i.Cb)({json:{write:!0}})],p.prototype,"id",void 0),(0,s._)([(0,i.Cb)({json:{write:!0}})],p.prototype,"name",void 0),(0,s._)([(0,i.Cb)({json:{write:!0}})],p.prototype,"domains",void 0),(0,s._)([(0,n.r)("domains")],p.prototype,"readDomains",null),(0,s._)([(0,l.c)("domains")],p.prototype,"writeDomains",null),(0,s._)([(0,i.Cb)({type:[c.Z],json:{write:!0}})],p.prototype,"templates",void 0),p=(0,s._)([(0,a.j)("esri.layers.support.FeatureType")],p);const d=p},14147:(e,t,r)=>{r.d(t,{W:()=>c});var s=r(40330),o=r(3172),i=r(70586),n=r(95330),a=r(67284),l=r(65587),u=r(15235);class c{constructor(e,t,r,s){this.parsedUrl=e,this.portalItem=t,this.apiKey=r,this.signal=s,this.rootDocument=null;const o=this.parsedUrl.path.match(/^(.*)\/SceneServer\/layers\/([\d]*)\/?$/i);o&&(this.urlParts={root:o[1],layerId:parseInt(o[2],10)})}async fetch(){var e;if(!this.urlParts)return null;const t=null!=(e=this.portalItem)?e:await this.portalItemFromServiceItemId();if((0,i.Wi)(t))return this.loadFromUrl();const r=await this.findAndLoadRelatedPortalItem(t);return(0,i.Wi)(r)?null:this.loadFeatureLayerFromPortalItem(r)}async fetchPortalItem(){var e;if(!this.urlParts)return null;const t=null!=(e=this.portalItem)?e:await this.portalItemFromServiceItemId();return(0,i.Wi)(t)?null:this.findAndLoadRelatedPortalItem(t)}async fetchRootDocument(){if((0,i.pC)(this.rootDocument))return this.rootDocument;if((0,i.Wi)(this.urlParts))return this.rootDocument={},{};const e={query:{f:"json",token:this.apiKey},responseType:"json",signal:this.signal},t=`${this.urlParts.root}/SceneServer`;try{const r=await(0,o.default)(t,e);this.rootDocument=r.data}catch{this.rootDocument={}}return this.rootDocument}async fetchServiceOwningPortalUrl(){var e;const t=null==(e=s.id)?void 0:e.findServerInfo(this.parsedUrl.path);if(null!=t&&t.owningSystemUrl)return t.owningSystemUrl;const r=this.parsedUrl.path.replace(/(.*\/rest)\/.*/i,"$1")+"/info";try{const e=(await(0,o.default)(r,{query:{f:"json"},responseType:"json",signal:this.signal})).data.owningSystemUrl;if(e)return e}catch(e){(0,n.r9)(e)}return null}async findAndLoadRelatedPortalItem(e){try{return(await e.fetchRelatedItems({relationshipType:"Service2Service",direction:"reverse"},{signal:this.signal})).find((e=>"Feature Service"===e.type))||null}catch(e){return(0,n.r9)(e),null}}async loadFeatureLayerFromPortalItem(e){await e.load({signal:this.signal});const t=await this.findMatchingAssociatedSublayerUrl(e.url);return new a.default({url:t,portalItem:e}).load({signal:this.signal})}async loadFromUrl(){const e=await this.findMatchingAssociatedSublayerUrl(`${this.urlParts.root}/FeatureServer`);return new a.default({url:e}).load({signal:this.signal})}async findMatchingAssociatedSublayerUrl(e){const t=e.replace(/^(.*FeatureServer)(\/[\d]*\/?)?$/i,"$1"),r={query:{f:"json"},responseType:"json",authMode:"no-prompt",signal:this.signal},s=this.urlParts.layerId,i=this.fetchRootDocument(),n=(0,o.default)(t,r),[a,l]=await Promise.all([n,i]),u=l&&l.layers,c=a.data&&a.data.layers;if(!Array.isArray(c))throw new Error("expected layers array");if(Array.isArray(u)){for(let e=0;e<Math.min(u.length,c.length);e++)if(u[e].id===s)return`${t}/${c[e].id}`}else if(s<c.length)return`${t}/${c[s].id}`;throw new Error("could not find matching associated sublayer")}async portalItemFromServiceItemId(){const e=(await this.fetchRootDocument()).serviceItemId;if(!e)return null;const t=new u.default({id:e,apiKey:this.apiKey}),r=await this.fetchServiceOwningPortalUrl();(0,i.pC)(r)&&(t.portal=new l.Z({url:r}));try{return t.load({signal:this.signal})}catch(e){return(0,n.r9)(e),null}}}},1231:(e,t,r)=>{r.d(t,{Z:()=>f});var s,o=r(43697),i=r(35454),n=r(10736),a=r(5600),l=(r(67676),r(80442),r(75215)),u=r(36030),c=r(71715),p=r(52011),d=r(72729),h=r(86719);const y=new i.Xn({binary:"binary",coordinate:"coordinate",countOrAmount:"count-or-amount",dateAndTime:"date-and-time",description:"description",locationOrPlaceName:"location-or-place-name",measurement:"measurement",nameOrTitle:"name-or-title",none:"none",orderedOrRanked:"ordered-or-ranked",percentageOrRatio:"percentage-or-ratio",typeOrCategory:"type-or-category",uniqueIdentifier:"unique-identifier"});let m=s=class extends n.wq{constructor(e){super(e),this.alias=null,this.defaultValue=void 0,this.description=null,this.domain=null,this.editable=!0,this.length=-1,this.name=null,this.nullable=!0,this.type=null,this.valueType=null}readDescription(e,{description:t}){let r;try{r=JSON.parse(t)}catch(e){}return r?r.value:null}readValueType(e,{description:t}){let r;try{r=JSON.parse(t)}catch(e){}return r?y.fromJSON(r.fieldValueType):null}clone(){return new s({alias:this.alias,defaultValue:this.defaultValue,description:this.description,domain:this.domain&&this.domain.clone()||null,editable:this.editable,length:this.length,name:this.name,nullable:this.nullable,type:this.type,valueType:this.valueType})}};(0,o._)([(0,a.Cb)({type:String,json:{write:!0}})],m.prototype,"alias",void 0),(0,o._)([(0,a.Cb)({type:[String,Number],json:{write:{allowNull:!0}}})],m.prototype,"defaultValue",void 0),(0,o._)([(0,a.Cb)()],m.prototype,"description",void 0),(0,o._)([(0,c.r)("description")],m.prototype,"readDescription",null),(0,o._)([(0,a.Cb)({types:d.V5,json:{read:{reader:d.im},write:!0}})],m.prototype,"domain",void 0),(0,o._)([(0,a.Cb)({type:Boolean,json:{write:!0}})],m.prototype,"editable",void 0),(0,o._)([(0,a.Cb)({type:l.z8,json:{write:!0}})],m.prototype,"length",void 0),(0,o._)([(0,a.Cb)({type:String,json:{write:!0}})],m.prototype,"name",void 0),(0,o._)([(0,a.Cb)({type:Boolean,json:{write:!0}})],m.prototype,"nullable",void 0),(0,o._)([(0,u.J)(h.v)],m.prototype,"type",void 0),(0,o._)([(0,a.Cb)()],m.prototype,"valueType",void 0),(0,o._)([(0,c.r)("valueType",["description"])],m.prototype,"readValueType",null),m=s=(0,o._)([(0,p.j)("esri.layers.support.Field")],m);const f=m},51161:(e,t,r)=>{r.d(t,{H3:()=>g,QI:()=>p,U4:()=>l,Yh:()=>h});var s=r(43697),o=r(10736),i=r(5600),n=(r(67676),r(80442),r(75215),r(36030)),a=r(52011);let l=class extends o.wq{constructor(){super(...arguments),this.nodesPerPage=null,this.rootIndex=0,this.lodSelectionMetricType=null}};(0,s._)([(0,i.Cb)({type:Number})],l.prototype,"nodesPerPage",void 0),(0,s._)([(0,i.Cb)({type:Number})],l.prototype,"rootIndex",void 0),(0,s._)([(0,i.Cb)({type:String})],l.prototype,"lodSelectionMetricType",void 0),l=(0,s._)([(0,a.j)("esri.layer.support.I3SNodePageDefinition")],l);let u=class extends o.wq{constructor(){super(...arguments),this.factor=1}};(0,s._)([(0,i.Cb)({type:Number,json:{read:{source:"textureSetDefinitionId"}}})],u.prototype,"id",void 0),(0,s._)([(0,i.Cb)({type:Number})],u.prototype,"factor",void 0),u=(0,s._)([(0,a.j)("esri.layer.support.I3SMaterialTexture")],u);let c=class extends o.wq{constructor(){super(...arguments),this.baseColorFactor=[1,1,1,1],this.baseColorTexture=null,this.metallicRoughnessTexture=null,this.metallicFactor=1,this.roughnessFactor=1}};(0,s._)([(0,i.Cb)({type:[Number]})],c.prototype,"baseColorFactor",void 0),(0,s._)([(0,i.Cb)({type:u})],c.prototype,"baseColorTexture",void 0),(0,s._)([(0,i.Cb)({type:u})],c.prototype,"metallicRoughnessTexture",void 0),(0,s._)([(0,i.Cb)({type:Number})],c.prototype,"metallicFactor",void 0),(0,s._)([(0,i.Cb)({type:Number})],c.prototype,"roughnessFactor",void 0),c=(0,s._)([(0,a.j)("esri.layer.support.I3SMaterialPBRMetallicRoughness")],c);let p=class extends o.wq{constructor(){super(...arguments),this.alphaMode="opaque",this.alphaCutoff=.25,this.doubleSided=!1,this.cullFace="none",this.normalTexture=null,this.occlusionTexture=null,this.emissiveTexture=null,this.emissiveFactor=null,this.pbrMetallicRoughness=null}};(0,s._)([(0,n.J)({opaque:"opaque",mask:"mask",blend:"blend"})],p.prototype,"alphaMode",void 0),(0,s._)([(0,i.Cb)({type:Number})],p.prototype,"alphaCutoff",void 0),(0,s._)([(0,i.Cb)({type:Boolean})],p.prototype,"doubleSided",void 0),(0,s._)([(0,n.J)({none:"none",back:"back",front:"front"})],p.prototype,"cullFace",void 0),(0,s._)([(0,i.Cb)({type:u})],p.prototype,"normalTexture",void 0),(0,s._)([(0,i.Cb)({type:u})],p.prototype,"occlusionTexture",void 0),(0,s._)([(0,i.Cb)({type:u})],p.prototype,"emissiveTexture",void 0),(0,s._)([(0,i.Cb)({type:[Number]})],p.prototype,"emissiveFactor",void 0),(0,s._)([(0,i.Cb)({type:c})],p.prototype,"pbrMetallicRoughness",void 0),p=(0,s._)([(0,a.j)("esri.layer.support.I3SMaterialDefinition")],p);let d=class extends o.wq{};(0,s._)([(0,i.Cb)({type:String,json:{read:{source:["name","index"],reader:(e,t)=>null!=e?e:`${t.index}`}}})],d.prototype,"name",void 0),(0,s._)([(0,n.J)({jpg:"jpg",png:"png",dds:"dds","ktx-etc2":"ktx-etc2",ktx2:"ktx2",basis:"basis"})],d.prototype,"format",void 0),d=(0,s._)([(0,a.j)("esri.layer.support.I3STextureFormat")],d);let h=class extends o.wq{constructor(){super(...arguments),this.atlas=!1}};(0,s._)([(0,i.Cb)({type:[d]})],h.prototype,"formats",void 0),(0,s._)([(0,i.Cb)({type:Boolean})],h.prototype,"atlas",void 0),h=(0,s._)([(0,a.j)("esri.layer.support.I3STextureSetDefinition")],h);let y=class extends o.wq{};(0,s._)([(0,n.J)({Float32:"Float32",UInt64:"UInt64",UInt32:"UInt32",UInt16:"UInt16",UInt8:"UInt8"})],y.prototype,"type",void 0),(0,s._)([(0,i.Cb)({type:Number})],y.prototype,"component",void 0),y=(0,s._)([(0,a.j)("esri.layer.support.I3SGeometryAttribute")],y);let m=class extends o.wq{};(0,s._)([(0,n.J)({draco:"draco"})],m.prototype,"encoding",void 0),(0,s._)([(0,i.Cb)({type:[String]})],m.prototype,"attributes",void 0),m=(0,s._)([(0,a.j)("esri.layer.support.I3SGeometryCompressedAttributes")],m);let f=class extends o.wq{constructor(){super(...arguments),this.offset=0}};(0,s._)([(0,i.Cb)({type:Number})],f.prototype,"offset",void 0),(0,s._)([(0,i.Cb)({type:y})],f.prototype,"position",void 0),(0,s._)([(0,i.Cb)({type:y})],f.prototype,"normal",void 0),(0,s._)([(0,i.Cb)({type:y})],f.prototype,"uv0",void 0),(0,s._)([(0,i.Cb)({type:y})],f.prototype,"color",void 0),(0,s._)([(0,i.Cb)({type:y})],f.prototype,"uvRegion",void 0),(0,s._)([(0,i.Cb)({type:y})],f.prototype,"featureId",void 0),(0,s._)([(0,i.Cb)({type:y})],f.prototype,"faceRange",void 0),(0,s._)([(0,i.Cb)({type:m})],f.prototype,"compressedAttributes",void 0),f=(0,s._)([(0,a.j)("esri.layer.support.I3SGeometryBuffer")],f);let g=class extends o.wq{};(0,s._)([(0,n.J)({triangle:"triangle"})],g.prototype,"topology",void 0),(0,s._)([(0,i.Cb)()],g.prototype,"geometryBuffers",void 0),g=(0,s._)([(0,a.j)("esri.layer.support.I3SGeometryDefinition")],g)},56765:(e,t,r)=>{r.d(t,{Z:()=>c});var s,o=r(43697),i=r(81049),n=r(10736),a=r(5600),l=(r(67676),r(80442),r(75215),r(52011));let u=s=class extends n.wq{constructor(e){super(e),this.floorField=null,this.viewAllMode=!1,this.viewAllLevelIds=new i.Z}clone(){return new s({floorField:this.floorField,viewAllMode:this.viewAllMode,viewAllLevelIds:this.viewAllLevelIds})}};(0,o._)([(0,a.Cb)({type:String,json:{write:!0}})],u.prototype,"floorField",void 0),(0,o._)([(0,a.Cb)({json:{read:!1,write:!1}})],u.prototype,"viewAllMode",void 0),(0,o._)([(0,a.Cb)({json:{read:!1,write:!1}})],u.prototype,"viewAllLevelIds",void 0),u=s=(0,o._)([(0,l.j)("esri.layers.support.LayerFloorInfo")],u);const c=u},15506:(e,t,r)=>{r.d(t,{C:()=>s});const s={attachment:{supportsContentType:!1,supportsExifInfo:!1,supportsKeywords:!1,supportsName:!1,supportsSize:!1},data:{isVersioned:!1,supportsAttachment:!1,supportsM:!1,supportsZ:!1},editing:{supportsDeleteByAnonymous:!1,supportsDeleteByOthers:!1,supportsGeometryUpdate:!1,supportsGlobalId:!1,supportsReturnServiceEditsInSourceSpatialReference:!1,supportsRollbackOnFailure:!1,supportsUpdateByAnonymous:!1,supportsUpdateByOthers:!1,supportsUpdateWithoutM:!1,supportsUploadWithItemId:!1},metadata:{supportsAdvancedFieldProperties:!1},operations:{supportsCalculate:!1,supportsTruncate:!1,supportsValidateSql:!1,supportsAdd:!1,supportsDelete:!1,supportsEditing:!1,supportsChangeTracking:!1,supportsQuery:!1,supportsQueryAttachments:!1,supportsResizeAttachments:!1,supportsSync:!1,supportsUpdate:!1,supportsExceedsLimitStatistics:!1},queryRelated:{supportsCount:!1,supportsOrderBy:!1,supportsPagination:!1},query:{maxRecordCount:0,maxRecordCountFactor:0,standardMaxRecordCount:0,supportsCacheHint:!1,supportsCentroid:!1,supportsDisjointSpatialRelationship:!1,supportsDistance:!1,supportsDistinct:!1,supportsExtent:!1,supportsFormatPBF:!1,supportsGeometryProperties:!1,supportsHavingClause:!1,supportsHistoricMoment:!1,supportsMaxRecordCountFactor:!1,supportsOrderBy:!1,supportsPagination:!1,supportsPercentileStatistics:!1,supportsQuantization:!1,supportsQuantizationEditMode:!1,supportsQueryByOthers:!1,supportsQueryGeometry:!1,supportsResultType:!1,supportsSqlExpression:!1,supportsStandardizedQueriesOnly:!1,supportsTopFeaturesQuery:!1,supportsStatistics:!1,tileMaxRecordCount:0}}},72729:(e,t,r)=>{r.d(t,{im:()=>x,V5:()=>P}),r(80442);var s,o=r(43697),i=r(22974),n=r(5600),a=(r(75215),r(36030)),l=r(52011),u=r(10736);r(67676);let c=s=class extends u.wq{constructor(e){super(e),this.name=null,this.code=null}clone(){return new s({name:this.name,code:this.code})}};(0,o._)([(0,n.Cb)({type:String,json:{write:!0}})],c.prototype,"name",void 0),(0,o._)([(0,n.Cb)({type:[String,Number],json:{write:!0}})],c.prototype,"code",void 0),c=s=(0,o._)([(0,l.j)("esri.layers.support.CodedValue")],c);const p=c,d=new(r(35454).Xn)({inherited:"inherited",codedValue:"coded-value",range:"range"});let h=class extends u.wq{constructor(e){super(e),this.name=null,this.type=null}};(0,o._)([(0,n.Cb)({type:String,json:{write:!0}})],h.prototype,"name",void 0),(0,o._)([(0,a.J)(d)],h.prototype,"type",void 0),h=(0,o._)([(0,l.j)("esri.layers.support.Domain")],h);const y=h;var m;let f=m=class extends y{constructor(e){super(e),this.codedValues=null,this.type="coded-value"}getName(e){let t=null;if(this.codedValues){const r=String(e);this.codedValues.some((e=>(String(e.code)===r&&(t=e.name),!!t)))}return t}clone(){return new m({codedValues:(0,i.d9)(this.codedValues),name:this.name})}};(0,o._)([(0,n.Cb)({type:[p],json:{write:!0}})],f.prototype,"codedValues",void 0),(0,o._)([(0,a.J)({codedValue:"coded-value"})],f.prototype,"type",void 0),f=m=(0,o._)([(0,l.j)("esri.layers.support.CodedValueDomain")],f);const g=f;var b;r(92604),r(37697);let v=b=class extends y{constructor(e){super(e),this.type="inherited"}clone(){return new b}};(0,o._)([(0,a.J)({inherited:"inherited"})],v.prototype,"type",void 0),v=b=(0,o._)([(0,l.j)("esri.layers.support.InheritedDomain")],v);const _=v;var w;let S=w=class extends y{constructor(e){super(e),this.maxValue=null,this.minValue=null,this.type="range"}clone(){return new w({maxValue:this.maxValue,minValue:this.minValue,name:this.name})}};(0,o._)([(0,n.Cb)({type:Number,json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range&&t.range[1]},write:{enabled:!1,overridePolicy(){return{enabled:null!=this.maxValue&&null==this.minValue}},target:"range",writer(e,t,r){t[r]=[this.minValue||0,e]}}}})],S.prototype,"maxValue",void 0),(0,o._)([(0,n.Cb)({type:Number,json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range&&t.range[0]},write:{target:"range",writer(e,t,r){t[r]=[e,this.maxValue||0]}}}})],S.prototype,"minValue",void 0),(0,o._)([(0,a.J)({range:"range"})],S.prototype,"type",void 0),S=w=(0,o._)([(0,l.j)("esri.layers.support.RangeDomain")],S);const C=S,P={key:"type",base:y,typeMap:{range:S,"coded-value":g,inherited:_}};function x(e){if(!e||!e.type)return null;switch(e.type){case"range":return C.fromJSON(e);case"codedValue":return g.fromJSON(e);case"inherited":return _.fromJSON(e)}return null}},86719:(e,t,r)=>{r.d(t,{v:()=>s});const s=new(r(35454).Xn)({esriFieldTypeSmallInteger:"small-integer",esriFieldTypeInteger:"integer",esriFieldTypeSingle:"single",esriFieldTypeDouble:"double",esriFieldTypeLong:"long",esriFieldTypeString:"string",esriFieldTypeDate:"date",esriFieldTypeOID:"oid",esriFieldTypeGeometry:"geometry",esriFieldTypeBlob:"blob",esriFieldTypeRaster:"raster",esriFieldTypeGUID:"guid",esriFieldTypeGlobalID:"global-id",esriFieldTypeXML:"xml"})},51706:(e,t,r)=>{function s(e){return e&&"esri.renderers.visualVariables.SizeVariable"===e.declaredClass}function o(e){return null!=e&&!isNaN(e)&&isFinite(e)}function i(e){return e.valueExpression?"expression":e.field&&"string"==typeof e.field?"field":"unknown"}function n(e,t){const r=t||i(e),s=e.valueUnit||"unknown";return"unknown"===r?"constant":e.stops?"stops":null!=e.minSize&&null!=e.maxSize&&null!=e.minDataValue&&null!=e.maxDataValue?"clamped-linear":"unknown"===s?null!=e.minSize&&null!=e.minDataValue?e.minSize&&e.minDataValue?"proportional":"additive":"identity":"real-world-size"}r.d(t,{PS:()=>i,QW:()=>n,iY:()=>s,qh:()=>o})},28101:(e,t,r)=>{r.d(t,{PR:()=>S,Lq:()=>y,Km:()=>m,cM:()=>f,ap:()=>g,V3:()=>_,B3:()=>h});var s=r(22303),o=r(38171),i=r(74085),n=r(92604),a=r(70586),l=r(99282),u=r(51706);const c=n.Z.getLogger("esri.renderers.visualVariables.support.visualVariableUtils"),p=new o.Z,d=Math.PI,h=/^\s*(return\s+)?\$view\.scale\s*(;)?\s*$/i;function y(e,t,r){const o="visualVariables"in e&&e.visualVariables?e.visualVariables.filter((e=>"color"===e.type))[0]:e;if(!o)return;if("esri.renderers.visualVariables.ColorVariable"!==o.declaredClass)return void c.warn("The visualVariable should be an instance of esri.renderers.visualVariables.ColorVariable");const i="number"==typeof t,n=i?null:t,l=n&&n.attributes;let u=i?t:null;const p=o.field,{ipData:d,hasExpression:h}=o.cache;let y=o.cache.compiledFunc;if(!p&&!h){const e=o.stops;return e&&e[0]&&e[0].color}if("number"!=typeof u)if(h){if(!(0,a.pC)(r)||!(0,a.pC)(r.arcade))return void c.error("Use of arcade expressions requires an arcade context");const e={viewingMode:r.viewingMode,scale:r.scale,spatialReference:r.spatialReference},t=r.arcade.arcadeUtils,s=t.getViewInfo(e),i=t.createExecContext(n,s);if(!y){const e=t.createSyntaxTree(o.valueExpression);y=t.createFunction(e),o.cache.compiledFunc=y}u=t.executeFunction(y,i)}else l&&(u=l[p]);const m=o.normalizationField,f=l?parseFloat(l[m]):void 0;if(null!=u&&(!m||i||!isNaN(f)&&0!==f)){isNaN(f)||i||(u/=f);const e=w(u,d);if(e){const t=e[0],i=e[1],n=t===i?o.stops[t].color:s.Z.blendColors(o.stops[t].color,o.stops[i].color,e[2],(0,a.pC)(r)?r.color:void 0);return new s.Z(n)}}}function m(e,t,r){const s="visualVariables"in e&&e.visualVariables?e.visualVariables.filter((e=>"opacity"===e.type))[0]:e;if(!s)return;if("esri.renderers.visualVariables.OpacityVariable"!==s.declaredClass)return void c.warn("The visualVariable should be an instance of esri.renderers.visualVariables.OpacityVariable");const o="number"==typeof t,i=o?null:t,n=i&&i.attributes;let l=o?t:null;const u=s.field,{ipData:p,hasExpression:d}=s.cache;let h=s.cache.compiledFunc;if(!u&&!d){const e=s.stops;return e&&e[0]&&e[0].opacity}if("number"!=typeof l)if(d){if((0,a.Wi)(r)||(0,a.Wi)(r.arcade))return void c.error("Use of arcade expressions requires an arcade context");const e={viewingMode:r.viewingMode,scale:r.scale,spatialReference:r.spatialReference},t=r.arcade.arcadeUtils,o=t.getViewInfo(e),n=t.createExecContext(i,o);if(!h){const e=t.createSyntaxTree(s.valueExpression);h=t.createFunction(e),s.cache.compiledFunc=h}l=t.executeFunction(h,n)}else n&&(l=n[u]);const y=s.normalizationField,m=n?parseFloat(n[y]):void 0;if(null!=l&&(!y||o||!isNaN(m)&&0!==m)){isNaN(m)||o||(l/=m);const e=w(l,p);if(e){const t=e[0],r=e[1];if(t===r)return s.stops[t].opacity;{const o=s.stops[t].opacity;return o+(s.stops[r].opacity-o)*e[2]}}}}function f(e,t,r){const s="visualVariables"in e&&e.visualVariables?e.visualVariables.filter((e=>"rotation"===e.type))[0]:e;if(!s)return;if("esri.renderers.visualVariables.RotationVariable"!==s.declaredClass)return void c.warn("The visualVariable should be an instance of esri.renderers.visualVariables.RotationVariable");const o=s.axis||"heading",i="heading"===o&&"arithmetic"===s.rotationType?90:0,n="heading"===o&&"arithmetic"===s.rotationType?-1:1,l="number"==typeof t?null:t,u=l&&l.attributes,p=s.field,{hasExpression:d}=s.cache;let h=s.cache.compiledFunc,y=0;if(!p&&!d)return y;if(d){if((0,a.Wi)(r)||(0,a.Wi)(r.arcade))return void c.error("Use of arcade expressions requires an arcade context");const e={viewingMode:r.viewingMode,scale:r.scale,spatialReference:r.spatialReference},t=r.arcade.arcadeUtils,o=t.getViewInfo(e),i=t.createExecContext(l,o);if(!h){const e=t.createSyntaxTree(s.valueExpression);h=t.createFunction(e),s.cache.compiledFunc=h}y=t.executeFunction(h,i)}else u&&(y=u[p]||0);return y="number"!=typeof y||isNaN(y)?null:i+n*y,y}function g(e,t,r){const s="visualVariables"in e&&e.visualVariables?e.visualVariables.filter((e=>"size"===e.type))[0]:e;if(!s)return;if("esri.renderers.visualVariables.SizeVariable"!==s.declaredClass)return void c.warn("The visualVariable should be an instance of esri.renderers.visualVariables.SizeVariable");const o=function(e,t,r,s,o){switch(t.transformationType){case"additive":return function(e,t,r,s){return e+(b(t.minSize,r,s)||t.minDataValue)}(e,t,r,s);case"constant":return function(e,t,r){const s=e.stops;let o=s&&s.length&&s[0].size;return null==o&&(o=e.minSize),b(o,t,r)}(t,r,s);case"clamped-linear":return function(e,t,r,s){const o=(e-t.minDataValue)/(t.maxDataValue-t.minDataValue),i=b(t.minSize,r,s),n=b(t.maxSize,r,s),l=(0,a.pC)(s)?s.shape:void 0;if(e<=t.minDataValue)return i;if(e>=t.maxDataValue)return n;if("area"===t.scaleBy&&l){const e="circle"===l,t=e?d*(i/2)**2:i*i,r=t+o*((e?d*(n/2)**2:n*n)-t);return e?2*Math.sqrt(r/d):Math.sqrt(r)}return i+o*(n-i)}(e,t,r,s);case"proportional":return function(e,t,r,s){const o=(0,a.pC)(s)?s.shape:void 0,i=e/t.minDataValue,n=b(t.minSize,r,s),l=b(t.maxSize,r,s);let u=null;return u="circle"===o?2*Math.sqrt(i*(n/2)**2):"square"===o||"diamond"===o||"image"===o?Math.sqrt(i*n**2):i*n,v(u,n,l)}(e,t,r,s);case"stops":return function(e,t,r,s,o){const[i,n,a]=w(e,o);if(i===n)return b(t.stops[i].size,r,s);{const e=b(t.stops[i].size,r,s);return e+(b(t.stops[n].size,r,s)-e)*a}}(e,t,r,s,o);case"real-world-size":return function(e,t,r,s){const o=((0,a.pC)(s)&&s.resolution?s.resolution:1)*l.a[t.valueUnit],i=b(t.minSize,r,s),n=b(t.maxSize,r,s),{valueRepresentation:u}=t;let c=null;return c="area"===u?2*Math.sqrt(e/d)/o:"radius"===u||"distance"===u?2*e/o:e/o,v(c,i,n)}(e,t,r,s);case"identity":return e;case"unknown":return null}}(function(e,t,r){const s="number"==typeof t,o=s?null:t,i=o&&o.attributes;let n=s?t:null;const{isScaleDriven:l}=e.cache;let p=e.cache.compiledFunc;if(l){const t=(0,a.pC)(r)?r.scale:void 0,s=(0,a.pC)(r)?r.view:void 0;n=null==t||"3d"===s?function(e){let t=null,r=null;const s=e.stops;return s?(t=s[0].value,r=s[s.length-1].value):(t=e.minDataValue||0,r=e.maxDataValue||0),(t+r)/2}(e):t}else if(!s)switch(e.inputValueType){case"expression":{if((0,a.Wi)(r)||(0,a.Wi)(r.arcade))return void c.error("Use of arcade expressions requires an arcade context");const t={viewingMode:r.viewingMode,scale:r.scale,spatialReference:r.spatialReference},s=r.arcade.arcadeUtils,i=s.getViewInfo(t),l=s.createExecContext(o,i);if(!p){const t=s.createSyntaxTree(e.valueExpression);p=s.createFunction(t),e.cache.compiledFunc=p}n=s.executeFunction(p,l);break}case"field":i&&(n=i[e.field]);break;case"unknown":n=null}if(!(0,u.qh)(n))return null;if(s||!e.normalizationField)return n;const d=i?parseFloat(i[e.normalizationField]):null;return(0,u.qh)(d)&&0!==d?n/d:null}(s,t,r),s,t,r,s.cache.ipData);return null==o||isNaN(o)?0:o}function b(e,t,r){return null==e?null:(0,u.iY)(e)?g(e,t,r):(0,u.qh)(e)?e:null}function v(e,t,r){return(0,u.qh)(r)&&e>r?r:(0,u.qh)(t)&&e<t?t:e}function _(e,t,r){const{isScaleDriven:s}=e.cache;if(!(s&&"3d"===r||t))return null;const o={scale:t,view:r};let i=b(e.minSize,p,o),n=b(e.maxSize,p,o);if(null!=i||null!=n){if(i>n){const e=n;n=i,i=e}return{minSize:i,maxSize:n}}}function w(e,t){if(!t)return;let r=0,s=t.length-1;return t.some(((t,o)=>e<t?(s=o,!0):(r=o,!1))),[r,s,(e-t[r])/(t[s]-t[r])]}function S(e,t,r){const s=["proportional","proportional","proportional"];for(const o of e){const e=o.useSymbolValue?"symbol-value":g(o,t,r);switch(o.axis){case"width":s[0]=e;break;case"depth":s[1]=e;break;case"height":s[2]=e;break;case"width-and-depth":s[0]=e,s[1]=e;break;case"all":case void 0:case null:s[0]=e,s[1]=e,s[2]=e;break;default:(0,i.Bg)(o.axis)}}return s}},28694:(e,t,r)=>{r.d(t,{p:()=>i});var s=r(70586),o=r(69285);function i(e,t,r){if(!r||!r.features||!r.hasZ)return;const i=(0,o.k)(r.geometryType,t,e.outSpatialReference);if(!(0,s.Wi)(i))for(const e of r.features)i(e.geometry)}},17202:(e,t,r)=>{r.d(t,{r:()=>s,$:()=>o});const s="20211209",o="84d3b592e14ffc7448dfe33171da130bb6c80c65"},58333:(e,t,r)=>{r.d(t,{I4:()=>o,lF:()=>n,ET:()=>i,qP:()=>a,eG:()=>l,lj:()=>c,wW:()=>u});const s=[252,146,31,255],o={type:"esriSMS",style:"esriSMSCircle",size:6,color:s,outline:{type:"esriSLS",style:"esriSLSSolid",width:.75,color:[153,153,153,255]}},i={type:"esriSLS",style:"esriSLSSolid",width:.75,color:s},n={type:"esriSFS",style:"esriSFSSolid",color:[252,146,31,196],outline:{type:"esriSLS",style:"esriSLSSolid",width:.75,color:[255,255,255,191]}},a={type:"esriTS",color:[255,255,255,255],font:{family:"arial-unicode-ms",size:10,weight:"bold"},horizontalAlignment:"center",kerning:!0,haloColor:[0,0,0,255],haloSize:1,rotated:!1,text:"",xoffset:0,yoffset:0,angle:0},l={type:"esriSMS",style:"esriSMSCircle",color:[0,0,0,255],outline:null,size:10.5},u={type:"esriSLS",style:"esriSLSSolid",color:[0,0,0,255],width:1.5},c={type:"esriSFS",style:"esriSFSSolid",color:[0,0,0,255],outline:null}},89749:(e,t,r)=>{r.d(t,{t:()=>h});var s=r(43697),o=r(15923),i=r(61247),n=r(70586),a=r(17445),l=r(1654),u=r(43050),c=r(67723),p=r(5600),d=r(52011);let h=class extends o.Z{constructor(){super(...arguments),this.updating=!1,this.handleId=0,this.handles=new i.Z,this.scheduleHandleId=0,this.pendingPromises=new Set}destroy(){this.removeAll(),this.handles.destroy()}add(e,t,r,s=0){const o=0!=(1&s),i=++this.handleId;o||this.installSyncUpdatingWatch(e,t,i);const n=0!=(2&s)?(0,u.S1)(e,t,r,o):e.watch(t,r,o);return this.handles.add(n,i),{remove:()=>this.handles.remove(i)}}addOnCollectionPropertyChange(e,t,r,s=0){const o=0!=(2&s),i=++this.handleId;return this.handles.add([(0,u.on)(e,t,"after-changes",this.createSyncUpdatingCallback()),(0,u.on)(e,t,"change",r,o?e=>{r({added:e.items,removed:[],moved:[],target:e})}:void 0)],i),{remove:()=>{this.handles.remove(i)}}}addOnCollectionChange(e,t,r=0){const s=0!=(2&r),o=++this.handleId;return this.handles.add([e.on("after-changes",this.createSyncUpdatingCallback()),e.on("change",t)],o),s&&t({added:e.items,removed:[],moved:[],target:e}),{remove:()=>{this.handles.remove(o)}}}addPromise(e){if((0,n.Wi)(e))return e;const t=++this.handleId;this.handles.add({remove:()=>{this.pendingPromises.delete(e)&&(0!==this.pendingPromises.size||this.handles.has(y)||this._set("updating",!1))}},t),this.pendingPromises.add(e),this._set("updating",!0);const r=()=>this.handles.remove(t);return e.then(r,r),e}removeAll(){this.pendingPromises.clear(),this.handles.removeAll(),this._set("updating",!1)}installSyncUpdatingWatch(e,t,r){const s=this.createSyncUpdatingCallback(),o=(0,a.Ym)((()=>(0,c.$z)(e,t)),s,{sync:!0,equals:()=>!1});return this.handles.add(o,r),o}createSyncUpdatingCallback(){return()=>{this.handles.remove(y),++this.scheduleHandleId;const e=this.scheduleHandleId;this._get("updating")||this._set("updating",!0),this.handles.add((0,l.Os)((()=>{e===this.scheduleHandleId&&(this._set("updating",this.pendingPromises.size>0),this.handles.remove(y))})),y)}}};(0,s._)([(0,p.Cb)({readOnly:!0})],h.prototype,"updating",void 0),h=(0,s._)([(0,d.j)("esri.views.support.WatchUpdatingTracking")],h);const y=-42}}]);
@@ -2,10 +2,10 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.22/esri/copyright.txt for details.
4
4
  */
5
- import{glsl as t}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as e}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";function n(n){const a=new e;return a.attributes.add("position","vec3"),a.fragment.uniforms.add("cloudRadius","float").add("halfCubeMapSize","float").add("power","float").add("sigmaE","float").add("density","float").add("cloudSize","float").add("detailSize","float").add("smoothness","float").add("cloudHeight","float").add("coverage","float").add("viewMatrix","mat3").add("cloudShapeTexture","sampler2D"),a.vertex.code.add(t`void main(void) {
5
+ import{ATLAS_SIZE as t,TILE_ROWS as e,TILE_SIZE as n}from"../views/3d/environment/NoiseTextureAtlas.js";import{glsl as a}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as o}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";function i(i){const r=new o;return r.attributes.add("position","vec3"),r.fragment.uniforms.add("cloudRadius","float").add("halfCubeMapSize","float").add("power","float").add("sigmaE","float").add("density","float").add("cloudSize","float").add("detailSize","float").add("smoothness","float").add("cloudHeight","float").add("coverage","float").add("viewMatrix","mat3").add("cloudShapeTexture","sampler2D"),r.vertex.code.add(a`void main(void) {
6
6
  gl_Position = vec4(position, 1.0);
7
- }`),a.fragment.code.add(t`
8
- const int STEPS = ${0===n.steps?t`16`:1===n.steps?t`100`:t`200`};
7
+ }`),r.fragment.code.add(a`
8
+ const int STEPS = ${0===i.steps?a`16`:1===i.steps?a`100`:a`200`};
9
9
  const int STEPS_LIGHT = 6;
10
10
  const float stepL = 300.0 / float(STEPS_LIGHT);
11
11
 
@@ -22,4 +22,4 @@ gl_Position = vec4(position, 1.0);
22
22
 
23
23
  float saturate(float x) {
24
24
  return clamp(x, 0.0, 1.0);
25
- }`),a.fragment.code.add("\n float getCloudShape(vec3 pos, float pOffset) {\n const float textureWidth = 1560.0;\n const float dataWidth = 1560.0;\n const float tileRows = 12.0;\n const vec3 atlasDimensions = vec3(128.0, 128.0, 144.0);\n\n //Change from Y being height to Z being height\n vec3 p = pos.xzy;\n\n //Pixel coordinates of point in the 3D data\n vec3 coord = vec3(mod(p - pOffset * atlasDimensions, atlasDimensions));\n float f = fract(coord.z);\n float level = floor(coord.z);\n float tileY = floor(level / tileRows);\n float tileX = level - tileY * tileRows;\n\n //The data coordinates are offset by the x and y tile, the two boundary cells between each tile pair and the initial boundary cell on the first row/column\n vec2 offset = atlasDimensions.x * vec2(tileX, tileY) + 2.0 * vec2(tileX, tileY) + 1.0;\n vec2 pixel = coord.xy + offset;\n vec2 data = texture2D(cloudShapeTexture, mod(pixel, dataWidth) / textureWidth).xy;\n\n return 1.0 - mix(data.x, data.y, f);\n }"),a.fragment.code.add("\n float clouds(vec3 p) {\n float cloudVariations = getCloudShape(0.002 * p, 0.5);\n\n float cloud = saturate(0.5 * mix(0.0, 1.0, min(2.0 * coverage, 1.0)));\n cloud += (cloudVariations * 0.6 - 0.3) * ( -4.0 * (coverage * coverage - coverage));\n float heightFraction = saturate((length(p) - cloudRadius - cloudStart) / cloudHeight);\n\n //Round the bottom and top of the clouds\n cloud *= saturate(remap(heightFraction, 0.0, 0.25, 0.0, 1.0)) * saturate(remap(heightFraction, 0.75, 1.0, 1.0, 0.0));\n\n float shape = getCloudShape(cloudSize * p, 0.0);\n shape *= mix(0.0, 1.0, min(2.0 * (1.0 - coverage), 1.0));\n cloud = saturate(remap(cloud, shape, 1.0, 0.0, 1.0));\n\n if (cloud <= 0.0) {\n return 0.0;\n }\n\n return density * saturate(remap(cloud, smoothness * getCloudShape(detailSize * p, 0.0), 1.0, 0.0, 1.0));\n }"),a.fragment.code.add("\n vec2 sphereIntersections(vec3 start, vec3 dir, float radius) {\n float a = dot(dir, dir);\n float b = 2.0 * dot(dir, start);\n float c = dot(start, start) - (radius * radius);\n float d = (b * b) - 4.0 * a * c;\n\n if (d < 0.0) {\n return vec2(1e5, -1e5);\n }\n\n return vec2((-b - sqrt(d)) / (2.0 * a), (-b + sqrt(d)) / (2.0 * a));\n }\n \n float HenyeyGreenstein(float g, float costh) {\n return (1.0 / (4.0 * 3.1415)) * ((1.0 - g * g) / pow(1.0 + g * g - 2.0 * g * costh, 1.5));\n }\n "),a.fragment.code.add("\n vec3 multipleOctaves(float extinction, float mu, float stepL) {\n float attenuation = 1.0;\n float contribution = 1.0;\n float phaseAttenuation = 1.0;\n vec3 luminance = vec3(0);\n\n for (int i = 0; i < 4; i++) {\n float phase = mix(HenyeyGreenstein(0.0, mu), HenyeyGreenstein(0.3 * phaseAttenuation, mu), 0.7);\n luminance += contribution * phase * exp(-stepL * extinction * sigmaE * attenuation);\n attenuation *= 0.2;\n contribution *= 0.6;\n phaseAttenuation *= 0.5;\n }\n\n return luminance;\n }"),a.fragment.code.add("\n vec3 lightRay(vec3 org, vec3 p, float phaseFunction, float mu, vec3 sunDirection) {\n float lightRayDensity = clouds(p);\n lightRayDensity += clouds(p + sunDirection * 1.0 * stepL);\n lightRayDensity += clouds(p + sunDirection * 2.0 * stepL);\n lightRayDensity += clouds(p + sunDirection * 3.0 * stepL);\n lightRayDensity += clouds(p + sunDirection * 4.0 * stepL);\n lightRayDensity += clouds(p + sunDirection * 5.0 * stepL);\n \n vec3 beersLaw = multipleOctaves(lightRayDensity, mu, stepL);\n\n return mix(beersLaw * 2.0 * (1.0 - (exp(-stepL * lightRayDensity * 2.0 * sigmaE ))), beersLaw, 0.5 + 0.5 * mu);\n }"),a.fragment.code.add('\n vec3 mainRay(vec3 org, vec3 dir, vec3 sunDirection, float distToStart, float totalDistance, out float totalTransmittance) {\n\n // This is never true but having the if statement stops later loop unrolling, texture prefetching and WebGL context crashes\n if (dir.z < 0.0) {\n return vec3(0);\n }\n\n //Variable to track transmittance along view ray. Assume clear sky and attenuate light when encountering clouds.\n totalTransmittance = 1.0;\n\n float stepS = totalDistance / float(STEPS);\n float cameraHeight = length(org);\n\n //Alignment of view and light directions.\n float mu = 0.5 + 0.5 * dot(sunDirection, dir);\n float phaseFunction = mix(HenyeyGreenstein(-0.3, mu), HenyeyGreenstein(0.3, mu), 0.7);\n \n vec3 p = org + distToStart * dir;\n float dist = distToStart;\n vec3 color = vec3(0.0);\n\n for (int i = 0; i < STEPS; i++) {\n\n float sampleDensity = clouds(p);\n float sampleSigmaE = sampleDensity * sigmaE;\n\n if (sampleDensity > 0.0 ) {\n float ambient = mix((1.2), (1.6), saturate((length(p) - cloudRadius - cloudStart) / cloudHeight));\n\n vec3 luminance = sampleDensity * (ambient + power * phaseFunction * lightRay(org, p, phaseFunction, mu, sunDirection));\n float transmittance = exp(-sampleSigmaE * stepS);\n\n //Better energy conserving integration\n //"From Physically based sky, atmosphere and cloud rendering in Frostbite" 5.6\n color += totalTransmittance * (luminance - luminance * transmittance) / sampleSigmaE;\n\n totalTransmittance *= transmittance;\n\n //If ray combined transmittance is close to 0, nothing beyond this sample point is visible, so break early.\n if (totalTransmittance <= 0.001) {\n totalTransmittance = 0.0;\n break;\n }\n\n }\n\n dist += stepS;\n p = org + dir * dist;\n }\n\n return color;\n }'),a.fragment.code.add("\n void main() {\n vec3 rayDir = rayDirection(gl_FragCoord.xy);\n rayDir = normalize(viewMatrix * rayDir);\n\n vec3 viewPos = vec3(0, 0, cloudRadius + 1.0);\n\n bool hitsPlanet = rayDir.z < 0.0;\n\n if (hitsPlanet) {\n gl_FragColor = vec4(vec3(0), 1);\n return;\n }\n\n vec2 rayStartIntersect = sphereIntersections(viewPos, rayDir, cloudRadius + cloudStart);\n vec2 rayEndIntersect = sphereIntersections(viewPos, rayDir, cloudRadius + cloudStart + cloudHeight);\n float distToStart = rayStartIntersect.y;\n float totalDistance = rayEndIntersect.y - distToStart;\n\n float totalTransmittance = 1.0;\n vec3 sunDirection = normalize(vec3(0, 0, 1));\n vec3 col = 0.5 * mainRay(viewPos, rayDir, sunDirection, distToStart, totalDistance, totalTransmittance).rgb;\n\n gl_FragColor = vec4(col, totalTransmittance);\n }\n "),a}const a=Object.freeze({__proto__:null,build:n});export{a as C,n as b};
25
+ }`),r.fragment.code.add(`\n float getCloudShape(vec3 pos, float pOffset) {\n const float textureWidth = float(${t});\n const float dataWidth = float(${t});\n const float tileRows = float(${e});\n const vec3 atlasDimensions = vec3(float(${n}), float(${n}), tileRows * tileRows);\n\n //Change from Y being height to Z being height\n vec3 p = pos.xzy;\n\n //Pixel coordinates of point in the 3D data\n vec3 coord = vec3(mod(p - pOffset * atlasDimensions, atlasDimensions));\n float f = fract(coord.z);\n float level = floor(coord.z);\n float tileY = floor(level / tileRows);\n float tileX = level - tileY * tileRows;\n\n //The data coordinates are offset by the x and y tile, the two boundary cells between each tile pair and the initial boundary cell on the first row/column\n vec2 offset = atlasDimensions.x * vec2(tileX, tileY) + 2.0 * vec2(tileX, tileY) + 1.0;\n vec2 pixel = coord.xy + offset;\n vec2 data = texture2D(cloudShapeTexture, mod(pixel, dataWidth) / textureWidth).xy;\n\n return 1.0 - mix(data.x, data.y, f);\n }`),r.fragment.code.add("\n float clouds(vec3 p) {\n float cloudVariations = getCloudShape(0.002 * p, 0.5);\n\n float cloud = saturate(0.5 * mix(0.0, 1.0, min(2.0 * coverage, 1.0)));\n cloud += (cloudVariations * 0.6 - 0.3) * ( -4.0 * (coverage * coverage - coverage));\n float heightFraction = saturate((length(p) - cloudRadius - cloudStart) / cloudHeight);\n\n //Round the bottom and top of the clouds\n cloud *= saturate(remap(heightFraction, 0.0, 0.25, 0.0, 1.0)) * saturate(remap(heightFraction, 0.75, 1.0, 1.0, 0.0));\n\n float shape = getCloudShape(cloudSize * p, 0.0);\n shape *= mix(0.0, 1.0, min(2.0 * (1.0 - coverage), 1.0));\n cloud = saturate(remap(cloud, shape, 1.0, 0.0, 1.0));\n\n if (cloud <= 0.0) {\n return 0.0;\n }\n\n return density * saturate(remap(cloud, smoothness * getCloudShape(detailSize * p, 0.0), 1.0, 0.0, 1.0));\n }"),r.fragment.code.add("\n vec2 sphereIntersections(vec3 start, vec3 dir, float radius) {\n float a = dot(dir, dir);\n float b = 2.0 * dot(dir, start);\n float c = dot(start, start) - (radius * radius);\n float d = (b * b) - 4.0 * a * c;\n\n if (d < 0.0) {\n return vec2(1e5, -1e5);\n }\n\n return vec2((-b - sqrt(d)) / (2.0 * a), (-b + sqrt(d)) / (2.0 * a));\n }\n\n float HenyeyGreenstein(float g, float costh) {\n return (1.0 / (4.0 * 3.1415)) * ((1.0 - g * g) / pow(1.0 + g * g - 2.0 * g * costh, 1.5));\n }\n "),r.fragment.code.add("\n vec3 multipleOctaves(float extinction, float mu, float stepL) {\n float attenuation = 1.0;\n float contribution = 1.0;\n float phaseAttenuation = 1.0;\n vec3 luminance = vec3(0);\n\n for (int i = 0; i < 4; i++) {\n float phase = mix(HenyeyGreenstein(0.0, mu), HenyeyGreenstein(0.3 * phaseAttenuation, mu), 0.7);\n luminance += contribution * phase * exp(-stepL * extinction * sigmaE * attenuation);\n attenuation *= 0.2;\n contribution *= 0.6;\n phaseAttenuation *= 0.5;\n }\n\n return luminance;\n }"),r.fragment.code.add("\n vec3 lightRay(vec3 org, vec3 p, float phaseFunction, float mu, vec3 sunDirection) {\n float lightRayDensity = clouds(p);\n lightRayDensity += clouds(p + sunDirection * 1.0 * stepL);\n lightRayDensity += clouds(p + sunDirection * 2.0 * stepL);\n lightRayDensity += clouds(p + sunDirection * 3.0 * stepL);\n lightRayDensity += clouds(p + sunDirection * 4.0 * stepL);\n lightRayDensity += clouds(p + sunDirection * 5.0 * stepL);\n\n vec3 beersLaw = multipleOctaves(lightRayDensity, mu, stepL);\n\n return mix(beersLaw * 2.0 * (1.0 - (exp(-stepL * lightRayDensity * 2.0 * sigmaE ))), beersLaw, 0.5 + 0.5 * mu);\n }"),r.fragment.code.add('\n vec3 mainRay(vec3 org, vec3 dir, vec3 sunDirection, float distToStart, float totalDistance, out float totalTransmittance) {\n\n // This is never true but having the if statement stops later loop unrolling, texture prefetching and WebGL context crashes\n if (dir.z < 0.0) {\n return vec3(0);\n }\n\n //Variable to track transmittance along view ray. Assume clear sky and attenuate light when encountering clouds.\n totalTransmittance = 1.0;\n\n float stepS = totalDistance / float(STEPS);\n float cameraHeight = length(org);\n\n //Alignment of view and light directions.\n float mu = 0.5 + 0.5 * dot(sunDirection, dir);\n float phaseFunction = mix(HenyeyGreenstein(-0.3, mu), HenyeyGreenstein(0.3, mu), 0.7);\n\n vec3 p = org + distToStart * dir;\n float dist = distToStart;\n vec3 color = vec3(0.0);\n\n for (int i = 0; i < STEPS; i++) {\n\n float sampleDensity = clouds(p);\n float sampleSigmaE = sampleDensity * sigmaE;\n\n if (sampleDensity > 0.0 ) {\n float ambient = mix((1.2), (1.6), saturate((length(p) - cloudRadius - cloudStart) / cloudHeight));\n\n vec3 luminance = sampleDensity * (ambient + power * phaseFunction * lightRay(org, p, phaseFunction, mu, sunDirection));\n float transmittance = exp(-sampleSigmaE * stepS);\n\n //Better energy conserving integration\n //"From Physically based sky, atmosphere and cloud rendering in Frostbite" 5.6\n color += totalTransmittance * (luminance - luminance * transmittance) / sampleSigmaE;\n\n totalTransmittance *= transmittance;\n\n //If ray combined transmittance is close to 0, nothing beyond this sample point is visible, so break early.\n if (totalTransmittance <= 0.001) {\n totalTransmittance = 0.0;\n break;\n }\n\n }\n\n dist += stepS;\n p = org + dir * dist;\n }\n\n return color;\n }'),r.fragment.code.add("\n void main() {\n vec3 rayDir = rayDirection(gl_FragCoord.xy);\n rayDir = normalize(viewMatrix * rayDir);\n\n vec3 viewPos = vec3(0, 0, cloudRadius + 1.0);\n\n bool hitsPlanet = rayDir.z < 0.0;\n\n if (hitsPlanet) {\n gl_FragColor = vec4(vec3(0), 1);\n return;\n }\n\n vec2 rayStartIntersect = sphereIntersections(viewPos, rayDir, cloudRadius + cloudStart);\n vec2 rayEndIntersect = sphereIntersections(viewPos, rayDir, cloudRadius + cloudStart + cloudHeight);\n float distToStart = rayStartIntersect.y;\n float totalDistance = rayEndIntersect.y - distToStart;\n\n float totalTransmittance = 1.0;\n vec3 sunDirection = normalize(vec3(0, 0, 1));\n vec3 col = 0.5 * mainRay(viewPos, rayDir, sunDirection, distToStart, totalDistance, totalTransmittance).rgb;\n\n gl_FragColor = vec4(col, totalTransmittance);\n }\n "),r}const r=Object.freeze({__proto__:null,build:i});export{r as C,i as b};
package/config.js CHANGED
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.22/esri/copyright.txt for details.
4
4
  */
5
- import"./core/has.js";import{deepMerge as e}from"./core/object.js";import{buildDate as r}from"./support/revision.js";var s;const t={apiKey:void 0,applicationUrl:null==(s=globalThis.location)?void 0:s.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryService:null,geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",portalUrl:"https://www.arcgis.com",workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{httpsDomains:["arcgis.com","arcgisonline.com","esrikr.com","premiumservices.blackbridge.com","esripremium.accuweather.com","gbm.digitalglobe.com","firstlook.digitalglobe.com","msi.digitalglobe.com"],interceptors:[],maxUrlLength:2e3,proxyRules:[],proxyUrl:null,timeout:6e4,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&(e(t,globalThis.esriConfig,!0),delete t.has),!t.assetsPath){const e="4.22.0";t.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@${e}-next.${r}/assets`}t.baseUrl&&console.warn("[esri.config]","baseUrl has been replaced by assetsPath"),Object.defineProperty(t,"baseUrl",{set(){console.warn("[esri.config]","baseUrl has been replaced by assetsPath")}}),t.request.corsEnabledServers=[],t.request.corsEnabledServers.push=function(){return console.warn("[esri.config]","request.corsEnabledServers is not supported and will be removed in a future release. See http://esriurl.com/cors8664"),0};export{t as default};
5
+ import"./core/has.js";import{deepMerge as e}from"./core/object.js";var s;const r={apiKey:void 0,applicationUrl:null==(s=globalThis.location)?void 0:s.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryService:null,geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",portalUrl:"https://www.arcgis.com",workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{httpsDomains:["arcgis.com","arcgisonline.com","esrikr.com","premiumservices.blackbridge.com","esripremium.accuweather.com","gbm.digitalglobe.com","firstlook.digitalglobe.com","msi.digitalglobe.com"],interceptors:[],maxUrlLength:2e3,proxyRules:[],proxyUrl:null,timeout:6e4,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&(e(r,globalThis.esriConfig,!0),delete r.has),!r.assetsPath){const e="4.22.0";r.assetsPath=`https://js.arcgis.com/${e.slice(0,-2)}/@arcgis/core/assets`}r.baseUrl&&console.warn("[esri.config]","baseUrl has been replaced by assetsPath"),Object.defineProperty(r,"baseUrl",{set(){console.warn("[esri.config]","baseUrl has been replaced by assetsPath")}}),r.request.corsEnabledServers=[],r.request.corsEnabledServers.push=function(){return console.warn("[esri.config]","request.corsEnabledServers is not supported and will be removed in a future release. See http://esriurl.com/cors8664"),0};export{r as default};
package/interfaces.d.ts CHANGED
@@ -11987,7 +11987,7 @@ declare namespace __esri {
11987
11987
  dataChanged: boolean;
11988
11988
  }
11989
11989
 
11990
- interface ImageryTileLayer extends Layer, ImageryTileMixin, PortalLayer, ScaleRangeLayer, TemporalLayer, BlendLayer {
11990
+ interface ImageryTileLayer extends Layer, ImageryTileMixin, PortalLayer, ScaleRangeLayer, BlendLayer {
11991
11991
  /**
11992
11992
  * A list of custom parameters appended to the URL of all resources fetched by the layer.
11993
11993
  *
@@ -12040,7 +12040,39 @@ declare namespace __esri {
12040
12040
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ImageryTileLayer.html#tileInfo)
12041
12041
  */
12042
12042
  tileInfo: TileInfo;
12043
+ /**
12044
+ * The layer's time extent.
12045
+ *
12046
+ * @default null
12047
+ *
12048
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ImageryTileLayer.html#timeExtent)
12049
+ */
12050
+ timeExtent: TimeExtent;
12051
+ /**
12052
+ * TimeInfo provides information such as date fields that store [start](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-TimeInfo.html#startField) and [end](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-TimeInfo.html#endField) time for each feature and the [fullTimeExtent](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-TimeInfo.html#fullTimeExtent) for the layer.
12053
+ *
12054
+ * @default null
12055
+ *
12056
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ImageryTileLayer.html#timeInfo)
12057
+ */
12058
+ timeInfo: TimeInfo;
12059
+ /**
12060
+ * A temporary offset of the time data based on a certain [TimeInterval](https://developers.arcgis.com/javascript/latest/api-reference/esri-TimeInterval.html).
12061
+ *
12062
+ * @default null
12063
+ *
12064
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ImageryTileLayer.html#timeOffset)
12065
+ */
12066
+ timeOffset: TimeInterval;
12043
12067
  readonly type: "imagery-tile";
12068
+ /**
12069
+ * Determines if the layer will update its temporal data based on the view's [timeExtent](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-View.html#timeExtent).
12070
+ *
12071
+ * @default true
12072
+ *
12073
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ImageryTileLayer.html#useViewTime)
12074
+ */
12075
+ useViewTime: boolean;
12044
12076
  /**
12045
12077
  * The version of ArcGIS Server in which the image service is published.
12046
12078
  *
@@ -12067,7 +12099,7 @@ declare namespace __esri {
12067
12099
 
12068
12100
  export const ImageryTileLayer: ImageryTileLayerConstructor;
12069
12101
 
12070
- interface ImageryTileLayerProperties extends LayerProperties, ImageryTileMixinProperties, PortalLayerProperties, ScaleRangeLayerProperties, TemporalLayerProperties, BlendLayerProperties {
12102
+ interface ImageryTileLayerProperties extends LayerProperties, ImageryTileMixinProperties, PortalLayerProperties, ScaleRangeLayerProperties, BlendLayerProperties {
12071
12103
  /**
12072
12104
  * A list of custom parameters appended to the URL of all resources fetched by the layer.
12073
12105
  *
@@ -12114,6 +12146,38 @@ declare namespace __esri {
12114
12146
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ImageryTileLayer.html#tileInfo)
12115
12147
  */
12116
12148
  tileInfo?: TileInfoProperties;
12149
+ /**
12150
+ * The layer's time extent.
12151
+ *
12152
+ * @default null
12153
+ *
12154
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ImageryTileLayer.html#timeExtent)
12155
+ */
12156
+ timeExtent?: TimeExtentProperties;
12157
+ /**
12158
+ * TimeInfo provides information such as date fields that store [start](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-TimeInfo.html#startField) and [end](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-TimeInfo.html#endField) time for each feature and the [fullTimeExtent](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-TimeInfo.html#fullTimeExtent) for the layer.
12159
+ *
12160
+ * @default null
12161
+ *
12162
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ImageryTileLayer.html#timeInfo)
12163
+ */
12164
+ timeInfo?: TimeInfoProperties;
12165
+ /**
12166
+ * A temporary offset of the time data based on a certain [TimeInterval](https://developers.arcgis.com/javascript/latest/api-reference/esri-TimeInterval.html).
12167
+ *
12168
+ * @default null
12169
+ *
12170
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ImageryTileLayer.html#timeOffset)
12171
+ */
12172
+ timeOffset?: TimeIntervalProperties;
12173
+ /**
12174
+ * Determines if the layer will update its temporal data based on the view's [timeExtent](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-View.html#timeExtent).
12175
+ *
12176
+ * @default true
12177
+ *
12178
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ImageryTileLayer.html#useViewTime)
12179
+ */
12180
+ useViewTime?: boolean;
12117
12181
  }
12118
12182
 
12119
12183
  /**
@@ -12313,8 +12377,7 @@ declare namespace __esri {
12313
12377
  *
12314
12378
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-Layer.html#type)
12315
12379
  */
12316
- readonly type: | "analysis"
12317
- | "base-dynamic"
12380
+ readonly type: | "base-dynamic"
12318
12381
  | "base-elevation"
12319
12382
  | "base-tile"
12320
12383
  | "bing-maps"
@@ -22952,7 +23015,39 @@ declare namespace __esri {
22952
23015
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-WCSLayer.html#renderer)
22953
23016
  */
22954
23017
  renderer: ClassBreaksRenderer | RasterStretchRenderer;
23018
+ /**
23019
+ * The layer's time extent.
23020
+ *
23021
+ * @default null
23022
+ *
23023
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-WCSLayer.html#timeExtent)
23024
+ */
23025
+ timeExtent: TimeExtent;
23026
+ /**
23027
+ * TimeInfo provides information such as date fields that store [start](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-TimeInfo.html#startField) and [end](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-TimeInfo.html#endField) time for each feature and the [fullTimeExtent](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-TimeInfo.html#fullTimeExtent) for the layer.
23028
+ *
23029
+ * @default null
23030
+ *
23031
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-WCSLayer.html#timeInfo)
23032
+ */
23033
+ timeInfo: TimeInfo;
23034
+ /**
23035
+ * A temporary offset of the time data based on a certain [TimeInterval](https://developers.arcgis.com/javascript/latest/api-reference/esri-TimeInterval.html).
23036
+ *
23037
+ * @default null
23038
+ *
23039
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-WCSLayer.html#timeOffset)
23040
+ */
23041
+ timeOffset: TimeInterval;
22955
23042
  readonly type: "wcs";
23043
+ /**
23044
+ * Determines if the layer will update its temporal data based on the view's [timeExtent](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-View.html#timeExtent).
23045
+ *
23046
+ * @default true
23047
+ *
23048
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-WCSLayer.html#useViewTime)
23049
+ */
23050
+ useViewTime: boolean;
22956
23051
  /**
22957
23052
  * The version of Web Coverage Service currently being used.
22958
23053
  *
@@ -23011,6 +23106,38 @@ declare namespace __esri {
23011
23106
  */
23012
23107
  renderer?: | (ClassBreaksRendererProperties & { type: "class-breaks" })
23013
23108
  | (RasterStretchRendererProperties & { type: "raster-stretch" });
23109
+ /**
23110
+ * The layer's time extent.
23111
+ *
23112
+ * @default null
23113
+ *
23114
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-WCSLayer.html#timeExtent)
23115
+ */
23116
+ timeExtent?: TimeExtentProperties;
23117
+ /**
23118
+ * TimeInfo provides information such as date fields that store [start](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-TimeInfo.html#startField) and [end](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-TimeInfo.html#endField) time for each feature and the [fullTimeExtent](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-TimeInfo.html#fullTimeExtent) for the layer.
23119
+ *
23120
+ * @default null
23121
+ *
23122
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-WCSLayer.html#timeInfo)
23123
+ */
23124
+ timeInfo?: TimeInfoProperties;
23125
+ /**
23126
+ * A temporary offset of the time data based on a certain [TimeInterval](https://developers.arcgis.com/javascript/latest/api-reference/esri-TimeInterval.html).
23127
+ *
23128
+ * @default null
23129
+ *
23130
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-WCSLayer.html#timeOffset)
23131
+ */
23132
+ timeOffset?: TimeIntervalProperties;
23133
+ /**
23134
+ * Determines if the layer will update its temporal data based on the view's [timeExtent](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-View.html#timeExtent).
23135
+ *
23136
+ * @default true
23137
+ *
23138
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-WCSLayer.html#useViewTime)
23139
+ */
23140
+ useViewTime?: boolean;
23014
23141
  /**
23015
23142
  * The version of Web Coverage Service currently being used.
23016
23143
  *
@@ -28746,7 +28873,7 @@ declare namespace __esri {
28746
28873
  */
28747
28874
  extent: Extent;
28748
28875
  /**
28749
- * ToDoc
28876
+ * Structured filter to use instead of the [query](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-PortalQueryParams.html#query) property.
28750
28877
  *
28751
28878
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-PortalQueryParams.html#filter)
28752
28879
  */
@@ -28830,7 +28957,7 @@ declare namespace __esri {
28830
28957
  */
28831
28958
  extent?: ExtentProperties;
28832
28959
  /**
28833
- * ToDoc
28960
+ * Structured filter to use instead of the [query](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-PortalQueryParams.html#query) property.
28834
28961
  *
28835
28962
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-PortalQueryParams.html#filter)
28836
28963
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arcgis/core",
3
- "version": "4.22.0-next.20211207",
3
+ "version": "4.22.0",
4
4
  "homepage": "https://js.arcgis.com",
5
5
  "description": "ArcGIS API for JavaScript: A complete 2D and 3D mapping and data visualization API",
6
6
  "keywords": [