@arcgis/core 6.0.0-next.8 → 6.0.0-next.9

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 (330) hide show
  1. package/arcade/featureSetUtils.js +1 -1
  2. package/assets/esri/core/workers/RemoteClient.js +1 -1
  3. package/assets/esri/core/workers/chunks/{85908e6e9c50749cee60.js → 037a8cc19debbaaa4e10.js} +1 -1
  4. package/assets/esri/core/workers/chunks/066550852483ab8f77bc.js +1 -0
  5. package/assets/esri/core/workers/chunks/0f725cf79ce00e790a7d.js +1 -0
  6. package/assets/esri/core/workers/chunks/12a7997a40c77f5c9160.js +1 -0
  7. package/assets/esri/core/workers/chunks/1b077c92345ffb5916c2.js +1 -0
  8. package/assets/esri/core/workers/chunks/{6dd0b79fa3a629ab4f27.js → 1bca39e0e651426bdbb5.js} +1 -1
  9. package/assets/esri/core/workers/chunks/{1b35ec54968fbeec17ce.js → 2686fe5b62dd0be699c0.js} +1 -1
  10. package/assets/esri/core/workers/chunks/2a97268000c6d03ef720.js +1 -0
  11. package/assets/esri/core/workers/chunks/2e2e33ec50e97b91b178.js +1 -0
  12. package/assets/esri/core/workers/chunks/{7a05b18f655c1167ce0a.js → 2ef5237e4c876d6a4ee0.js} +1 -1
  13. package/assets/esri/core/workers/chunks/{776ae25a34352d3468bc.js → 3081ee6d8019494fc21e.js} +1 -1
  14. package/assets/esri/core/workers/chunks/37d6a264a3f1d8072aa0.js +1 -0
  15. package/assets/esri/core/workers/chunks/3df5500a85345577480a.js +1 -0
  16. package/assets/esri/core/workers/chunks/{ded8b64a46992c3ae693.js → 40a584cb952e94326e9e.js} +1 -1
  17. package/assets/esri/core/workers/chunks/{1ba0dfbe0958cdbd7c9f.js → 42fd2a7b22b03dacc6a7.js} +1 -1
  18. package/assets/esri/core/workers/chunks/444e5f214abce3d607cd.js +1 -0
  19. package/assets/esri/core/workers/chunks/{d201fbf3ceff946d2bd6.js → 44d5508042cacdfcac47.js} +1 -1
  20. package/assets/esri/core/workers/chunks/{09a63cc1987f8636c5b0.js → 4503b20ca6a80fb63d72.js} +1 -1
  21. package/assets/esri/core/workers/chunks/45367aa8e5c5d574de94.js +1 -0
  22. package/assets/esri/core/workers/chunks/45800373650fbc8262e6.js +1 -0
  23. package/assets/esri/core/workers/chunks/{6a7ab1ef9a37e87db5ae.js → 46a7da93a63663878583.js} +1 -1
  24. package/assets/esri/core/workers/chunks/{f43a50d4bd9636e68ae5.js → 46b4fb6a7fe4877b0efc.js} +63 -61
  25. package/assets/esri/core/workers/chunks/47d074136a7f8e551a9a.js +1 -0
  26. package/assets/esri/core/workers/chunks/{257910cca66dc5df465e.js → 4911ce62421a6c3320b0.js} +1 -1
  27. package/assets/esri/core/workers/chunks/4a1e23e021bac37a88ab.js +1 -0
  28. package/assets/esri/core/workers/chunks/4debf2d9c3465250ef7a.js +1 -0
  29. package/assets/esri/core/workers/chunks/4e8e322b469657ac22e2.js +1 -0
  30. package/assets/esri/core/workers/chunks/54b18559280a7d2a8d93.js +1 -0
  31. package/assets/esri/core/workers/chunks/567a65f4203f6e81f4b4.js +1 -0
  32. package/assets/esri/core/workers/chunks/5c7780f804d789cb37f5.js +1 -0
  33. package/assets/esri/core/workers/chunks/{ceb680688fe7e570a774.js → 608be1172a908e92b9f1.js} +1 -1
  34. package/assets/esri/core/workers/chunks/{6f358116f79021ff9687.js → 612104dff305ff062dfa.js} +2 -2
  35. package/assets/esri/core/workers/chunks/6299be5e7e26bf3c6859.js +1 -0
  36. package/assets/esri/core/workers/chunks/6400446b7615b97c3521.js +1 -0
  37. package/assets/esri/core/workers/chunks/6431480ba0fa8c8d487f.js +1 -0
  38. package/assets/esri/core/workers/chunks/6c9acd9e4e201dc380e9.js +1 -0
  39. package/assets/esri/core/workers/chunks/7449568eb2305bf2d650.js +1 -0
  40. package/assets/esri/core/workers/chunks/745a153d0cd34faa124e.js +1 -0
  41. package/assets/esri/core/workers/chunks/7572c2bc5062e66f6330.js +1 -0
  42. package/assets/esri/core/workers/chunks/78472a57c2ba146fec65.js +1 -0
  43. package/assets/esri/core/workers/chunks/7f0f9dddc44b1f1600f0.js +1 -0
  44. package/assets/esri/core/workers/chunks/{56a24061589f4a968818.js → 814751e705c05099f864.js} +1 -1
  45. package/assets/esri/core/workers/chunks/8293600f94553afc8c38.js +1 -0
  46. package/assets/esri/core/workers/chunks/836bb3673ab30fc66f1e.js +1 -0
  47. package/assets/esri/core/workers/chunks/8487727f1197cf7dbf50.js +1 -0
  48. package/assets/esri/core/workers/chunks/{ceb112fe7aef354f8051.js → 88e54449261ef94e390d.js} +1 -1
  49. package/assets/esri/core/workers/chunks/8b0d5551978ab0aac0d1.js +1 -0
  50. package/assets/esri/core/workers/chunks/8d0c2de92770a1567536.js +1 -0
  51. package/assets/esri/core/workers/chunks/{c76c42c74eedd43263d3.js → 9dd1fc56eb1ea6eb705e.js} +1 -1
  52. package/assets/esri/core/workers/chunks/{86a051e9fe71aa356108.js → 9e3e442a9874ed23a043.js} +1 -1
  53. package/assets/esri/core/workers/chunks/a40b6d8b5c73e06e14d4.js +1 -0
  54. package/assets/esri/core/workers/chunks/aaba33611753c6aada68.js +1 -0
  55. package/assets/esri/core/workers/chunks/aeaaff7a4b1a99540f52.js +1 -0
  56. package/assets/esri/core/workers/chunks/{ecaac39dde7ec4213264.js → af75747b06d79446a855.js} +1 -1
  57. package/assets/esri/core/workers/chunks/b564ec4e03478f5659db.js +1 -0
  58. package/assets/esri/core/workers/chunks/bc0f54a2c15502b630ec.js +1 -0
  59. package/assets/esri/core/workers/chunks/c1c534e08fc21842670b.js +1 -0
  60. package/assets/esri/core/workers/chunks/{9ab25ee06041f907b9a2.js → c2c1f51a4668055c2838.js} +1 -1
  61. package/assets/esri/core/workers/chunks/c337fc0e6dc69c233e6d.js +1 -0
  62. package/assets/esri/core/workers/chunks/{a7985d20fa6e8d4878e7.js → d0f5bee9db1ad51ae687.js} +1 -1
  63. package/assets/esri/core/workers/chunks/dba280c370df13196711.js +1 -0
  64. package/assets/esri/core/workers/chunks/{19b9d393046a780e6c3f.js → de5ecb567bd69c613e9d.js} +1 -1
  65. package/assets/esri/core/workers/chunks/{534186fc921a0ccf58dc.js → e1f5d00878f27e1d413e.js} +1 -1
  66. package/assets/esri/core/workers/chunks/e65dfa19f030ec298437.js +1 -0
  67. package/assets/esri/core/workers/chunks/e932951598499befabf5.js +1 -0
  68. package/assets/esri/core/workers/chunks/f1df76f098a3cc924832.js +1 -0
  69. package/assets/esri/core/workers/chunks/f1f90adae13b04898008.js +1 -0
  70. package/assets/esri/core/workers/chunks/f4f9d08b2df856e3b694.js +1 -0
  71. package/assets/esri/core/workers/chunks/fc44227c1756f65b95df.js +1 -0
  72. package/assets/esri/core/workers/chunks/{3b737dae6efed627406e.js → fc44d45598a7476bc606.js} +1 -1
  73. package/assets/esri/themes/base/_mixins.scss +2 -2
  74. package/assets/esri/themes/base/widgets/_Attribution.scss +1 -1
  75. package/assets/esri/themes/base/widgets/_BasemapLayerList.scss +2 -2
  76. package/assets/esri/themes/base/widgets/_BatchAttributeForm.scss +5 -5
  77. package/assets/esri/themes/base/widgets/_Bookmarks.scss +1 -1
  78. package/assets/esri/themes/base/widgets/_BuildingLevelPicker.scss +2 -2
  79. package/assets/esri/themes/base/widgets/_BuildingPhasePicker.scss +5 -5
  80. package/assets/esri/themes/base/widgets/_CatalogLayerList.scss +1 -1
  81. package/assets/esri/themes/base/widgets/_Compass.scss +0 -2
  82. package/assets/esri/themes/base/widgets/_DirectionalPad.scss +4 -10
  83. package/assets/esri/themes/base/widgets/_Directions.scss +40 -40
  84. package/assets/esri/themes/base/widgets/_Editor.scss +7 -7
  85. package/assets/esri/themes/base/widgets/_Expand.scss +1 -1
  86. package/assets/esri/themes/base/widgets/_Feature.scss +1 -1
  87. package/assets/esri/themes/base/widgets/_FeatureForm.scss +6 -6
  88. package/assets/esri/themes/base/widgets/_FeatureFormUtilityNetworkAssociationLayers.scss +1 -1
  89. package/assets/esri/themes/base/widgets/_FeatureFormUtilityNetworkAssociationList.scss +1 -1
  90. package/assets/esri/themes/base/widgets/_FeatureFormUtilityNetworkAssociationSettings.scss +3 -3
  91. package/assets/esri/themes/base/widgets/_FeatureTable.scss +27 -27
  92. package/assets/esri/themes/base/widgets/_FeatureTemplates.scss +1 -1
  93. package/assets/esri/themes/base/widgets/_Features.scss +5 -5
  94. package/assets/esri/themes/base/widgets/_FilterBuilder.scss +1 -1
  95. package/assets/esri/themes/base/widgets/_FilterCondition.scss +1 -1
  96. package/assets/esri/themes/base/widgets/_Grid.scss +18 -18
  97. package/assets/esri/themes/base/widgets/_GridControls.scss +11 -11
  98. package/assets/esri/themes/base/widgets/_LayerList.scss +1 -1
  99. package/assets/esri/themes/base/widgets/_Legend.scss +5 -5
  100. package/assets/esri/themes/base/widgets/_NavigationToggle.scss +4 -1
  101. package/assets/esri/themes/base/widgets/_OrientedImageryViewer.scss +18 -19
  102. package/assets/esri/themes/base/widgets/_ResponsiveToolbar.scss +0 -2
  103. package/assets/esri/themes/base/widgets/_SearchResultRenderer.scss +1 -1
  104. package/assets/esri/themes/base/widgets/_SelectionList.scss +15 -15
  105. package/assets/esri/themes/base/widgets/_SelectionToolbar.scss +2 -2
  106. package/assets/esri/themes/base/widgets/_ShadowCast.scss +11 -11
  107. package/assets/esri/themes/base/widgets/_Sketch.scss +1 -1
  108. package/assets/esri/themes/base/widgets/_Slice.scss +3 -3
  109. package/assets/esri/themes/base/widgets/_SnappingControls.scss +1 -1
  110. package/assets/esri/themes/base/widgets/_TimeSlider.scss +5 -5
  111. package/assets/esri/themes/base/widgets/_TimeZoneLabel.scss +5 -4
  112. package/assets/esri/themes/base/widgets/_Tooltip.scss +14 -17
  113. package/assets/esri/themes/base/widgets/_UtilityNetworkAssociations.scss +2 -2
  114. package/assets/esri/themes/base/widgets/_UtilityNetworkTrace.scss +1 -1
  115. package/assets/esri/themes/base/widgets/_UtilityNetworkValidateTopology.scss +2 -2
  116. package/assets/esri/themes/base/widgets/_ValuePicker.scss +2 -2
  117. package/assets/esri/themes/base/widgets/_VideoPlayer.scss +5 -5
  118. package/assets/esri/themes/base/widgets/_Widget.scss +5 -1
  119. package/assets/esri/themes/dark/main.css +1 -1
  120. package/assets/esri/themes/light/main.css +1 -1
  121. package/assets/esri/themes/light/view.css +1 -1
  122. package/chunks/AtmosphereCompositing.glsl.js +1 -1
  123. package/chunks/ChapmanAtmosphere.glsl.js +3 -3
  124. package/chunks/CloudsComposition.glsl.js +1 -1
  125. package/chunks/Component.glsl.js +41 -41
  126. package/chunks/DefaultMaterial.glsl.js +2 -2
  127. package/chunks/EdgeShader.glsl.js +9 -9
  128. package/chunks/Fog.glsl.js +5 -5
  129. package/chunks/GaussianSplat.glsl.js +2 -2
  130. package/chunks/GlobalIllumination.glsl.js +9 -9
  131. package/chunks/HUDMaterial.glsl.js +13 -13
  132. package/chunks/Haze.glsl.js +6 -6
  133. package/chunks/HazeCompositing.glsl.js +1 -1
  134. package/chunks/LaserlinePath.glsl.js +6 -6
  135. package/chunks/LineCallout.glsl.js +1 -1
  136. package/chunks/LineMarker.glsl.js +5 -5
  137. package/chunks/NavigationDepth.glsl.js +2 -2
  138. package/chunks/Path.glsl.js +1 -1
  139. package/chunks/Pattern.glsl.js +26 -26
  140. package/chunks/Precipitation.glsl.js +7 -7
  141. package/chunks/RealisticTree.glsl.js +2 -2
  142. package/chunks/RibbonLine.glsl.js +60 -60
  143. package/chunks/ShadowCastAccumulate.glsl.js +1 -1
  144. package/chunks/ShadowHighlight.glsl.js +5 -5
  145. package/chunks/ShadowHighlightBuffer.glsl.js +1 -1
  146. package/chunks/SimpleAtmosphere.glsl.js +4 -4
  147. package/chunks/Terrain.glsl.js +29 -32
  148. package/chunks/Viewshed.glsl.js +2 -2
  149. package/chunks/Water.glsl.js +2 -2
  150. package/config.js +1 -1
  151. package/core/Loadable.js +1 -1
  152. package/geometry/HeightModelInfo.js +1 -1
  153. package/geometry/support/meshUtils.d.ts +1 -1
  154. package/kernel.js +1 -1
  155. package/layers/BaseDynamicLayer.d.ts +1 -0
  156. package/layers/BaseElevationLayer.d.ts +2 -0
  157. package/layers/BaseTileLayer.d.ts +12 -9
  158. package/layers/CSVLayer.d.ts +0 -15
  159. package/layers/FeatureLayer.d.ts +2 -15
  160. package/layers/GeoJSONLayer.d.ts +0 -52
  161. package/layers/GeoRSSLayer.d.ts +0 -44
  162. package/layers/ParquetLayer.d.ts +92 -12
  163. package/layers/ParquetLayer.js +1 -1
  164. package/layers/SketchLayer.d.ts +0 -1
  165. package/layers/VectorTileLayer.d.ts +2 -12
  166. package/layers/graphics/sources/support/ParquetSourceWorker.js +1 -1
  167. package/layers/mixins/PortalLayer.js +1 -1
  168. package/layers/mixins/RefreshableLayer.d.ts +1 -3
  169. package/layers/raster/datasets/GeospatialPDFRaster.js +1 -1
  170. package/layers/raster/datasets/TIFFRaster.js +1 -1
  171. package/layers/raster/formats/tiffParser.js +1 -1
  172. package/layers/support/ParquetPortalItemData.d.ts +2 -0
  173. package/layers/support/ParquetPortalItemData.js +1 -1
  174. package/layers/support/PortalItemData.d.ts +21 -0
  175. package/layers/support/PortalItemData.js +1 -1
  176. package/layers/support/layersLoader.js +1 -1
  177. package/layers/support/parquetUtils.d.ts +1 -1
  178. package/layers/support/types.d.ts +1 -1
  179. package/package.json +2 -2
  180. package/popup/FeaturesModel.d.ts +1 -1
  181. package/popup/FeaturesModel.js +1 -1
  182. package/portal/support/layersLoader.js +1 -1
  183. package/portal/support/portalLayers.js +1 -1
  184. package/rest/print.js +1 -1
  185. package/views/2d/layers/features/sources/FeatureSource.js +1 -1
  186. package/views/3d/analysis/ShadowCast/ShadowCastTooltip.js +1 -1
  187. package/views/3d/interactive/editingTools/originGeometryVisualElementUtils.js +1 -1
  188. package/views/3d/layers/graphics/Deconflictor.js +1 -1
  189. package/views/3d/layers/graphics/ElevationAligners.js +1 -1
  190. package/views/3d/layers/graphics/Graphics3DBufferGraphicLayer.js +2 -0
  191. package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
  192. package/views/3d/layers/graphics/Graphics3DDrapedBufferGraphicLayer.js +2 -0
  193. package/views/3d/layers/graphics/Graphics3DDrapedGraphicLayer.js +1 -1
  194. package/views/3d/layers/graphics/Graphics3DDrapedGraphicLayerBase.js +2 -0
  195. package/views/3d/layers/graphics/Graphics3DGraphic.js +1 -1
  196. package/views/3d/layers/graphics/Graphics3DIconSymbolLayer.js +1 -1
  197. package/views/3d/layers/graphics/Graphics3DObject3DGraphicLayer.js +1 -1
  198. package/views/3d/layers/graphics/Graphics3DStageObjectGraphicLayer.js +2 -0
  199. package/views/3d/layers/graphics/Graphics3DSymbol.js +1 -1
  200. package/views/3d/layers/graphics/LabelInfo.js +1 -1
  201. package/views/3d/layers/graphics/elevationAlignmentUtils.js +1 -1
  202. package/views/3d/layers/graphics/pointUtils.js +1 -1
  203. package/views/3d/terrain/OverlayManager.js +1 -1
  204. package/views/3d/terrain/OverlayRenderer.js +1 -1
  205. package/views/3d/webgl-engine/collections/Component/Material/Component.glsl.js +1 -1
  206. package/views/3d/webgl-engine/core/shaderLibrary/Laserline.glsl.js +5 -5
  207. package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexPosition.glsl.js +13 -13
  208. package/views/3d/webgl-engine/core/shaderLibrary/bindUniforms.js +2 -0
  209. package/views/3d/webgl-engine/core/shaderLibrary/hud/HUD.glsl.js +2 -2
  210. package/views/3d/webgl-engine/core/shaderLibrary/lastFrameUniforms.js +2 -0
  211. package/views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js +7 -7
  212. package/views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js +29 -27
  213. package/views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js +4 -4
  214. package/views/3d/webgl-engine/core/shaderLibrary/shading/MainLighting.glsl.js +2 -2
  215. package/views/3d/webgl-engine/core/shaderLibrary/shading/MarkerSizing.glsl.js +14 -14
  216. package/views/3d/webgl-engine/core/shaderLibrary/shading/NormalUtils.glsl.js +1 -1
  217. package/views/3d/webgl-engine/core/shaderLibrary/shading/ScreenSpaceRayMarching.glsl.js +5 -5
  218. package/views/3d/webgl-engine/core/shaderLibrary/shading/WaterColor.glsl.js +8 -8
  219. package/views/3d/webgl-engine/core/shaderLibrary/shading/evaluateSceneLightingFragment.glsl.js +1 -1
  220. package/views/3d/webgl-engine/core/shaderLibrary/shading/lightingUniforms.js +2 -0
  221. package/views/3d/webgl-engine/core/shaderLibrary/shading/pbrGlobals.glsl.js +1 -1
  222. package/views/3d/webgl-engine/core/shaderLibrary/shading/readShadow.glsl.js +6 -6
  223. package/views/3d/webgl-engine/core/shaderLibrary/terrain/Overlay.glsl.js +1 -1
  224. package/views/3d/webgl-engine/core/shaderLibrary/util/CloudsParallaxShading.glsl.js +3 -3
  225. package/views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js +1 -1
  226. package/views/3d/webgl-engine/core/shaderLibrary/util/cameraUniforms.js +1 -1
  227. package/views/3d/webgl-engine/effects/atmosphere/ChapmanApproximation.glsl.js +3 -3
  228. package/views/3d/webgl-engine/effects/atmosphere/ChapmanAtmosphere.glsl.js +1 -1
  229. package/views/3d/webgl-engine/effects/atmosphere/ChapmanRaymarching.glsl.js +1 -1
  230. package/views/3d/webgl-engine/effects/atmosphere/SimpleAtmosphere.glsl.js +1 -1
  231. package/views/3d/webgl-engine/effects/clouds/CloudsComposition.glsl.js +1 -1
  232. package/views/3d/webgl-engine/effects/fog/Fog.glsl.js +1 -1
  233. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIllumination.glsl.js +1 -1
  234. package/views/3d/webgl-engine/effects/glow/applyEmissiveGlow.glsl.js +5 -5
  235. package/views/3d/webgl-engine/effects/haze/Haze.glsl.js +1 -1
  236. package/views/3d/webgl-engine/effects/haze/HazeCompositing.glsl.js +1 -1
  237. package/views/3d/webgl-engine/effects/highlight/ShadowHighlight.glsl.js +1 -1
  238. package/views/3d/webgl-engine/effects/highlight/ShadowHighlightBuffer.glsl.js +1 -1
  239. package/views/3d/webgl-engine/effects/laserlines/LaserlinePath.glsl.js +1 -1
  240. package/views/3d/webgl-engine/effects/raymarching/DistanceFalloff.glsl.js +1 -1
  241. package/views/3d/webgl-engine/effects/shadowAccumulation/ShadowCastAccumulate.glsl.js +1 -1
  242. package/views/3d/webgl-engine/lib/BufferGeometry.js +1 -1
  243. package/views/3d/webgl-engine/lib/BufferObject3D.js +1 -1
  244. package/views/3d/webgl-engine/lib/GeometryUtil.js +1 -1
  245. package/views/3d/webgl-engine/lib/affectsGeometry.js +1 -1
  246. package/views/3d/webgl-engine/lib/bufferGeometryUtils.js +2 -0
  247. package/views/3d/webgl-engine/lib/edgeRendering/AdjustProjectedPosition.glsl.js +5 -5
  248. package/views/3d/webgl-engine/lib/edgeRendering/EdgeShader.glsl.js +1 -1
  249. package/views/3d/webgl-engine/lib/edgeRendering/EdgeUtil.glsl.js +11 -11
  250. package/views/3d/webgl-engine/materials/Path.glsl.js +1 -1
  251. package/views/3d/webgl-engine/materials/Water.glsl.js +1 -1
  252. package/views/3d/webgl-engine/shaders/AtmosphereCompositing.glsl.js +1 -1
  253. package/views/3d/webgl-engine/shaders/DefaultMaterial.glsl.js +1 -1
  254. package/views/3d/webgl-engine/shaders/GaussianSplat.glsl.js +1 -1
  255. package/views/3d/webgl-engine/shaders/HUDMaterial.glsl.js +1 -1
  256. package/views/3d/webgl-engine/shaders/LineCallout.glsl.js +1 -1
  257. package/views/3d/webgl-engine/shaders/Pattern.glsl.js +1 -1
  258. package/views/3d/webgl-engine/shaders/RealisticTree.glsl.js +1 -1
  259. package/views/3d/webgl-engine/shaders/RibbonLine.glsl.js +1 -1
  260. package/views/3d/webgl-engine/shaders/SphereDepthInterpolate.glsl.js +1 -1
  261. package/views/3d/webgl-engine/shaders/Terrain.glsl.js +1 -1
  262. package/views/3d/webgl-engine/shaders/Viewshed.glsl.js +1 -1
  263. package/views/3d/webgl-engine/shaders/lineUniforms.js +2 -0
  264. package/views/DOMContainer.d.ts +27 -9
  265. package/views/DOMContainer.js +1 -1
  266. package/views/PopupView.d.ts +6 -0
  267. package/views/VideoView.d.ts +27 -9
  268. package/views/View.d.ts +16 -7
  269. package/views/View.js +1 -1
  270. package/views/View2D.d.ts +1 -1
  271. package/views/interactive/snapping/SnappingManagerPool.js +1 -1
  272. package/views/interactive/snapping/SnappingOptions.d.ts +1 -1
  273. package/views/interactive/tooltip/components/ElevationModeSelect.js +1 -1
  274. package/views/interactive/tooltip/components/TooltipEditableField.js +1 -1
  275. package/views/layers/FeatureLikeLayerView.d.ts +1 -2
  276. package/views/layers/ParquetLayerView.d.ts +15 -0
  277. package/views/layers/ParquetLayerView.js +1 -1
  278. package/webdoc/support/saveUtils.js +1 -1
  279. package/webdoc/support/unsupportedErrors.js +1 -1
  280. package/widgets/Legend.d.ts +1 -0
  281. package/widgets/support/SnappingControls.d.ts +1 -1
  282. package/assets/esri/core/workers/chunks/05963f57cbe5a5249496.js +0 -1
  283. package/assets/esri/core/workers/chunks/06ab24a083c3229228dd.js +0 -1
  284. package/assets/esri/core/workers/chunks/122111703528381539cc.js +0 -1
  285. package/assets/esri/core/workers/chunks/15cc2c295682f48030f9.js +0 -1
  286. package/assets/esri/core/workers/chunks/17b76e0d401c7e396d10.js +0 -1
  287. package/assets/esri/core/workers/chunks/2164fcaced72b0fda31f.js +0 -1
  288. package/assets/esri/core/workers/chunks/25b0885d3bc190b28c04.js +0 -1
  289. package/assets/esri/core/workers/chunks/27da9ece2afaeec39f59.js +0 -1
  290. package/assets/esri/core/workers/chunks/2b6c74646ff475a6e302.js +0 -1
  291. package/assets/esri/core/workers/chunks/340621182db9e8edbec2.js +0 -1
  292. package/assets/esri/core/workers/chunks/347bf269c2b1583d2dca.js +0 -1
  293. package/assets/esri/core/workers/chunks/384ae10053d35940de73.js +0 -1
  294. package/assets/esri/core/workers/chunks/451d7d456df0f4466563.js +0 -1
  295. package/assets/esri/core/workers/chunks/4cddd217383b9333f32e.js +0 -1
  296. package/assets/esri/core/workers/chunks/4fa59f8ed3b7b6239548.js +0 -1
  297. package/assets/esri/core/workers/chunks/5a5d80c2519aa3ea8878.js +0 -1
  298. package/assets/esri/core/workers/chunks/5b434e8c98e7119d4a3b.js +0 -1
  299. package/assets/esri/core/workers/chunks/5e4d6c283c2fa28db022.js +0 -1
  300. package/assets/esri/core/workers/chunks/5ea8809b6519c05ad9f6.js +0 -1
  301. package/assets/esri/core/workers/chunks/604344e45c0f27497188.js +0 -1
  302. package/assets/esri/core/workers/chunks/64770e2cf41211b63fd2.js +0 -1
  303. package/assets/esri/core/workers/chunks/658b2642ab6880770e4e.js +0 -1
  304. package/assets/esri/core/workers/chunks/6ef647b7769d27529f9c.js +0 -1
  305. package/assets/esri/core/workers/chunks/8313c626596a76c7449d.js +0 -1
  306. package/assets/esri/core/workers/chunks/841f67baf6a1634ada48.js +0 -1
  307. package/assets/esri/core/workers/chunks/84e9258a57d8c365f361.js +0 -1
  308. package/assets/esri/core/workers/chunks/8730e7e6e0296f43f10b.js +0 -1
  309. package/assets/esri/core/workers/chunks/87b4e916b2668203a6b0.js +0 -1
  310. package/assets/esri/core/workers/chunks/8fcfd515ee1b18c902e5.js +0 -1
  311. package/assets/esri/core/workers/chunks/9001e9a1e81bce175ddd.js +0 -1
  312. package/assets/esri/core/workers/chunks/966d0832a3c1f03668a0.js +0 -1
  313. package/assets/esri/core/workers/chunks/97dbbedea9fe03bd1306.js +0 -1
  314. package/assets/esri/core/workers/chunks/9a28a66807a1e3557018.js +0 -1
  315. package/assets/esri/core/workers/chunks/9bf48a907f91ea004648.js +0 -1
  316. package/assets/esri/core/workers/chunks/9c0fd8baa00ee9733ba4.js +0 -1
  317. package/assets/esri/core/workers/chunks/9c7fa9d324fa0bf64d9c.js +0 -1
  318. package/assets/esri/core/workers/chunks/a20526996d01386ec3b7.js +0 -1
  319. package/assets/esri/core/workers/chunks/a7edf7541569fef77cb3.js +0 -1
  320. package/assets/esri/core/workers/chunks/b1008bdfca995ebf98ed.js +0 -1
  321. package/assets/esri/core/workers/chunks/bfd85e8d54062a590f0e.js +0 -1
  322. package/assets/esri/core/workers/chunks/c8ba0673d1b87216e619.js +0 -1
  323. package/assets/esri/core/workers/chunks/d4926545193414cf2f16.js +0 -1
  324. package/assets/esri/core/workers/chunks/da18d96b35af20e73b3b.js +0 -1
  325. package/assets/esri/core/workers/chunks/df0481bcc1613ee4b7af.js +0 -1
  326. package/assets/esri/core/workers/chunks/e1af43e2a8f2ef1059e3.js +0 -1
  327. package/assets/esri/core/workers/chunks/eaf6d587477399a83088.js +0 -1
  328. package/assets/esri/core/workers/chunks/ec28e18275d36e71b438.js +0 -1
  329. package/assets/esri/core/workers/chunks/f05de08e194a3f9b96f2.js +0 -1
  330. package/assets/esri/core/workers/chunks/f31b424a3667686af10c.js +0 -1
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[8692,8768],{28692(e,t,i){i.r(t);var a=i(32198),s=i(67996),r=i(7762),n=i(49186),l=i(53966),o=i(91869),d=i(25728),h=i(17676),p=i(36708),u=i(84952),y=i(13069),g=i(91429),c=i(35666),f=i(4146),m=i(24137),w=i(62796),M=i(40736),b=i(18768),T=i(63074),v=i(69208),_=i(34287),D=i(8303),A=i(54310),I=i(25036),C=i(10873),L=i(54628),S=i(53902),P=i(97159),k=i(56400),E=i(36005),N=i(43937);let U=class extends((0,T.dM)((0,I.j)((0,A.J)((0,b.b)((0,_.q)((0,D.A)((0,d.M)((0,v.d)(f.A))))))))){constructor(e){super(e),this._graphTypeLookup=new Map,this._namedTypesModified=!1,this._idMapCreationDate=null,this.dataManager=null,this.definitionSetMap=null,this.knowledgeGraph=null,this.layers=new(r.A.ofType(w.A)),this.memberEntityTypes=null,this.memberRelationshipTypes=null,this.operationalLayerType="KnowledgeGraphLayer",this.sublayerIdsCache=new Map,this.tables=new(r.A.ofType(w.A)),this.type="knowledge-graph",this.url=null,!e?.title&&e?.url&&(this.title=(0,M.$L)(e.url)),this.addHandles((0,p.wB)(()=>this.layers.concat(this.tables),(e,t)=>this._handleSublayersChange(e,t),p.OH))}load(e){return this.addResolvingPromise(this._doLoad(e)),Promise.resolve(this)}async _doLoad(e){try{await this.loadFromPortal({supportedTypes:["Knowledge Graph Layer"]},e)}catch(e){(0,h.QP)(e)}await this._fetchMetadata(e),await this._initializeLayerProperties(e),this.loadLayerAssumingLocalCache(),this._layersLoadedFromAuthoritativeItem()||await(0,M.qN)(this)}async _fetchMetadata(e){if(!this.url)throw new n.A("knowledge-graph:missing-url","KnowledgeGraphLayer must be created with a url");let t=await(0,S.fetchKnowledgeGraph)(this.url);this.knowledgeGraph=t;let{edit:i,fullEdit:a,updateItem:s}=await(0,M.N1)(t.serviceDefinition.serviceItemId,this.url,e);this._set("userHasEditingPrivileges",i),this._set("userHasFullEditingPrivileges",a),this._set("userHasUpdateItemPrivileges",s),this.read({dateFieldsTimeReference:t.serviceDefinition.dateFieldsTimeReference},{origin:"service"}),this._forEachGraphType(e=>{e.name&&this._graphTypeLookup.set(e.name,e)})}async _initializeLayerProperties(e){7===this.originIdOf("inclusionModeDefinition")?this._validateInclusionModeDefinition():await this._initializeInclusionModeDefinition(e),this._setMemberTypes(),this.dataManager=new m.P({knowledgeGraph:this.knowledgeGraph,inclusionModeDefinition:this.inclusionModeDefinition})}async _initializeInclusionModeDefinition(e){let t=this.definitionSetMap;if(t){let e=(0,P.c)(t),i=e?await(0,L.lV)([t],e):null;this._idMapCreationDate=i?.get(t)??null}let i=t?await(0,s.cZ)(t,!0,e?.signal?{signal:e.signal}:void 0):{generateAllSublayers:!0,namedTypeDefinitions:new Map};[...this.layers.toArray(),...this.tables.toArray()].forEach(e=>{let t=this._graphTypeLookup.get(e.graphTypeName);t&&!i.namedTypeDefinitions.has(t.name)&&i.namedTypeDefinitions.set(t.name,{useAllData:!0})}),this.setAtOrigin("inclusionModeDefinition",i,(0,c.OL)(this.originIdOf("definitionSetMap")))}_validateInclusionModeDefinition(){let{inclusionModeDefinition:e}=this;if(!e)return;let{namedTypeDefinitions:t}=e;if(t?.size>0)t.forEach((e,i)=>{let a=this._graphTypeLookup.get(i);a?"relationship"!==a.type&&"entity"!==a.type&&(l.A.getLogger(this).warn(`A named type, ${i}, was in the inclusion list that wasn't properly modeled and will be removed`),t.delete(i)):(l.A.getLogger(this).warn(`A named type, ${i}, was in the inclusion list that wasn't in the data model and will be removed`),t.delete(i))});else if(!e.generateAllSublayers)throw new n.A("knowledge-graph:composite-layer-constructor","If an explicit inclusion definition is defined, at least one namedTypeDefinition must also be defined")}_setMemberTypes(){let e=[],t=[],{inclusionModeDefinition:i}=this,a=i?.namedTypeDefinitions;!i||i.generateAllSublayers?(e=this.knowledgeGraph.dataModel?.entityTypes??[],t=this.knowledgeGraph.dataModel?.relationshipTypes??[]):a&&a.size>0&&a.forEach((i,a)=>{let s=this._graphTypeLookup.get(a);switch(s?.type){case"relationship":t.push(s);break;case"entity":e.push(s)}}),this.memberEntityTypes=e,this.memberRelationshipTypes=t}_forEachGraphType(e){[...this.knowledgeGraph.dataModel?.entityTypes??[],...this.knowledgeGraph.dataModel?.relationshipTypes??[]].forEach(t=>{e(t)})}_refreshNamedTypes(){this._namedTypesModified=!0;for(let e of this.layers)e.emit("refresh",{dataChanged:!0});for(let e of this.tables)e.emit("refresh",{dataChanged:!0})}async _handleNewRecords(e){let t=new Set,i=[];for(let a of e)this._graphTypeLookup.has(a.typeName)&&(!1===this.layers.concat(this.tables).some(e=>e.objectType.name===a.typeName)&&(this.dataManager.sublayerCaches.set(a.typeName,new Map),t.add(a.typeName)),(0,o.tE)(this.sublayerIdsCache,a.typeName,()=>new Set).add(a.id),i.push(a));this.dataManager.addToLayer(i);for(let e of t){let t=this._graphTypeLookup.get(e);t&&(this._addSublayer(t),"entity"===t.type?this.dataManager.entityTypeNames.add(e):this.dataManager.relationshipTypeNames.add(e))}await(0,M.qN)(this,Array.from(t)),this._refreshNamedTypes()}_createSublayers(e,t,i){e.forEach(e=>{let a=this._createSublayer(e);i(a)&&t.push(a),this._updateSublayerCaches(e)})}_addSublayer(e){let t=this._createSublayer(e);return t.geometryType?this.layers.push(t):this.tables.push(t),t}_createSublayer(e){return new w.A({objectType:e,parentCompositeLayer:this,graphType:e.type})}_updateSublayers(e,t){t.forEach(t=>{t.parentCompositeLayer=this;let i=e.find(e=>e.type===t.graphType&&e.name===t.graphTypeName);i&&(t.objectType=i,this._updateSublayerCaches(i))})}_updateSublayerCaches({name:e}){if(!e)return;let t=this.dataManager.sublayerCaches;t.has(e)||t.set(e,new Map)}_saveUrlAsNewResource(e,t,i,a){return async function(e){let t=await(0,s.fe)(e);return new Blob([t],{type:"application/x-protobuf"})}(this.inclusionModeDefinition).then(s=>{let r=function(e){let t=`definitionSetMap-${(0,y.lk)()}.dat`,i=(0,u.fj)("knowledgeGraphLayer",t);return e.resourceFromPath(i)}(a);e[t]=r.itemRelativeUrl,i.toAdd.push({resource:r,content:{type:"blob",blob:s},compress:!1,finish:e=>{this.definitionSetMap=e.url}})})}_displaysAllRecords(e){for(let[,{useAllData:t}]of e.namedTypeDefinitions)if(!t)return!1;return!0}_handleSublayersChange(e,t){t&&(t.forEach(e=>{e.parent=null}),this.removeHandles("sublayers-owner")),e&&(e.forEach(e=>{e.parent=this}),this.addHandles([e.on("after-add",({item:e})=>{e.parent=this}),e.on("after-remove",({item:e})=>{e.parent=null})],"sublayers-owner"))}_layersLoadedFromAuthoritativeItem(){let e=this.originIdOf("layers");return e>=3&&e<7}async _checkResourceSafety(e,t,i,a,s,r){if(!await(0,L.zI)(e??"",s?.itemUrl??"",this._idMapCreationDate))return this._saveUrlAsNewResource(t,i,a,s);let n=(0,P.t)(e,r);if((0,u.oP)(n))return this._saveUrlAsNewResource(t,i,a,s);t[i]=n}readDefinitionSetMap(e,t,i){return(0,P.f)(e,i)}writeDefinitionSetMap(e,t,i,a){let s=a?.portalItem,r=a?.resources,n=(0,c.aB)(a?.origin);if(!s||!r||null==n)return void(e&&(t[i]=(0,P.t)(e,a)));let{inclusionModeDefinition:l}=this;if(!l||this._displaysAllRecords(l))return void(this.definitionSetMap=null);let o=this.originIdOf("inclusionModeDefinition");7===o||this._namedTypesModified||n<o?(t[i]="<pending>",r.pendingOperations.push(this._saveUrlAsNewResource(t,i,r,s))):n===o&&e&&(t[i]="<pending>",r.pendingOperations.push(this._checkResourceSafety(e,t,i,r,s,a)))}set inclusionModeDefinition(e){"loaded"===this.loadStatus||"failed"===this.loadStatus?l.A.getLogger(this).error("#inclusionModeDefinition","inclusionModeDefinition cannot be changed after the layer is loaded."):this._set("inclusionModeDefinition",e)}get sublayerCapabilities(){return(0,M.hZ)(this.knowledgeGraph)}loadLayerAssumingLocalCache(){let e=[...this.memberEntityTypes,...this.memberRelationshipTypes];this.layers.length||0===this.originIdOf("tables")?0===this.originIdOf("layers")?this._createSublayers(e,this.layers,e=>!!e.geometryType):this._updateSublayers(e,this.layers):this.layers=new r.A,this.tables.length||0===this.originIdOf("layers")?0===this.originIdOf("tables")?this._createSublayers(e,this.tables,e=>!e.geometryType):this._updateSublayers(e,this.tables):this.tables=new r.A,this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.forEach((e,t)=>{let i=(0,o.tE)(this.sublayerIdsCache,t,()=>new Set);e.members?.forEach(e=>{i.add(e.id)})})}async addRecords(e){await this.load(),await this._handleNewRecords(e)}async createSublayerForNamedType(e){await this.load();let t=this._graphTypeLookup.get(e);if(!t)throw new n.A("knowledge-graph:missing-type","The specified type does not exist in the layer's graph data model.");if(this.dataManager.sublayerCaches.has(e))throw new n.A("knowledge-graph:duplicate-type","The specified type already exists as a sublayer.");this.dataManager.sublayerCaches.set(e,new Map),(0,o.tE)(this.sublayerIdsCache,e,()=>new Set);let i=this._addSublayer(t);return"entity"===t.type?this.dataManager.entityTypeNames.add(e):this.dataManager.relationshipTypeNames.add(e),this.dataManager.inclusionModeDefinition&&this.dataManager.inclusionModeDefinition.namedTypeDefinitions.set(e,{useAllData:!0}),await(0,M.qN)(this,[e]),this._refreshNamedTypes(),i}convertSublayerToDynamicData(e){if(!this.dataManager.inclusionModeDefinition)throw new n.A("knowledge-graph:fully-dynamic-membership","This Knowledge Graph Layer already uses fully dynamic membership, individual sublayers cannot be converted");if(!this._graphTypeLookup.get(e))throw new n.A("knowledge-graph:missing-type","The specified type does not exist in the layer's graph data model.");if(!this.dataManager.sublayerCaches.has(e))throw new n.A("knowledge-graph:duplicate-type","The specified type does not exist as a sublayer.");this.dataManager.inclusionModeDefinition.namedTypeDefinitions.get(e)?.useAllData?l.A.getLogger(this).warn("This Knowledge Graph Layer already uses dynamic membership for the sublayer - no conversion was made"):(this.dataManager.inclusionModeDefinition.namedTypeDefinitions.set(e,{useAllData:!0}),this.sublayerIdsCache.delete(e),this._refreshNamedTypes())}convertSublayerToExplicitMembership(e){if(!this.dataManager.inclusionModeDefinition)throw new n.A("knowledge-graph:fully-dynamic-membership","This Knowledge Graph Layer already uses fully dynamic membership, individual sublayers cannot be converted");if(!this._graphTypeLookup.get(e))throw new n.A("knowledge-graph:missing-type","The specified type does not exist in the layer's graph data model.");let t=this.dataManager.inclusionModeDefinition.namedTypeDefinitions.get(e);if(t&&!t.useAllData)l.A.getLogger(this).warn("This Knowledge Graph Layer already uses explicit membership for the sublayer - no conversion was made");else{if(!this.dataManager.sublayerCaches.has(e))throw new n.A("knowledge-graph:duplicate-type","The specified type does not exist as a sublayer.");this.sublayerIdsCache.set(e,new Set),this.dataManager.inclusionModeDefinition.namedTypeDefinitions.set(e,{useAllData:!1,members:new Map}),this._refreshNamedTypes()}}convertToFullyDynamicData(){this.dataManager.inclusionModeDefinition?(this.sublayerIdsCache.clear(),this.dataManager.inclusionModeDefinition=null,this._set("inclusionModeDefinition",this.dataManager.inclusionModeDefinition),this._refreshNamedTypes()):l.A.getLogger(this).warn("This Knowledge Graph Layer already uses fully dynamic membership - no conversion was made")}convertToExplicitMembership(){if(this.dataManager.inclusionModeDefinition&&this.dataManager.inclusionModeDefinition.namedTypeDefinitions.size>0&&[...this.dataManager.inclusionModeDefinition.namedTypeDefinitions.values()].every(e=>!1===e.useAllData))l.A.getLogger(this).warn("This Knowledge Graph Layer already uses explicit membership - no conversion was made");else{this.dataManager.inclusionModeDefinition={generateAllSublayers:!1,namedTypeDefinitions:new Map};for(let e of this.dataManager.sublayerCaches.keys())(0,o.tE)(this.sublayerIdsCache,e,()=>new Set),this.dataManager.inclusionModeDefinition.namedTypeDefinitions.set(e,{useAllData:!1,members:new Map});this._set("inclusionModeDefinition",this.dataManager.inclusionModeDefinition),this._refreshNamedTypes()}}async removeRecords(e){await this.load();let t=[];for(let i of e)!1===this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.get(i.typeName)?.useAllData&&this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.get(i.typeName)?.members?.has(i.id)&&t.push(i);this.dataManager.removeFromLayer(t);for(let e of t)this.sublayerIdsCache.get(e.typeName)?.delete(e.id);return this._refreshNamedTypes(),t}};(0,a.Cg)([(0,g.MZ)()],U.prototype,"dataManager",void 0),(0,a.Cg)([(0,g.MZ)({json:{write:{ignoreOrigin:!0,writerEnsuresNonNull:!0}}})],U.prototype,"definitionSetMap",void 0),(0,a.Cg)([(0,E.w)("definitionSetMap")],U.prototype,"readDefinitionSetMap",null),(0,a.Cg)([(0,N.K)("definitionSetMap")],U.prototype,"writeDefinitionSetMap",null),(0,a.Cg)([(0,g.MZ)()],U.prototype,"inclusionModeDefinition",null),(0,a.Cg)([(0,g.MZ)()],U.prototype,"knowledgeGraph",void 0),(0,a.Cg)([(0,g.MZ)({type:r.A.ofType(w.A),json:{write:{ignoreOrigin:!0}}})],U.prototype,"layers",void 0),(0,a.Cg)([(0,g.MZ)()],U.prototype,"memberEntityTypes",void 0),(0,a.Cg)([(0,g.MZ)()],U.prototype,"memberRelationshipTypes",void 0),(0,a.Cg)([(0,g.MZ)({type:["KnowledgeGraphLayer"]})],U.prototype,"operationalLayerType",void 0),(0,a.Cg)([(0,g.MZ)()],U.prototype,"sublayerCapabilities",null),(0,a.Cg)([(0,g.MZ)()],U.prototype,"sublayerIdsCache",void 0),(0,a.Cg)([(0,g.MZ)({type:r.A.ofType(w.A),json:{write:{ignoreOrigin:!0}}})],U.prototype,"tables",void 0),(0,a.Cg)([(0,g.MZ)({json:{read:!1}})],U.prototype,"type",void 0),(0,a.Cg)([(0,g.MZ)(C.OZ)],U.prototype,"url",void 0),(0,a.Cg)([(0,g.MZ)((0,k.P6)("dateFieldsTimeReference"))],U.prototype,"dateFieldsTimeZone",void 0),U=(0,a.Cg)([(0,g.$K)("esri.layers.KnowledgeGraphLayer")],U);const G=U;i.d(t,["default",0,G])},18768(e,t,i){var a=i(32198),s=i(53966),r=i(91429),n=i(60694);i.d(t,["b",0,e=>{let t=e,i=class extends t{get title(){if(this._get("title")&&"defaults"!==this.originOf("title"))return this._get("title");if(this.url){let e=(0,n.qg)(this.url);if(e?.title)return e.title}return this._get("title")||""}set title(e){this._set("title",e)}set url(e){this._set("url",(0,n.Jf)(e,s.A.getLogger(this)))}};return(0,a.Cg)([(0,r.MZ)()],i.prototype,"title",null),(0,a.Cg)([(0,r.MZ)({type:String})],i.prototype,"url",null),i=(0,a.Cg)([(0,r.$K)("esri.layers.mixins.ArcGISService")],i),i}])},69208(e,t,i){var a=i(32198),s=i(91429);i.d(t,["d",0,e=>{let t=e,i=class extends t{constructor(){super(...arguments),this.customParameters=null}};return(0,a.Cg)([(0,s.MZ)({type:Object,json:{write:{overridePolicy:e=>({enabled:!!(e&&Object.keys(e).length>0)})}}})],i.prototype,"customParameters",void 0),i=(0,a.Cg)([(0,s.$K)("esri.layers.mixins.CustomParametersMixin")],i),i}])},8303(e,t,i){var a=i(32198),s=i(92602),r=i(70333),n=i(56507),l=i(60999),o=i(49186),d=i(36563),h=i(53966),p=i(97768),u=i(17676),y=i(84952),g=i(91429),c=i(77548),f=i(20655),m=i(80812),w=i(41318),M=i(10407),b=i(26121),T=i(36005),v=i(43937);const _={credential:null,user:null};i.d(t,["A",0,e=>{let t=e,D=class extends t{constructor(){super(...arguments),this.resourceReferences={portalItem:null,paths:[]},this.userHasEditingPrivileges=!0,this.userHasFullEditingPrivileges=!1,this.userHasUpdateItemPrivileges=!1}destroy(){super.destroy(),this.portalItem=(0,p.pR)(this.portalItem),this.resourceReferences.portalItem=null,this.resourceReferences.paths.length=0}get portalItem(){return this._get("portalItem")}set portalItem(e){e!==this._get("portalItem")&&(this.removeOrigin("portal-item"),this._set("portalItem",e))}readPortalItem(e,t,i){if(t.itemId)return new m.default({id:t.itemId,portal:i?.portal})}writePortalItem(e,t){e?.id&&(t.itemId=e.id)}async loadFromPortal(e,t){if(this.portalItem?.id)try{let{load:a}=await i.e(1204).then(()=>i(41204));return(0,u.Te)(t),await a({instance:this,supportedTypes:e.supportedTypes,validateItem:e.validateItem,supportsData:e.supportsData,layerModuleTypeMap:e.layerModuleTypeMap,populateGroupLayer:e.populateGroupLayer},t)}catch(e){throw(0,u.zf)(e)||h.A.getLogger(this).warn(`Failed to load layer (${this.title}, ${this.id}) portal item (${this.portalItem.id})\n ${e}`),e}}async reloadFromPortal(e,t){if(!this.loaded||!this.portalItem?.id)return!1;let a=t?.signal?null:new AbortController;try{let{reload:s}=await i.e(1204).then(()=>i(41204));return a&&this.addHandles((0,d.rE)(a),"reloadFromPortal"),await s({instance:this,supportedTypes:e.supportedTypes,validateItem:e.validateItem,supportsData:e.supportsData,layerModuleTypeMap:e.layerModuleTypeMap,populateGroupLayer:e.populateGroupLayer},t?.signal?t:{signal:a.signal})}catch(e){throw(0,u.zf)(e)||h.A.getLogger(this).warn(`Failed to reload layer (${this.title}, ${this.id}) portal item (${this.portalItem.id})\n ${e}`),e}finally{a&&this.removeHandles("reloadFromPortal")}}async finishLoadEditablePortalLayer(e){this._set("userHasEditingPrivileges",await this._fetchUserHasEditingPrivileges(e).catch(e=>((0,u.QP)(e),!0)))}async setUserPrivileges(e,t){if(!s.A.userPrivilegesApplied)return this.finishLoadEditablePortalLayer(t);if(this.url)try{let{features:{edit:i,fullEdit:a},content:{updateItem:s}}=await this._fetchUserPrivileges(e,t);this._set("userHasEditingPrivileges",i),this._set("userHasFullEditingPrivileges",a),this._set("userHasUpdateItemPrivileges",s)}catch(e){(0,u.QP)(e)}}async _fetchUserPrivileges(e,t){let i=this.portalItem;if(!e||!i||!i.loaded||i.sourceUrl)return this._fetchFallbackUserPrivileges(t);let a,s,n=!r.id?.findCredential(this.url),l=e===i.id;if(l&&i.portal.user)return this._getUserPrivileges(i,n);if(l)a=i.portal.url;else try{a=await(0,c.wI)(this.url,t)}catch(e){(0,u.QP)(e)}if(!a||!(0,y.b8)(a,i.portal.url))return this._fetchFallbackUserPrivileges(t);try{let e=null==t?null:t.signal;s=await(r.id?.getCredential(`${a}/sharing`,{prompt:!1,signal:e}))}catch(e){(0,u.QP)(e)}if(!s)return{features:{edit:!0,fullEdit:!1},content:{updateItem:!1}};try{if(l?await i.reload():(i=new m.default({id:e,portal:{url:a}}),await i.load(t)),i.portal.user)return this._getUserPrivileges(i,n)}catch(e){(0,u.QP)(e)}return{features:{edit:!0,fullEdit:!1},content:{updateItem:!1}}}_getUserPrivileges(e,t){let i=(0,M.It)(e);return t&&(i.features.edit=!0),i}async _fetchFallbackUserPrivileges(e){let t=!0;try{t=await this._fetchUserHasEditingPrivileges(e)}catch(e){(0,u.QP)(e)}return{features:{edit:t,fullEdit:!1},content:{updateItem:!1}}}async _fetchUserHasEditingPrivileges(e){let t=this.url?r.id?.findCredential(this.url):null;if(!t)return!0;let i=_.credential===t?_.user:await this._fetchEditingUser(e);return _.credential=t,_.user=i,null==i?.privileges||i.privileges.includes("features:user:edit")}async _fetchEditingUser(e){let t=this.portalItem?.portal?.user;if(t)return t;let i=r.id?.findServerInfo(this.url??"");if(!i?.owningSystemUrl)return null;let a=`${i.owningSystemUrl}/sharing/rest`,s=f.A.getDefault();if(s&&s.loaded&&(0,y.S8)(s.restUrl)===(0,y.S8)(a))return s.user;let o=`${a}/community/self`,d=null==e?null:e.signal,h=await(0,l.Ke)((0,n.A)(o,{authMode:"no-prompt",query:{f:"json"},signal:d}));return h.ok?w.A.fromJSON(h.value.data):null}read(e,t){t&&(t.layer=this),super.read(e,t)}write(e,t){return(0,b.wN)(this.portalItem,t)?(t?.messages?.push(new o.A("layer:cross-portal",`The layer '${this.title} (${this.id})' cannot be persisted because it refers to an item on a different portal than the one being saved to. To save, set layer.portalItem to null or save to the same portal as the item associated with the layer`,{layer:this})),null):super.write(e,{...t,layer:this})}};return(0,a.Cg)([(0,g.MZ)({type:m.default})],D.prototype,"portalItem",null),(0,a.Cg)([(0,T.w)("web-document","portalItem",["itemId"])],D.prototype,"readPortalItem",null),(0,a.Cg)([(0,v.K)("web-document","portalItem",{itemId:{type:String}})],D.prototype,"writePortalItem",null),(0,a.Cg)([(0,g.MZ)({clonable:!1})],D.prototype,"resourceReferences",void 0),(0,a.Cg)([(0,g.MZ)({type:Boolean,readOnly:!0})],D.prototype,"userHasEditingPrivileges",void 0),(0,a.Cg)([(0,g.MZ)({type:Boolean,readOnly:!0})],D.prototype,"userHasFullEditingPrivileges",void 0),(0,a.Cg)([(0,g.MZ)({type:Boolean,readOnly:!0})],D.prototype,"userHasUpdateItemPrivileges",void 0),D=(0,a.Cg)([(0,g.$K)("esri.layers.mixins.PortalLayer")],D),D}])},26121(e,t,i){i.d(t,{I6:()=>h,ci:()=>d,dL:()=>o,wN:()=>p});var a=i(49186),s=i(84952),r=i(77548),n=i(20655),l=i(59923);async function o(e){let t=[];for(let i of e.allLayers)if("beforeSave"in i&&"function"==typeof i.beforeSave){let e=i.beforeSave();e&&t.push(e)}await Promise.allSettled(t)}function d(e,t,i){let s=(e.messages??[]).filter(({type:e})=>"error"===e).map(({name:e,message:t,details:i})=>new a.A(e,t,i));if(e.blockedRelativeUrls&&(s=s.concat(e.blockedRelativeUrls.map(e=>(0,l.GL)("url",`Relative url '${e}' is not supported`)))),i){let{ignoreUnsupported:e,supplementalUnsupportedErrors:t=[],requiredPropertyChecksDisabled:a}=i;e&&(s=s.filter(({name:e})=>!(l.MG.has(e)||t.includes(e)))),a&&(s=s.filter(e=>"web-document-write:property-required"!==e.name))}if(s.length>0)throw new a.A(t.errorName,"Failed to save due to unsupported or invalid content. See 'details.errors' for more detailed information",{errors:s})}function h(e){return(0,r.qd)(e).some(e=>!!e.charts?.length)}function p(e,t){let i=t?.portal,a=e?.id&&(e.portal||n.A.getDefault());return!!i&&!!a&&!(0,s.ut)(a.restUrl,i.restUrl)}}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1204],{22429(e,r,t){t.d(r,{v:()=>n});var a=t(7861);class n{constructor(){this._serviceMetadatas=new Map,this._itemDatas=new Map}async fetchServiceMetadata(e,r){let t=this._serviceMetadatas.get(e);if(t)return t;let n=await(0,a.L)(e,r);return this._serviceMetadatas.set(e,n),n}async fetchItemData(e){let{id:r}=e;if(!r)return null;let{_itemDatas:t}=this;if(t.has(r))return t.get(r);let a=await e.fetchData();return t.set(r,a),a}async fetchCustomParameters(e,r){let t=await this.fetchItemData(e);return t&&"object"==typeof t&&(r?r(t):t.customParameters)||null}}},92009(e,r,t){t.d(r,{L:()=>c});var a=t(70333),n=t(56507),l=t(49186),i=t(17676),u=t(60694),s=t(20655),o=t(80812);async function c(e,r){let t=(0,u.qg)(e);if(!t)throw new l.A("invalid-url","Invalid scene service url");let c={...r,sceneServerUrl:t.url.path,layerId:t.sublayer??void 0};if(c.sceneLayerItem??=await async function(e){let r=(await y(e)).serviceItemId;if(!r)return null;let t=new o.default({id:r,apiKey:e.apiKey}),l=await async function(e){let r=a.id?.findServerInfo(e.sceneServerUrl);if(r?.owningSystemUrl)return r.owningSystemUrl;let t=e.sceneServerUrl.replace(/(.*\/rest)\/.*/i,"$1")+"/info";try{let r=(await(0,n.A)(t,{query:{f:"json"},responseType:"json",signal:e.signal})).data.owningSystemUrl;if(r)return r}catch(e){(0,i.QP)(e)}return null}(e);null!=l&&(t.portal=new s.A({url:l}));try{return await t.load({signal:e.signal})}catch(e){return(0,i.QP)(e),null}}(c),null==c.sceneLayerItem)return p(c.sceneServerUrl.replace("/SceneServer","/FeatureServer"),c);let f=await async function({sceneLayerItem:e,signal:r}){if(!e)return null;try{let t=(await e.fetchRelatedItems({relationshipType:"Service2Service",direction:"reverse"},{signal:r})).find(e=>"Feature Service"===e.type)||null;if(!t)return null;let a=new o.default({portal:t.portal,id:t.id});return await a.load(),a}catch(e){return(0,i.QP)(e),null}}(c);if(!f?.url)throw new l.A("related-service-not-found","Could not find feature service through portal item relationship");c.featureServiceItem=f;let d=await p(f.url,c);return d.portalItem=f,d}async function y(e){if(e.rootDocument)return e.rootDocument;let r={query:{f:"json",...e.customParameters,token:e.apiKey},responseType:"json",signal:e.signal};try{e.rootDocument=(await(0,n.A)(e.sceneServerUrl,r)).data}catch{e.rootDocument={}}return e.rootDocument}async function p(e,r){let t=(0,u.qg)(e);if(!t)throw new l.A("invalid-feature-service-url","Invalid feature service url");let a=t.url.path,i=r.layerId;if(null==i)return{serverUrl:a};let s=y(r),o=r.featureServiceItem?await r.featureServiceItem.fetchData("json"):null,c=(o?.layers?.[0]||o?.tables?.[0])?.customParameters,p=e=>{let t={query:{f:"json",...c},responseType:"json",authMode:e,signal:r.signal};return(0,n.A)(a,t)},f=p("anonymous").catch(()=>p("no-prompt")),[d,m]=await Promise.all([f,s]),w=m?.layers,h=d.data&&d.data.layers;if(!Array.isArray(h))throw Error("expected layers array");if(Array.isArray(w)){for(let e=0;e<Math.min(w.length,h.length);e++)if(w[e].id===i)return{serverUrl:a,layerId:h[e].id}}else if(null!=i&&i<h.length)return{serverUrl:a,layerId:h[i].id};throw Error("could not find matching associated sublayer")}},23154(e,r,t){t.d(r,{A6:()=>u,Aq:()=>m,Jo:()=>d,QM:()=>i});var a=t(77548),n=t(7861);const l=new Set(["Annotation Layer","Catalog Layer","Dimension Layer","Feature Layer","Oriented Imagery Layer"]);async function i(e,r){let{serviceJSON:t,layersJSON:a,...n}=await u(e,r);c(t);let l={serviceJSON:t,...n};return a&&(c(a),l.layersJSON=a),l}async function u(e,r){let{loadContext:t,...l}=r||{},i=t?await t.fetchServiceMetadata(e,l):await(0,n.L)(e,l),u=(0,a.G$)();f(i);let s={serviceJSON:i,preferredHost:u};if((i.currentVersion??0)<10.5)return s;let o=`${(0,a.$x)()??e}/layers`,c=t?await t.fetchServiceMetadata(o,l):await(0,n.L)(o,l);return f(c),s.layersJSON={layers:c.layers,tables:c.tables},s}function s(e){return l.has(e.type)}function o(e){return"Table"===e.type}function c(e){e.layers=e.layers?.filter(s),e.tables=e.tables?.filter(o)}function y(e){e.type||="Feature Layer"}function p(e){e.type||="Table"}function f(e){e.layers?.forEach(y),e.tables?.forEach(p)}function d(e){if(!e)return"FeatureLayer";switch(e){case"Feature Layer":case"Table":return"FeatureLayer";case"Oriented Imagery Layer":return"OrientedImageryLayer";case"Catalog Layer":return"CatalogLayer";case"Dimension Layer":return"DimensionFeatureLayer";case"Annotation Layer":return"AnnotationFeatureLayer"}return null}function m(e,r){if(!e)return r?"Table":"ArcGISFeatureLayer";switch(e){case"Annotation Layer":return"ArcGISAnnotationLayer";case"Catalog Layer":return"CatalogLayer";case"Dimension Layer":return"ArcGISDimensionLayer";case"Feature Layer":return"ArcGISFeatureLayer";case"Oriented Imagery Layer":return"OrientedImageryLayer";case"Parcel Layer":return"ParcelLayer";case"Table":return"Table";case"Topology Layer":return"TopologyLayer";case"Trace Network Layer":return"TraceNetworkLayer";case"Utility Network Layer":return"UtilityNetworkLayer";default:return null}}},88788(e,r,t){t.d(r,{m:()=>i,v:()=>l});var a=t(84952),n=t(20655);function l(e,r){return{...u(e,r),readResourcePaths:[]}}function i(e,r,t){let n=(0,a.An)(t?.forceNewItemContext?null:e.itemUrl);return{...u(e,r,t),messages:[],writtenProperties:[],blockedRelativeUrls:[],verifyItemRelativeUrls:n?{rootPath:n.path,writtenUrls:[]}:null,resources:t?.withResources?{toAdd:[],toUpdate:[],toKeep:[],pendingOperations:[]}:null}}function u(e,r,t){return{origin:r,url:(0,a.An)(t?.forceNewItemContext?null:e.itemUrl),portal:e.portal||n.A.getDefault(),portalItem:e}}},41204(e,r,t){t.d(r,{load:()=>d,reload:()=>m});var a=t(49186),n=t(60694),l=t(23154),i=t(22429),u=t(77548),s=t(20655),o=t(88788),c=t(66964),y=t(10407),p=t(8947),f=t(7861);async function d(e,r){let t=e.instance.portalItem;if(t?.id)return await t.load(r),w(e),e.validateItem&&e.validateItem(t),h(e,r)}async function m(e,r){let t=e.instance.portalItem;if(!t?.id||!t.loaded)return!1;let a=t.modified;return await t.reload(),r?.signal?.throwIfAborted(),a?.getTime()!==t.modified?.getTime()&&(w(e),e.validateItem&&e.validateItem(t),await h(e,r),!0)}function w(e){let r=e.instance.portalItem;if(!r?.type||!e.supportedTypes.includes(r.type))throw new a.A("portal:invalid-layer-item-type","Invalid layer item type '${type}', expected '${expectedType}'",{type:r?.type,expectedType:e.supportedTypes.join(", ")})}async function h(e,r){let t=e.instance,{portalItem:n,type:s}=t;if(!n)return;let{url:d}=n,{title:m}=n,w=(0,o.v)(n,"portal-item");if("group"===s)return async function(e,r,t){let n=e.portalItem;if(!e.sourceIsPortalItem)return;let{title:s,type:p}=n;if("Group Layer"===p){if(!(0,y.Y)(n,"Map"))throw new a.A("portal:invalid-layer-item-typekeyword","'Group Layer' item without 'Map' type keyword is not supported");return async function(e,r){let t=e.portalItem,n=await t.fetchData("json");if(!n)return;if(!r.populateGroupLayer)throw new a.A("portal:missing-populate-group-layer","Missing populate group layer");let l=(0,o.v)(t,"web-map");e.read(n,l),await r.populateGroupLayer(e,n,{context:l}),e.resourceReferences={portalItem:t,paths:l.readResourcePaths??[]}}(e,t)}return e.read({title:s},r),async function(e,r){let t,{portalItem:n}=e;if(!n)return;let{type:s,url:o}=n,y=r.layerModuleTypeMap;if(!y)throw new a.A("portal:missing-layer-module-type-map","Layer module type map is required to construct sub layers");switch(s){case"Feature Service":case"Feature Collection":t=y.FeatureLayer;break;case"Stream Service":t=y.StreamLayer;break;case"Scene Service":t=y.SceneLayer;break;case"Video Service":t=y.VideoLayer;break;default:throw new a.A("portal:unsupported-item-type-as-group",`The item type '${s}' is not supported as a 'GroupLayer'`)}let p="Video Service"===s,d=new i.v,[m,{data:w}]=await Promise.all([t(),p?{data:null}:v(r,d)]),h=()=>m;if(p)return async function(e,r,t){let{portalItem:a}=e;if(!a?.url)return;let n=await(0,f.L)(a.url);n&&g(e,r,null,{layers:n.layers?.map(({id:e,name:r})=>({id:e,name:r}))},t)}(e,h,y);if("Feature Service"===s){let r=(0,c.pJ)(w)?.customParameters,t=(await(0,c.bO)(w,o,d)).data;h=await async function(e,r){let{layers:t,tables:a}=e,n=[...t,...a];if(!n.length)return;let l=new Set,i=[];for(let{layerType:e}of n){if(l.has(e))continue;l.add(e);let t=r[(0,c.K8)(e)];i.push(t())}let u=await Promise.all(i),s=new Map;return Array.from(l).forEach((e,r)=>{s.set(e,u[r])}),({layerType:e})=>s.get(e)}(t,y)??h;let{provider:a,preferredHost:i}=await async function(e,r){let{layersJSON:t,preferredHost:a}=await(0,l.QM)(e,r);if(!t)return{provider:null,preferredHost:a};let n=[...t.layers,...t.tables];return{provider:e=>n.find(r=>r.id===e.id),preferredHost:a}}(o,{customParameters:r,loadContext:d});return(0,u.Gh)(n,i),await g(e,h,h,t,y,a)}return"Scene Service"===s&&o&&(w=await(0,c.nu)(n,w,d)),(0,c.XH)(w)>0?await g(e,h,null,w,y):await async function(e,r,t){let{portalItem:a}=e;if(!a?.url)return;let n=await(0,f.L)(a.url);n&&g(e,r,null,{layers:n.layers?.map(e=>(0,c._r)(e)),tables:n.tables?.map(e=>(0,c._r)(e,!0))},t)}(e,h,y)}(e,t)}(t,w,e);d&&"media"!==s&&t.read({url:d},w);let{data:h,preferredHost:L}=await v(e,new i.v,r);return d=n.url,"isUrlHostModified"in t&&(L?t.applyPreferredHost({preferredHost:L}):t.applyHostFromPortalItem()),h&&t.read(h,w),t.resourceReferences={portalItem:n,paths:w.readResourcePaths??[]},"subtype-group"!==s&&t.read({title:m},w),(0,p.L)(t,w)}async function g(e,r,t,a,n,l){let i=a.layers??[],u=a.tables??[];if("Feature Collection"===e.portalItem?.type?(i.forEach((e,r)=>{e.id=r,"Table"===e?.layerDefinition?.type&&u.push(e)}),i=i.filter(e=>"Table"!==e?.layerDefinition?.type)):(i.reverse(),u.reverse()),i.forEach(t=>{let n=l?.(t);if(n||!l){let l=L(e,r(t),a,t,n);e.add(l)}}),u.length){let r=t?null:await n.FeatureLayer();u.forEach(n=>{let i=l?.(n);if(i||!l){let l=L(e,t?t(n):r,a,n,i);e.tables.add(l)}})}}function L(e,r,t,a,n){let l=e.portalItem,i={portalItem:l.clone(),layerId:a.id};null!=a.url&&(i.url=a.url);let u=new r(i);if("sourceJSON"in u&&(u.sourceJSON=n),"subtype-group"!==u.type&&"catalog"!==u.type&&(u.sublayerTitleMode="service-name"),"Feature Collection"===l.type){let e={origin:"portal-item",portal:l.portal??s.A.getDefault()};u.read(a,e);let r=t.showLegend;null!=r&&u.read({showLegend:r},e)}return u}async function v(e,r,t){if(!1===e.supportsData)return{data:void 0};let a=e.instance,{portalItem:l,type:i}=a;if(!l)return{data:void 0};let s=null;try{s="video"===i?null:await l.fetchData("json",t)}catch{}if(function(e){return"stream"!==e.type&&"layerId"in e}(a)){let{type:e,url:t}=l;if("Feature Service"===e&&t)try{await(0,c.Y5)(s,t,r)}catch{}let o=null,{count:y,preferredHost:p}=await async function(e,r,t){if(r?.layers&&r?.tables)return{count:(0,c.XH)(r)};let a=(0,n.qg)(e.url);if(!a)return{count:1};let l=a.url.path,i=await t.fetchServiceMetadata(l,{customParameters:(0,c.pJ)(r)?.customParameters}).catch(()=>null);return{count:(r?.layers?.length??i?.layers?.length??0)+(r?.tables?.length??i?.tables?.length??0),preferredHost:(0,u.OP)(e)?(0,u.G$)():null}}(l,s,r);if((0,u.Gh)(l,p),(s?.layers||s?.tables)&&y>0){if(null==a.layerId){let e=(0,c.l)(i),r=e?.length?(0,c.Ju)(s,e)[0]:(0,c.pJ)(s);r&&(a.layerId=r.id)}o=function(e,r){let{layerId:t}=r,a=e.layers?.find(({id:e})=>e===t)??e.tables?.find(({id:e})=>e===t);return a&&function(e,r){let{layerType:t}=e;switch(r.type){case"annotation-feature":return"ArcGISAnnotationLayer"===t;case"catalog":return"CatalogLayer"===t;case"dimension-feature":return"ArcGISDimensionLayer"===t;case"feature":return!t||"ArcGISFeatureLayer"===t||"Table"===t;case"oriented-imagery":return"OrientedImageryLayer"===t;case"subtype-group":return"SubtypeGroupLayer"===t||"SubtypeGroupTable"===t}return!0}(a,r)?a:null}(s,a),"OrientedImageryLayer"===o?.layerType&&"oriented-imagery"===i&&a.supportedSourceTypes.add("Feature Layer"),o&&null!=s.showLegend&&(o.showLegend=s.showLegend)}return y>1&&"sublayerTitleMode"in a&&"service-name"!==a.sublayerTitleMode&&(a.sublayerTitleMode="item-title-and-service-name"),{data:o,preferredHost:p}}return{data:s}}},66964(e,r,t){t.d(r,{Ju:()=>h,K8:()=>I,XH:()=>g,Y5:()=>w,_r:()=>u,bO:()=>o,l:()=>b,nu:()=>S,pJ:()=>c,rc:()=>y});var a=t(60694),n=t(92009),l=t(23154),i=t(77548);function u(e,r){let{id:t,name:a}=e,n={id:t,name:a};return s(n,e,r),n}function s(e,r,t){let a=(0,l.Aq)(r.type,t);a&&(e.layerType=a)}async function o(e,r,t){let a,n;if(function(e){return!!e&&Array.isArray(e.layers)&&Array.isArray(e.tables)}(e)&&p(e))n=e;else{let l=await t.fetchServiceMetadata(r,{customParameters:c(e)?.customParameters});a=(0,i.G$)(),n=f(e,l),d(n,l)}return m(n),{data:n,preferredHost:a}}function c(e){if(!e)return null;let{layers:r,tables:t}=e;return r?.[0]??t?.[0]??null}function y(e,r){return null==r?null:[...e.layers??[],...e.tables??[]].find(e=>e.id===r)}function p(e){return[...e.layers??[],...e.tables??[]].every(e=>!!e.layerType)}function f(e,r){return{...e,layers:e?.layers??r.layers?.map(e=>u(e))??[],tables:e?.tables??r.tables?.map(e=>u(e,!0))??[]}}function d(e,r){let t=e.layers??[],a=e.tables??[],n=[...r.layers??[],...r.tables??[]];for(let e of[...t,...a]){let{id:r,layerType:t}=e;if(t)continue;let l=n.find(({id:e})=>e===r);l&&s(e,l,a.includes(e))}}function m(e){e.layers=e.layers?.filter(v),e.tables=e.tables?.filter(v)}async function w(e,r,t){if(e?.layers?.length||e?.tables?.length){if(!p(e)){let n=(0,a.qg)(r)?.url.path;if(!n)return;d(e,await t.fetchServiceMetadata(n,{customParameters:c(e)?.customParameters}))}m(e)}}function h(e,r){return[...e.layers??[],...e.tables??[]].filter(({layerType:e})=>e?r.includes(e):r.includes("ArcGISFeatureLayer"))}function g(e){return(e?.layers?.length??0)+(e?.tables?.length??0)}const L=new Set(["ArcGISAnnotationLayer","ArcGISDimensionLayer","ArcGISFeatureLayer","CatalogLayer","OrientedImageryLayer","SubtypeGroupLayer","SubtypeGroupTable","Table"]);function v(e){return!!e.layerType&&L.has(e.layerType)}function b(e){switch(e){case"annotation-feature":return["ArcGISAnnotationLayer"];case"catalog":return["CatalogLayer"];case"dimension-feature":return["ArcGISDimensionLayer"];case"feature":return["ArcGISFeatureLayer","Table"];case"oriented-imagery":return["OrientedImageryLayer"];case"subtype-group":return["SubtypeGroupLayer","SubtypeGroupTable"]}return null}function I(e){switch(e){case"ArcGISAnnotationLayer":return"AnnotationFeatureLayer";case"ArcGISDimensionLayer":return"DimensionFeatureLayer";case"ArcGISFeatureLayer":case"Table":return"FeatureLayer";case"CatalogLayer":return"CatalogLayer";case"OrientedImageryLayer":return"OrientedImageryLayer";case"SubtypeGroupLayer":case"SubtypeGroupTable":return"SubtypeGroupLayer"}return null}async function S(e,r,t){if(!e?.url)return r??{};if(r??={},!r.layers){let a=await t.fetchServiceMetadata(e.url);r.layers=a.layers?.map(e=>u(e))}let{serverUrl:a,portalItem:l}=await(0,n.L)(e.url,{sceneLayerItem:e,customParameters:c(r)?.customParameters}).catch(()=>({serverUrl:null,portalItem:null}));if(null==a)return r.tables=[],r;if(!r.tables&&l){let e=await l.fetchData().catch(()=>null);if(e?.tables)r.tables=e.tables.map(({id:e,name:r})=>({id:e,name:r}));else{let n=await t.fetchServiceMetadata(a,{customParameters:c(e)?.customParameters}).catch(()=>null);r.tables=n?.tables?.map(e=>u(e,!0))}}if(r.tables)for(let e of r.tables)e.url=`${a}/${e.id}`;return r}},8947(e,r,t){t.d(r,{L:()=>i});var a=t(60999),n=t(17676),l=t(67076);async function i(e,r,t){let i=e&&e.getAtOrigin&&e.getAtOrigin("renderer",r.origin);if(i&&"unique-value"===i.type&&i.styleOrigin){let u=await(0,a.Ke)(i.populateFromStyle());if((0,n.Te)(t),!1===u.ok){let t=u.error;r?.messages&&r.messages.push(new l.A("renderer:style-reference",`Failed to create unique value renderer from style reference: ${t.message}`,{error:t,context:r})),e.clear("renderer",r?.origin)}}}},7861(e,r,t){t.d(r,{L:()=>n});var a=t(56507);async function n(e,r){return(await(0,a.A)(e,{responseType:"json",query:{f:"json",...r?.customParameters,token:r?.apiKey}})).data}}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1204],{22429(e,r,t){t.d(r,{v:()=>n});var a=t(7861);class n{constructor(){this._serviceMetadatas=new Map,this._itemDatas=new Map}async fetchServiceMetadata(e,r){let t=this._serviceMetadatas.get(e);if(t)return t;let n=await(0,a.L)(e,r);return this._serviceMetadatas.set(e,n),n}async fetchItemData(e){let{id:r}=e;if(!r)return null;let{_itemDatas:t}=this;if(t.has(r))return t.get(r);let a=await e.fetchData();return t.set(r,a),a}async fetchCustomParameters(e,r){let t=await this.fetchItemData(e);return t&&"object"==typeof t&&(r?r(t):t.customParameters)||null}}},92009(e,r,t){t.d(r,{L:()=>c});var a=t(70333),n=t(56507),l=t(49186),i=t(17676),u=t(60694),s=t(20655),o=t(80812);async function c(e,r){let t=(0,u.qg)(e);if(!t)throw new l.A("invalid-url","Invalid scene service url");let c={...r,sceneServerUrl:t.url.path,layerId:t.sublayer??void 0};if(c.sceneLayerItem??=await async function(e){let r=(await y(e)).serviceItemId;if(!r)return null;let t=new o.default({id:r,apiKey:e.apiKey}),l=await async function(e){let r=a.id?.findServerInfo(e.sceneServerUrl);if(r?.owningSystemUrl)return r.owningSystemUrl;let t=e.sceneServerUrl.replace(/(.*\/rest)\/.*/i,"$1")+"/info";try{let r=(await(0,n.A)(t,{query:{f:"json"},responseType:"json",signal:e.signal})).data.owningSystemUrl;if(r)return r}catch(e){(0,i.QP)(e)}return null}(e);null!=l&&(t.portal=new s.A({url:l}));try{return await t.load({signal:e.signal})}catch(e){return(0,i.QP)(e),null}}(c),null==c.sceneLayerItem)return p(c.sceneServerUrl.replace("/SceneServer","/FeatureServer"),c);let f=await async function({sceneLayerItem:e,signal:r}){if(!e)return null;try{let t=(await e.fetchRelatedItems({relationshipType:"Service2Service",direction:"reverse"},{signal:r})).find(e=>"Feature Service"===e.type)||null;if(!t)return null;let a=new o.default({portal:t.portal,id:t.id});return await a.load(),a}catch(e){return(0,i.QP)(e),null}}(c);if(!f?.url)throw new l.A("related-service-not-found","Could not find feature service through portal item relationship");c.featureServiceItem=f;let d=await p(f.url,c);return d.portalItem=f,d}async function y(e){if(e.rootDocument)return e.rootDocument;let r={query:{f:"json",...e.customParameters,token:e.apiKey},responseType:"json",signal:e.signal};try{e.rootDocument=(await(0,n.A)(e.sceneServerUrl,r)).data}catch{e.rootDocument={}}return e.rootDocument}async function p(e,r){let t=(0,u.qg)(e);if(!t)throw new l.A("invalid-feature-service-url","Invalid feature service url");let a=t.url.path,i=r.layerId;if(null==i)return{serverUrl:a};let s=y(r),o=r.featureServiceItem?await r.featureServiceItem.fetchData("json"):null,c=(o?.layers?.[0]||o?.tables?.[0])?.customParameters,p=e=>{let t={query:{f:"json",...c},responseType:"json",authMode:e,signal:r.signal};return(0,n.A)(a,t)},f=p("anonymous").catch(()=>p("no-prompt")),[d,m]=await Promise.all([f,s]),w=m?.layers,h=d.data&&d.data.layers;if(!Array.isArray(h))throw Error("expected layers array");if(Array.isArray(w)){for(let e=0;e<Math.min(w.length,h.length);e++)if(w[e].id===i)return{serverUrl:a,layerId:h[e].id}}else if(null!=i&&i<h.length)return{serverUrl:a,layerId:h[i].id};throw Error("could not find matching associated sublayer")}},23154(e,r,t){t.d(r,{A6:()=>u,Aq:()=>m,Jo:()=>d,QM:()=>i});var a=t(77548),n=t(7861);const l=new Set(["Annotation Layer","Catalog Layer","Dimension Layer","Feature Layer","Oriented Imagery Layer"]);async function i(e,r){let{serviceJSON:t,layersJSON:a,...n}=await u(e,r);c(t);let l={serviceJSON:t,...n};return a&&(c(a),l.layersJSON=a),l}async function u(e,r){let{loadContext:t,...l}=r||{},i=t?await t.fetchServiceMetadata(e,l):await(0,n.L)(e,l),u=(0,a.G$)();f(i);let s={serviceJSON:i,preferredHost:u};if((i.currentVersion??0)<10.5)return s;let o=`${(0,a.$x)()??e}/layers`,c=t?await t.fetchServiceMetadata(o,l):await(0,n.L)(o,l);return f(c),s.layersJSON={layers:c.layers,tables:c.tables},s}function s(e){return l.has(e.type)}function o(e){return"Table"===e.type}function c(e){e.layers=e.layers?.filter(s),e.tables=e.tables?.filter(o)}function y(e){e.type||="Feature Layer"}function p(e){e.type||="Table"}function f(e){e.layers?.forEach(y),e.tables?.forEach(p)}function d(e){if(!e)return"FeatureLayer";switch(e){case"Feature Layer":case"Table":return"FeatureLayer";case"Oriented Imagery Layer":return"OrientedImageryLayer";case"Catalog Layer":return"CatalogLayer";case"Dimension Layer":return"DimensionFeatureLayer";case"Annotation Layer":return"AnnotationFeatureLayer"}return null}function m(e,r){if(!e)return r?"Table":"ArcGISFeatureLayer";switch(e){case"Annotation Layer":return"ArcGISAnnotationLayer";case"Catalog Layer":return"CatalogLayer";case"Dimension Layer":return"ArcGISDimensionLayer";case"Feature Layer":return"ArcGISFeatureLayer";case"Oriented Imagery Layer":return"OrientedImageryLayer";case"Parcel Layer":return"ParcelLayer";case"Table":return"Table";case"Topology Layer":return"TopologyLayer";case"Trace Network Layer":return"TraceNetworkLayer";case"Utility Network Layer":return"UtilityNetworkLayer";default:return null}}},88788(e,r,t){t.d(r,{m:()=>i,v:()=>l});var a=t(84952),n=t(20655);function l(e,r){return{...u(e,r),readResourcePaths:[]}}function i(e,r,t){let n=(0,a.An)(t?.forceNewItemContext?null:e.itemUrl);return{...u(e,r,t),messages:[],writtenProperties:[],blockedRelativeUrls:[],verifyItemRelativeUrls:n?{rootPath:n.path,writtenUrls:[]}:null,resources:t?.withResources?{toAdd:[],toUpdate:[],toKeep:[],pendingOperations:[]}:null}}function u(e,r,t){return{origin:r,url:(0,a.An)(t?.forceNewItemContext?null:e.itemUrl),portal:e.portal||n.A.getDefault(),portalItem:e}}},41204(e,r,t){t.d(r,{load:()=>d,reload:()=>m});var a=t(49186),n=t(60694),l=t(23154),i=t(22429),u=t(77548),s=t(20655),o=t(88788),c=t(66964),y=t(10407),p=t(8947),f=t(7861);async function d(e,r){let t=e.instance.portalItem;if(t?.id)return await t.load(r),w(e),e.validateItem&&e.validateItem(t),h(e,r)}async function m(e,r){let t=e.instance.portalItem;if(!t?.id||!t.loaded)return!1;let a=t.modified;return await t.reload(),r?.signal?.throwIfAborted(),a?.getTime()!==t.modified?.getTime()&&(w(e),e.validateItem&&e.validateItem(t),await h(e,r),!0)}function w(e){let r=e.instance.portalItem;if(!r?.type||!e.supportedTypes.includes(r.type))throw new a.A("portal:invalid-layer-item-type","Invalid layer item type '${type}', expected '${expectedType}'",{type:r?.type,expectedType:e.supportedTypes.join(", ")})}async function h(e,r){let t=e.instance,{portalItem:n,type:s}=t;if(!n)return;let{url:d}=n,{title:m}=n,w=(0,o.v)(n,"portal-item");if("group"===s)return async function(e,r,t){let n=e.portalItem;if(!e.sourceIsPortalItem)return;let{title:s,type:p}=n;if("Group Layer"===p){if(!(0,y.Y)(n,"Map"))throw new a.A("portal:invalid-layer-item-typekeyword","'Group Layer' item without 'Map' type keyword is not supported");return async function(e,r){let t=e.portalItem,n=await t.fetchData("json");if(!n)return;if(!r.populateGroupLayer)throw new a.A("portal:missing-populate-group-layer","Missing populate group layer");let l=(0,o.v)(t,"web-map");e.read(n,l),await r.populateGroupLayer(e,n,{context:l}),e.resourceReferences={portalItem:t,paths:l.readResourcePaths??[]}}(e,t)}return e.read({title:s},r),async function(e,r){let t,{portalItem:n}=e;if(!n)return;let{type:s,url:o}=n,y=r.layerModuleTypeMap;if(!y)throw new a.A("portal:missing-layer-module-type-map","Layer module type map is required to construct sub layers");switch(s){case"Feature Service":case"Feature Collection":t=y.FeatureLayer;break;case"Stream Service":t=y.StreamLayer;break;case"Scene Service":t=y.SceneLayer;break;case"Video Service":t=y.VideoLayer;break;default:throw new a.A("portal:unsupported-item-type-as-group",`The item type '${s}' is not supported as a 'GroupLayer'`)}let p="Video Service"===s,d=new i.v,[m,{data:w}]=await Promise.all([t(),p?{data:null}:v(r,d)]),h=()=>m;if(p)return async function(e,r,t){let{portalItem:a}=e;if(!a?.url)return;let n=await(0,f.L)(a.url);n&&g(e,r,null,{layers:n.layers?.map(({id:e,name:r})=>({id:e,name:r}))},t)}(e,h,y);if("Feature Service"===s){let r=(0,c.pJ)(w)?.customParameters,t=(await(0,c.bO)(w,o,d)).data;h=await async function(e,r){let{layers:t,tables:a}=e,n=[...t,...a];if(!n.length)return;let l=new Set,i=[];for(let{layerType:e}of n){if(l.has(e))continue;l.add(e);let t=r[(0,c.K8)(e)];i.push(t())}let u=await Promise.all(i),s=new Map;return Array.from(l).forEach((e,r)=>{s.set(e,u[r])}),({layerType:e})=>s.get(e)}(t,y)??h;let{provider:a,preferredHost:i}=await async function(e,r){let{layersJSON:t,preferredHost:a}=await(0,l.QM)(e,r);if(!t)return{provider:null,preferredHost:a};let n=[...t.layers,...t.tables];return{provider:e=>n.find(r=>r.id===e.id),preferredHost:a}}(o,{customParameters:r,loadContext:d});return(0,u.Gh)(n,i),await g(e,h,h,t,y,a)}return"Scene Service"===s&&o&&(w=await(0,c.nu)(n,w,d)),(0,c.XH)(w)>0?await g(e,h,null,w,y):await async function(e,r,t){let{portalItem:a}=e;if(!a?.url)return;let n=await(0,f.L)(a.url);n&&g(e,r,null,{layers:n.layers?.map(e=>(0,c._r)(e)),tables:n.tables?.map(e=>(0,c._r)(e,!0))},t)}(e,h,y)}(e,t)}(t,w,e);d&&"media"!==s&&"parquet"!==s&&t.read({url:d},w);let{data:h,preferredHost:L}=await v(e,new i.v,r);return d=n.url,"isUrlHostModified"in t&&(L?t.applyPreferredHost({preferredHost:L}):t.applyHostFromPortalItem()),h&&t.read(h,w),t.resourceReferences={portalItem:n,paths:w.readResourcePaths??[]},"subtype-group"!==s&&t.read({title:m},w),(0,p.L)(t,w)}async function g(e,r,t,a,n,l){let i=a.layers??[],u=a.tables??[];if("Feature Collection"===e.portalItem?.type?(i.forEach((e,r)=>{e.id=r,"Table"===e?.layerDefinition?.type&&u.push(e)}),i=i.filter(e=>"Table"!==e?.layerDefinition?.type)):(i.reverse(),u.reverse()),i.forEach(t=>{let n=l?.(t);if(n||!l){let l=L(e,r(t),a,t,n);e.add(l)}}),u.length){let r=t?null:await n.FeatureLayer();u.forEach(n=>{let i=l?.(n);if(i||!l){let l=L(e,t?t(n):r,a,n,i);e.tables.add(l)}})}}function L(e,r,t,a,n){let l=e.portalItem,i={portalItem:l.clone(),layerId:a.id};null!=a.url&&(i.url=a.url);let u=new r(i);if("sourceJSON"in u&&(u.sourceJSON=n),"subtype-group"!==u.type&&"catalog"!==u.type&&(u.sublayerTitleMode="service-name"),"Feature Collection"===l.type){let e={origin:"portal-item",portal:l.portal??s.A.getDefault()};u.read(a,e);let r=t.showLegend;null!=r&&u.read({showLegend:r},e)}return u}async function v(e,r,t){if(!1===e.supportsData)return{data:void 0};let a=e.instance,{portalItem:l,type:i}=a;if(!l)return{data:void 0};let s=null;try{s="video"===i?null:await l.fetchData("json",t)}catch{}if(function(e){return"stream"!==e.type&&"layerId"in e}(a)){let{type:e,url:t}=l;if("Feature Service"===e&&t)try{await(0,c.Y5)(s,t,r)}catch{}let o=null,{count:y,preferredHost:p}=await async function(e,r,t){if(r?.layers&&r?.tables)return{count:(0,c.XH)(r)};let a=(0,n.qg)(e.url);if(!a)return{count:1};let l=a.url.path,i=await t.fetchServiceMetadata(l,{customParameters:(0,c.pJ)(r)?.customParameters}).catch(()=>null);return{count:(r?.layers?.length??i?.layers?.length??0)+(r?.tables?.length??i?.tables?.length??0),preferredHost:(0,u.OP)(e)?(0,u.G$)():null}}(l,s,r);if((0,u.Gh)(l,p),(s?.layers||s?.tables)&&y>0){if(null==a.layerId){let e=(0,c.l)(i),r=e?.length?(0,c.Ju)(s,e)[0]:(0,c.pJ)(s);r&&(a.layerId=r.id)}o=function(e,r){let{layerId:t}=r,a=e.layers?.find(({id:e})=>e===t)??e.tables?.find(({id:e})=>e===t);return a&&function(e,r){let{layerType:t}=e;switch(r.type){case"annotation-feature":return"ArcGISAnnotationLayer"===t;case"catalog":return"CatalogLayer"===t;case"dimension-feature":return"ArcGISDimensionLayer"===t;case"feature":return!t||"ArcGISFeatureLayer"===t||"Table"===t;case"oriented-imagery":return"OrientedImageryLayer"===t;case"subtype-group":return"SubtypeGroupLayer"===t||"SubtypeGroupTable"===t}return!0}(a,r)?a:null}(s,a),"OrientedImageryLayer"===o?.layerType&&"oriented-imagery"===i&&a.supportedSourceTypes.add("Feature Layer"),o&&null!=s.showLegend&&(o.showLegend=s.showLegend)}return y>1&&"sublayerTitleMode"in a&&"service-name"!==a.sublayerTitleMode&&(a.sublayerTitleMode="item-title-and-service-name"),{data:o,preferredHost:p}}return{data:s}}},66964(e,r,t){t.d(r,{Ju:()=>h,K8:()=>I,XH:()=>g,Y5:()=>w,_r:()=>u,bO:()=>o,l:()=>b,nu:()=>S,pJ:()=>c,rc:()=>y});var a=t(60694),n=t(92009),l=t(23154),i=t(77548);function u(e,r){let{id:t,name:a}=e,n={id:t,name:a};return s(n,e,r),n}function s(e,r,t){let a=(0,l.Aq)(r.type,t);a&&(e.layerType=a)}async function o(e,r,t){let a,n;if(function(e){return!!e&&Array.isArray(e.layers)&&Array.isArray(e.tables)}(e)&&p(e))n=e;else{let l=await t.fetchServiceMetadata(r,{customParameters:c(e)?.customParameters});a=(0,i.G$)(),n=f(e,l),d(n,l)}return m(n),{data:n,preferredHost:a}}function c(e){if(!e)return null;let{layers:r,tables:t}=e;return r?.[0]??t?.[0]??null}function y(e,r){return null==r?null:[...e.layers??[],...e.tables??[]].find(e=>e.id===r)}function p(e){return[...e.layers??[],...e.tables??[]].every(e=>!!e.layerType)}function f(e,r){return{...e,layers:e?.layers??r.layers?.map(e=>u(e))??[],tables:e?.tables??r.tables?.map(e=>u(e,!0))??[]}}function d(e,r){let t=e.layers??[],a=e.tables??[],n=[...r.layers??[],...r.tables??[]];for(let e of[...t,...a]){let{id:r,layerType:t}=e;if(t)continue;let l=n.find(({id:e})=>e===r);l&&s(e,l,a.includes(e))}}function m(e){e.layers=e.layers?.filter(v),e.tables=e.tables?.filter(v)}async function w(e,r,t){if(e?.layers?.length||e?.tables?.length){if(!p(e)){let n=(0,a.qg)(r)?.url.path;if(!n)return;d(e,await t.fetchServiceMetadata(n,{customParameters:c(e)?.customParameters}))}m(e)}}function h(e,r){return[...e.layers??[],...e.tables??[]].filter(({layerType:e})=>e?r.includes(e):r.includes("ArcGISFeatureLayer"))}function g(e){return(e?.layers?.length??0)+(e?.tables?.length??0)}const L=new Set(["ArcGISAnnotationLayer","ArcGISDimensionLayer","ArcGISFeatureLayer","CatalogLayer","OrientedImageryLayer","SubtypeGroupLayer","SubtypeGroupTable","Table"]);function v(e){return!!e.layerType&&L.has(e.layerType)}function b(e){switch(e){case"annotation-feature":return["ArcGISAnnotationLayer"];case"catalog":return["CatalogLayer"];case"dimension-feature":return["ArcGISDimensionLayer"];case"feature":return["ArcGISFeatureLayer","Table"];case"oriented-imagery":return["OrientedImageryLayer"];case"subtype-group":return["SubtypeGroupLayer","SubtypeGroupTable"]}return null}function I(e){switch(e){case"ArcGISAnnotationLayer":return"AnnotationFeatureLayer";case"ArcGISDimensionLayer":return"DimensionFeatureLayer";case"ArcGISFeatureLayer":case"Table":return"FeatureLayer";case"CatalogLayer":return"CatalogLayer";case"OrientedImageryLayer":return"OrientedImageryLayer";case"SubtypeGroupLayer":case"SubtypeGroupTable":return"SubtypeGroupLayer"}return null}async function S(e,r,t){if(!e?.url)return r??{};if(r??={},!r.layers){let a=await t.fetchServiceMetadata(e.url);r.layers=a.layers?.map(e=>u(e))}let{serverUrl:a,portalItem:l}=await(0,n.L)(e.url,{sceneLayerItem:e,customParameters:c(r)?.customParameters}).catch(()=>({serverUrl:null,portalItem:null}));if(null==a)return r.tables=[],r;if(!r.tables&&l){let e=await l.fetchData().catch(()=>null);if(e?.tables)r.tables=e.tables.map(({id:e,name:r})=>({id:e,name:r}));else{let n=await t.fetchServiceMetadata(a,{customParameters:c(e)?.customParameters}).catch(()=>null);r.tables=n?.tables?.map(e=>u(e,!0))}}if(r.tables)for(let e of r.tables)e.url=`${a}/${e.id}`;return r}},8947(e,r,t){t.d(r,{L:()=>i});var a=t(60999),n=t(17676),l=t(67076);async function i(e,r,t){let i=e&&e.getAtOrigin&&e.getAtOrigin("renderer",r.origin);if(i&&"unique-value"===i.type&&i.styleOrigin){let u=await(0,a.Ke)(i.populateFromStyle());if((0,n.Te)(t),!1===u.ok){let t=u.error;r?.messages&&r.messages.push(new l.A("renderer:style-reference",`Failed to create unique value renderer from style reference: ${t.message}`,{error:t,context:r})),e.clear("renderer",r?.origin)}}}},7861(e,r,t){t.d(r,{L:()=>n});var a=t(56507);async function n(e,r){return(await(0,a.A)(e,{responseType:"json",query:{f:"json",...r?.customParameters,token:r?.apiKey}})).data}}}]);
@@ -1,4 +1,4 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[5804,9480],{46130(e,t,r){r.d(t,{v:()=>n});var o=r(76553);function n(e){e?.writtenProperties&&e.writtenProperties.forEach(({target:e,propName:t,newOrigin:r})=>{(0,o.H)(e)&&r&&e.originOf(t)!==r&&e.updateOrigin(t,r)})}},56512(e,t,r){function o(e){let t,r,o=[],n=!1;return function(...i){return n&&t===this&&function(e,t){if(e.length!==t.length)return!1;for(let r=0;r<e.length;++r)if(e[r]!==t[r])return!1;return!0}(i,o)||(r=e.apply(this,i),t=this,o=i,n=!0),r}}r.d(t,{B:()=>o})},76553(e,t,r){function o(e){return e&&"getAtOrigin"in e&&"originOf"in e}r.d(t,{H:()=>o})},13069(e,t,r){r.d(t,{AG:()=>s,lk:()=>n,vD:()=>a,yS:()=>i});const o="randomUUID"in crypto;function n(){if(o)return crypto.randomUUID();let e=crypto.getRandomValues(new Uint16Array(8));e[3]=4095&e[3]|16384,e[4]=16383&e[4]|32768;let 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 i(){return`{${n().toUpperCase()}}`}function a(){return`{${n()}}`}function s(e){let t=e.toUpperCase();return e.startsWith("{")?t:`{${t}}`}},65806(e,t,r){r.d(t,{g:()=>a});var o=r(51850),n=r(99917),i=r(9762);function a(e,t,r,o){if((0,n.canProjectWithoutEngine)(e.spatialReference,r))return s[0]=e.x,s[1]=e.y,s[2]=e.z??0,(0,i.projectBuffer)(s,e.spatialReference,0,t,r,0);let a=(0,n.tryProject)(e,r,o);return!!a&&(t[0]=a.x,t[1]=a.y,t[2]=a.z??0,!0)}const s=(0,o.vt)()},27993(e,t,r){r.d(t,{F:()=>s});var o=r(99917),n=r(16930),i=r(9762),a=r(65806);function s(e,t,r,n){return!(null==t||null==n||e.length<2)&&((0,o.canProjectWithoutEngine)(t,n)?(0,i.projectBuffer)(e,t,0,r,n,0,1):(l.x=e[0],l.y=e[1],l.z=e[2],l.spatialReference=t,(0,a.g)(l,r,n)))}const l={x:0,y:0,z:0,hasZ:!0,hasM:!1,spatialReference:n.A.WGS84,type:"point"}},52136(e,t,r){var o=r(32198),n=r(91429);r.d(t,["p",0,e=>{let t=e,r=class extends t{get apiKey(){return this._isOverridden("apiKey")?this._get("apiKey"):"portalItem"in this?this.portalItem?.apiKey:null}set apiKey(e){null==e?(this._clearOverride("apiKey"),this.clear("apiKey","user")):this._override("apiKey",e)}};return(0,o.Cg)([(0,n.MZ)({type:String})],r.prototype,"apiKey",null),r=(0,o.Cg)([(0,n.$K)("esri.layers.mixins.APIKeyMixin")],r),r}])},58947(e,t,r){r.d(t,{w6:()=>A,qM:()=>M});var o=r(32198),n=r(56507),i=r(49186),a=r(53966),s=r(17676),l=r(91429),u=r(46130),c=r(5443),d=r(16930),p=r(85707),f=r(60694),h=r(10873),y=r(83898),m=r(73179);var v=r(20655),g=r(80812),w=r(88788),b=r(91682),x=r(26121),C=r(36005);const A=e=>{let t=(0,p.a)(e),r=class extends t{constructor(){super(...arguments),this.spatialReference=null,this.fullExtent=null,this.minScale=0,this.maxScale=0,this.version={major:NaN,minor:NaN,versionString:""},this.copyright=null,this.sublayerTitleMode="item-title",this.title=null,this.layerId=null,this.url=null,this.indexInfo=null,this._debouncedSaveOperations=(0,s.sg)(async(e,t,r)=>{switch(e){case 0:return this._save(t);case 1:return this._saveAs(r,t)}})}readSpatialReference(e,t){return I(t)}readFullExtent(e,t,r){if("object"==typeof e&&e){let o=null==e.spatialReference?{...e,spatialReference:I(t)}:e;return c.A.fromJSON(o,r)}let o=t.store,n=I(t);return null==n||null==o?.extent||!Array.isArray(o.extent)||o.extent.some(e=>e<S)?null:new c.A({xmin:o.extent[0],ymin:o.extent[1],xmax:o.extent[2],ymax:o.extent[3],spatialReference:n})}parseVersionString(e){let t={major:NaN,minor:NaN,versionString:e},r=e.split(".");return r.length>=2&&(t.major=parseInt(r[0],10),t.minor=parseInt(r[1],10)),t}readVersion(e,t){let r=t.store,o=null==r.version?"":r.version.toString();return this.parseVersionString(o)}readTitlePortalItem(e){return"item-title"===this.sublayerTitleMode?e:void 0}readTitleService(e,t){if("item-title"===this.sublayerTitleMode)return this.url?(0,f.yG)(this.url,t.name):t.name;let r=t.name;if(!r&&this.url){let e=(0,f.qg)(this.url);null!=e&&(r=e.title)}let o=this.portalItem?.title;return"item-title-and-service-name"===this.sublayerTitleMode&&o&&(r=o+" - "+r),(0,f.cr)(r)}get parsedUrl(){return(0,m.h)(this,{separator:"layers"})}async _fetchIndexAndUpdateExtent(e,t){this.indexInfo=(0,y.F)(this.parsedUrl?.path??"",this.rootNode,e,this.customParameters,this.apiKey,a.A.getLogger(this),t),this.indexInfo.catch(()=>{});let{fullExtent:r}=this;null!=r&&!r.hasZ&&this._updateExtent(r,await this.indexInfo)}_updateExtent(e,t){if("page"===t?.type){let r=t.rootIndex%t.pageSize,o=t.rootPage?.nodes?.[r];M(e,o?.obb)}else if("node"===t?.type){let r=t.rootNode?.mbs;if(!Array.isArray(r)||4!==r.length||r[0]<S)return;let o=r[2],n=r[3];e.zmin=o-n,e.zmax=o+n}}async _fetchService(e){if(null==this.url)throw new i.A("sceneservice:url-not-set","Scene service can not be loaded without valid portal item or url");if(null==this.layerId&&/SceneServer\/*$/i.test(this.url)){let t=await this._fetchFirstLayerId(e);null!=t&&(this.layerId=t)}return this._fetchServiceLayer(e)}async _fetchFirstLayerId(e){let t=await(0,n.A)(this.url??"",{query:{f:"json",...this.customParameters,token:this.apiKey},responseType:"json",signal:e});if(t.data&&Array.isArray(t.data.layers)&&t.data.layers.length>0)return t.data.layers[0].id}async _fetchServiceLayer(e){let t=await(0,n.A)(this.parsedUrl?.path??"",{query:{f:"json",...this.customParameters,token:this.apiKey},responseType:"json",signal:e});t.ssl&&this.url&&(this.url=this.url.replace(/^http:/i,"https:"));let r=!1;if(t.data.layerType&&"Voxel"===t.data.layerType&&(r=!0),r)return this._fetchVoxelServiceLayer();let o=t.data;this.read(o,this._getServiceContext()),this.validateLayer(o)}async _fetchVoxelServiceLayer(e){let t=(await(0,n.A)(this.parsedUrl?.path+"/layer",{query:{f:"json",...this.customParameters,token:this.apiKey},responseType:"json",signal:e})).data;this.read(t,this._getServiceContext()),this.validateLayer(t)}_getServiceContext(){return{origin:"service",portalItem:this.portalItem,portal:this.portalItem?.portal,url:this.parsedUrl}}async _ensureLoadBeforeSave(){await this.load(),"beforeSave"in this&&"function"==typeof this.beforeSave&&await this.beforeSave()}validateLayer(e){}async _saveAs(e,t){let r={...T,...t},o=g.default.from(e);if(!o)throw new i.A("sceneservice:portal-item-required","_saveAs() requires a portal item to save to");o.id&&(o=o.clone(),o.id=null);let n=o.portal||v.A.getDefault();await this._ensureLoadBeforeSave(),o.type=R,o.portal=n;let a=(0,w.m)(o,"portal-item",{withResources:!0}),s={layers:[this.write({},a)]};return await Promise.all(a.resources.pendingOperations??[]),await this._validateAgainstJSONSchema(s,a,r),this.url&&(o.url=this.url),o.title||(o.title=this.title),U(o,r,1),await n.signIn(),await n.user.addItem({item:o,folder:r?.folder,data:s}),await(0,b.r)(this.resourceReferences,a),this.portalItem=o,(0,u.v)(a),a.portalItem=o,o}async _save(e){let t={...T,...e};if(!this.portalItem)throw new i.A("sceneservice:portal-item-not-set","Portal item to save to has not been set on this SceneService");if(this.portalItem.type!==R)throw new i.A("sceneservice:portal-item-wrong-type",`Portal item needs to have type "${R}"`);await this._ensureLoadBeforeSave();let r=(0,w.m)(this.portalItem,"portal-item",{withResources:!0}),o=this.write({},r),a=await async function(e,t){let r=await e.fetchData("json")??{};return Array.isArray(r.layers)||(r.layers=await async function(e,t){let r=await async function(e){let t=P(e.url);if(!t)return null;let r=(await(0,n.A)(t,{query:{f:"json"},responseType:"json"})).data.layers;if(!Array.isArray(r))return null;let o=r.filter(({id:e})=>null!=e).map(({id:e})=>({id:e}));return o.length?o:null}(e).catch(()=>null);return r?.some(({id:e})=>e===t.id)?r:[t]}(e,t)),function(e,t){let r=e.findIndex(({id:e})=>e===t.id);-1===r?e.push(t):e[r]=t}(r.layers,t),r}(this.portalItem,o);await Promise.all(r.resources.pendingOperations??[]),await this._validateAgainstJSONSchema(a,r,t);let s=function(e,t){return t&&function(e,t){let r=P(e);return!!r&&r===_(t).url}(e.url,t)?e.url:t}(this.portalItem,this.url);return s&&(this.portalItem.url=s),this.portalItem.title||(this.portalItem.title=this.title),U(this.portalItem,t,0),await(0,b.S)(this.portalItem,a,this.resourceReferences,r),(0,u.v)(r),this.portalItem}async _validateAgainstJSONSchema(e,t,r){let o=r?.validationOptions;(0,x.ci)(t,{errorName:"sceneservice:save"},{ignoreUnsupported:o?.ignoreUnsupported,supplementalUnsupportedErrors:["scenemodification:unsupported"]});let n=o?.enabled,s=null;if(n&&s){let t=(await s()).validate(e,r.portalItemLayerType);if(!t.length)return;let n=`Layer item did not validate:\n${t.join("\n")}`;if(a.A.getLogger(this).error(`_validateAgainstJSONSchema(): ${n}`),"throw"===o.failPolicy){let e=t.map(e=>new i.A("sceneservice:schema-validation",e));throw new i.A("sceneservice-validate:error","Failed to save layer item due to schema validation, see `details.errors`.",{validationErrors:e})}}}};return(0,o.Cg)([(0,l.MZ)(h.id)],r.prototype,"id",void 0),(0,o.Cg)([(0,l.MZ)({type:d.A})],r.prototype,"spatialReference",void 0),(0,o.Cg)([(0,C.w)("spatialReference",["spatialReference","store.indexCRS","store.geographicCRS"])],r.prototype,"readSpatialReference",null),(0,o.Cg)([(0,l.MZ)({type:c.A})],r.prototype,"fullExtent",void 0),(0,o.Cg)([(0,C.w)("fullExtent",["fullExtent","store.extent","spatialReference","store.indexCRS","store.geographicCRS"])],r.prototype,"readFullExtent",null),(0,o.Cg)([(0,l.MZ)({type:Number,json:{name:"layerDefinition.minScale",write:!0,origins:{service:{read:{source:"minScale"},write:!1}}}})],r.prototype,"minScale",void 0),(0,o.Cg)([(0,l.MZ)({type:Number,json:{name:"layerDefinition.maxScale",write:!0,origins:{service:{read:{source:"maxScale"},write:!1}}}})],r.prototype,"maxScale",void 0),(0,o.Cg)([(0,l.MZ)({readOnly:!0})],r.prototype,"version",void 0),(0,o.Cg)([(0,C.w)("version",["store.version"])],r.prototype,"readVersion",null),(0,o.Cg)([(0,l.MZ)({type:String,json:{read:{source:"copyrightText"}}})],r.prototype,"copyright",void 0),(0,o.Cg)([(0,l.MZ)({type:String,json:{read:!1}})],r.prototype,"sublayerTitleMode",void 0),(0,o.Cg)([(0,l.MZ)({type:String})],r.prototype,"title",void 0),(0,o.Cg)([(0,C.w)("portal-item","title")],r.prototype,"readTitlePortalItem",null),(0,o.Cg)([(0,C.w)("service","title",["name"])],r.prototype,"readTitleService",null),(0,o.Cg)([(0,l.MZ)({type:Number,json:{origins:{service:{read:{source:"id"}},"portal-item":{write:{target:"id",isRequired:!0,ignoreOrigin:!0},read:!1}}}})],r.prototype,"layerId",void 0),(0,o.Cg)([(0,l.MZ)((0,m.b)({separator:"layers"}))],r.prototype,"url",void 0),(0,o.Cg)([(0,l.MZ)({readOnly:!0})],r.prototype,"parsedUrl",null),(0,o.Cg)([(0,l.MZ)({readOnly:!0})],r.prototype,"store",void 0),(0,o.Cg)([(0,l.MZ)({type:String,readOnly:!0,json:{read:{source:"store.rootNode"}}})],r.prototype,"rootNode",void 0),r=(0,o.Cg)([(0,l.$K)("esri.layers.mixins.SceneService")],r),r},S=-1e38;function I(e){if(null!=e.spatialReference)return d.A.fromJSON(e.spatialReference);let t=e.store,r=t.indexCRS||t.geographicCRS,o=r&&parseInt(r.slice(r.lastIndexOf("/")+1),10);return null==o?null:new d.A(o)}function M(e,t){if(null==t?.center||null==t.halfSize)throw new i.A("sceneservice:invalid-node-page","Invalid node page.");if(t.center[0]<S)return;let r=t.halfSize,o=t.center[2],n=Math.sqrt(r[0]*r[0]+r[1]*r[1]+r[2]*r[2]);e.zmin=o-n,e.zmax=o+n}function U(e,t,r){e.typeKeywords||=[];let o=t.getTypeKeywords();for(let t of o)e.typeKeywords.push(t);e.typeKeywords&&(e.typeKeywords=e.typeKeywords.filter((e,t,r)=>r.indexOf(e)===t),1===r&&(e.typeKeywords=e.typeKeywords.filter(e=>"Hosted Service"!==e)))}const R="Scene Service",T={getTypeKeywords:()=>[],portalItemLayerType:"unknown",validationOptions:{enabled:!0,ignoreUnsupported:!1,failPolicy:"throw"}},F={layerId:null};function P(e){if(!e)return null;let t=_(e);if(null!=t.layerId)return null;let r=(0,f.qg)(t.url);return null==r||"SceneServer"===r.serverType?t.url:null}function _(e){return(0,f.HZ)({layer:F,url:e,nonStandardUrlAllowed:!0})}},83898(e,t,r){r.d(t,{F:()=>i});var o=r(56507),n=r(49186);async function i(e,t,r,i,a,s,l){let u=null;if(null!=r){let t=`${e}/nodepages/`,n=t+Math.floor(r.rootIndex/r.nodesPerPage);try{return{type:"page",rootPage:(await(0,o.A)(n,{query:{f:"json",...i,token:a},responseType:"json",signal:l})).data,rootIndex:r.rootIndex,pageSize:r.nodesPerPage,lodMetric:r.lodSelectionMetricType,urlPrefix:t}}catch(e){s?.warn("#fetchIndexInfo()","Failed to load root node page. Falling back to node documents.",n,e),u=e}}if(!t)return null;let c=t?.split("/").pop(),d=`${e}/nodes/`,p=d+c;try{return{type:"node",rootNode:(await(0,o.A)(p,{query:{f:"json",...i,token:a},responseType:"json",signal:l})).data,urlPrefix:d}}catch(e){throw new n.A("sceneservice:root-node-missing","Root node missing.",{pageError:u,nodeError:e,url:p})}}},50805(e,t,r){r.d(t,{L0:()=>m,Ot:()=>p,W4:()=>s,uV:()=>c});var o=r(32198),n=r(25482),i=r(91429),a=r(93223);let s=class extends n.o{constructor(){super(...arguments),this.nodesPerPage=null,this.rootIndex=0,this.lodSelectionMetricType=null}};(0,o.Cg)([(0,i.MZ)({type:Number})],s.prototype,"nodesPerPage",void 0),(0,o.Cg)([(0,i.MZ)({type:Number})],s.prototype,"rootIndex",void 0),(0,o.Cg)([(0,i.MZ)({type:String})],s.prototype,"lodSelectionMetricType",void 0),s=(0,o.Cg)([(0,i.$K)("esri.layers.support.I3SLayerDefinitions.I3SNodePageDefinition")],s);let l=class extends n.o{constructor(){super(...arguments),this.factor=1}};(0,o.Cg)([(0,i.MZ)({type:Number,json:{read:{source:"textureSetDefinitionId"}}})],l.prototype,"id",void 0),(0,o.Cg)([(0,i.MZ)({type:Number})],l.prototype,"factor",void 0),l=(0,o.Cg)([(0,i.$K)("esri.layers.support.I3SLayerDefinitions.I3SMaterialTexture")],l);let u=class extends n.o{constructor(){super(...arguments),this.baseColorFactor=[1,1,1,1],this.baseColorTexture=null,this.metallicRoughnessTexture=null,this.metallicFactor=1,this.roughnessFactor=1}};(0,o.Cg)([(0,i.MZ)({type:[Number]})],u.prototype,"baseColorFactor",void 0),(0,o.Cg)([(0,i.MZ)({type:l})],u.prototype,"baseColorTexture",void 0),(0,o.Cg)([(0,i.MZ)({type:l})],u.prototype,"metallicRoughnessTexture",void 0),(0,o.Cg)([(0,i.MZ)({type:Number})],u.prototype,"metallicFactor",void 0),(0,o.Cg)([(0,i.MZ)({type:Number})],u.prototype,"roughnessFactor",void 0),u=(0,o.Cg)([(0,i.$K)("esri.layers.support.I3SLayerDefinitions.I3SMaterialPBRMetallicRoughness")],u);let c=class extends n.o{constructor(){super(...arguments),this.alphaMode="opaque",this.alphaCutoff=.25,this.doubleSided=!1,this.cullFace="none",this.normalTexture=null,this.occlusionTexture=null,this.emissiveTexture=null,this.emissiveFactor=null,this.pbrMetallicRoughness=null}};(0,o.Cg)([(0,a.e)({opaque:"opaque",mask:"mask",blend:"blend"})],c.prototype,"alphaMode",void 0),(0,o.Cg)([(0,i.MZ)({type:Number})],c.prototype,"alphaCutoff",void 0),(0,o.Cg)([(0,i.MZ)({type:Boolean})],c.prototype,"doubleSided",void 0),(0,o.Cg)([(0,a.e)({none:"none",back:"back",front:"front"})],c.prototype,"cullFace",void 0),(0,o.Cg)([(0,i.MZ)({type:l})],c.prototype,"normalTexture",void 0),(0,o.Cg)([(0,i.MZ)({type:l})],c.prototype,"occlusionTexture",void 0),(0,o.Cg)([(0,i.MZ)({type:l})],c.prototype,"emissiveTexture",void 0),(0,o.Cg)([(0,i.MZ)({type:[Number]})],c.prototype,"emissiveFactor",void 0),(0,o.Cg)([(0,i.MZ)({type:u})],c.prototype,"pbrMetallicRoughness",void 0),c=(0,o.Cg)([(0,i.$K)("esri.layers.support.I3SLayerDefinitions.I3SMaterialDefinition")],c);let d=class extends n.o{};(0,o.Cg)([(0,i.MZ)({type:String,json:{read:{source:["name","index"],reader:(e,t)=>e??`${t.index}`}}})],d.prototype,"name",void 0),(0,o.Cg)([(0,a.e)({jpg:"jpg",png:"png",dds:"dds","ktx-etc2":"ktx-etc2",ktx2:"ktx2",basis:"basis"})],d.prototype,"format",void 0),d=(0,o.Cg)([(0,i.$K)("esri.layers.support.I3SLayerDefinitions.I3STextureFormat")],d);let p=class extends n.o{constructor(){super(...arguments),this.atlas=!1}};(0,o.Cg)([(0,i.MZ)({type:[d]})],p.prototype,"formats",void 0),(0,o.Cg)([(0,i.MZ)({type:Boolean})],p.prototype,"atlas",void 0),p=(0,o.Cg)([(0,i.$K)("esri.layers.support.I3SLayerDefinitions.I3STextureSetDefinition")],p);let f=class extends n.o{};(0,o.Cg)([(0,a.e)({Float32:"Float32",UInt64:"UInt64",UInt32:"UInt32",UInt16:"UInt16",UInt8:"UInt8"})],f.prototype,"type",void 0),(0,o.Cg)([(0,i.MZ)({type:Number})],f.prototype,"component",void 0),f=(0,o.Cg)([(0,i.$K)("esri.layers.support.I3SLayerDefinitions.I3SGeometryAttribute")],f);let h=class extends n.o{};(0,o.Cg)([(0,a.e)({draco:"draco"})],h.prototype,"encoding",void 0),(0,o.Cg)([(0,i.MZ)({type:[String]})],h.prototype,"attributes",void 0),h=(0,o.Cg)([(0,i.$K)("esri.layers.support.I3SLayerDefinitions.I3SGeometryCompressedAttributes")],h);let y=class extends n.o{constructor(){super(...arguments),this.offset=0}};(0,o.Cg)([(0,i.MZ)({type:Number})],y.prototype,"offset",void 0),(0,o.Cg)([(0,i.MZ)({type:f})],y.prototype,"position",void 0),(0,o.Cg)([(0,i.MZ)({type:f})],y.prototype,"normal",void 0),(0,o.Cg)([(0,i.MZ)({type:f})],y.prototype,"uv0",void 0),(0,o.Cg)([(0,i.MZ)({type:f})],y.prototype,"color",void 0),(0,o.Cg)([(0,i.MZ)({type:f})],y.prototype,"uvRegion",void 0),(0,o.Cg)([(0,i.MZ)({type:f})],y.prototype,"featureId",void 0),(0,o.Cg)([(0,i.MZ)({type:f})],y.prototype,"faceRange",void 0),(0,o.Cg)([(0,i.MZ)({type:h})],y.prototype,"compressedAttributes",void 0),y=(0,o.Cg)([(0,i.$K)("esri.layers.support.I3SLayerDefinitions.I3SGeometryBuffer")],y);let m=class extends n.o{};(0,o.Cg)([(0,a.e)({triangle:"triangle"})],m.prototype,"topology",void 0),(0,o.Cg)([(0,i.MZ)()],m.prototype,"geometryBuffers",void 0),m=(0,o.Cg)([(0,i.$K)("esri.layers.support.I3SLayerDefinitions.I3SGeometryDefinition")],m)},88788(e,t,r){r.d(t,{m:()=>a,v:()=>i});var o=r(84952),n=r(20655);function i(e,t){return{...s(e,t),readResourcePaths:[]}}function a(e,t,r){let n=(0,o.An)(r?.forceNewItemContext?null:e.itemUrl);return{...s(e,t,r),messages:[],writtenProperties:[],blockedRelativeUrls:[],verifyItemRelativeUrls:n?{rootPath:n.path,writtenUrls:[]}:null,resources:r?.withResources?{toAdd:[],toUpdate:[],toKeep:[],pendingOperations:[]}:null}}function s(e,t,r){return{origin:t,url:(0,o.An)(r?.forceNewItemContext?null:e.itemUrl),portal:e.portal||n.A.getDefault(),portalItem:e}}},15804(e,t,r){r.d(t,{addOrUpdateResources:()=>s,bg:()=>p,cL:()=>d,fetchResources:()=>a,removeAllResources:()=>u,removeResource:()=>l});var o=r(56507),n=r(49186),i=r(84952);async function a(e,t={},r){await e.load(r);let o=(0,i.fj)(e.itemUrl,"resources"),{start:n=1,num:a=10,sortOrder:s="asc",sortField:l="resource"}=t,u={query:{start:n,num:a,sortOrder:s,sortField:l,token:e.apiKey},signal:r?.signal},c=await e.portal.request(o,u);return{total:c.total,nextStart:c.nextStart,resources:c.resources.map(({created:t,size:r,resource:o})=>({created:new Date(t),size:r,resource:e.resourceFromPath(o)}))}}async function s(e,t,r,o){let a=new Map;for(let{resource:e,content:o,compress:i,access:s}of t){if(!e.hasPath())throw new n.A(`portal-item-resource-${r}:invalid-path`,"Resource does not have a valid path");let[t,l]=c(e.path),u=`${t}/${i??""}/${s??""}`;a.has(u)||a.set(u,{prefix:t,compress:i,access:s,files:[]}),a.get(u).files.push({fileName:l,content:o})}await e.load(o);let s=(0,i.fj)(e.userItemUrl,"add"===r?"addResources":"updateResources");for(let{prefix:t,compress:r,access:i,files:l}of a.values())for(let a=0;a<l.length;a+=25){let u=l.slice(a,a+25),c=new FormData;t&&"."!==t&&c.append("resourcesPrefix",t),r&&c.append("compress","true"),i&&c.append("access",i);let d=0;for(let{fileName:e,content:t}of u)c.append("file"+ ++d,t,e);c.append("f","json");try{await e.portal.request(s,{method:"post",body:c,signal:o?.signal})}catch(e){if(o?.ignoreResourceCopyErrors&&e instanceof n.A&&"CONT_00942"===e.details?.messageCode)continue;throw e}}}async function l(e,t,r){if(!t.hasPath())throw new n.A("portal-item-resources-remove:invalid-path","Resource does not have a valid path");await e.load(r);let o=(0,i.fj)(e.userItemUrl,"removeResources");await e.portal.request(o,{method:"post",query:{resource:t.path},signal:r?.signal}),t.portalItem=null}async function u(e,t){await e.load(t);let r=(0,i.fj)(e.userItemUrl,"removeResources");return e.portal.request(r,{method:"post",query:{deleteAll:!0},signal:t?.signal})}function c(e){let t=e.lastIndexOf("/");return-1===t?[".",e]:[e.slice(0,t),e.slice(t+1)]}async function d(e){return"blob"===e.type?e.blob:"json"===e.type?new Blob([e.jsonString],{type:"application/json"}):(await(0,o.A)(e.url,{responseType:"blob"})).data}function p(e,t){if(!e.hasPath())return null;let[r,,o]=function(e){let[t,r]=function(e){let t=(0,i.Zo)(e);return null==t?[e,""]:[e.slice(0,e.length-t.length-1),`.${t}`]}(e),[o,n]=c(t);return[o,n,r]}(e.path);return e.portalItem.resourceFromPath((0,i.fj)(r,t+o))}},24212(e,t,r){r.d(t,{$7:()=>l,B:()=>s,M7:()=>d,XF:()=>c,tW:()=>u,w7:()=>a});var o=r(56512),n=r(86211),i=r(16271);function a(e,t){return function(e,t){return t?.mode?t.mode:function(e){return e?p:f}(e).mode}(null==e||(e.hasZ??!1),t)}function s(e,t,r){return r&&r.mode!==t?`${e} only support ${t} elevation mode`:null}function l(e,t,r){return r?.mode===t?`${e} do not support ${t} elevation mode`:null}function u(e,t){return null!=t?.featureExpressionInfo&&"0"!==t.featureExpressionInfo.expression?`${e} do not support featureExpressionInfo`:null}function c(e,t){t&&e.warn(".elevationInfo=",t)}function d(e){return(e?.offset??0)*(0,i.Ao)(e?.unit)}(0,o.B)((e,t,r)=>{if(!e||"decimal-degrees"===t)return 0;let o="unknown"!==t&&t?t:"meters",i=(0,n.mq)(r);return i?(0,n.oU)(e,o,i):0});const p={mode:"absolute-height",offset:0},f={mode:"on-the-ground",offset:null}},59418(e,t,r){r.d(t,{qs:()=>m,wH:()=>y,MA:()=>p,E5:()=>f,m0:()=>g});var o=r(49186),n=r(4718),i=r(53966),a=r(34275),s=r(37203);const l=()=>i.A.getLogger("esri.views.3d.layers.i3s.I3SBinaryReader");function u(e,t,r){let n="",i=0;for(;i<r;){let a=e[t+i];if(a<128)n+=String.fromCharCode(a),i++;else if(a>=192&&a<224){if(i+1>=r)throw new o.A("utf8-decode-error","UTF-8 Decode failed. Two byte character was truncated.");let s=(31&a)<<6|63&e[t+i+1];n+=String.fromCharCode(s),i+=2}else if(a>=224&&a<240){if(i+2>=r)throw new o.A("utf8-decode-error","UTF-8 Decode failed. Multi byte character was truncated.");let s=(15&a)<<12|(63&e[t+i+1])<<6|63&e[t+i+2];n+=String.fromCharCode(s),i+=3}else{if(!(a>=240&&a<248))throw new o.A("utf8-decode-error","UTF-8 Decode failed. Invalid multi byte sequence.");{if(i+3>=r)throw new o.A("utf8-decode-error","UTF-8 Decode failed. Multi byte character was truncated.");let s=(7&a)<<18|(63&e[t+i+1])<<12|(63&e[t+i+2])<<6|63&e[t+i+3];if(s>=65536){let e=55296+(s-65536>>10),t=56320+(1023&s);n+=String.fromCharCode(e,t)}else n+=String.fromCharCode(s);i+=4}}}return n}function c(e,t){let r={byteOffset:0,byteCount:0,fields:Object.create(null)},o=0;for(let n=0;n<t.length;n++){let i=t[n],a=i.valueType||i.type,s=b[a];r.fields[i.property]=s(e,o),o+=w[a].BYTES_PER_ELEMENT}return r.byteCount=o,r}function d(e,t,r){let n,i=[],a=0,s=0;for(;s<e;s+=1){if(n=t[s],n>0){if(i.push(u(r,a,n-1)),0!==r[a+n-1])throw new o.A("string-array-error","Invalid string array: missing null termination.")}else i.push(null);a+=n}return i}function p(e,t){return new(0,w[t.valueType])(e,t.byteOffset,t.count*t.valuesPerElement)}function f(e,t){if(!e)return null;let r=e[t];return(0,a.IY)(e)?-32768===r?null:r:(0,a._G)(e)?r===a.h2?null:r:r==r?r:null}function h(e,t,r){if(t!==e&&l().error(`Invalid ${r} buffer size\n expected: ${e}, actual: ${t})`),t<e)throw new o.A("buffer-too-small","Binary buffer is too small",{expectedSize:e,actualSize:t})}function y(e,t){let r=c(e,t&&t.header),o=r.byteCount,n={isDraco:!1,header:r,byteOffset:r.byteCount,byteCount:0,vertexAttributes:{}},i=r.fields,a=null==i.vertexCount?i.count:i.vertexCount;for(let e of t.ordering){if(!t.vertexAttributes[e])continue;let r={...t.vertexAttributes[e],byteOffset:o,count:a},i=v[e]||"_"+e;n.vertexAttributes[i]=r,o+=C(r.valueType)*r.valuesPerElement*a}let s=i.faceCount;if(t.faces&&s){n.faces={};for(let e of t.ordering){if(!t.faces[e])continue;let r={...t.faces[e],byteOffset:o,count:s};n.faces[e]=r,o+=C(r.valueType)*r.valuesPerElement*s}}let l=i.featureCount;if(t.featureAttributes&&t.featureAttributeOrder&&l){n.featureAttributes={};for(let e of t.featureAttributeOrder){if(!t.featureAttributes[e])continue;let r={...t.featureAttributes[e],byteOffset:o,count:l};n.featureAttributes[e]=r,o+=("UInt64"===r.valueType?8:C(r.valueType))*r.valuesPerElement*l}}return h(o,e.byteLength,"geometry"),n.byteCount=o-n.byteOffset,n}function m(e,t){return e&&e.compressedAttributes&&"draco"===e.compressedAttributes.encoding?function(e){let t={isDraco:!0,isLegacy:!1,color:!1,normal:!1,uv0:!1,uvRegion:!1,featureIndex:!1};for(let r of e)switch(r){case"position":break;case"normal":t.normal=!0;break;case"uv0":t.uv0=!0;break;case"color":t.color=!0;break;case"uv-region":t.uvRegion=!0;break;case"feature-index":t.featureIndex=!0}return t}(e.compressedAttributes.attributes):e?function(e){return{isDraco:!1,isLegacy:!1,color:null!=e.color,normal:null!=e.normal,uv0:null!=e.uv0,uvRegion:null!=e.uvRegion,featureIndex:null!=e.faceRange&&null!=e.featureId}}(e):function(e){let t={isDraco:!1,isLegacy:!0,color:!1,normal:!1,uv0:!1,uvRegion:!1,featureIndex:!1};for(let r of e.ordering)if(e.vertexAttributes[r])switch(r){case"position":break;case"normal":t.normal=!0;break;case"color":t.color=!0;break;case"uv0":t.uv0=!0;break;case"region":t.uvRegion=!0}return e.featureAttributes&&e.featureAttributeOrder&&(t.featureIndex=!0),t}(t)}const v={position:"position",normal:"normal",color:"color",uv0:"uv0",region:"uvRegion"};function g(e,t,r,i=!1){if("lepcc-rgb"===e.encoding)return i?(0,s.mb)(t):function(e){return Array.isArray(e)?e.length<1024?e:new Uint8Array(e):e.length<1024?Array.from(e):e}((0,s.mb)(t));if("lepcc-intensity"===e.encoding)return i?(0,s.Ax)(t):function(e){return Array.isArray(e)?e.length<1024?e:new Uint16Array(e):e.length<1024?Array.from(e):e}((0,s.Ax)(t));if(null!=e.encoding&&""!==e.encoding)throw new o.A("unknown-attribute-storage-info-encoding","Unknown Attribute Storage Info Encoding");e["attributeByteCounts "]&&!e.attributeByteCounts&&(l().warn("Warning: Trailing space in 'attributeByteCounts '."),e.attributeByteCounts=e["attributeByteCounts "]),"ObjectIds"===e.ordering[0]&&e.hasOwnProperty("objectIds")&&(l().warn("Warning: Case error in objectIds"),e.ordering[0]="objectIds");let a=function(e,t,r){let i=null==t.header?{byteOffset:0,byteCount:0,fields:{count:r}}:c(e,t.header),a={header:i,byteOffset:i.byteCount,byteCount:0,entries:Object.create(null)},s=i.byteCount;for(let e=0;e<t.ordering.length;e++){let r=t.ordering[e],l=(0,n.o8)(t[r]);if(l.count=i.fields.count??0,"String"===l.valueType){if(l.byteOffset=s,l.byteCount=i.fields[r+"ByteCount"],"UTF-8"!==l.encoding)throw new o.A("unsupported-encoding","Unsupported String encoding.",{encoding:l.encoding});if(l.timeEncoding&&"ECMA_ISO8601"!==l.timeEncoding)throw new o.A("unsupported-time-encoding","Unsupported time encoding.",{timeEncoding:l.timeEncoding})}else{if(!x(l.valueType))throw new o.A("unsupported-value-type","Unsupported binary valueType",{valueType:l.valueType});{let e=C(l.valueType);s+=s%e===0?0:e-s%e,l.byteOffset=s,l.byteCount=e*l.valuesPerElement*l.count}}s+=l.byteCount??0,a.entries[r]=l}return a.byteCount=s-a.byteOffset,a}(t,e,r);h(a.byteOffset+a.byteCount,t.byteLength,"attribute");let u=a.entries.attributeValues||a.entries.objectIds;if(u){if("String"===u.valueType){let e=a.entries.attributeByteCounts,r=p(t,e),o=function(e,t){return new Uint8Array(e,t.byteOffset,t.byteCount)}(t,u);return u.timeEncoding?function(e,t,r){return d(e,t,r).map(e=>{let t=e?Date.parse(e):null;return null==t||Number.isNaN(t)?null:t})}(e.count,r,o):d(e.count,r,o)}return i?p(t,u):function(e,t){let r=p(e,t);if(r.length>=1024)return r;let o=[];return r.forEach((e,t)=>o.push(f(r,t))),o}(t,u)}throw new o.A("bad-attribute-storage-info","Bad attributeStorageInfo specification.")}const w={Float32:Float32Array,Float64:Float64Array,UInt8:Uint8Array,Int8:Int8Array,UInt16:Uint16Array,Int16:Int16Array,UInt32:Uint32Array,Int32:Int32Array},b={Float32:(e,t)=>new DataView(e,0).getFloat32(t,!0),Float64:(e,t)=>new DataView(e,0).getFloat64(t,!0),UInt8:(e,t)=>new DataView(e,0).getUint8(t),Int8:(e,t)=>new DataView(e,0).getInt8(t),UInt16:(e,t)=>new DataView(e,0).getUint16(t,!0),Int16:(e,t)=>new DataView(e,0).getInt16(t,!0),UInt32:(e,t)=>new DataView(e,0).getUint32(t,!0),Int32:(e,t)=>new DataView(e,0).getInt32(t,!0)};function x(e){return w.hasOwnProperty(e)}function C(e){return x(e)?w[e].BYTES_PER_ELEMENT:0}},25992(e,t,r){r.d(t,{C:()=>s});var o=r(9093),n=r(51850),i=r(73941),a=r(48353);function s(e,t,r,s,l){let u="east-north-up"===r?e.center:function(e,t,r){let o=(0,n.vt)(),a=e.radius,s=2**(4*Math.ceil(Math.log(a)*Math.LOG2E/4)+1);if(r.isGeographic){let t=s/(0,i.tO)(r).radius*180/Math.PI,n=Math.round(e.center[1]/t),a=Math.max(-90,Math.min(90,n*t)),l=t/Math.cos((Math.abs(a)-t/2)/180*Math.PI);o[0]=Math.round(e.center[0]/l)*l,o[1]=a}else{let t=Math.round(e.center[0]/s),r=Math.round(e.center[1]/s);o[0]=t*s,o[1]=r*s}let l=e.center[2]+t;return o[2]=Math.round(l/s)*s,o}(e,t,s),c=(0,o.vt)();return(0,a.l)(s,u,c,l),c}},66480(e,t,r){r.d(t,{Rm:()=>h,Dd:()=>y,s1:()=>f});var o=r(56507),n=(r(4576),r(49186)),i=(r(44208),r(58083),r(9093)),a=(r(35522),r(51850)),s=(r(99917),r(16930)),l=(r(27993),r(19419));r(39516),r(30524),r(97552);var u=r(59418),c=(r(25992),r(90629),r(91829));(0,c.fA)(0,0,0,.2);(0,c.fA)(0,0,0,.2),r(34727);var d=r(57005);function p(e){return e?parseInt(e.slice(e.lastIndexOf("/")+1),10):void 0}async function f(e,t,r,n,i,a,s,l){let c=[];for(let o of t)if(o&&i.includes(o.name)){let t=`${e}/nodes/${r}/attributes/${o.key}/0`;c.push({url:t,storageInfo:o})}let d=await Promise.allSettled(c.map(e=>(0,o.A)(e.url,{responseType:"array-buffer",query:{...s,token:a},signal:l?.signal}).then(t=>(0,u.m0)(e.storageInfo,t.data)))),p=[];for(let e of n){let t={};for(let r=0;r<d.length;r++){let o=d[r];if("fulfilled"===o.status){let n=o.value;t[c[r].storageInfo.name]=(0,u.E5)(n,e)}}p.push(t)}return p}function h(e){let t=e.store,r=t.indexCRS||t.geographicCRS,o=void 0===r?t.indexWKT:void 0;if(o){if(!e.spatialReference)throw new n.A("layerview:no-store-spatial-reference-wkt-index-and-no-layer-spatial-reference","Found indexWKT in the scene layer store but no layer spatial reference",{});if(o!==e.spatialReference.wkt)throw new n.A("layerview:store-spatial-reference-wkt-index-incompatible","The indexWKT of the scene layer store does not match the WKT of the layer spatial reference",{})}let i=r?new s.A(p(r)):e.spatialReference;return i.equals(e.spatialReference)?e.spatialReference:i}function y(e){let t=e.store,r=t.vertexCRS||t.projectedCRS,o=void 0===r?t.vertexWKT:void 0;if(o){if(!e.spatialReference)throw new n.A("layerview:no-store-spatial-reference-wkt-vertex-and-no-layer-spatial-reference","Found vertexWKT in the scene layer store but no layer spatial reference",{});if(o!==e.spatialReference.wkt)throw new n.A("layerview:store-spatial-reference-wkt-vertex-incompatible","The vertexWKT of the scene layer store does not match the WKT of the layer spatial reference",{})}let i=r?new s.A(p(r)):e.spatialReference;return i.equals(e.spatialReference)?e.spatialReference:i}r(47187),(0,l.vt)(),(0,a.vt)(),(0,a.vt)(),(0,a.vt)(),(0,a.vt)(),(0,a.vt)(),(0,a.vt)(),(0,a.vt)(),(0,a.vt)(),(0,l.vt)(),(0,l.vt)(),new d.ab,(0,a.vt)(),Array(72),(0,i.vt)()},37203(e,t,r){r.d(t,{Ax:()=>u,Me:()=>i,mb:()=>l});var o=r(49186);function n(e,t,r){return{identifier:String.fromCharCode.apply(null,new Uint8Array(e,r+0,10)),version:t.getUint16(r+10,!0),checksum:t.getUint32(r+12,!0)}}function i(e){let t=new DataView(e,0),r=0,{identifier:i,version:s}=n(e,t,r);if(r+=16,"LEPCC "!==i)throw new o.A("lepcc-decode-error","Bad identifier");if(s>1)throw new o.A("lepcc-decode-error","Unknown version");let l=(c=r,{sizeLo:(u=t).getUint32(c+0,!0),sizeHi:u.getUint32(c+4,!0),minX:u.getFloat64(c+8,!0),minY:u.getFloat64(c+16,!0),minZ:u.getFloat64(c+24,!0),maxX:u.getFloat64(c+32,!0),maxY:u.getFloat64(c+40,!0),maxZ:u.getFloat64(c+48,!0),errorX:u.getFloat64(c+56,!0),errorY:u.getFloat64(c+64,!0),errorZ:u.getFloat64(c+72,!0),count:u.getUint32(c+80,!0),reserved:u.getUint32(c+84,!0)});var u,c;if(r+=88,l.sizeHi*2**32+l.sizeLo!==e.byteLength)throw new o.A("lepcc-decode-error","Bad size");let d=new Float64Array(3*l.count),p=[],f=[],h=[],y=[];if(r=a(e,r,p),r=a(e,r,f),r=a(e,r,h),r=a(e,r,y),r!==e.byteLength)throw new o.A("lepcc-decode-error","Bad length");let m=0,v=0;for(let e=0;e<p.length;e++){v+=p[e];let t=0;for(let r=0;r<f[e];r++){t+=h[m];let e=y[m];d[3*m]=Math.min(l.maxX,l.minX+2*l.errorX*t),d[3*m+1]=Math.min(l.maxY,l.minY+2*l.errorY*v),d[3*m+2]=Math.min(l.maxZ,l.minZ+2*l.errorZ*e),m++}}return{errorX:l.errorX,errorY:l.errorY,errorZ:l.errorZ,result:d}}function a(e,t,r){let o=[];t=s(e,t,o);let n=[];for(let i=0;i<o.length;i++){n.length=0,t=s(e,t,n);for(let e=0;e<n.length;e++)r.push(n[e]+o[i])}return t}function s(e,t,r){let n=new DataView(e,t),i=n.getUint8(0),a=31&i,s=!!(32&i),l=(192&i)>>6,u=0;if(0===l)u=n.getUint32(1,!0),t+=5;else if(1===l)u=n.getUint16(1,!0),t+=3;else{if(2!==l)throw new o.A("lepcc-decode-error","Bad count type");u=n.getUint8(1),t+=2}if(s)throw new o.A("lepcc-decode-error","LUT not implemented");let c=Math.ceil(u*a/8),d=new Uint8Array(e,t,c),p=0,f=0,h=0,y=-1>>>32-a;for(let e=0;e<u;e++){for(;f<a;)p|=d[h]<<f,f+=8,h+=1;r[e]=p&y,p>>>=a,f-=a,f+a>32&&(p|=d[h-1]>>8-f)}return t+h}function l(e){let t=new DataView(e,0),r=0,{identifier:i,version:a}=n(e,t,r);if(r+=16,"ClusterRGB"!==i)throw new o.A("lepcc-decode-error","Bad identifier");if(a>1)throw new o.A("lepcc-decode-error","Unknown version");let s=(u=r,{sizeLo:(l=t).getUint32(u+0,!0),sizeHi:l.getUint32(u+4,!0),count:l.getUint32(u+8,!0),colorMapCount:l.getUint16(u+12,!0),lookupMethod:l.getUint8(u+14),compressionMethod:l.getUint8(u+15)});var l,u;if(r+=16,s.sizeHi*2**32+s.sizeLo!==e.byteLength)throw new o.A("lepcc-decode-error","Bad size");if((2===s.lookupMethod||1===s.lookupMethod)&&0===s.compressionMethod){if(3*s.colorMapCount+s.count+r!==e.byteLength||s.colorMapCount>256)throw new o.A("lepcc-decode-error","Bad count");let t=new Uint8Array(e,r,3*s.colorMapCount),n=new Uint8Array(e,r+3*s.colorMapCount,s.count),i=new Uint8Array(3*s.count);for(let e=0;e<s.count;e++){let r=n[e];i[3*e]=t[3*r],i[3*e+1]=t[3*r+1],i[3*e+2]=t[3*r+2]}return i}if(0===s.lookupMethod&&0===s.compressionMethod){if(3*s.count+r!==e.byteLength||0!==s.colorMapCount)throw new o.A("lepcc-decode-error","Bad count");return new Uint8Array(e,r).slice()}if(s.lookupMethod<=2&&1===s.compressionMethod){if(r+3!==e.byteLength||1!==s.colorMapCount)throw new o.A("lepcc-decode-error","Bad count");let n=t.getUint8(r),i=t.getUint8(r+1),a=t.getUint8(r+2),l=new Uint8Array(3*s.count);for(let e=0;e<s.count;e++)l[3*e]=n,l[3*e+1]=i,l[3*e+2]=a;return l}throw new o.A("lepcc-decode-error","Bad method "+s.lookupMethod+","+s.compressionMethod)}function u(e){let t=new DataView(e,0),r=0,{identifier:i,version:a}=n(e,t,r);if(r+=16,"Intensity "!==i)throw new o.A("lepcc-decode-error","Bad identifier");if(a>1)throw new o.A("lepcc-decode-error","Unknown version");let l=(c=r,{sizeLo:(u=t).getUint32(c+0,!0),sizeHi:u.getUint32(c+4,!0),count:u.getUint32(c+8,!0),scaleFactor:u.getUint16(c+12,!0),bitsPerPoint:u.getUint8(c+14),reserved:u.getUint8(c+15)});var u,c;if(r+=16,l.sizeHi*2**32+l.sizeLo!==e.byteLength)throw new o.A("lepcc-decode-error","Bad size");let d=new Uint16Array(l.count);if(8===l.bitsPerPoint){if(l.count+r!==e.byteLength)throw new o.A("lepcc-decode-error","Bad size");let t=new Uint8Array(e,r,l.count);for(let e=0;e<l.count;e++)d[e]=t[e]*l.scaleFactor}else if(16===l.bitsPerPoint){if(2*l.count+r!==e.byteLength)throw new o.A("lepcc-decode-error","Bad size");let t=new Uint16Array(e,r,l.count);for(let e=0;e<l.count;e++)d[e]=t[e]*l.scaleFactor}else{let t=[];if(s(e,r,t)!==e.byteLength)throw new o.A("lepcc-decode-error","Bad size");for(let e=0;e<l.count;e++)d[e]=t[e]*l.scaleFactor}return d}},49255(e,t,r){function o(e){return function(e){return function(e){return function(e){return a(e)||function(e){return 10===e||11===e}(e)}(e)||function(e){return 3===e}(e)}(e)||function(e){return 4===e}(e)}(e)||function(e){return 5===(t=e)||6===t||7===t||8===e||9===e;var t}(e)}function n(e){return 1===e}function i(e){return 2===e}function a(e){return 0===e||function(e){return n(e)||i(e)}(e)}r.d(t,{Rb:()=>i,_$:()=>n,_o:()=>a,uw:()=>o})},29941(e,t,r){r.d(t,{v:()=>i});var o=r(32198),n=r(51976);class i extends n.K{constructor(){super(...arguments),this.output=0,this.hasEmission=!1,this.useFloatBlend=!0}}(0,o.Cg)([(0,n.W)({count:12})],i.prototype,"output",void 0),(0,o.Cg)([(0,n.W)()],i.prototype,"hasEmission",void 0),(0,o.Cg)([(0,n.W)()],i.prototype,"useFloatBlend",void 0)},53466(e,t,r){r.d(t,{U:()=>n});var o=r(31821);function n(e,t){switch(t.textureCoordinateType){case 1:return e.attributes.add("uv0","vec2"),e.varyings.add("vuv0","vec2"),void e.vertex.code.add(o.H`void forwardTextureCoordinates() { vuv0 = uv0; }`);case 2:return e.attributes.add("uv0","vec2"),e.attributes.add("uvRegion","vec4"),e.varyings.add("vuv0","vec2"),e.varyings.add("vuvRegion","vec4"),void e.vertex.code.add(o.H`void forwardTextureCoordinates() {
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[5804,9480],{46130(e,t,r){r.d(t,{v:()=>n});var o=r(76553);function n(e){e?.writtenProperties&&e.writtenProperties.forEach(({target:e,propName:t,newOrigin:r})=>{(0,o.H)(e)&&r&&e.originOf(t)!==r&&e.updateOrigin(t,r)})}},56512(e,t,r){function o(e){let t,r,o=[],n=!1;return function(...i){return n&&t===this&&function(e,t){if(e.length!==t.length)return!1;for(let r=0;r<e.length;++r)if(e[r]!==t[r])return!1;return!0}(i,o)||(r=e.apply(this,i),t=this,o=i,n=!0),r}}r.d(t,{B:()=>o})},76553(e,t,r){function o(e){return e&&"getAtOrigin"in e&&"originOf"in e}r.d(t,{H:()=>o})},13069(e,t,r){r.d(t,{AG:()=>s,lk:()=>n,vD:()=>a,yS:()=>i});const o="randomUUID"in crypto;function n(){if(o)return crypto.randomUUID();let e=crypto.getRandomValues(new Uint16Array(8));e[3]=4095&e[3]|16384,e[4]=16383&e[4]|32768;let 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 i(){return`{${n().toUpperCase()}}`}function a(){return`{${n()}}`}function s(e){let t=e.toUpperCase();return e.startsWith("{")?t:`{${t}}`}},65806(e,t,r){r.d(t,{g:()=>a});var o=r(51850),n=r(99917),i=r(9762);function a(e,t,r,o){if((0,n.canProjectWithoutEngine)(e.spatialReference,r))return s[0]=e.x,s[1]=e.y,s[2]=e.z??0,(0,i.projectBuffer)(s,e.spatialReference,0,t,r,0);let a=(0,n.tryProject)(e,r,o);return!!a&&(t[0]=a.x,t[1]=a.y,t[2]=a.z??0,!0)}const s=(0,o.vt)()},27993(e,t,r){r.d(t,{F:()=>s});var o=r(99917),n=r(16930),i=r(9762),a=r(65806);function s(e,t,r,n){return!(null==t||null==n||e.length<2)&&((0,o.canProjectWithoutEngine)(t,n)?(0,i.projectBuffer)(e,t,0,r,n,0,1):(l.x=e[0],l.y=e[1],l.z=e[2],l.spatialReference=t,(0,a.g)(l,r,n)))}const l={x:0,y:0,z:0,hasZ:!0,hasM:!1,spatialReference:n.A.WGS84,type:"point"}},52136(e,t,r){var o=r(32198),n=r(91429);r.d(t,["p",0,e=>{let t=e,r=class extends t{get apiKey(){return this._isOverridden("apiKey")?this._get("apiKey"):"portalItem"in this?this.portalItem?.apiKey:null}set apiKey(e){null==e?(this._clearOverride("apiKey"),this.clear("apiKey","user")):this._override("apiKey",e)}};return(0,o.Cg)([(0,n.MZ)({type:String})],r.prototype,"apiKey",null),r=(0,o.Cg)([(0,n.$K)("esri.layers.mixins.APIKeyMixin")],r),r}])},58947(e,t,r){r.d(t,{w6:()=>A,qM:()=>M});var o=r(32198),n=r(56507),i=r(49186),a=r(53966),s=r(17676),l=r(91429),u=r(46130),c=r(5443),d=r(16930),p=r(85707),f=r(60694),h=r(10873),y=r(83898),m=r(73179);var v=r(20655),g=r(80812),w=r(88788),b=r(91682),x=r(26121),C=r(36005);const A=e=>{let t=(0,p.a)(e),r=class extends t{constructor(){super(...arguments),this.spatialReference=null,this.fullExtent=null,this.minScale=0,this.maxScale=0,this.version={major:NaN,minor:NaN,versionString:""},this.copyright=null,this.sublayerTitleMode="item-title",this.title=null,this.layerId=null,this.url=null,this.indexInfo=null,this._debouncedSaveOperations=(0,s.sg)(async(e,t,r)=>{switch(e){case 0:return this._save(t);case 1:return this._saveAs(r,t)}})}readSpatialReference(e,t){return S(t)}readFullExtent(e,t,r){if("object"==typeof e&&e){let o=null==e.spatialReference?{...e,spatialReference:S(t)}:e;return c.A.fromJSON(o,r)}let o=t.store,n=S(t);return null==n||null==o?.extent||!Array.isArray(o.extent)||o.extent.some(e=>e<I)?null:new c.A({xmin:o.extent[0],ymin:o.extent[1],xmax:o.extent[2],ymax:o.extent[3],spatialReference:n})}parseVersionString(e){let t={major:NaN,minor:NaN,versionString:e},r=e.split(".");return r.length>=2&&(t.major=parseInt(r[0],10),t.minor=parseInt(r[1],10)),t}readVersion(e,t){let r=t.store,o=null==r.version?"":r.version.toString();return this.parseVersionString(o)}readTitlePortalItem(e){return"item-title"===this.sublayerTitleMode?e:void 0}readTitleService(e,t){if("item-title"===this.sublayerTitleMode)return this.url?(0,f.yG)(this.url,t.name):t.name;let r=t.name;if(!r&&this.url){let e=(0,f.qg)(this.url);null!=e&&(r=e.title)}let o=this.portalItem?.title;return"item-title-and-service-name"===this.sublayerTitleMode&&o&&(r=o+" - "+r),(0,f.cr)(r)}get parsedUrl(){return(0,m.h)(this,{separator:"layers"})}async _fetchIndexAndUpdateExtent(e,t){this.indexInfo=(0,y.F)(this.parsedUrl?.path??"",this.rootNode,e,this.customParameters,this.apiKey,a.A.getLogger(this),t),this.indexInfo.catch(()=>{});let{fullExtent:r}=this;null!=r&&!r.hasZ&&this._updateExtent(r,await this.indexInfo)}_updateExtent(e,t){if("page"===t?.type){let r=t.rootIndex%t.pageSize,o=t.rootPage?.nodes?.[r];M(e,o?.obb)}else if("node"===t?.type){let r=t.rootNode?.mbs;if(!Array.isArray(r)||4!==r.length||r[0]<I)return;let o=r[2],n=r[3];e.zmin=o-n,e.zmax=o+n}}async _fetchService(e){if(null==this.url)throw new i.A("sceneservice:url-not-set","Scene service can not be loaded without valid portal item or url");if(null==this.layerId&&/SceneServer\/*$/i.test(this.url)){let t=await this._fetchFirstLayerId(e);null!=t&&(this.layerId=t)}return this._fetchServiceLayer(e)}async _fetchFirstLayerId(e){let t=await(0,n.A)(this.url??"",{query:{f:"json",...this.customParameters,token:this.apiKey},responseType:"json",signal:e});if(t.data&&Array.isArray(t.data.layers)&&t.data.layers.length>0)return t.data.layers[0].id}async _fetchServiceLayer(e){let t=await(0,n.A)(this.parsedUrl?.path??"",{query:{f:"json",...this.customParameters,token:this.apiKey},responseType:"json",signal:e});t.ssl&&this.url&&(this.url=this.url.replace(/^http:/i,"https:"));let r=!1;if(t.data.layerType&&"Voxel"===t.data.layerType&&(r=!0),r)return this._fetchVoxelServiceLayer();let o=t.data;this.read(o,this._getServiceContext()),this.validateLayer(o)}async _fetchVoxelServiceLayer(e){let t=(await(0,n.A)(this.parsedUrl?.path+"/layer",{query:{f:"json",...this.customParameters,token:this.apiKey},responseType:"json",signal:e})).data;this.read(t,this._getServiceContext()),this.validateLayer(t)}_getServiceContext(){return{origin:"service",portalItem:this.portalItem,portal:this.portalItem?.portal,url:this.parsedUrl}}async _ensureLoadBeforeSave(){await this.load(),"beforeSave"in this&&"function"==typeof this.beforeSave&&await this.beforeSave()}validateLayer(e){}async _saveAs(e,t){let r={...T,...t},o=g.default.from(e);if(!o)throw new i.A("sceneservice:portal-item-required","_saveAs() requires a portal item to save to");o.id&&(o=o.clone(),o.id=null);let n=o.portal||v.A.getDefault();await this._ensureLoadBeforeSave(),o.type=R,o.portal=n;let a=(0,w.m)(o,"portal-item",{withResources:!0}),s={layers:[this.write({},a)]};return await Promise.all(a.resources.pendingOperations??[]),await this._validateAgainstJSONSchema(s,a,r),this.url&&(o.url=this.url),o.title||(o.title=this.title),U(o,r,1),await n.signIn(),await n.user.addItem({item:o,folder:r?.folder,data:s}),await(0,b.r)(this.resourceReferences,a),this.portalItem=o,(0,u.v)(a),a.portalItem=o,o}async _save(e){let t={...T,...e};if(!this.portalItem)throw new i.A("sceneservice:portal-item-not-set","Portal item to save to has not been set on this SceneService");if(this.portalItem.type!==R)throw new i.A("sceneservice:portal-item-wrong-type",`Portal item needs to have type "${R}"`);await this._ensureLoadBeforeSave();let r=(0,w.m)(this.portalItem,"portal-item",{withResources:!0}),o=this.write({},r),a=await async function(e,t){let r=await e.fetchData("json")??{};return Array.isArray(r.layers)||(r.layers=await async function(e,t){let r=await async function(e){let t=_(e.url);if(!t)return null;let r=(await(0,n.A)(t,{query:{f:"json"},responseType:"json"})).data.layers;if(!Array.isArray(r))return null;let o=r.filter(({id:e})=>null!=e).map(({id:e})=>({id:e}));return o.length?o:null}(e).catch(()=>null);return r?.some(({id:e})=>e===t.id)?r:[t]}(e,t)),function(e,t){let r=e.findIndex(({id:e})=>e===t.id);-1===r?e.push(t):e[r]=t}(r.layers,t),r}(this.portalItem,o);await Promise.all(r.resources.pendingOperations??[]),await this._validateAgainstJSONSchema(a,r,t);let s=function(e,t){return t&&function(e,t){let r=_(e);return!!r&&r===B(t).url}(e.url,t)?e.url:t}(this.portalItem,this.url);return s&&(this.portalItem.url=s),this.portalItem.title||(this.portalItem.title=this.title),U(this.portalItem,t,0),await(0,b.S)(this.portalItem,a,this.resourceReferences,r),(0,u.v)(r),this.portalItem}async _validateAgainstJSONSchema(e,t,r){let o=r?.validationOptions;(0,x.ci)(t,{errorName:"sceneservice:save"},{ignoreUnsupported:o?.ignoreUnsupported,supplementalUnsupportedErrors:["scenemodification:unsupported"]});let n=o?.enabled,s=null;if(n&&s){let t=(await s()).validate(e,r.portalItemLayerType);if(!t.length)return;let n=`Layer item did not validate:\n${t.join("\n")}`;if(a.A.getLogger(this).error(`_validateAgainstJSONSchema(): ${n}`),"throw"===o.failPolicy){let e=t.map(e=>new i.A("sceneservice:schema-validation",e));throw new i.A("sceneservice-validate:error","Failed to save layer item due to schema validation, see `details.errors`.",{validationErrors:e})}}}};return(0,o.Cg)([(0,l.MZ)(h.id)],r.prototype,"id",void 0),(0,o.Cg)([(0,l.MZ)({type:d.A})],r.prototype,"spatialReference",void 0),(0,o.Cg)([(0,C.w)("spatialReference",["spatialReference","store.indexCRS","store.geographicCRS"])],r.prototype,"readSpatialReference",null),(0,o.Cg)([(0,l.MZ)({type:c.A})],r.prototype,"fullExtent",void 0),(0,o.Cg)([(0,C.w)("fullExtent",["fullExtent","store.extent","spatialReference","store.indexCRS","store.geographicCRS"])],r.prototype,"readFullExtent",null),(0,o.Cg)([(0,l.MZ)({type:Number,json:{name:"layerDefinition.minScale",write:!0,origins:{service:{read:{source:"minScale"},write:!1}}}})],r.prototype,"minScale",void 0),(0,o.Cg)([(0,l.MZ)({type:Number,json:{name:"layerDefinition.maxScale",write:!0,origins:{service:{read:{source:"maxScale"},write:!1}}}})],r.prototype,"maxScale",void 0),(0,o.Cg)([(0,l.MZ)({readOnly:!0})],r.prototype,"version",void 0),(0,o.Cg)([(0,C.w)("version",["store.version"])],r.prototype,"readVersion",null),(0,o.Cg)([(0,l.MZ)({type:String,json:{read:{source:"copyrightText"}}})],r.prototype,"copyright",void 0),(0,o.Cg)([(0,l.MZ)({type:String,json:{read:!1}})],r.prototype,"sublayerTitleMode",void 0),(0,o.Cg)([(0,l.MZ)({type:String})],r.prototype,"title",void 0),(0,o.Cg)([(0,C.w)("portal-item","title")],r.prototype,"readTitlePortalItem",null),(0,o.Cg)([(0,C.w)("service","title",["name"])],r.prototype,"readTitleService",null),(0,o.Cg)([(0,l.MZ)({type:Number,json:{origins:{service:{read:{source:"id"}},"portal-item":{write:{target:"id",isRequired:!0,ignoreOrigin:!0},read:!1}}}})],r.prototype,"layerId",void 0),(0,o.Cg)([(0,l.MZ)((0,m.b)({separator:"layers"}))],r.prototype,"url",void 0),(0,o.Cg)([(0,l.MZ)({readOnly:!0})],r.prototype,"parsedUrl",null),(0,o.Cg)([(0,l.MZ)({readOnly:!0})],r.prototype,"store",void 0),(0,o.Cg)([(0,l.MZ)({type:String,readOnly:!0,json:{read:{source:"store.rootNode"}}})],r.prototype,"rootNode",void 0),r=(0,o.Cg)([(0,l.$K)("esri.layers.mixins.SceneService")],r),r},I=-1e38;function S(e){if(null!=e.spatialReference)return d.A.fromJSON(e.spatialReference);let t=e.store,r=t.indexCRS||t.geographicCRS,o=r&&parseInt(r.slice(r.lastIndexOf("/")+1),10);return null==o?null:new d.A(o)}function M(e,t){if(null==t?.center||null==t.halfSize)throw new i.A("sceneservice:invalid-node-page","Invalid node page.");if(t.center[0]<I)return;let r=t.halfSize,o=t.center[2],n=Math.sqrt(r[0]*r[0]+r[1]*r[1]+r[2]*r[2]);e.zmin=o-n,e.zmax=o+n}function U(e,t,r){e.typeKeywords||=[];let o=t.getTypeKeywords();for(let t of o)e.typeKeywords.push(t);e.typeKeywords&&(e.typeKeywords=e.typeKeywords.filter((e,t,r)=>r.indexOf(e)===t),1===r&&(e.typeKeywords=e.typeKeywords.filter(e=>"Hosted Service"!==e)))}const R="Scene Service",T={getTypeKeywords:()=>[],portalItemLayerType:"unknown",validationOptions:{enabled:!0,ignoreUnsupported:!1,failPolicy:"throw"}},F={layerId:null};function _(e){if(!e)return null;let t=B(e);if(null!=t.layerId)return null;let r=(0,f.qg)(t.url);return null==r||"SceneServer"===r.serverType?t.url:null}function B(e){return(0,f.HZ)({layer:F,url:e,nonStandardUrlAllowed:!0})}},83898(e,t,r){r.d(t,{F:()=>i});var o=r(56507),n=r(49186);async function i(e,t,r,i,a,s,l){let u=null;if(null!=r){let t=`${e}/nodepages/`,n=t+Math.floor(r.rootIndex/r.nodesPerPage);try{return{type:"page",rootPage:(await(0,o.A)(n,{query:{f:"json",...i,token:a},responseType:"json",signal:l})).data,rootIndex:r.rootIndex,pageSize:r.nodesPerPage,lodMetric:r.lodSelectionMetricType,urlPrefix:t}}catch(e){s?.warn("#fetchIndexInfo()","Failed to load root node page. Falling back to node documents.",n,e),u=e}}if(!t)return null;let c=t?.split("/").pop(),d=`${e}/nodes/`,p=d+c;try{return{type:"node",rootNode:(await(0,o.A)(p,{query:{f:"json",...i,token:a},responseType:"json",signal:l})).data,urlPrefix:d}}catch(e){throw new n.A("sceneservice:root-node-missing","Root node missing.",{pageError:u,nodeError:e,url:p})}}},50805(e,t,r){r.d(t,{L0:()=>m,Ot:()=>p,W4:()=>s,uV:()=>c});var o=r(32198),n=r(25482),i=r(91429),a=r(93223);let s=class extends n.o{constructor(){super(...arguments),this.nodesPerPage=null,this.rootIndex=0,this.lodSelectionMetricType=null}};(0,o.Cg)([(0,i.MZ)({type:Number})],s.prototype,"nodesPerPage",void 0),(0,o.Cg)([(0,i.MZ)({type:Number})],s.prototype,"rootIndex",void 0),(0,o.Cg)([(0,i.MZ)({type:String})],s.prototype,"lodSelectionMetricType",void 0),s=(0,o.Cg)([(0,i.$K)("esri.layers.support.I3SLayerDefinitions.I3SNodePageDefinition")],s);let l=class extends n.o{constructor(){super(...arguments),this.factor=1}};(0,o.Cg)([(0,i.MZ)({type:Number,json:{read:{source:"textureSetDefinitionId"}}})],l.prototype,"id",void 0),(0,o.Cg)([(0,i.MZ)({type:Number})],l.prototype,"factor",void 0),l=(0,o.Cg)([(0,i.$K)("esri.layers.support.I3SLayerDefinitions.I3SMaterialTexture")],l);let u=class extends n.o{constructor(){super(...arguments),this.baseColorFactor=[1,1,1,1],this.baseColorTexture=null,this.metallicRoughnessTexture=null,this.metallicFactor=1,this.roughnessFactor=1}};(0,o.Cg)([(0,i.MZ)({type:[Number]})],u.prototype,"baseColorFactor",void 0),(0,o.Cg)([(0,i.MZ)({type:l})],u.prototype,"baseColorTexture",void 0),(0,o.Cg)([(0,i.MZ)({type:l})],u.prototype,"metallicRoughnessTexture",void 0),(0,o.Cg)([(0,i.MZ)({type:Number})],u.prototype,"metallicFactor",void 0),(0,o.Cg)([(0,i.MZ)({type:Number})],u.prototype,"roughnessFactor",void 0),u=(0,o.Cg)([(0,i.$K)("esri.layers.support.I3SLayerDefinitions.I3SMaterialPBRMetallicRoughness")],u);let c=class extends n.o{constructor(){super(...arguments),this.alphaMode="opaque",this.alphaCutoff=.25,this.doubleSided=!1,this.cullFace="none",this.normalTexture=null,this.occlusionTexture=null,this.emissiveTexture=null,this.emissiveFactor=null,this.pbrMetallicRoughness=null}};(0,o.Cg)([(0,a.e)({opaque:"opaque",mask:"mask",blend:"blend"})],c.prototype,"alphaMode",void 0),(0,o.Cg)([(0,i.MZ)({type:Number})],c.prototype,"alphaCutoff",void 0),(0,o.Cg)([(0,i.MZ)({type:Boolean})],c.prototype,"doubleSided",void 0),(0,o.Cg)([(0,a.e)({none:"none",back:"back",front:"front"})],c.prototype,"cullFace",void 0),(0,o.Cg)([(0,i.MZ)({type:l})],c.prototype,"normalTexture",void 0),(0,o.Cg)([(0,i.MZ)({type:l})],c.prototype,"occlusionTexture",void 0),(0,o.Cg)([(0,i.MZ)({type:l})],c.prototype,"emissiveTexture",void 0),(0,o.Cg)([(0,i.MZ)({type:[Number]})],c.prototype,"emissiveFactor",void 0),(0,o.Cg)([(0,i.MZ)({type:u})],c.prototype,"pbrMetallicRoughness",void 0),c=(0,o.Cg)([(0,i.$K)("esri.layers.support.I3SLayerDefinitions.I3SMaterialDefinition")],c);let d=class extends n.o{};(0,o.Cg)([(0,i.MZ)({type:String,json:{read:{source:["name","index"],reader:(e,t)=>e??`${t.index}`}}})],d.prototype,"name",void 0),(0,o.Cg)([(0,a.e)({jpg:"jpg",png:"png",dds:"dds","ktx-etc2":"ktx-etc2",ktx2:"ktx2",basis:"basis"})],d.prototype,"format",void 0),d=(0,o.Cg)([(0,i.$K)("esri.layers.support.I3SLayerDefinitions.I3STextureFormat")],d);let p=class extends n.o{constructor(){super(...arguments),this.atlas=!1}};(0,o.Cg)([(0,i.MZ)({type:[d]})],p.prototype,"formats",void 0),(0,o.Cg)([(0,i.MZ)({type:Boolean})],p.prototype,"atlas",void 0),p=(0,o.Cg)([(0,i.$K)("esri.layers.support.I3SLayerDefinitions.I3STextureSetDefinition")],p);let f=class extends n.o{};(0,o.Cg)([(0,a.e)({Float32:"Float32",UInt64:"UInt64",UInt32:"UInt32",UInt16:"UInt16",UInt8:"UInt8"})],f.prototype,"type",void 0),(0,o.Cg)([(0,i.MZ)({type:Number})],f.prototype,"component",void 0),f=(0,o.Cg)([(0,i.$K)("esri.layers.support.I3SLayerDefinitions.I3SGeometryAttribute")],f);let h=class extends n.o{};(0,o.Cg)([(0,a.e)({draco:"draco"})],h.prototype,"encoding",void 0),(0,o.Cg)([(0,i.MZ)({type:[String]})],h.prototype,"attributes",void 0),h=(0,o.Cg)([(0,i.$K)("esri.layers.support.I3SLayerDefinitions.I3SGeometryCompressedAttributes")],h);let y=class extends n.o{constructor(){super(...arguments),this.offset=0}};(0,o.Cg)([(0,i.MZ)({type:Number})],y.prototype,"offset",void 0),(0,o.Cg)([(0,i.MZ)({type:f})],y.prototype,"position",void 0),(0,o.Cg)([(0,i.MZ)({type:f})],y.prototype,"normal",void 0),(0,o.Cg)([(0,i.MZ)({type:f})],y.prototype,"uv0",void 0),(0,o.Cg)([(0,i.MZ)({type:f})],y.prototype,"color",void 0),(0,o.Cg)([(0,i.MZ)({type:f})],y.prototype,"uvRegion",void 0),(0,o.Cg)([(0,i.MZ)({type:f})],y.prototype,"featureId",void 0),(0,o.Cg)([(0,i.MZ)({type:f})],y.prototype,"faceRange",void 0),(0,o.Cg)([(0,i.MZ)({type:h})],y.prototype,"compressedAttributes",void 0),y=(0,o.Cg)([(0,i.$K)("esri.layers.support.I3SLayerDefinitions.I3SGeometryBuffer")],y);let m=class extends n.o{};(0,o.Cg)([(0,a.e)({triangle:"triangle"})],m.prototype,"topology",void 0),(0,o.Cg)([(0,i.MZ)()],m.prototype,"geometryBuffers",void 0),m=(0,o.Cg)([(0,i.$K)("esri.layers.support.I3SLayerDefinitions.I3SGeometryDefinition")],m)},88788(e,t,r){r.d(t,{m:()=>a,v:()=>i});var o=r(84952),n=r(20655);function i(e,t){return{...s(e,t),readResourcePaths:[]}}function a(e,t,r){let n=(0,o.An)(r?.forceNewItemContext?null:e.itemUrl);return{...s(e,t,r),messages:[],writtenProperties:[],blockedRelativeUrls:[],verifyItemRelativeUrls:n?{rootPath:n.path,writtenUrls:[]}:null,resources:r?.withResources?{toAdd:[],toUpdate:[],toKeep:[],pendingOperations:[]}:null}}function s(e,t,r){return{origin:t,url:(0,o.An)(r?.forceNewItemContext?null:e.itemUrl),portal:e.portal||n.A.getDefault(),portalItem:e}}},15804(e,t,r){r.d(t,{addOrUpdateResources:()=>s,bg:()=>p,cL:()=>d,fetchResources:()=>a,removeAllResources:()=>u,removeResource:()=>l});var o=r(56507),n=r(49186),i=r(84952);async function a(e,t={},r){await e.load(r);let o=(0,i.fj)(e.itemUrl,"resources"),{start:n=1,num:a=10,sortOrder:s="asc",sortField:l="resource"}=t,u={query:{start:n,num:a,sortOrder:s,sortField:l,token:e.apiKey},signal:r?.signal},c=await e.portal.request(o,u);return{total:c.total,nextStart:c.nextStart,resources:c.resources.map(({created:t,size:r,resource:o})=>({created:new Date(t),size:r,resource:e.resourceFromPath(o)}))}}async function s(e,t,r,o){let a=new Map;for(let{resource:e,content:o,compress:i,access:s}of t){if(!e.hasPath())throw new n.A(`portal-item-resource-${r}:invalid-path`,"Resource does not have a valid path");let[t,l]=c(e.path),u=`${t}/${i??""}/${s??""}`;a.has(u)||a.set(u,{prefix:t,compress:i,access:s,files:[]}),a.get(u).files.push({fileName:l,content:o})}await e.load(o);let s=(0,i.fj)(e.userItemUrl,"add"===r?"addResources":"updateResources");for(let{prefix:t,compress:r,access:i,files:l}of a.values())for(let a=0;a<l.length;a+=25){let u=l.slice(a,a+25),c=new FormData;t&&"."!==t&&c.append("resourcesPrefix",t),r&&c.append("compress","true"),i&&c.append("access",i);let d=0;for(let{fileName:e,content:t}of u)c.append("file"+ ++d,t,e);c.append("f","json");try{await e.portal.request(s,{method:"post",body:c,signal:o?.signal})}catch(e){if(o?.ignoreResourceCopyErrors&&e instanceof n.A&&"CONT_00942"===e.details?.messageCode)continue;throw e}}}async function l(e,t,r){if(!t.hasPath())throw new n.A("portal-item-resources-remove:invalid-path","Resource does not have a valid path");await e.load(r);let o=(0,i.fj)(e.userItemUrl,"removeResources");await e.portal.request(o,{method:"post",query:{resource:t.path},signal:r?.signal}),t.portalItem=null}async function u(e,t){await e.load(t);let r=(0,i.fj)(e.userItemUrl,"removeResources");return e.portal.request(r,{method:"post",query:{deleteAll:!0},signal:t?.signal})}function c(e){let t=e.lastIndexOf("/");return-1===t?[".",e]:[e.slice(0,t),e.slice(t+1)]}async function d(e){return"blob"===e.type?e.blob:"json"===e.type?new Blob([e.jsonString],{type:"application/json"}):(await(0,o.A)(e.url,{responseType:"blob"})).data}function p(e,t){if(!e.hasPath())return null;let[r,,o]=function(e){let[t,r]=function(e){let t=(0,i.Zo)(e);return null==t?[e,""]:[e.slice(0,e.length-t.length-1),`.${t}`]}(e),[o,n]=c(t);return[o,n,r]}(e.path);return e.portalItem.resourceFromPath((0,i.fj)(r,t+o))}},24212(e,t,r){r.d(t,{$7:()=>l,B:()=>s,M7:()=>d,XF:()=>c,tW:()=>u,w7:()=>a});var o=r(56512),n=r(86211),i=r(16271);function a(e,t){return function(e,t){return t?.mode?t.mode:function(e){return e?p:f}(e).mode}(null==e||(e.hasZ??!1),t)}function s(e,t,r){return r&&r.mode!==t?`${e} only support ${t} elevation mode`:null}function l(e,t,r){return r?.mode===t?`${e} do not support ${t} elevation mode`:null}function u(e,t){return null!=t?.featureExpressionInfo&&"0"!==t.featureExpressionInfo.expression?`${e} do not support featureExpressionInfo`:null}function c(e,t){t&&e.warn(".elevationInfo=",t)}function d(e){return(e?.offset??0)*(0,i.Ao)(e?.unit)}(0,o.B)((e,t,r)=>{if(!e||"decimal-degrees"===t)return 0;let o="unknown"!==t&&t?t:"meters",i=(0,n.mq)(r);return i?(0,n.oU)(e,o,i):0});const p={mode:"absolute-height",offset:0},f={mode:"on-the-ground",offset:null}},59418(e,t,r){r.d(t,{qs:()=>m,wH:()=>y,MA:()=>p,E5:()=>f,m0:()=>g});var o=r(49186),n=r(4718),i=r(53966),a=r(34275),s=r(37203);const l=()=>i.A.getLogger("esri.views.3d.layers.i3s.I3SBinaryReader");function u(e,t,r){let n="",i=0;for(;i<r;){let a=e[t+i];if(a<128)n+=String.fromCharCode(a),i++;else if(a>=192&&a<224){if(i+1>=r)throw new o.A("utf8-decode-error","UTF-8 Decode failed. Two byte character was truncated.");let s=(31&a)<<6|63&e[t+i+1];n+=String.fromCharCode(s),i+=2}else if(a>=224&&a<240){if(i+2>=r)throw new o.A("utf8-decode-error","UTF-8 Decode failed. Multi byte character was truncated.");let s=(15&a)<<12|(63&e[t+i+1])<<6|63&e[t+i+2];n+=String.fromCharCode(s),i+=3}else{if(!(a>=240&&a<248))throw new o.A("utf8-decode-error","UTF-8 Decode failed. Invalid multi byte sequence.");{if(i+3>=r)throw new o.A("utf8-decode-error","UTF-8 Decode failed. Multi byte character was truncated.");let s=(7&a)<<18|(63&e[t+i+1])<<12|(63&e[t+i+2])<<6|63&e[t+i+3];if(s>=65536){let e=55296+(s-65536>>10),t=56320+(1023&s);n+=String.fromCharCode(e,t)}else n+=String.fromCharCode(s);i+=4}}}return n}function c(e,t){let r={byteOffset:0,byteCount:0,fields:Object.create(null)},o=0;for(let n=0;n<t.length;n++){let i=t[n],a=i.valueType||i.type,s=b[a];r.fields[i.property]=s(e,o),o+=w[a].BYTES_PER_ELEMENT}return r.byteCount=o,r}function d(e,t,r){let n,i=[],a=0,s=0;for(;s<e;s+=1){if(n=t[s],n>0){if(i.push(u(r,a,n-1)),0!==r[a+n-1])throw new o.A("string-array-error","Invalid string array: missing null termination.")}else i.push(null);a+=n}return i}function p(e,t){return new(0,w[t.valueType])(e,t.byteOffset,t.count*t.valuesPerElement)}function f(e,t){if(!e)return null;let r=e[t];return(0,a.IY)(e)?-32768===r?null:r:(0,a._G)(e)?r===a.h2?null:r:r==r?r:null}function h(e,t,r){if(t!==e&&l().error(`Invalid ${r} buffer size\n expected: ${e}, actual: ${t})`),t<e)throw new o.A("buffer-too-small","Binary buffer is too small",{expectedSize:e,actualSize:t})}function y(e,t){let r=c(e,t&&t.header),o=r.byteCount,n={isDraco:!1,header:r,byteOffset:r.byteCount,byteCount:0,vertexAttributes:{}},i=r.fields,a=null==i.vertexCount?i.count:i.vertexCount;for(let e of t.ordering){if(!t.vertexAttributes[e])continue;let r={...t.vertexAttributes[e],byteOffset:o,count:a},i=v[e]||"_"+e;n.vertexAttributes[i]=r,o+=C(r.valueType)*r.valuesPerElement*a}let s=i.faceCount;if(t.faces&&s){n.faces={};for(let e of t.ordering){if(!t.faces[e])continue;let r={...t.faces[e],byteOffset:o,count:s};n.faces[e]=r,o+=C(r.valueType)*r.valuesPerElement*s}}let l=i.featureCount;if(t.featureAttributes&&t.featureAttributeOrder&&l){n.featureAttributes={};for(let e of t.featureAttributeOrder){if(!t.featureAttributes[e])continue;let r={...t.featureAttributes[e],byteOffset:o,count:l};n.featureAttributes[e]=r,o+=("UInt64"===r.valueType?8:C(r.valueType))*r.valuesPerElement*l}}return h(o,e.byteLength,"geometry"),n.byteCount=o-n.byteOffset,n}function m(e,t){return e&&e.compressedAttributes&&"draco"===e.compressedAttributes.encoding?function(e){let t={isDraco:!0,isLegacy:!1,color:!1,normal:!1,uv0:!1,uvRegion:!1,featureIndex:!1};for(let r of e)switch(r){case"position":break;case"normal":t.normal=!0;break;case"uv0":t.uv0=!0;break;case"color":t.color=!0;break;case"uv-region":t.uvRegion=!0;break;case"feature-index":t.featureIndex=!0}return t}(e.compressedAttributes.attributes):e?function(e){return{isDraco:!1,isLegacy:!1,color:null!=e.color,normal:null!=e.normal,uv0:null!=e.uv0,uvRegion:null!=e.uvRegion,featureIndex:null!=e.faceRange&&null!=e.featureId}}(e):function(e){let t={isDraco:!1,isLegacy:!0,color:!1,normal:!1,uv0:!1,uvRegion:!1,featureIndex:!1};for(let r of e.ordering)if(e.vertexAttributes[r])switch(r){case"position":break;case"normal":t.normal=!0;break;case"color":t.color=!0;break;case"uv0":t.uv0=!0;break;case"region":t.uvRegion=!0}return e.featureAttributes&&e.featureAttributeOrder&&(t.featureIndex=!0),t}(t)}const v={position:"position",normal:"normal",color:"color",uv0:"uv0",region:"uvRegion"};function g(e,t,r,i=!1){if("lepcc-rgb"===e.encoding)return i?(0,s.mb)(t):function(e){return Array.isArray(e)?e.length<1024?e:new Uint8Array(e):e.length<1024?Array.from(e):e}((0,s.mb)(t));if("lepcc-intensity"===e.encoding)return i?(0,s.Ax)(t):function(e){return Array.isArray(e)?e.length<1024?e:new Uint16Array(e):e.length<1024?Array.from(e):e}((0,s.Ax)(t));if(null!=e.encoding&&""!==e.encoding)throw new o.A("unknown-attribute-storage-info-encoding","Unknown Attribute Storage Info Encoding");e["attributeByteCounts "]&&!e.attributeByteCounts&&(l().warn("Warning: Trailing space in 'attributeByteCounts '."),e.attributeByteCounts=e["attributeByteCounts "]),"ObjectIds"===e.ordering[0]&&e.hasOwnProperty("objectIds")&&(l().warn("Warning: Case error in objectIds"),e.ordering[0]="objectIds");let a=function(e,t,r){let i=null==t.header?{byteOffset:0,byteCount:0,fields:{count:r}}:c(e,t.header),a={header:i,byteOffset:i.byteCount,byteCount:0,entries:Object.create(null)},s=i.byteCount;for(let e=0;e<t.ordering.length;e++){let r=t.ordering[e],l=(0,n.o8)(t[r]);if(l.count=i.fields.count??0,"String"===l.valueType){if(l.byteOffset=s,l.byteCount=i.fields[r+"ByteCount"],"UTF-8"!==l.encoding)throw new o.A("unsupported-encoding","Unsupported String encoding.",{encoding:l.encoding});if(l.timeEncoding&&"ECMA_ISO8601"!==l.timeEncoding)throw new o.A("unsupported-time-encoding","Unsupported time encoding.",{timeEncoding:l.timeEncoding})}else{if(!x(l.valueType))throw new o.A("unsupported-value-type","Unsupported binary valueType",{valueType:l.valueType});{let e=C(l.valueType);s+=s%e===0?0:e-s%e,l.byteOffset=s,l.byteCount=e*l.valuesPerElement*l.count}}s+=l.byteCount??0,a.entries[r]=l}return a.byteCount=s-a.byteOffset,a}(t,e,r);h(a.byteOffset+a.byteCount,t.byteLength,"attribute");let u=a.entries.attributeValues||a.entries.objectIds;if(u){if("String"===u.valueType){let e=a.entries.attributeByteCounts,r=p(t,e),o=function(e,t){return new Uint8Array(e,t.byteOffset,t.byteCount)}(t,u);return u.timeEncoding?function(e,t,r){return d(e,t,r).map(e=>{let t=e?Date.parse(e):null;return null==t||Number.isNaN(t)?null:t})}(e.count,r,o):d(e.count,r,o)}return i?p(t,u):function(e,t){let r=p(e,t);if(r.length>=1024)return r;let o=[];return r.forEach((e,t)=>o.push(f(r,t))),o}(t,u)}throw new o.A("bad-attribute-storage-info","Bad attributeStorageInfo specification.")}const w={Float32:Float32Array,Float64:Float64Array,UInt8:Uint8Array,Int8:Int8Array,UInt16:Uint16Array,Int16:Int16Array,UInt32:Uint32Array,Int32:Int32Array},b={Float32:(e,t)=>new DataView(e,0).getFloat32(t,!0),Float64:(e,t)=>new DataView(e,0).getFloat64(t,!0),UInt8:(e,t)=>new DataView(e,0).getUint8(t),Int8:(e,t)=>new DataView(e,0).getInt8(t),UInt16:(e,t)=>new DataView(e,0).getUint16(t,!0),Int16:(e,t)=>new DataView(e,0).getInt16(t,!0),UInt32:(e,t)=>new DataView(e,0).getUint32(t,!0),Int32:(e,t)=>new DataView(e,0).getInt32(t,!0)};function x(e){return w.hasOwnProperty(e)}function C(e){return x(e)?w[e].BYTES_PER_ELEMENT:0}},25992(e,t,r){r.d(t,{C:()=>s});var o=r(9093),n=r(51850),i=r(73941),a=r(48353);function s(e,t,r,s,l){let u="east-north-up"===r?e.center:function(e,t,r){let o=(0,n.vt)(),a=e.radius,s=2**(4*Math.ceil(Math.log(a)*Math.LOG2E/4)+1);if(r.isGeographic){let t=s/(0,i.tO)(r).radius*180/Math.PI,n=Math.round(e.center[1]/t),a=Math.max(-90,Math.min(90,n*t)),l=t/Math.cos((Math.abs(a)-t/2)/180*Math.PI);o[0]=Math.round(e.center[0]/l)*l,o[1]=a}else{let t=Math.round(e.center[0]/s),r=Math.round(e.center[1]/s);o[0]=t*s,o[1]=r*s}let l=e.center[2]+t;return o[2]=Math.round(l/s)*s,o}(e,t,s),c=(0,o.vt)();return(0,a.l)(s,u,c,l),c}},66480(e,t,r){r.d(t,{Rm:()=>h,Dd:()=>y,s1:()=>f});var o=r(56507),n=(r(4576),r(49186)),i=(r(44208),r(58083),r(9093)),a=(r(35522),r(51850)),s=(r(99917),r(16930)),l=(r(27993),r(19419));r(39516),r(30524),r(97552);var u=r(59418),c=(r(25992),r(90629),r(91829));(0,c.fA)(0,0,0,.2);(0,c.fA)(0,0,0,.2),r(34727);var d=r(57005);function p(e){return e?parseInt(e.slice(e.lastIndexOf("/")+1),10):void 0}async function f(e,t,r,n,i,a,s,l){let c=[];for(let o of t)if(o&&i.includes(o.name)){let t=`${e}/nodes/${r}/attributes/${o.key}/0`;c.push({url:t,storageInfo:o})}let d=await Promise.allSettled(c.map(e=>(0,o.A)(e.url,{responseType:"array-buffer",query:{...s,token:a},signal:l?.signal}).then(t=>(0,u.m0)(e.storageInfo,t.data)))),p=[];for(let e of n){let t={};for(let r=0;r<d.length;r++){let o=d[r];if("fulfilled"===o.status){let n=o.value;t[c[r].storageInfo.name]=(0,u.E5)(n,e)}}p.push(t)}return p}function h(e){let t=e.store,r=t.indexCRS||t.geographicCRS,o=void 0===r?t.indexWKT:void 0;if(o){if(!e.spatialReference)throw new n.A("layerview:no-store-spatial-reference-wkt-index-and-no-layer-spatial-reference","Found indexWKT in the scene layer store but no layer spatial reference",{});if(o!==e.spatialReference.wkt)throw new n.A("layerview:store-spatial-reference-wkt-index-incompatible","The indexWKT of the scene layer store does not match the WKT of the layer spatial reference",{})}let i=r?new s.A(p(r)):e.spatialReference;return i.equals(e.spatialReference)?e.spatialReference:i}function y(e){let t=e.store,r=t.vertexCRS||t.projectedCRS,o=void 0===r?t.vertexWKT:void 0;if(o){if(!e.spatialReference)throw new n.A("layerview:no-store-spatial-reference-wkt-vertex-and-no-layer-spatial-reference","Found vertexWKT in the scene layer store but no layer spatial reference",{});if(o!==e.spatialReference.wkt)throw new n.A("layerview:store-spatial-reference-wkt-vertex-incompatible","The vertexWKT of the scene layer store does not match the WKT of the layer spatial reference",{})}let i=r?new s.A(p(r)):e.spatialReference;return i.equals(e.spatialReference)?e.spatialReference:i}r(47187),(0,l.vt)(),(0,a.vt)(),(0,a.vt)(),(0,a.vt)(),(0,a.vt)(),(0,a.vt)(),(0,a.vt)(),(0,a.vt)(),(0,a.vt)(),(0,l.vt)(),(0,l.vt)(),new d.ab,(0,a.vt)(),Array(72),(0,i.vt)()},37203(e,t,r){r.d(t,{Ax:()=>u,Me:()=>i,mb:()=>l});var o=r(49186);function n(e,t,r){return{identifier:String.fromCharCode.apply(null,new Uint8Array(e,r+0,10)),version:t.getUint16(r+10,!0),checksum:t.getUint32(r+12,!0)}}function i(e){let t=new DataView(e,0),r=0,{identifier:i,version:s}=n(e,t,r);if(r+=16,"LEPCC "!==i)throw new o.A("lepcc-decode-error","Bad identifier");if(s>1)throw new o.A("lepcc-decode-error","Unknown version");let l=(c=r,{sizeLo:(u=t).getUint32(c+0,!0),sizeHi:u.getUint32(c+4,!0),minX:u.getFloat64(c+8,!0),minY:u.getFloat64(c+16,!0),minZ:u.getFloat64(c+24,!0),maxX:u.getFloat64(c+32,!0),maxY:u.getFloat64(c+40,!0),maxZ:u.getFloat64(c+48,!0),errorX:u.getFloat64(c+56,!0),errorY:u.getFloat64(c+64,!0),errorZ:u.getFloat64(c+72,!0),count:u.getUint32(c+80,!0),reserved:u.getUint32(c+84,!0)});var u,c;if(r+=88,l.sizeHi*2**32+l.sizeLo!==e.byteLength)throw new o.A("lepcc-decode-error","Bad size");let d=new Float64Array(3*l.count),p=[],f=[],h=[],y=[];if(r=a(e,r,p),r=a(e,r,f),r=a(e,r,h),r=a(e,r,y),r!==e.byteLength)throw new o.A("lepcc-decode-error","Bad length");let m=0,v=0;for(let e=0;e<p.length;e++){v+=p[e];let t=0;for(let r=0;r<f[e];r++){t+=h[m];let e=y[m];d[3*m]=Math.min(l.maxX,l.minX+2*l.errorX*t),d[3*m+1]=Math.min(l.maxY,l.minY+2*l.errorY*v),d[3*m+2]=Math.min(l.maxZ,l.minZ+2*l.errorZ*e),m++}}return{errorX:l.errorX,errorY:l.errorY,errorZ:l.errorZ,result:d}}function a(e,t,r){let o=[];t=s(e,t,o);let n=[];for(let i=0;i<o.length;i++){n.length=0,t=s(e,t,n);for(let e=0;e<n.length;e++)r.push(n[e]+o[i])}return t}function s(e,t,r){let n=new DataView(e,t),i=n.getUint8(0),a=31&i,s=!!(32&i),l=(192&i)>>6,u=0;if(0===l)u=n.getUint32(1,!0),t+=5;else if(1===l)u=n.getUint16(1,!0),t+=3;else{if(2!==l)throw new o.A("lepcc-decode-error","Bad count type");u=n.getUint8(1),t+=2}if(s)throw new o.A("lepcc-decode-error","LUT not implemented");let c=Math.ceil(u*a/8),d=new Uint8Array(e,t,c),p=0,f=0,h=0,y=-1>>>32-a;for(let e=0;e<u;e++){for(;f<a;)p|=d[h]<<f,f+=8,h+=1;r[e]=p&y,p>>>=a,f-=a,f+a>32&&(p|=d[h-1]>>8-f)}return t+h}function l(e){let t=new DataView(e,0),r=0,{identifier:i,version:a}=n(e,t,r);if(r+=16,"ClusterRGB"!==i)throw new o.A("lepcc-decode-error","Bad identifier");if(a>1)throw new o.A("lepcc-decode-error","Unknown version");let s=(u=r,{sizeLo:(l=t).getUint32(u+0,!0),sizeHi:l.getUint32(u+4,!0),count:l.getUint32(u+8,!0),colorMapCount:l.getUint16(u+12,!0),lookupMethod:l.getUint8(u+14),compressionMethod:l.getUint8(u+15)});var l,u;if(r+=16,s.sizeHi*2**32+s.sizeLo!==e.byteLength)throw new o.A("lepcc-decode-error","Bad size");if((2===s.lookupMethod||1===s.lookupMethod)&&0===s.compressionMethod){if(3*s.colorMapCount+s.count+r!==e.byteLength||s.colorMapCount>256)throw new o.A("lepcc-decode-error","Bad count");let t=new Uint8Array(e,r,3*s.colorMapCount),n=new Uint8Array(e,r+3*s.colorMapCount,s.count),i=new Uint8Array(3*s.count);for(let e=0;e<s.count;e++){let r=n[e];i[3*e]=t[3*r],i[3*e+1]=t[3*r+1],i[3*e+2]=t[3*r+2]}return i}if(0===s.lookupMethod&&0===s.compressionMethod){if(3*s.count+r!==e.byteLength||0!==s.colorMapCount)throw new o.A("lepcc-decode-error","Bad count");return new Uint8Array(e,r).slice()}if(s.lookupMethod<=2&&1===s.compressionMethod){if(r+3!==e.byteLength||1!==s.colorMapCount)throw new o.A("lepcc-decode-error","Bad count");let n=t.getUint8(r),i=t.getUint8(r+1),a=t.getUint8(r+2),l=new Uint8Array(3*s.count);for(let e=0;e<s.count;e++)l[3*e]=n,l[3*e+1]=i,l[3*e+2]=a;return l}throw new o.A("lepcc-decode-error","Bad method "+s.lookupMethod+","+s.compressionMethod)}function u(e){let t=new DataView(e,0),r=0,{identifier:i,version:a}=n(e,t,r);if(r+=16,"Intensity "!==i)throw new o.A("lepcc-decode-error","Bad identifier");if(a>1)throw new o.A("lepcc-decode-error","Unknown version");let l=(c=r,{sizeLo:(u=t).getUint32(c+0,!0),sizeHi:u.getUint32(c+4,!0),count:u.getUint32(c+8,!0),scaleFactor:u.getUint16(c+12,!0),bitsPerPoint:u.getUint8(c+14),reserved:u.getUint8(c+15)});var u,c;if(r+=16,l.sizeHi*2**32+l.sizeLo!==e.byteLength)throw new o.A("lepcc-decode-error","Bad size");let d=new Uint16Array(l.count);if(8===l.bitsPerPoint){if(l.count+r!==e.byteLength)throw new o.A("lepcc-decode-error","Bad size");let t=new Uint8Array(e,r,l.count);for(let e=0;e<l.count;e++)d[e]=t[e]*l.scaleFactor}else if(16===l.bitsPerPoint){if(2*l.count+r!==e.byteLength)throw new o.A("lepcc-decode-error","Bad size");let t=new Uint16Array(e,r,l.count);for(let e=0;e<l.count;e++)d[e]=t[e]*l.scaleFactor}else{let t=[];if(s(e,r,t)!==e.byteLength)throw new o.A("lepcc-decode-error","Bad size");for(let e=0;e<l.count;e++)d[e]=t[e]*l.scaleFactor}return d}},49255(e,t,r){function o(e){return function(e){return function(e){return function(e){return a(e)||function(e){return 10===e||11===e}(e)}(e)||function(e){return 3===e}(e)}(e)||function(e){return 4===e}(e)}(e)||function(e){return 5===(t=e)||6===t||7===t||8===e||9===e;var t}(e)}function n(e){return 1===e}function i(e){return 2===e}function a(e){return 0===e||function(e){return n(e)||i(e)}(e)}r.d(t,{Rb:()=>i,_$:()=>n,_o:()=>a,uw:()=>o})},29941(e,t,r){r.d(t,{v:()=>i});var o=r(32198),n=r(51976);class i extends n.K{constructor(){super(...arguments),this.output=0,this.hasEmission=!1,this.useFloatBlend=!0}}(0,o.Cg)([(0,n.W)({count:12})],i.prototype,"output",void 0),(0,o.Cg)([(0,n.W)()],i.prototype,"hasEmission",void 0),(0,o.Cg)([(0,n.W)()],i.prototype,"useFloatBlend",void 0)},53466(e,t,r){r.d(t,{U:()=>n});var o=r(31821);function n(e,t){switch(t.textureCoordinateType){case 1:return e.attributes.add("uv0","vec2"),e.varyings.add("vuv0","vec2"),void e.vertex.code.add(o.H`void forwardTextureCoordinates() { vuv0 = uv0; }`);case 2:return e.attributes.add("uv0","vec2"),e.attributes.add("uvRegion","vec4"),e.varyings.add("vuv0","vec2"),e.varyings.add("vuvRegion","vec4"),void e.vertex.code.add(o.H`void forwardTextureCoordinates() {
2
2
  vuv0 = uv0;
3
3
  vuvRegion = uvRegion;
4
4
  }`);default:t.textureCoordinateType;case 0:return void e.vertex.code.add(o.H`void forwardTextureCoordinates() {}`);case 3:return}}},99208(e,t,r){r.d(t,{r:()=>a});var o=r(53466),n=r(31821);function i(e){e.fragment.code.add(n.H`vec4 textureAtlasLookup(sampler2D tex, vec2 textureCoordinates, vec4 atlasRegion) {
@@ -26,4 +26,4 @@ return vec4(delinearizeGamma(color.rgb), color.a);
26
26
  }
27
27
  vec3 linearizeGamma(vec3 color) {
28
28
  return pow(color, vec3(GAMMA));
29
- }`)}},40710(e,t,r){r.d(t,{W:()=>n});var o=r(74333);class n extends o.n{constructor(e,t,r){super(e,"vec3",2,(o,n,i,a)=>o.setUniform3fv(e,t(n,i,a),r))}}},33079(e,t,r){r.d(t,{t:()=>n});var o=r(74333);class n extends o.n{constructor(e,t,r){super(e,"vec3",1,(o,n,i)=>o.setUniform3fv(e,t(n,i),r))}}},28421(e,t,r){r.d(t,{J:()=>n});var o=r(74333);class n extends o.n{constructor(e,t,r){super(e,"float",2,(o,n,i)=>o.setUniform1f(e,t(n,i),r))}}},20304(e,t,r){r.d(t,{m:()=>n});var o=r(74333);class n extends o.n{constructor(e,t,r){super(e,"float",1,(o,n,i)=>o.setUniform1f(e,t(n,i),r))}}},15976(e,t,r){r.d(t,{o:()=>n});var o=r(74333);class n extends o.n{constructor(e,t,r){super(e,"sampler2D",2,(o,n,i)=>o.bindTexture(e,t(n,i),r?.(n,i)))}}},63761(e,t,r){r.d(t,{N:()=>n});var o=r(74333);class n extends o.n{constructor(e,t){super(e,"sampler2D",1,(r,o,n)=>r.bindTexture(e,t(o,n)))}}},31821(e,t,r){r.d(t,{If:()=>n});const o=(e,...t)=>{let r="";for(let o=0;o<t.length;o++)r+=e[o]+t[o];return r+=e[e.length-1],r};function n(e,t,r=""){return e?t:r}o.int=e=>e.toFixed(),o.uint=e=>`${Math.max(0,e).toFixed()}u`,o.hexuint=e=>`0x${Math.round(Math.max(0,e)).toString(16)}u`,o.float=e=>e.toPrecision(8),r.d(t,["H",0,o])},51976(e,t,r){r.d(t,{K:()=>s,W:()=>l});var o=r(49186),n=r(4576);class i{constructor(e){this._bits=[...e]}equals(e){return(0,n.aI)(this._bits,e.bits)}get code(){return this._code??=String.fromCharCode(...this._bits),this._code}get bits(){return this._bits}}var a=r(65786);class s extends a.Y{constructor(){super(),this._parameterBits=this._parameterBits?.map(()=>0)??[],this._parameterNames??=[]}get key(){return this._key??=new i(this._parameterBits),this._key}decode(e=this.key){let t=this._parameterBits;this._parameterBits=[...e.bits];let r=this._parameterNames.map(e=>` ${e}: ${this[e]}`).join("\n");return this._parameterBits=t,r}}function l(e={}){return(t,r)=>{t.hasOwnProperty("_parameterNames")||Object.defineProperty(t,"_parameterNames",{value:t._parameterNames?.slice()??[],configurable:!0,writable:!0}),t.hasOwnProperty("_parameterBits")||Object.defineProperty(t,"_parameterBits",{value:t._parameterBits?.slice()??[0],configurable:!0,writable:!0}),t._parameterNames.push(r);let n=e.count||2,i=Math.ceil(Math.log2(n)),a=t._parameterBits,s=0;for(;a[s]+i>16;)s++,s>=a.length&&a.push(0);let l=a[s],u=(1<<i)-1<<l;a[s]+=i,e.count?Object.defineProperty(t,r,{get(){return(this._parameterBits[s]&u)>>l},set(t){let n=this._parameterBits[s];if((n&u)>>l!==t){if(this._key=null,this._parameterBits[s]=n&~u|+t<<l&u,"number"!=typeof t)throw new o.A("internal:invalid-shader-configuration",`Configuration value for ${r} must be a number, got ${typeof t}`);if(null==e.count)throw new o.A("internal:invalid-shader-configuration",`Configuration value for ${r} must provide a count option`)}}}):Object.defineProperty(t,r,{get(){return!!((this._parameterBits[s]&u)>>l)},set(e){let t=this._parameterBits[s];if(!!((t&u)>>l)!==e&&(this._key=null,this._parameterBits[s]=t&~u|+e<<l,"boolean"!=typeof e))throw new o.A("internal:invalid-shader-configurationx",`Configuration value for ${r} must be boolean, got ${typeof e}`)}})}}},72458(e,t,r){r.d(t,{O:()=>a});var o=r(32198),n=r(51976);class i extends n.K{constructor(){super(...arguments),this.useFloatBlend=!0}}function a(e,t){t.useFloatBlend?(e.constants.add("floatBlendOutputScale","float",1),e.constants.add("floatBlendInputScale","float",1)):(e.constants.add("floatBlendOutputScale","float",1/16),e.constants.add("floatBlendInputScale","float",16)),e.constants.add("maxEmissiveStrength","float",16)}(0,o.Cg)([(0,n.W)()],i.prototype,"useFloatBlend",void 0)},65786(e,t,r){const o=class{};new o,r.d(t,["Y",0,o])},74333(e,t,r){r.d(t,{n:()=>o});class o{constructor(e,t,r,o,n=null){if(this.name=e,this.type=t,this.arraySize=n,this.bind={0:null,1:null,2:null},o)switch(r){case void 0:break;case 0:this.bind[0]=o;break;case 1:this.bind[1]=o;break;case 2:this.bind[2]=o}}equals(e){return this.type===e.type&&this.name===e.name&&this.arraySize===e.arraySize}}},91682(e,t,r){r.d(t,{S:()=>l,r:()=>s});var o=r(49186),n=r(17676),i=r(13069),a=r(15804);async function s(e,t,r){await c(await u(e,t,r),t,r)}async function l(e,t,r,o,n){let i=await u(r,o,n);await e.update({data:t}),await c(i,o,n)}async function u(e,t,s){if(!t?.resources)return;let l=function(e,t){let{portalItem:r,portalItemResourcePath:o}=e,{portalItem:n,portalItemResourcePath:i}=t;return r===n&&(!(o||i)||o===i)}(e,t)?new Set(e.paths):new Set;e.paths.length=0,e.portalItem=t.portalItem,e.portalItemResourcePath=t.portalItemResourcePath;let u=new Set(t.resources.toKeep.map(e=>e.resource.path)),c=new Set,d=[];u.forEach(t=>{l.delete(t),e.paths.push(t)});let p=[],f=[],h=[];for(let r of t.resources.toUpdate)if(l.delete(r.resource.path),u.has(r.resource.path)||c.has(r.resource.path)){let{resource:t,content:o,finish:n}=r,s=(0,a.bg)(t,(0,i.lk)());e.paths.push(s.path),p.push({resource:s,content:await(0,a.cL)(o),compress:r.compress}),n&&h.push(()=>n(s))}else{e.paths.push(r.resource.path),f.push({resource:r.resource,content:await(0,a.cL)(r.content),compress:r.compress});let t=r.finish;t&&h.push(()=>t(r.resource)),c.add(r.resource.path)}for(let r of t.resources.toAdd)if(e.paths.push(r.resource.path),l.has(r.resource.path))l.delete(r.resource.path);else{p.push({resource:r.resource,content:await(0,a.cL)(r.content),compress:r.compress});let e=r.finish;e&&h.push(()=>e(r.resource))}if(p.length||f.length){let{addOrUpdateResources:e}=await Promise.resolve().then(()=>r(15804));await e(t.portalItem,p,"add",s),await e(t.portalItem,f,"update",s)}if(h.forEach(e=>e()),0===d.length)return l;let y=await(0,n.Ol)(d);if((0,n.Te)(s),y.length>0)throw new o.A("save:resources","Failed to save one or more resources",{errors:y});return l}async function c(e,t,r){if(!e||!t.portalItem)return;let o=[];for(let n of e){let e=t.portalItem.resourceFromPath(n);o.push(e.portalItem.removeResource(e,r))}await(0,n.Lx)(o)}},26121(e,t,r){r.d(t,{I6:()=>l,ci:()=>s,dL:()=>a});var o=r(49186),n=r(77548),i=r(59923);async function a(e){let t=[];for(let r of e.allLayers)if("beforeSave"in r&&"function"==typeof r.beforeSave){let e=r.beforeSave();e&&t.push(e)}await Promise.allSettled(t)}function s(e,t,r){let n=(e.messages??[]).filter(({type:e})=>"error"===e).map(({name:e,message:t,details:r})=>new o.A(e,t,r));if(e.blockedRelativeUrls&&(n=n.concat(e.blockedRelativeUrls.map(e=>(0,i.GL)("url",`Relative url '${e}' is not supported`)))),r){let{ignoreUnsupported:e,supplementalUnsupportedErrors:t=[],requiredPropertyChecksDisabled:o}=r;e&&(n=n.filter(({name:e})=>!(i.MG.has(e)||t.includes(e)))),o&&(n=n.filter(e=>"web-document-write:property-required"!==e.name))}if(n.length>0)throw new o.A(t.errorName,"Failed to save due to unsupported or invalid content. See 'details.errors' for more detailed information",{errors:n})}function l(e){return(0,n.qd)(e).some(e=>!!e.charts?.length)}}}]);
29
+ }`)}},40710(e,t,r){r.d(t,{W:()=>n});var o=r(74333);class n extends o.n{constructor(e,t,r){super(e,"vec3",2,(o,n,i,a)=>o.setUniform3fv(e,t(n,i,a),r))}}},33079(e,t,r){r.d(t,{t:()=>n});var o=r(74333);class n extends o.n{constructor(e,t,r){super(e,"vec3",1,(o,n,i)=>o.setUniform3fv(e,t(n,i),r))}}},28421(e,t,r){r.d(t,{J:()=>n});var o=r(74333);class n extends o.n{constructor(e,t,r){super(e,"float",2,(o,n,i)=>o.setUniform1f(e,t(n,i),r))}}},20304(e,t,r){r.d(t,{m:()=>n});var o=r(74333);class n extends o.n{constructor(e,t,r){super(e,"float",1,(o,n,i)=>o.setUniform1f(e,t(n,i),r))}}},15976(e,t,r){r.d(t,{o:()=>n});var o=r(74333);class n extends o.n{constructor(e,t,r){super(e,"sampler2D",2,(o,n,i)=>o.bindTexture(e,t(n,i),r?.(n,i)))}}},63761(e,t,r){r.d(t,{N:()=>n});var o=r(74333);class n extends o.n{constructor(e,t){super(e,"sampler2D",1,(r,o,n)=>r.bindTexture(e,t(o,n)))}}},31821(e,t,r){r.d(t,{If:()=>n});const o=(e,...t)=>{let r="";for(let o=0;o<t.length;o++)r+=e[o]+t[o];return r+=e[e.length-1],r};function n(e,t,r=""){return e?t:r}o.int=e=>e.toFixed(),o.uint=e=>`${Math.max(0,e).toFixed()}u`,o.hexuint=e=>`0x${Math.round(Math.max(0,e)).toString(16)}u`,o.float=e=>e.toPrecision(8),r.d(t,["H",0,o])},51976(e,t,r){r.d(t,{K:()=>s,W:()=>l});var o=r(49186),n=r(4576);class i{constructor(e){this._bits=[...e]}equals(e){return(0,n.aI)(this._bits,e.bits)}get code(){return this._code??=String.fromCharCode(...this._bits),this._code}get bits(){return this._bits}}var a=r(65786);class s extends a.Y{constructor(){super(),this._parameterBits=this._parameterBits?.map(()=>0)??[],this._parameterNames??=[]}get key(){return this._key??=new i(this._parameterBits),this._key}decode(e=this.key){let t=this._parameterBits;this._parameterBits=[...e.bits];let r=this._parameterNames.map(e=>` ${e}: ${this[e]}`).join("\n");return this._parameterBits=t,r}}function l(e={}){return(t,r)=>{t.hasOwnProperty("_parameterNames")||Object.defineProperty(t,"_parameterNames",{value:t._parameterNames?.slice()??[],configurable:!0,writable:!0}),t.hasOwnProperty("_parameterBits")||Object.defineProperty(t,"_parameterBits",{value:t._parameterBits?.slice()??[0],configurable:!0,writable:!0}),t._parameterNames.push(r);let n=e.count||2,i=Math.ceil(Math.log2(n)),a=t._parameterBits,s=0;for(;a[s]+i>16;)s++,s>=a.length&&a.push(0);let l=a[s],u=(1<<i)-1<<l;a[s]+=i,e.count?Object.defineProperty(t,r,{get(){return(this._parameterBits[s]&u)>>l},set(t){let n=this._parameterBits[s];if((n&u)>>l!==t){if(this._key=null,this._parameterBits[s]=n&~u|+t<<l&u,"number"!=typeof t)throw new o.A("internal:invalid-shader-configuration",`Configuration value for ${r} must be a number, got ${typeof t}`);if(null==e.count)throw new o.A("internal:invalid-shader-configuration",`Configuration value for ${r} must provide a count option`)}}}):Object.defineProperty(t,r,{get(){return!!((this._parameterBits[s]&u)>>l)},set(e){let t=this._parameterBits[s];if(!!((t&u)>>l)!==e&&(this._key=null,this._parameterBits[s]=t&~u|+e<<l,"boolean"!=typeof e))throw new o.A("internal:invalid-shader-configurationx",`Configuration value for ${r} must be boolean, got ${typeof e}`)}})}}},72458(e,t,r){r.d(t,{O:()=>a});var o=r(32198),n=r(51976);class i extends n.K{constructor(){super(...arguments),this.useFloatBlend=!0}}function a(e,t){t.useFloatBlend?(e.constants.add("floatBlendOutputScale","float",1),e.constants.add("floatBlendInputScale","float",1)):(e.constants.add("floatBlendOutputScale","float",1/16),e.constants.add("floatBlendInputScale","float",16)),e.constants.add("maxEmissiveStrength","float",16)}(0,o.Cg)([(0,n.W)()],i.prototype,"useFloatBlend",void 0)},65786(e,t,r){const o=class{};new o,r.d(t,["Y",0,o])},74333(e,t,r){r.d(t,{n:()=>o});class o{constructor(e,t,r,o,n=null){if(this.name=e,this.type=t,this.arraySize=n,this.bind={0:null,1:null,2:null},o)switch(r){case void 0:break;case 0:this.bind[0]=o;break;case 1:this.bind[1]=o;break;case 2:this.bind[2]=o}}equals(e){return this.type===e.type&&this.name===e.name&&this.arraySize===e.arraySize}}},91682(e,t,r){r.d(t,{S:()=>l,r:()=>s});var o=r(49186),n=r(17676),i=r(13069),a=r(15804);async function s(e,t,r){await c(await u(e,t,r),t,r)}async function l(e,t,r,o,n){let i=await u(r,o,n);await e.update({data:t}),await c(i,o,n)}async function u(e,t,s){if(!t?.resources)return;let l=function(e,t){let{portalItem:r,portalItemResourcePath:o}=e,{portalItem:n,portalItemResourcePath:i}=t;return r===n&&(!(o||i)||o===i)}(e,t)?new Set(e.paths):new Set;e.paths.length=0,e.portalItem=t.portalItem,e.portalItemResourcePath=t.portalItemResourcePath;let u=new Set(t.resources.toKeep.map(e=>e.resource.path)),c=new Set,d=[];u.forEach(t=>{l.delete(t),e.paths.push(t)});let p=[],f=[],h=[];for(let r of t.resources.toUpdate)if(l.delete(r.resource.path),u.has(r.resource.path)||c.has(r.resource.path)){let{resource:t,content:o,finish:n}=r,s=(0,a.bg)(t,(0,i.lk)());e.paths.push(s.path),p.push({resource:s,content:await(0,a.cL)(o),compress:r.compress}),n&&h.push(()=>n(s))}else{e.paths.push(r.resource.path),f.push({resource:r.resource,content:await(0,a.cL)(r.content),compress:r.compress});let t=r.finish;t&&h.push(()=>t(r.resource)),c.add(r.resource.path)}for(let r of t.resources.toAdd)if(e.paths.push(r.resource.path),l.has(r.resource.path))l.delete(r.resource.path);else{p.push({resource:r.resource,content:await(0,a.cL)(r.content),compress:r.compress});let e=r.finish;e&&h.push(()=>e(r.resource))}if(p.length||f.length){let{addOrUpdateResources:e}=await Promise.resolve().then(()=>r(15804));await e(t.portalItem,p,"add",s),await e(t.portalItem,f,"update",s)}if(h.forEach(e=>e()),0===d.length)return l;let y=await(0,n.Ol)(d);if((0,n.Te)(s),y.length>0)throw new o.A("save:resources","Failed to save one or more resources",{errors:y});return l}async function c(e,t,r){if(!e||!t.portalItem)return;let o=[];for(let n of e){let e=t.portalItem.resourceFromPath(n);o.push(e.portalItem.removeResource(e,r))}await(0,n.Lx)(o)}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[8732,8768],{35982(e,t,i){i.d(t,{B:()=>c});var l=i(4576),r=i(71511),s=i(36563),a=i(53966),o=i(97768),n=i(17676),h=i(83027);class c{constructor(e,t,i,l,r={}){this._mainMethod=t,this._transferLists=i,this._listeners=[],this._onClientConnectedHandle=null,this._destroyed=!1,this._promise=(0,h.h)(e,{...r,schedule:l}).then(e=>{null!=this._thread||this._destroyed?e.close():(this._thread=e,this._promise=null,this._onClientConnectedHandle=this._thread.onClientConnected(e=>{r.hasInitialize&&e.invoke("initialize",{}).catch(()=>{});for(let t of this._listeners)this._connectListenerToClient(t,e);this._onClientConnected(e)}))}),this._promise.catch(t=>a.A.getLogger("esri.core.workers.WorkerHandle").error(`Failed to initialize ${e} worker: ${t}`))}on(e,t){let i=new u(e,t);return this._listeners.push(i),this._connectListener(i),(0,s.hA)(()=>{(0,l.TF)(this._listeners,i),i.destroy()})}[Symbol.dispose](){this.destroy()}destroy(){this._onClientConnectedHandle=(0,o.xt)(this._onClientConnectedHandle),this._thread&&=(this._thread.close(),null),this._promise=null;for(let e of this._listeners)e.destroy();this._listeners.length=0,this._transferLists={},this._destroyed=!0}invoke(e,t,i){return this.invokeMethod(this._mainMethod,e,t,i)}invokeMethod(e,t,i,l){if(this._thread){let r=this._transferLists[e],s=r?r(t):[];return this._thread.invoke(e,t,{transferList:s,signal:i,jobPriority:l})}return this._promise?this._promise.then(()=>((0,n.Te)(i),this.invokeMethod(e,t,i))):Promise.reject((0,n.NK)())}broadcast(e,t){return this._thread?Promise.all(this._thread.broadcast(t,e)).then(p):this._promise?this._promise.then(()=>this.broadcast(e,t)):Promise.reject((0,n.NK)())}get promise(){return this._promise}_onClientConnected(e){}_connectListener(e){this._thread&&e.add(this._thread.on(e.eventName,e.callback))}_connectListenerToClient(e,t){e.add(t.on(e.eventName,e.callback))}}class u{constructor(e,t){this.eventName=e,this.callback=t,this._handles=new r.A}add(e){this._handles.add(e)}destroy(){this._handles.destroy()}}function p(){}},54239(e,t,i){i.d(t,{A:()=>y});var l,r=i(32198),s=i(4576),a=i(66552),o=i(25482),n=i(86211),h=i(67076),c=i(91429),u=i(97348),p=i(43937),d=i(36005);const g=(0,a.O)()({orthometric:"gravity-related-height",gravity_related_height:"gravity-related-height",ellipsoidal:"ellipsoidal"}),f=g.jsonValues.slice();(0,s.Xy)(f,"orthometric");const v=(0,a.O)()({meter:"meters",foot:"feet","us-foot":"us-feet","clarke-foot":"clarke-feet","clarke-yard":"clarke-yards","clarke-link":"clarke-links","sears-yard":"sears-yards","sears-foot":"sears-feet","sears-chain":"sears-chains","benoit-1895-b-chain":"benoit-1895-b-chains","indian-yard":"indian-yards","indian-1937-yard":"indian-1937-yards","gold-coast-foot":"gold-coast-feet","sears-1922-truncated-chain":"sears-1922-truncated-chains","50-kilometers":"50-kilometers","150-kilometers":"150-kilometers"});let y=l=class extends o.o{constructor(e){super(e),this.origin=0,this.associatedSpatialReference=null,this.heightModel="gravity-related-height",this.heightUnit="meters",this.vertCRS=null}read(e,t){super.read(e,t),("service"===t?.origin||"web-scene"===t?.origin)&&(this.origin="service"===t.origin?2:1,this.associatedSpatialReference=null)}writeHeightModel(e,t,i){return g.write(e,t,i)}readHeightModel(e,t,i){return g.read(e)||(i?.messages&&i.messages.push(function(e,t){return new h.A("height-model:unsupported",`Height model of value '${e}' is not supported`,t)}(e,{context:i})),null)}readHeightUnit(e,t,i){return v.read(e)||(i?.messages&&i.messages.push(m(e,{context:i})),null)}readHeightUnitService(e,t,i){return(0,n.LA)(e)||v.read(e)||(i?.messages&&i.messages.push(m(e,{context:i})),null)}readVertCRS(e,t){return t.vertCRS||t.ellipsoid||t.geoid}clone(){return new l({heightModel:this.heightModel,heightUnit:this.heightUnit,vertCRS:this.vertCRS,origin:this.origin,associatedSpatialReference:this.associatedSpatialReference})}equals(e){return!!e&&(this===e||this.heightModel===e.heightModel&&this.heightUnit===e.heightUnit&&this.vertCRS===e.vertCRS)}static fromSpatialReference(e){let{latestVcsWkid:t,vcsWkid:i}=e;if(!i)return null;let r=(null==t?null:u.B.get(t))??u.B.get(i);return r?new l({heightModel:0===r.type?"gravity-related-height":"ellipsoidal",heightUnit:(0,n.LA)(r.unit.name),vertCRS:r.datum,origin:3,associatedSpatialReference:e}):null}write(e,t){return t={origin:"web-scene",...t},super.write(e,t)}static fromJSON(e){if(!e)return null;let t=new l;return t.read(e,{origin:"web-scene"}),t}};function m(e,t){return new h.A("height-unit:unsupported",`Height unit of value '${e}' is not supported`,t)}(0,r.Cg)([(0,c.MZ)()],y.prototype,"origin",void 0),(0,r.Cg)([(0,c.MZ)()],y.prototype,"associatedSpatialReference",void 0),(0,r.Cg)([(0,c.MZ)({type:g.apiValues,constructOnly:!0,json:{origins:{"web-scene":{type:f,default:"ellipsoidal",write:{isRequired:!0,alwaysWriteDefaults:!0}}}}})],y.prototype,"heightModel",void 0),(0,r.Cg)([(0,p.K)("web-scene","heightModel")],y.prototype,"writeHeightModel",null),(0,r.Cg)([(0,d.w)(["web-scene","service"],"heightModel")],y.prototype,"readHeightModel",null),(0,r.Cg)([(0,c.MZ)({type:v.apiValues,constructOnly:!0,json:{origins:{"web-scene":{type:v.jsonValues,write:{writer:v.write,isRequired:!0}}}}})],y.prototype,"heightUnit",void 0),(0,r.Cg)([(0,d.w)("web-scene","heightUnit")],y.prototype,"readHeightUnit",null),(0,r.Cg)([(0,d.w)("service","heightUnit")],y.prototype,"readHeightUnitService",null),(0,r.Cg)([(0,c.MZ)({type:String,constructOnly:!0,json:{origins:{"web-scene":{write:!0}}}})],y.prototype,"vertCRS",void 0),(0,r.Cg)([(0,d.w)("service","vertCRS",["vertCRS","ellipsoid","geoid"])],y.prototype,"readVertCRS",null),y=l=(0,r.Cg)([(0,c.$K)("esri.geometry.HeightModelInfo")],y)},38732(e,t,i){i.r(t),i.d(t,{default:()=>S});var l=i(32198),r=i(56507),s=i(49186),a=i(97768),o=i(25728),n=i(17676),h=i(84952),c=i(91429),u=i(4146),p=i(89186),d=i(18768),g=i(85707),f=i(34287),v=i(8303),y=i(10873),m=i(87378),w=i(35982);class _ extends w.B{constructor(e=null){super("LercWorker","_decode",{_decode:e=>[e.buffer]},e,{strategy:"dedicated"}),this.schedule=e,this.ref=0}decode(e,t,i){return e&&0!==e.byteLength?this.invoke({buffer:e,options:t},i):Promise.resolve(null)}release(){--this.ref<=0&&(C.forEach((e,t)=>{e===this&&C.delete(t)}),this.destroy())}}const C=new Map;var b=i(36005);let M=class extends((0,g.a)((0,p.f)((0,d.b)((0,f.q)((0,v.A)((0,o.M)(u.A))))))){constructor(...e){super(...e),this.capabilities={operations:{supportsTileMap:!1}},this.copyright=null,this.path=null,this.minScale=void 0,this.maxScale=void 0,this.opacity=1,this.operationalLayerType="ArcGISTiledElevationServiceLayer",this.sourceJSON=null,this.type="elevation",this.url=null,this.version=null,this._lercDecoder=function(e=null){let t=C.get(e);return t||(null==e?(t=new _,C.set(null,t)):(t=new _(t=>e.immediate.schedule(t)),C.set(e,t))),++t.ref,t}()}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}destroy(){this._lercDecoder=(0,a.Gz)(this._lercDecoder)}readCapabilities(e,t){let i=t.capabilities&&t.capabilities.split(",").map(e=>e.toLowerCase().trim());return i?{operations:{supportsTileMap:i.includes("tilemap")}}:{operations:{supportsTileMap:!1}}}get memoizedElevationQueryDependencies(){return[this.loadStatus,this.tileInfo,this.fullExtent,this.spatialReference]}readVersion(e,t){let i=t.currentVersion;return i||=9.3,i}load(e){let t=null==e?null:e.signal;return this.addResolvingPromise(this.loadFromPortal({supportedTypes:["Image Service"],supportsData:!1,validateItem:e=>{if(e.typeKeywords)for(let t=0;t<e.typeKeywords.length;t++)if("elevation 3d layer"===e.typeKeywords[t].toLowerCase())return!0;throw new s.A("portal:invalid-layer-item-type","Invalid layer item type '${type}', expected '${expectedType}' ",{type:"Image Service",expectedType:"Image Service Elevation 3D Layer"})}},e).catch(n.QP).then(()=>this._fetchImageService(t))),Promise.resolve(this)}async fetchTile(e,t,i,l){let a=l?.signal,o={responseType:"array-buffer",signal:a,useQueue:l?.useQueue,priority:l?.priority},n={noDataValue:l?.noDataValue,returnFileInfo:!0};await this.load(),await this._fetchTileAvailability(e,t,i,l);let h=await(0,r.A)(this.getTileUrl(e,t,i),o),c=await this._lercDecoder.decode(h.data,n,a);if(!c)throw new s.A("elevation-layer:tile-decode-failed","Failed to decode elevation tile data.");return new m.A({values:c.pixelData,width:c.width,height:c.height,noDataValue:c.noDataValue})}getTileUrl(e,t,i){let l=!this.capabilities.operations.supportsTileMap&&this.supportsBlankTile,r=(0,h.x0)({...this.parsedUrl.query,blankTile:!l&&null});return`${this.parsedUrl.path}/tile/${e}/${t}/${i}${r?"?"+r:""}`}async queryElevation(e,t){let{query:l}=await i.e(1359).then(()=>i(1359));return(0,n.Te)(t),l(this,e,t)}async createElevationSampler(e,t){let{createSampler:l}=await i.e(1359).then(()=>i(1359));return(0,n.Te)(t),l(this,e,t)}_fetchTileAvailability(e,t,i,l){return this.tilemapCache?this.tilemapCache.fetchAvailability(e,t,i,l):Promise.resolve("unknown")}async _fetchImageService(e){if(this.sourceJSON)return this.sourceJSON;let t={query:{f:"json",...this.parsedUrl.query},responseType:"json",signal:e},i=await(0,r.A)(this.parsedUrl.path,t);i.ssl&&(this.url=this.url?.replace(/^http:/i,"https:")),this.sourceJSON=i.data,this.read(i.data,{origin:"service",url:this.parsedUrl})}get hasOverriddenFetchTile(){return!this.fetchTile[A]}};(0,l.Cg)([(0,c.MZ)({readOnly:!0})],M.prototype,"capabilities",void 0),(0,l.Cg)([(0,b.w)("service","capabilities",["capabilities"])],M.prototype,"readCapabilities",null),(0,l.Cg)([(0,c.MZ)({json:{read:{source:"copyrightText"}}})],M.prototype,"copyright",void 0),(0,l.Cg)([(0,c.MZ)({type:String,json:{origins:{"web-scene":{read:!0,write:!0}},read:!1}})],M.prototype,"path",void 0),(0,l.Cg)([(0,c.MZ)({type:["show","hide"]})],M.prototype,"listMode",void 0),(0,l.Cg)([(0,c.MZ)({json:{read:!1,write:!1,origins:{service:{read:!1,write:!1},"portal-item":{read:!1,write:!1},"web-document":{read:!1,write:!1}}},readOnly:!0})],M.prototype,"minScale",void 0),(0,l.Cg)([(0,c.MZ)({json:{read:!1,write:!1,origins:{service:{read:!1,write:!1},"portal-item":{read:!1,write:!1},"web-document":{read:!1,write:!1}}},readOnly:!0})],M.prototype,"maxScale",void 0),(0,l.Cg)([(0,c.MZ)({json:{read:!1,write:!1,origins:{"web-document":{read:!1,write:!1}}}})],M.prototype,"opacity",void 0),(0,l.Cg)([(0,c.MZ)({type:["ArcGISTiledElevationServiceLayer"]})],M.prototype,"operationalLayerType",void 0),(0,l.Cg)([(0,c.MZ)()],M.prototype,"sourceJSON",void 0),(0,l.Cg)([(0,c.MZ)({json:{read:!1},value:"elevation",readOnly:!0})],M.prototype,"type",void 0),(0,l.Cg)([(0,c.MZ)()],M.prototype,"memoizedElevationQueryDependencies",null),(0,l.Cg)([(0,c.MZ)(y.OZ)],M.prototype,"url",void 0),(0,l.Cg)([(0,c.MZ)()],M.prototype,"version",void 0),(0,l.Cg)([(0,b.w)("version",["currentVersion"])],M.prototype,"readVersion",null),M=(0,l.Cg)([(0,c.$K)("esri.layers.ElevationLayer")],M);const A=Symbol("default-fetch-tile");M.prototype.fetchTile[A]=!0;const S=M},89186(e,t,i){var l=i(32198),r=i(91429),s=i(16930),a=i(87045),o=i(65509),n=i(25943),h=i(36005);i.d(t,["f",0,e=>{let t=e,i=class extends t{constructor(){super(...arguments),this.copyright=null,this.minScale=0,this.maxScale=0,this.spatialReference=null,this.tileInfo=null,this.tilemapCache=null}destroy(){this.tilemapCache?.destroy?.()}readMinScale(e,t){return null!=t.minLOD&&null!=t.maxLOD?e:0}readMaxScale(e,t){return null!=t.minLOD&&null!=t.maxLOD?e:0}get supportsBlankTile(){return this.version>=10.2}readTilemapCache(e,t,i){let l=t.capabilities?.toLowerCase().includes("tilemap"),{minLOD:r,maxLOD:s,minScale:h,maxScale:c}=t;if(null==r&&null==s&&(0!==h||0!==c)){let e=e=>Math.round(1e4*e)/1e4;h=e(h||t.tileInfo.lods[0].scale),c=e(c||t.tileInfo.lods[t.tileInfo.lods.length-1].scale);for(let i of t.tileInfo.lods){let t=e(i.scale);r=t>=h?i.level:r,s=t>=c?i.level:s}}if(l)return new n.d({layer:this,minLOD:r,maxLOD:s});if(t.tileInfo){let e=new a.A;return e.read(t.tileInfo,i),new o.A(e,r,s)}return null}};return(0,l.Cg)([(0,r.MZ)({json:{read:{source:"copyrightText"}}})],i.prototype,"copyright",void 0),(0,l.Cg)([(0,r.MZ)()],i.prototype,"minScale",void 0),(0,l.Cg)([(0,h.w)("service","minScale")],i.prototype,"readMinScale",null),(0,l.Cg)([(0,r.MZ)()],i.prototype,"maxScale",void 0),(0,l.Cg)([(0,h.w)("service","maxScale")],i.prototype,"readMaxScale",null),(0,l.Cg)([(0,r.MZ)({type:s.A})],i.prototype,"spatialReference",void 0),(0,l.Cg)([(0,r.MZ)({readOnly:!0})],i.prototype,"supportsBlankTile",null),(0,l.Cg)([(0,r.MZ)({type:a.A})],i.prototype,"tileInfo",void 0),(0,l.Cg)([(0,r.MZ)()],i.prototype,"tilemapCache",void 0),(0,l.Cg)([(0,h.w)("service","tilemapCache",["capabilities","tileInfo"])],i.prototype,"readTilemapCache",null),(0,l.Cg)([(0,r.MZ)()],i.prototype,"version",void 0),i=(0,l.Cg)([(0,r.$K)("esri.layers.mixins.ArcGISCachedService")],i),i}])},18768(e,t,i){var l=i(32198),r=i(53966),s=i(91429),a=i(60694);i.d(t,["b",0,e=>{let t=e,i=class extends t{get title(){if(this._get("title")&&"defaults"!==this.originOf("title"))return this._get("title");if(this.url){let e=(0,a.qg)(this.url);if(e?.title)return e.title}return this._get("title")||""}set title(e){this._set("title",e)}set url(e){this._set("url",(0,a.Jf)(e,r.A.getLogger(this)))}};return(0,l.Cg)([(0,s.MZ)()],i.prototype,"title",null),(0,l.Cg)([(0,s.MZ)({type:String})],i.prototype,"url",null),i=(0,l.Cg)([(0,s.$K)("esri.layers.mixins.ArcGISService")],i),i}])},85707(e,t,i){var l=i(32198),r=i(91429),s=i(54239);i.d(t,["a",0,e=>{let t=e,i=class extends t{constructor(){super(...arguments),this.heightModelInfo=null}read(e,t){super.read(e,t),"service"===t?.origin&&2===this.heightModelInfo?.origin&&(this.heightModelInfo.associatedSpatialReference=this.getAtOrigin("spatialReference","service"))}};return(0,l.Cg)([(0,r.MZ)({readOnly:!0,type:s.A})],i.prototype,"heightModelInfo",void 0),i=(0,l.Cg)([(0,r.$K)("esri.layers.mixins.HeightModelInfoMixin")],i),i}])},87378(e,t,i){i.d(t,{A:()=>o});var l,r=i(34275),s=i(78888);const a=Symbol("ElevationTileDataClass");class o{static{l=a}constructor({values:e,width:t,height:i,noDataValue:s}){this[l]=!0,this._hasNoDataValues=null,this._minValue=null,this._maxValue=null,this.values=(0,r.vZ)(e)?e:new Float32Array(e),this.width=t,this.height=i,this.noDataValue=s}get hasNoDataValues(){if(null==this._hasNoDataValues){let e=this.noDataValue;this._hasNoDataValues=this.values.includes(e)}return this._hasNoDataValues}get minValue(){return this._ensureBounds(),this._minValue}get maxValue(){return this._ensureBounds(),this._maxValue}get usedMemory(){return this.values.byteLength+256}_ensureBounds(){if(null!=this._minValue)return;let{noDataValue:e,values:t}=this,i=1/0,l=-1/0,r=!0;for(let s of t)s===e?this._hasNoDataValues=!0:(i=s<i?s:i,l=s>l?s:l,r=!1);r?(this._minValue=0,this._maxValue=0):(this._minValue=i,this._maxValue=l>-3e38?l:0)}static{this.from=(0,s.qf)(o)}}},91806(e,t,i){i.d(t,{A:()=>n});var l,r=i(32198),s=i(25482),a=i(91429),o=i(78888);let n=class extends s.o{static{l=this}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 l({cols:this.cols,level:this.level,levelValue:this.levelValue,resolution:this.resolution,rows:this.rows,scale:this.scale})}};(0,r.Cg)([(0,a.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],n.prototype,"cols",void 0),(0,r.Cg)([(0,a.MZ)({type:o.jz,json:{write:!0}})],n.prototype,"level",void 0),(0,r.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],n.prototype,"levelValue",void 0),(0,r.Cg)([(0,a.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],n.prototype,"origin",void 0),(0,r.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],n.prototype,"resolution",void 0),(0,r.Cg)([(0,a.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],n.prototype,"rows",void 0),(0,r.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],n.prototype,"scale",void 0),n=l=(0,r.Cg)([(0,a.$K)("esri.layers.support.LOD")],n)},87045(e,t,i){i.d(t,{A:()=>w});var l,r=i(32198),s=i(66552),a=i(25482),o=i(86211),n=i(91429),h=i(78888),c=i(86738),u=i(16930),p=i(21325),d=i(28735),g=i(91806),f=i(72802),v=i(36005),y=i(43937);const m=new s.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 w=class extends a.o{static{l=this}static create(e={}){let{resolutionFactor:t=1,scales:i,size:r=256,spatialReference:s=u.A.WebMercator,numLODs:a=24}=e;if(!(0,p.fn)(s)){let e=[];if(i)for(let t=0;t<i.length;t++){let l=i[t];e.push(new g.A({level:t,scale:l,resolution:l}))}else{let t=5e-4;for(let i=a-1;i>=0;i--)e.unshift(new g.A({level:i,scale:t,resolution:t})),t*=2}return new l({dpi:96,lods:e,origin:new c.A(0,0,s),size:[r,r],spatialReference:s})}let n=(0,p.Vp)(s),h=e.origin?new c.A({x:e.origin.x,y:e.origin.y,spatialReference:s}):n?new c.A({x:n.origin[0],y:n.origin[1],spatialReference:s}):new c.A({x:0,y:0,spatialReference:s}),d=1/(39.37*(0,o.GA)(s)*96),f=[];if(i)for(let e=0;e<i.length;e++){let t=i[e],l=t*d;f.push(new g.A({level:e,scale:t,resolution:l}))}else{let e=(0,p.EA)(s)?512/r*591657527.5917094:256/r*591657527.591555,i=Math.ceil(a/t);f.push(new g.A({level:0,scale:e,resolution:e*d}));for(let l=1;l<i;l++){let i=e/2**t,r=i*d;f.push(new g.A({level:l,scale:i,resolution:r})),e=i}}return new l({dpi:96,lods:f,origin:h,size:[r,r],spatialReference:s})}constructor(e){super(e),this.dpi=96,this.format=null,this.origin=null,this.size=null,this.spatialReference=null}get isWrappable(){let{spatialReference:e,origin:t}=this;if(e&&t){let i=(0,p.Vp)(e);return e.isWrappable&&!!i&&Math.abs(i.origin[0]-t.x)<=i.dx}return!1}readOrigin(e,t){return c.A.fromJSON({spatialReference:t.spatialReference,...e})}set lods(e){let t=0,i=0,l=[],r=this._levelToLOD={};e&&(t=-1/0,i=1/0,e.forEach(e=>{l.push(e.scale),t=e.scale>t?e.scale:t,i=e.scale<i?e.scale:i,r[e.level]=e})),this._set("scales",l),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){let t=this.scales;if(e<=0)return t[0];if(e>=t.length-1)return t[t.length-1];let i=Math.floor(e),l=i+1;return t[i]/(t[i]/t[l])**(e-i)}scaleToZoom(e){let t=this.scales,i=t.length-1,l=0;for(;l<i;l++){let i=t[l],r=t[l+1];if(i<=e)return l;if(r===e)return l+1;if(i>e&&r<e)return l+Math.log(i/e)/Math.log(i/r)}return l}tileAt(e,t,i,l){let r,s,a=this.lodAt(e);if(!a)return null;if("number"==typeof t)r=t,s=i;else if((0,p.aI)(t.spatialReference,this.spatialReference))r=t.x,s=t.y,l=i;else{let e=(0,d.Cv)(t,this.spatialReference);if(null==e)return null;r=e.x,s=e.y,l=i}let o=a.resolution*this.size[0],n=a.resolution*this.size[1];return l??=new f.U(0,0,0),l.level=e,l.row=Math.floor((this.origin.y-s)/n+.001),l.col=Math.floor((r-this.origin.x)/o+.001),this.updateTileInfo(l),l}updateTileInfo(e,t=0){if(!("extent"in e))return!1;let i=this.lodAt(e.level);if(!i&&1===t){let t=this.lods[this.lods.length-1];t.level<e.level&&(i=t)}if(!i)return!1;let l=e.level-i.level,r=i.resolution*this.size[0]/2**l,s=i.resolution*this.size[1]/2**l;return e.extent[0]=this.origin.x+e.col*r,e.extent[1]=this.origin.y-(e.row+1)*s,e.extent[2]=e.extent[0]+r,e.extent[3]=e.extent[1]+s,!0}upsampleTile(e){let 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){let i=this.lodAt(t.level);if(null==i)return null;let{resolution:l}=i,r=l*this.size[0],s=l*this.size[1];return e[0]=this.origin.x+t.col*r,e[1]=this.origin.y-(t.row+1)*s,e[2]=e[0]+r,e[3]=e[1]+s,e}lodAt(e){return this._levelToLOD?.[e]??null}clone(){return l.fromJSON(this.write({}))}getCompatibleForVTL(e){if(this.size[0]!==this.size[1]||256===this.size[0]&&512===e)return null;let t=(512===this.size[0]&&256===e?-1:0)+ +!!this.spatialReference.isGeographic;if(this.size[0]===e&&0===t)return this;let i=[],r=this.lods.length-t;for(let e=0;e<r;e++){let l=e+t,{scale:r,resolution:s}=l>=0?this.lods[l]:{scale:2*this.lods[0].scale,resolution:2*this.lods[0].resolution};i.push(new g.A({level:e,scale:r,resolution:s}))}return new l({size:[e,e],dpi:this.dpi,format:this.format,compressionQuality:this.compressionQuality,origin:this.origin,spatialReference:this.spatialReference,lods:i})}_initializeUpsampleLevels(){let e=this.lods;this._upsampleLevels=[];let t=null;for(let i=0;i<e.length;i++){let l=e[i];this._upsampleLevels[l.level]={parentLevel:t?t.level:-1,factor:t?t.resolution/l.resolution:0},t=l}}};(0,r.Cg)([(0,n.MZ)({type:Number,json:{write:!0}})],w.prototype,"compressionQuality",void 0),(0,r.Cg)([(0,n.MZ)({type:Number,json:{write:!0}})],w.prototype,"dpi",void 0),(0,r.Cg)([(0,n.MZ)({type:String,json:{read:m.read,write:m.write,origins:{"web-scene":{read:!1,write:!1}}}})],w.prototype,"format",void 0),(0,r.Cg)([(0,n.MZ)({readOnly:!0})],w.prototype,"isWrappable",null),(0,r.Cg)([(0,n.MZ)({type:c.A,json:{write:!0}})],w.prototype,"origin",void 0),(0,r.Cg)([(0,v.w)("origin")],w.prototype,"readOrigin",null),(0,r.Cg)([(0,n.MZ)({type:[g.A],value:null,json:{write:!0}})],w.prototype,"lods",null),(0,r.Cg)([(0,n.MZ)({readOnly:!0})],w.prototype,"scales",void 0),(0,r.Cg)([(0,n.MZ)({cast:e=>Array.isArray(e)?e:"number"==typeof e?[e,e]:[256,256]})],w.prototype,"size",void 0),(0,r.Cg)([(0,v.w)("size",["rows","cols"])],w.prototype,"readSize",null),(0,r.Cg)([(0,y.K)("size",{cols:{type:h.jz},rows:{type:h.jz}})],w.prototype,"writeSize",null),(0,r.Cg)([(0,n.MZ)({type:u.A,json:{write:!0}})],w.prototype,"spatialReference",void 0),w=l=(0,r.Cg)([(0,n.$K)("esri.layers.support.TileInfo")],w)},65509(e,t,i){i.d(t,{A:()=>s});var l=i(49186),r=i(17676);class s{constructor(e,t=0,i=e.lods[e.lods.length-1].level){this.tileInfo=e,this.minLOD=t,this.maxLOD=i,e.lodAt(t)||(this.minLOD=e.lods[0].level),e.lodAt(i)||(this.maxLOD=e.lods[e.lods.length-1].level)}get effectiveMinLOD(){return this.minLOD??this.tileInfo.lods[0].level}get effectiveMaxLOD(){return this.maxLOD??this.tileInfo.lods[this.tileInfo.lods.length-1].level}getAvailability(e,t,i){let l=this.tileInfo?.lodAt(e);return!l||e<this.minLOD||e>this.maxLOD?"unavailable":l.cols&&l.rows?i>=l.cols[0]&&i<=l.cols[1]&&t>=l.rows[0]&&t<=l.rows[1]?"unknown":"unavailable":"unknown"}async fetchAvailability(e,t,i,s){await(0,r.NO)(s);let a=this.getAvailability(e,t,i);if("unavailable"===a)throw new l.A("tile-map:tile-unavailable","Tile is not available",{level:e,row:t,col:i});return a}async fetchAvailabilityUpsample(e,t,i,l,s){await(0,r.NO)(s),l.level=e,l.row=t,l.col=i;let a=this.tileInfo;return a.updateTileInfo(l),this.fetchAvailability(e,t,i,s).catch(e=>{if((0,r.zf)(e))throw e;if(a.upsampleTile(l))return this.fetchAvailabilityUpsample(l.level,l.row,l.col,l,s);throw e})}}},72802(e,t,i){i.d(t,{U:()=>r});var l=i(19419);class r{constructor(e,t,i,r=(0,l.vt)()){this._level=e,this._row=t,this._col=i,this.extent=r}get id(){return this._id??=`${this.level}/${this.row}/${this.col}`,this._id}get level(){return this._level}set level(e){this._level=e,this._id=null}get row(){return this._row}set row(e){this._row=e,this._id=null}get col(){return this._col}set col(e){this._col=e,this._id=null}toJSON(){return{level:this._level,row:this._row,col:this._col,extent:this.extent}}static fromJSON(e){return new r(e.level,e.row,e.col,e.extent)}}},25943(e,t,i){i.d(t,{d:()=>b});var l,r=i(32198),s=i(56507),a=i(69622),o=i(49186),n=i(36563),h=(i(44208),i(66344)),c=i(15142),u=i(17676),p=i(36708),d=i(76030),g=i(84952),f=i(91429),v=i(72802),y=i(4718),m=i(69397);class w{constructor(e){!function(e){if(!e?.location)throw new o.A("tilemap:missing-location","Location missing from tilemap response");if(!1===e.valid)throw new o.A("tilemap:invalid","Tilemap response was marked as invalid");if(!e.data)throw new o.A("tilemap:missing-data","Data missing from tilemap response");if(!Array.isArray(e.data))throw new o.A("tilemap:data-mismatch","Data must be an array of numbers");if(e.data.length!==e.location.width*e.location.height)throw new o.A("tilemap:data-mismatch","Number of data items does not match width/height of tilemap")}(e);let{location:t,data:i}=e;this.location=Object.freeze((0,y.o8)(t));let l=this.location.width,r=this.location.height,s=!0,a=!0,n=function(e,t=!1){return e<=1024?t?Array(e).fill(0):Array(e):new Uint32Array(e)}(Math.ceil(l*r/32)),h=0;for(let e=0;e<i.length;e++){let t=e%32;i[e]?(a=!1,n[h]|=1<<t):s=!1,31===t&&++h}a?(this._availability="unavailable",this.byteSize=40):s?(this._availability="available",this.byteSize=40):(this._availability=n,this.byteSize=40+(0,m.Qf)(n))}getAvailability(e,t){if("unavailable"===this._availability||"available"===this._availability)return this._availability;let i=(e-this.location.top)*this.location.width+(t-this.location.left),l=i%32,r=i>>5,s=this._availability;return r<0||r>s.length?"unknown":s[r]&1<<l?"available":"unavailable"}static fromDefinition(e,t){let i=e.service.request||s.A,{row:l,col:r,width:a,height:n}=e,h={query:{f:"json"}};return t=t?{...h,...t}:h,i(function(e){let t;if(e.service.tileServers?.length){let i=e.service.tileServers;t=`${i&&i.length?i[e.row%i.length]:e.service.url}/tilemap/${e.level}/${e.row}/${e.col}/${e.width}/${e.height}`}else t=`${e.service.url}/tilemap/${e.level}/${e.row}/${e.col}/${e.width}/${e.height}`;let i=e.service.query;return i&&(t=`${t}?${i}`),t}(e),t).then(e=>e.data).catch(e=>{if(422===e?.details?.httpStatus)return{location:{top:l,left:r,width:a,height:n},valid:!0,data:Array(a*n).fill(0)};throw e}).then(e=>{if(e.location&&(e.location.top!==l||e.location.left!==r||e.location.width!==a||e.location.height!==n))throw new o.A("tilemap:location-mismatch","Tilemap response for different location than requested",{response:e,definition:{top:l,left:r,width:a,height:n}});return w.fromJSON(e)})}static fromJSON(e){return Object.freeze(new w(e))}}function _(e){return`${e.level}/${e.row}/${e.col}/${e.width}/${e.height}`}function C(e,t,i){return new o.A("tile-map:tile-unavailable","Tile is not available",{level:e,row:t,col:i})}let b=class extends a.A{static{l=this}constructor(e){super(e),this._pendingTilemapRequests={},this.request=s.A,this.size=32,this._prefetchingEnabled=!0}initialize(){this._tilemapCache=new h.q(2097152),this.addHandles((0,p.wB)(()=>{let{layer:e}=this;return[e?.parsedUrl,e?.tileServers,e?.apiKey,e?.customParameters]},()=>this._initializeTilemapDefinition(),p.Vh))}get effectiveMinLOD(){return this.minLOD??this.layer.tileInfo.lods[0].level}get effectiveMaxLOD(){return this.maxLOD??this.layer.tileInfo.lods[this.layer.tileInfo.lods.length-1].level}getAvailability(e,t,i){if(!this.layer.tileInfo.lodAt(e)||e<this.effectiveMinLOD||e>this.effectiveMaxLOD)return"unavailable";let l=this._tilemapFromCache(e,t,i,this._tmpTilemapDefinition);return l?l.getAvailability(t,i):"unknown"}fetchAvailability(e,t,i,l){return!this.layer.tileInfo.lodAt(e)||e<this.effectiveMinLOD||e>this.effectiveMaxLOD?Promise.reject(C(e,t,i)):this._fetchTilemap(e,t,i,l).catch(e=>e).then(l=>{if(l instanceof w){let r=l.getAvailability(t,i);if("unavailable"===r)throw C(e,t,i);return r}if((0,u.zf)(l))throw l;return"unknown"})}fetchAvailabilityUpsample(e,t,i,l,r){l.level=e,l.row=t,l.col=i;let s=this.layer.tileInfo;s.updateTileInfo(l);let a=this.fetchAvailability(e,t,i,r).catch(e=>{if((0,u.zf)(e))throw e;if(s.upsampleTile(l))return this.fetchAvailabilityUpsample(l.level,l.row,l.col,l,r);throw e});return this._fetchAvailabilityUpsamplePrefetch(e,t,i,r,a),a}async _fetchAvailabilityUpsamplePrefetch(e,t,i,r,s){if(!this._prefetchingEnabled)return;let a=`prefetch-${e}-${t}-${i}`;if(this.hasHandles(a))return;let o=new AbortController;s.then(()=>o.abort(),()=>o.abort());let h=!1,c=(0,n.hA)(()=>{h||(h=!0,o.abort())});if(this.addHandles(c,a),await(0,d.md)(10,o.signal).catch(()=>{}),h||(h=!0,this.removeHandles(a)),(0,u.G4)(o))return;let p=new v.U(e,t,i),g={...r,signal:o.signal},f=this.layer.tileInfo;for(let e=0;l._prefetches.length<l._maxPrefetch&&f.upsampleTile(p);++e){let e=this.fetchAvailability(p.level,p.row,p.col,g);l._prefetches.push(e);let t=()=>{l._prefetches.removeUnordered(e)};e.then(t,t)}}static{this._maxPrefetch=4}static{this._prefetches=new c.A({initialSize:l._maxPrefetch})}static cleanupTilemapCache(){this._prefetches.prune()}_fetchTilemap(e,t,i,l){if(!this.layer.tileInfo.lodAt(e)||e<this.effectiveMinLOD||e>this.effectiveMaxLOD)return Promise.reject(new o.A("tilemap-cache:level-unavailable",`Level ${e} is unavailable in the service`));let r=this._tmpTilemapDefinition,s=this._tilemapFromCache(e,t,i,r);if(s)return Promise.resolve(s);let a=l?.signal;return l={...l,signal:null},new Promise((e,t)=>{(0,u.u7)(a,()=>t((0,u.NK)()));let i=_(r),s=this._pendingTilemapRequests[i];if(!s){s=w.fromDefinition(r,l).then(e=>(this._tilemapCache.put(i,e,e.byteSize),e));let e=()=>{delete this._pendingTilemapRequests[i]};this._pendingTilemapRequests[i]=s,s.then(e,e)}s.then(e,t)})}_initializeTilemapDefinition(){if(!this.layer.parsedUrl)return;let{parsedUrl:e,apiKey:t,customParameters:i}=this.layer;this._tilemapCache.clear(),this._tmpTilemapDefinition={service:{url:e.path,query:(0,g.x0)({...e.query,...i,token:t??e.query?.token}),tileServers:this.layer.tileServers,request:this.request},width:this.size,height:this.size,level:0,row:0,col:0}}_tilemapFromCache(e,t,i,l){l.level=e,l.row=t-t%this.size,l.col=i-i%this.size;let r=_(l);return this._tilemapCache.get(r)}get test(){}};(0,r.Cg)([(0,f.MZ)({constructOnly:!0})],b.prototype,"layer",void 0),(0,r.Cg)([(0,f.MZ)({constructOnly:!0})],b.prototype,"minLOD",void 0),(0,r.Cg)([(0,f.MZ)({constructOnly:!0})],b.prototype,"maxLOD",void 0),(0,r.Cg)([(0,f.MZ)({constructOnly:!0})],b.prototype,"request",void 0),(0,r.Cg)([(0,f.MZ)({constructOnly:!0})],b.prototype,"size",void 0),b=l=(0,r.Cg)([(0,f.$K)("esri.layers.support.TilemapCache")],b)}}]);