@arcgis/core 4.29.0-next.20231026 → 4.29.0-next.20231027
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/"},43697:(e,t,r)=>{"use strict";function n(e,t,r,n){var s,o=arguments.length,i=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)i=Reflect.decorate(e,t,r,n);else for(var a=e.length-1;a>=0;a--)(s=e[a])&&(i=(o<3?s(i):o>3?s(t,r,i):s(t,r))||i);return o>3&&i&&Object.defineProperty(t,r,i),i}r.d(t,{_:()=>n}),"function"==typeof SuppressedError&&SuppressedError},68773:(e,t,r)=>{"use strict";r.d(t,{default:()=>o}),r(80442);var n=r(78286),s=r(17202);const o={apiKey:void 0,applicationName:"",applicationUrl:globalThis.location?.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",userPrivilegesApplied:!0,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:{crossOriginNoCorsDomains:null,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,priority:"high",proxyRules:[],proxyUrl:null,timeout:6e4,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&((0,n.RH)(o,globalThis.esriConfig,!0),delete o.has),!o.assetsPath){{const e="4.29.0";o.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@${e}-next.${s.r}/assets`}o.defaultAssetsPath=o.assetsPath}},92036:(e,t,r)=>{"use strict";r.d(t,{Z:()=>x});var n=r(60235),s=r(61247),o=r(92604),i=r(70586),a=r(88022),c=r(67723),l=r(7628),u=(r(80442),r(22974)),f=r(71143),d=r(97831),h=r(42100),p=r(31263),g=r(58971),y=r(44550);class b extends h.s{constructor(e,t){super(),this.propertyName=e,this.metadata=t,this._accessed=null,this._handles=null,this.flags=0,this.flags=y.v.Dirty|(t.nonNullable?y.v.NonNullable:0)|(t.hasOwnProperty("value")?y.v.HasDefaultValue:0)|(void 0===t.get?y.v.DepTrackingInitialized:0)|(void 0===t.dependsOn?y.v.AutoTracked:0)}destroy(){this.flags&y.v.Dirty&&this.onCommitted(),super.destroy(),this._accessed=null,this._clearObservationHandles()}getComputed(e){(0,g.it)(this);const t=e.store,r=this.propertyName,n=this.flags,s=t.get(r);if(n&y.v.Computing)return s;if(~n&y.v.Dirty&&t.has(r))return s;this.flags|=y.v.Computing;const o=e.host;let i;n&y.v.AutoTracked?i=(0,g.LJ)(this,this.metadata.get,o):((0,g.GF)(o,this),i=this.metadata.get.call(o)),t.set(r,i,p.s3.COMPUTED);const a=t.get(r);return a===s?this.flags&=~y.v.Dirty:(0,g.gb)(this.commit,this),this.flags&=~y.v.Computing,a}onObservableAccessed(e){if(e===this)return;let t=this._accessed;if(null==t)t=[],this._accessed=t;else if(t.includes(e))return;t.push(e)}onTrackingEnd(){this._clearObservationHandles(),this.flags|=y.v.DepTrackingInitialized;const e=this._accessed;if(null==e||0===e.length)return;let t=this._handles;null==t&&(t=[],this._handles=t);for(let r=0;r<e.length;++r)t.push(e[r].observe(this));e.length=0}notifyChange(){this.onInvalidated(),this.onCommitted()}invalidate(){this.onInvalidated()}commit(){this.flags&=~y.v.Dirty,this.onCommitted()}_clearObservationHandles(){const e=this._handles;if(null!==e){for(let t=0;t<e.length;++t)e[t].remove();e.length=0}}onInvalidated(){~this.flags&y.v.Overriden&&(this.flags|=y.v.Dirty);const e=this._observers;if(e&&e.length>0)for(const t of e)t.onInvalidated()}onCommitted(){const e=this._observers;if(e&&e.length>0){const t=e.slice();for(const e of t)e.onCommitted()}}}class m{constructor(){this._values=new Map,this.multipleOriginsSupported=!1}clone(e){const t=new m;return this._values.forEach(((r,n)=>{e&&e.has(n)||t.set(n,(0,u.d9)(r))})),t}get(e){return this._values.get(e)}originOf(){return p.s3.USER}keys(){return[...this._values.keys()]}set(e,t){this._values.set(e,t)}delete(e){this._values.delete(e)}has(e){return this._values.has(e)}forEach(e){this._values.forEach(e)}}function _(e,t,r){return void 0!==e}function v(e,t,r,n){return!(void 0===e||null==r&&e.flags&y.v.NonNullable&&(n.lifecycle,d.F.INITIALIZING,1))}function w(e){return e&&"function"==typeof e.destroy}o.Z.getLogger("esri.core.accessorSupport.Properties");class O{constructor(e){this.host=e,this.propertiesByName=new Map,this.ctorArgs=null,this.destroyed=!1,this.lifecycle=d.F.INITIALIZING,this.store=new m,this._origin=p.s3.USER;const t=this.host.constructor.__accessorMetadata__;for(const e in t){const r=new b(e,t[e]);this.propertiesByName.set(e,r)}this.metadatas=t}initialize(){this.lifecycle=d.F.CONSTRUCTING}constructed(){this.lifecycle=d.F.CONSTRUCTED}destroy(){this.destroyed=!0;for(const[e,t]of this.propertiesByName){if(t.metadata.autoDestroy){const r=this.internalGet(e);r&&w(r)&&(r.destroy(),~t.flags&y.v.NonNullable&&this._internalSet(t,null))}t.destroy()}}get initialized(){return this.lifecycle!==d.F.INITIALIZING}get(e){const t=this.propertiesByName.get(e);if(t.metadata.get)return t.getComputed(this);(0,g.it)(t);const r=this.store;return r.has(e)?r.get(e):t.metadata.value}originOf(e){const t=this.store.originOf(e);if(void 0===t){const t=this.propertiesByName.get(e);if(void 0!==t&&t.flags&y.v.HasDefaultValue)return"defaults"}return(0,p.x3)(t)}has(e){return!!this.propertiesByName.has(e)&&this.store.has(e)}keys(){return[...this.propertiesByName.keys()]}internalGet(e){const t=this.propertiesByName.get(e);if(_(t))return this.store.has(e)?this.store.get(e):t.metadata.value}internalSet(e,t){const r=this.propertiesByName.get(e);_(r)&&this._internalSet(r,t)}getDependsInfo(e,t,r){const n=this.propertiesByName.get(t);if(!_(n))return"";const s=new Set,o=(0,g.LJ)({onObservableAccessed:e=>s.add(e),onTrackingEnd:()=>{}},(()=>n.metadata.get?.call(e)));let i=`${r}${e.declaredClass.split(".").pop()}.${t}: ${o}\n`;if(0===s.size)return i;r+=" ";for(const e of s)e instanceof b&&(i+=`${r}${e.propertyName}: undefined\n`);return i}setAtOrigin(e,t,r){const n=this.propertiesByName.get(e);if(_(n))return this._setAtOrigin(n,t,r)}isOverridden(e){const t=this.propertiesByName.get(e);return void 0!==t&&!!(t.flags&y.v.Overriden)}clearOverride(e){const t=this.propertiesByName.get(e);t&&t.flags&y.v.Overriden&&(t.flags&=~y.v.Overriden,t.notifyChange())}override(e,t){const r=this.propertiesByName.get(e);if(!v(r,0,t,this))return;const n=r.metadata.cast;if(n){const e=this._cast(n,t),{valid:r,value:s}=e;if(A.release(e),!r)return;t=s}r.flags|=y.v.Overriden,this._internalSet(r,t)}set(e,t){const r=this.propertiesByName.get(e);if(!v(r,0,t,this))return;const n=r.metadata.cast;if(n){const e=this._cast(n,t),{valid:r,value:s}=e;if(A.release(e),!r)return;t=s}const s=r.metadata.set;s?s.call(this.host,t):this._internalSet(r,t)}setDefaultOrigin(e){this._origin=(0,p.M9)(e)}getDefaultOrigin(){return(0,p.x3)(this._origin)}notifyChange(e){const t=this.propertiesByName.get(e);void 0!==t&&t.notifyChange()}invalidate(e){const t=this.propertiesByName.get(e);void 0!==t&&t.invalidate()}commit(e){const t=this.propertiesByName.get(e);void 0!==t&&t.commit()}_internalSet(e,t){const r=this.lifecycle!==d.F.INITIALIZING?this._origin:p.s3.DEFAULTS;this._setAtOrigin(e,t,r)}_setAtOrigin(e,t,r){const n=this.store,s=e.propertyName;n.has(s,r)&&(0,u.fS)(t,n.get(s))&&~e.flags&y.v.Overriden&&r===n.originOf(s)||(e.invalidate(),n.set(s,t,r),e.commit(),(0,g.mS)(this.host,e))}_cast(e,t){const r=A.acquire();return r.valid=!0,r.value=t,e&&(r.value=e.call(this.host,t,r)),r}}const A=new f.Z(class{constructor(){this.value=null,this.valid=!0}acquire(){this.valid=!0}release(){this.value=null}});var S=r(37697);var k;!function(e){e[e.Ignore=0]="Ignore",e[e.Destroy=1]="Destroy",e[e.ThrowError=2]="ThrowError"}(k||(k={}));var T,E,N=r(26258),j=r(5600),C=r(52011);function P(e){if(null==e)return{value:e};if(Array.isArray(e))return{type:[e[0]],value:null};switch(typeof e){case"object":return e.constructor?.__accessorMetadata__||e instanceof Date?{type:e.constructor,value:e}:e;case"boolean":return{type:Boolean,value:e};case"string":return{type:String,value:e};case"number":return{type:Number,value:e};case"function":return{type:e,value:null};default:return}}const M=Symbol("Accessor-Handles"),I=Symbol("Accessor-Initialized");class x{static createSubclass(e={}){if(Array.isArray(e))throw new Error("Multi-inheritance unsupported since 4.16");const{properties:t,declaredClass:r,constructor:n}=e;delete e.declaredClass,delete e.properties,delete e.constructor;const s=this;class o extends s{constructor(...e){super(...e),this.inherited=null,n&&n.apply(this,e)}}(0,l.fp)(o.prototype);for(const t in e){const r=e[t];o.prototype[t]="function"==typeof r?function(...e){const n=this.inherited;let o;this.inherited=function(...e){if(s.prototype[t])return s.prototype[t].apply(this,e)};try{o=r.apply(this,e)}catch(e){throw this.inherited=n,e}return this.inherited=n,o}:e[t]}for(const e in t){const r=P(t[e]);(0,j.Cb)(r)(o.prototype,e)}return(0,C.j)(r)(o)}constructor(...e){if(this[T]=null,this[E]=!1,this.constructor===x)throw new Error("[accessor] cannot instantiate Accessor. This can be fixed by creating a subclass of Accessor");const t=new O(this);Object.defineProperty(this,"__accessor__",{enumerable:!1,value:t}),e.length>0&&this.normalizeCtorArgs&&(t.ctorArgs=this.normalizeCtorArgs.apply(this,e))}postscript(e){const t=this.__accessor__,r=t.ctorArgs||e;t.initialize(),r&&(this.set(r),t.ctorArgs=null),t.constructed(),this.initialize(),this[I]=!0}initialize(){}[a.l](){this[M]=(0,i.SC)(this[M])}destroy(){this.destroyed||((0,N.BT)(this),this.__accessor__.destroy())}[Symbol.dispose](){this.destroy()}get constructed(){return this.__accessor__&&this.__accessor__.initialized||!1}get initialized(){return this[I]}get destroyed(){return this.__accessor__&&this.__accessor__.destroyed||!1}commitProperty(e){(0,c.U2)(this,e)}get(e){return(0,n.XV)(o.Z.getLogger(this),"`Accessor.get` is deprecated in favor of using optional chaining",{version:"4.28",see:"https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Optional_chaining"}),(0,c.U2)(this,e)}hasOwnProperty(e){return this.__accessor__?this.__accessor__.has(e):Object.prototype.hasOwnProperty.call(this,e)}keys(){return this.__accessor__?this.__accessor__.keys():[]}set(e,t){return(0,S.t)(this,e,t),this}watch(e,t,r){return(0,N.YP)(this,e,t,r)}addHandles(e,t){if(this.destroyed){const t=Array.isArray(e)?e:[e];for(const e of t)e.remove();return}let r=this[M];null==r&&(r=this[M]=new s.Z),r.add(e,t)}removeHandles(e){const t=this[M];null!=t&&t.remove(e)}removeAllHandles(){const e=this[M];null!=e&&e.removeAll()}hasHandles(e){const t=this[M];return null!=t&&t.has(e)}_override(e,t){void 0===t?this.__accessor__.clearOverride(e):this.__accessor__.override(e,t)}_clearOverride(e){return this.__accessor__.clearOverride(e)}_overrideIfSome(e,t){null==t?this.__accessor__.clearOverride(e):this.__accessor__.override(e,t)}_isOverridden(e){return this.__accessor__.isOverridden(e)}notifyChange(e){this.__accessor__.notifyChange(e)}_get(e){return this.__accessor__.internalGet(e)}_set(e,t){return this.__accessor__.internalSet(e,t),this}}T=M,E=I},3894:(e,t,r)=>{"use strict";r.d(t,{Z:()=>o});var n=r(71143);function s(e){e.length=0}class o{constructor(e=50,t=50){this._pool=new n.Z(Array,void 0,s,t,e)}acquire(){return this._pool.acquire()}release(e){this._pool.release(e)}prune(){this._pool.prune(0)}static acquire(){return i.acquire()}static release(e){return i.release(e)}static prune(){i.prune()}}const i=new o(100)},20102:(e,t,r)=>{"use strict";r.d(t,{Z:()=>i});var n=r(22974),s=r(92604),o=r(58896);class i extends o.Z{constructor(e,t,r){super(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 s.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"},61247:(e,t,r)=>{"use strict";r.d(t,{Z:()=>s});var n=r(66374);class s{constructor(){this._groups=new Map}destroy(){this.removeAll()}get size(){let e=0;return this._groups.forEach((t=>{e+=t.length})),e}add(e,t){if((0,n.TW)(e)){const r=this._getOrCreateGroup(t);for(const t of e)this._isHandle(t)&&r.push(t)}else this._isHandle(e)&&this._getOrCreateGroup(t).push(e);return this}forEach(e,t){if("function"==typeof e)this._groups.forEach((t=>t.forEach(e)));else{const r=this._getGroup(e);r&&t&&r.forEach(t)}}has(e){return this._groups.has(this._ensureGroupKey(e))}remove(e){if("string"!=typeof e&&(0,n.TW)(e)){for(const t of e)this.remove(t);return this}return this.has(e)?(this._removeAllFromGroup(this._getGroup(e)),this._groups.delete(this._ensureGroupKey(e)),this):this}removeAll(){return this._groups.forEach((e=>this._removeAllFromGroup(e))),this._groups.clear(),this}_isHandle(e){return e&&(!!e.remove||e instanceof s)}_getOrCreateGroup(e){if(this.has(e))return this._getGroup(e);const t=[];return this._groups.set(this._ensureGroupKey(e),t),t}_getGroup(e){return this._groups.get(this._ensureGroupKey(e))}_ensureGroupKey(e){return e||"_default_"}_removeAllFromGroup(e){for(const t of e)t instanceof s?t.removeAll():t.remove()}}},96674:(e,t,r)=>{"use strict";r.d(t,{wq:()=>b,eC:()=>p,AK:()=>y});var n=r(43697),s=r(92036),o=r(22974),i=r(31263);class a{constructor(){this._values=new Map,this.multipleOriginsSupported=!1}clone(e){const t=new a;return this._values.forEach(((r,n)=>{e&&e.has(n)||t.set(n,(0,o.d9)(r.value),r.origin)})),t}get(e,t){t=this._normalizeOrigin(t);const r=this._values.get(e);return null==t||r?.origin===t?r?.value:void 0}originOf(e){return this._values.get(e)?.origin??i.s3.USER}keys(e){e=this._normalizeOrigin(e);const t=[...this._values.keys()];return null==e?t:t.filter((t=>this._values.get(t)?.origin===e))}set(e,t,r){if((r=this._normalizeOrigin(r))===i.s3.DEFAULTS){const t=this._values.get(e);if(null!=t?.origin&&t.origin>r)return}this._values.set(e,new c(t,r))}delete(e,t){null!=(t=this._normalizeOrigin(t))&&this._values.get(e)?.origin!==t||this._values.delete(e)}has(e,t){return null!=(t=this._normalizeOrigin(t))?this._values.get(e)?.origin===t:this._values.has(e)}forEach(e){this._values.forEach((({value:t},r)=>e(t,r)))}_normalizeOrigin(e){if(null!=e)return e===i.s3.DEFAULTS?e:i.s3.USER}}class c{constructor(e,t){this.value=e,this.origin=t}}var l=r(41103),u=r(50549),f=r(1153),d=r(76169),h=r(52011);const p=e=>{let t=class extends e{constructor(...e){super(...e);const t=(0,f.vw)(this),r=t.store,n=new a;t.store=n,(0,l.M)(t,r,n)}read(e,t){(0,u.i)(this,e,t)}write(e,t){return(0,d.c)(this,e??{},t)}toJSON(e){return this.write({},e)}static fromJSON(e,t){return g.call(this,e,t)}};return t=(0,n._)([(0,h.j)("esri.core.JSONSupport")],t),t.prototype.toJSON.isDefaultToJSON=!0,t};function g(e,t){if(!e)return null;if(e.declaredClass)throw new Error("JSON object is already hydrated");const r=new this;return r.read(e,t),r}function y(e){return e&&"object"==typeof e&&"toJSON"in e&&"function"==typeof e.toJSON}let b=class extends(p(s.Z)){};b=(0,n._)([(0,h.j)("esri.core.JSONSupport")],b)},92604:(e,t,r)=>{"use strict";r.d(t,{Z:()=>i});var n=r(68773),s=(r(80442),r(19153));const o={info:0,warn:1,error:2,none:3};class i{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,i._loggers.set(this.module,this);const t=this.module.lastIndexOf(".");-1!==t&&(this._parent=i.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 test(){return{resetLoggers(e=new Map){const t=i._loggers;return i._loggers=e,t},set throttlingDisabled(e){i._throttlingDisabled=e}}}static getLogger(e){return e="string"!=typeof e?e.declaredClass:e,i._loggers.get(e)||new i({module:e})}_log(e,t,...r){if(this._matchLevel(e)){if("always"!==t&&!i._throttlingDisabled){const n=this._argsToKey(r),s=this._loggedMessages[e].get(n);if("once"===t&&null!=s||"oncePerTick"===t&&s&&s>=i._tickCounter)return;this._loggedMessages[e].set(n,i._tickCounter),i._scheduleTickCounterIncrement()}for(const t of n.default.log.interceptors)if(t(e,this.module,...r))return;this._inheritedWriter()(e,this.module,...r)}}_parentWithMember(e,t){let r=this;for(;null!=r;){const t=r[e];if(null!=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.default.log.level||"warn";return o[this._parentWithMember("level",t)]<=o[e]}_argsToKey(...e){return(0,s.hP)(JSON.stringify(e,((e,t)=>"object"!=typeof t||Array.isArray(t)?t:"[Object]")))}static _scheduleTickCounterIncrement(){i._tickCounterScheduled||(i._tickCounterScheduled=!0,Promise.resolve().then((()=>{i._tickCounter++,i._tickCounterScheduled=!1})))}}i._loggers=new Map,i._tickCounter=0,i._tickCounterScheduled=!1,i._throttlingDisabled=!1},30175:(e,t,r)=>{"use strict";function n(e,t,r){const n=e.get(t);if(void 0!==n)return n;const s=r();return e.set(t,s),s}r.d(t,{s1:()=>n})},58896:(e,t,r)=>{"use strict";r.d(t,{Z:()=>s});var n=r(78286);class s{constructor(e,t,r){this.name=e,this.details=r,this.message=(t&&function(e,t){return e.replaceAll(/\$\{([^\s\:\}]*)(?:\:([^\s\:\}]+))?\}/g,((e,r)=>""===r?"$":((0,n.hS)(r,t)??"").toString()))}(t,r))??""}toString(){return"["+this.name+"]: "+this.message}}},71143:(e,t,r)=>{"use strict";r.d(t,{Z:()=>n});class n{constructor(e,t,r,n=1,s=0){if(this._ctor=e,this._acquireFunction=t,this._releaseFunction=r,this.allocationSize=n,this._pool=new Array(s),this._initialSize=s,this._ctor)for(let e=0;e<s;e++)this._pool[e]=new this._ctor;this.allocationSize=Math.max(n,1)}destroy(){this.prune(0)}acquire(...e){let t;if(n.test.disabled)t=new this._ctor;else{if(0===this._pool.length){const e=this.allocationSize;for(let t=0;t<e;t++)this._pool[t]=new this._ctor}t=this._pool.pop()}return this._acquireFunction?this._acquireFunction(t,...e):function(e){return e?.acquire&&"function"==typeof e.acquire}(t)&&t.acquire(...e),t}release(e){var t;e&&!n.test.disabled&&(this._releaseFunction?this._releaseFunction(e):(t=e,t?.release&&"function"==typeof t.release&&e.release()),this._pool.push(e))}prune(e=this._initialSize){if(!(e>=this._pool.length)){for(let t=e;t<this._pool.length;++t){const e=this._pool[t];this._dispose(e)}this._pool.length=e}}_dispose(e){e.dispose&&"function"==typeof e.dispose&&e.dispose()}}n.test={disabled:!1}},54790:(e,t,r)=>{"use strict";r.d(t,{Z:()=>n});class n{constructor(e,t=30){this.name=e,this._counter=0,this._samples=new Array(t)}record(e){null!=e&&(this._samples[++this._counter%this._samples.length]=e)}get median(){return this._samples.slice().sort(((e,t)=>e-t))[Math.floor(this._samples.length/2)]}get average(){return this._samples.reduce(((e,t)=>e+t),0)/this._samples.length}get last(){return this._samples[this._counter%this._samples.length]}}},44553:(e,t,r)=>{"use strict";r.d(t,{Z:()=>i});var n,s=r(67676);!function(e){const t=(e,t,r,n)=>{let s=t,o=t;const i=r>>>1,a=e[s-1];for(;o<=i;){o=s<<1,o<r&&n(e[o-1],e[o])<0&&++o;const t=e[o-1];if(n(t,a)<=0)break;e[s-1]=t,s=o}e[s-1]=a},r=(e,t)=>e<t?-1:e>t?1:0;e.sort=function(e,n,s,o){void 0===n&&(n=0),void 0===s&&(s=e.length),void 0===o&&(o=r);for(let r=s>>>1;r>n;r--)t(e,r,s,o);const i=n+1;for(let r=s-1;r>n;r--){const s=e[n];e[n]=e[r],e[r]=s,t(e,i,r,o)}},e.iterableSort=function*(e,n,s,o){void 0===n&&(n=0),void 0===s&&(s=e.length),void 0===o&&(o=r);for(let r=s>>>1;r>n;r--)t(e,r,s,o),yield;const i=n+1;for(let r=s-1;r>n;r--){const s=e[n];e[n]=e[r],e[r]=s,t(e,i,r,o),yield}}}(n||(n={}));const o=n;class i{constructor(e){this.data=[],this._length=0,this._allocator=void 0,this._deallocator=()=>null,this._shrink=()=>{},this._hint=new s.SO,e&&(e.initialSize&&(this.data=new Array(e.initialSize)),e.allocator&&(this._allocator=e.allocator),void 0!==e.deallocator&&(this._deallocator=e.deallocator),e.shrink&&(this._shrink=()=>a(this)))}toArray(){return this.data.slice(0,this.length)}filter(e){const t=new Array;for(let r=0;r<this._length;r++){const n=this.data[r];e(n)&&t.push(n)}return t}at(e){if((e=Math.trunc(e)||0)<0&&(e+=this._length),!(e<0||e>=this._length))return this.data[e]}includes(e,t){const r=this.data.indexOf(e,t);return-1!==r&&r<this.length}get length(){return this._length}set length(e){if(e>this._length){if(this._allocator){for(;this._length<e;)this.data[this._length++]=this._allocator(this.data[this._length]);return}this._length=e}else{if(this._deallocator)for(let t=e;t<this._length;++t)this.data[t]=this._deallocator(this.data[t]);this._length=e,this._shrink()}}clear(){this.length=0}prune(){this.clear(),this.data=[]}push(e){this.data[this._length++]=e}pushArray(e,t=e.length){for(let r=0;r<t;r++)this.data[this._length++]=e[r]}fill(e,t){for(let r=0;r<t;r++)this.data[this._length++]=e}pushNew(){this._allocator&&(this.data[this.length]=this._allocator(this.data[this.length]));const e=this.data[this._length];return++this._length,e}unshift(e){this.data.unshift(e),this._length++,a(this)}pop(){if(0===this.length)return;const e=this.data[this.length-1];return this.length=this.length-1,this._shrink(),e}remove(e){const t=(0,s.cq)(this.data,e,this.length,this._hint);if(-1!==t)return this.data.splice(t,1),this.length=this.length-1,e}removeUnordered(e){return this.removeUnorderedIndex((0,s.cq)(this.data,e,this.length,this._hint))}removeUnorderedIndex(e){if(!(e>=this.length||e<0))return this.swapElements(e,this.length-1),this.pop()}removeUnorderedMany(e,t=e.length,r){this.length=(0,s.FY)(this.data,e,this.length,t,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(e,t){if(e>=this.length||t>=this.length||e===t)return;const r=this.data[e];this.data[e]=this.data[t],this.data[t]=r}sort(e){o.sort(this.data,0,this.length,e)}iterableSort(e){return o.iterableSort(this.data,0,this.length,e)}some(e,t){for(let r=0;r<this.length;++r)if(e.call(t,this.data[r],r,this.data))return!0;return!1}find(e,t){for(let r=0;r<this.length;++r){const n=this.data[r];if(e.call(t,n,r))return n}}filterInPlace(e,t){let r=0;for(let n=0;n<this._length;++n){const s=this.data[n];e.call(t,s,n,this.data)&&(this.data[n]=this.data[r],this.data[r]=s,r++)}if(this._deallocator)for(let e=r;e<this._length;e++)this.data[e]=this._deallocator(this.data[e]);return this._length=r,this._shrink(),this}forAll(e,t){const r=this.length,n=this.data;for(let s=0;s<r;++s)e.call(t,n[s],s,n)}forEach(e,t){for(let r=0;r<this.length;++r)e.call(t,this.data[r],r,this.data)}map(e,t){const r=new Array(this.length);for(let n=0;n<this.length;++n)r[n]=e.call(t,this.data[n],n,this.data);return r}reduce(e,t){let r=t;for(let t=0;t<this.length;++t)r=e(r,this.data[t],t,this.data);return r}has(e){const t=this.length,r=this.data;for(let n=0;n<t;++n)if(r[n]===e)return!0;return!1}}function a(e){e.data.length>1.5*e.length&&(e.data.length=Math.floor(1.1*e.length))}},77734:(e,t,r)=>{"use strict";r.d(t,{Z:()=>n});class n{constructor(e=1){this._seed=e}set seed(e){this._seed=e??Math.random()*n._m}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},20941:(e,t,r)=>{"use strict";r.d(t,{Z:()=>s});var n=r(58896);class s extends n.Z{constructor(e,t,r){super(e,t,r)}}s.prototype.type="warning"},42100:(e,t,r)=>{"use strict";r.d(t,{s:()=>i});var n=r(50758),s=r(67676);class o{constructor(e,t){this._observers=e,this._observer=t}remove(){(0,s.Od)(this._observers,this._observer)}}class i{constructor(){this._observers=null,this.destroyed=!1}observe(e){if(this.destroyed||e.destroyed)return a;null==this._observers&&(this._observers=[]);const t=this._observers;let r=!1,n=!1;const s=t.length;for(let o=0;o<s;++o){const s=t[o];if(s.destroyed)n=!0;else if(s===e){r=!0;break}}return r||(t.push(e),n&&this._removeDestroyedObservers()),new o(t,e)}_removeDestroyedObservers(){const e=this._observers;if(!e||0===e.length)return;const t=e.length;let r=0;for(let n=0;n<t;++n){for(;n+r<t&&e[n+r].destroyed;)++r;if(r>0){if(!(n+r<t))break;e[n]=e[n+r]}}e.length=t-r}destroy(){if(this.destroyed)return;this.destroyed=!0;const e=this._observers;if(null!=e){for(const t of e)t.onCommitted();this._observers=null}}}const a=(0,n.kB)()},31263:(e,t,r)=>{"use strict";var n;r.d(t,{M9:()=>o,Wm:()=>a,kk:()=>s,s3:()=>n,x3:()=>i}),function(e){e[e.DEFAULTS=0]="DEFAULTS",e[e.COMPUTED=1]="COMPUTED",e[e.SERVICE=2]="SERVICE",e[e.PORTAL_ITEM=3]="PORTAL_ITEM",e[e.WEB_SCENE=4]="WEB_SCENE",e[e.WEB_MAP=5]="WEB_MAP",e[e.LINK_CHART=6]="LINK_CHART",e[e.USER=7]="USER"}(n||(n={}));const s=n.USER+1;function o(e){switch(e){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"link-chart":return n.LINK_CHART;case"user":return n.USER;default:return null}}function i(e){switch(e){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.LINK_CHART:return"link-chart";case n.USER:return"user"}}function a(e){return i(e)}},88022:(e,t,r)=>{"use strict";r.d(t,{l:()=>n});const n=Symbol("Accessor-beforeDestroy")},5600:(e,t,r)=>{"use strict";r.d(t,{CJ:()=>l,Cb:()=>c,Eg:()=>u});var n=r(92604),s=r(75215),o=r(67723),i=r(7628),a=r(37697);function c(e={}){return(t,r)=>{if(t===Function.prototype)throw new Error(`Inappropriate use of @property() on a static field: ${t.name}.${r}. Accessor does not support static properties.`);const c=Object.getOwnPropertyDescriptor(t,r),l=(0,i.Oe)(t,r);c&&(c.get||c.set?(l.get=c.get||l.get,l.set=c.set||l.set):"value"in c&&("value"in e&&n.Z.getLogger("esri.core.accessorSupport.decorators.property").warn(`@property() will redefine the value of "${r}" on "${t.constructor.name}" already defined in the metadata`,e),l.value=e.value=c.value)),null!=e.readOnly&&(l.readOnly=e.readOnly);const f=e.aliasOf;if(f){const e="string"==typeof f?f:f.source,t="string"==typeof f?null:!0===f.overridable;let n;l.dependsOn=[e],l.get=function(){let t=(0,o.U2)(this,e);if("function"==typeof t){n||(n=e.split(".").slice(0,-1).join("."));const r=(0,o.U2)(this,n);r&&(t=t.bind(r))}return t},l.readOnly||(l.set=t?function(e){this._override(r,e)}:function(t){(0,a.t)(this,e,t)})}const d=e.type,h=e.types;l.cast||(d?l.cast=function(e){let t=0,r=e;if((0,s.AY)(e))return(0,s.sY)(e);for(;Array.isArray(r)&&1===r.length&&"string"!=typeof r[0]&&"number"!=typeof r[0];)r=r[0],t++;const n=r;if((0,s.gB)(n))return 0===t?(0,s.i$)(n):(0,s.Iu)((0,s.i$)(n),t);if(1===t)return(0,s.rY)(n);if(t>1)return(0,s.di)(n,t);const o=e;return o.from?o.from:(0,s.se)(o)}(d):h&&(Array.isArray(h)?l.cast=(0,s.Ls)((0,s.N7)(h[0])):l.cast=(0,s.N7)(h))),(0,i.tz)(l,e),e.range&&(l.cast=u(l.cast,e.range))}}function l(e,t,r){const n=(0,i.Oe)(e,r);n.json||(n.json={});let s=n.json;return void 0!==t&&(s.origins||(s.origins={}),s.origins[t]||(s.origins[t]={}),s=s.origins[t]),s}function u(e,t){return r=>{let n=+e(r);return null!=t.step&&(n=Math.round(n/t.step)*t.step),null!=t.min&&(n=Math.max(t.min,n)),null!=t.max&&(n=Math.min(t.max,n)),n}}},52011:(e,t,r)=>{"use strict";r.d(t,{j:()=>u}),r(80442);var n=r(88022),s=r(97831),o=r(7628),i=r(58971),a=r(53906);const c=new Set,l=new Set;function u(e){return t=>{e??="esri.core.Accessor",t.prototype.declaredClass=e,d(t);const r=[],s=[];let i=t.prototype;for(;i;)i.hasOwnProperty("initialize")&&!c.has(i.initialize)&&(c.add(i.initialize),r.push(i.initialize)),i.hasOwnProperty("destroy")&&!l.has(i.destroy)&&(l.add(i.destroy),s.push(i.destroy)),i=Object.getPrototypeOf(i);c.clear(),l.clear();const a=class extends t{constructor(...e){if(super(...e),this.constructor===a&&"function"==typeof this.postscript){if(r.length&&Object.defineProperty(this,"initialize",{enumerable:!1,configurable:!0,value(){for(let e=r.length-1;e>=0;e--)r[e].call(this)}}),s.length){let e=!1;const t=this[n.l];Object.defineProperty(this,"destroy",{enumerable:!1,configurable:!0,value(){if(!e){e=!0,t.call(this);for(let e=0;e<s.length;e++)s[e].call(this)}}})}Object.defineProperty(this,Symbol.dispose,{enumerable:!1,configurable:!0,value(){this.destroy()}}),this.postscript(...e)}}};a.__accessorMetadata__=(0,o.fp)(t.prototype),a.prototype.declaredClass=e;const u=(e||"AccessorSubclass").split(".").slice(-1)[0];return Object.defineProperty(a,"name",{value:u,configurable:!0}),a}}function f(e,t){return null==t.get?function(){const t=this.__accessor__,r=t.propertiesByName.get(e);if(void 0===r)return;(0,i.it)(r);const n=t.store;return n.has(e)?n.get(e):r.metadata.value}:function(){const t=this.__accessor__,r=t.propertiesByName.get(e);if(void 0!==r)return r.getComputed(t)}}function d(e){const t=e.prototype,r=(0,o.fp)(t),n={};for(const e of Object.getOwnPropertyNames(r)){const t=r[e];(0,a.OM)(t),n[e]={enumerable:!0,configurable:!0,get:f(e,t),set(r){const n=this.__accessor__;if(void 0!==n){if(!Object.isFrozen(this)){if(n.initialized&&t.readOnly)throw new TypeError(`[accessor] cannot assign to read-only property '${e}' of ${this.declaredClass}`);if(n.lifecycle===s.F.CONSTRUCTED&&t.constructOnly)throw new TypeError(`[accessor] cannot assign to construct-only property '${e}' of ${this.declaredClass}`);n.set(e,r)}}else Object.defineProperty(this,e,{enumerable:!0,configurable:!0,writable:!0,value:r})}}}Object.defineProperties(e.prototype,n)}},41103:(e,t,r)=>{"use strict";r.d(t,{M:()=>s});var n=r(31263);function s(e,t,r){t.keys().forEach((e=>{r.set(e,t.get(e),n.s3.DEFAULTS)}));const s=e.metadatas;Object.keys(s).forEach((t=>{e.internalGet(t)&&r.set(t,e.internalGet(t),n.s3.DEFAULTS)}))}},75215:(e,t,r)=>{"use strict";r.d(t,{AY:()=>C,Iu:()=>A,Ls:()=>v,N7:()=>E,TJ:()=>y,V5:()=>j,Zs:()=>c,di:()=>S,gB:()=>k,i$:()=>T,q9:()=>l,rY:()=>w,sY:()=>P,se:()=>_,vU:()=>u,z8:()=>N}),r(80442);var n=r(92604),s=r(30175);const o=n.Z.getLogger("esri.core.accessorSupport.ensureTypes");function i(e){return null==e?e:new Date(e)}function a(e){return null==e?e:!!e}function c(e){return null==e?e:e.toString()}function l(e){return null==e?e:(e=parseFloat(e),isNaN(e)?0:e)}function u(e){return null==e?e:Math.round(parseFloat(e))}function f(e){return e?.constructor&&void 0!==e.constructor.__accessorMetadata__}function d(e,t){return null!=t&&e&&!(t instanceof e)}function h(e){return e&&"isCollection"in e}function p(e){return e?.Type?"function"==typeof e.Type?e.Type:e.Type.base:null}function g(e,t){return!!f(t)&&(o.error("Accessor#set","Assigning an instance of '"+(t.declaredClass||"unknown")+"' which is not a subclass of '"+b(e)+"'"),!0)}function y(e,t){return null==t?t:h(e)?function(e,t){if(!t?.constructor||!h(t.constructor))return g(e,t)?t:new e(t);const r=p(e.prototype.itemType),n=p(t.constructor.prototype.itemType);return r?n?r===n?t:r.prototype.isPrototypeOf(n.prototype)?new e(t):(g(e,t),t):new e(t):t}(e,t):d(e,t)?g(e,t)?t:new e(t):t}function b(e){return e?.prototype?.declaredClass||"unknown"}const m=new WeakMap;function _(e,t){const r=function(e){switch(e){case Number:return l;case N:return u;case Boolean:return a;case String:return c;case Date:return i;default:return(0,s.s1)(m,e,(()=>y.bind(null,e)))}}(e);return 1===arguments.length?r:r(t)}function v(e,t,r){return 1===arguments.length?v.bind(null,e):t?Array.isArray(t)?t.map((t=>e(t,r))):[e(t,r)]:t}function w(e,t){return 1===arguments.length?v((t=>_(e,t))):v((t=>_(e,t)),t)}function O(e,t,r){return 0!==t&&Array.isArray(r)?r.map((r=>O(e,t-1,r))):e(r)}function A(e,t,r){if(2===arguments.length)return r=>A(e,t,r);if(!r)return r;r=O(e,t,r);let n=t,s=r;for(;n>0&&Array.isArray(s);)n--,s=s[0];if(void 0!==s)for(let e=0;e<n;e++)r=[r];return r}function S(e,t,r){return 2===arguments.length?A((t=>_(e,t)),t):A((t=>_(e,t)),t,r)}function k(e){return!!Array.isArray(e)&&!e.some((t=>{const r=typeof t;return!("string"===r||"number"===r||"function"===r&&e.length>1)}))}function T(e,t){if(2===arguments.length)return T(e).call(null,t);const r=new Set,n=e.filter((e=>"function"!=typeof e)),s=e.filter((e=>"function"==typeof e));for(const t of e)"string"!=typeof t&&"number"!=typeof t||r.add(t);let i=null,a=null;return(e,t)=>{if(null==e)return e;const c=typeof e,l="string"===c||"number"===c;return l&&(r.has(e)||s.some((e=>"string"===c&&e===String||"number"===c&&e===Number)))||"object"===c&&s.some((t=>!d(e,t)))?e:(l&&n.length?(i||(i=n.map((e=>"string"==typeof e?`'${e}'`:`${e}`)).join(", ")),o.error("Accessor#set",`'${e}' is not a valid value for this property, only the following values are valid: ${i}`)):"object"==typeof e&&s.length?(a||(a=s.map((e=>b(e))).join(", ")),o.error("Accessor#set",`'${e}' is not a valid value for this property, value must be one of ${a}`)):o.error("Accessor#set",`'${e}' is not a valid value for this property`),t&&(t.valid=!1),null)}}function E(e,t){if(2===arguments.length)return E(e).call(null,t);const r={},n=[],s=[];for(const t in e.typeMap){const o=e.typeMap[t];r[t]=_(o),n.push(b(o)),s.push(t)}const i=()=>`'${n.join("', '")}'`,a=()=>`'${s.join("', '")}'`,c="string"==typeof e.key?t=>t[e.key]:e.key;return t=>{if(e.base&&!d(e.base,t))return t;if(null==t)return t;const n=c(t)||e.defaultKeyValue,s=r[n];if(!s)return o.error("Accessor#set",`Invalid property value, value needs to be one of ${i()}, or a plain object that can autocast (having .type = ${a()})`),null;if(!d(e.typeMap[n],t))return t;if("string"==typeof e.key&&!f(t)){const r={};for(const n in t)n!==e.key&&(r[n]=t[n]);return s(r)}return s(t)}}class N{}const j={native:e=>({type:"native",value:e}),array:e=>({type:"array",value:e}),oneOf:e=>({type:"one-of",values:e})};function C(e){if(!e||!("type"in e))return!1;switch(e.type){case"native":case"array":case"one-of":return!0}return!1}function P(e){switch(e.type){case"native":return _(e.value);case"array":return v(P(e.value));case"one-of":return function(e){let t=null;return(r,n)=>I(r,e)?r:(null==t&&(t=M(e)),o.error("Accessor#set",`Invalid property value, value needs to be of type ${t}`),n&&(n.valid=!1),null)}(e);default:return null}}function M(e){switch(e.type){case"native":switch(e.value){case Number:return"number";case String:return"string";case Boolean:return"boolean";case N:return"integer";case Date:return"date";default:return b(e.value)}case"array":return`array of ${M(e.value)}`;case"one-of":{const t=e.values.map((e=>M(e)));return`one of ${t.slice(0,-1)} or ${t[t.length-1]}`}}return"unknown"}function I(e,t){if(null==e)return!0;switch(t.type){case"native":switch(t.value){case Number:case N:return"number"==typeof e;case Boolean:return"boolean"==typeof e;case String:return"string"==typeof e}return e instanceof t.value;case"array":return!!Array.isArray(e)&&!e.some((e=>!I(e,t.value)));case"one-of":return t.values.some((t=>I(e,t)))}}},53906:(e,t,r)=>{"use strict";r.d(t,{hk:()=>u,HS:()=>f,Ah:()=>d,OM:()=>b});var n=r(75215),s=r(63213);function o(e){if(e.json||(e.json={}),a(e.json),c(e.json),i(e.json),e.json.origins)for(const t in e.json.origins)a(e.json.origins[t]),c(e.json.origins[t]),i(e.json.origins[t]);return!0}function i(e){e.name&&(e.read&&"object"==typeof e.read?void 0===e.read.source&&(e.read.source=e.name):e.read={source:e.name},e.write&&"object"==typeof e.write?void 0===e.write.target&&(e.write.target=e.name):e.write={target:e.name})}function a(e){"boolean"==typeof e.read?e.read={enabled:e.read}:"function"==typeof e.read?e.read={enabled:!0,reader:e.read}:e.read&&"object"==typeof e.read&&void 0===e.read.enabled&&(e.read.enabled=!0)}function c(e){"boolean"==typeof e.write?e.write={enabled:e.write}:"function"==typeof e.write?e.write={enabled:!0,writer:e.write}:e.write&&"object"==typeof e.write&&void 0===e.write.enabled&&(e.write.enabled=!0)}var l=r(827);function u(e,t){return h(e,"any",t?.origin)}function f(e,t){return h(e,"read",t?.origin)}function d(e,t){return h(e,"write",t?.origin)}function h(e,t,r){let n=e?.json;if(n?.origins&&r){let e;e="link-chart"===r?n.origins[r]&&("any"===t||t in n.origins[r])?n.origins[r]:n.origins["web-map"]:n.origins[r],e&&("any"===t||t in e)&&(n=e)}return n}function p(e){return e.type?g(e):y(e)}function g(e){if(!e.type)return;let t=0,r=e.type;for(;Array.isArray(r)&&!(0,n.gB)(r);)r=r[0],t++;return{type:r,ndimArray:t}}function y(e){if(!e.types)return;let t=0,r=e.types;for(;Array.isArray(r);)r=r[0],t++;return{types:r,ndimArray:t}}function b(e){o(e)&&(function(e){if(e.json&&e.json.origins){const t=e.json.origins,r={"web-document":["web-scene","web-map"]};for(const e in r)if(t[e]){const n=t[e];r[e].forEach((e=>{t[e]=n})),delete t[e]}}}(e),function(e){const t=function(e){return e.json.types?y(e.json):e.type?g(e):y(e)}(e);if(e.json.origins)for(const r in e.json.origins){const n=e.json.origins[r],o=n.types?p(n):t;(0,s.U)(o,n,!1),n.types&&!n.write&&e.json.write&&e.json.write.enabled&&(n.write={...e.json.write}),(0,l.U)(o,n)}(0,s.U)(t,e.json,!0),(0,l.U)(t,e.json)}(e))}},63213:(e,t,r)=>{"use strict";r.d(t,{U:()=>l,d:()=>u});var n=r(92604),s=r(78286),o=r(20941),i=r(7628),a=r(14062);const c=n.Z.getLogger("esri.core.accessorSupport.extensions.serializableProperty.reader");function l(e,t,r){e&&(!r&&!t.read||t.read?.reader||!1===t.read?.enabled||function(e){return"types"in e?y(e.types):g(e.type)}(e)&&(0,s.RB)("read.reader",u(e),t))}function u(e){const t=e.ndimArray??0;if(t>1)return function(e){const t=f(e),r=d.bind(null,t),n=e.ndimArray??0;return(e,t,s)=>{if(null==e)return e;e=r(e,s,n);let o=n,i=e;for(;o>0&&Array.isArray(i);)o--,i=i[0];if(void 0!==i)for(let t=0;t<o;t++)e=[e];return e}}(e);if(1===t)return h(e);if("type"in e&&p(e.type)){const t=e.type.prototype?.itemType?.Type,r=h("function"==typeof t?{type:t}:{types:t});return(t,n,s)=>{const o=r(t,n,s);return o?new e.type(o):o}}return f(e)}function f(e){return"type"in e?function(e){return e.prototype.read?(t,r,n)=>{if(null==t)return t;const s=typeof t;if("object"!==s)return void c.error(`Expected JSON value of type 'object' to deserialize type '${e.prototype.declaredClass}', but got '${s}'`);const o=new e;return o.read(t,n),o}:e.fromJSON}(e.type):function(e){let t=null;const r=e.errorContext??"type",n=e.validate;return(s,a,l)=>{if(null==s)return s;const u=typeof s;if("object"!==u)return void c.error(`Expected JSON value of type 'object' to deserialize, but got '${u}'`);t||(t=function(e){const t={};for(const r in e.typeMap){const n=e.typeMap[r],s=(0,i.fp)(n.prototype);if("function"==typeof e.key)continue;const o=s[e.key];if(!o)continue;o.json?.type&&Array.isArray(o.json.type)&&1===o.json.type.length&&"string"==typeof o.json.type[0]&&(t[o.json.type[0]]=n);const a=o.json?.write;if(!a?.writer){t[r]=n;continue}const c=a.target,l="string"==typeof c?c:e.key,u={};a.writer(r,u,l),u[l]&&(t[u[l]]=n)}return t}(e));const f=e.key;if("string"!=typeof f)return;const d=s[f],h=d?t[d]:e.defaultKeyValue?e.typeMap[e.defaultKeyValue]:void 0;if(!h){const e=`Type '${d||"unknown"}' is not supported`;return l?.messages&&s&&l.messages.push(new o.Z(`${r}:unsupported`,e,{definition:s,context:l})),void c.error(e)}const p=new h;return p.read(s,l),n?n(p):p}}(e.types)}function d(e,t,r,n){return 0!==n&&Array.isArray(t)?t.map((t=>d(e,t,r,n-1))):e(t,void 0,r)}function h(e){const t=f(e);return(e,r,n)=>{if(null==e)return e;if(Array.isArray(e)){const r=[];for(const s of e){const e=t(s,void 0,n);void 0!==e&&r.push(e)}return r}const s=t(e,void 0,n);return void 0!==s?[s]:void 0}}function p(e){if(!(0,a.u)(e))return!1;const t=e.prototype.itemType;return!(!t||!t.Type)&&("function"==typeof t.Type?g(t.Type):y(t.Type))}function g(e){return!Array.isArray(e)&&!!e&&e.prototype&&("read"in e.prototype||"fromJSON"in e||p(e))}function y(e){for(const t in e.typeMap)if(!g(e.typeMap[t]))return!1;return!0}},14062:(e,t,r)=>{"use strict";function n(e){return!!e&&e.prototype?.declaredClass&&0===e.prototype.declaredClass.indexOf("esri.core.Collection")}r.d(t,{u:()=>n})},827:(e,t,r)=>{"use strict";r.d(t,{U:()=>a,k:()=>f});var n=r(20102),s=r(92604),o=r(78286),i=r(14062);function a(e,t){if(!t.write||t.write.writer||!1===t.write.enabled&&!t.write.overridePolicy)return;const r=e?.ndimArray??0;e&&(1===r||"type"in e&&(0,i.u)(e.type))?t.write.writer=d:r>1?t.write.writer=function(e){return(t,r,n,s)=>{let i;if(null===t)i=null;else{i=h(t,s,e);let r=e,n=i;for(;r>0&&Array.isArray(n);)r--,n=n[0];if(void 0!==n)for(let e=0;e<r;e++)i=[i]}(0,o.RB)(n,i,r)}}(r):t.types?Array.isArray(t.types)?t.write.writer=function(e){return(t,r,n,s)=>t&&Array.isArray(t)?l(t.filter((t=>c(t,e,s))),r,n,s):l(t,r,n,s)}(t.types[0]):t.write.writer=function(e){return(t,r,n,s)=>t?c(t,e,s)?l(t,r,n,s):void 0:l(t,r,n,s)}(t.types):t.write.writer=l}function c(e,t,r){for(const r in t.typeMap)if(e instanceof t.typeMap[r])return!0;if(r?.messages){const o=t.errorContext??"type",i=`Values of type '${("function"!=typeof t.key?e[t.key]:e.declaredClass)??"Unknown"}' cannot be written`;r&&r.messages&&e&&r.messages.push(new n.Z(`${o}:unsupported`,i,{definition:e,context:r})),s.Z.getLogger("esri.core.accessorSupport.extensions.serializableProperty.writer").error(i)}return!1}function l(e,t,r,n){(0,o.RB)(r,u(e,n),t)}function u(e,t){return e&&"function"==typeof e.write?e.write({},t):e&&"function"==typeof e.toJSON?e.toJSON():"number"==typeof e?f(e):e}function f(e){return e===-1/0?-Number.MAX_VALUE:e===1/0?Number.MAX_VALUE:isNaN(e)?null:e}function d(e,t,r,n){let s;null===e?s=null:e&&"function"==typeof e.map?(s=e.map((e=>u(e,n))),"function"==typeof s.toArray&&(s=s.toArray())):s=[u(e,n)],(0,o.RB)(r,s,t)}function h(e,t,r){return 0!==r&&Array.isArray(e)?e.map((e=>h(e,t,r-1))):u(e,t)}},67723:(e,t,r)=>{"use strict";r.d(t,{$z:()=>i,Gg:()=>c,U2:()=>a});var n=r(1153);function s(e,t){const r="?"===e[e.length-1]?e.slice(0,-1):e;if(null!=t.getItemAt||Array.isArray(t)){const e=parseInt(r,10);if(!isNaN(e))return Array.isArray(t)?t[e]:t.at(e)}const s=(0,n.vw)(t);return(0,n.b6)(s,r)?s.get(r):t[r]}function o(e,t,r){if(null==e)return e;const n=s(t[r],e);return!n&&r<t.length-1?void 0:r===t.length-1?n:o(n,t,r+1)}function i(e,t,r=0){return"string"!=typeof t||t.includes(".")?o(e,(0,n.NI)(t),r):s(t,e)}function a(e,t){return i(e,t)}function c(e,t){return void 0!==i(t,e)}},97831:(e,t,r)=>{"use strict";var n;r.d(t,{F:()=>n}),function(e){e[e.INITIALIZING=0]="INITIALIZING",e[e.CONSTRUCTING=1]="CONSTRUCTING",e[e.CONSTRUCTED=2]="CONSTRUCTED"}(n||(n={}))},7628:(e,t,r)=>{"use strict";r.d(t,{Oe:()=>i,fp:()=>o,tz:()=>a});var n=r(22974),s=r(1153);function o(e){let t=e.constructor.__accessorMetadata__;const r=Object.prototype.hasOwnProperty.call(e.constructor,"__accessorMetadata__");if(t){if(!r){t=Object.create(t);for(const e in t)t[e]=(0,n.d9)(t[e]);Object.defineProperty(e.constructor,"__accessorMetadata__",{value:t,enumerable:!1,configurable:!0,writable:!0})}}else t={},Object.defineProperty(e.constructor,"__accessorMetadata__",{value:t,enumerable:!1,configurable:!0,writable:!0});return e.constructor.__accessorMetadata__}function i(e,t){const r=o(e);let n=r[t];return n||(n=r[t]={}),n}function a(e,t){return(0,s.TS)(e,t,l)}const c=/^(?:[^.]+\.)?(?:value|type|(?:json\.type|json\.origins\.[^.]\.type))$/;function l(e){return c.test(e)?"replace":"merge"}},50549:(e,t,r)=>{"use strict";r.d(t,{$:()=>f,i:()=>u});var n=r(67723),s=r(1153),o=r(53906);function i(e,t,r){if(!e?.read||!1===e.read.enabled||!e.read.source)return!1;const s=e.read.source;if("string"==typeof s){if(s===t)return!0;if(s.includes(".")&&0===s.indexOf(t)&&(0,n.Gg)(s,r))return!0}else for(const e of s){if(e===t)return!0;if(e.includes(".")&&0===e.indexOf(t)&&(0,n.Gg)(e,r))return!0}return!1}function a(e,t,r,n,s){let a=(0,o.HS)(t[r],s);(function(e){return e&&(!e.read||!1!==e.read.enabled&&!e.read.source)})(a)&&(e[r]=!0);for(const c of Object.getOwnPropertyNames(t))a=(0,o.HS)(t[c],s),i(a,r,n)&&(e[c]=!0)}function c(e,t,r,n){const s=r.metadatas,i=(0,o.hk)(s[t],n),a=i?.default;if(void 0===a)return;const c="function"==typeof a?a.call(e,t,n):a;void 0!==c&&r.set(t,c)}const l={origin:"service"};function u(e,t,r=l){if(!t||"object"!=typeof t)return;const i=(0,s.vw)(e),u=i.metadatas,f={};for(const e of Object.getOwnPropertyNames(t))a(f,u,e,t,r);i.setDefaultOrigin(r.origin);for(const s of Object.getOwnPropertyNames(f)){const a=(0,o.HS)(u[s],r).read,c=a?.source;let l;l=c&&"string"==typeof c?(0,n.$z)(t,c):t[s],a?.reader&&(l=a.reader.call(e,l,t,r)),void 0!==l&&i.set(s,l)}if(!r||!r.ignoreDefaults){i.setDefaultOrigin("defaults");for(const t of Object.getOwnPropertyNames(u))f[t]||c(e,t,i,r)}i.setDefaultOrigin("user")}function f(e,t,r,n=l){const s={...n,messages:[]};r(s),s.messages?.forEach((t=>{"warning"!==t.type||e.loaded?n?.messages&&n.messages.push(t):e.loadWarnings.push(t)}))}},37697:(e,t,r)=>{"use strict";r.d(t,{t:()=>i});var n=r(20102),s=r(80442),o=(r(92604),r(67723));function i(e,t,r){if(e&&t)if("object"==typeof t)for(const r of Object.getOwnPropertyNames(t))i(e,r,t[r]);else{if(t.includes(".")){const n=t.split("."),s=n.splice(-1,1)[0];return void i((0,o.U2)(e,n),s,r)}const a=e.__accessor__;null!=a&&function(e,t){if((0,s.Z)("esri-unknown-property-errors")&&!function(e,t){return null!=t.metadatas[e]}(e,t))throw new n.Z("set:unknown-property",function(e,t){return"setting unknown property '"+e+"' on instance of "+t.host.declaredClass}(e,t))}(t,a),e[t]=r}}},58971:(e,t,r)=>{"use strict";r.d(t,{GF:()=>_,LJ:()=>d,gb:()=>h,it:()=>l,mS:()=>b}),r(80442);var n=r(92604),s=r(1153),o=r(44550);const i={onObservableAccessed:()=>{},onTrackingEnd:()=>{}},a=[];let c=i;function l(e){c.onObservableAccessed(e)}let u=!1,f=!1;function d(e,t,r){if(u)return p(e,t,r);g(e);const n=t.call(r);return y(),n}function h(e,t){return d(i,e,t)}function p(e,t,r){const s=u;u=!0,g(e);let o=null;try{o=t.call(r)}catch(e){f&&n.Z.getLogger("esri.core.accessorSupport.tracking").error(e)}return y(),u=s,o}function g(e){c=e,a.push(e)}function y(){const e=a.length;if(e>1){const t=a.pop();c=a[e-2],t.onTrackingEnd()}else if(1===e){const e=a.pop();c=i,e.onTrackingEnd()}else c=i}function b(e,t){if(t.flags&o.v.DepTrackingInitialized)return;const r=f;f=!1,t.flags&o.v.AutoTracked?p(t,t.metadata.get,e):_(e,t),f=r}const m=[];function _(e,t){t.flags&o.v.ExplicitlyTracking||(t.flags|=o.v.ExplicitlyTracking,p(t,(()=>{const r=t.metadata.dependsOn||m;for(const t of r)if("string"!=typeof t||t.includes(".")){const r=(0,s.NI)(t);for(let t=0,n=e;t<r.length&&null!=n&&"object"==typeof n;++t)n=v(n,r[t],t!==r.length-1)}else v(e,t,!1)})),t.flags&=~o.v.ExplicitlyTracking)}function v(e,t,r){const n="?"===t[t.length-1]?t.slice(0,-1):t;if(null!=e.getItemAt||Array.isArray(e)){const t=parseInt(n,10);if(!isNaN(t))return Array.isArray(e)?e[t]:e.at(t)}const o=(0,s.vw)(e);if(o){const t=o.propertiesByName.get(n);t&&(l(t),b(e,t))}return r?e[n]:void 0}},44550:(e,t,r)=>{"use strict";var n;r.d(t,{v:()=>n}),function(e){e[e.Dirty=1]="Dirty",e[e.Overriden=2]="Overriden",e[e.Computing=4]="Computing",e[e.NonNullable=8]="NonNullable",e[e.HasDefaultValue=16]="HasDefaultValue",e[e.DepTrackingInitialized=32]="DepTrackingInitialized",e[e.AutoTracked=64]="AutoTracked",e[e.ExplicitlyTracking=128]="ExplicitlyTracking"}(n||(n={}))},38805:(e,t,r)=>{"use strict";r.d(t,{M:()=>n});class n{constructor(e){this._accessed=[],this._handles=[],this._observerObject=new s(e),o.register(this,new WeakRef(this._observerObject),this)}destroy(){o.unregister(this._observerObject),this._accessed.length=0,this._observerObject?.destroy(),this.clear()}onObservableAccessed(e){const t=this._accessed;t.includes(e)||t.push(e)}onTrackingEnd(){const e=this._handles,t=this._accessed,r=this._observerObject;for(let n=0;n<t.length;++n)e.push(t[n].observe(r));t.length=0}clear(){const e=this._handles;for(let t=0;t<e.length;++t)e[t].remove();e.length=0}}class s{constructor(e){this._notify=e,this._invalidCount=0,this.destroyed=!1}onInvalidated(){this._invalidCount++}onCommitted(){if(this.destroyed)return;const e=this._invalidCount;if(1===e)return this._invalidCount=0,void this._notify();this._invalidCount=e>0?e-1:0}destroy(){this.destroyed=!0,this._notify=i}}const o=new FinalizationRegistry((e=>{e.deref()?.destroy()}));function i(){}},87538:(e,t,r)=>{"use strict";r.d(t,{EH:()=>u,U5:()=>c,Xz:()=>l});var n=r(50758),s=r(58971),o=r(38805);let i=!1;const a=[];function c(e,t){let r=new o.M((function n(){if(!r||c)return;if(i)return void f(n);const o=a;r.clear(),i=!0,c=!0,a=(0,s.LJ)(r,e),c=!1,i=!1,t(a,o),d()})),a=null,c=!1;return c=!0,a=(0,s.LJ)(r,e),c=!1,(0,n.kB)((function(){r&&(r.destroy(),r=null,a=null)}))}function l(e,t){let r=new o.M((function(){t(i,a)})),i=null;function a(){return r?(r.clear(),i=(0,s.LJ)(r,e),i):null}return a(),(0,n.kB)((function(){r&&(r.destroy(),r=null),i=null}))}function u(e){let t=new o.M((function n(){t&&!r&&(i?f(n):(t.clear(),i=!0,r=!0,(0,s.LJ)(t,e),r=!1,i=!1,d()))})),r=!1;return r=!0,(0,s.LJ)(t,e),r=!1,(0,n.kB)((function(){t&&(t.destroy(),t=null)}))}function f(e){a.includes(e)||a.unshift(e)}function d(){for(;a.length;)a.pop()()}},1153:(e,t,r)=>{"use strict";r.d(t,{NI:()=>l,Qc:()=>f,TS:()=>a,b6:()=>i,vw:()=>o});var n=r(50758),s=r(22974);function o(e){return e.__accessor__??null}function i(e,t){return null!=e?.metadatas?.[t]}function a(e,t,r){return c(e,t,r?{policy:r,path:""}:null)}function c(e,t,r){return t?Object.keys(t).reduce(((e,n)=>{const o=n;let i=null,a="merge";if(r&&(i=r.path?`${r.path}.${n}`:n,a=r.policy(i)),"replace"===a)return e[o]=t[o],e;if("replace-arrays"===a&&Array.isArray(e[o]))return e[o]=t[o],e;if(void 0===e[o])return e[o]=(0,s.d9)(t[o]),e;let l=e[o],u=t[o];if(l===u)return e;if(Array.isArray(u)||Array.isArray(e))l=l?Array.isArray(l)?e[o]=l.concat():e[o]=[l]:e[o]=[],u&&(Array.isArray(u)||(u=[u]),u.forEach((e=>{l.includes(e)||l.push(e)})));else if(u&&"object"==typeof u)if(r){const t=r.path;r.path=i,e[o]=c(l,u,r),r.path=t}else e[o]=c(l,u,null);else e.hasOwnProperty(n)&&!t.hasOwnProperty(n)||(e[o]=u);return e}),e||{}):e}function l(e){return Array.isArray(e)?e:e.split(".")}function u(e){return e.includes(",")?e.split(",").map((e=>e.trim())):[e.trim()]}function f(e,t,r,s){const o=function(e){if(Array.isArray(e)){const t=[];for(const r of e)t.push(...u(r));return t}return u(e)}(t);if(1!==o.length){const t=o.map((t=>s(e,t,r)));return(0,n.AL)(t)}return s(e,o[0],r)}},26258:(e,t,r)=>{"use strict";r.d(t,{BT:()=>w,YP:()=>k,aQ:()=>T});var n=r(3894),s=r(50758),o=r(22974),i=r(71143);class a extends i.Z{constructor(){super(...arguments),this._set=new Set}destroy(){super.destroy(),this._set=null}acquire(...e){const t=super.acquire(...e);return this._set.delete(t),t}release(e){e&&!this._set.has(e)&&(super.release(e),this._set.add(e))}_dispose(e){this._set.delete(e),super._dispose(e)}}var c,l,u=r(1654),f=r(99001),d=r(67723),h=r(87538),p=r(1153);(l=c||(c={}))[l.Untracked=0]="Untracked",l[l.Tracked=1]="Tracked";class g{constructor(){this.uid=(0,f.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(e,t,r,n,s){return this.pool.acquire(c.Untracked,e,t,r,n,s,o.fS)}static acquireTracked(e,t,r,n){return this.pool.acquire(c.Tracked,e,t,r,null,null,n)}notify(e,t){this.type===c.Untracked?this.callback.call(this.target,e,t,this.path,this.target):this.callback.call(null,e,t,void 0,void 0)}acquire(e,t,r,n,s,o,i){this.uid=(0,f.D)(),this.removed=!1,this.type=e,this.oldValue=t,this.callback=r,this.getValue=n,this.target=s,this.path=o,this.equals=i}release(){this.target=this.path=this.oldValue=this.callback=this.getValue=null,this.uid=(0,f.D)(),this.removed=!0}}g.pool=new a(g);const y=new n.Z,b=new Set;let m;function _(e){b.delete(e),b.add(e),m||(m=(0,u.Os)(O))}function v(e){if(e.removed)return;const t=e.oldValue,r=e.getValue();e.equals(t,r)||(e.oldValue=r,e.notify(r,t))}function w(e){for(const t of b.values())t.target===e&&(t.removed=!0)}function O(){let e=10;for(;m&&e--;){m=null;const e=A(),t=y.acquire();for(const r of e){const e=r.uid;v(r),e===r.uid&&r.removed&&t.push(r)}for(const e of b)e.removed&&(t.push(e),b.delete(e));for(const e of t)g.pool.release(e);y.release(t),y.release(e),S.forEach((e=>e()))}}function A(){const e=y.acquire();e.length=b.size;let t=0;for(const r of b)e[t]=r,++t;return b.clear(),e}const S=new Set;function k(e,t,r,n=!1){return!e.__accessor__||e.__accessor__.destroyed?(0,s.kB)():n?function(e,t,r){const n=(0,p.Qc)(e,t,r,((e,t,r)=>{let s=!1;return(0,h.U5)((()=>(0,d.$z)(e,t)),((i,a)=>{e.__accessor__.destroyed?n.remove():s||(s=!0,(0,o.fS)(a,i)||r.call(e,i,a,t,e),s=!1)}))}));return n}(e,t,r):function(e,t,r){let n=(0,p.Qc)(e,t,r,((e,t,r)=>{let o,i,a=(0,h.Xz)((()=>(0,d.$z)(e,t)),((s,a)=>{e.__accessor__.destroyed||o&&o.uid!==i?n.remove():(o||(o=g.acquireUntracked(s,r,a,e,t),i=o.uid),_(o))}));return(0,s.kB)((()=>{a.remove(),o&&(o.uid!==i||o.removed||(o.removed=!0,_(o)),o=null),n=a=null}))}));return n}(e,t,r)}function T(e,t,r=!1,n=o.y7){return r?function(e,t,r){let n=!1;return(0,h.U5)(e,((e,s)=>{n||(n=!0,r(s,e)||t(e,s),n=!1)}))}(e,t,n):function(e,t,r){let n,o,i=(0,h.Xz)(e,((e,s)=>{n&&n.uid!==o?i.remove():(n||(n=g.acquireTracked(e,t,s,r),o=n.uid),_(n))}));return(0,s.kB)((()=>{i.remove(),n&&(n.uid!==o||n.removed||(n.removed=!0,_(n)),n=null),i=null}))}(e,t,n)}},76169:(e,t,r)=>{"use strict";r.d(t,{c:()=>h,d:()=>d});var n=r(67676),s=r(20102),o=r(92604),i=r(67723),a=r(31263),c=r(1153),l=r(53906);function u(e,t,r,n,s){const o={};return t.write?.writer?.call(e,n,o,r,s),o}function f(e,t,r,c,l,u){if(!c?.write)return!1;const f=(0,i.U2)(e,r);if(!l&&c.write.overridePolicy){const t=c.write.overridePolicy.call(e,f,r,u??void 0);void 0!==t&&(l=t)}if(l||(l=c.write),!l||!1===l.enabled)return!1;if(l.layerContainerTypes&&u?.layerContainerType&&!l.layerContainerTypes.includes(u.layerContainerType))return!1;if((null===f&&!l.allowNull&&!l.writerEnsuresNonNull||void 0===f)&&l.isRequired){const t=new s.Z("web-document-write:property-required",`Missing value for required property '${r}' on '${e.declaredClass}'`,{propertyName:r,target:e});return t&&u?.messages?u.messages.push(t):t&&!u&&o.Z.getLogger("esri.core.accessorSupport.write").error(t.name,t.message),!1}return!(void 0===f||null===f&&!l.allowNull&&!l.writerEnsuresNonNull||!(l.alwaysWriteDefaults||t.store.multipleOriginsSupported&&t.store.originOf(r)!==a.s3.DEFAULTS)&&function(e,t,r,s,o){const i=s.default;if(void 0===i)return!1;if(null!=s.defaultEquals)return s.defaultEquals(o);if("function"==typeof i){if(Array.isArray(o)){const s=i.call(e,t,r??void 0);return(0,n.fS)(s,o)}return!1}return i===o}(e,r,u,c,f)||!l.ignoreOrigin&&u?.origin&&t.store.multipleOriginsSupported&&t.store.originOf(r)<(0,a.M9)(u.origin))}function d(e,t,r,n){const s=(0,c.vw)(e),o=s.metadatas,i=(0,l.Ah)(o[t],n);return!!i&&f(e,s,t,i,r,n)}function h(e,t,r){if(e&&"function"==typeof e.toJSON&&(!e.toJSON.isDefaultToJSON||!e.write))return(0,c.TS)(t,e.toJSON(r));const n=(0,c.vw)(e),s=n.metadatas;for(const o in s){const d=(0,l.Ah)(s[o],r);if(!f(e,n,o,d,void 0,r))continue;const h=(0,i.U2)(e,o),p=u(e,d,d.write&&"string"==typeof d.write.target?d.write.target:o,h,r);Object.keys(p).length>0&&(t=(0,c.TS)(t,p),r?.resources?.pendingOperations?.length&&r.resources.pendingOperations.push(Promise.all(r.resources.pendingOperations).then((()=>(0,c.TS)(t,p,(()=>"replace-arrays"))))),r?.writtenProperties&&r.writtenProperties.push({target:e,propName:o,oldOrigin:(0,a.Wm)(n.store.originOf(o)),newOrigin:r.origin}))}return t}},67676:(e,t,r)=>{"use strict";r.d(t,{FY:()=>y,Od:()=>b,SO:()=>f,Vx:()=>o,a9:()=>l,cq:()=>h,e$:()=>p,e5:()=>i,fS:()=>s,pC:()=>m,wR:()=>u,zG:()=>a});var n=r(77734);function s(e,t,r){if(null==e&&null==t)return!0;if(null==e||null==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 o(e,t){let r=e.length!==t.length;r&&(e.length=t.length);for(let n=0;n<t.length;++n)e[n]!==t[n]&&(e[n]=t[n],r=!0);return r}function i(e,t,r){let n,s;return r?(n=t.filter((t=>!e.some((e=>r(e,t))))),s=e.filter((e=>!t.some((t=>r(t,e)))))):(n=t.filter((t=>!e.includes(t))),s=e.filter((e=>!t.includes(e)))),{added:n,removed:s}}function a(e){return e&&"number"==typeof e.length}const c=!!Array.prototype.fill;function l(e,t){if(c)return new Array(e).fill(t);const r=new Array(e);for(let n=0;n<e;n++)r[n]=t;return r}function u(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 f{constructor(){this.last=0}}const d=new f;function h(e,t,r,n){n=n||d;const s=Math.max(0,n.last-10);for(let o=s;o<r;++o)if(e[o]===t)return n.last=o,o;const o=Math.min(s,r);for(let r=0;r<o;++r)if(e[r]===t)return n.last=r,r;return-1}function p(e,t,r,n){const s=r??e.length,o=h(e,t,s,n);if(-1!==o)return e[o]=e[s-1],null==r&&e.pop(),t}const g=new Set;function y(e,t,r=e.length,n=t.length,s,o){if(0===n||0===r)return r;g.clear();for(let e=0;e<n;++e)g.add(t[e]);s=s||d;const i=Math.max(0,s.last-10);for(let t=i;t<r;++t)if(g.has(e[t])&&(o?.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<i;++t)if(g.has(e[t])&&(o?.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 b(e,t){const r=e.indexOf(t);return-1!==r?(e.splice(r,1),t):null}function m(e,t){return null!=e}new n.Z},43090:(e,t,r)=>{"use strict";function n(e){return 32+e.length}function s(){return 16}function o(e){if(!e)return 0;let t=l;for(const r in e)if(e.hasOwnProperty(r)){const s=e[r];switch(typeof s){case"string":t+=n(s);break;case"number":t+=16;break;case"boolean":t+=4}}return t}function i(e){if(!e)return 0;if(Array.isArray(e))return function(e){const t=e.length;if(0===t||"number"==typeof e[0])return 32+8*t;let r=u;for(let n=0;n<t;n++)r+=a(e[n]);return r}(e);let t=l;for(const r in e)e.hasOwnProperty(r)&&(t+=a(e[r]));return t}function a(e){switch(typeof e){case"object":return i(e);case"string":return n(e);case"number":return 16;case"boolean":return 4;default:return 8}}function c(e,t){return u+e.length*t}r.d(t,{G3:()=>s,Ul:()=>i,do:()=>c,f2:()=>o});const l=32,u=16},60235:(e,t,r)=>{"use strict";r.d(t,{Mr:()=>a,XV:()=>i,x9:()=>c});var n=r(80442);const s=new Set;function o(e,t,r=!1){r&&s.has(t)||(r&&s.add(t),e.warn(`🛑 DEPRECATED - ${t}`))}function i(e,t,r={}){if((0,n.Z)("esri-deprecation-warnings")){const{moduleName:n}=r;c(e,"Function: "+(n?n+"::":"")+t+"()",r)}}function a(e,t,r={}){if((0,n.Z)("esri-deprecation-warnings")){const{moduleName:n}=r;c(e,"Property: "+(n?n+"::":"")+t,r)}}function c(e,t,r={}){if((0,n.Z)("esri-deprecation-warnings")){const{replacement:n,version:s,see:i,warnOnce:a}=r;let c=t;n&&(c+=`\n\t🛠️ Replacement: ${n}`),s&&(c+=`\n\t⚙️ Version: ${s}`),i&&(c+=`\n\t🔗 See ${i} for more details.`),o(e,c,a)}}},91460:(e,t,r)=>{"use strict";r.d(t,{IH:()=>i,on:()=>o,vT:()=>s});var n=r(50758);function s(e){return e&&("function"==typeof e.on||"function"==typeof e.addEventListener)}function o(e,t,r){if(!s(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 s=t.slice();for(const t of s)e.addEventListener(t,r);return(0,n.kB)((()=>{for(const t of s)e.removeEventListener(t,r)}))}return e.addEventListener(t,r),(0,n.kB)((()=>e.removeEventListener(t,r)))}function i(e,t,r){if(!s(e))throw new TypeError("target is not a Evented or EventTarget object");if("once"in e)return e.once(t,r);const n=o(e,t,(t=>{n.remove(),r.call(e,t)}));return n}},50758:(e,t,r)=>{"use strict";r.d(t,{AL:()=>o,kB:()=>s});const n={remove:()=>{}};function s(e){return e?{remove(){e&&(e(),e=void 0)}}:n}function o(e){return s((()=>function(e){e.forEach((e=>e?.remove()))}(e)))}},80442:(e,t,r)=>{"use strict";let n;function s(e){return"function"==typeof n[e]?n[e]=n[e](globalThis):n[e]}r.d(t,{Z:()=>s}),n=globalThis.dojoConfig?.has||globalThis.esriConfig?.has?{...globalThis.dojoConfig?.has,...globalThis.esriConfig?.has}:{},s.add=(e,t,r,o)=>((o||void 0===n[e])&&(n[e]=t),r&&s(e)),s.cache=n,s.add("big-integer-warning-enabled",!0),s.add("esri-deprecation-warnings",!0),s.add("esri-tests-disable-screenshots",!1),s.add("esri-tests-use-full-window",!1),s.add("esri-tests-post-to-influx",!0),(()=>{s.add("host-webworker",void 0!==globalThis.WorkerGlobalScope&&self instanceof globalThis.WorkerGlobalScope);const e="undefined"!=typeof window&&"undefined"!=typeof location&&"undefined"!=typeof document&&window.location===location&&window.document===document;if(s.add("host-browser",e),s.add("host-node","object"==typeof globalThis.process&&globalThis.process.versions?.node&&globalThis.process.versions.v8),s.add("dom",e),s("host-browser")){const e=navigator,t=e.userAgent,r=e.appVersion,n=parseFloat(r);if(s.add("wp",parseFloat(t.split("Windows Phone")[1])||void 0),s.add("msapp",parseFloat(t.split("MSAppHost/")[1])||void 0),s.add("khtml",r.includes("Konqueror")?n:void 0),s.add("edge",parseFloat(t.split("Edge/")[1])||void 0),s.add("opr",parseFloat(t.split("OPR/")[1])||void 0),s.add("webkit",!s("wp")&&!s("edge")&&parseFloat(t.split("WebKit/")[1])||void 0),s.add("chrome",!s("edge")&&!s("opr")&&parseFloat(t.split("Chrome/")[1])||void 0),s.add("android",!s("wp")&&parseFloat(t.split("Android ")[1])||void 0),s.add("safari",!r.includes("Safari")||s("wp")||s("chrome")||s("android")||s("edge")||s("opr")?void 0:parseFloat(r.split("Version/")[1])),s.add("mac",r.includes("Macintosh")),!s("wp")&&/(iPhone|iPod|iPad)/.test(t)){const e=RegExp.$1.replace(/P/,"p"),r=/OS ([\d_]+)/.test(t)?RegExp.$1:"1",n=parseFloat(r.replace(/_/,".").replaceAll("_",""));s.add(e,n),s.add("ios",n)}s("webkit")||(!t.includes("Gecko")||s("wp")||s("khtml")||s("edge")||s.add("mozilla",n),s("mozilla")&&s.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&&s.add("esri-mobile",t),r&&s.add("esri-iPhone",r),s.add("esri-geolocation",!!navigator.geolocation)}s.add("esri-wasm","WebAssembly"in globalThis),s.add("esri-performance-mode-frames-between-render",20),s.add("esri-force-performance-mode",!1),s.add("esri-shared-array-buffer",(()=>{const e="SharedArrayBuffer"in globalThis,t=!1===globalThis.crossOriginIsolated;return e&&!t})),s.add("wasm-simd",(()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11])))),s.add("esri-atomics","Atomics"in globalThis),s.add("esri-workers","Worker"in globalThis),s.add("web-feat:cache","caches"in globalThis),s.add("esri-workers-arraybuffer-transfer",!s("safari")||Number(s("safari"))>=12),s.add("workers-pool-size",8),s.add("featurelayer-simplify-thresholds",[.5,.5,.5,.5]),s.add("featurelayer-simplify-payload-size-factors",[1,1,4]),s.add("featurelayer-animation-enabled",!0),s.add("featurelayer-snapshot-enabled",!0),s.add("featurelayer-snapshot-point-min-threshold",8e4),s.add("featurelayer-snapshot-point-max-threshold",4e5),s.add("featurelayer-snapshot-point-coverage",.1),s.add("featurelayer-advanced-symbols",!1),s.add("featurelayer-pbf",!0),s.add("featurelayer-pbf-statistics",!1),s.add("feature-layers-workers",!0),s.add("feature-polyline-generalization-factor",1),s.add("mapview-transitions-duration",200),s.add("mapview-srswitch-adjust-rotation-scale-threshold",24e6),s.add("mapserver-pbf-version-support",10.81),s.add("mapservice-popup-identify-max-tolerance",20),s.add("heatmap-allow-raster-fallback",!1),s.add("heatmap-force-raster",!1),s("host-webworker")||s("host-browser")&&(s.add("esri-csp-restrictions",(()=>{try{new Function}catch{return!0}return!1})),s.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((()=>{s.add("esri-image-decode",!0,!0,!0)})).catch((()=>{s.add("esri-image-decode",!1,!0,!0)}))}return!1})),s.add("esri-url-encodes-apostrophe",(()=>{const e=window.document.createElement("a");return e.href="?'",e.href.includes("?%27")})))})()},66374:(e,t,r)=>{"use strict";function n(e){const t=[];return function*(){yield*t;for(const r of e)t.push(r),yield r}}function s(e,t){for(const r of e)if(null!=r&&t(r))return r}function o(e){return null!=e&&"function"==typeof e[Symbol.iterator]}r.d(t,{Fs:()=>n,TW:()=>o,sE:()=>s})},22974:(e,t,r)=>{"use strict";r.d(t,{Vo:()=>a,d9:()=>i,fS:()=>h,tZ:()=>c,y7:()=>p,yd:()=>o});var n=r(67676),s=r(1533);function o(e,t){let r;if(t)for(r in e)e.hasOwnProperty(r)&&(void 0===e[r]?delete e[r]:e[r]instanceof Object&&o(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=d(e);if(null!=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||"HTMLElement"in globalThis&&e instanceof HTMLElement)return e;const t=d(e);if(null!=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(e instanceof File||e instanceof Blob)return e;if(!u(e)){const t=new(0,Object.getPrototypeOf(e).constructor);for(const r of Object.getOwnPropertyNames(e)){const n=e[r],s=a(n);if(null!=n&&null==s)return null;t[r]=s}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("[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function d(e){if((0,s.W0)(e)||(0,s.lq)(e)||(0,s.KZ)(e)||(0,s.z3)(e)||(0,s.Uc)(e)||(0,s.Hx)(e)||(0,s.ZY)(e)||(0,s.xZ)(e)||(0,s.fS)(e))return e.slice();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;for(const[r,n]of e)t.set(r,i(n));return t}if(e instanceof Set){const t=new Set;for(const r of e)t.add(i(r));return t}return null}function h(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}function p(e,t){return e===t||(null==e||"string"==typeof e?e===t:"number"==typeof e?e===t||"number"==typeof t&&isNaN(e)&&isNaN(t):e instanceof Date?t instanceof Date&&e.getTime()===t.getTime():Array.isArray(e)?Array.isArray(t)&&(0,n.fS)(e,t):e instanceof Set?t instanceof Set&&function(e,t){if(e.size!==t.size)return!1;for(const r of e)if(!t.has(r))return!1;return!0}(e,t):e instanceof Map?t instanceof Map&&function(e,t){if(e.size!==t.size)return!1;for(const[r,n]of e){const e=t.get(r);if(e!==n||void 0===e&&!t.has(r))return!1}return!0}(e,t):!!f(e)&&f(t)&&function(e,t){if(null===e||null===t)return!1;const r=Object.keys(e);if(null===t||Object.keys(t).length!==r.length)return!1;for(const n of r)if(e[n]!==t[n]||!Object.prototype.hasOwnProperty.call(t,n))return!1;return!0}(e,t))}},70586:(e,t,r)=>{"use strict";function n(e,t){if(null==e)throw new Error(t??"value is None")}function s(e){return e?.destroy(),null}function o(e){return e?.dispose(),null}function i(e){return e?.remove(),null}function a(e){return e?.abort(),null}function c(e){return e?.release(),null}function l(e,t,r){return null!=e&&null!=t?null!=r?r(e,t):e.equals(t):e===t}r.d(t,{IM:()=>a,M2:()=>o,O3:()=>n,RY:()=>c,SC:()=>s,_W:()=>l,hw:()=>i})},41213:(e,t,r)=>{"use strict";r.d(t,{Y:()=>s});const n=[];function s(e){n.push(e),1===n.length&&queueMicrotask((()=>{const e=n.slice();n.length=0;for(const t of e)t()}))}},78286:(e,t,r)=>{"use strict";r.d(t,{RB:()=>i,RH:()=>s,hS:()=>o});var n=r(22974);function s(e,t,r=!1){return c(e,t,r)}function o(e,t){if(null!=t)return t[e]||a(e.split("."),!1,t)}function i(e,t,r){const n=e.split("."),s=n.pop(),o=a(n,!0,r);o&&s&&(o[s]=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(((e,s)=>{let o=e[s],i=t[s];return o===i?e:void 0===o?(e[s]=(0,n.d9)(i),e):(Array.isArray(i)||Array.isArray(e)?(o=o?Array.isArray(o)?e[s]=o.concat():e[s]=[o]:e[s]=[],i&&(Array.isArray(i)||(i=[i]),r?i.forEach((e=>{o.includes(e)||o.push(e)})):e[s]=i.concat())):i&&"object"==typeof i?e[s]=c(o,i,r):e.hasOwnProperty(s)&&!t.hasOwnProperty(s)||(e[s]=i),e)}),e||{}):e}},95330:(e,t,r)=>{"use strict";r.d(t,{e4:()=>S,UO:()=>A,OT:()=>O,zE:()=>l,hh:()=>N,Ds:()=>E,as:()=>v,WW:()=>w,R8:()=>_,D_:()=>m,Hc:()=>d,y8:()=>k,fu:()=>g,$F:()=>y,r9:()=>h,k_:()=>u,H9:()=>p,Yn:()=>j,gx:()=>T,Hl:()=>b});var n=r(50758);const s=(o=globalThis,{setTimeout:(e,t)=>{const r=o.setTimeout(e,t);return(0,n.kB)((()=>o.clearTimeout(r)))}});var o,i=r(20102),a=r(91460),c=(r(92604),r(70586));function l(e="Aborted"){return new i.Z("AbortError",e)}function u(e,t="Aborted"){if(d(e))throw l(t)}function f(e){return null!=e?"aborted"in e?e:e.signal:e}function d(e){const t=f(e);return null!=t&&t.aborted}function h(e){if(m(e))throw e}function p(e){if(!m(e))throw e}function g(e,t){const r=f(e);if(null!=r){if(!r.aborted)return(0,a.IH)(r,"abort",(()=>t()));t()}}function y(e,t){const r=f(e);if(null!=r)return u(r),(0,a.IH)(r,"abort",(()=>t(l())))}function b(e,t){return null==f(t)?e:new Promise(((r,n)=>{let s=g(t,(()=>n(l())));const o=()=>{s=(0,c.hw)(s)};e.then(o,o),e.then(r,n)}))}function m(e){return"AbortError"===e?.name}async function _(e){try{return await e}catch(e){if(!m(e))throw e;return}}async function v(e){if(!e)return;if("function"!=typeof e.forEach){const t=Object.keys(e),r=t.map((t=>e[t])),n=await v(r),s={};return t.map(((e,t)=>s[e]=n[t])),s}const t=e;return Promise.allSettled(t).then((e=>Array.from(t,((t,r)=>{const n=e[r];return"fulfilled"===n.status?{promise:t,value:n.value}:{promise:t,error:n.reason}}))))}async function w(e){return(await v(e)).filter((e=>!!e.value)).map((e=>e.value))}async function O(e){return(await Promise.allSettled(e)).filter((e=>"fulfilled"===e.status)).map((e=>e.value))}async function A(e){return(await Promise.allSettled(e)).filter((e=>"rejected"===e.status)).map((e=>e.reason))}function S(e,t=void 0,r){const n=new AbortController;return g(r,(()=>n.abort())),new Promise(((r,s)=>{let o=setTimeout((()=>{o=0,r(t)}),e);g(n,(()=>{o&&(clearTimeout(o),s(l()))}))}))}function k(e){return e&&"function"==typeof e.then}function T(e){return k(e)?e:Promise.resolve(e)}function E(e,t=-1){let r,n,s,o,i=null;const a=(...c)=>{if(r){n=c,o&&o.reject(l()),o=N();const e=o.promise;if(i){const e=i;i=null,e.abort()}return e}if(s=o||N(),o=null,t>0){const n=new AbortController;r=T(e(...c,n.signal));const s=r;S(t).then((()=>{r===s&&(o?n.abort():i=n)}))}else r=1,r=T(e(...c));const u=()=>{const e=n;n=s=r=i=null,null!=e&&a(...e)},f=r,d=s;return f.then(u,u),f.then(d.resolve,d.reject),d.promise};return a}function N(){let e,t;const r=new Promise(((r,n)=>{e=r,t=n})),n=t=>{e(t)};return n.resolve=t=>e(t),n.reject=e=>t(e),n.timeout=(e,t)=>s.setTimeout((()=>n.reject(t)),e),n.promise=r,n}async function j(e){await Promise.resolve(),u(e)}},1654:(e,t,r)=>{"use strict";r.d(t,{MU:()=>_,Os:()=>g});var n=r(41213),s=r(54790),o=r(44553),i=r(95330),a=r(76882);class c{constructor(e){this.callback=e,this.isActive=!0}remove(){this.isActive=!1}}let l=0;const u={time:(0,a.HA)(0),deltaTime:(0,a.HA)(0),elapsedFrameTime:(0,a.HA)(0),frameDuration:(0,a.HA)(0)},f=["prepare","preRender","render","postRender","update","finish"],d=[],h=new o.Z,p={frameTasks:h,willDispatch:!1,clearFrameTasks:function(e=!1){h.forAll((e=>{e.removed=!0})),e&&b()},dispatch:m,executeFrameTasks:function(e){const t=(0,a.HA)(e-l);l=e;const r=1e3/60,n=Math.max(0,t-r);u.time=e,u.frameDuration=(0,a.HA)(r-n);for(let r=0;r<f.length;r++){const n=performance.now(),s=f[r];h.forAll((n=>{n.paused||n.removed||(0===r&&n.ticks++,n.phases[s]&&(u.elapsedFrameTime=(0,a.HA)(performance.now()-e),u.deltaTime=0===n.ticks?(0,a.HA)(0):t,n.phases[s]?.call(n,u)))})),v[r].record(performance.now()-n)}b(),w.record(performance.now()-e)}};function g(e){const t=new c(e);return d.push(t),p.willDispatch||(p.willDispatch=!0,(0,n.Y)(m)),t}const y=new o.Z;function b(){h.forAll((e=>{e.removed&&y.push(e)})),h.removeUnorderedMany(y.data,y.length),y.clear()}function m(){for(;d.length;){const e=d.shift();e.isActive&&e.callback()}p.willDispatch=!1}function _(e=1,t){const r=(0,i.hh)(),s=()=>{(0,i.Hc)(t)?r.reject((0,i.zE)()):0===e?r():(--e,(0,n.Y)((()=>s())))};return s(),r.promise}const v=f.map((e=>new s.Z(e))),w=new s.Z("total")},19153:(e,t,r)=>{"use strict";r.d(t,{Cb:()=>l,Qs:()=>a,gx:()=>i,hP:()=>c});var n=r(78286);const s=/\{([^\}]+)\}/g;function o(e){return e??""}function i(e,t){return t?e.replaceAll(s,"object"==typeof t?(e,r)=>o((0,n.hS)(r,t)):(e,r)=>o(t(r))):e}function a(e,t){return e.replaceAll(/([\.$?*|{}\(\)\[\]\\\/\+\-^])/g,(e=>t&&t.includes(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||""}},76882:(e,t,r)=>{"use strict";function n(e){return e}function s(e){return 1e3*e}function o(e){return e}r.d(t,{HA:()=>n,_H:()=>o,up:()=>s})},1533:(e,t,r)=>{"use strict";r.d(t,{B3:()=>m,Hx:()=>u,KZ:()=>a,Op:()=>v,Q7:()=>_,Uc:()=>l,W0:()=>o,Xw:()=>g,ZY:()=>f,c8:()=>b,eP:()=>s,fS:()=>h,kJ:()=>p,lq:()=>i,xZ:()=>d,z3:()=>c});var n=r(43090);function s(e){return e instanceof ArrayBuffer}function o(e){return"Int8Array"===e?.constructor?.name}function i(e){return"Uint8Array"===e?.constructor?.name}function a(e){return"Uint8ClampedArray"===e?.constructor?.name}function c(e){return"Int16Array"===e?.constructor?.name}function l(e){return"Uint16Array"===e?.constructor?.name}function u(e){return"Int32Array"===e?.constructor?.name}function f(e){return"Uint32Array"===e?.constructor?.name}function d(e){return"Float32Array"===e?.constructor?.name}function h(e){return"Float64Array"===e?.constructor?.name}function p(e){return!("buffer"in e)}function g(...e){return e.reduce(((e,t)=>e+(t?p(t)?(0,n.do)(t,(0,n.G3)()):t.byteLength+y:0)),0)}r(80442);const y=145,b=1024;function m(e){return h(e)||d(e)||u(e)||c(e)||o(e)}function _(e){return h(e)||d(e)}function v(e){return h(e)?179769e303:d(e)?3402823e32:f(e)?4294967295:l(e)?65535:i(e)||a(e)?255:u(e)?2147483647:c(e)?32767:o(e)?127:256}},99001:(e,t,r)=>{"use strict";r.d(t,{D:()=>s});let n=0;function s(){return++n}},17452:(e,t,r)=>{"use strict";r.d(t,{$U:()=>ce,AH:()=>Q,B7:()=>j,D6:()=>z,Fv:()=>Z,HK:()=>Y,Hu:()=>me,IR:()=>Ae,Ie:()=>ye,L:()=>T,Ml:()=>we,P$:()=>G,PF:()=>W,Qj:()=>ge,R9:()=>w,TI:()=>k,YP:()=>V,Yd:()=>de,ZN:()=>_e,Zo:()=>R,_l:()=>re,b7:()=>C,ed:()=>U,fZ:()=>Oe,fl:()=>ve,fw:()=>se,gi:()=>ne,hF:()=>q,hO:()=>le,io:()=>oe,jc:()=>K,kl:()=>F,mN:()=>E,oC:()=>ie,oh:()=>B,qg:()=>P,rS:()=>X,sJ:()=>te,tD:()=>$,tm:()=>L,u0:()=>N,v_:()=>J,vt:()=>he,xs:()=>pe});var n=r(68773),s=r(67676),o=r(20102),i=r(96674),a=r(92604),c=r(19745),l=r(49917);const u=a.Z.getLogger("esri.core.urlUtils"),f=n.default.request,d="esri/config: esriConfig.request.proxyUrl is not set.",h=/^\s*[a-z][a-z0-9-+.]*:(?![0-9])/i,p=/^\s*http:/i,g=/^\s*https:/i,y=/^\s*file:/i,b=/:\d+$/,m=/^https?:\/\/[^/]+\.arcgis.com\/sharing(\/|$)/i,_=new RegExp("^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\\?([^#]*))?(#(.*))?$"),v=new RegExp("^((([^\\[:]+):)?([^@]+)@)?(\\[([^\\]]+)\\]|([^\\[:]*))(:([0-9]+))?$");class w{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=this.uri.match(_);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=this.authority.match(v),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 O={};let A=new w(n.default.applicationUrl);let S=function(){const e=A.path,t=e.substring(0,e.lastIndexOf(e.split("/")[e.split("/").length-1]));return`${A.scheme}://${A.host}${null!=A.port?`:${A.port}`:""}${t}`}();const k=()=>A,T=()=>S;function E(e){if(!e)return null;const t={path:null,query:null},r=new w(e),n=e.indexOf("?");return null===r.query?t.path=e:(t.path=e.substring(0,n),t.query=N(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 N(e){const t=e.split("&"),r={};for(const e of t){if(!e)continue;const t=e.indexOf("=");let n,s;t<0?(n=decodeURIComponent(e),s=""):(n=decodeURIComponent(e.slice(0,t)),s=decodeURIComponent(e.slice(t+1)));let o=r[n];"string"==typeof o&&(o=r[n]=[o]),Array.isArray(o)?o.push(s):r[n]=s}return r}function j(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 s=encodeURIComponent(r)+"=",o=t?.[r];return o?s+encodeURIComponent(o(n)):Array.isArray(n)?n.map((e=>(0,i.AK)(e)?s+encodeURIComponent(JSON.stringify(e)):s+encodeURIComponent(e))).join("&"):(0,i.AK)(n)?s+encodeURIComponent(JSON.stringify(n)):s+encodeURIComponent(n)})).filter((e=>e)).join("&"):""}function C(e=!1){let t,r=f.proxyUrl;if("string"==typeof e){t=ce(e);const n=U(e);n&&(r=n.proxyUrl)}else t=!!e;if(!r)throw u.warn(d),new o.Z("urlutils:proxy-not-set",d);return t&&ue()&&(r=le(r)),E(r)}function P(e){const t=U(e);let r,n;if(t){const e=I(t.proxyUrl);r=e.path,n=e.query?N(e.query):null}if(r){const t=E(e);e=r+"?"+t.path;const s=j({...n,...t.query});s&&(e=`${e}?${s}`)}return e}const M={path:"",query:""};function I(e){const t=e.indexOf("?");return-1!==t?(M.path=e.slice(0,t),M.query=e.slice(t+1)):(M.path=e,M.query=null),M}function x(e){return(e=fe(e=pe(e=I(e).path),!0)).toLowerCase()}function $(e){const t={proxyUrl:e.proxyUrl,urlPrefix:x(e.urlPrefix)},r=f.proxyRules,n=t.urlPrefix;let s=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;s=e;break}0===t.indexOf(n)&&(s=e+1)}return r.splice(s,0,t),s}function U(e){const t=f.proxyRules,r=x(e);for(let e=0;e<t.length;e++)if(0===r.indexOf(t[e].urlPrefix))return t[e]}function R(e,t){if(!e||!t)return!1;e=D(e),t=D(t);const r=(0,c.a)(e),n=(0,c.a)(t);return null!=r&&null!=n?r.portalHostname===n.portalHostname:null==r&&null==n&&z(e,t,!0)}function L(e,t){return e=D(e),t=D(t),fe(e)===fe(t)}function D(e){const t=(e=Z(e)).indexOf("/sharing");return t>0?e.substring(0,t):e.replace(/\/+$/,"")}function B(e){const t=t=>null==t||t instanceof RegExp&&t.test(e)||"string"==typeof t&&e.startsWith(t),r=f.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 z(e,t,r=!1){if(!e||!t)return!1;const n=be(e),s=be(t);return!(!r&&n.scheme!==s.scheme)&&null!=n.host&&null!=s.host&&n.host.toLowerCase()===s.host.toLowerCase()&&n.port===s.port}function F(e){if("string"==typeof e){if(!V(e))return!0;e=be(e)}if(z(e,A))return!0;const t=f.trustedServers||[];for(let r=0;r<t.length;r++){const n=H(t[r]);for(let t=0;t<n.length;t++)if(z(e,n[t]))return!0}return!1}function H(e){return O[e]||(ae(e)||ie(e)?O[e]=[new w(q(e))]:O[e]=[new w(`http://${e}`),new w(`https://${e}`)]),O[e]}function q(e,t=S,r){return ie(e)?r&&r.preserveProtocolRelative?e:"http"===A.scheme&&A.authority===G(e).slice(2)?`http:${e}`:`https:${e}`:ae(e)?e:J("/"===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 W(e,t=S,r){if(null==e||!V(e))return e;const n=Z(e),s=n.toLowerCase(),o=Z(t).toLowerCase().replace(/\/+$/,""),i=r?Z(r).toLowerCase().replace(/\/+$/,""):null;if(i&&0!==o.indexOf(i))return e;const a=(e,t,r)=>-1===(r=e.indexOf(t,r))?e.length:r;let c=a(s,"/",s.indexOf("//")+2),l=-1;for(;s.slice(0,c+1)===o.slice(0,c)+"/"&&(l=c+1,c!==s.length);)c=a(s,"/",c+1);if(-1===l)return e;if(i&&l<i.length)return e;e=n.slice(l);const u=o.slice(l-1).replaceAll(/[^/]+/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=f.httpsDomains;if(!function(e){return null!=e&&p.test(e)||"http"===A.scheme&&ie(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),b.test(n)){if(!n.endsWith(":80"))return e;n=n.slice(0,-3),e=e.replace(":80","")}return"http"===A.scheme&&n===A.authority&&!m.test(e)||(ue()&&n===A.authority||t&&t.some((e=>n===e||n.endsWith(`.${e}`)))||ue()&&!U(e))&&(e=le(e)),e}(e=function(e){return e.replace(/^(https?:\/\/)(arcgis\.com)/i,"$1www.$2")}(e=function(e){if(/^https?:\/\//i.test(e)){const t=I(e);e=(e=t.path.replaceAll(/\/{2,}/g,"/")).replace("/","//"),t.query&&(e+=`?${t.query}`)}return e}(e=q(e=e.trim()))))}function J(...e){const t=e.filter(s.pC);if(!t?.length)return;const r=[];if(V(t[0])){const e=t[0],n=e.indexOf("//");-1!==n&&(r.push(e.slice(0,n+1)),function(e){return null!=e&&y.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 G(e,t=!1){if(null==e||K(e)||Y(e))return null;let r=e.indexOf("://");if(-1===r&&ie(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=fe(e,!0)),e}function V(e){return ie(e)||ae(e)}function K(e){return null!=e&&"blob:"===e.slice(0,5)}function Y(e){return null!=e&&"data:"===e.slice(0,5)}function Q(e){const t=te(e);return t&&t.isBase64?(0,l.R)(t.data):null}function X(e){return(0,l.s)(e).replaceAll("+","-").replaceAll("/","_").replace(/=+$/,"")}const ee=/^data:(.*?)(;base64)?,(.*)$/;function te(e){const t=e.match(ee);if(!t)return null;const[,r,n,s]=t;return{mediaType:r,isBase64:!!n,data:s}}function re(e){return e.isBase64?`data:${e.mediaType};base64,${e.data}`:`data:${e.mediaType},${e.data}`}async function ne(e){return(await fetch(e)).blob()}function se(e){const t=Q(e);if(!t)return null;const r=te(e);return new Blob([t],{type:r.mediaType})}function oe(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);r.download=t,r.href=n,r.style.display="none",document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL(n)}(e,t)}function ie(e){return null!=e&&"/"===e[0]&&"/"===e[1]}function ae(e){return null!=e&&h.test(e)}function ce(e){return null!=e&&g.test(e)||"https"===A.scheme&&ie(e)}function le(e){return ie(e)?`https:${e}`:e.replace(p,"https:")}function ue(){return"https"===A.scheme}function fe(e,t=!1){return ie(e)?e.slice(2):(e=e.replace(h,""),t&&e.length>1&&"/"===e[0]&&"/"===e[1]&&(e=e.slice(2)),e)}function de(e){let t=0;if(V(e)){const r=e.indexOf("//");-1!==r&&(t=r+2)}const r=e.lastIndexOf("/");return r<t?e:e.slice(0,r+1)}function he(e,t){if(!e)return"";const r=E(e).path.replace(/\/+$/,""),n=r.substring(r.lastIndexOf("/")+1);if(!t?.length)return n;const s=new RegExp(`.(${t.join("|")})$`,"ig");return n.replace(s,"")}function pe(e){return e.endsWith("/")?e:`${e}/`}function ge(e){return e.replace(/\/+$/,"")}function ye(e,t,r){if(!(t&&r&&e&&V(e)))return e;const n=e.indexOf("//"),s=e.indexOf("/",n+2),o=e.indexOf(":",n+2),i=Math.min(s<0?e.length:s,o<0?e.length:o);return e.slice(n+2,i).toLowerCase()!==t.toLowerCase()?e:`${e.slice(0,n+2)}${r}${e.slice(i)}`}function be(e){return"string"==typeof e?new w(q(e)):(e.scheme||(e.scheme=A.scheme),e)}function me(e,t){const r=E(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 _e(e,t,r){const n=E(e),s=n.query||{};return s[t]=String(r),`${n.path}?${j(s)}`}function ve(e,t){if(!t)return e;const r=E(e),n=r.query||{};for(const[e,r]of Object.entries(t))null!=r&&(n[e]=r);const s=j(n);return s?`${r.path}?${s}`:r.path}function we(e){if(null==e)return null;const t=e.match(Se);return t?t[2]:null}function Oe(e){if(null==e)return null;const t=e.match(Se);return t?{path:t[1],extension:t[2]}:{path:e,extension:null}}async function Ae(e){return"string"==typeof e?te(e)??{data:e}:new Promise(((t,r)=>{const n=new FileReader;n.readAsDataURL(e),n.onload=()=>t(te(n.result)),n.onerror=e=>r(e)}))}const Se=/([^.]*)\.([^\/]*)$/},728:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>_});var n=r(40330),s=r(20102),o=r(91460),i=r(50758),a=r(70586),c=r(95330);const l={statsWorker:()=>Promise.all([r.e(7126),r.e(8480),r.e(3215),r.e(8657),r.e(3370),r.e(7267)]).then(r.bind(r,37267)),geometryEngineWorker:()=>Promise.all([r.e(5837),r.e(8228)]).then(r.bind(r,48227)),CSVSourceWorker:()=>Promise.all([r.e(7126),r.e(3615),r.e(8968),r.e(8480),r.e(3215),r.e(8657),r.e(3370),r.e(3794),r.e(5883)]).then(r.bind(r,27793)),EdgeProcessingWorker:()=>Promise.all([r.e(6481),r.e(3677),r.e(6139),r.e(9594)]).then(r.bind(r,49594)),ElevationSamplerWorker:()=>Promise.all([r.e(3615),r.e(8480),r.e(3215),r.e(6481),r.e(6459),r.e(7595)]).then(r.bind(r,61787)),FeatureServiceSnappingSourceWorker:()=>Promise.all([r.e(7126),r.e(957),r.e(3615),r.e(8968),r.e(8480),r.e(3215),r.e(4599),r.e(8657),r.e(3370),r.e(3794),r.e(664)]).then(r.bind(r,65967)),GeoJSONSourceWorker:()=>Promise.all([r.e(7126),r.e(3615),r.e(8968),r.e(8480),r.e(3215),r.e(8657),r.e(3370),r.e(3794),r.e(1690)]).then(r.bind(r,97845)),LercWorker:()=>r.e(3027).then(r.bind(r,23027)),MemorySourceWorker:()=>Promise.all([r.e(7126),r.e(3615),r.e(8968),r.e(8480),r.e(3215),r.e(8657),r.e(3370),r.e(3794),r.e(946)]).then(r.bind(r,30639)),PBFDecoderWorker:()=>Promise.all([r.e(8480),r.e(3215),r.e(3597)]).then(r.bind(r,61916)),Pipeline:()=>Promise.all([r.e(7126),r.e(957),r.e(3615),r.e(8968),r.e(8480),r.e(3215),r.e(4599),r.e(8657),r.e(3370),r.e(3794),r.e(4325),r.e(3966),r.e(3742)]).then(r.bind(r,27937)),PointCloudWorker:()=>Promise.all([r.e(8480),r.e(5326)]).then(r.bind(r,75326)),RasterWorker:()=>Promise.all([r.e(3615),r.e(8480),r.e(3215),r.e(6610),r.e(4216),r.e(2283)]).then(r.bind(r,61576)),SceneLayerSnappingSourceWorker:()=>Promise.all([r.e(6481),r.e(3677),r.e(6139),r.e(3248)]).then(r.bind(r,73248)),SceneLayerWorker:()=>Promise.all([r.e(8480),r.e(1412)]).then(r.bind(r,31412)),WFSSourceWorker:()=>Promise.all([r.e(7126),r.e(3615),r.e(8968),r.e(8480),r.e(3215),r.e(8657),r.e(3370),r.e(3794),r.e(8089),r.e(1419)]).then(r.bind(r,43230)),WorkerTileHandler:()=>Promise.all([r.e(4325),r.e(9805),r.e(3425),r.e(5027)]).then(r.bind(r,56456)),Lyr3DWorker:()=>r.e(1455).then(r.bind(r,41455))};var u=r(94362),f=r(17202);const{CLOSE:d,ABORT:h,INVOKE:p,RESPONSE:g,OPEN_PORT:y,ON:b}=u.MessageType;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===u.MessageType.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 _{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 _(t.port1,{channel:t,client:r});return"object"==typeof r&&"remoteClient"in r&&(r.remoteClient=n),_.clients.set(n,r),t.port2}static loadWorker(e){const t=l[e];return t?t():Promise.resolve(null)}constructor(e,t,r){this._port=e,this._jobQueue=r,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()}close(){this._post({type:d}),this._close()}isBusy(){return this._outJobs.size>0}invoke(e,t,r){const n=r?.signal,o=r?.transferList;if(!this._port)return Promise.reject(new s.Z("worker:port-closed",`Cannot call invoke('${e}'), port is closed`,{methodName:e,data:t}));const i=(0,u.jt)();return new Promise(((r,s)=>{if((0,c.Hc)(n))return this._processWork(),void s((0,c.zE)());const l=(0,c.fu)(n,(()=>{const e=this._outJobs.get(i);e&&(this._outJobs.delete(i),this._processWork(),(0,a.hw)(e.abortHandle),this._post({type:h,jobId:i}),s((0,c.zE)()))})),u={resolve:r,reject:s,abortHandle:l,debugInfo:e};this._outJobs.set(i,u),this._post({type:p,jobId:i,methodName:e,abortable:null!=n},t,o)}))}on(e,t){const r=new MessageChannel;function n(e){t(e.data)}return this._port.postMessage({type:u.MessageType.ON,eventType:e,port:r.port2},[r.port2]),r.port1.addEventListener("message",n),r.port1.start(),(0,i.kB)((()=>{r.port1.postMessage({type:u.MessageType.CLOSE}),r.port1.close(),r.port1.removeEventListener("message",n)}))}jobAdded(){this._processWork()}openPort(){const e=new MessageChannel;return this._post({type:y,port:e.port2}),e.port1}_processWork(){if(this._outJobs.size>=2)return;const e=this._jobQueue?.pop();if(!e)return;const{methodName:t,data:r,invokeOptions:n,resolver:s}=e;this.invoke(t,r,n).then((e=>s.resolve(e))).catch((e=>s.reject(e)))}_close(){this._channel&&(this._channel=void 0),this._port.removeEventListener("message",this._onMessage),this._port.close(),this._outJobs.forEach((e=>{(0,a.hw)(e.abortHandle),e.reject((0,c.zE)(`Worker closing, aborting job calling '${e.debugInfo}'`))})),this._inJobs.clear(),this._outJobs.clear(),this._invokeQueue.clear(),this._port=null,this._client=null,this._schedule=null}_onMessage(e){null!=this._schedule?this._schedule((()=>this._processMessage(e))):this._processMessage(e)}_processMessage(e){const t=(0,u.QM)(e);if(t)switch(t.type){case g:this._onResponseMessage(t);break;case p:this._invokeQueue.push(t);break;case h:this._onAbortMessage(t);break;case d:this._onCloseMessage();break;case y:this._onOpenPortMessage(t);break;case b: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&&_.clients.get(this)===e&&e.destroy(),_.clients.delete(this),e?.remoteClient&&(e.remoteClient=null)}_onInvokeMessage(e){const{methodName:t,jobId:r,data:n,abortable:s}=e,o=s?new AbortController:null,i=this._inJobs;let a,l=this._client,f=l[t];try{if(!f&&t&&t.includes(".")){const e=t.split(".");for(let t=0;t<e.length-1;t++)l=l[e[t]],f=l[e[t+1]]}if("function"!=typeof f)throw new TypeError(`${t} is not a function`);a=f.call(l,n,{client:this,signal:o?o.signal:null})}catch(e){return void this._post({type:g,jobId:r,error:(0,u.AB)(e)})}(0,c.y8)(a)?(i.set(r,{controller:o,promise:a}),a.then((e=>{i.has(r)&&(i.delete(r),this._post({type:g,jobId:r},e))}),(e=>{i.has(r)&&(i.delete(r),(0,c.D_)(e)||this._post({type:g,jobId:r,error:(0,u.AB)(e||{message:`Error encountered at method ${t}`})}))}))):this._post({type:g,jobId:r},a)}_onOpenPortMessage(e){new _(e.port,{client:this._client})}_onOnMessage(e){const{port:t}=e,r=this._client.on(e.eventType,(e=>{t.postMessage(e)})),n=(0,o.on)(e.port,"message",(e=>{const s=(0,u.QM)(e);s?.type===u.MessageType.CLOSE&&(n.remove(),r.remove(),t.close())}))}_onResponseMessage(e){const{jobId:t,error:r,data:n}=e,o=this._outJobs;if(!o.has(t))return;const i=o.get(t);o.delete(t),this._processWork(),(0,a.hw)(i.abortHandle),r?i.reject(s.Z.fromJSON(JSON.parse(r))):i.resolve(n)}_post(e,t,r){return(0,u.oi)(this._port,e,t,r)}}_.kernelInfo={buildDate:f.r,fullVersion:n.bR,revision:f.$},_.clients=new Map},94362:(e,t,r)=>{"use strict";r.d(t,{AB:()=>a,MessageType:()=>n,QM:()=>l,jt:()=>i,oi:()=>c});var n,s=r(80442);!function(e){e[e.HANDSHAKE=0]="HANDSHAKE",e[e.OPEN=1]="OPEN",e[e.OPENED=2]="OPENED",e[e.RESPONSE=3]="RESPONSE",e[e.INVOKE=4]="INVOKE",e[e.ABORT=5]="ABORT",e[e.CLOSE=6]="CLOSE",e[e.OPEN_PORT=7]="OPEN_PORT",e[e.ON=8]="ON"}(n||(n={}));let o=0;function i(){return o++}function a(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 c(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 i;if(function(e){return e&&"object"==typeof e&&("result"in e||"transferList"in e)}(r)?(i=u(r.transferList),t.data=r.result):(i=u(o),t.data=r),i){if((0,s.Z)("ff"))for(const r of i)if("byteLength"in r&&r.byteLength>267386880){const r="Worker call with large ArrayBuffer would crash Firefox";switch(t.type){case n.INVOKE:throw r;case n.RESPONSE:return void c(e,{type:n.RESPONSE,jobId:t.jobId,error:a(r)})}}e.postMessage(t,i)}else e.postMessage(t)}function l(e){if(!e)return null;const t=e.data;return t?"string"==typeof t?JSON.parse(t):t:null}function u(e){if(!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||"ArrayBuffer"===e?.constructor?.name}(e)));return t.length?t:null}},40330:(e,t,r)=>{"use strict";r.d(t,{Dp:()=>u,bR:()=>c,i8:()=>i,id:()=>a,qh:()=>l});var n=r(80442),s=r(17452),o=r(17202);Symbol.dispose??=Symbol("Symbol.dispose"),Symbol.asyncDispose??=Symbol("Symbol.asyncDispose");const i="4.29";let a,c=i;function l(e){a=e}function u(e){const t=a?.findCredential(e);return t?.token?(0,s.ZN)(e,"token",t.token):e}c=`4.29.0-next.${o.r}`,(0,n.Z)("host-webworker")},19745:(e,t,r)=>{"use strict";r.d(t,{P:()=>i,a:()=>o});const n=/^https:\/\/([a-z\d-]+)(\.maps([^.]*))?\.arcgis\.com/i,s={devext:{customBaseUrl:"mapsdevext.arcgis.com",portalHostname:"devext.arcgis.com"},qaext:{customBaseUrl:"mapsqa.arcgis.com",portalHostname:"qaext.arcgis.com"},www:{customBaseUrl:"maps.arcgis.com",portalHostname:"www.arcgis.com"}};function o(e){const t=e?.match(n);if(!t)return null;const[,r,o,i]=t;if(!r)return null;let a=null,c=null,l=null;const{devext:u,qaext:f,www:d}=s;if(o)if(a=r,i)switch(i.toLowerCase()){case"devext":({customBaseUrl:c,portalHostname:l}=u);break;case"qa":({customBaseUrl:c,portalHostname:l}=f);break;default:return null}else({customBaseUrl:c,portalHostname:l}=d);else switch(r.toLowerCase()){case"devext":({customBaseUrl:c,portalHostname:l}=u);break;case"qaext":({customBaseUrl:c,portalHostname:l}=f);break;case"www":({customBaseUrl:c,portalHostname:l}=d);break;default:return null}return{customBaseUrl:c,isPortal:!1,portalHostname:l,urlKey:a}}function i(e){return/\/(sharing|usrsvcs)\/(appservices|servers)\//i.test(e)}},49917:(e,t,r)=>{"use strict";function n(e){const t=atob(e),r=new Uint8Array(t.length);for(let e=0;e<t.length;e++)r[e]=t.charCodeAt(e);return r.buffer}function s(e){const t=new Uint8Array(e);let r="";for(let e=0;e<t.length;e++)r+=String.fromCharCode(t[e]);return btoa(r)}r.d(t,{R:()=>n,s:()=>s})},17202:(e,t,r)=>{"use strict";r.d(t,{$:()=>s,r:()=>n});const n="20231026",s="99c16534868a6de87f348041c3234a73473b20d8"}},t={};function r(n){var s=t[n];if(void 0!==s)return s.exports;var o=t[n]={exports:{}};return e[n](o,o.exports,r),o.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:"53da86952ff6afd0eecd",118:"2904a77b72c341edfcb5",163:"f38872fcbb6056858319",247:"a9f83bbccf3b5f229262",299:"7cb698c248db61b73cfe",304:"e7317511ce0139a13098",540:"8f4646bd3aac81136eb7",565:"01ec6da0c371bf43f48c",572:"55fcba180c3a0504558d",576:"c5c56b6d99db96a6755a",661:"39ae4b9b766f674bc6f2",664:"a24a92835a939ba41d0b",770:"b158e232e111e5aa6b62",819:"d1ead6e8aa7e8e21fbc6",821:"7b8377b3a9f78f9d3613",861:"d89ffc1279f4b3bcbe7c",946:"ad4f77a1d238bd763bc4",951:"777fcc4ed4cc2109c832",957:"f18e27660c644512d224",1073:"9275ab11ba306dc32df0",1158:"de8abbe1356873fdce87",1316:"1c0d7eb69c130cae77a2",1320:"5af70f5cca59ad164810",1412:"7fe4bf7559c2f4c62858",1419:"7ade568f3652e5a3ce9c",1421:"9244c52ad4bc86ebdd5c",1423:"3d98b873bf07d8e112ba",1433:"4d5bdf18feeb9c8cb6ff",1444:"b7c81a5bbcdd94b8a7f6",1445:"57e2f62082148e86b0ab",1455:"269a180bca96c91e1a24",1537:"a95d0737450aa583c1aa",1566:"853358f7d0300631bf92",1690:"a783ca5aa9795e279b6f",1767:"d9a30fbccd8552b0ba0a",1773:"711f283749579f7239d2",1790:"dfa08348e79346c9a8a2",1826:"e36edf4f916c508c8c1a",1983:"e4efee54c79c79bba3a8",2046:"c3b8b40115be5a2b960e",2134:"cced7a26b9c98c63f953",2283:"02f7a30731458ea9d553",2330:"92a00eaac7760c701355",2421:"4b7810df32e91fecd0b4",2594:"ef04fb44a0f5e4456c9a",2664:"41306b698f78001dda55",2712:"fd0f9ba2cae72d569611",2713:"9ed4d6fa129a4a1c3529",2763:"589489090116d447324f",2834:"58b404cb320f0a202f42",3027:"b586ae0150177f67ceb2",3073:"99fd09dd42b75a932e84",3215:"e003c8f84acc8ce6cdff",3248:"5f0436edd494889f8889",3310:"e83c9a71d2cce98c5a57",3370:"2a8ec76e6ef0edc4dfb6",3425:"37edbd9b05bfdb2e645d",3529:"53f851f85c6fda00d4a8",3597:"d74da372b1aa189d033c",3601:"70d9d11b626f7e5ad9c6",3615:"b95bd1c7a8561554065a",3637:"589b50bfa965cdb22e90",3677:"f6ed6b17d2e5653318f6",3742:"1e5f2a5422da6487d8d2",3758:"548bbc0862e58a1947bf",3778:"2e46978584e3521deab6",3794:"9786b4869dfc71cdfd19",3809:"28eea2b36ea8a618ceee",3831:"adafff31dc8edd0b12e5",3847:"647b9882af824e98d04f",3852:"f0c62bb406bb93b1408a",3914:"52aae616501d52173ae1",3966:"8e15d42d6f2b8f5c792c",3992:"8926596796aa0a5abd4e",4041:"9a7cc762e57714cbf00a",4166:"4a98e4df168f0a57b2b5",4216:"0fac8a4747b1ad8e1618",4325:"f3e723075f460c36b819",4330:"224e79f6c172da444e0a",4358:"4a2a0091cd830b6a1729",4371:"28154e3c66879fd39e0c",4475:"80690a936d573d009eae",4492:"914adb8839e250bb8390",4499:"c83b0b5799bdae61fa8c",4573:"2b47ef3571f54c946683",4599:"7cf7f2b991a7cbdad2ce",4608:"0a2b2f515218c901675d",4680:"2d364d7a5fda5659c9d0",4695:"10dc578a90e1194c8720",4697:"386d7a038abe36e3bb28",4720:"e06cd10b6f8f363b5131",4828:"a2c055dbc910d5672649",4998:"4a21558f271656896bab",5027:"8e25023fe5570152deb2",5129:"7f41c3ee7aa87f62091b",5234:"8b6b963230df56850580",5243:"66a996f85f0135212e6f",5326:"cf982f2694d9a094e8fc",5329:"1b37f92306f1305f0460",5334:"80bf6cf1bef17215bca4",5389:"f723fa99bcd1b58e480f",5463:"98bdfdafd9c72f4606bf",5481:"2d4f9337f96573d93b62",5642:"610afd59e4844a9f198f",5732:"83f7e22a12d90ef93e62",5837:"9d2f3de6953a8ebafdd3",5883:"2304b7456ced997904f6",5935:"60a08ce29d09cb07ef06",5946:"14c399a5dc8e867a676d",6e3:"af4763f751b630390cf6",6047:"cb53577d7385f3ec5ca6",6124:"fa66f82e551de2d3b7c2",6139:"c299f09c24edf216a179",6233:"45d2d63f90a83472acd0",6237:"6f1c298509e89a7479ee",6261:"567b0694bb297f0f4672",6404:"73c60a8ee4d8b2991b5f",6413:"3a5d5c8ce13a2752dfc7",6459:"8b95d5918bd1c168679f",6481:"41bebad0a39213a63405",6569:"b138196d304883efd5f6",6594:"30b6431e7944d0344ba4",6610:"3ecf6a0d92be165aaab2",6654:"39a56453d78be7b70010",6710:"c20b22aab4b9f7ab101f",6774:"d7270cb3689d6a08f530",6882:"e4ec945d303d5e9b9147",7085:"b436b84c7c9f4b4b0197",7126:"0f804e3f888cb4998f46",7157:"51019455062d08f132b3",7267:"b6cc8d7dcc710231fe72",7277:"f442f1397636cd3d8b40",7301:"6046be598e8c673eeb1f",7307:"76c11b2eb1d80cc9e130",7360:"4354b5696fce0421927a",7374:"60b955e783821a5e6c06",7528:"f11c39051e02a4f3bda3",7595:"c6f4383f67699360af75",7701:"ec286e256c4e61bcb8f3",7863:"46e92883130c610c1bb4",7873:"0e79e6dff936855463b1",7899:"9ae187fffdc3b12b7fcf",7902:"33b3a46f1fddc6cde8f4",7915:"451cc2e46b10f7f6da15",8008:"bf7efa6fba8b277c507d",8062:"15acfba4a0b3b22c3f61",8089:"b633ef9cc64072d70ca3",8092:"70738db8ca6367a52ef5",8096:"63c8bf00120a4e67f5b0",8153:"7ebda506648e0e75eeed",8228:"e5352dc8983d06d4ee0f",8480:"f781e88980c8fc3fa727",8592:"1da721608993783dc9cf",8621:"a5d0625e636ffda92bb7",8636:"c90b91b0617e12d6e0a6",8652:"a6c6998874c44c7623ad",8657:"a160576f21ada91995ac",8758:"b6bd31674076e543d8b2",8828:"2f8a4c55f69f48aec4d0",8853:"43ed361dfdc082696769",8968:"7f3bc7a2de59e485f22f",9016:"d93c567f6a406dd24efa",9153:"793890ebbe4501f48a55",9169:"a360534e89a337871921",9238:"0b5bd015fde83dcc634f",9243:"5bb8f1fb77682ee36444",9291:"d191267d91a53db42956",9296:"dd841949503f3a4bcc3a",9379:"974523669b4ade702706",9594:"7b1660f66e73438772af",9717:"f0a76660fa11186aebca",9735:"8c40e4d7edb2c5325fd0",9790:"a23d1d54b9a9a3d3de36",9805:"c734116e34106810a3bf",9884:"68b0e0aa33880bc1ba77",9889:"ee32213b605a935b3440",9904:"3009e3a62da9460ac6fd",9931:"ac25e8806015fa90f03e",9970:"df8e5e7371377aed580c",9971:"34049f81c2a6b8cd7b2f"}[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");if(n.length)for(var s=n.length-1;s>-1&&!e;)e=n[s--].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};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[s,o,i]=t;for(var a in o)r.o(o,a)&&(r.m[a]=o[a]);for(i&&i(r);s.length;)e[s.pop()]=1;n(t)}})(),r(88277);var n=r(728);RemoteClient=n})();
|
|
1
|
+
var RemoteClient;(()=>{var e={88277:(e,t,r)=>{r.p=self.esriConfig.assetsPath+"/esri/core/workers/"},43697:(e,t,r)=>{"use strict";function n(e,t,r,n){var s,o=arguments.length,i=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)i=Reflect.decorate(e,t,r,n);else for(var a=e.length-1;a>=0;a--)(s=e[a])&&(i=(o<3?s(i):o>3?s(t,r,i):s(t,r))||i);return o>3&&i&&Object.defineProperty(t,r,i),i}r.d(t,{_:()=>n}),"function"==typeof SuppressedError&&SuppressedError},68773:(e,t,r)=>{"use strict";r.d(t,{default:()=>o}),r(80442);var n=r(78286),s=r(17202);const o={apiKey:void 0,applicationName:"",applicationUrl:globalThis.location?.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",userPrivilegesApplied:!0,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:{crossOriginNoCorsDomains:null,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,priority:"high",proxyRules:[],proxyUrl:null,timeout:6e4,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&((0,n.RH)(o,globalThis.esriConfig,!0),delete o.has),!o.assetsPath){{const e="4.29.0";o.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@${e}-next.${s.r}/assets`}o.defaultAssetsPath=o.assetsPath}},92036:(e,t,r)=>{"use strict";r.d(t,{Z:()=>x});var n=r(60235),s=r(61247),o=r(92604),i=r(70586),a=r(88022),c=r(67723),l=r(7628),u=(r(80442),r(22974)),f=r(71143),d=r(97831),h=r(42100),p=r(31263),g=r(58971),y=r(44550);class b extends h.s{constructor(e,t){super(),this.propertyName=e,this.metadata=t,this._accessed=null,this._handles=null,this.flags=0,this.flags=y.v.Dirty|(t.nonNullable?y.v.NonNullable:0)|(t.hasOwnProperty("value")?y.v.HasDefaultValue:0)|(void 0===t.get?y.v.DepTrackingInitialized:0)|(void 0===t.dependsOn?y.v.AutoTracked:0)}destroy(){this.flags&y.v.Dirty&&this.onCommitted(),super.destroy(),this._accessed=null,this._clearObservationHandles()}getComputed(e){(0,g.it)(this);const t=e.store,r=this.propertyName,n=this.flags,s=t.get(r);if(n&y.v.Computing)return s;if(~n&y.v.Dirty&&t.has(r))return s;this.flags|=y.v.Computing;const o=e.host;let i;n&y.v.AutoTracked?i=(0,g.LJ)(this,this.metadata.get,o):((0,g.GF)(o,this),i=this.metadata.get.call(o)),t.set(r,i,p.s3.COMPUTED);const a=t.get(r);return a===s?this.flags&=~y.v.Dirty:(0,g.gb)(this.commit,this),this.flags&=~y.v.Computing,a}onObservableAccessed(e){if(e===this)return;let t=this._accessed;if(null==t)t=[],this._accessed=t;else if(t.includes(e))return;t.push(e)}onTrackingEnd(){this._clearObservationHandles(),this.flags|=y.v.DepTrackingInitialized;const e=this._accessed;if(null==e||0===e.length)return;let t=this._handles;null==t&&(t=[],this._handles=t);for(let r=0;r<e.length;++r)t.push(e[r].observe(this));e.length=0}notifyChange(){this.onInvalidated(),this.onCommitted()}invalidate(){this.onInvalidated()}commit(){this.flags&=~y.v.Dirty,this.onCommitted()}_clearObservationHandles(){const e=this._handles;if(null!==e){for(let t=0;t<e.length;++t)e[t].remove();e.length=0}}onInvalidated(){~this.flags&y.v.Overriden&&(this.flags|=y.v.Dirty);const e=this._observers;if(e&&e.length>0)for(const t of e)t.onInvalidated()}onCommitted(){const e=this._observers;if(e&&e.length>0){const t=e.slice();for(const e of t)e.onCommitted()}}}class m{constructor(){this._values=new Map,this.multipleOriginsSupported=!1}clone(e){const t=new m;return this._values.forEach(((r,n)=>{e&&e.has(n)||t.set(n,(0,u.d9)(r))})),t}get(e){return this._values.get(e)}originOf(){return p.s3.USER}keys(){return[...this._values.keys()]}set(e,t){this._values.set(e,t)}delete(e){this._values.delete(e)}has(e){return this._values.has(e)}forEach(e){this._values.forEach(e)}}function _(e,t,r){return void 0!==e}function v(e,t,r,n){return!(void 0===e||null==r&&e.flags&y.v.NonNullable&&(n.lifecycle,d.F.INITIALIZING,1))}function w(e){return e&&"function"==typeof e.destroy}o.Z.getLogger("esri.core.accessorSupport.Properties");class O{constructor(e){this.host=e,this.propertiesByName=new Map,this.ctorArgs=null,this.destroyed=!1,this.lifecycle=d.F.INITIALIZING,this.store=new m,this._origin=p.s3.USER;const t=this.host.constructor.__accessorMetadata__;for(const e in t){const r=new b(e,t[e]);this.propertiesByName.set(e,r)}this.metadatas=t}initialize(){this.lifecycle=d.F.CONSTRUCTING}constructed(){this.lifecycle=d.F.CONSTRUCTED}destroy(){this.destroyed=!0;for(const[e,t]of this.propertiesByName){if(t.metadata.autoDestroy){const r=this.internalGet(e);r&&w(r)&&(r.destroy(),~t.flags&y.v.NonNullable&&this._internalSet(t,null))}t.destroy()}}get initialized(){return this.lifecycle!==d.F.INITIALIZING}get(e){const t=this.propertiesByName.get(e);if(t.metadata.get)return t.getComputed(this);(0,g.it)(t);const r=this.store;return r.has(e)?r.get(e):t.metadata.value}originOf(e){const t=this.store.originOf(e);if(void 0===t){const t=this.propertiesByName.get(e);if(void 0!==t&&t.flags&y.v.HasDefaultValue)return"defaults"}return(0,p.x3)(t)}has(e){return!!this.propertiesByName.has(e)&&this.store.has(e)}keys(){return[...this.propertiesByName.keys()]}internalGet(e){const t=this.propertiesByName.get(e);if(_(t))return this.store.has(e)?this.store.get(e):t.metadata.value}internalSet(e,t){const r=this.propertiesByName.get(e);_(r)&&this._internalSet(r,t)}getDependsInfo(e,t,r){const n=this.propertiesByName.get(t);if(!_(n))return"";const s=new Set,o=(0,g.LJ)({onObservableAccessed:e=>s.add(e),onTrackingEnd:()=>{}},(()=>n.metadata.get?.call(e)));let i=`${r}${e.declaredClass.split(".").pop()}.${t}: ${o}\n`;if(0===s.size)return i;r+=" ";for(const e of s)e instanceof b&&(i+=`${r}${e.propertyName}: undefined\n`);return i}setAtOrigin(e,t,r){const n=this.propertiesByName.get(e);if(_(n))return this._setAtOrigin(n,t,r)}isOverridden(e){const t=this.propertiesByName.get(e);return void 0!==t&&!!(t.flags&y.v.Overriden)}clearOverride(e){const t=this.propertiesByName.get(e);t&&t.flags&y.v.Overriden&&(t.flags&=~y.v.Overriden,t.notifyChange())}override(e,t){const r=this.propertiesByName.get(e);if(!v(r,0,t,this))return;const n=r.metadata.cast;if(n){const e=this._cast(n,t),{valid:r,value:s}=e;if(A.release(e),!r)return;t=s}r.flags|=y.v.Overriden,this._internalSet(r,t)}set(e,t){const r=this.propertiesByName.get(e);if(!v(r,0,t,this))return;const n=r.metadata.cast;if(n){const e=this._cast(n,t),{valid:r,value:s}=e;if(A.release(e),!r)return;t=s}const s=r.metadata.set;s?s.call(this.host,t):this._internalSet(r,t)}setDefaultOrigin(e){this._origin=(0,p.M9)(e)}getDefaultOrigin(){return(0,p.x3)(this._origin)}notifyChange(e){const t=this.propertiesByName.get(e);void 0!==t&&t.notifyChange()}invalidate(e){const t=this.propertiesByName.get(e);void 0!==t&&t.invalidate()}commit(e){const t=this.propertiesByName.get(e);void 0!==t&&t.commit()}_internalSet(e,t){const r=this.lifecycle!==d.F.INITIALIZING?this._origin:p.s3.DEFAULTS;this._setAtOrigin(e,t,r)}_setAtOrigin(e,t,r){const n=this.store,s=e.propertyName;n.has(s,r)&&(0,u.fS)(t,n.get(s))&&~e.flags&y.v.Overriden&&r===n.originOf(s)||(e.invalidate(),n.set(s,t,r),e.commit(),(0,g.mS)(this.host,e))}_cast(e,t){const r=A.acquire();return r.valid=!0,r.value=t,e&&(r.value=e.call(this.host,t,r)),r}}const A=new f.Z(class{constructor(){this.value=null,this.valid=!0}acquire(){this.valid=!0}release(){this.value=null}});var S=r(37697);var k;!function(e){e[e.Ignore=0]="Ignore",e[e.Destroy=1]="Destroy",e[e.ThrowError=2]="ThrowError"}(k||(k={}));var T,E,N=r(26258),j=r(5600),C=r(52011);function P(e){if(null==e)return{value:e};if(Array.isArray(e))return{type:[e[0]],value:null};switch(typeof e){case"object":return e.constructor?.__accessorMetadata__||e instanceof Date?{type:e.constructor,value:e}:e;case"boolean":return{type:Boolean,value:e};case"string":return{type:String,value:e};case"number":return{type:Number,value:e};case"function":return{type:e,value:null};default:return}}const M=Symbol("Accessor-Handles"),I=Symbol("Accessor-Initialized");class x{static createSubclass(e={}){if(Array.isArray(e))throw new Error("Multi-inheritance unsupported since 4.16");const{properties:t,declaredClass:r,constructor:n}=e;delete e.declaredClass,delete e.properties,delete e.constructor;const s=this;class o extends s{constructor(...e){super(...e),this.inherited=null,n&&n.apply(this,e)}}(0,l.fp)(o.prototype);for(const t in e){const r=e[t];o.prototype[t]="function"==typeof r?function(...e){const n=this.inherited;let o;this.inherited=function(...e){if(s.prototype[t])return s.prototype[t].apply(this,e)};try{o=r.apply(this,e)}catch(e){throw this.inherited=n,e}return this.inherited=n,o}:e[t]}for(const e in t){const r=P(t[e]);(0,j.Cb)(r)(o.prototype,e)}return(0,C.j)(r)(o)}constructor(...e){if(this[T]=null,this[E]=!1,this.constructor===x)throw new Error("[accessor] cannot instantiate Accessor. This can be fixed by creating a subclass of Accessor");const t=new O(this);Object.defineProperty(this,"__accessor__",{enumerable:!1,value:t}),e.length>0&&this.normalizeCtorArgs&&(t.ctorArgs=this.normalizeCtorArgs.apply(this,e))}postscript(e){const t=this.__accessor__,r=t.ctorArgs||e;t.initialize(),r&&(this.set(r),t.ctorArgs=null),t.constructed(),this.initialize(),this[I]=!0}initialize(){}[a.l](){this[M]=(0,i.SC)(this[M])}destroy(){this.destroyed||((0,N.BT)(this),this.__accessor__.destroy())}[Symbol.dispose](){this.destroy()}get constructed(){return this.__accessor__&&this.__accessor__.initialized||!1}get initialized(){return this[I]}get destroyed(){return this.__accessor__&&this.__accessor__.destroyed||!1}commitProperty(e){(0,c.U2)(this,e)}get(e){return(0,n.XV)(o.Z.getLogger(this),"`Accessor.get` is deprecated in favor of using optional chaining",{version:"4.28",see:"https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Optional_chaining"}),(0,c.U2)(this,e)}hasOwnProperty(e){return this.__accessor__?this.__accessor__.has(e):Object.prototype.hasOwnProperty.call(this,e)}keys(){return this.__accessor__?this.__accessor__.keys():[]}set(e,t){return(0,S.t)(this,e,t),this}watch(e,t,r){return(0,N.YP)(this,e,t,r)}addHandles(e,t){if(this.destroyed){const t=Array.isArray(e)?e:[e];for(const e of t)e.remove();return}let r=this[M];null==r&&(r=this[M]=new s.Z),r.add(e,t)}removeHandles(e){const t=this[M];null!=t&&t.remove(e)}removeAllHandles(){const e=this[M];null!=e&&e.removeAll()}hasHandles(e){const t=this[M];return null!=t&&t.has(e)}_override(e,t){void 0===t?this.__accessor__.clearOverride(e):this.__accessor__.override(e,t)}_clearOverride(e){return this.__accessor__.clearOverride(e)}_overrideIfSome(e,t){null==t?this.__accessor__.clearOverride(e):this.__accessor__.override(e,t)}_isOverridden(e){return this.__accessor__.isOverridden(e)}notifyChange(e){this.__accessor__.notifyChange(e)}_get(e){return this.__accessor__.internalGet(e)}_set(e,t){return this.__accessor__.internalSet(e,t),this}}T=M,E=I},3894:(e,t,r)=>{"use strict";r.d(t,{Z:()=>o});var n=r(71143);function s(e){e.length=0}class o{constructor(e=50,t=50){this._pool=new n.Z(Array,void 0,s,t,e)}acquire(){return this._pool.acquire()}release(e){this._pool.release(e)}prune(){this._pool.prune(0)}static acquire(){return i.acquire()}static release(e){return i.release(e)}static prune(){i.prune()}}const i=new o(100)},20102:(e,t,r)=>{"use strict";r.d(t,{Z:()=>i});var n=r(22974),s=r(92604),o=r(58896);class i extends o.Z{constructor(e,t,r){super(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 s.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"},61247:(e,t,r)=>{"use strict";r.d(t,{Z:()=>s});var n=r(66374);class s{constructor(){this._groups=new Map}destroy(){this.removeAll()}get size(){let e=0;return this._groups.forEach((t=>{e+=t.length})),e}add(e,t){if((0,n.TW)(e)){const r=this._getOrCreateGroup(t);for(const t of e)this._isHandle(t)&&r.push(t)}else this._isHandle(e)&&this._getOrCreateGroup(t).push(e);return this}forEach(e,t){if("function"==typeof e)this._groups.forEach((t=>t.forEach(e)));else{const r=this._getGroup(e);r&&t&&r.forEach(t)}}has(e){return this._groups.has(this._ensureGroupKey(e))}remove(e){if("string"!=typeof e&&(0,n.TW)(e)){for(const t of e)this.remove(t);return this}return this.has(e)?(this._removeAllFromGroup(this._getGroup(e)),this._groups.delete(this._ensureGroupKey(e)),this):this}removeAll(){return this._groups.forEach((e=>this._removeAllFromGroup(e))),this._groups.clear(),this}_isHandle(e){return e&&(!!e.remove||e instanceof s)}_getOrCreateGroup(e){if(this.has(e))return this._getGroup(e);const t=[];return this._groups.set(this._ensureGroupKey(e),t),t}_getGroup(e){return this._groups.get(this._ensureGroupKey(e))}_ensureGroupKey(e){return e||"_default_"}_removeAllFromGroup(e){for(const t of e)t instanceof s?t.removeAll():t.remove()}}},96674:(e,t,r)=>{"use strict";r.d(t,{wq:()=>b,eC:()=>p,AK:()=>y});var n=r(43697),s=r(92036),o=r(22974),i=r(31263);class a{constructor(){this._values=new Map,this.multipleOriginsSupported=!1}clone(e){const t=new a;return this._values.forEach(((r,n)=>{e&&e.has(n)||t.set(n,(0,o.d9)(r.value),r.origin)})),t}get(e,t){t=this._normalizeOrigin(t);const r=this._values.get(e);return null==t||r?.origin===t?r?.value:void 0}originOf(e){return this._values.get(e)?.origin??i.s3.USER}keys(e){e=this._normalizeOrigin(e);const t=[...this._values.keys()];return null==e?t:t.filter((t=>this._values.get(t)?.origin===e))}set(e,t,r){if((r=this._normalizeOrigin(r))===i.s3.DEFAULTS){const t=this._values.get(e);if(null!=t?.origin&&t.origin>r)return}this._values.set(e,new c(t,r))}delete(e,t){null!=(t=this._normalizeOrigin(t))&&this._values.get(e)?.origin!==t||this._values.delete(e)}has(e,t){return null!=(t=this._normalizeOrigin(t))?this._values.get(e)?.origin===t:this._values.has(e)}forEach(e){this._values.forEach((({value:t},r)=>e(t,r)))}_normalizeOrigin(e){if(null!=e)return e===i.s3.DEFAULTS?e:i.s3.USER}}class c{constructor(e,t){this.value=e,this.origin=t}}var l=r(41103),u=r(50549),f=r(1153),d=r(76169),h=r(52011);const p=e=>{let t=class extends e{constructor(...e){super(...e);const t=(0,f.vw)(this),r=t.store,n=new a;t.store=n,(0,l.M)(t,r,n)}read(e,t){(0,u.i)(this,e,t)}write(e,t){return(0,d.c)(this,e??{},t)}toJSON(e){return this.write({},e)}static fromJSON(e,t){return g.call(this,e,t)}};return t=(0,n._)([(0,h.j)("esri.core.JSONSupport")],t),t.prototype.toJSON.isDefaultToJSON=!0,t};function g(e,t){if(!e)return null;if(e.declaredClass)throw new Error("JSON object is already hydrated");const r=new this;return r.read(e,t),r}function y(e){return e&&"object"==typeof e&&"toJSON"in e&&"function"==typeof e.toJSON}let b=class extends(p(s.Z)){};b=(0,n._)([(0,h.j)("esri.core.JSONSupport")],b)},92604:(e,t,r)=>{"use strict";r.d(t,{Z:()=>i});var n=r(68773),s=(r(80442),r(19153));const o={info:0,warn:1,error:2,none:3};class i{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,i._loggers.set(this.module,this);const t=this.module.lastIndexOf(".");-1!==t&&(this._parent=i.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 test(){return{resetLoggers(e=new Map){const t=i._loggers;return i._loggers=e,t},set throttlingDisabled(e){i._throttlingDisabled=e}}}static getLogger(e){return e="string"!=typeof e?e.declaredClass:e,i._loggers.get(e)||new i({module:e})}_log(e,t,...r){if(this._matchLevel(e)){if("always"!==t&&!i._throttlingDisabled){const n=this._argsToKey(r),s=this._loggedMessages[e].get(n);if("once"===t&&null!=s||"oncePerTick"===t&&s&&s>=i._tickCounter)return;this._loggedMessages[e].set(n,i._tickCounter),i._scheduleTickCounterIncrement()}for(const t of n.default.log.interceptors)if(t(e,this.module,...r))return;this._inheritedWriter()(e,this.module,...r)}}_parentWithMember(e,t){let r=this;for(;null!=r;){const t=r[e];if(null!=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.default.log.level||"warn";return o[this._parentWithMember("level",t)]<=o[e]}_argsToKey(...e){return(0,s.hP)(JSON.stringify(e,((e,t)=>"object"!=typeof t||Array.isArray(t)?t:"[Object]")))}static _scheduleTickCounterIncrement(){i._tickCounterScheduled||(i._tickCounterScheduled=!0,Promise.resolve().then((()=>{i._tickCounter++,i._tickCounterScheduled=!1})))}}i._loggers=new Map,i._tickCounter=0,i._tickCounterScheduled=!1,i._throttlingDisabled=!1},30175:(e,t,r)=>{"use strict";function n(e,t,r){const n=e.get(t);if(void 0!==n)return n;const s=r();return e.set(t,s),s}r.d(t,{s1:()=>n})},58896:(e,t,r)=>{"use strict";r.d(t,{Z:()=>s});var n=r(78286);class s{constructor(e,t,r){this.name=e,this.details=r,this.message=(t&&function(e,t){return e.replaceAll(/\$\{([^\s\:\}]*)(?:\:([^\s\:\}]+))?\}/g,((e,r)=>""===r?"$":((0,n.hS)(r,t)??"").toString()))}(t,r))??""}toString(){return"["+this.name+"]: "+this.message}}},71143:(e,t,r)=>{"use strict";r.d(t,{Z:()=>n});class n{constructor(e,t,r,n=1,s=0){if(this._ctor=e,this._acquireFunction=t,this._releaseFunction=r,this.allocationSize=n,this._pool=new Array(s),this._initialSize=s,this._ctor)for(let e=0;e<s;e++)this._pool[e]=new this._ctor;this.allocationSize=Math.max(n,1)}destroy(){this.prune(0)}acquire(...e){let t;if(n.test.disabled)t=new this._ctor;else{if(0===this._pool.length){const e=this.allocationSize;for(let t=0;t<e;t++)this._pool[t]=new this._ctor}t=this._pool.pop()}return this._acquireFunction?this._acquireFunction(t,...e):function(e){return e?.acquire&&"function"==typeof e.acquire}(t)&&t.acquire(...e),t}release(e){var t;e&&!n.test.disabled&&(this._releaseFunction?this._releaseFunction(e):(t=e,t?.release&&"function"==typeof t.release&&e.release()),this._pool.push(e))}prune(e=this._initialSize){if(!(e>=this._pool.length)){for(let t=e;t<this._pool.length;++t){const e=this._pool[t];this._dispose(e)}this._pool.length=e}}_dispose(e){e.dispose&&"function"==typeof e.dispose&&e.dispose()}}n.test={disabled:!1}},54790:(e,t,r)=>{"use strict";r.d(t,{Z:()=>n});class n{constructor(e,t=30){this.name=e,this._counter=0,this._samples=new Array(t)}record(e){null!=e&&(this._samples[++this._counter%this._samples.length]=e)}get median(){return this._samples.slice().sort(((e,t)=>e-t))[Math.floor(this._samples.length/2)]}get average(){return this._samples.reduce(((e,t)=>e+t),0)/this._samples.length}get last(){return this._samples[this._counter%this._samples.length]}}},44553:(e,t,r)=>{"use strict";r.d(t,{Z:()=>i});var n,s=r(67676);!function(e){const t=(e,t,r,n)=>{let s=t,o=t;const i=r>>>1,a=e[s-1];for(;o<=i;){o=s<<1,o<r&&n(e[o-1],e[o])<0&&++o;const t=e[o-1];if(n(t,a)<=0)break;e[s-1]=t,s=o}e[s-1]=a},r=(e,t)=>e<t?-1:e>t?1:0;e.sort=function(e,n,s,o){void 0===n&&(n=0),void 0===s&&(s=e.length),void 0===o&&(o=r);for(let r=s>>>1;r>n;r--)t(e,r,s,o);const i=n+1;for(let r=s-1;r>n;r--){const s=e[n];e[n]=e[r],e[r]=s,t(e,i,r,o)}},e.iterableSort=function*(e,n,s,o){void 0===n&&(n=0),void 0===s&&(s=e.length),void 0===o&&(o=r);for(let r=s>>>1;r>n;r--)t(e,r,s,o),yield;const i=n+1;for(let r=s-1;r>n;r--){const s=e[n];e[n]=e[r],e[r]=s,t(e,i,r,o),yield}}}(n||(n={}));const o=n;class i{constructor(e){this.data=[],this._length=0,this._allocator=void 0,this._deallocator=()=>null,this._shrink=()=>{},this._hint=new s.SO,e&&(e.initialSize&&(this.data=new Array(e.initialSize)),e.allocator&&(this._allocator=e.allocator),void 0!==e.deallocator&&(this._deallocator=e.deallocator),e.shrink&&(this._shrink=()=>a(this)))}toArray(){return this.data.slice(0,this.length)}filter(e){const t=new Array;for(let r=0;r<this._length;r++){const n=this.data[r];e(n)&&t.push(n)}return t}at(e){if((e=Math.trunc(e)||0)<0&&(e+=this._length),!(e<0||e>=this._length))return this.data[e]}includes(e,t){const r=this.data.indexOf(e,t);return-1!==r&&r<this.length}get length(){return this._length}set length(e){if(e>this._length){if(this._allocator){for(;this._length<e;)this.data[this._length++]=this._allocator(this.data[this._length]);return}this._length=e}else{if(this._deallocator)for(let t=e;t<this._length;++t)this.data[t]=this._deallocator(this.data[t]);this._length=e,this._shrink()}}clear(){this.length=0}prune(){this.clear(),this.data=[]}push(e){this.data[this._length++]=e}pushArray(e,t=e.length){for(let r=0;r<t;r++)this.data[this._length++]=e[r]}fill(e,t){for(let r=0;r<t;r++)this.data[this._length++]=e}pushNew(){this._allocator&&(this.data[this.length]=this._allocator(this.data[this.length]));const e=this.data[this._length];return++this._length,e}unshift(e){this.data.unshift(e),this._length++,a(this)}pop(){if(0===this.length)return;const e=this.data[this.length-1];return this.length=this.length-1,this._shrink(),e}remove(e){const t=(0,s.cq)(this.data,e,this.length,this._hint);if(-1!==t)return this.data.splice(t,1),this.length=this.length-1,e}removeUnordered(e){return this.removeUnorderedIndex((0,s.cq)(this.data,e,this.length,this._hint))}removeUnorderedIndex(e){if(!(e>=this.length||e<0))return this.swapElements(e,this.length-1),this.pop()}removeUnorderedMany(e,t=e.length,r){this.length=(0,s.FY)(this.data,e,this.length,t,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(e,t){if(e>=this.length||t>=this.length||e===t)return;const r=this.data[e];this.data[e]=this.data[t],this.data[t]=r}sort(e){o.sort(this.data,0,this.length,e)}iterableSort(e){return o.iterableSort(this.data,0,this.length,e)}some(e,t){for(let r=0;r<this.length;++r)if(e.call(t,this.data[r],r,this.data))return!0;return!1}find(e,t){for(let r=0;r<this.length;++r){const n=this.data[r];if(e.call(t,n,r))return n}}filterInPlace(e,t){let r=0;for(let n=0;n<this._length;++n){const s=this.data[n];e.call(t,s,n,this.data)&&(this.data[n]=this.data[r],this.data[r]=s,r++)}if(this._deallocator)for(let e=r;e<this._length;e++)this.data[e]=this._deallocator(this.data[e]);return this._length=r,this._shrink(),this}forAll(e,t){const r=this.length,n=this.data;for(let s=0;s<r;++s)e.call(t,n[s],s,n)}forEach(e,t){for(let r=0;r<this.length;++r)e.call(t,this.data[r],r,this.data)}map(e,t){const r=new Array(this.length);for(let n=0;n<this.length;++n)r[n]=e.call(t,this.data[n],n,this.data);return r}reduce(e,t){let r=t;for(let t=0;t<this.length;++t)r=e(r,this.data[t],t,this.data);return r}has(e){const t=this.length,r=this.data;for(let n=0;n<t;++n)if(r[n]===e)return!0;return!1}}function a(e){e.data.length>1.5*e.length&&(e.data.length=Math.floor(1.1*e.length))}},77734:(e,t,r)=>{"use strict";r.d(t,{Z:()=>n});class n{constructor(e=1){this._seed=e}set seed(e){this._seed=e??Math.random()*n._m}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},20941:(e,t,r)=>{"use strict";r.d(t,{Z:()=>s});var n=r(58896);class s extends n.Z{constructor(e,t,r){super(e,t,r)}}s.prototype.type="warning"},42100:(e,t,r)=>{"use strict";r.d(t,{s:()=>i});var n=r(50758),s=r(67676);class o{constructor(e,t){this._observers=e,this._observer=t}remove(){(0,s.Od)(this._observers,this._observer)}}class i{constructor(){this._observers=null,this.destroyed=!1}observe(e){if(this.destroyed||e.destroyed)return a;null==this._observers&&(this._observers=[]);const t=this._observers;let r=!1,n=!1;const s=t.length;for(let o=0;o<s;++o){const s=t[o];if(s.destroyed)n=!0;else if(s===e){r=!0;break}}return r||(t.push(e),n&&this._removeDestroyedObservers()),new o(t,e)}_removeDestroyedObservers(){const e=this._observers;if(!e||0===e.length)return;const t=e.length;let r=0;for(let n=0;n<t;++n){for(;n+r<t&&e[n+r].destroyed;)++r;if(r>0){if(!(n+r<t))break;e[n]=e[n+r]}}e.length=t-r}destroy(){if(this.destroyed)return;this.destroyed=!0;const e=this._observers;if(null!=e){for(const t of e)t.onCommitted();this._observers=null}}}const a=(0,n.kB)()},31263:(e,t,r)=>{"use strict";var n;r.d(t,{M9:()=>o,Wm:()=>a,kk:()=>s,s3:()=>n,x3:()=>i}),function(e){e[e.DEFAULTS=0]="DEFAULTS",e[e.COMPUTED=1]="COMPUTED",e[e.SERVICE=2]="SERVICE",e[e.PORTAL_ITEM=3]="PORTAL_ITEM",e[e.WEB_SCENE=4]="WEB_SCENE",e[e.WEB_MAP=5]="WEB_MAP",e[e.LINK_CHART=6]="LINK_CHART",e[e.USER=7]="USER"}(n||(n={}));const s=n.USER+1;function o(e){switch(e){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"link-chart":return n.LINK_CHART;case"user":return n.USER;default:return null}}function i(e){switch(e){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.LINK_CHART:return"link-chart";case n.USER:return"user"}}function a(e){return i(e)}},88022:(e,t,r)=>{"use strict";r.d(t,{l:()=>n});const n=Symbol("Accessor-beforeDestroy")},5600:(e,t,r)=>{"use strict";r.d(t,{CJ:()=>l,Cb:()=>c,Eg:()=>u});var n=r(92604),s=r(75215),o=r(67723),i=r(7628),a=r(37697);function c(e={}){return(t,r)=>{if(t===Function.prototype)throw new Error(`Inappropriate use of @property() on a static field: ${t.name}.${r}. Accessor does not support static properties.`);const c=Object.getOwnPropertyDescriptor(t,r),l=(0,i.Oe)(t,r);c&&(c.get||c.set?(l.get=c.get||l.get,l.set=c.set||l.set):"value"in c&&("value"in e&&n.Z.getLogger("esri.core.accessorSupport.decorators.property").warn(`@property() will redefine the value of "${r}" on "${t.constructor.name}" already defined in the metadata`,e),l.value=e.value=c.value)),null!=e.readOnly&&(l.readOnly=e.readOnly);const f=e.aliasOf;if(f){const e="string"==typeof f?f:f.source,t="string"==typeof f?null:!0===f.overridable;let n;l.dependsOn=[e],l.get=function(){let t=(0,o.U2)(this,e);if("function"==typeof t){n||(n=e.split(".").slice(0,-1).join("."));const r=(0,o.U2)(this,n);r&&(t=t.bind(r))}return t},l.readOnly||(l.set=t?function(e){this._override(r,e)}:function(t){(0,a.t)(this,e,t)})}const d=e.type,h=e.types;l.cast||(d?l.cast=function(e){let t=0,r=e;if((0,s.AY)(e))return(0,s.sY)(e);for(;Array.isArray(r)&&1===r.length&&"string"!=typeof r[0]&&"number"!=typeof r[0];)r=r[0],t++;const n=r;if((0,s.gB)(n))return 0===t?(0,s.i$)(n):(0,s.Iu)((0,s.i$)(n),t);if(1===t)return(0,s.rY)(n);if(t>1)return(0,s.di)(n,t);const o=e;return o.from?o.from:(0,s.se)(o)}(d):h&&(Array.isArray(h)?l.cast=(0,s.Ls)((0,s.N7)(h[0])):l.cast=(0,s.N7)(h))),(0,i.tz)(l,e),e.range&&(l.cast=u(l.cast,e.range))}}function l(e,t,r){const n=(0,i.Oe)(e,r);n.json||(n.json={});let s=n.json;return void 0!==t&&(s.origins||(s.origins={}),s.origins[t]||(s.origins[t]={}),s=s.origins[t]),s}function u(e,t){return r=>{let n=+e(r);return null!=t.step&&(n=Math.round(n/t.step)*t.step),null!=t.min&&(n=Math.max(t.min,n)),null!=t.max&&(n=Math.min(t.max,n)),n}}},52011:(e,t,r)=>{"use strict";r.d(t,{j:()=>u}),r(80442);var n=r(88022),s=r(97831),o=r(7628),i=r(58971),a=r(53906);const c=new Set,l=new Set;function u(e){return t=>{e??="esri.core.Accessor",t.prototype.declaredClass=e,d(t);const r=[],s=[];let i=t.prototype;for(;i;)i.hasOwnProperty("initialize")&&!c.has(i.initialize)&&(c.add(i.initialize),r.push(i.initialize)),i.hasOwnProperty("destroy")&&!l.has(i.destroy)&&(l.add(i.destroy),s.push(i.destroy)),i=Object.getPrototypeOf(i);c.clear(),l.clear();const a=class extends t{constructor(...e){if(super(...e),this.constructor===a&&"function"==typeof this.postscript){if(r.length&&Object.defineProperty(this,"initialize",{enumerable:!1,configurable:!0,value(){for(let e=r.length-1;e>=0;e--)r[e].call(this)}}),s.length){let e=!1;const t=this[n.l];Object.defineProperty(this,"destroy",{enumerable:!1,configurable:!0,value(){if(!e){e=!0,t.call(this);for(let e=0;e<s.length;e++)s[e].call(this)}}})}Object.defineProperty(this,Symbol.dispose,{enumerable:!1,configurable:!0,value(){this.destroy()}}),this.postscript(...e)}}};a.__accessorMetadata__=(0,o.fp)(t.prototype),a.prototype.declaredClass=e;const u=(e||"AccessorSubclass").split(".").slice(-1)[0];return Object.defineProperty(a,"name",{value:u,configurable:!0}),a}}function f(e,t){return null==t.get?function(){const t=this.__accessor__,r=t.propertiesByName.get(e);if(void 0===r)return;(0,i.it)(r);const n=t.store;return n.has(e)?n.get(e):r.metadata.value}:function(){const t=this.__accessor__,r=t.propertiesByName.get(e);if(void 0!==r)return r.getComputed(t)}}function d(e){const t=e.prototype,r=(0,o.fp)(t),n={};for(const e of Object.getOwnPropertyNames(r)){const t=r[e];(0,a.OM)(t),n[e]={enumerable:!0,configurable:!0,get:f(e,t),set(r){const n=this.__accessor__;if(void 0!==n){if(!Object.isFrozen(this)){if(n.initialized&&t.readOnly)throw new TypeError(`[accessor] cannot assign to read-only property '${e}' of ${this.declaredClass}`);if(n.lifecycle===s.F.CONSTRUCTED&&t.constructOnly)throw new TypeError(`[accessor] cannot assign to construct-only property '${e}' of ${this.declaredClass}`);n.set(e,r)}}else Object.defineProperty(this,e,{enumerable:!0,configurable:!0,writable:!0,value:r})}}}Object.defineProperties(e.prototype,n)}},41103:(e,t,r)=>{"use strict";r.d(t,{M:()=>s});var n=r(31263);function s(e,t,r){t.keys().forEach((e=>{r.set(e,t.get(e),n.s3.DEFAULTS)}));const s=e.metadatas;Object.keys(s).forEach((t=>{e.internalGet(t)&&r.set(t,e.internalGet(t),n.s3.DEFAULTS)}))}},75215:(e,t,r)=>{"use strict";r.d(t,{AY:()=>C,Iu:()=>A,Ls:()=>v,N7:()=>E,TJ:()=>y,V5:()=>j,Zs:()=>c,di:()=>S,gB:()=>k,i$:()=>T,q9:()=>l,rY:()=>w,sY:()=>P,se:()=>_,vU:()=>u,z8:()=>N}),r(80442);var n=r(92604),s=r(30175);const o=n.Z.getLogger("esri.core.accessorSupport.ensureTypes");function i(e){return null==e?e:new Date(e)}function a(e){return null==e?e:!!e}function c(e){return null==e?e:e.toString()}function l(e){return null==e?e:(e=parseFloat(e),isNaN(e)?0:e)}function u(e){return null==e?e:Math.round(parseFloat(e))}function f(e){return e?.constructor&&void 0!==e.constructor.__accessorMetadata__}function d(e,t){return null!=t&&e&&!(t instanceof e)}function h(e){return e&&"isCollection"in e}function p(e){return e?.Type?"function"==typeof e.Type?e.Type:e.Type.base:null}function g(e,t){return!!f(t)&&(o.error("Accessor#set","Assigning an instance of '"+(t.declaredClass||"unknown")+"' which is not a subclass of '"+b(e)+"'"),!0)}function y(e,t){return null==t?t:h(e)?function(e,t){if(!t?.constructor||!h(t.constructor))return g(e,t)?t:new e(t);const r=p(e.prototype.itemType),n=p(t.constructor.prototype.itemType);return r?n?r===n?t:r.prototype.isPrototypeOf(n.prototype)?new e(t):(g(e,t),t):new e(t):t}(e,t):d(e,t)?g(e,t)?t:new e(t):t}function b(e){return e?.prototype?.declaredClass||"unknown"}const m=new WeakMap;function _(e,t){const r=function(e){switch(e){case Number:return l;case N:return u;case Boolean:return a;case String:return c;case Date:return i;default:return(0,s.s1)(m,e,(()=>y.bind(null,e)))}}(e);return 1===arguments.length?r:r(t)}function v(e,t,r){return 1===arguments.length?v.bind(null,e):t?Array.isArray(t)?t.map((t=>e(t,r))):[e(t,r)]:t}function w(e,t){return 1===arguments.length?v((t=>_(e,t))):v((t=>_(e,t)),t)}function O(e,t,r){return 0!==t&&Array.isArray(r)?r.map((r=>O(e,t-1,r))):e(r)}function A(e,t,r){if(2===arguments.length)return r=>A(e,t,r);if(!r)return r;r=O(e,t,r);let n=t,s=r;for(;n>0&&Array.isArray(s);)n--,s=s[0];if(void 0!==s)for(let e=0;e<n;e++)r=[r];return r}function S(e,t,r){return 2===arguments.length?A((t=>_(e,t)),t):A((t=>_(e,t)),t,r)}function k(e){return!!Array.isArray(e)&&!e.some((t=>{const r=typeof t;return!("string"===r||"number"===r||"function"===r&&e.length>1)}))}function T(e,t){if(2===arguments.length)return T(e).call(null,t);const r=new Set,n=e.filter((e=>"function"!=typeof e)),s=e.filter((e=>"function"==typeof e));for(const t of e)"string"!=typeof t&&"number"!=typeof t||r.add(t);let i=null,a=null;return(e,t)=>{if(null==e)return e;const c=typeof e,l="string"===c||"number"===c;return l&&(r.has(e)||s.some((e=>"string"===c&&e===String||"number"===c&&e===Number)))||"object"===c&&s.some((t=>!d(e,t)))?e:(l&&n.length?(i||(i=n.map((e=>"string"==typeof e?`'${e}'`:`${e}`)).join(", ")),o.error("Accessor#set",`'${e}' is not a valid value for this property, only the following values are valid: ${i}`)):"object"==typeof e&&s.length?(a||(a=s.map((e=>b(e))).join(", ")),o.error("Accessor#set",`'${e}' is not a valid value for this property, value must be one of ${a}`)):o.error("Accessor#set",`'${e}' is not a valid value for this property`),t&&(t.valid=!1),null)}}function E(e,t){if(2===arguments.length)return E(e).call(null,t);const r={},n=[],s=[];for(const t in e.typeMap){const o=e.typeMap[t];r[t]=_(o),n.push(b(o)),s.push(t)}const i=()=>`'${n.join("', '")}'`,a=()=>`'${s.join("', '")}'`,c="string"==typeof e.key?t=>t[e.key]:e.key;return t=>{if(e.base&&!d(e.base,t))return t;if(null==t)return t;const n=c(t)||e.defaultKeyValue,s=r[n];if(!s)return o.error("Accessor#set",`Invalid property value, value needs to be one of ${i()}, or a plain object that can autocast (having .type = ${a()})`),null;if(!d(e.typeMap[n],t))return t;if("string"==typeof e.key&&!f(t)){const r={};for(const n in t)n!==e.key&&(r[n]=t[n]);return s(r)}return s(t)}}class N{}const j={native:e=>({type:"native",value:e}),array:e=>({type:"array",value:e}),oneOf:e=>({type:"one-of",values:e})};function C(e){if(!e||!("type"in e))return!1;switch(e.type){case"native":case"array":case"one-of":return!0}return!1}function P(e){switch(e.type){case"native":return _(e.value);case"array":return v(P(e.value));case"one-of":return function(e){let t=null;return(r,n)=>I(r,e)?r:(null==t&&(t=M(e)),o.error("Accessor#set",`Invalid property value, value needs to be of type ${t}`),n&&(n.valid=!1),null)}(e);default:return null}}function M(e){switch(e.type){case"native":switch(e.value){case Number:return"number";case String:return"string";case Boolean:return"boolean";case N:return"integer";case Date:return"date";default:return b(e.value)}case"array":return`array of ${M(e.value)}`;case"one-of":{const t=e.values.map((e=>M(e)));return`one of ${t.slice(0,-1)} or ${t[t.length-1]}`}}return"unknown"}function I(e,t){if(null==e)return!0;switch(t.type){case"native":switch(t.value){case Number:case N:return"number"==typeof e;case Boolean:return"boolean"==typeof e;case String:return"string"==typeof e}return e instanceof t.value;case"array":return!!Array.isArray(e)&&!e.some((e=>!I(e,t.value)));case"one-of":return t.values.some((t=>I(e,t)))}}},53906:(e,t,r)=>{"use strict";r.d(t,{hk:()=>u,HS:()=>f,Ah:()=>d,OM:()=>b});var n=r(75215),s=r(63213);function o(e){if(e.json||(e.json={}),a(e.json),c(e.json),i(e.json),e.json.origins)for(const t in e.json.origins)a(e.json.origins[t]),c(e.json.origins[t]),i(e.json.origins[t]);return!0}function i(e){e.name&&(e.read&&"object"==typeof e.read?void 0===e.read.source&&(e.read.source=e.name):e.read={source:e.name},e.write&&"object"==typeof e.write?void 0===e.write.target&&(e.write.target=e.name):e.write={target:e.name})}function a(e){"boolean"==typeof e.read?e.read={enabled:e.read}:"function"==typeof e.read?e.read={enabled:!0,reader:e.read}:e.read&&"object"==typeof e.read&&void 0===e.read.enabled&&(e.read.enabled=!0)}function c(e){"boolean"==typeof e.write?e.write={enabled:e.write}:"function"==typeof e.write?e.write={enabled:!0,writer:e.write}:e.write&&"object"==typeof e.write&&void 0===e.write.enabled&&(e.write.enabled=!0)}var l=r(827);function u(e,t){return h(e,"any",t?.origin)}function f(e,t){return h(e,"read",t?.origin)}function d(e,t){return h(e,"write",t?.origin)}function h(e,t,r){let n=e?.json;if(n?.origins&&r){let e;e="link-chart"===r?n.origins[r]&&("any"===t||t in n.origins[r])?n.origins[r]:n.origins["web-map"]:n.origins[r],e&&("any"===t||t in e)&&(n=e)}return n}function p(e){return e.type?g(e):y(e)}function g(e){if(!e.type)return;let t=0,r=e.type;for(;Array.isArray(r)&&!(0,n.gB)(r);)r=r[0],t++;return{type:r,ndimArray:t}}function y(e){if(!e.types)return;let t=0,r=e.types;for(;Array.isArray(r);)r=r[0],t++;return{types:r,ndimArray:t}}function b(e){o(e)&&(function(e){if(e.json&&e.json.origins){const t=e.json.origins,r={"web-document":["web-scene","web-map"]};for(const e in r)if(t[e]){const n=t[e];r[e].forEach((e=>{t[e]=n})),delete t[e]}}}(e),function(e){const t=function(e){return e.json.types?y(e.json):e.type?g(e):y(e)}(e);if(e.json.origins)for(const r in e.json.origins){const n=e.json.origins[r],o=n.types?p(n):t;(0,s.U)(o,n,!1),n.types&&!n.write&&e.json.write&&e.json.write.enabled&&(n.write={...e.json.write}),(0,l.U)(o,n)}(0,s.U)(t,e.json,!0),(0,l.U)(t,e.json)}(e))}},63213:(e,t,r)=>{"use strict";r.d(t,{U:()=>l,d:()=>u});var n=r(92604),s=r(78286),o=r(20941),i=r(7628),a=r(14062);const c=n.Z.getLogger("esri.core.accessorSupport.extensions.serializableProperty.reader");function l(e,t,r){e&&(!r&&!t.read||t.read?.reader||!1===t.read?.enabled||function(e){return"types"in e?y(e.types):g(e.type)}(e)&&(0,s.RB)("read.reader",u(e),t))}function u(e){const t=e.ndimArray??0;if(t>1)return function(e){const t=f(e),r=d.bind(null,t),n=e.ndimArray??0;return(e,t,s)=>{if(null==e)return e;e=r(e,s,n);let o=n,i=e;for(;o>0&&Array.isArray(i);)o--,i=i[0];if(void 0!==i)for(let t=0;t<o;t++)e=[e];return e}}(e);if(1===t)return h(e);if("type"in e&&p(e.type)){const t=e.type.prototype?.itemType?.Type,r=h("function"==typeof t?{type:t}:{types:t});return(t,n,s)=>{const o=r(t,n,s);return o?new e.type(o):o}}return f(e)}function f(e){return"type"in e?function(e){return e.prototype.read?(t,r,n)=>{if(null==t)return t;const s=typeof t;if("object"!==s)return void c.error(`Expected JSON value of type 'object' to deserialize type '${e.prototype.declaredClass}', but got '${s}'`);const o=new e;return o.read(t,n),o}:e.fromJSON}(e.type):function(e){let t=null;const r=e.errorContext??"type",n=e.validate;return(s,a,l)=>{if(null==s)return s;const u=typeof s;if("object"!==u)return void c.error(`Expected JSON value of type 'object' to deserialize, but got '${u}'`);t||(t=function(e){const t={};for(const r in e.typeMap){const n=e.typeMap[r],s=(0,i.fp)(n.prototype);if("function"==typeof e.key)continue;const o=s[e.key];if(!o)continue;o.json?.type&&Array.isArray(o.json.type)&&1===o.json.type.length&&"string"==typeof o.json.type[0]&&(t[o.json.type[0]]=n);const a=o.json?.write;if(!a?.writer){t[r]=n;continue}const c=a.target,l="string"==typeof c?c:e.key,u={};a.writer(r,u,l),u[l]&&(t[u[l]]=n)}return t}(e));const f=e.key;if("string"!=typeof f)return;const d=s[f],h=d?t[d]:e.defaultKeyValue?e.typeMap[e.defaultKeyValue]:void 0;if(!h){const e=`Type '${d||"unknown"}' is not supported`;return l?.messages&&s&&l.messages.push(new o.Z(`${r}:unsupported`,e,{definition:s,context:l})),void c.error(e)}const p=new h;return p.read(s,l),n?n(p):p}}(e.types)}function d(e,t,r,n){return 0!==n&&Array.isArray(t)?t.map((t=>d(e,t,r,n-1))):e(t,void 0,r)}function h(e){const t=f(e);return(e,r,n)=>{if(null==e)return e;if(Array.isArray(e)){const r=[];for(const s of e){const e=t(s,void 0,n);void 0!==e&&r.push(e)}return r}const s=t(e,void 0,n);return void 0!==s?[s]:void 0}}function p(e){if(!(0,a.u)(e))return!1;const t=e.prototype.itemType;return!(!t||!t.Type)&&("function"==typeof t.Type?g(t.Type):y(t.Type))}function g(e){return!Array.isArray(e)&&!!e&&e.prototype&&("read"in e.prototype||"fromJSON"in e||p(e))}function y(e){for(const t in e.typeMap)if(!g(e.typeMap[t]))return!1;return!0}},14062:(e,t,r)=>{"use strict";function n(e){return!!e&&e.prototype?.declaredClass&&0===e.prototype.declaredClass.indexOf("esri.core.Collection")}r.d(t,{u:()=>n})},827:(e,t,r)=>{"use strict";r.d(t,{U:()=>a,k:()=>f});var n=r(20102),s=r(92604),o=r(78286),i=r(14062);function a(e,t){if(!t.write||t.write.writer||!1===t.write.enabled&&!t.write.overridePolicy)return;const r=e?.ndimArray??0;e&&(1===r||"type"in e&&(0,i.u)(e.type))?t.write.writer=d:r>1?t.write.writer=function(e){return(t,r,n,s)=>{let i;if(null===t)i=null;else{i=h(t,s,e);let r=e,n=i;for(;r>0&&Array.isArray(n);)r--,n=n[0];if(void 0!==n)for(let e=0;e<r;e++)i=[i]}(0,o.RB)(n,i,r)}}(r):t.types?Array.isArray(t.types)?t.write.writer=function(e){return(t,r,n,s)=>t&&Array.isArray(t)?l(t.filter((t=>c(t,e,s))),r,n,s):l(t,r,n,s)}(t.types[0]):t.write.writer=function(e){return(t,r,n,s)=>t?c(t,e,s)?l(t,r,n,s):void 0:l(t,r,n,s)}(t.types):t.write.writer=l}function c(e,t,r){for(const r in t.typeMap)if(e instanceof t.typeMap[r])return!0;if(r?.messages){const o=t.errorContext??"type",i=`Values of type '${("function"!=typeof t.key?e[t.key]:e.declaredClass)??"Unknown"}' cannot be written`;r&&r.messages&&e&&r.messages.push(new n.Z(`${o}:unsupported`,i,{definition:e,context:r})),s.Z.getLogger("esri.core.accessorSupport.extensions.serializableProperty.writer").error(i)}return!1}function l(e,t,r,n){(0,o.RB)(r,u(e,n),t)}function u(e,t){return e&&"function"==typeof e.write?e.write({},t):e&&"function"==typeof e.toJSON?e.toJSON():"number"==typeof e?f(e):e}function f(e){return e===-1/0?-Number.MAX_VALUE:e===1/0?Number.MAX_VALUE:isNaN(e)?null:e}function d(e,t,r,n){let s;null===e?s=null:e&&"function"==typeof e.map?(s=e.map((e=>u(e,n))),"function"==typeof s.toArray&&(s=s.toArray())):s=[u(e,n)],(0,o.RB)(r,s,t)}function h(e,t,r){return 0!==r&&Array.isArray(e)?e.map((e=>h(e,t,r-1))):u(e,t)}},67723:(e,t,r)=>{"use strict";r.d(t,{$z:()=>i,Gg:()=>c,U2:()=>a});var n=r(1153);function s(e,t){const r="?"===e[e.length-1]?e.slice(0,-1):e;if(null!=t.getItemAt||Array.isArray(t)){const e=parseInt(r,10);if(!isNaN(e))return Array.isArray(t)?t[e]:t.at(e)}const s=(0,n.vw)(t);return(0,n.b6)(s,r)?s.get(r):t[r]}function o(e,t,r){if(null==e)return e;const n=s(t[r],e);return!n&&r<t.length-1?void 0:r===t.length-1?n:o(n,t,r+1)}function i(e,t,r=0){return"string"!=typeof t||t.includes(".")?o(e,(0,n.NI)(t),r):s(t,e)}function a(e,t){return i(e,t)}function c(e,t){return void 0!==i(t,e)}},97831:(e,t,r)=>{"use strict";var n;r.d(t,{F:()=>n}),function(e){e[e.INITIALIZING=0]="INITIALIZING",e[e.CONSTRUCTING=1]="CONSTRUCTING",e[e.CONSTRUCTED=2]="CONSTRUCTED"}(n||(n={}))},7628:(e,t,r)=>{"use strict";r.d(t,{Oe:()=>i,fp:()=>o,tz:()=>a});var n=r(22974),s=r(1153);function o(e){let t=e.constructor.__accessorMetadata__;const r=Object.prototype.hasOwnProperty.call(e.constructor,"__accessorMetadata__");if(t){if(!r){t=Object.create(t);for(const e in t)t[e]=(0,n.d9)(t[e]);Object.defineProperty(e.constructor,"__accessorMetadata__",{value:t,enumerable:!1,configurable:!0,writable:!0})}}else t={},Object.defineProperty(e.constructor,"__accessorMetadata__",{value:t,enumerable:!1,configurable:!0,writable:!0});return e.constructor.__accessorMetadata__}function i(e,t){const r=o(e);let n=r[t];return n||(n=r[t]={}),n}function a(e,t){return(0,s.TS)(e,t,l)}const c=/^(?:[^.]+\.)?(?:value|type|(?:json\.type|json\.origins\.[^.]\.type))$/;function l(e){return c.test(e)?"replace":"merge"}},50549:(e,t,r)=>{"use strict";r.d(t,{$:()=>f,i:()=>u});var n=r(67723),s=r(1153),o=r(53906);function i(e,t,r){if(!e?.read||!1===e.read.enabled||!e.read.source)return!1;const s=e.read.source;if("string"==typeof s){if(s===t)return!0;if(s.includes(".")&&0===s.indexOf(t)&&(0,n.Gg)(s,r))return!0}else for(const e of s){if(e===t)return!0;if(e.includes(".")&&0===e.indexOf(t)&&(0,n.Gg)(e,r))return!0}return!1}function a(e,t,r,n,s){let a=(0,o.HS)(t[r],s);(function(e){return e&&(!e.read||!1!==e.read.enabled&&!e.read.source)})(a)&&(e[r]=!0);for(const c of Object.getOwnPropertyNames(t))a=(0,o.HS)(t[c],s),i(a,r,n)&&(e[c]=!0)}function c(e,t,r,n){const s=r.metadatas,i=(0,o.hk)(s[t],n),a=i?.default;if(void 0===a)return;const c="function"==typeof a?a.call(e,t,n):a;void 0!==c&&r.set(t,c)}const l={origin:"service"};function u(e,t,r=l){if(!t||"object"!=typeof t)return;const i=(0,s.vw)(e),u=i.metadatas,f={};for(const e of Object.getOwnPropertyNames(t))a(f,u,e,t,r);i.setDefaultOrigin(r.origin);for(const s of Object.getOwnPropertyNames(f)){const a=(0,o.HS)(u[s],r).read,c=a?.source;let l;l=c&&"string"==typeof c?(0,n.$z)(t,c):t[s],a?.reader&&(l=a.reader.call(e,l,t,r)),void 0!==l&&i.set(s,l)}if(!r||!r.ignoreDefaults){i.setDefaultOrigin("defaults");for(const t of Object.getOwnPropertyNames(u))f[t]||c(e,t,i,r)}i.setDefaultOrigin("user")}function f(e,t,r,n=l){const s={...n,messages:[]};r(s),s.messages?.forEach((t=>{"warning"!==t.type||e.loaded?n?.messages&&n.messages.push(t):e.loadWarnings.push(t)}))}},37697:(e,t,r)=>{"use strict";r.d(t,{t:()=>i});var n=r(20102),s=r(80442),o=(r(92604),r(67723));function i(e,t,r){if(e&&t)if("object"==typeof t)for(const r of Object.getOwnPropertyNames(t))i(e,r,t[r]);else{if(t.includes(".")){const n=t.split("."),s=n.splice(-1,1)[0];return void i((0,o.U2)(e,n),s,r)}const a=e.__accessor__;null!=a&&function(e,t){if((0,s.Z)("esri-unknown-property-errors")&&!function(e,t){return null!=t.metadatas[e]}(e,t))throw new n.Z("set:unknown-property",function(e,t){return"setting unknown property '"+e+"' on instance of "+t.host.declaredClass}(e,t))}(t,a),e[t]=r}}},58971:(e,t,r)=>{"use strict";r.d(t,{GF:()=>_,LJ:()=>d,gb:()=>h,it:()=>l,mS:()=>b}),r(80442);var n=r(92604),s=r(1153),o=r(44550);const i={onObservableAccessed:()=>{},onTrackingEnd:()=>{}},a=[];let c=i;function l(e){c.onObservableAccessed(e)}let u=!1,f=!1;function d(e,t,r){if(u)return p(e,t,r);g(e);const n=t.call(r);return y(),n}function h(e,t){return d(i,e,t)}function p(e,t,r){const s=u;u=!0,g(e);let o=null;try{o=t.call(r)}catch(e){f&&n.Z.getLogger("esri.core.accessorSupport.tracking").error(e)}return y(),u=s,o}function g(e){c=e,a.push(e)}function y(){const e=a.length;if(e>1){const t=a.pop();c=a[e-2],t.onTrackingEnd()}else if(1===e){const e=a.pop();c=i,e.onTrackingEnd()}else c=i}function b(e,t){if(t.flags&o.v.DepTrackingInitialized)return;const r=f;f=!1,t.flags&o.v.AutoTracked?p(t,t.metadata.get,e):_(e,t),f=r}const m=[];function _(e,t){t.flags&o.v.ExplicitlyTracking||(t.flags|=o.v.ExplicitlyTracking,p(t,(()=>{const r=t.metadata.dependsOn||m;for(const t of r)if("string"!=typeof t||t.includes(".")){const r=(0,s.NI)(t);for(let t=0,n=e;t<r.length&&null!=n&&"object"==typeof n;++t)n=v(n,r[t],t!==r.length-1)}else v(e,t,!1)})),t.flags&=~o.v.ExplicitlyTracking)}function v(e,t,r){const n="?"===t[t.length-1]?t.slice(0,-1):t;if(null!=e.getItemAt||Array.isArray(e)){const t=parseInt(n,10);if(!isNaN(t))return Array.isArray(e)?e[t]:e.at(t)}const o=(0,s.vw)(e);if(o){const t=o.propertiesByName.get(n);t&&(l(t),b(e,t))}return r?e[n]:void 0}},44550:(e,t,r)=>{"use strict";var n;r.d(t,{v:()=>n}),function(e){e[e.Dirty=1]="Dirty",e[e.Overriden=2]="Overriden",e[e.Computing=4]="Computing",e[e.NonNullable=8]="NonNullable",e[e.HasDefaultValue=16]="HasDefaultValue",e[e.DepTrackingInitialized=32]="DepTrackingInitialized",e[e.AutoTracked=64]="AutoTracked",e[e.ExplicitlyTracking=128]="ExplicitlyTracking"}(n||(n={}))},38805:(e,t,r)=>{"use strict";r.d(t,{M:()=>n});class n{constructor(e){this._accessed=[],this._handles=[],this._observerObject=new s(e),o.register(this,new WeakRef(this._observerObject),this)}destroy(){o.unregister(this._observerObject),this._accessed.length=0,this._observerObject?.destroy(),this.clear()}onObservableAccessed(e){const t=this._accessed;t.includes(e)||t.push(e)}onTrackingEnd(){const e=this._handles,t=this._accessed,r=this._observerObject;for(let n=0;n<t.length;++n)e.push(t[n].observe(r));t.length=0}clear(){const e=this._handles;for(let t=0;t<e.length;++t)e[t].remove();e.length=0}}class s{constructor(e){this._notify=e,this._invalidCount=0,this.destroyed=!1}onInvalidated(){this._invalidCount++}onCommitted(){if(this.destroyed)return;const e=this._invalidCount;if(1===e)return this._invalidCount=0,void this._notify();this._invalidCount=e>0?e-1:0}destroy(){this.destroyed=!0,this._notify=i}}const o=new FinalizationRegistry((e=>{e.deref()?.destroy()}));function i(){}},87538:(e,t,r)=>{"use strict";r.d(t,{EH:()=>u,U5:()=>c,Xz:()=>l});var n=r(50758),s=r(58971),o=r(38805);let i=!1;const a=[];function c(e,t){let r=new o.M((function n(){if(!r||c)return;if(i)return void f(n);const o=a;r.clear(),i=!0,c=!0,a=(0,s.LJ)(r,e),c=!1,i=!1,t(a,o),d()})),a=null,c=!1;return c=!0,a=(0,s.LJ)(r,e),c=!1,(0,n.kB)((function(){r&&(r.destroy(),r=null,a=null)}))}function l(e,t){let r=new o.M((function(){t(i,a)})),i=null;function a(){return r?(r.clear(),i=(0,s.LJ)(r,e),i):null}return a(),(0,n.kB)((function(){r&&(r.destroy(),r=null),i=null}))}function u(e){let t=new o.M((function n(){t&&!r&&(i?f(n):(t.clear(),i=!0,r=!0,(0,s.LJ)(t,e),r=!1,i=!1,d()))})),r=!1;return r=!0,(0,s.LJ)(t,e),r=!1,(0,n.kB)((function(){t&&(t.destroy(),t=null)}))}function f(e){a.includes(e)||a.unshift(e)}function d(){for(;a.length;)a.pop()()}},1153:(e,t,r)=>{"use strict";r.d(t,{NI:()=>l,Qc:()=>f,TS:()=>a,b6:()=>i,vw:()=>o});var n=r(50758),s=r(22974);function o(e){return e.__accessor__??null}function i(e,t){return null!=e?.metadatas?.[t]}function a(e,t,r){return c(e,t,r?{policy:r,path:""}:null)}function c(e,t,r){return t?Object.keys(t).reduce(((e,n)=>{const o=n;let i=null,a="merge";if(r&&(i=r.path?`${r.path}.${n}`:n,a=r.policy(i)),"replace"===a)return e[o]=t[o],e;if("replace-arrays"===a&&Array.isArray(e[o]))return e[o]=t[o],e;if(void 0===e[o])return e[o]=(0,s.d9)(t[o]),e;let l=e[o],u=t[o];if(l===u)return e;if(Array.isArray(u)||Array.isArray(e))l=l?Array.isArray(l)?e[o]=l.concat():e[o]=[l]:e[o]=[],u&&(Array.isArray(u)||(u=[u]),u.forEach((e=>{l.includes(e)||l.push(e)})));else if(u&&"object"==typeof u)if(r){const t=r.path;r.path=i,e[o]=c(l,u,r),r.path=t}else e[o]=c(l,u,null);else e.hasOwnProperty(n)&&!t.hasOwnProperty(n)||(e[o]=u);return e}),e||{}):e}function l(e){return Array.isArray(e)?e:e.split(".")}function u(e){return e.includes(",")?e.split(",").map((e=>e.trim())):[e.trim()]}function f(e,t,r,s){const o=function(e){if(Array.isArray(e)){const t=[];for(const r of e)t.push(...u(r));return t}return u(e)}(t);if(1!==o.length){const t=o.map((t=>s(e,t,r)));return(0,n.AL)(t)}return s(e,o[0],r)}},26258:(e,t,r)=>{"use strict";r.d(t,{BT:()=>w,YP:()=>k,aQ:()=>T});var n=r(3894),s=r(50758),o=r(22974),i=r(71143);class a extends i.Z{constructor(){super(...arguments),this._set=new Set}destroy(){super.destroy(),this._set=null}acquire(...e){const t=super.acquire(...e);return this._set.delete(t),t}release(e){e&&!this._set.has(e)&&(super.release(e),this._set.add(e))}_dispose(e){this._set.delete(e),super._dispose(e)}}var c,l,u=r(1654),f=r(99001),d=r(67723),h=r(87538),p=r(1153);(l=c||(c={}))[l.Untracked=0]="Untracked",l[l.Tracked=1]="Tracked";class g{constructor(){this.uid=(0,f.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(e,t,r,n,s){return this.pool.acquire(c.Untracked,e,t,r,n,s,o.fS)}static acquireTracked(e,t,r,n){return this.pool.acquire(c.Tracked,e,t,r,null,null,n)}notify(e,t){this.type===c.Untracked?this.callback.call(this.target,e,t,this.path,this.target):this.callback.call(null,e,t,void 0,void 0)}acquire(e,t,r,n,s,o,i){this.uid=(0,f.D)(),this.removed=!1,this.type=e,this.oldValue=t,this.callback=r,this.getValue=n,this.target=s,this.path=o,this.equals=i}release(){this.target=this.path=this.oldValue=this.callback=this.getValue=null,this.uid=(0,f.D)(),this.removed=!0}}g.pool=new a(g);const y=new n.Z,b=new Set;let m;function _(e){b.delete(e),b.add(e),m||(m=(0,u.Os)(O))}function v(e){if(e.removed)return;const t=e.oldValue,r=e.getValue();e.equals(t,r)||(e.oldValue=r,e.notify(r,t))}function w(e){for(const t of b.values())t.target===e&&(t.removed=!0)}function O(){let e=10;for(;m&&e--;){m=null;const e=A(),t=y.acquire();for(const r of e){const e=r.uid;v(r),e===r.uid&&r.removed&&t.push(r)}for(const e of b)e.removed&&(t.push(e),b.delete(e));for(const e of t)g.pool.release(e);y.release(t),y.release(e),S.forEach((e=>e()))}}function A(){const e=y.acquire();e.length=b.size;let t=0;for(const r of b)e[t]=r,++t;return b.clear(),e}const S=new Set;function k(e,t,r,n=!1){return!e.__accessor__||e.__accessor__.destroyed?(0,s.kB)():n?function(e,t,r){const n=(0,p.Qc)(e,t,r,((e,t,r)=>{let s=!1;return(0,h.U5)((()=>(0,d.$z)(e,t)),((i,a)=>{e.__accessor__.destroyed?n.remove():s||(s=!0,(0,o.fS)(a,i)||r.call(e,i,a,t,e),s=!1)}))}));return n}(e,t,r):function(e,t,r){let n=(0,p.Qc)(e,t,r,((e,t,r)=>{let o,i,a=(0,h.Xz)((()=>(0,d.$z)(e,t)),((s,a)=>{e.__accessor__.destroyed||o&&o.uid!==i?n.remove():(o||(o=g.acquireUntracked(s,r,a,e,t),i=o.uid),_(o))}));return(0,s.kB)((()=>{a.remove(),o&&(o.uid!==i||o.removed||(o.removed=!0,_(o)),o=null),n=a=null}))}));return n}(e,t,r)}function T(e,t,r=!1,n=o.y7){return r?function(e,t,r){let n=!1;return(0,h.U5)(e,((e,s)=>{n||(n=!0,r(s,e)||t(e,s),n=!1)}))}(e,t,n):function(e,t,r){let n,o,i=(0,h.Xz)(e,((e,s)=>{n&&n.uid!==o?i.remove():(n||(n=g.acquireTracked(e,t,s,r),o=n.uid),_(n))}));return(0,s.kB)((()=>{i.remove(),n&&(n.uid!==o||n.removed||(n.removed=!0,_(n)),n=null),i=null}))}(e,t,n)}},76169:(e,t,r)=>{"use strict";r.d(t,{c:()=>h,d:()=>d});var n=r(67676),s=r(20102),o=r(92604),i=r(67723),a=r(31263),c=r(1153),l=r(53906);function u(e,t,r,n,s){const o={};return t.write?.writer?.call(e,n,o,r,s),o}function f(e,t,r,c,l,u){if(!c?.write)return!1;const f=(0,i.U2)(e,r);if(!l&&c.write.overridePolicy){const t=c.write.overridePolicy.call(e,f,r,u??void 0);void 0!==t&&(l=t)}if(l||(l=c.write),!l||!1===l.enabled)return!1;if(l.layerContainerTypes&&u?.layerContainerType&&!l.layerContainerTypes.includes(u.layerContainerType))return!1;if((null===f&&!l.allowNull&&!l.writerEnsuresNonNull||void 0===f)&&l.isRequired){const t=new s.Z("web-document-write:property-required",`Missing value for required property '${r}' on '${e.declaredClass}'`,{propertyName:r,target:e});return t&&u?.messages?u.messages.push(t):t&&!u&&o.Z.getLogger("esri.core.accessorSupport.write").error(t.name,t.message),!1}return!(void 0===f||null===f&&!l.allowNull&&!l.writerEnsuresNonNull||!(l.alwaysWriteDefaults||t.store.multipleOriginsSupported&&t.store.originOf(r)!==a.s3.DEFAULTS)&&function(e,t,r,s,o){const i=s.default;if(void 0===i)return!1;if(null!=s.defaultEquals)return s.defaultEquals(o);if("function"==typeof i){if(Array.isArray(o)){const s=i.call(e,t,r??void 0);return(0,n.fS)(s,o)}return!1}return i===o}(e,r,u,c,f)||!l.ignoreOrigin&&u?.origin&&t.store.multipleOriginsSupported&&t.store.originOf(r)<(0,a.M9)(u.origin))}function d(e,t,r,n){const s=(0,c.vw)(e),o=s.metadatas,i=(0,l.Ah)(o[t],n);return!!i&&f(e,s,t,i,r,n)}function h(e,t,r){if(e&&"function"==typeof e.toJSON&&(!e.toJSON.isDefaultToJSON||!e.write))return(0,c.TS)(t,e.toJSON(r));const n=(0,c.vw)(e),s=n.metadatas;for(const o in s){const d=(0,l.Ah)(s[o],r);if(!f(e,n,o,d,void 0,r))continue;const h=(0,i.U2)(e,o),p=u(e,d,d.write&&"string"==typeof d.write.target?d.write.target:o,h,r);Object.keys(p).length>0&&(t=(0,c.TS)(t,p),r?.resources?.pendingOperations?.length&&r.resources.pendingOperations.push(Promise.all(r.resources.pendingOperations).then((()=>(0,c.TS)(t,p,(()=>"replace-arrays"))))),r?.writtenProperties&&r.writtenProperties.push({target:e,propName:o,oldOrigin:(0,a.Wm)(n.store.originOf(o)),newOrigin:r.origin}))}return t}},67676:(e,t,r)=>{"use strict";r.d(t,{FY:()=>y,Od:()=>b,SO:()=>f,Vx:()=>o,a9:()=>l,cq:()=>h,e$:()=>p,e5:()=>i,fS:()=>s,pC:()=>m,wR:()=>u,zG:()=>a});var n=r(77734);function s(e,t,r){if(null==e&&null==t)return!0;if(null==e||null==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 o(e,t){let r=e.length!==t.length;r&&(e.length=t.length);for(let n=0;n<t.length;++n)e[n]!==t[n]&&(e[n]=t[n],r=!0);return r}function i(e,t,r){let n,s;return r?(n=t.filter((t=>!e.some((e=>r(e,t))))),s=e.filter((e=>!t.some((t=>r(t,e)))))):(n=t.filter((t=>!e.includes(t))),s=e.filter((e=>!t.includes(e)))),{added:n,removed:s}}function a(e){return e&&"number"==typeof e.length}const c=!!Array.prototype.fill;function l(e,t){if(c)return new Array(e).fill(t);const r=new Array(e);for(let n=0;n<e;n++)r[n]=t;return r}function u(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 f{constructor(){this.last=0}}const d=new f;function h(e,t,r,n){n=n||d;const s=Math.max(0,n.last-10);for(let o=s;o<r;++o)if(e[o]===t)return n.last=o,o;const o=Math.min(s,r);for(let r=0;r<o;++r)if(e[r]===t)return n.last=r,r;return-1}function p(e,t,r,n){const s=r??e.length,o=h(e,t,s,n);if(-1!==o)return e[o]=e[s-1],null==r&&e.pop(),t}const g=new Set;function y(e,t,r=e.length,n=t.length,s,o){if(0===n||0===r)return r;g.clear();for(let e=0;e<n;++e)g.add(t[e]);s=s||d;const i=Math.max(0,s.last-10);for(let t=i;t<r;++t)if(g.has(e[t])&&(o?.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<i;++t)if(g.has(e[t])&&(o?.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 b(e,t){const r=e.indexOf(t);return-1!==r?(e.splice(r,1),t):null}function m(e,t){return null!=e}new n.Z},43090:(e,t,r)=>{"use strict";function n(e){return 32+e.length}function s(){return 16}function o(e){if(!e)return 0;let t=l;for(const r in e)if(e.hasOwnProperty(r)){const s=e[r];switch(typeof s){case"string":t+=n(s);break;case"number":t+=16;break;case"boolean":t+=4}}return t}function i(e){if(!e)return 0;if(Array.isArray(e))return function(e){const t=e.length;if(0===t||"number"==typeof e[0])return 32+8*t;let r=u;for(let n=0;n<t;n++)r+=a(e[n]);return r}(e);let t=l;for(const r in e)e.hasOwnProperty(r)&&(t+=a(e[r]));return t}function a(e){switch(typeof e){case"object":return i(e);case"string":return n(e);case"number":return 16;case"boolean":return 4;default:return 8}}function c(e,t){return u+e.length*t}r.d(t,{G3:()=>s,Ul:()=>i,do:()=>c,f2:()=>o});const l=32,u=16},60235:(e,t,r)=>{"use strict";r.d(t,{Mr:()=>a,XV:()=>i,x9:()=>c});var n=r(80442);const s=new Set;function o(e,t,r=!1){r&&s.has(t)||(r&&s.add(t),e.warn(`🛑 DEPRECATED - ${t}`))}function i(e,t,r={}){if((0,n.Z)("esri-deprecation-warnings")){const{moduleName:n}=r;c(e,"Function: "+(n?n+"::":"")+t+"()",r)}}function a(e,t,r={}){if((0,n.Z)("esri-deprecation-warnings")){const{moduleName:n}=r;c(e,"Property: "+(n?n+"::":"")+t,r)}}function c(e,t,r={}){if((0,n.Z)("esri-deprecation-warnings")){const{replacement:n,version:s,see:i,warnOnce:a}=r;let c=t;n&&(c+=`\n\t🛠️ Replacement: ${n}`),s&&(c+=`\n\t⚙️ Version: ${s}`),i&&(c+=`\n\t🔗 See ${i} for more details.`),o(e,c,a)}}},91460:(e,t,r)=>{"use strict";r.d(t,{IH:()=>i,on:()=>o,vT:()=>s});var n=r(50758);function s(e){return e&&("function"==typeof e.on||"function"==typeof e.addEventListener)}function o(e,t,r){if(!s(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 s=t.slice();for(const t of s)e.addEventListener(t,r);return(0,n.kB)((()=>{for(const t of s)e.removeEventListener(t,r)}))}return e.addEventListener(t,r),(0,n.kB)((()=>e.removeEventListener(t,r)))}function i(e,t,r){if(!s(e))throw new TypeError("target is not a Evented or EventTarget object");if("once"in e)return e.once(t,r);const n=o(e,t,(t=>{n.remove(),r.call(e,t)}));return n}},50758:(e,t,r)=>{"use strict";r.d(t,{AL:()=>o,kB:()=>s});const n={remove:()=>{}};function s(e){return e?{remove(){e&&(e(),e=void 0)}}:n}function o(e){return s((()=>function(e){e.forEach((e=>e?.remove()))}(e)))}},80442:(e,t,r)=>{"use strict";let n;function s(e){return"function"==typeof n[e]?n[e]=n[e](globalThis):n[e]}r.d(t,{Z:()=>s}),n=globalThis.dojoConfig?.has||globalThis.esriConfig?.has?{...globalThis.dojoConfig?.has,...globalThis.esriConfig?.has}:{},s.add=(e,t,r,o)=>((o||void 0===n[e])&&(n[e]=t),r&&s(e)),s.cache=n,s.add("big-integer-warning-enabled",!0),s.add("esri-deprecation-warnings",!0),s.add("esri-tests-disable-screenshots",!1),s.add("esri-tests-use-full-window",!1),s.add("esri-tests-post-to-influx",!0),(()=>{s.add("host-webworker",void 0!==globalThis.WorkerGlobalScope&&self instanceof globalThis.WorkerGlobalScope);const e="undefined"!=typeof window&&"undefined"!=typeof location&&"undefined"!=typeof document&&window.location===location&&window.document===document;if(s.add("host-browser",e),s.add("host-node","object"==typeof globalThis.process&&globalThis.process.versions?.node&&globalThis.process.versions.v8),s.add("dom",e),s("host-browser")){const e=navigator,t=e.userAgent,r=e.appVersion,n=parseFloat(r);if(s.add("wp",parseFloat(t.split("Windows Phone")[1])||void 0),s.add("msapp",parseFloat(t.split("MSAppHost/")[1])||void 0),s.add("khtml",r.includes("Konqueror")?n:void 0),s.add("edge",parseFloat(t.split("Edge/")[1])||void 0),s.add("opr",parseFloat(t.split("OPR/")[1])||void 0),s.add("webkit",!s("wp")&&!s("edge")&&parseFloat(t.split("WebKit/")[1])||void 0),s.add("chrome",!s("edge")&&!s("opr")&&parseFloat(t.split("Chrome/")[1])||void 0),s.add("android",!s("wp")&&parseFloat(t.split("Android ")[1])||void 0),s.add("safari",!r.includes("Safari")||s("wp")||s("chrome")||s("android")||s("edge")||s("opr")?void 0:parseFloat(r.split("Version/")[1])),s.add("mac",r.includes("Macintosh")),!s("wp")&&/(iPhone|iPod|iPad)/.test(t)){const e=RegExp.$1.replace(/P/,"p"),r=/OS ([\d_]+)/.test(t)?RegExp.$1:"1",n=parseFloat(r.replace(/_/,".").replaceAll("_",""));s.add(e,n),s.add("ios",n)}s("webkit")||(!t.includes("Gecko")||s("wp")||s("khtml")||s("edge")||s.add("mozilla",n),s("mozilla")&&s.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&&s.add("esri-mobile",t),r&&s.add("esri-iPhone",r),s.add("esri-geolocation",!!navigator.geolocation)}s.add("esri-wasm","WebAssembly"in globalThis),s.add("esri-performance-mode-frames-between-render",20),s.add("esri-force-performance-mode",!1),s.add("esri-shared-array-buffer",(()=>{const e="SharedArrayBuffer"in globalThis,t=!1===globalThis.crossOriginIsolated;return e&&!t})),s.add("wasm-simd",(()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11])))),s.add("esri-atomics","Atomics"in globalThis),s.add("esri-workers","Worker"in globalThis),s.add("web-feat:cache","caches"in globalThis),s.add("esri-workers-arraybuffer-transfer",!s("safari")||Number(s("safari"))>=12),s.add("workers-pool-size",8),s.add("featurelayer-simplify-thresholds",[.5,.5,.5,.5]),s.add("featurelayer-simplify-payload-size-factors",[1,1,4]),s.add("featurelayer-animation-enabled",!0),s.add("featurelayer-snapshot-enabled",!0),s.add("featurelayer-snapshot-point-min-threshold",8e4),s.add("featurelayer-snapshot-point-max-threshold",4e5),s.add("featurelayer-snapshot-point-coverage",.1),s.add("featurelayer-advanced-symbols",!1),s.add("featurelayer-pbf",!0),s.add("featurelayer-pbf-statistics",!1),s.add("feature-layers-workers",!0),s.add("feature-polyline-generalization-factor",1),s.add("mapview-transitions-duration",200),s.add("mapview-srswitch-adjust-rotation-scale-threshold",24e6),s.add("mapserver-pbf-version-support",10.81),s.add("mapservice-popup-identify-max-tolerance",20),s.add("heatmap-allow-raster-fallback",!1),s.add("heatmap-force-raster",!1),s("host-webworker")||s("host-browser")&&(s.add("esri-csp-restrictions",(()=>{try{new Function}catch{return!0}return!1})),s.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((()=>{s.add("esri-image-decode",!0,!0,!0)})).catch((()=>{s.add("esri-image-decode",!1,!0,!0)}))}return!1})),s.add("esri-url-encodes-apostrophe",(()=>{const e=window.document.createElement("a");return e.href="?'",e.href.includes("?%27")})))})()},66374:(e,t,r)=>{"use strict";function n(e){const t=[];return function*(){yield*t;for(const r of e)t.push(r),yield r}}function s(e,t){for(const r of e)if(null!=r&&t(r))return r}function o(e){return null!=e&&"function"==typeof e[Symbol.iterator]}r.d(t,{Fs:()=>n,TW:()=>o,sE:()=>s})},22974:(e,t,r)=>{"use strict";r.d(t,{Vo:()=>a,d9:()=>i,fS:()=>h,tZ:()=>c,y7:()=>p,yd:()=>o});var n=r(67676),s=r(1533);function o(e,t){let r;if(t)for(r in e)e.hasOwnProperty(r)&&(void 0===e[r]?delete e[r]:e[r]instanceof Object&&o(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=d(e);if(null!=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||"HTMLElement"in globalThis&&e instanceof HTMLElement)return e;const t=d(e);if(null!=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(e instanceof File||e instanceof Blob)return e;if(!u(e)){const t=new(0,Object.getPrototypeOf(e).constructor);for(const r of Object.getOwnPropertyNames(e)){const n=e[r],s=a(n);if(null!=n&&null==s)return null;t[r]=s}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("[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function d(e){if((0,s.W0)(e)||(0,s.lq)(e)||(0,s.KZ)(e)||(0,s.z3)(e)||(0,s.Uc)(e)||(0,s.Hx)(e)||(0,s.ZY)(e)||(0,s.xZ)(e)||(0,s.fS)(e))return e.slice();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;for(const[r,n]of e)t.set(r,i(n));return t}if(e instanceof Set){const t=new Set;for(const r of e)t.add(i(r));return t}return null}function h(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}function p(e,t){return e===t||(null==e||"string"==typeof e?e===t:"number"==typeof e?e===t||"number"==typeof t&&isNaN(e)&&isNaN(t):e instanceof Date?t instanceof Date&&e.getTime()===t.getTime():Array.isArray(e)?Array.isArray(t)&&(0,n.fS)(e,t):e instanceof Set?t instanceof Set&&function(e,t){if(e.size!==t.size)return!1;for(const r of e)if(!t.has(r))return!1;return!0}(e,t):e instanceof Map?t instanceof Map&&function(e,t){if(e.size!==t.size)return!1;for(const[r,n]of e){const e=t.get(r);if(e!==n||void 0===e&&!t.has(r))return!1}return!0}(e,t):!!f(e)&&f(t)&&function(e,t){if(null===e||null===t)return!1;const r=Object.keys(e);if(null===t||Object.keys(t).length!==r.length)return!1;for(const n of r)if(e[n]!==t[n]||!Object.prototype.hasOwnProperty.call(t,n))return!1;return!0}(e,t))}},70586:(e,t,r)=>{"use strict";function n(e,t){if(null==e)throw new Error(t??"value is None")}function s(e){return e?.destroy(),null}function o(e){return e?.dispose(),null}function i(e){return e?.remove(),null}function a(e){return e?.abort(),null}function c(e){return e?.release(),null}function l(e,t,r){return null!=e&&null!=t?null!=r?r(e,t):e.equals(t):e===t}r.d(t,{IM:()=>a,M2:()=>o,O3:()=>n,RY:()=>c,SC:()=>s,_W:()=>l,hw:()=>i})},41213:(e,t,r)=>{"use strict";r.d(t,{Y:()=>s});const n=[];function s(e){n.push(e),1===n.length&&queueMicrotask((()=>{const e=n.slice();n.length=0;for(const t of e)t()}))}},78286:(e,t,r)=>{"use strict";r.d(t,{RB:()=>i,RH:()=>s,hS:()=>o});var n=r(22974);function s(e,t,r=!1){return c(e,t,r)}function o(e,t){if(null!=t)return t[e]||a(e.split("."),!1,t)}function i(e,t,r){const n=e.split("."),s=n.pop(),o=a(n,!0,r);o&&s&&(o[s]=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(((e,s)=>{let o=e[s],i=t[s];return o===i?e:void 0===o?(e[s]=(0,n.d9)(i),e):(Array.isArray(i)||Array.isArray(e)?(o=o?Array.isArray(o)?e[s]=o.concat():e[s]=[o]:e[s]=[],i&&(Array.isArray(i)||(i=[i]),r?i.forEach((e=>{o.includes(e)||o.push(e)})):e[s]=i.concat())):i&&"object"==typeof i?e[s]=c(o,i,r):e.hasOwnProperty(s)&&!t.hasOwnProperty(s)||(e[s]=i),e)}),e||{}):e}},95330:(e,t,r)=>{"use strict";r.d(t,{e4:()=>S,UO:()=>A,OT:()=>O,zE:()=>l,hh:()=>N,Ds:()=>E,as:()=>v,WW:()=>w,R8:()=>_,D_:()=>m,Hc:()=>d,y8:()=>k,fu:()=>g,$F:()=>y,r9:()=>h,k_:()=>u,H9:()=>p,Yn:()=>j,gx:()=>T,Hl:()=>b});var n=r(50758);const s=(o=globalThis,{setTimeout:(e,t)=>{const r=o.setTimeout(e,t);return(0,n.kB)((()=>o.clearTimeout(r)))}});var o,i=r(20102),a=r(91460),c=(r(92604),r(70586));function l(e="Aborted"){return new i.Z("AbortError",e)}function u(e,t="Aborted"){if(d(e))throw l(t)}function f(e){return null!=e?"aborted"in e?e:e.signal:e}function d(e){const t=f(e);return null!=t&&t.aborted}function h(e){if(m(e))throw e}function p(e){if(!m(e))throw e}function g(e,t){const r=f(e);if(null!=r){if(!r.aborted)return(0,a.IH)(r,"abort",(()=>t()));t()}}function y(e,t){const r=f(e);if(null!=r)return u(r),(0,a.IH)(r,"abort",(()=>t(l())))}function b(e,t){return null==f(t)?e:new Promise(((r,n)=>{let s=g(t,(()=>n(l())));const o=()=>{s=(0,c.hw)(s)};e.then(o,o),e.then(r,n)}))}function m(e){return"AbortError"===e?.name}async function _(e){try{return await e}catch(e){if(!m(e))throw e;return}}async function v(e){if(!e)return;if("function"!=typeof e.forEach){const t=Object.keys(e),r=t.map((t=>e[t])),n=await v(r),s={};return t.map(((e,t)=>s[e]=n[t])),s}const t=e;return Promise.allSettled(t).then((e=>Array.from(t,((t,r)=>{const n=e[r];return"fulfilled"===n.status?{promise:t,value:n.value}:{promise:t,error:n.reason}}))))}async function w(e){return(await v(e)).filter((e=>!!e.value)).map((e=>e.value))}async function O(e){return(await Promise.allSettled(e)).filter((e=>"fulfilled"===e.status)).map((e=>e.value))}async function A(e){return(await Promise.allSettled(e)).filter((e=>"rejected"===e.status)).map((e=>e.reason))}function S(e,t=void 0,r){const n=new AbortController;return g(r,(()=>n.abort())),new Promise(((r,s)=>{let o=setTimeout((()=>{o=0,r(t)}),e);g(n,(()=>{o&&(clearTimeout(o),s(l()))}))}))}function k(e){return e&&"function"==typeof e.then}function T(e){return k(e)?e:Promise.resolve(e)}function E(e,t=-1){let r,n,s,o,i=null;const a=(...c)=>{if(r){n=c,o&&o.reject(l()),o=N();const e=o.promise;if(i){const e=i;i=null,e.abort()}return e}if(s=o||N(),o=null,t>0){const n=new AbortController;r=T(e(...c,n.signal));const s=r;S(t).then((()=>{r===s&&(o?n.abort():i=n)}))}else r=1,r=T(e(...c));const u=()=>{const e=n;n=s=r=i=null,null!=e&&a(...e)},f=r,d=s;return f.then(u,u),f.then(d.resolve,d.reject),d.promise};return a}function N(){let e,t;const r=new Promise(((r,n)=>{e=r,t=n})),n=t=>{e(t)};return n.resolve=t=>e(t),n.reject=e=>t(e),n.timeout=(e,t)=>s.setTimeout((()=>n.reject(t)),e),n.promise=r,n}async function j(e){await Promise.resolve(),u(e)}},1654:(e,t,r)=>{"use strict";r.d(t,{MU:()=>_,Os:()=>g});var n=r(41213),s=r(54790),o=r(44553),i=r(95330),a=r(76882);class c{constructor(e){this.callback=e,this.isActive=!0}remove(){this.isActive=!1}}let l=0;const u={time:(0,a.HA)(0),deltaTime:(0,a.HA)(0),elapsedFrameTime:(0,a.HA)(0),frameDuration:(0,a.HA)(0)},f=["prepare","preRender","render","postRender","update","finish"],d=[],h=new o.Z,p={frameTasks:h,willDispatch:!1,clearFrameTasks:function(e=!1){h.forAll((e=>{e.removed=!0})),e&&b()},dispatch:m,executeFrameTasks:function(e){const t=(0,a.HA)(e-l);l=e;const r=1e3/60,n=Math.max(0,t-r);u.time=e,u.frameDuration=(0,a.HA)(r-n);for(let r=0;r<f.length;r++){const n=performance.now(),s=f[r];h.forAll((n=>{n.paused||n.removed||(0===r&&n.ticks++,n.phases[s]&&(u.elapsedFrameTime=(0,a.HA)(performance.now()-e),u.deltaTime=0===n.ticks?(0,a.HA)(0):t,n.phases[s]?.call(n,u)))})),v[r].record(performance.now()-n)}b(),w.record(performance.now()-e)}};function g(e){const t=new c(e);return d.push(t),p.willDispatch||(p.willDispatch=!0,(0,n.Y)(m)),t}const y=new o.Z;function b(){h.forAll((e=>{e.removed&&y.push(e)})),h.removeUnorderedMany(y.data,y.length),y.clear()}function m(){for(;d.length;){const e=d.shift();e.isActive&&e.callback()}p.willDispatch=!1}function _(e=1,t){const r=(0,i.hh)(),s=()=>{(0,i.Hc)(t)?r.reject((0,i.zE)()):0===e?r():(--e,(0,n.Y)((()=>s())))};return s(),r.promise}const v=f.map((e=>new s.Z(e))),w=new s.Z("total")},19153:(e,t,r)=>{"use strict";r.d(t,{Cb:()=>l,Qs:()=>a,gx:()=>i,hP:()=>c});var n=r(78286);const s=/\{([^\}]+)\}/g;function o(e){return e??""}function i(e,t){return t?e.replaceAll(s,"object"==typeof t?(e,r)=>o((0,n.hS)(r,t)):(e,r)=>o(t(r))):e}function a(e,t){return e.replaceAll(/([\.$?*|{}\(\)\[\]\\\/\+\-^])/g,(e=>t&&t.includes(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||""}},76882:(e,t,r)=>{"use strict";function n(e){return e}function s(e){return 1e3*e}function o(e){return e}r.d(t,{HA:()=>n,_H:()=>o,up:()=>s})},1533:(e,t,r)=>{"use strict";r.d(t,{B3:()=>m,Hx:()=>u,KZ:()=>a,Op:()=>v,Q7:()=>_,Uc:()=>l,W0:()=>o,Xw:()=>g,ZY:()=>f,c8:()=>b,eP:()=>s,fS:()=>h,kJ:()=>p,lq:()=>i,xZ:()=>d,z3:()=>c});var n=r(43090);function s(e){return e instanceof ArrayBuffer}function o(e){return"Int8Array"===e?.constructor?.name}function i(e){return"Uint8Array"===e?.constructor?.name}function a(e){return"Uint8ClampedArray"===e?.constructor?.name}function c(e){return"Int16Array"===e?.constructor?.name}function l(e){return"Uint16Array"===e?.constructor?.name}function u(e){return"Int32Array"===e?.constructor?.name}function f(e){return"Uint32Array"===e?.constructor?.name}function d(e){return"Float32Array"===e?.constructor?.name}function h(e){return"Float64Array"===e?.constructor?.name}function p(e){return!("buffer"in e)}function g(...e){return e.reduce(((e,t)=>e+(t?p(t)?(0,n.do)(t,(0,n.G3)()):t.byteLength+y:0)),0)}r(80442);const y=145,b=1024;function m(e){return h(e)||d(e)||u(e)||c(e)||o(e)}function _(e){return h(e)||d(e)}function v(e){return h(e)?179769e303:d(e)?3402823e32:f(e)?4294967295:l(e)?65535:i(e)||a(e)?255:u(e)?2147483647:c(e)?32767:o(e)?127:256}},99001:(e,t,r)=>{"use strict";r.d(t,{D:()=>s});let n=0;function s(){return++n}},17452:(e,t,r)=>{"use strict";r.d(t,{$U:()=>ce,AH:()=>Q,B7:()=>j,D6:()=>z,Fv:()=>Z,HK:()=>Y,Hu:()=>me,IR:()=>Ae,Ie:()=>ye,L:()=>T,Ml:()=>we,P$:()=>G,PF:()=>W,Qj:()=>ge,R9:()=>w,TI:()=>k,YP:()=>V,Yd:()=>de,ZN:()=>_e,Zo:()=>R,_l:()=>re,b7:()=>C,ed:()=>U,fZ:()=>Oe,fl:()=>ve,fw:()=>se,gi:()=>ne,hF:()=>q,hO:()=>le,io:()=>oe,jc:()=>K,kl:()=>F,mN:()=>E,oC:()=>ie,oh:()=>B,qg:()=>P,rS:()=>X,sJ:()=>te,tD:()=>$,tm:()=>L,u0:()=>N,v_:()=>J,vt:()=>he,xs:()=>pe});var n=r(68773),s=r(67676),o=r(20102),i=r(96674),a=r(92604),c=r(19745),l=r(49917);const u=a.Z.getLogger("esri.core.urlUtils"),f=n.default.request,d="esri/config: esriConfig.request.proxyUrl is not set.",h=/^\s*[a-z][a-z0-9-+.]*:(?![0-9])/i,p=/^\s*http:/i,g=/^\s*https:/i,y=/^\s*file:/i,b=/:\d+$/,m=/^https?:\/\/[^/]+\.arcgis.com\/sharing(\/|$)/i,_=new RegExp("^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\\?([^#]*))?(#(.*))?$"),v=new RegExp("^((([^\\[:]+):)?([^@]+)@)?(\\[([^\\]]+)\\]|([^\\[:]*))(:([0-9]+))?$");class w{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=this.uri.match(_);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=this.authority.match(v),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 O={};let A=new w(n.default.applicationUrl);let S=function(){const e=A.path,t=e.substring(0,e.lastIndexOf(e.split("/")[e.split("/").length-1]));return`${A.scheme}://${A.host}${null!=A.port?`:${A.port}`:""}${t}`}();const k=()=>A,T=()=>S;function E(e){if(!e)return null;const t={path:null,query:null},r=new w(e),n=e.indexOf("?");return null===r.query?t.path=e:(t.path=e.substring(0,n),t.query=N(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 N(e){const t=e.split("&"),r={};for(const e of t){if(!e)continue;const t=e.indexOf("=");let n,s;t<0?(n=decodeURIComponent(e),s=""):(n=decodeURIComponent(e.slice(0,t)),s=decodeURIComponent(e.slice(t+1)));let o=r[n];"string"==typeof o&&(o=r[n]=[o]),Array.isArray(o)?o.push(s):r[n]=s}return r}function j(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 s=encodeURIComponent(r)+"=",o=t?.[r];return o?s+encodeURIComponent(o(n)):Array.isArray(n)?n.map((e=>(0,i.AK)(e)?s+encodeURIComponent(JSON.stringify(e)):s+encodeURIComponent(e))).join("&"):(0,i.AK)(n)?s+encodeURIComponent(JSON.stringify(n)):s+encodeURIComponent(n)})).filter((e=>e)).join("&"):""}function C(e=!1){let t,r=f.proxyUrl;if("string"==typeof e){t=ce(e);const n=U(e);n&&(r=n.proxyUrl)}else t=!!e;if(!r)throw u.warn(d),new o.Z("urlutils:proxy-not-set",d);return t&&ue()&&(r=le(r)),E(r)}function P(e){const t=U(e);let r,n;if(t){const e=I(t.proxyUrl);r=e.path,n=e.query?N(e.query):null}if(r){const t=E(e);e=r+"?"+t.path;const s=j({...n,...t.query});s&&(e=`${e}?${s}`)}return e}const M={path:"",query:""};function I(e){const t=e.indexOf("?");return-1!==t?(M.path=e.slice(0,t),M.query=e.slice(t+1)):(M.path=e,M.query=null),M}function x(e){return(e=fe(e=pe(e=I(e).path),!0)).toLowerCase()}function $(e){const t={proxyUrl:e.proxyUrl,urlPrefix:x(e.urlPrefix)},r=f.proxyRules,n=t.urlPrefix;let s=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;s=e;break}0===t.indexOf(n)&&(s=e+1)}return r.splice(s,0,t),s}function U(e){const t=f.proxyRules,r=x(e);for(let e=0;e<t.length;e++)if(0===r.indexOf(t[e].urlPrefix))return t[e]}function R(e,t){if(!e||!t)return!1;e=D(e),t=D(t);const r=(0,c.a)(e),n=(0,c.a)(t);return null!=r&&null!=n?r.portalHostname===n.portalHostname:null==r&&null==n&&z(e,t,!0)}function L(e,t){return e=D(e),t=D(t),fe(e)===fe(t)}function D(e){const t=(e=Z(e)).indexOf("/sharing");return t>0?e.substring(0,t):e.replace(/\/+$/,"")}function B(e){const t=t=>null==t||t instanceof RegExp&&t.test(e)||"string"==typeof t&&e.startsWith(t),r=f.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 z(e,t,r=!1){if(!e||!t)return!1;const n=be(e),s=be(t);return!(!r&&n.scheme!==s.scheme)&&null!=n.host&&null!=s.host&&n.host.toLowerCase()===s.host.toLowerCase()&&n.port===s.port}function F(e){if("string"==typeof e){if(!V(e))return!0;e=be(e)}if(z(e,A))return!0;const t=f.trustedServers||[];for(let r=0;r<t.length;r++){const n=H(t[r]);for(let t=0;t<n.length;t++)if(z(e,n[t]))return!0}return!1}function H(e){return O[e]||(ae(e)||ie(e)?O[e]=[new w(q(e))]:O[e]=[new w(`http://${e}`),new w(`https://${e}`)]),O[e]}function q(e,t=S,r){return ie(e)?r&&r.preserveProtocolRelative?e:"http"===A.scheme&&A.authority===G(e).slice(2)?`http:${e}`:`https:${e}`:ae(e)?e:J("/"===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 W(e,t=S,r){if(null==e||!V(e))return e;const n=Z(e),s=n.toLowerCase(),o=Z(t).toLowerCase().replace(/\/+$/,""),i=r?Z(r).toLowerCase().replace(/\/+$/,""):null;if(i&&0!==o.indexOf(i))return e;const a=(e,t,r)=>-1===(r=e.indexOf(t,r))?e.length:r;let c=a(s,"/",s.indexOf("//")+2),l=-1;for(;s.slice(0,c+1)===o.slice(0,c)+"/"&&(l=c+1,c!==s.length);)c=a(s,"/",c+1);if(-1===l)return e;if(i&&l<i.length)return e;e=n.slice(l);const u=o.slice(l-1).replaceAll(/[^/]+/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=f.httpsDomains;if(!function(e){return null!=e&&p.test(e)||"http"===A.scheme&&ie(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),b.test(n)){if(!n.endsWith(":80"))return e;n=n.slice(0,-3),e=e.replace(":80","")}return"http"===A.scheme&&n===A.authority&&!m.test(e)||(ue()&&n===A.authority||t&&t.some((e=>n===e||n.endsWith(`.${e}`)))||ue()&&!U(e))&&(e=le(e)),e}(e=function(e){return e.replace(/^(https?:\/\/)(arcgis\.com)/i,"$1www.$2")}(e=function(e){if(/^https?:\/\//i.test(e)){const t=I(e);e=(e=t.path.replaceAll(/\/{2,}/g,"/")).replace("/","//"),t.query&&(e+=`?${t.query}`)}return e}(e=q(e=e.trim()))))}function J(...e){const t=e.filter(s.pC);if(!t?.length)return;const r=[];if(V(t[0])){const e=t[0],n=e.indexOf("//");-1!==n&&(r.push(e.slice(0,n+1)),function(e){return null!=e&&y.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 G(e,t=!1){if(null==e||K(e)||Y(e))return null;let r=e.indexOf("://");if(-1===r&&ie(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=fe(e,!0)),e}function V(e){return ie(e)||ae(e)}function K(e){return null!=e&&"blob:"===e.slice(0,5)}function Y(e){return null!=e&&"data:"===e.slice(0,5)}function Q(e){const t=te(e);return t&&t.isBase64?(0,l.R)(t.data):null}function X(e){return(0,l.s)(e).replaceAll("+","-").replaceAll("/","_").replace(/=+$/,"")}const ee=/^data:(.*?)(;base64)?,(.*)$/;function te(e){const t=e.match(ee);if(!t)return null;const[,r,n,s]=t;return{mediaType:r,isBase64:!!n,data:s}}function re(e){return e.isBase64?`data:${e.mediaType};base64,${e.data}`:`data:${e.mediaType},${e.data}`}async function ne(e){return(await fetch(e)).blob()}function se(e){const t=Q(e);if(!t)return null;const r=te(e);return new Blob([t],{type:r.mediaType})}function oe(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);r.download=t,r.href=n,r.style.display="none",document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL(n)}(e,t)}function ie(e){return null!=e&&"/"===e[0]&&"/"===e[1]}function ae(e){return null!=e&&h.test(e)}function ce(e){return null!=e&&g.test(e)||"https"===A.scheme&&ie(e)}function le(e){return ie(e)?`https:${e}`:e.replace(p,"https:")}function ue(){return"https"===A.scheme}function fe(e,t=!1){return ie(e)?e.slice(2):(e=e.replace(h,""),t&&e.length>1&&"/"===e[0]&&"/"===e[1]&&(e=e.slice(2)),e)}function de(e){let t=0;if(V(e)){const r=e.indexOf("//");-1!==r&&(t=r+2)}const r=e.lastIndexOf("/");return r<t?e:e.slice(0,r+1)}function he(e,t){if(!e)return"";const r=E(e).path.replace(/\/+$/,""),n=r.substring(r.lastIndexOf("/")+1);if(!t?.length)return n;const s=new RegExp(`.(${t.join("|")})$`,"ig");return n.replace(s,"")}function pe(e){return e.endsWith("/")?e:`${e}/`}function ge(e){return e.replace(/\/+$/,"")}function ye(e,t,r){if(!(t&&r&&e&&V(e)))return e;const n=e.indexOf("//"),s=e.indexOf("/",n+2),o=e.indexOf(":",n+2),i=Math.min(s<0?e.length:s,o<0?e.length:o);return e.slice(n+2,i).toLowerCase()!==t.toLowerCase()?e:`${e.slice(0,n+2)}${r}${e.slice(i)}`}function be(e){return"string"==typeof e?new w(q(e)):(e.scheme||(e.scheme=A.scheme),e)}function me(e,t){const r=E(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 _e(e,t,r){const n=E(e),s=n.query||{};return s[t]=String(r),`${n.path}?${j(s)}`}function ve(e,t){if(!t)return e;const r=E(e),n=r.query||{};for(const[e,r]of Object.entries(t))null!=r&&(n[e]=r);const s=j(n);return s?`${r.path}?${s}`:r.path}function we(e){if(null==e)return null;const t=e.match(Se);return t?t[2]:null}function Oe(e){if(null==e)return null;const t=e.match(Se);return t?{path:t[1],extension:t[2]}:{path:e,extension:null}}async function Ae(e){return"string"==typeof e?te(e)??{data:e}:new Promise(((t,r)=>{const n=new FileReader;n.readAsDataURL(e),n.onload=()=>t(te(n.result)),n.onerror=e=>r(e)}))}const Se=/([^.]*)\.([^\/]*)$/},728:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>_});var n=r(40330),s=r(20102),o=r(91460),i=r(50758),a=r(70586),c=r(95330);const l={statsWorker:()=>Promise.all([r.e(7126),r.e(8480),r.e(3215),r.e(8657),r.e(3370),r.e(7267)]).then(r.bind(r,37267)),geometryEngineWorker:()=>Promise.all([r.e(5837),r.e(8228)]).then(r.bind(r,48227)),CSVSourceWorker:()=>Promise.all([r.e(7126),r.e(3615),r.e(8968),r.e(8480),r.e(3215),r.e(8657),r.e(3370),r.e(3794),r.e(5883)]).then(r.bind(r,27793)),EdgeProcessingWorker:()=>Promise.all([r.e(6481),r.e(3677),r.e(6139),r.e(9594)]).then(r.bind(r,49594)),ElevationSamplerWorker:()=>Promise.all([r.e(3615),r.e(8480),r.e(3215),r.e(6481),r.e(6459),r.e(7595)]).then(r.bind(r,61787)),FeatureServiceSnappingSourceWorker:()=>Promise.all([r.e(7126),r.e(957),r.e(3615),r.e(8968),r.e(8480),r.e(3215),r.e(4599),r.e(8657),r.e(3370),r.e(3794),r.e(664)]).then(r.bind(r,65967)),GeoJSONSourceWorker:()=>Promise.all([r.e(7126),r.e(3615),r.e(8968),r.e(8480),r.e(3215),r.e(8657),r.e(3370),r.e(3794),r.e(1690)]).then(r.bind(r,97845)),LercWorker:()=>r.e(3027).then(r.bind(r,23027)),MemorySourceWorker:()=>Promise.all([r.e(7126),r.e(3615),r.e(8968),r.e(8480),r.e(3215),r.e(8657),r.e(3370),r.e(3794),r.e(946)]).then(r.bind(r,30639)),PBFDecoderWorker:()=>Promise.all([r.e(8480),r.e(3215),r.e(3597)]).then(r.bind(r,61916)),Pipeline:()=>Promise.all([r.e(7126),r.e(957),r.e(3615),r.e(8968),r.e(8480),r.e(3215),r.e(4599),r.e(8657),r.e(3370),r.e(3794),r.e(4325),r.e(3966),r.e(3742)]).then(r.bind(r,27937)),PointCloudWorker:()=>Promise.all([r.e(8480),r.e(5326)]).then(r.bind(r,75326)),RasterWorker:()=>Promise.all([r.e(3615),r.e(8480),r.e(3215),r.e(6610),r.e(4216),r.e(2283)]).then(r.bind(r,61576)),SceneLayerSnappingSourceWorker:()=>Promise.all([r.e(6481),r.e(3677),r.e(6139),r.e(3248)]).then(r.bind(r,73248)),SceneLayerWorker:()=>Promise.all([r.e(8480),r.e(1412)]).then(r.bind(r,31412)),WFSSourceWorker:()=>Promise.all([r.e(7126),r.e(3615),r.e(8968),r.e(8480),r.e(3215),r.e(8657),r.e(3370),r.e(3794),r.e(8089),r.e(1419)]).then(r.bind(r,43230)),WorkerTileHandler:()=>Promise.all([r.e(4325),r.e(9805),r.e(3425),r.e(5027)]).then(r.bind(r,56456)),Lyr3DWorker:()=>r.e(1455).then(r.bind(r,41455))};var u=r(94362),f=r(17202);const{CLOSE:d,ABORT:h,INVOKE:p,RESPONSE:g,OPEN_PORT:y,ON:b}=u.MessageType;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===u.MessageType.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 _{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 _(t.port1,{channel:t,client:r});return"object"==typeof r&&"remoteClient"in r&&(r.remoteClient=n),_.clients.set(n,r),t.port2}static loadWorker(e){const t=l[e];return t?t():Promise.resolve(null)}constructor(e,t,r){this._port=e,this._jobQueue=r,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()}close(){this._post({type:d}),this._close()}isBusy(){return this._outJobs.size>0}invoke(e,t,r){const n=r?.signal,o=r?.transferList;if(!this._port)return Promise.reject(new s.Z("worker:port-closed",`Cannot call invoke('${e}'), port is closed`,{methodName:e,data:t}));const i=(0,u.jt)();return new Promise(((r,s)=>{if((0,c.Hc)(n))return this._processWork(),void s((0,c.zE)());const l=(0,c.fu)(n,(()=>{const e=this._outJobs.get(i);e&&(this._outJobs.delete(i),this._processWork(),(0,a.hw)(e.abortHandle),this._post({type:h,jobId:i}),s((0,c.zE)()))})),u={resolve:r,reject:s,abortHandle:l,debugInfo:e};this._outJobs.set(i,u),this._post({type:p,jobId:i,methodName:e,abortable:null!=n},t,o)}))}on(e,t){const r=new MessageChannel;function n(e){t(e.data)}return this._port.postMessage({type:u.MessageType.ON,eventType:e,port:r.port2},[r.port2]),r.port1.addEventListener("message",n),r.port1.start(),(0,i.kB)((()=>{r.port1.postMessage({type:u.MessageType.CLOSE}),r.port1.close(),r.port1.removeEventListener("message",n)}))}jobAdded(){this._processWork()}openPort(){const e=new MessageChannel;return this._post({type:y,port:e.port2}),e.port1}_processWork(){if(this._outJobs.size>=2)return;const e=this._jobQueue?.pop();if(!e)return;const{methodName:t,data:r,invokeOptions:n,resolver:s}=e;this.invoke(t,r,n).then((e=>s.resolve(e))).catch((e=>s.reject(e)))}_close(){this._channel&&(this._channel=void 0),this._port.removeEventListener("message",this._onMessage),this._port.close(),this._outJobs.forEach((e=>{(0,a.hw)(e.abortHandle),e.reject((0,c.zE)(`Worker closing, aborting job calling '${e.debugInfo}'`))})),this._inJobs.clear(),this._outJobs.clear(),this._invokeQueue.clear(),this._port=null,this._client=null,this._schedule=null}_onMessage(e){null!=this._schedule?this._schedule((()=>this._processMessage(e))):this._processMessage(e)}_processMessage(e){const t=(0,u.QM)(e);if(t)switch(t.type){case g:this._onResponseMessage(t);break;case p:this._invokeQueue.push(t);break;case h:this._onAbortMessage(t);break;case d:this._onCloseMessage();break;case y:this._onOpenPortMessage(t);break;case b: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&&_.clients.get(this)===e&&e.destroy(),_.clients.delete(this),e?.remoteClient&&(e.remoteClient=null)}_onInvokeMessage(e){const{methodName:t,jobId:r,data:n,abortable:s}=e,o=s?new AbortController:null,i=this._inJobs;let a,l=this._client,f=l[t];try{if(!f&&t&&t.includes(".")){const e=t.split(".");for(let t=0;t<e.length-1;t++)l=l[e[t]],f=l[e[t+1]]}if("function"!=typeof f)throw new TypeError(`${t} is not a function`);a=f.call(l,n,{client:this,signal:o?o.signal:null})}catch(e){return void this._post({type:g,jobId:r,error:(0,u.AB)(e)})}(0,c.y8)(a)?(i.set(r,{controller:o,promise:a}),a.then((e=>{i.has(r)&&(i.delete(r),this._post({type:g,jobId:r},e))}),(e=>{i.has(r)&&(i.delete(r),(0,c.D_)(e)||this._post({type:g,jobId:r,error:(0,u.AB)(e||{message:`Error encountered at method ${t}`})}))}))):this._post({type:g,jobId:r},a)}_onOpenPortMessage(e){new _(e.port,{client:this._client})}_onOnMessage(e){const{port:t}=e,r=this._client.on(e.eventType,(e=>{t.postMessage(e)})),n=(0,o.on)(e.port,"message",(e=>{const s=(0,u.QM)(e);s?.type===u.MessageType.CLOSE&&(n.remove(),r.remove(),t.close())}))}_onResponseMessage(e){const{jobId:t,error:r,data:n}=e,o=this._outJobs;if(!o.has(t))return;const i=o.get(t);o.delete(t),this._processWork(),(0,a.hw)(i.abortHandle),r?i.reject(s.Z.fromJSON(JSON.parse(r))):i.resolve(n)}_post(e,t,r){return(0,u.oi)(this._port,e,t,r)}}_.kernelInfo={buildDate:f.r,fullVersion:n.bR,revision:f.$},_.clients=new Map},94362:(e,t,r)=>{"use strict";r.d(t,{AB:()=>a,MessageType:()=>n,QM:()=>l,jt:()=>i,oi:()=>c});var n,s=r(80442);!function(e){e[e.HANDSHAKE=0]="HANDSHAKE",e[e.OPEN=1]="OPEN",e[e.OPENED=2]="OPENED",e[e.RESPONSE=3]="RESPONSE",e[e.INVOKE=4]="INVOKE",e[e.ABORT=5]="ABORT",e[e.CLOSE=6]="CLOSE",e[e.OPEN_PORT=7]="OPEN_PORT",e[e.ON=8]="ON"}(n||(n={}));let o=0;function i(){return o++}function a(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 c(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 i;if(function(e){return e&&"object"==typeof e&&("result"in e||"transferList"in e)}(r)?(i=u(r.transferList),t.data=r.result):(i=u(o),t.data=r),i){if((0,s.Z)("ff"))for(const r of i)if("byteLength"in r&&r.byteLength>267386880){const r="Worker call with large ArrayBuffer would crash Firefox";switch(t.type){case n.INVOKE:throw r;case n.RESPONSE:return void c(e,{type:n.RESPONSE,jobId:t.jobId,error:a(r)})}}e.postMessage(t,i)}else e.postMessage(t)}function l(e){if(!e)return null;const t=e.data;return t?"string"==typeof t?JSON.parse(t):t:null}function u(e){if(!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||"ArrayBuffer"===e?.constructor?.name}(e)));return t.length?t:null}},40330:(e,t,r)=>{"use strict";r.d(t,{Dp:()=>u,bR:()=>c,i8:()=>i,id:()=>a,qh:()=>l});var n=r(80442),s=r(17452),o=r(17202);Symbol.dispose??=Symbol("Symbol.dispose"),Symbol.asyncDispose??=Symbol("Symbol.asyncDispose");const i="4.29";let a,c=i;function l(e){a=e}function u(e){const t=a?.findCredential(e);return t?.token?(0,s.ZN)(e,"token",t.token):e}c=`4.29.0-next.${o.r}`,(0,n.Z)("host-webworker")},19745:(e,t,r)=>{"use strict";r.d(t,{P:()=>i,a:()=>o});const n=/^https:\/\/([a-z\d-]+)(\.maps([^.]*))?\.arcgis\.com/i,s={devext:{customBaseUrl:"mapsdevext.arcgis.com",portalHostname:"devext.arcgis.com"},qaext:{customBaseUrl:"mapsqa.arcgis.com",portalHostname:"qaext.arcgis.com"},www:{customBaseUrl:"maps.arcgis.com",portalHostname:"www.arcgis.com"}};function o(e){const t=e?.match(n);if(!t)return null;const[,r,o,i]=t;if(!r)return null;let a=null,c=null,l=null;const{devext:u,qaext:f,www:d}=s;if(o)if(a=r,i)switch(i.toLowerCase()){case"devext":({customBaseUrl:c,portalHostname:l}=u);break;case"qa":({customBaseUrl:c,portalHostname:l}=f);break;default:return null}else({customBaseUrl:c,portalHostname:l}=d);else switch(r.toLowerCase()){case"devext":({customBaseUrl:c,portalHostname:l}=u);break;case"qaext":({customBaseUrl:c,portalHostname:l}=f);break;case"www":({customBaseUrl:c,portalHostname:l}=d);break;default:return null}return{customBaseUrl:c,isPortal:!1,portalHostname:l,urlKey:a}}function i(e){return/\/(sharing|usrsvcs)\/(appservices|servers)\//i.test(e)}},49917:(e,t,r)=>{"use strict";function n(e){const t=atob(e),r=new Uint8Array(t.length);for(let e=0;e<t.length;e++)r[e]=t.charCodeAt(e);return r.buffer}function s(e){const t=new Uint8Array(e);let r="";for(let e=0;e<t.length;e++)r+=String.fromCharCode(t[e]);return btoa(r)}r.d(t,{R:()=>n,s:()=>s})},17202:(e,t,r)=>{"use strict";r.d(t,{$:()=>s,r:()=>n});const n="20231027",s="bc4d8eddc231b8a3444c59c01cd8df9d60bdd4b9"}},t={};function r(n){var s=t[n];if(void 0!==s)return s.exports;var o=t[n]={exports:{}};return e[n](o,o.exports,r),o.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:"53da86952ff6afd0eecd",118:"2904a77b72c341edfcb5",163:"f38872fcbb6056858319",247:"a9f83bbccf3b5f229262",299:"7cb698c248db61b73cfe",304:"e7317511ce0139a13098",540:"8f4646bd3aac81136eb7",565:"01ec6da0c371bf43f48c",572:"55fcba180c3a0504558d",576:"c5c56b6d99db96a6755a",661:"39ae4b9b766f674bc6f2",664:"a24a92835a939ba41d0b",770:"b158e232e111e5aa6b62",819:"d1ead6e8aa7e8e21fbc6",821:"7b8377b3a9f78f9d3613",861:"d89ffc1279f4b3bcbe7c",946:"ad4f77a1d238bd763bc4",951:"777fcc4ed4cc2109c832",957:"f18e27660c644512d224",1073:"9275ab11ba306dc32df0",1158:"de8abbe1356873fdce87",1316:"1c0d7eb69c130cae77a2",1320:"5af70f5cca59ad164810",1412:"7fe4bf7559c2f4c62858",1419:"7ade568f3652e5a3ce9c",1421:"9244c52ad4bc86ebdd5c",1423:"3d98b873bf07d8e112ba",1433:"4d5bdf18feeb9c8cb6ff",1444:"b7c81a5bbcdd94b8a7f6",1445:"57e2f62082148e86b0ab",1455:"269a180bca96c91e1a24",1537:"a95d0737450aa583c1aa",1566:"853358f7d0300631bf92",1690:"a783ca5aa9795e279b6f",1767:"d9a30fbccd8552b0ba0a",1773:"711f283749579f7239d2",1790:"dfa08348e79346c9a8a2",1826:"e36edf4f916c508c8c1a",1983:"e4efee54c79c79bba3a8",2046:"c3b8b40115be5a2b960e",2134:"cced7a26b9c98c63f953",2283:"02f7a30731458ea9d553",2330:"92a00eaac7760c701355",2421:"4b7810df32e91fecd0b4",2594:"ef04fb44a0f5e4456c9a",2664:"41306b698f78001dda55",2712:"fd0f9ba2cae72d569611",2713:"9ed4d6fa129a4a1c3529",2763:"589489090116d447324f",2834:"58b404cb320f0a202f42",3027:"b586ae0150177f67ceb2",3073:"99fd09dd42b75a932e84",3215:"e003c8f84acc8ce6cdff",3248:"5f0436edd494889f8889",3310:"e83c9a71d2cce98c5a57",3370:"2a8ec76e6ef0edc4dfb6",3425:"37edbd9b05bfdb2e645d",3529:"53f851f85c6fda00d4a8",3597:"d74da372b1aa189d033c",3601:"70d9d11b626f7e5ad9c6",3615:"b95bd1c7a8561554065a",3637:"589b50bfa965cdb22e90",3677:"f6ed6b17d2e5653318f6",3742:"1e5f2a5422da6487d8d2",3758:"548bbc0862e58a1947bf",3778:"2e46978584e3521deab6",3794:"9786b4869dfc71cdfd19",3809:"28eea2b36ea8a618ceee",3831:"adafff31dc8edd0b12e5",3847:"647b9882af824e98d04f",3852:"f0c62bb406bb93b1408a",3914:"52aae616501d52173ae1",3966:"8e15d42d6f2b8f5c792c",3992:"8926596796aa0a5abd4e",4041:"9a7cc762e57714cbf00a",4166:"4a98e4df168f0a57b2b5",4216:"0fac8a4747b1ad8e1618",4325:"f3e723075f460c36b819",4330:"224e79f6c172da444e0a",4358:"4a2a0091cd830b6a1729",4371:"28154e3c66879fd39e0c",4475:"80690a936d573d009eae",4492:"914adb8839e250bb8390",4499:"c83b0b5799bdae61fa8c",4573:"2b47ef3571f54c946683",4599:"7cf7f2b991a7cbdad2ce",4608:"0a2b2f515218c901675d",4680:"2d364d7a5fda5659c9d0",4695:"10dc578a90e1194c8720",4697:"386d7a038abe36e3bb28",4720:"e06cd10b6f8f363b5131",4828:"a2c055dbc910d5672649",4998:"4a21558f271656896bab",5027:"8e25023fe5570152deb2",5129:"7f41c3ee7aa87f62091b",5234:"8b6b963230df56850580",5243:"66a996f85f0135212e6f",5326:"cf982f2694d9a094e8fc",5329:"1b37f92306f1305f0460",5334:"80bf6cf1bef17215bca4",5389:"f723fa99bcd1b58e480f",5463:"98bdfdafd9c72f4606bf",5481:"2d4f9337f96573d93b62",5642:"610afd59e4844a9f198f",5732:"83f7e22a12d90ef93e62",5837:"9d2f3de6953a8ebafdd3",5883:"2304b7456ced997904f6",5935:"60a08ce29d09cb07ef06",5946:"14c399a5dc8e867a676d",6e3:"af4763f751b630390cf6",6047:"cb53577d7385f3ec5ca6",6124:"fa66f82e551de2d3b7c2",6139:"c299f09c24edf216a179",6233:"45d2d63f90a83472acd0",6237:"6f1c298509e89a7479ee",6261:"567b0694bb297f0f4672",6404:"73c60a8ee4d8b2991b5f",6413:"3a5d5c8ce13a2752dfc7",6459:"8b95d5918bd1c168679f",6481:"41bebad0a39213a63405",6569:"b138196d304883efd5f6",6594:"30b6431e7944d0344ba4",6610:"3ecf6a0d92be165aaab2",6654:"39a56453d78be7b70010",6710:"c20b22aab4b9f7ab101f",6774:"d7270cb3689d6a08f530",6882:"e4ec945d303d5e9b9147",7085:"b436b84c7c9f4b4b0197",7126:"0f804e3f888cb4998f46",7157:"51019455062d08f132b3",7267:"b6cc8d7dcc710231fe72",7277:"f442f1397636cd3d8b40",7301:"6046be598e8c673eeb1f",7307:"76c11b2eb1d80cc9e130",7360:"4354b5696fce0421927a",7374:"60b955e783821a5e6c06",7528:"f11c39051e02a4f3bda3",7595:"c6f4383f67699360af75",7701:"ec286e256c4e61bcb8f3",7863:"46e92883130c610c1bb4",7873:"0e79e6dff936855463b1",7899:"9ae187fffdc3b12b7fcf",7902:"33b3a46f1fddc6cde8f4",7915:"451cc2e46b10f7f6da15",8008:"bf7efa6fba8b277c507d",8062:"15acfba4a0b3b22c3f61",8089:"b633ef9cc64072d70ca3",8092:"70738db8ca6367a52ef5",8096:"63c8bf00120a4e67f5b0",8153:"7ebda506648e0e75eeed",8228:"e5352dc8983d06d4ee0f",8480:"f781e88980c8fc3fa727",8592:"1da721608993783dc9cf",8621:"a5d0625e636ffda92bb7",8636:"c90b91b0617e12d6e0a6",8652:"a6c6998874c44c7623ad",8657:"a160576f21ada91995ac",8758:"b6bd31674076e543d8b2",8828:"2f8a4c55f69f48aec4d0",8853:"43ed361dfdc082696769",8968:"7f3bc7a2de59e485f22f",9016:"d93c567f6a406dd24efa",9153:"793890ebbe4501f48a55",9169:"a360534e89a337871921",9238:"0b5bd015fde83dcc634f",9243:"5bb8f1fb77682ee36444",9291:"d191267d91a53db42956",9296:"dd841949503f3a4bcc3a",9379:"974523669b4ade702706",9594:"7b1660f66e73438772af",9717:"f0a76660fa11186aebca",9735:"8c40e4d7edb2c5325fd0",9790:"a23d1d54b9a9a3d3de36",9805:"c734116e34106810a3bf",9884:"68b0e0aa33880bc1ba77",9889:"ee32213b605a935b3440",9904:"3009e3a62da9460ac6fd",9931:"ac25e8806015fa90f03e",9970:"df8e5e7371377aed580c",9971:"34049f81c2a6b8cd7b2f"}[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");if(n.length)for(var s=n.length-1;s>-1&&!e;)e=n[s--].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};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[s,o,i]=t;for(var a in o)r.o(o,a)&&(r.m[a]=o[a]);for(i&&i(r);s.length;)e[s.pop()]=1;n(t)}})(),r(88277);var n=r(728);RemoteClient=n})();
|
package/package.json
CHANGED
package/support/basemapUtils.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.29/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import e from"../Basemap.js";import r from"../config.js";import t from"../core/Collection.js";import n from"../core/Logger.js";import{destroyMaybe as a,mappedFind as i}from"../core/maybe.js";import{Url as l,makeAbsolute as s,normalize as u}from"../core/urlUtils.js";import{ensureType as c}from"../core/accessorSupport/ensureType.js";import{effectEquals as o}from"../layers/effects/utils.js";import{esriBasemapDefinitions as f}from"./basemapDefinitions.js";const p=n.getLogger("esri.support.basemapUtils");function y(){return{}}function m(e){for(const r in e){const t=e[r];a(t),delete e[r]}}function b(t,n){let a;if("string"==typeof t){const i=t in f,l=!i&&t.includes("/");if(!i&&!l){const e=Object.entries(f).filter((([e,t])=>r.apiKey&&!t.classic||!r.apiKey&&(t.classic||t.is3d))).map((([e])=>`"${e}"`)).sort().join(", ");return p.warn(`Unable to find basemap definition for: ${t}. Try one of these: ${e}`),null}n&&(a=n[t]),a||(a=i?e.fromId(t):new e({style:{id:t}}),n&&(n[t]=a))}else a=c(e,t);return a?.destroyed&&(p.warn("The provided basemap is already destroyed",{basemap:a}),a=null),a}function d(e){return"Web Scene"===e.portalItem?.type}function L(e){return!!e?.portalItem?.tags?.some((e=>"beta"===e.toLowerCase()))}function S(e,r){return e.basemap?.referenceLayers?.some((e=>e.uid===r))||e.basemap?.baseLayers?.some((e=>e.uid===r))}function v(e,r=null){const t=b(e);if(!t)return null;const n=t.clone();return r&&(n.baseLayers=T(n.baseLayers,r.baseLayers),n.referenceLayers=T(n.referenceLayers,r.referenceLayers)),n}let g;function h(e){if(g)return g(e);let r=null;const t=M(e),n=!t?.baseLayers.length;for(const a in f){const e=K(t,$(f[a]),{mustMatchReferences:n});if("equal"===e){r=a;break}"base-layers-equal"===e&&(r=a)}return r}function I(e){g=e}function R(e,r){if(e===r)return!0;if(null!=e?.portalItem?.id&&e.portalItem.id===r?.portalItem?.id)return!0;return"equal"===K(M(e),M(r),{mustMatchReferences:!0})}function T(e,r){const n=new t;return e.forEach((e=>{const t=r.find((r=>"scene"!==r.type&&D(A(e),A(r))))||e;n.includes(t)?n.push(e):n.push(t)})),n}function w(e){return!!e?.baseLayers.concat(e.referenceLayers).some(j)}function j(e){if(x(e.url))return!0;if("vector-tile"===e.type)for(const r in e.sourceNameToSource){const t=e.sourceNameToSource[r];if(x(t?.sourceUrl))return!0}return!1}function U(e,r){if(null==r||null==e)return{spatialReference:null,updating:!1};if("not-loaded"===r.loadStatus)return r.load(),{spatialReference:null,updating:!0};if(r.spatialReference)return{spatialReference:r.spatialReference,updating:!1};if(0===r.baseLayers.length)return{spatialReference:null,updating:!1};const t=r.baseLayers.at(0);switch(t.loadStatus){case"not-loaded":t.load();case"loading":return{spatialReference:null,updating:!0};case"failed":return{spatialReference:null,updating:!1}}const n=(("supportedSpatialReferences"in t?t.supportedSpatialReferences:null)||["tileInfo"in t?t.tileInfo?.spatialReference:t.spatialReference]).filter(Boolean),a=e.spatialReference;return a?{spatialReference:n.find((e=>a.equals(e)))??n[0]??null,updating:!1}:{spatialReference:n[0],updating:!1}}const q=/^(basemaps|ibasemaps).*-api\.arcgis\.com$/i;function x(e){if(!e)return!1;const r=new l(s(e));return!!r.authority&&q.test(r.authority)}function M(e){return e?!e.loaded&&e.resourceInfo?$(e.resourceInfo.data):{baseLayers:k(e.baseLayers),referenceLayers:k(e.referenceLayers)}:null}function k(e){return(t.isCollection(e)?e.toArray():e).map(A)}function A(e){return{type:e.type,effect:"effect"in e?e.effect:void 0,url:E("urlTemplate"in e&&e.urlTemplate||e.url||"styleUrl"in e&&e.styleUrl||""),minScale:"minScale"in e&&null!=e.minScale?e.minScale:0,maxScale:"maxScale"in e&&null!=e.maxScale?e.maxScale:0,opacity:null!=e.opacity?e.opacity:1,visible:null==e.visible||!!e.visible,sublayers:"map-image"!==e.type&&"wms"!==e.type||null==e.sublayers?void 0:e.sublayers?.map((e=>({id:e.id,visible:e.visible}))),activeLayerId:"wmts"===e.type?e.activeLayer?.id:void 0}}function C(e){return e.isReference||"ArcGISSceneServiceLayer"===e.layerType}function $(e){return e?{baseLayers:G((e.baseMapLayers??[]).filter((e=>!C(e)))),referenceLayers:G((e.baseMapLayers??[]).filter((e=>C(e))))}:null}function G(e){return e.map((e=>B(e)))}function B(e){let r;switch(e.layerType){case"VectorTileLayer":r="vector-tile";break;case"ArcGISTiledMapServiceLayer":r="tile";break;case"ArcGISSceneServiceLayer":r="scene";break;default:r="unknown"}return{type:r,effect:e.effect,url:E(e.templateUrl||e.urlTemplate||e.styleUrl||e.url),minScale:e.minScale??0,maxScale:e.maxScale??0,opacity:e.opacity??1,visible:null==e.visibility||!!e.visibility,sublayers:void 0,activeLayerId:void 0}}function K(e,r,t){if(null!=e!=(null!=r))return"not-equal";if(!e||!r)return"equal";if(!N(e.baseLayers,r.baseLayers))return"not-equal";return N(e.referenceLayers,r.referenceLayers)?"equal":t.mustMatchReferences?"not-equal":"base-layers-equal"}function N(e,r){if(e.length!==r.length)return!1;for(let t=0;t<e.length;t++)if(!D(e[t],r[t]))return!1;return!0}function D(e,r){if(e.type!==r.type||e.url!==r.url||e.minScale!==r.minScale||e.maxScale!==r.maxScale||e.visible!==r.visible||e.opacity!==r.opacity)return!1;if(!o(e.effect,r.effect))return!1;if(null!=e.activeLayerId||null!=r.activeLayerId)return e.activeLayerId===r.activeLayerId;if(null!=e.sublayers||null!=r.sublayers){if(null==e.sublayers||null==r.sublayers||e.sublayers.length!==r.sublayers.length)return!1;for(let t=0;t<e.sublayers.length;t++){const n=e.sublayers.at(t),a=r.sublayers.at(t);if(n?.id!==a?.id||n?.visible!==a?.visible)return!1}}return!0}function E(e){return e?u(e).replace(/^\s*https?:/i,"").toLowerCase():""}function O(e){if(!e)return null;const{thumbnailUrl:r}=e;if(r)return r;const t=h(e);return t?f[t].thumbnailUrl:i(e.baseLayers,V)}function V(e){return"portalItem"in e?e.portalItem?.thumbnailUrl:void 0}export{v as clonePreservingTiledLayers,R as contentEquals,y as createCache,m as destroyCache,b as ensureType,U as findSpatialReference,O as getBasemapThumbnailUrl,h as getWellKnownBasemapId,w as hasDeveloperBasemapLayer,d as isBasemap3D,L as isBasemapInBeta,S as isBasemapLayer,j as isDeveloperBasemapLayer,I as overrideGetWellKnownBasemapId};
|
|
5
|
+
import e from"../Basemap.js";import r from"../config.js";import t from"../core/Collection.js";import n from"../core/Logger.js";import{destroyMaybe as a,mappedFind as i}from"../core/maybe.js";import{Url as l,makeAbsolute as s,normalize as u}from"../core/urlUtils.js";import{ensureType as c}from"../core/accessorSupport/ensureType.js";import{effectEquals as o}from"../layers/effects/utils.js";import{esriBasemapDefinitions as f}from"./basemapDefinitions.js";const p=n.getLogger("esri.support.basemapUtils");function y(){return{}}function m(e){for(const r in e){const t=e[r];a(t),delete e[r]}}function b(t,n){let a;if("string"==typeof t){const i=t in f,l=!i&&t.includes("/");if(!i&&!l){const e=Object.entries(f).filter((([e,t])=>r.apiKey&&!t.classic||!r.apiKey&&(t.classic||t.is3d))).map((([e])=>`"${e}"`)).sort().join(", ");return p.warn(`Unable to find basemap definition for: ${t}. Try one of these: ${e}`),null}n&&(a=n[t]),a||(a=i?e.fromId(t):new e({style:{id:t}}),n&&(n[t]=a))}else a=c(e,t);return a?.destroyed&&(p.warn("The provided basemap is already destroyed",{basemap:a}),a=null),a}function d(e){return"Web Scene"===e.portalItem?.type||e.referenceLayers.some((e=>"scene"===e.type))}function L(e){return!!e?.portalItem?.tags?.some((e=>"beta"===e.toLowerCase()))}function S(e,r){return e.basemap?.referenceLayers?.some((e=>e.uid===r))||e.basemap?.baseLayers?.some((e=>e.uid===r))}function v(e,r=null){const t=b(e);if(!t)return null;const n=t.clone();return r&&(n.baseLayers=T(n.baseLayers,r.baseLayers),n.referenceLayers=T(n.referenceLayers,r.referenceLayers)),n}let g;function h(e){if(g)return g(e);let r=null;const t=M(e),n=!t?.baseLayers.length;for(const a in f){const e=K(t,$(f[a]),{mustMatchReferences:n});if("equal"===e){r=a;break}"base-layers-equal"===e&&(r=a)}return r}function I(e){g=e}function R(e,r){if(e===r)return!0;if(null!=e?.portalItem?.id&&e.portalItem.id===r?.portalItem?.id)return!0;return"equal"===K(M(e),M(r),{mustMatchReferences:!0})}function T(e,r){const n=new t;return e.forEach((e=>{const t=r.find((r=>"scene"!==r.type&&D(A(e),A(r))))||e;n.includes(t)?n.push(e):n.push(t)})),n}function w(e){return!!e?.baseLayers.concat(e.referenceLayers).some(j)}function j(e){if(x(e.url))return!0;if("vector-tile"===e.type)for(const r in e.sourceNameToSource){const t=e.sourceNameToSource[r];if(x(t?.sourceUrl))return!0}return!1}function U(e,r){if(null==r||null==e)return{spatialReference:null,updating:!1};if("not-loaded"===r.loadStatus)return r.load(),{spatialReference:null,updating:!0};if(r.spatialReference)return{spatialReference:r.spatialReference,updating:!1};if(0===r.baseLayers.length)return{spatialReference:null,updating:!1};const t=r.baseLayers.at(0);switch(t.loadStatus){case"not-loaded":t.load();case"loading":return{spatialReference:null,updating:!0};case"failed":return{spatialReference:null,updating:!1}}const n=(("supportedSpatialReferences"in t?t.supportedSpatialReferences:null)||["tileInfo"in t?t.tileInfo?.spatialReference:t.spatialReference]).filter(Boolean),a=e.spatialReference;return a?{spatialReference:n.find((e=>a.equals(e)))??n[0]??null,updating:!1}:{spatialReference:n[0],updating:!1}}const q=/^(basemaps|ibasemaps).*-api\.arcgis\.com$/i;function x(e){if(!e)return!1;const r=new l(s(e));return!!r.authority&&q.test(r.authority)}function M(e){return e?!e.loaded&&e.resourceInfo?$(e.resourceInfo.data):{baseLayers:k(e.baseLayers),referenceLayers:k(e.referenceLayers)}:null}function k(e){return(t.isCollection(e)?e.toArray():e).map(A)}function A(e){return{type:e.type,effect:"effect"in e?e.effect:void 0,url:E("urlTemplate"in e&&e.urlTemplate||e.url||"styleUrl"in e&&e.styleUrl||""),minScale:"minScale"in e&&null!=e.minScale?e.minScale:0,maxScale:"maxScale"in e&&null!=e.maxScale?e.maxScale:0,opacity:null!=e.opacity?e.opacity:1,visible:null==e.visible||!!e.visible,sublayers:"map-image"!==e.type&&"wms"!==e.type||null==e.sublayers?void 0:e.sublayers?.map((e=>({id:e.id,visible:e.visible}))),activeLayerId:"wmts"===e.type?e.activeLayer?.id:void 0}}function C(e){return e.isReference||"ArcGISSceneServiceLayer"===e.layerType}function $(e){return e?{baseLayers:G((e.baseMapLayers??[]).filter((e=>!C(e)))),referenceLayers:G((e.baseMapLayers??[]).filter((e=>C(e))))}:null}function G(e){return e.map((e=>B(e)))}function B(e){let r;switch(e.layerType){case"VectorTileLayer":r="vector-tile";break;case"ArcGISTiledMapServiceLayer":r="tile";break;case"ArcGISSceneServiceLayer":r="scene";break;default:r="unknown"}return{type:r,effect:e.effect,url:E(e.templateUrl||e.urlTemplate||e.styleUrl||e.url),minScale:e.minScale??0,maxScale:e.maxScale??0,opacity:e.opacity??1,visible:null==e.visibility||!!e.visibility,sublayers:void 0,activeLayerId:void 0}}function K(e,r,t){if(null!=e!=(null!=r))return"not-equal";if(!e||!r)return"equal";if(!N(e.baseLayers,r.baseLayers))return"not-equal";return N(e.referenceLayers,r.referenceLayers)?"equal":t.mustMatchReferences?"not-equal":"base-layers-equal"}function N(e,r){if(e.length!==r.length)return!1;for(let t=0;t<e.length;t++)if(!D(e[t],r[t]))return!1;return!0}function D(e,r){if(e.type!==r.type||e.url!==r.url||e.minScale!==r.minScale||e.maxScale!==r.maxScale||e.visible!==r.visible||e.opacity!==r.opacity)return!1;if(!o(e.effect,r.effect))return!1;if(null!=e.activeLayerId||null!=r.activeLayerId)return e.activeLayerId===r.activeLayerId;if(null!=e.sublayers||null!=r.sublayers){if(null==e.sublayers||null==r.sublayers||e.sublayers.length!==r.sublayers.length)return!1;for(let t=0;t<e.sublayers.length;t++){const n=e.sublayers.at(t),a=r.sublayers.at(t);if(n?.id!==a?.id||n?.visible!==a?.visible)return!1}}return!0}function E(e){return e?u(e).replace(/^\s*https?:/i,"").toLowerCase():""}function O(e){if(!e)return null;const{thumbnailUrl:r}=e;if(r)return r;const t=h(e);return t?f[t].thumbnailUrl:i(e.baseLayers,V)}function V(e){return"portalItem"in e?e.portalItem?.thumbnailUrl:void 0}export{v as clonePreservingTiledLayers,R as contentEquals,y as createCache,m as destroyCache,b as ensureType,U as findSpatialReference,O as getBasemapThumbnailUrl,h as getWellKnownBasemapId,w as hasDeveloperBasemapLayer,d as isBasemap3D,L as isBasemapInBeta,S as isBasemapLayer,j as isDeveloperBasemapLayer,I as overrideGetWellKnownBasemapId};
|
package/support/revision.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.29/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
const
|
|
5
|
+
const d="20231027",c="bc4d8eddc231b8a3444c59c01cd8df9d60bdd4b9";export{d as buildDate,c 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.29/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as t}from"../../../../../chunks/tslib.es6.js";import"../../../../../geometry.js";import e from"../../../../../core/Accessor.js";import{removeUnordered as i}from"../../../../../core/arrayUtils.js";import{unitRGBAFromColor as a}from"../../../../../core/colorUtils.js";import"../../../../../core/has.js";import n from"../../../../../core/Evented.js";import o from"../../../../../core/Handles.js";import{handlesGroup as r,makeHandle as s,destroyHandle as l}from"../../../../../core/handleUtils.js";import{destroyMaybe as p,removeMaybe as h}from"../../../../../core/maybe.js";import{zeroMeters as d,scale as u,createLength as c}from"../../../../../core/quantityUtils.js";import{watch as m,when as g,initial as _}from"../../../../../core/reactiveUtils.js";import{getMetersPerUnitForSR as f}from"../../../../../core/unitUtils.js";import{property as v}from"../../../../../core/accessorSupport/decorators/property.js";import"../../../../../core/accessorSupport/ensureType.js";import{subclass as M}from"../../../../../core/accessorSupport/decorators/subclass.js";import{IDENTITY as y}from"../../../../../core/libs/gl-matrix-2/factories/mat4f64.js";import{l as x,f as O,o as b,s as E,g as G,i as S}from"../../../../../chunks/vec32.js";import{fromValues as I,create as w}from"../../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{UpdatingHandles as T}from"../../../../../core/support/UpdatingHandles.js";import V from"../../../../../geometry/Polyline.js";import{hasCompatibleTopology as H}from"../../../../../geometry/support/coordsUtils.js";import{projectPoint as A}from"../../../../../geometry/support/plane.js";import{sv3d as D}from"../../../../../geometry/support/vectorStacks.js";import{makeDehydratedPoint as L}from"../../../../../layers/graphics/dehydratedPoint.js";import{getGraphicEffectiveElevationInfo as j}from"../../../../../support/elevationInfoUtils.js";import{isVolumetricSymbol as P}from"../../../../../symbols/support/utils.js";import{Manipulator3D as U}from"../../Manipulator3D.js";import{createManipulatorMaterial as C,createManipulatorOutlineMaterial as N,placeAtGraphic as R}from"../../manipulatorUtils.js";import{RenderObject as k}from"../../RenderObject.js";import{SegmentLabels3D as F}from"../../SegmentLabels3D.js";import{SnappingVisualizer3D as z}from"../../SnappingVisualizer3D.js";import{screenToRenderPlaneFromEvent as X,convertToMapCoordinates as Z,screenToMapXYAtLocation as Y,screenToMapXYForGraphicAtLocation as q}from"../dragEventPipeline3D.js";import{orientation as W}from"../geometryUtils.js";import{ManipulatorType as K}from"../ManipulatorType.js";import{canMoveZ as B}from"../manipulatorUtils.js";import{Settings as J}from"../settings.js";import{createVisualElements as Q}from"../visualElementUtils.js";import{discRadiusSmall as $}from"../manipulations/config.js";import{ManipulationType as tt,MoveManipulation as et}from"../manipulations/MoveManipulation.js";import{axisConstrainedDragSign as it}from"../manipulations/moveUtils.js";import{MoveXYGraphicManipulation as at}from"../manipulations/MoveXYGraphicManipulation.js";import{createEdgeOffsetIntersectionPlane as nt,createEdgeOffsetOperation as ot,edgeOffsetRotationMatrix as rt,screenEdgeLengthSquared as st}from"./edgeOffsetUtils.js";import{OutlineVisualElement as lt}from"../../visualElements/OutlineVisualElement.js";import{GraphicState as pt}from"../../../layers/graphics/GraphicState.js";import{createExtrudedTriangle as ht,createSphereGeometry as dt}from"../../../webgl-engine/lib/GeometryUtil.js";import{MouseButton as ut}from"../../../../input/IViewEvents.js";import{sceneSnappingAtLocation as ct,addMapDelta as mt,createManipulatorDragEventPipeline as gt,dragAtLocation as _t,addScreenDelta as ft}from"../../../../interactive/dragEventPipeline.js";import{ManipulatorStateFlags as vt,ManipulatorStateCustomFlags as Mt}from"../../../../interactive/interfaces.js";import{EditGeometryOperations as yt}from"../../../../interactive/editGeometry/EditGeometryOperations.js";import{AccumulationBehaviour as xt}from"../../../../interactive/editGeometry/interfaces.js";import{SnappingContext as Ot}from"../../../../interactive/snapping/SnappingContext.js";import{createSnapDragEventPipelineStep as bt}from"../../../../interactive/snapping/SnappingDragPipelineStep.js";import{ReshapeEdgeOffsetTooltipInfo as Et}from"../../../../interactive/tooltip/ReshapeTooltipInfos.js";import{Tooltip as Gt}from"../../../../interactive/tooltip/Tooltip.js";import{TranslateGraphicZTooltipInfo as St,TranslateGraphicXYTooltipInfo as It,TranslateGraphicTooltipInfo as wt,TranslateVertexZTooltipInfo as Tt,TranslateVertexXYTooltipInfo as Vt,TranslateVertexTooltipInfo as Ht}from"../../../../interactive/tooltip/TranslateTooltipInfos.js";import{makeElevationField as At}from"../../../../interactive/tooltip/fields/fields.js";import{autoAreaByElevationMode as Dt}from"../../../../support/automaticAreaMeasurementUtils.js";import{autoHorizontalDistanceByElevationModeBetweenPoints as Lt,autoLengthByElevationMode as jt}from"../../../../support/automaticLengthMeasurementUtils.js";import{verticalSignedDistanceBetweenPoints as Pt,elevationOfPoint as Ut}from"../../../../support/euclideanLengthMeasurementUtils.js";import{geodesicDistance as Ct}from"../../../../support/geodesicLengthMeasurementUtils.js";import Nt from"../../../../../geometry/SpatialReference.js";let Rt=class extends(n.EventedMixin(e)){constructor(t){super(t),this._selectedIndex=0,this._manipulatorHandles=new o,this._manipulatorInfos=[],this._numGrabbing=0,this._numDragging=0,this._reshapeEventState=qt.NONE,this._updatingHandles=new T,this._recreatingManipulators=!1,this._settings=new J({getTheme:()=>this.view.effectiveTheme}),this._translateGraphicTooltipInfo=null,this._translateGraphicXYTooltipInfo=null,this._translateGraphicZTooltipInfo=null,this._translateVertexTooltipInfo=null,this._translateVertexXYTooltipInfo=null,this._translateVertexZTooltipInfo=null,this._edgeOffsetTooltipInfo=null,this.outputGeometry=null,this._vertexLaserLineVisualElement=null}initialize(){const{graphic:t,view:e}=this,i=this._settings.manipulators,n=i.vertex;this._vertexManipulatorMaterial=C(a(n.color),n.renderOccluded),this._vertexManipulatorOutlineMaterial=N(a(n.outlineColor),n.renderOccluded),this._vertexManipulatorHoverOutlineMaterial=N(a(n.hoverOutlineColor),n.renderOccluded);const o=i.edge;this._edgeManipulatorMaterial=C(a(o.color),o.renderOccluded),this._edgeManipulatorOutlineMaterial=N(a(o.outlineColor),o.renderOccluded);const r=i.edgeOffset;this._edgeOffsetManipulatorMaterial=C(a(r.color),r.renderOccluded,!1),this._edgeOffsetManipulatorHoverMaterial=C(a(r.hoverColor),r.renderOccluded,!1);const s=i.selected;this._selectedManipulatorMaterial=C(a(s.color),s.renderOccluded),this._selectedManipulatorOutlineMaterial=N(a(s.outlineColor),s.renderOccluded),this._selectedManipulatorHoverOutlineMaterial=N(a(s.hoverOutlineColor),s.renderOccluded);const l=this._graphicState=new pt({graphic:t});this._tooltip=new Gt({view:e}),this.addHandles([m((()=>{const t=this._settings.manipulators;return{vertexSettings:t.vertex,edgeSettings:t.edge,edgeOffsetSettings:t.edgeOffset,selectedSettings:t.selected}}),(({vertexSettings:t,edgeSettings:e,edgeOffsetSettings:i,selectedSettings:a})=>{t.applyColor(this._vertexManipulatorMaterial),t.applyOutline(this._vertexManipulatorOutlineMaterial),t.applyHoverOutline(this._vertexManipulatorHoverOutlineMaterial),e.applyColor(this._edgeManipulatorMaterial),e.applyOutline(this._edgeManipulatorOutlineMaterial),i.applyColor(this._edgeOffsetManipulatorMaterial),i.applyHover(this._edgeOffsetManipulatorHoverMaterial),a.applyColor(this._selectedManipulatorMaterial),a.applyOutline(this._selectedManipulatorOutlineMaterial),a.applyHoverOutline(this._selectedManipulatorHoverOutlineMaterial)})),m((()=>l.displaying),(t=>{for(const e of this._manipulatorInfos)e.manipulator.available=t})),m((()=>({labels:this._segmentLabels,enabled:this._labelOptions.enabled,edgeOffsetEnabled:this.enableEdgeOffset})),(({labels:t,enabled:e,edgeOffsetEnabled:i})=>{null!=t&&(t.visible=e,t.edgeDistance=i?"far":"default")}),_),g((()=>!this._tooltipOptions.enabled),(()=>this._tooltip.clear()),_),this.view.trackGraphicState(l)])}destroy(){this._segmentLabels=p(this._segmentLabels),this._tooltip=p(this._tooltip),this._removeManipulators(),this._updatingHandles.destroy()}get inputGeometry(){return null!=this._editGeometryOperations?this._editGeometryOperations.data.geometry:null}set inputGeometry(t){this._recreateEditGeometryAndManipulators(t)}get updating(){return this._updatingHandles.updating}get manipulators(){return this.tool.manipulators}get view(){return this.tool.view}get graphic(){return this.tool.graphic}get enableZShape(){return this.tool.enableZShape}get enableZVertex(){return this.tool.enableZVertex}get enableMoveGraphic(){return this.tool.enableMoveGraphic}get enableMidpoints(){return this.tool.enableMidpoints}get enableEdgeOffset(){return this.tool.enableEdgeOffset}get _labelOptions(){return this.tool.labelOptions}get _tooltipOptions(){return this.tool.tooltipOptions}get _accentColor(){return this.view.effectiveTheme.accentColor}removeSelectedVertices(){const t=this._manipulatorInfos.filter((t=>t.manipulator.selected&&"vertex"===t.type));this._removeVertices(t)}onManipulatorSelectionChanged(){this.emit("manipulators-changed")}_removeManipulators(){this._manipulatorHandles.removeAll(),this._moveManipulation=p(this._moveManipulation),this._graphicMoveManipulation=p(this._graphicMoveManipulation),this.manipulators.removeAll(),this._manipulatorInfos=[],this._numGrabbing=0,this._numDragging=0}_createManipulators(t){if(null==this._editGeometryOperations)return;const e=j(this.graphic);for(const i of this._editGeometryOperations.data.components){const a=t?.byComponentIndex.get(i.index);for(const t of i.vertices){const i=a?.has(t.index);this._createVertexOrEdgeManipulator(t,e,i)}for(const t of i.edges)this._createVertexOrEdgeManipulator(t,e)}this._createGraphicMoveManipulation(),this._createMoveManipulation(e),this._createVisualElements()}get canRedo(){return null!=this._editGeometryOperations&&this._editGeometryOperations.canRedo}get canUndo(){return null!=this._editGeometryOperations&&this._editGeometryOperations.canUndo}redo(){if(null==this._editGeometryOperations)return null;const t=this._editGeometryOperations.redo();return null!=t&&(this.outputGeometry=this._editGeometryOperations.data.geometry,this._recreateManipulators()),t}undo(){if(null==this._editGeometryOperations)return null;this.emit("undo");const t=this._editGeometryOperations.undo();return null!=t&&(this.outputGeometry=this._editGeometryOperations.data.geometry,this._recreateManipulators()),t}_recreateManipulators(){this._recreatingManipulators||(this._recreatingManipulators=!0,this._removeManipulators(),this._tooltip.clear(),this._createManipulators(),this._recreatingManipulators=!1)}_recreateEditGeometryAndManipulators(t){const e={byComponentIndex:new Map};if(null!=t&&null!=this.inputGeometry&&H(t,this.inputGeometry))for(const a of this._manipulatorInfos)if("vertex"===a.type&&a.manipulator.selected){const{index:t,component:{index:i}}=a.handle,{byComponentIndex:n}=e,o=n.get(i)||new Set;o.add(t),n.set(i,o)}if(this._recreatingManipulators=!0,this._removeManipulators(),this._tooltip.clear(),this._editGeometryOperations=p(this._editGeometryOperations),this._segmentLabels=p(this._segmentLabels),null==t)return void(this._recreatingManipulators=!1);const i="mesh"===t.type?t.anchor:t;this._editGeometryOperations=yt.fromGeometry(i,this.view.state.viewingMode),this._createManipulators(e),this._segmentLabels=new F({context:{view:this.view,editGeometryOperations:this._editGeometryOperations,elevationInfo:j(this.graphic),labelOptions:this._labelOptions,graphic:this.graphic,graphicState:this._graphicState},visible:this._labelOptions.enabled}),this._recreatingManipulators=!1}_perGraphicManipulatorDragAction(t,e){if("end"===e.action)return e;let i=0;const a=[],n=this._manipulatorInfos.some((t=>"vertex"===t.type&&t.manipulator.selected)),o=t===Wt.SELECTED_OR_ALL&&n;for(const r of this._manipulatorInfos)"vertex"===r.type&&(r.manipulator.grabbing||o&&!r.manipulator.selected||a.push(r),i++);if(0===a.length)return e;this._moveVertices(a,e);if(a.length===i){if(this._updateEventState(qt.MOVING),this.destroyed)return e;this.emit("move",{type:"move",dx:e.screenDeltaX,dy:e.screenDeltaY,mover:this.graphic})}else{if(this._updateEventState(qt.RESHAPING),this.destroyed)return e;this.emit("reshape",{type:"reshape",mover:this.graphic})}return e}_isMultiVertexSelection(){return this._manipulatorInfos.reduce(((t,e)=>"vertex"===e.type&&e.manipulator.selected?t+1:t),0)>1}_perVertexManipulatorDragAction(t){if(this._updateEventState(qt.RESHAPING),this.destroyed)return;const{mapDeltaX:e,mapDeltaY:i,mapDeltaZ:a}=t;if(!e&&!i&&!a)return;const n=[];for(const o of this._manipulatorInfos)"vertex"===o.type&&(o.manipulator.selected&&!o.manipulator.grabbing||o===t.info)&&n.push(o);this._moveVertices(n,t,xt.ACCUMULATE_STEPS),this.emit("reshape",{type:"reshape",mover:this.graphic})}_updateEventState(t){if(t===this._reshapeEventState)return!1;switch(t){case qt.NONE:if(0!==this._numGrabbing||0!==this._numDragging)return!1;switch(this._reshapeEventState){case qt.MOVING:this.emit("move",{type:"move-stop",dx:0,dy:0,mover:this.graphic});break;case qt.RESHAPING:this.emit("reshape",{type:"reshape-stop",mover:this.graphic})}break;case qt.MOVING:switch(this._reshapeEventState){case qt.NONE:this.emit("move",{type:"move-start",dx:0,dy:0,mover:this.graphic});break;case qt.RESHAPING:this.emit("reshape",{type:"reshape-stop",mover:this.graphic}),this.destroyed||this.emit("move",{type:"move-start",dx:0,dy:0,mover:this.graphic})}break;case qt.RESHAPING:switch(this._reshapeEventState){case qt.NONE:this.emit("reshape",{type:"reshape-start",mover:this.graphic});break;case qt.MOVING:this.emit("move",{type:"move-stop",dx:0,dy:0,mover:this.graphic}),this.destroyed||this.emit("reshape",{type:"reshape-start",mover:this.graphic})}}if(this.destroyed)return!1;const e=this._reshapeEventState!==t;return this._reshapeEventState=t,e}_createGraphicMoveManipulation(){const{tool:t,view:e}=this,i=this._graphicState;if(this._graphicMoveManipulation=new at({tool:t,view:e,graphicState:i}),this.enableMoveGraphic){let t=null;this._manipulatorHandles.add(this._graphicMoveManipulation.createDragPipeline(((e,i,a)=>{i.next((t=>this._trackNumDragging(t))).next((e=>("start"===e.action&&(t=this._editGeometryOperations.createUndoGroup()),e))).next((t=>this._perGraphicManipulatorDragAction(Wt.ALL,t))).next((t=>(this._updateTranslateGraphicTooltip(tt.XY,t),t))).next((e=>{"end"===e.action&&(this._tooltip.clear(),t=h(t))})),a.next((()=>this._onDragCancel(!0,(()=>t=h(t)))))}))),this._graphicMoveManipulation.forEachManipulator((t=>this._manipulatorHandles.add(this._watchAndUpdateGrabState(t,!1))))}else this._graphicMoveManipulation.forEachManipulator((t=>{t.grabbable=!1,t.cursor=null}));this._graphicMoveManipulation.forEachManipulator((t=>this._manipulatorHandles.add(t.events.on("immediate-click",(t=>{this._manipulatorInfos.some((t=>t.manipulator.selected))?this._clearSelection():this.emit("immediate-click",{...t,graphic:this.graphic}),t.stopPropagation()})))))}_createMoveManipulation(t){const{graphic:e,tool:i,view:a}=this,n=this._graphicState;this._moveManipulation=new et({tool:i,view:a,xyAvailable:!0,xyAxisAvailable:!0,zAvailable:this.enableZShape&&B(e),snapToScene:!1,radius:et.radiusForSymbol(e.symbol)}),this._moveManipulation.forEachManipulator((t=>this.addHandles([t.events.on("immediate-click",(i=>{this._moveManipulation.zManipulation.hasManipulator(t)||this._manipulatorInfos.some((t=>t.manipulator.selected))||this.emit("immediate-click",{...i,graphic:e}),i.stopPropagation()})),this._watchAndUpdateGrabState(t,!1)])));const o=t=>e=>{this.addHandles(e.events.on("focus-changed",(({action:e})=>{"focus"===e&&this._tooltipOptions.enabled?this._updateTranslateTooltip(t):this._tooltip.clear()})))};this._moveManipulation.xyManipulation.forEachManipulator(o(tt.XY)),this._moveManipulation.xyAxisManipulation.forEachManipulator(o(tt.XY_AXIS)),this._moveManipulation.zManipulation.forEachManipulator(o(tt.Z)),this._moveManipulation.elevationInfo={mode:"absolute-height",offset:0};const r=e.geometry.spatialReference;this.addHandles([this._moveManipulation.createDragPipeline(((a,n,o,r,s)=>{const{snappingStep:l,cancelSnapping:p}=bt({predicate:t=>!!t.info,snappingManager:i.snappingManager,snappingContext:new Ot({editGeometryOperations:this._editGeometryOperations,elevationInfo:t,pointer:s,excludeFeature:e,visualizer:new z}),updatingHandles:this._updatingHandles,useZ:!1});return r=r.next((t=>(this._onDragCancel(),t))).next(p),{steps:o=o.next((t=>this._trackNumDragging(t))).next((t=>{const e=this._manipulatorInfos.filter((t=>"vertex"===t.type&&t.manipulator.selected));return t.manipulatorType===K.TRANSLATE_XY&&1===e.length?{...t,info:e[0],snapOrigin:e[0].handle.pos}:t})).next(ct(this.view,t,e)).next(...l).next(mt()).next((t=>this._perGraphicManipulatorDragAction(Wt.SELECTED_OR_ALL,t))).next((t=>(this._updateTranslateTooltip(a,t),t))),cancel:r}}),t,r,e),m((()=>n.displaying),(()=>this._updateMoveManipulationPosition()),_),n.on("changed",(()=>{this._recreatingManipulators||this._updateMoveManipulationPosition()})),m((()=>n.isDraped),(t=>{this._updateMoveManipulationPosition();const e="align-move-manipulation";t?this.addHandles(this.view.elevationProvider.on("elevation-change",(()=>this._updateMoveManipulationPosition())),e):this.removeHandles(e)}),_)])}_createVisualElements(){const{graphic:t,view:e}=this,i=Q({view:e,graphic:t,forEachManipulator:t=>{if(!this.destroyed&&!this._recreatingManipulators){this._graphicMoveManipulation.forEachManipulator(t),this._moveManipulation.forEachManipulator(t);for(const e of this._manipulatorInfos)t(e.manipulator,K.TRANSLATE_XY)}},onManipulatorsChanged:t=>this.on("manipulators-changed",t)});null!=i&&(this._outlineVisualElement=i.visualElement instanceof lt?i.visualElement:null),null!=this._outlineVisualElement&&this._manipulatorHandles.add(this._outlineVisualElement.events.on("attachment-origin-changed",(()=>{this._graphicState.isDraped||this._updateMoveManipulationPosition()}))),this._manipulatorHandles.add(i)}_createEdgeOffsetManipulator(t,e=j(this.graphic)){const i=this._settings.manipulators.edgeOffset,a=i.size/2,n=a+i.collisionPadding,o=a/n,s=o*Math.sqrt(3)/2;null==this._edgeOffsetManipulatorGeometryInside&&(this._edgeOffsetManipulatorGeometryInside=ht(this._edgeOffsetManipulatorMaterial,s,o/2,o/2,i.height,i.offset)),null==this._edgeOffsetManipulatorGeometryOutside&&(this._edgeOffsetManipulatorGeometryOutside=ht(this._edgeOffsetManipulatorMaterial,-s,o/2,o/2,i.height,-i.offset));const l=[new k(this._edgeOffsetManipulatorGeometryInside.instantiate(),vt.Unfocused),new k(this._edgeOffsetManipulatorGeometryInside.instantiate({material:this._edgeOffsetManipulatorHoverMaterial}),vt.Focused),new k(this._edgeOffsetManipulatorGeometryOutside.instantiate(),vt.Unfocused),new k(this._edgeOffsetManipulatorGeometryOutside.instantiate({material:this._edgeOffsetManipulatorHoverMaterial}),vt.Focused)],p=new U({view:this.view,renderObjects:l,elevationInfo:"on-the-ground"!==e.mode||P(this.graphic.symbol)?{mode:"absolute-height",offset:0}:e,worldOriented:!1,focusMultiplier:1,radius:n,available:!(!this.graphic.visible||!this.graphic.layer?.visible),collisionType:{type:"disc",direction:I(0,0,1)},collisionPriority:1,metadata:{deleting:!1}}),h=new U({view:this.view,worldSized:!0,worldOriented:!1,available:!(!this.graphic.visible||!this.graphic.layer?.visible),collisionPriority:-10,cursor:this.enableMoveGraphic?"move":"default",metadata:{deleting:!1}}),u={manipulator:p,handle:t,locationUpdateHandle:null,type:"edge",selectedIndex:0,edgeManipulator:h,elevationInfo:e,visibilityHandle:null};this._autoHideEdgeOffsetManipulator(u,i.minSquaredEdgeLength),this._updateEdgeOffsetManipulator(u);const c=[];for(const r of[u.handle.leftVertex,u.handle.rightVertex]){const t=this._getManipulatorInfoFromHandle(r);null!=t&&c.push(t.manipulator.events.on("location-update",(()=>this._updateEdgeOffsetManipulator(u))))}u.locationUpdateHandle=r(c),this._manipulatorHandles.add(u.locationUpdateHandle,p),this._manipulatorHandles.add([this._watchAndUpdateGrabState(p,!0),this._watchAndUpdateGrabState(h,!0)],p),this._manipulatorHandles.add(gt(p,this._createEdgeOffsetPipeline(u,e)),p),this._manipulatorHandles.add(gt(h,((t,i,a,n)=>{if("touch"===n){this._createEdgeOffsetPipeline(u,e)(t,i,a)}else if(this.enableMoveGraphic){const n=this.graphic,o=null!=n.geometry?n.geometry.spatialReference:null;i.next((t=>this._trackNumDragging(t))).next(_t(this.view,t.elevationAlignedLocation)).next(Y(this.view,t.elevationAlignedLocation,e,o,n)).next(ft()).next(mt()).next((t=>this._perGraphicManipulatorDragAction(Wt.ALL,t))).next((t=>(this._updateTranslateGraphicTooltip(tt.XY,t),t))).next((t=>{"end"===t.action&&this._tooltip.clear()})),a.next((()=>this._onDragCancel(!t.metadata.deleting)))}})),p);const m=t=>{this._manipulatorInfos.some((t=>t.manipulator.selected))?this._clearSelection():this.emit("immediate-click",{...t,graphic:this.graphic}),t.stopPropagation()};return this._manipulatorHandles.add([p.events.on("immediate-click",m),h.events.on("immediate-click",m),p.events.on("focus-changed",(({action:t})=>{const{_tooltipOptions:e,_tooltip:i}=this;"focus"===t&&e.enabled?(i.info=this._edgeOffsetTooltipInfo??=new Et({tooltipOptions:e}),i.info.distance=d,i.info.tooltipOptions=e,this._updateTooltipAreaOrTotalLength(i.info)):i.clear()}))],p),this._manipulatorInfos.push(u),this.manipulators.add(p),this.manipulators.add(h),this.emit("manipulators-changed"),u}_autoHideEdgeOffsetManipulator(t,e){const i=t.manipulator,a=t.edgeManipulator,n=()=>{t.visibilityHandle=h(t.visibilityHandle);const n=this._getManipulatorInfoFromHandle(t.handle.leftVertex),o=this._getManipulatorInfoFromHandle(t.handle.rightVertex),l=null!=n&&null!=o&&st(n.manipulator.renderLocation,o.manipulator.renderLocation,this.view.state.camera)<e;(!i.focused&&!a.focused||l)&&(i.grabbable=!l,a.grabbable=!l,t.visibilityHandle=r([i.disableDisplay(),s((()=>{i.grabbable=!0,a.grabbable=this.enableMoveGraphic}))]))};this._manipulatorHandles.add([i.events.on("focus-changed",n),a.events.on("focus-changed",n),s((()=>{h(t.visibilityHandle),a.metadata.deleting=!0,this.manipulators.remove(a)}))],i),n()}_updateEdgeOffsetManipulator(t){this._updateManipulatorPosition(t);const{coordinateHelper:e}=this._editGeometryOperations.data,i=nt(this.view,t.manipulator.elevationAlignedLocation,ot(e,t.handle,t.manipulator.elevationInfo)),a=this._getManipulatorInfoFromHandle(t.handle.leftVertex),n=this._getManipulatorInfoFromHandle(t.handle.rightVertex);if(null==a||null==n)return;const o=a.manipulator.renderLocation,r=n.manipulator.renderLocation,s=null!=i?rt(i,o,r):y;t.manipulator.modelTransform=s,t.edgeManipulator.elevationAlignedLocation=t.manipulator.elevationAlignedLocation,t.edgeManipulator.modelTransform=s;const l=x(O(Xt,o,r))/2;t.edgeManipulator.collisionType={type:"line",paths:[[[-l,0,0],[l,0,0]]]}}_createEdgeOffsetPipeline(t,e){return(i,a,n)=>{this._clearSelection();const{step:o,cleanup:r}=this._initializeEdgeOffset(t,e);a.next((t=>this._trackNumDragging(t))).next(_t(this.view,i.elevationAlignedLocation)).next(o).next(X(this.view)).next(Z(this.view,this._editGeometryOperations.data.spatialReference)).next(mt()).next(this._applyComputeEdgeOffsetDistanceStep()).next(this._applyEdgeOffsetStep(t)).next(this._showEdgeOffsetTooltip()).next((t=>{"end"===t.action&&r()})),n.next((()=>{i.metadata.deleting||(r(),this._onDragCancel())}))}}_initializeEdgeOffset(t,e){const{view:i}=this,n=this._editGeometryOperations,o=ot(n.data.coordinateHelper,t.handle,e),s=n.createUndoGroup(),p=nt(i,t.manipulator.elevationAlignedLocation,o);if(o.requiresSplitEdgeLeft){const e=this._getManipulatorInfoFromHandle(t.handle.leftVertex.leftEdge);null!=e&&this._splitEdgeManipulator(e,1)}if(o.requiresSplitEdgeRight){const e=this._getManipulatorInfoFromHandle(t.handle.rightVertex.rightEdge);null!=e&&this._splitEdgeManipulator(e,0)}const d=()=>new V({paths:[[t.handle.leftVertex.pos,t.handle.rightVertex.pos]],spatialReference:n.data.spatialReference}),u=this._settings,c=new lt({view:i,isDraped:this._graphicState.isDraped,geometry:d(),elevationInfo:t.elevationInfo,width:u.visualElements.lineGraphics.outline.width,attached:!1,isDecoration:!0});let g;const f=()=>{this._cleanEdgeOffsetCollapsedEdges(t),g=h(g)},v=this.on("undo",f);return g=r([m((()=>a(this._accentColor)),(t=>c.color=t),_),l(c),m((()=>this._graphicState.isDraped),(t=>c.isDraped=t)),this._graphicState.on("changed",(()=>c.geometry=d())),s,v]),c.attached=!0,{step:t=>null==o||null==p?(f(),null):{...t,operation:o,plane:p},cleanup:f}}_applyEdgeOffsetStep(t){return e=>{if(this.destroyed||null==e.operation)return e;this._updateEventState(qt.RESHAPING);const{mapDeltaX:i,mapDeltaY:a,mapDeltaZ:n}=e;return(i||a||n)&&(this._offsetEdge(t,e),this.emit("reshape",{type:"reshape",mover:this.graphic})),e}}_applyComputeEdgeOffsetDistanceStep(){return t=>{const{operation:e,mapEnd:i}=t;return null==e||null==i?t:("start"===t.action&&e.selectArrowFromStartPoint(i),{...t,signedDistance:e.signedDistanceToPoint(i)})}}_showEdgeOffsetTooltip(){return t=>{const{mapEnd:e,signedDistance:i,operation:a}=t,{_tooltip:n,_tooltipOptions:o}=this;return o.enabled&&null!=i?(n.info=this._edgeOffsetTooltipInfo??=new Et({tooltipOptions:o}),n.info.tooltipOptions=o,n.info.distance="end"===t.action?d:Ft(this._graphicState.isDraped,i*a.selectedArrow,e,a.plane,this._editGeometryOperations.data.coordinateHelper),this._updateTooltipAreaOrTotalLength(n.info),t):(n.clear(),t)}}_cleanEdgeOffsetCollapsedEdges(t){const e=t.handle.leftVertex.leftEdge?.leftVertex,i=t.handle.leftVertex,a=t.handle.rightVertex.rightEdge?.rightVertex,n=t.handle.rightVertex,o=this._editGeometryOperations.data.coordinateHelper,r=[];if(e&&o.distance(e.pos,i.pos)<Zt){const t=this._getManipulatorInfoFromHandle(i);null!=t&&r.push(t)}if(o.distance(i.pos,n.pos)<Zt||a&&o.distance(a.pos,n.pos)<Zt){const t=this._getManipulatorInfoFromHandle(n);null!=t&&r.push(t)}r.length&&this._removeVertices(r)}_computeVertexManipulatorSizeAndOutline(t){const e=t.size/2,i=e+t.collisionPadding;return{size:e/i,outlineSize:(e+t.outlineSize)/i}}_createVertexOrEdgeManipulator(t,e=j(this.graphic),i=!1){const{view:a}=this,n=this._settings;if("edge"===t.type){if(this.enableEdgeOffset)return this._createEdgeOffsetManipulator(t,e);if(!this.enableMidpoints)return null}if(null==this._vertexManipulatorGeometry||null==this._vertexManipulatorOutlineGeometry){const{size:t,outlineSize:e}=this._computeVertexManipulatorSizeAndOutline(n.manipulators.vertex);this._vertexManipulatorGeometry=dt(this._vertexManipulatorMaterial,t,16,16),this._vertexManipulatorOutlineGeometry=dt(this._vertexManipulatorOutlineMaterial,e,16,16)}if(null==this._edgeManipulatorGeometry||null==this._edgeManipulatorOutlineGeometry){const{size:t,outlineSize:e}=this._computeVertexManipulatorSizeAndOutline(n.manipulators.edge);this._edgeManipulatorGeometry=dt(this._edgeManipulatorMaterial,t,16,16),this._edgeManipulatorOutlineGeometry=dt(this._edgeManipulatorOutlineMaterial,e,16,16)}const{geometry:o}=this.graphic,s=o?.type,l="point"===s||"mesh"===s?[]:[new k(this._vertexManipulatorGeometry.instantiate(),Yt.Vertex|vt.Unselected),new k(this._vertexManipulatorOutlineGeometry.instantiate(),Yt.Vertex|vt.Unfocused|vt.Unselected),new k(this._vertexManipulatorOutlineGeometry.instantiate({material:this._vertexManipulatorHoverOutlineMaterial}),Yt.Vertex|vt.Focused|vt.Unselected),new k(this._vertexManipulatorGeometry.instantiate({material:this._selectedManipulatorMaterial}),vt.Selected),new k(this._vertexManipulatorOutlineGeometry.instantiate({material:this._selectedManipulatorOutlineMaterial}),vt.Selected|vt.Unfocused),new k(this._vertexManipulatorOutlineGeometry.instantiate({material:this._selectedManipulatorHoverOutlineMaterial}),vt.Selected|vt.Focused)];this.enableMidpoints&&l.push(new k(this._edgeManipulatorGeometry.instantiate({material:this._vertexManipulatorMaterial}),Yt.Edge|vt.Focused|vt.Unselected),new k(this._edgeManipulatorOutlineGeometry.instantiate({material:this._vertexManipulatorHoverOutlineMaterial}),Yt.Edge|vt.Focused|vt.Unselected),new k(this._edgeManipulatorGeometry.instantiate(),Yt.Edge|vt.Unfocused|vt.Unselected),new k(this._edgeManipulatorOutlineGeometry.instantiate(),Yt.Edge|vt.Unfocused|vt.Unselected));const p=new U({view:a,renderObjects:l,elevationInfo:e,focusMultiplier:1,touchMultiplier:1,available:!(!this.graphic.visible||!this.graphic.layer?.visible),metadata:{deleting:!1}});p.selected=i,this._setTypeSpecificManipulatorSettings(p,t,e);const d="edge"===t.type?{manipulator:p,handle:t,locationUpdateHandle:null,type:"edge",selectedIndex:0}:{manipulator:p,handle:t,type:"vertex",selectedIndex:0};if(this._manipulatorInfos.push(d),this.manipulators.add(p),this._updateManipulatorPosition(d),"edge"===d.type){const t=[];for(const e of[d.handle.leftVertex,d.handle.rightVertex]){const i=this._getManipulatorInfoFromHandle(e);null!=i&&t.push(i.manipulator.events.on("location-update",(()=>this._updateManipulatorPosition(d))))}d.locationUpdateHandle=r(t),this._manipulatorHandles.add(d.locationUpdateHandle,p)}this._manipulatorHandles.add(this._watchAndUpdateGrabState(p,!0),p);const u=gt(p,((t,i,a,n)=>{let o=null;const{snappingStep:r,cancelSnapping:s}=bt({predicate:()=>!this._isMultiVertexSelection(),snappingManager:this.tool.snappingManager,snappingContext:new Ot({editGeometryOperations:this._editGeometryOperations,elevationInfo:e,pointer:n,excludeFeature:this.graphic,visualizer:new z}),updatingHandles:this._updatingHandles,useZ:!1});a=a.next((e=>(this._onDragCancel(!t.metadata.deleting,(()=>o=h(o))),e))).next(s),i.next((t=>this._trackNumDragging(t))).next((t=>{if("start"===t.action&&(o=this._editGeometryOperations.createUndoGroup()),"edge"===d.type){const e=this._splitEdgeManipulator(d);return{...t,info:e,snapOrigin:e.handle.pos}}return{...t,info:d,snapOrigin:d.handle.pos}})).next(_t(this.view,t.elevationAlignedLocation)).next(q(this.view,this.graphic,t.elevationAlignedLocation,t.location.spatialReference,this.graphic)).next(ct(this.view,e,this.graphic)).next(...r).next(mt()).next((e=>{this._perVertexManipulatorDragAction(e),"end"===e.action&&(o=h(o)),this._updateTranslateVertexTooltip(t,tt.XY,e)}))}));return this._manipulatorHandles.add([u,p.events.on("immediate-click",(t=>this._manipulatorClickCallback(t,d))),p.events.on("select-changed",(()=>{d.selectedIndex=++this._selectedIndex,this._updateMoveManipulationPosition()})),p.events.on("focus-changed",(({action:t})=>{"focus"===t&&"edge"!==d.type?this._updateTranslateVertexTooltip(p,tt.XY):this._tooltip.clear()}))],p),this.emit("manipulators-changed"),d}_trackNumDragging(t){switch(t.action){case"start":this._numDragging++;break;case"end":this._numDragging--}return t}_onDragCancel(t=!0,e){switch(this._numDragging--,t&&(this.undo(),this.outputGeometry=null!=this._editGeometryOperations?this._editGeometryOperations.data.geometry:null),null!=this.tool.snappingManager&&this.tool.snappingManager.doneSnapping(),this._tooltip.clear(),this._reshapeEventState){case qt.NONE:break;case qt.MOVING:this.emit("move",{type:"move",dx:0,dy:0,mover:this.graphic});break;case qt.RESHAPING:this.emit("reshape",{type:"reshape",mover:this.graphic})}e&&e(),this.destroyed||this._updateEventState(qt.NONE)}_setTypeSpecificManipulatorSettings(t,e,i){const{graphic:a}=this,n=this._settings;switch(e.type){case"vertex":{t.state=Yt.Vertex,t.selectable=!0,t.cursor="move",t.collisionPriority=2;const{size:e,collisionPadding:o}=n.manipulators.vertex;t.radius=e/2+o,t.elevationInfo=i;const{geometry:r}=a,s=r?.type;t.interactive=null!=s&&"point"!==s&&"mesh"!==s;break}case"edge":{t.state=Yt.Edge,t.selectable=!1,t.cursor="copy",t.collisionPriority=-1;const{size:e,collisionPadding:o}=n.manipulators.edge;t.radius=e/2+o,t.elevationInfo="on-the-ground"!==i.mode||P(a.symbol)?{mode:"absolute-height",offset:0}:i;break}}}_watchAndUpdateGrabState(t,e){return t.events.on("grab-changed",(i=>this._onGrabStateChanged(t,e,i.action,i.pointerType)))}_onGrabStateChanged(t,e,i,a="mouse"){if(!this._recreatingManipulators){if("start"===i)e&&this._updateSelection(t),this._numGrabbing++;else if(this._numGrabbing--,this._updateEventState(qt.NONE),this.destroyed)return;this._moveManipulation.interactive=!this._numGrabbing,("touch"!==a||this.enableEdgeOffset)&&(this._manipulatorInfos.forEach((t=>{const{manipulator:e}=t,{geometry:i}=this.graphic,a=i?.type;e.interactive=e.grabbing||!this._numGrabbing&&null!=a&&"point"!==a&&"mesh"!==a,"edgeManipulator"in t&&(t.edgeManipulator.interactive=t.edgeManipulator.grabbing||!this._numGrabbing)})),this._graphicMoveManipulation.forEachManipulator((t=>{t.interactive=t.grabbing||!this._numGrabbing})))}}_clearSelection(){for(const t of this._manipulatorInfos)t.manipulator.grabbing||(t.manipulator.selected=!1)}_updateSelection(t){t.grabbing&&!t.selected&&t.selectable&&(this._clearSelection(),t.selected=!0,this.emit("manipulators-changed"))}_removeManipulator(t){null!=t&&(t.manipulator.metadata.deleting=!0,this.manipulators.remove(t.manipulator),this._manipulatorHandles.remove(t.manipulator),i(this._manipulatorInfos,t),this.emit("manipulators-changed"))}_getManipulatorInfoFromHandle(t){if(t)for(const e of this._manipulatorInfos)if(t===e.handle)return e;return null}_updateManipulatorPosition(t){if(null==t)return;const e=this._editGeometryOperations;if("vertex"===t.type)t.manipulator.location=e.data.coordinateHelper.vectorToDehydratedPoint(t.handle.pos,zt),t.manipulator.grabbing&&null!=this._vertexLaserLineVisualElement&&(this._vertexLaserLineVisualElement.visualElement.intersectsWorldUpAtLocation=t.manipulator.renderLocation);else if("edge"===t.type){const i=this._getManipulatorInfoFromHandle(t.handle.leftVertex),a=this._getManipulatorInfoFromHandle(t.handle.rightVertex);if(null==i||null==a)return;const n=i.manipulator,o=a.manipulator;if(null!=t.manipulator.elevationInfo&&"on-the-ground"===t.manipulator.elevationInfo.mode){const i=n.location,a=o.location,r=.5,s=i.x+r*(a.x-i.x),l=i.y+r*(a.y-i.y),p=i.hasZ&&a.hasZ?0:void 0;t.manipulator.location=L(s,l,p,e.data.spatialReference)}else b(Xt,n.renderLocation,o.renderLocation,.5),t.manipulator.renderLocation=Xt}}_splitEdgeManipulator(t,e=.5){const i=this._editGeometryOperations,a=i.splitEdge(t.handle,e).createdVertex;t.locationUpdateHandle=h(t.locationUpdateHandle);const n=j(this.graphic);let o;this.enableEdgeOffset?(this._removeManipulator(t),o=this._createVertexOrEdgeManipulator(a)):(o=t,o.handle=a,o.type="vertex",this._setTypeSpecificManipulatorSettings(t.manipulator,t.handle,n)),a.leftEdge&&this._createVertexOrEdgeManipulator(a.leftEdge),a.rightEdge&&this._createVertexOrEdgeManipulator(a.rightEdge),this.outputGeometry=i.data.geometry,this._updateManipulatorPosition(o),this.enableEdgeOffset||this._updateTranslateVertexTooltip(o.manipulator,tt.XY),this._updateSelection(t.manipulator);const r=this._updateEventState(qt.RESHAPING),s=i.data.coordinateHelper.vectorToArray(o.handle.pos),l=i.data.components.indexOf(a.component);return this.emit("vertex-add",{type:"vertex-add",vertices:[{coordinates:s,componentIndex:l,vertexIndex:a.index}],added:s}),r&&this._updateEventState(qt.NONE),o}_updateMoveManipulationPosition(){const t=E(Xt,0,0,0);let e=0,i=!1,a=null,n=null;for(const o of this._manipulatorInfos)"vertex"===o.type&&(o.manipulator.selected?(e++,G(t,t,o.manipulator.renderLocation),null==a||o.selectedIndex>a.selectedIndex?(n=a,a=o):(null==n||o.selectedIndex>n.selectedIndex)&&(n=o)):i=!0);if(0===e){const t=this._graphicState.displaying&&this.enableMoveGraphic;this._moveManipulation.xyManipulation.available=t,this._moveManipulation.xyAxisManipulation.available=t,this._moveManipulation.xyAxisManipulation.orthogonalAvailable=t,this._moveManipulation.zManipulation.available=t&&this.enableZShape&&B(this.graphic),this._moveManipulation.angle=W(this.graphic.geometry),this._moveManipulation.radius=et.radiusForSymbol(this.graphic.symbol)}else{const t=this._graphicState.displaying;this._moveManipulation.xyManipulation.available=t,this._moveManipulation.xyAxisManipulation.available=t,this._moveManipulation.zManipulation.available=t&&this.enableZVertex&&B(this.graphic),this._moveManipulation.xyAxisManipulation.orthogonalAvailable=t&&1!==e;let i=0;if(null!=a){const t=a.handle.pos,e=null!=n?n.handle.pos:a.handle.leftEdge&&a.handle.leftEdge.leftVertex?a.handle.leftEdge.leftVertex.pos:null,o=null==n&&a.handle.rightEdge&&a.handle.rightEdge.rightVertex?a.handle.rightEdge.rightVertex.pos:null;e&&o?this._moveManipulation.xyAxisManipulation.available=!1:e?i=kt(e,t):o&&(i=kt(t,o))}this._moveManipulation.angle=i,this._moveManipulation.radius=$}0!==e&&i?(S(t,t,1/e),zt.spatialReference=this._editGeometryOperations.data.spatialReference,zt.hasZ=!0,this.view.renderCoordsHelper.fromRenderCoords(t,zt),this._moveManipulation.elevationAlignedLocation=zt):null==this._outlineVisualElement||this._graphicState.isDraped||null==this._outlineVisualElement.attachmentOrigin?R(this.view,this._moveManipulation,this.graphic):this._moveManipulation.elevationAlignedLocation=this._outlineVisualElement.attachmentOrigin}_removeVertices(t){const e=new Array,i=this._editGeometryOperations;for(const a of t)if("vertex"===a.type&&i.canRemoveVertex(a.handle.component)){e.push(a.handle),this._removeManipulator(a),this._removeManipulator(this._getManipulatorInfoFromHandle(a.handle.leftEdge)),this._removeManipulator(this._getManipulatorInfoFromHandle(a.handle.rightEdge));const t=i.removeVertices([a.handle]),n=t.removedVertices?.[0].createdEdge;n&&this._createVertexOrEdgeManipulator(n)}if(e.length>0){const t=e.map((t=>{const e=i.data.components.indexOf(t.component);return{coordinates:i.data.coordinateHelper.vectorToArray(t.pos),componentIndex:e,vertexIndex:t.index}}));this.outputGeometry=i.data.geometry;const a=this._updateEventState(qt.RESHAPING);if(this.destroyed)return;if(this.emit("vertex-remove",{type:"vertex-remove",removed:t.map((t=>t.coordinates)),vertices:t}),this.destroyed)return;if(a&&(this._updateEventState(qt.NONE),this.destroyed))return;this._updateMoveManipulationPosition()}}_moveVertices(t,e,i=("start"===e.action?xt.NEW_STEP:xt.ACCUMULATE_STEPS)){const a=this._editGeometryOperations;a.moveVertices(t.map((t=>t.handle)),e.mapDeltaX,e.mapDeltaY,e.mapDeltaZ,i),this.outputGeometry=a.data.geometry;for(const n of t)this._updateManipulatorPosition(n)}_offsetEdge(t,e){if(null==e.operation||null==e.signedDistance)return;const i=this._editGeometryOperations,a=e.operation.clone();a.distance=e.signedDistance,i.updateVertices([t.handle.leftVertex,t.handle.rightVertex],a),this.outputGeometry=i.data.geometry,this._updateManipulatorPosition(this._getManipulatorInfoFromHandle(t.handle.leftVertex)),this._updateManipulatorPosition(this._getManipulatorInfoFromHandle(t.handle.rightVertex))}_manipulatorClickCallback(t,e){t.shiftKey||this._clearSelection(),"vertex"===e.type&&(e.manipulator.selected=!e.manipulator.selected,t.button===ut.Right&&this._removeVertices([e])),"edge"===e.type&&t.button===ut.Left&&this._splitEdgeManipulator(e),t.stopPropagation()}_updateTranslateTooltip(t,e){const i=this._manipulatorInfos.filter((t=>"vertex"===t.type&&t.manipulator.selected));1===i.length?this._updateTranslateVertexTooltip(i[0].manipulator,t,e):this._updateTranslateGraphicTooltip(t,e)}_updateTranslateGraphicTooltip(t,e){const{_tooltipOptions:i,_tooltip:a}=this;if(!i.enabled)return;const n=this._graphicState.isDraped?"on-the-ground":"absolute-height";switch(t){case tt.XY:a.info=this._translateGraphicTooltipInfo??=new wt({tooltipOptions:i}),this._updateTranslateTooltipDistance(a.info,e,((t,e)=>Lt(t,e,n)));break;case tt.XY_AXIS:a.info=this._translateGraphicXYTooltipInfo??=new It({tooltipOptions:i}),this._updateTranslateTooltipDistance(a.info,e,((t,i)=>{const a=Lt(t,i,n);return u(a,it(e))}));break;case tt.Z:a.info=this._translateGraphicZTooltipInfo??=new St({tooltipOptions:i}),this._updateTranslateTooltipDistance(a.info,e,Pt)}a.info.tooltipOptions=i}_updateTranslateVertexTooltip(t,e,i){const{_tooltipOptions:a,_tooltip:n}=this;if(!a.enabled)return;const o=this._graphicState.isDraped?"on-the-ground":"absolute-height";switch(e){case tt.XY:n.info=this._translateVertexTooltipInfo??=new Ht({tooltipOptions:a}),this._updateTranslateTooltipDistance(n.info,i,((t,e)=>Lt(t,e,o))),this._updateTooltipAreaOrTotalLength(n.info);break;case tt.XY_AXIS:n.info=this._translateVertexXYTooltipInfo??=new Vt({tooltipOptions:a}),this._updateTranslateTooltipDistance(n.info,i,((t,e)=>{const a=Lt(t,e,o);return u(a,it(i))})),this._updateTooltipAreaOrTotalLength(n.info);break;case tt.Z:n.info=this._translateVertexZTooltipInfo??=new Tt({tooltipOptions:a}),this._updateTranslateTooltipDistance(n.info,i,Pt)}const r=Ut(t.elevationAlignedLocation);null!=r&&(n.info.elevation=At({actual:r})),n.info.tooltipOptions=a}_updateTranslateTooltipDistance(t,e,i){if(null!=e&&"end"!==e.action){const{mapStart:a,mapEnd:n}=e,o=i(a,n);t.distance=null!=o?o:d}else t.distance=d}_updateTooltipAreaOrTotalLength(t){const{geometry:e}=this.graphic;if(null==e)return t.area=null,void(t.totalLength=null);const i=this._graphicState.isDraped?"on-the-ground":"absolute-height";t.area="polygon"===e.type?Dt(e,i):null,t.totalLength="polyline"===e.type?jt(e,i):null}get test(){return{segmentLabels:this._segmentLabels,tooltip:this._tooltip}}};function kt(t,e){return Math.atan2(e[1]-t[1],e[0]-t[0])+Math.PI/2}function Ft(t,e,i,a,n){if(t){const t=n.toXYZ(n.pointToVector(i)),o=A(a,t,D.get()),r=Ct(o,t,n.spatialReference);if(null!=r)return c(r.value*Math.sign(e),r.unit)}return c(e*f(i.spatialReference),"meters")}t([v()],Rt.prototype,"_editGeometryOperations",void 0),t([v()],Rt.prototype,"_segmentLabels",void 0),t([v({constructOnly:!0})],Rt.prototype,"tool",void 0),t([v()],Rt.prototype,"_tooltip",void 0),t([v()],Rt.prototype,"inputGeometry",null),t([v()],Rt.prototype,"outputGeometry",void 0),t([v({readOnly:!0})],Rt.prototype,"updating",null),t([v()],Rt.prototype,"manipulators",null),t([v()],Rt.prototype,"view",null),t([v()],Rt.prototype,"graphic",null),t([v()],Rt.prototype,"enableZShape",null),t([v()],Rt.prototype,"enableZVertex",null),t([v()],Rt.prototype,"enableMoveGraphic",null),t([v()],Rt.prototype,"enableMidpoints",null),t([v()],Rt.prototype,"enableEdgeOffset",null),t([v()],Rt.prototype,"_labelOptions",null),t([v()],Rt.prototype,"_tooltipOptions",null),t([v()],Rt.prototype,"_accentColor",null),Rt=t([M("esri.views.3d.interactive.editingTools.reshapeGraphic.ReshapeOperation")],Rt);const zt=L(0,0,void 0,Nt.WGS84),Xt=w(),Zt=1e-6;var Yt,qt,Wt;!function(t){t.Vertex=Mt.Custom1,t.Edge=Mt.Custom2}(Yt||(Yt={})),function(t){t[t.NONE=0]="NONE",t[t.MOVING=1]="MOVING",t[t.RESHAPING=2]="RESHAPING"}(qt||(qt={})),function(t){t[t.ALL=0]="ALL",t[t.SELECTED_OR_ALL=1]="SELECTED_OR_ALL"}(Wt||(Wt={}));export{Rt as ReshapeOperation};
|
|
5
|
+
import{_ as t}from"../../../../../chunks/tslib.es6.js";import"../../../../../geometry.js";import e from"../../../../../core/Accessor.js";import{removeUnordered as i}from"../../../../../core/arrayUtils.js";import{unitRGBAFromColor as a}from"../../../../../core/colorUtils.js";import"../../../../../core/has.js";import n from"../../../../../core/Evented.js";import o from"../../../../../core/Handles.js";import{handlesGroup as s,makeHandle as r,destroyHandle as l}from"../../../../../core/handleUtils.js";import{destroyMaybe as p,removeMaybe as h}from"../../../../../core/maybe.js";import{zeroMeters as d,scale as u,createLength as c}from"../../../../../core/quantityUtils.js";import{watch as m,initial as g}from"../../../../../core/reactiveUtils.js";import{getMetersPerUnitForSR as _}from"../../../../../core/unitUtils.js";import{property as f}from"../../../../../core/accessorSupport/decorators/property.js";import"../../../../../core/accessorSupport/ensureType.js";import{subclass as v}from"../../../../../core/accessorSupport/decorators/subclass.js";import{IDENTITY as M}from"../../../../../core/libs/gl-matrix-2/factories/mat4f64.js";import{l as y,f as x,o as O,s as b,g as E,i as G}from"../../../../../chunks/vec32.js";import{fromValues as S,create as I}from"../../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{UpdatingHandles as T}from"../../../../../core/support/UpdatingHandles.js";import w from"../../../../../geometry/Polyline.js";import{hasCompatibleTopology as V}from"../../../../../geometry/support/coordsUtils.js";import{projectPoint as H}from"../../../../../geometry/support/plane.js";import{sv3d as A}from"../../../../../geometry/support/vectorStacks.js";import{makeDehydratedPoint as D}from"../../../../../layers/graphics/dehydratedPoint.js";import{getGraphicEffectiveElevationInfo as L}from"../../../../../support/elevationInfoUtils.js";import{isVolumetricSymbol as j}from"../../../../../symbols/support/utils.js";import{Manipulator3D as P}from"../../Manipulator3D.js";import{createManipulatorMaterial as U,createManipulatorOutlineMaterial as C,placeAtGraphic as N}from"../../manipulatorUtils.js";import{RenderObject as R}from"../../RenderObject.js";import{SegmentLabels3D as k}from"../../SegmentLabels3D.js";import{SnappingVisualizer3D as F}from"../../SnappingVisualizer3D.js";import{screenToRenderPlaneFromEvent as z,convertToMapCoordinates as X,screenToMapXYAtLocation as Z,screenToMapXYForGraphicAtLocation as Y}from"../dragEventPipeline3D.js";import{orientation as q}from"../geometryUtils.js";import{ManipulatorType as W}from"../ManipulatorType.js";import{canMoveZ as K}from"../manipulatorUtils.js";import{Settings as B}from"../settings.js";import{createVisualElements as J}from"../visualElementUtils.js";import{discRadiusSmall as Q}from"../manipulations/config.js";import{ManipulationType as $,MoveManipulation as tt}from"../manipulations/MoveManipulation.js";import{axisConstrainedDragSign as et}from"../manipulations/moveUtils.js";import{MoveXYGraphicManipulation as it}from"../manipulations/MoveXYGraphicManipulation.js";import{createEdgeOffsetIntersectionPlane as at,createEdgeOffsetOperation as nt,edgeOffsetRotationMatrix as ot,screenEdgeLengthSquared as st}from"./edgeOffsetUtils.js";import{OutlineVisualElement as rt}from"../../visualElements/OutlineVisualElement.js";import{GraphicState as lt}from"../../../layers/graphics/GraphicState.js";import{createExtrudedTriangle as pt,createSphereGeometry as ht}from"../../../webgl-engine/lib/GeometryUtil.js";import{MouseButton as dt}from"../../../../input/IViewEvents.js";import{sceneSnappingAtLocation as ut,addMapDelta as ct,createManipulatorDragEventPipeline as mt,dragAtLocation as gt,addScreenDelta as _t}from"../../../../interactive/dragEventPipeline.js";import{ManipulatorStateFlags as ft,ManipulatorStateCustomFlags as vt}from"../../../../interactive/interfaces.js";import{EditGeometryOperations as Mt}from"../../../../interactive/editGeometry/EditGeometryOperations.js";import{AccumulationBehaviour as yt}from"../../../../interactive/editGeometry/interfaces.js";import{SnappingContext as xt}from"../../../../interactive/snapping/SnappingContext.js";import{createSnapDragEventPipelineStep as Ot}from"../../../../interactive/snapping/SnappingDragPipelineStep.js";import{ReshapeEdgeOffsetTooltipInfo as bt}from"../../../../interactive/tooltip/ReshapeTooltipInfos.js";import{Tooltip as Et}from"../../../../interactive/tooltip/Tooltip.js";import{TranslateGraphicZTooltipInfo as Gt,TranslateGraphicXYTooltipInfo as St,TranslateGraphicTooltipInfo as It,TranslateVertexZTooltipInfo as Tt,TranslateVertexXYTooltipInfo as wt,TranslateVertexTooltipInfo as Vt}from"../../../../interactive/tooltip/TranslateTooltipInfos.js";import{makeElevationField as Ht}from"../../../../interactive/tooltip/fields/fields.js";import{autoAreaByElevationMode as At}from"../../../../support/automaticAreaMeasurementUtils.js";import{autoHorizontalDistanceByElevationModeBetweenPoints as Dt,autoLengthByElevationMode as Lt}from"../../../../support/automaticLengthMeasurementUtils.js";import{verticalSignedDistanceBetweenPoints as jt,elevationOfPoint as Pt}from"../../../../support/euclideanLengthMeasurementUtils.js";import{geodesicDistance as Ut}from"../../../../support/geodesicLengthMeasurementUtils.js";import Ct from"../../../../../geometry/SpatialReference.js";let Nt=class extends(n.EventedMixin(e)){constructor(t){super(t),this._selectedIndex=0,this._manipulatorHandles=new o,this._manipulatorInfos=[],this._numGrabbing=0,this._numDragging=0,this._reshapeEventState=Yt.NONE,this._updatingHandles=new T,this._recreatingManipulators=!1,this._settings=new B({getTheme:()=>this.view.effectiveTheme}),this._latestTooltipInfo=null,this._translateGraphicTooltipInfo=null,this._translateGraphicXYTooltipInfo=null,this._translateGraphicZTooltipInfo=null,this._translateVertexTooltipInfo=null,this._translateVertexXYTooltipInfo=null,this._translateVertexZTooltipInfo=null,this._edgeOffsetTooltipInfo=null,this.outputGeometry=null,this._vertexLaserLineVisualElement=null}initialize(){const{graphic:t,view:e}=this,i=this._settings.manipulators,n=i.vertex;this._vertexManipulatorMaterial=U(a(n.color),n.renderOccluded),this._vertexManipulatorOutlineMaterial=C(a(n.outlineColor),n.renderOccluded),this._vertexManipulatorHoverOutlineMaterial=C(a(n.hoverOutlineColor),n.renderOccluded);const o=i.edge;this._edgeManipulatorMaterial=U(a(o.color),o.renderOccluded),this._edgeManipulatorOutlineMaterial=C(a(o.outlineColor),o.renderOccluded);const s=i.edgeOffset;this._edgeOffsetManipulatorMaterial=U(a(s.color),s.renderOccluded,!1),this._edgeOffsetManipulatorHoverMaterial=U(a(s.hoverColor),s.renderOccluded,!1);const r=i.selected;this._selectedManipulatorMaterial=U(a(r.color),r.renderOccluded),this._selectedManipulatorOutlineMaterial=C(a(r.outlineColor),r.renderOccluded),this._selectedManipulatorHoverOutlineMaterial=C(a(r.hoverOutlineColor),r.renderOccluded);const l=this._graphicState=new lt({graphic:t});this._tooltip=new Et({view:e}),this.addHandles([m((()=>{const t=this._settings.manipulators;return{vertexSettings:t.vertex,edgeSettings:t.edge,edgeOffsetSettings:t.edgeOffset,selectedSettings:t.selected}}),(({vertexSettings:t,edgeSettings:e,edgeOffsetSettings:i,selectedSettings:a})=>{t.applyColor(this._vertexManipulatorMaterial),t.applyOutline(this._vertexManipulatorOutlineMaterial),t.applyHoverOutline(this._vertexManipulatorHoverOutlineMaterial),e.applyColor(this._edgeManipulatorMaterial),e.applyOutline(this._edgeManipulatorOutlineMaterial),i.applyColor(this._edgeOffsetManipulatorMaterial),i.applyHover(this._edgeOffsetManipulatorHoverMaterial),a.applyColor(this._selectedManipulatorMaterial),a.applyOutline(this._selectedManipulatorOutlineMaterial),a.applyHoverOutline(this._selectedManipulatorHoverOutlineMaterial)})),m((()=>l.displaying),(t=>{for(const e of this._manipulatorInfos)e.manipulator.available=t})),m((()=>({labels:this._segmentLabels,enabled:this._labelOptions.enabled,edgeOffsetEnabled:this.enableEdgeOffset})),(({labels:t,enabled:e,edgeOffsetEnabled:i})=>{null!=t&&(t.visible=e,t.edgeDistance=i?"far":"default")}),g),m((()=>this._tooltipOptions.enabled),(t=>{this._tooltip.info=t?this._latestTooltipInfo:null}),g),this.view.trackGraphicState(l)])}destroy(){this._segmentLabels=p(this._segmentLabels),this._tooltip=p(this._tooltip),this._removeManipulators(),this._updatingHandles.destroy()}get inputGeometry(){return null!=this._editGeometryOperations?this._editGeometryOperations.data.geometry:null}set inputGeometry(t){this._recreateEditGeometryAndManipulators(t)}get updating(){return this._updatingHandles.updating}get manipulators(){return this.tool.manipulators}get view(){return this.tool.view}get graphic(){return this.tool.graphic}get enableZShape(){return this.tool.enableZShape}get enableZVertex(){return this.tool.enableZVertex}get enableMoveGraphic(){return this.tool.enableMoveGraphic}get enableMidpoints(){return this.tool.enableMidpoints}get enableEdgeOffset(){return this.tool.enableEdgeOffset}get _labelOptions(){return this.tool.labelOptions}get _tooltipOptions(){return this.tool.tooltipOptions}get _accentColor(){return this.view.effectiveTheme.accentColor}removeSelectedVertices(){const t=this._manipulatorInfos.filter((t=>t.manipulator.selected&&"vertex"===t.type));this._removeVertices(t)}onManipulatorSelectionChanged(){this.emit("manipulators-changed")}_removeManipulators(){this._manipulatorHandles.removeAll(),this._moveManipulation=p(this._moveManipulation),this._graphicMoveManipulation=p(this._graphicMoveManipulation),this.manipulators.removeAll(),this._manipulatorInfos=[],this._numGrabbing=0,this._numDragging=0}_createManipulators(t){if(null==this._editGeometryOperations)return;const e=L(this.graphic);for(const i of this._editGeometryOperations.data.components){const a=t?.byComponentIndex.get(i.index);for(const t of i.vertices){const i=a?.has(t.index);this._createVertexOrEdgeManipulator(t,e,i)}for(const t of i.edges)this._createVertexOrEdgeManipulator(t,e)}this._createGraphicMoveManipulation(),this._createMoveManipulation(e),this._createVisualElements()}get canRedo(){return null!=this._editGeometryOperations&&this._editGeometryOperations.canRedo}get canUndo(){return null!=this._editGeometryOperations&&this._editGeometryOperations.canUndo}redo(){if(null==this._editGeometryOperations)return null;const t=this._editGeometryOperations.redo();return null!=t&&(this.outputGeometry=this._editGeometryOperations.data.geometry,this._recreateManipulators()),t}undo(){if(null==this._editGeometryOperations)return null;this.emit("undo");const t=this._editGeometryOperations.undo();return null!=t&&(this.outputGeometry=this._editGeometryOperations.data.geometry,this._recreateManipulators()),t}_recreateManipulators(){this._recreatingManipulators||(this._recreatingManipulators=!0,this._removeManipulators(),this._hideTooltip(),this._createManipulators(),this._recreatingManipulators=!1)}_recreateEditGeometryAndManipulators(t){const e={byComponentIndex:new Map};if(null!=t&&null!=this.inputGeometry&&V(t,this.inputGeometry))for(const a of this._manipulatorInfos)if("vertex"===a.type&&a.manipulator.selected){const{index:t,component:{index:i}}=a.handle,{byComponentIndex:n}=e,o=n.get(i)||new Set;o.add(t),n.set(i,o)}if(this._recreatingManipulators=!0,this._removeManipulators(),this._hideTooltip(),this._editGeometryOperations=p(this._editGeometryOperations),this._segmentLabels=p(this._segmentLabels),null==t)return void(this._recreatingManipulators=!1);const i="mesh"===t.type?t.anchor:t;this._editGeometryOperations=Mt.fromGeometry(i,this.view.state.viewingMode),this._createManipulators(e),this._segmentLabels=new k({context:{view:this.view,editGeometryOperations:this._editGeometryOperations,elevationInfo:L(this.graphic),labelOptions:this._labelOptions,graphic:this.graphic,graphicState:this._graphicState},visible:this._labelOptions.enabled}),this._recreatingManipulators=!1}_perGraphicManipulatorDragAction(t,e){if("end"===e.action)return e;let i=0;const a=[],n=this._manipulatorInfos.some((t=>"vertex"===t.type&&t.manipulator.selected)),o=t===qt.SELECTED_OR_ALL&&n;for(const s of this._manipulatorInfos)"vertex"===s.type&&(s.manipulator.grabbing||o&&!s.manipulator.selected||a.push(s),i++);if(0===a.length)return e;this._moveVertices(a,e);if(a.length===i){if(this._updateEventState(Yt.MOVING),this.destroyed)return e;this.emit("move",{type:"move",dx:e.screenDeltaX,dy:e.screenDeltaY,mover:this.graphic})}else{if(this._updateEventState(Yt.RESHAPING),this.destroyed)return e;this.emit("reshape",{type:"reshape",mover:this.graphic})}return e}_isMultiVertexSelection(){return this._manipulatorInfos.reduce(((t,e)=>"vertex"===e.type&&e.manipulator.selected?t+1:t),0)>1}_perVertexManipulatorDragAction(t){if(this._updateEventState(Yt.RESHAPING),this.destroyed)return;const{mapDeltaX:e,mapDeltaY:i,mapDeltaZ:a}=t;if(!e&&!i&&!a)return;const n=[];for(const o of this._manipulatorInfos)"vertex"===o.type&&(o.manipulator.selected&&!o.manipulator.grabbing||o===t.info)&&n.push(o);this._moveVertices(n,t,yt.ACCUMULATE_STEPS),this.emit("reshape",{type:"reshape",mover:this.graphic})}_updateEventState(t){if(t===this._reshapeEventState)return!1;switch(t){case Yt.NONE:if(0!==this._numGrabbing||0!==this._numDragging)return!1;switch(this._reshapeEventState){case Yt.MOVING:this.emit("move",{type:"move-stop",dx:0,dy:0,mover:this.graphic});break;case Yt.RESHAPING:this.emit("reshape",{type:"reshape-stop",mover:this.graphic})}break;case Yt.MOVING:switch(this._reshapeEventState){case Yt.NONE:this.emit("move",{type:"move-start",dx:0,dy:0,mover:this.graphic});break;case Yt.RESHAPING:this.emit("reshape",{type:"reshape-stop",mover:this.graphic}),this.destroyed||this.emit("move",{type:"move-start",dx:0,dy:0,mover:this.graphic})}break;case Yt.RESHAPING:switch(this._reshapeEventState){case Yt.NONE:this.emit("reshape",{type:"reshape-start",mover:this.graphic});break;case Yt.MOVING:this.emit("move",{type:"move-stop",dx:0,dy:0,mover:this.graphic}),this.destroyed||this.emit("reshape",{type:"reshape-start",mover:this.graphic})}}if(this.destroyed)return!1;const e=this._reshapeEventState!==t;return this._reshapeEventState=t,e}_createGraphicMoveManipulation(){const{tool:t,view:e}=this,i=this._graphicState;if(this._graphicMoveManipulation=new it({tool:t,view:e,graphicState:i}),this.enableMoveGraphic){let t=null;this._manipulatorHandles.add(this._graphicMoveManipulation.createDragPipeline(((e,i,a)=>{i.next((t=>this._trackNumDragging(t))).next((e=>("start"===e.action&&(t=this._editGeometryOperations.createUndoGroup()),e))).next((t=>this._perGraphicManipulatorDragAction(qt.ALL,t))).next((t=>(this._updateTranslateGraphicTooltip($.XY,t),t))).next((e=>{"end"===e.action&&(this._hideTooltip(),t=h(t))})),a.next((()=>this._onDragCancel(!0,(()=>t=h(t)))))}))),this._graphicMoveManipulation.forEachManipulator((t=>this._manipulatorHandles.add(this._watchAndUpdateGrabState(t,!1))))}else this._graphicMoveManipulation.forEachManipulator((t=>{t.grabbable=!1,t.cursor=null}));this._graphicMoveManipulation.forEachManipulator((t=>this._manipulatorHandles.add(t.events.on("immediate-click",(t=>{this._manipulatorInfos.some((t=>t.manipulator.selected))?this._clearSelection():this.emit("immediate-click",{...t,graphic:this.graphic}),t.stopPropagation()})))))}_createMoveManipulation(t){const{graphic:e,tool:i,view:a}=this,n=this._graphicState;this._moveManipulation=new tt({tool:i,view:a,xyAvailable:!0,xyAxisAvailable:!0,zAvailable:this.enableZShape&&K(e),snapToScene:!1,radius:tt.radiusForSymbol(e.symbol)}),this._moveManipulation.forEachManipulator((t=>this.addHandles([t.events.on("immediate-click",(i=>{this._moveManipulation.zManipulation.hasManipulator(t)||this._manipulatorInfos.some((t=>t.manipulator.selected))||this.emit("immediate-click",{...i,graphic:e}),i.stopPropagation()})),this._watchAndUpdateGrabState(t,!1)])));const o=t=>e=>{this.addHandles(e.events.on("focus-changed",(({action:e})=>{"focus"===e?this._updateTranslateTooltip(t):this._hideTooltip()})))};this._moveManipulation.xyManipulation.forEachManipulator(o($.XY)),this._moveManipulation.xyAxisManipulation.forEachManipulator(o($.XY_AXIS)),this._moveManipulation.zManipulation.forEachManipulator(o($.Z)),this._moveManipulation.elevationInfo={mode:"absolute-height",offset:0};const s=e.geometry.spatialReference;this.addHandles([this._moveManipulation.createDragPipeline(((a,n,o,s,r)=>{const{snappingStep:l,cancelSnapping:p}=Ot({predicate:t=>!!t.info,snappingManager:i.snappingManager,snappingContext:new xt({editGeometryOperations:this._editGeometryOperations,elevationInfo:t,pointer:r,excludeFeature:e,visualizer:new F}),updatingHandles:this._updatingHandles,useZ:!1});return s=s.next((t=>(this._onDragCancel(),t))).next(p),{steps:o=o.next((t=>this._trackNumDragging(t))).next((t=>{const e=this._manipulatorInfos.filter((t=>"vertex"===t.type&&t.manipulator.selected));return t.manipulatorType===W.TRANSLATE_XY&&1===e.length?{...t,info:e[0],snapOrigin:e[0].handle.pos}:t})).next(ut(this.view,t,e)).next(...l).next(ct()).next((t=>this._perGraphicManipulatorDragAction(qt.SELECTED_OR_ALL,t))).next((t=>(this._updateTranslateTooltip(a,t),t))),cancel:s}}),t,s,e),m((()=>n.displaying),(()=>this._updateMoveManipulationPosition()),g),n.on("changed",(()=>{this._recreatingManipulators||this._updateMoveManipulationPosition()})),m((()=>n.isDraped),(t=>{this._updateMoveManipulationPosition();const e="align-move-manipulation";t?this.addHandles(this.view.elevationProvider.on("elevation-change",(()=>this._updateMoveManipulationPosition())),e):this.removeHandles(e)}),g)])}_createVisualElements(){const{graphic:t,view:e}=this,i=J({view:e,graphic:t,forEachManipulator:t=>{if(!this.destroyed&&!this._recreatingManipulators){this._graphicMoveManipulation.forEachManipulator(t),this._moveManipulation.forEachManipulator(t);for(const e of this._manipulatorInfos)t(e.manipulator,W.TRANSLATE_XY)}},onManipulatorsChanged:t=>this.on("manipulators-changed",t)});null!=i&&(this._outlineVisualElement=i.visualElement instanceof rt?i.visualElement:null),null!=this._outlineVisualElement&&this._manipulatorHandles.add(this._outlineVisualElement.events.on("attachment-origin-changed",(()=>{this._graphicState.isDraped||this._updateMoveManipulationPosition()}))),this._manipulatorHandles.add(i)}_createEdgeOffsetManipulator(t,e=L(this.graphic)){const i=this._settings.manipulators.edgeOffset,a=i.size/2,n=a+i.collisionPadding,o=a/n,r=o*Math.sqrt(3)/2;null==this._edgeOffsetManipulatorGeometryInside&&(this._edgeOffsetManipulatorGeometryInside=pt(this._edgeOffsetManipulatorMaterial,r,o/2,o/2,i.height,i.offset)),null==this._edgeOffsetManipulatorGeometryOutside&&(this._edgeOffsetManipulatorGeometryOutside=pt(this._edgeOffsetManipulatorMaterial,-r,o/2,o/2,i.height,-i.offset));const l=[new R(this._edgeOffsetManipulatorGeometryInside.instantiate(),ft.Unfocused),new R(this._edgeOffsetManipulatorGeometryInside.instantiate({material:this._edgeOffsetManipulatorHoverMaterial}),ft.Focused),new R(this._edgeOffsetManipulatorGeometryOutside.instantiate(),ft.Unfocused),new R(this._edgeOffsetManipulatorGeometryOutside.instantiate({material:this._edgeOffsetManipulatorHoverMaterial}),ft.Focused)],p=new P({view:this.view,renderObjects:l,elevationInfo:"on-the-ground"!==e.mode||j(this.graphic.symbol)?{mode:"absolute-height",offset:0}:e,worldOriented:!1,focusMultiplier:1,radius:n,available:!(!this.graphic.visible||!this.graphic.layer?.visible),collisionType:{type:"disc",direction:S(0,0,1)},collisionPriority:1,metadata:{deleting:!1}}),h=new P({view:this.view,worldSized:!0,worldOriented:!1,available:!(!this.graphic.visible||!this.graphic.layer?.visible),collisionPriority:-10,cursor:this.enableMoveGraphic?"move":"default",metadata:{deleting:!1}}),u={manipulator:p,handle:t,locationUpdateHandle:null,type:"edge",selectedIndex:0,edgeManipulator:h,elevationInfo:e,visibilityHandle:null};this._autoHideEdgeOffsetManipulator(u,i.minSquaredEdgeLength),this._updateEdgeOffsetManipulator(u);const c=[];for(const s of[u.handle.leftVertex,u.handle.rightVertex]){const t=this._getManipulatorInfoFromHandle(s);null!=t&&c.push(t.manipulator.events.on("location-update",(()=>this._updateEdgeOffsetManipulator(u))))}u.locationUpdateHandle=s(c),this._manipulatorHandles.add(u.locationUpdateHandle,p),this._manipulatorHandles.add([this._watchAndUpdateGrabState(p,!0),this._watchAndUpdateGrabState(h,!0)],p),this._manipulatorHandles.add(mt(p,this._createEdgeOffsetPipeline(u,e)),p),this._manipulatorHandles.add(mt(h,((t,i,a,n)=>{if("touch"===n){this._createEdgeOffsetPipeline(u,e)(t,i,a)}else if(this.enableMoveGraphic){const n=this.graphic,o=null!=n.geometry?n.geometry.spatialReference:null;i.next((t=>this._trackNumDragging(t))).next(gt(this.view,t.elevationAlignedLocation)).next(Z(this.view,t.elevationAlignedLocation,e,o,n)).next(_t()).next(ct()).next((t=>this._perGraphicManipulatorDragAction(qt.ALL,t))).next((t=>(this._updateTranslateGraphicTooltip($.XY,t),t))).next((t=>{"end"===t.action&&this._hideTooltip()})),a.next((()=>this._onDragCancel(!t.metadata.deleting)))}})),p);const m=t=>{this._manipulatorInfos.some((t=>t.manipulator.selected))?this._clearSelection():this.emit("immediate-click",{...t,graphic:this.graphic}),t.stopPropagation()};return this._manipulatorHandles.add([p.events.on("immediate-click",m),h.events.on("immediate-click",m),p.events.on("focus-changed",(({action:t})=>{const{_tooltipOptions:e,_tooltip:i}=this;if("focus"===t){const t=this._edgeOffsetTooltipInfo??=new bt({tooltipOptions:e});t.distance=d,t.tooltipOptions=e,this._updateTooltipAreaOrTotalLength(t),this._latestTooltipInfo=t,i.info=e.enabled?this._latestTooltipInfo:null}else this._hideTooltip()}))],p),this._manipulatorInfos.push(u),this.manipulators.add(p),this.manipulators.add(h),this.emit("manipulators-changed"),u}_autoHideEdgeOffsetManipulator(t,e){const i=t.manipulator,a=t.edgeManipulator,n=()=>{t.visibilityHandle=h(t.visibilityHandle);const n=this._getManipulatorInfoFromHandle(t.handle.leftVertex),o=this._getManipulatorInfoFromHandle(t.handle.rightVertex),l=null!=n&&null!=o&&st(n.manipulator.renderLocation,o.manipulator.renderLocation,this.view.state.camera)<e;(!i.focused&&!a.focused||l)&&(i.grabbable=!l,a.grabbable=!l,t.visibilityHandle=s([i.disableDisplay(),r((()=>{i.grabbable=!0,a.grabbable=this.enableMoveGraphic}))]))};this._manipulatorHandles.add([i.events.on("focus-changed",n),a.events.on("focus-changed",n),r((()=>{h(t.visibilityHandle),a.metadata.deleting=!0,this.manipulators.remove(a)}))],i),n()}_updateEdgeOffsetManipulator(t){this._updateManipulatorPosition(t);const{coordinateHelper:e}=this._editGeometryOperations.data,i=at(this.view,t.manipulator.elevationAlignedLocation,nt(e,t.handle,t.manipulator.elevationInfo)),a=this._getManipulatorInfoFromHandle(t.handle.leftVertex),n=this._getManipulatorInfoFromHandle(t.handle.rightVertex);if(null==a||null==n)return;const o=a.manipulator.renderLocation,s=n.manipulator.renderLocation,r=null!=i?ot(i,o,s):M;t.manipulator.modelTransform=r,t.edgeManipulator.elevationAlignedLocation=t.manipulator.elevationAlignedLocation,t.edgeManipulator.modelTransform=r;const l=y(x(zt,o,s))/2;t.edgeManipulator.collisionType={type:"line",paths:[[[-l,0,0],[l,0,0]]]}}_createEdgeOffsetPipeline(t,e){return(i,a,n)=>{this._clearSelection();const{step:o,cleanup:s}=this._initializeEdgeOffset(t,e);a.next((t=>this._trackNumDragging(t))).next(gt(this.view,i.elevationAlignedLocation)).next(o).next(z(this.view)).next(X(this.view,this._editGeometryOperations.data.spatialReference)).next(ct()).next(this._applyComputeEdgeOffsetDistanceStep()).next(this._applyEdgeOffsetStep(t)).next(this._showEdgeOffsetTooltip()).next((t=>{"end"===t.action&&s()})),n.next((()=>{i.metadata.deleting||(s(),this._onDragCancel())}))}}_initializeEdgeOffset(t,e){const{view:i}=this,n=this._editGeometryOperations,o=nt(n.data.coordinateHelper,t.handle,e),r=n.createUndoGroup(),p=at(i,t.manipulator.elevationAlignedLocation,o);if(o.requiresSplitEdgeLeft){const e=this._getManipulatorInfoFromHandle(t.handle.leftVertex.leftEdge);null!=e&&this._splitEdgeManipulator(e,1)}if(o.requiresSplitEdgeRight){const e=this._getManipulatorInfoFromHandle(t.handle.rightVertex.rightEdge);null!=e&&this._splitEdgeManipulator(e,0)}const d=()=>new w({paths:[[t.handle.leftVertex.pos,t.handle.rightVertex.pos]],spatialReference:n.data.spatialReference}),u=this._settings,c=new rt({view:i,isDraped:this._graphicState.isDraped,geometry:d(),elevationInfo:t.elevationInfo,width:u.visualElements.lineGraphics.outline.width,attached:!1,isDecoration:!0});let _;const f=()=>{this._cleanEdgeOffsetCollapsedEdges(t),_=h(_)},v=this.on("undo",f);return _=s([m((()=>a(this._accentColor)),(t=>c.color=t),g),l(c),m((()=>this._graphicState.isDraped),(t=>c.isDraped=t)),this._graphicState.on("changed",(()=>c.geometry=d())),r,v]),c.attached=!0,{step:t=>null==o||null==p?(f(),null):{...t,operation:o,plane:p},cleanup:f}}_applyEdgeOffsetStep(t){return e=>{if(this.destroyed||null==e.operation)return e;this._updateEventState(Yt.RESHAPING);const{mapDeltaX:i,mapDeltaY:a,mapDeltaZ:n}=e;return(i||a||n)&&(this._offsetEdge(t,e),this.emit("reshape",{type:"reshape",mover:this.graphic})),e}}_applyComputeEdgeOffsetDistanceStep(){return t=>{const{operation:e,mapEnd:i}=t;return null==e||null==i?t:("start"===t.action&&e.selectArrowFromStartPoint(i),{...t,signedDistance:e.signedDistanceToPoint(i)})}}_showEdgeOffsetTooltip(){return t=>{const{mapEnd:e,signedDistance:i,operation:a}=t,{_tooltip:n,_tooltipOptions:o}=this;if(null!=i){const n=this._edgeOffsetTooltipInfo??=new bt({tooltipOptions:o});n.tooltipOptions=o,n.distance="end"===t.action?d:kt(this._graphicState.isDraped,i*a.selectedArrow,e,a.plane,this._editGeometryOperations.data.coordinateHelper),this._updateTooltipAreaOrTotalLength(n),this._latestTooltipInfo=n}else this._latestTooltipInfo=null;return n.info=o.enabled?this._latestTooltipInfo:null,t}}_cleanEdgeOffsetCollapsedEdges(t){const e=t.handle.leftVertex.leftEdge?.leftVertex,i=t.handle.leftVertex,a=t.handle.rightVertex.rightEdge?.rightVertex,n=t.handle.rightVertex,o=this._editGeometryOperations.data.coordinateHelper,s=[];if(e&&o.distance(e.pos,i.pos)<Xt){const t=this._getManipulatorInfoFromHandle(i);null!=t&&s.push(t)}if(o.distance(i.pos,n.pos)<Xt||a&&o.distance(a.pos,n.pos)<Xt){const t=this._getManipulatorInfoFromHandle(n);null!=t&&s.push(t)}s.length&&this._removeVertices(s)}_computeVertexManipulatorSizeAndOutline(t){const e=t.size/2,i=e+t.collisionPadding;return{size:e/i,outlineSize:(e+t.outlineSize)/i}}_createVertexOrEdgeManipulator(t,e=L(this.graphic),i=!1){const{view:a}=this,n=this._settings;if("edge"===t.type){if(this.enableEdgeOffset)return this._createEdgeOffsetManipulator(t,e);if(!this.enableMidpoints)return null}if(null==this._vertexManipulatorGeometry||null==this._vertexManipulatorOutlineGeometry){const{size:t,outlineSize:e}=this._computeVertexManipulatorSizeAndOutline(n.manipulators.vertex);this._vertexManipulatorGeometry=ht(this._vertexManipulatorMaterial,t,16,16),this._vertexManipulatorOutlineGeometry=ht(this._vertexManipulatorOutlineMaterial,e,16,16)}if(null==this._edgeManipulatorGeometry||null==this._edgeManipulatorOutlineGeometry){const{size:t,outlineSize:e}=this._computeVertexManipulatorSizeAndOutline(n.manipulators.edge);this._edgeManipulatorGeometry=ht(this._edgeManipulatorMaterial,t,16,16),this._edgeManipulatorOutlineGeometry=ht(this._edgeManipulatorOutlineMaterial,e,16,16)}const{geometry:o}=this.graphic,r=o?.type,l="point"===r||"mesh"===r?[]:[new R(this._vertexManipulatorGeometry.instantiate(),Zt.Vertex|ft.Unselected),new R(this._vertexManipulatorOutlineGeometry.instantiate(),Zt.Vertex|ft.Unfocused|ft.Unselected),new R(this._vertexManipulatorOutlineGeometry.instantiate({material:this._vertexManipulatorHoverOutlineMaterial}),Zt.Vertex|ft.Focused|ft.Unselected),new R(this._vertexManipulatorGeometry.instantiate({material:this._selectedManipulatorMaterial}),ft.Selected),new R(this._vertexManipulatorOutlineGeometry.instantiate({material:this._selectedManipulatorOutlineMaterial}),ft.Selected|ft.Unfocused),new R(this._vertexManipulatorOutlineGeometry.instantiate({material:this._selectedManipulatorHoverOutlineMaterial}),ft.Selected|ft.Focused)];this.enableMidpoints&&l.push(new R(this._edgeManipulatorGeometry.instantiate({material:this._vertexManipulatorMaterial}),Zt.Edge|ft.Focused|ft.Unselected),new R(this._edgeManipulatorOutlineGeometry.instantiate({material:this._vertexManipulatorHoverOutlineMaterial}),Zt.Edge|ft.Focused|ft.Unselected),new R(this._edgeManipulatorGeometry.instantiate(),Zt.Edge|ft.Unfocused|ft.Unselected),new R(this._edgeManipulatorOutlineGeometry.instantiate(),Zt.Edge|ft.Unfocused|ft.Unselected));const p=new P({view:a,renderObjects:l,elevationInfo:e,focusMultiplier:1,touchMultiplier:1,available:!(!this.graphic.visible||!this.graphic.layer?.visible),metadata:{deleting:!1}});p.selected=i,this._setTypeSpecificManipulatorSettings(p,t,e);const d="edge"===t.type?{manipulator:p,handle:t,locationUpdateHandle:null,type:"edge",selectedIndex:0}:{manipulator:p,handle:t,type:"vertex",selectedIndex:0};if(this._manipulatorInfos.push(d),this.manipulators.add(p),this._updateManipulatorPosition(d),"edge"===d.type){const t=[];for(const e of[d.handle.leftVertex,d.handle.rightVertex]){const i=this._getManipulatorInfoFromHandle(e);null!=i&&t.push(i.manipulator.events.on("location-update",(()=>this._updateManipulatorPosition(d))))}d.locationUpdateHandle=s(t),this._manipulatorHandles.add(d.locationUpdateHandle,p)}this._manipulatorHandles.add(this._watchAndUpdateGrabState(p,!0),p);const u=mt(p,((t,i,a,n)=>{let o=null;const{snappingStep:s,cancelSnapping:r}=Ot({predicate:()=>!this._isMultiVertexSelection(),snappingManager:this.tool.snappingManager,snappingContext:new xt({editGeometryOperations:this._editGeometryOperations,elevationInfo:e,pointer:n,excludeFeature:this.graphic,visualizer:new F}),updatingHandles:this._updatingHandles,useZ:!1});a=a.next((e=>(this._onDragCancel(!t.metadata.deleting,(()=>o=h(o))),e))).next(r),i.next((t=>this._trackNumDragging(t))).next((t=>{if("start"===t.action&&(o=this._editGeometryOperations.createUndoGroup()),"edge"===d.type){const e=this._splitEdgeManipulator(d);return{...t,info:e,snapOrigin:e.handle.pos}}return{...t,info:d,snapOrigin:d.handle.pos}})).next(gt(this.view,t.elevationAlignedLocation)).next(Y(this.view,this.graphic,t.elevationAlignedLocation,t.location.spatialReference,this.graphic)).next(ut(this.view,e,this.graphic)).next(...s).next(ct()).next((e=>{this._perVertexManipulatorDragAction(e),"end"===e.action&&(o=h(o)),this._updateTranslateVertexTooltip(t,$.XY,e)}))}));return this._manipulatorHandles.add([u,p.events.on("immediate-click",(t=>this._manipulatorClickCallback(t,d))),p.events.on("select-changed",(()=>{d.selectedIndex=++this._selectedIndex,this._updateMoveManipulationPosition()})),p.events.on("focus-changed",(({action:t})=>{"focus"===t&&"edge"!==d.type?this._updateTranslateVertexTooltip(p,$.XY):this._hideTooltip()}))],p),this.emit("manipulators-changed"),d}_trackNumDragging(t){switch(t.action){case"start":this._numDragging++;break;case"end":this._numDragging--}return t}_onDragCancel(t=!0,e){switch(this._numDragging--,t&&(this.undo(),this.outputGeometry=null!=this._editGeometryOperations?this._editGeometryOperations.data.geometry:null),null!=this.tool.snappingManager&&this.tool.snappingManager.doneSnapping(),this._hideTooltip(),this._reshapeEventState){case Yt.NONE:break;case Yt.MOVING:this.emit("move",{type:"move",dx:0,dy:0,mover:this.graphic});break;case Yt.RESHAPING:this.emit("reshape",{type:"reshape",mover:this.graphic})}e&&e(),this.destroyed||this._updateEventState(Yt.NONE)}_setTypeSpecificManipulatorSettings(t,e,i){const{graphic:a}=this,n=this._settings;switch(e.type){case"vertex":{t.state=Zt.Vertex,t.selectable=!0,t.cursor="move",t.collisionPriority=2;const{size:e,collisionPadding:o}=n.manipulators.vertex;t.radius=e/2+o,t.elevationInfo=i;const{geometry:s}=a,r=s?.type;t.interactive=null!=r&&"point"!==r&&"mesh"!==r;break}case"edge":{t.state=Zt.Edge,t.selectable=!1,t.cursor="copy",t.collisionPriority=-1;const{size:e,collisionPadding:o}=n.manipulators.edge;t.radius=e/2+o,t.elevationInfo="on-the-ground"!==i.mode||j(a.symbol)?{mode:"absolute-height",offset:0}:i;break}}}_watchAndUpdateGrabState(t,e){return t.events.on("grab-changed",(i=>this._onGrabStateChanged(t,e,i.action,i.pointerType)))}_onGrabStateChanged(t,e,i,a="mouse"){if(!this._recreatingManipulators){if("start"===i)e&&this._updateSelection(t),this._numGrabbing++;else if(this._numGrabbing--,this._updateEventState(Yt.NONE),this.destroyed)return;this._moveManipulation.interactive=!this._numGrabbing,("touch"!==a||this.enableEdgeOffset)&&(this._manipulatorInfos.forEach((t=>{const{manipulator:e}=t,{geometry:i}=this.graphic,a=i?.type;e.interactive=e.grabbing||!this._numGrabbing&&null!=a&&"point"!==a&&"mesh"!==a,"edgeManipulator"in t&&(t.edgeManipulator.interactive=t.edgeManipulator.grabbing||!this._numGrabbing)})),this._graphicMoveManipulation.forEachManipulator((t=>{t.interactive=t.grabbing||!this._numGrabbing})))}}_clearSelection(){for(const t of this._manipulatorInfos)t.manipulator.grabbing||(t.manipulator.selected=!1)}_updateSelection(t){t.grabbing&&!t.selected&&t.selectable&&(this._clearSelection(),t.selected=!0,this.emit("manipulators-changed"))}_removeManipulator(t){null!=t&&(t.manipulator.metadata.deleting=!0,this.manipulators.remove(t.manipulator),this._manipulatorHandles.remove(t.manipulator),i(this._manipulatorInfos,t),this.emit("manipulators-changed"))}_getManipulatorInfoFromHandle(t){if(t)for(const e of this._manipulatorInfos)if(t===e.handle)return e;return null}_updateManipulatorPosition(t){if(null==t)return;const e=this._editGeometryOperations;if("vertex"===t.type)t.manipulator.location=e.data.coordinateHelper.vectorToDehydratedPoint(t.handle.pos,Ft),t.manipulator.grabbing&&null!=this._vertexLaserLineVisualElement&&(this._vertexLaserLineVisualElement.visualElement.intersectsWorldUpAtLocation=t.manipulator.renderLocation);else if("edge"===t.type){const i=this._getManipulatorInfoFromHandle(t.handle.leftVertex),a=this._getManipulatorInfoFromHandle(t.handle.rightVertex);if(null==i||null==a)return;const n=i.manipulator,o=a.manipulator;if(null!=t.manipulator.elevationInfo&&"on-the-ground"===t.manipulator.elevationInfo.mode){const i=n.location,a=o.location,s=.5,r=i.x+s*(a.x-i.x),l=i.y+s*(a.y-i.y),p=i.hasZ&&a.hasZ?0:void 0;t.manipulator.location=D(r,l,p,e.data.spatialReference)}else O(zt,n.renderLocation,o.renderLocation,.5),t.manipulator.renderLocation=zt}}_splitEdgeManipulator(t,e=.5){const i=this._editGeometryOperations,a=i.splitEdge(t.handle,e).createdVertex;t.locationUpdateHandle=h(t.locationUpdateHandle);const n=L(this.graphic);let o;this.enableEdgeOffset?(this._removeManipulator(t),o=this._createVertexOrEdgeManipulator(a)):(o=t,o.handle=a,o.type="vertex",this._setTypeSpecificManipulatorSettings(t.manipulator,t.handle,n)),a.leftEdge&&this._createVertexOrEdgeManipulator(a.leftEdge),a.rightEdge&&this._createVertexOrEdgeManipulator(a.rightEdge),this.outputGeometry=i.data.geometry,this._updateManipulatorPosition(o),this.enableEdgeOffset||this._updateTranslateVertexTooltip(o.manipulator,$.XY),this._updateSelection(t.manipulator);const s=this._updateEventState(Yt.RESHAPING),r=i.data.coordinateHelper.vectorToArray(o.handle.pos),l=i.data.components.indexOf(a.component);return this.emit("vertex-add",{type:"vertex-add",vertices:[{coordinates:r,componentIndex:l,vertexIndex:a.index}],added:r}),s&&this._updateEventState(Yt.NONE),o}_updateMoveManipulationPosition(){const t=b(zt,0,0,0);let e=0,i=!1,a=null,n=null;for(const o of this._manipulatorInfos)"vertex"===o.type&&(o.manipulator.selected?(e++,E(t,t,o.manipulator.renderLocation),null==a||o.selectedIndex>a.selectedIndex?(n=a,a=o):(null==n||o.selectedIndex>n.selectedIndex)&&(n=o)):i=!0);if(0===e){const t=this._graphicState.displaying&&this.enableMoveGraphic;this._moveManipulation.xyManipulation.available=t,this._moveManipulation.xyAxisManipulation.available=t,this._moveManipulation.xyAxisManipulation.orthogonalAvailable=t,this._moveManipulation.zManipulation.available=t&&this.enableZShape&&K(this.graphic),this._moveManipulation.angle=q(this.graphic.geometry),this._moveManipulation.radius=tt.radiusForSymbol(this.graphic.symbol)}else{const t=this._graphicState.displaying;this._moveManipulation.xyManipulation.available=t,this._moveManipulation.xyAxisManipulation.available=t,this._moveManipulation.zManipulation.available=t&&this.enableZVertex&&K(this.graphic),this._moveManipulation.xyAxisManipulation.orthogonalAvailable=t&&1!==e;let i=0;if(null!=a){const t=a.handle.pos,e=null!=n?n.handle.pos:a.handle.leftEdge&&a.handle.leftEdge.leftVertex?a.handle.leftEdge.leftVertex.pos:null,o=null==n&&a.handle.rightEdge&&a.handle.rightEdge.rightVertex?a.handle.rightEdge.rightVertex.pos:null;e&&o?this._moveManipulation.xyAxisManipulation.available=!1:e?i=Rt(e,t):o&&(i=Rt(t,o))}this._moveManipulation.angle=i,this._moveManipulation.radius=Q}0!==e&&i?(G(t,t,1/e),Ft.spatialReference=this._editGeometryOperations.data.spatialReference,Ft.hasZ=!0,this.view.renderCoordsHelper.fromRenderCoords(t,Ft),this._moveManipulation.elevationAlignedLocation=Ft):null==this._outlineVisualElement||this._graphicState.isDraped||null==this._outlineVisualElement.attachmentOrigin?N(this.view,this._moveManipulation,this.graphic):this._moveManipulation.elevationAlignedLocation=this._outlineVisualElement.attachmentOrigin}_removeVertices(t){const e=new Array,i=this._editGeometryOperations;for(const a of t)if("vertex"===a.type&&i.canRemoveVertex(a.handle.component)){e.push(a.handle),this._removeManipulator(a),this._removeManipulator(this._getManipulatorInfoFromHandle(a.handle.leftEdge)),this._removeManipulator(this._getManipulatorInfoFromHandle(a.handle.rightEdge));const t=i.removeVertices([a.handle]),n=t.removedVertices?.[0].createdEdge;n&&this._createVertexOrEdgeManipulator(n)}if(e.length>0){const t=e.map((t=>{const e=i.data.components.indexOf(t.component);return{coordinates:i.data.coordinateHelper.vectorToArray(t.pos),componentIndex:e,vertexIndex:t.index}}));this.outputGeometry=i.data.geometry;const a=this._updateEventState(Yt.RESHAPING);if(this.destroyed)return;if(this.emit("vertex-remove",{type:"vertex-remove",removed:t.map((t=>t.coordinates)),vertices:t}),this.destroyed)return;if(a&&(this._updateEventState(Yt.NONE),this.destroyed))return;this._updateMoveManipulationPosition()}}_moveVertices(t,e,i=("start"===e.action?yt.NEW_STEP:yt.ACCUMULATE_STEPS)){const a=this._editGeometryOperations;a.moveVertices(t.map((t=>t.handle)),e.mapDeltaX,e.mapDeltaY,e.mapDeltaZ,i),this.outputGeometry=a.data.geometry;for(const n of t)this._updateManipulatorPosition(n)}_offsetEdge(t,e){if(null==e.operation||null==e.signedDistance)return;const i=this._editGeometryOperations,a=e.operation.clone();a.distance=e.signedDistance,i.updateVertices([t.handle.leftVertex,t.handle.rightVertex],a),this.outputGeometry=i.data.geometry,this._updateManipulatorPosition(this._getManipulatorInfoFromHandle(t.handle.leftVertex)),this._updateManipulatorPosition(this._getManipulatorInfoFromHandle(t.handle.rightVertex))}_manipulatorClickCallback(t,e){t.shiftKey||this._clearSelection(),"vertex"===e.type&&(e.manipulator.selected=!e.manipulator.selected,t.button===dt.Right&&this._removeVertices([e])),"edge"===e.type&&t.button===dt.Left&&this._splitEdgeManipulator(e),t.stopPropagation()}_updateTranslateTooltip(t,e){const i=this._manipulatorInfos.filter((t=>"vertex"===t.type&&t.manipulator.selected));1===i.length?this._updateTranslateVertexTooltip(i[0].manipulator,t,e):this._updateTranslateGraphicTooltip(t,e)}_updateTranslateGraphicTooltip(t,e){const{_tooltipOptions:i,_tooltip:a}=this,n=this._graphicState.isDraped?"on-the-ground":"absolute-height";switch(t){case $.XY:this._latestTooltipInfo=this._translateGraphicTooltipInfo??=new It({tooltipOptions:i}),this._updateTranslateTooltipDistance(this._latestTooltipInfo,e,((t,e)=>Dt(t,e,n)));break;case $.XY_AXIS:this._latestTooltipInfo=this._translateGraphicXYTooltipInfo??=new St({tooltipOptions:i}),this._updateTranslateTooltipDistance(this._latestTooltipInfo,e,((t,i)=>{const a=Dt(t,i,n);return u(a,et(e))}));break;case $.Z:this._latestTooltipInfo=this._translateGraphicZTooltipInfo??=new Gt({tooltipOptions:i}),this._updateTranslateTooltipDistance(this._latestTooltipInfo,e,jt)}this._latestTooltipInfo.tooltipOptions=i,a.info=i.enabled?this._latestTooltipInfo:null}_updateTranslateVertexTooltip(t,e,i){const{_tooltipOptions:a,_tooltip:n}=this,o=this._graphicState.isDraped?"on-the-ground":"absolute-height";switch(e){case $.XY:this._latestTooltipInfo=this._translateVertexTooltipInfo??=new Vt({tooltipOptions:a}),this._updateTranslateTooltipDistance(this._latestTooltipInfo,i,((t,e)=>Dt(t,e,o))),this._updateTooltipAreaOrTotalLength(this._latestTooltipInfo);break;case $.XY_AXIS:this._latestTooltipInfo=this._translateVertexXYTooltipInfo??=new wt({tooltipOptions:a}),this._updateTranslateTooltipDistance(this._latestTooltipInfo,i,((t,e)=>{const a=Dt(t,e,o);return u(a,et(i))})),this._updateTooltipAreaOrTotalLength(this._latestTooltipInfo);break;case $.Z:this._latestTooltipInfo=this._translateVertexZTooltipInfo??=new Tt({tooltipOptions:a}),this._updateTranslateTooltipDistance(this._latestTooltipInfo,i,jt)}const s=Pt(t.elevationAlignedLocation);this._latestTooltipInfo.elevation=null!=s?Ht({actual:s}):null,this._latestTooltipInfo.tooltipOptions=a,n.info=a.enabled?this._latestTooltipInfo:null}_updateTranslateTooltipDistance(t,e,i){if(null!=e&&"end"!==e.action){const{mapStart:a,mapEnd:n}=e,o=i(a,n);t.distance=null!=o?o:d}else t.distance=d}_updateTooltipAreaOrTotalLength(t){const{geometry:e}=this.graphic;if(null==e)return t.area=null,void(t.totalLength=null);const i=this._graphicState.isDraped?"on-the-ground":"absolute-height";t.area="polygon"===e.type?At(e,i):null,t.totalLength="polyline"===e.type?Lt(e,i):null}_hideTooltip(){this._tooltip.clear(),this._latestTooltipInfo=null}get test(){return{segmentLabels:this._segmentLabels,tooltip:this._tooltip}}};function Rt(t,e){return Math.atan2(e[1]-t[1],e[0]-t[0])+Math.PI/2}function kt(t,e,i,a,n){if(t){const t=n.toXYZ(n.pointToVector(i)),o=H(a,t,A.get()),s=Ut(o,t,n.spatialReference);if(null!=s)return c(s.value*Math.sign(e),s.unit)}return c(e*_(i.spatialReference),"meters")}t([f()],Nt.prototype,"_editGeometryOperations",void 0),t([f()],Nt.prototype,"_segmentLabels",void 0),t([f({constructOnly:!0})],Nt.prototype,"tool",void 0),t([f()],Nt.prototype,"_tooltip",void 0),t([f()],Nt.prototype,"inputGeometry",null),t([f()],Nt.prototype,"outputGeometry",void 0),t([f({readOnly:!0})],Nt.prototype,"updating",null),t([f()],Nt.prototype,"manipulators",null),t([f()],Nt.prototype,"view",null),t([f()],Nt.prototype,"graphic",null),t([f()],Nt.prototype,"enableZShape",null),t([f()],Nt.prototype,"enableZVertex",null),t([f()],Nt.prototype,"enableMoveGraphic",null),t([f()],Nt.prototype,"enableMidpoints",null),t([f()],Nt.prototype,"enableEdgeOffset",null),t([f()],Nt.prototype,"_labelOptions",null),t([f()],Nt.prototype,"_tooltipOptions",null),t([f()],Nt.prototype,"_accentColor",null),Nt=t([v("esri.views.3d.interactive.editingTools.reshapeGraphic.ReshapeOperation")],Nt);const Ft=D(0,0,void 0,Ct.WGS84),zt=I(),Xt=1e-6;var Zt,Yt,qt;!function(t){t.Vertex=vt.Custom1,t.Edge=vt.Custom2}(Zt||(Zt={})),function(t){t[t.NONE=0]="NONE",t[t.MOVING=1]="MOVING",t[t.RESHAPING=2]="RESHAPING"}(Yt||(Yt={})),function(t){t[t.ALL=0]="ALL",t[t.SELECTED_OR_ALL=1]="SELECTED_OR_ALL"}(qt||(qt={}));export{Nt as ReshapeOperation};
|