@arcgis/core 4.33.0-next.20250205 → 4.33.0-next.20250207

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 (205) hide show
  1. package/arcade.js +1 -1
  2. package/assets/components/assets/icon/dualImageArea16.json +1 -0
  3. package/assets/components/assets/icon/dualImageArea24.json +1 -0
  4. package/assets/components/assets/icon/dualImageArea32.json +1 -0
  5. package/assets/components/assets/icon/dualImageDistance16.json +1 -0
  6. package/assets/components/assets/icon/dualImageDistance24.json +1 -0
  7. package/assets/components/assets/icon/dualImageDistance32.json +1 -0
  8. package/assets/components/assets/icon/dualImageLocation16.json +1 -0
  9. package/assets/components/assets/icon/dualImageLocation24.json +1 -0
  10. package/assets/components/assets/icon/dualImageLocation32.json +1 -0
  11. package/assets/esri/core/workers/RemoteClient.js +1 -1
  12. package/assets/esri/core/workers/chunks/{24a86c52c8bdd0b5eb4d.js → 09a99c556089c166d1f8.js} +1 -1
  13. package/assets/esri/core/workers/chunks/0a8e388e96af44deeabb.js +1 -0
  14. package/assets/esri/core/workers/chunks/12d6baeffd55a98a7c75.js +1 -0
  15. package/assets/esri/core/workers/chunks/143a193fa3a6e645c8ac.js +1 -0
  16. package/assets/esri/core/workers/chunks/{9b4f471fcd8a3b5e089f.js → 192569dfa7c0ea8dd864.js} +1 -1
  17. package/assets/esri/core/workers/chunks/{ad215219e5eef8598745.js → 28dbbfc44cc2bdcd221d.js} +1 -1
  18. package/assets/esri/core/workers/chunks/308ec51ff4a66f7fcb0d.js.LICENSE.txt +1 -1
  19. package/assets/esri/core/workers/chunks/{72cf9192292e5c85c6df.js → 32d3657dcae89b740f8b.js} +2 -2
  20. package/assets/esri/core/workers/chunks/{72cf9192292e5c85c6df.js.LICENSE.txt → 32d3657dcae89b740f8b.js.LICENSE.txt} +1 -1
  21. package/assets/esri/core/workers/chunks/333091ab2e267652ed56.js +1 -0
  22. package/assets/esri/core/workers/chunks/354531dc2f0dea2ad96f.js.LICENSE.txt +1 -1
  23. package/assets/esri/core/workers/chunks/35e4af82a08b4eadbfab.js +1 -0
  24. package/assets/esri/core/workers/chunks/369a2b8484a8807bde38.js +1 -0
  25. package/assets/esri/core/workers/chunks/4040158835f9036967cd.js +2 -0
  26. package/assets/esri/core/workers/chunks/{1a2e1a414e651e988435.js.LICENSE.txt → 4040158835f9036967cd.js.LICENSE.txt} +1 -6
  27. package/assets/esri/core/workers/chunks/{8a1e4f65fc81aba7a704.js → 4122d10bc910e888eee1.js} +1 -1
  28. package/assets/esri/core/workers/chunks/433576983754f690bcc7.js +1 -0
  29. package/assets/esri/core/workers/chunks/459af0c3d62c3ed11c19.js +1 -0
  30. package/assets/esri/core/workers/chunks/53810519ff5922b42cd2.js +1 -0
  31. package/assets/esri/core/workers/chunks/5721557a1d8eab23a55b.js +1 -0
  32. package/assets/esri/core/workers/chunks/594d923400fd74881833.js +1 -0
  33. package/assets/esri/core/workers/chunks/{7a0415db78c68d31733f.js → 6039da57a2adedd3b83f.js} +1 -1
  34. package/assets/esri/core/workers/chunks/62a1d60ad4bf6469c4dd.js +1 -0
  35. package/assets/esri/core/workers/chunks/{81aa8cc289fd02ca4da6.js → 7058001bf66f9f3d5d45.js} +1 -1
  36. package/assets/esri/core/workers/chunks/{e8ae8a11d8439e2a66ad.js → 706f867a9034d62a8ef7.js} +1 -1
  37. package/assets/esri/core/workers/chunks/73d03c208242778e67bf.js +1 -0
  38. package/assets/esri/core/workers/chunks/77764ca90bdd13ee2167.js.LICENSE.txt +1 -1
  39. package/assets/esri/core/workers/chunks/{1ab83753d9eec0463461.js → 7b367bb0ed9c218ca595.js} +1 -1
  40. package/assets/esri/core/workers/chunks/{723a9fba144e2fa6d017.js → 7cb09e58bcc537ec1f7a.js} +1 -1
  41. package/assets/esri/core/workers/chunks/8191dd3d7451b2e7b95e.js +1 -0
  42. package/assets/esri/core/workers/chunks/842db06ce62758fab1e7.js +1 -0
  43. package/assets/esri/core/workers/chunks/8c32cee395da0a7b9a8e.js +1 -0
  44. package/assets/esri/core/workers/chunks/8d8f5f08d730270e1165.js +1 -0
  45. package/assets/esri/core/workers/chunks/94225d92afbdb10dfedb.js +1 -0
  46. package/assets/esri/core/workers/chunks/94490937dca566fe2640.js +1 -0
  47. package/assets/esri/core/workers/chunks/{b9ce0049e27a3e1ed9f9.js → 9b2fab133786e5d47631.js} +1 -1
  48. package/assets/esri/core/workers/chunks/9d61590c4d21c7421925.js +1 -0
  49. package/assets/esri/core/workers/chunks/{610b33b7291cffcc4e5d.js → a42ae5d5e5f66d120b4d.js} +1 -1
  50. package/assets/esri/core/workers/chunks/a5e9ea13e844a62b2a7f.js +1 -0
  51. package/assets/esri/core/workers/chunks/b21b152fa15896577242.js.LICENSE.txt +1 -1
  52. package/assets/esri/core/workers/chunks/b43d88b6e7dc4ab13599.js +1 -0
  53. package/assets/esri/core/workers/chunks/{6d5bfcc7856cafe7b043.js → b765670b47d209d7655a.js} +2 -2
  54. package/assets/esri/core/workers/chunks/{6d5bfcc7856cafe7b043.js.LICENSE.txt → b765670b47d209d7655a.js.LICENSE.txt} +1 -1
  55. package/assets/esri/core/workers/chunks/d29c3bf29fcd7fa31f1a.js +1 -0
  56. package/assets/esri/core/workers/chunks/d339dee99c4820b63f39.js +1 -0
  57. package/assets/esri/core/workers/chunks/{9c5c6ecaf5be24279fa5.js → ddc30044f61a2c2df3fe.js} +1 -1
  58. package/assets/esri/core/workers/chunks/de1f3c4b8000c2d73013.js +1 -0
  59. package/assets/esri/core/workers/chunks/e4b3f2d5c43518b0cde7.js +1 -0
  60. package/assets/esri/core/workers/chunks/e5e3b6d00d27b5bb354f.js +1 -0
  61. package/assets/esri/core/workers/chunks/ef6279f5c63ab1e88c71.js +1 -0
  62. package/assets/esri/core/workers/chunks/{0711d3ad4d403bcfdcad.js → f117a89d1f4001a1f9f0.js} +1 -1
  63. package/assets/esri/core/workers/chunks/f14b318bab5efcf43419.js +1 -0
  64. package/assets/esri/core/workers/chunks/f32ca4381e804cc3481e.js +1 -0
  65. package/assets/esri/core/workers/chunks/f9070edd8e0b2a57af79.js +1 -0
  66. package/assets/esri/core/workers/chunks/f9e48205178a5a804d38.js +1 -0
  67. package/assets/esri/themes/base/widgets/_Directions.scss +15 -6
  68. package/assets/esri/themes/base/widgets/_ItemList.scss +6 -0
  69. package/assets/esri/themes/dark/main.css +1 -1
  70. package/assets/esri/themes/light/main.css +1 -1
  71. package/assets/esri/themes/light/view.css +1 -1
  72. package/chunks/WaterSurface.glsl.js +2 -2
  73. package/geometry/operators/projectOperator.js +1 -1
  74. package/geometry/operators/shapePreservingProjectOperator.js +1 -1
  75. package/geometry/support/meshUtils/elevation.js +1 -1
  76. package/interfaces.d.ts +121 -84
  77. package/layers/FeatureLayer.js +1 -1
  78. package/layers/Layer.js +1 -1
  79. package/layers/SubtypeGroupLayer.js +1 -1
  80. package/layers/WCSLayer.js +1 -1
  81. package/layers/graphics/data/FeatureStore.js +1 -1
  82. package/layers/graphics/data/QueryEngineCapabilities.js +1 -1
  83. package/layers/graphics/sources/FeatureLayerSource.js +1 -1
  84. package/layers/graphics/sources/geojson/GeoJSONSourceWorker.js +1 -1
  85. package/layers/graphics/sources/support/MemorySourceWorker.js +1 -1
  86. package/layers/graphics/sources/support/clientSideDefaults.js +1 -1
  87. package/layers/graphics/sources/support/sourceUtils.js +1 -1
  88. package/layers/mixins/BlendLayer.js +1 -1
  89. package/layers/mixins/FeatureLayerBase.js +1 -1
  90. package/layers/mixins/OperationalLayer.js +1 -1
  91. package/layers/mixins/operationalLayerModuleMap.js +1 -1
  92. package/layers/ogc/wcsUtils.js +1 -1
  93. package/layers/support/RasterFunctionTemplate.js +1 -1
  94. package/layers/support/SubtypeSublayer.js +1 -1
  95. package/layers/support/arcadeUtils.js +1 -1
  96. package/layers/support/commonProperties.js +1 -1
  97. package/layers/support/layersCreator.js +1 -1
  98. package/layers/support/rasterDatasets/WCSRaster.js +1 -1
  99. package/layers/support/rasterDatasets/multipartParser.js +1 -1
  100. package/layers/support/rasterDatasets/wcsCapabilitiesParser.js +1 -1
  101. package/layers/support/rasterFunctionUtils.d.ts +2 -1
  102. package/layers/support/rasterFunctionUtils.js +1 -1
  103. package/layers/support/rasterFunctions/creators/createDataManagementFunctions.js +1 -1
  104. package/package.json +2 -2
  105. package/portal/support/layersLoader.js +1 -1
  106. package/portal/support/loadUtils.js +1 -1
  107. package/rest/imageService.js +1 -1
  108. package/rest/support/ImageSampleParameters.js +1 -1
  109. package/rest/support/ImageSampleResult.js +1 -1
  110. package/rest/support/ImageVolumeResult.js +1 -1
  111. package/smartMapping/support/adapters/InMemoryLayerAdapter.js +1 -1
  112. package/smartMapping/support/adapters/support/histogramUtils.js +1 -1
  113. package/support/TablesMixin.js +1 -1
  114. package/support/revision.js +1 -1
  115. package/symbols/cim/CIMSymbolRasterizer.js +1 -1
  116. package/symbols/cim/cimAnalyzer.js +1 -1
  117. package/symbols/cim/fitVectorMarker.js +5 -0
  118. package/symbols/support/previewCIMSymbol.js +1 -1
  119. package/views/2d/engine/webgl/TextureManager.js +1 -1
  120. package/views/2d/engine/webgl/shaderGraph/techniques/heatmap/HeatmapResources.js +1 -1
  121. package/views/2d/layers/FeatureLayerView2D.js +1 -1
  122. package/views/2d/layers/GraphicsLayerView2D.js +1 -1
  123. package/views/2d/layers/ImageryLayerView2D.js +1 -1
  124. package/views/2d/layers/LayerView2D.js +1 -1
  125. package/views/2d/layers/MapImageLayerView2D.js +1 -1
  126. package/views/2d/layers/TileLayerView2D.js +1 -1
  127. package/views/2d/layers/features/schema/SourceSchema.js +1 -1
  128. package/views/2d/layers/features/sources/FeatureSource.js +1 -1
  129. package/views/2d/layers/features/sources/FeatureSourceQueryInfo.js +1 -1
  130. package/views/2d/layers/features/sources/strategies/DrillDownTileLoadStrategy.js +1 -1
  131. package/views/2d/layers/features/sources/strategies/PagedTileLoadStrategy.js +1 -1
  132. package/views/2d/layers/features/sources/strategies/ParquetLoadStrategy.js +1 -1
  133. package/views/2d/layers/features/sources/strategies/SnapshotLoadStrategy.js +1 -1
  134. package/views/2d/layers/features/sources/strategies/StreamLoadStrategy.js +1 -1
  135. package/views/2d/layers/graphics/HighlightGraphicContainer.js +1 -1
  136. package/views/2d/layers/imagery/BaseImageryTileSubView2D.js +1 -1
  137. package/views/2d/layers/support/util.js +1 -1
  138. package/views/3d/environment/ChapmanAtmosphere.js +1 -1
  139. package/views/3d/layers/MediaLayerView3D.js +1 -1
  140. package/views/3d/layers/graphics/Graphics3DIconSymbolLayer.js +1 -1
  141. package/views/3d/layers/support/FeatureTileFetcher3D.js +1 -1
  142. package/views/3d/terrain/OverlayManager.js +1 -1
  143. package/views/3d/terrain/OverlayRenderer.js +1 -1
  144. package/views/3d/terrain/TerrainSurface.js +1 -1
  145. package/views/3d/webgl-engine/Stage.js +1 -1
  146. package/views/3d/webgl-engine/effects/haze/Haze.js +1 -1
  147. package/views/3d/webgl-engine/parts/RenderView.js +1 -1
  148. package/views/3d/webgl-engine/parts/ScreenshotManager.js +1 -1
  149. package/views/LayerViewManager.js +1 -1
  150. package/views/SceneView.js +1 -1
  151. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceSnappingSourceWorker.js +1 -1
  152. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTileCache.js +1 -1
  153. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTileStore.js +1 -1
  154. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTiledFetcher.js +1 -1
  155. package/views/layers/support/MapServiceLayerViewHelper.js +1 -1
  156. package/widgets/Directions.js +1 -1
  157. package/widgets/Editor/CreateFeaturesWorkflow.js +1 -1
  158. package/widgets/Editor/EditorViewModel.js +1 -1
  159. package/widgets/Editor/UpdateWorkflow.js +1 -1
  160. package/widgets/Editor/VisibleElements.js +1 -1
  161. package/widgets/Editor/components/FeatureList.js +1 -1
  162. package/widgets/Editor/components/UpdateFeaturePanelContent.js +1 -1
  163. package/widgets/Editor/support/EditorItem.js +1 -1
  164. package/widgets/Editor/workflowUtils.js +1 -1
  165. package/widgets/Editor.js +1 -1
  166. package/widgets/Feature/FeatureExpression/FeatureExpressionViewModel.js +1 -1
  167. package/widgets/Feature/FeatureViewModel.js +1 -1
  168. package/widgets/Feature/support/arcadeFeatureUtils.js +1 -1
  169. package/widgets/OrientedImageryViewer/adapters/sketch/MeasurementAdapter.js +1 -1
  170. package/widgets/OrientedImageryViewer/components/ImageLocationWidget.js +1 -1
  171. package/widgets/Sketch.js +1 -1
  172. package/widgets/support/UtilityNetworkAssociations/UtilityNetworkAssociationsViewModel.js +1 -1
  173. package/assets/esri/core/workers/chunks/07bff9e742f3e5877f3f.js +0 -1
  174. package/assets/esri/core/workers/chunks/1a2e1a414e651e988435.js +0 -2
  175. package/assets/esri/core/workers/chunks/287362f9af132fafe4de.js +0 -1
  176. package/assets/esri/core/workers/chunks/2ea5e5e6c4660a06b516.js +0 -1
  177. package/assets/esri/core/workers/chunks/380d37ceb8cf52bad190.js +0 -1
  178. package/assets/esri/core/workers/chunks/3984bf01f055fc42bfbf.js +0 -1
  179. package/assets/esri/core/workers/chunks/39e38aab86dcee3f79be.js +0 -1
  180. package/assets/esri/core/workers/chunks/41cd1a5c99ab3bbd1fb4.js +0 -1
  181. package/assets/esri/core/workers/chunks/5e7f16b312077ca8c18d.js +0 -1
  182. package/assets/esri/core/workers/chunks/69d307758262e5d7a32e.js +0 -1
  183. package/assets/esri/core/workers/chunks/6ef2514a6b7bbfb8e37d.js +0 -1
  184. package/assets/esri/core/workers/chunks/7e4d72279cc599b7029c.js +0 -1
  185. package/assets/esri/core/workers/chunks/82d26884127ed772cc4b.js +0 -1
  186. package/assets/esri/core/workers/chunks/8438fba57e82e4cc7c11.js +0 -1
  187. package/assets/esri/core/workers/chunks/858b191c078d04232342.js +0 -1
  188. package/assets/esri/core/workers/chunks/918bdba41fa470cf77fd.js +0 -1
  189. package/assets/esri/core/workers/chunks/91d2bdfa6e34c10b7f50.js +0 -1
  190. package/assets/esri/core/workers/chunks/92155d112ebb6a4c6c6e.js +0 -1
  191. package/assets/esri/core/workers/chunks/991e0f619f1f81f94d56.js +0 -1
  192. package/assets/esri/core/workers/chunks/9a27824d94df702e6e28.js +0 -1
  193. package/assets/esri/core/workers/chunks/b1269b51cef3e11c85e3.js +0 -1
  194. package/assets/esri/core/workers/chunks/b33122adfd1fb68f7c0f.js +0 -1
  195. package/assets/esri/core/workers/chunks/bbbe5d6cb8b737811c84.js +0 -1
  196. package/assets/esri/core/workers/chunks/bf26f58210755875748c.js +0 -1
  197. package/assets/esri/core/workers/chunks/c1fd87af3129873369fd.js +0 -1
  198. package/assets/esri/core/workers/chunks/c4c2b94e5cee7b824093.js +0 -1
  199. package/assets/esri/core/workers/chunks/c85374360ac5e169af16.js +0 -1
  200. package/assets/esri/core/workers/chunks/c94ec324ecad77c53a87.js +0 -1
  201. package/assets/esri/core/workers/chunks/d175953337fa655dc6b0.js +0 -1
  202. package/assets/esri/core/workers/chunks/d8c762ca94e3a11b125d.js +0 -1
  203. package/assets/esri/core/workers/chunks/dbc447413ab40a79ba87.js +0 -1
  204. package/assets/esri/core/workers/chunks/e26dc0c1654316bb1558.js +0 -1
  205. package/assets/esri/core/workers/chunks/e410a09650530d7aad10.js +0 -1
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[2543],{71903:(e,t,s)=>{var i;s.d(t,{u:()=>i}),function(e){e[e.KILOBYTES=1024]="KILOBYTES",e[e.MEGABYTES=1048576]="MEGABYTES",e[e.GIGABYTES=1073741824]="GIGABYTES"}(i||(i={}))},51624:(e,t,s)=>{s.d(t,{A:()=>h});var i,r,n=s(44208),o=s(69397),a=s(93687);(r=i||(i={}))[r.varint=0]="varint",r[r.fixed64=1]="fixed64",r[r.delimited=2]="delimited",r[r.fixed32=5]="fixed32",r[r.unknown=99]="unknown";const l=4294967296,u=new TextDecoder("utf-8"),c=(0,n.A)("safari")||(0,n.A)("ios")?6:(0,n.A)("ff")?12:32;class h{constructor(e,t,s=0,r=(e?e.byteLength:0)){this._tag=0,this._dataType=i.unknown,this._init(e,t,s,r)}_init(e,t,s,i){this._data=e,this._dataView=t,this._pos=s,this._end=i}get usedMemory(){return 64+(0,o.Qf)(this._data)}asUnsafe(){return this}clone(){return new h(this._data,this._dataView,this._pos,this._end)}pos(){return this._pos}move(e){this._pos=e}nextTag(e){for(;;){if(this._pos===this._end)return!1;const t=this._decodeVarint();if(this._tag=t>>3,this._dataType=7&t,!e||e===this._tag)break;this.skip()}return!0}next(){if(this._pos===this._end)return!1;const e=this._decodeVarint();return this._tag=e>>3,this._dataType=7&e,!0}empty(){return this._pos>=this._end}tag(){return this._tag}getInt32(){return this._decodeVarint()}getInt64(){return this._decodeVarint()}getUInt32(){let e=4294967295;if(e=(127&this._data[this._pos])>>>0,this._data[this._pos++]<128)return e;if(e=(e|(127&this._data[this._pos])<<7)>>>0,this._data[this._pos++]<128)return e;if(e=(e|(127&this._data[this._pos])<<14)>>>0,this._data[this._pos++]<128)return e;if(e=(e|(127&this._data[this._pos])<<21)>>>0,this._data[this._pos++]<128)return e;if(e=(e|(15&this._data[this._pos])<<28)>>>0,this._data[this._pos++]<128)return e;throw new Error("Varint overflow")}getUInt64(){return this._decodeVarint()}getSInt32(){const e=this.getUInt32();return e>>>1^-(1&e)}getSInt64(){return this._decodeSVarint()}getBool(){const e=0!==this._data[this._pos];return this._skip(1),e}getEnum(){return this._decodeVarint()}getFixed64(){const e=this._dataView,t=this._pos,s=e.getUint32(t,!0)+e.getUint32(t+4,!0)*l;return this._skip(8),s}getSFixed64(){const e=this._dataView,t=this._pos,s=e.getUint32(t,!0)+e.getInt32(t+4,!0)*l;return this._skip(8),s}getDouble(){const e=this._dataView.getFloat64(this._pos,!0);return this._skip(8),e}getFixed32(){const e=this._dataView.getUint32(this._pos,!0);return this._skip(4),e}getSFixed32(){const e=this._dataView.getInt32(this._pos,!0);return this._skip(4),e}getFloat(){const e=this._dataView.getFloat32(this._pos,!0);return this._skip(4),e}getString(){const e=this._getLength(),t=this._pos,s=this._toString(this._data,t,t+e);return this._skip(e),s}getBytes(){const e=this._getLength(),t=this._pos,s=this._toBytes(this._data,t,t+e);return this._skip(e),s}getLength(){return this._getLengthUnsafe()}processMessageWithArgs(e,t,s,i){const r=this.getMessage(),n=e(r,t,s,i);return r.release(),n}processMessage(e){const t=this.getMessage(),s=e(t);return t.release(),s}getMessage(){const e=this._getLength(),t=h.pool.acquire();return t._init(this._data,this._dataView,this._pos,this._pos+e),this._skip(e),t}release(){h.pool.release(this)}dataType(){return this._dataType}skip(){switch(this._dataType){case i.varint:this._decodeVarint();break;case i.fixed64:this._skip(8);break;case i.delimited:this._skip(this._getLength());break;case i.fixed32:this._skip(4);break;default:throw new Error("Invalid data type!")}}skipLen(e){this._skip(e)}_skip(e){if(this._pos+e>this._end)throw new Error("Attempt to skip past the end of buffer!");this._pos+=e}_decodeVarint(){const e=this._data;let t=this._pos,s=0,i=0;if(this._end-t>=10)do{if(i=e[t++],s|=127&i,!(128&i))break;if(i=e[t++],s|=(127&i)<<7,!(128&i))break;if(i=e[t++],s|=(127&i)<<14,!(128&i))break;if(i=e[t++],s|=(127&i)<<21,!(128&i))break;if(i=e[t++],s+=268435456*(127&i),!(128&i))break;if(i=e[t++],s+=34359738368*(127&i),!(128&i))break;if(i=e[t++],s+=4398046511104*(127&i),!(128&i))break;if(i=e[t++],s+=562949953421312*(127&i),!(128&i))break;if(i=e[t++],s+=72057594037927940*(127&i),!(128&i))break;if(i=e[t++],s+=0x8000000000000000*(127&i),!(128&i))break;throw new Error("Varint too long!")}while(0);else{let r=1;for(;t!==this._end&&(i=e[t],128&i);)++t,s+=(127&i)*r,r*=128;if(t===this._end)throw new Error("Varint overrun!");++t,s+=i*r}return this._pos=t,s}_decodeSVarint(){const e=this._data;let t,s=0,i=0;const r=1&e[this._pos];if(i=e[this._pos++],s|=127&i,!(128&i))return r?-(s+1)/2:s/2;if(i=e[this._pos++],s|=(127&i)<<7,!(128&i))return r?-(s+1)/2:s/2;if(i=e[this._pos++],s|=(127&i)<<14,!(128&i))return r?-(s+1)/2:s/2;if(i=e[this._pos++],s|=(127&i)<<21,!(128&i))return r?-(s+1)/2:s/2;if(i=e[this._pos++],s+=268435456*(127&i),!(128&i))return r?-(s+1)/2:s/2;if(i=e[this._pos++],s+=34359738368*(127&i),!(128&i))return r?-(s+1)/2:s/2;if(i=e[this._pos++],s+=4398046511104*(127&i),!(128&i))return r?-(s+1)/2:s/2;if(t=BigInt(s),i=e[this._pos++],t+=0x2000000000000n*BigInt(127&i),!(128&i))return Number(r?-(t+1n)/2n:t/2n);if(i=e[this._pos++],t+=0x100000000000000n*BigInt(127&i),!(128&i))return Number(r?-(t+1n)/2n:t/2n);if(i=e[this._pos++],t+=0x8000000000000000n*BigInt(127&i),!(128&i))return Number(r?-(t+1n)/2n:t/2n);throw new Error("Varint too long!")}_getLength(){if(this._dataType!==i.delimited)throw new Error("Not a delimited data type!");return this._decodeVarint()}_getLengthUnsafe(){return this.getUInt32()}_toString(e,t,s){if((s=Math.min(this._end,s))-t>c){const i=e.subarray(t,s);return u.decode(i)}let i="",r="";for(let n=t;n<s;++n){const t=e[n];128&t?r+="%"+t.toString(16):(i+=decodeURIComponent(r)+String.fromCharCode(t),r="")}return r.length&&(i+=decodeURIComponent(r)),i}_toBytes(e,t,s){return s=Math.min(this._end,s),new Uint8Array(e.buffer,t,s-t)}}h.pool=new a.A(h,void 0,(e=>{e._data=null,e._dataView=null}))},79897:(e,t,s)=>{s.d(t,{U:()=>c});var i=s(90237),r=s(69622),n=s(36563),o=s(36708),a=s(11932),l=s(10107),u=s(40608);let c=class extends r.A{constructor(){super(...arguments),this.updating=!1,this._handleId=0,this._scheduleHandleId=0,this._pendingPromises=new Set}destroy(){this.removeAll()}add(e,t,s={}){return this._installWatch(e,t,s,o.wB)}addWhen(e,t,s={}){return this._installWatch(e,t,s,o.z7)}addOnCollectionChange(e,t,{initial:s=!1,final:i=!1}={}){const r=++this._handleId;return this.addHandles([(0,o.on)(e,"after-changes",this._createSyncUpdatingCallback(),o.OH),(0,o.on)(e,"change",t,{onListenerAdd:s?e=>t({added:e.toArray(),removed:[]}):void 0,onListenerRemove:i?e=>t({added:[],removed:e.toArray()}):void 0})],r),(0,n.hA)((()=>this.removeHandles(r)))}addPromise(e){if(null==e)return e;const t=++this._handleId;this.addHandles((0,n.hA)((()=>{this._pendingPromises.delete(e)&&(0!==this._pendingPromises.size||this.hasHandles(h)||this._set("updating",!1))})),t),this._pendingPromises.add(e),this._set("updating",!0);const s=()=>this.removeHandles(t);return e.then(s,s),e}removeAll(){this._pendingPromises.clear(),this.removeAllHandles(),this._set("updating",!1)}_installWatch(e,t,s={},i){const r=++this._handleId;s.sync||this._installSyncUpdatingWatch(e,r);const o=i(e,t,s);return this.addHandles(o,r),(0,n.hA)((()=>this.removeHandles(r)))}_installSyncUpdatingWatch(e,t){const s=this._createSyncUpdatingCallback(),i=(0,o.wB)(e,s,{sync:!0,equals:()=>!1});return this.addHandles(i,t),i}_createSyncUpdatingCallback(){return()=>{this.removeHandles(h),++this._scheduleHandleId;const e=this._scheduleHandleId;this._get("updating")||this._set("updating",!0),this.addHandles((0,a._)((()=>{e===this._scheduleHandleId&&(this._set("updating",this._pendingPromises.size>0),this.removeHandles(h))})),h)}}};(0,i._)([(0,l.MZ)({readOnly:!0})],c.prototype,"updating",void 0),c=(0,i._)([(0,u.$)("esri.core.support.UpdatingHandles")],c);const h=-42},13069:(e,t,s)=>{s.d(t,{AG:()=>a,lk:()=>r,vD:()=>o,yS:()=>n});const i="randomUUID"in crypto;function r(){if(i)return crypto.randomUUID();const e=crypto.getRandomValues(new Uint16Array(8));e[3]=4095&e[3]|16384,e[4]=16383&e[4]|32768;const t=t=>e[t].toString(16).padStart(4,"0");return t(0)+t(1)+"-"+t(2)+"-"+t(3)+"-"+t(4)+"-"+t(5)+t(6)+t(7)}function n(){return`{${r().toUpperCase()}}`}function o(){return`{${r()}}`}function a(e){const t=e.toUpperCase();return"{"!==e[0]?`{${t}}`:t}},91806:(e,t,s)=>{s.d(t,{A:()=>c});var i,r=s(90237),n=s(25482),o=s(10107),a=s(56507),l=(s(44208),s(87811),s(40608));let u=i=class extends n.A{constructor(e){super(e),this.cols=null,this.level=0,this.levelValue=null,this.origin=null,this.resolution=0,this.rows=null,this.scale=0}clone(){return new i({cols:this.cols,level:this.level,levelValue:this.levelValue,resolution:this.resolution,rows:this.rows,scale:this.scale})}};(0,r._)([(0,o.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],u.prototype,"cols",void 0),(0,r._)([(0,o.MZ)({type:a.jz,json:{write:!0}})],u.prototype,"level",void 0),(0,r._)([(0,o.MZ)({type:String,json:{write:!0}})],u.prototype,"levelValue",void 0),(0,r._)([(0,o.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],u.prototype,"origin",void 0),(0,r._)([(0,o.MZ)({type:Number,json:{write:!0}})],u.prototype,"resolution",void 0),(0,r._)([(0,o.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],u.prototype,"rows",void 0),(0,r._)([(0,o.MZ)({type:Number,json:{write:!0}})],u.prototype,"scale",void 0),u=i=(0,r._)([(0,l.$)("esri.layers.support.LOD")],u);const c=u},87045:(e,t,s)=>{s.d(t,{A:()=>E});var i,r=s(90237),n=s(66552),o=s(25482),a=s(83047),l=s(10107),u=s(56507),c=(s(44208),s(87811),s(36005)),h=s(40608),d=s(43937),p=s(86738),f=s(16930),g=s(19419),_=s(21325),y=s(28735),m=s(91806),T=s(72802);const w=new n.J({PNG:"png",PNG8:"png8",PNG24:"png24",PNG32:"png32",JPEG:"jpg",JPG:"jpg",DIB:"dib",TIFF:"tiff",EMF:"emf",PS:"ps",PDF:"pdf",GIF:"gif",SVG:"svg",SVGZ:"svgz",Mixed:"mixed",MIXED:"mixed",LERC:"lerc",LERC2D:"lerc2d",RAW:"raw",pbf:"pbf"});let v=i=class extends o.A{static create(e={}){const{resolutionFactor:t=1,scales:s,size:r=256,spatialReference:n=f.A.WebMercator,numLODs:o=24}=e;if(!(0,_.fn)(n)){const e=[];if(s)for(let t=0;t<s.length;t++){const i=s[t];e.push(new m.A({level:t,scale:i,resolution:i}))}else{let t=5e-4;for(let s=o-1;s>=0;s--)e.unshift(new m.A({level:s,scale:t,resolution:t})),t*=2}return new i({dpi:96,lods:e,origin:new p.A(0,0,n),size:[r,r],spatialReference:n})}const l=(0,_.Vp)(n),u=e.origin?new p.A({x:e.origin.x,y:e.origin.y,spatialReference:n}):new p.A(l?{x:l.origin[0],y:l.origin[1],spatialReference:n}:{x:0,y:0,spatialReference:n}),c=1/(39.37*(0,a.GA)(n)*96),h=[];if(s)for(let e=0;e<s.length;e++){const t=s[e],i=t*c;h.push(new m.A({level:e,scale:t,resolution:i}))}else{let e=(0,_.EA)(n)?512/r*591657527.5917094:256/r*591657527.591555;const s=Math.ceil(o/t);h.push(new m.A({level:0,scale:e,resolution:e*c}));for(let i=1;i<s;i++){const s=e/2**t,r=s*c;h.push(new m.A({level:i,scale:s,resolution:r})),e=s}}return new i({dpi:96,lods:h,origin:u,size:[r,r],spatialReference:n})}constructor(e){super(e),this.dpi=96,this.format=null,this.origin=null,this.size=null,this.spatialReference=null}get isWrappable(){const{spatialReference:e,origin:t}=this;if(e&&t){const s=(0,_.Vp)(e);return e.isWrappable&&!!s&&Math.abs(s.origin[0]-t.x)<=s.dx}return!1}readOrigin(e,t){return p.A.fromJSON({spatialReference:t.spatialReference,...e})}set lods(e){let t=0,s=0;const i=[],r=this._levelToLOD={};e&&(t=-1/0,s=1/0,e.forEach((e=>{i.push(e.scale),t=e.scale>t?e.scale:t,s=e.scale<s?e.scale:s,r[e.level]=e}))),this._set("scales",i),this._set("lods",e),this._initializeUpsampleLevels()}readSize(e,t){return[t.cols,t.rows]}writeSize(e,t){t.cols=e[0],t.rows=e[1]}zoomToScale(e){const t=this.scales;if(e<=0)return t[0];if(e>=t.length-1)return t[t.length-1];const s=Math.floor(e),i=s+1;return t[s]/(t[s]/t[i])**(e-s)}scaleToZoom(e){const t=this.scales,s=t.length-1;let i=0;for(;i<s;i++){const s=t[i],r=t[i+1];if(s<=e)return i;if(r===e)return i+1;if(s>e&&r<e)return i+Math.log(s/e)/Math.log(s/r)}return i}tileAt(e,t,s,i){const r=this.lodAt(e);if(!r)return null;let n,o;if("number"==typeof t)n=t,o=s;else if((0,_.aI)(t.spatialReference,this.spatialReference))n=t.x,o=t.y,i=s;else{const e=(0,y.Cv)(t,this.spatialReference);if(null==e)return null;n=e.x,o=e.y,i=s}const a=r.resolution*this.size[0],l=r.resolution*this.size[1];return i||(i=new T.U(null,0,0,0,(0,g.vt)())),i.level=e,i.row=Math.floor((this.origin.y-o)/l+.001),i.col=Math.floor((n-this.origin.x)/a+.001),this.updateTileInfo(i),i}updateTileInfo(e,t=i.ExtrapolateOptions.NONE){let s=this.lodAt(e.level);if(!s&&t===i.ExtrapolateOptions.POWER_OF_TWO){const t=this.lods[this.lods.length-1];t.level<e.level&&(s=t)}if(!s)return;const r=e.level-s.level,n=s.resolution*this.size[0]/2**r,o=s.resolution*this.size[1]/2**r;e.id=`${e.level}/${e.row}/${e.col}`,e.extent||(e.extent=(0,g.vt)()),e.extent[0]=this.origin.x+e.col*n,e.extent[1]=this.origin.y-(e.row+1)*o,e.extent[2]=e.extent[0]+n,e.extent[3]=e.extent[1]+o}upsampleTile(e){const t=this._upsampleLevels[e.level];return!(!t||-1===t.parentLevel||(e.level=t.parentLevel,e.row=Math.floor(e.row/t.factor+.001),e.col=Math.floor(e.col/t.factor+.001),this.updateTileInfo(e),0))}getTileBounds(e,t){const s=this.lodAt(t.level);if(null==s)return null;const{resolution:i}=s,r=i*this.size[0],n=i*this.size[1];return e[0]=this.origin.x+t.col*r,e[1]=this.origin.y-(t.row+1)*n,e[2]=e[0]+r,e[3]=e[1]+n,e}lodAt(e){return this._levelToLOD?.[e]??null}clone(){return i.fromJSON(this.write({}))}getCompatibleForVTL(e){if(this.size[0]!==this.size[1]||256===this.size[0]&&512===e)return null;const t=(512===this.size[0]&&256===e?-1:0)+(this.spatialReference.isGeographic?1:0);if(this.size[0]===e&&0===t)return this;const s=[],r=this.lods.length-t;for(let e=0;e<r;e++){const i=e+t,{scale:r,resolution:n}=i>=0?this.lods[i]:{scale:2*this.lods[0].scale,resolution:2*this.lods[0].resolution};s.push(new m.A({level:e,scale:r,resolution:n}))}return new i({size:[e,e],dpi:this.dpi,format:this.format,compressionQuality:this.compressionQuality,origin:this.origin,spatialReference:this.spatialReference,lods:s})}_initializeUpsampleLevels(){const e=this.lods;this._upsampleLevels=[];let t=null;for(let s=0;s<e.length;s++){const i=e[s];this._upsampleLevels[i.level]={parentLevel:t?t.level:-1,factor:t?t.resolution/i.resolution:0},t=i}}};var F,b;(0,r._)([(0,l.MZ)({type:Number,json:{write:!0}})],v.prototype,"compressionQuality",void 0),(0,r._)([(0,l.MZ)({type:Number,json:{write:!0}})],v.prototype,"dpi",void 0),(0,r._)([(0,l.MZ)({type:String,json:{read:w.read,write:w.write,origins:{"web-scene":{read:!1,write:!1}}}})],v.prototype,"format",void 0),(0,r._)([(0,l.MZ)({readOnly:!0})],v.prototype,"isWrappable",null),(0,r._)([(0,l.MZ)({type:p.A,json:{write:!0}})],v.prototype,"origin",void 0),(0,r._)([(0,c.w)("origin")],v.prototype,"readOrigin",null),(0,r._)([(0,l.MZ)({type:[m.A],value:null,json:{write:!0}})],v.prototype,"lods",null),(0,r._)([(0,l.MZ)({readOnly:!0})],v.prototype,"scales",void 0),(0,r._)([(0,l.MZ)({cast:e=>Array.isArray(e)?e:"number"==typeof e?[e,e]:[256,256]})],v.prototype,"size",void 0),(0,r._)([(0,c.w)("size",["rows","cols"])],v.prototype,"readSize",null),(0,r._)([(0,d.K)("size",{cols:{type:u.jz},rows:{type:u.jz}})],v.prototype,"writeSize",null),(0,r._)([(0,l.MZ)({type:f.A,json:{write:!0}})],v.prototype,"spatialReference",void 0),v=i=(0,r._)([(0,h.$)("esri.layers.support.TileInfo")],v),F=v||(v={}),(b=F.ExtrapolateOptions||(F.ExtrapolateOptions={}))[b.NONE=0]="NONE",b[b.POWER_OF_TWO=1]="POWER_OF_TWO";const E=v},72802:(e,t,s)=>{s.d(t,{U:()=>i});class i{constructor(e,t,s,i,r=void 0){this.id=e,this.level=t,this.row=s,this.col=i,this.extent=r}}},31756:(e,t,s)=>{s.d(t,{j:()=>n});var i=s(83047),r=s(79258);const n={unknown:1,inches:(0,i.oU)(1,"meters","inches"),feet:(0,i.oU)(1,"meters","feet"),"us-feet":(0,i.oU)(1,"meters","us-feet"),yards:(0,i.oU)(1,"meters","yards"),miles:(0,i.oU)(1,"meters","miles"),"nautical-miles":(0,i.oU)(1,"meters","nautical-miles"),millimeters:(0,i.oU)(1,"meters","millimeters"),centimeters:(0,i.oU)(1,"meters","centimeters"),decimeters:(0,i.oU)(1,"meters","decimeters"),meters:(0,i.oU)(1,"meters","meters"),kilometers:(0,i.oU)(1,"meters","kilometers"),"decimal-degrees":1/(0,i.vl)(1,"meters",r.$O.radius)}},10536:(e,t,s)=>{function i(e){const t={};for(const s in e){if("declaredClass"===s)continue;const r=e[s];if(null!=r&&"function"!=typeof r)if(Array.isArray(r)){t[s]=[];for(let e=0;e<r.length;e++)t[s][e]=i(r[e])}else"object"==typeof r?r.toJSON&&(t[s]=JSON.stringify(r)):t[s]=r}return t}s.d(t,{z:()=>i})},53655:(e,t,s)=>{s.d(t,{SH:()=>C,ae:()=>b,cn:()=>m});var i=s(49186),r=s(51624),n=s(92722),o=s(69418);const a=["esriFieldTypeSmallInteger","esriFieldTypeInteger","esriFieldTypeSingle","esriFieldTypeDouble","esriFieldTypeString","esriFieldTypeDate","esriFieldTypeOID","esriFieldTypeGeometry","esriFieldTypeBlob","esriFieldTypeRaster","esriFieldTypeGUID","esriFieldTypeGlobalID","esriFieldTypeXML","esriFieldTypeBigInteger","esriFieldTypeDateOnly","esriFieldTypeTimeOnly","esriFieldTypeTimestampOffset"],l=["sqlTypeBigInt","sqlTypeBinary","sqlTypeBit","sqlTypeChar","sqlTypeDate","sqlTypeDecimal","sqlTypeDouble","sqlTypeFloat","sqlTypeGeometry","sqlTypeGUID","sqlTypeInteger","sqlTypeLongNVarchar","sqlTypeLongVarbinary","sqlTypeLongVarchar","sqlTypeNChar","sqlTypeNVarchar","sqlTypeOther","sqlTypeReal","sqlTypeSmallInt","sqlTypeSqlXml","sqlTypeTime","sqlTypeTimestamp","sqlTypeTimestamp2","sqlTypeTinyInt","sqlTypeVarbinary","sqlTypeVarchar"],u=["upperLeft","lowerLeft"];function c(e){return e>=a.length?null:a[e]}function h(e){return e>=l.length?null:l[e]}function d(e){return e>=u.length?null:u[e]}function p(e,t){return t>=e.geometryTypes.length?null:e.geometryTypes[t]}function f(e,t,s){const i=e.asUnsafe(),r=t.createPointGeometry(s);for(;i.next();)switch(i.tag()){case 3:{const e=i.getUInt32(),s=i.pos()+e;let n=0;for(;i.pos()<s;)t.addCoordinatePoint(r,i.getSInt64(),n++);break}default:i.skip()}return r}function g(e,t,s){const i=e.asUnsafe(),r=t.createGeometry(s),n=2+(s.hasZ?1:0)+(s.hasM?1:0);for(;i.next();)switch(i.tag()){case 2:{const e=i.getUInt32(),s=i.pos()+e;let n=0;for(;i.pos()<s;)t.addLength(r,i.getUInt32(),n++);break}case 3:{const e=i.getUInt32(),s=i.pos()+e;let o=0;for(t.allocateCoordinates(r);i.pos()<s;)t.addCoordinate(r,i.getSInt64(),o),o++,o===n&&(o=0);break}default:i.skip()}return r}function _(e){const t=e.asUnsafe(),s=new n.A;let i="esriGeometryPoint";for(;t.next();)switch(t.tag()){case 2:{const e=t.getUInt32(),i=t.pos()+e;for(;t.pos()<i;)s.lengths.push(t.getUInt32());break}case 3:{const e=t.getUInt32(),i=t.pos()+e;for(;t.pos()<i;)s.coords.push(t.getSInt64());break}case 1:i=o.z[t.getEnum()];break;default:t.skip()}return{queryGeometry:s,queryGeometryType:i}}function y(e){const t=e.asUnsafe();for(;t.next();)switch(t.tag()){case 1:return t.getString();case 2:return t.getFloat();case 3:return t.getDouble();case 4:return t.getSInt32();case 5:return t.getUInt32();case 6:return t.getInt64();case 7:return t.getUInt64();case 8:return t.getSInt64();case 9:return t.getBool();default:return t.skip(),null}return null}function m(e){const t=e.asUnsafe(),s={type:c(0)};for(;t.next();)switch(t.tag()){case 1:s.name=t.getString();break;case 2:s.type=c(t.getEnum());break;case 3:s.alias=t.getString();break;case 4:s.sqlType=h(t.getEnum());break;case 5:default:t.skip();break;case 6:s.defaultValue=t.getString()}return s}function T(e){const t={},s=e.asUnsafe();for(;s.next();)switch(s.tag()){case 1:t.name=s.getString();break;case 2:t.isSystemMaintained=s.getBool();break;default:s.skip()}return t}function w(e,t,s,i){const r=t.createFeature(s);let n=0;for(;e.next();)switch(e.tag()){case 1:{const t=i[n++].name;r.attributes[t]=e.processMessage(y);break}case 2:r.geometry=e.processMessageWithArgs(g,t,s);break;case 4:r.centroid=e.processMessageWithArgs(f,t,s);break;default:e.skip()}return r}function v(e){const t=[1,1,1,1],s=e.asUnsafe();for(;s.next();)switch(s.tag()){case 1:t[0]=s.getDouble();break;case 2:t[1]=s.getDouble();break;case 4:t[2]=s.getDouble();break;case 3:t[3]=s.getDouble();break;default:s.skip()}return t}function F(e){const t=[0,0,0,0],s=e.asUnsafe();for(;s.next();)switch(s.tag()){case 1:t[0]=s.getDouble();break;case 2:t[1]=s.getDouble();break;case 4:t[2]=s.getDouble();break;case 3:t[3]=s.getDouble();break;default:s.skip()}return t}function b(e){const t={originPosition:d(0)},s=e.asUnsafe();for(;s.next();)switch(s.tag()){case 1:t.originPosition=d(s.getEnum());break;case 2:t.scale=s.processMessage(v);break;case 3:t.translate=s.processMessage(F);break;default:s.skip()}return t}function E(e){const t={},s=e.asUnsafe();for(;s.next();)switch(s.tag()){case 1:t.shapeAreaFieldName=s.getString();break;case 2:t.shapeLengthFieldName=s.getString();break;case 3:t.units=s.getString();break;default:s.skip()}return t}function S(e,t){const s=t.createSpatialReference();for(;e.next();)switch(e.tag()){case 1:s.wkid=e.getUInt32();break;case 5:s.wkt=e.getString();break;case 2:s.latestWkid=e.getUInt32();break;case 3:s.vcsWkid=e.getUInt32();break;case 4:s.latestVcsWkid=e.getUInt32();break;default:e.skip()}return s}function I(e,t){const s=t.createFeatureResult(),i=e.asUnsafe();s.geometryType=p(t,0);let r=!1;for(;i.next();)switch(i.tag()){case 1:s.objectIdFieldName=i.getString();break;case 3:s.globalIdFieldName=i.getString();break;case 4:s.geohashFieldName=i.getString();break;case 5:s.geometryProperties=i.processMessage(E);break;case 7:s.geometryType=p(t,i.getEnum());break;case 8:s.spatialReference=i.processMessageWithArgs(S,t);break;case 10:s.hasZ=i.getBool();break;case 11:s.hasM=i.getBool();break;case 12:s.transform=i.processMessage(b);break;case 9:s.exceededTransferLimit=i.getBool();break;case 13:t.addField(s,i.processMessage(m));break;case 15:r||(t.prepareFeatures(s),r=!0),t.addFeature(s,i.processMessageWithArgs(w,t,s,s.fields));break;case 2:s.uniqueIdField=i.processMessage(T);break;default:i.skip()}return t.finishFeatureResult(s),s}function x(e,t){const s={};let i=null;for(;e.next();)switch(e.tag()){case 4:i=e.processMessageWithArgs(_);break;case 1:s.featureResult=e.processMessageWithArgs(I,t);break;default:e.skip()}return null!=i&&s.featureResult&&t.addQueryGeometry(s,i),s}function C(e,t){try{const s=2,i=new r.A(new Uint8Array(e),new DataView(e)),n={};for(;i.next();)i.tag()===s?n.queryResult=i.processMessageWithArgs(x,t):i.skip();return n}catch(e){throw new i.A("query:parsing-pbf","Error while parsing FeatureSet PBF payload",{error:e})}}},69418:(e,t,s)=>{s.d(t,{S:()=>u,z:()=>l});var i=s(83047),r=s(21325),n=s(43334),o=s(58512),a=s(92722);const l=["esriGeometryPoint","esriGeometryMultipoint","esriGeometryPolyline","esriGeometryPolygon"];class u{constructor(e){this._options=e,this.geometryTypes=l,this._coordinatePtr=0,this._vertexDimension=0}createFeatureResult(){return new o.A}prepareFeatures(e){this._vertexDimension=2,e.hasZ&&this._vertexDimension++,e.hasM&&this._vertexDimension++}finishFeatureResult(e){if(!e?.features||!e.hasZ||!this._options.sourceSpatialReference||!e.spatialReference||(0,r.aI)(e.spatialReference,this._options.sourceSpatialReference)||e.spatialReference.vcsWkid)return;const t=(0,i.G9)(this._options.sourceSpatialReference)/(0,i.G9)(e.spatialReference);if(1!==t)for(const s of e.features){if(!(0,n.N3)(s))continue;const e=s.geometry.coords;for(let s=2;s<e.length;s+=3)e[s]*=t}}addFeature(e,t){e.features.push(t)}createFeature(){return new n.Om(null,{},null,0)}createSpatialReference(){return{wkid:0}}createGeometry(){return new a.A}addField(e,t){e.fields.push(t)}allocateCoordinates(e){e.coords.length=e.lengths.reduce(((e,t)=>e+t),0)*this._vertexDimension,this._coordinatePtr=0}addCoordinate(e,t){e.coords[this._coordinatePtr++]=t}addCoordinatePoint(e,t){e.coords.push(t)}addLength(e,t){e.lengths.push(t)}addQueryGeometry(e,t){e.queryGeometry=t.queryGeometry,e.queryGeometryType=t.queryGeometryType}createPointGeometry(){return new a.A}}},66208:(e,t,s)=>{s.d(t,{m:()=>r});var i=s(53655);function r(e,t){const s=(0,i.SH)(e,t),r=s.queryResult.featureResult,n=s.queryResult.queryGeometry,o=s.queryResult.queryGeometryType;if(r&&r.features&&r.features.length&&r.objectIdFieldName){const e=r.objectIdFieldName;for(const t of r.features)t.attributes&&(t.objectId=t.attributes[e])}return r&&(r.queryGeometry=n,r.queryGeometryType=o),r}},80893:(e,t,s)=>{s.d(t,{IJ:()=>f,Jf:()=>m,Pk:()=>_,eW:()=>p,gW:()=>y,kS:()=>g});var i=s(78888),r=s(84952),n=s(65864),o=s(17136),a=s(21325),l=s(10536),u=s(66208),c=s(58501);const h="Layer does not support extent calculation.";function d(e,t){const s=e.geometry,i=e.toJSON();delete i.compactGeometryEnabled,delete i.defaultSpatialReferenceEnabled;const r=i;let o,l,u;if(null!=s&&(l=s.spatialReference,u=(0,a.YX)(l),r.geometryType=(0,n.$B)(s),r.geometry=function(e,t){if(t&&"extent"===e.type)return`${e.xmin},${e.ymin},${e.xmax},${e.ymax}`;if(t&&"point"===e.type)return`${e.x},${e.y}`;const s=e.toJSON();return delete s.spatialReference,JSON.stringify(s)}(s,e.compactGeometryEnabled),r.inSR=u),i.groupByFieldsForStatistics&&(r.groupByFieldsForStatistics=i.groupByFieldsForStatistics.join(",")),i.objectIds&&(r.objectIds=i.objectIds.join(",")),i.orderByFields&&(r.orderByFields=i.orderByFields.join(",")),!i.outFields||!i.returnDistinctValues&&(t?.returnCountOnly||t?.returnExtentOnly||t?.returnIdsOnly)?delete r.outFields:i.outFields.includes("*")?r.outFields="*":r.outFields=i.outFields.join(","),i.outSR?(r.outSR=(0,a.YX)(i.outSR),o=e.outSpatialReference):s&&(i.returnGeometry||i.returnCentroid)&&(r.outSR=r.inSR,o=l),i.returnGeometry&&delete i.returnGeometry,i.outStatistics&&(r.outStatistics=JSON.stringify(i.outStatistics)),i.fullText&&(r.fullText=JSON.stringify(i.fullText)),i.pixelSize&&(r.pixelSize=JSON.stringify(i.pixelSize)),i.quantizationParameters&&(e.defaultSpatialReferenceEnabled&&null!=l&&null!=e.quantizationParameters?.extent&&l.equals(e.quantizationParameters.extent.spatialReference)&&delete i.quantizationParameters.extent.spatialReference,r.quantizationParameters=JSON.stringify(i.quantizationParameters)),i.parameterValues&&(r.parameterValues=JSON.stringify(i.parameterValues)),i.rangeValues&&(r.rangeValues=JSON.stringify(i.rangeValues)),i.dynamicDataSource&&(r.layer=JSON.stringify({source:i.dynamicDataSource}),delete i.dynamicDataSource),i.timeExtent){const e=i.timeExtent,{start:t,end:s}=e;null==t&&null==s||(r.time=t===s?t:`${t??"null"},${s??"null"}`),delete i.timeExtent}return e.defaultSpatialReferenceEnabled&&null!=l&&null!=o&&l.equals(o)&&(r.defaultSR=r.inSR,delete r.inSR,delete r.outSR),r}async function p(e,t,s,i){const r=null!=t.timeExtent&&t.timeExtent.isEmpty?{data:{features:[]}}:await T(e,t,"json",i);return(0,c.q)(t,s,r.data),r}async function f(e,t,s,i){if(null!=t.timeExtent&&t.timeExtent.isEmpty)return{data:s.createFeatureResult()};const r=await g(e,t,i),n=r;return n.data=(0,u.m)(r.data,s),n}function g(e,t,s){return T(e,t,"pbf",s)}function _(e,t,s){return null!=t.timeExtent&&t.timeExtent.isEmpty?Promise.resolve({data:{objectIds:[]}}):T(e,t,"json",s,{returnIdsOnly:!0})}function y(e,t,s){return null!=t.timeExtent&&t.timeExtent.isEmpty?Promise.resolve({data:{count:0}}):T(e,t,"json",s,{returnIdsOnly:!0,returnCountOnly:!0})}async function m(e,t,s){if(null!=t.timeExtent&&t.timeExtent.isEmpty)return{data:{count:0,extent:null}};const i=await T(e,t,"json",s,{returnExtentOnly:!0,returnCountOnly:!0}),r=i.data;if(r.hasOwnProperty("extent"))return i;if(r.features)throw new Error(h);if(r.hasOwnProperty("count"))throw new Error(h);return i}async function T(e,t,s,n={},a={}){const u="string"==typeof e?(0,r.An)(e):e,c=t.geometry?[t.geometry]:[],h=await(0,o.el)(c,null,{signal:n.signal}),p=h?.[0];null!=p&&((t=t.clone()).geometry=p);const f=(0,l.z)({...u.query,f:s,...a,...d(t,a)});return(0,i.A)((0,r.fj)(u.path,(g=a,null==t.formatOf3DObjects||g.returnCountOnly||g.returnExtentOnly||g.returnIdsOnly?"query":"query3d")),{...n,responseType:"pbf"===s?"array-buffer":"json",query:{...f,...n.query}});var g}},58501:(e,t,s)=>{s.d(t,{q:()=>r});var i=s(62815);function r(e,t,s){if(!s?.features||!s.hasZ)return;const r=(0,i.N)(s.geometryType,t,e.outSpatialReference);if(null!=r)for(const e of s.features)r(e.geometry)}},88625:(e,t,s)=>{s.d(t,{A:()=>w});var i,r=s(90237),n=s(66552),o=s(25482),a=s(97768),l=s(10107),u=(s(44208),s(53966),s(87811),s(36005)),c=s(40608),h=s(43937),d=s(30524);let p=i=class extends o.A{constructor(e){super(e)}async collectRequiredFields(e,t){return(0,d.Dx)(e,t,this.expression)}clone(){return new i({expression:this.expression,title:this.title})}equals(e){return this.expression===e.expression&&this.title===e.title}};(0,r._)([(0,l.MZ)({type:String,json:{write:{isRequired:!0}}})],p.prototype,"expression",void 0),(0,r._)([(0,l.MZ)({type:String,json:{write:!0}})],p.prototype,"title",void 0),p=i=(0,r._)([(0,c.$)("esri.symbols.support.FeatureExpressionInfo")],p);const f=p;var g,_=s(16271);const y=(0,n.O)()({onTheGround:"on-the-ground",relativeToGround:"relative-to-ground",relativeToScene:"relative-to-scene",absoluteHeight:"absolute-height"}),m=new n.J({foot:"feet",kilometer:"kilometers",meter:"meters",mile:"miles","us-foot":"us-feet",yard:"yards"});let T=g=class extends o.A{constructor(e){super(e),this.featureExpressionInfo=void 0,this.offset=null}readFeatureExpressionInfo(e,t){return null!=e?e:t.featureExpression&&0===t.featureExpression.value?{expression:"0"}:void 0}writeFeatureExpressionInfo(e,t,s,i){t[s]=e.write({},i),"0"===e.expression&&(t.featureExpression={value:0})}get mode(){const{offset:e,featureExpressionInfo:t}=this;return this._isOverridden("mode")?this._get("mode"):null!=e||t?"relative-to-ground":"on-the-ground"}set mode(e){this._override("mode",e)}set unit(e){this._set("unit",e)}write(e,t){return this.offset||this.mode||this.featureExpressionInfo||this.unit?super.write(e,t):null}clone(){return new g({mode:this.mode,offset:this.offset,featureExpressionInfo:this.featureExpressionInfo?this.featureExpressionInfo.clone():void 0,unit:this.unit})}equals(e){return this.mode===e.mode&&this.offset===e.offset&&this.unit===e.unit&&(0,a.CM)(this.featureExpressionInfo,e.featureExpressionInfo)}};(0,r._)([(0,l.MZ)({type:f,json:{write:!0}})],T.prototype,"featureExpressionInfo",void 0),(0,r._)([(0,u.w)("featureExpressionInfo",["featureExpressionInfo","featureExpression"])],T.prototype,"readFeatureExpressionInfo",null),(0,r._)([(0,h.K)("featureExpressionInfo",{featureExpressionInfo:{type:f},"featureExpression.value":{type:[0]}})],T.prototype,"writeFeatureExpressionInfo",null),(0,r._)([(0,l.MZ)({type:y.apiValues,nonNullable:!0,json:{type:y.jsonValues,read:y.read,write:{writer:y.write,isRequired:!0}}})],T.prototype,"mode",null),(0,r._)([(0,l.MZ)({type:Number,json:{write:!0}})],T.prototype,"offset",void 0),(0,r._)([(0,l.MZ)({type:_.KQ,json:{type:String,read:m.read,write:m.write}})],T.prototype,"unit",null),T=g=(0,r._)([(0,c.$)("esri.symbols.support.ElevationInfo")],T);const w=T},16271:(e,t,s)=>{s.d(t,{Ao:()=>n,KQ:()=>o});var i=s(4576),r=s(31756);function n(e){return 1/(r.j[e]||1)}const o=function(){const e=Object.keys(r.j);return(0,i.TF)(e,"decimal-degrees"),e.sort(),e}()},12543:(e,t,s)=>{s.r(t),s.d(t,{default:()=>ve});var i=s(90237),r=s(65529),n=s(74887),o=s(36708),a=s(10107),l=(s(44208),s(53966)),u=(s(87811),s(40608)),c=s(79897),h=s(16930),d=s(65864),p=s(58376),f=s(83221),g=s(19730),_=s(87045),y=s(61956),m=s(88625),T=s(66344),w=s(91869),v=s(83047),F=s(16271);function b(e=!1,t){if(e){const{elevationInfo:e,alignPointsInFeatures:s}=t;return new S(e,s)}return new E}class E{async alignCandidates(e,t,s){return e}notifyElevationSourceChange(){}}class S{constructor(e,t){this._elevationInfo=e,this._alignPointsInFeatures=t,this._alignmentsCache=new T.q(1024),this._cacheVersion=0}async alignCandidates(e,t,s){const i=this._elevationInfo;return null==i||"absolute-height"!==i.mode||i.featureExpressionInfo?this._alignComputedElevationCandidates(e,t,s):(function(e,t,s){const{offset:i,unit:r}=s;if(null==i)return;const n=(0,v.G9)(t),o=i*((0,F.Ao)(r??"meters")/n);for(const t of e)switch(t.type){case"edge":t.start.z+=o,t.end.z+=o;continue;case"vertex":t.target.z+=o;continue}}(e,t,i),e)}notifyElevationSourceChange(){this._alignmentsCache.clear(),this._cacheVersion++}async _alignComputedElevationCandidates(e,t,s){const i=new Map;for(const t of e)(0,w.tE)(i,t.objectId,C).push(t);const[r,o,a]=this._prepareQuery(i,t),l=await this._alignPointsInFeatures(r,s);if((0,n.Te)(s),a!==this._cacheVersion)return this._alignComputedElevationCandidates(e,t,s);this._applyCacheAndResponse(r,l,o);const{drapedObjectIds:u,failedObjectIds:c}=l,h=[];for(const t of e){const{objectId:e}=t;u.has(e)&&"edge"===t.type&&(t.draped=!0),c.has(e)||h.push(t)}return h}_prepareQuery(e,t){const s=[],i=[];for(const[t,r]of e){const e=[];for(const s of r)this._addToQueriesOrCachedResult(t,s.target,e,i),"edge"===s.type&&(this._addToQueriesOrCachedResult(t,s.start,e,i),this._addToQueriesOrCachedResult(t,s.end,e,i));0!==e.length&&s.push({objectId:t,points:e})}return[{spatialReference:t.toJSON(),pointsInFeatures:s},i,this._cacheVersion]}_addToQueriesOrCachedResult(e,t,s,i){const r=x(e,t),n=this._alignmentsCache.get(r);null==n?s.push(t):i.push(new I(t,n))}_applyCacheAndResponse(e,{elevations:t,drapedObjectIds:s,failedObjectIds:i},r){for(const e of r)e.apply();let n=0;const o=this._alignmentsCache;for(const{objectId:r,points:a}of e.pointsInFeatures){if(i.has(r)){n+=a.length;continue}const e=!s.has(r);for(const s of a){const i=x(r,s),a=t[n++];s.z=a,e&&o.put(i,a,1)}}}}class I{constructor(e,t){this.point=e,this.z=t}apply(){this.point.z=this.z}}function x(e,{x:t,y:s,z:i,spatialReference:r}){return`${e}-${t}-${s}-${i??0}}-wkid:${r?.wkid}`}function C(){return[]}class O{filter(e,t){return t}notifyElevationSourceChange(){}}class A{filter(e,t){const{point:s,distance:i}=e,{z:r}=s;if(null==r)return t;if(0===t.length)return t;const n=function(e){return"number"==typeof e?{x:e,y:e,z:e}:e}(i),o=this._updateCandidatesTo3D(t,s,n).filter(R);return o.sort(P),o}_updateCandidatesTo3D(e,t,s){for(const i of e)switch(i.type){case"edge":k(i,t,s);continue;case"vertex":U(i,t,s);continue}return e}}function R(e){return e.distance<=1}function M(e=!1){return e?new A:new O}function k(e,t,{x:s,y:i,z:r}){const{start:n,end:o,target:a}=e;e.draped||function(e,t,s,i){const r=i.x-s.x,n=i.y-s.y,o=i.z-s.z,a=r*r+n*n+o*o,l=(t.x-s.x)*r+(t.y-s.y)*n+o*(t.z-s.z),u=Math.min(1,Math.max(0,l/a)),c=s.x+r*u,h=s.y+n*u,d=s.z+o*u;e.x=c,e.y=h,e.z=d}(a,t,n,o);const l=(t.x-a.x)/s,u=(t.y-a.y)/i,c=(t.z-a.z)/r;e.distance=Math.sqrt(l*l+u*u+c*c)}function U(e,t,{x:s,y:i,z:r}){const{target:n}=e,o=(t.x-n.x)/s,a=(t.y-n.y)/i,l=(t.z-n.z)/r,u=Math.sqrt(o*o+a*a+l*l);e.distance=u}function P(e,t){return e.distance-t.distance}var z=s(4718),D=s(799);function q(e=!1,t){return e?new H(t):new N}class N{async fetch(){return[]}notifySymbologyChange(){}}class H{constructor(e){this._getSymbologyCandidates=e,this._candidatesCache=new T.q(1024),this._cacheVersion=0}async fetch(e,t){if(0===e.length)return[];const s=[],i=[],r=this._candidatesCache;for(const t of e){const e=j(t),n=r.get(e);if(n)for(const e of n)i.push((0,z.o8)(e));else s.push(t),r.put(e,[],1)}if(0===s.length)return i;const o=this._cacheVersion,{candidates:a,sourceCandidateIndices:l}=await this._getSymbologyCandidates(s,t);if((0,n.Te)(t),o!==this._cacheVersion)return this.fetch(e,t);const u=[],{length:c}=a;for(let e=0;e<c;++e){const t=a[e],i=j(s[l[e]]),n=r.get(i);n.push(t),r.put(i,n,n.length),u.push((0,z.o8)(t))}return i.concat(u)}notifySymbologyChange(){this._candidatesCache.clear(),this._cacheVersion++}}function j(e){switch(e.type){case"vertex":{const{objectId:t,target:s}=e,i=`${t}-vertex-${s.x}-${s.y}-${s.z??0}`;return(0,D.Wm)(i).toString()}case"edge":{const{objectId:t,start:s,end:i}=e,r=`${t}-edge-${s.x}-${s.y}-${s.z??0}-to-${i.x}-${i.y}-${i.z??0}`;return(0,D.Wm)(r).toString()}default:return""}}var V,G=s(69622),Z=s(4576),B=s(60999),L=s(3483),W=s(13069),$=s(5443),J=s(19419),Q=s(90708),Y=s(60694),K=s(69418),X=s(80893);class ee{constructor(e,t){this.data=e,this.resolution=t,this.state={type:V.CREATED},this.alive=!0}process(e){switch(this.state.type){case V.CREATED:return this.state=this._gotoFetchCount(this.state,e),this.state.task.promise.then(e.resume,e.resume);case V.FETCH_COUNT:break;case V.FETCHED_COUNT:return this.state=this._gotoFetchFeatures(this.state,e),this.state.task.promise.then(e.resume,e.resume);case V.FETCH_FEATURES:break;case V.FETCHED_FEATURES:this.state=this._goToDone(this.state,e);case V.DONE:}return null}get debugInfo(){return{data:this.data,featureCount:this._featureCount,state:this._stateToString}}get _featureCount(){switch(this.state.type){case V.CREATED:case V.FETCH_COUNT:return 0;case V.FETCHED_COUNT:return this.state.featureCount;case V.FETCH_FEATURES:return this.state.previous.featureCount;case V.FETCHED_FEATURES:return this.state.features.length;case V.DONE:return this.state.previous.features.length}}get _stateToString(){switch(this.state.type){case V.CREATED:return"created";case V.FETCH_COUNT:return"fetch-count";case V.FETCHED_COUNT:return"fetched-count";case V.FETCH_FEATURES:return"fetch-features";case V.FETCHED_FEATURES:return"fetched-features";case V.DONE:return"done"}}_gotoFetchCount(e,t){return{type:V.FETCH_COUNT,previous:e,task:(0,B.UT)((async e=>{const s=await(0,B.DZ)(t.fetchCount(this,e));this.state.type===V.FETCH_COUNT&&(this.state=function(e,t){return{type:V.FETCHED_COUNT,featureCount:t,previous:e}}(this.state,s.ok?s.value:1/0))}))}}_gotoFetchFeatures(e,t){return{type:V.FETCH_FEATURES,previous:e,task:(0,B.UT)((async s=>{const i=await(0,B.DZ)(t.fetchFeatures(this,e.featureCount,s));this.state.type===V.FETCH_FEATURES&&(this.state=function(e,t){return{type:V.FETCHED_FEATURES,previous:e,features:t}}(this.state,i.ok?i.value:[]))}))}}_goToDone(e,t){return t.finish(this,e.features),{type:V.DONE,previous:e}}reset(){const e=this.state;switch(this.state={type:V.CREATED},e.type){case V.CREATED:case V.FETCHED_COUNT:case V.FETCHED_FEATURES:case V.DONE:break;case V.FETCH_COUNT:case V.FETCH_FEATURES:e.task.abort()}}intersects(e){return null==e||!this.data.extent||((0,J.VY)(e,te),(0,J.HY)(this.data.extent,te))}}!function(e){e[e.CREATED=0]="CREATED",e[e.FETCH_COUNT=1]="FETCH_COUNT",e[e.FETCHED_COUNT=2]="FETCHED_COUNT",e[e.FETCH_FEATURES=3]="FETCH_FEATURES",e[e.FETCHED_FEATURES=4]="FETCHED_FEATURES",e[e.DONE=5]="DONE"}(V||(V={}));const te=(0,J.vt)();let se=class extends G.A{get _minimumVerticesPerFeature(){switch(this.store?.featureStore.geometryType){case"esriGeometryPoint":case"esriGeometryMultipoint":return 1;case"esriGeometryPolygon":return 4;case"esriGeometryPolyline":return 2}}get _mandatoryOutFields(){const e=new Set;return this.objectIdField&&e.add(this.objectIdField),this.globalIdField&&e.add(this.globalIdField),e}set outFields(e){const t=this._get("outFields"),s=(0,L.KC)(e,this._mandatoryOutFields);(0,L.aI)(s,t)||(this._set("outFields",s),(0,L.Yy)(s,t)||this.refresh())}get outFields(){return this._get("outFields")??this._mandatoryOutFields}set filter(e){const t=this._get("filter"),s=this._filterProperties(e);JSON.stringify(t)!==JSON.stringify(s)&&this._set("filter",s)}set customParameters(e){const t=this._get("customParameters");JSON.stringify(t)!==JSON.stringify(e)&&this._set("customParameters",e)}get _configuration(){return{filter:this.filter,customParameters:this.customParameters,tileInfo:this.tileInfo,tileSize:this.tileSize}}set tileInfo(e){const t=this._get("tileInfo");t!==e&&(null!=e&&null!=t&&JSON.stringify(e)===JSON.stringify(t)||(this._set("tileInfo",e),this.store.tileInfo=e))}set tileSize(e){this._get("tileSize")!==e&&this._set("tileSize",e)}get updating(){return this._updatingHandles.updating}get hasZ(){return this.store.featureStore.hasZ}constructor(e){super(e),this.suspended=!0,this._historicMoment=null,this.tilesOfInterest=[],this.availability=0,this._pendingTiles=new Map,this._updatingHandles=new c.U}initialize(){this._initializeFetchExtent(),this._updatingHandles.add((()=>this._configuration),(()=>this.refresh())),this._updatingHandles.add((()=>this.tilesOfInterest),((e,t)=>{(0,Z.aI)(e,t,(({id:e},{id:t})=>e===t))||this._process()}),o.OH),this.addHandles((0,o.z7)((()=>!this.suspended),(()=>this._process())))}destroy(){this._pendingTiles.forEach((e=>this._deletePendingTile(e))),this._pendingTiles.clear(),this.store.destroy(),this.tilesOfInterest.length=0,this._updatingHandles.destroy()}refresh(){this.store.refresh(),this._pendingTiles.forEach((e=>this._deletePendingTile(e))),this._process()}async handleEdits(e){if(e.historicMoment&&(this._historicMoment=e.historicMoment),!e.addedFeatures.length&&!e.updatedFeatures.length&&!e.deletedFeatures.length)return;for(const e of this._pendingTiles.values())e.reset();const t={...e,deletedFeatures:e.deletedFeatures.map((({objectId:e,globalId:t})=>e&&-1!==e?e:this._lookupObjectIdByGlobalId(t)))},s=(0,B.UT)((async e=>{try{await this.store.processEdits(t,((e,t)=>this._queryFeaturesById(e,t)),e),this._processPendingTiles()}catch(e){(0,n.QP)(e),l.A.getLogger(this).warn("Failed to apply edits",e)}}));this.addHandles(s),await this._updatingHandles.addPromise(s.promise)}setHistoricMoment(e){e?.getTime()!==this._historicMoment?.getTime()&&(this._historicMoment=e,this.refresh())}_initializeFetchExtent(){if(!this.capabilities.query.supportsExtent||!(0,Y.Wo)(this.url))return;const e=(0,B.UT)((async e=>{try{const t=await(0,X.Jf)(this.url,new y.A({where:"1=1",outSpatialReference:this.spatialReference,cacheHint:this.capabilities.query.supportsCacheHint??void 0}),{query:this._configuration.customParameters,signal:e});this.store.extent=$.A.fromJSON(t.data?.extent)}catch(e){(0,n.QP)(e),l.A.getLogger(this).warn("Failed to fetch data extent",e)}}));this._updatingHandles.addPromise(e.promise.then((()=>this._process()))),this.addHandles(e)}get debugInfo(){return{numberOfFeatures:this.store.featureStore.numFeatures,tilesOfInterest:this.tilesOfInterest,pendingTiles:Array.from(this._pendingTiles.values()).map((e=>e.debugInfo)),storedTiles:this.store.debugInfo}}_process(){this._markTilesNotAlive(),this._createPendingTiles(),this._deletePendingTiles(),this._processPendingTiles()}_markTilesNotAlive(){for(const e of this._pendingTiles.values())e.alive=!1}_createPendingTiles(){if(this.suspended)return;const e=this._collectMissingTilesInfo();if(this._setAvailability(null==e?1:e.coveredArea/e.fullArea),null!=e)for(const{data:t,resolution:s}of e.missingTiles){const e=this._pendingTiles.get(t.id);e?(e.resolution=s,e.alive=!0):this._createPendingTile(t,s)}}_collectMissingTilesInfo(){let e=null;for(let t=this.tilesOfInterest.length-1;t>=0;t--){const s=this.tilesOfInterest[t],i=this.store.process(s,((e,t)=>this._verifyTileComplexity(e,t)),this.outFields);null==e?e=i:e.prepend(i)}return e}_deletePendingTiles(){for(const e of this._pendingTiles.values())e.alive||this._deletePendingTile(e)}_processPendingTiles(){const e={fetchCount:(e,t)=>this._fetchCount(e,t),fetchFeatures:(e,t,s)=>this._fetchFeatures(e,t,s),finish:(e,t)=>this._finishPendingTile(e,t),resume:()=>this._processPendingTiles()};if(this._ensureFetchAllCounts(e))for(const t of this._pendingTiles.values())this._verifyTileComplexity(this.store.getFeatureCount(t.data),t.resolution)&&this._updatingHandles.addPromise(t.process(e))}_verifyTileComplexity(e,t){return this._verifyVertexComplexity(e)&&this._verifyFeatureDensity(e,t)}_verifyVertexComplexity(e){return e*this._minimumVerticesPerFeature<ne}_verifyFeatureDensity(e,t){if(null==this.tileInfo)return!1;const s=this.tileSize*t;return e*(oe/(s*s))<ae}_ensureFetchAllCounts(e){let t=!0;for(const s of this._pendingTiles.values())s.state.type<V.FETCHED_COUNT&&this._updatingHandles.addPromise(s.process(e)),s.state.type<=V.FETCH_COUNT&&(t=!1);return t}_finishPendingTile(e,t){this.store.add(e.data,t),this._deletePendingTile(e),this._updateAvailability()}_updateAvailability(){const e=this._collectMissingTilesInfo();this._setAvailability(null==e?1:e.coveredArea/e.fullArea)}_setAvailability(e){this._set("availability",e)}_createPendingTile(e,t){const s=new ee(e,t);return this._pendingTiles.set(e.id,s),s}_deletePendingTile(e){e.reset(),this._pendingTiles.delete(e.data.id)}async _fetchCount(e,t){return this.store.fetchCount(e.data,this.url,this._createCountQuery(e),{query:this.customParameters,timeout:re,signal:t})}async _fetchFeatures(e,t,s){let i=0;const r=[];let n=0,o=t;for(;;){const a=this._createFeaturesQuery(e),l=this._setPagingParameters(a,i,o),{features:u,exceededTransferLimit:c}=await this._queryFeatures(a,s);l&&(i+=a.num),n+=u.length;for(const e of u)r.push(e);if(o=t-n,!l||!c||o<=0)return r}}_filterProperties(e){return null==e?{where:"1=1",gdbVersion:void 0,timeExtent:void 0}:{where:e.where||"1=1",timeExtent:e.timeExtent,gdbVersion:e.gdbVersion}}_lookupObjectIdByGlobalId(e){const t=this.globalIdField,s=this.objectIdField;if(null==t)throw new Error("Expected globalIdField to be defined");let i=null;const r=e?(0,W.AG)(e):e;if(this.store.featureStore.forEach((e=>{r===(0,W.AG)(e.attributes[t])&&(i=e.objectId??e.attributes[s])})),null==i)throw new Error(`Expected to find a feature with globalId ${e}`);return i}_queryFeaturesById(e,t){const s=this._createFeaturesQuery();return s.objectIds=e,this._queryFeatures(s,t)}_queryFeatures(e,t){return this.capabilities.query.supportsFormatPBF?this._queryFeaturesPBF(e,t):this._queryFeaturesJSON(e,t)}async _queryFeaturesPBF(e,t){const{sourceSpatialReference:s}=this,{data:i}=await(0,X.IJ)(this.url,e,new K.S({sourceSpatialReference:s}),{query:this._configuration.customParameters,timeout:re,signal:t});return(0,Q.eY)(i)}async _queryFeaturesJSON(e,t){const{sourceSpatialReference:s}=this,{data:i}=await(0,X.eW)(this.url,e,s,{query:this._configuration.customParameters,timeout:re,signal:t});return(0,Q.q3)(i,this.objectIdField)}_createCountQuery(e){const t=this._createBaseQuery(e);return this.capabilities.query.supportsCacheHint&&(t.cacheHint=!0),t}_createFeaturesQuery(e=null){const t=this._createBaseQuery(e),s=null!=e?.data?this.store.getAttributesForTile(e?.data?.id):null,i=(0,L.KC)((0,L.iv)(this.outFields,s??new Set),this._mandatoryOutFields);return t.outFields=Array.from(i),t.returnGeometry=!0,null!=e&&(this.capabilities.query.supportsResultType?t.resultType="tile":this.capabilities.query.supportsCacheHint&&(t.cacheHint=!0)),t}_createBaseQuery(e){const t=new y.A({returnZ:this.hasZ,returnM:!1,historicMoment:this._historicMoment,geometry:null!=this.tileInfo&&null!=e?(0,J.w1)(e.data.extent,this.tileInfo.spatialReference):void 0}),s=this._configuration.filter;return null!=s&&(t.where=s.where,t.gdbVersion=s.gdbVersion,t.timeExtent=s.timeExtent),t.outSpatialReference=this.spatialReference,t}_setPagingParameters(e,t,s){if(!this.capabilities.query.supportsPagination)return!1;const{supportsMaxRecordCountFactor:i,supportsCacheHint:r,tileMaxRecordCount:n,maxRecordCount:o,supportsResultType:a}=this.capabilities.query,l=i?y.A.MAX_MAX_RECORD_COUNT_FACTOR:1,u=l*((a||r)&&n?n:o||ie);return e.start=t,i?(e.maxRecordCountFactor=Math.min(l,Math.ceil(s/u)),e.num=Math.min(s,e.maxRecordCountFactor*u)):e.num=Math.min(s,u),!0}};(0,i._)([(0,a.MZ)({constructOnly:!0})],se.prototype,"url",void 0),(0,i._)([(0,a.MZ)({constructOnly:!0})],se.prototype,"objectIdField",void 0),(0,i._)([(0,a.MZ)({constructOnly:!0})],se.prototype,"globalIdField",void 0),(0,i._)([(0,a.MZ)({constructOnly:!0})],se.prototype,"capabilities",void 0),(0,i._)([(0,a.MZ)({constructOnly:!0})],se.prototype,"sourceSpatialReference",void 0),(0,i._)([(0,a.MZ)({constructOnly:!0})],se.prototype,"spatialReference",void 0),(0,i._)([(0,a.MZ)({constructOnly:!0})],se.prototype,"store",void 0),(0,i._)([(0,a.MZ)({readOnly:!0})],se.prototype,"_minimumVerticesPerFeature",null),(0,i._)([(0,a.MZ)()],se.prototype,"_mandatoryOutFields",null),(0,i._)([(0,a.MZ)()],se.prototype,"outFields",null),(0,i._)([(0,a.MZ)()],se.prototype,"suspended",void 0),(0,i._)([(0,a.MZ)()],se.prototype,"_historicMoment",void 0),(0,i._)([(0,a.MZ)()],se.prototype,"filter",null),(0,i._)([(0,a.MZ)()],se.prototype,"customParameters",null),(0,i._)([(0,a.MZ)({readOnly:!0})],se.prototype,"_configuration",null),(0,i._)([(0,a.MZ)()],se.prototype,"tileInfo",null),(0,i._)([(0,a.MZ)()],se.prototype,"tileSize",null),(0,i._)([(0,a.MZ)()],se.prototype,"tilesOfInterest",void 0),(0,i._)([(0,a.MZ)({readOnly:!0})],se.prototype,"updating",null),(0,i._)([(0,a.MZ)({readOnly:!0})],se.prototype,"availability",void 0),(0,i._)([(0,a.MZ)()],se.prototype,"hasZ",null),se=(0,i._)([(0,u.$)("esri.views.interactive.snapping.featureSources.featureServiceSource.FeatureServiceTiledFetcher")],se);const ie=2e3,re=6e5,ne=1e6,oe=25,ae=1;var le=s(71903),ue=s(69397),ce=s(6518),he=s(72802);class de{constructor(){this._store=new Map,this._byteSize=0}set(e,t){this.delete(e),this._store.set(e,t),this._byteSize+=t.byteSize}delete(e){const t=this._store.get(e);return!!this._store.delete(e)&&(null!=t&&(this._byteSize-=t.byteSize),!0)}get(e){return this._used(e),this._store.get(e)}has(e){return this._used(e),this._store.has(e)}clear(){this._store.clear()}applyByteSizeLimit(e,t){for(const[s,i]of this._store){if(this._byteSize<=e)break;this.delete(s),t(i)}}values(){return this._store.values()}[Symbol.iterator](){return this._store[Symbol.iterator]()}_used(e){const t=this._store.get(e);t&&(this._store.delete(e),this._store.set(e,t))}}let pe=class extends G.A{constructor(e){super(e),this.tileInfo=null,this.extent=null,this.maximumByteSize=10*le.u.MEGABYTES,this._tileBounds=new ce.F,this._tiles=new de,this._refCounts=new Map,this._tileFeatureCounts=new Map,this._tmpBoundingRect=(0,J.vt)()}add(e,t){for(const e of t)this._referenceFeature(e.objectId);const s=this.featureStore.upsertMany(t),i=s.map((e=>new Set(Object.keys(e.attributes)))).reduce(((e,t)=>(0,L.E$)(e,t)),new Set(Object.keys(s[0]?.attributes??[])));this._addTileStorage(e,new Set(s.map((e=>e.objectId))),function(e){return e.reduce(((e,t)=>e+function(e){return 32+function(e){if(null==e)return 0;const t=(0,ue.rq)(e.lengths,4);return 32+(0,ue.rq)(e.coords,8)+t}(e.geometry)+(0,ue.lM)(e.attributes)}(t)),0)}(s),i),this._tiles.applyByteSizeLimit(this.maximumByteSize,(e=>this._removeTileStorage(e)))}getAttributesForTile(e){return e?this._tiles.get(e)?.attributeKeys:null}destroy(){this.clear(),this._tileFeatureCounts.clear()}clear(){this.featureStore.clear(),this._tileBounds.clear(),this._tiles.clear(),this._refCounts.clear()}refresh(){this.clear(),this._tileFeatureCounts.clear()}processEdits(e,t,s){return this._processEditsDelete(e.deletedFeatures.concat(e.updatedFeatures)),this._processEditsRefetch(e.addedFeatures.concat(e.updatedFeatures),t,s)}_addTileStorage(e,t,s,i){const r=e.id;this._tiles.set(r,new fe(e,t,s,i)),this._tileBounds.set(r,e.extent),this._tileFeatureCounts.set(r,t.size)}_remove({id:e}){const t=this._tiles.get(e);t&&this._removeTileStorage(t)}_removeTileStorage(e){const t=[];for(const s of e.objectIds)this._unreferenceFeature(s)===Te.REMOVED&&t.push(s);this.featureStore.removeManyById(t);const s=e.data.id;this._tiles.delete(s),this._tileBounds.delete(s)}_processEditsDelete(e){this.featureStore.removeManyById(e);for(const t of this._tiles.values()){for(const s of e)t.objectIds.delete(s);this._tileFeatureCounts.set(t.data.id,t.objectIds.size)}for(const t of e)this._refCounts.delete(t)}async _processEditsRefetch(e,t,s){if(!e.length)return;const i=(await t(e,s)).features,{hasZ:r,hasM:n}=this.featureStore;for(const e of i){const t=(0,Q.jQ)(this._tmpBoundingRect,e.geometry,r,n);null!=t&&this._tileBounds.forEachInBounds(t,(t=>{const s=this._tiles.get(t);this.featureStore.add(e);const i=e.objectId;s.objectIds.has(i)||(s.objectIds.add(i),this._referenceFeature(i),this._tileFeatureCounts.set(s.data.id,s.objectIds.size))}))}}process(e,t=()=>!0,s){if(null==this.tileInfo||!e.extent||null!=this.extent&&!(0,J.HY)((0,J.VY)(this.extent,this._tmpBoundingRect),e.extent))return new _e(e);const i=this.getAttributesForTile(e.id);if((0,L.Yy)(s,i))return new _e(e);const r=this._createTileTree(e,this.tileInfo);return this._simplify(r,t,null,0,1),this._collectMissingTiles(e,r,this.tileInfo,s)}get debugInfo(){return Array.from(this._tiles.values()).map((({data:e})=>({data:e,featureCount:this._tileFeatureCounts.get(e.id)||0})))}getFeatureCount(e){return this._tileFeatureCounts.get(e.id)??0}async fetchCount(e,t,s,i){const r=this._tileFeatureCounts.get(e.id);if(null!=r)return r;const n=await(0,X.gW)(t,s,i);return this._tileFeatureCounts.set(e.id,n.data.count),n.data.count}_createTileTree(e,t){const s=new ge(e.level,e.row,e.col);return t.updateTileInfo(s,_.A.ExtrapolateOptions.POWER_OF_TWO),this._tileBounds.forEachInBounds(e.extent,(i=>{const r=this._tiles.get(i)?.data;r&&function(e,t){if(!e||!t)return!1;if(e.level===t.level)return e.row===t.row&&e.col===t.col;const s=e.level<t.level,i=s?e:t,r=s?t:e,n=1<<r.level-i.level;return Math.floor(r.row/n)===i.row&&Math.floor(r.col/n)===i.col}(e,r)&&this._populateChildren(s,r,t,this._tileFeatureCounts.get(r.id)||0)})),s}_populateChildren(e,t,s,i){const r=t.level-e.level-1;if(r<0)return void(e.isLeaf=!0);const n=t.row>>r,o=t.col>>r,a=e.row<<1,l=o-(e.col<<1)+(n-a<<1),u=e.children[l];if(null!=u)this._populateChildren(u,t,s,i);else{const r=new ge(e.level+1,n,o);s.updateTileInfo(r,_.A.ExtrapolateOptions.POWER_OF_TWO),e.children[l]=r,this._populateChildren(r,t,s,i)}}_simplify(e,t,s,i,r){const n=r*r;if(e.isLeaf)return t(this.getFeatureCount(e),r)?0:(this._remove(e),null!=s&&(s.children[i]=null),n);const o=r/2,a=o*o;let l=0;for(let s=0;s<e.children.length;s++){const i=e.children[s];l+=null!=i?this._simplify(i,t,e,s,o):a}return 0===l?this._mergeChildren(e):1-l/n<me&&(this._purge(e),null!=s&&(s.children[i]=null),l=n),l}_mergeChildren(e){const t=new Set;let s,i=0;this._forEachLeaf(e,(e=>{const r=this._tiles.get(e.id);if(r){s=s?(0,L.E$)(s,r.attributeKeys):new Set(r.attributeKeys),i+=r.byteSize;for(const e of r.objectIds)t.has(e)||(t.add(e),this._referenceFeature(e));this._remove(e)}})),this._addTileStorage(e,t,i,s??new Set),e.isLeaf=!0,e.children[0]=e.children[1]=e.children[2]=e.children[3]=null,this._tileFeatureCounts.set(e.id,t.size)}_forEachLeaf(e,t){for(const s of e.children)null!=s&&(s.isLeaf?t(s):this._forEachLeaf(s,t))}_purge(e){if(null!=e)if(e.isLeaf)this._remove(e);else for(let t=0;t<e.children.length;t++){const s=e.children[t];this._purge(s),e.children[t]=null}}_collectMissingTiles(e,t,s,i){const r=new ye(s,e,this.extent);return this._collectMissingTilesRecurse(t,r,1,i),r.info}_collectMissingTilesRecurse(e,t,s,i){const r=this.getAttributesForTile(e.id),n=r&&!(0,L.Yy)(i,r);if(n&&t.addMissing(e.level,e.row,e.col,s),e.isLeaf)return;if(!e.hasChildren)return void(n||t.addMissing(e.level,e.row,e.col,s));const o=s/2;for(let s=0;s<e.children.length;s++){const r=e.children[s];null==r?t.addMissing(e.level+1,(e.row<<1)+((2&s)>>1),(e.col<<1)+(1&s),o):this._collectMissingTilesRecurse(r,t,o,i)}}_referenceFeature(e){const t=(this._refCounts.get(e)||0)+1;return this._refCounts.set(e,t),1===t?Te.ADDED:Te.UNCHANGED}_unreferenceFeature(e){const t=(this._refCounts.get(e)||0)-1;return 0===t?(this._refCounts.delete(e),Te.REMOVED):(t>0&&this._refCounts.set(e,t),Te.UNCHANGED)}get test(){}};(0,i._)([(0,a.MZ)({constructOnly:!0})],pe.prototype,"featureStore",void 0),(0,i._)([(0,a.MZ)()],pe.prototype,"tileInfo",void 0),(0,i._)([(0,a.MZ)()],pe.prototype,"extent",void 0),(0,i._)([(0,a.MZ)()],pe.prototype,"maximumByteSize",void 0),pe=(0,i._)([(0,u.$)("esri.views.interactive.snapping.featureSources.featureServiceSource.FeatureServiceTileStore")],pe);class fe{constructor(e,t,s,i){this.data=e,this.objectIds=t,this.byteSize=s,this.attributeKeys=i}}class ge{constructor(e,t,s){this.level=e,this.row=t,this.col=s,this.isLeaf=!1,this.extent=null,this.children=[null,null,null,null]}get hasChildren(){return!this.isLeaf&&(null!=this.children[0]||null!=this.children[1]||null!=this.children[2]||null!=this.children[3])}}class _e{constructor(e,t=[]){this.missingTiles=t,this.fullArea=0,this.coveredArea=0,this.fullArea=(0,J.Wc)(e.extent),this.coveredArea=this.fullArea}prepend(e){this.missingTiles=e.missingTiles.concat(this.missingTiles),this.coveredArea+=e.coveredArea,this.fullArea+=e.fullArea}}class ye{constructor(e,t,s){this._tileInfo=e,this._extent=null,this.info=new _e(t),null!=s&&(this._extent=(0,J.VY)(s))}addMissing(e,t,s,i){const r=new he.U(null,e,t,s);this._tileInfo.updateTileInfo(r,_.A.ExtrapolateOptions.POWER_OF_TWO),null==r.extent||null!=this._extent&&!(0,J.HY)(this._extent,r.extent)||(this.info.missingTiles.push({data:r,resolution:i}),this.info.coveredArea-=(0,J.Wc)(r.extent))}}const me=.18751;var Te;!function(e){e[e.ADDED=0]="ADDED",e[e.REMOVED=1]="REMOVED",e[e.UNCHANGED=2]="UNCHANGED"}(Te||(Te={}));let we=class extends r.A.EventedAccessor{constructor(){super(...arguments),this._isInitializing=!0,this.remoteClient=null,this._whenSetup=(0,n.Tw)(),this._elevationAligner=b(),this._elevationFilter=M(),this._symbologyCandidatesFetcher=q(),this._updatingHandles=new c.U,this._alignPointsInFeatures=async(e,t)=>{const s={query:e},i=await this.remoteClient.invoke("alignElevation",s,{signal:t});return(0,n.Te)(t),i},this._getSymbologyCandidates=async(e,t)=>{const s={candidates:e,spatialReference:this._spatialReference.toJSON()},i=await this.remoteClient.invoke("getSymbologyCandidates",s,{signal:t});return(0,n.Te)(t),i}}get updating(){return this._isInitializing||this._updatingHandles.updating||this._featureFetcher.updating}destroy(){this._featureFetcher?.destroy(),this._queryEngine?.destroy(),this._featureStore?.clear()}async setup(e){if(this.destroyed)return{result:{}};const{geometryType:t,objectIdField:s,timeInfo:i,fieldsIndex:r}=e.serviceInfo,{hasZ:n}=e,a=h.A.fromJSON(e.spatialReference);this._spatialReference=a,this._featureStore=new f.A({...e.serviceInfo,hasZ:n,hasM:!1}),this._queryEngine=new g.do({spatialReference:e.spatialReference,featureStore:this._featureStore,geometryType:t,fieldsIndex:r,hasZ:n,hasM:!1,objectIdField:s,timeInfo:i}),this._featureFetcher=new se({store:new pe({featureStore:this._featureStore}),url:e.serviceInfo.url,objectIdField:e.serviceInfo.objectIdField,globalIdField:e.serviceInfo.globalIdField,capabilities:e.serviceInfo.capabilities,spatialReference:a,sourceSpatialReference:h.A.fromJSON(e.serviceInfo.spatialReference),customParameters:e.configuration.customParameters});const l="3d"===e.configuration.viewType;return this._elevationAligner=b(l,{elevationInfo:null!=e.elevationInfo?m.A.fromJSON(e.elevationInfo):null,alignPointsInFeatures:this._alignPointsInFeatures}),this._elevationFilter=M(l),this.addHandles([(0,o.wB)((()=>this._featureFetcher.availability),(e=>this.emit("notify-availability",{availability:e})),o.OH),(0,o.wB)((()=>this.updating),(()=>this._notifyUpdating()))]),this._whenSetup.resolve(),this._isInitializing=!1,this.configure(e.configuration)}async configure(e){return await this._updatingHandles.addPromise(this._whenSetup.promise),this._updateFeatureFetcherConfiguration(e),Fe}async setSuspended(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),this._featureFetcher.suspended=e,Fe}async updateOutFields(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),this._featureFetcher.outFields=new Set(e??[]),Fe}async fetchCandidates(e,t){await this._whenSetup.promise,(0,n.Te)(t);const s=function(e){if(!e.filter)return{...e,query:{where:"1=1"}};const{distance:t,units:s,spatialRel:i,where:r,timeExtent:n,objectIds:o}=e.filter,a={geometry:e.filter.geometry?(0,d.rS)(e.filter.geometry):void 0,distance:t,units:s,spatialRel:i,timeExtent:n,objectIds:o,where:r??"1=1"};return{...e,query:a}}(e),i=t?.signal,r=await(0,p.J)(this._queryEngine,s,i);(0,n.Te)(i);const o=await this._elevationAligner.alignCandidates(r.candidates,h.A.fromJSON(e.point.spatialReference)??h.A.WGS84,i);(0,n.Te)(i);const a=await this._symbologyCandidatesFetcher.fetch(o,i);(0,n.Te)(i);const l=0===a.length?o:o.concat(a);return{result:{candidates:this._elevationFilter.filter(s,l)}}}async updateTiles(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),this._featureFetcher.tileSize=e.tileSize,this._featureFetcher.tilesOfInterest=e.tiles,this._featureFetcher.tileInfo=null!=e.tileInfo?_.A.fromJSON(e.tileInfo):null,Fe}async refresh(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),this._featureFetcher.refresh(),Fe}async whenNotUpdating(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),await(0,o.C_)((()=>!this.updating),t),(0,n.Te)(t),Fe}async getDebugInfo(e,t){return(0,n.Te)(t),{result:this._featureFetcher.debugInfo}}async handleEdits(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),await this._updatingHandles.addPromise(this._featureFetcher.handleEdits(e)),(0,n.Te)(t),Fe}async setHistoricMoment(e,t){return this._featureFetcher.setHistoricMoment(e.moment),Fe}async notifyElevationSourceChange(e,t){return this._elevationAligner.notifyElevationSourceChange(),Fe}async notifySymbologyChange(e,t){return this._symbologyCandidatesFetcher.notifySymbologyChange(),Fe}async setSymbologySnappingSupported(e){return this._symbologyCandidatesFetcher=q(e,this._getSymbologyCandidates),Fe}_updateFeatureFetcherConfiguration(e){this._featureFetcher.filter=null!=e.filter?y.A.fromJSON(e.filter):null,this._featureFetcher.customParameters=e.customParameters}_notifyUpdating(){this.emit("notify-updating",{updating:this.updating})}};(0,i._)([(0,a.MZ)({readOnly:!0})],we.prototype,"updating",null),(0,i._)([(0,a.MZ)()],we.prototype,"_isInitializing",void 0),we=(0,i._)([(0,u.$)("esri.views.interactive.snapping.featureSources.featureServiceSource.FeatureServiceSnappingSourceWorker")],we);const ve=we,Fe={result:{}}}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[2543],{71903:(e,t,s)=>{var i;s.d(t,{u:()=>i}),function(e){e[e.KILOBYTES=1024]="KILOBYTES",e[e.MEGABYTES=1048576]="MEGABYTES",e[e.GIGABYTES=1073741824]="GIGABYTES"}(i||(i={}))},51624:(e,t,s)=>{s.d(t,{A:()=>h});var i,r,n=s(44208),o=s(69397),a=s(93687);(r=i||(i={}))[r.varint=0]="varint",r[r.fixed64=1]="fixed64",r[r.delimited=2]="delimited",r[r.fixed32=5]="fixed32",r[r.unknown=99]="unknown";const l=4294967296,u=new TextDecoder("utf-8"),c=(0,n.A)("safari")||(0,n.A)("ios")?6:(0,n.A)("ff")?12:32;class h{constructor(e,t,s=0,r=(e?e.byteLength:0)){this._tag=0,this._dataType=i.unknown,this._init(e,t,s,r)}_init(e,t,s,i){this._data=e,this._dataView=t,this._pos=s,this._end=i}get usedMemory(){return 64+(0,o.Qf)(this._data)}asUnsafe(){return this}clone(){return new h(this._data,this._dataView,this._pos,this._end)}pos(){return this._pos}move(e){this._pos=e}nextTag(e){for(;;){if(this._pos===this._end)return!1;const t=this._decodeVarint();if(this._tag=t>>3,this._dataType=7&t,!e||e===this._tag)break;this.skip()}return!0}next(){if(this._pos===this._end)return!1;const e=this._decodeVarint();return this._tag=e>>3,this._dataType=7&e,!0}empty(){return this._pos>=this._end}tag(){return this._tag}getInt32(){return this._decodeVarint()}getInt64(){return this._decodeVarint()}getUInt32(){let e=4294967295;if(e=(127&this._data[this._pos])>>>0,this._data[this._pos++]<128)return e;if(e=(e|(127&this._data[this._pos])<<7)>>>0,this._data[this._pos++]<128)return e;if(e=(e|(127&this._data[this._pos])<<14)>>>0,this._data[this._pos++]<128)return e;if(e=(e|(127&this._data[this._pos])<<21)>>>0,this._data[this._pos++]<128)return e;if(e=(e|(15&this._data[this._pos])<<28)>>>0,this._data[this._pos++]<128)return e;throw new Error("Varint overflow")}getUInt64(){return this._decodeVarint()}getSInt32(){const e=this.getUInt32();return e>>>1^-(1&e)}getSInt64(){return this._decodeSVarint()}getBool(){const e=0!==this._data[this._pos];return this._skip(1),e}getEnum(){return this._decodeVarint()}getFixed64(){const e=this._dataView,t=this._pos,s=e.getUint32(t,!0)+e.getUint32(t+4,!0)*l;return this._skip(8),s}getSFixed64(){const e=this._dataView,t=this._pos,s=e.getUint32(t,!0)+e.getInt32(t+4,!0)*l;return this._skip(8),s}getDouble(){const e=this._dataView.getFloat64(this._pos,!0);return this._skip(8),e}getFixed32(){const e=this._dataView.getUint32(this._pos,!0);return this._skip(4),e}getSFixed32(){const e=this._dataView.getInt32(this._pos,!0);return this._skip(4),e}getFloat(){const e=this._dataView.getFloat32(this._pos,!0);return this._skip(4),e}getString(){const e=this._getLength(),t=this._pos,s=this._toString(this._data,t,t+e);return this._skip(e),s}getBytes(){const e=this._getLength(),t=this._pos,s=this._toBytes(this._data,t,t+e);return this._skip(e),s}getLength(){return this._getLengthUnsafe()}processMessageWithArgs(e,t,s,i){const r=this.getMessage(),n=e(r,t,s,i);return r.release(),n}processMessage(e){const t=this.getMessage(),s=e(t);return t.release(),s}getMessage(){const e=this._getLength(),t=h.pool.acquire();return t._init(this._data,this._dataView,this._pos,this._pos+e),this._skip(e),t}release(){h.pool.release(this)}dataType(){return this._dataType}skip(){switch(this._dataType){case i.varint:this._decodeVarint();break;case i.fixed64:this._skip(8);break;case i.delimited:this._skip(this._getLength());break;case i.fixed32:this._skip(4);break;default:throw new Error("Invalid data type!")}}skipLen(e){this._skip(e)}_skip(e){if(this._pos+e>this._end)throw new Error("Attempt to skip past the end of buffer!");this._pos+=e}_decodeVarint(){const e=this._data;let t=this._pos,s=0,i=0;if(this._end-t>=10)do{if(i=e[t++],s|=127&i,!(128&i))break;if(i=e[t++],s|=(127&i)<<7,!(128&i))break;if(i=e[t++],s|=(127&i)<<14,!(128&i))break;if(i=e[t++],s|=(127&i)<<21,!(128&i))break;if(i=e[t++],s+=268435456*(127&i),!(128&i))break;if(i=e[t++],s+=34359738368*(127&i),!(128&i))break;if(i=e[t++],s+=4398046511104*(127&i),!(128&i))break;if(i=e[t++],s+=562949953421312*(127&i),!(128&i))break;if(i=e[t++],s+=72057594037927940*(127&i),!(128&i))break;if(i=e[t++],s+=0x8000000000000000*(127&i),!(128&i))break;throw new Error("Varint too long!")}while(0);else{let r=1;for(;t!==this._end&&(i=e[t],128&i);)++t,s+=(127&i)*r,r*=128;if(t===this._end)throw new Error("Varint overrun!");++t,s+=i*r}return this._pos=t,s}_decodeSVarint(){const e=this._data;let t,s=0,i=0;const r=1&e[this._pos];if(i=e[this._pos++],s|=127&i,!(128&i))return r?-(s+1)/2:s/2;if(i=e[this._pos++],s|=(127&i)<<7,!(128&i))return r?-(s+1)/2:s/2;if(i=e[this._pos++],s|=(127&i)<<14,!(128&i))return r?-(s+1)/2:s/2;if(i=e[this._pos++],s|=(127&i)<<21,!(128&i))return r?-(s+1)/2:s/2;if(i=e[this._pos++],s+=268435456*(127&i),!(128&i))return r?-(s+1)/2:s/2;if(i=e[this._pos++],s+=34359738368*(127&i),!(128&i))return r?-(s+1)/2:s/2;if(i=e[this._pos++],s+=4398046511104*(127&i),!(128&i))return r?-(s+1)/2:s/2;if(t=BigInt(s),i=e[this._pos++],t+=0x2000000000000n*BigInt(127&i),!(128&i))return Number(r?-(t+1n)/2n:t/2n);if(i=e[this._pos++],t+=0x100000000000000n*BigInt(127&i),!(128&i))return Number(r?-(t+1n)/2n:t/2n);if(i=e[this._pos++],t+=0x8000000000000000n*BigInt(127&i),!(128&i))return Number(r?-(t+1n)/2n:t/2n);throw new Error("Varint too long!")}_getLength(){if(this._dataType!==i.delimited)throw new Error("Not a delimited data type!");return this._decodeVarint()}_getLengthUnsafe(){return this.getUInt32()}_toString(e,t,s){if((s=Math.min(this._end,s))-t>c){const i=e.subarray(t,s);return u.decode(i)}let i="",r="";for(let n=t;n<s;++n){const t=e[n];128&t?r+="%"+t.toString(16):(i+=decodeURIComponent(r)+String.fromCharCode(t),r="")}return r.length&&(i+=decodeURIComponent(r)),i}_toBytes(e,t,s){return s=Math.min(this._end,s),new Uint8Array(e.buffer,t,s-t)}}h.pool=new a.A(h,void 0,(e=>{e._data=null,e._dataView=null}))},79897:(e,t,s)=>{s.d(t,{U:()=>c});var i=s(90237),r=s(69622),n=s(36563),o=s(36708),a=s(11932),l=s(10107),u=s(40608);let c=class extends r.A{constructor(){super(...arguments),this.updating=!1,this._handleId=0,this._scheduleHandleId=0,this._pendingPromises=new Set}destroy(){this.removeAll()}add(e,t,s={}){return this._installWatch(e,t,s,o.wB)}addWhen(e,t,s={}){return this._installWatch(e,t,s,o.z7)}addOnCollectionChange(e,t,{initial:s=!1,final:i=!1}={}){const r=++this._handleId;return this.addHandles([(0,o.on)(e,"after-changes",this._createSyncUpdatingCallback(),o.OH),(0,o.on)(e,"change",t,{onListenerAdd:s?e=>t({added:e.toArray(),removed:[]}):void 0,onListenerRemove:i?e=>t({added:[],removed:e.toArray()}):void 0})],r),(0,n.hA)((()=>this.removeHandles(r)))}addPromise(e){if(null==e)return e;const t=++this._handleId;this.addHandles((0,n.hA)((()=>{this._pendingPromises.delete(e)&&(0!==this._pendingPromises.size||this.hasHandles(h)||this._set("updating",!1))})),t),this._pendingPromises.add(e),this._set("updating",!0);const s=()=>this.removeHandles(t);return e.then(s,s),e}removeAll(){this._pendingPromises.clear(),this.removeAllHandles(),this._set("updating",!1)}_installWatch(e,t,s={},i){const r=++this._handleId;s.sync||this._installSyncUpdatingWatch(e,r);const o=i(e,t,s);return this.addHandles(o,r),(0,n.hA)((()=>this.removeHandles(r)))}_installSyncUpdatingWatch(e,t){const s=this._createSyncUpdatingCallback(),i=(0,o.wB)(e,s,{sync:!0,equals:()=>!1});return this.addHandles(i,t),i}_createSyncUpdatingCallback(){return()=>{this.removeHandles(h),++this._scheduleHandleId;const e=this._scheduleHandleId;this._get("updating")||this._set("updating",!0),this.addHandles((0,a._)((()=>{e===this._scheduleHandleId&&(this._set("updating",this._pendingPromises.size>0),this.removeHandles(h))})),h)}}};(0,i._)([(0,l.MZ)({readOnly:!0})],c.prototype,"updating",void 0),c=(0,i._)([(0,u.$)("esri.core.support.UpdatingHandles")],c);const h=-42},13069:(e,t,s)=>{s.d(t,{AG:()=>a,lk:()=>r,vD:()=>o,yS:()=>n});const i="randomUUID"in crypto;function r(){if(i)return crypto.randomUUID();const e=crypto.getRandomValues(new Uint16Array(8));e[3]=4095&e[3]|16384,e[4]=16383&e[4]|32768;const t=t=>e[t].toString(16).padStart(4,"0");return t(0)+t(1)+"-"+t(2)+"-"+t(3)+"-"+t(4)+"-"+t(5)+t(6)+t(7)}function n(){return`{${r().toUpperCase()}}`}function o(){return`{${r()}}`}function a(e){const t=e.toUpperCase();return"{"!==e[0]?`{${t}}`:t}},91806:(e,t,s)=>{s.d(t,{A:()=>c});var i,r=s(90237),n=s(25482),o=s(10107),a=s(56507),l=(s(44208),s(87811),s(40608));let u=i=class extends n.A{constructor(e){super(e),this.cols=null,this.level=0,this.levelValue=null,this.origin=null,this.resolution=0,this.rows=null,this.scale=0}clone(){return new i({cols:this.cols,level:this.level,levelValue:this.levelValue,resolution:this.resolution,rows:this.rows,scale:this.scale})}};(0,r._)([(0,o.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],u.prototype,"cols",void 0),(0,r._)([(0,o.MZ)({type:a.jz,json:{write:!0}})],u.prototype,"level",void 0),(0,r._)([(0,o.MZ)({type:String,json:{write:!0}})],u.prototype,"levelValue",void 0),(0,r._)([(0,o.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],u.prototype,"origin",void 0),(0,r._)([(0,o.MZ)({type:Number,json:{write:!0}})],u.prototype,"resolution",void 0),(0,r._)([(0,o.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],u.prototype,"rows",void 0),(0,r._)([(0,o.MZ)({type:Number,json:{write:!0}})],u.prototype,"scale",void 0),u=i=(0,r._)([(0,l.$)("esri.layers.support.LOD")],u);const c=u},87045:(e,t,s)=>{s.d(t,{A:()=>b});var i,r=s(90237),n=s(66552),o=s(25482),a=s(83047),l=s(10107),u=s(56507),c=(s(44208),s(87811),s(36005)),h=s(40608),d=s(43937),p=s(86738),f=s(16930),_=s(19419),g=s(21325),y=s(28735),m=s(91806),T=s(72802);const w=new n.J({PNG:"png",PNG8:"png8",PNG24:"png24",PNG32:"png32",JPEG:"jpg",JPG:"jpg",DIB:"dib",TIFF:"tiff",EMF:"emf",PS:"ps",PDF:"pdf",GIF:"gif",SVG:"svg",SVGZ:"svgz",Mixed:"mixed",MIXED:"mixed",LERC:"lerc",LERC2D:"lerc2d",RAW:"raw",pbf:"pbf"});let F=i=class extends o.A{static create(e={}){const{resolutionFactor:t=1,scales:s,size:r=256,spatialReference:n=f.A.WebMercator,numLODs:o=24}=e;if(!(0,g.fn)(n)){const e=[];if(s)for(let t=0;t<s.length;t++){const i=s[t];e.push(new m.A({level:t,scale:i,resolution:i}))}else{let t=5e-4;for(let s=o-1;s>=0;s--)e.unshift(new m.A({level:s,scale:t,resolution:t})),t*=2}return new i({dpi:96,lods:e,origin:new p.A(0,0,n),size:[r,r],spatialReference:n})}const l=(0,g.Vp)(n),u=e.origin?new p.A({x:e.origin.x,y:e.origin.y,spatialReference:n}):new p.A(l?{x:l.origin[0],y:l.origin[1],spatialReference:n}:{x:0,y:0,spatialReference:n}),c=1/(39.37*(0,a.GA)(n)*96),h=[];if(s)for(let e=0;e<s.length;e++){const t=s[e],i=t*c;h.push(new m.A({level:e,scale:t,resolution:i}))}else{let e=(0,g.EA)(n)?512/r*591657527.5917094:256/r*591657527.591555;const s=Math.ceil(o/t);h.push(new m.A({level:0,scale:e,resolution:e*c}));for(let i=1;i<s;i++){const s=e/2**t,r=s*c;h.push(new m.A({level:i,scale:s,resolution:r})),e=s}}return new i({dpi:96,lods:h,origin:u,size:[r,r],spatialReference:n})}constructor(e){super(e),this.dpi=96,this.format=null,this.origin=null,this.size=null,this.spatialReference=null}get isWrappable(){const{spatialReference:e,origin:t}=this;if(e&&t){const s=(0,g.Vp)(e);return e.isWrappable&&!!s&&Math.abs(s.origin[0]-t.x)<=s.dx}return!1}readOrigin(e,t){return p.A.fromJSON({spatialReference:t.spatialReference,...e})}set lods(e){let t=0,s=0;const i=[],r=this._levelToLOD={};e&&(t=-1/0,s=1/0,e.forEach((e=>{i.push(e.scale),t=e.scale>t?e.scale:t,s=e.scale<s?e.scale:s,r[e.level]=e}))),this._set("scales",i),this._set("lods",e),this._initializeUpsampleLevels()}readSize(e,t){return[t.cols,t.rows]}writeSize(e,t){t.cols=e[0],t.rows=e[1]}zoomToScale(e){const t=this.scales;if(e<=0)return t[0];if(e>=t.length-1)return t[t.length-1];const s=Math.floor(e),i=s+1;return t[s]/(t[s]/t[i])**(e-s)}scaleToZoom(e){const t=this.scales,s=t.length-1;let i=0;for(;i<s;i++){const s=t[i],r=t[i+1];if(s<=e)return i;if(r===e)return i+1;if(s>e&&r<e)return i+Math.log(s/e)/Math.log(s/r)}return i}tileAt(e,t,s,i){const r=this.lodAt(e);if(!r)return null;let n,o;if("number"==typeof t)n=t,o=s;else if((0,g.aI)(t.spatialReference,this.spatialReference))n=t.x,o=t.y,i=s;else{const e=(0,y.Cv)(t,this.spatialReference);if(null==e)return null;n=e.x,o=e.y,i=s}const a=r.resolution*this.size[0],l=r.resolution*this.size[1];return i||(i=new T.U(null,0,0,0,(0,_.vt)())),i.level=e,i.row=Math.floor((this.origin.y-o)/l+.001),i.col=Math.floor((n-this.origin.x)/a+.001),this.updateTileInfo(i),i}updateTileInfo(e,t=i.ExtrapolateOptions.NONE){let s=this.lodAt(e.level);if(!s&&t===i.ExtrapolateOptions.POWER_OF_TWO){const t=this.lods[this.lods.length-1];t.level<e.level&&(s=t)}if(!s)return;const r=e.level-s.level,n=s.resolution*this.size[0]/2**r,o=s.resolution*this.size[1]/2**r;e.id=`${e.level}/${e.row}/${e.col}`,e.extent||(e.extent=(0,_.vt)()),e.extent[0]=this.origin.x+e.col*n,e.extent[1]=this.origin.y-(e.row+1)*o,e.extent[2]=e.extent[0]+n,e.extent[3]=e.extent[1]+o}upsampleTile(e){const t=this._upsampleLevels[e.level];return!(!t||-1===t.parentLevel||(e.level=t.parentLevel,e.row=Math.floor(e.row/t.factor+.001),e.col=Math.floor(e.col/t.factor+.001),this.updateTileInfo(e),0))}getTileBounds(e,t){const s=this.lodAt(t.level);if(null==s)return null;const{resolution:i}=s,r=i*this.size[0],n=i*this.size[1];return e[0]=this.origin.x+t.col*r,e[1]=this.origin.y-(t.row+1)*n,e[2]=e[0]+r,e[3]=e[1]+n,e}lodAt(e){return this._levelToLOD?.[e]??null}clone(){return i.fromJSON(this.write({}))}getCompatibleForVTL(e){if(this.size[0]!==this.size[1]||256===this.size[0]&&512===e)return null;const t=(512===this.size[0]&&256===e?-1:0)+(this.spatialReference.isGeographic?1:0);if(this.size[0]===e&&0===t)return this;const s=[],r=this.lods.length-t;for(let e=0;e<r;e++){const i=e+t,{scale:r,resolution:n}=i>=0?this.lods[i]:{scale:2*this.lods[0].scale,resolution:2*this.lods[0].resolution};s.push(new m.A({level:e,scale:r,resolution:n}))}return new i({size:[e,e],dpi:this.dpi,format:this.format,compressionQuality:this.compressionQuality,origin:this.origin,spatialReference:this.spatialReference,lods:s})}_initializeUpsampleLevels(){const e=this.lods;this._upsampleLevels=[];let t=null;for(let s=0;s<e.length;s++){const i=e[s];this._upsampleLevels[i.level]={parentLevel:t?t.level:-1,factor:t?t.resolution/i.resolution:0},t=i}}};var v,E;(0,r._)([(0,l.MZ)({type:Number,json:{write:!0}})],F.prototype,"compressionQuality",void 0),(0,r._)([(0,l.MZ)({type:Number,json:{write:!0}})],F.prototype,"dpi",void 0),(0,r._)([(0,l.MZ)({type:String,json:{read:w.read,write:w.write,origins:{"web-scene":{read:!1,write:!1}}}})],F.prototype,"format",void 0),(0,r._)([(0,l.MZ)({readOnly:!0})],F.prototype,"isWrappable",null),(0,r._)([(0,l.MZ)({type:p.A,json:{write:!0}})],F.prototype,"origin",void 0),(0,r._)([(0,c.w)("origin")],F.prototype,"readOrigin",null),(0,r._)([(0,l.MZ)({type:[m.A],value:null,json:{write:!0}})],F.prototype,"lods",null),(0,r._)([(0,l.MZ)({readOnly:!0})],F.prototype,"scales",void 0),(0,r._)([(0,l.MZ)({cast:e=>Array.isArray(e)?e:"number"==typeof e?[e,e]:[256,256]})],F.prototype,"size",void 0),(0,r._)([(0,c.w)("size",["rows","cols"])],F.prototype,"readSize",null),(0,r._)([(0,d.K)("size",{cols:{type:u.jz},rows:{type:u.jz}})],F.prototype,"writeSize",null),(0,r._)([(0,l.MZ)({type:f.A,json:{write:!0}})],F.prototype,"spatialReference",void 0),F=i=(0,r._)([(0,h.$)("esri.layers.support.TileInfo")],F),v=F||(F={}),(E=v.ExtrapolateOptions||(v.ExtrapolateOptions={}))[E.NONE=0]="NONE",E[E.POWER_OF_TWO=1]="POWER_OF_TWO";const b=F},72802:(e,t,s)=>{s.d(t,{U:()=>i});class i{constructor(e,t,s,i,r=void 0){this.id=e,this.level=t,this.row=s,this.col=i,this.extent=r}}},31756:(e,t,s)=>{s.d(t,{j:()=>n});var i=s(83047),r=s(79258);const n={unknown:1,inches:(0,i.oU)(1,"meters","inches"),feet:(0,i.oU)(1,"meters","feet"),"us-feet":(0,i.oU)(1,"meters","us-feet"),yards:(0,i.oU)(1,"meters","yards"),miles:(0,i.oU)(1,"meters","miles"),"nautical-miles":(0,i.oU)(1,"meters","nautical-miles"),millimeters:(0,i.oU)(1,"meters","millimeters"),centimeters:(0,i.oU)(1,"meters","centimeters"),decimeters:(0,i.oU)(1,"meters","decimeters"),meters:(0,i.oU)(1,"meters","meters"),kilometers:(0,i.oU)(1,"meters","kilometers"),"decimal-degrees":1/(0,i.vl)(1,"meters",r.$O.radius)}},10536:(e,t,s)=>{function i(e){const t={};for(const s in e){if("declaredClass"===s)continue;const r=e[s];if(null!=r&&"function"!=typeof r)if(Array.isArray(r)){t[s]=[];for(let e=0;e<r.length;e++)t[s][e]=i(r[e])}else"object"==typeof r?r.toJSON&&(t[s]=JSON.stringify(r)):t[s]=r}return t}s.d(t,{z:()=>i})},53655:(e,t,s)=>{s.d(t,{SH:()=>C,ae:()=>E,cn:()=>m});var i=s(49186),r=s(51624),n=s(92722),o=s(69418);const a=["esriFieldTypeSmallInteger","esriFieldTypeInteger","esriFieldTypeSingle","esriFieldTypeDouble","esriFieldTypeString","esriFieldTypeDate","esriFieldTypeOID","esriFieldTypeGeometry","esriFieldTypeBlob","esriFieldTypeRaster","esriFieldTypeGUID","esriFieldTypeGlobalID","esriFieldTypeXML","esriFieldTypeBigInteger","esriFieldTypeDateOnly","esriFieldTypeTimeOnly","esriFieldTypeTimestampOffset"],l=["sqlTypeBigInt","sqlTypeBinary","sqlTypeBit","sqlTypeChar","sqlTypeDate","sqlTypeDecimal","sqlTypeDouble","sqlTypeFloat","sqlTypeGeometry","sqlTypeGUID","sqlTypeInteger","sqlTypeLongNVarchar","sqlTypeLongVarbinary","sqlTypeLongVarchar","sqlTypeNChar","sqlTypeNVarchar","sqlTypeOther","sqlTypeReal","sqlTypeSmallInt","sqlTypeSqlXml","sqlTypeTime","sqlTypeTimestamp","sqlTypeTimestamp2","sqlTypeTinyInt","sqlTypeVarbinary","sqlTypeVarchar"],u=["upperLeft","lowerLeft"];function c(e){return e>=a.length?null:a[e]}function h(e){return e>=l.length?null:l[e]}function d(e){return e>=u.length?null:u[e]}function p(e,t){return t>=e.geometryTypes.length?null:e.geometryTypes[t]}function f(e,t,s){const i=e.asUnsafe(),r=t.createPointGeometry(s);for(;i.next();)switch(i.tag()){case 3:{const e=i.getUInt32(),s=i.pos()+e;let n=0;for(;i.pos()<s;)t.addCoordinatePoint(r,i.getSInt64(),n++);break}default:i.skip()}return r}function _(e,t,s){const i=e.asUnsafe(),r=t.createGeometry(s),n=2+(s.hasZ?1:0)+(s.hasM?1:0);for(;i.next();)switch(i.tag()){case 2:{const e=i.getUInt32(),s=i.pos()+e;let n=0;for(;i.pos()<s;)t.addLength(r,i.getUInt32(),n++);break}case 3:{const e=i.getUInt32(),s=i.pos()+e;let o=0;for(t.allocateCoordinates(r);i.pos()<s;)t.addCoordinate(r,i.getSInt64(),o),o++,o===n&&(o=0);break}default:i.skip()}return r}function g(e){const t=e.asUnsafe(),s=new n.A;let i="esriGeometryPoint";for(;t.next();)switch(t.tag()){case 2:{const e=t.getUInt32(),i=t.pos()+e;for(;t.pos()<i;)s.lengths.push(t.getUInt32());break}case 3:{const e=t.getUInt32(),i=t.pos()+e;for(;t.pos()<i;)s.coords.push(t.getSInt64());break}case 1:i=o.z[t.getEnum()];break;default:t.skip()}return{queryGeometry:s,queryGeometryType:i}}function y(e){const t=e.asUnsafe();for(;t.next();)switch(t.tag()){case 1:return t.getString();case 2:return t.getFloat();case 3:return t.getDouble();case 4:return t.getSInt32();case 5:return t.getUInt32();case 6:return t.getInt64();case 7:return t.getUInt64();case 8:return t.getSInt64();case 9:return t.getBool();default:return t.skip(),null}return null}function m(e){const t=e.asUnsafe(),s={type:c(0)};for(;t.next();)switch(t.tag()){case 1:s.name=t.getString();break;case 2:s.type=c(t.getEnum());break;case 3:s.alias=t.getString();break;case 4:s.sqlType=h(t.getEnum());break;case 5:default:t.skip();break;case 6:s.defaultValue=t.getString()}return s}function T(e){const t={},s=e.asUnsafe();for(;s.next();)switch(s.tag()){case 1:t.name=s.getString();break;case 2:t.isSystemMaintained=s.getBool();break;default:s.skip()}return t}function w(e,t,s,i){const r=t.createFeature(s);let n=0;for(;e.next();)switch(e.tag()){case 1:{const t=i[n++].name;r.attributes[t]=e.processMessage(y);break}case 2:r.geometry=e.processMessageWithArgs(_,t,s);break;case 4:r.centroid=e.processMessageWithArgs(f,t,s);break;default:e.skip()}return r}function F(e){const t=[1,1,1,1],s=e.asUnsafe();for(;s.next();)switch(s.tag()){case 1:t[0]=s.getDouble();break;case 2:t[1]=s.getDouble();break;case 4:t[2]=s.getDouble();break;case 3:t[3]=s.getDouble();break;default:s.skip()}return t}function v(e){const t=[0,0,0,0],s=e.asUnsafe();for(;s.next();)switch(s.tag()){case 1:t[0]=s.getDouble();break;case 2:t[1]=s.getDouble();break;case 4:t[2]=s.getDouble();break;case 3:t[3]=s.getDouble();break;default:s.skip()}return t}function E(e){const t={originPosition:d(0)},s=e.asUnsafe();for(;s.next();)switch(s.tag()){case 1:t.originPosition=d(s.getEnum());break;case 2:t.scale=s.processMessage(F);break;case 3:t.translate=s.processMessage(v);break;default:s.skip()}return t}function b(e){const t={},s=e.asUnsafe();for(;s.next();)switch(s.tag()){case 1:t.shapeAreaFieldName=s.getString();break;case 2:t.shapeLengthFieldName=s.getString();break;case 3:t.units=s.getString();break;default:s.skip()}return t}function S(e,t){const s=t.createSpatialReference();for(;e.next();)switch(e.tag()){case 1:s.wkid=e.getUInt32();break;case 5:s.wkt=e.getString();break;case 2:s.latestWkid=e.getUInt32();break;case 3:s.vcsWkid=e.getUInt32();break;case 4:s.latestVcsWkid=e.getUInt32();break;default:e.skip()}return s}function I(e,t){const s=t.createFeatureResult(),i=e.asUnsafe();s.geometryType=p(t,0);let r=!1;for(;i.next();)switch(i.tag()){case 1:s.objectIdFieldName=i.getString();break;case 3:s.globalIdFieldName=i.getString();break;case 4:s.geohashFieldName=i.getString();break;case 5:s.geometryProperties=i.processMessage(b);break;case 7:s.geometryType=p(t,i.getEnum());break;case 8:s.spatialReference=i.processMessageWithArgs(S,t);break;case 10:s.hasZ=i.getBool();break;case 11:s.hasM=i.getBool();break;case 12:s.transform=i.processMessage(E);break;case 9:s.exceededTransferLimit=i.getBool();break;case 13:t.addField(s,i.processMessage(m));break;case 15:r||(t.prepareFeatures(s),r=!0),t.addFeature(s,i.processMessageWithArgs(w,t,s,s.fields));break;case 2:s.uniqueIdField=i.processMessage(T);break;default:i.skip()}return t.finishFeatureResult(s),s}function x(e,t){const s={};let i=null;for(;e.next();)switch(e.tag()){case 4:i=e.processMessageWithArgs(g);break;case 1:s.featureResult=e.processMessageWithArgs(I,t);break;default:e.skip()}return null!=i&&s.featureResult&&t.addQueryGeometry(s,i),s}function C(e,t){try{const s=2,i=new r.A(new Uint8Array(e),new DataView(e)),n={};for(;i.next();)i.tag()===s?n.queryResult=i.processMessageWithArgs(x,t):i.skip();return n}catch(e){throw new i.A("query:parsing-pbf","Error while parsing FeatureSet PBF payload",{error:e})}}},69418:(e,t,s)=>{s.d(t,{S:()=>u,z:()=>l});var i=s(83047),r=s(21325),n=s(43334),o=s(58512),a=s(92722);const l=["esriGeometryPoint","esriGeometryMultipoint","esriGeometryPolyline","esriGeometryPolygon"];class u{constructor(e){this._options=e,this.geometryTypes=l,this._coordinatePtr=0,this._vertexDimension=0}createFeatureResult(){return new o.A}prepareFeatures(e){this._vertexDimension=2,e.hasZ&&this._vertexDimension++,e.hasM&&this._vertexDimension++}finishFeatureResult(e){if(!e?.features||!e.hasZ||!this._options.sourceSpatialReference||!e.spatialReference||(0,r.aI)(e.spatialReference,this._options.sourceSpatialReference)||e.spatialReference.vcsWkid)return;const t=(0,i.G9)(this._options.sourceSpatialReference)/(0,i.G9)(e.spatialReference);if(1!==t)for(const s of e.features){if(!(0,n.N3)(s))continue;const e=s.geometry.coords;for(let s=2;s<e.length;s+=3)e[s]*=t}}addFeature(e,t){e.features.push(t)}createFeature(){return new n.Om(null,{},null,0)}createSpatialReference(){return{wkid:0}}createGeometry(){return new a.A}addField(e,t){e.fields.push(t)}allocateCoordinates(e){e.coords.length=e.lengths.reduce(((e,t)=>e+t),0)*this._vertexDimension,this._coordinatePtr=0}addCoordinate(e,t){e.coords[this._coordinatePtr++]=t}addCoordinatePoint(e,t){e.coords.push(t)}addLength(e,t){e.lengths.push(t)}addQueryGeometry(e,t){e.queryGeometry=t.queryGeometry,e.queryGeometryType=t.queryGeometryType}createPointGeometry(){return new a.A}}},66208:(e,t,s)=>{s.d(t,{m:()=>r});var i=s(53655);function r(e,t){const s=(0,i.SH)(e,t),r=s.queryResult.featureResult,n=s.queryResult.queryGeometry,o=s.queryResult.queryGeometryType;if(r&&r.features&&r.features.length&&r.objectIdFieldName){const e=r.objectIdFieldName;for(const t of r.features)t.attributes&&(t.objectId=t.attributes[e])}return r&&(r.queryGeometry=n,r.queryGeometryType=o),r}},80893:(e,t,s)=>{s.d(t,{IJ:()=>f,Jf:()=>m,Pk:()=>g,eW:()=>p,gW:()=>y,kS:()=>_});var i=s(78888),r=s(84952),n=s(65864),o=s(17136),a=s(21325),l=s(10536),u=s(66208),c=s(58501);const h="Layer does not support extent calculation.";function d(e,t){const s=e.geometry,i=e.toJSON();delete i.compactGeometryEnabled,delete i.defaultSpatialReferenceEnabled;const r=i;let o,l,u;if(null!=s&&(l=s.spatialReference,u=(0,a.YX)(l),r.geometryType=(0,n.$B)(s),r.geometry=function(e,t){if(t&&"extent"===e.type)return`${e.xmin},${e.ymin},${e.xmax},${e.ymax}`;if(t&&"point"===e.type)return`${e.x},${e.y}`;const s=e.toJSON();return delete s.spatialReference,JSON.stringify(s)}(s,e.compactGeometryEnabled),r.inSR=u),i.groupByFieldsForStatistics&&(r.groupByFieldsForStatistics=i.groupByFieldsForStatistics.join(",")),i.objectIds&&(r.objectIds=i.objectIds.join(",")),i.orderByFields&&(r.orderByFields=i.orderByFields.join(",")),!i.outFields||!i.returnDistinctValues&&(t?.returnCountOnly||t?.returnExtentOnly||t?.returnIdsOnly)?delete r.outFields:i.outFields.includes("*")?r.outFields="*":r.outFields=i.outFields.join(","),i.outSR?(r.outSR=(0,a.YX)(i.outSR),o=e.outSpatialReference):s&&(i.returnGeometry||i.returnCentroid)&&(r.outSR=r.inSR,o=l),i.returnGeometry&&delete i.returnGeometry,i.outStatistics&&(r.outStatistics=JSON.stringify(i.outStatistics)),i.fullText&&(r.fullText=JSON.stringify(i.fullText)),i.pixelSize&&(r.pixelSize=JSON.stringify(i.pixelSize)),i.quantizationParameters&&(e.defaultSpatialReferenceEnabled&&null!=l&&null!=e.quantizationParameters?.extent&&l.equals(e.quantizationParameters.extent.spatialReference)&&delete i.quantizationParameters.extent.spatialReference,r.quantizationParameters=JSON.stringify(i.quantizationParameters)),i.parameterValues&&(r.parameterValues=JSON.stringify(i.parameterValues)),i.rangeValues&&(r.rangeValues=JSON.stringify(i.rangeValues)),i.dynamicDataSource&&(r.layer=JSON.stringify({source:i.dynamicDataSource}),delete i.dynamicDataSource),i.timeExtent){const e=i.timeExtent,{start:t,end:s}=e;null==t&&null==s||(r.time=t===s?t:`${t??"null"},${s??"null"}`),delete i.timeExtent}return e.defaultSpatialReferenceEnabled&&null!=l&&null!=o&&l.equals(o)&&(r.defaultSR=r.inSR,delete r.inSR,delete r.outSR),r}async function p(e,t,s,i){const r=null!=t.timeExtent&&t.timeExtent.isEmpty?{data:{features:[]}}:await T(e,t,"json",i);return(0,c.q)(t,s,r.data),r}async function f(e,t,s,i){if(null!=t.timeExtent&&t.timeExtent.isEmpty)return{data:s.createFeatureResult()};const r=await _(e,t,i),n=r;return n.data=(0,u.m)(r.data,s),n}function _(e,t,s){return T(e,t,"pbf",s)}function g(e,t,s){return null!=t.timeExtent&&t.timeExtent.isEmpty?Promise.resolve({data:{objectIds:[]}}):T(e,t,"json",s,{returnIdsOnly:!0})}function y(e,t,s){return null!=t.timeExtent&&t.timeExtent.isEmpty?Promise.resolve({data:{count:0}}):T(e,t,"json",s,{returnIdsOnly:!0,returnCountOnly:!0})}async function m(e,t,s){if(null!=t.timeExtent&&t.timeExtent.isEmpty)return{data:{count:0,extent:null}};const i=await T(e,t,"json",s,{returnExtentOnly:!0,returnCountOnly:!0}),r=i.data;if(r.hasOwnProperty("extent"))return i;if(r.features)throw new Error(h);if(r.hasOwnProperty("count"))throw new Error(h);return i}async function T(e,t,s,n={},a={}){const u="string"==typeof e?(0,r.An)(e):e,c=t.geometry?[t.geometry]:[],h=await(0,o.el)(c,null,{signal:n.signal}),p=h?.[0];null!=p&&((t=t.clone()).geometry=p);const f=(0,l.z)({...u.query,f:s,...a,...d(t,a)});return(0,i.A)((0,r.fj)(u.path,(_=a,null==t.formatOf3DObjects||_.returnCountOnly||_.returnExtentOnly||_.returnIdsOnly?"query":"query3d")),{...n,responseType:"pbf"===s?"array-buffer":"json",query:{...f,...n.query}});var _}},58501:(e,t,s)=>{s.d(t,{q:()=>r});var i=s(62815);function r(e,t,s){if(!s?.features||!s.hasZ)return;const r=(0,i.N)(s.geometryType,t,e.outSpatialReference);if(null!=r)for(const e of s.features)r(e.geometry)}},88625:(e,t,s)=>{s.d(t,{A:()=>w});var i,r=s(90237),n=s(66552),o=s(25482),a=s(97768),l=s(10107),u=(s(44208),s(53966),s(87811),s(36005)),c=s(40608),h=s(43937),d=s(30524);let p=i=class extends o.A{constructor(e){super(e)}async collectRequiredFields(e,t){return(0,d.Dx)(e,t,this.expression)}clone(){return new i({expression:this.expression,title:this.title})}equals(e){return this.expression===e.expression&&this.title===e.title}};(0,r._)([(0,l.MZ)({type:String,json:{write:{isRequired:!0}}})],p.prototype,"expression",void 0),(0,r._)([(0,l.MZ)({type:String,json:{write:!0}})],p.prototype,"title",void 0),p=i=(0,r._)([(0,c.$)("esri.symbols.support.FeatureExpressionInfo")],p);const f=p;var _,g=s(16271);const y=(0,n.O)()({onTheGround:"on-the-ground",relativeToGround:"relative-to-ground",relativeToScene:"relative-to-scene",absoluteHeight:"absolute-height"}),m=new n.J({foot:"feet",kilometer:"kilometers",meter:"meters",mile:"miles","us-foot":"us-feet",yard:"yards"});let T=_=class extends o.A{constructor(e){super(e),this.featureExpressionInfo=void 0,this.offset=null}readFeatureExpressionInfo(e,t){return null!=e?e:t.featureExpression&&0===t.featureExpression.value?{expression:"0"}:void 0}writeFeatureExpressionInfo(e,t,s,i){t[s]=e.write({},i),"0"===e.expression&&(t.featureExpression={value:0})}get mode(){const{offset:e,featureExpressionInfo:t}=this;return this._isOverridden("mode")?this._get("mode"):null!=e||t?"relative-to-ground":"on-the-ground"}set mode(e){this._override("mode",e)}set unit(e){this._set("unit",e)}write(e,t){return this.offset||this.mode||this.featureExpressionInfo||this.unit?super.write(e,t):null}clone(){return new _({mode:this.mode,offset:this.offset,featureExpressionInfo:this.featureExpressionInfo?this.featureExpressionInfo.clone():void 0,unit:this.unit})}equals(e){return this.mode===e.mode&&this.offset===e.offset&&this.unit===e.unit&&(0,a.CM)(this.featureExpressionInfo,e.featureExpressionInfo)}};(0,r._)([(0,l.MZ)({type:f,json:{write:!0}})],T.prototype,"featureExpressionInfo",void 0),(0,r._)([(0,u.w)("featureExpressionInfo",["featureExpressionInfo","featureExpression"])],T.prototype,"readFeatureExpressionInfo",null),(0,r._)([(0,h.K)("featureExpressionInfo",{featureExpressionInfo:{type:f},"featureExpression.value":{type:[0]}})],T.prototype,"writeFeatureExpressionInfo",null),(0,r._)([(0,l.MZ)({type:y.apiValues,nonNullable:!0,json:{type:y.jsonValues,read:y.read,write:{writer:y.write,isRequired:!0}}})],T.prototype,"mode",null),(0,r._)([(0,l.MZ)({type:Number,json:{write:!0}})],T.prototype,"offset",void 0),(0,r._)([(0,l.MZ)({type:g.KQ,json:{type:String,read:m.read,write:m.write}})],T.prototype,"unit",null),T=_=(0,r._)([(0,c.$)("esri.symbols.support.ElevationInfo")],T);const w=T},16271:(e,t,s)=>{s.d(t,{Ao:()=>n,KQ:()=>o});var i=s(4576),r=s(31756);function n(e){return 1/(r.j[e]||1)}const o=function(){const e=Object.keys(r.j);return(0,i.TF)(e,"decimal-degrees"),e.sort(),e}()},12543:(e,t,s)=>{s.r(t),s.d(t,{default:()=>we});var i=s(90237),r=s(65529),n=s(74887),o=s(36708),a=s(10107),l=(s(44208),s(53966)),u=(s(87811),s(40608)),c=s(79897),h=s(16930),d=s(65864),p=s(58376),f=s(83221),_=s(19730),g=s(87045),y=s(61956),m=s(88625),T=s(66344),w=s(91869),F=s(83047),v=s(16271);function E(e=!1,t){if(e){const{elevationInfo:e,alignPointsInFeatures:s}=t;return new S(e,s)}return new b}class b{async alignCandidates(e,t,s){return e}notifyElevationSourceChange(){}}class S{constructor(e,t){this._elevationInfo=e,this._alignPointsInFeatures=t,this._alignmentsCache=new T.q(1024),this._cacheVersion=0}async alignCandidates(e,t,s){const i=this._elevationInfo;return null==i||"absolute-height"!==i.mode||i.featureExpressionInfo?this._alignComputedElevationCandidates(e,t,s):(function(e,t,s){const{offset:i,unit:r}=s;if(null==i)return;const n=(0,F.G9)(t),o=i*((0,v.Ao)(r??"meters")/n);for(const t of e)switch(t.type){case"edge":t.start.z+=o,t.end.z+=o;continue;case"vertex":t.target.z+=o;continue}}(e,t,i),e)}notifyElevationSourceChange(){this._alignmentsCache.clear(),this._cacheVersion++}async _alignComputedElevationCandidates(e,t,s){const i=new Map;for(const t of e)(0,w.tE)(i,t.objectId,C).push(t);const[r,o,a]=this._prepareQuery(i,t),l=await this._alignPointsInFeatures(r,s);if((0,n.Te)(s),a!==this._cacheVersion)return this._alignComputedElevationCandidates(e,t,s);this._applyCacheAndResponse(r,l,o);const{drapedObjectIds:u,failedObjectIds:c}=l,h=[];for(const t of e){const{objectId:e}=t;u.has(e)&&"edge"===t.type&&(t.draped=!0),c.has(e)||h.push(t)}return h}_prepareQuery(e,t){const s=[],i=[];for(const[t,r]of e){const e=[];for(const s of r)this._addToQueriesOrCachedResult(t,s.target,e,i),"edge"===s.type&&(this._addToQueriesOrCachedResult(t,s.start,e,i),this._addToQueriesOrCachedResult(t,s.end,e,i));0!==e.length&&s.push({objectId:t,points:e})}return[{spatialReference:t.toJSON(),pointsInFeatures:s},i,this._cacheVersion]}_addToQueriesOrCachedResult(e,t,s,i){const r=x(e,t),n=this._alignmentsCache.get(r);null==n?s.push(t):i.push(new I(t,n))}_applyCacheAndResponse(e,{elevations:t,drapedObjectIds:s,failedObjectIds:i},r){for(const e of r)e.apply();let n=0;const o=this._alignmentsCache;for(const{objectId:r,points:a}of e.pointsInFeatures){if(i.has(r)){n+=a.length;continue}const e=!s.has(r);for(const s of a){const i=x(r,s),a=t[n++];s.z=a,e&&o.put(i,a,1)}}}}class I{constructor(e,t){this.point=e,this.z=t}apply(){this.point.z=this.z}}function x(e,{x:t,y:s,z:i,spatialReference:r}){return`${e}-${t}-${s}-${i??0}}-wkid:${r?.wkid}`}function C(){return[]}class O{filter(e,t){return t}notifyElevationSourceChange(){}}class A{filter(e,t){const{point:s,distance:i}=e,{z:r}=s;if(null==r)return t;if(0===t.length)return t;const n=function(e){return"number"==typeof e?{x:e,y:e,z:e}:e}(i),o=this._updateCandidatesTo3D(t,s,n).filter(M);return o.sort(U),o}_updateCandidatesTo3D(e,t,s){for(const i of e)switch(i.type){case"edge":k(i,t,s);continue;case"vertex":P(i,t,s);continue}return e}}function M(e){return e.distance<=1}function R(e=!1){return e?new A:new O}function k(e,t,{x:s,y:i,z:r}){const{start:n,end:o,target:a}=e;e.draped||function(e,t,s,i){const r=i.x-s.x,n=i.y-s.y,o=i.z-s.z,a=r*r+n*n+o*o,l=(t.x-s.x)*r+(t.y-s.y)*n+o*(t.z-s.z),u=Math.min(1,Math.max(0,l/a)),c=s.x+r*u,h=s.y+n*u,d=s.z+o*u;e.x=c,e.y=h,e.z=d}(a,t,n,o);const l=(t.x-a.x)/s,u=(t.y-a.y)/i,c=(t.z-a.z)/r;e.distance=Math.sqrt(l*l+u*u+c*c)}function P(e,t,{x:s,y:i,z:r}){const{target:n}=e,o=(t.x-n.x)/s,a=(t.y-n.y)/i,l=(t.z-n.z)/r,u=Math.sqrt(o*o+a*a+l*l);e.distance=u}function U(e,t){return e.distance-t.distance}var D=s(4718),q=s(799);function N(e=!1,t){return e?new H(t):new z}class z{async fetch(){return[]}notifySymbologyChange(){}}class H{constructor(e){this._getSymbologyCandidates=e,this._candidatesCache=new T.q(1024),this._cacheVersion=0}async fetch(e,t){if(0===e.length)return[];const s=[],i=[],r=this._candidatesCache;for(const t of e){const e=j(t),n=r.get(e);if(n)for(const e of n)i.push((0,D.o8)(e));else s.push(t),r.put(e,[],1)}if(0===s.length)return i;const o=this._cacheVersion,{candidates:a,sourceCandidateIndices:l}=await this._getSymbologyCandidates(s,t);if((0,n.Te)(t),o!==this._cacheVersion)return this.fetch(e,t);const u=[],{length:c}=a;for(let e=0;e<c;++e){const t=a[e],i=j(s[l[e]]),n=r.get(i);n.push(t),r.put(i,n,n.length),u.push((0,D.o8)(t))}return i.concat(u)}notifySymbologyChange(){this._candidatesCache.clear(),this._cacheVersion++}}function j(e){switch(e.type){case"vertex":{const{objectId:t,target:s}=e,i=`${t}-vertex-${s.x}-${s.y}-${s.z??0}`;return(0,q.Wm)(i).toString()}case"edge":{const{objectId:t,start:s,end:i}=e,r=`${t}-edge-${s.x}-${s.y}-${s.z??0}-to-${i.x}-${i.y}-${i.z??0}`;return(0,q.Wm)(r).toString()}default:return""}}var V,B=s(69622),G=s(4576),Z=s(60999),L=s(3483),W=s(13069),$=s(5443),J=s(19419),Q=s(90708),Y=s(60694),K=s(69418),X=s(80893);class ee{constructor(e,t){this.data=e,this.resolution=t,this.state={type:V.CREATED},this.alive=!0}process(e){switch(this.state.type){case V.CREATED:return this.state=this._gotoFetchCount(this.state,e),this.state.task.promise.then(e.resume,e.resume);case V.FETCH_COUNT:break;case V.FETCHED_COUNT:return this.state=this._gotoFetchFeatures(this.state,e),this.state.task.promise.then(e.resume,e.resume);case V.FETCH_FEATURES:break;case V.FETCHED_FEATURES:this.state=this._goToDone(this.state,e);case V.DONE:}return null}get debugInfo(){return{data:this.data,featureCount:this._featureCount,state:this._stateToString}}get _featureCount(){switch(this.state.type){case V.CREATED:case V.FETCH_COUNT:return 0;case V.FETCHED_COUNT:return this.state.featureCount;case V.FETCH_FEATURES:return this.state.previous.featureCount;case V.FETCHED_FEATURES:return this.state.features.length;case V.DONE:return this.state.previous.features.length}}get _stateToString(){switch(this.state.type){case V.CREATED:return"created";case V.FETCH_COUNT:return"fetch-count";case V.FETCHED_COUNT:return"fetched-count";case V.FETCH_FEATURES:return"fetch-features";case V.FETCHED_FEATURES:return"fetched-features";case V.DONE:return"done"}}_gotoFetchCount(e,t){return{type:V.FETCH_COUNT,previous:e,task:(0,Z.UT)((async e=>{const s=await(0,Z.DZ)(t.fetchCount(this,e));this.state.type===V.FETCH_COUNT&&(this.state=function(e,t){return{type:V.FETCHED_COUNT,featureCount:t,previous:e}}(this.state,s.ok?s.value:1/0))}))}}_gotoFetchFeatures(e,t){return{type:V.FETCH_FEATURES,previous:e,task:(0,Z.UT)((async s=>{const i=await(0,Z.DZ)(t.fetchFeatures(this,e.featureCount,s));this.state.type===V.FETCH_FEATURES&&(this.state=function(e,t){return{type:V.FETCHED_FEATURES,previous:e,features:t}}(this.state,i.ok?i.value:[]))}))}}_goToDone(e,t){return t.finish(this,e.features),{type:V.DONE,previous:e}}reset(){const e=this.state;switch(this.state={type:V.CREATED},e.type){case V.CREATED:case V.FETCHED_COUNT:case V.FETCHED_FEATURES:case V.DONE:break;case V.FETCH_COUNT:case V.FETCH_FEATURES:e.task.abort()}}intersects(e){return null==e||!this.data.extent||((0,J.VY)(e,te),(0,J.HY)(this.data.extent,te))}}!function(e){e[e.CREATED=0]="CREATED",e[e.FETCH_COUNT=1]="FETCH_COUNT",e[e.FETCHED_COUNT=2]="FETCHED_COUNT",e[e.FETCH_FEATURES=3]="FETCH_FEATURES",e[e.FETCHED_FEATURES=4]="FETCHED_FEATURES",e[e.DONE=5]="DONE"}(V||(V={}));const te=(0,J.vt)();let se=class extends B.A{get _minimumVerticesPerFeature(){switch(this.store?.featureStore.geometryType){case"esriGeometryPoint":case"esriGeometryMultipoint":return 1;case"esriGeometryPolygon":return 4;case"esriGeometryPolyline":return 2}}get _mandatoryOutFields(){const e=new Set;return this.objectIdField&&e.add(this.objectIdField),this.globalIdField&&e.add(this.globalIdField),e}set outFields(e){const t=this._get("outFields"),s=(0,L.KC)(e,this._mandatoryOutFields);(0,L.aI)(s,t)||(this._set("outFields",s),(0,L.Yy)(s,t)||this.refresh())}get outFields(){return this._get("outFields")??this._mandatoryOutFields}set filter(e){const t=this._get("filter"),s=this._filterProperties(e);JSON.stringify(t)!==JSON.stringify(s)&&this._set("filter",s)}set customParameters(e){const t=this._get("customParameters");JSON.stringify(t)!==JSON.stringify(e)&&this._set("customParameters",e)}get _configuration(){return{filter:this.filter,customParameters:this.customParameters,tileInfo:this.tileInfo,tileSize:this.tileSize}}set tileInfo(e){const t=this._get("tileInfo");t!==e&&(null!=e&&null!=t&&JSON.stringify(e)===JSON.stringify(t)||(this._set("tileInfo",e),this.store.tileInfo=e))}set tileSize(e){this._get("tileSize")!==e&&this._set("tileSize",e)}get updating(){return this._updatingHandles.updating}get hasZ(){return this.store.featureStore.hasZ}constructor(e){super(e),this.suspended=!0,this._historicMoment=null,this.tilesOfInterest=[],this.availability=0,this._pendingTiles=new Map,this._updatingHandles=new c.U}initialize(){this._initializeFetchExtent(),this._updatingHandles.add((()=>this._configuration),(()=>this.refresh())),this._updatingHandles.add((()=>this.tilesOfInterest),(()=>{this._updatePriorities(),this._process()}),{sync:!0,initial:!0,equals:(e,t)=>(0,G.aI)(e,t,(({id:e},{id:t})=>e===t))}),this.addHandles((0,o.z7)((()=>!this.suspended),(()=>this._process())))}_updatePriorities(){this.store.setPriorityOrderByKey(this.tilesOfInterest.map((e=>e.id??""))??[])}destroy(){this._pendingTiles.forEach((e=>this._deletePendingTile(e))),this._pendingTiles.clear(),this.store.destroy(),this.tilesOfInterest.length=0,this._updatingHandles.destroy()}refresh(){this.store.refresh(),this._pendingTiles.forEach((e=>this._deletePendingTile(e))),this._process()}async handleEdits(e){if(e.historicMoment&&(this._historicMoment=e.historicMoment),!e.addedFeatures.length&&!e.updatedFeatures.length&&!e.deletedFeatures.length)return;for(const e of this._pendingTiles.values())e.reset();const t={...e,deletedFeatures:e.deletedFeatures.map((({objectId:e,globalId:t})=>e&&-1!==e?e:this._lookupObjectIdByGlobalId(t)))},s=(0,Z.UT)((async e=>{try{await this.store.processEdits(t,((e,t)=>this._queryFeaturesById(e,t)),e),this._processPendingTiles()}catch(e){(0,n.QP)(e),l.A.getLogger(this).warn("Failed to apply edits",e)}}));this.addHandles(s),await this._updatingHandles.addPromise(s.promise)}setHistoricMoment(e){e?.getTime()!==this._historicMoment?.getTime()&&(this._historicMoment=e,this.refresh())}_initializeFetchExtent(){if(!this.capabilities.query.supportsExtent||!(0,Y.Wo)(this.url))return;const e=(0,Z.UT)((async e=>{try{const t=await(0,X.Jf)(this.url,new y.A({where:"1=1",outSpatialReference:this.spatialReference,cacheHint:this.capabilities.query.supportsCacheHint??void 0}),{query:this._configuration.customParameters,signal:e});this.store.extent=$.A.fromJSON(t.data?.extent)}catch(e){(0,n.QP)(e),l.A.getLogger(this).warn("Failed to fetch data extent",e)}}));this._updatingHandles.addPromise(e.promise.then((()=>this._process()))),this.addHandles(e)}get debugInfo(){return{numberOfFeatures:this.store.featureStore.numFeatures,tilesOfInterest:this.tilesOfInterest,pendingTiles:Array.from(this._pendingTiles.values()).map((e=>e.debugInfo)),storedTiles:this.store.debugInfo}}_process(){this._markTilesNotAlive(),this._createPendingTiles(),this._deletePendingTiles(),this._processPendingTiles()}_markTilesNotAlive(){for(const e of this._pendingTiles.values())e.alive=!1}_createPendingTiles(){if(this.suspended)return;const e=this._collectMissingTilesInfo();if(this._setAvailability(null==e?1:e.coveredArea/e.fullArea),null!=e)for(const{data:t,resolution:s}of e.missingTiles){const e=this._pendingTiles.get(t.id);e?(e.resolution=s,e.alive=!0):this._createPendingTile(t,s)}}_collectMissingTilesInfo(){let e=null;for(const t of this.tilesOfInterest){const s=this.store.process(t,((e,t)=>this._verifyTileComplexity(e,t)),this.outFields);null==e?e=s:e.prepend(s)}return e}_deletePendingTiles(){for(const e of this._pendingTiles.values())e.alive||this._deletePendingTile(e)}_processPendingTiles(){const e={fetchCount:(e,t)=>this._fetchCount(e,t),fetchFeatures:(e,t,s)=>this._fetchFeatures(e,t,s),finish:(e,t)=>this._finishPendingTile(e,t),resume:()=>this._processPendingTiles()};if(this._ensureFetchAllCounts(e))for(const t of this._pendingTiles.values())this._verifyTileComplexity(this.store.getFeatureCount(t.data),t.resolution)&&this._updatingHandles.addPromise(t.process(e))}_verifyTileComplexity(e,t){return this._verifyVertexComplexity(e)&&this._verifyFeatureDensity(e,t)}_verifyVertexComplexity(e){return e*this._minimumVerticesPerFeature<ne}_verifyFeatureDensity(e,t){if(null==this.tileInfo)return!1;const s=this.tileSize*t;return e*(oe/(s*s))<ae}_ensureFetchAllCounts(e){let t=!0;for(const s of this._pendingTiles.values())s.state.type<V.FETCHED_COUNT&&this._updatingHandles.addPromise(s.process(e)),s.state.type<=V.FETCH_COUNT&&(t=!1);return t}_finishPendingTile(e,t){this.store.add(e.data,t),this._deletePendingTile(e),this._updateAvailability()}_updateAvailability(){const e=this._collectMissingTilesInfo();this._setAvailability(null==e?1:e.coveredArea/e.fullArea)}_setAvailability(e){this._set("availability",e)}_createPendingTile(e,t){const s=new ee(e,t);return this._pendingTiles.set(e.id,s),s}_deletePendingTile(e){e.reset(),this._pendingTiles.delete(e.data.id)}async _fetchCount(e,t){return this.store.fetchCount(e.data,this.url,this._createCountQuery(e),{query:this.customParameters,timeout:re,signal:t})}async _fetchFeatures(e,t,s){let i=0;const r=[];let n=0,o=t;for(;;){const a=this._createFeaturesQuery(e),l=this._setPagingParameters(a,i,o),{features:u,exceededTransferLimit:c}=await this._queryFeatures(a,s);l&&(i+=a.num),n+=u.length;for(const e of u)r.push(e);if(o=t-n,!l||!c||o<=0)return r}}_filterProperties(e){return null==e?{where:"1=1",gdbVersion:void 0,timeExtent:void 0}:{where:e.where||"1=1",timeExtent:e.timeExtent,gdbVersion:e.gdbVersion}}_lookupObjectIdByGlobalId(e){const t=this.globalIdField,s=this.objectIdField;if(null==t)throw new Error("Expected globalIdField to be defined");let i=null;const r=e?(0,W.AG)(e):e;if(this.store.featureStore.forEach((e=>{r===(0,W.AG)(e.attributes[t])&&(i=e.objectId??e.attributes[s])})),null==i)throw new Error(`Expected to find a feature with globalId ${e}`);return i}_queryFeaturesById(e,t){const s=this._createFeaturesQuery();return s.objectIds=e,this._queryFeatures(s,t)}_queryFeatures(e,t){return this.capabilities.query.supportsFormatPBF?this._queryFeaturesPBF(e,t):this._queryFeaturesJSON(e,t)}async _queryFeaturesPBF(e,t){const{sourceSpatialReference:s}=this,{data:i}=await(0,X.IJ)(this.url,e,new K.S({sourceSpatialReference:s}),{query:this._configuration.customParameters,timeout:re,signal:t});return(0,Q.eY)(i)}async _queryFeaturesJSON(e,t){const{sourceSpatialReference:s}=this,{data:i}=await(0,X.eW)(this.url,e,s,{query:this._configuration.customParameters,timeout:re,signal:t});return(0,Q.q3)(i,this.objectIdField)}_createCountQuery(e){const t=this._createBaseQuery(e);return this.capabilities.query.supportsCacheHint&&(t.cacheHint=!0),t}_createFeaturesQuery(e=null){const t=this._createBaseQuery(e),s=null!=e?.data?this.store.getAttributesForTile(e?.data?.id):null,i=(0,L.KC)((0,L.iv)(this.outFields,s??new Set),this._mandatoryOutFields);return t.outFields=Array.from(i),t.returnGeometry=!0,null!=e&&(this.capabilities.query.supportsResultType?t.resultType="tile":this.capabilities.query.supportsCacheHint&&(t.cacheHint=!0)),t}_createBaseQuery(e){const t=new y.A({returnZ:this.hasZ,returnM:!1,historicMoment:this._historicMoment,geometry:null!=this.tileInfo&&null!=e?(0,J.w1)(e.data.extent,this.tileInfo.spatialReference):void 0}),s=this._configuration.filter;return null!=s&&(t.where=s.where,t.gdbVersion=s.gdbVersion,t.timeExtent=s.timeExtent),t.outSpatialReference=this.spatialReference,t}_setPagingParameters(e,t,s){if(!this.capabilities.query.supportsPagination)return!1;const{supportsMaxRecordCountFactor:i,supportsCacheHint:r,tileMaxRecordCount:n,maxRecordCount:o,supportsResultType:a}=this.capabilities.query,l=i?y.A.MAX_MAX_RECORD_COUNT_FACTOR:1,u=l*((a||r)&&n?n:o||ie);return e.start=t,i?(e.maxRecordCountFactor=Math.min(l,Math.ceil(s/u)),e.num=Math.min(s,e.maxRecordCountFactor*u)):e.num=Math.min(s,u),!0}};(0,i._)([(0,a.MZ)({constructOnly:!0})],se.prototype,"url",void 0),(0,i._)([(0,a.MZ)({constructOnly:!0})],se.prototype,"objectIdField",void 0),(0,i._)([(0,a.MZ)({constructOnly:!0})],se.prototype,"globalIdField",void 0),(0,i._)([(0,a.MZ)({constructOnly:!0})],se.prototype,"capabilities",void 0),(0,i._)([(0,a.MZ)({constructOnly:!0})],se.prototype,"sourceSpatialReference",void 0),(0,i._)([(0,a.MZ)({constructOnly:!0})],se.prototype,"spatialReference",void 0),(0,i._)([(0,a.MZ)({constructOnly:!0})],se.prototype,"store",void 0),(0,i._)([(0,a.MZ)({readOnly:!0})],se.prototype,"_minimumVerticesPerFeature",null),(0,i._)([(0,a.MZ)()],se.prototype,"_mandatoryOutFields",null),(0,i._)([(0,a.MZ)()],se.prototype,"outFields",null),(0,i._)([(0,a.MZ)()],se.prototype,"suspended",void 0),(0,i._)([(0,a.MZ)()],se.prototype,"_historicMoment",void 0),(0,i._)([(0,a.MZ)()],se.prototype,"filter",null),(0,i._)([(0,a.MZ)()],se.prototype,"customParameters",null),(0,i._)([(0,a.MZ)({readOnly:!0})],se.prototype,"_configuration",null),(0,i._)([(0,a.MZ)()],se.prototype,"tileInfo",null),(0,i._)([(0,a.MZ)()],se.prototype,"tileSize",null),(0,i._)([(0,a.MZ)()],se.prototype,"tilesOfInterest",void 0),(0,i._)([(0,a.MZ)({readOnly:!0})],se.prototype,"updating",null),(0,i._)([(0,a.MZ)({readOnly:!0})],se.prototype,"availability",void 0),(0,i._)([(0,a.MZ)()],se.prototype,"hasZ",null),se=(0,i._)([(0,u.$)("esri.views.interactive.snapping.featureSources.featureServiceSource.FeatureServiceTiledFetcher")],se);const ie=2e3,re=6e5,ne=1e6,oe=25,ae=1;var le=s(71903),ue=s(6518),ce=s(72802);class he{constructor(){this._store=new Map,this._priorities=new Map}get size(){return this._store.size}setPriorityOrderByKey(e){this._priorities.clear();for(let t=e.length-1;t>=0;t--)this._priorities.set(e[t],e.length-t)}hasLowerPriority(e){const t=this._priorities.get(e);if(null==t)return!0;for(const[e]of this._store){const s=this._priorities.get(e);if(null==s||s<t)return!0}return!1}someFromLowestToHighestPriority(e){const{_priorities:t}=this;for(const[s,i]of this._store)if(!t.has(s)&&e(i,s))return!0;for(const[s]of t){const t=this._store.get(s);if(t&&e(t,s))return!0}return!1}set(e,t){this._store.set(e,t)}delete(e){return this._store.delete(e)}get(e){return this._store.get(e)}has(e){return this._store.has(e)}clear(){this._store.clear()}values(){return this._store.values()}[Symbol.iterator](){return this._store[Symbol.iterator]()}}let de=class extends B.A{setPriorityOrderByKey(e){this._tiles.setPriorityOrderByKey(e)}get _memoryLimitExceeded(){return this.featureStore.usedMemory>=this.maximumByteSize}constructor(e){super(e),this.tileInfo=null,this.extent=null,this.maximumByteSize=10*le.u.MEGABYTES,this._tileBounds=new ue.F,this._tiles=new he,this._refCounts=new Map,this._tileFeatureCounts=new Map,this._tmpBoundingRect=(0,J.vt)()}add(e,t){for(const e of t)this._referenceFeature(e.objectId);const s=this.featureStore.upsertMany(t),i=s.map((e=>new Set(Object.keys(e.attributes)))).reduce(((e,t)=>(0,L.E$)(e,t)),new Set(Object.keys(s[0]?.attributes??[]))),r=this._memoryLimitExceeded;this._addTileStorage(e,new Set(s.map((e=>e.objectId))),i),r&&this._applyCacheMemoryLimits()}_applyCacheMemoryLimits(){if(!this._memoryLimitExceeded)return;const{_tiles:e,featureStore:t,maximumByteSize:s}=this;e.someFromLowestToHighestPriority((e=>!this._memoryLimitExceeded||t.usedMemory-this._estimateRemoveTileMemoryReduction(e)<s||(this._removeTileStorage(e),!1)))}_estimateRemoveTileMemoryReduction(e){let t=0;for(const s of e.objectIds)if(1===this._refCounts.get(s)){const e=this.featureStore.getFeature(s);e&&(t+=this.featureStore.estimateFeatureUsedMemory?.(e)??0)}return t}getAttributesForTile(e){return e?this._tiles.get(e)?.attributeKeys:null}destroy(){this.clear(),this._tileFeatureCounts.clear()}clear(){this.featureStore.clear(),this._tileBounds.clear(),this._tiles.clear(),this._refCounts.clear()}refresh(){this.clear(),this._tileFeatureCounts.clear()}processEdits(e,t,s){return this._processEditsDelete(e.deletedFeatures.concat(e.updatedFeatures)),this._processEditsRefetch(e.addedFeatures.concat(e.updatedFeatures),t,s)}_addTileStorage(e,t,s){const i=e.id;this._tiles.set(i,new pe(e,t,s)),this._tileBounds.set(i,e.extent),this._tileFeatureCounts.set(i,t.size)}_remove({id:e}){const t=this._tiles.get(e);t&&this._removeTileStorage(t)}_removeTileStorage(e){const t=[];for(const s of e.objectIds)this._unreferenceFeature(s)===me.REMOVED&&t.push(s);this.featureStore.removeManyById(t);const s=e.data.id;this._tiles.delete(s),this._tileBounds.delete(s)}_processEditsDelete(e){this.featureStore.removeManyById(e);for(const t of this._tiles.values()){for(const s of e)t.objectIds.delete(s);this._tileFeatureCounts.set(t.data.id,t.objectIds.size)}for(const t of e)this._refCounts.delete(t)}async _processEditsRefetch(e,t,s){if(!e.length)return;const i=(await t(e,s)).features,{hasZ:r,hasM:n}=this.featureStore;for(const e of i){const t=(0,Q.jQ)(this._tmpBoundingRect,e.geometry,r,n);null!=t&&this._tileBounds.forEachInBounds(t,(t=>{const s=this._tiles.get(t);this.featureStore.add(e);const i=e.objectId;s.objectIds.has(i)||(s.objectIds.add(i),this._referenceFeature(i),this._tileFeatureCounts.set(s.data.id,s.objectIds.size))}))}}process(e,t=()=>!0,s){if(null==this.tileInfo||!e.extent||null!=this.extent&&!(0,J.HY)((0,J.VY)(this.extent,this._tmpBoundingRect),e.extent))return new _e(e);if(this._memoryLimitExceeded&&!this._tiles.hasLowerPriority(e.id??""))return new _e(e);const i=this.getAttributesForTile(e.id);if((0,L.Yy)(s,i))return new _e(e);const r=this._createTileTree(e,this.tileInfo);return this._simplify(r,t,null,0,1),this._collectMissingTiles(e,r,this.tileInfo,s)}get debugInfo(){return Array.from(this._tiles.values()).map((({data:e})=>({data:e,featureCount:this._tileFeatureCounts.get(e.id)||0})))}getFeatureCount(e){return this._tileFeatureCounts.get(e.id)??0}async fetchCount(e,t,s,i){const r=this._tileFeatureCounts.get(e.id);if(null!=r)return r;const n=await(0,X.gW)(t,s,i);return this._tileFeatureCounts.set(e.id,n.data.count),n.data.count}_createTileTree(e,t){const s=new fe(e.level,e.row,e.col);return t.updateTileInfo(s,g.A.ExtrapolateOptions.POWER_OF_TWO),this._tileBounds.forEachInBounds(e.extent,(i=>{const r=this._tiles.get(i)?.data;r&&function(e,t){if(!e||!t)return!1;if(e.level===t.level)return e.row===t.row&&e.col===t.col;const s=e.level<t.level,i=s?e:t,r=s?t:e,n=1<<r.level-i.level;return Math.floor(r.row/n)===i.row&&Math.floor(r.col/n)===i.col}(e,r)&&this._populateChildren(s,r,t,this._tileFeatureCounts.get(r.id)||0)})),s}_populateChildren(e,t,s,i){const r=t.level-e.level-1;if(r<0)return void(e.isLeaf=!0);const n=t.row>>r,o=t.col>>r,a=e.row<<1,l=o-(e.col<<1)+(n-a<<1),u=e.children[l];if(null!=u)this._populateChildren(u,t,s,i);else{const r=new fe(e.level+1,n,o);s.updateTileInfo(r,g.A.ExtrapolateOptions.POWER_OF_TWO),e.children[l]=r,this._populateChildren(r,t,s,i)}}_simplify(e,t,s,i,r){const n=r*r;if(e.isLeaf)return t(this.getFeatureCount(e),r)?0:(this._remove(e),null!=s&&(s.children[i]=null),n);const o=r/2,a=o*o;let l=0;for(let s=0;s<e.children.length;s++){const i=e.children[s];l+=null!=i?this._simplify(i,t,e,s,o):a}return 0===l?this._mergeChildren(e):1-l/n<ye&&(this._purge(e),null!=s&&(s.children[i]=null),l=n),l}_mergeChildren(e){const t=new Set;let s;this._forEachLeaf(e,(e=>{const i=this._tiles.get(e.id);if(i){s=s?(0,L.E$)(s,i.attributeKeys):new Set(i.attributeKeys);for(const e of i.objectIds)t.has(e)||(t.add(e),this._referenceFeature(e));this._remove(e)}})),this._addTileStorage(e,t,s??new Set),e.isLeaf=!0,e.children[0]=e.children[1]=e.children[2]=e.children[3]=null,this._tileFeatureCounts.set(e.id,t.size)}_forEachLeaf(e,t){for(const s of e.children)null!=s&&(s.isLeaf?t(s):this._forEachLeaf(s,t))}_purge(e){if(null!=e)if(e.isLeaf)this._remove(e);else for(let t=0;t<e.children.length;t++){const s=e.children[t];this._purge(s),e.children[t]=null}}_collectMissingTiles(e,t,s,i){const r=new ge(s,e,this.extent);return this._collectMissingTilesRecurse(t,r,1,i),r.info}_collectMissingTilesRecurse(e,t,s,i){const r=this.getAttributesForTile(e.id),n=r&&!(0,L.Yy)(i,r);if(n&&t.addMissing(e.level,e.row,e.col,s),e.isLeaf)return;if(!e.hasChildren)return void(n||t.addMissing(e.level,e.row,e.col,s));const o=s/2;for(let s=0;s<e.children.length;s++){const r=e.children[s];null==r?t.addMissing(e.level+1,(e.row<<1)+((2&s)>>1),(e.col<<1)+(1&s),o):this._collectMissingTilesRecurse(r,t,o,i)}}_referenceFeature(e){const t=(this._refCounts.get(e)||0)+1;return this._refCounts.set(e,t),1===t?me.ADDED:me.UNCHANGED}_unreferenceFeature(e){const t=(this._refCounts.get(e)||0)-1;return 0===t?(this._refCounts.delete(e),me.REMOVED):(t>0&&this._refCounts.set(e,t),me.UNCHANGED)}get test(){}};(0,i._)([(0,a.MZ)({constructOnly:!0})],de.prototype,"featureStore",void 0),(0,i._)([(0,a.MZ)()],de.prototype,"tileInfo",void 0),(0,i._)([(0,a.MZ)()],de.prototype,"extent",void 0),(0,i._)([(0,a.MZ)()],de.prototype,"maximumByteSize",void 0),de=(0,i._)([(0,u.$)("esri.views.interactive.snapping.featureSources.featureServiceSource.FeatureServiceTileStore")],de);class pe{constructor(e,t,s){this.data=e,this.objectIds=t,this.attributeKeys=s}}class fe{constructor(e,t,s){this.level=e,this.row=t,this.col=s,this.isLeaf=!1,this.extent=null,this.children=[null,null,null,null]}get hasChildren(){return!this.isLeaf&&(null!=this.children[0]||null!=this.children[1]||null!=this.children[2]||null!=this.children[3])}}class _e{constructor(e,t=[]){this.missingTiles=t,this.fullArea=0,this.coveredArea=0,this.fullArea=(0,J.Wc)(e.extent),this.coveredArea=this.fullArea}prepend(e){this.missingTiles=e.missingTiles.concat(this.missingTiles),this.coveredArea+=e.coveredArea,this.fullArea+=e.fullArea}}class ge{constructor(e,t,s){this._tileInfo=e,this._extent=null,this.info=new _e(t),null!=s&&(this._extent=(0,J.VY)(s))}addMissing(e,t,s,i){const r=new ce.U(null,e,t,s);this._tileInfo.updateTileInfo(r,g.A.ExtrapolateOptions.POWER_OF_TWO),null==r.extent||null!=this._extent&&!(0,J.HY)(this._extent,r.extent)||(this.info.missingTiles.push({data:r,resolution:i}),this.info.coveredArea-=(0,J.Wc)(r.extent))}}const ye=.18751;var me;!function(e){e[e.ADDED=0]="ADDED",e[e.REMOVED=1]="REMOVED",e[e.UNCHANGED=2]="UNCHANGED"}(me||(me={}));let Te=class extends r.A.EventedAccessor{constructor(){super(...arguments),this._isInitializing=!0,this.remoteClient=null,this._whenSetup=(0,n.Tw)(),this._elevationAligner=E(),this._elevationFilter=R(),this._symbologyCandidatesFetcher=N(),this._updatingHandles=new c.U,this._alignPointsInFeatures=async(e,t)=>{const s={query:e},i=await this.remoteClient.invoke("alignElevation",s,{signal:t});return(0,n.Te)(t),i},this._getSymbologyCandidates=async(e,t)=>{const s={candidates:e,spatialReference:this._spatialReference.toJSON()},i=await this.remoteClient.invoke("getSymbologyCandidates",s,{signal:t});return(0,n.Te)(t),i}}get updating(){return this._isInitializing||this._updatingHandles.updating||this._featureFetcher.updating}destroy(){this._featureFetcher?.destroy(),this._queryEngine?.destroy(),this._featureStore?.clear()}async setup(e){if(this.destroyed)return{result:{}};const{geometryType:t,objectIdField:s,timeInfo:i,fieldsIndex:r}=e.serviceInfo,{hasZ:n}=e,a=h.A.fromJSON(e.spatialReference);this._spatialReference=a,this._featureStore=new f.A({...e.serviceInfo,hasZ:n,hasM:!1}),this._featureStore.estimateFeatureUsedMemory=e=>e.usedMemory,this._queryEngine=new _.do({spatialReference:e.spatialReference,featureStore:this._featureStore,geometryType:t,fieldsIndex:r,hasZ:n,hasM:!1,objectIdField:s,timeInfo:i}),this._featureFetcher=new se({store:new de({featureStore:this._featureStore}),url:e.serviceInfo.url,objectIdField:e.serviceInfo.objectIdField,globalIdField:e.serviceInfo.globalIdField,capabilities:e.serviceInfo.capabilities,spatialReference:a,sourceSpatialReference:h.A.fromJSON(e.serviceInfo.spatialReference),customParameters:e.configuration.customParameters});const l="3d"===e.configuration.viewType;return this._elevationAligner=E(l,{elevationInfo:null!=e.elevationInfo?m.A.fromJSON(e.elevationInfo):null,alignPointsInFeatures:this._alignPointsInFeatures}),this._elevationFilter=R(l),this.addHandles([(0,o.wB)((()=>this._featureFetcher.availability),(e=>this.emit("notify-availability",{availability:e})),o.OH),(0,o.wB)((()=>this.updating),(()=>this._notifyUpdating()))]),this._whenSetup.resolve(),this._isInitializing=!1,this.configure(e.configuration)}async configure(e){return await this._updatingHandles.addPromise(this._whenSetup.promise),this._updateFeatureFetcherConfiguration(e),Fe}async setSuspended(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),this._featureFetcher.suspended=e,Fe}async updateOutFields(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),this._featureFetcher.outFields=new Set(e??[]),Fe}async fetchCandidates(e,t){await this._whenSetup.promise,(0,n.Te)(t);const s=function(e){if(!e.filter)return{...e,query:{where:"1=1"}};const{distance:t,units:s,spatialRel:i,where:r,timeExtent:n,objectIds:o}=e.filter,a={geometry:e.filter.geometry?(0,d.rS)(e.filter.geometry):void 0,distance:t,units:s,spatialRel:i,timeExtent:n,objectIds:o,where:r??"1=1"};return{...e,query:a}}(e),i=t?.signal,r=await(0,p.J)(this._queryEngine,s,i);(0,n.Te)(i);const o=await this._elevationAligner.alignCandidates(r.candidates,h.A.fromJSON(e.point.spatialReference)??h.A.WGS84,i);(0,n.Te)(i);const a=await this._symbologyCandidatesFetcher.fetch(o,i);(0,n.Te)(i);const l=0===a.length?o:o.concat(a);return{result:{candidates:this._elevationFilter.filter(s,l)}}}async updateTiles(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),this._featureFetcher.tileSize=e.tileSize,this._featureFetcher.tilesOfInterest=e.tiles,this._featureFetcher.tileInfo=null!=e.tileInfo?g.A.fromJSON(e.tileInfo):null,Fe}async refresh(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),this._featureFetcher.refresh(),Fe}async whenNotUpdating(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),await(0,o.C_)((()=>!this.updating),t),(0,n.Te)(t),Fe}async getDebugInfo(e,t){return(0,n.Te)(t),{result:this._featureFetcher.debugInfo}}async handleEdits(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),await this._updatingHandles.addPromise(this._featureFetcher.handleEdits(e)),(0,n.Te)(t),Fe}async setHistoricMoment(e,t){return this._featureFetcher.setHistoricMoment(e.moment),Fe}async notifyElevationSourceChange(e,t){return this._elevationAligner.notifyElevationSourceChange(),Fe}async notifySymbologyChange(e,t){return this._symbologyCandidatesFetcher.notifySymbologyChange(),Fe}async setSymbologySnappingSupported(e){return this._symbologyCandidatesFetcher=N(e,this._getSymbologyCandidates),Fe}_updateFeatureFetcherConfiguration(e){this._featureFetcher.filter=null!=e.filter?y.A.fromJSON(e.filter):null,this._featureFetcher.customParameters=e.customParameters}_notifyUpdating(){this.emit("notify-updating",{updating:this.updating})}};(0,i._)([(0,a.MZ)({readOnly:!0})],Te.prototype,"updating",null),(0,i._)([(0,a.MZ)()],Te.prototype,"_isInitializing",void 0),Te=(0,i._)([(0,u.$)("esri.views.interactive.snapping.featureSources.featureServiceSource.FeatureServiceSnappingSourceWorker")],Te);const we=Te,Fe={result:{}}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[5202],{67996:(e,t,n)=>{n.d(t,{cZ:()=>D,XW:()=>O,fe:()=>F});var i,r,o=n(78888),s=n(49186),a=n(91869),l=(n(90708),n(92722)),u=n(16930);class d{constructor(){this.version="",this.queryResult=new p}}class p{constructor(){this.featureResult=new c}}class c{constructor(){this.objectIdFieldName="",this.uniqueIdField=new h,this.globalIdFieldName="",this.geohashFieldName="",this.geometryProperties=new y,this.geometryType=null,this.spatialReference=new u.A,this.exceededTransferLimit=!1,this.hasZ=!1,this.hasM=!1,this.transform=new m,this.fields=[],this.fieldNameToAttributeIndexMap={},this.values=[],this.features=[],this.geometryFields=[]}}class h{constructor(){this.name="",this.isSystemMaintained=!1}}class y{constructor(){this.shapeAreaFieldName="",this.shapeLengthFieldName="",this.units=""}}class m{constructor(){this.quantizeOriginPosition="upperLeft",this.scale=new f,this.translate=new g}}class f{constructor(){this.xScale=0,this.yScale=0,this.mScale=0,this.zScale=0}}class g{constructor(){this.xTranslate=0,this.yTranslate=0,this.mTranslate=0,this.zTranslate=0}}class _{constructor(){this.name="",this.fieldType="esriFieldTypeString",this.alias="",this.sqlType="sqlTypeVarchar",this.domain="",this.defaultValue=""}}class b{constructor(){this.attributes=[],this.compressedGeometry=new w,this.centroid=new w,this.aggregateGeometries=[]}}class w{constructor(){this.geometryType=null,this.lengths=[],this.coords=[]}}(r=i||(i={})).ELEMENTUID="ELEMENTUID",r.TYPENAME="TYPENAME";const I=[i.ELEMENTUID,i.TYPENAME];var T,M;!function(e){e[e.ELEMENTUID=0]="ELEMENTUID",e[e.TYPENAME=1]="TYPENAME"}(T||(T={})),function(e){e[e.ELEMENTUID=0]="ELEMENTUID",e[e.TYPENAME=1]="TYPENAME",e[e.FROMUID=2]="FROMUID",e[e.TOUID=3]="TOUID"}(M||(M={}));var v,x,E,A,S=n(45724),N=n(35448);function C(e){const t=new w;t.geometryType=N.bV[e.geometry_type.value];const n=[],i=[];for(let t=0;t<e.lengths.length;t++)n.push(e.lengths[t]);for(let t=0;t<e.coords.length;t++)i.push(e.coords[t]);return t.lengths=n,t.coords=i,t}function L(e){const t=new _;return t.name=e.name,t.alias=e.alias,t.fieldType=N.r5[e.field_type.value],t.sqlType=E[e.sql_type.value],t.domain=e.domain,t.defaultValue=e.default_value,t}function k(e){const t=L(e);return t.geometryType=N.bV[e.geometry_type.value],t}function R(e){const t=new m;t.quantizeOriginPosition=x[e.quantizeOriginPosition.value];const n=t.scale,i=e.scale;n.xScale=i.xScale,n.yScale=i.yScale,n.mScale=i.mScale,n.zScale=i.zScale;const r=t.translate,o=e.translate;return r.xTranslate=o.xTranslate,r.yTranslate=o.yTranslate,r.mTranslate=o.mTranslate,r.zTranslate=o.zTranslate,t}async function D(e,t){t??=!1;const n={generateAllSublayers:t,namedTypeDefinitions:new Map};return await async function(e){const t=await(0,o.A)(e,{responseType:"array-buffer"}),n=await t.data;return async function(e){const t=new((await(0,S.I)()).MapOfObjectIdentifierSetsDecoder),n=t.decode(new Uint8Array(e)),i=new Map;if(0!==n.error_code)throw new s.A("knowledge-graph:layer-support-utils",n.error_message);const r=t.get_map_of_identifier_sets(),o=r.keys,a=o.size();for(let e=0;e<a;e++){const t=o.get(e),n=r.query_identifier_set(t),a=[];if(n.id_array_type.value===A.GLOBALID_ARRAY){const e=n.get_globalid_array(),t=e.count();for(let n=0;n<t;n++)a.push(e.get_globalid_at(n))}else if(n.id_array_type.value===A.IDENTIFIER_ARRAY){const e=n.get_identifier_array(),t=e.count();for(let n=0;n<t;n++)a.push(e.get_identifier_at(n).toString())}else if(n.id_array_type.value===A.STRING_ARRAY){const e=n.get_string_array(),t=e.count();for(let n=0;n<t;n++)a.push(e.get_string_at(n))}else{if(n.id_array_type.value!==A.OID_ARRAY)throw new s.A("knowledge-graph:layer-support-utils","Tried to encode an unexpected ID Array type.");{const e=n.get_oid_array(),t=e.count();for(let n=0;n<t;n++)a.push(e.get_objectid_at(n).toString())}}i.set(t,a)}return t.delete(),i}(new Uint8Array(n))}(e).then((e=>{!function(e,t){for(const[n,i]of e){const e=(0,a.tE)(t.namedTypeDefinitions,n,(()=>({useAllData:!1,members:new Map})));for(const t of i)e.members.has(t)||e.members.set(t,{id:t})}}(e,n)})),n}async function F(e){const t=await(0,S.I)(),n=new t.MapOfObjectIdentifierSets;!function(e,t,n){for(const[i,r]of n.namedTypeDefinitions){if(!r.members||r.useAllData)continue;const n=r.members.keys();let o=!1,s=!0;const a=new t.ObjectIdArray,l=new t.StringArray,u=new t.GlobalIdArray,d=new t.IdentifierArray,p=new t.ObjectIdentifierSet;for(const e of n)s&&(o=!isNaN(Number(e)),s=!1),o?a.add_objectid(Number(e)):(l.add_string(e),u.add_globalid(e)),d.add_identifier(e);p.set_oid_array(a),p.set_string_array(l),p.set_globalid_array(u),p.set_identifier_array(d),a.delete(),l.delete(),u.delete(),d.delete(),e.put_identifier_set(i,p),p.delete()}}(n,t,e);const i=new t.MapOfObjectIdentifierSetsEncoder;try{i.set_map_of_identifier_sets(n),i.encode();const e=i.get_encoding_result();if(0!==e.error.error_code)throw new s.A("knowledge-graph:layer-support-utils",e.error.error_message);const t=structuredClone(e.get_byte_buffer());return i.delete(),t}finally{n.delete()}}async function j(e){const t=await(0,o.A)(e,{responseType:"array-buffer"});return async function(e){const t=new((await(0,S.I)()).FeatureCollectionDecoder),n=t.decode(new Uint8Array(e));if(0!==n.error_code)throw new s.A("knowledge-graph:layer-support-utils",n.error_message);const i=function(e){const t=new d;t.version=e.version;const n=e.get_query_result();if(0!==n.results_type.value)throw new Error("Got a non-feature collection type");const i=n.get_feature_result(),r=t.queryResult.featureResult;r.objectIdFieldName=i.objectid_field_name,r.exceededTransferLimit=i.exceeded_transfer_limit,r.hasM=i.has_m,r.hasZ=i.has_z,r.geometryType=N.bV[i.geometry_type.value],r.globalIdFieldName=i.globalid_field_name,r.geohashFieldName=i.geohash_field_name;const o=r.uniqueIdField,s=i.unique_id_field;o.name=s.name,o.isSystemMaintained=s.isSystemMaintained;const a=r.geometryProperties,l=i.geometry_properties;a.shapeAreaFieldName=l.shapeAreaFieldName,a.shapeLengthFieldName=l.shapeLengthFieldName,a.units=l.units;const u=r.spatialReference,p=i.spatial_reference;u.wkid=p.wkid,u.latestWkid=p.latestWkid,u.vcsWkid=p.vcsWkid,u.latestVcsWkid=p.latestVcsWkid,u.wkt=p.wkt,r.transform=R(i.transform);const c=r.fields,h=r.fieldNameToAttributeIndexMap,y=i.fields,m=y.size();for(let e=0;e<m;e++){const t=y.get(e),n=L(t);c.push(n),h[n.name]=e,t.delete()}y.delete();const f=r.values,g=i.values_count();for(let e=0;e<g;e++)f.push(i.get_value_at(e));const _=r.features,w=i.features,T=w.size();if(T>0)for(const e of I)if(void 0===h[e])throw new Error(`Feature collection missing required attribute: ${e}`);for(let e=0;e<T;e++){const t=new b,n=w.get(e),i=t.attributes,r=n.attributes_count();for(let e=0;e<r;e++)i.push(n.get_attribute_at(e));const o=n.get_compressed_geometry();o&&(t.compressedGeometry=C(o),t.centroid=C(n.get_centroid()));const s=t.aggregateGeometries,a=n.aggregate_geometries,l=a.size();for(let e=0;e<l;e++){const t=a.get(e),n=C(t);s.push(n),t.delete()}a.delete(),_.push(t),n.delete()}w.delete();const M=r.geometryFields,v=i.geometry_fields,x=v.size();for(let e=0;e<x;e++){const t=v.get(e),n=k(t);M.push(n),t.delete()}return v.delete(),t}(t.get_feature_collection());return t.delete(),i}(await t.data)}function B(e,t){if(!e?.queryResult?.featureResult)return t;const n=e.queryResult.featureResult.fieldNameToAttributeIndexMap;for(const r of e.queryResult.featureResult.features){const e=r.attributes[n[i.TYPENAME]],o=(0,a.tE)(t.namedTypeDefinitions,e,(()=>({useAllData:!1,members:new Map}))),s=r.attributes[n[i.ELEMENTUID]];if(r.compressedGeometry?.coords?.length>0){let e=r.compressedGeometry.lengths;"esriGeometryPoint"===r.compressedGeometry.geometryType&&(e=[]),o.members.set(s,{id:s,linkChartLocation:new l.A(e,r.compressedGeometry.coords)})}else o.members.set(s,{id:s})}return t}!function(e){e[e.featureResult=0]="featureResult",e[e.countResult=1]="countResult",e[e.idsResult=2]="idsResult"}(v||(v={})),function(e){e[e.upperLeft=0]="upperLeft",e[e.lowerLeft=1]="lowerLeft"}(x||(x={})),function(e){e[e.sqlTypeBigInt=0]="sqlTypeBigInt",e[e.sqlTypeBinary=1]="sqlTypeBinary",e[e.sqlTypeBit=2]="sqlTypeBit",e[e.sqlTypeChar=3]="sqlTypeChar",e[e.sqlTypeDate=4]="sqlTypeDate",e[e.sqlTypeDecimal=5]="sqlTypeDecimal",e[e.sqlTypeDouble=6]="sqlTypeDouble",e[e.sqlTypeFloat=7]="sqlTypeFloat",e[e.sqlTypeGeometry=8]="sqlTypeGeometry",e[e.sqlTypeGUID=9]="sqlTypeGUID",e[e.sqlTypeInteger=10]="sqlTypeInteger",e[e.sqlTypeLongNVarchar=11]="sqlTypeLongNVarchar",e[e.sqlTypeLongVarbinary=12]="sqlTypeLongVarbinary",e[e.sqlTypeLongVarchar=13]="sqlTypeLongVarchar",e[e.sqlTypeNChar=14]="sqlTypeNChar",e[e.sqlTypeNVarChar=15]="sqlTypeNVarChar",e[e.sqlTypeOther=16]="sqlTypeOther",e[e.sqlTypeReal=17]="sqlTypeReal",e[e.sqlTypeSmallInt=18]="sqlTypeSmallInt",e[e.sqlTypeSqlXml=19]="sqlTypeSqlXml",e[e.sqlTypeTime=20]="sqlTypeTime",e[e.sqlTypeTimestamp=21]="sqlTypeTimestamp",e[e.sqlTypeTimestamp2=22]="sqlTypeTimestamp2",e[e.sqlTypeTinyInt=23]="sqlTypeTinyInt",e[e.sqlTypeVarbinary=24]="sqlTypeVarbinary",e[e.sqlTypeVarchar=25]="sqlTypeVarchar"}(E||(E={})),function(e){e[e.OID_ARRAY=0]="OID_ARRAY",e[e.GLOBALID_ARRAY=1]="GLOBALID_ARRAY",e[e.STRING_ARRAY=2]="STRING_ARRAY",e[e.IDENTIFIER_ARRAY=3]="IDENTIFIER_ARRAY"}(A||(A={}));const O={fetchAndConvertSerializedLinkChart:e=>async function(e){const t=[],n={generateAllSublayers:!1,namedTypeDefinitions:new Map};return e.entitiesUrl&&t.push(j(e.entitiesUrl).then((e=>{B(e,n)}))),e.relationshipsUrl&&t.push(j(e.relationshipsUrl).then((e=>{B(e,n)}))),await Promise.all(t),n}(e)}},75503:(e,t,n)=>{n.d(t,{E:()=>x,w:()=>a});var i=n(4576),r=n(21818),o=(n(44208),n(3694)),s=n(11006);class a{constructor(e=9,t){this._compareMinX=c,this._compareMinY=h,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(),I.prune(),T.prune(),M.prune(),v.prune()}all(e){l(this._data,e)}search(e,t){let n=this._data;const i=this._toBBox;if(b(e,n))for(I.clear();n;){for(let r=0,o=n.children.length;r<o;r++){const o=n.children[r],s=n.leaf?i(o):o;b(e,s)&&(n.leaf?t(o):_(e,s)?l(o,t):I.push(o))}n=I.pop()}}collides(e){let t=this._data;const n=this._toBBox;if(!b(e,t))return!1;for(I.clear();t;){for(let i=0,r=t.children.length;i<r;i++){const r=t.children[i],o=t.leaf?n(r):r;if(b(e,o)){if(t.leaf||_(e,o))return!0;I.push(r)}}t=I.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 A([]),this}remove(e){if(!e)return this;let t,n=this._data,o=null,s=0,a=!1;const l=this._toBBox(e);for(M.clear(),v.clear();n||M.length>0;){if(n||(n=M.pop(),o=M.data[M.length-1],s=v.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),M.push(n),this._condense(M),this;a||n.leaf||!_(n,l)?o?(s++,n=o.children[s],a=!1):n=null:(M.push(n),v.push(s),s=0,o=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 o=this._maxEntries;if(r<=o){const i=new A(e.slice(t,n+1));return u(i,this._toBBox),i}i||(i=Math.ceil(Math.log(r)/Math.log(o)),o=Math.ceil(r/o**(i-1)));const s=new S([]);s.height=i;const a=Math.ceil(r/o),l=a*Math.ceil(Math.sqrt(o));w(e,t,n,l,this._compareMinX);for(let r=t;r<=n;r+=l){const t=Math.min(r+l-1,n);w(e,r,t,a,this._compareMinY);for(let n=r;n<=t;n+=a){const r=Math.min(n+a-1,t);s.children.push(this._build(e,n,r,i-1))}}return u(s,this._toBBox),s}_insert(e,t,n){const i=this._toBBox,r=n?e:i(e);M.clear();const o=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 o=0,s=t.children.length;o<s;o++){const s=t.children[o],a=y(s),l=f(e,s)-a;l<r?(r=l,i=a<i?a:i,n=s):l===r&&a<i&&(i=a,n=s)}t=n||t.children[0]}return t}(r,this._data,t,M);for(o.children.push(e),p(o,r);t>=0&&M.data[t].children.length>this._maxEntries;)this._split(M,t),t--;!function(e,t,n){for(let i=n;i>=0;i--)p(t.data[i],e)}(r,M,t)}_split(e,t){const n=e.data[t],i=n.children.length,r=this._minEntries;this._chooseSplitAxis(n,r,i);const o=this._chooseSplitIndex(n,r,i);if(!o)return;const s=n.children.splice(o,n.children.length-o),a=n.leaf?new A(s):new S(s);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 S([e,t]),this._data.height=e.height+1,u(this._data,this._toBBox)}_chooseSplitIndex(e,t,n){let i,r,o;i=r=1/0;for(let s=t;s<=n-t;s++){const t=d(e,0,s,this._toBBox),a=d(e,s,n,this._toBBox),l=g(t,a),u=y(t)+y(a);l<i?(i=l,o=s,r=u<r?u:r):l===i&&u<r&&(r=u,o=s)}return o}_chooseSplitAxis(e,t,n){const i=e.leaf?this._compareMinX:c,r=e.leaf?this._compareMinY:h;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,o=d(e,0,t,r),s=d(e,n-t,n,r);let a=m(o)+m(s);for(let i=t;i<n-t;i++){const t=e.children[i];p(o,e.leaf?r(t):t),a+=m(o)}for(let i=n-t-1;i>=t;i--){const t=e.children[i];p(s,e.leaf?r(t):t),a+=m(s)}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],o=r.children;o.splice((0,i.qh)(o,n,o.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(T.clear();n;){if(!0===n.leaf)for(const e of n.children)t((0,r.zI)(e));else T.pushArray(n.children);n=T.pop()??null}}function u(e,t){d(e,0,e.children.length,t,e)}function d(e,t,n,i,r){r||(r=new A([])),r.minX=1/0,r.minY=1/0,r.maxX=-1/0,r.maxY=-1/0;for(let o,s=t;s<n;s++)o=e.children[s],p(r,e.leaf?i(o):o);return r}function p(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 c(e,t){return e.minX-t.minX}function h(e,t){return e.minY-t.minY}function y(e){return(e.maxX-e.minX)*(e.maxY-e.minY)}function m(e){return e.maxX-e.minX+(e.maxY-e.minY)}function f(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),o=Math.min(e.maxY,t.maxY);return Math.max(0,r-n)*Math.max(0,o-i)}function _(e,t){return e.minX<=t.minX&&e.minY<=t.minY&&t.maxX<=e.maxX&&t.maxY<=e.maxY}function b(e,t){return t.minX<=e.maxX&&t.minY<=e.maxY&&t.maxX>=e.minX&&t.maxY>=e.minY}function w(e,t,n,i,r){const o=[t,n];for(;o.length;){const t=o.pop(),n=o.pop();if(t-n<=i)continue;const a=n+Math.ceil((t-n)/i/2)*i;(0,s.q)(e,a,n,t,r),o.push(n,a,a,t)}}const I=new o.A,T=new o.A,M=new o.A,v=new o.A({deallocator:void 0});class x{constructor(){this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0}}class E extends x{constructor(){super(...arguments),this.height=1,this.indexHint=new i.vW}}class A extends E{constructor(e){super(),this.children=e,this.leaf=!0}}class S extends E{constructor(e){super(),this.children=e,this.leaf=!1}}},39516:(e,t,n)=>{let i;async function r(){return null==i&&(i=n.e(4123).then(n.bind(n,44123)).then((e=>new e.WhereClauseCache(500,500)))),i}async function o(e,t){const n=await r(),i=n.get(e,t);if(null==i)throw n.getError(e,t);return i}function s(e,t){return e||=null,t||=null,"1=1"===e?t??e:"1=1"===t?e??t:e&&t?`(${e}) AND (${t})`:e??t}function a(e,t){return e||=null,t||=null,"1=1"===e||"1=1"===t||e===t?"1=1"===e?e:t:e&&t?`(${e}) OR (${t})`:e??t}n.d(t,{GP:()=>o,IW:()=>a,mA:()=>s})},13069:(e,t,n)=>{n.d(t,{AG:()=>a,lk:()=>r,vD:()=>s,yS:()=>o});const i="randomUUID"in crypto;function r(){if(i)return crypto.randomUUID();const e=crypto.getRandomValues(new Uint16Array(8));e[3]=4095&e[3]|16384,e[4]=16383&e[4]|32768;const t=t=>e[t].toString(16).padStart(4,"0");return t(0)+t(1)+"-"+t(2)+"-"+t(3)+"-"+t(4)+"-"+t(5)+t(6)+t(7)}function o(){return`{${r().toUpperCase()}}`}function s(){return`{${r()}}`}function a(e){const t=e.toUpperCase();return"{"!==e[0]?`{${t}}`:t}},83960:(e,t,n)=>{n.d(t,{X_:()=>s,oW:()=>l,zx:()=>a});var i=n(34727),r=n(83047);const o=96;function s(e,t){const n=t||e.extent,i=e.width,s=(0,r.GA)(n?.spatialReference);return n&&i?n.width/i*s*r.dy*o:0}function a(e,t,n){return function(e,t){return 0===t||(0,i.Sp)(e,t)||e<t}(e,t)&&function(e,t){return 0===t||(0,i.Sp)(e,t)||e>t}(e,n)}function l(e,t){return(0,i.Sp)(e,t)?0:(e||Number.POSITIVE_INFINITY)>(t||Number.POSITIVE_INFINITY)?1:-1}},94194:(e,t,n)=>{n.d(t,{A:()=>w});var i=n(90237),r=n(10107),o=(n(44208),n(53966),n(87811),n(40608)),s=n(5503),a=n(62885);let l=class extends s.A{constructor(e){super(e),this.addHandles([this.on("before-add",(e=>{null==e.item&&e.preventDefault()})),this.on("after-add",(e=>this._own(e.item))),this.on("after-remove",(e=>this._release(e.item)))])}get owner(){return this._get("owner")}set owner(e){e!==this._get("owner")&&(this._releaseAll(),this._set("owner",e),this._ownAll())}_ownAll(){for(const e of this.items)this._own(e)}_releaseAll(){for(const e of this.items)this._release(e)}_createNewInstance(e){return this.itemType?new(s.A.ofType(this.itemType.Type))(e):new s.A(e)}};(0,i._)([(0,r.MZ)()],l.prototype,"owner",null),l=(0,i._)([(0,o.$)("esri.core.support.OwningCollection")],l);var u=n(4146),d=n(63074),p=n(25036),c=n(52106),h=n(56507),y=(n(49186),n(7695));let m=class extends l{_own(e){e.layer&&"remove"in e.layer&&e.layer!==this.owner&&e.layer.remove(e),e.layer=this.owner}_release(e){e.layer===this.owner&&(e.layer=null)}};(0,i._)([(0,y.u)({Type:c.A,ensureType:(0,h.dp)(c.A)})],m.prototype,"itemType",void 0),m=(0,i._)([(0,o.$)("esri.support.GraphicsCollection")],m);var f=n(88625);let g=class extends((0,d.dM)((0,p.j)(u.A))){constructor(e){super(e),this.elevationInfo=null,this.graphics=new m,this.screenSizePerspectiveEnabled=!0,this.type="graphics",this.internal=!1}destroy(){this.removeAll(),this.graphics.destroy()}add(e){return this.graphics.add(e),this}addMany(e){return this.graphics.addMany(e),this}removeAll(){return this.graphics.removeAll(),this}remove(e){this.graphics.remove(e)}removeMany(e){this.graphics.removeMany(e)}on(e,t){return super.on(e,t)}graphicChanged(e){this.emit("graphic-update",e)}};var _,b;(0,i._)([(0,r.MZ)({type:f.A})],g.prototype,"elevationInfo",void 0),(0,i._)([(0,r.MZ)((_=m,b="graphics",{type:_,cast:a.H,set(e){const t=(0,a.V)(e,this._get(b),_);t.owner=this,this._set(b,t)}}))],g.prototype,"graphics",void 0),(0,i._)([(0,r.MZ)({type:["show","hide"]})],g.prototype,"listMode",void 0),(0,i._)([(0,r.MZ)()],g.prototype,"screenSizePerspectiveEnabled",void 0),(0,i._)([(0,r.MZ)({readOnly:!0})],g.prototype,"type",void 0),(0,i._)([(0,r.MZ)({constructOnly:!0})],g.prototype,"internal",void 0),g=(0,i._)([(0,o.$)("esri.layers.GraphicsLayer")],g);const w=g},6518:(e,t,n)=>{n.d(t,{F:()=>a});var i=n(44208),r=n(75503),o=n(19419);const s={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.w(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,o.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){s.minX=e[0],s.minY=e[1],s.maxX=e[2],s.maxY=e[3]})(t),e.search(s,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()))}}},83221:(e,t,n)=>{n.d(t,{A:()=>y});var i=n(4576),r=n(49186),o=n(65529),s=n(53966),a=n(70328),l=n(19419),u=n(90708),d=n(6518),p=n(51441),c=n(37730);const h=(0,a.vt)();class y{constructor(e){this.geometryInfo=e,this._boundsStore=new d.F,this._featuresById=new Map,this._usedMemory=0,this.events=new o.A,this.featureAdapter=c.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,p.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)(h,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 s.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 s.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:o}=e;for(const e in o)n.attributes[e]=o[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}}},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)}},64714:(e,t,n)=>{n.d(t,{F0:()=>a,Vx:()=>d,e2:()=>c,f:()=>h});var i=n(44208),r=n(4718),o=n(99352),s=n(93470);function a(e){return{renderer:{type:"simple",symbol:"esriGeometryPoint"===e||"esriGeometryMultipoint"===e?s.Cb:"esriGeometryPolyline"===e?s.yM:s.WR}}}const l=/^[_$a-zA-Z][_$a-zA-Z0-9]*$/;let u=1;function d(e,t){if((0,i.A)("esri-csp-restrictions"))return()=>({[t]:null,...e});try{let n=`this${p(t)} = null;`;for(const t in e)n+=`this${p(t)} = ${JSON.stringify(e[t])};`;const i=new Function(`\n return class AttributesClass$${u++} {\n constructor() {\n ${n};\n }\n }\n `)();return()=>new i}catch(n){return()=>({[t]:null,...e})}}function p(e){return l.test(e)?`.${e}`:`["${e}"]`}function c(e={}){return[{name:"New Feature",description:"",prototype:{attributes:(0,r.o8)(e)}}]}function h(e,t){return{analytics:{supportsCacheHint:!1},attachment:null,data:{isVersioned:!1,isBranchVersioned:!1,supportsAttachment:!1,supportsM:!1,supportsZ:e},metadata:{supportsAdvancedFieldProperties:!1},operations:{supportsCalculate:!1,supportsTruncate:!1,supportsValidateSql:!1,supportsAdd:t,supportsDelete:t,supportsEditing:t,supportsChangeTracking:!1,supportsQuery:!0,supportsQueryBins:!0,supportsQueryAnalytics:!1,supportsQueryAttachments:!1,supportsQueryTopFeatures:!1,supportsResizeAttachments:!1,supportsSync:!1,supportsUpdate:t,supportsExceedsLimitStatistics:!0,supportsAsyncConvert3D:!1},query:o.F,queryRelated:{supportsCount:!0,supportsOrderBy:!0,supportsPagination:!0,supportsCacheHint:!1},queryTopFeatures:{supportsCacheHint:!1},queryAttributeBins:o.P,editing:{supportsGeometryUpdate:t,supportsGlobalId:!1,supportsReturnServiceEditsInSourceSpatialReference:!1,supportsRollbackOnFailure:!1,supportsUpdateWithoutM:!1,supportsUploadWithItemId:!1,supportsDeleteByAnonymous:!1,supportsDeleteByOthers:!1,supportsUpdateByAnonymous:!1,supportsUpdateByOthers:!1,supportsAsyncApplyEdits:!1,zDefault:void 0}}}},80340:(e,t,n)=>{n.d(t,{P:()=>T});var i=n(90237),r=n(69622),o=n(49186),s=n(53966),a=n(91869),l=n(74887),u=n(39516),d=n(10107),p=(n(44208),n(87811),n(40608)),c=n(5443),h=n(39829),y=n(57251),m=n(21325),f=n(15375),g=n(69860),_=n(30504),b=n(88613),w=n(42538),I=n(61956);let T=class extends r.A{constructor(e){super(e),this._processingCacheUpdatesLookup=new Map,this.knowledgeGraph=null,this.inclusionModeDefinition={generateAllSublayers:!0,namedTypeDefinitions:new Map},this.entityTypeNames=new Set,this.relationshipTypeNames=new Set,this.geographicLookup=new Map,this.sublayerCaches=new Map,this.nodeConnectionsLookup=new Map,this.relationshipConnectionsLookup=new Map,this.memberIdTypeLookup=new Map;const t=new Map;e.knowledgeGraph.dataModel.entityTypes?.forEach((n=>{n.name&&(t.set(n.name,"entity"),this._processingCacheUpdatesLookup.set(n.name,[]),e.inclusionModeDefinition&&!e.inclusionModeDefinition?.generateAllSublayers||this.entityTypeNames.add(n.name),n.properties?.forEach((e=>{e.geometryType&&"esriGeometryNull"!==e.geometryType&&this.geographicLookup.set(n.name,{name:e.name??"",geometryType:e.geometryType})})))})),e.knowledgeGraph.dataModel.relationshipTypes?.forEach((n=>{n.name&&(t.set(n.name,"relationship"),this._processingCacheUpdatesLookup.set(n.name,[]),e.inclusionModeDefinition&&!e.inclusionModeDefinition?.generateAllSublayers||this.relationshipTypeNames.add(n.name),n.properties?.forEach((e=>{e.geometryType&&"esriGeometryNull"!==e.geometryType&&this.geographicLookup.set(n.name,{name:e.name??"",geometryType:e.geometryType})})))})),e.inclusionModeDefinition?.namedTypeDefinitions.forEach(((n,i)=>{if("entity"===t.get(i))this.entityTypeNames.add(i);else{if("relationship"!==t.get(i))return s.A.getLogger(this).warn(`A named type, ${i}, was in the inclusion list that wasn't in the data model and will be removed`),void e.inclusionModeDefinition?.namedTypeDefinitions.delete(i);this.relationshipTypeNames.add(i)}const r=new Map;n.members?.forEach((e=>{(0,a.tE)(this.memberIdTypeLookup,e.id,(()=>new Set)).add(i);const t=this.getById(e.id);t&&r.set(e.id,t)})),this.sublayerCaches.set(i,r)}))}addToLayer(e){e.forEach((({typeName:e,id:t})=>{if(!this.inclusionModeDefinition)throw new o.A("knowledge-graph:layer-data-manager","You cannot add to a layer's exclusion list if it was not created with an exclusion list originally");if(this.inclusionModeDefinition.namedTypeDefinitions.has(e)){if(this.inclusionModeDefinition.namedTypeDefinitions.has(e)){const n=this.inclusionModeDefinition.namedTypeDefinitions.get(e);n.members||(n.members=new Map),n.members.set(t,{id:t}),(0,a.tE)(this.memberIdTypeLookup,t,(()=>new Set)).add(e)}}else{const n=new Map;n.set(t,{id:t}),this.inclusionModeDefinition.namedTypeDefinitions.set(e,{useAllData:!1,members:n}),(0,a.tE)(this.memberIdTypeLookup,t,(()=>new Set)).add(e)}}))}getById(e){return g.A.getInstance().readFromStoreById(e)}async getData(e,t,n){if(t.objectType.name&&this.inclusionModeDefinition?.namedTypeDefinitions&&this.inclusionModeDefinition.namedTypeDefinitions.size>0&&!this.inclusionModeDefinition.namedTypeDefinitions.has(t.objectType.name))return[];let i;if(i=e||new I.A({where:"1=1",outFields:["*"]}),"link-chart"===t.parentCompositeLayer.type){const e=t.parentCompositeLayer,n=this._processingCacheUpdatesLookup.get(t.objectType.name??""),r=i.outFields;r&&1===r.length&&r[0]===f.dr&&"1=1"===i.where||await Promise.all(n??[]);const o=this.sublayerCaches.has(t.objectType.name??"")?Array.from(this.sublayerCaches.get(t.objectType.name)?.values()):[],s=[];return o.forEach((n=>{if(this.relationshipTypeNames.has(t.objectType.name)){n.geometry=e.relationshipLinkChartDiagramLookup.get(n.attributes[t.objectIdField]);const i=this.memberIdTypeLookup.get(n.attributes[f.Cz]),r=this.memberIdTypeLookup.get(n.attributes[f.KQ]),o=this._isEndEntitySpatial(i,n,f.Cz),s=this._isEndEntitySpatial(r,n,f.KQ);n.attributes[f.BL]=Number(o&&s)}else{n.geometry=e.entityLinkChartDiagramLookup.get(n.attributes[t.objectIdField]);const i=this.geographicLookup.get(t.objectType.name);i&&n.attributes[i.name]?n.attributes[f.BL]=1:n.attributes[f.BL]=0}n.attributes[f.T1]=n.geometry,s.push(n)})),s}return this.retrieveDataFromService(i,t,n)}async getConnectedRecordIds(e,t,n){const i=[];let r="";const o=this._getNamedTypeIdMapFromNodeIds(e);if(t&&0!==t?.length){for(const e of t)r=r+e+"|";r=r.slice(0,-1)}const s={},a=[];for(const[e,n]of o){const i=`${e}_ids`;s[i]=n,t&&0!==t?.length?a.push(`MATCH (n:${e}) WHERE id(n) IN $${i} WITH n MATCH (n)-[r:${r}]-(m) RETURN id(r), type(r), id(m), labels(m)[0]`):a.push(`MATCH (n:${e}) WHERE id(n) IN $${i} WITH n MATCH (n)-[r]-(m) RETURN id(r), type(r), id(m), labels(m)[0]`)}if(!a.length)return i;const l=a.join(" UNION "),u=(await(0,b.executeQueryStreaming)(this.knowledgeGraph,new w.A({openCypherQuery:l,bindParameters:s}),{signal:n?.signal})).resultRowsStream.getReader();for(;;){const{done:e,value:t}=await u.read();if(e)break;for(let e=0;e<t.length;e++){const n=t[e];i.push({id:n[0],typeName:n[1]}),i.push({id:n[2],typeName:n[3]})}}return i}async getRelationshipsBetweenNodes(e,t,n){const i=this._getNamedTypeIdMapFromNodeIds(e);if(0===i.size)return[];const r={relationshipExclusionIds:t,possibleConnectionEntityIds:e},o=[];for(const[e,t]of i.entries()){const n=`${e}_ids`;r[n]=t,o.push(`MATCH (n:${e}) WHERE id(n) IN $${n} WITH n MATCH (n)-[r]->(m) WHERE id(m) IN $possibleConnectionEntityIds AND NOT id(r) IN $relationshipExclusionIds RETURN id(r), type(r)`)}const s=o.join(" UNION "),a=[],l=(await(0,b.executeQueryStreaming)(this.knowledgeGraph,new w.A({openCypherQuery:s,bindParameters:r}),{signal:n?.signal})).resultRowsStream.getReader();for(;;){const{done:e,value:t}=await l.read();if(e)break;for(let e=0;e<t.length;e++){const n=t[e];a.push({id:n[0],typeName:n[1]})}}return a}async getRelationshipsFromNodes(e,t,n,i){const r=this._getNamedTypeIdMapFromNodeIds(e);if(0===r.size||0===t.length)return[];const o={relationshipExclusionIds:n,possibleConnectionEntityIds:t},s=[];for(const[e,t]of r.entries()){const n=`${e}_ids`;o[n]=t,s.push(`MATCH (n:${e}) WHERE id(n) IN $${n} WITH n MATCH (n)-[r]-(m) WHERE id(m) IN $possibleConnectionEntityIds AND NOT id(r) IN $relationshipExclusionIds RETURN id(r), type(r)`)}const a=s.join(" UNION "),l=new Map,u=(await(0,b.executeQueryStreaming)(this.knowledgeGraph,new w.A({openCypherQuery:a,bindParameters:o}),{signal:i?.signal})).resultRowsStream.getReader();for(;;){const{done:e,value:t}=await u.read();if(e)break;for(let e=0;e<t.length;e++){const n=t[e];let i=l.get(n[1]);i||(i=new Set,l.set(n[1],i)),i.add(n[0])}}const d=[];for(const[e,t]of l)for(const n of t)d.push({id:n,typeName:e});return d}async refreshCacheContent(e,t,n,i=!0,r){const s=g.A.getInstance(),u=[],d=new Map,p=new Map;this.knowledgeGraph.dataModel.entityTypes?.forEach((e=>{e.name&&p.set(e.name,e)})),this.knowledgeGraph.dataModel.relationshipTypes?.forEach((e=>{e.name&&p.set(e.name,e)})),e||this.inclusionModeDefinition?e?e.forEach((e=>{if(this.memberIdTypeLookup.has(e))for(const t of this.memberIdTypeLookup.get(e))d.has(t)?d.get(t)?.push(e):d.set(t,[e])})):this.inclusionModeDefinition?.namedTypeDefinitions?.forEach(((e,t)=>{e.useAllData?d.set(t,null):e.members&&e.members.forEach((e=>{d.has(t)&&null!==d.get(t)?d.get(t)?.push(e.id):d.set(t,[e.id])}))})):(this.knowledgeGraph.dataModel.entityTypes?.forEach((e=>{e.name&&d.set(e.name,null)})),this.knowledgeGraph.dataModel.entityTypes?.forEach((e=>{e.name&&d.set(e.name,null)})));for(const[e,l]of d){const d=new Set(l),c=new Promise(((u,c)=>{(async()=>{const u=new Set,c=[];let h,y="",m=!1;if(t||p.get(e)?.properties?.forEach((e=>{e.name&&u.add(e.name)})),n&&this.geographicLookup.has(e)){const t=this.geographicLookup.get(e)?.name;t&&u.add(t)}if(this.entityTypeNames.has(e))y=`MATCH (n:${e}) ${l?"WHERE id(n) IN $ids ":""}return ID(n)`,u.forEach((e=>{y+=`, n.${e}`,c.push(e)}));else{if(!this.relationshipTypeNames.has(e))throw new o.A("knowledge-graph:layer-data-manager",`The graph type of ${e} could not be determined. Was this type set in the KG data model and inclusion definition?`);m=!0,y=`MATCH ()-[n:${e}]->() ${l?"WHERE id(n) IN $ids ":""}return ID(n), id(startNode(n)), id(endNode(n))`,u.forEach((e=>{y+=`, n.${e}`,c.push(e)}))}h=new w.A(l?{openCypherQuery:y,bindParameters:{ids:l}}:{openCypherQuery:y});const g=(await(0,b.executeQueryStreaming)(this.knowledgeGraph,h,{signal:r?.signal})).resultRowsStream.getReader();for(;;){const{done:t,value:n}=await g.read();if(t)break;const r=[];for(let e=0;e<n.length;e++){const t=n[e];let i=0,o=0;const s={properties:{}};for(s.id=t[i],i++,o++,m&&(s.originId=t[i],i++,o++,s.destinationId=t[i],i++,o++,(0,a.tE)(this.nodeConnectionsLookup,s.originId,(()=>new Set)).add(s.id),(0,a.tE)(this.nodeConnectionsLookup,s.destinationId,(()=>new Set)).add(s.id),(0,a.tE)(this.relationshipConnectionsLookup,s.id,(()=>[s.originId,s.destinationId])));i<t.length;i++)s.properties[c[i-o]]=t[i];d.delete(s.id),r.push(s)}const o=s.writeToStore(r,f.dr,this.geographicLookup.get(e)?.name);this.sublayerCaches.has(e)||this.sublayerCaches.set(e,new Map),i&&!this.inclusionModeDefinition?.namedTypeDefinitions.has(e)&&this.inclusionModeDefinition?.namedTypeDefinitions.set(e,{useAllData:!1,members:new Map}),i&&!this.inclusionModeDefinition?.namedTypeDefinitions.get(e).members&&(this.inclusionModeDefinition.namedTypeDefinitions.get(e).members=new Map);const l=this.sublayerCaches.get(e);o.forEach((t=>{l?.set(t.attributes[f.dr],t),i&&!this.inclusionModeDefinition?.namedTypeDefinitions.get(e).members.has(t.attributes[f.dr])&&(this.inclusionModeDefinition?.namedTypeDefinitions.get(e).members.set(t.attributes[f.dr],{id:t.attributes[f.dr]}),(0,a.tE)(this.memberIdTypeLookup,t.attributes[f.dr],(()=>new Set)).add(e))}))}const _=this.inclusionModeDefinition?.namedTypeDefinitions.get(e);if(_)for(const e of d)_.members?.delete(e)})().then((()=>{u(null)})).catch((e=>{"AbortError"===e.name?u(null):c(e)}))}));u.push(c),this._processingCacheUpdatesLookup.get(e)?.push(c)}if(await Promise.all(u),r?.signal?.aborted)throw(0,l.NK)()}removeFromLayer(e){const t=new Set,n=new Set(e.map((e=>e.id)));for(const n of e)t.add(n.typeName),1===this.memberIdTypeLookup.get(n.id)?.size?this.memberIdTypeLookup.delete(n.id):this.memberIdTypeLookup.get(n.id)?.delete(n.typeName),this.inclusionModeDefinition?.namedTypeDefinitions.forEach(((e,t)=>{t===n.typeName&&e.members?.has(n.id)&&e.members.delete(n.id)}));t.forEach((e=>{this.sublayerCaches.get(e)?.forEach(((t,i)=>{n.has(i)&&this.sublayerCaches.get(e)?.delete(i)}))}))}async retrieveDataFromService(e,t,n){const i=g.A.getInstance(),r=new Set,s=[];let a,l="",d=[];const p="relationship"===t.graphType,I=this.inclusionModeDefinition?.namedTypeDefinitions?.get(t.objectType.name)?.useAllData,T=t.parentCompositeLayer.sublayerIdsCache.get(t.objectType.name);let M=!I&&T?Array.from(T).sort():null;if(this.inclusionModeDefinition?.namedTypeDefinitions?.get(t.objectType.name)?.useAllData)this.inclusionModeDefinition?.namedTypeDefinitions?.get(t.objectType.name)?.useAllData&&null!=e.objectIds&&(M=e.objectIds);else if(null!=e.objectIds&&M&&M.length>0){const t=e.objectIds;e.objectIds=M.filter((e=>t.includes(e)))}else if(null!=e.objectIds)M=e.objectIds;else{if(this.inclusionModeDefinition?.namedTypeDefinitions.has(t.objectType.name)&&(!this.inclusionModeDefinition.namedTypeDefinitions.get(t.objectType.name)?.members||this.inclusionModeDefinition.namedTypeDefinitions.get(t.objectType.name)?.members?.size<1))return e.objectIds=[],[];e.objectIds=M}if(null!=e.outFields){const n=e.outFields;n.includes("*")?t.fields.forEach((e=>{r.add(e.name)})):n.forEach((e=>{e!==f.dr&&e!==t.geometryFieldName&&r.add(e)}))}if(null!=e.geometry){const n=e.geometry;let i;const d=t.parentCompositeLayer.dataManager.knowledgeGraph.serviceDefinition,f=d?.spatialReference,g=d?.serviceCapabilities?.geometryCapabilities;let b=g?.geometryMaxBoundingRectangleSizeX,I=g?.geometryMaxBoundingRectangleSizeY;if("point"===n.type){let e=n;e.spatialReference?.isWGS84||(await(0,y.initializeProjection)(e.spatialReference,m.KK),e=(0,y.project)(e,m.KK)),i=new c.A({spatialReference:m.KK,xmin:e.x-1e-4,ymin:e.y-1e-4,xmax:e.x+1e-4,ymax:e.y+1e-4})}else n?.extent?.spatialReference&&!n.spatialReference?.isWGS84?(await(0,y.initializeProjection)(n.extent.spatialReference,m.KK),i=(0,y.project)(n.extent,m.KK)):i=n.extent;if(b&&I&&f){if(4326!==f.wkid){const e=new c.A({spatialReference:f,xmax:b,ymax:I}),t=(0,y.project)(e,m.KK);b=t.xmax,I=t.ymax}if(i.xmax-i.xmin>b)throw new o.A("knowledge-graph:layer-data-manager",`Extent x bounds should be within ${b}° latitude, limit exceeded`);if(i.ymax-i.ymin>I)throw new o.A("knowledge-graph:layer-data-manager",`Extent y bounds should be within ${I}° longitude, limit exceeded`)}if(null!=e.where&&"1=1"!==e.where){const n=await(0,u.GP)(e.where.toUpperCase(),t.fieldsIndex);t.fields.forEach((e=>{n.fieldNames.includes(e.name)&&r.add(e.name)}))}l=p?`Match ()-[n:${t.objectType.name}]->() WHERE esri.graph.ST_Intersects($param_filter_geom, n.${t.geometryFieldName}) return ID(n), id(startNode(r)), id(endNode(r))`:`Match (n:${t.objectType.name}) WHERE esri.graph.ST_Intersects($param_filter_geom, n.${t.geometryFieldName}) return ID(n)`,t.geometryFieldName&&r.add(t.geometryFieldName),r.forEach((e=>{l+=`, n.${e}`,s.push(e)})),a=new w.A({openCypherQuery:l,bindParameters:{param_filter_geom:new h.A({rings:(0,_.Wq)(i)})}})}else{let n="";if(null!=e.where&&"1=1"!==e.where){const i=await(0,u.GP)(e.where,t.fieldsIndex);t.fields.forEach((e=>{i.fieldNames.includes(e.name)&&r.add(e.name)}));const o=new Set(["column-reference","string","number","binary-expression"]),s=new Set(["=","<","<=","<>",">",">=","AND","OR","LIKE"]);let a=!1;const l=e=>{if("column-reference"===e.type)return`n.${e.column}`;if("string"===e.type)return`'${e.value}'`;if("number"===e.type)return`${e.value}`;if("binary-expression"===e.type&&o.has(e.left.type)&&o.has(e.right.type)&&s.has(e.operator))return`${l(e.left)} ${e.operator} ${l(e.right)}`;if("binary-expression"===e.type&&"LIKE"===e.operator){let t="";if("function"===e.left.type&&"column-reference"===e.left.args.value[0].type)t+=`lower(n.${e.left.args.value[0].column})`;else{if("column-reference"!==e.left.type)return a=!0,"";t+=`lower(n.${e.left.column})`}if(t+=" CONTAINS (","string"!==e.right.type)return a=!0,"";{let n=e.right.value;"%"===n.charAt(0)&&(n=n.slice(1)),"%"===n.charAt(n.length-1)&&(n=n.slice(0,-1)),t+=`'${n.toLowerCase()}')`}return t}return a=!0,""};n=l(i.parseTree),a&&(n="")}let i="";i=p?`Match ()-[n:${t.objectType.name}]->()`:`Match (n:${t.objectType.name})`;let o=!1;M&&(o=!0,i+=" WHERE ID(n) IN $ids"),n&&(i+=o?" AND":" WHERE",i+=` ${n}`),i+=" return ID(n)",p&&(i+=", id(startNode(n)), id(endNode(n))"),e.returnGeometry&&t.geometryFieldName&&r.add(t.geometryFieldName),r.forEach((e=>{i+=`, n.${e}`,s.push(e)})),a=new w.A(M?{openCypherQuery:i,bindParameters:{ids:M}}:{openCypherQuery:i})}const v=(await(0,b.executeQueryStreaming)(t.parentCompositeLayer.dataManager.knowledgeGraph,a,n)).resultRowsStream.getReader();for(;;){const{done:e,value:n}=await v.read();if(e)break;const r=[];for(let e=0;e<n.length;e++){const t=n[e];let i=0,o=0;const a={properties:{}};for(a.id=t[i],i++,o++,p&&(a.originId=t[i],i++,o++,a.destinationId=t[i],i++,o++);i<t.length;i++)a.properties[s[i-o]]=t[i];r.push(a)}d=d.concat(i.writeToStore(r,f.dr,t.parentCompositeLayer.dataManager.geographicLookup.get(t.objectType.name)?.name))}return d}_isEndEntitySpatial(e,t,n){for(const i of e??[])if(this.entityTypeNames.has(i)){const e=this.geographicLookup.get(i),r=e&&this.sublayerCaches.get(i)?.get(t.attributes[n]);if(e&&r?.attributes[e.name])return!0}return!1}_getNamedTypeIdMapFromNodeIds(e){const t=new Map;return e.forEach((e=>{if(this.memberIdTypeLookup.has(e))for(const n of this.memberIdTypeLookup.get(e)){if(!this.entityTypeNames.has(n))return;t.has(n)?t.get(n)?.push(e):t.set(n,[e])}})),t}};(0,i._)([(0,d.MZ)()],T.prototype,"knowledgeGraph",void 0),(0,i._)([(0,d.MZ)()],T.prototype,"inclusionModeDefinition",void 0),(0,i._)([(0,d.MZ)()],T.prototype,"entityTypeNames",void 0),(0,i._)([(0,d.MZ)()],T.prototype,"relationshipTypeNames",void 0),(0,i._)([(0,d.MZ)()],T.prototype,"geographicLookup",void 0),(0,i._)([(0,d.MZ)()],T.prototype,"sublayerCaches",void 0),(0,i._)([(0,d.MZ)()],T.prototype,"nodeConnectionsLookup",void 0),(0,i._)([(0,d.MZ)()],T.prototype,"relationshipConnectionsLookup",void 0),(0,i._)([(0,d.MZ)()],T.prototype,"memberIdTypeLookup",void 0),T=(0,i._)([(0,p.$)("esri.layers.knowledgeGraph.KnowledgeGraphLayerDataManager")],T)},70643:(e,t,n)=>{n.d(t,{A:()=>ie});var i=n(90237),r=n(13874),o=n(4718),s=n(53966),a=n(92071),l=(n(29953),n(10107)),u=(n(44208),n(40608)),d=n(43937),p=n(35666),c=n(5443),h=n(86738),y=n(39829),m=n(82799),f=n(57251),g=n(16930),_=n(21325),b=n(50498),w=n(4146),I=n(83221),T=n(19730),M=n(64714),v=n(15375);n(87811);const x=(0,n(17036).p)(),E=e=>{let t=class extends e{constructor(){super(...arguments),this.fields=[],this.fieldsIndex=null}};return(0,i._)([(0,l.MZ)(x.fields)],t.prototype,"fields",void 0),(0,i._)([(0,l.MZ)(x.fieldsIndex)],t.prototype,"fieldsIndex",void 0),t=(0,i._)([(0,u.$)("esri.layers.knowledgeGraph.KnowledgeGraphSublayerBase")],t),t};var A=n(85342),S=n(63074),N=n(6455),C=n(87718),L=n(76294),k=n(32756),R=n(54310),D=n(25036),F=n(82935),j=n(10873),B=n(13213),O=n(20437),$=n(30524),Z=n(46499),G=n(39383),P=n(96184),q=n(96576),U=n(65494),Y=n(13112),z=n(22671),Q=n(61956),H=n(30291),V=n(37531),X=n(61322);function W(e){if(!e.json)return e;e.json.write=J(e.json.write);const t=e.json.origins;if(!t)return e;let n;for(n in t){const e=t[n];e&&(e.write=J(e.write))}return e}function J(e){return"object"==typeof e&&e?(!1!==e.enabled&&(e.overridePolicy=function(e){const{target:t,writer:n,overridePolicy:i,...r}=e;return function(e,t){const n=ee.call(this,e,t);return n.enabled?{...r,...n}:n}}(e)),e):!0===e?K():e}function K(){return{overridePolicy:ee}}function ee(e,t){const n=!!this.geometryType;let i={enabled:n};return n&&(i={...i,...te.call(this,e,t)}),i}function te(e,t){return{ignoreOrigin:this.originIdOf(t)>p.Gr.DEFAULTS}}let ne=class extends(E((0,N.FJ)((0,L.J)((0,C.F)((0,S.dM)((0,k.fY)((0,F.e)((0,D.j)((0,R.J)((0,a.P)(w.A))))))))))){constructor(e){super(e),this.blendMode="normal",this.capabilities=(0,M.f)(!1,!1),this.charts=null,this.definitionExpression=null,this.displayField="",this.displayFilterEnabled=!0,this.displayFilterInfo=null,this.effect=null,this.elevationInfo=null,this.featureEffect=null,this.graphType=null,this.labelsVisible=!0,this.layerType=null,this.legendEnabled=!0,this.maxScale=0,this.minScale=0,this.objectIdField=v.dr,this.objectType=null,this.opacity=1,this.orderBy=null,this.parent=null,this.parentCompositeLayer=null,this.persistenceEnabled=!0,this.popupEnabled=!0,this.popupTemplate=null,this.refreshInterval=0,this.source={openPorts:()=>this.load().then((()=>{const e=new MessageChannel;return new X.default(e.port1,{channel:e,client:{queryFeatures:(e,t={})=>{const n=Q.A.fromJSON(e);return this.queryFeaturesJSON(n,t)}}}),[e.port2]}))},this.type="knowledge-graph-sublayer",this.useViewTime=!0,this.visible=!0}get defaultPopupTemplate(){return this.createPopupTemplate()}set featureReduction(e){const t=this._normalizeFeatureReduction(e);this._set("featureReduction",t)}get fields(){const e=[];return this.objectType?.properties?.forEach((t=>{const n="esriFieldTypeOID"===t.fieldType?"esriFieldTypeInteger":t.fieldType;e.push(O.A.fromJSON({name:t.name,type:n,alias:t.alias,defaultValue:t.defaultValue,editable:t.editable,nullable:t.nullable}))})),e.push(O.A.fromJSON({name:this.objectIdField,type:"esriFieldTypeString",alias:this.objectIdField,editable:!1}),O.A.fromJSON({name:v.M1,type:"esriFieldTypeInteger",alias:v.M1,editable:!1}),O.A.fromJSON({name:v.BL,type:"esriFieldTypeInteger",alias:v.BL,editable:!1})),e}get geometryType(){if("link-chart"===this.parentCompositeLayer?.type)return"relationship"===this.graphType?"polyline":"point";const e=this.parentCompositeLayer?.dataManager.geographicLookup.get(this.objectType?.name),t=e?.geometryType;return t&&"esriGeometryNull"!==t?b.gy.fromJSON(t):null}get geometryFieldName(){if("link-chart"===this.parentCompositeLayer?.type)return v.T1;const e=this.parentCompositeLayer?.dataManager.geographicLookup.get(this.objectType?.name);return e?.name??null}get graphTypeName(){return this.objectType?.name}get hasM(){const e=this.parentCompositeLayer?.dataManager.geographicLookup.get(this.objectType?.name),t=e?.name,n=t?this.objectType?.properties?.[t]:null;return n?.hasM??!1}get hasZ(){const e=this.parentCompositeLayer?.dataManager.geographicLookup.get(this.objectType?.name),t=e?.name,n=t?this.objectType?.properties?.[t]:null;return n?.hasZ??!1}set labelingInfo(e){this._set("labelingInfo",e)}get labelingInfo(){if(this._isOverridden("labelingInfo"))return this._get("labelingInfo");const e=this.objectType.properties?(0,A.MY)(this.objectType.properties):"ESRI__ID";return"link-chart"===this.parentCompositeLayer.type?(0,A.iW)(this.graphType,this.graphTypeName,e):(0,A.e$)(this.graphTypeName,this.geometryType,e)}set renderer(e){(0,$.yp)(e,this.fieldsIndex),this._set("renderer",e)}get renderer(){if(this._isOverridden("renderer"))return this._get("renderer");const e=this.parentCompositeLayer?.dataManager?.knowledgeGraph?.dataModel,t=[...e?.entityTypes??[],...e?.relationshipTypes??[]].map((e=>e.name)).indexOf(this.graphTypeName),n=(0,A.Td)(t);if("link-chart"===this.parentCompositeLayer?.type){if("relationship"===this.graphType)return new q.A({type:"simple",symbol:(0,A.UT)(n)});const e=(0,U.r)((0,M.F0)(b.gy.toJSON("point")).renderer);return(0,V.dt)(e.symbol,n),e}const i=(0,U.r)((0,M.F0)(b.gy.toJSON(this.geometryType)).renderer);return(0,V.dt)(i.symbol,n),i}get spatialReference(){return this.parentCompositeLayer?.dataManager?.knowledgeGraph?.dataModel?.spatialReference??g.A.WGS84}set timeInfo(e){this._set("timeInfo",e)}get title(){return this._isOverridden("title")?this._get("title"):this.graphTypeName}set title(e){this._set("title",e)}writeTitle(e,t){t.title=e??"Layer"}createPopupTemplate(e){return(0,H.tn)(this,e)}createQuery(){return new Q.A({where:"1=1",outFields:["*"]})}getField(e){return this.fieldsIndex.get(e)}getFieldDomain(e,t){return null}async queryFeatures(e,t){const{resolvedQuery:n,queryEngine:i}=await this._setupQueryObjects(e),r=z.A.fromJSON(await i.executeQuery(n.toJSON(),t?.signal));return r.features.forEach((e=>{e.sourceLayer=this})),r}async queryFeaturesJSON(e,t){const{resolvedQuery:n,queryEngine:i}=await this._setupQueryObjects(e);return await i.executeQuery(n.toJSON(),t?.signal)}async queryFeatureCount(e,t){const{resolvedQuery:n,queryEngine:i}=await this._setupQueryObjects(e);return i.executeQueryForCount(n.toJSON(),t?.signal)}async queryExtent(e={},t){const n={...e,returnGeometry:!0},{resolvedQuery:i,queryEngine:r}=await this._setupQueryObjects(n),o=await r.executeQueryForExtent(i.toJSON(),t?.signal);let s;return s=null!=o.extent?.xmin&&null!=o.extent?.xmax&&null!=o.extent?.ymin&&null!=o.extent?.ymax?new c.A(o.extent):new c.A,{count:o.count,extent:s}}async queryObjectIds(e,t){const n=Q.A.from(e);let i;if("link-chart"===this.parentCompositeLayer.type&&this._cachedQueryEngine)i=this._cachedQueryEngine;else{const e=await this.parentCompositeLayer.dataManager.getData(n,this,t);i=this.loadQueryEngine(e)}return await i.executeQueryForIds(n.toJSON(),t?.signal)}loadQueryEngine(e){const t=new I.A({geometryType:b.gy.toJSON(this.geometryType),hasM:this.hasM,hasZ:this.hasZ}),n=new T.do({fieldsIndex:this.fieldsIndex.toJSON(),geometryType:b.gy.toJSON(this.geometryType),hasM:this.hasM,hasZ:this.hasZ,objectIdField:this.objectIdField,spatialReference:this.spatialReference.toJSON(),timeInfo:this.timeInfo?.toJSON(),featureStore:t});return n.featureStore.addMany(e),n}async refreshCachedQueryEngine(){const e=await this.parentCompositeLayer.dataManager.getData(new Q.A({where:"1=1",outFields:[v.dr]}),this);this._cachedQueryEngine=this.loadQueryEngine(e)}load(e){return this.addResolvingPromise(this.parent.load(e).then((()=>(0,$.sv)(this.timeInfo,this.fieldsIndex)))),Promise.resolve(this)}async _setupQueryObjects(e,t){const n=Q.A.from(e),i=n.geometry;if(i&&!i.spatialReference?.isWGS84&&(await(0,f.initializeProjection)(i.spatialReference,_.KK),n.geometry=(0,f.project)(i instanceof y.A||i instanceof m.A||i instanceof h.A?i:i.extent,_.KK)),"link-chart"===this.parentCompositeLayer.type&&this._cachedQueryEngine)return{resolvedQuery:n,queryEngine:this._cachedQueryEngine};const r=await this.parentCompositeLayer.dataManager.getData(n,this,t);return{resolvedQuery:n,queryEngine:this.loadQueryEngine(r)}}};(0,i._)([(0,l.MZ)(W((0,o.o8)(S.sU)))],ne.prototype,"blendMode",void 0),(0,i._)([(0,l.MZ)()],ne.prototype,"capabilities",void 0),(0,i._)([(0,l.MZ)({json:{origins:{"web-scene":{write:!1}},write:K()}})],ne.prototype,"charts",void 0),(0,i._)([(0,l.MZ)({readOnly:!0})],ne.prototype,"defaultPopupTemplate",null),(0,i._)([(0,l.MZ)({type:String,json:{origins:{service:{read:!1}},name:"layerDefinition.definitionExpression",write:{ignoreOrigin:!0}}})],ne.prototype,"definitionExpression",void 0),(0,i._)([(0,l.MZ)()],ne.prototype,"displayField",void 0),(0,i._)([(0,l.MZ)(W((0,o.o8)(N.Dp)))],ne.prototype,"displayFilterEnabled",void 0),(0,i._)([(0,l.MZ)(W((0,o.o8)(N.KV)))],ne.prototype,"displayFilterInfo",void 0),(0,i._)([(0,l.MZ)(W((0,o.o8)(S.LF)))],ne.prototype,"effect",void 0),(0,i._)([(0,l.MZ)()],ne.prototype,"elevationInfo",void 0),(0,i._)([(0,l.MZ)(W((0,o.o8)(C.Y)))],ne.prototype,"featureEffect",void 0),(0,i._)([(0,l.MZ)(W((0,o.o8)(B.d)))],ne.prototype,"featureReduction",null),(0,i._)([(0,l.MZ)()],ne.prototype,"fields",null),(0,i._)([(0,l.MZ)()],ne.prototype,"geometryType",null),(0,i._)([(0,l.MZ)()],ne.prototype,"geometryFieldName",null),(0,i._)([(0,l.MZ)({type:["entity","relationship"],nonNullable:!0,json:{write:{isRequired:!0,ignoreOrigin:!0}}})],ne.prototype,"graphType",void 0),(0,i._)([(0,l.MZ)({type:String,nonNullable:!0,json:{write:{isRequired:!0,ignoreOrigin:!0}}})],ne.prototype,"graphTypeName",null),(0,i._)([(0,l.MZ)()],ne.prototype,"hasM",null),(0,i._)([(0,l.MZ)()],ne.prototype,"hasZ",null),(0,i._)([(0,l.MZ)({type:String,json:{origins:{service:{read:!1},"portal-item":{read:!1}},write:{ignoreOrigin:!0}}})],ne.prototype,"id",void 0),(0,i._)([(0,l.MZ)({type:Boolean,value:!0,nonNullable:!0,json:{name:"showLabels",default:!1,write:{overridePolicy(){return{enabled:!!this.geometryType,alwaysWriteDefaults:!0,ignoreOrigin:!0}}}}})],ne.prototype,"labelsVisible",void 0),(0,i._)([(0,l.MZ)({type:[Z.A],json:{name:"layerDefinition.drawingInfo.labelingInfo",read:function(e,t,n){const i=[["ESRI__AGGREGATION_COUNT",v.M1],["ESRI__ORIGIN_ID",v.Cz],["ESRI__DESTINATION_ID",v.KQ],["ESRI__LAYOUT_GEOMETRY",v.T1]];try{for(const t of e)for(const[e,n]of i)t.labelExpression=t.labelExpression?.replaceAll(e,n),t.labelExpressionInfo?.expression&&(t.labelExpressionInfo.expression=t.labelExpressionInfo.expression.replaceAll(e,n))}catch(e){s.A.getLogger(this).warn("Error updating labelingInfo",e)}return(0,G.w)(e,t,n)},write:K()}})],ne.prototype,"labelingInfo",null),(0,i._)([(0,l.MZ)({readOnly:!0,json:{read:!1,write:{writer(e,t){switch(this.parentCompositeLayer.type){case"link-chart":t.layerType="LinkChartSubLayer";break;case"knowledge-graph":t.layerType=this.geometryType?"KnowledgeGraphSubLayer":"KnowledgeGraphSubTable"}},isRequired:!0,ignoreOrigin:!0,writerEnsuresNonNull:!0}}})],ne.prototype,"layerType",void 0),(0,i._)([(0,l.MZ)(W((0,o.o8)(j.fV)))],ne.prototype,"legendEnabled",void 0),(0,i._)([(0,l.MZ)(W((0,o.o8)(j.hG)))],ne.prototype,"maxScale",void 0),(0,i._)([(0,l.MZ)(W((0,o.o8)(j.hn)))],ne.prototype,"minScale",void 0),(0,i._)([(0,l.MZ)()],ne.prototype,"objectIdField",void 0),(0,i._)([(0,l.MZ)()],ne.prototype,"objectType",void 0),(0,i._)([(0,l.MZ)(W((0,o.o8)(j.ke)))],ne.prototype,"opacity",void 0),(0,i._)([(0,l.MZ)(W((0,o.o8)(k.ne)))],ne.prototype,"orderBy",void 0),(0,i._)([(0,l.MZ)({clonable:!1})],ne.prototype,"parent",void 0),(0,i._)([(0,l.MZ)()],ne.prototype,"parentCompositeLayer",void 0),(0,i._)([(0,l.MZ)(W((0,o.o8)(j.M6)))],ne.prototype,"popupEnabled",void 0),(0,i._)([(0,l.MZ)({type:r.A,json:{name:"popupInfo",write:{ignoreOrigin:!0}}})],ne.prototype,"popupTemplate",void 0),(0,i._)([(0,l.MZ)({type:Number,json:{write:{overridePolicy:te}}})],ne.prototype,"refreshInterval",void 0),(0,i._)([(0,l.MZ)({types:Y.Hg,json:{name:"layerDefinition.drawingInfo.renderer",write:K()}})],ne.prototype,"renderer",null),(0,i._)([(0,l.MZ)()],ne.prototype,"source",void 0),(0,i._)([(0,l.MZ)()],ne.prototype,"spatialReference",null),(0,i._)([(0,l.MZ)({type:P.A,json:{name:"layerDefinition.timeInfo",write:!0,origins:{"web-document":{name:"layerDefinition.timeInfo",read:!0,write:!0},"portal-item":{name:"layerDefinition.timeInfo",read:!0,write:!0}}}})],ne.prototype,"timeInfo",null),(0,i._)([(0,l.MZ)({type:String,json:{write:{isRequired:!0,ignoreOrigin:!0,writerEnsuresNonNull:!0}}})],ne.prototype,"title",null),(0,i._)([(0,d.K)("title")],ne.prototype,"writeTitle",null),(0,i._)([(0,l.MZ)({json:{read:!1}})],ne.prototype,"type",void 0),(0,i._)([(0,l.MZ)(W((0,o.o8)(F.B)))],ne.prototype,"useViewTime",void 0),(0,i._)([(0,l.MZ)({type:Boolean,json:{name:"visibility",write:K()}})],ne.prototype,"visible",void 0),ne=(0,i._)([(0,u.$)("esri.layers.knowledgeGraph.KnowledgeGraphSublayer")],ne);const ie=ne},69860:(e,t,n)=>{n.d(t,{A:()=>a});var i=n(65864),r=n(90708),o=n(43334),s=n(15375);class a{constructor(){this._featureLookup=new Map}static getInstance(){return a.instance||(a.instance=new a),a.instance}static resetInstance(){a.instance&&(a.instance=null)}deleteFromStore(e){e.forEach((e=>{this._featureLookup.delete(e)}))}readFromStoreByList(e){const t=[];return e.forEach((e=>{const n=this.readFromStoreById(e);n&&t.push(n)})),t}readFromStoreById(e){return this._featureLookup.get(e)??null}writeToStore(e,t,n){const a=[];return e.forEach((e=>{if(!e?.id)return;e.properties||(e.properties=[]);let l,u=null;if(n&&e.properties[n]&&(u=(0,r.Ux)(e.properties[n])),"originId"in e&&"destinationId"in e&&(e.properties[s.Cz]=e.originId,e.properties[s.KQ]=e.destinationId),e.properties[t]=e.id,e.id&&this._featureLookup.has(e.id)&&this._featureLookup.get(e.id).attributes){const r=this._featureLookup.get(e.id),s=JSON.parse(JSON.stringify(Object.assign(r.attributes,e.properties)));n&&e.properties[n]&&(s[n]=(0,i.rS)(e.properties[n])),l=new o.Om(u?JSON.parse(JSON.stringify(u)):r?.geometry?JSON.parse(JSON.stringify(r.geometry)):null,s,null,e.properties[t])}else l=new o.Om(u?JSON.parse(JSON.stringify(u)):null,e.properties,null,e.properties[t]);this._featureLookup.set(`${e.typeName?`${e.typeName}__${e.id}`:e.id}`,l),a.push(l)})),a}}},15375:(e,t,n)=>{n.d(t,{BL:()=>l,Cz:()=>r,KQ:()=>o,M1:()=>a,T1:()=>s,dr:()=>i});const i="ESRI__ID",r="ESRI__OriginID",o="ESRI__DestID",s="ESRI__LayoutGeometry",a="ESRI__AggregationCount",l="LC.ESRI__IsSpatial"},85342:(e,t,n)=>{n.d(t,{MY:()=>f,Td:()=>y,UT:()=>m,e$:()=>_,iW:()=>g,qN:()=>p});var i=n(68197),r=n(46499),o=n(73913),s=n(88613),a=n(40863),l=n(68249);const u={initializeLayersFromClientData:async(e,t,n)=>{if(t||(t=[...e.layers,...e.tables].map((e=>e.graphTypeName))),0===t?.length)return;const i=new Map;for(const n of t)i.set(n,d(e,n));const r=await(0,s.fetchClientDataAtKeys)(e.dataManager.knowledgeGraph,Array.from(i.values()),{requestOptions:{signal:n?.signal}});for(const t of[...e.layers,...e.tables]){const n=t.objectType.name;if(null==n)continue;const i=r.get(d(e,n));if(i){const e=JSON.parse(i);null===e||"object"!=typeof e||e.hasOwnProperty("showLabels")||(e.showLabels=!1),t.read(e,{origin:"service"})}}}},d=(e,t)=>"knowledge-graph"===e.type?`${t}/Map`:`${t}/LinkChart/LinkChartSubLayer`;async function p(e,t,n){return u.initializeLayersFromClientData(e,t,n)}const c=["#4a0932","#b31515","#18382e","#a64f1b","#102432","#8c213f","#ed9310","#2c6954","#144d59","#ffc730","#75351e","#454f4b","#78b1c2","#191921","#8f8f82","#9be0c0","#dbb658","#87b051","#11495c","#c43541","#9c5596","#44498b","#ad9d63","#86afb3","#5c98ca","#b0bfa2","#73241f","#b86b53","#d9d78c","#3e756d","#f260a1","#a0d17d","#c27c30","#eb82eb","#ffdf3c","#ffb259","#ab52b3","#3cccb4","#0095ba","#d92b30"],h="#8f8f82";function y(e){return e<0||e>=c.length?new i.A(h):new i.A(c[e])}function m(e){const t=e.toArray();return new a.A({data:{type:"CIMSymbolReference",symbol:{type:"CIMLineSymbol",symbolLayers:[{type:"CIMSolidStroke",enable:!0,style:"solid",width:.75,color:t},{type:"CIMVectorMarker",enable:!0,size:6,markerPlacement:{type:"CIMMarkerPlacementOnLine",angleToLine:!0,relativeTo:"LineMiddle"},frame:{xmin:-10,ymin:-5,xmax:0,ymax:5},markerGraphics:[{type:"CIMMarkerGraphic",geometry:{rings:[[[-12,-3.47],[-12,3.6],[1.96,-.03],[-12,-3.47]]]},symbol:{type:"CIMPolygonSymbol",symbolLayers:[{type:"CIMSolidFill",enable:!0,color:t}]}}]}]}}})}function f(e){let t="ESRI__ID",n=4;for(const i of e)if(i.name){if("name"===i.name.toLowerCase()){t=i.name;break}i.name.toLowerCase().includes("name")?(t=i.name,n=2):"esriFieldTypeString"===i.fieldType&&n>3&&(t=i.name,n=3)}return t}function g(e,t,n){const i={color:[80,80,80],haloColor:[255,255,255],haloSize:.7,font:{size:10,weight:"normal"}},s=new r.A({labelExpressionInfo:new o.A({expression:"ESRI__ID"===n?`${t}`:`$feature.${n}`}),labelPlacement:"above-center",symbol:new l.A(i)}),a=new r.A({labelExpressionInfo:new o.A({expression:`'${t}' + IIf($feature.ESRI__AggregationCount>1, ' (' + $feature.ESRI__AggregationCount + ')', '')`}),labelPlacement:"center-along",labelPosition:"parallel",repeatLabel:!1,symbol:new l.A({...i,yoffset:"12px"})});return"entity"===e?[s]:[a]}function _(e,t,n){const i={color:[255,255,255],haloColor:[0,0,0],haloSize:.7,font:{size:10,weight:"bold"}},s="ESRI__ID"===n?`${e}`:`$feature.${n}`;return"point"===t?[new r.A({labelExpressionInfo:new o.A({expression:s}),labelPlacement:"above-center",symbol:new l.A(i)})]:"polyline"===t?[new r.A({labelExpressionInfo:new o.A({expression:s}),labelPlacement:"center-along",repeatLabel:!0,symbol:new l.A(i)})]:"polygon"===t?[new r.A({labelExpressionInfo:new o.A({expression:s}),labelPlacement:"always-horizontal",symbol:new l.A(i)})]:null}},30504:(e,t,n)=>{n.d(t,{k5:()=>u,aq:()=>l,Wq:()=>d}),n(52106);var i=n(49186),r=(n(86738),n(39829),n(82799),n(94194),n(69860),n(8460),n(66552));(0,r.O)()({none:"none",startAndEnd:"start-and-end",startOnly:"start-only"}),(0,r.O)()({absoluteValue:"absolute-value",multiplier:"multiplier"});const o=new Map([["basic-grid","basic-grid"],["geographic-organic-standard","geographic-organic-standard"],["hierarchical-bottom-to-top","hierarchical-bottom-to-top"],["hierarchical-top-to-bottom","hierarchical-bottom-to-top"],["organic-community","organic-community"],["organic-fusiform","organic-standard"],["organic-leaf-circle","organic-standard"],["organic-standard","organic-standard"],["radial-node-centric","radial-root-centric"],["radial-root-centric","radial-root-centric"],["tree-bottom-to-top","tree-left-to-right"],["tree-left-to-right","tree-left-to-right"],["tree-right-to-left","tree-left-to-right"],["tree-top-to-bottom","tree-left-to-right"],["chronological-mono-timeline","chronological-mono-timeline"],["chronological-multi-timeline","chronological-multi-timeline"]]);var s=n(88613),a=n(42538);async function l(e,t,n){const i=[],r=function(e,t){const n=new Map;if(t.dataModel?.relationshipTypes)for(const e of t.dataModel.relationshipTypes)e.name&&n.set(e.name,[]);for(const t of e)n.has(t.typeName)&&n.get(t.typeName)?.push(t.id);return n}(e,t),o={},l=[];for(const[e,t]of r){if(t.length<1)continue;const n=`${e}_ids`;o[n]=t,l.push(`MATCH (n)-[r:${e}]->(m) WHERE id(r) in $${n} RETURN id(n), labels(n)[0], id(m), labels(m)[0]`)}if(0===l.length)return[];const u=l.join(" UNION "),d=new a.A({openCypherQuery:u,bindParameters:o}),p=(await(0,s.executeQueryStreaming)(t,d,n?.requestOptions)).resultRowsStream.getReader();for(;;){const{done:e,value:t}=await p.read();if(e)break;for(const e of t)i.push({id:e[0],typeName:e[1]}),i.push({id:e[2],typeName:e[3]})}return i}n(40863),n(94985),n(68249);const u=e=>o.get(e)??"radial-root-centric";function d(e){if(!e.spatialReference.isWGS84)throw new i.A("knowledge-graph:layer-support-utils","The utilsExtentToInBoundsRings function only supports WGS84 spatial references.");return e.clone().normalize().map((e=>[[e.xmin,e.ymin],[e.xmin,e.ymax],[e.xmax,e.ymax],[e.xmax,e.ymin],[e.xmin,e.ymin]]))}},6455:(e,t,n)=>{n.d(t,{FJ:()=>w,Dp:()=>I,KV:()=>T});var i=n(90237),r=n(93637),o=n(10107),s=(n(44208),n(53966),n(87811),n(40608)),a=n(89317),l=n(69540),u=n(5503),d=n(25482),p=n(43937),c=n(83960),h=n(13069);const y={write:{overridePolicy:(e,t,n)=>({enabled:!n||"scale"===n.filterMode})}};let m=class extends(l.A.ClonableMixin(d.A)){constructor(e){super(e),this.id=(0,h.lk)(),this.maxScale=0,this.minScale=0,this.title="",this.where=null}};(0,i._)([(0,o.MZ)({type:String,json:{write:!0}})],m.prototype,"id",void 0),(0,i._)([(0,o.MZ)({type:Number,json:y})],m.prototype,"maxScale",void 0),(0,i._)([(0,o.MZ)({type:Number,json:y})],m.prototype,"minScale",void 0),(0,i._)([(0,o.MZ)({type:String,json:{write:!0}})],m.prototype,"title",void 0),(0,i._)([(0,o.MZ)({type:String,json:{write:!0}})],m.prototype,"where",void 0),m=(0,i._)([(0,s.$)("esri.layers.support.DisplayFilter")],m);const f=m;var g=n(41560);let _=class extends(l.A.ClonableMixin(d.A)){constructor(e){super(e),this.activeFilterId=null,this.filters=new(u.A.ofType(f)),this.mode="manual"}writeFilters(e,t,n,i){const r=e.toArray();"scale"===this.mode&&r.sort(((e,t)=>{const n=(0,c.oW)(t.minScale,e.minScale),i=e.maxScale-t.maxScale;return 0===n?i:n})),t[n]=r.map((e=>e.toJSON(i)))}write(e,t){return super.write(e,(0,g.mW)(this,t))}};(0,i._)([(0,o.MZ)({type:String,json:{write:{overridePolicy:(e,t,n)=>({enabled:"manual"===n.filterMode,isRequired:!0})}}})],_.prototype,"activeFilterId",void 0),(0,i._)([(0,o.MZ)({type:u.A.ofType(f),nonNullable:!0,json:{write:!0}})],_.prototype,"filters",void 0),(0,i._)([(0,p.K)("filters")],_.prototype,"writeFilters",null),(0,i._)([(0,o.MZ)({type:["manual","scale"],nonNullable:!0,json:{name:"filterMode",write:!0}})],_.prototype,"mode",void 0),_=(0,i._)([(0,s.$)("esri.layers.support.DisplayFilterInfo")],_);const b=_,w=e=>{let t=class extends e{constructor(){super(...arguments),this.displayFilterEnabled=!0,this.displayFilterInfo=null}};return(0,i._)([(0,o.MZ)(I)],t.prototype,"displayFilterEnabled",void 0),(0,i._)([(0,o.MZ)(T)],t.prototype,"displayFilterInfo",void 0),t=(0,i._)([(0,s.$)("esri.layers.mixins.DisplayFilteredLayer")],t),t},I={type:Boolean,json:{name:"layerDefinition.disableDisplayFilter",read:{reader:e=>!e},write:{layerContainerTypes:a.K,writer(e,t,n){(0,r.sM)(n,!e,t)}},origins:{"web-scene":{write:!1,read:!1}}}},T={type:b,json:{name:"layerDefinition.displayFilterInfo",write:{enabled:!0,allowNull:!0,layerContainerTypes:a.K},origins:{"web-scene":{write:!1,read:!1}}}}},32756:(e,t,n)=>{n.d(t,{Rr:()=>l,fY:()=>d,ne:()=>u});var i=n(90237),r=n(93637),o=n(10107),s=(n(44208),n(53966),n(87811),n(40608)),a=n(91880);function l(e,t,n){if(!e)return null;const i=e.find((e=>!!e.field));if(!i)return null;const r=new a.A;return r.read(i,n),[r]}const u={type:[a.A],json:{origins:{"web-scene":{write:!1,read:!1}},name:"layerDefinition.orderBy",read:{reader:l},write:{writer:function(e,t,n,i){const o=e.find((e=>!!e.field));o&&(0,r.sM)(n,[o.toJSON()],t)}}}},d=e=>{let t=class extends e{constructor(){super(...arguments),this.orderBy=null}};return(0,i._)([(0,o.MZ)(u)],t.prototype,"orderBy",void 0),t=(0,i._)([(0,s.$)("esri.layers.mixins.OrderedLayer")],t),t}},82935:(e,t,n)=>{n.d(t,{B:()=>h,e:()=>y});var i=n(90237),r=n(10107),o=(n(44208),n(53966),n(87811),n(36005)),s=n(40608),a=n(89317),l=n(30524),u=n(96184),d=n(73133),p=n(79677),c=n(10184);const h={type:Boolean,json:{read:{source:"timeAnimation"},write:{target:"timeAnimation",layerContainerTypes:a.K}}},y=e=>{let t=class extends e{constructor(){super(...arguments),this.timeExtent=null,this.timeOffset=null,this.useViewTime=!0}readOffset(e,t){const n=t.timeInfo.exportOptions;if(!n)return null;const i=n.timeOffset,r=d.j.fromJSON(n.timeOffsetUnits);return i&&r?new c.A({value:i,unit:r}):null}set timeInfo(e){(0,l.sv)(e,this.fieldsIndex),this._set("timeInfo",e)}};return(0,i._)([(0,r.MZ)({type:p.A,json:{write:!1}})],t.prototype,"timeExtent",void 0),(0,i._)([(0,r.MZ)({type:c.A})],t.prototype,"timeOffset",void 0),(0,i._)([(0,o.w)("service","timeOffset",["timeInfo.exportOptions"])],t.prototype,"readOffset",null),(0,i._)([(0,r.MZ)({value:null,type:u.A,json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],t.prototype,"timeInfo",null),(0,i._)([(0,r.MZ)(h)],t.prototype,"useViewTime",void 0),t=(0,i._)([(0,s.$)("esri.layers.mixins.TemporalLayer")],t),t}},91880:(e,t,n)=>{n.d(t,{A:()=>p});var i,r=n(90237),o=n(66552),s=n(25482),a=n(10107),l=(n(44208),n(53966),n(87811),n(40608));const u=new o.J({asc:"ascending",desc:"descending"});let d=i=class extends s.A{constructor(e){super(e),this.field=null,this.valueExpression=null,this.order="ascending"}clone(){return new i({field:this.field,valueExpression:this.valueExpression,order:this.order})}};(0,r._)([(0,a.MZ)({type:String,json:{write:!0}})],d.prototype,"field",void 0),(0,r._)([(0,a.MZ)({type:String,json:{write:!0,origins:{"web-scene":{read:!1,write:!1}}}})],d.prototype,"valueExpression",void 0),(0,r._)([(0,a.MZ)({type:u.apiValues,json:{type:u.jsonValues,read:u.read,write:u.write}})],d.prototype,"order",void 0),d=i=(0,r._)([(0,l.$)("esri.layers.support.OrderByInfo")],d);const p=d},96184:(e,t,n)=>{n.d(t,{A:()=>m});var i=n(90237),r=n(69540),o=n(25482),s=n(10107),a=(n(44208),n(53966),n(87811),n(36005)),l=n(40608),u=n(43937),d=n(79677),p=n(10184),c=n(56400);function h(e,t){return p.A.fromJSON({value:e,unit:t})}let y=class extends(r.A.ClonableMixin(o.A)){constructor(e){super(e),this.cumulative=!1,this.endField=null,this.fullTimeExtent=null,this.hasLiveData=!1,this.interval=null,this.startField=null,this.timeZone=null,this.trackIdField=null,this.useTime=!0,this.stops=null}readFullTimeExtent(e,t){return t.timeExtent&&Array.isArray(t.timeExtent)&&2===t.timeExtent.length?d.A.fromArray(t.timeExtent):null}writeFullTimeExtent(e,t){null!=e?.start&&null!=e.end?t.timeExtent=e.toArray():t.timeExtent=null}readInterval(e,t){return t.timeInterval&&t.timeIntervalUnits?h(t.timeInterval,t.timeIntervalUnits):t.defaultTimeInterval&&t.defaultTimeIntervalUnits?h(t.defaultTimeInterval,t.defaultTimeIntervalUnits):null}writeInterval(e,t){t.timeInterval=e?.toJSON().value??null,t.timeIntervalUnits=e?.toJSON().unit??null}};(0,i._)([(0,s.MZ)({type:Boolean,json:{name:"exportOptions.timeDataCumulative",write:!0}})],y.prototype,"cumulative",void 0),(0,i._)([(0,s.MZ)({type:String,json:{name:"endTimeField",write:{enabled:!0,allowNull:!0}}})],y.prototype,"endField",void 0),(0,i._)([(0,s.MZ)({type:d.A,json:{write:{enabled:!0,allowNull:!0}}})],y.prototype,"fullTimeExtent",void 0),(0,i._)([(0,a.w)("fullTimeExtent",["timeExtent"])],y.prototype,"readFullTimeExtent",null),(0,i._)([(0,u.K)("fullTimeExtent")],y.prototype,"writeFullTimeExtent",null),(0,i._)([(0,s.MZ)({type:Boolean,json:{write:!0}})],y.prototype,"hasLiveData",void 0),(0,i._)([(0,s.MZ)({type:p.A,json:{write:{enabled:!0,allowNull:!0}}})],y.prototype,"interval",void 0),(0,i._)([(0,a.w)("interval",["timeInterval","timeIntervalUnits","defaultTimeInterval","defaultTimeIntervalUnits"])],y.prototype,"readInterval",null),(0,i._)([(0,u.K)("interval")],y.prototype,"writeInterval",null),(0,i._)([(0,s.MZ)({type:String,json:{name:"startTimeField",write:{enabled:!0,allowNull:!0}}})],y.prototype,"startField",void 0),(0,i._)([(0,s.MZ)((0,c.P6)("timeReference",!0))],y.prototype,"timeZone",void 0),(0,i._)([(0,s.MZ)({type:String,json:{write:{enabled:!0,allowNull:!0}}})],y.prototype,"trackIdField",void 0),(0,i._)([(0,s.MZ)({type:Boolean,json:{name:"exportOptions.useTime",write:!0}})],y.prototype,"useTime",void 0),(0,i._)([(0,s.MZ)({type:[Date],json:{read:!1}})],y.prototype,"stops",void 0),y=(0,i._)([(0,l.$)("esri.layers.support.TimeInfo")],y);const m=y},41560:(e,t,n)=>{n.d(t,{Ch:()=>s,mW:()=>o});var i=n(34727),r=n(39516);function o(e,t){return{...t,filterMode:e.mode}}function s(e,t,n){const o=function(e){if("manual"===u(e))return null;const t=[Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY];for(const{minScale:n,maxScale:i}of e.filters)t[0]=Math.max(t[0],d(n)),t[1]=Math.min(t[1],p(i));return t}(e);if(o&&((0,i.gg)(t,o[0])||(0,i.ZH)(n,o[1])))return"";const s=Array.from(a(e,t,n)),l=function(e,t,n){if(0===e.length)return!0;const r=d(e.at(0)?.minScale),o=p(e.at(-1)?.maxScale);if((0,i.ZH)(r,t)||(0,i.gg)(o,n))return!0;for(let t=0;t<e.length-1;t++){const n=e[t],r=e[t+1];if((0,i.ZH)(d(r.minScale),p(n.maxScale)))return!0}return!1}(s,t,n)?"1=1":s.map((e=>e.where||"1=1")).reduce(((e,t)=>(0,r.IW)(e,t)),"");return l&&"1=1"!==l?l:""}function*a(e,t,n){if("manual"===u(e)){const t=e.filters.find((t=>t.id===e.activeFilterId));t&&(yield t)}else{"object"==typeof t&&(t=t.scale);for(const i of e.filters)l(i.minScale,i.maxScale,t,n)&&(yield i)}}function l(e,t,n,r){return e=d(e),n=d(n),t=p(t),!(!(0,i.Sp)(n,e)&&(r??n)>e||(0,i.Hx)(t,n)||void 0!==r&&(0,i.Sp)(r,e))}function u(e){return"mode"in e?e.mode:e.filterMode}function d(e){return e||Number.POSITIVE_INFINITY}function p(e){return e||0}},17036:(e,t,n)=>{n.d(t,{p:()=>l});var i=n(44208),r=n(53966),o=n(20437),s=n(95466),a=n(30524);function l(){return{fields:{type:[o.A],value:null,set:function(e){if(e&&(0,i.A)("big-integer-warning-enabled")){const t=e.filter((e=>"big-integer"===e.type||"oid"===e.type&&(e.length||0)>=8));if(t.length){const e=t.map((e=>`'${e.name}'`)).join(", ");r.A.getLogger(this).warn("#fields",`Layer (title: '${this.title??"no title"}', id: '${this.id??"no id"}') references big-integer field(s): ${e}, support for which is experimental. Only integers less than ${Number.MAX_SAFE_INTEGER} (Number.MAX_SAFE_INTEGER) are supported.`)}}this._set("fields",e)}},fieldsIndex:{readOnly:!0,get(){return s.A.fromLayer(this)}},outFields:{type:[String],json:{read:!1},set:function(e){this._userOutFields=e,this.notifyChange("outFields")},get:function(){const e=this._userOutFields;if(!e?.length)return null;if(e.includes("*"))return["*"];if(!this.fields)return e;for(const t of e){const n=this.fieldsIndex?.has(t);n||r.A.getLogger("esri.layers.support.fieldProperties").error("field-attributes-layer:invalid-field",`Invalid field ${t} found in outFields`,{layer:this,outFields:e})}return(0,a.DB)(this.fieldsIndex,e)}}}}},32730:(e,t,n)=>{n.d(t,{BI:()=>f,D3:()=>y,XJ:()=>m,lc:()=>h,mX:()=>_,rU:()=>g,tH:()=>M});var i=n(799);const r="__begin__",o="__end__",s=new RegExp(r,"ig"),a=new RegExp(o,"ig"),l=new RegExp("^"+r,"i"),u=new RegExp(o+"$","i"),d='"',p=d+" + ",c=" + "+d;function h(e){return e.replaceAll(new RegExp("\\[","g"),"{").replaceAll(new RegExp("\\]","g"),"}")}function y(e){return e.replaceAll(new RegExp("\\{","g"),"[").replaceAll(new RegExp("\\}","g"),"]")}function m(e){const t={expression:"",type:"none"};return e.labelExpressionInfo?e.labelExpressionInfo.value?(t.expression=e.labelExpressionInfo.value,t.type="conventional"):e.labelExpressionInfo.expression&&(t.expression=e.labelExpressionInfo.expression,t.type="arcade"):null!=e.labelExpression&&(t.expression=h(e.labelExpression),t.type="conventional"),t}function f(e){const t=m(e);switch(t.type){case"conventional":return _(t.expression);case"arcade":return t.expression}return null}function g(e){const t=m(e);switch(t.type){case"conventional":return function(e){const t=e?.match(b);return t?.[1].trim()||null}(t.expression);case"arcade":return M(t.expression)}return null}function _(e){let t;return e?(t=(0,i.HC)(e,(e=>r+'$feature["'+e+'"]'+o)),t=l.test(t)?t.replace(l,""):d+t,t=u.test(t)?t.replace(u,""):t+d,t=t.replaceAll(s,p).replaceAll(a,c)):t='""',t}const b=/^\s*\{([^}]+)\}\s*$/i,w=/^\s*(?:(?:\$feature\.(\w+))|(?:\$feature\[(["'])(.+)(\2)\]));?\s*$/i,I=/^\s*(?:(?:\$feature\.(\w+))|(?:\$feature\[(["'])(.+)(\2)\]));?\s*(?:DomainName\(\s*\$feature\s*,\s*(["'])(\1|\3)(\5)\s*\));?\s*$/i,T=/^\s*(?:DomainName\(\s*\$feature\s*,\s*(["'])(.+)(\1)\s*\));?\s*$/i;function M(e){if(!e)return null;let t=w.exec(e)||I.exec(e);return t?t[1]||t[3]:(t=T.exec(e),t?t[2]:null)}},8460:(e,t,n)=>{n.d(t,{$C:()=>_,Hh:()=>s,J:()=>u,JT:()=>l,Tu:()=>f,Wg:()=>g,Xq:()=>w,i6:()=>I,pM:()=>m,tx:()=>a,vJ:()=>b});var i=n(2741);let r,o=null;function s(){return r||(r=n.e(3666).then(n.bind(n,3666)).then((e=>e.l)).then((({default:e})=>e({locateFile:e=>(0,i.s)(`esri/libs/linkchartlayout/${e}`)}))).then((e=>{!function(e){o=e}(e)})),r)}var a,l,u,d,p;(p=a||(a={}))[p.None=0]="None",p[p.IsMovable=1]="IsMovable",p[p.IsGeographic=2]="IsGeographic",p[p.IsRoot=4]="IsRoot",p[p.IsOld=8]="IsOld",function(e){e[e.Success=0]="Success",e[e.Error=1]="Error",e[e.Canceled=2]="Canceled"}(l||(l={})),function(e){e[e.Regular=0]="Regular",e[e.Curved=1]="Curved",e[e.Recursive=2]="Recursive"}(u||(u={})),function(e){e[e.right=0]="right",e[e.left=1]="left",e[e.top=2]="top",e[e.bottom=3]="bottom"}(d||(d={}));const c={none:0,"start-only":1,"start-and-end":2};function h(e){const t={timeDirection:"right",timeBannerUTCOffsetInMinutes:0,eventsTicksVisualization:"start-and-end",showDurationLineForNonZeroDurationEntityEvents:!0,durationLineWidth:5,entityPositionAtDurationRatio:1,showNonZeroDurationIntervalBounds:!1,separateTimeOverlaps:!0,separateTimelineOverlaps:!0,moveFirstBends:!0,secondBendRatio:.3,lineSeparationMultiplier:1,spaceSeparatedLinesEvenly:!1,useBezierCurves:!1,separatedLineShapeRatio:0,...e?.toJSON()??{},eventsTicksVisualization:e?.eventsTicksVisualization??"start-and-end"};return{...t,timeDirection:{value:d[t.timeDirection]??d.right},eventsTicksVisualization:{value:c[t.eventsTicksVisualization]??c["start-and-end"]}}}function y(e,t,n,i,r,s){const a=n.length,u=r.length,d=Float64Array.BYTES_PER_ELEMENT,p=Uint32Array.BYTES_PER_ELEMENT,c=Uint8Array.BYTES_PER_ELEMENT,h=16+a*(c+2*d)+u*(2*p),y=o._malloc(h);try{const c=y+16-y%16,h=c+a*d,m=h+a*d,f=m+u*p,g=f+u*p,_=()=>[o.HEAPF64.subarray(c>>3,(c>>3)+a),o.HEAPF64.subarray(h>>3,(h>>3)+a),o.HEAPU32.subarray(m>>2,(m>>2)+u),o.HEAPU32.subarray(f>>2,(f>>2)+u),o.HEAPU8.subarray(g,g+a)],[b,w,I,T,M]=_();b.set(n),w.set(i),I.set(r),T.set(s),M.set(t);const v=e(a,g,c,h,u,m,f);let x=null,E=null;if(v.value===l.Success){const e=o.getLayoutLinksTypes(),t=o.getLayoutLinksVerticesEndIndices(),n=o.getLayoutLinksVertices(),i=o.countLayoutLinksVertices();!u||e&&t?i&&!n?v.value=l.Error:(x={types:new Uint8Array(o.HEAPU8.subarray(e,e+u)),vertexEndIndex:new Uint32Array(o.HEAPU32.subarray(t>>2,(t>>2)+u)),vertices:new Float64Array(o.HEAPF64.subarray(n>>3,(n>>3)+2*i))},E=o.getAuxiliaryGraphicElements()):v.value=l.Error}const[A,S,N,C,L]=_();return n.set(A),i.set(S),r.set(N),s.set(C),t.set(L),{status:v.value,links:x,graphics:E}}finally{o._free(y),o.cleanupLayout()}}var m,f,g,_,b,w,I,T,M;!function(e){e.getMinIdealEdgeLength=function(){return o.getMinIdealEdgeLength()},e.apply=function(e,t,n,i,r,s,a=2,l=1,u=-1){return y(((t,n,i,r,s,d,p)=>o.applyForceDirectedLayout(e,t,n,i,r,s,d,p,a,l,u)),t,n,i,r,s)}}(m||(m={})),function(e){e.apply=function(e,t,n,i,r,s,a=2,l=1,u=-1){return y(((t,n,i,r,s,d,p)=>o.applyCommunityLayout(e,t,n,i,r,s,d,p,a,l,u)),t,n,i,r,s)}}(f||(f={})),function(e){e.apply=function(e,t,n,i,r,s){return y(((t,n,i,r,s,a,l)=>o.applySimpleLayout(e,t,n,i,r,s,a,l)),t,n,i,r,s)}}(g||(g={})),function(e){e.apply=function(e,t,n,i,r,s){return y(((t,n,i,r,s,a,l)=>o.applyHierarchicalLayout(e,t,n,i,r,s,a,l)),t,n,i,r,s)}}(_||(_={})),function(e){e.apply=function(e,t,n,i,r,s){return y(((t,n,i,r,s,a,l)=>o.applyRadialTreeLayout(e,t,n,i,r,s,a,l)),t,n,i,r,s)}}(b||(b={})),function(e){e.apply=function(e,t,n,i,r,s){return y(((t,n,i,r,s,a,l)=>o.applySmartTreeLayout(e,t,n,i,r,s,a,l)),t,n,i,r,s)}}(w||(w={})),function(e){e.apply=function(e,t,n,i,r,s,a,u,d,p,c,m){return y(((t,n,i,a,u,y,f)=>{if(r.length!==t)return{value:l.Error};if(s.length!==t)return{value:l.Error};if(d.length!==u)return{value:l.Error};if(p.length!==u)return{value:l.Error};const g=Float64Array.BYTES_PER_ELEMENT,_=16,b=o._malloc(_+t*g),w=o._malloc(_+t*g),I=o._malloc(_+u*g),T=o._malloc(_+u*g),M=b+_-b%_,v=w+_-w%_,x=I+_-I%_,E=T+_-T%_;try{return o.HEAPF64.subarray(M>>3,(M>>3)+t).set(r),o.HEAPF64.subarray(v>>3,(v>>3)+t).set(s),o.HEAPF64.subarray(x>>3,(x>>3)+u).set(d),o.HEAPF64.subarray(E>>3,(E>>3)+u).set(p),o.applyChronologicalLayout(e,t,n,i,a,M,v,u,y,f,x,E,c,h(m))}finally{o._free(b),o._free(w),o._free(I),o._free(T)}}),t,n,i,a,u)}}(I||(I={})),function(e){e[e.Undirected=0]="Undirected",e[e.Directed=1]="Directed",e[e.Reversed=2]="Reversed"}(T||(T={})),function(e){e[e.ByCC_Raw=0]="ByCC_Raw",e[e.ByCC_NormalizeGlobally=1]="ByCC_NormalizeGlobally",e[e.ByCC_NormalizeByCC=2]="ByCC_NormalizeByCC"}(M||(M={}))},73133:(e,t,n)=>{n.d(t,{j:()=>i});const i=(0,n(66552).O)()({esriTimeUnitsMilliseconds:"milliseconds",esriTimeUnitsSeconds:"seconds",esriTimeUnitsMinutes:"minutes",esriTimeUnitsHours:"hours",esriTimeUnitsDays:"days",esriTimeUnitsWeeks:"weeks",esriTimeUnitsMonths:"months",esriTimeUnitsYears:"years",esriTimeUnitsDecades:"decades",esriTimeUnitsCenturies:"centuries",esriTimeUnitsUnknown:void 0})},25927:(e,t,n)=>{n.d(t,{A:()=>u});var i=n(90237),r=n(10107),o=(n(44208),n(53966),n(87811),n(40608)),s=n(86738),a=n(54238);let l=class extends a.A{constructor(e){super(e),this.layoutGeometry=null}};(0,i._)([(0,r.MZ)({type:s.A,json:{write:!0}})],l.prototype,"layoutGeometry",void 0),l=(0,i._)([(0,o.$)("esri.rest.knowledgeGraph.Entity")],l);const u=l},54238:(e,t,n)=>{n.d(t,{A:()=>l});var i=n(90237),r=n(10107),o=(n(44208),n(53966),n(87811),n(40608)),s=n(77901);let a=class extends s.A{constructor(e){super(e),this.typeName=null,this.id=null}};(0,i._)([(0,r.MZ)({type:String,json:{write:!0}})],a.prototype,"typeName",void 0),(0,i._)([(0,r.MZ)({type:String,json:{write:!0}})],a.prototype,"id",void 0),a=(0,i._)([(0,o.$)("esri.rest.knowledgeGraph.GraphNamedObject")],a);const l=a},77901:(e,t,n)=>{n.d(t,{A:()=>l});var i=n(90237),r=n(25482),o=n(10107),s=(n(44208),n(53966),n(87811),n(40608));let a=class extends r.A{constructor(e){super(e),this.properties=null}};(0,i._)([(0,o.MZ)({json:{write:!0}})],a.prototype,"properties",void 0),a=(0,i._)([(0,s.$)("esri.rest.knowledgeGraph.GraphObject")],a);const l=a},42538:(e,t,n)=>{n.d(t,{A:()=>p});var i=n(90237),r=n(10107),o=(n(44208),n(53966),n(87811),n(40608)),s=n(16930),a=n(69622);let l=class extends a.A{constructor(e){super(e),this.openCypherQuery=""}};(0,i._)([(0,r.MZ)()],l.prototype,"openCypherQuery",void 0),l=(0,i._)([(0,o.$)("esri.rest.knowledgeGraph.GraphQuery")],l);const u=l;let d=class extends u{constructor(e){super(e),this.bindParameters=null,this.bindGeometryQuantizationParameters=null,this.outputQuantizationParameters=null,this.outputSpatialReference=null,this.provenanceBehavior=null}};(0,i._)([(0,r.MZ)()],d.prototype,"bindParameters",void 0),(0,i._)([(0,r.MZ)()],d.prototype,"bindGeometryQuantizationParameters",void 0),(0,i._)([(0,r.MZ)()],d.prototype,"outputQuantizationParameters",void 0),(0,i._)([(0,r.MZ)({type:s.A})],d.prototype,"outputSpatialReference",void 0),(0,i._)([(0,r.MZ)()],d.prototype,"provenanceBehavior",void 0),d=(0,i._)([(0,o.$)("esri.rest.knowledgeGraph.GraphQueryStreaming")],d);const p=d},40662:(e,t,n)=>{n.d(t,{A:()=>a});var i=n(90237),r=(n(53966),n(44208),n(87811),n(49186),n(40608)),o=n(77901);let s=class extends o.A{constructor(e){super(e)}};s=(0,i._)([(0,r.$)("esri.rest.knowledgeGraph.ObjectValue")],s);const a=s},42095:(e,t,n)=>{n.d(t,{A:()=>u});var i=n(90237),r=n(25482),o=n(10107),s=(n(44208),n(53966),n(87811),n(40608)),a=n(77901);let l=class extends r.A{constructor(e){super(e),this.path=[]}};(0,i._)([(0,o.MZ)({type:[a.A],json:{write:!0}})],l.prototype,"path",void 0),l=(0,i._)([(0,s.$)("esri.rest.knowledgeGraph.Path")],l);const u=l},23150:(e,t,n)=>{n.d(t,{A:()=>u});var i=n(90237),r=n(10107),o=(n(44208),n(53966),n(87811),n(40608)),s=n(82799),a=n(54238);let l=class extends a.A{constructor(e){super(e),this.originId=null,this.destinationId=null,this.layoutGeometry=null}};(0,i._)([(0,r.MZ)({type:String,json:{write:!0}})],l.prototype,"originId",void 0),(0,i._)([(0,r.MZ)({type:String,json:{write:!0}})],l.prototype,"destinationId",void 0),(0,i._)([(0,r.MZ)({type:s.A,json:{write:!0}})],l.prototype,"layoutGeometry",void 0),l=(0,i._)([(0,o.$)("esri.rest.knowledgeGraph.Relationship")],l);const u=l},62046:(e,t,n)=>{n.d(t,{Fe:()=>l,Nk:()=>o});var i=n(68197),r=n(93397);function o(e){const t=[];return s((0,r.lW)(e),t),t.length?new i.A((0,r.e6)(t[0])):null}function s(e,t){if(!e)return;let n;n="CIMTextSymbol"===e.type?e.symbol:e;const i="CIMPolygonSymbol"===e.type;if(n?.symbolLayers)for(const e of n.symbolLayers)if(!(e.colorLocked||i&&((0,r.mA)(e)||(0,r.MM)(e)&&e.markerPlacement&&(0,r.zr)(e.markerPlacement))))switch(e.type){case"CIMPictureMarker":case"CIMPictureStroke":case"CIMPictureFill":e.tintColor&&a(t,e.tintColor);break;case"CIMVectorMarker":e.markerGraphics?.forEach((e=>{s(e.symbol,t)}));break;case"CIMSolidStroke":case"CIMSolidFill":a(t,e.color);break;case"CIMHatchFill":s(e.lineSymbol,t)}}function a(e,t){for(const n of e)if(n.join(".")===t.join("."))return;e.push(t)}function l(e,t,n){t instanceof i.A||(t=new i.A(t));const o=(0,r.lW)(e);o&&u(o,t,n)}function u(e,t,n){if(!e)return;let i;i="CIMTextSymbol"===e.type?e.symbol:e;const o="CIMPolygonSymbol"===i?.type;if(i?.symbolLayers)for(const e of i.symbolLayers){if(e.colorLocked)continue;if(o)if(n){const{layersToColor:t}=n;if(((0,r.mA)(e)||(0,r.MM)(e)&&e.markerPlacement&&(0,r.zr)(e.markerPlacement))&&"fill"===t||(0,r.jn)(e)&&"outline"===t)continue}else if((0,r.mA)(e)||(0,r.MM)(e)&&e.markerPlacement&&(0,r.zr)(e.markerPlacement))continue;const i=t.toArray();switch(e.type){case"CIMPictureMarker":case"CIMPictureStroke":case"CIMPictureFill":e.tintColor=i;break;case"CIMVectorMarker":e.markerGraphics?.forEach((e=>{u(e.symbol,t,n)}));break;case"CIMSolidStroke":case"CIMSolidFill":e.color=i;break;case"CIMHatchFill":u(e.lineSymbol,t,n)}}}},37531:(e,t,n)=>{n.d(t,{dt:()=>h,GG:()=>_,UQ:()=>g,Sx:()=>p});var i=n(68197),r=n(60999),o=(n(44208),n(51850)),s=(n(76369),n(62046)),a=(n(2741),n(78888),n(66344));new Map([["dash",[4,3]],["dashdot",[4,3,1,3]],["dot",[1,3]],["longdash",[8,3]],["longdashdot",[8,3,1,3]],["longdashdotdot",[8,3,1,3,1,3]],["shortdash",[4,1]],["shortdashdot",[4,1,1,1]],["shortdashdotdot",[4,1,1,1,1,1]],["shortdot",[1,1]],["solid",[]]]),new a.q(1e3),new i.A([128,128,128]);var l=n(78504),u=n(33910);const d=new i.A("white");function p(e,t){if(!e)return null;let n=null;return(0,u.wk)(e)?n=function(e){const t=e.symbolLayers;if(!t)return null;let n=null;return t.forEach((e=>{"object"===e.type&&e.resource?.href||(n="water"===e.type?e.color:e.material?e.material.color:null)})),n?new i.A(n):null}(e):(0,u.$y)(e)&&(n="cim"===e.type?(0,s.Nk)(e):e.color?new i.A(e.color):null),n?c(n,t):null}function c(e,t){if(null==t||null==e)return e;const n=e.toRgba();return n[3]=n[3]*t,new i.A(n)}function h(e,t,n){e&&(t||null!=n)&&(t&&(t=new i.A(t)),(0,u.wk)(e)?function(e,t,n){const i=e.symbolLayers;if(!i)return;const r=e=>c(t=t??e??(null!=n?d:null),n);i.forEach((e=>{if("object"!==e.type||!e.resource?.href||t)if("water"===e.type)e.color=r(e.color);else{const t=null!=e.material?e.material.color:null,i=r(t);null==e.material?e.material=new l.N({color:i}):e.material.color=i,null!=n&&"outline"in e&&null!=e.outline?.color&&(e.outline.color=c(e.outline.color,n))}}))}(e,t,n):(0,u.$y)(e)&&function(e,t,n){(t=t??e.color)&&(e.color=c(t,n)),null!=n&&"outline"in e&&e.outline?.color&&(e.outline.color=c(e.outline.color,n))}(e,t,n))}function y(e){for(const t of e)if("number"==typeof t)return t;return null}function m(e,t,n){for(let i=0;i<3;i++){const r=e[i];switch(r){case"symbol-value":{const e=n[i];return null!=e?e/t[i]:1}case"proportional":break;default:if(r&&t[i])return r/t[i]}}return 1}function f(e,t,n,i){switch(e){case"proportional":return n*i;case"symbol-value":return null!=t?t:n;default:return e}}async function g(e,t){if(e&&t)return(0,u.wk)(e)?async function(e,t){const i=e.symbolLayers;i&&await(0,r.jJ)(i,(async e=>async function(e,t){switch(e.type){case"extrude":!function(e,t){e.size="number"==typeof t[2]?t[2]:0}(e,t);break;case"icon":case"line":case"text":!function(e,t){const n=y(t);null!=n&&(e.size=n)}(e,t);break;case"path":!function(e,t){const n=m(t,o.Un,[e.width,void 0,e.height]);e.width=f(t[0],e.width,1,n),e.height=f(t[2],e.height,1,n)}(e,t);break;case"object":await async function(e,t){const{resourceSize:i,symbolSize:r}=await async function(e){const{computeObjectLayerResourceSize:t}=await n.e(5404).then(n.bind(n,95404)),i=await t(e,10),{width:r,height:o,depth:s}=e,a=[r,s,o];let l=1;for(let e=0;e<3;e++){const t=a[e];if(null!=t){l=t/i[e];break}}for(let e=0;e<3;e++)null==a[e]&&(a[e]=i[e]*l);return{resourceSize:i,symbolSize:a}}(e),o=m(t,i,r);e.width=f(t[0],r[0],i[0],o),e.depth=f(t[1],r[1],i[1],o),e.height=f(t[2],r[2],i[2],o)}(e,t)}}(e,t)))}(e,t):void((0,u.$y)(e)&&function(e,t){const n=y(t);if(null!=n)switch(e.type){case"simple-marker":e.size=n;break;case"picture-marker":{const t=e.width/e.height;t>1?(e.width=n,e.height=n*t):(e.width=n*t,e.height=n);break}case"simple-line":e.width=n;break;case"text":e.font.size=n}}(e,t))}function _(e,t,n){if(e&&null!=t)if((0,u.wk)(e)){const i=e.symbolLayers;i&&i.forEach((e=>{if("object"===e.type)switch(n){case"tilt":e.tilt=(e.tilt??0)+t;break;case"roll":e.roll=(e.roll??0)+t;break;default:e.heading=(e.heading??0)+t}"icon"===e.type&&(e.angle+=t)}))}else(0,u.$y)(e)&&("simple-marker"!==e.type&&"picture-marker"!==e.type&&"text"!==e.type||(e.angle+=t))}},10184:(e,t,n)=>{n.d(t,{A:()=>c});var i=n(90237),r=n(69540),o=n(25482),s=n(88930),a=n(10107),l=(n(44208),n(53966),n(87811),n(93223)),u=n(40608),d=n(73133);let p=class extends(r.A.ClonableMixin(o.A)){constructor(e){super(e),this.unit="milliseconds",this.value=0}toMilliseconds(){return(0,s.t)(this.value,this.unit,"milliseconds")}};(0,i._)([(0,l.e)(d.j,{nonNullable:!0})],p.prototype,"unit",void 0),(0,i._)([(0,a.MZ)({type:Number,json:{write:!0},nonNullable:!0})],p.prototype,"value",void 0),p=(0,i._)([(0,u.$)("esri.time.TimeInterval")],p);const c=p}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[9432],{67482:(e,t,s)=>{function n(e){return null!=u(e)||null!=o(e)}function i(e){return a.test(e)}function r(e){return u(e)??o(e)}function o(e){const t=new Date(e);return function(e,t){if(Number.isNaN(e.getTime()))return!1;let s=!0;if(d&&/\d+\W*$/.test(t)){const e=t.match(/[a-zA-Z]{2,}/);if(e){let t=!1,n=0;for(;!t&&n<=e.length;)t=!l.test(e[n]),n++;s=!t}}return s}(t,e)?Number.isNaN(t.getTime())?null:t.getTime()-6e4*t.getTimezoneOffset():null}function u(e){const t=a.exec(e);if(!t?.groups)return null;const s=t.groups,n=+s.year,i=+s.month-1,r=+s.day,o=+(s.hours??"0"),u=+(s.minutes??"0"),l=+(s.seconds??"0");if(o>23)return null;if(u>59)return null;if(l>59)return null;const d=s.ms??"0",p=d?+d.padEnd(3,"0").slice(0,3):0;let c;if(s.isUTC||!s.offsetSign)c=Date.UTC(n,i,r,o,u,l,p);else{const e=+s.offsetHours,t=+s.offsetMinutes;c=6e4*("+"===s.offsetSign?-1:1)*(60*e+t)+Date.UTC(n,i,r,o,u,l,p)}return Number.isNaN(c)?null:c}s.d(t,{Br:()=>i,Cq:()=>n,_U:()=>r});const a=/^(?:(?<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})))?$/,l=/^((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,d=!Number.isNaN(new Date("technology 10").getTime())},33032:(e,t,s)=>{s.d(t,{H:()=>i,L:()=>n});const n=1;function i(e,t){let s=0;for(const n of t){const t=n.attributes?.[e];"number"==typeof t&&isFinite(t)&&(s=Math.max(s,t))}return s}},29432:(e,t,s)=>{s.r(t),s.d(t,{default:()=>E});var n=s(49186),i=s(65864),r=s(21325),o=s(90708),u=s(33032),a=s(58376),l=s(83221),d=s(31464),p=s(19730),c=s(64714),y=s(82832),f=s(95466),m=s(98453),h=s(30524),g=s(56400);const b=r.KK,I={xmin:-180,ymin:-90,xmax:180,ymax:90,spatialReference:r.KK},F={hasAttachments:!1,capabilities:"query, editing, create, delete, update",useStandardizedQueries:!0,supportsCoordinatesQuantization:!0,supportsReturningQueryGeometry:!0,advancedQueryCapabilities:{supportsQueryAttachments:!1,supportsQueryAttachmentOrderByFields:!1,supportsQueryBins:!0,supportsStatistics:!0,supportsPercentileStatistics:!0,supportsReturningGeometryCentroid:!0,supportsQueryWithDistance:!0,supportsDistinct:!0,supportsReturningQueryExtent:!0,supportsReturningGeometryProperties:!1,supportsHavingClause:!0,supportsOrderBy:!0,supportsPagination:!0,supportsQueryWithResultType:!0,supportsSqlExpression:!0,supportsDisjointSpatialRel:!0,supportsQueryWithCacheHint:!0},queryBinsCapabilities:y.PC};function S(e){return(0,i.fT)(e)?null!=e.z:!!e.hasZ}function T(e){return(0,i.fT)(e)?null!=e.m:!!e.hasM}class E{constructor(){this._queryEngine=null,this._nextObjectId=null}destroy(){this._queryEngine?.destroy(),this._queryEngine=this._createDefaultAttributes=null}async load(e){const t=[],{features:s}=e,i=this._inferLayerProperties(s,e.fields),r=e.fields||[],o=null!=e.hasM?e.hasM:!!i.hasM,a=null!=e.hasZ?e.hasZ:!!i.hasZ,y=!e.spatialReference&&!i.spatialReference,S=y?b:e.spatialReference||i.spatialReference,T=y?I:null,E=e.geometryType||i.geometryType,R=!E;let x=e.objectIdField||i.objectIdField,C=e.timeInfo;const A=new f.A(r);if(!R&&(y&&t.push({name:"feature-layer:spatial-reference-not-found",message:"Spatial reference not provided or found in features. Defaults to WGS84"}),!E))throw new n.A("feature-layer:missing-property","geometryType not set and couldn't be inferred from the provided features");if(!x)throw new n.A("feature-layer:missing-property","objectIdField not set and couldn't be found in the provided fields");if(i.objectIdField&&x!==i.objectIdField&&(t.push({name:"feature-layer:duplicated-oid-field",message:`Provided objectIdField "${x}" doesn't match the field name "${i.objectIdField}", found in the provided fields`}),x=i.objectIdField),x&&!i.objectIdField){const e=A.get(x);e?(x=e.name,e.type="esriFieldTypeOID",e.editable=!1,e.nullable=!1):r.unshift({alias:x,name:x,type:"esriFieldTypeOID",editable:!1,nullable:!1})}for(const e of r){if(null==e.name&&(e.name=e.alias),null==e.alias&&(e.alias=e.name),!e.name)throw new n.A("feature-layer:invalid-field-name","field name is missing",{field:e});if(e.name===x&&(e.type="esriFieldTypeOID"),!m.m.jsonValues.includes(e.type))throw new n.A("feature-layer:invalid-field-type",`invalid type for field "${e.name}"`,{field:e});null==e.length&&(e.length=(0,h._b)(e))}const _={};for(const e of r)if("esriFieldTypeOID"!==e.type&&"esriFieldTypeGlobalID"!==e.type){const t=(0,h.lD)(e);void 0!==t&&(_[e.name]=t)}if(C){if(C.startTimeField){const e=A.get(C.startTimeField);e?(C.startTimeField=e.name,e.type="esriFieldTypeDate"):C.startTimeField=null}if(C.endTimeField){const e=A.get(C.endTimeField);e?(C.endTimeField=e.name,e.type="esriFieldTypeDate"):C.endTimeField=null}if(C.trackIdField){const e=A.get(C.trackIdField);e?C.trackIdField=e.name:(C.trackIdField=null,t.push({name:"feature-layer:invalid-timeInfo-trackIdField",message:"trackIdField is missing",details:{timeInfo:C}}))}C.startTimeField||C.endTimeField||(t.push({name:"feature-layer:invalid-timeInfo",message:"startTimeField and endTimeField are missing or invalid",details:{timeInfo:C}}),C=null)}const w=A.dateFields.length?{timeZoneIANA:e.dateFieldsTimeZone??g.n$}:null;this._createDefaultAttributes=(0,c.Vx)(_,x);const j={warnings:t,featureErrors:[],layerDefinition:{...F,drawingInfo:(0,c.F0)(E),templates:(0,c.e2)(_),extent:T,geometryType:E,objectIdField:x,fields:r,hasZ:a,hasM:o,timeInfo:C,dateFieldsTimeReference:w},assignedObjectIds:{}};if(this._queryEngine=new p.do({fieldsIndex:f.A.fromLayerJSON({fields:r,timeInfo:C,dateFieldsTimeReference:w}),geometryType:E,hasM:o,hasZ:a,objectIdField:x,spatialReference:S,featureStore:new l.A({geometryType:E,hasM:o,hasZ:a}),timeInfo:C}),!s?.length)return this._nextObjectId=u.L,j;const q=(0,u.H)(x,s);return this._nextObjectId=q+1,await(0,d.Nk)(s,S),this._loadInitialFeatures(j,s)}async applyEdits(e){const{spatialReference:t,geometryType:s}=this._queryEngine;return await Promise.all([(0,y.$1)(t,s),(0,d.Nk)(e.adds,t),(0,d.Nk)(e.updates,t)]),this._applyEdits(e)}queryFeatures(e,t={}){return this._queryEngine.executeQuery(e,t.signal)}queryFeatureCount(e,t={}){return this._queryEngine.executeQueryForCount(e,t.signal)}queryObjectIds(e,t={}){return this._queryEngine.executeQueryForIds(e,t.signal)}queryExtent(e,t={}){return this._queryEngine.executeQueryForExtent(e,t.signal)}querySnapping(e,t={}){return(0,a.J)(this._queryEngine,e,t.signal)}queryAttributeBins(e,t={}){return this._queryEngine.executeAttributeBinsQuery(e,t.signal)}_inferLayerProperties(e,t){let s,n,r=null,o=null,u=null;for(const t of e){const e=t.geometry;if(null!=e&&(r||(r=(0,i.$B)(e)),o||(o=e.spatialReference),null==s&&(s=S(e)),null==n&&(n=T(e)),r&&o&&null!=s&&null!=n))break}if(t&&t.length){let e=null;t.some((t=>{const s="esriFieldTypeOID"===t.type,n=!t.type&&t.name&&"objectid"===t.name.toLowerCase();return e=t,s||n}))&&(u=e.name)}return{geometryType:r,spatialReference:o,objectIdField:u,hasM:n,hasZ:s}}async _loadInitialFeatures(e,t){const{geometryType:s,hasM:n,hasZ:r,objectIdField:u,spatialReference:a,featureStore:l,fieldsIndex:p}=this._queryEngine,c=[];for(const n of t){if(null!=n.uid&&(e.assignedObjectIds[n.uid]=-1),n.geometry&&s!==(0,i.$B)(n.geometry)){e.featureErrors.push((0,y.Yx)("Incorrect geometry type."));continue}const t=this._createDefaultAttributes(),r=(0,y.MB)(p,t,n.attributes,!0);r?e.featureErrors.push(r):(this._assignObjectId(t,n.attributes,!0),n.attributes=t,null!=n.uid&&(e.assignedObjectIds[n.uid]=n.attributes[u]),null!=n.geometry&&(n.geometry=(0,d.Cv)(n.geometry,n.geometry.spatialReference,a)),c.push(n))}l.addMany((0,o.Di)([],c,s,r,n,u));const{fullExtent:f,timeExtent:m}=await this._queryEngine.fetchRecomputedExtents();if(e.layerDefinition.extent=f,m){const{start:t,end:s}=m;e.layerDefinition.timeInfo.timeExtent=[t,s]}return e}async _applyEdits(e){const{adds:t,updates:s,deletes:n}=e,i={addResults:[],deleteResults:[],updateResults:[],uidToObjectId:{}};if(t?.length&&this._applyAddEdits(i,t),s?.length&&this._applyUpdateEdits(i,s),n?.length){for(const e of n)i.deleteResults.push((0,y.bP)(e));this._queryEngine.featureStore.removeManyById(n)}const{fullExtent:r,timeExtent:o}=await this._queryEngine.fetchRecomputedExtents();return{extent:r,timeExtent:o,featureEditResults:i}}_applyAddEdits(e,t){const{addResults:s}=e,{geometryType:n,hasM:r,hasZ:u,objectIdField:a,spatialReference:l,featureStore:p,fieldsIndex:c}=this._queryEngine,f=[];for(const r of t){if(r.geometry&&n!==(0,i.$B)(r.geometry)){s.push((0,y.Yx)("Incorrect geometry type."));continue}const t=this._createDefaultAttributes(),o=(0,y.MB)(c,t,r.attributes);if(o)s.push(o);else{if(this._assignObjectId(t,r.attributes),r.attributes=t,null!=r.uid){const t=r.attributes[a];e.uidToObjectId[r.uid]=t}if(null!=r.geometry){const e=r.geometry.spatialReference??l;r.geometry=(0,d.Cv)((0,y.CR)(r.geometry,e),e,l)}f.push(r),s.push((0,y.bP)(r.attributes[a]))}}p.addMany((0,o.Di)([],f,n,u,r,a))}_applyUpdateEdits({updateResults:e},t){const{geometryType:s,hasM:n,hasZ:r,objectIdField:u,spatialReference:a,featureStore:l,fieldsIndex:p}=this._queryEngine;for(const c of t){const{attributes:t,geometry:f}=c,m=t?.[u];if(null==m){e.push((0,y.Yx)(`Identifier field ${u} missing`));continue}if(!l.has(m)){e.push((0,y.Yx)(`Feature with object id ${m} missing`));continue}const h=(0,o.oN)(l.getFeature(m),s,r,n);if(null!=f){if(s!==(0,i.$B)(f)){e.push((0,y.Yx)("Incorrect geometry type."));continue}const t=f.spatialReference??a;h.geometry=(0,d.Cv)((0,y.CR)(f,t),t,a)}if(t){const s=(0,y.MB)(p,h.attributes,t);if(s){e.push(s);continue}}l.add((0,o.E2)(h,s,r,n,u)),e.push((0,y.bP)(m))}}_assignObjectId(e,t,s=!1){const n=this._queryEngine.objectIdField;s&&t&&isFinite(t[n])?e[n]=t[n]:e[n]=this._nextObjectId++}}},64714:(e,t,s)=>{s.d(t,{F0:()=>u,Vx:()=>d,e2:()=>c,f:()=>y});var n=s(44208),i=s(4718),r=s(99352),o=s(93470);function u(e){return{renderer:{type:"simple",symbol:"esriGeometryPoint"===e||"esriGeometryMultipoint"===e?o.Cb:"esriGeometryPolyline"===e?o.yM:o.WR}}}const a=/^[_$a-zA-Z][_$a-zA-Z0-9]*$/;let l=1;function d(e,t){if((0,n.A)("esri-csp-restrictions"))return()=>({[t]:null,...e});try{let s=`this${p(t)} = null;`;for(const t in e)s+=`this${p(t)} = ${JSON.stringify(e[t])};`;const n=new Function(`\n return class AttributesClass$${l++} {\n constructor() {\n ${s};\n }\n }\n `)();return()=>new n}catch(s){return()=>({[t]:null,...e})}}function p(e){return a.test(e)?`.${e}`:`["${e}"]`}function c(e={}){return[{name:"New Feature",description:"",prototype:{attributes:(0,i.o8)(e)}}]}function y(e,t){return{analytics:{supportsCacheHint:!1},attachment:null,data:{isVersioned:!1,isBranchVersioned:!1,supportsAttachment:!1,supportsM:!1,supportsZ:e},metadata:{supportsAdvancedFieldProperties:!1},operations:{supportsCalculate:!1,supportsTruncate:!1,supportsValidateSql:!1,supportsAdd:t,supportsDelete:t,supportsEditing:t,supportsChangeTracking:!1,supportsQuery:!0,supportsQueryBins:!0,supportsQueryAnalytics:!1,supportsQueryAttachments:!1,supportsQueryTopFeatures:!1,supportsResizeAttachments:!1,supportsSync:!1,supportsUpdate:t,supportsExceedsLimitStatistics:!0,supportsAsyncConvert3D:!1},query:r.F,queryRelated:{supportsCount:!0,supportsOrderBy:!0,supportsPagination:!0,supportsCacheHint:!1},queryTopFeatures:{supportsCacheHint:!1},queryAttributeBins:r.P,editing:{supportsGeometryUpdate:t,supportsGlobalId:!1,supportsReturnServiceEditsInSourceSpatialReference:!1,supportsRollbackOnFailure:!1,supportsUpdateWithoutM:!1,supportsUploadWithItemId:!1,supportsDeleteByAnonymous:!1,supportsDeleteByOthers:!1,supportsUpdateByAnonymous:!1,supportsUpdateByOthers:!1,supportsAsyncApplyEdits:!1,zDefault:void 0}}}},82832:(e,t,s)=>{s.d(t,{$1:()=>h,CR:()=>m,MB:()=>c,PC:()=>g,Yx:()=>a,bP:()=>d});var n=s(67482),i=s(21325),r=s(30524);class o{constructor(){this.code=null,this.description=null}}class u{constructor(e){this.error=new o,this.globalId=null,this.objectId=null,this.success=!1,this.uniqueId=null,this.error.description=e}}function a(e){return new u(e)}class l{constructor(e){this.globalId=null,this.success=!0,this.objectId=this.uniqueId=e}}function d(e){return new l(e)}const p=new Set;function c(e,t,s,n=!1){p.clear();for(const i in s){const o=e.get(i);if(!o)continue;const u=y(o,s[i]);if(p.add(o.name),o&&(n||o.editable)){const e=(0,r.CJ)(o,u);if(e)return a((0,r.uo)(e,o,u));t[o.name]=u}}for(const t of e.requiredFields??[])if(!p.has(t.name))return a(`missing required field "${t.name}"`);return null}function y(e,t){let s=t;return(0,r.WA)(e)&&"string"==typeof t?s=parseFloat(t):(0,r.yM)(e)&&null!=t&&"string"!=typeof t?s=String(t):(0,r.vE)(e)&&"string"==typeof t&&(s=(0,n._U)(t)),(0,r.WX)(s)}let f;function m(e,t){if(!e||!(0,i.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 h(e,t){!(0,i.fn)(e)||"esriGeometryPolygon"!==t&&"esriGeometryPolyline"!==t||await async function(){return null==f&&(f=await Promise.all([s.e(9930),s.e(1275)]).then(s.bind(s,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"]}},93470:(e,t,s)=>{s.d(t,{Cb:()=>r,HW:()=>d,JR:()=>i,JZ:()=>a,WR:()=>u,b6:()=>p,fT:()=>n,nC:()=>l,yM:()=>o});const n=[252,146,31,255],i=[153,153,153,255],r={type:"esriSMS",style:"esriSMSCircle",size:6,color:n,outline:{type:"esriSLS",style:"esriSLSSolid",width:.75,color:[153,153,153,255]}},o={type:"esriSLS",style:"esriSLSSolid",width:.75,color:n},u={type:"esriSFS",style:"esriSFSSolid",color:[252,146,31,196],outline:{type:"esriSLS",style:"esriSLSSolid",width:.75,color:[255,255,255,191]}},a={type:"esriTS",color:[255,255,255,255],font:{family:"arial-unicode-ms",size:10,weight:"bold"},horizontalAlignment:"center",kerning:!0,haloColor:[0,0,0,255],haloSize:1,rotated:!1,text:"",xoffset:0,yoffset:0,angle:0},l={type:"esriSMS",style:"esriSMSCircle",color:[0,0,0,255],outline:null,size:10.5},d={type:"esriSLS",style:"esriSLSSolid",color:[0,0,0,255],width:1.5},p={type:"esriSFS",style:"esriSFSSolid",color:[0,0,0,255],outline:null}}}]);