@arcgis/core 4.34.0-next.68 → 4.34.0-next.69

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 (109) hide show
  1. package/applications/Components/analysisUtils.d.ts +1 -0
  2. package/applications/Components/analysisUtils.js +1 -1
  3. package/applications/MapViewer/mediaUtils.d.ts +1 -0
  4. package/applications/MapViewer/mediaUtils.js +1 -1
  5. package/assets/esri/core/workers/RemoteClient.js +1 -1
  6. package/assets/esri/core/workers/chunks/2f44848916051f5501eb.js +1 -0
  7. package/assets/esri/core/workers/chunks/{3f164e587f8d69c306d5.js → 3cef77453623bbb37ad2.js} +1 -1
  8. package/assets/esri/core/workers/chunks/3d2629357242492afcfa.js +1 -0
  9. package/assets/esri/core/workers/chunks/49486c2e12e768b347ed.js +1 -0
  10. package/assets/esri/core/workers/chunks/570b17a1a4ab405bbdcb.js +1 -0
  11. package/assets/esri/core/workers/chunks/5a6b487b70ca85a45f57.js +1 -0
  12. package/assets/esri/core/workers/chunks/6433116597021a9af680.js +1 -0
  13. package/assets/esri/core/workers/chunks/{52483db12203276e726e.js → 7944c18b270c85ff2e41.js} +1 -1
  14. package/assets/esri/core/workers/chunks/{35df19d1eab3a694c3fa.js → 978fab0f0b10edde4ff8.js} +1 -1
  15. package/assets/esri/core/workers/chunks/{27027493a8dba8305693.js → a07321a901d6847d1a6b.js} +1 -1
  16. package/assets/esri/core/workers/chunks/{1ac6bbaee76684a07b64.js → dd84f630466a26722d57.js} +1 -1
  17. package/assets/esri/core/workers/chunks/{451dd3bb44664b4ca2ae.js → e956d437c0c2ea81db93.js} +1 -1
  18. package/assets/esri/core/workers/chunks/f1865b28f0f75cadd716.js +1 -0
  19. package/assets/esri/core/workers/chunks/{d3f59fbaa524b53fcbc6.js → f47a0b9e500af2b9453b.js} +2 -2
  20. package/assets/esri/core/workers/chunks/fe475b1ecdefecfcd541.js +1 -0
  21. package/chunks/LineSeries.js +1 -1
  22. package/config.js +1 -1
  23. package/core/MemCache.js +1 -1
  24. package/core/MemCachePool.js +1 -1
  25. package/interfaces.d.ts +72 -527
  26. package/kernel.js +1 -1
  27. package/layers/support/ElevationTileData.js +1 -1
  28. package/layers/support/gaussianSplatUtils.js +1 -1
  29. package/package.json +1 -1
  30. package/support/revision.js +1 -1
  31. package/views/2d/engine/vectorTiles/RenderBucket.js +1 -1
  32. package/views/2d/engine/vectorTiles/TileHandler3D.js +1 -1
  33. package/views/2d/engine/vectorTiles/VectorTile.js +1 -1
  34. package/views/2d/interactive/editingTools/MediaTransformToolsWrapper.js +5 -0
  35. package/views/3d/analysis/ElevationProfile/ElevationProfileSceneLineComputation.js +1 -1
  36. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementShiftTool.js +5 -0
  37. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementTool.js +1 -1
  38. package/views/3d/glTF/loader.js +1 -1
  39. package/views/3d/layers/I3SMeshView3D.js +1 -1
  40. package/views/3d/layers/IntegratedMesh3DTilesLayerView3D.js +1 -1
  41. package/views/3d/layers/PointCloudLayerView3D.js +1 -1
  42. package/views/3d/layers/SceneLayerGraphicsView3D.js +1 -1
  43. package/views/3d/layers/graphics/Graphics3DSymbol.js +1 -1
  44. package/views/3d/layers/graphics/Graphics3DWebStyleSymbol.js +1 -1
  45. package/views/3d/layers/graphics/ObjectResourceCache.js +1 -1
  46. package/views/3d/layers/graphics/QueryEngineCache.js +1 -1
  47. package/views/3d/layers/graphics/wosrLoader.js +1 -1
  48. package/views/3d/layers/i3s/CachedMeshData.js +1 -1
  49. package/views/3d/layers/i3s/I3SOverrides.js +1 -1
  50. package/views/3d/layers/i3s/PointCloudRendererNode.js +1 -1
  51. package/views/3d/layers/support/FeatureTile.js +1 -1
  52. package/views/3d/support/buffer/InterleavedLayout.js +1 -1
  53. package/views/3d/terrain/MapDataCacheItem.js +5 -0
  54. package/views/3d/terrain/OverlayManager.js +1 -1
  55. package/views/3d/terrain/OverlayRenderer.js +1 -1
  56. package/views/3d/terrain/TerrainSurface.js +1 -1
  57. package/views/3d/terrain/Tile.js +1 -1
  58. package/views/3d/terrain/TileTexture.js +1 -1
  59. package/views/3d/webgl/ManagedFBO.js +1 -1
  60. package/views/3d/webgl/ManagedFBOAttachment.js +1 -1
  61. package/views/3d/webgl-engine/core/FBOCache.js +1 -1
  62. package/views/3d/webgl-engine/core/FBOPool.js +1 -1
  63. package/views/3d/webgl-engine/effects/focusArea/FocusAreaColorNode.js +1 -1
  64. package/views/3d/webgl-engine/effects/focusArea/FocusAreaMaskNode.js +1 -1
  65. package/views/3d/webgl-engine/effects/smaa/SMAA.js +1 -1
  66. package/views/3d/webgl-engine/lib/GaussianSplatRenderNode.js +1 -1
  67. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  68. package/views/3d/webgl-engine/lib/edgeRendering/EdgeView.js +1 -1
  69. package/views/3d/webgl-engine/materials/renderers/MergedRenderer.js +1 -1
  70. package/views/analysis/ElevationProfile/ElevationProfileChart.js +5 -0
  71. package/views/analysis/ElevationProfile/constants.js +1 -1
  72. package/views/analysis/ElevationProfile/elevationProfileChartBoundsUtils.js +5 -0
  73. package/views/analysis/ElevationProfile/elevationProfileChartTheme.js +5 -0
  74. package/views/analysis/ElevationProfile/elevationProfileGeometryUtils.js +1 -1
  75. package/views/webgl/Texture.js +1 -1
  76. package/views/webgl/VertexArrayObject.js +1 -1
  77. package/widgets/ElevationProfile/support/chartUtils.js +1 -1
  78. package/widgets/Feature/FeatureMedia/xyChart.js +1 -1
  79. package/widgets/FeatureTable/FeatureTableViewModel.js +1 -1
  80. package/widgets/support/SelectionList.js +1 -1
  81. package/assets/esri/core/workers/chunks/28cfe1b270602e0c767b.js +0 -1
  82. package/assets/esri/core/workers/chunks/2ad1d458e4d18232a667.js +0 -1
  83. package/assets/esri/core/workers/chunks/7336bfd57f6172ec7186.js +0 -1
  84. package/assets/esri/core/workers/chunks/75dd0acf049c7f3271b8.js +0 -1
  85. package/assets/esri/core/workers/chunks/900eb2aa5cb1b08e1906.js +0 -1
  86. package/assets/esri/core/workers/chunks/ad69cceec8db593fac14.js +0 -1
  87. package/assets/esri/core/workers/chunks/bc9f54a6b577c43189fd.js +0 -1
  88. package/assets/esri/core/workers/chunks/de443d29d1a6b5300d00.js +0 -1
  89. package/graphic/BuildingGraphicOrigin.d.ts +0 -4
  90. package/graphic/CSVGraphicOrigin.d.ts +0 -4
  91. package/graphic/CatalogGraphicOrigin.d.ts +0 -4
  92. package/graphic/FeatureGraphicOrigin.d.ts +0 -4
  93. package/graphic/GeoJSONGraphicOrigin.d.ts +0 -4
  94. package/graphic/GeoRSSGraphicOrigin.d.ts +0 -4
  95. package/graphic/KnowledgeGraphGraphicOrigin.d.ts +0 -4
  96. package/graphic/MapImageGraphicOrigin.d.ts +0 -4
  97. package/graphic/MapNotesGraphicOrigin.d.ts +0 -4
  98. package/graphic/OGCFeatureGraphicOrigin.d.ts +0 -4
  99. package/graphic/OrientedImageryGraphicOrigin.d.ts +0 -4
  100. package/graphic/ParquetGraphicOrigin.d.ts +0 -4
  101. package/graphic/PointCloudGraphicOrigin.d.ts +0 -4
  102. package/graphic/SceneGraphicOrigin.d.ts +0 -4
  103. package/graphic/StreamGraphicOrigin.d.ts +0 -4
  104. package/graphic/SubtypeGroupGraphicOrigin.d.ts +0 -4
  105. package/graphic/TileGraphicOrigin.d.ts +0 -4
  106. package/graphic/VoxelGraphicOrigin.d.ts +0 -4
  107. package/graphic/WCSGraphicOrigin.d.ts +0 -4
  108. package/graphic/WFSGraphicOrigin.d.ts +0 -4
  109. package/graphic/graphicOrigins.d.ts +0 -22
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[8969],{2272:(e,t,n)=>{n.d(t,{Dl:()=>u,gf:()=>h,jV:()=>l,lF:()=>c});var i=n(92602),r=n(70333),s=n(4718),o=n(84952),a=n(926);function l(e,t){return t?{...t,query:{...e,...t.query}}:{query:e}}function u(e){return"string"==typeof e?(0,o.An)(e):(0,s.o8)(e)}function c(e,t,n){const i={};for(const r in e){if("declaredClass"===r)continue;const s=e[r];if(null!=s&&"function"!=typeof s)if(Array.isArray(s))i[r]=s.map(e=>c(e));else if("object"==typeof s)if(s.toJSON){const e=s.toJSON(n?.[r]);i[r]=t?e:JSON.stringify(e)}else i[r]=t?s:JSON.stringify(s);else i[r]=s}return i}async function h(e,t,s){const o=function(e,t){return e?t&&(0,a.Qc)(e)?t:(0,a.CG)(e)??r.id?.findCredential(e)?.token:null}(e,t);if(o)return o;!r.id&&i.A.request.useIdentity&&await Promise.all([n.e(7330),n.e(4813),n.e(3747)]).then(n.bind(n,73747));const l=await r.id.getCredential(e,s);return l?.token}},6518:(e,t,n)=>{n.d(t,{F:()=>a});var i=n(44208),r=n(75503),s=n(19419);const o={minX:0,minY:0,maxX:0,maxY:0};class a{constructor(){this._indexInvalid=!1,this._boundsToLoad=[],this._boundsById=new Map,this._idByBounds=new Map,this._index=new r.wq(9,(0,i.A)("esri-csp-restrictions")?e=>({minX:e[0],minY:e[1],maxX:e[2],maxY:e[3]}):["[0]","[1]","[2]","[3]"]),this._loadIndex=()=>{if(this._indexInvalid){const e=new Array(this._idByBounds.size);let t=0;this._idByBounds.forEach((n,i)=>{e[t++]=i}),this._indexInvalid=!1,this._index.clear(),this._index.load(e)}else this._boundsToLoad.length&&(this._index.load(Array.from(new Set(this._boundsToLoad.filter(e=>this._idByBounds.has(e))))),this._boundsToLoad.length=0)}}get fullBounds(){if(!this._boundsById.size)return null;const e=(0,s.Ie)();for(const t of this._boundsById.values())t&&(e[0]=Math.min(t[0],e[0]),e[1]=Math.min(t[1],e[1]),e[2]=Math.max(t[2],e[2]),e[3]=Math.max(t[3],e[3]));return e}get valid(){return!this._indexInvalid}clear(){this._indexInvalid=!1,this._boundsToLoad.length=0,this._boundsById.clear(),this._idByBounds.clear(),this._index.clear()}delete(e){const t=this._boundsById.get(e);this._boundsById.delete(e),t&&(this._idByBounds.delete(t),this._indexInvalid||this._index.remove(t))}forEachInBounds(e,t){this._loadIndex(),function(e,t,n){(function(e){o.minX=e[0],o.minY=e[1],o.maxX=e[2],o.maxY=e[3]})(t),e.search(o,n)}(this._index,e,e=>t(this._idByBounds.get(e)))}get(e){return this._boundsById.get(e)}has(e){return this._boundsById.has(e)}invalidateIndex(){this._indexInvalid||(this._indexInvalid=!0,this._boundsToLoad.length=0)}set(e,t){if(!this._indexInvalid){const t=this._boundsById.get(e);t&&(this._index.remove(t),this._idByBounds.delete(t))}this._boundsById.set(e,t),t&&(this._idByBounds.set(t,e),this._indexInvalid||(this._boundsToLoad.push(t),this._boundsToLoad.length>5e4&&this._loadIndex()))}}},9762:(e,t,n)=>{n.r(t),n.d(t,{projectBuffer:()=>r});var i=n(37539);function r(e,t,n,r,s,o,a=Math.floor(e.length/3)){const l=(0,i.jd)(t,s);if(null==l)return!1;if(l===i.pO){if(e===r&&n===o)return!0;const t=n+3*a;for(let i=n,s=o;i<t;i++,s++)r[s]=e[i];return!0}const u=n+3*a;for(let t=n,i=o;t<u;t+=3,i+=3)l(e,t,r,i);return!0}},13043:(e,t,n)=>{function i(e,t){if(e&&t)for(const n of e.children)if(n.localName in t){const e=t[n.localName];if("function"==typeof e){const t=e(n);t&&i(n,t)}else i(n,e)}}function*r(e,t){for(const n of e.children)if(n.localName in t){const e=t[n.localName];"function"==typeof e?yield e(n):yield*r(n,e)}}n.d(t,{i:()=>r,p:()=>i})},20437:(e,t,n)=>{n.d(t,{A:()=>m});var i,r=n(31635),s=n(66552),o=n(25482),a=n(10107),l=n(56507),u=(n(44208),n(87811),n(93223)),c=n(36005),h=n(40608),d=n(80451),p=n(98453);const f=new s.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 m=class extends o.o{static{i=this}constructor(e){super(e),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(e,{description:t}){let n=null;try{n=t?JSON.parse(t):null}catch(e){}return n?.value??null}readValueType(e,{description:t}){let n=null;try{n=t?JSON.parse(t):null}catch(e){}return n?f.fromJSON(n.fieldValueType):null}clone(){return new i({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,r.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],m.prototype,"alias",void 0),(0,r.Cg)([(0,a.MZ)({type:[String,Number],json:{write:{allowNull:!0}}})],m.prototype,"defaultValue",void 0),(0,r.Cg)([(0,a.MZ)()],m.prototype,"description",void 0),(0,r.Cg)([(0,c.w)("description")],m.prototype,"readDescription",null),(0,r.Cg)([(0,a.MZ)({types:d.gK,json:{read:{reader:d.rS},write:!0}})],m.prototype,"domain",void 0),(0,r.Cg)([(0,a.MZ)({type:Boolean,json:{write:!0}})],m.prototype,"editable",void 0),(0,r.Cg)([(0,a.MZ)({type:l.jz,json:{write:{overridePolicy:e=>({enabled:Number.isFinite(e)})}}})],m.prototype,"length",void 0),(0,r.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],m.prototype,"name",void 0),(0,r.Cg)([(0,a.MZ)({type:Boolean,json:{write:!0}})],m.prototype,"nullable",void 0),(0,r.Cg)([(0,u.e)(p.m)],m.prototype,"type",void 0),(0,r.Cg)([(0,a.MZ)()],m.prototype,"valueType",void 0),(0,r.Cg)([(0,c.w)("valueType",["description"])],m.prototype,"readValueType",null),(0,r.Cg)([(0,a.MZ)({type:Boolean,json:{read:!1}})],m.prototype,"visible",void 0),m=i=(0,r.Cg)([(0,h.$)("esri.layers.support.Field")],m)},33771:(e,t,n)=>{n.r(t),n.d(t,{default:()=>b});var i=n(60999),r=n(49186),s=n(53966),o=n(34727),a=n(74887),l=n(67076),u=n(21325),c=n(90708),h=n(83221),d=n(31464),p=n(56390),f=n(85113),m=n(82832),y=n(34322),g=n(95466),_=n(54218),w=n(98623);const x="esri.layers.WFSLayer";class b{constructor(){this._customParameters=null,this._queryEngine=null,this._supportsPagination=!0}destroy(){this._queryEngine?.destroy(),this._queryEngine=null}async load(e,t={}){const{getFeatureUrl:n,getFeatureOutputFormat:i,fields:s,geometryType:o,featureType:l,maxRecordCount:u,maxTotalRecordCount:c,maxPageCount:f,objectIdField:m,customParameters:_}=e,{spatialReference:x,getFeatureSpatialReference:b}=(0,y.UH)(n,l,e.spatialReference);try{await(0,d.Nk)(b,x)}catch{throw new r.A("unsupported-projection","Projection not supported",{inSpatialReference:b,outSpatialReference:x})}(0,a.Te)(t),this._customParameters=_,this._featureType=l,this._fieldsIndex=g.A.fromLayerJSON({fields:s,dateFieldsTimeReference:s.some(e=>"esriFieldTypeDate"===e.type)?{timeZoneIANA:w.n$}:null}),this._geometryType=o,this._getFeatureUrl=n,this._getFeatureOutputFormat=i,this._getFeatureSpatialReference=b,this._maxRecordCount=u,this._maxTotalRecordCount=c,this._maxPageCount=f,this._objectIdField=m,this._spatialReference=x;let v=await this._snapshotFeatures(t);if(v.errors.length>0&&(this._supportsPagination=!1,v=await this._snapshotFeatures(t),v.errors.length>0))throw v.errors[0];const M={type:"object-id",fieldName:m};return this._queryEngine=new p.do({fieldsIndex:this._fieldsIndex,geometryType:o,hasM:!1,hasZ:!1,featureIdInfo:M,spatialReference:x,timeInfo:null,featureStore:new h.A({geometryType:o,hasM:!1,hasZ:!1})}),this._queryEngine.featureStore.addMany(v.features),{warnings:S(v),extent:(await this._queryEngine.fetchRecomputedExtents()).fullExtent}}async applyEdits(){throw new r.A("wfs-source:editing-not-supported","applyEdits() is not supported on WFSLayer")}async queryFeatures(e={},t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeQuery(e,t.signal)}async queryFeatureCount(e={},t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeQueryForCount(e,t.signal)}async queryObjectIds(e={},t={}){return await this._waitSnapshotComplete(),(await this._queryEngine.executeQueryForIds(e,t.signal)).filter(_.Et)}async queryExtent(e={},t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeQueryForExtent(e,t.signal)}async querySnapping(e,t={}){return await this._waitSnapshotComplete(),await this._queryEngine.executeQueryForSnapping(e,t.signal)}async queryAttributeBins(e,t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeAttributeBinsQuery(e,t.signal)}async refresh(e){return this._customParameters=e.customParameters,this._maxRecordCount=e.maxRecordCount,this._maxTotalRecordCount=e.maxTotalRecordCount,this._maxPageCount=e.maxPageCount,this._snapshotTask?.abort(),this._snapshotTask=(0,i.UT)(e=>this._snapshotFeatures({signal:e})),this._snapshotTask.promise.then(e=>{this._queryEngine.featureStore.clear(),this._queryEngine.featureStore.addMany(e.features);for(const t of S(e))s.A.getLogger(x).warn(new l.A("wfs-layer:refresh-warning",t.message,t.details));e.errors?.length&&s.A.getLogger(x).warn(new l.A("wfs-layer:refresh-error","Refresh completed with errors",{errors:e.errors}))},()=>{this._queryEngine.featureStore.clear()}),await this._waitSnapshotComplete(),{extent:(await this._queryEngine.fetchRecomputedExtents()).fullExtent}}async _waitSnapshotComplete(){if(this._snapshotTask&&!this._snapshotTask.finished){try{await this._snapshotTask.promise}catch{}return this._waitSnapshotComplete()}}async _snapshotFeatures(e){const t=e?.signal,n=this._maxTotalRecordCount,i=this._maxPageCount,r=this._supportsPagination&&i>1?await(0,y.E)(this._getFeatureUrl,this._featureType.typeName,{customParameters:this._customParameters,signal:t}):void 0;let s=[];const l=[];if(null==r)try{s=await this._singleQuery(t)}catch(e){(0,a.zf)(e)||l.push(e)}else{const e=Math.min(r,n),u=function*(e,t,n){for(let i=0;i<t;i++)yield e._pageQuery(i,n)}(this,(0,o.qE)(Math.ceil(e/this._maxRecordCount),1,i),t);await Promise.allSettled(Array.from({length:10}).map(()=>async function(e,t,n){let i=e.next();for(;!i.done;){try{const e=await i.value;t.push(...e)}catch(e){(0,a.zf)(e)||n.push(e)}i=e.next()}}(u,s,l)))}return(0,a.Te)(t),{features:s,totalRecordCount:r,maxTotalRecordCount:n,maxPageCount:i,errors:l}}async _singleQuery(e){const t=Number.isFinite(this._maxRecordCount)&&this._maxRecordCount>0?this._maxRecordCount:void 0,n=await(0,y.x$)(this._getFeatureUrl,this._featureType.typeName,this._getFeatureSpatialReference,this._getFeatureOutputFormat,{customParameters:this._customParameters,count:t,signal:e});return this._processGeoJSON(n,{signal:e})}async _pageQuery(e,t){const n=e*this._maxRecordCount,i=await(0,y.x$)(this._getFeatureUrl,this._featureType.typeName,this._getFeatureSpatialReference,this._getFeatureOutputFormat,{customParameters:this._customParameters,startIndex:n,count:this._maxRecordCount,signal:t});return this._processGeoJSON(i,{startIndex:n,signal:t})}_processGeoJSON(e,t){(0,f.sO)(e,this._getFeatureSpatialReference.wkid);const{startIndex:n,signal:i}=t;(0,a.Te)(i);const r=(0,f.bd)(e,{geometryType:this._geometryType,hasZ:!1,objectIdField:this._objectIdField});if(!(0,u.aI)(this._spatialReference,this._getFeatureSpatialReference))for(const e of r)null!=e.geometry&&(e.geometry=(0,c.Ux)((0,d.Cv)((0,c.zv)(e.geometry,this._geometryType,!1,!1),this._getFeatureSpatialReference,this._spatialReference)));let s=n??1;for(const e of r){const t={};(0,m.MB)(this._fieldsIndex,t,e.attributes,!0),e.attributes=t,null==t[this._objectIdField]&&(e.objectId=t[this._objectIdField]=s++)}return r}}function S(e){const t=[];return null!=e.totalRecordCount&&(e.features.length<e.totalRecordCount&&t.push({name:"wfs-layer:maxRecordCount-too-low",message:`Could only fetch ${e.features.length} of ${e.totalRecordCount} in ${e.maxPageCount} queries. Try increasing the value of WFSLayer.maxRecordCount.`,details:{recordCount:e.features.length,totalRecordCount:e.totalRecordCount}}),e.totalRecordCount>e.maxTotalRecordCount&&t.push({name:"wfs-layer:large-dataset",message:`The number of ${e.totalRecordCount} features exceeds the maximum allowed of ${e.maxTotalRecordCount}.`,details:{recordCount:e.features.length,totalRecordCount:e.totalRecordCount,maxTotalRecordCount:e.maxTotalRecordCount}})),t}},34322:(e,t,n)=>{n.d(t,{E:()=>X,Fu:()=>A,O8:()=>B,UH:()=>D,YW:()=>N,i5:()=>w,mG:()=>z,x$:()=>L});var i=n(78888),r=n(49186),s=n(5479),o=n(84952),a=n(5443),l=n(98988),u=n(16930),c=n(21325),h=n(50498),d=n(85113),p=n(13043),f=n(60694),m=n(20437),y=n(30524);const g="xlink:href",_="2.0.0",w="__esri_wfs_id__",x="wfs-layer:getWFSLayerTypeInfo-error",b="wfs-layer:empty-service",S="wfs-layer:feature-type-not-found",v="wfs-layer:geojson-not-supported",M="wfs-layer:kvp-encoding-not-supported",C="wfs-layer:malformed-json",R="wfs-layer:unknown-geometry-type",T="wfs-layer:unknown-field-type",I="wfs-layer:unsupported-spatial-reference",F="wfs-layer:unsupported-wfs-version";async function A(e,t){const n=function(e){const t=$(e);(function(e){const t=e.firstElementChild?.getAttribute("version");if(t&&t!==_)throw new r.A(F,`Unsupported WFS version ${t}. Supported version: ${_}`)})(t),U(t);const n=t.firstElementChild,i=(0,s.PP)(function(e){return(0,p.i)(e,{FeatureTypeList:{FeatureType:e=>{const t={typeName:"undefined:undefined",name:"",title:"",description:"",extent:null,namespacePrefix:"",namespaceUri:"",defaultSpatialReference:4326,supportedSpatialReferences:[]},n=new Set;return(0,p.p)(e,{Name:e=>{const{name:n,prefix:i}=V(e.textContent);t.typeName=`${i}:${n}`,t.name=n,t.namespacePrefix=i,t.namespaceUri=e.lookupNamespaceURI(i)},Abstract:e=>{t.description=e.textContent},Title:e=>{t.title=e.textContent},WGS84BoundingBox:e=>{t.extent=a.A.fromJSON(function(e){let t,n,i,r;for(const s of e.children)switch(s.localName){case"LowerCorner":[t,n]=s.textContent.split(" ").map(e=>Number.parseFloat(e));break;case"UpperCorner":[i,r]=s.textContent.split(" ").map(e=>Number.parseFloat(e))}return{xmin:t,ymin:n,xmax:i,ymax:r,spatialReference:c.KK}}(e))},DefaultCRS:e=>{const i=j(e);i&&(t.defaultSpatialReference=i,n.add(i))},OtherCRS:e=>{const t=j(e);t&&n.add(t)}}),t.title||(t.title=t.name),n.add(4326),t.supportedSpatialReferences.push(...n),t}}})}(n));return{operations:E(n),get featureTypes(){return Array.from(i())},readFeatureTypes:i}}((await(0,i.A)(e,{responseType:"text",query:{SERVICE:"WFS",REQUEST:"GetCapabilities",VERSION:_,...t?.customParameters},signal:t?.signal})).data);return function(e,t){(0,o.m3)(e)&&((0,o.FX)(e,t.operations.DescribeFeatureType.url,!0)&&(t.operations.DescribeFeatureType.url=(0,o.lM)(t.operations.DescribeFeatureType.url)),(0,o.FX)(e,t.operations.GetFeature.url,!0)&&(t.operations.GetFeature.url=(0,o.lM)(t.operations.GetFeature.url)))}(e,n),n}const P=["json","application/json; subtype=geojson; charset=utf-8","application/json; subtype=geojson","application/json","geojson","application/geo+json"];function k(e){for(const t of P){const n=e.findIndex(e=>e.toLowerCase()===t);if(n>=0)return e[n]}return null}function E(e){let t=!0;const n={GetCapabilities:{url:""},DescribeFeatureType:{url:""},GetFeature:{url:"",outputFormat:null,supportsPagination:!1}},i=[],s=[];if((0,p.p)(e,{OperationsMetadata:{Parameter:e=>{if("outputformat"===e.getAttribute("name")?.toLowerCase())return{AllowedValues:{Value:({textContent:e})=>{e&&i.push(e)}}}},Operation:e=>{switch(e.getAttribute("name")){case"GetCapabilities":return{DCP:{HTTP:{Get:e=>{n.GetCapabilities.url=e.getAttribute(g)}}}};case"DescribeFeatureType":return{DCP:{HTTP:{Get:e=>{n.DescribeFeatureType.url=e.getAttribute(g)}}}};case"GetFeature":return{DCP:{HTTP:{Get:e=>{n.GetFeature.url=e.getAttribute(g)}}},Parameter:e=>{if("outputformat"===e.getAttribute("name")?.toLowerCase())return{AllowedValues:{Value:({textContent:e})=>{e&&s.push(e)}}}}}}},Constraint:e=>{switch(e.getAttribute("name")){case"KVPEncoding":return{DefaultValue:e=>{t="true"===e.textContent.toLowerCase()}};case"ImplementsResultPaging":return{DefaultValue:e=>{n.GetFeature.supportsPagination="true"===e.textContent.toLowerCase()}}}}}}),n.GetFeature.outputFormat=k(s)??k(i),!t)throw new r.A(M,"WFS service doesn't support key/value pair (KVP) encoding");if(null==n.GetFeature.outputFormat)throw new r.A(v,"WFS service doesn't support GeoJSON output format");return n}function j(e){const t=parseInt(e.textContent?.match(/(?<wkid>\d+$)/i)?.groups?.wkid??"",10);if(!Number.isNaN(t))return t}function z(e,t,n){return(0,s.I6)(e,e=>n?e.name===t&&e.namespaceUri===n:e.typeName===t||e.name===t)}async function B(e,t,n,i={}){const{featureType:s,extent:o}=await async function(e,t,n,i={}){const s=e.readFeatureTypes(),o=t?z(s,t,n):s.next().value,{spatialReference:a=new u.A({wkid:o?.defaultSpatialReference})}=i;if(null==o)throw t?new r.A(S,`The type '${t}' could not be found in the service`):new r.A(b,"The service is empty");let h=o.extent;if(h&&!(0,c.aI)(h.spatialReference,a))try{await(0,l.initializeProjection)(h.spatialReference,a,void 0,i),h=(0,l.project)(h,a)}catch{throw new r.A(I,"Projection not supported")}return{extent:h,spatialReference:a,featureType:o}}(e,t,n,i),{spatialReference:a}=D(e.operations.GetFeature.url,s,i.spatialReference),{fields:h,geometryType:d,swapXY:p,objectIdField:f,geometryField:m}=await async function(e,t,n,i={}){const{typeName:s}=t,[o,a]=await Promise.allSettled([G(e.operations.DescribeFeatureType.url,s,i),O(e,s,n,i)]),l=e=>new r.A(x,`An error occurred while getting info about the feature type '${s}'`,{error:e});if("rejected"===o.status)throw l(o.reason);if("rejected"===a.status)throw l(a.reason);const{fields:u,errors:c}=o.value??{},h=o.value?.geometryType||a.value?.geometryType,d=a.value?.swapXY??!1;if(null==h)throw new r.A(R,`The geometry type could not be determined for type '${s}`,{typeName:s,geometryType:h,fields:u,errors:c});return{...N(u??[]),geometryType:h,swapXY:d}}(e,s,a,i);return{url:e.operations.GetCapabilities.url,name:s.name,namespaceUri:s.namespaceUri,fields:h,geometryField:m,geometryType:d,objectIdField:f,spatialReference:i.spatialReference??new u.A({wkid:s.defaultSpatialReference}),extent:o,swapXY:p,wfsCapabilities:e,customParameters:i.customParameters}}function N(e){const t=e.find(e=>"geometry"===e.type);let n=e.find(e=>"oid"===e.type);return e=e.filter(e=>"geometry"!==e.type),n||(n=new m.A({name:w,type:"oid",alias:w}),e.unshift(n)),{geometryField:t?.name??null,objectIdField:n.name,fields:e}}async function O(e,t,n,r={}){let s,o=!1;const[a,l]=await Promise.all([L(e.operations.GetFeature.url,t,n,e.operations.GetFeature.outputFormat,{...r,count:1}),(0,i.A)(e.operations.GetFeature.url,{responseType:"text",query:Y(t,n,void 0,{...r,count:1}),signal:r?.signal})]),u="FeatureCollection"===a.type&&a.features[0]?.geometry;if(u){let e;switch(s=h.gy.fromJSON((0,d.xD)(u.type)),u.type){case"Point":e=u.coordinates;break;case"LineString":case"MultiPoint":e=u.coordinates[0];break;case"MultiLineString":case"Polygon":e=u.coordinates[0][0];break;case"MultiPolygon":e=u.coordinates[0][0][0]}const t=/<[^>]*pos[^>]*> *(-?\d+(?:\.\d+)?) (-?\d+(?:\.\d+)?)/.exec(l.data);if(t){const n=e[0].toFixed(3),i=e[1].toFixed(3),r=parseFloat(t[1]).toFixed(3);n===parseFloat(t[2]).toFixed(3)&&i===r&&(o=!0)}}return{geometryType:s,swapXY:o}}async function G(e,t,n){return function(e,t){const{name:n}=V(e),i=$(t);U(i);const o=(0,s.I6)((0,p.i)(i.firstElementChild,{element:e=>e}),e=>e.getAttribute("name")===n);if(null!=o){const e=o.getAttribute("type"),t=e?(0,s.I6)((0,p.i)(i.firstElementChild,{complexType:e=>e}),t=>t.getAttribute("name")===V(e).name):(0,s.I6)((0,p.i)(o,{complexType:e=>e}),()=>!0);if(t)return function(e){const t=[],n=[];let i;const s=(0,p.i)(e,{complexContent:{extension:{sequence:{element:e=>e}}}});for(const o of s){const s=o.getAttribute("name");if(!s)continue;let a,l;if(o.hasAttribute("type")?a=V(o.getAttribute("type")).name:(0,p.p)(o,{simpleType:{restriction:e=>(a=V(e.getAttribute("base")).name,{maxLength:e=>{l=+e.getAttribute("value")}})}}),!a)continue;const u="true"===o.getAttribute("nillable");let c=!1;switch(a.toLowerCase()){case"integer":case"nonpositiveinteger":case"negativeinteger":case"long":case"int":case"short":case"byte":case"nonnegativeinteger":case"unsignedlong":case"unsignedint":case"unsignedshort":case"unsignedbyte":case"positiveinteger":n.push(new m.A({name:s,alias:s,type:"integer",nullable:u,length:(0,y._b)("integer")}));break;case"float":case"double":case"decimal":n.push(new m.A({name:s,alias:s,type:"double",nullable:u,length:(0,y._b)("double")}));break;case"boolean":case"string":case"gyearmonth":case"gyear":case"gmonthday":case"gday":case"gmonth":case"anyuri":case"qname":case"notation":case"normalizedstring":case"token":case"language":case"idrefs":case"entities":case"nmtoken":case"nmtokens":case"name":case"ncname":case"id":case"idref":case"entity":case"duration":case"time":n.push(new m.A({name:s,alias:s,type:"string",nullable:u,length:l??(0,y._b)("string")}));break;case"datetime":case"date":n.push(new m.A({name:s,alias:s,type:"date",nullable:u,length:l??(0,y._b)("date")}));break;case"pointpropertytype":i="point",c=!0;break;case"multipointpropertytype":i="multipoint",c=!0;break;case"curvepropertytype":case"multicurvepropertytype":case"multilinestringpropertytype":i="polyline",c=!0;break;case"surfacepropertytype":case"multisurfacepropertytype":case"multipolygonpropertytype":i="polygon",c=!0;break;case"geometrypropertytype":case"multigeometrypropertytype":c=!0,t.push(new r.A(R,`geometry type '${a}' is not supported`,{type:(new XMLSerializer).serializeToString(e)}));break;default:t.push(new r.A(T,`Unknown field type '${a}'`,{type:(new XMLSerializer).serializeToString(e)}))}c&&n.push(new m.A({name:s,alias:s,type:"geometry",nullable:u}))}for(const e of n)if("integer"===e.type&&!e.nullable&&q.has(e.name.toLowerCase())){e.type="oid";break}return{geometryType:i,fields:n,errors:t}}(t)}throw new r.A(S,`Type '${e}' not found in document`,{document:(new XMLSerializer).serializeToString(i)})}(t,(await(0,i.A)(e,{responseType:"text",query:{SERVICE:"WFS",REQUEST:"DescribeFeatureType",VERSION:_,TYPENAME:t,TYPENAMES:t,...n?.customParameters},signal:n?.signal})).data)}const q=new Set(["objectid","fid"]);async function L(e,t,n,s,o){let{data:a}=await(0,i.A)(e,{responseType:"text",query:Y(t,n,s,o),signal:o?.signal});a=a.replaceAll(/": +(-?\d+),(\d+)(,)?/g,'": $1.$2$3');try{return JSON.parse(a)}catch(e){throw new r.A(C,"Error while parsing the response",{response:a,error:e})}}function Y(e,t,n,i){const r="number"==typeof t?t:t.wkid;return{SERVICE:"WFS",REQUEST:"GetFeature",VERSION:_,TYPENAMES:e,OUTPUTFORMAT:n,SRSNAME:"EPSG:"+r,STARTINDEX:i?.startIndex,COUNT:i?.count,...i?.customParameters}}async function X(e,t,n){const r=await(0,i.A)(e,{responseType:"text",query:{SERVICE:"WFS",REQUEST:"GetFeature",VERSION:_,TYPENAMES:t,RESULTTYPE:"hits",...n?.customParameters},signal:n?.signal}),s=/numberMatched=["'](?<numberMatched>\d+)["']/gi.exec(r.data);if(s?.groups)return+s.groups.numberMatched}function $(e){return(new DOMParser).parseFromString(e.trim(),"text/xml")}function V(e){const[t,n]=e.split(":");return{prefix:n?t:"",name:n??t}}function U(e){let t="",n="";if((0,p.p)(e.firstElementChild,{Exception:e=>(t=e.getAttribute("exceptionCode"),{ExceptionText:e=>{n=e.textContent}})}),t)throw new r.A(`wfs-layer:${t}`,n)}function D(e,t,n){const i={wkid:t.defaultSpatialReference},r=null!=n?.wkid?{wkid:n.wkid}:i;return{spatialReference:r,getFeatureSpatialReference:(0,f.Fi)(e)||r.wkid&&t.supportedSpatialReferences.includes(r.wkid)?{wkid:r.wkid}:{wkid:t.defaultSpatialReference}}}},36708:(e,t,n)=>{n.d(t,{C_:()=>d,OH:()=>m,Vh:()=>y,on:()=>h,pc:()=>g,wB:()=>l,z7:()=>u});var i=n(37955),r=n(36563),s=n(97768),o=n(74887),a=n(14012);function l(e,t,n={}){return c(e,t,n,p)}function u(e,t,n={}){return c(e,t,n,f)}function c(e,t,n={},i){let r=null;const o=n.once?(e,n)=>{i(e)&&((0,s.xt)(r),t(e,n))}:(e,n)=>{i(e)&&t(e,n)};if(r=(0,a.Cn)(e,o,n.sync,n.equals),n.initial){const t=e();o(t,t)}return r}function h(e,t,n,o={}){let a=null,u=null,c=null;function h(){a&&u&&(u.remove(),o.onListenerRemove?.(a),a=null,u=null)}function d(e){o.once&&o.once&&(0,s.xt)(c),n(e)}const p=l(e,(e,n)=>{h(),(0,i.wb)(e)&&(a=e,u=(0,i.on)(e,t,d),o.onListenerAdd?.(e))},{sync:o.sync,initial:!0});return c=(0,r.hA)(()=>{p.remove(),h()}),c}function d(e,t){return function(e,t,n){if((0,o.G4)(n))return Promise.reject((0,o.NK)());const i=e();if(t?.(i))return Promise.resolve(i);let a=null;function l(){a=(0,s.xt)(a)}return new Promise((i,s)=>{a=(0,r.vE)([(0,o.u7)(n,()=>{l(),s((0,o.NK)())}),c(e,e=>{l(),i(e)},{sync:!1,once:!0},t??p)])})}(e,f,t)}function p(e){return!0}function f(e){return!!e}n(80559);const m={sync:!0},y={initial:!0},g={sync:!0,initial:!0}},37539:(e,t,n)=>{n.d(t,{pO:()=>m,jd:()=>d,Tp:()=>p,w5:()=>h});var i=n(34727),r=n(83047),s=n(73941),o=n(79258);Math.PI;const a=o.$O.radius,l=o.$O.eccentricitySquared,u={a1:a*l,a2:a*l*a*l,a3:a*l*l/2,a4:a*l*a*l*2.5,a5:a*l+a*l*l/2,a6:1-l};o.$O.radius,o.$O.flattening,o.Sw.radius,o.Sw.flattening,o.sH.radius,o.sH.flattening,o.sH.radius;var c=n(21325);const h={2:{5:m,7:null,9:null,10:m,1:v,6:null,8:null,0:null,3:g,11:_,2:m,4:I},5:{5:m,7:null,9:null,10:m,1:v,6:null,8:null,0:null,3:g,11:_,2:m,4:I},7:{5:null,7:m,9:null,10:m,1:null,6:S,8:null,0:null,3:null,11:null,2:null,4:null},9:{5:null,7:null,9:m,10:m,1:null,6:null,8:b,0:null,3:null,11:null,2:null,4:null},3:{5:y,7:null,9:null,10:y,1:function(e,t,n,i){const r=e[t]/j,s=E-2*Math.atan(Math.exp(-e[t+1]/j)),o=j+e[t+2],a=Math.cos(s)*o;n[i]=Math.cos(r)*a,n[i+1]=Math.sin(r)*a,n[i+2]=Math.sin(s)*o},6:null,8:null,0:null,3:m,11:function(e,t,n,i){y(e,t,n,i),_(n,i,n,i)},2:y,4:function(e,t,n,i){y(e,t,n,i),I(n,i,n,i)}},4:{5:F,7:null,9:null,10:F,1:function(e,t,n,i){F(e,t,n,i),v(n,i,n,i)},6:null,8:null,0:null,3:function(e,t,n,i){F(e,t,n,i),g(n,i,n,i)},11:function(e,t,n,i){F(e,t,n,i),_(n,i,n,i)},2:F,4:m},1:{5:T,7:null,9:null,10:T,1:m,6:null,8:null,0:null,3:function(e,t,n,i){T(e,t,n,i),g(n,i,n,i)},11:function(e,t,n,i){T(e,t,n,i),_(n,i,n,i)},2:T,4:function(e,t,n,i){T(e,t,n,i),I(n,i,n,i)}},6:{5:null,7:R,9:null,10:R,1:null,6:m,8:null,0:null,3:null,11:null,2:null,4:null},8:{5:null,7:null,9:C,10:C,1:null,6:null,8:m,0:null,3:null,11:null,2:null,4:null},0:{5:null,7:null,9:null,10:null,1:null,6:null,8:null,0:m,3:null,11:null,2:null,4:null},10:{5:m,7:m,9:m,10:m,1:v,6:S,8:b,0:null,3:g,11:_,2:m,4:I},11:{5:w,7:null,9:null,10:w,1:function(e,t,n,i){w(e,t,n,i),v(n,i,n,i)},6:null,8:null,0:null,3:function(e,t,n,i){w(e,t,n,i),g(n,i,n,i)},11:m,2:w,4:function(e,t,n,i){w(e,t,n,i),I(n,i,n,i)}}};function d(e,t){return p(e,t)?.projector}function p(e,t){if(null==e||null==t)return null;if(A.source.spatialReference===e&&A.dest.spatialReference===t)return A;const n=f(e,A.source),i=f(t,A.dest);return 0===n&&0===i?(0,c.aI)(e,t)?A.projector=m:A.projector=null:A.projector=h[n][i],A}function f(e,t){return e?t.spatialReference===e?t.spatialReferenceId:(t.spatialReference=e,"metersPerUnit"in t&&(t.metersPerUnit=(0,r.GA)(e,1)),(0,s.jA)(e)?t.spatialReferenceId=1:(0,c.oT)(e)?t.spatialReferenceId=2:(0,c.K8)(e)?t.spatialReferenceId=3:(0,c.r1)(e)?t.spatialReferenceId=11:e.wkt===s.Ro.wkt?t.spatialReferenceId=4:4490===e.wkid?t.spatialReferenceId=5:e.wkt===s.FY.wkt?t.spatialReferenceId=6:e.wkt===s.LJ.wkt?t.spatialReferenceId=8:(0,c.q8)(e)?t.spatialReferenceId=7:(0,c.KQ)(e)?t.spatialReferenceId=9:t.spatialReferenceId=0):0}function m(e,t,n,i){e!==n&&(n[i++]=e[t++],n[i++]=e[t++],n[i]=e[t])}function y(e,t,n,i){n[i]=k*(e[t]/j),n[i+1]=k*(E-2*Math.atan(Math.exp(-e[t+1]/j))),n[i+2]=e[t+2]}function g(e,t,n,r){!function(e,t,n,r,s){const o=.4999999*Math.PI,a=(0,i.qE)(P*e[t+1],-o,o),l=Math.sin(a);n[r++]=P*e[t]*s.radius,n[r++]=s.halfSemiMajorAxis*Math.log((1+l)/(1-l)),n[r]=e[t+2]}(e,t,n,r,o.$O)}function _(e,t,n,i){n[i]=e[t]*z,n[i+1]=e[t+1]*z,n[i+2]=e[t+2]}function w(e,t,n,i){n[i]=e[t]*B,n[i+1]=e[t+1]*B,n[i+2]=e[t+2]}function x(e,t,n,i,r){const s=r+e[t+2],o=P*e[t+1],a=P*e[t],l=Math.cos(o)*s;n[i]=Math.cos(a)*l,n[i+1]=Math.sin(a)*l,n[i+2]=Math.sin(o)*s}function b(e,t,n,i){x(e,t,n,i,o.Sw.radius)}function S(e,t,n,i){x(e,t,n,i,o.sH.radius)}function v(e,t,n,i){x(e,t,n,i,o.$O.radius)}function M(e,t,n,r,s){const o=e[t],a=e[t+1],l=e[t+2],u=Math.sqrt(o*o+a*a+l*l),c=(0,i.YN)(l/(0===u?1:u)),h=Math.atan2(a,o);n[r++]=k*h,n[r++]=k*c,n[r]=u-s}function C(e,t,n,i){M(e,t,n,i,o.Sw.radius)}function R(e,t,n,i){M(e,t,n,i,o.sH.radius)}function T(e,t,n,i){M(e,t,n,i,o.$O.radius)}function I(e,t,n,i){!function(e,t,n,i,r){const s=P*e[t],o=P*e[t+1],a=e[t+2],l=Math.sin(o),u=Math.cos(o),c=r.radius/Math.sqrt(1-r.eccentricitySquared*l*l);n[i++]=(c+a)*u*Math.cos(s),n[i++]=(c+a)*u*Math.sin(s),n[i++]=(c*(1-r.eccentricitySquared)+a)*l}(e,t,n,i,o.$O)}function F(e,t,n,i){const r=u,s=e[t],a=e[t+1],l=e[t+2];let c,h,d,p,f,m,y,g,_,w,x,b,S,v,M,C,R,T,I,F,A;c=Math.abs(l),h=s*s+a*a,d=Math.sqrt(h),p=h+l*l,f=Math.sqrt(p),F=Math.atan2(a,s),m=l*l/p,y=h/p,v=r.a2/f,M=r.a3-r.a4/f,y>.3?(g=c/f*(1+y*(r.a1+v+m*M)/f),I=Math.asin(g),w=g*g,_=Math.sqrt(1-w)):(_=d/f*(1-m*(r.a5-v-y*M)/f),I=Math.acos(_),w=1-_*_,g=Math.sqrt(w)),x=1-o.$O.eccentricitySquared*w,b=o.$O.radius/Math.sqrt(x),S=r.a6*b,v=d-b*_,M=c-S*g,R=_*v+g*M,C=_*M-g*v,T=C/(S/x+R),I+=T,A=R+C*T/2,l<0&&(I=-I),n[i++]=k*F,n[i++]=k*I,n[i]=A}const A={source:{spatialReference:null,spatialReferenceId:0,metersPerUnit:1},dest:{spatialReference:null,spatialReferenceId:0,metersPerUnit:1},projector:m},P=(0,i.kU)(1),k=(0,i.KJ)(1),E=.5*Math.PI,j=o.$O.radius,z=j*Math.PI/180,B=180/(j*Math.PI)},37730:(e,t,n)=>{n.d(t,{T:()=>r});var i=n(43334);const r={getObjectId:e=>e.objectId,getAttributes:e=>e.attributes,getAttribute:(e,t)=>e.attributes[t],cloneWithGeometry:(e,t)=>new i.Om(t,e.attributes,null,e.objectId),getGeometry:e=>e.geometry,getCentroid:(e,t)=>e.ensureCentroid(t)}},39357:(e,t,n)=>{n.d(t,{H:()=>l});var i,r=n(31635),s=n(25482),o=n(10107),a=(n(44208),n(53966),n(87811),n(40608));let l=i=class extends s.o{constructor(e){super(e),this.name=null,this.code=null}clone(){return new i({name:this.name,code:this.code})}};(0,r.Cg)([(0,o.MZ)({type:String,json:{write:{isRequired:!0}}})],l.prototype,"name",void 0),(0,r.Cg)([(0,o.MZ)({type:[String,Number],json:{write:{isRequired:!0}}})],l.prototype,"code",void 0),l=i=(0,r.Cg)([(0,a.$)("esri.layers.support.CodedValue")],l)},50498:(e,t,n)=>{n.d(t,{Ye:()=>h,gy:()=>c,yR:()=>d});var i=n(66552),r=n(5443),s=n(91075),o=n(48526),a=n(86738),l=n(39829),u=n(82799);const c=(0,i.O)()({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon"}),h=(0,i.O)()({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryEnvelope:"extent",mesh:"mesh"}),d={base:s.A,key:"type",typeMap:{extent:r.A,multipoint:o.A,point:a.A,polyline:u.A,polygon:l.A}}},53177:(e,t,n)=>{n.d(t,{A:()=>h});var i,r=n(31635),s=n(4718),o=n(10107),a=(n(44208),n(53966),n(93223)),l=n(40608),u=n(39357),c=n(76357);let h=class extends c.A{static{i=this}constructor(e){super(e),this.codedValues=null,this.type="coded-value"}getName(e){let t=null;if(this.codedValues){const n=String(e);this.codedValues.some(e=>(String(e.code)===n&&(t=e.name),!!t))}return t}clone(){return new i({codedValues:(0,s.o8)(this.codedValues),name:this.name})}};(0,r.Cg)([(0,o.MZ)({type:[u.H],json:{write:{isRequired:!0}}})],h.prototype,"codedValues",void 0),(0,r.Cg)([(0,a.e)({codedValue:"coded-value"})],h.prototype,"type",void 0),h=i=(0,r.Cg)([(0,l.$)("esri.layers.support.CodedValueDomain")],h)},60999:(e,t,n)=>{n.d(t,{DZ:()=>f,Ke:()=>p,Tj:()=>c,UT:()=>m,jJ:()=>u});var i=n(31635),r=n(65008),s=n(97768),o=n(74887),a=n(10107),l=n(40608);function u(e,t,n){return(0,o.Lx)(e.map((e,i)=>t.apply(n,[e,i])))}async function c(e,t,n){return(await(0,o.Lx)(e.map((e,i)=>t.apply(n,[e,i])))).map(e=>e.value)}function h(e){return{ok:!0,value:e}}function d(e){return{ok:!1,error:e}}async function p(e){if(null==e)return{ok:!1,error:new Error("no promise provided")};try{return h(await e)}catch(e){return d(e)}}async function f(e){try{return h(await e)}catch(e){return(0,o.QP)(e),d(e)}}function m(e,t){return new y(e,t)}let y=class extends r.A{get value(){return null!=(e=this._result)&&!0===e.ok?e.value:null;var e}get error(){return null!=(e=this._result)&&!1===e.ok?e.error:null;var e}get finished(){return null!=this._result}constructor(e,t){super({}),this._result=null,this._abortHandle=null,this.abort=()=>{this._abortController=(0,s.DC)(this._abortController)},this.remove=this.abort,this._abortController=new AbortController;const{signal:n}=this._abortController;this.promise=e(n),this.promise.then(e=>{this._result=h(e),this._cleanup()},e=>{this._result=d(e),this._cleanup()}),this._abortHandle=(0,o.u7)(t,this.abort)}normalizeCtorArgs(){return{}}destroy(){this.abort()}_cleanup(){this._abortHandle=(0,s.xt)(this._abortHandle),this._abortController=null}};(0,i.Cg)([(0,a.MZ)()],y.prototype,"value",null),(0,i.Cg)([(0,a.MZ)()],y.prototype,"error",null),(0,i.Cg)([(0,a.MZ)()],y.prototype,"finished",null),(0,i.Cg)([(0,a.MZ)()],y.prototype,"promise",void 0),(0,i.Cg)([(0,a.MZ)()],y.prototype,"_result",void 0),y=(0,i.Cg)([(0,l.$)("esri.core.asyncUtils.ReactiveTask")],y)},62815:(e,t,n)=>{n.d(t,{N:()=>o});var i=n(83047),r=n(73941),s=n(21325);function o(e,t,n){if(null==t||null==n||n.vcsWkid||(0,s.aI)(t,n)||(0,r.xP)(t)||(0,r.xP)(n))return null;const o=(0,i.G9)(t)/(0,i.G9)(n);if(1===o)return null;switch(e){case"point":case"esriGeometryPoint":return e=>function(e,t){null!=e?.z&&(e.z*=t)}(e,o);case"polyline":case"esriGeometryPolyline":return e=>function(e,t){if(e)for(const n of e.paths)for(const e of n)e.length>2&&(e[2]*=t)}(e,o);case"polygon":case"esriGeometryPolygon":return e=>function(e,t){if(e)for(const n of e.rings)for(const e of n)e.length>2&&(e[2]*=t)}(e,o);case"multipoint":case"esriGeometryMultipoint":return e=>function(e,t){if(e)for(const n of e.points)n.length>2&&(n[2]*=t)}(e,o);case"extent":case"esriGeometryEnvelope":return e=>function(e,t){e&&null!=e.zmin&&null!=e.zmax&&(e.zmin*=t,e.zmax*=t)}(e,o);default:return null}}},66344:(e,t,n)=>{n.d(t,{q:()=>a});const i=!!(0,n(44208).A)("esri-tests-disable-gpu-memory-measurements");Symbol.iterator;class r{get size(){return this._size}constructor(e=10485760){this._maxSize=e,this._db=new Map,this._size=0,this._hit=0,this._miss=0,this._users=new Map,this._sizeLimits=new Map}destroy(){this.clearAll(),this._sizeLimits.clear(),this._users.clear(),this._db=null}register(e){this._users.set(e.id.slice(0,-1),e)}deregister(e){this.clear(e),this._sizeLimits.delete(e),this._users.delete(e.id.slice(0,-1))}get maxSize(){return this._maxSize}set maxSize(e){this._maxSize=Math.max(e,-1),this._checkSize()}getSize(e,t){const n=this._db.get(e.id+t);return n?.size??0}put(e,t,n,r,o){t=e.id+t;const a=this._db.get(t);if(a&&(this._size-=a.size,e.size-=a.size,this._db.delete(t),a.entry!==n&&this._notifyRemove(t,a.entry,a.size,0)),r>this._maxSize)return void this._notifyRemove(t,n,r,0);if(void 0===n)return void console.warn("Refusing to cache undefined entry ");if(!r||r<0)return i||console.warn(`Refusing to cache entry with size ${r} for key ${t}`),void this._notifyRemove(t,n,0,0);const l=1+Math.max(o,-4)- -3;this._db.set(t,new s(n,r,l)),this._size+=r,e.size+=r,this._checkSize()}updateSize(e,t,n,i){t=e.id+t;const r=this._db.get(t);if(r&&r.entry===n){for(this._size-=r.size,e.size-=r.size;i>this._maxSize;){const e=this._notifyRemove(t,n,i,1);if(!(null!=e&&e>0))return void this._db.delete(t);i=e}r.size=i,this._size+=i,e.size+=i,this._checkSize()}}pop(e,t){t=e.id+t;const n=this._db.get(t);if(n)return this._size-=n.size,e.size-=n.size,this._db.delete(t),++this._hit,n.entry;++this._miss}get(e,t){t=e.id+t;const n=this._db.get(t);if(void 0!==n)return this._db.delete(t),n.lives=n.lifetime,this._db.set(t,n),++this._hit,n.entry;++this._miss}peek(e,t){const n=this._db.get(e.id+t);return n?++this._hit:++this._miss,n?.entry}get performanceInfo(){const e={Size:Math.round(this._size/1048576)+"/"+Math.round(this._maxSize/1048576)+"MB","Hit rate":Math.round(100*this._getHitRate())+"%",Entries:this._db.size.toString()},t={},n=new Array;this._db.forEach((e,i)=>{const r=e.lifetime;n[r]=(n[r]||0)+e.size,this._users.forEach(n=>{const{id:r,name:s}=n;if(i.startsWith(r)){const n=t[s]||0;t[s]=n+e.size}})});const i={};this._users.forEach(e=>{const n=e.name;if("hitRate"in e&&"number"==typeof e.hitRate&&!isNaN(e.hitRate)&&e.hitRate>0){const r=t[n]||0;t[n]=r,i[n]=Math.round(100*e.hitRate)+"%"}else i[n]="0%"});const r=Object.keys(t);r.sort((e,n)=>t[n]-t[e]),r.forEach(n=>e[n]=Math.round(t[n]/2**20)+"MB / "+i[n]);for(let t=n.length-1;t>=0;--t){const i=n[t];i&&(e["Priority "+(t+-3-1)]=Math.round(i/this._size*100)+"%")}return e}resetStats(){this._hit=this._miss=0,this._users.forEach(e=>e.resetHitRate())}clear(e){const t=e.id;this._db.forEach((e,n)=>{n.startsWith(t)&&(this._size-=e.size,this._db.delete(n),this._notifyRemove(n,e.entry,e.size,0))}),e.size=0}clearAll(){this._db.forEach((e,t)=>this._notifyRemove(t,e.entry,e.size,0)),this._users.forEach(e=>e.size=0),this._size=0,this._db.clear()}*values(e){for(const[t,n]of this._db)t.startsWith(e.id)&&(yield n.entry)}_getHitRate(){return this._hit/(this._hit+this._miss)}_notifyRemove(e,t,n,i){const r=this._users.get(e.split(o)[0])?.removeFunc,s=r?.(t,i,n);return"number"==typeof s?s:null}_checkSize(){this._sizeLimits.forEach((e,t)=>this._checkSizeLimits(e,t)),this._checkSizeLimits(this.maxSize)}setMaxSize(e,t){null==t||t<=0?this._sizeLimits.delete(e):this._sizeLimits.set(e,t)}_checkSizeLimits(e,t){const n=t??this;if(n.size<=e)return;const i=t?.id;let r=!0;for(;r;){r=!1;for(const[s,a]of this._db)if(0===a.lifetime&&(!i||s.startsWith(i))){const i=t??this._users.get(s.split(o)[0]);if(this._purgeItem(s,a,i),n.size<=.9*e)return;r||=this._db.has(s)}}for(const[r,s]of this._db)if(!i||r.startsWith(i)){const i=t??this._users.get(r.split(o)[0]);if(this._purgeItem(r,s,i),n.size<=.9*e)return}}_purgeItem(e,t,n){if(this._db.delete(e),t.lives<=1){this._size-=t.size,n&&(n.size-=t.size);const i=this._notifyRemove(e,t.entry,t.size,1);null!=i&&i>0&&(this._size+=i,n&&(n.size+=i),t.lives=t.lifetime,t.size=i,this._db.set(e,t))}else--t.lives,this._db.set(e,t)}}new r(0);class s{constructor(e,t,n){this.entry=e,this.size=t,this.lifetime=n,this.lives=n}}const o=":";class a{constructor(e,t){this.removeFunc=t,this._storage=new r,this.id="",this.name="",this.size=0,this._storage.maxSize=e,this._storage.register(this)}destroy(){this._storage.deregister(this),this._storage.destroy(),this._storage=null}put(e,t,n=1){this._storage.put(this,e,t,n,1)}pop(e){return this._storage.pop(this,e)}get(e){return this._storage.get(this,e)}clear(){this._storage.clearAll()}get maxSize(){return this._storage.maxSize}set maxSize(e){this._storage.maxSize=e}resetHitRate(){}}},67482:(e,t,n)=>{function i(e){return null!=a(e)||null!=o(e)}function r(e){return l.test(e)}function s(e){return a(e)??o(e)}function o(e){const t=new Date(e);return function(e,t){if(Number.isNaN(e.getTime()))return!1;let n=!0;if(c&&/\d+\W*$/.test(t)){const e=t.match(/[a-zA-Z]{2,}/);if(e){let t=!1,i=0;for(;!t&&i<=e.length;)t=!u.test(e[i]),i++;n=!t}}return n}(t,e)?Number.isNaN(t.getTime())?null:t.getTime()-6e4*t.getTimezoneOffset():null}function a(e){const t=l.exec(e);if(!t?.groups)return null;const n=t.groups,i=+n.year,r=+n.month-1,s=+n.day,o=+(n.hours??"0"),a=+(n.minutes??"0"),u=+(n.seconds??"0");if(o>23)return null;if(a>59)return null;if(u>59)return null;const c=n.ms??"0",h=c?+c.padEnd(3,"0").slice(0,3):0;let d;if(n.isUTC||!n.offsetSign)d=Date.UTC(i,r,s,o,a,u,h);else{const e=+n.offsetHours,t=+n.offsetMinutes;d=6e4*("+"===n.offsetSign?-1:1)*(60*e+t)+Date.UTC(i,r,s,o,a,u,h)}return Number.isNaN(d)?null:d}n.d(t,{Br:()=>r,Cq:()=>i,_U:()=>s});const l=/^(?:(?<year>-?\d{4,})-(?<month>\d{2})-(?<day>\d{2}))(?:T(?<hours>\d{2}):(?<minutes>\d{2}):(?<seconds>\d{2})(?:\.(?<ms>\d+))?)?(?:(?<isUTC>Z)|(?:(?<offsetSign>\+|-)(?<offsetHours>\d{2}):(?<offsetMinutes>\d{2})))?$/,u=/^((jan(uary)?)|(feb(ruary)?)|(mar(ch)?)|(apr(il)?)|(may)|(jun(e)?)|(jul(y)?)|(aug(ust)?)|(sep(tember)?)|(oct(ober)?)|(nov(ember)?)|(dec(ember)?)|(am)|(pm)|(gmt)|(utc))$/i,c=!Number.isNaN(new Date("technology 10").getTime())},69540:(e,t,n)=>{n.d(t,{OU:()=>c,Pw:()=>h});var i=n(31635),r=n(65008),s=(n(44208),n(4718)),o=(n(53966),n(97768)),a=n(88620),l=n(40608);const u=Symbol("ClonableMixin"),c=e=>{var t;const n=e;let r=class extends n{constructor(){super(...arguments),this[t]=!0}static{t=u}clone(e){const t=(0,a.oY)(this);(0,o.Lw)(t,"unable to clone instance of non-accessor class");const n=t.metadata,i=t.store,r={},l=new Map;for(const t in n){const o=n[t],a=i?.originOf(t),u=o.clonable;if(o.readOnly||!1===u||7!==a&&0!==a&&5!==a&&4!==a)continue;const c=this[t];let h=null;if("function"==typeof u)h=u(c,e);else if("reference"===u)h=c;else if(h=(0,s.TU)(c,e),null!=c&&null==h)continue;0===a?l.set(t,h):r[t]=h}const u=new(0,Object.getPrototypeOf(this).constructor)(r);if(l.size){const e=(0,a.oY)(u)?.store;if(e)for(const[t,n]of l)e.set(t,n,0)}return u}};return r=(0,i.Cg)([(0,l.$)("esri.core.Clonable")],r),r},h=c(r.A)},75503:(e,t,n)=>{n.d(t,{EC:()=>C,wq:()=>a});var i=n(4576),r=n(21818),s=(n(44208),n(15142)),o=n(11006);class a{constructor(e=9,t){this._compareMinX=d,this._compareMinY=p,this._toBBox=e=>e,this._maxEntries=Math.max(4,e||9),this._minEntries=Math.max(2,Math.ceil(.4*this._maxEntries)),t&&("function"==typeof t?this._toBBox=t:this._initFormat(t)),this.clear()}destroy(){this.clear(),b.prune(),S.prune(),v.prune(),M.prune()}all(e){l(this._data,e)}search(e,t){let n=this._data;const i=this._toBBox;if(w(e,n))for(b.clear();n;){for(let r=0,s=n.children.length;r<s;r++){const s=n.children[r],o=n.leaf?i(s):s;w(e,o)&&(n.leaf?t(s):_(e,o)?l(s,t):b.push(s))}n=b.pop()}}collides(e){let t=this._data;const n=this._toBBox;if(!w(e,t))return!1;for(b.clear();t;){for(let i=0,r=t.children.length;i<r;i++){const r=t.children[i],s=t.leaf?n(r):r;if(w(e,s)){if(t.leaf||_(e,s))return!0;b.push(r)}}t=b.pop()}return!1}load(e){if(!e.length)return this;if(e.length<this._minEntries){for(let t=0,n=e.length;t<n;t++)this.insert(e[t]);return this}let t=this._build(e.slice(),0,e.length-1,0);if(this._data.children.length)if(this._data.height===t.height)this._splitRoot(this._data,t);else{if(this._data.height<t.height){const e=this._data;this._data=t,t=e}this._insert(t,this._data.height-t.height-1,!0)}else this._data=t;return this}insert(e){return e&&this._insert(e,this._data.height-1),this}clear(){return this._data=new T([]),this}remove(e){if(!e)return this;let t,n=this._data,s=null,o=0,a=!1;const l=this._toBBox(e);for(v.clear(),M.clear();n||v.length>0;){if(n||(n=v.pop(),s=v.data[v.length-1],o=M.pop()??0,a=!0),n.leaf&&(t=(0,i.qh)(n.children,(0,r.zI)(e),n.children.length,n.indexHint),-1!==t))return n.children.splice(t,1),v.push(n),this._condense(v),this;a||n.leaf||!_(n,l)?s?(o++,n=s.children[o],a=!1):n=null:(v.push(n),M.push(o),o=0,s=n,n=n.children[0])}return this}toJSON(){return this._data}fromJSON(e){return this._data=e,this}_build(e,t,n,i){const r=n-t+1;let s=this._maxEntries;if(r<=s){const i=new T(e.slice(t,n+1));return u(i,this._toBBox),i}i||(i=Math.ceil(Math.log(r)/Math.log(s)),s=Math.ceil(r/s**(i-1)));const o=new I([]);o.height=i;const a=Math.ceil(r/s),l=a*Math.ceil(Math.sqrt(s));x(e,t,n,l,this._compareMinX);for(let r=t;r<=n;r+=l){const t=Math.min(r+l-1,n);x(e,r,t,a,this._compareMinY);for(let n=r;n<=t;n+=a){const r=Math.min(n+a-1,t);o.children.push(this._build(e,n,r,i-1))}}return u(o,this._toBBox),o}_insert(e,t,n){const i=this._toBBox,r=n?e:i(e);v.clear();const s=function(e,t,n,i){for(;i.push(t),!0!==t.leaf&&i.length-1!==n;){let n,i=1/0,r=1/0;for(let s=0,o=t.children.length;s<o;s++){const o=t.children[s],a=f(o),l=y(e,o)-a;l<r?(r=l,i=a<i?a:i,n=o):l===r&&a<i&&(i=a,n=o)}t=n||t.children[0]}return t}(r,this._data,t,v);for(s.children.push(e),h(s,r);t>=0&&v.data[t].children.length>this._maxEntries;)this._split(v,t),t--;!function(e,t,n){for(let i=n;i>=0;i--)h(t.data[i],e)}(r,v,t)}_split(e,t){const n=e.data[t],i=n.children.length,r=this._minEntries;this._chooseSplitAxis(n,r,i);const s=this._chooseSplitIndex(n,r,i);if(!s)return;const o=n.children.splice(s,n.children.length-s),a=n.leaf?new T(o):new I(o);a.height=n.height,u(n,this._toBBox),u(a,this._toBBox),t?e.data[t-1].children.push(a):this._splitRoot(n,a)}_splitRoot(e,t){this._data=new I([e,t]),this._data.height=e.height+1,u(this._data,this._toBBox)}_chooseSplitIndex(e,t,n){let i,r,s;i=r=1/0;for(let o=t;o<=n-t;o++){const t=c(e,0,o,this._toBBox),a=c(e,o,n,this._toBBox),l=g(t,a),u=f(t)+f(a);l<i?(i=l,s=o,r=u<r?u:r):l===i&&u<r&&(r=u,s=o)}return s}_chooseSplitAxis(e,t,n){const i=e.leaf?this._compareMinX:d,r=e.leaf?this._compareMinY:p;this._allDistMargin(e,t,n,i)<this._allDistMargin(e,t,n,r)&&e.children.sort(i)}_allDistMargin(e,t,n,i){e.children.sort(i);const r=this._toBBox,s=c(e,0,t,r),o=c(e,n-t,n,r);let a=m(s)+m(o);for(let i=t;i<n-t;i++){const t=e.children[i];h(s,e.leaf?r(t):t),a+=m(s)}for(let i=n-t-1;i>=t;i--){const t=e.children[i];h(o,e.leaf?r(t):t),a+=m(o)}return a}_condense(e){for(let t=e.length-1;t>=0;t--){const n=e.data[t];if(0===n.children.length)if(t>0){const r=e.data[t-1],s=r.children;s.splice((0,i.qh)(s,n,s.length,r.indexHint),1)}else this.clear();else u(n,this._toBBox)}}_initFormat(e){const t=["return a"," - b",";"];this._compareMinX=new Function("a","b",t.join(e[0])),this._compareMinY=new Function("a","b",t.join(e[1])),this._toBBox=new Function("a","return {minX: a"+e[0]+", minY: a"+e[1]+", maxX: a"+e[2]+", maxY: a"+e[3]+"};")}}function l(e,t){let n=e;for(S.clear();n;){if(!0===n.leaf)for(const e of n.children)t((0,r.zI)(e));else S.pushArray(n.children);n=S.pop()??null}}function u(e,t){c(e,0,e.children.length,t,e)}function c(e,t,n,i,r){r||(r=new T([])),r.minX=1/0,r.minY=1/0,r.maxX=-1/0,r.maxY=-1/0;for(let s,o=t;o<n;o++)s=e.children[o],h(r,e.leaf?i(s):s);return r}function h(e,t){e.minX=Math.min(e.minX,t.minX),e.minY=Math.min(e.minY,t.minY),e.maxX=Math.max(e.maxX,t.maxX),e.maxY=Math.max(e.maxY,t.maxY)}function d(e,t){return e.minX-t.minX}function p(e,t){return e.minY-t.minY}function f(e){return(e.maxX-e.minX)*(e.maxY-e.minY)}function m(e){return e.maxX-e.minX+(e.maxY-e.minY)}function y(e,t){return(Math.max(t.maxX,e.maxX)-Math.min(t.minX,e.minX))*(Math.max(t.maxY,e.maxY)-Math.min(t.minY,e.minY))}function g(e,t){const n=Math.max(e.minX,t.minX),i=Math.max(e.minY,t.minY),r=Math.min(e.maxX,t.maxX),s=Math.min(e.maxY,t.maxY);return Math.max(0,r-n)*Math.max(0,s-i)}function _(e,t){return e.minX<=t.minX&&e.minY<=t.minY&&t.maxX<=e.maxX&&t.maxY<=e.maxY}function w(e,t){return t.minX<=e.maxX&&t.minY<=e.maxY&&t.maxX>=e.minX&&t.maxY>=e.minY}function x(e,t,n,i,r){const s=[t,n];for(;s.length;){const t=s.pop(),n=s.pop();if(t-n<=i)continue;const a=n+Math.ceil((t-n)/i/2)*i;(0,o.q)(e,a,n,t,r),s.push(n,a,a,t)}}const b=new s.A,S=new s.A,v=new s.A,M=new s.A({deallocator:void 0});class C{constructor(){this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0}}class R extends C{constructor(){super(...arguments),this.height=1,this.indexHint=new i.vW}}class T extends R{constructor(e){super(),this.children=e,this.leaf=!0}}class I extends R{constructor(e){super(),this.children=e,this.leaf=!1}}},76357:(e,t,n)=>{n.d(t,{A:()=>c});var i=n(31635),r=n(66552),s=n(25482),o=n(10107),a=(n(44208),n(53966),n(87811),n(93223)),l=n(40608);const u=new r.J({inherited:"inherited",codedValue:"coded-value",range:"range"});let c=class extends s.o{constructor(e){super(e),this.name=null,this.type=null}};(0,i.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],c.prototype,"name",void 0),(0,i.Cg)([(0,a.e)(u),(0,o.MZ)({json:{write:{isRequired:!0}}})],c.prototype,"type",void 0),c=(0,i.Cg)([(0,l.$)("esri.layers.support.Domain")],c)},80451:(e,t,n)=>{n.d(t,{rS:()=>f,gK:()=>p}),n(44208);var i,r=n(53177),s=n(76357),o=n(31635),a=(n(53966),n(87811),n(49186),n(93223)),l=n(40608);let u=class extends s.A{static{i=this}constructor(e){super(e),this.type="inherited"}clone(){return new i}};(0,o.Cg)([(0,a.e)({inherited:"inherited"})],u.prototype,"type",void 0),u=i=(0,o.Cg)([(0,l.$)("esri.layers.support.InheritedDomain")],u);var c,h=n(10107);let d=class extends s.A{static{c=this}constructor(e){super(e),this.maxValue=null,this.minValue=null,this.type="range"}clone(){return new c({maxValue:this.maxValue,minValue:this.minValue,name:this.name})}};(0,o.Cg)([(0,h.MZ)({json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range?.[1]},write:{enabled:!1,overridePolicy(){return{enabled:null!=this.maxValue&&null==this.minValue}},target:"range",writer(e,t,n){t[n]=[this.minValue||0,e]},isRequired:!0}}})],d.prototype,"maxValue",void 0),(0,o.Cg)([(0,h.MZ)({json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range?.[0]},write:{target:"range",writer(e,t,n){t[n]=[e,this.maxValue||0]},isRequired:!0}}})],d.prototype,"minValue",void 0),(0,o.Cg)([(0,a.e)({range:"range"})],d.prototype,"type",void 0),d=c=(0,o.Cg)([(0,l.$)("esri.layers.support.RangeDomain")],d);const p={key:"type",base:s.A,typeMap:{range:d,"coded-value":r.A,inherited:u}};function f(e){if(!e?.type)return null;switch(e.type){case"range":return d.fromJSON(e);case"codedValue":return r.A.fromJSON(e);case"inherited":return u.fromJSON(e)}return null}},82832:(e,t,n)=>{n.d(t,{$1:()=>y,CR:()=>m,MB:()=>d,PC:()=>g,Yx:()=>l,bP:()=>c});var i=n(67482),r=n(21325),s=n(30524);class o{constructor(e){this.description=e,this.code=null}}class a{constructor(e){this.globalId=null,this.objectId=null,this.success=!1,this.uniqueId=null,this.error=new o(e)}}function l(e){return new a(e)}class u{constructor(e){this.globalId=null,this.success=!0,this.objectId=this.uniqueId=e}}function c(e){return new u(e)}const h=new Set;function d(e,t,n,i=!1){h.clear();for(const r in n){const o=e.get(r);if(!o)continue;const a=p(o,n[r]);if(h.add(o.name),o&&(i||o.editable)){const e=(0,s.CJ)(o,a);if(e)return l((0,s.uo)(e,o,a));t[o.name]=a}}for(const t of e.requiredFields??[])if(!h.has(t.name))return l(`missing required field "${t.name}"`);return null}function p(e,t){let n=t;return(0,s.WA)(e)&&"string"==typeof t?n=parseFloat(t):(0,s.yM)(e)&&null!=t&&"string"!=typeof t?n=String(t):(0,s.vE)(e)&&"string"==typeof t&&(n=(0,i._U)(t)),(0,s.WX)(n)}let f;function m(e,t){if(!e||!(0,r.fn)(t))return e;if("rings"in e||"paths"in e){if(null==f)throw new TypeError("geometry engine not loaded");return f.simplify(t,e)}return e}async function y(e,t){!(0,r.fn)(e)||"esriGeometryPolygon"!==t&&"esriGeometryPolyline"!==t||await async function(){return null==f&&(f=await Promise.all([n.e(9930),n.e(7559)]).then(n.bind(n,47559))),f}()}const g={supportsAutoIntervalBin:!0,supportsFixedIntervalBin:!0,supportsFixedBoundariesBin:!0,supportsDateBin:!0,supportsStackBy:!0,supportsSplitBy:!0,supportsNormalization:!0,supportedStatisticTypes:["COUNT","SUM","AVG","VAR","STDDEV","MIN","MAX","PERCENTILE_CONT","PERCENTILE_DISC","CentroidAggregate","EnvelopeAggregate","ConvexHullAggregate"],supportedNormalizationTypes:["field","log","naturalLog","percentOfTotal","squareRoot"]}},83221:(e,t,n)=>{n.d(t,{A:()=>f});var i=n(4576),r=n(49186),s=n(65529),o=n(53966),a=n(70328),l=n(19419),u=n(90708),c=n(6518),h=n(51441),d=n(37730);const p=(0,a.vt)();class f{constructor(e){this.geometryInfo=e,this._boundsStore=new c.F,this._featuresById=new Map,this._usedMemory=0,this.events=new s.bk,this.featureAdapter=d.T}get usedMemory(){return this._usedMemory}get geometryType(){return this.geometryInfo.geometryType}get hasM(){return this.geometryInfo.hasM}get hasZ(){return this.geometryInfo.hasZ}get numFeatures(){return this._featuresById.size}get fullBounds(){return this._boundsStore.fullBounds}get storeStatistics(){let e=0;return this._featuresById.forEach(t=>{null!=t.geometry&&t.geometry.coords&&(e+=t.geometry.coords.length)}),{featureCount:this._featuresById.size,vertexCount:e/(this.hasZ?this.hasM?4:3:this.hasM?3:2)}}getFullExtent(e){if(null==this.fullBounds)return null;const[t,n,i,r]=this.fullBounds;return{xmin:t,ymin:n,xmax:i,ymax:r,spatialReference:(0,h.ag)(e)}}add(e){this._add(e),this._emitChanged()}addMany(e){for(const t of e)this._add(t);this._emitChanged()}upsertMany(e){const t=e.map(e=>this._upsert(e));return this._emitChanged(),t.filter(i.Ru)}clear(){this._featuresById.clear(),this._boundsStore.clear(),this._emitChanged(),this._usedMemory=0}removeById(e){const t=this._featuresById.get(e);return t?(this._remove(t),this._emitChanged(),t):null}removeManyById(e){this._boundsStore.invalidateIndex();for(const t of e){const e=this._featuresById.get(t);e&&this._remove(e)}this._emitChanged()}forEachBounds(e,t){for(const n of e){const e=this._boundsStore.get(n.objectId);e&&t((0,a.Jt)(p,e))}}getFeature(e){return this._featuresById.get(e)}has(e){return this._featuresById.has(e)}forEach(e){this._featuresById.forEach(t=>e(t))}forEachInBounds(e,t){this._boundsStore.forEachInBounds(e,e=>{t(this._featuresById.get(e))})}_emitChanged(){this.events.emit("changed",void 0)}_add(e){if(!e)return;const t=e.objectId;if(null==t)return void o.A.getLogger("esri.layers.graphics.data.FeatureStore").error(new r.A("featurestore:invalid-feature","feature id is missing",{feature:e}));const n=this._featuresById.get(t);let i;if(n?(e.displayId=n.displayId,i=this._boundsStore.get(t),this._boundsStore.delete(t),this._usedMemory-=this.estimateFeatureUsedMemory?.(n)??0):null!=this.onFeatureAdd&&this.onFeatureAdd(e),!e.geometry?.coords?.length)return this._boundsStore.set(t,null),void this._featuresById.set(t,e);i=(0,u.jQ)(null!=i?i:(0,l.vt)(),e.geometry,this.geometryInfo.hasZ,this.geometryInfo.hasM),null!=i&&this._boundsStore.set(t,i),this._featuresById.set(t,e),this._usedMemory+=this.estimateFeatureUsedMemory?.(e)??0}_upsert(e){const t=e?.objectId;if(null==t)return o.A.getLogger("esri.layers.graphics.data.FeatureStore").error(new r.A("featurestore:invalid-feature","feature id is missing",{feature:e})),null;const n=this._featuresById.get(t);if(!n)return this._add(e),e;this._usedMemory-=this.estimateFeatureUsedMemory?.(n)??0;const{geometry:i,attributes:s}=e;for(const e in s)n.attributes[e]=s[e];return i&&(n.geometry=i,this._boundsStore.set(t,(0,u.jQ)((0,l.vt)(),i,this.geometryInfo.hasZ,this.geometryInfo.hasM)??null)),this._usedMemory+=this.estimateFeatureUsedMemory?.(n)??0,n}_remove(e){null!=this.onFeatureRemove&&this.onFeatureRemove(e);const t=e.objectId;return this._boundsStore.delete(t),this._featuresById.delete(t),this._usedMemory-=this.estimateFeatureUsedMemory?.(e)??0,e}}},85113:(e,t,n)=>{n.d(t,{BM:()=>M,bd:()=>C,sO:()=>v,xD:()=>c});var i=n(67482),r=n(49186),s=n(21325),o=n(43334),a=n(92722),l=n(30524);const u={LineString:"esriGeometryPolyline",MultiLineString:"esriGeometryPolyline",MultiPoint:"esriGeometryMultipoint",Point:"esriGeometryPoint",Polygon:"esriGeometryPolygon",MultiPolygon:"esriGeometryPolygon"};function c(e){return u[e]}function*h(e){switch(e.type){case"Feature":yield e;break;case"FeatureCollection":for(const t of e.features)t&&(yield t)}}function*d(e){if(e)switch(e.type){case"Point":yield e.coordinates;break;case"LineString":case"MultiPoint":yield*e.coordinates;break;case"MultiLineString":case"Polygon":for(const t of e.coordinates)yield*t;break;case"MultiPolygon":for(const t of e.coordinates)for(const e of t)yield*e}}function p(e){for(const t of e)if(t.length>2)return!0;return!1}function f(e){let t=0;for(let n=0;n<e.length;n++){const i=e[n],r=e[(n+1)%e.length];t+=i[0]*r[1]-r[0]*i[1]}return t<=0}function m(e){const t=e[0],n=e[e.length-1];return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]||e.push(t),e}function y(e,t,n){switch(t.type){case"LineString":case"MultiPoint":return function(e,t,n){return w(e,t.coordinates,n),e}(e,t,n);case"MultiLineString":return function(e,t,n){for(const i of t.coordinates)w(e,i,n);return e}(e,t,n);case"MultiPolygon":return function(e,t,n){for(const i of t.coordinates){g(e,i[0],n);for(let t=1;t<i.length;t++)_(e,i[t],n)}return e}(e,t,n);case"Point":return function(e,t,n){return b(e,t.coordinates,n),e}(e,t,n);case"Polygon":return function(e,t,n){const i=t.coordinates;g(e,i[0],n);for(let t=1;t<i.length;t++)_(e,i[t],n);return e}(e,t,n)}}function g(e,t,n){const i=m(t);!function(e){return!f(e)}(i)?w(e,i,n):x(e,i,n)}function _(e,t,n){const i=m(t);!function(e){return f(e)}(i)?w(e,i,n):x(e,i,n)}function w(e,t,n){for(const i of t)b(e,i,n);e.lengths.push(t.length)}function x(e,t,n){for(let i=t.length-1;i>=0;i--)b(e,t[i],n);e.lengths.push(t.length)}function b(e,t,n){const[i,r,s]=t;e.coords.push(i,r),n.hasZ&&e.coords.push(s||0)}function S(e){switch(typeof e){case"string":return(0,i.Br)(e)?"esriFieldTypeDate":"esriFieldTypeString";case"number":return"esriFieldTypeDouble";default:return"unknown"}}function v(e,t=4326){if(!e)throw new r.A("geojson-layer:empty","GeoJSON data is empty");if("Feature"!==e.type&&"FeatureCollection"!==e.type)throw new r.A("geojson-layer:unsupported-geojson-object","missing or not supported GeoJSON object type",{data:e});const{crs:n}=e;if(!n)return;const i="string"==typeof n?n:"name"===n.type?n.properties.name:"EPSG"===n.type?n.properties.code:null,o=(0,s.oT)({wkid:t})?new RegExp(".*(CRS84H?|4326)$","i"):new RegExp(`.*(${t})$`,"i");if(!i||!o.test(i))throw new r.A("geojson:unsupported-crs","unsupported GeoJSON 'crs' member",{crs:n})}function M(e,t={}){const n=[],i=new Set,r=new Set;let s,o=!1,a=null,u=!1,{geometryType:f=null}=t;for(const t of h(e)){const{geometry:e,properties:h,id:m}=t;if((!e||(f||(f=c(e.type)),c(e.type)===f))&&(o||(o=p(d(e))),u||(u=null!=m,u&&(s=typeof m,h&&(a=Object.keys(h).filter(e=>h[e]===m)))),h&&a&&u&&null!=m&&(a.length>1?a=a.filter(e=>h[e]===m):1===a.length&&(a=h[a[0]]===m?a:[])),h))for(const e in h){if(i.has(e))continue;const t=S(h[e]);if("unknown"===t){r.add(e);continue}r.delete(e),i.add(e);const s=(0,l.rS)(e);s&&n.push({name:s,alias:e,type:t})}}const m=(0,l.rS)(1===a?.length&&a[0]||null)??void 0;if(m)for(const e of n)if(e.name===m&&(0,l.WA)(e)){e.type="esriFieldTypeOID";break}return{fields:n,geometryType:f,hasZ:o,objectIdFieldName:m,objectIdFieldType:s,unknownFields:Array.from(r)}}function C(e,t){return Array.from(function*(e,t={}){const{geometryType:n,objectIdField:i}=t;for(const r of e){const{geometry:e,properties:s,id:l}=r;if(e&&c(e.type)!==n)continue;const u=s||{};let h;i&&(h=u[i],null==l||h||(u[i]=h=l));const d=new o.Om(e?y(new a.A,e,t):null,u,null,h);yield d}}(h(e),t))}},98453:(e,t,n)=>{n.d(t,{m:()=>i});const i=new(n(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"})},98988:(e,t,n)=>{n.r(t),n.d(t,{canProjectWithoutEngine:()=>D,getTransformation:()=>q,getTransformations:()=>L,initializeProjection:()=>W,isEqualBaseGCS:()=>Z,isLoaded:()=>P,isLoadedOrLoad:()=>k,isLoadedOrLoadFor:()=>E,load:()=>z,project:()=>B,projectExtent:()=>se,projectMany:()=>N,projectMultipoint:()=>K,projectOrLoad:()=>O,projectOrLoadMany:()=>G,projectPoint:()=>H,projectPolygon:()=>ie,projectPolyline:()=>te,projectWithZConversion:()=>U,projectWithoutEngine:()=>J,requiresLoad:()=>j,test:()=>$,tryProjectWithZConversion:()=>V,unload:()=>X});var i=n(49186),r=n(74887),s=n(62788),o=n(95488),a=n(51850),l=n(21276),u=n(73941),c=n(5443),h=n(48526),d=n(83290),p=n(86738),f=n(39829),m=n(82799),y=n(16930),g=n(9762),_=n(37539);function w(e,t,n,i,r,s){return x[0]=e,x[1]=t,x[2]=n,(0,g.projectBuffer)(x,i,0,r,s,0)}const x=(0,a.vt)();let b=0;class S{static fromGE(e){const t=new S;return t._wkt=e.wkt,t._wkid=e.wkid,t._isInverse=e.isInverse,t}constructor(e){this.uid=b++,e?(this._wkt=null!=e.wkt?e.wkt:null,this._wkid=null!=e.wkid?e.wkid:-1,this._isInverse=null!=e.isInverse&&!0===e.isInverse):(this._wkt=null,this._wkid=-1,this._isInverse=!1)}get wkt(){return this._wkt}set wkt(e){this._wkt=e,this.uid=b++}get wkid(){return this._wkid}set wkid(e){this._wkid=e,this.uid=b++}get isInverse(){return this._isInverse}set isInverse(e){this._isInverse=e,this.uid=b++}getInverse(){const e=new S;return e._wkt=this.wkt,e._wkid=this._wkid,e._isInverse=!this.isInverse,e}}class v{static cacheKey(e,t){return[e.wkid?.toString()??"-1",e.wkt?.toString()??"",e.wkt2?.toString()??"",t.wkid?.toString()??"-1",t.wkt?.toString()??"",t.wkt2?.toString()??""].join()}static fromGE(e){const t=new v;let n="";for(const i of e.steps){const e=S.fromGE(i);t.steps.push(e),n+=e.uid.toString()+","}return t._cachedProjection={},t._gtlistentry=null,t._chain=n,t}constructor(e){if(this.steps=[],this._cachedProjection={},this._chain="",this._gtlistentry=null,e?.steps)for(const t of e.steps)t instanceof S?this.steps.push(t):this.steps.push(new S({wkid:t.wkid,wkt:t.wkt,isInverse:t.isInverse}))}getInverse(){const e=new v;e.steps=[];for(let t=this.steps.length-1;t>=0;t--){const n=this.steps[t];e.steps.push(n.getInverse())}return e}getGTListEntry(){let e="";for(const t of this.steps)e+=t.uid.toString()+",";return e!==this._chain&&(this._gtlistentry=null,this._cachedProjection={},this._chain=e),this._gtlistentry}assignCachedGe(e,t,n){this._cachedProjection[v.cacheKey(e,t)]=n}getCachedGeTransformation(e,t){let n="";for(const e of this.steps)n+=e.uid.toString()+",";n!==this._chain&&(this._gtlistentry=null,this._cachedProjection={},this._chain=n);const i=this._cachedProjection[v.cacheKey(e,t)];return void 0===i?null:i}}var M=n(21325),C=n(62815);let R=null,T=null,I=null,F={};const A=new o.I;function P(){return!!R&&(0,d.i)()}function k(){return!!P()||((0,s.gc)(A),z(),!1)}function E(e,t){return!e||!t||D(e,t)||k()}function j(e,t){return!D(e,t)&&!P()}function z(e){return null==I&&(I=Promise.all([(0,d.l)(),n.e(9930).then(n.bind(n,49930)).then(e=>e.g),n.e(2731).then(n.bind(n,12731))])),I.then(([,t,{hydratedAdapter:n}])=>{(0,r.Te)(e),T=n,R=t.default,R._enableProjection(d.p),A.notify()})}function B(e,t,n=null,i=null){return Array.isArray(e)?0===e.length?[]:((0,l.H)(e),N(T,e,e[0].spatialReference,t,n,i)):((0,l.f)(e),N(T,[e],e.spatialReference,t,n,i)[0])}function N(e,t,n,i,r=null,s=null){if(null==n||null==i)return t;if(D(n,i,r))return t.map(e=>J(e,n,i));if(null==r&&(0,u.jA)(n))return t.map(e=>J(e,n,y.A.WGS84)).map(e=>V(e,i));if(null==r&&(0,u.jA)(i))return t.map(e=>V(e,y.A.WGS84)).map(e=>J(e,y.A.WGS84,i));if(null==r){const e=v.cacheKey(n,i);void 0!==F[e]?r=F[e]:(null==(r=q(n,i,void 0))&&(r=new v),F[e]=r)}if(null==R||null==e)throw new Y;return null!=s?R._project(e,t,n,i,r,s):R._project(e,t,n,i,r)}function O(e,t){const n=G([e],t);return null!=n.pending?{pending:n.pending,geometry:null}:null!=n.geometries?{pending:null,geometry:n.geometries[0]}:{pending:null,geometry:null}}function G(e,t){if(!P())for(const n of e)if(null!=n&&!(0,M.aI)(n.spatialReference,t)&&(0,M.fn)(n.spatialReference)&&(0,M.fn)(t)&&!D(n.spatialReference,t))return(0,s.gc)(A),{pending:z(),geometries:null};return{pending:null,geometries:e.map(e=>null==e?null:(0,M.aI)(e.spatialReference,t)?e:(0,M.fn)(e.spatialReference)&&(0,M.fn)(t)?V(e,t):null)}}function q(e,t,n=null){if(null==e||null==t)return null;if(null==R||null==T)throw new Y;const i=R._getTransformation(T,e,t,n,n?.spatialReference);return null!==i?v.fromGE(i):null}function L(e,t,n=null){if(null==R||null==T)throw new Y;const i=R._getTransformationBySuitability(T,e,t,n,n?.spatialReference);if(null!==i){const e=[];for(const t of i)e.push(v.fromGE(t));return e}return[]}class Y extends i.A{constructor(){super("projection:not-loaded","projection engine not fully loaded yet, please call load()")}}function X(){R=null,T=null,I=null,F={}}const $={get loadPromise(){return I}};function V(e,t){try{const n=B(e,t);if(null==n)return null;"xmin"in e&&"xmin"in n&&(n.zmin=e.zmin,n.zmax=e.zmax);const i=(0,C.N)(n.type,e.spatialReference,t);return null!=i&&i(n),n}catch(e){if(!(e instanceof Y))throw e;return null}}async function U(e,t,n){const i=e.spatialReference;return null!=i&&null!=t&&await W(i,t,null,n),V(e,t)}function D(e,t,n){return!n&&(!!(0,M.aI)(e,t)||(0,M.fn)(e)&&(0,M.fn)(t)&&!!(0,_.jd)(e,t))}function Z(e,t){if((0,M.aI)(e,t))return!0;if(!(0,M.fn)(e)||!(0,M.fn)(t))return!1;const n=(0,M.oT)(e)||(0,M.K8)(e)||(0,M.x1)(e),i=(0,M.oT)(t)||(0,M.K8)(t)||(0,M.x1)(t);return n&&i}async function W(e,t,n,i){if(P())return(0,r.NO)(i);if(Array.isArray(e)){for(const{source:t,dest:n,geographicTransformation:r}of e)if(t&&n&&!D(t,n,r))return z(i)}else if(e&&t&&!D(e,t,n))return z(i);return(0,r.NO)(i)}function J(e,t,n){return e?"x"in e?Q(e,t,new p.A,n,0):"xmin"in e?oe(e,t,new c.A,n,0):"rings"in e?re(e,t,new f.A,n,0):"paths"in e?ne(e,t,new m.A,n,0):"points"in e?ee(e,t,new h.A,n,0):null:null}function H(e,t,n=t.spatialReference,i=0){return null!=n&&null!=e.spatialReference&&null!=Q(e,e.spatialReference,t,n,i)}function Q(e,t,n,i,r){le[0]=e.x,le[1]=e.y;const s=e.z;return le[2]=void 0!==s?s:r,(0,g.projectBuffer)(le,t,0,le,i,0)?(n.x=le[0],n.y=le[1],n.spatialReference=i,void 0!==s||(0,u.xP)(i)?(n.z=le[2],n.hasZ=!0):(n.z=void 0,n.hasZ=!1),void 0===e.m?(n.m=void 0,n.hasM=!1):(n.m=e.m,n.hasM=!0),n):null}function K(e,t,n=t.spatialReference,i=0){return null!=e.spatialReference&&null!=n&&null!=ee(e,e.spatialReference,t,n,i)}function ee(e,t,n,i,r){const{points:s,hasZ:o,hasM:a}=e,l=[],c=s.length,h=[];for(const e of s)h.push(e[0],e[1],o?e[2]:r);if(!(0,g.projectBuffer)(h,t,0,h,i,0,c))return null;const d=o||(0,u.xP)(i);for(let e=0;e<c;++e){const t=3*e,n=h[t],i=h[t+1];d&&a?l.push([n,i,h[t+2],s[e][3]]):d?l.push([n,i,h[t+2]]):a?l.push([n,i,s[e][2]]):l.push([n,i])}return n.points=l,n.spatialReference=i,n.hasZ=o,n.hasM=a,n}function te(e,t,n=t.spatialReference,i=0){return null!=e.spatialReference&&null!=n&&null!=ne(e,e.spatialReference,t,n,i)}function ne(e,t,n,i,r){const{paths:s,hasZ:o,hasM:a}=e,l=[];if(!ae(s,o??!1,a??!1,t,l,i,r))return null;const c=o||(0,u.xP)(i);return n.paths=l,n.spatialReference=i,n.hasZ=c,n.hasM=a,n}function ie(e,t,n=t.spatialReference,i=0){return null!=e.spatialReference&&null!=n&&null!=re(e,e.spatialReference,t,n,i)}function re(e,t,n,i,r){const{rings:s,hasZ:o,hasM:a}=e,l=[];if(!ae(s,o??!1,a??!1,t,l,i,r))return null;const c=o||(0,u.xP)(i);return n.rings=l,n.spatialReference=i,n.hasZ=c,n.hasM=a,n}function se(e,t,n=t.spatialReference,i=0){return null!=e.spatialReference&&null!=n&&null!=oe(e,e.spatialReference,t,n,i)}function oe(e,t,n,i,r){const{xmin:s,ymin:o,xmax:a,ymax:l,hasZ:c,hasM:h}=e;if(!w(s,o,c?e.zmin:r,t,le,i))return null;const d=c||(0,u.xP)(i);return n.xmin=le[0],n.ymin=le[1],d&&(n.zmin=le[2]),w(a,l,c?e.zmax:r,t,le,i)?(n.xmax=le[0],n.ymax=le[1],d&&(n.zmax=le[2]),h&&(n.mmin=e.mmin,n.mmax=e.mmax),n.spatialReference=i,n):null}function ae(e,t,n,i,r,s,o=0){const a=new Array;for(const n of e)for(const e of n)a.push(e[0],e[1],t?e[2]:o);if(!(0,g.projectBuffer)(a,i,0,a,s,0))return!1;let l=0;r.length=0;const c=t||(0,u.xP)(s);for(const t of e){const e=new Array;for(const i of t)c&&n?e.push([a[l++],a[l++],a[l++],i[3]]):c?e.push([a[l++],a[l++],a[l++]]):n?(e.push([a[l++],a[l++],i[2]]),l++):(e.push([a[l++],a[l++]]),l++);r.push(e)}return!0}const le=(0,a.vt)()}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[8969],{2272:(e,t,n)=>{n.d(t,{Dl:()=>u,gf:()=>h,jV:()=>l,lF:()=>c});var i=n(92602),r=n(70333),s=n(4718),o=n(84952),a=n(926);function l(e,t){return t?{...t,query:{...e,...t.query}}:{query:e}}function u(e){return"string"==typeof e?(0,o.An)(e):(0,s.o8)(e)}function c(e,t,n){const i={};for(const r in e){if("declaredClass"===r)continue;const s=e[r];if(null!=s&&"function"!=typeof s)if(Array.isArray(s))i[r]=s.map(e=>c(e));else if("object"==typeof s)if(s.toJSON){const e=s.toJSON(n?.[r]);i[r]=t?e:JSON.stringify(e)}else i[r]=t?s:JSON.stringify(s);else i[r]=s}return i}async function h(e,t,s){const o=function(e,t){return e?t&&(0,a.Qc)(e)?t:(0,a.CG)(e)??r.id?.findCredential(e)?.token:null}(e,t);if(o)return o;!r.id&&i.A.request.useIdentity&&await Promise.all([n.e(7330),n.e(4813),n.e(3747)]).then(n.bind(n,73747));const l=await r.id.getCredential(e,s);return l?.token}},6518:(e,t,n)=>{n.d(t,{F:()=>a});var i=n(44208),r=n(75503),s=n(19419);const o={minX:0,minY:0,maxX:0,maxY:0};class a{constructor(){this._indexInvalid=!1,this._boundsToLoad=[],this._boundsById=new Map,this._idByBounds=new Map,this._index=new r.wq(9,(0,i.A)("esri-csp-restrictions")?e=>({minX:e[0],minY:e[1],maxX:e[2],maxY:e[3]}):["[0]","[1]","[2]","[3]"]),this._loadIndex=()=>{if(this._indexInvalid){const e=new Array(this._idByBounds.size);let t=0;this._idByBounds.forEach((n,i)=>{e[t++]=i}),this._indexInvalid=!1,this._index.clear(),this._index.load(e)}else this._boundsToLoad.length&&(this._index.load(Array.from(new Set(this._boundsToLoad.filter(e=>this._idByBounds.has(e))))),this._boundsToLoad.length=0)}}get fullBounds(){if(!this._boundsById.size)return null;const e=(0,s.Ie)();for(const t of this._boundsById.values())t&&(e[0]=Math.min(t[0],e[0]),e[1]=Math.min(t[1],e[1]),e[2]=Math.max(t[2],e[2]),e[3]=Math.max(t[3],e[3]));return e}get valid(){return!this._indexInvalid}clear(){this._indexInvalid=!1,this._boundsToLoad.length=0,this._boundsById.clear(),this._idByBounds.clear(),this._index.clear()}delete(e){const t=this._boundsById.get(e);this._boundsById.delete(e),t&&(this._idByBounds.delete(t),this._indexInvalid||this._index.remove(t))}forEachInBounds(e,t){this._loadIndex(),function(e,t,n){(function(e){o.minX=e[0],o.minY=e[1],o.maxX=e[2],o.maxY=e[3]})(t),e.search(o,n)}(this._index,e,e=>t(this._idByBounds.get(e)))}get(e){return this._boundsById.get(e)}has(e){return this._boundsById.has(e)}invalidateIndex(){this._indexInvalid||(this._indexInvalid=!0,this._boundsToLoad.length=0)}set(e,t){if(!this._indexInvalid){const t=this._boundsById.get(e);t&&(this._index.remove(t),this._idByBounds.delete(t))}this._boundsById.set(e,t),t&&(this._idByBounds.set(t,e),this._indexInvalid||(this._boundsToLoad.push(t),this._boundsToLoad.length>5e4&&this._loadIndex()))}}},9762:(e,t,n)=>{n.r(t),n.d(t,{projectBuffer:()=>r});var i=n(37539);function r(e,t,n,r,s,o,a=Math.floor(e.length/3)){const l=(0,i.jd)(t,s);if(null==l)return!1;if(l===i.pO){if(e===r&&n===o)return!0;const t=n+3*a;for(let i=n,s=o;i<t;i++,s++)r[s]=e[i];return!0}const u=n+3*a;for(let t=n,i=o;t<u;t+=3,i+=3)l(e,t,r,i);return!0}},13043:(e,t,n)=>{function i(e,t){if(e&&t)for(const n of e.children)if(n.localName in t){const e=t[n.localName];if("function"==typeof e){const t=e(n);t&&i(n,t)}else i(n,e)}}function*r(e,t){for(const n of e.children)if(n.localName in t){const e=t[n.localName];"function"==typeof e?yield e(n):yield*r(n,e)}}n.d(t,{i:()=>r,p:()=>i})},20437:(e,t,n)=>{n.d(t,{A:()=>m});var i,r=n(31635),s=n(66552),o=n(25482),a=n(10107),l=n(56507),u=(n(44208),n(87811),n(93223)),c=n(36005),h=n(40608),d=n(80451),p=n(98453);const f=new s.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 m=class extends o.o{static{i=this}constructor(e){super(e),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(e,{description:t}){let n=null;try{n=t?JSON.parse(t):null}catch(e){}return n?.value??null}readValueType(e,{description:t}){let n=null;try{n=t?JSON.parse(t):null}catch(e){}return n?f.fromJSON(n.fieldValueType):null}clone(){return new i({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,r.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],m.prototype,"alias",void 0),(0,r.Cg)([(0,a.MZ)({type:[String,Number],json:{write:{allowNull:!0}}})],m.prototype,"defaultValue",void 0),(0,r.Cg)([(0,a.MZ)()],m.prototype,"description",void 0),(0,r.Cg)([(0,c.w)("description")],m.prototype,"readDescription",null),(0,r.Cg)([(0,a.MZ)({types:d.gK,json:{read:{reader:d.rS},write:!0}})],m.prototype,"domain",void 0),(0,r.Cg)([(0,a.MZ)({type:Boolean,json:{write:!0}})],m.prototype,"editable",void 0),(0,r.Cg)([(0,a.MZ)({type:l.jz,json:{write:{overridePolicy:e=>({enabled:Number.isFinite(e)})}}})],m.prototype,"length",void 0),(0,r.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],m.prototype,"name",void 0),(0,r.Cg)([(0,a.MZ)({type:Boolean,json:{write:!0}})],m.prototype,"nullable",void 0),(0,r.Cg)([(0,u.e)(p.m)],m.prototype,"type",void 0),(0,r.Cg)([(0,a.MZ)()],m.prototype,"valueType",void 0),(0,r.Cg)([(0,c.w)("valueType",["description"])],m.prototype,"readValueType",null),(0,r.Cg)([(0,a.MZ)({type:Boolean,json:{read:!1}})],m.prototype,"visible",void 0),m=i=(0,r.Cg)([(0,h.$)("esri.layers.support.Field")],m)},33771:(e,t,n)=>{n.r(t),n.d(t,{default:()=>b});var i=n(60999),r=n(49186),s=n(53966),o=n(34727),a=n(74887),l=n(67076),u=n(21325),c=n(90708),h=n(83221),d=n(31464),p=n(56390),f=n(85113),m=n(82832),y=n(34322),g=n(95466),_=n(54218),w=n(98623);const x="esri.layers.WFSLayer";class b{constructor(){this._customParameters=null,this._queryEngine=null,this._supportsPagination=!0}destroy(){this._queryEngine?.destroy(),this._queryEngine=null}async load(e,t={}){const{getFeatureUrl:n,getFeatureOutputFormat:i,fields:s,geometryType:o,featureType:l,maxRecordCount:u,maxTotalRecordCount:c,maxPageCount:f,objectIdField:m,customParameters:_}=e,{spatialReference:x,getFeatureSpatialReference:b}=(0,y.UH)(n,l,e.spatialReference);try{await(0,d.Nk)(b,x)}catch{throw new r.A("unsupported-projection","Projection not supported",{inSpatialReference:b,outSpatialReference:x})}(0,a.Te)(t),this._customParameters=_,this._featureType=l,this._fieldsIndex=g.A.fromLayerJSON({fields:s,dateFieldsTimeReference:s.some(e=>"esriFieldTypeDate"===e.type)?{timeZoneIANA:w.n$}:null}),this._geometryType=o,this._getFeatureUrl=n,this._getFeatureOutputFormat=i,this._getFeatureSpatialReference=b,this._maxRecordCount=u,this._maxTotalRecordCount=c,this._maxPageCount=f,this._objectIdField=m,this._spatialReference=x;let v=await this._snapshotFeatures(t);if(v.errors.length>0&&(this._supportsPagination=!1,v=await this._snapshotFeatures(t),v.errors.length>0))throw v.errors[0];const M={type:"object-id",fieldName:m};return this._queryEngine=new p.do({fieldsIndex:this._fieldsIndex,geometryType:o,hasM:!1,hasZ:!1,featureIdInfo:M,spatialReference:x,timeInfo:null,featureStore:new h.A({geometryType:o,hasM:!1,hasZ:!1})}),this._queryEngine.featureStore.addMany(v.features),{warnings:S(v),extent:(await this._queryEngine.fetchRecomputedExtents()).fullExtent}}async applyEdits(){throw new r.A("wfs-source:editing-not-supported","applyEdits() is not supported on WFSLayer")}async queryFeatures(e={},t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeQuery(e,t.signal)}async queryFeatureCount(e={},t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeQueryForCount(e,t.signal)}async queryObjectIds(e={},t={}){return await this._waitSnapshotComplete(),(await this._queryEngine.executeQueryForIds(e,t.signal)).filter(_.Et)}async queryExtent(e={},t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeQueryForExtent(e,t.signal)}async querySnapping(e,t={}){return await this._waitSnapshotComplete(),await this._queryEngine.executeQueryForSnapping(e,t.signal)}async queryAttributeBins(e,t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeAttributeBinsQuery(e,t.signal)}async refresh(e){return this._customParameters=e.customParameters,this._maxRecordCount=e.maxRecordCount,this._maxTotalRecordCount=e.maxTotalRecordCount,this._maxPageCount=e.maxPageCount,this._snapshotTask?.abort(),this._snapshotTask=(0,i.UT)(e=>this._snapshotFeatures({signal:e})),this._snapshotTask.promise.then(e=>{this._queryEngine.featureStore.clear(),this._queryEngine.featureStore.addMany(e.features);for(const t of S(e))s.A.getLogger(x).warn(new l.A("wfs-layer:refresh-warning",t.message,t.details));e.errors?.length&&s.A.getLogger(x).warn(new l.A("wfs-layer:refresh-error","Refresh completed with errors",{errors:e.errors}))},()=>{this._queryEngine.featureStore.clear()}),await this._waitSnapshotComplete(),{extent:(await this._queryEngine.fetchRecomputedExtents()).fullExtent}}async _waitSnapshotComplete(){if(this._snapshotTask&&!this._snapshotTask.finished){try{await this._snapshotTask.promise}catch{}return this._waitSnapshotComplete()}}async _snapshotFeatures(e){const t=e?.signal,n=this._maxTotalRecordCount,i=this._maxPageCount,r=this._supportsPagination&&i>1?await(0,y.E)(this._getFeatureUrl,this._featureType.typeName,{customParameters:this._customParameters,signal:t}):void 0;let s=[];const l=[];if(null==r)try{s=await this._singleQuery(t)}catch(e){(0,a.zf)(e)||l.push(e)}else{const e=Math.min(r,n),u=function*(e,t,n){for(let i=0;i<t;i++)yield e._pageQuery(i,n)}(this,(0,o.qE)(Math.ceil(e/this._maxRecordCount),1,i),t);await Promise.allSettled(Array.from({length:10}).map(()=>async function(e,t,n){let i=e.next();for(;!i.done;){try{const e=await i.value;t.push(...e)}catch(e){(0,a.zf)(e)||n.push(e)}i=e.next()}}(u,s,l)))}return(0,a.Te)(t),{features:s,totalRecordCount:r,maxTotalRecordCount:n,maxPageCount:i,errors:l}}async _singleQuery(e){const t=Number.isFinite(this._maxRecordCount)&&this._maxRecordCount>0?this._maxRecordCount:void 0,n=await(0,y.x$)(this._getFeatureUrl,this._featureType.typeName,this._getFeatureSpatialReference,this._getFeatureOutputFormat,{customParameters:this._customParameters,count:t,signal:e});return this._processGeoJSON(n,{signal:e})}async _pageQuery(e,t){const n=e*this._maxRecordCount,i=await(0,y.x$)(this._getFeatureUrl,this._featureType.typeName,this._getFeatureSpatialReference,this._getFeatureOutputFormat,{customParameters:this._customParameters,startIndex:n,count:this._maxRecordCount,signal:t});return this._processGeoJSON(i,{startIndex:n,signal:t})}_processGeoJSON(e,t){(0,f.sO)(e,this._getFeatureSpatialReference.wkid);const{startIndex:n,signal:i}=t;(0,a.Te)(i);const r=(0,f.bd)(e,{geometryType:this._geometryType,hasZ:!1,objectIdField:this._objectIdField});if(!(0,u.aI)(this._spatialReference,this._getFeatureSpatialReference))for(const e of r)null!=e.geometry&&(e.geometry=(0,c.Ux)((0,d.Cv)((0,c.zv)(e.geometry,this._geometryType,!1,!1),this._getFeatureSpatialReference,this._spatialReference)));let s=n??1;for(const e of r){const t={};(0,m.MB)(this._fieldsIndex,t,e.attributes,!0),e.attributes=t,null==t[this._objectIdField]&&(e.objectId=t[this._objectIdField]=s++)}return r}}function S(e){const t=[];return null!=e.totalRecordCount&&(e.features.length<e.totalRecordCount&&t.push({name:"wfs-layer:maxRecordCount-too-low",message:`Could only fetch ${e.features.length} of ${e.totalRecordCount} in ${e.maxPageCount} queries. Try increasing the value of WFSLayer.maxRecordCount.`,details:{recordCount:e.features.length,totalRecordCount:e.totalRecordCount}}),e.totalRecordCount>e.maxTotalRecordCount&&t.push({name:"wfs-layer:large-dataset",message:`The number of ${e.totalRecordCount} features exceeds the maximum allowed of ${e.maxTotalRecordCount}.`,details:{recordCount:e.features.length,totalRecordCount:e.totalRecordCount,maxTotalRecordCount:e.maxTotalRecordCount}})),t}},34322:(e,t,n)=>{n.d(t,{E:()=>X,Fu:()=>A,O8:()=>B,UH:()=>D,YW:()=>N,i5:()=>w,mG:()=>z,x$:()=>L});var i=n(78888),r=n(49186),s=n(5479),o=n(84952),a=n(5443),l=n(98988),u=n(16930),c=n(21325),h=n(50498),d=n(85113),p=n(13043),f=n(60694),m=n(20437),y=n(30524);const g="xlink:href",_="2.0.0",w="__esri_wfs_id__",x="wfs-layer:getWFSLayerTypeInfo-error",b="wfs-layer:empty-service",S="wfs-layer:feature-type-not-found",v="wfs-layer:geojson-not-supported",M="wfs-layer:kvp-encoding-not-supported",C="wfs-layer:malformed-json",R="wfs-layer:unknown-geometry-type",T="wfs-layer:unknown-field-type",I="wfs-layer:unsupported-spatial-reference",F="wfs-layer:unsupported-wfs-version";async function A(e,t){const n=function(e){const t=$(e);(function(e){const t=e.firstElementChild?.getAttribute("version");if(t&&t!==_)throw new r.A(F,`Unsupported WFS version ${t}. Supported version: ${_}`)})(t),U(t);const n=t.firstElementChild,i=(0,s.PP)(function(e){return(0,p.i)(e,{FeatureTypeList:{FeatureType:e=>{const t={typeName:"undefined:undefined",name:"",title:"",description:"",extent:null,namespacePrefix:"",namespaceUri:"",defaultSpatialReference:4326,supportedSpatialReferences:[]},n=new Set;return(0,p.p)(e,{Name:e=>{const{name:n,prefix:i}=V(e.textContent);t.typeName=`${i}:${n}`,t.name=n,t.namespacePrefix=i,t.namespaceUri=e.lookupNamespaceURI(i)},Abstract:e=>{t.description=e.textContent},Title:e=>{t.title=e.textContent},WGS84BoundingBox:e=>{t.extent=a.A.fromJSON(function(e){let t,n,i,r;for(const s of e.children)switch(s.localName){case"LowerCorner":[t,n]=s.textContent.split(" ").map(e=>Number.parseFloat(e));break;case"UpperCorner":[i,r]=s.textContent.split(" ").map(e=>Number.parseFloat(e))}return{xmin:t,ymin:n,xmax:i,ymax:r,spatialReference:c.KK}}(e))},DefaultCRS:e=>{const i=j(e);i&&(t.defaultSpatialReference=i,n.add(i))},OtherCRS:e=>{const t=j(e);t&&n.add(t)}}),t.title||(t.title=t.name),n.add(4326),t.supportedSpatialReferences.push(...n),t}}})}(n));return{operations:E(n),get featureTypes(){return Array.from(i())},readFeatureTypes:i}}((await(0,i.A)(e,{responseType:"text",query:{SERVICE:"WFS",REQUEST:"GetCapabilities",VERSION:_,...t?.customParameters},signal:t?.signal})).data);return function(e,t){(0,o.m3)(e)&&((0,o.FX)(e,t.operations.DescribeFeatureType.url,!0)&&(t.operations.DescribeFeatureType.url=(0,o.lM)(t.operations.DescribeFeatureType.url)),(0,o.FX)(e,t.operations.GetFeature.url,!0)&&(t.operations.GetFeature.url=(0,o.lM)(t.operations.GetFeature.url)))}(e,n),n}const P=["json","application/json; subtype=geojson; charset=utf-8","application/json; subtype=geojson","application/json","geojson","application/geo+json"];function k(e){for(const t of P){const n=e.findIndex(e=>e.toLowerCase()===t);if(n>=0)return e[n]}return null}function E(e){let t=!0;const n={GetCapabilities:{url:""},DescribeFeatureType:{url:""},GetFeature:{url:"",outputFormat:null,supportsPagination:!1}},i=[],s=[];if((0,p.p)(e,{OperationsMetadata:{Parameter:e=>{if("outputformat"===e.getAttribute("name")?.toLowerCase())return{AllowedValues:{Value:({textContent:e})=>{e&&i.push(e)}}}},Operation:e=>{switch(e.getAttribute("name")){case"GetCapabilities":return{DCP:{HTTP:{Get:e=>{n.GetCapabilities.url=e.getAttribute(g)}}}};case"DescribeFeatureType":return{DCP:{HTTP:{Get:e=>{n.DescribeFeatureType.url=e.getAttribute(g)}}}};case"GetFeature":return{DCP:{HTTP:{Get:e=>{n.GetFeature.url=e.getAttribute(g)}}},Parameter:e=>{if("outputformat"===e.getAttribute("name")?.toLowerCase())return{AllowedValues:{Value:({textContent:e})=>{e&&s.push(e)}}}}}}},Constraint:e=>{switch(e.getAttribute("name")){case"KVPEncoding":return{DefaultValue:e=>{t="true"===e.textContent.toLowerCase()}};case"ImplementsResultPaging":return{DefaultValue:e=>{n.GetFeature.supportsPagination="true"===e.textContent.toLowerCase()}}}}}}),n.GetFeature.outputFormat=k(s)??k(i),!t)throw new r.A(M,"WFS service doesn't support key/value pair (KVP) encoding");if(null==n.GetFeature.outputFormat)throw new r.A(v,"WFS service doesn't support GeoJSON output format");return n}function j(e){const t=parseInt(e.textContent?.match(/(?<wkid>\d+$)/i)?.groups?.wkid??"",10);if(!Number.isNaN(t))return t}function z(e,t,n){return(0,s.I6)(e,e=>n?e.name===t&&e.namespaceUri===n:e.typeName===t||e.name===t)}async function B(e,t,n,i={}){const{featureType:s,extent:o}=await async function(e,t,n,i={}){const s=e.readFeatureTypes(),o=t?z(s,t,n):s.next().value,{spatialReference:a=new u.A({wkid:o?.defaultSpatialReference})}=i;if(null==o)throw t?new r.A(S,`The type '${t}' could not be found in the service`):new r.A(b,"The service is empty");let h=o.extent;if(h&&!(0,c.aI)(h.spatialReference,a))try{await(0,l.initializeProjection)(h.spatialReference,a,void 0,i),h=(0,l.project)(h,a)}catch{throw new r.A(I,"Projection not supported")}return{extent:h,spatialReference:a,featureType:o}}(e,t,n,i),{spatialReference:a}=D(e.operations.GetFeature.url,s,i.spatialReference),{fields:h,geometryType:d,swapXY:p,objectIdField:f,geometryField:m}=await async function(e,t,n,i={}){const{typeName:s}=t,[o,a]=await Promise.allSettled([G(e.operations.DescribeFeatureType.url,s,i),O(e,s,n,i)]),l=e=>new r.A(x,`An error occurred while getting info about the feature type '${s}'`,{error:e});if("rejected"===o.status)throw l(o.reason);if("rejected"===a.status)throw l(a.reason);const{fields:u,errors:c}=o.value??{},h=o.value?.geometryType||a.value?.geometryType,d=a.value?.swapXY??!1;if(null==h)throw new r.A(R,`The geometry type could not be determined for type '${s}`,{typeName:s,geometryType:h,fields:u,errors:c});return{...N(u??[]),geometryType:h,swapXY:d}}(e,s,a,i);return{url:e.operations.GetCapabilities.url,name:s.name,namespaceUri:s.namespaceUri,fields:h,geometryField:m,geometryType:d,objectIdField:f,spatialReference:i.spatialReference??new u.A({wkid:s.defaultSpatialReference}),extent:o,swapXY:p,wfsCapabilities:e,customParameters:i.customParameters}}function N(e){const t=e.find(e=>"geometry"===e.type);let n=e.find(e=>"oid"===e.type);return e=e.filter(e=>"geometry"!==e.type),n||(n=new m.A({name:w,type:"oid",alias:w}),e.unshift(n)),{geometryField:t?.name??null,objectIdField:n.name,fields:e}}async function O(e,t,n,r={}){let s,o=!1;const[a,l]=await Promise.all([L(e.operations.GetFeature.url,t,n,e.operations.GetFeature.outputFormat,{...r,count:1}),(0,i.A)(e.operations.GetFeature.url,{responseType:"text",query:Y(t,n,void 0,{...r,count:1}),signal:r?.signal})]),u="FeatureCollection"===a.type&&a.features[0]?.geometry;if(u){let e;switch(s=h.gy.fromJSON((0,d.xD)(u.type)),u.type){case"Point":e=u.coordinates;break;case"LineString":case"MultiPoint":e=u.coordinates[0];break;case"MultiLineString":case"Polygon":e=u.coordinates[0][0];break;case"MultiPolygon":e=u.coordinates[0][0][0]}const t=/<[^>]*pos[^>]*> *(-?\d+(?:\.\d+)?) (-?\d+(?:\.\d+)?)/.exec(l.data);if(t){const n=e[0].toFixed(3),i=e[1].toFixed(3),r=parseFloat(t[1]).toFixed(3);n===parseFloat(t[2]).toFixed(3)&&i===r&&(o=!0)}}return{geometryType:s,swapXY:o}}async function G(e,t,n){return function(e,t){const{name:n}=V(e),i=$(t);U(i);const o=(0,s.I6)((0,p.i)(i.firstElementChild,{element:e=>e}),e=>e.getAttribute("name")===n);if(null!=o){const e=o.getAttribute("type"),t=e?(0,s.I6)((0,p.i)(i.firstElementChild,{complexType:e=>e}),t=>t.getAttribute("name")===V(e).name):(0,s.I6)((0,p.i)(o,{complexType:e=>e}),()=>!0);if(t)return function(e){const t=[],n=[];let i;const s=(0,p.i)(e,{complexContent:{extension:{sequence:{element:e=>e}}}});for(const o of s){const s=o.getAttribute("name");if(!s)continue;let a,l;if(o.hasAttribute("type")?a=V(o.getAttribute("type")).name:(0,p.p)(o,{simpleType:{restriction:e=>(a=V(e.getAttribute("base")).name,{maxLength:e=>{l=+e.getAttribute("value")}})}}),!a)continue;const u="true"===o.getAttribute("nillable");let c=!1;switch(a.toLowerCase()){case"integer":case"nonpositiveinteger":case"negativeinteger":case"long":case"int":case"short":case"byte":case"nonnegativeinteger":case"unsignedlong":case"unsignedint":case"unsignedshort":case"unsignedbyte":case"positiveinteger":n.push(new m.A({name:s,alias:s,type:"integer",nullable:u,length:(0,y._b)("integer")}));break;case"float":case"double":case"decimal":n.push(new m.A({name:s,alias:s,type:"double",nullable:u,length:(0,y._b)("double")}));break;case"boolean":case"string":case"gyearmonth":case"gyear":case"gmonthday":case"gday":case"gmonth":case"anyuri":case"qname":case"notation":case"normalizedstring":case"token":case"language":case"idrefs":case"entities":case"nmtoken":case"nmtokens":case"name":case"ncname":case"id":case"idref":case"entity":case"duration":case"time":n.push(new m.A({name:s,alias:s,type:"string",nullable:u,length:l??(0,y._b)("string")}));break;case"datetime":case"date":n.push(new m.A({name:s,alias:s,type:"date",nullable:u,length:l??(0,y._b)("date")}));break;case"pointpropertytype":i="point",c=!0;break;case"multipointpropertytype":i="multipoint",c=!0;break;case"curvepropertytype":case"multicurvepropertytype":case"multilinestringpropertytype":i="polyline",c=!0;break;case"surfacepropertytype":case"multisurfacepropertytype":case"multipolygonpropertytype":i="polygon",c=!0;break;case"geometrypropertytype":case"multigeometrypropertytype":c=!0,t.push(new r.A(R,`geometry type '${a}' is not supported`,{type:(new XMLSerializer).serializeToString(e)}));break;default:t.push(new r.A(T,`Unknown field type '${a}'`,{type:(new XMLSerializer).serializeToString(e)}))}c&&n.push(new m.A({name:s,alias:s,type:"geometry",nullable:u}))}for(const e of n)if("integer"===e.type&&!e.nullable&&q.has(e.name.toLowerCase())){e.type="oid";break}return{geometryType:i,fields:n,errors:t}}(t)}throw new r.A(S,`Type '${e}' not found in document`,{document:(new XMLSerializer).serializeToString(i)})}(t,(await(0,i.A)(e,{responseType:"text",query:{SERVICE:"WFS",REQUEST:"DescribeFeatureType",VERSION:_,TYPENAME:t,TYPENAMES:t,...n?.customParameters},signal:n?.signal})).data)}const q=new Set(["objectid","fid"]);async function L(e,t,n,s,o){let{data:a}=await(0,i.A)(e,{responseType:"text",query:Y(t,n,s,o),signal:o?.signal});a=a.replaceAll(/": +(-?\d+),(\d+)(,)?/g,'": $1.$2$3');try{return JSON.parse(a)}catch(e){throw new r.A(C,"Error while parsing the response",{response:a,error:e})}}function Y(e,t,n,i){const r="number"==typeof t?t:t.wkid;return{SERVICE:"WFS",REQUEST:"GetFeature",VERSION:_,TYPENAMES:e,OUTPUTFORMAT:n,SRSNAME:"EPSG:"+r,STARTINDEX:i?.startIndex,COUNT:i?.count,...i?.customParameters}}async function X(e,t,n){const r=await(0,i.A)(e,{responseType:"text",query:{SERVICE:"WFS",REQUEST:"GetFeature",VERSION:_,TYPENAMES:t,RESULTTYPE:"hits",...n?.customParameters},signal:n?.signal}),s=/numberMatched=["'](?<numberMatched>\d+)["']/gi.exec(r.data);if(s?.groups)return+s.groups.numberMatched}function $(e){return(new DOMParser).parseFromString(e.trim(),"text/xml")}function V(e){const[t,n]=e.split(":");return{prefix:n?t:"",name:n??t}}function U(e){let t="",n="";if((0,p.p)(e.firstElementChild,{Exception:e=>(t=e.getAttribute("exceptionCode"),{ExceptionText:e=>{n=e.textContent}})}),t)throw new r.A(`wfs-layer:${t}`,n)}function D(e,t,n){const i={wkid:t.defaultSpatialReference},r=null!=n?.wkid?{wkid:n.wkid}:i;return{spatialReference:r,getFeatureSpatialReference:(0,f.Fi)(e)||r.wkid&&t.supportedSpatialReferences.includes(r.wkid)?{wkid:r.wkid}:{wkid:t.defaultSpatialReference}}}},36708:(e,t,n)=>{n.d(t,{C_:()=>d,OH:()=>m,Vh:()=>y,on:()=>h,pc:()=>g,wB:()=>l,z7:()=>u});var i=n(37955),r=n(36563),s=n(97768),o=n(74887),a=n(14012);function l(e,t,n={}){return c(e,t,n,p)}function u(e,t,n={}){return c(e,t,n,f)}function c(e,t,n={},i){let r=null;const o=n.once?(e,n)=>{i(e)&&((0,s.xt)(r),t(e,n))}:(e,n)=>{i(e)&&t(e,n)};if(r=(0,a.Cn)(e,o,n.sync,n.equals),n.initial){const t=e();o(t,t)}return r}function h(e,t,n,o={}){let a=null,u=null,c=null;function h(){a&&u&&(u.remove(),o.onListenerRemove?.(a),a=null,u=null)}function d(e){o.once&&o.once&&(0,s.xt)(c),n(e)}const p=l(e,(e,n)=>{h(),(0,i.wb)(e)&&(a=e,u=(0,i.on)(e,t,d),o.onListenerAdd?.(e))},{sync:o.sync,initial:!0});return c=(0,r.hA)(()=>{p.remove(),h()}),c}function d(e,t){return function(e,t,n){if((0,o.G4)(n))return Promise.reject((0,o.NK)());const i=e();if(t?.(i))return Promise.resolve(i);let a=null;function l(){a=(0,s.xt)(a)}return new Promise((i,s)=>{a=(0,r.vE)([(0,o.u7)(n,()=>{l(),s((0,o.NK)())}),c(e,e=>{l(),i(e)},{sync:!1,once:!0},t??p)])})}(e,f,t)}function p(e){return!0}function f(e){return!!e}n(80559);const m={sync:!0},y={initial:!0},g={sync:!0,initial:!0}},37539:(e,t,n)=>{n.d(t,{pO:()=>m,jd:()=>d,Tp:()=>p,w5:()=>h});var i=n(34727),r=n(83047),s=n(73941),o=n(79258);Math.PI;const a=o.$O.radius,l=o.$O.eccentricitySquared,u={a1:a*l,a2:a*l*a*l,a3:a*l*l/2,a4:a*l*a*l*2.5,a5:a*l+a*l*l/2,a6:1-l};o.$O.radius,o.$O.flattening,o.Sw.radius,o.Sw.flattening,o.sH.radius,o.sH.flattening,o.sH.radius;var c=n(21325);const h={2:{5:m,7:null,9:null,10:m,1:v,6:null,8:null,0:null,3:g,11:_,2:m,4:I},5:{5:m,7:null,9:null,10:m,1:v,6:null,8:null,0:null,3:g,11:_,2:m,4:I},7:{5:null,7:m,9:null,10:m,1:null,6:S,8:null,0:null,3:null,11:null,2:null,4:null},9:{5:null,7:null,9:m,10:m,1:null,6:null,8:b,0:null,3:null,11:null,2:null,4:null},3:{5:y,7:null,9:null,10:y,1:function(e,t,n,i){const r=e[t]/j,s=E-2*Math.atan(Math.exp(-e[t+1]/j)),o=j+e[t+2],a=Math.cos(s)*o;n[i]=Math.cos(r)*a,n[i+1]=Math.sin(r)*a,n[i+2]=Math.sin(s)*o},6:null,8:null,0:null,3:m,11:function(e,t,n,i){y(e,t,n,i),_(n,i,n,i)},2:y,4:function(e,t,n,i){y(e,t,n,i),I(n,i,n,i)}},4:{5:F,7:null,9:null,10:F,1:function(e,t,n,i){F(e,t,n,i),v(n,i,n,i)},6:null,8:null,0:null,3:function(e,t,n,i){F(e,t,n,i),g(n,i,n,i)},11:function(e,t,n,i){F(e,t,n,i),_(n,i,n,i)},2:F,4:m},1:{5:T,7:null,9:null,10:T,1:m,6:null,8:null,0:null,3:function(e,t,n,i){T(e,t,n,i),g(n,i,n,i)},11:function(e,t,n,i){T(e,t,n,i),_(n,i,n,i)},2:T,4:function(e,t,n,i){T(e,t,n,i),I(n,i,n,i)}},6:{5:null,7:R,9:null,10:R,1:null,6:m,8:null,0:null,3:null,11:null,2:null,4:null},8:{5:null,7:null,9:C,10:C,1:null,6:null,8:m,0:null,3:null,11:null,2:null,4:null},0:{5:null,7:null,9:null,10:null,1:null,6:null,8:null,0:m,3:null,11:null,2:null,4:null},10:{5:m,7:m,9:m,10:m,1:v,6:S,8:b,0:null,3:g,11:_,2:m,4:I},11:{5:w,7:null,9:null,10:w,1:function(e,t,n,i){w(e,t,n,i),v(n,i,n,i)},6:null,8:null,0:null,3:function(e,t,n,i){w(e,t,n,i),g(n,i,n,i)},11:m,2:w,4:function(e,t,n,i){w(e,t,n,i),I(n,i,n,i)}}};function d(e,t){return p(e,t)?.projector}function p(e,t){if(null==e||null==t)return null;if(A.source.spatialReference===e&&A.dest.spatialReference===t)return A;const n=f(e,A.source),i=f(t,A.dest);return 0===n&&0===i?(0,c.aI)(e,t)?A.projector=m:A.projector=null:A.projector=h[n][i],A}function f(e,t){return e?t.spatialReference===e?t.spatialReferenceId:(t.spatialReference=e,"metersPerUnit"in t&&(t.metersPerUnit=(0,r.GA)(e,1)),(0,s.jA)(e)?t.spatialReferenceId=1:(0,c.oT)(e)?t.spatialReferenceId=2:(0,c.K8)(e)?t.spatialReferenceId=3:(0,c.r1)(e)?t.spatialReferenceId=11:e.wkt===s.Ro.wkt?t.spatialReferenceId=4:4490===e.wkid?t.spatialReferenceId=5:e.wkt===s.FY.wkt?t.spatialReferenceId=6:e.wkt===s.LJ.wkt?t.spatialReferenceId=8:(0,c.q8)(e)?t.spatialReferenceId=7:(0,c.KQ)(e)?t.spatialReferenceId=9:t.spatialReferenceId=0):0}function m(e,t,n,i){e!==n&&(n[i++]=e[t++],n[i++]=e[t++],n[i]=e[t])}function y(e,t,n,i){n[i]=k*(e[t]/j),n[i+1]=k*(E-2*Math.atan(Math.exp(-e[t+1]/j))),n[i+2]=e[t+2]}function g(e,t,n,r){!function(e,t,n,r,s){const o=.4999999*Math.PI,a=(0,i.qE)(P*e[t+1],-o,o),l=Math.sin(a);n[r++]=P*e[t]*s.radius,n[r++]=s.halfSemiMajorAxis*Math.log((1+l)/(1-l)),n[r]=e[t+2]}(e,t,n,r,o.$O)}function _(e,t,n,i){n[i]=e[t]*z,n[i+1]=e[t+1]*z,n[i+2]=e[t+2]}function w(e,t,n,i){n[i]=e[t]*B,n[i+1]=e[t+1]*B,n[i+2]=e[t+2]}function x(e,t,n,i,r){const s=r+e[t+2],o=P*e[t+1],a=P*e[t],l=Math.cos(o)*s;n[i]=Math.cos(a)*l,n[i+1]=Math.sin(a)*l,n[i+2]=Math.sin(o)*s}function b(e,t,n,i){x(e,t,n,i,o.Sw.radius)}function S(e,t,n,i){x(e,t,n,i,o.sH.radius)}function v(e,t,n,i){x(e,t,n,i,o.$O.radius)}function M(e,t,n,r,s){const o=e[t],a=e[t+1],l=e[t+2],u=Math.sqrt(o*o+a*a+l*l),c=(0,i.YN)(l/(0===u?1:u)),h=Math.atan2(a,o);n[r++]=k*h,n[r++]=k*c,n[r]=u-s}function C(e,t,n,i){M(e,t,n,i,o.Sw.radius)}function R(e,t,n,i){M(e,t,n,i,o.sH.radius)}function T(e,t,n,i){M(e,t,n,i,o.$O.radius)}function I(e,t,n,i){!function(e,t,n,i,r){const s=P*e[t],o=P*e[t+1],a=e[t+2],l=Math.sin(o),u=Math.cos(o),c=r.radius/Math.sqrt(1-r.eccentricitySquared*l*l);n[i++]=(c+a)*u*Math.cos(s),n[i++]=(c+a)*u*Math.sin(s),n[i++]=(c*(1-r.eccentricitySquared)+a)*l}(e,t,n,i,o.$O)}function F(e,t,n,i){const r=u,s=e[t],a=e[t+1],l=e[t+2];let c,h,d,p,f,m,y,g,_,w,x,b,S,v,M,C,R,T,I,F,A;c=Math.abs(l),h=s*s+a*a,d=Math.sqrt(h),p=h+l*l,f=Math.sqrt(p),F=Math.atan2(a,s),m=l*l/p,y=h/p,v=r.a2/f,M=r.a3-r.a4/f,y>.3?(g=c/f*(1+y*(r.a1+v+m*M)/f),I=Math.asin(g),w=g*g,_=Math.sqrt(1-w)):(_=d/f*(1-m*(r.a5-v-y*M)/f),I=Math.acos(_),w=1-_*_,g=Math.sqrt(w)),x=1-o.$O.eccentricitySquared*w,b=o.$O.radius/Math.sqrt(x),S=r.a6*b,v=d-b*_,M=c-S*g,R=_*v+g*M,C=_*M-g*v,T=C/(S/x+R),I+=T,A=R+C*T/2,l<0&&(I=-I),n[i++]=k*F,n[i++]=k*I,n[i]=A}const A={source:{spatialReference:null,spatialReferenceId:0,metersPerUnit:1},dest:{spatialReference:null,spatialReferenceId:0,metersPerUnit:1},projector:m},P=(0,i.kU)(1),k=(0,i.KJ)(1),E=.5*Math.PI,j=o.$O.radius,z=j*Math.PI/180,B=180/(j*Math.PI)},37730:(e,t,n)=>{n.d(t,{T:()=>r});var i=n(43334);const r={getObjectId:e=>e.objectId,getAttributes:e=>e.attributes,getAttribute:(e,t)=>e.attributes[t],cloneWithGeometry:(e,t)=>new i.Om(t,e.attributes,null,e.objectId),getGeometry:e=>e.geometry,getCentroid:(e,t)=>e.ensureCentroid(t)}},39357:(e,t,n)=>{n.d(t,{H:()=>l});var i,r=n(31635),s=n(25482),o=n(10107),a=(n(44208),n(53966),n(87811),n(40608));let l=i=class extends s.o{constructor(e){super(e),this.name=null,this.code=null}clone(){return new i({name:this.name,code:this.code})}};(0,r.Cg)([(0,o.MZ)({type:String,json:{write:{isRequired:!0}}})],l.prototype,"name",void 0),(0,r.Cg)([(0,o.MZ)({type:[String,Number],json:{write:{isRequired:!0}}})],l.prototype,"code",void 0),l=i=(0,r.Cg)([(0,a.$)("esri.layers.support.CodedValue")],l)},50498:(e,t,n)=>{n.d(t,{Ye:()=>h,gy:()=>c,yR:()=>d});var i=n(66552),r=n(5443),s=n(91075),o=n(48526),a=n(86738),l=n(39829),u=n(82799);const c=(0,i.O)()({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon"}),h=(0,i.O)()({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryEnvelope:"extent",mesh:"mesh"}),d={base:s.A,key:"type",typeMap:{extent:r.A,multipoint:o.A,point:a.A,polyline:u.A,polygon:l.A}}},53177:(e,t,n)=>{n.d(t,{A:()=>h});var i,r=n(31635),s=n(4718),o=n(10107),a=(n(44208),n(53966),n(93223)),l=n(40608),u=n(39357),c=n(76357);let h=class extends c.A{static{i=this}constructor(e){super(e),this.codedValues=null,this.type="coded-value"}getName(e){let t=null;if(this.codedValues){const n=String(e);this.codedValues.some(e=>(String(e.code)===n&&(t=e.name),!!t))}return t}clone(){return new i({codedValues:(0,s.o8)(this.codedValues),name:this.name})}};(0,r.Cg)([(0,o.MZ)({type:[u.H],json:{write:{isRequired:!0}}})],h.prototype,"codedValues",void 0),(0,r.Cg)([(0,a.e)({codedValue:"coded-value"})],h.prototype,"type",void 0),h=i=(0,r.Cg)([(0,l.$)("esri.layers.support.CodedValueDomain")],h)},60999:(e,t,n)=>{n.d(t,{DZ:()=>f,Ke:()=>p,Tj:()=>c,UT:()=>m,jJ:()=>u});var i=n(31635),r=n(65008),s=n(97768),o=n(74887),a=n(10107),l=n(40608);function u(e,t,n){return(0,o.Lx)(e.map((e,i)=>t.apply(n,[e,i])))}async function c(e,t,n){return(await(0,o.Lx)(e.map((e,i)=>t.apply(n,[e,i])))).map(e=>e.value)}function h(e){return{ok:!0,value:e}}function d(e){return{ok:!1,error:e}}async function p(e){if(null==e)return{ok:!1,error:new Error("no promise provided")};try{return h(await e)}catch(e){return d(e)}}async function f(e){try{return h(await e)}catch(e){return(0,o.QP)(e),d(e)}}function m(e,t){return new y(e,t)}let y=class extends r.A{get value(){return null!=(e=this._result)&&!0===e.ok?e.value:null;var e}get error(){return null!=(e=this._result)&&!1===e.ok?e.error:null;var e}get finished(){return null!=this._result}constructor(e,t){super({}),this._result=null,this._abortHandle=null,this.abort=()=>{this._abortController=(0,s.DC)(this._abortController)},this.remove=this.abort,this._abortController=new AbortController;const{signal:n}=this._abortController;this.promise=e(n),this.promise.then(e=>{this._result=h(e),this._cleanup()},e=>{this._result=d(e),this._cleanup()}),this._abortHandle=(0,o.u7)(t,this.abort)}normalizeCtorArgs(){return{}}destroy(){this.abort()}_cleanup(){this._abortHandle=(0,s.xt)(this._abortHandle),this._abortController=null}};(0,i.Cg)([(0,a.MZ)()],y.prototype,"value",null),(0,i.Cg)([(0,a.MZ)()],y.prototype,"error",null),(0,i.Cg)([(0,a.MZ)()],y.prototype,"finished",null),(0,i.Cg)([(0,a.MZ)()],y.prototype,"promise",void 0),(0,i.Cg)([(0,a.MZ)()],y.prototype,"_result",void 0),y=(0,i.Cg)([(0,l.$)("esri.core.asyncUtils.ReactiveTask")],y)},62815:(e,t,n)=>{n.d(t,{N:()=>o});var i=n(83047),r=n(73941),s=n(21325);function o(e,t,n){if(null==t||null==n||n.vcsWkid||(0,s.aI)(t,n)||(0,r.xP)(t)||(0,r.xP)(n))return null;const o=(0,i.G9)(t)/(0,i.G9)(n);if(1===o)return null;switch(e){case"point":case"esriGeometryPoint":return e=>function(e,t){null!=e?.z&&(e.z*=t)}(e,o);case"polyline":case"esriGeometryPolyline":return e=>function(e,t){if(e)for(const n of e.paths)for(const e of n)e.length>2&&(e[2]*=t)}(e,o);case"polygon":case"esriGeometryPolygon":return e=>function(e,t){if(e)for(const n of e.rings)for(const e of n)e.length>2&&(e[2]*=t)}(e,o);case"multipoint":case"esriGeometryMultipoint":return e=>function(e,t){if(e)for(const n of e.points)n.length>2&&(n[2]*=t)}(e,o);case"extent":case"esriGeometryEnvelope":return e=>function(e,t){e&&null!=e.zmin&&null!=e.zmax&&(e.zmin*=t,e.zmax*=t)}(e,o);default:return null}}},66344:(e,t,n)=>{n.d(t,{q:()=>a});const i=!!(0,n(44208).A)("esri-tests-disable-gpu-memory-measurements");Symbol.iterator;class r{get size(){return this._size}constructor(e=10485760){this._maxSize=e,this._db=new Map,this._size=0,this._hit=0,this._miss=0,this._users=new Map,this._sizeLimits=new Map}destroy(){this.clearAll(),this._sizeLimits.clear(),this._users.clear(),this._db=null}register(e){this._users.set(e.id.slice(0,-1),e)}deregister(e){this.clear(e),this._sizeLimits.delete(e),this._users.delete(e.id.slice(0,-1))}get maxSize(){return this._maxSize}set maxSize(e){this._maxSize=Math.max(e,-1),this._checkSize()}getSize(e,t){const n=this._db.get(e.id+t);return n?.size??0}put(e,t,n,r,o){t=e.id+t;const a=this._db.get(t);if(a&&(this._size-=a.size,e.size-=a.size,this._db.delete(t),a.entry!==n&&this._notifyRemove(t,a.entry,a.size,0)),r>this._maxSize)return void this._notifyRemove(t,n,r,0);if(void 0===n)return void console.warn("Refusing to cache undefined entry ");if(!r||r<0)return i||console.warn(`Refusing to cache entry with size ${r} for key ${t}`),void this._notifyRemove(t,n,0,0);const l=1+Math.max(o,-4)- -3;this._db.set(t,new s(n,r,l)),this._size+=r,e.size+=r,this._checkSize()}updateSize(e,t){t=e.id+t;const n=this._db.get(t);if(!n)return;this._size-=n.size,e.size-=n.size;let i=n.entry.usedMemory;for(;i>this._maxSize;){const e=this._notifyRemove(t,n.entry,i,1);if(!(null!=e&&e>0))return void this._db.delete(t);i=e}n.size=i,this._size+=i,e.size+=i,this._checkSize()}pop(e,t){t=e.id+t;const n=this._db.get(t);if(n)return this._size-=n.size,e.size-=n.size,this._db.delete(t),++this._hit,n.entry;++this._miss}get(e,t){t=e.id+t;const n=this._db.get(t);if(void 0!==n)return this._db.delete(t),n.lives=n.lifetime,this._db.set(t,n),++this._hit,n.entry;++this._miss}peek(e,t){const n=this._db.get(e.id+t);return n?++this._hit:++this._miss,n?.entry}get performanceInfo(){const e={Size:Math.round(this._size/1048576)+"/"+Math.round(this._maxSize/1048576)+"MB","Hit rate":Math.round(100*this._getHitRate())+"%",Entries:this._db.size.toString()},t={},n=new Array;this._db.forEach((e,i)=>{const r=e.lifetime;n[r]=(n[r]||0)+e.size,this._users.forEach(n=>{const{id:r,name:s}=n;if(i.startsWith(r)){const n=t[s]||0;t[s]=n+e.size}})});const i={};this._users.forEach(e=>{const n=e.name;if("hitRate"in e&&"number"==typeof e.hitRate&&!isNaN(e.hitRate)&&e.hitRate>0){const r=t[n]||0;t[n]=r,i[n]=Math.round(100*e.hitRate)+"%"}else i[n]="0%"});const r=Object.keys(t);r.sort((e,n)=>t[n]-t[e]),r.forEach(n=>e[n]=Math.round(t[n]/2**20)+"MB / "+i[n]);for(let t=n.length-1;t>=0;--t){const i=n[t];i&&(e["Priority "+(t+-3-1)]=Math.round(i/this._size*100)+"%")}return e}resetStats(){this._hit=this._miss=0,this._users.forEach(e=>e.resetHitRate())}clear(e){const t=e.id;this._db.forEach((e,n)=>{n.startsWith(t)&&(this._size-=e.size,this._db.delete(n),this._notifyRemove(n,e.entry,e.size,0))}),e.size=0}clearAll(){this._db.forEach((e,t)=>this._notifyRemove(t,e.entry,e.size,0)),this._users.forEach(e=>e.size=0),this._size=0,this._db.clear()}*values(e){for(const[t,n]of this._db)t.startsWith(e.id)&&(yield n.entry)}_getHitRate(){return this._hit/(this._hit+this._miss)}_notifyRemove(e,t,n,i){const r=this._users.get(e.split(o)[0])?.removeFunc,s=r?.(t,i,n);return"number"==typeof s?s:null}_checkSize(){this._sizeLimits.forEach((e,t)=>this._checkSizeLimits(e,t)),this._checkSizeLimits(this.maxSize)}setMaxSize(e,t){null==t||t<=0?this._sizeLimits.delete(e):this._sizeLimits.set(e,t)}_checkSizeLimits(e,t){const n=t??this;if(n.size<=e)return;const i=t?.id;let r=!0;for(;r;){r=!1;for(const[s,a]of this._db)if(0===a.lifetime&&(!i||s.startsWith(i))){const i=t??this._users.get(s.split(o)[0]);if(this._purgeItem(s,a,i),n.size<=.9*e)return;r||=this._db.has(s)}}for(const[r,s]of this._db)if(!i||r.startsWith(i)){const i=t??this._users.get(r.split(o)[0]);if(this._purgeItem(r,s,i),n.size<=.9*e)return}}_purgeItem(e,t,n){if(this._db.delete(e),t.lives<=1){this._size-=t.size,n&&(n.size-=t.size);const i=this._notifyRemove(e,t.entry,t.size,1);null!=i&&i>0&&(this._size+=i,n&&(n.size+=i),t.lives=t.lifetime,t.size=i,this._db.set(e,t))}else--t.lives,this._db.set(e,t)}}new r(0);class s{constructor(e,t,n){this.entry=e,this.size=t,this.lifetime=n,this.lives=n}}const o=":";class a{constructor(e,t){this.removeFunc=t,this._storage=new r,this.id="",this.name="",this.size=0,this._storage.maxSize=e,this._storage.register(this)}destroy(){this._storage.deregister(this),this._storage.destroy(),this._storage=null}put(e,t,n=1){this._storage.put(this,e,t,n,1)}pop(e){return this._storage.pop(this,e)}get(e){return this._storage.get(this,e)}clear(){this._storage.clearAll()}get maxSize(){return this._storage.maxSize}set maxSize(e){this._storage.maxSize=e}resetHitRate(){}}},67482:(e,t,n)=>{function i(e){return null!=a(e)||null!=o(e)}function r(e){return l.test(e)}function s(e){return a(e)??o(e)}function o(e){const t=new Date(e);return function(e,t){if(Number.isNaN(e.getTime()))return!1;let n=!0;if(c&&/\d+\W*$/.test(t)){const e=t.match(/[a-zA-Z]{2,}/);if(e){let t=!1,i=0;for(;!t&&i<=e.length;)t=!u.test(e[i]),i++;n=!t}}return n}(t,e)?Number.isNaN(t.getTime())?null:t.getTime()-6e4*t.getTimezoneOffset():null}function a(e){const t=l.exec(e);if(!t?.groups)return null;const n=t.groups,i=+n.year,r=+n.month-1,s=+n.day,o=+(n.hours??"0"),a=+(n.minutes??"0"),u=+(n.seconds??"0");if(o>23)return null;if(a>59)return null;if(u>59)return null;const c=n.ms??"0",h=c?+c.padEnd(3,"0").slice(0,3):0;let d;if(n.isUTC||!n.offsetSign)d=Date.UTC(i,r,s,o,a,u,h);else{const e=+n.offsetHours,t=+n.offsetMinutes;d=6e4*("+"===n.offsetSign?-1:1)*(60*e+t)+Date.UTC(i,r,s,o,a,u,h)}return Number.isNaN(d)?null:d}n.d(t,{Br:()=>r,Cq:()=>i,_U:()=>s});const l=/^(?:(?<year>-?\d{4,})-(?<month>\d{2})-(?<day>\d{2}))(?:T(?<hours>\d{2}):(?<minutes>\d{2}):(?<seconds>\d{2})(?:\.(?<ms>\d+))?)?(?:(?<isUTC>Z)|(?:(?<offsetSign>\+|-)(?<offsetHours>\d{2}):(?<offsetMinutes>\d{2})))?$/,u=/^((jan(uary)?)|(feb(ruary)?)|(mar(ch)?)|(apr(il)?)|(may)|(jun(e)?)|(jul(y)?)|(aug(ust)?)|(sep(tember)?)|(oct(ober)?)|(nov(ember)?)|(dec(ember)?)|(am)|(pm)|(gmt)|(utc))$/i,c=!Number.isNaN(new Date("technology 10").getTime())},69540:(e,t,n)=>{n.d(t,{OU:()=>c,Pw:()=>h});var i=n(31635),r=n(65008),s=(n(44208),n(4718)),o=(n(53966),n(97768)),a=n(88620),l=n(40608);const u=Symbol("ClonableMixin"),c=e=>{var t;const n=e;let r=class extends n{constructor(){super(...arguments),this[t]=!0}static{t=u}clone(e){const t=(0,a.oY)(this);(0,o.Lw)(t,"unable to clone instance of non-accessor class");const n=t.metadata,i=t.store,r={},l=new Map;for(const t in n){const o=n[t],a=i?.originOf(t),u=o.clonable;if(o.readOnly||!1===u||7!==a&&0!==a&&5!==a&&4!==a)continue;const c=this[t];let h=null;if("function"==typeof u)h=u(c,e);else if("reference"===u)h=c;else if(h=(0,s.TU)(c,e),null!=c&&null==h)continue;0===a?l.set(t,h):r[t]=h}const u=new(0,Object.getPrototypeOf(this).constructor)(r);if(l.size){const e=(0,a.oY)(u)?.store;if(e)for(const[t,n]of l)e.set(t,n,0)}return u}};return r=(0,i.Cg)([(0,l.$)("esri.core.Clonable")],r),r},h=c(r.A)},75503:(e,t,n)=>{n.d(t,{EC:()=>C,wq:()=>a});var i=n(4576),r=n(21818),s=(n(44208),n(15142)),o=n(11006);class a{constructor(e=9,t){this._compareMinX=d,this._compareMinY=p,this._toBBox=e=>e,this._maxEntries=Math.max(4,e||9),this._minEntries=Math.max(2,Math.ceil(.4*this._maxEntries)),t&&("function"==typeof t?this._toBBox=t:this._initFormat(t)),this.clear()}destroy(){this.clear(),b.prune(),S.prune(),v.prune(),M.prune()}all(e){l(this._data,e)}search(e,t){let n=this._data;const i=this._toBBox;if(w(e,n))for(b.clear();n;){for(let r=0,s=n.children.length;r<s;r++){const s=n.children[r],o=n.leaf?i(s):s;w(e,o)&&(n.leaf?t(s):_(e,o)?l(s,t):b.push(s))}n=b.pop()}}collides(e){let t=this._data;const n=this._toBBox;if(!w(e,t))return!1;for(b.clear();t;){for(let i=0,r=t.children.length;i<r;i++){const r=t.children[i],s=t.leaf?n(r):r;if(w(e,s)){if(t.leaf||_(e,s))return!0;b.push(r)}}t=b.pop()}return!1}load(e){if(!e.length)return this;if(e.length<this._minEntries){for(let t=0,n=e.length;t<n;t++)this.insert(e[t]);return this}let t=this._build(e.slice(),0,e.length-1,0);if(this._data.children.length)if(this._data.height===t.height)this._splitRoot(this._data,t);else{if(this._data.height<t.height){const e=this._data;this._data=t,t=e}this._insert(t,this._data.height-t.height-1,!0)}else this._data=t;return this}insert(e){return e&&this._insert(e,this._data.height-1),this}clear(){return this._data=new T([]),this}remove(e){if(!e)return this;let t,n=this._data,s=null,o=0,a=!1;const l=this._toBBox(e);for(v.clear(),M.clear();n||v.length>0;){if(n||(n=v.pop(),s=v.data[v.length-1],o=M.pop()??0,a=!0),n.leaf&&(t=(0,i.qh)(n.children,(0,r.zI)(e),n.children.length,n.indexHint),-1!==t))return n.children.splice(t,1),v.push(n),this._condense(v),this;a||n.leaf||!_(n,l)?s?(o++,n=s.children[o],a=!1):n=null:(v.push(n),M.push(o),o=0,s=n,n=n.children[0])}return this}toJSON(){return this._data}fromJSON(e){return this._data=e,this}_build(e,t,n,i){const r=n-t+1;let s=this._maxEntries;if(r<=s){const i=new T(e.slice(t,n+1));return u(i,this._toBBox),i}i||(i=Math.ceil(Math.log(r)/Math.log(s)),s=Math.ceil(r/s**(i-1)));const o=new I([]);o.height=i;const a=Math.ceil(r/s),l=a*Math.ceil(Math.sqrt(s));x(e,t,n,l,this._compareMinX);for(let r=t;r<=n;r+=l){const t=Math.min(r+l-1,n);x(e,r,t,a,this._compareMinY);for(let n=r;n<=t;n+=a){const r=Math.min(n+a-1,t);o.children.push(this._build(e,n,r,i-1))}}return u(o,this._toBBox),o}_insert(e,t,n){const i=this._toBBox,r=n?e:i(e);v.clear();const s=function(e,t,n,i){for(;i.push(t),!0!==t.leaf&&i.length-1!==n;){let n,i=1/0,r=1/0;for(let s=0,o=t.children.length;s<o;s++){const o=t.children[s],a=f(o),l=y(e,o)-a;l<r?(r=l,i=a<i?a:i,n=o):l===r&&a<i&&(i=a,n=o)}t=n||t.children[0]}return t}(r,this._data,t,v);for(s.children.push(e),h(s,r);t>=0&&v.data[t].children.length>this._maxEntries;)this._split(v,t),t--;!function(e,t,n){for(let i=n;i>=0;i--)h(t.data[i],e)}(r,v,t)}_split(e,t){const n=e.data[t],i=n.children.length,r=this._minEntries;this._chooseSplitAxis(n,r,i);const s=this._chooseSplitIndex(n,r,i);if(!s)return;const o=n.children.splice(s,n.children.length-s),a=n.leaf?new T(o):new I(o);a.height=n.height,u(n,this._toBBox),u(a,this._toBBox),t?e.data[t-1].children.push(a):this._splitRoot(n,a)}_splitRoot(e,t){this._data=new I([e,t]),this._data.height=e.height+1,u(this._data,this._toBBox)}_chooseSplitIndex(e,t,n){let i,r,s;i=r=1/0;for(let o=t;o<=n-t;o++){const t=c(e,0,o,this._toBBox),a=c(e,o,n,this._toBBox),l=g(t,a),u=f(t)+f(a);l<i?(i=l,s=o,r=u<r?u:r):l===i&&u<r&&(r=u,s=o)}return s}_chooseSplitAxis(e,t,n){const i=e.leaf?this._compareMinX:d,r=e.leaf?this._compareMinY:p;this._allDistMargin(e,t,n,i)<this._allDistMargin(e,t,n,r)&&e.children.sort(i)}_allDistMargin(e,t,n,i){e.children.sort(i);const r=this._toBBox,s=c(e,0,t,r),o=c(e,n-t,n,r);let a=m(s)+m(o);for(let i=t;i<n-t;i++){const t=e.children[i];h(s,e.leaf?r(t):t),a+=m(s)}for(let i=n-t-1;i>=t;i--){const t=e.children[i];h(o,e.leaf?r(t):t),a+=m(o)}return a}_condense(e){for(let t=e.length-1;t>=0;t--){const n=e.data[t];if(0===n.children.length)if(t>0){const r=e.data[t-1],s=r.children;s.splice((0,i.qh)(s,n,s.length,r.indexHint),1)}else this.clear();else u(n,this._toBBox)}}_initFormat(e){const t=["return a"," - b",";"];this._compareMinX=new Function("a","b",t.join(e[0])),this._compareMinY=new Function("a","b",t.join(e[1])),this._toBBox=new Function("a","return {minX: a"+e[0]+", minY: a"+e[1]+", maxX: a"+e[2]+", maxY: a"+e[3]+"};")}}function l(e,t){let n=e;for(S.clear();n;){if(!0===n.leaf)for(const e of n.children)t((0,r.zI)(e));else S.pushArray(n.children);n=S.pop()??null}}function u(e,t){c(e,0,e.children.length,t,e)}function c(e,t,n,i,r){r||(r=new T([])),r.minX=1/0,r.minY=1/0,r.maxX=-1/0,r.maxY=-1/0;for(let s,o=t;o<n;o++)s=e.children[o],h(r,e.leaf?i(s):s);return r}function h(e,t){e.minX=Math.min(e.minX,t.minX),e.minY=Math.min(e.minY,t.minY),e.maxX=Math.max(e.maxX,t.maxX),e.maxY=Math.max(e.maxY,t.maxY)}function d(e,t){return e.minX-t.minX}function p(e,t){return e.minY-t.minY}function f(e){return(e.maxX-e.minX)*(e.maxY-e.minY)}function m(e){return e.maxX-e.minX+(e.maxY-e.minY)}function y(e,t){return(Math.max(t.maxX,e.maxX)-Math.min(t.minX,e.minX))*(Math.max(t.maxY,e.maxY)-Math.min(t.minY,e.minY))}function g(e,t){const n=Math.max(e.minX,t.minX),i=Math.max(e.minY,t.minY),r=Math.min(e.maxX,t.maxX),s=Math.min(e.maxY,t.maxY);return Math.max(0,r-n)*Math.max(0,s-i)}function _(e,t){return e.minX<=t.minX&&e.minY<=t.minY&&t.maxX<=e.maxX&&t.maxY<=e.maxY}function w(e,t){return t.minX<=e.maxX&&t.minY<=e.maxY&&t.maxX>=e.minX&&t.maxY>=e.minY}function x(e,t,n,i,r){const s=[t,n];for(;s.length;){const t=s.pop(),n=s.pop();if(t-n<=i)continue;const a=n+Math.ceil((t-n)/i/2)*i;(0,o.q)(e,a,n,t,r),s.push(n,a,a,t)}}const b=new s.A,S=new s.A,v=new s.A,M=new s.A({deallocator:void 0});class C{constructor(){this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0}}class R extends C{constructor(){super(...arguments),this.height=1,this.indexHint=new i.vW}}class T extends R{constructor(e){super(),this.children=e,this.leaf=!0}}class I extends R{constructor(e){super(),this.children=e,this.leaf=!1}}},76357:(e,t,n)=>{n.d(t,{A:()=>c});var i=n(31635),r=n(66552),s=n(25482),o=n(10107),a=(n(44208),n(53966),n(87811),n(93223)),l=n(40608);const u=new r.J({inherited:"inherited",codedValue:"coded-value",range:"range"});let c=class extends s.o{constructor(e){super(e),this.name=null,this.type=null}};(0,i.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],c.prototype,"name",void 0),(0,i.Cg)([(0,a.e)(u),(0,o.MZ)({json:{write:{isRequired:!0}}})],c.prototype,"type",void 0),c=(0,i.Cg)([(0,l.$)("esri.layers.support.Domain")],c)},80451:(e,t,n)=>{n.d(t,{rS:()=>f,gK:()=>p}),n(44208);var i,r=n(53177),s=n(76357),o=n(31635),a=(n(53966),n(87811),n(49186),n(93223)),l=n(40608);let u=class extends s.A{static{i=this}constructor(e){super(e),this.type="inherited"}clone(){return new i}};(0,o.Cg)([(0,a.e)({inherited:"inherited"})],u.prototype,"type",void 0),u=i=(0,o.Cg)([(0,l.$)("esri.layers.support.InheritedDomain")],u);var c,h=n(10107);let d=class extends s.A{static{c=this}constructor(e){super(e),this.maxValue=null,this.minValue=null,this.type="range"}clone(){return new c({maxValue:this.maxValue,minValue:this.minValue,name:this.name})}};(0,o.Cg)([(0,h.MZ)({json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range?.[1]},write:{enabled:!1,overridePolicy(){return{enabled:null!=this.maxValue&&null==this.minValue}},target:"range",writer(e,t,n){t[n]=[this.minValue||0,e]},isRequired:!0}}})],d.prototype,"maxValue",void 0),(0,o.Cg)([(0,h.MZ)({json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range?.[0]},write:{target:"range",writer(e,t,n){t[n]=[e,this.maxValue||0]},isRequired:!0}}})],d.prototype,"minValue",void 0),(0,o.Cg)([(0,a.e)({range:"range"})],d.prototype,"type",void 0),d=c=(0,o.Cg)([(0,l.$)("esri.layers.support.RangeDomain")],d);const p={key:"type",base:s.A,typeMap:{range:d,"coded-value":r.A,inherited:u}};function f(e){if(!e?.type)return null;switch(e.type){case"range":return d.fromJSON(e);case"codedValue":return r.A.fromJSON(e);case"inherited":return u.fromJSON(e)}return null}},82832:(e,t,n)=>{n.d(t,{$1:()=>y,CR:()=>m,MB:()=>d,PC:()=>g,Yx:()=>l,bP:()=>c});var i=n(67482),r=n(21325),s=n(30524);class o{constructor(e){this.description=e,this.code=null}}class a{constructor(e){this.globalId=null,this.objectId=null,this.success=!1,this.uniqueId=null,this.error=new o(e)}}function l(e){return new a(e)}class u{constructor(e){this.globalId=null,this.success=!0,this.objectId=this.uniqueId=e}}function c(e){return new u(e)}const h=new Set;function d(e,t,n,i=!1){h.clear();for(const r in n){const o=e.get(r);if(!o)continue;const a=p(o,n[r]);if(h.add(o.name),o&&(i||o.editable)){const e=(0,s.CJ)(o,a);if(e)return l((0,s.uo)(e,o,a));t[o.name]=a}}for(const t of e.requiredFields??[])if(!h.has(t.name))return l(`missing required field "${t.name}"`);return null}function p(e,t){let n=t;return(0,s.WA)(e)&&"string"==typeof t?n=parseFloat(t):(0,s.yM)(e)&&null!=t&&"string"!=typeof t?n=String(t):(0,s.vE)(e)&&"string"==typeof t&&(n=(0,i._U)(t)),(0,s.WX)(n)}let f;function m(e,t){if(!e||!(0,r.fn)(t))return e;if("rings"in e||"paths"in e){if(null==f)throw new TypeError("geometry engine not loaded");return f.simplify(t,e)}return e}async function y(e,t){!(0,r.fn)(e)||"esriGeometryPolygon"!==t&&"esriGeometryPolyline"!==t||await async function(){return null==f&&(f=await Promise.all([n.e(9930),n.e(7559)]).then(n.bind(n,47559))),f}()}const g={supportsAutoIntervalBin:!0,supportsFixedIntervalBin:!0,supportsFixedBoundariesBin:!0,supportsDateBin:!0,supportsStackBy:!0,supportsSplitBy:!0,supportsNormalization:!0,supportedStatisticTypes:["COUNT","SUM","AVG","VAR","STDDEV","MIN","MAX","PERCENTILE_CONT","PERCENTILE_DISC","CentroidAggregate","EnvelopeAggregate","ConvexHullAggregate"],supportedNormalizationTypes:["field","log","naturalLog","percentOfTotal","squareRoot"]}},83221:(e,t,n)=>{n.d(t,{A:()=>f});var i=n(4576),r=n(49186),s=n(65529),o=n(53966),a=n(70328),l=n(19419),u=n(90708),c=n(6518),h=n(51441),d=n(37730);const p=(0,a.vt)();class f{constructor(e){this.geometryInfo=e,this._boundsStore=new c.F,this._featuresById=new Map,this._usedMemory=0,this.events=new s.bk,this.featureAdapter=d.T}get usedMemory(){return this._usedMemory}get geometryType(){return this.geometryInfo.geometryType}get hasM(){return this.geometryInfo.hasM}get hasZ(){return this.geometryInfo.hasZ}get numFeatures(){return this._featuresById.size}get fullBounds(){return this._boundsStore.fullBounds}get storeStatistics(){let e=0;return this._featuresById.forEach(t=>{null!=t.geometry&&t.geometry.coords&&(e+=t.geometry.coords.length)}),{featureCount:this._featuresById.size,vertexCount:e/(this.hasZ?this.hasM?4:3:this.hasM?3:2)}}getFullExtent(e){if(null==this.fullBounds)return null;const[t,n,i,r]=this.fullBounds;return{xmin:t,ymin:n,xmax:i,ymax:r,spatialReference:(0,h.ag)(e)}}add(e){this._add(e),this._emitChanged()}addMany(e){for(const t of e)this._add(t);this._emitChanged()}upsertMany(e){const t=e.map(e=>this._upsert(e));return this._emitChanged(),t.filter(i.Ru)}clear(){this._featuresById.clear(),this._boundsStore.clear(),this._emitChanged(),this._usedMemory=0}removeById(e){const t=this._featuresById.get(e);return t?(this._remove(t),this._emitChanged(),t):null}removeManyById(e){this._boundsStore.invalidateIndex();for(const t of e){const e=this._featuresById.get(t);e&&this._remove(e)}this._emitChanged()}forEachBounds(e,t){for(const n of e){const e=this._boundsStore.get(n.objectId);e&&t((0,a.Jt)(p,e))}}getFeature(e){return this._featuresById.get(e)}has(e){return this._featuresById.has(e)}forEach(e){this._featuresById.forEach(t=>e(t))}forEachInBounds(e,t){this._boundsStore.forEachInBounds(e,e=>{t(this._featuresById.get(e))})}_emitChanged(){this.events.emit("changed",void 0)}_add(e){if(!e)return;const t=e.objectId;if(null==t)return void o.A.getLogger("esri.layers.graphics.data.FeatureStore").error(new r.A("featurestore:invalid-feature","feature id is missing",{feature:e}));const n=this._featuresById.get(t);let i;if(n?(e.displayId=n.displayId,i=this._boundsStore.get(t),this._boundsStore.delete(t),this._usedMemory-=this.estimateFeatureUsedMemory?.(n)??0):null!=this.onFeatureAdd&&this.onFeatureAdd(e),!e.geometry?.coords?.length)return this._boundsStore.set(t,null),void this._featuresById.set(t,e);i=(0,u.jQ)(null!=i?i:(0,l.vt)(),e.geometry,this.geometryInfo.hasZ,this.geometryInfo.hasM),null!=i&&this._boundsStore.set(t,i),this._featuresById.set(t,e),this._usedMemory+=this.estimateFeatureUsedMemory?.(e)??0}_upsert(e){const t=e?.objectId;if(null==t)return o.A.getLogger("esri.layers.graphics.data.FeatureStore").error(new r.A("featurestore:invalid-feature","feature id is missing",{feature:e})),null;const n=this._featuresById.get(t);if(!n)return this._add(e),e;this._usedMemory-=this.estimateFeatureUsedMemory?.(n)??0;const{geometry:i,attributes:s}=e;for(const e in s)n.attributes[e]=s[e];return i&&(n.geometry=i,this._boundsStore.set(t,(0,u.jQ)((0,l.vt)(),i,this.geometryInfo.hasZ,this.geometryInfo.hasM)??null)),this._usedMemory+=this.estimateFeatureUsedMemory?.(n)??0,n}_remove(e){null!=this.onFeatureRemove&&this.onFeatureRemove(e);const t=e.objectId;return this._boundsStore.delete(t),this._featuresById.delete(t),this._usedMemory-=this.estimateFeatureUsedMemory?.(e)??0,e}}},85113:(e,t,n)=>{n.d(t,{BM:()=>M,bd:()=>C,sO:()=>v,xD:()=>c});var i=n(67482),r=n(49186),s=n(21325),o=n(43334),a=n(92722),l=n(30524);const u={LineString:"esriGeometryPolyline",MultiLineString:"esriGeometryPolyline",MultiPoint:"esriGeometryMultipoint",Point:"esriGeometryPoint",Polygon:"esriGeometryPolygon",MultiPolygon:"esriGeometryPolygon"};function c(e){return u[e]}function*h(e){switch(e.type){case"Feature":yield e;break;case"FeatureCollection":for(const t of e.features)t&&(yield t)}}function*d(e){if(e)switch(e.type){case"Point":yield e.coordinates;break;case"LineString":case"MultiPoint":yield*e.coordinates;break;case"MultiLineString":case"Polygon":for(const t of e.coordinates)yield*t;break;case"MultiPolygon":for(const t of e.coordinates)for(const e of t)yield*e}}function p(e){for(const t of e)if(t.length>2)return!0;return!1}function f(e){let t=0;for(let n=0;n<e.length;n++){const i=e[n],r=e[(n+1)%e.length];t+=i[0]*r[1]-r[0]*i[1]}return t<=0}function m(e){const t=e[0],n=e[e.length-1];return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]||e.push(t),e}function y(e,t,n){switch(t.type){case"LineString":case"MultiPoint":return function(e,t,n){return w(e,t.coordinates,n),e}(e,t,n);case"MultiLineString":return function(e,t,n){for(const i of t.coordinates)w(e,i,n);return e}(e,t,n);case"MultiPolygon":return function(e,t,n){for(const i of t.coordinates){g(e,i[0],n);for(let t=1;t<i.length;t++)_(e,i[t],n)}return e}(e,t,n);case"Point":return function(e,t,n){return b(e,t.coordinates,n),e}(e,t,n);case"Polygon":return function(e,t,n){const i=t.coordinates;g(e,i[0],n);for(let t=1;t<i.length;t++)_(e,i[t],n);return e}(e,t,n)}}function g(e,t,n){const i=m(t);!function(e){return!f(e)}(i)?w(e,i,n):x(e,i,n)}function _(e,t,n){const i=m(t);!function(e){return f(e)}(i)?w(e,i,n):x(e,i,n)}function w(e,t,n){for(const i of t)b(e,i,n);e.lengths.push(t.length)}function x(e,t,n){for(let i=t.length-1;i>=0;i--)b(e,t[i],n);e.lengths.push(t.length)}function b(e,t,n){const[i,r,s]=t;e.coords.push(i,r),n.hasZ&&e.coords.push(s||0)}function S(e){switch(typeof e){case"string":return(0,i.Br)(e)?"esriFieldTypeDate":"esriFieldTypeString";case"number":return"esriFieldTypeDouble";default:return"unknown"}}function v(e,t=4326){if(!e)throw new r.A("geojson-layer:empty","GeoJSON data is empty");if("Feature"!==e.type&&"FeatureCollection"!==e.type)throw new r.A("geojson-layer:unsupported-geojson-object","missing or not supported GeoJSON object type",{data:e});const{crs:n}=e;if(!n)return;const i="string"==typeof n?n:"name"===n.type?n.properties.name:"EPSG"===n.type?n.properties.code:null,o=(0,s.oT)({wkid:t})?new RegExp(".*(CRS84H?|4326)$","i"):new RegExp(`.*(${t})$`,"i");if(!i||!o.test(i))throw new r.A("geojson:unsupported-crs","unsupported GeoJSON 'crs' member",{crs:n})}function M(e,t={}){const n=[],i=new Set,r=new Set;let s,o=!1,a=null,u=!1,{geometryType:f=null}=t;for(const t of h(e)){const{geometry:e,properties:h,id:m}=t;if((!e||(f||(f=c(e.type)),c(e.type)===f))&&(o||(o=p(d(e))),u||(u=null!=m,u&&(s=typeof m,h&&(a=Object.keys(h).filter(e=>h[e]===m)))),h&&a&&u&&null!=m&&(a.length>1?a=a.filter(e=>h[e]===m):1===a.length&&(a=h[a[0]]===m?a:[])),h))for(const e in h){if(i.has(e))continue;const t=S(h[e]);if("unknown"===t){r.add(e);continue}r.delete(e),i.add(e);const s=(0,l.rS)(e);s&&n.push({name:s,alias:e,type:t})}}const m=(0,l.rS)(1===a?.length&&a[0]||null)??void 0;if(m)for(const e of n)if(e.name===m&&(0,l.WA)(e)){e.type="esriFieldTypeOID";break}return{fields:n,geometryType:f,hasZ:o,objectIdFieldName:m,objectIdFieldType:s,unknownFields:Array.from(r)}}function C(e,t){return Array.from(function*(e,t={}){const{geometryType:n,objectIdField:i}=t;for(const r of e){const{geometry:e,properties:s,id:l}=r;if(e&&c(e.type)!==n)continue;const u=s||{};let h;i&&(h=u[i],null==l||h||(u[i]=h=l));const d=new o.Om(e?y(new a.A,e,t):null,u,null,h);yield d}}(h(e),t))}},98453:(e,t,n)=>{n.d(t,{m:()=>i});const i=new(n(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"})},98988:(e,t,n)=>{n.r(t),n.d(t,{canProjectWithoutEngine:()=>D,getTransformation:()=>q,getTransformations:()=>L,initializeProjection:()=>W,isEqualBaseGCS:()=>Z,isLoaded:()=>P,isLoadedOrLoad:()=>k,isLoadedOrLoadFor:()=>E,load:()=>z,project:()=>B,projectExtent:()=>se,projectMany:()=>N,projectMultipoint:()=>K,projectOrLoad:()=>O,projectOrLoadMany:()=>G,projectPoint:()=>H,projectPolygon:()=>ie,projectPolyline:()=>te,projectWithZConversion:()=>U,projectWithoutEngine:()=>J,requiresLoad:()=>j,test:()=>$,tryProjectWithZConversion:()=>V,unload:()=>X});var i=n(49186),r=n(74887),s=n(62788),o=n(95488),a=n(51850),l=n(21276),u=n(73941),c=n(5443),h=n(48526),d=n(83290),p=n(86738),f=n(39829),m=n(82799),y=n(16930),g=n(9762),_=n(37539);function w(e,t,n,i,r,s){return x[0]=e,x[1]=t,x[2]=n,(0,g.projectBuffer)(x,i,0,r,s,0)}const x=(0,a.vt)();let b=0;class S{static fromGE(e){const t=new S;return t._wkt=e.wkt,t._wkid=e.wkid,t._isInverse=e.isInverse,t}constructor(e){this.uid=b++,e?(this._wkt=null!=e.wkt?e.wkt:null,this._wkid=null!=e.wkid?e.wkid:-1,this._isInverse=null!=e.isInverse&&!0===e.isInverse):(this._wkt=null,this._wkid=-1,this._isInverse=!1)}get wkt(){return this._wkt}set wkt(e){this._wkt=e,this.uid=b++}get wkid(){return this._wkid}set wkid(e){this._wkid=e,this.uid=b++}get isInverse(){return this._isInverse}set isInverse(e){this._isInverse=e,this.uid=b++}getInverse(){const e=new S;return e._wkt=this.wkt,e._wkid=this._wkid,e._isInverse=!this.isInverse,e}}class v{static cacheKey(e,t){return[e.wkid?.toString()??"-1",e.wkt?.toString()??"",e.wkt2?.toString()??"",t.wkid?.toString()??"-1",t.wkt?.toString()??"",t.wkt2?.toString()??""].join()}static fromGE(e){const t=new v;let n="";for(const i of e.steps){const e=S.fromGE(i);t.steps.push(e),n+=e.uid.toString()+","}return t._cachedProjection={},t._gtlistentry=null,t._chain=n,t}constructor(e){if(this.steps=[],this._cachedProjection={},this._chain="",this._gtlistentry=null,e?.steps)for(const t of e.steps)t instanceof S?this.steps.push(t):this.steps.push(new S({wkid:t.wkid,wkt:t.wkt,isInverse:t.isInverse}))}getInverse(){const e=new v;e.steps=[];for(let t=this.steps.length-1;t>=0;t--){const n=this.steps[t];e.steps.push(n.getInverse())}return e}getGTListEntry(){let e="";for(const t of this.steps)e+=t.uid.toString()+",";return e!==this._chain&&(this._gtlistentry=null,this._cachedProjection={},this._chain=e),this._gtlistentry}assignCachedGe(e,t,n){this._cachedProjection[v.cacheKey(e,t)]=n}getCachedGeTransformation(e,t){let n="";for(const e of this.steps)n+=e.uid.toString()+",";n!==this._chain&&(this._gtlistentry=null,this._cachedProjection={},this._chain=n);const i=this._cachedProjection[v.cacheKey(e,t)];return void 0===i?null:i}}var M=n(21325),C=n(62815);let R=null,T=null,I=null,F={};const A=new o.I;function P(){return!!R&&(0,d.i)()}function k(){return!!P()||((0,s.gc)(A),z(),!1)}function E(e,t){return!e||!t||D(e,t)||k()}function j(e,t){return!D(e,t)&&!P()}function z(e){return null==I&&(I=Promise.all([(0,d.l)(),n.e(9930).then(n.bind(n,49930)).then(e=>e.g),n.e(2731).then(n.bind(n,12731))])),I.then(([,t,{hydratedAdapter:n}])=>{(0,r.Te)(e),T=n,R=t.default,R._enableProjection(d.p),A.notify()})}function B(e,t,n=null,i=null){return Array.isArray(e)?0===e.length?[]:((0,l.H)(e),N(T,e,e[0].spatialReference,t,n,i)):((0,l.f)(e),N(T,[e],e.spatialReference,t,n,i)[0])}function N(e,t,n,i,r=null,s=null){if(null==n||null==i)return t;if(D(n,i,r))return t.map(e=>J(e,n,i));if(null==r&&(0,u.jA)(n))return t.map(e=>J(e,n,y.A.WGS84)).map(e=>V(e,i));if(null==r&&(0,u.jA)(i))return t.map(e=>V(e,y.A.WGS84)).map(e=>J(e,y.A.WGS84,i));if(null==r){const e=v.cacheKey(n,i);void 0!==F[e]?r=F[e]:(null==(r=q(n,i,void 0))&&(r=new v),F[e]=r)}if(null==R||null==e)throw new Y;return null!=s?R._project(e,t,n,i,r,s):R._project(e,t,n,i,r)}function O(e,t){const n=G([e],t);return null!=n.pending?{pending:n.pending,geometry:null}:null!=n.geometries?{pending:null,geometry:n.geometries[0]}:{pending:null,geometry:null}}function G(e,t){if(!P())for(const n of e)if(null!=n&&!(0,M.aI)(n.spatialReference,t)&&(0,M.fn)(n.spatialReference)&&(0,M.fn)(t)&&!D(n.spatialReference,t))return(0,s.gc)(A),{pending:z(),geometries:null};return{pending:null,geometries:e.map(e=>null==e?null:(0,M.aI)(e.spatialReference,t)?e:(0,M.fn)(e.spatialReference)&&(0,M.fn)(t)?V(e,t):null)}}function q(e,t,n=null){if(null==e||null==t)return null;if(null==R||null==T)throw new Y;const i=R._getTransformation(T,e,t,n,n?.spatialReference);return null!==i?v.fromGE(i):null}function L(e,t,n=null){if(null==R||null==T)throw new Y;const i=R._getTransformationBySuitability(T,e,t,n,n?.spatialReference);if(null!==i){const e=[];for(const t of i)e.push(v.fromGE(t));return e}return[]}class Y extends i.A{constructor(){super("projection:not-loaded","projection engine not fully loaded yet, please call load()")}}function X(){R=null,T=null,I=null,F={}}const $={get loadPromise(){return I}};function V(e,t){try{const n=B(e,t);if(null==n)return null;"xmin"in e&&"xmin"in n&&(n.zmin=e.zmin,n.zmax=e.zmax);const i=(0,C.N)(n.type,e.spatialReference,t);return null!=i&&i(n),n}catch(e){if(!(e instanceof Y))throw e;return null}}async function U(e,t,n){const i=e.spatialReference;return null!=i&&null!=t&&await W(i,t,null,n),V(e,t)}function D(e,t,n){return!n&&(!!(0,M.aI)(e,t)||(0,M.fn)(e)&&(0,M.fn)(t)&&!!(0,_.jd)(e,t))}function Z(e,t){if((0,M.aI)(e,t))return!0;if(!(0,M.fn)(e)||!(0,M.fn)(t))return!1;const n=(0,M.oT)(e)||(0,M.K8)(e)||(0,M.x1)(e),i=(0,M.oT)(t)||(0,M.K8)(t)||(0,M.x1)(t);return n&&i}async function W(e,t,n,i){if(P())return(0,r.NO)(i);if(Array.isArray(e)){for(const{source:t,dest:n,geographicTransformation:r}of e)if(t&&n&&!D(t,n,r))return z(i)}else if(e&&t&&!D(e,t,n))return z(i);return(0,r.NO)(i)}function J(e,t,n){return e?"x"in e?Q(e,t,new p.A,n,0):"xmin"in e?oe(e,t,new c.A,n,0):"rings"in e?re(e,t,new f.A,n,0):"paths"in e?ne(e,t,new m.A,n,0):"points"in e?ee(e,t,new h.A,n,0):null:null}function H(e,t,n=t.spatialReference,i=0){return null!=n&&null!=e.spatialReference&&null!=Q(e,e.spatialReference,t,n,i)}function Q(e,t,n,i,r){le[0]=e.x,le[1]=e.y;const s=e.z;return le[2]=void 0!==s?s:r,(0,g.projectBuffer)(le,t,0,le,i,0)?(n.x=le[0],n.y=le[1],n.spatialReference=i,void 0!==s||(0,u.xP)(i)?(n.z=le[2],n.hasZ=!0):(n.z=void 0,n.hasZ=!1),void 0===e.m?(n.m=void 0,n.hasM=!1):(n.m=e.m,n.hasM=!0),n):null}function K(e,t,n=t.spatialReference,i=0){return null!=e.spatialReference&&null!=n&&null!=ee(e,e.spatialReference,t,n,i)}function ee(e,t,n,i,r){const{points:s,hasZ:o,hasM:a}=e,l=[],c=s.length,h=[];for(const e of s)h.push(e[0],e[1],o?e[2]:r);if(!(0,g.projectBuffer)(h,t,0,h,i,0,c))return null;const d=o||(0,u.xP)(i);for(let e=0;e<c;++e){const t=3*e,n=h[t],i=h[t+1];d&&a?l.push([n,i,h[t+2],s[e][3]]):d?l.push([n,i,h[t+2]]):a?l.push([n,i,s[e][2]]):l.push([n,i])}return n.points=l,n.spatialReference=i,n.hasZ=o,n.hasM=a,n}function te(e,t,n=t.spatialReference,i=0){return null!=e.spatialReference&&null!=n&&null!=ne(e,e.spatialReference,t,n,i)}function ne(e,t,n,i,r){const{paths:s,hasZ:o,hasM:a}=e,l=[];if(!ae(s,o??!1,a??!1,t,l,i,r))return null;const c=o||(0,u.xP)(i);return n.paths=l,n.spatialReference=i,n.hasZ=c,n.hasM=a,n}function ie(e,t,n=t.spatialReference,i=0){return null!=e.spatialReference&&null!=n&&null!=re(e,e.spatialReference,t,n,i)}function re(e,t,n,i,r){const{rings:s,hasZ:o,hasM:a}=e,l=[];if(!ae(s,o??!1,a??!1,t,l,i,r))return null;const c=o||(0,u.xP)(i);return n.rings=l,n.spatialReference=i,n.hasZ=c,n.hasM=a,n}function se(e,t,n=t.spatialReference,i=0){return null!=e.spatialReference&&null!=n&&null!=oe(e,e.spatialReference,t,n,i)}function oe(e,t,n,i,r){const{xmin:s,ymin:o,xmax:a,ymax:l,hasZ:c,hasM:h}=e;if(!w(s,o,c?e.zmin:r,t,le,i))return null;const d=c||(0,u.xP)(i);return n.xmin=le[0],n.ymin=le[1],d&&(n.zmin=le[2]),w(a,l,c?e.zmax:r,t,le,i)?(n.xmax=le[0],n.ymax=le[1],d&&(n.zmax=le[2]),h&&(n.mmin=e.mmin,n.mmax=e.mmax),n.spatialReference=i,n):null}function ae(e,t,n,i,r,s,o=0){const a=new Array;for(const n of e)for(const e of n)a.push(e[0],e[1],t?e[2]:o);if(!(0,g.projectBuffer)(a,i,0,a,s,0))return!1;let l=0;r.length=0;const c=t||(0,u.xP)(s);for(const t of e){const e=new Array;for(const i of t)c&&n?e.push([a[l++],a[l++],a[l++],i[3]]):c?e.push([a[l++],a[l++],a[l++]]):n?(e.push([a[l++],a[l++],i[2]]),l++):(e.push([a[l++],a[l++]]),l++);r.push(e)}return!0}const le=(0,a.vt)()}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[4304],{21015:(e,t,r)=>{r.d(t,{R:()=>u});var n=r(78888),o=r(60999),s=r(49186),i=r(74887),a=r(84952);class u{constructor(e){this._streamDataRequester=e}async loadJSON(e,t){return this._load(0,e,t)}async loadBinary(e,t){return(0,a.DB)(e)?((0,i.Te)(t),(0,a.lJ)(e)):this._load(1,e,t)}async loadImage(e,t){return this._load(2,e,t)}async _load(e,t,r){if(null==this._streamDataRequester)return(await(0,n.A)(t,{responseType:l[e]})).data;const a=await(0,o.Ke)(this._streamDataRequester.request(t,e,r));if(!0===a.ok)return a.value;throw(0,i.QP)(a.error),new s.A("glt-loader-request-error",`Request for resource failed: ${a.error}`)}}const l={2:"image",1:"array-buffer",0:"json",3:void 0}},43609:(e,t,r)=>{r.d(t,{a:()=>s,f:()=>i,n:()=>o});var n=r(34275);function o(e,t){s(e.typedBuffer,t.typedBuffer,e.typedBufferStride,t.typedBufferStride)}function s(e,t,r=2,o=r){const s=t.length/2;let i=0,a=0;if(!(0,n.iu)(t)||(0,n.dk)(t)){for(let n=0;n<s;++n)e[i]=t[a],e[i+1]=t[a+1],i+=r,a+=o;return}const u=(0,n.a3)(t);if((0,n.JI)(t))for(let n=0;n<s;++n)e[i]=Math.max(t[a]/u,-1),e[i+1]=Math.max(t[a+1]/u,-1),i+=r,a+=o;else for(let n=0;n<s;++n)e[i]=t[a]/u,e[i+1]=t[a+1]/u,i+=r,a+=o}function i(e,t,r,n){const o=e.typedBuffer,s=e.typedBufferStride,i=n?.count??e.count;let a=(n?.dstIndex??0)*s;for(let e=0;e<i;++e)o[a]=t,o[a+1]=r,a+=s}Object.freeze(Object.defineProperty({__proto__:null,fill:i,normalizeIntegerBuffer:s,normalizeIntegerBufferView:o},Symbol.toStringTag,{value:"Module"}))},51530:(e,t,r)=>{r.d(t,{KB:()=>i,Xi:()=>o,pn:()=>a,x3:()=>s});var n=r(44208);class o{constructor(e){this.data=e,this.type="encoded-mesh-texture",this.encoding="image/ktx2"}}function s(e){return"encoded-mesh-texture"===e?.type}async function i(e){const t=new Blob([e]),r=await t.text();return JSON.parse(r)}async function a(e,t){if("image/ktx2"===t)return new o(e);const r=new Blob([e],{type:t});let s=URL.createObjectURL(r);switch(t){case"image/jpeg":s+="#.jpg";break;case"image/png":s+="#.png"}const i=new Image;if((0,n.A)("esri-iPhone"))return new Promise((e,t)=>{const r=()=>{o(),e(i)},n=e=>{o(),t(e)},o=()=>{URL.revokeObjectURL(s),i.removeEventListener("load",r),i.removeEventListener("error",n)};i.addEventListener("load",r),i.addEventListener("error",n),i.src=s});try{i.src=s,await i.decode()}catch(e){console.warn("Failed decoding HTMLImageElement")}return URL.revokeObjectURL(s),i}},61473:(e,t,r)=>{function n(e){return e=e||globalThis.location.hostname,l.some(t=>null!=e?.match(t))}function o(e,t){return e?(t=t||globalThis.location.hostname)?null!=t.match(s)||null!=t.match(a)?e.replace("static.arcgis.com","staticdev.arcgis.com"):null!=t.match(i)||null!=t.match(u)?e.replace("static.arcgis.com","staticqa.arcgis.com"):e:e:null}r.d(t,{EM:()=>o,b5:()=>n});const s=/^devext\.arcgis\.com$/,i=/^qaext\.arcgis\.com$/,a=/^[\w-]*\.mapsdevext\.arcgis\.com$/,u=/^[\w-]*\.mapsqa\.arcgis\.com$/,l=[/^([\w-]*\.)?[\w-]*\.zrh-dev-local\.esri\.com$/,s,i,/^jsapps\.esri\.com$/,a,u]},64304:(e,t,r)=>{r.d(t,{fetch:()=>J});var n=r(40876),o=r(61473),s=r(34727),i=r(77690),a=r(29242),u=r(58083),l=r(9093),c=r(48163),f=r(38954),d=r(51850),m=r(70328),p=r(11868),h=r(13030),g=r(73354),y=r(65686),x=r(43609),w=r(21015),b=r(84498),v=r(51530),T=r(88340);function B(e){if(null==e)return null;const t=null!=e.offset?e.offset:T.uY,r=null!=e.rotation?e.rotation:0,n=null!=e.scale?e.scale:T.Un,o=(0,a.fA)(1,0,0,0,1,0,t[0],t[1],1),s=(0,a.fA)(Math.cos(r),-Math.sin(r),0,Math.sin(r),Math.cos(r),0,0,0,1),u=(0,a.fA)(n[0],0,0,0,n[1],0,0,0,1),l=(0,a.vt)();return(0,i.lw)(l,s,u),(0,i.lw)(l,o,l),l}class R{constructor(){this.geometries=new Array,this.materials=new Array,this.textures=new Array}}class M{constructor(e,t,r){this.name=e,this.lodThreshold=t,this.pivotOffset=r,this.stageResources=new R,this.numberOfVertices=0}}var A=r(78888),S=r(60999),_=r(49186),E=r(53966),I=r(69397);class P{constructor(){this._outer=new Map}clear(){this._outer.clear()}get empty(){return 0===this._outer.size}get outerSize(){return this._outer.size}get(e,t){return this._outer.get(e)?.get(t)}getInner(e){return this._outer.get(e)}set(e,t,r){const n=this._outer.get(e);n?n.set(t,r):this._outer.set(e,new Map([[t,r]]))}delete(e,t){const r=this._outer.get(e);r&&(r.delete(t),0===r.size&&this._outer.delete(e))}forEach(e){this._outer.forEach((t,r)=>e(t,r))}forAll(e){this._outer.forEach((t,r)=>t.forEach((t,n)=>e(t,r,n)))}}var U=r(74887),O=r(46140),L=r(97146),k=r(99677),C=r(46610),F=r(87170),j=r(48833),$=r(2495);const q=()=>E.A.getLogger("esri.views.3d.layers.graphics.objectResourceUtils");class z{constructor(e,t,r){this.resource=e,this.textures=t,this.usedMemory=r}}function V(e){throw new _.A("",`Request for object resource failed: ${e}`)}function D(e){const t=e.params,r=t.topology;let n=!0;switch(t.vertexAttributes||(q().warn("Geometry must specify vertex attributes"),n=!1),t.topology){case"PerAttributeArray":break;case"Indexed":case null:case void 0:{const e=t.faces;if(e){if(t.vertexAttributes)for(const r in t.vertexAttributes){const t=e[r];t?.values?(null!=t.valueType&&"UInt32"!==t.valueType&&(q().warn(`Unsupported indexed geometry indices type '${t.valueType}', only UInt32 is currently supported`),n=!1),null!=t.valuesPerElement&&1!==t.valuesPerElement&&(q().warn(`Unsupported indexed geometry values per element '${t.valuesPerElement}', only 1 is currently supported`),n=!1)):(q().warn(`Indexed geometry does not specify face indices for '${r}' attribute`),n=!1)}}else q().warn("Indexed geometries must specify faces"),n=!1;break}default:q().warn(`Unsupported topology '${r}'`),n=!1}e.params.material||(q().warn("Geometry requires material"),n=!1);const o=e.params.vertexAttributes;for(const e in o)o[e].values||(q().warn("Geometries with externally defined attributes are not yet supported"),n=!1);return n}function G(e){const t=(0,m.Ie)();return e.forEach(e=>{const r=e.boundingInfo;null!=r&&((0,m.iT)(t,r.bbMin),(0,m.iT)(t,r.bbMax))}),t}function N(e){switch(e){case"mask":return 2;case"maskAndTransparency":return 3;case"none":return 1;default:return 0}}function Q(e){const t=e.params;return{id:1,material:t.material,texture:t.texture,region:t.texture}}const K=new O.R(1,2,"wosr");var W=r(74810);async function J(e,t){const a=function(e){const t=e.match(/(.*\.(gltf|glb))(\?lod=([0-9]+))?$/);return t?{fileType:"gltf",url:t[1],specifiedLodIndex:null!=t[4]?Number(t[4]):null}:e.match(/(.*\.(json|json\.gz))$/)?{fileType:"wosr",url:e,specifiedLodIndex:null}:{fileType:"unknown",url:e,specifiedLodIndex:null}}((0,o.EM)(e));if("wosr"===a.fileType){const e=await(t.cache?t.cache.loadWOSR(a.url,t):async function(e,t){const r=await async function(e,t){const r=t?.streamDataRequester;if(r)return async function(e,t,r){const n=await(0,S.Ke)(t.request(e,0,r));if(!0===n.ok)return n.value;(0,U.QP)(n.error),V(n.error.details.url)}(e,r,t);const n=await(0,S.Ke)((0,A.A)(e,t));if(!0===n.ok)return n.value.data;(0,U.QP)(n.error),V(n.error)}(e,t),n=await async function(e,t){const r=new Array;for(const n in e){const o=e[n],s=o.images[0].data;if(!s){q().warn("Externally referenced texture data is not yet supported");continue}const i=o.encoding+";base64,"+s,a="/textureDefinitions/"+n,u="rgba"===o.channels?o.alphaChannelUsage||"transparency":"none",l={noUnpackFlip:!0,wrap:{s:10497,t:10497},preMultiplyAlpha:1!==N(u)},c=t?.disableTextures?Promise.resolve(null):(0,k.D)(i,t);r.push(c.then(e=>({refId:a,image:e,parameters:l,alphaChannelUsage:u})))}const n=await Promise.all(r),o={};for(const e of n)o[e.refId]=e;return o}(r.textureDefinitions??{},t);let o=0;for(const e in n)if(n.hasOwnProperty(e)){const t=n[e];o+=t?.image?t.image.width*t.image.height*4:0}return new z(r,n,o+(0,I.Qh)(r))}(a.url,t)),{engineResources:r,referenceBoundingBox:n}=function(e,t){const r=new Array,n=new Array,o=new Array,s=new P,i=e.resource,a=O.R.parse(i.version||"1.0","wosr");K.validate(a);const u=i.model.name,l=i.model.geometries,c=i.materialDefinitions??{},f=e.textures;let m=0;const p=new Map;for(let e=0;e<l.length;e++){const i=l[e];if(!D(i))continue;const a=Q(i),u=i.params.vertexAttributes,h=[],g=e=>{if("PerAttributeArray"===i.params.topology)return null;const t=i.params.faces;for(const r in t)if(r===e)return t[r].values;return null},y=u.position,x=y.values.length/y.valuesPerElement;for(const e in u){const t=u[e],r=t.values,n=g(e)??(0,L.tM)(x);h.push([e,new C.n(r,n,t.valuesPerElement,!0)])}const w=a.texture,b=f&&f[w];if(b&&!p.has(w)){const{image:e,parameters:t}=b,r=new j.g(e,t);n.push(r),p.set(w,r)}const v=p.get(w),T=v?v.id:void 0,B=a.material;let R=s.get(B,w);if(null==R){const e=c[B.slice(B.lastIndexOf("/")+1)].params;1===e.transparency&&(e.transparency=0);const r=b?N(b.alphaChannelUsage):void 0,n={ambient:(0,d.ci)(e.diffuse),diffuse:(0,d.ci)(e.diffuse),opacity:1-(e.transparency||0),textureAlphaMode:r,textureAlphaCutoff:.33,textureId:T,doubleSided:!0,cullFace:0,colorMixMode:e.externalColorMixMode||"tint",textureAlphaPremultiplied:b?.parameters.preMultiplyAlpha??!1};t?.materialParameters&&Object.assign(n,t.materialParameters),R=new $.$U(n,t),s.set(B,w,R)}o.push(R);const M=new F.V(R,h);m+=h.find(e=>"position"===e[0])?.[1]?.indices.length??0,r.push(M)}return{engineResources:[{name:u,stageResources:{textures:n,materials:o,geometries:r},pivotOffset:i.model.pivotOffset,numberOfVertices:m,lodThreshold:null}],referenceBoundingBox:G(r)}}(e,t);return{lods:r,referenceBoundingBox:n,isEsriSymbolResource:!1,isWosr:!0}}let T;if(t.cache)T=await t.cache.loadGLTF(a.url,t,!!t.usePBR);else{const{loadGLTF:e}=await r.e(9738).then(r.bind(r,99738));T=await e(new w.R(t.streamDataRequester),a.url,t,t.usePBR)}const R=T.model.meta?.ESRI_proxyEllipsoid,_=T.meta.isEsriSymbolResource&&null!=R&&"EsriRealisticTreesStyle"===T.meta.ESRI_webstyle;_&&!T.customMeta.esriTreeRendering&&(T.customMeta.esriTreeRendering=!0,function(e,t){for(let r=0;r<e.model.lods.length;++r){const o=e.model.lods[r];for(const s of o.parts){const o=s.attributes.normal;if(null==o)return;const i=s.attributes.position,a=i.count,c=(0,d.vt)(),m=(0,d.vt)(),p=(0,d.vt)(),g=new Float32Array(4*a),y=new Float32Array(3*a),x=(0,u.B8)((0,l.vt)(),s.transform);let w=0,b=0;for(let u=0;u<a;u++){i.getVec(u,m),o.getVec(u,c),(0,f.t)(m,m,s.transform),(0,f.d)(p,m,t.center),(0,f.D)(p,p,t.radius);const a=p[2],l=(0,f.l)(p),d=Math.min(.45+.55*l*l,1)**n.Tf;(0,f.D)(p,p,t.radius),null!==x&&(0,f.t)(p,p,x),(0,f.n)(p,p),r+1!==e.model.lods.length&&e.model.lods.length>1&&(0,f.m)(p,p,c,a>-1?.2:Math.min(-4*a-3.8,1)),y[w]=p[0],y[w+1]=p[1],y[w+2]=p[2],w+=3,g[b]=d,g[b+1]=d,g[b+2]=d,g[b+3]=1,b+=4}s.attributes.normal=new h.xs(y.buffer),s.attributes.color=new h.Eq(g.buffer)}}}(T,R));const E=!!t.usePBR,J=T.meta.isEsriSymbolResource?{usePBR:E,isSchematic:!1,treeRendering:_,mrrFactors:W.SY}:{usePBR:E,isSchematic:!1,treeRendering:!1,mrrFactors:W.mb},X={...t.materialParameters,treeRendering:_},{engineResources:H,referenceBoundingBox:Z}=function(e,t,r,o,a,u){const l=e.model,f=new Array,d=new Map,w=new Map,T=l.lods.length,R=(0,m.Ie)();return l.lods.forEach((e,A)=>{const S=!0===o.skipHighLods&&(T>1&&0===A||T>3&&1===A)||!1===o.skipHighLods&&null!=a&&A!==a;if(S&&0!==A)return;const _=new M(e.name,e.lodThreshold,[0,0,0]);e.parts.forEach(e=>{const a=S?new $.$U({},o):function(e,t,r,o,s,i,a,u,l){const f=e.materials.get(t.material);if(null==f)return null;const{normal:d,color:m,texCoord0:p,tangent:h}=t.attributes,g=t.material+(d?"_normal":"")+(m?"_color":"")+(p?"_texCoord0":"")+(h?"_tangent":""),y=null!=t.attributes.texCoord0,x=null!=t.attributes.normal,w=function(e){switch(e){case"BLEND":return 0;case"MASK":return 2;case"OPAQUE":case null:case void 0:return 1}}(f.alphaMode);if(!i.has(g)){if(y){const t=(t,r=!1,n=!1)=>{if(null!=t&&!a.has(t)){const o=e.textures.get(t);if(o){const e=o.data,s=r&&!(0,v.x3)(e)?u.compressionOptions:void 0;a.set(t,new j.g((0,v.x3)(e)?e.data:e,{...o.parameters,preMultiplyAlpha:!(0,v.x3)(e)&&n,encoding:(0,v.x3)(e)?e.encoding:void 0,compressionOptions:s}))}}},r=1!==w&&!l;t(f.colorTexture,r,1!==w),t(f.normalTexture),t(f.occlusionTexture,!0),t(f.emissiveTexture),t(f.metallicRoughnessTexture,!0)}const r=1/n.Tf,d=f.color[0]**r,m=f.color[1]**r,p=f.color[2]**r,h=f.emissiveFactor[0]**r,b=f.emissiveFactor[1]**r,T=f.emissiveFactor[2]**r,R=null!=f.colorTexture&&y?a.get(f.colorTexture):null,M=(0,W.Jr)(f),A=null!=f.normalTextureTransform?.scale?f.normalTextureTransform?.scale:c.Un;i.set(g,new $.$U({...o,customDepthTest:1,textureAlphaMode:w,textureAlphaCutoff:f.alphaCutoff,diffuse:[d,m,p],ambient:[d,m,p],opacity:"OPAQUE"===f.alphaMode?1:f.opacity,doubleSided:f.doubleSided,doubleSidedType:"winding-order",cullFace:f.doubleSided?0:2,hasVertexColors:!!t.attributes.color,hasVertexTangents:!!t.attributes.tangent,normalType:x?0:2,castShadows:!0,receiveShadows:f.receiveShadows,receiveAmbientOcclusion:f.receiveAmbientOcclusion,textureId:null!=R?R.id:void 0,colorMixMode:f.colorMixMode,normalTextureId:null!=f.normalTexture&&y?a.get(f.normalTexture).id:void 0,textureAlphaPremultiplied:null!=R&&!!R.parameters.preMultiplyAlpha,occlusionTextureId:null!=f.occlusionTexture&&y?a.get(f.occlusionTexture).id:void 0,emissiveTextureId:null!=f.emissiveTexture&&y?a.get(f.emissiveTexture).id:void 0,metallicRoughnessTextureId:null!=f.metallicRoughnessTexture&&y?a.get(f.metallicRoughnessTexture).id:void 0,emissiveBaseColor:[h,b,T],mrrFactors:M?W.Bt:[f.metallicFactor,f.roughnessFactor,o.mrrFactors[2]],isSchematic:M,colorTextureTransformMatrix:B(f.colorTextureTransform),normalTextureTransformMatrix:B(f.normalTextureTransform),scale:[A[0],A[1]],occlusionTextureTransformMatrix:B(f.occlusionTextureTransform),emissiveTextureTransformMatrix:B(f.emissiveTextureTransform),metallicRoughnessTextureTransformMatrix:B(f.metallicRoughnessTextureTransform),...s},u))}const b=i.get(g);if(r.stageResources.materials.push(b),y){const e=e=>{null!=e&&r.stageResources.textures.push(a.get(e))};e(f.colorTexture),e(f.normalTexture),e(f.occlusionTexture),e(f.emissiveTexture),e(f.metallicRoughnessTexture)}return b}(l,e,_,t,r,d,w,o,u),{geometry:f,vertexCount:T}=function(e,t){const r=e.attributes.position.count,n=(0,b.x)(e.indices||r,e.primitiveType),o=(0,p.oe)(3*r),{typedBuffer:a,typedBufferStride:u}=e.attributes.position;(0,g.t)(o,a,e.transform,3,u);const l=[["position",new C.n(o,n,3,!0)]];if(null!=e.attributes.normal){const t=(0,p.oe)(3*r),{typedBuffer:o,typedBufferStride:a}=e.attributes.normal;(0,i.Ge)(Y,e.transform),(0,g.b)(t,o,Y,3,a),(0,s.or)(Y)&&(0,g.n)(t,t),l.push(["normal",new C.n(t,n,3,!0)])}if(null!=e.attributes.tangent){const t=(0,p.oe)(4*r),{typedBuffer:o,typedBufferStride:a}=e.attributes.tangent;(0,i.z0)(Y,e.transform),(0,y.t)(t,o,Y,4,a),(0,s.or)(Y)&&(0,g.n)(t,t,4),l.push(["tangent",new C.n(t,n,4,!0)])}if(null!=e.attributes.texCoord0){const t=(0,p.oe)(2*r),{typedBuffer:o,typedBufferStride:s}=e.attributes.texCoord0;(0,x.a)(t,o,2,s),l.push(["uv0",new C.n(t,n,2,!0)])}const c=e.attributes.color;if(null!=c){const t=new Uint8Array(4*r);4===c.elementCount?c instanceof h.Eq?(0,y.b)(t,c,1,255):(c instanceof h.XP||c instanceof h.Uz)&&(0,y.b)(t,c,1/255,255):(t.fill(255),c instanceof h.xs?(0,g.f)(t,c.typedBuffer,1,255,4,c.typedBufferStride):(e.attributes.color instanceof h.eI||e.attributes.color instanceof h.nS)&&(0,g.f)(t,c.typedBuffer,1/255,255,4,e.attributes.color.typedBufferStride)),l.push(["color",new C.n(t,n,4,!0)])}return{geometry:new F.V(t,l),vertexCount:r}}(e,a??new $.$U({},o)),M=f.boundingInfo;null!=M&&0===A&&((0,m.iT)(R,M.bbMin),(0,m.iT)(R,M.bbMax)),null!=a&&(_.stageResources.geometries.push(f),_.numberOfVertices+=T)}),S||f.push(_)}),{engineResources:f,referenceBoundingBox:R}}(T,J,X,t,a.specifiedLodIndex,_);return{lods:H,referenceBoundingBox:Z,isEsriSymbolResource:T.meta.isEsriSymbolResource,isWosr:!1}}const Y=(0,a.vt)()},69397:(e,t,r)=>{r.d(t,{$B:()=>o,Qf:()=>l,Qh:()=>a,RS:()=>s,ez:()=>d,lM:()=>i,qK:()=>f});var n=r(34275);function o(e){return 32+e.length}const s=16;function i(e){if(!e)return 0;let t=f;for(const r in e)e.hasOwnProperty(r)&&(t+=u(e[r],!1));return t}function a(e){if(!e)return 0;if("number"==typeof e[0])return l(e);if(Array.isArray(e))return function(e){const t=e.length;if(0===t||"number"==typeof e[0])return c(e,8);let r=d;for(let n=0;n<t;n++)r+=u(e[n]);return r}(e);let t=f;for(const r in e)e.hasOwnProperty(r)&&(t+=u(e[r]));return t}function u(e,t=!0){switch(typeof e){case"object":return t?a(e):f;case"string":return o(e);case"number":return s;case"boolean":return 4;default:return 8}}function l(...e){return e.reduce((e,t)=>e+(t?(0,n.iu)(t)?t.byteLength+m:Array.isArray(t)?c(t,s):0:0),0)}function c(e,t){return d+e.length*t}const f=32,d=16,m=145},73354:(e,t,r)=>{r.d(t,{a:()=>f,b:()=>a,c:()=>i,d:()=>o,e:()=>d,f:()=>c,l:()=>l,n:()=>m,t:()=>s});var n=r(40876);function o(e,t,r){s(e.typedBuffer,t.typedBuffer,r,e.typedBufferStride,t.typedBufferStride)}function s(e,t,r,n=3,o=n){if(e.length/n!==Math.ceil(t.length/o))return e;const s=e.length/n,i=r[0],a=r[1],u=r[2],l=r[4],c=r[5],f=r[6],d=r[8],m=r[9],p=r[10],h=r[12],g=r[13],y=r[14];let x=0,w=0;for(let r=0;r<s;r++){const r=t[x],s=t[x+1],b=t[x+2];e[w]=i*r+l*s+d*b+h,e[w+1]=a*r+c*s+m*b+g,e[w+2]=u*r+f*s+p*b+y,x+=o,w+=n}return e}function i(e,t,r){a(e.typedBuffer,t.typedBuffer,r,e.typedBufferStride,t.typedBufferStride)}function a(e,t,r,n=3,o=n){if(e.length/n!==Math.ceil(t.length/o))return;const s=e.length/n,i=r[0],a=r[1],u=r[2],l=r[3],c=r[4],f=r[5],d=r[6],m=r[7],p=r[8];let h=0,g=0;for(let r=0;r<s;r++){const r=t[h],s=t[h+1],y=t[h+2];e[g]=i*r+l*s+d*y,e[g+1]=a*r+c*s+m*y,e[g+2]=u*r+f*s+p*y,h+=o,g+=n}}function u(e,t,r,n=3,o=n){const s=Math.min(e.length/n,t.length/o);let i=0,a=0;for(let u=0;u<s;u++)e[a]=r*t[i],e[a+1]=r*t[i+1],e[a+2]=r*t[i+2],i+=o,a+=n;return e}function l(e,t,r,n){c(e.typedBuffer,t.typedBuffer,r,n,e.typedBufferStride,t.typedBufferStride)}function c(e,t,r,o,s=3,i=s){const a=Math.min(e.length/s,t.length/i);let u=0,l=0;const c=1/n.Tf;for(let n=0;n<a;n++)e[l]=o*(r*t[u])**c,e[l+1]=o*(r*t[u+1])**c,e[l+2]=o*(r*t[u+2])**c,u+=i,l+=s}function f(e,t,r,n=3,o=n){const s=e.length/n;if(s!==Math.ceil(t.length/o))return e;let i=0,a=0;for(let u=0;u<s;u++)e[a]=t[i]+r[0],e[a+1]=t[i+1]+r[1],e[a+2]=t[i+2]+r[2],i+=o,a+=n;return e}function d(e,t){m(e.typedBuffer,t.typedBuffer,e.typedBufferStride,t.typedBufferStride)}function m(e,t,r=3,n=r){const o=Math.min(e.length/r,t.length/n);let s=0,i=0;for(let a=0;a<o;a++){const o=t[s],a=t[s+1],u=t[s+2],l=o*o+a*a+u*u;if(l>0){const t=1/Math.sqrt(l);e[i]=t*o,e[i+1]=t*a,e[i+2]=t*u}s+=n,i+=r}}r(44208),r(53966),Object.freeze(Object.defineProperty({__proto__:null,linearToSRGB:c,linearToSRGBView:l,normalize:m,normalizeView:d,scale:u,scaleView:function(e,t,r){u(e.typedBuffer,t.typedBuffer,r,e.typedBufferStride,t.typedBufferStride)},shiftRight:function(e,t,r){const n=Math.min(e.count,t.count),o=e.typedBuffer,s=e.typedBufferStride,i=t.typedBuffer,a=t.typedBufferStride;let u=0,l=0;for(let e=0;e<n;e++)o[l]=i[u]>>r,o[l+1]=i[u+1]>>r,o[l+2]=i[u+2]>>r,u+=a,l+=s},transformMat3:a,transformMat3View:i,transformMat4:s,transformMat4View:o,translate:f},Symbol.toStringTag,{value:"Module"}))},84498:(e,t,r)=>{r.d(t,{x:()=>i});var n=r(34275),o=r(97146),s=r(63907);function i(e,t){switch(t){case s.WR.TRIANGLES:return function(e){return"number"==typeof e?(0,o.tM)(e):(0,n.mg)(e)?new Uint16Array(e):e}(e);case s.WR.TRIANGLE_STRIP:return function(e){const t="number"==typeof e?e:e.length;if(t<3)return[];const r=t-2,n=(0,o.my)(3*r);if("number"==typeof e){let e=0;for(let t=0;t<r;t+=1)t%2==0?(n[e++]=t,n[e++]=t+1,n[e++]=t+2):(n[e++]=t+1,n[e++]=t,n[e++]=t+2)}else{let t=0;for(let o=0;o<r;o+=1)o%2==0?(n[t++]=e[o],n[t++]=e[o+1],n[t++]=e[o+2]):(n[t++]=e[o+1],n[t++]=e[o],n[t++]=e[o+2])}return n}(e);case s.WR.TRIANGLE_FAN:return function(e){const t="number"==typeof e?e:e.length;if(t<3)return new Uint16Array(0);const r=t-2,n=r<=65536?new Uint16Array(3*r):new Uint32Array(3*r);if("number"==typeof e){let e=0;for(let t=0;t<r;++t)n[e++]=0,n[e++]=t+1,n[e++]=t+2;return n}const o=e[0];let s=e[1],i=0;for(let t=0;t<r;++t){const r=e[t+2];n[i++]=o,n[i++]=s,n[i++]=r,s=r}return n}(e)}}},88340:(e,t,r)=>{function n(){return new Float32Array(2)}function o(e,t){const r=new Float32Array(2);return r[0]=e,r[1]=t,r}function s(){return n()}function i(){return o(1,1)}function a(){return o(1,0)}function u(){return o(0,1)}r.d(t,{Un:()=>c,fA:()=>o,uY:()=>l,vt:()=>n});const l=s(),c=i(),f=a(),d=u();Object.freeze(Object.defineProperty({__proto__:null,ONES:c,UNIT_X:f,UNIT_Y:d,ZEROS:l,clone:function(e){const t=new Float32Array(2);return t[0]=e[0],t[1]=e[1],t},create:n,fromValues:o,ones:i,unitX:a,unitY:u,zeros:s},Symbol.toStringTag,{value:"Module"}))}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[431],{431:(t,e,r)=>{r.d(e,{o6:()=>g,HY:()=>w,hx:()=>b,Jb:()=>v});var n=r(9318);function s(t,e,r){const n=e/3,s=new Uint32Array(r+1),i=new Uint32Array(r+1),u=(t,e)=>{t<e?s[t+1]++:i[e+1]++};for(let e=0;e<n;e++){const r=t[3*e],n=t[3*e+1],s=t[3*e+2];u(r,n),u(n,s),u(s,r)}let o=0,f=0;for(let t=0;t<r;t++){const e=s[t+1],r=i[t+1];s[t+1]=o,i[t+1]=f,o+=e,f+=r}const c=new Uint32Array(6*n),a=s[r],h=(t,e,r)=>{if(t<e){const n=s[t+1]++;c[2*n]=e,c[2*n+1]=r}else{const n=i[e+1]++;c[2*a+2*n]=t,c[2*a+2*n+1]=r}};for(let e=0;e<n;e++){const r=t[3*e],n=t[3*e+1],s=t[3*e+2];h(r,n,e),h(n,s,e),h(s,r,e)}const l=(t,e)=>{const r=2*t,n=e-t;for(let t=1;t<n;t++){const e=c[r+2*t],n=c[r+2*t+1];let s=t-1;for(;s>=0&&c[r+2*s]>e;s--)c[r+2*s+2]=c[r+2*s],c[r+2*s+3]=c[r+2*s+1];c[r+2*s+2]=e,c[r+2*s+3]=n}};for(let t=0;t<r;t++)l(s[t],s[t+1]),l(a+i[t],a+i[t+1]);const d=new Int32Array(3*n),p=(e,r)=>e===t[3*r]?0:e===t[3*r+1]?1:e===t[3*r+2]?2:-1,y=(t,e)=>{const r=p(t,e);d[3*e+r]=-1},E=(t,e,r,n)=>{const s=p(t,e);d[3*e+s]=n;const i=p(r,n);d[3*n+i]=e};for(let t=0;t<r;t++){let e=s[t];const r=s[t+1];let n=i[t];const u=i[t+1];for(;e<r&&n<u;){const r=c[2*e],s=c[2*a+2*n];r===s?(E(t,c[2*e+1],s,c[2*a+2*n+1]),e++,n++):r<s?(y(t,c[2*e+1]),e++):(y(s,c[2*a+2*n+1]),n++)}for(;e<r;)y(t,c[2*e+1]),e++;for(;n<u;)y(c[2*a+2*n],c[2*a+2*n+1]),n++}return d}var i=r(1843),u=r(3055),o=r(87811),f=r(38954),c=r(51850),a=r(34727);function h(t,e,r,n,s,i=2){const u=1/(Math.abs(r)+Math.abs(n)+Math.abs(s)),o=r*u,f=n*u,c=s<=0?(o>=0?1:-1)*(1-Math.abs(f)):o,a=s<=0?(f>=0?1:-1)*(1-Math.abs(o)):f,h=e*i;t[h]=l(c),t[h+1]=l(a)}function l(t){return(0,a.qE)(Math.round(32767*t),-32767,32767)}r(11868),r(34275);class d{updateSettings(t){this.settings=t,this._edgeHashFunction=t.reducedPrecision?B:m}write(t,e,r){S.seed=this._edgeHashFunction(r);const n=S.getIntRange(0,255),s=S.getIntRange(0,this.settings.variants-1),i=S.getFloat(),u=255*(.5*function(t){return Math.abs(t)**1.2*Math.sign(t)}(-(1-Math.min(i/.7,1))+Math.max(0,i-.7)/(1-.7))+.5);t.position0.setVec(e,r.position0),t.position1.setVec(e,r.position1),t.componentIndex.set(e,r.componentIndex),t.variantOffset.set(e,n),t.variantStroke.set(e,s),t.variantExtension.set(e,u)}}const p=new Float32Array(6),y=new Uint32Array(p.buffer),E=new Uint32Array(1);function m(t){return p[0]=t.position0[0],p[1]=t.position0[1],p[2]=t.position0[2],p[3]=t.position1[0],p[4]=t.position1[1],p[5]=t.position1[2],E[0]=31*(31*(31*(31*(31*(166811+y[0])+y[1])+y[2])+y[3])+y[4])+y[5],E[0]}function B(t){const e=p;e[0]=_(t.position0[0]),e[1]=_(t.position0[1]),e[2]=_(t.position0[2]),e[3]=_(t.position1[0]),e[4]=_(t.position1[1]),e[5]=_(t.position1[2]),E[0]=5381;for(let t=0;t<y.length;t++)E[0]=31*E[0]+y[t];return E[0]}const T=1e4;function _(t){return Math.round(t*T)/T}const M=(0,c.vt)(),S=new o.A;var A=r(93406);function g(t){const e=b(t.data,t.skipDeduplicate,t.indices,t.indicesLength);return R.updateSettings(t.writerSettings),I.updateSettings(t.writerSettings),(0,A.K)(e,R,I)}function b(t,e,r,i){if(e){const e=s(r,i,t.count);return new N(r,i,e,t)}const o=(0,n.b)(t.buffer,t.stride/4,{originalIndices:r}),f=s(o.indices,i,o.uniqueCount);return{faces:o.indices,facesLength:o.indices.length,neighbors:f,vertices:u.I$.createView(o.buffer)}}class N{constructor(t,e,r,n){this.faces=t,this.facesLength=e,this.neighbors=r,this.vertices=n}}const R=new class{constructor(){this._commonWriter=new d}updateSettings(t){this._commonWriter.updateSettings(t)}allocate(t){return u.gr.createBuffer(t)}write(t,e,r){this._commonWriter.write(t,e,r),(0,f.f)(M,r.faceNormal0,r.faceNormal1),(0,f.n)(M,M);const{typedBuffer:n,typedBufferStride:s}=t.normalCompressed;h(n,e,M[0],M[1],M[2],s)}},I=new class{constructor(){this._commonWriter=new d}updateSettings(t){this._commonWriter.updateSettings(t)}allocate(t){return u.In.createBuffer(t)}write(t,e,r){this._commonWriter.write(t,e,r);{const{typedBuffer:n,typedBufferStride:s}=t.normalCompressed;h(n,e,r.faceNormal0[0],r.faceNormal0[1],r.faceNormal0[2],s)}{const{typedBuffer:n,typedBufferStride:s}=t.normal2Compressed;h(n,e,r.faceNormal1[0],r.faceNormal1[1],r.faceNormal1[2],s)}}},v=(0,i.BP)().vec3f("position0").vec3f("position1"),w=(0,i.BP)().vec3f("position0").vec3f("position1").u16("componentIndex")},620:(t,e,r)=>{r.d(e,{O_:()=>i,vA:()=>s}),r(48163),r(87317),(0,r(91829).vt)();class n{constructor(t){this.message=t}toString(){return`AssertException: ${this.message}`}}function s(t,e="Assertion"){if(!t){const t=new Error(e).stack;throw new n(`${e} at ${t}`)}}function i(t,e,r,n){let s,i=(r[0]-t[0])/e[0],u=(n[0]-t[0])/e[0];i>u&&(s=i,i=u,u=s);let o=(r[1]-t[1])/e[1],f=(n[1]-t[1])/e[1];if(o>f&&(s=o,o=f,f=s),i>f||o>u)return!1;o>i&&(i=o),f<u&&(u=f);let c=(r[2]-t[2])/e[2],a=(n[2]-t[2])/e[2];return c>a&&(s=c,c=a,a=s),!(i>a||c>u||(a<u&&(u=a),u<0))}},1843:(t,e,r)=>{r.d(e,{BP:()=>h,l5:()=>l});var n=r(20498),s=r(13030),i=r(90239),u=r(4431),o=r(620),f=r(85079);class c{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 c(this.layout,this.buffer.slice(t*this.stride,e*this.stride))}copyFrom(t,e=0,r=0,n=t.count){const s=this.stride;if(s%4==0){const i=new Uint32Array(t.buffer,e*s,n*s/4);new Uint32Array(this.buffer,r*s,n*s/4).set(i)}else{const i=new Uint8Array(t.buffer,e*s,n*s);new Uint8Array(this.buffer,r*s,n*s).set(i)}return this}get usedMemory(){return this.byteLength}dispose(){}}class a{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:y(t[1].constructor)})))}freeze(){return this}get locations(){return(0,f.Xk)((0,u.U)(this))}vec2f16(t,e){return this._appendField(t,n.SX?s.ZD:s.gH,e),this}vec2f(t,e){return this._appendField(t,s.gH,e),this}vec2f64(t,e){return this._appendField(t,s.si,e),this}vec3f16(t,e){return this._appendField(t,n.SX?s.EC:s.xs,e),this}vec3f(t,e){return this._appendField(t,s.xs,e),this}vec3f64(t,e){return this._appendField(t,s.Xm,e),this}vec4f16(t,e){return this._appendField(t,n.SX?s.jz:s.Eq,e),this}vec4f(t,e){return this._appendField(t,s.Eq,e),this}vec4f64(t,e){return this._appendField(t,s.Aj,e),this}mat3f(t,e){return this._appendField(t,s.jZ,e),this}mat3f64(t,e){return this._appendField(t,s.j0,e),this}mat4f(t,e){return this._appendField(t,s.Sx,e),this}mat4f64(t,e){return this._appendField(t,s.E$,e),this}vec4u8(t,e){return this._appendField(t,s.XP,e),this}f16(t,e){return this._appendField(t,n.SX?s.XW:s.Y$,e),this}f32(t,e){return this._appendField(t,s.Y$,e),this}f64(t,e){return this._appendField(t,s.qB,e),this}u8(t,e){return this._appendField(t,s.SL,e),this}u16(t,e){return this._appendField(t,s.h,e),this}i8(t,e){return this._appendField(t,s.bf,e),this}vec2i8(t,e){return this._appendField(t,s.D6,e),this}vec2i16(t,e){return this._appendField(t,s.mJ,e),this}vec2u8(t,e){return this._appendField(t,s.LC,e),this}vec2u16(t,e){return this._appendField(t,s.Yi,e),this}vec4u16(t,e){return this._appendField(t,s.Uz,e),this}u32(t,e){return this._appendField(t,s.P,e),this}_appendField(t,e,r){this._fields.has(t)&&(0,o.vA)(!1,`${t} already added to vertex buffer layout`);const n=e.ElementCount*(0,i.GJ)(e.ElementType),s=this._stride;this._fields.set(t,{constructor:e,size:n,offset:s,optional:r}),this._alignFields()}_alignFields(){let t=0,e=1;this._fields.forEach(r=>{const n=(0,i.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 c(this,t)}createView(t){return new c(this,t)}clone(){const t=new a;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 h(){return new a}class l{constructor(t){this.fields=new Array,t.fields.forEach((t,e)=>{const r={...t,constructor:p(t.constructor)};this.fields.push([e,r])}),this.stride=t.stride}}const d=[s.Y$,s.gH,s.xs,s.Eq,s.jZ,s.Sx,s.qB,s.si,s.Xm,s.Aj,s.j0,s.E$,s.SL,s.LC,s.eI,s.XP,s.h,s.Yi,s.nS,s.Uz,s.P,s.An,s.H$,s.ml,s.bf,s.D6,s.m8,s.TX,s.Qt,s.mJ,s.Vp,s.E7,s.My,s.UL,s.zD,s.Y4];function p(t){return`${t.ElementType}_${t.ElementCount}`}function y(t){return E.get(t)}const E=new Map;d.forEach(t=>E.set(p(t),t))},3055:(t,e,r)=>{r.d(e,{I$:()=>u,In:()=>a,gr:()=>c});var n=r(4431),s=r(1843),i=r(85079);const u=(0,s.BP)().vec3f("position").u16("componentIndex").freeze(),o=(0,s.BP)().vec2u8("sideness").freeze(),f=(0,n.U)(o),c=(0,s.BP)().vec3f("position0").vec3f("position1").vec2i16("normalCompressed").u16("componentIndex").u8("variantOffset",{glNormalized:!0}).u8("variantStroke").u8("variantExtension",{glNormalized:!0}).freeze(),a=(0,s.BP)().vec3f("position0").vec3f("position1").vec2i16("normalCompressed").vec2i16("normal2Compressed").u16("componentIndex").u8("variantOffset",{glNormalized:!0}).u8("variantStroke").u8("variantExtension",{glNormalized:!0}).freeze(),h=(0,n.U)(c,1),l=(0,n.U)(a,1);(0,i._u)([f,h]),(0,i._u)([f,l])},4431:(t,e,r)=>{r.d(e,{U:()=>i}),r(44208);var n=r(63907),s=r(74038);function i(t,e=0){const r=t.stride;return Array.from(t.fields.keys()).map(i=>{const u=t.fields.get(i),o=u.constructor.ElementCount,f=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")}}(u.constructor.ElementType),c=u.offset,a=u.optional?.glNormalized??!1;return new s._(i,o,f,c,r,a,e)})}},9318:(t,e,r)=>{r.d(e,{b:()=>i});var n=r(34727),s=r(97146);function i(t,e,r){const i=Array.isArray(t),a=i?t.length/e:t.byteLength/(4*e),h=i?t:new Uint32Array(t,0,a*e),l=r?.minReduction??0,d=r?.originalIndices||null,p=d?d.length:0,y=r?.componentOffsets||null;let E=0;if(y)for(let t=0;t<y.length-1;t++){const e=y[t+1]-y[t];e>E&&(E=e)}else E=a;const m=Math.floor(1.1*E)+1;(null==c||c.length<2*m)&&(c=new Uint32Array((0,n.cU)(2*m)));for(let t=0;t<2*m;t++)c[t]=0;let B=0;const T=!!y&&!!d,_=T?p:a;let M=(0,s.my)(a);const S=new Uint32Array(p),A=1.96;let g=0!==l?Math.ceil(4*A*A/(l*l)*l*(1-l)):_,b=1,N=y?y[1]:_;for(let t=0;t<_;t++){if(t===g){const e=1-B/t;if(e+A*Math.sqrt(e*(1-e)/t)<l)return null;g*=2}if(t===N){for(let t=0;t<2*m;t++)c[t]=0;if(d)for(let t=y[b-1];t<y[b];t++)S[t]=M[d[t]];N=y[++b]}const r=T?d[t]:t,n=r*e,s=f(h,n,e);let i=s%m,o=B;for(;0!==c[2*i+1];){if(c[2*i]===s){const t=c[2*i+1]-1;if(u(h,n,t*e,e)){o=M[t];break}}i++,i>=m&&(i-=m)}o===B&&(c[2*i]=s,c[2*i+1]=r+1,B++),M[r]=o}if(0!==l&&1-B/a<l)return null;if(T){for(let t=y[b-1];t<S.length;t++)S[t]=M[d[t]];M=(0,s.uW)(S)}const R=i?new Array(B):new Uint32Array(B*e);B=0;for(let t=0;t<_;t++)M[t]===B&&(o(h,(T?d[t]:t)*e,R,B*e,e),B++);if(d&&!T){const t=new Uint32Array(p);for(let e=0;e<t.length;e++)t[e]=M[d[e]];M=(0,s.uW)(t)}return{buffer:Array.isArray(R)?R:R.buffer,indices:M,uniqueCount:B}}function u(t,e,r,n){for(let s=0;s<n;s++)if(t[e+s]!==t[r+s])return!1;return!0}function o(t,e,r,n,s){for(let i=0;i<s;i++)r[n+i]=t[e+i]}function f(t,e,r){let n=0;for(let s=0;s<r;s++)n=t[e+s]+n|0,n=n+(n<<11)+(n>>>2)|0;return n>>>0}let c=null},11868:(t,e,r)=>{r.d(e,{Wz:()=>i,oe:()=>s});var n=r(34275);function s(t,e=!1){return t<=n.y9?e?new Array(t).fill(0):new Array(t):new Float32Array(t)}function i(t){return(Array.isArray(t)?t.length:t.byteLength/8)<=n.y9?Array.from(t):new Float32Array(t)}},13030:(t,e,r)=>{r.d(e,{Y$:()=>y,XW:()=>p,qB:()=>N,Qt:()=>j,My:()=>Z,bf:()=>X,jZ:()=>S,j0:()=>A,Sx:()=>g,E$:()=>b,h:()=>x,P:()=>L,SL:()=>w,gH:()=>m,ZD:()=>E,si:()=>R,mJ:()=>k,UL:()=>J,D6:()=>q,Yi:()=>O,An:()=>D,LC:()=>F,xs:()=>T,EC:()=>B,Xm:()=>I,Vp:()=>$,zD:()=>Q,m8:()=>z,nS:()=>P,H$:()=>Y,eI:()=>U,Eq:()=>M,jz:()=>_,Aj:()=>v,E7:()=>W,Y4:()=>K,TX:()=>V,Uz:()=>G,ml:()=>H,XP:()=>C});var n=r(20498);class s{static{this.ElementCount=9}constructor(t,e,r=0,n,s){this.TypedArrayConstructor=t,this.elementCount=9;const i=this.TypedArrayConstructor;void 0===n&&(n=9*i.BYTES_PER_ELEMENT);const u=0===e.byteLength?0:r;this.typedBuffer=null==s?new i(e,u):new i(e,u,(s-r)/i.BYTES_PER_ELEMENT),this.typedBufferStride=n/i.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride),this.stride=this.typedBufferStride*this.TypedArrayConstructor.BYTES_PER_ELEMENT}sliceBuffer(t,e,r=this.count-e){const n=this.typedBuffer.byteOffset+e*this.stride;return new t(this.buffer,n,this.stride,n+r*this.stride)}getMat(t,e){let r=t*this.typedBufferStride;for(let t=0;t<9;t++)e[t]=this.typedBuffer[r++];return e}setMat(t,e){let r=t*this.typedBufferStride;for(let t=0;t<9;t++)this.typedBuffer[r++]=e[t]}get(t,e){return this.typedBuffer[t*this.typedBufferStride+e]}set(t,e,r){this.typedBuffer[t*this.typedBufferStride+e]=r}copyFrom(t,e,r){const n=this.typedBuffer,s=e.typedBuffer;let i=t*this.typedBufferStride,u=r*e.typedBufferStride;for(let t=0;t<9;++t)n[i++]=s[u++]}get buffer(){return this.typedBuffer.buffer}}class i{static{this.ElementCount=16}constructor(t,e,r=0,n,s){this.TypedArrayConstructor=t,this.elementCount=16;const i=this.TypedArrayConstructor;void 0===n&&(n=16*i.BYTES_PER_ELEMENT);const u=0===e.byteLength?0:r;this.typedBuffer=null==s?new i(e,u):new i(e,u,(s-r)/i.BYTES_PER_ELEMENT),this.typedBufferStride=n/i.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride),this.stride=this.typedBufferStride*this.TypedArrayConstructor.BYTES_PER_ELEMENT}sliceBuffer(t,e,r=this.count-e){const n=this.typedBuffer.byteOffset+e*this.stride;return new t(this.buffer,n,this.stride,n+r*this.stride)}getMat(t,e){let r=t*this.typedBufferStride;for(let t=0;t<16;t++)e[t]=this.typedBuffer[r++];return e}setMat(t,e){let r=t*this.typedBufferStride;for(let t=0;t<16;t++)this.typedBuffer[r++]=e[t]}get(t,e){return this.typedBuffer[t*this.typedBufferStride+e]}set(t,e,r){this.typedBuffer[t*this.typedBufferStride+e]=r}copyFrom(t,e,r){this.copyFromTypedBuffer(t,e.typedBuffer,r*e.typedBufferStride)}copyFromTypedBuffer(t,e,r){const n=this.typedBuffer;let s=t*this.typedBufferStride;for(let t=0;t<16;++t)n[s++]=e[r++]}get buffer(){return this.typedBuffer.buffer}}class u{static{this.ElementCount=1}constructor(t,e,r=0,n,s){this.TypedArrayConstructor=t,this.elementCount=1;const i=this.TypedArrayConstructor;void 0===n&&(n=i.BYTES_PER_ELEMENT);const u=0===e.byteLength?0:r;this.typedBuffer=null==s?new i(e,u):new i(e,u,(s-r)/i.BYTES_PER_ELEMENT),this.stride=n,this.typedBufferStride=n/i.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride)}sliceBuffer(t,e,r=this.count-e){const n=this.typedBuffer.byteOffset+e*this.stride;return new t(this.buffer,n,this.stride,n+r*this.stride)}get(t){return this.typedBuffer[t*this.typedBufferStride]}set(t,e){this.typedBuffer[t*this.typedBufferStride]=e}get buffer(){return this.typedBuffer.buffer}}var o=r(37585);class f{static{this.ElementCount=2}constructor(t,e,r=0,n,s){this.TypedArrayConstructor=t,this.start=r,this.elementCount=2;const i=this.TypedArrayConstructor;void 0===n&&(n=2*i.BYTES_PER_ELEMENT);const u=0===e.byteLength?0:r;this.typedBuffer=null==s?new i(e,u):new i(e,u,(s-r)/i.BYTES_PER_ELEMENT),this.typedBufferStride=n/i.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride),this.stride=this.typedBufferStride*this.TypedArrayConstructor.BYTES_PER_ELEMENT}sliceBuffer(t,e,r=this.count-e){const n=this.typedBuffer.byteOffset+e*this.stride;return new t(this.buffer,n,this.stride,n+r*this.stride)}getVec(t,e){return t*=this.typedBufferStride,(0,o.hZ)(e,this.typedBuffer[t],this.typedBuffer[t+1])}setVec(t,e){t*=this.typedBufferStride,this.typedBuffer[t++]=e[0],this.typedBuffer[t]=e[1]}get(t,e){return this.typedBuffer[t*this.typedBufferStride+e]}set(t,e,r){this.typedBuffer[t*this.typedBufferStride+e]=r}setValues(t,e,r){t*=this.typedBufferStride,this.typedBuffer[t++]=e,this.typedBuffer[t]=r}copyFrom(t,e,r){const n=this.typedBuffer,s=e.typedBuffer;let i=t*this.typedBufferStride,u=r*e.typedBufferStride;n[i++]=s[u++],n[i]=s[u]}get buffer(){return this.typedBuffer.buffer}}var c=r(38954);class a{static{this.ElementCount=3}constructor(t,e,r=0,n,s){this.TypedArrayConstructor=t,this.elementCount=3;const i=this.TypedArrayConstructor;void 0===n&&(n=3*i.BYTES_PER_ELEMENT);const u=0===e.byteLength?0:r;this.typedBuffer=null==s?new i(e,u):new i(e,u,(s-r)/i.BYTES_PER_ELEMENT),this.typedBufferStride=n/i.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride),this.stride=this.typedBufferStride*this.TypedArrayConstructor.BYTES_PER_ELEMENT}sliceBuffer(t,e,r=this.count-e){const n=this.typedBuffer.byteOffset+e*this.stride;return new t(this.buffer,n,this.stride,n+r*this.stride)}getVec(t,e){return t*=this.typedBufferStride,(0,c.i)(e,this.typedBuffer[t],this.typedBuffer[t+1],this.typedBuffer[t+2])}setVec(t,e){t*=this.typedBufferStride,this.typedBuffer[t++]=e[0],this.typedBuffer[t++]=e[1],this.typedBuffer[t]=e[2]}get(t,e){return this.typedBuffer[t*this.typedBufferStride+e]}set(t,e,r){this.typedBuffer[t*this.typedBufferStride+e]=r}setValues(t,e,r,n){t*=this.typedBufferStride,this.typedBuffer[t++]=e,this.typedBuffer[t++]=r,this.typedBuffer[t]=n}copyFrom(t,e,r){const n=this.typedBuffer,s=e.typedBuffer;let i=t*this.typedBufferStride,u=r*e.typedBufferStride;n[i++]=s[u++],n[i++]=s[u++],n[i]=s[u]}get buffer(){return this.typedBuffer.buffer}}var h=r(87317);class l{static{this.ElementCount=4}constructor(t,e,r=0,n,s){this.TypedArrayConstructor=t,this.start=r,this.elementCount=4;const i=this.TypedArrayConstructor;void 0===n&&(n=4*i.BYTES_PER_ELEMENT);const u=0===e.byteLength?0:r;this.typedBuffer=null==s?new i(e,u):new i(e,u,(s-r)/i.BYTES_PER_ELEMENT),this.typedBufferStride=n/i.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride),this.stride=this.typedBufferStride*this.TypedArrayConstructor.BYTES_PER_ELEMENT}sliceBuffer(t,e,r=this.count-e){const n=this.typedBuffer.byteOffset+e*this.stride;return new t(this.buffer,n,this.stride,n+r*this.stride)}getVec(t,e){return t*=this.typedBufferStride,(0,h.s)(e,this.typedBuffer[t++],this.typedBuffer[t++],this.typedBuffer[t++],this.typedBuffer[t])}setVec(t,e){t*=this.typedBufferStride,this.typedBuffer[t++]=e[0],this.typedBuffer[t++]=e[1],this.typedBuffer[t++]=e[2],this.typedBuffer[t]=e[3]}get(t,e){return this.typedBuffer[t*this.typedBufferStride+e]}set(t,e,r){this.typedBuffer[t*this.typedBufferStride+e]=r}setValues(t,e,r,n,s){t*=this.typedBufferStride,this.typedBuffer[t++]=e,this.typedBuffer[t++]=r,this.typedBuffer[t++]=n,this.typedBuffer[t]=s}copyFrom(t,e,r){const n=this.typedBuffer,s=e.typedBuffer;let i=t*this.typedBufferStride,u=r*e.typedBufferStride;n[i++]=s[u++],n[i++]=s[u++],n[i++]=s[u++],n[i]=s[u]}get buffer(){return this.typedBuffer.buffer}}var d=r(620);class p extends u{constructor(t,e=0,r,s){(0,d.vA)(n.SX),super((0,n.pX)(),t,e,r,s),this.elementType="f16"}static{this.ElementType="f16"}}class y extends u{constructor(t,e=0,r,n){super(Float32Array,t,e,r,n),this.elementType="f32"}static{this.ElementType="f32"}}class E extends f{constructor(t,e=0,r,s){(0,d.vA)(n.SX),super((0,n.pX)(),t,e,r,s),this.elementType="f16"}slice(t,e){return this.sliceBuffer(E,t,e)}static{this.ElementType="f16"}}class m extends f{constructor(t,e=0,r,n){super(Float32Array,t,e,r,n),this.elementType="f32"}slice(t,e){return this.sliceBuffer(m,t,e)}static{this.ElementType="f32"}}class B extends a{constructor(t,e=0,r,s){(0,d.vA)(n.SX),super((0,n.pX)(),t,e,r,s),this.elementType="f16"}slice(t,e){return this.sliceBuffer(B,t,e)}static{this.ElementType="f16"}}class T extends a{constructor(t,e=0,r,n){super(Float32Array,t,e,r,n),this.elementType="f32"}slice(t,e){return this.sliceBuffer(T,t,e)}static fromTypedArray(t,e){return new T(t.buffer,t.byteOffset,e,t.byteOffset+t.byteLength)}static{this.ElementType="f32"}}class _ extends l{constructor(t,e=0,r,s){(0,d.vA)(n.SX),super((0,n.pX)(),t,e,r,s),this.elementType="f16"}slice(t,e){return this.sliceBuffer(_,t,e)}static{this.ElementType="f16"}}class M extends l{constructor(t,e=0,r,n){super(Float32Array,t,e,r,n),this.elementType="f32"}slice(t,e){return this.sliceBuffer(M,t,e)}static{this.ElementType="f32"}}class S extends s{constructor(t,e=0,r,n){super(Float32Array,t,e,r,n),this.elementType="f32"}slice(t,e){return this.sliceBuffer(S,t,e)}static{this.ElementType="f32"}}class A extends s{constructor(t,e=0,r,n){super(Float64Array,t,e,r,n),this.elementType="f64"}slice(t,e){return this.sliceBuffer(A,t,e)}static{this.ElementType="f64"}}class g extends i{constructor(t,e=0,r,n){super(Float32Array,t,e,r,n),this.elementType="f32"}slice(t,e){return this.sliceBuffer(g,t,e)}static{this.ElementType="f32"}}class b extends i{constructor(t,e=0,r,n){super(Float64Array,t,e,r,n),this.elementType="f64"}slice(t,e){return this.sliceBuffer(b,t,e)}static{this.ElementType="f64"}}class N extends u{constructor(t,e=0,r,n){super(Float64Array,t,e,r,n),this.elementType="f64"}slice(t,e){return this.sliceBuffer(N,t,e)}static{this.ElementType="f64"}}class R extends f{constructor(t,e=0,r,n){super(Float64Array,t,e,r,n),this.elementType="f64"}slice(t,e){return this.sliceBuffer(R,t,e)}static{this.ElementType="f64"}}class I extends a{constructor(t,e=0,r,n){super(Float64Array,t,e,r,n),this.elementType="f64"}slice(t,e){return this.sliceBuffer(I,t,e)}static fromTypedArray(t,e){return new I(t.buffer,t.byteOffset,e,t.byteOffset+t.byteLength)}static{this.ElementType="f64"}}class v extends l{constructor(t,e=0,r,n){super(Float64Array,t,e,r,n),this.elementType="f64"}slice(t,e){return this.sliceBuffer(v,t,e)}static{this.ElementType="f64"}}class w extends u{constructor(t,e=0,r,n){super(Uint8Array,t,e,r,n),this.elementType="u8"}slice(t,e){return this.sliceBuffer(w,t,e)}static{this.ElementType="u8"}}class F extends f{constructor(t,e=0,r,n){super(Uint8Array,t,e,r,n),this.elementType="u8"}slice(t,e){return this.sliceBuffer(F,t,e)}static{this.ElementType="u8"}}class U extends a{constructor(t,e=0,r,n){super(Uint8Array,t,e,r,n),this.elementType="u8"}slice(t,e){return this.sliceBuffer(U,t,e)}static fromTypedArray(t,e){return new U(t.buffer,t.byteOffset,e,t.byteOffset+t.byteLength)}static{this.ElementType="u8"}}class C extends l{constructor(t,e=0,r,n){super(Uint8Array,t,e,r,n),this.elementType="u8"}slice(t,e){return this.sliceBuffer(C,t,e)}static{this.ElementType="u8"}}class x extends u{constructor(t,e=0,r,n){super(Uint16Array,t,e,r,n),this.elementType="u16"}slice(t,e){return this.sliceBuffer(x,t,e)}static{this.ElementType="u16"}}class O extends f{constructor(t,e=0,r,n){super(Uint16Array,t,e,r,n),this.elementType="u16"}slice(t,e){return this.sliceBuffer(O,t,e)}static{this.ElementType="u16"}}class P extends a{constructor(t,e=0,r,n){super(Uint16Array,t,e,r,n),this.elementType="u16"}slice(t,e){return this.sliceBuffer(P,t,e)}static{this.ElementType="u16"}}class G extends l{constructor(t,e=0,r,n){super(Uint16Array,t,e,r,n),this.elementType="u16"}slice(t,e){return this.sliceBuffer(G,t,e)}static{this.ElementType="u16"}}class L extends u{constructor(t,e=0,r,n){super(Uint32Array,t,e,r,n),this.elementType="u32"}slice(t,e){return this.sliceBuffer(L,t,e)}static{this.ElementType="u32"}}class D extends f{constructor(t,e=0,r,n){super(Uint32Array,t,e,r,n),this.elementType="u32"}slice(t,e){return this.sliceBuffer(D,t,e)}static{this.ElementType="u32"}}class Y extends a{constructor(t,e=0,r,n){super(Uint32Array,t,e,r,n),this.elementType="u32"}slice(t,e){return this.sliceBuffer(Y,t,e)}static{this.ElementType="u32"}}class H extends l{constructor(t,e=0,r,n){super(Uint32Array,t,e,r,n),this.elementType="u32"}slice(t,e){return this.sliceBuffer(H,t,e)}static{this.ElementType="u32"}}class X extends u{constructor(t,e=0,r,n){super(Int8Array,t,e,r,n),this.elementType="i8"}slice(t,e){return this.sliceBuffer(X,t,e)}static{this.ElementType="i8"}}class q extends f{constructor(t,e=0,r,n){super(Int8Array,t,e,r,n),this.elementType="i8"}slice(t,e){return this.sliceBuffer(q,t,e)}static{this.ElementType="i8"}}class z extends a{constructor(t,e=0,r,n){super(Int8Array,t,e,r,n),this.elementType="i8"}slice(t,e){return this.sliceBuffer(z,t,e)}static{this.ElementType="i8"}}class V extends l{constructor(t,e=0,r,n){super(Int8Array,t,e,r,n),this.elementType="i8"}slice(t,e){return this.sliceBuffer(V,t,e)}static{this.ElementType="i8"}}class j extends u{constructor(t,e=0,r,n){super(Int16Array,t,e,r,n),this.elementType="i16"}slice(t,e){return this.sliceBuffer(j,t,e)}static{this.ElementType="i16"}}class k extends f{constructor(t,e=0,r,n){super(Int16Array,t,e,r,n),this.elementType="i16"}slice(t,e){return this.sliceBuffer(k,t,e)}static{this.ElementType="i16"}}class $ extends a{constructor(t,e=0,r,n){super(Int16Array,t,e,r,n),this.elementType="i16"}slice(t,e){return this.sliceBuffer($,t,e)}static{this.ElementType="i16"}}class W extends l{constructor(t,e=0,r,n){super(Int16Array,t,e,r,n),this.elementType="i16"}slice(t,e){return this.sliceBuffer(W,t,e)}static{this.ElementType="i16"}}class Z extends u{constructor(t,e=0,r,n){super(Int32Array,t,e,r,n),this.elementType="i32"}slice(t,e){return this.sliceBuffer(Z,t,e)}static{this.ElementType="i32"}}class J extends f{constructor(t,e=0,r,n){super(Int32Array,t,e,r,n),this.elementType="i32"}slice(t,e){return this.sliceBuffer(J,t,e)}static{this.ElementType="i32"}}class Q extends a{constructor(t,e=0,r,n){super(Int32Array,t,e,r,n),this.elementType="i32"}slice(t,e){return this.sliceBuffer(Q,t,e)}static{this.ElementType="i32"}}class K extends l{constructor(t,e=0,r,n){super(Int32Array,t,e,r,n),this.elementType="i32"}slice(t,e){return this.sliceBuffer(K,t,e)}static{this.ElementType="i32"}}},20498:(t,e,r)=>{r.d(e,{SX:()=>i,pX:()=>s});let n=globalThis.Float16Array;function s(){return n}let i=!!n},34304:(t,e,r)=>{r.d(e,{DF:()=>f,FD:()=>s,Ov:()=>i,ct:()=>c});let n=1e-6;function s(){return n}const i=Math.random,u=Math.PI/180,o=180/Math.PI;function f(t){return t*u}function c(t){return t*o}Object.freeze(Object.defineProperty({__proto__:null,RANDOM:i,equals:function(t,e){return Math.abs(t-e)<=n*Math.max(1,Math.abs(t),Math.abs(e))},getEpsilon:s,setEpsilon:function(t){n=t},toDegree:c,toRadian:f},Symbol.toStringTag,{value:"Module"}))},34727:(t,e,r)=>{r.d(e,{$8:()=>A,Cc:()=>u,Hx:()=>y,Io:()=>M,KJ:()=>c,Sp:()=>l,XM:()=>a,YN:()=>h,ZH:()=>p,b6:()=>S,cU:()=>s,gg:()=>d,hs:()=>o,kU:()=>f,or:()=>b,pF:()=>R,pq:()=>N,qE:()=>i});const n=new Float32Array(1);function s(t){--t;for(let e=1;e<32;e<<=1)t|=t>>e;return t+1}function i(t,e,r){return Math.min(Math.max(t,e),r)}function u(t,e,r){return t+(e-t)*r}function o(t,e,r,n,s){return u(n,s,(t-e)/(r-e))}function f(t){return t*Math.PI/180}function c(t){return 180*t/Math.PI}function a(t){return Math.acos(i(t,-1,1))}function h(t){return Math.asin(i(t,-1,1))}function l(t,e,r=1e-6){return t===e||!(!Number.isFinite(t)||!Number.isFinite(e))&&(t>e?t-e:e-t)<=r}function d(t,e,r=1e-6){return!l(t,e,r)&&t>e}function p(t,e,r=1e-6){return!l(t,e,r)&&t<e}function y(t,e,r=1e-6){return l(t,e,r)||t>e}const E=new DataView(new ArrayBuffer(Float64Array.BYTES_PER_ELEMENT));function m(t){return E.setFloat64(0,t),E.getBigInt64(0)}const B=1000000n,T=_(1);function _(t){const e=m(t=Math.abs(t)),r=function(t){return E.setBigInt64(0,t),E.getFloat64(0)}(e<=B?B:e-B);return Math.abs(t-r)}function M(t,e,r=T){if(t===e)return!0;if(!Number.isFinite(t)||!Number.isFinite(e))return!1;if(null!=r&&_(Math.min(Math.abs(t),Math.abs(e)))<r)return Math.abs(t-e)<=r;const n=m(t),s=m(e);return n<0==s<0&&!((n<s?s-n:n-s)>B)}function S(t,e,r=1e-6){if(t===e)return!0;if(!Number.isFinite(t)||!Number.isFinite(e))return!1;const n=Math.abs(t-e),s=Math.abs(t),i=Math.abs(e);if(0===t||0===e||s<1e-12&&i<1e-12){if(n>.01*r)return!1}else if(n/(s+i)>r)return!1;return!0}function A(t){return g(Math.max(-N,Math.min(t,N)))}function g(t){return n[0]=t,n[0]}function b(t){const e=t[0]*t[0]+t[1]*t[1]+t[2]*t[2],r=t[3]*t[3]+t[4]*t[4]+t[5]*t[5],n=t[6]*t[6]+t[7]*t[7]+t[8]*t[8];return!(l(e,1)&&l(r,1)&&l(n,1))}const N=g(34028234663852886e22);function R(t,e,r){if(void 0===r||0===+r)return Math[t](e);if(e=+e,r=+r,isNaN(e)||"number"!=typeof r||r%1!=0)return NaN;let n=e.toString().split("e");return n=(e=Math[t](+(n[0]+"e"+(n[1]?+n[1]-r:-r)))).toString().split("e"),+(n[0]+"e"+(n[1]?+n[1]+r:r))}},37585:(t,e,r)=>{r.d(e,{C:()=>s,Cc:()=>E,Io:()=>h,S8:()=>y,WQ:()=>u,aI:()=>_,e$:()=>B,hG:()=>l,hZ:()=>i,hs:()=>a,jb:()=>S,l0:()=>m,t2:()=>T});var n=r(34304);function s(t,e){return t[0]=e[0],t[1]=e[1],t}function i(t,e,r){return t[0]=e,t[1]=r,t}function u(t,e,r){return t[0]=e[0]+r[0],t[1]=e[1]+r[1],t}function o(t,e,r){return t[0]=e[0]-r[0],t[1]=e[1]-r[1],t}function f(t,e,r){return t[0]=e[0]*r[0],t[1]=e[1]*r[1],t}function c(t,e,r){return t[0]=e[0]/r[0],t[1]=e[1]/r[1],t}function a(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t}function h(t,e){const r=e[0]-t[0],n=e[1]-t[1];return Math.sqrt(r*r+n*n)}function l(t,e){const r=e[0]-t[0],n=e[1]-t[1];return r*r+n*n}function d(t){const e=t[0],r=t[1];return Math.sqrt(e*e+r*r)}function p(t){const e=t[0],r=t[1];return e*e+r*r}function y(t,e){const r=e[0],n=e[1];let s=r*r+n*n;return s>0&&(s=1/Math.sqrt(s),t[0]=e[0]*s,t[1]=e[1]*s),t}function E(t,e,r,n){const s=e[0],i=e[1];return t[0]=s+n*(r[0]-s),t[1]=i+n*(r[1]-i),t}function m(t,e,r){const n=e[0],s=e[1];return t[0]=r[0]*n+r[2]*s+r[4],t[1]=r[1]*n+r[3]*s+r[5],t}function B(t,e,r,n){const s=e[0]-r[0],i=e[1]-r[1],u=Math.sin(n),o=Math.cos(n);return t[0]=s*o-i*u+r[0],t[1]=s*u+i*o+r[1],t}function T(t,e){return t[0]===e[0]&&t[1]===e[1]}function _(t,e){const r=t[0],s=t[1],i=e[0],u=e[1],o=(0,n.FD)();return Math.abs(r-i)<=o*Math.max(1,Math.abs(r),Math.abs(i))&&Math.abs(s-u)<=o*Math.max(1,Math.abs(s),Math.abs(u))}const M=d,S=o,A=f,g=c,b=h,N=l,R=p;Object.freeze(Object.defineProperty({__proto__:null,add:u,angle:function(t,e){const r=t[0],n=t[1],s=e[0],i=e[1];let u=r*r+n*n;u>0&&(u=1/Math.sqrt(u));let o=s*s+i*i;o>0&&(o=1/Math.sqrt(o));const f=(r*s+n*i)*u*o;return f>1?0:f<-1?Math.PI:Math.acos(f)},ceil:function(t,e){return t[0]=Math.ceil(e[0]),t[1]=Math.ceil(e[1]),t},copy:s,cross:function(t,e,r){const n=e[0]*r[1]-e[1]*r[0];return t[0]=t[1]=0,t[2]=n,t},dist:b,distance:h,div:g,divide:c,dot:function(t,e){return t[0]*e[0]+t[1]*e[1]},equals:_,exactEquals:T,floor:function(t,e){return t[0]=Math.floor(e[0]),t[1]=Math.floor(e[1]),t},inverse:function(t,e){return t[0]=1/e[0],t[1]=1/e[1],t},len:M,length:d,lerp:E,max:function(t,e,r){return t[0]=Math.max(e[0],r[0]),t[1]=Math.max(e[1],r[1]),t},min:function(t,e,r){return t[0]=Math.min(e[0],r[0]),t[1]=Math.min(e[1],r[1]),t},mul:A,multiply:f,negate:function(t,e){return t[0]=-e[0],t[1]=-e[1],t},normalize:y,projectAndScale:function(t,e,r,n,s){let i=e[0]-r[0],u=e[1]-r[1];const o=(n[0]*i+n[1]*u)*(s-1);return i=n[0]*o,u=n[1]*o,t[0]=e[0]+i,t[1]=e[1]+u,t},random:function(t,e=1){const r=2*(0,n.Ov)()*Math.PI;return t[0]=Math.cos(r)*e,t[1]=Math.sin(r)*e,t},rotate:B,round:function(t,e){return t[0]=Math.round(e[0]),t[1]=Math.round(e[1]),t},scale:a,scaleAndAdd:function(t,e,r,n){return t[0]=e[0]+r[0]*n,t[1]=e[1]+r[1]*n,t},set:i,sqrDist:N,sqrLen:R,squaredDistance:l,squaredLength:p,str:function(t){return"vec2("+t[0]+", "+t[1]+")"},sub:S,subtract:o,transformMat2:function(t,e,r){const n=e[0],s=e[1];return t[0]=r[0]*n+r[2]*s,t[1]=r[1]*n+r[3]*s,t},transformMat2d:m,transformMat3:function(t,e,r){const n=e[0],s=e[1];return t[0]=r[0]*n+r[3]*s+r[6],t[1]=r[1]*n+r[4]*s+r[7],t},transformMat4:function(t,e,r){const n=e[0],s=e[1];return t[0]=r[0]*n+r[4]*s+r[12],t[1]=r[1]*n+r[5]*s+r[13],t}},Symbol.toStringTag,{value:"Module"}))},38954:(t,e,r)=>{r.d(e,{A:()=>p,B:()=>d,C:()=>a,D:()=>h,E:()=>C,F:()=>G,H:()=>D,a:()=>x,b:()=>m,c:()=>u,d:()=>c,e:()=>g,f:()=>f,g:()=>E,h:()=>b,i:()=>o,j:()=>B,k:()=>_,l:()=>i,m:()=>N,n:()=>A,o:()=>I,q:()=>U,r:()=>S,s:()=>T,t:()=>R,u:()=>M,v:()=>v,w:()=>l,x:()=>L,y:()=>Y,z:()=>y});var n=r(51850),s=r(34304);function i(t){const e=t[0],r=t[1],n=t[2];return Math.sqrt(e*e+r*r+n*n)}function u(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function o(t,e,r,n){return t[0]=e,t[1]=r,t[2]=n,t}function f(t,e,r){return t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t}function c(t,e,r){return t[0]=e[0]-r[0],t[1]=e[1]-r[1],t[2]=e[2]-r[2],t}function a(t,e,r){return t[0]=e[0]*r[0],t[1]=e[1]*r[1],t[2]=e[2]*r[2],t}function h(t,e,r){return t[0]=e[0]/r[0],t[1]=e[1]/r[1],t[2]=e[2]/r[2],t}function l(t,e){return t[0]=Math.abs(e[0]),t[1]=Math.abs(e[1]),t[2]=Math.abs(e[2]),t}function d(t,e){return t[0]=Math.sign(e[0]),t[1]=Math.sign(e[1]),t[2]=Math.sign(e[2]),t}function p(t,e,r){return t[0]=Math.min(e[0],r[0]),t[1]=Math.min(e[1],r[1]),t[2]=Math.min(e[2],r[2]),t}function y(t,e,r){return t[0]=Math.max(e[0],r[0]),t[1]=Math.max(e[1],r[1]),t[2]=Math.max(e[2],r[2]),t}function E(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t}function m(t,e,r,n){return t[0]=e[0]+r[0]*n,t[1]=e[1]+r[1]*n,t[2]=e[2]+r[2]*n,t}function B(t,e){const r=e[0]-t[0],n=e[1]-t[1],s=e[2]-t[2];return Math.sqrt(r*r+n*n+s*s)}function T(t,e){const r=e[0]-t[0],n=e[1]-t[1],s=e[2]-t[2];return r*r+n*n+s*s}function _(t){const e=t[0],r=t[1],n=t[2];return e*e+r*r+n*n}function M(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t}function S(t,e){return t[0]=1/e[0],t[1]=1/e[1],t[2]=1/e[2],t}function A(t,e){const r=e[0],n=e[1],s=e[2];let i=r*r+n*n+s*s;return i>0&&(i=1/Math.sqrt(i),t[0]=e[0]*i,t[1]=e[1]*i,t[2]=e[2]*i),t}function g(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function b(t,e,r){const n=e[0],s=e[1],i=e[2],u=r[0],o=r[1],f=r[2];return t[0]=s*f-i*o,t[1]=i*u-n*f,t[2]=n*o-s*u,t}function N(t,e,r,n){const s=e[0],i=e[1],u=e[2];return t[0]=s+n*(r[0]-s),t[1]=i+n*(r[1]-i),t[2]=u+n*(r[2]-u),t}function R(t,e,r){const n=e[0],s=e[1],i=e[2];return t[0]=r[0]*n+r[4]*s+r[8]*i+r[12],t[1]=r[1]*n+r[5]*s+r[9]*i+r[13],t[2]=r[2]*n+r[6]*s+r[10]*i+r[14],t}function I(t,e,r){const n=e[0],s=e[1],i=e[2];return t[0]=n*r[0]+s*r[3]+i*r[6],t[1]=n*r[1]+s*r[4]+i*r[7],t[2]=n*r[2]+s*r[5]+i*r[8],t}function v(t,e,r){const n=r[0],s=r[1],i=r[2],u=r[3],o=e[0],f=e[1],c=e[2],a=s*c-i*f,h=i*o-n*c,l=n*f-s*o,d=s*l-i*h,p=i*a-n*l,y=n*h-s*a,E=2*u;return t[0]=o+a*E+2*d,t[1]=f+h*E+2*p,t[2]=c+l*E+2*y,t}const w=(0,n.vt)(),F=(0,n.vt)();function U(t,e){return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]}function C(t,e,r){const n=r[0]-e[0],s=r[1]-e[1],i=r[2]-e[2];let u=n*n+s*s+i*i;return u>0?(u=1/Math.sqrt(u),t[0]=n*u,t[1]=s*u,t[2]=i*u,t):(t[0]=0,t[1]=0,t[2]=0,t)}const x=c,O=a,P=h,G=B,L=T,D=i,Y=_;Object.freeze(Object.defineProperty({__proto__:null,abs:l,add:f,angle:function(t,e){A(w,t),A(F,e);const r=g(w,F);return r>1?0:r<-1?Math.PI:Math.acos(r)},bezier:function(t,e,r,n,s,i){const u=1-i,o=u*u,f=i*i,c=o*u,a=3*i*o,h=3*f*u,l=f*i;return t[0]=e[0]*c+r[0]*a+n[0]*h+s[0]*l,t[1]=e[1]*c+r[1]*a+n[1]*h+s[1]*l,t[2]=e[2]*c+r[2]*a+n[2]*h+s[2]*l,t},ceil:function(t,e){return t[0]=Math.ceil(e[0]),t[1]=Math.ceil(e[1]),t[2]=Math.ceil(e[2]),t},clamp:function(t,e=0,r=1){return t[0]=Math.min(Math.max(t[0],e),r),t[1]=Math.min(Math.max(t[1],e),r),t[2]=Math.min(Math.max(t[2],e),r),t},copy:u,cross:b,crossAndNormalize:function(t,e,r){const n=e[0],s=e[1],i=e[2],u=r[0],o=r[1],f=r[2],c=s*f-i*o,a=i*u-n*f,h=n*o-s*u,l=Math.sqrt(c*c+a*a+h*h);return t[0]=c/l,t[1]=a/l,t[2]=h/l,t},direction:C,dist:G,distance:B,div:P,divide:h,dot:g,equals:function(t,e){if(t===e)return!0;const r=t[0],n=t[1],i=t[2],u=e[0],o=e[1],f=e[2],c=(0,s.FD)();return Math.abs(r-u)<=c*Math.max(1,Math.abs(r),Math.abs(u))&&Math.abs(n-o)<=c*Math.max(1,Math.abs(n),Math.abs(o))&&Math.abs(i-f)<=c*Math.max(1,Math.abs(i),Math.abs(f))},exactEquals:U,floor:function(t,e){return t[0]=Math.floor(e[0]),t[1]=Math.floor(e[1]),t[2]=Math.floor(e[2]),t},hermite:function(t,e,r,n,s,i){const u=i*i,o=u*(2*i-3)+1,f=u*(i-2)+i,c=u*(i-1),a=u*(3-2*i);return t[0]=e[0]*o+r[0]*f+n[0]*c+s[0]*a,t[1]=e[1]*o+r[1]*f+n[1]*c+s[1]*a,t[2]=e[2]*o+r[2]*f+n[2]*c+s[2]*a,t},inverse:S,len:D,length:i,lerp:N,max:y,min:p,mul:O,multiply:a,negate:M,normalize:A,random:function(t,e=1){const r=s.Ov,n=2*r()*Math.PI,i=2*r()-1,u=Math.sqrt(1-i*i)*e;return t[0]=Math.cos(n)*u,t[1]=Math.sin(n)*u,t[2]=i*e,t},rotateX:function(t,e,r,n){const s=[],i=[];return s[0]=e[0]-r[0],s[1]=e[1]-r[1],s[2]=e[2]-r[2],i[0]=s[0],i[1]=s[1]*Math.cos(n)-s[2]*Math.sin(n),i[2]=s[1]*Math.sin(n)+s[2]*Math.cos(n),t[0]=i[0]+r[0],t[1]=i[1]+r[1],t[2]=i[2]+r[2],t},rotateY:function(t,e,r,n){const s=[],i=[];return s[0]=e[0]-r[0],s[1]=e[1]-r[1],s[2]=e[2]-r[2],i[0]=s[2]*Math.sin(n)+s[0]*Math.cos(n),i[1]=s[1],i[2]=s[2]*Math.cos(n)-s[0]*Math.sin(n),t[0]=i[0]+r[0],t[1]=i[1]+r[1],t[2]=i[2]+r[2],t},rotateZ:function(t,e,r,n){const s=[],i=[];return s[0]=e[0]-r[0],s[1]=e[1]-r[1],s[2]=e[2]-r[2],i[0]=s[0]*Math.cos(n)-s[1]*Math.sin(n),i[1]=s[0]*Math.sin(n)+s[1]*Math.cos(n),i[2]=s[2],t[0]=i[0]+r[0],t[1]=i[1]+r[1],t[2]=i[2]+r[2],t},round:function(t,e){return t[0]=Math.round(e[0]),t[1]=Math.round(e[1]),t[2]=Math.round(e[2]),t},scale:E,scaleAndAdd:m,set:o,sign:d,sqrDist:L,sqrLen:Y,squaredDistance:T,squaredLength:_,str:function(t){return"vec3("+t[0]+", "+t[1]+", "+t[2]+")"},sub:x,subtract:c,transformMat3:I,transformMat4:R,transformQuat:v},Symbol.toStringTag,{value:"Module"}))},48163:(t,e,r)=>{function n(){return[0,0]}function s(t){return[t[0],t[1]]}function i(t,e){return[t,e]}function u(){return i(1,1)}function o(){return i(1,0)}function f(){return i(0,1)}r.d(e,{Un:()=>c,fA:()=>i,o8:()=>s,vt:()=>n});const c=u(),a=o(),h=f();Object.freeze(Object.defineProperty({__proto__:null,ONES:c,UNIT_X:a,UNIT_Y:h,ZEROS:[0,0],clone:s,create:n,freeze:function(t,e){return[t,e]},fromArray:function(t,e=[0,0]){const r=Math.min(2,t.length);for(let n=0;n<r;++n)e[n]=t[n];return e},fromValues:i,ones:u,unitX:o,unitY:f,zeros:function(){return[0,0]}},Symbol.toStringTag,{value:"Module"}))},51850:(t,e,r)=>{function n(){return[0,0,0]}function s(t){return[t[0],t[1],t[2]]}function i(t,e,r){return[t,e,r]}function u(t,e,r){return[t,e,r]}function o(t,e=[0,0,0]){const r=Math.min(3,t.length);for(let n=0;n<r;++n)e[n]=t[n];return e}function f(){return i(1,1,1)}function c(){return i(1,0,0)}function a(){return i(0,1,0)}function h(){return i(0,0,1)}r.d(e,{CN:()=>u,Cb:()=>E,Cw:()=>p,JP:()=>y,Un:()=>d,ci:()=>o,fA:()=>i,o8:()=>s,uY:()=>l,vt:()=>n});const l=[0,0,0],d=f(),p=c(),y=a(),E=h();Object.freeze(Object.defineProperty({__proto__:null,ONES:d,UNIT_X:p,UNIT_Y:y,UNIT_Z:E,ZEROS:l,clone:s,create:n,freeze:u,fromArray:o,fromValues:i,ones:f,unitX:c,unitY:a,unitZ:h,zeros:function(){return[0,0,0]}},Symbol.toStringTag,{value:"Module"}))},63907:(t,e,r)=>{r.d(e,{CQ:()=>y,Fq:()=>d,H0:()=>i,SB:()=>f,WR:()=>n,XN:()=>u,iE:()=>o,ld:()=>c,nI:()=>p,pe:()=>s,r6:()=>h,vt:()=>a,yI:()=>l});const n={POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6},s={BYTE:5120,UNSIGNED_BYTE:5121,SHORT:5122,UNSIGNED_SHORT:5123,INT:5124,UNSIGNED_INT:5125,FLOAT:5126,HALF_FLOAT:5131},i={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},u=Object.values(i),o={DEPTH24_STENCIL8:35056,DEPTH32F_STENCIL8:36013},f={DEPTH_COMPONENT16:33189,DEPTH_COMPONENT24:33190,DEPTH_COMPONENT32F:36012},c={FLOAT:s.FLOAT,UNSIGNED_BYTE:s.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:s.BYTE,UNSIGNED_SHORT:s.UNSIGNED_SHORT,SHORT:s.SHORT,UNSIGNED_INT:s.UNSIGNED_INT,INT:s.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},a={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},h=36064,l=36065,d=36066,p=33306,y={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}},74038:(t,e,r)=>{r.d(e,{_:()=>n});class n{constructor(t,e,r,n,s,i=!1,u=0){this.name=t,this.count=e,this.type=r,this.offset=n,this.stride=s,this.normalized=i,this.divisor=u}}},85079:(t,e,r)=>{function n(t){let e=0;return 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}r.d(e,{Xk:()=>n,_u:()=>s})},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})},93406:(t,e,r)=>{r.d(e,{K:()=>f});var n=r(34727),s=r(15142),i=r(38954),u=r(51850);const o=-1;function f(t,e,r){const n=t.vertices.position,s=t.vertices.componentIndex,u=y.position0,f=y.position1,h=y.faceNormal0,d=y.faceNormal1,{edges:p,normals:E}=a(t),m=p.length/4,B=e.allocate(m);let T=0;const _=m,A=r?.allocate(_);let b=0,N=0,R=0;l.length=0;for(let t=0;t<m;++t){const e=4*t;n.getVec(p.data[e],u),n.getVec(p.data[e+1],f);const r=l.pushNew();r.index=4*t,r.length=(0,i.j)(u,f)}l.sort((t,e)=>e.length-t.length);const I=new Array,v=new Array;l.forAll(({length:t,index:a})=>{const l=p.data[a],m=p.data[a+1],_=p.data[a+2],w=p.data[a+3],F=w===o;if(n.getVec(l,u),n.getVec(m,f),F){const t=3*_;(0,i.i)(h,E.data[t],E.data[t+1],E.data[t+2]),(0,i.c)(d,h),y.componentIndex=s.get(l),y.cosAngle=(0,i.e)(h,d)}else{let t=3*_;if((0,i.i)(h,E.data[t],E.data[t+1],E.data[t+2]),t=3*w,(0,i.i)(d,E.data[t],E.data[t+1],E.data[t+2]),y.componentIndex=s.get(l),y.cosAngle=(0,i.e)(h,d),function(t,e){return t.cosAngle>e}(y,S))return;y.cosAngle<-.9999&&(0,i.c)(d,h)}N+=t,R++,F||function(t,e){return t.cosAngle<e}(y,g)?(e.write(B,T++,y),I.push(t)):c(y,M)&&(A&&r&&r.write(A,b++,y),v.push(t))});const w=new Float32Array(I.reverse()),F=new Float32Array(v.reverse()),U=A&&r?{instancesData:A.slice(0,b),lodInfo:{lengths:F}}:void 0;return{regular:{instancesData:B.slice(0,T),lodInfo:{lengths:w}},silhouette:U,averageEdgeLength:N/R}}function c(t,e){const r=(0,n.XM)(t.cosAngle);return(0,i.E)(m,t.position1,t.position0),r*((0,i.e)((0,i.h)(E,t.faceNormal0,t.faceNormal1),m)>0?-1:1)>e}function a(t){const e=t.faces.length/3,r=t.faces,n=t.neighbors,s=t.vertices.position;d.length=p.length=0;for(let t=0;t<e;t++){const e=3*t,u=n[e],f=n[e+1],c=n[e+2],a=r[e],h=r[e+1],l=r[e+2];s.getVec(a,B),s.getVec(h,T),s.getVec(l,_),(0,i.d)(T,T,B),(0,i.d)(_,_,B),(0,i.h)(B,T,_),(0,i.n)(B,B),p.pushArray(B),(u===o||a<h)&&(d.push(a),d.push(h),d.push(t),d.push(u)),(f===o||h<l)&&(d.push(h),d.push(l),d.push(t),d.push(f)),(c===o||l<a)&&(d.push(l),d.push(a),d.push(t),d.push(c))}return{edges:d,normals:p}}class h{constructor(){this.index=0,this.length=0}}const l=new s.A({allocator:t=>t||new h,deallocator:null}),d=new s.A({deallocator:null}),p=new s.A({deallocator:null}),y=new class{constructor(){this.position0=(0,u.vt)(),this.position1=(0,u.vt)(),this.faceNormal0=(0,u.vt)(),this.faceNormal1=(0,u.vt)(),this.componentIndex=0,this.cosAngle=0}},E=(0,u.vt)(),m=(0,u.vt)(),B=(0,u.vt)(),T=(0,u.vt)(),_=(0,u.vt)(),M=(0,n.kU)(4),S=Math.cos(M),A=(0,n.kU)(35),g=Math.cos(A)},97146:(t,e,r)=>{r.d(e,{Dg:()=>i,my:()=>u,tM:()=>a,uW:()=>s});var n=r(34275);function s(t){return i(t,!0)}function i(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,s=!0;return t.some((t,e)=>(r=r&&0===t,s=s&&t===e,!r&&!s)),r?function(t){if(1===t)return f;if(t<n.y9)return new Array(t).fill(0);if(t>l.length){const e=Math.max(2*l.length,t);l=new Uint8Array(e)}return new Uint8Array(l.buffer,0,t)}(t.length):s?a(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 u(t){return t<=n.y9?new Array(t):t<=65536?new Uint16Array(t):new Uint32Array(t)}let o=h(131072);const f=[0],c=(()=>{const t=new Uint16Array(65536);for(let e=0;e<t.length;++e)t[e]=e;return t})();function a(t){return 1===t?f:t<n.y9?Array.from(new Uint16Array(c.buffer,0,t)):t<c.length?new Uint16Array(c.buffer,0,t):(t>o.length&&(o=h(Math.max(2*o.length,t))),new Uint32Array(o.buffer,0,t))}function h(t){const e=new Uint32Array(t);for(let t=0;t<e.length;t++)e[t]=t;return e}let l=new Uint8Array(65536)}}]);