@arcgis/core 4.23.0-next.20220206 → 4.23.0-next.20220207

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.
@@ -1 +1 @@
1
- var RemoteClient;(()=>{var e={88277:(e,t,r)=>{r.p=self.esriConfig.assetsPath+"/esri/core/workers/"},68773:(e,t,r)=>{"use strict";r.d(t,{Z:()=>i}),r(80442);var n,o=r(78286),s=r(17202);const i={apiKey:void 0,applicationUrl:null==(n=globalThis.location)?void 0:n.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",routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",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&&((0,o.RH)(i,globalThis.esriConfig,!0),delete i.has),!i.assetsPath){const e="4.23.0";i.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@${e}-next.${s.r}/assets`}i.baseUrl&&console.warn("[esri.config]","baseUrl has been replaced by assetsPath"),Object.defineProperty(i,"baseUrl",{set(){console.warn("[esri.config]","baseUrl has been replaced by assetsPath")}}),i.request.corsEnabledServers=[],i.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}},20102:(e,t,r)=>{"use strict";r.d(t,{Z:()=>i});var n=r(22974),o=r(92604),s=r(58896);class i extends s.Z{constructor(e,t,r){if(super(e,t,r),!(this instanceof i))return new i(e,t,r)}toJSON(){if(null!=this.details)try{return{name:this.name,message:this.message,details:JSON.parse(JSON.stringify(this.details,((e,t)=>{if(t&&"object"==typeof t&&"function"==typeof t.toJSON)return t;try{return(0,n.d9)(t)}catch(e){return"[object]"}})))}}catch(e){throw o.Z.getLogger("esri.core.Error").error(e),e}return{name:this.name,message:this.message,details:this.details}}static fromJSON(e){return new i(e.name,e.message,e.details)}}i.prototype.type="error"},92604:(e,t,r)=>{"use strict";r.d(t,{Z:()=>a});var n=r(68773),o=(r(80442),r(70586)),s=r(19153);const i={info:0,warn:1,error:2,none:3};class a{constructor(e){this.level=null,this._module="",this._parent=null,this.writer=null,this._loggedMessages={error:new Map,warn:new Map,info:new Map},null!=e.level&&(this.level=e.level),null!=e.writer&&(this.writer=e.writer),this._module=e.module,a._loggers[this.module]=this;const t=this.module.lastIndexOf(".");-1!==t&&(this._parent=a.getLogger(this.module.slice(0,t)))}get module(){return this._module}get parent(){return this._parent}error(...e){this._log("error","always",...e)}warn(...e){this._log("warn","always",...e)}info(...e){this._log("info","always",...e)}errorOnce(...e){this._log("error","once",...e)}warnOnce(...e){this._log("warn","once",...e)}infoOnce(...e){this._log("info","once",...e)}errorOncePerTick(...e){this._log("error","oncePerTick",...e)}warnOncePerTick(...e){this._log("warn","oncePerTick",...e)}infoOncePerTick(...e){this._log("info","oncePerTick",...e)}get test(){const e=this;return{loggedMessages:e._loggedMessages,clearLoggedWarnings:()=>e._loggedMessages.warn.clear()}}static get testSingleton(){return{resetLoggers(e={}){const t=a._loggers;return a._loggers=e,t},set throttlingDisabled(e){a._throttlingDisabled=e}}}static getLogger(e){let t=a._loggers[e];return t||(t=new a({module:e})),t}_log(e,t,...r){if(this._matchLevel(e)){if("always"!==t&&!a._throttlingDisabled){const n=this._argsToKey(r),o=this._loggedMessages[e].get(n);if("once"===t&&null!=o||"oncePerTick"===t&&o&&o>=a._tickCounter)return;this._loggedMessages[e].set(n,a._tickCounter),a._scheduleTickCounterIncrement()}for(const t of n.Z.log.interceptors)if(t(e,this.module,...r))return;this._inheritedWriter()(e,this.module,...r)}}_parentWithMember(e,t){let r=this;for(;(0,o.pC)(r);){const t=r[e];if((0,o.pC)(t))return t;r=r.parent}return t}_inheritedWriter(){return this._parentWithMember("writer",this._consoleWriter)}_consoleWriter(e,t,...r){console[e](`[${t}]`,...r)}_matchLevel(e){const t=n.Z.log.level?n.Z.log.level:"warn";return i[this._parentWithMember("level",t)]<=i[e]}_argsToKey(...e){return(0,s.hP)(JSON.stringify(e,((e,t)=>"object"!=typeof t||Array.isArray(t)?t:"[Object]")))}static _scheduleTickCounterIncrement(){a._tickCounterScheduled||(a._tickCounterScheduled=!0,Promise.resolve().then((()=>{a._tickCounter++,a._tickCounterScheduled=!1})))}}a._loggers={},a._tickCounter=0,a._tickCounterScheduled=!1,a._throttlingDisabled=!1},58896:(e,t,r)=>{"use strict";r.d(t,{Z:()=>o});var n=r(78286);class o{constructor(e,t,r){this.name=e,this.details=r,this.message=void 0,this instanceof o&&(this.message=t&&function(e,t){return e.replace(/\$\{([^\s\:\}]*)(?:\:([^\s\:\}]+))?\}/g,(function(e,r){if(""===r)return"$";const o=(0,n.hS)(r,t),s=null==o?"":o;if(void 0===s)throw new Error(`could not find key "${r}" in template`);return s.toString()}))}(t,r)||"")}toString(){return"["+this.name+"]: "+this.message}}},77734:(e,t,r)=>{"use strict";r.d(t,{Z:()=>n});class n{constructor(e=1){this._seed=e}set seed(e){this._seed=null==e?Math.random()*n._m:e}getInt(){return this._seed=(n._a*this._seed+n._c)%n._m,this._seed}getFloat(){return this.getInt()/(n._m-1)}getIntRange(e,t){return Math.round(this.getFloatRange(e,t))}getFloatRange(e,t){const r=t-e;return e+this.getInt()/n._m*r}}n._m=2147483647,n._a=48271,n._c=0},67676:(e,t,r)=>{"use strict";r.d(t,{SO:()=>u,a9:()=>c,fS:()=>s,cq:()=>d,zG:()=>i,w6:()=>l,Od:()=>g,e$:()=>h,FY:()=>b});var n=r(70586),o=r(77734);function s(e,t,r){if((0,n.Wi)(e)&&(0,n.Wi)(t))return!0;if((0,n.Wi)(e)||(0,n.Wi)(t)||e.length!==t.length)return!1;if(r){for(let n=0;n<e.length;n++)if(!r(e[n],t[n]))return!1}else for(let r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0}function i(e){return e&&"number"==typeof e.length}const a=!!Array.prototype.fill;function c(e,t){if(a)return new Array(e).fill(t);const r=new Array(e);for(let n=0;n<e;n++)r[n]=t;return r}function l(e,t){void 0===t&&(t=e,e=0);const r=new Array(t-e);for(let n=e;n<t;n++)r[n-e]=n;return r}class u{constructor(){this.last=0}}const f=new u;function d(e,t,r,n){n=n||f;const o=Math.max(0,n.last-10);for(let s=o;s<r;++s)if(e[s]===t)return n.last=s,s;const s=Math.min(o,r);for(let r=0;r<s;++r)if(e[r]===t)return n.last=r,r;return-1}function h(e,t,r,n){const o=null==r?e.length:r,s=d(e,t,o,n);if(-1!==s)return e[s]=e[o-1],null==r&&e.pop(),t}const p=new Set;function b(e,t,r=e.length,n=t.length,o,s){if(0===n||0===r)return r;p.clear();for(let e=0;e<n;++e)p.add(t[e]);o=o||f;const i=Math.max(0,o.last-10);for(let t=i;t<r;++t)if(p.has(e[t])&&(s&&s.push(e[t]),p.delete(e[t]),e[t]=e[r-1],--r,--t,0===p.size||0===r))return p.clear(),r;for(let t=0;t<i;++t)if(p.has(e[t])&&(s&&s.push(e[t]),p.delete(e[t]),e[t]=e[r-1],--r,--t,0===p.size||0===r))return p.clear(),r;return p.clear(),r}function g(e,t){const r=e.indexOf(t);return-1!==r?(e.splice(r,1),t):null}new o.Z},91460:(e,t,r)=>{"use strict";function n(e){return e&&("function"==typeof e.on||"function"==typeof e.addEventListener)}function o(e,t,r){if(!n(e))throw new TypeError("target is not a Evented or EventTarget object");if("on"in e)return e.on(t,r);if(Array.isArray(t)){const n=t.slice();for(const t of n)e.addEventListener(t,r);return{remove(){for(const t of n)e.removeEventListener(t,r)}}}return e.addEventListener(t,r),{remove(){e.removeEventListener(t,r)}}}function s(e,t,r){if(!n(e))throw new TypeError("target is not a Evented or EventTarget object");if("once"in e)return e.once(t,r);const s=o(e,t,(t=>{s.remove(),r.call(e,t)}));return{remove(){s.remove()}}}r.d(t,{vT:()=>n,on:()=>o,IH:()=>s})},80442:(e,t,r)=>{"use strict";var n,o;let s;var i,a;function c(e){return"function"==typeof s[e]?s[e]=s[e](globalThis):s[e]}r.d(t,{Z:()=>c}),s=null!=(n=globalThis.dojoConfig)&&n.has||null!=(o=globalThis.esriConfig)&&o.has?{...null==(i=globalThis.dojoConfig)?void 0:i.has,...null==(a=globalThis.esriConfig)?void 0:a.has}:{},c.add=(e,t,r,n)=>((n||void 0===s[e])&&(s[e]=t),r&&c(e)),c.cache=s,c.add("esri-deprecation-warnings",!0),(()=>{var e;c.add("host-webworker",void 0!==globalThis.WorkerGlobalScope&&self instanceof globalThis.WorkerGlobalScope);const t="undefined"!=typeof window&&"undefined"!=typeof location&&"undefined"!=typeof document&&window.location===location&&window.document===document;if(c.add("host-browser",t),c.add("host-node","object"==typeof globalThis.process&&(null==(e=globalThis.process.versions)?void 0:e.node)&&globalThis.process.versions.v8),c.add("dom",t),c("host-browser")){const e=navigator,t=e.userAgent,r=e.appVersion,n=parseFloat(r);if(c.add("wp",parseFloat(t.split("Windows Phone")[1])||void 0),c.add("msapp",parseFloat(t.split("MSAppHost/")[1])||void 0),c.add("khtml",r.includes("Konqueror")?n:void 0),c.add("edge",parseFloat(t.split("Edge/")[1])||void 0),c.add("opr",parseFloat(t.split("OPR/")[1])||void 0),c.add("webkit",!c("wp")&&!c("edge")&&parseFloat(t.split("WebKit/")[1])||void 0),c.add("chrome",!c("edge")&&!c("opr")&&parseFloat(t.split("Chrome/")[1])||void 0),c.add("android",!c("wp")&&parseFloat(t.split("Android ")[1])||void 0),c.add("safari",!r.includes("Safari")||c("wp")||c("chrome")||c("android")||c("edge")||c("opr")?void 0:parseFloat(r.split("Version/")[1])),c.add("mac",r.includes("Macintosh")),!c("wp")&&t.match(/(iPhone|iPod|iPad)/)){const e=RegExp.$1.replace(/P/,"p"),r=t.match(/OS ([\d_]+)/)?RegExp.$1:"1",n=parseFloat(r.replace(/_/,".").replace(/_/g,""));c.add(e,n),c.add("ios",n)}c.add("trident",parseFloat(r.split("Trident/")[1])||void 0),c("webkit")||(!t.includes("Gecko")||c("wp")||c("khtml")||c("trident")||c("edge")||c.add("mozilla",n),c("mozilla")&&c.add("ff",parseFloat(t.split("Firefox/")[1]||t.split("Minefield/")[1])||void 0))}})(),(()=>{if(globalThis.navigator){const e=navigator.userAgent,t=/Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini|IEMobile/i.test(e),r=/iPhone/i.test(e);t&&c.add("esri-mobile",t),r&&c.add("esri-iPhone",r),c.add("esri-geolocation",!!navigator.geolocation)}c.add("esri-canvas-svg-support",!c("trident")),c.add("esri-wasm","WebAssembly"in globalThis),c.add("esri-shared-array-buffer",(()=>{const e="SharedArrayBuffer"in globalThis,t=!1===globalThis.crossOriginIsolated;return e&&!t})),c.add("esri-atomics","Atomics"in globalThis),c.add("esri-workers","Worker"in globalThis),c.add("web-feat:cache","caches"in globalThis),c.add("esri-workers-arraybuffer-transfer",!c("safari")||Number(c("safari"))>=12),c.add("featurelayer-simplify-thresholds",[.5,.5,.5,.5]),c.add("featurelayer-simplify-payload-size-factors",[1,1,4]),c.add("featurelayer-snapshot-enabled",!0),c.add("featurelayer-snapshot-point-min-threshold",8e4),c.add("featurelayer-snapshot-point-max-threshold",4e5),c.add("featurelayer-snapshot-point-coverage",.1),c.add("featurelayer-advanced-symbols",!1),c.add("featurelayer-pbf",!0),c.add("featurelayer-pbf-statistics",!1),c.add("feature-layers-workers",!0),c.add("feature-polyline-generalization-factor",1),c.add("mapview-transitions-duration",200),c.add("mapserver-pbf-enabled",!1),c.add("vectortilelayer-max-buffers",c("ff")?160:Number.POSITIVE_INFINITY),c("host-webworker")||c("host-browser")&&(c.add("esri-csp-restrictions",(()=>{try{new Function}catch{return!0}return!1})),c.add("esri-image-decode",(()=>{if("decode"in new Image){const e=new Image;return e.src='data:image/svg+xml;charset=UTF-8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg"></svg>',void e.decode().then((()=>{c.add("esri-image-decode",!0,!0,!0)})).catch((()=>{c.add("esri-image-decode",!1,!0,!0)}))}return!1})),c.add("esri-url-encodes-apostrophe",(()=>{const e=window.document.createElement("a");return e.href="?'",e.href.includes("?%27")})))})()},22974:(e,t,r)=>{"use strict";r.d(t,{d9:()=>i,fS:()=>d,yd:()=>s,Vo:()=>a}),r(67676),r(80442);var n=r(70586),o=r(1533);function s(e,t){let r;if(t)for(r in e)e.hasOwnProperty(r)&&(void 0===e[r]?delete e[r]:e[r]instanceof Object&&s(e[r],!0));else for(r in e)e.hasOwnProperty(r)&&void 0===e[r]&&delete e[r];return e}function i(e){if(!e||"object"!=typeof e||"function"==typeof e)return e;const t=f(e);if((0,n.pC)(t))return t;if(c(e))return e.clone();if(l(e))return e.map(i);if(u(e))return e.clone();const r={};for(const t of Object.getOwnPropertyNames(e))r[t]=i(e[t]);return r}function a(e){if(!e||"object"!=typeof e||"function"==typeof e)return e;const t=f(e);if((0,n.pC)(t))return t;if(l(e)){let t=!0;const r=e.map((e=>{const r=a(e);return null!=e&&null==r&&(t=!1),r}));return t?r:null}if(c(e))return e.clone();if(!u(e)){const t=new(0,Object.getPrototypeOf(e).constructor);for(const r of Object.getOwnPropertyNames(e)){const n=e[r],o=a(n);if(null!=n&&null==o)return null;t[r]=o}return t}return null}function c(e){return"function"==typeof e.clone}function l(e){return"function"==typeof e.map&&"function"==typeof e.forEach}function u(e){return"function"==typeof e.notifyChange&&"function"==typeof e.watch}function f(e){if((0,o.W0)(e)||(0,o.lq)(e)||(0,o.KZ)(e)||(0,o.z3)(e)||(0,o.Uc)(e)||(0,o.Hx)(e)||(0,o.ZY)(e)||(0,o.xZ)(e)||(0,o.fS)(e))return(0,o.tP)(e);if(e instanceof Date)return new Date(e.getTime());if(e instanceof ArrayBuffer)return e.slice(0,e.byteLength);if(e instanceof Map){const t=new Map;return e.forEach(((e,r)=>{t.set(r,i(e))})),t}if(e instanceof Set){const t=new Set;return e.forEach((e=>{t.add(i(e))})),t}return null}function d(e,t){return e===t||"number"==typeof e&&isNaN(e)&&"number"==typeof t&&isNaN(t)||"function"==typeof(e||{}).getTime&&"function"==typeof(t||{}).getTime&&e.getTime()===t.getTime()||!1}},70586:(e,t,r)=>{"use strict";function n(e){return null!=e}function o(e){return null==e}function s(e){return void 0===e}function i(e,t){return n(e)?t(e):null}function a(e){return e}function c(e,t){if(o(e))throw new Error(t);return e}function l(e,t){return n(e)?e:"function"==typeof t?t():t}function u(e){return n(e)&&e.destroy(),null}function f(e){return n(e)&&e.dispose(),null}function d(e){return n(e)&&e.remove(),null}function h(e){return n(e)&&e.release(),null}function p(e){return null}function b(e,t){const r=new Array;for(const n of e)r.push(m(n,null,t));return r}function g(e,t){for(const r of e)i(r,t)}function m(e,t,r){return n(e)?r(e):t}function y(e){return e.filter((e=>n(e)))}function v(e,...t){let r=e;for(let e=0;e<t.length&&r;++e)r=r[t[e]];return r}function w(e){return e}r.d(t,{yw:()=>i,j0:()=>w,SC:()=>u,O3:()=>f,lV:()=>y,JR:()=>g,U2:()=>v,Wi:()=>o,pC:()=>n,o8:()=>s,Fd:()=>b,R2:()=>m,Bd:()=>p,RY:()=>h,hw:()=>d,Wg:()=>a,Pt:()=>l,s3:()=>c})},78286:(e,t,r)=>{"use strict";r.d(t,{RH:()=>o,hS:()=>s,RB:()=>i});var n=r(22974);function o(e,t,r=!1){return c(e,t,r)}function s(e,t){if(null!=t)return t[e]||a(e.split("."),!1,t)}function i(e,t,r){const n=e.split("."),o=n.pop(),s=a(n,!0,r);s&&o&&(s[o]=t)}function a(e,t,r){let n=r;for(const r of e){if(null==n)return;if(!(r in n)){if(!t)return;n[r]={}}n=n[r]}return n}function c(e,t,r){return t?Object.keys(t).reduce((function(e,o){let s=e[o],i=t[o];return s===i?e:void 0===s?(e[o]=(0,n.d9)(i),e):(Array.isArray(i)||Array.isArray(e)?(s=s?Array.isArray(s)?e[o]=s.concat():e[o]=[s]:e[o]=[],i&&(Array.isArray(i)||(i=[i]),r?i.forEach((e=>{-1===s.indexOf(e)&&s.push(e)})):e[o]=i.concat())):i&&"object"==typeof i?e[o]=c(s,i,r):e.hasOwnProperty(o)&&!t.hasOwnProperty(o)||(e[o]=i),e)}),e||{}):e}},95330:(e,t,r)=>{"use strict";r.d(t,{e4:()=>C,$6:()=>c,Ue:()=>l,zE:()=>u,dD:()=>_,hh:()=>x,vr:()=>j,Ds:()=>T,as:()=>O,WW:()=>P,R8:()=>w,D_:()=>v,Hc:()=>h,y8:()=>E,fu:()=>g,$F:()=>m,d1:()=>k,DB:()=>S,r9:()=>p,k_:()=>f,H9:()=>b,Yn:()=>M,gx:()=>A,Hl:()=>y});const n=(o=globalThis,{setTimeout:(e,t)=>{const r=o.setTimeout(e,t);return{remove:()=>o.clearTimeout(r)}}});var o,s=r(20102),i=r(91460),a=(r(92604),r(70586));function c(e){return Promise.all(e)}function l(e){return new Promise(((t,r)=>{try{e(t,r)}catch(e){Promise.resolve().then((()=>r(e)))}}))}function u(e="Aborted"){return new s.Z("AbortError",e)}function f(e,t="Aborted"){if(h(e))throw u(t)}function d(e){return(0,a.pC)(e)?"aborted"in e?e:e.signal:e}function h(e){const t=d(e);return(0,a.pC)(t)&&t.aborted}function p(e){if(v(e))throw e}function b(e){if(!v(e))throw e}function g(e,t){const r=d(e);if(!(0,a.Wi)(r)){if(!r.aborted)return(0,i.IH)(r,"abort",(()=>t()));t()}}function m(e,t){const r=d(e);if(!(0,a.Wi)(r))return f(r),(0,i.IH)(r,"abort",(()=>t(u())))}function y(e,t){const r=d(t);return(0,a.Wi)(r)?e:new Promise(((r,n)=>{let o=g(t,(()=>n(u())));const s=()=>o=(0,a.hw)(o);e.then(s,s),e.then(r,n)}))}function v(e){return e&&"AbortError"===e.name}function w(e){return e.catch((e=>{if(!v(e))throw e}))}function _(){let e=null;const t=new Promise(((t,r)=>{e={promise:void 0,resolve:t,reject:r}}));return e.promise=t,e}function O(e){if(!e)return;if("function"!=typeof e.forEach){const t=Object.keys(e);return O(t.map((t=>e[t]))).then((e=>{const r={};return t.forEach(((t,n)=>r[t]=e[n])),r}))}const t=e;return l((e=>{const r=[];let n=t.length;0===n&&e(r),t.forEach((t=>{const o={promise:t||Promise.resolve(t)};r.push(o),o.promise.then((e=>{o.value=e})).catch((e=>{o.error=e})).then((()=>{--n,0===n&&e(r)}))}))}))}function P(e){return O(e).then((e=>e.filter((e=>!!e.value)).map((e=>e.value))))}function k(e){return Promise.reject(e)}function S(e){return Promise.resolve(e)}function C(e,t,r){const n=new AbortController;return g(r,(()=>n.abort())),new Promise(((r,o)=>{let s=setTimeout((()=>{s=0,r(t)}),e);g(n,(()=>{s&&(clearTimeout(s),o(u()))}))}))}function E(e){return e&&"function"==typeof e.then}function A(e){return E(e)?e:Promise.resolve(e)}function T(e,t=-1){let r,n,o,s,i=null;const c=(...l)=>{if(r){n=l,s&&s.reject(u()),s=_();const e=(0,a.j0)(s.promise);if(i){const e=i;i=null,e.abort()}return e}if(o=s||_(),s=null,t>0){const n=new AbortController;r=A(e(...l,n.signal));const o=r;C(t).then((()=>{r===o&&(s?n.abort():i=n)}))}else r=1,r=A(e(...l));const f=()=>{const e=n;n=o=r=i=null,null!=e&&c(...e)},d=r,h=o;return d.then(f,f),d.then(h.resolve,h.reject),(0,a.j0)(h.promise)};return c}function x(){let e,t;const r=new Promise(((r,n)=>{e=r,t=n})),o=t=>{e(t)};return o.resolve=t=>e(t),o.reject=e=>t(e),o.timeout=(e,t)=>n.setTimeout((()=>o.reject(t)),e),o.promise=r,o}function j(e,t){let r,n=new AbortController;const o=e(n.signal);let s={promise:o,finished:!1,abort:()=>{n&&(n.abort(),n=null)}};const i=()=>{s&&(s.finished=!0,s=null),(0,a.pC)(r)&&(r.remove(),r=null),n=null};return o.then(i,i),r=g(t,(()=>{(0,a.pC)(s)&&s.abort()})),s}function M(e){return Promise.resolve().then((()=>{f(e)}))}},19153:(e,t,r)=>{"use strict";r.d(t,{Qs:()=>a,hP:()=>c,gx:()=>i,Cb:()=>l});var n=r(78286);const o=/\{([^\}]+)\}/g;function s(e){return null==e?"":e}function i(e,t){return e.replace(o,"object"==typeof t?(e,r)=>s((0,n.hS)(r,t)):(e,r)=>s(t(r)))}function a(e,t){return e.replace(/([\.$?*|{}\(\)\[\]\\\/\+\-^])/g,(e=>t&&-1!==t.indexOf(e)?e:`\\${e}`))}function c(e){let t=0;for(let r=0;r<e.length;r++)t=(t<<5)-t+e.charCodeAt(r),t|=0;return t}function l(e){return(new DOMParser).parseFromString(e||"","text/html").body.innerText||""}},1533:(e,t,r)=>{"use strict";function n(e,t){if(e.forEach)e.forEach(t);else for(let r=0;r<e.length;r++)t(e[r],r,e)}function o(e,t,r){if(e.slice)return e.slice(t,r);void 0===t?t=0:(t<0&&(t+=e.length),t=Math.min(e.length,Math.max(0,t))),void 0===r?r=e.length:(r<0&&(r+=e.length),r=Math.min(e.length,Math.max(0,r)));const n=Math.max(0,r-t),o=new(0,e.constructor)(n);for(let r=0;r<n;r++)o[r]=e[t+r];return o}function s(e){return e instanceof ArrayBuffer||e&&e.constructor&&"ArrayBuffer"===e.constructor.name}function i(e){return e instanceof Int8Array||e&&e.constructor&&"Int8Array"===e.constructor.name}function a(e){return e instanceof Uint8Array||e&&e.constructor&&"Uint8Array"===e.constructor.name}function c(e){return e instanceof Uint8ClampedArray||e&&e.constructor&&"Uint8ClampedArray"===e.constructor.name}function l(e){return e instanceof Int16Array||e&&e.constructor&&"Int16Array"===e.constructor.name}function u(e){return e instanceof Uint16Array||e&&e.constructor&&"Uint16Array"===e.constructor.name}function f(e){return e instanceof Int32Array||e&&e.constructor&&"Int32Array"===e.constructor.name}function d(e){return e instanceof Uint32Array||e&&e.constructor&&"Uint32Array"===e.constructor.name}function h(e){return e instanceof Float32Array||e&&e.constructor&&"Float32Array"===e.constructor.name}function p(e){return e instanceof Float64Array||e&&e.constructor&&"Float64Array"===e.constructor.name}r.d(t,{Ed:()=>n,eP:()=>s,xZ:()=>h,fS:()=>p,z3:()=>l,Hx:()=>f,W0:()=>i,Uc:()=>u,ZY:()=>d,lq:()=>a,KZ:()=>c,tP:()=>o})},17452:(e,t,r)=>{"use strict";r.d(t,{R9:()=>y,qg:()=>T,tD:()=>$,ZN:()=>de,fl:()=>he,Ie:()=>le,sJ:()=>Y,AH:()=>Q,io:()=>X,L:()=>P,TI:()=>O,vt:()=>ae,oh:()=>U,P$:()=>D,Ml:()=>pe,ed:()=>I,b7:()=>A,D6:()=>W,tm:()=>N,YP:()=>H,jc:()=>z,HK:()=>K,$U:()=>re,oC:()=>ee,kl:()=>L,v_:()=>B,hF:()=>q,_l:()=>G,PF:()=>F,Fv:()=>Z,B7:()=>E,u0:()=>S,Yd:()=>ie,Hu:()=>fe,Qj:()=>ce,hO:()=>ne,mN:()=>k});var n=r(68773),o=r(20102),s=r(92604),i=r(70586);const a=s.Z.getLogger("esri.core.urlUtils"),c=n.Z.request,l="esri/config: esriConfig.request.proxyUrl is not set.",u=/^\s*[a-z][a-z0-9-+.]*:(?![0-9])/i,f=/^\s*http:/i,d=/^\s*https:/i,h=/^\s*file:/i,p=/:\d+$/,b=/^https?:\/\/[^/]+\.arcgis.com\/sharing(\/|$)/i,g=new RegExp("^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\\?([^#]*))?(#(.*))?$"),m=new RegExp("^((([^\\[:]+):)?([^@]+)@)?(\\[([^\\]]+)\\]|([^\\[:]*))(:([0-9]+))?$");class y{constructor(e=""){this.uri=e,this.scheme=null,this.authority=null,this.path=null,this.query=null,this.fragment=null,this.user=null,this.password=null,this.host=null,this.port=null;let t=(0,i.j0)(this.uri.match(g));this.scheme=t[2]||(t[1]?"":null),this.authority=t[4]||(t[3]?"":null),this.path=t[5],this.query=t[7]||(t[6]?"":null),this.fragment=t[9]||(t[8]?"":null),null!=this.authority&&(t=(0,i.j0)(this.authority.match(m)),this.user=t[3]||null,this.password=t[4]||null,this.host=t[6]||t[7],this.port=t[9]||null)}toString(){return this.uri}}const v={};let w=new y(n.Z.applicationUrl);let _=function(){const e=(0,i.j0)(w.path),t=e.substring(0,e.lastIndexOf(e.split("/")[e.split("/").length-1]));return`${w.scheme}://${w.host}${null!=w.port?`:${w.port}`:""}${t}`}();const O=()=>w,P=()=>_;function k(e){const t={path:null,query:null},r=new y(e),n=e.indexOf("?");return null===r.query?t.path=e:(t.path=e.substring(0,n),t.query=S(r.query)),r.fragment&&(t.hash=r.fragment,null===r.query&&(t.path=t.path.substring(0,t.path.length-(r.fragment.length+1)))),t}function S(e){const t=e.split("&"),r={};for(const e of t){if(!e)continue;const t=e.indexOf("=");let n,o;t<0?(n=decodeURIComponent(e),o=""):(n=decodeURIComponent(e.slice(0,t)),o=decodeURIComponent(e.slice(t+1)));let s=r[n];"string"==typeof s&&(s=r[n]=[s]),Array.isArray(s)?s.push(o):r[n]=o}return r}function C(e){return e&&"object"==typeof e&&"toJSON"in e&&"function"==typeof e.toJSON}function E(e,t){return e?t&&"function"==typeof t?Object.keys(e).map((r=>encodeURIComponent(r)+"="+encodeURIComponent(t(r,e[r])))).join("&"):Object.keys(e).map((r=>{const n=e[r];if(null==n)return"";const o=encodeURIComponent(r)+"=",s=t&&t[r];return s?o+encodeURIComponent(s(n)):Array.isArray(n)?n.map((e=>C(e)?o+encodeURIComponent(JSON.stringify(e)):o+encodeURIComponent(e))).join("&"):C(n)?o+encodeURIComponent(JSON.stringify(n)):o+encodeURIComponent(n)})).filter((e=>e)).join("&"):""}function A(e=!1){let t,r=c.proxyUrl;if("string"==typeof e){t=re(e);const n=I(e);n&&(r=n.proxyUrl)}else t=!!e;if(!r)throw a.warn(l),new o.Z("urlutils:proxy-not-set",l);return t&&oe()&&(r=ne(r)),k(r)}function T(e){const t=I(e);let r,n;if(t){const e=j(t.proxyUrl);r=e.path,n=e.query?S(e.query):null}if(r){const t=k(e);e=r+"?"+t.path;const o=E({...n,...t.query});o&&(e=`${e}?${o}`)}return e}const x={path:"",query:""};function j(e){const t=e.indexOf("?");return-1!==t?(x.path=e.slice(0,t),x.query=e.slice(t+1)):(x.path=e,x.query=null),x}function M(e){return(e=se(e=function(e){return e&&"/"===e[e.length-1]?e:`${e}/`}(e=j(e).path),!0)).toLowerCase()}function $(e){const t={proxyUrl:e.proxyUrl,urlPrefix:M(e.urlPrefix)},r=c.proxyRules,n=t.urlPrefix;let o=r.length;for(let e=0;e<r.length;e++){const t=r[e].urlPrefix;if(0===n.indexOf(t)){if(n.length===t.length)return-1;o=e;break}0===t.indexOf(n)&&(o=e+1)}return r.splice(o,0,t),o}function I(e){const t=c.proxyRules,r=M(e);for(let e=0;e<t.length;e++)if(0===r.indexOf(t[e].urlPrefix))return t[e]}function N(e,t){return e=R(e),t=R(t),se(e)===se(t)}function R(e){const t=(e=Z(e)).indexOf("/sharing");return t>0?e.substring(0,t):e.replace(/\/+$/,"")}function U(e){const t=t=>null==t||t instanceof RegExp&&t.test(e)||"string"==typeof t&&e.startsWith(t),r=c.interceptors;if(r)for(const e of r)if(Array.isArray(e.urls)){if(e.urls.some(t))return e}else if(t(e.urls))return e;return null}function W(e,t,r=!1){const n=ue(e),o=ue(t);return!(!r&&n.scheme!==o.scheme)&&null!=n.host&&null!=o.host&&n.host.toLowerCase()===o.host.toLowerCase()&&n.port===o.port}function L(e){if("string"==typeof e){if(!H(e))return!0;e=ue(e)}if(W(e,w))return!0;const t=c.trustedServers||[];for(let r=0;r<t.length;r++){const n=J(t[r]);for(let t=0;t<n.length;t++)if(W(e,n[t]))return!0}return!1}function J(e){return v[e]||(te(e)||ee(e)?v[e]=[new y(q(e))]:v[e]=[new y(`http://${e}`),new y(`https://${e}`)]),v[e]}function q(e,t=_,r){return ee(e)?r&&r.preserveProtocolRelative?e:"http"===w.scheme&&w.authority===D(e).slice(2)?`http:${e}`:`https:${e}`:te(e)?e:(0,i.j0)(B("/"===e[0]?function(e){const t=e.indexOf("//"),r=e.indexOf("/",t+2);return-1===r?e:e.slice(0,r)}(t):t,e))}function F(e,t=_,r){if(!H(e))return e;const n=Z(e),o=n.toLowerCase(),s=Z(t).toLowerCase().replace(/\/+$/,""),i=r?Z(r).toLowerCase().replace(/\/+$/,""):null;if(i&&0!==s.indexOf(i))return e;const a=(e,t,r)=>-1===(r=e.indexOf(t,r))?e.length:r;let c=a(o,"/",o.indexOf("//")+2),l=-1;for(;o.slice(0,c+1)===s.slice(0,c)+"/"&&(l=c+1,c!==o.length);)c=a(o,"/",c+1);if(-1===l)return e;if(i&&l<i.length)return e;e=n.slice(l);const u=s.slice(l-1).replace(/[^/]+/g,"").length;if(u>0)for(let t=0;t<u;t++)e=`../${e}`;else e=`./${e}`;return e}function Z(e){return function(e){const t=c.httpsDomains;if(!function(e){return f.test(e)||"http"===w.scheme&&ee(e)}(e))return e;const r=e.indexOf("/",7);let n;if(n=-1===r?e:e.slice(0,r),n=n.toLowerCase().slice(7),p.test(n)){if(!n.endsWith(":80"))return e;n=n.slice(0,-3),e=e.replace(":80","")}return"http"===w.scheme&&n===w.authority&&!b.test(e)||(oe()&&n===w.authority||t&&t.some((e=>n===e||n.endsWith(`.${e}`)))||oe()&&!I(e))&&(e=ne(e)),e}(e=function(e){return e.replace(/^(https?:\/\/)(arcgis\.com)/i,"$1www.$2")}(e=function(e){if(/^https?:\/\//i.test(e)){const t=j(e);e=(e=t.path.replace(/\/{2,}/g,"/")).replace("/","//"),t.query&&(e+=`?${t.query}`)}return e}(e=q(e=e.trim()))))}function B(...e){const t=e.filter(i.pC);if(!t||!t.length)return;const r=[];if(H(t[0])){const e=t[0],n=e.indexOf("//");-1!==n&&(r.push(e.slice(0,n+1)),function(e){return h.test(e)}(t[0])&&(r[0]+="/"),t[0]=e.slice(n+2))}else"/"===t[0][0]&&r.push("");const n=t.reduce(((e,t)=>t?e.concat(t.split("/")):e),[]);for(let e=0;e<n.length;e++){const t=n[e];".."===t&&r.length>0&&".."!==r[r.length-1]?r.pop():(!t&&e===n.length-1||t&&("."!==t||0===r.length))&&r.push(t)}return r.join("/")}function D(e,t=!1){if(z(e)||K(e))return null;let r=e.indexOf("://");if(-1===r&&ee(e))r=2;else{if(-1===r)return null;r+=3}const n=e.indexOf("/",r);return-1!==n&&(e=e.slice(0,n)),t&&(e=se(e,!0)),e}function H(e){return ee(e)||te(e)}function z(e){return null!=e&&"blob:"===e.slice(0,5)}function K(e){return"data:"===e.slice(0,5)}function Q(e){const t=Y(e);if(!t||!t.isBase64)return null;const r=atob(t.data),n=new Uint8Array(r.length);for(let e=0;e<r.length;e++)n[e]=r.charCodeAt(e);return n.buffer}const V=/^data:(.*?)(;base64)?,(.*)$/;function Y(e){const t=e.match(V);if(!t)return null;const[,r,n,o]=t;return{mediaType:r,isBase64:!!n,data:o}}function G(e){return e.isBase64?`data:${e.mediaType};base64,${e.data}`:`data:${e.mediaType},${e.data}`}function X(e,t){(function(e,t){if(!e)return!1;const r=document.createElement("a");if(!("download"in r))return!1;const n=URL.createObjectURL(e);return r.download=t,r.href=n,r.style.display="none",document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL(n),!0})(e,t)||function(e,t){!!window.navigator.msSaveOrOpenBlob&&window.navigator.msSaveOrOpenBlob(e,t)}(e,t)}function ee(e){return null!=e&&void 0!==e&&"/"===e[0]&&"/"===e[1]}function te(e){return u.test(e)}function re(e){return d.test(e)||"https"===w.scheme&&ee(e)}function ne(e){return ee(e)?`https:${e}`:e.replace(f,"https:")}function oe(){return"https"===w.scheme}function se(e,t=!1){return ee(e)?e.slice(2):(e=e.replace(u,""),t&&e.length>1&&"/"===e[0]&&"/"===e[1]&&(e=e.slice(2)),e)}function ie(e){let t=0;if(H(e)){const r=e.indexOf("//");-1!==r&&(t=r+2)}const r=e.lastIndexOf("/");return r<t?e:e.slice(0,r+1)}function ae(e,t){if(!e)return"";const r=k(e).path.replace(/\/+$/,""),n=r.substring(r.lastIndexOf("/")+1);if(null==t||!t.length)return n;const o=new RegExp(`.(${t.join("|")})$`,"ig");return n.replace(o,"")}function ce(e){return e.replace(/\/+$/,"")}function le(e,t,r){if(!(t&&r&&e&&H(e)))return e;const n=e.indexOf("//"),o=e.indexOf("/",n+2),s=e.indexOf(":",n+2),i=Math.min(o<0?e.length:o,s<0?e.length:s);return e.slice(n+2,i).toLowerCase()!==t.toLowerCase()?e:`${e.slice(0,n+2)}${r}${e.slice(i)}`}function ue(e){return"string"==typeof e?new y(q(e)):(e.scheme||(e.scheme=w.scheme),e)}function fe(e,t){const r=k(e),n=Object.keys(r.query||{});return n.length>0&&t&&t.warn("removeQueryParameters()",`Url query parameters are not supported, the following parameters have been removed: ${n.join(", ")}.`),r.path}function de(e,t,r){const n=k(e),o=n.query||{};return o[t]=String(r),`${n.path}?${E(o)}`}function he(e,t){const r=k(e),n=r.query||{};for(const e in t)n[e]=t[e];const o=E(n);return o?`${r.path}?${o}`:r.path}function pe(e){if((0,i.Wi)(e))return null;const t=e.match(be);return t?t[1]:null}const be=/.*?\.([^\/]*)$/},25045:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>y});var n=r(40330),o=r(20102),s=r(91460),i=r(70586),a=r(95330),c=r(94362),l=r(17202);const u={statsWorker:()=>Promise.all([r.e(2785),r.e(6570),r.e(9928),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(2785),r.e(6570),r.e(9928),r.e(2303),r.e(7668),r.e(4547),r.e(1534),r.e(4854),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(2785),r.e(6570),r.e(9928),r.e(4547),r.e(2781),r.e(6481),r.e(6459),r.e(3553)]).then(r.bind(r,61787)),FeatureServiceSnappingSourceWorker:()=>Promise.all([r.e(2785),r.e(6570),r.e(9928),r.e(2303),r.e(7668),r.e(4588),r.e(4547),r.e(1534),r.e(3485),r.e(4854),r.e(8961),r.e(7054),r.e(2781),r.e(5404)]).then(r.bind(r,2255)),GeoJSONSourceWorker:()=>Promise.all([r.e(2785),r.e(6570),r.e(9928),r.e(2303),r.e(7668),r.e(4547),r.e(1534),r.e(4854),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(2785),r.e(6570),r.e(9928),r.e(2303),r.e(7668),r.e(4547),r.e(1534),r.e(4854),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(2785),r.e(6570),r.e(9928),r.e(8961),r.e(147)]).then(r.bind(r,61916)),Pipeline:()=>Promise.all([r.e(2785),r.e(6570),r.e(9928),r.e(2303),r.e(7668),r.e(5638),r.e(4588),r.e(4547),r.e(1534),r.e(3485),r.e(4854),r.e(8961),r.e(7054),r.e(4325),r.e(2730),r.e(299)]).then(r.bind(r,70299)),PointCloudWorker:()=>Promise.all([r.e(2785),r.e(6570),r.e(9928),r.e(2303),r.e(4547),r.e(9294),r.e(9474)]).then(r.bind(r,16583)),RasterWorker:()=>Promise.all([r.e(2785),r.e(6570),r.e(9928),r.e(2303),r.e(4547),r.e(176),r.e(2398),r.e(5340)]).then(r.bind(r,61576)),SceneLayerWorker:()=>r.e(1412).then(r.bind(r,31412)),WFSSourceWorker:()=>Promise.all([r.e(2785),r.e(6570),r.e(9928),r.e(2303),r.e(7668),r.e(4547),r.e(1534),r.e(4854),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(4325),r.e(1785),r.e(6810),r.e(9872)]).then(r.bind(r,56456))},{CLOSE:f,ABORT:d,INVOKE:h,RESPONSE:p,OPEN_PORT:b,ON:g}=c.Cs;class m{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===c.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 y{constructor(e,t){this._port=e,this._outJobs=new Map,this._inJobs=new Map,this._invokeQueue=new m((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 n=new y(t.port1,{channel:t,client:r});return"object"==typeof r&&"remoteClient"in r&&(r.remoteClient=n),y.clients.set(n,r),t.port2}static loadWorker(e){const t=u[e];return t?t():Promise.resolve(null)}close(){this._post({type:f}),this._close()}isBusy(){return this._outJobs.size>0}invoke(e,t,r){const n=r&&r.signal,s=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 i=(0,c.jt)();return new Promise(((r,o)=>{const c=(0,a.$F)(n,(()=>{var e;const t=this._outJobs.get(i);t&&(this._outJobs.delete(i),null==(e=t.abortHandle)||e.remove(),this._post({type:d,jobId:i}),o((0,a.zE)()))})),l={resolve:r,reject:o,abortHandle:c,debugInfo:e};this._outJobs.set(i,l),this._post({type:h,jobId:i,methodName:e,abortable:null!=n},t,s)}))}on(e,t){const r=new MessageChannel;function n(e){t(e.data)}return this._port.postMessage({type:c.Cs.ON,eventType:e,port:r.port2},[r.port2]),r.port1.addEventListener("message",n),r.port1.start(),{remove(){r.port1.postMessage({type:c.Cs.CLOSE}),r.port1.close(),r.port1.removeEventListener("message",n)}}}openPort(){const e=new MessageChannel;return this._post({type:b,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,i.pC)(this._schedule)?this._schedule((()=>this._processMessage(e))):this._processMessage(e)}_processMessage(e){const t=(0,c.QM)(e);if(t)switch(t.type){case p:this._onResponseMessage(t);break;case h:this._invokeQueue.push(t);break;case d:this._onAbortMessage(t);break;case f:this._onCloseMessage();break;case b:this._onOpenPortMessage(t);break;case g:this._onOnMessage(t)}}_onAbortMessage(e){const t=this._inJobs,r=e.jobId,n=t.get(r);this._invokeQueue.push(e),n&&(n.controller&&n.controller.abort(),t.delete(r))}_onCloseMessage(){const e=this._client;this._close(),e&&"destroy"in e&&y.clients.get(this)===e&&e.destroy(),y.clients.delete(this),e&&e.remoteClient&&(e.remoteClient=null)}_onInvokeMessage(e){const{methodName:t,jobId:r,data:n,abortable:o}=e,s=o?new AbortController:null,i=this._inJobs;let l,u=this._client,f=u[t];try{if(!f&&t&&-1!==t.indexOf(".")){const e=t.split(".");for(let t=0;t<e.length-1;t++)u=u[e[t]],f=u[e[t+1]]}if("function"!=typeof f)throw new TypeError(`${t} is not a function`);l=f.call(u,n,{client:this,signal:s?s.signal:null})}catch(e){return void this._post({type:p,jobId:r,error:(0,c.AB)(e)})}(0,a.y8)(l)?(i.set(r,{controller:s,promise:l}),l.then((e=>{i.has(r)&&(i.delete(r),this._post({type:p,jobId:r},e))}),(e=>{i.has(r)&&(i.delete(r),(0,a.D_)(e)||this._post({type:p,jobId:r,error:(0,c.AB)(e||{message:`Error encountered at method ${t}`})}))}))):this._post({type:p,jobId:r},l)}_onOpenPortMessage(e){new y(e.port,{client:this._client})}_onOnMessage(e){const{port:t}=e,r=this._client.on(e.eventType,(e=>{t.postMessage(e)})),n=(0,s.on)(e.port,"message",(e=>{(0,c.QM)(e).type===c.Cs.CLOSE&&(n.remove(),r.remove(),t.close())}))}_onResponseMessage(e){var t;const{jobId:r,error:n,data:s}=e,i=this._outJobs;if(!i.has(r))return;const a=i.get(r);i.delete(r),null==(t=a.abortHandle)||t.remove(),n?a.reject(o.Z.fromJSON(JSON.parse(n))):a.resolve(s)}_post(e,t,r){return(0,c.oi)(this._port,e,t,r)}}y.kernelInfo={revision:l.$,version:n.i8,buildDate:l.r},y.clients=new Map},94362:(e,t,r)=>{"use strict";r.d(t,{Cs:()=>n,jt:()=>a,oi:()=>l,QM:()=>u,AB:()=>c});var n,o,s=r(80442);(o=n||(n={}))[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 i=0;function a(){return i++}function c(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 l(e,t,r,o){if(t.type===n.OPEN_PORT)return void e.postMessage(t,[t.port]);if(t.type!==n.INVOKE&&t.type!==n.RESPONSE)return void e.postMessage(t);let s;!function(e){return e&&"object"==typeof e&&("result"in e||"transferList"in e)}(r)?(s=f(o),t.data=r):(s=f(r.transferList),t.data=r.result),s?e.postMessage(t,s):e.postMessage(t)}function u(e){if(!e)return null;const t=e.data;return t?"string"==typeof t?JSON.parse(t):t:null}function f(e){if(!e||!e.length)return null;if((0,s.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}},40330:(e,t,r)=>{"use strict";r.d(t,{Dp:()=>l,id:()=>a,qh:()=>c,i8:()=>s,Nv:()=>i});var n=r(80442),o=r(17452);const s="4.23",i={async request(e,t){var n;const{default:s}=await r.e(3172).then(r.bind(r,3172)),i=e.options,a=i.responseType;i.signal=null==t?void 0:t.signal,i.responseType="native"===a||"native-request-init"===a?"native-request-init":["blob","json","text"].includes(a)&&null!=(n=(0,o.oh)(e.url))&&n.after?a:"array-buffer";const c=await s(e.url,i),l={data:c.data,ssl:c.ssl};switch(c.requestOptions.responseType){case"native-request-init":return delete l.data.signal,l;case"blob":l.data=await l.data.arrayBuffer();break;case"json":l.data=(new TextEncoder).encode(JSON.stringify(l.data)).buffer;break;case"text":l.data=(new TextEncoder).encode(l.data).buffer}return{result:l,transferList:[l.data]}}};let a;function c(e){a=e}function l(e){const t=a&&a.findCredential(e);return t&&t.token?(0,o.ZN)(e,"token",t.token):e}(0,n.Z)("host-webworker")||((0,n.Z)("edge")||(0,n.Z)("trident"))&&console.warn("Deprecated browser - see http://esriurl.com/oldbrowser")},17202:(e,t,r)=>{"use strict";r.d(t,{r:()=>n,$:()=>o});const n="20220206",o="7002ada77dfee03eab5aeed2c2ec221fc4e1aa07"}},t={};function r(n){var o=t[n];if(void 0!==o)return o.exports;var s=t[n]={exports:{}};return e[n](s,s.exports,r),s.exports}r.m=e,r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((t,n)=>(r.f[n](e,t),t)),[])),r.u=e=>"chunks/"+{24:"dd5a71818a989a6edb00",102:"8f9deef4d83423e413d0",147:"d08efbc349dd9f999497",176:"f9a6de00c628538f07f6",223:"e21b211913aefde47e30",247:"a0450fbf01de854f5c97",280:"7a8764ae8a0041e1151d",299:"ea50a6a994e5ee578d97",368:"b548e6b3add4154ac4e6",402:"b32bf9808cb4be3a6bd0",565:"d53ad780789f4d9124ad",576:"812a5abfadd747a09b6f",635:"e8e775758b79c5a084c8",639:"b935d0c8d5951298cc53",819:"6280c69d87b2a3a18780",966:"b6c55bdd8c957b062bc1",1074:"2d9b32e3e24631cd4e34",1412:"d3f05b8e4bd53eb1eb9d",1421:"7fa2d758a24bbaaab0bf",1433:"1def8845714ea745fd24",1534:"8ceac95537638dc9a322",1578:"a763c11d2b02b3ec36ad",1648:"d2ffb0f21363c0d3d2a9",1765:"1180ffd523c6292bc04e",1773:"2c8fe9bc988c3c5760a5",1785:"d88cb7568e2f8ac9905b",1964:"5a90d121ba79613cc2aa",2133:"3403cb53e4e60923c5fc",2134:"070a78b488f92d022495",2303:"fe635f6dcfb146d80e89",2304:"c1a70f025e90d97fac6d",2398:"aa04b90b82bf70caaae4",2399:"467b5faa1c90d9821609",2515:"70d6bb3c7112cb702389",2730:"9d11f84e6c893b9d0019",2781:"ad7e9553d03a43573a54",2785:"b2d2de935487257c568b",2953:"806a7db0084214a53c79",3027:"0c711b129d501b1d4439",3136:"bea473dba8e57617a71d",3172:"fe0c3b7c9b428d9c3f25",3230:"7351fbd8a9dbef027d06",3307:"6ea99a6e21b09674f6b3",3485:"949b2269457302ffc64b",3505:"6cd5e4380d29b9a3c344",3516:"29aa6046534a43d7ce19",3529:"ecf074743183c1749581",3553:"0c6be307709523eb8a05",3667:"49353182a16218a84251",3668:"56657f890e0f79f5d2ad",3749:"bf7c44644fe7b0aa60cf",3792:"02fbc76dfdc20e628c61",3852:"62c683f44c297d239ab8",3942:"8325b577f52936f86cff",4166:"8598f762f15ca68d52b7",4325:"dc037f1496bb4aa40d10",4358:"f977977564b2b75332a9",4369:"2076fcbae63f1bfb7143",4464:"584bbb675ed225f68171",4475:"f067b4fc65b835437afd",4499:"7b0b75878370b3475fe5",4547:"2e899ef5881b4ec6fa55",4556:"4954fd86b48cc68b737c",4579:"5b286f3f3deea10bdd91",4588:"b97953694f42bfec1b3c",4599:"8804b8489eeab888275b",4695:"0e17691520d890d34efb",4720:"d21526570300597aa6ae",4854:"7b618c449d793aacd874",4859:"5144ef135e0deb48c7bf",4889:"c3d768801f2f6cb9d5d0",5329:"0a4401a148c3cb73d6ff",5340:"dd891a98105904f8a06b",5404:"f0e5c82e9c4fbe3c9d0a",5410:"6a2b8d6a9bada45ab66d",5517:"236de5f0476f6080ee62",5638:"d304fe0ac836afd46e3d",5732:"469ba1b24cdeea0758ec",5823:"918bb7a7d901544a7367",5837:"42c67e6579b54844ec06",5845:"b33a6fbbc8de2969b1ca",5853:"5ac4c1d54b94c7d87835",6006:"7509c1693ffedc0fa018",6104:"c3192cfe115ce354ffbc",6204:"2e1291cd831592216446",6233:"3fcb1a5aec640f9707e2",6237:"c544df83e86a9d36b68c",6348:"0e215fa28a0448169132",6401:"d780e946149b1c3d1246",6434:"ff9b34572aea1245960a",6459:"7dcf52d3db3903c8eb9f",6481:"e84b935c285888a892c1",6550:"48fa8aed6c24877b44c4",6570:"836a5a96156b91fb9dca",6678:"84d8e77d78d0d5134083",6690:"65ccd204ec3053687a77",6710:"d688dd04d3a94e932ae1",6726:"90c5edcd8a609224ce55",6748:"9fbc7d2e0326be41b382",6774:"4a830f056c4d0ed93928",6810:"411db587521e12c593be",6841:"281b89dbf5574fc642ae",6968:"85b1f36790df95b17659",7049:"94d9951509c0db09547a",7054:"0d9adefd00c44585be2e",7277:"c23d965a55215168a1a2",7284:"996d6ae7f2e2273f9bce",7319:"e323086de328a164f7f0",7572:"a78757b9c7e8cbea08fa",7604:"b90509b2088fd444fc39",7616:"34bed896b68993cabaa1",7622:"18a8b9e2f6bd89827189",7668:"1f34957ef42e5b5977d0",7779:"bcc01bbffaa3bb5f60a8",7845:"8afae85018491491f773",7873:"93eb468381bfcf0e47d7",7913:"d09a0b2dc3a6fc10fa41",8014:"85b1ae51da3689bccf92",8062:"288ca064cd0472439276",8121:"4de996ebc432f5e149bc",8163:"6be326edd9829781d926",8216:"f96b24c075771d028e20",8227:"1f394b20410fddb30a96",8422:"06116433eb6e669f146b",8511:"e17edd48179d41ddf1e7",8589:"101b4f02f0572afb666f",8625:"e4019b63a1fe74e2c842",8659:"7215af7810d15e89aa5a",8683:"7c0ff01f081c7e9050d2",8758:"1571e8213feb518ff100",8828:"36de1a1959f038a61cca",8833:"f7150547d7e3259a0f29",8936:"fffea9587ec14c6d34e8",8961:"444829a840b8ded16fd7",9070:"2f8cf135b1116559659f",9101:"17c51f5a13f471e6656a",9151:"cbb291412fd1a5261aa9",9164:"bf97a933ea3b220115e1",9169:"f7ae0344257e6e08469b",9201:"88815d533808aabb1fa9",9226:"50976921acf7bd636123",9254:"6cdfe175c965918b741b",9291:"214910032945dd2d86b0",9294:"9ce961bc390202c87941",9296:"a85ed251d3d3668e474f",9474:"ebc6f4764b82d4104c65",9490:"57c67e260267a1dbc5e3",9664:"810a763373d7f78ae398",9767:"873b0cbd343dc71755ed",9872:"e522adbf821858c4f984",9884:"356db8b8297282c77291",9928:"eccba071ced2d922bb85",9932:"a363fb40096679b011f6",9938:"8c8c0ecdf44fdbb56000",9989:"a41522b0a853b85c8269"}[e]+".js",r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;r.g.importScripts&&(e=r.g.location+"");var t=r.g.document;if(!e&&t&&(t.currentScript&&(e=t.currentScript.src),!e)){var n=t.getElementsByTagName("script");n.length&&(e=n[n.length-1].src)}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),r.p=e})(),(()=>{var e={134:1,102:1};r.f.i=(t,n)=>{e[t]||importScripts(r.p+r.u(t))};var t=self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[],n=t.push.bind(t);t.push=t=>{var[o,s,i]=t;for(var a in s)r.o(s,a)&&(r.m[a]=s[a]);for(i&&i(r);o.length;)e[o.pop()]=1;n(t)}})(),r(88277);var n=r(25045);RemoteClient=n})();
1
+ var RemoteClient;(()=>{var e={88277:(e,t,r)=>{r.p=self.esriConfig.assetsPath+"/esri/core/workers/"},68773:(e,t,r)=>{"use strict";r.d(t,{Z:()=>i}),r(80442);var n,o=r(78286),s=r(17202);const i={apiKey:void 0,applicationUrl:null==(n=globalThis.location)?void 0:n.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",routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",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&&((0,o.RH)(i,globalThis.esriConfig,!0),delete i.has),!i.assetsPath){const e="4.23.0";i.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@${e}-next.${s.r}/assets`}i.baseUrl&&console.warn("[esri.config]","baseUrl has been replaced by assetsPath"),Object.defineProperty(i,"baseUrl",{set(){console.warn("[esri.config]","baseUrl has been replaced by assetsPath")}}),i.request.corsEnabledServers=[],i.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}},20102:(e,t,r)=>{"use strict";r.d(t,{Z:()=>i});var n=r(22974),o=r(92604),s=r(58896);class i extends s.Z{constructor(e,t,r){if(super(e,t,r),!(this instanceof i))return new i(e,t,r)}toJSON(){if(null!=this.details)try{return{name:this.name,message:this.message,details:JSON.parse(JSON.stringify(this.details,((e,t)=>{if(t&&"object"==typeof t&&"function"==typeof t.toJSON)return t;try{return(0,n.d9)(t)}catch(e){return"[object]"}})))}}catch(e){throw o.Z.getLogger("esri.core.Error").error(e),e}return{name:this.name,message:this.message,details:this.details}}static fromJSON(e){return new i(e.name,e.message,e.details)}}i.prototype.type="error"},92604:(e,t,r)=>{"use strict";r.d(t,{Z:()=>a});var n=r(68773),o=(r(80442),r(70586)),s=r(19153);const i={info:0,warn:1,error:2,none:3};class a{constructor(e){this.level=null,this._module="",this._parent=null,this.writer=null,this._loggedMessages={error:new Map,warn:new Map,info:new Map},null!=e.level&&(this.level=e.level),null!=e.writer&&(this.writer=e.writer),this._module=e.module,a._loggers[this.module]=this;const t=this.module.lastIndexOf(".");-1!==t&&(this._parent=a.getLogger(this.module.slice(0,t)))}get module(){return this._module}get parent(){return this._parent}error(...e){this._log("error","always",...e)}warn(...e){this._log("warn","always",...e)}info(...e){this._log("info","always",...e)}errorOnce(...e){this._log("error","once",...e)}warnOnce(...e){this._log("warn","once",...e)}infoOnce(...e){this._log("info","once",...e)}errorOncePerTick(...e){this._log("error","oncePerTick",...e)}warnOncePerTick(...e){this._log("warn","oncePerTick",...e)}infoOncePerTick(...e){this._log("info","oncePerTick",...e)}get test(){const e=this;return{loggedMessages:e._loggedMessages,clearLoggedWarnings:()=>e._loggedMessages.warn.clear()}}static get testSingleton(){return{resetLoggers(e={}){const t=a._loggers;return a._loggers=e,t},set throttlingDisabled(e){a._throttlingDisabled=e}}}static getLogger(e){let t=a._loggers[e];return t||(t=new a({module:e})),t}_log(e,t,...r){if(this._matchLevel(e)){if("always"!==t&&!a._throttlingDisabled){const n=this._argsToKey(r),o=this._loggedMessages[e].get(n);if("once"===t&&null!=o||"oncePerTick"===t&&o&&o>=a._tickCounter)return;this._loggedMessages[e].set(n,a._tickCounter),a._scheduleTickCounterIncrement()}for(const t of n.Z.log.interceptors)if(t(e,this.module,...r))return;this._inheritedWriter()(e,this.module,...r)}}_parentWithMember(e,t){let r=this;for(;(0,o.pC)(r);){const t=r[e];if((0,o.pC)(t))return t;r=r.parent}return t}_inheritedWriter(){return this._parentWithMember("writer",this._consoleWriter)}_consoleWriter(e,t,...r){console[e](`[${t}]`,...r)}_matchLevel(e){const t=n.Z.log.level?n.Z.log.level:"warn";return i[this._parentWithMember("level",t)]<=i[e]}_argsToKey(...e){return(0,s.hP)(JSON.stringify(e,((e,t)=>"object"!=typeof t||Array.isArray(t)?t:"[Object]")))}static _scheduleTickCounterIncrement(){a._tickCounterScheduled||(a._tickCounterScheduled=!0,Promise.resolve().then((()=>{a._tickCounter++,a._tickCounterScheduled=!1})))}}a._loggers={},a._tickCounter=0,a._tickCounterScheduled=!1,a._throttlingDisabled=!1},58896:(e,t,r)=>{"use strict";r.d(t,{Z:()=>o});var n=r(78286);class o{constructor(e,t,r){this.name=e,this.details=r,this.message=void 0,this instanceof o&&(this.message=t&&function(e,t){return e.replace(/\$\{([^\s\:\}]*)(?:\:([^\s\:\}]+))?\}/g,(function(e,r){if(""===r)return"$";const o=(0,n.hS)(r,t),s=null==o?"":o;if(void 0===s)throw new Error(`could not find key "${r}" in template`);return s.toString()}))}(t,r)||"")}toString(){return"["+this.name+"]: "+this.message}}},77734:(e,t,r)=>{"use strict";r.d(t,{Z:()=>n});class n{constructor(e=1){this._seed=e}set seed(e){this._seed=null==e?Math.random()*n._m:e}getInt(){return this._seed=(n._a*this._seed+n._c)%n._m,this._seed}getFloat(){return this.getInt()/(n._m-1)}getIntRange(e,t){return Math.round(this.getFloatRange(e,t))}getFloatRange(e,t){const r=t-e;return e+this.getInt()/n._m*r}}n._m=2147483647,n._a=48271,n._c=0},67676:(e,t,r)=>{"use strict";r.d(t,{SO:()=>u,a9:()=>c,fS:()=>s,cq:()=>d,zG:()=>i,w6:()=>l,Od:()=>g,e$:()=>h,FY:()=>b});var n=r(70586),o=r(77734);function s(e,t,r){if((0,n.Wi)(e)&&(0,n.Wi)(t))return!0;if((0,n.Wi)(e)||(0,n.Wi)(t)||e.length!==t.length)return!1;if(r){for(let n=0;n<e.length;n++)if(!r(e[n],t[n]))return!1}else for(let r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0}function i(e){return e&&"number"==typeof e.length}const a=!!Array.prototype.fill;function c(e,t){if(a)return new Array(e).fill(t);const r=new Array(e);for(let n=0;n<e;n++)r[n]=t;return r}function l(e,t){void 0===t&&(t=e,e=0);const r=new Array(t-e);for(let n=e;n<t;n++)r[n-e]=n;return r}class u{constructor(){this.last=0}}const f=new u;function d(e,t,r,n){n=n||f;const o=Math.max(0,n.last-10);for(let s=o;s<r;++s)if(e[s]===t)return n.last=s,s;const s=Math.min(o,r);for(let r=0;r<s;++r)if(e[r]===t)return n.last=r,r;return-1}function h(e,t,r,n){const o=null==r?e.length:r,s=d(e,t,o,n);if(-1!==s)return e[s]=e[o-1],null==r&&e.pop(),t}const p=new Set;function b(e,t,r=e.length,n=t.length,o,s){if(0===n||0===r)return r;p.clear();for(let e=0;e<n;++e)p.add(t[e]);o=o||f;const i=Math.max(0,o.last-10);for(let t=i;t<r;++t)if(p.has(e[t])&&(s&&s.push(e[t]),p.delete(e[t]),e[t]=e[r-1],--r,--t,0===p.size||0===r))return p.clear(),r;for(let t=0;t<i;++t)if(p.has(e[t])&&(s&&s.push(e[t]),p.delete(e[t]),e[t]=e[r-1],--r,--t,0===p.size||0===r))return p.clear(),r;return p.clear(),r}function g(e,t){const r=e.indexOf(t);return-1!==r?(e.splice(r,1),t):null}new o.Z},91460:(e,t,r)=>{"use strict";function n(e){return e&&("function"==typeof e.on||"function"==typeof e.addEventListener)}function o(e,t,r){if(!n(e))throw new TypeError("target is not a Evented or EventTarget object");if("on"in e)return e.on(t,r);if(Array.isArray(t)){const n=t.slice();for(const t of n)e.addEventListener(t,r);return{remove(){for(const t of n)e.removeEventListener(t,r)}}}return e.addEventListener(t,r),{remove(){e.removeEventListener(t,r)}}}function s(e,t,r){if(!n(e))throw new TypeError("target is not a Evented or EventTarget object");if("once"in e)return e.once(t,r);const s=o(e,t,(t=>{s.remove(),r.call(e,t)}));return{remove(){s.remove()}}}r.d(t,{vT:()=>n,on:()=>o,IH:()=>s})},80442:(e,t,r)=>{"use strict";var n,o;let s;var i,a;function c(e){return"function"==typeof s[e]?s[e]=s[e](globalThis):s[e]}r.d(t,{Z:()=>c}),s=null!=(n=globalThis.dojoConfig)&&n.has||null!=(o=globalThis.esriConfig)&&o.has?{...null==(i=globalThis.dojoConfig)?void 0:i.has,...null==(a=globalThis.esriConfig)?void 0:a.has}:{},c.add=(e,t,r,n)=>((n||void 0===s[e])&&(s[e]=t),r&&c(e)),c.cache=s,c.add("esri-deprecation-warnings",!0),(()=>{var e;c.add("host-webworker",void 0!==globalThis.WorkerGlobalScope&&self instanceof globalThis.WorkerGlobalScope);const t="undefined"!=typeof window&&"undefined"!=typeof location&&"undefined"!=typeof document&&window.location===location&&window.document===document;if(c.add("host-browser",t),c.add("host-node","object"==typeof globalThis.process&&(null==(e=globalThis.process.versions)?void 0:e.node)&&globalThis.process.versions.v8),c.add("dom",t),c("host-browser")){const e=navigator,t=e.userAgent,r=e.appVersion,n=parseFloat(r);if(c.add("wp",parseFloat(t.split("Windows Phone")[1])||void 0),c.add("msapp",parseFloat(t.split("MSAppHost/")[1])||void 0),c.add("khtml",r.includes("Konqueror")?n:void 0),c.add("edge",parseFloat(t.split("Edge/")[1])||void 0),c.add("opr",parseFloat(t.split("OPR/")[1])||void 0),c.add("webkit",!c("wp")&&!c("edge")&&parseFloat(t.split("WebKit/")[1])||void 0),c.add("chrome",!c("edge")&&!c("opr")&&parseFloat(t.split("Chrome/")[1])||void 0),c.add("android",!c("wp")&&parseFloat(t.split("Android ")[1])||void 0),c.add("safari",!r.includes("Safari")||c("wp")||c("chrome")||c("android")||c("edge")||c("opr")?void 0:parseFloat(r.split("Version/")[1])),c.add("mac",r.includes("Macintosh")),!c("wp")&&t.match(/(iPhone|iPod|iPad)/)){const e=RegExp.$1.replace(/P/,"p"),r=t.match(/OS ([\d_]+)/)?RegExp.$1:"1",n=parseFloat(r.replace(/_/,".").replace(/_/g,""));c.add(e,n),c.add("ios",n)}c.add("trident",parseFloat(r.split("Trident/")[1])||void 0),c("webkit")||(!t.includes("Gecko")||c("wp")||c("khtml")||c("trident")||c("edge")||c.add("mozilla",n),c("mozilla")&&c.add("ff",parseFloat(t.split("Firefox/")[1]||t.split("Minefield/")[1])||void 0))}})(),(()=>{if(globalThis.navigator){const e=navigator.userAgent,t=/Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini|IEMobile/i.test(e),r=/iPhone/i.test(e);t&&c.add("esri-mobile",t),r&&c.add("esri-iPhone",r),c.add("esri-geolocation",!!navigator.geolocation)}c.add("esri-canvas-svg-support",!c("trident")),c.add("esri-wasm","WebAssembly"in globalThis),c.add("esri-shared-array-buffer",(()=>{const e="SharedArrayBuffer"in globalThis,t=!1===globalThis.crossOriginIsolated;return e&&!t})),c.add("esri-atomics","Atomics"in globalThis),c.add("esri-workers","Worker"in globalThis),c.add("web-feat:cache","caches"in globalThis),c.add("esri-workers-arraybuffer-transfer",!c("safari")||Number(c("safari"))>=12),c.add("featurelayer-simplify-thresholds",[.5,.5,.5,.5]),c.add("featurelayer-simplify-payload-size-factors",[1,1,4]),c.add("featurelayer-snapshot-enabled",!0),c.add("featurelayer-snapshot-point-min-threshold",8e4),c.add("featurelayer-snapshot-point-max-threshold",4e5),c.add("featurelayer-snapshot-point-coverage",.1),c.add("featurelayer-advanced-symbols",!1),c.add("featurelayer-pbf",!0),c.add("featurelayer-pbf-statistics",!1),c.add("feature-layers-workers",!0),c.add("feature-polyline-generalization-factor",1),c.add("mapview-transitions-duration",200),c.add("mapserver-pbf-enabled",!1),c.add("vectortilelayer-max-buffers",c("ff")?160:Number.POSITIVE_INFINITY),c("host-webworker")||c("host-browser")&&(c.add("esri-csp-restrictions",(()=>{try{new Function}catch{return!0}return!1})),c.add("esri-image-decode",(()=>{if("decode"in new Image){const e=new Image;return e.src='data:image/svg+xml;charset=UTF-8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg"></svg>',void e.decode().then((()=>{c.add("esri-image-decode",!0,!0,!0)})).catch((()=>{c.add("esri-image-decode",!1,!0,!0)}))}return!1})),c.add("esri-url-encodes-apostrophe",(()=>{const e=window.document.createElement("a");return e.href="?'",e.href.includes("?%27")})))})()},22974:(e,t,r)=>{"use strict";r.d(t,{d9:()=>i,fS:()=>d,yd:()=>s,Vo:()=>a}),r(67676),r(80442);var n=r(70586),o=r(1533);function s(e,t){let r;if(t)for(r in e)e.hasOwnProperty(r)&&(void 0===e[r]?delete e[r]:e[r]instanceof Object&&s(e[r],!0));else for(r in e)e.hasOwnProperty(r)&&void 0===e[r]&&delete e[r];return e}function i(e){if(!e||"object"!=typeof e||"function"==typeof e)return e;const t=f(e);if((0,n.pC)(t))return t;if(c(e))return e.clone();if(l(e))return e.map(i);if(u(e))return e.clone();const r={};for(const t of Object.getOwnPropertyNames(e))r[t]=i(e[t]);return r}function a(e){if(!e||"object"!=typeof e||"function"==typeof e)return e;const t=f(e);if((0,n.pC)(t))return t;if(l(e)){let t=!0;const r=e.map((e=>{const r=a(e);return null!=e&&null==r&&(t=!1),r}));return t?r:null}if(c(e))return e.clone();if(!u(e)){const t=new(0,Object.getPrototypeOf(e).constructor);for(const r of Object.getOwnPropertyNames(e)){const n=e[r],o=a(n);if(null!=n&&null==o)return null;t[r]=o}return t}return null}function c(e){return"function"==typeof e.clone}function l(e){return"function"==typeof e.map&&"function"==typeof e.forEach}function u(e){return"function"==typeof e.notifyChange&&"function"==typeof e.watch}function f(e){if((0,o.W0)(e)||(0,o.lq)(e)||(0,o.KZ)(e)||(0,o.z3)(e)||(0,o.Uc)(e)||(0,o.Hx)(e)||(0,o.ZY)(e)||(0,o.xZ)(e)||(0,o.fS)(e))return(0,o.tP)(e);if(e instanceof Date)return new Date(e.getTime());if(e instanceof ArrayBuffer)return e.slice(0,e.byteLength);if(e instanceof Map){const t=new Map;return e.forEach(((e,r)=>{t.set(r,i(e))})),t}if(e instanceof Set){const t=new Set;return e.forEach((e=>{t.add(i(e))})),t}return null}function d(e,t){return e===t||"number"==typeof e&&isNaN(e)&&"number"==typeof t&&isNaN(t)||"function"==typeof(e||{}).getTime&&"function"==typeof(t||{}).getTime&&e.getTime()===t.getTime()||!1}},70586:(e,t,r)=>{"use strict";function n(e){return null!=e}function o(e){return null==e}function s(e){return void 0===e}function i(e,t){return n(e)?t(e):null}function a(e){return e}function c(e,t){if(o(e))throw new Error(t);return e}function l(e,t){return n(e)?e:"function"==typeof t?t():t}function u(e){return n(e)&&e.destroy(),null}function f(e){return n(e)&&e.dispose(),null}function d(e){return n(e)&&e.remove(),null}function h(e){return n(e)&&e.release(),null}function p(e){return null}function b(e,t){const r=new Array;for(const n of e)r.push(m(n,null,t));return r}function g(e,t){for(const r of e)i(r,t)}function m(e,t,r){return n(e)?r(e):t}function y(e){return e.filter((e=>n(e)))}function v(e,...t){let r=e;for(let e=0;e<t.length&&r;++e)r=r[t[e]];return r}function w(e){return e}r.d(t,{yw:()=>i,j0:()=>w,SC:()=>u,O3:()=>f,lV:()=>y,JR:()=>g,U2:()=>v,Wi:()=>o,pC:()=>n,o8:()=>s,Fd:()=>b,R2:()=>m,Bd:()=>p,RY:()=>h,hw:()=>d,Wg:()=>a,Pt:()=>l,s3:()=>c})},78286:(e,t,r)=>{"use strict";r.d(t,{RH:()=>o,hS:()=>s,RB:()=>i});var n=r(22974);function o(e,t,r=!1){return c(e,t,r)}function s(e,t){if(null!=t)return t[e]||a(e.split("."),!1,t)}function i(e,t,r){const n=e.split("."),o=n.pop(),s=a(n,!0,r);s&&o&&(s[o]=t)}function a(e,t,r){let n=r;for(const r of e){if(null==n)return;if(!(r in n)){if(!t)return;n[r]={}}n=n[r]}return n}function c(e,t,r){return t?Object.keys(t).reduce((function(e,o){let s=e[o],i=t[o];return s===i?e:void 0===s?(e[o]=(0,n.d9)(i),e):(Array.isArray(i)||Array.isArray(e)?(s=s?Array.isArray(s)?e[o]=s.concat():e[o]=[s]:e[o]=[],i&&(Array.isArray(i)||(i=[i]),r?i.forEach((e=>{-1===s.indexOf(e)&&s.push(e)})):e[o]=i.concat())):i&&"object"==typeof i?e[o]=c(s,i,r):e.hasOwnProperty(o)&&!t.hasOwnProperty(o)||(e[o]=i),e)}),e||{}):e}},95330:(e,t,r)=>{"use strict";r.d(t,{e4:()=>C,$6:()=>c,Ue:()=>l,zE:()=>u,dD:()=>_,hh:()=>x,vr:()=>j,Ds:()=>T,as:()=>O,WW:()=>P,R8:()=>w,D_:()=>v,Hc:()=>h,y8:()=>E,fu:()=>g,$F:()=>m,d1:()=>k,DB:()=>S,r9:()=>p,k_:()=>f,H9:()=>b,Yn:()=>M,gx:()=>A,Hl:()=>y});const n=(o=globalThis,{setTimeout:(e,t)=>{const r=o.setTimeout(e,t);return{remove:()=>o.clearTimeout(r)}}});var o,s=r(20102),i=r(91460),a=(r(92604),r(70586));function c(e){return Promise.all(e)}function l(e){return new Promise(((t,r)=>{try{e(t,r)}catch(e){Promise.resolve().then((()=>r(e)))}}))}function u(e="Aborted"){return new s.Z("AbortError",e)}function f(e,t="Aborted"){if(h(e))throw u(t)}function d(e){return(0,a.pC)(e)?"aborted"in e?e:e.signal:e}function h(e){const t=d(e);return(0,a.pC)(t)&&t.aborted}function p(e){if(v(e))throw e}function b(e){if(!v(e))throw e}function g(e,t){const r=d(e);if(!(0,a.Wi)(r)){if(!r.aborted)return(0,i.IH)(r,"abort",(()=>t()));t()}}function m(e,t){const r=d(e);if(!(0,a.Wi)(r))return f(r),(0,i.IH)(r,"abort",(()=>t(u())))}function y(e,t){const r=d(t);return(0,a.Wi)(r)?e:new Promise(((r,n)=>{let o=g(t,(()=>n(u())));const s=()=>o=(0,a.hw)(o);e.then(s,s),e.then(r,n)}))}function v(e){return e&&"AbortError"===e.name}function w(e){return e.catch((e=>{if(!v(e))throw e}))}function _(){let e=null;const t=new Promise(((t,r)=>{e={promise:void 0,resolve:t,reject:r}}));return e.promise=t,e}function O(e){if(!e)return;if("function"!=typeof e.forEach){const t=Object.keys(e);return O(t.map((t=>e[t]))).then((e=>{const r={};return t.forEach(((t,n)=>r[t]=e[n])),r}))}const t=e;return l((e=>{const r=[];let n=t.length;0===n&&e(r),t.forEach((t=>{const o={promise:t||Promise.resolve(t)};r.push(o),o.promise.then((e=>{o.value=e})).catch((e=>{o.error=e})).then((()=>{--n,0===n&&e(r)}))}))}))}function P(e){return O(e).then((e=>e.filter((e=>!!e.value)).map((e=>e.value))))}function k(e){return Promise.reject(e)}function S(e){return Promise.resolve(e)}function C(e,t,r){const n=new AbortController;return g(r,(()=>n.abort())),new Promise(((r,o)=>{let s=setTimeout((()=>{s=0,r(t)}),e);g(n,(()=>{s&&(clearTimeout(s),o(u()))}))}))}function E(e){return e&&"function"==typeof e.then}function A(e){return E(e)?e:Promise.resolve(e)}function T(e,t=-1){let r,n,o,s,i=null;const c=(...l)=>{if(r){n=l,s&&s.reject(u()),s=_();const e=(0,a.j0)(s.promise);if(i){const e=i;i=null,e.abort()}return e}if(o=s||_(),s=null,t>0){const n=new AbortController;r=A(e(...l,n.signal));const o=r;C(t).then((()=>{r===o&&(s?n.abort():i=n)}))}else r=1,r=A(e(...l));const f=()=>{const e=n;n=o=r=i=null,null!=e&&c(...e)},d=r,h=o;return d.then(f,f),d.then(h.resolve,h.reject),(0,a.j0)(h.promise)};return c}function x(){let e,t;const r=new Promise(((r,n)=>{e=r,t=n})),o=t=>{e(t)};return o.resolve=t=>e(t),o.reject=e=>t(e),o.timeout=(e,t)=>n.setTimeout((()=>o.reject(t)),e),o.promise=r,o}function j(e,t){let r,n=new AbortController;const o=e(n.signal);let s={promise:o,finished:!1,abort:()=>{n&&(n.abort(),n=null)}};const i=()=>{s&&(s.finished=!0,s=null),(0,a.pC)(r)&&(r.remove(),r=null),n=null};return o.then(i,i),r=g(t,(()=>{(0,a.pC)(s)&&s.abort()})),s}function M(e){return Promise.resolve().then((()=>{f(e)}))}},19153:(e,t,r)=>{"use strict";r.d(t,{Qs:()=>a,hP:()=>c,gx:()=>i,Cb:()=>l});var n=r(78286);const o=/\{([^\}]+)\}/g;function s(e){return null==e?"":e}function i(e,t){return e.replace(o,"object"==typeof t?(e,r)=>s((0,n.hS)(r,t)):(e,r)=>s(t(r)))}function a(e,t){return e.replace(/([\.$?*|{}\(\)\[\]\\\/\+\-^])/g,(e=>t&&-1!==t.indexOf(e)?e:`\\${e}`))}function c(e){let t=0;for(let r=0;r<e.length;r++)t=(t<<5)-t+e.charCodeAt(r),t|=0;return t}function l(e){return(new DOMParser).parseFromString(e||"","text/html").body.innerText||""}},1533:(e,t,r)=>{"use strict";function n(e,t){if(e.forEach)e.forEach(t);else for(let r=0;r<e.length;r++)t(e[r],r,e)}function o(e,t,r){if(e.slice)return e.slice(t,r);void 0===t?t=0:(t<0&&(t+=e.length),t=Math.min(e.length,Math.max(0,t))),void 0===r?r=e.length:(r<0&&(r+=e.length),r=Math.min(e.length,Math.max(0,r)));const n=Math.max(0,r-t),o=new(0,e.constructor)(n);for(let r=0;r<n;r++)o[r]=e[t+r];return o}function s(e){return e instanceof ArrayBuffer||e&&e.constructor&&"ArrayBuffer"===e.constructor.name}function i(e){return e instanceof Int8Array||e&&e.constructor&&"Int8Array"===e.constructor.name}function a(e){return e instanceof Uint8Array||e&&e.constructor&&"Uint8Array"===e.constructor.name}function c(e){return e instanceof Uint8ClampedArray||e&&e.constructor&&"Uint8ClampedArray"===e.constructor.name}function l(e){return e instanceof Int16Array||e&&e.constructor&&"Int16Array"===e.constructor.name}function u(e){return e instanceof Uint16Array||e&&e.constructor&&"Uint16Array"===e.constructor.name}function f(e){return e instanceof Int32Array||e&&e.constructor&&"Int32Array"===e.constructor.name}function d(e){return e instanceof Uint32Array||e&&e.constructor&&"Uint32Array"===e.constructor.name}function h(e){return e instanceof Float32Array||e&&e.constructor&&"Float32Array"===e.constructor.name}function p(e){return e instanceof Float64Array||e&&e.constructor&&"Float64Array"===e.constructor.name}r.d(t,{Ed:()=>n,eP:()=>s,xZ:()=>h,fS:()=>p,z3:()=>l,Hx:()=>f,W0:()=>i,Uc:()=>u,ZY:()=>d,lq:()=>a,KZ:()=>c,tP:()=>o})},17452:(e,t,r)=>{"use strict";r.d(t,{R9:()=>y,qg:()=>T,tD:()=>$,ZN:()=>de,fl:()=>he,Ie:()=>le,sJ:()=>Y,AH:()=>Q,io:()=>X,L:()=>P,TI:()=>O,vt:()=>ae,oh:()=>U,P$:()=>D,Ml:()=>pe,ed:()=>I,b7:()=>A,D6:()=>W,tm:()=>N,YP:()=>H,jc:()=>z,HK:()=>K,$U:()=>re,oC:()=>ee,kl:()=>L,v_:()=>B,hF:()=>q,_l:()=>G,PF:()=>F,Fv:()=>Z,B7:()=>E,u0:()=>S,Yd:()=>ie,Hu:()=>fe,Qj:()=>ce,hO:()=>ne,mN:()=>k});var n=r(68773),o=r(20102),s=r(92604),i=r(70586);const a=s.Z.getLogger("esri.core.urlUtils"),c=n.Z.request,l="esri/config: esriConfig.request.proxyUrl is not set.",u=/^\s*[a-z][a-z0-9-+.]*:(?![0-9])/i,f=/^\s*http:/i,d=/^\s*https:/i,h=/^\s*file:/i,p=/:\d+$/,b=/^https?:\/\/[^/]+\.arcgis.com\/sharing(\/|$)/i,g=new RegExp("^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\\?([^#]*))?(#(.*))?$"),m=new RegExp("^((([^\\[:]+):)?([^@]+)@)?(\\[([^\\]]+)\\]|([^\\[:]*))(:([0-9]+))?$");class y{constructor(e=""){this.uri=e,this.scheme=null,this.authority=null,this.path=null,this.query=null,this.fragment=null,this.user=null,this.password=null,this.host=null,this.port=null;let t=(0,i.j0)(this.uri.match(g));this.scheme=t[2]||(t[1]?"":null),this.authority=t[4]||(t[3]?"":null),this.path=t[5],this.query=t[7]||(t[6]?"":null),this.fragment=t[9]||(t[8]?"":null),null!=this.authority&&(t=(0,i.j0)(this.authority.match(m)),this.user=t[3]||null,this.password=t[4]||null,this.host=t[6]||t[7],this.port=t[9]||null)}toString(){return this.uri}}const v={};let w=new y(n.Z.applicationUrl);let _=function(){const e=(0,i.j0)(w.path),t=e.substring(0,e.lastIndexOf(e.split("/")[e.split("/").length-1]));return`${w.scheme}://${w.host}${null!=w.port?`:${w.port}`:""}${t}`}();const O=()=>w,P=()=>_;function k(e){const t={path:null,query:null},r=new y(e),n=e.indexOf("?");return null===r.query?t.path=e:(t.path=e.substring(0,n),t.query=S(r.query)),r.fragment&&(t.hash=r.fragment,null===r.query&&(t.path=t.path.substring(0,t.path.length-(r.fragment.length+1)))),t}function S(e){const t=e.split("&"),r={};for(const e of t){if(!e)continue;const t=e.indexOf("=");let n,o;t<0?(n=decodeURIComponent(e),o=""):(n=decodeURIComponent(e.slice(0,t)),o=decodeURIComponent(e.slice(t+1)));let s=r[n];"string"==typeof s&&(s=r[n]=[s]),Array.isArray(s)?s.push(o):r[n]=o}return r}function C(e){return e&&"object"==typeof e&&"toJSON"in e&&"function"==typeof e.toJSON}function E(e,t){return e?t&&"function"==typeof t?Object.keys(e).map((r=>encodeURIComponent(r)+"="+encodeURIComponent(t(r,e[r])))).join("&"):Object.keys(e).map((r=>{const n=e[r];if(null==n)return"";const o=encodeURIComponent(r)+"=",s=t&&t[r];return s?o+encodeURIComponent(s(n)):Array.isArray(n)?n.map((e=>C(e)?o+encodeURIComponent(JSON.stringify(e)):o+encodeURIComponent(e))).join("&"):C(n)?o+encodeURIComponent(JSON.stringify(n)):o+encodeURIComponent(n)})).filter((e=>e)).join("&"):""}function A(e=!1){let t,r=c.proxyUrl;if("string"==typeof e){t=re(e);const n=I(e);n&&(r=n.proxyUrl)}else t=!!e;if(!r)throw a.warn(l),new o.Z("urlutils:proxy-not-set",l);return t&&oe()&&(r=ne(r)),k(r)}function T(e){const t=I(e);let r,n;if(t){const e=j(t.proxyUrl);r=e.path,n=e.query?S(e.query):null}if(r){const t=k(e);e=r+"?"+t.path;const o=E({...n,...t.query});o&&(e=`${e}?${o}`)}return e}const x={path:"",query:""};function j(e){const t=e.indexOf("?");return-1!==t?(x.path=e.slice(0,t),x.query=e.slice(t+1)):(x.path=e,x.query=null),x}function M(e){return(e=se(e=function(e){return e&&"/"===e[e.length-1]?e:`${e}/`}(e=j(e).path),!0)).toLowerCase()}function $(e){const t={proxyUrl:e.proxyUrl,urlPrefix:M(e.urlPrefix)},r=c.proxyRules,n=t.urlPrefix;let o=r.length;for(let e=0;e<r.length;e++){const t=r[e].urlPrefix;if(0===n.indexOf(t)){if(n.length===t.length)return-1;o=e;break}0===t.indexOf(n)&&(o=e+1)}return r.splice(o,0,t),o}function I(e){const t=c.proxyRules,r=M(e);for(let e=0;e<t.length;e++)if(0===r.indexOf(t[e].urlPrefix))return t[e]}function N(e,t){return e=R(e),t=R(t),se(e)===se(t)}function R(e){const t=(e=Z(e)).indexOf("/sharing");return t>0?e.substring(0,t):e.replace(/\/+$/,"")}function U(e){const t=t=>null==t||t instanceof RegExp&&t.test(e)||"string"==typeof t&&e.startsWith(t),r=c.interceptors;if(r)for(const e of r)if(Array.isArray(e.urls)){if(e.urls.some(t))return e}else if(t(e.urls))return e;return null}function W(e,t,r=!1){const n=ue(e),o=ue(t);return!(!r&&n.scheme!==o.scheme)&&null!=n.host&&null!=o.host&&n.host.toLowerCase()===o.host.toLowerCase()&&n.port===o.port}function L(e){if("string"==typeof e){if(!H(e))return!0;e=ue(e)}if(W(e,w))return!0;const t=c.trustedServers||[];for(let r=0;r<t.length;r++){const n=J(t[r]);for(let t=0;t<n.length;t++)if(W(e,n[t]))return!0}return!1}function J(e){return v[e]||(te(e)||ee(e)?v[e]=[new y(q(e))]:v[e]=[new y(`http://${e}`),new y(`https://${e}`)]),v[e]}function q(e,t=_,r){return ee(e)?r&&r.preserveProtocolRelative?e:"http"===w.scheme&&w.authority===D(e).slice(2)?`http:${e}`:`https:${e}`:te(e)?e:(0,i.j0)(B("/"===e[0]?function(e){const t=e.indexOf("//"),r=e.indexOf("/",t+2);return-1===r?e:e.slice(0,r)}(t):t,e))}function F(e,t=_,r){if(!H(e))return e;const n=Z(e),o=n.toLowerCase(),s=Z(t).toLowerCase().replace(/\/+$/,""),i=r?Z(r).toLowerCase().replace(/\/+$/,""):null;if(i&&0!==s.indexOf(i))return e;const a=(e,t,r)=>-1===(r=e.indexOf(t,r))?e.length:r;let c=a(o,"/",o.indexOf("//")+2),l=-1;for(;o.slice(0,c+1)===s.slice(0,c)+"/"&&(l=c+1,c!==o.length);)c=a(o,"/",c+1);if(-1===l)return e;if(i&&l<i.length)return e;e=n.slice(l);const u=s.slice(l-1).replace(/[^/]+/g,"").length;if(u>0)for(let t=0;t<u;t++)e=`../${e}`;else e=`./${e}`;return e}function Z(e){return function(e){const t=c.httpsDomains;if(!function(e){return f.test(e)||"http"===w.scheme&&ee(e)}(e))return e;const r=e.indexOf("/",7);let n;if(n=-1===r?e:e.slice(0,r),n=n.toLowerCase().slice(7),p.test(n)){if(!n.endsWith(":80"))return e;n=n.slice(0,-3),e=e.replace(":80","")}return"http"===w.scheme&&n===w.authority&&!b.test(e)||(oe()&&n===w.authority||t&&t.some((e=>n===e||n.endsWith(`.${e}`)))||oe()&&!I(e))&&(e=ne(e)),e}(e=function(e){return e.replace(/^(https?:\/\/)(arcgis\.com)/i,"$1www.$2")}(e=function(e){if(/^https?:\/\//i.test(e)){const t=j(e);e=(e=t.path.replace(/\/{2,}/g,"/")).replace("/","//"),t.query&&(e+=`?${t.query}`)}return e}(e=q(e=e.trim()))))}function B(...e){const t=e.filter(i.pC);if(!t||!t.length)return;const r=[];if(H(t[0])){const e=t[0],n=e.indexOf("//");-1!==n&&(r.push(e.slice(0,n+1)),function(e){return h.test(e)}(t[0])&&(r[0]+="/"),t[0]=e.slice(n+2))}else"/"===t[0][0]&&r.push("");const n=t.reduce(((e,t)=>t?e.concat(t.split("/")):e),[]);for(let e=0;e<n.length;e++){const t=n[e];".."===t&&r.length>0&&".."!==r[r.length-1]?r.pop():(!t&&e===n.length-1||t&&("."!==t||0===r.length))&&r.push(t)}return r.join("/")}function D(e,t=!1){if(z(e)||K(e))return null;let r=e.indexOf("://");if(-1===r&&ee(e))r=2;else{if(-1===r)return null;r+=3}const n=e.indexOf("/",r);return-1!==n&&(e=e.slice(0,n)),t&&(e=se(e,!0)),e}function H(e){return ee(e)||te(e)}function z(e){return null!=e&&"blob:"===e.slice(0,5)}function K(e){return"data:"===e.slice(0,5)}function Q(e){const t=Y(e);if(!t||!t.isBase64)return null;const r=atob(t.data),n=new Uint8Array(r.length);for(let e=0;e<r.length;e++)n[e]=r.charCodeAt(e);return n.buffer}const V=/^data:(.*?)(;base64)?,(.*)$/;function Y(e){const t=e.match(V);if(!t)return null;const[,r,n,o]=t;return{mediaType:r,isBase64:!!n,data:o}}function G(e){return e.isBase64?`data:${e.mediaType};base64,${e.data}`:`data:${e.mediaType},${e.data}`}function X(e,t){(function(e,t){if(!e)return!1;const r=document.createElement("a");if(!("download"in r))return!1;const n=URL.createObjectURL(e);return r.download=t,r.href=n,r.style.display="none",document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL(n),!0})(e,t)||function(e,t){!!window.navigator.msSaveOrOpenBlob&&window.navigator.msSaveOrOpenBlob(e,t)}(e,t)}function ee(e){return null!=e&&void 0!==e&&"/"===e[0]&&"/"===e[1]}function te(e){return u.test(e)}function re(e){return d.test(e)||"https"===w.scheme&&ee(e)}function ne(e){return ee(e)?`https:${e}`:e.replace(f,"https:")}function oe(){return"https"===w.scheme}function se(e,t=!1){return ee(e)?e.slice(2):(e=e.replace(u,""),t&&e.length>1&&"/"===e[0]&&"/"===e[1]&&(e=e.slice(2)),e)}function ie(e){let t=0;if(H(e)){const r=e.indexOf("//");-1!==r&&(t=r+2)}const r=e.lastIndexOf("/");return r<t?e:e.slice(0,r+1)}function ae(e,t){if(!e)return"";const r=k(e).path.replace(/\/+$/,""),n=r.substring(r.lastIndexOf("/")+1);if(null==t||!t.length)return n;const o=new RegExp(`.(${t.join("|")})$`,"ig");return n.replace(o,"")}function ce(e){return e.replace(/\/+$/,"")}function le(e,t,r){if(!(t&&r&&e&&H(e)))return e;const n=e.indexOf("//"),o=e.indexOf("/",n+2),s=e.indexOf(":",n+2),i=Math.min(o<0?e.length:o,s<0?e.length:s);return e.slice(n+2,i).toLowerCase()!==t.toLowerCase()?e:`${e.slice(0,n+2)}${r}${e.slice(i)}`}function ue(e){return"string"==typeof e?new y(q(e)):(e.scheme||(e.scheme=w.scheme),e)}function fe(e,t){const r=k(e),n=Object.keys(r.query||{});return n.length>0&&t&&t.warn("removeQueryParameters()",`Url query parameters are not supported, the following parameters have been removed: ${n.join(", ")}.`),r.path}function de(e,t,r){const n=k(e),o=n.query||{};return o[t]=String(r),`${n.path}?${E(o)}`}function he(e,t){const r=k(e),n=r.query||{};for(const e in t)n[e]=t[e];const o=E(n);return o?`${r.path}?${o}`:r.path}function pe(e){if((0,i.Wi)(e))return null;const t=e.match(be);return t?t[1]:null}const be=/.*?\.([^\/]*)$/},25045:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>y});var n=r(40330),o=r(20102),s=r(91460),i=r(70586),a=r(95330),c=r(94362),l=r(17202);const u={statsWorker:()=>Promise.all([r.e(2785),r.e(6570),r.e(9928),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(2785),r.e(6570),r.e(9928),r.e(2303),r.e(7668),r.e(4547),r.e(1534),r.e(4854),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(2785),r.e(6570),r.e(9928),r.e(4547),r.e(2781),r.e(6481),r.e(6459),r.e(3553)]).then(r.bind(r,61787)),FeatureServiceSnappingSourceWorker:()=>Promise.all([r.e(2785),r.e(6570),r.e(9928),r.e(2303),r.e(7668),r.e(4588),r.e(4547),r.e(1534),r.e(3485),r.e(4854),r.e(8961),r.e(7054),r.e(2781),r.e(5404)]).then(r.bind(r,2255)),GeoJSONSourceWorker:()=>Promise.all([r.e(2785),r.e(6570),r.e(9928),r.e(2303),r.e(7668),r.e(4547),r.e(1534),r.e(4854),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(2785),r.e(6570),r.e(9928),r.e(2303),r.e(7668),r.e(4547),r.e(1534),r.e(4854),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(2785),r.e(6570),r.e(9928),r.e(8961),r.e(147)]).then(r.bind(r,61916)),Pipeline:()=>Promise.all([r.e(2785),r.e(6570),r.e(9928),r.e(2303),r.e(7668),r.e(5638),r.e(4588),r.e(4547),r.e(1534),r.e(3485),r.e(4854),r.e(8961),r.e(7054),r.e(4325),r.e(2730),r.e(299)]).then(r.bind(r,70299)),PointCloudWorker:()=>Promise.all([r.e(2785),r.e(6570),r.e(9928),r.e(2303),r.e(4547),r.e(9294),r.e(9474)]).then(r.bind(r,16583)),RasterWorker:()=>Promise.all([r.e(2785),r.e(6570),r.e(9928),r.e(2303),r.e(4547),r.e(176),r.e(2398),r.e(5340)]).then(r.bind(r,61576)),SceneLayerWorker:()=>r.e(1412).then(r.bind(r,31412)),WFSSourceWorker:()=>Promise.all([r.e(2785),r.e(6570),r.e(9928),r.e(2303),r.e(7668),r.e(4547),r.e(1534),r.e(4854),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(4325),r.e(1785),r.e(6810),r.e(9872)]).then(r.bind(r,56456))},{CLOSE:f,ABORT:d,INVOKE:h,RESPONSE:p,OPEN_PORT:b,ON:g}=c.Cs;class m{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===c.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 y{constructor(e,t){this._port=e,this._outJobs=new Map,this._inJobs=new Map,this._invokeQueue=new m((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 n=new y(t.port1,{channel:t,client:r});return"object"==typeof r&&"remoteClient"in r&&(r.remoteClient=n),y.clients.set(n,r),t.port2}static loadWorker(e){const t=u[e];return t?t():Promise.resolve(null)}close(){this._post({type:f}),this._close()}isBusy(){return this._outJobs.size>0}invoke(e,t,r){const n=r&&r.signal,s=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 i=(0,c.jt)();return new Promise(((r,o)=>{const c=(0,a.$F)(n,(()=>{var e;const t=this._outJobs.get(i);t&&(this._outJobs.delete(i),null==(e=t.abortHandle)||e.remove(),this._post({type:d,jobId:i}),o((0,a.zE)()))})),l={resolve:r,reject:o,abortHandle:c,debugInfo:e};this._outJobs.set(i,l),this._post({type:h,jobId:i,methodName:e,abortable:null!=n},t,s)}))}on(e,t){const r=new MessageChannel;function n(e){t(e.data)}return this._port.postMessage({type:c.Cs.ON,eventType:e,port:r.port2},[r.port2]),r.port1.addEventListener("message",n),r.port1.start(),{remove(){r.port1.postMessage({type:c.Cs.CLOSE}),r.port1.close(),r.port1.removeEventListener("message",n)}}}openPort(){const e=new MessageChannel;return this._post({type:b,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,i.pC)(this._schedule)?this._schedule((()=>this._processMessage(e))):this._processMessage(e)}_processMessage(e){const t=(0,c.QM)(e);if(t)switch(t.type){case p:this._onResponseMessage(t);break;case h:this._invokeQueue.push(t);break;case d:this._onAbortMessage(t);break;case f:this._onCloseMessage();break;case b:this._onOpenPortMessage(t);break;case g:this._onOnMessage(t)}}_onAbortMessage(e){const t=this._inJobs,r=e.jobId,n=t.get(r);this._invokeQueue.push(e),n&&(n.controller&&n.controller.abort(),t.delete(r))}_onCloseMessage(){const e=this._client;this._close(),e&&"destroy"in e&&y.clients.get(this)===e&&e.destroy(),y.clients.delete(this),e&&e.remoteClient&&(e.remoteClient=null)}_onInvokeMessage(e){const{methodName:t,jobId:r,data:n,abortable:o}=e,s=o?new AbortController:null,i=this._inJobs;let l,u=this._client,f=u[t];try{if(!f&&t&&-1!==t.indexOf(".")){const e=t.split(".");for(let t=0;t<e.length-1;t++)u=u[e[t]],f=u[e[t+1]]}if("function"!=typeof f)throw new TypeError(`${t} is not a function`);l=f.call(u,n,{client:this,signal:s?s.signal:null})}catch(e){return void this._post({type:p,jobId:r,error:(0,c.AB)(e)})}(0,a.y8)(l)?(i.set(r,{controller:s,promise:l}),l.then((e=>{i.has(r)&&(i.delete(r),this._post({type:p,jobId:r},e))}),(e=>{i.has(r)&&(i.delete(r),(0,a.D_)(e)||this._post({type:p,jobId:r,error:(0,c.AB)(e||{message:`Error encountered at method ${t}`})}))}))):this._post({type:p,jobId:r},l)}_onOpenPortMessage(e){new y(e.port,{client:this._client})}_onOnMessage(e){const{port:t}=e,r=this._client.on(e.eventType,(e=>{t.postMessage(e)})),n=(0,s.on)(e.port,"message",(e=>{(0,c.QM)(e).type===c.Cs.CLOSE&&(n.remove(),r.remove(),t.close())}))}_onResponseMessage(e){var t;const{jobId:r,error:n,data:s}=e,i=this._outJobs;if(!i.has(r))return;const a=i.get(r);i.delete(r),null==(t=a.abortHandle)||t.remove(),n?a.reject(o.Z.fromJSON(JSON.parse(n))):a.resolve(s)}_post(e,t,r){return(0,c.oi)(this._port,e,t,r)}}y.kernelInfo={revision:l.$,version:n.i8,buildDate:l.r},y.clients=new Map},94362:(e,t,r)=>{"use strict";r.d(t,{Cs:()=>n,jt:()=>a,oi:()=>l,QM:()=>u,AB:()=>c});var n,o,s=r(80442);(o=n||(n={}))[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 i=0;function a(){return i++}function c(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 l(e,t,r,o){if(t.type===n.OPEN_PORT)return void e.postMessage(t,[t.port]);if(t.type!==n.INVOKE&&t.type!==n.RESPONSE)return void e.postMessage(t);let s;!function(e){return e&&"object"==typeof e&&("result"in e||"transferList"in e)}(r)?(s=f(o),t.data=r):(s=f(r.transferList),t.data=r.result),s?e.postMessage(t,s):e.postMessage(t)}function u(e){if(!e)return null;const t=e.data;return t?"string"==typeof t?JSON.parse(t):t:null}function f(e){if(!e||!e.length)return null;if((0,s.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}},40330:(e,t,r)=>{"use strict";r.d(t,{Dp:()=>l,id:()=>a,qh:()=>c,i8:()=>s,Nv:()=>i});var n=r(80442),o=r(17452);const s="4.23",i={async request(e,t){var n;const{default:s}=await r.e(3172).then(r.bind(r,3172)),i=e.options,a=i.responseType;i.signal=null==t?void 0:t.signal,i.responseType="native"===a||"native-request-init"===a?"native-request-init":["blob","json","text"].includes(a)&&null!=(n=(0,o.oh)(e.url))&&n.after?a:"array-buffer";const c=await s(e.url,i),l={data:c.data,ssl:c.ssl};switch(c.requestOptions.responseType){case"native-request-init":return delete l.data.signal,l;case"blob":l.data=await l.data.arrayBuffer();break;case"json":l.data=(new TextEncoder).encode(JSON.stringify(l.data)).buffer;break;case"text":l.data=(new TextEncoder).encode(l.data).buffer}return{result:l,transferList:[l.data]}}};let a;function c(e){a=e}function l(e){const t=a&&a.findCredential(e);return t&&t.token?(0,o.ZN)(e,"token",t.token):e}(0,n.Z)("host-webworker")||((0,n.Z)("edge")||(0,n.Z)("trident"))&&console.warn("Deprecated browser - see http://esriurl.com/oldbrowser")},17202:(e,t,r)=>{"use strict";r.d(t,{r:()=>n,$:()=>o});const n="20220207",o="3e0520981081807428093dc52b7e53015bb3b365"}},t={};function r(n){var o=t[n];if(void 0!==o)return o.exports;var s=t[n]={exports:{}};return e[n](s,s.exports,r),s.exports}r.m=e,r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((t,n)=>(r.f[n](e,t),t)),[])),r.u=e=>"chunks/"+{24:"dd5a71818a989a6edb00",102:"60d3c324d17e4fc050e7",147:"d08efbc349dd9f999497",176:"f9a6de00c628538f07f6",223:"e21b211913aefde47e30",247:"a0450fbf01de854f5c97",280:"7a8764ae8a0041e1151d",299:"ea50a6a994e5ee578d97",368:"b548e6b3add4154ac4e6",402:"b32bf9808cb4be3a6bd0",565:"d53ad780789f4d9124ad",576:"812a5abfadd747a09b6f",635:"e8e775758b79c5a084c8",639:"b935d0c8d5951298cc53",819:"6280c69d87b2a3a18780",966:"b6c55bdd8c957b062bc1",1074:"2d9b32e3e24631cd4e34",1412:"d3f05b8e4bd53eb1eb9d",1421:"7fa2d758a24bbaaab0bf",1433:"1def8845714ea745fd24",1534:"8ceac95537638dc9a322",1578:"a763c11d2b02b3ec36ad",1648:"d2ffb0f21363c0d3d2a9",1765:"1180ffd523c6292bc04e",1773:"2c8fe9bc988c3c5760a5",1785:"d88cb7568e2f8ac9905b",1964:"5a90d121ba79613cc2aa",2133:"3403cb53e4e60923c5fc",2134:"070a78b488f92d022495",2303:"fe635f6dcfb146d80e89",2304:"c1a70f025e90d97fac6d",2398:"aa04b90b82bf70caaae4",2399:"467b5faa1c90d9821609",2515:"70d6bb3c7112cb702389",2730:"9d11f84e6c893b9d0019",2781:"ad7e9553d03a43573a54",2785:"f048fb02aae357a73d01",2953:"806a7db0084214a53c79",3027:"0c711b129d501b1d4439",3136:"bea473dba8e57617a71d",3172:"fe0c3b7c9b428d9c3f25",3230:"7351fbd8a9dbef027d06",3307:"6ea99a6e21b09674f6b3",3485:"949b2269457302ffc64b",3505:"6cd5e4380d29b9a3c344",3516:"29aa6046534a43d7ce19",3529:"ecf074743183c1749581",3553:"0c6be307709523eb8a05",3667:"49353182a16218a84251",3668:"56657f890e0f79f5d2ad",3749:"bf7c44644fe7b0aa60cf",3792:"02fbc76dfdc20e628c61",3852:"62c683f44c297d239ab8",3942:"8325b577f52936f86cff",4166:"8598f762f15ca68d52b7",4325:"dc037f1496bb4aa40d10",4358:"f977977564b2b75332a9",4369:"2076fcbae63f1bfb7143",4464:"584bbb675ed225f68171",4475:"f067b4fc65b835437afd",4499:"7b0b75878370b3475fe5",4547:"2e899ef5881b4ec6fa55",4556:"4954fd86b48cc68b737c",4579:"5b286f3f3deea10bdd91",4588:"b97953694f42bfec1b3c",4599:"8804b8489eeab888275b",4695:"0e17691520d890d34efb",4720:"d21526570300597aa6ae",4854:"7b618c449d793aacd874",4859:"5144ef135e0deb48c7bf",4889:"c3d768801f2f6cb9d5d0",5329:"0a4401a148c3cb73d6ff",5340:"dd891a98105904f8a06b",5404:"f0e5c82e9c4fbe3c9d0a",5410:"6a2b8d6a9bada45ab66d",5517:"236de5f0476f6080ee62",5638:"d304fe0ac836afd46e3d",5732:"469ba1b24cdeea0758ec",5823:"918bb7a7d901544a7367",5837:"42c67e6579b54844ec06",5845:"b33a6fbbc8de2969b1ca",5853:"5ac4c1d54b94c7d87835",6006:"7509c1693ffedc0fa018",6104:"c3192cfe115ce354ffbc",6204:"2e1291cd831592216446",6233:"3fcb1a5aec640f9707e2",6237:"c544df83e86a9d36b68c",6348:"0e215fa28a0448169132",6401:"d780e946149b1c3d1246",6434:"ff9b34572aea1245960a",6459:"7dcf52d3db3903c8eb9f",6481:"e84b935c285888a892c1",6550:"48fa8aed6c24877b44c4",6570:"836a5a96156b91fb9dca",6678:"84d8e77d78d0d5134083",6690:"65ccd204ec3053687a77",6710:"d688dd04d3a94e932ae1",6726:"90c5edcd8a609224ce55",6748:"9fbc7d2e0326be41b382",6774:"4a830f056c4d0ed93928",6810:"411db587521e12c593be",6841:"281b89dbf5574fc642ae",6968:"85b1f36790df95b17659",7049:"94d9951509c0db09547a",7054:"0d9adefd00c44585be2e",7277:"c23d965a55215168a1a2",7284:"996d6ae7f2e2273f9bce",7319:"e323086de328a164f7f0",7572:"a78757b9c7e8cbea08fa",7604:"b90509b2088fd444fc39",7616:"34bed896b68993cabaa1",7622:"18a8b9e2f6bd89827189",7668:"1f34957ef42e5b5977d0",7779:"bcc01bbffaa3bb5f60a8",7845:"8afae85018491491f773",7873:"93eb468381bfcf0e47d7",7913:"d09a0b2dc3a6fc10fa41",8014:"85b1ae51da3689bccf92",8062:"288ca064cd0472439276",8121:"4de996ebc432f5e149bc",8163:"6be326edd9829781d926",8216:"f96b24c075771d028e20",8227:"1f394b20410fddb30a96",8422:"06116433eb6e669f146b",8511:"e17edd48179d41ddf1e7",8589:"101b4f02f0572afb666f",8625:"e4019b63a1fe74e2c842",8659:"7215af7810d15e89aa5a",8683:"7c0ff01f081c7e9050d2",8758:"1571e8213feb518ff100",8828:"36de1a1959f038a61cca",8833:"f7150547d7e3259a0f29",8936:"fffea9587ec14c6d34e8",8961:"444829a840b8ded16fd7",9070:"2f8cf135b1116559659f",9101:"17c51f5a13f471e6656a",9151:"cbb291412fd1a5261aa9",9164:"bf97a933ea3b220115e1",9169:"f7ae0344257e6e08469b",9201:"88815d533808aabb1fa9",9226:"50976921acf7bd636123",9254:"6cdfe175c965918b741b",9291:"214910032945dd2d86b0",9294:"9ce961bc390202c87941",9296:"a85ed251d3d3668e474f",9474:"ebc6f4764b82d4104c65",9490:"57c67e260267a1dbc5e3",9664:"810a763373d7f78ae398",9767:"873b0cbd343dc71755ed",9872:"e522adbf821858c4f984",9884:"356db8b8297282c77291",9928:"eccba071ced2d922bb85",9932:"a363fb40096679b011f6",9938:"8c8c0ecdf44fdbb56000",9989:"a41522b0a853b85c8269"}[e]+".js",r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;r.g.importScripts&&(e=r.g.location+"");var t=r.g.document;if(!e&&t&&(t.currentScript&&(e=t.currentScript.src),!e)){var n=t.getElementsByTagName("script");n.length&&(e=n[n.length-1].src)}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),r.p=e})(),(()=>{var e={134:1,102:1};r.f.i=(t,n)=>{e[t]||importScripts(r.p+r.u(t))};var t=self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[],n=t.push.bind(t);t.push=t=>{var[o,s,i]=t;for(var a in s)r.o(s,a)&&(r.m[a]=s[a]);for(i&&i(r);o.length;)e[o.pop()]=1;n(t)}})(),r(88277);var n=r(25045);RemoteClient=n})();
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[102],{68773:(e,t,r)=>{r.d(t,{Z:()=>s}),r(80442);var n,o=r(78286),i=r(17202);const s={apiKey:void 0,applicationUrl:null==(n=globalThis.location)?void 0:n.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",routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",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&&((0,o.RH)(s,globalThis.esriConfig,!0),delete s.has),!s.assetsPath){const e="4.23.0";s.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@${e}-next.${i.r}/assets`}s.baseUrl&&console.warn("[esri.config]","baseUrl has been replaced by assetsPath"),Object.defineProperty(s,"baseUrl",{set(){console.warn("[esri.config]","baseUrl has been replaced by assetsPath")}}),s.request.corsEnabledServers=[],s.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}},20102:(e,t,r)=>{r.d(t,{Z:()=>s});var n=r(22974),o=r(92604),i=r(58896);class s extends i.Z{constructor(e,t,r){if(super(e,t,r),!(this instanceof s))return new s(e,t,r)}toJSON(){if(null!=this.details)try{return{name:this.name,message:this.message,details:JSON.parse(JSON.stringify(this.details,((e,t)=>{if(t&&"object"==typeof t&&"function"==typeof t.toJSON)return t;try{return(0,n.d9)(t)}catch(e){return"[object]"}})))}}catch(e){throw o.Z.getLogger("esri.core.Error").error(e),e}return{name:this.name,message:this.message,details:this.details}}static fromJSON(e){return new s(e.name,e.message,e.details)}}s.prototype.type="error"},92604:(e,t,r)=>{r.d(t,{Z:()=>a});var n=r(68773),o=(r(80442),r(70586)),i=r(19153);const s={info:0,warn:1,error:2,none:3};class a{constructor(e){this.level=null,this._module="",this._parent=null,this.writer=null,this._loggedMessages={error:new Map,warn:new Map,info:new Map},null!=e.level&&(this.level=e.level),null!=e.writer&&(this.writer=e.writer),this._module=e.module,a._loggers[this.module]=this;const t=this.module.lastIndexOf(".");-1!==t&&(this._parent=a.getLogger(this.module.slice(0,t)))}get module(){return this._module}get parent(){return this._parent}error(...e){this._log("error","always",...e)}warn(...e){this._log("warn","always",...e)}info(...e){this._log("info","always",...e)}errorOnce(...e){this._log("error","once",...e)}warnOnce(...e){this._log("warn","once",...e)}infoOnce(...e){this._log("info","once",...e)}errorOncePerTick(...e){this._log("error","oncePerTick",...e)}warnOncePerTick(...e){this._log("warn","oncePerTick",...e)}infoOncePerTick(...e){this._log("info","oncePerTick",...e)}get test(){const e=this;return{loggedMessages:e._loggedMessages,clearLoggedWarnings:()=>e._loggedMessages.warn.clear()}}static get testSingleton(){return{resetLoggers(e={}){const t=a._loggers;return a._loggers=e,t},set throttlingDisabled(e){a._throttlingDisabled=e}}}static getLogger(e){let t=a._loggers[e];return t||(t=new a({module:e})),t}_log(e,t,...r){if(this._matchLevel(e)){if("always"!==t&&!a._throttlingDisabled){const n=this._argsToKey(r),o=this._loggedMessages[e].get(n);if("once"===t&&null!=o||"oncePerTick"===t&&o&&o>=a._tickCounter)return;this._loggedMessages[e].set(n,a._tickCounter),a._scheduleTickCounterIncrement()}for(const t of n.Z.log.interceptors)if(t(e,this.module,...r))return;this._inheritedWriter()(e,this.module,...r)}}_parentWithMember(e,t){let r=this;for(;(0,o.pC)(r);){const t=r[e];if((0,o.pC)(t))return t;r=r.parent}return t}_inheritedWriter(){return this._parentWithMember("writer",this._consoleWriter)}_consoleWriter(e,t,...r){console[e](`[${t}]`,...r)}_matchLevel(e){const t=n.Z.log.level?n.Z.log.level:"warn";return s[this._parentWithMember("level",t)]<=s[e]}_argsToKey(...e){return(0,i.hP)(JSON.stringify(e,((e,t)=>"object"!=typeof t||Array.isArray(t)?t:"[Object]")))}static _scheduleTickCounterIncrement(){a._tickCounterScheduled||(a._tickCounterScheduled=!0,Promise.resolve().then((()=>{a._tickCounter++,a._tickCounterScheduled=!1})))}}a._loggers={},a._tickCounter=0,a._tickCounterScheduled=!1,a._throttlingDisabled=!1},58896:(e,t,r)=>{r.d(t,{Z:()=>o});var n=r(78286);class o{constructor(e,t,r){this.name=e,this.details=r,this.message=void 0,this instanceof o&&(this.message=t&&function(e,t){return e.replace(/\$\{([^\s\:\}]*)(?:\:([^\s\:\}]+))?\}/g,(function(e,r){if(""===r)return"$";const o=(0,n.hS)(r,t),i=null==o?"":o;if(void 0===i)throw new Error(`could not find key "${r}" in template`);return i.toString()}))}(t,r)||"")}toString(){return"["+this.name+"]: "+this.message}}},77734:(e,t,r)=>{r.d(t,{Z:()=>n});class n{constructor(e=1){this._seed=e}set seed(e){this._seed=null==e?Math.random()*n._m:e}getInt(){return this._seed=(n._a*this._seed+n._c)%n._m,this._seed}getFloat(){return this.getInt()/(n._m-1)}getIntRange(e,t){return Math.round(this.getFloatRange(e,t))}getFloatRange(e,t){const r=t-e;return e+this.getInt()/n._m*r}}n._m=2147483647,n._a=48271,n._c=0},67676:(e,t,r)=>{r.d(t,{SO:()=>u,a9:()=>l,fS:()=>i,cq:()=>f,zG:()=>s,w6:()=>c,Od:()=>m,e$:()=>h,FY:()=>p});var n=r(70586),o=r(77734);function i(e,t,r){if((0,n.Wi)(e)&&(0,n.Wi)(t))return!0;if((0,n.Wi)(e)||(0,n.Wi)(t)||e.length!==t.length)return!1;if(r){for(let n=0;n<e.length;n++)if(!r(e[n],t[n]))return!1}else for(let r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0}function s(e){return e&&"number"==typeof e.length}const a=!!Array.prototype.fill;function l(e,t){if(a)return new Array(e).fill(t);const r=new Array(e);for(let n=0;n<e;n++)r[n]=t;return r}function c(e,t){void 0===t&&(t=e,e=0);const r=new Array(t-e);for(let n=e;n<t;n++)r[n-e]=n;return r}class u{constructor(){this.last=0}}const d=new u;function f(e,t,r,n){n=n||d;const o=Math.max(0,n.last-10);for(let i=o;i<r;++i)if(e[i]===t)return n.last=i,i;const i=Math.min(o,r);for(let r=0;r<i;++r)if(e[r]===t)return n.last=r,r;return-1}function h(e,t,r,n){const o=null==r?e.length:r,i=f(e,t,o,n);if(-1!==i)return e[i]=e[o-1],null==r&&e.pop(),t}const g=new Set;function p(e,t,r=e.length,n=t.length,o,i){if(0===n||0===r)return r;g.clear();for(let e=0;e<n;++e)g.add(t[e]);o=o||d;const s=Math.max(0,o.last-10);for(let t=s;t<r;++t)if(g.has(e[t])&&(i&&i.push(e[t]),g.delete(e[t]),e[t]=e[r-1],--r,--t,0===g.size||0===r))return g.clear(),r;for(let t=0;t<s;++t)if(g.has(e[t])&&(i&&i.push(e[t]),g.delete(e[t]),e[t]=e[r-1],--r,--t,0===g.size||0===r))return g.clear(),r;return g.clear(),r}function m(e,t){const r=e.indexOf(t);return-1!==r?(e.splice(r,1),t):null}new o.Z},80442:(e,t,r)=>{var n,o;let i;var s,a;function l(e){return"function"==typeof i[e]?i[e]=i[e](globalThis):i[e]}r.d(t,{Z:()=>l}),i=null!=(n=globalThis.dojoConfig)&&n.has||null!=(o=globalThis.esriConfig)&&o.has?{...null==(s=globalThis.dojoConfig)?void 0:s.has,...null==(a=globalThis.esriConfig)?void 0:a.has}:{},l.add=(e,t,r,n)=>((n||void 0===i[e])&&(i[e]=t),r&&l(e)),l.cache=i,l.add("esri-deprecation-warnings",!0),(()=>{var e;l.add("host-webworker",void 0!==globalThis.WorkerGlobalScope&&self instanceof globalThis.WorkerGlobalScope);const t="undefined"!=typeof window&&"undefined"!=typeof location&&"undefined"!=typeof document&&window.location===location&&window.document===document;if(l.add("host-browser",t),l.add("host-node","object"==typeof globalThis.process&&(null==(e=globalThis.process.versions)?void 0:e.node)&&globalThis.process.versions.v8),l.add("dom",t),l("host-browser")){const e=navigator,t=e.userAgent,r=e.appVersion,n=parseFloat(r);if(l.add("wp",parseFloat(t.split("Windows Phone")[1])||void 0),l.add("msapp",parseFloat(t.split("MSAppHost/")[1])||void 0),l.add("khtml",r.includes("Konqueror")?n:void 0),l.add("edge",parseFloat(t.split("Edge/")[1])||void 0),l.add("opr",parseFloat(t.split("OPR/")[1])||void 0),l.add("webkit",!l("wp")&&!l("edge")&&parseFloat(t.split("WebKit/")[1])||void 0),l.add("chrome",!l("edge")&&!l("opr")&&parseFloat(t.split("Chrome/")[1])||void 0),l.add("android",!l("wp")&&parseFloat(t.split("Android ")[1])||void 0),l.add("safari",!r.includes("Safari")||l("wp")||l("chrome")||l("android")||l("edge")||l("opr")?void 0:parseFloat(r.split("Version/")[1])),l.add("mac",r.includes("Macintosh")),!l("wp")&&t.match(/(iPhone|iPod|iPad)/)){const e=RegExp.$1.replace(/P/,"p"),r=t.match(/OS ([\d_]+)/)?RegExp.$1:"1",n=parseFloat(r.replace(/_/,".").replace(/_/g,""));l.add(e,n),l.add("ios",n)}l.add("trident",parseFloat(r.split("Trident/")[1])||void 0),l("webkit")||(!t.includes("Gecko")||l("wp")||l("khtml")||l("trident")||l("edge")||l.add("mozilla",n),l("mozilla")&&l.add("ff",parseFloat(t.split("Firefox/")[1]||t.split("Minefield/")[1])||void 0))}})(),(()=>{if(globalThis.navigator){const e=navigator.userAgent,t=/Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini|IEMobile/i.test(e),r=/iPhone/i.test(e);t&&l.add("esri-mobile",t),r&&l.add("esri-iPhone",r),l.add("esri-geolocation",!!navigator.geolocation)}l.add("esri-canvas-svg-support",!l("trident")),l.add("esri-wasm","WebAssembly"in globalThis),l.add("esri-shared-array-buffer",(()=>{const e="SharedArrayBuffer"in globalThis,t=!1===globalThis.crossOriginIsolated;return e&&!t})),l.add("esri-atomics","Atomics"in globalThis),l.add("esri-workers","Worker"in globalThis),l.add("web-feat:cache","caches"in globalThis),l.add("esri-workers-arraybuffer-transfer",!l("safari")||Number(l("safari"))>=12),l.add("featurelayer-simplify-thresholds",[.5,.5,.5,.5]),l.add("featurelayer-simplify-payload-size-factors",[1,1,4]),l.add("featurelayer-snapshot-enabled",!0),l.add("featurelayer-snapshot-point-min-threshold",8e4),l.add("featurelayer-snapshot-point-max-threshold",4e5),l.add("featurelayer-snapshot-point-coverage",.1),l.add("featurelayer-advanced-symbols",!1),l.add("featurelayer-pbf",!0),l.add("featurelayer-pbf-statistics",!1),l.add("feature-layers-workers",!0),l.add("feature-polyline-generalization-factor",1),l.add("mapview-transitions-duration",200),l.add("mapserver-pbf-enabled",!1),l.add("vectortilelayer-max-buffers",l("ff")?160:Number.POSITIVE_INFINITY),l("host-webworker")||l("host-browser")&&(l.add("esri-csp-restrictions",(()=>{try{new Function}catch{return!0}return!1})),l.add("esri-image-decode",(()=>{if("decode"in new Image){const e=new Image;return e.src='data:image/svg+xml;charset=UTF-8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg"></svg>',void e.decode().then((()=>{l.add("esri-image-decode",!0,!0,!0)})).catch((()=>{l.add("esri-image-decode",!1,!0,!0)}))}return!1})),l.add("esri-url-encodes-apostrophe",(()=>{const e=window.document.createElement("a");return e.href="?'",e.href.includes("?%27")})))})()},22974:(e,t,r)=>{r.d(t,{d9:()=>s,fS:()=>f,yd:()=>i,Vo:()=>a}),r(67676),r(80442);var n=r(70586),o=r(1533);function i(e,t){let r;if(t)for(r in e)e.hasOwnProperty(r)&&(void 0===e[r]?delete e[r]:e[r]instanceof Object&&i(e[r],!0));else for(r in e)e.hasOwnProperty(r)&&void 0===e[r]&&delete e[r];return e}function s(e){if(!e||"object"!=typeof e||"function"==typeof e)return e;const t=d(e);if((0,n.pC)(t))return t;if(l(e))return e.clone();if(c(e))return e.map(s);if(u(e))return e.clone();const r={};for(const t of Object.getOwnPropertyNames(e))r[t]=s(e[t]);return r}function a(e){if(!e||"object"!=typeof e||"function"==typeof e)return e;const t=d(e);if((0,n.pC)(t))return t;if(c(e)){let t=!0;const r=e.map((e=>{const r=a(e);return null!=e&&null==r&&(t=!1),r}));return t?r:null}if(l(e))return e.clone();if(!u(e)){const t=new(0,Object.getPrototypeOf(e).constructor);for(const r of Object.getOwnPropertyNames(e)){const n=e[r],o=a(n);if(null!=n&&null==o)return null;t[r]=o}return t}return null}function l(e){return"function"==typeof e.clone}function c(e){return"function"==typeof e.map&&"function"==typeof e.forEach}function u(e){return"function"==typeof e.notifyChange&&"function"==typeof e.watch}function d(e){if((0,o.W0)(e)||(0,o.lq)(e)||(0,o.KZ)(e)||(0,o.z3)(e)||(0,o.Uc)(e)||(0,o.Hx)(e)||(0,o.ZY)(e)||(0,o.xZ)(e)||(0,o.fS)(e))return(0,o.tP)(e);if(e instanceof Date)return new Date(e.getTime());if(e instanceof ArrayBuffer)return e.slice(0,e.byteLength);if(e instanceof Map){const t=new Map;return e.forEach(((e,r)=>{t.set(r,s(e))})),t}if(e instanceof Set){const t=new Set;return e.forEach((e=>{t.add(s(e))})),t}return null}function f(e,t){return e===t||"number"==typeof e&&isNaN(e)&&"number"==typeof t&&isNaN(t)||"function"==typeof(e||{}).getTime&&"function"==typeof(t||{}).getTime&&e.getTime()===t.getTime()||!1}},70586:(e,t,r)=>{function n(e){return null!=e}function o(e){return null==e}function i(e){return void 0===e}function s(e,t){return n(e)?t(e):null}function a(e){return e}function l(e,t){if(o(e))throw new Error(t);return e}function c(e,t){return n(e)?e:"function"==typeof t?t():t}function u(e){return n(e)&&e.destroy(),null}function d(e){return n(e)&&e.dispose(),null}function f(e){return n(e)&&e.remove(),null}function h(e){return n(e)&&e.release(),null}function g(e){return null}function p(e,t){const r=new Array;for(const n of e)r.push(y(n,null,t));return r}function m(e,t){for(const r of e)s(r,t)}function y(e,t,r){return n(e)?r(e):t}function w(e){return e.filter((e=>n(e)))}function b(e,...t){let r=e;for(let e=0;e<t.length&&r;++e)r=r[t[e]];return r}function v(e){return e}r.d(t,{yw:()=>s,j0:()=>v,SC:()=>u,O3:()=>d,lV:()=>w,JR:()=>m,U2:()=>b,Wi:()=>o,pC:()=>n,o8:()=>i,Fd:()=>p,R2:()=>y,Bd:()=>g,RY:()=>h,hw:()=>f,Wg:()=>a,Pt:()=>c,s3:()=>l})},78286:(e,t,r)=>{r.d(t,{RH:()=>o,hS:()=>i,RB:()=>s});var n=r(22974);function o(e,t,r=!1){return l(e,t,r)}function i(e,t){if(null!=t)return t[e]||a(e.split("."),!1,t)}function s(e,t,r){const n=e.split("."),o=n.pop(),i=a(n,!0,r);i&&o&&(i[o]=t)}function a(e,t,r){let n=r;for(const r of e){if(null==n)return;if(!(r in n)){if(!t)return;n[r]={}}n=n[r]}return n}function l(e,t,r){return t?Object.keys(t).reduce((function(e,o){let i=e[o],s=t[o];return i===s?e:void 0===i?(e[o]=(0,n.d9)(s),e):(Array.isArray(s)||Array.isArray(e)?(i=i?Array.isArray(i)?e[o]=i.concat():e[o]=[i]:e[o]=[],s&&(Array.isArray(s)||(s=[s]),r?s.forEach((e=>{-1===i.indexOf(e)&&i.push(e)})):e[o]=s.concat())):s&&"object"==typeof s?e[o]=l(i,s,r):e.hasOwnProperty(o)&&!t.hasOwnProperty(o)||(e[o]=s),e)}),e||{}):e}},19153:(e,t,r)=>{r.d(t,{Qs:()=>a,hP:()=>l,gx:()=>s,Cb:()=>c});var n=r(78286);const o=/\{([^\}]+)\}/g;function i(e){return null==e?"":e}function s(e,t){return e.replace(o,"object"==typeof t?(e,r)=>i((0,n.hS)(r,t)):(e,r)=>i(t(r)))}function a(e,t){return e.replace(/([\.$?*|{}\(\)\[\]\\\/\+\-^])/g,(e=>t&&-1!==t.indexOf(e)?e:`\\${e}`))}function l(e){let t=0;for(let r=0;r<e.length;r++)t=(t<<5)-t+e.charCodeAt(r),t|=0;return t}function c(e){return(new DOMParser).parseFromString(e||"","text/html").body.innerText||""}},1533:(e,t,r)=>{function n(e,t){if(e.forEach)e.forEach(t);else for(let r=0;r<e.length;r++)t(e[r],r,e)}function o(e,t,r){if(e.slice)return e.slice(t,r);void 0===t?t=0:(t<0&&(t+=e.length),t=Math.min(e.length,Math.max(0,t))),void 0===r?r=e.length:(r<0&&(r+=e.length),r=Math.min(e.length,Math.max(0,r)));const n=Math.max(0,r-t),o=new(0,e.constructor)(n);for(let r=0;r<n;r++)o[r]=e[t+r];return o}function i(e){return e instanceof ArrayBuffer||e&&e.constructor&&"ArrayBuffer"===e.constructor.name}function s(e){return e instanceof Int8Array||e&&e.constructor&&"Int8Array"===e.constructor.name}function a(e){return e instanceof Uint8Array||e&&e.constructor&&"Uint8Array"===e.constructor.name}function l(e){return e instanceof Uint8ClampedArray||e&&e.constructor&&"Uint8ClampedArray"===e.constructor.name}function c(e){return e instanceof Int16Array||e&&e.constructor&&"Int16Array"===e.constructor.name}function u(e){return e instanceof Uint16Array||e&&e.constructor&&"Uint16Array"===e.constructor.name}function d(e){return e instanceof Int32Array||e&&e.constructor&&"Int32Array"===e.constructor.name}function f(e){return e instanceof Uint32Array||e&&e.constructor&&"Uint32Array"===e.constructor.name}function h(e){return e instanceof Float32Array||e&&e.constructor&&"Float32Array"===e.constructor.name}function g(e){return e instanceof Float64Array||e&&e.constructor&&"Float64Array"===e.constructor.name}r.d(t,{Ed:()=>n,eP:()=>i,xZ:()=>h,fS:()=>g,z3:()=>c,Hx:()=>d,W0:()=>s,Uc:()=>u,ZY:()=>f,lq:()=>a,KZ:()=>l,tP:()=>o})},17202:(e,t,r)=>{r.d(t,{r:()=>n,$:()=>o});const n="20220206",o="7002ada77dfee03eab5aeed2c2ec221fc4e1aa07"}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[102],{68773:(e,t,r)=>{r.d(t,{Z:()=>s}),r(80442);var n,o=r(78286),i=r(17202);const s={apiKey:void 0,applicationUrl:null==(n=globalThis.location)?void 0:n.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",routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",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&&((0,o.RH)(s,globalThis.esriConfig,!0),delete s.has),!s.assetsPath){const e="4.23.0";s.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@${e}-next.${i.r}/assets`}s.baseUrl&&console.warn("[esri.config]","baseUrl has been replaced by assetsPath"),Object.defineProperty(s,"baseUrl",{set(){console.warn("[esri.config]","baseUrl has been replaced by assetsPath")}}),s.request.corsEnabledServers=[],s.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}},20102:(e,t,r)=>{r.d(t,{Z:()=>s});var n=r(22974),o=r(92604),i=r(58896);class s extends i.Z{constructor(e,t,r){if(super(e,t,r),!(this instanceof s))return new s(e,t,r)}toJSON(){if(null!=this.details)try{return{name:this.name,message:this.message,details:JSON.parse(JSON.stringify(this.details,((e,t)=>{if(t&&"object"==typeof t&&"function"==typeof t.toJSON)return t;try{return(0,n.d9)(t)}catch(e){return"[object]"}})))}}catch(e){throw o.Z.getLogger("esri.core.Error").error(e),e}return{name:this.name,message:this.message,details:this.details}}static fromJSON(e){return new s(e.name,e.message,e.details)}}s.prototype.type="error"},92604:(e,t,r)=>{r.d(t,{Z:()=>a});var n=r(68773),o=(r(80442),r(70586)),i=r(19153);const s={info:0,warn:1,error:2,none:3};class a{constructor(e){this.level=null,this._module="",this._parent=null,this.writer=null,this._loggedMessages={error:new Map,warn:new Map,info:new Map},null!=e.level&&(this.level=e.level),null!=e.writer&&(this.writer=e.writer),this._module=e.module,a._loggers[this.module]=this;const t=this.module.lastIndexOf(".");-1!==t&&(this._parent=a.getLogger(this.module.slice(0,t)))}get module(){return this._module}get parent(){return this._parent}error(...e){this._log("error","always",...e)}warn(...e){this._log("warn","always",...e)}info(...e){this._log("info","always",...e)}errorOnce(...e){this._log("error","once",...e)}warnOnce(...e){this._log("warn","once",...e)}infoOnce(...e){this._log("info","once",...e)}errorOncePerTick(...e){this._log("error","oncePerTick",...e)}warnOncePerTick(...e){this._log("warn","oncePerTick",...e)}infoOncePerTick(...e){this._log("info","oncePerTick",...e)}get test(){const e=this;return{loggedMessages:e._loggedMessages,clearLoggedWarnings:()=>e._loggedMessages.warn.clear()}}static get testSingleton(){return{resetLoggers(e={}){const t=a._loggers;return a._loggers=e,t},set throttlingDisabled(e){a._throttlingDisabled=e}}}static getLogger(e){let t=a._loggers[e];return t||(t=new a({module:e})),t}_log(e,t,...r){if(this._matchLevel(e)){if("always"!==t&&!a._throttlingDisabled){const n=this._argsToKey(r),o=this._loggedMessages[e].get(n);if("once"===t&&null!=o||"oncePerTick"===t&&o&&o>=a._tickCounter)return;this._loggedMessages[e].set(n,a._tickCounter),a._scheduleTickCounterIncrement()}for(const t of n.Z.log.interceptors)if(t(e,this.module,...r))return;this._inheritedWriter()(e,this.module,...r)}}_parentWithMember(e,t){let r=this;for(;(0,o.pC)(r);){const t=r[e];if((0,o.pC)(t))return t;r=r.parent}return t}_inheritedWriter(){return this._parentWithMember("writer",this._consoleWriter)}_consoleWriter(e,t,...r){console[e](`[${t}]`,...r)}_matchLevel(e){const t=n.Z.log.level?n.Z.log.level:"warn";return s[this._parentWithMember("level",t)]<=s[e]}_argsToKey(...e){return(0,i.hP)(JSON.stringify(e,((e,t)=>"object"!=typeof t||Array.isArray(t)?t:"[Object]")))}static _scheduleTickCounterIncrement(){a._tickCounterScheduled||(a._tickCounterScheduled=!0,Promise.resolve().then((()=>{a._tickCounter++,a._tickCounterScheduled=!1})))}}a._loggers={},a._tickCounter=0,a._tickCounterScheduled=!1,a._throttlingDisabled=!1},58896:(e,t,r)=>{r.d(t,{Z:()=>o});var n=r(78286);class o{constructor(e,t,r){this.name=e,this.details=r,this.message=void 0,this instanceof o&&(this.message=t&&function(e,t){return e.replace(/\$\{([^\s\:\}]*)(?:\:([^\s\:\}]+))?\}/g,(function(e,r){if(""===r)return"$";const o=(0,n.hS)(r,t),i=null==o?"":o;if(void 0===i)throw new Error(`could not find key "${r}" in template`);return i.toString()}))}(t,r)||"")}toString(){return"["+this.name+"]: "+this.message}}},77734:(e,t,r)=>{r.d(t,{Z:()=>n});class n{constructor(e=1){this._seed=e}set seed(e){this._seed=null==e?Math.random()*n._m:e}getInt(){return this._seed=(n._a*this._seed+n._c)%n._m,this._seed}getFloat(){return this.getInt()/(n._m-1)}getIntRange(e,t){return Math.round(this.getFloatRange(e,t))}getFloatRange(e,t){const r=t-e;return e+this.getInt()/n._m*r}}n._m=2147483647,n._a=48271,n._c=0},67676:(e,t,r)=>{r.d(t,{SO:()=>u,a9:()=>l,fS:()=>i,cq:()=>f,zG:()=>s,w6:()=>c,Od:()=>m,e$:()=>h,FY:()=>p});var n=r(70586),o=r(77734);function i(e,t,r){if((0,n.Wi)(e)&&(0,n.Wi)(t))return!0;if((0,n.Wi)(e)||(0,n.Wi)(t)||e.length!==t.length)return!1;if(r){for(let n=0;n<e.length;n++)if(!r(e[n],t[n]))return!1}else for(let r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0}function s(e){return e&&"number"==typeof e.length}const a=!!Array.prototype.fill;function l(e,t){if(a)return new Array(e).fill(t);const r=new Array(e);for(let n=0;n<e;n++)r[n]=t;return r}function c(e,t){void 0===t&&(t=e,e=0);const r=new Array(t-e);for(let n=e;n<t;n++)r[n-e]=n;return r}class u{constructor(){this.last=0}}const d=new u;function f(e,t,r,n){n=n||d;const o=Math.max(0,n.last-10);for(let i=o;i<r;++i)if(e[i]===t)return n.last=i,i;const i=Math.min(o,r);for(let r=0;r<i;++r)if(e[r]===t)return n.last=r,r;return-1}function h(e,t,r,n){const o=null==r?e.length:r,i=f(e,t,o,n);if(-1!==i)return e[i]=e[o-1],null==r&&e.pop(),t}const g=new Set;function p(e,t,r=e.length,n=t.length,o,i){if(0===n||0===r)return r;g.clear();for(let e=0;e<n;++e)g.add(t[e]);o=o||d;const s=Math.max(0,o.last-10);for(let t=s;t<r;++t)if(g.has(e[t])&&(i&&i.push(e[t]),g.delete(e[t]),e[t]=e[r-1],--r,--t,0===g.size||0===r))return g.clear(),r;for(let t=0;t<s;++t)if(g.has(e[t])&&(i&&i.push(e[t]),g.delete(e[t]),e[t]=e[r-1],--r,--t,0===g.size||0===r))return g.clear(),r;return g.clear(),r}function m(e,t){const r=e.indexOf(t);return-1!==r?(e.splice(r,1),t):null}new o.Z},80442:(e,t,r)=>{var n,o;let i;var s,a;function l(e){return"function"==typeof i[e]?i[e]=i[e](globalThis):i[e]}r.d(t,{Z:()=>l}),i=null!=(n=globalThis.dojoConfig)&&n.has||null!=(o=globalThis.esriConfig)&&o.has?{...null==(s=globalThis.dojoConfig)?void 0:s.has,...null==(a=globalThis.esriConfig)?void 0:a.has}:{},l.add=(e,t,r,n)=>((n||void 0===i[e])&&(i[e]=t),r&&l(e)),l.cache=i,l.add("esri-deprecation-warnings",!0),(()=>{var e;l.add("host-webworker",void 0!==globalThis.WorkerGlobalScope&&self instanceof globalThis.WorkerGlobalScope);const t="undefined"!=typeof window&&"undefined"!=typeof location&&"undefined"!=typeof document&&window.location===location&&window.document===document;if(l.add("host-browser",t),l.add("host-node","object"==typeof globalThis.process&&(null==(e=globalThis.process.versions)?void 0:e.node)&&globalThis.process.versions.v8),l.add("dom",t),l("host-browser")){const e=navigator,t=e.userAgent,r=e.appVersion,n=parseFloat(r);if(l.add("wp",parseFloat(t.split("Windows Phone")[1])||void 0),l.add("msapp",parseFloat(t.split("MSAppHost/")[1])||void 0),l.add("khtml",r.includes("Konqueror")?n:void 0),l.add("edge",parseFloat(t.split("Edge/")[1])||void 0),l.add("opr",parseFloat(t.split("OPR/")[1])||void 0),l.add("webkit",!l("wp")&&!l("edge")&&parseFloat(t.split("WebKit/")[1])||void 0),l.add("chrome",!l("edge")&&!l("opr")&&parseFloat(t.split("Chrome/")[1])||void 0),l.add("android",!l("wp")&&parseFloat(t.split("Android ")[1])||void 0),l.add("safari",!r.includes("Safari")||l("wp")||l("chrome")||l("android")||l("edge")||l("opr")?void 0:parseFloat(r.split("Version/")[1])),l.add("mac",r.includes("Macintosh")),!l("wp")&&t.match(/(iPhone|iPod|iPad)/)){const e=RegExp.$1.replace(/P/,"p"),r=t.match(/OS ([\d_]+)/)?RegExp.$1:"1",n=parseFloat(r.replace(/_/,".").replace(/_/g,""));l.add(e,n),l.add("ios",n)}l.add("trident",parseFloat(r.split("Trident/")[1])||void 0),l("webkit")||(!t.includes("Gecko")||l("wp")||l("khtml")||l("trident")||l("edge")||l.add("mozilla",n),l("mozilla")&&l.add("ff",parseFloat(t.split("Firefox/")[1]||t.split("Minefield/")[1])||void 0))}})(),(()=>{if(globalThis.navigator){const e=navigator.userAgent,t=/Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini|IEMobile/i.test(e),r=/iPhone/i.test(e);t&&l.add("esri-mobile",t),r&&l.add("esri-iPhone",r),l.add("esri-geolocation",!!navigator.geolocation)}l.add("esri-canvas-svg-support",!l("trident")),l.add("esri-wasm","WebAssembly"in globalThis),l.add("esri-shared-array-buffer",(()=>{const e="SharedArrayBuffer"in globalThis,t=!1===globalThis.crossOriginIsolated;return e&&!t})),l.add("esri-atomics","Atomics"in globalThis),l.add("esri-workers","Worker"in globalThis),l.add("web-feat:cache","caches"in globalThis),l.add("esri-workers-arraybuffer-transfer",!l("safari")||Number(l("safari"))>=12),l.add("featurelayer-simplify-thresholds",[.5,.5,.5,.5]),l.add("featurelayer-simplify-payload-size-factors",[1,1,4]),l.add("featurelayer-snapshot-enabled",!0),l.add("featurelayer-snapshot-point-min-threshold",8e4),l.add("featurelayer-snapshot-point-max-threshold",4e5),l.add("featurelayer-snapshot-point-coverage",.1),l.add("featurelayer-advanced-symbols",!1),l.add("featurelayer-pbf",!0),l.add("featurelayer-pbf-statistics",!1),l.add("feature-layers-workers",!0),l.add("feature-polyline-generalization-factor",1),l.add("mapview-transitions-duration",200),l.add("mapserver-pbf-enabled",!1),l.add("vectortilelayer-max-buffers",l("ff")?160:Number.POSITIVE_INFINITY),l("host-webworker")||l("host-browser")&&(l.add("esri-csp-restrictions",(()=>{try{new Function}catch{return!0}return!1})),l.add("esri-image-decode",(()=>{if("decode"in new Image){const e=new Image;return e.src='data:image/svg+xml;charset=UTF-8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg"></svg>',void e.decode().then((()=>{l.add("esri-image-decode",!0,!0,!0)})).catch((()=>{l.add("esri-image-decode",!1,!0,!0)}))}return!1})),l.add("esri-url-encodes-apostrophe",(()=>{const e=window.document.createElement("a");return e.href="?'",e.href.includes("?%27")})))})()},22974:(e,t,r)=>{r.d(t,{d9:()=>s,fS:()=>f,yd:()=>i,Vo:()=>a}),r(67676),r(80442);var n=r(70586),o=r(1533);function i(e,t){let r;if(t)for(r in e)e.hasOwnProperty(r)&&(void 0===e[r]?delete e[r]:e[r]instanceof Object&&i(e[r],!0));else for(r in e)e.hasOwnProperty(r)&&void 0===e[r]&&delete e[r];return e}function s(e){if(!e||"object"!=typeof e||"function"==typeof e)return e;const t=d(e);if((0,n.pC)(t))return t;if(l(e))return e.clone();if(c(e))return e.map(s);if(u(e))return e.clone();const r={};for(const t of Object.getOwnPropertyNames(e))r[t]=s(e[t]);return r}function a(e){if(!e||"object"!=typeof e||"function"==typeof e)return e;const t=d(e);if((0,n.pC)(t))return t;if(c(e)){let t=!0;const r=e.map((e=>{const r=a(e);return null!=e&&null==r&&(t=!1),r}));return t?r:null}if(l(e))return e.clone();if(!u(e)){const t=new(0,Object.getPrototypeOf(e).constructor);for(const r of Object.getOwnPropertyNames(e)){const n=e[r],o=a(n);if(null!=n&&null==o)return null;t[r]=o}return t}return null}function l(e){return"function"==typeof e.clone}function c(e){return"function"==typeof e.map&&"function"==typeof e.forEach}function u(e){return"function"==typeof e.notifyChange&&"function"==typeof e.watch}function d(e){if((0,o.W0)(e)||(0,o.lq)(e)||(0,o.KZ)(e)||(0,o.z3)(e)||(0,o.Uc)(e)||(0,o.Hx)(e)||(0,o.ZY)(e)||(0,o.xZ)(e)||(0,o.fS)(e))return(0,o.tP)(e);if(e instanceof Date)return new Date(e.getTime());if(e instanceof ArrayBuffer)return e.slice(0,e.byteLength);if(e instanceof Map){const t=new Map;return e.forEach(((e,r)=>{t.set(r,s(e))})),t}if(e instanceof Set){const t=new Set;return e.forEach((e=>{t.add(s(e))})),t}return null}function f(e,t){return e===t||"number"==typeof e&&isNaN(e)&&"number"==typeof t&&isNaN(t)||"function"==typeof(e||{}).getTime&&"function"==typeof(t||{}).getTime&&e.getTime()===t.getTime()||!1}},70586:(e,t,r)=>{function n(e){return null!=e}function o(e){return null==e}function i(e){return void 0===e}function s(e,t){return n(e)?t(e):null}function a(e){return e}function l(e,t){if(o(e))throw new Error(t);return e}function c(e,t){return n(e)?e:"function"==typeof t?t():t}function u(e){return n(e)&&e.destroy(),null}function d(e){return n(e)&&e.dispose(),null}function f(e){return n(e)&&e.remove(),null}function h(e){return n(e)&&e.release(),null}function g(e){return null}function p(e,t){const r=new Array;for(const n of e)r.push(y(n,null,t));return r}function m(e,t){for(const r of e)s(r,t)}function y(e,t,r){return n(e)?r(e):t}function w(e){return e.filter((e=>n(e)))}function b(e,...t){let r=e;for(let e=0;e<t.length&&r;++e)r=r[t[e]];return r}function v(e){return e}r.d(t,{yw:()=>s,j0:()=>v,SC:()=>u,O3:()=>d,lV:()=>w,JR:()=>m,U2:()=>b,Wi:()=>o,pC:()=>n,o8:()=>i,Fd:()=>p,R2:()=>y,Bd:()=>g,RY:()=>h,hw:()=>f,Wg:()=>a,Pt:()=>c,s3:()=>l})},78286:(e,t,r)=>{r.d(t,{RH:()=>o,hS:()=>i,RB:()=>s});var n=r(22974);function o(e,t,r=!1){return l(e,t,r)}function i(e,t){if(null!=t)return t[e]||a(e.split("."),!1,t)}function s(e,t,r){const n=e.split("."),o=n.pop(),i=a(n,!0,r);i&&o&&(i[o]=t)}function a(e,t,r){let n=r;for(const r of e){if(null==n)return;if(!(r in n)){if(!t)return;n[r]={}}n=n[r]}return n}function l(e,t,r){return t?Object.keys(t).reduce((function(e,o){let i=e[o],s=t[o];return i===s?e:void 0===i?(e[o]=(0,n.d9)(s),e):(Array.isArray(s)||Array.isArray(e)?(i=i?Array.isArray(i)?e[o]=i.concat():e[o]=[i]:e[o]=[],s&&(Array.isArray(s)||(s=[s]),r?s.forEach((e=>{-1===i.indexOf(e)&&i.push(e)})):e[o]=s.concat())):s&&"object"==typeof s?e[o]=l(i,s,r):e.hasOwnProperty(o)&&!t.hasOwnProperty(o)||(e[o]=s),e)}),e||{}):e}},19153:(e,t,r)=>{r.d(t,{Qs:()=>a,hP:()=>l,gx:()=>s,Cb:()=>c});var n=r(78286);const o=/\{([^\}]+)\}/g;function i(e){return null==e?"":e}function s(e,t){return e.replace(o,"object"==typeof t?(e,r)=>i((0,n.hS)(r,t)):(e,r)=>i(t(r)))}function a(e,t){return e.replace(/([\.$?*|{}\(\)\[\]\\\/\+\-^])/g,(e=>t&&-1!==t.indexOf(e)?e:`\\${e}`))}function l(e){let t=0;for(let r=0;r<e.length;r++)t=(t<<5)-t+e.charCodeAt(r),t|=0;return t}function c(e){return(new DOMParser).parseFromString(e||"","text/html").body.innerText||""}},1533:(e,t,r)=>{function n(e,t){if(e.forEach)e.forEach(t);else for(let r=0;r<e.length;r++)t(e[r],r,e)}function o(e,t,r){if(e.slice)return e.slice(t,r);void 0===t?t=0:(t<0&&(t+=e.length),t=Math.min(e.length,Math.max(0,t))),void 0===r?r=e.length:(r<0&&(r+=e.length),r=Math.min(e.length,Math.max(0,r)));const n=Math.max(0,r-t),o=new(0,e.constructor)(n);for(let r=0;r<n;r++)o[r]=e[t+r];return o}function i(e){return e instanceof ArrayBuffer||e&&e.constructor&&"ArrayBuffer"===e.constructor.name}function s(e){return e instanceof Int8Array||e&&e.constructor&&"Int8Array"===e.constructor.name}function a(e){return e instanceof Uint8Array||e&&e.constructor&&"Uint8Array"===e.constructor.name}function l(e){return e instanceof Uint8ClampedArray||e&&e.constructor&&"Uint8ClampedArray"===e.constructor.name}function c(e){return e instanceof Int16Array||e&&e.constructor&&"Int16Array"===e.constructor.name}function u(e){return e instanceof Uint16Array||e&&e.constructor&&"Uint16Array"===e.constructor.name}function d(e){return e instanceof Int32Array||e&&e.constructor&&"Int32Array"===e.constructor.name}function f(e){return e instanceof Uint32Array||e&&e.constructor&&"Uint32Array"===e.constructor.name}function h(e){return e instanceof Float32Array||e&&e.constructor&&"Float32Array"===e.constructor.name}function g(e){return e instanceof Float64Array||e&&e.constructor&&"Float64Array"===e.constructor.name}r.d(t,{Ed:()=>n,eP:()=>i,xZ:()=>h,fS:()=>g,z3:()=>c,Hx:()=>d,W0:()=>s,Uc:()=>u,ZY:()=>f,lq:()=>a,KZ:()=>l,tP:()=>o})},17202:(e,t,r)=>{r.d(t,{r:()=>n,$:()=>o});const n="20220207",o="3e0520981081807428093dc52b7e53015bb3b365"}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[2785],{43697:(t,e,r)=>{function n(t,e,r,n){var s,i=arguments.length,o=i<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(t,e,r,n);else for(var a=t.length-1;a>=0;a--)(s=t[a])&&(o=(i<3?s(o):i>3?s(e,r,o):s(e,r))||o);return i>3&&o&&Object.defineProperty(e,r,o),o}r.d(e,{_:()=>n})},15923:(t,e,r)=>{r.d(e,{Z:()=>j});var n=r(60235),s=r(92604),i=r(67723),o=r(97831),a=r(7628),l=(r(80442),r(22974)),c=r(71143),u=r(31263),h=r(58971),f=r(44550),d=r(39020);class p{constructor(t,e,r){this.properties=t,this.propertyName=e,this.metadata=r,this._observers=null,this._accessed=null,this._handles=null,this.flags=f.v.Dirty|(r.nonNullable?f.v.NonNullable:0)|(r.hasOwnProperty("value")?f.v.HasDefaultValue:0)|(void 0===r.get?f.v.DepTrackingInitialized:0)|(void 0===r.dependsOn?f.v.AutoTracked:0)}destroy(){this._accessed=null,this._observers=null,this._clearObservationHandles()}getComputed(){(0,h.it)(this);const t=this.properties.store,e=this.propertyName,r=this.flags,n=t.get(e);if(r&f.v.Computing)return n;if(~r&f.v.Dirty&&t.has(e))return n;this.flags|=f.v.Computing;const s=this.properties.host;let i;r&f.v.AutoTracked?i=(0,h.LJ)(this,this.metadata.get,s):((0,h.GF)(s,this),i=this.metadata.get.call(s)),t.set(e,i,u.s3.COMPUTED);const o=t.get(e);return o===n?this.flags&=~f.v.Dirty:(0,h.gb)(this.commit,this),this.flags&=~f.v.Computing,o}onObservableAccessed(t){t!==this&&(null===this._accessed&&(this._accessed=[]),this._accessed.includes(t)||this._accessed.push(t))}onTrackingEnd(){this._clearObservationHandles(),this.flags|=f.v.DepTrackingInitialized;const t=this._accessed;if(null===t)return;let e=this._handles;null===e&&(e=this._handles=[]);for(let r=0;r<t.length;++r)e.push(t[r].observe(this));t.length=0}observe(t){return null===this._observers&&(this._observers=[]),this._observers.includes(t)||this._observers.push(t),new d.X(this._observers,t)}notifyChange(){this.onInvalidated(),this.onCommitted()}invalidate(){this.onInvalidated()}onInvalidated(){~this.flags&f.v.Overriden&&(this.flags|=f.v.Dirty);const t=this._observers;if(null!==t)for(let e=0;e<t.length;++e)t[e].onInvalidated()}commit(){this.flags&=~f.v.Dirty,this.onCommitted()}onCommitted(){if(null===this._observers)return;const t=this._observers.slice();for(let e=0;e<t.length;++e)t[e].onCommitted()}_clearObservationHandles(){const t=this._handles;if(null!==t){for(let e=0;e<t.length;++e)t[e].remove();t.length=0}}}class g{constructor(){this._values=new Map,this.multipleOriginsSupported=!1}clone(t){const e=new g;return this._values.forEach(((r,n)=>{t&&t.has(n)||e.set(n,(0,l.d9)(r))})),e}get(t){return this._values.get(t)}originOf(){return u.s3.USER}keys(){return[...this._values.keys()]}set(t,e){this._values.set(t,e)}delete(t){this._values.delete(t)}has(t){return this._values.has(t)}forEach(t){this._values.forEach(t)}}var y=r(1153);function v(t,e,r){return void 0!==t}function _(t,e,r,n){return!(void 0===t||null==r&&t.flags&f.v.NonNullable&&(n.lifecycle,o.F.INITIALIZING,1))}function m(t){return t&&"function"==typeof t.destroy}s.Z.getLogger("esri.core.accessorSupport.Properties");class w{constructor(t){this.host=t,this.properties=new Map,this.ctorArgs=null,this.destroyed=!1,this.lifecycle=o.F.INITIALIZING,this.store=new g,this._origin=u.s3.USER;const e=this.host.constructor.__accessorMetadata__,r=e.properties;for(const t in r){const e=new p(this,t,r[t]);this.properties.set(t,e)}this.metadatas=r,this._autoDestroy=e.autoDestroy}initialize(){this.lifecycle=o.F.CONSTRUCTING}constructed(){this.lifecycle=o.F.CONSTRUCTED}destroy(){if(this.destroyed=!0,this._autoDestroy)for(const[t,e]of this.properties){const r=this.internalGet(t);r&&m(r)&&(r.destroy(),~e.flags&f.v.NonNullable&&this._internalSet(e,null)),e.destroy()}else for(const[t,e]of this.properties)e.destroy()}get initialized(){return this.lifecycle!==o.F.INITIALIZING}get(t){const e=this.properties.get(t);if(e.metadata.get)return e.getComputed();(0,h.it)(e);const r=this.store;return r.has(t)?r.get(t):e.metadata.value}originOf(t){const e=this.store.originOf(t);if(void 0===e){const e=this.properties.get(t);if(void 0!==e&&e.flags&f.v.HasDefaultValue)return"defaults"}return(0,u.x3)(e)}has(t){return!!this.properties.has(t)&&this.store.has(t)}keys(){return[...this.properties.keys()]}internalGet(t){const e=this.properties.get(t);if(v(e))return this.store.has(t)?this.store.get(t):e.metadata.value}internalSet(t,e){const r=this.properties.get(t);v(r)&&this._internalSet(r,e)}getDependsInfo(t,e,r){const n=this.properties.get(e);if(!v(n))return"";const s=new Set,i=(0,h.LJ)({onObservableAccessed:t=>s.add(t),onTrackingEnd:()=>{}},(()=>{var e;return null==(e=n.metadata.get)?void 0:e.call(t)}));let o=`${r}${t.declaredClass.split(".").pop()}.${e}: ${i}\n`;if(0===s.size)return o;r+=" ";for(const t of s){if(!(t instanceof p))continue;const e=t.properties.host,n=t.propertyName,s=(0,y.vw)(e);o+=s?s.getDependsInfo(e,n,r):`${r}${n}: undefined\n`}return o}setAtOrigin(t,e,r){const n=this.properties.get(t);if(v(n))return this._setAtOrigin(n,e,r)}isOverridden(t){const e=this.properties.get(t);return void 0!==e&&!!(e.flags&f.v.Overriden)}clearOverride(t){const e=this.properties.get(t);void 0!==e&&e.flags&f.v.Overriden&&(e.flags&=~f.v.Overriden,e.notifyChange())}override(t,e){const r=this.properties.get(t);if(!_(r,0,e,this))return;const n=r.metadata.cast;if(n){const t=this._cast(n,e),{valid:r,value:s}=t;if(b.release(t),!r)return;e=s}r.flags|=f.v.Overriden,this._internalSet(r,e)}set(t,e){const r=this.properties.get(t);if(!_(r,0,e,this))return;const n=r.metadata.cast;if(n){const t=this._cast(n,e),{valid:r,value:s}=t;if(b.release(t),!r)return;e=s}const s=r.metadata.set;s?s.call(this.host,e):this._internalSet(r,e)}setDefaultOrigin(t){this._origin=(0,u.M9)(t)}getDefaultOrigin(){return(0,u.x3)(this._origin)}notifyChange(t){const e=this.properties.get(t);void 0!==e&&e.notifyChange()}invalidate(t){const e=this.properties.get(t);void 0!==e&&e.invalidate()}commit(t){const e=this.properties.get(t);void 0!==e&&e.commit()}_internalSet(t,e){const r=this.lifecycle!==o.F.INITIALIZING?this._origin:u.s3.DEFAULTS;this._setAtOrigin(t,e,r)}_setAtOrigin(t,e,r){const n=this.store,s=t.propertyName;n.has(s,r)&&(0,l.fS)(e,n.get(s))&&~t.flags&f.v.Overriden&&r===n.originOf(s)||(t.invalidate(),n.set(s,e,r),t.commit(),(0,h.mS)(this.host,t))}_cast(t,e){const r=b.acquire();return r.valid=!0,r.value=e,t&&(r.value=t.call(this.host,e,r)),r}}const b=new c.Z(class{constructor(){this.value=null,this.valid=!0}acquire(){this.valid=!0}release(){this.value=null}});var A=r(37697),O=r(26258),S=r(5600),T=r(52011);function E(t){if(null==t)return{value:t};if(Array.isArray(t))return{type:[t[0]],value:null};switch(typeof t){case"object":return t.constructor&&t.constructor.__accessorMetadata__||t instanceof Date?{type:t.constructor,value:t}:t;case"boolean":return{type:Boolean,value:t};case"string":return{type:String,value:t};case"number":return{type:Number,value:t};case"function":return{type:t,value:null};default:return}}class j{constructor(...t){if(this.constructor===j)throw new Error("[accessor] cannot instantiate Accessor. This can be fixed by creating a subclass of Accessor");Object.defineProperty(this,"__accessor__",{enumerable:!1,value:new w(this)}),t.length>0&&this.normalizeCtorArgs&&(this.__accessor__.ctorArgs=this.normalizeCtorArgs.apply(this,t))}static createSubclass(t={}){if(Array.isArray(t))throw new Error("Multi-inheritance unsupported since 4.16");const{properties:e,declaredClass:r,constructor:n}=t;delete t.declaredClass,delete t.properties,delete t.constructor;const s=this;class i extends s{constructor(...t){super(...t),this.inherited=null,n&&n.apply(this,t)}}(0,a.JT)(i.prototype);for(const e in t){const r=t[e];i.prototype[e]="function"==typeof r?function(...t){const n=this.inherited;let i;this.inherited=function(...t){if(s.prototype[e])return s.prototype[e].apply(this,t)};try{i=r.apply(this,t)}catch(t){throw this.inherited=n,t}return this.inherited=n,i}:t[e]}for(const t in e){const r=E(e[t]);(0,S.Cb)(r)(i.prototype,t)}return(0,T.j)(r)(i)}postscript(t){const e=this.__accessor__,r=e.ctorArgs||t;e.initialize(),r&&(this.set(r),e.ctorArgs=null),e.constructed(),this.initialize()}initialize(){}destroy(){this.destroyed||((0,O.BT)(this),this.__accessor__.destroy())}get initialized(){return this.__accessor__&&this.__accessor__.initialized||!1}get constructed(){return this.__accessor__&&this.__accessor__.lifecycle===o.F.CONSTRUCTED||!1}get destroyed(){return this.__accessor__&&this.__accessor__.destroyed||!1}commitProperty(t){this.get(t)}get(t){return(0,i.U2)(this,t)}hasOwnProperty(t){return this.__accessor__?this.__accessor__.has(t):Object.prototype.hasOwnProperty.call(this,t)}isInstanceOf(t){return(0,n.XV)(s.Z.getLogger(this.declaredClass),"isInstanceOf",{replacement:"Use instanceof directly",version:"4.16"}),this instanceof t}keys(){return this.__accessor__?this.__accessor__.keys():[]}set(t,e){return(0,A.t)(this,t,e),this}watch(t,e,r){return(0,O.YP)(this,t,e,r)}_clearOverride(t){return this.__accessor__.clearOverride(t)}_override(t,e){return this.__accessor__.override(t,e)}_isOverridden(t){return this.__accessor__.isOverridden(t)}notifyChange(t){this.__accessor__.notifyChange(t)}_get(t){return this.__accessor__.internalGet(t)}_set(t,e){return this.__accessor__.internalSet(t,e),this}}},3894:(t,e,r)=>{r.d(e,{Z:()=>i});var n=r(71143);function s(t){t.length=0}class i{constructor(t=50,e=50){this._pool=new n.Z(Array,void 0,s,e,t)}acquire(){return this._pool.acquire()}release(t){this._pool.release(t)}prune(){this._pool.prune(0)}static acquire(){return o.acquire()}static release(t){return o.release(t)}static prune(){o.prune()}}const o=new i(100)},96674:(t,e,r)=>{r.d(e,{wq:()=>v,eC:()=>g});var n=r(43697),s=r(15923),i=r(70586),o=r(22974),a=r(31263);class l{constructor(){this._values=new Map,this.multipleOriginsSupported=!1}clone(t){const e=new l;return this._values.forEach(((r,n)=>{t&&t.has(n)||e.set(n,(0,o.d9)(r.value),r.origin)})),e}get(t,e){e=this._normalizeOrigin(e);const r=this._values.get(t);return null==e||(null==r?void 0:r.origin)===e?null==r?void 0:r.value:void 0}originOf(t){var e,r;return null!=(e=null==(r=this._values.get(t))?void 0:r.origin)?e:a.s3.USER}keys(t){t=this._normalizeOrigin(t);const e=[...this._values.keys()];return null==t?e:e.filter((e=>{var r;return(null==(r=this._values.get(e))?void 0:r.origin)===t}))}set(t,e,r){if((r=this._normalizeOrigin(r))===a.s3.DEFAULTS){const e=this._values.get(t);if(e&&null!=e.origin&&e.origin>r)return}this._values.set(t,new c(e,r))}delete(t,e){var r;null!=(e=this._normalizeOrigin(e))&&(null==(r=this._values.get(t))?void 0:r.origin)!==e||this._values.delete(t)}has(t,e){var r;return null!=(e=this._normalizeOrigin(e))?(null==(r=this._values.get(t))?void 0:r.origin)===e:this._values.has(t)}forEach(t){this._values.forEach((({value:e},r)=>t(e,r)))}_normalizeOrigin(t){if(null!=t)return t===a.s3.DEFAULTS?t:a.s3.USER}}class c{constructor(t,e){this.value=t,this.origin=e}}var u=r(41103),h=r(50549),f=r(1153),d=r(76169),p=r(52011);const g=t=>{let e=class extends t{constructor(...t){super(...t);const e=(0,i.j0)((0,f.vw)(this)),r=e.store,n=new l;e.store=n,(0,u.M)(e,r,n)}read(t,e){(0,h.i)(this,t,e)}write(t={},e){return(0,d.c)(this,t,e)}toJSON(t){return this.write({},t)}static fromJSON(t,e){return y.call(this,t,e)}};return e=(0,n._)([(0,p.j)("esri.core.JSONSupport")],e),e.prototype.toJSON.isDefaultToJSON=!0,e};function y(t,e){if(!t)return null;if(t.declaredClass)throw new Error("JSON object is already hydrated");const r=new this;return r.read(t,e),r}let v=class extends(g(s.Z)){};v=(0,n._)([(0,p.j)("esri.core.JSONSupport")],v)},30175:(t,e,r)=>{function n(t,e,r){const n=t.get(e);if(void 0!==n)return n;const s=r();return t.set(e,s),s}r.d(e,{s1:()=>n})},71143:(t,e,r)=>{r.d(e,{Z:()=>n});class n{constructor(t,e,r,n=1,s=0){if(this.ctor=t,this.acquireFunction=e,this.releaseFunction=r,this.allocationSize=n,this._pool=new Array(s),this._initialSize=s,this.ctor)for(let t=0;t<s;t++)this._pool[t]=new this.ctor;this.allocationSize=Math.max(n,1)}destroy(){this.prune(0)}acquire(...t){let e;if(n.test.disabled)e=new this.ctor;else{if(0===this._pool.length){const t=this.allocationSize;for(let e=0;e<t;e++)this._pool[e]=new this.ctor}e=this._pool.pop()}return this.acquireFunction?this.acquireFunction(e,...t):function(t){return t&&t.acquire&&"function"==typeof t.acquire}(e)&&e.acquire(...t),e}release(t){var e;t&&!n.test.disabled&&(this.releaseFunction?this.releaseFunction(t):(e=t)&&e.release&&"function"==typeof e.release&&t.release(),this._pool.push(t))}prune(t=this._initialSize){if(!(t>=this._pool.length)){for(let e=t;e<this._pool.length;++e){const t=this._pool[e];this._dispose(t)}this._pool.length=t}}_dispose(t){t.dispose&&"function"==typeof t.dispose&&t.dispose()}}n.test={disabled:!1}},54790:(t,e,r)=>{r.d(e,{Z:()=>n});class n{constructor(t,e=29){this.name=t,this._counter=0,this._items=new Array(e)}record(t){this._items[++this._counter%this._items.length]=t}get median(){return this._items.slice().sort(((t,e)=>t-e))[Math.floor(this._items.length/2)]}get average(){return this._items.reduce(((t,e)=>t+e),0)/this._items.length}get last(){return this._items[this._counter%this._items.length]}}},44553:(t,e,r)=>{r.d(e,{Z:()=>o});var n,s=r(67676);!function(t){const e=(t,e,r,n)=>{let s=e,i=e;const o=r>>>1,a=t[s-1];for(;i<=o;){i=s<<1,i<r&&n(t[i-1],t[i])<0&&++i;const e=t[i-1];if(n(e,a)<=0)break;t[s-1]=e,s=i}t[s-1]=a},r=(t,e)=>t<e?-1:t>e?1:0;t.sort=function(t,n,s,i){void 0===n&&(n=0),void 0===s&&(s=t.length),void 0===i&&(i=r);for(let r=s>>>1;r>n;r--)e(t,r,s,i);const o=n+1;for(let r=s-1;r>n;r--){const s=t[n];t[n]=t[r],t[r]=s,e(t,o,r,i)}},t.iterableSort=function*(t,n,s,i){void 0===n&&(n=0),void 0===s&&(s=t.length),void 0===i&&(i=r);for(let r=s>>>1;r>n;r--)e(t,r,s,i),yield;const o=n+1;for(let r=s-1;r>n;r--){const s=t[n];t[n]=t[r],t[r]=s,e(t,o,r,i),yield}}}(n||(n={}));const i=n;class o{constructor(t){this.data=[],this._length=0,this._allocator=void 0,this._deallocator=()=>null,this._shrink=()=>{},this._hint=new s.SO,t&&(t.initialSize&&(this.data=new Array(t.initialSize)),t.allocator&&(this._allocator=t.allocator),void 0!==t.deallocator&&(this._deallocator=t.deallocator),t.shrink&&(this._shrink=()=>a(this)))}toArray(){return this.data.slice(0,this.length)}filter(t){const e=new Array;for(let r=0;r<this._length;r++){const n=this.data[r];t(n)&&e.push(n)}return e}getItemAt(t){if(!(t<0||t>=this._length))return this.data[t]}get length(){return this._length}set length(t){if(t>this._length){if(this._allocator){for(;this._length<t;)this.data[this._length++]=this._allocator(this.data[this._length]);return}this._length=t}else{if(this._deallocator)for(let e=t;e<this._length;++e)this.data[e]=this._deallocator(this.data[e]);this._length=t,this._shrink()}}clear(){this.length=0}prune(){this.clear(),this.data=[]}push(t){this.data[this._length++]=t}pushArray(t,e=t.length){for(let r=0;r<e;r++)this.data[this._length++]=t[r]}fill(t,e){for(let r=0;r<e;r++)this.data[this._length++]=t}pushNew(){this._allocator&&(this.data[this.length]=this._allocator(this.data[this.length]));const t=this.data[this._length];return++this._length,t}unshift(t){this.data.unshift(t),this._length++,a(this)}pop(){if(0===this.length)return;const t=this.data[this.length-1];return this.length=this.length-1,this._shrink(),t}remove(t){const e=(0,s.cq)(this.data,t,this.length,this._hint);if(-1!==e)return this.data.splice(e,1),this.length=this.length-1,t}removeUnordered(t){const e=(0,s.e$)(this.data,t,this.length,this._hint);return void 0!==e&&(this.length=this.length-1),this._shrink(),e}removeUnorderedIndex(t){if(!(t>=this.length||t<0))return this.swapElements(t,this.length-1),this.pop()}removeUnorderedMany(t,e=t.length,r){this.length=(0,s.FY)(this.data,t,this.length,e,this._hint,r),this._shrink()}front(){if(0!==this.length)return this.data[0]}back(){if(0!==this.length)return this.data[this.length-1]}swapElements(t,e){t>=this.length||e>=this.length||t===e||([this.data[t],this.data[e]]=[this.data[e],this.data[t]])}sort(t){i.sort(this.data,0,this.length,t)}iterableSort(t){return i.iterableSort(this.data,0,this.length,t)}some(t,e){for(let r=0;r<this.length;++r)if(t.call(e,this.data[r],r,this.data))return!0;return!1}filterInPlace(t,e){let r=0;for(let n=0;n<this._length;++n){const s=this.data[n];t.call(e,s,n,this.data)&&(this.data[n]=this.data[r],this.data[r]=s,r++)}if(this._deallocator)for(let t=r;t<this._length;t++)this.data[t]=this._deallocator(this.data[t]);return this._length=r,this._shrink(),this}forAll(t,e){const r=this.length,n=this.data;for(let s=0;s<r;++s)t.call(e,n[s],s,n)}forEach(t,e){for(let r=0;r<this.length;++r)t.call(e,this.data[r],r,this.data)}map(t,e){const r=new Array(this.length);for(let n=0;n<this.length;++n)r[n]=t.call(e,this.data[n],n,this.data);return r}reduce(t,e){let r=e;for(let e=0;e<this.length;++e)r=t(r,this.data[e],e,this.data);return r}has(t){const e=this.length,r=this.data;for(let n=0;n<e;++n)if(r[n]===t)return!0;return!1}}function a(t){t.data.length>1.5*t.length&&(t.data.length=Math.floor(1.1*t.length))}},20941:(t,e,r)=>{r.d(e,{Z:()=>s});var n=r(58896);class s extends n.Z{constructor(t,e,r){if(super(t,e,r),!(this instanceof s))return new s(t,e,r)}}s.prototype.type="warning"},31263:(t,e,r)=>{r.d(e,{s3:()=>n,kk:()=>o,x3:()=>l,Wm:()=>c,M9:()=>a});var n,s,i=r(70586);(s=n||(n={}))[s.DEFAULTS=0]="DEFAULTS",s[s.COMPUTED=1]="COMPUTED",s[s.SERVICE=2]="SERVICE",s[s.PORTAL_ITEM=3]="PORTAL_ITEM",s[s.WEB_SCENE=4]="WEB_SCENE",s[s.WEB_MAP=5]="WEB_MAP",s[s.USER=6]="USER";const o=n.USER+1;function a(t){switch(t){case"defaults":return n.DEFAULTS;case"service":return n.SERVICE;case"portal-item":return n.PORTAL_ITEM;case"web-scene":return n.WEB_SCENE;case"web-map":return n.WEB_MAP;case"user":return n.USER}}function l(t){switch(t){case n.DEFAULTS:return"defaults";case n.SERVICE:return"service";case n.PORTAL_ITEM:return"portal-item";case n.WEB_SCENE:return"web-scene";case n.WEB_MAP:return"web-map";case n.USER:return"user"}return(0,i.j0)(void 0)}function c(t){return l(t)}},90578:(t,e,r)=>{r.d(e,{p:()=>l});var n=r(75215),s=r(7628);const i=Object.prototype.toString;function o(t){const e="__accessorMetadata__"in t?(0,n.se)(t):t;return function(...t){if(t.push(e),"number"==typeof t[2])throw new Error("Using @cast has parameter decorator is not supported since 4.16");return a.apply(this,t)}}function a(t,e,r,n){(0,s.VZ)(t,e).cast=n}function l(...t){if(3!==t.length||"string"!=typeof t[1])return 1===t.length&&"[object Function]"===i.call(t[0])?o(t[0]):1===t.length&&"string"==typeof t[0]?function(t){return function(e,r){(0,s.VZ)(e,t).cast=e[r]}}(t[0]):void 0}},5600:(t,e,r)=>{r.d(e,{Eg:()=>u,Cb:()=>l,CJ:()=>c});var n=r(92604),s=r(75215),i=r(67723),o=r(7628),a=r(37697);function l(t={}){return(e,r)=>{if(e===Function.prototype)throw new Error(`Inappropriate use of @property() on a static field: ${e.name}.${r}. Accessor does not support static properties.`);const l=Object.getOwnPropertyDescriptor(e,r),c=(0,o.VZ)(e,r);l&&(l.get||l.set?(c.get=l.get||c.get,c.set=l.set||c.set):"value"in l&&("value"in t&&n.Z.getLogger("esri.core.accessorSupport.decorators.property").warn(`@property() will redefine the value of "${r}" on "${e.constructor.name}" already defined in the metadata`,t),c.value=t.value=l.value)),null!=t.readOnly&&(c.readOnly=t.readOnly);const h=t.aliasOf;if(h){const t="string"==typeof h?h:h.source,e="string"==typeof h?null:!0===h.overridable;let n;c.dependsOn=[t],c.get=function(){let e=(0,i.U2)(this,t);if("function"==typeof e){n||(n=t.split(".").slice(0,-1).join("."));const r=(0,i.U2)(this,n);r&&(e=e.bind(r))}return e},c.readOnly||(c.set=e?function(t){void 0!==t?this._override(r,t):this._clearOverride(r)}:function(e){(0,a.t)(this,t,e)})}const f=t.type,d=t.types;c.cast||(f?c.cast=function(t){let e=0,r=t;if((0,s.AY)(t))return(0,s.sY)(t);for(;Array.isArray(r)&&1===r.length&&"string"!=typeof r[0]&&"number"!=typeof r[0];)r=r[0],e++;const n=r;if((0,s.gB)(n))return 0===e?(0,s.i$)(n):(0,s.Iu)((0,s.i$)(n),e);if(1===e)return(0,s.rY)(n);if(e>1)return(0,s.di)(n,e);const i=t;return i.from?i.from:(0,s.se)(i)}(f):d&&(Array.isArray(d)?c.cast=(0,s.Ls)((0,s.N7)(d[0])):c.cast=(0,s.N7)(d))),t.range&&(c.cast=u(c.cast,t.range)),(0,o.tz)(c,t)}}function c(t,e,r){const n=(0,o.VZ)(t,r);n.json||(n.json={});let s=n.json;return void 0!==e&&(s.origins||(s.origins={}),s.origins[e]||(s.origins[e]={}),s=s.origins[e]),s}function u(t,e){return r=>{let n=+t(r);return null!=e.step&&(n=Math.round(n/e.step)*e.step),null!=e.min&&(n=Math.max(e.min,n)),null!=e.max&&(n=Math.min(e.max,n)),n}}},52011:(t,e,r)=>{r.d(e,{j:()=>c}),r(80442);var n=r(97831),s=r(7628),i=r(58971),o=r(53906);const a=new Set,l=new Set;function c(t){return e=>{e.prototype.declaredClass=t,h(e);const r=[],n=[];let i=e.prototype;for(;i;)i.hasOwnProperty("initialize")&&!a.has(i.initialize)&&(a.add(i.initialize),r.push(i.initialize)),i.hasOwnProperty("destroy")&&!l.has(i.destroy)&&(l.add(i.destroy),n.push(i.destroy)),i=Object.getPrototypeOf(i);a.clear(),l.clear();class o extends e{constructor(...t){if(super(...t),this.constructor===o&&"function"==typeof this.postscript){if(r.length&&Object.defineProperty(this,"initialize",{enumerable:!1,configurable:!0,value(){for(let t=r.length-1;t>=0;t--)r[t].call(this)}}),n.length){let t=!1;Object.defineProperty(this,"destroy",{enumerable:!1,configurable:!0,value(){if(!t){t=!0;for(let t=0;t<n.length;t++)n[t].call(this)}}})}this.postscript(...t)}}}return o.__accessorMetadata__=(0,s.JT)(e.prototype),o.prototype.declaredClass=t,o}}function u(t,e){return null==e.get?function(){const e=this.__accessor__.properties.get(t);if(void 0===e)return;(0,i.it)(e);const r=this.__accessor__.store;return r.has(t)?r.get(t):e.metadata.value}:function(){const e=this.__accessor__.properties.get(t);if(void 0!==e)return e.getComputed()}}function h(t){const e=t.prototype,r=(0,s.JT)(e).properties,i={};for(const t of Object.getOwnPropertyNames(r)){const e=r[t];(0,o.OM)(e),i[t]={enumerable:!0,configurable:!0,get:u(t,e),set(r){const s=this.__accessor__;if(void 0!==s){if(!Object.isFrozen(this)){if(s.initialized&&e.readOnly)throw new TypeError(`[accessor] cannot assign to read-only property '${t}' of ${this.declaredClass}`);if(s.lifecycle===n.F.CONSTRUCTED&&e.constructOnly)throw new TypeError(`[accessor] cannot assign to construct-only property '${t}' of ${this.declaredClass}`);s.set(t,r)}}else Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:r})}}}Object.defineProperties(t.prototype,i)}},41103:(t,e,r)=>{r.d(e,{M:()=>s});var n=r(31263);function s(t,e,r){e.keys().forEach((t=>{r.set(t,e.get(t),n.s3.DEFAULTS)}));const s=t.metadatas;Object.keys(s).forEach((e=>{t.internalGet(e)&&r.set(e,t.internalGet(e),n.s3.DEFAULTS)}))}},75215:(t,e,r)=>{r.d(e,{z8:()=>k,rY:()=>A,Ls:()=>b,TJ:()=>y,vU:()=>u,sY:()=>D,di:()=>T,Iu:()=>S,q9:()=>c,i$:()=>j,N7:()=>N,Zs:()=>l,se:()=>w,AY:()=>I,gB:()=>E,V5:()=>C}),r(80442);var n=r(92604),s=r(30175);const i=n.Z.getLogger("esri.core.Accessor");function o(t){return null==t?t:new Date(t)}function a(t){return null==t?t:!!t}function l(t){return null==t?t:t.toString()}function c(t){return null==t?t:(t=parseFloat(t),isNaN(t)?0:t)}function u(t){return null==t?t:Math.round(parseFloat(t))}function h(t){return t&&t.constructor&&void 0!==t.constructor.__accessorMetadata__}function f(t,e){return null!=e&&t&&!(e instanceof t)}function d(t){return t&&"isCollection"in t}function p(t){return t&&t.Type?"function"==typeof t.Type?t.Type:t.Type.base:null}function g(t,e){return!!h(e)&&(i.error("Accessor#set","Assigning an instance of '"+(e.declaredClass||"unknown")+"' which is not a subclass of '"+v(t)+"'"),!0)}function y(t,e){return null==e?e:d(t)?function(t,e){if(!e||!e.constructor||!d(e.constructor))return g(t,e)?e:new t(e);const r=p(t.prototype.itemType),n=p(e.constructor.prototype.itemType);return r?n?r===n?e:r.prototype.isPrototypeOf(n.prototype)?new t(e):(g(t,e),e):new t(e):e}(t,e):f(t,e)?g(t,e)?e:new t(e):e}function v(t){return t&&t.prototype&&t.prototype.declaredClass||"unknown"}const _=new WeakMap;function m(t){switch(t){case Number:return c;case k:return u;case Boolean:return a;case String:return l;case Date:return o;default:return(0,s.s1)(_,t,(()=>y.bind(null,t)))}}function w(t,e){const r=m(t);return 1===arguments.length?r:r(e)}function b(t,e,r){return 1===arguments.length?b.bind(null,t):e?Array.isArray(e)?e.map((e=>t(e,r))):[t(e,r)]:e}function A(t,e){return 1===arguments.length?b(w.bind(null,t)):b(w.bind(null,t),e)}function O(t,e,r){return 0!==e&&Array.isArray(r)?r.map((r=>O(t,e-1,r))):t(r)}function S(t,e,r){if(2===arguments.length)return S.bind(null,t,e);if(!r)return r;let n=e,s=r=O(t,e,r);for(;n>0&&Array.isArray(s);)n--,s=s[0];if(void 0!==s)for(let t=0;t<n;t++)r=[r];return r}function T(t,e,r){return 2===arguments.length?S(w.bind(null,t),e):S(w.bind(null,t),e,r)}function E(t){return!!Array.isArray(t)&&!t.some((e=>{const r=typeof e;return!("string"===r||"number"===r||"function"===r&&t.length>1)}))}function j(t,e){if(2===arguments.length)return j(t).call(null,e);const r=new Set,n=t.filter((t=>"function"!=typeof t)),s=t.filter((t=>"function"==typeof t));for(const e of t)"string"!=typeof e&&"number"!=typeof e||r.add(e);let o=null,a=null;return(t,e)=>{if(null==t)return t;const l=typeof t,c="string"===l||"number"===l;return c&&(r.has(t)||s.some((t=>"string"===l&&t===String||"number"===l&&t===Number)))||"object"===l&&s.some((e=>!f(t,e)))?t:(c&&n.length?(o||(o=n.map((t=>"string"==typeof t?`'${t}'`:`${t}`)).join(", ")),i.error("Accessor#set",`'${t}' is not a valid value for this property, only the following values are valid: ${o}`)):"object"==typeof t&&s.length?(a||(a=s.map((t=>v(t))).join(", ")),i.error("Accessor#set",`'${t}' is not a valid value for this property, value must be one of ${a}`)):i.error("Accessor#set",`'${t}' is not a valid value for this property`),e&&(e.valid=!1),null)}}function N(t,e){if(2===arguments.length)return N(t).call(null,e);const r={},n=[],s=[];for(const e in t.typeMap){const i=t.typeMap[e];r[e]=w(i),n.push(v(i)),s.push(e)}const o=()=>`'${n.join("', '")}'`,a=()=>`'${s.join("', '")}'`,l="string"==typeof t.key?e=>e[t.key]:t.key;return e=>{if(t.base&&!f(t.base,e))return e;if(null==e)return e;const n=l(e)||t.defaultKeyValue,s=r[n];if(!s)return i.error("Accessor#set",`Invalid property value, value needs to be one of ${o()}, or a plain object that can autocast (having .type = ${a()})`),null;if(!f(t.typeMap[n],e))return e;if("string"==typeof t.key&&!h(e)){const r={};for(const n in e)n!==t.key&&(r[n]=e[n]);return s(r)}return s(e)}}class k{}const C={native:t=>({type:"native",value:t}),array:t=>({type:"array",value:t}),oneOf:t=>({type:"one-of",values:t})};function I(t){if(!t||!("type"in t))return!1;switch(t.type){case"native":case"array":case"one-of":return!0}return!1}function D(t){switch(t.type){case"native":return w(t.value);case"array":return b(D(t.value));case"one-of":return function(t){let e=null;return(r,n)=>U(r,t)?r:(null==e&&(e=M(t)),i.error("Accessor#set",`Invalid property value, value needs to be of type ${e}`),n&&(n.valid=!1),null)}(t);default:return null}}function M(t){switch(t.type){case"native":switch(t.value){case Number:return"number";case String:return"string";case Boolean:return"boolean";case k:return"integer";case Date:return"date";default:return v(t.value)}case"array":return`array of ${M(t.value)}`;case"one-of":{const e=t.values.map((t=>M(t)));return`one of ${e.slice(0,e.length-1)} or ${e[e.length-1]}`}}return"unknown"}function U(t,e){if(null==t)return!0;switch(e.type){case"native":switch(e.value){case Number:case k:return"number"==typeof t;case Boolean:return"boolean"==typeof t;case String:return"string"==typeof t}return t instanceof e.value;case"array":return!!Array.isArray(t)&&!t.some((t=>!U(t,e.value)));case"one-of":return e.values.some((e=>U(t,e)))}}},53906:(t,e,r)=>{r.d(e,{hk:()=>f,HS:()=>u,Ah:()=>h,OM:()=>y});var n=r(75215),s=r(63213);function i(t){if(t.json||(t.json={}),a(t.json),l(t.json),o(t.json),t.json.origins)for(const e in t.json.origins)a(t.json.origins[e]),l(t.json.origins[e]),o(t.json.origins[e]);return!0}function o(t){t.name&&(t.read&&"object"==typeof t.read?void 0===t.read.source&&(t.read.source=t.name):t.read={source:t.name},t.write&&"object"==typeof t.write?void 0===t.write.target&&(t.write.target=t.name):t.write={target:t.name})}function a(t){"boolean"==typeof t.read?t.read={enabled:t.read}:"function"==typeof t.read?t.read={enabled:!0,reader:t.read}:t.read&&"object"==typeof t.read&&void 0===t.read.enabled&&(t.read.enabled=!0)}function l(t){"boolean"==typeof t.write?t.write={enabled:t.write}:"function"==typeof t.write?t.write={enabled:!0,writer:t.write}:t.write&&"object"==typeof t.write&&void 0===t.write.enabled&&(t.write.enabled=!0)}var c=r(827);function u(t,e){return f(t,"read",e)}function h(t,e){return f(t,"write",e)}function f(t,e,r){let n=t&&t.json;if(t&&t.json&&t.json.origins&&r){const s=t.json.origins[r.origin];s&&("any"===e||e in s)&&(n=s)}return n}function d(t){return t.type?p(t):g(t)}function p(t){if(!t.type)return;let e=0,r=t.type;for(;Array.isArray(r)&&!(0,n.gB)(r);)r=r[0],e++;return{type:r,ndimArray:e}}function g(t){if(!t.types)return;let e=0,r=t.types;for(;Array.isArray(r);)r=r[0],e++;return{types:r,ndimArray:e}}function y(t){i(t)&&(function(t){if(t.json&&t.json.origins){const e=t.json.origins,r={"web-document":["web-scene","web-map"]};for(const t in r)if(e[t]){const n=e[t];r[t].forEach((t=>{e[t]=n})),delete e[t]}}}(t),function(t){const e=function(t){return t.json.types?g(t.json):t.type?p(t):g(t)}(t);if(t.json.origins)for(const r in t.json.origins){const n=t.json.origins[r],i=n.types?d(n):e;(0,s.U)(i,n,!1),n.types&&!n.write&&t.json.write&&t.json.write.enabled&&(n.write={...t.json.write}),(0,c.U)(i,n)}(0,s.U)(e,t.json,!0),(0,c.U)(e,t.json)}(t))}},63213:(t,e,r)=>{r.d(e,{U:()=>c,d:()=>u});var n=r(92604),s=r(78286),i=r(20941),o=r(7628),a=r(14062);const l=n.Z.getLogger("esri.core.accessorSupport.extensions.serializableProperty.reader");function c(t,e,r){var n,i;t&&(!r&&!e.read||null!=(n=e.read)&&n.reader||!1===(null==(i=e.read)?void 0:i.enabled)||function(t){return"types"in t?y(t.types):g(t.type)}(t)&&(0,s.RB)("read.reader",u(t),e))}function u(t){var e;const r=null!=(e=t.ndimArray)?e:0;if(r>1)return function(t){var e;const r=h(t),n=f.bind(null,r),s=null!=(e=t.ndimArray)?e:0;return(t,e,r)=>{if(null==t)return t;t=n(t,r,s);let i=s,o=t;for(;i>0&&Array.isArray(o);)i--,o=o[0];if(void 0!==o)for(let e=0;e<i;e++)t=[t];return t}}(t);if(1===r)return d(t);if("type"in t&&p(t.type)){var n,s;const e=null==(n=t.type.prototype)||null==(s=n.itemType)?void 0:s.Type,r=d("function"==typeof e?{type:e}:{types:e});return(e,n,s)=>{const i=r(e,n,s);return i?new t.type(i):i}}return h(t)}function h(t){return"type"in t?function(t){return t.prototype.read?(e,r,n)=>{if(null==e)return e;const s=typeof e;if("object"!==s)return void l.error(`Expected JSON value of type 'object' to deserialize type '${t.prototype.declaredClass}', but got '${s}'`);const i=new t;return i.read(e,n),i}:t.fromJSON}(t.type):function(t){var e;let r=null;const n=null!=(e=t.errorContext)?e:"type";return(e,s,a)=>{if(null==e)return e;const c=typeof e;if("object"!==c)return void l.error(`Expected JSON value of type 'object' to deserialize, but got '${c}'`);r||(r=function(t){const e={};for(const s in t.typeMap){var r,n;const i=t.typeMap[s],a=(0,o.JT)(i.prototype);if("function"==typeof t.key)continue;const l=a.properties[t.key];if(!l)continue;null!=(r=l.json)&&r.type&&Array.isArray(l.json.type)&&1===l.json.type.length&&"string"==typeof l.json.type[0]&&(e[l.json.type[0]]=i);const c=null==(n=l.json)?void 0:n.write;if(!c||!c.writer){e[s]=i;continue}const u=c.target,h="string"==typeof u?u:t.key,f={};c.writer(s,f,h),f[h]&&(e[f[h]]=i)}return e}(t));const u=t.key;if("string"!=typeof u)return;const h=e[u],f=h?r[h]:t.defaultKeyValue?t.typeMap[t.defaultKeyValue]:void 0;if(!f){const t=`Type '${h||"unknown"}' is not supported`;return a&&a.messages&&e&&a.messages.push(new i.Z(`${n}:unsupported`,t,{definition:e,context:a})),void l.error(t)}const d=new f;return d.read(e,a),d}}(t.types)}function f(t,e,r,n){return 0!==n&&Array.isArray(e)?e.map((e=>f(t,e,r,n-1))):t(e,void 0,r)}function d(t){const e=h(t);return(t,r,n)=>{if(null==t)return t;if(Array.isArray(t)){const r=[];for(const s of t){const t=e(s,void 0,n);void 0!==t&&r.push(t)}return r}const s=e(t,void 0,n);return void 0!==s?[s]:void 0}}function p(t){if(!(0,a.u)(t))return!1;const e=t.prototype.itemType;return!(!e||!e.Type)&&("function"==typeof e.Type?g(e.Type):y(e.Type))}function g(t){return!Array.isArray(t)&&!!t&&t.prototype&&("read"in t.prototype||"fromJSON"in t||p(t))}function y(t){for(const e in t.typeMap)if(!g(t.typeMap[e]))return!1;return!0}},14062:(t,e,r)=>{function n(t){return!!t&&t.prototype&&t.prototype.declaredClass&&0===t.prototype.declaredClass.indexOf("esri.core.Collection")}r.d(e,{u:()=>n})},827:(t,e,r)=>{r.d(e,{U:()=>l,k:()=>f});var n=r(20102),s=r(92604),i=r(78286),o=r(14062);const a=s.Z.getLogger("esri.core.accessorSupport.extensions.serializableProperty.writer");function l(t,e){var r;if(!e.write||e.write.writer||!1===e.write.enabled&&!e.write.overridePolicy)return;const n=null!=(r=null==t?void 0:t.ndimArray)?r:0;t&&(1===n||"type"in t&&(0,o.u)(t.type))?e.write.writer=d:n>1?e.write.writer=function(t){return function(e,r,n,s){let o;if(null===e)o=null;else{o=p(e,s,t);let r=t,n=o;for(;r>0&&Array.isArray(n);)r--,n=n[0];if(void 0!==n)for(let t=0;t<r;t++)o=[o]}(0,i.RB)(n,o,r)}}(n):e.types?Array.isArray(e.types)?e.write.writer=function(t){return(e,r,n,s)=>e&&Array.isArray(e)?u(e.filter((e=>c(e,t,s))),r,n,s):u(e,r,n,s)}(e.types[0]):e.write.writer=function(t){return(e,r,n,s)=>e?c(e,t,s)?u(e,r,n,s):void 0:u(e,r,n,s)}(e.types):e.write.writer=u}function c(t,e,r){for(const r in e.typeMap)if(t instanceof e.typeMap[r])return!0;if(null!=r&&r.messages){var s,i;const o=null!=(s=e.errorContext)?s:"type",l=`Values of type '${null!=(i="function"!=typeof e.key?t[e.key]:t.declaredClass)?i:"Unknown"}' cannot be written`;r&&r.messages&&t&&r.messages.push(new n.Z(`${o}:unsupported`,l,{definition:t,context:r})),a.error(l)}return!1}function u(t,e,r,n){(0,i.RB)(r,h(t,n),e)}function h(t,e){return t&&"function"==typeof t.write?t.write({},e):t&&"function"==typeof t.toJSON?t.toJSON():"number"==typeof t?f(t):t}function f(t){return t===-1/0?-Number.MAX_VALUE:t===1/0?Number.MAX_VALUE:isNaN(t)?null:t}function d(t,e,r,n){let s;null===t?s=null:t&&"function"==typeof t.map?(s=t.map((t=>h(t,n))),"function"==typeof s.toArray&&(s=s.toArray())):s=[h(t,n)],(0,i.RB)(r,s,e)}function p(t,e,r){return 0!==r&&Array.isArray(t)?t.map((t=>p(t,e,r-1))):h(t,e)}},67723:(t,e,r)=>{r.d(e,{Gg:()=>l,U2:()=>a,$z:()=>o});var n=r(1153);function s(t,e){const r="?"===t[t.length-1]?t.slice(0,-1):t;if(null!=e.getItemAt||Array.isArray(e)){const t=parseInt(r,10);if(!isNaN(t))return Array.isArray(e)?e[t]:e.getItemAt(t)}const s=(0,n.vw)(e);return(0,n.b6)(s,r)?s.get(r):e[r]}function i(t,e,r){if(null==t)return t;const n=s(e[r],t);return!n&&r<e.length-1?void 0:r===e.length-1?n:i(n,e,r+1)}function o(t,e,r=0){return"string"==typeof e&&-1===e.indexOf(".")?s(e,t):i(t,(0,n.NI)(e),r)}function a(t,e){return o(t,e)}function l(t,e){return void 0!==o(e,t)}},97831:(t,e,r)=>{var n;r.d(e,{F:()=>n}),function(t){t[t.INITIALIZING=0]="INITIALIZING",t[t.CONSTRUCTING=1]="CONSTRUCTING",t[t.CONSTRUCTED=2]="CONSTRUCTED"}(n||(n={}))},7628:(t,e,r)=>{r.d(e,{JT:()=>a,VZ:()=>l,tz:()=>c});var n=r(22974),s=r(70586),i=r(1153);class o{constructor(t){this.autoDestroy=!1,this.properties=t}}function a(t){let e=t.constructor.__accessorMetadata__;const r=Object.prototype.hasOwnProperty.call(t.constructor,"__accessorMetadata__");if(e){if(!r){const r=Object.create(e.properties),s=e.autoDestroy;for(const t in r)r[t]=(0,n.d9)(r[t]);e=new o(r),e.autoDestroy=s,Object.defineProperty(t.constructor,"__accessorMetadata__",{value:e,enumerable:!1,configurable:!0,writable:!0})}}else e=new o({}),Object.defineProperty(t.constructor,"__accessorMetadata__",{value:e,enumerable:!1,configurable:!0,writable:!0});return(0,s.j0)(t.constructor.__accessorMetadata__)}function l(t,e){const r=function(t){return a(t).properties}(t);let n=r[e];return n||(n=r[e]={}),n}function c(t,e){return(0,i.TS)(t,e,h)}const u=/^(?:[^.]+\.)?(?:value|type|(?:json\.type|json\.origins\.[^.]\.type))$/;function h(t){return u.test(t)?"replace":"merge"}},50549:(t,e,r)=>{r.d(e,{i:()=>u,$:()=>h});var n=r(67723),s=r(1153),i=r(53906);function o(t,e,r){if(!t||!t.read||!1===t.read.enabled||!t.read.source)return!1;const s=t.read.source;if("string"==typeof s){if(s===e)return!0;if(s.indexOf(".")>-1&&0===s.indexOf(e)&&(0,n.Gg)(s,r))return!0}else for(const t of s){if(t===e)return!0;if(t.indexOf(".")>-1&&0===t.indexOf(e)&&(0,n.Gg)(t,r))return!0}return!1}function a(t,e,r,n,s){let a=(0,i.HS)(e[r],s);(function(t){return t&&(!t.read||!1!==t.read.enabled&&!t.read.source)})(a)&&(t[r]=!0);for(const l of Object.getOwnPropertyNames(e))a=(0,i.HS)(e[l],s),o(a,r,n)&&(t[l]=!0)}function l(t,e,r,n){const s=r.metadatas,o=(0,i.hk)(s[e],"any",n),a=o&&o.default;if(void 0===a)return;const l="function"==typeof a?a.call(t,e,n):a;void 0!==l&&r.set(e,l)}const c={origin:"service"};function u(t,e,r=c){if(!e||"object"!=typeof e)return;const o=(0,s.vw)(t),u=o.metadatas,h={};for(const t of Object.getOwnPropertyNames(e))a(h,u,t,e,r);o.setDefaultOrigin(r.origin);for(const s of Object.getOwnPropertyNames(h)){const a=(0,i.HS)(u[s],r).read,l=a&&a.source;let c;c=l&&"string"==typeof l?(0,n.$z)(e,l):e[s],a&&a.reader&&(c=a.reader.call(t,c,e,r)),void 0!==c&&o.set(s,c)}if(!r||!r.ignoreDefaults){o.setDefaultOrigin("defaults");for(const e of Object.getOwnPropertyNames(u))h[e]||l(t,e,o,r)}o.setDefaultOrigin("user")}function h(t,e,r,n=c){var s;const i={...n,messages:[]};r(i),null==(s=i.messages)||s.forEach((e=>{"warning"!==e.type||t.loaded?n&&n.messages&&n.messages.push(e):t.loadWarnings.push(e)}))}},37697:(t,e,r)=>{r.d(e,{t:()=>a});var n=r(20102),s=r(80442),i=r(92604),o=r(67723);function a(t,e,r){if(t&&e)if("object"==typeof e)for(const r of Object.getOwnPropertyNames(e))a(t,r,e[r]);else{if(-1!==e.indexOf(".")){const n=e.split("."),s=n.splice(n.length-1,1)[0];return void a((0,o.U2)(t,n),s,r)}const i=t.__accessor__;null!=i&&function(t,e){if((0,s.Z)("esri-unknown-property-errors")&&!function(t,e){return null!=e.metadatas[t]}(t,e))throw new n.Z("set:unknown-property",function(t,e){return"setting unknown property '"+t+"' on instance of "+e.host.declaredClass}(t,e))}(e,i),t[e]=r}}i.Z.getLogger("esri.core.accessorSupport.set")},58971:(t,e,r)=>{r.d(e,{mS:()=>v,LJ:()=>f,gb:()=>d,it:()=>c,GF:()=>m}),r(80442);var n=r(92604),s=r(1153),i=r(44550);let o,a=[];const l=n.Z.getLogger("esri.core.Accessor");function c(t){void 0!==o&&o.onObservableAccessed(t)}let u=!1,h=!1;function f(t,e,r){if(u)return p(t,e,r);g(t);const n=e.call(r);return y(),n}function d(t,e){return f(void 0,t,e)}function p(t,e,r){const n=u;u=!0,g(t);let s=null;try{s=e.call(r)}catch(t){h&&l.error(t)}return y(),u=n,s}function g(t){o=t,a.push(t)}function y(){const t=a.pop();o=a.length>0?a[a.length-1]:void 0,void 0!==t&&t.onTrackingEnd()}function v(t,e){if(e.flags&i.v.DepTrackingInitialized)return;const r=h;h=!1,e.flags&i.v.AutoTracked?p(e,e.metadata.get,t):m(t,e),h=r}const _=[];function m(t,e){e.flags&i.v.ExplicitlyTracking||(e.flags|=i.v.ExplicitlyTracking,p(e,(()=>{const r=e.metadata.dependsOn||_;for(const e of r)if("string"==typeof e&&-1===e.indexOf("."))w(t,e,!1);else{const r=(0,s.NI)(e);for(let e=0,n=t;e<r.length&&null!=n&&"object"==typeof n;++e)n=w(n,r[e],e!==r.length-1)}})),e.flags&=~i.v.ExplicitlyTracking)}function w(t,e,r){const n="?"===e[e.length-1]?e.slice(0,-1):e;if(null!=t.getItemAt||Array.isArray(t)){const e=parseInt(n,10);if(!isNaN(e))return Array.isArray(t)?t[e]:t.getItemAt(e)}const i=(0,s.vw)(t),o=null==i?void 0:i.properties.get(n);return o&&(c(o),v(t,o)),r?t[n]:void 0}},87538:(t,e,r)=>{r.d(e,{EH:()=>c,U5:()=>a,Xz:()=>l});var n=r(58971),s=r(38805);let i=!1;const o=[];function a(t,e){let r=new s.M((function s(){if(!r||a)return;if(i)return void u(s);const l=o;r.clear(),i=!0,a=!0,o=(0,n.LJ)(r,t),a=!1,i=!1,e(o,l),h()})),o=null,a=!1;return a=!0,o=(0,n.LJ)(r,t),a=!1,{remove:function(){r&&(r.destroy(),r=null,o=null)}}}function l(t,e){let r=new s.M((function(){e(i,o)})),i=null;function o(){return r?(r.clear(),i=(0,n.LJ)(r,t),i):null}return o(),{remove:function(){r&&(r.destroy(),r=null),i=null}}}function c(t){let e=new s.M((function s(){e&&!r&&(i?u(s):(e.clear(),i=!0,r=!0,(0,n.LJ)(e,t),r=!1,i=!1,h()))})),r=!1;return r=!0,(0,n.LJ)(e,t),r=!1,{remove:function(){e&&(e.destroy(),e=null)}}}function u(t){o.includes(t)||o.unshift(t)}function h(){for(;o.length;)o.pop()()}},44550:(t,e,r)=>{var n;r.d(e,{v:()=>n}),function(t){t[t.Dirty=1]="Dirty",t[t.Overriden=2]="Overriden",t[t.Computing=4]="Computing",t[t.NonNullable=8]="NonNullable",t[t.HasDefaultValue=16]="HasDefaultValue",t[t.DepTrackingInitialized=32]="DepTrackingInitialized",t[t.AutoTracked=64]="AutoTracked",t[t.ExplicitlyTracking=128]="ExplicitlyTracking"}(n||(n={}))},39020:(t,e,r)=>{r.d(e,{X:()=>s});var n=r(67676);class s{constructor(t,e){this._observers=t,this._observer=e}remove(){(0,n.Od)(this._observers,this._observer)}}},38805:(t,e,r)=>{r.d(e,{M:()=>n});class n{constructor(t){this._notify=t,this._accessed=[],this._handles=[],this._invalidCount=0}destroy(){this._accessed.length=0,this.clear()}onInvalidated(){this._invalidCount++}onCommitted(){const t=this._invalidCount;if(1===t)return this._invalidCount=0,void this._notify();this._invalidCount=t>0?t-1:0}onObservableAccessed(t){this._accessed.includes(t)||this._accessed.push(t)}onTrackingEnd(){const t=this._handles,e=this._accessed;for(let r=0;r<e.length;++r)t.push(e[r].observe(this));e.length=0}clear(){const t=this._handles;for(let e=0;e<t.length;++e)t[e].remove();t.length=0}}},1153:(t,e,r)=>{r.d(e,{vw:()=>o,b6:()=>a,TS:()=>l,IH:()=>d,Qc:()=>f,NI:()=>u});var n=r(50758),s=r(22974),i=r(70586);function o(t){return t?t.__accessor__?t.__accessor__:t.propertyInvalidated?t:null:null}function a(t,e){return null!=t&&t.metadatas&&null!=t.metadatas[e]}function l(t,e,r){return c(t,e,r?{policy:r,path:""}:null)}function c(t,e,r){return e?Object.keys(e).reduce((function(t,n){let o=null,a="merge";if(r&&(o=r.path?`${r.path}.${n}`:n,a=r.policy(o)),"replace"===a)return t[n]=e[n],t;if(void 0===t[n])return t[n]=(0,s.d9)(e[n]),t;let l=t[n],u=e[n];if(l===u)return t;if(Array.isArray(u)||Array.isArray(t))l=l?Array.isArray(l)?t[n]=l.concat():t[n]=[l]:t[n]=[],u&&(Array.isArray(u)||(u=[u]),u.forEach((t=>{-1===l.indexOf(t)&&l.push(t)})));else if(u&&"object"==typeof u)if(r){const e=r.path;r.path=(0,i.j0)(o),t[n]=c(l,u,r),r.path=e}else t[n]=c(l,u,null);else t.hasOwnProperty(n)&&!e.hasOwnProperty(n)||(t[n]=u);return t}),t||{}):t}function u(t){return Array.isArray(t)?t:t.split(".")}function h(t){return t.indexOf(",")>-1?t.split(",").map((t=>t.trim())):[t.trim()]}function f(t,e,r,s){const i=function(t){if(Array.isArray(t)){const e=[];for(const r of t)e.push(...h(r));return e}return h(t)}(e);if(1!==i.length){const e=i.map((e=>s(t,e,r)));return(0,n.AL)(e)}return s(t,i[0],r)}function d(t){let e=!1;return()=>{e||(e=!0,t())}}},26258:(t,e,r)=>{r.d(e,{BT:()=>b,YP:()=>T,aQ:()=>E});var n=r(3894),s=r(22974),i=r(70586),o=r(71143);class a extends o.Z{constructor(){super(...arguments),this._set=new Set}destroy(){super.destroy(),this._set=(0,i.Bd)(this._set)}acquire(...t){const e=super.acquire(...t);return this._set.delete(e),e}release(t){t&&!this._set.has(t)&&(super.release(t),this._set.add(t))}_dispose(t){this._set.delete(t),super._dispose(t)}}var l,c,u=r(1654),h=r(99001),f=r(67723),d=r(87538),p=r(1153);(c=l||(l={}))[c.Untracked=0]="Untracked",c[c.Tracked=1]="Tracked";class g{constructor(){this.uid=(0,h.D)(),this.removed=!1,this.type=null,this.oldValue=null,this.callback=null,this.getValue=null,this.target=null,this.path=null,this.equals=null}static acquireUntracked(t,e,r,n,i){return this.pool.acquire(l.Untracked,t,e,r,n,i,s.fS)}static acquireTracked(t,e,r,n){return this.pool.acquire(l.Tracked,t,e,r,null,null,n)}notify(t,e){this.type===l.Untracked?this.callback.call(this.target,t,e,this.path,this.target):this.callback.call(null,t,e)}acquire(t,e,r,n,s,i,o){this.uid=(0,h.D)(),this.removed=!1,this.type=t,this.oldValue=e,this.callback=r,this.getValue=n,this.target=s,this.path=i,this.equals=o}release(){this.target=this.path=this.oldValue=this.callback=this.getValue=null,this.uid=(0,h.D)(),this.removed=!0}}g.pool=new a(g);const y=new n.Z,v=new Set;let _;function m(t){v.delete(t),v.add(t),_||(_=(0,u.Os)(A))}function w(t){if(t.removed)return;const e=t.oldValue,r=t.getValue();t.equals(e,r)||(t.oldValue=r,t.notify(r,e))}function b(t){for(const e of v.values())e.target===t&&(e.removed=!0)}function A(){let t=10;for(;_&&t--;){_=null;const t=O(),e=y.acquire();for(const r of t){const t=r.uid;w(r),t===r.uid&&r.removed&&e.push(r)}for(const t of v)t.removed&&(e.push(t),v.delete(t));for(const t of e)g.pool.release(t);y.release(e),y.release(t),S.forEach((t=>t()))}}function O(){const t=y.acquire();t.length=v.size;let e=0;for(const r of v)t[e]=r,++e;return v.clear(),t}const S=new Set;function T(t,e,r,n=!1){return!t.__accessor__||t.__accessor__.destroyed?{remove(){}}:n?function(t,e,r){const n=(0,p.Qc)(t,e,r,((t,e,r)=>{let i=!1;return(0,d.U5)((()=>(0,f.$z)(t,e)),((o,a)=>{t.__accessor__.destroyed?n.remove():i||(i=!0,(0,s.fS)(a,o)||r.call(t,o,a,e,t),i=!1)}))}));return n}(t,e,r):function(t,e,r){let n=(0,p.Qc)(t,e,r,((t,e,r)=>{let s,i,o=(0,d.Xz)((()=>(0,f.$z)(t,e)),((o,a)=>{t.__accessor__.destroyed||s&&s.uid!==i?n.remove():(s||(s=g.acquireUntracked(o,r,a,t,e),i=s.uid),m(s))}));return{remove:(0,p.IH)((()=>{o.remove(),s&&(s.uid!==i||s.removed||(s.removed=!0,m(s)),s=null),n=o=null}))}}));return n}(t,e,r)}function E(t,e,r=!1,n=s.fS){return r?function(t,e,r){let n=!1;return(0,d.U5)(t,((t,s)=>{n||(n=!0,r(s,t)||e(t,s),n=!1)}))}(t,e,n):function(t,e,r){let n,s,i=(0,d.Xz)(t,((t,o)=>{n&&n.uid!==s?i.remove():(n||(n=g.acquireTracked(t,e,o,r),s=n.uid),m(n))}));return{remove:(0,p.IH)((()=>{i.remove(),n&&(n.uid!==s||n.removed||(n.removed=!0,m(n)),n=null),i=null}))}}(t,e,n)}},76169:(t,e,r)=>{r.d(e,{d:()=>f,c:()=>d});var n=r(67676),s=r(20102),i=r(92604),o=r(31263),a=r(1153),l=r(53906);const c=i.Z.getLogger("esri.core.accessorSupport.write");function u(t,e,r,n,s){var i,o;const a={};return null==(i=e.write)||null==(o=i.writer)||o.call(t,n,a,r,s),a}function h(t,e,r,i,a,l){if(!i||!i.write)return!1;const u=t.get(r);if(!a&&i.write.overridePolicy){const e=i.write.overridePolicy.call(t,u,r,l);void 0!==e&&(a=e)}if(a||(a=i.write),!a||!1===a.enabled)return!1;if((null===u&&!a.allowNull&&!a.writerEnsuresNonNull||void 0===u)&&a.isRequired){const e=new s.Z("web-document-write:property-required",`Missing value for required property '${r}' on '${t.declaredClass}'`,{propertyName:r,target:t});return e&&l&&l.messages?l.messages.push(e):e&&!l&&c.error(e.name,e.message),!1}return!(void 0===u||null===u&&!a.allowNull&&!a.writerEnsuresNonNull||(!e.store.multipleOriginsSupported||e.store.originOf(r)===o.s3.DEFAULTS)&&function(t,e,r,s,i){const o=s.default;if(void 0===o)return!1;if(null!=s.defaultEquals)return s.defaultEquals(i);if("function"==typeof o){if(Array.isArray(i)){const s=o.call(t,e,r);return(0,n.fS)(s,i)}return!1}return o===i}(t,r,l,i,u)||!a.ignoreOrigin&&l&&l.origin&&e.store.multipleOriginsSupported&&e.store.originOf(r)<(0,o.M9)(l.origin))}function f(t,e,r,n){const s=(0,a.vw)(t),i=s.metadatas,o=(0,l.Ah)(i[e],n);return!!o&&h(t,s,e,o,r,n)}function d(t,e,r){if(t&&"function"==typeof t.toJSON&&(!t.toJSON.isDefaultToJSON||!t.write))return(0,a.TS)(e,t.toJSON());const n=(0,a.vw)(t),s=n.metadatas;for(const f in s){const d=(0,l.Ah)(s[f],r);if(!h(t,n,f,d,void 0,r))continue;const p=t.get(f),g=u(t,d,d.write&&"string"==typeof d.write.target?d.write.target:f,p,r);var i,c;Object.keys(g).length>0&&(e=(0,a.TS)(e,g),null!=r&&null!=(i=r.resources)&&null!=(c=i.pendingOperations)&&c.length&&Promise.all(r.resources.pendingOperations).then((()=>(0,a.TS)(e,g))),r&&r.writtenProperties&&r.writtenProperties.push({target:t,propName:f,oldOrigin:(0,o.Wm)(n.store.originOf(f)),newOrigin:r.origin}))}return e}},60235:(t,e,r)=>{r.d(e,{x9:()=>l,XV:()=>o,Mr:()=>a});var n=r(80442);const s=new Set;function i(t,e,r=!1){r&&s.has(e)||(r&&s.add(e),t.warn(`🛑 DEPRECATED - ${e}`))}function o(t,e,r={}){if((0,n.Z)("esri-deprecation-warnings")){const{moduleName:n}=r;l(t,"Function: "+(n?n+"::":"")+e+"()",r)}}function a(t,e,r={}){if((0,n.Z)("esri-deprecation-warnings")){const{moduleName:n}=r;l(t,"Property: "+(n?n+"::":"")+e,r)}}function l(t,e,r={}){if((0,n.Z)("esri-deprecation-warnings")){const{replacement:n,version:s,see:o,warnOnce:a}=r;let l=e;n&&(l+=`\n\t🛠️ Replacement: ${n}`),s&&(l+=`\n\t⚙️ Version: ${s}`),o&&(l+=`\n\t🔗 See ${o} for more details.`),i(t,l,a)}}},50758:(t,e,r)=>{r.d(e,{AL:()=>s,kB:()=>i});var n=r(70586);function s(t){return i((()=>t.forEach((t=>(0,n.pC)(t)&&t.remove()))))}function i(t){return{remove:()=>{t&&(t(),t=void 0)}}}},41213:(t,e,r)=>{r.d(e,{Y:()=>s});const n=[];function s(t){n.push(t),1===n.length&&queueMicrotask((()=>{const t=n.slice();n.length=0;for(const e of t)e()}))}},1654:(t,e,r)=>{r.d(e,{Os:()=>y,MU:()=>w});var n=r(70586),s=r(41213),i=r(54790),o=r(44553),a=r(95330),l=r(76882);class c{constructor(t){this.callback=t,this.isActive=!0}remove(){this.isActive=!1}}let u=0;const h={time:(0,l.HA)(0),deltaTime:(0,l.HA)(0),elapsedFrameTime:(0,l.HA)(0),frameDuration:(0,l.HA)(0)},f=["prepare","preRender","render","postRender","update","finish"],d=[],p=new o.Z,g={frameTasks:p,willDispatch:!1,clearFrameTasks:function(t=!1){p.forAll((t=>{t.removed=!0})),t&&_()},dispatch:m,executeFrameTasks:function(t){const e=(0,l.HA)(t-u);u=t;const r=1e3/60,n=Math.max(0,e-r);for(let s=0;s<f.length;s++){const i=performance.now(),o=f[s];p.forAll((i=>{var a;i.paused||i.removed||(0===s&&i.ticks++,i.phases[o]&&(h.time=t,h.deltaTime=0===i.ticks?(0,l.HA)(0):e,h.elapsedFrameTime=(0,l.HA)(performance.now()-t),h.frameDuration=(0,l.HA)(r-n),null==(a=i.phases[o])||a.call(i,h)))})),b[s].record(performance.now()-i)}_(),A.record(performance.now()-t)}};function y(t){const e=new c(t);return d.push(e),g.willDispatch||(g.willDispatch=!0,(0,s.Y)(m)),e}const v=new o.Z;function _(){p.forAll((t=>{t.removed&&v.push(t)})),p.removeUnorderedMany(v.data,v.length),v.clear()}function m(){for(;d.length;){const t=(0,n.j0)(d.shift());t.isActive&&t.callback()}g.willDispatch=!1}function w(t=1,e){const r=(0,a.hh)(),n=()=>{(0,a.Hc)(e)?r.reject((0,a.zE)()):0===t?r():(--t,(0,s.Y)((()=>n())))};return n(),r.promise}const b=f.map((t=>new i.Z(t))),A=new i.Z("total")},76882:(t,e,r)=>{function n(t){return t}r.d(e,{HA:()=>n})},99001:(t,e,r)=>{r.d(e,{D:()=>s});let n=0;function s(){return++n}}}]);
@@ -2,20 +2,25 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{glsl as e}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as i}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as r}from"../views/3d/webgl-engine/lib/VertexAttribute.js";function o(){const o=new i;return o.attributes.add(r.POSITION,"vec3"),o.attributes.add(r.UV0,"vec2"),o.varyings.add("unitCirclePos","vec2"),o.vertex.uniforms.add("radius","float"),o.vertex.uniforms.add("proj","mat4"),o.vertex.uniforms.add("view","mat4"),o.vertex.code.add(e`
5
+ import{glsl as e}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as i}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as t}from"../views/3d/webgl-engine/lib/VertexAttribute.js";function r(r){const a=new i;return a.attributes.add(t.POSITION,"vec3"),a.attributes.add(t.UV0,"vec2"),r.isAttributeDriven&&(a.attributes.add(t.FEATUREATTRIBUTE,"float"),a.varyings.add("attributeValue","float")),a.varyings.add("unitCirclePos","vec2"),a.vertex.uniforms.add("radius","float"),a.vertex.uniforms.add("proj","mat4"),a.vertex.uniforms.add("view","mat4"),a.vertex.code.add(e`
6
6
  void main() {
7
7
  unitCirclePos = uv0;
8
8
 
9
- vec4 posProj = proj * (view * vec4(${r.POSITION}, 1.0));
9
+ vec4 posProj = proj * (view * vec4(${t.POSITION}, 1.0));
10
10
  vec4 quadOffset = vec4(unitCirclePos * radius, 0.0, 0.0);
11
+
12
+ ${r.isAttributeDriven?e`attributeValue = ${t.FEATUREATTRIBUTE};`:""}
11
13
  gl_Position = posProj + quadOffset;
12
14
  }
13
- `),o.fragment.code.add(e`void main() {
14
- float radiusRatioSquared = dot(unitCirclePos, unitCirclePos);
15
- if (radiusRatioSquared > 1.0) {
16
- discard;
17
- }
18
- float oneMinusRadiusRatioSquared = 1.0 - radiusRatioSquared;
19
- float density = oneMinusRadiusRatioSquared * oneMinusRadiusRatioSquared;
20
- gl_FragColor = vec4(density);
21
- }`),o}const d=Object.freeze({__proto__:null,build:o});export{d as H,o as b};
15
+ `),a.fragment.code.add(e`
16
+ void main() {
17
+ float radiusRatioSquared = dot(unitCirclePos, unitCirclePos);
18
+ if (radiusRatioSquared > 1.0) {
19
+ discard;
20
+ }
21
+
22
+ float oneMinusRadiusRatioSquared = 1.0 - radiusRatioSquared;
23
+ float density = oneMinusRadiusRatioSquared * oneMinusRadiusRatioSquared ${r.isAttributeDriven?e` * attributeValue`:""};
24
+ gl_FragColor = vec4(density);
25
+ }
26
+ `),a}const a=Object.freeze({__proto__:null,build:r});export{a as H,r as b};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{PositionHint as t,indexOf as h,removeUnordered as i,removeUnorderedMany as s}from"./arrayUtils.js";import a from"./HeapSort.js";const e=1.5,l=1.1;class n{constructor(h){this.data=[],this._length=0,this._allocator=void 0,this._deallocator=()=>null,this._shrink=()=>{},this._hint=new t,h&&(h.initialSize&&(this.data=new Array(h.initialSize)),h.allocator&&(this._allocator=h.allocator),void 0!==h.deallocator&&(this._deallocator=h.deallocator),h.shrink&&(this._shrink=()=>r(this)))}toArray(){return this.data.slice(0,this.length)}getItemAt(t){if(!(t<0||t>=this._length))return this.data[t]}get length(){return this._length}set length(t){if(t>this._length){if(this._allocator){for(;this._length<t;)this.data[this._length++]=this._allocator(this.data[this._length]);return}this._length=t}else{if(this._deallocator)for(let h=t;h<this._length;++h)this.data[h]=this._deallocator(this.data[h]);this._length=t,this._shrink()}}clear(){this.length=0}prune(){this.clear(),this.data=[]}push(t){this.data[this._length++]=t}pushArray(t,h=t.length){for(let i=0;i<h;i++)this.data[this._length++]=t[i]}fill(t,h){for(let i=0;i<h;i++)this.data[this._length++]=t}pushNew(){this._allocator&&(this.data[this.length]=this._allocator(this.data[this.length]));const t=this.data[this._length];return++this._length,t}unshift(t){this.data.unshift(t),this._length++,r(this)}pop(){if(0===this.length)return;const t=this.data[this.length-1];return this.length=this.length-1,this._shrink(),t}remove(t){const i=h(this.data,t,this.length,this._hint);if(-1!==i)return this.data.splice(i,1),this.length=this.length-1,t}removeUnordered(t){const h=i(this.data,t,this.length,this._hint);return void 0!==h&&(this.length=this.length-1),this._shrink(),h}removeUnorderedIndex(t){if(!(t>=this.length||t<0))return this.swapElements(t,this.length-1),this.pop()}removeUnorderedMany(t,h=t.length,i){this.length=s(this.data,t,this.length,h,this._hint,i),this._shrink()}front(){if(0!==this.length)return this.data[0]}back(){if(0!==this.length)return this.data[this.length-1]}swapElements(t,h){t>=this.length||h>=this.length||t===h||([this.data[t],this.data[h]]=[this.data[h],this.data[t]])}sort(t){a.sort(this.data,0,this.length,t)}iterableSort(t){return a.iterableSort(this.data,0,this.length,t)}some(t,h){for(let i=0;i<this.length;++i)if(t.call(h,this.data[i],i,this.data))return!0;return!1}filterInPlace(t,h){let i=0;for(let s=0;s<this._length;++s){const a=this.data[s];t.call(h,a,s,this.data)&&(this.data[s]=this.data[i],this.data[i]=a,i++)}if(this._deallocator)for(let s=i;s<this._length;s++)this.data[s]=this._deallocator(this.data[s]);return this._length=i,this._shrink(),this}forAll(t,h){const i=this.length,s=this.data;for(let a=0;a<i;++a)t.call(h,s[a],a,s)}forEach(t,h){for(let i=0;i<this.length;++i)t.call(h,this.data[i],i,this.data)}map(t,h){const i=new Array(this.length);for(let s=0;s<this.length;++s)i[s]=t.call(h,this.data[s],s,this.data);return i}reduce(t,h){let i=h;for(let s=0;s<this.length;++s)i=t(i,this.data[s],s,this.data);return i}has(t){const h=this.length,i=this.data;for(let s=0;s<h;++s)if(i[s]===t)return!0;return!1}}function r(t){t.data.length>e*t.length&&(t.data.length=Math.floor(t.length*l))}export{n as default};
5
+ import{PositionHint as t,indexOf as h,removeUnordered as i,removeUnorderedMany as s}from"./arrayUtils.js";import a from"./HeapSort.js";const e=1.5,l=1.1;class n{constructor(h){this.data=[],this._length=0,this._allocator=void 0,this._deallocator=()=>null,this._shrink=()=>{},this._hint=new t,h&&(h.initialSize&&(this.data=new Array(h.initialSize)),h.allocator&&(this._allocator=h.allocator),void 0!==h.deallocator&&(this._deallocator=h.deallocator),h.shrink&&(this._shrink=()=>r(this)))}toArray(){return this.data.slice(0,this.length)}filter(t){const h=new Array;for(let i=0;i<this._length;i++){const s=this.data[i];t(s)&&h.push(s)}return h}getItemAt(t){if(!(t<0||t>=this._length))return this.data[t]}get length(){return this._length}set length(t){if(t>this._length){if(this._allocator){for(;this._length<t;)this.data[this._length++]=this._allocator(this.data[this._length]);return}this._length=t}else{if(this._deallocator)for(let h=t;h<this._length;++h)this.data[h]=this._deallocator(this.data[h]);this._length=t,this._shrink()}}clear(){this.length=0}prune(){this.clear(),this.data=[]}push(t){this.data[this._length++]=t}pushArray(t,h=t.length){for(let i=0;i<h;i++)this.data[this._length++]=t[i]}fill(t,h){for(let i=0;i<h;i++)this.data[this._length++]=t}pushNew(){this._allocator&&(this.data[this.length]=this._allocator(this.data[this.length]));const t=this.data[this._length];return++this._length,t}unshift(t){this.data.unshift(t),this._length++,r(this)}pop(){if(0===this.length)return;const t=this.data[this.length-1];return this.length=this.length-1,this._shrink(),t}remove(t){const i=h(this.data,t,this.length,this._hint);if(-1!==i)return this.data.splice(i,1),this.length=this.length-1,t}removeUnordered(t){const h=i(this.data,t,this.length,this._hint);return void 0!==h&&(this.length=this.length-1),this._shrink(),h}removeUnorderedIndex(t){if(!(t>=this.length||t<0))return this.swapElements(t,this.length-1),this.pop()}removeUnorderedMany(t,h=t.length,i){this.length=s(this.data,t,this.length,h,this._hint,i),this._shrink()}front(){if(0!==this.length)return this.data[0]}back(){if(0!==this.length)return this.data[this.length-1]}swapElements(t,h){t>=this.length||h>=this.length||t===h||([this.data[t],this.data[h]]=[this.data[h],this.data[t]])}sort(t){a.sort(this.data,0,this.length,t)}iterableSort(t){return a.iterableSort(this.data,0,this.length,t)}some(t,h){for(let i=0;i<this.length;++i)if(t.call(h,this.data[i],i,this.data))return!0;return!1}filterInPlace(t,h){let i=0;for(let s=0;s<this._length;++s){const a=this.data[s];t.call(h,a,s,this.data)&&(this.data[s]=this.data[i],this.data[i]=a,i++)}if(this._deallocator)for(let s=i;s<this._length;s++)this.data[s]=this._deallocator(this.data[s]);return this._length=i,this._shrink(),this}forAll(t,h){const i=this.length,s=this.data;for(let a=0;a<i;++a)t.call(h,s[a],a,s)}forEach(t,h){for(let i=0;i<this.length;++i)t.call(h,this.data[i],i,this.data)}map(t,h){const i=new Array(this.length);for(let s=0;s<this.length;++s)i[s]=t.call(h,this.data[s],s,this.data);return i}reduce(t,h){let i=h;for(let s=0;s<this.length;++s)i=t(i,this.data[s],s,this.data);return i}has(t){const h=this.length,i=this.data;for(let s=0;s<h;++s)if(i[s]===t)return!0;return!1}}function r(t){t.data.length>e*t.length&&(t.data.length=Math.floor(t.length*l))}export{n as default};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arcgis/core",
3
- "version": "4.23.0-next.20220206",
3
+ "version": "4.23.0-next.20220207",
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": [
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- const e="20220206",a="7002ada77dfee03eab5aeed2c2ec221fc4e1aa07";export{e as buildDate,a as commitHash};
5
+ const b="20220207",e="3e0520981081807428093dc52b7e53015bb3b365";export{b as buildDate,e as commitHash};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../../chunks/tslib.es6.js";import r from"../../../core/Error.js";import{destroyMaybe as t,isNone as s,isSome as o}from"../../../core/maybe.js";import{initial as i,watch as a,when as l,syncAndInitial as u}from"../../../core/reactiveUtils.js";import{property as n}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/arrayUtils.js";import"../../../core/has.js";import"../../../core/accessorSupport/ensureType.js";import{subclass as m}from"../../../core/accessorSupport/decorators/subclass.js";import{hydrateGeometry as p}from"../../../layers/graphics/hydratedFeatures.js";import{FeatureTileController3D as c}from"../../../layers/graphics/controllers/FeatureTileController3D.js";import{FeatureLikeLayerView3D as h}from"./FeatureLikeLayerView3D.js";import{LayerView3D as d}from"./LayerView3D.js";import{FeatureTileFetcher3DLayerViewContext as y}from"./support/FeatureTileFetcher3DLayerViewContext.js";import{EventedSet as f}from"../support/EventedSet.js";import{updatingProgress as g}from"../support/updatingProperties.js";import{UpdatePolicy as F}from"../webgl-engine/lib/basicInterfaces.js";import{FeatureLayerView as b}from"../../layers/FeatureLayerView.js";import v from"../../layers/LayerView.js";import{RefreshableLayerView as x}from"../../layers/RefreshableLayerView.js";let M=class extends(x(h(b(d(v))))){constructor(e){super(e),this._controllerTotal=0,this._processorTotal=0,this.suspendResumeExtentMode="data"}initialize(){this.updatingHandles.add((()=>this.view.floors),(()=>this.processor.filterVisibility.filterChanged()))}destroy(){this.updatingHandles.removeAll(),this.handles.removeAll(),this.fetcherContext=t(this.fetcherContext)}get maximumNumberOfFeatures(){var e,r;return null!=(e=null==(r=this.controller)?void 0:r.maximumNumberOfFeatures)?e:this._get("maximumNumberOfFeatures")}set maximumNumberOfFeatures(e){this._set("maximumNumberOfFeatures",e),this.controller&&(this.controller.maximumNumberOfFeatures=e)}get maximumNumberOfFeaturesExceeded(){return!!this.controller&&!(this.suspended||!this.controller.maximumNumberOfFeaturesExceeded)}get updatingProgressValue(){var e,r;let t=0;if(null!=(e=this.controller)&&e.updating){const e=this.controller.updatingRemaining,r=Math.max(this.controller.updatingTotal,this._controllerTotal);r>0&&(t=(r-e)/r,this._controllerTotal=r)}let s=0;if(null!=(r=this.processor)&&r.updating){const e=this.processor.updatingRemaining,r=Math.max(e,this._processorTotal);r>0&&(s=(r-e)/r,this._processorTotal=r)}return.5*(t+s)}get updatePolicy(){if(!this.controller)return F.ASYNC;switch(this.controller.mode){case"snapshot":{const e=O[this.layer.geometryType];return null==e||this.controller.serviceDataCount>e?F.ASYNC:F.SYNC}case"tiles":return F.ASYNC}}get hasZ(){const e=this.layer,r=e.capabilities&&e.capabilities.data;return!(!r||!r.supportsZ)&&("returnZ"in e&&null!=e.returnZ?e.returnZ:r.supportsZ)}get hasM(){const e=this.layer,r=e.capabilities&&e.capabilities.data;return!(!r||!r.supportsM)&&("returnM"in e&&null!=e.returnM&&e.returnM)}setVisibility(e,r){var t;null==(t=this.processor)||t.setObjectIdVisibility(e,r)}createQuery(){return super.createQuery()}queryFeatures(e,r){const t=()=>super.queryFeatures(e,r);return"mesh"===this.layer.geometryType?this._queryFeaturesMesh(this._ensureQuery(e),t):t()}beforeSetController(e){e.maximumNumberOfFeatures=this.maximumNumberOfFeatures}createController(){this.fetcherContext=new y({layerView:this,returnZ:this.hasZ,returnM:this.hasM});const e=new c({layerView:this,context:this.fetcherContext,graphics:new f,extent:this.clippingExtent});return this.updatingHandles.add((()=>e.serviceDataExtent),(e=>{this.processor&&(this.processor.dataExtent=e)}),i),this.handles.add(a((()=>this.suspended),(r=>{r?e.suspend():e.resume()}),u)),this.updatingHandles.add((()=>{var e;return null==(e=this.processor)?void 0:e.displayFeatureLimit}),(()=>this._updateDisplayFeatureLimit(e)),i),this.handles.add([this.view.resourceController.memoryController.events.on("quality-changed",(()=>this._updateDisplayFeatureLimit())),l((()=>!this.updating),(()=>{this._controllerTotal=0,this._processorTotal=0}))]),e}async doRefresh(e){e&&!this.suspended&&this.controller&&this.controller.refetch(),this.processor.filterVisibility.dirty=!0}getUsedMemory(){var e,r,t,s;return(null!=(e=null==(r=this.processor)?void 0:r.usedMemory)?e:0)+(null!=(t=null==(s=this.controller)?void 0:s.memoryForUnusedFeatures)?t:0)}getUnloadedMemory(){var e,r,t,s,o;return(null!=(e=null==(r=this.processor)?void 0:r.unprocessedMemoryEstimate)?e:0)+(null!=(t=(null==(s=this.controller)?void 0:s.expectedFeatureDiff)*(null==(o=this.processor)?void 0:o.usedMemoryPerFeature))?t:0)}ignoresMemoryFactor(){var e;return null==(e=this.controller)?void 0:e.hasMaximumNumberOfFeaturesOverride}_updateDisplayFeatureLimit(e=this.controller){if(!e||!this.processor)return;const r=this.processor.displayFeatureLimit,t=this.view.resourceController.memoryController.memoryFactor;if(1===t)e.displayFeatureLimit=r;else{const s=Math.ceil(r.maximumNumberOfFeatures*t),o=Math.ceil(r.maximumTotalNumberOfFeatures*t),i=Math.ceil(r.minimumTotalNumberOfFeatures*t);e.displayFeatureLimit={...r,maximumNumberOfFeatures:s,maximumTotalNumberOfFeatures:o,minimumTotalNumberOfFeatures:i}}}async _queryFeaturesMesh(e,r){await this._validateQueryFeaturesMesh(e);const t=await r();if(e&&e.outStatistics||s(this.graphics3DProcessor))return t;const o=this.layer.objectIdField,i=this.graphics3DProcessor.graphics3DGraphicsByObjectID,a=[];for(const s of t.features)if(s.geometry){const e=i.get(s.attributes[o]);e&&(s.geometry=p(e.graphic.geometry),a.push(s))}else a.push(s);return t.features=a,t}async _validateQueryFeaturesMesh(e){if(!e)return;const t=e=>{throw new r("feature-layer-view:unsupported-query",`Queries on Mesh feature collection layers do not support '${e}'`)},s=["quantizationParameters","geometryPrecision","maxAllowableOffset"];for(const r of s)null!=e[r]&&t(r);"returnM"in e&&e.returnM&&t("returnM"),"returnCentroid"in e&&e.returnCentroid&&t("returnCentroid"),o(e.outSpatialReference)&&!e.outSpatialReference.equals(this.view.spatialReference)&&t("outSpatialReference")}get performanceInfo(){var e,r,t,s,i;const a=null==(e=this.controller)?void 0:e.displayFeatureLimit,l=o(a)&&a.averageSymbolComplexity,u=o(l)?`f:${l.primitivesPerFeature},v:${l.primitivesPerCoordinate}`:"n/a",n={...this._getResourceInfo(),storedFeatures:0,totalVertices:0,partial:this.maximumNumberOfFeaturesExceeded,mode:null!=(r=null==(t=this.controller)?void 0:t.mode)?r:"n/a",symbolComplexity:u,nodes:null!=(s=null==(i=this.controller)?void 0:i.tileDescriptors.length)?s:0};if(this.controller&&n.displayedNumberOfFeatures){const e=this.controller.debug;n.storedFeatures=e.storedFeatures,n.totalVertices=e.totalVertices}return n}get test(){return{updatePolicy:this.updatePolicy,controller:this.controller}}};e([n()],M.prototype,"layer",void 0),e([n()],M.prototype,"controller",void 0),e([n()],M.prototype,"_controllerTotal",void 0),e([n()],M.prototype,"_processorTotal",void 0),e([n()],M.prototype,"maximumNumberOfFeatures",null),e([n()],M.prototype,"maximumNumberOfFeaturesExceeded",null),e([n(g)],M.prototype,"updatingProgress",void 0),e([n({readOnly:!0})],M.prototype,"updatingProgressValue",null),e([n({readOnly:!0})],M.prototype,"updatePolicy",null),e([n({readOnly:!0})],M.prototype,"hasZ",null),e([n({readOnly:!0})],M.prototype,"hasM",null),e([n()],M.prototype,"suspendResumeExtentMode",void 0),M=e([m("esri.views.3d.layers.FeatureLayerViewBase3D")],M);const O={point:5e3,polygon:500,polyline:1e3},w=M;export{w as default};
5
+ import{_ as e}from"../../../chunks/tslib.es6.js";import t from"../../../core/Error.js";import{destroyMaybe as r,isNone as s,isSome as o}from"../../../core/maybe.js";import{watch as i,initial as a,when as l,syncAndInitial as u}from"../../../core/reactiveUtils.js";import{property as n}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/arrayUtils.js";import"../../../core/has.js";import"../../../core/accessorSupport/ensureType.js";import{subclass as m}from"../../../core/accessorSupport/decorators/subclass.js";import{hydrateGeometry as p}from"../../../layers/graphics/hydratedFeatures.js";import{FeatureTileController3D as c}from"../../../layers/graphics/controllers/FeatureTileController3D.js";import{FeatureLikeLayerView3D as d}from"./FeatureLikeLayerView3D.js";import{LayerView3D as h}from"./LayerView3D.js";import{FeatureTileFetcher3DLayerViewContext as y}from"./support/FeatureTileFetcher3DLayerViewContext.js";import{EventedSet as f}from"../support/EventedSet.js";import{updatingProgress as g}from"../support/updatingProperties.js";import{UpdatePolicy as F}from"../webgl-engine/lib/basicInterfaces.js";import{FeatureLayerView as b}from"../../layers/FeatureLayerView.js";import v from"../../layers/LayerView.js";import{RefreshableLayerView as x}from"../../layers/RefreshableLayerView.js";let M=class extends(x(d(b(h(v))))){constructor(e){super(e),this._controllerTotal=0,this._processorTotal=0,this.suspendResumeExtentMode="data"}initialize(){this.updatingHandles.add((()=>this.view.floors),(()=>this.processor.filterVisibility.filterChanged())),this.handles.add(i((()=>this._updatingRequiredFieldsPromise),(e=>this.updatingHandles.addPromise(e)),u))}destroy(){this.updatingHandles.removeAll(),this.handles.removeAll(),this.fetcherContext=r(this.fetcherContext)}get maximumNumberOfFeatures(){var e,t;return null!=(e=null==(t=this.controller)?void 0:t.maximumNumberOfFeatures)?e:this._get("maximumNumberOfFeatures")}set maximumNumberOfFeatures(e){this._set("maximumNumberOfFeatures",e),this.controller&&(this.controller.maximumNumberOfFeatures=e)}get maximumNumberOfFeaturesExceeded(){return!!this.controller&&!(this.suspended||!this.controller.maximumNumberOfFeaturesExceeded)}get updatingProgressValue(){var e,t;let r=0;if(null!=(e=this.controller)&&e.updating){const e=this.controller.updatingRemaining,t=Math.max(this.controller.updatingTotal,this._controllerTotal);t>0&&(r=(t-e)/t,this._controllerTotal=t)}let s=0;if(null!=(t=this.processor)&&t.updating){const e=this.processor.updatingRemaining,t=Math.max(e,this._processorTotal);t>0&&(s=(t-e)/t,this._processorTotal=t)}return.5*(r+s)}get updatePolicy(){if(!this.controller)return F.ASYNC;switch(this.controller.mode){case"snapshot":{const e=O[this.layer.geometryType];return null==e||this.controller.serviceDataCount>e?F.ASYNC:F.SYNC}case"tiles":return F.ASYNC}}get hasZ(){const e=this.layer,t=e.capabilities&&e.capabilities.data;return!(!t||!t.supportsZ)&&("returnZ"in e&&null!=e.returnZ?e.returnZ:t.supportsZ)}get hasM(){const e=this.layer,t=e.capabilities&&e.capabilities.data;return!(!t||!t.supportsM)&&("returnM"in e&&null!=e.returnM&&e.returnM)}setVisibility(e,t){var r;null==(r=this.processor)||r.setObjectIdVisibility(e,t)}createQuery(){return super.createQuery()}queryFeatures(e,t){const r=()=>super.queryFeatures(e,t);return"mesh"===this.layer.geometryType?this._queryFeaturesMesh(this._ensureQuery(e),r):r()}beforeSetController(e){e.maximumNumberOfFeatures=this.maximumNumberOfFeatures}createController(){this.fetcherContext=new y({layerView:this,returnZ:this.hasZ,returnM:this.hasM});const e=new c({layerView:this,context:this.fetcherContext,graphics:new f,extent:this.clippingExtent});return this.updatingHandles.add((()=>e.serviceDataExtent),(e=>{this.processor&&(this.processor.dataExtent=e)}),a),this.handles.add(i((()=>this.suspended),(t=>{t?e.suspend():e.resume()}),u)),this.updatingHandles.add((()=>{var e;return null==(e=this.processor)?void 0:e.displayFeatureLimit}),(()=>this._updateDisplayFeatureLimit(e)),a),this.handles.add([this.view.resourceController.memoryController.events.on("quality-changed",(()=>this._updateDisplayFeatureLimit())),l((()=>!this.updating),(()=>{this._controllerTotal=0,this._processorTotal=0}))]),e}async doRefresh(e){e&&!this.suspended&&this.controller&&this.controller.refetch(),this.processor.filterVisibility.dirty=!0}getUsedMemory(){var e,t,r,s;return(null!=(e=null==(t=this.processor)?void 0:t.usedMemory)?e:0)+(null!=(r=null==(s=this.controller)?void 0:s.memoryForUnusedFeatures)?r:0)}getUnloadedMemory(){var e,t,r,s,o;return(null!=(e=null==(t=this.processor)?void 0:t.unprocessedMemoryEstimate)?e:0)+(null!=(r=(null==(s=this.controller)?void 0:s.expectedFeatureDiff)*(null==(o=this.processor)?void 0:o.usedMemoryPerFeature))?r:0)}ignoresMemoryFactor(){var e;return null==(e=this.controller)?void 0:e.hasMaximumNumberOfFeaturesOverride}_updateDisplayFeatureLimit(e=this.controller){if(!e||!this.processor)return;const t=this.processor.displayFeatureLimit,r=this.view.resourceController.memoryController.memoryFactor;if(1===r)e.displayFeatureLimit=t;else{const s=Math.ceil(t.maximumNumberOfFeatures*r),o=Math.ceil(t.maximumTotalNumberOfFeatures*r),i=Math.ceil(t.minimumTotalNumberOfFeatures*r);e.displayFeatureLimit={...t,maximumNumberOfFeatures:s,maximumTotalNumberOfFeatures:o,minimumTotalNumberOfFeatures:i}}}async _queryFeaturesMesh(e,t){await this._validateQueryFeaturesMesh(e);const r=await t();if(e&&e.outStatistics||s(this.graphics3DProcessor))return r;const o=this.layer.objectIdField,i=this.graphics3DProcessor.graphics3DGraphicsByObjectID,a=[];for(const s of r.features)if(s.geometry){const e=i.get(s.attributes[o]);e&&(s.geometry=p(e.graphic.geometry),a.push(s))}else a.push(s);return r.features=a,r}async _validateQueryFeaturesMesh(e){if(!e)return;const r=e=>{throw new t("feature-layer-view:unsupported-query",`Queries on Mesh feature collection layers do not support '${e}'`)},s=["quantizationParameters","geometryPrecision","maxAllowableOffset"];for(const t of s)null!=e[t]&&r(t);"returnM"in e&&e.returnM&&r("returnM"),"returnCentroid"in e&&e.returnCentroid&&r("returnCentroid"),o(e.outSpatialReference)&&!e.outSpatialReference.equals(this.view.spatialReference)&&r("outSpatialReference")}get performanceInfo(){var e,t,r,s,i;const a=null==(e=this.controller)?void 0:e.displayFeatureLimit,l=o(a)&&a.averageSymbolComplexity,u=o(l)?`f:${l.primitivesPerFeature},v:${l.primitivesPerCoordinate}`:"n/a",n={...this._getResourceInfo(),storedFeatures:0,totalVertices:0,partial:this.maximumNumberOfFeaturesExceeded,mode:null!=(t=null==(r=this.controller)?void 0:r.mode)?t:"n/a",symbolComplexity:u,nodes:null!=(s=null==(i=this.controller)?void 0:i.tileDescriptors.length)?s:0};if(this.controller&&n.displayedNumberOfFeatures){const e=this.controller.debug;n.storedFeatures=e.storedFeatures,n.totalVertices=e.totalVertices}return n}get test(){return{updatePolicy:this.updatePolicy,controller:this.controller}}};e([n()],M.prototype,"layer",void 0),e([n()],M.prototype,"controller",void 0),e([n()],M.prototype,"_controllerTotal",void 0),e([n()],M.prototype,"_processorTotal",void 0),e([n()],M.prototype,"maximumNumberOfFeatures",null),e([n()],M.prototype,"maximumNumberOfFeaturesExceeded",null),e([n(g)],M.prototype,"updatingProgress",void 0),e([n({readOnly:!0})],M.prototype,"updatingProgressValue",null),e([n({readOnly:!0})],M.prototype,"updatePolicy",null),e([n({readOnly:!0})],M.prototype,"hasZ",null),e([n({readOnly:!0})],M.prototype,"hasM",null),e([n()],M.prototype,"suspendResumeExtentMode",void 0),M=e([m("esri.views.3d.layers.FeatureLayerViewBase3D")],M);const O={point:5e3,polygon:500,polyline:1e3},w=M;export{w as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../../../chunks/tslib.es6.js";import{HandleOwner as r}from"../../../../core/HandleOwner.js";import{makeHandle as t}from"../../../../core/handleUtils.js";import{applySome as i,disposeMaybe as o,unwrap as a,mapSome as s}from"../../../../core/maybe.js";import{initial as n}from"../../../../core/reactiveUtils.js";import{property as l}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/arrayUtils.js";import"../../../../core/has.js";import"../../../../core/accessorSupport/ensureType.js";import{subclass as p}from"../../../../core/accessorSupport/decorators/subclass.js";import{c as d}from"../../../../chunks/vec3f64.js";import{projectPointToVector as m}from"../../../../geometry/projection.js";import{convertFromPoint as u}from"../../../../layers/graphics/featureConversionUtils.js";import h from"../../../../layers/graphics/OptimizedFeature.js";import y from"../../../../layers/graphics/OptimizedGeometry.js";import c from"../../../../layers/graphics/data/FeatureStore.js";import{DRAPED_Z as g}from"../../terrain/OverlayRenderer.js";import{UpdatePolicy as f,PrimitiveType as _}from"../../webgl-engine/lib/basicInterfaces.js";import{Geometry as v}from"../../webgl-engine/lib/Geometry.js";import{ModelDirty as b}from"../../webgl-engine/lib/ModelDirtyTypes.js";import{RenderGeometry as w}from"../../webgl-engine/lib/RenderGeometry.js";import{VertexAttribute as j}from"../../webgl-engine/lib/VertexAttribute.js";import{HeatmapDensityMaterial as G}from"../../webgl-engine/materials/HeatmapDensityMaterial.js";let R=class extends r{constructor(e){super(e),this.type="heatmap",this.filterVisibility={filterChanged(){},dirty:!1},this.preferredUpdatePolicy=f.ASYNC,this.dataExtent=null,this._renderGeometries=new Map,this._material=new G({})}initialize(){this._featureStore=new c({geometryType:"esriGeometryPoint",hasZ:this.hasZ,hasM:this.hasM}),this.updatingHandles.addOnCollectionChange((()=>this._loadedPointGraphics),(e=>this._onLoadedFeaturesChange(e))),this.updatingHandles.addWhen((()=>i(this._heatmapRenderer,(e=>e.blurRadius))),(e=>this._material.setParameters({searchRadius:e})),n)}destroy(){this._overlayRenderer.removeGeometries(Array.from(this._renderGeometries.values()),this.owner,b.Geometry.REMOVE),this._renderGeometries.clear(),this._material=o(this._material),this._featureStore.clear(),this._featureStore=null}get layer(){return this.owner.layer}get featureStore(){return this._featureStore}get updating(){return this.updatingHandles.updating}get updatingRemaining(){return 0}get suspendInfo(){return{}}get legendEnabled(){return!0}get displayFeatureLimit(){return{minimumTotalNumberOfFeatures:0,maximumTotalNumberOfFeatures:1e10,maximumTotalNumberOfPrimitives:1e10,maximumNumberOfFeatures:1e10}}get hasZ(){return"hasZ"in this.layer&&this.layer.hasZ}get hasM(){return"hasM"in this.layer&&this.layer.hasM}get scaleVisibilitySuspended(){return!1}get usedMemory(){return 0}get usedMemoryPerFeature(){return 0}get unprocessedMemoryEstimate(){return 0}get performanceInfo(){return{core:{visible:0,missing:0,pending:0},elevationUpdating:!1,visibilityFrustum:!0,visibilityScale:!0}}get _overlayRenderer(){return this.owner.view.basemapTerrain.overlayManager.renderer}get _overlaySpatialReference(){return a(this._overlayRenderer.spatialReference)}get _renderView(){return this.owner.view._stage.renderView}get _featuresArePoints(){return"point"===this.layer.geometryType}get _loadedPointGraphics(){return this.owner.loadedGraphics}get _heatmapRenderer(){const e=this.layer.renderer;return"heatmap"===(null==e?void 0:e.type)?e:null}async whenGraphicBounds(){return null}computeAttachmentOrigin(){return null}highlight(){return S}maskOccludee(){return S}setObjectIdVisibility(){}async setup(){}_onLoadedFeaturesChange(e){if(!this._featuresArePoints)return;this._featureStore.addMany(e.added.map((e=>new h(u(new y,e.geometry),e.attributes,i(e.centroid,(e=>u(new y,e))),e.objectId)))),this._featureStore.removeManyById(e.removed.map((({objectId:e})=>e)));const r=e.added,t=e.removed,o=s(t,(({uid:e})=>{const r=this._renderGeometries.get(e);return this._renderGeometries.delete(e),r})),a=r.map((e=>{const r=this._pointGraphicToRenderGeometry(e);return this._renderGeometries.set(e.uid,r),r}));a.length>0&&this._overlayRenderer.addGeometries(a,this.owner,b.Geometry.ADD,!0),o.length>0&&this._overlayRenderer.removeGeometries(o,this.owner,b.Geometry.REMOVE),(a.length>0||o.length>0)&&this._renderView.requestRender()}_pointGraphicToRenderGeometry(e){const r=this._material,t=d();m(e.geometry,t,this._overlaySpatialReference,g);return new w(new v([[j.POSITION,{data:t,size:t.length}]],null,_.Point),r,{layerUid:this.layer.uid,graphicUid:e.uid})}};e([l()],R.prototype,"type",void 0),e([l({constructOnly:!0})],R.prototype,"owner",void 0),e([l()],R.prototype,"layer",null),e([l()],R.prototype,"featureStore",null),e([l()],R.prototype,"updating",null),e([l()],R.prototype,"updatingRemaining",null),e([l()],R.prototype,"suspendInfo",null),e([l()],R.prototype,"legendEnabled",null),e([l()],R.prototype,"filterVisibility",void 0),e([l()],R.prototype,"displayFeatureLimit",null),e([l()],R.prototype,"preferredUpdatePolicy",void 0),e([l()],R.prototype,"hasZ",null),e([l()],R.prototype,"hasM",null),e([l()],R.prototype,"dataExtent",void 0),e([l()],R.prototype,"_featureStore",void 0),e([l()],R.prototype,"_overlayRenderer",null),e([l()],R.prototype,"_overlaySpatialReference",null),e([l()],R.prototype,"_renderGeometries",void 0),e([l()],R.prototype,"_material",void 0),e([l()],R.prototype,"_renderView",null),e([l()],R.prototype,"_featuresArePoints",null),e([l()],R.prototype,"_loadedPointGraphics",null),e([l()],R.prototype,"_heatmapRenderer",null),R=e([p("esri.views.3d.layers.support.HeatmapFeatureProcessor")],R);const S=t();export{R as HeatmapFeatureProcessor};
5
+ import{_ as e}from"../../../../chunks/tslib.es6.js";import{HandleOwner as r}from"../../../../core/HandleOwner.js";import{makeHandle as t}from"../../../../core/handleUtils.js";import i from"../../../../core/Logger.js";import{applySome as a,disposeMaybe as o,unwrap as s,isNone as n,mapSome as l,isSome as d}from"../../../../core/maybe.js";import{initial as p,sync as m,watch as h}from"../../../../core/reactiveUtils.js";import{property as u}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/arrayUtils.js";import"../../../../core/has.js";import"../../../../core/accessorSupport/ensureType.js";import{subclass as y}from"../../../../core/accessorSupport/decorators/subclass.js";import{c}from"../../../../chunks/vec3f64.js";import{projectPointToVector as g}from"../../../../geometry/projection.js";import{convertFromPoint as _}from"../../../../layers/graphics/featureConversionUtils.js";import f from"../../../../layers/graphics/OptimizedFeature.js";import v from"../../../../layers/graphics/OptimizedGeometry.js";import R from"../../../../layers/graphics/data/FeatureStore.js";import{isNumericField as b}from"../../../../layers/support/fieldUtils.js";import{DRAPED_Z as F}from"../../terrain/OverlayRenderer.js";import{UpdatePolicy as w,PrimitiveType as j}from"../../webgl-engine/lib/basicInterfaces.js";import{Geometry as G}from"../../webgl-engine/lib/Geometry.js";import{ModelDirty as S}from"../../webgl-engine/lib/ModelDirtyTypes.js";import{RenderGeometry as M}from"../../webgl-engine/lib/RenderGeometry.js";import{VertexAttribute as P}from"../../webgl-engine/lib/VertexAttribute.js";import{HeatmapDensityMaterial as N}from"../../webgl-engine/materials/HeatmapDensityMaterial.js";const O=i.getLogger("esri.views.3d.layers.support.HeatmapFeatureProcessor");let I=class extends r{constructor(e){super(e),this.type="heatmap",this.filterVisibility={filterChanged(){},dirty:!1},this.preferredUpdatePolicy=w.ASYNC,this.dataExtent=null,this._renderGeometries=new Map,this._material=new N({}),this._materialWithField=new N({isAttributeDriven:!0})}initialize(){this._featureStore=new R({geometryType:"esriGeometryPoint",hasZ:this.hasZ,hasM:this.hasM}),this.updatingHandles.addOnCollectionChange((()=>this._loadedPointGraphics),(e=>this._onLoadedFeaturesChange(e))),this.updatingHandles.addWhen((()=>a(this._heatmapRenderer,(e=>e.blurRadius))),(e=>this._forEachMaterial((r=>r.setParameters({searchRadius:e})))),p),this.updatingHandles.add((()=>this._heatmapRendererField),(()=>{this._recreate()}),m),this.handles.add([h((()=>({fieldName:this._heatmapRendererFieldName,field:this._heatmapRendererField})),(({fieldName:e,field:r})=>{var t;e&&!r&&O.warn(`Heatmap renderer field '${e}' for layer '${null!=(t=this.layer.title)?t:this.layer.id}' not found`)})),h((()=>({field:this._heatmapRendererField,numeric:this._heatmapRendererFieldIsNumeric})),(({field:e,numeric:r})=>{var t;d(e)&&!r&&O.warn(`Heatmap renderer field '${e.name}' for layer '${null!=(t=this.layer.title)?t:this.layer.id}' does not contain numeric values and cannot be used to drive the heatmap density`)}))])}destroy(){this._overlayRenderer.removeGeometries(Array.from(this._renderGeometries.values()),this.owner,S.Geometry.REMOVE),this._renderGeometries.clear(),this._material=o(this._material),this._materialWithField=o(this._materialWithField),this._featureStore.clear(),this._featureStore=null}get layer(){return this.owner.layer}get featureStore(){return this._featureStore}get updating(){return this.updatingHandles.updating}get updatingRemaining(){return 0}get suspendInfo(){return{}}get legendEnabled(){return!0}get displayFeatureLimit(){return{minimumTotalNumberOfFeatures:0,maximumTotalNumberOfFeatures:1e10,maximumTotalNumberOfPrimitives:1e10,maximumNumberOfFeatures:1e10}}get hasZ(){return"hasZ"in this.layer&&this.layer.hasZ}get hasM(){return"hasM"in this.layer&&this.layer.hasM}get scaleVisibilitySuspended(){return!1}get usedMemory(){return 0}get usedMemoryPerFeature(){return 0}get unprocessedMemoryEstimate(){return 0}get performanceInfo(){return{core:{visible:0,missing:0,pending:0},elevationUpdating:!1,visibilityFrustum:!0,visibilityScale:!0}}get _overlayRenderer(){return this.owner.view.basemapTerrain.overlayManager.renderer}get _overlaySpatialReference(){return s(this._overlayRenderer.spatialReference)}get _renderView(){return this.owner.view._stage.renderView}get _featuresArePoints(){return"point"===this.layer.geometryType}get _loadedPointGraphics(){return this.owner.loadedGraphics}get _heatmapRenderer(){const e=this.layer.renderer;return"heatmap"===(null==e?void 0:e.type)?e:null}get _heatmapRendererFieldName(){return a(this._heatmapRenderer,(e=>e.field))}get _heatmapRendererField(){return a(this._heatmapRendererFieldName,(e=>this.layer.fieldsIndex.get(e)))}get _heatmapRendererFieldIsNumeric(){const e=this._heatmapRendererField;return!n(e)&&b(e)}async whenGraphicBounds(){return null}computeAttachmentOrigin(){return null}highlight(){return T}maskOccludee(){return T}setObjectIdVisibility(){}async setup(){}_onLoadedFeaturesChange(e){if(!this._featuresArePoints)return;this._featureStore.removeManyById(e.removed.map((({objectId:e})=>e))),this._featureStore.addMany(e.added.map((e=>new f(_(new v,e.geometry),e.attributes,a(e.centroid,(e=>_(new v,e))),e.objectId))));const r=e.added,t=e.removed,i=l(t,(({uid:e})=>{const r=this._renderGeometries.get(e);return this._renderGeometries.delete(e),r})),o=r.map((e=>{const r=this._pointGraphicToRenderGeometry(e);return this._renderGeometries.set(e.uid,r),r}));i.length>0&&this._overlayRenderer.removeGeometries(i,this.owner,S.Geometry.REMOVE),o.length>0&&this._overlayRenderer.addGeometries(o,this.owner,S.Geometry.ADD,!0),(o.length>0||i.length>0)&&this._renderView.requestRender()}_recreate(){if(!this._loadedPointGraphics)return;const e=this._loadedPointGraphics.toArray();this._onLoadedFeaturesChange({added:e,removed:e})}_pointGraphicToRenderGeometry(e){const r=this._heatmapRendererFieldName,t=d(r)?this._materialWithField:this._material,i=c();g(e.geometry,i,this._overlaySpatialReference,F);const a=[[P.POSITION,{data:i,size:i.length}]],o=this._heatmapRendererFieldIsNumeric;var s;d(r)&&a.push([P.FEATUREATTRIBUTE,{data:[o&&null!=(s=e.attributes[r])?s:0],size:1}]);return new M(new G(a,null,j.Point),t,{layerUid:this.layer.uid,graphicUid:e.uid})}_forEachMaterial(e){e(this._material),e(this._materialWithField)}};e([u()],I.prototype,"type",void 0),e([u({constructOnly:!0})],I.prototype,"owner",void 0),e([u()],I.prototype,"layer",null),e([u()],I.prototype,"featureStore",null),e([u()],I.prototype,"updating",null),e([u()],I.prototype,"updatingRemaining",null),e([u()],I.prototype,"suspendInfo",null),e([u()],I.prototype,"legendEnabled",null),e([u()],I.prototype,"filterVisibility",void 0),e([u()],I.prototype,"displayFeatureLimit",null),e([u()],I.prototype,"preferredUpdatePolicy",void 0),e([u()],I.prototype,"hasZ",null),e([u()],I.prototype,"hasM",null),e([u()],I.prototype,"dataExtent",void 0),e([u()],I.prototype,"_featureStore",void 0),e([u()],I.prototype,"_overlayRenderer",null),e([u()],I.prototype,"_overlaySpatialReference",null),e([u()],I.prototype,"_renderGeometries",void 0),e([u()],I.prototype,"_material",void 0),e([u()],I.prototype,"_materialWithField",void 0),e([u()],I.prototype,"_renderView",null),e([u()],I.prototype,"_featuresArePoints",null),e([u()],I.prototype,"_loadedPointGraphics",null),e([u()],I.prototype,"_heatmapRenderer",null),e([u()],I.prototype,"_heatmapRendererFieldName",null),e([u()],I.prototype,"_heatmapRendererField",null),e([u()],I.prototype,"_heatmapRendererFieldIsNumeric",null),I=e([y("esri.views.3d.layers.support.HeatmapFeatureProcessor")],I);const T=t();export{I as HeatmapFeatureProcessor};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../../chunks/tslib.es6.js";import r from"../../../core/Accessor.js";import t from"../../../core/Evented.js";import s from"../../../core/Handles.js";import i from"../../../core/Logger.js";import{someMap as a}from"../../../core/MapUtils.js";import{releaseMaybe as o,disposeMaybe as n,isSome as h,unwrapOr as l,isNone as d,unwrap as c}from"../../../core/maybe.js";import p from"../../../core/PooledArray.js";import{someSet as u}from"../../../core/SetUtils.js";import{init as m}from"../../../core/watchUtils.js";import{property as g}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/arrayUtils.js";import"../../../core/has.js";import"../../../core/accessorSupport/ensureType.js";import{subclass as y}from"../../../core/accessorSupport/decorators/subclass.js";import{q as _,f}from"../../../chunks/mat4.js";import{a as R}from"../../../chunks/vec2f64.js";import{f as T,c as b}from"../../../chunks/vec3f64.js";import{I as w}from"../../../chunks/mat4f64.js";import{ViewingMode as x}from"../../ViewingMode.js";import{DrapeTargetType as v,DrapeSourceType as O}from"../layers/interfaces.js";import E from"../support/debugFlags.js";import{OverlayIndex as L,RenderTargetType as j}from"./interfaces.js";import{Overlay as A}from"./Overlay.js";import{OverlayFramebufferObject as S}from"./OverlayFramebufferObject.js";import{OverlayRenderTarget as C}from"./OverlayRenderTarget.js";import{ShaderTechniqueRepository as P}from"../webgl-engine/core/shaderTechnique/ShaderTechniqueRepository.js";import{autoDispose as D,AutoDisposableMixin as G}from"../webgl-engine/lib/AutoDisposable.js";import{TransparencyPassType as I,UpdatePolicy as M}from"../webgl-engine/lib/basicInterfaces.js";import V from"../webgl-engine/lib/Camera.js";import{DrapedHeatmapRenderer as U}from"../webgl-engine/lib/DrapedHeatmapRenderer.js";import{GLMaterialRepository as F}from"../webgl-engine/lib/GLMaterialRepository.js";import{createEmptyDepthTexture as q,createQuadVAO as H}from"../webgl-engine/lib/glUtil3D.js";import{GridLocalOriginFactory as W}from"../webgl-engine/lib/GridLocalOriginFactory.js";import{newIntersectorResult as N}from"../webgl-engine/lib/Intersector.js";import{StoreResults as B,IntersectorType as k}from"../webgl-engine/lib/IntersectorInterfaces.js";import{RenderOccludedFlag as z}from"../webgl-engine/lib/Material.js";import{ModelDirty as Y}from"../webgl-engine/lib/ModelDirtyTypes.js";import{OverlayRenderContext as X}from"../webgl-engine/lib/RenderContext.js";import{RenderPass as Q}from"../webgl-engine/lib/RenderPass.js";import{RenderSlot as J}from"../webgl-engine/lib/RenderSlot.js";import{SortedRenderGeometryRenderer as K}from"../webgl-engine/lib/SortedRenderGeometryRenderer.js";import{TextureTechniqueConfiguration as Z,TextureTechnique as $}from"../webgl-engine/lib/TextureTechnique.js";import{AmbientLight as ee}from"../webgl-engine/lighting/Lightsources.js";import{SceneLighting as re}from"../webgl-engine/lighting/SceneLighting.js";import{StippleTextureRepository as te}from"../webgl-engine/materials/StippleTextureRepository.js";import{C as se}from"../../../chunks/Compositing.glsl.js";import{AlphaMode as ie}from"../webgl-engine/shaders/CompositingTechnique.js";import{ImmediateTask as ae,TaskPriority as oe,noBudget as ne}from"../../support/Scheduler.js";import{ClearBufferBit as he,PrimitiveType as le,TextureType as de,PixelFormat as ce,PixelType as pe,TextureSamplingMode as ue}from"../../webgl/enums.js";import{Texture as me}from"../../webgl/Texture.js";import{vertexCount as ge}from"../../webgl/Util.js";const ye=i.getLogger("esri.views.3d.webgl-engine.lib.OverlayRenderer");let _e=class extends(G(r)){constructor(e){super(e),this._overlays=null,this._overlayRenderTarget=null,this._hasHighlights=!1,this._rendersOccluded=!1,this._hasWater=!1,this._lighting=new re,this._handles=new s,this._frameTask=ae,this._layerRenderers=new Map,this._sortedLayerRenderersDirty=!1,this._sortedLayerRenderers=new p,this._geometries=new Map,this.worldToPCSRatio=1,this.events=new t,this.longitudeCyclical=null}initialize(){const e=this.view._stage.renderView;this._rctx=e.renderingContext,this._renderContext=new X(this._rctx);const r=e.waterTextureRepository;this._stippleTextureRepository=new te(e.renderingContext),this._shaderTechniqueRepository=new P({rctx:this._rctx,viewingMode:x.Local,stippleTextureRepository:this._stippleTextureRepository,waterTextureRepository:r}),this._handles.add([m(r,"loadingState",(()=>this.events.emit("content-changed"))),m(this,"spatialReference",(e=>this._localOrigins=new W(e)))]),this._materialRepository=new F(e.textureRepository,this._shaderTechniqueRepository,(e=>{(e.renderOccluded&Ee)>0!==this._rendersOccluded&&this._updateRendersOccluded(),this.events.emit("content-changed"),this.notifyChange("updating")}),(()=>this.events.emit("content-changed"))),this._lighting.groundLightingFactor=1,this._lighting.globalFactor=0,this._lighting.set([new ee(T(1,1,1))]),this._bindParameters={slot:J.DRAPED_MATERIAL,highlightDepthTexture:q(this._rctx),camera:we,inverseViewport:R(),origin:null,screenToWorldRatio:null,screenToPCSRatio:null,shadowMappingEnabled:!1,slicePlane:null,ssaoEnabled:!1,hasOccludees:!1,linearDepthTexture:null,lastFrameColorTexture:null,reprojectionMatrix:w,ssrEnabled:!1,lighting:this._lighting,transparencyPassType:I.NONE,terrainLinearDepthTexture:null,geometryLinearDepthTexture:null,multipassTerrainEnabled:!1,cullAboveGround:!1,multipassGeometryEnabled:!1,highlightColorTexture:null,cloudsCompositionParams:null},this._frameTask=this.view.resourceController.scheduler.registerTask(oe.STAGE,this),this._handles.add(this._frameTask)}dispose(){this._handles.destroy(),this._layerRenderers.forEach((e=>e.dispose())),this._layerRenderers.clear(),this._debugTextureTechnique=o(this._debugTextureTechnique),this._debugPatternTexture=n(this._debugPatternTexture),this._bindParameters.highlightDepthTexture=n(this._bindParameters.highlightDepthTexture),this._shaderTechniqueRepository=n(this._shaderTechniqueRepository),this._temporaryFBO=n(this._temporaryFBO),this._quadVAO=n(this._quadVAO),this.disposeOverlays()}get updating(){return this._sortedLayerRenderersDirty||this._frameTask.updating||a(this._layerRenderers,(e=>e.updating))}get hasOverlays(){return h(this._overlays)&&h(this._overlayRenderTarget)}get gpuMemoryUsage(){return h(this._overlayRenderTarget)?this._overlayRenderTarget.gpuMemoryUsage:0}collectUnusedRenderTargetMemory(e){let r=!1;if(h(this._overlayRenderTarget))for(const t of this._overlayRenderTarget.renderTargets){const s=this.overlays[0].validTargets[t.type]||!this.overlays[1].validTargets[t.type];r=this._overlayRenderTarget.validateUsageForTarget(s,t,e)||r}return r}get overlays(){return l(this._overlays,[])}ensureDrapeTargets(e){h(this._overlays)&&this._overlays.forEach((r=>{r.hasTargetWithoutRasterImage=u(e,(e=>e.drapeTargetType===v.WithoutRasterImage))}))}ensureDrapeSources(e){h(this._overlays)&&this._overlays.forEach((r=>{r.hasDrapedFeatureSource=a(e,((e,r)=>r.drapeSourceType===O.Features)),r.hasDrapedRasterSource=a(e,((e,r)=>r.drapeSourceType===O.RasterImage))}))}ensureOverlays(e,r){d(this._overlays)&&(this._overlayRenderTarget=new C(this._rctx),this._overlays=[new A(L.INNER,this._overlayRenderTarget),new A(L.OUTER,this._overlayRenderTarget)]),this.ensureDrapeTargets(e),this.ensureDrapeSources(r)}disposeOverlays(){this._overlays=null,this._overlayRenderTarget=n(this._overlayRenderTarget),this.events.emit("textures-disposed")}get running(){return this.updating}runTask(e,r=(()=>!0)){this._frameTask.processQueue(e),e.done||this._processLayers(e,r)}_processLayers(e,r){let t=!1;for(const[s,i]of this._layerRenderers){if(e.done)break;(s.destroyed||r(s))&&(i.commitChanges()&&(t=!0,e.madeProgress()),i.isEmpty&&(t=!0,this._sortedLayerRenderersDirty=!0,this._layerRenderers.delete(s),this._handles.remove(s)))}this._updateSortedLayerRenderers(),t&&(h(this._overlays)&&0===this._layerRenderers.size&&this.disposeOverlays(),this.notifyChange("updating"),this.events.emit("content-changed"),this._updateHasHighlights(),this._updateRendersOccluded(),this._updateHasWater())}processSyncLayers(){this._processLayers(ne,(e=>e.updatePolicy===M.SYNC))}addGeometries(e,r,t,s=!1){for(const i of e)d(i.origin)&&(i.origin=this._localOrigins.getOrigin(i.boundingSphere)),this._geometries.set(i.id,i);this._ensureLayerRenderer(r,s).add(e),t===Y.Geometry.UPDATE&&this._notifyGraphicGeometryChanged(e,r)}removeGeometries(e,r,t){for(const i of e)this._geometries.delete(c(i.id));const s=this._layerRenderers.get(r);s&&(s.remove(e),t===Y.Geometry.UPDATE&&this._notifyGraphicGeometryChanged(e,r))}updateGeometries(e,r,t){const s=this._layerRenderers.get(r);if(s)switch(s.modify(e,t),t){case Y.State.TRANSFORMATION:case Y.State.VERTEXATTRS:return this._notifyGraphicGeometryChanged(e,r);case Y.State.VISIBILITIES:return this._notifyGraphicVisibilityChanged(e,r)}else ye.warn("Attempted to update geometry for nonexistent layer")}_notifyGraphicGeometryChanged(e,r){if(d(r.notifyGraphicGeometryChanged))return;let t;for(const s of e){const e=s.graphicUid;h(e)&&e!==t&&(r.notifyGraphicGeometryChanged(e),t=e)}}_notifyGraphicVisibilityChanged(e,r){if(d(r.notifyGraphicVisibilityChanged))return;let t;for(const s of e){const e=s.graphicUid;h(e)&&e!==t&&(r.notifyGraphicVisibilityChanged(e),t=e)}}updateHighlights(e,r){const t=this._layerRenderers.get(r);t?t.modify(e,Y.State.HIGHLIGHTS):ye.warn("Attempted to update highlights for nonexistent layer")}isEmpty(){return 0===this._geometries.size&&!E.OVERLAY_DRAW_DEBUG_TEXTURE}get hasHighlights(){return this._hasHighlights}get hasWater(){return this._hasWater}get rendersOccluded(){return this._rendersOccluded}updateAnimation(e){let r=!1;return this._layerRenderers.forEach((t=>r=t.updateAnimation(e)||r)),r}updateLayerOrder(){this._sortedLayerRenderersDirty=!0}drawTarget(e,r,t){const s=e.canvasGeometries;if(0===s.numViews)return!1;this._screenToWorldRatio=t*e.mapUnitsPerPixel;const i=r.renderPass;if(this.isEmpty()||i===Q.MATERIAL_HIGHLIGHT&&!this.hasHighlights||i===Q.MATERIAL_NORMAL&&!this.hasWater||!e.hasSomeSizedView())return!1;const a=r.fbo;if(!a.isValid())return!1;const o=2*e.resolution,n=e.resolution;a.resize(o,n);const l=this._rctx;we.pixelRatio=e.pixelRatio*t,this._renderContext.pass=i,this._bindParameters.screenToWorldRatio=this._screenToWorldRatio,this._bindParameters.screenToPCSRatio=this._screenToWorldRatio*this.worldToPCSRatio,this._bindParameters.slot=i===Q.MATERIAL_NORMAL?J.DRAPED_WATER:J.DRAPED_MATERIAL,e.applyViewport(this._rctx),a.bind(l),e.index===L.INNER&&(l.setClearColor(0,0,0,0),l.clearSafe(he.COLOR_BUFFER_BIT));const d=r.type===j.ColorNoRasterImage?fe.ExcludeRasterImage:r.type===j.Occluded?fe.OccludedOnly:fe.Normal;if(d===fe.OccludedOnly&&(this._renderContext.renderOccludedMask=Ee),E.OVERLAY_DRAW_DEBUG_TEXTURE&&d!==fe.OccludedOnly)for(let h=0;h<s.numViews;h++)this._setViewParameters(s.extents[h],e,we),this._drawDebugTexture(e.resolution,Te[e.index]);return this._layerRenderers.size>0&&this._sortedLayerRenderers.forAll((({overlayLayer:r,renderer:t})=>{if(d===fe.ExcludeRasterImage&&r.drapeSourceType===O.RasterImage)return;const{fullOpacity:c}=r,p=h(c)&&c<1&&i===Q.MATERIAL;p&&(this.bindTemporaryFramebuffer(this._rctx,o,n),l.clearSafe(he.COLOR_BUFFER_BIT));for(let i=0;i<s.numViews;i++)this._setViewParameters(s.extents[i],e,we),t.render(this._renderContext,this._bindParameters);p&&h(this._temporaryFBO)&&(a.bind(l),this.view._stage.renderView.compositingHelper.composite(this._temporaryFBO.getTexture(),ie.PremultipliedAlpha,c,se.OverlayWithTransparency,e.index))})),l.bindFramebuffer(null),a.generateMipMap(),this._renderContext.resetRenderOccludedMask(),!0}bindTemporaryFramebuffer(e,r,t){d(this._temporaryFBO)&&(this._temporaryFBO=new S(e,!1)),this._temporaryFBO.resize(r,t),this._temporaryFBO.bind(e)}async reloadShaders(){await this._shaderTechniqueRepository.reloadAll()}intersect(e,r,t,s){let i=0;this._geometries.forEach((a=>{if(s&&!s(a))return;this._intersectRenderGeometry(a,t,r,0,e,i);const o=this.longitudeCyclical;o&&(a.boundingSphere[0]-a.boundingSphere[3]<o.min&&this._intersectRenderGeometry(a,t,r,o.range,e,i),a.boundingSphere[0]+a.boundingSphere[3]>o.max&&this._intersectRenderGeometry(a,t,r,-o.range,e,i)),i++}))}_intersectRenderGeometry(e,r,t,s,i,a){if(!e.instanceParameters.visible)return;let o=0;h(e.transformation)&&(s+=e.transformation[12],o=e.transformation[13]),xe[0]=t[0]-s,xe[1]=t[1]-o,xe[2]=1,ve[0]=t[0]-s,ve[1]=t[1]-o,ve[2]=0,e.screenToWorldRatio=this._screenToWorldRatio,e.material.intersect(e,null,e.getShaderTransformation(),i,xe,ve,((t,s,o)=>{be(r,o,e.material.renderPriority,a,i,e.layerUid,e.graphicUid)}),e.calculateShaderTransformation,r)}_ensureLayerRenderer(e,r){let t=this._layerRenderers.get(e);return t&&r===t instanceof U||(t=r?new U({rctx:this._rctx,materialRepository:this._materialRepository}):new K({rctx:this._rctx,materialRepository:this._materialRepository}),this._layerRenderers.set(e,t),this._sortedLayerRenderersDirty=!0,"fullOpacity"in e&&this._handles.add(e.watch("fullOpacity",(()=>this.events.emit("content-changed"))),e),this._handles.add(m(t,"updating",(()=>this.notifyChange("updating"))),e)),t}_updateSortedLayerRenderers(){if(!this._sortedLayerRenderersDirty)return;if(this._sortedLayerRenderersDirty=!1,this._sortedLayerRenderers.clear(),0===this._layerRenderers.size)return;const e=this.view.map.allLayers;this._layerRenderers.forEach(((r,t)=>{const s=e.indexOf(t.layer);this._sortedLayerRenderers.push(new Re(t,r,s<0?1/0:s))})),this._sortedLayerRenderers.sort(((e,r)=>e.index-r.index))}_setViewParameters(e,r,t){t.viewport[0]=t.viewport[1]=0,t.viewport[2]=t.viewport[3]=r.resolution,_(t.projectionMatrix,0,e[2]-e[0],0,e[3]-e[1],t.near,t.far),f(t.viewMatrix,[-e[0],-e[1],0]),this._renderContext.camera=t,this._bindParameters.camera=t,this._bindParameters.inverseViewport[0]=1/t.fullViewport[2],this._bindParameters.inverseViewport[1]=1/t.fullViewport[3]}_updateHasWater(){const e=a(this._layerRenderers,(e=>e.hasWater));e!==this._hasWater&&(this._hasWater=e,this.events.emit("has-water",e))}_updateHasHighlights(){const e=a(this._layerRenderers,(e=>e.hasHighlights));e!==this._hasHighlights&&(this._hasHighlights=e,this.events.emit("has-highlights",e))}_updateRendersOccluded(){const e=a(this._layerRenderers,(e=>e.rendersOccluded));e!==this._rendersOccluded&&(this._rendersOccluded=e,this.events.emit("renders-occluded",e))}_drawDebugTexture(e,r){this._ensureDebugPatternResources(e,e);const t=this._rctx,s=t.useTechnique(this._debugTextureTechnique);s.setUniform4f("uColor",r[0],r[1],r[2],1),s.bindTexture(this._debugPatternTexture,"tex"),t.bindVAO(this._quadVAO),t.drawArrays(le.TRIANGLE_STRIP,0,ge(this._quadVAO,"geometry"))}_ensureDebugPatternResources(e,r){if(this._debugPatternTexture)return;const t=new Uint8Array(e*r*4);let s=0;for(let a=0;a<r;a++)for(let i=0;i<e;i++){const o=Math.floor(i/10),n=Math.floor(a/10);o<2||n<2||10*o>e-20||10*n>r-20?(t[s++]=255,t[s++]=255,t[s++]=255,t[s++]=255):(t[s++]=255,t[s++]=255,t[s++]=255,t[s++]=1&o&&1&n?1&i^1&a?0:255:1&o^1&n?0:128)}this._debugPatternTexture=new me(this._rctx,{target:de.TEXTURE_2D,pixelFormat:ce.RGBA,dataType:pe.UNSIGNED_BYTE,samplingMode:ue.NEAREST,width:e,height:r},t);const i=new Z;i.hasAlpha=!0,this._debugTextureTechnique=this._shaderTechniqueRepository.acquire($,i),this._quadVAO=H(this._rctx)}get test(){return{layerRenderers:this._layerRenderers}}};var fe;e([g()],_e.prototype,"_frameTask",void 0),e([g()],_e.prototype,"_sortedLayerRenderersDirty",void 0),e([D()],_e.prototype,"_shaderTechniqueRepository",void 0),e([D()],_e.prototype,"_stippleTextureRepository",void 0),e([g({constructOnly:!0})],_e.prototype,"view",void 0),e([g()],_e.prototype,"worldToPCSRatio",void 0),e([g()],_e.prototype,"spatialReference",void 0),e([g({type:Boolean,readOnly:!0})],_e.prototype,"updating",null),_e=e([y("esri.views.3d.terrain.OverlayRenderer")],_e),function(e){e[e.Normal=0]="Normal",e[e.OccludedOnly=1]="OccludedOnly",e[e.ExcludeRasterImage=2]="ExcludeRasterImage"}(fe||(fe={}));class Re{constructor(e,r,t){this.overlayLayer=e,this.renderer=r,this.index=t}}const Te=[[1,.5,.5],[.5,.5,1]];function be(e,r,t,s,i,a,o){const n={layerUid:a,graphicUid:o,triangleNr:r},h=r=>{r.set(k.OVERLAY,n,e.dist,e.normal,e.transformation,t,s)};if((null==i.results.min.drapedLayerOrder||t>=i.results.min.drapedLayerOrder)&&(null==i.results.min.dist||i.results.ground.dist<=i.results.min.dist)&&h(i.results.min),i.options.store!==B.MIN&&(null==i.results.max.drapedLayerOrder||t<i.results.max.drapedLayerOrder)&&(null==i.results.max.dist||i.results.ground.dist>i.results.max.dist)&&h(i.results.max),i.options.store===B.ALL){const e=N(i.ray);h(e),i.results.all.push(e)}}const we=new V;we.near=1,we.far=1e4,we.relativeElevation=null;const xe=b(),ve=b(),Oe=-2,Ee=z.OccludeAndTransparent;export{Oe as DRAPED_Z,fe as DrawPassOption,_e as OverlayRenderer,Ee as overlayRenderOccludedFlag};
5
+ import{_ as e}from"../../../chunks/tslib.es6.js";import r from"../../../core/Accessor.js";import t from"../../../core/Evented.js";import s from"../../../core/Handles.js";import i from"../../../core/Logger.js";import{someMap as a}from"../../../core/MapUtils.js";import{releaseMaybe as o,disposeMaybe as n,isSome as h,unwrapOr as l,isNone as d,unwrap as c}from"../../../core/maybe.js";import p from"../../../core/PooledArray.js";import{someSet as u}from"../../../core/SetUtils.js";import{init as m}from"../../../core/watchUtils.js";import{property as g}from"../../../core/accessorSupport/decorators/property.js";import"../../../core/arrayUtils.js";import"../../../core/has.js";import"../../../core/accessorSupport/ensureType.js";import{subclass as y}from"../../../core/accessorSupport/decorators/subclass.js";import{q as _,f}from"../../../chunks/mat4.js";import{a as R}from"../../../chunks/vec2f64.js";import{f as T,c as b}from"../../../chunks/vec3f64.js";import{I as w}from"../../../chunks/mat4f64.js";import{ViewingMode as x}from"../../ViewingMode.js";import{DrapeTargetType as v,DrapeSourceType as O}from"../layers/interfaces.js";import E from"../support/debugFlags.js";import{OverlayIndex as L,RenderTargetType as j}from"./interfaces.js";import{Overlay as A}from"./Overlay.js";import{OverlayFramebufferObject as S}from"./OverlayFramebufferObject.js";import{OverlayRenderTarget as C}from"./OverlayRenderTarget.js";import{ShaderTechniqueRepository as P}from"../webgl-engine/core/shaderTechnique/ShaderTechniqueRepository.js";import{autoDispose as D,AutoDisposableMixin as G}from"../webgl-engine/lib/AutoDisposable.js";import{TransparencyPassType as I,UpdatePolicy as M}from"../webgl-engine/lib/basicInterfaces.js";import V from"../webgl-engine/lib/Camera.js";import{DrapedHeatmapRenderer as U}from"../webgl-engine/lib/DrapedHeatmapRenderer.js";import{GLMaterialRepository as F}from"../webgl-engine/lib/GLMaterialRepository.js";import{createEmptyDepthTexture as q,createQuadVAO as H}from"../webgl-engine/lib/glUtil3D.js";import{GridLocalOriginFactory as W}from"../webgl-engine/lib/GridLocalOriginFactory.js";import{newIntersectorResult as N}from"../webgl-engine/lib/Intersector.js";import{StoreResults as B,IntersectorType as k}from"../webgl-engine/lib/IntersectorInterfaces.js";import{RenderOccludedFlag as z}from"../webgl-engine/lib/Material.js";import{ModelDirty as Y}from"../webgl-engine/lib/ModelDirtyTypes.js";import{OverlayRenderContext as X}from"../webgl-engine/lib/RenderContext.js";import{RenderPass as Q}from"../webgl-engine/lib/RenderPass.js";import{RenderSlot as J}from"../webgl-engine/lib/RenderSlot.js";import{SortedRenderGeometryRenderer as K}from"../webgl-engine/lib/SortedRenderGeometryRenderer.js";import{TextureTechniqueConfiguration as Z,TextureTechnique as $}from"../webgl-engine/lib/TextureTechnique.js";import{AmbientLight as ee}from"../webgl-engine/lighting/Lightsources.js";import{SceneLighting as re}from"../webgl-engine/lighting/SceneLighting.js";import{StippleTextureRepository as te}from"../webgl-engine/materials/StippleTextureRepository.js";import{C as se}from"../../../chunks/Compositing.glsl.js";import{AlphaMode as ie}from"../webgl-engine/shaders/CompositingTechnique.js";import{ImmediateTask as ae,TaskPriority as oe,noBudget as ne}from"../../support/Scheduler.js";import{ClearBufferBit as he,PrimitiveType as le,TextureType as de,PixelFormat as ce,PixelType as pe,TextureSamplingMode as ue}from"../../webgl/enums.js";import{Texture as me}from"../../webgl/Texture.js";import{vertexCount as ge}from"../../webgl/Util.js";const ye=i.getLogger("esri.views.3d.webgl-engine.lib.OverlayRenderer");let _e=class extends(G(r)){constructor(e){super(e),this._overlays=null,this._overlayRenderTarget=null,this._hasHighlights=!1,this._rendersOccluded=!1,this._hasWater=!1,this._lighting=new re,this._handles=new s,this._frameTask=ae,this._layerRenderers=new Map,this._sortedLayerRenderersDirty=!1,this._sortedLayerRenderers=new p,this._geometries=new Map,this.worldToPCSRatio=1,this.events=new t,this.longitudeCyclical=null}initialize(){const e=this.view._stage.renderView;this._rctx=e.renderingContext,this._renderContext=new X(this._rctx);const r=e.waterTextureRepository;this._stippleTextureRepository=new te(e.renderingContext),this._shaderTechniqueRepository=new P({rctx:this._rctx,viewingMode:x.Local,stippleTextureRepository:this._stippleTextureRepository,waterTextureRepository:r}),this._handles.add([m(r,"loadingState",(()=>this.events.emit("content-changed"))),m(this,"spatialReference",(e=>this._localOrigins=new W(e)))]),this._materialRepository=new F(e.textureRepository,this._shaderTechniqueRepository,(e=>{(e.renderOccluded&Ee)>0!==this._rendersOccluded&&this._updateRendersOccluded(),this.events.emit("content-changed"),this.notifyChange("updating")}),(()=>this.events.emit("content-changed"))),this._lighting.groundLightingFactor=1,this._lighting.globalFactor=0,this._lighting.set([new ee(T(1,1,1))]),this._bindParameters={slot:J.DRAPED_MATERIAL,highlightDepthTexture:q(this._rctx),camera:we,inverseViewport:R(),origin:null,screenToWorldRatio:null,screenToPCSRatio:null,shadowMappingEnabled:!1,slicePlane:null,ssaoEnabled:!1,hasOccludees:!1,linearDepthTexture:null,lastFrameColorTexture:null,reprojectionMatrix:w,ssrEnabled:!1,lighting:this._lighting,transparencyPassType:I.NONE,terrainLinearDepthTexture:null,geometryLinearDepthTexture:null,multipassTerrainEnabled:!1,cullAboveGround:!1,multipassGeometryEnabled:!1,highlightColorTexture:null,cloudsCompositionParams:null},this._frameTask=this.view.resourceController.scheduler.registerTask(oe.STAGE,this),this._handles.add(this._frameTask)}dispose(){this._handles.destroy(),this._layerRenderers.forEach((e=>e.destroy())),this._layerRenderers.clear(),this._debugTextureTechnique=o(this._debugTextureTechnique),this._debugPatternTexture=n(this._debugPatternTexture),this._bindParameters.highlightDepthTexture=n(this._bindParameters.highlightDepthTexture),this._shaderTechniqueRepository=n(this._shaderTechniqueRepository),this._temporaryFBO=n(this._temporaryFBO),this._quadVAO=n(this._quadVAO),this.disposeOverlays()}get updating(){return this._sortedLayerRenderersDirty||this._frameTask.updating||a(this._layerRenderers,(e=>e.updating))}get hasOverlays(){return h(this._overlays)&&h(this._overlayRenderTarget)}get gpuMemoryUsage(){return h(this._overlayRenderTarget)?this._overlayRenderTarget.gpuMemoryUsage:0}collectUnusedRenderTargetMemory(e){let r=!1;if(h(this._overlayRenderTarget))for(const t of this._overlayRenderTarget.renderTargets){const s=this.overlays[0].validTargets[t.type]||!this.overlays[1].validTargets[t.type];r=this._overlayRenderTarget.validateUsageForTarget(s,t,e)||r}return r}get overlays(){return l(this._overlays,[])}ensureDrapeTargets(e){h(this._overlays)&&this._overlays.forEach((r=>{r.hasTargetWithoutRasterImage=u(e,(e=>e.drapeTargetType===v.WithoutRasterImage))}))}ensureDrapeSources(e){h(this._overlays)&&this._overlays.forEach((r=>{r.hasDrapedFeatureSource=a(e,((e,r)=>r.drapeSourceType===O.Features)),r.hasDrapedRasterSource=a(e,((e,r)=>r.drapeSourceType===O.RasterImage))}))}ensureOverlays(e,r){d(this._overlays)&&(this._overlayRenderTarget=new C(this._rctx),this._overlays=[new A(L.INNER,this._overlayRenderTarget),new A(L.OUTER,this._overlayRenderTarget)]),this.ensureDrapeTargets(e),this.ensureDrapeSources(r)}disposeOverlays(){this._overlays=null,this._overlayRenderTarget=n(this._overlayRenderTarget),this.events.emit("textures-disposed")}get running(){return this.updating}runTask(e,r=(()=>!0)){this._frameTask.processQueue(e),e.done||this._processLayers(e,r)}_processLayers(e,r){let t=!1;for(const[s,i]of this._layerRenderers){if(e.done)break;(s.destroyed||r(s))&&(i.commitChanges()&&(t=!0,e.madeProgress()),i.isEmpty&&(t=!0,this._sortedLayerRenderersDirty=!0,this._layerRenderers.delete(s),this._handles.remove(s),i.destroy()))}this._updateSortedLayerRenderers(),t&&(h(this._overlays)&&0===this._layerRenderers.size&&this.disposeOverlays(),this.notifyChange("updating"),this.events.emit("content-changed"),this._updateHasHighlights(),this._updateRendersOccluded(),this._updateHasWater())}processSyncLayers(){this._processLayers(ne,(e=>e.updatePolicy===M.SYNC))}addGeometries(e,r,t,s=!1){for(const i of e)d(i.origin)&&(i.origin=this._localOrigins.getOrigin(i.boundingSphere)),this._geometries.set(i.id,i);this._ensureLayerRenderer(r,s).add(e),t===Y.Geometry.UPDATE&&this._notifyGraphicGeometryChanged(e,r)}removeGeometries(e,r,t){for(const i of e)this._geometries.delete(c(i.id));const s=this._layerRenderers.get(r);s&&(s.remove(e),t===Y.Geometry.UPDATE&&this._notifyGraphicGeometryChanged(e,r))}updateGeometries(e,r,t){const s=this._layerRenderers.get(r);if(s)switch(s.modify(e,t),t){case Y.State.TRANSFORMATION:case Y.State.VERTEXATTRS:return this._notifyGraphicGeometryChanged(e,r);case Y.State.VISIBILITIES:return this._notifyGraphicVisibilityChanged(e,r)}else ye.warn("Attempted to update geometry for nonexistent layer")}_notifyGraphicGeometryChanged(e,r){if(d(r.notifyGraphicGeometryChanged))return;let t;for(const s of e){const e=s.graphicUid;h(e)&&e!==t&&(r.notifyGraphicGeometryChanged(e),t=e)}}_notifyGraphicVisibilityChanged(e,r){if(d(r.notifyGraphicVisibilityChanged))return;let t;for(const s of e){const e=s.graphicUid;h(e)&&e!==t&&(r.notifyGraphicVisibilityChanged(e),t=e)}}updateHighlights(e,r){const t=this._layerRenderers.get(r);t?t.modify(e,Y.State.HIGHLIGHTS):ye.warn("Attempted to update highlights for nonexistent layer")}isEmpty(){return 0===this._geometries.size&&!E.OVERLAY_DRAW_DEBUG_TEXTURE}get hasHighlights(){return this._hasHighlights}get hasWater(){return this._hasWater}get rendersOccluded(){return this._rendersOccluded}updateAnimation(e){let r=!1;return this._layerRenderers.forEach((t=>r=t.updateAnimation(e)||r)),r}updateLayerOrder(){this._sortedLayerRenderersDirty=!0}drawTarget(e,r,t){const s=e.canvasGeometries;if(0===s.numViews)return!1;this._screenToWorldRatio=t*e.mapUnitsPerPixel;const i=r.renderPass;if(this.isEmpty()||i===Q.MATERIAL_HIGHLIGHT&&!this.hasHighlights||i===Q.MATERIAL_NORMAL&&!this.hasWater||!e.hasSomeSizedView())return!1;const a=r.fbo;if(!a.isValid())return!1;const o=2*e.resolution,n=e.resolution;a.resize(o,n);const l=this._rctx;we.pixelRatio=e.pixelRatio*t,this._renderContext.pass=i,this._bindParameters.screenToWorldRatio=this._screenToWorldRatio,this._bindParameters.screenToPCSRatio=this._screenToWorldRatio*this.worldToPCSRatio,this._bindParameters.slot=i===Q.MATERIAL_NORMAL?J.DRAPED_WATER:J.DRAPED_MATERIAL,e.applyViewport(this._rctx),a.bind(l),e.index===L.INNER&&(l.setClearColor(0,0,0,0),l.clearSafe(he.COLOR_BUFFER_BIT));const d=r.type===j.ColorNoRasterImage?fe.ExcludeRasterImage:r.type===j.Occluded?fe.OccludedOnly:fe.Normal;if(d===fe.OccludedOnly&&(this._renderContext.renderOccludedMask=Ee),E.OVERLAY_DRAW_DEBUG_TEXTURE&&d!==fe.OccludedOnly)for(let h=0;h<s.numViews;h++)this._setViewParameters(s.extents[h],e,we),this._drawDebugTexture(e.resolution,Te[e.index]);return this._layerRenderers.size>0&&this._sortedLayerRenderers.forAll((({overlayLayer:r,renderer:t})=>{if(d===fe.ExcludeRasterImage&&r.drapeSourceType===O.RasterImage)return;const{fullOpacity:c}=r,p=h(c)&&c<1&&i===Q.MATERIAL;p&&(this.bindTemporaryFramebuffer(this._rctx,o,n),l.clearSafe(he.COLOR_BUFFER_BIT));for(let i=0;i<s.numViews;i++)this._setViewParameters(s.extents[i],e,we),t.render(this._renderContext,this._bindParameters);p&&h(this._temporaryFBO)&&(a.bind(l),this.view._stage.renderView.compositingHelper.composite(this._temporaryFBO.getTexture(),ie.PremultipliedAlpha,c,se.OverlayWithTransparency,e.index))})),l.bindFramebuffer(null),a.generateMipMap(),this._renderContext.resetRenderOccludedMask(),!0}bindTemporaryFramebuffer(e,r,t){d(this._temporaryFBO)&&(this._temporaryFBO=new S(e,!1)),this._temporaryFBO.resize(r,t),this._temporaryFBO.bind(e)}async reloadShaders(){await this._shaderTechniqueRepository.reloadAll()}intersect(e,r,t,s){let i=0;this._geometries.forEach((a=>{if(s&&!s(a))return;this._intersectRenderGeometry(a,t,r,0,e,i);const o=this.longitudeCyclical;o&&(a.boundingSphere[0]-a.boundingSphere[3]<o.min&&this._intersectRenderGeometry(a,t,r,o.range,e,i),a.boundingSphere[0]+a.boundingSphere[3]>o.max&&this._intersectRenderGeometry(a,t,r,-o.range,e,i)),i++}))}_intersectRenderGeometry(e,r,t,s,i,a){if(!e.instanceParameters.visible)return;let o=0;h(e.transformation)&&(s+=e.transformation[12],o=e.transformation[13]),xe[0]=t[0]-s,xe[1]=t[1]-o,xe[2]=1,ve[0]=t[0]-s,ve[1]=t[1]-o,ve[2]=0,e.screenToWorldRatio=this._screenToWorldRatio,e.material.intersect(e,null,e.getShaderTransformation(),i,xe,ve,((t,s,o)=>{be(r,o,e.material.renderPriority,a,i,e.layerUid,e.graphicUid)}),e.calculateShaderTransformation,r)}_ensureLayerRenderer(e,r){let t=this._layerRenderers.get(e);return t&&r===t instanceof U||(t=r?new U({rctx:this._rctx,materialRepository:this._materialRepository}):new K({rctx:this._rctx,materialRepository:this._materialRepository}),this._layerRenderers.set(e,t),this._sortedLayerRenderersDirty=!0,"fullOpacity"in e&&this._handles.add(e.watch("fullOpacity",(()=>this.events.emit("content-changed"))),e),this._handles.add(m(t,"updating",(()=>this.notifyChange("updating"))),e)),t}_updateSortedLayerRenderers(){if(!this._sortedLayerRenderersDirty)return;if(this._sortedLayerRenderersDirty=!1,this._sortedLayerRenderers.clear(),0===this._layerRenderers.size)return;const e=this.view.map.allLayers;this._layerRenderers.forEach(((r,t)=>{const s=e.indexOf(t.layer);this._sortedLayerRenderers.push(new Re(t,r,s<0?1/0:s))})),this._sortedLayerRenderers.sort(((e,r)=>e.index-r.index))}_setViewParameters(e,r,t){t.viewport[0]=t.viewport[1]=0,t.viewport[2]=t.viewport[3]=r.resolution,_(t.projectionMatrix,0,e[2]-e[0],0,e[3]-e[1],t.near,t.far),f(t.viewMatrix,[-e[0],-e[1],0]),this._renderContext.camera=t,this._bindParameters.camera=t,this._bindParameters.inverseViewport[0]=1/t.fullViewport[2],this._bindParameters.inverseViewport[1]=1/t.fullViewport[3]}_updateHasWater(){const e=a(this._layerRenderers,(e=>e.hasWater));e!==this._hasWater&&(this._hasWater=e,this.events.emit("has-water",e))}_updateHasHighlights(){const e=a(this._layerRenderers,(e=>e.hasHighlights));e!==this._hasHighlights&&(this._hasHighlights=e,this.events.emit("has-highlights",e))}_updateRendersOccluded(){const e=a(this._layerRenderers,(e=>e.rendersOccluded));e!==this._rendersOccluded&&(this._rendersOccluded=e,this.events.emit("renders-occluded",e))}_drawDebugTexture(e,r){this._ensureDebugPatternResources(e,e);const t=this._rctx,s=t.useTechnique(this._debugTextureTechnique);s.setUniform4f("uColor",r[0],r[1],r[2],1),s.bindTexture(this._debugPatternTexture,"tex"),t.bindVAO(this._quadVAO),t.drawArrays(le.TRIANGLE_STRIP,0,ge(this._quadVAO,"geometry"))}_ensureDebugPatternResources(e,r){if(this._debugPatternTexture)return;const t=new Uint8Array(e*r*4);let s=0;for(let a=0;a<r;a++)for(let i=0;i<e;i++){const o=Math.floor(i/10),n=Math.floor(a/10);o<2||n<2||10*o>e-20||10*n>r-20?(t[s++]=255,t[s++]=255,t[s++]=255,t[s++]=255):(t[s++]=255,t[s++]=255,t[s++]=255,t[s++]=1&o&&1&n?1&i^1&a?0:255:1&o^1&n?0:128)}this._debugPatternTexture=new me(this._rctx,{target:de.TEXTURE_2D,pixelFormat:ce.RGBA,dataType:pe.UNSIGNED_BYTE,samplingMode:ue.NEAREST,width:e,height:r},t);const i=new Z;i.hasAlpha=!0,this._debugTextureTechnique=this._shaderTechniqueRepository.acquire($,i),this._quadVAO=H(this._rctx)}get test(){return{layerRenderers:this._layerRenderers}}};var fe;e([g()],_e.prototype,"_frameTask",void 0),e([g()],_e.prototype,"_sortedLayerRenderersDirty",void 0),e([D()],_e.prototype,"_shaderTechniqueRepository",void 0),e([D()],_e.prototype,"_stippleTextureRepository",void 0),e([g({constructOnly:!0})],_e.prototype,"view",void 0),e([g()],_e.prototype,"worldToPCSRatio",void 0),e([g()],_e.prototype,"spatialReference",void 0),e([g({type:Boolean,readOnly:!0})],_e.prototype,"updating",null),_e=e([y("esri.views.3d.terrain.OverlayRenderer")],_e),function(e){e[e.Normal=0]="Normal",e[e.OccludedOnly=1]="OccludedOnly",e[e.ExcludeRasterImage=2]="ExcludeRasterImage"}(fe||(fe={}));class Re{constructor(e,r,t){this.overlayLayer=e,this.renderer=r,this.index=t}}const Te=[[1,.5,.5],[.5,.5,1]];function be(e,r,t,s,i,a,o){const n={layerUid:a,graphicUid:o,triangleNr:r},h=r=>{r.set(k.OVERLAY,n,e.dist,e.normal,e.transformation,t,s)};if((null==i.results.min.drapedLayerOrder||t>=i.results.min.drapedLayerOrder)&&(null==i.results.min.dist||i.results.ground.dist<=i.results.min.dist)&&h(i.results.min),i.options.store!==B.MIN&&(null==i.results.max.drapedLayerOrder||t<i.results.max.drapedLayerOrder)&&(null==i.results.max.dist||i.results.ground.dist>i.results.max.dist)&&h(i.results.max),i.options.store===B.ALL){const e=N(i.ray);h(e),i.results.all.push(e)}}const we=new V;we.near=1,we.far=1e4,we.relativeElevation=null;const xe=b(),ve=b(),Oe=-2,Ee=z.OccludeAndTransparent;export{Oe as DRAPED_Z,fe as DrawPassOption,_e as OverlayRenderer,Ee as overlayRenderOccludedFlag};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../../../chunks/tslib.es6.js";import"../../../../core/Logger.js";import"../../../../core/accessorSupport/ensureType.js";import"../../../../core/arrayUtils.js";import"../../../../core/has.js";import"../../../../core/accessorSupport/set.js";import{subclass as t}from"../../../../core/accessorSupport/decorators/subclass.js";import{ViewingMode as r}from"../../../ViewingMode.js";import{createQuadVAO as i}from"./glUtil3D.js";import{SortedRenderGeometryRenderer as s}from"./SortedRenderGeometryRenderer.js";import{isHeatMapDensityMaterial as a}from"../materials/HeatmapDensityMaterial.js";import{HeatmapTechnique as o}from"../shaders/HeatmapTechnique.js";import{TargetType as n,DepthStencilTargetType as h,TextureType as p,PixelFormat as d,SizedPixelFormat as m,PixelType as c,TextureSamplingMode as l,TextureWrapMode as u,ClearBufferBit as g}from"../../../webgl/enums.js";import{FramebufferObject as R}from"../../../webgl/FramebufferObject.js";import{Texture as f}from"../../../webgl/Texture.js";import{vertexCount as w}from"../../../webgl/Util.js";let x=class extends s{constructor(){super(...arguments),this.type="draped-heatmap",this.pointCount=0}initialize(){super.initialize();const e={colorTarget:n.TEXTURE,depthStencilTarget:h.NONE,width:0,height:0},t={target:p.TEXTURE_2D,pixelFormat:d.RED,internalFormat:m.R32F,dataType:c.FLOAT,samplingMode:l.LINEAR,wrapMode:u.CLAMP_TO_EDGE,width:0,height:0};this.densityMap=new R(this.rctx,e,t),this.quad=i(this.rctx);const s={target:p.TEXTURE_2D,pixelFormat:d.RGBA,dataType:c.UNSIGNED_BYTE,samplingMode:l.LINEAR,wrapMode:u.CLAMP_TO_EDGE,width:8,height:1},a=new f(this.rctx,s,new Uint8ClampedArray([34,34,64,0,78,46,88,255,127,56,100,255,175,68,98,255,212,91,84,255,235,126,63,255,238,168,39,255,221,214,34,255]));this.colorRamp=a,this.technique=new o({rctx:this.rctx,viewingMode:r.Local},null),this.heatmapParameters={colorRamp:a,densityMap:this.densityMap.colorTexture,searchRadius:1,pointCount:this.pointCount}}dispose(){super.dispose(),this.technique.dispose(),this.densityMap.dispose(),this.quad.dispose(),this.colorRamp.dispose()}get hasHighlights(){return!1}get hasWater(){return!1}get rendersOccluded(){return!1}get _heatmapDensityMaterialRenderers(){return this._sortedMaterialRenderers.data.filter(T)}add(e){this.pointCount+=e.length,super.add(e)}remove(e){this.pointCount-=e.length,super.remove(e)}render(e,t){const r=this._heatmapDensityMaterialRenderers;if(r.length<1)return;const i=this.rctx.getBoundFramebufferObject(),s=this.rctx.getViewport();this.densityMap.resize(s.width,s.height),this.rctx.bindFramebuffer(this.densityMap),this.rctx.clear(g.COLOR_BUFFER_BIT);let a=!1;const o=r[0].material.parameters.searchRadius;this.heatmapParameters.pointCount=this.pointCount,this.heatmapParameters.searchRadius=o;for(let n=0;n<r.length;n++){const{material:i,materialRenderer:s}=r[n];i.shouldRender(e)&&(a=a||s.render(t.slot,e.pass,t))}this.rctx.bindFramebuffer(i),a&&(this.rctx.bindVAO(this.quad),this.rctx.useProgram(this.technique.program),this.technique.bindPipelineState(this.rctx),this.technique.bindPass(this.heatmapParameters,t),this.rctx.drawArrays(this.technique.primitiveType,0,w(this.quad,"geometry")))}};function T(e){return a(e.material)}x=e([t("esri.views.3d.webgl-engine.lib.DrapedHeatmapRenderer")],x);export{x as DrapedHeatmapRenderer};
5
+ import{_ as e}from"../../../../chunks/tslib.es6.js";import"../../../../core/Logger.js";import"../../../../core/accessorSupport/ensureType.js";import"../../../../core/arrayUtils.js";import"../../../../core/has.js";import"../../../../core/accessorSupport/set.js";import{subclass as t}from"../../../../core/accessorSupport/decorators/subclass.js";import{ViewingMode as r}from"../../../ViewingMode.js";import{createQuadVAO as i}from"./glUtil3D.js";import{SortedRenderGeometryRenderer as s}from"./SortedRenderGeometryRenderer.js";import{isHeatMapDensityMaterial as a}from"../materials/HeatmapDensityMaterial.js";import{HeatmapTechnique as o}from"../shaders/HeatmapTechnique.js";import{TargetType as n,DepthStencilTargetType as h,TextureType as p,PixelFormat as m,SizedPixelFormat as d,PixelType as c,TextureSamplingMode as l,TextureWrapMode as u,ClearBufferBit as g}from"../../../webgl/enums.js";import{FramebufferObject as R}from"../../../webgl/FramebufferObject.js";import{Texture as f}from"../../../webgl/Texture.js";import{vertexCount as w}from"../../../webgl/Util.js";let x=class extends s{constructor(){super(...arguments),this.type="draped-heatmap",this.pointCount=0}initialize(){super.initialize();const e={colorTarget:n.TEXTURE,depthStencilTarget:h.NONE,width:0,height:0},t={target:p.TEXTURE_2D,pixelFormat:m.RED,internalFormat:d.R32F,dataType:c.FLOAT,samplingMode:l.LINEAR,wrapMode:u.CLAMP_TO_EDGE,width:0,height:0};this.densityMap=new R(this.rctx,e,t),this.quad=i(this.rctx);const s={target:p.TEXTURE_2D,pixelFormat:m.RGBA,dataType:c.UNSIGNED_BYTE,samplingMode:l.LINEAR,wrapMode:u.CLAMP_TO_EDGE,width:8,height:1},a=new f(this.rctx,s,new Uint8ClampedArray([34,34,64,0,78,46,88,255,127,56,100,255,175,68,98,255,212,91,84,255,235,126,63,255,238,168,39,255,221,214,34,255]));this.colorRamp=a,this.technique=new o({rctx:this.rctx,viewingMode:r.Local},null),this.heatmapParameters={colorRamp:a,densityMap:this.densityMap.colorTexture,searchRadius:1,pointCount:this.pointCount}}destroy(){this.technique.dispose(),this.densityMap.dispose(),this.quad.dispose(),this.colorRamp.dispose()}get hasHighlights(){return!1}get hasWater(){return!1}get rendersOccluded(){return!1}get _heatmapDensityMaterialRenderers(){return this._sortedMaterialRenderers.filter(y)}add(e){this.pointCount+=e.length,super.add(e)}remove(e){this.pointCount-=e.length,super.remove(e)}render(e,t){const r=this._heatmapDensityMaterialRenderers;if(r.length<1)return;const i=this.rctx.getBoundFramebufferObject(),s=this.rctx.getViewport();this.densityMap.resize(s.width,s.height),this.rctx.bindFramebuffer(this.densityMap),this.rctx.clear(g.COLOR_BUFFER_BIT);let a=!1;const o=r[0].material.parameters.searchRadius;this.heatmapParameters.pointCount=this.pointCount,this.heatmapParameters.searchRadius=o;for(let n=0;n<r.length;n++){const{material:i,materialRenderer:s}=r[n];i.shouldRender(e)&&(a=a||s.render(t.slot,e.pass,t))}this.rctx.bindFramebuffer(i),a&&(this.rctx.bindVAO(this.quad),this.rctx.useProgram(this.technique.program),this.technique.bindPipelineState(this.rctx),this.technique.bindPass(this.heatmapParameters,t),this.rctx.drawArrays(this.technique.primitiveType,0,w(this.quad,"geometry")))}};function y(e){return a(e.material)}x=e([t("esri.views.3d.webgl-engine.lib.DrapedHeatmapRenderer")],x);export{x as DrapedHeatmapRenderer};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../../../chunks/tslib.es6.js";import r from"../../../../core/Accessor.js";import{someMap as t}from"../../../../core/MapUtils.js";import s from"../../../../core/PooledArray.js";import{property as i}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/arrayUtils.js";import"../../../../core/has.js";import"../../../../core/accessorSupport/ensureType.js";import{subclass as a}from"../../../../core/accessorSupport/decorators/subclass.js";import{ChangeSet as n}from"./ChangeSet.js";import{splitRenderGeometryChangeSetByMaterial as d}from"./rendererUtils.js";import{MergedRenderer as h}from"../materials/renderers/MergedRenderer.js";let o=class extends r{constructor(){super(...arguments),this._pending=new l,this._changes=new n,this._materialRenderers=new Map,this._sortedMaterialRenderers=new s,this._hasHighlights=!1,this._hasWater=!1}dispose(){this._changes.prune(),this._materialRenderers.forEach((e=>e.dispose())),this._materialRenderers.clear(),this._sortedMaterialRenderers.clear()}get updating(){return!this._pending.empty||this._changes.updates.length>0}get hasHighlights(){return this._hasHighlights}get hasWater(){return this._hasWater}get rendersOccluded(){return t(this._materialRenderers,(e=>e.rendersOccluded))}get isEmpty(){return!this.updating&&0===this._materialRenderers.size}commitChanges(){if(!this.updating)return!1;this._processAddsRemoves();const e=d(this._changes);let r=!1,s=!1,i=!1;return e.forEach(((e,t)=>{let a=this._materialRenderers.get(t);if(!a&&e.adds.length>0&&(a=new h(this.rctx,this.materialRepository,t),this._materialRenderers.set(t,a),r=!0,s=!0,i=!0),!a)return;const n=s||a.hasHighlights,d=i||a.hasWater;a.modify(e),s=s||n!==a.hasHighlights,i=i||d!==a.hasWater,a.isEmpty&&(this._materialRenderers.delete(t),a.dispose(),r=!0)})),this._changes.clear(),r&&this._updateSortedMaterialRenderers(),s&&(this._hasHighlights=t(this._materialRenderers,(e=>e.hasHighlights))),i&&(this._hasWater=t(this._materialRenderers,(e=>e.hasWater))),this.notifyChange("updating"),!0}add(e){if(0===e.length)return;const r=this._pending.empty;for(const t of e)this._pending.adds.add(t);r&&this.notifyChange("updating")}remove(e){const r=this._pending.empty;for(const t of e)this._pending.adds.has(t)?(this._pending.removed.add(t),this._pending.adds.delete(t)):this._pending.removed.has(t)||this._pending.removes.add(t);r&&!this._pending.empty&&this.notifyChange("updating")}modify(e,r){const t=0===this._changes.updates.length;for(const s of e){const e=this._changes.updates.pushNew();e.renderGeometry=s,e.updateType=r}t&&this._changes.updates.length>0&&this.notifyChange("updating")}updateAnimation(e){let r=!1;return this._sortedMaterialRenderers.forAll((({materialRenderer:t})=>r=t.updateAnimation(e)||r)),r}render(e,r){for(let t=0;t<this._sortedMaterialRenderers.length;t++){const s=this._sortedMaterialRenderers.data[t];s.material.shouldRender(e)&&s.materialRenderer.render(r.slot,e.pass,r)}}_updateSortedMaterialRenderers(){this._sortedMaterialRenderers.clear();let e=0;this._materialRenderers.forEach(((r,t)=>{t.insertOrder=e++,this._sortedMaterialRenderers.push({material:t,materialRenderer:r})})),this._sortedMaterialRenderers.sort(((e,r)=>{const t=r.material.renderPriority-e.material.renderPriority;return 0!==t?t:e.material.insertOrder-r.material.insertOrder}))}_processAddsRemoves(){this._changes.adds.clear(),this._changes.removes.clear(),this._changes.adds.pushArray(Array.from(this._pending.adds)),this._changes.removes.pushArray(Array.from(this._pending.removes));for(let e=0;e<this._changes.updates.length;){const r=this._changes.updates.data[e];this._pending.has(r.renderGeometry)?this._changes.updates.removeUnorderedIndex(e):e++}this._pending.clear()}get test(){return{sortedMaterialRenderers:this._sortedMaterialRenderers}}};e([i()],o.prototype,"rctx",void 0),e([i()],o.prototype,"materialRepository",void 0),e([i()],o.prototype,"updating",null),o=e([a("esri.views.3d.webgl-engine.lib.SortedRenderGeometryRenderer")],o);class l{constructor(){this.adds=new Set,this.removes=new Set,this.removed=new Set}get empty(){return 0===this.adds.size&&0===this.removes.size&&0===this.removed.size}has(e){return this.adds.has(e)||this.removes.has(e)||this.removed.has(e)}clear(){this.adds.clear(),this.removes.clear(),this.removed.clear()}}export{o as SortedRenderGeometryRenderer};
5
+ import{_ as e}from"../../../../chunks/tslib.es6.js";import r from"../../../../core/Accessor.js";import{someMap as t}from"../../../../core/MapUtils.js";import s from"../../../../core/PooledArray.js";import{property as i}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/arrayUtils.js";import"../../../../core/has.js";import"../../../../core/accessorSupport/ensureType.js";import{subclass as a}from"../../../../core/accessorSupport/decorators/subclass.js";import{ChangeSet as n}from"./ChangeSet.js";import{splitRenderGeometryChangeSetByMaterial as d}from"./rendererUtils.js";import{MergedRenderer as h}from"../materials/renderers/MergedRenderer.js";let o=class extends r{constructor(){super(...arguments),this._pending=new l,this._changes=new n,this._materialRenderers=new Map,this._sortedMaterialRenderers=new s,this._hasHighlights=!1,this._hasWater=!1}destroy(){this._changes.prune(),this._materialRenderers.forEach((e=>e.dispose())),this._materialRenderers.clear(),this._sortedMaterialRenderers.clear()}get updating(){return!this._pending.empty||this._changes.updates.length>0}get hasHighlights(){return this._hasHighlights}get hasWater(){return this._hasWater}get rendersOccluded(){return t(this._materialRenderers,(e=>e.rendersOccluded))}get isEmpty(){return!this.updating&&0===this._materialRenderers.size}commitChanges(){if(!this.updating)return!1;this._processAddsRemoves();const e=d(this._changes);let r=!1,s=!1,i=!1;return e.forEach(((e,t)=>{let a=this._materialRenderers.get(t);if(!a&&e.adds.length>0&&(a=new h(this.rctx,this.materialRepository,t),this._materialRenderers.set(t,a),r=!0,s=!0,i=!0),!a)return;const n=s||a.hasHighlights,d=i||a.hasWater;a.modify(e),s=s||n!==a.hasHighlights,i=i||d!==a.hasWater,a.isEmpty&&(this._materialRenderers.delete(t),a.dispose(),r=!0)})),this._changes.clear(),r&&this._updateSortedMaterialRenderers(),s&&(this._hasHighlights=t(this._materialRenderers,(e=>e.hasHighlights))),i&&(this._hasWater=t(this._materialRenderers,(e=>e.hasWater))),this.notifyChange("updating"),!0}add(e){if(0===e.length)return;const r=this._pending.empty;for(const t of e)this._pending.adds.add(t);r&&this.notifyChange("updating")}remove(e){const r=this._pending.empty;for(const t of e)this._pending.adds.has(t)?(this._pending.removed.add(t),this._pending.adds.delete(t)):this._pending.removed.has(t)||this._pending.removes.add(t);r&&!this._pending.empty&&this.notifyChange("updating")}modify(e,r){const t=0===this._changes.updates.length;for(const s of e){const e=this._changes.updates.pushNew();e.renderGeometry=s,e.updateType=r}t&&this._changes.updates.length>0&&this.notifyChange("updating")}updateAnimation(e){let r=!1;return this._sortedMaterialRenderers.forAll((({materialRenderer:t})=>r=t.updateAnimation(e)||r)),r}render(e,r){for(let t=0;t<this._sortedMaterialRenderers.length;t++){const s=this._sortedMaterialRenderers.data[t];s.material.shouldRender(e)&&s.materialRenderer.render(r.slot,e.pass,r)}}_updateSortedMaterialRenderers(){this._sortedMaterialRenderers.clear();let e=0;this._materialRenderers.forEach(((r,t)=>{t.insertOrder=e++,this._sortedMaterialRenderers.push({material:t,materialRenderer:r})})),this._sortedMaterialRenderers.sort(((e,r)=>{const t=r.material.renderPriority-e.material.renderPriority;return 0!==t?t:e.material.insertOrder-r.material.insertOrder}))}_processAddsRemoves(){this._changes.adds.clear(),this._changes.removes.clear(),this._changes.adds.pushArray(Array.from(this._pending.adds)),this._changes.removes.pushArray(Array.from(this._pending.removes));for(let e=0;e<this._changes.updates.length;){const r=this._changes.updates.data[e];this._pending.has(r.renderGeometry)?this._changes.updates.removeUnorderedIndex(e):e++}this._pending.clear()}get test(){return{sortedMaterialRenderers:this._sortedMaterialRenderers}}};e([i()],o.prototype,"rctx",void 0),e([i()],o.prototype,"materialRepository",void 0),e([i()],o.prototype,"updating",null),o=e([a("esri.views.3d.webgl-engine.lib.SortedRenderGeometryRenderer")],o);class l{constructor(){this.adds=new Set,this.removes=new Set,this.removed=new Set}get empty(){return 0===this.adds.size&&0===this.removes.size&&0===this.removed.size}has(e){return this.adds.has(e)||this.removes.has(e)||this.removed.has(e)}clear(){this.adds.clear(),this.removes.clear(),this.removed.clear()}}export{o as SortedRenderGeometryRenderer};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{newLayout as e}from"../../support/buffer/InterleavedLayout.js";import{ShaderTechniqueConfiguration as t}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import r from"../lib/GLMaterial.js";import{Material as s,DefaultMaterialParameters as i}from"../lib/Material.js";import{RenderPass as n}from"../lib/RenderPass.js";import{RenderSlot as a}from"../lib/RenderSlot.js";import{VertexAttribute as o}from"../lib/VertexAttribute.js";import{writePosition as u}from"./internal/bufferWriterUtils.js";import{HeatmapDensityTechnique as c}from"../shaders/HeatmapDensityTechnique.js";class l extends s{constructor(e){super(e,m)}requiresSlot(e,t){return e===a.DRAPED_MATERIAL&&t===n.MATERIAL}getTechniqueConfig(){return new t}createGLMaterial(e){return new f(e)}intersect(){}createBufferWriter(){return new p}}class f extends r{constructor(e){super(e)}beginSlot(e){return this.updateParameters(e)}updateParameters(e){return this.ensureTechnique(c,e)}bind(e,t){t.bindPass(this._material.parameters,e)}}const m={searchRadius:128,...i};class p{constructor(){this.vertexBufferLayout=d}allocate(e){return this.vertexBufferLayout.createBuffer(e)}elementCount(e){return e.indices.get(o.POSITION).length*h}write(e,t,r,s){u(t.indices.get(o.POSITION),t.vertexAttributes.get(o.POSITION).data,e.transformation,r.position,s,h);const i=t.indices.get(o.POSITION).length,n=r.uv0;let a=s;for(let o=0;o<i;++o)n.setValues(a++,-1,-1),n.setValues(a++,1,-1),n.setValues(a++,1,1),n.setValues(a++,1,1),n.setValues(a++,-1,1),n.setValues(a++,-1,-1)}}const d=e().vec3f(o.POSITION).vec2f(o.UV0),h=6;function I(e){return e instanceof l}export{l as HeatmapDensityMaterial,I as isHeatMapDensityMaterial};
5
+ import{newLayout as e}from"../../support/buffer/InterleavedLayout.js";import t from"../lib/GLMaterial.js";import{Material as r,DefaultMaterialParameters as i}from"../lib/Material.js";import{RenderPass as s}from"../lib/RenderPass.js";import{RenderSlot as n}from"../lib/RenderSlot.js";import{VertexAttribute as u}from"../lib/VertexAttribute.js";import{writePosition as a,writeBufferFloat as o}from"./internal/bufferWriterUtils.js";import{HeatmapDensityTechniqueConfiguration as c,HeatmapDensityTechnique as l}from"../shaders/HeatmapDensityTechnique.js";class f extends r{constructor(e){super(e,T),this._techniqueConfig=new c}requiresSlot(e,t){return e===n.DRAPED_MATERIAL&&t===s.MATERIAL}getTechniqueConfig(){return this._techniqueConfig.isAttributeDriven=this.parameters.isAttributeDriven,this._techniqueConfig}createGLMaterial(e){return new m(e)}intersect(){}createBufferWriter(){return new h(this.parameters.isAttributeDriven?A:p)}}class m extends t{constructor(e){super(e)}beginSlot(e){return this.updateParameters(e)}updateParameters(e){return this.ensureTechnique(l,e)}bind(e,t){t.bindPass(this._material.parameters,e)}}const T={searchRadius:128,isAttributeDriven:!1,...i};class h{constructor(e){this.vertexBufferLayout=e}allocate(e){return this.vertexBufferLayout.createBuffer(e)}elementCount(e){return e.indices.get(u.POSITION).length*b}write(e,t,r,i){a(t.indices.get(u.POSITION),t.vertexAttributes.get(u.POSITION).data,e.transformation,r.position,i,b);const s=t.indices.get(u.POSITION).length,n=r.uv0;let c=i;for(let u=0;u<s;++u)n.setValues(c++,-1,-1),n.setValues(c++,1,-1),n.setValues(c++,1,1),n.setValues(c++,1,1),n.setValues(c++,-1,1),n.setValues(c++,-1,-1);const l="featureAttribute"in r?r.featureAttribute:null;l&&o(t.indices.get(u.FEATUREATTRIBUTE),t.vertexAttributes.get(u.FEATUREATTRIBUTE).data,l,i,b)}}const p=e().vec3f(u.POSITION).vec2f(u.UV0),A=p.clone().f32(u.FEATUREATTRIBUTE),b=6;function d(e){return e instanceof f}export{f as HeatmapDensityMaterial,d as isHeatMapDensityMaterial};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{p as t}from"../../../../../chunks/mat4.js";import{BufferViewVec4f as e,BufferViewVec4u8 as f,BufferViewVec2f as o,BufferViewVec3f as r}from"../../../../../geometry/support/buffer/BufferView.js";import{assert as s}from"../../lib/Util.js";import{VertexAttribute as n}from"../../lib/VertexAttribute.js";function i(t,e,f,o){const r=f.typedBuffer,s=f.typedBufferStride,n=t.length;o*=s;for(let i=0;i<n;++i){const f=2*t[i];r[o]=e[f],r[o+1]=e[f+1],o+=s}}function c(t,e,f,o,r){const s=f.typedBuffer,n=f.typedBufferStride,i=t.length;if(o*=n,null==r||1===r)for(let c=0;c<i;++c){const f=3*t[c];s[o]=e[f],s[o+1]=e[f+1],s[o+2]=e[f+2],o+=n}else for(let c=0;c<i;++c){const f=3*t[c];for(let t=0;t<r;++t)s[o]=e[f],s[o+1]=e[f+1],s[o+2]=e[f+2],o+=n}}function l(t,e,f,o,r=1){const s=f.typedBuffer,n=f.typedBufferStride,i=t.length;if(o*=n,1===r)for(let c=0;c<i;++c){const f=4*t[c];s[o]=e[f],s[o+1]=e[f+1],s[o+2]=e[f+2],s[o+3]=e[f+3],o+=n}else for(let c=0;c<i;++c){const f=4*t[c];for(let t=0;t<r;++t)s[o]=e[f],s[o+1]=e[f+1],s[o+2]=e[f+2],s[o+3]=e[f+3],o+=n}}function d(t,e,f,o){const r=f.typedBuffer,s=f.typedBufferStride,n=t.length;o*=s;for(let i=0;i<n;++i){const f=9*t[i];for(let t=0;t<9;++t)r[o+t]=e[f+t];o+=s}}function u(t,e,f,o){const r=f.typedBuffer,s=f.typedBufferStride,n=t.length;o*=s;for(let i=0;i<n;++i){const f=16*t[i];for(let t=0;t<16;++t)r[o+t]=e[f+t];o+=s}}function a(t,e,f,o,r,s=1){if(!f)return void c(t,e,o,r,s);const n=o.typedBuffer,i=o.typedBufferStride,l=t.length,d=f[0],u=f[1],a=f[2],p=f[4],B=f[5],y=f[6],g=f[8],h=f[9],b=f[10],m=f[12],S=f[13],z=f[14];if(r*=i,1===s)for(let c=0;c<l;++c){const f=3*t[c],o=e[f],s=e[f+1],l=e[f+2];n[r]=d*o+p*s+g*l+m,n[r+1]=u*o+B*s+h*l+S,n[r+2]=a*o+y*s+b*l+z,r+=i}else for(let c=0;c<l;++c){const f=3*t[c],o=e[f],l=e[f+1],O=e[f+2],k=d*o+p*l+g*O+m,F=u*o+B*l+h*O+S,M=a*o+y*l+b*O+z;for(let t=0;t<s;++t)n[r]=k,n[r+1]=F,n[r+2]=M,r+=i}}function p(e,f,o,r,s,n=1){if(!o)return void c(e,f,r,s,n);const i=o,l=r.typedBuffer,d=r.typedBufferStride,u=e.length,a=i[0],p=i[1],B=i[2],y=i[4],g=i[5],h=i[6],b=i[8],m=i[9],S=i[10],z=!t(i),O=1e-6,k=1-O;if(s*=d,1===n)for(let t=0;t<u;++t){const o=3*e[t],r=f[o],n=f[o+1],i=f[o+2];let c=a*r+y*n+b*i,u=p*r+g*n+m*i,F=B*r+h*n+S*i;if(z){const t=c*c+u*u+F*F;if(t<k&&t>O){const e=1/Math.sqrt(t);c*=e,u*=e,F*=e}}l[s+0]=c,l[s+1]=u,l[s+2]=F,s+=d}else for(let t=0;t<u;++t){const o=3*e[t],r=f[o],i=f[o+1],c=f[o+2];let u=a*r+y*i+b*c,F=p*r+g*i+m*c,M=B*r+h*i+S*c;if(z){const t=u*u+F*F+M*M;if(t<k&&t>O){const e=1/Math.sqrt(t);u*=e,F*=e,M*=e}}for(let t=0;t<n;++t)l[s+0]=u,l[s+1]=F,l[s+2]=M,s+=d}}function B(e,f,o,r,s,n=1){if(!o)return void l(e,f,r,s,n);const i=o,c=r.typedBuffer,d=r.typedBufferStride,u=e.length,a=i[0],p=i[1],B=i[2],y=i[4],g=i[5],h=i[6],b=i[8],m=i[9],S=i[10],z=!t(i),O=1e-6,k=1-O;if(s*=d,1===n)for(let t=0;t<u;++t){const o=4*e[t],r=f[o],n=f[o+1],i=f[o+2],l=f[o+3];let u=a*r+y*n+b*i,F=p*r+g*n+m*i,M=B*r+h*n+S*i;if(z){const t=u*u+F*F+M*M;if(t<k&&t>O){const e=1/Math.sqrt(t);u*=e,F*=e,M*=e}}c[s+0]=u,c[s+1]=F,c[s+2]=M,c[s+3]=l,s+=d}else for(let t=0;t<u;++t){const o=4*e[t],r=f[o],i=f[o+1],l=f[o+2],u=f[o+3];let F=a*r+y*i+b*l,M=p*r+g*i+m*l,N=B*r+h*i+S*l;if(z){const t=F*F+M*M+N*N;if(t<k&&t>O){const e=1/Math.sqrt(t);F*=e,M*=e,N*=e}}for(let t=0;t<n;++t)c[s+0]=F,c[s+1]=M,c[s+2]=N,c[s+3]=u,s+=d}}function y(t,e,f,o,r,s=1){const n=o.typedBuffer,i=o.typedBufferStride,c=t.length;if(r*=i,1===s){if(4===f)for(let l=0;l<c;++l){const f=4*t[l];n[r]=e[f],n[r+1]=e[f+1],n[r+2]=e[f+2],n[r+3]=e[f+3],r+=i}else if(3===f)for(let l=0;l<c;++l){const f=3*t[l];n[r]=e[f],n[r+1]=e[f+1],n[r+2]=e[f+2],n[r+3]=255,r+=i}}else if(4===f)for(let l=0;l<c;++l){const f=4*t[l];for(let t=0;t<s;++t)n[r]=e[f],n[r+1]=e[f+1],n[r+2]=e[f+2],n[r+3]=e[f+3],r+=i}else if(3===f)for(let l=0;l<c;++l){const f=3*t[l];for(let t=0;t<s;++t)n[r]=e[f],n[r+1]=e[f+1],n[r+2]=e[f+2],n[r+3]=255,r+=i}}function g(t,c,l,d,u,g){for(const h of c.fieldNames){const c=t.vertexAttributes.get(h),b=t.indices.get(h);if(c&&b)switch(h){case n.POSITION:{s(3===c.size);const t=u.getField(h,r);t&&a(b,c.data,l,t,g);break}case n.NORMAL:{s(3===c.size);const t=u.getField(h,r);t&&p(b,c.data,d,t,g);break}case n.UV0:{s(2===c.size);const t=u.getField(h,o);t&&i(b,c.data,t,g);break}case n.COLOR:{s(3===c.size||4===c.size);const t=u.getField(h,f);t&&y(b,c.data,c.size,t,g);break}case n.SYMBOLCOLOR:{s(3===c.size||4===c.size);const t=u.getField(h,f);t&&y(b,c.data,c.size,t,g);break}case n.TANGENT:{s(4===c.size);const t=u.getField(h,e);t&&B(b,c.data,d,t,g);break}}}}export{d as writeBufferMat3f,u as writeBufferMat4f,i as writeBufferVec2,c as writeBufferVec3,l as writeBufferVec4,y as writeColor,g as writeDefaultAttributes,p as writeNormal,a as writePosition,B as writeTangent};
5
+ import{p as t}from"../../../../../chunks/mat4.js";import{BufferViewVec4f as e,BufferViewVec4u8 as f,BufferViewVec2f as o,BufferViewVec3f as r}from"../../../../../geometry/support/buffer/BufferView.js";import{assert as s}from"../../lib/Util.js";import{VertexAttribute as n}from"../../lib/VertexAttribute.js";function i(t,e,f,o,r=1){const s=f.typedBuffer,n=f.typedBufferStride,i=t.length;if(o*=n,1===r)for(let c=0;c<i;++c)s[o]=e[t[c]],o+=n;else for(let c=0;c<i;++c){const f=e[t[c]];for(let t=0;t<r;t++)s[o]=f,o+=n}}function c(t,e,f,o){const r=f.typedBuffer,s=f.typedBufferStride,n=t.length;o*=s;for(let i=0;i<n;++i){const f=2*t[i];r[o]=e[f],r[o+1]=e[f+1],o+=s}}function l(t,e,f,o,r){const s=f.typedBuffer,n=f.typedBufferStride,i=t.length;if(o*=n,null==r||1===r)for(let c=0;c<i;++c){const f=3*t[c];s[o]=e[f],s[o+1]=e[f+1],s[o+2]=e[f+2],o+=n}else for(let c=0;c<i;++c){const f=3*t[c];for(let t=0;t<r;++t)s[o]=e[f],s[o+1]=e[f+1],s[o+2]=e[f+2],o+=n}}function d(t,e,f,o,r=1){const s=f.typedBuffer,n=f.typedBufferStride,i=t.length;if(o*=n,1===r)for(let c=0;c<i;++c){const f=4*t[c];s[o]=e[f],s[o+1]=e[f+1],s[o+2]=e[f+2],s[o+3]=e[f+3],o+=n}else for(let c=0;c<i;++c){const f=4*t[c];for(let t=0;t<r;++t)s[o]=e[f],s[o+1]=e[f+1],s[o+2]=e[f+2],s[o+3]=e[f+3],o+=n}}function u(t,e,f,o){const r=f.typedBuffer,s=f.typedBufferStride,n=t.length;o*=s;for(let i=0;i<n;++i){const f=9*t[i];for(let t=0;t<9;++t)r[o+t]=e[f+t];o+=s}}function a(t,e,f,o){const r=f.typedBuffer,s=f.typedBufferStride,n=t.length;o*=s;for(let i=0;i<n;++i){const f=16*t[i];for(let t=0;t<16;++t)r[o+t]=e[f+t];o+=s}}function p(t,e,f,o,r,s=1){if(!f)return void l(t,e,o,r,s);const n=o.typedBuffer,i=o.typedBufferStride,c=t.length,d=f[0],u=f[1],a=f[2],p=f[4],B=f[5],y=f[6],g=f[8],h=f[9],S=f[10],b=f[12],m=f[13],z=f[14];if(r*=i,1===s)for(let l=0;l<c;++l){const f=3*t[l],o=e[f],s=e[f+1],c=e[f+2];n[r]=d*o+p*s+g*c+b,n[r+1]=u*o+B*s+h*c+m,n[r+2]=a*o+y*s+S*c+z,r+=i}else for(let l=0;l<c;++l){const f=3*t[l],o=e[f],c=e[f+1],O=e[f+2],k=d*o+p*c+g*O+b,F=u*o+B*c+h*O+m,M=a*o+y*c+S*O+z;for(let t=0;t<s;++t)n[r]=k,n[r+1]=F,n[r+2]=M,r+=i}}function B(e,f,o,r,s,n=1){if(!o)return void l(e,f,r,s,n);const i=o,c=r.typedBuffer,d=r.typedBufferStride,u=e.length,a=i[0],p=i[1],B=i[2],y=i[4],g=i[5],h=i[6],S=i[8],b=i[9],m=i[10],z=!t(i),O=1e-6,k=1-O;if(s*=d,1===n)for(let t=0;t<u;++t){const o=3*e[t],r=f[o],n=f[o+1],i=f[o+2];let l=a*r+y*n+S*i,u=p*r+g*n+b*i,F=B*r+h*n+m*i;if(z){const t=l*l+u*u+F*F;if(t<k&&t>O){const e=1/Math.sqrt(t);l*=e,u*=e,F*=e}}c[s+0]=l,c[s+1]=u,c[s+2]=F,s+=d}else for(let t=0;t<u;++t){const o=3*e[t],r=f[o],i=f[o+1],l=f[o+2];let u=a*r+y*i+S*l,F=p*r+g*i+b*l,M=B*r+h*i+m*l;if(z){const t=u*u+F*F+M*M;if(t<k&&t>O){const e=1/Math.sqrt(t);u*=e,F*=e,M*=e}}for(let t=0;t<n;++t)c[s+0]=u,c[s+1]=F,c[s+2]=M,s+=d}}function y(e,f,o,r,s,n=1){if(!o)return void d(e,f,r,s,n);const i=o,c=r.typedBuffer,l=r.typedBufferStride,u=e.length,a=i[0],p=i[1],B=i[2],y=i[4],g=i[5],h=i[6],S=i[8],b=i[9],m=i[10],z=!t(i),O=1e-6,k=1-O;if(s*=l,1===n)for(let t=0;t<u;++t){const o=4*e[t],r=f[o],n=f[o+1],i=f[o+2],d=f[o+3];let u=a*r+y*n+S*i,F=p*r+g*n+b*i,M=B*r+h*n+m*i;if(z){const t=u*u+F*F+M*M;if(t<k&&t>O){const e=1/Math.sqrt(t);u*=e,F*=e,M*=e}}c[s+0]=u,c[s+1]=F,c[s+2]=M,c[s+3]=d,s+=l}else for(let t=0;t<u;++t){const o=4*e[t],r=f[o],i=f[o+1],d=f[o+2],u=f[o+3];let F=a*r+y*i+S*d,M=p*r+g*i+b*d,N=B*r+h*i+m*d;if(z){const t=F*F+M*M+N*N;if(t<k&&t>O){const e=1/Math.sqrt(t);F*=e,M*=e,N*=e}}for(let t=0;t<n;++t)c[s+0]=F,c[s+1]=M,c[s+2]=N,c[s+3]=u,s+=l}}function g(t,e,f,o,r,s=1){const n=o.typedBuffer,i=o.typedBufferStride,c=t.length;if(r*=i,1===s){if(4===f)for(let l=0;l<c;++l){const f=4*t[l];n[r]=e[f],n[r+1]=e[f+1],n[r+2]=e[f+2],n[r+3]=e[f+3],r+=i}else if(3===f)for(let l=0;l<c;++l){const f=3*t[l];n[r]=e[f],n[r+1]=e[f+1],n[r+2]=e[f+2],n[r+3]=255,r+=i}}else if(4===f)for(let l=0;l<c;++l){const f=4*t[l];for(let t=0;t<s;++t)n[r]=e[f],n[r+1]=e[f+1],n[r+2]=e[f+2],n[r+3]=e[f+3],r+=i}else if(3===f)for(let l=0;l<c;++l){const f=3*t[l];for(let t=0;t<s;++t)n[r]=e[f],n[r+1]=e[f+1],n[r+2]=e[f+2],n[r+3]=255,r+=i}}function h(t,i,l,d,u,a){for(const h of i.fieldNames){const i=t.vertexAttributes.get(h),S=t.indices.get(h);if(i&&S)switch(h){case n.POSITION:{s(3===i.size);const t=u.getField(h,r);t&&p(S,i.data,l,t,a);break}case n.NORMAL:{s(3===i.size);const t=u.getField(h,r);t&&B(S,i.data,d,t,a);break}case n.UV0:{s(2===i.size);const t=u.getField(h,o);t&&c(S,i.data,t,a);break}case n.COLOR:{s(3===i.size||4===i.size);const t=u.getField(h,f);t&&g(S,i.data,i.size,t,a);break}case n.SYMBOLCOLOR:{s(3===i.size||4===i.size);const t=u.getField(h,f);t&&g(S,i.data,i.size,t,a);break}case n.TANGENT:{s(4===i.size);const t=u.getField(h,e);t&&y(S,i.data,d,t,a);break}}}}export{i as writeBufferFloat,u as writeBufferMat3f,a as writeBufferMat4f,c as writeBufferVec2,l as writeBufferVec3,d as writeBufferVec4,g as writeColor,h as writeDefaultAttributes,B as writeNormal,p as writePosition,y as writeTangent};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{bindProjectionMatrix as r,bindView as e}from"../core/shaderLibrary/util/View.glsl.js";import{ReloadableShaderModule as i}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as t}from"../core/shaderTechnique/ShaderTechnique.js";import{Default3D as a}from"../lib/DefaultVertexAttributeLocations.js";import{Program as o}from"../lib/Program.js";import{H as s}from"../../../../chunks/HeatmapDensity.glsl.js";import{BlendOperation as l,BlendFactor as m}from"../../../webgl/enums.js";import{makePipelineState as n,simpleBlendingParams as p,defaultColorWriteParams as d}from"../../../webgl/renderState.js";class c extends t{initializeProgram(r){const e=c.shader.get().build();return new o(r.rctx,e,a)}initializePipeline(){return n({blending:p(m.ONE,m.ONE,l.ADD),colorWrite:d,depthTest:null,depthWrite:null})}bindPass(e,i){r(this.program,i.camera.projectionMatrix),this.program.setUniform1f("radius",e.searchRadius*i.camera.pixelRatio/i.camera.fullViewport[2])}bindDraw(r){e(this.program,r)}}c.shader=new i(s,(()=>import("./HeatmapDensity.glsl.js")));export{c as HeatmapDensityTechnique};
5
+ import{_ as r}from"../../../../chunks/tslib.es6.js";import{bindProjectionMatrix as e,bindView as i}from"../core/shaderLibrary/util/View.glsl.js";import{ReloadableShaderModule as t}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as s}from"../core/shaderTechnique/ShaderTechnique.js";import{parameter as o,ShaderTechniqueConfiguration as a}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{Default3D as n}from"../lib/DefaultVertexAttributeLocations.js";import{Program as m}from"../lib/Program.js";import{H as l}from"../../../../chunks/HeatmapDensity.glsl.js";import{BlendOperation as u,BlendFactor as p}from"../../../webgl/enums.js";import{makePipelineState as c,simpleBlendingParams as h,defaultColorWriteParams as d}from"../../../webgl/renderState.js";class b extends s{initializeProgram(r){const e=b.shader.get().build({isAttributeDriven:this.configuration.isAttributeDriven});return new m(r.rctx,e,n)}initializePipeline(){return c({blending:h(p.ONE,p.ONE,u.ADD),colorWrite:d,depthTest:null,depthWrite:null})}bindPass(r,i){e(this.program,i.camera.projectionMatrix),this.program.setUniform1f("radius",r.searchRadius*i.camera.pixelRatio/i.camera.fullViewport[2])}bindDraw(r){i(this.program,r)}}b.shader=new t(l,(()=>import("./HeatmapDensity.glsl.js")));class f extends a{constructor(){super(...arguments),this.isAttributeDriven=!1}}r([o()],f.prototype,"isAttributeDriven",void 0);export{b as HeatmapDensityTechnique,f as HeatmapDensityTechniqueConfiguration};
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[2785],{43697:(t,e,r)=>{function n(t,e,r,n){var s,i=arguments.length,o=i<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(t,e,r,n);else for(var a=t.length-1;a>=0;a--)(s=t[a])&&(o=(i<3?s(o):i>3?s(e,r,o):s(e,r))||o);return i>3&&o&&Object.defineProperty(e,r,o),o}r.d(e,{_:()=>n})},15923:(t,e,r)=>{r.d(e,{Z:()=>j});var n=r(60235),s=r(92604),i=r(67723),o=r(97831),a=r(7628),l=(r(80442),r(22974)),c=r(71143),u=r(31263),h=r(58971),f=r(44550),d=r(39020);class p{constructor(t,e,r){this.properties=t,this.propertyName=e,this.metadata=r,this._observers=null,this._accessed=null,this._handles=null,this.flags=f.v.Dirty|(r.nonNullable?f.v.NonNullable:0)|(r.hasOwnProperty("value")?f.v.HasDefaultValue:0)|(void 0===r.get?f.v.DepTrackingInitialized:0)|(void 0===r.dependsOn?f.v.AutoTracked:0)}destroy(){this._accessed=null,this._observers=null,this._clearObservationHandles()}getComputed(){(0,h.it)(this);const t=this.properties.store,e=this.propertyName,r=this.flags,n=t.get(e);if(r&f.v.Computing)return n;if(~r&f.v.Dirty&&t.has(e))return n;this.flags|=f.v.Computing;const s=this.properties.host;let i;r&f.v.AutoTracked?i=(0,h.LJ)(this,this.metadata.get,s):((0,h.GF)(s,this),i=this.metadata.get.call(s)),t.set(e,i,u.s3.COMPUTED);const o=t.get(e);return o===n?this.flags&=~f.v.Dirty:(0,h.gb)(this.commit,this),this.flags&=~f.v.Computing,o}onObservableAccessed(t){t!==this&&(null===this._accessed&&(this._accessed=[]),this._accessed.includes(t)||this._accessed.push(t))}onTrackingEnd(){this._clearObservationHandles(),this.flags|=f.v.DepTrackingInitialized;const t=this._accessed;if(null===t)return;let e=this._handles;null===e&&(e=this._handles=[]);for(let r=0;r<t.length;++r)e.push(t[r].observe(this));t.length=0}observe(t){return null===this._observers&&(this._observers=[]),this._observers.includes(t)||this._observers.push(t),new d.X(this._observers,t)}notifyChange(){this.onInvalidated(),this.onCommitted()}invalidate(){this.onInvalidated()}onInvalidated(){~this.flags&f.v.Overriden&&(this.flags|=f.v.Dirty);const t=this._observers;if(null!==t)for(let e=0;e<t.length;++e)t[e].onInvalidated()}commit(){this.flags&=~f.v.Dirty,this.onCommitted()}onCommitted(){if(null===this._observers)return;const t=this._observers.slice();for(let e=0;e<t.length;++e)t[e].onCommitted()}_clearObservationHandles(){const t=this._handles;if(null!==t){for(let e=0;e<t.length;++e)t[e].remove();t.length=0}}}class g{constructor(){this._values=new Map,this.multipleOriginsSupported=!1}clone(t){const e=new g;return this._values.forEach(((r,n)=>{t&&t.has(n)||e.set(n,(0,l.d9)(r))})),e}get(t){return this._values.get(t)}originOf(){return u.s3.USER}keys(){return[...this._values.keys()]}set(t,e){this._values.set(t,e)}delete(t){this._values.delete(t)}has(t){return this._values.has(t)}forEach(t){this._values.forEach(t)}}var y=r(1153);function v(t,e,r){return void 0!==t}function _(t,e,r,n){return!(void 0===t||null==r&&t.flags&f.v.NonNullable&&(n.lifecycle,o.F.INITIALIZING,1))}function m(t){return t&&"function"==typeof t.destroy}s.Z.getLogger("esri.core.accessorSupport.Properties");class w{constructor(t){this.host=t,this.properties=new Map,this.ctorArgs=null,this.destroyed=!1,this.lifecycle=o.F.INITIALIZING,this.store=new g,this._origin=u.s3.USER;const e=this.host.constructor.__accessorMetadata__,r=e.properties;for(const t in r){const e=new p(this,t,r[t]);this.properties.set(t,e)}this.metadatas=r,this._autoDestroy=e.autoDestroy}initialize(){this.lifecycle=o.F.CONSTRUCTING}constructed(){this.lifecycle=o.F.CONSTRUCTED}destroy(){if(this.destroyed=!0,this._autoDestroy)for(const[t,e]of this.properties){const r=this.internalGet(t);r&&m(r)&&(r.destroy(),~e.flags&f.v.NonNullable&&this._internalSet(e,null)),e.destroy()}else for(const[t,e]of this.properties)e.destroy()}get initialized(){return this.lifecycle!==o.F.INITIALIZING}get(t){const e=this.properties.get(t);if(e.metadata.get)return e.getComputed();(0,h.it)(e);const r=this.store;return r.has(t)?r.get(t):e.metadata.value}originOf(t){const e=this.store.originOf(t);if(void 0===e){const e=this.properties.get(t);if(void 0!==e&&e.flags&f.v.HasDefaultValue)return"defaults"}return(0,u.x3)(e)}has(t){return!!this.properties.has(t)&&this.store.has(t)}keys(){return[...this.properties.keys()]}internalGet(t){const e=this.properties.get(t);if(v(e))return this.store.has(t)?this.store.get(t):e.metadata.value}internalSet(t,e){const r=this.properties.get(t);v(r)&&this._internalSet(r,e)}getDependsInfo(t,e,r){const n=this.properties.get(e);if(!v(n))return"";const s=new Set,i=(0,h.LJ)({onObservableAccessed:t=>s.add(t),onTrackingEnd:()=>{}},(()=>{var e;return null==(e=n.metadata.get)?void 0:e.call(t)}));let o=`${r}${t.declaredClass.split(".").pop()}.${e}: ${i}\n`;if(0===s.size)return o;r+=" ";for(const t of s){if(!(t instanceof p))continue;const e=t.properties.host,n=t.propertyName,s=(0,y.vw)(e);o+=s?s.getDependsInfo(e,n,r):`${r}${n}: undefined\n`}return o}setAtOrigin(t,e,r){const n=this.properties.get(t);if(v(n))return this._setAtOrigin(n,e,r)}isOverridden(t){const e=this.properties.get(t);return void 0!==e&&!!(e.flags&f.v.Overriden)}clearOverride(t){const e=this.properties.get(t);void 0!==e&&e.flags&f.v.Overriden&&(e.flags&=~f.v.Overriden,e.notifyChange())}override(t,e){const r=this.properties.get(t);if(!_(r,0,e,this))return;const n=r.metadata.cast;if(n){const t=this._cast(n,e),{valid:r,value:s}=t;if(b.release(t),!r)return;e=s}r.flags|=f.v.Overriden,this._internalSet(r,e)}set(t,e){const r=this.properties.get(t);if(!_(r,0,e,this))return;const n=r.metadata.cast;if(n){const t=this._cast(n,e),{valid:r,value:s}=t;if(b.release(t),!r)return;e=s}const s=r.metadata.set;s?s.call(this.host,e):this._internalSet(r,e)}setDefaultOrigin(t){this._origin=(0,u.M9)(t)}getDefaultOrigin(){return(0,u.x3)(this._origin)}notifyChange(t){const e=this.properties.get(t);void 0!==e&&e.notifyChange()}invalidate(t){const e=this.properties.get(t);void 0!==e&&e.invalidate()}commit(t){const e=this.properties.get(t);void 0!==e&&e.commit()}_internalSet(t,e){const r=this.lifecycle!==o.F.INITIALIZING?this._origin:u.s3.DEFAULTS;this._setAtOrigin(t,e,r)}_setAtOrigin(t,e,r){const n=this.store,s=t.propertyName;n.has(s,r)&&(0,l.fS)(e,n.get(s))&&~t.flags&f.v.Overriden&&r===n.originOf(s)||(t.invalidate(),n.set(s,e,r),t.commit(),(0,h.mS)(this.host,t))}_cast(t,e){const r=b.acquire();return r.valid=!0,r.value=e,t&&(r.value=t.call(this.host,e,r)),r}}const b=new c.Z(class{constructor(){this.value=null,this.valid=!0}acquire(){this.valid=!0}release(){this.value=null}});var A=r(37697),O=r(26258),S=r(5600),T=r(52011);function E(t){if(null==t)return{value:t};if(Array.isArray(t))return{type:[t[0]],value:null};switch(typeof t){case"object":return t.constructor&&t.constructor.__accessorMetadata__||t instanceof Date?{type:t.constructor,value:t}:t;case"boolean":return{type:Boolean,value:t};case"string":return{type:String,value:t};case"number":return{type:Number,value:t};case"function":return{type:t,value:null};default:return}}class j{constructor(...t){if(this.constructor===j)throw new Error("[accessor] cannot instantiate Accessor. This can be fixed by creating a subclass of Accessor");Object.defineProperty(this,"__accessor__",{enumerable:!1,value:new w(this)}),t.length>0&&this.normalizeCtorArgs&&(this.__accessor__.ctorArgs=this.normalizeCtorArgs.apply(this,t))}static createSubclass(t={}){if(Array.isArray(t))throw new Error("Multi-inheritance unsupported since 4.16");const{properties:e,declaredClass:r,constructor:n}=t;delete t.declaredClass,delete t.properties,delete t.constructor;const s=this;class i extends s{constructor(...t){super(...t),this.inherited=null,n&&n.apply(this,t)}}(0,a.JT)(i.prototype);for(const e in t){const r=t[e];i.prototype[e]="function"==typeof r?function(...t){const n=this.inherited;let i;this.inherited=function(...t){if(s.prototype[e])return s.prototype[e].apply(this,t)};try{i=r.apply(this,t)}catch(t){throw this.inherited=n,t}return this.inherited=n,i}:t[e]}for(const t in e){const r=E(e[t]);(0,S.Cb)(r)(i.prototype,t)}return(0,T.j)(r)(i)}postscript(t){const e=this.__accessor__,r=e.ctorArgs||t;e.initialize(),r&&(this.set(r),e.ctorArgs=null),e.constructed(),this.initialize()}initialize(){}destroy(){this.destroyed||((0,O.BT)(this),this.__accessor__.destroy())}get initialized(){return this.__accessor__&&this.__accessor__.initialized||!1}get constructed(){return this.__accessor__&&this.__accessor__.lifecycle===o.F.CONSTRUCTED||!1}get destroyed(){return this.__accessor__&&this.__accessor__.destroyed||!1}commitProperty(t){this.get(t)}get(t){return(0,i.U2)(this,t)}hasOwnProperty(t){return this.__accessor__?this.__accessor__.has(t):Object.prototype.hasOwnProperty.call(this,t)}isInstanceOf(t){return(0,n.XV)(s.Z.getLogger(this.declaredClass),"isInstanceOf",{replacement:"Use instanceof directly",version:"4.16"}),this instanceof t}keys(){return this.__accessor__?this.__accessor__.keys():[]}set(t,e){return(0,A.t)(this,t,e),this}watch(t,e,r){return(0,O.YP)(this,t,e,r)}_clearOverride(t){return this.__accessor__.clearOverride(t)}_override(t,e){return this.__accessor__.override(t,e)}_isOverridden(t){return this.__accessor__.isOverridden(t)}notifyChange(t){this.__accessor__.notifyChange(t)}_get(t){return this.__accessor__.internalGet(t)}_set(t,e){return this.__accessor__.internalSet(t,e),this}}},3894:(t,e,r)=>{r.d(e,{Z:()=>i});var n=r(71143);function s(t){t.length=0}class i{constructor(t=50,e=50){this._pool=new n.Z(Array,void 0,s,e,t)}acquire(){return this._pool.acquire()}release(t){this._pool.release(t)}prune(){this._pool.prune(0)}static acquire(){return o.acquire()}static release(t){return o.release(t)}static prune(){o.prune()}}const o=new i(100)},96674:(t,e,r)=>{r.d(e,{wq:()=>v,eC:()=>g});var n=r(43697),s=r(15923),i=r(70586),o=r(22974),a=r(31263);class l{constructor(){this._values=new Map,this.multipleOriginsSupported=!1}clone(t){const e=new l;return this._values.forEach(((r,n)=>{t&&t.has(n)||e.set(n,(0,o.d9)(r.value),r.origin)})),e}get(t,e){e=this._normalizeOrigin(e);const r=this._values.get(t);return null==e||(null==r?void 0:r.origin)===e?null==r?void 0:r.value:void 0}originOf(t){var e,r;return null!=(e=null==(r=this._values.get(t))?void 0:r.origin)?e:a.s3.USER}keys(t){t=this._normalizeOrigin(t);const e=[...this._values.keys()];return null==t?e:e.filter((e=>{var r;return(null==(r=this._values.get(e))?void 0:r.origin)===t}))}set(t,e,r){if((r=this._normalizeOrigin(r))===a.s3.DEFAULTS){const e=this._values.get(t);if(e&&null!=e.origin&&e.origin>r)return}this._values.set(t,new c(e,r))}delete(t,e){var r;null!=(e=this._normalizeOrigin(e))&&(null==(r=this._values.get(t))?void 0:r.origin)!==e||this._values.delete(t)}has(t,e){var r;return null!=(e=this._normalizeOrigin(e))?(null==(r=this._values.get(t))?void 0:r.origin)===e:this._values.has(t)}forEach(t){this._values.forEach((({value:e},r)=>t(e,r)))}_normalizeOrigin(t){if(null!=t)return t===a.s3.DEFAULTS?t:a.s3.USER}}class c{constructor(t,e){this.value=t,this.origin=e}}var u=r(41103),h=r(50549),f=r(1153),d=r(76169),p=r(52011);const g=t=>{let e=class extends t{constructor(...t){super(...t);const e=(0,i.j0)((0,f.vw)(this)),r=e.store,n=new l;e.store=n,(0,u.M)(e,r,n)}read(t,e){(0,h.i)(this,t,e)}write(t={},e){return(0,d.c)(this,t,e)}toJSON(t){return this.write({},t)}static fromJSON(t,e){return y.call(this,t,e)}};return e=(0,n._)([(0,p.j)("esri.core.JSONSupport")],e),e.prototype.toJSON.isDefaultToJSON=!0,e};function y(t,e){if(!t)return null;if(t.declaredClass)throw new Error("JSON object is already hydrated");const r=new this;return r.read(t,e),r}let v=class extends(g(s.Z)){};v=(0,n._)([(0,p.j)("esri.core.JSONSupport")],v)},30175:(t,e,r)=>{function n(t,e,r){const n=t.get(e);if(void 0!==n)return n;const s=r();return t.set(e,s),s}r.d(e,{s1:()=>n})},71143:(t,e,r)=>{r.d(e,{Z:()=>n});class n{constructor(t,e,r,n=1,s=0){if(this.ctor=t,this.acquireFunction=e,this.releaseFunction=r,this.allocationSize=n,this._pool=new Array(s),this._initialSize=s,this.ctor)for(let t=0;t<s;t++)this._pool[t]=new this.ctor;this.allocationSize=Math.max(n,1)}destroy(){this.prune(0)}acquire(...t){let e;if(n.test.disabled)e=new this.ctor;else{if(0===this._pool.length){const t=this.allocationSize;for(let e=0;e<t;e++)this._pool[e]=new this.ctor}e=this._pool.pop()}return this.acquireFunction?this.acquireFunction(e,...t):function(t){return t&&t.acquire&&"function"==typeof t.acquire}(e)&&e.acquire(...t),e}release(t){var e;t&&!n.test.disabled&&(this.releaseFunction?this.releaseFunction(t):(e=t)&&e.release&&"function"==typeof e.release&&t.release(),this._pool.push(t))}prune(t=this._initialSize){if(!(t>=this._pool.length)){for(let e=t;e<this._pool.length;++e){const t=this._pool[e];this._dispose(t)}this._pool.length=t}}_dispose(t){t.dispose&&"function"==typeof t.dispose&&t.dispose()}}n.test={disabled:!1}},54790:(t,e,r)=>{r.d(e,{Z:()=>n});class n{constructor(t,e=29){this.name=t,this._counter=0,this._items=new Array(e)}record(t){this._items[++this._counter%this._items.length]=t}get median(){return this._items.slice().sort(((t,e)=>t-e))[Math.floor(this._items.length/2)]}get average(){return this._items.reduce(((t,e)=>t+e),0)/this._items.length}get last(){return this._items[this._counter%this._items.length]}}},44553:(t,e,r)=>{r.d(e,{Z:()=>o});var n,s=r(67676);!function(t){const e=(t,e,r,n)=>{let s=e,i=e;const o=r>>>1,a=t[s-1];for(;i<=o;){i=s<<1,i<r&&n(t[i-1],t[i])<0&&++i;const e=t[i-1];if(n(e,a)<=0)break;t[s-1]=e,s=i}t[s-1]=a},r=(t,e)=>t<e?-1:t>e?1:0;t.sort=function(t,n,s,i){void 0===n&&(n=0),void 0===s&&(s=t.length),void 0===i&&(i=r);for(let r=s>>>1;r>n;r--)e(t,r,s,i);const o=n+1;for(let r=s-1;r>n;r--){const s=t[n];t[n]=t[r],t[r]=s,e(t,o,r,i)}},t.iterableSort=function*(t,n,s,i){void 0===n&&(n=0),void 0===s&&(s=t.length),void 0===i&&(i=r);for(let r=s>>>1;r>n;r--)e(t,r,s,i),yield;const o=n+1;for(let r=s-1;r>n;r--){const s=t[n];t[n]=t[r],t[r]=s,e(t,o,r,i),yield}}}(n||(n={}));const i=n;class o{constructor(t){this.data=[],this._length=0,this._allocator=void 0,this._deallocator=()=>null,this._shrink=()=>{},this._hint=new s.SO,t&&(t.initialSize&&(this.data=new Array(t.initialSize)),t.allocator&&(this._allocator=t.allocator),void 0!==t.deallocator&&(this._deallocator=t.deallocator),t.shrink&&(this._shrink=()=>a(this)))}toArray(){return this.data.slice(0,this.length)}getItemAt(t){if(!(t<0||t>=this._length))return this.data[t]}get length(){return this._length}set length(t){if(t>this._length){if(this._allocator){for(;this._length<t;)this.data[this._length++]=this._allocator(this.data[this._length]);return}this._length=t}else{if(this._deallocator)for(let e=t;e<this._length;++e)this.data[e]=this._deallocator(this.data[e]);this._length=t,this._shrink()}}clear(){this.length=0}prune(){this.clear(),this.data=[]}push(t){this.data[this._length++]=t}pushArray(t,e=t.length){for(let r=0;r<e;r++)this.data[this._length++]=t[r]}fill(t,e){for(let r=0;r<e;r++)this.data[this._length++]=t}pushNew(){this._allocator&&(this.data[this.length]=this._allocator(this.data[this.length]));const t=this.data[this._length];return++this._length,t}unshift(t){this.data.unshift(t),this._length++,a(this)}pop(){if(0===this.length)return;const t=this.data[this.length-1];return this.length=this.length-1,this._shrink(),t}remove(t){const e=(0,s.cq)(this.data,t,this.length,this._hint);if(-1!==e)return this.data.splice(e,1),this.length=this.length-1,t}removeUnordered(t){const e=(0,s.e$)(this.data,t,this.length,this._hint);return void 0!==e&&(this.length=this.length-1),this._shrink(),e}removeUnorderedIndex(t){if(!(t>=this.length||t<0))return this.swapElements(t,this.length-1),this.pop()}removeUnorderedMany(t,e=t.length,r){this.length=(0,s.FY)(this.data,t,this.length,e,this._hint,r),this._shrink()}front(){if(0!==this.length)return this.data[0]}back(){if(0!==this.length)return this.data[this.length-1]}swapElements(t,e){t>=this.length||e>=this.length||t===e||([this.data[t],this.data[e]]=[this.data[e],this.data[t]])}sort(t){i.sort(this.data,0,this.length,t)}iterableSort(t){return i.iterableSort(this.data,0,this.length,t)}some(t,e){for(let r=0;r<this.length;++r)if(t.call(e,this.data[r],r,this.data))return!0;return!1}filterInPlace(t,e){let r=0;for(let n=0;n<this._length;++n){const s=this.data[n];t.call(e,s,n,this.data)&&(this.data[n]=this.data[r],this.data[r]=s,r++)}if(this._deallocator)for(let t=r;t<this._length;t++)this.data[t]=this._deallocator(this.data[t]);return this._length=r,this._shrink(),this}forAll(t,e){const r=this.length,n=this.data;for(let s=0;s<r;++s)t.call(e,n[s],s,n)}forEach(t,e){for(let r=0;r<this.length;++r)t.call(e,this.data[r],r,this.data)}map(t,e){const r=new Array(this.length);for(let n=0;n<this.length;++n)r[n]=t.call(e,this.data[n],n,this.data);return r}reduce(t,e){let r=e;for(let e=0;e<this.length;++e)r=t(r,this.data[e],e,this.data);return r}has(t){const e=this.length,r=this.data;for(let n=0;n<e;++n)if(r[n]===t)return!0;return!1}}function a(t){t.data.length>1.5*t.length&&(t.data.length=Math.floor(1.1*t.length))}},20941:(t,e,r)=>{r.d(e,{Z:()=>s});var n=r(58896);class s extends n.Z{constructor(t,e,r){if(super(t,e,r),!(this instanceof s))return new s(t,e,r)}}s.prototype.type="warning"},31263:(t,e,r)=>{r.d(e,{s3:()=>n,kk:()=>o,x3:()=>l,Wm:()=>c,M9:()=>a});var n,s,i=r(70586);(s=n||(n={}))[s.DEFAULTS=0]="DEFAULTS",s[s.COMPUTED=1]="COMPUTED",s[s.SERVICE=2]="SERVICE",s[s.PORTAL_ITEM=3]="PORTAL_ITEM",s[s.WEB_SCENE=4]="WEB_SCENE",s[s.WEB_MAP=5]="WEB_MAP",s[s.USER=6]="USER";const o=n.USER+1;function a(t){switch(t){case"defaults":return n.DEFAULTS;case"service":return n.SERVICE;case"portal-item":return n.PORTAL_ITEM;case"web-scene":return n.WEB_SCENE;case"web-map":return n.WEB_MAP;case"user":return n.USER}}function l(t){switch(t){case n.DEFAULTS:return"defaults";case n.SERVICE:return"service";case n.PORTAL_ITEM:return"portal-item";case n.WEB_SCENE:return"web-scene";case n.WEB_MAP:return"web-map";case n.USER:return"user"}return(0,i.j0)(void 0)}function c(t){return l(t)}},90578:(t,e,r)=>{r.d(e,{p:()=>l});var n=r(75215),s=r(7628);const i=Object.prototype.toString;function o(t){const e="__accessorMetadata__"in t?(0,n.se)(t):t;return function(...t){if(t.push(e),"number"==typeof t[2])throw new Error("Using @cast has parameter decorator is not supported since 4.16");return a.apply(this,t)}}function a(t,e,r,n){(0,s.VZ)(t,e).cast=n}function l(...t){if(3!==t.length||"string"!=typeof t[1])return 1===t.length&&"[object Function]"===i.call(t[0])?o(t[0]):1===t.length&&"string"==typeof t[0]?function(t){return function(e,r){(0,s.VZ)(e,t).cast=e[r]}}(t[0]):void 0}},5600:(t,e,r)=>{r.d(e,{Eg:()=>u,Cb:()=>l,CJ:()=>c});var n=r(92604),s=r(75215),i=r(67723),o=r(7628),a=r(37697);function l(t={}){return(e,r)=>{if(e===Function.prototype)throw new Error(`Inappropriate use of @property() on a static field: ${e.name}.${r}. Accessor does not support static properties.`);const l=Object.getOwnPropertyDescriptor(e,r),c=(0,o.VZ)(e,r);l&&(l.get||l.set?(c.get=l.get||c.get,c.set=l.set||c.set):"value"in l&&("value"in t&&n.Z.getLogger("esri.core.accessorSupport.decorators.property").warn(`@property() will redefine the value of "${r}" on "${e.constructor.name}" already defined in the metadata`,t),c.value=t.value=l.value)),null!=t.readOnly&&(c.readOnly=t.readOnly);const h=t.aliasOf;if(h){const t="string"==typeof h?h:h.source,e="string"==typeof h?null:!0===h.overridable;let n;c.dependsOn=[t],c.get=function(){let e=(0,i.U2)(this,t);if("function"==typeof e){n||(n=t.split(".").slice(0,-1).join("."));const r=(0,i.U2)(this,n);r&&(e=e.bind(r))}return e},c.readOnly||(c.set=e?function(t){void 0!==t?this._override(r,t):this._clearOverride(r)}:function(e){(0,a.t)(this,t,e)})}const f=t.type,d=t.types;c.cast||(f?c.cast=function(t){let e=0,r=t;if((0,s.AY)(t))return(0,s.sY)(t);for(;Array.isArray(r)&&1===r.length&&"string"!=typeof r[0]&&"number"!=typeof r[0];)r=r[0],e++;const n=r;if((0,s.gB)(n))return 0===e?(0,s.i$)(n):(0,s.Iu)((0,s.i$)(n),e);if(1===e)return(0,s.rY)(n);if(e>1)return(0,s.di)(n,e);const i=t;return i.from?i.from:(0,s.se)(i)}(f):d&&(Array.isArray(d)?c.cast=(0,s.Ls)((0,s.N7)(d[0])):c.cast=(0,s.N7)(d))),t.range&&(c.cast=u(c.cast,t.range)),(0,o.tz)(c,t)}}function c(t,e,r){const n=(0,o.VZ)(t,r);n.json||(n.json={});let s=n.json;return void 0!==e&&(s.origins||(s.origins={}),s.origins[e]||(s.origins[e]={}),s=s.origins[e]),s}function u(t,e){return r=>{let n=+t(r);return null!=e.step&&(n=Math.round(n/e.step)*e.step),null!=e.min&&(n=Math.max(e.min,n)),null!=e.max&&(n=Math.min(e.max,n)),n}}},52011:(t,e,r)=>{r.d(e,{j:()=>c}),r(80442);var n=r(97831),s=r(7628),i=r(58971),o=r(53906);const a=new Set,l=new Set;function c(t){return e=>{e.prototype.declaredClass=t,h(e);const r=[],n=[];let i=e.prototype;for(;i;)i.hasOwnProperty("initialize")&&!a.has(i.initialize)&&(a.add(i.initialize),r.push(i.initialize)),i.hasOwnProperty("destroy")&&!l.has(i.destroy)&&(l.add(i.destroy),n.push(i.destroy)),i=Object.getPrototypeOf(i);a.clear(),l.clear();class o extends e{constructor(...t){if(super(...t),this.constructor===o&&"function"==typeof this.postscript){if(r.length&&Object.defineProperty(this,"initialize",{enumerable:!1,configurable:!0,value(){for(let t=r.length-1;t>=0;t--)r[t].call(this)}}),n.length){let t=!1;Object.defineProperty(this,"destroy",{enumerable:!1,configurable:!0,value(){if(!t){t=!0;for(let t=0;t<n.length;t++)n[t].call(this)}}})}this.postscript(...t)}}}return o.__accessorMetadata__=(0,s.JT)(e.prototype),o.prototype.declaredClass=t,o}}function u(t,e){return null==e.get?function(){const e=this.__accessor__.properties.get(t);if(void 0===e)return;(0,i.it)(e);const r=this.__accessor__.store;return r.has(t)?r.get(t):e.metadata.value}:function(){const e=this.__accessor__.properties.get(t);if(void 0!==e)return e.getComputed()}}function h(t){const e=t.prototype,r=(0,s.JT)(e).properties,i={};for(const t of Object.getOwnPropertyNames(r)){const e=r[t];(0,o.OM)(e),i[t]={enumerable:!0,configurable:!0,get:u(t,e),set(r){const s=this.__accessor__;if(void 0!==s){if(!Object.isFrozen(this)){if(s.initialized&&e.readOnly)throw new TypeError(`[accessor] cannot assign to read-only property '${t}' of ${this.declaredClass}`);if(s.lifecycle===n.F.CONSTRUCTED&&e.constructOnly)throw new TypeError(`[accessor] cannot assign to construct-only property '${t}' of ${this.declaredClass}`);s.set(t,r)}}else Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:r})}}}Object.defineProperties(t.prototype,i)}},41103:(t,e,r)=>{r.d(e,{M:()=>s});var n=r(31263);function s(t,e,r){e.keys().forEach((t=>{r.set(t,e.get(t),n.s3.DEFAULTS)}));const s=t.metadatas;Object.keys(s).forEach((e=>{t.internalGet(e)&&r.set(e,t.internalGet(e),n.s3.DEFAULTS)}))}},75215:(t,e,r)=>{r.d(e,{z8:()=>k,rY:()=>A,Ls:()=>b,TJ:()=>y,vU:()=>u,sY:()=>D,di:()=>T,Iu:()=>S,q9:()=>c,i$:()=>j,N7:()=>N,Zs:()=>l,se:()=>w,AY:()=>I,gB:()=>E,V5:()=>C}),r(80442);var n=r(92604),s=r(30175);const i=n.Z.getLogger("esri.core.Accessor");function o(t){return null==t?t:new Date(t)}function a(t){return null==t?t:!!t}function l(t){return null==t?t:t.toString()}function c(t){return null==t?t:(t=parseFloat(t),isNaN(t)?0:t)}function u(t){return null==t?t:Math.round(parseFloat(t))}function h(t){return t&&t.constructor&&void 0!==t.constructor.__accessorMetadata__}function f(t,e){return null!=e&&t&&!(e instanceof t)}function d(t){return t&&"isCollection"in t}function p(t){return t&&t.Type?"function"==typeof t.Type?t.Type:t.Type.base:null}function g(t,e){return!!h(e)&&(i.error("Accessor#set","Assigning an instance of '"+(e.declaredClass||"unknown")+"' which is not a subclass of '"+v(t)+"'"),!0)}function y(t,e){return null==e?e:d(t)?function(t,e){if(!e||!e.constructor||!d(e.constructor))return g(t,e)?e:new t(e);const r=p(t.prototype.itemType),n=p(e.constructor.prototype.itemType);return r?n?r===n?e:r.prototype.isPrototypeOf(n.prototype)?new t(e):(g(t,e),e):new t(e):e}(t,e):f(t,e)?g(t,e)?e:new t(e):e}function v(t){return t&&t.prototype&&t.prototype.declaredClass||"unknown"}const _=new WeakMap;function m(t){switch(t){case Number:return c;case k:return u;case Boolean:return a;case String:return l;case Date:return o;default:return(0,s.s1)(_,t,(()=>y.bind(null,t)))}}function w(t,e){const r=m(t);return 1===arguments.length?r:r(e)}function b(t,e,r){return 1===arguments.length?b.bind(null,t):e?Array.isArray(e)?e.map((e=>t(e,r))):[t(e,r)]:e}function A(t,e){return 1===arguments.length?b(w.bind(null,t)):b(w.bind(null,t),e)}function O(t,e,r){return 0!==e&&Array.isArray(r)?r.map((r=>O(t,e-1,r))):t(r)}function S(t,e,r){if(2===arguments.length)return S.bind(null,t,e);if(!r)return r;let n=e,s=r=O(t,e,r);for(;n>0&&Array.isArray(s);)n--,s=s[0];if(void 0!==s)for(let t=0;t<n;t++)r=[r];return r}function T(t,e,r){return 2===arguments.length?S(w.bind(null,t),e):S(w.bind(null,t),e,r)}function E(t){return!!Array.isArray(t)&&!t.some((e=>{const r=typeof e;return!("string"===r||"number"===r||"function"===r&&t.length>1)}))}function j(t,e){if(2===arguments.length)return j(t).call(null,e);const r=new Set,n=t.filter((t=>"function"!=typeof t)),s=t.filter((t=>"function"==typeof t));for(const e of t)"string"!=typeof e&&"number"!=typeof e||r.add(e);let o=null,a=null;return(t,e)=>{if(null==t)return t;const l=typeof t,c="string"===l||"number"===l;return c&&(r.has(t)||s.some((t=>"string"===l&&t===String||"number"===l&&t===Number)))||"object"===l&&s.some((e=>!f(t,e)))?t:(c&&n.length?(o||(o=n.map((t=>"string"==typeof t?`'${t}'`:`${t}`)).join(", ")),i.error("Accessor#set",`'${t}' is not a valid value for this property, only the following values are valid: ${o}`)):"object"==typeof t&&s.length?(a||(a=s.map((t=>v(t))).join(", ")),i.error("Accessor#set",`'${t}' is not a valid value for this property, value must be one of ${a}`)):i.error("Accessor#set",`'${t}' is not a valid value for this property`),e&&(e.valid=!1),null)}}function N(t,e){if(2===arguments.length)return N(t).call(null,e);const r={},n=[],s=[];for(const e in t.typeMap){const i=t.typeMap[e];r[e]=w(i),n.push(v(i)),s.push(e)}const o=()=>`'${n.join("', '")}'`,a=()=>`'${s.join("', '")}'`,l="string"==typeof t.key?e=>e[t.key]:t.key;return e=>{if(t.base&&!f(t.base,e))return e;if(null==e)return e;const n=l(e)||t.defaultKeyValue,s=r[n];if(!s)return i.error("Accessor#set",`Invalid property value, value needs to be one of ${o()}, or a plain object that can autocast (having .type = ${a()})`),null;if(!f(t.typeMap[n],e))return e;if("string"==typeof t.key&&!h(e)){const r={};for(const n in e)n!==t.key&&(r[n]=e[n]);return s(r)}return s(e)}}class k{}const C={native:t=>({type:"native",value:t}),array:t=>({type:"array",value:t}),oneOf:t=>({type:"one-of",values:t})};function I(t){if(!t||!("type"in t))return!1;switch(t.type){case"native":case"array":case"one-of":return!0}return!1}function D(t){switch(t.type){case"native":return w(t.value);case"array":return b(D(t.value));case"one-of":return function(t){let e=null;return(r,n)=>U(r,t)?r:(null==e&&(e=M(t)),i.error("Accessor#set",`Invalid property value, value needs to be of type ${e}`),n&&(n.valid=!1),null)}(t);default:return null}}function M(t){switch(t.type){case"native":switch(t.value){case Number:return"number";case String:return"string";case Boolean:return"boolean";case k:return"integer";case Date:return"date";default:return v(t.value)}case"array":return`array of ${M(t.value)}`;case"one-of":{const e=t.values.map((t=>M(t)));return`one of ${e.slice(0,e.length-1)} or ${e[e.length-1]}`}}return"unknown"}function U(t,e){if(null==t)return!0;switch(e.type){case"native":switch(e.value){case Number:case k:return"number"==typeof t;case Boolean:return"boolean"==typeof t;case String:return"string"==typeof t}return t instanceof e.value;case"array":return!!Array.isArray(t)&&!t.some((t=>!U(t,e.value)));case"one-of":return e.values.some((e=>U(t,e)))}}},53906:(t,e,r)=>{r.d(e,{hk:()=>f,HS:()=>u,Ah:()=>h,OM:()=>y});var n=r(75215),s=r(63213);function i(t){if(t.json||(t.json={}),a(t.json),l(t.json),o(t.json),t.json.origins)for(const e in t.json.origins)a(t.json.origins[e]),l(t.json.origins[e]),o(t.json.origins[e]);return!0}function o(t){t.name&&(t.read&&"object"==typeof t.read?void 0===t.read.source&&(t.read.source=t.name):t.read={source:t.name},t.write&&"object"==typeof t.write?void 0===t.write.target&&(t.write.target=t.name):t.write={target:t.name})}function a(t){"boolean"==typeof t.read?t.read={enabled:t.read}:"function"==typeof t.read?t.read={enabled:!0,reader:t.read}:t.read&&"object"==typeof t.read&&void 0===t.read.enabled&&(t.read.enabled=!0)}function l(t){"boolean"==typeof t.write?t.write={enabled:t.write}:"function"==typeof t.write?t.write={enabled:!0,writer:t.write}:t.write&&"object"==typeof t.write&&void 0===t.write.enabled&&(t.write.enabled=!0)}var c=r(827);function u(t,e){return f(t,"read",e)}function h(t,e){return f(t,"write",e)}function f(t,e,r){let n=t&&t.json;if(t&&t.json&&t.json.origins&&r){const s=t.json.origins[r.origin];s&&("any"===e||e in s)&&(n=s)}return n}function d(t){return t.type?p(t):g(t)}function p(t){if(!t.type)return;let e=0,r=t.type;for(;Array.isArray(r)&&!(0,n.gB)(r);)r=r[0],e++;return{type:r,ndimArray:e}}function g(t){if(!t.types)return;let e=0,r=t.types;for(;Array.isArray(r);)r=r[0],e++;return{types:r,ndimArray:e}}function y(t){i(t)&&(function(t){if(t.json&&t.json.origins){const e=t.json.origins,r={"web-document":["web-scene","web-map"]};for(const t in r)if(e[t]){const n=e[t];r[t].forEach((t=>{e[t]=n})),delete e[t]}}}(t),function(t){const e=function(t){return t.json.types?g(t.json):t.type?p(t):g(t)}(t);if(t.json.origins)for(const r in t.json.origins){const n=t.json.origins[r],i=n.types?d(n):e;(0,s.U)(i,n,!1),n.types&&!n.write&&t.json.write&&t.json.write.enabled&&(n.write={...t.json.write}),(0,c.U)(i,n)}(0,s.U)(e,t.json,!0),(0,c.U)(e,t.json)}(t))}},63213:(t,e,r)=>{r.d(e,{U:()=>c,d:()=>u});var n=r(92604),s=r(78286),i=r(20941),o=r(7628),a=r(14062);const l=n.Z.getLogger("esri.core.accessorSupport.extensions.serializableProperty.reader");function c(t,e,r){var n,i;t&&(!r&&!e.read||null!=(n=e.read)&&n.reader||!1===(null==(i=e.read)?void 0:i.enabled)||function(t){return"types"in t?y(t.types):g(t.type)}(t)&&(0,s.RB)("read.reader",u(t),e))}function u(t){var e;const r=null!=(e=t.ndimArray)?e:0;if(r>1)return function(t){var e;const r=h(t),n=f.bind(null,r),s=null!=(e=t.ndimArray)?e:0;return(t,e,r)=>{if(null==t)return t;t=n(t,r,s);let i=s,o=t;for(;i>0&&Array.isArray(o);)i--,o=o[0];if(void 0!==o)for(let e=0;e<i;e++)t=[t];return t}}(t);if(1===r)return d(t);if("type"in t&&p(t.type)){var n,s;const e=null==(n=t.type.prototype)||null==(s=n.itemType)?void 0:s.Type,r=d("function"==typeof e?{type:e}:{types:e});return(e,n,s)=>{const i=r(e,n,s);return i?new t.type(i):i}}return h(t)}function h(t){return"type"in t?function(t){return t.prototype.read?(e,r,n)=>{if(null==e)return e;const s=typeof e;if("object"!==s)return void l.error(`Expected JSON value of type 'object' to deserialize type '${t.prototype.declaredClass}', but got '${s}'`);const i=new t;return i.read(e,n),i}:t.fromJSON}(t.type):function(t){var e;let r=null;const n=null!=(e=t.errorContext)?e:"type";return(e,s,a)=>{if(null==e)return e;const c=typeof e;if("object"!==c)return void l.error(`Expected JSON value of type 'object' to deserialize, but got '${c}'`);r||(r=function(t){const e={};for(const s in t.typeMap){var r,n;const i=t.typeMap[s],a=(0,o.JT)(i.prototype);if("function"==typeof t.key)continue;const l=a.properties[t.key];if(!l)continue;null!=(r=l.json)&&r.type&&Array.isArray(l.json.type)&&1===l.json.type.length&&"string"==typeof l.json.type[0]&&(e[l.json.type[0]]=i);const c=null==(n=l.json)?void 0:n.write;if(!c||!c.writer){e[s]=i;continue}const u=c.target,h="string"==typeof u?u:t.key,f={};c.writer(s,f,h),f[h]&&(e[f[h]]=i)}return e}(t));const u=t.key;if("string"!=typeof u)return;const h=e[u],f=h?r[h]:t.defaultKeyValue?t.typeMap[t.defaultKeyValue]:void 0;if(!f){const t=`Type '${h||"unknown"}' is not supported`;return a&&a.messages&&e&&a.messages.push(new i.Z(`${n}:unsupported`,t,{definition:e,context:a})),void l.error(t)}const d=new f;return d.read(e,a),d}}(t.types)}function f(t,e,r,n){return 0!==n&&Array.isArray(e)?e.map((e=>f(t,e,r,n-1))):t(e,void 0,r)}function d(t){const e=h(t);return(t,r,n)=>{if(null==t)return t;if(Array.isArray(t)){const r=[];for(const s of t){const t=e(s,void 0,n);void 0!==t&&r.push(t)}return r}const s=e(t,void 0,n);return void 0!==s?[s]:void 0}}function p(t){if(!(0,a.u)(t))return!1;const e=t.prototype.itemType;return!(!e||!e.Type)&&("function"==typeof e.Type?g(e.Type):y(e.Type))}function g(t){return!Array.isArray(t)&&!!t&&t.prototype&&("read"in t.prototype||"fromJSON"in t||p(t))}function y(t){for(const e in t.typeMap)if(!g(t.typeMap[e]))return!1;return!0}},14062:(t,e,r)=>{function n(t){return!!t&&t.prototype&&t.prototype.declaredClass&&0===t.prototype.declaredClass.indexOf("esri.core.Collection")}r.d(e,{u:()=>n})},827:(t,e,r)=>{r.d(e,{U:()=>l,k:()=>f});var n=r(20102),s=r(92604),i=r(78286),o=r(14062);const a=s.Z.getLogger("esri.core.accessorSupport.extensions.serializableProperty.writer");function l(t,e){var r;if(!e.write||e.write.writer||!1===e.write.enabled&&!e.write.overridePolicy)return;const n=null!=(r=null==t?void 0:t.ndimArray)?r:0;t&&(1===n||"type"in t&&(0,o.u)(t.type))?e.write.writer=d:n>1?e.write.writer=function(t){return function(e,r,n,s){let o;if(null===e)o=null;else{o=p(e,s,t);let r=t,n=o;for(;r>0&&Array.isArray(n);)r--,n=n[0];if(void 0!==n)for(let t=0;t<r;t++)o=[o]}(0,i.RB)(n,o,r)}}(n):e.types?Array.isArray(e.types)?e.write.writer=function(t){return(e,r,n,s)=>e&&Array.isArray(e)?u(e.filter((e=>c(e,t,s))),r,n,s):u(e,r,n,s)}(e.types[0]):e.write.writer=function(t){return(e,r,n,s)=>e?c(e,t,s)?u(e,r,n,s):void 0:u(e,r,n,s)}(e.types):e.write.writer=u}function c(t,e,r){for(const r in e.typeMap)if(t instanceof e.typeMap[r])return!0;if(null!=r&&r.messages){var s,i;const o=null!=(s=e.errorContext)?s:"type",l=`Values of type '${null!=(i="function"!=typeof e.key?t[e.key]:t.declaredClass)?i:"Unknown"}' cannot be written`;r&&r.messages&&t&&r.messages.push(new n.Z(`${o}:unsupported`,l,{definition:t,context:r})),a.error(l)}return!1}function u(t,e,r,n){(0,i.RB)(r,h(t,n),e)}function h(t,e){return t&&"function"==typeof t.write?t.write({},e):t&&"function"==typeof t.toJSON?t.toJSON():"number"==typeof t?f(t):t}function f(t){return t===-1/0?-Number.MAX_VALUE:t===1/0?Number.MAX_VALUE:isNaN(t)?null:t}function d(t,e,r,n){let s;null===t?s=null:t&&"function"==typeof t.map?(s=t.map((t=>h(t,n))),"function"==typeof s.toArray&&(s=s.toArray())):s=[h(t,n)],(0,i.RB)(r,s,e)}function p(t,e,r){return 0!==r&&Array.isArray(t)?t.map((t=>p(t,e,r-1))):h(t,e)}},67723:(t,e,r)=>{r.d(e,{Gg:()=>l,U2:()=>a,$z:()=>o});var n=r(1153);function s(t,e){const r="?"===t[t.length-1]?t.slice(0,-1):t;if(null!=e.getItemAt||Array.isArray(e)){const t=parseInt(r,10);if(!isNaN(t))return Array.isArray(e)?e[t]:e.getItemAt(t)}const s=(0,n.vw)(e);return(0,n.b6)(s,r)?s.get(r):e[r]}function i(t,e,r){if(null==t)return t;const n=s(e[r],t);return!n&&r<e.length-1?void 0:r===e.length-1?n:i(n,e,r+1)}function o(t,e,r=0){return"string"==typeof e&&-1===e.indexOf(".")?s(e,t):i(t,(0,n.NI)(e),r)}function a(t,e){return o(t,e)}function l(t,e){return void 0!==o(e,t)}},97831:(t,e,r)=>{var n;r.d(e,{F:()=>n}),function(t){t[t.INITIALIZING=0]="INITIALIZING",t[t.CONSTRUCTING=1]="CONSTRUCTING",t[t.CONSTRUCTED=2]="CONSTRUCTED"}(n||(n={}))},7628:(t,e,r)=>{r.d(e,{JT:()=>a,VZ:()=>l,tz:()=>c});var n=r(22974),s=r(70586),i=r(1153);class o{constructor(t){this.autoDestroy=!1,this.properties=t}}function a(t){let e=t.constructor.__accessorMetadata__;const r=Object.prototype.hasOwnProperty.call(t.constructor,"__accessorMetadata__");if(e){if(!r){const r=Object.create(e.properties),s=e.autoDestroy;for(const t in r)r[t]=(0,n.d9)(r[t]);e=new o(r),e.autoDestroy=s,Object.defineProperty(t.constructor,"__accessorMetadata__",{value:e,enumerable:!1,configurable:!0,writable:!0})}}else e=new o({}),Object.defineProperty(t.constructor,"__accessorMetadata__",{value:e,enumerable:!1,configurable:!0,writable:!0});return(0,s.j0)(t.constructor.__accessorMetadata__)}function l(t,e){const r=function(t){return a(t).properties}(t);let n=r[e];return n||(n=r[e]={}),n}function c(t,e){return(0,i.TS)(t,e,h)}const u=/^(?:[^.]+\.)?(?:value|type|(?:json\.type|json\.origins\.[^.]\.type))$/;function h(t){return u.test(t)?"replace":"merge"}},50549:(t,e,r)=>{r.d(e,{i:()=>u,$:()=>h});var n=r(67723),s=r(1153),i=r(53906);function o(t,e,r){if(!t||!t.read||!1===t.read.enabled||!t.read.source)return!1;const s=t.read.source;if("string"==typeof s){if(s===e)return!0;if(s.indexOf(".")>-1&&0===s.indexOf(e)&&(0,n.Gg)(s,r))return!0}else for(const t of s){if(t===e)return!0;if(t.indexOf(".")>-1&&0===t.indexOf(e)&&(0,n.Gg)(t,r))return!0}return!1}function a(t,e,r,n,s){let a=(0,i.HS)(e[r],s);(function(t){return t&&(!t.read||!1!==t.read.enabled&&!t.read.source)})(a)&&(t[r]=!0);for(const l of Object.getOwnPropertyNames(e))a=(0,i.HS)(e[l],s),o(a,r,n)&&(t[l]=!0)}function l(t,e,r,n){const s=r.metadatas,o=(0,i.hk)(s[e],"any",n),a=o&&o.default;if(void 0===a)return;const l="function"==typeof a?a.call(t,e,n):a;void 0!==l&&r.set(e,l)}const c={origin:"service"};function u(t,e,r=c){if(!e||"object"!=typeof e)return;const o=(0,s.vw)(t),u=o.metadatas,h={};for(const t of Object.getOwnPropertyNames(e))a(h,u,t,e,r);o.setDefaultOrigin(r.origin);for(const s of Object.getOwnPropertyNames(h)){const a=(0,i.HS)(u[s],r).read,l=a&&a.source;let c;c=l&&"string"==typeof l?(0,n.$z)(e,l):e[s],a&&a.reader&&(c=a.reader.call(t,c,e,r)),void 0!==c&&o.set(s,c)}if(!r||!r.ignoreDefaults){o.setDefaultOrigin("defaults");for(const e of Object.getOwnPropertyNames(u))h[e]||l(t,e,o,r)}o.setDefaultOrigin("user")}function h(t,e,r,n=c){var s;const i={...n,messages:[]};r(i),null==(s=i.messages)||s.forEach((e=>{"warning"!==e.type||t.loaded?n&&n.messages&&n.messages.push(e):t.loadWarnings.push(e)}))}},37697:(t,e,r)=>{r.d(e,{t:()=>a});var n=r(20102),s=r(80442),i=r(92604),o=r(67723);function a(t,e,r){if(t&&e)if("object"==typeof e)for(const r of Object.getOwnPropertyNames(e))a(t,r,e[r]);else{if(-1!==e.indexOf(".")){const n=e.split("."),s=n.splice(n.length-1,1)[0];return void a((0,o.U2)(t,n),s,r)}const i=t.__accessor__;null!=i&&function(t,e){if((0,s.Z)("esri-unknown-property-errors")&&!function(t,e){return null!=e.metadatas[t]}(t,e))throw new n.Z("set:unknown-property",function(t,e){return"setting unknown property '"+t+"' on instance of "+e.host.declaredClass}(t,e))}(e,i),t[e]=r}}i.Z.getLogger("esri.core.accessorSupport.set")},58971:(t,e,r)=>{r.d(e,{mS:()=>v,LJ:()=>f,gb:()=>d,it:()=>c,GF:()=>m}),r(80442);var n=r(92604),s=r(1153),i=r(44550);let o,a=[];const l=n.Z.getLogger("esri.core.Accessor");function c(t){void 0!==o&&o.onObservableAccessed(t)}let u=!1,h=!1;function f(t,e,r){if(u)return p(t,e,r);g(t);const n=e.call(r);return y(),n}function d(t,e){return f(void 0,t,e)}function p(t,e,r){const n=u;u=!0,g(t);let s=null;try{s=e.call(r)}catch(t){h&&l.error(t)}return y(),u=n,s}function g(t){o=t,a.push(t)}function y(){const t=a.pop();o=a.length>0?a[a.length-1]:void 0,void 0!==t&&t.onTrackingEnd()}function v(t,e){if(e.flags&i.v.DepTrackingInitialized)return;const r=h;h=!1,e.flags&i.v.AutoTracked?p(e,e.metadata.get,t):m(t,e),h=r}const _=[];function m(t,e){e.flags&i.v.ExplicitlyTracking||(e.flags|=i.v.ExplicitlyTracking,p(e,(()=>{const r=e.metadata.dependsOn||_;for(const e of r)if("string"==typeof e&&-1===e.indexOf("."))w(t,e,!1);else{const r=(0,s.NI)(e);for(let e=0,n=t;e<r.length&&null!=n&&"object"==typeof n;++e)n=w(n,r[e],e!==r.length-1)}})),e.flags&=~i.v.ExplicitlyTracking)}function w(t,e,r){const n="?"===e[e.length-1]?e.slice(0,-1):e;if(null!=t.getItemAt||Array.isArray(t)){const e=parseInt(n,10);if(!isNaN(e))return Array.isArray(t)?t[e]:t.getItemAt(e)}const i=(0,s.vw)(t),o=null==i?void 0:i.properties.get(n);return o&&(c(o),v(t,o)),r?t[n]:void 0}},87538:(t,e,r)=>{r.d(e,{EH:()=>c,U5:()=>a,Xz:()=>l});var n=r(58971),s=r(38805);let i=!1;const o=[];function a(t,e){let r=new s.M((function s(){if(!r||a)return;if(i)return void u(s);const l=o;r.clear(),i=!0,a=!0,o=(0,n.LJ)(r,t),a=!1,i=!1,e(o,l),h()})),o=null,a=!1;return a=!0,o=(0,n.LJ)(r,t),a=!1,{remove:function(){r&&(r.destroy(),r=null,o=null)}}}function l(t,e){let r=new s.M((function(){e(i,o)})),i=null;function o(){return r?(r.clear(),i=(0,n.LJ)(r,t),i):null}return o(),{remove:function(){r&&(r.destroy(),r=null),i=null}}}function c(t){let e=new s.M((function s(){e&&!r&&(i?u(s):(e.clear(),i=!0,r=!0,(0,n.LJ)(e,t),r=!1,i=!1,h()))})),r=!1;return r=!0,(0,n.LJ)(e,t),r=!1,{remove:function(){e&&(e.destroy(),e=null)}}}function u(t){o.includes(t)||o.unshift(t)}function h(){for(;o.length;)o.pop()()}},44550:(t,e,r)=>{var n;r.d(e,{v:()=>n}),function(t){t[t.Dirty=1]="Dirty",t[t.Overriden=2]="Overriden",t[t.Computing=4]="Computing",t[t.NonNullable=8]="NonNullable",t[t.HasDefaultValue=16]="HasDefaultValue",t[t.DepTrackingInitialized=32]="DepTrackingInitialized",t[t.AutoTracked=64]="AutoTracked",t[t.ExplicitlyTracking=128]="ExplicitlyTracking"}(n||(n={}))},39020:(t,e,r)=>{r.d(e,{X:()=>s});var n=r(67676);class s{constructor(t,e){this._observers=t,this._observer=e}remove(){(0,n.Od)(this._observers,this._observer)}}},38805:(t,e,r)=>{r.d(e,{M:()=>n});class n{constructor(t){this._notify=t,this._accessed=[],this._handles=[],this._invalidCount=0}destroy(){this._accessed.length=0,this.clear()}onInvalidated(){this._invalidCount++}onCommitted(){const t=this._invalidCount;if(1===t)return this._invalidCount=0,void this._notify();this._invalidCount=t>0?t-1:0}onObservableAccessed(t){this._accessed.includes(t)||this._accessed.push(t)}onTrackingEnd(){const t=this._handles,e=this._accessed;for(let r=0;r<e.length;++r)t.push(e[r].observe(this));e.length=0}clear(){const t=this._handles;for(let e=0;e<t.length;++e)t[e].remove();t.length=0}}},1153:(t,e,r)=>{r.d(e,{vw:()=>o,b6:()=>a,TS:()=>l,IH:()=>d,Qc:()=>f,NI:()=>u});var n=r(50758),s=r(22974),i=r(70586);function o(t){return t?t.__accessor__?t.__accessor__:t.propertyInvalidated?t:null:null}function a(t,e){return null!=t&&t.metadatas&&null!=t.metadatas[e]}function l(t,e,r){return c(t,e,r?{policy:r,path:""}:null)}function c(t,e,r){return e?Object.keys(e).reduce((function(t,n){let o=null,a="merge";if(r&&(o=r.path?`${r.path}.${n}`:n,a=r.policy(o)),"replace"===a)return t[n]=e[n],t;if(void 0===t[n])return t[n]=(0,s.d9)(e[n]),t;let l=t[n],u=e[n];if(l===u)return t;if(Array.isArray(u)||Array.isArray(t))l=l?Array.isArray(l)?t[n]=l.concat():t[n]=[l]:t[n]=[],u&&(Array.isArray(u)||(u=[u]),u.forEach((t=>{-1===l.indexOf(t)&&l.push(t)})));else if(u&&"object"==typeof u)if(r){const e=r.path;r.path=(0,i.j0)(o),t[n]=c(l,u,r),r.path=e}else t[n]=c(l,u,null);else t.hasOwnProperty(n)&&!e.hasOwnProperty(n)||(t[n]=u);return t}),t||{}):t}function u(t){return Array.isArray(t)?t:t.split(".")}function h(t){return t.indexOf(",")>-1?t.split(",").map((t=>t.trim())):[t.trim()]}function f(t,e,r,s){const i=function(t){if(Array.isArray(t)){const e=[];for(const r of t)e.push(...h(r));return e}return h(t)}(e);if(1!==i.length){const e=i.map((e=>s(t,e,r)));return(0,n.AL)(e)}return s(t,i[0],r)}function d(t){let e=!1;return()=>{e||(e=!0,t())}}},26258:(t,e,r)=>{r.d(e,{BT:()=>b,YP:()=>T,aQ:()=>E});var n=r(3894),s=r(22974),i=r(70586),o=r(71143);class a extends o.Z{constructor(){super(...arguments),this._set=new Set}destroy(){super.destroy(),this._set=(0,i.Bd)(this._set)}acquire(...t){const e=super.acquire(...t);return this._set.delete(e),e}release(t){t&&!this._set.has(t)&&(super.release(t),this._set.add(t))}_dispose(t){this._set.delete(t),super._dispose(t)}}var l,c,u=r(1654),h=r(99001),f=r(67723),d=r(87538),p=r(1153);(c=l||(l={}))[c.Untracked=0]="Untracked",c[c.Tracked=1]="Tracked";class g{constructor(){this.uid=(0,h.D)(),this.removed=!1,this.type=null,this.oldValue=null,this.callback=null,this.getValue=null,this.target=null,this.path=null,this.equals=null}static acquireUntracked(t,e,r,n,i){return this.pool.acquire(l.Untracked,t,e,r,n,i,s.fS)}static acquireTracked(t,e,r,n){return this.pool.acquire(l.Tracked,t,e,r,null,null,n)}notify(t,e){this.type===l.Untracked?this.callback.call(this.target,t,e,this.path,this.target):this.callback.call(null,t,e)}acquire(t,e,r,n,s,i,o){this.uid=(0,h.D)(),this.removed=!1,this.type=t,this.oldValue=e,this.callback=r,this.getValue=n,this.target=s,this.path=i,this.equals=o}release(){this.target=this.path=this.oldValue=this.callback=this.getValue=null,this.uid=(0,h.D)(),this.removed=!0}}g.pool=new a(g);const y=new n.Z,v=new Set;let _;function m(t){v.delete(t),v.add(t),_||(_=(0,u.Os)(A))}function w(t){if(t.removed)return;const e=t.oldValue,r=t.getValue();t.equals(e,r)||(t.oldValue=r,t.notify(r,e))}function b(t){for(const e of v.values())e.target===t&&(e.removed=!0)}function A(){let t=10;for(;_&&t--;){_=null;const t=O(),e=y.acquire();for(const r of t){const t=r.uid;w(r),t===r.uid&&r.removed&&e.push(r)}for(const t of v)t.removed&&(e.push(t),v.delete(t));for(const t of e)g.pool.release(t);y.release(e),y.release(t),S.forEach((t=>t()))}}function O(){const t=y.acquire();t.length=v.size;let e=0;for(const r of v)t[e]=r,++e;return v.clear(),t}const S=new Set;function T(t,e,r,n=!1){return!t.__accessor__||t.__accessor__.destroyed?{remove(){}}:n?function(t,e,r){const n=(0,p.Qc)(t,e,r,((t,e,r)=>{let i=!1;return(0,d.U5)((()=>(0,f.$z)(t,e)),((o,a)=>{t.__accessor__.destroyed?n.remove():i||(i=!0,(0,s.fS)(a,o)||r.call(t,o,a,e,t),i=!1)}))}));return n}(t,e,r):function(t,e,r){let n=(0,p.Qc)(t,e,r,((t,e,r)=>{let s,i,o=(0,d.Xz)((()=>(0,f.$z)(t,e)),((o,a)=>{t.__accessor__.destroyed||s&&s.uid!==i?n.remove():(s||(s=g.acquireUntracked(o,r,a,t,e),i=s.uid),m(s))}));return{remove:(0,p.IH)((()=>{o.remove(),s&&(s.uid!==i||s.removed||(s.removed=!0,m(s)),s=null),n=o=null}))}}));return n}(t,e,r)}function E(t,e,r=!1,n=s.fS){return r?function(t,e,r){let n=!1;return(0,d.U5)(t,((t,s)=>{n||(n=!0,r(s,t)||e(t,s),n=!1)}))}(t,e,n):function(t,e,r){let n,s,i=(0,d.Xz)(t,((t,o)=>{n&&n.uid!==s?i.remove():(n||(n=g.acquireTracked(t,e,o,r),s=n.uid),m(n))}));return{remove:(0,p.IH)((()=>{i.remove(),n&&(n.uid!==s||n.removed||(n.removed=!0,m(n)),n=null),i=null}))}}(t,e,n)}},76169:(t,e,r)=>{r.d(e,{d:()=>f,c:()=>d});var n=r(67676),s=r(20102),i=r(92604),o=r(31263),a=r(1153),l=r(53906);const c=i.Z.getLogger("esri.core.accessorSupport.write");function u(t,e,r,n,s){var i,o;const a={};return null==(i=e.write)||null==(o=i.writer)||o.call(t,n,a,r,s),a}function h(t,e,r,i,a,l){if(!i||!i.write)return!1;const u=t.get(r);if(!a&&i.write.overridePolicy){const e=i.write.overridePolicy.call(t,u,r,l);void 0!==e&&(a=e)}if(a||(a=i.write),!a||!1===a.enabled)return!1;if((null===u&&!a.allowNull&&!a.writerEnsuresNonNull||void 0===u)&&a.isRequired){const e=new s.Z("web-document-write:property-required",`Missing value for required property '${r}' on '${t.declaredClass}'`,{propertyName:r,target:t});return e&&l&&l.messages?l.messages.push(e):e&&!l&&c.error(e.name,e.message),!1}return!(void 0===u||null===u&&!a.allowNull&&!a.writerEnsuresNonNull||(!e.store.multipleOriginsSupported||e.store.originOf(r)===o.s3.DEFAULTS)&&function(t,e,r,s,i){const o=s.default;if(void 0===o)return!1;if(null!=s.defaultEquals)return s.defaultEquals(i);if("function"==typeof o){if(Array.isArray(i)){const s=o.call(t,e,r);return(0,n.fS)(s,i)}return!1}return o===i}(t,r,l,i,u)||!a.ignoreOrigin&&l&&l.origin&&e.store.multipleOriginsSupported&&e.store.originOf(r)<(0,o.M9)(l.origin))}function f(t,e,r,n){const s=(0,a.vw)(t),i=s.metadatas,o=(0,l.Ah)(i[e],n);return!!o&&h(t,s,e,o,r,n)}function d(t,e,r){if(t&&"function"==typeof t.toJSON&&(!t.toJSON.isDefaultToJSON||!t.write))return(0,a.TS)(e,t.toJSON());const n=(0,a.vw)(t),s=n.metadatas;for(const f in s){const d=(0,l.Ah)(s[f],r);if(!h(t,n,f,d,void 0,r))continue;const p=t.get(f),g=u(t,d,d.write&&"string"==typeof d.write.target?d.write.target:f,p,r);var i,c;Object.keys(g).length>0&&(e=(0,a.TS)(e,g),null!=r&&null!=(i=r.resources)&&null!=(c=i.pendingOperations)&&c.length&&Promise.all(r.resources.pendingOperations).then((()=>(0,a.TS)(e,g))),r&&r.writtenProperties&&r.writtenProperties.push({target:t,propName:f,oldOrigin:(0,o.Wm)(n.store.originOf(f)),newOrigin:r.origin}))}return e}},60235:(t,e,r)=>{r.d(e,{x9:()=>l,XV:()=>o,Mr:()=>a});var n=r(80442);const s=new Set;function i(t,e,r=!1){r&&s.has(e)||(r&&s.add(e),t.warn(`🛑 DEPRECATED - ${e}`))}function o(t,e,r={}){if((0,n.Z)("esri-deprecation-warnings")){const{moduleName:n}=r;l(t,"Function: "+(n?n+"::":"")+e+"()",r)}}function a(t,e,r={}){if((0,n.Z)("esri-deprecation-warnings")){const{moduleName:n}=r;l(t,"Property: "+(n?n+"::":"")+e,r)}}function l(t,e,r={}){if((0,n.Z)("esri-deprecation-warnings")){const{replacement:n,version:s,see:o,warnOnce:a}=r;let l=e;n&&(l+=`\n\t🛠️ Replacement: ${n}`),s&&(l+=`\n\t⚙️ Version: ${s}`),o&&(l+=`\n\t🔗 See ${o} for more details.`),i(t,l,a)}}},50758:(t,e,r)=>{r.d(e,{AL:()=>s,kB:()=>i});var n=r(70586);function s(t){return i((()=>t.forEach((t=>(0,n.pC)(t)&&t.remove()))))}function i(t){return{remove:()=>{t&&(t(),t=void 0)}}}},41213:(t,e,r)=>{r.d(e,{Y:()=>s});const n=[];function s(t){n.push(t),1===n.length&&queueMicrotask((()=>{const t=n.slice();n.length=0;for(const e of t)e()}))}},1654:(t,e,r)=>{r.d(e,{Os:()=>y,MU:()=>w});var n=r(70586),s=r(41213),i=r(54790),o=r(44553),a=r(95330),l=r(76882);class c{constructor(t){this.callback=t,this.isActive=!0}remove(){this.isActive=!1}}let u=0;const h={time:(0,l.HA)(0),deltaTime:(0,l.HA)(0),elapsedFrameTime:(0,l.HA)(0),frameDuration:(0,l.HA)(0)},f=["prepare","preRender","render","postRender","update","finish"],d=[],p=new o.Z,g={frameTasks:p,willDispatch:!1,clearFrameTasks:function(t=!1){p.forAll((t=>{t.removed=!0})),t&&_()},dispatch:m,executeFrameTasks:function(t){const e=(0,l.HA)(t-u);u=t;const r=1e3/60,n=Math.max(0,e-r);for(let s=0;s<f.length;s++){const i=performance.now(),o=f[s];p.forAll((i=>{var a;i.paused||i.removed||(0===s&&i.ticks++,i.phases[o]&&(h.time=t,h.deltaTime=0===i.ticks?(0,l.HA)(0):e,h.elapsedFrameTime=(0,l.HA)(performance.now()-t),h.frameDuration=(0,l.HA)(r-n),null==(a=i.phases[o])||a.call(i,h)))})),b[s].record(performance.now()-i)}_(),A.record(performance.now()-t)}};function y(t){const e=new c(t);return d.push(e),g.willDispatch||(g.willDispatch=!0,(0,s.Y)(m)),e}const v=new o.Z;function _(){p.forAll((t=>{t.removed&&v.push(t)})),p.removeUnorderedMany(v.data,v.length),v.clear()}function m(){for(;d.length;){const t=(0,n.j0)(d.shift());t.isActive&&t.callback()}g.willDispatch=!1}function w(t=1,e){const r=(0,a.hh)(),n=()=>{(0,a.Hc)(e)?r.reject((0,a.zE)()):0===t?r():(--t,(0,s.Y)((()=>n())))};return n(),r.promise}const b=f.map((t=>new i.Z(t))),A=new i.Z("total")},76882:(t,e,r)=>{function n(t){return t}r.d(e,{HA:()=>n})},99001:(t,e,r)=>{r.d(e,{D:()=>s});let n=0;function s(){return++n}}}]);