@arcgis/core 4.27.0-next.20230420 → 4.27.0-next.20230421

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (152) hide show
  1. package/WebMap.js +1 -1
  2. package/WebScene.js +1 -1
  3. package/assets/esri/core/workers/RemoteClient.js +1 -1
  4. package/assets/esri/core/workers/chunks/{f64f95623d9296a91f95.js → 059ec6fd9b971de4b4c1.js} +1 -1
  5. package/assets/esri/core/workers/chunks/{1fe31a412479815e5e2d.js → 10770939900946feb20d.js} +1 -1
  6. package/assets/esri/core/workers/chunks/{5252f3cc244204edc299.js → 1216e939d363f96b6cc6.js} +1 -1
  7. package/assets/esri/core/workers/chunks/156dad2b7fed6749bae7.js +1 -0
  8. package/assets/esri/core/workers/chunks/15a97d3e42b00ac42984.js +1 -0
  9. package/assets/esri/core/workers/chunks/{d72c0c97cc4e30f1e4f2.js → 18704903814b9d73c708.js} +1 -1
  10. package/assets/esri/core/workers/chunks/{852b4a6c0f3feb57cf54.js → 1db5e4c8244dbc21590c.js} +1 -1
  11. package/assets/esri/core/workers/chunks/{f0953e41d1653e66ba57.js → 2a1a5a1969e80a10dcca.js} +1 -1
  12. package/assets/esri/core/workers/chunks/33b735faa582e6f39e9a.js +1 -0
  13. package/assets/esri/core/workers/chunks/34025ac04ca02531923a.js +1 -0
  14. package/assets/esri/core/workers/chunks/3e9f3479fd8558d9e3e3.js +1 -0
  15. package/assets/esri/core/workers/chunks/{d59274ac695dfcff1143.js → 46090b69e9161bc05141.js} +1 -1
  16. package/assets/esri/core/workers/chunks/{1b647446a6a27798c5cf.js → 47bf38d910e71ac39bb8.js} +1 -1
  17. package/assets/esri/core/workers/chunks/{3978f4f68ada540ee3a3.js → 4f8a09b61267e5e26712.js} +1 -1
  18. package/assets/esri/core/workers/chunks/5183ecab7eddae7b70e8.js +1 -0
  19. package/assets/esri/core/workers/chunks/{a5c33b24b7ee042cb473.js → 51a0d1dabe7415515c77.js} +2 -2
  20. package/assets/esri/core/workers/chunks/541e6efc3b491e507410.js +1 -0
  21. package/assets/esri/core/workers/chunks/5c64fd3bf057a1a5527f.js +1 -0
  22. package/assets/esri/core/workers/chunks/6047bdaf4855506f8fdb.js +1 -0
  23. package/assets/esri/core/workers/chunks/{b2358c2e27be7a5709cf.js → 6adb58f1bffc5d1c03bd.js} +1 -1
  24. package/assets/esri/core/workers/chunks/770940417e6ddbdbb9d6.js +1 -0
  25. package/assets/esri/core/workers/chunks/{1c1d8be85297c483a606.js → 77c98121223a144170e3.js} +1 -1
  26. package/assets/esri/core/workers/chunks/80117007d86be4eb3bc3.js +1 -0
  27. package/assets/esri/core/workers/chunks/838849b751805615833a.js +1 -0
  28. package/assets/esri/core/workers/chunks/{9ca395f7bc8d397b5240.js → 88197520501fcc20b6e8.js} +1 -1
  29. package/assets/esri/core/workers/chunks/{89e8ba4fc325838bf1a9.js → 88f9dededcf60fd011ef.js} +1 -1
  30. package/assets/esri/core/workers/chunks/88fdd288ef799a7ac48a.js +1 -0
  31. package/assets/esri/core/workers/chunks/{f11ec68ceb7c973cde74.js → 8ae7fea9f7fda38dd207.js} +1 -1
  32. package/assets/esri/core/workers/chunks/{0d080dd1ca6a71597409.js → 9265d4e9cfab2c7bbce5.js} +1 -1
  33. package/assets/esri/core/workers/chunks/{8d41305509fedb3603ac.js → 94041a9ced04aa281d40.js} +1 -1
  34. package/assets/esri/core/workers/chunks/98540791fcef86069e44.js +1 -0
  35. package/assets/esri/core/workers/chunks/9c1b2f82877ff79969f5.js +1 -0
  36. package/assets/esri/core/workers/chunks/a7b3cd537c9127b5e65e.js +1 -0
  37. package/assets/esri/core/workers/chunks/{3d1c697182237807ab49.js → abea316f2eac0f3086ab.js} +1 -1
  38. package/assets/esri/core/workers/chunks/ad85ade6a2cfb56cf328.js +1 -0
  39. package/assets/esri/core/workers/chunks/{25862269952c1bda910f.js → b833b4ea2973bb16792e.js} +1 -1
  40. package/assets/esri/core/workers/chunks/{e50d1afdc878258c437e.js → be4aa835a7abfc809126.js} +1 -1
  41. package/assets/esri/core/workers/chunks/{4fed7c08b5f4de23bb75.js → c2ec6e904f96173a7b83.js} +1 -1
  42. package/assets/esri/core/workers/chunks/{c25aa08b869f2777dc26.js → c4488a8d857c765da30e.js} +1 -1
  43. package/assets/esri/core/workers/chunks/c5c56b6d99db96a6755a.js +2 -0
  44. package/assets/esri/core/workers/chunks/{b28883e2a13f360310b3.js → c727d38f71e52bee17e1.js} +1 -1
  45. package/assets/esri/core/workers/chunks/cf315d255f0dc8d50f21.js +1 -0
  46. package/assets/esri/core/workers/chunks/cf7676fdc09ad4835680.js +1 -0
  47. package/assets/esri/core/workers/chunks/cfad34c949cbe8a31ef8.js +1 -0
  48. package/assets/esri/core/workers/chunks/{a2c9cb23f3e35e88da1d.js → d399b1b9cbf0737d1735.js} +1 -1
  49. package/assets/esri/core/workers/chunks/{df7dcd035997881cf2ef.js → d5c8119d6d34628d3126.js} +1 -1
  50. package/assets/esri/core/workers/chunks/d6b6bb8aecc85d2a3f6b.js +1 -0
  51. package/assets/esri/core/workers/chunks/{8dfa32cc8453f85faab0.js → dd1f8bade9c5c3b7929b.js} +1 -1
  52. package/assets/esri/core/workers/chunks/e11e60759821746259c6.js +1 -0
  53. package/assets/esri/core/workers/chunks/{e4b65c5a4575a5c1c49f.js → e356c576f9a7521a49b3.js} +1 -1
  54. package/assets/esri/core/workers/chunks/f02edf71645eb33bf92f.js +1 -0
  55. package/assets/esri/core/workers/chunks/{3dff550c29115dd625fa.js → f1a4165c2710ca90e5ea.js} +1 -1
  56. package/assets/esri/core/workers/chunks/f57a3ee17869ced3dd33.js +1 -0
  57. package/assets/esri/core/workers/chunks/fc07f6e103d7f69a9909.js +1 -0
  58. package/chunks/WaterSurface.glsl.js +35 -20
  59. package/chunks/index.js +1 -1
  60. package/core/Loadable.js +1 -1
  61. package/core/Promise.js +1 -1
  62. package/core/accessorSupport/ensureType.js +1 -1
  63. package/core/accessorSupport/watch.js +1 -1
  64. package/core/accessorSupport/write.js +1 -1
  65. package/core/promiseUtils.js +1 -1
  66. package/core/watchUtils.js +1 -1
  67. package/core/workers/Connection.js +1 -1
  68. package/core/workers/RemoteClient.js +1 -1
  69. package/geometry/support/geodesicUtils.js +1 -1
  70. package/intl/messages.js +1 -1
  71. package/layers/graphics/data/attributeSupport.js +1 -1
  72. package/layers/graphics/sources/FeatureLayerSource.js +1 -1
  73. package/layers/mixins/ArcGISMapService.js +1 -1
  74. package/layers/support/PromiseQueue.js +1 -1
  75. package/layers/support/Sublayer.js +1 -1
  76. package/layers/support/TileKey.js +1 -1
  77. package/layers/support/rasterFormats/TiffDecoder.js +1 -1
  78. package/networks/Network.js +1 -1
  79. package/package.json +1 -1
  80. package/portal/schemas/definitions.js +1 -1
  81. package/request.js +1 -1
  82. package/support/revision.js +1 -1
  83. package/symbols/support/previewSymbol3D.js +1 -1
  84. package/symbols/support/styleUtils.js +1 -1
  85. package/symbols/support/symbolLayerUtils.js +1 -1
  86. package/symbols/support/utils.js +1 -1
  87. package/symbols/support/webStyleSymbolUtils.js +1 -1
  88. package/views/2d/engine/webgl/TextureManager.js +1 -1
  89. package/views/2d/layers/support/webStyleUtils.js +1 -1
  90. package/views/3d/input/SceneInputManager.js +1 -1
  91. package/views/3d/interactive/manipulatorUtils.js +1 -1
  92. package/views/3d/interactive/visualElements/LineVisualElement.js +1 -1
  93. package/views/3d/layers/graphics/ElevationQuery.js +1 -1
  94. package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
  95. package/views/3d/layers/graphics/Graphics3DObjectSymbolLayer.js +1 -1
  96. package/views/3d/layers/graphics/Graphics3DWaterSymbolLayer.js +1 -1
  97. package/views/3d/layers/graphics/polygonUtils.js +1 -1
  98. package/views/3d/layers/graphics/symbolComplexity.js +1 -1
  99. package/views/3d/layers/graphics/webStyleUtils.js +5 -0
  100. package/views/3d/webgl-engine/materials/WaterMaterial.js +1 -1
  101. package/views/3d/webgl-engine/materials/WaterTechnique.js +1 -1
  102. package/views/3d/webgl-engine/shaders/WaterSurface.glsl.js +1 -1
  103. package/views/LayerViewManager.js +1 -1
  104. package/views/PopupView.js +1 -1
  105. package/views/SceneView.js +1 -1
  106. package/views/ViewAnimation.js +1 -1
  107. package/views/input/BrowserEventSource.js +1 -1
  108. package/views/input/InputManager.js +1 -1
  109. package/views/interactive/coordinateHelper.js +1 -1
  110. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceSnappingSourceWorker.js +1 -1
  111. package/views/support/QueueProcessor.js +1 -1
  112. package/views/ui/DefaultUI.js +1 -1
  113. package/views/ui/UI.js +1 -1
  114. package/widgets/BasemapGallery/support/PortalBasemapsSource.js +1 -1
  115. package/widgets/Editor/CreateFeaturesWorkflow.js +1 -1
  116. package/widgets/Editor/Upload.js +1 -1
  117. package/widgets/Editor/deprecationUtils.js +1 -1
  118. package/widgets/Editor/modelUploadUtils.js +1 -1
  119. package/widgets/Editor.js +1 -1
  120. package/widgets/Feature/FeatureExpression/FeatureExpressionViewModel.js +1 -1
  121. package/widgets/Feature/FeatureRelationship/FeatureRelationshipViewModel.js +1 -1
  122. package/widgets/Feature/FeatureViewModel.js +1 -1
  123. package/widgets/FeatureTable/Grid/Grid.js +1 -1
  124. package/widgets/Popup.js +1 -1
  125. package/assets/esri/core/workers/chunks/0cec1c16b25406858ae6.js +0 -1
  126. package/assets/esri/core/workers/chunks/27353056c3e4e8d8b8d3.js +0 -1
  127. package/assets/esri/core/workers/chunks/337d59d624ef8a89aae5.js +0 -1
  128. package/assets/esri/core/workers/chunks/4b6a903d4aeeb4eeb615.js +0 -1
  129. package/assets/esri/core/workers/chunks/4bf9bc8b52d618f395c5.js +0 -1
  130. package/assets/esri/core/workers/chunks/5ec4fedbbcbb0053cf74.js +0 -2
  131. package/assets/esri/core/workers/chunks/60e29d172a2dcf45e8d0.js +0 -1
  132. package/assets/esri/core/workers/chunks/68a15cc7c51645d31572.js +0 -1
  133. package/assets/esri/core/workers/chunks/778ecf61f07dafc51bbc.js +0 -1
  134. package/assets/esri/core/workers/chunks/7e67e071789c6d264280.js +0 -1
  135. package/assets/esri/core/workers/chunks/80d335bec34d60b7bbdc.js +0 -1
  136. package/assets/esri/core/workers/chunks/810da30f13151b72a293.js +0 -1
  137. package/assets/esri/core/workers/chunks/81485a5056aed94b3d8d.js +0 -1
  138. package/assets/esri/core/workers/chunks/8ebda132068f6b962dd9.js +0 -1
  139. package/assets/esri/core/workers/chunks/914a0c78c80aa897b1a1.js +0 -1
  140. package/assets/esri/core/workers/chunks/979ea2e3b1b164334634.js +0 -1
  141. package/assets/esri/core/workers/chunks/a0e92dd27c8f6b642dbf.js +0 -1
  142. package/assets/esri/core/workers/chunks/a6240bf258b3886a6661.js +0 -1
  143. package/assets/esri/core/workers/chunks/b1a8024bf8cdd0cd3884.js +0 -1
  144. package/assets/esri/core/workers/chunks/b366e0db9b5f27dd53a3.js +0 -1
  145. package/assets/esri/core/workers/chunks/c564055cb906857c8641.js +0 -1
  146. package/assets/esri/core/workers/chunks/c646dc9da08b509e39d6.js +0 -1
  147. package/assets/esri/core/workers/chunks/db5598944b691e43f13e.js +0 -1
  148. package/assets/esri/core/workers/chunks/eb163a2ddeb27c690308.js +0 -1
  149. package/assets/esri/core/workers/chunks/f05634909c9449533193.js +0 -1
  150. package/assets/esri/core/workers/chunks/fcebd70b089dea833c75.js +0 -1
  151. /package/assets/esri/core/workers/chunks/{a5c33b24b7ee042cb473.js.LICENSE.txt → 51a0d1dabe7415515c77.js.LICENSE.txt} +0 -0
  152. /package/assets/esri/core/workers/chunks/{5ec4fedbbcbb0053cf74.js.LICENSE.txt → c5c56b6d99db96a6755a.js.LICENSE.txt} +0 -0
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1400],{43697:(t,e,r)=>{function n(t,e,r,n){var s,i=arguments.length,o=i<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(t,e,r,n);else for(var a=t.length-1;a>=0;a--)(s=t[a])&&(o=(i<3?s(o):i>3?s(e,r,o):s(e,r))||o);return i>3&&o&&Object.defineProperty(e,r,o),o}r.d(e,{_:()=>n})},15923:(t,e,r)=>{r.d(e,{Z:()=>U});var n=r(61247),s=r(70586),i=r(88022),o=r(67723),a=r(7628),c=(r(80442),r(22974)),l=r(92604),u=r(71143),h=r(97831),f=r(42100),d=r(31263),p=r(58971),y=r(44550);class g{constructor(t,e){this.propertyName=t,this.metadata=e,this.observerObject=new _,this._accessed=null,this._handles=null,this.observerObject.flags=y.v.Dirty|(e.nonNullable?y.v.NonNullable:0)|(e.hasOwnProperty("value")?y.v.HasDefaultValue:0)|(void 0===e.get?y.v.DepTrackingInitialized:0)|(void 0===e.dependsOn?y.v.AutoTracked:0)}destroy(){this.observerObject.destroy(),this._accessed=null,this._clearObservationHandles()}getComputed(t){const e=this.observerObject;(0,p.it)(e);const r=t.store,n=this.propertyName,s=e.flags,i=r.get(n);if(s&y.v.Computing)return i;if(~s&y.v.Dirty&&r.has(n))return i;e.flags|=y.v.Computing;const o=t.host;let a;s&y.v.AutoTracked?a=(0,p.LJ)(this,this.metadata.get,o):((0,p.GF)(o,this),a=this.metadata.get.call(o)),r.set(n,a,d.s3.COMPUTED);const c=r.get(n);return c===i?e.flags&=~y.v.Dirty:(0,p.gb)(this.commit,this),e.flags&=~y.v.Computing,c}onObservableAccessed(t){if(t===this.observerObject)return;let e=this._accessed;if(null==e)e=[],this._accessed=e;else if(e.includes(t))return;e.push(t)}onTrackingEnd(){this._clearObservationHandles();const t=this.observerObject;t.flags|=y.v.DepTrackingInitialized;const e=this._accessed;if(null==e||0===e.length)return;let r=this._handles;null==r&&(r=[],this._handles=r);for(let n=0;n<e.length;++n)r.push(e[n].observe(t));e.length=0}notifyChange(){const t=this.observerObject;t.onInvalidated(),t.onCommitted()}invalidate(){this.observerObject.onInvalidated()}commit(){const t=this.observerObject;t.flags&=~y.v.Dirty,t.onCommitted()}_clearObservationHandles(){const t=this._handles;if(null!==t){for(let e=0;e<t.length;++e)t[e].remove();t.length=0}}}class _ extends f.s{constructor(){super(...arguments),this.flags=0}onInvalidated(){~this.flags&y.v.Overriden&&(this.flags|=y.v.Dirty);const t=this._observers;if(t&&t.length>0)for(const e of t)e.onInvalidated()}onCommitted(){const t=this._observers;if(t&&t.length>0){const e=t.slice();for(const t of e)t.onCommitted()}}destroy(){this.flags&y.v.Dirty&&this.onCommitted(),super.destroy()}}class v{constructor(){this._values=new Map,this.multipleOriginsSupported=!1}clone(t){const e=new v;return this._values.forEach(((r,n)=>{t&&t.has(n)||e.set(n,(0,c.d9)(r))})),e}get(t){return this._values.get(t)}originOf(){return d.s3.USER}keys(){return[...this._values.keys()]}set(t,e){this._values.set(t,e)}delete(t){this._values.delete(t)}has(t){return this._values.has(t)}forEach(t){this._values.forEach(t)}}function m(t,e,r){return void 0!==t}function b(t,e,r,n){return!(void 0===t||null==r&&t.observerObject.flags&y.v.NonNullable&&(n.lifecycle,h.F.INITIALIZING,1))}function w(t){return t&&"function"==typeof t.destroy}l.Z.getLogger("esri.core.accessorSupport.Properties");class O{constructor(t){this.host=t,this.propertiesByName=new Map,this.ctorArgs=null,this.destroyed=!1,this.lifecycle=h.F.INITIALIZING,this.store=new v,this._origin=d.s3.USER;const e=this.host.constructor.__accessorMetadata__;for(const t in e){const r=new g(t,e[t]);this.propertiesByName.set(t,r)}this.metadatas=e}initialize(){this.lifecycle=h.F.CONSTRUCTING}constructed(){this.lifecycle=h.F.CONSTRUCTED}destroy(){this.destroyed=!0;for(const[t,e]of this.propertiesByName){if(e.metadata.autoDestroy){const r=this.internalGet(t);r&&w(r)&&(r.destroy(),~e.observerObject.flags&y.v.NonNullable&&this._internalSet(e,null))}e.destroy()}}get initialized(){return this.lifecycle!==h.F.INITIALIZING}get(t){const e=this.propertiesByName.get(t);if(e.metadata.get)return e.getComputed(this);(0,p.it)(e.observerObject);const r=this.store;return r.has(t)?r.get(t):e.metadata.value}originOf(t){const e=this.store.originOf(t);if(void 0===e){const e=this.propertiesByName.get(t);if(void 0!==e&&e.observerObject.flags&y.v.HasDefaultValue)return"defaults"}return(0,d.x3)(e)}has(t){return!!this.propertiesByName.has(t)&&this.store.has(t)}keys(){return[...this.propertiesByName.keys()]}internalGet(t){const e=this.propertiesByName.get(t);if(m(e))return this.store.has(t)?this.store.get(t):e.metadata.value}internalSet(t,e){const r=this.propertiesByName.get(t);m(r)&&this._internalSet(r,e)}getDependsInfo(t,e,r){const n=this.propertiesByName.get(e);if(!m(n))return"";const s=new Set,i=(0,p.LJ)({onObservableAccessed:t=>s.add(t),onTrackingEnd:()=>{}},(()=>n.metadata.get?.call(t)));let o=`${r}${t.declaredClass.split(".").pop()}.${e}: ${i}\n`;if(0===s.size)return o;r+=" ";for(const t of s)t instanceof g&&(o+=`${r}${t.propertyName}: undefined\n`);return o}setAtOrigin(t,e,r){const n=this.propertiesByName.get(t);if(m(n))return this._setAtOrigin(n,e,r)}isOverridden(t){const e=this.propertiesByName.get(t);return void 0!==e&&!!(e.observerObject.flags&y.v.Overriden)}clearOverride(t){const e=this.propertiesByName.get(t),r=e?.observerObject;r&&r.flags&y.v.Overriden&&(r.flags&=~y.v.Overriden,e.notifyChange())}override(t,e){const r=this.propertiesByName.get(t);if(!b(r,0,e,this))return;const n=r.metadata.cast;if(n){const t=this._cast(n,e),{valid:r,value:s}=t;if(A.release(t),!r)return;e=s}r.observerObject.flags|=y.v.Overriden,this._internalSet(r,e)}set(t,e){const r=this.propertiesByName.get(t);if(!b(r,0,e,this))return;const n=r.metadata.cast;if(n){const t=this._cast(n,e),{valid:r,value:s}=t;if(A.release(t),!r)return;e=s}const s=r.metadata.set;s?s.call(this.host,e):this._internalSet(r,e)}setDefaultOrigin(t){this._origin=(0,d.M9)(t)}getDefaultOrigin(){return(0,d.x3)(this._origin)}notifyChange(t){const e=this.propertiesByName.get(t);void 0!==e&&e.notifyChange()}invalidate(t){const e=this.propertiesByName.get(t);void 0!==e&&e.invalidate()}commit(t){const e=this.propertiesByName.get(t);void 0!==e&&e.commit()}_internalSet(t,e){const r=this.lifecycle!==h.F.INITIALIZING?this._origin:d.s3.DEFAULTS;this._setAtOrigin(t,e,r)}_setAtOrigin(t,e,r){const n=this.store,s=t.propertyName;n.has(s,r)&&(0,c.fS)(e,n.get(s))&&~t.observerObject.flags&y.v.Overriden&&r===n.originOf(s)||(t.invalidate(),n.set(s,e,r),t.commit(),(0,p.mS)(this.host,t))}_cast(t,e){const r=A.acquire();return r.valid=!0,r.value=e,t&&(r.value=t.call(this.host,e,r)),r}}const A=new u.Z(class{constructor(){this.value=null,this.valid=!0}acquire(){this.valid=!0}release(){this.value=null}});var S,j,N=r(37697),T=r(26258),E=r(5600),k=r(52011);function C(t){if(null==t)return{value:t};if(Array.isArray(t))return{type:[t[0]],value:null};switch(typeof t){case"object":return t.constructor?.__accessorMetadata__||t instanceof Date?{type:t.constructor,value:t}:t;case"boolean":return{type:Boolean,value:t};case"string":return{type:String,value:t};case"number":return{type:Number,value:t};case"function":return{type:t,value:null};default:return}}const I=Symbol("Accessor-Handles"),M=Symbol("Accessor-Initialized");class U{static createSubclass(t={}){if(Array.isArray(t))throw new Error("Multi-inheritance unsupported since 4.16");const{properties:e,declaredClass:r,constructor:n}=t;delete t.declaredClass,delete t.properties,delete t.constructor;const s=this;class i extends s{constructor(...t){super(...t),this.inherited=null,n&&n.apply(this,t)}}(0,a.fp)(i.prototype);for(const e in t){const r=t[e];i.prototype[e]="function"==typeof r?function(...t){const n=this.inherited;let i;this.inherited=function(...t){if(s.prototype[e])return s.prototype[e].apply(this,t)};try{i=r.apply(this,t)}catch(t){throw this.inherited=n,t}return this.inherited=n,i}:t[e]}for(const t in e){const r=C(e[t]);(0,E.Cb)(r)(i.prototype,t)}return(0,k.j)(r)(i)}constructor(...t){if(this[S]=null,this[j]=!1,this.constructor===U)throw new Error("[accessor] cannot instantiate Accessor. This can be fixed by creating a subclass of Accessor");const e=new O(this);Object.defineProperty(this,"__accessor__",{enumerable:!1,value:e}),t.length>0&&this.normalizeCtorArgs&&(e.ctorArgs=this.normalizeCtorArgs.apply(this,t)),D.register(this,e.propertiesByName,this)}postscript(t){const e=this.__accessor__,r=e.ctorArgs||t;e.initialize(),r&&(this.set(r),e.ctorArgs=null),e.constructed(),this.initialize(),this[M]=!0}initialize(){}[i.F](){this[I]=(0,s.SC)(this[I])}destroy(){this.destroyed||(D.unregister(this),(0,T.BT)(this),this.__accessor__.destroy())}get constructed(){return this.__accessor__&&this.__accessor__.initialized||!1}get initialized(){return this[M]}get destroyed(){return this.__accessor__&&this.__accessor__.destroyed||!1}commitProperty(t){this.get(t)}get(t){return(0,o.U2)(this,t)}hasOwnProperty(t){return this.__accessor__?this.__accessor__.has(t):Object.prototype.hasOwnProperty.call(this,t)}keys(){return this.__accessor__?this.__accessor__.keys():[]}set(t,e){return(0,N.t)(this,t,e),this}watch(t,e,r){return(0,T.YP)(this,t,e,r)}own(t){this.addHandles(t)}addHandles(t,e){if(this.destroyed){const e=Array.isArray(t)?t:[t];for(const t of e)t.remove();return}let r=this[I];null==r&&(r=this[I]=new n.Z),r.add(t,e)}removeHandles(t){const e=this[I];null!=e&&e.remove(t)}removeAllHandles(){const t=this[I];null!=t&&t.removeAll()}hasHandles(t){const e=this[I];return null!=e&&e.has(t)}_override(t,e){void 0===e?this.__accessor__.clearOverride(t):this.__accessor__.override(t,e)}_clearOverride(t){return this.__accessor__.clearOverride(t)}_overrideIfSome(t,e){null==e?this.__accessor__.clearOverride(t):this.__accessor__.override(t,e)}_isOverridden(t){return this.__accessor__.isOverridden(t)}notifyChange(t){this.__accessor__.notifyChange(t)}_get(t){return this.__accessor__.internalGet(t)}_set(t,e){return this.__accessor__.internalSet(t,e),this}}S=I,j=M;const D=new FinalizationRegistry((t=>{for(const e of t.values())e.destroy()}))},3894:(t,e,r)=>{r.d(e,{Z:()=>i});var n=r(71143);function s(t){t.length=0}class i{constructor(t=50,e=50){this._pool=new n.Z(Array,void 0,s,e,t)}acquire(){return this._pool.acquire()}release(t){this._pool.release(t)}prune(){this._pool.prune(0)}static acquire(){return o.acquire()}static release(t){return o.release(t)}static prune(){o.prune()}}const o=new i(100)},61247:(t,e,r)=>{r.d(e,{Z:()=>i});var n=r(66374),s=r(70586);class i{constructor(){this._groups=new Map}destroy(){this.removeAll()}get size(){let t=0;return this._groups.forEach((e=>{t+=e.length})),t}add(t,e){if((0,n.TW)(t)){const r=this._getOrCreateGroup(e);for(const e of t)this._isHandle(e)&&r.push(e)}else this._isHandle(t)&&this._getOrCreateGroup(e).push(t);return this}forEach(t,e){if("function"==typeof t)this._groups.forEach((e=>e.forEach(t)));else{const r=this._getGroup(t);r&&e&&r.forEach(e)}}has(t){return this._groups.has(this._ensureGroupKey(t))}remove(t){if("string"!=typeof t&&(0,n.TW)(t)){for(const e of t)this.remove(e);return this}return this.has(t)?(this._removeAllFromGroup(this._getGroup(t)),this._groups.delete(this._ensureGroupKey(t)),this):this}removeAll(){return this._groups.forEach((t=>this._removeAllFromGroup(t))),this._groups.clear(),this}_isHandle(t){return t&&!!t.remove}_getOrCreateGroup(t){if(this.has(t))return this._getGroup(t);const e=[];return this._groups.set(this._ensureGroupKey(t),e),e}_getGroup(t){return(0,s.j0)(this._groups.get(this._ensureGroupKey(t)))}_ensureGroupKey(t){return t||"_default_"}_removeAllFromGroup(t){t.forEach((t=>t.remove()))}}},96674:(t,e,r)=>{r.d(e,{wq:()=>_,eC:()=>y});var n=r(43697),s=r(15923),i=r(70586),o=r(22974),a=r(31263);class c{constructor(){this._values=new Map,this.multipleOriginsSupported=!1}clone(t){const e=new c;return this._values.forEach(((r,n)=>{t&&t.has(n)||e.set(n,(0,o.d9)(r.value),r.origin)})),e}get(t,e){e=this._normalizeOrigin(e);const r=this._values.get(t);return null==e||r?.origin===e?r?.value:void 0}originOf(t){return this._values.get(t)?.origin??a.s3.USER}keys(t){t=this._normalizeOrigin(t);const e=[...this._values.keys()];return null==t?e:e.filter((e=>this._values.get(e)?.origin===t))}set(t,e,r){if((r=this._normalizeOrigin(r))===a.s3.DEFAULTS){const e=this._values.get(t);if(e&&null!=e.origin&&e.origin>r)return}this._values.set(t,new l(e,r))}delete(t,e){null!=(e=this._normalizeOrigin(e))&&this._values.get(t)?.origin!==e||this._values.delete(t)}has(t,e){return null!=(e=this._normalizeOrigin(e))?this._values.get(t)?.origin===e:this._values.has(t)}forEach(t){this._values.forEach((({value:e},r)=>t(e,r)))}_normalizeOrigin(t){if(null!=t)return t===a.s3.DEFAULTS?t:a.s3.USER}}class l{constructor(t,e){this.value=t,this.origin=e}}var u=r(41103),h=r(50549),f=r(1153),d=r(76169),p=r(52011);const y=t=>{let e=class extends t{constructor(...t){super(...t);const e=(0,i.j0)((0,f.vw)(this)),r=e.store,n=new c;e.store=n,(0,u.M)(e,r,n)}read(t,e){(0,h.i)(this,t,e)}write(t,e){return(0,d.c)(this,t??{},e)}toJSON(t){return this.write({},t)}static fromJSON(t,e){return g.call(this,t,e)}};return e=(0,n._)([(0,p.j)("esri.core.JSONSupport")],e),e.prototype.toJSON.isDefaultToJSON=!0,e};function g(t,e){if(!t)return null;if(t.declaredClass)throw new Error("JSON object is already hydrated");const r=new this;return r.read(t,e),r}let _=class extends(y(s.Z)){};_=(0,n._)([(0,p.j)("esri.core.JSONSupport")],_)},30175:(t,e,r)=>{function n(t,e,r){const n=t.get(e);if(void 0!==n)return n;const s=r();return t.set(e,s),s}r.d(e,{s1:()=>n})},71143:(t,e,r)=>{r.d(e,{Z:()=>n});class n{constructor(t,e,r,n=1,s=0){if(this._ctor=t,this._acquireFunction=e,this._releaseFunction=r,this.allocationSize=n,this._pool=new Array(s),this._initialSize=s,this._ctor)for(let t=0;t<s;t++)this._pool[t]=new this._ctor;this.allocationSize=Math.max(n,1)}destroy(){this.prune(0)}acquire(...t){let e;if(n.test.disabled)e=new this._ctor;else{if(0===this._pool.length){const t=this.allocationSize;for(let e=0;e<t;e++)this._pool[e]=new this._ctor}e=this._pool.pop()}return this._acquireFunction?this._acquireFunction(e,...t):function(t){return t&&t.acquire&&"function"==typeof t.acquire}(e)&&e.acquire(...t),e}release(t){var e;t&&!n.test.disabled&&(this._releaseFunction?this._releaseFunction(t):(e=t)&&e.release&&"function"==typeof e.release&&t.release(),this._pool.push(t))}prune(t=this._initialSize){if(!(t>=this._pool.length)){for(let e=t;e<this._pool.length;++e){const t=this._pool[e];this._dispose(t)}this._pool.length=t}}_dispose(t){t.dispose&&"function"==typeof t.dispose&&t.dispose()}}n.test={disabled:!1}},54790:(t,e,r)=>{r.d(e,{Z:()=>n});class n{constructor(t,e=30){this.name=t,this._counter=0,this._samples=new Array(e)}record(t){null!=t&&(this._samples[++this._counter%this._samples.length]=t)}get median(){return this._samples.slice().sort(((t,e)=>t-e))[Math.floor(this._samples.length/2)]}get average(){return this._samples.reduce(((t,e)=>t+e),0)/this._samples.length}get last(){return this._samples[this._counter%this._samples.length]}}},44553:(t,e,r)=>{r.d(e,{Z:()=>o});var n,s=r(67676);!function(t){const e=(t,e,r,n)=>{let s=e,i=e;const o=r>>>1,a=t[s-1];for(;i<=o;){i=s<<1,i<r&&n(t[i-1],t[i])<0&&++i;const e=t[i-1];if(n(e,a)<=0)break;t[s-1]=e,s=i}t[s-1]=a},r=(t,e)=>t<e?-1:t>e?1:0;t.sort=function(t,n,s,i){void 0===n&&(n=0),void 0===s&&(s=t.length),void 0===i&&(i=r);for(let r=s>>>1;r>n;r--)e(t,r,s,i);const o=n+1;for(let r=s-1;r>n;r--){const s=t[n];t[n]=t[r],t[r]=s,e(t,o,r,i)}},t.iterableSort=function*(t,n,s,i){void 0===n&&(n=0),void 0===s&&(s=t.length),void 0===i&&(i=r);for(let r=s>>>1;r>n;r--)e(t,r,s,i),yield;const o=n+1;for(let r=s-1;r>n;r--){const s=t[n];t[n]=t[r],t[r]=s,e(t,o,r,i),yield}}}(n||(n={}));const i=n;class o{constructor(t){this.data=[],this._length=0,this._allocator=void 0,this._deallocator=()=>null,this._shrink=()=>{},this._hint=new s.SO,t&&(t.initialSize&&(this.data=new Array(t.initialSize)),t.allocator&&(this._allocator=t.allocator),void 0!==t.deallocator&&(this._deallocator=t.deallocator),t.shrink&&(this._shrink=()=>a(this)))}toArray(){return this.data.slice(0,this.length)}filter(t){const e=new Array;for(let r=0;r<this._length;r++){const n=this.data[r];t(n)&&e.push(n)}return e}getItemAt(t){if(!(t<0||t>=this._length))return this.data[t]}includes(t,e){const r=this.data.indexOf(t,e);return-1!==r&&r<this.length}get length(){return this._length}set length(t){if(t>this._length){if(this._allocator){for(;this._length<t;)this.data[this._length++]=this._allocator(this.data[this._length]);return}this._length=t}else{if(this._deallocator)for(let e=t;e<this._length;++e)this.data[e]=this._deallocator(this.data[e]);this._length=t,this._shrink()}}clear(){this.length=0}prune(){this.clear(),this.data=[]}push(t){this.data[this._length++]=t}pushArray(t,e=t.length){for(let r=0;r<e;r++)this.data[this._length++]=t[r]}fill(t,e){for(let r=0;r<e;r++)this.data[this._length++]=t}pushNew(){this._allocator&&(this.data[this.length]=this._allocator(this.data[this.length]));const t=this.data[this._length];return++this._length,t}unshift(t){this.data.unshift(t),this._length++,a(this)}pop(){if(0===this.length)return;const t=this.data[this.length-1];return this.length=this.length-1,this._shrink(),t}remove(t){const e=(0,s.cq)(this.data,t,this.length,this._hint);if(-1!==e)return this.data.splice(e,1),this.length=this.length-1,t}removeUnordered(t){return this.removeUnorderedIndex((0,s.cq)(this.data,t,this.length,this._hint))}removeUnorderedIndex(t){if(!(t>=this.length||t<0))return this.swapElements(t,this.length-1),this.pop()}removeUnorderedMany(t,e=t.length,r){this.length=(0,s.FY)(this.data,t,this.length,e,this._hint,r),this._shrink()}front(){if(0!==this.length)return this.data[0]}back(){if(0!==this.length)return this.data[this.length-1]}swapElements(t,e){if(t>=this.length||e>=this.length||t===e)return;const r=this.data[t];this.data[t]=this.data[e],this.data[e]=r}sort(t){i.sort(this.data,0,this.length,t)}iterableSort(t){return i.iterableSort(this.data,0,this.length,t)}some(t,e){for(let r=0;r<this.length;++r)if(t.call(e,this.data[r],r,this.data))return!0;return!1}find(t,e){for(let r=0;r<this.length;++r){const n=this.data[r];if(t.call(e,n,r))return n}}filterInPlace(t,e){let r=0;for(let n=0;n<this._length;++n){const s=this.data[n];t.call(e,s,n,this.data)&&(this.data[n]=this.data[r],this.data[r]=s,r++)}if(this._deallocator)for(let t=r;t<this._length;t++)this.data[t]=this._deallocator(this.data[t]);return this._length=r,this._shrink(),this}forAll(t,e){const r=this.length,n=this.data;for(let s=0;s<r;++s)t.call(e,n[s],s,n)}forEach(t,e){for(let r=0;r<this.length;++r)t.call(e,this.data[r],r,this.data)}map(t,e){const r=new Array(this.length);for(let n=0;n<this.length;++n)r[n]=t.call(e,this.data[n],n,this.data);return r}reduce(t,e){let r=e;for(let e=0;e<this.length;++e)r=t(r,this.data[e],e,this.data);return r}has(t){const e=this.length,r=this.data;for(let n=0;n<e;++n)if(r[n]===t)return!0;return!1}}function a(t){t.data.length>1.5*t.length&&(t.data.length=Math.floor(1.1*t.length))}},20941:(t,e,r)=>{r.d(e,{Z:()=>s});var n=r(58896);class s extends n.Z{constructor(t,e,r){super(t,e,r)}}s.prototype.type="warning"},42100:(t,e,r)=>{r.d(e,{s:()=>i});var n=r(67676);class s{constructor(t,e){this._observers=t,this._observer=e}remove(){(0,n.Od)(this._observers,this._observer)}}class i{constructor(){this._observers=null,this.destroyed=!1}observe(t){if(this.destroyed||t.destroyed)return o;null==this._observers&&(this._observers=[]);const e=this._observers;let r=!1,n=!1;const i=e.length;for(let s=0;s<i;++s){const i=e[s];if(i.destroyed)n=!0;else if(i===t){r=!0;break}}return r||(e.push(t),n&&this._removeDestroyedObservers()),new s(e,t)}_removeDestroyedObservers(){const t=this._observers;if(!t||0===t.length)return;const e=t.length;let r=0;for(let n=0;n<e;++n){for(;n+r<e&&t[n+r].destroyed;)++r;if(r>0){if(!(n+r<e))break;t[n]=t[n+r]}}t.length=e-r}destroy(){if(this.destroyed)return;this.destroyed=!0;const t=this._observers;if(null!=t){for(const e of t)e.onCommitted();this._observers=null}}}const o={remove:()=>{}}},31263:(t,e,r)=>{r.d(e,{M9:()=>a,Wm:()=>l,kk:()=>o,s3:()=>n,x3:()=>c});var n,s,i=r(70586);(s=n||(n={}))[s.DEFAULTS=0]="DEFAULTS",s[s.COMPUTED=1]="COMPUTED",s[s.SERVICE=2]="SERVICE",s[s.PORTAL_ITEM=3]="PORTAL_ITEM",s[s.WEB_SCENE=4]="WEB_SCENE",s[s.WEB_MAP=5]="WEB_MAP",s[s.USER=6]="USER";const o=n.USER+1;function a(t){switch(t){case"defaults":return n.DEFAULTS;case"service":return n.SERVICE;case"portal-item":return n.PORTAL_ITEM;case"web-scene":return n.WEB_SCENE;case"web-map":return n.WEB_MAP;case"user":return n.USER;default:return null}}function c(t){switch(t){case n.DEFAULTS:return"defaults";case n.SERVICE:return"service";case n.PORTAL_ITEM:return"portal-item";case n.WEB_SCENE:return"web-scene";case n.WEB_MAP:return"web-map";case n.USER:return"user"}return(0,i.j0)(void 0)}function l(t){return c(t)}},88022:(t,e,r)=>{r.d(e,{F:()=>n});const n=Symbol("Accessor-beforeDestroy")},90578:(t,e,r)=>{r.d(e,{p:()=>c});var n=r(75215),s=r(7628);const i=Object.prototype.toString;function o(t){const e="__accessorMetadata__"in t?(0,n.se)(t):t;return function(...t){if(t.push(e),"number"==typeof t[2])throw new Error("Using @cast has parameter decorator is not supported since 4.16");return a.apply(this,t)}}function a(t,e,r,n){(0,s.Oe)(t,e).cast=n}function c(...t){if(3!==t.length||"string"!=typeof t[1])return 1===t.length&&"[object Function]"===i.call(t[0])?o(t[0]):1===t.length&&"string"==typeof t[0]?function(t){return(e,r)=>{(0,s.Oe)(e,t).cast=e[r]}}(t[0]):void 0}},5600:(t,e,r)=>{r.d(e,{CJ:()=>l,Cb:()=>c,Eg:()=>u});var n=r(92604),s=r(75215),i=r(67723),o=r(7628),a=r(37697);function c(t={}){return(e,r)=>{if(e===Function.prototype)throw new Error(`Inappropriate use of @property() on a static field: ${e.name}.${r}. Accessor does not support static properties.`);const c=Object.getOwnPropertyDescriptor(e,r),l=(0,o.Oe)(e,r);c&&(c.get||c.set?(l.get=c.get||l.get,l.set=c.set||l.set):"value"in c&&("value"in t&&n.Z.getLogger("esri.core.accessorSupport.decorators.property").warn(`@property() will redefine the value of "${r}" on "${e.constructor.name}" already defined in the metadata`,t),l.value=t.value=c.value)),null!=t.readOnly&&(l.readOnly=t.readOnly);const h=t.aliasOf;if(h){const t="string"==typeof h?h:h.source,e="string"==typeof h?null:!0===h.overridable;let n;l.dependsOn=[t],l.get=function(){let e=(0,i.U2)(this,t);if("function"==typeof e){n||(n=t.split(".").slice(0,-1).join("."));const r=(0,i.U2)(this,n);r&&(e=e.bind(r))}return e},l.readOnly||(l.set=e?function(t){this._override(r,t)}:function(e){(0,a.t)(this,t,e)})}const f=t.type,d=t.types;l.cast||(f?l.cast=function(t){let e=0,r=t;if((0,s.AY)(t))return(0,s.sY)(t);for(;Array.isArray(r)&&1===r.length&&"string"!=typeof r[0]&&"number"!=typeof r[0];)r=r[0],e++;const n=r;if((0,s.gB)(n))return 0===e?(0,s.i$)(n):(0,s.Iu)((0,s.i$)(n),e);if(1===e)return(0,s.rY)(n);if(e>1)return(0,s.di)(n,e);const i=t;return i.from?i.from:(0,s.se)(i)}(f):d&&(Array.isArray(d)?l.cast=(0,s.Ls)((0,s.N7)(d[0])):l.cast=(0,s.N7)(d))),(0,o.tz)(l,t),t.range&&(l.cast=u(l.cast,t.range))}}function l(t,e,r){const n=(0,o.Oe)(t,r);n.json||(n.json={});let s=n.json;return void 0!==e&&(s.origins||(s.origins={}),s.origins[e]||(s.origins[e]={}),s=s.origins[e]),s}function u(t,e){return r=>{let n=+t(r);return null!=e.step&&(n=Math.round(n/e.step)*e.step),null!=e.min&&(n=Math.max(e.min,n)),null!=e.max&&(n=Math.min(e.max,n)),n}}},52011:(t,e,r)=>{r.d(e,{j:()=>u}),r(80442);var n=r(88022),s=r(97831),i=r(7628),o=r(58971),a=r(53906);const c=new Set,l=new Set;function u(t){return e=>{e.prototype.declaredClass=t,f(e);const r=[],s=[];let o=e.prototype;for(;o;)o.hasOwnProperty("initialize")&&!c.has(o.initialize)&&(c.add(o.initialize),r.push(o.initialize)),o.hasOwnProperty("destroy")&&!l.has(o.destroy)&&(l.add(o.destroy),s.push(o.destroy)),o=Object.getPrototypeOf(o);c.clear(),l.clear();class a extends e{constructor(...t){if(super(...t),this.constructor===a&&"function"==typeof this.postscript){if(r.length&&Object.defineProperty(this,"initialize",{enumerable:!1,configurable:!0,value(){for(let t=r.length-1;t>=0;t--)r[t].call(this)}}),s.length){let t=!1;const e=this[n.F];Object.defineProperty(this,"destroy",{enumerable:!1,configurable:!0,value(){if(!t){t=!0,e.call(this);for(let t=0;t<s.length;t++)s[t].call(this)}}})}this.postscript(...t)}}}return a.__accessorMetadata__=(0,i.fp)(e.prototype),a.prototype.declaredClass=t,a}}function h(t,e){return null==e.get?function(){const e=this.__accessor__,r=e.propertiesByName.get(t);if(void 0===r)return;(0,o.it)(r.observerObject);const n=e.store;return n.has(t)?n.get(t):r.metadata.value}:function(){const e=this.__accessor__,r=e.propertiesByName.get(t);if(void 0!==r)return r.getComputed(e)}}function f(t){const e=t.prototype,r=(0,i.fp)(e),n={};for(const t of Object.getOwnPropertyNames(r)){const e=r[t];(0,a.OM)(e),n[t]={enumerable:!0,configurable:!0,get:h(t,e),set(r){const n=this.__accessor__;if(void 0!==n){if(!Object.isFrozen(this)){if(n.initialized&&e.readOnly)throw new TypeError(`[accessor] cannot assign to read-only property '${t}' of ${this.declaredClass}`);if(n.lifecycle===s.F.CONSTRUCTED&&e.constructOnly)throw new TypeError(`[accessor] cannot assign to construct-only property '${t}' of ${this.declaredClass}`);n.set(t,r)}}else Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:r})}}}Object.defineProperties(t.prototype,n)}},41103:(t,e,r)=>{r.d(e,{M:()=>s});var n=r(31263);function s(t,e,r){e.keys().forEach((t=>{r.set(t,e.get(t),n.s3.DEFAULTS)}));const s=t.metadatas;Object.keys(s).forEach((e=>{t.internalGet(e)&&r.set(e,t.internalGet(e),n.s3.DEFAULTS)}))}},75215:(t,e,r)=>{r.d(e,{AY:()=>C,Iu:()=>A,Ls:()=>b,N7:()=>T,TJ:()=>g,V5:()=>k,Zs:()=>c,di:()=>S,gB:()=>j,i$:()=>N,q9:()=>l,rY:()=>w,sY:()=>I,se:()=>m,vU:()=>u,z8:()=>E}),r(80442);var n=r(92604),s=r(30175);const i=n.Z.getLogger("esri.core.accessorSupport.ensureTypes");function o(t){return null==t?t:new Date(t)}function a(t){return null==t?t:!!t}function c(t){return null==t?t:t.toString()}function l(t){return null==t?t:(t=parseFloat(t),isNaN(t)?0:t)}function u(t){return null==t?t:Math.round(parseFloat(t))}function h(t){return t&&t.constructor&&void 0!==t.constructor.__accessorMetadata__}function f(t,e){return null!=e&&t&&!(e instanceof t)}function d(t){return t&&"isCollection"in t}function p(t){return t&&t.Type?"function"==typeof t.Type?t.Type:t.Type.base:null}function y(t,e){return!!h(e)&&(i.error("Accessor#set","Assigning an instance of '"+(e.declaredClass||"unknown")+"' which is not a subclass of '"+_(t)+"'"),!0)}function g(t,e){return null==e?e:d(t)?function(t,e){if(!e||!e.constructor||!d(e.constructor))return y(t,e)?e:new t(e);const r=p(t.prototype.itemType),n=p(e.constructor.prototype.itemType);return r?n?r===n?e:r.prototype.isPrototypeOf(n.prototype)?new t(e):(y(t,e),e):new t(e):e}(t,e):f(t,e)?y(t,e)?e:new t(e):e}function _(t){return t&&t.prototype&&t.prototype.declaredClass||"unknown"}const v=new WeakMap;function m(t,e){const r=function(t){switch(t){case Number:return l;case E:return u;case Boolean:return a;case String:return c;case Date:return o;default:return(0,s.s1)(v,t,(()=>g.bind(null,t)))}}(t);return 1===arguments.length?r:r(e)}function b(t,e,r){return 1===arguments.length?b.bind(null,t):e?Array.isArray(e)?e.map((e=>t(e,r))):[t(e,r)]:e}function w(t,e){return 1===arguments.length?b(m.bind(null,t)):b(m.bind(null,t),e)}function O(t,e,r){return 0!==e&&Array.isArray(r)?r.map((r=>O(t,e-1,r))):t(r)}function A(t,e,r){if(2===arguments.length)return A.bind(null,t,e);if(!r)return r;let n=e,s=r=O(t,e,r);for(;n>0&&Array.isArray(s);)n--,s=s[0];if(void 0!==s)for(let t=0;t<n;t++)r=[r];return r}function S(t,e,r){return 2===arguments.length?A(m.bind(null,t),e):A(m.bind(null,t),e,r)}function j(t){return!!Array.isArray(t)&&!t.some((e=>{const r=typeof e;return!("string"===r||"number"===r||"function"===r&&t.length>1)}))}function N(t,e){if(2===arguments.length)return N(t).call(null,e);const r=new Set,n=t.filter((t=>"function"!=typeof t)),s=t.filter((t=>"function"==typeof t));for(const e of t)"string"!=typeof e&&"number"!=typeof e||r.add(e);let o=null,a=null;return(t,e)=>{if(null==t)return t;const c=typeof t,l="string"===c||"number"===c;return l&&(r.has(t)||s.some((t=>"string"===c&&t===String||"number"===c&&t===Number)))||"object"===c&&s.some((e=>!f(t,e)))?t:(l&&n.length?(o||(o=n.map((t=>"string"==typeof t?`'${t}'`:`${t}`)).join(", ")),i.error("Accessor#set",`'${t}' is not a valid value for this property, only the following values are valid: ${o}`)):"object"==typeof t&&s.length?(a||(a=s.map((t=>_(t))).join(", ")),i.error("Accessor#set",`'${t}' is not a valid value for this property, value must be one of ${a}`)):i.error("Accessor#set",`'${t}' is not a valid value for this property`),e&&(e.valid=!1),null)}}function T(t,e){if(2===arguments.length)return T(t).call(null,e);const r={},n=[],s=[];for(const e in t.typeMap){const i=t.typeMap[e];r[e]=m(i),n.push(_(i)),s.push(e)}const o=()=>`'${n.join("', '")}'`,a=()=>`'${s.join("', '")}'`,c="string"==typeof t.key?e=>e[t.key]:t.key;return e=>{if(t.base&&!f(t.base,e))return e;if(null==e)return e;const n=c(e)||t.defaultKeyValue,s=r[n];if(!s)return i.error("Accessor#set",`Invalid property value, value needs to be one of ${o()}, or a plain object that can autocast (having .type = ${a()})`),null;if(!f(t.typeMap[n],e))return e;if("string"==typeof t.key&&!h(e)){const r={};for(const n in e)n!==t.key&&(r[n]=e[n]);return s(r)}return s(e)}}class E{}const k={native:t=>({type:"native",value:t}),array:t=>({type:"array",value:t}),oneOf:t=>({type:"one-of",values:t})};function C(t){if(!t||!("type"in t))return!1;switch(t.type){case"native":case"array":case"one-of":return!0}return!1}function I(t){switch(t.type){case"native":return m(t.value);case"array":return b(I(t.value));case"one-of":return function(t){let e=null;return(r,n)=>U(r,t)?r:(null==e&&(e=M(t)),i.error("Accessor#set",`Invalid property value, value needs to be of type ${e}`),n&&(n.valid=!1),null)}(t);default:return null}}function M(t){switch(t.type){case"native":switch(t.value){case Number:return"number";case String:return"string";case Boolean:return"boolean";case E:return"integer";case Date:return"date";default:return _(t.value)}case"array":return`array of ${M(t.value)}`;case"one-of":{const e=t.values.map((t=>M(t)));return`one of ${e.slice(0,e.length-1)} or ${e[e.length-1]}`}}return"unknown"}function U(t,e){if(null==t)return!0;switch(e.type){case"native":switch(e.value){case Number:case E:return"number"==typeof t;case Boolean:return"boolean"==typeof t;case String:return"string"==typeof t}return t instanceof e.value;case"array":return!!Array.isArray(t)&&!t.some((t=>!U(t,e.value)));case"one-of":return e.values.some((e=>U(t,e)))}}},53906:(t,e,r)=>{r.d(e,{hk:()=>f,HS:()=>u,Ah:()=>h,OM:()=>g});var n=r(75215),s=r(63213);function i(t){if(t.json||(t.json={}),a(t.json),c(t.json),o(t.json),t.json.origins)for(const e in t.json.origins)a(t.json.origins[e]),c(t.json.origins[e]),o(t.json.origins[e]);return!0}function o(t){t.name&&(t.read&&"object"==typeof t.read?void 0===t.read.source&&(t.read.source=t.name):t.read={source:t.name},t.write&&"object"==typeof t.write?void 0===t.write.target&&(t.write.target=t.name):t.write={target:t.name})}function a(t){"boolean"==typeof t.read?t.read={enabled:t.read}:"function"==typeof t.read?t.read={enabled:!0,reader:t.read}:t.read&&"object"==typeof t.read&&void 0===t.read.enabled&&(t.read.enabled=!0)}function c(t){"boolean"==typeof t.write?t.write={enabled:t.write}:"function"==typeof t.write?t.write={enabled:!0,writer:t.write}:t.write&&"object"==typeof t.write&&void 0===t.write.enabled&&(t.write.enabled=!0)}var l=r(827);function u(t,e){return f(t,"read",e)}function h(t,e){return f(t,"write",e)}function f(t,e,r){let n=t&&t.json;if(t&&t.json&&t.json.origins&&r){const s=r.origin&&t.json.origins[r.origin];s&&("any"===e||e in s)&&(n=s)}return n}function d(t){return t.type?p(t):y(t)}function p(t){if(!t.type)return;let e=0,r=t.type;for(;Array.isArray(r)&&!(0,n.gB)(r);)r=r[0],e++;return{type:r,ndimArray:e}}function y(t){if(!t.types)return;let e=0,r=t.types;for(;Array.isArray(r);)r=r[0],e++;return{types:r,ndimArray:e}}function g(t){i(t)&&(function(t){if(t.json&&t.json.origins){const e=t.json.origins,r={"web-document":["web-scene","web-map"]};for(const t in r)if(e[t]){const n=e[t];r[t].forEach((t=>{e[t]=n})),delete e[t]}}}(t),function(t){const e=function(t){return t.json.types?y(t.json):t.type?p(t):y(t)}(t);if(t.json.origins)for(const r in t.json.origins){const n=t.json.origins[r],i=n.types?d(n):e;(0,s.U)(i,n,!1),n.types&&!n.write&&t.json.write&&t.json.write.enabled&&(n.write={...t.json.write}),(0,l.U)(i,n)}(0,s.U)(e,t.json,!0),(0,l.U)(e,t.json)}(t))}},63213:(t,e,r)=>{r.d(e,{U:()=>l,d:()=>u});var n=r(92604),s=r(78286),i=r(20941),o=r(7628),a=r(14062);const c=n.Z.getLogger("esri.core.accessorSupport.extensions.serializableProperty.reader");function l(t,e,r){t&&(!r&&!e.read||e.read?.reader||!1===e.read?.enabled||function(t){return"types"in t?g(t.types):y(t.type)}(t)&&(0,s.RB)("read.reader",u(t),e))}function u(t){const e=t.ndimArray??0;if(e>1)return function(t){const e=h(t),r=f.bind(null,e),n=t.ndimArray??0;return(t,e,s)=>{if(null==t)return t;t=r(t,s,n);let i=n,o=t;for(;i>0&&Array.isArray(o);)i--,o=o[0];if(void 0!==o)for(let e=0;e<i;e++)t=[t];return t}}(t);if(1===e)return d(t);if("type"in t&&p(t.type)){const e=t.type.prototype?.itemType?.Type,r=d("function"==typeof e?{type:e}:{types:e});return(e,n,s)=>{const i=r(e,n,s);return i?new t.type(i):i}}return h(t)}function h(t){return"type"in t?function(t){return t.prototype.read?(e,r,n)=>{if(null==e)return e;const s=typeof e;if("object"!==s)return void c.error(`Expected JSON value of type 'object' to deserialize type '${t.prototype.declaredClass}', but got '${s}'`);const i=new t;return i.read(e,n),i}:t.fromJSON}(t.type):function(t){let e=null;const r=t.errorContext??"type";return(n,s,a)=>{if(null==n)return n;const l=typeof n;if("object"!==l)return void c.error(`Expected JSON value of type 'object' to deserialize, but got '${l}'`);e||(e=function(t){const e={};for(const r in t.typeMap){const n=t.typeMap[r],s=(0,o.fp)(n.prototype);if("function"==typeof t.key)continue;const i=s[t.key];if(!i)continue;i.json?.type&&Array.isArray(i.json.type)&&1===i.json.type.length&&"string"==typeof i.json.type[0]&&(e[i.json.type[0]]=n);const a=i.json?.write;if(!a||!a.writer){e[r]=n;continue}const c=a.target,l="string"==typeof c?c:t.key,u={};a.writer(r,u,l),u[l]&&(e[u[l]]=n)}return e}(t));const u=t.key;if("string"!=typeof u)return;const h=n[u],f=h?e[h]:t.defaultKeyValue?t.typeMap[t.defaultKeyValue]:void 0;if(!f){const t=`Type '${h||"unknown"}' is not supported`;return a&&a.messages&&n&&a.messages.push(new i.Z(`${r}:unsupported`,t,{definition:n,context:a})),void c.error(t)}const d=new f;return d.read(n,a),d}}(t.types)}function f(t,e,r,n){return 0!==n&&Array.isArray(e)?e.map((e=>f(t,e,r,n-1))):t(e,void 0,r)}function d(t){const e=h(t);return(t,r,n)=>{if(null==t)return t;if(Array.isArray(t)){const r=[];for(const s of t){const t=e(s,void 0,n);void 0!==t&&r.push(t)}return r}const s=e(t,void 0,n);return void 0!==s?[s]:void 0}}function p(t){if(!(0,a.u)(t))return!1;const e=t.prototype.itemType;return!(!e||!e.Type)&&("function"==typeof e.Type?y(e.Type):g(e.Type))}function y(t){return!Array.isArray(t)&&!!t&&t.prototype&&("read"in t.prototype||"fromJSON"in t||p(t))}function g(t){for(const e in t.typeMap)if(!y(t.typeMap[e]))return!1;return!0}},14062:(t,e,r)=>{function n(t){return!!t&&t.prototype&&t.prototype.declaredClass&&0===t.prototype.declaredClass.indexOf("esri.core.Collection")}r.d(e,{u:()=>n})},827:(t,e,r)=>{r.d(e,{U:()=>a,k:()=>h});var n=r(20102),s=r(92604),i=r(78286),o=r(14062);function a(t,e){if(!e.write||e.write.writer||!1===e.write.enabled&&!e.write.overridePolicy)return;const r=t?.ndimArray??0;t&&(1===r||"type"in t&&(0,o.u)(t.type))?e.write.writer=f:r>1?e.write.writer=function(t){return(e,r,n,s)=>{let o;if(null===e)o=null;else{o=d(e,s,t);let r=t,n=o;for(;r>0&&Array.isArray(n);)r--,n=n[0];if(void 0!==n)for(let t=0;t<r;t++)o=[o]}(0,i.RB)(n,o,r)}}(r):e.types?Array.isArray(e.types)?e.write.writer=function(t){return(e,r,n,s)=>e&&Array.isArray(e)?l(e.filter((e=>c(e,t,s))),r,n,s):l(e,r,n,s)}(e.types[0]):e.write.writer=function(t){return(e,r,n,s)=>e?c(e,t,s)?l(e,r,n,s):void 0:l(e,r,n,s)}(e.types):e.write.writer=l}function c(t,e,r){for(const r in e.typeMap)if(t instanceof e.typeMap[r])return!0;if(r?.messages){const i=e.errorContext??"type",o=`Values of type '${("function"!=typeof e.key?t[e.key]:t.declaredClass)??"Unknown"}' cannot be written`;r&&r.messages&&t&&r.messages.push(new n.Z(`${i}:unsupported`,o,{definition:t,context:r})),s.Z.getLogger("esri.core.accessorSupport.extensions.serializableProperty.writer").error(o)}return!1}function l(t,e,r,n){(0,i.RB)(r,u(t,n),e)}function u(t,e){return t&&"function"==typeof t.write?t.write({},e):t&&"function"==typeof t.toJSON?t.toJSON():"number"==typeof t?h(t):t}function h(t){return t===-1/0?-Number.MAX_VALUE:t===1/0?Number.MAX_VALUE:isNaN(t)?null:t}function f(t,e,r,n){let s;null===t?s=null:t&&"function"==typeof t.map?(s=t.map((t=>u(t,n))),"function"==typeof s.toArray&&(s=s.toArray())):s=[u(t,n)],(0,i.RB)(r,s,e)}function d(t,e,r){return 0!==r&&Array.isArray(t)?t.map((t=>d(t,e,r-1))):u(t,e)}},67723:(t,e,r)=>{r.d(e,{$z:()=>o,Gg:()=>c,U2:()=>a});var n=r(1153);function s(t,e){const r="?"===t[t.length-1]?t.slice(0,-1):t;if(null!=e.getItemAt||Array.isArray(e)){const t=parseInt(r,10);if(!isNaN(t))return Array.isArray(e)?e[t]:e.getItemAt(t)}const s=(0,n.vw)(e);return(0,n.b6)(s,r)?s.get(r):e[r]}function i(t,e,r){if(null==t)return t;const n=s(e[r],t);return!n&&r<e.length-1?void 0:r===e.length-1?n:i(n,e,r+1)}function o(t,e,r=0){return"string"!=typeof e||e.includes(".")?i(t,(0,n.NI)(e),r):s(e,t)}function a(t,e){return o(t,e)}function c(t,e){return void 0!==o(e,t)}},97831:(t,e,r)=>{var n;r.d(e,{F:()=>n}),function(t){t[t.INITIALIZING=0]="INITIALIZING",t[t.CONSTRUCTING=1]="CONSTRUCTING",t[t.CONSTRUCTED=2]="CONSTRUCTED"}(n||(n={}))},7628:(t,e,r)=>{r.d(e,{Oe:()=>o,fp:()=>i,tz:()=>a});var n=r(22974),s=r(1153);function i(t){let e=t.constructor.__accessorMetadata__;const r=Object.prototype.hasOwnProperty.call(t.constructor,"__accessorMetadata__");if(e){if(!r){e=Object.create(e);for(const t in e)e[t]=(0,n.d9)(e[t]);Object.defineProperty(t.constructor,"__accessorMetadata__",{value:e,enumerable:!1,configurable:!0,writable:!0})}}else e={},Object.defineProperty(t.constructor,"__accessorMetadata__",{value:e,enumerable:!1,configurable:!0,writable:!0});return t.constructor.__accessorMetadata__}function o(t,e){const r=i(t);let n=r[e];return n||(n=r[e]={}),n}function a(t,e){return(0,s.TS)(t,e,l)}const c=/^(?:[^.]+\.)?(?:value|type|(?:json\.type|json\.origins\.[^.]\.type))$/;function l(t){return c.test(t)?"replace":"merge"}},50549:(t,e,r)=>{r.d(e,{$:()=>h,i:()=>u});var n=r(67723),s=r(1153),i=r(53906);function o(t,e,r){if(!t||!t.read||!1===t.read.enabled||!t.read.source)return!1;const s=t.read.source;if("string"==typeof s){if(s===e)return!0;if(s.includes(".")&&0===s.indexOf(e)&&(0,n.Gg)(s,r))return!0}else for(const t of s){if(t===e)return!0;if(t.includes(".")&&0===t.indexOf(e)&&(0,n.Gg)(t,r))return!0}return!1}function a(t,e,r,n,s){let a=(0,i.HS)(e[r],s);(function(t){return t&&(!t.read||!1!==t.read.enabled&&!t.read.source)})(a)&&(t[r]=!0);for(const c of Object.getOwnPropertyNames(e))a=(0,i.HS)(e[c],s),o(a,r,n)&&(t[c]=!0)}function c(t,e,r,n){const s=r.metadatas,o=(0,i.hk)(s[e],"any",n),a=o&&o.default;if(void 0===a)return;const c="function"==typeof a?a.call(t,e,n):a;void 0!==c&&r.set(e,c)}const l={origin:"service"};function u(t,e,r=l){if(!e||"object"!=typeof e)return;const o=(0,s.vw)(t),u=o.metadatas,h={};for(const t of Object.getOwnPropertyNames(e))a(h,u,t,e,r);o.setDefaultOrigin(r.origin);for(const s of Object.getOwnPropertyNames(h)){const a=(0,i.HS)(u[s],r).read,c=a&&a.source;let l;l=c&&"string"==typeof c?(0,n.$z)(e,c):e[s],a&&a.reader&&(l=a.reader.call(t,l,e,r)),void 0!==l&&o.set(s,l)}if(!r||!r.ignoreDefaults){o.setDefaultOrigin("defaults");for(const e of Object.getOwnPropertyNames(u))h[e]||c(t,e,o,r)}o.setDefaultOrigin("user")}function h(t,e,r,n=l){const s={...n,messages:[]};r(s),s.messages?.forEach((e=>{"warning"!==e.type||t.loaded?n&&n.messages&&n.messages.push(e):t.loadWarnings.push(e)}))}},37697:(t,e,r)=>{r.d(e,{t:()=>o});var n=r(20102),s=r(80442),i=(r(92604),r(67723));function o(t,e,r){if(t&&e)if("object"==typeof e)for(const r of Object.getOwnPropertyNames(e))o(t,r,e[r]);else{if(e.includes(".")){const n=e.split("."),s=n.splice(n.length-1,1)[0];return void o((0,i.U2)(t,n),s,r)}const a=t.__accessor__;null!=a&&function(t,e){if((0,s.Z)("esri-unknown-property-errors")&&!function(t,e){return null!=e.metadatas[t]}(t,e))throw new n.Z("set:unknown-property",function(t,e){return"setting unknown property '"+t+"' on instance of "+e.host.declaredClass}(t,e))}(e,a),t[e]=r}}},58971:(t,e,r)=>{r.d(e,{GF:()=>m,LJ:()=>f,gb:()=>d,it:()=>l,mS:()=>_}),r(80442);var n=r(92604),s=r(1153),i=r(44550);const o={onObservableAccessed:()=>{},onTrackingEnd:()=>{}},a=[];let c=o;function l(t){c.onObservableAccessed(t)}let u=!1,h=!1;function f(t,e,r){if(u)return p(t,e,r);y(t);const n=e.call(r);return g(),n}function d(t,e){return f(o,t,e)}function p(t,e,r){const s=u;u=!0,y(t);let i=null;try{i=e.call(r)}catch(t){h&&n.Z.getLogger("esri.core.accessorSupport.tracking").error(t)}return g(),u=s,i}function y(t){c=t,a.push(t)}function g(){const t=a.length;if(t>1){const e=a.pop();c=a[t-2],e.onTrackingEnd()}else if(1===t){const t=a.pop();c=o,t.onTrackingEnd()}else c=o}function _(t,e){const r=e.observerObject;if(r.flags&i.v.DepTrackingInitialized)return;const n=h;h=!1,r.flags&i.v.AutoTracked?p(e,e.metadata.get,t):m(t,e),h=n}const v=[];function m(t,e){const r=e.observerObject;r.flags&i.v.ExplicitlyTracking||(r.flags|=i.v.ExplicitlyTracking,p(e,(()=>{const r=e.metadata.dependsOn||v;for(const e of r)if("string"!=typeof e||e.includes(".")){const r=(0,s.NI)(e);for(let e=0,n=t;e<r.length&&null!=n&&"object"==typeof n;++e)n=b(n,r[e],e!==r.length-1)}else b(t,e,!1)})),r.flags&=~i.v.ExplicitlyTracking)}function b(t,e,r){const n="?"===e[e.length-1]?e.slice(0,-1):e;if(null!=t.getItemAt||Array.isArray(t)){const e=parseInt(n,10);if(!isNaN(e))return Array.isArray(t)?t[e]:t.getItemAt(e)}const i=(0,s.vw)(t);if(i){const e=i.propertiesByName.get(n);e&&(l(e.observerObject),_(t,e))}return r?t[n]:void 0}},44550:(t,e,r)=>{var n;r.d(e,{v:()=>n}),function(t){t[t.Dirty=1]="Dirty",t[t.Overriden=2]="Overriden",t[t.Computing=4]="Computing",t[t.NonNullable=8]="NonNullable",t[t.HasDefaultValue=16]="HasDefaultValue",t[t.DepTrackingInitialized=32]="DepTrackingInitialized",t[t.AutoTracked=64]="AutoTracked",t[t.ExplicitlyTracking=128]="ExplicitlyTracking"}(n||(n={}))},38805:(t,e,r)=>{r.d(e,{M:()=>n});class n{constructor(t){this._accessed=[],this._handles=[],this._observerObject=new s(t),i.register(this,new WeakRef(this._observerObject),this)}destroy(){i.unregister(this._observerObject),this._accessed.length=0,this._observerObject?.destroy(),this.clear()}onObservableAccessed(t){const e=this._accessed;e.includes(t)||e.push(t)}onTrackingEnd(){const t=this._handles,e=this._accessed,r=this._observerObject;for(let n=0;n<e.length;++n)t.push(e[n].observe(r));e.length=0}clear(){const t=this._handles;for(let e=0;e<t.length;++e)t[e].remove();t.length=0}}class s{constructor(t){this._notify=t,this._invalidCount=0,this.destroyed=!1}onInvalidated(){this._invalidCount++}onCommitted(){if(this.destroyed)return;const t=this._invalidCount;if(1===t)return this._invalidCount=0,void this._notify();this._invalidCount=t>0?t-1:0}destroy(){this.destroyed=!0,this._notify=o}}const i=new FinalizationRegistry((t=>{t.deref()?.destroy()}));function o(){}},87538:(t,e,r)=>{r.d(e,{EH:()=>l,U5:()=>a,Xz:()=>c});var n=r(58971),s=r(38805);let i=!1;const o=[];function a(t,e){let r=new s.M((function s(){if(!r||a)return;if(i)return void u(s);const c=o;r.clear(),i=!0,a=!0,o=(0,n.LJ)(r,t),a=!1,i=!1,e(o,c),h()})),o=null,a=!1;return a=!0,o=(0,n.LJ)(r,t),a=!1,{remove:function(){r&&(r.destroy(),r=null,o=null)}}}function c(t,e){let r=new s.M((function(){e(i,o)})),i=null;function o(){return r?(r.clear(),i=(0,n.LJ)(r,t),i):null}return o(),{remove:function(){r&&(r.destroy(),r=null),i=null}}}function l(t){let e=new s.M((function s(){e&&!r&&(i?u(s):(e.clear(),i=!0,r=!0,(0,n.LJ)(e,t),r=!1,i=!1,h()))})),r=!1;return r=!0,(0,n.LJ)(e,t),r=!1,{remove:function(){e&&(e.destroy(),e=null)}}}function u(t){o.includes(t)||o.unshift(t)}function h(){for(;o.length;)o.pop()()}},1153:(t,e,r)=>{r.d(e,{IH:()=>d,NI:()=>u,Qc:()=>f,TS:()=>c,b6:()=>a,vw:()=>o});var n=r(50758),s=r(22974),i=r(70586);function o(t){return t.__accessor__??null}function a(t,e){return null!=t&&t.metadatas&&null!=t.metadatas[e]}function c(t,e,r){return l(t,e,r?{policy:r,path:""}:null)}function l(t,e,r){return e?Object.keys(e).reduce(((t,n)=>{const o=n;let a=null,c="merge";if(r&&(a=r.path?`${r.path}.${n}`:n,c=r.policy(a)),"replace"===c)return t[o]=e[o],t;if("replace-arrays"===c&&Array.isArray(t[o]))return t[o]=e[o],t;if(void 0===t[o])return t[o]=(0,s.d9)(e[o]),t;let u=t[o],h=e[o];if(u===h)return t;if(Array.isArray(h)||Array.isArray(t))u=u?Array.isArray(u)?t[o]=u.concat():t[o]=[u]:t[o]=[],h&&(Array.isArray(h)||(h=[h]),h.forEach((t=>{u.includes(t)||u.push(t)})));else if(h&&"object"==typeof h)if(r){const e=r.path;r.path=(0,i.j0)(a),t[o]=l(u,h,r),r.path=e}else t[o]=l(u,h,null);else t.hasOwnProperty(n)&&!e.hasOwnProperty(n)||(t[o]=h);return t}),t||{}):t}function u(t){return Array.isArray(t)?t:t.split(".")}function h(t){return t.includes(",")?t.split(",").map((t=>t.trim())):[t.trim()]}function f(t,e,r,s){const i=function(t){if(Array.isArray(t)){const e=[];for(const r of t)e.push(...h(r));return e}return h(t)}(e);if(1!==i.length){const e=i.map((e=>s(t,e,r)));return(0,n.AL)(e)}return s(t,i[0],r)}function d(t){let e=!1;return()=>{e||(e=!0,t())}}},26258:(t,e,r)=>{r.d(e,{BT:()=>w,YP:()=>j,aQ:()=>N});var n=r(3894),s=r(22974),i=r(70586),o=r(71143);class a extends o.Z{constructor(){super(...arguments),this._set=new Set}destroy(){super.destroy(),this._set=(0,i.wN)(this._set)}acquire(...t){const e=super.acquire(...t);return this._set.delete(e),e}release(t){t&&!this._set.has(t)&&(super.release(t),this._set.add(t))}_dispose(t){this._set.delete(t),super._dispose(t)}}var c,l,u=r(1654),h=r(99001),f=r(67723),d=r(87538),p=r(1153);(l=c||(c={}))[l.Untracked=0]="Untracked",l[l.Tracked=1]="Tracked";class y{constructor(){this.uid=(0,h.D)(),this.removed=!1,this.type=null,this.oldValue=null,this.callback=null,this.getValue=null,this.target=null,this.path=null,this.equals=null}static acquireUntracked(t,e,r,n,i){return this.pool.acquire(c.Untracked,t,e,r,n,i,s.fS)}static acquireTracked(t,e,r,n){return this.pool.acquire(c.Tracked,t,e,r,null,null,n)}notify(t,e){this.type===c.Untracked?this.callback.call(this.target,t,e,this.path,this.target):this.callback.call(null,t,e)}acquire(t,e,r,n,s,i,o){this.uid=(0,h.D)(),this.removed=!1,this.type=t,this.oldValue=e,this.callback=r,this.getValue=n,this.target=s,this.path=i,this.equals=o}release(){this.target=this.path=this.oldValue=this.callback=this.getValue=null,this.uid=(0,h.D)(),this.removed=!0}}y.pool=new a(y);const g=new n.Z,_=new Set;let v;function m(t){_.delete(t),_.add(t),v||(v=(0,u.Os)(O))}function b(t){if(t.removed)return;const e=t.oldValue,r=t.getValue();t.equals(e,r)||(t.oldValue=r,t.notify(r,e))}function w(t){for(const e of _.values())e.target===t&&(e.removed=!0)}function O(){let t=10;for(;v&&t--;){v=null;const t=A(),e=g.acquire();for(const r of t){const t=r.uid;b(r),t===r.uid&&r.removed&&e.push(r)}for(const t of _)t.removed&&(e.push(t),_.delete(t));for(const t of e)y.pool.release(t);g.release(e),g.release(t),S.forEach((t=>t()))}}function A(){const t=g.acquire();t.length=_.size;let e=0;for(const r of _)t[e]=r,++e;return _.clear(),t}const S=new Set;function j(t,e,r,n=!1){return!t.__accessor__||t.__accessor__.destroyed?{remove(){}}:n?function(t,e,r){const n=(0,p.Qc)(t,e,r,((t,e,r)=>{let i=!1;return(0,d.U5)((()=>(0,f.$z)(t,e)),((o,a)=>{t.__accessor__.destroyed?n.remove():i||(i=!0,(0,s.fS)(a,o)||r.call(t,o,a,e,t),i=!1)}))}));return n}(t,e,r):function(t,e,r){let n=(0,p.Qc)(t,e,r,((t,e,r)=>{let s,i,o=(0,d.Xz)((()=>(0,f.$z)(t,e)),((o,a)=>{t.__accessor__.destroyed||s&&s.uid!==i?n.remove():(s||(s=y.acquireUntracked(o,r,a,t,e),i=s.uid),m(s))}));return{remove:(0,p.IH)((()=>{o.remove(),s&&(s.uid!==i||s.removed||(s.removed=!0,m(s)),s=null),n=o=null}))}}));return n}(t,e,r)}function N(t,e,r=!1,n=s.y7){return r?function(t,e,r){let n=!1;return(0,d.U5)(t,((t,s)=>{n||(n=!0,r(s,t)||e(t,s),n=!1)}))}(t,e,n):function(t,e,r){let n,s,i=(0,d.Xz)(t,((t,o)=>{n&&n.uid!==s?i.remove():(n||(n=y.acquireTracked(t,e,o,r),s=n.uid),m(n))}));return{remove:(0,p.IH)((()=>{i.remove(),n&&(n.uid!==s||n.removed||(n.removed=!0,m(n)),n=null),i=null}))}}(t,e,n)}},76169:(t,e,r)=>{r.d(e,{c:()=>f,d:()=>h});var n=r(67676),s=r(20102),i=r(92604),o=r(31263),a=r(1153),c=r(53906);function l(t,e,r,n,s){const i={};return e.write?.writer?.call(t,n,i,r,s),i}function u(t,e,r,a,c,l){if(!a||!a.write)return!1;const u=t.get(r);if(!c&&a.write.overridePolicy){const e=a.write.overridePolicy.call(t,u,r,l);void 0!==e&&(c=e)}if(c||(c=a.write),!c||!1===c.enabled)return!1;if((null===u&&!c.allowNull&&!c.writerEnsuresNonNull||void 0===u)&&c.isRequired){const e=new s.Z("web-document-write:property-required",`Missing value for required property '${r}' on '${t.declaredClass}'`,{propertyName:r,target:t});return e&&l&&l.messages?l.messages.push(e):e&&!l&&i.Z.getLogger("esri.core.accessorSupport.write").error(e.name,e.message),!1}return!(void 0===u||null===u&&!c.allowNull&&!c.writerEnsuresNonNull||(!e.store.multipleOriginsSupported||e.store.originOf(r)===o.s3.DEFAULTS)&&function(t,e,r,s,i){const o=s.default;if(void 0===o)return!1;if(null!=s.defaultEquals)return s.defaultEquals(i);if("function"==typeof o){if(Array.isArray(i)){const s=o.call(t,e,r);return(0,n.fS)(s,i)}return!1}return o===i}(t,r,l,a,u)||!c.ignoreOrigin&&l&&l.origin&&e.store.multipleOriginsSupported&&e.store.originOf(r)<(0,o.M9)(l.origin))}function h(t,e,r,n){const s=(0,a.vw)(t),i=s.metadatas,o=(0,c.Ah)(i[e],n);return!!o&&u(t,s,e,o,r,n)}function f(t,e,r){if(t&&"function"==typeof t.toJSON&&(!t.toJSON.isDefaultToJSON||!t.write))return(0,a.TS)(e,t.toJSON(r));const n=(0,a.vw)(t),s=n.metadatas;for(const i in s){const h=(0,c.Ah)(s[i],r);if(!u(t,n,i,h,void 0,r))continue;const f=t.get(i),d=l(t,h,h.write&&"string"==typeof h.write.target?h.write.target:i,f,r);Object.keys(d).length>0&&(e=(0,a.TS)(e,d),r?.resources?.pendingOperations?.length&&r.resources.pendingOperations.push(Promise.all(r.resources.pendingOperations).then((()=>(0,a.TS)(e,d,(()=>"replace-arrays"))))),r&&r.writtenProperties&&r.writtenProperties.push({target:t,propName:i,oldOrigin:(0,o.Wm)(n.store.originOf(i)),newOrigin:r.origin}))}return e}},50758:(t,e,r)=>{function n(t){return s((()=>t.forEach((t=>null!=t&&t.remove()))))}function s(t){return{remove:()=>{t&&(t(),t=void 0)}}}r.d(e,{AL:()=>n,kB:()=>s})},66374:(t,e,r)=>{function n(t){const e=[];return function*(){yield*e;for(const r of t)e.push(r),yield r}}function s(t,e){for(const r of t)if(null!=r&&e(r))return r}function i(t){return null!=t&&"function"==typeof t[Symbol.iterator]}r.d(e,{Fs:()=>n,TW:()=>i,sE:()=>s})},35454:(t,e,r)=>{r.d(e,{X:()=>s,w:()=>i});var n=r(78286);class s{constructor(t,e={ignoreUnknown:!1,useNumericKeys:!1}){this._jsonToAPI=t,this._options=e,this.apiValues=[],this.jsonValues=[],this._apiToJSON=this._invertMap(t),this.apiValues=this._getKeysSorted(this._apiToJSON),this.jsonValues=this._getKeysSorted(this._jsonToAPI),this.read=t=>this.fromJSON(t),this.write=(t,e,r)=>{const s=this.toJSON(t);void 0!==s&&(0,n.RB)(r,s,e)},this.write.isJSONMapWriter=!0}toJSON(t){if(null==t)return null;if(this._apiToJSON.hasOwnProperty(t)){const e=this._apiToJSON[t];return this._options.useNumericKeys?+e:e}return this._options.ignoreUnknown?void 0:t}fromJSON(t){return null!=t&&this._jsonToAPI.hasOwnProperty(t)?this._jsonToAPI[t]:this._options.ignoreUnknown?void 0:t}_invertMap(t){const e={};for(const r in t)e[t[r]]=r;return e}_getKeysSorted(t){const e=[];for(const r in t)e.push(r);return e.sort(),e}}function i(){return function(t,e){return new s(t,{ignoreUnknown:!0,...e})}}},41213:(t,e,r)=>{r.d(e,{Y:()=>s});const n=[];function s(t){n.push(t),1===n.length&&queueMicrotask((()=>{const t=n.slice();n.length=0;for(const e of t)e()}))}},1654:(t,e,r)=>{r.d(e,{MU:()=>b,Os:()=>g});var n=r(70586),s=r(41213),i=r(54790),o=r(44553),a=r(95330),c=r(76882);class l{constructor(t){this.callback=t,this.isActive=!0}remove(){this.isActive=!1}}let u=0;const h={time:(0,c.HA)(0),deltaTime:(0,c.HA)(0),elapsedFrameTime:(0,c.HA)(0),frameDuration:(0,c.HA)(0)},f=["prepare","preRender","render","postRender","update","finish"],d=[],p=new o.Z,y={frameTasks:p,willDispatch:!1,clearFrameTasks:function(t=!1){p.forAll((t=>{t.removed=!0})),t&&v()},dispatch:m,executeFrameTasks:function(t){const e=(0,c.HA)(t-u);u=t;const r=1e3/60,n=Math.max(0,e-r);h.time=t,h.frameDuration=(0,c.HA)(r-n);for(let r=0;r<f.length;r++){const n=performance.now(),s=f[r];p.forAll((n=>{n.paused||n.removed||(0===r&&n.ticks++,n.phases[s]&&(h.elapsedFrameTime=(0,c.HA)(performance.now()-t),h.deltaTime=0===n.ticks?(0,c.HA)(0):e,n.phases[s]?.call(n,h)))})),w[r].record(performance.now()-n)}v(),O.record(performance.now()-t)}};function g(t){const e=new l(t);return d.push(e),y.willDispatch||(y.willDispatch=!0,(0,s.Y)(m)),e}const _=new o.Z;function v(){p.forAll((t=>{t.removed&&_.push(t)})),p.removeUnorderedMany(_.data,_.length),_.clear()}function m(){for(;d.length;){const t=(0,n.j0)(d.shift());t.isActive&&t.callback()}y.willDispatch=!1}function b(t=1,e){const r=(0,a.hh)(),n=()=>{(0,a.Hc)(e)?r.reject((0,a.zE)()):0===t?r():(--t,(0,s.Y)((()=>n())))};return n(),r.promise}const w=f.map((t=>new i.Z(t))),O=new i.Z("total")},76882:(t,e,r)=>{function n(t){return t}r.d(e,{HA:()=>n})},99001:(t,e,r)=>{r.d(e,{D:()=>s});let n=0;function s(){return++n}}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1400],{43697:(t,e,r)=>{function n(t,e,r,n){var s,i=arguments.length,o=i<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(t,e,r,n);else for(var a=t.length-1;a>=0;a--)(s=t[a])&&(o=(i<3?s(o):i>3?s(e,r,o):s(e,r))||o);return i>3&&o&&Object.defineProperty(e,r,o),o}r.d(e,{_:()=>n})},15923:(t,e,r)=>{r.d(e,{Z:()=>U});var n=r(61247),s=r(70586),i=r(88022),o=r(67723),a=r(7628),c=(r(80442),r(22974)),l=r(92604),u=r(71143),h=r(97831),f=r(42100),d=r(31263),p=r(58971),y=r(44550);class g{constructor(t,e){this.propertyName=t,this.metadata=e,this.observerObject=new _,this._accessed=null,this._handles=null,this.observerObject.flags=y.v.Dirty|(e.nonNullable?y.v.NonNullable:0)|(e.hasOwnProperty("value")?y.v.HasDefaultValue:0)|(void 0===e.get?y.v.DepTrackingInitialized:0)|(void 0===e.dependsOn?y.v.AutoTracked:0)}destroy(){this.observerObject.destroy(),this._accessed=null,this._clearObservationHandles()}getComputed(t){const e=this.observerObject;(0,p.it)(e);const r=t.store,n=this.propertyName,s=e.flags,i=r.get(n);if(s&y.v.Computing)return i;if(~s&y.v.Dirty&&r.has(n))return i;e.flags|=y.v.Computing;const o=t.host;let a;s&y.v.AutoTracked?a=(0,p.LJ)(this,this.metadata.get,o):((0,p.GF)(o,this),a=this.metadata.get.call(o)),r.set(n,a,d.s3.COMPUTED);const c=r.get(n);return c===i?e.flags&=~y.v.Dirty:(0,p.gb)(this.commit,this),e.flags&=~y.v.Computing,c}onObservableAccessed(t){if(t===this.observerObject)return;let e=this._accessed;if(null==e)e=[],this._accessed=e;else if(e.includes(t))return;e.push(t)}onTrackingEnd(){this._clearObservationHandles();const t=this.observerObject;t.flags|=y.v.DepTrackingInitialized;const e=this._accessed;if(null==e||0===e.length)return;let r=this._handles;null==r&&(r=[],this._handles=r);for(let n=0;n<e.length;++n)r.push(e[n].observe(t));e.length=0}notifyChange(){const t=this.observerObject;t.onInvalidated(),t.onCommitted()}invalidate(){this.observerObject.onInvalidated()}commit(){const t=this.observerObject;t.flags&=~y.v.Dirty,t.onCommitted()}_clearObservationHandles(){const t=this._handles;if(null!==t){for(let e=0;e<t.length;++e)t[e].remove();t.length=0}}}class _ extends f.s{constructor(){super(...arguments),this.flags=0}onInvalidated(){~this.flags&y.v.Overriden&&(this.flags|=y.v.Dirty);const t=this._observers;if(t&&t.length>0)for(const e of t)e.onInvalidated()}onCommitted(){const t=this._observers;if(t&&t.length>0){const e=t.slice();for(const t of e)t.onCommitted()}}destroy(){this.flags&y.v.Dirty&&this.onCommitted(),super.destroy()}}class v{constructor(){this._values=new Map,this.multipleOriginsSupported=!1}clone(t){const e=new v;return this._values.forEach(((r,n)=>{t&&t.has(n)||e.set(n,(0,c.d9)(r))})),e}get(t){return this._values.get(t)}originOf(){return d.s3.USER}keys(){return[...this._values.keys()]}set(t,e){this._values.set(t,e)}delete(t){this._values.delete(t)}has(t){return this._values.has(t)}forEach(t){this._values.forEach(t)}}function m(t,e,r){return void 0!==t}function b(t,e,r,n){return!(void 0===t||null==r&&t.observerObject.flags&y.v.NonNullable&&(n.lifecycle,h.F.INITIALIZING,1))}function w(t){return t&&"function"==typeof t.destroy}l.Z.getLogger("esri.core.accessorSupport.Properties");class O{constructor(t){this.host=t,this.propertiesByName=new Map,this.ctorArgs=null,this.destroyed=!1,this.lifecycle=h.F.INITIALIZING,this.store=new v,this._origin=d.s3.USER;const e=this.host.constructor.__accessorMetadata__;for(const t in e){const r=new g(t,e[t]);this.propertiesByName.set(t,r)}this.metadatas=e}initialize(){this.lifecycle=h.F.CONSTRUCTING}constructed(){this.lifecycle=h.F.CONSTRUCTED}destroy(){this.destroyed=!0;for(const[t,e]of this.propertiesByName){if(e.metadata.autoDestroy){const r=this.internalGet(t);r&&w(r)&&(r.destroy(),~e.observerObject.flags&y.v.NonNullable&&this._internalSet(e,null))}e.destroy()}}get initialized(){return this.lifecycle!==h.F.INITIALIZING}get(t){const e=this.propertiesByName.get(t);if(e.metadata.get)return e.getComputed(this);(0,p.it)(e.observerObject);const r=this.store;return r.has(t)?r.get(t):e.metadata.value}originOf(t){const e=this.store.originOf(t);if(void 0===e){const e=this.propertiesByName.get(t);if(void 0!==e&&e.observerObject.flags&y.v.HasDefaultValue)return"defaults"}return(0,d.x3)(e)}has(t){return!!this.propertiesByName.has(t)&&this.store.has(t)}keys(){return[...this.propertiesByName.keys()]}internalGet(t){const e=this.propertiesByName.get(t);if(m(e))return this.store.has(t)?this.store.get(t):e.metadata.value}internalSet(t,e){const r=this.propertiesByName.get(t);m(r)&&this._internalSet(r,e)}getDependsInfo(t,e,r){const n=this.propertiesByName.get(e);if(!m(n))return"";const s=new Set,i=(0,p.LJ)({onObservableAccessed:t=>s.add(t),onTrackingEnd:()=>{}},(()=>n.metadata.get?.call(t)));let o=`${r}${t.declaredClass.split(".").pop()}.${e}: ${i}\n`;if(0===s.size)return o;r+=" ";for(const t of s)t instanceof g&&(o+=`${r}${t.propertyName}: undefined\n`);return o}setAtOrigin(t,e,r){const n=this.propertiesByName.get(t);if(m(n))return this._setAtOrigin(n,e,r)}isOverridden(t){const e=this.propertiesByName.get(t);return void 0!==e&&!!(e.observerObject.flags&y.v.Overriden)}clearOverride(t){const e=this.propertiesByName.get(t),r=e?.observerObject;r&&r.flags&y.v.Overriden&&(r.flags&=~y.v.Overriden,e.notifyChange())}override(t,e){const r=this.propertiesByName.get(t);if(!b(r,0,e,this))return;const n=r.metadata.cast;if(n){const t=this._cast(n,e),{valid:r,value:s}=t;if(A.release(t),!r)return;e=s}r.observerObject.flags|=y.v.Overriden,this._internalSet(r,e)}set(t,e){const r=this.propertiesByName.get(t);if(!b(r,0,e,this))return;const n=r.metadata.cast;if(n){const t=this._cast(n,e),{valid:r,value:s}=t;if(A.release(t),!r)return;e=s}const s=r.metadata.set;s?s.call(this.host,e):this._internalSet(r,e)}setDefaultOrigin(t){this._origin=(0,d.M9)(t)}getDefaultOrigin(){return(0,d.x3)(this._origin)}notifyChange(t){const e=this.propertiesByName.get(t);void 0!==e&&e.notifyChange()}invalidate(t){const e=this.propertiesByName.get(t);void 0!==e&&e.invalidate()}commit(t){const e=this.propertiesByName.get(t);void 0!==e&&e.commit()}_internalSet(t,e){const r=this.lifecycle!==h.F.INITIALIZING?this._origin:d.s3.DEFAULTS;this._setAtOrigin(t,e,r)}_setAtOrigin(t,e,r){const n=this.store,s=t.propertyName;n.has(s,r)&&(0,c.fS)(e,n.get(s))&&~t.observerObject.flags&y.v.Overriden&&r===n.originOf(s)||(t.invalidate(),n.set(s,e,r),t.commit(),(0,p.mS)(this.host,t))}_cast(t,e){const r=A.acquire();return r.valid=!0,r.value=e,t&&(r.value=t.call(this.host,e,r)),r}}const A=new u.Z(class{constructor(){this.value=null,this.valid=!0}acquire(){this.valid=!0}release(){this.value=null}});var S,j,N=r(37697),T=r(26258),E=r(5600),k=r(52011);function C(t){if(null==t)return{value:t};if(Array.isArray(t))return{type:[t[0]],value:null};switch(typeof t){case"object":return t.constructor?.__accessorMetadata__||t instanceof Date?{type:t.constructor,value:t}:t;case"boolean":return{type:Boolean,value:t};case"string":return{type:String,value:t};case"number":return{type:Number,value:t};case"function":return{type:t,value:null};default:return}}const I=Symbol("Accessor-Handles"),M=Symbol("Accessor-Initialized");class U{static createSubclass(t={}){if(Array.isArray(t))throw new Error("Multi-inheritance unsupported since 4.16");const{properties:e,declaredClass:r,constructor:n}=t;delete t.declaredClass,delete t.properties,delete t.constructor;const s=this;class i extends s{constructor(...t){super(...t),this.inherited=null,n&&n.apply(this,t)}}(0,a.fp)(i.prototype);for(const e in t){const r=t[e];i.prototype[e]="function"==typeof r?function(...t){const n=this.inherited;let i;this.inherited=function(...t){if(s.prototype[e])return s.prototype[e].apply(this,t)};try{i=r.apply(this,t)}catch(t){throw this.inherited=n,t}return this.inherited=n,i}:t[e]}for(const t in e){const r=C(e[t]);(0,E.Cb)(r)(i.prototype,t)}return(0,k.j)(r)(i)}constructor(...t){if(this[S]=null,this[j]=!1,this.constructor===U)throw new Error("[accessor] cannot instantiate Accessor. This can be fixed by creating a subclass of Accessor");const e=new O(this);Object.defineProperty(this,"__accessor__",{enumerable:!1,value:e}),t.length>0&&this.normalizeCtorArgs&&(e.ctorArgs=this.normalizeCtorArgs.apply(this,t)),D.register(this,e.propertiesByName,this)}postscript(t){const e=this.__accessor__,r=e.ctorArgs||t;e.initialize(),r&&(this.set(r),e.ctorArgs=null),e.constructed(),this.initialize(),this[M]=!0}initialize(){}[i.F](){this[I]=(0,s.SC)(this[I])}destroy(){this.destroyed||(D.unregister(this),(0,T.BT)(this),this.__accessor__.destroy())}get constructed(){return this.__accessor__&&this.__accessor__.initialized||!1}get initialized(){return this[M]}get destroyed(){return this.__accessor__&&this.__accessor__.destroyed||!1}commitProperty(t){this.get(t)}get(t){return(0,o.U2)(this,t)}hasOwnProperty(t){return this.__accessor__?this.__accessor__.has(t):Object.prototype.hasOwnProperty.call(this,t)}keys(){return this.__accessor__?this.__accessor__.keys():[]}set(t,e){return(0,N.t)(this,t,e),this}watch(t,e,r){return(0,T.YP)(this,t,e,r)}own(t){this.addHandles(t)}addHandles(t,e){if(this.destroyed){const e=Array.isArray(t)?t:[t];for(const t of e)t.remove();return}let r=this[I];null==r&&(r=this[I]=new n.Z),r.add(t,e)}removeHandles(t){const e=this[I];null!=e&&e.remove(t)}removeAllHandles(){const t=this[I];null!=t&&t.removeAll()}hasHandles(t){const e=this[I];return null!=e&&e.has(t)}_override(t,e){void 0===e?this.__accessor__.clearOverride(t):this.__accessor__.override(t,e)}_clearOverride(t){return this.__accessor__.clearOverride(t)}_overrideIfSome(t,e){null==e?this.__accessor__.clearOverride(t):this.__accessor__.override(t,e)}_isOverridden(t){return this.__accessor__.isOverridden(t)}notifyChange(t){this.__accessor__.notifyChange(t)}_get(t){return this.__accessor__.internalGet(t)}_set(t,e){return this.__accessor__.internalSet(t,e),this}}S=I,j=M;const D=new FinalizationRegistry((t=>{for(const e of t.values())e.destroy()}))},3894:(t,e,r)=>{r.d(e,{Z:()=>i});var n=r(71143);function s(t){t.length=0}class i{constructor(t=50,e=50){this._pool=new n.Z(Array,void 0,s,e,t)}acquire(){return this._pool.acquire()}release(t){this._pool.release(t)}prune(){this._pool.prune(0)}static acquire(){return o.acquire()}static release(t){return o.release(t)}static prune(){o.prune()}}const o=new i(100)},61247:(t,e,r)=>{r.d(e,{Z:()=>i});var n=r(66374),s=r(70586);class i{constructor(){this._groups=new Map}destroy(){this.removeAll()}get size(){let t=0;return this._groups.forEach((e=>{t+=e.length})),t}add(t,e){if((0,n.TW)(t)){const r=this._getOrCreateGroup(e);for(const e of t)this._isHandle(e)&&r.push(e)}else this._isHandle(t)&&this._getOrCreateGroup(e).push(t);return this}forEach(t,e){if("function"==typeof t)this._groups.forEach((e=>e.forEach(t)));else{const r=this._getGroup(t);r&&e&&r.forEach(e)}}has(t){return this._groups.has(this._ensureGroupKey(t))}remove(t){if("string"!=typeof t&&(0,n.TW)(t)){for(const e of t)this.remove(e);return this}return this.has(t)?(this._removeAllFromGroup(this._getGroup(t)),this._groups.delete(this._ensureGroupKey(t)),this):this}removeAll(){return this._groups.forEach((t=>this._removeAllFromGroup(t))),this._groups.clear(),this}_isHandle(t){return t&&!!t.remove}_getOrCreateGroup(t){if(this.has(t))return this._getGroup(t);const e=[];return this._groups.set(this._ensureGroupKey(t),e),e}_getGroup(t){return(0,s.j0)(this._groups.get(this._ensureGroupKey(t)))}_ensureGroupKey(t){return t||"_default_"}_removeAllFromGroup(t){t.forEach((t=>t.remove()))}}},96674:(t,e,r)=>{r.d(e,{wq:()=>_,eC:()=>y});var n=r(43697),s=r(15923),i=r(70586),o=r(22974),a=r(31263);class c{constructor(){this._values=new Map,this.multipleOriginsSupported=!1}clone(t){const e=new c;return this._values.forEach(((r,n)=>{t&&t.has(n)||e.set(n,(0,o.d9)(r.value),r.origin)})),e}get(t,e){e=this._normalizeOrigin(e);const r=this._values.get(t);return null==e||r?.origin===e?r?.value:void 0}originOf(t){return this._values.get(t)?.origin??a.s3.USER}keys(t){t=this._normalizeOrigin(t);const e=[...this._values.keys()];return null==t?e:e.filter((e=>this._values.get(e)?.origin===t))}set(t,e,r){if((r=this._normalizeOrigin(r))===a.s3.DEFAULTS){const e=this._values.get(t);if(e&&null!=e.origin&&e.origin>r)return}this._values.set(t,new l(e,r))}delete(t,e){null!=(e=this._normalizeOrigin(e))&&this._values.get(t)?.origin!==e||this._values.delete(t)}has(t,e){return null!=(e=this._normalizeOrigin(e))?this._values.get(t)?.origin===e:this._values.has(t)}forEach(t){this._values.forEach((({value:e},r)=>t(e,r)))}_normalizeOrigin(t){if(null!=t)return t===a.s3.DEFAULTS?t:a.s3.USER}}class l{constructor(t,e){this.value=t,this.origin=e}}var u=r(41103),h=r(50549),f=r(1153),d=r(76169),p=r(52011);const y=t=>{let e=class extends t{constructor(...t){super(...t);const e=(0,i.j0)((0,f.vw)(this)),r=e.store,n=new c;e.store=n,(0,u.M)(e,r,n)}read(t,e){(0,h.i)(this,t,e)}write(t,e){return(0,d.c)(this,t??{},e)}toJSON(t){return this.write({},t)}static fromJSON(t,e){return g.call(this,t,e)}};return e=(0,n._)([(0,p.j)("esri.core.JSONSupport")],e),e.prototype.toJSON.isDefaultToJSON=!0,e};function g(t,e){if(!t)return null;if(t.declaredClass)throw new Error("JSON object is already hydrated");const r=new this;return r.read(t,e),r}let _=class extends(y(s.Z)){};_=(0,n._)([(0,p.j)("esri.core.JSONSupport")],_)},30175:(t,e,r)=>{function n(t,e,r){const n=t.get(e);if(void 0!==n)return n;const s=r();return t.set(e,s),s}r.d(e,{s1:()=>n})},71143:(t,e,r)=>{r.d(e,{Z:()=>n});class n{constructor(t,e,r,n=1,s=0){if(this._ctor=t,this._acquireFunction=e,this._releaseFunction=r,this.allocationSize=n,this._pool=new Array(s),this._initialSize=s,this._ctor)for(let t=0;t<s;t++)this._pool[t]=new this._ctor;this.allocationSize=Math.max(n,1)}destroy(){this.prune(0)}acquire(...t){let e;if(n.test.disabled)e=new this._ctor;else{if(0===this._pool.length){const t=this.allocationSize;for(let e=0;e<t;e++)this._pool[e]=new this._ctor}e=this._pool.pop()}return this._acquireFunction?this._acquireFunction(e,...t):function(t){return t&&t.acquire&&"function"==typeof t.acquire}(e)&&e.acquire(...t),e}release(t){var e;t&&!n.test.disabled&&(this._releaseFunction?this._releaseFunction(t):(e=t)&&e.release&&"function"==typeof e.release&&t.release(),this._pool.push(t))}prune(t=this._initialSize){if(!(t>=this._pool.length)){for(let e=t;e<this._pool.length;++e){const t=this._pool[e];this._dispose(t)}this._pool.length=t}}_dispose(t){t.dispose&&"function"==typeof t.dispose&&t.dispose()}}n.test={disabled:!1}},54790:(t,e,r)=>{r.d(e,{Z:()=>n});class n{constructor(t,e=30){this.name=t,this._counter=0,this._samples=new Array(e)}record(t){null!=t&&(this._samples[++this._counter%this._samples.length]=t)}get median(){return this._samples.slice().sort(((t,e)=>t-e))[Math.floor(this._samples.length/2)]}get average(){return this._samples.reduce(((t,e)=>t+e),0)/this._samples.length}get last(){return this._samples[this._counter%this._samples.length]}}},44553:(t,e,r)=>{r.d(e,{Z:()=>o});var n,s=r(67676);!function(t){const e=(t,e,r,n)=>{let s=e,i=e;const o=r>>>1,a=t[s-1];for(;i<=o;){i=s<<1,i<r&&n(t[i-1],t[i])<0&&++i;const e=t[i-1];if(n(e,a)<=0)break;t[s-1]=e,s=i}t[s-1]=a},r=(t,e)=>t<e?-1:t>e?1:0;t.sort=function(t,n,s,i){void 0===n&&(n=0),void 0===s&&(s=t.length),void 0===i&&(i=r);for(let r=s>>>1;r>n;r--)e(t,r,s,i);const o=n+1;for(let r=s-1;r>n;r--){const s=t[n];t[n]=t[r],t[r]=s,e(t,o,r,i)}},t.iterableSort=function*(t,n,s,i){void 0===n&&(n=0),void 0===s&&(s=t.length),void 0===i&&(i=r);for(let r=s>>>1;r>n;r--)e(t,r,s,i),yield;const o=n+1;for(let r=s-1;r>n;r--){const s=t[n];t[n]=t[r],t[r]=s,e(t,o,r,i),yield}}}(n||(n={}));const i=n;class o{constructor(t){this.data=[],this._length=0,this._allocator=void 0,this._deallocator=()=>null,this._shrink=()=>{},this._hint=new s.SO,t&&(t.initialSize&&(this.data=new Array(t.initialSize)),t.allocator&&(this._allocator=t.allocator),void 0!==t.deallocator&&(this._deallocator=t.deallocator),t.shrink&&(this._shrink=()=>a(this)))}toArray(){return this.data.slice(0,this.length)}filter(t){const e=new Array;for(let r=0;r<this._length;r++){const n=this.data[r];t(n)&&e.push(n)}return e}getItemAt(t){if(!(t<0||t>=this._length))return this.data[t]}includes(t,e){const r=this.data.indexOf(t,e);return-1!==r&&r<this.length}get length(){return this._length}set length(t){if(t>this._length){if(this._allocator){for(;this._length<t;)this.data[this._length++]=this._allocator(this.data[this._length]);return}this._length=t}else{if(this._deallocator)for(let e=t;e<this._length;++e)this.data[e]=this._deallocator(this.data[e]);this._length=t,this._shrink()}}clear(){this.length=0}prune(){this.clear(),this.data=[]}push(t){this.data[this._length++]=t}pushArray(t,e=t.length){for(let r=0;r<e;r++)this.data[this._length++]=t[r]}fill(t,e){for(let r=0;r<e;r++)this.data[this._length++]=t}pushNew(){this._allocator&&(this.data[this.length]=this._allocator(this.data[this.length]));const t=this.data[this._length];return++this._length,t}unshift(t){this.data.unshift(t),this._length++,a(this)}pop(){if(0===this.length)return;const t=this.data[this.length-1];return this.length=this.length-1,this._shrink(),t}remove(t){const e=(0,s.cq)(this.data,t,this.length,this._hint);if(-1!==e)return this.data.splice(e,1),this.length=this.length-1,t}removeUnordered(t){return this.removeUnorderedIndex((0,s.cq)(this.data,t,this.length,this._hint))}removeUnorderedIndex(t){if(!(t>=this.length||t<0))return this.swapElements(t,this.length-1),this.pop()}removeUnorderedMany(t,e=t.length,r){this.length=(0,s.FY)(this.data,t,this.length,e,this._hint,r),this._shrink()}front(){if(0!==this.length)return this.data[0]}back(){if(0!==this.length)return this.data[this.length-1]}swapElements(t,e){if(t>=this.length||e>=this.length||t===e)return;const r=this.data[t];this.data[t]=this.data[e],this.data[e]=r}sort(t){i.sort(this.data,0,this.length,t)}iterableSort(t){return i.iterableSort(this.data,0,this.length,t)}some(t,e){for(let r=0;r<this.length;++r)if(t.call(e,this.data[r],r,this.data))return!0;return!1}find(t,e){for(let r=0;r<this.length;++r){const n=this.data[r];if(t.call(e,n,r))return n}}filterInPlace(t,e){let r=0;for(let n=0;n<this._length;++n){const s=this.data[n];t.call(e,s,n,this.data)&&(this.data[n]=this.data[r],this.data[r]=s,r++)}if(this._deallocator)for(let t=r;t<this._length;t++)this.data[t]=this._deallocator(this.data[t]);return this._length=r,this._shrink(),this}forAll(t,e){const r=this.length,n=this.data;for(let s=0;s<r;++s)t.call(e,n[s],s,n)}forEach(t,e){for(let r=0;r<this.length;++r)t.call(e,this.data[r],r,this.data)}map(t,e){const r=new Array(this.length);for(let n=0;n<this.length;++n)r[n]=t.call(e,this.data[n],n,this.data);return r}reduce(t,e){let r=e;for(let e=0;e<this.length;++e)r=t(r,this.data[e],e,this.data);return r}has(t){const e=this.length,r=this.data;for(let n=0;n<e;++n)if(r[n]===t)return!0;return!1}}function a(t){t.data.length>1.5*t.length&&(t.data.length=Math.floor(1.1*t.length))}},20941:(t,e,r)=>{r.d(e,{Z:()=>s});var n=r(58896);class s extends n.Z{constructor(t,e,r){super(t,e,r)}}s.prototype.type="warning"},42100:(t,e,r)=>{r.d(e,{s:()=>i});var n=r(67676);class s{constructor(t,e){this._observers=t,this._observer=e}remove(){(0,n.Od)(this._observers,this._observer)}}class i{constructor(){this._observers=null,this.destroyed=!1}observe(t){if(this.destroyed||t.destroyed)return o;null==this._observers&&(this._observers=[]);const e=this._observers;let r=!1,n=!1;const i=e.length;for(let s=0;s<i;++s){const i=e[s];if(i.destroyed)n=!0;else if(i===t){r=!0;break}}return r||(e.push(t),n&&this._removeDestroyedObservers()),new s(e,t)}_removeDestroyedObservers(){const t=this._observers;if(!t||0===t.length)return;const e=t.length;let r=0;for(let n=0;n<e;++n){for(;n+r<e&&t[n+r].destroyed;)++r;if(r>0){if(!(n+r<e))break;t[n]=t[n+r]}}t.length=e-r}destroy(){if(this.destroyed)return;this.destroyed=!0;const t=this._observers;if(null!=t){for(const e of t)e.onCommitted();this._observers=null}}}const o={remove:()=>{}}},31263:(t,e,r)=>{r.d(e,{M9:()=>a,Wm:()=>l,kk:()=>o,s3:()=>n,x3:()=>c});var n,s,i=r(70586);(s=n||(n={}))[s.DEFAULTS=0]="DEFAULTS",s[s.COMPUTED=1]="COMPUTED",s[s.SERVICE=2]="SERVICE",s[s.PORTAL_ITEM=3]="PORTAL_ITEM",s[s.WEB_SCENE=4]="WEB_SCENE",s[s.WEB_MAP=5]="WEB_MAP",s[s.USER=6]="USER";const o=n.USER+1;function a(t){switch(t){case"defaults":return n.DEFAULTS;case"service":return n.SERVICE;case"portal-item":return n.PORTAL_ITEM;case"web-scene":return n.WEB_SCENE;case"web-map":return n.WEB_MAP;case"user":return n.USER;default:return null}}function c(t){switch(t){case n.DEFAULTS:return"defaults";case n.SERVICE:return"service";case n.PORTAL_ITEM:return"portal-item";case n.WEB_SCENE:return"web-scene";case n.WEB_MAP:return"web-map";case n.USER:return"user"}return(0,i.j0)(void 0)}function l(t){return c(t)}},88022:(t,e,r)=>{r.d(e,{F:()=>n});const n=Symbol("Accessor-beforeDestroy")},90578:(t,e,r)=>{r.d(e,{p:()=>c});var n=r(75215),s=r(7628);const i=Object.prototype.toString;function o(t){const e="__accessorMetadata__"in t?(0,n.se)(t):t;return function(...t){if(t.push(e),"number"==typeof t[2])throw new Error("Using @cast has parameter decorator is not supported since 4.16");return a.apply(this,t)}}function a(t,e,r,n){(0,s.Oe)(t,e).cast=n}function c(...t){if(3!==t.length||"string"!=typeof t[1])return 1===t.length&&"[object Function]"===i.call(t[0])?o(t[0]):1===t.length&&"string"==typeof t[0]?function(t){return(e,r)=>{(0,s.Oe)(e,t).cast=e[r]}}(t[0]):void 0}},5600:(t,e,r)=>{r.d(e,{CJ:()=>l,Cb:()=>c,Eg:()=>u});var n=r(92604),s=r(75215),i=r(67723),o=r(7628),a=r(37697);function c(t={}){return(e,r)=>{if(e===Function.prototype)throw new Error(`Inappropriate use of @property() on a static field: ${e.name}.${r}. Accessor does not support static properties.`);const c=Object.getOwnPropertyDescriptor(e,r),l=(0,o.Oe)(e,r);c&&(c.get||c.set?(l.get=c.get||l.get,l.set=c.set||l.set):"value"in c&&("value"in t&&n.Z.getLogger("esri.core.accessorSupport.decorators.property").warn(`@property() will redefine the value of "${r}" on "${e.constructor.name}" already defined in the metadata`,t),l.value=t.value=c.value)),null!=t.readOnly&&(l.readOnly=t.readOnly);const h=t.aliasOf;if(h){const t="string"==typeof h?h:h.source,e="string"==typeof h?null:!0===h.overridable;let n;l.dependsOn=[t],l.get=function(){let e=(0,i.U2)(this,t);if("function"==typeof e){n||(n=t.split(".").slice(0,-1).join("."));const r=(0,i.U2)(this,n);r&&(e=e.bind(r))}return e},l.readOnly||(l.set=e?function(t){this._override(r,t)}:function(e){(0,a.t)(this,t,e)})}const f=t.type,d=t.types;l.cast||(f?l.cast=function(t){let e=0,r=t;if((0,s.AY)(t))return(0,s.sY)(t);for(;Array.isArray(r)&&1===r.length&&"string"!=typeof r[0]&&"number"!=typeof r[0];)r=r[0],e++;const n=r;if((0,s.gB)(n))return 0===e?(0,s.i$)(n):(0,s.Iu)((0,s.i$)(n),e);if(1===e)return(0,s.rY)(n);if(e>1)return(0,s.di)(n,e);const i=t;return i.from?i.from:(0,s.se)(i)}(f):d&&(Array.isArray(d)?l.cast=(0,s.Ls)((0,s.N7)(d[0])):l.cast=(0,s.N7)(d))),(0,o.tz)(l,t),t.range&&(l.cast=u(l.cast,t.range))}}function l(t,e,r){const n=(0,o.Oe)(t,r);n.json||(n.json={});let s=n.json;return void 0!==e&&(s.origins||(s.origins={}),s.origins[e]||(s.origins[e]={}),s=s.origins[e]),s}function u(t,e){return r=>{let n=+t(r);return null!=e.step&&(n=Math.round(n/e.step)*e.step),null!=e.min&&(n=Math.max(e.min,n)),null!=e.max&&(n=Math.min(e.max,n)),n}}},52011:(t,e,r)=>{r.d(e,{j:()=>u}),r(80442);var n=r(88022),s=r(97831),i=r(7628),o=r(58971),a=r(53906);const c=new Set,l=new Set;function u(t){return e=>{e.prototype.declaredClass=t,f(e);const r=[],s=[];let o=e.prototype;for(;o;)o.hasOwnProperty("initialize")&&!c.has(o.initialize)&&(c.add(o.initialize),r.push(o.initialize)),o.hasOwnProperty("destroy")&&!l.has(o.destroy)&&(l.add(o.destroy),s.push(o.destroy)),o=Object.getPrototypeOf(o);c.clear(),l.clear();class a extends e{constructor(...t){if(super(...t),this.constructor===a&&"function"==typeof this.postscript){if(r.length&&Object.defineProperty(this,"initialize",{enumerable:!1,configurable:!0,value(){for(let t=r.length-1;t>=0;t--)r[t].call(this)}}),s.length){let t=!1;const e=this[n.F];Object.defineProperty(this,"destroy",{enumerable:!1,configurable:!0,value(){if(!t){t=!0,e.call(this);for(let t=0;t<s.length;t++)s[t].call(this)}}})}this.postscript(...t)}}}return a.__accessorMetadata__=(0,i.fp)(e.prototype),a.prototype.declaredClass=t,a}}function h(t,e){return null==e.get?function(){const e=this.__accessor__,r=e.propertiesByName.get(t);if(void 0===r)return;(0,o.it)(r.observerObject);const n=e.store;return n.has(t)?n.get(t):r.metadata.value}:function(){const e=this.__accessor__,r=e.propertiesByName.get(t);if(void 0!==r)return r.getComputed(e)}}function f(t){const e=t.prototype,r=(0,i.fp)(e),n={};for(const t of Object.getOwnPropertyNames(r)){const e=r[t];(0,a.OM)(e),n[t]={enumerable:!0,configurable:!0,get:h(t,e),set(r){const n=this.__accessor__;if(void 0!==n){if(!Object.isFrozen(this)){if(n.initialized&&e.readOnly)throw new TypeError(`[accessor] cannot assign to read-only property '${t}' of ${this.declaredClass}`);if(n.lifecycle===s.F.CONSTRUCTED&&e.constructOnly)throw new TypeError(`[accessor] cannot assign to construct-only property '${t}' of ${this.declaredClass}`);n.set(t,r)}}else Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:r})}}}Object.defineProperties(t.prototype,n)}},41103:(t,e,r)=>{r.d(e,{M:()=>s});var n=r(31263);function s(t,e,r){e.keys().forEach((t=>{r.set(t,e.get(t),n.s3.DEFAULTS)}));const s=t.metadatas;Object.keys(s).forEach((e=>{t.internalGet(e)&&r.set(e,t.internalGet(e),n.s3.DEFAULTS)}))}},75215:(t,e,r)=>{r.d(e,{AY:()=>C,Iu:()=>A,Ls:()=>b,N7:()=>T,TJ:()=>g,V5:()=>k,Zs:()=>c,di:()=>S,gB:()=>j,i$:()=>N,q9:()=>l,rY:()=>w,sY:()=>I,se:()=>m,vU:()=>u,z8:()=>E}),r(80442);var n=r(92604),s=r(30175);const i=n.Z.getLogger("esri.core.accessorSupport.ensureTypes");function o(t){return null==t?t:new Date(t)}function a(t){return null==t?t:!!t}function c(t){return null==t?t:t.toString()}function l(t){return null==t?t:(t=parseFloat(t),isNaN(t)?0:t)}function u(t){return null==t?t:Math.round(parseFloat(t))}function h(t){return t&&t.constructor&&void 0!==t.constructor.__accessorMetadata__}function f(t,e){return null!=e&&t&&!(e instanceof t)}function d(t){return t&&"isCollection"in t}function p(t){return t&&t.Type?"function"==typeof t.Type?t.Type:t.Type.base:null}function y(t,e){return!!h(e)&&(i.error("Accessor#set","Assigning an instance of '"+(e.declaredClass||"unknown")+"' which is not a subclass of '"+_(t)+"'"),!0)}function g(t,e){return null==e?e:d(t)?function(t,e){if(!e||!e.constructor||!d(e.constructor))return y(t,e)?e:new t(e);const r=p(t.prototype.itemType),n=p(e.constructor.prototype.itemType);return r?n?r===n?e:r.prototype.isPrototypeOf(n.prototype)?new t(e):(y(t,e),e):new t(e):e}(t,e):f(t,e)?y(t,e)?e:new t(e):e}function _(t){return t&&t.prototype&&t.prototype.declaredClass||"unknown"}const v=new WeakMap;function m(t,e){const r=function(t){switch(t){case Number:return l;case E:return u;case Boolean:return a;case String:return c;case Date:return o;default:return(0,s.s1)(v,t,(()=>g.bind(null,t)))}}(t);return 1===arguments.length?r:r(e)}function b(t,e,r){return 1===arguments.length?b.bind(null,t):e?Array.isArray(e)?e.map((e=>t(e,r))):[t(e,r)]:e}function w(t,e){return 1===arguments.length?b((e=>m(t,e))):b((e=>m(t,e)),e)}function O(t,e,r){return 0!==e&&Array.isArray(r)?r.map((r=>O(t,e-1,r))):t(r)}function A(t,e,r){if(2===arguments.length)return r=>A(t,e,r);if(!r)return r;r=O(t,e,r);let n=e,s=r;for(;n>0&&Array.isArray(s);)n--,s=s[0];if(void 0!==s)for(let t=0;t<n;t++)r=[r];return r}function S(t,e,r){return 2===arguments.length?A((e=>m(t,e)),e):A((e=>m(t,e)),e,r)}function j(t){return!!Array.isArray(t)&&!t.some((e=>{const r=typeof e;return!("string"===r||"number"===r||"function"===r&&t.length>1)}))}function N(t,e){if(2===arguments.length)return N(t).call(null,e);const r=new Set,n=t.filter((t=>"function"!=typeof t)),s=t.filter((t=>"function"==typeof t));for(const e of t)"string"!=typeof e&&"number"!=typeof e||r.add(e);let o=null,a=null;return(t,e)=>{if(null==t)return t;const c=typeof t,l="string"===c||"number"===c;return l&&(r.has(t)||s.some((t=>"string"===c&&t===String||"number"===c&&t===Number)))||"object"===c&&s.some((e=>!f(t,e)))?t:(l&&n.length?(o||(o=n.map((t=>"string"==typeof t?`'${t}'`:`${t}`)).join(", ")),i.error("Accessor#set",`'${t}' is not a valid value for this property, only the following values are valid: ${o}`)):"object"==typeof t&&s.length?(a||(a=s.map((t=>_(t))).join(", ")),i.error("Accessor#set",`'${t}' is not a valid value for this property, value must be one of ${a}`)):i.error("Accessor#set",`'${t}' is not a valid value for this property`),e&&(e.valid=!1),null)}}function T(t,e){if(2===arguments.length)return T(t).call(null,e);const r={},n=[],s=[];for(const e in t.typeMap){const i=t.typeMap[e];r[e]=m(i),n.push(_(i)),s.push(e)}const o=()=>`'${n.join("', '")}'`,a=()=>`'${s.join("', '")}'`,c="string"==typeof t.key?e=>e[t.key]:t.key;return e=>{if(t.base&&!f(t.base,e))return e;if(null==e)return e;const n=c(e)||t.defaultKeyValue,s=r[n];if(!s)return i.error("Accessor#set",`Invalid property value, value needs to be one of ${o()}, or a plain object that can autocast (having .type = ${a()})`),null;if(!f(t.typeMap[n],e))return e;if("string"==typeof t.key&&!h(e)){const r={};for(const n in e)n!==t.key&&(r[n]=e[n]);return s(r)}return s(e)}}class E{}const k={native:t=>({type:"native",value:t}),array:t=>({type:"array",value:t}),oneOf:t=>({type:"one-of",values:t})};function C(t){if(!t||!("type"in t))return!1;switch(t.type){case"native":case"array":case"one-of":return!0}return!1}function I(t){switch(t.type){case"native":return m(t.value);case"array":return b(I(t.value));case"one-of":return function(t){let e=null;return(r,n)=>U(r,t)?r:(null==e&&(e=M(t)),i.error("Accessor#set",`Invalid property value, value needs to be of type ${e}`),n&&(n.valid=!1),null)}(t);default:return null}}function M(t){switch(t.type){case"native":switch(t.value){case Number:return"number";case String:return"string";case Boolean:return"boolean";case E:return"integer";case Date:return"date";default:return _(t.value)}case"array":return`array of ${M(t.value)}`;case"one-of":{const e=t.values.map((t=>M(t)));return`one of ${e.slice(0,e.length-1)} or ${e[e.length-1]}`}}return"unknown"}function U(t,e){if(null==t)return!0;switch(e.type){case"native":switch(e.value){case Number:case E:return"number"==typeof t;case Boolean:return"boolean"==typeof t;case String:return"string"==typeof t}return t instanceof e.value;case"array":return!!Array.isArray(t)&&!t.some((t=>!U(t,e.value)));case"one-of":return e.values.some((e=>U(t,e)))}}},53906:(t,e,r)=>{r.d(e,{hk:()=>f,HS:()=>u,Ah:()=>h,OM:()=>g});var n=r(75215),s=r(63213);function i(t){if(t.json||(t.json={}),a(t.json),c(t.json),o(t.json),t.json.origins)for(const e in t.json.origins)a(t.json.origins[e]),c(t.json.origins[e]),o(t.json.origins[e]);return!0}function o(t){t.name&&(t.read&&"object"==typeof t.read?void 0===t.read.source&&(t.read.source=t.name):t.read={source:t.name},t.write&&"object"==typeof t.write?void 0===t.write.target&&(t.write.target=t.name):t.write={target:t.name})}function a(t){"boolean"==typeof t.read?t.read={enabled:t.read}:"function"==typeof t.read?t.read={enabled:!0,reader:t.read}:t.read&&"object"==typeof t.read&&void 0===t.read.enabled&&(t.read.enabled=!0)}function c(t){"boolean"==typeof t.write?t.write={enabled:t.write}:"function"==typeof t.write?t.write={enabled:!0,writer:t.write}:t.write&&"object"==typeof t.write&&void 0===t.write.enabled&&(t.write.enabled=!0)}var l=r(827);function u(t,e){return f(t,"read",e)}function h(t,e){return f(t,"write",e)}function f(t,e,r){let n=t&&t.json;if(t&&t.json&&t.json.origins&&r){const s=r.origin&&t.json.origins[r.origin];s&&("any"===e||e in s)&&(n=s)}return n}function d(t){return t.type?p(t):y(t)}function p(t){if(!t.type)return;let e=0,r=t.type;for(;Array.isArray(r)&&!(0,n.gB)(r);)r=r[0],e++;return{type:r,ndimArray:e}}function y(t){if(!t.types)return;let e=0,r=t.types;for(;Array.isArray(r);)r=r[0],e++;return{types:r,ndimArray:e}}function g(t){i(t)&&(function(t){if(t.json&&t.json.origins){const e=t.json.origins,r={"web-document":["web-scene","web-map"]};for(const t in r)if(e[t]){const n=e[t];r[t].forEach((t=>{e[t]=n})),delete e[t]}}}(t),function(t){const e=function(t){return t.json.types?y(t.json):t.type?p(t):y(t)}(t);if(t.json.origins)for(const r in t.json.origins){const n=t.json.origins[r],i=n.types?d(n):e;(0,s.U)(i,n,!1),n.types&&!n.write&&t.json.write&&t.json.write.enabled&&(n.write={...t.json.write}),(0,l.U)(i,n)}(0,s.U)(e,t.json,!0),(0,l.U)(e,t.json)}(t))}},63213:(t,e,r)=>{r.d(e,{U:()=>l,d:()=>u});var n=r(92604),s=r(78286),i=r(20941),o=r(7628),a=r(14062);const c=n.Z.getLogger("esri.core.accessorSupport.extensions.serializableProperty.reader");function l(t,e,r){t&&(!r&&!e.read||e.read?.reader||!1===e.read?.enabled||function(t){return"types"in t?g(t.types):y(t.type)}(t)&&(0,s.RB)("read.reader",u(t),e))}function u(t){const e=t.ndimArray??0;if(e>1)return function(t){const e=h(t),r=f.bind(null,e),n=t.ndimArray??0;return(t,e,s)=>{if(null==t)return t;t=r(t,s,n);let i=n,o=t;for(;i>0&&Array.isArray(o);)i--,o=o[0];if(void 0!==o)for(let e=0;e<i;e++)t=[t];return t}}(t);if(1===e)return d(t);if("type"in t&&p(t.type)){const e=t.type.prototype?.itemType?.Type,r=d("function"==typeof e?{type:e}:{types:e});return(e,n,s)=>{const i=r(e,n,s);return i?new t.type(i):i}}return h(t)}function h(t){return"type"in t?function(t){return t.prototype.read?(e,r,n)=>{if(null==e)return e;const s=typeof e;if("object"!==s)return void c.error(`Expected JSON value of type 'object' to deserialize type '${t.prototype.declaredClass}', but got '${s}'`);const i=new t;return i.read(e,n),i}:t.fromJSON}(t.type):function(t){let e=null;const r=t.errorContext??"type";return(n,s,a)=>{if(null==n)return n;const l=typeof n;if("object"!==l)return void c.error(`Expected JSON value of type 'object' to deserialize, but got '${l}'`);e||(e=function(t){const e={};for(const r in t.typeMap){const n=t.typeMap[r],s=(0,o.fp)(n.prototype);if("function"==typeof t.key)continue;const i=s[t.key];if(!i)continue;i.json?.type&&Array.isArray(i.json.type)&&1===i.json.type.length&&"string"==typeof i.json.type[0]&&(e[i.json.type[0]]=n);const a=i.json?.write;if(!a||!a.writer){e[r]=n;continue}const c=a.target,l="string"==typeof c?c:t.key,u={};a.writer(r,u,l),u[l]&&(e[u[l]]=n)}return e}(t));const u=t.key;if("string"!=typeof u)return;const h=n[u],f=h?e[h]:t.defaultKeyValue?t.typeMap[t.defaultKeyValue]:void 0;if(!f){const t=`Type '${h||"unknown"}' is not supported`;return a&&a.messages&&n&&a.messages.push(new i.Z(`${r}:unsupported`,t,{definition:n,context:a})),void c.error(t)}const d=new f;return d.read(n,a),d}}(t.types)}function f(t,e,r,n){return 0!==n&&Array.isArray(e)?e.map((e=>f(t,e,r,n-1))):t(e,void 0,r)}function d(t){const e=h(t);return(t,r,n)=>{if(null==t)return t;if(Array.isArray(t)){const r=[];for(const s of t){const t=e(s,void 0,n);void 0!==t&&r.push(t)}return r}const s=e(t,void 0,n);return void 0!==s?[s]:void 0}}function p(t){if(!(0,a.u)(t))return!1;const e=t.prototype.itemType;return!(!e||!e.Type)&&("function"==typeof e.Type?y(e.Type):g(e.Type))}function y(t){return!Array.isArray(t)&&!!t&&t.prototype&&("read"in t.prototype||"fromJSON"in t||p(t))}function g(t){for(const e in t.typeMap)if(!y(t.typeMap[e]))return!1;return!0}},14062:(t,e,r)=>{function n(t){return!!t&&t.prototype&&t.prototype.declaredClass&&0===t.prototype.declaredClass.indexOf("esri.core.Collection")}r.d(e,{u:()=>n})},827:(t,e,r)=>{r.d(e,{U:()=>a,k:()=>h});var n=r(20102),s=r(92604),i=r(78286),o=r(14062);function a(t,e){if(!e.write||e.write.writer||!1===e.write.enabled&&!e.write.overridePolicy)return;const r=t?.ndimArray??0;t&&(1===r||"type"in t&&(0,o.u)(t.type))?e.write.writer=f:r>1?e.write.writer=function(t){return(e,r,n,s)=>{let o;if(null===e)o=null;else{o=d(e,s,t);let r=t,n=o;for(;r>0&&Array.isArray(n);)r--,n=n[0];if(void 0!==n)for(let t=0;t<r;t++)o=[o]}(0,i.RB)(n,o,r)}}(r):e.types?Array.isArray(e.types)?e.write.writer=function(t){return(e,r,n,s)=>e&&Array.isArray(e)?l(e.filter((e=>c(e,t,s))),r,n,s):l(e,r,n,s)}(e.types[0]):e.write.writer=function(t){return(e,r,n,s)=>e?c(e,t,s)?l(e,r,n,s):void 0:l(e,r,n,s)}(e.types):e.write.writer=l}function c(t,e,r){for(const r in e.typeMap)if(t instanceof e.typeMap[r])return!0;if(r?.messages){const i=e.errorContext??"type",o=`Values of type '${("function"!=typeof e.key?t[e.key]:t.declaredClass)??"Unknown"}' cannot be written`;r&&r.messages&&t&&r.messages.push(new n.Z(`${i}:unsupported`,o,{definition:t,context:r})),s.Z.getLogger("esri.core.accessorSupport.extensions.serializableProperty.writer").error(o)}return!1}function l(t,e,r,n){(0,i.RB)(r,u(t,n),e)}function u(t,e){return t&&"function"==typeof t.write?t.write({},e):t&&"function"==typeof t.toJSON?t.toJSON():"number"==typeof t?h(t):t}function h(t){return t===-1/0?-Number.MAX_VALUE:t===1/0?Number.MAX_VALUE:isNaN(t)?null:t}function f(t,e,r,n){let s;null===t?s=null:t&&"function"==typeof t.map?(s=t.map((t=>u(t,n))),"function"==typeof s.toArray&&(s=s.toArray())):s=[u(t,n)],(0,i.RB)(r,s,e)}function d(t,e,r){return 0!==r&&Array.isArray(t)?t.map((t=>d(t,e,r-1))):u(t,e)}},67723:(t,e,r)=>{r.d(e,{$z:()=>o,Gg:()=>c,U2:()=>a});var n=r(1153);function s(t,e){const r="?"===t[t.length-1]?t.slice(0,-1):t;if(null!=e.getItemAt||Array.isArray(e)){const t=parseInt(r,10);if(!isNaN(t))return Array.isArray(e)?e[t]:e.getItemAt(t)}const s=(0,n.vw)(e);return(0,n.b6)(s,r)?s.get(r):e[r]}function i(t,e,r){if(null==t)return t;const n=s(e[r],t);return!n&&r<e.length-1?void 0:r===e.length-1?n:i(n,e,r+1)}function o(t,e,r=0){return"string"!=typeof e||e.includes(".")?i(t,(0,n.NI)(e),r):s(e,t)}function a(t,e){return o(t,e)}function c(t,e){return void 0!==o(e,t)}},97831:(t,e,r)=>{var n;r.d(e,{F:()=>n}),function(t){t[t.INITIALIZING=0]="INITIALIZING",t[t.CONSTRUCTING=1]="CONSTRUCTING",t[t.CONSTRUCTED=2]="CONSTRUCTED"}(n||(n={}))},7628:(t,e,r)=>{r.d(e,{Oe:()=>o,fp:()=>i,tz:()=>a});var n=r(22974),s=r(1153);function i(t){let e=t.constructor.__accessorMetadata__;const r=Object.prototype.hasOwnProperty.call(t.constructor,"__accessorMetadata__");if(e){if(!r){e=Object.create(e);for(const t in e)e[t]=(0,n.d9)(e[t]);Object.defineProperty(t.constructor,"__accessorMetadata__",{value:e,enumerable:!1,configurable:!0,writable:!0})}}else e={},Object.defineProperty(t.constructor,"__accessorMetadata__",{value:e,enumerable:!1,configurable:!0,writable:!0});return t.constructor.__accessorMetadata__}function o(t,e){const r=i(t);let n=r[e];return n||(n=r[e]={}),n}function a(t,e){return(0,s.TS)(t,e,l)}const c=/^(?:[^.]+\.)?(?:value|type|(?:json\.type|json\.origins\.[^.]\.type))$/;function l(t){return c.test(t)?"replace":"merge"}},50549:(t,e,r)=>{r.d(e,{$:()=>h,i:()=>u});var n=r(67723),s=r(1153),i=r(53906);function o(t,e,r){if(!t||!t.read||!1===t.read.enabled||!t.read.source)return!1;const s=t.read.source;if("string"==typeof s){if(s===e)return!0;if(s.includes(".")&&0===s.indexOf(e)&&(0,n.Gg)(s,r))return!0}else for(const t of s){if(t===e)return!0;if(t.includes(".")&&0===t.indexOf(e)&&(0,n.Gg)(t,r))return!0}return!1}function a(t,e,r,n,s){let a=(0,i.HS)(e[r],s);(function(t){return t&&(!t.read||!1!==t.read.enabled&&!t.read.source)})(a)&&(t[r]=!0);for(const c of Object.getOwnPropertyNames(e))a=(0,i.HS)(e[c],s),o(a,r,n)&&(t[c]=!0)}function c(t,e,r,n){const s=r.metadatas,o=(0,i.hk)(s[e],"any",n),a=o&&o.default;if(void 0===a)return;const c="function"==typeof a?a.call(t,e,n):a;void 0!==c&&r.set(e,c)}const l={origin:"service"};function u(t,e,r=l){if(!e||"object"!=typeof e)return;const o=(0,s.vw)(t),u=o.metadatas,h={};for(const t of Object.getOwnPropertyNames(e))a(h,u,t,e,r);o.setDefaultOrigin(r.origin);for(const s of Object.getOwnPropertyNames(h)){const a=(0,i.HS)(u[s],r).read,c=a&&a.source;let l;l=c&&"string"==typeof c?(0,n.$z)(e,c):e[s],a&&a.reader&&(l=a.reader.call(t,l,e,r)),void 0!==l&&o.set(s,l)}if(!r||!r.ignoreDefaults){o.setDefaultOrigin("defaults");for(const e of Object.getOwnPropertyNames(u))h[e]||c(t,e,o,r)}o.setDefaultOrigin("user")}function h(t,e,r,n=l){const s={...n,messages:[]};r(s),s.messages?.forEach((e=>{"warning"!==e.type||t.loaded?n&&n.messages&&n.messages.push(e):t.loadWarnings.push(e)}))}},37697:(t,e,r)=>{r.d(e,{t:()=>o});var n=r(20102),s=r(80442),i=(r(92604),r(67723));function o(t,e,r){if(t&&e)if("object"==typeof e)for(const r of Object.getOwnPropertyNames(e))o(t,r,e[r]);else{if(e.includes(".")){const n=e.split("."),s=n.splice(n.length-1,1)[0];return void o((0,i.U2)(t,n),s,r)}const a=t.__accessor__;null!=a&&function(t,e){if((0,s.Z)("esri-unknown-property-errors")&&!function(t,e){return null!=e.metadatas[t]}(t,e))throw new n.Z("set:unknown-property",function(t,e){return"setting unknown property '"+t+"' on instance of "+e.host.declaredClass}(t,e))}(e,a),t[e]=r}}},58971:(t,e,r)=>{r.d(e,{GF:()=>m,LJ:()=>f,gb:()=>d,it:()=>l,mS:()=>_}),r(80442);var n=r(92604),s=r(1153),i=r(44550);const o={onObservableAccessed:()=>{},onTrackingEnd:()=>{}},a=[];let c=o;function l(t){c.onObservableAccessed(t)}let u=!1,h=!1;function f(t,e,r){if(u)return p(t,e,r);y(t);const n=e.call(r);return g(),n}function d(t,e){return f(o,t,e)}function p(t,e,r){const s=u;u=!0,y(t);let i=null;try{i=e.call(r)}catch(t){h&&n.Z.getLogger("esri.core.accessorSupport.tracking").error(t)}return g(),u=s,i}function y(t){c=t,a.push(t)}function g(){const t=a.length;if(t>1){const e=a.pop();c=a[t-2],e.onTrackingEnd()}else if(1===t){const t=a.pop();c=o,t.onTrackingEnd()}else c=o}function _(t,e){const r=e.observerObject;if(r.flags&i.v.DepTrackingInitialized)return;const n=h;h=!1,r.flags&i.v.AutoTracked?p(e,e.metadata.get,t):m(t,e),h=n}const v=[];function m(t,e){const r=e.observerObject;r.flags&i.v.ExplicitlyTracking||(r.flags|=i.v.ExplicitlyTracking,p(e,(()=>{const r=e.metadata.dependsOn||v;for(const e of r)if("string"!=typeof e||e.includes(".")){const r=(0,s.NI)(e);for(let e=0,n=t;e<r.length&&null!=n&&"object"==typeof n;++e)n=b(n,r[e],e!==r.length-1)}else b(t,e,!1)})),r.flags&=~i.v.ExplicitlyTracking)}function b(t,e,r){const n="?"===e[e.length-1]?e.slice(0,-1):e;if(null!=t.getItemAt||Array.isArray(t)){const e=parseInt(n,10);if(!isNaN(e))return Array.isArray(t)?t[e]:t.getItemAt(e)}const i=(0,s.vw)(t);if(i){const e=i.propertiesByName.get(n);e&&(l(e.observerObject),_(t,e))}return r?t[n]:void 0}},44550:(t,e,r)=>{var n;r.d(e,{v:()=>n}),function(t){t[t.Dirty=1]="Dirty",t[t.Overriden=2]="Overriden",t[t.Computing=4]="Computing",t[t.NonNullable=8]="NonNullable",t[t.HasDefaultValue=16]="HasDefaultValue",t[t.DepTrackingInitialized=32]="DepTrackingInitialized",t[t.AutoTracked=64]="AutoTracked",t[t.ExplicitlyTracking=128]="ExplicitlyTracking"}(n||(n={}))},38805:(t,e,r)=>{r.d(e,{M:()=>n});class n{constructor(t){this._accessed=[],this._handles=[],this._observerObject=new s(t),i.register(this,new WeakRef(this._observerObject),this)}destroy(){i.unregister(this._observerObject),this._accessed.length=0,this._observerObject?.destroy(),this.clear()}onObservableAccessed(t){const e=this._accessed;e.includes(t)||e.push(t)}onTrackingEnd(){const t=this._handles,e=this._accessed,r=this._observerObject;for(let n=0;n<e.length;++n)t.push(e[n].observe(r));e.length=0}clear(){const t=this._handles;for(let e=0;e<t.length;++e)t[e].remove();t.length=0}}class s{constructor(t){this._notify=t,this._invalidCount=0,this.destroyed=!1}onInvalidated(){this._invalidCount++}onCommitted(){if(this.destroyed)return;const t=this._invalidCount;if(1===t)return this._invalidCount=0,void this._notify();this._invalidCount=t>0?t-1:0}destroy(){this.destroyed=!0,this._notify=o}}const i=new FinalizationRegistry((t=>{t.deref()?.destroy()}));function o(){}},87538:(t,e,r)=>{r.d(e,{EH:()=>l,U5:()=>a,Xz:()=>c});var n=r(58971),s=r(38805);let i=!1;const o=[];function a(t,e){let r=new s.M((function s(){if(!r||a)return;if(i)return void u(s);const c=o;r.clear(),i=!0,a=!0,o=(0,n.LJ)(r,t),a=!1,i=!1,e(o,c),h()})),o=null,a=!1;return a=!0,o=(0,n.LJ)(r,t),a=!1,{remove:function(){r&&(r.destroy(),r=null,o=null)}}}function c(t,e){let r=new s.M((function(){e(i,o)})),i=null;function o(){return r?(r.clear(),i=(0,n.LJ)(r,t),i):null}return o(),{remove:function(){r&&(r.destroy(),r=null),i=null}}}function l(t){let e=new s.M((function s(){e&&!r&&(i?u(s):(e.clear(),i=!0,r=!0,(0,n.LJ)(e,t),r=!1,i=!1,h()))})),r=!1;return r=!0,(0,n.LJ)(e,t),r=!1,{remove:function(){e&&(e.destroy(),e=null)}}}function u(t){o.includes(t)||o.unshift(t)}function h(){for(;o.length;)o.pop()()}},1153:(t,e,r)=>{r.d(e,{IH:()=>d,NI:()=>u,Qc:()=>f,TS:()=>c,b6:()=>a,vw:()=>o});var n=r(50758),s=r(22974),i=r(70586);function o(t){return t.__accessor__??null}function a(t,e){return null!=t&&t.metadatas&&null!=t.metadatas[e]}function c(t,e,r){return l(t,e,r?{policy:r,path:""}:null)}function l(t,e,r){return e?Object.keys(e).reduce(((t,n)=>{const o=n;let a=null,c="merge";if(r&&(a=r.path?`${r.path}.${n}`:n,c=r.policy(a)),"replace"===c)return t[o]=e[o],t;if("replace-arrays"===c&&Array.isArray(t[o]))return t[o]=e[o],t;if(void 0===t[o])return t[o]=(0,s.d9)(e[o]),t;let u=t[o],h=e[o];if(u===h)return t;if(Array.isArray(h)||Array.isArray(t))u=u?Array.isArray(u)?t[o]=u.concat():t[o]=[u]:t[o]=[],h&&(Array.isArray(h)||(h=[h]),h.forEach((t=>{u.includes(t)||u.push(t)})));else if(h&&"object"==typeof h)if(r){const e=r.path;r.path=(0,i.j0)(a),t[o]=l(u,h,r),r.path=e}else t[o]=l(u,h,null);else t.hasOwnProperty(n)&&!e.hasOwnProperty(n)||(t[o]=h);return t}),t||{}):t}function u(t){return Array.isArray(t)?t:t.split(".")}function h(t){return t.includes(",")?t.split(",").map((t=>t.trim())):[t.trim()]}function f(t,e,r,s){const i=function(t){if(Array.isArray(t)){const e=[];for(const r of t)e.push(...h(r));return e}return h(t)}(e);if(1!==i.length){const e=i.map((e=>s(t,e,r)));return(0,n.AL)(e)}return s(t,i[0],r)}function d(t){let e=!1;return()=>{e||(e=!0,t())}}},26258:(t,e,r)=>{r.d(e,{BT:()=>w,YP:()=>j,aQ:()=>N});var n=r(3894),s=r(22974),i=r(70586),o=r(71143);class a extends o.Z{constructor(){super(...arguments),this._set=new Set}destroy(){super.destroy(),this._set=(0,i.wN)(this._set)}acquire(...t){const e=super.acquire(...t);return this._set.delete(e),e}release(t){t&&!this._set.has(t)&&(super.release(t),this._set.add(t))}_dispose(t){this._set.delete(t),super._dispose(t)}}var c,l,u=r(1654),h=r(99001),f=r(67723),d=r(87538),p=r(1153);(l=c||(c={}))[l.Untracked=0]="Untracked",l[l.Tracked=1]="Tracked";class y{constructor(){this.uid=(0,h.D)(),this.removed=!1,this.type=null,this.oldValue=null,this.callback=null,this.getValue=null,this.target=null,this.path=null,this.equals=null}static acquireUntracked(t,e,r,n,i){return this.pool.acquire(c.Untracked,t,e,r,n,i,s.fS)}static acquireTracked(t,e,r,n){return this.pool.acquire(c.Tracked,t,e,r,null,null,n)}notify(t,e){this.type===c.Untracked?this.callback.call(this.target,t,e,this.path,this.target):this.callback.call(null,t,e,void 0,void 0)}acquire(t,e,r,n,s,i,o){this.uid=(0,h.D)(),this.removed=!1,this.type=t,this.oldValue=e,this.callback=r,this.getValue=n,this.target=s,this.path=i,this.equals=o}release(){this.target=this.path=this.oldValue=this.callback=this.getValue=null,this.uid=(0,h.D)(),this.removed=!0}}y.pool=new a(y);const g=new n.Z,_=new Set;let v;function m(t){_.delete(t),_.add(t),v||(v=(0,u.Os)(O))}function b(t){if(t.removed)return;const e=t.oldValue,r=t.getValue();t.equals(e,r)||(t.oldValue=r,t.notify(r,e))}function w(t){for(const e of _.values())e.target===t&&(e.removed=!0)}function O(){let t=10;for(;v&&t--;){v=null;const t=A(),e=g.acquire();for(const r of t){const t=r.uid;b(r),t===r.uid&&r.removed&&e.push(r)}for(const t of _)t.removed&&(e.push(t),_.delete(t));for(const t of e)y.pool.release(t);g.release(e),g.release(t),S.forEach((t=>t()))}}function A(){const t=g.acquire();t.length=_.size;let e=0;for(const r of _)t[e]=r,++e;return _.clear(),t}const S=new Set;function j(t,e,r,n=!1){return!t.__accessor__||t.__accessor__.destroyed?{remove(){}}:n?function(t,e,r){const n=(0,p.Qc)(t,e,r,((t,e,r)=>{let i=!1;return(0,d.U5)((()=>(0,f.$z)(t,e)),((o,a)=>{t.__accessor__.destroyed?n.remove():i||(i=!0,(0,s.fS)(a,o)||r.call(t,o,a,e,t),i=!1)}))}));return n}(t,e,r):function(t,e,r){let n=(0,p.Qc)(t,e,r,((t,e,r)=>{let s,i,o=(0,d.Xz)((()=>(0,f.$z)(t,e)),((o,a)=>{t.__accessor__.destroyed||s&&s.uid!==i?n.remove():(s||(s=y.acquireUntracked(o,r,a,t,e),i=s.uid),m(s))}));return{remove:(0,p.IH)((()=>{o.remove(),s&&(s.uid!==i||s.removed||(s.removed=!0,m(s)),s=null),n=o=null}))}}));return n}(t,e,r)}function N(t,e,r=!1,n=s.y7){return r?function(t,e,r){let n=!1;return(0,d.U5)(t,((t,s)=>{n||(n=!0,r(s,t)||e(t,s),n=!1)}))}(t,e,n):function(t,e,r){let n,s,i=(0,d.Xz)(t,((t,o)=>{n&&n.uid!==s?i.remove():(n||(n=y.acquireTracked(t,e,o,r),s=n.uid),m(n))}));return{remove:(0,p.IH)((()=>{i.remove(),n&&(n.uid!==s||n.removed||(n.removed=!0,m(n)),n=null),i=null}))}}(t,e,n)}},76169:(t,e,r)=>{r.d(e,{c:()=>f,d:()=>h});var n=r(67676),s=r(20102),i=r(92604),o=r(31263),a=r(1153),c=r(53906);function l(t,e,r,n,s){const i={};return e.write?.writer?.call(t,n,i,r,s),i}function u(t,e,r,a,c,l){if(!a||!a.write)return!1;const u=t.get(r);if(!c&&a.write.overridePolicy){const e=a.write.overridePolicy.call(t,u,r,l??void 0);void 0!==e&&(c=e)}if(c||(c=a.write),!c||!1===c.enabled)return!1;if((null===u&&!c.allowNull&&!c.writerEnsuresNonNull||void 0===u)&&c.isRequired){const e=new s.Z("web-document-write:property-required",`Missing value for required property '${r}' on '${t.declaredClass}'`,{propertyName:r,target:t});return e&&l&&l.messages?l.messages.push(e):e&&!l&&i.Z.getLogger("esri.core.accessorSupport.write").error(e.name,e.message),!1}return!(void 0===u||null===u&&!c.allowNull&&!c.writerEnsuresNonNull||(!e.store.multipleOriginsSupported||e.store.originOf(r)===o.s3.DEFAULTS)&&function(t,e,r,s,i){const o=s.default;if(void 0===o)return!1;if(null!=s.defaultEquals)return s.defaultEquals(i);if("function"==typeof o){if(Array.isArray(i)){const s=o.call(t,e,r??void 0);return(0,n.fS)(s,i)}return!1}return o===i}(t,r,l,a,u)||!c.ignoreOrigin&&l&&l.origin&&e.store.multipleOriginsSupported&&e.store.originOf(r)<(0,o.M9)(l.origin))}function h(t,e,r,n){const s=(0,a.vw)(t),i=s.metadatas,o=(0,c.Ah)(i[e],n);return!!o&&u(t,s,e,o,r,n)}function f(t,e,r){if(t&&"function"==typeof t.toJSON&&(!t.toJSON.isDefaultToJSON||!t.write))return(0,a.TS)(e,t.toJSON(r));const n=(0,a.vw)(t),s=n.metadatas;for(const i in s){const h=(0,c.Ah)(s[i],r);if(!u(t,n,i,h,void 0,r))continue;const f=t.get(i),d=l(t,h,h.write&&"string"==typeof h.write.target?h.write.target:i,f,r);Object.keys(d).length>0&&(e=(0,a.TS)(e,d),r?.resources?.pendingOperations?.length&&r.resources.pendingOperations.push(Promise.all(r.resources.pendingOperations).then((()=>(0,a.TS)(e,d,(()=>"replace-arrays"))))),r&&r.writtenProperties&&r.writtenProperties.push({target:t,propName:i,oldOrigin:(0,o.Wm)(n.store.originOf(i)),newOrigin:r.origin}))}return e}},50758:(t,e,r)=>{function n(t){return s((()=>t.forEach((t=>null!=t&&t.remove()))))}function s(t){return{remove:()=>{t&&(t(),t=void 0)}}}r.d(e,{AL:()=>n,kB:()=>s})},66374:(t,e,r)=>{function n(t){const e=[];return function*(){yield*e;for(const r of t)e.push(r),yield r}}function s(t,e){for(const r of t)if(null!=r&&e(r))return r}function i(t){return null!=t&&"function"==typeof t[Symbol.iterator]}r.d(e,{Fs:()=>n,TW:()=>i,sE:()=>s})},35454:(t,e,r)=>{r.d(e,{X:()=>s,w:()=>i});var n=r(78286);class s{constructor(t,e={ignoreUnknown:!1,useNumericKeys:!1}){this._jsonToAPI=t,this._options=e,this.apiValues=[],this.jsonValues=[],this._apiToJSON=this._invertMap(t),this.apiValues=this._getKeysSorted(this._apiToJSON),this.jsonValues=this._getKeysSorted(this._jsonToAPI),this.read=t=>this.fromJSON(t),this.write=(t,e,r)=>{const s=this.toJSON(t);void 0!==s&&(0,n.RB)(r,s,e)},this.write.isJSONMapWriter=!0}toJSON(t){if(null==t)return null;if(this._apiToJSON.hasOwnProperty(t)){const e=this._apiToJSON[t];return this._options.useNumericKeys?+e:e}return this._options.ignoreUnknown?void 0:t}fromJSON(t){return null!=t&&this._jsonToAPI.hasOwnProperty(t)?this._jsonToAPI[t]:this._options.ignoreUnknown?void 0:t}_invertMap(t){const e={};for(const r in t)e[t[r]]=r;return e}_getKeysSorted(t){const e=[];for(const r in t)e.push(r);return e.sort(),e}}function i(){return function(t,e){return new s(t,{ignoreUnknown:!0,...e})}}},41213:(t,e,r)=>{r.d(e,{Y:()=>s});const n=[];function s(t){n.push(t),1===n.length&&queueMicrotask((()=>{const t=n.slice();n.length=0;for(const e of t)e()}))}},1654:(t,e,r)=>{r.d(e,{MU:()=>b,Os:()=>g});var n=r(70586),s=r(41213),i=r(54790),o=r(44553),a=r(95330),c=r(76882);class l{constructor(t){this.callback=t,this.isActive=!0}remove(){this.isActive=!1}}let u=0;const h={time:(0,c.HA)(0),deltaTime:(0,c.HA)(0),elapsedFrameTime:(0,c.HA)(0),frameDuration:(0,c.HA)(0)},f=["prepare","preRender","render","postRender","update","finish"],d=[],p=new o.Z,y={frameTasks:p,willDispatch:!1,clearFrameTasks:function(t=!1){p.forAll((t=>{t.removed=!0})),t&&v()},dispatch:m,executeFrameTasks:function(t){const e=(0,c.HA)(t-u);u=t;const r=1e3/60,n=Math.max(0,e-r);h.time=t,h.frameDuration=(0,c.HA)(r-n);for(let r=0;r<f.length;r++){const n=performance.now(),s=f[r];p.forAll((n=>{n.paused||n.removed||(0===r&&n.ticks++,n.phases[s]&&(h.elapsedFrameTime=(0,c.HA)(performance.now()-t),h.deltaTime=0===n.ticks?(0,c.HA)(0):e,n.phases[s]?.call(n,h)))})),w[r].record(performance.now()-n)}v(),O.record(performance.now()-t)}};function g(t){const e=new l(t);return d.push(e),y.willDispatch||(y.willDispatch=!0,(0,s.Y)(m)),e}const _=new o.Z;function v(){p.forAll((t=>{t.removed&&_.push(t)})),p.removeUnorderedMany(_.data,_.length),_.clear()}function m(){for(;d.length;){const t=(0,n.j0)(d.shift());t.isActive&&t.callback()}y.willDispatch=!1}function b(t=1,e){const r=(0,a.hh)(),n=()=>{(0,a.Hc)(e)?r.reject((0,a.zE)()):0===t?r():(--t,(0,s.Y)((()=>n())))};return n(),r.promise}const w=f.map((t=>new i.Z(t))),O=new i.Z("total")},76882:(t,e,r)=>{function n(t){return t}r.d(e,{HA:()=>n})},99001:(t,e,r)=>{r.d(e,{D:()=>s});let n=0;function s(){return++n}}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[9971,5732],{92835:(e,t,s)=>{s.d(t,{Z:()=>m});var r,i=s(43697),l=s(96674),n=s(70586),o=s(35463),a=s(5600),h=(s(75215),s(67676),s(80442),s(71715)),u=s(52011),c=s(30556);let p=r=class extends l.wq{static get allTime(){return d}static get empty(){return f}constructor(e){super(e),this.end=null,this.start=null}readEnd(e,t){return null!=t.end?new Date(t.end):null}writeEnd(e,t){t.end=e?e.getTime():null}get isAllTime(){return this.equals(r.allTime)}get isEmpty(){return this.equals(r.empty)}readStart(e,t){return null!=t.start?new Date(t.start):null}writeStart(e,t){t.start=e?e.getTime():null}clone(){return new r({end:this.end,start:this.start})}equals(e){if(!e)return!1;const t=null!=this.start?this.start.getTime():this.start,s=null!=this.end?this.end.getTime():this.end,r=null!=e.start?e.start.getTime():e.start,i=null!=e.end?e.end.getTime():e.end;return t===r&&s===i}expandTo(e){if(this.isEmpty||this.isAllTime)return this.clone();const t=(0,n.yw)(this.start,(t=>(0,o.JE)(t,e))),s=(0,n.yw)(this.end,(t=>{const s=(0,o.JE)(t,e);return t.getTime()===s.getTime()?s:(0,o.Nm)(s,1,e)}));return new r({start:t,end:s})}intersection(e){if(!e)return this.clone();if(this.isEmpty||e.isEmpty)return r.empty;if(this.isAllTime)return e.clone();if(e.isAllTime)return this.clone();const t=this.start?.getTime()??-1/0,s=this.end?.getTime()??1/0,i=e.start?.getTime()??-1/0,l=e.end?.getTime()??1/0;let n,o;if(i>=t&&i<=s?n=i:t>=i&&t<=l&&(n=t),s>=i&&s<=l?o=s:l>=t&&l<=s&&(o=l),null!=n&&null!=o&&!isNaN(n)&&!isNaN(o)){const e=new r;return e.start=n===-1/0?null:new Date(n),e.end=o===1/0?null:new Date(o),e}return r.empty}offset(e,t){if(this.isEmpty||this.isAllTime)return this.clone();const s=new r,{start:i,end:l}=this;return null!=i&&(s.start=(0,o.Nm)(i,e,t)),null!=l&&(s.end=(0,o.Nm)(l,e,t)),s}union(e){if(!e||e.isEmpty)return this.clone();if(this.isEmpty)return e.clone();if(this.isAllTime||e.isAllTime)return d.clone();const t=null!=this.start&&null!=e.start?new Date(Math.min(this.start.getTime(),e.start.getTime())):null,s=null!=this.end&&null!=e.end?new Date(Math.max(this.end.getTime(),e.end.getTime())):null;return new r({start:t,end:s})}};(0,i._)([(0,a.Cb)({type:Date,json:{write:{allowNull:!0}}})],p.prototype,"end",void 0),(0,i._)([(0,h.r)("end")],p.prototype,"readEnd",null),(0,i._)([(0,c.c)("end")],p.prototype,"writeEnd",null),(0,i._)([(0,a.Cb)({readOnly:!0,json:{read:!1}})],p.prototype,"isAllTime",null),(0,i._)([(0,a.Cb)({readOnly:!0,json:{read:!1}})],p.prototype,"isEmpty",null),(0,i._)([(0,a.Cb)({type:Date,json:{write:{allowNull:!0}}})],p.prototype,"start",void 0),(0,i._)([(0,h.r)("start")],p.prototype,"readStart",null),(0,i._)([(0,c.c)("start")],p.prototype,"writeStart",null),p=r=(0,i._)([(0,u.j)("esri.TimeExtent")],p);const d=new p,f=new p({start:void 0,end:void 0}),m=p},5732:(e,t,s)=>{s.d(t,{c:()=>r,g:()=>i});var r="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function i(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}},46791:(e,t,s)=>{s.d(t,{Z:()=>Z});var r,i=s(43697),l=s(3894),n=s(32448),o=s(22974),a=s(70586),h=s(71143);!function(e){e[e.ADD=1]="ADD",e[e.REMOVE=2]="REMOVE",e[e.MOVE=4]="MOVE"}(r||(r={}));var u,c=s(1654),p=s(75215),d=s(58971),f=s(5600),m=s(52421),g=s(52011),v=s(10661);const y=new h.Z(class{constructor(){this.target=null,this.cancellable=!1,this.defaultPrevented=!1,this.item=void 0,this.type=void 0}preventDefault(){this.cancellable&&(this.defaultPrevented=!0)}reset(e){this.defaultPrevented=!1,this.item=e}},void 0,(e=>{e.item=null,e.target=null,e.defaultPrevented=!1,e.cancellable=!1})),_=()=>{};function b(e){return e?e instanceof x?e.toArray():e.length?Array.prototype.slice.apply(e):[]:[]}function w(e){if(e&&e.length)return e[0]}function C(e,t,s,r){const i=Math.min(e.length-s,t.length-r);let l=0;for(;l<i&&e[s+l]===t[r+l];)l++;return l}function E(e,t,s,r){t&&t.forEach(((t,i,l)=>{e.push(t),E(e,s.call(r,t,i,l),s,r)}))}const T=new Set,D=new Set,I=new Set,M=new Map;let O=0,x=u=class extends n.Z.EventedAccessor{static isCollection(e){return null!=e&&e instanceof u}constructor(e){super(e),this._chgListeners=[],this._notifications=null,this._timer=null,this._observable=new v.s,this.length=0,this._items=[],Object.defineProperty(this,"uid",{value:O++})}normalizeCtorArgs(e){return e?Array.isArray(e)||e instanceof u?{items:e}:e:{}}destroy(){this._removeAllRaw()}*[Symbol.iterator](){yield*this.items}get items(){return(0,d.it)(this._observable),this._items}set items(e){this._emitBeforeChanges(r.ADD)||(this._splice(0,this.length,b(e)),this._emitAfterChanges(r.ADD))}hasEventListener(e){return"change"===e?this._chgListeners.length>0:this._emitter.hasEventListener(e)}on(e,t){if("change"===e){const e=this._chgListeners,s={removed:!1,callback:t};return e.push(s),this._notifications&&this._notifications.push({listeners:e.slice(),items:this._items.slice(),changes:[]}),{remove(){this.remove=_,s.removed=!0,e.splice(e.indexOf(s),1)}}}return this._emitter.on(e,t)}once(e,t){const s=this.on(e,t);return{remove(){s.remove()}}}add(e,t){if((0,d.it)(this._observable),this._emitBeforeChanges(r.ADD))return this;const s=this.getNextIndex(t??null);return this._splice(s,0,[e]),this._emitAfterChanges(r.ADD),this}addMany(e,t=this._items.length){if((0,d.it)(this._observable),!e||!e.length)return this;if(this._emitBeforeChanges(r.ADD))return this;const s=this.getNextIndex(t);return this._splice(s,0,b(e)),this._emitAfterChanges(r.ADD),this}at(e){if((0,d.it)(this._observable),(e=Math.trunc(e)||0)<0&&(e+=this.length),!(e<0||e>=this.length))return this._items[e]}removeAll(){if((0,d.it)(this._observable),!this.length||this._emitBeforeChanges(r.REMOVE))return[];const e=this._removeAllRaw();return this._emitAfterChanges(r.REMOVE),e}_removeAllRaw(){return 0===this.length?[]:this._splice(0,this.length)||[]}clone(){return(0,d.it)(this._observable),this._createNewInstance({items:this._items.map(o.d9)})}concat(...e){(0,d.it)(this._observable);const t=e.map(b);return this._createNewInstance({items:this._items.concat(...t)})}drain(e,t){if((0,d.it)(this._observable),!this.length||this._emitBeforeChanges(r.REMOVE))return;const s=(0,a.j0)(this._splice(0,this.length)),i=s.length;for(let r=0;r<i;r++)e.call(t,s[r],r,s);this._emitAfterChanges(r.REMOVE)}every(e,t){return(0,d.it)(this._observable),this._items.every(e,t)}filter(e,t){let s;return(0,d.it)(this._observable),s=2===arguments.length?this._items.filter(e,t):this._items.filter(e),this._createNewInstance({items:s})}find(e,t){return(0,d.it)(this._observable),this._items.find(e,t)}findIndex(e,t){return(0,d.it)(this._observable),this._items.findIndex(e,t)}flatten(e,t){(0,d.it)(this._observable);const s=[];return E(s,this,e,t),new u(s)}forEach(e,t){return(0,d.it)(this._observable),this._items.forEach(e,t)}getItemAt(e){return(0,d.it)(this._observable),this._items[e]}getNextIndex(e){(0,d.it)(this._observable);const t=this.length;return(e=e??t)<0?e=0:e>t&&(e=t),e}includes(e,t=0){return(0,d.it)(this._observable),this._items.includes(e,t)}indexOf(e,t=0){return(0,d.it)(this._observable),this._items.indexOf(e,t)}join(e=","){return(0,d.it)(this._observable),this._items.join(e)}lastIndexOf(e,t=this.length-1){return(0,d.it)(this._observable),this._items.lastIndexOf(e,t)}map(e,t){(0,d.it)(this._observable);const s=this._items.map(e,t);return new u({items:s})}reorder(e,t=this.length-1){(0,d.it)(this._observable);const s=this.indexOf(e);if(-1!==s){if(t<0?t=0:t>=this.length&&(t=this.length-1),s!==t){if(this._emitBeforeChanges(r.MOVE))return e;this._splice(s,1),this._splice(t,0,[e]),this._emitAfterChanges(r.MOVE)}return e}}pop(){if((0,d.it)(this._observable),!this.length||this._emitBeforeChanges(r.REMOVE))return;const e=w(this._splice(this.length-1,1));return this._emitAfterChanges(r.REMOVE),e}push(...e){return(0,d.it)(this._observable),this._emitBeforeChanges(r.ADD)||(this._splice(this.length,0,e),this._emitAfterChanges(r.ADD)),this.length}reduce(e,t){(0,d.it)(this._observable);const s=this._items;return 2===arguments.length?s.reduce(e,t):s.reduce(e)}reduceRight(e,t){(0,d.it)(this._observable);const s=this._items;return 2===arguments.length?s.reduceRight(e,t):s.reduceRight(e)}remove(e){return(0,d.it)(this._observable),this.removeAt(this.indexOf(e))}removeAt(e){if((0,d.it)(this._observable),e<0||e>=this.length||this._emitBeforeChanges(r.REMOVE))return;const t=w(this._splice(e,1));return this._emitAfterChanges(r.REMOVE),t}removeMany(e){if((0,d.it)(this._observable),!e||!e.length||this._emitBeforeChanges(r.REMOVE))return[];const t=e instanceof u?e.toArray():e,s=this._items,i=[],l=t.length;for(let e=0;e<l;e++){const r=t[e],l=s.indexOf(r);if(l>-1){const r=1+C(t,s,e+1,l+1),n=this._splice(l,r);n&&n.length>0&&i.push.apply(i,n),e+=r-1}}return this._emitAfterChanges(r.REMOVE),i}reverse(){if((0,d.it)(this._observable),this._emitBeforeChanges(r.MOVE))return this;const e=this._splice(0,this.length);return e&&(e.reverse(),this._splice(0,0,e)),this._emitAfterChanges(r.MOVE),this}shift(){if((0,d.it)(this._observable),!this.length||this._emitBeforeChanges(r.REMOVE))return;const e=w(this._splice(0,1));return this._emitAfterChanges(r.REMOVE),e}slice(e=0,t=this.length){return(0,d.it)(this._observable),this._createNewInstance({items:this._items.slice(e,t)})}some(e,t){return(0,d.it)(this._observable),this._items.some(e,t)}sort(e){if((0,d.it)(this._observable),!this.length||this._emitBeforeChanges(r.MOVE))return this;const t=(0,a.j0)(this._splice(0,this.length));return arguments.length?t.sort(e):t.sort(),this._splice(0,0,t),this._emitAfterChanges(r.MOVE),this}splice(e,t,...s){(0,d.it)(this._observable);const i=(t?r.REMOVE:0)|(s.length?r.ADD:0);if(this._emitBeforeChanges(i))return[];const l=this._splice(e,t,s)||[];return this._emitAfterChanges(i),l}toArray(){return(0,d.it)(this._observable),this._items.slice()}toJSON(){return(0,d.it)(this._observable),this.toArray()}toLocaleString(){return(0,d.it)(this._observable),this._items.toLocaleString()}toString(){return(0,d.it)(this._observable),this._items.toString()}unshift(...e){return(0,d.it)(this._observable),!e.length||this._emitBeforeChanges(r.ADD)||(this._splice(0,0,e),this._emitAfterChanges(r.ADD)),this.length}_createNewInstance(e){return new this.constructor(e)}_splice(e,t,s){const r=this._items,i=this.itemType;let l,n;if(!this._notifications&&this.hasEventListener("change")&&(this._notifications=[{listeners:this._chgListeners.slice(),items:this._items.slice(),changes:[]}],this._timer&&this._timer.remove(),this._timer=(0,c.Os)((()=>this._dispatchChange()))),t){if(n=r.splice(e,t),this.hasEventListener("before-remove")){const t=y.acquire();t.target=this,t.cancellable=!0;for(let s=0,i=n.length;s<i;s++)l=n[s],t.reset(l),this.emit("before-remove",t),t.defaultPrevented&&(n.splice(s,1),r.splice(e,0,l),e+=1,s-=1,i-=1);y.release(t)}if(this.length=this._items.length,this.hasEventListener("after-remove")){const e=y.acquire();e.target=this,e.cancellable=!1;const t=n.length;for(let s=0;s<t;s++)e.reset(n[s]),this.emit("after-remove",e);y.release(e)}}if(s&&s.length){if(i){const e=[];for(const t of s){const s=i.ensureType(t);null==s&&null!=t||e.push(s)}s=e}const t=this.hasEventListener("before-add"),l=this.hasEventListener("after-add"),n=e===this.length;if(t||l){const i=y.acquire();i.target=this,i.cancellable=!0;const o=y.acquire();o.target=this,o.cancellable=!1;for(const a of s)t?(i.reset(a),this.emit("before-add",i),i.defaultPrevented||(n?r.push(a):r.splice(e++,0,a),this._set("length",r.length),l&&(o.reset(a),this.emit("after-add",o)))):(n?r.push(a):r.splice(e++,0,a),this._set("length",r.length),o.reset(a),this.emit("after-add",o));y.release(o),y.release(i)}else{if(n)for(const e of s)r.push(e);else r.splice(e,0,...s);this._set("length",r.length)}}return(s&&s.length||n&&n.length)&&this._notifyChangeEvent(s,n),n}_emitBeforeChanges(e){let t=!1;if(this.hasEventListener("before-changes")){const s=y.acquire();s.target=this,s.cancellable=!0,s.type=e,this.emit("before-changes",s),t=s.defaultPrevented,y.release(s)}return t}_emitAfterChanges(e){if(this.hasEventListener("after-changes")){const t=y.acquire();t.target=this,t.cancellable=!1,t.type=e,this.emit("after-changes",t),y.release(t)}this._observable.notify()}_notifyChangeEvent(e,t){this.hasEventListener("change")&&this._notifications&&this._notifications[this._notifications.length-1].changes.push({added:e,removed:t})}_dispatchChange(){if(this._timer&&(this._timer.remove(),this._timer=null),!this._notifications)return;const e=this._notifications;this._notifications=null;for(const t of e){const e=t.changes;T.clear(),D.clear(),I.clear();for(const{added:t,removed:s}of e){if(t)if(0===I.size&&0===D.size)for(const e of t)T.add(e);else for(const e of t)D.has(e)?(I.add(e),D.delete(e)):I.has(e)||T.add(e);if(s)if(0===I.size&&0===T.size)for(const e of s)D.add(e);else for(const e of s)T.has(e)?T.delete(e):(I.delete(e),D.add(e))}const s=l.Z.acquire();T.forEach((e=>{s.push(e)}));const r=l.Z.acquire();D.forEach((e=>{r.push(e)}));const i=this._items,n=t.items,o=l.Z.acquire();if(I.forEach((e=>{n.indexOf(e)!==i.indexOf(e)&&o.push(e)})),t.listeners&&(s.length||r.length||o.length)){const e={target:this,added:s,removed:r,moved:o},i=t.listeners.length;for(let s=0;s<i;s++){const r=t.listeners[s];r.removed||r.callback.call(this,e)}}l.Z.release(s),l.Z.release(r),l.Z.release(o)}T.clear(),D.clear(),I.clear()}};x.ofType=e=>{if(!e)return u;if(M.has(e))return M.get(e);let t=null;if("function"==typeof e)t=e.prototype.declaredClass;else if(e.base)t=e.base.prototype.declaredClass;else for(const s in e.typeMap){const r=e.typeMap[s].prototype.declaredClass;t?t+=` | ${r}`:t=r}let s=class extends u{};return(0,i._)([(0,m.c)({Type:e,ensureType:"function"==typeof e?(0,p.se)(e):(0,p.N7)(e)})],s.prototype,"itemType",void 0),s=(0,i._)([(0,g.j)(`esri.core.Collection<${t}>`)],s),M.set(e,s),s},(0,i._)([(0,f.Cb)()],x.prototype,"length",void 0),(0,i._)([(0,f.Cb)()],x.prototype,"items",null),x=u=(0,i._)([(0,g.j)("esri.core.Collection")],x);const Z=x},52421:(e,t,s)=>{function r(e){return(t,s)=>{t[s]=e}}s.d(t,{c:()=>r})},35463:(e,t,s)=>{s.d(t,{JE:()=>n,Nm:()=>l,rJ:()=>o}),s(80442);const r={milliseconds:1,seconds:1e3,minutes:6e4,hours:36e5,days:864e5,weeks:6048e5,months:26784e5,years:31536e6,decades:31536e7,centuries:31536e8},i={milliseconds:{getter:"getMilliseconds",setter:"setMilliseconds",multiplier:1},seconds:{getter:"getSeconds",setter:"setSeconds",multiplier:1},minutes:{getter:"getMinutes",setter:"setMinutes",multiplier:1},hours:{getter:"getHours",setter:"setHours",multiplier:1},days:{getter:"getDate",setter:"setDate",multiplier:1},weeks:{getter:"getDate",setter:"setDate",multiplier:7},months:{getter:"getMonth",setter:"setMonth",multiplier:1},years:{getter:"getFullYear",setter:"setFullYear",multiplier:1},decades:{getter:"getFullYear",setter:"setFullYear",multiplier:10},centuries:{getter:"getFullYear",setter:"setFullYear",multiplier:100}};function l(e,t,s){const r=new Date(e.getTime());if(t&&s){const e=i[s],{getter:l,setter:n,multiplier:o}=e;if("months"===s){const e=function(e,t){const s=new Date(e,t+1,1);return s.setDate(0),s.getDate()}(r.getFullYear(),r.getMonth()+t);r.getDate()>e&&r.setDate(e)}r[n](r[l]()+t*o)}return r}function n(e,t){switch(t){case"milliseconds":return new Date(e.getTime());case"seconds":return new Date(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds());case"minutes":return new Date(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes());case"hours":return new Date(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours());case"days":return new Date(e.getFullYear(),e.getMonth(),e.getDate());case"weeks":return new Date(e.getFullYear(),e.getMonth(),e.getDate()-e.getDay());case"months":return new Date(e.getFullYear(),e.getMonth(),1);case"years":return new Date(e.getFullYear(),0,1);case"decades":return new Date(e.getFullYear()-e.getFullYear()%10,0,1);case"centuries":return new Date(e.getFullYear()-e.getFullYear()%100,0,1);default:return new Date}}function o(e,t,s){return 0===e?0:e*r[t]/r[s]}},16199:(e,t,s)=>{s.r(t),s.d(t,{default:()=>O});var r,i=s(43697),l=(s(66577),s(3172)),n=s(20102),o=s(16453),a=s(19153),h=s(17452),u=s(5600),c=(s(75215),s(67676),s(80442),s(71715)),p=s(52011),d=s(30556),f=s(87085),m=s(71612),g=s(38009),v=s(16859),y=s(34760),_=s(72965),b=s(90082),w=s(39450),C=s(11145),E=s(5833),T=s(6570),D=s(82971),I=s(94139);let M=r=class extends((0,m.h)((0,y.Q)((0,_.M)((0,g.q)((0,v.I)((0,o.R)(f.Z))))))){constructor(...e){super(...e),this.copyright="",this.fullExtent=new T.Z(-20037508.342787,-20037508.34278,20037508.34278,20037508.342787,D.Z.WebMercator),this.legendEnabled=!1,this.isReference=null,this.popupEnabled=!1,this.spatialReference=D.Z.WebMercator,this.subDomains=null,this.tileInfo=new C.Z({size:[256,256],dpi:96,format:"png8",compressionQuality:0,origin:new I.Z({x:-20037508.342787,y:20037508.342787,spatialReference:D.Z.WebMercator}),spatialReference:D.Z.WebMercator,lods:[new w.Z({level:0,scale:591657527.591555,resolution:156543.033928}),new w.Z({level:1,scale:295828763.795777,resolution:78271.5169639999}),new w.Z({level:2,scale:147914381.897889,resolution:39135.7584820001}),new w.Z({level:3,scale:73957190.948944,resolution:19567.8792409999}),new w.Z({level:4,scale:36978595.474472,resolution:9783.93962049996}),new w.Z({level:5,scale:18489297.737236,resolution:4891.96981024998}),new w.Z({level:6,scale:9244648.868618,resolution:2445.98490512499}),new w.Z({level:7,scale:4622324.434309,resolution:1222.99245256249}),new w.Z({level:8,scale:2311162.217155,resolution:611.49622628138}),new w.Z({level:9,scale:1155581.108577,resolution:305.748113140558}),new w.Z({level:10,scale:577790.554289,resolution:152.874056570411}),new w.Z({level:11,scale:288895.277144,resolution:76.4370282850732}),new w.Z({level:12,scale:144447.638572,resolution:38.2185141425366}),new w.Z({level:13,scale:72223.819286,resolution:19.1092570712683}),new w.Z({level:14,scale:36111.909643,resolution:9.55462853563415}),new w.Z({level:15,scale:18055.954822,resolution:4.77731426794937}),new w.Z({level:16,scale:9027.977411,resolution:2.38865713397468}),new w.Z({level:17,scale:4513.988705,resolution:1.19432856685505}),new w.Z({level:18,scale:2256.994353,resolution:.597164283559817}),new w.Z({level:19,scale:1128.497176,resolution:.298582141647617}),new w.Z({level:20,scale:564.248588,resolution:.14929107082380833}),new w.Z({level:21,scale:282.124294,resolution:.07464553541190416}),new w.Z({level:22,scale:141.062147,resolution:.03732276770595208}),new w.Z({level:23,scale:70.5310735,resolution:.01866138385297604})]}),this.type="web-tile",this.urlTemplate=null,this.wmtsInfo=null}normalizeCtorArgs(e,t){return"string"==typeof e?{urlTemplate:e,...t}:e}load(e){const t=this.loadFromPortal({supportedTypes:["WMTS"]},e).then((()=>{let e="";if(this.urlTemplate)if(this.spatialReference.equals(this.tileInfo.spatialReference)){const t=new h.R9(this.urlTemplate);!(this.subDomains&&this.subDomains.length>0)&&t.authority?.includes("{subDomain}")&&(e="is missing 'subDomains' property")}else e="spatialReference must match tileInfo.spatialReference";else e="is missing the required 'urlTemplate' property value";if(e)throw new n.Z("web-tile-layer:load",`WebTileLayer (title: '${this.title}', id: '${this.id}') ${e}`)}));return this.addResolvingPromise(t),Promise.resolve(this)}get levelValues(){const e=[];if(!this.tileInfo)return null;for(const t of this.tileInfo.lods)e[t.level]=t.levelValue||t.level;return e}readSpatialReference(e,t){return e||t.fullExtent&&t.fullExtent.spatialReference&&D.Z.fromJSON(t.fullExtent.spatialReference)}get tileServers(){if(!this.urlTemplate)return null;const e=[],{urlTemplate:t,subDomains:s}=this,r=new h.R9(t),i=r.scheme?r.scheme+"://":"//",l=i+r.authority+"/",n=r.authority;if(n?.includes("{subDomain}")){if(s&&s.length>0&&n.split(".").length>1)for(const t of s)e.push(i+n.replace(/\{subDomain\}/gi,t)+"/")}else e.push(l);return e.map((e=>("/"!==e.charAt(e.length-1)&&(e+="/"),e)))}get urlPath(){if(!this.urlTemplate)return null;const e=this.urlTemplate,t=new h.R9(e),s=(t.scheme?t.scheme+"://":"//")+t.authority+"/";return e.substring(s.length)}readUrlTemplate(e,t){return e||t.templateUrl}writeUrlTemplate(e,t){e&&(0,h.oC)(e)&&(e="https:"+e),e&&(e=e.replace(/\{z\}/gi,"{level}").replace(/\{x\}/gi,"{col}").replace(/\{y\}/gi,"{row}"),e=(0,h.Fv)(e)),t.templateUrl=e}fetchTile(e,t,s,r={}){const{signal:i}=r,n=this.getTileUrl(e,t,s),o={responseType:"image",signal:i,query:{...this.refreshParameters}};return(0,l.default)(n,o).then((e=>e.data))}async fetchImageBitmapTile(e,t,s,i={}){const{signal:n}=i;if(this.fetchTile!==r.prototype.fetchTile){const r=await this.fetchTile(e,t,s,i);return(0,b.V)(r,e,t,s,n)}const o=this.getTileUrl(e,t,s),a={responseType:"blob",signal:n,query:{...this.refreshParameters}},{data:h}=await(0,l.default)(o,a);return(0,b.V)(h,e,t,s,n)}getTileUrl(e,t,s){const{levelValues:r,tileServers:i,urlPath:l}=this;if(!r||!i||!l)return"";const n=r[e];return i[t%i.length]+(0,a.gx)(l,{level:n,z:n,col:s,x:s,row:t,y:t})}};(0,i._)([(0,u.Cb)({type:String,value:"",json:{write:!0}})],M.prototype,"copyright",void 0),(0,i._)([(0,u.Cb)({type:T.Z,json:{write:!0},nonNullable:!0})],M.prototype,"fullExtent",void 0),(0,i._)([(0,u.Cb)({readOnly:!0,json:{read:!1,write:!1}})],M.prototype,"legendEnabled",void 0),(0,i._)([(0,u.Cb)({type:["show","hide"]})],M.prototype,"listMode",void 0),(0,i._)([(0,u.Cb)({json:{read:!0,write:!0}})],M.prototype,"blendMode",void 0),(0,i._)([(0,u.Cb)()],M.prototype,"levelValues",null),(0,i._)([(0,u.Cb)({type:Boolean,json:{read:!1,write:{enabled:!0,overridePolicy:()=>({enabled:!1})}}})],M.prototype,"isReference",void 0),(0,i._)([(0,u.Cb)({type:["WebTiledLayer"],value:"WebTiledLayer"})],M.prototype,"operationalLayerType",void 0),(0,i._)([(0,u.Cb)({readOnly:!0,json:{read:!1,write:!1}})],M.prototype,"popupEnabled",void 0),(0,i._)([(0,u.Cb)({type:D.Z})],M.prototype,"spatialReference",void 0),(0,i._)([(0,c.r)("spatialReference",["spatialReference","fullExtent.spatialReference"])],M.prototype,"readSpatialReference",null),(0,i._)([(0,u.Cb)({type:[String],json:{write:!0}})],M.prototype,"subDomains",void 0),(0,i._)([(0,u.Cb)({type:C.Z,json:{write:!0}})],M.prototype,"tileInfo",void 0),(0,i._)([(0,u.Cb)({readOnly:!0})],M.prototype,"tileServers",null),(0,i._)([(0,u.Cb)({json:{read:!1}})],M.prototype,"type",void 0),(0,i._)([(0,u.Cb)()],M.prototype,"urlPath",null),(0,i._)([(0,u.Cb)({type:String,json:{origins:{"portal-item":{read:{source:"url"}}}}})],M.prototype,"urlTemplate",void 0),(0,i._)([(0,c.r)("urlTemplate",["urlTemplate","templateUrl"])],M.prototype,"readUrlTemplate",null),(0,i._)([(0,d.c)("urlTemplate",{templateUrl:{type:String}})],M.prototype,"writeUrlTemplate",null),(0,i._)([(0,u.Cb)({type:E.B,json:{write:!0}})],M.prototype,"wmtsInfo",void 0),M=r=(0,i._)([(0,p.j)("esri.layers.WebTileLayer")],M);const O=M},16859:(e,t,s)=>{s.d(t,{I:()=>C});var r=s(43697),i=s(68773),l=s(40330),n=s(3172),o=s(66643),a=s(20102),h=s(92604),u=s(70586),c=s(95330),p=s(17452),d=s(5600),f=(s(75215),s(67676),s(80442),s(71715)),m=s(52011),g=s(30556),v=s(84230),y=s(65587),_=s(15235),b=s(86082),w=s(14661);const C=e=>{let t=class extends e{constructor(){super(...arguments),this.resourceReferences={portalItem:null,paths:[]},this.userHasEditingPrivileges=!0,this.userHasFullEditingPrivileges=!1,this.userHasUpdateItemPrivileges=!1}destroy(){this.portalItem=(0,u.SC)(this.portalItem),this.resourceReferences.portalItem=null,this.resourceReferences.paths.length=0}set portalItem(e){e!==this._get("portalItem")&&(this.removeOrigin("portal-item"),this._set("portalItem",e))}readPortalItem(e,t,s){if(t.itemId)return new _.default({id:t.itemId,portal:s&&s.portal})}writePortalItem(e,t){e&&e.id&&(t.itemId=e.id)}async loadFromPortal(e,t){if(this.portalItem&&this.portalItem.id)try{const r=await s.e(8062).then(s.bind(s,18062));return(0,c.k_)(t),await r.load({instance:this,supportedTypes:e.supportedTypes,validateItem:e.validateItem,supportsData:e.supportsData,layerModuleTypeMap:e.layerModuleTypeMap},t)}catch(e){throw(0,c.D_)(e)||h.Z.getLogger(this.declaredClass).warn(`Failed to load layer (${this.title}, ${this.id}) portal item (${this.portalItem.id})\n ${e}`),e}}async finishLoadEditablePortalLayer(e){this._set("userHasEditingPrivileges",await this._fetchUserHasEditingPrivileges(e).catch((e=>((0,c.r9)(e),!0))))}async _setUserPrivileges(e,t){if(!i.default.userPrivilegesApplied)return this.finishLoadEditablePortalLayer(t);if(this.url)try{const{features:{edit:s,fullEdit:r},content:{updateItem:i}}=await this._fetchUserPrivileges(e,t);this._set("userHasEditingPrivileges",s),this._set("userHasFullEditingPrivileges",r),this._set("userHasUpdateItemPrivileges",i)}catch(e){(0,c.r9)(e)}}async _fetchUserPrivileges(e,t){let s=this.portalItem;if(!e||!s||!s.loaded||s.sourceUrl)return this._fetchFallbackUserPrivileges(t);const r=e===s.id;if(r&&s.portal.user)return(0,w.Ss)(s);let i,n;if(r)i=s.portal.url;else try{i=await(0,v.oP)(this.url,t)}catch(e){(0,c.r9)(e)}if(!i||!(0,p.Zo)(i,s.portal.url))return this._fetchFallbackUserPrivileges(t);try{const e=null!=t?t.signal:null;n=await(l.id?.getCredential(`${i}/sharing`,{prompt:!1,signal:e}))}catch(e){(0,c.r9)(e)}if(!n)return{features:{edit:!0,fullEdit:!1},content:{updateItem:!1}};try{if(r?await s.reload():(s=new _.default({id:e,portal:{url:i}}),await s.load(t)),s.portal.user)return(0,w.Ss)(s)}catch(e){(0,c.r9)(e)}return{features:{edit:!0,fullEdit:!1},content:{updateItem:!1}}}async _fetchFallbackUserPrivileges(e){let t=!0;try{t=await this._fetchUserHasEditingPrivileges(e)}catch(e){(0,c.r9)(e)}return{features:{edit:t,fullEdit:!1},content:{updateItem:!1}}}async _fetchUserHasEditingPrivileges(e){const t=this.url?l.id?.findCredential(this.url):null;if(!t)return!0;const s=E.credential===t?E.user:await this._fetchEditingUser(e);return E.credential=t,E.user=s,null==s||null==s.privileges||s.privileges.includes("features:user:edit")}async _fetchEditingUser(e){const t=this.portalItem?.portal?.user;if(t)return t;const s=l.id.findServerInfo(this.url??"");if(!s?.owningSystemUrl)return null;const r=`${s.owningSystemUrl}/sharing/rest`,i=y.Z.getDefault();if(i&&i.loaded&&(0,p.Fv)(i.restUrl)===(0,p.Fv)(r))return i.user;const a=`${r}/community/self`,h=null!=e?e.signal:null,u=await(0,o.q6)((0,n.default)(a,{authMode:"no-prompt",query:{f:"json"},signal:h}));return u.ok?b.default.fromJSON(u.value.data):null}read(e,t){t&&(t.layer=this),super.read(e,t)}write(e,t){const s=t&&t.portal,r=this.portalItem&&this.portalItem.id&&(this.portalItem.portal||y.Z.getDefault());return s&&r&&!(0,p.tm)(r.restUrl,s.restUrl)?(t.messages&&t.messages.push(new a.Z("layer:cross-portal",`The layer '${this.title} (${this.id})' cannot be persisted because it refers to an item on a different portal than the one being saved to. To save, set layer.portalItem to null or save to the same portal as the item associated with the layer`,{layer:this})),null):super.write(e,{...t,layer:this})}};return(0,r._)([(0,d.Cb)({type:_.default})],t.prototype,"portalItem",null),(0,r._)([(0,f.r)("web-document","portalItem",["itemId"])],t.prototype,"readPortalItem",null),(0,r._)([(0,g.c)("web-document","portalItem",{itemId:{type:String}})],t.prototype,"writePortalItem",null),(0,r._)([(0,d.Cb)({clonable:!1})],t.prototype,"resourceReferences",void 0),(0,r._)([(0,d.Cb)({type:Boolean,readOnly:!0})],t.prototype,"userHasEditingPrivileges",void 0),(0,r._)([(0,d.Cb)({type:Boolean,readOnly:!0})],t.prototype,"userHasFullEditingPrivileges",void 0),(0,r._)([(0,d.Cb)({type:Boolean,readOnly:!0})],t.prototype,"userHasUpdateItemPrivileges",void 0),t=(0,r._)([(0,m.j)("esri.layers.mixins.PortalLayer")],t),t},E={credential:null,user:null}},34760:(e,t,s)=>{s.d(t,{Q:()=>v});var r=s(43697),i=s(92604),l=s(95330),n=s(5600),o=(s(75215),s(67676),s(80442),s(52011)),a=s(46791),h=(s(20102),s(26258),s(87538));const u=new a.Z,c=new WeakMap;function p(e){return null!=e&&"object"==typeof e&&"refreshInterval"in e&&"refresh"in e}function d(e,t){return Number.isFinite(e)&&Number.isFinite(t)?t<=0?e:d(t,e%t):0}let f=0,m=0;function g(){const e=Date.now();for(const t of u)t.refreshInterval&&e-(c.get(t)??0)+5>=6e4*t.refreshInterval&&(c.set(t,e),t.refresh(e))}(0,h.EH)((()=>{const e=Date.now();let t=0;for(const s of u)t=d(Math.round(6e4*s.refreshInterval),t),s.refreshInterval?c.get(s)||c.set(s,e):c.delete(s);if(t!==m){if(m=t,clearInterval(f),0===m)return void(f=0);f=setInterval(g,m)}}));const v=e=>{let t=class extends e{constructor(...e){super(...e),this.refreshInterval=0,this.refreshTimestamp=0,this._debounceHasDataChanged=(0,l.Ds)((()=>this.hasDataChanged())),this.when().then((()=>{this.destroyed||function(e){p(e)&&u.push(e)}(this)}),(()=>{}))}destroy(){p(this)&&u.includes(this)&&u.remove(this)}get refreshParameters(){return{_ts:this.refreshTimestamp||null}}refresh(e=Date.now()){(0,l.R8)(this._debounceHasDataChanged()).then((t=>{t&&this._set("refreshTimestamp",e),this.emit("refresh",{dataChanged:t})}),(e=>{i.Z.getLogger(this.declaredClass).error(e),this.emit("refresh",{dataChanged:!1,error:e})}))}async hasDataChanged(){return!0}};return(0,r._)([(0,n.Cb)({type:Number,cast:e=>e>=.1?e:e<=0?0:.1,json:{write:!0}})],t.prototype,"refreshInterval",void 0),(0,r._)([(0,n.Cb)({readOnly:!0})],t.prototype,"refreshTimestamp",void 0),(0,r._)([(0,n.Cb)()],t.prototype,"refreshParameters",null),t=(0,r._)([(0,o.j)("esri.layers.mixins.RefreshableLayer")],t),t}},39450:(e,t,s)=>{s.d(t,{Z:()=>u});var r,i=s(43697),l=s(96674),n=s(5600),o=s(75215),a=(s(67676),s(80442),s(52011));let h=r=class extends l.wq{constructor(e){super(e),this.cols=null,this.level=0,this.levelValue=null,this.origin=null,this.resolution=0,this.rows=null,this.scale=0}clone(){return new r({cols:this.cols,level:this.level,levelValue:this.levelValue,resolution:this.resolution,rows:this.rows,scale:this.scale})}};(0,i._)([(0,n.Cb)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],h.prototype,"cols",void 0),(0,i._)([(0,n.Cb)({type:o.z8,json:{write:!0}})],h.prototype,"level",void 0),(0,i._)([(0,n.Cb)({type:String,json:{write:!0}})],h.prototype,"levelValue",void 0),(0,i._)([(0,n.Cb)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],h.prototype,"origin",void 0),(0,i._)([(0,n.Cb)({type:Number,json:{write:!0}})],h.prototype,"resolution",void 0),(0,i._)([(0,n.Cb)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],h.prototype,"rows",void 0),(0,i._)([(0,n.Cb)({type:Number,json:{write:!0}})],h.prototype,"scale",void 0),h=r=(0,i._)([(0,a.j)("esri.layers.support.LOD")],h);const u=h},11145:(e,t,s)=>{s.d(t,{Z:()=>T});var r,i=s(43697),l=s(35454),n=s(96674),o=s(67900),a=s(5600),h=s(75215),u=(s(67676),s(80442),s(71715)),c=s(52011),p=s(30556),d=s(94139),f=s(82971),m=s(24470),g=s(8744),v=s(40488),y=s(39450),_=s(43077);const b=new l.X({PNG:"png",PNG8:"png8",PNG24:"png24",PNG32:"png32",JPEG:"jpg",JPG:"jpg",DIB:"dib",TIFF:"tiff",EMF:"emf",PS:"ps",PDF:"pdf",GIF:"gif",SVG:"svg",SVGZ:"svgz",Mixed:"mixed",MIXED:"mixed",LERC:"lerc",LERC2D:"lerc2d",RAW:"raw",pbf:"pbf"});let w=r=class extends n.wq{static create(e={}){const{resolutionFactor:t=1,scales:s,size:i=256,spatialReference:l=f.Z.WebMercator,numLODs:n=24}=e;if(!(0,g.JY)(l)){const e=[];if(s)for(let t=0;t<s.length;t++){const r=s[t];e.push(new y.Z({level:t,scale:r,resolution:r}))}else{let t=5e-4;for(let s=n-1;s>=0;s--)e.unshift(new y.Z({level:s,scale:t,resolution:t})),t*=2}return new r({dpi:96,lods:e,origin:new d.Z(0,0,l),size:[i,i],spatialReference:l})}const a=(0,g.C5)(l),h=e.origin?new d.Z({x:e.origin.x,y:e.origin.y,spatialReference:l}):new d.Z(a?{x:a.origin[0],y:a.origin[1],spatialReference:l}:{x:0,y:0,spatialReference:l}),u=1/(39.37*(0,o.c9)(l)*96),c=[];if(s)for(let e=0;e<s.length;e++){const t=s[e],r=t*u;c.push(new y.Z({level:e,scale:t,resolution:r}))}else{let e=(0,g.sT)(l)?512/i*591657527.5917094:256/i*591657527.591555;const s=Math.ceil(n/t);c.push(new y.Z({level:0,scale:e,resolution:e*u}));for(let r=1;r<s;r++){const s=e/2**t,i=s*u;c.push(new y.Z({level:r,scale:s,resolution:i})),e=s}}return new r({dpi:96,lods:c,origin:h,size:[i,i],spatialReference:l})}constructor(e){super(e),this.dpi=96,this.format=null,this.origin=null,this.minScale=0,this.maxScale=0,this.size=null,this.spatialReference=null}get isWrappable(){const{spatialReference:e,origin:t}=this;if(e&&t){const s=(0,g.C5)(e);return e.isWrappable&&!!s&&Math.abs(s.origin[0]-t.x)<=s.dx}return!1}readOrigin(e,t){return d.Z.fromJSON({spatialReference:t.spatialReference,...e})}set lods(e){let t=0,s=0;const r=[],i=this._levelToLOD={};e&&(t=-1/0,s=1/0,e.forEach((e=>{r.push(e.scale),t=e.scale>t?e.scale:t,s=e.scale<s?e.scale:s,i[e.level]=e}))),this._set("scales",r),this._set("minScale",t),this._set("maxScale",s),this._set("lods",e),this._initializeUpsampleLevels()}readSize(e,t){return[t.cols,t.rows]}writeSize(e,t){t.cols=e[0],t.rows=e[1]}zoomToScale(e){const t=this.scales;if(e<=0)return t[0];if(e>=t.length-1)return t[t.length-1];const s=Math.floor(e),r=s+1;return t[s]/(t[s]/t[r])**(e-s)}scaleToZoom(e){const t=this.scales,s=t.length-1;let r=0;for(;r<s;r++){const s=t[r],i=t[r+1];if(s<=e)return r;if(i===e)return r+1;if(s>e&&i<e)return r+Math.log(s/e)/Math.log(s/i)}return r}snapScale(e,t=.95){const s=this.scaleToZoom(e);return s%Math.floor(s)>=t?this.zoomToScale(Math.ceil(s)):this.zoomToScale(Math.floor(s))}tileAt(e,t,s,r){const i=this.lodAt(e);if(!i)return null;let l,n;if("number"==typeof t)l=t,n=s;else if((0,g.fS)(t.spatialReference,this.spatialReference))l=t.x,n=t.y,r=s;else{const e=(0,v.iV)(t,this.spatialReference);if(null==e)return null;l=e.x,n=e.y,r=s}const o=i.resolution*this.size[0],a=i.resolution*this.size[1];return r||(r=new _.f(null,0,0,0,(0,m.Ue)())),r.level=e,r.row=Math.floor((this.origin.y-n)/a+.001),r.col=Math.floor((l-this.origin.x)/o+.001),this.updateTileInfo(r),r}updateTileInfo(e,t=r.ExtrapolateOptions.NONE){let s=this.lodAt(e.level);if(!s&&t===r.ExtrapolateOptions.POWER_OF_TWO){const t=this.lods[this.lods.length-1];t.level<e.level&&(s=t)}if(!s)return;const i=e.level-s.level,l=s.resolution*this.size[0]/2**i,n=s.resolution*this.size[1]/2**i;e.id=`${e.level}/${e.row}/${e.col}`,e.extent||(e.extent=(0,m.Ue)()),e.extent[0]=this.origin.x+e.col*l,e.extent[1]=this.origin.y-(e.row+1)*n,e.extent[2]=e.extent[0]+l,e.extent[3]=e.extent[1]+n}upsampleTile(e){const t=this._upsampleLevels[e.level];return!(!t||-1===t.parentLevel||(e.level=t.parentLevel,e.row=Math.floor(e.row/t.factor+.001),e.col=Math.floor(e.col/t.factor+.001),this.updateTileInfo(e),0))}getTileBounds(e,t){const s=this.lodAt(t.level);if(null==s)return null;const{resolution:r}=s,i=r*this.size[0],l=r*this.size[1];return e[0]=this.origin.x+t.col*i,e[1]=this.origin.y-(t.row+1)*l,e[2]=e[0]+i,e[3]=e[1]+l,e}lodAt(e){return this._levelToLOD?.[e]??null}clone(){return r.fromJSON(this.write({}))}getOrCreateCompatible(e,t){if(256===this.size[0]&&256===this.size[1])return 256===e?this:null;const s=[],i=this.lods.length;for(let e=0;e<i;e++){const r=this.lods[e],i=r.resolution*t;s.push(new y.Z({level:r.level,scale:r.scale,resolution:i}))}return new r({size:[e,e],dpi:this.dpi,format:this.format,compressionQuality:this.compressionQuality,origin:this.origin,spatialReference:this.spatialReference,lods:s})}_initializeUpsampleLevels(){const e=this.lods;this._upsampleLevels=[];let t=null;for(let s=0;s<e.length;s++){const r=e[s];this._upsampleLevels[r.level]={parentLevel:t?t.level:-1,factor:t?t.resolution/r.resolution:0},t=r}}};var C,E;(0,i._)([(0,a.Cb)({type:Number,json:{write:!0}})],w.prototype,"compressionQuality",void 0),(0,i._)([(0,a.Cb)({type:Number,json:{write:!0}})],w.prototype,"dpi",void 0),(0,i._)([(0,a.Cb)({type:String,json:{read:b.read,write:b.write,origins:{"web-scene":{read:!1,write:!1}}}})],w.prototype,"format",void 0),(0,i._)([(0,a.Cb)({readOnly:!0})],w.prototype,"isWrappable",null),(0,i._)([(0,a.Cb)({type:d.Z,json:{write:!0}})],w.prototype,"origin",void 0),(0,i._)([(0,u.r)("origin")],w.prototype,"readOrigin",null),(0,i._)([(0,a.Cb)({type:[y.Z],value:null,json:{write:!0}})],w.prototype,"lods",null),(0,i._)([(0,a.Cb)({readOnly:!0})],w.prototype,"minScale",void 0),(0,i._)([(0,a.Cb)({readOnly:!0})],w.prototype,"maxScale",void 0),(0,i._)([(0,a.Cb)({readOnly:!0})],w.prototype,"scales",void 0),(0,i._)([(0,a.Cb)({cast:e=>Array.isArray(e)?e:"number"==typeof e?[e,e]:[256,256]})],w.prototype,"size",void 0),(0,i._)([(0,u.r)("size",["rows","cols"])],w.prototype,"readSize",null),(0,i._)([(0,p.c)("size",{cols:{type:h.z8},rows:{type:h.z8}})],w.prototype,"writeSize",null),(0,i._)([(0,a.Cb)({type:f.Z,json:{write:!0}})],w.prototype,"spatialReference",void 0),w=r=(0,i._)([(0,c.j)("esri.layers.support.TileInfo")],w),(E=(C=w||(w={})).ExtrapolateOptions||(C.ExtrapolateOptions={}))[E.NONE=0]="NONE",E[E.POWER_OF_TWO=1]="POWER_OF_TWO";const T=w},43077:(e,t,s)=>{s.d(t,{f:()=>r});class r{constructor(e,t,s,r,i=undefined){this.id=e,this.level=t,this.row=s,this.col=r,this.extent=i}}},5833:(e,t,s)=>{s.d(t,{B:()=>h});var r,i=s(43697),l=s(96674),n=s(22974),o=s(5600),a=(s(75215),s(52011));let h=r=class extends l.wq{constructor(e){super(e)}clone(){return new r({customLayerParameters:(0,n.d9)(this.customLayerParameters),customParameters:(0,n.d9)(this.customParameters),layerIdentifier:this.layerIdentifier,tileMatrixSet:this.tileMatrixSet,url:this.url})}};(0,i._)([(0,o.Cb)({json:{type:Object,write:!0}})],h.prototype,"customLayerParameters",void 0),(0,i._)([(0,o.Cb)({json:{type:Object,write:!0}})],h.prototype,"customParameters",void 0),(0,i._)([(0,o.Cb)({type:String,json:{write:!0}})],h.prototype,"layerIdentifier",void 0),(0,i._)([(0,o.Cb)({type:String,json:{write:!0}})],h.prototype,"tileMatrixSet",void 0),(0,i._)([(0,o.Cb)({type:String,json:{write:!0}})],h.prototype,"url",void 0),h=r=(0,i._)([(0,a.j)("esri.layer.support.WMTSLayerInfo")],h)},90082:(e,t,s)=>{s.d(t,{V:()=>n,g:()=>l});var r=s(20102),i=s(95330);async function l(e,t,s){let l;try{l=await createImageBitmap(e)}catch(e){throw new r.Z("request:server",`Unable to load ${t}`,{url:t,error:e})}return(0,i.k_)(s),l}async function n(e,t,s,l,n){let o;try{o=await createImageBitmap(e)}catch(e){throw new r.Z("request:server",`Unable to load tile ${t}/${s}/${l}`,{error:e,level:t,row:s,col:l})}return(0,i.k_)(n),o}}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[9971,5732],{92835:(e,t,s)=>{s.d(t,{Z:()=>m});var r,i=s(43697),l=s(96674),n=s(70586),o=s(35463),a=s(5600),h=(s(75215),s(67676),s(80442),s(71715)),u=s(52011),c=s(30556);let p=r=class extends l.wq{static get allTime(){return d}static get empty(){return f}constructor(e){super(e),this.end=null,this.start=null}readEnd(e,t){return null!=t.end?new Date(t.end):null}writeEnd(e,t){t.end=e?e.getTime():null}get isAllTime(){return this.equals(r.allTime)}get isEmpty(){return this.equals(r.empty)}readStart(e,t){return null!=t.start?new Date(t.start):null}writeStart(e,t){t.start=e?e.getTime():null}clone(){return new r({end:this.end,start:this.start})}equals(e){if(!e)return!1;const t=null!=this.start?this.start.getTime():this.start,s=null!=this.end?this.end.getTime():this.end,r=null!=e.start?e.start.getTime():e.start,i=null!=e.end?e.end.getTime():e.end;return t===r&&s===i}expandTo(e){if(this.isEmpty||this.isAllTime)return this.clone();const t=(0,n.yw)(this.start,(t=>(0,o.JE)(t,e))),s=(0,n.yw)(this.end,(t=>{const s=(0,o.JE)(t,e);return t.getTime()===s.getTime()?s:(0,o.Nm)(s,1,e)}));return new r({start:t,end:s})}intersection(e){if(!e)return this.clone();if(this.isEmpty||e.isEmpty)return r.empty;if(this.isAllTime)return e.clone();if(e.isAllTime)return this.clone();const t=this.start?.getTime()??-1/0,s=this.end?.getTime()??1/0,i=e.start?.getTime()??-1/0,l=e.end?.getTime()??1/0;let n,o;if(i>=t&&i<=s?n=i:t>=i&&t<=l&&(n=t),s>=i&&s<=l?o=s:l>=t&&l<=s&&(o=l),null!=n&&null!=o&&!isNaN(n)&&!isNaN(o)){const e=new r;return e.start=n===-1/0?null:new Date(n),e.end=o===1/0?null:new Date(o),e}return r.empty}offset(e,t){if(this.isEmpty||this.isAllTime)return this.clone();const s=new r,{start:i,end:l}=this;return null!=i&&(s.start=(0,o.Nm)(i,e,t)),null!=l&&(s.end=(0,o.Nm)(l,e,t)),s}union(e){if(!e||e.isEmpty)return this.clone();if(this.isEmpty)return e.clone();if(this.isAllTime||e.isAllTime)return d.clone();const t=null!=this.start&&null!=e.start?new Date(Math.min(this.start.getTime(),e.start.getTime())):null,s=null!=this.end&&null!=e.end?new Date(Math.max(this.end.getTime(),e.end.getTime())):null;return new r({start:t,end:s})}};(0,i._)([(0,a.Cb)({type:Date,json:{write:{allowNull:!0}}})],p.prototype,"end",void 0),(0,i._)([(0,h.r)("end")],p.prototype,"readEnd",null),(0,i._)([(0,c.c)("end")],p.prototype,"writeEnd",null),(0,i._)([(0,a.Cb)({readOnly:!0,json:{read:!1}})],p.prototype,"isAllTime",null),(0,i._)([(0,a.Cb)({readOnly:!0,json:{read:!1}})],p.prototype,"isEmpty",null),(0,i._)([(0,a.Cb)({type:Date,json:{write:{allowNull:!0}}})],p.prototype,"start",void 0),(0,i._)([(0,h.r)("start")],p.prototype,"readStart",null),(0,i._)([(0,c.c)("start")],p.prototype,"writeStart",null),p=r=(0,i._)([(0,u.j)("esri.TimeExtent")],p);const d=new p,f=new p({start:void 0,end:void 0}),m=p},5732:(e,t,s)=>{s.d(t,{c:()=>r,g:()=>i});var r="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function i(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}},46791:(e,t,s)=>{s.d(t,{Z:()=>Z});var r,i=s(43697),l=s(3894),n=s(32448),o=s(22974),a=s(70586),h=s(71143);!function(e){e[e.ADD=1]="ADD",e[e.REMOVE=2]="REMOVE",e[e.MOVE=4]="MOVE"}(r||(r={}));var u,c=s(1654),p=s(75215),d=s(58971),f=s(5600),m=s(52421),g=s(52011),v=s(10661);const y=new h.Z(class{constructor(){this.target=null,this.cancellable=!1,this.defaultPrevented=!1,this.item=void 0,this.type=void 0}preventDefault(){this.cancellable&&(this.defaultPrevented=!0)}reset(e){this.defaultPrevented=!1,this.item=e}},void 0,(e=>{e.item=null,e.target=null,e.defaultPrevented=!1,e.cancellable=!1})),_=()=>{};function b(e){return e?e instanceof x?e.toArray():e.length?Array.prototype.slice.apply(e):[]:[]}function w(e){if(e&&e.length)return e[0]}function C(e,t,s,r){const i=Math.min(e.length-s,t.length-r);let l=0;for(;l<i&&e[s+l]===t[r+l];)l++;return l}function E(e,t,s,r){t&&t.forEach(((t,i,l)=>{e.push(t),E(e,s.call(r,t,i,l),s,r)}))}const T=new Set,D=new Set,I=new Set,M=new Map;let O=0,x=u=class extends n.Z.EventedAccessor{static isCollection(e){return null!=e&&e instanceof u}constructor(e){super(e),this._chgListeners=[],this._notifications=null,this._timer=null,this._observable=new v.s,this.length=0,this._items=[],Object.defineProperty(this,"uid",{value:O++})}normalizeCtorArgs(e){return e?Array.isArray(e)||e instanceof u?{items:e}:e:{}}destroy(){this._removeAllRaw()}*[Symbol.iterator](){yield*this.items}get items(){return(0,d.it)(this._observable),this._items}set items(e){this._emitBeforeChanges(r.ADD)||(this._splice(0,this.length,b(e)),this._emitAfterChanges(r.ADD))}hasEventListener(e){return"change"===e?this._chgListeners.length>0:this._emitter.hasEventListener(e)}on(e,t){if("change"===e){const e=this._chgListeners,s={removed:!1,callback:t};return e.push(s),this._notifications&&this._notifications.push({listeners:e.slice(),items:this._items.slice(),changes:[]}),{remove(){this.remove=_,s.removed=!0,e.splice(e.indexOf(s),1)}}}return this._emitter.on(e,t)}once(e,t){const s=this.on(e,t);return{remove(){s.remove()}}}add(e,t){if((0,d.it)(this._observable),this._emitBeforeChanges(r.ADD))return this;const s=this.getNextIndex(t??null);return this._splice(s,0,[e]),this._emitAfterChanges(r.ADD),this}addMany(e,t=this._items.length){if((0,d.it)(this._observable),!e||!e.length)return this;if(this._emitBeforeChanges(r.ADD))return this;const s=this.getNextIndex(t);return this._splice(s,0,b(e)),this._emitAfterChanges(r.ADD),this}at(e){if((0,d.it)(this._observable),(e=Math.trunc(e)||0)<0&&(e+=this.length),!(e<0||e>=this.length))return this._items[e]}removeAll(){if((0,d.it)(this._observable),!this.length||this._emitBeforeChanges(r.REMOVE))return[];const e=this._removeAllRaw();return this._emitAfterChanges(r.REMOVE),e}_removeAllRaw(){return 0===this.length?[]:this._splice(0,this.length)||[]}clone(){return(0,d.it)(this._observable),this._createNewInstance({items:this._items.map(o.d9)})}concat(...e){(0,d.it)(this._observable);const t=e.map(b);return this._createNewInstance({items:this._items.concat(...t)})}drain(e,t){if((0,d.it)(this._observable),!this.length||this._emitBeforeChanges(r.REMOVE))return;const s=(0,a.j0)(this._splice(0,this.length)),i=s.length;for(let r=0;r<i;r++)e.call(t,s[r],r,s);this._emitAfterChanges(r.REMOVE)}every(e,t){return(0,d.it)(this._observable),this._items.every(e,t)}filter(e,t){let s;return(0,d.it)(this._observable),s=2===arguments.length?this._items.filter(e,t):this._items.filter(e),this._createNewInstance({items:s})}find(e,t){return(0,d.it)(this._observable),this._items.find(e,t)}findIndex(e,t){return(0,d.it)(this._observable),this._items.findIndex(e,t)}flatten(e,t){(0,d.it)(this._observable);const s=[];return E(s,this,e,t),new u(s)}forEach(e,t){return(0,d.it)(this._observable),this._items.forEach(e,t)}getItemAt(e){return(0,d.it)(this._observable),this._items[e]}getNextIndex(e){(0,d.it)(this._observable);const t=this.length;return(e=e??t)<0?e=0:e>t&&(e=t),e}includes(e,t=0){return(0,d.it)(this._observable),this._items.includes(e,t)}indexOf(e,t=0){return(0,d.it)(this._observable),this._items.indexOf(e,t)}join(e=","){return(0,d.it)(this._observable),this._items.join(e)}lastIndexOf(e,t=this.length-1){return(0,d.it)(this._observable),this._items.lastIndexOf(e,t)}map(e,t){(0,d.it)(this._observable);const s=this._items.map(e,t);return new u({items:s})}reorder(e,t=this.length-1){(0,d.it)(this._observable);const s=this.indexOf(e);if(-1!==s){if(t<0?t=0:t>=this.length&&(t=this.length-1),s!==t){if(this._emitBeforeChanges(r.MOVE))return e;this._splice(s,1),this._splice(t,0,[e]),this._emitAfterChanges(r.MOVE)}return e}}pop(){if((0,d.it)(this._observable),!this.length||this._emitBeforeChanges(r.REMOVE))return;const e=w(this._splice(this.length-1,1));return this._emitAfterChanges(r.REMOVE),e}push(...e){return(0,d.it)(this._observable),this._emitBeforeChanges(r.ADD)||(this._splice(this.length,0,e),this._emitAfterChanges(r.ADD)),this.length}reduce(e,t){(0,d.it)(this._observable);const s=this._items;return 2===arguments.length?s.reduce(e,t):s.reduce(e)}reduceRight(e,t){(0,d.it)(this._observable);const s=this._items;return 2===arguments.length?s.reduceRight(e,t):s.reduceRight(e)}remove(e){return(0,d.it)(this._observable),this.removeAt(this.indexOf(e))}removeAt(e){if((0,d.it)(this._observable),e<0||e>=this.length||this._emitBeforeChanges(r.REMOVE))return;const t=w(this._splice(e,1));return this._emitAfterChanges(r.REMOVE),t}removeMany(e){if((0,d.it)(this._observable),!e||!e.length||this._emitBeforeChanges(r.REMOVE))return[];const t=e instanceof u?e.toArray():e,s=this._items,i=[],l=t.length;for(let e=0;e<l;e++){const r=t[e],l=s.indexOf(r);if(l>-1){const r=1+C(t,s,e+1,l+1),n=this._splice(l,r);n&&n.length>0&&i.push.apply(i,n),e+=r-1}}return this._emitAfterChanges(r.REMOVE),i}reverse(){if((0,d.it)(this._observable),this._emitBeforeChanges(r.MOVE))return this;const e=this._splice(0,this.length);return e&&(e.reverse(),this._splice(0,0,e)),this._emitAfterChanges(r.MOVE),this}shift(){if((0,d.it)(this._observable),!this.length||this._emitBeforeChanges(r.REMOVE))return;const e=w(this._splice(0,1));return this._emitAfterChanges(r.REMOVE),e}slice(e=0,t=this.length){return(0,d.it)(this._observable),this._createNewInstance({items:this._items.slice(e,t)})}some(e,t){return(0,d.it)(this._observable),this._items.some(e,t)}sort(e){if((0,d.it)(this._observable),!this.length||this._emitBeforeChanges(r.MOVE))return this;const t=(0,a.j0)(this._splice(0,this.length));return arguments.length?t.sort(e):t.sort(),this._splice(0,0,t),this._emitAfterChanges(r.MOVE),this}splice(e,t,...s){(0,d.it)(this._observable);const i=(t?r.REMOVE:0)|(s.length?r.ADD:0);if(this._emitBeforeChanges(i))return[];const l=this._splice(e,t,s)||[];return this._emitAfterChanges(i),l}toArray(){return(0,d.it)(this._observable),this._items.slice()}toJSON(){return(0,d.it)(this._observable),this.toArray()}toLocaleString(){return(0,d.it)(this._observable),this._items.toLocaleString()}toString(){return(0,d.it)(this._observable),this._items.toString()}unshift(...e){return(0,d.it)(this._observable),!e.length||this._emitBeforeChanges(r.ADD)||(this._splice(0,0,e),this._emitAfterChanges(r.ADD)),this.length}_createNewInstance(e){return new this.constructor(e)}_splice(e,t,s){const r=this._items,i=this.itemType;let l,n;if(!this._notifications&&this.hasEventListener("change")&&(this._notifications=[{listeners:this._chgListeners.slice(),items:this._items.slice(),changes:[]}],this._timer&&this._timer.remove(),this._timer=(0,c.Os)((()=>this._dispatchChange()))),t){if(n=r.splice(e,t),this.hasEventListener("before-remove")){const t=y.acquire();t.target=this,t.cancellable=!0;for(let s=0,i=n.length;s<i;s++)l=n[s],t.reset(l),this.emit("before-remove",t),t.defaultPrevented&&(n.splice(s,1),r.splice(e,0,l),e+=1,s-=1,i-=1);y.release(t)}if(this.length=this._items.length,this.hasEventListener("after-remove")){const e=y.acquire();e.target=this,e.cancellable=!1;const t=n.length;for(let s=0;s<t;s++)e.reset(n[s]),this.emit("after-remove",e);y.release(e)}}if(s&&s.length){if(i){const e=[];for(const t of s){const s=i.ensureType(t);null==s&&null!=t||e.push(s)}s=e}const t=this.hasEventListener("before-add"),l=this.hasEventListener("after-add"),n=e===this.length;if(t||l){const i=y.acquire();i.target=this,i.cancellable=!0;const o=y.acquire();o.target=this,o.cancellable=!1;for(const a of s)t?(i.reset(a),this.emit("before-add",i),i.defaultPrevented||(n?r.push(a):r.splice(e++,0,a),this._set("length",r.length),l&&(o.reset(a),this.emit("after-add",o)))):(n?r.push(a):r.splice(e++,0,a),this._set("length",r.length),o.reset(a),this.emit("after-add",o));y.release(o),y.release(i)}else{if(n)for(const e of s)r.push(e);else r.splice(e,0,...s);this._set("length",r.length)}}return(s&&s.length||n&&n.length)&&this._notifyChangeEvent(s,n),n}_emitBeforeChanges(e){let t=!1;if(this.hasEventListener("before-changes")){const s=y.acquire();s.target=this,s.cancellable=!0,s.type=e,this.emit("before-changes",s),t=s.defaultPrevented,y.release(s)}return t}_emitAfterChanges(e){if(this.hasEventListener("after-changes")){const t=y.acquire();t.target=this,t.cancellable=!1,t.type=e,this.emit("after-changes",t),y.release(t)}this._observable.notify()}_notifyChangeEvent(e,t){this.hasEventListener("change")&&this._notifications&&this._notifications[this._notifications.length-1].changes.push({added:e,removed:t})}_dispatchChange(){if(this._timer&&(this._timer.remove(),this._timer=null),!this._notifications)return;const e=this._notifications;this._notifications=null;for(const t of e){const e=t.changes;T.clear(),D.clear(),I.clear();for(const{added:t,removed:s}of e){if(t)if(0===I.size&&0===D.size)for(const e of t)T.add(e);else for(const e of t)D.has(e)?(I.add(e),D.delete(e)):I.has(e)||T.add(e);if(s)if(0===I.size&&0===T.size)for(const e of s)D.add(e);else for(const e of s)T.has(e)?T.delete(e):(I.delete(e),D.add(e))}const s=l.Z.acquire();T.forEach((e=>{s.push(e)}));const r=l.Z.acquire();D.forEach((e=>{r.push(e)}));const i=this._items,n=t.items,o=l.Z.acquire();if(I.forEach((e=>{n.indexOf(e)!==i.indexOf(e)&&o.push(e)})),t.listeners&&(s.length||r.length||o.length)){const e={target:this,added:s,removed:r,moved:o},i=t.listeners.length;for(let s=0;s<i;s++){const r=t.listeners[s];r.removed||r.callback.call(this,e)}}l.Z.release(s),l.Z.release(r),l.Z.release(o)}T.clear(),D.clear(),I.clear()}};x.ofType=e=>{if(!e)return u;if(M.has(e))return M.get(e);let t=null;if("function"==typeof e)t=e.prototype.declaredClass;else if(e.base)t=e.base.prototype.declaredClass;else for(const s in e.typeMap){const r=e.typeMap[s].prototype.declaredClass;t?t+=` | ${r}`:t=r}let s=class extends u{};return(0,i._)([(0,m.c)({Type:e,ensureType:"function"==typeof e?(0,p.se)(e):(0,p.N7)(e)})],s.prototype,"itemType",void 0),s=(0,i._)([(0,g.j)(`esri.core.Collection<${t}>`)],s),M.set(e,s),s},(0,i._)([(0,f.Cb)()],x.prototype,"length",void 0),(0,i._)([(0,f.Cb)()],x.prototype,"items",null),x=u=(0,i._)([(0,g.j)("esri.core.Collection")],x);const Z=x},52421:(e,t,s)=>{function r(e){return(t,s)=>{t[s]=e}}s.d(t,{c:()=>r})},35463:(e,t,s)=>{s.d(t,{JE:()=>n,Nm:()=>l,rJ:()=>o}),s(80442);const r={milliseconds:1,seconds:1e3,minutes:6e4,hours:36e5,days:864e5,weeks:6048e5,months:26784e5,years:31536e6,decades:31536e7,centuries:31536e8},i={milliseconds:{getter:"getMilliseconds",setter:"setMilliseconds",multiplier:1},seconds:{getter:"getSeconds",setter:"setSeconds",multiplier:1},minutes:{getter:"getMinutes",setter:"setMinutes",multiplier:1},hours:{getter:"getHours",setter:"setHours",multiplier:1},days:{getter:"getDate",setter:"setDate",multiplier:1},weeks:{getter:"getDate",setter:"setDate",multiplier:7},months:{getter:"getMonth",setter:"setMonth",multiplier:1},years:{getter:"getFullYear",setter:"setFullYear",multiplier:1},decades:{getter:"getFullYear",setter:"setFullYear",multiplier:10},centuries:{getter:"getFullYear",setter:"setFullYear",multiplier:100}};function l(e,t,s){const r=new Date(e.getTime());if(t&&s){const e=i[s],{getter:l,setter:n,multiplier:o}=e;if("months"===s){const e=function(e,t){const s=new Date(e,t+1,1);return s.setDate(0),s.getDate()}(r.getFullYear(),r.getMonth()+t);r.getDate()>e&&r.setDate(e)}r[n](r[l]()+t*o)}return r}function n(e,t){switch(t){case"milliseconds":return new Date(e.getTime());case"seconds":return new Date(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds());case"minutes":return new Date(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes());case"hours":return new Date(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours());case"days":return new Date(e.getFullYear(),e.getMonth(),e.getDate());case"weeks":return new Date(e.getFullYear(),e.getMonth(),e.getDate()-e.getDay());case"months":return new Date(e.getFullYear(),e.getMonth(),1);case"years":return new Date(e.getFullYear(),0,1);case"decades":return new Date(e.getFullYear()-e.getFullYear()%10,0,1);case"centuries":return new Date(e.getFullYear()-e.getFullYear()%100,0,1);default:return new Date}}function o(e,t,s){return 0===e?0:e*r[t]/r[s]}},16199:(e,t,s)=>{s.r(t),s.d(t,{default:()=>O});var r,i=s(43697),l=(s(66577),s(3172)),n=s(20102),o=s(16453),a=s(19153),h=s(17452),u=s(5600),c=(s(75215),s(67676),s(80442),s(71715)),p=s(52011),d=s(30556),f=s(87085),m=s(71612),g=s(38009),v=s(16859),y=s(34760),_=s(72965),b=s(90082),w=s(39450),C=s(11145),E=s(5833),T=s(6570),D=s(82971),I=s(94139);let M=r=class extends((0,m.h)((0,y.Q)((0,_.M)((0,g.q)((0,v.I)((0,o.R)(f.Z))))))){constructor(...e){super(...e),this.copyright="",this.fullExtent=new T.Z(-20037508.342787,-20037508.34278,20037508.34278,20037508.342787,D.Z.WebMercator),this.legendEnabled=!1,this.isReference=null,this.popupEnabled=!1,this.spatialReference=D.Z.WebMercator,this.subDomains=null,this.tileInfo=new C.Z({size:[256,256],dpi:96,format:"png8",compressionQuality:0,origin:new I.Z({x:-20037508.342787,y:20037508.342787,spatialReference:D.Z.WebMercator}),spatialReference:D.Z.WebMercator,lods:[new w.Z({level:0,scale:591657527.591555,resolution:156543.033928}),new w.Z({level:1,scale:295828763.795777,resolution:78271.5169639999}),new w.Z({level:2,scale:147914381.897889,resolution:39135.7584820001}),new w.Z({level:3,scale:73957190.948944,resolution:19567.8792409999}),new w.Z({level:4,scale:36978595.474472,resolution:9783.93962049996}),new w.Z({level:5,scale:18489297.737236,resolution:4891.96981024998}),new w.Z({level:6,scale:9244648.868618,resolution:2445.98490512499}),new w.Z({level:7,scale:4622324.434309,resolution:1222.99245256249}),new w.Z({level:8,scale:2311162.217155,resolution:611.49622628138}),new w.Z({level:9,scale:1155581.108577,resolution:305.748113140558}),new w.Z({level:10,scale:577790.554289,resolution:152.874056570411}),new w.Z({level:11,scale:288895.277144,resolution:76.4370282850732}),new w.Z({level:12,scale:144447.638572,resolution:38.2185141425366}),new w.Z({level:13,scale:72223.819286,resolution:19.1092570712683}),new w.Z({level:14,scale:36111.909643,resolution:9.55462853563415}),new w.Z({level:15,scale:18055.954822,resolution:4.77731426794937}),new w.Z({level:16,scale:9027.977411,resolution:2.38865713397468}),new w.Z({level:17,scale:4513.988705,resolution:1.19432856685505}),new w.Z({level:18,scale:2256.994353,resolution:.597164283559817}),new w.Z({level:19,scale:1128.497176,resolution:.298582141647617}),new w.Z({level:20,scale:564.248588,resolution:.14929107082380833}),new w.Z({level:21,scale:282.124294,resolution:.07464553541190416}),new w.Z({level:22,scale:141.062147,resolution:.03732276770595208}),new w.Z({level:23,scale:70.5310735,resolution:.01866138385297604})]}),this.type="web-tile",this.urlTemplate=null,this.wmtsInfo=null}normalizeCtorArgs(e,t){return"string"==typeof e?{urlTemplate:e,...t}:e}load(e){const t=this.loadFromPortal({supportedTypes:["WMTS"]},e).then((()=>{let e="";if(this.urlTemplate)if(this.spatialReference.equals(this.tileInfo.spatialReference)){const t=new h.R9(this.urlTemplate);!(this.subDomains&&this.subDomains.length>0)&&t.authority?.includes("{subDomain}")&&(e="is missing 'subDomains' property")}else e="spatialReference must match tileInfo.spatialReference";else e="is missing the required 'urlTemplate' property value";if(e)throw new n.Z("web-tile-layer:load",`WebTileLayer (title: '${this.title}', id: '${this.id}') ${e}`)}));return this.addResolvingPromise(t),Promise.resolve(this)}get levelValues(){const e=[];if(!this.tileInfo)return null;for(const t of this.tileInfo.lods)e[t.level]=t.levelValue||t.level;return e}readSpatialReference(e,t){return e||t.fullExtent&&t.fullExtent.spatialReference&&D.Z.fromJSON(t.fullExtent.spatialReference)}get tileServers(){if(!this.urlTemplate)return null;const e=[],{urlTemplate:t,subDomains:s}=this,r=new h.R9(t),i=r.scheme?r.scheme+"://":"//",l=i+r.authority+"/",n=r.authority;if(n?.includes("{subDomain}")){if(s&&s.length>0&&n.split(".").length>1)for(const t of s)e.push(i+n.replace(/\{subDomain\}/gi,t)+"/")}else e.push(l);return e.map((e=>("/"!==e.charAt(e.length-1)&&(e+="/"),e)))}get urlPath(){if(!this.urlTemplate)return null;const e=this.urlTemplate,t=new h.R9(e),s=(t.scheme?t.scheme+"://":"//")+t.authority+"/";return e.substring(s.length)}readUrlTemplate(e,t){return e||t.templateUrl}writeUrlTemplate(e,t){e&&(0,h.oC)(e)&&(e="https:"+e),e&&(e=e.replace(/\{z\}/gi,"{level}").replace(/\{x\}/gi,"{col}").replace(/\{y\}/gi,"{row}"),e=(0,h.Fv)(e)),t.templateUrl=e}fetchTile(e,t,s,r={}){const{signal:i}=r,n=this.getTileUrl(e,t,s),o={responseType:"image",signal:i,query:{...this.refreshParameters}};return(0,l.default)(n,o).then((e=>e.data))}async fetchImageBitmapTile(e,t,s,i={}){const{signal:n}=i;if(this.fetchTile!==r.prototype.fetchTile){const r=await this.fetchTile(e,t,s,i);return(0,b.V)(r,e,t,s,n)}const o=this.getTileUrl(e,t,s),a={responseType:"blob",signal:n,query:{...this.refreshParameters}},{data:h}=await(0,l.default)(o,a);return(0,b.V)(h,e,t,s,n)}getTileUrl(e,t,s){const{levelValues:r,tileServers:i,urlPath:l}=this;if(!r||!i||!l)return"";const n=r[e];return i[t%i.length]+(0,a.gx)(l,{level:n,z:n,col:s,x:s,row:t,y:t})}};(0,i._)([(0,u.Cb)({type:String,value:"",json:{write:!0}})],M.prototype,"copyright",void 0),(0,i._)([(0,u.Cb)({type:T.Z,json:{write:!0},nonNullable:!0})],M.prototype,"fullExtent",void 0),(0,i._)([(0,u.Cb)({readOnly:!0,json:{read:!1,write:!1}})],M.prototype,"legendEnabled",void 0),(0,i._)([(0,u.Cb)({type:["show","hide"]})],M.prototype,"listMode",void 0),(0,i._)([(0,u.Cb)({json:{read:!0,write:!0}})],M.prototype,"blendMode",void 0),(0,i._)([(0,u.Cb)()],M.prototype,"levelValues",null),(0,i._)([(0,u.Cb)({type:Boolean,json:{read:!1,write:{enabled:!0,overridePolicy:()=>({enabled:!1})}}})],M.prototype,"isReference",void 0),(0,i._)([(0,u.Cb)({type:["WebTiledLayer"],value:"WebTiledLayer"})],M.prototype,"operationalLayerType",void 0),(0,i._)([(0,u.Cb)({readOnly:!0,json:{read:!1,write:!1}})],M.prototype,"popupEnabled",void 0),(0,i._)([(0,u.Cb)({type:D.Z})],M.prototype,"spatialReference",void 0),(0,i._)([(0,c.r)("spatialReference",["spatialReference","fullExtent.spatialReference"])],M.prototype,"readSpatialReference",null),(0,i._)([(0,u.Cb)({type:[String],json:{write:!0}})],M.prototype,"subDomains",void 0),(0,i._)([(0,u.Cb)({type:C.Z,json:{write:!0}})],M.prototype,"tileInfo",void 0),(0,i._)([(0,u.Cb)({readOnly:!0})],M.prototype,"tileServers",null),(0,i._)([(0,u.Cb)({json:{read:!1}})],M.prototype,"type",void 0),(0,i._)([(0,u.Cb)()],M.prototype,"urlPath",null),(0,i._)([(0,u.Cb)({type:String,json:{origins:{"portal-item":{read:{source:"url"}}}}})],M.prototype,"urlTemplate",void 0),(0,i._)([(0,c.r)("urlTemplate",["urlTemplate","templateUrl"])],M.prototype,"readUrlTemplate",null),(0,i._)([(0,d.c)("urlTemplate",{templateUrl:{type:String}})],M.prototype,"writeUrlTemplate",null),(0,i._)([(0,u.Cb)({type:E.B,json:{write:!0}})],M.prototype,"wmtsInfo",void 0),M=r=(0,i._)([(0,p.j)("esri.layers.WebTileLayer")],M);const O=M},16859:(e,t,s)=>{s.d(t,{I:()=>C});var r=s(43697),i=s(68773),l=s(40330),n=s(3172),o=s(66643),a=s(20102),h=s(92604),u=s(70586),c=s(95330),p=s(17452),d=s(5600),f=(s(75215),s(67676),s(80442),s(71715)),m=s(52011),g=s(30556),v=s(84230),y=s(65587),_=s(15235),b=s(86082),w=s(14661);const C=e=>{let t=class extends e{constructor(){super(...arguments),this.resourceReferences={portalItem:null,paths:[]},this.userHasEditingPrivileges=!0,this.userHasFullEditingPrivileges=!1,this.userHasUpdateItemPrivileges=!1}destroy(){this.portalItem=(0,u.SC)(this.portalItem),this.resourceReferences.portalItem=null,this.resourceReferences.paths.length=0}set portalItem(e){e!==this._get("portalItem")&&(this.removeOrigin("portal-item"),this._set("portalItem",e))}readPortalItem(e,t,s){if(t.itemId)return new _.default({id:t.itemId,portal:s&&s.portal})}writePortalItem(e,t){e&&e.id&&(t.itemId=e.id)}async loadFromPortal(e,t){if(this.portalItem&&this.portalItem.id)try{const r=await s.e(8062).then(s.bind(s,18062));return(0,c.k_)(t),await r.load({instance:this,supportedTypes:e.supportedTypes,validateItem:e.validateItem,supportsData:e.supportsData,layerModuleTypeMap:e.layerModuleTypeMap},t)}catch(e){throw(0,c.D_)(e)||h.Z.getLogger(this.declaredClass).warn(`Failed to load layer (${this.title}, ${this.id}) portal item (${this.portalItem.id})\n ${e}`),e}}async finishLoadEditablePortalLayer(e){this._set("userHasEditingPrivileges",await this._fetchUserHasEditingPrivileges(e).catch((e=>((0,c.r9)(e),!0))))}async _setUserPrivileges(e,t){if(!i.default.userPrivilegesApplied)return this.finishLoadEditablePortalLayer(t);if(this.url)try{const{features:{edit:s,fullEdit:r},content:{updateItem:i}}=await this._fetchUserPrivileges(e,t);this._set("userHasEditingPrivileges",s),this._set("userHasFullEditingPrivileges",r),this._set("userHasUpdateItemPrivileges",i)}catch(e){(0,c.r9)(e)}}async _fetchUserPrivileges(e,t){let s=this.portalItem;if(!e||!s||!s.loaded||s.sourceUrl)return this._fetchFallbackUserPrivileges(t);const r=e===s.id;if(r&&s.portal.user)return(0,w.Ss)(s);let i,n;if(r)i=s.portal.url;else try{i=await(0,v.oP)(this.url,t)}catch(e){(0,c.r9)(e)}if(!i||!(0,p.Zo)(i,s.portal.url))return this._fetchFallbackUserPrivileges(t);try{const e=null!=t?t.signal:null;n=await(l.id?.getCredential(`${i}/sharing`,{prompt:!1,signal:e}))}catch(e){(0,c.r9)(e)}if(!n)return{features:{edit:!0,fullEdit:!1},content:{updateItem:!1}};try{if(r?await s.reload():(s=new _.default({id:e,portal:{url:i}}),await s.load(t)),s.portal.user)return(0,w.Ss)(s)}catch(e){(0,c.r9)(e)}return{features:{edit:!0,fullEdit:!1},content:{updateItem:!1}}}async _fetchFallbackUserPrivileges(e){let t=!0;try{t=await this._fetchUserHasEditingPrivileges(e)}catch(e){(0,c.r9)(e)}return{features:{edit:t,fullEdit:!1},content:{updateItem:!1}}}async _fetchUserHasEditingPrivileges(e){const t=this.url?l.id?.findCredential(this.url):null;if(!t)return!0;const s=E.credential===t?E.user:await this._fetchEditingUser(e);return E.credential=t,E.user=s,null==s||null==s.privileges||s.privileges.includes("features:user:edit")}async _fetchEditingUser(e){const t=this.portalItem?.portal?.user;if(t)return t;const s=l.id.findServerInfo(this.url??"");if(!s?.owningSystemUrl)return null;const r=`${s.owningSystemUrl}/sharing/rest`,i=y.Z.getDefault();if(i&&i.loaded&&(0,p.Fv)(i.restUrl)===(0,p.Fv)(r))return i.user;const a=`${r}/community/self`,h=null!=e?e.signal:null,u=await(0,o.q6)((0,n.default)(a,{authMode:"no-prompt",query:{f:"json"},signal:h}));return u.ok?b.default.fromJSON(u.value.data):null}read(e,t){t&&(t.layer=this),super.read(e,t)}write(e,t){const s=t&&t.portal,r=this.portalItem&&this.portalItem.id&&(this.portalItem.portal||y.Z.getDefault());return s&&r&&!(0,p.tm)(r.restUrl,s.restUrl)?(t.messages&&t.messages.push(new a.Z("layer:cross-portal",`The layer '${this.title} (${this.id})' cannot be persisted because it refers to an item on a different portal than the one being saved to. To save, set layer.portalItem to null or save to the same portal as the item associated with the layer`,{layer:this})),null):super.write(e,{...t,layer:this})}};return(0,r._)([(0,d.Cb)({type:_.default})],t.prototype,"portalItem",null),(0,r._)([(0,f.r)("web-document","portalItem",["itemId"])],t.prototype,"readPortalItem",null),(0,r._)([(0,g.c)("web-document","portalItem",{itemId:{type:String}})],t.prototype,"writePortalItem",null),(0,r._)([(0,d.Cb)({clonable:!1})],t.prototype,"resourceReferences",void 0),(0,r._)([(0,d.Cb)({type:Boolean,readOnly:!0})],t.prototype,"userHasEditingPrivileges",void 0),(0,r._)([(0,d.Cb)({type:Boolean,readOnly:!0})],t.prototype,"userHasFullEditingPrivileges",void 0),(0,r._)([(0,d.Cb)({type:Boolean,readOnly:!0})],t.prototype,"userHasUpdateItemPrivileges",void 0),t=(0,r._)([(0,m.j)("esri.layers.mixins.PortalLayer")],t),t},E={credential:null,user:null}},34760:(e,t,s)=>{s.d(t,{Q:()=>v});var r=s(43697),i=s(92604),l=s(95330),n=s(5600),o=(s(75215),s(67676),s(80442),s(52011)),a=s(46791),h=(s(20102),s(26258),s(87538));const u=new a.Z,c=new WeakMap;function p(e){return null!=e&&"object"==typeof e&&"refreshInterval"in e&&"refresh"in e}function d(e,t){return Number.isFinite(e)&&Number.isFinite(t)?t<=0?e:d(t,e%t):0}let f=0,m=0;function g(){const e=Date.now();for(const t of u)t.refreshInterval&&e-(c.get(t)??0)+5>=6e4*t.refreshInterval&&(c.set(t,e),t.refresh(e))}(0,h.EH)((()=>{const e=Date.now();let t=0;for(const s of u)t=d(Math.round(6e4*s.refreshInterval),t),s.refreshInterval?c.get(s)||c.set(s,e):c.delete(s);if(t!==m){if(m=t,clearInterval(f),0===m)return void(f=0);f=setInterval(g,m)}}));const v=e=>{let t=class extends e{constructor(...e){super(...e),this.refreshInterval=0,this.refreshTimestamp=0,this._debounceHasDataChanged=(0,l.Ds)((()=>this.hasDataChanged())),this.when().then((()=>{this.destroyed||function(e){p(e)&&u.push(e)}(this)}),(()=>{}))}destroy(){p(this)&&u.includes(this)&&u.remove(this)}get refreshParameters(){return{_ts:this.refreshTimestamp||null}}refresh(e=Date.now()){(0,l.R8)(this._debounceHasDataChanged()).then((t=>{t&&this._set("refreshTimestamp",e),this.emit("refresh",{dataChanged:t})}),(e=>{i.Z.getLogger(this.declaredClass).error(e),this.emit("refresh",{dataChanged:!1,error:e})}))}async hasDataChanged(){return!0}};return(0,r._)([(0,n.Cb)({type:Number,cast:e=>e>=.1?e:e<=0?0:.1,json:{write:!0}})],t.prototype,"refreshInterval",void 0),(0,r._)([(0,n.Cb)({readOnly:!0})],t.prototype,"refreshTimestamp",void 0),(0,r._)([(0,n.Cb)()],t.prototype,"refreshParameters",null),t=(0,r._)([(0,o.j)("esri.layers.mixins.RefreshableLayer")],t),t}},39450:(e,t,s)=>{s.d(t,{Z:()=>u});var r,i=s(43697),l=s(96674),n=s(5600),o=s(75215),a=(s(67676),s(80442),s(52011));let h=r=class extends l.wq{constructor(e){super(e),this.cols=null,this.level=0,this.levelValue=null,this.origin=null,this.resolution=0,this.rows=null,this.scale=0}clone(){return new r({cols:this.cols,level:this.level,levelValue:this.levelValue,resolution:this.resolution,rows:this.rows,scale:this.scale})}};(0,i._)([(0,n.Cb)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],h.prototype,"cols",void 0),(0,i._)([(0,n.Cb)({type:o.z8,json:{write:!0}})],h.prototype,"level",void 0),(0,i._)([(0,n.Cb)({type:String,json:{write:!0}})],h.prototype,"levelValue",void 0),(0,i._)([(0,n.Cb)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],h.prototype,"origin",void 0),(0,i._)([(0,n.Cb)({type:Number,json:{write:!0}})],h.prototype,"resolution",void 0),(0,i._)([(0,n.Cb)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],h.prototype,"rows",void 0),(0,i._)([(0,n.Cb)({type:Number,json:{write:!0}})],h.prototype,"scale",void 0),h=r=(0,i._)([(0,a.j)("esri.layers.support.LOD")],h);const u=h},11145:(e,t,s)=>{s.d(t,{Z:()=>T});var r,i=s(43697),l=s(35454),n=s(96674),o=s(67900),a=s(5600),h=s(75215),u=(s(67676),s(80442),s(71715)),c=s(52011),p=s(30556),d=s(94139),f=s(82971),m=s(24470),g=s(8744),v=s(40488),y=s(39450),_=s(43077);const b=new l.X({PNG:"png",PNG8:"png8",PNG24:"png24",PNG32:"png32",JPEG:"jpg",JPG:"jpg",DIB:"dib",TIFF:"tiff",EMF:"emf",PS:"ps",PDF:"pdf",GIF:"gif",SVG:"svg",SVGZ:"svgz",Mixed:"mixed",MIXED:"mixed",LERC:"lerc",LERC2D:"lerc2d",RAW:"raw",pbf:"pbf"});let w=r=class extends n.wq{static create(e={}){const{resolutionFactor:t=1,scales:s,size:i=256,spatialReference:l=f.Z.WebMercator,numLODs:n=24}=e;if(!(0,g.JY)(l)){const e=[];if(s)for(let t=0;t<s.length;t++){const r=s[t];e.push(new y.Z({level:t,scale:r,resolution:r}))}else{let t=5e-4;for(let s=n-1;s>=0;s--)e.unshift(new y.Z({level:s,scale:t,resolution:t})),t*=2}return new r({dpi:96,lods:e,origin:new d.Z(0,0,l),size:[i,i],spatialReference:l})}const a=(0,g.C5)(l),h=e.origin?new d.Z({x:e.origin.x,y:e.origin.y,spatialReference:l}):new d.Z(a?{x:a.origin[0],y:a.origin[1],spatialReference:l}:{x:0,y:0,spatialReference:l}),u=1/(39.37*(0,o.c9)(l)*96),c=[];if(s)for(let e=0;e<s.length;e++){const t=s[e],r=t*u;c.push(new y.Z({level:e,scale:t,resolution:r}))}else{let e=(0,g.sT)(l)?512/i*591657527.5917094:256/i*591657527.591555;const s=Math.ceil(n/t);c.push(new y.Z({level:0,scale:e,resolution:e*u}));for(let r=1;r<s;r++){const s=e/2**t,i=s*u;c.push(new y.Z({level:r,scale:s,resolution:i})),e=s}}return new r({dpi:96,lods:c,origin:h,size:[i,i],spatialReference:l})}constructor(e){super(e),this.dpi=96,this.format=null,this.origin=null,this.minScale=0,this.maxScale=0,this.size=null,this.spatialReference=null}get isWrappable(){const{spatialReference:e,origin:t}=this;if(e&&t){const s=(0,g.C5)(e);return e.isWrappable&&!!s&&Math.abs(s.origin[0]-t.x)<=s.dx}return!1}readOrigin(e,t){return d.Z.fromJSON({spatialReference:t.spatialReference,...e})}set lods(e){let t=0,s=0;const r=[],i=this._levelToLOD={};e&&(t=-1/0,s=1/0,e.forEach((e=>{r.push(e.scale),t=e.scale>t?e.scale:t,s=e.scale<s?e.scale:s,i[e.level]=e}))),this._set("scales",r),this._set("minScale",t),this._set("maxScale",s),this._set("lods",e),this._initializeUpsampleLevels()}readSize(e,t){return[t.cols,t.rows]}writeSize(e,t){t.cols=e[0],t.rows=e[1]}zoomToScale(e){const t=this.scales;if(e<=0)return t[0];if(e>=t.length-1)return t[t.length-1];const s=Math.floor(e),r=s+1;return t[s]/(t[s]/t[r])**(e-s)}scaleToZoom(e){const t=this.scales,s=t.length-1;let r=0;for(;r<s;r++){const s=t[r],i=t[r+1];if(s<=e)return r;if(i===e)return r+1;if(s>e&&i<e)return r+Math.log(s/e)/Math.log(s/i)}return r}snapScale(e,t=.95){const s=this.scaleToZoom(e);return s%Math.floor(s)>=t?this.zoomToScale(Math.ceil(s)):this.zoomToScale(Math.floor(s))}tileAt(e,t,s,r){const i=this.lodAt(e);if(!i)return null;let l,n;if("number"==typeof t)l=t,n=s;else if((0,g.fS)(t.spatialReference,this.spatialReference))l=t.x,n=t.y,r=s;else{const e=(0,v.iV)(t,this.spatialReference);if(null==e)return null;l=e.x,n=e.y,r=s}const o=i.resolution*this.size[0],a=i.resolution*this.size[1];return r||(r=new _.f(null,0,0,0,(0,m.Ue)())),r.level=e,r.row=Math.floor((this.origin.y-n)/a+.001),r.col=Math.floor((l-this.origin.x)/o+.001),this.updateTileInfo(r),r}updateTileInfo(e,t=r.ExtrapolateOptions.NONE){let s=this.lodAt(e.level);if(!s&&t===r.ExtrapolateOptions.POWER_OF_TWO){const t=this.lods[this.lods.length-1];t.level<e.level&&(s=t)}if(!s)return;const i=e.level-s.level,l=s.resolution*this.size[0]/2**i,n=s.resolution*this.size[1]/2**i;e.id=`${e.level}/${e.row}/${e.col}`,e.extent||(e.extent=(0,m.Ue)()),e.extent[0]=this.origin.x+e.col*l,e.extent[1]=this.origin.y-(e.row+1)*n,e.extent[2]=e.extent[0]+l,e.extent[3]=e.extent[1]+n}upsampleTile(e){const t=this._upsampleLevels[e.level];return!(!t||-1===t.parentLevel||(e.level=t.parentLevel,e.row=Math.floor(e.row/t.factor+.001),e.col=Math.floor(e.col/t.factor+.001),this.updateTileInfo(e),0))}getTileBounds(e,t){const s=this.lodAt(t.level);if(null==s)return null;const{resolution:r}=s,i=r*this.size[0],l=r*this.size[1];return e[0]=this.origin.x+t.col*i,e[1]=this.origin.y-(t.row+1)*l,e[2]=e[0]+i,e[3]=e[1]+l,e}lodAt(e){return this._levelToLOD?.[e]??null}clone(){return r.fromJSON(this.write({}))}getOrCreateCompatible(e,t){if(256===this.size[0]&&256===this.size[1])return 256===e?this:null;const s=[],i=this.lods.length;for(let e=0;e<i;e++){const r=this.lods[e],i=r.resolution*t;s.push(new y.Z({level:r.level,scale:r.scale,resolution:i}))}return new r({size:[e,e],dpi:this.dpi,format:this.format,compressionQuality:this.compressionQuality,origin:this.origin,spatialReference:this.spatialReference,lods:s})}_initializeUpsampleLevels(){const e=this.lods;this._upsampleLevels=[];let t=null;for(let s=0;s<e.length;s++){const r=e[s];this._upsampleLevels[r.level]={parentLevel:t?t.level:-1,factor:t?t.resolution/r.resolution:0},t=r}}};var C,E;(0,i._)([(0,a.Cb)({type:Number,json:{write:!0}})],w.prototype,"compressionQuality",void 0),(0,i._)([(0,a.Cb)({type:Number,json:{write:!0}})],w.prototype,"dpi",void 0),(0,i._)([(0,a.Cb)({type:String,json:{read:b.read,write:b.write,origins:{"web-scene":{read:!1,write:!1}}}})],w.prototype,"format",void 0),(0,i._)([(0,a.Cb)({readOnly:!0})],w.prototype,"isWrappable",null),(0,i._)([(0,a.Cb)({type:d.Z,json:{write:!0}})],w.prototype,"origin",void 0),(0,i._)([(0,u.r)("origin")],w.prototype,"readOrigin",null),(0,i._)([(0,a.Cb)({type:[y.Z],value:null,json:{write:!0}})],w.prototype,"lods",null),(0,i._)([(0,a.Cb)({readOnly:!0})],w.prototype,"minScale",void 0),(0,i._)([(0,a.Cb)({readOnly:!0})],w.prototype,"maxScale",void 0),(0,i._)([(0,a.Cb)({readOnly:!0})],w.prototype,"scales",void 0),(0,i._)([(0,a.Cb)({cast:e=>Array.isArray(e)?e:"number"==typeof e?[e,e]:[256,256]})],w.prototype,"size",void 0),(0,i._)([(0,u.r)("size",["rows","cols"])],w.prototype,"readSize",null),(0,i._)([(0,p.c)("size",{cols:{type:h.z8},rows:{type:h.z8}})],w.prototype,"writeSize",null),(0,i._)([(0,a.Cb)({type:f.Z,json:{write:!0}})],w.prototype,"spatialReference",void 0),w=r=(0,i._)([(0,c.j)("esri.layers.support.TileInfo")],w),(E=(C=w||(w={})).ExtrapolateOptions||(C.ExtrapolateOptions={}))[E.NONE=0]="NONE",E[E.POWER_OF_TWO=1]="POWER_OF_TWO";const T=w},43077:(e,t,s)=>{s.d(t,{f:()=>r});class r{constructor(e,t,s,r,i=void 0){this.id=e,this.level=t,this.row=s,this.col=r,this.extent=i}}},5833:(e,t,s)=>{s.d(t,{B:()=>h});var r,i=s(43697),l=s(96674),n=s(22974),o=s(5600),a=(s(75215),s(52011));let h=r=class extends l.wq{constructor(e){super(e)}clone(){return new r({customLayerParameters:(0,n.d9)(this.customLayerParameters),customParameters:(0,n.d9)(this.customParameters),layerIdentifier:this.layerIdentifier,tileMatrixSet:this.tileMatrixSet,url:this.url})}};(0,i._)([(0,o.Cb)({json:{type:Object,write:!0}})],h.prototype,"customLayerParameters",void 0),(0,i._)([(0,o.Cb)({json:{type:Object,write:!0}})],h.prototype,"customParameters",void 0),(0,i._)([(0,o.Cb)({type:String,json:{write:!0}})],h.prototype,"layerIdentifier",void 0),(0,i._)([(0,o.Cb)({type:String,json:{write:!0}})],h.prototype,"tileMatrixSet",void 0),(0,i._)([(0,o.Cb)({type:String,json:{write:!0}})],h.prototype,"url",void 0),h=r=(0,i._)([(0,a.j)("esri.layer.support.WMTSLayerInfo")],h)},90082:(e,t,s)=>{s.d(t,{V:()=>n,g:()=>l});var r=s(20102),i=s(95330);async function l(e,t,s){let l;try{l=await createImageBitmap(e)}catch(e){throw new r.Z("request:server",`Unable to load ${t}`,{url:t,error:e})}return(0,i.k_)(s),l}async function n(e,t,s,l,n){let o;try{o=await createImageBitmap(e)}catch(e){throw new r.Z("request:server",`Unable to load tile ${t}/${s}/${l}`,{error:e,level:t,row:s,col:l})}return(0,i.k_)(n),o}}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[5660],{95047:(e,t,r)=>{r.r(t),r.d(t,{createConnection:()=>F});var s=r(43697),o=(r(66577),r(3172)),n=r(20102),i=r(92604),a=r(95330),c=r(17452),l=(r(75215),r(67676),r(80442),r(52011)),u=r(5600),d=r(69285),h=r(32448);let g=class extends h.Z.EventedAccessor{destroy(){this.emit("destroy")}get connectionError(){return this.errorString?new n.Z("stream-connection",this.errorString):null}onFeature(e){this.emit("data-received",e)}onMessage(e){this.emit("message-received",e)}};(0,s._)([(0,u.Cb)({readOnly:!0})],g.prototype,"connectionError",null),g=(0,s._)([(0,l.j)("esri.layers.support.StreamConnection")],g);const f=g;var y,_;(_=y||(y={}))[_.CONNECTING=0]="CONNECTING",_[_.OPEN=1]="OPEN",_[_.CLOSING=2]="CLOSING",_[_.CLOSED=3]="CLOSED";let p=class extends f{constructor(e){super(),this._outstandingMessages=[],this.errorString=null;const{geometryType:t,spatialReference:r,sourceSpatialReference:s}=e;this._config=e,this._featureZScaler=(0,d.k)(t,s,r),this._open()}async _open(){await this._tryCreateWebSocket(),this.destroyed||await this._handshake()}destroy(){super.destroy(),null!=this._websocket&&(this._websocket.onopen=null,this._websocket.onclose=null,this._websocket.onerror=null,this._websocket.onmessage=null,this._websocket.close()),this._websocket=null}get connectionStatus(){if(null==this._websocket)return"disconnected";switch(this._websocket.readyState){case y.CONNECTING:case y.OPEN:return"connected";case y.CLOSING:case y.CLOSED:return"disconnected"}}sendMessageToSocket(e){null!=this._websocket?this._websocket.send(JSON.stringify(e)):this._outstandingMessages.push(e)}sendMessageToClient(e){this._onMessage(e)}updateCustomParameters(e){this._config.customParameters=e,null!=this._websocket&&this._websocket.close()}async _tryCreateWebSocket(e=this._config.source.path,t=1e3,r=0){try{if(this.destroyed)return;const t=(0,c.fl)(e,this._config.customParameters??{});this._websocket=await this._createWebSocket(t),this.notifyChange("connectionStatus")}catch(s){const o=t/1e3;return this._config.maxReconnectionAttempts&&r>=this._config.maxReconnectionAttempts?(i.Z.getLogger(this.declaredClass).error(new n.Z("websocket-connection","Exceeded maxReconnectionAttempts attempts. No further attempts will be made")),void this.destroy()):(i.Z.getLogger(this.declaredClass).error(new n.Z("websocket-connection",`Failed to connect. Attempting to reconnect in ${o}s`,s)),await(0,a.e4)(t),this._tryCreateWebSocket(e,Math.min(1.5*t,1e3*this._config.maxReconnectionInterval),r+1))}}_setWebSocketJSONParseHandler(e){e.onmessage=e=>{try{const t=JSON.parse(e.data);this._onMessage(t)}catch(e){return void i.Z.getLogger(this.declaredClass).error(new n.Z("websocket-connection","Failed to parse message, invalid JSON",{error:e}))}}}_createWebSocket(e){return new Promise(((t,r)=>{const s=new WebSocket(e);s.onopen=()=>{if(s.onopen=null,this.destroyed)return s.onclose=null,void s.close();s.onclose=e=>this._onClose(e),s.onerror=e=>this._onError(e),this._setWebSocketJSONParseHandler(s),t(s)},s.onclose=e=>{s.onopen=s.onclose=null,r(e)}}))}async _handshake(e=1e4){const t=this._websocket;if(null==t)return;const r=(0,a.hh)(),s=t.onmessage,{filter:o,outFields:c,spatialReference:l}=this._config;return r.timeout(e),t.onmessage=e=>{let a=null;try{a=JSON.parse(e.data)}catch(e){}a&&"object"==typeof a||(i.Z.getLogger(this.declaredClass).error(new n.Z("websocket-connection","Protocol violation. Handshake failed - malformed message",e.data)),r.reject(),this.destroy()),a.spatialReference?.wkid!==l?.wkid&&(i.Z.getLogger(this.declaredClass).error(new n.Z("websocket-connection",`Protocol violation. Handshake failed - expected wkid of ${l.wkid}`,e.data)),r.reject(),this.destroy()),"json"!==a.format&&(i.Z.getLogger(this.declaredClass).error(new n.Z("websocket-connection","Protocol violation. Handshake failed - format is not set",e.data)),r.reject(),this.destroy()),o&&a.filter!==o&&i.Z.getLogger(this.declaredClass).error(new n.Z("websocket-connection","Tried to set filter, but server doesn't support it")),c&&a.outFields!==c&&i.Z.getLogger(this.declaredClass).error(new n.Z("websocket-connection","Tried to set outFields, but server doesn't support it")),t.onmessage=s;for(const e of this._outstandingMessages)t.send(JSON.stringify(e));this._outstandingMessages=[],r.resolve()},t.send(JSON.stringify({filter:o,outFields:c,format:"json",spatialReference:{wkid:l.wkid}})),r.promise}_onMessage(e){if(this.onMessage(e),"type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}}_onError(e){const t="Encountered an error over WebSocket connection";this._set("errorString",t),i.Z.getLogger(this.declaredClass).error("websocket-connection",t)}_onClose(e){this._websocket=null,this.notifyChange("connectionStatus"),1e3!==e.code&&i.Z.getLogger(this.declaredClass).error("websocket-connection",`WebSocket closed unexpectedly with error code ${e.code}`),this.destroyed||this._open()}};(0,s._)([(0,u.Cb)()],p.prototype,"connectionStatus",null),(0,s._)([(0,u.Cb)()],p.prototype,"errorString",void 0),p=(0,s._)([(0,l.j)("esri.layers.graphics.sources.connections.WebSocketConnection")],p);var w=r(34599),m=r(14165),S=r(33955),b=r(82971);const k={maxQueryDepth:5,maxRecordCountFactor:3};let C=class extends p{constructor(e){super({...k,...e}),this._buddyServicesQuery=null,this._relatedFeatures=null}async _open(){const e=await this._fetchServiceDefinition(this._config.source);e.timeInfo.trackIdField||i.Z.getLogger(this.declaredClass).warn("GeoEvent service was configured without a TrackIdField. This may result in certain functionality being disabled. The purgeOptions.maxObservations property will have no effect.");const t=this._fetchWebSocketUrl(e.streamUrls,this._config.spatialReference);this._buddyServicesQuery||(this._buddyServicesQuery=this._queryBuddyServices()),await this._buddyServicesQuery,await this._tryCreateWebSocket(t);const{filter:r,outFields:s}=this._config;this.destroyed||this._setFilter(r,s)}_onMessage(e){if("attributes"in e){let t;try{t=this._enrich(e),null!=this._featureZScaler&&this._featureZScaler(t.geometry)}catch(e){return void i.Z.getLogger(this.declaredClass).error(new n.Z("geoevent-connection","Failed to parse message",e))}this.onFeature(t)}else this.onMessage(e)}async _fetchServiceDefinition(e){const t={f:"json",...this._config.customParameters},r=(0,o.default)(e.path,{query:t,responseType:"json"}),s=(await r).data;return this._serviceDefinition=s,s}_fetchWebSocketUrl(e,t){const r=e[0],{urls:s,token:o}=r,n=this._inferWebSocketBaseUrl(s);return(0,c.fl)(`${n}/subscribe`,{outSR:""+t.wkid,token:o})}_inferWebSocketBaseUrl(e){if(1===e.length)return e[0];for(const t of e)if(t.includes("wss"))return t;return i.Z.getLogger(this.declaredClass).error(new n.Z("geoevent-connection","Unable to infer WebSocket url",e)),null}async _setFilter(e,t){const r=this._websocket;if(null==r||null==e&&null==t)return;const s=JSON.stringify({filter:this._serializeFilter(e,t)});let o=!1;const c=(0,a.hh)();return r.onmessage=e=>{const t=JSON.parse(e.data);t.filter&&(t.error&&(i.Z.getLogger(this.declaredClass).error(new n.Z("geoevent-connection","Failed to set service filter",t.error)),this._set("errorString",`Could not set service filter - ${t.error}`),c.reject(t.error)),this._setWebSocketJSONParseHandler(r),o=!0,c.resolve())},r.send(s),setTimeout((()=>{o||(this.destroyed||this._websocket!==r||i.Z.getLogger(this.declaredClass).error(new n.Z("geoevent-connection","Server timed out when setting filter")),c.reject())}),1e4),c.promise}_serializeFilter(e,t){const r={};if(null==e&&null==t)return r;if(null!=e&&e.geometry)try{const t=(0,S.im)(e.geometry);if("extent"!==t.type)throw new n.Z(`Expected extent but found type ${t.type}`);r.geometry=JSON.stringify(t.shiftCentralMeridian())}catch(e){i.Z.getLogger(this.declaredClass).error(new n.Z("geoevent-connection","Encountered an error when setting connection geometryDefinition",e))}return null!=e&&e.where&&"1 = 1"!==e.where&&"1=1"!==e.where&&(r.where=e.where),null!=t&&(r.outFields=t.join(",")),r}_enrich(e){if(!this._relatedFeatures)return e;const t=this._serviceDefinition.relatedFeatures.joinField,r=e.attributes[t],s=this._relatedFeatures.get(r);if(!s)return i.Z.getLogger(this.declaredClass).warn("geoevent-connection","Feature join failed. Is the join field configured correctly?",e),e;const{attributes:o,geometry:a}=s;for(const t in o)e.attributes[t]=o[t];return a&&(e.geometry=a),e.geometry||e.centroid||i.Z.getLogger(this.declaredClass).error(new n.Z("geoevent-connection","Found malformed feature - no geometry found",e)),e}async _queryBuddyServices(){try{const{relatedFeatures:e,keepLatestArchive:t}=this._serviceDefinition,r=this._queryRelatedFeatures(e),s=this._queryArchive(t);await r;const o=await s;if(!o)return;for(const e of o.features)this.onFeature(this._enrich(e))}catch(e){i.Z.getLogger(this.declaredClass).error(new n.Z("geoevent-connection","Encountered an error when querying buddy services",{error:e}))}}async _queryRelatedFeatures(e){if(!e)return;const t=await this._queryBuddy(e.featuresUrl);this._addRelatedFeatures(t)}async _queryArchive(e){if(e)return this._queryBuddy(e.featuresUrl)}async _queryBuddy(e){const t=new((await Promise.all([r.e(163),r.e(4609),r.e(4729),r.e(9790),r.e(8244),r.e(1423),r.e(911),r.e(5546),r.e(9942),r.e(9238),r.e(5235),r.e(5587),r.e(2156)]).then(r.bind(r,19238))).default)({url:e}),{capabilities:s}=await t.load(),o=s.query.supportsMaxRecordCountFactor,n=s.query.supportsPagination,i=s.query.supportsCentroid,a=this._config.maxRecordCountFactor,c=t.capabilities.query.maxRecordCount,l=o?c*a:c,u=new m.Z;if(u.outFields=this._config.outFields??["*"],u.where=this._config.filter?.where??"1=1",u.returnGeometry=!0,u.returnExceededLimitFeatures=!0,u.outSpatialReference=b.Z.fromJSON(this._config.spatialReference),i&&(u.returnCentroid=!0),o&&(u.maxRecordCountFactor=a),n)return u.num=l,t.destroy(),this._queryPages(e,u);const d=await(0,w.JT)(e,u,this._config.sourceSpatialReference);return t.destroy(),d.data}async _queryPages(e,t,r=[],s=0){t.start=null!=t.num?s*t.num:null;const{data:o}=await(0,w.JT)(e,t,this._config.sourceSpatialReference);return o.exceededTransferLimit&&s<(this._config.maxQueryDepth??0)?(o.features.forEach((e=>r.push(e))),this._queryPages(e,t,r,s+1)):(r.forEach((e=>o.features.push(e))),o)}_addRelatedFeatures(e){const t=new Map,r=e.features,s=this._serviceDefinition.relatedFeatures.joinField;for(const e of r){const r=e.attributes[s];t.set(r,e)}this._relatedFeatures=t}};C=(0,s._)([(0,l.j)("esri.layers.graphics.sources.connections.GeoEventConnection")],C);const v=C;let Z=class extends f{constructor(e){super(),this.connectionStatus="connected",this.errorString=null;const{geometryType:t,spatialReference:r,sourceSpatialReference:s}=e;this._featureZScaler=(0,d.k)(t,s,r)}updateCustomParameters(e){}sendMessageToSocket(e){}sendMessageToClient(e){if("type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}this.onMessage(e)}};function F(e,t,r,s,o,n,i,a){const c={source:e,sourceSpatialReference:t,spatialReference:r,geometryType:s,filter:o,maxReconnectionAttempts:n,maxReconnectionInterval:i,customParameters:a};return e?e.path.startsWith("wss://")||e.path.startsWith("ws://")?new p(c):new v(c):new Z(c)}(0,s._)([(0,u.Cb)()],Z.prototype,"connectionStatus",void 0),(0,s._)([(0,u.Cb)()],Z.prototype,"errorString",void 0),Z=(0,s._)([(0,l.j)("esri.layers.support.ClientSideConnection")],Z)},28694:(e,t,r)=>{r.d(t,{p:()=>o});var s=r(69285);function o(e,t,r){if(!r||!r.features||!r.hasZ)return;const o=(0,s.k)(r.geometryType,t,e.outSpatialReference);if(null!=o)for(const e of r.features)o(e.geometry)}}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[5660],{95047:(e,t,r)=>{r.r(t),r.d(t,{createConnection:()=>F});var s=r(43697),o=(r(66577),r(3172)),n=r(20102),i=r(92604),a=r(95330),c=r(17452),l=(r(75215),r(67676),r(80442),r(52011)),u=r(5600),d=r(69285),h=r(32448);let g=class extends h.Z.EventedAccessor{destroy(){this.emit("destroy")}get connectionError(){return this.errorString?new n.Z("stream-connection",this.errorString):null}onFeature(e){this.emit("data-received",e)}onMessage(e){this.emit("message-received",e)}};(0,s._)([(0,u.Cb)({readOnly:!0})],g.prototype,"connectionError",null),g=(0,s._)([(0,l.j)("esri.layers.support.StreamConnection")],g);const f=g;var y,_;(_=y||(y={}))[_.CONNECTING=0]="CONNECTING",_[_.OPEN=1]="OPEN",_[_.CLOSING=2]="CLOSING",_[_.CLOSED=3]="CLOSED";let p=class extends f{constructor(e){super(),this._outstandingMessages=[],this.errorString=null;const{geometryType:t,spatialReference:r,sourceSpatialReference:s}=e;this._config=e,this._featureZScaler=(0,d.k)(t,s,r),this._open()}async _open(){await this._tryCreateWebSocket(),this.destroyed||await this._handshake()}destroy(){super.destroy(),null!=this._websocket&&(this._websocket.onopen=null,this._websocket.onclose=null,this._websocket.onerror=null,this._websocket.onmessage=null,this._websocket.close()),this._websocket=null}get connectionStatus(){if(null==this._websocket)return"disconnected";switch(this._websocket.readyState){case y.CONNECTING:case y.OPEN:return"connected";case y.CLOSING:case y.CLOSED:return"disconnected"}}sendMessageToSocket(e){null!=this._websocket?this._websocket.send(JSON.stringify(e)):this._outstandingMessages.push(e)}sendMessageToClient(e){this._onMessage(e)}updateCustomParameters(e){this._config.customParameters=e,null!=this._websocket&&this._websocket.close()}async _tryCreateWebSocket(e=this._config.source.path,t=1e3,r=0){try{if(this.destroyed)return;const t=(0,c.fl)(e,this._config.customParameters??{});this._websocket=await this._createWebSocket(t),this.notifyChange("connectionStatus")}catch(s){const o=t/1e3;return this._config.maxReconnectionAttempts&&r>=this._config.maxReconnectionAttempts?(i.Z.getLogger(this.declaredClass).error(new n.Z("websocket-connection","Exceeded maxReconnectionAttempts attempts. No further attempts will be made")),void this.destroy()):(i.Z.getLogger(this.declaredClass).error(new n.Z("websocket-connection",`Failed to connect. Attempting to reconnect in ${o}s`,s)),await(0,a.e4)(t),this._tryCreateWebSocket(e,Math.min(1.5*t,1e3*this._config.maxReconnectionInterval),r+1))}}_setWebSocketJSONParseHandler(e){e.onmessage=e=>{try{const t=JSON.parse(e.data);this._onMessage(t)}catch(e){return void i.Z.getLogger(this.declaredClass).error(new n.Z("websocket-connection","Failed to parse message, invalid JSON",{error:e}))}}}_createWebSocket(e){return new Promise(((t,r)=>{const s=new WebSocket(e);s.onopen=()=>{if(s.onopen=null,this.destroyed)return s.onclose=null,void s.close();s.onclose=e=>this._onClose(e),s.onerror=e=>this._onError(e),this._setWebSocketJSONParseHandler(s),t(s)},s.onclose=e=>{s.onopen=s.onclose=null,r(e)}}))}async _handshake(e=1e4){const t=this._websocket;if(null==t)return;const r=(0,a.hh)(),s=t.onmessage,{filter:o,outFields:c,spatialReference:l}=this._config;return r.timeout(e),t.onmessage=e=>{let a=null;try{a=JSON.parse(e.data)}catch(e){}a&&"object"==typeof a||(i.Z.getLogger(this.declaredClass).error(new n.Z("websocket-connection","Protocol violation. Handshake failed - malformed message",e.data)),r.reject(),this.destroy()),a.spatialReference?.wkid!==l?.wkid&&(i.Z.getLogger(this.declaredClass).error(new n.Z("websocket-connection",`Protocol violation. Handshake failed - expected wkid of ${l.wkid}`,e.data)),r.reject(),this.destroy()),"json"!==a.format&&(i.Z.getLogger(this.declaredClass).error(new n.Z("websocket-connection","Protocol violation. Handshake failed - format is not set",e.data)),r.reject(),this.destroy()),o&&a.filter!==o&&i.Z.getLogger(this.declaredClass).error(new n.Z("websocket-connection","Tried to set filter, but server doesn't support it")),c&&a.outFields!==c&&i.Z.getLogger(this.declaredClass).error(new n.Z("websocket-connection","Tried to set outFields, but server doesn't support it")),t.onmessage=s;for(const e of this._outstandingMessages)t.send(JSON.stringify(e));this._outstandingMessages=[],r.resolve()},t.send(JSON.stringify({filter:o,outFields:c,format:"json",spatialReference:{wkid:l.wkid}})),r.promise}_onMessage(e){if(this.onMessage(e),"type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}}_onError(e){const t="Encountered an error over WebSocket connection";this._set("errorString",t),i.Z.getLogger(this.declaredClass).error("websocket-connection",t)}_onClose(e){this._websocket=null,this.notifyChange("connectionStatus"),1e3!==e.code&&i.Z.getLogger(this.declaredClass).error("websocket-connection",`WebSocket closed unexpectedly with error code ${e.code}`),this.destroyed||this._open()}};(0,s._)([(0,u.Cb)()],p.prototype,"connectionStatus",null),(0,s._)([(0,u.Cb)()],p.prototype,"errorString",void 0),p=(0,s._)([(0,l.j)("esri.layers.graphics.sources.connections.WebSocketConnection")],p);var w=r(34599),m=r(14165),S=r(33955),b=r(82971);const k={maxQueryDepth:5,maxRecordCountFactor:3};let C=class extends p{constructor(e){super({...k,...e}),this._buddyServicesQuery=null,this._relatedFeatures=null}async _open(){const e=await this._fetchServiceDefinition(this._config.source);e.timeInfo.trackIdField||i.Z.getLogger(this.declaredClass).warn("GeoEvent service was configured without a TrackIdField. This may result in certain functionality being disabled. The purgeOptions.maxObservations property will have no effect.");const t=this._fetchWebSocketUrl(e.streamUrls,this._config.spatialReference);this._buddyServicesQuery||(this._buddyServicesQuery=this._queryBuddyServices()),await this._buddyServicesQuery,await this._tryCreateWebSocket(t);const{filter:r,outFields:s}=this._config;this.destroyed||this._setFilter(r,s)}_onMessage(e){if("attributes"in e){let t;try{t=this._enrich(e),null!=this._featureZScaler&&this._featureZScaler(t.geometry)}catch(e){return void i.Z.getLogger(this.declaredClass).error(new n.Z("geoevent-connection","Failed to parse message",e))}this.onFeature(t)}else this.onMessage(e)}async _fetchServiceDefinition(e){const t={f:"json",...this._config.customParameters},r=(0,o.default)(e.path,{query:t,responseType:"json"}),s=(await r).data;return this._serviceDefinition=s,s}_fetchWebSocketUrl(e,t){const r=e[0],{urls:s,token:o}=r,n=this._inferWebSocketBaseUrl(s);return(0,c.fl)(`${n}/subscribe`,{outSR:""+t.wkid,token:o})}_inferWebSocketBaseUrl(e){if(1===e.length)return e[0];for(const t of e)if(t.includes("wss"))return t;return i.Z.getLogger(this.declaredClass).error(new n.Z("geoevent-connection","Unable to infer WebSocket url",e)),null}async _setFilter(e,t){const r=this._websocket;if(null==r||null==e&&null==t)return;const s=JSON.stringify({filter:this._serializeFilter(e,t)});let o=!1;const c=(0,a.hh)();return r.onmessage=e=>{const t=JSON.parse(e.data);t.filter&&(t.error&&(i.Z.getLogger(this.declaredClass).error(new n.Z("geoevent-connection","Failed to set service filter",t.error)),this._set("errorString",`Could not set service filter - ${t.error}`),c.reject(t.error)),this._setWebSocketJSONParseHandler(r),o=!0,c.resolve())},r.send(s),setTimeout((()=>{o||(this.destroyed||this._websocket!==r||i.Z.getLogger(this.declaredClass).error(new n.Z("geoevent-connection","Server timed out when setting filter")),c.reject())}),1e4),c.promise}_serializeFilter(e,t){const r={};if(null==e&&null==t)return r;if(null!=e&&e.geometry)try{const t=(0,S.im)(e.geometry);if("extent"!==t.type)throw new n.Z(`Expected extent but found type ${t.type}`);r.geometry=JSON.stringify(t.shiftCentralMeridian())}catch(e){i.Z.getLogger(this.declaredClass).error(new n.Z("geoevent-connection","Encountered an error when setting connection geometryDefinition",e))}return null!=e&&e.where&&"1 = 1"!==e.where&&"1=1"!==e.where&&(r.where=e.where),null!=t&&(r.outFields=t.join(",")),r}_enrich(e){if(!this._relatedFeatures)return e;const t=this._serviceDefinition.relatedFeatures.joinField,r=e.attributes[t],s=this._relatedFeatures.get(r);if(!s)return i.Z.getLogger(this.declaredClass).warn("geoevent-connection","Feature join failed. Is the join field configured correctly?",e),e;const{attributes:o,geometry:a}=s;for(const t in o)e.attributes[t]=o[t];return a&&(e.geometry=a),e.geometry||e.centroid||i.Z.getLogger(this.declaredClass).error(new n.Z("geoevent-connection","Found malformed feature - no geometry found",e)),e}async _queryBuddyServices(){try{const{relatedFeatures:e,keepLatestArchive:t}=this._serviceDefinition,r=this._queryRelatedFeatures(e),s=this._queryArchive(t);await r;const o=await s;if(!o)return;for(const e of o.features)this.onFeature(this._enrich(e))}catch(e){i.Z.getLogger(this.declaredClass).error(new n.Z("geoevent-connection","Encountered an error when querying buddy services",{error:e}))}}async _queryRelatedFeatures(e){if(!e)return;const t=await this._queryBuddy(e.featuresUrl);this._addRelatedFeatures(t)}async _queryArchive(e){if(e)return this._queryBuddy(e.featuresUrl)}async _queryBuddy(e){const t=new((await Promise.all([r.e(163),r.e(4609),r.e(9790),r.e(5653),r.e(8244),r.e(1423),r.e(911),r.e(5546),r.e(9942),r.e(9238),r.e(5235),r.e(5587),r.e(2156)]).then(r.bind(r,19238))).default)({url:e}),{capabilities:s}=await t.load(),o=s.query.supportsMaxRecordCountFactor,n=s.query.supportsPagination,i=s.query.supportsCentroid,a=this._config.maxRecordCountFactor,c=t.capabilities.query.maxRecordCount,l=o?c*a:c,u=new m.Z;if(u.outFields=this._config.outFields??["*"],u.where=this._config.filter?.where??"1=1",u.returnGeometry=!0,u.returnExceededLimitFeatures=!0,u.outSpatialReference=b.Z.fromJSON(this._config.spatialReference),i&&(u.returnCentroid=!0),o&&(u.maxRecordCountFactor=a),n)return u.num=l,t.destroy(),this._queryPages(e,u);const d=await(0,w.JT)(e,u,this._config.sourceSpatialReference);return t.destroy(),d.data}async _queryPages(e,t,r=[],s=0){t.start=null!=t.num?s*t.num:null;const{data:o}=await(0,w.JT)(e,t,this._config.sourceSpatialReference);return o.exceededTransferLimit&&s<(this._config.maxQueryDepth??0)?(o.features.forEach((e=>r.push(e))),this._queryPages(e,t,r,s+1)):(r.forEach((e=>o.features.push(e))),o)}_addRelatedFeatures(e){const t=new Map,r=e.features,s=this._serviceDefinition.relatedFeatures.joinField;for(const e of r){const r=e.attributes[s];t.set(r,e)}this._relatedFeatures=t}};C=(0,s._)([(0,l.j)("esri.layers.graphics.sources.connections.GeoEventConnection")],C);const v=C;let Z=class extends f{constructor(e){super(),this.connectionStatus="connected",this.errorString=null;const{geometryType:t,spatialReference:r,sourceSpatialReference:s}=e;this._featureZScaler=(0,d.k)(t,s,r)}updateCustomParameters(e){}sendMessageToSocket(e){}sendMessageToClient(e){if("type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}this.onMessage(e)}};function F(e,t,r,s,o,n,i,a){const c={source:e,sourceSpatialReference:t,spatialReference:r,geometryType:s,filter:o,maxReconnectionAttempts:n,maxReconnectionInterval:i,customParameters:a};return e?e.path.startsWith("wss://")||e.path.startsWith("ws://")?new p(c):new v(c):new Z(c)}(0,s._)([(0,u.Cb)()],Z.prototype,"connectionStatus",void 0),(0,s._)([(0,u.Cb)()],Z.prototype,"errorString",void 0),Z=(0,s._)([(0,l.j)("esri.layers.support.ClientSideConnection")],Z)},28694:(e,t,r)=>{r.d(t,{p:()=>o});var s=r(69285);function o(e,t,r){if(!r||!r.features||!r.hasZ)return;const o=(0,s.k)(r.geometryType,t,e.outSpatialReference);if(null!=o)for(const e of r.features)o(e.geometry)}}}]);