@arcgis/core 5.0.0-next.42 → 5.0.0-next.43

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 (89) hide show
  1. package/arcade/featureset/sources/FeatureLayerOGC.js +1 -1
  2. package/assets/esri/core/workers/RemoteClient.js +1 -1
  3. package/assets/esri/core/workers/chunks/00ff4ca88c9d291d82c3.js +1 -0
  4. package/assets/esri/core/workers/chunks/04a0685ee53ef74883aa.js +1 -0
  5. package/assets/esri/core/workers/chunks/{c320a29df40e85fb4a8e.js → 15a0750c10b510564a42.js} +1 -1
  6. package/assets/esri/core/workers/chunks/{816227de5bd42b437df4.js → 233f9eb617f3d72995b5.js} +1 -1
  7. package/assets/esri/core/workers/chunks/{fb9643b74cf35221ff98.js → 249504f7d356be80d214.js} +1 -1
  8. package/assets/esri/core/workers/chunks/{9d95f38da21f97214f83.js → 324d66962aeec17d3e28.js} +10 -10
  9. package/assets/esri/core/workers/chunks/385cfd3087f00dbd1146.js +1 -0
  10. package/assets/esri/core/workers/chunks/{4f4d51181ae7db9fbe6d.js → 4404b6f931f681cca342.js} +1 -1
  11. package/assets/esri/core/workers/chunks/555a0ea44ba77819d493.js +1 -0
  12. package/assets/esri/core/workers/chunks/6e8925412fb90f88d688.js +1 -0
  13. package/assets/esri/core/workers/chunks/83da9ee6544ee9d3c124.js +1 -0
  14. package/assets/esri/core/workers/chunks/{da517b4b07d4d27ce94c.js → 8e26831f71634288f834.js} +1 -1
  15. package/assets/esri/core/workers/chunks/{c367c7e553be3682f2db.js → 93c5f097bb7b380bb175.js} +1 -1
  16. package/assets/esri/core/workers/chunks/9c7682b300b877f60095.js +1 -0
  17. package/assets/esri/core/workers/chunks/{f3b3b193959db809c8c6.js → ab520fd1ae917daf07d8.js} +1 -1
  18. package/assets/esri/core/workers/chunks/{2c9865e34f32fb5683e5.js → af8d6e6949930d0e6c7b.js} +1 -1
  19. package/assets/esri/core/workers/chunks/c9942ca57f542582ab4d.js +1 -0
  20. package/assets/esri/core/workers/chunks/da2ba40bc017bff0fe49.js +1 -0
  21. package/assets/esri/core/workers/chunks/e5a6a646f27715152714.js +1 -0
  22. package/assets/esri/core/workers/chunks/e8a9971c8354569cb81d.js +1 -0
  23. package/assets/esri/core/workers/chunks/ed550bf27f2bbf8d30fa.js +1 -0
  24. package/assets/esri/core/workers/chunks/ee186ddbb1eb5144a790.js +1 -0
  25. package/assets/esri/core/workers/chunks/{1357cc637524cd254974.js → ffcdc7ae03b0570e0db8.js} +1 -1
  26. package/assets/esri/themes/base/widgets/_Attribution.scss +1 -1
  27. package/assets/esri/themes/dark/main.css +1 -1
  28. package/assets/esri/themes/light/main.css +1 -1
  29. package/assets/esri/themes/light/view.css +1 -1
  30. package/config.js +1 -1
  31. package/core/PooledArray.js +1 -1
  32. package/geometry/FlatGeometry.js +1 -1
  33. package/geometry/support/MeshMaterialMetallicRoughness.js +1 -1
  34. package/geometry/support/meshUtils/exporters/gltf/gltf.js +1 -1
  35. package/geometry/support/meshUtils/loadGLTFMesh.js +1 -1
  36. package/interfaces.d.ts +31 -35
  37. package/kernel.js +1 -1
  38. package/layers/graphics/controllers/I3SOnDemandController.js +1 -1
  39. package/layers/graphics/sources/support/clientSideDefaults.js +1 -1
  40. package/package.json +1 -1
  41. package/support/revision.js +1 -1
  42. package/views/2d/engine/webgl/cpuMapped/MappedMesh.js +1 -1
  43. package/views/2d/engine/webgl/shaderGraph/typed/TypedShaderProgram.js +1 -1
  44. package/views/2d/engine/webgl/textureUtils.js +1 -1
  45. package/views/2d/layers/MediaLayerView2D.js +1 -1
  46. package/views/2d/layers/TileLayerView2D.js +1 -1
  47. package/views/3d/glTF/LoaderResult.js +1 -1
  48. package/views/3d/glTF/internal/Resource.js +1 -1
  49. package/views/3d/glTF/loader.js +1 -1
  50. package/views/3d/layers/SceneLayerGraphicsView3D.js +1 -1
  51. package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
  52. package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
  53. package/views/3d/layers/graphics/Graphics3DObjectSymbolLayer.js +1 -1
  54. package/views/3d/layers/graphics/Graphics3DPathSymbolLayer.js +1 -1
  55. package/views/3d/layers/graphics/objectResourceUtils.js +1 -1
  56. package/views/3d/layers/i3s/I3SGraphicsMap.js +1 -1
  57. package/views/3d/layers/i3s/I3SIndex.js +1 -1
  58. package/views/3d/support/buffer/glUtil.js +1 -1
  59. package/views/3d/support/gaussianSplatting/GaussianSplatFadeTexture.js +1 -1
  60. package/views/3d/support/gaussianSplatting/GaussianSplatOrderTexture.js +1 -1
  61. package/views/3d/support/gaussianSplatting/GaussianSplatTextureAtlas.js +1 -1
  62. package/views/3d/webgl-engine/collections/Component/Material/ComponentData.glsl.js +1 -1
  63. package/views/3d/webgl-engine/core/shaderLibrary/TextureBackedBuffer.glsl.js +10 -10
  64. package/views/3d/webgl-engine/lib/edgeRendering/bufferLayouts.js +1 -1
  65. package/views/3d/webgl-engine/lib/edgeRendering/edgeProcessing.js +1 -1
  66. package/views/3d/webgl-engine/materials/DefaultLayouts.js +1 -1
  67. package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
  68. package/views/3d/webgl-engine/materials/PathTechnique.js +1 -1
  69. package/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js +1 -1
  70. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/EdgeUtil.glsl.js +9 -9
  71. package/views/VideoView.js +1 -1
  72. package/views/webgl/ShaderBuilder.js +1 -1
  73. package/views/webgl/Util.js +1 -1
  74. package/views/webgl/VertexElementDescriptor.js +1 -1
  75. package/widgets/Editor.js +1 -1
  76. package/widgets/VersionManagement/VersionManagementViewModel.js +1 -1
  77. package/assets/esri/core/workers/chunks/0a5427127634738aa239.js +0 -1
  78. package/assets/esri/core/workers/chunks/110429583b28c28c36ee.js +0 -1
  79. package/assets/esri/core/workers/chunks/145c6a7cdcc9893efb27.js +0 -1
  80. package/assets/esri/core/workers/chunks/1bacdd17e199e22b5cd1.js +0 -1
  81. package/assets/esri/core/workers/chunks/1d566539ff6fb6ac798c.js +0 -1
  82. package/assets/esri/core/workers/chunks/5dc0d853c21ccb6054c7.js +0 -1
  83. package/assets/esri/core/workers/chunks/613cbac9cb925cd20b48.js +0 -1
  84. package/assets/esri/core/workers/chunks/800c91302eaad7f00877.js +0 -1
  85. package/assets/esri/core/workers/chunks/c4de24582c29fda5a033.js +0 -1
  86. package/assets/esri/core/workers/chunks/d786b17cc9062b1450ac.js +0 -1
  87. package/assets/esri/core/workers/chunks/d9958654c6438f28237b.js +0 -1
  88. package/assets/esri/core/workers/chunks/e6fa6f9c278589c8a713.js +0 -1
  89. package/assets/esri/core/workers/chunks/e7f4d135ef9665de1468.js +0 -1
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1075],{2272:(t,e,r)=>{r.d(e,{Dl:()=>u,gf:()=>l,jV:()=>h,lF:()=>d});var s=r(92602),i=r(70333),n=r(4718),o=r(84952),a=r(926);function h(t,e){return e?{...e,query:{...t,...e.query}}:{query:t}}function u(t){return"string"==typeof t?(0,o.An)(t):(0,n.o8)(t)}function d(t,e,r){const s={};for(const i in t){if("declaredClass"===i)continue;const n=t[i];if(null!=n&&"function"!=typeof n)if(Array.isArray(n))s[i]=n.map(t=>d(t));else if("object"==typeof n)if(n.toJSON){const t=n.toJSON(r?.[i]);s[i]=e?t:JSON.stringify(t)}else s[i]=e?n:JSON.stringify(n);else s[i]=n}return s}async function l(t,e,n){const o=function(t,e){return t?e&&(0,a.Qc)(t)?e:(0,a.CG)(t)??i.id?.findCredential(t)?.token:null}(t,e);if(o)return o;!i.id&&s.A.request.useIdentity&&await Promise.all([r.e(7330),r.e(168),r.e(148)]).then(r.bind(r,50148));const h=await i.id.getCredential(t,n);return h?.token}},5162:(t,e,r)=>{r.d(e,{HJ:()=>o,Im:()=>d,KN:()=>h});var s=r(39516),i=r(70300),n=r(8446);class o{static async create(t){const{metadata:e,definitionExpression:r}=t,i=r?await(0,s.GP)(r,e.fieldsIndex):null;return new o(e,i,r)}constructor(t,e,r){this.metadata=t,this._clause=e,this._definitionExpression=r}get hash(){return this._definitionExpression}testFeature(t){return null==this._clause||this._clause.testFeature(t)}}class a{constructor(){this.modified=new Map,this.removed=new Set}modify(t){this.modified.set(t.objectId,t),this.removed.has(t.objectId)&&this.removed.delete(t.objectId)}remove(t){this.modified.delete(t),this.removed.add(t)}get isEmpty(){return 0===this.modified.size&&0===this.removed.size}applyWhereClause(t){const e=new a;for(const[r,s]of this.modified)t.testFeature(s)?e.modified.set(r,s):e.removed.add(s.objectId);for(const t of this.removed)e.removed.add(t);return e}}class h extends i.K{constructor(t){super(),this._reader=t,this.chunkId="override",this.normalizedChunkId="override"}static fromFeatures(t,e){const r=n.K.fromOptimizedFeatures(t,e);return new h(r)}get reader(){return this._reader}get queryInfo(){return{}}get first(){return!1}get end(){return!1}get isTiled(){return!1}getTileReader(t){if(!this._reader.getSize())return null;const e=this.queryFeaturesInBounds(t.bounds);return e.setTransformForDisplay(t.transform),e}}class u{constructor(t,e){this.inner=t,this.isWeak=e,this.lastWeak=null}get isStrong(){return!this.isWeak}}class d{constructor(t){this._parameters=t,this._overrides=new Map,this._update=new a,this._lastCleanup=0}update(t){this._parameters=t}hasOverride(t){return this._overrides.has(t)}onChunkInsert(t){if(this._overrides.size){const e=t.reader.getCursor();for(;e.next();){const t=e.getObjectId(),r=this._overrides.get(t);if(r?.lastWeak&&(r.lastWeak=null),r?.isWeak){const t=e.readOptimizedFeatureWorldSpace(),s=r.inner?.attributes??{};t.attributes={...s,...t.attributes},r.inner=t,this._update.modify(t),this.invalidate()}}}t.registerOverrides(this)}apply(t,e){const{updateWeak:r,removeWeak:s,update:i,remove:n,release:o}=t.commands;this.invalidate();for(const t of r){const e=new u(t,!0),r=this._overrides.get(t.objectId);r?.isStrong?r.lastWeak=e:(this._overrides.set(t.objectId,e),this._update.modify(t))}for(const t of i){const e=new u(t,!1),r=this._overrides.get(t.objectId);e.lastWeak=r?.isWeak?r:r?.lastWeak??null,this._overrides.set(t.objectId,e),this._update.modify(t)}for(const t of s){const e=new u(null,!0),r=this._overrides.get(t);r?.isStrong?r.lastWeak=e:(this._overrides.set(t,e),this._update.remove(t))}for(const t of n){const e=new u(null,!1),r=this._overrides.get(t);e.lastWeak=r?.isWeak?r:r?.lastWeak??null,this._overrides.set(t,e),this._update.remove(t)}if(o.length){const t=new Set;for(const e of o){const r=this._overrides.get(e);r?.lastWeak?(this._overrides.set(e,r.lastWeak),null==r.lastWeak.inner?this._update.remove(e):this._update.modify(r.lastWeak.inner)):r&&!r.isWeak&&(this._overrides.delete(e),t.add(e))}e.forEachUnsafe(e=>{const r=e.getObjectId();t.has(r)&&(this._update.modify(e.readOptimizedFeatureWorldSpace()),t.delete(r))});for(const e of t.values())this._update.remove(e)}}clearWeakOverrides(){for(const[t,e]of this._overrides.entries())e.isWeak&&this._overrides.delete(t);this.invalidate()}cleanup(t){if(this._overrides.size<1e4)return;const e=performance.now();if(e-this._lastCleanup<1e3)return;this._lastCleanup=e;const r=this._getWeakDeletions();if(!(r.size<1e4)){for(const e of t){const t=e.reader.withoutOverrides().getCursor();for(;t.next();){const e=t.getObjectId();r.delete(e)}}for(const t of r)this._overrides.delete(t);r.size&&this.invalidate()}}takeOverrideUpdate(){const t=this._update;return t.isEmpty?null:(this._update=new a,t.applyWhereClause(this._parameters))}asChunk(){const t=this._parameters;if(this._lastOverrideParametersHash!==t.hash&&(this._lastOverrideParametersHash=t.hash,this._chunk=null),!this._chunk){const e=[];for(const r of this._overrides.values())null!=r.inner&&t.testFeature(r.inner)&&e.push(r.inner);this._chunk=h.fromFeatures(e,t.metadata)}return this._chunk}invalidate(){this._chunk=null}putWeakObjectIdsFromGlobalIds(t,e,r){for(const[s,i]of this._overrides.entries()){if(i.isWeak&&null!=i.inner){const n=i.inner.attributes[r];n&&e.has(n)&&!t.has(n)&&t.set(n,s);continue}if(null!=i.lastWeak&&null!=i.lastWeak.inner){const n=i.lastWeak.inner.attributes[r];n&&e.has(n)&&!t.has(n)&&t.set(n,s)}}}_getWeakDeletions(){const t=new Set;for(const[e,r]of this._overrides.entries())r.isWeak&&null==r.inner&&t.add(e);return t}}},8446:(t,e,r)=>{r.d(e,{K:()=>a});var s=r(90708),i=r(43334),n=r(95466),o=r(99996);class a extends o.Y{static fromFeatures(t,e){const{geometryType:r}=e,i=(0,s.Di)([],t,r,!1,!1,e.featureIdInfo);for(let e=0;e<i.length;e++)i[e].displayId=t[e].displayId;return a.fromOptimizedFeatures(i,e)}static fromFeatureSet(t,e){const r=(0,s.q3)(t,e.featureIdInfo);return a.fromOptimizedFeatureSet(r,e)}static fromOptimizedFeatureSet(t,e){const r=a.fromOptimizedFeatures(t.features,e);return r._exceededTransferLimit=t.exceededTransferLimit,r._transform=t.transform,r._fieldsIndex=new n.A(t.fields),r}static fromOptimizedFeatures(t,e,r){const s=new a(t,e);return s._fieldsIndex=e.fieldsIndex,s._transform=r,s}static empty(t){return new a([],t)}constructor(t,e){super(e),this._exceededTransferLimit=!1,this._featureIndex=-1,this._fieldsIndex=null,this._geometryType=e.geometryType,this._features=t}get fields(){return this._fieldsIndex}get geometryType(){return this._geometryType}get hasFeatures(){return!!this._features.length}get hasNext(){return this._featureIndex+1<this._features.length}get exceededTransferLimit(){return this._exceededTransferLimit}get hasZ(){return!1}get hasM(){return!1}get _current(){return this._features[this._featureIndex]}get usedMemory(){return this._current.usedMemory}getSize(){return this._features.length}getCursor(){return this.copy()}getInTransform(){return this._transform}getAttributeHash(){let t="";for(const e in this._current.attributes)t+=this._current.attributes[e];return t}getIndex(){return this._featureIndex}setIndex(t){this._featureIndex=t}getObjectId(){return this._current?.objectId}getDisplayId(){return this._current.displayId}setDisplayId(t){this._current.displayId=t}copy(){const t=new a(this._features,this.metadata);return this.copyInto(t),t}next(){for(;++this._featureIndex<this._features.length&&!this._getExists(););return this._featureIndex<this._features.length}readGeometryArea(){return(0,i.N3)(this._current)?(0,s.Rk)(this._current.geometry,2):0}_readX(){return(0,i.N3)(this._current)?this._current.geometry.coords[0]:0}_readY(){return(0,i.N3)(this._current)?this._current.geometry.coords[1]:0}_readGeometry(){return(0,i.N3)(this._current)?this._current.geometry??null:null}_readServerCentroid(){return this._current.centroid}_readAttribute(t,e){if(!this._fieldsIndex){const e=this._current.attributes[t];if(void 0!==e)return e;const r=t.toLowerCase();for(const t in this._current.attributes)if(t.toLowerCase()===r)return this._current.attributes[t];return}const r=this._fieldsIndex.get(t);if(!r)return;const s=this._current.attributes[r.name];return null==s?s:e&&this.fields.isDateField(t)?new Date(s):s}_readAttributes(){return this._current.attributes}copyInto(t){super.copyInto(t),t._featureIndex=this._featureIndex,t._transform=this._transform,t._fieldsIndex=this._fieldsIndex}}},8631:(t,e,r)=>{r.d(e,{rS:()=>c,gK:()=>l}),r(44208);var s,i=r(53177),n=r(76357),o=r(31635),a=r(91429),h=r(93223);let u=class extends n.A{static{s=this}constructor(t){super(t),this.type="inherited"}clone(){return new s}};(0,o.Cg)([(0,h.e)({inherited:"inherited"})],u.prototype,"type",void 0),u=s=(0,o.Cg)([(0,a.$K)("esri.layers.support.InheritedDomain")],u);var d=r(41628);const l={key:"type",base:n.A,typeMap:{range:d.A,"coded-value":i.A,inherited:u}};function c(t){if(!t?.type)return null;switch(t.type){case"range":return d.A.fromJSON(t);case"codedValue":return i.A.fromJSON(t);case"inherited":return u.fromJSON(t)}return null}},9012:(t,e,r)=>{function s(t,{timeZone:e,timeExtent:r}){return{$view:{scale:t,timeZone:e,timeProperties:{currentStart:r?.start,currentEnd:r?.end}}}}r.d(e,{N:()=>s})},9775:(t,e,r)=>{r.d(e,{A:()=>n});var s=r(62788),i=r(95488);class n{constructor(t=t=>t.values().next().value){this._peeker=t,this._observable=new i.I,this._items=new Set}get length(){return(0,s.gc)(this._observable),this._items.size}clear(){0!==this.length&&(this._items.clear(),this._observable.notify())}last(){if(0===this.length)return;let t;for(t of this._items);return t}peek(){if(0!==this.length)return this._peeker(this._items)}push(t){this.contains(t)||(this._items.add(t),this._observable.notify())}contains(t){return(0,s.gc)(this._observable),this._items.has(t)}pop(){if(0===this.length)return;const t=this.peek();return this._items.delete(t),this._observable.notify(),t}popLast(){if(0===this.length)return;const t=this.last();return this._items.delete(t),this._observable.notify(),t}remove(t){this.contains(t)&&(this._items.delete(t),this._observable.notify())}filter(t){const e=this.length;return this._items.forEach(e=>{t(e)||this._items.delete(e)}),e!==this._items.size&&this._observable.notify(),this}*[Symbol.iterator](){(0,s.gc)(this._observable),yield*this._items}}},16630:(t,e,r)=>{r.d(e,{s:()=>h}),r(44208);var s=r(69397),i=r(92722),n=r(57733),o=r(99996);let a;class h extends o.Y{constructor(t,e,r,i,n,o=new Uint32Array(r.size())){super(t),this._fields=e,this._inner=r,this._chunkId=i,this._fileIndex=n,this._displayIds=o,this._index=-1,this.usedMemory=s.qK,this._size=this._inner.size(),t.featureIdInfo.type,this._chunkId>65535&&console.error("Exceeded max allowed parquet reader size")}destroy(){super.destroy(),this._inner.free()}get fields(){return this._fields}get geometryType(){return this.metadata.geometryType}get hasFeatures(){return!0}get hasNext(){throw new Error("Method not implemented.")}get exceededTransferLimit(){return!1}get hasZ(){return!1}get hasM(){return!1}getInTransform(){return null}getSize(){return this._size}getCursor(){return this.copy()}getAttributeHash(){let t="";for(const e of this.fields.fields)t+=this._readAttribute(e.name,!1)+".";return t}getObjectId(){return this._fileIndex<<24|this._inner.rowId(this._index)}getDisplayId(){return this._displayIds[this._index]}setDisplayId(t){this._displayIds[this._index]=t}setIndex(t){this._index=t}getBoundsXMin(){return this._inner.boundsXMin(this._index)}getBoundsYMin(){return this._inner.boundsYMin(this._index)}getBoundsXMax(){return this._inner.boundsXMax(this._index)}getBoundsYMax(){return this._inner.boundsYMax(this._index)}setBoundsXMin(t){throw new Error("InternalError: Setting bounds is unsupported")}setBoundsYMin(t){throw new Error("InternalError: Setting bounds is unsupported")}setBoundsXMax(t){throw new Error("InternalError: Setting bounds is unsupported")}setBoundsYMax(t){throw new Error("InternalError: Setting bounds is unsupported")}getIndex(){return this._index}next(){for(;++this._index<this._size&&!this._getExists(););return this._index<this._size}readGeometryArea(){return this.readGeometryForDisplay()?.area()??0}copy(){const t=new h(this.metadata,this._fields,this._inner,this._chunkId,this._fileIndex,this._displayIds);return this.copyInto(t),t}copyInto(t){super.copyInto(t),t._index=this._index}readGeometryForDisplayTransformed(t){const[e,r]=t.translate,[s,o]=t.scale;return a||(a=n.QuantizedGeometryBuffer.new()),this._inner.transformGeometry(a,e,r,s,o,this._index)?new i.A(a.readLengthsUnsafe(),a.readCoordsUnsafe(),this.hasZ,this.hasM):null}_readGeometry(t){const e=this._inner.readCoords(this._index),r=this._inner.readLengths(this._index);return e&&r?new i.A(r,e,this.hasZ,this.hasM):null}_readX(){return this._inner.readX(this._index)}_readY(){return this._inner.readY(this._index)}_readServerCentroid(){return null}_readAttribute(t,e){const r=this.fields.get(t);if(!r)return;if(null==r.column)return this.getObjectId();const s=this._inner.readAttribute(this._index,r.column);if(null==s)return s;const i=this.fields.isDateField(r.name);return e?null==s?s:i?new Date(s):s:s}_readAttributes(){const t={};for(const e of this._fields.fields)null!=e.column&&(this._inner.isEmpty(e.column)||(t[e.name]=this._readAttribute(e.name,!1)));return t.__OBJECTID=this.getObjectId(),t}}},20437:(t,e,r)=>{r.d(e,{A:()=>p});var s,i=r(31635),n=r(66552),o=r(25482),a=r(91429),h=r(56507),u=r(8631),d=r(98453),l=r(36005),c=r(93223);const _=new n.J({binary:"binary",coordinate:"coordinate",countOrAmount:"count-or-amount",currency:"currency",dateAndTime:"date-and-time",description:"description",emailAddress:"email-address",locationOrPlaceName:"location-or-place-name",measurement:"measurement",nameOrTitle:"name-or-title",none:"none",orderedOrRanked:"ordered-or-ranked",percentageOrRatio:"percentage-or-ratio",phoneNumber:"phone-number",typeOrCategory:"type-or-category",uniqueIdentifier:"unique-identifier"});let p=class extends o.o{static{s=this}constructor(t){super(t),this.alias=null,this.defaultValue=void 0,this.description=null,this.domain=null,this.editable=!0,this.length=void 0,this.name=null,this.nullable=!0,this.type=null,this.valueType=null,this.visible=!0}readDescription(t,{description:e}){let r=null;try{r=e?JSON.parse(e):null}catch(t){}return r?.value??null}readValueType(t,{description:e}){let r=null;try{r=e?JSON.parse(e):null}catch(t){}return r?_.fromJSON(r.fieldValueType):null}clone(){return new s({alias:this.alias,defaultValue:this.defaultValue,description:this.description,domain:this.domain?.clone()??null,editable:this.editable,length:this.length,name:this.name,nullable:this.nullable,type:this.type,valueType:this.valueType,visible:this.visible})}};(0,i.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],p.prototype,"alias",void 0),(0,i.Cg)([(0,a.MZ)({type:[String,Number],json:{write:{allowNull:!0}}})],p.prototype,"defaultValue",void 0),(0,i.Cg)([(0,a.MZ)()],p.prototype,"description",void 0),(0,i.Cg)([(0,l.w)("description")],p.prototype,"readDescription",null),(0,i.Cg)([(0,a.MZ)({types:u.gK,json:{read:{reader:u.rS},write:!0}})],p.prototype,"domain",void 0),(0,i.Cg)([(0,a.MZ)({type:Boolean,json:{write:!0}})],p.prototype,"editable",void 0),(0,i.Cg)([(0,a.MZ)({type:h.jz,json:{write:{overridePolicy:t=>({enabled:Number.isFinite(t)})}}})],p.prototype,"length",void 0),(0,i.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],p.prototype,"name",void 0),(0,i.Cg)([(0,a.MZ)({type:Boolean,json:{write:!0}})],p.prototype,"nullable",void 0),(0,i.Cg)([(0,c.e)(d.m)],p.prototype,"type",void 0),(0,i.Cg)([(0,a.MZ)()],p.prototype,"valueType",void 0),(0,i.Cg)([(0,l.w)("valueType",["description"])],p.prototype,"readValueType",null),(0,i.Cg)([(0,a.MZ)({type:Boolean,json:{read:!1}})],p.prototype,"visible",void 0),p=s=(0,i.Cg)([(0,a.$K)("esri.layers.support.Field")],p)},28923:(t,e,r)=>{r.d(e,{j:()=>i});var s=r(70300);class i extends s.K{constructor(t,e,r,s,i=0){super(),this._reader=t,this._queryJSON=e,this._page=r,this._end=s,this._fileIndex=i,this.chunkId=`${this._fileIndex}.${this._page}${this.end?"e":""}`,this.normalizedChunkId=this.chunkId}get reader(){return this._reader}get first(){return 0===this._page}get end(){return this._end}get queryInfo(){return{type:"snapshot",chunkId:this.chunkId,queryJSON:this._queryJSON,page:this._page,size:this.size(),end:this.end}}get isTiled(){return!1}getTileReader(t){const e=this.queryFeaturesInBounds(t.bounds);return e.setTransformForDisplay(t.transform),e}}},30661:(t,e,r)=>{r.d(e,{Z:()=>n});var s=r(43334),i=r(8446);class n{static{this.Shared=new n}getObjectId(t){return t.getObjectId()}getAttributes(t){return t.readAttributes()}getAttribute(t,e){return t.readAttribute(e)}getAttributeAsTimestamp(t,e){return t.readAttributeAsTimestamp(e)}cloneWithGeometry(t,e){const r=t.readAttributes(),n=new s.Om(e,r,null,t.getObjectId(),t.getDisplayId()),o=i.K.fromOptimizedFeatures([n],t.metadata);return o.setIndex(0),o}getGeometry(t){return t.readGeometryWorldSpace()}getCentroid(t,e){return t.readCentroidForDisplay()}}},32011:(t,e,r)=>{r.d(e,{d:()=>u});var s=r(19419),i=r(6606),n=r(12359),o=r(95108),a=r(12176);const h=222045e-19;function u(t){if(0===t.totalSize)return null;const e=(0,i.z8)(t);if(!e)return null;const r=4*(Math.abs(e[0])+Math.abs(e[2])+Math.abs(e[1])+Math.abs(e[3])+1)*h;let o=0,a=0;t.reset();for(let e=0;t.nextPath();e++){const r=t.getCurrentRingArea();r>a&&(a=r,o=e)}if(t.seekPath(o),0===t.pathSize)return null;t.seekPathStart();const u=(0,i.B$)(t);if(Math.abs(a)<=2*r*r)return[(u[0]+u[2])/2,(u[1]+u[3])/2];t.seekPathStart();const _=(0,n.w2)(t,(0,s.vt)());if(null===_)return null;if(t.totalPoints<4)return _;const p=[[NaN,NaN],[NaN,NaN],[NaN,NaN],[NaN,NaN]],f=[NaN,NaN,NaN,NaN],m=[NaN,NaN,NaN,NaN];let y=!1,g=l(_,t,!0);0===g.distance&&(y=!0,p[0][0]=_[0],p[0][1]=_[1],g=l(_,t,!1)),f[0]=g.distance,m[0]=0;const x=[NaN,NaN];let T=!1,w=.25,M=-1,S=NaN;do{if(S=NaN,p[1]=c(t,I(u[0],u[2],w),0,e),isNaN(p[1][0])||isNaN(p[1][1])||(g=l(p[1],t,!1),S=g.distance),!isNaN(S)&&S>r&&d(p[1],t))T=!0,f[1]=S,m[1]=v(p[1],_);else if(!isNaN(S)&&S>M&&(M=S,x[0]=p[1][0],x[1]=p[1][1]),w-=.01,w<.1){if(!(M>=0))break;T=!0,f[1]=M,p[1][0]=x[0],p[1][1]=x[1],m[1]=v(p[1],_)}}while(!T);T=!1,w=.5,M=-1;let F=.01,A=1;do{if(S=NaN,p[2]=c(t,I(u[0],u[2],w),0,e),isNaN(p[2][0])||isNaN(p[2][1])||(g=l(p[2],t,!1),S=g.distance),!isNaN(S)&&S>r&&d(p[2],t))T=!0,f[2]=S,m[2]=v(p[2],_);else if(!isNaN(S)&&S>M)M=S,x[0]=p[2][0],x[1]=p[2][1];else if(S>M&&(M=S,x[0]=p[2][0],x[1]=p[2][1]),w=.5+F*A,F+=.01,A*=-1,w<.3||w>.7){if(!(M>=0))break;T=!0,f[2]=M,p[2][0]=x[0],p[2][1]=x[1],m[2]=v(p[2],_)}}while(!T);T=!1,w=.75,M=-1;do{if(S=NaN,p[3]=c(t,I(u[0],u[2],w),0,e),isNaN(p[3][0])||isNaN(p[3][1])||(g=l(p[3],t,!1),S=g.distance),!isNaN(S)&&S>r&&d(p[3],t))T=!0,f[3]=S,m[3]=v(p[3],_);else if(S>M&&(M=S,x[0]=p[3][0],x[1]=p[3][1]),w+=.01,w>.9){if(!(M>=0))break;T=!0,f[3]=M,p[3][0]=x[0],p[3][1]=x[1],m[3]=v(p[3],_)}}while(!T);const C=[0,1,2,3],P=y?0:1;let O;for(let t=P;t<4;t++)for(let t=P;t<3;t++){const e=m[t],r=m[t+1];b(e,r)>0&&(O=C[t],C[t]=C[t+1],C[t+1]=O,m[t]=r,m[t+1]=e)}let N=P,k=0,z=0;for(let t=P;t<4;t++){switch(t){case 0:z=2*f[C[t]];break;case 1:z=1.66666666*f[C[t]];break;case 2:z=1.33333333*f[C[t]];break;case 3:z=f[C[t]]}z>k&&(k=z,N=C[t])}return p[N]}function d(t,e){let r,s,i,n,o=0;for(e.reset();e.nextPath()&&e.nextPoint();)for(r=e.x,s=e.y;e.nextPoint();r=i,s=n)i=e.x,n=e.y,s>t[1]!=n>t[1]&&((i-r)*(t[1]-s)-(n-s)*(t[0]-r)>0?o++:o--);return 0!==o}function l(t,e,r){if(r&&d(t,e))return{coord:t,distance:0};let s=1/0,i=0,n=0,a=[0,0],h=[0,0];const u=[0,0];for(e.reset();e.nextPath()&&e.nextPoint();)if(!(e.pathSize<2))for(a[0]=e.x,a[1]=e.y;e.nextPoint();a=h){h=[e.x,e.y],(0,o.gR)(u,t,a,h);const r=v(t,u);r<s&&(s=r,i=u[0],n=u[1])}return{coord:[i,n],distance:Math.sqrt(s)}}function c(t,e,r,i){const n=[e,0];let o=1/0,h=1/0,u=!1,d=!1;const l=[[e,i[1]-1],[e,i[3]+1]],c=[0,0],p=[0,0],f=[0,0],m=[[0,0],[0,0]],y=(0,s.vt)();for(t.reset();t.nextPath()&&t.nextPoint();)if(!(t.pathSize<2))for(m[0][0]=t.x,m[0][1]=t.y;t.nextPoint();m[0][0]=m[1][0],m[0][1]=m[1][1]){if(m[1][0]=t.x,m[1][1]=t.y,null===_(y,m))continue;if(p[0]=l[0][0],p[1]=l[0][1],f[0]=l[1][0],f[1]=l[1][1],0===g(y,p,f))continue;if(!(0,a.Ql)(l[0],l[1],m[0],m[1],c))continue;const e=c[1];o>h?e<o&&(o=e,u=!0):e<h&&(h=e,d=!0)}return u&&d?n[1]=(o+h)/2:n[0]=n[1]=NaN,n}function _(t,e){if(e.length<2)return null;t||(t=(0,s.vt)());const[r,i]=e[0],[n,o]=e[1];return t[0]=Math.min(r,n),t[1]=Math.min(i,o),t[2]=Math.max(r,n),t[3]=Math.max(i,o),t}const p=1,f=4,m=3,y=12;function g(t,e,r){let s=x(e,t),i=x(r,t);const n=t[0],o=t[1],a=t[2],h=t[3];if(s&i)return 0;if(!(s|i))return 4;const u=(s?1:0)|(i?2:0);do{const u=r[0]-e[0],d=r[1]-e[1];if(u>d)s&m?(s&p?(e[1]+=d*(n-e[0])/u,e[0]=n):(e[1]+=d*(a-e[0])/u,e[0]=a),s=x(e,t)):i&m?(i&p?(r[1]+=d*(n-r[0])/u,r[0]=n):(r[1]+=d*(a-r[0])/u,r[0]=a),i=x(r,t)):s?(s&f?(e[0]+=u*(o-e[1])/d,e[1]=o):(e[0]+=u*(h-e[1])/d,e[1]=h),s=x(e,t)):(i&f?(r[0]+=u*(o-r[1])/d,r[1]=o):(r[0]+=u*(h-r[1])/d,r[1]=h),i=x(r,t));else if(s&y?(s&f?(e[0]+=u*(o-e[1])/d,e[1]=o):(e[0]+=u*(h-e[1])/d,e[1]=h),s=x(e,t)):i&y?(i&f?(r[0]+=u*(o-r[1])/d,r[1]=o):(r[0]+=u*(h-r[1])/d,r[1]=h),i=x(r,t)):s?(s&p?(e[1]+=d*(n-e[0])/u,e[0]=n):(e[1]+=d*(a-e[0])/u,e[0]=a),s=x(e,t)):(i&p?(r[1]+=d*(n-r[0])/u,r[0]=n):(r[1]+=d*(a-r[0])/u,r[0]=a),i=x(r,t)),s&i)return 0}while(s|i);return u}function x(t,e){return(t[0]<e[0]?1:0)|(t[0]>e[2]?1:0)<<1|(t[1]<e[1]?1:0)<<2|(t[1]>e[3]?1:0)<<3}function I(t,e,r){return t+(e-t)*r}function v(t,e){return(t[0]-e[0])*(t[0]-e[0])+(t[1]-e[1])*(t[1]-e[1])}function b(t,e){if(t<e)return-1;if(t>e)return 1;if(t===e)return 0;const r=isNaN(t),s=isNaN(e);return r<s?-1:r>s?1:0}},35258:(t,e,r)=>{r.d(e,{i:()=>n});var s=r(16930),i=r(95466);class n{static minimal(t,e,r=[]){return new n({geometryType:t,fieldsIndex:new i.A(r).toJSON(),featureIdInfo:{type:"object-id",fieldName:e},subtypes:null,subtypeField:null,types:null,globalIdField:null,spatialReference:null,outSpatialReference:null,timeInfo:null,timeReferenceUnknownClient:null,dateFieldsTimeZone:null,typeIdField:null})}static createFeature(t){return new n(t)}constructor(t){let e;this._options=t,this._fieldsIndex=i.A.fromJSON(t.fieldsIndex),t.spatialReference&&(t.spatialReference instanceof s.A?this._spatialReference=t.spatialReference:this._spatialReference=s.A.fromJSON(t.spatialReference)),t.outSpatialReference&&(t.outSpatialReference instanceof s.A?this._outSpatialReference=t.outSpatialReference:this._outSpatialReference=s.A.fromJSON(t.outSpatialReference)),"object-id"===t.featureIdInfo.type&&(e=t.featureIdInfo.fieldName),this._arcadeSchema={fields:this.fieldsIndex.fields,fieldsIndex:this.fieldsIndex,geometryType:this.geometryType,objectIdField:e,globalIdField:this._options.globalIdField,spatialReference:this._spatialReference,timeInfo:this._options.timeInfo,typeIdField:this._options.typeIdField??void 0,types:this._options.types??void 0,subtypeField:this._options.subtypeField,subtypes:this._options.subtypes??void 0,datesInUnknownTimezone:this._options.timeReferenceUnknownClient??void 0,dateFieldsTimeZone:this._options.dateFieldsTimeZone??void 0}}get fieldsIndex(){return this._fieldsIndex}get geometryType(){return"esriGeometryMultiPatch"===this._options.geometryType?"esriGeometryPolygon":this._options.geometryType}get serviceGeometryType(){return this._options.geometryType}get subtypeField(){return this._options.subtypeField}get timeInfo(){return this._options.timeInfo}get featureIdInfo(){return this._options.featureIdInfo}get globalIdField(){return this._options.globalIdField}get arcadeSchema(){return this._arcadeSchema}get spatialReference(){return this._spatialReference}get outSpatialReference(){return this._outSpatialReference}get timeReferenceUnknownClient(){return this._options.timeReferenceUnknownClient}weakCloneWithAdditionalFields(t){return new n({fieldsIndex:{fields:[...this._fieldsIndex.fields,...t],timeZoneByFieldName:null},geometryType:this.geometryType,globalIdField:this.globalIdField,featureIdInfo:this.featureIdInfo,spatialReference:this.spatialReference,outSpatialReference:this.outSpatialReference,subtypeField:this.subtypeField,subtypes:this._options.subtypes,timeInfo:this.timeInfo,timeReferenceUnknownClient:this.timeReferenceUnknownClient,dateFieldsTimeZone:this._options.dateFieldsTimeZone,typeIdField:this._options.typeIdField,types:this._options.types})}}},36708:(t,e,r)=>{r.d(e,{C_:()=>c,OH:()=>f,Vh:()=>m,on:()=>l,pc:()=>y,wB:()=>h,z7:()=>u});var s=r(37955),i=r(36563),n=r(97768),o=r(74887),a=r(14012);function h(t,e,r={}){return d(t,e,r,_)}function u(t,e,r={}){return d(t,e,r,p)}function d(t,e,r={},s){let i=null;const o=r.once?(t,r)=>{s(t)&&((0,n.xt)(i),e(t,r))}:(t,r)=>{s(t)&&e(t,r)};if(i=(0,a.Cn)(t,o,r.sync,r.equals),r.initial){const e=t();o(e,e)}return i}function l(t,e,r,o={}){let a=null,u=null,d=null;function l(){a&&u&&(u.remove(),o.onListenerRemove?.(a),a=null,u=null)}function c(t){o.once&&o.once&&(0,n.xt)(d),r(t)}const _=h(t,(t,r)=>{l(),(0,s.wb)(t)&&(a=t,u=(0,s.on)(t,e,c),o.onListenerAdd?.(t))},{sync:o.sync,initial:!0});return d=(0,i.hA)(()=>{_.remove(),l()}),d}function c(t,e){return function(t,e,r){if((0,o.G4)(r))return Promise.reject((0,o.NK)());const s=t();if(e?.(s))return Promise.resolve(s);let a=null;function h(){a=(0,n.xt)(a)}return new Promise((s,n)=>{a=(0,i.vE)([(0,o.u7)(r,()=>{h(),n((0,o.NK)())}),d(t,t=>{h(),s(t)},{sync:!1,once:!0},e??_)])})}(t,p,e)}function _(t){return!0}function p(t){return!!t}r(80559);const f={sync:!0},m={initial:!0},y={sync:!0,initial:!0}},36745:(t,e,r)=>{r.d(e,{z:()=>a});var s=r(4718),i=r(51118),n=r(65864),o=r(92722);class a{static fromOptimized(t,e,r=1){return(new h).initialize(t,e,r)}static fromJSON(t){const[e,r]=d(t),s=(0,n.Pv)(t),i=(0,n.W0)(t);return(new l).initialize(e,r,s,i,1)}static fromOptimizedCIM(t,e,r=1){return(new c).initialize(t,e,r)}static fromJSONCIM(t,e=1){const[r,s]=d(t),i=(0,n.Pv)(t),o=(0,n.W0)(t);return(new _).initialize(r,s,i,o,e)}static fromFeatureSetReader(t){const e=t.readGeometryForDisplay(),r=t.geometryType;return e&&r?this.fromOptimized(e,r):null}static fromFeatureSetReaderCIM(t){const e=t.readGeometryForDisplay(),r=t.geometryType;return e&&r?this.fromOptimizedCIM(e,r):null}static createEmptyOptimized(t,e=!1,r=!1,s=1){return(new c).initialize(new o.A([],[],e,r),t,s)}static createEmptyJSON(t,e=!1,r=!1){return(new l).initialize([],t,e,r,1)}static createEmptyOptimizedCIM(t,e=!1,r=!1,s=1){return(new c).initialize(new o.A([],[],e,r),t,s)}static createEmptyJSONCIM(t,e=!1,r=!1,s=1){return(new _).initialize([],t,e,r,s)}asJSON(){const t=(0,i.x)(this),{hasZ:e,hasM:r}=this;return"esriGeometryEnvelope"===this.geometryType?{xmin:t[0][0][0],ymin:t[0][0][1],xmax:t[0][2][0],ymax:t[0][2][1]}:"esriGeometryMultipoint"===this.geometryType?{points:t.flat(),hasZ:e,hasM:r}:"esriGeometryPoint"===this.geometryType?{x:t[0][0][0],y:t[0][0][1],z:e?t[0][0][2]:void 0,m:r?t[0][0][e?3:2]:void 0}:"esriGeometryPolygon"===this.geometryType?{rings:t,hasZ:e,hasM:r}:{paths:t,hasZ:e,hasM:r}}getCurrentRingArea(){if(this.pathSize<3)return 0;let t,e,r=0;if(this.seekPathStart(),!this.nextPoint())return 0;t=this.x,e=this.y;const s=t,i=e;for(;this.nextPoint();)r+=(t-this.x)*(e+this.y),t=this.x,e=this.y;return r+=(t-s)*(e+i),-.5*r}invertY(){this.yFactor*=-1}}class h extends a{constructor(){super(...arguments),this._end=-1}get hasZ(){return this._geometry?.hasZ}get hasM(){return this._geometry?.hasM}initialize(t,e,r){return this.geometryType=e,this._stride=t.stride,this._geometry=t,this._pathIndex=-1,this._pathOffset=0,this._pointOffset=-this._stride,this._end=-1,this.yFactor=r,this}reset(){this.initialize(this._geometry,this.geometryType,this.yFactor)}seekPath(t){if(t>=0&&t<this.totalSize){if(this._pathIndex<t)for(;this._pathIndex<t&&this.nextPath(););else if(this._pathIndex>t)for(;this._pathIndex>t&&this.prevPath(););return!0}return!1}seekPathStart(){this._pointOffset=this._pathOffset-this._stride}seekPathEnd(){this._pointOffset=this._end}seekInPath(t){const e=this._pathOffset+t*this._stride;return e>=0&&e<this._end&&(this._pointOffset=e,!0)}nextPoint(){return(this._pointOffset+=this._stride)<this._end}prevPoint(){return(this._pointOffset-=this._stride)>=this._pathOffset}nextPath(){return!(this.pathIndex>=this.totalSize-1||(this._pathIndex>=0&&(this._pathOffset+=this._stride*this.pathSize),this._pathIndex++,this._pointOffset=this._pathOffset-this._stride,this._end=this._pointOffset+this._stride+this._stride*this.pathSize,0))}prevPath(){return!(this.pathIndex<=0||(this._pathIndex--,this._end=this._pathOffset,this._pathOffset-=this._stride*this.pathSize,this._pointOffset=this._pathOffset-this._stride,0))}getCurrentPath(){const t=this._end,e=this._geometry.coords,r=this._pathOffset;return(new h).initialize(new o.A([this.pathSize],e.slice(r,t),this.hasZ,this.hasM),this.geometryType,this.yFactor)}pathLength(){const t=this._end,e=this._stride,r=this._geometry.coords;let s=0;for(let i=this._pathOffset+e;i<t;i+=e){const t=r[i-e],n=r[i-e+1],o=r[i]-t,a=r[i+1]-n;s+=Math.sqrt(o*o+a*a)}return s}startPath(){this._geometry.lengths.push(0)}pushPath(t){this.startPath(),this.pushPoints(t)}pushPoint(t){for(let e=0;e<this._stride;++e)this._geometry.coords.push(t[e]);this._geometry.lengths[this.totalSize-1]++}pushXY(t,e){this._geometry.coords.push(t,e),this._geometry.lengths[this.totalSize-1]++}pushPoints(t){for(const e of t)for(let t=0;t<this._stride;++t)this._geometry.coords.push(e[t]);this._geometry.lengths[this.totalSize-1]+=t.length}pushCursor(t){const e=t.asOptimized();this._geometry.coords.push(...e.coords),this._geometry.lengths.push(...e.lengths)}asOptimized(){const t=this._geometry.clone();if(1!==this.yFactor)for(let e=1;e<t.coords.length;e+=this._stride)t.coords[e]*=this.yFactor;return"esriGeometryPoint"===this.geometryType&&(t.lengths.length=0),t}isClosed(){const t=this._geometry.coords,e=this._pathOffset,r=this._end-this._stride;for(let s=0;s<this._stride;s++)if(t[e+s]!==t[r+s])return!1;return!0}clone(){return(new h).initialize(this._geometry.clone(),this.geometryType,this.yFactor)}get totalPoints(){return this._geometry.isPoint?1:this._geometry.lengths.reduce((t,e)=>t+e)}get pathSize(){const{lengths:t}=this._geometry;return this._geometry.isPoint?1:this._pathIndex<0||this._pathIndex>t.length-1?0:t[this._pathIndex]}get totalSize(){return this._geometry.isPoint?1:this._geometry.lengths.length}get x(){return this._geometry.coords[this._pointOffset]}set x(t){this._geometry.coords[this._pointOffset]=t}get y(){return this.yFactor*this._geometry.coords[this._pointOffset+1]}set y(t){this._geometry.coords[this._pointOffset+1]=this.yFactor*t}get z(){return this._geometry.coords[this._pointOffset+2]}set z(t){this._geometry.coords[this._pointOffset+2]=t}get m(){const t=this.hasZ?3:2;return this._geometry.coords[this._pointOffset+t]}set m(t){this._geometry.coords[this._pointOffset+3]=t}get pathIndex(){return this._pathIndex}get _coordIndex(){return this._pointOffset/this._stride}}function u(t){const e=[t.x,t.y];return t.z&&e.push(t.z),t.m&&e.push(t.m),e}function d(t){return(0,n.Bi)(t)?[t.rings,"esriGeometryPolygon"]:(0,n.Rg)(t)?[t.paths,"esriGeometryPolyline"]:(0,n.U9)(t)?[[t.points],"esriGeometryMultipoint"]:(0,n.ZC)(t)?[[[[t.xmin,t.ymin],[t.xmin,t.ymax],[t.xmax,t.ymax],[t.xmax,t.ymin],[t.xmin,t.ymin]]],"esriGeometryEnvelope"]:(0,n.fT)(t)?[[[u(t)]],"esriGeometryPoint"]:[[],"esriGeometryPolyline"]}class l extends a{initialize(t,e,r,s,i){return this._paths=t,this.geometryType=e,this.hasZ=r,this.hasM=s,this._pathIndex=this._pointIndex=-1,this.yFactor=i,this._mIndex=this.hasZ?3:2,this}reset(){this._pathIndex=this._pointIndex=-1}seekPath(t){return this._pathIndex=t,this._pointIndex=-1,t>=0&&t<this.totalSize&&(this._currentPath=this._paths[t],!0)}seekPathStart(){this._pointIndex=-1}seekPathEnd(){this._pointIndex=this._currentPath.length}seekInPath(t){return t>=0&&t<this._currentPath.length&&(this._pointIndex=t,this._currentPoint=this._currentPath[this._pointIndex],!0)}nextPoint(){return this._currentPoint=this._currentPath[++this._pointIndex],this._pointIndex<this._currentPath.length}prevPoint(){return this._currentPoint=this._currentPath[--this._pointIndex],this._pointIndex>=0}nextPath(){return this._pointIndex=-1,this._currentPath=this._paths[++this._pathIndex],this._pathIndex<this.totalSize}prevPath(){return this.pathIndex>0&&(this._pointIndex=-1,this._pathIndex--,this._currentPath=this._paths[this._pathIndex],!0)}pathLength(){const t=this._currentPath.length,e=this._currentPath;let r=0;for(let s=1;s<t;s++){const t=e[s-1],i=e[s],n=t[0],o=t[1],a=i[0]-n,h=i[1]-o;r+=Math.sqrt(a*a+h*h)}return r}startPath(){this._paths.push([])}getCurrentPath(){return(new l).initialize([this._currentPath],this.geometryType,this.hasZ,this.hasM,this.yFactor)}pushPath(t){this._paths.push(t)}pushPoint(t){this._paths[this.totalSize-1].push(t)}pushXY(t,e){this._paths[this.totalSize-1].push([t,e])}pushPoints(t){this._paths[this.totalSize-1].push(...t)}pushCursor(t){const e=(0,i.x)(t);for(const t of e)this.pushPath(t)}asOptimized(){const{hasZ:t,hasM:e}=this,r=new o.A([],[],t,e),{coords:s,lengths:i}=r;if("esriGeometryPoint"===this.geometryType)s.push(...this._paths[0][0]),i.length=0;else for(const r of this._paths){for(const i of r)s.push(i[0]),s.push(i[1]*this.yFactor),t&&s.push(i[2]),e&&s.push(i[this._mIndex]);i.push(r.length)}return r}isClosed(){const t=this._currentPath[0],e=this._currentPath[this._currentPath.length-1];for(let r=0;r<t.length;r++)if(t[r]!==e[r])return!1;return!0}clone(){return(new l).initialize((0,s.o8)(this._paths),this.geometryType,this.hasZ,this.hasM,this.yFactor)}get totalPoints(){return this._paths.map(t=>t.length).reduce((t,e)=>t+e)}get pathSize(){return this._pathIndex<0||this._pathIndex>this.totalSize-1?-1:this._paths[this._pathIndex].length}get totalSize(){return this._paths.length}get x(){return this._currentPoint[0]}set x(t){this._currentPoint[0]=t}get y(){return this.yFactor*this._currentPoint[1]}set y(t){this._currentPoint[1]=this.yFactor*t}get z(){return this._currentPoint[2]}set z(t){this._currentPoint[2]=t}get m(){return this._currentPoint[this._mIndex]}set m(t){this._currentPoint[this._mIndex]=t}get pathIndex(){return this._pathIndex}}class c extends h{initialize(t,e,r){return super.initialize(t,e,r),this._controlPoints||(this._controlPoints=this._controlPoints=new Array(this.totalSize).fill(void 0).map(t=>new Set)),this}startPath(){super.startPath(),this._controlPoints.push(new Set)}clone(){const t=(new c).initialize(this._geometry.clone(),this.geometryType,this.yFactor);return t._controlPoints=this._controlPoints,t}setControlPoint(){this._controlPoints[this.pathIndex].add(this._coordIndex)}getControlPoint(){return this._controlPoints[this.pathIndex].has(this._coordIndex)}setControlPointAt(t){this._controlPoints[this.pathIndex].add(t)}getControlPointAt(t){return this._controlPoints[this.pathIndex].has(t)}}class _ extends l{initialize(t,e,r,s,i){return super.initialize(t,e,r,s,i)}clone(){return(new _).initialize((0,s.o8)(this._paths),this.geometryType,this.hasZ,this.hasM,this.yFactor)}setControlPoint(){this._paths[this.pathIndex][this._pointIndex][4]=1}getControlPoint(){return 1===this._paths[this.pathIndex][this._pointIndex][4]}setControlPointAt(t){this._paths[this.pathIndex][t][4]=1}getControlPointAt(t){return 1===this._paths[this.pathIndex][t][4]}}},38976:(t,e,r)=>{r.d(e,{n:()=>n});var s=r(76213),i=r(9012);class n{constructor(t){this._options=t}insert(t,e){const r=t.getCursor(),{arcadeContextInfo:s,scale:n}=this._options,o=(0,i.N)(n,s);for(;r.next();)this._insertFeature(r,o,this._options.sqlOptions,e)}_insertFeature(t,e,r,i){const{featureFilter:n}=this._options;if(null!==n&&!n.check(t,r))return;let o=0,a=0;if("esriGeometryPoint"===t.geometryType)o=t.readXWorldSpace(),a=t.readYWorldSpace();else{if(i){const e=t.readCentroidForDisplay();if(null==e)return;const[r,i]=e.coords;if(r<0||r>s.CQ||i<0||i>s.CQ)return}const e=t.readCentroidWorldSpace();if(null==e)return;o=e.coords[0],a=e.coords[1]}this._insert(t,o,a,e)}}},39357:(t,e,r)=>{r.d(e,{H:()=>a});var s,i=r(31635),n=r(25482),o=r(91429);let a=s=class extends n.o{constructor(t){super(t),this.name=null,this.code=null}clone(){return new s({name:this.name,code:this.code})}};(0,i.Cg)([(0,o.MZ)({type:String,json:{write:{isRequired:!0}}})],a.prototype,"name",void 0),(0,i.Cg)([(0,o.MZ)({type:[String,Number],json:{write:{isRequired:!0}}})],a.prototype,"code",void 0),a=s=(0,i.Cg)([(0,o.$K)("esri.layers.support.CodedValue")],a)},41628:(t,e,r)=>{r.d(e,{A:()=>h});var s,i=r(31635),n=r(91429),o=r(76357),a=r(93223);let h=class extends o.A{static{s=this}constructor(t){super(t),this.maxValue=null,this.minValue=null,this.type="range"}clone(){return new s({maxValue:this.maxValue,minValue:this.minValue,name:this.name})}};(0,i.Cg)([(0,n.MZ)({json:{type:[Number],read:{source:"range",reader:(t,e)=>e.range?.[1]},write:{enabled:!1,overridePolicy(){return{enabled:null!=this.maxValue&&null==this.minValue}},target:"range",writer(t,e,r){e[r]=[this.minValue||0,t]},isRequired:!0}}})],h.prototype,"maxValue",void 0),(0,i.Cg)([(0,n.MZ)({json:{type:[Number],read:{source:"range",reader:(t,e)=>e.range?.[0]},write:{target:"range",writer(t,e,r){e[r]=[t,this.maxValue||0]},isRequired:!0}}})],h.prototype,"minValue",void 0),(0,i.Cg)([(0,a.e)({range:"range"})],h.prototype,"type",void 0),h=s=(0,i.Cg)([(0,n.$K)("esri.layers.support.RangeDomain")],h)},44320:(t,e,r)=>{r.d(e,{I:()=>h});var s=r(65529),i=r(44208),n=r(70328),o=r(30661),a=r(5162);class h{constructor(){this._chunks=new Map,this._chunksToRemove=[],this.events=new s.bk,this.featureAdapter=new o.Z}destroy(){this.clear()}clear(){for(const t of this._chunks.values())this._chunksToRemove.push(t);this._chunks.clear(),this._overrides?.clearWeakOverrides()}get usedMemory(){let t=0;for(const e of this._chunks.values())t+=e.usedMemory;return t}async update(t){if(this._overrides){const e=await a.HJ.create(t);this._overrides.update(e)}this._schema=t}*chunks(){this._overrides&&(yield this._overrides.asChunk()),yield*this._chunks.values()}insert(t){(0,i.A)("esri-2d-update-debug")&&console.debug(`Chunk[${t.chunkId}] SourceChunkStore.insert`),this._overrides?.onChunkInsert(t),this._chunks.set(t.chunkId,t),this.events.emit("changed")}remove(t){(0,i.A)("esri-2d-update-debug")&&console.debug(`Chunk[${t.chunkId}] SourceChunkStore.remove`),this._chunks.delete(t.chunkId),this._chunksToRemove.push(t)}removeById(t){(0,i.A)("esri-2d-update-debug")&&console.debug(`Chunk[${t}] SourceChunkStore.remove`);const e=this._chunks.get(t);this._chunks.delete(t),e&&this._chunksToRemove.push(e)}cleanup(){const t=this._chunksToRemove;return this._chunksToRemove=[],this._overrides?.cleanup(this._chunks.values()),t}async applyOverride(t){if(null==this._overrides){const t=await a.HJ.create(this._schema);this._overrides=new a.Im(t);for(const t of this._chunks.values())this._overrides.onChunkInsert(t)}this._overrides.apply(t,this),this.events.emit("changed");for(const t of this._chunks.values())t.invalidate()}takeOverrideUpdate(){return this._overrides?.takeOverrideUpdate()}refresh(){this.events.emit("refresh")}forEach(t){const e=new Set;for(const r of this.chunks()){const s=r.reader.getCursor();for(;s.next();){const r=s.getObjectId();e.has(r)||(t(s.copy()),e.add(r))}}}forEachUnsafe(t){const e=new Set;for(const r of this.chunks()){const s=r.reader.getCursor();for(;s.next();){const r=s.getObjectId();e.has(r)||(t(s),e.add(r))}}}mapObjectIdsFromGlobalIds(t,e){const r=new Map,s=new Set(t);return this._overrides?.putWeakObjectIdsFromGlobalIds(r,s,e),this._forEachUnsafeIgnoreOverrides(t=>{const i=t.readAttribute(e);if(i&&s.has(i)&&!r.has(i)){const e=t.getObjectId();r.set(i,e)}}),r}forEachInBounds(t,e){const r=new Set;for(const s of this.chunks()){const i=s.queryFeaturesInBounds(t);for(;i.next();){const t=i.getObjectId();r.has(t)||(e(i.copy()),r.add(t))}}}forEachBounds(t,e){const r=(0,n.vt)();for(const s of t)s.getBounds(r)&&e(r)}_forEachUnsafeIgnoreOverrides(t){const e=new Set;for(const r of this._chunks.values()){const s=r.reader.withoutOverrides().getCursor();for(;s.next();){const r=s.getObjectId();e.has(r)||(t(s),e.add(r))}}}}},48163:(t,e,r)=>{function s(){return[0,0]}function i(t){return[t[0],t[1]]}function n(t,e){return[t,e]}function o(){return n(1,1)}function a(){return n(1,0)}function h(){return n(0,1)}r.d(e,{Un:()=>u,fA:()=>n,o8:()=>i,vt:()=>s});const u=o(),d=a(),l=h();Object.freeze(Object.defineProperty({__proto__:null,ONES:u,UNIT_X:d,UNIT_Y:l,ZEROS:[0,0],clone:i,create:s,freeze:function(t,e){return[t,e]},fromArray:function(t,e=[0,0]){const r=Math.min(2,t.length);for(let s=0;s<r;++s)e[s]=t[s];return e},fromValues:n,ones:o,unitX:a,unitY:h,zeros:function(){return[0,0]}},Symbol.toStringTag,{value:"Module"}))},50115:(t,e,r)=>{r.d(e,{OP:()=>o,V4:()=>i,rZ:()=>n}),r(44208);var s=r(53966);function i(t,e,r){if(null==t)return null;const i=e.readArcadeFeature();e.contextTimeZone=r.$view?.timeZone;try{return t.evaluate(i,r)}catch(t){return s.A.getLogger("esri.views.2d.support.arcadeOnDemand").warn("Feature arcade evaluation failed:",t),null}}function n(t){return null==t||t===1/0||t===-1/0||"number"==typeof t&&isNaN(t)}function o(t,e,r,s){if(null==t)return null!=s?s:null;const i=e.readArcadeFeature();e.contextTimeZone=r.$view?.timeZone;const o=t.evaluate(i,r);return n(o)?null!=s?s:null:o}},52350:(t,e,r)=>{r.d(e,{e:()=>a});var s=r(69397),i=r(62577),n=r(90708),o=r(99996);class a extends o.Y{static from(t,e){if(t instanceof this){const r=new Set(e),s=t._indices.filter(t=>r.has(t));return new a(t._reader,s)}return new a(t.copy(),e)}constructor(t,e){super(t.metadata),this._currentIndex=-1,this._displayTransform=null,this._reader=t,this._indices=e}setTransformForDisplay(t){const e=this._reader.getInTransform();if(null==e)return void(this._displayTransform=(0,i.Q1)(t));const r=(0,i.Q1)(e),s=(0,i.Q1)(t),[n,o]=r.scale,[a,h]=r.translate,[u,d]=s.scale,[l,c]=s.translate,_=n/u,p=o/d,f=(a-l)/u,m=(h-c)/d;this._displayTransform={originPosition:"lowerLeft",scale:[1/_,1/p,1,1],translate:[-f/_,-m/p,0,0]}}getInTransform(){return this._reader.getInTransform()}get fields(){return this._reader.fields}get hasNext(){return this._currentIndex+1<this._indices.length}getSize(){return this._indices.length}getCursor(){return this.copy()}copy(){const t=new a(this._reader.copy(),this._indices);return t._currentIndex=this._currentIndex,t._displayTransform=this._displayTransform,t._processorAttributes=this._processorAttributes,t}get contextTimeZone(){return this._reader.contextTimeZone}set contextTimeZone(t){this._reader.contextTimeZone=t}get usedMemory(){return s.qK+this._reader.usedMemory}setProcessorAttributes(t){this._processorAttributes=Object.assign(this._processorAttributes??{},t)}_nextIndex(){return++this._currentIndex<this._indices.length&&(this._reader.setIndex(this._indices[this._currentIndex]),!0)}next(){for(;this._nextIndex()&&!this._reader._getExists(););return this._currentIndex<this._indices.length}readXForDisplay(){return this._displayTransform?(0,i.IE)(this._displayTransform,this._reader.readXForDisplay()):this._reader.readXForDisplay()}readYForDisplay(){return this._displayTransform?(0,i.B2)(this._displayTransform,this._reader.readYForDisplay()):this._reader.readYForDisplay()}readGeometryForDisplay(){return this._displayTransform?this._reader.readGeometryForDisplayTransformed(this._displayTransform):this._reader.readGeometryForDisplay()}readCentroidForDisplay(){const t=this._reader.readCentroidForDisplay()?.clone();if(t){const[e,r]=t.coords;this._displayTransform&&(t.coords[0]=(0,i.IE)(this._displayTransform,e),t.coords[1]=(0,i.B2)(this._displayTransform,r))}return t}get geometryType(){return this._reader.geometryType}get hasFeatures(){return this._reader.hasFeatures}get exceededTransferLimit(){return this._reader.exceededTransferLimit}get hasZ(){return this._reader.hasZ}get hasM(){return this._reader.hasM}readAttribute(t,e=!1){const r=this._reader.readAttribute(t,e);return null==r&&this._processorAttributes?this._processorAttributes[t]:r}readAttributes(){return{...this._processorAttributes,...this._reader.readAttributes()}}joinAttributes(t){return this._reader.joinAttributes(t)}getBounds(t){return this._reader.getBounds(t)}getAttributeHash(){return this._reader.getAttributeHash()}getObjectId(){return this._reader.getObjectId()}getDisplayId(){return this._reader.getDisplayId()}setDisplayId(t){return this._reader.setDisplayId(t)}setIndex(t){return this._reader.setIndex(t)}getIndex(){return this._reader.getIndex()}readXWorldSpace(){return this._reader.readXWorldSpace()}readYWorldSpace(){return this._reader.readYWorldSpace()}_readX(){return this._reader.readXForDisplay()}_readY(){return this._reader.readYForDisplay()}_readServerCentroid(){return this._reader._readServerCentroid()}readLegacyFeatureForDisplay(){const t=this.readCentroidForDisplay();return{attributes:this.readAttributes(),geometry:this.readLegacyGeometryForDisplay(),centroid:(t&&{x:t.coords[0],y:t.coords[1]})??null}}readLegacyGeometryForDisplay(){const t=this.readGeometryForDisplay();return(0,n.zv)(t,this.geometryType,!1,!1)}readGeometryArea(){return this._displayTransform?this._reader.readGeometryForDisplayTransformed(this._displayTransform)?.area()??0:this._reader.readGeometryArea()}readGeometryWorldSpace(){return this._reader.readGeometryWorldSpace()}_readGeometry(){return this._reader._readGeometry()}_readAttribute(t,e){throw new Error("Error: Should not be called. Underlying _reader should be used instead")}_readAttributes(){throw new Error("Error: Should not be called. Underlying _reader should be used instead")}readArcadeFeature(){return this._reader.readArcadeFeature()}geometry(){return this._reader.geometry()}field(t){return this._reader.field(t)}hasField(t){return this._reader.hasField(t)}setField(t,e){return this._reader.setField(t,e)}keys(){return this._reader.keys()}castToText(t=!1){return this._reader.castToText(t)}}},53177:(t,e,r)=>{r.d(e,{A:()=>d});var s,i=r(31635),n=r(4718),o=r(91429),a=r(39357),h=r(76357),u=r(93223);let d=class extends h.A{static{s=this}constructor(t){super(t),this.codedValues=null,this.type="coded-value"}getName(t){let e=null;if(this.codedValues){const r=String(t);this.codedValues.some(t=>(String(t.code)===r&&(e=t.name),!!e))}return e}clone(){return new s({codedValues:(0,n.o8)(this.codedValues),name:this.name})}};(0,i.Cg)([(0,o.MZ)({type:[a.H],json:{write:{isRequired:!0}}})],d.prototype,"codedValues",void 0),(0,i.Cg)([(0,u.e)({codedValue:"coded-value"})],d.prototype,"type",void 0),d=s=(0,i.Cg)([(0,o.$K)("esri.layers.support.CodedValueDomain")],d)},63664:(t,e,r)=>{r.d(e,{B:()=>s});class s{constructor(t){this._statistics=t}get statistics(){return this._statistics}}},64714:(t,e,r)=>{r.d(e,{F0:()=>a,Vx:()=>d,e2:()=>c,f:()=>_});var s=r(44208),i=r(4718),n=r(99352),o=r(93470);function a(t){return{renderer:{type:"simple",symbol:"esriGeometryPoint"===t||"esriGeometryMultipoint"===t?o.Cb:"esriGeometryPolyline"===t?o.yM:o.WR}}}const h=/^[_$a-zA-Z][_$a-zA-Z0-9]*$/;let u=1;function d(t,e){if((0,s.A)("esri-csp-restrictions"))return()=>({[e]:null,...t});try{let r=`this${l(e)} = null;`;for(const e in t)r+=`this${l(e)} = ${JSON.stringify(t[e])};`;const s=new Function(`\n return class AttributesClass$${u++} {\n constructor() {\n ${r};\n }\n }\n `)();return()=>new s}catch(r){return()=>({[e]:null,...t})}}function l(t){return h.test(t)?`.${t}`:`["${t}"]`}function c(t={}){return[{name:"New Feature",description:"",prototype:{attributes:(0,i.o8)(t)}}]}function _(t,e){return{analytics:{supportsCacheHint:!1},attachment:null,data:{isVersioned:!1,isBranchVersioned:!1,supportsAttachment:!1,supportsM:!1,supportsZ:t},metadata:{supportsAdvancedFieldProperties:!1},operations:{supportsCalculate:!1,supportsTruncate:!1,supportsValidateSql:!1,supportsAdd:e,supportsDelete:e,supportsEditing:e,supportsChangeTracking:!1,supportsQuery:!0,supportsQueryBins:!0,supportsQueryPivot:!1,supportsQueryAnalytics:!1,supportsQueryAttachments:!1,supportsQueryTopFeatures:!1,supportsResizeAttachments:!1,supportsSync:!1,supportsUpdate:e,supportsExceedsLimitStatistics:!0,supportsAsyncConvert3D:!1},query:n.F,queryRelated:{supportsCount:!0,supportsOrderBy:!0,supportsPagination:!0,supportsCacheHint:!1},queryTopFeatures:{supportsCacheHint:!1},queryAttributeBins:n.P,editing:{supportsGeometryUpdate:e,supportsGlobalId:!1,supportsReturnServiceEditsInSourceSpatialReference:!1,supportsRollbackOnFailure:!1,supportsUpdateWithoutM:!1,supportsUploadWithItemId:!1,supportsDeleteByAnonymous:!1,supportsDeleteByOthers:!1,supportsUpdateByAnonymous:!1,supportsUpdateByOthers:!1,supportsAsyncApplyEdits:!1,zDefault:void 0}}}},68974:(t,e,r)=>{r.d(e,{H:()=>u,p:()=>h});var s=r(69397),i=r(86211),n=r(38976),o=r(75538);const a=96;function h(t,e){return(0,i.GA)(t)*i.dy*a/e}class u extends n.n{constructor(t){super(t),this._cells=new Map,this._pixelsPerMapUnit=h(t.spatialReference,t.scale)}get usedMemory(){const t=this._cells.values().next().value;return t?(s.RS+t.usedMemory)*this._cells.size:0}put(t){for(const e of this._cells.values()){const r=t.get(e.id);r?r.merge(e):t.set(e.id,e.clone())}}putBounded(t,e,r){const s=[e.xmin,e.ymin,e.xmax,e.ymax],[i,n,o,a]=s,h=Math.floor(i*this._pixelsPerMapUnit/this._options.cellSize),u=Math.floor(n*this._pixelsPerMapUnit/this._options.cellSize),d=Math.ceil(o*this._pixelsPerMapUnit/this._options.cellSize),l=Math.ceil(a*this._pixelsPerMapUnit/this._options.cellSize);for(let e=u;e<=l;e++)for(let r=h;r<=d;r++){const s=`${r}.${e}`,i=this._cells.get(s);if(!i)continue;const n=t.get(i.id);n?i&&!t.has(i.id)&&n.merge(i):t.set(i.id,i.clone())}}_insert(t,e,r,s){const i=e*this._pixelsPerMapUnit,n=r*this._pixelsPerMapUnit,o=Math.floor(i/this._options.cellSize),a=Math.floor(n/this._options.cellSize);this._getCellOrCreate(o,a).insert(t,s,e,r)}_getCellOrCreate(t,e){const r=o.L.createId(t,e);let s=this._cells.get(r);if(!s){const i=1*this._options.cellSize/this._pixelsPerMapUnit;s=o.L.create(t,e,this._options.fields,i),this._cells.set(r,s)}return s}}},70300:(t,e,r)=>{r.d(e,{K:()=>j});var s=r(69397),i=r(11006);function n(t,e){if(!(this instanceof n))return new n(t,e);this._maxEntries=Math.max(4,t||9),this._minEntries=Math.max(2,Math.ceil(.4*this._maxEntries)),e&&("function"==typeof e?this.toBBox=e:this._initFormat(e)),this.clear()}function o(t,e,r){if(!r)return e.indexOf(t);for(var s=0;s<e.length;s++)if(r(t,e[s]))return s;return-1}function a(t,e){h(t,0,t.children.length,e,t)}function h(t,e,r,s,i){i||(i=g(null)),i.minX=1/0,i.minY=1/0,i.maxX=-1/0,i.maxY=-1/0;for(var n,o=e;o<r;o++)n=t.children[o],u(i,t.leaf?s(n):n);return i}function u(t,e){return t.minX=Math.min(t.minX,e.minX),t.minY=Math.min(t.minY,e.minY),t.maxX=Math.max(t.maxX,e.maxX),t.maxY=Math.max(t.maxY,e.maxY),t}function d(t,e){return t.minX-e.minX}function l(t,e){return t.minY-e.minY}function c(t){return(t.maxX-t.minX)*(t.maxY-t.minY)}function _(t){return t.maxX-t.minX+(t.maxY-t.minY)}function p(t,e){return(Math.max(e.maxX,t.maxX)-Math.min(e.minX,t.minX))*(Math.max(e.maxY,t.maxY)-Math.min(e.minY,t.minY))}function f(t,e){var r=Math.max(t.minX,e.minX),s=Math.max(t.minY,e.minY),i=Math.min(t.maxX,e.maxX),n=Math.min(t.maxY,e.maxY);return Math.max(0,i-r)*Math.max(0,n-s)}function m(t,e){return t.minX<=e.minX&&t.minY<=e.minY&&e.maxX<=t.maxX&&e.maxY<=t.maxY}function y(t,e){return e.minX<=t.maxX&&e.minY<=t.maxY&&e.maxX>=t.minX&&e.maxY>=t.minY}function g(t){return{children:t,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function x(t,e,r,s,n){for(var o,a=[e,r];a.length;)(r=a.pop())-(e=a.pop())<=s||(o=e+Math.ceil((r-e)/s/2)*s,(0,i.q)(t,o,e,r,n),a.push(e,o,o,r))}n.prototype={all:function(){return this._all(this.data,[])},search:function(t){var e=this.data,r=[],s=this.toBBox;if(!y(t,e))return r;for(var i,n,o,a,h=[];e;){for(i=0,n=e.children.length;i<n;i++)o=e.children[i],y(t,a=e.leaf?s(o):o)&&(e.leaf?r.push(o):m(t,a)?this._all(o,r):h.push(o));e=h.pop()}return r},collides:function(t){var e=this.data,r=this.toBBox;if(!y(t,e))return!1;for(var s,i,n,o,a=[];e;){for(s=0,i=e.children.length;s<i;s++)if(n=e.children[s],y(t,o=e.leaf?r(n):n)){if(e.leaf||m(t,o))return!0;a.push(n)}e=a.pop()}return!1},load:function(t){if(!t||!t.length)return this;if(t.length<this._minEntries){for(var e=0,r=t.length;e<r;e++)this.insert(t[e]);return this}var s=this._build(t.slice(),0,t.length-1,0);if(this.data.children.length)if(this.data.height===s.height)this._splitRoot(this.data,s);else{if(this.data.height<s.height){var i=this.data;this.data=s,s=i}this._insert(s,this.data.height-s.height-1,!0)}else this.data=s;return this},insert:function(t){return null!=t&&this._insert(t,this.data.height-1),this},clear:function(){return this.data=g([]),this},remove:function(t,e){if(null==t)return this;for(var r,s,i,n,a=this.data,h=this.toBBox(t),u=[],d=[];a||u.length;){if(a||(a=u.pop(),s=u[u.length-1],r=d.pop(),n=!0),a.leaf&&-1!==(i=o(t,a.children,e)))return a.children.splice(i,1),u.push(a),this._condense(u),this;n||a.leaf||!m(a,h)?s?(r++,a=s.children[r],n=!1):a=null:(u.push(a),d.push(r),r=0,s=a,a=a.children[0])}return this},toBBox:function(t){return t},compareMinX:d,compareMinY:l,toJSON:function(){return this.data},fromJSON:function(t){return this.data=t,this},_all:function(t,e){for(var r=[];t;)t.leaf?e.push.apply(e,t.children):r.push.apply(r,t.children),t=r.pop();return e},_build:function(t,e,r,s){var i,n=r-e+1,o=this._maxEntries;if(n<=o)return a(i=g(t.slice(e,r+1)),this.toBBox),i;s||(s=Math.ceil(Math.log(n)/Math.log(o)),o=Math.ceil(n/Math.pow(o,s-1))),(i=g([])).leaf=!1,i.height=s;var h,u,d,l,c=Math.ceil(n/o),_=c*Math.ceil(Math.sqrt(o));for(x(t,e,r,_,this.compareMinX),h=e;h<=r;h+=_)for(x(t,h,d=Math.min(h+_-1,r),c,this.compareMinY),u=h;u<=d;u+=c)l=Math.min(u+c-1,d),i.children.push(this._build(t,u,l,s-1));return a(i,this.toBBox),i},_chooseSubtree:function(t,e,r,s){for(var i,n,o,a,h,u,d,l;s.push(e),!e.leaf&&s.length-1!==r;){for(d=l=1/0,i=0,n=e.children.length;i<n;i++)h=c(o=e.children[i]),(u=p(t,o)-h)<l?(l=u,d=h<d?h:d,a=o):u===l&&h<d&&(d=h,a=o);e=a||e.children[0]}return e},_insert:function(t,e,r){var s=this.toBBox,i=r?t:s(t),n=[],o=this._chooseSubtree(i,this.data,e,n);for(o.children.push(t),u(o,i);e>=0&&n[e].children.length>this._maxEntries;)this._split(n,e),e--;this._adjustParentBBoxes(i,n,e)},_split:function(t,e){var r=t[e],s=r.children.length,i=this._minEntries;this._chooseSplitAxis(r,i,s);var n=this._chooseSplitIndex(r,i,s),o=g(r.children.splice(n,r.children.length-n));o.height=r.height,o.leaf=r.leaf,a(r,this.toBBox),a(o,this.toBBox),e?t[e-1].children.push(o):this._splitRoot(r,o)},_splitRoot:function(t,e){this.data=g([t,e]),this.data.height=t.height+1,this.data.leaf=!1,a(this.data,this.toBBox)},_chooseSplitIndex:function(t,e,r){var s,i,n,o,a,u,d,l;for(u=d=1/0,s=e;s<=r-e;s++)o=f(i=h(t,0,s,this.toBBox),n=h(t,s,r,this.toBBox)),a=c(i)+c(n),o<u?(u=o,l=s,d=a<d?a:d):o===u&&a<d&&(d=a,l=s);return l},_chooseSplitAxis:function(t,e,r){var s=t.leaf?this.compareMinX:d,i=t.leaf?this.compareMinY:l;this._allDistMargin(t,e,r,s)<this._allDistMargin(t,e,r,i)&&t.children.sort(s)},_allDistMargin:function(t,e,r,s){t.children.sort(s);var i,n,o=this.toBBox,a=h(t,0,e,o),d=h(t,r-e,r,o),l=_(a)+_(d);for(i=e;i<r-e;i++)n=t.children[i],u(a,t.leaf?o(n):n),l+=_(a);for(i=r-e-1;i>=e;i--)n=t.children[i],u(d,t.leaf?o(n):n),l+=_(d);return l},_adjustParentBBoxes:function(t,e,r){for(var s=r;s>=0;s--)u(e[s],t)},_condense:function(t){for(var e,r=t.length-1;r>=0;r--)0===t[r].children.length?r>0?(e=t[r-1].children).splice(e.indexOf(t[r]),1):this.clear():a(t[r],this.toBBox)},_initFormat:function(t){var e=["return a"," - b",";"];this.compareMinX=new Function("a","b",e.join(t[0])),this.compareMinY=new Function("a","b",e.join(t[1])),this.toBBox=new Function("a","return {minX: a"+t[0]+", minY: a"+t[1]+", maxX: a"+t[2]+", maxY: a"+t[3]+"};")}};var I=r(70328);class v{static fromReader(t){const e=[],r=t.copy(),s=(0,I.vt)();for(;r.next();)r.getBounds(s)&&e.push(r.getIndex());const i=n(9,t=>(r.setIndex(t),{minX:r.getBoundsXMin(),minY:r.getBoundsYMin(),maxX:r.getBoundsXMax(),maxY:r.getBoundsYMax()}));return i.load(e),new v(i,e.length)}constructor(t,e){this._index=t,this._size=e}get usedMemory(){return this._size*s.RS}search(t){const e={minX:t[0],minY:t[1],maxX:t[2],maxY:t[3]};return this._index.search(e)}}r(44208);var b=r(34727),T=(r(37585),r(48163)),w=r(39829),M=r(16930),S=r(19419),F=r(79258),A=r(90708),C=r(31464);function P(t,e,r,s){if(s.isWebMercator){const s=(0,b.KJ)(t/F.$O.radius),i=s-360*Math.floor((s+180)/360),n=[0,0];return O(n,0,(0,b.KJ)(Math.PI/2-2*Math.atan(Math.exp(-e/F.$O.radius))),i,r),n}const i=(0,C.Cv)({x:t,y:e},s,M.A.WGS84);if(!i)return null;const n=[0,0];return O(n,0,i.y,i.x,r),n}function O(t,e,r,s,i){i%2&&(i+=1);let n=0,o=0,a=-90,h=90,u=-180,d=180;for(let t=0;t<i/2;t++){for(let e=0;e<5;e++){const r=(u+d)/2,i=s>r?1:0;n|=i<<29-(e+5*t),u=(1-i)*u+i*r,d=(1-i)*r+i*d}for(let e=0;e<5;e++){const s=(a+h)/2,i=r>s?1:0;o|=i<<29-(e+5*t),a=(1-i)*a+i*s,h=(1-i)*s+i*h}}t[2*e]=n,t[2*e+1]=o}(0,T.vt)(),(0,T.vt)();var N=r(63664),k=r(92029);class z extends N.B{static create(t,e,r,s){const i=k.o.create(t),n=new Array(32);for(let t=0;t<n.length;t++)n[t]=null;return new z(i,e,r,s,n)}constructor(t,e,r,s,i){super(t),this.xNode=e,this.yNode=r,this.depth=s,this.children=i,this._objectIds=new Set,this._count=0,this._xWorldTotal=0,this._yWorldTotal=0,this._xGeohashTotal=0,this._yGeohashTotal=0,this.next=null}static get estimatedMemory(){let t=0;return t+=2*s.qK,t+=32*s.RS,t+=k.o.estimatedMemory,t}get id(){return`${this.xNode}.${this.yNode}`}get containedObjectIds(){return this._objectIds}get count(){return this._count}clone(){const t=new z(this._statistics.clone(),this.xNode,this.yNode,this.depth,this.children);return t._count=this._count,t._xWorldTotal=this._xWorldTotal,t._yWorldTotal=this._yWorldTotal,t._xGeohashTotal=this._xGeohashTotal,t._yGeohashTotal=this._yGeohashTotal,t.next=this.next,t._objectIds=new Set(this._objectIds),t}insert(t,e,r,s,i,n){this._count+=1,this._xWorldTotal+=e,this._yWorldTotal+=r,this._xGeohashTotal+=s,this._yGeohashTotal+=i,this._statistics.insert(t,n),this._objectIds.add(t.getObjectId())}merge(t){if(0!==t._count){this._count+=t._count,this._xWorldTotal+=t._xWorldTotal,this._yWorldTotal+=t._yWorldTotal,this._xGeohashTotal+=t._xWorldTotal,this._yGeohashTotal+=t._yWorldTotal,this._statistics.merge(t._statistics);for(const e of t._objectIds.values())this._objectIds.add(e)}}getCentroid(t){throw new Error("getCentroid not supported for GeohashNode")}getGeometry(t,e){const r=this._getLngLatBounds(),[s,i,n,o]=r,a=(0,C.Cv)({rings:[[[s,i],[s,o],[n,o],[n,i],[s,i]]]},M.A.WGS84,t),h=(0,A.Ye)(a);return null!=e?(0,A.Nl)(h,"esriGeometryPolygon",e,!1,!1):h}getGeometricCentroid(t,e){const r=this._getLngLatBounds(),[s,i,n,o]=r,a=(0,C.Cv)({x:(s+n)/2,y:(i+o)/2},M.A.WGS84,t),h=(0,A.qN)(a);return null!=e?(0,A.Nl)(h,"esriGeometryPoint",e,!1,!1):h}getAttributes(){const t={aggregateId:this.id};for(const e of this._statistics.values())t[e.field.name]=e.value;return t.aggregateCount=this._count,t}find(t,e,r,s,i,n){if(s>=r)return this;const o=1-s%2,a=3*o+2*(1-o),h=2*o+3*(1-o),u=30-i-a,d=30-n-h,l=((t&7*o+3*(1-o)<<u)>>u)+((e&3*o+7*(1-o)<<d)>>d)*(8*o+4*(1-o)),c=this.children[l];return null==c?null:c.find(t,e,r,s+1,i+a,n+h)}_getLngLatBounds(){const t=this.depth,e=Math.ceil(t/2),r=Math.floor(t/2),s=30-(3*e+2*r),i=30-(2*e+3*r);return function(t,e){let r=-90,s=90,i=-180,n=180;for(let o=0;o<e;o++){const e=Math.ceil((o+1)/2),a=Math.floor((o+1)/2),h=1-o%2,u=30-(3*e+2*a),d=30-(2*e+3*a),l=2*h+3*(1-h),c=(7*h+3*(1-h)<<u&t.geohashX)>>u,_=(3*h+7*(1-h)<<d&t.geohashY)>>d;for(let t=3*h+2*(1-h)-1;t>=0;t--){const e=(i+n)/2,r=c&1<<t?1:0;i=(1-r)*i+r*e,n=(1-r)*e+r*n}for(let t=l-1;t>=0;t--){const e=(r+s)/2,i=_&1<<t?1:0;r=(1-i)*r+i*e,s=(1-i)*e+i*s}}return[i,r,n,s]}({geohashX:this.xNode<<s,geohashY:this.yNode<<i},this.depth)}}class B{constructor(t){this._fields=t,this._size=0,this._depth=0,this._root=z.create(this._fields,0,0,0)}destroy(){}get size(){return this._size}get depth(){return this._depth}get usedMemory(){return this._size*z.estimatedMemory}find(t,e,r){return this._root.find(t,e,r,0,0,0)}insert(t,e,r,s,i,n,o){let a=this._root,h=0,u=0,d=0;for(;null!==a;){if(a.insert(t,e,r,s,i,o),h>=n)return;const l=Math.ceil((h+1)/2),c=Math.floor((h+1)/2),_=1-h%2,p=30-(3*l+2*c),f=30-(2*l+3*c),m=(s&7*_+3*(1-_)<<p)>>p,y=(i&3*_+7*(1-_)<<f)>>f,g=m+y*(8*_+4*(1-_));u=u<<3*_+2*(1-_)|m,d=d<<2*_+3*(1-_)|y,null==a.children[g]&&(a.children[g]=z.create(this._fields,u,d,h+1),this._depth=Math.max(this._depth,h+1),this._size+=1),h+=1,a=a.children[g]}}putBins(t,e){for(const r of this.getNodes(e)){const e=t.get(r.id);e?e.merge(r):t.set(r.id,r.clone())}}getNodes(t){const e=[],{geohashBounds:r,level:s}=t;let i=this._root;for(;null!==i;){const t=i.depth,n=i.xNode,o=i.yNode;if(t>=s){e.push(i),i=i.next;continue}const a=Math.ceil((t+1)/2),h=Math.floor((t+1)/2),u=1-t%2,d=30-(3*a+2*h),l=30-(2*a+3*h),c=~((1<<d)-1),_=~((1<<l)-1),p=(r.xLL&c)>>d,f=(r.yLL&_)>>l,m=(r.xTR&c)>>d,y=(r.yTR&_)>>l,g=n<<3*u+2*(1-u),x=o<<2*u+3*(1-u),I=g+8*u+4*(1-u),v=x+4*u+8*(1-u),b=Math.max(g,p),T=Math.max(x,f),w=Math.min(I,m),M=Math.min(v,y);let S=null,F=null;for(let t=T;t<=M;t++)for(let e=b;e<=w;e++){const r=e-g+(t-x)*(8*u+4*(1-u)),s=i.children[r];s&&(S||(S=s,S.next=i.next),F&&(F.next=s),F=s,s.next=i.next)}i=S||i.next}return e}}var D=r(38976);class G extends D.n{constructor(t){super(t),this._tree=new B(this._options.fields)}get usedMemory(){return this._tree.usedMemory}put(t){throw new Error("Geohash tree does not support put")}putBounded(t,e,r){const{geohashLevel:s,spatialReference:i}=this._options,n=function(t,e,r,s){const i=[t.xmin,t.ymin,t.xmax,t.ymax],n=w.A.fromExtent((0,S.w1)(i,s)),o=(0,C.Cv)(n,s,M.A.WGS84,{extendedParams:{densificationStep:64*e}});if(!o)return null;const a=(0,A.Ye)(o,!1,!1),h=a.coords.filter((t,e)=>!(e%2)),u=a.coords.filter((t,e)=>e%2),d=Math.min(...h),l=Math.min(...u),c=Math.max(...h),_=Math.max(...u),p=P(d,l,r,M.A.WGS84),f=P(c,_,r,M.A.WGS84);return p&&f?{bounds:i,geohashBounds:{xLL:p[0],yLL:p[1],xTR:f[0],yTR:f[1]},level:r}:null}(e,r,s,i);null!=n&&this._tree.putBins(t,n)}_insert(t,e,r,s){const{geohashLevel:i,spatialReference:n}=this._options,o=P(e,r,i,n);o&&this._tree.insert(t,e,r,o[0],o[1],i,s)}}var W=r(68974),Y=r(52350);class j{size(){return this.reader.getSize()}get fields(){return this.reader.fields}invalidate(){this._aggregateIndex=null,this._aggregateIndexHash=null,this._spatialIndex=null}get usedMemory(){let t=0;return t+=this.reader.underlyingMemory,this._aggregateIndex&&(t+=this._aggregateIndex.usedMemory),this._spatialIndex&&(t+=this._spatialIndex.usedMemory),t}registerOverrides(t){this.reader.registerOverrides(t),this.invalidate()}queryFeaturesInBounds(t){const e=this._getSpatialIndex().search(t);return Y.e.from(this.reader,e)}getAggregateIndex(t){const e=JSON.stringify(t);if(e!==this._aggregateIndexHash){switch(this._aggregateIndexHash=e,t.type){case"grid":this._aggregateIndex=new W.H(t);break;case"geohash":this._aggregateIndex=new G(t)}this._aggregateIndex.insert(this.reader,this.isTiled)}return this._aggregateIndex}_getSpatialIndex(){return this._spatialIndex||(this._spatialIndex=v.fromReader(this.reader)),this._spatialIndex}}},73250:(t,e,r)=>{r.d(e,{y:()=>i});var s=r(69397);class i{static fromBuffer(t,e){return new i(t,e)}static create(t,e=4294967295){const r=new Uint32Array(Math.ceil(t/32));return new i(r,e)}constructor(t,e){this._mask=0,this._buf=t,this._mask=e}_getIndex(t){return Math.floor(t/32)}get usedMemory(){return(0,s.Qf)(this._buf)}has(t){const e=this._mask&t;return!!(this._buf[this._getIndex(e)]&1<<e%32)}hasRange(t,e){let r=t,s=e;for(;r%32&&r!==s;){if(this.has(r))return!0;r++}for(;s%32&&r!==s;){if(this.has(r))return!0;s--}if(r===s)return!1;for(let t=r/32;t!==s/32;t++)if(this._buf[t])return!0;return!1}set(t){const e=this._mask&t,r=this._getIndex(e),s=1<<e%32;this._buf[r]|=s}setRange(t,e){let r=t,s=e;for(;r%32&&r!==s;)this.set(r++);for(;s%32&&r!==s;)this.set(s--);if(r!==s)for(let t=r/32;t!==s/32;t++)this._buf[t]=4294967295}unset(t){const e=this._mask&t,r=this._getIndex(e),s=1<<e%32;this._buf[r]&=4294967295^s}resize(t){const e=this._buf,r=new Uint32Array(Math.ceil(t/32));r.set(e),this._buf=r}or(t){for(let e=0;e<this._buf.length;e++)this._buf[e]|=t._buf[e];return this}and(t){for(let e=0;e<this._buf.length;e++)this._buf[e]&=t._buf[e];return this}xor(t){for(let e=0;e<this._buf.length;e++)this._buf[e]^=t._buf[e];return this}ior(t){for(let e=0;e<this._buf.length;e++)this._buf[e]|=~t._buf[e];return this}iand(t){for(let e=0;e<this._buf.length;e++)this._buf[e]&=~t._buf[e];return this}ixor(t){for(let e=0;e<this._buf.length;e++)this._buf[e]^=~t._buf[e];return this}any(){for(let t=0;t<this._buf.length;t++)if(this._buf[t])return!0;return!1}copy(t){for(let e=0;e<this._buf.length;e++)this._buf[e]=t._buf[e];return this}clone(){return new i(this._buf.slice(),this._mask)}clear(){for(let t=0;t<this._buf.length;t++)this._buf[t]=0;return this}forEachSet(t){for(let e=0;e<this._buf.length;e++){let r=this._buf[e],s=32*e;if(r)for(;r;)1&r&&t(s),r>>>=1,s++}}countSet(){let t=0;return this.forEachSet(e=>{t++}),t}}},75538:(t,e,r)=>{r.d(e,{L:()=>a});var s=r(90708),i=r(92722),n=r(63664),o=r(92029);class a extends n.B{static createId(t,e){return`${t}.${e}`}static create(t,e,r,s){return new a(t,e,o.o.create(r),s)}constructor(t,e,r,s){super(r),this.gridX=t,this.gridY=e,this._worldUnitsPerCell=s,this._count=0,this._xWorldTotal=0,this._yWorldTotal=0,this._objectIds=new Set}get id(){return a.createId(this.gridX,this.gridY)}get containedObjectIds(){return this._objectIds}get count(){return this._count}get firstObjectId(){return this._objectIds.values().next().value}get centroidXWorld(){return this._xWorldTotal/this._count}get centroidYWorld(){return this._yWorldTotal/this._count}get usedMemory(){return 48}clone(){const t=new a(this.gridX,this.gridY,this._statistics.clone(),this._worldUnitsPerCell);return t._count=this._count,t._xWorldTotal=this._xWorldTotal,t._yWorldTotal=this._yWorldTotal,t._firstFeatureAttributes=this._firstFeatureAttributes,t._objectIds=new Set(this._objectIds),t}insert(t,e,r,s){0===this._count?this._firstFeatureAttributes=t.readAttributes():this._firstFeatureAttributes=null,this._count+=1,this._xWorldTotal+=r,this._yWorldTotal+=s,this._statistics.insert(t,e),this._objectIds.add(t.getObjectId())}merge(t){if(0!==t._count){this._count+=t._count,this._firstFeatureAttributes=t._firstFeatureAttributes,this._xWorldTotal+=t._xWorldTotal,this._yWorldTotal+=t._yWorldTotal,this._statistics.merge(t._statistics);for(const e of t._objectIds.values())this._objectIds.add(e)}}getCentroidX(t){return null==t?this.centroidXWorld:(0,s.IE)(t,this.centroidXWorld)}getCentroidY(t){return null==t?this.centroidYWorld:(0,s.B2)(t,this.centroidYWorld)}getGeometry(t,e){const r=this.gridX*this._worldUnitsPerCell,n=this.gridY*this._worldUnitsPerCell,o=new i.A([4],[r,n,r+this._worldUnitsPerCell,n,r+this._worldUnitsPerCell,n+this._worldUnitsPerCell,r,n+this._worldUnitsPerCell]);return null!=e?(0,s.Nl)(o,"esriGeometryPolygon",e):o}getCentroid(t){const e=new i.A([],[this.centroidXWorld,this.centroidYWorld]);return null!=t?(0,s.Nl)(e,"esriGeometryPoint",t):e}getGeometricCentroid(t,e){const r=this.gridX*this._worldUnitsPerCell+.5*this._worldUnitsPerCell,n=this.gridY*this._worldUnitsPerCell+.5*this._worldUnitsPerCell,o=new i.A([],[r,n]);return null!=e?(0,s.Nl)(o,"esriGeometryPoint",e):o}getAttributes(){const t={aggregateId:this.id};for(const e of this._statistics.values())t[e.field.name]=e.value;return null!=this._firstFeatureAttributes?{...t,...this._firstFeatureAttributes}:t}}},76213:(t,e,r)=>{r.d(e,{C2:()=>o,CQ:()=>s,DY:()=>i,GR:()=>f,Gh:()=>h,MZ:()=>c,TB:()=>p,U5:()=>a,_M:()=>u,cp:()=>m,eG:()=>n,fq:()=>_,hM:()=>l,ie:()=>d});const s=512,i=29,n=24,o=4,a=6,h=1.05,u=3,d=3,l=4,c=1,_=10,p=256,f=32,m=512},76357:(t,e,r)=>{r.d(e,{A:()=>u});var s=r(31635),i=r(66552),n=r(25482),o=r(91429),a=r(93223);const h=new i.J({inherited:"inherited",codedValue:"coded-value",range:"range"});let u=class extends n.o{constructor(t){super(t),this.name=null,this.type=null}};(0,s.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],u.prototype,"name",void 0),(0,s.Cg)([(0,a.e)(h),(0,o.MZ)({json:{write:{isRequired:!0}}})],u.prototype,"type",void 0),u=(0,s.Cg)([(0,o.$K)("esri.layers.support.Domain")],u)},92029:(t,e,r)=>{r.d(e,{o:()=>o});var s=r(69397),i=r(50115);const n=Math.PI/180;class o{static create(t){return new o(t.map(t=>function(t){switch(t.statisticType){case"min":return new h(t);case"max":return new u(t);case"avg":return new l(t);case"avg_angle":return new c(t);case"sum":case"count":return new d(t);case"mode":return new _(t)}}(t)))}constructor(t){this._statistics=t}static get estimatedMemory(){return s.qK+4*s.qK}values(){return this._statistics.values()}insert(t,e){for(const r of this._statistics)r.insert(t,e)}merge(t){for(let e=0;e<this._statistics.length;e++){const r=this._statistics[e],s=t._statistics[e];if(r.field.name!==s.field.name)throw new Error("InternalError: Tried to merge incompatible statistics");r.merge(s)}}clone(){return new o(this._statistics.map(t=>t.clone()))}}class a{constructor(t){this.field=t}insert(t,e){if(!this.field.computed)return;const r=this.field.computed.read(t,e);(0,i.rZ)(r)||this._insertValue(r)}}class h extends a{constructor(){super(...arguments),this.type="min",this.value=Number.MAX_VALUE}_insertValue(t){this.value=Math.min(this.value,t)}merge(t){this.value=Math.min(this.value,t.value)}clone(){const t=new h(this.field);return t.value=this.value,t}}class u extends a{constructor(){super(...arguments),this.type="max",this.value=Number.MIN_VALUE}_insertValue(t){this.value=Math.max(this.value,t)}merge(t){this.value=Math.max(this.value,t.value)}clone(){const t=new u(this.field);return t.value=this.value,t}}class d extends a{constructor(){super(...arguments),this.type="sum",this.value=0}_insertValue(t){this.value+=t}merge(t){this.value+=t.value}clone(){const t=new d(this.field);return t.value=this.value,t}}class l extends a{constructor(){super(...arguments),this.type="avg",this._total=0,this._count=0}get value(){return this._total/this._count}_insertValue(t){this._total+=t,this._count+=1}merge(t){this._total+=t._total,this._count+=t._count}clone(){const t=new l(this.field);return t._total=this._total,t._count=this._count,t}}class c extends a{constructor(){super(...arguments),this.type="avg_angle",this._x=0,this._y=0,this._count=0}get value(){const t=this._x/this._count,e=this._y/this._count,r=180/Math.PI;return Math.atan2(e,t)*r}_insertValue(t){this._x=this._x+Math.cos(t*n),this._y=this._y+Math.sin(t*n),this._count+=1}merge(t){this._x+=t._x,this._y+=t._y,this._count+=t._count}clone(){const t=new c(this.field);return t._x=this._x,t._y=this._y,t._count=this._count,t}}class _ extends a{constructor(){super(...arguments),this._frequencies=new Map}get value(){let t,e=0;for(const[r,s]of this._frequencies.entries())s>e&&(e=s,t=r);return t}_insertValue(t){const e=this._frequencies.get(t);null!=e?this._frequencies.set(t,e+1):this._frequencies.set(t,1)}merge(t){for(const[e,r]of t._frequencies.entries()){const t=this._frequencies.get(e);null!=t?this._frequencies.set(e,t+r):this._frequencies.set(e,r)}}clone(){const t=new _(this.field);return t._frequencies=new Map(this._frequencies),t}}},97633:(t,e,r)=>{r.d(e,{P:()=>n});var s=r(69397),i=r(73250);class n{constructor(t){this._valid=i.y.create(t),this._data=new Array(t)}get usedMemory(){let t=this._valid.usedMemory;if(this._data.length>0){const e="string"==typeof this._data[0]?64:s.RS;t+=this._data.length*e}return t}has(t){return this._valid.has(t)}set(t,e){this._valid.set(t),this._data[t]=e}get(t){return this._data[t]}}},98453:(t,e,r)=>{r.d(e,{m:()=>s});const s=new(r(66552).J)({esriFieldTypeSmallInteger:"small-integer",esriFieldTypeInteger:"integer",esriFieldTypeSingle:"single",esriFieldTypeDouble:"double",esriFieldTypeLong:"long",esriFieldTypeString:"string",esriFieldTypeDate:"date",esriFieldTypeOID:"oid",esriFieldTypeGeometry:"geometry",esriFieldTypeBlob:"blob",esriFieldTypeRaster:"raster",esriFieldTypeGUID:"guid",esriFieldTypeGlobalID:"global-id",esriFieldTypeXML:"xml",esriFieldTypeBigInteger:"big-integer",esriFieldTypeDateOnly:"date-only",esriFieldTypeTimeOnly:"time-only",esriFieldTypeTimestampOffset:"timestamp-offset"})},99996:(t,e,r)=>{r.d(e,{Y:()=>O});var s=r(66131),i=r(44208),n=r(69397),o=r(44729),a=r(15032),h=r(36745),u=r(70328),d=r(65864),l=r(32011),c=r(62577),_=r(27647),p=r(90708),f=r(43334),m=r(92722),y=r(98623),g=r(97633);const x=(0,i.A)("featurelayer-simplify-thresholds")??[.5,.5,.5,.5],I=x[0],v=x[1],b=x[2],T=x[3],w=(0,i.A)("featurelayer-simplify-payload-size-factors")??[1,2,4],M=w[0],S=w[1],F=w[2],A=(0,i.A)("featurelayer-simplify-mobile-factor")??2,C=(0,i.A)("esri-mobile"),P=4294967295;class O{constructor(t){this.metadata=t,this.type="FeatureSetReader",this._overrides=null,this._joined=[],this._objectIdToIndex=null,this._boundsBuffer=[],this._caches=new Map,this.arcadeDeclaredClass="esri.arcade.Feature",this._contextTimeZone=null}destroy(){}[Symbol.dispose](){this.destroy()}getAreaSimplificationThreshold(t,e){let r=1;const s=C?A:1;e>4e6?r=F*s:e>1e6?r=S*s:e>5e5?r=M*s:e>1e5&&(r=s);let i=0;return t>4e3?i=T*r:t>2e3?i=b*r:t>100?i=v:t>15&&(i=I),i}getBounds(t){!function(t,e){if(!(t.length>e))for(;t.length<=e;)t.push(0)}(this._boundsBuffer,4*this.getIndex()+4);const e=this.getBoundsXMin();if(e===P||!isFinite(e))return!1;if(0===this.getBoundsXMin()){const e=this.readGeometryWorldSpace();if(e?.isPoint&&0===e.coords[0]&&0===e.coords[1])return(0,u.BI)(t,0,0,0,0),!0;if(!e)return this.setBoundsXMin(P),!1;let r=1/0,s=1/0,i=-1/0,n=-1/0;return e.forEachVertex((t,e)=>{r=Math.min(r,t),s=Math.min(s,e),i=Math.max(i,t),n=Math.max(n,e)}),this.setBoundsXMin(r),this.setBoundsYMin(s),this.setBoundsXMax(i),this.setBoundsYMax(n),(0,u.BI)(t,r,s,i,n),!0}const r=this.getBoundsXMin(),s=this.getBoundsYMin(),i=this.getBoundsXMax(),n=this.getBoundsYMax();return(0,u.BI)(t,r,s,i,n),!0}getBoundsXMin(){return this._boundsBuffer[4*this.getIndex()]}setBoundsXMin(t){this._boundsBuffer[4*this.getIndex()]=t}getBoundsYMin(){return this._boundsBuffer[4*this.getIndex()+1]}setBoundsYMin(t){this._boundsBuffer[4*this.getIndex()+1]=t}getBoundsXMax(){return this._boundsBuffer[4*this.getIndex()+2]}setBoundsXMax(t){this._boundsBuffer[4*this.getIndex()+2]=t}getBoundsYMax(){return this._boundsBuffer[4*this.getIndex()+3]}setBoundsYMax(t){this._boundsBuffer[4*this.getIndex()+3]=t}readAttributeAsTimestamp(t){const e=this.readAttribute(t);return"string"==typeof e?new Date(e).getTime():"number"==typeof e||null==e?e:null}readAttribute(t,e=!1){const r=this._readAttribute(t,e);if(void 0!==r)return r;for(const r of this._joined){r.setIndex(this.getIndex());const s=r._readAttribute(t,e);if(void 0!==s)return s}}readAttributes(){const t=this._readAttributes();for(const e of this._joined){e.setIndex(this.getIndex());const r=e._readAttributes();for(const e of Object.keys(r))t[e]=r[e]}return t}joinAttributes(t){this._joined.push(t)}registerOverrides(t){this._overrides=t}withoutOverrides(){const t=this.copy();return t._overrides=null,t}readOptimizedFeatureWorldSpace(){const t=this.readGeometryWorldSpace(),e=this.readAttributes(),r=this.readCentroidWorldSpace();return new f.Om(t,e,r,this.getObjectId(),this.getDisplayId())}readLegacyFeatureForDisplay(){const t=this.readCentroidForDisplay();return{attributes:this.readAttributes(),geometry:this.readLegacyGeometryForDisplay(),centroid:(t&&{x:t.coords[0],y:t.coords[1]})??null}}readLegacyFeatureWorldSpace(){const t=this.readCentroidWorldSpace();return{attributes:this.readAttributes(),geometry:this._readLegacyGeometryWorldSpace(),centroid:(t&&{x:t.coords[0],y:t.coords[1]})??null}}readLegacyGeometryForDisplay(){const t=this.readGeometryForDisplay();return(0,p.zv)(t,this.geometryType,!1,!1)}readXForDisplay(){return this._readX()}readYForDisplay(){return this._readY()}readXWorldSpace(){const t=this._readX(),e=this.getInTransform();return null==e?t:t*e.scale[0]+e.translate[0]}readYWorldSpace(){const t=this._readY(),e=this.getInTransform();return null==e?t:e.translate[1]-t*e.scale[1]}readGeometryForDisplay(){const t=this._readGeometryDeltaDecoded(!0);if(!t){const t=this._createDeltaQuantizedGeometryFromServerCentroid();return t?t.deltaDecode():null}return t}readGeometryForDisplayTransformed(t){let e=this.readGeometryForDisplay();if(e&&"esriGeometryPolyline"===this.metadata.geometryType&&(e=(0,p.kz)(e,this.metadata.geometryType,t.scale[0])),e&&(e=(0,p.hK)(e,t,this.metadata.geometryType)),!e){const e=this.readCentroidForDisplay();if(!e)return null;const r=(0,c.IE)(t,e.coords[0]),s=(0,c.B2)(t,e.coords[1]);return this._createDeltaQuantizedExtrudedGeometry(r,s).deltaDecode()}return e}readGeometryWorldSpace(){let t=this._readGeometry();if(t||(t=this._createDeltaQuantizedGeometryFromServerCentroid()),!t)return null;const e=t.clone(),r=this.getInTransform();return null!=r&&(0,p.aQ)(e,r),e}readCentroidForDisplay(){const t=this.readGeometryForDisplay();return t?this._computeDisplayCentroid(t):this._readServerCentroid()}readCentroidWorldSpace(){const t=this.readGeometryForDisplay(),e=t?this._computeDisplayCentroid(t):this._readServerCentroid();if(!e)return null;const r=e.clone(),s=this.getInTransform();return null!=s&&(0,p.aQ)(r,s),r}setCache(t){let e=this._caches.get(t);null==e&&(e=new g.P(this.getSize()),this._caches.set(t,e)),this._activeCache=e}setCachedValue(t){this._activeCache.set(this.getIndex(),t)}hasCachedValue(){return this._activeCache.has(this.getIndex())}getCachedValue(){return this._activeCache.get(this.getIndex())}get underlyingMemory(){let t=0;t+=(0,n.Qf)(this._boundsBuffer);for(const e of this._caches.values())t+=e.usedMemory;return t}_readGeometryDeltaDecoded(t){const e=this._readGeometry(t);return"esriGeometryPoint"!==this.geometryType&&e&&this.getInTransform()?e.deltaDecode():e}get contextTimeZone(){return this._contextTimeZone}set contextTimeZone(t){this._contextTimeZone=t}readArcadeFeature(){return this}hasField(t){return this.fields.has(t)||this._joined.some(e=>e.hasField(t))}geometry(){const t=this.readGeometryWorldSpace(),e=(0,p.zv)(t,this.geometryType,this.hasZ,this.hasM),r=(0,d.rS)(e);if(r){if(!this.metadata.outSpatialReference)throw new Error("InternalError: Expected spatial reference to be defined");r.spatialReference=this.metadata.outSpatialReference}return r}autocastArcadeDate(t,e){return e&&e instanceof Date?this.isUnknownDateTimeField(t)?s.lY.unknownDateJSToArcadeDate(e):s.lY.dateJSAndZoneToArcadeDate(e,this.contextTimeZone??y.qU):e}isUnknownDateTimeField(t){return this.metadata.fieldsIndex.getTimeZone(t)===y.L5}field(t){let e=this.fields.get(t);if(e)switch(e.type){case"date-only":case"esriFieldTypeDateOnly":return o.n.fromReader(this.readAttribute(t,!1));case"time-only":case"esriFieldTypeTimeOnly":return a.k.fromReader(this.readAttribute(t,!1));case"esriFieldTypeTimestampOffset":case"timestamp-offset":return s.lY.fromReaderAsTimeStampOffset(this.readAttribute(t,!1));case"date":case"esriFieldTypeDate":return this.autocastArcadeDate(t,this.readAttribute(t,!0));default:return this.readAttribute(t,!1)}for(const r of this._joined)if(r.setIndex(this.getIndex()),e=r.fields.get(t),e)switch(e.type){case"date-only":case"esriFieldTypeDateOnly":return o.n.fromReader(r._readAttribute(t,!1));case"time-only":case"esriFieldTypeTimeOnly":return a.k.fromReader(r._readAttribute(t,!1));case"esriFieldTypeTimestampOffset":case"timestamp-offset":return s.lY.fromReaderAsTimeStampOffset(r._readAttribute(t,!1));case"date":case"esriFieldTypeDate":return this.autocastArcadeDate(t,r._readAttribute(t,!0));default:return this.readAttribute(t,!1)}throw new Error(`Field ${t} does not exist`)}setField(t,e){throw new Error("Unable to update feature attribute values, feature is readonly")}keys(){return this.fields.fields.map(t=>t.name)}isEmpty(){return this.fields.fields.length<=0&&null==this.geometry()}castToText(t=!1){if(!t)return JSON.stringify(this.readLegacyFeatureForDisplay());const e=this.readLegacyFeatureForDisplay();if(!e)return JSON.stringify(null);const r={geometry:e.geometry,attributes:{...e.attributes}};for(const t in r.attributes){const e=r.attributes[t];e instanceof Date&&(r.attributes[t]=e.getTime())}return JSON.stringify(r)}gdbVersion(){return null}fullSchema(){return this.metadata.arcadeSchema}castAsJson(t=null){return{attributes:this._readAttributes(),geometry:!0===t?.keepGeometryType?this.geometry():this.geometry()?.toJSON()??null}}castAsJsonAsync(t=null,e=null){return Promise.resolve(this.castAsJson(e))}_getExists(){if(this._overrides){const t=this.getObjectId();return!this._overrides.hasOverride(t)}return!0}_computeDisplayCentroid(t){if(null==this.getInTransform())return(0,_.Q)(t);const e=h.z.fromOptimized(t,this.geometryType);e.yFactor*=-1;const r=(0,l.d)(e);return r?(r[1]*=-1,new m.A([],r)):null}copyInto(t){t._joined=this._joined,t._overrides=this._overrides,t._objectIdToIndex=this._objectIdToIndex,t._boundsBuffer=this._boundsBuffer,t._activeCache=this._activeCache,t._caches=this._caches,t._contextTimeZone=this._contextTimeZone}_readLegacyGeometryWorldSpace(){const t=this.readGeometryWorldSpace();return(0,p.zv)(t,this.geometryType,!1,!1)}_createDeltaQuantizedGeometryFromServerCentroid(){const t=this._readServerCentroid();if(!t)return null;const[e,r]=t.coords;return this._createDeltaQuantizedExtrudedGeometry(e,r)}_createDeltaQuantizedExtrudedGeometry(t,e){return"esriGeometryPolyline"===this.geometryType?this._createDeltaQuantizedExtrudedLine(t,e):this._createDeltaQuantizedExtrudedQuad(t,e)}_createDeltaQuantizedExtrudedQuad(t,e){return new m.A([5],[t-1,e,1,-1,1,1,-1,1,-1,-1])}_createDeltaQuantizedExtrudedLine(t,e){return new m.A([2],[t-1,e+1,1,-1])}}}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1075],{2272:(t,e,r)=>{r.d(e,{Dl:()=>u,gf:()=>l,jV:()=>h,lF:()=>d});var s=r(92602),i=r(70333),n=r(4718),o=r(84952),a=r(926);function h(t,e){return e?{...e,query:{...t,...e.query}}:{query:t}}function u(t){return"string"==typeof t?(0,o.An)(t):(0,n.o8)(t)}function d(t,e,r){const s={};for(const i in t){if("declaredClass"===i)continue;const n=t[i];if(null!=n&&"function"!=typeof n)if(Array.isArray(n))s[i]=n.map(t=>d(t));else if("object"==typeof n)if(n.toJSON){const t=n.toJSON(r?.[i]);s[i]=e?t:JSON.stringify(t)}else s[i]=e?n:JSON.stringify(n);else s[i]=n}return s}async function l(t,e,n){const o=function(t,e){return t?e&&(0,a.Qc)(t)?e:(0,a.CG)(t)??i.id?.findCredential(t)?.token:null}(t,e);if(o)return o;!i.id&&s.A.request.useIdentity&&await Promise.all([r.e(7330),r.e(168),r.e(148)]).then(r.bind(r,50148));const h=await i.id.getCredential(t,n);return h?.token}},5162:(t,e,r)=>{r.d(e,{HJ:()=>o,Im:()=>d,KN:()=>h});var s=r(39516),i=r(70300),n=r(8446);class o{static async create(t){const{metadata:e,definitionExpression:r}=t,i=r?await(0,s.GP)(r,e.fieldsIndex):null;return new o(e,i,r)}constructor(t,e,r){this.metadata=t,this._clause=e,this._definitionExpression=r}get hash(){return this._definitionExpression}testFeature(t){return null==this._clause||this._clause.testFeature(t)}}class a{constructor(){this.modified=new Map,this.removed=new Set}modify(t){this.modified.set(t.objectId,t),this.removed.has(t.objectId)&&this.removed.delete(t.objectId)}remove(t){this.modified.delete(t),this.removed.add(t)}get isEmpty(){return 0===this.modified.size&&0===this.removed.size}applyWhereClause(t){const e=new a;for(const[r,s]of this.modified)t.testFeature(s)?e.modified.set(r,s):e.removed.add(s.objectId);for(const t of this.removed)e.removed.add(t);return e}}class h extends i.K{constructor(t){super(),this._reader=t,this.chunkId="override",this.normalizedChunkId="override"}static fromFeatures(t,e){const r=n.K.fromOptimizedFeatures(t,e);return new h(r)}get reader(){return this._reader}get queryInfo(){return{}}get first(){return!1}get end(){return!1}get isTiled(){return!1}getTileReader(t){if(!this._reader.getSize())return null;const e=this.queryFeaturesInBounds(t.bounds);return e.setTransformForDisplay(t.transform),e}}class u{constructor(t,e){this.inner=t,this.isWeak=e,this.lastWeak=null}get isStrong(){return!this.isWeak}}class d{constructor(t){this._parameters=t,this._overrides=new Map,this._update=new a,this._lastCleanup=0}update(t){this._parameters=t}hasOverride(t){return this._overrides.has(t)}onChunkInsert(t){if(this._overrides.size){const e=t.reader.getCursor();for(;e.next();){const t=e.getObjectId(),r=this._overrides.get(t);if(r?.lastWeak&&(r.lastWeak=null),r?.isWeak){const t=e.readOptimizedFeatureWorldSpace(),s=r.inner?.attributes??{};t.attributes={...s,...t.attributes},r.inner=t,this._update.modify(t),this.invalidate()}}}t.registerOverrides(this)}apply(t,e){const{updateWeak:r,removeWeak:s,update:i,remove:n,release:o}=t.commands;this.invalidate();for(const t of r){const e=new u(t,!0),r=this._overrides.get(t.objectId);r?.isStrong?r.lastWeak=e:(this._overrides.set(t.objectId,e),this._update.modify(t))}for(const t of i){const e=new u(t,!1),r=this._overrides.get(t.objectId);e.lastWeak=r?.isWeak?r:r?.lastWeak??null,this._overrides.set(t.objectId,e),this._update.modify(t)}for(const t of s){const e=new u(null,!0),r=this._overrides.get(t);r?.isStrong?r.lastWeak=e:(this._overrides.set(t,e),this._update.remove(t))}for(const t of n){const e=new u(null,!1),r=this._overrides.get(t);e.lastWeak=r?.isWeak?r:r?.lastWeak??null,this._overrides.set(t,e),this._update.remove(t)}if(o.length){const t=new Set;for(const e of o){const r=this._overrides.get(e);r?.lastWeak?(this._overrides.set(e,r.lastWeak),null==r.lastWeak.inner?this._update.remove(e):this._update.modify(r.lastWeak.inner)):r&&!r.isWeak&&(this._overrides.delete(e),t.add(e))}e.forEachUnsafe(e=>{const r=e.getObjectId();t.has(r)&&(this._update.modify(e.readOptimizedFeatureWorldSpace()),t.delete(r))});for(const e of t.values())this._update.remove(e)}}clearWeakOverrides(){for(const[t,e]of this._overrides.entries())e.isWeak&&this._overrides.delete(t);this.invalidate()}cleanup(t){if(this._overrides.size<1e4)return;const e=performance.now();if(e-this._lastCleanup<1e3)return;this._lastCleanup=e;const r=this._getWeakDeletions();if(!(r.size<1e4)){for(const e of t){const t=e.reader.withoutOverrides().getCursor();for(;t.next();){const e=t.getObjectId();r.delete(e)}}for(const t of r)this._overrides.delete(t);r.size&&this.invalidate()}}takeOverrideUpdate(){const t=this._update;return t.isEmpty?null:(this._update=new a,t.applyWhereClause(this._parameters))}asChunk(){const t=this._parameters;if(this._lastOverrideParametersHash!==t.hash&&(this._lastOverrideParametersHash=t.hash,this._chunk=null),!this._chunk){const e=[];for(const r of this._overrides.values())null!=r.inner&&t.testFeature(r.inner)&&e.push(r.inner);this._chunk=h.fromFeatures(e,t.metadata)}return this._chunk}invalidate(){this._chunk=null}putWeakObjectIdsFromGlobalIds(t,e,r){for(const[s,i]of this._overrides.entries()){if(i.isWeak&&null!=i.inner){const n=i.inner.attributes[r];n&&e.has(n)&&!t.has(n)&&t.set(n,s);continue}if(null!=i.lastWeak&&null!=i.lastWeak.inner){const n=i.lastWeak.inner.attributes[r];n&&e.has(n)&&!t.has(n)&&t.set(n,s)}}}_getWeakDeletions(){const t=new Set;for(const[e,r]of this._overrides.entries())r.isWeak&&null==r.inner&&t.add(e);return t}}},8446:(t,e,r)=>{r.d(e,{K:()=>a});var s=r(90708),i=r(43334),n=r(95466),o=r(99996);class a extends o.Y{static fromFeatures(t,e){const{geometryType:r}=e,i=(0,s.Di)([],t,r,!1,!1,e.featureIdInfo);for(let e=0;e<i.length;e++)i[e].displayId=t[e].displayId;return a.fromOptimizedFeatures(i,e)}static fromFeatureSet(t,e){const r=(0,s.q3)(t,e.featureIdInfo);return a.fromOptimizedFeatureSet(r,e)}static fromOptimizedFeatureSet(t,e){const r=a.fromOptimizedFeatures(t.features,e);return r._exceededTransferLimit=t.exceededTransferLimit,r._transform=t.transform,r._fieldsIndex=new n.A(t.fields),r}static fromOptimizedFeatures(t,e,r){const s=new a(t,e);return s._fieldsIndex=e.fieldsIndex,s._transform=r,s}static empty(t){return new a([],t)}constructor(t,e){super(e),this._exceededTransferLimit=!1,this._featureIndex=-1,this._fieldsIndex=null,this._geometryType=e.geometryType,this._features=t}get fields(){return this._fieldsIndex}get geometryType(){return this._geometryType}get hasFeatures(){return!!this._features.length}get hasNext(){return this._featureIndex+1<this._features.length}get exceededTransferLimit(){return this._exceededTransferLimit}get hasZ(){return!1}get hasM(){return!1}get _current(){return this._features[this._featureIndex]}get usedMemory(){return this._current.usedMemory}getSize(){return this._features.length}getCursor(){return this.copy()}getInTransform(){return this._transform}getAttributeHash(){let t="";for(const e in this._current.attributes)t+=this._current.attributes[e];return t}getIndex(){return this._featureIndex}setIndex(t){this._featureIndex=t}getObjectId(){return this._current?.objectId}getDisplayId(){return this._current.displayId}setDisplayId(t){this._current.displayId=t}copy(){const t=new a(this._features,this.metadata);return this.copyInto(t),t}next(){for(;++this._featureIndex<this._features.length&&!this._getExists(););return this._featureIndex<this._features.length}readGeometryArea(){return(0,i.N3)(this._current)?(0,s.Rk)(this._current.geometry,2):0}_readX(){return(0,i.N3)(this._current)?this._current.geometry.coords[0]:0}_readY(){return(0,i.N3)(this._current)?this._current.geometry.coords[1]:0}_readGeometry(){return(0,i.N3)(this._current)?this._current.geometry??null:null}_readServerCentroid(){return this._current.centroid}_readAttribute(t,e){if(!this._fieldsIndex){const e=this._current.attributes[t];if(void 0!==e)return e;const r=t.toLowerCase();for(const t in this._current.attributes)if(t.toLowerCase()===r)return this._current.attributes[t];return}const r=this._fieldsIndex.get(t);if(!r)return;const s=this._current.attributes[r.name];return null==s?s:e&&this.fields.isDateField(t)?new Date(s):s}_readAttributes(){return this._current.attributes}copyInto(t){super.copyInto(t),t._featureIndex=this._featureIndex,t._transform=this._transform,t._fieldsIndex=this._fieldsIndex}}},8631:(t,e,r)=>{r.d(e,{rS:()=>c,gK:()=>l}),r(44208);var s,i=r(53177),n=r(76357),o=r(31635),a=r(91429),h=r(93223);let u=class extends n.A{static{s=this}constructor(t){super(t),this.type="inherited"}clone(){return new s}};(0,o.Cg)([(0,h.e)({inherited:"inherited"})],u.prototype,"type",void 0),u=s=(0,o.Cg)([(0,a.$K)("esri.layers.support.InheritedDomain")],u);var d=r(41628);const l={key:"type",base:n.A,typeMap:{range:d.A,"coded-value":i.A,inherited:u}};function c(t){if(!t?.type)return null;switch(t.type){case"range":return d.A.fromJSON(t);case"codedValue":return i.A.fromJSON(t);case"inherited":return u.fromJSON(t)}return null}},9012:(t,e,r)=>{function s(t,{timeZone:e,timeExtent:r}){return{$view:{scale:t,timeZone:e,timeProperties:{currentStart:r?.start,currentEnd:r?.end}}}}r.d(e,{N:()=>s})},9775:(t,e,r)=>{r.d(e,{A:()=>n});var s=r(62788),i=r(95488);class n{constructor(t=t=>t.values().next().value){this._peeker=t,this._observable=new i.I,this._items=new Set}get length(){return(0,s.gc)(this._observable),this._items.size}clear(){0!==this.length&&(this._items.clear(),this._observable.notify())}last(){if(0===this.length)return;let t;for(t of this._items);return t}peek(){if(0!==this.length)return this._peeker(this._items)}push(t){this.contains(t)||(this._items.add(t),this._observable.notify())}contains(t){return(0,s.gc)(this._observable),this._items.has(t)}pop(){if(0===this.length)return;const t=this.peek();return this._items.delete(t),this._observable.notify(),t}popLast(){if(0===this.length)return;const t=this.last();return this._items.delete(t),this._observable.notify(),t}remove(t){this.contains(t)&&(this._items.delete(t),this._observable.notify())}filter(t){const e=this.length;return this._items.forEach(e=>{t(e)||this._items.delete(e)}),e!==this._items.size&&this._observable.notify(),this}*[Symbol.iterator](){(0,s.gc)(this._observable),yield*this._items}}},16630:(t,e,r)=>{r.d(e,{s:()=>h}),r(44208);var s=r(69397),i=r(92722),n=r(57733),o=r(99996);let a;class h extends o.Y{constructor(t,e,r,i,n,o=new Uint32Array(r.size())){super(t),this._fields=e,this._inner=r,this._chunkId=i,this._fileIndex=n,this._displayIds=o,this._index=-1,this.usedMemory=s.qK,this._size=this._inner.size(),t.featureIdInfo.type,this._chunkId>65535&&console.error("Exceeded max allowed parquet reader size")}destroy(){super.destroy(),this._inner.free()}get fields(){return this._fields}get geometryType(){return this.metadata.geometryType}get hasFeatures(){return!0}get hasNext(){throw new Error("Method not implemented.")}get exceededTransferLimit(){return!1}get hasZ(){return!1}get hasM(){return!1}getInTransform(){return null}getSize(){return this._size}getCursor(){return this.copy()}getAttributeHash(){let t="";for(const e of this.fields.fields)t+=this._readAttribute(e.name,!1)+".";return t}getObjectId(){return this._fileIndex<<24|this._inner.rowId(this._index)}getDisplayId(){return this._displayIds[this._index]}setDisplayId(t){this._displayIds[this._index]=t}setIndex(t){this._index=t}getBoundsXMin(){return this._inner.boundsXMin(this._index)}getBoundsYMin(){return this._inner.boundsYMin(this._index)}getBoundsXMax(){return this._inner.boundsXMax(this._index)}getBoundsYMax(){return this._inner.boundsYMax(this._index)}setBoundsXMin(t){throw new Error("InternalError: Setting bounds is unsupported")}setBoundsYMin(t){throw new Error("InternalError: Setting bounds is unsupported")}setBoundsXMax(t){throw new Error("InternalError: Setting bounds is unsupported")}setBoundsYMax(t){throw new Error("InternalError: Setting bounds is unsupported")}getIndex(){return this._index}next(){for(;++this._index<this._size&&!this._getExists(););return this._index<this._size}readGeometryArea(){return this.readGeometryForDisplay()?.area()??0}copy(){const t=new h(this.metadata,this._fields,this._inner,this._chunkId,this._fileIndex,this._displayIds);return this.copyInto(t),t}copyInto(t){super.copyInto(t),t._index=this._index}readGeometryForDisplayTransformed(t){const[e,r]=t.translate,[s,o]=t.scale;return a||(a=n.QuantizedGeometryBuffer.new()),this._inner.transformGeometry(a,e,r,s,o,this._index)?new i.A(a.readLengthsUnsafe(),a.readCoordsUnsafe(),this.hasZ,this.hasM):null}_readGeometry(t){const e=this._inner.readCoords(this._index),r=this._inner.readLengths(this._index);return e&&r?new i.A(r,e,this.hasZ,this.hasM):null}_readX(){return this._inner.readX(this._index)}_readY(){return this._inner.readY(this._index)}_readServerCentroid(){return null}_readAttribute(t,e){const r=this.fields.get(t);if(!r)return;if(null==r.column)return this.getObjectId();const s=this._inner.readAttribute(this._index,r.column);if(null==s)return s;const i=this.fields.isDateField(r.name);return e?null==s?s:i?new Date(s):s:s}_readAttributes(){const t={};for(const e of this._fields.fields)null!=e.column&&(this._inner.isEmpty(e.column)||(t[e.name]=this._readAttribute(e.name,!1)));return t.__OBJECTID=this.getObjectId(),t}}},20437:(t,e,r)=>{r.d(e,{A:()=>p});var s,i=r(31635),n=r(66552),o=r(25482),a=r(91429),h=r(56507),u=r(8631),d=r(98453),l=r(36005),c=r(93223);const _=new n.J({binary:"binary",coordinate:"coordinate",countOrAmount:"count-or-amount",currency:"currency",dateAndTime:"date-and-time",description:"description",emailAddress:"email-address",locationOrPlaceName:"location-or-place-name",measurement:"measurement",nameOrTitle:"name-or-title",none:"none",orderedOrRanked:"ordered-or-ranked",percentageOrRatio:"percentage-or-ratio",phoneNumber:"phone-number",typeOrCategory:"type-or-category",uniqueIdentifier:"unique-identifier"});let p=class extends o.o{static{s=this}constructor(t){super(t),this.alias=null,this.defaultValue=void 0,this.description=null,this.domain=null,this.editable=!0,this.length=void 0,this.name=null,this.nullable=!0,this.type=null,this.valueType=null,this.visible=!0}readDescription(t,{description:e}){let r=null;try{r=e?JSON.parse(e):null}catch(t){}return r?.value??null}readValueType(t,{description:e}){let r=null;try{r=e?JSON.parse(e):null}catch(t){}return r?_.fromJSON(r.fieldValueType):null}clone(){return new s({alias:this.alias,defaultValue:this.defaultValue,description:this.description,domain:this.domain?.clone()??null,editable:this.editable,length:this.length,name:this.name,nullable:this.nullable,type:this.type,valueType:this.valueType,visible:this.visible})}};(0,i.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],p.prototype,"alias",void 0),(0,i.Cg)([(0,a.MZ)({type:[String,Number],json:{write:{allowNull:!0}}})],p.prototype,"defaultValue",void 0),(0,i.Cg)([(0,a.MZ)()],p.prototype,"description",void 0),(0,i.Cg)([(0,l.w)("description")],p.prototype,"readDescription",null),(0,i.Cg)([(0,a.MZ)({types:u.gK,json:{read:{reader:u.rS},write:!0}})],p.prototype,"domain",void 0),(0,i.Cg)([(0,a.MZ)({type:Boolean,json:{write:!0}})],p.prototype,"editable",void 0),(0,i.Cg)([(0,a.MZ)({type:h.jz,json:{write:{overridePolicy:t=>({enabled:Number.isFinite(t)})}}})],p.prototype,"length",void 0),(0,i.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],p.prototype,"name",void 0),(0,i.Cg)([(0,a.MZ)({type:Boolean,json:{write:!0}})],p.prototype,"nullable",void 0),(0,i.Cg)([(0,c.e)(d.m)],p.prototype,"type",void 0),(0,i.Cg)([(0,a.MZ)()],p.prototype,"valueType",void 0),(0,i.Cg)([(0,l.w)("valueType",["description"])],p.prototype,"readValueType",null),(0,i.Cg)([(0,a.MZ)({type:Boolean,json:{read:!1}})],p.prototype,"visible",void 0),p=s=(0,i.Cg)([(0,a.$K)("esri.layers.support.Field")],p)},28923:(t,e,r)=>{r.d(e,{j:()=>i});var s=r(70300);class i extends s.K{constructor(t,e,r,s,i=0){super(),this._reader=t,this._queryJSON=e,this._page=r,this._end=s,this._fileIndex=i,this.chunkId=`${this._fileIndex}.${this._page}${this.end?"e":""}`,this.normalizedChunkId=this.chunkId}get reader(){return this._reader}get first(){return 0===this._page}get end(){return this._end}get queryInfo(){return{type:"snapshot",chunkId:this.chunkId,queryJSON:this._queryJSON,page:this._page,size:this.size(),end:this.end}}get isTiled(){return!1}getTileReader(t){const e=this.queryFeaturesInBounds(t.bounds);return e.setTransformForDisplay(t.transform),e}}},30661:(t,e,r)=>{r.d(e,{Z:()=>n});var s=r(43334),i=r(8446);class n{static{this.Shared=new n}getObjectId(t){return t.getObjectId()}getAttributes(t){return t.readAttributes()}getAttribute(t,e){return t.readAttribute(e)}getAttributeAsTimestamp(t,e){return t.readAttributeAsTimestamp(e)}cloneWithGeometry(t,e){const r=t.readAttributes(),n=new s.Om(e,r,null,t.getObjectId(),t.getDisplayId()),o=i.K.fromOptimizedFeatures([n],t.metadata);return o.setIndex(0),o}getGeometry(t){return t.readGeometryWorldSpace()}getCentroid(t,e){return t.readCentroidForDisplay()}}},32011:(t,e,r)=>{r.d(e,{d:()=>u});var s=r(19419),i=r(6606),n=r(12359),o=r(95108),a=r(12176);const h=222045e-19;function u(t){if(0===t.totalSize)return null;const e=(0,i.z8)(t);if(!e)return null;const r=4*(Math.abs(e[0])+Math.abs(e[2])+Math.abs(e[1])+Math.abs(e[3])+1)*h;let o=0,a=0;t.reset();for(let e=0;t.nextPath();e++){const r=t.getCurrentRingArea();r>a&&(a=r,o=e)}if(t.seekPath(o),0===t.pathSize)return null;t.seekPathStart();const u=(0,i.B$)(t);if(Math.abs(a)<=2*r*r)return[(u[0]+u[2])/2,(u[1]+u[3])/2];t.seekPathStart();const _=(0,n.w2)(t,(0,s.vt)());if(null===_)return null;if(t.totalPoints<4)return _;const p=[[NaN,NaN],[NaN,NaN],[NaN,NaN],[NaN,NaN]],f=[NaN,NaN,NaN,NaN],m=[NaN,NaN,NaN,NaN];let y=!1,g=l(_,t,!0);0===g.distance&&(y=!0,p[0][0]=_[0],p[0][1]=_[1],g=l(_,t,!1)),f[0]=g.distance,m[0]=0;const x=[NaN,NaN];let T=!1,w=.25,M=-1,S=NaN;do{if(S=NaN,p[1]=c(t,I(u[0],u[2],w),0,e),isNaN(p[1][0])||isNaN(p[1][1])||(g=l(p[1],t,!1),S=g.distance),!isNaN(S)&&S>r&&d(p[1],t))T=!0,f[1]=S,m[1]=v(p[1],_);else if(!isNaN(S)&&S>M&&(M=S,x[0]=p[1][0],x[1]=p[1][1]),w-=.01,w<.1){if(!(M>=0))break;T=!0,f[1]=M,p[1][0]=x[0],p[1][1]=x[1],m[1]=v(p[1],_)}}while(!T);T=!1,w=.5,M=-1;let F=.01,A=1;do{if(S=NaN,p[2]=c(t,I(u[0],u[2],w),0,e),isNaN(p[2][0])||isNaN(p[2][1])||(g=l(p[2],t,!1),S=g.distance),!isNaN(S)&&S>r&&d(p[2],t))T=!0,f[2]=S,m[2]=v(p[2],_);else if(!isNaN(S)&&S>M)M=S,x[0]=p[2][0],x[1]=p[2][1];else if(S>M&&(M=S,x[0]=p[2][0],x[1]=p[2][1]),w=.5+F*A,F+=.01,A*=-1,w<.3||w>.7){if(!(M>=0))break;T=!0,f[2]=M,p[2][0]=x[0],p[2][1]=x[1],m[2]=v(p[2],_)}}while(!T);T=!1,w=.75,M=-1;do{if(S=NaN,p[3]=c(t,I(u[0],u[2],w),0,e),isNaN(p[3][0])||isNaN(p[3][1])||(g=l(p[3],t,!1),S=g.distance),!isNaN(S)&&S>r&&d(p[3],t))T=!0,f[3]=S,m[3]=v(p[3],_);else if(S>M&&(M=S,x[0]=p[3][0],x[1]=p[3][1]),w+=.01,w>.9){if(!(M>=0))break;T=!0,f[3]=M,p[3][0]=x[0],p[3][1]=x[1],m[3]=v(p[3],_)}}while(!T);const C=[0,1,2,3],P=y?0:1;let O;for(let t=P;t<4;t++)for(let t=P;t<3;t++){const e=m[t],r=m[t+1];b(e,r)>0&&(O=C[t],C[t]=C[t+1],C[t+1]=O,m[t]=r,m[t+1]=e)}let N=P,k=0,z=0;for(let t=P;t<4;t++){switch(t){case 0:z=2*f[C[t]];break;case 1:z=1.66666666*f[C[t]];break;case 2:z=1.33333333*f[C[t]];break;case 3:z=f[C[t]]}z>k&&(k=z,N=C[t])}return p[N]}function d(t,e){let r,s,i,n,o=0;for(e.reset();e.nextPath()&&e.nextPoint();)for(r=e.x,s=e.y;e.nextPoint();r=i,s=n)i=e.x,n=e.y,s>t[1]!=n>t[1]&&((i-r)*(t[1]-s)-(n-s)*(t[0]-r)>0?o++:o--);return 0!==o}function l(t,e,r){if(r&&d(t,e))return{coord:t,distance:0};let s=1/0,i=0,n=0,a=[0,0],h=[0,0];const u=[0,0];for(e.reset();e.nextPath()&&e.nextPoint();)if(!(e.pathSize<2))for(a[0]=e.x,a[1]=e.y;e.nextPoint();a=h){h=[e.x,e.y],(0,o.gR)(u,t,a,h);const r=v(t,u);r<s&&(s=r,i=u[0],n=u[1])}return{coord:[i,n],distance:Math.sqrt(s)}}function c(t,e,r,i){const n=[e,0];let o=1/0,h=1/0,u=!1,d=!1;const l=[[e,i[1]-1],[e,i[3]+1]],c=[0,0],p=[0,0],f=[0,0],m=[[0,0],[0,0]],y=(0,s.vt)();for(t.reset();t.nextPath()&&t.nextPoint();)if(!(t.pathSize<2))for(m[0][0]=t.x,m[0][1]=t.y;t.nextPoint();m[0][0]=m[1][0],m[0][1]=m[1][1]){if(m[1][0]=t.x,m[1][1]=t.y,null===_(y,m))continue;if(p[0]=l[0][0],p[1]=l[0][1],f[0]=l[1][0],f[1]=l[1][1],0===g(y,p,f))continue;if(!(0,a.Ql)(l[0],l[1],m[0],m[1],c))continue;const e=c[1];o>h?e<o&&(o=e,u=!0):e<h&&(h=e,d=!0)}return u&&d?n[1]=(o+h)/2:n[0]=n[1]=NaN,n}function _(t,e){if(e.length<2)return null;t||(t=(0,s.vt)());const[r,i]=e[0],[n,o]=e[1];return t[0]=Math.min(r,n),t[1]=Math.min(i,o),t[2]=Math.max(r,n),t[3]=Math.max(i,o),t}const p=1,f=4,m=3,y=12;function g(t,e,r){let s=x(e,t),i=x(r,t);const n=t[0],o=t[1],a=t[2],h=t[3];if(s&i)return 0;if(!(s|i))return 4;const u=(s?1:0)|(i?2:0);do{const u=r[0]-e[0],d=r[1]-e[1];if(u>d)s&m?(s&p?(e[1]+=d*(n-e[0])/u,e[0]=n):(e[1]+=d*(a-e[0])/u,e[0]=a),s=x(e,t)):i&m?(i&p?(r[1]+=d*(n-r[0])/u,r[0]=n):(r[1]+=d*(a-r[0])/u,r[0]=a),i=x(r,t)):s?(s&f?(e[0]+=u*(o-e[1])/d,e[1]=o):(e[0]+=u*(h-e[1])/d,e[1]=h),s=x(e,t)):(i&f?(r[0]+=u*(o-r[1])/d,r[1]=o):(r[0]+=u*(h-r[1])/d,r[1]=h),i=x(r,t));else if(s&y?(s&f?(e[0]+=u*(o-e[1])/d,e[1]=o):(e[0]+=u*(h-e[1])/d,e[1]=h),s=x(e,t)):i&y?(i&f?(r[0]+=u*(o-r[1])/d,r[1]=o):(r[0]+=u*(h-r[1])/d,r[1]=h),i=x(r,t)):s?(s&p?(e[1]+=d*(n-e[0])/u,e[0]=n):(e[1]+=d*(a-e[0])/u,e[0]=a),s=x(e,t)):(i&p?(r[1]+=d*(n-r[0])/u,r[0]=n):(r[1]+=d*(a-r[0])/u,r[0]=a),i=x(r,t)),s&i)return 0}while(s|i);return u}function x(t,e){return(t[0]<e[0]?1:0)|(t[0]>e[2]?1:0)<<1|(t[1]<e[1]?1:0)<<2|(t[1]>e[3]?1:0)<<3}function I(t,e,r){return t+(e-t)*r}function v(t,e){return(t[0]-e[0])*(t[0]-e[0])+(t[1]-e[1])*(t[1]-e[1])}function b(t,e){if(t<e)return-1;if(t>e)return 1;if(t===e)return 0;const r=isNaN(t),s=isNaN(e);return r<s?-1:r>s?1:0}},35258:(t,e,r)=>{r.d(e,{i:()=>n});var s=r(16930),i=r(95466);class n{static minimal(t,e,r=[]){return new n({geometryType:t,fieldsIndex:new i.A(r).toJSON(),featureIdInfo:{type:"object-id",fieldName:e},subtypes:null,subtypeField:null,types:null,globalIdField:null,spatialReference:null,outSpatialReference:null,timeInfo:null,timeReferenceUnknownClient:null,dateFieldsTimeZone:null,typeIdField:null})}static createFeature(t){return new n(t)}constructor(t){let e;this._options=t,this._fieldsIndex=i.A.fromJSON(t.fieldsIndex),t.spatialReference&&(t.spatialReference instanceof s.A?this._spatialReference=t.spatialReference:this._spatialReference=s.A.fromJSON(t.spatialReference)),t.outSpatialReference&&(t.outSpatialReference instanceof s.A?this._outSpatialReference=t.outSpatialReference:this._outSpatialReference=s.A.fromJSON(t.outSpatialReference)),"object-id"===t.featureIdInfo.type&&(e=t.featureIdInfo.fieldName),this._arcadeSchema={fields:this.fieldsIndex.fields,fieldsIndex:this.fieldsIndex,geometryType:this.geometryType,objectIdField:e,globalIdField:this._options.globalIdField,spatialReference:this._spatialReference,timeInfo:this._options.timeInfo,typeIdField:this._options.typeIdField??void 0,types:this._options.types??void 0,subtypeField:this._options.subtypeField,subtypes:this._options.subtypes??void 0,datesInUnknownTimezone:this._options.timeReferenceUnknownClient??void 0,dateFieldsTimeZone:this._options.dateFieldsTimeZone??void 0}}get fieldsIndex(){return this._fieldsIndex}get geometryType(){return"esriGeometryMultiPatch"===this._options.geometryType?"esriGeometryPolygon":this._options.geometryType}get serviceGeometryType(){return this._options.geometryType}get subtypeField(){return this._options.subtypeField}get timeInfo(){return this._options.timeInfo}get featureIdInfo(){return this._options.featureIdInfo}get globalIdField(){return this._options.globalIdField}get arcadeSchema(){return this._arcadeSchema}get spatialReference(){return this._spatialReference}get outSpatialReference(){return this._outSpatialReference}get timeReferenceUnknownClient(){return this._options.timeReferenceUnknownClient}weakCloneWithAdditionalFields(t){return new n({fieldsIndex:{fields:[...this._fieldsIndex.fields,...t],timeZoneByFieldName:null},geometryType:this.geometryType,globalIdField:this.globalIdField,featureIdInfo:this.featureIdInfo,spatialReference:this.spatialReference,outSpatialReference:this.outSpatialReference,subtypeField:this.subtypeField,subtypes:this._options.subtypes,timeInfo:this.timeInfo,timeReferenceUnknownClient:this.timeReferenceUnknownClient,dateFieldsTimeZone:this._options.dateFieldsTimeZone,typeIdField:this._options.typeIdField,types:this._options.types})}}},36708:(t,e,r)=>{r.d(e,{C_:()=>c,OH:()=>f,Vh:()=>m,on:()=>l,pc:()=>y,wB:()=>h,z7:()=>u});var s=r(37955),i=r(36563),n=r(97768),o=r(74887),a=r(14012);function h(t,e,r={}){return d(t,e,r,_)}function u(t,e,r={}){return d(t,e,r,p)}function d(t,e,r={},s){let i=null;const o=r.once?(t,r)=>{s(t)&&((0,n.xt)(i),e(t,r))}:(t,r)=>{s(t)&&e(t,r)};if(i=(0,a.Cn)(t,o,r.sync,r.equals),r.initial){const e=t();o(e,e)}return i}function l(t,e,r,o={}){let a=null,u=null,d=null;function l(){a&&u&&(u.remove(),o.onListenerRemove?.(a),a=null,u=null)}function c(t){o.once&&o.once&&(0,n.xt)(d),r(t)}const _=h(t,(t,r)=>{l(),(0,s.wb)(t)&&(a=t,u=(0,s.on)(t,e,c),o.onListenerAdd?.(t))},{sync:o.sync,initial:!0});return d=(0,i.hA)(()=>{_.remove(),l()}),d}function c(t,e){return function(t,e,r){if((0,o.G4)(r))return Promise.reject((0,o.NK)());const s=t();if(e?.(s))return Promise.resolve(s);let a=null;function h(){a=(0,n.xt)(a)}return new Promise((s,n)=>{a=(0,i.vE)([(0,o.u7)(r,()=>{h(),n((0,o.NK)())}),d(t,t=>{h(),s(t)},{sync:!1,once:!0},e??_)])})}(t,p,e)}function _(t){return!0}function p(t){return!!t}r(80559);const f={sync:!0},m={initial:!0},y={sync:!0,initial:!0}},36745:(t,e,r)=>{r.d(e,{z:()=>a});var s=r(4718),i=r(51118),n=r(65864),o=r(92722);class a{static fromOptimized(t,e,r=1){return(new h).initialize(t,e,r)}static fromJSON(t){const[e,r]=d(t),s=(0,n.Pv)(t),i=(0,n.W0)(t);return(new l).initialize(e,r,s,i,1)}static fromOptimizedCIM(t,e,r=1){return(new c).initialize(t,e,r)}static fromJSONCIM(t,e=1){const[r,s]=d(t),i=(0,n.Pv)(t),o=(0,n.W0)(t);return(new _).initialize(r,s,i,o,e)}static fromFeatureSetReader(t){const e=t.readGeometryForDisplay(),r=t.geometryType;return e&&r?this.fromOptimized(e,r):null}static fromFeatureSetReaderCIM(t){const e=t.readGeometryForDisplay(),r=t.geometryType;return e&&r?this.fromOptimizedCIM(e,r):null}static createEmptyOptimized(t,e=!1,r=!1,s=1){return(new c).initialize(new o.A([],[],e,r),t,s)}static createEmptyJSON(t,e=!1,r=!1){return(new l).initialize([],t,e,r,1)}static createEmptyOptimizedCIM(t,e=!1,r=!1,s=1){return(new c).initialize(new o.A([],[],e,r),t,s)}static createEmptyJSONCIM(t,e=!1,r=!1,s=1){return(new _).initialize([],t,e,r,s)}asJSON(){const t=(0,i.x)(this),{hasZ:e,hasM:r}=this;return"esriGeometryEnvelope"===this.geometryType?{xmin:t[0][0][0],ymin:t[0][0][1],xmax:t[0][2][0],ymax:t[0][2][1]}:"esriGeometryMultipoint"===this.geometryType?{points:t.flat(),hasZ:e,hasM:r}:"esriGeometryPoint"===this.geometryType?{x:t[0][0][0],y:t[0][0][1],z:e?t[0][0][2]:void 0,m:r?t[0][0][e?3:2]:void 0}:"esriGeometryPolygon"===this.geometryType?{rings:t,hasZ:e,hasM:r}:{paths:t,hasZ:e,hasM:r}}getCurrentRingArea(){if(this.pathSize<3)return 0;let t,e,r=0;if(this.seekPathStart(),!this.nextPoint())return 0;t=this.x,e=this.y;const s=t,i=e;for(;this.nextPoint();)r+=(t-this.x)*(e+this.y),t=this.x,e=this.y;return r+=(t-s)*(e+i),-.5*r}invertY(){this.yFactor*=-1}}class h extends a{constructor(){super(...arguments),this._end=-1}get hasZ(){return this._geometry?.hasZ}get hasM(){return this._geometry?.hasM}initialize(t,e,r){return this.geometryType=e,this._stride=t.stride,this._geometry=t,this._pathIndex=-1,this._pathOffset=0,this._pointOffset=-this._stride,this._end=-1,this.yFactor=r,this}reset(){this.initialize(this._geometry,this.geometryType,this.yFactor)}seekPath(t){if(t>=0&&t<this.totalSize){if(this._pathIndex<t)for(;this._pathIndex<t&&this.nextPath(););else if(this._pathIndex>t)for(;this._pathIndex>t&&this.prevPath(););return!0}return!1}seekPathStart(){this._pointOffset=this._pathOffset-this._stride}seekPathEnd(){this._pointOffset=this._end}seekInPath(t){const e=this._pathOffset+t*this._stride;return e>=0&&e<this._end&&(this._pointOffset=e,!0)}nextPoint(){return(this._pointOffset+=this._stride)<this._end}prevPoint(){return(this._pointOffset-=this._stride)>=this._pathOffset}nextPath(){return!(this.pathIndex>=this.totalSize-1||(this._pathIndex>=0&&(this._pathOffset+=this._stride*this.pathSize),this._pathIndex++,this._pointOffset=this._pathOffset-this._stride,this._end=this._pointOffset+this._stride+this._stride*this.pathSize,0))}prevPath(){return!(this.pathIndex<=0||(this._pathIndex--,this._end=this._pathOffset,this._pathOffset-=this._stride*this.pathSize,this._pointOffset=this._pathOffset-this._stride,0))}getCurrentPath(){const t=this._end,e=this._geometry.coords,r=this._pathOffset;return(new h).initialize(new o.A([this.pathSize],e.slice(r,t),this.hasZ,this.hasM),this.geometryType,this.yFactor)}pathLength(){const t=this._end,e=this._stride,r=this._geometry.coords;let s=0;for(let i=this._pathOffset+e;i<t;i+=e){const t=r[i-e],n=r[i-e+1],o=r[i]-t,a=r[i+1]-n;s+=Math.sqrt(o*o+a*a)}return s}startPath(){this._geometry.lengths.push(0)}pushPath(t){this.startPath(),this.pushPoints(t)}pushPoint(t){for(let e=0;e<this._stride;++e)this._geometry.coords.push(t[e]);this._geometry.lengths[this.totalSize-1]++}pushXY(t,e){this._geometry.coords.push(t,e),this._geometry.lengths[this.totalSize-1]++}pushPoints(t){for(const e of t)for(let t=0;t<this._stride;++t)this._geometry.coords.push(e[t]);this._geometry.lengths[this.totalSize-1]+=t.length}pushCursor(t){const e=t.asOptimized();this._geometry.coords.push(...e.coords),this._geometry.lengths.push(...e.lengths)}asOptimized(){const t=this._geometry.clone();if(1!==this.yFactor)for(let e=1;e<t.coords.length;e+=this._stride)t.coords[e]*=this.yFactor;return"esriGeometryPoint"===this.geometryType&&(t.lengths.length=0),t}isClosed(){const t=this._geometry.coords,e=this._pathOffset,r=this._end-this._stride;for(let s=0;s<this._stride;s++)if(t[e+s]!==t[r+s])return!1;return!0}clone(){return(new h).initialize(this._geometry.clone(),this.geometryType,this.yFactor)}get totalPoints(){return this._geometry.isPoint?1:this._geometry.lengths.reduce((t,e)=>t+e)}get pathSize(){const{lengths:t}=this._geometry;return this._geometry.isPoint?1:this._pathIndex<0||this._pathIndex>t.length-1?0:t[this._pathIndex]}get totalSize(){return this._geometry.isPoint?1:this._geometry.lengths.length}get x(){return this._geometry.coords[this._pointOffset]}set x(t){this._geometry.coords[this._pointOffset]=t}get y(){return this.yFactor*this._geometry.coords[this._pointOffset+1]}set y(t){this._geometry.coords[this._pointOffset+1]=this.yFactor*t}get z(){return this._geometry.coords[this._pointOffset+2]}set z(t){this._geometry.coords[this._pointOffset+2]=t}get m(){const t=this.hasZ?3:2;return this._geometry.coords[this._pointOffset+t]}set m(t){this._geometry.coords[this._pointOffset+3]=t}get pathIndex(){return this._pathIndex}get _coordIndex(){return this._pointOffset/this._stride}}function u(t){const e=[t.x,t.y];return t.z&&e.push(t.z),t.m&&e.push(t.m),e}function d(t){return(0,n.Bi)(t)?[t.rings,"esriGeometryPolygon"]:(0,n.Rg)(t)?[t.paths,"esriGeometryPolyline"]:(0,n.U9)(t)?[[t.points],"esriGeometryMultipoint"]:(0,n.ZC)(t)?[[[[t.xmin,t.ymin],[t.xmin,t.ymax],[t.xmax,t.ymax],[t.xmax,t.ymin],[t.xmin,t.ymin]]],"esriGeometryEnvelope"]:(0,n.fT)(t)?[[[u(t)]],"esriGeometryPoint"]:[[],"esriGeometryPolyline"]}class l extends a{initialize(t,e,r,s,i){return this._paths=t,this.geometryType=e,this.hasZ=r,this.hasM=s,this._pathIndex=this._pointIndex=-1,this.yFactor=i,this._mIndex=this.hasZ?3:2,this}reset(){this._pathIndex=this._pointIndex=-1}seekPath(t){return this._pathIndex=t,this._pointIndex=-1,t>=0&&t<this.totalSize&&(this._currentPath=this._paths[t],!0)}seekPathStart(){this._pointIndex=-1}seekPathEnd(){this._pointIndex=this._currentPath.length}seekInPath(t){return t>=0&&t<this._currentPath.length&&(this._pointIndex=t,this._currentPoint=this._currentPath[this._pointIndex],!0)}nextPoint(){return this._currentPoint=this._currentPath[++this._pointIndex],this._pointIndex<this._currentPath.length}prevPoint(){return this._currentPoint=this._currentPath[--this._pointIndex],this._pointIndex>=0}nextPath(){return this._pointIndex=-1,this._currentPath=this._paths[++this._pathIndex],this._pathIndex<this.totalSize}prevPath(){return this.pathIndex>0&&(this._pointIndex=-1,this._pathIndex--,this._currentPath=this._paths[this._pathIndex],!0)}pathLength(){const t=this._currentPath.length,e=this._currentPath;let r=0;for(let s=1;s<t;s++){const t=e[s-1],i=e[s],n=t[0],o=t[1],a=i[0]-n,h=i[1]-o;r+=Math.sqrt(a*a+h*h)}return r}startPath(){this._paths.push([])}getCurrentPath(){return(new l).initialize([this._currentPath],this.geometryType,this.hasZ,this.hasM,this.yFactor)}pushPath(t){this._paths.push(t)}pushPoint(t){this._paths[this.totalSize-1].push(t)}pushXY(t,e){this._paths[this.totalSize-1].push([t,e])}pushPoints(t){this._paths[this.totalSize-1].push(...t)}pushCursor(t){const e=(0,i.x)(t);for(const t of e)this.pushPath(t)}asOptimized(){const{hasZ:t,hasM:e}=this,r=new o.A([],[],t,e),{coords:s,lengths:i}=r;if("esriGeometryPoint"===this.geometryType)s.push(...this._paths[0][0]),i.length=0;else for(const r of this._paths){for(const i of r)s.push(i[0]),s.push(i[1]*this.yFactor),t&&s.push(i[2]),e&&s.push(i[this._mIndex]);i.push(r.length)}return r}isClosed(){const t=this._currentPath[0],e=this._currentPath[this._currentPath.length-1];for(let r=0;r<t.length;r++)if(t[r]!==e[r])return!1;return!0}clone(){return(new l).initialize((0,s.o8)(this._paths),this.geometryType,this.hasZ,this.hasM,this.yFactor)}get totalPoints(){return this._paths.map(t=>t.length).reduce((t,e)=>t+e)}get pathSize(){return this._pathIndex<0||this._pathIndex>this.totalSize-1?-1:this._paths[this._pathIndex].length}get totalSize(){return this._paths.length}get x(){return this._currentPoint[0]}set x(t){this._currentPoint[0]=t}get y(){return this.yFactor*this._currentPoint[1]}set y(t){this._currentPoint[1]=this.yFactor*t}get z(){return this._currentPoint[2]}set z(t){this._currentPoint[2]=t}get m(){return this._currentPoint[this._mIndex]}set m(t){this._currentPoint[this._mIndex]=t}get pathIndex(){return this._pathIndex}}class c extends h{initialize(t,e,r){return super.initialize(t,e,r),this._controlPoints||(this._controlPoints=this._controlPoints=new Array(this.totalSize).fill(void 0).map(t=>new Set)),this}startPath(){super.startPath(),this._controlPoints.push(new Set)}clone(){const t=(new c).initialize(this._geometry.clone(),this.geometryType,this.yFactor);return t._controlPoints=this._controlPoints,t}setControlPoint(){this._controlPoints[this.pathIndex].add(this._coordIndex)}getControlPoint(){return this._controlPoints[this.pathIndex].has(this._coordIndex)}setControlPointAt(t){this._controlPoints[this.pathIndex].add(t)}getControlPointAt(t){return this._controlPoints[this.pathIndex].has(t)}}class _ extends l{initialize(t,e,r,s,i){return super.initialize(t,e,r,s,i)}clone(){return(new _).initialize((0,s.o8)(this._paths),this.geometryType,this.hasZ,this.hasM,this.yFactor)}setControlPoint(){this._paths[this.pathIndex][this._pointIndex][4]=1}getControlPoint(){return 1===this._paths[this.pathIndex][this._pointIndex][4]}setControlPointAt(t){this._paths[this.pathIndex][t][4]=1}getControlPointAt(t){return 1===this._paths[this.pathIndex][t][4]}}},38976:(t,e,r)=>{r.d(e,{n:()=>n});var s=r(76213),i=r(9012);class n{constructor(t){this._options=t}insert(t,e){const r=t.getCursor(),{arcadeContextInfo:s,scale:n}=this._options,o=(0,i.N)(n,s);for(;r.next();)this._insertFeature(r,o,this._options.sqlOptions,e)}_insertFeature(t,e,r,i){const{featureFilter:n}=this._options;if(null!==n&&!n.check(t,r))return;let o=0,a=0;if("esriGeometryPoint"===t.geometryType)o=t.readXWorldSpace(),a=t.readYWorldSpace();else{if(i){const e=t.readCentroidForDisplay();if(null==e)return;const[r,i]=e.coords;if(r<0||r>s.CQ||i<0||i>s.CQ)return}const e=t.readCentroidWorldSpace();if(null==e)return;o=e.coords[0],a=e.coords[1]}this._insert(t,o,a,e)}}},39357:(t,e,r)=>{r.d(e,{H:()=>a});var s,i=r(31635),n=r(25482),o=r(91429);let a=s=class extends n.o{constructor(t){super(t),this.name=null,this.code=null}clone(){return new s({name:this.name,code:this.code})}};(0,i.Cg)([(0,o.MZ)({type:String,json:{write:{isRequired:!0}}})],a.prototype,"name",void 0),(0,i.Cg)([(0,o.MZ)({type:[String,Number],json:{write:{isRequired:!0}}})],a.prototype,"code",void 0),a=s=(0,i.Cg)([(0,o.$K)("esri.layers.support.CodedValue")],a)},41628:(t,e,r)=>{r.d(e,{A:()=>h});var s,i=r(31635),n=r(91429),o=r(76357),a=r(93223);let h=class extends o.A{static{s=this}constructor(t){super(t),this.maxValue=null,this.minValue=null,this.type="range"}clone(){return new s({maxValue:this.maxValue,minValue:this.minValue,name:this.name})}};(0,i.Cg)([(0,n.MZ)({json:{type:[Number],read:{source:"range",reader:(t,e)=>e.range?.[1]},write:{enabled:!1,overridePolicy(){return{enabled:null!=this.maxValue&&null==this.minValue}},target:"range",writer(t,e,r){e[r]=[this.minValue||0,t]},isRequired:!0}}})],h.prototype,"maxValue",void 0),(0,i.Cg)([(0,n.MZ)({json:{type:[Number],read:{source:"range",reader:(t,e)=>e.range?.[0]},write:{target:"range",writer(t,e,r){e[r]=[t,this.maxValue||0]},isRequired:!0}}})],h.prototype,"minValue",void 0),(0,i.Cg)([(0,a.e)({range:"range"})],h.prototype,"type",void 0),h=s=(0,i.Cg)([(0,n.$K)("esri.layers.support.RangeDomain")],h)},44320:(t,e,r)=>{r.d(e,{I:()=>h});var s=r(65529),i=r(44208),n=r(70328),o=r(30661),a=r(5162);class h{constructor(){this._chunks=new Map,this._chunksToRemove=[],this.events=new s.bk,this.featureAdapter=new o.Z}destroy(){this.clear()}clear(){for(const t of this._chunks.values())this._chunksToRemove.push(t);this._chunks.clear(),this._overrides?.clearWeakOverrides()}get usedMemory(){let t=0;for(const e of this._chunks.values())t+=e.usedMemory;return t}async update(t){if(this._overrides){const e=await a.HJ.create(t);this._overrides.update(e)}this._schema=t}*chunks(){this._overrides&&(yield this._overrides.asChunk()),yield*this._chunks.values()}insert(t){(0,i.A)("esri-2d-update-debug")&&console.debug(`Chunk[${t.chunkId}] SourceChunkStore.insert`),this._overrides?.onChunkInsert(t),this._chunks.set(t.chunkId,t),this.events.emit("changed")}remove(t){(0,i.A)("esri-2d-update-debug")&&console.debug(`Chunk[${t.chunkId}] SourceChunkStore.remove`),this._chunks.delete(t.chunkId),this._chunksToRemove.push(t)}removeById(t){(0,i.A)("esri-2d-update-debug")&&console.debug(`Chunk[${t}] SourceChunkStore.remove`);const e=this._chunks.get(t);this._chunks.delete(t),e&&this._chunksToRemove.push(e)}cleanup(){const t=this._chunksToRemove;return this._chunksToRemove=[],this._overrides?.cleanup(this._chunks.values()),t}async applyOverride(t){if(null==this._overrides){const t=await a.HJ.create(this._schema);this._overrides=new a.Im(t);for(const t of this._chunks.values())this._overrides.onChunkInsert(t)}this._overrides.apply(t,this),this.events.emit("changed");for(const t of this._chunks.values())t.invalidate()}takeOverrideUpdate(){return this._overrides?.takeOverrideUpdate()}refresh(){this.events.emit("refresh")}forEach(t){const e=new Set;for(const r of this.chunks()){const s=r.reader.getCursor();for(;s.next();){const r=s.getObjectId();e.has(r)||(t(s.copy()),e.add(r))}}}forEachUnsafe(t){const e=new Set;for(const r of this.chunks()){const s=r.reader.getCursor();for(;s.next();){const r=s.getObjectId();e.has(r)||(t(s),e.add(r))}}}mapObjectIdsFromGlobalIds(t,e){const r=new Map,s=new Set(t);return this._overrides?.putWeakObjectIdsFromGlobalIds(r,s,e),this._forEachUnsafeIgnoreOverrides(t=>{const i=t.readAttribute(e);if(i&&s.has(i)&&!r.has(i)){const e=t.getObjectId();r.set(i,e)}}),r}forEachInBounds(t,e){const r=new Set;for(const s of this.chunks()){const i=s.queryFeaturesInBounds(t);for(;i.next();){const t=i.getObjectId();r.has(t)||(e(i.copy()),r.add(t))}}}forEachBounds(t,e){const r=(0,n.vt)();for(const s of t)s.getBounds(r)&&e(r)}_forEachUnsafeIgnoreOverrides(t){const e=new Set;for(const r of this._chunks.values()){const s=r.reader.withoutOverrides().getCursor();for(;s.next();){const r=s.getObjectId();e.has(r)||(t(s),e.add(r))}}}}},48163:(t,e,r)=>{function s(){return[0,0]}function i(t){return[t[0],t[1]]}function n(t,e){return[t,e]}function o(){return n(1,1)}function a(){return n(1,0)}function h(){return n(0,1)}r.d(e,{Un:()=>u,fA:()=>n,o8:()=>i,vt:()=>s});const u=o(),d=a(),l=h();Object.freeze(Object.defineProperty({__proto__:null,ONES:u,UNIT_X:d,UNIT_Y:l,ZEROS:[0,0],clone:i,create:s,freeze:function(t,e){return[t,e]},fromArray:function(t,e=[0,0]){const r=Math.min(2,t.length);for(let s=0;s<r;++s)e[s]=t[s];return e},fromValues:n,ones:o,unitX:a,unitY:h,zeros:function(){return[0,0]}},Symbol.toStringTag,{value:"Module"}))},50115:(t,e,r)=>{r.d(e,{OP:()=>o,V4:()=>i,rZ:()=>n}),r(44208);var s=r(53966);function i(t,e,r){if(null==t)return null;const i=e.readArcadeFeature();e.contextTimeZone=r.$view?.timeZone;try{return t.evaluate(i,r)}catch(t){return s.A.getLogger("esri.views.2d.support.arcadeOnDemand").warn("Feature arcade evaluation failed:",t),null}}function n(t){return null==t||t===1/0||t===-1/0||"number"==typeof t&&isNaN(t)}function o(t,e,r,s){if(null==t)return null!=s?s:null;const i=e.readArcadeFeature();e.contextTimeZone=r.$view?.timeZone;const o=t.evaluate(i,r);return n(o)?null!=s?s:null:o}},52350:(t,e,r)=>{r.d(e,{e:()=>a});var s=r(69397),i=r(62577),n=r(90708),o=r(99996);class a extends o.Y{static from(t,e){if(t instanceof this){const r=new Set(e),s=t._indices.filter(t=>r.has(t));return new a(t._reader,s)}return new a(t.copy(),e)}constructor(t,e){super(t.metadata),this._currentIndex=-1,this._displayTransform=null,this._reader=t,this._indices=e}setTransformForDisplay(t){const e=this._reader.getInTransform();if(null==e)return void(this._displayTransform=(0,i.Q1)(t));const r=(0,i.Q1)(e),s=(0,i.Q1)(t),[n,o]=r.scale,[a,h]=r.translate,[u,d]=s.scale,[l,c]=s.translate,_=n/u,p=o/d,f=(a-l)/u,m=(h-c)/d;this._displayTransform={originPosition:"lowerLeft",scale:[1/_,1/p,1,1],translate:[-f/_,-m/p,0,0]}}getInTransform(){return this._reader.getInTransform()}get fields(){return this._reader.fields}get hasNext(){return this._currentIndex+1<this._indices.length}getSize(){return this._indices.length}getCursor(){return this.copy()}copy(){const t=new a(this._reader.copy(),this._indices);return t._currentIndex=this._currentIndex,t._displayTransform=this._displayTransform,t._processorAttributes=this._processorAttributes,t}get contextTimeZone(){return this._reader.contextTimeZone}set contextTimeZone(t){this._reader.contextTimeZone=t}get usedMemory(){return s.qK+this._reader.usedMemory}setProcessorAttributes(t){this._processorAttributes=Object.assign(this._processorAttributes??{},t)}_nextIndex(){return++this._currentIndex<this._indices.length&&(this._reader.setIndex(this._indices[this._currentIndex]),!0)}next(){for(;this._nextIndex()&&!this._reader._getExists(););return this._currentIndex<this._indices.length}readXForDisplay(){return this._displayTransform?(0,i.IE)(this._displayTransform,this._reader.readXForDisplay()):this._reader.readXForDisplay()}readYForDisplay(){return this._displayTransform?(0,i.B2)(this._displayTransform,this._reader.readYForDisplay()):this._reader.readYForDisplay()}readGeometryForDisplay(){return this._displayTransform?this._reader.readGeometryForDisplayTransformed(this._displayTransform):this._reader.readGeometryForDisplay()}readCentroidForDisplay(){const t=this._reader.readCentroidForDisplay()?.clone();if(t){const[e,r]=t.coords;this._displayTransform&&(t.coords[0]=(0,i.IE)(this._displayTransform,e),t.coords[1]=(0,i.B2)(this._displayTransform,r))}return t}get geometryType(){return this._reader.geometryType}get hasFeatures(){return this._reader.hasFeatures}get exceededTransferLimit(){return this._reader.exceededTransferLimit}get hasZ(){return this._reader.hasZ}get hasM(){return this._reader.hasM}readAttribute(t,e=!1){const r=this._reader.readAttribute(t,e);return null==r&&this._processorAttributes?this._processorAttributes[t]:r}readAttributes(){return{...this._processorAttributes,...this._reader.readAttributes()}}joinAttributes(t){return this._reader.joinAttributes(t)}getBounds(t){return this._reader.getBounds(t)}getAttributeHash(){return this._reader.getAttributeHash()}getObjectId(){return this._reader.getObjectId()}getDisplayId(){return this._reader.getDisplayId()}setDisplayId(t){return this._reader.setDisplayId(t)}setIndex(t){return this._reader.setIndex(t)}getIndex(){return this._reader.getIndex()}readXWorldSpace(){return this._reader.readXWorldSpace()}readYWorldSpace(){return this._reader.readYWorldSpace()}_readX(){return this._reader.readXForDisplay()}_readY(){return this._reader.readYForDisplay()}_readServerCentroid(){return this._reader._readServerCentroid()}readLegacyFeatureForDisplay(){const t=this.readCentroidForDisplay();return{attributes:this.readAttributes(),geometry:this.readLegacyGeometryForDisplay(),centroid:(t&&{x:t.coords[0],y:t.coords[1]})??null}}readLegacyGeometryForDisplay(){const t=this.readGeometryForDisplay();return(0,n.zv)(t,this.geometryType,!1,!1)}readGeometryArea(){return this._displayTransform?this._reader.readGeometryForDisplayTransformed(this._displayTransform)?.area()??0:this._reader.readGeometryArea()}readGeometryWorldSpace(){return this._reader.readGeometryWorldSpace()}_readGeometry(){return this._reader._readGeometry()}_readAttribute(t,e){throw new Error("Error: Should not be called. Underlying _reader should be used instead")}_readAttributes(){throw new Error("Error: Should not be called. Underlying _reader should be used instead")}readArcadeFeature(){return this._reader.readArcadeFeature()}geometry(){return this._reader.geometry()}field(t){return this._reader.field(t)}hasField(t){return this._reader.hasField(t)}setField(t,e){return this._reader.setField(t,e)}keys(){return this._reader.keys()}castToText(t=!1){return this._reader.castToText(t)}}},53177:(t,e,r)=>{r.d(e,{A:()=>d});var s,i=r(31635),n=r(4718),o=r(91429),a=r(39357),h=r(76357),u=r(93223);let d=class extends h.A{static{s=this}constructor(t){super(t),this.codedValues=null,this.type="coded-value"}getName(t){let e=null;if(this.codedValues){const r=String(t);this.codedValues.some(t=>(String(t.code)===r&&(e=t.name),!!e))}return e}clone(){return new s({codedValues:(0,n.o8)(this.codedValues),name:this.name})}};(0,i.Cg)([(0,o.MZ)({type:[a.H],json:{write:{isRequired:!0}}})],d.prototype,"codedValues",void 0),(0,i.Cg)([(0,u.e)({codedValue:"coded-value"})],d.prototype,"type",void 0),d=s=(0,i.Cg)([(0,o.$K)("esri.layers.support.CodedValueDomain")],d)},63664:(t,e,r)=>{r.d(e,{B:()=>s});class s{constructor(t){this._statistics=t}get statistics(){return this._statistics}}},64714:(t,e,r)=>{r.d(e,{F0:()=>a,Vx:()=>d,e2:()=>c,f:()=>_});var s=r(44208),i=r(4718),n=r(99352),o=r(93470);function a(t){return{renderer:{type:"simple",symbol:"esriGeometryPoint"===t||"esriGeometryMultipoint"===t?o.Cb:"esriGeometryPolyline"===t?o.yM:o.WR}}}const h=/^[_$a-zA-Z][_$a-zA-Z0-9]*$/;let u=1;function d(t,e){if((0,s.A)("esri-csp-restrictions"))return()=>({[e]:null,...t});try{let r=`this${l(e)} = null;`;for(const e in t)r+=`this${l(e)} = ${JSON.stringify(t[e])};`;const s=new Function(`\n return class AttributesClass$${u++} {\n constructor() {\n ${r};\n }\n }\n `)();return()=>new s}catch(r){return()=>({[e]:null,...t})}}function l(t){return h.test(t)?`.${t}`:`[${JSON.stringify(t)}]`}function c(t={}){return[{name:"New Feature",description:"",prototype:{attributes:(0,i.o8)(t)}}]}function _(t,e){return{analytics:{supportsCacheHint:!1},attachment:null,data:{isVersioned:!1,isBranchVersioned:!1,supportsAttachment:!1,supportsM:!1,supportsZ:t},metadata:{supportsAdvancedFieldProperties:!1},operations:{supportsCalculate:!1,supportsTruncate:!1,supportsValidateSql:!1,supportsAdd:e,supportsDelete:e,supportsEditing:e,supportsChangeTracking:!1,supportsQuery:!0,supportsQueryBins:!0,supportsQueryPivot:!1,supportsQueryAnalytics:!1,supportsQueryAttachments:!1,supportsQueryTopFeatures:!1,supportsResizeAttachments:!1,supportsSync:!1,supportsUpdate:e,supportsExceedsLimitStatistics:!0,supportsAsyncConvert3D:!1},query:n.F,queryRelated:{supportsCount:!0,supportsOrderBy:!0,supportsPagination:!0,supportsCacheHint:!1},queryTopFeatures:{supportsCacheHint:!1},queryAttributeBins:n.P,editing:{supportsGeometryUpdate:e,supportsGlobalId:!1,supportsReturnServiceEditsInSourceSpatialReference:!1,supportsRollbackOnFailure:!1,supportsUpdateWithoutM:!1,supportsUploadWithItemId:!1,supportsDeleteByAnonymous:!1,supportsDeleteByOthers:!1,supportsUpdateByAnonymous:!1,supportsUpdateByOthers:!1,supportsAsyncApplyEdits:!1,zDefault:void 0}}}},68974:(t,e,r)=>{r.d(e,{H:()=>u,p:()=>h});var s=r(69397),i=r(86211),n=r(38976),o=r(75538);const a=96;function h(t,e){return(0,i.GA)(t)*i.dy*a/e}class u extends n.n{constructor(t){super(t),this._cells=new Map,this._pixelsPerMapUnit=h(t.spatialReference,t.scale)}get usedMemory(){const t=this._cells.values().next().value;return t?(s.RS+t.usedMemory)*this._cells.size:0}put(t){for(const e of this._cells.values()){const r=t.get(e.id);r?r.merge(e):t.set(e.id,e.clone())}}putBounded(t,e,r){const s=[e.xmin,e.ymin,e.xmax,e.ymax],[i,n,o,a]=s,h=Math.floor(i*this._pixelsPerMapUnit/this._options.cellSize),u=Math.floor(n*this._pixelsPerMapUnit/this._options.cellSize),d=Math.ceil(o*this._pixelsPerMapUnit/this._options.cellSize),l=Math.ceil(a*this._pixelsPerMapUnit/this._options.cellSize);for(let e=u;e<=l;e++)for(let r=h;r<=d;r++){const s=`${r}.${e}`,i=this._cells.get(s);if(!i)continue;const n=t.get(i.id);n?i&&!t.has(i.id)&&n.merge(i):t.set(i.id,i.clone())}}_insert(t,e,r,s){const i=e*this._pixelsPerMapUnit,n=r*this._pixelsPerMapUnit,o=Math.floor(i/this._options.cellSize),a=Math.floor(n/this._options.cellSize);this._getCellOrCreate(o,a).insert(t,s,e,r)}_getCellOrCreate(t,e){const r=o.L.createId(t,e);let s=this._cells.get(r);if(!s){const i=1*this._options.cellSize/this._pixelsPerMapUnit;s=o.L.create(t,e,this._options.fields,i),this._cells.set(r,s)}return s}}},70300:(t,e,r)=>{r.d(e,{K:()=>j});var s=r(69397),i=r(11006);function n(t,e){if(!(this instanceof n))return new n(t,e);this._maxEntries=Math.max(4,t||9),this._minEntries=Math.max(2,Math.ceil(.4*this._maxEntries)),e&&("function"==typeof e?this.toBBox=e:this._initFormat(e)),this.clear()}function o(t,e,r){if(!r)return e.indexOf(t);for(var s=0;s<e.length;s++)if(r(t,e[s]))return s;return-1}function a(t,e){h(t,0,t.children.length,e,t)}function h(t,e,r,s,i){i||(i=g(null)),i.minX=1/0,i.minY=1/0,i.maxX=-1/0,i.maxY=-1/0;for(var n,o=e;o<r;o++)n=t.children[o],u(i,t.leaf?s(n):n);return i}function u(t,e){return t.minX=Math.min(t.minX,e.minX),t.minY=Math.min(t.minY,e.minY),t.maxX=Math.max(t.maxX,e.maxX),t.maxY=Math.max(t.maxY,e.maxY),t}function d(t,e){return t.minX-e.minX}function l(t,e){return t.minY-e.minY}function c(t){return(t.maxX-t.minX)*(t.maxY-t.minY)}function _(t){return t.maxX-t.minX+(t.maxY-t.minY)}function p(t,e){return(Math.max(e.maxX,t.maxX)-Math.min(e.minX,t.minX))*(Math.max(e.maxY,t.maxY)-Math.min(e.minY,t.minY))}function f(t,e){var r=Math.max(t.minX,e.minX),s=Math.max(t.minY,e.minY),i=Math.min(t.maxX,e.maxX),n=Math.min(t.maxY,e.maxY);return Math.max(0,i-r)*Math.max(0,n-s)}function m(t,e){return t.minX<=e.minX&&t.minY<=e.minY&&e.maxX<=t.maxX&&e.maxY<=t.maxY}function y(t,e){return e.minX<=t.maxX&&e.minY<=t.maxY&&e.maxX>=t.minX&&e.maxY>=t.minY}function g(t){return{children:t,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function x(t,e,r,s,n){for(var o,a=[e,r];a.length;)(r=a.pop())-(e=a.pop())<=s||(o=e+Math.ceil((r-e)/s/2)*s,(0,i.q)(t,o,e,r,n),a.push(e,o,o,r))}n.prototype={all:function(){return this._all(this.data,[])},search:function(t){var e=this.data,r=[],s=this.toBBox;if(!y(t,e))return r;for(var i,n,o,a,h=[];e;){for(i=0,n=e.children.length;i<n;i++)o=e.children[i],y(t,a=e.leaf?s(o):o)&&(e.leaf?r.push(o):m(t,a)?this._all(o,r):h.push(o));e=h.pop()}return r},collides:function(t){var e=this.data,r=this.toBBox;if(!y(t,e))return!1;for(var s,i,n,o,a=[];e;){for(s=0,i=e.children.length;s<i;s++)if(n=e.children[s],y(t,o=e.leaf?r(n):n)){if(e.leaf||m(t,o))return!0;a.push(n)}e=a.pop()}return!1},load:function(t){if(!t||!t.length)return this;if(t.length<this._minEntries){for(var e=0,r=t.length;e<r;e++)this.insert(t[e]);return this}var s=this._build(t.slice(),0,t.length-1,0);if(this.data.children.length)if(this.data.height===s.height)this._splitRoot(this.data,s);else{if(this.data.height<s.height){var i=this.data;this.data=s,s=i}this._insert(s,this.data.height-s.height-1,!0)}else this.data=s;return this},insert:function(t){return null!=t&&this._insert(t,this.data.height-1),this},clear:function(){return this.data=g([]),this},remove:function(t,e){if(null==t)return this;for(var r,s,i,n,a=this.data,h=this.toBBox(t),u=[],d=[];a||u.length;){if(a||(a=u.pop(),s=u[u.length-1],r=d.pop(),n=!0),a.leaf&&-1!==(i=o(t,a.children,e)))return a.children.splice(i,1),u.push(a),this._condense(u),this;n||a.leaf||!m(a,h)?s?(r++,a=s.children[r],n=!1):a=null:(u.push(a),d.push(r),r=0,s=a,a=a.children[0])}return this},toBBox:function(t){return t},compareMinX:d,compareMinY:l,toJSON:function(){return this.data},fromJSON:function(t){return this.data=t,this},_all:function(t,e){for(var r=[];t;)t.leaf?e.push.apply(e,t.children):r.push.apply(r,t.children),t=r.pop();return e},_build:function(t,e,r,s){var i,n=r-e+1,o=this._maxEntries;if(n<=o)return a(i=g(t.slice(e,r+1)),this.toBBox),i;s||(s=Math.ceil(Math.log(n)/Math.log(o)),o=Math.ceil(n/Math.pow(o,s-1))),(i=g([])).leaf=!1,i.height=s;var h,u,d,l,c=Math.ceil(n/o),_=c*Math.ceil(Math.sqrt(o));for(x(t,e,r,_,this.compareMinX),h=e;h<=r;h+=_)for(x(t,h,d=Math.min(h+_-1,r),c,this.compareMinY),u=h;u<=d;u+=c)l=Math.min(u+c-1,d),i.children.push(this._build(t,u,l,s-1));return a(i,this.toBBox),i},_chooseSubtree:function(t,e,r,s){for(var i,n,o,a,h,u,d,l;s.push(e),!e.leaf&&s.length-1!==r;){for(d=l=1/0,i=0,n=e.children.length;i<n;i++)h=c(o=e.children[i]),(u=p(t,o)-h)<l?(l=u,d=h<d?h:d,a=o):u===l&&h<d&&(d=h,a=o);e=a||e.children[0]}return e},_insert:function(t,e,r){var s=this.toBBox,i=r?t:s(t),n=[],o=this._chooseSubtree(i,this.data,e,n);for(o.children.push(t),u(o,i);e>=0&&n[e].children.length>this._maxEntries;)this._split(n,e),e--;this._adjustParentBBoxes(i,n,e)},_split:function(t,e){var r=t[e],s=r.children.length,i=this._minEntries;this._chooseSplitAxis(r,i,s);var n=this._chooseSplitIndex(r,i,s),o=g(r.children.splice(n,r.children.length-n));o.height=r.height,o.leaf=r.leaf,a(r,this.toBBox),a(o,this.toBBox),e?t[e-1].children.push(o):this._splitRoot(r,o)},_splitRoot:function(t,e){this.data=g([t,e]),this.data.height=t.height+1,this.data.leaf=!1,a(this.data,this.toBBox)},_chooseSplitIndex:function(t,e,r){var s,i,n,o,a,u,d,l;for(u=d=1/0,s=e;s<=r-e;s++)o=f(i=h(t,0,s,this.toBBox),n=h(t,s,r,this.toBBox)),a=c(i)+c(n),o<u?(u=o,l=s,d=a<d?a:d):o===u&&a<d&&(d=a,l=s);return l},_chooseSplitAxis:function(t,e,r){var s=t.leaf?this.compareMinX:d,i=t.leaf?this.compareMinY:l;this._allDistMargin(t,e,r,s)<this._allDistMargin(t,e,r,i)&&t.children.sort(s)},_allDistMargin:function(t,e,r,s){t.children.sort(s);var i,n,o=this.toBBox,a=h(t,0,e,o),d=h(t,r-e,r,o),l=_(a)+_(d);for(i=e;i<r-e;i++)n=t.children[i],u(a,t.leaf?o(n):n),l+=_(a);for(i=r-e-1;i>=e;i--)n=t.children[i],u(d,t.leaf?o(n):n),l+=_(d);return l},_adjustParentBBoxes:function(t,e,r){for(var s=r;s>=0;s--)u(e[s],t)},_condense:function(t){for(var e,r=t.length-1;r>=0;r--)0===t[r].children.length?r>0?(e=t[r-1].children).splice(e.indexOf(t[r]),1):this.clear():a(t[r],this.toBBox)},_initFormat:function(t){var e=["return a"," - b",";"];this.compareMinX=new Function("a","b",e.join(t[0])),this.compareMinY=new Function("a","b",e.join(t[1])),this.toBBox=new Function("a","return {minX: a"+t[0]+", minY: a"+t[1]+", maxX: a"+t[2]+", maxY: a"+t[3]+"};")}};var I=r(70328);class v{static fromReader(t){const e=[],r=t.copy(),s=(0,I.vt)();for(;r.next();)r.getBounds(s)&&e.push(r.getIndex());const i=n(9,t=>(r.setIndex(t),{minX:r.getBoundsXMin(),minY:r.getBoundsYMin(),maxX:r.getBoundsXMax(),maxY:r.getBoundsYMax()}));return i.load(e),new v(i,e.length)}constructor(t,e){this._index=t,this._size=e}get usedMemory(){return this._size*s.RS}search(t){const e={minX:t[0],minY:t[1],maxX:t[2],maxY:t[3]};return this._index.search(e)}}r(44208);var b=r(34727),T=(r(37585),r(48163)),w=r(39829),M=r(16930),S=r(19419),F=r(79258),A=r(90708),C=r(31464);function P(t,e,r,s){if(s.isWebMercator){const s=(0,b.KJ)(t/F.$O.radius),i=s-360*Math.floor((s+180)/360),n=[0,0];return O(n,0,(0,b.KJ)(Math.PI/2-2*Math.atan(Math.exp(-e/F.$O.radius))),i,r),n}const i=(0,C.Cv)({x:t,y:e},s,M.A.WGS84);if(!i)return null;const n=[0,0];return O(n,0,i.y,i.x,r),n}function O(t,e,r,s,i){i%2&&(i+=1);let n=0,o=0,a=-90,h=90,u=-180,d=180;for(let t=0;t<i/2;t++){for(let e=0;e<5;e++){const r=(u+d)/2,i=s>r?1:0;n|=i<<29-(e+5*t),u=(1-i)*u+i*r,d=(1-i)*r+i*d}for(let e=0;e<5;e++){const s=(a+h)/2,i=r>s?1:0;o|=i<<29-(e+5*t),a=(1-i)*a+i*s,h=(1-i)*s+i*h}}t[2*e]=n,t[2*e+1]=o}(0,T.vt)(),(0,T.vt)();var N=r(63664),k=r(92029);class z extends N.B{static create(t,e,r,s){const i=k.o.create(t),n=new Array(32);for(let t=0;t<n.length;t++)n[t]=null;return new z(i,e,r,s,n)}constructor(t,e,r,s,i){super(t),this.xNode=e,this.yNode=r,this.depth=s,this.children=i,this._objectIds=new Set,this._count=0,this._xWorldTotal=0,this._yWorldTotal=0,this._xGeohashTotal=0,this._yGeohashTotal=0,this.next=null}static get estimatedMemory(){let t=0;return t+=2*s.qK,t+=32*s.RS,t+=k.o.estimatedMemory,t}get id(){return`${this.xNode}.${this.yNode}`}get containedObjectIds(){return this._objectIds}get count(){return this._count}clone(){const t=new z(this._statistics.clone(),this.xNode,this.yNode,this.depth,this.children);return t._count=this._count,t._xWorldTotal=this._xWorldTotal,t._yWorldTotal=this._yWorldTotal,t._xGeohashTotal=this._xGeohashTotal,t._yGeohashTotal=this._yGeohashTotal,t.next=this.next,t._objectIds=new Set(this._objectIds),t}insert(t,e,r,s,i,n){this._count+=1,this._xWorldTotal+=e,this._yWorldTotal+=r,this._xGeohashTotal+=s,this._yGeohashTotal+=i,this._statistics.insert(t,n),this._objectIds.add(t.getObjectId())}merge(t){if(0!==t._count){this._count+=t._count,this._xWorldTotal+=t._xWorldTotal,this._yWorldTotal+=t._yWorldTotal,this._xGeohashTotal+=t._xWorldTotal,this._yGeohashTotal+=t._yWorldTotal,this._statistics.merge(t._statistics);for(const e of t._objectIds.values())this._objectIds.add(e)}}getCentroid(t){throw new Error("getCentroid not supported for GeohashNode")}getGeometry(t,e){const r=this._getLngLatBounds(),[s,i,n,o]=r,a=(0,C.Cv)({rings:[[[s,i],[s,o],[n,o],[n,i],[s,i]]]},M.A.WGS84,t),h=(0,A.Ye)(a);return null!=e?(0,A.Nl)(h,"esriGeometryPolygon",e,!1,!1):h}getGeometricCentroid(t,e){const r=this._getLngLatBounds(),[s,i,n,o]=r,a=(0,C.Cv)({x:(s+n)/2,y:(i+o)/2},M.A.WGS84,t),h=(0,A.qN)(a);return null!=e?(0,A.Nl)(h,"esriGeometryPoint",e,!1,!1):h}getAttributes(){const t={aggregateId:this.id};for(const e of this._statistics.values())t[e.field.name]=e.value;return t.aggregateCount=this._count,t}find(t,e,r,s,i,n){if(s>=r)return this;const o=1-s%2,a=3*o+2*(1-o),h=2*o+3*(1-o),u=30-i-a,d=30-n-h,l=((t&7*o+3*(1-o)<<u)>>u)+((e&3*o+7*(1-o)<<d)>>d)*(8*o+4*(1-o)),c=this.children[l];return null==c?null:c.find(t,e,r,s+1,i+a,n+h)}_getLngLatBounds(){const t=this.depth,e=Math.ceil(t/2),r=Math.floor(t/2),s=30-(3*e+2*r),i=30-(2*e+3*r);return function(t,e){let r=-90,s=90,i=-180,n=180;for(let o=0;o<e;o++){const e=Math.ceil((o+1)/2),a=Math.floor((o+1)/2),h=1-o%2,u=30-(3*e+2*a),d=30-(2*e+3*a),l=2*h+3*(1-h),c=(7*h+3*(1-h)<<u&t.geohashX)>>u,_=(3*h+7*(1-h)<<d&t.geohashY)>>d;for(let t=3*h+2*(1-h)-1;t>=0;t--){const e=(i+n)/2,r=c&1<<t?1:0;i=(1-r)*i+r*e,n=(1-r)*e+r*n}for(let t=l-1;t>=0;t--){const e=(r+s)/2,i=_&1<<t?1:0;r=(1-i)*r+i*e,s=(1-i)*e+i*s}}return[i,r,n,s]}({geohashX:this.xNode<<s,geohashY:this.yNode<<i},this.depth)}}class B{constructor(t){this._fields=t,this._size=0,this._depth=0,this._root=z.create(this._fields,0,0,0)}destroy(){}get size(){return this._size}get depth(){return this._depth}get usedMemory(){return this._size*z.estimatedMemory}find(t,e,r){return this._root.find(t,e,r,0,0,0)}insert(t,e,r,s,i,n,o){let a=this._root,h=0,u=0,d=0;for(;null!==a;){if(a.insert(t,e,r,s,i,o),h>=n)return;const l=Math.ceil((h+1)/2),c=Math.floor((h+1)/2),_=1-h%2,p=30-(3*l+2*c),f=30-(2*l+3*c),m=(s&7*_+3*(1-_)<<p)>>p,y=(i&3*_+7*(1-_)<<f)>>f,g=m+y*(8*_+4*(1-_));u=u<<3*_+2*(1-_)|m,d=d<<2*_+3*(1-_)|y,null==a.children[g]&&(a.children[g]=z.create(this._fields,u,d,h+1),this._depth=Math.max(this._depth,h+1),this._size+=1),h+=1,a=a.children[g]}}putBins(t,e){for(const r of this.getNodes(e)){const e=t.get(r.id);e?e.merge(r):t.set(r.id,r.clone())}}getNodes(t){const e=[],{geohashBounds:r,level:s}=t;let i=this._root;for(;null!==i;){const t=i.depth,n=i.xNode,o=i.yNode;if(t>=s){e.push(i),i=i.next;continue}const a=Math.ceil((t+1)/2),h=Math.floor((t+1)/2),u=1-t%2,d=30-(3*a+2*h),l=30-(2*a+3*h),c=~((1<<d)-1),_=~((1<<l)-1),p=(r.xLL&c)>>d,f=(r.yLL&_)>>l,m=(r.xTR&c)>>d,y=(r.yTR&_)>>l,g=n<<3*u+2*(1-u),x=o<<2*u+3*(1-u),I=g+8*u+4*(1-u),v=x+4*u+8*(1-u),b=Math.max(g,p),T=Math.max(x,f),w=Math.min(I,m),M=Math.min(v,y);let S=null,F=null;for(let t=T;t<=M;t++)for(let e=b;e<=w;e++){const r=e-g+(t-x)*(8*u+4*(1-u)),s=i.children[r];s&&(S||(S=s,S.next=i.next),F&&(F.next=s),F=s,s.next=i.next)}i=S||i.next}return e}}var D=r(38976);class G extends D.n{constructor(t){super(t),this._tree=new B(this._options.fields)}get usedMemory(){return this._tree.usedMemory}put(t){throw new Error("Geohash tree does not support put")}putBounded(t,e,r){const{geohashLevel:s,spatialReference:i}=this._options,n=function(t,e,r,s){const i=[t.xmin,t.ymin,t.xmax,t.ymax],n=w.A.fromExtent((0,S.w1)(i,s)),o=(0,C.Cv)(n,s,M.A.WGS84,{extendedParams:{densificationStep:64*e}});if(!o)return null;const a=(0,A.Ye)(o,!1,!1),h=a.coords.filter((t,e)=>!(e%2)),u=a.coords.filter((t,e)=>e%2),d=Math.min(...h),l=Math.min(...u),c=Math.max(...h),_=Math.max(...u),p=P(d,l,r,M.A.WGS84),f=P(c,_,r,M.A.WGS84);return p&&f?{bounds:i,geohashBounds:{xLL:p[0],yLL:p[1],xTR:f[0],yTR:f[1]},level:r}:null}(e,r,s,i);null!=n&&this._tree.putBins(t,n)}_insert(t,e,r,s){const{geohashLevel:i,spatialReference:n}=this._options,o=P(e,r,i,n);o&&this._tree.insert(t,e,r,o[0],o[1],i,s)}}var W=r(68974),Y=r(52350);class j{size(){return this.reader.getSize()}get fields(){return this.reader.fields}invalidate(){this._aggregateIndex=null,this._aggregateIndexHash=null,this._spatialIndex=null}get usedMemory(){let t=0;return t+=this.reader.underlyingMemory,this._aggregateIndex&&(t+=this._aggregateIndex.usedMemory),this._spatialIndex&&(t+=this._spatialIndex.usedMemory),t}registerOverrides(t){this.reader.registerOverrides(t),this.invalidate()}queryFeaturesInBounds(t){const e=this._getSpatialIndex().search(t);return Y.e.from(this.reader,e)}getAggregateIndex(t){const e=JSON.stringify(t);if(e!==this._aggregateIndexHash){switch(this._aggregateIndexHash=e,t.type){case"grid":this._aggregateIndex=new W.H(t);break;case"geohash":this._aggregateIndex=new G(t)}this._aggregateIndex.insert(this.reader,this.isTiled)}return this._aggregateIndex}_getSpatialIndex(){return this._spatialIndex||(this._spatialIndex=v.fromReader(this.reader)),this._spatialIndex}}},73250:(t,e,r)=>{r.d(e,{y:()=>i});var s=r(69397);class i{static fromBuffer(t,e){return new i(t,e)}static create(t,e=4294967295){const r=new Uint32Array(Math.ceil(t/32));return new i(r,e)}constructor(t,e){this._mask=0,this._buf=t,this._mask=e}_getIndex(t){return Math.floor(t/32)}get usedMemory(){return(0,s.Qf)(this._buf)}has(t){const e=this._mask&t;return!!(this._buf[this._getIndex(e)]&1<<e%32)}hasRange(t,e){let r=t,s=e;for(;r%32&&r!==s;){if(this.has(r))return!0;r++}for(;s%32&&r!==s;){if(this.has(r))return!0;s--}if(r===s)return!1;for(let t=r/32;t!==s/32;t++)if(this._buf[t])return!0;return!1}set(t){const e=this._mask&t,r=this._getIndex(e),s=1<<e%32;this._buf[r]|=s}setRange(t,e){let r=t,s=e;for(;r%32&&r!==s;)this.set(r++);for(;s%32&&r!==s;)this.set(s--);if(r!==s)for(let t=r/32;t!==s/32;t++)this._buf[t]=4294967295}unset(t){const e=this._mask&t,r=this._getIndex(e),s=1<<e%32;this._buf[r]&=4294967295^s}resize(t){const e=this._buf,r=new Uint32Array(Math.ceil(t/32));r.set(e),this._buf=r}or(t){for(let e=0;e<this._buf.length;e++)this._buf[e]|=t._buf[e];return this}and(t){for(let e=0;e<this._buf.length;e++)this._buf[e]&=t._buf[e];return this}xor(t){for(let e=0;e<this._buf.length;e++)this._buf[e]^=t._buf[e];return this}ior(t){for(let e=0;e<this._buf.length;e++)this._buf[e]|=~t._buf[e];return this}iand(t){for(let e=0;e<this._buf.length;e++)this._buf[e]&=~t._buf[e];return this}ixor(t){for(let e=0;e<this._buf.length;e++)this._buf[e]^=~t._buf[e];return this}any(){for(let t=0;t<this._buf.length;t++)if(this._buf[t])return!0;return!1}copy(t){for(let e=0;e<this._buf.length;e++)this._buf[e]=t._buf[e];return this}clone(){return new i(this._buf.slice(),this._mask)}clear(){for(let t=0;t<this._buf.length;t++)this._buf[t]=0;return this}forEachSet(t){for(let e=0;e<this._buf.length;e++){let r=this._buf[e],s=32*e;if(r)for(;r;)1&r&&t(s),r>>>=1,s++}}countSet(){let t=0;return this.forEachSet(e=>{t++}),t}}},75538:(t,e,r)=>{r.d(e,{L:()=>a});var s=r(90708),i=r(92722),n=r(63664),o=r(92029);class a extends n.B{static createId(t,e){return`${t}.${e}`}static create(t,e,r,s){return new a(t,e,o.o.create(r),s)}constructor(t,e,r,s){super(r),this.gridX=t,this.gridY=e,this._worldUnitsPerCell=s,this._count=0,this._xWorldTotal=0,this._yWorldTotal=0,this._objectIds=new Set}get id(){return a.createId(this.gridX,this.gridY)}get containedObjectIds(){return this._objectIds}get count(){return this._count}get firstObjectId(){return this._objectIds.values().next().value}get centroidXWorld(){return this._xWorldTotal/this._count}get centroidYWorld(){return this._yWorldTotal/this._count}get usedMemory(){return 48}clone(){const t=new a(this.gridX,this.gridY,this._statistics.clone(),this._worldUnitsPerCell);return t._count=this._count,t._xWorldTotal=this._xWorldTotal,t._yWorldTotal=this._yWorldTotal,t._firstFeatureAttributes=this._firstFeatureAttributes,t._objectIds=new Set(this._objectIds),t}insert(t,e,r,s){0===this._count?this._firstFeatureAttributes=t.readAttributes():this._firstFeatureAttributes=null,this._count+=1,this._xWorldTotal+=r,this._yWorldTotal+=s,this._statistics.insert(t,e),this._objectIds.add(t.getObjectId())}merge(t){if(0!==t._count){this._count+=t._count,this._firstFeatureAttributes=t._firstFeatureAttributes,this._xWorldTotal+=t._xWorldTotal,this._yWorldTotal+=t._yWorldTotal,this._statistics.merge(t._statistics);for(const e of t._objectIds.values())this._objectIds.add(e)}}getCentroidX(t){return null==t?this.centroidXWorld:(0,s.IE)(t,this.centroidXWorld)}getCentroidY(t){return null==t?this.centroidYWorld:(0,s.B2)(t,this.centroidYWorld)}getGeometry(t,e){const r=this.gridX*this._worldUnitsPerCell,n=this.gridY*this._worldUnitsPerCell,o=new i.A([4],[r,n,r+this._worldUnitsPerCell,n,r+this._worldUnitsPerCell,n+this._worldUnitsPerCell,r,n+this._worldUnitsPerCell]);return null!=e?(0,s.Nl)(o,"esriGeometryPolygon",e):o}getCentroid(t){const e=new i.A([],[this.centroidXWorld,this.centroidYWorld]);return null!=t?(0,s.Nl)(e,"esriGeometryPoint",t):e}getGeometricCentroid(t,e){const r=this.gridX*this._worldUnitsPerCell+.5*this._worldUnitsPerCell,n=this.gridY*this._worldUnitsPerCell+.5*this._worldUnitsPerCell,o=new i.A([],[r,n]);return null!=e?(0,s.Nl)(o,"esriGeometryPoint",e):o}getAttributes(){const t={aggregateId:this.id};for(const e of this._statistics.values())t[e.field.name]=e.value;return null!=this._firstFeatureAttributes?{...t,...this._firstFeatureAttributes}:t}}},76213:(t,e,r)=>{r.d(e,{C2:()=>o,CQ:()=>s,DY:()=>i,GR:()=>f,Gh:()=>h,MZ:()=>c,TB:()=>p,U5:()=>a,_M:()=>u,cp:()=>m,eG:()=>n,fq:()=>_,hM:()=>l,ie:()=>d});const s=512,i=29,n=24,o=4,a=6,h=1.05,u=3,d=3,l=4,c=1,_=10,p=256,f=32,m=512},76357:(t,e,r)=>{r.d(e,{A:()=>u});var s=r(31635),i=r(66552),n=r(25482),o=r(91429),a=r(93223);const h=new i.J({inherited:"inherited",codedValue:"coded-value",range:"range"});let u=class extends n.o{constructor(t){super(t),this.name=null,this.type=null}};(0,s.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],u.prototype,"name",void 0),(0,s.Cg)([(0,a.e)(h),(0,o.MZ)({json:{write:{isRequired:!0}}})],u.prototype,"type",void 0),u=(0,s.Cg)([(0,o.$K)("esri.layers.support.Domain")],u)},92029:(t,e,r)=>{r.d(e,{o:()=>o});var s=r(69397),i=r(50115);const n=Math.PI/180;class o{static create(t){return new o(t.map(t=>function(t){switch(t.statisticType){case"min":return new h(t);case"max":return new u(t);case"avg":return new l(t);case"avg_angle":return new c(t);case"sum":case"count":return new d(t);case"mode":return new _(t)}}(t)))}constructor(t){this._statistics=t}static get estimatedMemory(){return s.qK+4*s.qK}values(){return this._statistics.values()}insert(t,e){for(const r of this._statistics)r.insert(t,e)}merge(t){for(let e=0;e<this._statistics.length;e++){const r=this._statistics[e],s=t._statistics[e];if(r.field.name!==s.field.name)throw new Error("InternalError: Tried to merge incompatible statistics");r.merge(s)}}clone(){return new o(this._statistics.map(t=>t.clone()))}}class a{constructor(t){this.field=t}insert(t,e){if(!this.field.computed)return;const r=this.field.computed.read(t,e);(0,i.rZ)(r)||this._insertValue(r)}}class h extends a{constructor(){super(...arguments),this.type="min",this.value=Number.MAX_VALUE}_insertValue(t){this.value=Math.min(this.value,t)}merge(t){this.value=Math.min(this.value,t.value)}clone(){const t=new h(this.field);return t.value=this.value,t}}class u extends a{constructor(){super(...arguments),this.type="max",this.value=Number.MIN_VALUE}_insertValue(t){this.value=Math.max(this.value,t)}merge(t){this.value=Math.max(this.value,t.value)}clone(){const t=new u(this.field);return t.value=this.value,t}}class d extends a{constructor(){super(...arguments),this.type="sum",this.value=0}_insertValue(t){this.value+=t}merge(t){this.value+=t.value}clone(){const t=new d(this.field);return t.value=this.value,t}}class l extends a{constructor(){super(...arguments),this.type="avg",this._total=0,this._count=0}get value(){return this._total/this._count}_insertValue(t){this._total+=t,this._count+=1}merge(t){this._total+=t._total,this._count+=t._count}clone(){const t=new l(this.field);return t._total=this._total,t._count=this._count,t}}class c extends a{constructor(){super(...arguments),this.type="avg_angle",this._x=0,this._y=0,this._count=0}get value(){const t=this._x/this._count,e=this._y/this._count,r=180/Math.PI;return Math.atan2(e,t)*r}_insertValue(t){this._x=this._x+Math.cos(t*n),this._y=this._y+Math.sin(t*n),this._count+=1}merge(t){this._x+=t._x,this._y+=t._y,this._count+=t._count}clone(){const t=new c(this.field);return t._x=this._x,t._y=this._y,t._count=this._count,t}}class _ extends a{constructor(){super(...arguments),this._frequencies=new Map}get value(){let t,e=0;for(const[r,s]of this._frequencies.entries())s>e&&(e=s,t=r);return t}_insertValue(t){const e=this._frequencies.get(t);null!=e?this._frequencies.set(t,e+1):this._frequencies.set(t,1)}merge(t){for(const[e,r]of t._frequencies.entries()){const t=this._frequencies.get(e);null!=t?this._frequencies.set(e,t+r):this._frequencies.set(e,r)}}clone(){const t=new _(this.field);return t._frequencies=new Map(this._frequencies),t}}},97633:(t,e,r)=>{r.d(e,{P:()=>n});var s=r(69397),i=r(73250);class n{constructor(t){this._valid=i.y.create(t),this._data=new Array(t)}get usedMemory(){let t=this._valid.usedMemory;if(this._data.length>0){const e="string"==typeof this._data[0]?64:s.RS;t+=this._data.length*e}return t}has(t){return this._valid.has(t)}set(t,e){this._valid.set(t),this._data[t]=e}get(t){return this._data[t]}}},98453:(t,e,r)=>{r.d(e,{m:()=>s});const s=new(r(66552).J)({esriFieldTypeSmallInteger:"small-integer",esriFieldTypeInteger:"integer",esriFieldTypeSingle:"single",esriFieldTypeDouble:"double",esriFieldTypeLong:"long",esriFieldTypeString:"string",esriFieldTypeDate:"date",esriFieldTypeOID:"oid",esriFieldTypeGeometry:"geometry",esriFieldTypeBlob:"blob",esriFieldTypeRaster:"raster",esriFieldTypeGUID:"guid",esriFieldTypeGlobalID:"global-id",esriFieldTypeXML:"xml",esriFieldTypeBigInteger:"big-integer",esriFieldTypeDateOnly:"date-only",esriFieldTypeTimeOnly:"time-only",esriFieldTypeTimestampOffset:"timestamp-offset"})},99996:(t,e,r)=>{r.d(e,{Y:()=>O});var s=r(66131),i=r(44208),n=r(69397),o=r(44729),a=r(15032),h=r(36745),u=r(70328),d=r(65864),l=r(32011),c=r(62577),_=r(27647),p=r(90708),f=r(43334),m=r(92722),y=r(98623),g=r(97633);const x=(0,i.A)("featurelayer-simplify-thresholds")??[.5,.5,.5,.5],I=x[0],v=x[1],b=x[2],T=x[3],w=(0,i.A)("featurelayer-simplify-payload-size-factors")??[1,2,4],M=w[0],S=w[1],F=w[2],A=(0,i.A)("featurelayer-simplify-mobile-factor")??2,C=(0,i.A)("esri-mobile"),P=4294967295;class O{constructor(t){this.metadata=t,this.type="FeatureSetReader",this._overrides=null,this._joined=[],this._objectIdToIndex=null,this._boundsBuffer=[],this._caches=new Map,this.arcadeDeclaredClass="esri.arcade.Feature",this._contextTimeZone=null}destroy(){}[Symbol.dispose](){this.destroy()}getAreaSimplificationThreshold(t,e){let r=1;const s=C?A:1;e>4e6?r=F*s:e>1e6?r=S*s:e>5e5?r=M*s:e>1e5&&(r=s);let i=0;return t>4e3?i=T*r:t>2e3?i=b*r:t>100?i=v:t>15&&(i=I),i}getBounds(t){!function(t,e){if(!(t.length>e))for(;t.length<=e;)t.push(0)}(this._boundsBuffer,4*this.getIndex()+4);const e=this.getBoundsXMin();if(e===P||!isFinite(e))return!1;if(0===this.getBoundsXMin()){const e=this.readGeometryWorldSpace();if(e?.isPoint&&0===e.coords[0]&&0===e.coords[1])return(0,u.BI)(t,0,0,0,0),!0;if(!e)return this.setBoundsXMin(P),!1;let r=1/0,s=1/0,i=-1/0,n=-1/0;return e.forEachVertex((t,e)=>{r=Math.min(r,t),s=Math.min(s,e),i=Math.max(i,t),n=Math.max(n,e)}),this.setBoundsXMin(r),this.setBoundsYMin(s),this.setBoundsXMax(i),this.setBoundsYMax(n),(0,u.BI)(t,r,s,i,n),!0}const r=this.getBoundsXMin(),s=this.getBoundsYMin(),i=this.getBoundsXMax(),n=this.getBoundsYMax();return(0,u.BI)(t,r,s,i,n),!0}getBoundsXMin(){return this._boundsBuffer[4*this.getIndex()]}setBoundsXMin(t){this._boundsBuffer[4*this.getIndex()]=t}getBoundsYMin(){return this._boundsBuffer[4*this.getIndex()+1]}setBoundsYMin(t){this._boundsBuffer[4*this.getIndex()+1]=t}getBoundsXMax(){return this._boundsBuffer[4*this.getIndex()+2]}setBoundsXMax(t){this._boundsBuffer[4*this.getIndex()+2]=t}getBoundsYMax(){return this._boundsBuffer[4*this.getIndex()+3]}setBoundsYMax(t){this._boundsBuffer[4*this.getIndex()+3]=t}readAttributeAsTimestamp(t){const e=this.readAttribute(t);return"string"==typeof e?new Date(e).getTime():"number"==typeof e||null==e?e:null}readAttribute(t,e=!1){const r=this._readAttribute(t,e);if(void 0!==r)return r;for(const r of this._joined){r.setIndex(this.getIndex());const s=r._readAttribute(t,e);if(void 0!==s)return s}}readAttributes(){const t=this._readAttributes();for(const e of this._joined){e.setIndex(this.getIndex());const r=e._readAttributes();for(const e of Object.keys(r))t[e]=r[e]}return t}joinAttributes(t){this._joined.push(t)}registerOverrides(t){this._overrides=t}withoutOverrides(){const t=this.copy();return t._overrides=null,t}readOptimizedFeatureWorldSpace(){const t=this.readGeometryWorldSpace(),e=this.readAttributes(),r=this.readCentroidWorldSpace();return new f.Om(t,e,r,this.getObjectId(),this.getDisplayId())}readLegacyFeatureForDisplay(){const t=this.readCentroidForDisplay();return{attributes:this.readAttributes(),geometry:this.readLegacyGeometryForDisplay(),centroid:(t&&{x:t.coords[0],y:t.coords[1]})??null}}readLegacyFeatureWorldSpace(){const t=this.readCentroidWorldSpace();return{attributes:this.readAttributes(),geometry:this._readLegacyGeometryWorldSpace(),centroid:(t&&{x:t.coords[0],y:t.coords[1]})??null}}readLegacyGeometryForDisplay(){const t=this.readGeometryForDisplay();return(0,p.zv)(t,this.geometryType,!1,!1)}readXForDisplay(){return this._readX()}readYForDisplay(){return this._readY()}readXWorldSpace(){const t=this._readX(),e=this.getInTransform();return null==e?t:t*e.scale[0]+e.translate[0]}readYWorldSpace(){const t=this._readY(),e=this.getInTransform();return null==e?t:e.translate[1]-t*e.scale[1]}readGeometryForDisplay(){const t=this._readGeometryDeltaDecoded(!0);if(!t){const t=this._createDeltaQuantizedGeometryFromServerCentroid();return t?t.deltaDecode():null}return t}readGeometryForDisplayTransformed(t){let e=this.readGeometryForDisplay();if(e&&"esriGeometryPolyline"===this.metadata.geometryType&&(e=(0,p.kz)(e,this.metadata.geometryType,t.scale[0])),e&&(e=(0,p.hK)(e,t,this.metadata.geometryType)),!e){const e=this.readCentroidForDisplay();if(!e)return null;const r=(0,c.IE)(t,e.coords[0]),s=(0,c.B2)(t,e.coords[1]);return this._createDeltaQuantizedExtrudedGeometry(r,s).deltaDecode()}return e}readGeometryWorldSpace(){let t=this._readGeometry();if(t||(t=this._createDeltaQuantizedGeometryFromServerCentroid()),!t)return null;const e=t.clone(),r=this.getInTransform();return null!=r&&(0,p.aQ)(e,r),e}readCentroidForDisplay(){const t=this.readGeometryForDisplay();return t?this._computeDisplayCentroid(t):this._readServerCentroid()}readCentroidWorldSpace(){const t=this.readGeometryForDisplay(),e=t?this._computeDisplayCentroid(t):this._readServerCentroid();if(!e)return null;const r=e.clone(),s=this.getInTransform();return null!=s&&(0,p.aQ)(r,s),r}setCache(t){let e=this._caches.get(t);null==e&&(e=new g.P(this.getSize()),this._caches.set(t,e)),this._activeCache=e}setCachedValue(t){this._activeCache.set(this.getIndex(),t)}hasCachedValue(){return this._activeCache.has(this.getIndex())}getCachedValue(){return this._activeCache.get(this.getIndex())}get underlyingMemory(){let t=0;t+=(0,n.Qf)(this._boundsBuffer);for(const e of this._caches.values())t+=e.usedMemory;return t}_readGeometryDeltaDecoded(t){const e=this._readGeometry(t);return"esriGeometryPoint"!==this.geometryType&&e&&this.getInTransform()?e.deltaDecode():e}get contextTimeZone(){return this._contextTimeZone}set contextTimeZone(t){this._contextTimeZone=t}readArcadeFeature(){return this}hasField(t){return this.fields.has(t)||this._joined.some(e=>e.hasField(t))}geometry(){const t=this.readGeometryWorldSpace(),e=(0,p.zv)(t,this.geometryType,this.hasZ,this.hasM),r=(0,d.rS)(e);if(r){if(!this.metadata.outSpatialReference)throw new Error("InternalError: Expected spatial reference to be defined");r.spatialReference=this.metadata.outSpatialReference}return r}autocastArcadeDate(t,e){return e&&e instanceof Date?this.isUnknownDateTimeField(t)?s.lY.unknownDateJSToArcadeDate(e):s.lY.dateJSAndZoneToArcadeDate(e,this.contextTimeZone??y.qU):e}isUnknownDateTimeField(t){return this.metadata.fieldsIndex.getTimeZone(t)===y.L5}field(t){let e=this.fields.get(t);if(e)switch(e.type){case"date-only":case"esriFieldTypeDateOnly":return o.n.fromReader(this.readAttribute(t,!1));case"time-only":case"esriFieldTypeTimeOnly":return a.k.fromReader(this.readAttribute(t,!1));case"esriFieldTypeTimestampOffset":case"timestamp-offset":return s.lY.fromReaderAsTimeStampOffset(this.readAttribute(t,!1));case"date":case"esriFieldTypeDate":return this.autocastArcadeDate(t,this.readAttribute(t,!0));default:return this.readAttribute(t,!1)}for(const r of this._joined)if(r.setIndex(this.getIndex()),e=r.fields.get(t),e)switch(e.type){case"date-only":case"esriFieldTypeDateOnly":return o.n.fromReader(r._readAttribute(t,!1));case"time-only":case"esriFieldTypeTimeOnly":return a.k.fromReader(r._readAttribute(t,!1));case"esriFieldTypeTimestampOffset":case"timestamp-offset":return s.lY.fromReaderAsTimeStampOffset(r._readAttribute(t,!1));case"date":case"esriFieldTypeDate":return this.autocastArcadeDate(t,r._readAttribute(t,!0));default:return this.readAttribute(t,!1)}throw new Error(`Field ${t} does not exist`)}setField(t,e){throw new Error("Unable to update feature attribute values, feature is readonly")}keys(){return this.fields.fields.map(t=>t.name)}isEmpty(){return this.fields.fields.length<=0&&null==this.geometry()}castToText(t=!1){if(!t)return JSON.stringify(this.readLegacyFeatureForDisplay());const e=this.readLegacyFeatureForDisplay();if(!e)return JSON.stringify(null);const r={geometry:e.geometry,attributes:{...e.attributes}};for(const t in r.attributes){const e=r.attributes[t];e instanceof Date&&(r.attributes[t]=e.getTime())}return JSON.stringify(r)}gdbVersion(){return null}fullSchema(){return this.metadata.arcadeSchema}castAsJson(t=null){return{attributes:this._readAttributes(),geometry:!0===t?.keepGeometryType?this.geometry():this.geometry()?.toJSON()??null}}castAsJsonAsync(t=null,e=null){return Promise.resolve(this.castAsJson(e))}_getExists(){if(this._overrides){const t=this.getObjectId();return!this._overrides.hasOverride(t)}return!0}_computeDisplayCentroid(t){if(null==this.getInTransform())return(0,_.Q)(t);const e=h.z.fromOptimized(t,this.geometryType);e.yFactor*=-1;const r=(0,l.d)(e);return r?(r[1]*=-1,new m.A([],r)):null}copyInto(t){t._joined=this._joined,t._overrides=this._overrides,t._objectIdToIndex=this._objectIdToIndex,t._boundsBuffer=this._boundsBuffer,t._activeCache=this._activeCache,t._caches=this._caches,t._contextTimeZone=this._contextTimeZone}_readLegacyGeometryWorldSpace(){const t=this.readGeometryWorldSpace();return(0,p.zv)(t,this.geometryType,!1,!1)}_createDeltaQuantizedGeometryFromServerCentroid(){const t=this._readServerCentroid();if(!t)return null;const[e,r]=t.coords;return this._createDeltaQuantizedExtrudedGeometry(e,r)}_createDeltaQuantizedExtrudedGeometry(t,e){return"esriGeometryPolyline"===this.geometryType?this._createDeltaQuantizedExtrudedLine(t,e):this._createDeltaQuantizedExtrudedQuad(t,e)}_createDeltaQuantizedExtrudedQuad(t,e){return new m.A([5],[t-1,e,1,-1,1,1,-1,1,-1,-1])}_createDeltaQuantizedExtrudedLine(t,e){return new m.A([2],[t-1,e+1,1,-1])}}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[387],{1843:(t,e,r)=>{r.d(e,{BP:()=>f,l5:()=>_});var n=r(20498),i=r(13030),s=r(90239),o=r(4431),c=r(620),u=r(85079);class a{constructor(t,e){this.layout=t,this.buffer="number"==typeof e?new ArrayBuffer(e*t.stride):e;for(const e of t.fields.keys()){const r=t.fields.get(e);this[e]=new r.constructor(this.buffer,r.offset,this.stride)}}get stride(){return this.layout.stride}get count(){return this.buffer.byteLength/this.stride}get byteLength(){return this.buffer.byteLength}getField(t,e){const r=this[t];return r&&r.elementCount===e.ElementCount&&r.elementType===e.ElementType?r:null}slice(t,e){return new a(this.layout,this.buffer.slice(t*this.stride,e*this.stride))}copyFrom(t,e=0,r=0,n=t.count){const i=this.stride;if(i%4==0){const s=new Uint32Array(t.buffer,e*i,n*i/4);new Uint32Array(this.buffer,r*i,n*i/4).set(s)}else{const s=new Uint8Array(t.buffer,e*i,n*i);new Uint8Array(this.buffer,r*i,n*i).set(s)}return this}get usedMemory(){return this.byteLength}dispose(){}}class h{constructor(t){this._stride=0,this._fields=new Map,t&&(this._stride=t.stride,t.fields.forEach(t=>this._fields.set(t[0],{...t[1],constructor:E(t[1].constructor)})))}freeze(){return this}get locations(){return(0,u.Xk)((0,o.U)(this))}vec2f16(t,e){return this._appendField(t,n.SX?i.ZD:i.gH,e),this}vec2f(t,e){return this._appendField(t,i.gH,e),this}vec2f64(t,e){return this._appendField(t,i.si,e),this}vec3f16(t,e){return this._appendField(t,n.SX?i.EC:i.xs,e),this}vec3f(t,e){return this._appendField(t,i.xs,e),this}vec3f64(t,e){return this._appendField(t,i.Xm,e),this}vec4f16(t,e){return this._appendField(t,n.SX?i.jz:i.Eq,e),this}vec4f(t,e){return this._appendField(t,i.Eq,e),this}vec4f64(t,e){return this._appendField(t,i.Aj,e),this}mat3f(t,e){return this._appendField(t,i.jZ,e),this}mat3f64(t,e){return this._appendField(t,i.j0,e),this}mat4f(t,e){return this._appendField(t,i.Sx,e),this}mat4f64(t,e){return this._appendField(t,i.E$,e),this}vec4u8(t,e){return this._appendField(t,i.XP,e),this}f16(t,e){return this._appendField(t,n.SX?i.XW:i.Y$,e),this}f32(t,e){return this._appendField(t,i.Y$,e),this}f64(t,e){return this._appendField(t,i.qB,e),this}u8(t,e){return this._appendField(t,i.SL,e),this}u16(t,e){return this._appendField(t,i.h,e),this}i8(t,e){return this._appendField(t,i.bf,e),this}vec2i8(t,e){return this._appendField(t,i.D6,e),this}vec2i16(t,e){return this._appendField(t,i.mJ,e),this}vec2u8(t,e){return this._appendField(t,i.LC,e),this}vec2u16(t,e){return this._appendField(t,i.Yi,e),this}vec4u16(t,e){return this._appendField(t,i.Uz,e),this}vec4i16(t,e){return this._appendField(t,i.E7,e),this}u32(t,e){return this._appendField(t,i.P,e),this}_appendField(t,e,r){this._fields.has(t)&&(0,c.vA)(!1,`${t} already added to vertex buffer layout`);const n=e.ElementCount*(0,s.GJ)(e.ElementType),i=this._stride;this._fields.set(t,{constructor:e,size:n,offset:i,optional:r}),this._alignFields()}_alignFields(){let t=0,e=1;this._fields.forEach(r=>{const n=(0,s.GJ)(r.constructor.ElementType);t=Math.floor((t+n-1)/n)*n,r.offset=t,t+=r.size,e=Math.max(e,n)}),t=Math.floor((t+e-1)/e)*e,this._stride=t}createBuffer(t){return new a(this,t)}createView(t){return new a(this,t)}clone(){const t=new h;return t._stride=this._stride,t._fields=new Map,this._fields.forEach((e,r)=>t._fields.set(r,e)),t.BufferType=this.BufferType,t}get stride(){return this._stride}get fields(){return this._fields}}function f(){return new h}class _{constructor(t){this.fields=new Array,t.fields.forEach((t,e)=>{const r={...t,constructor:l(t.constructor)};this.fields.push([e,r])}),this.stride=t.stride}}const d=[i.Y$,i.gH,i.xs,i.Eq,i.jZ,i.Sx,i.qB,i.si,i.Xm,i.Aj,i.j0,i.E$,i.SL,i.LC,i.eI,i.XP,i.h,i.Yi,i.nS,i.Uz,i.P,i.An,i.H$,i.ml,i.bf,i.D6,i.m8,i.TX,i.Qt,i.mJ,i.Vp,i.E7,i.My,i.UL,i.zD,i.Y4];function l(t){return`${t.ElementType}_${t.ElementCount}`}function E(t){return R.get(t)}const R=new Map;d.forEach(t=>R.set(l(t),t))},4341:(t,e,r)=>{r.d(e,{I:()=>i});var n=r(26390);class i{constructor(t){this._allocator=t,this._items=[],this._itemsPtr=0,this._grow()}get(){return 0===this._itemsPtr&&(0,n.d)(()=>this._reset()),this._itemsPtr===this._items.length&&this._grow(),this._items[this._itemsPtr++]}_reset(){const t=Math.min(3*Math.max(8,this._itemsPtr),this._itemsPtr+3*s);this._items.length=Math.min(t,this._items.length),this._itemsPtr=0}_grow(){for(let t=0;t<Math.max(8,Math.min(this._items.length,s));t++)this._items.push(this._allocator())}}const s=1024},4431:(t,e,r)=>{r.d(e,{U:()=>s}),r(44208);var n=r(63907),i=r(74038);function s(t,e=0){const r=t.stride;return Array.from(t.fields.keys()).map(s=>{const o=t.fields.get(s),c=o.constructor.ElementCount,u=function(t){switch(t){case"u8":return n.pe.UNSIGNED_BYTE;case"u16":return n.pe.UNSIGNED_SHORT;case"u32":return n.pe.UNSIGNED_INT;case"i8":return n.pe.BYTE;case"i16":return n.pe.SHORT;case"i32":return n.pe.INT;case"f16":return n.pe.HALF_FLOAT;case"f32":return n.pe.FLOAT;default:throw new Error("BufferType not supported in WebGL")}}(o.constructor.ElementType),a=o.offset,h=o.optional?.glNormalized??!1,f=o.optional?.integer??!1;return new i._(s,c,u,a,r,h,e,f)})}},11868:(t,e,r)=>{r.d(e,{Wz:()=>s,oe:()=>i});var n=r(34275);function i(t,e=!1){return t<=n.y9?e?new Array(t).fill(0):new Array(t):new Float32Array(t)}function s(t){return(Array.isArray(t)?t.length:t.byteLength/8)<=n.y9?Array.from(t):new Float32Array(t)}},11964:(t,e,r)=>{r.d(e,{Cr:()=>h,H6:()=>d,LV:()=>a,_I:()=>_,kb:()=>f,vt:()=>u});var n=r(34727),i=r(4341),s=r(38954),o=r(51850),c=r(32114);function u(t){return t?{origin:(0,o.o8)(t.origin),vector:(0,o.o8)(t.vector)}:{origin:(0,o.vt)(),vector:(0,o.vt)()}}function a(t,e){const r=l.get();return r.origin=t,r.vector=e,r}function h(t,e,r=u()){return(0,s.d)(r.origin,t),(0,s.e)(r.vector,e,t),r}function f(t,e){const r=(0,s.e)(c.rq.get(),e,t.origin),i=(0,s.g)(t.vector,r),o=(0,s.g)(t.vector,t.vector),u=(0,n.qE)(i/o,0,1),a=(0,s.e)(c.rq.get(),(0,s.j)(c.rq.get(),t.vector,u),r);return(0,s.g)(a,a)}function _(t,e,r){return d(t,e,0,1,r)}function d(t,e,r,i,o){const{vector:u,origin:a}=t,h=(0,s.e)(c.rq.get(),e,a),f=(0,s.g)(u,h)/(0,s.E)(u);return(0,s.j)(o,u,(0,n.qE)(f,r,i)),(0,s.i)(o,o,t.origin)}(0,o.vt)(),(0,o.vt)();const l=new i.I(()=>u())},63907:(t,e,r)=>{r.d(e,{$0:()=>f,CQ:()=>R,Fq:()=>l,H0:()=>s,SB:()=>u,WR:()=>n,XN:()=>o,iE:()=>c,ld:()=>a,nI:()=>E,pe:()=>i,r6:()=>_,vt:()=>h,yI:()=>d});const n={POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6},i={BYTE:5120,UNSIGNED_BYTE:5121,SHORT:5122,UNSIGNED_SHORT:5123,INT:5124,UNSIGNED_INT:5125,FLOAT:5126,HALF_FLOAT:5131},s={RGBA4:32854,R16F:33325,RG16F:33327,RGB32F:34837,RGBA16F:34842,R32F:33326,RG32F:33328,RGBA32F:34836,R11F_G11F_B10F:35898,RGB8:32849,RGBA8:32856,RGB5_A1:32855,R8:33321,RG8:33323,R8I:33329,R8UI:33330,R16I:33331,R16UI:33332,R32I:33333,R32UI:33334,RG8I:33335,RG8UI:33336,RG16I:33337,RG16UI:33338,RG32I:33339,RG32UI:33340,RGB16F:34843,RGB9_E5:35901,SRGB8:35905,SRGB8_ALPHA8:35907,RGB565:36194,RGBA32UI:36208,RGB32UI:36209,RGBA16UI:36214,RGB16UI:36215,RGBA8UI:36220,RGB8UI:36221,RGBA32I:36226,RGB32I:36227,RGBA16I:36232,RGB16I:36233,RGBA8I:36238,RGB8I:36239,R8_SNORM:36756,RG8_SNORM:36757,RGB8_SNORM:36758,RGBA8_SNORM:36759,RGB10_A2:32857,RGB10_A2UI:36975},o=Object.values(s),c={DEPTH24_STENCIL8:35056,DEPTH32F_STENCIL8:36013},u={DEPTH_COMPONENT16:33189,DEPTH_COMPONENT24:33190,DEPTH_COMPONENT32F:36012},a={FLOAT:i.FLOAT,UNSIGNED_BYTE:i.UNSIGNED_BYTE,UNSIGNED_INT_24_8:34042,UNSIGNED_SHORT_4_4_4_4:32819,UNSIGNED_SHORT_5_5_5_1:32820,UNSIGNED_SHORT_5_6_5:33635,BYTE:i.BYTE,UNSIGNED_SHORT:i.UNSIGNED_SHORT,SHORT:i.SHORT,UNSIGNED_INT:i.UNSIGNED_INT,INT:i.INT,HALF_FLOAT:5131,UNSIGNED_INT_2_10_10_10_REV:33640,UNSIGNED_INT_10F_11F_11F_REV:35899,UNSIGNED_INT_5_9_9_9_REV:35902,FLOAT_32_UNSIGNED_INT_24_8_REV:36269},h={Texture:0,TileTexture:1,BufferObject:2,VertexArrayObject:3,Shader:4,Program:5,FramebufferObject:6,Renderbuffer:7,TransformFeedback:8,Sync:9,UNCOUNTED:10,LinesOfCode:10,Uniform:11,COUNT:12},f=0,_=36064,d=36065,l=36066,E=33306,R={COMPRESSED_RGB_S3TC_DXT1_EXT:33776,COMPRESSED_RGBA_S3TC_DXT1_EXT:33777,COMPRESSED_RGBA_S3TC_DXT3_EXT:33778,COMPRESSED_RGBA_S3TC_DXT5_EXT:33779,COMPRESSED_R11_EAC:37488,COMPRESSED_SIGNED_R11_EAC:37489,COMPRESSED_RG11_EAC:37490,COMPRESSED_SIGNED_RG11_EAC:37491,COMPRESSED_RGB8_ETC2:37492,COMPRESSED_SRGB8_ETC2:37493,COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2:37494,COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2:37495,COMPRESSED_RGBA8_ETC2_EAC:37496,COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:37497}},71351:(t,e,r)=>{r.d(e,{C:()=>f,Cr:()=>_,LV:()=>h,fA:()=>d,kb:()=>l,oC:()=>E,vt:()=>u}),r(4576);var n=r(4341),i=(r(77690),r(29242)),s=r(38954),o=r(51850),c=r(32114);function u(t){return t?a((0,o.o8)(t.origin),(0,o.o8)(t.direction)):a((0,o.vt)(),(0,o.vt)())}function a(t,e){return{origin:t,direction:e}}function h(t,e){const r=R.get();return r.origin=t,r.direction=e,r}function f(t,e=u()){return d(t.origin,t.direction,e)}function _(t,e,r=u()){return(0,s.d)(r.origin,t),(0,s.e)(r.direction,e,t),r}function d(t,e,r=u()){return(0,s.d)(r.origin,t),(0,s.d)(r.direction,e),r}function l(t,e){const r=(0,s.f)(c.rq.get(),(0,s.n)(c.rq.get(),t.direction),(0,s.e)(c.rq.get(),e,t.origin));return(0,s.g)(r,r)}function E(t,e,r){const n=(0,s.g)(t.direction,(0,s.e)(r,e,t.origin));return(0,s.i)(r,t.origin,(0,s.j)(r,t.direction,n)),r}const R=new n.I(()=>u());(0,o.vt)(),(0,o.vt)(),(0,o.vt)(),(0,i.vt)()},74038:(t,e,r)=>{r.d(e,{_:()=>n});class n{constructor(t,e,r,n,i,s=!1,o=0,c=!1){this.name=t,this.count=e,this.type=r,this.offset=n,this.stride=i,this.normalized=s,this.divisor=o,this.integer=c}}},82919:(t,e,r)=>{r.d(e,{DV:()=>A,C:()=>E,vt:()=>d,Qy:()=>l,ui:()=>R,ST:()=>S,bU:()=>T,pw:()=>p,m7:()=>g,c8:()=>v});var n=r(4341),i=r(58083),s=r(38954),o=r(51850),c=r(87317),u=r(91829),a=r(71351);function h(t){return t?{ray:(0,a.vt)(t.ray),c0:t.c0,c1:t.c1}:{ray:(0,a.vt)(),c0:0,c1:Number.MAX_VALUE}}new n.I(()=>h());var f=r(27921),_=r(32114);function d(t){return t?[(0,f.vt)(t[0]),(0,f.vt)(t[1]),(0,f.vt)(t[2]),(0,f.vt)(t[3]),(0,f.vt)(t[4]),(0,f.vt)(t[5])]:[(0,f.vt)(),(0,f.vt)(),(0,f.vt)(),(0,f.vt)(),(0,f.vt)(),(0,f.vt)()]}function l(){return[(0,o.vt)(),(0,o.vt)(),(0,o.vt)(),(0,o.vt)(),(0,o.vt)(),(0,o.vt)(),(0,o.vt)(),(0,o.vt)()]}function E(t,e){for(let r=0;r<N;r++)(0,f.C)(t[r],e[r]);return t}function R(t,e,r,n=C){const o=(0,i.lw)(_.Rc.get(),e,t);(0,i.B8)(o,o);for(let t=0;t<G;++t){const e=(0,c.t)(_.Km.get(),I[t],o);(0,s.h)(n[t],e[0]/e[3],e[1]/e[3],e[2]/e[3])}A(r,n)}function A(t,e){(0,f.Cr)(e[4],e[0],e[3],t[0]),(0,f.Cr)(e[1],e[5],e[6],t[1]),(0,f.Cr)(e[4],e[5],e[1],t[2]),(0,f.Cr)(e[3],e[2],e[6],t[3]),(0,f.Cr)(e[0],e[1],e[2],t[4]),(0,f.Cr)(e[5],e[4],e[7],t[5])}function g(t,e){for(let r=0;r<N;r++){const n=t[r];if(n[0]*e.center[0]+n[1]*e.center[1]+n[2]*e.center[2]+n[3]>=e.radius)return!1}return!0}function p(t,e){return y(t,function(t,e=h()){return(0,a.C)(t,e.ray),e.c0=0,e.c1=Number.MAX_VALUE,e}(e,m.get()))}function S(t,e,r){return y(t,function(t,e,r=h()){const n=(0,s.b)(t.vector);return(0,a.fA)(t.origin,e,r.ray),r.c0=0,r.c1=n,r}(e,r,m.get()))}function T(t,e){for(let r=0;r<N;r++)if((0,f.mN)(t[r],e)>0)return!1;return!0}function y(t,e){for(let r=0;r<N;r++)if(!(0,f.$Q)(t[r],e))return!1;return!0}const v={bottom:[5,1,0,4],near:[0,1,2,3],far:[5,4,7,6],right:[1,5,6,2],left:[4,0,3,7],top:[7,3,2,6]},N=6,G=8,I=[(0,u.fA)(-1,-1,-1,1),(0,u.fA)(1,-1,-1,1),(0,u.fA)(1,1,-1,1),(0,u.fA)(-1,1,-1,1),(0,u.fA)(-1,-1,1,1),(0,u.fA)(1,-1,1,1),(0,u.fA)(1,1,1,1),(0,u.fA)(-1,1,1,1)],m=new n.I(h),C=l()},85079:(t,e,r)=>{r.d(e,{Xk:()=>i,_u:()=>s});var n=r(21818);function i(t){let e=0;return(0,n.zI)(new Map(t.map(({name:t,count:r})=>{const n=[t,e];return 16===r?e+=4:9===r?e+=3:++e,n})))}function s(t){const e=new Map;let r=0;return t.forEach(t=>t.forEach(({name:t,count:n})=>{e.set(t,r),16===n?r+=4:9===n?r+=3:++r})),e}},90239:(t,e,r)=>{function n(t){switch(t){case"u8":case"i8":return 1;case"u16":case"i16":case"f16":return 2;case"u32":case"i32":case"f32":return 4;case"f64":return 8}}r.d(e,{GJ:()=>n})},94008:(t,e,r)=>{r.d(e,{iy:()=>l,XG:()=>E}),r(44208),r(53966);var n=r(34727),i=r(34304),s=r(58083),o=r(38954),c=r(51850),u=r(91829),a=r(34275);var h=r(71351);function f(t,e){const r=(0,o.b)(t),i=(0,n.YN)(t[2]/r),s=Math.atan2(t[1]/r,t[0]/r);return(0,o.h)(e,r,i,s),e}var _=r(44280),d=r(32114);class l{constructor(t=0,e=0,r=0,n=0){this.radius=n,"number"==typeof t?this._center=(0,c.fA)(t,e,r):function(t){return e=t,(0,a.vZ)(e)&&e.length>=3||function(t){return((0,a.aI)(t)||Array.isArray(t))&&t.length>=3}(t);var e}(t)||function(t){return(e=t)instanceof Float32Array&&e.length>=4||function(t){return Array.isArray(t)&&t.length>=4}(t);var e}(t)?(this._center=(0,c.ci)(t),this.radius=4===t.length?t[3]:e):(this._center=(0,c.o8)(t.center),this.radius=t.radius)}get center(){return this._center}set center(t){(0,o.d)(this.center,t)}exactEquals(t){return(0,o.F)(this._center,t.center)&&this.radius===t.radius}copy(t){return t!==this&&((0,o.d)(this._center,t.center),this.radius=t.radius),this}clone(){return new l(this.center,this.radius)}toVec4(){return(0,u.fA)(this.center[0],this.center[1],this.center[2],this.radius)}contains(t){return(0,o.s)(this.center,t)<=this.radius**2}intersectRay(t,e){if(null==t)return!1;if(!this._intersect(t,R))return!1;let{t0:r,t1:n}=R;if((r<0||n<r&&n>0)&&(r=n),r<0)return!1;if(e){const{origin:n,direction:i}=t;e[0]=n[0]+i[0]*r,e[1]=n[1]+i[1]*r,e[2]=n[2]+i[2]*r}return!0}intersectLine(t,e){const r=(0,h.Cr)(t,e);if(!this._intersect(r,R))return[];const{origin:n,direction:s}=r,{t0:u,t1:a}=R,f=t=>{const e=(0,c.vt)();return(0,o.c)(e,n,s,t),this.projectPoint(e,e)};return Math.abs(u-a)<(0,i.FD)()?[f(u)]:[f(u),f(a)]}_intersect(t,e){const{origin:r,direction:n}=t,i=A;i[0]=r[0]-this.center[0],i[1]=r[1]-this.center[1],i[2]=r[2]-this.center[2];const s=n[0]*n[0]+n[1]*n[1]+n[2]*n[2];if(0===s)return!1;const o=2*(n[0]*i[0]+n[1]*i[1]+n[2]*i[2]),c=o*o-4*s*(i[0]*i[0]+i[1]*i[1]+i[2]*i[2]-this.radius**2);if(c<0)return!1;const u=Math.sqrt(c);return e.t0=(-o-u)/(2*s),e.t1=(-o+u)/(2*s),!0}projectPoint(t,e){const r=(0,o.e)(d.rq.get(),t,this.center),n=(0,o.j)(d.rq.get(),r,this.radius/(0,o.b)(r));return(0,o.i)(e,n,this.center)}closestPointOnSilhouette(t,e){const r=d.rq.get(),n=d.Rc.get();(0,o.f)(r,t.origin,t.direction),(0,o.f)(e,r,t.origin),(0,o.j)(e,e,1/(0,o.b)(e)*this.radius);const i=this._angleToSilhouette(t.origin),c=(0,_.g7)(t.origin,e);return(0,s.$0)(n,c+i,r),(0,o.p)(e,e,n),e}frustumCoverage(t,e,r){const n=this.radius,i=n*n,s=t+.5*Math.PI,o=e*e+i-2*Math.cos(s)*e*n,c=Math.sqrt(o),u=o-i;if(u<=0)return.5;const a=Math.sqrt(u),h=Math.acos(a/c)-Math.asin(n/(c/Math.sin(s)));return Math.min(1,(h+.5*r)/r)}_angleToSilhouette(t){const e=(0,o.e)(d.rq.get(),t,this.center),r=(0,o.b)(e),i=this.radius,s=i+Math.abs(i-r);return(0,n.XM)(i/s)}union(t){const e=(0,o.C)(this._center,t.center),r=this.radius,n=t.radius;return e+n<r?this:e+r<n?(this.copy(t),this):((0,o.l)(this._center,this._center,t.center,(e+n-r)/(2*e)),this.radius=(e+r+n)/2,this)}toJSON(){return{center:this.center,radius:this.radius}}}const E={create:t=>new l(t),copy:(t,e)=>e.copy(t),setExtent:(t,e,r)=>r.copy(t),getExtent:(t,e)=>e,elevate:(t,e,r)=>(r.copy(t),r.radius+=e,r),axisAt(t,e,r,n){const i=(0,o.e)(g,e,t.center);switch(r){case 0:{const t=f(i,g)[2];return(0,o.h)(n,-Math.sin(t),Math.cos(t),0)}case 1:{const t=f(i,g),e=t[1],r=t[2],s=Math.sin(e);return(0,o.h)(n,-s*Math.cos(r),-s*Math.sin(r),Math.cos(e))}case 2:return(0,o.n)(n,i);default:return}},altitudeAt(t,e){const r=(0,o.e)(p,e,t.center);return(0,o.b)(r)-t.radius},setAltitudeAt(t,e,r,n){const i=E.altitudeAt(t,e),s=E.axisAt(t,e,2,p),c=(0,o.j)(p,s,r-i);return(0,o.i)(n,e,c)},intersectRay:(t,e,r)=>t.intersectRay(e,r),closestPoint:(t,e,r)=>t.intersectRay(e,r)?r:((0,h.oC)(e,t.center,r),t.projectPoint(r,r)),intersectRayClosestSilhouette(t,e,r){if(t.intersectRay(e,r))return r;const n=t.closestPointOnSilhouette(e,d.rq.get());return(0,o.i)(r,e.origin,(0,o.j)(d.rq.get(),e.direction,(0,o.C)(e.origin,n)/(0,o.b)(e.direction))),r},closestPointOnSilhouette:(t,e,r)=>t.closestPointOnSilhouette(e,r),distanceToSilhouette(t,e){const r=(0,o.e)(d.rq.get(),e,t.center),n=(0,o.E)(r),i=t.radius**2;return Math.sqrt(Math.abs(n-i))}},R=(new l,{t0:0,t1:0}),A=(0,c.vt)(),g=(0,c.vt)(),p=(0,c.vt)()},97146:(t,e,r)=>{r.d(e,{Dg:()=>s,my:()=>o,tM:()=>h,uW:()=>i});var n=r(34275);function i(t){return s(t,!0)}function s(t,e){if(Array.isArray(t)){if(t.length<n.y9)return t}else if(t.length<n.y9)return Array.from(t);let r=!0,i=!0;return t.some((t,e)=>(r=r&&0===t,i=i&&t===e,!r&&!i)),r?function(t){if(1===t)return u;if(t<n.y9)return new Array(t).fill(0);if(t>_.length){const e=Math.max(2*_.length,t);_=new Uint8Array(e)}return new Uint8Array(_.buffer,0,t)}(t.length):i?h(t.length):(0,n.iu)(t)&&t.BYTES_PER_ELEMENT===Uint16Array.BYTES_PER_ELEMENT?t:function(t,e){for(const r of t){if(r>=65536)return(0,n.iu)(t)?t:new Uint32Array(t);r>=256&&(e=!1)}return e?new Uint8Array(t):new Uint16Array(t)}(t,!e)}function o(t){return t<=n.y9?new Array(t):t<=65536?new Uint16Array(t):new Uint32Array(t)}let c=f(131072);const u=[0],a=(()=>{const t=new Uint16Array(65536);for(let e=0;e<t.length;++e)t[e]=e;return t})();function h(t){return 1===t?u:t<n.y9?Array.from(new Uint16Array(a.buffer,0,t)):t<a.length?new Uint16Array(a.buffer,0,t):(t>c.length&&(c=f(Math.max(2*c.length,t))),new Uint32Array(c.buffer,0,t))}function f(t){const e=new Uint32Array(t);for(let t=0;t<e.length;t++)e[t]=t;return e}let _=new Uint8Array(65536)}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[4038],{51530:(e,t,s)=>{s.d(t,{KB:()=>a,Xi:()=>r,pn:()=>o,x3:()=>n});var i=s(44208);class r{constructor(e){this.data=e,this.type="encoded-mesh-texture",this.encoding="image/ktx2"}}function n(e){return"encoded-mesh-texture"===e?.type}async function a(e){const t=new Blob([e]),s=await t.text();return JSON.parse(s)}async function o(e,t){if("image/ktx2"===t)return new r(e);const s=new Blob([e],{type:t});let n=URL.createObjectURL(s);switch(t){case"image/jpeg":n+="#.jpg";break;case"image/png":n+="#.png"}const a=new Image;if((0,i.A)("esri-iPhone"))return new Promise((e,t)=>{const s=()=>{r(),e(a)},i=e=>{r(),t(e)},r=()=>{URL.revokeObjectURL(n),a.removeEventListener("load",s),a.removeEventListener("error",i)};a.addEventListener("load",s),a.addEventListener("error",i),a.src=n});try{a.src=n,await a.decode()}catch(e){console.warn("Failed decoding HTMLImageElement")}return URL.revokeObjectURL(n),a}},63907:(e,t,s)=>{s.d(t,{$0:()=>f,CQ:()=>m,Fq:()=>d,H0:()=>n,SB:()=>c,WR:()=>i,XN:()=>a,iE:()=>o,ld:()=>h,nI:()=>p,pe:()=>r,r6:()=>l,vt:()=>u,yI:()=>_});const i={POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6},r={BYTE:5120,UNSIGNED_BYTE:5121,SHORT:5122,UNSIGNED_SHORT:5123,INT:5124,UNSIGNED_INT:5125,FLOAT:5126,HALF_FLOAT:5131},n={RGBA4:32854,R16F:33325,RG16F:33327,RGB32F:34837,RGBA16F:34842,R32F:33326,RG32F:33328,RGBA32F:34836,R11F_G11F_B10F:35898,RGB8:32849,RGBA8:32856,RGB5_A1:32855,R8:33321,RG8:33323,R8I:33329,R8UI:33330,R16I:33331,R16UI:33332,R32I:33333,R32UI:33334,RG8I:33335,RG8UI:33336,RG16I:33337,RG16UI:33338,RG32I:33339,RG32UI:33340,RGB16F:34843,RGB9_E5:35901,SRGB8:35905,SRGB8_ALPHA8:35907,RGB565:36194,RGBA32UI:36208,RGB32UI:36209,RGBA16UI:36214,RGB16UI:36215,RGBA8UI:36220,RGB8UI:36221,RGBA32I:36226,RGB32I:36227,RGBA16I:36232,RGB16I:36233,RGBA8I:36238,RGB8I:36239,R8_SNORM:36756,RG8_SNORM:36757,RGB8_SNORM:36758,RGBA8_SNORM:36759,RGB10_A2:32857,RGB10_A2UI:36975},a=Object.values(n),o={DEPTH24_STENCIL8:35056,DEPTH32F_STENCIL8:36013},c={DEPTH_COMPONENT16:33189,DEPTH_COMPONENT24:33190,DEPTH_COMPONENT32F:36012},h={FLOAT:r.FLOAT,UNSIGNED_BYTE:r.UNSIGNED_BYTE,UNSIGNED_INT_24_8:34042,UNSIGNED_SHORT_4_4_4_4:32819,UNSIGNED_SHORT_5_5_5_1:32820,UNSIGNED_SHORT_5_6_5:33635,BYTE:r.BYTE,UNSIGNED_SHORT:r.UNSIGNED_SHORT,SHORT:r.SHORT,UNSIGNED_INT:r.UNSIGNED_INT,INT:r.INT,HALF_FLOAT:5131,UNSIGNED_INT_2_10_10_10_REV:33640,UNSIGNED_INT_10F_11F_11F_REV:35899,UNSIGNED_INT_5_9_9_9_REV:35902,FLOAT_32_UNSIGNED_INT_24_8_REV:36269},u={Texture:0,TileTexture:1,BufferObject:2,VertexArrayObject:3,Shader:4,Program:5,FramebufferObject:6,Renderbuffer:7,TransformFeedback:8,Sync:9,UNCOUNTED:10,LinesOfCode:10,Uniform:11,COUNT:12},f=0,l=36064,_=36065,d=36066,p=33306,m={COMPRESSED_RGB_S3TC_DXT1_EXT:33776,COMPRESSED_RGBA_S3TC_DXT1_EXT:33777,COMPRESSED_RGBA_S3TC_DXT3_EXT:33778,COMPRESSED_RGBA_S3TC_DXT5_EXT:33779,COMPRESSED_R11_EAC:37488,COMPRESSED_SIGNED_R11_EAC:37489,COMPRESSED_RG11_EAC:37490,COMPRESSED_SIGNED_RG11_EAC:37491,COMPRESSED_RGB8_ETC2:37492,COMPRESSED_SRGB8_ETC2:37493,COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2:37494,COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2:37495,COMPRESSED_RGBA8_ETC2_EAC:37496,COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:37497}},84038:(e,t,s)=>{s.r(t),s.d(t,{exportGLTF:()=>V,modelNameGlb:()=>v,modelNameGltf:()=>z,toBinaryGLTF:()=>H});var i=s(74887),r=s(4576);class n{constructor(){this.copyright="",this.defaultScene=0,this.generator="",this._scenes=[]}addScene(e){if(this._scenes.includes(e))throw new Error("Scene already added");this._scenes.push(e)}removeScene(e){(0,r.TF)(this._scenes,e)}forEachScene(e){this._scenes.forEach(e)}}class a{static{this.HEADER_SIZE=12}static{this.CHUNK_HEADER_SIZE=8}static{this.MAGIC=1179937895}static{this.VERSION=2}constructor(e,t){if(!e)throw new Error("GLB requires a JSON gltf chunk");this._length=a.HEADER_SIZE,this._length+=a.CHUNK_HEADER_SIZE;const s=function(e){return(new TextEncoder).encode(e).buffer}(e);if(this._length+=o(s.byteLength,4),t&&(this._length+=a.CHUNK_HEADER_SIZE,this._length+=t.byteLength,t.byteLength%4))throw new Error("Expected BIN chunk length to be divisible by 4 at this point");this.buffer=new ArrayBuffer(this._length),this._outView=new DataView(this.buffer),this._writeHeader();const i=this._writeChunk(s,12,1313821514,32);t&&this._writeChunk(t,i,5130562)}_writeHeader(){this._outView.setUint32(0,a.MAGIC,!0),this._outView.setUint32(4,a.VERSION,!0),this._outView.setUint32(8,this._length,!0)}_writeChunk(e,t,s,i=0){const r=o(e.byteLength,4);for(this._outView.setUint32(t,r,!0),this._outView.setUint32(t+=4,s,!0),function(e,t,s,i,r){new Uint8Array(e,s,r).set(new Uint8Array(t,0,r),0)}(this._outView.buffer,e,t+=4,0,e.byteLength),t+=e.byteLength;t%4;)i&&this._outView.setUint8(t,i),t++;return t}}function o(e,t){return t*Math.ceil(e/t)}var c=s(40876),h=s(53966),u=s(91869),f=s(34727),l=s(67026),_=s(82534),d=s(38954),p=s(51850),m=s(80882),g=s(72258),T=s(63907);class E{constructor(e,t,s,i,r){this._buffer=e,this._componentType=s,this._dataType=i,this._data=[],this._isFinalized=!1,this._accessorIndex=-1,this._accessorAttribute=null,this._accessorMin=null,this._accessorMax=null,t.bufferViews||(t.bufferViews=[]),this.index=t.bufferViews.length,this._bufferView={buffer:e.index,byteLength:-1,target:r};const n=this._getElementSize();n>=4&&34963!==r&&(this._bufferView.byteStride=n),t.bufferViews.push(this._bufferView),this._numComponentsForDataType=this._calculateNumComponentsForDataType()}push(e){const t=this._data.length;if(this._data.push(e),this._accessorIndex>=0){const s=t%this._numComponentsForDataType,i=this._accessorMin[s];this._accessorMin[s]="number"!=typeof i?e:Math.min(i,e);const r=this._accessorMax[s];this._accessorMax[s]="number"!=typeof r?e:Math.max(r,e)}}get dataSize(){return this._data.length*this._sizeComponentType()}get byteSize(){return e=this.dataSize,4*Math.ceil(e/4);var e}getByteOffset(){if(!this._isFinalized)throw new Error("Cannot get BufferView offset until it is finalized");return this._buffer.getByteOffset(this)}get byteOffset(){if(!this._isFinalized)throw new Error("Cannot get BufferView offset until it is finalized");return this._buffer.getByteOffset(this)}_createTypedArray(e,t){switch(this._componentType){case T.pe.BYTE:return new Int8Array(e,t);case T.pe.FLOAT:return new Float32Array(e,t);case T.pe.SHORT:return new Int16Array(e,t);case T.pe.UNSIGNED_BYTE:return new Uint8Array(e,t);case T.pe.UNSIGNED_INT:return new Uint32Array(e,t);case T.pe.UNSIGNED_SHORT:return new Uint16Array(e,t)}}writeOutToBuffer(e,t){this._createTypedArray(e,t).set(this._data)}writeAsync(e){if(this._asyncWritePromise)throw new Error("Can't write multiple bufferView values asynchronously");return this._asyncWritePromise=e.then(e=>{const t=new Uint8Array(e);for(let e=0;e<t.length;++e)this._data.push(t[e]);delete this._asyncWritePromise}),this._asyncWritePromise}startAccessor(e){if(this._accessorIndex>=0)throw new Error("Accessor was started without ending the previous one");this._accessorIndex=this._data.length,this._accessorAttribute=e;const t=this._numComponentsForDataType;this._accessorMin=new Array(t),this._accessorMax=new Array(t)}endAccessor(){if(this._accessorIndex<0)throw new Error("An accessor was not started, but was attempted to be ended");const e=this._getElementSize(),t=this._numComponentsForDataType,s=(this._data.length-this._accessorIndex)/t;if(s%1)throw new Error("An accessor was ended with missing component values");for(let e=0;e<this._accessorMin.length;++e)"number"!=typeof this._accessorMin[e]&&(this._accessorMin[e]=0),"number"!=typeof this._accessorMax[e]&&(this._accessorMax[e]=0);const i={byteOffset:e*(this._accessorIndex/t),componentType:this._componentType,count:s,type:this._dataType,min:this._accessorMin,max:this._accessorMax,name:this._accessorAttribute};switch(this._accessorAttribute){case"TEXCOORD_0":case"TEXCOORD_1":case"COLOR_0":case"WEIGHTS_0":switch(this._componentType){case T.pe.UNSIGNED_BYTE:case T.pe.UNSIGNED_SHORT:i.normalized=!0}}return this._accessorIndex=-1,this._accessorAttribute=null,this._accessorMin=null,this._accessorMax=null,i}get finalized(){return this._finalizedPromise?this._finalizedPromise:this._isFinalized?this._finalizedPromise=Promise.resolve():this._finalizedPromise=new Promise(e=>this._finalizedPromiseResolve=e)}async finalize(){const e=this._bufferView,t=this._buffer.getViewFinalizePromises(this);this._asyncWritePromise&&t.push(this._asyncWritePromise),await Promise.allSettled(t),this._isFinalized=!0,e.byteOffset=this.getByteOffset(),e.byteLength=this.dataSize,this._finalizedPromiseResolve&&this._finalizedPromiseResolve()}_getElementSize(){return this._sizeComponentType()*this._numComponentsForDataType}_sizeComponentType(){switch(this._componentType){case T.pe.BYTE:case T.pe.UNSIGNED_BYTE:return 1;case T.pe.SHORT:case T.pe.UNSIGNED_SHORT:return 2;case T.pe.UNSIGNED_INT:case T.pe.FLOAT:return 4}}_calculateNumComponentsForDataType(){switch(this._dataType){case"SCALAR":return 1;case"VEC2":return 2;case"VEC3":return 3;case"VEC4":case"MAT2":return 4;case"MAT3":return 9;case"MAT4":return 16}}}class w{constructor(e){this._gltf=e,this._bufferViews=[],this._isFinalized=!1,e.buffers||(e.buffers=[]),this.index=e.buffers.length;const t={byteLength:-1};e.buffers.push(t),this._buffer=t}addBufferView(e,t,s){if(this._finalizePromise)throw new Error("Cannot add buffer view after fiinalizing buffer");const i=new E(this,this._gltf,e,t,s);return this._bufferViews.push(i),i}getByteOffset(e){let t=0;for(const s of this._bufferViews){if(s===e)return t;t+=s.byteSize}throw new Error("Given bufferView was not present in this buffer")}getViewFinalizePromises(e){const t=[];for(const s of this._bufferViews){if(e&&s===e)return t;t.push(s.finalized)}return t}getArrayBuffer(){if(!this._isFinalized)throw new Error("Cannot get ArrayBuffer from Buffer before it is finalized");const e=this._getTotalSize(),t=new ArrayBuffer(e);let s=0;for(const e of this._bufferViews)e.writeOutToBuffer(t,s),s+=e.byteSize;return t}finalize(){if(this._finalizePromise)throw new Error(`Buffer ${this.index} was already finalized`);return this._finalizePromise=Promise.allSettled(this.getViewFinalizePromises()).then(()=>{this._isFinalized=!0;const e=this.getArrayBuffer();this._buffer.byteLength=e.byteLength,this._buffer.uri=e}),this._gltf.extras.promises.push(this._finalizePromise),this._finalizePromise}_getTotalSize(){let e=0;for(const t of this._bufferViews)e+=t.byteSize;return e}}function R(e,t){if(e.components)for(const s of e.components)s.faces&&"smooth"===s.shading&&S(s.faces,t)}function S(e,t){null==t.normal&&(t.normal=new Float32Array(t.position.length));const{position:s,normal:i}=t,r=e.length/3;for(let t=0;t<r;++t){const r=3*e[3*t],n=3*e[3*t+1],a=3*e[3*t+2],o=(0,d.h)(b,s[r],s[r+1],s[r+2]),c=(0,d.h)(A,s[n],s[n+1],s[n+2]),h=(0,d.h)(N,s[a],s[a+1],s[a+2]),u=(0,d.e)(c,c,o),f=(0,d.e)(h,h,o),l=(0,d.f)(u,u,f);i[r]+=l[0],i[r+1]+=l[1],i[r+2]+=l[2],i[n]+=l[0],i[n+1]+=l[1],i[n+2]+=l[2],i[a]+=l[0],i[a+1]+=l[1],i[a+2]+=l[2]}for(let e=0;e<i.length;e+=3)(0,d.h)(y,i[e],i[e+1],i[e+2]),(0,d.n)(y,y),i[e]=y[0],i[e+1]=y[1],i[e+2]=y[2]}const b=(0,p.vt)(),A=(0,p.vt)(),N=(0,p.vt)(),y=(0,p.vt)();s(44208);var I=s(49186),x=s(84952);async function O(e,t){const s=C(e);if(null==s)throw new I.A("imageToArrayBuffer","Unsupported image type");const r=function(e){if(!(e instanceof HTMLImageElement))return"image/png";const t=e.src;if((0,x.DB)(t)){const e=(0,x.r$)(t);return"image/jpeg"===e?.mediaType?e.mediaType:"image/png"}return/\.png$/i.test(t)?"image/png":/\.(jpg|jpeg)$/i.test(t)?"image/jpeg":"image/png"}(e),n=await new Promise(e=>s.toBlob(e,r));if((0,i.Te)(t),!n)throw new I.A("imageToArrayBuffer","Failed to encode image");const a=await n.arrayBuffer();return(0,i.Te)(t),{data:a,type:r}}function C(e){if(e instanceof HTMLCanvasElement)return e;if(e instanceof HTMLVideoElement)return null;const t=document.createElement("canvas");t.width=e.width,t.height=e.height;const s=t.getContext("2d");return e instanceof HTMLImageElement?s.drawImage(e,0,0,e.width,e.height):e instanceof ImageData&&s.putImageData(e,0,0),t}var B=s(51530);const G=()=>h.A.getLogger("esri.geometry.support.meshUtils.exporters.gltf.gltf");class M{constructor(e,t){this.options=t,this._materialMap=new Array,this._imageMap=new Map,this._textureMap=new Map,this.gltf={asset:{version:"2.0",copyright:e.copyright,generator:e.generator},extras:{output:t.output,binChunkBuffer:null,promises:[]}},this._addScenes(e)}_addScenes(e){this.gltf.scene=e.defaultScene;const t=this.gltf.extras,s=2===t.output.buffer||2===t.output.image;s&&(t.binChunkBuffer=new w(this.gltf)),e.forEachScene(e=>{this._addScene(e)}),s&&t.binChunkBuffer.finalize()}_addScene(e){this.gltf.scenes||(this.gltf.scenes=[]);const t={};e.name&&(t.name=e.name),e.forEachNode(e=>{t.nodes||(t.nodes=[]),t.nodes.push(...this._addNodes(e))}),this.gltf.scenes.push(t)}_addNodes(e){this.gltf.nodes||(this.gltf.nodes=[]);const t={};e.name&&(t.name=e.name);const s=e.translation;(0,d.m)(s,p.uY)||(t.translation=(0,p.o8)(s));const i=e.rotation;(0,l.t2)(i,_.zK)||(t.rotation=(0,_.o8)(i));const r=e.scale;(0,d.m)(r,p.Un)||(t.scale=(0,p.o8)(r));const n=this.gltf.nodes.length;if(this.gltf.nodes.push(t),e.mesh&&e.mesh.vertexAttributes.position){const s=this._createMeshes(e.mesh),i=[n];if(1===s.length)this._addMesh(t,s[0]);else for(const e of s){const t={};this._addMesh(t,e),i.push(this.gltf.nodes.length),this.gltf.nodes.push(t)}return i}return e.forEachNode(e=>{t.children||(t.children=[]),t.children.push(...this._addNodes(e))}),[n]}_addMesh(e,t){this.gltf.meshes??=[];const s=this.gltf.meshes.length;this.gltf.meshes.push(t),e.mesh=s}_createMeshes(e){const t=this.gltf.extras,s=2===t.output.buffer;let i;i=s?t.binChunkBuffer:new w(this.gltf);const r=this.options.origin,n=e.vertexSpace.clone();n.origin=[r.x,r.y,r.z??0];const a=(0,g.UR)({vertexAttributes:e.vertexAttributes,vertexSpace:e.vertexSpace,transform:this.options?.ignoreLocalTransform?null:e.transform,spatialReference:e.spatialReference},n,{targetUnit:this.options.unitConversionDisabled?void 0:"meters"});if(!a)return[];R(e,a),U(a);const{position:o,normal:c,tangent:h}=a,{uv:u,color:f}=e.vertexAttributes,l=i.addBufferView(T.pe.FLOAT,"VEC3",34962);let _,d,p,m;c&&(_=i.addBufferView(T.pe.FLOAT,"VEC3",34962)),u&&(d=i.addBufferView(T.pe.FLOAT,"VEC2",34962)),h&&(p=i.addBufferView(T.pe.FLOAT,"VEC4",34962)),f&&(m=i.addBufferView(T.pe.FLOAT,"VEC4",34962)),l.startAccessor("POSITION"),_&&_.startAccessor("NORMAL"),d&&d.startAccessor("TEXCOORD_0"),p&&p.startAccessor("TANGENT"),m&&m.startAccessor("COLOR_0");const E=a.position.length/3;for(let e=0;e<E;++e)l.push(o[3*e]),l.push(o[3*e+1]),l.push(o[3*e+2]),_&&null!=c&&(_.push(c[3*e]),_.push(c[3*e+1]),_.push(c[3*e+2])),d&&null!=u&&(d.push(u[2*e]),d.push(u[2*e+1])),p&&null!=h&&(p.push(h[4*e]),p.push(h[4*e+1]),p.push(h[4*e+2]),p.push(h[4*e+3])),m&&null!=f&&(m.push(L(f[4*e]/255)),m.push(L(f[4*e+1]/255)),m.push(L(f[4*e+2]/255)),m.push(f[4*e+3]/255));const S=l.endAccessor(),b=this._addAccessor(l.index,S);let A,N,y,I,x;if(_){const e=_.endAccessor();A=this._addAccessor(_.index,e)}if(d){const e=d.endAccessor();N=this._addAccessor(d.index,e)}if(p){const e=p.endAccessor();y=this._addAccessor(p.index,e)}if(m){const e=m.endAccessor();I=this._addAccessor(m.index,e)}const O=[];return e.components&&e.components.length>0&&e.components[0].faces?(x=i.addBufferView(T.pe.UNSIGNED_INT,"SCALAR",34963),this._addMeshVertexIndexed(x,e.components,O,b,A,N,y,I)):this._addMeshVertexNonIndexed(e.components,O,b,A,N,y,I),l.finalize(),_?.finalize(),d?.finalize(),p?.finalize(),x?.finalize(),m?.finalize(),s||i.finalize(),O}_addMaterial(e){if(null==e)return;const t=this._materialMap.indexOf(e);if(-1!==t)return t;this.gltf.materials||(this.gltf.materials=[]);const s={};switch(e.alphaMode){case"mask":s.alphaMode="MASK";break;case"auto":case"blend":s.alphaMode="BLEND"}s.alphaCutoff=e.alphaCutoff,e.doubleSided&&(s.doubleSided=e.doubleSided),s.pbrMetallicRoughness={};const i=e=>{const t=e.toRgba();return t[0]=L(t[0]/255),t[1]=L(t[1]/255),t[2]=L(t[2]/255),t};if(null!=e.color&&(s.pbrMetallicRoughness.baseColorFactor=i(e.color)),null!=e.colorTexture&&(s.pbrMetallicRoughness.baseColorTexture=this._createTextureInfo(e.colorTexture,e.colorTextureTransform)),null!=e.normalTexture&&(s.normalTexture=this._createTextureInfo(e.normalTexture,e.normalTextureTransform)),e instanceof m.A){if(null!=e.emissiveTexture&&(s.emissiveTexture=this._createTextureInfo(e.emissiveTexture,e.emissiveTextureTransform)),null!=e.emissiveColor){const t=i(e.emissiveColor);s.emissiveFactor=[t[0],t[1],t[2]]}null!=e.occlusionTexture&&(s.occlusionTexture=this._createTextureInfo(e.occlusionTexture,e.occlusionTextureTransform)),null!=e.metallicRoughnessTexture&&(s.pbrMetallicRoughness.metallicRoughnessTexture=this._createTextureInfo(e.metallicRoughnessTexture,e.metallicRoughnessTextureTransform)),s.pbrMetallicRoughness.metallicFactor=e.metallic,s.pbrMetallicRoughness.roughnessFactor=e.roughness}else s.pbrMetallicRoughness.metallicFactor=1,s.pbrMetallicRoughness.roughnessFactor=1,G().warnOnce("Meshes exported to GLTF without MeshMaterialMetallicRoughness material will appear different when imported back.");const r=this.gltf.materials.length;return this.gltf.materials.push(s),this._materialMap.push(e),r}_createTextureInfo(e,t){const s={index:this._addTexture(e)};return t?(s.extensions||(s.extensions={}),s.extensions.KHR_texture_transform={scale:t.scale,offset:t.offset,rotation:(0,f.kU)(t.rotation)},s):s}_addTexture(e){const t=this.gltf.textures??[];return this.gltf.textures=t,(0,u.tE)(this._textureMap,e,()=>{const s={sampler:this._addSampler(e),source:this._addImage(e)},i=t.length;return t.push(s),i})}_addImage(e){const t=this._imageMap.get(e);if(null!=t)return t;this.gltf.images||(this.gltf.images=[]);const s={};if(e.url)s.uri=e.url;else{const t=e.data;s.extras=t;for(let e=0;e<this.gltf.images.length;++e)if(t===this.gltf.images[e].extras)return e;const i=this.gltf.extras;switch(i.output.image){case 2:{const e=i.binChunkBuffer.addBufferView(T.pe.UNSIGNED_BYTE,"SCALAR");if((0,B.x3)(t))null!=t.data&&e.writeOutToBuffer(t.data.buffer,0);else{const r=O(t,this.options.signal).then(({data:e,type:t})=>(s.mimeType=t,e));i.promises.push(e.writeAsync(r).then(()=>e.finalize()))}s.bufferView=e.index;break}case 1:if((0,B.x3)(t)){G().warnOnce("Image export for basis compressed textures not available.");break}s.uri=function(e){const t=C(e);return null!=t?t.toDataURL():""}(t);break;default:if((0,B.x3)(t)){G().warnOnce("Image export for basis compressed textures not available.");break}i.promises.push(O(t,this.options.signal).then(({data:e,type:t})=>{s.uri=e,s.mimeType=t}))}}const i=this.gltf.images.length;return this.gltf.images.push(s),this._imageMap.set(e,i),i}_addSampler(e){this.gltf.samplers||(this.gltf.samplers=[]);let t=10497,s=10497;if("string"==typeof e.wrap)switch(e.wrap){case"clamp":t=33071,s=33071;break;case"mirror":t=33648,s=33648}else{switch(e.wrap.vertical){case"clamp":s=33071;break;case"mirror":s=33648}switch(e.wrap.horizontal){case"clamp":t=33071;break;case"mirror":t=33648}}const i={wrapS:t,wrapT:s};for(let e=0;e<this.gltf.samplers.length;++e)if(JSON.stringify(i)===JSON.stringify(this.gltf.samplers[e]))return e;const r=this.gltf.samplers.length;return this.gltf.samplers.push(i),r}_addAccessor(e,t){this.gltf.accessors||(this.gltf.accessors=[]);const s={bufferView:e,byteOffset:t.byteOffset,componentType:t.componentType,count:t.count,type:t.type,min:t.min,max:t.max,name:t.name};t.normalized&&(s.normalized=!0);const i=this.gltf.accessors.length;return this.gltf.accessors.push(s),i}_addMeshVertexIndexed(e,t,s,i,r,n,a,o){const c=new Map;for(const h of t){if(e.startAccessor("INDICES"),h.faces)for(let t=0;t<h.faces.length;++t)e.push(h.faces[t]);const t=e.endAccessor(),u={attributes:{POSITION:i},indices:this._addAccessor(e.index,t),material:this._addMaterial(h.material)};r&&"flat"!==h.shading&&(u.attributes.NORMAL=r),n&&(u.attributes.TEXCOORD_0=n),a&&"flat"!==h.shading&&(u.attributes.TANGENT=a),o&&(u.attributes.COLOR_0=o);const f=c.get(h.name);if(f)f.primitives.push(u);else{const e={name:h.name,primitives:[u]};c.set(h.name,e),s.push(e)}}}_addMeshVertexNonIndexed(e,t,s,i,r,n,a){const o={primitives:[]};t.push(o);const c={attributes:{POSITION:s}};i&&(c.attributes.NORMAL=i),r&&(c.attributes.TEXCOORD_0=r),n&&(c.attributes.TANGENT=n),a&&(c.attributes.COLOR_0=a),e&&(c.material=this._addMaterial(e[0].material)),o.primitives.push(c)}}function U({position:e,normal:t,tangent:s}){D(e,3),D(t,3),D(s,4)}function D(e,t){if(null!=e)for(let s=1,i=2;s<e.length;s+=t,i+=t){const t=e[s],r=e[i];e[s]=r,e[i]=-t}}function L(e){return e**c.Tf}class F{constructor(e){this.mesh=e,this.name="",this.translation=(0,p.vt)(),this.rotation=(0,_.vt)(),this.scale=(0,p.o8)(p.Un),this._nodes=[]}addNode(e){if(this._nodes.includes(e))throw new Error("Node already added");this._nodes.push(e)}forEachNode(e){this._nodes.forEach(e)}set rotationAngles(e){(0,l.A6)(this.rotation,e[0],e[1],e[2])}}class P{constructor(){this.name="",this._nodes=[]}addNode(e){if(this._nodes.includes(e))throw new Error("Node already added");this._nodes.push(e)}forEachNode(e){this._nodes.forEach(e)}}const z="model.gltf",v="model.glb";async function V(e,t){const s=new M(e,t).gltf,r=s.extras.promises;let n=1,o=1,c=null;await Promise.allSettled(r),(0,i.Te)(t.signal);const h=t.jsonSpacing??4,u=new Map,f=JSON.stringify(s,(e,s)=>{if("extras"!==e){if(s instanceof ArrayBuffer){if(function(e){if(e.byteLength<8)return!1;const t=new Uint8Array(e);return 137===t[0]&&80===t[1]&&78===t[2]&&71===t[3]&&13===t[4]&&10===t[5]&&26===t[6]&&10===t[7]}(s))switch(t.output?.image){case 1:case 2:break;default:{const e=`img${o}.png`;return o++,u.set(e,s),e}}switch(t.output?.buffer){case 1:return function(e){const t=[],s=new Uint8Array(e);for(let e=0;e<s.length;e++)t.push(String.fromCharCode(s[e]));return"data:application/octet-stream;base64,"+btoa(t.join(""))}(s);case 2:if(c)throw new Error("Already encountered an ArrayBuffer, there should only be one in the GLB format.");return void(c=s);default:{const e=`data${n}.bin`;return n++,u.set(e,s),e}}}return s}},h);return 2===t.output?.buffer||2===t.output?.image?u.set(v,new a(f,c).buffer):u.set(z,f),u}async function H(e,t){const s=new n,i=new P;return s.addScene(i),i.addNode(new F(e)),await async function(e,t){const s=(await V(e,{output:{buffer:2,image:2},jsonSpacing:0,...t})).get(v);if(!(s&&s instanceof ArrayBuffer))throw new Error("failed to export to glb");return s}(s,{origin:e.origin,...t})}}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[4038],{51530:(e,t,s)=>{s.d(t,{KB:()=>a,Xi:()=>r,pn:()=>o,x3:()=>n});var i=s(44208);class r{constructor(e){this.data=e,this.type="encoded-mesh-texture",this.encoding="image/ktx2"}}function n(e){return"encoded-mesh-texture"===e?.type}async function a(e){const t=new Blob([e]),s=await t.text();return JSON.parse(s)}async function o(e,t){if("image/ktx2"===t)return new r(e);const s=new Blob([e],{type:t});let n=URL.createObjectURL(s);switch(t){case"image/jpeg":n+="#.jpg";break;case"image/png":n+="#.png"}const a=new Image;if((0,i.A)("esri-iPhone"))return new Promise((e,t)=>{const s=()=>{r(),e(a)},i=e=>{r(),t(e)},r=()=>{URL.revokeObjectURL(n),a.removeEventListener("load",s),a.removeEventListener("error",i)};a.addEventListener("load",s),a.addEventListener("error",i),a.src=n});try{a.src=n,await a.decode()}catch(e){console.warn("Failed decoding HTMLImageElement")}return URL.revokeObjectURL(n),a}},63907:(e,t,s)=>{s.d(t,{$0:()=>f,CQ:()=>m,Fq:()=>d,H0:()=>n,SB:()=>c,WR:()=>i,XN:()=>a,iE:()=>o,ld:()=>h,nI:()=>p,pe:()=>r,r6:()=>l,vt:()=>u,yI:()=>_});const i={POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6},r={BYTE:5120,UNSIGNED_BYTE:5121,SHORT:5122,UNSIGNED_SHORT:5123,INT:5124,UNSIGNED_INT:5125,FLOAT:5126,HALF_FLOAT:5131},n={RGBA4:32854,R16F:33325,RG16F:33327,RGB32F:34837,RGBA16F:34842,R32F:33326,RG32F:33328,RGBA32F:34836,R11F_G11F_B10F:35898,RGB8:32849,RGBA8:32856,RGB5_A1:32855,R8:33321,RG8:33323,R8I:33329,R8UI:33330,R16I:33331,R16UI:33332,R32I:33333,R32UI:33334,RG8I:33335,RG8UI:33336,RG16I:33337,RG16UI:33338,RG32I:33339,RG32UI:33340,RGB16F:34843,RGB9_E5:35901,SRGB8:35905,SRGB8_ALPHA8:35907,RGB565:36194,RGBA32UI:36208,RGB32UI:36209,RGBA16UI:36214,RGB16UI:36215,RGBA8UI:36220,RGB8UI:36221,RGBA32I:36226,RGB32I:36227,RGBA16I:36232,RGB16I:36233,RGBA8I:36238,RGB8I:36239,R8_SNORM:36756,RG8_SNORM:36757,RGB8_SNORM:36758,RGBA8_SNORM:36759,RGB10_A2:32857,RGB10_A2UI:36975},a=Object.values(n),o={DEPTH24_STENCIL8:35056,DEPTH32F_STENCIL8:36013},c={DEPTH_COMPONENT16:33189,DEPTH_COMPONENT24:33190,DEPTH_COMPONENT32F:36012},h={FLOAT:r.FLOAT,UNSIGNED_BYTE:r.UNSIGNED_BYTE,UNSIGNED_INT_24_8:34042,UNSIGNED_SHORT_4_4_4_4:32819,UNSIGNED_SHORT_5_5_5_1:32820,UNSIGNED_SHORT_5_6_5:33635,BYTE:r.BYTE,UNSIGNED_SHORT:r.UNSIGNED_SHORT,SHORT:r.SHORT,UNSIGNED_INT:r.UNSIGNED_INT,INT:r.INT,HALF_FLOAT:5131,UNSIGNED_INT_2_10_10_10_REV:33640,UNSIGNED_INT_10F_11F_11F_REV:35899,UNSIGNED_INT_5_9_9_9_REV:35902,FLOAT_32_UNSIGNED_INT_24_8_REV:36269},u={Texture:0,TileTexture:1,BufferObject:2,VertexArrayObject:3,Shader:4,Program:5,FramebufferObject:6,Renderbuffer:7,TransformFeedback:8,Sync:9,UNCOUNTED:10,LinesOfCode:10,Uniform:11,COUNT:12},f=0,l=36064,_=36065,d=36066,p=33306,m={COMPRESSED_RGB_S3TC_DXT1_EXT:33776,COMPRESSED_RGBA_S3TC_DXT1_EXT:33777,COMPRESSED_RGBA_S3TC_DXT3_EXT:33778,COMPRESSED_RGBA_S3TC_DXT5_EXT:33779,COMPRESSED_R11_EAC:37488,COMPRESSED_SIGNED_R11_EAC:37489,COMPRESSED_RG11_EAC:37490,COMPRESSED_SIGNED_RG11_EAC:37491,COMPRESSED_RGB8_ETC2:37492,COMPRESSED_SRGB8_ETC2:37493,COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2:37494,COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2:37495,COMPRESSED_RGBA8_ETC2_EAC:37496,COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:37497}},84038:(e,t,s)=>{s.r(t),s.d(t,{exportGLTF:()=>V,modelNameGlb:()=>z,modelNameGltf:()=>P,toBinaryGLTF:()=>H});var i=s(74887),r=s(4576);class n{constructor(){this.copyright="",this.defaultScene=0,this.generator="",this._scenes=[]}addScene(e){if(this._scenes.includes(e))throw new Error("Scene already added");this._scenes.push(e)}removeScene(e){(0,r.TF)(this._scenes,e)}forEachScene(e){this._scenes.forEach(e)}}class a{static{this.HEADER_SIZE=12}static{this.CHUNK_HEADER_SIZE=8}static{this.MAGIC=1179937895}static{this.VERSION=2}constructor(e,t){if(!e)throw new Error("GLB requires a JSON gltf chunk");this._length=a.HEADER_SIZE,this._length+=a.CHUNK_HEADER_SIZE;const s=function(e){return(new TextEncoder).encode(e).buffer}(e);if(this._length+=o(s.byteLength,4),t&&(this._length+=a.CHUNK_HEADER_SIZE,this._length+=t.byteLength,t.byteLength%4))throw new Error("Expected BIN chunk length to be divisible by 4 at this point");this.buffer=new ArrayBuffer(this._length),this._outView=new DataView(this.buffer),this._writeHeader();const i=this._writeChunk(s,12,1313821514,32);t&&this._writeChunk(t,i,5130562)}_writeHeader(){this._outView.setUint32(0,a.MAGIC,!0),this._outView.setUint32(4,a.VERSION,!0),this._outView.setUint32(8,this._length,!0)}_writeChunk(e,t,s,i=0){const r=o(e.byteLength,4);for(this._outView.setUint32(t,r,!0),this._outView.setUint32(t+=4,s,!0),function(e,t,s,i,r){new Uint8Array(e,s,r).set(new Uint8Array(t,0,r),0)}(this._outView.buffer,e,t+=4,0,e.byteLength),t+=e.byteLength;t%4;)i&&this._outView.setUint8(t,i),t++;return t}}function o(e,t){return t*Math.ceil(e/t)}var c=s(40876),h=s(53966),u=s(91869),f=s(34727),l=s(67026),_=s(82534),d=s(38954),p=s(51850),m=s(80882),g=s(72258),T=s(63907);class E{constructor(e,t,s,i,r){this._buffer=e,this._componentType=s,this._dataType=i,this._data=[],this._isFinalized=!1,this._accessorIndex=-1,this._accessorAttribute=null,this._accessorMin=null,this._accessorMax=null,t.bufferViews||(t.bufferViews=[]),this.index=t.bufferViews.length,this._bufferView={buffer:e.index,byteLength:-1,target:r};const n=this._getElementSize();n>=4&&34963!==r&&(this._bufferView.byteStride=n),t.bufferViews.push(this._bufferView),this._numComponentsForDataType=this._calculateNumComponentsForDataType()}push(e){const t=this._data.length;if(this._data.push(e),this._accessorIndex>=0){const s=t%this._numComponentsForDataType,i=this._accessorMin[s];this._accessorMin[s]="number"!=typeof i?e:Math.min(i,e);const r=this._accessorMax[s];this._accessorMax[s]="number"!=typeof r?e:Math.max(r,e)}}get dataSize(){return this._data.length*this._sizeComponentType()}get byteSize(){return e=this.dataSize,4*Math.ceil(e/4);var e}getByteOffset(){if(!this._isFinalized)throw new Error("Cannot get BufferView offset until it is finalized");return this._buffer.getByteOffset(this)}get byteOffset(){if(!this._isFinalized)throw new Error("Cannot get BufferView offset until it is finalized");return this._buffer.getByteOffset(this)}_createTypedArray(e,t){switch(this._componentType){case T.pe.BYTE:return new Int8Array(e,t);case T.pe.FLOAT:return new Float32Array(e,t);case T.pe.SHORT:return new Int16Array(e,t);case T.pe.UNSIGNED_BYTE:return new Uint8Array(e,t);case T.pe.UNSIGNED_INT:return new Uint32Array(e,t);case T.pe.UNSIGNED_SHORT:return new Uint16Array(e,t)}}writeOutToBuffer(e,t){this._createTypedArray(e,t).set(this._data)}writeAsync(e){if(this._asyncWritePromise)throw new Error("Can't write multiple bufferView values asynchronously");return this._asyncWritePromise=e.then(e=>{const t=new Uint8Array(e);for(let e=0;e<t.length;++e)this._data.push(t[e]);delete this._asyncWritePromise}),this._asyncWritePromise}startAccessor(e){if(this._accessorIndex>=0)throw new Error("Accessor was started without ending the previous one");this._accessorIndex=this._data.length,this._accessorAttribute=e;const t=this._numComponentsForDataType;this._accessorMin=new Array(t),this._accessorMax=new Array(t)}endAccessor(){if(this._accessorIndex<0)throw new Error("An accessor was not started, but was attempted to be ended");const e=this._getElementSize(),t=this._numComponentsForDataType,s=(this._data.length-this._accessorIndex)/t;if(s%1)throw new Error("An accessor was ended with missing component values");for(let e=0;e<this._accessorMin.length;++e)"number"!=typeof this._accessorMin[e]&&(this._accessorMin[e]=0),"number"!=typeof this._accessorMax[e]&&(this._accessorMax[e]=0);const i={byteOffset:e*(this._accessorIndex/t),componentType:this._componentType,count:s,type:this._dataType,min:this._accessorMin,max:this._accessorMax,name:this._accessorAttribute};switch(this._accessorAttribute){case"TEXCOORD_0":case"TEXCOORD_1":case"COLOR_0":case"WEIGHTS_0":switch(this._componentType){case T.pe.UNSIGNED_BYTE:case T.pe.UNSIGNED_SHORT:i.normalized=!0}}return this._accessorIndex=-1,this._accessorAttribute=null,this._accessorMin=null,this._accessorMax=null,i}get finalized(){return this._finalizedPromise?this._finalizedPromise:this._isFinalized?this._finalizedPromise=Promise.resolve():this._finalizedPromise=new Promise(e=>this._finalizedPromiseResolve=e)}async finalize(){const e=this._bufferView,t=this._buffer.getViewFinalizePromises(this);this._asyncWritePromise&&t.push(this._asyncWritePromise),await Promise.allSettled(t),this._isFinalized=!0,e.byteOffset=this.getByteOffset(),e.byteLength=this.dataSize,this._finalizedPromiseResolve&&this._finalizedPromiseResolve()}_getElementSize(){return this._sizeComponentType()*this._numComponentsForDataType}_sizeComponentType(){switch(this._componentType){case T.pe.BYTE:case T.pe.UNSIGNED_BYTE:return 1;case T.pe.SHORT:case T.pe.UNSIGNED_SHORT:return 2;case T.pe.UNSIGNED_INT:case T.pe.FLOAT:return 4}}_calculateNumComponentsForDataType(){switch(this._dataType){case"SCALAR":return 1;case"VEC2":return 2;case"VEC3":return 3;case"VEC4":case"MAT2":return 4;case"MAT3":return 9;case"MAT4":return 16}}}class w{constructor(e){this._gltf=e,this._bufferViews=[],this._isFinalized=!1,e.buffers||(e.buffers=[]),this.index=e.buffers.length;const t={byteLength:-1};e.buffers.push(t),this._buffer=t}addBufferView(e,t,s){if(this._finalizePromise)throw new Error("Cannot add buffer view after fiinalizing buffer");const i=new E(this,this._gltf,e,t,s);return this._bufferViews.push(i),i}getByteOffset(e){let t=0;for(const s of this._bufferViews){if(s===e)return t;t+=s.byteSize}throw new Error("Given bufferView was not present in this buffer")}getViewFinalizePromises(e){const t=[];for(const s of this._bufferViews){if(e&&s===e)return t;t.push(s.finalized)}return t}getArrayBuffer(){if(!this._isFinalized)throw new Error("Cannot get ArrayBuffer from Buffer before it is finalized");const e=this._getTotalSize(),t=new ArrayBuffer(e);let s=0;for(const e of this._bufferViews)e.writeOutToBuffer(t,s),s+=e.byteSize;return t}finalize(){if(this._finalizePromise)throw new Error(`Buffer ${this.index} was already finalized`);return this._finalizePromise=Promise.allSettled(this.getViewFinalizePromises()).then(()=>{this._isFinalized=!0;const e=this.getArrayBuffer();this._buffer.byteLength=e.byteLength,this._buffer.uri=e}),this._gltf.extras.promises.push(this._finalizePromise),this._finalizePromise}_getTotalSize(){let e=0;for(const t of this._bufferViews)e+=t.byteSize;return e}}function R(e,t){if(e.components)for(const s of e.components)s.faces&&"smooth"===s.shading&&S(s.faces,t)}function S(e,t){null==t.normal&&(t.normal=new Float32Array(t.position.length));const{position:s,normal:i}=t,r=e.length/3;for(let t=0;t<r;++t){const r=3*e[3*t],n=3*e[3*t+1],a=3*e[3*t+2],o=(0,d.h)(b,s[r],s[r+1],s[r+2]),c=(0,d.h)(A,s[n],s[n+1],s[n+2]),h=(0,d.h)(N,s[a],s[a+1],s[a+2]),u=(0,d.e)(c,c,o),f=(0,d.e)(h,h,o),l=(0,d.f)(u,u,f);i[r]+=l[0],i[r+1]+=l[1],i[r+2]+=l[2],i[n]+=l[0],i[n+1]+=l[1],i[n+2]+=l[2],i[a]+=l[0],i[a+1]+=l[1],i[a+2]+=l[2]}for(let e=0;e<i.length;e+=3)(0,d.h)(y,i[e],i[e+1],i[e+2]),(0,d.n)(y,y),i[e]=y[0],i[e+1]=y[1],i[e+2]=y[2]}const b=(0,p.vt)(),A=(0,p.vt)(),N=(0,p.vt)(),y=(0,p.vt)();s(44208);var I=s(49186),x=s(84952);async function O(e,t){const s=C(e);if(null==s)throw new I.A("imageToArrayBuffer","Unsupported image type");const r=function(e){if(!(e instanceof HTMLImageElement))return"image/png";const t=e.src;if((0,x.DB)(t)){const e=(0,x.r$)(t);return"image/jpeg"===e?.mediaType?e.mediaType:"image/png"}return/\.png$/i.test(t)?"image/png":/\.(jpg|jpeg)$/i.test(t)?"image/jpeg":"image/png"}(e),n=await new Promise(e=>s.toBlob(e,r));if((0,i.Te)(t),!n)throw new I.A("imageToArrayBuffer","Failed to encode image");const a=await n.arrayBuffer();return(0,i.Te)(t),{data:a,type:r}}function C(e){if(e instanceof HTMLCanvasElement)return e;if(e instanceof HTMLVideoElement)return null;const t=document.createElement("canvas");t.width=e.width,t.height=e.height;const s=t.getContext("2d");return e instanceof HTMLImageElement?s.drawImage(e,0,0,e.width,e.height):e instanceof ImageData&&s.putImageData(e,0,0),t}var B=s(51530);const G=()=>h.A.getLogger("esri.geometry.support.meshUtils.exporters.gltf.gltf");class M{constructor(e,t){this.options=t,this._materialMap=new Array,this._imageMap=new Map,this._textureMap=new Map,this.gltf={asset:{version:"2.0",copyright:e.copyright,generator:e.generator},extras:{output:t.output,binChunkBuffer:null,promises:[]}},this._addScenes(e)}_addScenes(e){this.gltf.scene=e.defaultScene;const t=this.gltf.extras,s=2===t.output.buffer||2===t.output.image;s&&(t.binChunkBuffer=new w(this.gltf)),e.forEachScene(e=>{this._addScene(e)}),s&&t.binChunkBuffer.finalize()}_addScene(e){this.gltf.scenes||(this.gltf.scenes=[]);const t={};e.name&&(t.name=e.name),e.forEachNode(e=>{t.nodes||(t.nodes=[]),t.nodes.push(...this._addNodes(e))}),this.gltf.scenes.push(t)}_addNodes(e){this.gltf.nodes||(this.gltf.nodes=[]);const t={};e.name&&(t.name=e.name);const s=e.translation;(0,d.m)(s,p.uY)||(t.translation=(0,p.o8)(s));const i=e.rotation;(0,l.t2)(i,_.zK)||(t.rotation=(0,_.o8)(i));const r=e.scale;(0,d.m)(r,p.Un)||(t.scale=(0,p.o8)(r));const n=this.gltf.nodes.length;if(this.gltf.nodes.push(t),e.mesh&&e.mesh.vertexAttributes.position){const s=this._createMeshes(e.mesh),i=[n];if(1===s.length)this._addMesh(t,s[0]);else for(const e of s){const t={};this._addMesh(t,e),i.push(this.gltf.nodes.length),this.gltf.nodes.push(t)}return i}return e.forEachNode(e=>{t.children||(t.children=[]),t.children.push(...this._addNodes(e))}),[n]}_addMesh(e,t){this.gltf.meshes??=[];const s=this.gltf.meshes.length;this.gltf.meshes.push(t),e.mesh=s}_createMeshes(e){const t=this.gltf.extras,s=2===t.output.buffer;let i;i=s?t.binChunkBuffer:new w(this.gltf);const r=this.options.origin,n=e.vertexSpace.clone();n.origin=[r.x,r.y,r.z??0];const a=(0,g.UR)({vertexAttributes:e.vertexAttributes,vertexSpace:e.vertexSpace,transform:this.options?.ignoreLocalTransform?null:e.transform,spatialReference:e.spatialReference},n,{targetUnit:this.options.unitConversionDisabled?void 0:"meters"});if(!a)return[];R(e,a),U(a);const{position:o,normal:c,tangent:h}=a,{uv:u,color:f}=e.vertexAttributes,l=i.addBufferView(T.pe.FLOAT,"VEC3",34962);let _,d,p,m;c&&(_=i.addBufferView(T.pe.FLOAT,"VEC3",34962)),u&&(d=i.addBufferView(T.pe.FLOAT,"VEC2",34962)),h&&(p=i.addBufferView(T.pe.FLOAT,"VEC4",34962)),f&&(m=i.addBufferView(T.pe.FLOAT,"VEC4",34962)),l.startAccessor("POSITION"),_&&_.startAccessor("NORMAL"),d&&d.startAccessor("TEXCOORD_0"),p&&p.startAccessor("TANGENT"),m&&m.startAccessor("COLOR_0");const E=a.position.length/3;for(let e=0;e<E;++e)l.push(o[3*e]),l.push(o[3*e+1]),l.push(o[3*e+2]),_&&null!=c&&(_.push(c[3*e]),_.push(c[3*e+1]),_.push(c[3*e+2])),d&&null!=u&&(d.push(u[2*e]),d.push(u[2*e+1])),p&&null!=h&&(p.push(h[4*e]),p.push(h[4*e+1]),p.push(h[4*e+2]),p.push(h[4*e+3])),m&&null!=f&&(m.push(L(f[4*e]/255)),m.push(L(f[4*e+1]/255)),m.push(L(f[4*e+2]/255)),m.push(f[4*e+3]/255));const S=l.endAccessor(),b=this._addAccessor(l.index,S);let A,N,y,I,x;if(_){const e=_.endAccessor();A=this._addAccessor(_.index,e)}if(d){const e=d.endAccessor();N=this._addAccessor(d.index,e)}if(p){const e=p.endAccessor();y=this._addAccessor(p.index,e)}if(m){const e=m.endAccessor();I=this._addAccessor(m.index,e)}const O=[];return e.components&&e.components.length>0&&e.components[0].faces?(x=i.addBufferView(T.pe.UNSIGNED_INT,"SCALAR",34963),this._addMeshVertexIndexed(x,e.components,O,b,A,N,y,I)):this._addMeshVertexNonIndexed(e.components,O,b,A,N,y,I),l.finalize(),_?.finalize(),d?.finalize(),p?.finalize(),x?.finalize(),m?.finalize(),s||i.finalize(),O}_addMaterial(e){if(null==e)return;const t=this._materialMap.indexOf(e);if(-1!==t)return t;this.gltf.materials||(this.gltf.materials=[]);const s={};switch(e.alphaMode){case"mask":s.alphaMode="MASK";break;case"auto":case"blend":s.alphaMode="BLEND"}s.alphaCutoff=e.alphaCutoff,e.doubleSided&&(s.doubleSided=e.doubleSided),s.pbrMetallicRoughness={};const i=e=>{const t=e.toRgba();return t[0]=L(t[0]/255),t[1]=L(t[1]/255),t[2]=L(t[2]/255),t};if(null!=e.color&&(s.pbrMetallicRoughness.baseColorFactor=i(e.color)),null!=e.colorTexture&&(s.pbrMetallicRoughness.baseColorTexture=this._createTextureInfo(e.colorTexture,e.colorTextureTransform)),null!=e.normalTexture&&(s.normalTexture=this._createTextureInfo(e.normalTexture,e.normalTextureTransform)),e instanceof m.A){if(null!=e.emissiveTexture&&(s.emissiveTexture=this._createTextureInfo(e.emissiveTexture,e.emissiveTextureTransform)),null!=e.emissiveColor){const t=i(e.emissiveColor);s.emissiveFactor=[t[0],t[1],t[2]]}null!=e.emissiveStrength&&(s.extensions??={},s.extensions.KHR_materials_emissive_strength={emissiveStrength:e.emissiveStrength}),null!=e.occlusionTexture&&(s.occlusionTexture=this._createTextureInfo(e.occlusionTexture,e.occlusionTextureTransform)),null!=e.metallicRoughnessTexture&&(s.pbrMetallicRoughness.metallicRoughnessTexture=this._createTextureInfo(e.metallicRoughnessTexture,e.metallicRoughnessTextureTransform)),s.pbrMetallicRoughness.metallicFactor=e.metallic,s.pbrMetallicRoughness.roughnessFactor=e.roughness}else s.pbrMetallicRoughness.metallicFactor=1,s.pbrMetallicRoughness.roughnessFactor=1,G().warnOnce("Meshes exported to GLTF without MeshMaterialMetallicRoughness material will appear different when imported back.");const r=this.gltf.materials.length;return this.gltf.materials.push(s),this._materialMap.push(e),r}_createTextureInfo(e,t){const s={index:this._addTexture(e)};return t?(s.extensions||(s.extensions={}),s.extensions.KHR_texture_transform={scale:t.scale,offset:t.offset,rotation:(0,f.kU)(t.rotation)},s):s}_addTexture(e){const t=this.gltf.textures??[];return this.gltf.textures=t,(0,u.tE)(this._textureMap,e,()=>{const s={sampler:this._addSampler(e),source:this._addImage(e)},i=t.length;return t.push(s),i})}_addImage(e){const t=this._imageMap.get(e);if(null!=t)return t;this.gltf.images||(this.gltf.images=[]);const s={};if(e.url)s.uri=e.url;else{const t=e.data;s.extras=t;for(let e=0;e<this.gltf.images.length;++e)if(t===this.gltf.images[e].extras)return e;const i=this.gltf.extras;switch(i.output.image){case 2:{const e=i.binChunkBuffer.addBufferView(T.pe.UNSIGNED_BYTE,"SCALAR");if((0,B.x3)(t))null!=t.data&&e.writeOutToBuffer(t.data.buffer,0);else{const r=O(t,this.options.signal).then(({data:e,type:t})=>(s.mimeType=t,e));i.promises.push(e.writeAsync(r).then(()=>e.finalize()))}s.bufferView=e.index;break}case 1:if((0,B.x3)(t)){G().warnOnce("Image export for basis compressed textures not available.");break}s.uri=function(e){const t=C(e);return null!=t?t.toDataURL():""}(t);break;default:if((0,B.x3)(t)){G().warnOnce("Image export for basis compressed textures not available.");break}i.promises.push(O(t,this.options.signal).then(({data:e,type:t})=>{s.uri=e,s.mimeType=t}))}}const i=this.gltf.images.length;return this.gltf.images.push(s),this._imageMap.set(e,i),i}_addSampler(e){this.gltf.samplers||(this.gltf.samplers=[]);let t=10497,s=10497;if("string"==typeof e.wrap)switch(e.wrap){case"clamp":t=33071,s=33071;break;case"mirror":t=33648,s=33648}else{switch(e.wrap.vertical){case"clamp":s=33071;break;case"mirror":s=33648}switch(e.wrap.horizontal){case"clamp":t=33071;break;case"mirror":t=33648}}const i={wrapS:t,wrapT:s};for(let e=0;e<this.gltf.samplers.length;++e)if(JSON.stringify(i)===JSON.stringify(this.gltf.samplers[e]))return e;const r=this.gltf.samplers.length;return this.gltf.samplers.push(i),r}_addAccessor(e,t){this.gltf.accessors||(this.gltf.accessors=[]);const s={bufferView:e,byteOffset:t.byteOffset,componentType:t.componentType,count:t.count,type:t.type,min:t.min,max:t.max,name:t.name};t.normalized&&(s.normalized=!0);const i=this.gltf.accessors.length;return this.gltf.accessors.push(s),i}_addMeshVertexIndexed(e,t,s,i,r,n,a,o){const c=new Map;for(const h of t){if(e.startAccessor("INDICES"),h.faces)for(let t=0;t<h.faces.length;++t)e.push(h.faces[t]);const t=e.endAccessor(),u={attributes:{POSITION:i},indices:this._addAccessor(e.index,t),material:this._addMaterial(h.material)};r&&"flat"!==h.shading&&(u.attributes.NORMAL=r),n&&(u.attributes.TEXCOORD_0=n),a&&"flat"!==h.shading&&(u.attributes.TANGENT=a),o&&(u.attributes.COLOR_0=o);const f=c.get(h.name);if(f)f.primitives.push(u);else{const e={name:h.name,primitives:[u]};c.set(h.name,e),s.push(e)}}}_addMeshVertexNonIndexed(e,t,s,i,r,n,a){const o={primitives:[]};t.push(o);const c={attributes:{POSITION:s}};i&&(c.attributes.NORMAL=i),r&&(c.attributes.TEXCOORD_0=r),n&&(c.attributes.TANGENT=n),a&&(c.attributes.COLOR_0=a),e&&(c.material=this._addMaterial(e[0].material)),o.primitives.push(c)}}function U({position:e,normal:t,tangent:s}){D(e,3),D(t,3),D(s,4)}function D(e,t){if(null!=e)for(let s=1,i=2;s<e.length;s+=t,i+=t){const t=e[s],r=e[i];e[s]=r,e[i]=-t}}function L(e){return e**c.Tf}class F{constructor(e){this.mesh=e,this.name="",this.translation=(0,p.vt)(),this.rotation=(0,_.vt)(),this.scale=(0,p.o8)(p.Un),this._nodes=[]}addNode(e){if(this._nodes.includes(e))throw new Error("Node already added");this._nodes.push(e)}forEachNode(e){this._nodes.forEach(e)}set rotationAngles(e){(0,l.A6)(this.rotation,e[0],e[1],e[2])}}class v{constructor(){this.name="",this._nodes=[]}addNode(e){if(this._nodes.includes(e))throw new Error("Node already added");this._nodes.push(e)}forEachNode(e){this._nodes.forEach(e)}}const P="model.gltf",z="model.glb";async function V(e,t){const s=new M(e,t).gltf,r=s.extras.promises;let n=1,o=1,c=null;await Promise.allSettled(r),(0,i.Te)(t.signal);const h=t.jsonSpacing??4,u=new Map,f=JSON.stringify(s,(e,s)=>{if("extras"!==e){if(s instanceof ArrayBuffer){if(function(e){if(e.byteLength<8)return!1;const t=new Uint8Array(e);return 137===t[0]&&80===t[1]&&78===t[2]&&71===t[3]&&13===t[4]&&10===t[5]&&26===t[6]&&10===t[7]}(s))switch(t.output?.image){case 1:case 2:break;default:{const e=`img${o}.png`;return o++,u.set(e,s),e}}switch(t.output?.buffer){case 1:return function(e){const t=[],s=new Uint8Array(e);for(let e=0;e<s.length;e++)t.push(String.fromCharCode(s[e]));return"data:application/octet-stream;base64,"+btoa(t.join(""))}(s);case 2:if(c)throw new Error("Already encountered an ArrayBuffer, there should only be one in the GLB format.");return void(c=s);default:{const e=`data${n}.bin`;return n++,u.set(e,s),e}}}return s}},h);return 2===t.output?.buffer||2===t.output?.image?u.set(z,new a(f,c).buffer):u.set(P,f),u}async function H(e,t){const s=new n,i=new v;return s.addScene(i),i.addNode(new F(e)),await async function(e,t){const s=(await V(e,{output:{buffer:2,image:2},jsonSpacing:0,...t})).get(z);if(!(s&&s instanceof ArrayBuffer))throw new Error("failed to export to glb");return s}(s,{origin:e.origin,...t})}}}]);