@arcgis/core 5.2.0-next.3 → 5.2.0-next.5

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 (477) hide show
  1. package/Graphic.d.ts +2 -1
  2. package/Map.js +1 -1
  3. package/analysis/ShadowCast/MinDurationOptions.d.ts +3 -5
  4. package/analysis/ShadowCast/TotalDurationOptions.d.ts +7 -9
  5. package/analysis/ShadowCastAnalysis.d.ts +7 -6
  6. package/arcgisGlobal.d.ts +5 -0
  7. package/assets/esri/core/workers/RemoteClient.js +1 -1
  8. package/assets/esri/core/workers/chunks/{29bbc0d6d847b065d10e.js → 062aadf426fe97a76bbb.js} +1 -1
  9. package/assets/esri/core/workers/chunks/0aaee272520c6e5bb617.js +1 -0
  10. package/assets/esri/core/workers/chunks/{12053c1213465d07d2f6.js → 0b445c1cf281f158c1f1.js} +1 -1
  11. package/assets/esri/core/workers/chunks/0fbf9bf52ecb4cd8293b.js +1 -0
  12. package/assets/esri/core/workers/chunks/{701125f6cdd91ff3655f.js → 1252da05832e576d4def.js} +2 -2
  13. package/assets/esri/core/workers/chunks/163ce1be8bfe20e77f97.js +1 -0
  14. package/assets/esri/core/workers/chunks/{e87d02af6d6b05e19d93.js → 16713986893adfbc9331.js} +1 -1
  15. package/assets/esri/core/workers/chunks/{9bd713d96502ddc2ce25.js → 1765042635084f75d2b3.js} +1 -1
  16. package/assets/esri/core/workers/chunks/18ebf1d3ed05c8057f7d.js +1 -0
  17. package/assets/esri/core/workers/chunks/1a527c0740d9f4fa0791.js +1 -0
  18. package/assets/esri/core/workers/chunks/1a95370ddc22729ab3c6.js +1 -0
  19. package/assets/esri/core/workers/chunks/{c88fd4f69cb2b53b48ec.js → 1b0765403b06294b3e1d.js} +1 -1
  20. package/assets/esri/core/workers/chunks/1bd8a7f92a428eedb22e.js +1 -0
  21. package/assets/esri/core/workers/chunks/233ff588798c8a5eedf4.js +1 -0
  22. package/assets/esri/core/workers/chunks/24acf3dd541347c2b297.js +1 -0
  23. package/assets/esri/core/workers/chunks/24d9e4f1c7b8ff0d2cce.js +1 -0
  24. package/assets/esri/core/workers/chunks/2562d8905bd05ef6fd07.js +1 -0
  25. package/assets/esri/core/workers/chunks/{e5d969214d9eda5c0b4c.js → 2a5dbed88bbd96cfac9f.js} +1 -1
  26. package/assets/esri/core/workers/chunks/2bcd4d395bfe6a19ccc8.js +1 -0
  27. package/assets/esri/core/workers/chunks/2e11b4e9d66474a60064.js +1 -0
  28. package/assets/esri/core/workers/chunks/{fbcf09526dc1bbe94b91.js → 2e8db0f05df2e38a14e1.js} +2 -2
  29. package/assets/esri/core/workers/chunks/3192586ec7fc73ed1165.js +1 -0
  30. package/assets/esri/core/workers/chunks/{9a11ff75009fef45b8c1.js → 325bfac7cfa28a6d568f.js} +1 -1
  31. package/assets/esri/core/workers/chunks/32f24a66f684de3c243d.js +1 -0
  32. package/assets/esri/core/workers/chunks/38ca59db0e8f45bd7811.js +1 -0
  33. package/assets/esri/core/workers/chunks/3bf6d55511cd7722eb93.js +1 -0
  34. package/assets/esri/core/workers/chunks/40df6ffeb61fea80aae3.js +1 -0
  35. package/assets/esri/core/workers/chunks/423a9882abd4a6dadf86.js +1 -0
  36. package/assets/esri/core/workers/chunks/425c04b26a6ec6d04b08.js +1 -0
  37. package/assets/esri/core/workers/chunks/4364a3e706294bb6ae41.js +1 -0
  38. package/assets/esri/core/workers/chunks/438f35d41c6851736818.js +30 -0
  39. package/assets/esri/core/workers/chunks/44e52fe98ffafe6a2807.js +1 -0
  40. package/assets/esri/core/workers/chunks/47d49777a3b3cd8e18bd.js +1 -0
  41. package/assets/esri/core/workers/chunks/4bfffdfbe6d467f143a4.js +1 -0
  42. package/assets/esri/core/workers/chunks/4d09ef7c57ab7f9782fe.js +1 -0
  43. package/assets/esri/core/workers/chunks/4e97c01698ef36cc5e0e.js +1 -0
  44. package/assets/esri/core/workers/chunks/5022413f5a41b5d435ea.js +1 -0
  45. package/assets/esri/core/workers/chunks/{8ade869fa9bae446266a.js → 51816d79c6be15e4bfcf.js} +1 -1
  46. package/assets/esri/core/workers/chunks/544174c33628846284a1.js +1 -0
  47. package/assets/esri/core/workers/chunks/{cf9b0ba30a75c030ca92.js → 5524a71d1abc9568ce26.js} +1 -1
  48. package/assets/esri/core/workers/chunks/552945a73a95cd2a9f54.js +1 -0
  49. package/assets/esri/core/workers/chunks/{ba31616de9d73d83d867.js → 557e39e5156b313597f9.js} +1 -1
  50. package/assets/esri/core/workers/chunks/55d168c13491fcdfb284.js +1 -0
  51. package/assets/esri/core/workers/chunks/{5ef37f37e405b3bb5450.js → 59dafa1e1340ea4043e6.js} +1 -1
  52. package/assets/esri/core/workers/chunks/{0a530fbbb4486c670ea2.js → 5c7aff9604b4576a0e1d.js} +1 -1
  53. package/assets/esri/core/workers/chunks/603177137eb680afe371.js +1 -0
  54. package/assets/esri/core/workers/chunks/624b1bb269744142b835.js +1 -0
  55. package/assets/esri/core/workers/chunks/643c7506f8fe8e06acd2.js +1 -0
  56. package/assets/esri/core/workers/chunks/65621650a53f69f7b05a.js +1 -0
  57. package/assets/esri/core/workers/chunks/65f02eca694cc1c9f5a7.js +1 -0
  58. package/assets/esri/core/workers/chunks/{271e42b7cd3c3441839e.js → 6a53c8db554be55c5885.js} +46 -36
  59. package/assets/esri/core/workers/chunks/6af88bb722bbb37db198.js +2 -0
  60. package/assets/esri/core/workers/chunks/6d696beddcc5fbed5875.js +1 -0
  61. package/assets/esri/core/workers/chunks/{a70fa35b2d19460637e9.js → 70d8f5bdb452cee41536.js} +2 -2
  62. package/assets/esri/core/workers/chunks/728151d24334027af635.js +1 -0
  63. package/assets/esri/core/workers/chunks/728ad5bbbcbf88d6249f.js +1 -0
  64. package/assets/esri/core/workers/chunks/{0d2bc1be5802681666a4.js → 77859a61d059738d057f.js} +1 -1
  65. package/assets/esri/core/workers/chunks/{03a4543b94f9adeb1852.js → 7a3b05e25de2ff150f38.js} +1 -1
  66. package/assets/esri/core/workers/chunks/{340f2c996f62f7f5ceae.js → 7a823bb1b72764897dd5.js} +1 -1
  67. package/assets/esri/core/workers/chunks/7bbffe07e62897928773.js +1 -0
  68. package/assets/esri/core/workers/chunks/7c292f7b181f3b93352b.js +1 -0
  69. package/assets/esri/core/workers/chunks/{f69c44479ee3fd8c831d.js → 7d220f574ebf2740c208.js} +1 -1
  70. package/assets/esri/core/workers/chunks/7eb94fc75926bc739233.js +1 -0
  71. package/assets/esri/core/workers/chunks/{24b43fb12fc3009fdc30.js → 7f1fcddc8dd42a1b67d9.js} +1 -1
  72. package/assets/esri/core/workers/chunks/{e95ce76b5b816256a519.js → 7f54d3835c0ce573a942.js} +1 -1
  73. package/assets/esri/core/workers/chunks/804ab5f614efa12a131b.js +1 -0
  74. package/assets/esri/core/workers/chunks/823789261ca3338f0fa8.js +1 -0
  75. package/assets/esri/core/workers/chunks/{71e12db99589c98a4357.js → 8477b5fdd99c6ac5c27b.js} +1 -1
  76. package/assets/esri/core/workers/chunks/{5cdf87e7a59ace38df87.js → 84b0b6e099d949e0fea5.js} +1 -1
  77. package/assets/esri/core/workers/chunks/{be1e4c3ec53fc92a26f1.js → 8598997340682113a2a5.js} +1 -1
  78. package/assets/esri/core/workers/chunks/86443e47ad99e555753a.js +1 -0
  79. package/assets/esri/core/workers/chunks/86a767c2b0b1e37ff493.js +1 -0
  80. package/assets/esri/core/workers/chunks/{702a3ef9e1b3442cbee7.js → 8b8b63be961eb73250a0.js} +1 -1
  81. package/assets/esri/core/workers/chunks/{27d6ad4ca5ab8c9d62cd.js → 8c443c52c846a096a250.js} +1 -1
  82. package/assets/esri/core/workers/chunks/{86161025b53b916328ff.js → 8ca88cfc0b9f84dc5832.js} +1 -1
  83. package/assets/esri/core/workers/chunks/9133c1b7cc1c9da27deb.js +1 -0
  84. package/assets/esri/core/workers/chunks/{d4749eb8a47869477037.js → 9250615c78f8570a9cda.js} +1 -1
  85. package/assets/esri/core/workers/chunks/986d8c3907aeeb18c4f6.js +1 -0
  86. package/assets/esri/core/workers/chunks/98e489c2b85feded7776.js +1 -0
  87. package/assets/esri/core/workers/chunks/9d27cc631bab8aa7479e.js +1 -0
  88. package/assets/esri/core/workers/chunks/9f23a61c60949459c14f.js +30 -0
  89. package/assets/esri/core/workers/chunks/a03c4c0bf138734a002e.js +1 -0
  90. package/assets/esri/core/workers/chunks/{40df608337d562553ce1.js → a0fce639319d59becd01.js} +2 -2
  91. package/assets/esri/core/workers/chunks/{e4b2120d7ee1c998b1fc.js → aa03f770178693167aa0.js} +1 -1
  92. package/assets/esri/core/workers/chunks/{762e23466308f22d7076.js → aea384f4d88121da8f54.js} +1 -1
  93. package/assets/esri/core/workers/chunks/aea439d4c2308f88b295.js +1 -0
  94. package/assets/esri/core/workers/chunks/{7995e6983456c779adf9.js → b002304a45856b024b46.js} +1 -1
  95. package/assets/esri/core/workers/chunks/b44f1d08784f2e50c853.js +1 -0
  96. package/assets/esri/core/workers/chunks/ba693317ed3939587f30.js +1 -0
  97. package/assets/esri/core/workers/chunks/be0eab592db0e651b023.js +30 -0
  98. package/assets/esri/core/workers/chunks/c1b6de0d728d25d7905a.js +1 -0
  99. package/assets/esri/core/workers/chunks/{f8b884b529064df4a30a.js → caf80facb0322be054ab.js} +1 -1
  100. package/assets/esri/core/workers/chunks/{25d795a1697803d77e56.js → ce0e627a5e1cb78adce8.js} +1 -1
  101. package/assets/esri/core/workers/chunks/{18c4207b1cb0777560ba.js → cf3036711bbe6095eaed.js} +1 -1
  102. package/assets/esri/core/workers/chunks/d21bf107698fef03125e.js +1 -0
  103. package/assets/esri/core/workers/chunks/d6d87bfa9e6d233385a9.js +262 -0
  104. package/assets/esri/core/workers/chunks/{63378b0b4265a547656b.js → d8ec0afb2b91ccf32e55.js} +1 -1
  105. package/assets/esri/core/workers/chunks/d97c0c18202b8c578f8c.js +1 -0
  106. package/assets/esri/core/workers/chunks/{2f99a95facddc44319a9.js → da3c54e27a808f4fcc18.js} +1 -1
  107. package/assets/esri/core/workers/chunks/dc259eed58fde3f5cb5c.js +1 -0
  108. package/assets/esri/core/workers/chunks/dc6d50e1097a920ff820.js +1 -0
  109. package/assets/esri/core/workers/chunks/e6e15e9e890b864fb395.js +1 -0
  110. package/assets/esri/core/workers/chunks/e755477dc78e9d6038d4.js +1 -0
  111. package/assets/esri/core/workers/chunks/ea8f642b1db933d2c26f.js +1 -0
  112. package/assets/esri/core/workers/chunks/eabd4a78221b7e733793.js +1 -0
  113. package/assets/esri/core/workers/chunks/{39987c06636e757d1f00.js → eda083e9d12e45da0a7b.js} +1 -1
  114. package/assets/esri/core/workers/chunks/edb55329305becdb204f.js +1 -0
  115. package/assets/esri/core/workers/chunks/f58ddf37dee066a5c0d8.js +1 -0
  116. package/assets/esri/core/workers/chunks/fb0afb41a3d87d59f574.js +1 -0
  117. package/assets/esri/core/workers/chunks/{5c6742728fa705d2e16e.js → fc9fbc8e4e459edf4e37.js} +1 -1
  118. package/assets/esri/core/workers/chunks/fe2325efd0d8ad8369ed.js +1 -0
  119. package/assets/esri/themes/base/widgets/_BatchAttributeForm.scss +53 -7
  120. package/assets/esri/themes/base/widgets/_OrientedImageryViewer.scss +4 -13
  121. package/assets/esri/themes/dark/main.css +1 -1
  122. package/assets/esri/themes/light/main.css +1 -1
  123. package/assets/esri/themes/light/view.css +1 -1
  124. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_ar.json +1 -1
  125. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_bg.json +1 -1
  126. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_bs.json +1 -1
  127. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_ca.json +1 -1
  128. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_cs.json +1 -1
  129. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_da.json +1 -1
  130. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_de.json +1 -1
  131. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_el.json +1 -1
  132. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_es.json +1 -1
  133. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_et.json +1 -1
  134. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_fi.json +1 -1
  135. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_fr.json +1 -1
  136. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_he.json +1 -1
  137. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_hr.json +1 -1
  138. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_hu.json +1 -1
  139. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_id.json +1 -1
  140. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_it.json +1 -1
  141. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_ja.json +1 -1
  142. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_ko.json +1 -1
  143. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_lt.json +1 -1
  144. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_lv.json +1 -1
  145. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_nl.json +1 -1
  146. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_no.json +1 -1
  147. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_pl.json +1 -1
  148. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_pt-BR.json +1 -1
  149. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_pt-PT.json +1 -1
  150. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_ro.json +1 -1
  151. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_ru.json +1 -1
  152. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_sk.json +1 -1
  153. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_sl.json +1 -1
  154. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_sr.json +1 -1
  155. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_sv.json +1 -1
  156. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_th.json +1 -1
  157. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_tr.json +1 -1
  158. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_uk.json +1 -1
  159. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_vi.json +1 -1
  160. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_zh-CN.json +1 -1
  161. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_zh-HK.json +1 -1
  162. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_zh-TW.json +1 -1
  163. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_ar.json +1 -1
  164. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_bg.json +1 -1
  165. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_bs.json +1 -1
  166. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_ca.json +1 -1
  167. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_cs.json +1 -1
  168. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_da.json +1 -1
  169. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_de.json +1 -1
  170. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_el.json +1 -1
  171. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_es.json +1 -1
  172. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_et.json +1 -1
  173. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_fi.json +1 -1
  174. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_fr.json +1 -1
  175. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_he.json +1 -1
  176. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_hr.json +1 -1
  177. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_hu.json +1 -1
  178. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_id.json +1 -1
  179. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_it.json +1 -1
  180. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_ja.json +1 -1
  181. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_ko.json +1 -1
  182. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_lt.json +1 -1
  183. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_lv.json +1 -1
  184. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_nl.json +1 -1
  185. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_no.json +1 -1
  186. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_pl.json +1 -1
  187. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_pt-BR.json +1 -1
  188. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_pt-PT.json +1 -1
  189. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_ro.json +1 -1
  190. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_ru.json +1 -1
  191. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_sk.json +1 -1
  192. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_sl.json +1 -1
  193. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_sr.json +1 -1
  194. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_sv.json +1 -1
  195. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_th.json +1 -1
  196. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_tr.json +1 -1
  197. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_uk.json +1 -1
  198. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_vi.json +1 -1
  199. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_zh-CN.json +1 -1
  200. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_zh-HK.json +1 -1
  201. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_zh-TW.json +1 -1
  202. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm.json +1 -1
  203. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ar.json +1 -1
  204. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_bg.json +1 -1
  205. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_bs.json +1 -1
  206. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ca.json +1 -1
  207. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_cs.json +1 -1
  208. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_da.json +1 -1
  209. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_de.json +1 -1
  210. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_el.json +1 -1
  211. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_en.json +1 -1
  212. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_es.json +1 -1
  213. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_et.json +1 -1
  214. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_fi.json +1 -1
  215. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_fr.json +1 -1
  216. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_he.json +1 -1
  217. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_hr.json +1 -1
  218. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_hu.json +1 -1
  219. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_id.json +1 -1
  220. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_it.json +1 -1
  221. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ja.json +1 -1
  222. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ko.json +1 -1
  223. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_lt.json +1 -1
  224. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_lv.json +1 -1
  225. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_nl.json +1 -1
  226. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_no.json +1 -1
  227. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_pl.json +1 -1
  228. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_pt-BR.json +1 -1
  229. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_pt-PT.json +1 -1
  230. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ro.json +1 -1
  231. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ru.json +1 -1
  232. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sk.json +1 -1
  233. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sl.json +1 -1
  234. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sr.json +1 -1
  235. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sv.json +1 -1
  236. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_th.json +1 -1
  237. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_tr.json +1 -1
  238. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_uk.json +1 -1
  239. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_vi.json +1 -1
  240. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_zh-CN.json +1 -1
  241. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_zh-HK.json +1 -1
  242. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_zh-TW.json +1 -1
  243. package/chunks/GlobalIllumination.glsl.js +40 -30
  244. package/chunks/GlobalIlluminationBlur.glsl.js +1 -1
  245. package/chunks/ShadowCastVisualize.glsl.js +20 -23
  246. package/config.js +1 -1
  247. package/core/screenUtils.js +1 -1
  248. package/editing/templates/TemplateListItem.d.ts +61 -0
  249. package/editing/templates/TemplateListItem.js +2 -0
  250. package/geometry/support/heightModelInfoUtils.js +1 -1
  251. package/interfaces.d.ts +21 -0
  252. package/kernel.js +1 -1
  253. package/layers/AnnotationLayer.d.ts +42 -0
  254. package/layers/AnnotationLayer.js +2 -0
  255. package/layers/DimensionFeatureLayer.d.ts +36 -1
  256. package/layers/DimensionFeatureLayer.js +1 -1
  257. package/layers/FeatureLayer.d.ts +43 -14
  258. package/layers/FeatureLayer.js +1 -1
  259. package/layers/ImageryTileLayer.js +1 -1
  260. package/layers/Lyr3DWasmPerSceneView.js +1 -1
  261. package/layers/graphics/sources/FeatureLayerSource.js +1 -1
  262. package/layers/graphics/sources/support/MemorySourceWorker.js +1 -1
  263. package/layers/mixins/PortalLayer.js +1 -1
  264. package/layers/mixins/TiledImagery.js +1 -1
  265. package/layers/raster/datasets/ImageAuxRaster.js +1 -1
  266. package/layers/raster/datasets/RasterFactory.js +1 -1
  267. package/layers/support/SymbolLayerDrawing.d.ts +10 -0
  268. package/layers/support/rasterJobHelper.js +2 -0
  269. package/layers/types.d.ts +3 -4
  270. package/networks/support/networkFieldUtils.js +1 -1
  271. package/package.json +1 -1
  272. package/rest/support/AttributeBinsQuery.d.ts +5 -5
  273. package/rest/support/OutDistance.d.ts +50 -0
  274. package/rest/support/OutDistance.js +1 -1
  275. package/rest/support/Query.d.ts +46 -5
  276. package/rest/support/Query.js +1 -1
  277. package/rest/support/TopFeaturesQuery.d.ts +5 -5
  278. package/support/basemapEnsureType.js +1 -1
  279. package/support/revision.js +1 -1
  280. package/symbols/cim/CIMOperators.js +1 -1
  281. package/symbols/cim/CIMSymbolHelper.js +1 -1
  282. package/symbols/cim/utils.js +1 -1
  283. package/views/2d/engine/vectorTiles/VectorTileContainer.js +1 -1
  284. package/views/2d/engine/webgl/mesh/factories/FeatureMeshFactory.js +1 -1
  285. package/views/2d/engine/webgl/mesh/factories/ResourceProxy.js +1 -1
  286. package/views/2d/engine/webgl/mesh/templates/shapingUtils.js +1 -1
  287. package/views/2d/engine/webgl/shaderGraph/techniques/createTestMeshData.js +1 -1
  288. package/views/2d/engine/webgl/shaderGraph/techniques/featureTechniqueUtils.js +1 -1
  289. package/views/2d/engine/webgl/shaderGraph/techniques/markers/MarkerShader.js +1 -1
  290. package/views/2d/engine/webgl/shaderGraph/techniques/mesh/MeshWriter.js +1 -1
  291. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/LineShader.js +1 -1
  292. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/ViewInfo.js +1 -1
  293. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/vector-tiles/VTLShaderCircle.js +1 -1
  294. package/views/2d/engine/webgl/shaderGraph/techniques/text/TextMeshWriter.js +1 -1
  295. package/views/2d/engine/webgl/shaderGraph/techniques/text/TextShader.js +1 -1
  296. package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
  297. package/views/2d/engine/webgl/util/AnnotationMatcher.js +2 -0
  298. package/views/2d/engine/webgl/util/DimensionMatcher.js +2 -0
  299. package/views/2d/engine/webgl/util/Matcher.js +1 -1
  300. package/views/2d/engine/webgl/util/createMatcher.js +1 -1
  301. package/views/2d/layerViewModuleImportUtils.js +1 -1
  302. package/views/2d/layers/AnnotationLayerView2D.js +2 -0
  303. package/views/2d/layers/{DimensionLayerView2D.js → DimensionFeatureLayerView2D.js} +1 -1
  304. package/views/2d/layers/FeatureLikeLayerView2D.js +1 -1
  305. package/views/2d/layers/MapImageLayerView2D.js +1 -1
  306. package/views/2d/layers/RouteLayerView2D.js +1 -1
  307. package/views/2d/layers/TileLayerView2D.js +1 -1
  308. package/views/2d/layers/VectorTileLayerView2D.js +1 -1
  309. package/views/2d/layers/features/FeatureContainer.js +1 -1
  310. package/views/2d/layers/features/Processor.js +1 -1
  311. package/views/2d/layers/features/layerAdapters/AnnotationLayerAdapter.js +2 -0
  312. package/views/2d/layers/features/layerAdapters/CatalogFootprintLayerAdapter.js +1 -1
  313. package/views/2d/layers/features/layerAdapters/DimensionLayerAdapter.js +1 -1
  314. package/views/2d/layers/features/layerAdapters/FeatureLayerAdapter.js +1 -1
  315. package/views/2d/layers/features/layerAdapters/InMemoryLayerAdapter.js +1 -1
  316. package/views/2d/layers/features/layerAdapters/KnowledgeGraphSublayerAdapter.js +1 -1
  317. package/views/2d/layers/features/layerAdapters/OGCFeatureLayerAdapter.js +1 -1
  318. package/views/2d/layers/features/layerAdapters/OrientedImageryLayerAdapter.js +1 -1
  319. package/views/2d/layers/features/layerAdapters/ParquetLayerAdapter.js +1 -1
  320. package/views/2d/layers/features/layerAdapters/StreamLayerAdapter.js +1 -1
  321. package/views/2d/layers/features/layerAdapters/SubtypeGroupLayerAdapter.js +1 -1
  322. package/views/2d/layers/features/schema/processor/SimpleProcessorSchema.js +1 -1
  323. package/views/2d/layers/features/sources/strategies/support/queryAdapters.js +1 -1
  324. package/views/2d/layers/features/support/FeatureMetadata.js +1 -1
  325. package/views/2d/layers/features/support/FeatureSetReaderAnnotationJSON.js +2 -0
  326. package/views/2d/layers/features/support/FeatureSetReaderDimensionJSON.js +2 -0
  327. package/views/2d/layers/graphics/GraphicsView2D.js +1 -1
  328. package/views/2d/layers/support/annodime/DimensionInfo.js +2 -0
  329. package/views/2d/layers/support/annodime/DimensionMatcherSchema.js +2 -0
  330. package/views/2d/layers/support/annodime/PrivateDimensionEffect.js +2 -0
  331. package/views/2d/layers/support/annodime/PrivatePlacementMultipoint.js +2 -0
  332. package/views/2d/layers/support/annodime/annotationGraphic.js +2 -0
  333. package/views/2d/layers/support/annodime/annotationSchema.js +2 -0
  334. package/views/2d/layers/support/annodime/annotationUtils.js +2 -0
  335. package/views/2d/layers/support/annodime/cimAnnotations.js +2 -0
  336. package/views/2d/layers/support/annodime/dimensionSchema.js +2 -0
  337. package/views/2d/layers/support/annodime/dimensionSymbols.js +2 -0
  338. package/views/2d/layers/support/annodime/dimensionUtils.js +2 -0
  339. package/views/2d/layers/support/annodime/fields.js +2 -0
  340. package/views/2d/layers/support/annodime/unsupported.js +2 -0
  341. package/views/2d/layers/support/annodime/utils.js +2 -0
  342. package/views/2d/layers/support/annodime/virtualFields.js +2 -0
  343. package/views/2d/support/clippingUtils.js +1 -1
  344. package/views/2d/support/hitTestUtils.js +1 -1
  345. package/views/2d/types.d.ts +5 -1
  346. package/views/3d/analysis/ShadowCast/ShadowCastTooltip.js +1 -1
  347. package/views/3d/analysis/ShadowCastAnalysisView3D.js +1 -1
  348. package/views/3d/interactive/editingTools/transform/ExtentTransformTool.js +1 -1
  349. package/views/3d/layerViewModuleImportUtils.js +1 -1
  350. package/views/3d/layers/MapImageLayerView3D.js +1 -1
  351. package/views/3d/layers/TileLayerView3D.js +1 -1
  352. package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
  353. package/views/3d/layers/graphics/defaultSymbolComplexity.js +1 -1
  354. package/views/3d/support/pointsOfInterest/PointsOfInterest.js +1 -1
  355. package/views/3d/terrain/isTerrainSurfaceLayer.js +1 -1
  356. package/views/3d/types.d.ts +2 -0
  357. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIllumination.js +1 -1
  358. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  359. package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
  360. package/views/3d/webgl-engine/shaders/ditherNoise.glsl.js +1 -1
  361. package/views/3d/webgl-engine/shaders/oitResolution.glsl.js +1 -1
  362. package/views/PopupView.d.ts +3 -3
  363. package/views/PopupView.js +1 -1
  364. package/views/SceneView.js +1 -1
  365. package/views/View2D.js +1 -1
  366. package/views/draw/DrawTool.d.ts +34 -1
  367. package/views/layers/AnnotationLayerView.d.ts +18 -0
  368. package/views/layers/AnnotationLayerView.js +2 -0
  369. package/views/layers/DimensionFeatureLayerView.d.ts +18 -0
  370. package/views/layers/DimensionFeatureLayerView.js +2 -0
  371. package/views/layers/FeatureLikeLayerView.d.ts +2 -1
  372. package/views/layers/FeatureLikeLayerView.js +1 -1
  373. package/views/layers/ImageryLayerView.d.ts +1 -1
  374. package/views/layers/ImageryLayerView.js +1 -1
  375. package/views/layers/ImageryTileLayerView.js +1 -1
  376. package/views/layers/WMSLayerView.js +1 -1
  377. package/views/layers/support/MapServiceLayerViewHelper.js +1 -1
  378. package/widgets/BasemapToggle/BasemapToggleViewModel.js +1 -1
  379. package/widgets/BatchAttributeForm/attachmentUtils.js +1 -1
  380. package/widgets/BatchAttributeForm/css.js +1 -1
  381. package/widgets/BatchAttributeForm/inputs/AttachmentElementInput.js +1 -1
  382. package/widgets/BatchAttributeForm/inputs/UtilityNetworkAssociationsElementInput.js +1 -1
  383. package/widgets/BatchAttributeForm/rendered-content/RelationshipDetails.js +2 -0
  384. package/widgets/BatchAttributeForm.d.ts +26 -1
  385. package/widgets/BatchAttributeForm.js +1 -1
  386. package/widgets/FeatureForm.js +1 -1
  387. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  388. package/widgets/OrientedImageryViewer/css.js +1 -1
  389. package/widgets/OrientedImageryViewer.js +1 -1
  390. package/widgets/Print/PrintViewModel.js +1 -1
  391. package/widgets/Sketch/support/PluginManager.js +1 -1
  392. package/widgets/Sketch.js +1 -1
  393. package/widgets/support/iconUtils.js +1 -1
  394. package/assets/esri/core/workers/chunks/0175098da590a7109539.js +0 -1
  395. package/assets/esri/core/workers/chunks/019a4fe7e085b2fc6ae9.js +0 -1
  396. package/assets/esri/core/workers/chunks/023837e5d9d2b6af66d8.js +0 -1
  397. package/assets/esri/core/workers/chunks/03c46880b69ce75a010f.js +0 -1
  398. package/assets/esri/core/workers/chunks/040884cec4b84dd1bb17.js +0 -1
  399. package/assets/esri/core/workers/chunks/04ea806b933d4dd41609.js +0 -1
  400. package/assets/esri/core/workers/chunks/074f5e6aaeafca13bf72.js +0 -1
  401. package/assets/esri/core/workers/chunks/0e549d942d6cba1608cf.js +0 -1
  402. package/assets/esri/core/workers/chunks/13a8346abe5509167578.js +0 -1
  403. package/assets/esri/core/workers/chunks/13d43a0683c42b94feb6.js +0 -1
  404. package/assets/esri/core/workers/chunks/1ebb613bbe09fcf274d8.js +0 -1
  405. package/assets/esri/core/workers/chunks/27d7c701306efeea6b82.js +0 -1
  406. package/assets/esri/core/workers/chunks/2b9661700743d1f9717e.js +0 -1
  407. package/assets/esri/core/workers/chunks/2bdfae998371e3aa9f2d.js +0 -1
  408. package/assets/esri/core/workers/chunks/2f0a3b22fc46d832e240.js +0 -1
  409. package/assets/esri/core/workers/chunks/2ffffc1931b2e27c6617.js +0 -1
  410. package/assets/esri/core/workers/chunks/32f128a1615d71bbe899.js +0 -2
  411. package/assets/esri/core/workers/chunks/375bdaf44e1ed6141601.js +0 -1
  412. package/assets/esri/core/workers/chunks/3835097520296b0517af.js +0 -1
  413. package/assets/esri/core/workers/chunks/41074d383af3662673ca.js +0 -1
  414. package/assets/esri/core/workers/chunks/4605a68e40c5c3ac6e3e.js +0 -1
  415. package/assets/esri/core/workers/chunks/4b01858e05a4b90331a4.js +0 -30
  416. package/assets/esri/core/workers/chunks/4b130db9b7b4e2e32ea4.js +0 -1
  417. package/assets/esri/core/workers/chunks/4bfeac7338df9e0b7ce1.js +0 -1
  418. package/assets/esri/core/workers/chunks/4c5cdd2712c938fafc5d.js +0 -1
  419. package/assets/esri/core/workers/chunks/4fa3840672c33adb9171.js +0 -1
  420. package/assets/esri/core/workers/chunks/4ffcca40e7aa24c8cc35.js +0 -1
  421. package/assets/esri/core/workers/chunks/534dd93c72ea448ee908.js +0 -1
  422. package/assets/esri/core/workers/chunks/548c34ea88f113d03c93.js +0 -30
  423. package/assets/esri/core/workers/chunks/5ea0096a282e87a269bd.js +0 -1
  424. package/assets/esri/core/workers/chunks/66fe1634c6e8f72fc653.js +0 -1
  425. package/assets/esri/core/workers/chunks/6920e7f700a9ba280dba.js +0 -1
  426. package/assets/esri/core/workers/chunks/6b1f2b36bdc6b2ff2ea5.js +0 -1
  427. package/assets/esri/core/workers/chunks/6b66a6f69aa03338c346.js +0 -1
  428. package/assets/esri/core/workers/chunks/6d59a9cf533ebc590f70.js +0 -1
  429. package/assets/esri/core/workers/chunks/708bd77e6d723e3f0aa8.js +0 -1
  430. package/assets/esri/core/workers/chunks/75a7de23c05435ec7649.js +0 -1
  431. package/assets/esri/core/workers/chunks/75dfdd85abbac26ac899.js +0 -1
  432. package/assets/esri/core/workers/chunks/798c4d3201fcc9f2a42b.js +0 -1
  433. package/assets/esri/core/workers/chunks/817fd88fe9a48caf69fb.js +0 -1
  434. package/assets/esri/core/workers/chunks/82f7d83a2073d1b0111c.js +0 -1
  435. package/assets/esri/core/workers/chunks/860465c4f44c373d0a1c.js +0 -1
  436. package/assets/esri/core/workers/chunks/89250d268dc2554a9ece.js +0 -1
  437. package/assets/esri/core/workers/chunks/89916fe83f48b2df4b0d.js +0 -1
  438. package/assets/esri/core/workers/chunks/8a68884d40f6f6de1d12.js +0 -1
  439. package/assets/esri/core/workers/chunks/8c8fed53c12fb80ef2ed.js +0 -1
  440. package/assets/esri/core/workers/chunks/8ff83c59462dea6e3427.js +0 -1
  441. package/assets/esri/core/workers/chunks/961995d8da45a9203255.js +0 -1
  442. package/assets/esri/core/workers/chunks/978b7d10054e17161145.js +0 -1
  443. package/assets/esri/core/workers/chunks/a9c9c00432ee41ec91ba.js +0 -1
  444. package/assets/esri/core/workers/chunks/af762422a65c551dcd54.js +0 -1
  445. package/assets/esri/core/workers/chunks/b041c22885193bdd3004.js +0 -1
  446. package/assets/esri/core/workers/chunks/b684ff4bc93bd60d6a19.js +0 -1
  447. package/assets/esri/core/workers/chunks/bb2f6b0fcdfb8b158e26.js +0 -1
  448. package/assets/esri/core/workers/chunks/cd2b2babcdc130b4c368.js +0 -1
  449. package/assets/esri/core/workers/chunks/cedf3e316d6f89cf7005.js +0 -1
  450. package/assets/esri/core/workers/chunks/d39f5590022d910ee951.js +0 -1
  451. package/assets/esri/core/workers/chunks/d412a43060441d347fb4.js +0 -1
  452. package/assets/esri/core/workers/chunks/d41b847d08c42e5329d6.js +0 -262
  453. package/assets/esri/core/workers/chunks/d52172439db02a349542.js +0 -1
  454. package/assets/esri/core/workers/chunks/d8c2bed12f937228c763.js +0 -1
  455. package/assets/esri/core/workers/chunks/de916dd0c11aefb6832e.js +0 -1
  456. package/assets/esri/core/workers/chunks/ea2bf7c543cc536400b7.js +0 -30
  457. package/assets/esri/core/workers/chunks/ecf4d07917efc97eb991.js +0 -1
  458. package/assets/esri/core/workers/chunks/eda51e512eff551ad858.js +0 -1
  459. package/assets/esri/core/workers/chunks/f14e3693cd644265f909.js +0 -1
  460. package/assets/esri/core/workers/chunks/f52c6efc5a2abf5ac845.js +0 -1
  461. package/assets/esri/core/workers/chunks/f635a8e3b0bfeda99ed5.js +0 -1
  462. package/assets/esri/core/workers/chunks/f9f331c76c96743d8522.js +0 -1
  463. package/assets/esri/core/workers/chunks/fcbacca99c5a3ee5b69a.js +0 -1
  464. package/symbols/dimensions/effects/LinearDimensionArrowEffect.js +0 -2
  465. package/symbols/dimensions/effects/LinearDimensionExtensionLineEffect.js +0 -2
  466. package/symbols/dimensions/effects/LinearDimensionLeaderLineEffect.js +0 -2
  467. package/symbols/dimensions/effects/LinearDimensionLineEffect.js +0 -2
  468. package/symbols/dimensions/effects/LinearDimensionPointEffect.js +0 -2
  469. package/symbols/dimensions/effects/LinearDimensionTextEffect.js +0 -2
  470. package/views/2d/layers/features/support/FeatureSetReaderDimension.js +0 -2
  471. package/views/3d/webgl-engine/effects/globalIllumination/BlueNoise.js +0 -2
  472. package/views/layers/support/dimensionUtils.js +0 -2
  473. /package/assets/esri/core/workers/chunks/{701125f6cdd91ff3655f.js.LICENSE.txt → 1252da05832e576d4def.js.LICENSE.txt} +0 -0
  474. /package/assets/esri/core/workers/chunks/{fbcf09526dc1bbe94b91.js.LICENSE.txt → 2e8db0f05df2e38a14e1.js.LICENSE.txt} +0 -0
  475. /package/assets/esri/core/workers/chunks/{32f128a1615d71bbe899.js.LICENSE.txt → 6af88bb722bbb37db198.js.LICENSE.txt} +0 -0
  476. /package/assets/esri/core/workers/chunks/{40df608337d562553ce1.js.LICENSE.txt → 70d8f5bdb452cee41536.js.LICENSE.txt} +0 -0
  477. /package/assets/esri/core/workers/chunks/{a70fa35b2d19460637e9.js.LICENSE.txt → a0fce639319d59becd01.js.LICENSE.txt} +0 -0
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[8692],{28692(e,t,i){i.r(t),i.d(t,{default:()=>U});var a=i(5482),s=i(79842),r=i(7762),n=i(49186),o=i(53966),l=i(91869),d=i(25728),h=i(17676),p=i(36708),u=i(84952),y=i(13069),c=i(91429),g=i(35666),f=i(4146),m=i(24137),w=i(62796),M=i(40736),b=i(18768),T=i(63074),v=i(69208),_=i(34287),D=i(8303),I=i(54310),A=i(25036),C=i(10873),L=i(54628),P=i(53902),S=i(97159),E=i(56400),k=i(36005),N=i(43937);let G=class extends((0,T.dM)((0,A.j)((0,I.J)((0,b.b)((0,_.q)((0,D.A)((0,d.M)((0,v.d)(f.A))))))))){constructor(e){super(e),this._graphTypeLookup=new Map,this._namedTypesModified=!1,this._idMapCreationDate=null,this.dataManager=null,this.definitionSetMap=null,this.knowledgeGraph=null,this.layers=new(r.A.ofType(w.A)),this.memberEntityTypes=null,this.memberRelationshipTypes=null,this.operationalLayerType="KnowledgeGraphLayer",this.sublayerIdsCache=new Map,this.tables=new(r.A.ofType(w.A)),this.type="knowledge-graph",this.url=null,!e?.title&&e?.url&&(this.title=(0,M.$L)(e.url)),this.addHandles((0,p.wB)(()=>this.layers.concat(this.tables),(e,t)=>this._handleSublayersChange(e,t),p.OH))}load(e){return this.addResolvingPromise(this._doLoad(e)),Promise.resolve(this)}async _doLoad(e){try{await this.loadFromPortal({supportedTypes:["Knowledge Graph Layer"]},e)}catch(e){(0,h.QP)(e)}await this._fetchMetadata(e),await this._initializeLayerProperties(e),this.loadLayerAssumingLocalCache(),this._layersLoadedFromAuthoritativeItem()||await(0,M.qN)(this)}async _fetchMetadata(e){if(!this.url)throw new n.A("knowledge-graph:missing-url","KnowledgeGraphLayer must be created with a url");const t=await(0,P.fetchKnowledgeGraph)(this.url);this.knowledgeGraph=t;const{edit:i,fullEdit:a,updateItem:s}=await(0,M.N1)(t.serviceDefinition.serviceItemId,this.url,e);this._set("userHasEditingPrivileges",i),this._set("userHasFullEditingPrivileges",a),this._set("userHasUpdateItemPrivileges",s),this.read({dateFieldsTimeReference:t.serviceDefinition.dateFieldsTimeReference},{origin:"service"}),this._forEachGraphType(e=>{e.name&&this._graphTypeLookup.set(e.name,e)})}async _initializeLayerProperties(e){7===this.originIdOf("inclusionModeDefinition")?this._validateInclusionModeDefinition():await this._initializeInclusionModeDefinition(e),this._setMemberTypes(),this.dataManager=new m.P({knowledgeGraph:this.knowledgeGraph,inclusionModeDefinition:this.inclusionModeDefinition})}async _initializeInclusionModeDefinition(e){this._idMapCreationDate=(await(0,L.lV)([this.definitionSetMap??""],this.portalItem?.itemUrl??"")).get(this.definitionSetMap??"")??null;const t=this.definitionSetMap?await(0,s.cZ)(this.definitionSetMap,!0,e?.signal?{signal:e.signal}:void 0):{generateAllSublayers:!0,namedTypeDefinitions:new Map};[...this.layers.toArray(),...this.tables.toArray()].forEach(e=>{const i=this._graphTypeLookup.get(e.graphTypeName);i&&!t.namedTypeDefinitions.has(i.name)&&t.namedTypeDefinitions.set(i.name,{useAllData:!0})}),this.setAtOrigin("inclusionModeDefinition",t,(0,g.OL)(this.originIdOf("definitionSetMap")))}_validateInclusionModeDefinition(){const{inclusionModeDefinition:e}=this;if(!e)return;const{namedTypeDefinitions:t}=e;if(t?.size>0)t.forEach((e,i)=>{const a=this._graphTypeLookup.get(i);if(!a)return o.A.getLogger(this).warn(`A named type, ${i}, was in the inclusion list that wasn't in the data model and will be removed`),void t.delete(i);"relationship"!==a.type&&"entity"!==a.type&&(o.A.getLogger(this).warn(`A named type, ${i}, was in the inclusion list that wasn't properly modeled and will be removed`),t.delete(i))});else if(!e.generateAllSublayers)throw new n.A("knowledge-graph:composite-layer-constructor","If an explicit inclusion definition is defined, at least one namedTypeDefinition must also be defined")}_setMemberTypes(){let e=[],t=[];const{inclusionModeDefinition:i}=this,a=i?.namedTypeDefinitions;!i||i.generateAllSublayers?(e=this.knowledgeGraph.dataModel?.entityTypes??[],t=this.knowledgeGraph.dataModel?.relationshipTypes??[]):a&&a.size>0&&a.forEach((i,a)=>{const s=this._graphTypeLookup.get(a);switch(s?.type){case"relationship":t.push(s);break;case"entity":e.push(s)}}),this.memberEntityTypes=e,this.memberRelationshipTypes=t}_forEachGraphType(e){[...this.knowledgeGraph.dataModel?.entityTypes??[],...this.knowledgeGraph.dataModel?.relationshipTypes??[]].forEach(t=>{e(t)})}_refreshNamedTypes(){this._namedTypesModified=!0;for(const e of this.layers)e.emit("refresh",{dataChanged:!0});for(const e of this.tables)e.emit("refresh",{dataChanged:!0})}async _handleNewRecords(e){const t=new Set,i=[];for(const a of e)this._graphTypeLookup.has(a.typeName)&&(!1===this.layers.concat(this.tables).some(e=>e.objectType.name===a.typeName)&&(this.dataManager.sublayerCaches.set(a.typeName,new Map),t.add(a.typeName)),(0,l.tE)(this.sublayerIdsCache,a.typeName,()=>new Set).add(a.id),i.push(a));this.dataManager.addToLayer(i);for(const e of t){const t=this._graphTypeLookup.get(e);t&&(this._addSublayer(t),"entity"===t.type?this.dataManager.entityTypeNames.add(e):this.dataManager.relationshipTypeNames.add(e))}await(0,M.qN)(this,Array.from(t)),this._refreshNamedTypes()}_createSublayers(e,t,i){e.forEach(e=>{const a=this._createSublayer(e);i(a)&&t.push(a),this._updateSublayerCaches(e)})}_addSublayer(e){const t=this._createSublayer(e);return t.geometryType?this.layers.push(t):this.tables.push(t),t}_createSublayer(e){return new w.A({objectType:e,parentCompositeLayer:this,graphType:e.type})}_updateSublayers(e,t){t.forEach(t=>{t.parentCompositeLayer=this;const i=e.find(e=>e.type===t.graphType&&e.name===t.graphTypeName);i&&(t.objectType=i,this._updateSublayerCaches(i))})}_updateSublayerCaches({name:e}){if(!e)return;const t=this.dataManager.sublayerCaches;t.has(e)||t.set(e,new Map)}_saveUrlAsNewResource(e,t,i,a,r,n){(async function(e){const t=await(0,s.fe)(e);return new Blob([t],{type:"application/x-protobuf"})})(this.inclusionModeDefinition).then(s=>{const n=function(e){const t=`definitionSetMap-${(0,y.lk)()}.dat`,i=(0,u.fj)("knowledgeGraphLayer",t);return e.resourceFromPath(i)}(a);e[t]=n.itemRelativeUrl,i.toAdd.push({resource:n,content:{type:"blob",blob:s},compress:!1,finish:e=>{this.definitionSetMap=e.url}}),r()}).catch(e=>{n(e)})}_displaysAllRecords(e){for(const[,{useAllData:t}]of e.namedTypeDefinitions)if(!t)return!1;return!0}_handleSublayersChange(e,t){t&&(t.forEach(e=>{e.parent=null}),this.removeHandles("sublayers-owner")),e&&(e.forEach(e=>{e.parent=this}),this.addHandles([e.on("after-add",({item:e})=>{e.parent=this}),e.on("after-remove",({item:e})=>{e.parent=null})],"sublayers-owner"))}_layersLoadedFromAuthoritativeItem(){const e=this.originIdOf("layers");return e>=3&&e<7}readDefinitionSetMap(e,t,i){return(0,S.a)(e,i)}writeDefinitionSetMap(e,t,i,a){const s=a?.portalItem,r=a?.resources,n=(0,g.aB)(a?.origin);t[i]="<pending>",r?.pendingOperations.push(new Promise((o,l)=>{(0,L.zI)(e??"",s?.itemUrl??"",this._idMapCreationDate).then(d=>{if(!s||!r||null==n)return e&&(t[i]=(0,S.c)(e,a)),void o();const{inclusionModeDefinition:h}=this;if(!h||this._displaysAllRecords(h))return this.definitionSetMap=null,void o();const p=this.originIdOf("inclusionModeDefinition");if(7===p||this._namedTypesModified||!d||n<p)this._saveUrlAsNewResource(t,i,r,s,o,l);else{if(n===p&&e){const n=(0,S.c)(e,a);return void((0,u.oP)(n)?this._saveUrlAsNewResource(t,i,r,s,o,l):(t[i]=n,o()))}o()}}).catch(e=>{l(e)})}))}set inclusionModeDefinition(e){"loaded"!==this.loadStatus&&"failed"!==this.loadStatus?this._set("inclusionModeDefinition",e):o.A.getLogger(this).error("#inclusionModeDefinition","inclusionModeDefinition cannot be changed after the layer is loaded.")}get sublayerCapabilities(){return(0,M.hZ)(this.knowledgeGraph)}loadLayerAssumingLocalCache(){const e=[...this.memberEntityTypes,...this.memberRelationshipTypes];this.layers.length||0===this.originIdOf("tables")?0===this.originIdOf("layers")?this._createSublayers(e,this.layers,e=>!!e.geometryType):this._updateSublayers(e,this.layers):this.layers=new r.A,this.tables.length||0===this.originIdOf("layers")?0===this.originIdOf("tables")?this._createSublayers(e,this.tables,e=>!e.geometryType):this._updateSublayers(e,this.tables):this.tables=new r.A,this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.forEach((e,t)=>{const i=(0,l.tE)(this.sublayerIdsCache,t,()=>new Set);e.members?.forEach(e=>{i.add(e.id)})})}async addRecords(e){await this.load(),await this._handleNewRecords(e)}async createSublayerForNamedType(e){await this.load();const t=this._graphTypeLookup.get(e);if(!t)throw new n.A("knowledge-graph:missing-type","The specified type does not exist in the layer's graph data model.");if(this.dataManager.sublayerCaches.has(e))throw new n.A("knowledge-graph:duplicate-type","The specified type already exists as a sublayer.");this.dataManager.sublayerCaches.set(e,new Map),(0,l.tE)(this.sublayerIdsCache,e,()=>new Set);const i=this._addSublayer(t);return"entity"===t.type?this.dataManager.entityTypeNames.add(e):this.dataManager.relationshipTypeNames.add(e),this.dataManager.inclusionModeDefinition&&this.dataManager.inclusionModeDefinition.namedTypeDefinitions.set(e,{useAllData:!0}),await(0,M.qN)(this,[e]),this._refreshNamedTypes(),i}convertSublayerToDynamicData(e){if(!this.dataManager.inclusionModeDefinition)throw new n.A("knowledge-graph:fully-dynamic-membership","This Knowledge Graph Layer already uses fully dynamic membership, individual sublayers cannot be converted");if(!this._graphTypeLookup.get(e))throw new n.A("knowledge-graph:missing-type","The specified type does not exist in the layer's graph data model.");if(!this.dataManager.sublayerCaches.has(e))throw new n.A("knowledge-graph:duplicate-type","The specified type does not exist as a sublayer.");const t=this.dataManager.inclusionModeDefinition.namedTypeDefinitions.get(e);t?.useAllData?o.A.getLogger(this).warn("This Knowledge Graph Layer already uses dynamic membership for the sublayer - no conversion was made"):(this.dataManager.inclusionModeDefinition.namedTypeDefinitions.set(e,{useAllData:!0}),this.sublayerIdsCache.delete(e),this._refreshNamedTypes())}convertSublayerToExplicitMembership(e){if(!this.dataManager.inclusionModeDefinition)throw new n.A("knowledge-graph:fully-dynamic-membership","This Knowledge Graph Layer already uses fully dynamic membership, individual sublayers cannot be converted");if(!this._graphTypeLookup.get(e))throw new n.A("knowledge-graph:missing-type","The specified type does not exist in the layer's graph data model.");const t=this.dataManager.inclusionModeDefinition.namedTypeDefinitions.get(e);if(!t||t.useAllData){if(!this.dataManager.sublayerCaches.has(e))throw new n.A("knowledge-graph:duplicate-type","The specified type does not exist as a sublayer.");this.sublayerIdsCache.set(e,new Set),this.dataManager.inclusionModeDefinition.namedTypeDefinitions.set(e,{useAllData:!1,members:new Map}),this._refreshNamedTypes()}else o.A.getLogger(this).warn("This Knowledge Graph Layer already uses explicit membership for the sublayer - no conversion was made")}convertToFullyDynamicData(){this.dataManager.inclusionModeDefinition?(this.sublayerIdsCache.clear(),this.dataManager.inclusionModeDefinition=null,this._set("inclusionModeDefinition",this.dataManager.inclusionModeDefinition),this._refreshNamedTypes()):o.A.getLogger(this).warn("This Knowledge Graph Layer already uses fully dynamic membership - no conversion was made")}convertToExplicitMembership(){if(this.dataManager.inclusionModeDefinition&&this.dataManager.inclusionModeDefinition.namedTypeDefinitions.size>0&&[...this.dataManager.inclusionModeDefinition.namedTypeDefinitions.values()].every(e=>!1===e.useAllData))o.A.getLogger(this).warn("This Knowledge Graph Layer already uses explicit membership - no conversion was made");else{this.dataManager.inclusionModeDefinition={generateAllSublayers:!1,namedTypeDefinitions:new Map};for(const e of this.dataManager.sublayerCaches.keys())(0,l.tE)(this.sublayerIdsCache,e,()=>new Set),this.dataManager.inclusionModeDefinition.namedTypeDefinitions.set(e,{useAllData:!1,members:new Map});this._set("inclusionModeDefinition",this.dataManager.inclusionModeDefinition),this._refreshNamedTypes()}}async removeRecords(e){await this.load();const t=[];for(const i of e)!1===this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.get(i.typeName)?.useAllData&&this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.get(i.typeName)?.members?.has(i.id)&&t.push(i);this.dataManager.removeFromLayer(t);for(const e of t)this.sublayerIdsCache.get(e.typeName)?.delete(e.id);return this._refreshNamedTypes(),t}};(0,a.Cg)([(0,c.MZ)()],G.prototype,"dataManager",void 0),(0,a.Cg)([(0,c.MZ)({json:{write:{ignoreOrigin:!0,writerEnsuresNonNull:!0}}})],G.prototype,"definitionSetMap",void 0),(0,a.Cg)([(0,k.w)("definitionSetMap")],G.prototype,"readDefinitionSetMap",null),(0,a.Cg)([(0,N.K)("definitionSetMap")],G.prototype,"writeDefinitionSetMap",null),(0,a.Cg)([(0,c.MZ)()],G.prototype,"inclusionModeDefinition",null),(0,a.Cg)([(0,c.MZ)()],G.prototype,"knowledgeGraph",void 0),(0,a.Cg)([(0,c.MZ)({type:r.A.ofType(w.A),json:{write:{ignoreOrigin:!0}}})],G.prototype,"layers",void 0),(0,a.Cg)([(0,c.MZ)()],G.prototype,"memberEntityTypes",void 0),(0,a.Cg)([(0,c.MZ)()],G.prototype,"memberRelationshipTypes",void 0),(0,a.Cg)([(0,c.MZ)({type:["KnowledgeGraphLayer"]})],G.prototype,"operationalLayerType",void 0),(0,a.Cg)([(0,c.MZ)()],G.prototype,"sublayerCapabilities",null),(0,a.Cg)([(0,c.MZ)()],G.prototype,"sublayerIdsCache",void 0),(0,a.Cg)([(0,c.MZ)({type:r.A.ofType(w.A),json:{write:{ignoreOrigin:!0}}})],G.prototype,"tables",void 0),(0,a.Cg)([(0,c.MZ)({json:{read:!1}})],G.prototype,"type",void 0),(0,a.Cg)([(0,c.MZ)(C.OZ)],G.prototype,"url",void 0),(0,a.Cg)([(0,c.MZ)((0,E.P6)("dateFieldsTimeReference"))],G.prototype,"dateFieldsTimeZone",void 0),G=(0,a.Cg)([(0,c.$K)("esri.layers.KnowledgeGraphLayer")],G);const U=G},18768(e,t,i){i.d(t,{b:()=>o});var a=i(5482),s=i(53966),r=i(91429),n=i(60694);const o=e=>{const t=e;let i=class extends t{get title(){if(this._get("title")&&"defaults"!==this.originOf("title"))return this._get("title");if(this.url){const e=(0,n.qg)(this.url);if(e?.title)return e.title}return this._get("title")||""}set title(e){this._set("title",e)}set url(e){this._set("url",(0,n.Jf)(e,s.A.getLogger(this)))}};return(0,a.Cg)([(0,r.MZ)()],i.prototype,"title",null),(0,a.Cg)([(0,r.MZ)({type:String})],i.prototype,"url",null),i=(0,a.Cg)([(0,r.$K)("esri.layers.mixins.ArcGISService")],i),i}},69208(e,t,i){i.d(t,{d:()=>r});var a=i(5482),s=i(91429);const r=e=>{const t=e;let i=class extends t{constructor(){super(...arguments),this.customParameters=null}};return(0,a.Cg)([(0,s.MZ)({type:Object,json:{write:{overridePolicy:e=>({enabled:!!(e&&Object.keys(e).length>0)})}}})],i.prototype,"customParameters",void 0),i=(0,a.Cg)([(0,s.$K)("esri.layers.mixins.CustomParametersMixin")],i),i}},8303(e,t,i){i.d(t,{A:()=>v});var a=i(5482),s=i(92602),r=i(70333),n=i(11254),o=i(60999),l=i(49186),d=i(36563),h=i(53966),p=i(97768),u=i(17676),y=i(84952),c=i(91429),g=i(77548),f=i(20655),m=i(80812),w=i(41318),M=i(10407),b=i(36005),T=i(43937);const v=e=>{const t=e;let v=class extends t{constructor(){super(...arguments),this.resourceReferences={portalItem:null,paths:[]},this.userHasEditingPrivileges=!0,this.userHasFullEditingPrivileges=!1,this.userHasUpdateItemPrivileges=!1}destroy(){this.portalItem=(0,p.pR)(this.portalItem),this.resourceReferences.portalItem=null,this.resourceReferences.paths.length=0}get portalItem(){return this._get("portalItem")}set portalItem(e){e!==this._get("portalItem")&&(this.removeOrigin("portal-item"),this._set("portalItem",e))}readPortalItem(e,t,i){if(t.itemId)return new m.default({id:t.itemId,portal:i?.portal})}writePortalItem(e,t){e?.id&&(t.itemId=e.id)}async loadFromPortal(e,t){if(this.portalItem?.id)try{const{load:a}=await i.e(1204).then(i.bind(i,41204));return(0,u.Te)(t),await a({instance:this,supportedTypes:e.supportedTypes,validateItem:e.validateItem,supportsData:e.supportsData,layerModuleTypeMap:e.layerModuleTypeMap,populateGroupLayer:e.populateGroupLayer},t)}catch(e){throw(0,u.zf)(e)||h.A.getLogger(this).warn(`Failed to load layer (${this.title}, ${this.id}) portal item (${this.portalItem.id})\n ${e}`),e}}async reloadFromPortal(e){if(!this.loaded||!this.portalItem?.id)return!1;try{const{reload:t}=await i.e(1204).then(i.bind(i,41204)),a=new AbortController,s=(0,d.rE)(a);return this.addHandles(s,"reloadFromPortal"),await t({instance:this,supportedTypes:e.supportedTypes,validateItem:e.validateItem,supportsData:e.supportsData,layerModuleTypeMap:e.layerModuleTypeMap,populateGroupLayer:e.populateGroupLayer},{signal:a.signal})}catch(e){throw(0,u.zf)(e)||h.A.getLogger(this).warn(`Failed to reload layer (${this.title}, ${this.id}) portal item (${this.portalItem.id})\n ${e}`),e}finally{this.removeHandles("reloadFromPortal")}}async finishLoadEditablePortalLayer(e){this._set("userHasEditingPrivileges",await this._fetchUserHasEditingPrivileges(e).catch(e=>((0,u.QP)(e),!0)))}async setUserPrivileges(e,t){if(!s.A.userPrivilegesApplied)return this.finishLoadEditablePortalLayer(t);if(this.url)try{const{features:{edit:i,fullEdit:a},content:{updateItem:s}}=await this._fetchUserPrivileges(e,t);this._set("userHasEditingPrivileges",i),this._set("userHasFullEditingPrivileges",a),this._set("userHasUpdateItemPrivileges",s)}catch(e){(0,u.QP)(e)}}async _fetchUserPrivileges(e,t){let i=this.portalItem;if(!e||!i||!i.loaded||i.sourceUrl)return this._fetchFallbackUserPrivileges(t);const a=!r.id?.findCredential(this.url),s=e===i.id;if(s&&i.portal.user)return this._getUserPrivileges(i,a);let n,o;if(s)n=i.portal.url;else try{n=await(0,g.wI)(this.url,t)}catch(e){(0,u.QP)(e)}if(!n||!(0,y.b8)(n,i.portal.url))return this._fetchFallbackUserPrivileges(t);try{const e=null!=t?t.signal:null;o=await(r.id?.getCredential(`${n}/sharing`,{prompt:!1,signal:e}))}catch(e){(0,u.QP)(e)}const l=!0,d=!1,h=!1;if(!o)return{features:{edit:l,fullEdit:d},content:{updateItem:h}};try{if(s?await i.reload():(i=new m.default({id:e,portal:{url:n}}),await i.load(t)),i.portal.user)return this._getUserPrivileges(i,a)}catch(e){(0,u.QP)(e)}return{features:{edit:l,fullEdit:d},content:{updateItem:h}}}_getUserPrivileges(e,t){const i=(0,M.It)(e);return t&&(i.features.edit=!0),i}async _fetchFallbackUserPrivileges(e){let t=!0;try{t=await this._fetchUserHasEditingPrivileges(e)}catch(e){(0,u.QP)(e)}return{features:{edit:t,fullEdit:!1},content:{updateItem:!1}}}async _fetchUserHasEditingPrivileges(e){const t=this.url?r.id?.findCredential(this.url):null;if(!t)return!0;const i=_.credential===t?_.user:await this._fetchEditingUser(e);return _.credential=t,_.user=i,null==i?.privileges||i.privileges.includes("features:user:edit")}async _fetchEditingUser(e){const t=this.portalItem?.portal?.user;if(t)return t;const i=r.id?.findServerInfo(this.url??"");if(!i?.owningSystemUrl)return null;const a=`${i.owningSystemUrl}/sharing/rest`,s=f.A.getDefault();if(s&&s.loaded&&(0,y.S8)(s.restUrl)===(0,y.S8)(a))return s.user;const l=`${a}/community/self`,d=null!=e?e.signal:null,h=await(0,o.Ke)((0,n.A)(l,{authMode:"no-prompt",query:{f:"json"},signal:d}));return h.ok?w.A.fromJSON(h.value.data):null}read(e,t){t&&(t.layer=this),super.read(e,t)}write(e,t){const i=t?.portal,a=this.portalItem?.id&&(this.portalItem.portal||f.A.getDefault());return i&&a&&!(0,y.ut)(a.restUrl,i.restUrl)?(t.messages&&t.messages.push(new l.A("layer:cross-portal",`The layer '${this.title} (${this.id})' cannot be persisted because it refers to an item on a different portal than the one being saved to. To save, set layer.portalItem to null or save to the same portal as the item associated with the layer`,{layer:this})),null):super.write(e,{...t,layer:this})}};return(0,a.Cg)([(0,c.MZ)({type:m.default})],v.prototype,"portalItem",null),(0,a.Cg)([(0,b.w)("web-document","portalItem",["itemId"])],v.prototype,"readPortalItem",null),(0,a.Cg)([(0,T.K)("web-document","portalItem",{itemId:{type:String}})],v.prototype,"writePortalItem",null),(0,a.Cg)([(0,c.MZ)({clonable:!1})],v.prototype,"resourceReferences",void 0),(0,a.Cg)([(0,c.MZ)({type:Boolean,readOnly:!0})],v.prototype,"userHasEditingPrivileges",void 0),(0,a.Cg)([(0,c.MZ)({type:Boolean,readOnly:!0})],v.prototype,"userHasFullEditingPrivileges",void 0),(0,a.Cg)([(0,c.MZ)({type:Boolean,readOnly:!0})],v.prototype,"userHasUpdateItemPrivileges",void 0),v=(0,a.Cg)([(0,c.$K)("esri.layers.mixins.PortalLayer")],v),v},_={credential:null,user:null}}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[8692],{28692(e,t,i){i.r(t),i.d(t,{default:()=>U});var a=i(5482),s=i(79842),r=i(7762),n=i(49186),o=i(53966),l=i(91869),d=i(25728),h=i(17676),p=i(36708),u=i(84952),y=i(13069),c=i(91429),g=i(35666),f=i(4146),m=i(24137),w=i(62796),M=i(40736),b=i(18768),T=i(63074),v=i(69208),_=i(34287),D=i(8303),I=i(54310),A=i(25036),C=i(10873),L=i(54628),P=i(53902),S=i(97159),E=i(56400),k=i(36005),N=i(43937);let G=class extends((0,T.dM)((0,A.j)((0,I.J)((0,b.b)((0,_.q)((0,D.A)((0,d.M)((0,v.d)(f.A))))))))){constructor(e){super(e),this._graphTypeLookup=new Map,this._namedTypesModified=!1,this._idMapCreationDate=null,this.dataManager=null,this.definitionSetMap=null,this.knowledgeGraph=null,this.layers=new(r.A.ofType(w.A)),this.memberEntityTypes=null,this.memberRelationshipTypes=null,this.operationalLayerType="KnowledgeGraphLayer",this.sublayerIdsCache=new Map,this.tables=new(r.A.ofType(w.A)),this.type="knowledge-graph",this.url=null,!e?.title&&e?.url&&(this.title=(0,M.$L)(e.url)),this.addHandles((0,p.wB)(()=>this.layers.concat(this.tables),(e,t)=>this._handleSublayersChange(e,t),p.OH))}load(e){return this.addResolvingPromise(this._doLoad(e)),Promise.resolve(this)}async _doLoad(e){try{await this.loadFromPortal({supportedTypes:["Knowledge Graph Layer"]},e)}catch(e){(0,h.QP)(e)}await this._fetchMetadata(e),await this._initializeLayerProperties(e),this.loadLayerAssumingLocalCache(),this._layersLoadedFromAuthoritativeItem()||await(0,M.qN)(this)}async _fetchMetadata(e){if(!this.url)throw new n.A("knowledge-graph:missing-url","KnowledgeGraphLayer must be created with a url");const t=await(0,P.fetchKnowledgeGraph)(this.url);this.knowledgeGraph=t;const{edit:i,fullEdit:a,updateItem:s}=await(0,M.N1)(t.serviceDefinition.serviceItemId,this.url,e);this._set("userHasEditingPrivileges",i),this._set("userHasFullEditingPrivileges",a),this._set("userHasUpdateItemPrivileges",s),this.read({dateFieldsTimeReference:t.serviceDefinition.dateFieldsTimeReference},{origin:"service"}),this._forEachGraphType(e=>{e.name&&this._graphTypeLookup.set(e.name,e)})}async _initializeLayerProperties(e){7===this.originIdOf("inclusionModeDefinition")?this._validateInclusionModeDefinition():await this._initializeInclusionModeDefinition(e),this._setMemberTypes(),this.dataManager=new m.P({knowledgeGraph:this.knowledgeGraph,inclusionModeDefinition:this.inclusionModeDefinition})}async _initializeInclusionModeDefinition(e){this._idMapCreationDate=(await(0,L.lV)([this.definitionSetMap??""],this.portalItem?.itemUrl??"")).get(this.definitionSetMap??"")??null;const t=this.definitionSetMap?await(0,s.cZ)(this.definitionSetMap,!0,e?.signal?{signal:e.signal}:void 0):{generateAllSublayers:!0,namedTypeDefinitions:new Map};[...this.layers.toArray(),...this.tables.toArray()].forEach(e=>{const i=this._graphTypeLookup.get(e.graphTypeName);i&&!t.namedTypeDefinitions.has(i.name)&&t.namedTypeDefinitions.set(i.name,{useAllData:!0})}),this.setAtOrigin("inclusionModeDefinition",t,(0,g.OL)(this.originIdOf("definitionSetMap")))}_validateInclusionModeDefinition(){const{inclusionModeDefinition:e}=this;if(!e)return;const{namedTypeDefinitions:t}=e;if(t?.size>0)t.forEach((e,i)=>{const a=this._graphTypeLookup.get(i);if(!a)return o.A.getLogger(this).warn(`A named type, ${i}, was in the inclusion list that wasn't in the data model and will be removed`),void t.delete(i);"relationship"!==a.type&&"entity"!==a.type&&(o.A.getLogger(this).warn(`A named type, ${i}, was in the inclusion list that wasn't properly modeled and will be removed`),t.delete(i))});else if(!e.generateAllSublayers)throw new n.A("knowledge-graph:composite-layer-constructor","If an explicit inclusion definition is defined, at least one namedTypeDefinition must also be defined")}_setMemberTypes(){let e=[],t=[];const{inclusionModeDefinition:i}=this,a=i?.namedTypeDefinitions;!i||i.generateAllSublayers?(e=this.knowledgeGraph.dataModel?.entityTypes??[],t=this.knowledgeGraph.dataModel?.relationshipTypes??[]):a&&a.size>0&&a.forEach((i,a)=>{const s=this._graphTypeLookup.get(a);switch(s?.type){case"relationship":t.push(s);break;case"entity":e.push(s)}}),this.memberEntityTypes=e,this.memberRelationshipTypes=t}_forEachGraphType(e){[...this.knowledgeGraph.dataModel?.entityTypes??[],...this.knowledgeGraph.dataModel?.relationshipTypes??[]].forEach(t=>{e(t)})}_refreshNamedTypes(){this._namedTypesModified=!0;for(const e of this.layers)e.emit("refresh",{dataChanged:!0});for(const e of this.tables)e.emit("refresh",{dataChanged:!0})}async _handleNewRecords(e){const t=new Set,i=[];for(const a of e)this._graphTypeLookup.has(a.typeName)&&(!1===this.layers.concat(this.tables).some(e=>e.objectType.name===a.typeName)&&(this.dataManager.sublayerCaches.set(a.typeName,new Map),t.add(a.typeName)),(0,l.tE)(this.sublayerIdsCache,a.typeName,()=>new Set).add(a.id),i.push(a));this.dataManager.addToLayer(i);for(const e of t){const t=this._graphTypeLookup.get(e);t&&(this._addSublayer(t),"entity"===t.type?this.dataManager.entityTypeNames.add(e):this.dataManager.relationshipTypeNames.add(e))}await(0,M.qN)(this,Array.from(t)),this._refreshNamedTypes()}_createSublayers(e,t,i){e.forEach(e=>{const a=this._createSublayer(e);i(a)&&t.push(a),this._updateSublayerCaches(e)})}_addSublayer(e){const t=this._createSublayer(e);return t.geometryType?this.layers.push(t):this.tables.push(t),t}_createSublayer(e){return new w.A({objectType:e,parentCompositeLayer:this,graphType:e.type})}_updateSublayers(e,t){t.forEach(t=>{t.parentCompositeLayer=this;const i=e.find(e=>e.type===t.graphType&&e.name===t.graphTypeName);i&&(t.objectType=i,this._updateSublayerCaches(i))})}_updateSublayerCaches({name:e}){if(!e)return;const t=this.dataManager.sublayerCaches;t.has(e)||t.set(e,new Map)}_saveUrlAsNewResource(e,t,i,a,r,n){(async function(e){const t=await(0,s.fe)(e);return new Blob([t],{type:"application/x-protobuf"})})(this.inclusionModeDefinition).then(s=>{const n=function(e){const t=`definitionSetMap-${(0,y.lk)()}.dat`,i=(0,u.fj)("knowledgeGraphLayer",t);return e.resourceFromPath(i)}(a);e[t]=n.itemRelativeUrl,i.toAdd.push({resource:n,content:{type:"blob",blob:s},compress:!1,finish:e=>{this.definitionSetMap=e.url}}),r()}).catch(e=>{n(e)})}_displaysAllRecords(e){for(const[,{useAllData:t}]of e.namedTypeDefinitions)if(!t)return!1;return!0}_handleSublayersChange(e,t){t&&(t.forEach(e=>{e.parent=null}),this.removeHandles("sublayers-owner")),e&&(e.forEach(e=>{e.parent=this}),this.addHandles([e.on("after-add",({item:e})=>{e.parent=this}),e.on("after-remove",({item:e})=>{e.parent=null})],"sublayers-owner"))}_layersLoadedFromAuthoritativeItem(){const e=this.originIdOf("layers");return e>=3&&e<7}readDefinitionSetMap(e,t,i){return(0,S.a)(e,i)}writeDefinitionSetMap(e,t,i,a){const s=a?.portalItem,r=a?.resources,n=(0,g.aB)(a?.origin);t[i]="<pending>",r?.pendingOperations.push(new Promise((o,l)=>{(0,L.zI)(e??"",s?.itemUrl??"",this._idMapCreationDate).then(d=>{if(!s||!r||null==n)return e&&(t[i]=(0,S.c)(e,a)),void o();const{inclusionModeDefinition:h}=this;if(!h||this._displaysAllRecords(h))return this.definitionSetMap=null,void o();const p=this.originIdOf("inclusionModeDefinition");if(7===p||this._namedTypesModified||!d||n<p)this._saveUrlAsNewResource(t,i,r,s,o,l);else{if(n===p&&e){const n=(0,S.c)(e,a);return void((0,u.oP)(n)?this._saveUrlAsNewResource(t,i,r,s,o,l):(t[i]=n,o()))}o()}}).catch(e=>{l(e)})}))}set inclusionModeDefinition(e){"loaded"!==this.loadStatus&&"failed"!==this.loadStatus?this._set("inclusionModeDefinition",e):o.A.getLogger(this).error("#inclusionModeDefinition","inclusionModeDefinition cannot be changed after the layer is loaded.")}get sublayerCapabilities(){return(0,M.hZ)(this.knowledgeGraph)}loadLayerAssumingLocalCache(){const e=[...this.memberEntityTypes,...this.memberRelationshipTypes];this.layers.length||0===this.originIdOf("tables")?0===this.originIdOf("layers")?this._createSublayers(e,this.layers,e=>!!e.geometryType):this._updateSublayers(e,this.layers):this.layers=new r.A,this.tables.length||0===this.originIdOf("layers")?0===this.originIdOf("tables")?this._createSublayers(e,this.tables,e=>!e.geometryType):this._updateSublayers(e,this.tables):this.tables=new r.A,this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.forEach((e,t)=>{const i=(0,l.tE)(this.sublayerIdsCache,t,()=>new Set);e.members?.forEach(e=>{i.add(e.id)})})}async addRecords(e){await this.load(),await this._handleNewRecords(e)}async createSublayerForNamedType(e){await this.load();const t=this._graphTypeLookup.get(e);if(!t)throw new n.A("knowledge-graph:missing-type","The specified type does not exist in the layer's graph data model.");if(this.dataManager.sublayerCaches.has(e))throw new n.A("knowledge-graph:duplicate-type","The specified type already exists as a sublayer.");this.dataManager.sublayerCaches.set(e,new Map),(0,l.tE)(this.sublayerIdsCache,e,()=>new Set);const i=this._addSublayer(t);return"entity"===t.type?this.dataManager.entityTypeNames.add(e):this.dataManager.relationshipTypeNames.add(e),this.dataManager.inclusionModeDefinition&&this.dataManager.inclusionModeDefinition.namedTypeDefinitions.set(e,{useAllData:!0}),await(0,M.qN)(this,[e]),this._refreshNamedTypes(),i}convertSublayerToDynamicData(e){if(!this.dataManager.inclusionModeDefinition)throw new n.A("knowledge-graph:fully-dynamic-membership","This Knowledge Graph Layer already uses fully dynamic membership, individual sublayers cannot be converted");if(!this._graphTypeLookup.get(e))throw new n.A("knowledge-graph:missing-type","The specified type does not exist in the layer's graph data model.");if(!this.dataManager.sublayerCaches.has(e))throw new n.A("knowledge-graph:duplicate-type","The specified type does not exist as a sublayer.");const t=this.dataManager.inclusionModeDefinition.namedTypeDefinitions.get(e);t?.useAllData?o.A.getLogger(this).warn("This Knowledge Graph Layer already uses dynamic membership for the sublayer - no conversion was made"):(this.dataManager.inclusionModeDefinition.namedTypeDefinitions.set(e,{useAllData:!0}),this.sublayerIdsCache.delete(e),this._refreshNamedTypes())}convertSublayerToExplicitMembership(e){if(!this.dataManager.inclusionModeDefinition)throw new n.A("knowledge-graph:fully-dynamic-membership","This Knowledge Graph Layer already uses fully dynamic membership, individual sublayers cannot be converted");if(!this._graphTypeLookup.get(e))throw new n.A("knowledge-graph:missing-type","The specified type does not exist in the layer's graph data model.");const t=this.dataManager.inclusionModeDefinition.namedTypeDefinitions.get(e);if(!t||t.useAllData){if(!this.dataManager.sublayerCaches.has(e))throw new n.A("knowledge-graph:duplicate-type","The specified type does not exist as a sublayer.");this.sublayerIdsCache.set(e,new Set),this.dataManager.inclusionModeDefinition.namedTypeDefinitions.set(e,{useAllData:!1,members:new Map}),this._refreshNamedTypes()}else o.A.getLogger(this).warn("This Knowledge Graph Layer already uses explicit membership for the sublayer - no conversion was made")}convertToFullyDynamicData(){this.dataManager.inclusionModeDefinition?(this.sublayerIdsCache.clear(),this.dataManager.inclusionModeDefinition=null,this._set("inclusionModeDefinition",this.dataManager.inclusionModeDefinition),this._refreshNamedTypes()):o.A.getLogger(this).warn("This Knowledge Graph Layer already uses fully dynamic membership - no conversion was made")}convertToExplicitMembership(){if(this.dataManager.inclusionModeDefinition&&this.dataManager.inclusionModeDefinition.namedTypeDefinitions.size>0&&[...this.dataManager.inclusionModeDefinition.namedTypeDefinitions.values()].every(e=>!1===e.useAllData))o.A.getLogger(this).warn("This Knowledge Graph Layer already uses explicit membership - no conversion was made");else{this.dataManager.inclusionModeDefinition={generateAllSublayers:!1,namedTypeDefinitions:new Map};for(const e of this.dataManager.sublayerCaches.keys())(0,l.tE)(this.sublayerIdsCache,e,()=>new Set),this.dataManager.inclusionModeDefinition.namedTypeDefinitions.set(e,{useAllData:!1,members:new Map});this._set("inclusionModeDefinition",this.dataManager.inclusionModeDefinition),this._refreshNamedTypes()}}async removeRecords(e){await this.load();const t=[];for(const i of e)!1===this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.get(i.typeName)?.useAllData&&this.dataManager.inclusionModeDefinition?.namedTypeDefinitions?.get(i.typeName)?.members?.has(i.id)&&t.push(i);this.dataManager.removeFromLayer(t);for(const e of t)this.sublayerIdsCache.get(e.typeName)?.delete(e.id);return this._refreshNamedTypes(),t}};(0,a.Cg)([(0,c.MZ)()],G.prototype,"dataManager",void 0),(0,a.Cg)([(0,c.MZ)({json:{write:{ignoreOrigin:!0,writerEnsuresNonNull:!0}}})],G.prototype,"definitionSetMap",void 0),(0,a.Cg)([(0,k.w)("definitionSetMap")],G.prototype,"readDefinitionSetMap",null),(0,a.Cg)([(0,N.K)("definitionSetMap")],G.prototype,"writeDefinitionSetMap",null),(0,a.Cg)([(0,c.MZ)()],G.prototype,"inclusionModeDefinition",null),(0,a.Cg)([(0,c.MZ)()],G.prototype,"knowledgeGraph",void 0),(0,a.Cg)([(0,c.MZ)({type:r.A.ofType(w.A),json:{write:{ignoreOrigin:!0}}})],G.prototype,"layers",void 0),(0,a.Cg)([(0,c.MZ)()],G.prototype,"memberEntityTypes",void 0),(0,a.Cg)([(0,c.MZ)()],G.prototype,"memberRelationshipTypes",void 0),(0,a.Cg)([(0,c.MZ)({type:["KnowledgeGraphLayer"]})],G.prototype,"operationalLayerType",void 0),(0,a.Cg)([(0,c.MZ)()],G.prototype,"sublayerCapabilities",null),(0,a.Cg)([(0,c.MZ)()],G.prototype,"sublayerIdsCache",void 0),(0,a.Cg)([(0,c.MZ)({type:r.A.ofType(w.A),json:{write:{ignoreOrigin:!0}}})],G.prototype,"tables",void 0),(0,a.Cg)([(0,c.MZ)({json:{read:!1}})],G.prototype,"type",void 0),(0,a.Cg)([(0,c.MZ)(C.OZ)],G.prototype,"url",void 0),(0,a.Cg)([(0,c.MZ)((0,E.P6)("dateFieldsTimeReference"))],G.prototype,"dateFieldsTimeZone",void 0),G=(0,a.Cg)([(0,c.$K)("esri.layers.KnowledgeGraphLayer")],G);const U=G},18768(e,t,i){i.d(t,{b:()=>o});var a=i(5482),s=i(53966),r=i(91429),n=i(60694);const o=e=>{const t=e;let i=class extends t{get title(){if(this._get("title")&&"defaults"!==this.originOf("title"))return this._get("title");if(this.url){const e=(0,n.qg)(this.url);if(e?.title)return e.title}return this._get("title")||""}set title(e){this._set("title",e)}set url(e){this._set("url",(0,n.Jf)(e,s.A.getLogger(this)))}};return(0,a.Cg)([(0,r.MZ)()],i.prototype,"title",null),(0,a.Cg)([(0,r.MZ)({type:String})],i.prototype,"url",null),i=(0,a.Cg)([(0,r.$K)("esri.layers.mixins.ArcGISService")],i),i}},69208(e,t,i){i.d(t,{d:()=>r});var a=i(5482),s=i(91429);const r=e=>{const t=e;let i=class extends t{constructor(){super(...arguments),this.customParameters=null}};return(0,a.Cg)([(0,s.MZ)({type:Object,json:{write:{overridePolicy:e=>({enabled:!!(e&&Object.keys(e).length>0)})}}})],i.prototype,"customParameters",void 0),i=(0,a.Cg)([(0,s.$K)("esri.layers.mixins.CustomParametersMixin")],i),i}},8303(e,t,i){i.d(t,{A:()=>v});var a=i(5482),s=i(92602),r=i(70333),n=i(11254),o=i(60999),l=i(49186),d=i(36563),h=i(53966),p=i(97768),u=i(17676),y=i(84952),c=i(91429),g=i(77548),f=i(20655),m=i(80812),w=i(41318),M=i(10407),b=i(36005),T=i(43937);const v=e=>{const t=e;let v=class extends t{constructor(){super(...arguments),this.resourceReferences={portalItem:null,paths:[]},this.userHasEditingPrivileges=!0,this.userHasFullEditingPrivileges=!1,this.userHasUpdateItemPrivileges=!1}destroy(){super.destroy(),this.portalItem=(0,p.pR)(this.portalItem),this.resourceReferences.portalItem=null,this.resourceReferences.paths.length=0}get portalItem(){return this._get("portalItem")}set portalItem(e){e!==this._get("portalItem")&&(this.removeOrigin("portal-item"),this._set("portalItem",e))}readPortalItem(e,t,i){if(t.itemId)return new m.default({id:t.itemId,portal:i?.portal})}writePortalItem(e,t){e?.id&&(t.itemId=e.id)}async loadFromPortal(e,t){if(this.portalItem?.id)try{const{load:a}=await i.e(1204).then(i.bind(i,41204));return(0,u.Te)(t),await a({instance:this,supportedTypes:e.supportedTypes,validateItem:e.validateItem,supportsData:e.supportsData,layerModuleTypeMap:e.layerModuleTypeMap,populateGroupLayer:e.populateGroupLayer},t)}catch(e){throw(0,u.zf)(e)||h.A.getLogger(this).warn(`Failed to load layer (${this.title}, ${this.id}) portal item (${this.portalItem.id})\n ${e}`),e}}async reloadFromPortal(e){if(!this.loaded||!this.portalItem?.id)return!1;try{const{reload:t}=await i.e(1204).then(i.bind(i,41204)),a=new AbortController,s=(0,d.rE)(a);return this.addHandles(s,"reloadFromPortal"),await t({instance:this,supportedTypes:e.supportedTypes,validateItem:e.validateItem,supportsData:e.supportsData,layerModuleTypeMap:e.layerModuleTypeMap,populateGroupLayer:e.populateGroupLayer},{signal:a.signal})}catch(e){throw(0,u.zf)(e)||h.A.getLogger(this).warn(`Failed to reload layer (${this.title}, ${this.id}) portal item (${this.portalItem.id})\n ${e}`),e}finally{this.removeHandles("reloadFromPortal")}}async finishLoadEditablePortalLayer(e){this._set("userHasEditingPrivileges",await this._fetchUserHasEditingPrivileges(e).catch(e=>((0,u.QP)(e),!0)))}async setUserPrivileges(e,t){if(!s.A.userPrivilegesApplied)return this.finishLoadEditablePortalLayer(t);if(this.url)try{const{features:{edit:i,fullEdit:a},content:{updateItem:s}}=await this._fetchUserPrivileges(e,t);this._set("userHasEditingPrivileges",i),this._set("userHasFullEditingPrivileges",a),this._set("userHasUpdateItemPrivileges",s)}catch(e){(0,u.QP)(e)}}async _fetchUserPrivileges(e,t){let i=this.portalItem;if(!e||!i||!i.loaded||i.sourceUrl)return this._fetchFallbackUserPrivileges(t);const a=!r.id?.findCredential(this.url),s=e===i.id;if(s&&i.portal.user)return this._getUserPrivileges(i,a);let n,o;if(s)n=i.portal.url;else try{n=await(0,g.wI)(this.url,t)}catch(e){(0,u.QP)(e)}if(!n||!(0,y.b8)(n,i.portal.url))return this._fetchFallbackUserPrivileges(t);try{const e=null!=t?t.signal:null;o=await(r.id?.getCredential(`${n}/sharing`,{prompt:!1,signal:e}))}catch(e){(0,u.QP)(e)}const l=!0,d=!1,h=!1;if(!o)return{features:{edit:l,fullEdit:d},content:{updateItem:h}};try{if(s?await i.reload():(i=new m.default({id:e,portal:{url:n}}),await i.load(t)),i.portal.user)return this._getUserPrivileges(i,a)}catch(e){(0,u.QP)(e)}return{features:{edit:l,fullEdit:d},content:{updateItem:h}}}_getUserPrivileges(e,t){const i=(0,M.It)(e);return t&&(i.features.edit=!0),i}async _fetchFallbackUserPrivileges(e){let t=!0;try{t=await this._fetchUserHasEditingPrivileges(e)}catch(e){(0,u.QP)(e)}return{features:{edit:t,fullEdit:!1},content:{updateItem:!1}}}async _fetchUserHasEditingPrivileges(e){const t=this.url?r.id?.findCredential(this.url):null;if(!t)return!0;const i=_.credential===t?_.user:await this._fetchEditingUser(e);return _.credential=t,_.user=i,null==i?.privileges||i.privileges.includes("features:user:edit")}async _fetchEditingUser(e){const t=this.portalItem?.portal?.user;if(t)return t;const i=r.id?.findServerInfo(this.url??"");if(!i?.owningSystemUrl)return null;const a=`${i.owningSystemUrl}/sharing/rest`,s=f.A.getDefault();if(s&&s.loaded&&(0,y.S8)(s.restUrl)===(0,y.S8)(a))return s.user;const l=`${a}/community/self`,d=null!=e?e.signal:null,h=await(0,o.Ke)((0,n.A)(l,{authMode:"no-prompt",query:{f:"json"},signal:d}));return h.ok?w.A.fromJSON(h.value.data):null}read(e,t){t&&(t.layer=this),super.read(e,t)}write(e,t){const i=t?.portal,a=this.portalItem?.id&&(this.portalItem.portal||f.A.getDefault());return i&&a&&!(0,y.ut)(a.restUrl,i.restUrl)?(t.messages&&t.messages.push(new l.A("layer:cross-portal",`The layer '${this.title} (${this.id})' cannot be persisted because it refers to an item on a different portal than the one being saved to. To save, set layer.portalItem to null or save to the same portal as the item associated with the layer`,{layer:this})),null):super.write(e,{...t,layer:this})}};return(0,a.Cg)([(0,c.MZ)({type:m.default})],v.prototype,"portalItem",null),(0,a.Cg)([(0,b.w)("web-document","portalItem",["itemId"])],v.prototype,"readPortalItem",null),(0,a.Cg)([(0,T.K)("web-document","portalItem",{itemId:{type:String}})],v.prototype,"writePortalItem",null),(0,a.Cg)([(0,c.MZ)({clonable:!1})],v.prototype,"resourceReferences",void 0),(0,a.Cg)([(0,c.MZ)({type:Boolean,readOnly:!0})],v.prototype,"userHasEditingPrivileges",void 0),(0,a.Cg)([(0,c.MZ)({type:Boolean,readOnly:!0})],v.prototype,"userHasFullEditingPrivileges",void 0),(0,a.Cg)([(0,c.MZ)({type:Boolean,readOnly:!0})],v.prototype,"userHasUpdateItemPrivileges",void 0),v=(0,a.Cg)([(0,c.$K)("esri.layers.mixins.PortalLayer")],v),v},_={credential:null,user:null}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1003],{1003(e,t,s){s.r(t),s.d(t,{default:()=>pe});var i=s(49186),n=s(5482),a=s(91429),r=s(49859),o=s(68197),l=s(5443),c=s(16930),f=s(73444),u=s(94778),h=s(14140);function p(e){return["x","e","east","long","longitude"].includes(e.toLowerCase())}function d(e){return["y","n","west","lat","latitude"].includes(e.toLowerCase())}function m(e){const{axes:t}=e.domain,s=Object.keys(t),i=[],n=[];let a=-1,r=-1,o=[];for(let e=0;e<s.length;e++){const l=s[e];p(l)?a=e:d(l)&&(r=e);const c=t[l],f=[];if("values"in c){c.values.forEach(e=>f.push("string"==typeof e?new Date(e).getTime():e));const e=f[1]-f[0];i.push([f[0]-.5*e,f[f.length-1]+.5*e]),n.push(e)}else{const{start:e,stop:t,num:s}=c,a=(t-e)/(s-1);i.push([e-.5*a,t+.5*a]),n.push(a);for(let t=0;t<s;t++)f.push(e+a*t)}o.push({name:l,values:f,extent:[f[0],f[f.length-1]]})}a>-1&&-1===r?r=0===a?1:0:r>-1&&-1===a?a=0===r?1:0:-1===r&&-1===a&&(a=0,r=1),o=o.filter((e,t)=>!(t===a||t===r));const{referencing:f}=e.domain,u=f.find(e=>e.coordinates.includes(s[a])).system.id,h=u?.slice(u.lastIndexOf("/")+1),m=null==h||"CRS84"===h?4326:Number(h),g=new c.A({wkid:m}),[y,x]=i[a],[w,I]=i[r],b=new l.A({xmin:y,xmax:x,ymin:w,ymax:I,spatialReference:g});return{width:Math.round(b.width/n[a]),height:Math.round(b.height/n[r]),extent:b,dimensions:o}}function g(e){const t=(0,f.lR)();return t?e[t]??Object.values(e)[0]:Object.values(e)[0]}function y(){return Math.round(255*Math.random())}function x(e){const t={},{parameters:s}=e;if(!s)return t;for(const[e,i]of Object.entries(s)){const{type:s,description:n,unit:a,categoryEncoding:r,observedProperty:l}=i;if("Parameter"===s&&(t[e]={},n&&(t[e].description=g(n)),a&&(t[e].unit=a.label?g(a.label):null,t[e].symbol=a.symbol?.value),r)){const s=Object.entries(r).map((e,t)=>({OID:t,Value:Number(e[1]),ClassName:e[0].slice(e[0].lastIndexOf("/")+1),Count:1}));let i=!1;l?.categories?.length&&(l.categories.forEach(e=>{if(!e.id)return;const t=e.id.slice(e.id.lastIndexOf("/")+1),n=s.find(e=>e.ClassName===t);if(!n)return;const a=e.label?g(e.label):null;if(n.Label=a,e.preferredColor){const t=o.A.fromHex(e.preferredColor);t&&(i=!0,n.Red=t.r,n.Green=t.g,n.Blue=t.b)}}),i&&s.forEach(e=>{null==e.Red&&(e.Red=y(),e.Green=y(),e.Blue=y())}));const n={objectIdFieldName:"",fields:[{name:"OID",type:"esriFieldTypeOID",alias:"OID",domain:null},{name:"Value",type:"esriFieldTypeInteger",alias:"Value",domain:null},{name:"Count",type:"esriFieldTypeDouble",alias:"Count",domain:null},{name:"ClassName",type:"esriFieldTypeString",alias:"ClassName",domain:null,length:50},{name:"Label",type:"esriFieldTypeString",alias:"Label",domain:null,length:50}],features:s.map(e=>({attributes:e}))};i&&n.fields.push({name:"Red",type:"esriFieldTypeInteger",alias:"Red",domain:null},{name:"Green",type:"esriFieldTypeInteger",alias:"Green",domain:null},{name:"Blue",type:"esriFieldTypeInteger",alias:"Blue",domain:null}),t[e].attributeTable=n}}return t}function w(e){let t=Number.MAX_VALUE,s=-Number.MAX_VALUE;for(let i=0;i<e.length;i++){const n=e[i];null!=n&&(n<t&&(t=n),n>s&&(s=n))}return(0,u.X1)(t,s)}function I(e,t,s){const i=e.map((e,s)=>({name:e,count:t[s]})).sort((e,t)=>e.name>t.name?-1:1),n=(a=1,e=>a*=e.count);var a;const r=[...i.slice(1),{name:"",count:1}].reverse().map(n).reverse();let o=0;for(let n=e.length-1;n>=0;n--)o+=r[i.findIndex(({name:t})=>t===e[n])]*(s%t[n]),s=Math.floor(s/t[n]);return o}var b=s(17676),v=s(4366),C=s(47520),S=s(51927),T=s(45617),A=s(87186);let R=class extends r.A{constructor(){super(...arguments),this.datasetFormat="MEMORY",this.preGenerateTiles=!0,this.source=null}get url(){return""}fetchRawTile(e,t,s,i={}){if(!this._pixelBlockTiles){const{rasterInfo:n}=this,[a,r]=n.storageInfo.tileInfo.size,{sliceId:o}=i,{pixelBlocks:l}=this.source,c={pixelBlock:null==o?l[0]:l[o],useBilinear:"thematic"!==n.dataType,tileSize:{width:a,height:r},level:e,row:t,col:s},f=this.rasterJobHandler?this.rasterJobHandler.clipTile(c,i):(0,C.J$)(c);return Promise.resolve(f)}const n=this._pixelBlockTiles.get(`${e}/${t}/${s}`);return Promise.resolve(n)}async _open(e){const t=this.source,{pixelBlocks:s,attributeTable:i,statistics:n,histograms:a,name:r,nativeExtent:o,transform:f,colormap:u}=t,h=s[0],{width:p,height:d,pixelType:m}=h,g=t.extent??new l.A({xmin:-.5,ymin:.5,xmax:p-.5,ymax:d-.5,spatialReference:new c.A({wkid:3857})}),y=t.isPseudoSpatialReference??!t.extent,x={x:g.width/p,y:g.height/d},w={...t.keyProperties};t.dataType&&(w.DataType=t.dataType),t.bandInfos&&(w.BandProperties=t.bandInfos.map(e=>e.toJSON())),i&&(w.DataType="Thematic");const I=new A.A({width:p,height:d,pixelType:m,extent:g,nativeExtent:o,attributeTable:i,colormap:u,transform:f,pixelSize:x,spatialReference:g.spatialReference,bandCount:h.pixels.length,keyProperties:w,multidimensionalInfo:t.multidimensionalInfo,statistics:n,isPseudoSpatialReference:y,histograms:a});this.ioConfig.skipMapInfo&&this.updateImageSpaceRasterInfo(I),this.createRemoteDatasetStorageInfo(I,512,512),this._set("rasterInfo",I),this.updateTileInfo(),I.multidimensionalInfo?await this._buildMDimStats(t.pixelBlocks,I.multidimensionalInfo):this.preGenerateTiles&&await this._buildInMemoryRaster(h,{width:512,height:512},e),I.multidimensionalInfo||(this.source=null),this.datasetName=r}async _buildInMemoryRaster(e,t,s){const{rasterInfo:n}=this,a=n.storageInfo.maximumPyramidLevel??0,r="thematic"!==n.dataType,o=this.rasterJobHandler?this.rasterJobHandler.split({pixelBlock:e,tileSize:t,maximumPyramidLevel:a,useBilinear:r},s):Promise.resolve((0,C.lD)(e,t,a,r)),l=null!=n.statistics,c=null!=n.histograms,f=this.ioConfig.skipStatistics||l?Promise.resolve({statistics:null,histograms:null}):this.rasterJobHandler?this.rasterJobHandler.estimateStatisticsHistograms({pixelBlock:e},s):Promise.resolve((0,S.f4)(e)),u=await(0,b.Lx)([o,f]);if(!u[0].value&&u[1].value)throw new i.A("inmemory-raster:open","failed to build in memory raster");this._pixelBlockTiles=u[0].value,l||(n.statistics=u[1].value?.statistics),c||(n.histograms=u[1].value?.histograms)}async _buildMDimStats(e,t,s){for(let i=0;i<t.variables.length;i++){const n=t.variables[i];if(n.statistics)continue;const a=n.dimensions.map(e=>new T.A({variableName:n.name,dimensionName:e.name,values:[e.values?.[0]??e.extent?.[0]],isSlice:!0})),r=(0,v.NG)(a,t),o=null==r?null:e[r];if(null==o)continue;const l=this.rasterJobHandler?await this.rasterJobHandler.computeStatisticsHistograms({pixelBlock:o},s):(0,S.eH)(o);n.statistics=l.statistics,n.histograms||(n.histograms=l.histograms)}}};(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],R.prototype,"datasetFormat",void 0),(0,n.Cg)([(0,a.MZ)({constructOnly:!0})],R.prototype,"preGenerateTiles",void 0),(0,n.Cg)([(0,a.MZ)()],R.prototype,"source",void 0),(0,n.Cg)([(0,a.MZ)()],R.prototype,"url",null),R=(0,n.Cg)([(0,a.$K)("esri.layers.raster.datasets.InMemoryRaster")],R);const M=R;var O=s(22671);let _=class extends r.A{constructor(){super(...arguments),this.datasetFormat="CovJSON"}fetchRawTile(e,t,s,i={}){return this._inMemoryRaster.fetchRawTile(e,t,s,i)}async _open(e){const{extent:t,pixelBlocks:s,multidimensionalInfo:i,attributeTable:n,bandNames:a}=await this._fetchData(e),{statistics:r,histograms:o}=(0,S.eH)(s[0]),l=a?.map(e=>({BandName:e})),c={DataType:n?"Thematic":i?"Scientific":"Generic",BandProperties:l},f=new M({source:{extent:t,pixelBlocks:s,attributeTable:n?O.A.fromJSON(n):null,multidimensionalInfo:i,statistics:r,histograms:o,keyProperties:c,isPseudoSpatialReference:!1}});await f.open(),this._inMemoryRaster=f;const u=this.source?"":this.url.slice(this.url.lastIndexOf("/")+1);this._set("datasetName",u.slice(0,u.indexOf("."))),this._set("rasterInfo",f.rasterInfo)}async _fetchData(e){const t=this.source??(await this.request(this.url,{signal:e?.signal})).data,s="imagery-tile-layer:open-coverage-json";if("coverage"!==t.type?.toLowerCase()||"grid"!==t.domain?.domainType?.toLowerCase())throw new i.A(s,"Only coverage with Grid domain type is supported");if(!t.ranges)throw new i.A(s,"Missing ranges in the grid coverage data");if(!t.domain.referencing?.length)throw new i.A(s,"Missing domain referencing in the grid coverage data");const n=Object.values(t.ranges);for(let e=0;e<n.length;e++){const{axisNames:t,shape:a,type:r,values:o}=n[e];if(!("ndarray"===r.toLowerCase()&&o?.length&&t?.length&&a?.length))throw new i.A(s,"Only ranges with valid NdArray, axisNames, shape, and inline values are supported");if(!p(t[t.length-1])||!d(t[t.length-2]))throw new i.A(s,"Only row-major ordered pixel values are supported. X axis must be the last axis.")}return function(e){const{width:t,height:s,extent:i,dimensions:n}=m(e),{ranges:a}=e,r=Object.keys(a).sort((e,t)=>e<t?-1:1),o=[];for(let e=0;e<r.length;e++){const t=r[e];n?.length&&o.push({name:t,dimensions:n})}const l=x(e);o.forEach(e=>l[e.name]&&Object.assign(e,l[e.name]));const c=o.length?{variables:o}:void 0,f=[];for(let e=0;e<r.length;e++){const i=r[e],{values:o,dataType:l,axisNames:c,shape:u}=a[i],p=u.length>2?e*u.slice(0,-2).reduce((e,t)=>e*t):0,d=c.slice(0,-2),m=u.slice(0,-2),g="float"===l?"f32":w(o),y=t*s,x=o.length/y;for(let i=0;i<x;i++){const a=h.A.createEmptyBand(g,y),r=new Uint8Array(y).fill(255);let l=!1;const c=i*y;for(let e=0;e<y;e++){const t=o[c+e];null==t?(r[e]=0,l=!0):a[e]=t}if(0===e||n?.length){const e=new h.A({width:t,height:s,mask:l?r:null,pixels:[a],pixelType:g});e.updateStatistics(),n?.length?f[I(d,m,i)+p]=e:f.push(e)}else{const e=f[i];e.pixels.push(a),l?e.mask&&(e.mask=h.A.combineBandMasks([e.mask,r])):e.mask=l?r:null}}}const u=Object.values(l).find(e=>e.attributeTable)?.attributeTable;return{extent:i,pixelBlocks:f,multidimensionalInfo:c,attributeTable:u,bandNames:c?void 0:r}}(t)}};(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],_.prototype,"datasetFormat",void 0),(0,n.Cg)([(0,a.MZ)({constructOnly:!0})],_.prototype,"source",void 0),_=(0,n.Cg)([(0,a.$K)("esri.layers.raster.datasets.CovJSONRaster")],_);const k=_;var F=s(4576),P=s(21325),B=s(330),D=s(43163);function N(e,t){if(!e||!t)return null;const s=[];for(let i=0;i<e.length;i++)s.push(e[i]),s.push(t[i]);return s}function E(e){if(!e)return null;let t=Number(e);if(!isNaN(t)&&0!==t)return new c.A({wkid:t});if(e=String(e).trim(),(0,P.jp)(e))return new c.A({wkt2:e});const s=e.toUpperCase();if(s.startsWith("COMPD_CS")){if(!s.includes("VERTCS")||!s.includes("GEOGCS")&&!s.startsWith("PROJCS"))return null;const i=s.indexOf("VERTCS"),n=s.indexOf("PROJCS"),a=n>-1?n:s.indexOf("GEOGCS");if(-1===a)return null;const r=e.slice(a,e.lastIndexOf("]",i)+1).trim(),o=e.slice(i,e.lastIndexOf("]")).trim();t=L(r);const l=new c.A(t?{wkid:t}:{wkt:r}),f=L(o);return f&&(l.vcsWkid=f),l}return s.startsWith("GEOGCS")||s.startsWith("PROJCS")?(t=L(e),new c.A(0!==t?{wkid:t}:{wkt:e})):null}function L(e){const t=e.replaceAll("]","[").replaceAll('"',"").split("[").map(e=>e.trim()).filter(e=>""!==e),s=t[t.length-1].split(","),i=s[0]?.toLowerCase();if(("epsg"===i||"esri"===i)&&e.endsWith('"]]')){const e=Number(s[1]);if(!isNaN(e)&&0!==e)return e}return 0}function z(e){if("pamdataset"!==e?.documentElement.tagName?.toLowerCase())return{};const t={spatialReference:null,transform:null,metadata:{},rasterBands:[],statistics:null,histograms:null};e.documentElement.childNodes.forEach(e=>{if(1===e.nodeType)if((0,B.g7)(e,"SRS")){if(!t.spatialReference){const s=(0,B.mX)(e);t.spatialReference=E(s)}}else if((0,B.g7)(e,"Metadata"))if("xml:ESRI"===e.getAttribute("domain")){const{spatialReference:s,transform:i}=function(e){const t=(0,B.V6)(e,"GeodataXform"),s=E((0,B.v7)(t,"SpatialReference/WKID")||(0,B.mX)(t,"SpatialReference/WKT"));if("typens:PolynomialXform"!==t.getAttribute("xsi:type"))return{spatialReference:s,transform:null};const i=(0,B.v7)(t,"PolynomialOrder")??1,n=(0,B.Ui)(t,"CoeffX/Double"),a=(0,B.Ui)(t,"CoeffY/Double"),r=(0,B.Ui)(t,"InverseCoeffX/Double"),o=(0,B.Ui)(t,"InverseCoeffY/Double"),l=N(n,a),c=N(r,o);return{spatialReference:s,transform:l&&c&&l.length&&c.length?new D.A({spatialReference:s,polynomialOrder:i,forwardCoefficients:l,inverseCoefficients:c}):null}}(e);t.transform=i,t.spatialReference||(t.spatialReference=s)}else(0,B.IC)(e,"MDI").forEach(e=>t.metadata[e.getAttribute("key")]=(0,B.mX)(e));else if((0,B.g7)(e,"PAMRasterBand")){const s=function(e){const t=(0,B.v7)(e,"NoDataValue"),s=(0,B.V6)(e,"Histograms/HistItem"),i=(0,B.v7)(s,"HistMin"),n=(0,B.v7)(s,"HistMax"),a=(0,B.v7)(s,"BucketCount"),r=(0,B.mX)(s,"HistCounts")?.split("|").map(e=>Number(e));let o,l,c,f;(0,B.IC)(e,"Metadata/MDI").forEach(e=>{const t=Number(e.textContent??e.nodeValue);switch(e.getAttribute("key").toUpperCase()){case"STATISTICS_MINIMUM":o=t;break;case"STATISTICS_MAXIMUM":l=t;break;case"STATISTICS_MEAN":c=t;break;case"STATISTICS_STDDEV":f=t}});const u=(0,B.v7)(e,"Metadata/SourceBandIndex");return{noDataValue:t,histogram:r?.length&&null!=i&&null!=n?{min:i,max:n,size:a||r.length,counts:r}:null,sourceBandIndex:u,statistics:null!=o&&null!=l?{min:o,max:l,avg:c,stddev:f}:null}}(e);null!=s.sourceBandIndex&&null==t.rasterBands[s.sourceBandIndex]?t.rasterBands[s.sourceBandIndex]=s:t.rasterBands.push(s)}});const s=t.rasterBands;if(s.length){const e=!!s[0].statistics;t.statistics=e?s.map(e=>e.statistics).filter(F.Ru):null;const i=!!s[0].histogram;t.histograms=i?s.map(e=>e.histogram).filter(F.Ru):null}return t}var J=s(5154);let H=class extends r.A{set rasterJobHandler(e){this._set("rasterJobHandler",e),this._inMemoryRaster&&(this._inMemoryRaster.rasterJobHandler=e)}fetchRawTile(e,t,s,i={}){if(this._imageBlob){const{blockWidth:i,blockHeight:n}=this.rasterInfo.storageInfo;return this.decodePixelBlock(this._imageBlob,{tileSize:[i,n],tileIndex:[e,t,s],canvasUsage:"canvas-only",cloneSource:!0,skipStatistics:!0})}return this._inMemoryRaster.fetchRawTile(e,t,s,i)}async _open(e){const t=await this._fetchData(e);if(null==t)throw new i.A("image-aux-raster:open","the data cannot be decoded");let{spatialReference:s,statistics:n,histograms:a,transform:r}=await this._fetchAuxiliaryData(e);const o=!s;o&&(s=new c.A({wkid:3857})),a?.length&&null==n&&(n=(0,S.Pg)(a));const{width:f,height:u}=t;let h=new l.A({xmin:-.5,ymin:.5-u,xmax:f-.5,ymax:.5,spatialReference:s});const p=r?r.forwardTransform(h):h;let d=!0;if(r){const e=r.forwardCoefficients;d=e&&0===e[1]&&0===e[2],d&&(r=null,h=p)}const{rasterJobHandler:m,ioConfig:g}=this,y=new M({preGenerateTiles:!1,rasterJobHandler:m,source:{extent:p,nativeExtent:h,transform:r,pixelBlocks:[t],statistics:n,histograms:a,keyProperties:{DateType:"Processed"},isPseudoSpatialReference:o},ioConfig:{...g,sampling:"closest",skipStatistics:!0}});await y.open(),y.source=null,this._set("rasterInfo",y.rasterInfo),this._inMemoryRaster=y}async _fetchData(e){const{data:t}=await this.request(this.url,{responseType:"array-buffer",signal:e?.signal}),s=(0,J.g)(t);if("jpg"!==s&&"png"!==s&&"gif"!==s&&"bmp"!==s)throw new i.A("image-aux-raster:open","the data is not a supported format");this._set("datasetFormat",s.toUpperCase());const n=s.toLowerCase();try{const e=await this.decodePixelBlock(t,{format:n,canvasUsage:"canvas-only",cloneSource:!0,skipStatistics:!0});return this._imageBlob=t,e}catch{return this.decodePixelBlock(t,{format:n,canvasUsage:"no-canvas",skipStatistics:!0})}}async _fetchAuxiliaryData(e){const t=e?.signal,{skipExtensions:s=[],skipMapInfo:i}=this.ioConfig,n=i||s.includes("aux.xml")?null:this.request(this.url+".aux.xml",{responseType:"xml",signal:t}),a=this.datasetFormat,r="JPG"===a?"jgw":"PNG"===a?"pgw":"BMP"===a?"bpw":null,o=r&&s.includes(r)?null:this.request(this.url.slice(0,this.url.lastIndexOf("."))+"."+r,{responseType:"text",signal:t}),l=await(0,b.Lx)([n,o]);if(t?.aborted)throw(0,b.NK)();const c=z(l[0].value?.data);if(!c.transform){const e=l[1].value?l[1].value.data.split("\n").slice(0,6).map(e=>Number(e)):null;c.transform=6===e?.length?new D.A({forwardCoefficients:[e[4],e[5],e[0],-e[1],e[2],-e[3]]}):null}return c}};(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],H.prototype,"datasetFormat",void 0),(0,n.Cg)([(0,a.MZ)()],H.prototype,"rasterJobHandler",null),H=(0,n.Cg)([(0,a.$K)("esri.layers.raster.datasets.ImageAuxRaster")],H);const U=H;var G=s(97768),q=s(84952),j=s(86738),V=s(75414),W=s(20223),Z=s(87045),X=s(25943),$=s(82371);let Y=class extends r.A{constructor(){super(...arguments),this._levelOffset=0,this._tilemapCache=null,this._slices=null,this.datasetFormat="RasterTileServer",this.tileType=null}async fetchRawTile(e,t,s,i={}){const{storageInfo:n,extent:a}=this.rasterInfo,{transposeInfo:r}=n,o=null!=r&&!!i.transposedVariableName;if(this._slices&&!o&&null==i.sliceId)return null;const l=o?0:n.maximumPyramidLevel-e+this._levelOffset,c=`${this.url}/tile/${l}/${t}/${s}`,f={...this._slices?o?{variable:i.transposedVariableName}:{sliceId:i.sliceId||0}:null,...i.refreshParameters};let u,h;if(n.isBsqTile){const e=(i.bandIds?.length?i.bandIds:[0,1,2]).map(e=>this.request(c,{query:{...f,bandId:e},responseType:"array-buffer",signal:i.signal})),t=await Promise.all(e),s=t.map(e=>e.data.byteLength).reduce((e,t)=>e+t),n=new Uint8Array(s);h=[];let a=0;for(const{data:e}of t)h.push(a),n.set(new Uint8Array(e),a),a+=e.byteLength;u=n.buffer}else u=(await this.request(c,{query:f,responseType:"array-buffer",signal:i.signal})).data;if(!u)return null;const{tileInfo:p}=n,d=o?r.tileSize:p.size,m=/^(mixed|jp)/i.test(p.format),g=await this.decodePixelBlock(u,{width:d[0],height:d[1],planes:h?.length,offsets:h,pixelType:null,isPoint:"Elevation"===this.tileType,returnInterleaved:o,noDataValue:this.rasterInfo.noDataValue,applyJpegMask:m});if(null==g)return null;const y=n.blockBoundary[e];if("jpg"!==n.compression||s>y.minCol&&s<y.maxCol&&t>y.minRow&&t<y.maxRow)return g;const{origin:x,blockWidth:w,blockHeight:I}=n,{x:b,y:v}=this.getPyramidPixelSize(e),S=Math.round((a.xmin-x.x)/b)%w,T=Math.round((a.xmax-x.x)/b)%w||w,A=Math.round((x.y-a.ymax)/v)%I,R=Math.round((x.y-a.ymin)/v)%I||I,M=s===y.minCol?S:0,O=t===y.minRow?A:0,_=s===y.maxCol?T:w,k=t===y.maxRow?R:I;return(0,C.z$)(g,{x:M,y:O},{width:_-M,height:k-O}),g}getSliceIndex(e){if(!this._slices||null==e||0===e.length)return null;const t=e;for(let e=0;e<this._slices.length;e++){const s=this._slices[e].multidimensionalDefinition;if(s.length===t.length&&!s.some(e=>{const s=t.find(t=>e.variableName===t.variableName&&t.dimensionName===e.dimensionName);return!s||(Array.isArray(e.values[0])?`${e.values[0][0]}-${e.values[0][1]}`:e.values[0])!==(Array.isArray(s.values[0])?`${s.values[0][0]}-${s.values[0][1]}`:s.values[0])}))return e}return null}async fetchVariableStatisticsHistograms(e,t){const s=this.request(this.url+"/statistics",{query:{variable:e,f:"json"},signal:t}).then(e=>e.data?.statistics),i=this.request(this.url+"/histograms",{query:{variable:e,f:"json"},signal:t}).then(e=>e.data?.histograms),n=await Promise.all([s,i]);return n[0]&&n[0].forEach(e=>{e.avg=e.mean,e.stddev=e.standardDeviation}),n[1]?.[0]?.counts?.length||(n[1]=null),{statistics:n[0]||null,histograms:n[1]||null}}async computeBestPyramidLevelForLocation(e,t={}){if(!this._tilemapCache)return 0;let s=this.identifyPixelLocation(e,0,t.datumTransformation);if(null===s)return null;let i=0;const{maximumPyramidLevel:n}=this.rasterInfo.storageInfo;let a=n-i+this._levelOffset;const r=s.srcLocation;for(;a>=0;){try{if("available"===await this._tilemapCache.fetchAvailability(a,s.row,s.col,t))break}catch{}if(a--,i++,s=this.identifyPixelLocation(r,i,t.datumTransformation),null===s)return null}return-1===a||null==s?null:i}async _open(e){const t=e?.signal,s=this.sourceJSON?{data:this.sourceJSON}:await this.request(this.url,{query:{f:"json"},signal:t});s.ssl&&(this.url=this.url.replace(/^http:/i,"https:"));const n=s.data;if(this.sourceJSON=n,!n)throw new i.A("imageserverraster:open","cannot initialize tiled image service, missing service info");if(!n.tileInfo)throw new i.A("imageserverraster:open","use ImageryLayer to open non-tiled image services");this._fixScaleInServiceInfo(),this.tileType=n.cacheType,null==this.tileType&&(["jpg","jpeg","png","png8","png24","png32","mixed"].includes(n.tileInfo.format.toLowerCase())?this.tileType="Map":"lerc"===n.tileInfo.format.toLowerCase()?this.tileType="Elevation":this.tileType="Raster"),this.datasetName=n.name?.slice(n.name.indexOf("/")+1)??"";const a=await this._fetchRasterInfo({signal:t});if(null==a)throw new i.A("image-server-raster:open","cannot initialize image service");(0,$.E9)(a,n);const r="Map"===this.tileType?function(e,t){if(!e)return null;const{minScale:s,maxScale:i,minLOD:n,maxLOD:a}=t;if(null!=n&&null!=a)return Z.A.fromJSON({...e,lods:e.lods.filter(({level:e})=>null!=e&&e>=n&&e<=a)});if(0!==s&&0!==i){const t=e=>Math.round(1e4*e)/1e4,n=s?t(s):1/0,a=i?t(i):-1/0;return Z.A.fromJSON({...e,lods:e.lods.filter(e=>{const s=t(e.scale);return s<=n&&s>=a})})}return Z.A.fromJSON(e)}(n.tileInfo,n):Z.A.fromJSON(n.tileInfo);(0,G.Lw)(r);const[o,l]=this._computeMinMaxLOD(a,r),{extent:c,pixelSize:f}=a,u=.001*Math.min(f.x,f.y);(f.x!==f.y||Math.abs(o.resolution-f.x)>u)&&(f.x=f.y=o.resolution,a.width=Math.ceil((c.xmax-c.xmin)/f.x-.1),a.height=Math.ceil((c.ymax-c.ymin)/f.y-.1));const h=o.level-l.level,[p,d]=r.size,m=[],g=[],{lods:y}=r;y.forEach((e,t)=>{e.level>=l.level&&e.level<=o.level&&m.push({x:e.resolution,y:e.resolution}),t<y.length-1&&g.push(Math.round(10*e.resolution/y[t+1].resolution)/10)}),m.sort((e,t)=>e.x-t.x);const x=this.computeBlockBoundary(c,p,d,r.origin,m,h),w=m.length>1?m.slice(1):null;let I;n.transposeInfo&&(I={tileSize:[n.transposeInfo.rows,n.transposeInfo.cols],packetSize:a.keyProperties?._yxs.PacketSize??0});const b=g.length<=1||g.length>=3&&g.slice(0,-1).every(e=>e===g[0])?g[0]??2:Math.round(10/(l.resolution/o.resolution)**(-1/h))/10,v=!!n.bsq&&"Raster"===this.tileType;if(a.storageInfo=new W.A({blockWidth:r.size[0],blockHeight:r.size[1],pyramidBlockWidth:r.size[0],pyramidBlockHeight:r.size[1],pyramidResolutions:w,pyramidScalingFactor:b,compression:r.format,origin:r.origin,firstPyramidLevel:1,maximumPyramidLevel:h,tileInfo:r,isBsqTile:v,transposeInfo:I,blockBoundary:x}),function(e){const{extent:t,spatialReference:s}=e;t.xmin>-1&&t.xmax>181&&s?.wkid&&s.isGeographic&&(e.nativeExtent=e.extent,e.transform=new V.A,e.extent=e.transform.forwardTransform(t))}(a),this._set("rasterInfo",a),n.capabilities.toLowerCase().includes("tilemap")){const e={tileInfo:a.storageInfo.tileInfo,parsedUrl:(0,q.An)(this.url),url:this.url,tileServers:[]};this._tilemapCache=new X.d({layer:e})}}async _fetchRasterInfo(e){const t=this.sourceJSON;if("Map"===this.tileType){const e=t.fullExtent||t.extent,s=Math.ceil((e.xmax-e.xmin)/t.pixelSizeX-.1),i=Math.ceil((e.ymax-e.ymin)/t.pixelSizeY-.1),n=c.A.fromJSON(t.spatialReference||e.spatialReference),a=new j.A({x:t.pixelSizeX,y:t.pixelSizeY,spatialReference:n});return new A.A({width:s,height:i,bandCount:3,extent:l.A.fromJSON(e),spatialReference:n,pixelSize:a,pixelType:"u8",statistics:null,keyProperties:{DataType:"processed"}})}const s={...e,query:{...this.ioConfig.customFetchParameters,f:"json"}},i=(0,$.Tw)(this.url,this.sourceJSON,s),n=t.hasMultidimensions?this.request(`${this.url}/slices`,s).then(e=>e.data?.slices).catch(()=>null):null,a=await Promise.all([i,n]);return this._slices=a[1],a[0]}_fixScaleInServiceInfo(){const{sourceJSON:e}=this;e.minScale&&e.minScale<0&&(e.minScale=0),e.maxScale&&e.maxScale<0&&(e.maxScale=0)}_computeMinMaxLOD(e,t){const{pixelSize:s}=e,i=.5/e.width*s.x,{lods:n}=t,a=t.lodAt(Math.max.apply(null,n.map(e=>e.level))),r=t.lodAt(Math.min.apply(null,n.map(e=>e.level))),{tileType:o}=this;if("Map"===o)return this._levelOffset=n[0].level,[a,r];if("Raster"===o)return[n.find(e=>e.resolution===s.x)??a,r];const{minScale:l,maxScale:c}=this.sourceJSON;let f=a;c>0&&(f=n.find(e=>Math.abs(e.scale-c)<i),f||(f=n.filter(e=>e.scale>c).sort((e,t)=>e.scale>t.scale?1:-1)[0]??a));let u=r;return l>0&&(u=n.find(e=>Math.abs(e.scale-l)<i)??r,this._levelOffset=u.level-r.level),[f,u]}};(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],Y.prototype,"datasetFormat",void 0),(0,n.Cg)([(0,a.MZ)()],Y.prototype,"tileType",void 0),Y=(0,n.Cg)([(0,a.$K)("esri.layers.raster.datasets.ImageServerRaster")],Y);const K=Y;var Q=s(10713);const ee=new Map([["byte","u8"],["signedbyte","s8"],["int8","s8"],["uint8","u8"],["int16","s16"],["uint16","u16"],["int32","s32"],["uint32","u32"],["float32","f32"],["float64","f64"],["double64","f64"]]),te=new Map;te.set("none",{blobExtension:".til",isOneSegment:!0,decoderFormat:"bip"}),te.set("lerc",{blobExtension:".lrc",isOneSegment:!1,decoderFormat:"lerc"}),te.set("deflate",{blobExtension:".pzp",isOneSegment:!0,decoderFormat:"deflate"}),te.set("jpeg",{blobExtension:".pjg",isOneSegment:!0,decoderFormat:"jpg"}),te.set("qb3",{blobExtension:".pq3",isOneSegment:!0,decoderFormat:"qb3"});let se=class extends r.A{constructor(){super(...arguments),this._files=null,this._storageIndex=null,this._isBsq=!1,this.datasetFormat="MRF"}async fetchRawTile(e,t,s,i={}){const{blockWidth:n,blockHeight:a,blockBoundary:r}=this.rasterInfo.storageInfo,o=r[e];if(!o||o.maxRow<t||o.maxCol<s||o.minRow>t||o.minCol>s)return null;const{bandCount:l,pixelType:c}=this.rasterInfo,{ranges:f,actualTileWidth:u,actualTileHeight:p}=this._getTileLocation(e,t,s);if(!f||0===f.length)return null;if(f.some(e=>e.from>e.to)){const e=new Uint8Array(n*a);return new h.A({width:n,height:a,pixels:void 0,mask:e,validPixelCount:0})}const{bandIds:d}=this.ioConfig,m=this._getBandSegmentCount(),g=[];let y=0;for(y=0;y<m;y++)d&&!d.includes(y)||g.push(this.request(this._files.data,{range:{from:f[y].from,to:f[y].to},responseType:"array-buffer",signal:i.signal}));const x=await Promise.all(g),w=x.map(e=>e.data.byteLength).reduce((e,t)=>e+t),I=new Uint8Array(w),b=[];let v=0;for(y=0;y<m;y++)b.push(v),I.set(new Uint8Array(x[y].data),v),v+=x[y].data.byteLength;const C=te.get(this.rasterInfo.storageInfo.compression).decoderFormat,S=await this.decodePixelBlock(I.buffer,{width:n,height:a,format:C,planes:d?.length||l,offsets:b,pixelType:c}).catch(()=>null);if(null==S)return null;let{noDataValue:T}=this.rasterInfo;if(null!=T&&"lerc"!==C&&!S.mask&&(T=T[0],null!=T)){const e=S.width*S.height,t=new Uint8Array(e);if(Math.abs(T)>1e24)for(y=0;y<e;y++)Math.abs((S.pixels[0][y]-T)/T)>1e-6&&(t[y]=1);else for(y=0;y<e;y++)S.pixels[0][y]!==T&&(t[y]=1);S.mask=t}let A=0,R=0;if(u!==n||p!==a){let e=S.mask;if(e)for(y=0;y<a;y++)if(R=y*n,y<p)for(A=u;A<n;A++)e[R+A]=0;else for(A=0;A<n;A++)e[R+A]=0;else for(e=new Uint8Array(n*a),S.mask=e,y=0;y<p;y++)for(R=y*n,A=0;A<u;A++)e[R+A]=1}return S}async _open(e){this.datasetName=this.url.slice(this.url.lastIndexOf("/")+1);const t=e?e.signal:null,s=await this.request(this.url,{responseType:"xml",signal:t}),{rasterInfo:i,files:n}=this._parseHeader(s.data),{skipMapInfo:a,skipExtensions:r=[]}=this.ioConfig;if(!r.includes("aux.xml")&&!a){const t=await this._fetchAuxiliaryData(e);null!=t&&(i.statistics=t.statistics??i.statistics,i.histograms=t.histograms,t.histograms&&null==i.statistics&&(i.statistics=(0,S.Pg)(t.histograms)))}a&&this.updateImageSpaceRasterInfo(i),this._set("rasterInfo",i),this._files=n;const o=await this.request(n.index,{responseType:"array-buffer",signal:t});this._storageIndex=function(e){if(e.byteLength%16>0)throw new Error("invalid array buffer must be multiples of 16");let t;if(Q.Z){const s=new Uint8Array(e),i=new ArrayBuffer(e.byteLength),n=new Uint8Array(i);for(let t=0;t<e.byteLength/4;t++)for(let e=0;e<4;e++)n[4*t+e]=s[4*t+3-e];t=new Uint32Array(i)}else t=new Uint32Array(e);return t}(o.data);const{blockWidth:l,blockHeight:c}=this.rasterInfo.storageInfo,f=this.rasterInfo.storageInfo.pyramidScalingFactor,{width:u,height:h}=this.rasterInfo,p=[],d=this._getBandSegmentCount();let m=0,g=-1;for(;m<this._storageIndex.length;){g++;const e=Math.ceil(u/l/f**g)-1,t=Math.ceil(h/c/f**g)-1;m+=(e+1)*(t+1)*d*4,p.push({maxRow:t,maxCol:e,minCol:0,minRow:0})}this.rasterInfo.storageInfo.blockBoundary=p,g>0&&(this.rasterInfo.storageInfo.firstPyramidLevel=1,this.rasterInfo.storageInfo.maximumPyramidLevel=g),this.updateTileInfo()}_getBandSegmentCount(){return this._isBsq?this.rasterInfo.bandCount:1}_getTileLocation(e,t,s){const{blockWidth:i,blockHeight:n,pyramidScalingFactor:a}=this.rasterInfo.storageInfo,{width:r,height:o}=this.rasterInfo,l=this._getBandSegmentCount();let c,f,u,h=0,p=0;for(u=0;u<e;u++)p=a**u,c=Math.ceil(r/i/p),f=Math.ceil(o/n/p),h+=c*f;p=a**e,c=Math.ceil(r/i/p),f=Math.ceil(o/n/p),h+=t*c+s,h*=4*l;const d=this._storageIndex.subarray(h,h+4*l);let m=0,g=0;const y=[];for(let e=0;e<l;e++)m=d[4*e]*2**32+d[4*e+1],g=m+d[4*e+2]*2**32+d[4*e+3]-1,y.push({from:m,to:g});return{ranges:y,actualTileWidth:s<c-1?i:Math.ceil(r/p)-i*(c-1),actualTileHeight:t<f-1?n:Math.ceil(o/p)-n*(f-1)}}_parseHeader(e){const t=(0,B.V6)(e,"MRF_META/Raster");if(!t)throw new i.A("mrf:open","not a valid MRF format");const s=(0,B.V6)(t,"Size"),n=parseInt(s.getAttribute("x"),10),a=parseInt(s.getAttribute("y"),10),r=parseInt(s.getAttribute("c"),10),o=((0,B.mX)(t,"Compression")||"none").toLowerCase();if(!te.has(o))throw new i.A("mrf:open","currently does not support compression "+o);const f=(0,B.mX)(t,"DataType")||"UInt8",u=ee.get(f.toLowerCase());if(null==u)throw new i.A("mrf:open","currently does not support pixel type "+f);const h=(0,B.V6)(t,"PageSize"),p=parseInt(h.getAttribute("x"),10),d=parseInt(h.getAttribute("y"),10),m=h.getAttribute("c"),g=m?m===String(r):te.get(o).isOneSegment;this._isBsq=!g;const y=(0,B.V6)(t,"DataValues");let x;if(y){const e=y.getAttribute("NoData");null!=e&&(x=e.trim().split(" ").map(e=>parseFloat(e)))}if((0,B.V6)(e,"MRF_META/CachedSource"))throw new i.A("mrf:open","currently does not support MRF referencing other data files");const w=(0,B.V6)(e,"MRF_META/GeoTags"),I=(0,B.V6)(w,"BoundingBox");let b,v=!1;if(null!=I){const e=parseFloat(I.getAttribute("minx")),t=parseFloat(I.getAttribute("miny")),s=parseFloat(I.getAttribute("maxx")),i=parseFloat(I.getAttribute("maxy")),n=(0,B.mX)(w,"Projection")||"";let a=c.A.WGS84;if("LOCAL_CS[]"!==n)if(n.toLowerCase().startsWith("epsg:")){const e=Number(n.slice(5));isNaN(e)||0===e||(a=new c.A({wkid:e}))}else a=E(n)??c.A.WGS84;else v=!0,a=new c.A({wkid:3857});b=new l.A(e,t,s,i),b.spatialReference=a}else v=!0,b=new l.A({xmin:-.5,ymin:.5-a,xmax:n-.5,ymax:.5,spatialReference:new c.A({wkid:3857})});const C=(0,B.V6)(e,"MRF_META/Rsets"),S=parseInt(C?.getAttribute("scale")||"2",10),T=b.spatialReference,R=new W.A({origin:new j.A({x:b.xmin,y:b.ymax,spatialReference:T}),blockWidth:p,blockHeight:d,pyramidBlockWidth:p,pyramidBlockHeight:d,compression:o,pyramidScalingFactor:S}),M=new j.A({x:b.width/n,y:b.height/a,spatialReference:T}),O=new A.A({width:n,height:a,extent:b,isPseudoSpatialReference:v,spatialReference:T,bandCount:r,pixelType:u,pixelSize:M,noDataValue:x,storageInfo:R}),_=this._getAuxFullPath((0,B.mX)(t,"DataFile")),k=this._getAuxFullPath((0,B.mX)(t,"IndexFile"));return{rasterInfo:O,files:{mrf:this.url,index:k||this.url.replace(".mrf",".idx"),data:_||this.url.replace(".mrf",te.get(o).blobExtension)}}}_getAuxFullPath(e){return e?e.includes("\\")?null:e.includes("/")?e.startsWith(new URL(this.url).origin)?e:null:`${this.url.slice(0,this.url.lastIndexOf("/"))}/${e}`:null}async _fetchAuxiliaryData(e){try{const{data:t}=await this.request(this.url+".aux.xml",{responseType:"xml",signal:e?.signal});return z(t)}catch{return null}}};(0,n.Cg)([(0,a.MZ)()],se.prototype,"_files",void 0),(0,n.Cg)([(0,a.MZ)()],se.prototype,"_storageIndex",void 0),(0,n.Cg)([(0,a.MZ)()],se.prototype,"_isBsq",void 0),(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],se.prototype,"datasetFormat",void 0),se=(0,n.Cg)([(0,a.$K)("esri.layers.raster.datasets.MRFRaster")],se);const ie=se;s(44208);var ne=s(53966),ae=s(9334);function re(e){const t=e.fields,s=e.records,i=t.some(e=>"oid"===e.name.toLowerCase())?"OBJECTID":"OID",n=[{name:i,type:"esriFieldTypeOID",alias:"OID"}].concat(t.map(e=>({name:e.name,type:"esriFieldType"+e.typeName,alias:e.name}))),a=n.map(e=>e.name),r=[];let o=0,l=0;return s.forEach(e=>{const t={};for(t[i]=o++,l=1;l<a.length;l++)t[a[l]]=e[l-1];r.push({attributes:t})}),{displayFieldName:"",fields:n,features:r}}class oe{static get supportedVersions(){return[5]}static parse(e){const t=new DataView(e),s=3&t.getUint8(0);if(3!==s)return{header:{version:s},recordSet:null};const i=t.getUint32(4,!0),n=t.getUint16(8,!0),a=t.getUint16(10,!0),r={version:s,recordCount:i,headerByteCount:n,recordByteCount:a};let o=32;const l=[],c=[];let f;if(3===s){for(;13!==t.getUint8(o);)f=String.fromCharCode(t.getUint8(o+11)).trim(),l.push({name:(0,ae.w)(new Uint8Array(e,o,11)),type:f,typeName:["String","Date","Double","Boolean","String","Integer"][["C","D","F","L","M","N"].indexOf(f)],length:t.getUint8(o+16)}),o+=32;if(o+=1,l.length>0)for(;c.length<i&&e.byteLength-o>a;){const s=[];32===t.getUint8(o)?(o+=1,l.forEach(t=>{if("C"===t.type)s.push((0,ae.w)(new Uint8Array(e,o,t.length)).trim());else if("N"===t.type)s.push(parseInt(String.fromCharCode.apply(null,new Uint8Array(e,o,t.length)).trim(),10));else if("F"===t.type)s.push(parseFloat(String.fromCharCode.apply(null,new Uint8Array(e,o,t.length)).trim()));else if("D"===t.type){const i=String.fromCharCode.apply(null,new Uint8Array(e,o,t.length)).trim();s.push(new Date(parseInt(i.slice(0,4),10),parseInt(i.slice(4,6),10)-1,parseInt(i.slice(6,8),10)))}o+=t.length}),c.push(s)):o+=a}}return{header:r,fields:l,records:c,recordSet:re({fields:l,records:c})}}}var le=s(44094),ce=s(94213);let fe=class extends r.A{constructor(){super(...arguments),this._files=null,this._headerInfo=null,this._bufferSize=1048576,this._chunkSize=10485760,this.datasetFormat="TIFF"}async fetchRawTile(e,t,s,i={}){if(!this._headerInfo?.isSupported||this.isBlockOutside(e,t,s))return null;const n=await this._fetchRawTiffTile(e,t,s,!1,i);if(null!=n&&this._headerInfo.hasMaskBand){const a=await this._fetchRawTiffTile(e,t,s,!0,i);null!=a&&a.pixels[0]instanceof Uint8Array&&(n.mask=a.pixels[0])}return n}async _open(e){const t=e?e.signal:null,{data:s}=await this.request(this.url,{range:{from:0,to:this._bufferSize},responseType:"array-buffer",signal:t});if(!s)throw new i.A("tiffraster:open","failed to open url "+this.url);this.datasetName=this.url.slice(this.url.lastIndexOf("/")+1,this.url.lastIndexOf("."));const{littleEndian:n,firstIFDPos:a,isBigTiff:r}=(0,le.uT)(s),o=[],f={fileChunk:s,posIFD:a,fileOffset:0};await this._readIFDs(o,f,n,r?8:4,t);const{imageInfo:u,rasterInfo:h}=function(e){const t=(0,le.uc)(e),{width:s,height:i,tileWidth:n,tileHeight:a,planes:r,pixelType:o,compression:f,firstPyramidLevel:u,maximumPyramidLevel:h,pyramidBlockWidth:p,pyramidBlockHeight:d,pyramidResolutions:m,tileBoundary:g,affine:y,metadata:x,colormap:w}=t;let I=E(t.extent.spatialReference?.wkt||t.extent.spatialReference?.wkid),b=!!t.isPseudoGeographic;null==I&&(b=!0,I=new c.A({wkid:3857}));const v=new l.A({...t.extent,spatialReference:I}),C=new j.A(v?{x:v.xmin,y:v.ymax,spatialReference:I}:{x:0,y:0}),S=new W.A({blockWidth:n,blockHeight:a,pyramidBlockWidth:p,pyramidBlockHeight:d,compression:f,origin:C,firstPyramidLevel:u,maximumPyramidLevel:h,pyramidResolutions:m,blockBoundary:g}),T=new j.A({x:(v.xmax-v.xmin)/s,y:(v.ymax-v.ymin)/i,spatialReference:I}),R=x?{BandProperties:x.bandProperties,DataType:x.dataType}:{},M=new A.A({width:s,height:i,bandCount:r,pixelType:o,pixelSize:T,storageInfo:S,spatialReference:I,isPseudoSpatialReference:b,keyProperties:R,extent:v,colormap:w,statistics:x?x.statistics:null});if(y?.length&&(M.nativeExtent=new l.A({xmin:-.5,ymin:.5-i,xmax:s-.5,ymax:.5,spatialReference:I}),M.transform=new D.A({polynomialOrder:1,forwardCoefficients:[y[2]+y[0]/2,y[5]-y[3]/2,y[0],y[3],-y[1],-y[4]]}),M.extent=M.transform.forwardTransform(M.nativeExtent),M.pixelSize=new j.A({x:(v.xmax-v.xmin)/s,y:(v.ymax-v.ymin)/i,spatialReference:I}),S.origin.x=-.5,S.origin.y=.5),m){const{x:e,y:t}=M.pixelSize;m.forEach(s=>{s.x*=e,s.y*=t})}return{imageInfo:t,rasterInfo:M}}(o),p=(0,le.zS)(o),d=(0,le.r9)(o);if(this._headerInfo={littleEndian:n,isBigTiff:r,ifds:o,pyramidIFDs:p,maskIFDs:d,...u},this._set("rasterInfo",h),!u.isSupported)throw new i.A("tiffraster:open","this tiff is not supported: "+u.message);if(!u.tileWidth)throw new i.A("tiffraster:open","none-tiled tiff is not optimized for access, convert to COG and retry.");h.isPseudoSpatialReference&&ne.A.getLogger(this).warn("The spatial reference for this tiff is unsupported. Only EPSG spatial reference codes and Esri WKTs are supported.");const m=o[0].get("PREDICTOR")?.values?.[0],g=o[0].get("SAMPLEFORMAT")?.values?.[0];if(3===g&&2===m)throw new i.A("tiffraster:open","unsupported horizontal difference encoding. Predictor=3 is supported for floating point data");const{skipMapInfo:y,skipExtensions:x=[]}=this.ioConfig;if(!x.includes("aux.xml")&&!y){const t=await this._fetchAuxiliaryMetaData(e);null!=t&&function(e,t){if(t.statistics=e.statistics??t.statistics,t.histograms=e.histograms,e.histograms&&null==t.statistics&&(t.statistics=(0,S.Pg)(e.histograms)),e.transform&&null==t.transform){t.transform=e.transform,t.nativeExtent=t.extent;const s=t.transform.forwardTransform(t.nativeExtent);t.pixelSize=new j.A({x:(s.xmax-s.xmin)/t.width,y:(s.ymax-s.ymin)/t.height,spatialReference:t.spatialReference}),t.extent=s}t.isPseudoSpatialReference&&e.spatialReference&&(t.spatialReference=e.spatialReference,t.extent.spatialReference=t.nativeExtent.spatialReference=t.storageInfo.origin.spatialReference=t.spatialReference)}(t,h)}x.includes("vat.dbf")||1!==h.bandCount||"u8"!==h.pixelType||y||(h.attributeTable=await this._fetchAuxiliaryTable(e),null!=h.attributeTable&&(h.keyProperties.DataType="thematic")),y&&this.updateImageSpaceRasterInfo(h),this.updateTileInfo()}async _validateOrFetchHeaderBuffer(e,t){let{fileChunk:s,fileOffset:i,posIFD:n}=e;return(n+8>=s.byteLength||n<0)&&(i=n+i,s=(await this.request(this.url,{range:{from:i,to:i+this._bufferSize},responseType:"array-buffer",signal:t})).data,n=0),{fileChunk:s,fileOffset:i,posIFD:n}}async _readIFDs(e,t,s,n=4,a){if(!t.posIFD)return null;t=await this._validateOrFetchHeaderBuffer(t,a);const r=await this._readIFD(t,s,ce.NB,n,a);if(!r?.ifd)throw new i.A("tiffraster:open","cannot parse tiff header. failed to open url "+this.url);if(e.push(r.ifd),!r.nextIFD)return null;t.posIFD=r.nextIFD-t.fileOffset,await this._readIFDs(e,t,s,n,a)}async _readIFD(e,t,s=ce.NB,i=4,n){let{fileChunk:a,posIFD:r,fileOffset:o}=e;if(!e.fileChunk)return null;const l=(0,le.JM)(a,t,r,o,s,i);if(l.success){const e=[];if(l.ifd?.forEach(t=>{t.values||e.push(t)}),e.length>0&&await this._fillOffsets(e,t,l.nextIFD,n),l.ifd?.has("GEOKEYDIRECTORY")){const e=l.ifd.get("GEOKEYDIRECTORY"),s=e?.values;if(s&&s.length>4){const i=s[0]+"."+s[1]+"."+s[2];r=e.valueOffset+6-o;const l=await this._validateOrFetchHeaderBuffer({fileChunk:a,posIFD:r,fileOffset:o},n),c=await this._readIFD(l,t,ce.YC,2,n);e.data=c?.ifd,e.data&&e.data.set("GEOTIFFVersion",{id:0,type:2,valueCount:1,valueOffset:null,values:[i]})}}return l}return l.requiredBufferSize?(a=(await this.request(this.url,{range:{from:o,to:o+r+l.requiredBufferSize+8},responseType:"array-buffer",signal:n})).data,a.byteLength<r+l.requiredBufferSize?null:(e.fileChunk=a,e.fileOffset=o,this._readIFD(e,t,s,i,n))):null}async _fillOffsets(e,t,s,i){const n=e.filter(e=>null!=e.offlineOffsetSize);if(0===n.length)return;const a=n.map(e=>e.offlineOffsetSize),r=Math.min.apply(null,a.map(e=>e[0])),o=Math.max.apply(null,a.map(e=>e[0]+e[1]));let l=1===a.length||o-r<=this._bufferSize;if(!l&&a.length>1&&(a.sort((e,t)=>e[0]-t[0]),l=a.reduce((e,t)=>e===t[0]?t[0]+t[1]:0,a[0][0])===o),l){const e=await this._fetchOffsets(r,Math.max(o,r+this._bufferSize),i);return void n.forEach(s=>(0,le.Cr)(e,t,s,r))}const c=n.map(async e=>{const s=e.offlineOffsetSize,n=await this._fetchOffsets(s[0],s[1]+s[0],i);(0,le.Cr)(n,t,e,s[0])});await Promise.all(c)}async _fetchOffsets(e,t,s){const i=[],n=this._chunkSize,a=Math.ceil((t-e)/n);let r=e;for(let e=0;e<a;e++)i.push(this.request(this.url,{range:{from:r,to:e===a-1?t:r+n-1},responseType:"array-buffer",signal:s})),r+=n;const o=await Promise.all(i);if(1===a)return o[0].data;const l=new Uint8Array(t-e+1);for(let e=0;e<a;e++)l.set(new Uint8Array(o[e].data),e*n);return l.buffer}async _fetchRawTiffTile(e,t,s,i,n={}){const a=this._getTileLocation(e,t,s,i);if(!a)return null;const{ranges:r,actualTileWidth:o,actualTileHeight:l,ifd:c}=a,f=r.map(e=>this.request(this.url,{range:e,responseType:"array-buffer",signal:n.signal})),u=await Promise.all(f),h=u.map(e=>e.data.byteLength).reduce((e,t)=>e+t),p=1===u.length?u[0].data:new ArrayBuffer(h),d=[0],m=[0];if(u.length>1){const e=new Uint8Array(p);for(let t=0,s=0;t<u.length;t++){const i=u[t].data;e.set(new Uint8Array(i),s),d[t]=s,s+=i.byteLength,m[t]=i.byteLength}}const{blockWidth:g,blockHeight:y}=this.getBlockWidthHeight(e),x=await this.decodePixelBlock(p,{format:"tiff",customOptions:{headerInfo:this._headerInfo,ifd:c,offsets:d,sizes:m},width:g,height:y,planes:null,pixelType:null});if(null==x)return null;if(o!==g||l!==y){let e=x.mask;if(e)for(let t=0;t<y;t++){const s=t*g;if(t<l)for(let t=o;t<g;t++)e[s+t]=0;else for(let t=0;t<g;t++)e[s+t]=0}else{e=new Uint8Array(g*y),x.mask=e;for(let t=0;t<l;t++){const s=t*g;for(let t=0;t<o;t++)e[s+t]=1}}}return x}_getTileLocation(e,t,s,i=!1){const{firstPyramidLevel:n,blockBoundary:a}=this.rasterInfo.storageInfo,r=0===e?0:e-(n-1),{_headerInfo:o}=this;if(!o)return null;const l=i?o.maskIFDs[r]:0===r?o.ifds[0]:o.pyramidIFDs[r-1];if(!l)return null;const c=(0,le.XO)(l,o),f=(0,le.wc)(l,"TILEOFFSETS"),u=(0,le.wc)(l,"TILEBYTECOUNTS");if(!f?.length||!u?.length)return null;const{minRow:h,minCol:p,maxRow:d,maxCol:m}=a[r];if(t>d||s>m||t<h||s<p)return null;const g=(0,le.LZ)(l,"IMAGEWIDTH"),y=(0,le.LZ)(l,"IMAGELENGTH"),x=(0,le.LZ)(l,"TILEWIDTH"),w=(0,le.LZ)(l,"TILELENGTH"),I=[];if(c){const{bandCount:e}=this.rasterInfo;for(let i=0;i<e;i++){const e=i*(d+1)*(m+1)+t*(m+1)+s;I[i]={from:f[e],to:f[e]+u[e]-1}}}else{const e=t*(m+1)+s;I.push({from:f[e],to:f[e]+u[e]-1})}for(let e=0;e<I.length;e++)if(null==I[e].from||!I[e].to||I[e].to<0)return null;return{ranges:I,ifd:l,actualTileWidth:s===m&&g%x||x,actualTileHeight:t===d&&y%w||w}}async _fetchAuxiliaryMetaData(e){try{const{data:t}=await this.request(this.url+".aux.xml",{responseType:"xml",signal:e?.signal});return z(t)}catch{return null}}async _fetchAuxiliaryTable(e){try{const{data:t}=await this.request(this.url+".vat.dbf",{responseType:"array-buffer",signal:e?.signal}),s=oe.parse(t);return s?.recordSet?O.A.fromJSON(s.recordSet):null}catch{return null}}};(0,n.Cg)([(0,a.MZ)()],fe.prototype,"_files",void 0),(0,n.Cg)([(0,a.MZ)()],fe.prototype,"_headerInfo",void 0),(0,n.Cg)([(0,a.MZ)()],fe.prototype,"_bufferSize",void 0),(0,n.Cg)([(0,a.MZ)()],fe.prototype,"_chunkSize",void 0),(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],fe.prototype,"datasetFormat",void 0),fe=(0,n.Cg)([(0,a.$K)("esri.layers.raster.datasets.TIFFRaster")],fe);const ue=fe,he=new Map;he.set("MRF",{desc:"Meta Raster Format",constructor:ie}),he.set("TIFF",{desc:"GeoTIFF",constructor:ue}),he.set("RasterTileServer",{desc:"Raster Tile Server",constructor:K}),he.set("JPG",{desc:"JPG Raster Format",constructor:U}),he.set("PNG",{desc:"PNG Raster Format",constructor:U}),he.set("GIF",{desc:"GIF Raster Format",constructor:U}),he.set("BMP",{desc:"BMP Raster Format",constructor:U}),he.set("CovJSON",{desc:"COVJSON Raster Format",constructor:k}),he.set("MEMORY",{desc:"In Memory Raster Format",constructor:M});class pe{static get supportedFormats(){const e=new Set;return he.forEach((t,s)=>e.add(s)),e}static async open(e){const{url:t,ioConfig:s,source:n,sourceJSON:a}=e;let r=e.datasetFormat??s?.datasetFormat;null==r&&(t.includes(".")?r=t.slice(t.lastIndexOf(".")+1).toUpperCase():"coverage"===n?.type?.toLowerCase()?r="CovJSON":n?.extent&&n.pixelblocks&&(r="MEMORY")),"OVR"===r||"TIF"===r?r="TIFF":"JPG"===r||"JPEG"===r||"JFIF"===r?r="JPG":"COVJSON"===r&&(r="CovJSON"),t.toLowerCase().includes("/imageserver")&&!t.toLowerCase().includes("/wcsserver")&&(r="RasterTileServer");const o={url:t,source:n,sourceJSON:a,datasetFormat:r,ioConfig:s??{bandIds:null,sampling:null}};if(Object.keys(o).forEach(e=>{null==o[e]&&delete o[e]}),r){if(!this.supportedFormats.has(r))throw new i.A("rasterfactory:open","not a supported format "+r);if("CRF"===r)throw new i.A("rasterfactory:open",`cannot open raster: ${t}`);const s=new(0,he.get(r).constructor)(o);return s.rasterJobHandler=e.rasterJobHandler,await s.open({signal:e.signal}),s}const l=Array.from(he.keys()).filter(e=>"CovJSON"!==e&&"Memory"!==e);let c=0;const f=()=>{if(r=l[c++],!r)return null;if("CRF"===r)return null;const t=new(0,he.get(r).constructor)(o);return t.rasterJobHandler=e.rasterJobHandler,t.open({signal:e.signal}).then(()=>t).catch(()=>f())};return f()}static register(e,t,s){he.has(e.toUpperCase())||he.set(e.toUpperCase(),{desc:t,constructor:s})}}},10333(e,t,s){s.d(t,{A:()=>r});var i=s(5482),n=s(25482),a=s(91429);let r=class extends n.o{get affectsPixelSize(){return!1}forwardTransform(e){return e}inverseTransform(e){return e}};(0,i.Cg)([(0,a.MZ)()],r.prototype,"affectsPixelSize",null),(0,i.Cg)([(0,a.MZ)({json:{write:!0}})],r.prototype,"spatialReference",void 0),r=(0,i.Cg)([(0,a.$K)("esri.layers.raster.transforms.BaseRasterTransform")],r)},75414(e,t,s){s.d(t,{A:()=>l});var i,n=s(5482),a=s(91429),r=s(10333),o=s(93223);let l=i=class extends r.A{constructor(){super(...arguments),this.type="gcs-shift",this.tolerance=1e-8}forwardTransform(e){return"point"===(e=e.clone()).type?(e.x>180+this.tolerance&&(e.x-=360),e):(e.xmin>=180-this.tolerance?(e.xmax-=360,e.xmin-=360):e.xmax>180+this.tolerance&&(e.xmin=-180,e.xmax=180),e)}inverseTransform(e){return"point"===(e=e.clone()).type?(e.x<-this.tolerance&&(e.x+=360),e):(e.xmin<-this.tolerance&&(e.xmin+=360,e.xmax+=360),e)}clone(){return new i({tolerance:this.tolerance})}};(0,n.Cg)([(0,o.e)({GCSShiftXform:"gcs-shift"})],l.prototype,"type",void 0),(0,n.Cg)([(0,a.MZ)()],l.prototype,"tolerance",void 0),l=i=(0,n.Cg)([(0,a.$K)("esri.layers.raster.transforms.GCSShiftTransform")],l)},43163(e,t,s){s.d(t,{A:()=>d});var i,n=s(5482),a=s(91429),r=s(5443),o=s(86738),l=s(10333),c=s(36005),f=s(43937),u=s(93223);function h(e,t,s){const{x:i,y:n}=t;if(s<2)return{x:e[0]+i*e[2]+n*e[4],y:e[1]+i*e[3]+n*e[5]};if(2===s){const t=i*i,s=n*n,a=i*n;return{x:e[0]+i*e[2]+n*e[4]+t*e[6]+a*e[8]+s*e[10],y:e[1]+i*e[3]+n*e[5]+t*e[7]+a*e[9]+s*e[11]}}const a=i*i,r=n*n,o=i*n,l=a*i,c=a*n,f=i*r,u=n*r;return{x:e[0]+i*e[2]+n*e[4]+a*e[6]+o*e[8]+r*e[10]+l*e[12]+c*e[14]+f*e[16]+u*e[18],y:e[1]+i*e[3]+n*e[5]+a*e[7]+o*e[9]+r*e[11]+l*e[13]+c*e[15]+f*e[17]+u*e[19]}}function p(e,t,s){const{xmin:i,ymin:n,xmax:a,ymax:o,spatialReference:l}=t;let c=[];if(s<2)c.push({x:i,y:o}),c.push({x:a,y:o}),c.push({x:i,y:n}),c.push({x:a,y:n});else{let e=10;for(let t=0;t<e;t++)c.push({x:i,y:n+(o-n)*t/(e-1)}),c.push({x:a,y:n+(o-n)*t/(e-1)});e=8;for(let t=1;t<=e;t++)c.push({x:i+(a-i)*t/e,y:n}),c.push({x:i+(a-i)*t/e,y:o})}c=c.map(t=>h(e,t,s));const f=c.map(e=>e.x),u=c.map(e=>e.y);return new r.A({xmin:Math.min.apply(null,f),xmax:Math.max.apply(null,f),ymin:Math.min.apply(null,u),ymax:Math.max.apply(null,u),spatialReference:l})}let d=i=class extends l.A{constructor(){super(...arguments),this.polynomialOrder=1,this.type="polynomial"}readForwardCoefficients(e,t){const{coeffX:s,coeffY:i}=t;if(!s?.length||!i?.length||s.length!==i.length)return null;const n=[];for(let e=0;e<s.length;e++)n.push(s[e]),n.push(i[e]);return n}writeForwardCoefficients(e,t,s){const i=[],n=[];for(let t=0;t<e?.length;t++)t%2==0?i.push(e[t]):n.push(e[t]);t.coeffX=i,t.coeffY=n}get inverseCoefficients(){let e=this._get("inverseCoefficients");const t=this._get("forwardCoefficients");return!e&&t&&this.polynomialOrder<2&&(e=function(e){const[t,s,i,n,a,r]=e,o=i*r-a*n,l=a*n-i*r;return[(a*s-t*r)/o,(i*s-t*n)/l,r/o,n/l,-a/o,-i/l]}(t)),e}set inverseCoefficients(e){this._set("inverseCoefficients",e)}readInverseCoefficients(e,t){const{inverseCoeffX:s,inverseCoeffY:i}=t;if(!s?.length||!i?.length||s.length!==i.length)return null;const n=[];for(let e=0;e<s.length;e++)n.push(s[e]),n.push(i[e]);return n}writeInverseCoefficients(e,t,s){const i=[],n=[];for(let t=0;t<e?.length;t++)t%2==0?i.push(e[t]):n.push(e[t]);t.inverseCoeffX=i,t.inverseCoeffY=n}get affectsPixelSize(){return this.polynomialOrder>0}forwardTransform(e){if("point"===e.type){const t=h(this.forwardCoefficients,e,this.polynomialOrder);return new o.A({x:t.x,y:t.y,spatialReference:e.spatialReference})}return p(this.forwardCoefficients,e,this.polynomialOrder)}inverseTransform(e){if("point"===e.type){const t=h(this.inverseCoefficients,e,this.polynomialOrder);return new o.A({x:t.x,y:t.y,spatialReference:e.spatialReference})}return p(this.inverseCoefficients,e,this.polynomialOrder)}clone(){return new i({polynomialOrder:this.polynomialOrder,forwardCoefficients:this.forwardCoefficients?[...this.forwardCoefficients]:null,inverseCoefficients:this.inverseCoefficients?[...this.inverseCoefficients]:null})}};(0,n.Cg)([(0,a.MZ)({json:{write:!0}})],d.prototype,"polynomialOrder",void 0),(0,n.Cg)([(0,a.MZ)()],d.prototype,"forwardCoefficients",void 0),(0,n.Cg)([(0,c.w)("forwardCoefficients",["coeffX","coeffY"])],d.prototype,"readForwardCoefficients",null),(0,n.Cg)([(0,f.K)("forwardCoefficients")],d.prototype,"writeForwardCoefficients",null),(0,n.Cg)([(0,a.MZ)({json:{write:!0}})],d.prototype,"inverseCoefficients",null),(0,n.Cg)([(0,c.w)("inverseCoefficients",["inverseCoeffX","inverseCoeffY"])],d.prototype,"readInverseCoefficients",null),(0,n.Cg)([(0,f.K)("inverseCoefficients")],d.prototype,"writeInverseCoefficients",null),(0,n.Cg)([(0,a.MZ)()],d.prototype,"affectsPixelSize",null),(0,n.Cg)([(0,u.e)({PolynomialXform:"polynomial"})],d.prototype,"type",void 0),d=i=(0,n.Cg)([(0,a.$K)("esri.layers.raster.transforms.PolynomialTransform")],d)}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[124,7870,9397],{69397(e,t,i){i.d(t,{Qf:()=>l,Qh:()=>o,RS:()=>s,Ul:()=>d,i5:()=>p,lM:()=>n,qK:()=>h});var r=i(34275);const s=16;function n(e){if(!e)return 0;let t=h;for(const i in e)e.hasOwnProperty(i)&&(t+=a(e[i],!1));return t}function o(e){if(!e)return 0;if("number"==typeof e[0])return l(e);if(Array.isArray(e))return function(e){const t=e.length;if(0===t||"number"==typeof e[0])return c(e,8);let i=u;for(let r=0;r<t;r++)i+=a(e[r]);return i}(e);let t=h;for(const i in e)e.hasOwnProperty(i)&&(t+=a(e[i]));return t}function a(e,t=!0){switch(typeof e){case"object":return t?o(e):h;case"string":return function(e){return 32+e.length}(e);case"number":return s;case"boolean":return 4;default:return 8}}function l(...e){return e.reduce((e,t)=>e+(t?(0,r.iu)(t)?t.byteLength+p:Array.isArray(t)?c(t,s):0:0),0)}function c(e,t){return u+e.length*t}const h=32,u=16,p=145,d=64},5359(e,t,i){i.d(t,{H:()=>r,Z:()=>s});const r=Symbol("isImageryTileGraphicOrigin");function s(e){return!!e&&r in e}},90124(e,t,i){i.r(t),i.d(t,{default:()=>K});var r,s=i(5482),n=i(37838),o=i(69540),a=i(49186),l=i(53966),c=i(97768),h=i(25728),u=i(17676),p=i(36708),d=i(91429),f=i(56507),m=i(60950),g=i(89808),y=i(99959),v=i(5359);class w extends y.A{get[(r=v.H,m.ym)](){return this.layer}get[g.Q](){return this.layer}constructor(e){super(),this[r]=!0,this.type="imagery-tile",this.layer=e}get id(){return this.layer.id}}var b=i(4146),_=i(18768),A=i(63074),C=i(69208),R=i(34287),M=i(8303),S=i(72545),O=i(56551),x=i(54310),T=i(25036),I=i(82935),P=i(82806),z=i(7548),F=i(23636),N=i(1003),Z=i(99235),D=i(10873),L=i(20437),j=i(74797),J=i(22796),$=i(69409);const V={instance:null,refCount:0,connectionPromise:null};async function E(){if(V.refCount++,V.instance)return V.instance;if(!V.connectionPromise){const e=new $.A;V.connectionPromise=e.initialize().then(()=>{V.instance=e})}return await V.connectionPromise,V.instance}function k(){V.refCount--,V.refCount>0||(V.instance?.destroy(),V.instance=null,V.connectionPromise=null,V.refCount=0)}var q=i(87045),U=i(24212),W=i(30291),H=i(88625),G=i(59923);let B=class extends((0,A.dM)((0,T.j)((0,R.q)((0,M.A)((0,O.H)((0,C.d)((0,P.b)((0,S.G)((0,I.e)((0,_.b)((0,x.J)((0,h.M)((0,o.OU)(b.A)))))))))))))){constructor(...e){super(...e),this._primaryRasters=[],this.charts=null,this.graphicOrigin=new w(this),this.legendEnabled=!0,this.isReference=null,this.listMode="show",this.sourceJSON=null,this.version=null,this.type="imagery-tile",this.operationalLayerType="ArcGISTiledImageServiceLayer",this.popupEnabled=!0,this.popupTemplate=null,this.screenSizePerspectiveEnabled=!0,this.fields=null,this.source=void 0,this._debouncedSaveOperations=(0,u.sg)(async(e,t,r)=>{const{save:s,saveAs:n}=await i.e(9838).then(i.bind(i,59838));switch(e){case 0:return s(this,t);case 1:return n(this,r,t)}})}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}load(e){const t=null!=e?e.signal:null;return this.addResolvingPromise(this.loadFromPortal({supportedTypes:["Image Service"]},e).catch(u.QP).then(()=>this._openRaster(t))),Promise.resolve(this)}destroy(){super.destroy(),this._releaseWorkerHandle=(0,c.xt)(this._releaseWorkerHandle)}set elevationInfo(e){"relative-to-scene"!==e?.mode&&this._set("elevationInfo",e),this._validateElevationInfo(e)}get defaultPopupTemplate(){return this.createPopupTemplate()}get rasterFields(){const e=[(0,j.rZ)("Pixel Value"),(0,j.dy)("Raw Pixel Value")],t=this.raster?.rasterInfo??this.serviceRasterInfo,i=t?.attributeTable;if(i){const t=(0,j.jC)(i);e.push(...t)}const r=t?.dataType,s=t?.multidimensionalInfo;if(("vector-magdir"===r||"vector-uv"===r)&&null!=s){const t=s.variables[0].unit?.trim(),i=(0,j.DV)(t),r=(0,j.y6)();e.push(i,r)}if(s){const t=(0,j.AL)(s);e.push(...t)}return e}get renderer(){return super.renderer}set renderer(e){super.renderer=e}createPopupTemplate(e){const{rasterFields:t}=this,i=e?.visibleFieldNames??new Set(t.map(({name:e})=>e).filter(e=>e!==j.F_.rawServicePixelValue)),r=(0,W.tn)({fields:t,title:this.title},{...e,visibleFieldNames:i}),{rasterInfo:s}=this.raster;return r?.fieldInfos&&s&&(0,j.h4)(r.fieldInfos,s),r}async generateRasterInfo(e,t){const i=(0,f.PZ)(J.A,e);if(await this.load(),!i||"none"===i.functionName?.toLowerCase())return this.serviceRasterInfo;try{const{rasterInfo:e}=await this._openFunctionRaster(i,t);return e}catch(e){if(e instanceof a.A)throw e;throw new a.A("imagery-tile-layer","the given raster function is not supported")}}async save(e){return this._debouncedSaveOperations(0,e)}async saveAs(e,t){return this._debouncedSaveOperations(1,t,e)}supportsExportMapTiles(){const e=this._primaryRasters[0]??this.raster,t="RasterTileServer"===e?.datasetFormat,i=!!this.sourceJSON?.exportTilesAllowed,r=this.sourceJSON?.datasetFormat?.toLowerCase(),s=!/\/tiledimageservices[^.]*\.arcgis\.com/i.test(this.url)&&"Raster"===e?.tileType&&("cache/jpegplus"===r||"cache/jpegpng"===r);return t&&i&&("Map"===e?.tileType||s)}supportsWrite(){const e=this._primaryRasters[0]??this.raster;return!!(this.loaded?"RasterTileServer"===e.datasetFormat&&("Raster"===e.tileType||"Map"===e.tileType):this.url&&/\/ImageServer(\/|\/?$)/i.test(this.url))}write(e,t){return this.supportsWrite()?super.write(e,t):((0,G.U4)(t,this),null)}async hasDataChanged(){try{const e=this._primaryRasters[0]??this.raster,{dataChanged:t,updates:i}=await e.refresh();return t&&(this.serviceRasterInfo!==e.rasterInfo&&this._set("serviceRasterInfo",e.rasterInfo),e.sourceJSON&&this.sourceJSON!==e.sourceJSON&&(this.sourceJSON=e.sourceJSON),i&&this.read(i,{origin:"service",url:this.parsedUrl,ignoreDefaults:!0})),t}catch{return!1}}async _openRaster(e){let t=!1;if(this.raster)await this._openFromRaster(this.raster,e),t=(0,z.qg)(this.raster),!t&&this.rasterFunction&&(this._primaryRasters=[this.raster],await this._initializeWithFunctionRaster(this.rasterFunction));else{const{url:t,rasterFunction:i,source:r}=this;if(!t&&!r)throw new a.A("imagery-tile-layer:open","missing url or source parameter");r?await this._openFromSource(r,e):i?await this._openFromUrlWithRasterFunction(t,i,e):await this._openFromUrl(t,e)}const i=this.raster.rasterInfo;if(!i)throw new a.A("imagery-tile-layer:load","cannot load resources on "+this.url);if(this._set("serviceRasterInfo",t?i:this._primaryRasters[0].rasterInfo),this._set("spatialReference",i.spatialReference),this.sourceJSON=this.sourceJSON||this.raster.sourceJSON,null!=this.sourceJSON){const e="Map"===this.raster.tileType&&null!=this.sourceJSON.minLOD&&null!=this.sourceJSON.maxLOD?this.sourceJSON:{...this.sourceJSON,minScale:0,maxScale:0};this.read(e,{origin:"service"})}else this.read({tileInfo:this.serviceRasterInfo?.storageInfo.tileInfo.toJSON()},{origin:"service"});this.title||(this.title=this.raster.datasetName),"Map"===this.raster.tileType&&(this.popupEnabled=!1),this._configDefaultSettings(),this.addHandles((0,p.wB)(()=>this.customParameters,e=>{this.raster&&(this.raster.ioConfig.customFetchParameters=e)}))}async _openFromRaster(e,t){e.rasterInfo||await e.open({signal:t}),this._primaryRasters=(0,z.pb)(e),this.url||(this.url=this._primaryRasters[0].url)}async _openFromUrlWithRasterFunction(e,t,i){const r=[e];let s;t&&(0,Z.UD)(t.toJSON(),r),r.some(e=>Q(e))&&(s=await E(),this._releaseWorkerHandle={remove:()=>k()});const n=await Promise.all(r.map(e=>N.default.open({url:e,sourceJSON:this.sourceJSON,ioConfig:{sampling:"closest",...this.ioConfig,customFetchParameters:this.customParameters},rasterJobHandler:s,signal:i}))),o=n.findIndex(e=>null==e);if(o>-1)throw new a.A("imagery-tile-layer:open",`cannot open raster: ${r[o]}`);return this._primaryRasters=n,this._initializeWithFunctionRaster(t)}async _openFromUrl(e,t){let i;Q(e)&&(i=await E(),this._releaseWorkerHandle={remove:()=>k()});const r=await N.default.open({url:e,sourceJSON:this.sourceJSON,ioConfig:{sampling:"closest",...this.ioConfig,customFetchParameters:this.customParameters},rasterJobHandler:i,signal:t});if(null==r)throw new a.A("imagery-tile-layer:open",`cannot open raster: ${e}`);this._primaryRasters=[r],this.raster=r}async _openFromSource(e,t){const i="the tiled imagery data source is not supported",r="coverage"===e.type?.toLowerCase()?"CovJSON":e.extent&&e.pixelBlock?"MEMORY":null;if(!r)throw new a.A("imagery-tile-layer:open",i);"MEMORY"===r&&(e={...e,pixelBlock:void 0,pixelBlocks:[e.pixelBlock]});const s=await N.default.open({url:"",source:e,datasetFormat:r,ioConfig:{sampling:"closest",...this.ioConfig,customFetchParameters:this.customParameters},signal:t});if(null==s)throw new a.A("imagery-tile-layer:open",i);this._primaryRasters=[s],this.rasterFunction?await this._initializeWithFunctionRaster(this.rasterFunction):this.raster=s}async _openFunctionRaster(e,t){const i={raster:this._primaryRasters[0]};this._primaryRasters.length>1&&this._primaryRasters.forEach(e=>i[e.url]=e);const r=(0,Z.vt)(e.functionDefinition?.toJSON()??e.toJSON(),i),s=new F.A({rasterFunction:r});return await s.open(t),s}async _initializeWithFunctionRaster(e,t){try{this.raster=await this._openFunctionRaster(e,t)}catch(e){e instanceof a.A&&l.A.getLogger(this).error("imagery-tile-layer:open",e.message),l.A.getLogger(this).warn("imagery-tile-layer:open","the raster function cannot be applied and is removed"),this._set("rasterFunction",null),this.raster=this._primaryRasters[0]}}_validateElevationInfo(e){(0,U.XF)(l.A.getLogger(this),(0,U.$7)("ImageryTile layers","relative-to-scene",e)),(0,U.XF)(l.A.getLogger(this),(0,U.tW)("ImageryTile layers",e))}};(0,s.Cg)([(0,d.MZ)({clonable:!1})],B.prototype,"_primaryRasters",void 0),(0,s.Cg)([(0,d.MZ)({clonable:!1})],B.prototype,"_releaseWorkerHandle",void 0),(0,s.Cg)([(0,d.MZ)({json:{origins:{"web-scene":{write:!1}},write:!0}})],B.prototype,"charts",void 0),(0,s.Cg)([(0,d.MZ)({type:H.A,value:null,json:{name:"layerDefinition.elevationInfo",write:!0,origins:{"portal-item":{read:!1,write:!1},"web-map":{read:!1,write:!1}}}})],B.prototype,"elevationInfo",null),(0,s.Cg)([(0,d.MZ)({type:q.A})],B.prototype,"tileInfo",void 0),(0,s.Cg)([(0,d.MZ)({readOnly:!0,clonable:!1})],B.prototype,"graphicOrigin",void 0),(0,s.Cg)([(0,d.MZ)(D.fV)],B.prototype,"legendEnabled",void 0),(0,s.Cg)([(0,d.MZ)({type:Boolean,json:{read:!1,write:{enabled:!0,overridePolicy:()=>({enabled:!1})}}})],B.prototype,"isReference",void 0),(0,s.Cg)([(0,d.MZ)({type:["show","hide"]})],B.prototype,"listMode",void 0),(0,s.Cg)([(0,d.MZ)({json:{read:!0,write:!0}})],B.prototype,"blendMode",void 0),(0,s.Cg)([(0,d.MZ)({type:J.A,json:{name:"renderingRule",write:!0}})],B.prototype,"rasterFunction",void 0),(0,s.Cg)([(0,d.MZ)()],B.prototype,"sourceJSON",void 0),(0,s.Cg)([(0,d.MZ)({readOnly:!0,json:{origins:{service:{read:{source:"currentVersion"}}}}})],B.prototype,"version",void 0),(0,s.Cg)([(0,d.MZ)({readOnly:!0,json:{read:!1}})],B.prototype,"type",void 0),(0,s.Cg)([(0,d.MZ)({type:["ArcGISTiledImageServiceLayer"]})],B.prototype,"operationalLayerType",void 0),(0,s.Cg)([(0,d.MZ)({type:Boolean,value:!0,json:{read:{source:"disablePopup",reader:(e,t)=>!t.disablePopup},write:{target:"disablePopup",overridePolicy(){return{enabled:!this.loaded||"Raster"===this.raster.tileType}},writer(e,t,i){t[i]=!e}}}})],B.prototype,"popupEnabled",void 0),(0,s.Cg)([(0,d.MZ)({type:n.A,json:{read:{source:"popupInfo"},write:{target:"popupInfo",overridePolicy(){return{enabled:!this.loaded||"Raster"===this.raster.tileType}}}}})],B.prototype,"popupTemplate",void 0),(0,s.Cg)([(0,d.MZ)({readOnly:!0})],B.prototype,"defaultPopupTemplate",null),(0,s.Cg)([(0,d.MZ)(D.PY)],B.prototype,"screenSizePerspectiveEnabled",void 0),(0,s.Cg)([(0,d.MZ)({readOnly:!0,type:[L.A]})],B.prototype,"fields",void 0),(0,s.Cg)([(0,d.MZ)({readOnly:!0,type:[L.A]})],B.prototype,"rasterFields",null),(0,s.Cg)([(0,d.MZ)({constructOnly:!0})],B.prototype,"source",void 0),B=(0,s.Cg)([(0,d.$K)("esri.layers.ImageryTileLayer")],B);const K=B;function Q(e){return/\.(jpe?g|png)$/i.test(e)}},18768(e,t,i){i.d(t,{b:()=>a});var r=i(5482),s=i(53966),n=i(91429),o=i(60694);const a=e=>{const t=e;let i=class extends t{get title(){if(this._get("title")&&"defaults"!==this.originOf("title"))return this._get("title");if(this.url){const e=(0,o.qg)(this.url);if(e?.title)return e.title}return this._get("title")||""}set title(e){this._set("title",e)}set url(e){this._set("url",(0,o.Jf)(e,s.A.getLogger(this)))}};return(0,r.Cg)([(0,n.MZ)()],i.prototype,"title",null),(0,r.Cg)([(0,n.MZ)({type:String})],i.prototype,"url",null),i=(0,r.Cg)([(0,n.$K)("esri.layers.mixins.ArcGISService")],i),i}},56551(e,t,i){i.d(t,{H:()=>u});var r=i(5482),s=i(91429),n=i(69540),o=i(25482),a=i(56507),l=i(94359),c=i(93223);let h=class extends((0,n.OU)(o.o)){constructor(e){super(e),this.name=void 0,this.method="none",this.value=void 0,this.bandIds=void 0,this.renderer=void 0}};(0,r.Cg)([(0,s.MZ)({type:String,json:{write:{isRequired:!0}}})],h.prototype,"name",void 0),(0,r.Cg)([(0,s.MZ)({type:["raster-function-template","variable","none"],json:{write:{isRequired:!0}}}),(0,c.e)({rasterFunctionTemplate:"raster-function-template",variable:"variable",none:"none"})],h.prototype,"method",void 0),(0,r.Cg)([(0,s.MZ)({type:String,json:{write:{isRequired:!0}}})],h.prototype,"value",void 0),(0,r.Cg)([(0,s.MZ)({type:[a.jz],json:{write:{isRequired:!0}}})],h.prototype,"bandIds",void 0),(0,r.Cg)([(0,s.MZ)({types:l.uy,json:{write:!0,origins:{"web-scene":{types:l.Gj,write:{overridePolicy:e=>({enabled:e&&"vector-field"!==e.type})}}}}})],h.prototype,"renderer",void 0),h=(0,r.Cg)([(0,s.$K)("esri.renderers.support.RasterPresetRenderer")],h);const u=e=>{const t=e;let i=class extends t{constructor(){super(...arguments),this.activePresetRendererName=null,this.presetRenderers=null}};return(0,r.Cg)([(0,s.MZ)({type:String,json:{name:"layerDefinition.activePresetRendererName",write:{allowNull:!0}}})],i.prototype,"activePresetRendererName",void 0),(0,r.Cg)([(0,s.MZ)({type:[h],json:{name:"layerDefinition.presetRenderers",write:!0}})],i.prototype,"presetRenderers",void 0),i=(0,r.Cg)([(0,s.$K)("esri.layers.mixins.RasterPresetRendererMixin")],i),i}},91806(e,t,i){i.d(t,{A:()=>l});var r,s=i(5482),n=i(25482),o=i(91429),a=i(56507);let l=class extends n.o{static{r=this}constructor(e){super(e),this.cols=null,this.level=0,this.levelValue=null,this.origin=null,this.resolution=0,this.rows=null,this.scale=0}clone(){return new r({cols:this.cols,level:this.level,levelValue:this.levelValue,resolution:this.resolution,rows:this.rows,scale:this.scale})}};(0,s.Cg)([(0,o.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],l.prototype,"cols",void 0),(0,s.Cg)([(0,o.MZ)({type:a.jz,json:{write:!0}})],l.prototype,"level",void 0),(0,s.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],l.prototype,"levelValue",void 0),(0,s.Cg)([(0,o.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],l.prototype,"origin",void 0),(0,s.Cg)([(0,o.MZ)({type:Number,json:{write:!0}})],l.prototype,"resolution",void 0),(0,s.Cg)([(0,o.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],l.prototype,"rows",void 0),(0,s.Cg)([(0,o.MZ)({type:Number,json:{write:!0}})],l.prototype,"scale",void 0),l=r=(0,s.Cg)([(0,o.$K)("esri.layers.support.LOD")],l)},87045(e,t,i){i.d(t,{A:()=>w});var r,s=i(5482),n=i(66552),o=i(25482),a=i(86211),l=i(91429),c=i(56507),h=i(86738),u=i(16930),p=i(21325),d=i(28735),f=i(91806),m=i(72802),g=i(36005),y=i(43937);const v=new n.J({PNG:"png",PNG8:"png8",PNG24:"png24",PNG32:"png32",JPEG:"jpg",JPG:"jpg",DIB:"dib",TIFF:"tiff",EMF:"emf",PS:"ps",PDF:"pdf",GIF:"gif",SVG:"svg",SVGZ:"svgz",Mixed:"mixed",MIXED:"mixed",LERC:"lerc",LERC2D:"lerc2d",RAW:"raw",pbf:"pbf"});let w=class extends o.o{static{r=this}static create(e={}){const{resolutionFactor:t=1,scales:i,size:s=256,spatialReference:n=u.A.WebMercator,numLODs:o=24}=e;if(!(0,p.fn)(n)){const e=[];if(i)for(let t=0;t<i.length;t++){const r=i[t];e.push(new f.A({level:t,scale:r,resolution:r}))}else{let t=5e-4;for(let i=o-1;i>=0;i--)e.unshift(new f.A({level:i,scale:t,resolution:t})),t*=2}return new r({dpi:96,lods:e,origin:new h.A(0,0,n),size:[s,s],spatialReference:n})}const l=(0,p.Vp)(n),c=e.origin?new h.A({x:e.origin.x,y:e.origin.y,spatialReference:n}):new h.A(l?{x:l.origin[0],y:l.origin[1],spatialReference:n}:{x:0,y:0,spatialReference:n}),d=1/(39.37*(0,a.GA)(n)*96),m=[];if(i)for(let e=0;e<i.length;e++){const t=i[e],r=t*d;m.push(new f.A({level:e,scale:t,resolution:r}))}else{let e=(0,p.EA)(n)?512/s*591657527.5917094:256/s*591657527.591555;const i=Math.ceil(o/t);m.push(new f.A({level:0,scale:e,resolution:e*d}));for(let r=1;r<i;r++){const i=e/2**t,s=i*d;m.push(new f.A({level:r,scale:i,resolution:s})),e=i}}return new r({dpi:96,lods:m,origin:c,size:[s,s],spatialReference:n})}constructor(e){super(e),this.dpi=96,this.format=null,this.origin=null,this.size=null,this.spatialReference=null}get isWrappable(){const{spatialReference:e,origin:t}=this;if(e&&t){const i=(0,p.Vp)(e);return e.isWrappable&&!!i&&Math.abs(i.origin[0]-t.x)<=i.dx}return!1}readOrigin(e,t){return h.A.fromJSON({spatialReference:t.spatialReference,...e})}set lods(e){let t=0,i=0;const r=[],s=this._levelToLOD={};e&&(t=-1/0,i=1/0,e.forEach(e=>{r.push(e.scale),t=e.scale>t?e.scale:t,i=e.scale<i?e.scale:i,s[e.level]=e})),this._set("scales",r),this._set("lods",e),this._initializeUpsampleLevels()}readSize(e,t){return[t.cols,t.rows]}writeSize(e,t){t.cols=e[0],t.rows=e[1]}zoomToScale(e){const t=this.scales;if(e<=0)return t[0];if(e>=t.length-1)return t[t.length-1];const i=Math.floor(e),r=i+1;return t[i]/(t[i]/t[r])**(e-i)}scaleToZoom(e){const t=this.scales,i=t.length-1;let r=0;for(;r<i;r++){const i=t[r],s=t[r+1];if(i<=e)return r;if(s===e)return r+1;if(i>e&&s<e)return r+Math.log(i/e)/Math.log(i/s)}return r}tileAt(e,t,i,r){const s=this.lodAt(e);if(!s)return null;let n,o;if("number"==typeof t)n=t,o=i;else if((0,p.aI)(t.spatialReference,this.spatialReference))n=t.x,o=t.y,r=i;else{const e=(0,d.Cv)(t,this.spatialReference);if(null==e)return null;n=e.x,o=e.y,r=i}const a=s.resolution*this.size[0],l=s.resolution*this.size[1];return r??=new m.U(0,0,0),r.level=e,r.row=Math.floor((this.origin.y-o)/l+.001),r.col=Math.floor((n-this.origin.x)/a+.001),this.updateTileInfo(r),r}updateTileInfo(e,t=0){if(!("extent"in e))return!1;let i=this.lodAt(e.level);if(!i&&1===t){const t=this.lods[this.lods.length-1];t.level<e.level&&(i=t)}if(!i)return!1;const r=e.level-i.level,s=i.resolution*this.size[0]/2**r,n=i.resolution*this.size[1]/2**r;return e.extent[0]=this.origin.x+e.col*s,e.extent[1]=this.origin.y-(e.row+1)*n,e.extent[2]=e.extent[0]+s,e.extent[3]=e.extent[1]+n,!0}upsampleTile(e){const t=this._upsampleLevels[e.level];return!(!t||-1===t.parentLevel||(e.level=t.parentLevel,e.row=Math.floor(e.row/t.factor+.001),e.col=Math.floor(e.col/t.factor+.001),this.updateTileInfo(e),0))}getTileBounds(e,t){const i=this.lodAt(t.level);if(null==i)return null;const{resolution:r}=i,s=r*this.size[0],n=r*this.size[1];return e[0]=this.origin.x+t.col*s,e[1]=this.origin.y-(t.row+1)*n,e[2]=e[0]+s,e[3]=e[1]+n,e}lodAt(e){return this._levelToLOD?.[e]??null}clone(){return r.fromJSON(this.write({}))}getCompatibleForVTL(e){if(this.size[0]!==this.size[1]||256===this.size[0]&&512===e)return null;const t=(512===this.size[0]&&256===e?-1:0)+(this.spatialReference.isGeographic?1:0);if(this.size[0]===e&&0===t)return this;const i=[],s=this.lods.length-t;for(let e=0;e<s;e++){const r=e+t,{scale:s,resolution:n}=r>=0?this.lods[r]:{scale:2*this.lods[0].scale,resolution:2*this.lods[0].resolution};i.push(new f.A({level:e,scale:s,resolution:n}))}return new r({size:[e,e],dpi:this.dpi,format:this.format,compressionQuality:this.compressionQuality,origin:this.origin,spatialReference:this.spatialReference,lods:i})}_initializeUpsampleLevels(){const e=this.lods;this._upsampleLevels=[];let t=null;for(let i=0;i<e.length;i++){const r=e[i];this._upsampleLevels[r.level]={parentLevel:t?t.level:-1,factor:t?t.resolution/r.resolution:0},t=r}}};(0,s.Cg)([(0,l.MZ)({type:Number,json:{write:!0}})],w.prototype,"compressionQuality",void 0),(0,s.Cg)([(0,l.MZ)({type:Number,json:{write:!0}})],w.prototype,"dpi",void 0),(0,s.Cg)([(0,l.MZ)({type:String,json:{read:v.read,write:v.write,origins:{"web-scene":{read:!1,write:!1}}}})],w.prototype,"format",void 0),(0,s.Cg)([(0,l.MZ)({readOnly:!0})],w.prototype,"isWrappable",null),(0,s.Cg)([(0,l.MZ)({type:h.A,json:{write:!0}})],w.prototype,"origin",void 0),(0,s.Cg)([(0,g.w)("origin")],w.prototype,"readOrigin",null),(0,s.Cg)([(0,l.MZ)({type:[f.A],value:null,json:{write:!0}})],w.prototype,"lods",null),(0,s.Cg)([(0,l.MZ)({readOnly:!0})],w.prototype,"scales",void 0),(0,s.Cg)([(0,l.MZ)({cast:e=>Array.isArray(e)?e:"number"==typeof e?[e,e]:[256,256]})],w.prototype,"size",void 0),(0,s.Cg)([(0,g.w)("size",["rows","cols"])],w.prototype,"readSize",null),(0,s.Cg)([(0,y.K)("size",{cols:{type:c.jz},rows:{type:c.jz}})],w.prototype,"writeSize",null),(0,s.Cg)([(0,l.MZ)({type:u.A,json:{write:!0}})],w.prototype,"spatialReference",void 0),w=r=(0,s.Cg)([(0,l.$K)("esri.layers.support.TileInfo")],w)},72802(e,t,i){i.d(t,{U:()=>s});var r=i(19419);class s{constructor(e,t,i,s=(0,r.vt)()){this._level=e,this._row=t,this._col=i,this.extent=s}get id(){return this._id??=`${this.level}/${this.row}/${this.col}`,this._id}get level(){return this._level}set level(e){this._level=e,this._id=null}get row(){return this._row}set row(e){this._row=e,this._id=null}get col(){return this._col}set col(e){this._col=e,this._id=null}toJSON(){return{level:this._level,row:this._row,col:this._col,extent:this.extent}}static fromJSON(e){return new s(e.level,e.row,e.col,e.extent)}}},25943(e,t,i){i.d(t,{d:()=>C});var r,s=i(5482),n=i(11254),o=i(69622),a=i(49186),l=i(36563),c=(i(44208),i(66344)),h=i(15142),u=i(17676),p=i(36708),d=i(76030),f=i(84952),m=i(91429),g=i(72802),y=i(4718),v=i(69397),w=i(34275);class b{constructor(e){!function(e){if(!e?.location)throw new a.A("tilemap:missing-location","Location missing from tilemap response");if(!1===e.valid)throw new a.A("tilemap:invalid","Tilemap response was marked as invalid");if(!e.data)throw new a.A("tilemap:missing-data","Data missing from tilemap response");if(!Array.isArray(e.data))throw new a.A("tilemap:data-mismatch","Data must be an array of numbers");if(e.data.length!==e.location.width*e.location.height)throw new a.A("tilemap:data-mismatch","Number of data items does not match width/height of tilemap")}(e);const{location:t,data:i}=e;this.location=Object.freeze((0,y.o8)(t));const r=this.location.width,s=this.location.height;let n=!0,o=!0;const l=function(e,t=!1){return e<=w.y9?t?new Array(e).fill(0):new Array(e):new Uint32Array(e)}(Math.ceil(r*s/32));let c=0;for(let e=0;e<i.length;e++){const t=e%32;i[e]?(o=!1,l[c]|=1<<t):n=!1,31===t&&++c}o?(this._availability="unavailable",this.byteSize=40):n?(this._availability="available",this.byteSize=40):(this._availability=l,this.byteSize=40+(0,v.Qf)(l))}getAvailability(e,t){if("unavailable"===this._availability||"available"===this._availability)return this._availability;const i=(e-this.location.top)*this.location.width+(t-this.location.left),r=i%32,s=i>>5,n=this._availability;return s<0||s>n.length?"unknown":n[s]&1<<r?"available":"unavailable"}static fromDefinition(e,t){const i=e.service.request||n.A,{row:r,col:s,width:o,height:l}=e,c={query:{f:"json"}};return t=t?{...c,...t}:c,i(function(e){let t;if(e.service.tileServers?.length){const i=e.service.tileServers;t=`${i&&i.length?i[e.row%i.length]:e.service.url}/tilemap/${e.level}/${e.row}/${e.col}/${e.width}/${e.height}`}else t=`${e.service.url}/tilemap/${e.level}/${e.row}/${e.col}/${e.width}/${e.height}`;const i=e.service.query;return i&&(t=`${t}?${i}`),t}(e),t).then(e=>e.data).catch(e=>{if(422===e?.details?.httpStatus)return{location:{top:r,left:s,width:o,height:l},valid:!0,data:new Array(o*l).fill(0)};throw e}).then(e=>{if(e.location&&(e.location.top!==r||e.location.left!==s||e.location.width!==o||e.location.height!==l))throw new a.A("tilemap:location-mismatch","Tilemap response for different location than requested",{response:e,definition:{top:r,left:s,width:o,height:l}});return b.fromJSON(e)})}static fromJSON(e){return Object.freeze(new b(e))}}function _(e){return`${e.level}/${e.row}/${e.col}/${e.width}/${e.height}`}function A(e,t,i){return new a.A("tile-map:tile-unavailable","Tile is not available",{level:e,row:t,col:i})}let C=class extends o.A{static{r=this}constructor(e){super(e),this._pendingTilemapRequests={},this.request=n.A,this.size=32,this._prefetchingEnabled=!0}initialize(){this._tilemapCache=new c.q(2097152),this.addHandles((0,p.wB)(()=>{const{layer:e}=this;return[e?.parsedUrl,e?.tileServers,e?.apiKey,e?.customParameters]},()=>this._initializeTilemapDefinition(),p.Vh))}get effectiveMinLOD(){return this.minLOD??this.layer.tileInfo.lods[0].level}get effectiveMaxLOD(){return this.maxLOD??this.layer.tileInfo.lods[this.layer.tileInfo.lods.length-1].level}getAvailability(e,t,i){if(!this.layer.tileInfo.lodAt(e)||e<this.effectiveMinLOD||e>this.effectiveMaxLOD)return"unavailable";const r=this._tilemapFromCache(e,t,i,this._tmpTilemapDefinition);return r?r.getAvailability(t,i):"unknown"}fetchAvailability(e,t,i,r){return!this.layer.tileInfo.lodAt(e)||e<this.effectiveMinLOD||e>this.effectiveMaxLOD?Promise.reject(A(e,t,i)):this._fetchTilemap(e,t,i,r).catch(e=>e).then(r=>{if(r instanceof b){const s=r.getAvailability(t,i);if("unavailable"===s)throw A(e,t,i);return s}if((0,u.zf)(r))throw r;return"unknown"})}fetchAvailabilityUpsample(e,t,i,r,s){r.level=e,r.row=t,r.col=i;const n=this.layer.tileInfo;n.updateTileInfo(r);const o=this.fetchAvailability(e,t,i,s).catch(e=>{if((0,u.zf)(e))throw e;if(n.upsampleTile(r))return this.fetchAvailabilityUpsample(r.level,r.row,r.col,r,s);throw e});return this._fetchAvailabilityUpsamplePrefetch(e,t,i,s,o),o}async _fetchAvailabilityUpsamplePrefetch(e,t,i,s,n){if(!this._prefetchingEnabled)return;const o=`prefetch-${e}-${t}-${i}`;if(this.hasHandles(o))return;const a=new AbortController;n.then(()=>a.abort(),()=>a.abort());let c=!1;const h=(0,l.hA)(()=>{c||(c=!0,a.abort())});if(this.addHandles(h,o),await(0,d.md)(10,a.signal).catch(()=>{}),c||(c=!0,this.removeHandles(o)),(0,u.G4)(a))return;const p=new g.U(e,t,i),f={...s,signal:a.signal},m=this.layer.tileInfo;for(let e=0;r._prefetches.length<r._maxPrefetch&&m.upsampleTile(p);++e){const e=this.fetchAvailability(p.level,p.row,p.col,f);r._prefetches.push(e);const t=()=>{r._prefetches.removeUnordered(e)};e.then(t,t)}}static{this._maxPrefetch=4}static{this._prefetches=new h.A({initialSize:r._maxPrefetch})}static cleanupTilemapCache(){this._prefetches.prune()}_fetchTilemap(e,t,i,r){if(!this.layer.tileInfo.lodAt(e)||e<this.effectiveMinLOD||e>this.effectiveMaxLOD)return Promise.reject(new a.A("tilemap-cache:level-unavailable",`Level ${e} is unavailable in the service`));const s=this._tmpTilemapDefinition,n=this._tilemapFromCache(e,t,i,s);if(n)return Promise.resolve(n);const o=r?.signal;return r={...r,signal:null},new Promise((e,t)=>{(0,u.u7)(o,()=>t((0,u.NK)()));const i=_(s);let n=this._pendingTilemapRequests[i];if(!n){n=b.fromDefinition(s,r).then(e=>(this._tilemapCache.put(i,e,e.byteSize),e));const e=()=>{delete this._pendingTilemapRequests[i]};this._pendingTilemapRequests[i]=n,n.then(e,e)}n.then(e,t)})}_initializeTilemapDefinition(){if(!this.layer.parsedUrl)return;const{parsedUrl:e,apiKey:t,customParameters:i}=this.layer;this._tilemapCache.clear(),this._tmpTilemapDefinition={service:{url:e.path,query:(0,f.x0)({...e.query,...i,token:t??e.query?.token}),tileServers:this.layer.tileServers,request:this.request},width:this.size,height:this.size,level:0,row:0,col:0}}_tilemapFromCache(e,t,i,r){r.level=e,r.row=t-t%this.size,r.col=i-i%this.size;const s=_(r);return this._tilemapCache.get(s)}get test(){}};(0,s.Cg)([(0,m.MZ)({constructOnly:!0})],C.prototype,"layer",void 0),(0,s.Cg)([(0,m.MZ)({constructOnly:!0})],C.prototype,"minLOD",void 0),(0,s.Cg)([(0,m.MZ)({constructOnly:!0})],C.prototype,"maxLOD",void 0),(0,s.Cg)([(0,m.MZ)({constructOnly:!0})],C.prototype,"request",void 0),(0,s.Cg)([(0,m.MZ)({constructOnly:!0})],C.prototype,"size",void 0),C=r=(0,s.Cg)([(0,m.$K)("esri.layers.support.TilemapCache")],C)},82371(e,t,i){i.d(t,{E9:()=>f,Tw:()=>p,X6:()=>d});var r=i(11254),s=i(5443),n=i(86738),o=i(16930),a=i(87186),l=i(20223),c=i(2272),h=i(22671);async function u(e,t,i){const u=(0,c.Dl)(e),{rasterFunction:p,sourceJSON:d}=t||{},f=p?JSON.stringify(p.rasterFunctionDefinition||p):null,m=(0,c.lF)({...u.query,renderingRule:f,f:"json"}),g=(0,c.jV)(m,i);e=u.path;const y=d||await(0,r.A)(e,g).then(e=>e.data),v=y.hasRasterAttributeTable?(0,r.A)(`${e}/rasterAttributeTable`,g):null,w=y.hasColormap?(0,r.A)(`${e}/colormap`,g):null,b=y.hasHistograms?(0,r.A)(`${e}/histograms`,g):null,_=y.currentVersion>=10.3?(0,r.A)(`${e}/keyProperties`,g):null,A=y.hasMultidimensions?(0,r.A)(`${e}/multidimensionalInfo`,g):null,C=y.currentVersion>=10.81?(0,r.A)(`${e}/statistics`,g):null,R=await Promise.allSettled([v,w,b,_,A,C]),M=s.A.fromJSON(y.extent),S=Math.ceil(M.width/y.pixelSizeX-.1),O=Math.ceil(M.height/y.pixelSizeY-.1),x=o.A.fromJSON(y.spatialReference||y.extent.spatialReference),T="fulfilled"===R[0].status?R[0].value?.data:null,I=T?.features?.length?h.A.fromJSON(T):null,P="fulfilled"===R[1].status?R[1].value?.data.colormap:null,z=P?.length?P:null,F="fulfilled"===R[2].status?R[2].value?.data.histograms:null,N=F?.[0]?.counts?.length?F:null,Z="fulfilled"===R[3].status?R[3].value?.data??{}:{},D="fulfilled"===R[4].status?R[4].value?.data.multidimensionalInfo:null,L=D?.variables?.length?D:null;L&&L.variables.forEach(e=>{e.statistics?.length&&e.statistics.forEach(e=>{e.avg=e.mean,e.stddev=e.standardDeviation}),e.dimensions?.forEach(e=>{"StdTime"!==e.name||e.recurring||e.unit||(e.unit="ISO8601")})});let j=null;const J="fulfilled"===R[5].status?R[5].value?.data.statistics:null;if(J&&J.length===y.bandCount)j=J.map(e=>({avg:e.mean,count:e.count,max:e.max,median:e.median,min:e.min,mode:e.mode,stddev:e.standardDeviation,sum:e.sum}));else if(y.minValues&&y.minValues.length===y.bandCount){j=[];for(let e=0;e<y.minValues.length;e++)j.push({min:y.minValues[e],max:y.maxValues[e],avg:y.meanValues[e],stddev:y.stdvValues[e]})}const{defaultVariable:$,serviceDataType:V}=y;$&&$!==Z.DefaultVariable&&(Z.DefaultVariable=$),V?.includes("esriImageServiceDataTypeVector")&&!V.includes(Z.DataType)&&(Z.DataType=V.replace("esriImageServiceDataType",""));let E=y.noDataValue;y.noDataValues?.length&&y.noDataValues.some(e=>e!==E)&&(E=y.noDataValues);const k=y.transposeInfo?new l.A({blockWidth:256,blockHeight:256,pyramidBlockWidth:256,pyramidBlockHeight:256,pyramidScalingFactor:2,compression:"lerc",origin:new n.A({x:y.extent.xmin,y:y.extent.ymax,spatialReference:x}),firstPyramidLevel:1,maximumPyramidLevel:Math.max(0,Math.round(Math.log(Math.max(S,O))/Math.LN2-8)),transposeInfo:y.transposeInfo}):void 0;return new a.A({width:S,height:O,bandCount:y.bandCount,extent:s.A.fromJSON(y.extent),spatialReference:x,pixelSize:new n.A({x:y.pixelSizeX,y:y.pixelSizeY,spatialReference:x}),pixelType:y.pixelType.toLowerCase(),statistics:j,attributeTable:I,colormap:z,histograms:N,keyProperties:Z,noDataValue:E,multidimensionalInfo:L,storageInfo:k})}function p(e,t,i){return u(e,{sourceJSON:t},i)}function d(e,t,i){return u(e,{rasterFunction:t},i)}function f(e,t){e.attributeTable||(t.hasRasterAttributeTable=!1),e.histograms||(t.hasHistograms=!1),e.colormap||(t.hasColormap=!1),e.multidimensionalInfo||(t.hasMultidimensions=!1)}}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[5816],{68197(t,e,s){s.d(e,{A:()=>l});var n=s(40876),i=s(4576),r=s(34727),o=s(56507);function a(t){return(0,r.qE)((0,o.Vr)(t),0,255)}function h(t,e){const s=t.toString(16).padStart(2,"0");return e?s.slice(0,1):s}class l{static blendColors(t,e,s,n=new l){return n.r=Math.round(t.r+(e.r-t.r)*s),n.g=Math.round(t.g+(e.g-t.g)*s),n.b=Math.round(t.b+(e.b-t.b)*s),n.a=t.a+(e.a-t.a)*s,n._sanitize()}static fromRgb(t,e){const s=(0,n.lT)(t);return s?l.fromArray(s,e):null}static fromHex(t,e=new l){const s=(0,n.oW)(t);return s?l.fromArray(s,e):null}static fromArray(t,e=new l){return e._set(Number(t[0]),Number(t[1]),Number(t[2]),Number(t[3])),isNaN(e.a)&&(e.a=1),e._sanitize()}static fromString(t,e){const s=(0,n.Eq)(t);return s?l.fromArray(s,e):null}static fromJSON(t){return null!=t?new l([t[0],t[1],t[2],(t[3]??255)/255]):void 0}toUnitRGB(){return[this.r/255,this.g/255,this.b/255]}toUnitRGBA(t){return t??=[0,0,0,0],t[0]=this.r/255,t[1]=this.g/255,t[2]=this.b/255,t[3]=null!=this.a?this.a:1,t}constructor(t){this.r=255,this.g=255,this.b=255,this.a=1,t&&this.setColor(t)}get isBright(){return.299*this.r+.587*this.g+.114*this.b>=127}setColor(t){if("string"==typeof t)l.fromString(t,this);else if((0,i.yc)(t))l.fromArray(t,this);else{const e=t;this._set(e.r??0,e.g??0,e.b??0,e.a??1),t instanceof l||this._sanitize()}return this}toRgb(){return[this.r,this.g,this.b]}toRgba(){return[this.r,this.g,this.b,this.a]}toHex(t){const e=t?.capitalize??!1,s=t?.digits??6,n=3===s||4===s,i=4===s||8===s,r=`#${h(this.r,n)}${h(this.g,n)}${h(this.b,n)}${i?h(Math.round(255*this.a),n):""}`;return e?r.toUpperCase():r}toCss(t=!1){const e=this.r+", "+this.g+", "+this.b;return t?`rgba(${e}, ${this.a})`:`rgb(${e})`}toString(){return this.toCss(!0)}toJSON(){return this.toArray()}toArray(t=0){const e=a(this.r),s=a(this.g),n=a(this.b);return 0===t||1!==this.a?[e,s,n,a(255*this.a)]:[e,s,n]}clone(){return new l(this.toRgba())}hash(){return this.r<<24|this.g<<16|this.b<<8|255*this.a}equals(t){return null!=t&&t.r===this.r&&t.g===this.g&&t.b===this.b&&t.a===this.a}_sanitize(){return this.r=(0,n.c1)(this.r),this.g=(0,n.c1)(this.g),this.b=(0,n.c1)(this.b),this.a=(0,n.G1)(this.a),this}_set(t,e,s,n){this.r=t,this.g=e,this.b=s,this.a=n}}l.prototype.declaredClass="esri.Color"},40876(t,e,s){s.d(e,{Eq:()=>g,G1:()=>d,TS:()=>r,Tf:()=>_,V6:()=>i,Vm:()=>p,ay:()=>h,c1:()=>m,c4:()=>o,j5:()=>l,lT:()=>u,oW:()=>c,xV:()=>v});const n={transparent:[0,0,0,0],black:[0,0,0,1],silver:[192,192,192,1],gray:[128,128,128,1],white:[255,255,255,1],maroon:[128,0,0,1],red:[255,0,0,1],purple:[128,0,128,1],fuchsia:[255,0,255,1],green:[0,128,0,1],lime:[0,255,0,1],olive:[128,128,0,1],yellow:[255,255,0,1],navy:[0,0,128,1],blue:[0,0,255,1],teal:[0,128,128,1],aqua:[0,255,255,1],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],blanchedalmond:[255,235,205,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],oldlace:[253,245,230,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],rebeccapurple:[102,51,153,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],whitesmoke:[245,245,245,1],yellowgreen:[154,205,50,1]};function i(t){return!!n[t]||!!n[t.toLowerCase()]}function r(t){return n[t]??n[t.toLowerCase()]}function o(t){return[...r(t)]}function a(t,e,s){s<0&&++s,s>1&&--s;const n=6*s;return n<1?t+(e-t)*n:2*s<1?e:3*s<2?t+(e-t)*(2/3-s)*6:t}function h(t,e,s,n=1){const i=(t%360+360)%360/360,r=s<=.5?s*(e+1):s+e-s*e,o=2*s-r;return[Math.round(255*a(o,r,i+1/3)),Math.round(255*a(o,r,i)),Math.round(255*a(o,r,i-1/3)),n]}function l(t){const e=t.length>5,s=e?8:4,n=(1<<s)-1,i=e?1:17,r=e?9===t.length:5===t.length;let o=Number("0x"+t.slice(1));if(isNaN(o))return null;const a=[0,0,0,1];let h;return r&&(h=o&n,o>>=s,a[3]=i*h/255),h=o&n,o>>=s,a[2]=i*h,h=o&n,o>>=s,a[1]=i*h,h=o&n,o>>=s,a[0]=i*h,a}function c(t){if(!t.startsWith("#")||isNaN(Number(`0x${t.slice(1)}`)))return null;switch(t.length){case 4:case 5:{const e=parseInt(t.slice(1,2),16),s=parseInt(t.slice(2,3),16),n=parseInt(t.slice(3,4),16),i=4===t.length?15:parseInt(t.slice(4),16);return[e+16*e,s+16*s,n+16*n,(i+16*i)/255]}case 7:case 9:return[parseInt(t.slice(1,3),16),parseInt(t.slice(3,5),16),parseInt(t.slice(5,7),16),(7===t.length?255:parseInt(t.slice(7),16))/255];default:return null}}function u(t){const e=t.toLowerCase().match(/^(rgba?|hsla?)\(([\s.\-,%0-9]+)\)/);if(e){const t=e[2].split(/\s*,\s*/),s=e[1];if("rgb"===s&&3===t.length||"rgba"===s&&4===t.length){if(t[0].endsWith("%")){const e=t.map(t=>2.56*parseFloat(t));return 4===t.length&&(e[3]=parseFloat(t[3])),f(e)}return f(t.map(t=>parseFloat(t)))}if("hsl"===s&&3===t.length||"hsla"===s&&4===t.length)return h(parseFloat(t[0]),parseFloat(t[1])/100,parseFloat(t[2])/100,parseFloat(t[3]??"1"))}return null}function f(t){return t[0]=m(t[0]),t[1]=m(t[1]),t[2]=m(t[2]),t[3]=4===t.length?d(t[3]):1,t}function g(t){let e=i(t)?r(t):null;return e??=u(t),e??=c(t),e}function p(t){const e=g(t);return null!=e?[e[0]/255,e[1]/255,e[2]/255,e[3]]:null}function d(t){return b(t,0,1)}function m(t){return Math.round(b(t,0,255))}function b(t,e,s){return t=Number(t),isNaN(t)?s:t<e?e:t>s?s:t}const _=2.2,y=1/_;function v(t){return t**y}},7762(t,e,s){s.d(e,{A:()=>q});var n,i=s(5482),r=s(98291),o=s(4576),a=s(65529),h=s(36563),l=s(4718),c=s(53966),u=s(93687),f=s(76030),g=s(56507),p=s(62788),d=s(10107),m=s(7695),b=s(64108),_=s(95488),y=s(12195);class v{constructor(){this.target=null,this.cancellable=!1,this.defaultPrevented=!1,this.item=void 0,this.type=void 0}preventDefault(){this.cancellable&&(this.defaultPrevented=!0)}reset(t){this.defaultPrevented=!1,this.item=t}}class S{constructor(t,e,s,n,i){this.target=t,this.added=e,this.removed=s,this.start=n,this.deleteCount=i}}const w=new u.A(()=>new v,void 0,t=>{t.item=null,t.target=null,t.defaultPrevented=!1,t.cancellable=!1});function C(t){t&&"object"==typeof t&&"destroy"in t&&"function"==typeof t.destroy&&t.destroy()}function k(t){return t?t instanceof I?t.toArray():t.length?Array.prototype.slice.apply(t):[]:[]}function A(t){if(t?.length)return t[0]}function M(t,e,s,n){const i=Math.min(t.length-s,e.length-n);let r=0;for(;r<i&&t[s+r]===e[n+r];)r++;return r}function x(t,e,s,n){e&&e.forEach((e,i,r)=>{t.push(e),x(t,s.call(n,e,i,r),s,n)})}const E=new Set,P=new Set,R=new Set,N=new Map;let L=0,I=n=class extends a.nJ{static ofType(t){if(!t)return n;if(N.has(t))return N.get(t);let e=null;if("function"==typeof t)e=t.prototype.declaredClass;else if(t.base)e=t.base.prototype.declaredClass;else for(const s in t.typeMap){const n=t.typeMap[s].prototype.declaredClass;e?e+=` | ${n}`:e=n}let s=class extends n{};return(0,i.Cg)([(0,m.u)({Type:t,ensureType:"function"==typeof t?(0,g.dp)(t):(0,g.aq)(t)})],s.prototype,"itemType",void 0),s=(0,i.Cg)([(0,b.$)(`esri.core.Collection<${e}>`)],s),N.set(t,s),s}static isCollection(t){return null!=t&&t instanceof n}constructor(t){super(t),this._chgListeners=[],this._notifications=null,this._updating=!1,this._timer=null,this._observable=new _.I,this._length=0,this._items=[],Object.defineProperty(this,"uid",{value:L++})}normalizeCtorArgs(t){return t?(0,o.yc)(t)||t instanceof n?{items:t}:t:{}}destroy(){this._removeAllRaw(),this._timer&&this._timer.remove(),super.destroy(),this._notifications=null}*[Symbol.iterator](){yield*this.items}get length(){return this._length}set length(t){t>this._length?c.A.getLogger(this).error("#length=","Cannot increase the length of the collection by assigning to the length property."):this.splice(t,Math.max(0,this._length-t))}get items(){return(0,p.gc)(this._observable),this._items}set items(t){this._emitBeforeChanges(1)||(this._splice(0,this.length,k(t)),this._emitAfterChanges(1))}hasEventListener(t){return!this.destroyed&&("change"===t?this._chgListeners.length>0:super.hasEventListener(t))}on(t,e){if(this.destroyed)return(0,h.hA)();if("change"===t){const t=this._chgListeners,s={removed:!1,callback:e};return t.push(s),this._notifications&&this._notifications.push({listeners:t.slice(),items:this._items.slice(),changes:[]}),(0,h.hA)(()=>{s.removed=!0,t.splice(t.indexOf(s),1)})}return super.on(t,e)}once(t,e){const s="deref"in e?()=>e.deref():()=>e,n=this.on(t,t=>{s()?.call(null,t),n.remove()});return n}add(t,e){if((0,p.gc)(this._observable),this._emitBeforeChanges(1))return this;const s=this.getNextIndex(e??null);return this._splice(s,0,[t]),this._emitAfterChanges(1),this}addMany(t,e=this._items.length){if((0,p.gc)(this._observable),!t?.length)return this;if(this._emitBeforeChanges(1))return this;const s=this.getNextIndex(e);return this._splice(s,0,k(t)),this._emitAfterChanges(1),this}at(t){if((0,p.gc)(this._observable),(t=Math.trunc(t)||0)<0&&(t+=this.length),!(t<0||t>=this.length))return this._items[t]}removeAll(){if((0,p.gc)(this._observable),!this.length||this._emitBeforeChanges(2))return[];const t=this._removeAllRaw();return this._emitAfterChanges(2),t}_removeAllRaw(){return 0===this.length?[]:this._splice(0,this.length)||[]}clone(){return(0,p.gc)(this._observable),this._createNewInstance({items:this._items.map(l.o8)})}concat(...t){(0,p.gc)(this._observable);const e=t.map(k);return this._createNewInstance({items:this._items.concat(...e)})}drain(t,e){if((0,p.gc)(this._observable),!this.length||this._emitBeforeChanges(2))return;const s=this._splice(0,this.length),n=s.length;for(let i=0;i<n;i++)t.call(e,s[i],i,s);this._emitAfterChanges(2)}destroyAll(){this.drain(C)}destroyMany(t){const e=this.removeMany(t);return e.forEach(C),e}every(t,e){return(0,p.gc)(this._observable),this._items.every(t,e)}filter(t,e){(0,p.gc)(this._observable);const s=2===arguments.length?this._items.filter(t,e):this._items.filter(t);return this._createNewInstance({items:s})}find(t,e){return(0,p.gc)(this._observable),this._items.find(t,e)}findIndex(t,e){return(0,p.gc)(this._observable),this._items.findIndex(t,e)}flatten(t,e){(0,p.gc)(this._observable);const s=[];return x(s,this,t,e),new n(s)}forEach(t,e){return(0,p.gc)(this._observable),this._items.forEach(t,e)}getItemAt(t){return(0,p.gc)(this._observable),this._items[t]}getNextIndex(t){(0,p.gc)(this._observable);const e=this.length;return(t=t??e)<0?t=0:t>e&&(t=e),t}includes(t,e=0){return(0,p.gc)(this._observable),this._items.includes(t,e)}indexOf(t,e=0){return(0,p.gc)(this._observable),this._items.indexOf(t,e)}join(t=","){return(0,p.gc)(this._observable),this._items.join(t)}lastIndexOf(t,e=this.length-1){return(0,p.gc)(this._observable),this._items.lastIndexOf(t,e)}map(t,e){(0,p.gc)(this._observable);const s=this._items.map(t,e);return new n({items:s})}reorder(t,e=this.length-1){(0,p.gc)(this._observable);const s=this.indexOf(t);if(-1!==s){if(e<0?e=0:e>=this.length&&(e=this.length-1),s!==e){if(this._emitBeforeChanges(4))return t;this._splice(s,1),this._splice(e,0,[t]),this._emitAfterChanges(4)}return t}}pop(){if((0,p.gc)(this._observable),!this.length||this._emitBeforeChanges(2))return;const t=A(this._splice(this.length-1,1));return this._emitAfterChanges(2),t}push(...t){return(0,p.gc)(this._observable),this._emitBeforeChanges(1)||(this._splice(this.length,0,t),this._emitAfterChanges(1)),this.length}reduce(t,e){(0,p.gc)(this._observable);const s=this._items;return 2===arguments.length?s.reduce(t,e):s.reduce(t)}reduceRight(t,e){(0,p.gc)(this._observable);const s=this._items;return 2===arguments.length?s.reduceRight(t,e):s.reduceRight(t)}remove(t){return(0,p.gc)(this._observable),this.removeAt(this.indexOf(t))}removeAt(t){if((0,p.gc)(this._observable),t<0||t>=this.length||this._emitBeforeChanges(2))return;const e=A(this._splice(t,1));return this._emitAfterChanges(2),e}removeMany(t){if((0,p.gc)(this._observable),!t?.length||this._emitBeforeChanges(2))return[];const e=t instanceof n?t.toArray():t,s=this._items,i=[],r=e.length;for(let t=0;t<r;t++){const n=e[t],r=s.indexOf(n);if(r>-1){const n=1+M(e,s,t+1,r+1),o=this._splice(r,n);o&&o.length>0&&i.push.apply(i,o),t+=n-1}}return this._emitAfterChanges(2),i}reverse(){if((0,p.gc)(this._observable),this._emitBeforeChanges(4))return this;const t=this._splice(0,this.length);return t&&(t.reverse(),this._splice(0,0,t)),this._emitAfterChanges(4),this}shift(){if((0,p.gc)(this._observable),!this.length||this._emitBeforeChanges(2))return;const t=A(this._splice(0,1));return this._emitAfterChanges(2),t}slice(t=0,e=this.length){return(0,p.gc)(this._observable),this._createNewInstance({items:this._items.slice(t,e)})}some(t,e){return(0,p.gc)(this._observable),this._items.some(t,e)}sort(t){if((0,p.gc)(this._observable),!this.length||this._emitBeforeChanges(4)||!this._requiresSort(t))return this;const e=this._splice(0,this.length);return arguments.length?e.sort(t):e.sort(),this._splice(0,0,e),this._emitAfterChanges(4),this}_requiresSort(t=(t,e)=>t===e?0:t<e?-1:1){const e=this.length-1;for(let s=0;s<e;s++)if(t(this.items[s],this.items[s+1])>0)return!0;return!1}splice(t,e,...s){(0,p.gc)(this._observable),1===arguments.length&&(e=this.length),e??=0;const n=(e?2:0)|(s.length?1:0);if(this._emitBeforeChanges(n))return[];const i=this._splice(t,e,s)||[];return this._emitAfterChanges(n),i}toArray(){return(0,p.gc)(this._observable),this._items.slice()}toJSON(t){return(0,p.gc)(this._observable),this.toArray().map(e=>(0,y.W)(e)?e.toJSON(t):e)}toLocaleString(){return(0,p.gc)(this._observable),this._items.toLocaleString()}toString(){return(0,p.gc)(this._observable),this._items.toString()}unshift(...t){return(0,p.gc)(this._observable),!t.length||this._emitBeforeChanges(1)||(this._splice(0,0,t),this._emitAfterChanges(1)),this.length}_createNewInstance(t){return new this.constructor(t)}_splice(t,e,s){const n=this._items,i=this.itemType;let r,o;if(!this._notifications&&this.hasEventListener("change")&&(this._notifications=[{listeners:this._chgListeners.slice(),items:this._items.slice(),changes:[]}],this._timer&&this._timer.remove(),this._updating=!0,this._timer=(0,f._)(()=>this._dispatchChange())),t<0&&(t+=this.length),e){if(o=n.splice(t,e),this.hasEventListener("before-remove")){const e=w.acquire();e.target=this,e.cancellable=!0;for(let s=0,i=o.length;s<i;s++)r=o[s],e.reset(r),this.emit("before-remove",e),e.defaultPrevented&&(o.splice(s,1),n.splice(t,0,r),t+=1,s-=1,i-=1);w.release(e)}if(this._length=this._items.length,this.hasEventListener("after-remove")){const t=w.acquire();t.target=this,t.cancellable=!1;const e=o.length;for(let s=0;s<e;s++)t.reset(o[s]),this.emit("after-remove",t);w.release(t)}}if(s?.length){if(i){const t=[];for(const e of s){const s=i.ensureType(e);null==s&&null!=e||t.push(s)}s=t}const e=this.hasEventListener("before-add"),r=this.hasEventListener("after-add"),o=t===this.length;if(e||r){const i=w.acquire();i.target=this,i.cancellable=!0;const a=w.acquire();a.target=this,a.cancellable=!1;for(const h of s)e?(i.reset(h),this.emit("before-add",i),i.defaultPrevented||(o?n.push(h):n.splice(t++,0,h),this._length=n.length,r&&(a.reset(h),this.emit("after-add",a)))):(o?n.push(h):n.splice(t++,0,h),this._length=n.length,a.reset(h),this.emit("after-add",a));w.release(a),w.release(i)}else{if(o)for(const t of s)n.push(t);else n.splice(t,0,...s);this._length=n.length}}if((s?.length||o?.length)&&this._notifyChangeEvent(s,o),this.hasEventListener("after-splice")){const n=new S(this,s,o,t,e);this.emit("after-splice",n)}return o}_emitBeforeChanges(t){let e=!1;if(this.hasEventListener("before-changes")){const s=w.acquire();s.target=this,s.cancellable=!0,s.type=t,this.emit("before-changes",s),e=s.defaultPrevented,w.release(s)}return e}_emitAfterChanges(t){if(this.hasEventListener("after-changes")){const e=w.acquire();e.target=this,e.cancellable=!1,e.type=t,this.emit("after-changes",e),w.release(e)}this._observable.notify()}_notifyChangeEvent(t,e){this.hasEventListener("change")&&this._notifications&&this._notifications[this._notifications.length-1].changes.push({added:t,removed:e})}get updating(){return this._updating}_dispatchChange(){if(this._timer&&(this._timer.remove(),this._timer=null),this._updating=!1,!this._notifications)return;const t=this._notifications;this._notifications=null;for(const e of t){const t=e.changes;E.clear(),P.clear(),R.clear();for(const{added:e,removed:s}of t){if(e)if(0===R.size&&0===P.size)for(const t of e)E.add(t);else for(const t of e)P.has(t)?(R.add(t),P.delete(t)):R.has(t)||E.add(t);if(s)if(0===R.size&&0===E.size)for(const t of s)P.add(t);else for(const t of s)E.has(t)?E.delete(t):(R.delete(t),P.add(t))}const s=r.A.acquire();E.forEach(t=>{s.push(t)});const n=r.A.acquire();P.forEach(t=>{n.push(t)});const i=this._items,o=e.items,a=r.A.acquire();if(R.forEach(t=>{o.indexOf(t)!==i.indexOf(t)&&a.push(t)}),e.listeners&&(s.length||n.length||a.length)){const t={target:this,added:s,removed:n,moved:a},i=e.listeners.length;for(let s=0;s<i;s++){const n=e.listeners[s];n.removed||n.callback.call(this,t)}}r.A.release(s),r.A.release(n),r.A.release(a)}E.clear(),P.clear(),R.clear()}};(0,i.Cg)([(0,d.MZ)()],I.prototype,"_updating",void 0),(0,i.Cg)([(0,d.MZ)()],I.prototype,"_length",void 0),(0,i.Cg)([(0,d.MZ)()],I.prototype,"length",null),(0,i.Cg)([(0,d.MZ)()],I.prototype,"items",null),(0,i.Cg)([(0,d.MZ)({readOnly:!0})],I.prototype,"updating",null),I=n=(0,i.Cg)([(0,b.$)("esri.core.Collection")],I);const q=I},69052(t,e,s){s.d(e,{hr:()=>i,ie:()=>h,uC:()=>a});var n=s(34727);class i{constructor(t,e){this.min=t,this.max=e,this.range=e-t}normalize(t,e=0,s=!1){return r(this.range,this.min,this.max,t,e,s)}clamp(t,e=0){return(0,n.qE)(t-e,this.min,this.max)+e}monotonic(t,e,s){return t<e?e:e+o(this.range,t-e,s)}minimalMonotonic(t,e,s){return r(this.range,t,t+this.range,e,s)}center(t,e,s){return e=this.monotonic(t,e,s),this.normalize((t+e)/2,s)}diff(t,e,s){return this.monotonic(t,e,s)-t}shortestSignedDiff(t,e){t=this.normalize(t);const s=(e=this.normalize(e))-t,n=e<t?this.minimalMonotonic(t,e)-t:e-this.minimalMonotonic(e,t);return Math.abs(s)<Math.abs(n)?s:n}contains(t,e,s){return e=this.minimalMonotonic(t,e),(s=this.minimalMonotonic(t,s))>t&&s<e}}function r(t,e,s,n,i=0,r=!1){return(n-=i)<e?n+=o(t,e-n):n>s&&(n-=o(t,n-s)),r&&n===s&&(n=e),n+i}function o(t,e,s=0){return Math.ceil((e-s)/t)*t+s}const a=new i(0,2*Math.PI),h=(new i(-Math.PI,Math.PI),new i(0,360))},4902(t,e,s){s.d(e,{s:()=>o});var n=s(5482),i=s(64108);let r=0;const o=t=>{const e=t;let s=class extends e{constructor(...t){super(...t),Object.defineProperty(this,"uid",{writable:!1,configurable:!1,value:Date.now().toString(16)+"-object-"+r++})}};return s=(0,n.Cg)([(0,i.$)("esri.core.Identifiable")],s),s};o(class{})},7695(t,e,s){function n(t){return(e,s)=>{e[s]=t}}s.d(e,{u:()=>n})},56512(t,e,s){function n(t){let e,s,n=[],i=!1;return function(...r){return i&&e===this&&function(t,e){if(t.length!==e.length)return!1;for(let s=0;s<t.length;++s)if(t[s]!==e[s])return!1;return!0}(r,n)||(s=t.apply(this,r),e=this,n=r,i=!0),s}}s.d(e,{B:()=>n})},36708(t,e,s){s.d(e,{C_:()=>f,OH:()=>d,Vh:()=>m,on:()=>u,pc:()=>b,wB:()=>h,z7:()=>l});var n=s(37955),i=s(36563),r=s(97768),o=s(17676),a=s(14012);function h(t,e,s={}){return c(t,e,s,g)}function l(t,e,s={}){return c(t,e,s,p)}function c(t,e,s={},n){let i=null;const o=s.once?(t,s)=>{n(t)&&((0,r.xt)(i),e(t,s))}:(t,s)=>{n(t)&&e(t,s)};if(i=(0,a.Cn)(t,o,s.sync,s.equals),s.initial){const e=t();o(e,e)}return i}function u(t,e,s,o={}){let a=null,l=null,c=null;function u(){a&&l&&(l.remove(),o.onListenerRemove?.(a),a=null,l=null)}function f(t){o.once&&o.once&&(0,r.xt)(c),s(t)}const g=h(t,(t,s)=>{u(),(0,n.wb)(t)&&(a=t,l=(0,n.on)(t,e,f),o.onListenerAdd?.(t))},{sync:o.sync,initial:!0});return c=(0,i.hA)(()=>{g.remove(),u()}),c}function f(t,e){return function(t,e,s){if((0,o.G4)(s))return Promise.reject((0,o.NK)());const n=t();if(e?.(n))return Promise.resolve(n);let a=null;function h(){a=(0,r.xt)(a)}return new Promise((n,r)=>{a=(0,i.vE)([(0,o.u7)(s,()=>{h(),r((0,o.NK)())}),c(t,t=>{h(),n(t)},{sync:!1,once:!0},e??g)])})}(t,p,e)}function g(t){return!0}function p(t){return!!t}s(80559);const d={sync:!0},m={initial:!0},b={sync:!0,initial:!0}},90629(t,e,s){s.d(e,{Lz:()=>i,PN:()=>r,cr:()=>o,gs:()=>h,r_:()=>l,tc:()=>a});const n=/^-?(\d+(\.\d+)?)\s*((px)|(pt))?$/i;function i(t){return t?t/72*96:0}function r(t){return t?72*t/96:0}function o(t){if("string"==typeof t){const e=t.match(n);if(e){const s=Number(e[1]),n=e[3]&&e[3].toLowerCase(),i=t.startsWith("-"),o="px"===n?r(s):s;return i?-o:o}return console.warn("screenUtils.toPt: input not recognized!"),null}return t}function a(t=0,e=0){return{x:t,y:e}}function h(t=0,e=0){return[t,e]}function l(t=0,e=0,s=0){return[t,e,s]}},31411(t,e,s){s.d(e,{GS:()=>k,gh:()=>M});var n=s(49186),i=s(56512),r=s(65864),o=s(4305),a=s(50954),h=s(52006),l=s(49663),c=s(46068),u=s(15507);const f=1e-6,g=[0,0];function p(t){return{maxSegmentLength:t.maxSegmentLength??0,maxDeviation:t.maxDeviation??0,maxSegmentsPerCurve:t.maxSegmentsPerCurve??12e3,minSegmentsPerCurve:Math.max(t.minSegmentsPerCurve??1,1)}}class d{constructor(t,e){this.curveStart=t,this.curveEnd=e,this.tStart=0,this.tEnd=0,this.tEndStack=[],this.arcEndStack=[]}get stackSize(){return this.tEndStack.length}initialize(t,e){this.tStart=0,this.arcStart=t,this.tEndStack.push(1),this.arcEndStack.push(e)}splitAt(t){this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this.tEndStack.push(t),this.arcEndStack.push(this.interpolate(t))}splitInHalf(){return this.splitAt((this.tStart+this.tEnd)/2)}pop(){this.tEnd=this.tEndStack.pop(),this.arcEnd=this.arcEndStack.pop()}next(){this.tStart=this.tEnd,this.arcStart=this.arcEnd}densify(t,{maxDeviation:e,maxSegmentLength:s,maxSegmentsPerCurve:n,minSegmentsPerCurve:i}){const r=s*s,o=e*e,a=1/n,h=this.interpolate(0),l=this.interpolate(1);(0,u.kb)(this.curveStart,h)>f&&t.push(h),this.initialize(h,l);const c=1/i;for(let t=i-1;t>0;t--){const e=t*c;this.pop(),this.splitAt(e)}for(;this.stackSize>0;)this.pop(),this.tStart===this.tEnd||this.tEnd-this.tStart<a||(0===r||!isFinite(r)||(0,u.kb)(this.arcStart,this.arcEnd)<r)&&(0===o||!isFinite(o)||this.getDeviation2()<o)?(t.push(this.arcEnd),this.next()):this.splitInHalf();return(0,u.kb)(this.curveEnd,l)>f&&t.push([...this.curveEnd]),t}}class m extends d{constructor(t,e){const[s,n,i]=e.b;super(t,s),this._controlPointsStack=[],this._curveControlPoints=[n,i],this._arcControlPoints=[n,i],this._controlPointsStack.push(this._arcControlPoints)}splitAt(t){const{arcStart:e,arcEnd:s,tStart:n,tEnd:i}=this,[r,o]=this._arcControlPoints,a=(t-n)/(i-n),h=(0,u.RS)([],e,r,a),l=(0,u.RS)(g,r,o,a),c=(0,u.RS)([],o,s,a),f=(0,u.RS)([],h,l,a),p=(0,u.RS)([],l,c,a),d=(0,u.RS)([],f,p,a);this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this._controlPointsStack.push([p,c]),this.tEndStack.push(t),this.arcEndStack.push(d),this._arcControlPoints[0]=h,this._arcControlPoints[1]=f,this._controlPointsStack.push(this._arcControlPoints)}pop(){super.pop(),this._arcControlPoints=this._controlPointsStack.pop()}interpolate(t){const{curveStart:e,curveEnd:s}=this,[n,i]=this._curveControlPoints;return(0,o.B4)(e,n,i,s,t)}getDeviation2(){const{arcStart:t,arcEnd:e}=this,[s,n]=this._arcControlPoints;return Math.max((0,u.yE)(s,t,e),(0,u.yE)(n,t,e))}}class b extends d{constructor(t,e){const[s]=e.a;super(t,s),this._derivedEllipse=(0,c.SW)(t,e)}pop(){super.pop(),this._tMid=(this.tStart+this.tEnd)/2,this._arcMid=this.interpolate(this._tMid)}splitInHalf(){this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this.tEndStack.push(this._tMid),this.arcEndStack.push(this._arcMid)}interpolate(t){return(0,c.Uk)(this._derivedEllipse,t)}getDeviation2(){return(0,u.yE)(this._arcMid,this.arcStart,this.arcEnd)}}function _(t,e,s,{cx:n,cy:i,radius:r,thetaStart:o,thetaEnd:a,isInvalid:h},{maxDeviation:l,maxSegmentLength:c,maxSegmentsPerCurve:g,minSegmentsPerCurve:p}){if(h)return t.push([...s]),t;const d=2*r,m=[n+r*Math.cos(o),i+r*Math.sin(o)],b=[n+r*Math.cos(a),i+r*Math.sin(a)];(0,u.kb)(e,m)>f&&t.push(m);const _=Math.abs(a-o),y=c>0&&c<d?2*Math.asin(c/d):_,v=l>0&&l<=r?2*Math.acos(1-l/r):_,S=Math.min(y,v),w=Math.min(g,Math.max(p,Math.ceil(Math.abs(_/S)))),C=1/w;for(let e=1;e<w;e++){const s=e*C,h=o*(1-s)+a*s;t.push([n+r*Math.cos(h),i+r*Math.sin(h)])}return t.push(b),(0,u.kb)(s,b)>f&&t.push([...s]),t}function y(t,e,s,n){return new m(e,s).densify(t,n)}function v(t,e,s,n){const i=(0,a.pM)(e,s),[r]=s.c;return _(t,e,r,i,n)}function S(t,e,s,n){const i=(0,l.io)(e,s),[r]=s.a;return _(t,e,r,i,n)}function w(t,e,s,n){const[i,r,o,a,h,l,c]=s.a;return 0===l||0===c?(t.push([...i]),t):new b(e,s).densify(t,n)}function C(t,e,s,n){return(0,h.Xq)(s)?(t.push([...s]),t):(0,h.n1)(s)?y(t,e,s,n):(0,h.aO)(s)?v(t,e,s,n):(0,h.DA)(s)?S(t,e,s,n):w(t,e,s,n)}function k(t,e={}){if(!(0,h.Ed)(t))return t;const s=p(e),n=(0,h.FD)(t),i=[];for(const t of n){const e=[];for(let n=0;n<t.length-1;n++){const i=n+1,r=[...(0,h.yP)(t[n])];0===n&&e.push(r),C(e,r,t[i],s)}i.push(e)}return"curvePaths"in t?{...void 0!==t.hasZ?{hasZ:t.hasZ}:{},...void 0!==t.hasM?{hasM:t.hasM}:{},paths:i,spatialReference:t.spatialReference}:{...void 0!==t.hasZ?{hasZ:t.hasZ}:{},...void 0!==t.hasM?{hasM:t.hasM}:{},rings:i,spatialReference:t.spatialReference}}const A=(0,i.B)(t=>({maxDeviation:0,maxSegmentLength:100*t,maxSegmentsPerCurve:12e3,minSegmentsPerCurve:1}));async function M(t,e,i){const o=new Set(e);return await async function(t,e,i){let r=null;for(const o of t)if(o&&(0,h.Ed)(o)&&null==o.spatialReference.xyTolerance&&(0,h.V8)(o,e)){const t=o.spatialReference;if(!t)throw new n.A("geometry:missing-spatial-reference","Geometry contains an unsupported curve type, but it cannot be densified because it has no spatial reference.");const e=x(t);if(i.has(e))o.spatialReference=i.get(e);else{r||(r=await Promise.all([s.e(6042),s.e(1878),s.e(8885),s.e(5756),s.e(3299),s.e(6312)]).then(s.bind(s,78125)));const a=r.fromSpatialReference(t),h=a?.getTolerance();if(null==h)throw new n.A("geometry:missing-tolerance","Geometry contains an unsupported curve type, but it cannot be densified because the tolerance of its spatial reference is unknown. Set the `xyTolerance` property of the spatial reference.");const l=o.spatialReference.clone();l.read({xyTolerance:h}),o.spatialReference=l,i.set(e,l)}}}(t,o,i),t.map(t=>{if(!t||!(0,h.Ed)(t))return t;const s=t.spatialReference.xyTolerance;if(null==s)return t;const n=A(s);return(0,r.rS)(function(t,e,s){if(!(0,h.Ed)(t))return t;const n=new Set(e),i=p(s),r=(0,h.FD)(t),o=[];let a=!1;for(const t of r){const e=[];for(let s=0;s<t.length-1;s++){const r=s+1,o=[...(0,h.yP)(t[s])];0===s&&e.push(o);const l=t[r];(0,h.Xq)(l)?e.push([...l]):(0,h.n1)(l)&&!n.has("cubic-bezier")?y(e,o,l,i):(0,h.aO)(l)&&!n.has("circular-arc")?v(e,o,l,i):(0,h.DA)(l)&&!n.has("elliptic-arc")?S(e,o,l,i):(0,h.wY)(l)&&!n.has("elliptic-arc")?w(e,o,l,i):(e.push((0,h.tk)(l)),a=!0)}o.push(e)}return"curvePaths"in t?{...void 0!==t.hasZ?{hasZ:t.hasZ}:{},...void 0!==t.hasM?{hasM:t.hasM}:{},spatialReference:t.spatialReference,...a?{curvePaths:o}:{paths:o}}:{hasZ:t.hasZ,hasM:t.hasM,spatialReference:t.spatialReference,...a?{curveRings:o}:{rings:o}}}(t,e,n))})}function x(t){if(null!=t.wkid)return`${t.wkid}`;if(null!=t.wkt)return t.wkt;const e="toJSON"in t&&"function"==typeof t.toJSON?t.toJSON():t;return JSON.stringify(e)}},17136(t,e,s){s.d(e,{Y_:()=>R,O7:()=>E,el:()=>x});var n=s(92602),i=s(69052),r=s(49186),o=s(53966),a=s(39829),h=s(82799),l=s(16930),c=s(80754),u=s(21325),f=s(28735),g=s(52006),p=s(31411),d=s(11254),m=s(60408),b=s(65864),_=s(2272),y=s(84952),v=s(92300);const S=()=>o.A.getLogger("esri.geometry.support.normalizeUtils");function w(t){return"polygon"===t[0].type}function C(t){return"polyline"===t[0].type}function k(t,e,s){const n=1e6;if(e){const e=(0,g.Ed)(t)?(0,p.GS)(t,{maxSegmentLength:n}):function(t,e){if(!(t instanceof h.A||t instanceof a.A)){const t="straightLineDensify: the input geometry is neither polyline nor polygon";throw S().error(t),new r.A("internal:geometry",t)}const s=(0,c.r8)(t),n=[];for(const t of s){const s=[];n.push(s),s.push([t[0][0],t[0][1]]);for(let n=0;n<t.length-1;n++){const i=t[n][0],r=t[n][1],o=t[n+1][0],a=t[n+1][1],h=Math.sqrt((o-i)*(o-i)+(a-r)*(a-r)),l=(a-r)/h,c=(o-i)/h,u=h/e;if(u>1){for(let t=1;t<=u-1;t++){const n=t*e,o=c*n+i,a=l*n+r;s.push([o,a])}const t=(h+Math.floor(u-1)*e)/2,n=c*t+i,o=l*t+r;s.push([n,o])}s.push([o,a])}}return function(t){return"polygon"===t.type}(t)?new a.A({rings:n,spatialReference:t.spatialReference}):new h.A({paths:n,spatialReference:t.spatialReference})}(t,n);t=(0,f.ci)(e,!0)}return s&&(t=(0,c.kS)(t,s)),t}function A(t,e,s){if(Array.isArray(t)){const n=t[0];if(n>e){const s=(0,c.kd)(n,e);t[0]=n+s*(-2*e)}else if(n<s){const e=(0,c.kd)(n,s);t[0]=n+e*(-2*s)}}else{const n=t.x;if(n>e){const s=(0,c.kd)(n,e);t=t.clone().offset(s*(-2*e),0)}else if(n<s){const e=(0,c.kd)(n,s);t=t.clone().offset(e*(-2*s),0)}}return t}function M(t,e){let s=-1;for(let n=0;n<e.cutIndexes.length;n++){const i=e.cutIndexes[n],r=e.geometries[n],o=(0,c.r8)(r);for(let t=0;t<o.length;t++){const e=o[t];e.some(s=>{if(s[0]<180)return!0;{let s=0;for(let t=0;t<e.length;t++){const n=e[t][0];s=n>s?n:s}s=Number(s.toFixed(9));const n=-360*(0,c.kd)(s,180);for(let s=0;s<e.length;s++){const e=r.getPoint(t,s);r.setPoint(t,s,e.clone().offset(n,0))}return!0}})}if(i===s){if(w(t))for(const e of(0,c.r8)(r))t[i]=t[i].addRing(e);else if(C(t))for(const e of(0,c.r8)(r))t[i]=t[i].addPath(e)}else s=i,t[i]=r}return t}async function x(t,e,s){if(!Array.isArray(t))return x([t],e);e&&"string"!=typeof e&&S().warn("normalizeCentralMeridian()","The url object is deprecated, use the url string instead");const i="string"==typeof e?e:e?.url??n.A.geometryServiceUrl;let r,o,l,g,p,w,C,E,P=0;const R=[],N=[];for(const e of t)if(null!=e)if(r||(r=e.spatialReference,o=(0,u.Vp)(r),l=r.isWebMercator,w=l?102100:4326,g=c.j7[w].maxX,p=c.j7[w].minX,C=c.j7[w].plus180Line,E=c.j7[w].minus180Line),o)if("mesh"===e.type)N.push(e);else if("point"===e.type)N.push(A(e.clone(),g,p));else if("multipoint"===e.type){const t=e.clone();t.points=t.points.map(t=>A(t,g,p)),N.push(t)}else if("extent"===e.type){const t=e.clone()._normalize(!1,!1,o);N.push(t.rings?new a.A(t):t)}else if(e.extent){const t=e.extent,s=(0,c.kd)(t.xmin,p)*(2*g);let n=0===s?e.clone():(0,c.kS)(e.clone(),s);t.offset(s,0);let{xmin:i,xmax:r}=t;i=Number(i.toFixed(9)),r=Number(r.toFixed(9)),t.intersects(C)&&r!==g?(P=r>P?r:P,n=k(n,l),R.push(n),N.push("cut")):t.intersects(E)&&i!==p?(P=r*(2*g)>P?r*(2*g):P,n=k(n,l,360),R.push(n),N.push("cut")):N.push(n)}else N.push(e.clone());else N.push(e);else N.push(e);let L=(0,c.kd)(P,g),I=-90;const q=L,O=new h.A;for(;L>0;){const t=360*L-180;O.addPath([[t,I],[t,-1*I]]),I*=-1,L--}if(R.length>0&&q>0){const e=M(R,await async function(t,e,s,n){const i=(0,_.Dl)(t),r=e[0].spatialReference,o={...n,responseType:"json",query:{...i.query,f:"json",sr:(0,u.YX)(r),target:JSON.stringify({geometryType:(0,m.$B)(e[0]),geometries:e}),cutter:JSON.stringify(s)}},a=await(0,d.A)(i.path+"/cut",o),{cutIndexes:h,geometries:l=[]}=a.data;return{cutIndexes:h,geometries:l.map(t=>{const e=(0,b.rS)(t);return e.spatialReference=r,e})}}(i,R,O,s)),n=[],r=[];for(let s=0;s<N.length;s++){const i=N[s];if("cut"!==i)r.push(i);else{const i=e.shift(),o=t[s];null!=o&&"polygon"===o.type&&o.rings&&o.rings.length>1&&i.rings.length>=o.rings.length?(n.push(i),r.push("simplify")):r.push(l?(0,f.Gh)(i):i)}}if(!n.length)return r;const o=await async function(t,e,s){const n="string"==typeof t?(0,y.An)(t):t,i=e[0].spatialReference,r=(0,m.$B)(e[0]),o={...s,query:{...n.query,f:"json",sr:(0,u.YX)(i),geometries:JSON.stringify((0,v.X)(e))}},{data:a}=await(0,d.A)(n.path+"/simplify",o);return(0,v.V)(a.geometries,r,i)}(i,n,s),a=[];for(let t=0;t<r.length;t++){const e=r[t];"simplify"!==e?a.push(e):a.push(l?(0,f.Gh)(o.shift()):o.shift())}return a}const T=[];for(let t=0;t<N.length;t++){const e=N[t];if("cut"!==e)T.push(e);else{const t=R.shift();T.push(!0===l?(0,f.Gh)(t):t)}}return T}function E(t,e,s){const n=(0,u.Vp)(s);if(null==n)return t;const[i,r]=n.valid,o=2*r;let a=0,h=0;e>r?a=Math.ceil(Math.abs(e-r)/o):e<i&&(a=-Math.ceil(Math.abs(e-i)/o)),t>r?h=Math.ceil(Math.abs(t-r)/o):t<i&&(h=-Math.ceil(Math.abs(t-i)/o));let l=t+(a-h)*o;const c=l-e;return c>r?l-=o:c<i&&(l+=o),l}function P(t){const e=(0,u.Vp)(t);if(null==e)return null;const[s,n]=e.valid;return new i.hr(s,n)}const R=P(l.A.WGS84);P(l.A.WebMercator)},80754(t,e,s){s.d(e,{j7:()=>a,kS:()=>l,kd:()=>h,r8:()=>c});var n=s(82799),i=s(16930),r=s(60408),o=s(52006);const a={102100:{maxX:20037508.342788905,minX:-20037508.342788905,plus180Line:new n.A({paths:[[[20037508.342788905,-20037508.342788905],[20037508.342788905,20037508.342788905]]],spatialReference:i.A.WebMercator}),minus180Line:new n.A({paths:[[[-20037508.342788905,-20037508.342788905],[-20037508.342788905,20037508.342788905]]],spatialReference:i.A.WebMercator})},4326:{maxX:180,minX:-180,plus180Line:new n.A({paths:[[[180,-180],[180,180]]],spatialReference:i.A.WGS84}),minus180Line:new n.A({paths:[[[-180,-180],[-180,180]]],spatialReference:i.A.WGS84})}};function h(t,e){return Math.ceil((t-e)/(2*e))}function l(t,e){if((0,o.Ed)(t))for(const s of function(t){return(0,r.Bi)(t)?t.curveRings:t.curvePaths}(t))for(const t of s){if((0,o.aO)(t)){const[s,n]=t.c;s[0]+=e,n[0]+=e;continue}if((0,o.FG)(t)){const[s,n]=t.a;s[0]+=e,n[0]+=e;continue}if((0,o.n1)(t)){const[s,n,i]=t.b;s[0]+=e,n[0]+=e,i[0]+=e;continue}t[0]+=e}for(const s of c(t))for(const t of s)t[0]+=e;return t}function c(t){return(0,r.Bi)(t)?t.rings:t.paths}},50498(t,e,s){s.d(e,{Ye:()=>u,gy:()=>c,iI:()=>g,yR:()=>f});var n=s(66552),i=s(5443),r=s(91075),o=s(48526),a=s(86738),h=s(39829),l=s(82799);const c=(0,n.O)()({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon"}),u=(0,n.O)()({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryEnvelope:"extent",mesh:"mesh"}),f={base:r.A,key:"type",typeMap:{extent:i.A,multipoint:o.A,point:a.A,polyline:l.A,polygon:h.A}},g=new n.J({esriGeometryBezier3Curve:"cubic-bezier",esriGeometryCircularArc:"circular-arc",esriGeometryEllipticArc:"elliptic-arc"},{ignoreUnknown:!0})},73133(t,e,s){s.d(e,{j:()=>n});const n=(0,s(66552).O)()({esriTimeUnitsMilliseconds:"milliseconds",esriTimeUnitsSeconds:"seconds",esriTimeUnitsMinutes:"minutes",esriTimeUnitsHours:"hours",esriTimeUnitsDays:"days",esriTimeUnitsWeeks:"weeks",esriTimeUnitsMonths:"months",esriTimeUnitsYears:"years",esriTimeUnitsDecades:"decades",esriTimeUnitsCenturies:"centuries",esriTimeUnitsUnknown:"unknown"})}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[5816],{68197(t,e,s){s.d(e,{A:()=>l});var n=s(40876),i=s(4576),r=s(34727),o=s(56507);function a(t){return(0,r.qE)((0,o.Vr)(t),0,255)}function h(t,e){const s=t.toString(16).padStart(2,"0");return e?s.slice(0,1):s}class l{static blendColors(t,e,s,n=new l){return n.r=Math.round(t.r+(e.r-t.r)*s),n.g=Math.round(t.g+(e.g-t.g)*s),n.b=Math.round(t.b+(e.b-t.b)*s),n.a=t.a+(e.a-t.a)*s,n._sanitize()}static fromRgb(t,e){const s=(0,n.lT)(t);return s?l.fromArray(s,e):null}static fromHex(t,e=new l){const s=(0,n.oW)(t);return s?l.fromArray(s,e):null}static fromArray(t,e=new l){return e._set(Number(t[0]),Number(t[1]),Number(t[2]),Number(t[3])),isNaN(e.a)&&(e.a=1),e._sanitize()}static fromString(t,e){const s=(0,n.Eq)(t);return s?l.fromArray(s,e):null}static fromJSON(t){return null!=t?new l([t[0],t[1],t[2],(t[3]??255)/255]):void 0}toUnitRGB(){return[this.r/255,this.g/255,this.b/255]}toUnitRGBA(t){return t??=[0,0,0,0],t[0]=this.r/255,t[1]=this.g/255,t[2]=this.b/255,t[3]=null!=this.a?this.a:1,t}constructor(t){this.r=255,this.g=255,this.b=255,this.a=1,t&&this.setColor(t)}get isBright(){return.299*this.r+.587*this.g+.114*this.b>=127}setColor(t){if("string"==typeof t)l.fromString(t,this);else if((0,i.yc)(t))l.fromArray(t,this);else{const e=t;this._set(e.r??0,e.g??0,e.b??0,e.a??1),t instanceof l||this._sanitize()}return this}toRgb(){return[this.r,this.g,this.b]}toRgba(){return[this.r,this.g,this.b,this.a]}toHex(t){const e=t?.capitalize??!1,s=t?.digits??6,n=3===s||4===s,i=4===s||8===s,r=`#${h(this.r,n)}${h(this.g,n)}${h(this.b,n)}${i?h(Math.round(255*this.a),n):""}`;return e?r.toUpperCase():r}toCss(t=!1){const e=this.r+", "+this.g+", "+this.b;return t?`rgba(${e}, ${this.a})`:`rgb(${e})`}toString(){return this.toCss(!0)}toJSON(){return this.toArray()}toArray(t=0){const e=a(this.r),s=a(this.g),n=a(this.b);return 0===t||1!==this.a?[e,s,n,a(255*this.a)]:[e,s,n]}clone(){return new l(this.toRgba())}hash(){return this.r<<24|this.g<<16|this.b<<8|255*this.a}equals(t){return null!=t&&t.r===this.r&&t.g===this.g&&t.b===this.b&&t.a===this.a}_sanitize(){return this.r=(0,n.c1)(this.r),this.g=(0,n.c1)(this.g),this.b=(0,n.c1)(this.b),this.a=(0,n.G1)(this.a),this}_set(t,e,s,n){this.r=t,this.g=e,this.b=s,this.a=n}}l.prototype.declaredClass="esri.Color"},40876(t,e,s){s.d(e,{Eq:()=>g,G1:()=>d,TS:()=>r,Tf:()=>_,V6:()=>i,Vm:()=>p,ay:()=>h,c1:()=>m,c4:()=>o,j5:()=>l,lT:()=>u,oW:()=>c,xV:()=>v});const n={transparent:[0,0,0,0],black:[0,0,0,1],silver:[192,192,192,1],gray:[128,128,128,1],white:[255,255,255,1],maroon:[128,0,0,1],red:[255,0,0,1],purple:[128,0,128,1],fuchsia:[255,0,255,1],green:[0,128,0,1],lime:[0,255,0,1],olive:[128,128,0,1],yellow:[255,255,0,1],navy:[0,0,128,1],blue:[0,0,255,1],teal:[0,128,128,1],aqua:[0,255,255,1],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],blanchedalmond:[255,235,205,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],oldlace:[253,245,230,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],rebeccapurple:[102,51,153,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],whitesmoke:[245,245,245,1],yellowgreen:[154,205,50,1]};function i(t){return!!n[t]||!!n[t.toLowerCase()]}function r(t){return n[t]??n[t.toLowerCase()]}function o(t){return[...r(t)]}function a(t,e,s){s<0&&++s,s>1&&--s;const n=6*s;return n<1?t+(e-t)*n:2*s<1?e:3*s<2?t+(e-t)*(2/3-s)*6:t}function h(t,e,s,n=1){const i=(t%360+360)%360/360,r=s<=.5?s*(e+1):s+e-s*e,o=2*s-r;return[Math.round(255*a(o,r,i+1/3)),Math.round(255*a(o,r,i)),Math.round(255*a(o,r,i-1/3)),n]}function l(t){const e=t.length>5,s=e?8:4,n=(1<<s)-1,i=e?1:17,r=e?9===t.length:5===t.length;let o=Number("0x"+t.slice(1));if(isNaN(o))return null;const a=[0,0,0,1];let h;return r&&(h=o&n,o>>=s,a[3]=i*h/255),h=o&n,o>>=s,a[2]=i*h,h=o&n,o>>=s,a[1]=i*h,h=o&n,o>>=s,a[0]=i*h,a}function c(t){if(!t.startsWith("#")||isNaN(Number(`0x${t.slice(1)}`)))return null;switch(t.length){case 4:case 5:{const e=parseInt(t.slice(1,2),16),s=parseInt(t.slice(2,3),16),n=parseInt(t.slice(3,4),16),i=4===t.length?15:parseInt(t.slice(4),16);return[e+16*e,s+16*s,n+16*n,(i+16*i)/255]}case 7:case 9:return[parseInt(t.slice(1,3),16),parseInt(t.slice(3,5),16),parseInt(t.slice(5,7),16),(7===t.length?255:parseInt(t.slice(7),16))/255];default:return null}}function u(t){const e=t.toLowerCase().match(/^(rgba?|hsla?)\(([\s.\-,%0-9]+)\)/);if(e){const t=e[2].split(/\s*,\s*/),s=e[1];if("rgb"===s&&3===t.length||"rgba"===s&&4===t.length){if(t[0].endsWith("%")){const e=t.map(t=>2.56*parseFloat(t));return 4===t.length&&(e[3]=parseFloat(t[3])),f(e)}return f(t.map(t=>parseFloat(t)))}if("hsl"===s&&3===t.length||"hsla"===s&&4===t.length)return h(parseFloat(t[0]),parseFloat(t[1])/100,parseFloat(t[2])/100,parseFloat(t[3]??"1"))}return null}function f(t){return t[0]=m(t[0]),t[1]=m(t[1]),t[2]=m(t[2]),t[3]=4===t.length?d(t[3]):1,t}function g(t){let e=i(t)?r(t):null;return e??=u(t),e??=c(t),e}function p(t){const e=g(t);return null!=e?[e[0]/255,e[1]/255,e[2]/255,e[3]]:null}function d(t){return b(t,0,1)}function m(t){return Math.round(b(t,0,255))}function b(t,e,s){return t=Number(t),isNaN(t)?s:t<e?e:t>s?s:t}const _=2.2,y=1/_;function v(t){return t**y}},7762(t,e,s){s.d(e,{A:()=>q});var n,i=s(5482),r=s(98291),o=s(4576),a=s(65529),h=s(36563),l=s(4718),c=s(53966),u=s(93687),f=s(76030),g=s(56507),p=s(62788),d=s(10107),m=s(7695),b=s(64108),_=s(95488),y=s(12195);class v{constructor(){this.target=null,this.cancellable=!1,this.defaultPrevented=!1,this.item=void 0,this.type=void 0}preventDefault(){this.cancellable&&(this.defaultPrevented=!0)}reset(t){this.defaultPrevented=!1,this.item=t}}class S{constructor(t,e,s,n,i){this.target=t,this.added=e,this.removed=s,this.start=n,this.deleteCount=i}}const w=new u.A(()=>new v,void 0,t=>{t.item=null,t.target=null,t.defaultPrevented=!1,t.cancellable=!1});function C(t){t&&"object"==typeof t&&"destroy"in t&&"function"==typeof t.destroy&&t.destroy()}function k(t){return t?t instanceof I?t.toArray():t.length?Array.prototype.slice.apply(t):[]:[]}function A(t){if(t?.length)return t[0]}function M(t,e,s,n){const i=Math.min(t.length-s,e.length-n);let r=0;for(;r<i&&t[s+r]===e[n+r];)r++;return r}function x(t,e,s,n){e&&e.forEach((e,i,r)=>{t.push(e),x(t,s.call(n,e,i,r),s,n)})}const E=new Set,P=new Set,R=new Set,N=new Map;let L=0,I=n=class extends a.nJ{static ofType(t){if(!t)return n;if(N.has(t))return N.get(t);let e=null;if("function"==typeof t)e=t.prototype.declaredClass;else if(t.base)e=t.base.prototype.declaredClass;else for(const s in t.typeMap){const n=t.typeMap[s].prototype.declaredClass;e?e+=` | ${n}`:e=n}let s=class extends n{};return(0,i.Cg)([(0,m.u)({Type:t,ensureType:"function"==typeof t?(0,g.dp)(t):(0,g.aq)(t)})],s.prototype,"itemType",void 0),s=(0,i.Cg)([(0,b.$)(`esri.core.Collection<${e}>`)],s),N.set(t,s),s}static isCollection(t){return null!=t&&t instanceof n}constructor(t){super(t),this._chgListeners=[],this._notifications=null,this._updating=!1,this._timer=null,this._observable=new _.I,this._length=0,this._items=[],Object.defineProperty(this,"uid",{value:L++})}normalizeCtorArgs(t){return t?(0,o.yc)(t)||t instanceof n?{items:t}:t:{}}destroy(){this._removeAllRaw(),this._timer&&this._timer.remove(),super.destroy(),this._notifications=null}*[Symbol.iterator](){yield*this.items}get length(){return this._length}set length(t){t>this._length?c.A.getLogger(this).error("#length=","Cannot increase the length of the collection by assigning to the length property."):this.splice(t,Math.max(0,this._length-t))}get items(){return(0,p.gc)(this._observable),this._items}set items(t){this._emitBeforeChanges(1)||(this._splice(0,this.length,k(t)),this._emitAfterChanges(1))}hasEventListener(t){return!this.destroyed&&("change"===t?this._chgListeners.length>0:super.hasEventListener(t))}on(t,e){if(this.destroyed)return(0,h.hA)();if("change"===t){const t=this._chgListeners,s={removed:!1,callback:e};return t.push(s),this._notifications&&this._notifications.push({listeners:t.slice(),items:this._items.slice(),changes:[]}),(0,h.hA)(()=>{s.removed=!0,t.splice(t.indexOf(s),1)})}return super.on(t,e)}once(t,e){const s="deref"in e?()=>e.deref():()=>e,n=this.on(t,t=>{s()?.call(null,t),n.remove()});return n}add(t,e){if((0,p.gc)(this._observable),this._emitBeforeChanges(1))return this;const s=this.getNextIndex(e??null);return this._splice(s,0,[t]),this._emitAfterChanges(1),this}addMany(t,e=this._items.length){if((0,p.gc)(this._observable),!t?.length)return this;if(this._emitBeforeChanges(1))return this;const s=this.getNextIndex(e);return this._splice(s,0,k(t)),this._emitAfterChanges(1),this}at(t){if((0,p.gc)(this._observable),(t=Math.trunc(t)||0)<0&&(t+=this.length),!(t<0||t>=this.length))return this._items[t]}removeAll(){if((0,p.gc)(this._observable),!this.length||this._emitBeforeChanges(2))return[];const t=this._removeAllRaw();return this._emitAfterChanges(2),t}_removeAllRaw(){return 0===this.length?[]:this._splice(0,this.length)||[]}clone(){return(0,p.gc)(this._observable),this._createNewInstance({items:this._items.map(l.o8)})}concat(...t){(0,p.gc)(this._observable);const e=t.map(k);return this._createNewInstance({items:this._items.concat(...e)})}drain(t,e){if((0,p.gc)(this._observable),!this.length||this._emitBeforeChanges(2))return;const s=this._splice(0,this.length),n=s.length;for(let i=0;i<n;i++)t.call(e,s[i],i,s);this._emitAfterChanges(2)}destroyAll(){this.drain(C)}destroyMany(t){const e=this.removeMany(t);return e.forEach(C),e}every(t,e){return(0,p.gc)(this._observable),this._items.every(t,e)}filter(t,e){(0,p.gc)(this._observable);const s=2===arguments.length?this._items.filter(t,e):this._items.filter(t);return this._createNewInstance({items:s})}find(t,e){return(0,p.gc)(this._observable),this._items.find(t,e)}findIndex(t,e){return(0,p.gc)(this._observable),this._items.findIndex(t,e)}flatten(t,e){(0,p.gc)(this._observable);const s=[];return x(s,this,t,e),new n(s)}forEach(t,e){return(0,p.gc)(this._observable),this._items.forEach(t,e)}getItemAt(t){return(0,p.gc)(this._observable),this._items[t]}getNextIndex(t){(0,p.gc)(this._observable);const e=this.length;return(t=t??e)<0?t=0:t>e&&(t=e),t}includes(t,e=0){return(0,p.gc)(this._observable),this._items.includes(t,e)}indexOf(t,e=0){return(0,p.gc)(this._observable),this._items.indexOf(t,e)}join(t=","){return(0,p.gc)(this._observable),this._items.join(t)}lastIndexOf(t,e=this.length-1){return(0,p.gc)(this._observable),this._items.lastIndexOf(t,e)}map(t,e){(0,p.gc)(this._observable);const s=this._items.map(t,e);return new n({items:s})}reorder(t,e=this.length-1){(0,p.gc)(this._observable);const s=this.indexOf(t);if(-1!==s){if(e<0?e=0:e>=this.length&&(e=this.length-1),s!==e){if(this._emitBeforeChanges(4))return t;this._splice(s,1),this._splice(e,0,[t]),this._emitAfterChanges(4)}return t}}pop(){if((0,p.gc)(this._observable),!this.length||this._emitBeforeChanges(2))return;const t=A(this._splice(this.length-1,1));return this._emitAfterChanges(2),t}push(...t){return(0,p.gc)(this._observable),this._emitBeforeChanges(1)||(this._splice(this.length,0,t),this._emitAfterChanges(1)),this.length}reduce(t,e){(0,p.gc)(this._observable);const s=this._items;return 2===arguments.length?s.reduce(t,e):s.reduce(t)}reduceRight(t,e){(0,p.gc)(this._observable);const s=this._items;return 2===arguments.length?s.reduceRight(t,e):s.reduceRight(t)}remove(t){return(0,p.gc)(this._observable),this.removeAt(this.indexOf(t))}removeAt(t){if((0,p.gc)(this._observable),t<0||t>=this.length||this._emitBeforeChanges(2))return;const e=A(this._splice(t,1));return this._emitAfterChanges(2),e}removeMany(t){if((0,p.gc)(this._observable),!t?.length||this._emitBeforeChanges(2))return[];const e=t instanceof n?t.toArray():t,s=this._items,i=[],r=e.length;for(let t=0;t<r;t++){const n=e[t],r=s.indexOf(n);if(r>-1){const n=1+M(e,s,t+1,r+1),o=this._splice(r,n);o&&o.length>0&&i.push.apply(i,o),t+=n-1}}return this._emitAfterChanges(2),i}reverse(){if((0,p.gc)(this._observable),this._emitBeforeChanges(4))return this;const t=this._splice(0,this.length);return t&&(t.reverse(),this._splice(0,0,t)),this._emitAfterChanges(4),this}shift(){if((0,p.gc)(this._observable),!this.length||this._emitBeforeChanges(2))return;const t=A(this._splice(0,1));return this._emitAfterChanges(2),t}slice(t=0,e=this.length){return(0,p.gc)(this._observable),this._createNewInstance({items:this._items.slice(t,e)})}some(t,e){return(0,p.gc)(this._observable),this._items.some(t,e)}sort(t){if((0,p.gc)(this._observable),!this.length||this._emitBeforeChanges(4)||!this._requiresSort(t))return this;const e=this._splice(0,this.length);return arguments.length?e.sort(t):e.sort(),this._splice(0,0,e),this._emitAfterChanges(4),this}_requiresSort(t=(t,e)=>t===e?0:t<e?-1:1){const e=this.length-1;for(let s=0;s<e;s++)if(t(this.items[s],this.items[s+1])>0)return!0;return!1}splice(t,e,...s){(0,p.gc)(this._observable),1===arguments.length&&(e=this.length),e??=0;const n=(e?2:0)|(s.length?1:0);if(this._emitBeforeChanges(n))return[];const i=this._splice(t,e,s)||[];return this._emitAfterChanges(n),i}toArray(){return(0,p.gc)(this._observable),this._items.slice()}toJSON(t){return(0,p.gc)(this._observable),this.toArray().map(e=>(0,y.W)(e)?e.toJSON(t):e)}toLocaleString(){return(0,p.gc)(this._observable),this._items.toLocaleString()}toString(){return(0,p.gc)(this._observable),this._items.toString()}unshift(...t){return(0,p.gc)(this._observable),!t.length||this._emitBeforeChanges(1)||(this._splice(0,0,t),this._emitAfterChanges(1)),this.length}_createNewInstance(t){return new this.constructor(t)}_splice(t,e,s){const n=this._items,i=this.itemType;let r,o;if(!this._notifications&&this.hasEventListener("change")&&(this._notifications=[{listeners:this._chgListeners.slice(),items:this._items.slice(),changes:[]}],this._timer&&this._timer.remove(),this._updating=!0,this._timer=(0,f._)(()=>this._dispatchChange())),t<0&&(t+=this.length),e){if(o=n.splice(t,e),this.hasEventListener("before-remove")){const e=w.acquire();e.target=this,e.cancellable=!0;for(let s=0,i=o.length;s<i;s++)r=o[s],e.reset(r),this.emit("before-remove",e),e.defaultPrevented&&(o.splice(s,1),n.splice(t,0,r),t+=1,s-=1,i-=1);w.release(e)}if(this._length=this._items.length,this.hasEventListener("after-remove")){const t=w.acquire();t.target=this,t.cancellable=!1;const e=o.length;for(let s=0;s<e;s++)t.reset(o[s]),this.emit("after-remove",t);w.release(t)}}if(s?.length){if(i){const t=[];for(const e of s){const s=i.ensureType(e);null==s&&null!=e||t.push(s)}s=t}const e=this.hasEventListener("before-add"),r=this.hasEventListener("after-add"),o=t===this.length;if(e||r){const i=w.acquire();i.target=this,i.cancellable=!0;const a=w.acquire();a.target=this,a.cancellable=!1;for(const h of s)e?(i.reset(h),this.emit("before-add",i),i.defaultPrevented||(o?n.push(h):n.splice(t++,0,h),this._length=n.length,r&&(a.reset(h),this.emit("after-add",a)))):(o?n.push(h):n.splice(t++,0,h),this._length=n.length,a.reset(h),this.emit("after-add",a));w.release(a),w.release(i)}else{if(o)for(const t of s)n.push(t);else n.splice(t,0,...s);this._length=n.length}}if((s?.length||o?.length)&&this._notifyChangeEvent(s,o),this.hasEventListener("after-splice")){const n=new S(this,s,o,t,e);this.emit("after-splice",n)}return o}_emitBeforeChanges(t){let e=!1;if(this.hasEventListener("before-changes")){const s=w.acquire();s.target=this,s.cancellable=!0,s.type=t,this.emit("before-changes",s),e=s.defaultPrevented,w.release(s)}return e}_emitAfterChanges(t){if(this.hasEventListener("after-changes")){const e=w.acquire();e.target=this,e.cancellable=!1,e.type=t,this.emit("after-changes",e),w.release(e)}this._observable.notify()}_notifyChangeEvent(t,e){this.hasEventListener("change")&&this._notifications&&this._notifications[this._notifications.length-1].changes.push({added:t,removed:e})}get updating(){return this._updating}_dispatchChange(){if(this._timer&&(this._timer.remove(),this._timer=null),this._updating=!1,!this._notifications)return;const t=this._notifications;this._notifications=null;for(const e of t){const t=e.changes;E.clear(),P.clear(),R.clear();for(const{added:e,removed:s}of t){if(e)if(0===R.size&&0===P.size)for(const t of e)E.add(t);else for(const t of e)P.has(t)?(R.add(t),P.delete(t)):R.has(t)||E.add(t);if(s)if(0===R.size&&0===E.size)for(const t of s)P.add(t);else for(const t of s)E.has(t)?E.delete(t):(R.delete(t),P.add(t))}const s=r.A.acquire();E.forEach(t=>{s.push(t)});const n=r.A.acquire();P.forEach(t=>{n.push(t)});const i=this._items,o=e.items,a=r.A.acquire();if(R.forEach(t=>{o.indexOf(t)!==i.indexOf(t)&&a.push(t)}),e.listeners&&(s.length||n.length||a.length)){const t={target:this,added:s,removed:n,moved:a},i=e.listeners.length;for(let s=0;s<i;s++){const n=e.listeners[s];n.removed||n.callback.call(this,t)}}r.A.release(s),r.A.release(n),r.A.release(a)}E.clear(),P.clear(),R.clear()}};(0,i.Cg)([(0,d.MZ)()],I.prototype,"_updating",void 0),(0,i.Cg)([(0,d.MZ)()],I.prototype,"_length",void 0),(0,i.Cg)([(0,d.MZ)()],I.prototype,"length",null),(0,i.Cg)([(0,d.MZ)()],I.prototype,"items",null),(0,i.Cg)([(0,d.MZ)({readOnly:!0})],I.prototype,"updating",null),I=n=(0,i.Cg)([(0,b.$)("esri.core.Collection")],I);const q=I},69052(t,e,s){s.d(e,{hr:()=>i,ie:()=>h,uC:()=>a});var n=s(34727);class i{constructor(t,e){this.min=t,this.max=e,this.range=e-t}normalize(t,e=0,s=!1){return r(this.range,this.min,this.max,t,e,s)}clamp(t,e=0){return(0,n.qE)(t-e,this.min,this.max)+e}monotonic(t,e,s){return t<e?e:e+o(this.range,t-e,s)}minimalMonotonic(t,e,s){return r(this.range,t,t+this.range,e,s)}center(t,e,s){return e=this.monotonic(t,e,s),this.normalize((t+e)/2,s)}diff(t,e,s){return this.monotonic(t,e,s)-t}shortestSignedDiff(t,e){t=this.normalize(t);const s=(e=this.normalize(e))-t,n=e<t?this.minimalMonotonic(t,e)-t:e-this.minimalMonotonic(e,t);return Math.abs(s)<Math.abs(n)?s:n}contains(t,e,s){return e=this.minimalMonotonic(t,e),(s=this.minimalMonotonic(t,s))>t&&s<e}}function r(t,e,s,n,i=0,r=!1){return(n-=i)<e?n+=o(t,e-n):n>s&&(n-=o(t,n-s)),r&&n===s&&(n=e),n+i}function o(t,e,s=0){return Math.ceil((e-s)/t)*t+s}const a=new i(0,2*Math.PI),h=(new i(-Math.PI,Math.PI),new i(0,360))},4902(t,e,s){s.d(e,{s:()=>o});var n=s(5482),i=s(64108);let r=0;const o=t=>{const e=t;let s=class extends e{constructor(...t){super(...t),Object.defineProperty(this,"uid",{writable:!1,configurable:!1,value:Date.now().toString(16)+"-object-"+r++})}};return s=(0,n.Cg)([(0,i.$)("esri.core.Identifiable")],s),s};o(class{})},7695(t,e,s){function n(t){return(e,s)=>{e[s]=t}}s.d(e,{u:()=>n})},56512(t,e,s){function n(t){let e,s,n=[],i=!1;return function(...r){return i&&e===this&&function(t,e){if(t.length!==e.length)return!1;for(let s=0;s<t.length;++s)if(t[s]!==e[s])return!1;return!0}(r,n)||(s=t.apply(this,r),e=this,n=r,i=!0),s}}s.d(e,{B:()=>n})},36708(t,e,s){s.d(e,{C_:()=>f,OH:()=>d,Vh:()=>m,on:()=>u,pc:()=>b,wB:()=>h,z7:()=>l});var n=s(37955),i=s(36563),r=s(97768),o=s(17676),a=s(14012);function h(t,e,s={}){return c(t,e,s,g)}function l(t,e,s={}){return c(t,e,s,p)}function c(t,e,s={},n){let i=null;const o=s.once?(t,s)=>{n(t)&&((0,r.xt)(i),e(t,s))}:(t,s)=>{n(t)&&e(t,s)};if(i=(0,a.Cn)(t,o,s.sync,s.equals),s.initial){const e=t();o(e,e)}return i}function u(t,e,s,o={}){let a=null,l=null,c=null;function u(){a&&l&&(l.remove(),o.onListenerRemove?.(a),a=null,l=null)}function f(t){o.once&&o.once&&(0,r.xt)(c),s(t)}const g=h(t,(t,s)=>{u(),(0,n.wb)(t)&&(a=t,l=(0,n.on)(t,e,f),o.onListenerAdd?.(t))},{sync:o.sync,initial:!0});return c=(0,i.hA)(()=>{g.remove(),u()}),c}function f(t,e){return function(t,e,s){if((0,o.G4)(s))return Promise.reject((0,o.NK)());const n=t();if(e?.(n))return Promise.resolve(n);let a=null;function h(){a=(0,r.xt)(a)}return new Promise((n,r)=>{a=(0,i.vE)([(0,o.u7)(s,()=>{h(),r((0,o.NK)())}),c(t,t=>{h(),n(t)},{sync:!1,once:!0},e??g)])})}(t,p,e)}function g(t){return!0}function p(t){return!!t}s(80559);const d={sync:!0},m={initial:!0},b={sync:!0,initial:!0}},90629(t,e,s){s.d(e,{Lz:()=>i,PN:()=>r,cr:()=>o,gs:()=>h,r_:()=>l,tc:()=>a}),s(39829);const n=/^-?(\d+(\.\d+)?)\s*((px)|(pt))?$/i;function i(t){return t?t/72*96:0}function r(t){return t?72*t/96:0}function o(t){if("string"==typeof t){const e=t.match(n);if(e){const s=Number(e[1]),n=e[3]&&e[3].toLowerCase(),i=t.startsWith("-"),o="px"===n?r(s):s;return i?-o:o}return console.warn("screenUtils.toPt: input not recognized!"),null}return t}function a(t=0,e=0){return{x:t,y:e}}function h(t=0,e=0){return[t,e]}function l(t=0,e=0,s=0){return[t,e,s]}},31411(t,e,s){s.d(e,{GS:()=>k,gh:()=>M});var n=s(49186),i=s(56512),r=s(65864),o=s(4305),a=s(50954),h=s(52006),l=s(49663),c=s(46068),u=s(15507);const f=1e-6,g=[0,0];function p(t){return{maxSegmentLength:t.maxSegmentLength??0,maxDeviation:t.maxDeviation??0,maxSegmentsPerCurve:t.maxSegmentsPerCurve??12e3,minSegmentsPerCurve:Math.max(t.minSegmentsPerCurve??1,1)}}class d{constructor(t,e){this.curveStart=t,this.curveEnd=e,this.tStart=0,this.tEnd=0,this.tEndStack=[],this.arcEndStack=[]}get stackSize(){return this.tEndStack.length}initialize(t,e){this.tStart=0,this.arcStart=t,this.tEndStack.push(1),this.arcEndStack.push(e)}splitAt(t){this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this.tEndStack.push(t),this.arcEndStack.push(this.interpolate(t))}splitInHalf(){return this.splitAt((this.tStart+this.tEnd)/2)}pop(){this.tEnd=this.tEndStack.pop(),this.arcEnd=this.arcEndStack.pop()}next(){this.tStart=this.tEnd,this.arcStart=this.arcEnd}densify(t,{maxDeviation:e,maxSegmentLength:s,maxSegmentsPerCurve:n,minSegmentsPerCurve:i}){const r=s*s,o=e*e,a=1/n,h=this.interpolate(0),l=this.interpolate(1);(0,u.kb)(this.curveStart,h)>f&&t.push(h),this.initialize(h,l);const c=1/i;for(let t=i-1;t>0;t--){const e=t*c;this.pop(),this.splitAt(e)}for(;this.stackSize>0;)this.pop(),this.tStart===this.tEnd||this.tEnd-this.tStart<a||(0===r||!isFinite(r)||(0,u.kb)(this.arcStart,this.arcEnd)<r)&&(0===o||!isFinite(o)||this.getDeviation2()<o)?(t.push(this.arcEnd),this.next()):this.splitInHalf();return(0,u.kb)(this.curveEnd,l)>f&&t.push([...this.curveEnd]),t}}class m extends d{constructor(t,e){const[s,n,i]=e.b;super(t,s),this._controlPointsStack=[],this._curveControlPoints=[n,i],this._arcControlPoints=[n,i],this._controlPointsStack.push(this._arcControlPoints)}splitAt(t){const{arcStart:e,arcEnd:s,tStart:n,tEnd:i}=this,[r,o]=this._arcControlPoints,a=(t-n)/(i-n),h=(0,u.RS)([],e,r,a),l=(0,u.RS)(g,r,o,a),c=(0,u.RS)([],o,s,a),f=(0,u.RS)([],h,l,a),p=(0,u.RS)([],l,c,a),d=(0,u.RS)([],f,p,a);this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this._controlPointsStack.push([p,c]),this.tEndStack.push(t),this.arcEndStack.push(d),this._arcControlPoints[0]=h,this._arcControlPoints[1]=f,this._controlPointsStack.push(this._arcControlPoints)}pop(){super.pop(),this._arcControlPoints=this._controlPointsStack.pop()}interpolate(t){const{curveStart:e,curveEnd:s}=this,[n,i]=this._curveControlPoints;return(0,o.B4)(e,n,i,s,t)}getDeviation2(){const{arcStart:t,arcEnd:e}=this,[s,n]=this._arcControlPoints;return Math.max((0,u.yE)(s,t,e),(0,u.yE)(n,t,e))}}class b extends d{constructor(t,e){const[s]=e.a;super(t,s),this._derivedEllipse=(0,c.SW)(t,e)}pop(){super.pop(),this._tMid=(this.tStart+this.tEnd)/2,this._arcMid=this.interpolate(this._tMid)}splitInHalf(){this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this.tEndStack.push(this._tMid),this.arcEndStack.push(this._arcMid)}interpolate(t){return(0,c.Uk)(this._derivedEllipse,t)}getDeviation2(){return(0,u.yE)(this._arcMid,this.arcStart,this.arcEnd)}}function _(t,e,s,{cx:n,cy:i,radius:r,thetaStart:o,thetaEnd:a,isInvalid:h},{maxDeviation:l,maxSegmentLength:c,maxSegmentsPerCurve:g,minSegmentsPerCurve:p}){if(h)return t.push([...s]),t;const d=2*r,m=[n+r*Math.cos(o),i+r*Math.sin(o)],b=[n+r*Math.cos(a),i+r*Math.sin(a)];(0,u.kb)(e,m)>f&&t.push(m);const _=Math.abs(a-o),y=c>0&&c<d?2*Math.asin(c/d):_,v=l>0&&l<=r?2*Math.acos(1-l/r):_,S=Math.min(y,v),w=Math.min(g,Math.max(p,Math.ceil(Math.abs(_/S)))),C=1/w;for(let e=1;e<w;e++){const s=e*C,h=o*(1-s)+a*s;t.push([n+r*Math.cos(h),i+r*Math.sin(h)])}return t.push(b),(0,u.kb)(s,b)>f&&t.push([...s]),t}function y(t,e,s,n){return new m(e,s).densify(t,n)}function v(t,e,s,n){const i=(0,a.pM)(e,s),[r]=s.c;return _(t,e,r,i,n)}function S(t,e,s,n){const i=(0,l.io)(e,s),[r]=s.a;return _(t,e,r,i,n)}function w(t,e,s,n){const[i,r,o,a,h,l,c]=s.a;return 0===l||0===c?(t.push([...i]),t):new b(e,s).densify(t,n)}function C(t,e,s,n){return(0,h.Xq)(s)?(t.push([...s]),t):(0,h.n1)(s)?y(t,e,s,n):(0,h.aO)(s)?v(t,e,s,n):(0,h.DA)(s)?S(t,e,s,n):w(t,e,s,n)}function k(t,e={}){if(!(0,h.Ed)(t))return t;const s=p(e),n=(0,h.FD)(t),i=[];for(const t of n){const e=[];for(let n=0;n<t.length-1;n++){const i=n+1,r=[...(0,h.yP)(t[n])];0===n&&e.push(r),C(e,r,t[i],s)}i.push(e)}return"curvePaths"in t?{...void 0!==t.hasZ?{hasZ:t.hasZ}:{},...void 0!==t.hasM?{hasM:t.hasM}:{},paths:i,spatialReference:t.spatialReference}:{...void 0!==t.hasZ?{hasZ:t.hasZ}:{},...void 0!==t.hasM?{hasM:t.hasM}:{},rings:i,spatialReference:t.spatialReference}}const A=(0,i.B)(t=>({maxDeviation:0,maxSegmentLength:100*t,maxSegmentsPerCurve:12e3,minSegmentsPerCurve:1}));async function M(t,e,i){const o=new Set(e);return await async function(t,e,i){let r=null;for(const o of t)if(o&&(0,h.Ed)(o)&&null==o.spatialReference.xyTolerance&&(0,h.V8)(o,e)){const t=o.spatialReference;if(!t)throw new n.A("geometry:missing-spatial-reference","Geometry contains an unsupported curve type, but it cannot be densified because it has no spatial reference.");const e=x(t);if(i.has(e))o.spatialReference=i.get(e);else{r||(r=await Promise.all([s.e(6042),s.e(1878),s.e(8885),s.e(5756),s.e(3299),s.e(6312)]).then(s.bind(s,78125)));const a=r.fromSpatialReference(t),h=a?.getTolerance();if(null==h)throw new n.A("geometry:missing-tolerance","Geometry contains an unsupported curve type, but it cannot be densified because the tolerance of its spatial reference is unknown. Set the `xyTolerance` property of the spatial reference.");const l=o.spatialReference.clone();l.read({xyTolerance:h}),o.spatialReference=l,i.set(e,l)}}}(t,o,i),t.map(t=>{if(!t||!(0,h.Ed)(t))return t;const s=t.spatialReference.xyTolerance;if(null==s)return t;const n=A(s);return(0,r.rS)(function(t,e,s){if(!(0,h.Ed)(t))return t;const n=new Set(e),i=p(s),r=(0,h.FD)(t),o=[];let a=!1;for(const t of r){const e=[];for(let s=0;s<t.length-1;s++){const r=s+1,o=[...(0,h.yP)(t[s])];0===s&&e.push(o);const l=t[r];(0,h.Xq)(l)?e.push([...l]):(0,h.n1)(l)&&!n.has("cubic-bezier")?y(e,o,l,i):(0,h.aO)(l)&&!n.has("circular-arc")?v(e,o,l,i):(0,h.DA)(l)&&!n.has("elliptic-arc")?S(e,o,l,i):(0,h.wY)(l)&&!n.has("elliptic-arc")?w(e,o,l,i):(e.push((0,h.tk)(l)),a=!0)}o.push(e)}return"curvePaths"in t?{...void 0!==t.hasZ?{hasZ:t.hasZ}:{},...void 0!==t.hasM?{hasM:t.hasM}:{},spatialReference:t.spatialReference,...a?{curvePaths:o}:{paths:o}}:{hasZ:t.hasZ,hasM:t.hasM,spatialReference:t.spatialReference,...a?{curveRings:o}:{rings:o}}}(t,e,n))})}function x(t){if(null!=t.wkid)return`${t.wkid}`;if(null!=t.wkt)return t.wkt;const e="toJSON"in t&&"function"==typeof t.toJSON?t.toJSON():t;return JSON.stringify(e)}},17136(t,e,s){s.d(e,{Y_:()=>R,O7:()=>E,el:()=>x});var n=s(92602),i=s(69052),r=s(49186),o=s(53966),a=s(39829),h=s(82799),l=s(16930),c=s(80754),u=s(21325),f=s(28735),g=s(52006),p=s(31411),d=s(11254),m=s(60408),b=s(65864),_=s(2272),y=s(84952),v=s(92300);const S=()=>o.A.getLogger("esri.geometry.support.normalizeUtils");function w(t){return"polygon"===t[0].type}function C(t){return"polyline"===t[0].type}function k(t,e,s){const n=1e6;if(e){const e=(0,g.Ed)(t)?(0,p.GS)(t,{maxSegmentLength:n}):function(t,e){if(!(t instanceof h.A||t instanceof a.A)){const t="straightLineDensify: the input geometry is neither polyline nor polygon";throw S().error(t),new r.A("internal:geometry",t)}const s=(0,c.r8)(t),n=[];for(const t of s){const s=[];n.push(s),s.push([t[0][0],t[0][1]]);for(let n=0;n<t.length-1;n++){const i=t[n][0],r=t[n][1],o=t[n+1][0],a=t[n+1][1],h=Math.sqrt((o-i)*(o-i)+(a-r)*(a-r)),l=(a-r)/h,c=(o-i)/h,u=h/e;if(u>1){for(let t=1;t<=u-1;t++){const n=t*e,o=c*n+i,a=l*n+r;s.push([o,a])}const t=(h+Math.floor(u-1)*e)/2,n=c*t+i,o=l*t+r;s.push([n,o])}s.push([o,a])}}return function(t){return"polygon"===t.type}(t)?new a.A({rings:n,spatialReference:t.spatialReference}):new h.A({paths:n,spatialReference:t.spatialReference})}(t,n);t=(0,f.ci)(e,!0)}return s&&(t=(0,c.kS)(t,s)),t}function A(t,e,s){if(Array.isArray(t)){const n=t[0];if(n>e){const s=(0,c.kd)(n,e);t[0]=n+s*(-2*e)}else if(n<s){const e=(0,c.kd)(n,s);t[0]=n+e*(-2*s)}}else{const n=t.x;if(n>e){const s=(0,c.kd)(n,e);t=t.clone().offset(s*(-2*e),0)}else if(n<s){const e=(0,c.kd)(n,s);t=t.clone().offset(e*(-2*s),0)}}return t}function M(t,e){let s=-1;for(let n=0;n<e.cutIndexes.length;n++){const i=e.cutIndexes[n],r=e.geometries[n],o=(0,c.r8)(r);for(let t=0;t<o.length;t++){const e=o[t];e.some(s=>{if(s[0]<180)return!0;{let s=0;for(let t=0;t<e.length;t++){const n=e[t][0];s=n>s?n:s}s=Number(s.toFixed(9));const n=-360*(0,c.kd)(s,180);for(let s=0;s<e.length;s++){const e=r.getPoint(t,s);r.setPoint(t,s,e.clone().offset(n,0))}return!0}})}if(i===s){if(w(t))for(const e of(0,c.r8)(r))t[i]=t[i].addRing(e);else if(C(t))for(const e of(0,c.r8)(r))t[i]=t[i].addPath(e)}else s=i,t[i]=r}return t}async function x(t,e,s){if(!Array.isArray(t))return x([t],e);e&&"string"!=typeof e&&S().warn("normalizeCentralMeridian()","The url object is deprecated, use the url string instead");const i="string"==typeof e?e:e?.url??n.A.geometryServiceUrl;let r,o,l,g,p,w,C,E,P=0;const R=[],N=[];for(const e of t)if(null!=e)if(r||(r=e.spatialReference,o=(0,u.Vp)(r),l=r.isWebMercator,w=l?102100:4326,g=c.j7[w].maxX,p=c.j7[w].minX,C=c.j7[w].plus180Line,E=c.j7[w].minus180Line),o)if("mesh"===e.type)N.push(e);else if("point"===e.type)N.push(A(e.clone(),g,p));else if("multipoint"===e.type){const t=e.clone();t.points=t.points.map(t=>A(t,g,p)),N.push(t)}else if("extent"===e.type){const t=e.clone()._normalize(!1,!1,o);N.push(t.rings?new a.A(t):t)}else if(e.extent){const t=e.extent,s=(0,c.kd)(t.xmin,p)*(2*g);let n=0===s?e.clone():(0,c.kS)(e.clone(),s);t.offset(s,0);let{xmin:i,xmax:r}=t;i=Number(i.toFixed(9)),r=Number(r.toFixed(9)),t.intersects(C)&&r!==g?(P=r>P?r:P,n=k(n,l),R.push(n),N.push("cut")):t.intersects(E)&&i!==p?(P=r*(2*g)>P?r*(2*g):P,n=k(n,l,360),R.push(n),N.push("cut")):N.push(n)}else N.push(e.clone());else N.push(e);else N.push(e);let L=(0,c.kd)(P,g),I=-90;const q=L,O=new h.A;for(;L>0;){const t=360*L-180;O.addPath([[t,I],[t,-1*I]]),I*=-1,L--}if(R.length>0&&q>0){const e=M(R,await async function(t,e,s,n){const i=(0,_.Dl)(t),r=e[0].spatialReference,o={...n,responseType:"json",query:{...i.query,f:"json",sr:(0,u.YX)(r),target:JSON.stringify({geometryType:(0,m.$B)(e[0]),geometries:e}),cutter:JSON.stringify(s)}},a=await(0,d.A)(i.path+"/cut",o),{cutIndexes:h,geometries:l=[]}=a.data;return{cutIndexes:h,geometries:l.map(t=>{const e=(0,b.rS)(t);return e.spatialReference=r,e})}}(i,R,O,s)),n=[],r=[];for(let s=0;s<N.length;s++){const i=N[s];if("cut"!==i)r.push(i);else{const i=e.shift(),o=t[s];null!=o&&"polygon"===o.type&&o.rings&&o.rings.length>1&&i.rings.length>=o.rings.length?(n.push(i),r.push("simplify")):r.push(l?(0,f.Gh)(i):i)}}if(!n.length)return r;const o=await async function(t,e,s){const n="string"==typeof t?(0,y.An)(t):t,i=e[0].spatialReference,r=(0,m.$B)(e[0]),o={...s,query:{...n.query,f:"json",sr:(0,u.YX)(i),geometries:JSON.stringify((0,v.X)(e))}},{data:a}=await(0,d.A)(n.path+"/simplify",o);return(0,v.V)(a.geometries,r,i)}(i,n,s),a=[];for(let t=0;t<r.length;t++){const e=r[t];"simplify"!==e?a.push(e):a.push(l?(0,f.Gh)(o.shift()):o.shift())}return a}const T=[];for(let t=0;t<N.length;t++){const e=N[t];if("cut"!==e)T.push(e);else{const t=R.shift();T.push(!0===l?(0,f.Gh)(t):t)}}return T}function E(t,e,s){const n=(0,u.Vp)(s);if(null==n)return t;const[i,r]=n.valid,o=2*r;let a=0,h=0;e>r?a=Math.ceil(Math.abs(e-r)/o):e<i&&(a=-Math.ceil(Math.abs(e-i)/o)),t>r?h=Math.ceil(Math.abs(t-r)/o):t<i&&(h=-Math.ceil(Math.abs(t-i)/o));let l=t+(a-h)*o;const c=l-e;return c>r?l-=o:c<i&&(l+=o),l}function P(t){const e=(0,u.Vp)(t);if(null==e)return null;const[s,n]=e.valid;return new i.hr(s,n)}const R=P(l.A.WGS84);P(l.A.WebMercator)},80754(t,e,s){s.d(e,{j7:()=>a,kS:()=>l,kd:()=>h,r8:()=>c});var n=s(82799),i=s(16930),r=s(60408),o=s(52006);const a={102100:{maxX:20037508.342788905,minX:-20037508.342788905,plus180Line:new n.A({paths:[[[20037508.342788905,-20037508.342788905],[20037508.342788905,20037508.342788905]]],spatialReference:i.A.WebMercator}),minus180Line:new n.A({paths:[[[-20037508.342788905,-20037508.342788905],[-20037508.342788905,20037508.342788905]]],spatialReference:i.A.WebMercator})},4326:{maxX:180,minX:-180,plus180Line:new n.A({paths:[[[180,-180],[180,180]]],spatialReference:i.A.WGS84}),minus180Line:new n.A({paths:[[[-180,-180],[-180,180]]],spatialReference:i.A.WGS84})}};function h(t,e){return Math.ceil((t-e)/(2*e))}function l(t,e){if((0,o.Ed)(t))for(const s of function(t){return(0,r.Bi)(t)?t.curveRings:t.curvePaths}(t))for(const t of s){if((0,o.aO)(t)){const[s,n]=t.c;s[0]+=e,n[0]+=e;continue}if((0,o.FG)(t)){const[s,n]=t.a;s[0]+=e,n[0]+=e;continue}if((0,o.n1)(t)){const[s,n,i]=t.b;s[0]+=e,n[0]+=e,i[0]+=e;continue}t[0]+=e}for(const s of c(t))for(const t of s)t[0]+=e;return t}function c(t){return(0,r.Bi)(t)?t.rings:t.paths}},50498(t,e,s){s.d(e,{Ye:()=>u,gy:()=>c,iI:()=>g,yR:()=>f});var n=s(66552),i=s(5443),r=s(91075),o=s(48526),a=s(86738),h=s(39829),l=s(82799);const c=(0,n.O)()({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon"}),u=(0,n.O)()({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryEnvelope:"extent",mesh:"mesh"}),f={base:r.A,key:"type",typeMap:{extent:i.A,multipoint:o.A,point:a.A,polyline:l.A,polygon:h.A}},g=new n.J({esriGeometryBezier3Curve:"cubic-bezier",esriGeometryCircularArc:"circular-arc",esriGeometryEllipticArc:"elliptic-arc"},{ignoreUnknown:!0})},73133(t,e,s){s.d(e,{j:()=>n});const n=(0,s(66552).O)()({esriTimeUnitsMilliseconds:"milliseconds",esriTimeUnitsSeconds:"seconds",esriTimeUnitsMinutes:"minutes",esriTimeUnitsHours:"hours",esriTimeUnitsDays:"days",esriTimeUnitsWeeks:"weeks",esriTimeUnitsMonths:"months",esriTimeUnitsYears:"years",esriTimeUnitsDecades:"decades",esriTimeUnitsCenturies:"centuries",esriTimeUnitsUnknown:"unknown"})}}]);