@arcgis/core 5.1.0-next.64 → 5.1.0-next.66

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 (802) hide show
  1. package/Camera.d.ts +1 -1
  2. package/Ground.d.ts +7 -7
  3. package/PopupTemplate.d.ts +8 -8
  4. package/WebDocument2D.js +1 -1
  5. package/WebScene.d.ts +1 -1
  6. package/WebScene.js +1 -1
  7. package/analysis/AreaMeasurementAnalysis.d.ts +1 -1
  8. package/analysis/DirectLineMeasurementAnalysis.d.ts +1 -1
  9. package/analysis/LengthDimension.d.ts +4 -4
  10. package/analysis/ShadowCastAnalysis.d.ts +3 -3
  11. package/analysis/SliceAnalysis.d.ts +1 -1
  12. package/analysis/SlicePlane.d.ts +1 -1
  13. package/applications/Components/featureUtils.d.ts +24 -0
  14. package/applications/Components/featureUtils.js +1 -1
  15. package/applications/KnowledgeStudio/generalSdkInternalAccess.d.ts +11 -1
  16. package/applications/KnowledgeStudio/generalSdkInternalAccess.js +1 -1
  17. package/applications/WebEditor/drawToolZSnapping.d.ts +17 -0
  18. package/applications/WebEditor/drawToolZSnapping.js +2 -0
  19. package/arcade/Dictionary.js +1 -1
  20. package/arcade/Feature.js +1 -1
  21. package/arcade/Pixel.js +1 -1
  22. package/arcade/Voxel.js +1 -1
  23. package/arcade/geometry/wkt.js +1 -1
  24. package/assets/esri/core/workers/RemoteClient.js +1 -1
  25. package/assets/esri/core/workers/chunks/01be1315c60810651783.js +1 -0
  26. package/assets/esri/core/workers/chunks/02e8fc598ee09cf1b678.js +1 -0
  27. package/assets/esri/core/workers/chunks/0d650b0d090a425c9c18.js +1 -0
  28. package/assets/esri/core/workers/chunks/0e90e9ea1ad587eb3495.js +1 -0
  29. package/assets/esri/core/workers/chunks/0f196ec93925dfefc69a.js +1 -0
  30. package/assets/esri/core/workers/chunks/12294f8c32c34788b6de.js +1 -0
  31. package/assets/esri/core/workers/chunks/13a8346abe5509167578.js +1 -0
  32. package/assets/esri/core/workers/chunks/1515824f11ef5ab95378.js +1 -0
  33. package/assets/esri/core/workers/chunks/151c2766a4cacc6adbd6.js +1 -0
  34. package/assets/esri/core/workers/chunks/155f57fe9886ef322e2a.js +1 -0
  35. package/assets/esri/core/workers/chunks/170f4d83555d238e365b.js +1 -0
  36. package/assets/esri/core/workers/chunks/171cca726a763c770469.js +1 -0
  37. package/assets/esri/core/workers/chunks/17445fd8048966617d49.js +1 -0
  38. package/assets/esri/core/workers/chunks/1761dc5799850ca7b66c.js +1 -0
  39. package/assets/esri/core/workers/chunks/17d54e77001ccb48a258.js +1 -0
  40. package/assets/esri/core/workers/chunks/19afacc9a741038e4bfb.js +1 -0
  41. package/assets/esri/core/workers/chunks/1d8777266fb1c5cfca55.js +1 -0
  42. package/assets/esri/core/workers/chunks/1f16bc8c02d8c4b2f693.js +1 -0
  43. package/assets/esri/core/workers/chunks/1f76c06af4682c85bc21.js +1 -0
  44. package/assets/esri/core/workers/chunks/{9eef3cd5f519c8ae88c0.js → 205e957ffd7e95f530f7.js} +1 -1
  45. package/assets/esri/core/workers/chunks/{fa6e1ad099b43a6f5501.js → 21a8e2a11ffacc226e2b.js} +1 -1
  46. package/assets/esri/core/workers/chunks/{811b378fa5bf8a4d3d66.js → 224461c1d9755966d0b6.js} +1 -1
  47. package/assets/esri/core/workers/chunks/27262083d37fe623ca9c.js +1 -0
  48. package/assets/esri/core/workers/chunks/2a3145a595d19391bb8a.js +1 -0
  49. package/assets/esri/core/workers/chunks/2a65bbe6c63c384cbf5f.js +1 -0
  50. package/assets/esri/core/workers/chunks/2fa69ca3ba8c442dd7d6.js +1 -0
  51. package/assets/esri/core/workers/chunks/314140e2e9b813191907.js +1 -0
  52. package/assets/esri/core/workers/chunks/32e22d6eee9fed1f70b0.js +1 -0
  53. package/assets/esri/core/workers/chunks/{af40e2e6eaf3d2226812.js → 3464a38e758c687a28d4.js} +1 -1
  54. package/assets/esri/core/workers/chunks/38816f95e801f1c5bbad.js +1 -0
  55. package/assets/esri/core/workers/chunks/3f8e8f83ebda07d29ca8.js +1 -0
  56. package/assets/esri/core/workers/chunks/41396724040180d2537f.js +1 -0
  57. package/assets/esri/core/workers/chunks/{66baacbef23291eab853.js → 413d2fa54508e6f42c74.js} +1 -1
  58. package/assets/esri/core/workers/chunks/{32e9e92bbbd000fbbaf7.js → 4141a3a93732996601e8.js} +2 -2
  59. package/assets/esri/core/workers/chunks/41e59d75ccb51a238739.js +1 -0
  60. package/assets/esri/core/workers/chunks/44016e1176629c36bc11.js +1 -0
  61. package/assets/esri/core/workers/chunks/468c70e5fdb61dfaad80.js +1 -0
  62. package/assets/esri/core/workers/chunks/4d069a0ebadb9c53b550.js +1 -0
  63. package/assets/esri/core/workers/chunks/4e7b084f7104deea1ddb.js +1 -0
  64. package/assets/esri/core/workers/chunks/{9c72127de7afcbaafbaf.js → 51852ef71ac04954fdae.js} +1 -1
  65. package/assets/esri/core/workers/chunks/549a51dedcc49f366e53.js +1 -0
  66. package/assets/esri/core/workers/chunks/{42e084704dea6e4135b6.js → 54c0306082d30d59cba2.js} +1 -1
  67. package/assets/esri/core/workers/chunks/56036327e721f9c42b33.js +1 -0
  68. package/assets/esri/core/workers/chunks/57cdd5d4ae073d5ca725.js +1 -0
  69. package/assets/esri/core/workers/chunks/5b9257c5359fa05f4f28.js +1 -0
  70. package/assets/esri/core/workers/chunks/5d574079f0e96e883aab.js +1 -0
  71. package/assets/esri/core/workers/chunks/5d967bcf71c05ddb1ab6.js +1 -0
  72. package/assets/esri/core/workers/chunks/5fccb372b4d5ee2f64cc.js +1 -0
  73. package/assets/esri/core/workers/chunks/61778185d702da468b00.js +1 -0
  74. package/assets/esri/core/workers/chunks/61794a861a9209b72622.js +1 -0
  75. package/assets/esri/core/workers/chunks/61b49cdaf288f36f9288.js +1 -0
  76. package/assets/esri/core/workers/chunks/{8ea67b502f9355dab7e9.js → 621ea864e2774f160d1c.js} +1 -1
  77. package/assets/esri/core/workers/chunks/{9d289cee96e7c7fe1029.js → 62a2da0ffc67f98445c1.js} +1 -1
  78. package/assets/esri/core/workers/chunks/{254898b41cabe313b6ce.js → 62d96b012c2d6f601863.js} +1 -1
  79. package/assets/esri/core/workers/chunks/644dd906bee3ef465ec0.js +1 -0
  80. package/assets/esri/core/workers/chunks/66692d6edc1bd96645e2.js +1 -0
  81. package/assets/esri/core/workers/chunks/679086351352756b33c9.js +1 -0
  82. package/assets/esri/core/workers/chunks/681e97ebbf9c69c410c6.js +1 -0
  83. package/assets/esri/core/workers/chunks/69520cad347947b09f21.js +1 -0
  84. package/assets/esri/core/workers/chunks/{c86b15f6a18880f921cd.js → 6a567755b67c06d16f21.js} +1 -1
  85. package/assets/esri/core/workers/chunks/{fdf4c1f202cfddf0f226.js → 6d11ec355e5474b2968b.js} +1 -1
  86. package/assets/esri/core/workers/chunks/6e7bb6d3e739527116a4.js +1 -0
  87. package/assets/esri/core/workers/chunks/751f3cfb000045ac78bb.js +1 -0
  88. package/assets/esri/core/workers/chunks/{64ad6130de549083caba.js → 789357e0f79823f145dd.js} +1 -1
  89. package/assets/esri/core/workers/chunks/{b6d94cbd1c5adad2f247.js → 78fbfc03d9b827c3f767.js} +1 -1
  90. package/assets/esri/core/workers/chunks/79df97e3f5975b42dc4d.js +1 -0
  91. package/assets/esri/core/workers/chunks/{25e4568a3ff76f48ac5e.js → 7a56c836c89a8b978800.js} +1 -1
  92. package/assets/esri/core/workers/chunks/7e97684e851274efd11f.js +1 -0
  93. package/assets/esri/core/workers/chunks/7e9b790fe01b89acdf6d.js +1 -0
  94. package/assets/esri/core/workers/chunks/7fb9a5bc22d7581f1d20.js +1 -0
  95. package/assets/esri/core/workers/chunks/{5c1abb46b9937a050c32.js → 7ffcd308087c35adda04.js} +1 -1
  96. package/assets/esri/core/workers/chunks/84eb889b9cce35dac2e5.js +1 -0
  97. package/assets/esri/core/workers/chunks/891d97d0da6361d63679.js +1 -0
  98. package/assets/esri/core/workers/chunks/8a0f254d45d00b293479.js +1 -0
  99. package/assets/esri/core/workers/chunks/8ede12f54b215c52cf3c.js +1 -0
  100. package/assets/esri/core/workers/chunks/8fed6becd107d2ed9bbd.js +1 -0
  101. package/assets/esri/core/workers/chunks/90cef6f96df7dc27db39.js +1 -0
  102. package/assets/esri/core/workers/chunks/921c30b7f4dfc3e018d9.js +1 -0
  103. package/assets/esri/core/workers/chunks/927773ed23b1fc245bf7.js +1 -0
  104. package/assets/esri/core/workers/chunks/{b056b4c79bcd542dd1d2.js → 9622a83b29acb768fcb5.js} +1 -1
  105. package/assets/esri/core/workers/chunks/97062996e1e4196cfa7c.js +1 -0
  106. package/assets/esri/core/workers/chunks/97210bcb5e3cf3ac961b.js +1 -0
  107. package/assets/esri/core/workers/chunks/{f550fc8c078ebd47d7a3.js → 97e15e66e55d9149fd48.js} +1 -1
  108. package/assets/esri/core/workers/chunks/9c819ebdc98ed8b6afcf.js +1 -0
  109. package/assets/esri/core/workers/chunks/9dfd00972c12a4adc15d.js +1 -0
  110. package/assets/esri/core/workers/chunks/9fab410b9fa668dc498b.js +1 -0
  111. package/assets/esri/core/workers/chunks/a118de5a163ae42bee60.js +1 -0
  112. package/assets/esri/core/workers/chunks/a4b6fdbc995be03d2afb.js +1 -0
  113. package/assets/esri/core/workers/chunks/a59db907ec1e31002100.js +1 -0
  114. package/assets/esri/core/workers/chunks/a5b395e518e4c5fc95d0.js +1414 -0
  115. package/assets/esri/core/workers/chunks/a5d9dbb1fef8c4465943.js +1 -0
  116. package/assets/esri/core/workers/chunks/{62c2757f5dc4aaca2df8.js → a73e8b80760dc88f926f.js} +1 -1
  117. package/assets/esri/core/workers/chunks/a96692514dcaa50340dd.js +1 -0
  118. package/assets/esri/core/workers/chunks/b4fb4484fa39eede1f62.js +1 -0
  119. package/assets/esri/core/workers/chunks/b50a42a9f96515beb929.js +1 -0
  120. package/assets/esri/core/workers/chunks/b8acb6c2538053c01cc6.js +1 -0
  121. package/assets/esri/core/workers/chunks/b8bf3e8b8b870f69f231.js +1 -0
  122. package/assets/esri/core/workers/chunks/b8e85b7d5eed6e7c79b5.js +1 -0
  123. package/assets/esri/core/workers/chunks/{fd629a3ab558adf52617.js → bc2c7cb99e227ddbd3a6.js} +1 -1
  124. package/assets/esri/core/workers/chunks/bc85bb82cfcbc216fa31.js +1 -0
  125. package/assets/esri/core/workers/chunks/{354351ab3fc79dedf9a8.js → bcb8a25438c66815e37a.js} +1 -1
  126. package/assets/esri/core/workers/chunks/be1e4c3ec53fc92a26f1.js +1 -0
  127. package/assets/esri/core/workers/chunks/be4d13088a557b7de4b1.js +1 -0
  128. package/assets/esri/core/workers/chunks/bf758d57091fa534c1f8.js +1 -0
  129. package/assets/esri/core/workers/chunks/bfd516c37fb717e14d71.js +1 -0
  130. package/assets/esri/core/workers/chunks/c22945637a40355fbe61.js +1 -0
  131. package/assets/esri/core/workers/chunks/c25a58d9f94aaa96957d.js +1 -0
  132. package/assets/esri/core/workers/chunks/c4e936879c6cb25cf586.js +1 -0
  133. package/assets/esri/core/workers/chunks/c6a43f748dbf8bac4bb5.js +1 -0
  134. package/assets/esri/core/workers/chunks/cb9185ed31109781fe59.js +1 -0
  135. package/assets/esri/core/workers/chunks/d21fdd67477800101f3b.js +1 -0
  136. package/assets/esri/core/workers/chunks/d264aed5dbe09e34040f.js +1 -0
  137. package/assets/esri/core/workers/chunks/d315098b038a96084ff5.js +1 -0
  138. package/assets/esri/core/workers/chunks/d4465fd3319d0b6a26cc.js +1 -0
  139. package/assets/esri/core/workers/chunks/{13eb0162d95b4d27389c.js → d598d08dbf2796742e8c.js} +1 -1
  140. package/assets/esri/core/workers/chunks/d5c7ebfd5c2ca635a7a8.js +1 -0
  141. package/assets/esri/core/workers/chunks/{d4368e281c12fa7c17c5.js → d635f97b7b82a37482d6.js} +1 -1
  142. package/assets/esri/core/workers/chunks/d7b92bd9198dd3b27eb5.js +1 -0
  143. package/assets/esri/core/workers/chunks/d83ac66478a419e08af6.js +1 -0
  144. package/assets/esri/core/workers/chunks/d8dde0d1759e009b8373.js +1 -0
  145. package/assets/esri/core/workers/chunks/d94dfb2ce31e59b3306b.js +1 -0
  146. package/assets/esri/core/workers/chunks/{8166ad6bbd7d7a8f91cf.js → deddf6ae4498a3d0d0e5.js} +1 -1
  147. package/assets/esri/core/workers/chunks/{45f1e682668cffc00b44.js → e0df7554b1679168663d.js} +1 -1
  148. package/assets/esri/core/workers/chunks/e0fcb5fa0e9f21fde2b6.js +1 -0
  149. package/assets/esri/core/workers/chunks/e305ced975d885c28e7e.js +1 -0
  150. package/assets/esri/core/workers/chunks/e3c60b7df2740e600066.js +1 -0
  151. package/assets/esri/core/workers/chunks/e611cd03eee4fae7c413.js +1 -0
  152. package/assets/esri/core/workers/chunks/e64a92b6f4075616f40f.js +1 -0
  153. package/assets/esri/core/workers/chunks/e78b442417f6a903b9b1.js +1 -0
  154. package/assets/esri/core/workers/chunks/{ba72989749543122a6fe.js → e9f2b573f482718306e6.js} +1 -1
  155. package/assets/esri/core/workers/chunks/ea6d3b7c7d720aa7bc94.js +1 -0
  156. package/assets/esri/core/workers/chunks/eab1b45ab5a802e29f8c.js +1 -0
  157. package/assets/esri/core/workers/chunks/eb7392799a01c2a8497a.js +1 -0
  158. package/assets/esri/core/workers/chunks/{c17c3453d014dc73fe0b.js → ef013a77950c1902de11.js} +1 -1
  159. package/assets/esri/core/workers/chunks/ef0fe4e1a9e960a74c60.js +1 -0
  160. package/assets/esri/core/workers/chunks/efbbcf467b2a27a92b85.js +1 -0
  161. package/assets/esri/core/workers/chunks/f201edf9b68717a6106d.js +1 -0
  162. package/assets/esri/core/workers/chunks/f43a63094190d2074cd0.js +1 -0
  163. package/assets/esri/core/workers/chunks/f59f1db572be1f19887f.js +1 -0
  164. package/assets/esri/core/workers/chunks/{dc07dc1cd30edc0c4193.js → f62e42659b406435573d.js} +1 -1
  165. package/assets/esri/core/workers/chunks/fa160a2a5dc9f5a7c34b.js +1 -0
  166. package/assets/esri/core/workers/chunks/fa7ae035472540999721.js +1 -0
  167. package/assets/esri/core/workers/chunks/fe3b42eadcdd9ba54f05.js +1 -0
  168. package/assets/esri/core/workers/chunks/fee31d9297648219375d.js +1 -0
  169. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_ar.json +1 -1
  170. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_bg.json +1 -1
  171. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_bs.json +1 -1
  172. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_ca.json +1 -1
  173. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_cs.json +1 -1
  174. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_da.json +1 -1
  175. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_de.json +1 -1
  176. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_el.json +1 -1
  177. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_es.json +1 -1
  178. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_et.json +1 -1
  179. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_fi.json +1 -1
  180. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_fr.json +1 -1
  181. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_he.json +1 -1
  182. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_hr.json +1 -1
  183. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_hu.json +1 -1
  184. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_id.json +1 -1
  185. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_it.json +1 -1
  186. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_ja.json +1 -1
  187. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_ko.json +1 -1
  188. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_lt.json +1 -1
  189. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_lv.json +1 -1
  190. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_nl.json +1 -1
  191. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_no.json +1 -1
  192. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_pl.json +1 -1
  193. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_pt-BR.json +1 -1
  194. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_pt-PT.json +1 -1
  195. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_ro.json +1 -1
  196. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_ru.json +1 -1
  197. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_sk.json +1 -1
  198. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_sl.json +1 -1
  199. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_sr.json +1 -1
  200. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_sv.json +1 -1
  201. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_th.json +1 -1
  202. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_tr.json +1 -1
  203. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_uk.json +1 -1
  204. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_vi.json +1 -1
  205. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_zh-CN.json +1 -1
  206. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_zh-HK.json +1 -1
  207. package/assets/esri/views/interactive/tooltip/t9n/Tooltip_zh-TW.json +1 -1
  208. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_ar.json +1 -1
  209. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_bg.json +1 -1
  210. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_bs.json +1 -1
  211. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_ca.json +1 -1
  212. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_cs.json +1 -1
  213. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_da.json +1 -1
  214. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_de.json +1 -1
  215. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_el.json +1 -1
  216. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_es.json +1 -1
  217. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_et.json +1 -1
  218. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_fi.json +1 -1
  219. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_fr.json +1 -1
  220. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_he.json +1 -1
  221. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_hr.json +1 -1
  222. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_hu.json +1 -1
  223. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_id.json +1 -1
  224. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_it.json +1 -1
  225. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_ja.json +1 -1
  226. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_ko.json +1 -1
  227. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_lt.json +1 -1
  228. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_lv.json +1 -1
  229. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_nl.json +1 -1
  230. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_no.json +1 -1
  231. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_pl.json +1 -1
  232. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_pt-BR.json +1 -1
  233. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_pt-PT.json +1 -1
  234. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_ro.json +1 -1
  235. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_ru.json +1 -1
  236. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_sk.json +1 -1
  237. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_sl.json +1 -1
  238. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_sr.json +1 -1
  239. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_sv.json +1 -1
  240. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_th.json +1 -1
  241. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_tr.json +1 -1
  242. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_uk.json +1 -1
  243. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_vi.json +1 -1
  244. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_zh-CN.json +1 -1
  245. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_zh-HK.json +1 -1
  246. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_zh-TW.json +1 -1
  247. package/chunks/ComponentShader.glsl.js +1 -1
  248. package/chunks/DefaultMaterial.glsl.js +1 -1
  249. package/chunks/GaussianSplat.glsl.js +14 -2
  250. package/chunks/OITDim.glsl.js +3 -2
  251. package/chunks/Path.glsl.js +1 -1
  252. package/chunks/RealisticTree.glsl.js +1 -1
  253. package/chunks/ShadowCastAccumulate.glsl.js +2 -2
  254. package/chunks/ShadowHighlight.glsl.js +3 -3
  255. package/chunks/ShadowHighlightBuffer.glsl.js +1 -1
  256. package/chunks/Terrain.glsl.js +1 -1
  257. package/chunks/Water.glsl.js +1 -1
  258. package/config.js +1 -1
  259. package/core/timeUtils.js +1 -1
  260. package/core/workers/Connection.js +1 -1
  261. package/effects/FocusAreas.d.ts +1 -1
  262. package/form/elements/FieldElement.d.ts +3 -3
  263. package/form/elements/GroupElement.d.ts +1 -1
  264. package/form/elements/TextElement.d.ts +1 -1
  265. package/form/elements/inputs/ComboBoxInput.d.ts +1 -1
  266. package/form/elements/inputs/DateTimeOffsetPickerInput.d.ts +1 -1
  267. package/form/elements/inputs/DateTimeOffsetPickerInput.js +1 -1
  268. package/form/elements/inputs/Input.d.ts +1 -1
  269. package/form/elements/inputs/RadioButtonsInput.d.ts +1 -1
  270. package/form/elements/inputs/SwitchInput.d.ts +1 -1
  271. package/form/elements/inputs/inputUtils.js +1 -1
  272. package/form/elements/inputs.js +1 -1
  273. package/geometry/Mesh.d.ts +7 -7
  274. package/geometry/operators/alphaShapeOperator.d.ts +1 -1
  275. package/geometry/operators/areaOperator.d.ts +1 -1
  276. package/geometry/operators/bufferOperator.d.ts +1 -1
  277. package/geometry/operators/centroidOperator.d.ts +1 -1
  278. package/geometry/operators/clipOperator.d.ts +1 -1
  279. package/geometry/operators/containsOperator.d.ts +1 -1
  280. package/geometry/operators/convexHullOperator.d.ts +1 -1
  281. package/geometry/operators/crossesOperator.d.ts +1 -1
  282. package/geometry/operators/cutOperator.d.ts +1 -1
  283. package/geometry/operators/densifyOperator.d.ts +1 -1
  284. package/geometry/operators/differenceOperator.d.ts +1 -1
  285. package/geometry/operators/disjointOperator.d.ts +1 -1
  286. package/geometry/operators/distanceOperator.d.ts +1 -1
  287. package/geometry/operators/generalizeOperator.d.ts +1 -1
  288. package/geometry/operators/geodesicProximityOperator.d.ts +1 -1
  289. package/geometry/operators/geodeticDistanceOperator.d.ts +1 -1
  290. package/geometry/operators/geodeticUtilsOperator.d.ts +2 -2
  291. package/geometry/operators/graphicBufferOperator.d.ts +1 -1
  292. package/geometry/operators/intersectionOperator.d.ts +1 -1
  293. package/geometry/operators/intersectsOperator.d.ts +1 -1
  294. package/geometry/operators/isNearOperator.d.ts +1 -1
  295. package/geometry/operators/lengthOperator.d.ts +1 -1
  296. package/geometry/operators/locateBetweenOperator.d.ts +1 -1
  297. package/geometry/operators/multiPartToSinglePartOperator.d.ts +1 -1
  298. package/geometry/operators/offsetOperator.d.ts +5 -5
  299. package/geometry/operators/overlapsOperator.d.ts +1 -1
  300. package/geometry/operators/proximityOperator.d.ts +1 -1
  301. package/geometry/operators/simplifyOGCOperator.d.ts +1 -1
  302. package/geometry/operators/simplifyOperator.d.ts +1 -1
  303. package/geometry/operators/support/Transformation.d.ts +6 -6
  304. package/geometry/operators/symmetricDifferenceOperator.d.ts +1 -1
  305. package/geometry/operators/touchesOperator.d.ts +1 -1
  306. package/geometry/operators/unionOperator.d.ts +1 -1
  307. package/geometry/operators/withinOperator.d.ts +1 -1
  308. package/geometry/support/MeshMaterialMetallicRoughness.d.ts +1 -1
  309. package/geometry/support/spatialReferenceUtils.js +1 -1
  310. package/geometry/support/vcsData.js +2 -0
  311. package/geometry/support/vcsLookup.js +2 -0
  312. package/interfaces.d.ts +4 -2
  313. package/intl.js +1 -1
  314. package/kernel.js +1 -1
  315. package/layers/BuildingSceneLayer.d.ts +4 -4
  316. package/layers/CSVLayer.d.ts +2 -2
  317. package/layers/CatalogLayer.d.ts +2 -2
  318. package/layers/ElevationLayer.d.ts +1 -1
  319. package/layers/FeatureLayer.d.ts +9 -2
  320. package/layers/FeatureLayer.js +1 -1
  321. package/layers/GeoJSONLayer.d.ts +2 -2
  322. package/layers/GeoRSSLayer.d.ts +1 -1
  323. package/layers/GraphicsLayer.d.ts +2 -2
  324. package/layers/ImageryLayer.d.ts +3 -3
  325. package/layers/ImageryTileLayer.d.ts +2 -2
  326. package/layers/IntegratedMesh3DTilesLayer.d.ts +6 -6
  327. package/layers/IntegratedMeshLayer.d.ts +7 -7
  328. package/layers/MapImageLayer.d.ts +1 -1
  329. package/layers/MediaLayer.d.ts +1 -1
  330. package/layers/OGCFeatureLayer.d.ts +2 -2
  331. package/layers/PointCloudLayer.d.ts +1 -1
  332. package/layers/SceneLayer.d.ts +9 -9
  333. package/layers/StreamLayer.d.ts +2 -2
  334. package/layers/SubtypeGroupLayer.js +1 -1
  335. package/layers/VectorTileLayer.d.ts +2 -2
  336. package/layers/VideoLayer.d.ts +1 -1
  337. package/layers/VoxelLayer.d.ts +8 -8
  338. package/layers/VoxelWasmPerSceneView.js +1 -1
  339. package/layers/WFSLayer.d.ts +6 -6
  340. package/layers/catalog/CatalogFootprintLayer.d.ts +1 -1
  341. package/layers/graphics/data/AttributesBuilder.js +1 -1
  342. package/layers/graphics/sources/geojson/GeoJSONSourceWorker.js +1 -1
  343. package/layers/graphics/sources/support/MemorySourceWorker.js +1 -1
  344. package/layers/mixins/ArcGISImageService.js +1 -1
  345. package/layers/mixins/BlendLayer.d.ts +6 -6
  346. package/layers/pointCloudFilters/PointCloudReturnFilter.d.ts +1 -1
  347. package/layers/pointCloudFilters/PointCloudValueFilter.d.ts +1 -1
  348. package/layers/support/DimensionalDefinition.d.ts +2 -2
  349. package/layers/support/FeatureEffect.d.ts +4 -4
  350. package/layers/support/FeatureFilter.d.ts +17 -17
  351. package/layers/support/FeatureReductionBinning.d.ts +1 -1
  352. package/layers/support/FeatureReductionCluster.d.ts +9 -9
  353. package/layers/support/FeatureReductionSelection.d.ts +1 -1
  354. package/layers/support/LabelClass.d.ts +2 -2
  355. package/layers/support/RasterFunction.d.ts +1 -1
  356. package/layers/support/SceneFilter.d.ts +2 -2
  357. package/layers/support/SceneModification.d.ts +3 -3
  358. package/layers/support/SymbolLayerDrawing.d.ts +15 -0
  359. package/layers/support/SymbolLayerDrawing.js +2 -0
  360. package/layers/support/capabilities.js +1 -1
  361. package/layers/support/featureLayerUtils.js +1 -1
  362. package/layers/support/serviceCapabilitiesUtils.js +1 -1
  363. package/layers/types.d.ts +6 -0
  364. package/networks/support/jsonTypes.d.ts +36 -11
  365. package/package.json +4 -4
  366. package/popup/Feature.d.ts +20 -10
  367. package/popup/Feature.js +1 -1
  368. package/popup/Features.d.ts +82 -227
  369. package/popup/Features.js +1 -1
  370. package/popup/content/AttachmentsContent.d.ts +1 -1
  371. package/popup/content/BarChartMediaInfo.d.ts +1 -1
  372. package/popup/content/ColumnChartMediaInfo.d.ts +1 -1
  373. package/popup/content/FieldsContent.d.ts +1 -1
  374. package/popup/content/ImageMediaInfo.d.ts +1 -1
  375. package/popup/content/LineChartMediaInfo.d.ts +1 -1
  376. package/popup/content/MediaContent.d.ts +1 -1
  377. package/popup/content/PieChartMediaInfo.d.ts +1 -1
  378. package/popup/content/RelationshipContent.d.ts +1 -1
  379. package/popup/content/TextContent.d.ts +1 -1
  380. package/popup/support/FeatureAbilities.d.ts +45 -9
  381. package/popup/support/featureUtils.js +1 -1
  382. package/popup/types.d.ts +126 -8
  383. package/portal/schemas/definitions.js +1 -1
  384. package/renderers/ClassBreaksRenderer.d.ts +1 -1
  385. package/renderers/DictionaryRenderer.d.ts +1 -1
  386. package/renderers/DotDensityRenderer.d.ts +3 -3
  387. package/renderers/FlowRenderer.d.ts +5 -5
  388. package/renderers/HeatmapRenderer.d.ts +3 -3
  389. package/renderers/PieChartRenderer.d.ts +1 -1
  390. package/renderers/RasterShadedReliefRenderer.d.ts +1 -1
  391. package/renderers/Renderer.d.ts +4 -4
  392. package/renderers/SimpleRenderer.d.ts +2 -2
  393. package/renderers/UniqueValueRenderer.d.ts +2 -2
  394. package/renderers/VectorFieldRenderer.d.ts +1 -1
  395. package/renderers/mixins/VisualVariablesMixin.d.ts +12 -12
  396. package/renderers/visualVariables/ColorVariable.d.ts +1 -1
  397. package/renderers/visualVariables/OpacityVariable.d.ts +1 -1
  398. package/renderers/visualVariables/RotationVariable.d.ts +1 -1
  399. package/renderers/visualVariables/SizeVariable.d.ts +1 -1
  400. package/renderers/visualVariables/VisualVariable.d.ts +1 -1
  401. package/rest/query/support/AttachmentInfo.d.ts +1 -1
  402. package/rest/support/AttributeBinsQuery.d.ts +8 -8
  403. package/rest/support/AutoIntervalBinParameters.d.ts +1 -1
  404. package/rest/support/DateBinParameters.d.ts +1 -1
  405. package/rest/support/FixedBoundariesBinParameters.d.ts +1 -1
  406. package/rest/support/FixedIntervalBinParameters.d.ts +1 -1
  407. package/rest/support/Query.d.ts +8 -8
  408. package/rest/support/TopFeaturesQuery.d.ts +8 -8
  409. package/smartMapping/labels/clusters.d.ts +1 -1
  410. package/smartMapping/popup/clusters.d.ts +2 -2
  411. package/smartMapping/popup/templates.d.ts +1 -1
  412. package/smartMapping/raster/renderers/flow.d.ts +2 -2
  413. package/smartMapping/renderers/color.d.ts +12 -12
  414. package/smartMapping/renderers/predominance.d.ts +3 -3
  415. package/smartMapping/renderers/relationship.d.ts +15 -15
  416. package/smartMapping/renderers/univariateColorSize.d.ts +4 -4
  417. package/smartMapping/statistics/support/utils.js +1 -1
  418. package/smartMapping/support/adapters/support/utils.js +1 -1
  419. package/smartMapping/symbology/color.d.ts +4 -4
  420. package/smartMapping/symbology/flow.d.ts +2 -2
  421. package/smartMapping/symbology/types.d.ts +18 -18
  422. package/support/actions/ActionButton.d.ts +1 -1
  423. package/support/basemapDefinitions.js +1 -1
  424. package/support/revision.js +1 -1
  425. package/symbols/CIMSymbol.d.ts +1 -1
  426. package/symbols/ExtrudeSymbol3DLayer.d.ts +1 -1
  427. package/symbols/FillSymbol3DLayer.d.ts +3 -3
  428. package/symbols/IconSymbol3DLayer.d.ts +1 -1
  429. package/symbols/LabelSymbol3D.d.ts +2 -2
  430. package/symbols/LineStyleMarker3D.d.ts +7 -7
  431. package/symbols/LineSymbol3D.d.ts +2 -2
  432. package/symbols/LineSymbol3DLayer.d.ts +7 -7
  433. package/symbols/LineSymbolMarker.d.ts +6 -6
  434. package/symbols/MarkerSymbol.d.ts +1 -1
  435. package/symbols/MeshSymbol3D.d.ts +2 -2
  436. package/symbols/ObjectSymbol3DLayer.d.ts +1 -1
  437. package/symbols/PathSymbol3DLayer.d.ts +14 -14
  438. package/symbols/PictureFillSymbol.d.ts +1 -1
  439. package/symbols/PictureMarkerSymbol.d.ts +1 -1
  440. package/symbols/PointSymbol3D.d.ts +3 -3
  441. package/symbols/PolygonSymbol3D.d.ts +5 -5
  442. package/symbols/SimpleFillSymbol.d.ts +8 -8
  443. package/symbols/SimpleLineSymbol.d.ts +20 -20
  444. package/symbols/SimpleMarkerSymbol.d.ts +7 -7
  445. package/symbols/Symbol3DLayer.d.ts +16 -16
  446. package/symbols/TextSymbol.d.ts +1 -1
  447. package/symbols/TextSymbol3DLayer.d.ts +1 -1
  448. package/symbols/WaterSymbol3DLayer.d.ts +3 -3
  449. package/symbols/WebStyleSymbol.d.ts +12 -12
  450. package/symbols/callouts/Callout3D.d.ts +1 -1
  451. package/symbols/callouts/LineCallout3D.d.ts +3 -3
  452. package/symbols/cim/cimAnalyzer.js +1 -1
  453. package/symbols/cim/types.d.ts +29 -23
  454. package/symbols/edges/Edges3D.d.ts +1 -1
  455. package/symbols/edges/SolidEdges3D.d.ts +1 -1
  456. package/symbols/patterns/LineStylePattern3D.d.ts +11 -11
  457. package/symbols/patterns/StylePattern3D.d.ts +8 -8
  458. package/symbols/support/ElevationInfo.d.ts +2 -2
  459. package/symbols/support/IconSymbol3DLayerResource.d.ts +6 -6
  460. package/symbols/support/ObjectSymbol3DLayerResource.d.ts +7 -7
  461. package/symbols/support/Symbol3DEmissive.d.ts +2 -2
  462. package/symbols/support/Symbol3DVerticalOffset.d.ts +2 -2
  463. package/views/2d/engine/Stage.js +1 -1
  464. package/views/2d/engine/flow/FlowStrategy.js +1 -1
  465. package/views/2d/engine/flow/styles/Imagery.js +1 -1
  466. package/views/2d/engine/flow/styles/Particles.js +1 -1
  467. package/views/2d/engine/flow/styles/Stack.js +1 -1
  468. package/views/2d/engine/flow/styles/Streamlines.js +1 -1
  469. package/views/2d/engine/vectorTiles/VTLPainter3D.js +1 -1
  470. package/views/2d/engine/vectorTiles/style/StyleLayer.js +1 -1
  471. package/views/2d/engine/webgl/AttributeStoreView.js +1 -1
  472. package/views/2d/engine/webgl/FeatureDisplayList.js +1 -1
  473. package/views/2d/engine/webgl/Painter.js +1 -1
  474. package/views/2d/engine/webgl/VideoScreenRenderer.js +1 -1
  475. package/views/2d/engine/webgl/effects/FeatureEffect.js +1 -1
  476. package/views/2d/engine/webgl/effects/HighlightEffect.js +1 -1
  477. package/views/2d/engine/webgl/effects/highlight/HighlightSurfaces.js +1 -1
  478. package/views/2d/engine/webgl/shaderGraph/techniques/FeatureInstanceStore.js +1 -1
  479. package/views/2d/engine/webgl/shaderGraph/techniques/GraphicInstanceStore.js +1 -1
  480. package/views/2d/engine/webgl/shaderGraph/techniques/TextureStatisticsTechnique.js +1 -1
  481. package/views/2d/engine/webgl/shaderGraph/techniques/blend/BlendTechnique.js +1 -1
  482. package/views/2d/engine/webgl/shaderGraph/techniques/bloom/BloomTechnique.js +1 -1
  483. package/views/2d/engine/webgl/shaderGraph/techniques/blur/BlurTechnique.js +1 -1
  484. package/views/2d/engine/webgl/shaderGraph/techniques/dotDensity/DotDensityResources.js +1 -1
  485. package/views/2d/engine/webgl/shaderGraph/techniques/dotDensity/DotDensityTechnique.js +1 -1
  486. package/views/2d/engine/webgl/shaderGraph/techniques/drop-shadow/DropShadowTechnique.js +1 -1
  487. package/views/2d/engine/webgl/shaderGraph/techniques/heatmap/HeatmapResources.js +1 -1
  488. package/views/2d/engine/webgl/shaderGraph/techniques/heatmap/HeatmapTechnique.js +1 -1
  489. package/views/2d/engine/webgl/shaderGraph/techniques/raster/RasterColorizerTechnique.js +1 -1
  490. package/views/2d/engine/webgl/shaderGraph/techniques/raster/RasterHighlightTechnique.js +1 -1
  491. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/BaseRasterProcessorTechnique.js +1 -1
  492. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/textureUtils.js +1 -1
  493. package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
  494. package/views/2d/layers/BaseLayerViewGL2D.d.ts +2 -2
  495. package/views/2d/layers/BaseLayerViewGL2D.js +1 -1
  496. package/views/2d/layers/ImageryTileLayerView2D.js +1 -1
  497. package/views/2d/layers/features/FeatureContainer.js +1 -1
  498. package/views/2d/layers/features/layerAdapters/FeatureLayerAdapter.js +1 -1
  499. package/views/2d/layers/features/layerAdapters/SubtypeGroupLayerAdapter.js +1 -1
  500. package/views/2d/layers/features/schema/processor/SimpleProcessorSchema.js +1 -1
  501. package/views/2d/layers/features/schema/processor/symbols/ComplexSymbolSchema.js +1 -1
  502. package/views/2d/layers/imagery/BaseImageryTileSubView2D.js +1 -1
  503. package/views/2d/layers/support/DisplayGL.js +1 -1
  504. package/views/2d/types.d.ts +3 -3
  505. package/views/3d/FocusAreasView.js +1 -1
  506. package/views/3d/analysis/Slice/sliceToolUtils.js +1 -1
  507. package/views/3d/analysis/Viewshed/ViewshedSubTool.js +1 -1
  508. package/views/3d/analysis/Viewshed/ViewshedTool.js +1 -1
  509. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementCutFillController.js +1 -1
  510. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementCutFillVisualization.js +1 -1
  511. package/views/3d/environment/CloudyWeather.d.ts +1 -1
  512. package/views/3d/environment/Environment.d.ts +4 -4
  513. package/views/3d/environment/FoggyWeather.d.ts +1 -1
  514. package/views/3d/environment/RainyWeather.d.ts +1 -1
  515. package/views/3d/environment/SnowyWeather.d.ts +1 -1
  516. package/views/3d/environment/SunLighting.d.ts +1 -1
  517. package/views/3d/environment/SunnyWeather.d.ts +1 -1
  518. package/views/3d/environment/VirtualLighting.d.ts +1 -1
  519. package/views/3d/layers/GaussianSplatLayerView3D.js +1 -1
  520. package/views/3d/layers/graphics/extrudeUtils.js +1 -1
  521. package/views/3d/support/gaussianSplatting/GaussianSplatIntersectionHandler.js +1 -1
  522. package/views/3d/support/gaussianSplatting/GaussianSplatTextureAtlas.js +1 -1
  523. package/views/3d/support/gaussianSplatting/GaussianTile.js +1 -1
  524. package/views/3d/support/renderInfoUtils/polygon.js +1 -1
  525. package/views/3d/terrain/support/MultiSizeFramebuffer.js +1 -1
  526. package/views/3d/webgl/ManagedFBO.js +1 -1
  527. package/views/3d/webgl/RenderNode.d.ts +2 -2
  528. package/views/3d/webgl-engine/core/FBOCache.js +1 -1
  529. package/views/3d/webgl-engine/core/renderPasses/RenderPassManager.js +1 -1
  530. package/views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js +18 -5
  531. package/views/3d/webgl-engine/core/shaderLibrary/shading/ShadowmapFiltering.glsl.js +2 -2
  532. package/views/3d/webgl-engine/core/shaderLibrary/shading/calculateUVZShadow.glsl.js +2 -2
  533. package/views/3d/webgl-engine/core/shaderLibrary/shading/calculateUVZShadowFromDepth.glsl.js +1 -1
  534. package/views/3d/webgl-engine/effects/RenderPluginManager.js +1 -1
  535. package/views/3d/webgl-engine/effects/clouds/CloudsRenderer.js +1 -1
  536. package/views/3d/webgl-engine/effects/clouds/NoiseTextureAtlas.js +1 -1
  537. package/views/3d/webgl-engine/effects/debug/RenderNodeVisualizerNode.js +1 -1
  538. package/views/3d/webgl-engine/effects/focusArea/FocusAreaMaskNode.js +1 -1
  539. package/views/3d/webgl-engine/effects/highlight/Highlight.js +1 -1
  540. package/views/3d/webgl-engine/effects/transparency/OITBlend.js +1 -1
  541. package/views/3d/webgl-engine/effects/transparency/OITDim.glsl.js +1 -1
  542. package/views/3d/webgl-engine/effects/transparency/OITDimTechniqueConfiguration.js +2 -0
  543. package/views/3d/webgl-engine/lib/CutFillComputationRenderNode.js +1 -1
  544. package/views/3d/webgl-engine/lib/CutFillVisualizationRenderNode.js +1 -1
  545. package/views/3d/webgl-engine/lib/DrapedHeatmapRenderer.js +1 -1
  546. package/views/3d/webgl-engine/lib/GaussianSplatRenderNode.js +1 -1
  547. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  548. package/views/3d/webgl-engine/materials/PolygonOffset.js +1 -1
  549. package/views/3d/webgl-engine/shaders/GaussianSplat.glsl.js +1 -1
  550. package/views/3d/webgl-engine/shaders/GaussianSplatTechniqueConfiguration.js +1 -1
  551. package/views/3d/webgl-engine/shaders/ShadowCastAccumulate.glsl.js +1 -1
  552. package/views/3d/webgl.d.ts +1 -1
  553. package/views/Magnifier.d.ts +3 -3
  554. package/views/MapView.d.ts +7 -7
  555. package/views/SceneView.d.ts +16 -16
  556. package/views/View.d.ts +17 -3
  557. package/views/View.js +1 -1
  558. package/views/draw/DrawTool.js +1 -1
  559. package/views/draw/support/InteractiveHandle.js +1 -1
  560. package/views/draw/support/Reshape.js +1 -1
  561. package/views/draw/support/drawUtils.js +1 -1
  562. package/views/draw/support/reshapeTooltipUtils.js +1 -1
  563. package/views/draw/support/types.d.ts +9 -1
  564. package/views/interactive/sketch/SketchLabelOptions.d.ts +1 -1
  565. package/views/interactive/sketch/SketchTooltipOptions.d.ts +1 -1
  566. package/views/interactive/snapping/SnappingOptions.d.ts +7 -7
  567. package/views/layers/FeatureLikeLayerView.js +1 -1
  568. package/views/layers/LineOfSightLayerView.d.ts +3 -2
  569. package/views/support/HighlightOptions.d.ts +1 -1
  570. package/views/support/imageReprojection.js +1 -1
  571. package/views/types.d.ts +59 -2
  572. package/views/ui/DefaultUI.d.ts +2 -2
  573. package/views/webgl/FramebufferObject.js +1 -1
  574. package/views/webgl/RenderingContext.js +1 -1
  575. package/views/webgl/Texture.js +1 -1
  576. package/views/webgl/testFloatBufferBlend.js +1 -1
  577. package/views/webgl/testSVGPremultipliedAlpha.js +1 -1
  578. package/webscene/Environment.d.ts +10 -10
  579. package/webscene/Glow.d.ts +1 -1
  580. package/webscene/background/ColorBackground.d.ts +1 -1
  581. package/widgets/AreaMeasurement2D.d.ts +1 -1
  582. package/widgets/AreaMeasurement3D.d.ts +2 -2
  583. package/widgets/Attachments.d.ts +1 -1
  584. package/widgets/Attribution.d.ts +1 -1
  585. package/widgets/BasemapGallery.d.ts +1 -1
  586. package/widgets/BasemapLayerList.d.ts +3 -3
  587. package/widgets/BasemapToggle.d.ts +1 -1
  588. package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.js +1 -1
  589. package/widgets/BatchAttributeForm/expressions/ExpressionsManager.js +1 -1
  590. package/widgets/BatchAttributeForm/inputs/FieldInput.js +1 -1
  591. package/widgets/Bookmarks/BookmarksVisibleElements.d.ts +1 -1
  592. package/widgets/Bookmarks.d.ts +2 -2
  593. package/widgets/BuildingExplorer.d.ts +1 -1
  594. package/widgets/CatalogLayerList.d.ts +3 -3
  595. package/widgets/Compass.d.ts +2 -2
  596. package/widgets/CoordinateConversion.d.ts +1 -1
  597. package/widgets/Daylight.d.ts +5 -5
  598. package/widgets/DirectLineMeasurement3D.d.ts +2 -2
  599. package/widgets/Directions.d.ts +4 -4
  600. package/widgets/DistanceMeasurement2D.d.ts +1 -1
  601. package/widgets/Editor/CreateFeaturesWorkflow.d.ts +1 -1
  602. package/widgets/Editor/CreateFeaturesWorkflow.js +1 -1
  603. package/widgets/Editor/UpdateFeatureWorkflow.js +1 -1
  604. package/widgets/Editor/UpdateFeaturesWorkflow.js +1 -1
  605. package/widgets/Editor/UpdateWorkflow.js +1 -1
  606. package/widgets/Editor/Workflow.js +1 -1
  607. package/widgets/Editor.d.ts +8 -8
  608. package/widgets/ElevationProfile/ElevationProfileLineGround.d.ts +1 -1
  609. package/widgets/ElevationProfile/ElevationProfileLineInput.d.ts +1 -1
  610. package/widgets/ElevationProfile/ElevationProfileLineView.d.ts +1 -1
  611. package/widgets/ElevationProfile.d.ts +3 -3
  612. package/widgets/Expand.d.ts +1 -1
  613. package/widgets/Feature/FeatureViewModel.d.ts +14 -4
  614. package/widgets/Feature/FeatureViewModel.js +1 -1
  615. package/widgets/FeatureForm/FieldInput.js +1 -1
  616. package/widgets/FeatureForm.d.ts +1 -1
  617. package/widgets/FeatureTable/ActionColumn.d.ts +2 -2
  618. package/widgets/FeatureTable/AttachmentsColumn.d.ts +1 -1
  619. package/widgets/FeatureTable/FeatureTableViewModel.d.ts +3 -3
  620. package/widgets/FeatureTable/Grid/GroupColumn.d.ts +1 -1
  621. package/widgets/FeatureTable/RelationshipColumn.d.ts +1 -1
  622. package/widgets/FeatureTable/VisibleElements.d.ts +1 -1
  623. package/widgets/FeatureTable.d.ts +10 -10
  624. package/widgets/FeatureTemplates/FeatureTemplatesViewModel.d.ts +5 -5
  625. package/widgets/FeatureTemplates.d.ts +8 -8
  626. package/widgets/Features/FeaturesViewModel.d.ts +18 -7
  627. package/widgets/Features/FeaturesViewModel.js +1 -1
  628. package/widgets/Features/FeaturesVisibleElements.d.ts +2 -2
  629. package/widgets/Features.d.ts +1 -1
  630. package/widgets/Features.js +1 -1
  631. package/widgets/FloorFilter/FloorFilterViewModel.js +1 -1
  632. package/widgets/FloorFilter.d.ts +2 -2
  633. package/widgets/Histogram.d.ts +2 -2
  634. package/widgets/HistogramRangeSlider.d.ts +1 -1
  635. package/widgets/Home.d.ts +1 -1
  636. package/widgets/LayerList/ListItemPanel.d.ts +1 -1
  637. package/widgets/LayerList.d.ts +4 -4
  638. package/widgets/Legend.d.ts +8 -8
  639. package/widgets/LineOfSight.d.ts +1 -1
  640. package/widgets/Locate.d.ts +2 -2
  641. package/widgets/Measurement.d.ts +1 -1
  642. package/widgets/NavigationToggle/NavigationToggleViewModel.d.ts +1 -1
  643. package/widgets/NavigationToggle.d.ts +3 -3
  644. package/widgets/Popup/PopupViewModel.d.ts +2 -1
  645. package/widgets/Popup/PopupViewModel.js +1 -1
  646. package/widgets/Popup/PopupVisibleElements.d.ts +2 -2
  647. package/widgets/Popup.d.ts +18 -9
  648. package/widgets/Popup.js +1 -1
  649. package/widgets/Print/CustomTemplate.d.ts +1 -1
  650. package/widgets/Print/TemplateOptions.d.ts +4 -4
  651. package/widgets/ScaleRangeSlider.d.ts +1 -1
  652. package/widgets/Search/SearchViewModel.d.ts +4 -4
  653. package/widgets/Search.d.ts +5 -5
  654. package/widgets/ShadowCast.d.ts +3 -3
  655. package/widgets/Sketch/SketchViewModel.d.ts +39 -39
  656. package/widgets/Sketch.d.ts +43 -43
  657. package/widgets/Slice.d.ts +2 -2
  658. package/widgets/Slider/SliderViewModel.d.ts +2 -2
  659. package/widgets/Slider.d.ts +9 -9
  660. package/widgets/Swipe/SwipeViewModel.d.ts +1 -1
  661. package/widgets/Swipe.d.ts +2 -2
  662. package/widgets/TableList/ListItemPanel.d.ts +1 -1
  663. package/widgets/TableList.d.ts +1 -1
  664. package/widgets/TimeSlider/TimeSliderViewModel.d.ts +10 -10
  665. package/widgets/TimeSlider/TimeSliderViewModel.js +1 -1
  666. package/widgets/TimeSlider/types.d.ts +1 -1
  667. package/widgets/TimeSlider.d.ts +13 -13
  668. package/widgets/Track.d.ts +2 -2
  669. package/widgets/UtilityNetworkAssociations.d.ts +3 -3
  670. package/widgets/UtilityNetworkTrace/UtilityNetworkTraceFeature.js +1 -1
  671. package/widgets/UtilityNetworkTrace.d.ts +4 -4
  672. package/widgets/UtilityNetworkValidateTopology.d.ts +1 -1
  673. package/widgets/ValuePicker.d.ts +5 -5
  674. package/widgets/VideoPlayer.d.ts +1 -1
  675. package/widgets/smartMapping/ClassedColorSlider.d.ts +1 -1
  676. package/widgets/smartMapping/ClassedSizeSlider.d.ts +1 -1
  677. package/widgets/smartMapping/ColorSizeSlider.d.ts +2 -2
  678. package/widgets/smartMapping/ColorSlider.d.ts +1 -1
  679. package/widgets/smartMapping/HeatmapSlider.d.ts +1 -1
  680. package/widgets/smartMapping/OpacitySlider.d.ts +1 -1
  681. package/widgets/smartMapping/SizeSlider.d.ts +1 -1
  682. package/widgets/smartMapping/SmartMappingSliderBase.d.ts +4 -4
  683. package/widgets/smartMapping/SmartMappingSliderViewModel.d.ts +6 -6
  684. package/widgets/support/GridControls.d.ts +1 -1
  685. package/widgets/support/SnappingControls/VisibleElements.d.ts +1 -1
  686. package/widgets/support/SnappingControls.d.ts +6 -6
  687. package/assets/esri/core/workers/chunks/02aaeaa988e9e7d65a7f.js +0 -1
  688. package/assets/esri/core/workers/chunks/05c8d2c0362af4511d86.js +0 -1
  689. package/assets/esri/core/workers/chunks/06868e4f52de9d918255.js +0 -1
  690. package/assets/esri/core/workers/chunks/06c0b93e276cfc1fb7ac.js +0 -1
  691. package/assets/esri/core/workers/chunks/0888baa99c9007ad63bc.js +0 -1
  692. package/assets/esri/core/workers/chunks/0de66f13e84830a654fb.js +0 -1
  693. package/assets/esri/core/workers/chunks/0f597c690e5c60fe944b.js +0 -1
  694. package/assets/esri/core/workers/chunks/0f8736242544f9e9a57a.js +0 -1
  695. package/assets/esri/core/workers/chunks/0ff12fe9e358100668d9.js +0 -1
  696. package/assets/esri/core/workers/chunks/11a8541f3909f9ffb000.js +0 -1
  697. package/assets/esri/core/workers/chunks/13a009229c96ecb7b04f.js +0 -1
  698. package/assets/esri/core/workers/chunks/185f59f90070d5d6ac94.js +0 -1
  699. package/assets/esri/core/workers/chunks/190bc75254bc0542a6be.js +0 -1
  700. package/assets/esri/core/workers/chunks/1af247c86d1c4ae8fef3.js +0 -1
  701. package/assets/esri/core/workers/chunks/2339465190c9d5ede25f.js +0 -1
  702. package/assets/esri/core/workers/chunks/23eb204d3cb818adea32.js +0 -1
  703. package/assets/esri/core/workers/chunks/241ef4a1bea20b49d812.js +0 -1
  704. package/assets/esri/core/workers/chunks/2669a7195f1de21a9cf3.js +0 -1
  705. package/assets/esri/core/workers/chunks/2a2d5f9ea42cb2eee9c6.js +0 -1
  706. package/assets/esri/core/workers/chunks/2a7e7a497823e9f05aa3.js +0 -1
  707. package/assets/esri/core/workers/chunks/2aaeaf022af8493281dc.js +0 -1
  708. package/assets/esri/core/workers/chunks/2d92ba11781a3cfc3a78.js +0 -1
  709. package/assets/esri/core/workers/chunks/31e0bfc2cab055aebf9a.js +0 -1
  710. package/assets/esri/core/workers/chunks/32360a55d1836b2a737e.js +0 -1
  711. package/assets/esri/core/workers/chunks/330da3828eefd8d72d3f.js +0 -1
  712. package/assets/esri/core/workers/chunks/34acecd7a314fed12335.js +0 -1
  713. package/assets/esri/core/workers/chunks/34fe4570eef9e73839b8.js +0 -1
  714. package/assets/esri/core/workers/chunks/368b4c0a5eecbb06feac.js +0 -1
  715. package/assets/esri/core/workers/chunks/37729578a7c4cf15eded.js +0 -1
  716. package/assets/esri/core/workers/chunks/3af1e2f0b3d30c58d0c2.js +0 -1
  717. package/assets/esri/core/workers/chunks/3c155efd5768003a91eb.js +0 -1
  718. package/assets/esri/core/workers/chunks/3d4bb59ab2f644f4d675.js +0 -1
  719. package/assets/esri/core/workers/chunks/3f0d9fdd8c37605dd85d.js +0 -1
  720. package/assets/esri/core/workers/chunks/48eca6f51112ba80bd3b.js +0 -1
  721. package/assets/esri/core/workers/chunks/4b5737021a149aa786af.js +0 -1
  722. package/assets/esri/core/workers/chunks/55214e1d9f3d98fa7ed9.js +0 -1
  723. package/assets/esri/core/workers/chunks/55a0b69cf034ac32fc25.js +0 -1
  724. package/assets/esri/core/workers/chunks/576a1784e93c5406e657.js +0 -1
  725. package/assets/esri/core/workers/chunks/59289867cce97da74e39.js +0 -1
  726. package/assets/esri/core/workers/chunks/5a6d6082c5bcb1a80eda.js +0 -1
  727. package/assets/esri/core/workers/chunks/5a9620cb66c8e64e4668.js +0 -1
  728. package/assets/esri/core/workers/chunks/5c6e5f22450dd0583074.js +0 -1
  729. package/assets/esri/core/workers/chunks/5eeb6d3a7b815d41621e.js +0 -1
  730. package/assets/esri/core/workers/chunks/5f06a57b4f7d7de16bbf.js +0 -1
  731. package/assets/esri/core/workers/chunks/5f2e246ffcbdedea4de5.js +0 -1
  732. package/assets/esri/core/workers/chunks/5ff41f43e57be0557541.js +0 -1414
  733. package/assets/esri/core/workers/chunks/6b32b3f98872771ff81e.js +0 -1
  734. package/assets/esri/core/workers/chunks/6be9d00839002f24fafd.js +0 -1
  735. package/assets/esri/core/workers/chunks/6c72dbd5275bffde1583.js +0 -1
  736. package/assets/esri/core/workers/chunks/6c886f19875291d02407.js +0 -1
  737. package/assets/esri/core/workers/chunks/75f7c1f600c4051bc905.js +0 -1
  738. package/assets/esri/core/workers/chunks/77f6659e400064d38130.js +0 -1
  739. package/assets/esri/core/workers/chunks/78c7eace6ec3fa5c7413.js +0 -1
  740. package/assets/esri/core/workers/chunks/7cee28575fd57430cf02.js +0 -1
  741. package/assets/esri/core/workers/chunks/82e0691995d821137d5f.js +0 -1
  742. package/assets/esri/core/workers/chunks/8435b6bf356959009b76.js +0 -1
  743. package/assets/esri/core/workers/chunks/8677865189081e0b83bc.js +0 -1
  744. package/assets/esri/core/workers/chunks/86f70bd786d6d57fde69.js +0 -1
  745. package/assets/esri/core/workers/chunks/8878ab87ef7961fafae8.js +0 -1
  746. package/assets/esri/core/workers/chunks/8a893f23827769d42092.js +0 -1
  747. package/assets/esri/core/workers/chunks/8d1d0c3f0532aa98487d.js +0 -1
  748. package/assets/esri/core/workers/chunks/8e68b4628e9616356c34.js +0 -1
  749. package/assets/esri/core/workers/chunks/8edae79554843dd77ada.js +0 -1
  750. package/assets/esri/core/workers/chunks/9032c040b214b5af775b.js +0 -1
  751. package/assets/esri/core/workers/chunks/909ef35fa33be2b6da41.js +0 -1
  752. package/assets/esri/core/workers/chunks/90b7acc70adba193b215.js +0 -1
  753. package/assets/esri/core/workers/chunks/91718795fc4ca6516ac7.js +0 -1
  754. package/assets/esri/core/workers/chunks/92d4e962284e13ba2fc5.js +0 -1
  755. package/assets/esri/core/workers/chunks/94f80c46ccf5e19038b8.js +0 -1
  756. package/assets/esri/core/workers/chunks/979c2f52b6d6e1e8241b.js +0 -1
  757. package/assets/esri/core/workers/chunks/97f10efb0fe05bedcebd.js +0 -1
  758. package/assets/esri/core/workers/chunks/98f5bf1b91f3696b2fce.js +0 -1
  759. package/assets/esri/core/workers/chunks/9c52d4b54dfdb69dee29.js +0 -1
  760. package/assets/esri/core/workers/chunks/9de8149ae0a0726a4ab2.js +0 -1
  761. package/assets/esri/core/workers/chunks/9def5d17b94e5db71883.js +0 -1
  762. package/assets/esri/core/workers/chunks/9f272445c285ee9abb7b.js +0 -1
  763. package/assets/esri/core/workers/chunks/a10be7eb05a007fff1ed.js +0 -1
  764. package/assets/esri/core/workers/chunks/a32c87b89567a9fd1efc.js +0 -1
  765. package/assets/esri/core/workers/chunks/a3b29eca5807978fb2a3.js +0 -1
  766. package/assets/esri/core/workers/chunks/a446dff865332268625a.js +0 -1
  767. package/assets/esri/core/workers/chunks/a5bf2718c02a0e645013.js +0 -1
  768. package/assets/esri/core/workers/chunks/a6d166058e3025bb280e.js +0 -1
  769. package/assets/esri/core/workers/chunks/a8e111a5cfd6151d5dbb.js +0 -1
  770. package/assets/esri/core/workers/chunks/aed45f7e7eee154a21b8.js +0 -1
  771. package/assets/esri/core/workers/chunks/af3bd661b355eed3da21.js +0 -1
  772. package/assets/esri/core/workers/chunks/b0f2ce61d3cad413898e.js +0 -1
  773. package/assets/esri/core/workers/chunks/b2b77598048818c957b7.js +0 -1
  774. package/assets/esri/core/workers/chunks/b744b950999b92393e37.js +0 -1
  775. package/assets/esri/core/workers/chunks/b75165880704efccc47c.js +0 -1
  776. package/assets/esri/core/workers/chunks/ba9e107edc2027238be3.js +0 -1
  777. package/assets/esri/core/workers/chunks/bc3b22dc08c147b8d425.js +0 -1
  778. package/assets/esri/core/workers/chunks/c08e9914deb1dc62bc0f.js +0 -1
  779. package/assets/esri/core/workers/chunks/c0bb53d8d58ad18334d3.js +0 -1
  780. package/assets/esri/core/workers/chunks/c0d453f93af2d4a6ce64.js +0 -1
  781. package/assets/esri/core/workers/chunks/c9a42d86185a0ad35dd1.js +0 -1
  782. package/assets/esri/core/workers/chunks/cbb50415f7de8746ee1a.js +0 -1
  783. package/assets/esri/core/workers/chunks/d23dd7da45a7aa341540.js +0 -1
  784. package/assets/esri/core/workers/chunks/d2801df3fa44dee15ec8.js +0 -1
  785. package/assets/esri/core/workers/chunks/d53b31c9056f82831bc0.js +0 -1
  786. package/assets/esri/core/workers/chunks/d626e08d23330d84413b.js +0 -1
  787. package/assets/esri/core/workers/chunks/db6e03fe8dd316f5005f.js +0 -1
  788. package/assets/esri/core/workers/chunks/de79645e559a2d1ffa67.js +0 -1
  789. package/assets/esri/core/workers/chunks/e2779965db231fb666a5.js +0 -1
  790. package/assets/esri/core/workers/chunks/e4e2f059c52674dcae5b.js +0 -1
  791. package/assets/esri/core/workers/chunks/ec21311584e4fb13e510.js +0 -1
  792. package/assets/esri/core/workers/chunks/eca45cd479f7fd28ca6e.js +0 -1
  793. package/assets/esri/core/workers/chunks/ee8cd91c27e9cdfc3b2e.js +0 -1
  794. package/assets/esri/core/workers/chunks/efdd75896ca53eb6242f.js +0 -1
  795. package/assets/esri/core/workers/chunks/f1c348cf2a1e35da9b20.js +0 -1
  796. package/assets/esri/core/workers/chunks/f4053e4e2d6e678db48a.js +0 -1
  797. package/assets/esri/core/workers/chunks/f4d577ff61da7964e08a.js +0 -1
  798. package/assets/esri/core/workers/chunks/f7da652f8dab57677cc3.js +0 -1
  799. package/assets/esri/core/workers/chunks/fe92f54e45fd21ccd75f.js +0 -1
  800. package/assets/esri/core/workers/chunks/fee1d873127dca02459f.js +0 -1
  801. package/assets/esri/core/workers/chunks/ff31936236dd9b1acb24.js +0 -1
  802. /package/assets/esri/core/workers/chunks/{32e9e92bbbd000fbbaf7.js.LICENSE.txt → 4141a3a93732996601e8.js.LICENSE.txt} +0 -0
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import t from"../../Graphic.js";import i from"../../request.js";import r from"../../core/Error.js";import{clone as s}from"../../core/lang.js";import n from"../../core/Logger.js";import{watch as a}from"../../core/reactiveUtils.js";import{urlToObject as o}from"../../core/urlUtils.js";import{property as l,subclass as u}from"../../core/accessorSupport/decorators.js";import{Integer as p,ensureClass as m,ensureRange as c,ensureNumber as h}from"../../core/accessorSupport/ensureType.js";import{runUntracked as d}from"../../core/accessorSupport/tracking.js";import f from"../../geometry/Extent.js";import y from"../../geometry/Polygon.js";import g from"../../geometry/SpatialReference.js";import{srToRESTValue as R}from"../../geometry/support/spatialReferenceUtils.js";import{intersectMultimensionalSubset as I,getEffectiveMultidimensionalDefinition as v,getSubsetVariablesFromMdInfo as w,getDefaultMultidimensionalDefinition as b}from"../raster/datasets/multidimensionalUtils.js";import{decode as S,getFormat as x}from"../raster/formats/RasterCodec.js";import{uvComponentToVector as _}from"../raster/functions/vectorFieldUtils.js";import{opacity as F,url as D}from"../support/commonProperties.js";import O from"../support/DimensionalDefinition.js";import{ExportImageServiceParameters as T}from"../support/ExportImageServiceParameters.js";import C from"../support/Field.js";import M from"../support/FieldsIndex.js";import{createBitmap as N}from"../support/imageBitmapUtils.js";import{isSupportedRendererType as q}from"../support/imageryRendererUtils.js";import P from"../support/MosaicRule.js";import j from"../support/MultidimensionalSubset.js";import E from"../support/PixelBlock.js";import{interpolationKebab as A,noDataInterpretationKebab as Q,pixelTypeKebabDict as V}from"../support/rasterEnums.js";import{getServicePixelValueField as J,getItemPixelValueField as U,getRawServicePixelValueField as B,getProcessedServicePixelValueField as z,getMagnitudeField as L,getDirectionField as H,getMultidimensionalFields as G,getRasterAttributeTableFields as k,addMultidimensionalFieldValues as W,commonRasterFieldNames as $,rasterFieldPrefix as X}from"../support/rasterFieldUtils.js";import K from"../support/RasterFunction.js";import Y from"../support/RasterInfo.js";import{createDefaultRenderer as Z,getDefaultBandCombination as ee,getSupportedRendererTypes as te,matchPresetRenderer as ie,normalizeRendererJSON as re}from"../../renderers/support/rasterRendererHelper.js";import se from"../../renderers/support/RasterSymbolizer.js";import{rasterRendererTypes as ne,websceneRasterRendererTypes as ae,read as oe}from"../../renderers/support/rasterTypeUtils.js";import{calculateVolume as le,computeAngles as ue,computePixelSpaceLocations as pe,computeHistograms as me,computeStatisticsHistograms as ce,measureHeight as he,measureAreaAndPerimeter as de,measureDistanceAndAngle as fe,measurePointOrCentroid as ye,measureLengthFromImage as ge,measureAreaFromImage as Re,getImageSpatialReferenceQueryParameter as Ie,getSamples as ve,identify as we,imageToMap as be,imageToMapMultiray as Se,mapToImage as xe,findImages as _e,getImageUrl as Fe,queryBoundary as De,queryGPSInfo as Oe}from"../../rest/imageService.js";import{fetchServiceRasterInfo as Te,generateRasterInfo as Ce,patchServiceInfo as Me}from"../../rest/imageService/fetchRasterInfo.js";import{getCatalogItemRasterInfo as Ne}from"../../rest/imageService/getCatalogItemRasterInfo.js";import{executeForCount as qe}from"../../rest/query/executeForCount.js";import{executeForExtent as Pe}from"../../rest/query/executeForExtent.js";import{executeForIds as je}from"../../rest/query/executeForIds.js";import{executeQueryJSON as Ee}from"../../rest/query/executeQueryJSON.js";import Ae from"../../rest/support/FeatureSet.js";import Qe from"../../rest/support/ImageIdentifyParameters.js";import Ve from"../../rest/support/Query.js";import{reader as Je}from"../../core/accessorSupport/decorators/reader.js";import{writer as Ue}from"../../core/accessorSupport/decorators/writer.js";const Be=new Set(["png","png8","png24","png32","jpg","bmp","gif","jpgpng","lerc","tiff"]),ze=c(h,{min:0,max:255});function Le(e){const t=JSON.stringify(e),i=t.includes('"rasterFunctionDefinition":{'),r=i?t.match(/"type":"(.*?FunctionArguments")/gi):t.match(/"rasterFunction":"(.*?")/gi),s=r?.map(e=>i?e.slice(8,-18):e.slice(18,-1));return s?s.join("/"):null}const He=c=>{const h=c;let He=class extends h{constructor(){super(...arguments),this._functionRasterInfos={},this._serviceSupportsMosaicRule=null,this.adjustAspectRatio=null,this.bandIds=void 0,this.capabilities=null,this.compressionQuality=void 0,this.compressionTolerance=.01,this.copyright=null,this.defaultMosaicRule=null,this.definitionExpression=null,this.exportImageServiceParameters=null,this.rasterInfo=null,this.fields=null,this.fullExtent=null,this.hasMultidimensions=!1,this.imageMaxHeight=4100,this.imageMaxWidth=4100,this.interpolation=void 0,this.minScale=0,this.maxScale=0,this.multidimensionalInfo=null,this.multidimensionalSubset=null,this.noData=null,this.noDataInterpretation=void 0,this.objectIdField=null,this.geometryType="polygon",this.typeIdField=null,this.types=[],this.pixelFilter=null,this.raster=void 0,this.sourceType=null,this.viewId=void 0,this.symbolizer=null,this.rasterFunctionInfos=null,this.serviceDataType=null,this.spatialReference=null,this.pixelType=null,this.serviceRasterInfo=null,this.sourceJSON=null,this.url=null,this.version=void 0}initialize(){this._set("exportImageServiceParameters",new T({layer:this}))}readServiceSupportsMosaicRule(e,t){return this._isMosaicRuleSupported(t)}get _rasterFunctionNamesIndex(){const e=new Map;return!this.rasterFunctionInfos||null!=this.rasterFunctionInfos&&this.rasterFunctionInfos.length<1||null!=this.rasterFunctionInfos&&this.rasterFunctionInfos.forEach(t=>{e.set(t.name.toLowerCase().replaceAll(/ /gi,"_"),t.name)}),e}readBandIds(e,t){if(Array.isArray(e)&&e.length>0&&e.every(e=>"number"==typeof e))return e}readCapabilities(e,t){return this._readCapabilities(t)}writeCompressionQuality(e,t,i){null!=e&&"lerc"!==this.format&&(t[i]=e)}writeCompressionTolerance(e,t,i){"lerc"===this.format&&null!=e&&(t[i]=e)}readDefaultMosaicRule(e,t){return this._serviceSupportsMosaicRule?d(()=>P.fromJSON(t)):null}get fieldsIndex(){return this.fields?new M(this.fields):null}set format(e){e&&Be.has(e.toLowerCase())&&this._set("format",e.toLowerCase())}readFormat(e,t){return"esriImageServiceDataTypeVector-UV"===t.serviceDataType||"esriImageServiceDataTypeVector-MagDir"===t.serviceDataType||null!=this.pixelFilter?"lerc":"jpgpng"}readMinScale(e,t){return null!=t.minLOD&&null!=t.maxLOD?e:0}readMaxScale(e,t){return null!=t.minLOD&&null!=t.maxLOD?e:0}set mosaicRule(e){let t=e;t?.mosaicMethod&&(t=P.fromJSON({...t.toJSON(),mosaicMethod:t.mosaicMethod,mosaicOperation:t.mosaicOperation})),this._set("mosaicRule",t)}readMosaicRule(e,t){const i=e||t.mosaicRule;return i?P.fromJSON(i):this._isMosaicRuleSupported(t)?P.fromJSON(t):null}writeMosaicRule(e,t,i){const{mosaicRule:r}=this;this._isValidCustomizedMosaicRule(r)&&(t[i]=r.toJSON())}writeNoData(e,t,i){null!=e&&"number"==typeof e&&(t[i]=ze(e))}readObjectIdField(e,t){if(!e){const i=t.fields.find(e=>"esriFieldTypeOID"===e.type||"oid"===e.type);e=i?.name}return e}get parsedUrl(){return o(this.url)}readSourceType(e,t){return this._isMosaicDataset(t)?"mosaic-dataset":"raster-dataset"}get renderer(){const{activePresetRendererName:e,presetRenderers:t}=this;if(e){const i=t?.find(({name:t})=>t===e);return i?.renderer.clone()}return this.internalRenderer}set renderer(e){this.activePresetRendererName=null,this.internalRenderer=e}set internalRenderer(e){this.loaded&&(e=this._configRenderer(e)),this._set("internalRenderer",e)}readRenderer(e,t,i){const r=t?.layerDefinition?.drawingInfo?.renderer,s=oe(r,i);return null==s?null:("vector-field"===s.type&&t.symbolTileSize&&!r.symbolTileSize&&(s.symbolTileSize=t.symbolTileSize),q(s)||n.getLogger(this).warn("ArcGISImageService","Imagery layer doesn't support given renderer type."),s)}writeRenderer(e,t,i){t.layerDefinition=t.layerDefinition||{},t.layerDefinition.drawingInfo=t.layerDefinition.drawingInfo||{},t.layerDefinition.drawingInfo.renderer=e.toJSON()}get rasterFields(){const e=this.fields?.map(e=>e.clone())??[];e.push(J()),"mosaic-dataset"===this.sourceType&&this.fields?.length&&e.push(U()),this.version>=10.4&&null!=this.rasterFunctionInfos&&this.rasterFunctionInfos.some(({name:e})=>"none"===e.toLowerCase())&&e.push(B()),null!=this.rasterFunctionInfos&&this.rasterFunctionInfos.filter(({name:e})=>"none"!==e.toLowerCase()).forEach(({name:t})=>e.push(z(t)));const{rasterInfo:t}=this;if(this._isVectorDataSet()){const i=t?.multidimensionalInfo?.variables[0].unit?.trim(),r=L(i),s=H();e.push(r,s)}if(t?.multidimensionalInfo&&"raster-dataset"===this.sourceType){const i=G(t.multidimensionalInfo);e.push(...i)}const i=t?.attributeTable;if(null!=i){const t=k(i);e.push(...t)}return e}set rasterFunction(e){let t=e;t?.rasterFunction&&(t=K.fromJSON({...t.toJSON(),rasterFunction:t.rasterFunction,rasterFunctionArguments:t.rasterFunctionArguments})),this._set("rasterFunction",t)}readRasterFunction(e,t){const i=t.rasterFunctionInfos;return t.renderingRule||i?.length&&"None"!==i[0].name?this._isRFTJson(t.renderingRule)?K.fromJSON({rasterFunctionDefinition:t.renderingRule}):K.fromJSON(t.renderingRule||{rasterFunctionInfos:t.rasterFunctionInfos}):null}readSpatialReference(e,t){const i=e||t.extent.spatialReference;return i?g.fromJSON(i):null}writePixelType(e,t,i){null!=this.serviceRasterInfo&&this.pixelType===this.serviceRasterInfo.pixelType||(t[i]=V.toJSON(e))}readVersion(e,t){let i=t.currentVersion;return i||(i=t.hasOwnProperty("fields")||t.hasOwnProperty("timeInfo")?10:9.3),i}applyFilter(e){let t=e;return this.pixelFilter&&(t=this._clonePixelData(e),this.pixelFilter(t)),t}async applyRenderer(e,t){let i=e,{renderer:r,symbolizer:s,pixelFilter:n}=this;const{isRawData:a}=e;if(a&&"lerc"!==this.format&&(r??=Z(this.rasterInfo,{bandIds:this.bandIds,variableName:this.rasterFunction?null:this.mosaicRule?.multidimensionalDefinition?.[0].variableName}),s||(this.symbolizer=new se({rendererJSON:r.toJSON(),rasterInfo:this.rasterInfo}),s=this.symbolizer)),(a||!this._isPicture())&&r&&s&&!n){await this._updateSymbolizer(s,r);const n=this.bandIds?.length?this.bandIds:ee(this.rasterInfo);i=await this._symbolize({pixelData:e,bandIds:n,symbolizer:s},t)}return i}destroy(){this._shutdownJobHandler()}async calculateVolume(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsCalculateVolume)throw new r("imagery-layer:compute-pixel-space-locations","this operation is not supported on the input image service");return e=s(e),this.mosaicRule&&null==e.mosaicRule&&(e.mosaicRule=this.mosaicRule),le(this.url,e,this._getRequestOptions(t))}async computeAngles(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsComputeAngles)throw new r("imagery-layer:compute-angles","this operation is not supported on the input image service");return ue(this.url,e,this._getRequestOptions(t))}async computePixelSpaceLocations(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsComputePixelLocation)throw new r("imagery-layer:compute-pixel-space-locations","this operation is not supported on the input image service");return pe(this.url,e,this._getRequestOptions(t))}async computeHistograms(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsComputeHistograms)throw new r("imagery-layer:compute-histograms","this operation is not supported on the input image service");return e=s(e),this._applyMosaicAndRenderingRules(e),me(this.url,e,this._getRequestOptions(t))}async computeStatisticsHistograms(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsComputeStatisticsHistograms)throw new r("imagery-layer:compute-statistics-histograms","this operation is not supported on the input image service");return e=s(e),this._applyMosaicAndRenderingRules(e),ce(this.url,e,this._getRequestOptions(t))}async measureHeight(e,t){const i=await this._fetchCapabilities(t?.signal);if(!("base-and-top"===e.operationType?i.mensuration.supportsHeightFromBaseAndTop:"base-and-top-shadow"===e.operationType?i.mensuration.supportsHeightFromBaseAndTopShadow:i.mensuration.supportsHeightFromTopAndTopShadow))throw new r("imagery-layer:measure-height","this operation is not supported on the input image service");return e=s(e),this._applyMosaicRule(e),he(this.url,e,this._getRequestOptions(t))}async measureAreaAndPerimeter(e,t){const i=await this._fetchCapabilities(t?.signal);if(!(i.mensuration.supportsAreaAndPerimeter&&(!e.is3D||i.mensuration.supports3D)))throw new r("imagery-layer:measure-area-and-perimeter","this operation is not supported on the input image service");return e=s(e),this._applyMosaicRule(e),de(this.url,e,this._getRequestOptions(t))}async measureDistanceAndAngle(e,t){const i=await this._fetchCapabilities(t?.signal);if(!(i.mensuration.supportsDistanceAndAngle&&(!e.is3D||i.mensuration.supports3D)))throw new r("imagery-layer:measure-distance-and-angle","this operation is not supported on the input image service");return e=s(e),this._applyMosaicRule(e),fe(this.url,e,this._getRequestOptions(t))}async measurePointOrCentroid(e,t){const i=await this._fetchCapabilities(t?.signal);if(!(i.mensuration.supportsPointOrCentroid&&(!e.is3D||i.mensuration.supports3D)))throw new r("imagery-layer:measure-point-or-centroid","this operation is not supported on the input image service");return e=s(e),this._applyMosaicRule(e),ye(this.url,e,this._getRequestOptions(t))}async measureLengthFromImage(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsMeasureFromImage)throw new r("imagery-layer:measure-length-from-image","this operation is not supported on the input image service");if("polyline"!==e.geometry.type)throw new r("imagery-layer:measure-length-from-image","this input geometry must be a polyline");return ge(this.url,e,this._getRequestOptions(t))}async measureAreaFromImage(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsMeasureFromImage)throw new r("imagery-layer:measure-area-from-image","this operation is not supported on the input image service");if("polygon"!==e.geometry.type)throw new r("imagery-layer:measure-area-from-image","this input geometry must be a polygon");return Re(this.url,e,this._getRequestOptions(t))}getField(e){const{fieldsIndex:t}=this;return null!=t?t.get(e):void 0}getFieldDomain(e,t){const i=this.getField(e);return i?i.domain:null}async internalFetchImage(e,t,i,r={}){await this._updateCurrentRasterInfo();const{exportImageServiceParameters:s}=this;let n=!1;r.requestRawData&&(await this._initJobHandler(),s.requestRawData||"lerc"===this.format||(n=!0,s.requestRawData=!0));const a=this.getExportImageServiceParameters(e,t,i,r.timeExtent);if(n&&(s.requestRawData=!1,a&&!this.bandIds?.length&&(null==a.bandIds||""===a.bandIds))){const e=ee(this.rasterInfo);a.bandIds=e?.join(",")}if(null==a){if(r.requestAsImageElement&&this._canRequestImageElement(this.format)){const e=document.createElement("canvas");if(e.width=t,e.height=i,r.returnImageBitmap){return{imageBitmap:await N(e,`${Ge(this.parsedUrl)}/exportImage`,r.signal)}}return{imageOrCanvasElement:e}}const{bandIds:s,rasterInfo:n}=this,a=(s?.length||n.bandCount)??0,o=t*i,l=n.pixelType,u=[];for(let e=0;e<a;e++)u.push(E.createEmptyBand(l,o));return{pixelData:{pixelBlock:new E({width:t,height:i,pixels:u,mask:new Uint8Array(o),pixelType:l}),extent:e}}}const o=!!r.requestAsImageElement&&!this.pixelFilter,l=o&&!!r.returnImageBitmap,u={imageServiceParameters:a,imageProps:{extent:e,width:t,height:i,format:this.format},requestAsImageElement:o,returnImageBitmap:l,signal:r.signal};return this._requestArrayBuffer(u)}async fetchPixels(e,t,i,r={}){await this._initJobHandler(),r.applyRendering&&this._updateCurrentRasterInfo();const s=r.applyRendering?void 0:new T({layer:this,requestRawData:!0,interpolation:r.interpolation??"nearest",bandIds:r.bandIds??[]}),n=this.getExportImageServiceParameters(e,t,i,r.timeExtent,s);if(null==n)return{extent:e,pixelBlock:null};delete n.pixelType,r.bandIds||delete n.bandIds,delete n.compressionQuality;const a={imageServiceParameters:n,imageProps:{extent:e,width:t,height:i,format:this.format},requestAsImageElement:!1,returnImageBitmap:!1,signal:r.signal},{pixelData:o}=await this._requestArrayBuffer(a);return o??{extent:e,pixelBlock:null}}fetchKeyProperties(e){return i(Ge(this.parsedUrl)+"/keyProperties",{query:this._getQueryParams({renderingRule:this.version>=10.3?e?.rasterFunction:null})}).then(e=>e.data)}fetchRasterAttributeTable(e){return this.version<10.1?Promise.reject(new r("#fetchRasterAttributeTable()","Failed to get rasterAttributeTable")):i(Ge(this.parsedUrl)+"/rasterAttributeTable",{query:this._getQueryParams({renderingRule:this.version>=10.3?e?.rasterFunction:null})}).then(e=>Ae.fromJSON(e.data))}getCatalogItemRasterInfo(e,t){const i={...t,query:this._getQueryParams()};return Ne(Ge(this.parsedUrl),e,i)}async getCatalogItemICSInfo(e,t){const{data:r}=await i(Ge(this.parsedUrl)+"/"+e+"/info/ics",{query:this._getQueryParams(),...t}),s=r?.ics;if(!s)return;let n=null;try{n=(await i(Ge(this.parsedUrl)+"/"+e+"/info",{query:this._getQueryParams(),...t})).data.extent}catch{}if(!n?.spatialReference)return{ics:s,icsToPixelTransform:null,icsExtent:null,northDirection:null};const a=this.version>=10.7?i(Ge(this.parsedUrl)+"/"+e+"/info/icstopixel",{query:this._getQueryParams(),...t}).then(e=>e.data).catch(()=>({})):{},o=n.spatialReference,l={geometries:JSON.stringify({geometryType:"esriGeometryEnvelope",geometries:[n]}),inSR:R(o),outSR:"0:"+e},u=i(Ge(this.parsedUrl)+"/project",{query:this._getQueryParams(l),...t}).then(e=>e.data).catch(()=>({})),p=5,m=(n.xmin+n.xmax)/2,c=(n.ymax-n.ymin)/(p+1),h=n.ymin+c,d=[];for(let i=0;i<p;i++)d.push({x:m,y:h+c*i});const y={geometries:JSON.stringify({geometryType:"esriGeometryPoint",geometries:d}),inSR:R(o),outSR:"0:"+e},I=i(Ge(this.parsedUrl)+"/project",{query:this._getQueryParams(y),...t}).then(e=>e.data).catch(()=>({})),v=await Promise.all([a,u,I]);let w=v[0].ipxf;if(null==w){const e=s.geodataXform?.xf_0;"topup"===e?.name?.toLowerCase()&&6===e?.coefficients?.length&&(w={affine:{name:"ics [sensor: Frame] to pixel (column, row) transformation",coefficients:e.coefficients,cellsizeRatio:0,type:"GeometricXform"}})}const b=f.fromJSON(v[1]?.geometries?.[0]);b&&(b.spatialReference=new g({wkid:0,imageCoordinateSystem:s}));const S=v[2].geometries?v[2].geometries.filter(e=>null!=e?.x&&null!=e.y&&"NaN"!==e.x&&"NaN"!==e.y):[],x=S.length;if(x<3)return{ics:s,icsToPixelTransform:w,icsExtent:b,northDirection:null};let _=0,F=0,D=0,O=0;for(let i=0;i<x;i++)_+=S[i].x,F+=S[i].y,D+=S[i].x*S[i].x,O+=S[i].x*S[i].y;const T=(x*O-_*F)/(x*D-_*_);let C=0;const M=S[p-1].x>S[0].x,N=S[p-1].y>S[0].y;return T===1/0?C=N?90:270:0===T?C=M?0:180:T>0?C=M?180*Math.atan(T)/Math.PI:180*Math.atan(T)/Math.PI+180:T<0&&(C=N?180+180*Math.atan(T)/Math.PI:360+180*Math.atan(T)/Math.PI),{ics:s,icsToPixelTransform:w,icsExtent:b,northDirection:C}}async generateRasterInfo(e,t){const i=m(K,e),s={...t,query:this._getQueryParams()};if(!i||"none"===i.functionName?.toLowerCase()||this._isVectorFieldResampleFunction(i))return this.serviceRasterInfo??Te(Ge(this.parsedUrl),this.sourceJSON,s);const n=Le(i);if(!n)throw new r("imagery-layer:generate-raster-info","the rendering rule is not supported");if(this._functionRasterInfos[n])return this._functionRasterInfos[n];const a=Ce(Ge(this.parsedUrl),i,s);this._functionRasterInfos[n]=a;try{return await a}catch(o){throw this._functionRasterInfos[n]=null,o}}getExportImageServiceParameters(e,t,i,r,s){e=e.clone().shiftCentralMeridian();const n=Ie(e.spatialReference,Ge(this.parsedUrl));s??=this.exportImageServiceParameters;const a=s.toJSON(),{bandIds:o,noData:l}=a;let{renderingRule:u}=a;const p=this.rasterFunction?.rasterFunctionDefinition,m=this.renderer?.type,c=!m||"raster-stretch"===m||"raster-colormap"===m||"unique-value"===m||"class-breaks"===m||"raster-shaded-relief"===m;if(o?.length&&this._hasRasterFunction(this.rasterFunction)&&!p&&c){const e={rasterFunction:"ExtractBand",rasterFunctionArguments:{BandIds:o}};if("Stretch"===u.rasterFunction)e.rasterFunctionArguments.Raster=u.rasterFunctionArguments.Raster,u.rasterFunctionArguments.Raster=e;else if("Colormap"===u.rasterFunction){const t=u.rasterFunctionArguments.Raster;"Stretch"===t?.rasterFunction?(e.rasterFunctionArguments.Raster=t.rasterFunctionArguments.Raster,t.rasterFunctionArguments.Raster=e):(e.rasterFunctionArguments.Raster=t,u.rasterFunctionArguments.Raster=e)}else e.rasterFunctionArguments.Raster=u,u=e;a.bandIds=void 0}else a.bandIds=o?.join(",");Array.isArray(l)&&l.length>0&&(a.noData=l.join(","));const h=this._processMultidimensionalIntersection(null,r,s.mosaicRule);if(h.isOutSide)return null;a.mosaicRule=null!=h.mosaicRule?JSON.stringify(h.mosaicRule):null,r=h.timeExtent,a.renderingRule=this._getRenderingRuleString(K.fromJSON(u));const d={};if(null!=r){const{start:e,end:t}=r.toJSON();e&&t&&e===t?d.time=""+e:null==e&&null==t||(d.time=`${e??"null"},${t??"null"}`)}return{bbox:e.xmin+","+e.ymin+","+e.xmax+","+e.ymax,bboxSR:n,imageSR:n,size:t+","+i,...a,...d}}async getSamples(e,t){const i=await this._fetchCapabilities(t?.signal);if(!i?.operations.supportsGetSamples)throw new r("imagery-layer:get-samples","getSamples operation is not supported on the input image service");e=s(e);const{raster:n}=this;return n&&null==e.raster&&(e.raster=n),ve(this.url,e,this._getRequestOptions(t))}async identify(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsIdentify)throw new r("imagery-layer:identify","identify operation is not supported on the input image service");e=s(e),this.version<10.91&&"extent"===e.geometry?.type&&(e.geometry=y.fromExtent(e.geometry));const i=this._processMultidimensionalIntersection(e.geometry,e.timeExtent,e.mosaicRule||this.mosaicRule);if(i.isOutSide)throw new r("imagery-layer:identify","the request cannot be fulfilled when falling outside of the multidimensional subset");e.timeExtent=i.timeExtent,e.mosaicRule=i.mosaicRule;const{raster:n,rasterFunction:a}=this;return a&&null==e.rasterFunction&&(e.rasterFunction=a),n&&null==e.raster&&(e.raster=n),we(this.url,e,this._getRequestOptions(t))}async imageToMap(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsImageToMap)throw new r("imagery-layer:image-to-map","imageToMap operation is not supported on the input image service");return be(Ge(this.parsedUrl),e,this._getRequestOptions(t))}async imageToMapMultiray(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsImageToMapMultiray)throw new r("imagery-layer:image-to-map-multiray","imageToMapMultiray operation is not supported on the input image service");return Se(Ge(this.parsedUrl),e,this._getRequestOptions(t))}async mapToImage(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsMapToImage)throw new r("imagery-layer:map-to-image","mapToImage operation is not supported on the input image service");return xe(Ge(this.parsedUrl),e,this._getRequestOptions(t))}async findImages(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsFindImages)throw new r("imagery-layer:find-images","findImages operation is not supported on the input image service");return _e(Ge(this.parsedUrl),e,this._getRequestOptions(t))}async getImageUrl(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsGetImageUrl)throw new r("imagery-layer:get-image-url","getImageUrl operation is not supported on the input image service");return Fe(Ge(this.parsedUrl),e,this._getRequestOptions(t))}createQuery(){return new Ve({outFields:["*"],returnGeometry:!0,where:this.definitionExpression||"1=1"})}async queryBoundary(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsQueryBoundary)throw new r("imagery-layer:query-boundary","queryBoundary operation is not supported on the input image service");return e=e??{outSpatialReference:this.spatialReference},De(Ge(this.parsedUrl),e,this._getRequestOptions(t))}async queryExtent(e,t){return({query:e,requestOptions:t}=await this._prepareForQuery(e,t)),Pe(this.url,e,t)}async queryRasters(e,t){({query:e,requestOptions:t}=await this._prepareForQuery(e,t));const i=await Ee(this.url,e,t),r=this.graphicOrigin;return i.features.forEach(e=>{e.layer=this,e.origin=r}),i}async queryObjectIds(e,t){return({query:e,requestOptions:t}=await this._prepareForQuery(e,t)),je(this.url,e,t)}async queryGPSInfo(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsQueryGPSInfo)throw new r("imagery-layer:query-gps-info","queryGPSInfo operation is not supported on the input image service");return e=e??{where:"1=1"},Oe(Ge(this.parsedUrl),e,this._getRequestOptions(t))}async queryRasterCount(e,t){return({query:e,requestOptions:t}=await this._prepareForQuery(e,t)),qe(this.url,e,t)}async queryVisibleRasters(e,t){if(!e)throw new r("imagery-layer: query-visible-rasters","missing query parameter");await this.load();const{pixelSize:i,returnDomainValues:s,returnTopmostRaster:n,showNoDataRecords:a}=t||{pixelSize:null,returnDomainValues:!1,returnTopmostRaster:!1,showNoDataRecords:!1};let o=!1,l=null,u=null;const p=$.servicePixelValue.toLowerCase(),m=this._rasterFunctionNamesIndex;if(null!=e.outFields&&(o=e.outFields.some(e=>!e.toLowerCase().startsWith(p)),this.version>=10.4)){const t=e.outFields.filter(e=>e.toLowerCase().startsWith(p)&&e.length>p.length).map(e=>{const t=e.slice(p.length+1);return[this._updateRenderingRulesFunctionName(t,m),t]});l=t.map(e=>new K({functionName:e[0]})),u=t.map(e=>e[1]);const{rasterFunction:i}=this;0===l.length?i?.functionName?(l.push(i),u.push(i.functionName)):l=null:i?.functionName&&!l.some(e=>e.functionName===i.functionName)&&(l.push(i),u.push(i.functionName))}const c=null==e.outSpatialReference||e.outSpatialReference.equals(this.spatialReference),{multidimensionalSubset:h}=this;let d=e.timeExtent||this.timeExtent;if(h){const{isOutside:t,intersection:i}=I(h,{geometry:e.geometry,timeExtent:e.timeExtent,multidimensionalDefinition:this.exportImageServiceParameters.mosaicRule?.multidimensionalDefinition});if(t)throw new r("imagery-layer:query-visible-rasters","the request cannot be fulfilled when falling outside of the multidimensional subset");null!=i?.timeExtent&&(d=i.timeExtent)}const f=this._combineMosaicRuleWithTimeExtent(this.exportImageServiceParameters.mosaicRule,d);let g=e.geometry;this.version<10.91&&"extent"===g?.type&&(g=y.fromExtent(g));const R=this._getQueryParams({geometry:g,timeExtent:d,mosaicRule:f,rasterFunction:this.version<10.4?this.rasterFunction:null,rasterFunctions:l,pixelSize:i,returnCatalogItems:o,returnGeometry:c,raster:this.raster,maxItemCount:n?1:null});delete R.f;const w=new Qe(R);try{await this._generateRasterInfo(this.rasterFunction);const i=await we(this.url,w,{signal:t?.signal,query:{...this.customParameters}}),r=e.outFields,n=null!=i.value&&i.value.toLowerCase().includes("nodata"),l=o&&!c&&i?.catalogItems?.features.length&&(a||!n),p=this.multidimensionalInfo&&"raster-dataset"===this.sourceType?v({rasterInfo:this.rasterInfo,multidimensionalDefinition:f?.multidimensionalDefinition,timeExtent:d,multidimensionalSubset:this.multidimensionalSubset}):null;if(!l)return this._processVisibleRastersResponse(i,{returnDomainValues:s,templateRRFunctionNames:u,showNoDataRecords:a,templateFields:r,effectiveMultidimensionalDefinition:p});const m=this.objectIdField||"ObjectId",h=i.catalogItems?.features??[],y=h.map(e=>e.attributes?.[m]),g=new Ve({objectIds:y,returnGeometry:!0,outSpatialReference:e.outSpatialReference,outFields:[m]}),R=await this.queryRasters(g);return R?.features?.length&&R.features.forEach(t=>{h.forEach(i=>{i.attributes[m]===t.attributes[m]&&t.geometry&&(i.geometry=t.geometry.clone(),null!=e.outSpatialReference&&(i.geometry.spatialReference=e.outSpatialReference))})}),this._processVisibleRastersResponse(i,{returnDomainValues:s,templateRRFunctionNames:u,showNoDataRecords:a,templateFields:r,effectiveMultidimensionalDefinition:p})}catch{throw new r("imagery-layer:query-visible-rasters","encountered error when querying visible rasters")}}async fetchVariableStatisticsHistograms(e,t){const r=i(Ge(this.parsedUrl)+"/statistics",{query:this._getQueryParams({variable:e}),signal:t}).then(e=>e.data?.statistics),s=i(Ge(this.parsedUrl)+"/histograms",{query:this._getQueryParams({variable:e}),signal:t}).then(e=>e.data?.histograms),n=await Promise.all([r,s]);return n[0]&&n[0].forEach(e=>{e.avg=e.mean,e.stddev=e.standardDeviation}),{statistics:n[0]||null,histograms:n[1]||null}}getMultidimensionalSubsetVariables(e){const t=e??this.serviceRasterInfo.multidimensionalInfo;return w(this.multidimensionalSubset,t)}async _fetchService(e){await this._fetchServiceInfo(e),this.rasterInfo||(this.rasterInfo=this.serviceRasterInfo);const t=this.sourceJSON,i=null!=this.serviceRasterInfo?Promise.resolve(this.serviceRasterInfo):Te(Ge(this.parsedUrl),t,{signal:e,query:this._getQueryParams()}).then(e=>(this._set("serviceRasterInfo",e),this._set("multidimensionalInfo",e.multidimensionalInfo),Me(e,t),e)),r=this._hasRasterFunction(this.rasterFunction)?this._generateRasterInfo(this.rasterFunction,{signal:e}):null,s=this._getRasterFunctionInfos();return Promise.all([i,r,s]).then(e=>{e[1]?this._set("rasterInfo",e[1]):this._set("rasterInfo",e[0]),e[2]&&this._set("rasterFunctionInfos",e[2]),this.internalRenderer&&!this._isSupportedRenderer(this.internalRenderer)&&(this._set("internalRenderer",null),n.getLogger(this).warn("ArcGISImageService","Switching to the default renderer. Renderer applied is not valid for this Imagery Layer")),this._set("internalRenderer",this._configRenderer(this.renderer)),this.addHandles([a(()=>this.rasterFunction,e=>{(this.renderer||this.symbolizer||this.popupEnabled&&this.popupTemplate)&&this._generateRasterInfo(e).then(e=>{e&&(this.rasterInfo=e)})})]);const{serviceRasterInfo:t}=this;null!=t.multidimensionalInfo&&this._updateMultidimensionalDefinition(t)})}_combineMosaicRuleWithTimeExtent(e,t){const i=this.timeInfo,{multidimensionalInfo:r}=this.serviceRasterInfo;if(null==e||null==r||null==t||null==i?.startField)return e;const{startField:s}=i,n=r.variables.some(e=>e.dimensions.some(e=>e.name===s))?s:"StdTime";if(e=e.clone(),"mosaic-dataset"===this.sourceType)return e.multidimensionalDefinition=e.multidimensionalDefinition?.filter(e=>e.dimensionName!==n),this._cleanupMultidimensionalDefinition(e);e.multidimensionalDefinition=e.multidimensionalDefinition||[];const a=e.multidimensionalDefinition.filter(e=>e.dimensionName===n),o=null!=t.start?t.start.getTime():null,l=null!=t.end?t.end.getTime():null,u=null==o||null==l||o===l,p=u?[o||l]:[[o,l]],m=this.version>=10.8;if(a.length)a.forEach(e=>{e.dimensionName===n&&(m?(e.dimensionName=null,e.isSlice=!1,e.values=[]):(e.isSlice=u,e.values=p))});else if(!m){const t=e.multidimensionalDefinition.filter(e=>null!=e.variableName&&null==e.dimensionName);t.length?t.forEach(e=>{e.dimensionName=n,e.isSlice=u,e.values=p}):e.multidimensionalDefinition.push(new O({variableName:"",dimensionName:n,isSlice:u,values:p}))}return this._cleanupMultidimensionalDefinition(e)}_cleanupMultidimensionalDefinition(e){return null==e?null:(e.multidimensionalDefinition&&(e.multidimensionalDefinition=e.multidimensionalDefinition.filter(e=>!(!e.variableName&&!e.dimensionName)),0===e.multidimensionalDefinition.length&&(e.multidimensionalDefinition=null)),"mosaic-dataset"!==this.sourceType&&null==e.multidimensionalDefinition?null:e)}async _prepareForQuery(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsQuery)throw new r("imagery-layer:query-rasters","query operation is not supported on the input image service");const i=null!=e?m(Ve,e):this.createQuery();return t=this._getRequestOptions(t),this.raster&&(t.query={...t.query,raster:this.raster}),{query:i,requestOptions:t}}_isSupportedRenderer(e){const{rasterInfo:t,rasterFunction:i}=this;return"unique-value"===e.type&&this._hasRasterFunction(i)&&1===t?.bandCount&&["u8","s8"].includes(t.pixelType)||null!=t&&null!=e&&te(t).includes(e.type)}async _fetchCapabilities(e){return this.capabilities||await this._fetchServiceInfo(e),this.capabilities}async _fetchServiceInfo(e){let t=this.sourceJSON;if(!t){const{data:r,ssl:s}=await i(Ge(this.parsedUrl),{query:this._getQueryParams(),signal:e});t=r,this.sourceJSON=t,s&&(this.url=this.url.replace(/^http:/i,"https:"))}if(t.capabilities?.toLowerCase().split(",").map(e=>e.trim()).indexOf("tilesonly")>-1)throw new r("imagery-layer:fetch-service-info","use ImageryTileLayer to open tiles-only image services");this.read(t,{origin:"service",url:this.parsedUrl})}_isMosaicDataset(e){return e.serviceSourceType?"esriImageServiceSourceTypeMosaicDataset"===e.serviceSourceType:e.fields?.length>0}_isMosaicRuleSupported(e){if(!e)return!1;const t=this._isMosaicDataset(e),i=e.currentVersion>=10.71&&e.hasMultidimensions&&!(e.fields?.length>1);return t||i}_isVectorFieldResampleFunction(e){if(null==e)return!1;const{functionName:t,functionArguments:i}=e,r="resample"===t?.toLowerCase(),s=i?.ResampleType||i?.resampleType;return r&&(7===s||10===s)}_isPicture(){return!this.format||this.format.includes("jpg")||this.format.includes("png")}_configRenderer(e){const t=this._isPicture(),{rasterInfo:i}=this;if(!t&&!this.pixelFilter||this._isVectorDataSet()){const t=this.mosaicRule?.multidimensionalDefinition?.[0].variableName,r=ie({variableName:t,rasterFunctionName:this.rasterFunction?.functionName,presetRenderers:this.presetRenderers});if(!this.bandIds&&i.bandCount>=3){const e=r?.bandIds??ee(i);!e||3===i.bandCount&&0===e[0]&&1===e[1]&&2===e[2]||(this.bandIds=e)}e||(e=r?.renderer??Z(i,{bandIds:this.bandIds,variableName:this.rasterFunction?null:t}));const s=re(e.toJSON());this.symbolizer?(this.symbolizer.rendererJSON=s,this.symbolizer.rasterInfo=i):this.symbolizer=new se({rendererJSON:s,rasterInfo:i}),this.symbolizer.bind().success||(this.symbolizer=null)}return e}_clonePixelData(e){return null==e?e:{extent:e.extent&&e.extent.clone(),pixelBlock:null!=e.pixelBlock?e.pixelBlock.clone():null}}_getQueryParams(e){null!=e?.renderingRule&&"string"!=typeof e.renderingRule&&(e.renderingRule=this._getRenderingRuleString(e.renderingRule));const{raster:t,viewId:i}=this;return{raster:t,viewId:i,f:"json",...e,...this.customParameters}}_getRequestOptions(e){return{...e,query:{...e?.query,...this.customParameters}}}_decodePixelBlock(e,t,i){return this._rasterJobHandler?this._rasterJobHandler.decode({data:e,options:t}):S(e,t,i)}async _getRasterFunctionInfos(e){const t=this.sourceJSON.rasterFunctionInfos;if(this.loaded)return t;if(t&&this.version>=10.3){if(1===t.length&&"none"===t[0].name.toLowerCase())return t;const r=await i(Ge(this.parsedUrl)+"/rasterFunctionInfos",{query:this._getQueryParams(),signal:e});return r.data?.rasterFunctionInfos}return null}_canRequestImageElement(e){return!this.pixelFilter&&(!e||e.includes("png"))}async _requestArrayBuffer(e){const{imageProps:t,requestAsImageElement:s,returnImageBitmap:n,signal:a}=e;if(s&&this._canRequestImageElement(t.format)){const r=`${Ge(this.parsedUrl)}/exportImage`,{data:s}=await i(r,{responseType:n?"blob":"image",query:this._getQueryParams({f:"image",...this.refreshParameters,...e.imageServiceParameters}),signal:a});if(s instanceof Blob){return{imageBitmap:await N(s,r,a),params:t}}return{imageOrCanvasElement:s,params:t}}const o=this._initJobHandler(),l=i(Ge(this.parsedUrl)+"/exportImage",{responseType:"array-buffer",query:this._getQueryParams({f:"image",...e.imageServiceParameters}),signal:a}),u=(await Promise.all([l,o]))[0].data,p=t.format||"jpgpng";let m=p;if("bsq"!==m&&"bip"!==m&&(m=x(u)),!m)throw new r("imagery-layer:fetch-image","unsupported format signature "+String.fromCharCode.apply(null,new Uint8Array(u)));const c={signal:a},h=this._decodePixelBlock(u,{width:t.width,height:t.height,format:p,applyJpegMask:!0},c);return{pixelData:{pixelBlock:await h,extent:t.extent},params:t}}_generateRasterInfo(e,t){return this.generateRasterInfo(e,t).catch(()=>null)}_isValidCustomizedMosaicRule(e){return e&&JSON.stringify(e.toJSON())!==JSON.stringify(this.defaultMosaicRule?.toJSON())}_updateMultidimensionalDefinition(e){if(this._isValidCustomizedMosaicRule(this.mosaicRule))return;let t=b(e,{multidimensionalSubset:this.multidimensionalSubset});if(null!=t&&t.length>0){this.mosaicRule=this.mosaicRule||new P;const e=this.mosaicRule.multidimensionalDefinition;!this.sourceJSON.defaultVariableName&&this.rasterFunction&&"none"!==this.rasterFunction.functionName?.toLowerCase()&&t.forEach(e=>e.variableName=""),t=t.filter(({variableName:e,dimensionName:t})=>e&&"*"!==e||t),!e?.length&&t.length&&(this.mosaicRule.multidimensionalDefinition=t)}}_processVisibleRastersResponse(e,i){i=i||{};const r=e.value,{templateRRFunctionNames:s,showNoDataRecords:n,returnDomainValues:a,templateFields:o}=i,l=e.processedValues;let u=e.catalogItems?.features,p=e.properties?.Values?.map(e=>e.replaceAll(/ /gi,", "))||[];const m=this.objectIdField||"ObjectId",c="string"==typeof r&&r.toLowerCase().includes("nodata"),h=[];if(r&&!u&&(!c||n)){const e={};e[m]=0;p=[r],u=[new t({geometry:this.fullExtent,attributes:e})],this.multidimensionalInfo&&"raster-dataset"===this.sourceType&&W(this.rasterFields,e,i.effectiveMultidimensionalDefinition)}if(!u)return[];this._updateResponseFieldNames(u,o),c&&!n&&(u=[]);const{itemPixelValue:d,servicePixelValue:f}=$,y=this.rasterFields.some(e=>e.name===d),g=this.graphicOrigin;for(let t=0;t<u.length;t++){const e=u[t];if(null!=r){const i=p[t],a=this.rasterFunction&&l&&l.length>0&&s&&s.length>0&&s.includes(this.rasterFunction.functionName)?l[s.indexOf(this.rasterFunction.functionName)]:r;if("nodata"===i.toLowerCase()&&!n)continue;y&&(e.attributes[d]=i),e.attributes[f]=a,this._updateFeatureWithMagDirValues(e,i);const o=this.fields&&this.fields.length>0;let u=this.rasterFunction&&null!=this.serviceRasterInfo.attributeTable?o?i:r:a;this.rasterFunction||(u=o?i:r),this._updateFeatureWithRasterAttributeTableValues(e,u)}if(e.sourceLayer=e.layer=this,e.origin=g,a&&this._updateFeatureWithDomainValues(e),s&&l&&s.length===l.length)for(let t=0;t<s.length;t++){const i=`${$.servicePixelValue}.${s[t]}`;e.attributes[i]=l[t]}h.push(u[t])}return h}_processMultidimensionalIntersection(e,t,i){const{multidimensionalSubset:r}=this;if(!r)return{isOutSide:!1,timeExtent:t,mosaicRule:i=this._combineMosaicRuleWithTimeExtent(i,t)};if(r){const{isOutside:i,intersection:s}=I(r,{geometry:e,timeExtent:t});if(i)return{isOutSide:!0,timeExtent:null,mosaicRule:null};null!=s?.timeExtent&&(t=s.timeExtent)}if(i=this._combineMosaicRuleWithTimeExtent(i,t),i?.multidimensionalDefinition){const{isOutside:e}=I(r,{multidimensionalDefinition:i.multidimensionalDefinition});if(e)return{isOutSide:!0,timeExtent:null,mosaicRule:null}}return{isOutSide:!1,timeExtent:t,mosaicRule:i}}_updateFeatureWithRasterAttributeTableValues(e,t){const i=this.rasterInfo.attributeTable||this.serviceRasterInfo.attributeTable;if(null==i)return;const{features:r,fields:s}=i,n=s.map(e=>e.name).find(e=>"value"===e.toLowerCase());if(!n)return;const a=r.filter(e=>e.attributes[n]===(null!=t?parseInt(t,10):null));a&&a[0]&&s.forEach(t=>{const i=X+t.name;e.attributes[i]=a[0].attributes[t.name]})}_updateFeatureWithMagDirValues(e,t){if(!this._isVectorDataSet())return;const i=t.split(/,\s*/).map(e=>parseFloat(e)),r=i.map(e=>[e]),s=i.map(e=>({minValue:e,maxValue:e,noDataValue:null})),n=new E({height:1,width:1,pixelType:"f32",pixels:r,statistics:s});null!=this.pixelFilter&&this.pixelFilter({pixelBlock:n,extent:new f(0,0,0,0,this.spatialReference)});const a="esriImageServiceDataTypeVector-MagDir"===this.serviceDataType?[n.pixels[0][0],n.pixels[1][0]]:_([n.pixels[0][0],n.pixels[1][0]]);e.attributes[$.magnitude]=a[0],e.attributes[$.direction]=a[1]}_updateFeatureWithDomainValues(e){const t=this.fields&&this.fields.filter(e=>"coded-value"===e.domain?.type);null!=t&&t.forEach(t=>{const i=e.attributes[t.name];if(null!=i){const r=t.domain.codedValues.find(e=>e.code===i);r&&(e.attributes[t.name]=r.name)}})}_updateResponseFieldNames(e,t){if(!t||t.length<1)return;const i=this.fieldsIndex;null!=i&&e.forEach(e=>{if(e?.attributes)for(const r of t){const t=i.get(r)?.name;t&&t!==r&&(e.attributes[r]=e.attributes[t],delete e.attributes[t])}})}_getRenderingRuleString(e){if(e){let t=e.toJSON();return t=t.rasterFunctionDefinition??t,(t.thumbnail||t.thumbnailEx)&&(t.thumbnail=t.thumbnailEx=null),JSON.stringify(t)}return null}_hasRasterFunction(e){return null!=e?.functionName&&"none"!==e.functionName.toLowerCase()}_updateRenderingRulesFunctionName(e,t){if(!e||e.length<1)return;if("Raw"===e)return e.replace("Raw","None");const i=e.toLowerCase().replaceAll(/ /gi,"_");return t.has(i)?t.get(i):e}_isRFTJson(e){return e?.name&&e.arguments&&e.function&&e.hasOwnProperty("functionType")}_isVectorDataSet(){return"esriImageServiceDataTypeVector-UV"===this.serviceDataType||"esriImageServiceDataTypeVector-MagDir"===this.serviceDataType}_applyMosaicAndRenderingRules(e){const{raster:t,mosaicRule:i,rasterFunction:r}=this;r&&null==e.rasterFunction&&(e.rasterFunction=r),i&&null==e.mosaicRule&&(e.mosaicRule=i),t&&null==e.raster&&(e.raster=t)}async _updateCurrentRasterInfo(e){if(this.renderer||this.symbolizer){const t=await this._generateRasterInfo(this.rasterFunction,{signal:e});t&&(this.rasterInfo=t)}}_applyMosaicRule(e){const{raster:t,mosaicRule:i}=this;i&&null==e.mosaicRule&&(e.mosaicRule=i),t&&null==e.raster&&(e.raster=t)}_readCapabilities(e){const t=e.capabilities?e.capabilities.toLowerCase().split(",").map(e=>e.trim()):["image","catalog"],{currentVersion:i,maxRecordCount:r}=e,s=t.includes("image"),n="esriImageServiceDataTypeElevation"===e.serviceDataType,a=!(!e.spatialReference&&!e.extent?.spatialReference),o=t.includes("edit"),l=t.includes("mensuration")&&a,u=null==e.mensurationCapabilities?[]:e.mensurationCapabilities.toLowerCase().split(",").map(e=>e.trim()),p=l&&u.includes("basic"),m=this._isMosaicDataset(e)&&t.includes("catalog"),c=t.includes("download"),h=i>=10.7&&n||i>=11.4&&(n||l&&u.includes("3d")),d=m&&e.fields&&e.fields.length>0,f=d&&e.supportsAdvancedQueries?e.advancedQueryCapabilities:void 0;return{data:{supportsAttachment:!1},operations:{supportsComputeHistograms:s,supportsExportImage:s,supportsIdentify:s,supportsImageToMap:i>=11.2&&m,supportsImageToMapMultiray:i>=11.2&&m,supportsMapToImage:i>=11.2&&m,supportsFindImages:i>=11.2&&m,supportsGetImageUrl:i>=11.3&&c,supportsMeasure:l,supportsMeasureFromImage:i>=11.2,supportsDownload:c,supportsQuery:d,supportsGetSamples:i>=10.2&&s,supportsProject:i>=10.3&&s,supportsComputeStatisticsHistograms:i>=10.4&&s,supportsQueryBoundary:i>=10.6&&s,supportsCalculateVolume:h,supportsComputePixelLocation:i>=10.7&&m,supportsComputeAngles:i>=10.91,supportsQueryGPSInfo:i>=11.2&&m,supportsAdd:o,supportsDelete:o,supportsEditing:o,supportsUpdate:o,supportsCalculate:!1,supportsTruncate:!1,supportsValidateSql:!1,supportsChangeTracking:!1,supportsQueryAttachments:!1,supportsResizeAttachments:!1,supportsSync:!1,supportsExceedsLimitStatistics:!1,supportsQueryAnalytics:!1,supportsQueryBins:!1,supportsQueryPivot:!1,supportsQueryTopFeatures:!1,supportsAsyncConvert3D:!1},query:{maxRecordCount:r,maxRecordCountFactor:void 0,maxUniqueIDCount:void 0,relativeTimeBinWindow:void 0,supportsStatistics:!!f?.supportsStatistics,supportsOrderBy:!!f?.supportsOrderBy,supportsDistinct:!!f?.supportsDistinct,supportsPagination:!!f?.supportsPagination,supportsPaginationOnAggregatedQueries:!!f?.supportsPaginationOnAggregatedQueries,supportsStandardizedQueriesOnly:!!f?.useStandardizedQueries,supportsPercentileStatistics:!!f?.supportsPercentileStatistics,supportsCentroid:!!f?.supportsReturningGeometryCentroid,supportsCentroidOnDegeneratedQuantizedGeometry:!1,supportsCurrentUser:!1,supportsDegeneratedQuantizedGeometry:!1,supportsDistance:!!f?.supportsQueryWithDistance,supportsExtent:!!f?.supportsReturningQueryExtent,supportsGeometryProperties:!!f?.supportsReturningGeometryProperties,supportsHavingClause:!!f?.supportsHavingClause,supportsQuantization:!1,supportsQuantizationEditMode:!1,supportsQueryGeometry:!1,supportsResultType:!1,supportsReturnMesh:!1,supportsMaxRecordCountFactor:!1,supportsSqlExpression:f?.supportsSqlExpression??!!f,supportsTopFeaturesQuery:!1,supportsQueryByAnonymous:!1,supportsQueryByOthers:!1,supportsHistoricMoment:!1,supportsFormatPBF:!1,supportsFormatPBFWithCurves:!1,supportsDisjointSpatialRelationship:!1,supportsCacheHint:!1,supportsSpatialAggregationStatistics:!1,supportedSpatialAggregationStatistics:{envelope:!1,centroid:!1,convexHull:!1},supportsDefaultSpatialReference:!!f?.supportsDefaultSR,supportsFullTextSearch:!1,supportsCompactGeometry:!1,standardMaxRecordCount:void 0,standardMaxRecordCountNoGeometry:void 0,tileMaxRecordCount:void 0,supportsTrueCurve:!1},mensuration:{supportsDistanceAndAngle:p,supportsAreaAndPerimeter:p,supportsPointOrCentroid:p,supportsHeightFromBaseAndTop:l&&u.includes("base-top height"),supportsHeightFromBaseAndTopShadow:l&&u.includes("base-top shadow height"),supportsHeightFromTopAndTopShadow:l&&u.includes("top-top shadow height"),supports3D:l&&u.includes("3d")}}}};function Ge(e){return e?.path??""}return e([l({clonable:!1})],He.prototype,"_functionRasterInfos",void 0),e([l({readOnly:!0})],He.prototype,"_serviceSupportsMosaicRule",void 0),e([Je("_serviceSupportsMosaicRule",["currentVersion","fields"])],He.prototype,"readServiceSupportsMosaicRule",null),e([l({readOnly:!0})],He.prototype,"_rasterFunctionNamesIndex",null),e([l()],He.prototype,"adjustAspectRatio",void 0),e([l({type:[p],json:{write:!0}})],He.prototype,"bandIds",void 0),e([Je("bandIds")],He.prototype,"readBandIds",null),e([l({readOnly:!0,json:{read:!1}})],He.prototype,"capabilities",void 0),e([Je("service","capabilities",["capabilities","currentVersion","serviceDataType"])],He.prototype,"readCapabilities",null),e([l({type:Number})],He.prototype,"compressionQuality",void 0),e([Ue("compressionQuality")],He.prototype,"writeCompressionQuality",null),e([l({type:Number})],He.prototype,"compressionTolerance",void 0),e([Ue("compressionTolerance")],He.prototype,"writeCompressionTolerance",null),e([l({json:{read:{source:"copyrightText"}}})],He.prototype,"copyright",void 0),e([l({readOnly:!0})],He.prototype,"defaultMosaicRule",void 0),e([Je("defaultMosaicRule",["defaultMosaicMethod"])],He.prototype,"readDefaultMosaicRule",null),e([l({type:String,json:{name:"layerDefinition.definitionExpression",write:{enabled:!0,allowNull:!0}}})],He.prototype,"definitionExpression",void 0),e([l({readOnly:!0,constructOnly:!0})],He.prototype,"exportImageServiceParameters",void 0),e([l()],He.prototype,"rasterInfo",void 0),e([l({readOnly:!0,type:[C]})],He.prototype,"fields",void 0),e([l({readOnly:!0})],He.prototype,"fieldsIndex",null),e([l({type:["png","png8","png24","png32","jpg","bmp","gif","jpgpng","lerc","tiff","bip","bsq"],json:{write:!0}})],He.prototype,"format",null),e([Je("service","format",["serviceDataType"])],He.prototype,"readFormat",null),e([l({type:f})],He.prototype,"fullExtent",void 0),e([l({readOnly:!0})],He.prototype,"hasMultidimensions",void 0),e([l({json:{read:{source:"maxImageHeight"}}})],He.prototype,"imageMaxHeight",void 0),e([l({json:{read:{source:"maxImageWidth"}}})],He.prototype,"imageMaxWidth",void 0),e([l({type:String,json:{type:A.jsonValues,read:A.read,write:A.write}})],He.prototype,"interpolation",void 0),e([l()],He.prototype,"minScale",void 0),e([Je("service","minScale")],He.prototype,"readMinScale",null),e([l()],He.prototype,"maxScale",void 0),e([Je("service","maxScale")],He.prototype,"readMaxScale",null),e([l({type:P})],He.prototype,"mosaicRule",null),e([Je("mosaicRule",["mosaicRule","defaultMosaicMethod"])],He.prototype,"readMosaicRule",null),e([Ue("mosaicRule")],He.prototype,"writeMosaicRule",null),e([l()],He.prototype,"multidimensionalInfo",void 0),e([l({type:j,json:{write:!0}})],He.prototype,"multidimensionalSubset",void 0),e([l({json:{type:p}})],He.prototype,"noData",void 0),e([Ue("noData")],He.prototype,"writeNoData",null),e([l({type:String,json:{type:Q.jsonValues,read:Q.read,write:Q.write}})],He.prototype,"noDataInterpretation",void 0),e([l({type:String,readOnly:!0,json:{read:{source:["fields"]}}})],He.prototype,"objectIdField",void 0),e([Je("objectIdField")],He.prototype,"readObjectIdField",null),e([l({readOnly:!0})],He.prototype,"geometryType",void 0),e([l({})],He.prototype,"typeIdField",void 0),e([l({})],He.prototype,"types",void 0),e([l({readOnly:!0})],He.prototype,"parsedUrl",null),e([l({type:Function})],He.prototype,"pixelFilter",void 0),e([l()],He.prototype,"raster",void 0),e([l({readOnly:!0})],He.prototype,"sourceType",void 0),e([Je("sourceType",["serviceSourceType","fields"])],He.prototype,"readSourceType",null),e([l()],He.prototype,"viewId",void 0),e([l({types:ne})],He.prototype,"renderer",null),e([l({types:ne,json:{name:"layerDefinition.drawingInfo.renderer",origins:{"web-scene":{types:ae,name:"layerDefinition.drawingInfo.renderer",write:{overridePolicy:e=>({enabled:e&&"vector-field"!==e.type})}}}}})],He.prototype,"internalRenderer",null),e([Je("internalRenderer")],He.prototype,"readRenderer",null),e([Ue("internalRenderer")],He.prototype,"writeRenderer",null),e([l({clonable:!1})],He.prototype,"symbolizer",void 0),e([l(F)],He.prototype,"opacity",void 0),e([l({readOnly:!0})],He.prototype,"rasterFields",null),e([l({constructOnly:!0})],He.prototype,"rasterFunctionInfos",void 0),e([l({type:K,json:{name:"renderingRule"}})],He.prototype,"rasterFunction",null),e([Je("rasterFunction",["renderingRule","rasterFunctionInfos"])],He.prototype,"readRasterFunction",null),e([l({readOnly:!0})],He.prototype,"serviceDataType",void 0),e([l({readOnly:!0,type:g})],He.prototype,"spatialReference",void 0),e([Je("spatialReference",["spatialReference","extent"])],He.prototype,"readSpatialReference",null),e([l({type:V.apiValues,json:{read:V.read,type:V.jsonValues}})],He.prototype,"pixelType",void 0),e([Ue("pixelType")],He.prototype,"writePixelType",null),e([l({constructOnly:!0,type:Y})],He.prototype,"serviceRasterInfo",void 0),e([l()],He.prototype,"sourceJSON",void 0),e([l(D)],He.prototype,"url",void 0),e([l({readOnly:!0})],He.prototype,"version",void 0),e([Je("version",["currentVersion","fields","timeInfo"])],He.prototype,"readVersion",null),He=e([u("esri.layers.mixins.ArcGISImageService")],He),He};export{He as ArcGISImageService};
2
+ import{__decorate as e}from"tslib";import t from"../../Graphic.js";import i from"../../request.js";import r from"../../core/Error.js";import{clone as s}from"../../core/lang.js";import n from"../../core/Logger.js";import{watch as a}from"../../core/reactiveUtils.js";import{urlToObject as o}from"../../core/urlUtils.js";import{property as l,subclass as u}from"../../core/accessorSupport/decorators.js";import{Integer as p,ensureClass as m}from"../../core/accessorSupport/ensureType.js";import{runUntracked as c}from"../../core/accessorSupport/tracking.js";import h from"../../geometry/Extent.js";import d from"../../geometry/Polygon.js";import f from"../../geometry/SpatialReference.js";import{srToRESTValue as y}from"../../geometry/support/spatialReferenceUtils.js";import{intersectMultimensionalSubset as g,getEffectiveMultidimensionalDefinition as R,getSubsetVariablesFromMdInfo as I,getDefaultMultidimensionalDefinition as v}from"../raster/datasets/multidimensionalUtils.js";import{decode as w,getFormat as b}from"../raster/formats/RasterCodec.js";import{uvComponentToVector as S}from"../raster/functions/vectorFieldUtils.js";import{opacity as x,url as _}from"../support/commonProperties.js";import F from"../support/DimensionalDefinition.js";import{ExportImageServiceParameters as D}from"../support/ExportImageServiceParameters.js";import O from"../support/Field.js";import T from"../support/FieldsIndex.js";import{createBitmap as C}from"../support/imageBitmapUtils.js";import{isSupportedRendererType as M}from"../support/imageryRendererUtils.js";import N from"../support/MosaicRule.js";import q from"../support/MultidimensionalSubset.js";import P from"../support/PixelBlock.js";import{interpolationKebab as j,noDataInterpretationKebab as E,pixelTypeKebabDict as A}from"../support/rasterEnums.js";import{getServicePixelValueField as Q,getItemPixelValueField as V,getRawServicePixelValueField as J,getProcessedServicePixelValueField as U,getMagnitudeField as B,getDirectionField as z,getMultidimensionalFields as L,getRasterAttributeTableFields as H,addMultidimensionalFieldValues as G,commonRasterFieldNames as k,rasterFieldPrefix as W}from"../support/rasterFieldUtils.js";import $ from"../support/RasterFunction.js";import X from"../support/RasterInfo.js";import{createDefaultRenderer as K,getDefaultBandCombination as Y,getSupportedRendererTypes as Z,matchPresetRenderer as ee,normalizeRendererJSON as te}from"../../renderers/support/rasterRendererHelper.js";import ie from"../../renderers/support/RasterSymbolizer.js";import{rasterRendererTypes as re,websceneRasterRendererTypes as se,read as ne}from"../../renderers/support/rasterTypeUtils.js";import{calculateVolume as ae,computeAngles as oe,computePixelSpaceLocations as le,computeHistograms as ue,computeStatisticsHistograms as pe,measureHeight as me,measureAreaAndPerimeter as ce,measureDistanceAndAngle as he,measurePointOrCentroid as de,measureLengthFromImage as fe,measureAreaFromImage as ye,getImageSpatialReferenceQueryParameter as ge,getSamples as Re,identify as Ie,imageToMap as ve,imageToMapMultiray as we,mapToImage as be,findImages as Se,getImageUrl as xe,queryBoundary as _e,queryGPSInfo as Fe}from"../../rest/imageService.js";import{fetchServiceRasterInfo as De,generateRasterInfo as Oe,patchServiceInfo as Te}from"../../rest/imageService/fetchRasterInfo.js";import{getCatalogItemRasterInfo as Ce}from"../../rest/imageService/getCatalogItemRasterInfo.js";import{executeForCount as Me}from"../../rest/query/executeForCount.js";import{executeForExtent as Ne}from"../../rest/query/executeForExtent.js";import{executeForIds as qe}from"../../rest/query/executeForIds.js";import{executeQueryJSON as Pe}from"../../rest/query/executeQueryJSON.js";import je from"../../rest/support/FeatureSet.js";import Ee from"../../rest/support/ImageIdentifyParameters.js";import Ae from"../../rest/support/Query.js";import{reader as Qe}from"../../core/accessorSupport/decorators/reader.js";import{writer as Ve}from"../../core/accessorSupport/decorators/writer.js";const Je=new Set(["png","png8","png24","png32","jpg","bmp","gif","jpgpng","lerc","tiff"]);function Ue(e){const t=JSON.stringify(e),i=t.includes('"rasterFunctionDefinition":{'),r=i?t.match(/"type":"(.*?FunctionArguments")/gi):t.match(/"rasterFunction":"(.*?")/gi),s=r?.map(e=>i?e.slice(8,-18):e.slice(18,-1));return s?s.join("/"):null}const Be=Be=>{const ze=Be;let Le=class extends ze{constructor(){super(...arguments),this._functionRasterInfos={},this._serviceSupportsMosaicRule=null,this.adjustAspectRatio=null,this.bandIds=void 0,this.capabilities=null,this.compressionQuality=void 0,this.compressionTolerance=.01,this.copyright=null,this.defaultMosaicRule=null,this.definitionExpression=null,this.exportImageServiceParameters=null,this.rasterInfo=null,this.fields=null,this.fullExtent=null,this.hasMultidimensions=!1,this.imageMaxHeight=4100,this.imageMaxWidth=4100,this.interpolation=void 0,this.minScale=0,this.maxScale=0,this.multidimensionalInfo=null,this.multidimensionalSubset=null,this.noData=null,this.noDataInterpretation=void 0,this.objectIdField=null,this.geometryType="polygon",this.typeIdField=null,this.types=[],this.pixelFilter=null,this.raster=void 0,this.sourceType=null,this.viewId=void 0,this.symbolizer=null,this.rasterFunctionInfos=null,this.serviceDataType=null,this.spatialReference=null,this.pixelType=null,this.serviceRasterInfo=null,this.sourceJSON=null,this.url=null,this.version=void 0}initialize(){this._set("exportImageServiceParameters",new D({layer:this}))}readServiceSupportsMosaicRule(e,t){return this._isMosaicRuleSupported(t)}get _rasterFunctionNamesIndex(){const e=new Map;return!this.rasterFunctionInfos||null!=this.rasterFunctionInfos&&this.rasterFunctionInfos.length<1||null!=this.rasterFunctionInfos&&this.rasterFunctionInfos.forEach(t=>{e.set(t.name.toLowerCase().replaceAll(/ /gi,"_"),t.name)}),e}readBandIds(e,t){if(Array.isArray(e)&&e.length>0&&e.every(e=>"number"==typeof e))return e}readCapabilities(e,t){return this._readCapabilities(t)}writeCompressionQuality(e,t,i){null!=e&&"lerc"!==this.format&&(t[i]=e)}writeCompressionTolerance(e,t,i){"lerc"===this.format&&null!=e&&(t[i]=e)}readDefaultMosaicRule(e,t){return this._serviceSupportsMosaicRule?c(()=>N.fromJSON(t)):null}get fieldsIndex(){return this.fields?new T(this.fields):null}set format(e){e&&Je.has(e.toLowerCase())&&this._set("format",e.toLowerCase())}readFormat(e,t){return"esriImageServiceDataTypeVector-UV"===t.serviceDataType||"esriImageServiceDataTypeVector-MagDir"===t.serviceDataType||null!=this.pixelFilter?"lerc":"jpgpng"}readMinScale(e,t){return null!=t.minLOD&&null!=t.maxLOD?e:0}readMaxScale(e,t){return null!=t.minLOD&&null!=t.maxLOD?e:0}set mosaicRule(e){let t=e;t?.mosaicMethod&&(t=N.fromJSON({...t.toJSON(),mosaicMethod:t.mosaicMethod,mosaicOperation:t.mosaicOperation})),this._set("mosaicRule",t)}readMosaicRule(e,t){const i=e||t.mosaicRule;return i?N.fromJSON(i):this._isMosaicRuleSupported(t)?N.fromJSON(t):null}writeMosaicRule(e,t,i){const{mosaicRule:r}=this;this._isValidCustomizedMosaicRule(r)&&(t[i]=r.toJSON())}readObjectIdField(e,t){if(!e){const i=t.fields.find(e=>"esriFieldTypeOID"===e.type||"oid"===e.type);e=i?.name}return e}get parsedUrl(){return o(this.url)}readSourceType(e,t){return this._isMosaicDataset(t)?"mosaic-dataset":"raster-dataset"}get renderer(){const{activePresetRendererName:e,presetRenderers:t}=this;if(e){const i=t?.find(({name:t})=>t===e);return i?.renderer.clone()}return this.internalRenderer}set renderer(e){this.activePresetRendererName=null,this.internalRenderer=e}set internalRenderer(e){this.loaded&&(e=this._configRenderer(e)),this._set("internalRenderer",e)}readRenderer(e,t,i){const r=t?.layerDefinition?.drawingInfo?.renderer,s=ne(r,i);return null==s?null:("vector-field"===s.type&&t.symbolTileSize&&!r.symbolTileSize&&(s.symbolTileSize=t.symbolTileSize),M(s)||n.getLogger(this).warn("ArcGISImageService","Imagery layer doesn't support given renderer type."),s)}writeRenderer(e,t,i){t.layerDefinition=t.layerDefinition||{},t.layerDefinition.drawingInfo=t.layerDefinition.drawingInfo||{},t.layerDefinition.drawingInfo.renderer=e.toJSON()}get rasterFields(){const e=this.fields?.map(e=>e.clone())??[];e.push(Q()),"mosaic-dataset"===this.sourceType&&this.fields?.length&&e.push(V()),this.version>=10.4&&null!=this.rasterFunctionInfos&&this.rasterFunctionInfos.some(({name:e})=>"none"===e.toLowerCase())&&e.push(J()),null!=this.rasterFunctionInfos&&this.rasterFunctionInfos.filter(({name:e})=>"none"!==e.toLowerCase()).forEach(({name:t})=>e.push(U(t)));const{rasterInfo:t}=this;if(this._isVectorDataSet()){const i=t?.multidimensionalInfo?.variables[0].unit?.trim(),r=B(i),s=z();e.push(r,s)}if(t?.multidimensionalInfo&&"raster-dataset"===this.sourceType){const i=L(t.multidimensionalInfo);e.push(...i)}const i=t?.attributeTable;if(null!=i){const t=H(i);e.push(...t)}return e}set rasterFunction(e){let t=e;t?.rasterFunction&&(t=$.fromJSON({...t.toJSON(),rasterFunction:t.rasterFunction,rasterFunctionArguments:t.rasterFunctionArguments})),this._set("rasterFunction",t)}readRasterFunction(e,t){const i=t.rasterFunctionInfos;return t.renderingRule||i?.length&&"None"!==i[0].name?this._isRFTJson(t.renderingRule)?$.fromJSON({rasterFunctionDefinition:t.renderingRule}):$.fromJSON(t.renderingRule||{rasterFunctionInfos:t.rasterFunctionInfos}):null}readSpatialReference(e,t){const i=e||t.extent.spatialReference;return i?f.fromJSON(i):null}writePixelType(e,t,i){null!=this.serviceRasterInfo&&this.pixelType===this.serviceRasterInfo.pixelType||(t[i]=A.toJSON(e))}readVersion(e,t){let i=t.currentVersion;return i||(i=t.hasOwnProperty("fields")||t.hasOwnProperty("timeInfo")?10:9.3),i}applyFilter(e){let t=e;return this.pixelFilter&&(t=this._clonePixelData(e),this.pixelFilter(t)),t}async applyRenderer(e,t){let i=e,{renderer:r,symbolizer:s,pixelFilter:n}=this;const{isRawData:a}=e;if(a&&"lerc"!==this.format&&(r??=K(this.rasterInfo,{bandIds:this.bandIds,variableName:this.rasterFunction?null:this.mosaicRule?.multidimensionalDefinition?.[0].variableName}),s||(this.symbolizer=new ie({rendererJSON:r.toJSON(),rasterInfo:this.rasterInfo}),s=this.symbolizer)),(a||!this._isPicture())&&r&&s&&!n){await this._updateSymbolizer(s,r);const n=this.bandIds?.length?this.bandIds:Y(this.rasterInfo);i=await this._symbolize({pixelData:e,bandIds:n,symbolizer:s},t)}return i}destroy(){this._shutdownJobHandler()}async calculateVolume(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsCalculateVolume)throw new r("imagery-layer:compute-pixel-space-locations","this operation is not supported on the input image service");return e=s(e),this.mosaicRule&&null==e.mosaicRule&&(e.mosaicRule=this.mosaicRule),ae(this.url,e,this._getRequestOptions(t))}async computeAngles(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsComputeAngles)throw new r("imagery-layer:compute-angles","this operation is not supported on the input image service");return oe(this.url,e,this._getRequestOptions(t))}async computePixelSpaceLocations(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsComputePixelLocation)throw new r("imagery-layer:compute-pixel-space-locations","this operation is not supported on the input image service");return le(this.url,e,this._getRequestOptions(t))}async computeHistograms(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsComputeHistograms)throw new r("imagery-layer:compute-histograms","this operation is not supported on the input image service");return e=s(e),this._applyMosaicAndRenderingRules(e),ue(this.url,e,this._getRequestOptions(t))}async computeStatisticsHistograms(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsComputeStatisticsHistograms)throw new r("imagery-layer:compute-statistics-histograms","this operation is not supported on the input image service");return e=s(e),this._applyMosaicAndRenderingRules(e),pe(this.url,e,this._getRequestOptions(t))}async measureHeight(e,t){const i=await this._fetchCapabilities(t?.signal);if(!("base-and-top"===e.operationType?i.mensuration.supportsHeightFromBaseAndTop:"base-and-top-shadow"===e.operationType?i.mensuration.supportsHeightFromBaseAndTopShadow:i.mensuration.supportsHeightFromTopAndTopShadow))throw new r("imagery-layer:measure-height","this operation is not supported on the input image service");return e=s(e),this._applyMosaicRule(e),me(this.url,e,this._getRequestOptions(t))}async measureAreaAndPerimeter(e,t){const i=await this._fetchCapabilities(t?.signal);if(!(i.mensuration.supportsAreaAndPerimeter&&(!e.is3D||i.mensuration.supports3D)))throw new r("imagery-layer:measure-area-and-perimeter","this operation is not supported on the input image service");return e=s(e),this._applyMosaicRule(e),ce(this.url,e,this._getRequestOptions(t))}async measureDistanceAndAngle(e,t){const i=await this._fetchCapabilities(t?.signal);if(!(i.mensuration.supportsDistanceAndAngle&&(!e.is3D||i.mensuration.supports3D)))throw new r("imagery-layer:measure-distance-and-angle","this operation is not supported on the input image service");return e=s(e),this._applyMosaicRule(e),he(this.url,e,this._getRequestOptions(t))}async measurePointOrCentroid(e,t){const i=await this._fetchCapabilities(t?.signal);if(!(i.mensuration.supportsPointOrCentroid&&(!e.is3D||i.mensuration.supports3D)))throw new r("imagery-layer:measure-point-or-centroid","this operation is not supported on the input image service");return e=s(e),this._applyMosaicRule(e),de(this.url,e,this._getRequestOptions(t))}async measureLengthFromImage(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsMeasureFromImage)throw new r("imagery-layer:measure-length-from-image","this operation is not supported on the input image service");if("polyline"!==e.geometry.type)throw new r("imagery-layer:measure-length-from-image","this input geometry must be a polyline");return fe(this.url,e,this._getRequestOptions(t))}async measureAreaFromImage(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsMeasureFromImage)throw new r("imagery-layer:measure-area-from-image","this operation is not supported on the input image service");if("polygon"!==e.geometry.type)throw new r("imagery-layer:measure-area-from-image","this input geometry must be a polygon");return ye(this.url,e,this._getRequestOptions(t))}getField(e){const{fieldsIndex:t}=this;return null!=t?t.get(e):void 0}getFieldDomain(e,t){const i=this.getField(e);return i?i.domain:null}async internalFetchImage(e,t,i,r={}){await this._updateCurrentRasterInfo();const{exportImageServiceParameters:s}=this;let n=!1;r.requestRawData&&(await this._initJobHandler(),s.requestRawData||"lerc"===this.format||(n=!0,s.requestRawData=!0));const a=this.getExportImageServiceParameters(e,t,i,r.timeExtent);if(n&&(s.requestRawData=!1,a&&!this.bandIds?.length&&(null==a.bandIds||""===a.bandIds))){const e=Y(this.rasterInfo);a.bandIds=e?.join(",")}if(null==a){if(r.requestAsImageElement&&this._canRequestImageElement(this.format)){const e=document.createElement("canvas");if(e.width=t,e.height=i,r.returnImageBitmap){return{imageBitmap:await C(e,`${He(this.parsedUrl)}/exportImage`,r.signal)}}return{imageOrCanvasElement:e}}const{bandIds:s,rasterInfo:n}=this,a=(s?.length||n.bandCount)??0,o=t*i,l=n.pixelType,u=[];for(let e=0;e<a;e++)u.push(P.createEmptyBand(l,o));return{pixelData:{pixelBlock:new P({width:t,height:i,pixels:u,mask:new Uint8Array(o),pixelType:l}),extent:e}}}const o=!!r.requestAsImageElement&&!this.pixelFilter,l=o&&!!r.returnImageBitmap,u={imageServiceParameters:a,imageProps:{extent:e,width:t,height:i,format:this.format},requestAsImageElement:o,returnImageBitmap:l,signal:r.signal};return this._requestArrayBuffer(u)}async fetchPixels(e,t,i,r={}){await this._initJobHandler(),r.applyRendering&&this._updateCurrentRasterInfo();const s=r.applyRendering?void 0:new D({layer:this,requestRawData:!0,interpolation:r.interpolation??"nearest",bandIds:r.bandIds??[]}),n=this.getExportImageServiceParameters(e,t,i,r.timeExtent,s);if(null==n)return{extent:e,pixelBlock:null};delete n.pixelType,r.bandIds||delete n.bandIds,delete n.compressionQuality;const a={imageServiceParameters:n,imageProps:{extent:e,width:t,height:i,format:this.format},requestAsImageElement:!1,returnImageBitmap:!1,signal:r.signal},{pixelData:o}=await this._requestArrayBuffer(a);return o??{extent:e,pixelBlock:null}}fetchKeyProperties(e){return i(He(this.parsedUrl)+"/keyProperties",{query:this._getQueryParams({renderingRule:this.version>=10.3?e?.rasterFunction:null})}).then(e=>e.data)}fetchRasterAttributeTable(e){return this.version<10.1?Promise.reject(new r("#fetchRasterAttributeTable()","Failed to get rasterAttributeTable")):i(He(this.parsedUrl)+"/rasterAttributeTable",{query:this._getQueryParams({renderingRule:this.version>=10.3?e?.rasterFunction:null})}).then(e=>je.fromJSON(e.data))}getCatalogItemRasterInfo(e,t){const i={...t,query:this._getQueryParams()};return Ce(He(this.parsedUrl),e,i)}async getCatalogItemICSInfo(e,t){const{data:r}=await i(He(this.parsedUrl)+"/"+e+"/info/ics",{query:this._getQueryParams(),...t}),s=r?.ics;if(!s)return;let n=null;try{n=(await i(He(this.parsedUrl)+"/"+e+"/info",{query:this._getQueryParams(),...t})).data.extent}catch{}if(!n?.spatialReference)return{ics:s,icsToPixelTransform:null,icsExtent:null,northDirection:null};const a=this.version>=10.7?i(He(this.parsedUrl)+"/"+e+"/info/icstopixel",{query:this._getQueryParams(),...t}).then(e=>e.data).catch(()=>({})):{},o=n.spatialReference,l={geometries:JSON.stringify({geometryType:"esriGeometryEnvelope",geometries:[n]}),inSR:y(o),outSR:"0:"+e},u=i(He(this.parsedUrl)+"/project",{query:this._getQueryParams(l),...t}).then(e=>e.data).catch(()=>({})),p=5,m=(n.xmin+n.xmax)/2,c=(n.ymax-n.ymin)/(p+1),d=n.ymin+c,g=[];for(let i=0;i<p;i++)g.push({x:m,y:d+c*i});const R={geometries:JSON.stringify({geometryType:"esriGeometryPoint",geometries:g}),inSR:y(o),outSR:"0:"+e},I=i(He(this.parsedUrl)+"/project",{query:this._getQueryParams(R),...t}).then(e=>e.data).catch(()=>({})),v=await Promise.all([a,u,I]);let w=v[0].ipxf;if(null==w){const e=s.geodataXform?.xf_0;"topup"===e?.name?.toLowerCase()&&6===e?.coefficients?.length&&(w={affine:{name:"ics [sensor: Frame] to pixel (column, row) transformation",coefficients:e.coefficients,cellsizeRatio:0,type:"GeometricXform"}})}const b=h.fromJSON(v[1]?.geometries?.[0]);b&&(b.spatialReference=new f({wkid:0,imageCoordinateSystem:s}));const S=v[2].geometries?v[2].geometries.filter(e=>null!=e?.x&&null!=e.y&&"NaN"!==e.x&&"NaN"!==e.y):[],x=S.length;if(x<3)return{ics:s,icsToPixelTransform:w,icsExtent:b,northDirection:null};let _=0,F=0,D=0,O=0;for(let i=0;i<x;i++)_+=S[i].x,F+=S[i].y,D+=S[i].x*S[i].x,O+=S[i].x*S[i].y;const T=(x*O-_*F)/(x*D-_*_);let C=0;const M=S[p-1].x>S[0].x,N=S[p-1].y>S[0].y;return T===1/0?C=N?90:270:0===T?C=M?0:180:T>0?C=M?180*Math.atan(T)/Math.PI:180*Math.atan(T)/Math.PI+180:T<0&&(C=N?180+180*Math.atan(T)/Math.PI:360+180*Math.atan(T)/Math.PI),{ics:s,icsToPixelTransform:w,icsExtent:b,northDirection:C}}async generateRasterInfo(e,t){const i=m($,e),s={...t,query:this._getQueryParams()};if(!i||"none"===i.functionName?.toLowerCase()||this._isVectorFieldResampleFunction(i))return this.serviceRasterInfo??De(He(this.parsedUrl),this.sourceJSON,s);const n=Ue(i);if(!n)throw new r("imagery-layer:generate-raster-info","the rendering rule is not supported");if(this._functionRasterInfos[n])return this._functionRasterInfos[n];const a=Oe(He(this.parsedUrl),i,s);this._functionRasterInfos[n]=a;try{return await a}catch(o){throw this._functionRasterInfos[n]=null,o}}getExportImageServiceParameters(e,t,i,r,s){e=e.clone().shiftCentralMeridian();const n=ge(e.spatialReference,He(this.parsedUrl));s??=this.exportImageServiceParameters;const a=s.toJSON(),{bandIds:o,noData:l}=a;let{renderingRule:u}=a;const p=this.rasterFunction?.rasterFunctionDefinition,m=this.renderer?.type,c=!m||"raster-stretch"===m||"raster-colormap"===m||"unique-value"===m||"class-breaks"===m||"raster-shaded-relief"===m;if(o?.length&&this._hasRasterFunction(this.rasterFunction)&&!p&&c){const e={rasterFunction:"ExtractBand",rasterFunctionArguments:{BandIds:o}};if("Stretch"===u.rasterFunction)e.rasterFunctionArguments.Raster=u.rasterFunctionArguments.Raster,u.rasterFunctionArguments.Raster=e;else if("Colormap"===u.rasterFunction){const t=u.rasterFunctionArguments.Raster;"Stretch"===t?.rasterFunction?(e.rasterFunctionArguments.Raster=t.rasterFunctionArguments.Raster,t.rasterFunctionArguments.Raster=e):(e.rasterFunctionArguments.Raster=t,u.rasterFunctionArguments.Raster=e)}else e.rasterFunctionArguments.Raster=u,u=e;a.bandIds=void 0}else a.bandIds=o?.join(",");Array.isArray(l)&&l.length>0&&(a.noData=l.join(","));const h=this._processMultidimensionalIntersection(null,r,s.mosaicRule);if(h.isOutSide)return null;a.mosaicRule=null!=h.mosaicRule?JSON.stringify(h.mosaicRule):null,r=h.timeExtent,a.renderingRule=this._getRenderingRuleString($.fromJSON(u));const d={};if(null!=r){const{start:e,end:t}=r.toJSON();e&&t&&e===t?d.time=""+e:null==e&&null==t||(d.time=`${e??"null"},${t??"null"}`)}return{bbox:e.xmin+","+e.ymin+","+e.xmax+","+e.ymax,bboxSR:n,imageSR:n,size:t+","+i,...a,...d}}async getSamples(e,t){const i=await this._fetchCapabilities(t?.signal);if(!i?.operations.supportsGetSamples)throw new r("imagery-layer:get-samples","getSamples operation is not supported on the input image service");e=s(e);const{raster:n}=this;return n&&null==e.raster&&(e.raster=n),Re(this.url,e,this._getRequestOptions(t))}async identify(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsIdentify)throw new r("imagery-layer:identify","identify operation is not supported on the input image service");e=s(e),this.version<10.91&&"extent"===e.geometry?.type&&(e.geometry=d.fromExtent(e.geometry));const i=this._processMultidimensionalIntersection(e.geometry,e.timeExtent,e.mosaicRule||this.mosaicRule);if(i.isOutSide)throw new r("imagery-layer:identify","the request cannot be fulfilled when falling outside of the multidimensional subset");e.timeExtent=i.timeExtent,e.mosaicRule=i.mosaicRule;const{raster:n,rasterFunction:a}=this;return a&&null==e.rasterFunction&&(e.rasterFunction=a),n&&null==e.raster&&(e.raster=n),Ie(this.url,e,this._getRequestOptions(t))}async imageToMap(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsImageToMap)throw new r("imagery-layer:image-to-map","imageToMap operation is not supported on the input image service");return ve(He(this.parsedUrl),e,this._getRequestOptions(t))}async imageToMapMultiray(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsImageToMapMultiray)throw new r("imagery-layer:image-to-map-multiray","imageToMapMultiray operation is not supported on the input image service");return we(He(this.parsedUrl),e,this._getRequestOptions(t))}async mapToImage(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsMapToImage)throw new r("imagery-layer:map-to-image","mapToImage operation is not supported on the input image service");return be(He(this.parsedUrl),e,this._getRequestOptions(t))}async findImages(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsFindImages)throw new r("imagery-layer:find-images","findImages operation is not supported on the input image service");return Se(He(this.parsedUrl),e,this._getRequestOptions(t))}async getImageUrl(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsGetImageUrl)throw new r("imagery-layer:get-image-url","getImageUrl operation is not supported on the input image service");return xe(He(this.parsedUrl),e,this._getRequestOptions(t))}createQuery(){return new Ae({outFields:["*"],returnGeometry:!0,where:this.definitionExpression||"1=1"})}async queryBoundary(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsQueryBoundary)throw new r("imagery-layer:query-boundary","queryBoundary operation is not supported on the input image service");return e=e??{outSpatialReference:this.spatialReference},_e(He(this.parsedUrl),e,this._getRequestOptions(t))}async queryExtent(e,t){return({query:e,requestOptions:t}=await this._prepareForQuery(e,t)),Ne(this.url,e,t)}async queryRasters(e,t){({query:e,requestOptions:t}=await this._prepareForQuery(e,t));const i=await Pe(this.url,e,t),r=this.graphicOrigin;return i.features.forEach(e=>{e.layer=this,e.origin=r}),i}async queryObjectIds(e,t){return({query:e,requestOptions:t}=await this._prepareForQuery(e,t)),qe(this.url,e,t)}async queryGPSInfo(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsQueryGPSInfo)throw new r("imagery-layer:query-gps-info","queryGPSInfo operation is not supported on the input image service");return e=e??{where:"1=1"},Fe(He(this.parsedUrl),e,this._getRequestOptions(t))}async queryRasterCount(e,t){return({query:e,requestOptions:t}=await this._prepareForQuery(e,t)),Me(this.url,e,t)}async queryVisibleRasters(e,t){if(!e)throw new r("imagery-layer: query-visible-rasters","missing query parameter");await this.load();const{pixelSize:i,returnDomainValues:s,returnTopmostRaster:n,showNoDataRecords:a}=t||{pixelSize:null,returnDomainValues:!1,returnTopmostRaster:!1,showNoDataRecords:!1};let o=!1,l=null,u=null;const p=k.servicePixelValue.toLowerCase(),m=this._rasterFunctionNamesIndex;if(null!=e.outFields&&(o=e.outFields.some(e=>!e.toLowerCase().startsWith(p)),this.version>=10.4)){const t=e.outFields.filter(e=>e.toLowerCase().startsWith(p)&&e.length>p.length).map(e=>{const t=e.slice(p.length+1);return[this._updateRenderingRulesFunctionName(t,m),t]});l=t.map(e=>new $({functionName:e[0]})),u=t.map(e=>e[1]);const{rasterFunction:i}=this;0===l.length?i?.functionName?(l.push(i),u.push(i.functionName)):l=null:i?.functionName&&!l.some(e=>e.functionName===i.functionName)&&(l.push(i),u.push(i.functionName))}const c=null==e.outSpatialReference||e.outSpatialReference.equals(this.spatialReference),{multidimensionalSubset:h}=this;let f=e.timeExtent||this.timeExtent;if(h){const{isOutside:t,intersection:i}=g(h,{geometry:e.geometry,timeExtent:e.timeExtent,multidimensionalDefinition:this.exportImageServiceParameters.mosaicRule?.multidimensionalDefinition});if(t)throw new r("imagery-layer:query-visible-rasters","the request cannot be fulfilled when falling outside of the multidimensional subset");null!=i?.timeExtent&&(f=i.timeExtent)}const y=this._combineMosaicRuleWithTimeExtent(this.exportImageServiceParameters.mosaicRule,f);let I=e.geometry;this.version<10.91&&"extent"===I?.type&&(I=d.fromExtent(I));const v=this._getQueryParams({geometry:I,timeExtent:f,mosaicRule:y,rasterFunction:this.version<10.4?this.rasterFunction:null,rasterFunctions:l,pixelSize:i,returnCatalogItems:o,returnGeometry:c,raster:this.raster,maxItemCount:n?1:null});delete v.f;const w=new Ee(v);try{await this._generateRasterInfo(this.rasterFunction);const i=await Ie(this.url,w,{signal:t?.signal,query:{...this.customParameters}}),r=e.outFields,n=null!=i.value&&i.value.toLowerCase().includes("nodata"),l=o&&!c&&i?.catalogItems?.features.length&&(a||!n),p=this.multidimensionalInfo&&"raster-dataset"===this.sourceType?R({rasterInfo:this.rasterInfo,multidimensionalDefinition:y?.multidimensionalDefinition,timeExtent:f,multidimensionalSubset:this.multidimensionalSubset}):null;if(!l)return this._processVisibleRastersResponse(i,{returnDomainValues:s,templateRRFunctionNames:u,showNoDataRecords:a,templateFields:r,effectiveMultidimensionalDefinition:p});const m=this.objectIdField||"ObjectId",h=i.catalogItems?.features??[],d=h.map(e=>e.attributes?.[m]),g=new Ae({objectIds:d,returnGeometry:!0,outSpatialReference:e.outSpatialReference,outFields:[m]}),I=await this.queryRasters(g);return I?.features?.length&&I.features.forEach(t=>{h.forEach(i=>{i.attributes[m]===t.attributes[m]&&t.geometry&&(i.geometry=t.geometry.clone(),null!=e.outSpatialReference&&(i.geometry.spatialReference=e.outSpatialReference))})}),this._processVisibleRastersResponse(i,{returnDomainValues:s,templateRRFunctionNames:u,showNoDataRecords:a,templateFields:r,effectiveMultidimensionalDefinition:p})}catch{throw new r("imagery-layer:query-visible-rasters","encountered error when querying visible rasters")}}async fetchVariableStatisticsHistograms(e,t){const r=i(He(this.parsedUrl)+"/statistics",{query:this._getQueryParams({variable:e}),signal:t}).then(e=>e.data?.statistics),s=i(He(this.parsedUrl)+"/histograms",{query:this._getQueryParams({variable:e}),signal:t}).then(e=>e.data?.histograms),n=await Promise.all([r,s]);return n[0]&&n[0].forEach(e=>{e.avg=e.mean,e.stddev=e.standardDeviation}),{statistics:n[0]||null,histograms:n[1]||null}}getMultidimensionalSubsetVariables(e){const t=e??this.serviceRasterInfo.multidimensionalInfo;return I(this.multidimensionalSubset,t)}async _fetchService(e){await this._fetchServiceInfo(e),this.rasterInfo||(this.rasterInfo=this.serviceRasterInfo);const t=this.sourceJSON,i=null!=this.serviceRasterInfo?Promise.resolve(this.serviceRasterInfo):De(He(this.parsedUrl),t,{signal:e,query:this._getQueryParams()}).then(e=>(this._set("serviceRasterInfo",e),this._set("multidimensionalInfo",e.multidimensionalInfo),Te(e,t),e)),r=this._hasRasterFunction(this.rasterFunction)?this._generateRasterInfo(this.rasterFunction,{signal:e}):null,s=this._getRasterFunctionInfos();return Promise.all([i,r,s]).then(e=>{e[1]?this._set("rasterInfo",e[1]):this._set("rasterInfo",e[0]),e[2]&&this._set("rasterFunctionInfos",e[2]),this.internalRenderer&&!this._isSupportedRenderer(this.internalRenderer)&&(this._set("internalRenderer",null),n.getLogger(this).warn("ArcGISImageService","Switching to the default renderer. Renderer applied is not valid for this Imagery Layer")),this._set("internalRenderer",this._configRenderer(this.renderer)),this.addHandles([a(()=>this.rasterFunction,e=>{(this.renderer||this.symbolizer||this.popupEnabled&&this.popupTemplate)&&this._generateRasterInfo(e).then(e=>{e&&(this.rasterInfo=e)})})]);const{serviceRasterInfo:t}=this;null!=t.multidimensionalInfo&&this._updateMultidimensionalDefinition(t)})}_combineMosaicRuleWithTimeExtent(e,t){const i=this.timeInfo,{multidimensionalInfo:r}=this.serviceRasterInfo;if(null==e||null==r||null==t||null==i?.startField)return e;const{startField:s}=i,n=r.variables.some(e=>e.dimensions.some(e=>e.name===s))?s:"StdTime";if(e=e.clone(),"mosaic-dataset"===this.sourceType)return e.multidimensionalDefinition=e.multidimensionalDefinition?.filter(e=>e.dimensionName!==n),this._cleanupMultidimensionalDefinition(e);e.multidimensionalDefinition=e.multidimensionalDefinition||[];const a=e.multidimensionalDefinition.filter(e=>e.dimensionName===n),o=null!=t.start?t.start.getTime():null,l=null!=t.end?t.end.getTime():null,u=null==o||null==l||o===l,p=u?[o||l]:[[o,l]],m=this.version>=10.8;if(a.length)a.forEach(e=>{e.dimensionName===n&&(m?(e.dimensionName=null,e.isSlice=!1,e.values=[]):(e.isSlice=u,e.values=p))});else if(!m){const t=e.multidimensionalDefinition.filter(e=>null!=e.variableName&&null==e.dimensionName);t.length?t.forEach(e=>{e.dimensionName=n,e.isSlice=u,e.values=p}):e.multidimensionalDefinition.push(new F({variableName:"",dimensionName:n,isSlice:u,values:p}))}return this._cleanupMultidimensionalDefinition(e)}_cleanupMultidimensionalDefinition(e){return null==e?null:(e.multidimensionalDefinition&&(e.multidimensionalDefinition=e.multidimensionalDefinition.filter(e=>!(!e.variableName&&!e.dimensionName)),0===e.multidimensionalDefinition.length&&(e.multidimensionalDefinition=null)),"mosaic-dataset"!==this.sourceType&&null==e.multidimensionalDefinition?null:e)}async _prepareForQuery(e,t){if(!(await this._fetchCapabilities(t?.signal)).operations.supportsQuery)throw new r("imagery-layer:query-rasters","query operation is not supported on the input image service");const i=null!=e?m(Ae,e):this.createQuery();return t=this._getRequestOptions(t),this.raster&&(t.query={...t.query,raster:this.raster}),{query:i,requestOptions:t}}_isSupportedRenderer(e){const{rasterInfo:t,rasterFunction:i}=this;return"unique-value"===e.type&&this._hasRasterFunction(i)&&1===t?.bandCount&&["u8","s8"].includes(t.pixelType)||null!=t&&null!=e&&Z(t).includes(e.type)}async _fetchCapabilities(e){return this.capabilities||await this._fetchServiceInfo(e),this.capabilities}async _fetchServiceInfo(e){let t=this.sourceJSON;if(!t){const{data:r,ssl:s}=await i(He(this.parsedUrl),{query:this._getQueryParams(),signal:e});t=r,this.sourceJSON=t,s&&(this.url=this.url.replace(/^http:/i,"https:"))}if(t.capabilities?.toLowerCase().split(",").map(e=>e.trim()).indexOf("tilesonly")>-1)throw new r("imagery-layer:fetch-service-info","use ImageryTileLayer to open tiles-only image services");this.read(t,{origin:"service",url:this.parsedUrl})}_isMosaicDataset(e){return e.serviceSourceType?"esriImageServiceSourceTypeMosaicDataset"===e.serviceSourceType:e.fields?.length>0}_isMosaicRuleSupported(e){if(!e)return!1;const t=this._isMosaicDataset(e),i=e.currentVersion>=10.71&&e.hasMultidimensions&&!(e.fields?.length>1);return t||i}_isVectorFieldResampleFunction(e){if(null==e)return!1;const{functionName:t,functionArguments:i}=e,r="resample"===t?.toLowerCase(),s=i?.ResampleType||i?.resampleType;return r&&(7===s||10===s)}_isPicture(){return!this.format||this.format.includes("jpg")||this.format.includes("png")}_configRenderer(e){const t=this._isPicture(),{rasterInfo:i}=this;if(!t&&!this.pixelFilter||this._isVectorDataSet()){const t=this.mosaicRule?.multidimensionalDefinition?.[0].variableName,r=ee({variableName:t,rasterFunctionName:this.rasterFunction?.functionName,presetRenderers:this.presetRenderers});if(!this.bandIds&&i.bandCount>=3){const e=r?.bandIds??Y(i);!e||3===i.bandCount&&0===e[0]&&1===e[1]&&2===e[2]||(this.bandIds=e)}e||(e=r?.renderer??K(i,{bandIds:this.bandIds,variableName:this.rasterFunction?null:t}));const s=te(e.toJSON());this.symbolizer?(this.symbolizer.rendererJSON=s,this.symbolizer.rasterInfo=i):this.symbolizer=new ie({rendererJSON:s,rasterInfo:i}),this.symbolizer.bind().success||(this.symbolizer=null)}return e}_clonePixelData(e){return null==e?e:{extent:e.extent&&e.extent.clone(),pixelBlock:null!=e.pixelBlock?e.pixelBlock.clone():null}}_getQueryParams(e){null!=e?.renderingRule&&"string"!=typeof e.renderingRule&&(e.renderingRule=this._getRenderingRuleString(e.renderingRule));const{raster:t,viewId:i}=this;return{raster:t,viewId:i,f:"json",...e,...this.customParameters}}_getRequestOptions(e){return{...e,query:{...e?.query,...this.customParameters}}}_decodePixelBlock(e,t,i){return this._rasterJobHandler?this._rasterJobHandler.decode({data:e,options:t}):w(e,t,i)}async _getRasterFunctionInfos(e){const t=this.sourceJSON.rasterFunctionInfos;if(this.loaded)return t;if(t&&this.version>=10.3){if(1===t.length&&"none"===t[0].name.toLowerCase())return t;const r=await i(He(this.parsedUrl)+"/rasterFunctionInfos",{query:this._getQueryParams(),signal:e});return r.data?.rasterFunctionInfos}return null}_canRequestImageElement(e){return!this.pixelFilter&&(!e||e.includes("png"))}async _requestArrayBuffer(e){const{imageProps:t,requestAsImageElement:s,returnImageBitmap:n,signal:a}=e;if(s&&this._canRequestImageElement(t.format)){const r=`${He(this.parsedUrl)}/exportImage`,{data:s}=await i(r,{responseType:n?"blob":"image",query:this._getQueryParams({f:"image",...this.refreshParameters,...e.imageServiceParameters}),signal:a});if(s instanceof Blob){return{imageBitmap:await C(s,r,a),params:t}}return{imageOrCanvasElement:s,params:t}}const o=this._initJobHandler(),l=i(He(this.parsedUrl)+"/exportImage",{responseType:"array-buffer",query:this._getQueryParams({f:"image",...e.imageServiceParameters}),signal:a}),u=(await Promise.all([l,o]))[0].data,p=t.format||"jpgpng";let m=p;if("bsq"!==m&&"bip"!==m&&(m=b(u)),!m)throw new r("imagery-layer:fetch-image","unsupported format signature "+String.fromCharCode.apply(null,new Uint8Array(u)));const c={signal:a},h=this._decodePixelBlock(u,{width:t.width,height:t.height,format:p,applyJpegMask:!0},c);return{pixelData:{pixelBlock:await h,extent:t.extent},params:t}}_generateRasterInfo(e,t){return this.generateRasterInfo(e,t).catch(()=>null)}_isValidCustomizedMosaicRule(e){return e&&JSON.stringify(e.toJSON())!==JSON.stringify(this.defaultMosaicRule?.toJSON())}_updateMultidimensionalDefinition(e){if(this._isValidCustomizedMosaicRule(this.mosaicRule))return;let t=v(e,{multidimensionalSubset:this.multidimensionalSubset});if(null!=t&&t.length>0){this.mosaicRule=this.mosaicRule||new N;const e=this.mosaicRule.multidimensionalDefinition;!this.sourceJSON.defaultVariableName&&this.rasterFunction&&"none"!==this.rasterFunction.functionName?.toLowerCase()&&t.forEach(e=>e.variableName=""),t=t.filter(({variableName:e,dimensionName:t})=>e&&"*"!==e||t),!e?.length&&t.length&&(this.mosaicRule.multidimensionalDefinition=t)}}_processVisibleRastersResponse(e,i){i=i||{};const r=e.value,{templateRRFunctionNames:s,showNoDataRecords:n,returnDomainValues:a,templateFields:o}=i,l=e.processedValues;let u=e.catalogItems?.features,p=e.properties?.Values?.map(e=>e.replaceAll(/ /gi,", "))||[];const m=this.objectIdField||"ObjectId",c="string"==typeof r&&r.toLowerCase().includes("nodata"),h=[];if(r&&!u&&(!c||n)){const e={};e[m]=0;p=[r],u=[new t({geometry:this.fullExtent,attributes:e})],this.multidimensionalInfo&&"raster-dataset"===this.sourceType&&G(this.rasterFields,e,i.effectiveMultidimensionalDefinition)}if(!u)return[];this._updateResponseFieldNames(u,o),c&&!n&&(u=[]);const{itemPixelValue:d,servicePixelValue:f}=k,y=this.rasterFields.some(e=>e.name===d),g=this.graphicOrigin;for(let t=0;t<u.length;t++){const e=u[t];if(null!=r){const i=p[t],a=this.rasterFunction&&l&&l.length>0&&s&&s.length>0&&s.includes(this.rasterFunction.functionName)?l[s.indexOf(this.rasterFunction.functionName)]:r;if("nodata"===i.toLowerCase()&&!n)continue;y&&(e.attributes[d]=i),e.attributes[f]=a,this._updateFeatureWithMagDirValues(e,i);const o=this.fields&&this.fields.length>0;let u=this.rasterFunction&&null!=this.serviceRasterInfo.attributeTable?o?i:r:a;this.rasterFunction||(u=o?i:r),this._updateFeatureWithRasterAttributeTableValues(e,u)}if(e.sourceLayer=e.layer=this,e.origin=g,a&&this._updateFeatureWithDomainValues(e),s&&l&&s.length===l.length)for(let t=0;t<s.length;t++){const i=`${k.servicePixelValue}.${s[t]}`;e.attributes[i]=l[t]}h.push(u[t])}return h}_processMultidimensionalIntersection(e,t,i){const{multidimensionalSubset:r}=this;if(!r)return{isOutSide:!1,timeExtent:t,mosaicRule:i=this._combineMosaicRuleWithTimeExtent(i,t)};if(r){const{isOutside:i,intersection:s}=g(r,{geometry:e,timeExtent:t});if(i)return{isOutSide:!0,timeExtent:null,mosaicRule:null};null!=s?.timeExtent&&(t=s.timeExtent)}if(i=this._combineMosaicRuleWithTimeExtent(i,t),i?.multidimensionalDefinition){const{isOutside:e}=g(r,{multidimensionalDefinition:i.multidimensionalDefinition});if(e)return{isOutSide:!0,timeExtent:null,mosaicRule:null}}return{isOutSide:!1,timeExtent:t,mosaicRule:i}}_updateFeatureWithRasterAttributeTableValues(e,t){const i=this.rasterInfo.attributeTable||this.serviceRasterInfo.attributeTable;if(null==i)return;const{features:r,fields:s}=i,n=s.map(e=>e.name).find(e=>"value"===e.toLowerCase());if(!n)return;const a=r.filter(e=>e.attributes[n]===(null!=t?parseInt(t,10):null));a&&a[0]&&s.forEach(t=>{const i=W+t.name;e.attributes[i]=a[0].attributes[t.name]})}_updateFeatureWithMagDirValues(e,t){if(!this._isVectorDataSet())return;const i=t.split(/,\s*/).map(e=>parseFloat(e)),r=i.map(e=>[e]),s=i.map(e=>({minValue:e,maxValue:e,noDataValue:null})),n=new P({height:1,width:1,pixelType:"f32",pixels:r,statistics:s});null!=this.pixelFilter&&this.pixelFilter({pixelBlock:n,extent:new h(0,0,0,0,this.spatialReference)});const a="esriImageServiceDataTypeVector-MagDir"===this.serviceDataType?[n.pixels[0][0],n.pixels[1][0]]:S([n.pixels[0][0],n.pixels[1][0]]);e.attributes[k.magnitude]=a[0],e.attributes[k.direction]=a[1]}_updateFeatureWithDomainValues(e){const t=this.fields&&this.fields.filter(e=>"coded-value"===e.domain?.type);null!=t&&t.forEach(t=>{const i=e.attributes[t.name];if(null!=i){const r=t.domain.codedValues.find(e=>e.code===i);r&&(e.attributes[t.name]=r.name)}})}_updateResponseFieldNames(e,t){if(!t||t.length<1)return;const i=this.fieldsIndex;null!=i&&e.forEach(e=>{if(e?.attributes)for(const r of t){const t=i.get(r)?.name;t&&t!==r&&(e.attributes[r]=e.attributes[t],delete e.attributes[t])}})}_getRenderingRuleString(e){if(e){let t=e.toJSON();return t=t.rasterFunctionDefinition??t,(t.thumbnail||t.thumbnailEx)&&(t.thumbnail=t.thumbnailEx=null),JSON.stringify(t)}return null}_hasRasterFunction(e){return null!=e?.functionName&&"none"!==e.functionName.toLowerCase()}_updateRenderingRulesFunctionName(e,t){if(!e||e.length<1)return;if("Raw"===e)return e.replace("Raw","None");const i=e.toLowerCase().replaceAll(/ /gi,"_");return t.has(i)?t.get(i):e}_isRFTJson(e){return e?.name&&e.arguments&&e.function&&e.hasOwnProperty("functionType")}_isVectorDataSet(){return"esriImageServiceDataTypeVector-UV"===this.serviceDataType||"esriImageServiceDataTypeVector-MagDir"===this.serviceDataType}_applyMosaicAndRenderingRules(e){const{raster:t,mosaicRule:i,rasterFunction:r}=this;r&&null==e.rasterFunction&&(e.rasterFunction=r),i&&null==e.mosaicRule&&(e.mosaicRule=i),t&&null==e.raster&&(e.raster=t)}async _updateCurrentRasterInfo(e){if(this.renderer||this.symbolizer){const t=await this._generateRasterInfo(this.rasterFunction,{signal:e});t&&(this.rasterInfo=t)}}_applyMosaicRule(e){const{raster:t,mosaicRule:i}=this;i&&null==e.mosaicRule&&(e.mosaicRule=i),t&&null==e.raster&&(e.raster=t)}_readCapabilities(e){const t=e.capabilities?e.capabilities.toLowerCase().split(",").map(e=>e.trim()):["image","catalog"],{currentVersion:i,maxRecordCount:r}=e,s=t.includes("image"),n="esriImageServiceDataTypeElevation"===e.serviceDataType,a=!(!e.spatialReference&&!e.extent?.spatialReference),o=t.includes("edit"),l=t.includes("mensuration")&&a,u=null==e.mensurationCapabilities?[]:e.mensurationCapabilities.toLowerCase().split(",").map(e=>e.trim()),p=l&&u.includes("basic"),m=this._isMosaicDataset(e)&&t.includes("catalog"),c=t.includes("download"),h=i>=10.7&&n||i>=11.4&&(n||l&&u.includes("3d")),d=m&&e.fields&&e.fields.length>0,f=d&&e.supportsAdvancedQueries?e.advancedQueryCapabilities:void 0;return{data:{supportsAttachment:!1},operations:{supportsComputeHistograms:s,supportsExportImage:s,supportsIdentify:s,supportsImageToMap:i>=11.2&&m,supportsImageToMapMultiray:i>=11.2&&m,supportsMapToImage:i>=11.2&&m,supportsFindImages:i>=11.2&&m,supportsGetImageUrl:i>=11.3&&c,supportsMeasure:l,supportsMeasureFromImage:i>=11.2,supportsDownload:c,supportsQuery:d,supportsGetSamples:i>=10.2&&s,supportsProject:i>=10.3&&s,supportsComputeStatisticsHistograms:i>=10.4&&s,supportsQueryBoundary:i>=10.6&&s,supportsCalculateVolume:h,supportsComputePixelLocation:i>=10.7&&m,supportsComputeAngles:i>=10.91,supportsQueryGPSInfo:i>=11.2&&m,supportsAdd:o,supportsDelete:o,supportsEditing:o,supportsUpdate:o,supportsCalculate:!1,supportsTruncate:!1,supportsValidateSql:!1,supportsChangeTracking:!1,supportsQueryAttachments:!1,supportsResizeAttachments:!1,supportsSync:!1,supportsExceedsLimitStatistics:!1,supportsQueryAnalytics:!1,supportsQueryBins:!1,supportsQueryPivot:!1,supportsQueryTopFeatures:!1,supportsAsyncConvert3D:!1},query:{maxRecordCount:r,maxRecordCountFactor:void 0,maxUniqueIDCount:void 0,relativeTimeBinWindow:void 0,supportsStatistics:!!f?.supportsStatistics,supportsOrderBy:!!f?.supportsOrderBy,supportsDistinct:!!f?.supportsDistinct,supportsPagination:!!f?.supportsPagination,supportsPaginationOnAggregatedQueries:!!f?.supportsPaginationOnAggregatedQueries,supportsStandardizedQueriesOnly:!!f?.useStandardizedQueries,supportsPercentileStatistics:!!f?.supportsPercentileStatistics,supportsCentroid:!!f?.supportsReturningGeometryCentroid,supportsCentroidOnDegeneratedQuantizedGeometry:!1,supportsCurrentUser:!1,supportsDegeneratedQuantizedGeometry:!1,supportsDistance:!!f?.supportsQueryWithDistance,supportsExtent:!!f?.supportsReturningQueryExtent,supportsGeometryProperties:!!f?.supportsReturningGeometryProperties,supportsHavingClause:!!f?.supportsHavingClause,supportsQuantization:!1,supportsQuantizationEditMode:!1,supportsQueryGeometry:!1,supportsResultType:!1,supportsReturnMesh:!1,supportsMaxRecordCountFactor:!1,supportsSqlExpression:f?.supportsSqlExpression??!!f,supportsTopFeaturesQuery:!1,supportsQueryByAnonymous:!1,supportsQueryByOthers:!1,supportsHistoricMoment:!1,supportsFormatPBF:!1,supportsFormatPBFWithCurves:!1,supportsDisjointSpatialRelationship:!1,supportsCacheHint:!1,supportsSpatialAggregationStatistics:!1,supportedSpatialAggregationStatistics:{envelope:!1,centroid:!1,convexHull:!1},supportsDefaultSpatialReference:!!f?.supportsDefaultSR,supportsFullTextSearch:!1,supportsCompactGeometry:!1,standardMaxRecordCount:void 0,standardMaxRecordCountNoGeometry:void 0,tileMaxRecordCount:void 0,supportsTrueCurve:!1},mensuration:{supportsDistanceAndAngle:p,supportsAreaAndPerimeter:p,supportsPointOrCentroid:p,supportsHeightFromBaseAndTop:l&&u.includes("base-top height"),supportsHeightFromBaseAndTopShadow:l&&u.includes("base-top shadow height"),supportsHeightFromTopAndTopShadow:l&&u.includes("top-top shadow height"),supports3D:l&&u.includes("3d")}}}};function He(e){return e?.path??""}return e([l({clonable:!1})],Le.prototype,"_functionRasterInfos",void 0),e([l({readOnly:!0})],Le.prototype,"_serviceSupportsMosaicRule",void 0),e([Qe("_serviceSupportsMosaicRule",["currentVersion","fields"])],Le.prototype,"readServiceSupportsMosaicRule",null),e([l({readOnly:!0})],Le.prototype,"_rasterFunctionNamesIndex",null),e([l()],Le.prototype,"adjustAspectRatio",void 0),e([l({type:[p],json:{write:!0}})],Le.prototype,"bandIds",void 0),e([Qe("bandIds")],Le.prototype,"readBandIds",null),e([l({readOnly:!0,json:{read:!1}})],Le.prototype,"capabilities",void 0),e([Qe("service","capabilities",["capabilities","currentVersion","serviceDataType"])],Le.prototype,"readCapabilities",null),e([l({type:Number})],Le.prototype,"compressionQuality",void 0),e([Ve("compressionQuality")],Le.prototype,"writeCompressionQuality",null),e([l({type:Number})],Le.prototype,"compressionTolerance",void 0),e([Ve("compressionTolerance")],Le.prototype,"writeCompressionTolerance",null),e([l({json:{read:{source:"copyrightText"}}})],Le.prototype,"copyright",void 0),e([l({readOnly:!0})],Le.prototype,"defaultMosaicRule",void 0),e([Qe("defaultMosaicRule",["defaultMosaicMethod"])],Le.prototype,"readDefaultMosaicRule",null),e([l({type:String,json:{name:"layerDefinition.definitionExpression",write:{enabled:!0,allowNull:!0}}})],Le.prototype,"definitionExpression",void 0),e([l({readOnly:!0,constructOnly:!0})],Le.prototype,"exportImageServiceParameters",void 0),e([l()],Le.prototype,"rasterInfo",void 0),e([l({readOnly:!0,type:[O]})],Le.prototype,"fields",void 0),e([l({readOnly:!0})],Le.prototype,"fieldsIndex",null),e([l({type:["png","png8","png24","png32","jpg","bmp","gif","jpgpng","lerc","tiff","bip","bsq"],json:{write:!0}})],Le.prototype,"format",null),e([Qe("service","format",["serviceDataType"])],Le.prototype,"readFormat",null),e([l({type:h})],Le.prototype,"fullExtent",void 0),e([l({readOnly:!0})],Le.prototype,"hasMultidimensions",void 0),e([l({json:{read:{source:"maxImageHeight"}}})],Le.prototype,"imageMaxHeight",void 0),e([l({json:{read:{source:"maxImageWidth"}}})],Le.prototype,"imageMaxWidth",void 0),e([l({type:String,json:{type:j.jsonValues,read:j.read,write:j.write}})],Le.prototype,"interpolation",void 0),e([l()],Le.prototype,"minScale",void 0),e([Qe("service","minScale")],Le.prototype,"readMinScale",null),e([l()],Le.prototype,"maxScale",void 0),e([Qe("service","maxScale")],Le.prototype,"readMaxScale",null),e([l({type:N})],Le.prototype,"mosaicRule",null),e([Qe("mosaicRule",["mosaicRule","defaultMosaicMethod"])],Le.prototype,"readMosaicRule",null),e([Ve("mosaicRule")],Le.prototype,"writeMosaicRule",null),e([l()],Le.prototype,"multidimensionalInfo",void 0),e([l({type:q,json:{write:!0}})],Le.prototype,"multidimensionalSubset",void 0),e([l({json:{type:[Number,[Number]],write:!0}})],Le.prototype,"noData",void 0),e([l({type:String,json:{type:E.jsonValues,read:E.read,write:E.write}})],Le.prototype,"noDataInterpretation",void 0),e([l({type:String,readOnly:!0,json:{read:{source:["fields"]}}})],Le.prototype,"objectIdField",void 0),e([Qe("objectIdField")],Le.prototype,"readObjectIdField",null),e([l({readOnly:!0})],Le.prototype,"geometryType",void 0),e([l({})],Le.prototype,"typeIdField",void 0),e([l({})],Le.prototype,"types",void 0),e([l({readOnly:!0})],Le.prototype,"parsedUrl",null),e([l({type:Function})],Le.prototype,"pixelFilter",void 0),e([l()],Le.prototype,"raster",void 0),e([l({readOnly:!0})],Le.prototype,"sourceType",void 0),e([Qe("sourceType",["serviceSourceType","fields"])],Le.prototype,"readSourceType",null),e([l()],Le.prototype,"viewId",void 0),e([l({types:re})],Le.prototype,"renderer",null),e([l({types:re,json:{name:"layerDefinition.drawingInfo.renderer",origins:{"web-scene":{types:se,name:"layerDefinition.drawingInfo.renderer",write:{overridePolicy:e=>({enabled:e&&"vector-field"!==e.type})}}}}})],Le.prototype,"internalRenderer",null),e([Qe("internalRenderer")],Le.prototype,"readRenderer",null),e([Ve("internalRenderer")],Le.prototype,"writeRenderer",null),e([l({clonable:!1})],Le.prototype,"symbolizer",void 0),e([l(x)],Le.prototype,"opacity",void 0),e([l({readOnly:!0})],Le.prototype,"rasterFields",null),e([l({constructOnly:!0})],Le.prototype,"rasterFunctionInfos",void 0),e([l({type:$,json:{name:"renderingRule"}})],Le.prototype,"rasterFunction",null),e([Qe("rasterFunction",["renderingRule","rasterFunctionInfos"])],Le.prototype,"readRasterFunction",null),e([l({readOnly:!0})],Le.prototype,"serviceDataType",void 0),e([l({readOnly:!0,type:f})],Le.prototype,"spatialReference",void 0),e([Qe("spatialReference",["spatialReference","extent"])],Le.prototype,"readSpatialReference",null),e([l({type:A.apiValues,json:{read:A.read,type:A.jsonValues}})],Le.prototype,"pixelType",void 0),e([Ve("pixelType")],Le.prototype,"writePixelType",null),e([l({constructOnly:!0,type:X})],Le.prototype,"serviceRasterInfo",void 0),e([l()],Le.prototype,"sourceJSON",void 0),e([l(_)],Le.prototype,"url",void 0),e([l({readOnly:!0})],Le.prototype,"version",void 0),e([Qe("version",["currentVersion","fields","timeInfo"])],Le.prototype,"readVersion",null),Le=e([u("esri.layers.mixins.ArcGISImageService")],Le),Le};export{Be as ArcGISImageService};
@@ -25,7 +25,7 @@ export abstract class BlendLayer {
25
25
  * layer is displayed over a [firefly world imagery](https://www.arcgis.com/home/item.html?id=a66bfb7dd3b14228bf7ba42b138fe2ea) layer. The `color` blend mode
26
26
  * is applied to the vintage shaded relief and the result looks like a new layer.
27
27
  *
28
- * <img src="https://developers.arcgis.com/javascript/latest/assets/references/core/layers/blendMode/color-blend.png" alt="color-blend" style="width:800px;"/>
28
+ * <img src="https://developers.arcgis.com/javascript/latest/assets/references/core/layers/blendMode/color-blend.avif" alt="color-blend" style="width:800px;"/>
29
29
  *
30
30
  * > [!WARNING]
31
31
  * >
@@ -83,7 +83,7 @@ export abstract class BlendLayer {
83
83
  * top and bottom layers more towards the top layer color. Use this blend mode, when you want an effect with more contrast than `multiply` or `darken`.
84
84
  *
85
85
  * The following screenshots show how the `multiply` blend mode used for creating a physical map of the world that shows both boundaries and elevation.
86
- * <img src="https://developers.arcgis.com/javascript/latest/assets/references/core/layers/blendMode/multiply-blend.png" alt="multiply-blend" style="width:800px;"/>
86
+ * <img src="https://developers.arcgis.com/javascript/latest/assets/references/core/layers/blendMode/multiply-blend.avif" alt="multiply-blend" style="width:800px;"/>
87
87
  *
88
88
  * Blend mode | Description |
89
89
  * ---------- | ----------- |
@@ -110,7 +110,7 @@ export abstract class BlendLayer {
110
110
  *
111
111
  * Normal blend mode | Overlay blend mode |
112
112
  * ----------------- | ------------------ |
113
- * <img src="https://developers.arcgis.com/javascript/latest/assets/references/core/layers/blendMode/noblendMode.gif" alt="no-blendmode" style="width:400px;"/>|<img src="https://developers.arcgis.com/javascript/latest/assets/references/core/layers/blendMode/overlay-blendMode.gif" alt="overlay-blend" style="width:400px;"/>
113
+ * <img src="https://developers.arcgis.com/javascript/latest/assets/references/core/layers/blendMode/noblendMode.webm" alt="no-blendmode" style="width:400px;"/>|<img src="https://developers.arcgis.com/javascript/latest/assets/references/core/layers/blendMode/overlay-blendMode.webm" alt="overlay-blend" style="width:400px;"/>
114
114
  *
115
115
  * Blend mode | Description |
116
116
  * ---------- | ----------- |
@@ -128,7 +128,7 @@ export abstract class BlendLayer {
128
128
  * [world hillshade layer](https://services.arcgisonline.com/arcgis/rest/services/Elevation/World_Hillshade/MapServer) with `luminosity` blend mode.
129
129
  * The result is a drastically different looking map which preserves the brightness of the topo layer while adapting the hue and saturation of the hillshade layer.
130
130
  *
131
- * <img src="https://developers.arcgis.com/javascript/latest/assets/references/core/layers/blendMode/lumonisity-blend.png" alt="color-blend" style="width:800px;"/>
131
+ * <img src="https://developers.arcgis.com/javascript/latest/assets/references/core/layers/blendMode/lumonisity-blend.avif" alt="color-blend" style="width:800px;"/>
132
132
  *
133
133
  * Blend mode | Description |
134
134
  * ---------- | ----------- |
@@ -152,7 +152,7 @@ export abstract class BlendLayer {
152
152
  * The feature layer contains 2007 county crops data. The right image shows the result of layer blending where `destination-in` blendMode is set on the imagery layer. As you can see, the effect is
153
153
  * very different from the original layers. The blended result shows areas of cultivated crops only (where both imagery and feature layers overlap).
154
154
  *
155
- * <img src="https://developers.arcgis.com/javascript/latest/assets/references/core/layers/blendMode/destination-in-blend-grouplayer.png" alt="destination-in" style="width:800px;"/>
155
+ * <img src="https://developers.arcgis.com/javascript/latest/assets/references/core/layers/blendMode/destination-in-blend-grouplayer.avif" alt="destination-in" style="width:800px;"/>
156
156
  *
157
157
  * Blend mode | Description |
158
158
  * ---------- | ----------- |
@@ -175,7 +175,7 @@ export abstract class BlendLayer {
175
175
  * how setting the `invert` blend mode set on a feature layer with a simple renderer turns the [world Hillshade](https://www.arcgis.com/home/item.html?id=1b243539f4514b6ba35e7d995890db1d)
176
176
  * into a dark themed basemap in no time.
177
177
  *
178
- * <img src="https://developers.arcgis.com/javascript/latest/assets/references/core/layers/blendMode/invert-blendmode.png" alt="color-blend" style="width:800px;"/>
178
+ * <img src="https://developers.arcgis.com/javascript/latest/assets/references/core/layers/blendMode/invert-blendmode.avif" alt="color-blend" style="width:800px;"/>
179
179
  *
180
180
  * Blend mode | Description |
181
181
  * ---------- | ----------- |
@@ -8,7 +8,7 @@ export interface PointCloudReturnFilterProperties extends PointCloudFilterProper
8
8
  * The return number is stored within each point in the `RETURNS` field. For example, the first return is associated with the highest point
9
9
  * in the landscape. In some cases the laser pulse returns only one point representing the ground.
10
10
  *
11
- * ![pcl-return-filter](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/pcl-return-filter.png)
11
+ * ![pcl-return-filter](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/pcl-return-filter.avif)
12
12
  *
13
13
  * A [PointCloudLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/PointCloudLayer/) can be filtered using a PointCloudReturnFilter based on the information
14
14
  * in the `RETURNS` field. Points can be filtered using the values in the [includedReturns](https://developers.arcgis.com/javascript/latest/references/core/layers/pointCloudFilters/PointCloudReturnFilter/#includedReturns).
@@ -26,7 +26,7 @@ export interface PointCloudValueFilterProperties extends PointCloudFilterPropert
26
26
  * });
27
27
  * ```
28
28
  *
29
- * [![pcl-value-filter](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/pcl-value-filter.png)](https://developers.arcgis.com/javascript/latest/sample-code/layers-pointcloud-filters/)
29
+ * [![pcl-value-filter](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/pcl-value-filter.avif)](https://developers.arcgis.com/javascript/latest/sample-code/layers-pointcloud-filters/)
30
30
  *
31
31
  * @since 4.10
32
32
  * @see [Sample - Filter points in a PointCloudLayer](https://developers.arcgis.com/javascript/latest/sample-code/layers-pointcloud-filters/)
@@ -26,7 +26,7 @@ export interface DimensionalDefinitionProperties extends Partial<Pick<Dimensiona
26
26
  * mosaicRule.multidimensionalDefinition = multidimensionalDefinition;
27
27
  * ```
28
28
  *
29
- * [![layers-imagery-dd-0](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/imagery/layers-imagery-dd-0.png)](https://developers.arcgis.com/javascript/latest/sample-code/layers-imagery-pixelvalues/)
29
+ * [![layers-imagery-dd-0](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/imagery/layers-imagery-dd-0.avif)](https://developers.arcgis.com/javascript/latest/sample-code/layers-imagery-pixelvalues/)
30
30
  *
31
31
  * In contrast, the following image renders sea temperature data from the same service
32
32
  * at 5000 meters below the surface within the same time window.
@@ -44,7 +44,7 @@ export interface DimensionalDefinitionProperties extends Partial<Pick<Dimensiona
44
44
  * mosaicRule.multidimensionalDefinition = multidimensionalDefinition;
45
45
  * ```
46
46
  *
47
- * [![layers-imagery-dd-5000](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/imagery/layers-imagery-dd-5000.png)](https://developers.arcgis.com/javascript/latest/sample-code/layers-imagery-pixelvalues/)
47
+ * [![layers-imagery-dd-5000](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/imagery/layers-imagery-dd-5000.avif)](https://developers.arcgis.com/javascript/latest/sample-code/layers-imagery-pixelvalues/)
48
48
  *
49
49
  * @since 4.0
50
50
  * @see [ImageryLayer - working with multidimensional raster data](https://developers.arcgis.com/javascript/latest/references/core/layers/ImageryLayer/#multidimensionaldata)
@@ -98,7 +98,7 @@ export interface FeatureEffectProperties extends Partial<Pick<FeatureEffect, "ex
98
98
  * ```
99
99
  *
100
100
  * <figure>
101
- * <img src="https://developers.arcgis.com/javascript/latest/assets/references/core/layers/effects/water-effects-layer.png" alt="bloom" style="width:800px;"/>
101
+ * <img src="https://developers.arcgis.com/javascript/latest/assets/references/core/layers/effects/water-effects-layer.avif" alt="bloom" style="width:800px;"/>
102
102
  * <figcaption> The left map shows the original layers without any effects. The right map shows result of the following effects being applied to two layers in the map.
103
103
  * </figcaption>
104
104
  * </figure>
@@ -131,7 +131,7 @@ export interface FeatureEffectProperties extends Partial<Pick<FeatureEffect, "ex
131
131
  * ```
132
132
  *
133
133
  * <figure>
134
- * <img src="https://developers.arcgis.com/javascript/latest/assets/references/core/layers/effects/bloom-effect-layer.png" alt="bloom" style="width:800px;"/>
134
+ * <img src="https://developers.arcgis.com/javascript/latest/assets/references/core/layers/effects/bloom-effect-layer.avif" alt="bloom" style="width:800px;"/>
135
135
  * <figcaption> In the following screenshot, both maps show the bombing missions of the Vietnam War (USA). The left map shows the layer without any effects.
136
136
  * The right map shows the layer after the <code>bloom</code> effect is applied.</figcaption>
137
137
  * </figure>
@@ -164,7 +164,7 @@ export interface FeatureEffectProperties extends Partial<Pick<FeatureEffect, "ex
164
164
  * For a layerView, it could be used to blur out excluded features from the filter so that the included features will stand out clearly.
165
165
  *
166
166
  * <figure>
167
- * <img src="https://developers.arcgis.com/javascript/latest/assets/references/core/layers/effects/blur-effect-layer.png" alt="bloom" style="width:800px;" alt="Grizzly Bear habitat ranges">
167
+ * <img src="https://developers.arcgis.com/javascript/latest/assets/references/core/layers/effects/blur-effect-layer.avif" alt="bloom" style="width:800px;" alt="Grizzly Bear habitat ranges">
168
168
  * <figcaption> These maps show historic (blue) and current (red) Grizzly Bear habitat ranges. The map on the right uses a <code>blur</code> layer effect to indicate uncertainty or fuzziness to the boundaries.</figcaption>
169
169
  * </figure>
170
170
  *
@@ -214,7 +214,7 @@ export interface FeatureEffectProperties extends Partial<Pick<FeatureEffect, "ex
214
214
  * ```
215
215
  *
216
216
  * <figure>
217
- * <img src="https://developers.arcgis.com/javascript/latest/assets/references/core/layers/effects/drop-shadow-effect-layer.png" alt="drop-shadow" style="width:800px;"/>
217
+ * <img src="https://developers.arcgis.com/javascript/latest/assets/references/core/layers/effects/drop-shadow-effect-layer.avif" alt="drop-shadow" style="width:800px;"/>
218
218
  * <figcaption> These maps show areas in Greater London that intersect the boundaries of London boroughs. The right map shows the result of applying a <code>drop-shadow</code> effect to features that
219
219
  * intersect boundaries of London boroughs while applying <code>blur</code> and <code>brightness</code> effects to features do not meet from the filter criteria.
220
220
  * </figcaption>
@@ -43,42 +43,42 @@ export interface FeatureFilterProperties extends Partial<Pick<FeatureFilter, "ob
43
43
  * > spatial relationships `contains`, `intersects` and `disjoint`.
44
44
  *
45
45
  *
46
- * ![intersects](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/intersects.png)
46
+ * ![intersects](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/intersects.avif)
47
47
  *
48
48
  * The `contains` spatial relationship returns features in the layer view that are completely contained by the filter [geometry](https://developers.arcgis.com/javascript/latest/references/core/layers/support/FeatureFilter/#geometry).
49
49
  *
50
- * ![contains](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/contains.png)
50
+ * ![contains](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/contains.avif)
51
51
  *
52
52
  * The `crosses` spatial relationship returns features in the layer view when the interior of a filter [geometry](https://developers.arcgis.com/javascript/latest/references/core/layers/support/FeatureFilter/#geometry) comes into contact with
53
53
  * the interior or boundary of features in the layer view. In other words, the geometries share some interior area, but not all interior area.
54
54
  *
55
- * ![crosses](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/crosses.png)
55
+ * ![crosses](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/crosses.avif)
56
56
  *
57
57
  * The `envelope-intersects` spatial relationship returns features in the layer view that intersect the envelope (or extent)
58
58
  * of the filter [geometry](https://developers.arcgis.com/javascript/latest/references/core/layers/support/FeatureFilter/#geometry).
59
59
  *
60
- * ![envelope-intersects](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/envelope-intersects.png)
60
+ * ![envelope-intersects](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/envelope-intersects.avif)
61
61
  *
62
62
  * The `overlaps` spatial relationship returns features in the layer view that overlap the filter [geometry](https://developers.arcgis.com/javascript/latest/references/core/layers/support/FeatureFilter/#geometry).
63
63
  * Only features of the same geometry can be compared.
64
64
  *
65
- * ![overlaps](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/overlap.png)
65
+ * ![overlaps](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/overlap.avif)
66
66
  *
67
67
  * The `touches` spatial relationship returns features in the layer view that touch the filter [geometry](https://developers.arcgis.com/javascript/latest/references/core/layers/support/FeatureFilter/#geometry).
68
68
  * The boundaries of the geometries intersect, but not their interiors.
69
69
  *
70
- * ![touches](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/touches.png)
70
+ * ![touches](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/touches.avif)
71
71
  *
72
72
  * The `within` spatial relationship returns features in the layer view that completely contain the filter [geometry](https://developers.arcgis.com/javascript/latest/references/core/layers/support/FeatureFilter/#geometry).
73
73
  * In other words, the filter geometry is completely `within` the features in the layer view. It is opposite of
74
74
  * `contains`.
75
75
  *
76
- * ![within](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/within.png)
76
+ * ![within](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/within.avif)
77
77
  *
78
78
  * The `disjoint` spatial relationship returns features in the layer view that do not intersect the filter [geometry](https://developers.arcgis.com/javascript/latest/references/core/layers/support/FeatureFilter/#geometry) in anyway.
79
79
  * Opposite of `intersects`.
80
80
  *
81
- * ![disjoint](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/disjoint.png)
81
+ * ![disjoint](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/disjoint.avif)
82
82
  *
83
83
  * @default "intersects"
84
84
  * @see [Sample - Filter features by geometry](https://developers.arcgis.com/javascript/latest/sample-code/featureeffect-geometry/)
@@ -155,7 +155,7 @@ export interface FeatureFilterProperties extends Partial<Pick<FeatureFilter, "ob
155
155
  * units: "miles"
156
156
  * });
157
157
  * ```
158
- * ![screen-size-perspective](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/filter-attributes.gif)
158
+ * ![screen-size-perspective](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/filter-attributes.webm)
159
159
  *
160
160
  * @since 4.22
161
161
  * @see [FeatureLayerView.filter](https://developers.arcgis.com/javascript/latest/references/core/views/layers/FeatureLayerView/#filter)
@@ -225,42 +225,42 @@ export default class FeatureFilter extends JSONSupport {
225
225
  * > spatial relationships `contains`, `intersects` and `disjoint`.
226
226
  *
227
227
  *
228
- * ![intersects](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/intersects.png)
228
+ * ![intersects](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/intersects.avif)
229
229
  *
230
230
  * The `contains` spatial relationship returns features in the layer view that are completely contained by the filter [geometry](https://developers.arcgis.com/javascript/latest/references/core/layers/support/FeatureFilter/#geometry).
231
231
  *
232
- * ![contains](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/contains.png)
232
+ * ![contains](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/contains.avif)
233
233
  *
234
234
  * The `crosses` spatial relationship returns features in the layer view when the interior of a filter [geometry](https://developers.arcgis.com/javascript/latest/references/core/layers/support/FeatureFilter/#geometry) comes into contact with
235
235
  * the interior or boundary of features in the layer view. In other words, the geometries share some interior area, but not all interior area.
236
236
  *
237
- * ![crosses](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/crosses.png)
237
+ * ![crosses](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/crosses.avif)
238
238
  *
239
239
  * The `envelope-intersects` spatial relationship returns features in the layer view that intersect the envelope (or extent)
240
240
  * of the filter [geometry](https://developers.arcgis.com/javascript/latest/references/core/layers/support/FeatureFilter/#geometry).
241
241
  *
242
- * ![envelope-intersects](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/envelope-intersects.png)
242
+ * ![envelope-intersects](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/envelope-intersects.avif)
243
243
  *
244
244
  * The `overlaps` spatial relationship returns features in the layer view that overlap the filter [geometry](https://developers.arcgis.com/javascript/latest/references/core/layers/support/FeatureFilter/#geometry).
245
245
  * Only features of the same geometry can be compared.
246
246
  *
247
- * ![overlaps](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/overlap.png)
247
+ * ![overlaps](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/overlap.avif)
248
248
  *
249
249
  * The `touches` spatial relationship returns features in the layer view that touch the filter [geometry](https://developers.arcgis.com/javascript/latest/references/core/layers/support/FeatureFilter/#geometry).
250
250
  * The boundaries of the geometries intersect, but not their interiors.
251
251
  *
252
- * ![touches](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/touches.png)
252
+ * ![touches](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/touches.avif)
253
253
  *
254
254
  * The `within` spatial relationship returns features in the layer view that completely contain the filter [geometry](https://developers.arcgis.com/javascript/latest/references/core/layers/support/FeatureFilter/#geometry).
255
255
  * In other words, the filter geometry is completely `within` the features in the layer view. It is opposite of
256
256
  * `contains`.
257
257
  *
258
- * ![within](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/within.png)
258
+ * ![within](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/within.avif)
259
259
  *
260
260
  * The `disjoint` spatial relationship returns features in the layer view that do not intersect the filter [geometry](https://developers.arcgis.com/javascript/latest/references/core/layers/support/FeatureFilter/#geometry) in anyway.
261
261
  * Opposite of `intersects`.
262
262
  *
263
- * ![disjoint](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/disjoint.png)
263
+ * ![disjoint](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/spatialRelationships/disjoint.avif)
264
264
  *
265
265
  * @default "intersects"
266
266
  * @see [Sample - Filter features by geometry](https://developers.arcgis.com/javascript/latest/sample-code/featureeffect-geometry/)
@@ -251,7 +251,7 @@ export interface FeatureReductionBinningProperties extends Partial<Pick<FeatureR
251
251
  *
252
252
  * Display all features | Features aggregated to bins
253
253
  * ---------------------|-------------------
254
- * [![binning-disabled](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/binning/all-points.png)](https://developers.arcgis.com/javascript/latest/sample-code/featurereduction-binning/) | [![binning-enabled](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/binning/binned-points.png)](https://developers.arcgis.com/javascript/latest/sample-code/featurereduction-binning/)
254
+ * [![binning-disabled](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/binning/all-points.avif)](https://developers.arcgis.com/javascript/latest/sample-code/featurereduction-binning/) | [![binning-enabled](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/binning/binned-points.avif)](https://developers.arcgis.com/javascript/latest/sample-code/featurereduction-binning/)
255
255
  *
256
256
  * Binning is typically used to visualize large point layers, but may be used with any geometry type _(since version 4.31)_.
257
257
  * In the case of binning polyline or polygon features, the centroid of the line or polygon is used to determine the bin in which it is placed.