@arcgis/core 5.1.0-next.117 → 5.1.0-next.119

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 (238) hide show
  1. package/Graphic.d.ts +2 -1
  2. package/analysis/ShadowCast/TotalDurationOptions.d.ts +7 -9
  3. package/analysis/ShadowCastAnalysis.d.ts +6 -5
  4. package/analysis/SliceAnalysis.d.ts +1 -1
  5. package/arcgisGlobal.d.ts +2 -1
  6. package/assets/components/assets/icon/orientedImageryFullSuperimpose16.json +1 -0
  7. package/assets/components/assets/icon/orientedImageryFullSuperimpose24.json +1 -0
  8. package/assets/components/assets/icon/orientedImageryFullSuperimpose32.json +1 -0
  9. package/assets/components/assets/icon/orientedImageryHalfSuperimpose16.json +1 -0
  10. package/assets/components/assets/icon/orientedImageryHalfSuperimpose24.json +1 -0
  11. package/assets/components/assets/icon/orientedImageryHalfSuperimpose32.json +1 -0
  12. package/assets/components/assets/icon/orientedImagerySceneOnly16.json +1 -0
  13. package/assets/components/assets/icon/orientedImagerySceneOnly24.json +1 -0
  14. package/assets/components/assets/icon/orientedImagerySceneOnly32.json +1 -0
  15. package/assets/components/assets/icon/parquetFeatureLayer16.json +1 -0
  16. package/assets/components/assets/icon/parquetFeatureLayer24.json +1 -0
  17. package/assets/components/assets/icon/parquetFeatureLayer32.json +1 -0
  18. package/assets/esri/core/workers/RemoteClient.js +1 -1
  19. package/assets/esri/core/workers/chunks/{cf3036711bbe6095eaed.js → 017f50aae082d6664cfe.js} +1 -1
  20. package/assets/esri/core/workers/chunks/{325bfac7cfa28a6d568f.js → 0e774f14ba274832f390.js} +1 -1
  21. package/assets/esri/core/workers/chunks/{f231548c8ac7ecb59927.js → 0fbf9bf52ecb4cd8293b.js} +1 -1
  22. package/assets/esri/core/workers/chunks/{24b43fb12fc3009fdc30.js → 13940660fe88cfc0d9f3.js} +1 -1
  23. package/assets/esri/core/workers/chunks/14c6419568d8a7a15cd6.js +1 -0
  24. package/assets/esri/core/workers/chunks/153dc2a0b08a0e44a881.js +1 -0
  25. package/assets/esri/core/workers/chunks/1a527c0740d9f4fa0791.js +1 -0
  26. package/assets/esri/core/workers/chunks/{a814069325125466506b.js → 1a95370ddc22729ab3c6.js} +1 -1
  27. package/assets/esri/core/workers/chunks/{c88fd4f69cb2b53b48ec.js → 1b0765403b06294b3e1d.js} +1 -1
  28. package/assets/esri/core/workers/chunks/1bebf7202d5f94b15674.js +1 -0
  29. package/assets/esri/core/workers/chunks/{425c04b26a6ec6d04b08.js → 201007cf1a91e2b126fc.js} +1 -1
  30. package/assets/esri/core/workers/chunks/20e2d11f6de438ee883e.js +1 -0
  31. package/assets/esri/core/workers/chunks/{db012650fb34c10cecd0.js → 24acf3dd541347c2b297.js} +1 -1
  32. package/assets/esri/core/workers/chunks/{ba693317ed3939587f30.js → 290163964ec7f05f96d6.js} +1 -1
  33. package/assets/esri/core/workers/chunks/{9250615c78f8570a9cda.js → 29615df388a0df022d8c.js} +1 -1
  34. package/assets/esri/core/workers/chunks/2a2981f0987dd1eaa75a.js +1 -0
  35. package/assets/esri/core/workers/chunks/{94a5a834e32fc6cc6ed4.js → 2e11b4e9d66474a60064.js} +1 -1
  36. package/assets/esri/core/workers/chunks/{8e7ce4835b3106349684.js → 2ee9514396d22638870c.js} +1 -1
  37. package/assets/esri/core/workers/chunks/{702a3ef9e1b3442cbee7.js → 32323b0e0fcecd8f640e.js} +1 -1
  38. package/assets/esri/core/workers/chunks/3a6678ee9990d7e83e15.js +1 -0
  39. package/assets/esri/core/workers/chunks/{102ff3710db4ba5f083d.js → 3bf6d55511cd7722eb93.js} +1 -1
  40. package/assets/esri/core/workers/chunks/3eabc8af82512dc12355.js +1 -0
  41. package/assets/esri/core/workers/chunks/40df6ffeb61fea80aae3.js +1 -0
  42. package/assets/esri/core/workers/chunks/{7df05c3c82cd27b77300.js → 423a9882abd4a6dadf86.js} +1 -1
  43. package/assets/esri/core/workers/chunks/428561df7ba6f02e2d80.js +1 -0
  44. package/assets/esri/core/workers/chunks/{299b4eecd0288348c971.js → 45323491f9005629c602.js} +1 -1
  45. package/assets/esri/core/workers/chunks/46d3ddf62fa7a76dd57d.js +1 -0
  46. package/assets/esri/core/workers/chunks/{51816d79c6be15e4bfcf.js → 46fbd519cc1a37923bfc.js} +1 -1
  47. package/assets/esri/core/workers/chunks/{b0c242c4f5412e4cce73.js → 47d49777a3b3cd8e18bd.js} +1 -1
  48. package/assets/esri/core/workers/chunks/{22d4521637806a8b828f.js → 4bfffdfbe6d467f143a4.js} +1 -1
  49. package/assets/esri/core/workers/chunks/{7c2d7df4ef4d775cd648.js → 4d09ef7c57ab7f9782fe.js} +1 -1
  50. package/assets/esri/core/workers/chunks/{557e39e5156b313597f9.js → 4e314e7cf477ad54541d.js} +1 -1
  51. package/assets/esri/core/workers/chunks/{7c292f7b181f3b93352b.js → 4ef53455c8bc6efee80e.js} +1 -1
  52. package/assets/esri/core/workers/chunks/{86443e47ad99e555753a.js → 53246ce4d2c7d2d2fc62.js} +1 -1
  53. package/assets/esri/core/workers/chunks/5500dc39e11a0057ae16.js +1 -0
  54. package/assets/esri/core/workers/chunks/{dce37324a2382d2eef0d.js → 552945a73a95cd2a9f54.js} +1 -1
  55. package/assets/esri/core/workers/chunks/5784ddd18395f4d76016.js +640 -0
  56. package/assets/esri/core/workers/chunks/578ab400e1998d0bcd62.js +1 -0
  57. package/assets/esri/core/workers/chunks/{0a530fbbb4486c670ea2.js → 5c7aff9604b4576a0e1d.js} +1 -1
  58. package/assets/esri/core/workers/chunks/{0954e82f739d25001bcb.js → 603177137eb680afe371.js} +1 -1
  59. package/assets/esri/core/workers/chunks/62206d5d497b95fc4caf.js +1 -0
  60. package/assets/esri/core/workers/chunks/{69a1cbf0af059548f96a.js → 64daa2a714e59d22bbd4.js} +1 -1
  61. package/assets/esri/core/workers/chunks/{4cecc582513b8a83f194.js → 65621650a53f69f7b05a.js} +1 -1
  62. package/assets/esri/core/workers/chunks/{86a767c2b0b1e37ff493.js → 65a9a94162985b54571e.js} +1 -1
  63. package/assets/esri/core/workers/chunks/6af77529c977d034d287.js +1 -0
  64. package/assets/esri/core/workers/chunks/{1f3a676e7a4eae5ad566.js → 767ea5b455b3823afd09.js} +1 -1
  65. package/assets/esri/core/workers/chunks/{466c250537415f12eb59.js → 798e8bf3a7ad83d810e3.js} +1 -1
  66. package/assets/esri/core/workers/chunks/{f69c44479ee3fd8c831d.js → 7d220f574ebf2740c208.js} +1 -1
  67. package/assets/esri/core/workers/chunks/{e95ce76b5b816256a519.js → 7f54d3835c0ce573a942.js} +1 -1
  68. package/assets/esri/core/workers/chunks/804ab5f614efa12a131b.js +1 -0
  69. package/assets/esri/core/workers/chunks/{ed939fd5d3827a3f70e0.js → 81e3bd1a0634ddc2b833.js} +1 -1
  70. package/assets/esri/core/workers/chunks/823789261ca3338f0fa8.js +1 -0
  71. package/assets/esri/core/workers/chunks/8244b74e9c3a30d8d2f6.js +2 -0
  72. package/assets/esri/core/workers/chunks/{5cdf87e7a59ace38df87.js → 84b0b6e099d949e0fea5.js} +1 -1
  73. package/assets/esri/core/workers/chunks/{caf80facb0322be054ab.js → 8cc6a00c2991ce3fde67.js} +1 -1
  74. package/assets/esri/core/workers/chunks/8e1865392681d390ab2e.js +1 -0
  75. package/assets/esri/core/workers/chunks/93826180cfd66a6d2596.js +1 -0
  76. package/assets/esri/core/workers/chunks/{90b0fe5584fb6fc99766.js → 9d27cc631bab8aa7479e.js} +1 -1
  77. package/assets/esri/core/workers/chunks/a730235da6ba2b2d9f47.js +30 -0
  78. package/assets/esri/core/workers/chunks/a806ac351ef5da04c250.js +1 -0
  79. package/assets/esri/core/workers/chunks/{558606a1af22e4a0d536.js → aca6ff64495580d873d1.js} +1 -1
  80. package/assets/esri/core/workers/chunks/ad488985824fbb830ed6.js +1 -0
  81. package/assets/esri/core/workers/chunks/adac8583750783b9c599.js +2 -0
  82. package/assets/esri/core/workers/chunks/{762e23466308f22d7076.js → aea384f4d88121da8f54.js} +1 -1
  83. package/assets/esri/core/workers/chunks/{4e97c01698ef36cc5e0e.js → bfc2b75e4f7531dbd37f.js} +1 -1
  84. package/assets/esri/core/workers/chunks/c216cd5d6b5d4fe4bab3.js +2 -0
  85. package/assets/esri/core/workers/chunks/c44be4aaba829e6d149d.js +1 -0
  86. package/assets/esri/core/workers/chunks/{6a53c8db554be55c5885.js → c528b04d42dffbb491da.js} +31 -21
  87. package/assets/esri/core/workers/chunks/ca4245414d8ecd217f9d.js +1 -0
  88. package/assets/esri/core/workers/chunks/{7a3b05e25de2ff150f38.js → cc479daacd2cf715baa8.js} +1 -1
  89. package/assets/esri/core/workers/chunks/{1252da05832e576d4def.js → d1ccc5f2d8892328ab01.js} +2 -2
  90. package/assets/esri/core/workers/chunks/{3aebbed6d4fd1b993a35.js → d2dd6e252d5fecfc0f83.js} +1 -1
  91. package/assets/esri/core/workers/chunks/{b44f1d08784f2e50c853.js → d3af51a6d9014ff46170.js} +1 -1
  92. package/assets/esri/core/workers/chunks/{e6e15e9e890b864fb395.js → d41fe5a248221c0a1714.js} +1 -1
  93. package/assets/esri/core/workers/chunks/d561dc933d8fe1672d85.js +1 -0
  94. package/assets/esri/core/workers/chunks/daec09750a5a70cdb0f0.js +2 -0
  95. package/assets/esri/core/workers/chunks/de41c3f5b34c49175833.js +1 -0
  96. package/assets/esri/core/workers/chunks/e178cd0e9178d6716410.js +1 -0
  97. package/assets/esri/core/workers/chunks/e9dcc3e9dbafe9bbed84.js +1 -0
  98. package/assets/esri/core/workers/chunks/{185c670eb99474906836.js → edb55329305becdb204f.js} +1 -1
  99. package/assets/esri/core/workers/chunks/{d21bf107698fef03125e.js → f142f892e9e896052ddc.js} +1 -1
  100. package/assets/esri/core/workers/chunks/f58ddf37dee066a5c0d8.js +1 -0
  101. package/assets/esri/themes/base/widgets/_BatchAttributeForm.scss +27 -4
  102. package/assets/esri/themes/base/widgets/_Grid.scss +3 -3
  103. package/assets/esri/themes/dark/main.css +1 -1
  104. package/assets/esri/themes/light/main.css +1 -1
  105. package/assets/esri/themes/light/view.css +1 -1
  106. package/chunks/GlobalIllumination.glsl.js +20 -19
  107. package/chunks/GlobalIlluminationBlur.glsl.js +15 -12
  108. package/chunks/GlobalIlluminationUpscale.glsl.js +4 -3
  109. package/chunks/ShadowCastVisualize.glsl.js +20 -23
  110. package/config.js +1 -1
  111. package/editing/templates/{TemplateListing.d.ts → TemplateListItem.d.ts} +35 -6
  112. package/editing/templates/{TemplateListing.js → TemplateListItem.js} +1 -1
  113. package/interfaces.d.ts +7 -0
  114. package/kernel.js +1 -1
  115. package/layers/FeatureLayer.d.ts +29 -3
  116. package/layers/FeatureLayer.js +1 -1
  117. package/layers/ImageryTileLayer.js +1 -1
  118. package/layers/MediaLayer.d.ts +1 -1
  119. package/layers/SceneLayer.d.ts +2 -2
  120. package/layers/VectorTileLayer.d.ts +2 -2
  121. package/layers/mixins/ArcGISImageService.js +1 -1
  122. package/layers/mixins/BlendLayer.d.ts +1 -1
  123. package/layers/mixins/PortalLayer.js +1 -1
  124. package/layers/mixins/TiledImagery.js +1 -1
  125. package/layers/raster/datasets/ImageAuxRaster.js +1 -1
  126. package/layers/raster/datasets/RasterFactory.js +1 -1
  127. package/layers/save/featureLayerUtils.js +1 -1
  128. package/layers/support/FeatureFilter.d.ts +1 -1
  129. package/layers/support/FeatureReductionSelection.d.ts +1 -1
  130. package/layers/support/RasterJobHandler.js +1 -1
  131. package/layers/support/RasterWorker.js +1 -1
  132. package/layers/support/SymbolLayerDrawing.d.ts +10 -0
  133. package/layers/support/arcgisLayers.js +1 -1
  134. package/layers/support/fetchService.js +1 -1
  135. package/layers/support/layerUtils.js +1 -1
  136. package/layers/support/layersLoader.js +1 -1
  137. package/layers/support/rasterJobHelper.js +2 -0
  138. package/layers/types.d.ts +2 -3
  139. package/package.json +3 -3
  140. package/renderers/FlowRenderer.d.ts +2 -2
  141. package/rest/support/AttributeBinsQuery.d.ts +5 -5
  142. package/rest/support/OutDistance.d.ts +50 -0
  143. package/rest/support/OutDistance.js +1 -1
  144. package/rest/support/Query.d.ts +46 -5
  145. package/rest/support/TopFeaturesQuery.d.ts +5 -5
  146. package/smartMapping/raster/renderers/flow.d.ts +2 -2
  147. package/smartMapping/symbology/flow.d.ts +2 -2
  148. package/smartMapping/symbology/types.d.ts +2 -2
  149. package/support/revision.js +1 -1
  150. package/symbols/support/Symbol3DVerticalOffset.d.ts +2 -2
  151. package/views/2d/engine/vectorTiles/shaders/VTLBackgroundMaterial.js +1 -1
  152. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/vector-tiles/VTLShaderCircle.js +1 -1
  153. package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
  154. package/views/2d/layers/FeatureLikeLayerView2D.js +1 -1
  155. package/views/2d/layers/features/FeaturePipelineWorker.js +1 -1
  156. package/views/2d/layers/features/Processor.js +1 -1
  157. package/views/2d/layers/features/processor/AProcessorStrategy.js +1 -1
  158. package/views/2d/layers/features/processor/ClusterStrategy.js +1 -1
  159. package/views/2d/layers/features/sources/strategies/ParquetTileLoadStrategy.js +1 -1
  160. package/views/2d/layers/features/support/FeatureSetReaderParquet.js +1 -1
  161. package/views/3d/analysis/ShadowCast/ShadowCastTooltip.js +1 -1
  162. package/views/3d/analysis/ShadowCastAnalysisView3D.js +1 -1
  163. package/views/3d/analysis/ViewshedAnalysisView3D.js +1 -1
  164. package/views/3d/interactive/editingTools/transform/ExtentTransformTool.js +1 -1
  165. package/views/3d/layers/GaussianSplatLayerView3D.js +1 -1
  166. package/views/3d/layers/graphics/defaultSymbolComplexity.js +1 -1
  167. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIllumination.glsl.js +1 -1
  168. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIlluminationBlur.glsl.js +1 -1
  169. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIlluminationColorQuantization.glsl.js +7 -0
  170. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIlluminationUpscale.glsl.js +1 -1
  171. package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
  172. package/views/SceneView.d.ts +1 -1
  173. package/views/interactive/sketch/SketchTooltipOptions.d.ts +1 -1
  174. package/views/interactive/snapping/SnappingOptions.d.ts +3 -3
  175. package/views/layers/ImageryLayerView.d.ts +1 -1
  176. package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.d.ts +29 -1
  177. package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.js +1 -1
  178. package/widgets/BatchAttributeForm/attachmentUtils.js +1 -1
  179. package/widgets/BatchAttributeForm/css.js +1 -1
  180. package/widgets/BatchAttributeForm/inputs/AttachmentElementInput.js +1 -1
  181. package/widgets/BatchAttributeForm/inputs/FieldInput.d.ts +0 -5
  182. package/widgets/BatchAttributeForm/inputs/FieldInput.js +1 -1
  183. package/widgets/BatchAttributeForm/inputs/UtilityNetworkAssociationsElementInput.js +1 -1
  184. package/widgets/BatchAttributeForm/inputs/support/inputUtils.js +1 -1
  185. package/widgets/BatchAttributeForm/types.d.ts +67 -0
  186. package/widgets/BatchAttributeForm.d.ts +26 -1
  187. package/widgets/BatchAttributeForm.js +1 -1
  188. package/widgets/Daylight.d.ts +1 -1
  189. package/widgets/Directions/DirectionsViewModel.js +1 -1
  190. package/widgets/Editor.d.ts +8 -8
  191. package/widgets/ElevationProfile.d.ts +1 -1
  192. package/widgets/FeatureTable/ActionColumn.d.ts +1 -1
  193. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  194. package/widgets/Print/PrintViewModel.js +1 -1
  195. package/widgets/Sketch/SketchViewModel.d.ts +38 -38
  196. package/widgets/Sketch/support/PluginManager.js +1 -1
  197. package/widgets/Sketch.d.ts +39 -39
  198. package/widgets/Sketch.js +1 -1
  199. package/widgets/Slice.d.ts +1 -1
  200. package/widgets/UtilityNetworkTrace.d.ts +1 -1
  201. package/widgets/UtilityNetworkValidateTopology.d.ts +1 -1
  202. package/assets/esri/core/workers/chunks/074f5e6aaeafca13bf72.js +0 -1
  203. package/assets/esri/core/workers/chunks/0e9804ece1fd2d59751b.js +0 -1
  204. package/assets/esri/core/workers/chunks/18ebf1d3ed05c8057f7d.js +0 -1
  205. package/assets/esri/core/workers/chunks/1da2c34743897d1b6a24.js +0 -1
  206. package/assets/esri/core/workers/chunks/2e8db0f05df2e38a14e1.js +0 -2
  207. package/assets/esri/core/workers/chunks/32f24a66f684de3c243d.js +0 -1
  208. package/assets/esri/core/workers/chunks/41074d383af3662673ca.js +0 -1
  209. package/assets/esri/core/workers/chunks/413d2fa54508e6f42c74.js +0 -1
  210. package/assets/esri/core/workers/chunks/4325fa92dafca465ae26.js +0 -1
  211. package/assets/esri/core/workers/chunks/438f35d41c6851736818.js +0 -30
  212. package/assets/esri/core/workers/chunks/544174c33628846284a1.js +0 -1
  213. package/assets/esri/core/workers/chunks/55b765c72d13b3b911f9.js +0 -1
  214. package/assets/esri/core/workers/chunks/55d168c13491fcdfb284.js +0 -1
  215. package/assets/esri/core/workers/chunks/62b5972d0ef9bf173308.js +0 -1
  216. package/assets/esri/core/workers/chunks/6af88bb722bbb37db198.js +0 -2
  217. package/assets/esri/core/workers/chunks/708bd77e6d723e3f0aa8.js +0 -1
  218. package/assets/esri/core/workers/chunks/70d8f5bdb452cee41536.js +0 -2
  219. package/assets/esri/core/workers/chunks/75a7de23c05435ec7649.js +0 -1
  220. package/assets/esri/core/workers/chunks/87a40e7f79f97ca637a9.js +0 -1
  221. package/assets/esri/core/workers/chunks/8a68884d40f6f6de1d12.js +0 -1
  222. package/assets/esri/core/workers/chunks/927c8ca7fd385b28a1b7.js +0 -640
  223. package/assets/esri/core/workers/chunks/92a7735973b2f82a66ce.js +0 -1
  224. package/assets/esri/core/workers/chunks/978b7d10054e17161145.js +0 -1
  225. package/assets/esri/core/workers/chunks/a0fce639319d59becd01.js +0 -2
  226. package/assets/esri/core/workers/chunks/aa03f770178693167aa0.js +0 -1
  227. package/assets/esri/core/workers/chunks/aea439d4c2308f88b295.js +0 -1
  228. package/assets/esri/core/workers/chunks/b78fb24b47d9f31f18c6.js +0 -1
  229. package/assets/esri/core/workers/chunks/b8dda9e55caba0e2b4c2.js +0 -1
  230. package/assets/esri/core/workers/chunks/c4872cf3b71d00f450e1.js +0 -1
  231. package/assets/esri/core/workers/chunks/d598d08dbf2796742e8c.js +0 -1
  232. package/assets/esri/core/workers/chunks/fa3138dd8139008b430d.js +0 -1
  233. package/assets/esri/core/workers/chunks/fc9fbc8e4e459edf4e37.js +0 -1
  234. /package/assets/esri/core/workers/chunks/{2e8db0f05df2e38a14e1.js.LICENSE.txt → 8244b74e9c3a30d8d2f6.js.LICENSE.txt} +0 -0
  235. /package/assets/esri/core/workers/chunks/{6af88bb722bbb37db198.js.LICENSE.txt → adac8583750783b9c599.js.LICENSE.txt} +0 -0
  236. /package/assets/esri/core/workers/chunks/{70d8f5bdb452cee41536.js.LICENSE.txt → c216cd5d6b5d4fe4bab3.js.LICENSE.txt} +0 -0
  237. /package/assets/esri/core/workers/chunks/{1252da05832e576d4def.js.LICENSE.txt → d1ccc5f2d8892328ab01.js.LICENSE.txt} +0 -0
  238. /package/assets/esri/core/workers/chunks/{a0fce639319d59becd01.js.LICENSE.txt → daec09750a5a70cdb0f0.js.LICENSE.txt} +0 -0
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1003],{1003(e,t,s){s.r(t),s.d(t,{default:()=>pe});var i=s(49186),n=s(5482),a=s(91429),r=s(49859),o=s(68197),l=s(5443),c=s(16930),f=s(73444),u=s(94778),h=s(14140);function p(e){return["x","e","east","long","longitude"].includes(e.toLowerCase())}function d(e){return["y","n","west","lat","latitude"].includes(e.toLowerCase())}function m(e){const{axes:t}=e.domain,s=Object.keys(t),i=[],n=[];let a=-1,r=-1,o=[];for(let e=0;e<s.length;e++){const l=s[e];p(l)?a=e:d(l)&&(r=e);const c=t[l],f=[];if("values"in c){c.values.forEach(e=>f.push("string"==typeof e?new Date(e).getTime():e));const e=f[1]-f[0];i.push([f[0]-.5*e,f[f.length-1]+.5*e]),n.push(e)}else{const{start:e,stop:t,num:s}=c,a=(t-e)/(s-1);i.push([e-.5*a,t+.5*a]),n.push(a);for(let t=0;t<s;t++)f.push(e+a*t)}o.push({name:l,values:f,extent:[f[0],f[f.length-1]]})}a>-1&&-1===r?r=0===a?1:0:r>-1&&-1===a?a=0===r?1:0:-1===r&&-1===a&&(a=0,r=1),o=o.filter((e,t)=>!(t===a||t===r));const{referencing:f}=e.domain,u=f.find(e=>e.coordinates.includes(s[a])).system.id,h=u?.slice(u.lastIndexOf("/")+1),m=null==h||"CRS84"===h?4326:Number(h),g=new c.A({wkid:m}),[y,x]=i[a],[w,I]=i[r],v=new l.A({xmin:y,xmax:x,ymin:w,ymax:I,spatialReference:g});return{width:Math.round(v.width/n[a]),height:Math.round(v.height/n[r]),extent:v,dimensions:o}}function g(e){const t=(0,f.lR)();return t?e[t]??Object.values(e)[0]:Object.values(e)[0]}function y(){return Math.round(255*Math.random())}function x(e){const t={},{parameters:s}=e;if(!s)return t;for(const[e,i]of Object.entries(s)){const{type:s,description:n,unit:a,categoryEncoding:r,observedProperty:l}=i;if("Parameter"===s&&(t[e]={},n&&(t[e].description=g(n)),a&&(t[e].unit=a.label?g(a.label):null,t[e].symbol=a.symbol?.value),r)){const s=Object.entries(r).map((e,t)=>({OID:t,Value:Number(e[1]),ClassName:e[0].slice(e[0].lastIndexOf("/")+1),Count:1}));let i=!1;l?.categories?.length&&(l.categories.forEach(e=>{if(!e.id)return;const t=e.id.slice(e.id.lastIndexOf("/")+1),n=s.find(e=>e.ClassName===t);if(!n)return;const a=e.label?g(e.label):null;if(n.Label=a,e.preferredColor){const t=o.A.fromHex(e.preferredColor);t&&(i=!0,n.Red=t.r,n.Green=t.g,n.Blue=t.b)}}),i&&s.forEach(e=>{null==e.Red&&(e.Red=y(),e.Green=y(),e.Blue=y())}));const n={objectIdFieldName:"",fields:[{name:"OID",type:"esriFieldTypeOID",alias:"OID",domain:null},{name:"Value",type:"esriFieldTypeInteger",alias:"Value",domain:null},{name:"Count",type:"esriFieldTypeDouble",alias:"Count",domain:null},{name:"ClassName",type:"esriFieldTypeString",alias:"ClassName",domain:null,length:50},{name:"Label",type:"esriFieldTypeString",alias:"Label",domain:null,length:50}],features:s.map(e=>({attributes:e}))};i&&n.fields.push({name:"Red",type:"esriFieldTypeInteger",alias:"Red",domain:null},{name:"Green",type:"esriFieldTypeInteger",alias:"Green",domain:null},{name:"Blue",type:"esriFieldTypeInteger",alias:"Blue",domain:null}),t[e].attributeTable=n}}return t}function w(e){let t=Number.MAX_VALUE,s=-Number.MAX_VALUE;for(let i=0;i<e.length;i++){const n=e[i];null!=n&&(n<t&&(t=n),n>s&&(s=n))}return(0,u.X1)(t,s)}function I(e,t,s){const i=e.map((e,s)=>({name:e,count:t[s]})).sort((e,t)=>e.name>t.name?-1:1),n=(a=1,e=>a*=e.count);var a;const r=[...i.slice(1),{name:"",count:1}].reverse().map(n).reverse();let o=0;for(let n=e.length-1;n>=0;n--)o+=r[i.findIndex(({name:t})=>t===e[n])]*(s%t[n]),s=Math.floor(s/t[n]);return o}var v=s(17676),b=s(4366),C=s(47520),S=s(51927),T=s(45617),A=s(87186);let R=class extends r.A{constructor(){super(...arguments),this.datasetFormat="MEMORY",this.preGenerateTiles=!0,this.source=null}get url(){return""}fetchRawTile(e,t,s,i={}){if(!this._pixelBlockTiles){const{rasterInfo:n}=this,[a,r]=n.storageInfo.tileInfo.size,{sliceId:o}=i,{pixelBlocks:l}=this.source,c={pixelBlock:null==o?l[0]:l[o],useBilinear:"thematic"!==n.dataType,tileSize:{width:a,height:r},level:e,row:t,col:s},f=this.rasterJobHandler?this.rasterJobHandler.clipTile(c,i):(0,C.J$)(c);return Promise.resolve(f)}const n=this._pixelBlockTiles.get(`${e}/${t}/${s}`);return Promise.resolve(n)}async _open(e){const t=this.source,{pixelBlocks:s,attributeTable:i,statistics:n,histograms:a,name:r,nativeExtent:o,transform:f,colormap:u}=t,h=s[0],{width:p,height:d,pixelType:m}=h,g=t.extent??new l.A({xmin:-.5,ymin:.5,xmax:p-.5,ymax:d-.5,spatialReference:new c.A({wkid:3857})}),y=t.isPseudoSpatialReference??!t.extent,x={x:g.width/p,y:g.height/d},w={...t.keyProperties};t.dataType&&(w.DataType=t.dataType),t.bandInfos&&(w.BandProperties=t.bandInfos.map(e=>e.toJSON())),i&&(w.DataType="Thematic");const I=new A.A({width:p,height:d,pixelType:m,extent:g,nativeExtent:o,attributeTable:i,colormap:u,transform:f,pixelSize:x,spatialReference:g.spatialReference,bandCount:h.pixels.length,keyProperties:w,multidimensionalInfo:t.multidimensionalInfo,statistics:n,isPseudoSpatialReference:y,histograms:a});this.ioConfig.skipMapInfo&&this.updateImageSpaceRasterInfo(I),this.createRemoteDatasetStorageInfo(I,512,512),this._set("rasterInfo",I),this.updateTileInfo(),I.multidimensionalInfo?await this._buildMDimStats(t.pixelBlocks,I.multidimensionalInfo):this.preGenerateTiles&&await this._buildInMemoryRaster(h,{width:512,height:512},e),I.multidimensionalInfo||(this.source=null),this.datasetName=r}async _buildInMemoryRaster(e,t,s){const{rasterInfo:n}=this,a=n.storageInfo.maximumPyramidLevel??0,r="thematic"!==n.dataType,o=this.rasterJobHandler?this.rasterJobHandler.split({pixelBlock:e,tileSize:t,maximumPyramidLevel:a,useBilinear:r},s):Promise.resolve((0,C.lD)(e,t,a,r)),l=null!=n.statistics,c=null!=n.histograms,f=this.ioConfig.skipStatistics||l?Promise.resolve({statistics:null,histograms:null}):this.rasterJobHandler?this.rasterJobHandler.estimateStatisticsHistograms({pixelBlock:e},s):Promise.resolve((0,S.f4)(e)),u=await(0,v.Lx)([o,f]);if(!u[0].value&&u[1].value)throw new i.A("inmemory-raster:open","failed to build in memory raster");this._pixelBlockTiles=u[0].value,l||(n.statistics=u[1].value?.statistics),c||(n.histograms=u[1].value?.histograms)}async _buildMDimStats(e,t,s){for(let i=0;i<t.variables.length;i++){const n=t.variables[i];if(n.statistics)continue;const a=n.dimensions.map(e=>new T.A({variableName:n.name,dimensionName:e.name,values:[e.values?.[0]??e.extent?.[0]],isSlice:!0})),r=(0,b.NG)(a,t),o=null==r?null:e[r];if(null==o)continue;const l=this.rasterJobHandler?await this.rasterJobHandler.computeStatisticsHistograms({pixelBlock:o},s):(0,S.eH)(o);n.statistics=l.statistics,n.histograms||(n.histograms=l.histograms)}}};(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],R.prototype,"datasetFormat",void 0),(0,n.Cg)([(0,a.MZ)({constructOnly:!0})],R.prototype,"preGenerateTiles",void 0),(0,n.Cg)([(0,a.MZ)()],R.prototype,"source",void 0),(0,n.Cg)([(0,a.MZ)()],R.prototype,"url",null),R=(0,n.Cg)([(0,a.$K)("esri.layers.raster.datasets.InMemoryRaster")],R);const M=R;var O=s(22671);let k=class extends r.A{constructor(){super(...arguments),this.datasetFormat="CovJSON"}fetchRawTile(e,t,s,i={}){return this._inMemoryRaster.fetchRawTile(e,t,s,i)}async _open(e){const{extent:t,pixelBlocks:s,multidimensionalInfo:i,attributeTable:n,bandNames:a}=await this._fetchData(e),{statistics:r,histograms:o}=(0,S.eH)(s[0]),l=a?.map(e=>({BandName:e})),c={DataType:n?"Thematic":i?"Scientific":"Generic",BandProperties:l},f=new M({source:{extent:t,pixelBlocks:s,attributeTable:n?O.A.fromJSON(n):null,multidimensionalInfo:i,statistics:r,histograms:o,keyProperties:c,isPseudoSpatialReference:!1}});await f.open(),this._inMemoryRaster=f;const u=this.source?"":this.url.slice(this.url.lastIndexOf("/")+1);this._set("datasetName",u.slice(0,u.indexOf("."))),this._set("rasterInfo",f.rasterInfo)}async _fetchData(e){const t=this.source??(await this.request(this.url,{signal:e?.signal})).data,s="imagery-tile-layer:open-coverage-json";if("coverage"!==t.type?.toLowerCase()||"grid"!==t.domain?.domainType?.toLowerCase())throw new i.A(s,"Only coverage with Grid domain type is supported");if(!t.ranges)throw new i.A(s,"Missing ranges in the grid coverage data");if(!t.domain.referencing?.length)throw new i.A(s,"Missing domain referencing in the grid coverage data");const n=Object.values(t.ranges);for(let e=0;e<n.length;e++){const{axisNames:t,shape:a,type:r,values:o}=n[e];if(!("ndarray"===r.toLowerCase()&&o?.length&&t?.length&&a?.length))throw new i.A(s,"Only ranges with valid NdArray, axisNames, shape, and inline values are supported");if(!p(t[t.length-1])||!d(t[t.length-2]))throw new i.A(s,"Only row-major ordered pixel values are supported. X axis must be the last axis.")}return function(e){const{width:t,height:s,extent:i,dimensions:n}=m(e),{ranges:a}=e,r=Object.keys(a).sort((e,t)=>e<t?-1:1),o=[];for(let e=0;e<r.length;e++){const t=r[e];n?.length&&o.push({name:t,dimensions:n})}const l=x(e);o.forEach(e=>l[e.name]&&Object.assign(e,l[e.name]));const c=o.length?{variables:o}:void 0,f=[];for(let e=0;e<r.length;e++){const i=r[e],{values:o,dataType:l,axisNames:c,shape:u}=a[i],p=u.length>2?e*u.slice(0,-2).reduce((e,t)=>e*t):0,d=c.slice(0,-2),m=u.slice(0,-2),g="float"===l?"f32":w(o),y=t*s,x=o.length/y;for(let i=0;i<x;i++){const a=h.A.createEmptyBand(g,y),r=new Uint8Array(y).fill(255);let l=!1;const c=i*y;for(let e=0;e<y;e++){const t=o[c+e];null==t?(r[e]=0,l=!0):a[e]=t}if(0===e||n?.length){const e=new h.A({width:t,height:s,mask:l?r:null,pixels:[a],pixelType:g});e.updateStatistics(),n?.length?f[I(d,m,i)+p]=e:f.push(e)}else{const e=f[i];e.pixels.push(a),l?e.mask&&(e.mask=h.A.combineBandMasks([e.mask,r])):e.mask=l?r:null}}}const u=Object.values(l).find(e=>e.attributeTable)?.attributeTable;return{extent:i,pixelBlocks:f,multidimensionalInfo:c,attributeTable:u,bandNames:c?void 0:r}}(t)}};(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],k.prototype,"datasetFormat",void 0),(0,n.Cg)([(0,a.MZ)({constructOnly:!0})],k.prototype,"source",void 0),k=(0,n.Cg)([(0,a.$K)("esri.layers.raster.datasets.CovJSONRaster")],k);const _=k;var F=s(4576),P=s(21325),B=s(330),D=s(43163);function N(e,t){if(!e||!t)return null;const s=[];for(let i=0;i<e.length;i++)s.push(e[i]),s.push(t[i]);return s}function E(e){if(!e)return null;let t=Number(e);if(!isNaN(t)&&0!==t)return new c.A({wkid:t});if(e=String(e).trim(),(0,P.jp)(e))return new c.A({wkt2:e});const s=e.toUpperCase();if(s.startsWith("COMPD_CS")){if(!s.includes("VERTCS")||!s.includes("GEOGCS")&&!s.startsWith("PROJCS"))return null;const i=s.indexOf("VERTCS"),n=s.indexOf("PROJCS"),a=n>-1?n:s.indexOf("GEOGCS");if(-1===a)return null;const r=e.slice(a,e.lastIndexOf("]",i)+1).trim(),o=e.slice(i,e.lastIndexOf("]")).trim();t=L(r);const l=new c.A(t?{wkid:t}:{wkt:r}),f=L(o);return f&&(l.vcsWkid=f),l}return s.startsWith("GEOGCS")||s.startsWith("PROJCS")?(t=L(e),new c.A(0!==t?{wkid:t}:{wkt:e})):null}function L(e){const t=e.replaceAll("]","[").replaceAll('"',"").split("[").map(e=>e.trim()).filter(e=>""!==e),s=t[t.length-1].split(","),i=s[0]?.toLowerCase();if(("epsg"===i||"esri"===i)&&e.endsWith('"]]')){const e=Number(s[1]);if(!isNaN(e)&&0!==e)return e}return 0}function z(e){if("pamdataset"!==e?.documentElement.tagName?.toLowerCase())return{};const t={spatialReference:null,transform:null,metadata:{},rasterBands:[],statistics:null,histograms:null};e.documentElement.childNodes.forEach(e=>{if(1===e.nodeType)if((0,B.g7)(e,"SRS")){if(!t.spatialReference){const s=(0,B.mX)(e);t.spatialReference=E(s)}}else if((0,B.g7)(e,"Metadata"))if("xml:ESRI"===e.getAttribute("domain")){const{spatialReference:s,transform:i}=function(e){const t=(0,B.V6)(e,"GeodataXform"),s=E((0,B.v7)(t,"SpatialReference/WKID")||(0,B.mX)(t,"SpatialReference/WKT"));if("typens:PolynomialXform"!==t.getAttribute("xsi:type"))return{spatialReference:s,transform:null};const i=(0,B.v7)(t,"PolynomialOrder")??1,n=(0,B.Ui)(t,"CoeffX/Double"),a=(0,B.Ui)(t,"CoeffY/Double"),r=(0,B.Ui)(t,"InverseCoeffX/Double"),o=(0,B.Ui)(t,"InverseCoeffY/Double"),l=N(n,a),c=N(r,o);return{spatialReference:s,transform:l&&c&&l.length&&c.length?new D.A({spatialReference:s,polynomialOrder:i,forwardCoefficients:l,inverseCoefficients:c}):null}}(e);t.transform=i,t.spatialReference||(t.spatialReference=s)}else(0,B.IC)(e,"MDI").forEach(e=>t.metadata[e.getAttribute("key")]=(0,B.mX)(e));else if((0,B.g7)(e,"PAMRasterBand")){const s=function(e){const t=(0,B.v7)(e,"NoDataValue"),s=(0,B.V6)(e,"Histograms/HistItem"),i=(0,B.v7)(s,"HistMin"),n=(0,B.v7)(s,"HistMax"),a=(0,B.v7)(s,"BucketCount"),r=(0,B.mX)(s,"HistCounts")?.split("|").map(e=>Number(e));let o,l,c,f;(0,B.IC)(e,"Metadata/MDI").forEach(e=>{const t=Number(e.textContent??e.nodeValue);switch(e.getAttribute("key").toUpperCase()){case"STATISTICS_MINIMUM":o=t;break;case"STATISTICS_MAXIMUM":l=t;break;case"STATISTICS_MEAN":c=t;break;case"STATISTICS_STDDEV":f=t}});const u=(0,B.v7)(e,"Metadata/SourceBandIndex");return{noDataValue:t,histogram:r?.length&&null!=i&&null!=n?{min:i,max:n,size:a||r.length,counts:r}:null,sourceBandIndex:u,statistics:null!=o&&null!=l?{min:o,max:l,avg:c,stddev:f}:null}}(e);null!=s.sourceBandIndex&&null==t.rasterBands[s.sourceBandIndex]?t.rasterBands[s.sourceBandIndex]=s:t.rasterBands.push(s)}});const s=t.rasterBands;if(s.length){const e=!!s[0].statistics;t.statistics=e?s.map(e=>e.statistics).filter(F.Ru):null;const i=!!s[0].histogram;t.histograms=i?s.map(e=>e.histogram).filter(F.Ru):null}return t}var U=s(5154);let J=class extends r.A{fetchRawTile(e,t,s,i={}){if(this._imageBlob){const{blockWidth:i,blockHeight:n}=this.rasterInfo.storageInfo;return this.decodePixelBlock(this._imageBlob,{tileSize:[i,n],tileIndex:[e,t,s],canvasUsage:"canvas-only",cloneSource:!0,skipStatistics:!0})}return this._inMemoryRaster.fetchRawTile(e,t,s,i)}async _open(e){const t=await this._fetchData(e);if(null==t)throw new i.A("image-aux-raster:open","the data cannot be decoded");let{spatialReference:s,statistics:n,histograms:a,transform:r}=await this._fetchAuxiliaryData(e);const o=!s;o&&(s=new c.A({wkid:3857})),a?.length&&null==n&&(n=(0,S.Pg)(a));const{width:f,height:u}=t;let h=new l.A({xmin:-.5,ymin:.5-u,xmax:f-.5,ymax:.5,spatialReference:s});const p=r?r.forwardTransform(h):h;let d=!0;if(r){const e=r.forwardCoefficients;d=e&&0===e[1]&&0===e[2],d&&(r=null,h=p)}const m=new M({preGenerateTiles:!1,source:{extent:p,nativeExtent:h,transform:r,pixelBlocks:[t],statistics:n,histograms:a,keyProperties:{DateType:"Processed"},isPseudoSpatialReference:o},ioConfig:{sampling:"closest",skipStatistics:!0}});this.ioConfig.skipMapInfo&&(m.ioConfig.skipMapInfo=!0),await m.open(),m.source=null,this._set("rasterInfo",m.rasterInfo),this._inMemoryRaster=m}async _fetchData(e){const{data:t}=await this.request(this.url,{responseType:"array-buffer",signal:e?.signal}),s=(0,U.g)(t);if("jpg"!==s&&"png"!==s&&"gif"!==s&&"bmp"!==s)throw new i.A("image-aux-raster:open","the data is not a supported format");this._set("datasetFormat",s.toUpperCase());const n=s.toLowerCase();try{const e=await this.decodePixelBlock(t,{format:n,canvasUsage:"canvas-only",cloneSource:!0,skipStatistics:!0});return this._imageBlob=t,e}catch{return this.decodePixelBlock(t,{format:n,canvasUsage:"no-canvas",skipStatistics:!0})}}async _fetchAuxiliaryData(e){const t=e?.signal,{skipExtensions:s=[],skipMapInfo:i}=this.ioConfig,n=i||s.includes("aux.xml")?null:this.request(this.url+".aux.xml",{responseType:"xml",signal:t}),a=this.datasetFormat,r="JPG"===a?"jgw":"PNG"===a?"pgw":"BMP"===a?"bpw":null,o=r&&s.includes(r)?null:this.request(this.url.slice(0,this.url.lastIndexOf("."))+"."+r,{responseType:"text",signal:t}),l=await(0,v.Lx)([n,o]);if(t?.aborted)throw(0,v.NK)();const c=z(l[0].value?.data);if(!c.transform){const e=l[1].value?l[1].value.data.split("\n").slice(0,6).map(e=>Number(e)):null;c.transform=6===e?.length?new D.A({forwardCoefficients:[e[4],e[5],e[0],-e[1],e[2],-e[3]]}):null}return c}};(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],J.prototype,"datasetFormat",void 0),J=(0,n.Cg)([(0,a.$K)("esri.layers.raster.datasets.ImageAuxRaster")],J);const H=J;var G=s(97768),q=s(84952),j=s(86738),V=s(75414),W=s(20223),Z=s(87045),X=s(25943),$=s(82371);let Y=class extends r.A{constructor(){super(...arguments),this._levelOffset=0,this._tilemapCache=null,this._slices=null,this.datasetFormat="RasterTileServer",this.tileType=null}async fetchRawTile(e,t,s,i={}){const{storageInfo:n,extent:a}=this.rasterInfo,{transposeInfo:r}=n,o=null!=r&&!!i.transposedVariableName;if(this._slices&&!o&&null==i.sliceId)return null;const l=o?0:n.maximumPyramidLevel-e+this._levelOffset,c=`${this.url}/tile/${l}/${t}/${s}`,f={...this._slices?o?{variable:i.transposedVariableName}:{sliceId:i.sliceId||0}:null,...i.refreshParameters};let u,h;if(n.isBsqTile){const e=(i.bandIds?.length?i.bandIds:[0,1,2]).map(e=>this.request(c,{query:{...f,bandId:e},responseType:"array-buffer",signal:i.signal})),t=await Promise.all(e),s=t.map(e=>e.data.byteLength).reduce((e,t)=>e+t),n=new Uint8Array(s);h=[];let a=0;for(const{data:e}of t)h.push(a),n.set(new Uint8Array(e),a),a+=e.byteLength;u=n.buffer}else u=(await this.request(c,{query:f,responseType:"array-buffer",signal:i.signal})).data;if(!u)return null;const{tileInfo:p}=n,d=o?r.tileSize:p.size,m=/^(mixed|jp)/i.test(p.format),g=await this.decodePixelBlock(u,{width:d[0],height:d[1],planes:h?.length,offsets:h,pixelType:null,isPoint:"Elevation"===this.tileType,returnInterleaved:o,noDataValue:this.rasterInfo.noDataValue,applyJpegMask:m});if(null==g)return null;const y=n.blockBoundary[e];if("jpg"!==n.compression||s>y.minCol&&s<y.maxCol&&t>y.minRow&&t<y.maxRow)return g;const{origin:x,blockWidth:w,blockHeight:I}=n,{x:v,y:b}=this.getPyramidPixelSize(e),S=Math.round((a.xmin-x.x)/v)%w,T=Math.round((a.xmax-x.x)/v)%w||w,A=Math.round((x.y-a.ymax)/b)%I,R=Math.round((x.y-a.ymin)/b)%I||I,M=s===y.minCol?S:0,O=t===y.minRow?A:0,k=s===y.maxCol?T:w,_=t===y.maxRow?R:I;return(0,C.z$)(g,{x:M,y:O},{width:k-M,height:_-O}),g}getSliceIndex(e){if(!this._slices||null==e||0===e.length)return null;const t=e;for(let e=0;e<this._slices.length;e++){const s=this._slices[e].multidimensionalDefinition;if(s.length===t.length&&!s.some(e=>{const s=t.find(t=>e.variableName===t.variableName&&t.dimensionName===e.dimensionName);return!s||(Array.isArray(e.values[0])?`${e.values[0][0]}-${e.values[0][1]}`:e.values[0])!==(Array.isArray(s.values[0])?`${s.values[0][0]}-${s.values[0][1]}`:s.values[0])}))return e}return null}async fetchVariableStatisticsHistograms(e,t){const s=this.request(this.url+"/statistics",{query:{variable:e,f:"json"},signal:t}).then(e=>e.data?.statistics),i=this.request(this.url+"/histograms",{query:{variable:e,f:"json"},signal:t}).then(e=>e.data?.histograms),n=await Promise.all([s,i]);return n[0]&&n[0].forEach(e=>{e.avg=e.mean,e.stddev=e.standardDeviation}),n[1]?.[0]?.counts?.length||(n[1]=null),{statistics:n[0]||null,histograms:n[1]||null}}async computeBestPyramidLevelForLocation(e,t={}){if(!this._tilemapCache)return 0;let s=this.identifyPixelLocation(e,0,t.datumTransformation);if(null===s)return null;let i=0;const{maximumPyramidLevel:n}=this.rasterInfo.storageInfo;let a=n-i+this._levelOffset;const r=s.srcLocation;for(;a>=0;){try{if("available"===await this._tilemapCache.fetchAvailability(a,s.row,s.col,t))break}catch{}if(a--,i++,s=this.identifyPixelLocation(r,i,t.datumTransformation),null===s)return null}return-1===a||null==s?null:i}async _open(e){const t=e?.signal,s=this.sourceJSON?{data:this.sourceJSON}:await this.request(this.url,{query:{f:"json"},signal:t});s.ssl&&(this.url=this.url.replace(/^http:/i,"https:"));const n=s.data;if(this.sourceJSON=n,!n)throw new i.A("imageserverraster:open","cannot initialize tiled image service, missing service info");if(!n.tileInfo)throw new i.A("imageserverraster:open","use ImageryLayer to open non-tiled image services");this._fixScaleInServiceInfo(),this.tileType=n.cacheType,null==this.tileType&&(["jpg","jpeg","png","png8","png24","png32","mixed"].includes(n.tileInfo.format.toLowerCase())?this.tileType="Map":"lerc"===n.tileInfo.format.toLowerCase()?this.tileType="Elevation":this.tileType="Raster"),this.datasetName=n.name?.slice(n.name.indexOf("/")+1)??"";const a=await this._fetchRasterInfo({signal:t});if(null==a)throw new i.A("image-server-raster:open","cannot initialize image service");(0,$.E9)(a,n);const r="Map"===this.tileType?function(e,t){if(!e)return null;const{minScale:s,maxScale:i,minLOD:n,maxLOD:a}=t;if(null!=n&&null!=a)return Z.A.fromJSON({...e,lods:e.lods.filter(({level:e})=>null!=e&&e>=n&&e<=a)});if(0!==s&&0!==i){const t=e=>Math.round(1e4*e)/1e4,n=s?t(s):1/0,a=i?t(i):-1/0;return Z.A.fromJSON({...e,lods:e.lods.filter(e=>{const s=t(e.scale);return s<=n&&s>=a})})}return Z.A.fromJSON(e)}(n.tileInfo,n):Z.A.fromJSON(n.tileInfo);(0,G.Lw)(r);const[o,l]=this._computeMinMaxLOD(a,r),{extent:c,pixelSize:f}=a,u=.001*Math.min(f.x,f.y);(f.x!==f.y||Math.abs(o.resolution-f.x)>u)&&(f.x=f.y=o.resolution,a.width=Math.ceil((c.xmax-c.xmin)/f.x-.1),a.height=Math.ceil((c.ymax-c.ymin)/f.y-.1));const h=o.level-l.level,[p,d]=r.size,m=[],g=[],{lods:y}=r;y.forEach((e,t)=>{e.level>=l.level&&e.level<=o.level&&m.push({x:e.resolution,y:e.resolution}),t<y.length-1&&g.push(Math.round(10*e.resolution/y[t+1].resolution)/10)}),m.sort((e,t)=>e.x-t.x);const x=this.computeBlockBoundary(c,p,d,r.origin,m,h),w=m.length>1?m.slice(1):null;let I;n.transposeInfo&&(I={tileSize:[n.transposeInfo.rows,n.transposeInfo.cols],packetSize:a.keyProperties?._yxs.PacketSize??0});const v=g.length<=1||g.length>=3&&g.slice(0,-1).every(e=>e===g[0])?g[0]??2:Math.round(10/(l.resolution/o.resolution)**(-1/h))/10,b=!!n.bsq&&"Raster"===this.tileType;if(a.storageInfo=new W.A({blockWidth:r.size[0],blockHeight:r.size[1],pyramidBlockWidth:r.size[0],pyramidBlockHeight:r.size[1],pyramidResolutions:w,pyramidScalingFactor:v,compression:r.format,origin:r.origin,firstPyramidLevel:1,maximumPyramidLevel:h,tileInfo:r,isBsqTile:b,transposeInfo:I,blockBoundary:x}),function(e){const{extent:t,spatialReference:s}=e;t.xmin>-1&&t.xmax>181&&s?.wkid&&s.isGeographic&&(e.nativeExtent=e.extent,e.transform=new V.A,e.extent=e.transform.forwardTransform(t))}(a),this._set("rasterInfo",a),n.capabilities.toLowerCase().includes("tilemap")){const e={tileInfo:a.storageInfo.tileInfo,parsedUrl:(0,q.An)(this.url),url:this.url,tileServers:[]};this._tilemapCache=new X.d({layer:e})}}async _fetchRasterInfo(e){const t=this.sourceJSON;if("Map"===this.tileType){const e=t.fullExtent||t.extent,s=Math.ceil((e.xmax-e.xmin)/t.pixelSizeX-.1),i=Math.ceil((e.ymax-e.ymin)/t.pixelSizeY-.1),n=c.A.fromJSON(t.spatialReference||e.spatialReference),a=new j.A({x:t.pixelSizeX,y:t.pixelSizeY,spatialReference:n});return new A.A({width:s,height:i,bandCount:3,extent:l.A.fromJSON(e),spatialReference:n,pixelSize:a,pixelType:"u8",statistics:null,keyProperties:{DataType:"processed"}})}const s={...e,query:{...this.ioConfig.customFetchParameters,f:"json"}},i=(0,$.Tw)(this.url,this.sourceJSON,s),n=t.hasMultidimensions?this.request(`${this.url}/slices`,s).then(e=>e.data?.slices).catch(()=>null):null,a=await Promise.all([i,n]);return this._slices=a[1],a[0]}_fixScaleInServiceInfo(){const{sourceJSON:e}=this;e.minScale&&e.minScale<0&&(e.minScale=0),e.maxScale&&e.maxScale<0&&(e.maxScale=0)}_computeMinMaxLOD(e,t){const{pixelSize:s}=e,i=.5/e.width*s.x,{lods:n}=t,a=t.lodAt(Math.max.apply(null,n.map(e=>e.level))),r=t.lodAt(Math.min.apply(null,n.map(e=>e.level))),{tileType:o}=this;if("Map"===o)return this._levelOffset=n[0].level,[a,r];if("Raster"===o)return[n.find(e=>e.resolution===s.x)??a,r];const{minScale:l,maxScale:c}=this.sourceJSON;let f=a;c>0&&(f=n.find(e=>Math.abs(e.scale-c)<i),f||(f=n.filter(e=>e.scale>c).sort((e,t)=>e.scale>t.scale?1:-1)[0]??a));let u=r;return l>0&&(u=n.find(e=>Math.abs(e.scale-l)<i)??r,this._levelOffset=u.level-r.level),[f,u]}};(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],Y.prototype,"datasetFormat",void 0),(0,n.Cg)([(0,a.MZ)()],Y.prototype,"tileType",void 0),Y=(0,n.Cg)([(0,a.$K)("esri.layers.raster.datasets.ImageServerRaster")],Y);const K=Y;var Q=s(10713);const ee=new Map([["byte","u8"],["signedbyte","s8"],["int8","s8"],["uint8","u8"],["int16","s16"],["uint16","u16"],["int32","s32"],["uint32","u32"],["float32","f32"],["float64","f64"],["double64","f64"]]),te=new Map;te.set("none",{blobExtension:".til",isOneSegment:!0,decoderFormat:"bip"}),te.set("lerc",{blobExtension:".lrc",isOneSegment:!1,decoderFormat:"lerc"}),te.set("deflate",{blobExtension:".pzp",isOneSegment:!0,decoderFormat:"deflate"}),te.set("jpeg",{blobExtension:".pjg",isOneSegment:!0,decoderFormat:"jpg"}),te.set("qb3",{blobExtension:".pq3",isOneSegment:!0,decoderFormat:"qb3"});let se=class extends r.A{constructor(){super(...arguments),this._files=null,this._storageIndex=null,this._isBsq=!1,this.datasetFormat="MRF"}async fetchRawTile(e,t,s,i={}){const{blockWidth:n,blockHeight:a,blockBoundary:r}=this.rasterInfo.storageInfo,o=r[e];if(!o||o.maxRow<t||o.maxCol<s||o.minRow>t||o.minCol>s)return null;const{bandCount:l,pixelType:c}=this.rasterInfo,{ranges:f,actualTileWidth:u,actualTileHeight:p}=this._getTileLocation(e,t,s);if(!f||0===f.length)return null;if(f.some(e=>e.from>e.to)){const e=new Uint8Array(n*a);return new h.A({width:n,height:a,pixels:void 0,mask:e,validPixelCount:0})}const{bandIds:d}=this.ioConfig,m=this._getBandSegmentCount(),g=[];let y=0;for(y=0;y<m;y++)d&&!d.includes(y)||g.push(this.request(this._files.data,{range:{from:f[y].from,to:f[y].to},responseType:"array-buffer",signal:i.signal}));const x=await Promise.all(g),w=x.map(e=>e.data.byteLength).reduce((e,t)=>e+t),I=new Uint8Array(w),v=[];let b=0;for(y=0;y<m;y++)v.push(b),I.set(new Uint8Array(x[y].data),b),b+=x[y].data.byteLength;const C=te.get(this.rasterInfo.storageInfo.compression).decoderFormat,S=await this.decodePixelBlock(I.buffer,{width:n,height:a,format:C,planes:d?.length||l,offsets:v,pixelType:c}).catch(()=>null);if(null==S)return null;let{noDataValue:T}=this.rasterInfo;if(null!=T&&"lerc"!==C&&!S.mask&&(T=T[0],null!=T)){const e=S.width*S.height,t=new Uint8Array(e);if(Math.abs(T)>1e24)for(y=0;y<e;y++)Math.abs((S.pixels[0][y]-T)/T)>1e-6&&(t[y]=1);else for(y=0;y<e;y++)S.pixels[0][y]!==T&&(t[y]=1);S.mask=t}let A=0,R=0;if(u!==n||p!==a){let e=S.mask;if(e)for(y=0;y<a;y++)if(R=y*n,y<p)for(A=u;A<n;A++)e[R+A]=0;else for(A=0;A<n;A++)e[R+A]=0;else for(e=new Uint8Array(n*a),S.mask=e,y=0;y<p;y++)for(R=y*n,A=0;A<u;A++)e[R+A]=1}return S}async _open(e){this.datasetName=this.url.slice(this.url.lastIndexOf("/")+1);const t=e?e.signal:null,s=await this.request(this.url,{responseType:"xml",signal:t}),{rasterInfo:i,files:n}=this._parseHeader(s.data),{skipMapInfo:a,skipExtensions:r=[]}=this.ioConfig;if(!r.includes("aux.xml")&&!a){const t=await this._fetchAuxiliaryData(e);null!=t&&(i.statistics=t.statistics??i.statistics,i.histograms=t.histograms,t.histograms&&null==i.statistics&&(i.statistics=(0,S.Pg)(t.histograms)))}a&&this.updateImageSpaceRasterInfo(i),this._set("rasterInfo",i),this._files=n;const o=await this.request(n.index,{responseType:"array-buffer",signal:t});this._storageIndex=function(e){if(e.byteLength%16>0)throw new Error("invalid array buffer must be multiples of 16");let t;if(Q.Z){const s=new Uint8Array(e),i=new ArrayBuffer(e.byteLength),n=new Uint8Array(i);for(let t=0;t<e.byteLength/4;t++)for(let e=0;e<4;e++)n[4*t+e]=s[4*t+3-e];t=new Uint32Array(i)}else t=new Uint32Array(e);return t}(o.data);const{blockWidth:l,blockHeight:c}=this.rasterInfo.storageInfo,f=this.rasterInfo.storageInfo.pyramidScalingFactor,{width:u,height:h}=this.rasterInfo,p=[],d=this._getBandSegmentCount();let m=0,g=-1;for(;m<this._storageIndex.length;){g++;const e=Math.ceil(u/l/f**g)-1,t=Math.ceil(h/c/f**g)-1;m+=(e+1)*(t+1)*d*4,p.push({maxRow:t,maxCol:e,minCol:0,minRow:0})}this.rasterInfo.storageInfo.blockBoundary=p,g>0&&(this.rasterInfo.storageInfo.firstPyramidLevel=1,this.rasterInfo.storageInfo.maximumPyramidLevel=g),this.updateTileInfo()}_getBandSegmentCount(){return this._isBsq?this.rasterInfo.bandCount:1}_getTileLocation(e,t,s){const{blockWidth:i,blockHeight:n,pyramidScalingFactor:a}=this.rasterInfo.storageInfo,{width:r,height:o}=this.rasterInfo,l=this._getBandSegmentCount();let c,f,u,h=0,p=0;for(u=0;u<e;u++)p=a**u,c=Math.ceil(r/i/p),f=Math.ceil(o/n/p),h+=c*f;p=a**e,c=Math.ceil(r/i/p),f=Math.ceil(o/n/p),h+=t*c+s,h*=4*l;const d=this._storageIndex.subarray(h,h+4*l);let m=0,g=0;const y=[];for(let e=0;e<l;e++)m=d[4*e]*2**32+d[4*e+1],g=m+d[4*e+2]*2**32+d[4*e+3]-1,y.push({from:m,to:g});return{ranges:y,actualTileWidth:s<c-1?i:Math.ceil(r/p)-i*(c-1),actualTileHeight:t<f-1?n:Math.ceil(o/p)-n*(f-1)}}_parseHeader(e){const t=(0,B.V6)(e,"MRF_META/Raster");if(!t)throw new i.A("mrf:open","not a valid MRF format");const s=(0,B.V6)(t,"Size"),n=parseInt(s.getAttribute("x"),10),a=parseInt(s.getAttribute("y"),10),r=parseInt(s.getAttribute("c"),10),o=((0,B.mX)(t,"Compression")||"none").toLowerCase();if(!te.has(o))throw new i.A("mrf:open","currently does not support compression "+o);const f=(0,B.mX)(t,"DataType")||"UInt8",u=ee.get(f.toLowerCase());if(null==u)throw new i.A("mrf:open","currently does not support pixel type "+f);const h=(0,B.V6)(t,"PageSize"),p=parseInt(h.getAttribute("x"),10),d=parseInt(h.getAttribute("y"),10),m=h.getAttribute("c"),g=m?m===String(r):te.get(o).isOneSegment;this._isBsq=!g;const y=(0,B.V6)(t,"DataValues");let x;if(y){const e=y.getAttribute("NoData");null!=e&&(x=e.trim().split(" ").map(e=>parseFloat(e)))}if((0,B.V6)(e,"MRF_META/CachedSource"))throw new i.A("mrf:open","currently does not support MRF referencing other data files");const w=(0,B.V6)(e,"MRF_META/GeoTags"),I=(0,B.V6)(w,"BoundingBox");let v,b=!1;if(null!=I){const e=parseFloat(I.getAttribute("minx")),t=parseFloat(I.getAttribute("miny")),s=parseFloat(I.getAttribute("maxx")),i=parseFloat(I.getAttribute("maxy")),n=(0,B.mX)(w,"Projection")||"";let a=c.A.WGS84;if("LOCAL_CS[]"!==n)if(n.toLowerCase().startsWith("epsg:")){const e=Number(n.slice(5));isNaN(e)||0===e||(a=new c.A({wkid:e}))}else a=E(n)??c.A.WGS84;else b=!0,a=new c.A({wkid:3857});v=new l.A(e,t,s,i),v.spatialReference=a}else b=!0,v=new l.A({xmin:-.5,ymin:.5-a,xmax:n-.5,ymax:.5,spatialReference:new c.A({wkid:3857})});const C=(0,B.V6)(e,"MRF_META/Rsets"),S=parseInt(C?.getAttribute("scale")||"2",10),T=v.spatialReference,R=new W.A({origin:new j.A({x:v.xmin,y:v.ymax,spatialReference:T}),blockWidth:p,blockHeight:d,pyramidBlockWidth:p,pyramidBlockHeight:d,compression:o,pyramidScalingFactor:S}),M=new j.A({x:v.width/n,y:v.height/a,spatialReference:T}),O=new A.A({width:n,height:a,extent:v,isPseudoSpatialReference:b,spatialReference:T,bandCount:r,pixelType:u,pixelSize:M,noDataValue:x,storageInfo:R}),k=this._getAuxFullPath((0,B.mX)(t,"DataFile")),_=this._getAuxFullPath((0,B.mX)(t,"IndexFile"));return{rasterInfo:O,files:{mrf:this.url,index:_||this.url.replace(".mrf",".idx"),data:k||this.url.replace(".mrf",te.get(o).blobExtension)}}}_getAuxFullPath(e){return e?e.includes("\\")?null:e.includes("/")?e.startsWith(new URL(this.url).origin)?e:null:`${this.url.slice(0,this.url.lastIndexOf("/"))}/${e}`:null}async _fetchAuxiliaryData(e){try{const{data:t}=await this.request(this.url+".aux.xml",{responseType:"xml",signal:e?.signal});return z(t)}catch{return null}}};(0,n.Cg)([(0,a.MZ)()],se.prototype,"_files",void 0),(0,n.Cg)([(0,a.MZ)()],se.prototype,"_storageIndex",void 0),(0,n.Cg)([(0,a.MZ)()],se.prototype,"_isBsq",void 0),(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],se.prototype,"datasetFormat",void 0),se=(0,n.Cg)([(0,a.$K)("esri.layers.raster.datasets.MRFRaster")],se);const ie=se;s(44208);var ne=s(53966),ae=s(9334);function re(e){const t=e.fields,s=e.records,i=t.some(e=>"oid"===e.name.toLowerCase())?"OBJECTID":"OID",n=[{name:i,type:"esriFieldTypeOID",alias:"OID"}].concat(t.map(e=>({name:e.name,type:"esriFieldType"+e.typeName,alias:e.name}))),a=n.map(e=>e.name),r=[];let o=0,l=0;return s.forEach(e=>{const t={};for(t[i]=o++,l=1;l<a.length;l++)t[a[l]]=e[l-1];r.push({attributes:t})}),{displayFieldName:"",fields:n,features:r}}class oe{static get supportedVersions(){return[5]}static parse(e){const t=new DataView(e),s=3&t.getUint8(0);if(3!==s)return{header:{version:s},recordSet:null};const i=t.getUint32(4,!0),n=t.getUint16(8,!0),a=t.getUint16(10,!0),r={version:s,recordCount:i,headerByteCount:n,recordByteCount:a};let o=32;const l=[],c=[];let f;if(3===s){for(;13!==t.getUint8(o);)f=String.fromCharCode(t.getUint8(o+11)).trim(),l.push({name:(0,ae.w)(new Uint8Array(e,o,11)),type:f,typeName:["String","Date","Double","Boolean","String","Integer"][["C","D","F","L","M","N"].indexOf(f)],length:t.getUint8(o+16)}),o+=32;if(o+=1,l.length>0)for(;c.length<i&&e.byteLength-o>a;){const s=[];32===t.getUint8(o)?(o+=1,l.forEach(t=>{if("C"===t.type)s.push((0,ae.w)(new Uint8Array(e,o,t.length)).trim());else if("N"===t.type)s.push(parseInt(String.fromCharCode.apply(null,new Uint8Array(e,o,t.length)).trim(),10));else if("F"===t.type)s.push(parseFloat(String.fromCharCode.apply(null,new Uint8Array(e,o,t.length)).trim()));else if("D"===t.type){const i=String.fromCharCode.apply(null,new Uint8Array(e,o,t.length)).trim();s.push(new Date(parseInt(i.slice(0,4),10),parseInt(i.slice(4,6),10)-1,parseInt(i.slice(6,8),10)))}o+=t.length}),c.push(s)):o+=a}}return{header:r,fields:l,records:c,recordSet:re({fields:l,records:c})}}}var le=s(44094),ce=s(94213);let fe=class extends r.A{constructor(){super(...arguments),this._files=null,this._headerInfo=null,this._bufferSize=1048576,this._chunkSize=10485760,this.datasetFormat="TIFF"}async fetchRawTile(e,t,s,i={}){if(!this._headerInfo?.isSupported||this.isBlockOutside(e,t,s))return null;const n=await this._fetchRawTiffTile(e,t,s,!1,i);if(null!=n&&this._headerInfo.hasMaskBand){const a=await this._fetchRawTiffTile(e,t,s,!0,i);null!=a&&a.pixels[0]instanceof Uint8Array&&(n.mask=a.pixels[0])}return n}async _open(e){const t=e?e.signal:null,{data:s}=await this.request(this.url,{range:{from:0,to:this._bufferSize},responseType:"array-buffer",signal:t});if(!s)throw new i.A("tiffraster:open","failed to open url "+this.url);this.datasetName=this.url.slice(this.url.lastIndexOf("/")+1,this.url.lastIndexOf("."));const{littleEndian:n,firstIFDPos:a,isBigTiff:r}=(0,le.uT)(s),o=[],f={fileChunk:s,posIFD:a,fileOffset:0};await this._readIFDs(o,f,n,r?8:4,t);const{imageInfo:u,rasterInfo:h}=function(e){const t=(0,le.uc)(e),{width:s,height:i,tileWidth:n,tileHeight:a,planes:r,pixelType:o,compression:f,firstPyramidLevel:u,maximumPyramidLevel:h,pyramidBlockWidth:p,pyramidBlockHeight:d,pyramidResolutions:m,tileBoundary:g,affine:y,metadata:x,colormap:w}=t;let I=E(t.extent.spatialReference?.wkt||t.extent.spatialReference?.wkid),v=!!t.isPseudoGeographic;null==I&&(v=!0,I=new c.A({wkid:3857}));const b=new l.A({...t.extent,spatialReference:I}),C=new j.A(b?{x:b.xmin,y:b.ymax,spatialReference:I}:{x:0,y:0}),S=new W.A({blockWidth:n,blockHeight:a,pyramidBlockWidth:p,pyramidBlockHeight:d,compression:f,origin:C,firstPyramidLevel:u,maximumPyramidLevel:h,pyramidResolutions:m,blockBoundary:g}),T=new j.A({x:(b.xmax-b.xmin)/s,y:(b.ymax-b.ymin)/i,spatialReference:I}),R=x?{BandProperties:x.bandProperties,DataType:x.dataType}:{},M=new A.A({width:s,height:i,bandCount:r,pixelType:o,pixelSize:T,storageInfo:S,spatialReference:I,isPseudoSpatialReference:v,keyProperties:R,extent:b,colormap:w,statistics:x?x.statistics:null});if(y?.length&&(M.nativeExtent=new l.A({xmin:-.5,ymin:.5-i,xmax:s-.5,ymax:.5,spatialReference:I}),M.transform=new D.A({polynomialOrder:1,forwardCoefficients:[y[2]+y[0]/2,y[5]-y[3]/2,y[0],y[3],-y[1],-y[4]]}),M.extent=M.transform.forwardTransform(M.nativeExtent),M.pixelSize=new j.A({x:(b.xmax-b.xmin)/s,y:(b.ymax-b.ymin)/i,spatialReference:I}),S.origin.x=-.5,S.origin.y=.5),m){const{x:e,y:t}=M.pixelSize;m.forEach(s=>{s.x*=e,s.y*=t})}return{imageInfo:t,rasterInfo:M}}(o),p=(0,le.zS)(o),d=(0,le.r9)(o);if(this._headerInfo={littleEndian:n,isBigTiff:r,ifds:o,pyramidIFDs:p,maskIFDs:d,...u},this._set("rasterInfo",h),!u.isSupported)throw new i.A("tiffraster:open","this tiff is not supported: "+u.message);if(!u.tileWidth)throw new i.A("tiffraster:open","none-tiled tiff is not optimized for access, convert to COG and retry.");h.isPseudoSpatialReference&&ne.A.getLogger(this).warn("The spatial reference for this tiff is unsupported. Only EPSG spatial reference codes and Esri WKTs are supported.");const m=o[0].get("PREDICTOR")?.values?.[0],g=o[0].get("SAMPLEFORMAT")?.values?.[0];if(3===g&&2===m)throw new i.A("tiffraster:open","unsupported horizontal difference encoding. Predictor=3 is supported for floating point data");const{skipMapInfo:y,skipExtensions:x=[]}=this.ioConfig;if(!x.includes("aux.xml")&&!y){const t=await this._fetchAuxiliaryMetaData(e);null!=t&&function(e,t){if(t.statistics=e.statistics??t.statistics,t.histograms=e.histograms,e.histograms&&null==t.statistics&&(t.statistics=(0,S.Pg)(e.histograms)),e.transform&&null==t.transform){t.transform=e.transform,t.nativeExtent=t.extent;const s=t.transform.forwardTransform(t.nativeExtent);t.pixelSize=new j.A({x:(s.xmax-s.xmin)/t.width,y:(s.ymax-s.ymin)/t.height,spatialReference:t.spatialReference}),t.extent=s}t.isPseudoSpatialReference&&e.spatialReference&&(t.spatialReference=e.spatialReference,t.extent.spatialReference=t.nativeExtent.spatialReference=t.storageInfo.origin.spatialReference=t.spatialReference)}(t,h)}x.includes("vat.dbf")||1!==h.bandCount||"u8"!==h.pixelType||y||(h.attributeTable=await this._fetchAuxiliaryTable(e),null!=h.attributeTable&&(h.keyProperties.DataType="thematic")),y&&this.updateImageSpaceRasterInfo(h),this.updateTileInfo()}async _validateOrFetchHeaderBuffer(e,t){let{fileChunk:s,fileOffset:i,posIFD:n}=e;return(n+8>=s.byteLength||n<0)&&(i=n+i,s=(await this.request(this.url,{range:{from:i,to:i+this._bufferSize},responseType:"array-buffer",signal:t})).data,n=0),{fileChunk:s,fileOffset:i,posIFD:n}}async _readIFDs(e,t,s,n=4,a){if(!t.posIFD)return null;t=await this._validateOrFetchHeaderBuffer(t,a);const r=await this._readIFD(t,s,ce.NB,n,a);if(!r?.ifd)throw new i.A("tiffraster:open","cannot parse tiff header. failed to open url "+this.url);if(e.push(r.ifd),!r.nextIFD)return null;t.posIFD=r.nextIFD-t.fileOffset,await this._readIFDs(e,t,s,n,a)}async _readIFD(e,t,s=ce.NB,i=4,n){let{fileChunk:a,posIFD:r,fileOffset:o}=e;if(!e.fileChunk)return null;const l=(0,le.JM)(a,t,r,o,s,i);if(l.success){const e=[];if(l.ifd?.forEach(t=>{t.values||e.push(t)}),e.length>0&&await this._fillOffsets(e,t,l.nextIFD,n),l.ifd?.has("GEOKEYDIRECTORY")){const e=l.ifd.get("GEOKEYDIRECTORY"),s=e?.values;if(s&&s.length>4){const i=s[0]+"."+s[1]+"."+s[2];r=e.valueOffset+6-o;const l=await this._validateOrFetchHeaderBuffer({fileChunk:a,posIFD:r,fileOffset:o},n),c=await this._readIFD(l,t,ce.YC,2,n);e.data=c?.ifd,e.data&&e.data.set("GEOTIFFVersion",{id:0,type:2,valueCount:1,valueOffset:null,values:[i]})}}return l}return l.requiredBufferSize?(a=(await this.request(this.url,{range:{from:o,to:o+r+l.requiredBufferSize+8},responseType:"array-buffer",signal:n})).data,a.byteLength<r+l.requiredBufferSize?null:(e.fileChunk=a,e.fileOffset=o,this._readIFD(e,t,s,i,n))):null}async _fillOffsets(e,t,s,i){const n=e.filter(e=>null!=e.offlineOffsetSize);if(0===n.length)return;const a=n.map(e=>e.offlineOffsetSize),r=Math.min.apply(null,a.map(e=>e[0])),o=Math.max.apply(null,a.map(e=>e[0]+e[1]));let l=1===a.length||o-r<=this._bufferSize;if(!l&&a.length>1&&(a.sort((e,t)=>e[0]-t[0]),l=a.reduce((e,t)=>e===t[0]?t[0]+t[1]:0,a[0][0])===o),l){const e=await this._fetchOffsets(r,Math.max(o,r+this._bufferSize),i);return void n.forEach(s=>(0,le.Cr)(e,t,s,r))}const c=n.map(async e=>{const s=e.offlineOffsetSize,n=await this._fetchOffsets(s[0],s[1]+s[0],i);(0,le.Cr)(n,t,e,s[0])});await Promise.all(c)}async _fetchOffsets(e,t,s){const i=[],n=this._chunkSize,a=Math.ceil((t-e)/n);let r=e;for(let e=0;e<a;e++)i.push(this.request(this.url,{range:{from:r,to:e===a-1?t:r+n-1},responseType:"array-buffer",signal:s})),r+=n;const o=await Promise.all(i);if(1===a)return o[0].data;const l=new Uint8Array(t-e+1);for(let e=0;e<a;e++)l.set(new Uint8Array(o[e].data),e*n);return l.buffer}async _fetchRawTiffTile(e,t,s,i,n={}){const a=this._getTileLocation(e,t,s,i);if(!a)return null;const{ranges:r,actualTileWidth:o,actualTileHeight:l,ifd:c}=a,f=r.map(e=>this.request(this.url,{range:e,responseType:"array-buffer",signal:n.signal})),u=await Promise.all(f),h=u.map(e=>e.data.byteLength).reduce((e,t)=>e+t),p=1===u.length?u[0].data:new ArrayBuffer(h),d=[0],m=[0];if(u.length>1){const e=new Uint8Array(p);for(let t=0,s=0;t<u.length;t++){const i=u[t].data;e.set(new Uint8Array(i),s),d[t]=s,s+=i.byteLength,m[t]=i.byteLength}}const{blockWidth:g,blockHeight:y}=this.getBlockWidthHeight(e),x=await this.decodePixelBlock(p,{format:"tiff",customOptions:{headerInfo:this._headerInfo,ifd:c,offsets:d,sizes:m},width:g,height:y,planes:null,pixelType:null});if(null==x)return null;if(o!==g||l!==y){let e=x.mask;if(e)for(let t=0;t<y;t++){const s=t*g;if(t<l)for(let t=o;t<g;t++)e[s+t]=0;else for(let t=0;t<g;t++)e[s+t]=0}else{e=new Uint8Array(g*y),x.mask=e;for(let t=0;t<l;t++){const s=t*g;for(let t=0;t<o;t++)e[s+t]=1}}}return x}_getTileLocation(e,t,s,i=!1){const{firstPyramidLevel:n,blockBoundary:a}=this.rasterInfo.storageInfo,r=0===e?0:e-(n-1),{_headerInfo:o}=this;if(!o)return null;const l=i?o.maskIFDs[r]:0===r?o.ifds[0]:o.pyramidIFDs[r-1];if(!l)return null;const c=(0,le.XO)(l,o),f=(0,le.wc)(l,"TILEOFFSETS"),u=(0,le.wc)(l,"TILEBYTECOUNTS");if(!f?.length||!u?.length)return null;const{minRow:h,minCol:p,maxRow:d,maxCol:m}=a[r];if(t>d||s>m||t<h||s<p)return null;const g=(0,le.LZ)(l,"IMAGEWIDTH"),y=(0,le.LZ)(l,"IMAGELENGTH"),x=(0,le.LZ)(l,"TILEWIDTH"),w=(0,le.LZ)(l,"TILELENGTH"),I=[];if(c){const{bandCount:e}=this.rasterInfo;for(let i=0;i<e;i++){const e=i*(d+1)*(m+1)+t*(m+1)+s;I[i]={from:f[e],to:f[e]+u[e]-1}}}else{const e=t*(m+1)+s;I.push({from:f[e],to:f[e]+u[e]-1})}for(let e=0;e<I.length;e++)if(null==I[e].from||!I[e].to||I[e].to<0)return null;return{ranges:I,ifd:l,actualTileWidth:s===m&&g%x||x,actualTileHeight:t===d&&y%w||w}}async _fetchAuxiliaryMetaData(e){try{const{data:t}=await this.request(this.url+".aux.xml",{responseType:"xml",signal:e?.signal});return z(t)}catch{return null}}async _fetchAuxiliaryTable(e){try{const{data:t}=await this.request(this.url+".vat.dbf",{responseType:"array-buffer",signal:e?.signal}),s=oe.parse(t);return s?.recordSet?O.A.fromJSON(s.recordSet):null}catch{return null}}};(0,n.Cg)([(0,a.MZ)()],fe.prototype,"_files",void 0),(0,n.Cg)([(0,a.MZ)()],fe.prototype,"_headerInfo",void 0),(0,n.Cg)([(0,a.MZ)()],fe.prototype,"_bufferSize",void 0),(0,n.Cg)([(0,a.MZ)()],fe.prototype,"_chunkSize",void 0),(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],fe.prototype,"datasetFormat",void 0),fe=(0,n.Cg)([(0,a.$K)("esri.layers.raster.datasets.TIFFRaster")],fe);const ue=fe,he=new Map;he.set("MRF",{desc:"Meta Raster Format",constructor:ie}),he.set("TIFF",{desc:"GeoTIFF",constructor:ue}),he.set("RasterTileServer",{desc:"Raster Tile Server",constructor:K}),he.set("JPG",{desc:"JPG Raster Format",constructor:H}),he.set("PNG",{desc:"PNG Raster Format",constructor:H}),he.set("GIF",{desc:"GIF Raster Format",constructor:H}),he.set("BMP",{desc:"BMP Raster Format",constructor:H}),he.set("CovJSON",{desc:"COVJSON Raster Format",constructor:_}),he.set("MEMORY",{desc:"In Memory Raster Format",constructor:M});class pe{static get supportedFormats(){const e=new Set;return he.forEach((t,s)=>e.add(s)),e}static async open(e){const{url:t,ioConfig:s,source:n,sourceJSON:a}=e;let r=e.datasetFormat??s?.datasetFormat;null==r&&(t.includes(".")?r=t.slice(t.lastIndexOf(".")+1).toUpperCase():"coverage"===n?.type?.toLowerCase()?r="CovJSON":n?.extent&&n.pixelblocks&&(r="MEMORY")),"OVR"===r||"TIF"===r?r="TIFF":"JPG"===r||"JPEG"===r||"JFIF"===r?r="JPG":"COVJSON"===r&&(r="CovJSON"),t.toLowerCase().includes("/imageserver")&&!t.toLowerCase().includes("/wcsserver")&&(r="RasterTileServer");const o={url:t,source:n,sourceJSON:a,datasetFormat:r,ioConfig:s??{bandIds:null,sampling:null}};if(Object.keys(o).forEach(e=>{null==o[e]&&delete o[e]}),r){if(!this.supportedFormats.has(r))throw new i.A("rasterfactory:open","not a supported format "+r);if("CRF"===r)throw new i.A("rasterfactory:open",`cannot open raster: ${t}`);const s=new(0,he.get(r).constructor)(o);return await s.open({signal:e.signal}),s}const l=Array.from(he.keys()).filter(e=>"CovJSON"!==e&&"Memory"!==e);let c=0;const f=()=>{if(r=l[c++],!r)return null;if("CRF"===r)return null;const t=new(0,he.get(r).constructor)(o);return t.open({signal:e.signal}).then(()=>t).catch(()=>f())};return f()}static register(e,t,s){he.has(e.toUpperCase())||he.set(e.toUpperCase(),{desc:t,constructor:s})}}},10333(e,t,s){s.d(t,{A:()=>r});var i=s(5482),n=s(25482),a=s(91429);let r=class extends n.o{get affectsPixelSize(){return!1}forwardTransform(e){return e}inverseTransform(e){return e}};(0,i.Cg)([(0,a.MZ)()],r.prototype,"affectsPixelSize",null),(0,i.Cg)([(0,a.MZ)({json:{write:!0}})],r.prototype,"spatialReference",void 0),r=(0,i.Cg)([(0,a.$K)("esri.layers.raster.transforms.BaseRasterTransform")],r)},75414(e,t,s){s.d(t,{A:()=>l});var i,n=s(5482),a=s(91429),r=s(10333),o=s(93223);let l=i=class extends r.A{constructor(){super(...arguments),this.type="gcs-shift",this.tolerance=1e-8}forwardTransform(e){return"point"===(e=e.clone()).type?(e.x>180+this.tolerance&&(e.x-=360),e):(e.xmin>=180-this.tolerance?(e.xmax-=360,e.xmin-=360):e.xmax>180+this.tolerance&&(e.xmin=-180,e.xmax=180),e)}inverseTransform(e){return"point"===(e=e.clone()).type?(e.x<-this.tolerance&&(e.x+=360),e):(e.xmin<-this.tolerance&&(e.xmin+=360,e.xmax+=360),e)}clone(){return new i({tolerance:this.tolerance})}};(0,n.Cg)([(0,o.e)({GCSShiftXform:"gcs-shift"})],l.prototype,"type",void 0),(0,n.Cg)([(0,a.MZ)()],l.prototype,"tolerance",void 0),l=i=(0,n.Cg)([(0,a.$K)("esri.layers.raster.transforms.GCSShiftTransform")],l)},43163(e,t,s){s.d(t,{A:()=>d});var i,n=s(5482),a=s(91429),r=s(5443),o=s(86738),l=s(10333),c=s(36005),f=s(43937),u=s(93223);function h(e,t,s){const{x:i,y:n}=t;if(s<2)return{x:e[0]+i*e[2]+n*e[4],y:e[1]+i*e[3]+n*e[5]};if(2===s){const t=i*i,s=n*n,a=i*n;return{x:e[0]+i*e[2]+n*e[4]+t*e[6]+a*e[8]+s*e[10],y:e[1]+i*e[3]+n*e[5]+t*e[7]+a*e[9]+s*e[11]}}const a=i*i,r=n*n,o=i*n,l=a*i,c=a*n,f=i*r,u=n*r;return{x:e[0]+i*e[2]+n*e[4]+a*e[6]+o*e[8]+r*e[10]+l*e[12]+c*e[14]+f*e[16]+u*e[18],y:e[1]+i*e[3]+n*e[5]+a*e[7]+o*e[9]+r*e[11]+l*e[13]+c*e[15]+f*e[17]+u*e[19]}}function p(e,t,s){const{xmin:i,ymin:n,xmax:a,ymax:o,spatialReference:l}=t;let c=[];if(s<2)c.push({x:i,y:o}),c.push({x:a,y:o}),c.push({x:i,y:n}),c.push({x:a,y:n});else{let e=10;for(let t=0;t<e;t++)c.push({x:i,y:n+(o-n)*t/(e-1)}),c.push({x:a,y:n+(o-n)*t/(e-1)});e=8;for(let t=1;t<=e;t++)c.push({x:i+(a-i)*t/e,y:n}),c.push({x:i+(a-i)*t/e,y:o})}c=c.map(t=>h(e,t,s));const f=c.map(e=>e.x),u=c.map(e=>e.y);return new r.A({xmin:Math.min.apply(null,f),xmax:Math.max.apply(null,f),ymin:Math.min.apply(null,u),ymax:Math.max.apply(null,u),spatialReference:l})}let d=i=class extends l.A{constructor(){super(...arguments),this.polynomialOrder=1,this.type="polynomial"}readForwardCoefficients(e,t){const{coeffX:s,coeffY:i}=t;if(!s?.length||!i?.length||s.length!==i.length)return null;const n=[];for(let e=0;e<s.length;e++)n.push(s[e]),n.push(i[e]);return n}writeForwardCoefficients(e,t,s){const i=[],n=[];for(let t=0;t<e?.length;t++)t%2==0?i.push(e[t]):n.push(e[t]);t.coeffX=i,t.coeffY=n}get inverseCoefficients(){let e=this._get("inverseCoefficients");const t=this._get("forwardCoefficients");return!e&&t&&this.polynomialOrder<2&&(e=function(e){const[t,s,i,n,a,r]=e,o=i*r-a*n,l=a*n-i*r;return[(a*s-t*r)/o,(i*s-t*n)/l,r/o,n/l,-a/o,-i/l]}(t)),e}set inverseCoefficients(e){this._set("inverseCoefficients",e)}readInverseCoefficients(e,t){const{inverseCoeffX:s,inverseCoeffY:i}=t;if(!s?.length||!i?.length||s.length!==i.length)return null;const n=[];for(let e=0;e<s.length;e++)n.push(s[e]),n.push(i[e]);return n}writeInverseCoefficients(e,t,s){const i=[],n=[];for(let t=0;t<e?.length;t++)t%2==0?i.push(e[t]):n.push(e[t]);t.inverseCoeffX=i,t.inverseCoeffY=n}get affectsPixelSize(){return this.polynomialOrder>0}forwardTransform(e){if("point"===e.type){const t=h(this.forwardCoefficients,e,this.polynomialOrder);return new o.A({x:t.x,y:t.y,spatialReference:e.spatialReference})}return p(this.forwardCoefficients,e,this.polynomialOrder)}inverseTransform(e){if("point"===e.type){const t=h(this.inverseCoefficients,e,this.polynomialOrder);return new o.A({x:t.x,y:t.y,spatialReference:e.spatialReference})}return p(this.inverseCoefficients,e,this.polynomialOrder)}clone(){return new i({polynomialOrder:this.polynomialOrder,forwardCoefficients:this.forwardCoefficients?[...this.forwardCoefficients]:null,inverseCoefficients:this.inverseCoefficients?[...this.inverseCoefficients]:null})}};(0,n.Cg)([(0,a.MZ)({json:{write:!0}})],d.prototype,"polynomialOrder",void 0),(0,n.Cg)([(0,a.MZ)()],d.prototype,"forwardCoefficients",void 0),(0,n.Cg)([(0,c.w)("forwardCoefficients",["coeffX","coeffY"])],d.prototype,"readForwardCoefficients",null),(0,n.Cg)([(0,f.K)("forwardCoefficients")],d.prototype,"writeForwardCoefficients",null),(0,n.Cg)([(0,a.MZ)({json:{write:!0}})],d.prototype,"inverseCoefficients",null),(0,n.Cg)([(0,c.w)("inverseCoefficients",["inverseCoeffX","inverseCoeffY"])],d.prototype,"readInverseCoefficients",null),(0,n.Cg)([(0,f.K)("inverseCoefficients")],d.prototype,"writeInverseCoefficients",null),(0,n.Cg)([(0,a.MZ)()],d.prototype,"affectsPixelSize",null),(0,n.Cg)([(0,u.e)({PolynomialXform:"polynomial"})],d.prototype,"type",void 0),d=i=(0,n.Cg)([(0,a.$K)("esri.layers.raster.transforms.PolynomialTransform")],d)}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[909,9933],{92009(e,a,r){r.d(a,{L:()=>c});var t=r(70333),n=r(11254),i=r(49186),y=r(17676),l=r(60694),s=r(20655),o=r(80812);async function c(e,a){const r=(0,l.qg)(e);if(!r)throw new i.A("invalid-url","Invalid scene service url");const c={...a,sceneServerUrl:r.url.path,layerId:r.sublayer??void 0};if(c.sceneLayerItem??=await async function(e){const a=(await u(e)).serviceItemId;if(!a)return null;const r=new o.default({id:a,apiKey:e.apiKey}),i=await async function(e){const a=t.id?.findServerInfo(e.sceneServerUrl);if(a?.owningSystemUrl)return a.owningSystemUrl;const r=e.sceneServerUrl.replace(/(.*\/rest)\/.*/i,"$1")+"/info";try{const a=(await(0,n.A)(r,{query:{f:"json"},responseType:"json",signal:e.signal})).data.owningSystemUrl;if(a)return a}catch(e){(0,y.QP)(e)}return null}(e);null!=i&&(r.portal=new s.A({url:i}));try{return await r.load({signal:e.signal})}catch(e){return(0,y.QP)(e),null}}(c),null==c.sceneLayerItem)return L(c.sceneServerUrl.replace("/SceneServer","/FeatureServer"),c);const d=await async function({sceneLayerItem:e,signal:a}){if(!e)return null;try{const r=(await e.fetchRelatedItems({relationshipType:"Service2Service",direction:"reverse"},{signal:a})).find(e=>"Feature Service"===e.type)||null;if(!r)return null;const t=new o.default({portal:r.portal,id:r.id});return await t.load(),t}catch(e){return(0,y.QP)(e),null}}(c);if(!d?.url)throw new i.A("related-service-not-found","Could not find feature service through portal item relationship");c.featureServiceItem=d;const p=await L(d.url,c);return p.portalItem=d,p}async function u(e){if(e.rootDocument)return e.rootDocument;const a={query:{f:"json",...e.customParameters,token:e.apiKey},responseType:"json",signal:e.signal};try{const r=await(0,n.A)(e.sceneServerUrl,a);e.rootDocument=r.data}catch{e.rootDocument={}}return e.rootDocument}async function L(e,a){const r=(0,l.qg)(e);if(!r)throw new i.A("invalid-feature-service-url","Invalid feature service url");const t=r.url.path,y=a.layerId;if(null==y)return{serverUrl:t};const s=u(a),o=a.featureServiceItem?await a.featureServiceItem.fetchData("json"):null,c=(o?.layers?.[0]||o?.tables?.[0])?.customParameters,L=e=>{const r={query:{f:"json",...c},responseType:"json",authMode:e,signal:a.signal};return(0,n.A)(t,r)},d=L("anonymous").catch(()=>L("no-prompt")),[p,S]=await Promise.all([d,s]),f=S?.layers,m=p.data&&p.data.layers;if(!Array.isArray(m))throw new Error("expected layers array");if(Array.isArray(f)){for(let e=0;e<Math.min(f.length,m.length);e++)if(f[e].id===y)return{serverUrl:t,layerId:m[e].id}}else if(null!=y&&y<m.length)return{serverUrl:t,layerId:m[y].id};throw new Error("could not find matching associated sublayer")}},23154(e,a,r){r.d(a,{K:()=>d,Q:()=>y});var t=r(77548),n=r(7861);const i=new Set(["Catalog Layer","Feature Layer","Oriented Imagery Layer"]);async function y(e,a){const{loadContext:r,...i}=a||{},y=r?await r.fetchServiceMetadata(e,i):await(0,n.L)(e,i),l=(0,t.G$)();L(y),o(y);const s={serviceJSON:y,preferredHost:l};if((y.currentVersion??0)<10.5)return s;const c=`${(0,t.$x)()??e}/layers`,u=r?await r.fetchServiceMetadata(c,i):await(0,n.L)(c,i);return L(u),o(u),s.layersJSON={layers:u.layers,tables:u.tables},s}function l(e){const{type:a}=e;return!!a&&i.has(a)}function s(e){return"Table"===e.type}function o(e){e.layers=e.layers?.filter(l),e.tables=e.tables?.filter(s)}function c(e){e.type||="Feature Layer"}function u(e){e.type||="Table"}function L(e){e.layers?.forEach(c),e.tables?.forEach(u)}function d(e){switch(e){case"Feature Layer":case"Table":return"FeatureLayer";case"Oriented Imagery Layer":return"OrientedImageryLayer";case"Catalog Layer":return"CatalogLayer"}return"FeatureLayer"}},75356(e,a,r){r.d(a,{N:()=>S,populateOperationalLayers:()=>u});var t=r(7762),n=(r(44208),r(22429)),i=r(2976),y=r(6345),l=r(80812);function s(e,a){return!(!e.layerType||"ArcGISFeatureLayer"!==e.layerType)&&e.featureCollectionType===a}var o=r(45613),c=r(8947);async function u(e,a,r){if(!a)return;const t=a.map(e=>async function(e,a){return async function(e,a,r){const t=new e;return t.read(a,r.context),"group"===t.type&&("GroupLayer"===a.layerType?await S(t,a,r):p(a)?function(e,a,r){a.itemId&&(e.portalItem=new l.default({id:a.itemId,portal:r?.portal}),e.when(()=>{const t=t=>{const n=t.layerId;f(t,e,a,n,r);const i=a.featureCollection?.layers?.[n];i&&t.read(i,r)};e.layers?.forEach(t),e.tables?.forEach(t)}))}(t,a,r.context):d(a)&&await async function(e,a,r){const t=i.U.FeatureLayer,n=await t(),y=a.featureCollection,l=y?.showLegend,s=y?.layers?.map((t,i)=>{const y=new n;y.read(t,r);const s={...r,ignoreDefaults:!0};return f(y,e,a,i,s),null!=l&&y.read({showLegend:l},s),y});e.layers.addMany(s??[])}(t,a,r.context)),await(0,c.L)(t,r.context),t}(await L(e,a),e,a)}(e,r)),n=await Promise.allSettled(t);for(const a of n)"rejected"===a.status||a.value&&e.add(a.value)}async function L(e,a){const r=a.context,t=(e.layerType||e.type)??a.defaultLayerType;switch(t){case"Feature Collection":case"ArcGISFeatureLayer":if(function(e){return s(e,"notes")}(e)||function(e){return s(e,"markup")}(e))return i.U.MapNotesLayer();if(function(e){return s(e,"route")}(e))return i.U.RouteLayer();if(p(e)){const a=r?.portal;if(e.itemId){const r=new l.default({id:e.itemId,portal:a});await r.load();const t=(await(0,o.n)(r,new n.v)).className||"UnknownLayer";return i.U[t]()}return i.U.UnknownLayer()}return d(e)?i.U.GroupLayer():i.U.FeatureLayer();case"WebTiledLayer":return e.wmtsInfo?.url&&e.wmtsInfo.layerIdentifier?i.U.WMTSLayer():i.U.WebTileLayer();case"WFS":return"2.0.0"!==e.wfsInfo?.version?i.U.UnsupportedLayer():i.U.WFSLayer();default:{const e=(0,y.VH)(r,t);return(0,i.U[e])()}}}function d(e){return"ArcGISFeatureLayer"===e.layerType&&!p(e)&&(e.featureCollection?.layers?.length??0)>1}function p(e){return"Feature Collection"===e.type}async function S(e,a,r){const n=new t.A,i=u(n,Array.isArray(a.layers)?a.layers:[],r);try{try{if(await i,"group"===e.type)return e.layers.addMany(n),e}catch(a){e.destroy();for(const e of n)e.destroy();throw a}}catch(e){throw e}}function f(e,a,r,t,n){e.read({id:`${a.id}-sublayer-${t}`,visibility:r.visibleLayers?.includes(t)??!0},n)}},2976(e,a,r){r.d(a,{U:()=>t});const t={BingMapsLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(6684)]).then(r.bind(r,17029))).default,BuildingSceneLayer:async()=>(await Promise.all([r.e(7632),r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(821),r.e(1733),r.e(1214),r.e(7552),r.e(8399),r.e(1017),r.e(4674),r.e(993),r.e(8589),r.e(7609),r.e(6231),r.e(7005),r.e(3077),r.e(7261),r.e(1427),r.e(2942),r.e(9028)]).then(r.bind(r,82411))).default,CSVLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(821),r.e(1733),r.e(1214),r.e(7552),r.e(8399),r.e(1017),r.e(4079)]).then(r.bind(r,68695))).default,CatalogLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(821),r.e(1733),r.e(1214),r.e(7552),r.e(8399),r.e(4674),r.e(993),r.e(893),r.e(7609),r.e(3636),r.e(9279),r.e(28)]).then(r.bind(r,83508))).default,DimensionLayer:async()=>(await Promise.all([r.e(8278),r.e(3813)]).then(r.bind(r,71493))).default,ElevationLayer:async()=>(await Promise.all([r.e(8278),r.e(9953),r.e(9186),r.e(8732),r.e(5335)]).then(r.bind(r,38732))).default,FeatureLayer:async()=>(await Promise.all([r.e(7632),r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(821),r.e(1733),r.e(1214),r.e(7552),r.e(8399),r.e(1017),r.e(4674),r.e(993),r.e(8589),r.e(7609),r.e(9098)]).then(r.bind(r,18589))).default,GaussianSplatLayer:async()=>(await Promise.all([r.e(8278),r.e(6231),r.e(9716),r.e(6475)]).then(r.bind(r,36475))).default,GeoJSONLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(821),r.e(1733),r.e(1214),r.e(7552),r.e(8399),r.e(1017),r.e(3197)]).then(r.bind(r,15481))).default,GeoRSSLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(9657)]).then(r.bind(r,63201))).default,GroupLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(5613),r.e(6569)]).then(r.bind(r,85989))).default,ImageryLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(821),r.e(1733),r.e(7552),r.e(893),r.e(6231),r.e(3892),r.e(9863),r.e(3356),r.e(8434),r.e(9397)]).then(r.bind(r,87772))).default,ImageryTileLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(821),r.e(1733),r.e(6231),r.e(3892),r.e(9863),r.e(7373),r.e(3356),r.e(9235),r.e(3500),r.e(1003),r.e(233),r.e(7705)]).then(r.bind(r,90561))).default,IntegratedMesh3DTilesLayer:async()=>(await Promise.all([r.e(8278),r.e(9953),r.e(6231),r.e(9716),r.e(8325),r.e(9544)]).then(r.bind(r,61528))).default,IntegratedMeshLayer:async()=>(await Promise.all([r.e(8278),r.e(9953),r.e(6231),r.e(9716),r.e(1427),r.e(8325),r.e(7464)]).then(r.bind(r,74660))).default,KMLLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(821),r.e(1733),r.e(1214),r.e(6847)]).then(r.bind(r,162))).default,KnowledgeGraphLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(821),r.e(1733),r.e(1214),r.e(7552),r.e(8399),r.e(1017),r.e(993),r.e(708),r.e(9696),r.e(2031),r.e(5752),r.e(3892),r.e(217),r.e(3902),r.e(2655),r.e(9153),r.e(8692)]).then(r.bind(r,28692))).default,LineOfSightLayer:async()=>(await Promise.all([r.e(8278),r.e(6231),r.e(4807),r.e(9695)]).then(r.bind(r,49695))).default,LinkChartLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(821),r.e(1733),r.e(1214),r.e(7552),r.e(8399),r.e(1017),r.e(993),r.e(708),r.e(9696),r.e(2031),r.e(5752),r.e(3892),r.e(217),r.e(3902),r.e(2655),r.e(9153),r.e(3309)]).then(r.bind(r,93309))).default,MapImageLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(821),r.e(1733),r.e(1214),r.e(7552),r.e(8399),r.e(4674),r.e(893),r.e(2045),r.e(104)]).then(r.bind(r,7656))).default,MapNotesLayer:async()=>(await Promise.all([r.e(7632),r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(821),r.e(1733),r.e(1214),r.e(7552),r.e(8399),r.e(1017),r.e(4674),r.e(993),r.e(8589),r.e(7609),r.e(2655),r.e(3290)]).then(r.bind(r,96299))).default,MediaLayer:async()=>(await Promise.all([r.e(7632),r.e(8278),r.e(7865),r.e(2031),r.e(7433),r.e(2491)]).then(r.bind(r,90182))).default,OGCFeatureLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(821),r.e(1733),r.e(1214),r.e(7552),r.e(8399),r.e(1017),r.e(708),r.e(3077),r.e(5594)]).then(r.bind(r,65977))).default,OpenStreetMapLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(7269),r.e(349)]).then(r.bind(r,40349))).default,OrientedImageryLayer:async()=>(await Promise.all([r.e(7632),r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(821),r.e(1733),r.e(1214),r.e(7552),r.e(8399),r.e(1017),r.e(4674),r.e(993),r.e(8589),r.e(7609),r.e(2293),r.e(3806)]).then(r.bind(r,16852))).default,ParquetLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(2869),r.e(3910),r.e(9953),r.e(821),r.e(1733),r.e(1214),r.e(7552),r.e(8399),r.e(1017),r.e(4599)]).then(r.bind(r,62167))).default,PointCloudLayer:async()=>(await Promise.all([r.e(8278),r.e(2869),r.e(6231),r.e(7984),r.e(241)]).then(r.bind(r,77885))).default,RouteLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(2869),r.e(3910),r.e(821),r.e(1733),r.e(1214),r.e(217),r.e(524)]).then(r.bind(r,39622))).default,SceneLayer:async()=>(await Promise.all([r.e(8278),r.e(2869),r.e(3910),r.e(821),r.e(1733),r.e(1214),r.e(7552),r.e(8399),r.e(6231),r.e(7005),r.e(3077),r.e(7261),r.e(1427),r.e(2942),r.e(2569)]).then(r.bind(r,2e4))).default,StreamLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(821),r.e(1733),r.e(1214),r.e(7552),r.e(8399),r.e(1017),r.e(6938),r.e(6111)]).then(r.bind(r,79457))).default,SubtypeGroupLayer:async()=>(await Promise.all([r.e(7632),r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(821),r.e(1733),r.e(7552),r.e(8399),r.e(4674),r.e(993),r.e(7609),r.e(3892),r.e(8575)]).then(r.bind(r,97483))).default,TileLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(821),r.e(1733),r.e(1214),r.e(7552),r.e(8399),r.e(4674),r.e(893),r.e(9186),r.e(2045),r.e(2746)]).then(r.bind(r,71756))).default,UnknownLayer:async()=>(await r.e(146).then(r.bind(r,146))).default,UnsupportedLayer:async()=>(await r.e(5165).then(r.bind(r,45165))).default,VectorTileLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(9186),r.e(8447),r.e(5013),r.e(8260)]).then(r.bind(r,48757))).default,VideoLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(3910),r.e(821),r.e(4674),r.e(3892),r.e(7433),r.e(841)]).then(r.bind(r,86875))).default,ViewshedLayer:async()=>(await Promise.all([r.e(8278),r.e(6231),r.e(4807),r.e(6650)]).then(r.bind(r,96650))).default,VoxelLayer:async()=>(await Promise.all([r.e(8278),r.e(2869),r.e(4273)]).then(r.bind(r,21005))).default,WCSLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(821),r.e(1733),r.e(3892),r.e(9863),r.e(7373),r.e(3356),r.e(9235),r.e(3500),r.e(233),r.e(3661)]).then(r.bind(r,20521))).default,WFSLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(9953),r.e(821),r.e(1733),r.e(1214),r.e(7552),r.e(8399),r.e(1017),r.e(708),r.e(8216)]).then(r.bind(r,21901))).default,WMSLayer:async()=>(await Promise.all([r.e(7632),r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(3910),r.e(6705)]).then(r.bind(r,51904))).default,WMTSLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(7269),r.e(309)]).then(r.bind(r,20309))).default,WebTileLayer:async()=>(await Promise.all([r.e(8278),r.e(7865),r.e(6554),r.e(7269)]).then(r.bind(r,47314))).default}},6345(e,a,r){r.d(a,{Bu:()=>w,VH:()=>g});var t=r(44208);const n={ArcGISImageServiceLayer:"ImageryLayer",ArcGISImageServiceVectorLayer:"ImageryLayer",ArcGISMapServiceLayer:"MapImageLayer",ArcGISTiledImageServiceLayer:"ImageryTileLayer",ArcGISTiledMapServiceLayer:"TileLayer",BingMapsAerial:"BingMapsLayer",BingMapsHybrid:"BingMapsLayer",BingMapsRoad:"BingMapsLayer",OpenStreetMap:"OpenStreetMapLayer",VectorTileLayer:"VectorTileLayer",WCS:"WCSLayer",WMS:"WMSLayer",WebTiledLayer:"WebTileLayer"},i={ArcGISAnnotationLayer:"UnsupportedLayer",ArcGISDimensionLayer:"UnsupportedLayer",ArcGISFeatureLayer:"FeatureLayer",ArcGISImageServiceLayer:"ImageryLayer",ArcGISImageServiceVectorLayer:"ImageryLayer",ArcGISMapServiceLayer:"MapImageLayer",ArcGISStreamLayer:"StreamLayer",ArcGISTiledImageServiceLayer:"ImageryTileLayer",ArcGISTiledMapServiceLayer:"TileLayer",ArcGISVideoLayer:"VideoLayer",BingMapsAerial:"BingMapsLayer",BingMapsHybrid:"BingMapsLayer",BingMapsRoad:"BingMapsLayer",CatalogLayer:"CatalogLayer",CSV:"CSVLayer",GeoJSON:"GeoJSONLayer",GeoRSS:"GeoRSSLayer",GroupLayer:"GroupLayer",KML:"KMLLayer",KnowledgeGraphLayer:"KnowledgeGraphLayer",MediaLayer:"MediaLayer",OGCFeatureLayer:"OGCFeatureLayer",OrientedImageryLayer:"OrientedImageryLayer",get ParquetLayer(){return(0,t.A)("parquetlayer-persistence-enabled")?"ParquetLayer":"UnsupportedLayer"},SubtypeGroupLayer:"SubtypeGroupLayer",VectorTileLayer:"VectorTileLayer",WCS:"WCSLayer",WFS:"WFSLayer",WMS:"WMSLayer",WebTiledLayer:"WebTileLayer"},y={ArcGISFeatureLayer:"FeatureLayer",SubtypeGroupTable:"SubtypeGroupLayer"},l={ArcGISImageServiceLayer:"UnsupportedLayer",ArcGISMapServiceLayer:"UnsupportedLayer",ArcGISSceneServiceLayer:"SceneLayer",ArcGISTiledImageServiceLayer:"ImageryTileLayer",ArcGISTiledMapServiceLayer:"TileLayer",OpenStreetMap:"OpenStreetMapLayer",VectorTileLayer:"VectorTileLayer",WCS:"UnsupportedLayer",WMS:"UnsupportedLayer",WebTiledLayer:"WebTileLayer"},s={IntegratedMesh3DTilesLayer:"IntegratedMesh3DTilesLayer"},o={ArcGISTiledElevationServiceLayer:"ElevationLayer",RasterDataElevationLayer:"UnsupportedLayer"},c={ArcGISDimensionLayer:"DimensionLayer",ArcGISFeatureLayer:"FeatureLayer",ArcGISImageServiceLayer:"ImageryLayer",ArcGISMapServiceLayer:"MapImageLayer",ArcGISSceneServiceLayer:"SceneLayer",ArcGISTiledElevationServiceLayer:"ElevationLayer",ArcGISTiledImageServiceLayer:"ImageryTileLayer",ArcGISTiledMapServiceLayer:"TileLayer",BuildingSceneLayer:"BuildingSceneLayer",CatalogLayer:"CatalogLayer",CSV:"CSVLayer",GaussianSplatLayer:"GaussianSplatLayer",GeoJSON:"GeoJSONLayer",GroupLayer:"GroupLayer",IntegratedMesh3DTilesLayer:"IntegratedMesh3DTilesLayer",Object3DTilesLayer:"UnsupportedLayer",IntegratedMeshLayer:"IntegratedMeshLayer",KML:"KMLLayer",LineOfSightLayer:"LineOfSightLayer",MediaLayer:"MediaLayer",OGCFeatureLayer:"OGCFeatureLayer",OrientedImageryLayer:"OrientedImageryLayer",PointCloudLayer:"PointCloudLayer",RasterDataLayer:"UnsupportedLayer",VectorTileLayer:"VectorTileLayer",ViewshedLayer:"ViewshedLayer",Voxel:"VoxelLayer",WCS:"WCSLayer",WFS:"WFSLayer",WMS:"WMSLayer",WebTiledLayer:"WebTileLayer"},u={ArcGISFeatureLayer:"FeatureLayer"},L={...i,LinkChartLayer:"LinkChartLayer"},d=n,p=y,S={ArcGISFeatureLayer:"FeatureLayer",ArcGISImageServiceLayer:"ImageryLayer",ArcGISMapServiceLayer:"MapImageLayer",ArcGISSceneServiceLayer:"SceneLayer",ArcGISStreamLayer:"StreamLayer",ArcGISTiledImageServiceLayer:"ImageryTileLayer",BuildingSceneLayer:"BuildingSceneLayer",IntegratedMesh3DTilesLayer:"IntegratedMesh3DTilesLayer",IntegratedMeshLayer:"IntegratedMeshLayer",MediaLayer:"MediaLayer",OrientedImageryLayer:"OrientedImageryLayer",PointCloudLayer:"PointCloudLayer",SubtypeGroupLayer:"SubtypeGroupLayer",WCS:"WCSLayer"},f=y;function m(e){switch(e.origin){case"web-scene":switch(e.layerContainerType){case"basemap-base-layers":return l;case"basemap-ground-layers":return s;case"ground":return o;case"tables":return u;default:return c}case"link-chart":switch(e.layerContainerType){case"basemap-base-layers":return d;case"tables":return p;default:return L}default:switch(e.layerContainerType){case"basemap-base-layers":return n;case"tables":return y;case"ground":case"basemap-ground-layers":return;default:return i}}}function g(e,a){if(!a)return"UnknownLayer";if("DefaultTileLayer"===a){let a="UnknownLayer";if("web-scene"===e.origin)switch(e.layerContainerType){case"operational-layers":case"basemap-base-layers":a="TileLayer";break;case"ground":a="ElevationLayer"}else switch(e.layerContainerType){case"basemap-base-layers":case"operational-layers":a="TileLayer"}return a}return m(e)?.[a]??"UnknownLayer"}function w(e,a){if(!e?.origin)return!1;switch(e.origin){case"web-map":case"link-chart":if("operational-layers"===e.layerContainerType&&"ArcGISDimensionLayer"===a)return!1;break;case"web-scene":if("operational-layers"===e.layerContainerType&&"ArcGISTiledElevationServiceLayer"===a)return!1}const r=function(e){if("portal-item"===e.origin)switch(e.layerContainerType){case"basemap-base-layers":case"ground":case"basemap-ground-layers":return;case"tables":return f;default:return S}return m(e)}(e)?.[a];return null!=r&&"UnknownLayer"!==r&&"UnsupportedLayer"!==r}},8947(e,a,r){r.d(a,{L:()=>y});var t=r(60999),n=r(17676),i=r(67076);async function y(e,a,r){const y=e&&e.getAtOrigin&&e.getAtOrigin("renderer",a.origin);if(y&&"unique-value"===y.type&&y.styleOrigin){const l=await(0,t.Ke)(y.populateFromStyle());if((0,n.Te)(r),!1===l.ok){const r=l.error;a?.messages&&a.messages.push(new i.A("renderer:style-reference",`Failed to create unique value renderer from style reference: ${r.message}`,{error:r,context:a})),e.clear("renderer",a?.origin)}}}},7861(e,a,r){r.d(a,{L:()=>n});var t=r(11254);async function n(e,a){return(await(0,t.A)(e,{responseType:"json",query:{f:"json",...a?.customParameters,token:a?.apiKey}})).data}}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[561],{5359(e,t,r){r.d(t,{H:()=>s,Z:()=>i});const s=Symbol("isImageryTileGraphicOrigin");function i(e){return!!e&&s in e}},90561(e,t,r){r.r(t),r.d(t,{default:()=>V});var s,i=r(5482),a=r(37838),o=r(69540),n=r(49186),l=r(53966),p=r(25728),c=r(17676),h=r(36708),u=r(91429),d=r(56507),y=r(60950),g=r(89808),m=r(99959),f=r(5359);class v extends m.A{get[(s=f.H,y.ym)](){return this.layer}get[g.Q](){return this.layer}constructor(e){super(),this[s]=!0,this.type="imagery-tile",this.layer=e}get id(){return this.layer.id}}var w=r(4146),R=r(18768),S=r(63074),_=r(69208),O=r(34287),F=r(8303),C=r(72545),I=r(56551),b=r(54310),M=r(25036),A=r(82935),N=r(82806),P=r(7548),T=r(23636),J=r(1003),Z=r(99235),x=r(10873),L=r(20437),j=r(74797),E=r(22796),D=r(87045),W=r(24212),k=r(30291),U=r(88625),z=r(59923);let B=class extends((0,S.dM)((0,M.j)((0,O.q)((0,F.A)((0,I.H)((0,_.d)((0,N.b)((0,C.G)((0,A.e)((0,R.b)((0,b.J)((0,p.M)((0,o.OU)(w.A)))))))))))))){constructor(...e){super(...e),this._primaryRasters=[],this.charts=null,this.graphicOrigin=new v(this),this.legendEnabled=!0,this.isReference=null,this.listMode="show",this.sourceJSON=null,this.version=null,this.type="imagery-tile",this.operationalLayerType="ArcGISTiledImageServiceLayer",this.popupEnabled=!0,this.popupTemplate=null,this.screenSizePerspectiveEnabled=!0,this.fields=null,this.source=void 0,this._debouncedSaveOperations=(0,c.sg)(async(e,t,s)=>{const{save:i,saveAs:a}=await r.e(9838).then(r.bind(r,59838));switch(e){case 0:return i(this,t);case 1:return a(this,s,t)}})}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}load(e){const t=null!=e?e.signal:null;return this.addResolvingPromise(this.loadFromPortal({supportedTypes:["Image Service"]},e).catch(c.QP).then(()=>this._openRaster(t))),Promise.resolve(this)}set elevationInfo(e){"relative-to-scene"!==e?.mode&&this._set("elevationInfo",e),this._validateElevationInfo(e)}get defaultPopupTemplate(){return this.createPopupTemplate()}get rasterFields(){const e=[(0,j.rZ)("Pixel Value"),(0,j.dy)("Raw Pixel Value")],t=this.raster?.rasterInfo??this.serviceRasterInfo,r=t?.attributeTable;if(r){const t=(0,j.jC)(r);e.push(...t)}const s=t?.dataType,i=t?.multidimensionalInfo;if(("vector-magdir"===s||"vector-uv"===s)&&null!=i){const t=i.variables[0].unit?.trim(),r=(0,j.DV)(t),s=(0,j.y6)();e.push(r,s)}if(i){const t=(0,j.AL)(i);e.push(...t)}return e}get renderer(){return super.renderer}set renderer(e){super.renderer=e}createPopupTemplate(e){const{rasterFields:t}=this,r=e?.visibleFieldNames??new Set(t.map(({name:e})=>e).filter(e=>e!==j.F_.rawServicePixelValue)),s=(0,k.tn)({fields:t,title:this.title},{...e,visibleFieldNames:r}),{rasterInfo:i}=this.raster;return s?.fieldInfos&&i&&(0,j.h4)(s.fieldInfos,i),s}async generateRasterInfo(e,t){const r=(0,d.PZ)(E.A,e);if(await this.load(),!r||"none"===r.functionName?.toLowerCase())return this.serviceRasterInfo;try{const{rasterInfo:e}=await this._openFunctionRaster(r,t);return e}catch(e){if(e instanceof n.A)throw e;throw new n.A("imagery-tile-layer","the given raster function is not supported")}}async save(e){return this._debouncedSaveOperations(0,e)}async saveAs(e,t){return this._debouncedSaveOperations(1,t,e)}supportsExportMapTiles(){const e=this._primaryRasters[0]??this.raster,t="RasterTileServer"===e?.datasetFormat,r=!!this.sourceJSON?.exportTilesAllowed,s=this.sourceJSON?.datasetFormat?.toLowerCase(),i=!/\/tiledimageservices[^.]*\.arcgis\.com/i.test(this.url)&&"Raster"===e?.tileType&&("cache/jpegplus"===s||"cache/jpegpng"===s);return t&&r&&("Map"===e?.tileType||i)}supportsWrite(){const e=this._primaryRasters[0]??this.raster;return!!(this.loaded?"RasterTileServer"===e.datasetFormat&&("Raster"===e.tileType||"Map"===e.tileType):this.url&&/\/ImageServer(\/|\/?$)/i.test(this.url))}write(e,t){return this.supportsWrite()?super.write(e,t):((0,z.U4)(t,this),null)}async hasDataChanged(){try{const e=this._primaryRasters[0]??this.raster,{dataChanged:t,updates:r}=await e.refresh();return t&&(this.serviceRasterInfo!==e.rasterInfo&&this._set("serviceRasterInfo",e.rasterInfo),e.sourceJSON&&this.sourceJSON!==e.sourceJSON&&(this.sourceJSON=e.sourceJSON),r&&this.read(r,{origin:"service",url:this.parsedUrl,ignoreDefaults:!0})),t}catch{return!1}}async _openRaster(e){let t=!1;if(this.raster)await this._openFromRaster(this.raster,e),t=(0,P.qg)(this.raster),!t&&this.rasterFunction&&(this._primaryRasters=[this.raster],await this._initializeWithFunctionRaster(this.rasterFunction));else{const{url:t,rasterFunction:r,source:s}=this;if(!t&&!s)throw new n.A("imagery-tile-layer:open","missing url or source parameter");s?await this._openFromSource(s,e):r?await this._openFromUrlWithRasterFunction(t,r,e):await this._openFromUrl(t,e)}const r=this.raster.rasterInfo;if(!r)throw new n.A("imagery-tile-layer:load","cannot load resources on "+this.url);if(this._set("serviceRasterInfo",t?r:this._primaryRasters[0].rasterInfo),this._set("spatialReference",r.spatialReference),this.sourceJSON=this.sourceJSON||this.raster.sourceJSON,null!=this.sourceJSON){const e="Map"===this.raster.tileType&&null!=this.sourceJSON.minLOD&&null!=this.sourceJSON.maxLOD?this.sourceJSON:{...this.sourceJSON,minScale:0,maxScale:0};this.read(e,{origin:"service"})}else this.read({tileInfo:this.serviceRasterInfo?.storageInfo.tileInfo.toJSON()},{origin:"service"});this.title||(this.title=this.raster.datasetName),"Map"===this.raster.tileType&&(this.popupEnabled=!1),this._configDefaultSettings(),this.addHandles((0,h.wB)(()=>this.customParameters,e=>{this.raster&&(this.raster.ioConfig.customFetchParameters=e)}))}async _openFromRaster(e,t){e.rasterInfo||await e.open({signal:t}),this._primaryRasters=(0,P.pb)(e),this.url||(this.url=this._primaryRasters[0].url)}async _openFromUrlWithRasterFunction(e,t,r){const s=[e];t&&(0,Z.UD)(t.toJSON(),s);const i=await Promise.all(s.map(e=>J.default.open({url:e,sourceJSON:this.sourceJSON,ioConfig:{sampling:"closest",...this.ioConfig,customFetchParameters:this.customParameters},signal:r}))),a=i.findIndex(e=>null==e);if(a>-1)throw new n.A("imagery-tile-layer:open",`cannot open raster: ${s[a]}`);return this._primaryRasters=i,this._initializeWithFunctionRaster(t)}async _openFromUrl(e,t){const r=await J.default.open({url:e,sourceJSON:this.sourceJSON,ioConfig:{sampling:"closest",...this.ioConfig,customFetchParameters:this.customParameters},signal:t});if(null==r)throw new n.A("imagery-tile-layer:open",`cannot open raster: ${e}`);this._primaryRasters=[r],this.raster=r}async _openFromSource(e,t){const r="the tiled imagery data source is not supported",s="coverage"===e.type?.toLowerCase()?"CovJSON":e.extent&&e.pixelBlock?"MEMORY":null;if(!s)throw new n.A("imagery-tile-layer:open",r);"MEMORY"===s&&(e={...e,pixelBlock:void 0,pixelBlocks:[e.pixelBlock]});const i=await J.default.open({url:"",source:e,datasetFormat:s,ioConfig:{sampling:"closest",...this.ioConfig,customFetchParameters:this.customParameters},signal:t});if(null==i)throw new n.A("imagery-tile-layer:open",r);this._primaryRasters=[i],this.rasterFunction?await this._initializeWithFunctionRaster(this.rasterFunction):this.raster=i}async _openFunctionRaster(e,t){const r={raster:this._primaryRasters[0]};this._primaryRasters.length>1&&this._primaryRasters.forEach(e=>r[e.url]=e);const s=(0,Z.vt)(e.functionDefinition?.toJSON()??e.toJSON(),r),i=new T.A({rasterFunction:s});return await i.open(t),i}async _initializeWithFunctionRaster(e,t){try{this.raster=await this._openFunctionRaster(e,t)}catch(e){e instanceof n.A&&l.A.getLogger(this).error("imagery-tile-layer:open",e.message),l.A.getLogger(this).warn("imagery-tile-layer:open","the raster function cannot be applied and is removed"),this._set("rasterFunction",null),this.raster=this._primaryRasters[0]}}_validateElevationInfo(e){(0,W.XF)(l.A.getLogger(this),(0,W.$7)("ImageryTile layers","relative-to-scene",e)),(0,W.XF)(l.A.getLogger(this),(0,W.tW)("ImageryTile layers",e))}};(0,i.Cg)([(0,u.MZ)({clonable:!1})],B.prototype,"_primaryRasters",void 0),(0,i.Cg)([(0,u.MZ)({json:{origins:{"web-scene":{write:!1}},write:!0}})],B.prototype,"charts",void 0),(0,i.Cg)([(0,u.MZ)({type:U.A,value:null,json:{name:"layerDefinition.elevationInfo",write:!0,origins:{"portal-item":{read:!1,write:!1},"web-map":{read:!1,write:!1}}}})],B.prototype,"elevationInfo",null),(0,i.Cg)([(0,u.MZ)({type:D.A})],B.prototype,"tileInfo",void 0),(0,i.Cg)([(0,u.MZ)({readOnly:!0,clonable:!1})],B.prototype,"graphicOrigin",void 0),(0,i.Cg)([(0,u.MZ)(x.fV)],B.prototype,"legendEnabled",void 0),(0,i.Cg)([(0,u.MZ)({type:Boolean,json:{read:!1,write:{enabled:!0,overridePolicy:()=>({enabled:!1})}}})],B.prototype,"isReference",void 0),(0,i.Cg)([(0,u.MZ)({type:["show","hide"]})],B.prototype,"listMode",void 0),(0,i.Cg)([(0,u.MZ)({json:{read:!0,write:!0}})],B.prototype,"blendMode",void 0),(0,i.Cg)([(0,u.MZ)({type:E.A,json:{name:"renderingRule",write:!0}})],B.prototype,"rasterFunction",void 0),(0,i.Cg)([(0,u.MZ)()],B.prototype,"sourceJSON",void 0),(0,i.Cg)([(0,u.MZ)({readOnly:!0,json:{origins:{service:{read:{source:"currentVersion"}}}}})],B.prototype,"version",void 0),(0,i.Cg)([(0,u.MZ)({readOnly:!0,json:{read:!1}})],B.prototype,"type",void 0),(0,i.Cg)([(0,u.MZ)({type:["ArcGISTiledImageServiceLayer"]})],B.prototype,"operationalLayerType",void 0),(0,i.Cg)([(0,u.MZ)({type:Boolean,value:!0,json:{read:{source:"disablePopup",reader:(e,t)=>!t.disablePopup},write:{target:"disablePopup",overridePolicy(){return{enabled:!this.loaded||"Raster"===this.raster.tileType}},writer(e,t,r){t[r]=!e}}}})],B.prototype,"popupEnabled",void 0),(0,i.Cg)([(0,u.MZ)({type:a.A,json:{read:{source:"popupInfo"},write:{target:"popupInfo",overridePolicy(){return{enabled:!this.loaded||"Raster"===this.raster.tileType}}}}})],B.prototype,"popupTemplate",void 0),(0,i.Cg)([(0,u.MZ)({readOnly:!0})],B.prototype,"defaultPopupTemplate",null),(0,i.Cg)([(0,u.MZ)(x.PY)],B.prototype,"screenSizePerspectiveEnabled",void 0),(0,i.Cg)([(0,u.MZ)({readOnly:!0,type:[L.A]})],B.prototype,"fields",void 0),(0,i.Cg)([(0,u.MZ)({readOnly:!0,type:[L.A]})],B.prototype,"rasterFields",null),(0,i.Cg)([(0,u.MZ)({constructOnly:!0})],B.prototype,"source",void 0),B=(0,i.Cg)([(0,u.$K)("esri.layers.ImageryTileLayer")],B);const V=B}}]);