@arcgis/core 4.23.0-next.20220105 → 4.23.0-next.20220123

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 (632) hide show
  1. package/assets/components/assets/calcite-date-picker/nls/bg.json +31 -0
  2. package/assets/components/assets/calcite-icon/centerAlign16.json +1 -0
  3. package/assets/components/assets/calcite-icon/centerAlign24.json +1 -0
  4. package/assets/components/assets/calcite-icon/centerAlign32.json +1 -0
  5. package/assets/components/assets/calcite-icon/checkSquareF16.json +1 -0
  6. package/assets/components/assets/calcite-icon/checkSquareF24.json +1 -0
  7. package/assets/components/assets/calcite-icon/checkSquareF32.json +1 -0
  8. package/assets/components/assets/calcite-icon/convert16.json +1 -0
  9. package/assets/components/assets/calcite-icon/convert24.json +1 -0
  10. package/assets/components/assets/calcite-icon/convert32.json +1 -0
  11. package/assets/components/assets/calcite-icon/explore16.json +1 -0
  12. package/assets/components/assets/calcite-icon/explore24.json +1 -0
  13. package/assets/components/assets/calcite-icon/explore32.json +1 -0
  14. package/assets/components/assets/calcite-icon/formDropdown16.json +1 -0
  15. package/assets/components/assets/calcite-icon/formDropdown24.json +1 -0
  16. package/assets/components/assets/calcite-icon/formDropdown32.json +1 -0
  17. package/assets/components/assets/calcite-icon/language16.json +1 -0
  18. package/assets/components/assets/calcite-icon/language24.json +1 -0
  19. package/assets/components/assets/calcite-icon/language32.json +1 -0
  20. package/assets/components/assets/calcite-icon/languageTranslate16.json +1 -0
  21. package/assets/components/assets/calcite-icon/languageTranslate24.json +1 -0
  22. package/assets/components/assets/calcite-icon/languageTranslate32.json +1 -0
  23. package/assets/components/assets/calcite-icon/leftAlign16.json +1 -0
  24. package/assets/components/assets/calcite-icon/leftAlign24.json +1 -0
  25. package/assets/components/assets/calcite-icon/leftAlign32.json +1 -0
  26. package/assets/components/assets/calcite-icon/lineSolid4.json +1 -0
  27. package/assets/components/assets/calcite-icon/partlyCloudy16.json +1 -0
  28. package/assets/components/assets/calcite-icon/partlyCloudy24.json +1 -0
  29. package/assets/components/assets/calcite-icon/partlyCloudy32.json +1 -0
  30. package/assets/components/assets/calcite-icon/rightAlign16.json +1 -0
  31. package/assets/components/assets/calcite-icon/rightAlign24.json +1 -0
  32. package/assets/components/assets/calcite-icon/rightAlign32.json +1 -0
  33. package/assets/components/assets/calcite-icon/screenshotMode16.json +1 -0
  34. package/assets/components/assets/calcite-icon/screenshotMode24.json +1 -0
  35. package/assets/components/assets/calcite-icon/screenshotMode32.json +1 -0
  36. package/assets/components/assets/calcite-icon/squareF16.json +1 -0
  37. package/assets/components/assets/calcite-icon/squareF24.json +1 -0
  38. package/assets/components/assets/calcite-icon/squareF32.json +1 -0
  39. package/assets/components/assets/calcite-icon/terminal16.json +1 -0
  40. package/assets/components/assets/calcite-icon/terminal24.json +1 -0
  41. package/assets/components/assets/calcite-icon/terminal32.json +1 -0
  42. package/assets/components/assets/calcite-icon/touch16.json +1 -0
  43. package/assets/components/assets/calcite-icon/touch24.json +1 -0
  44. package/assets/components/assets/calcite-icon/touch32.json +1 -0
  45. package/assets/components/assets/calcite-icon/xHexagon16.json +1 -0
  46. package/assets/components/assets/calcite-icon/xHexagon24.json +1 -0
  47. package/assets/components/assets/calcite-icon/xHexagon32.json +1 -0
  48. package/assets/components/assets/calcite-icon/xHexagonF16.json +1 -0
  49. package/assets/components/assets/calcite-icon/xHexagonF24.json +1 -0
  50. package/assets/components/assets/calcite-icon/xHexagonF32.json +1 -0
  51. package/assets/components/assets/calcite-icon/xOctagonF16.json +1 -0
  52. package/assets/components/assets/calcite-icon/xOctagonF24.json +1 -0
  53. package/assets/components/assets/calcite-icon/xOctagonF32.json +1 -0
  54. package/assets/esri/core/workers/RemoteClient.js +1 -1
  55. package/assets/esri/core/workers/chunks/09da224052976e290828.js +1 -0
  56. package/assets/esri/core/workers/chunks/0bf079e752ab79468478.js +1 -0
  57. package/assets/esri/core/workers/chunks/{ce5ca5e95b2378ec55b9.js → 1305ef8717da6e902a55.js} +1 -1
  58. package/assets/esri/core/workers/chunks/199670a3a564ebe3bd79.js +1 -0
  59. package/assets/esri/core/workers/chunks/1e4d37c2b9dc83d20a11.js +1 -0
  60. package/assets/esri/core/workers/chunks/20411bb8e04703962ce6.js +1 -0
  61. package/assets/esri/core/workers/chunks/2416f8bf8bbd2ec786ab.js +1 -0
  62. package/assets/esri/core/workers/chunks/25a3e9bc0b4c7e0d3165.js +1 -0
  63. package/assets/esri/core/workers/chunks/{99f0d896c17dd09cd285.js → 2629adf79e7fd9f25f07.js} +1 -1
  64. package/assets/esri/core/workers/chunks/{9c417740bf3707a0d465.js → 2c607d30ff8ca1b61286.js} +1 -1
  65. package/assets/esri/core/workers/chunks/2e445a8735ea2adb641a.js +1 -0
  66. package/assets/esri/core/workers/chunks/37a7bd30352b1309b8f8.js +1 -0
  67. package/assets/esri/core/workers/chunks/390d9021169e65c10eb8.js +1 -0
  68. package/assets/esri/core/workers/chunks/{3d5169ea9810d10caf0d.js → 3a9740dccda6a733313c.js} +1 -1
  69. package/assets/esri/core/workers/chunks/{8a250ec51097f16feb66.js → 40a1e713f63ec77110c0.js} +1 -1
  70. package/assets/esri/core/workers/chunks/43cdff2418325e163420.js +1 -0
  71. package/assets/esri/core/workers/chunks/4c9084a04948b6924749.js +1 -0
  72. package/assets/esri/core/workers/chunks/{35961690afe9ea1f91b0.js → 5383a8f3e4ec1a8a4fcd.js} +1 -1
  73. package/assets/esri/core/workers/chunks/{4beba242e7540ee3182b.js → 5538639a49c7cc2eca63.js} +1 -1
  74. package/assets/esri/core/workers/chunks/57c67e260267a1dbc5e3.js +1 -0
  75. package/assets/esri/core/workers/chunks/5a4a5585ec8027079f32.js +1 -0
  76. package/assets/esri/core/workers/chunks/5ac4c1d54b94c7d87835.js +1 -0
  77. package/assets/esri/core/workers/chunks/60371c0f750cde87656d.js +1 -0
  78. package/assets/esri/core/workers/chunks/{ba6fdaed6c315dc13981.js → 625d2663daa8e0cf64b0.js} +1 -1
  79. package/assets/esri/core/workers/chunks/{3a2b2dc3e938d53faa30.js → 64276aacaafa4c8a15bd.js} +1 -1
  80. package/assets/esri/core/workers/chunks/{75466e0c8c8da499b150.js → 662d13f68cf3ec92439b.js} +1 -1
  81. package/assets/esri/core/workers/chunks/663ad15b86936eb06b69.js +1 -0
  82. package/assets/esri/core/workers/chunks/67162b3e2cc1b5dc6818.js +1 -0
  83. package/assets/esri/core/workers/chunks/68a59ce98177d8513337.js +1 -0
  84. package/assets/esri/core/workers/chunks/6cdfe175c965918b741b.js +1 -0
  85. package/assets/esri/core/workers/chunks/739e579150bf466d43ae.js +1 -0
  86. package/assets/esri/core/workers/chunks/74df1f3e1e2e524a89d2.js +1 -0
  87. package/assets/esri/core/workers/chunks/76eef4799f6c5fff7e2d.js +1 -0
  88. package/assets/esri/core/workers/chunks/{ea05f870dda27bca4fe8.js → 7a8764ae8a0041e1151d.js} +2 -2
  89. package/assets/esri/core/workers/chunks/{ea05f870dda27bca4fe8.js.LICENSE.txt → 7a8764ae8a0041e1151d.js.LICENSE.txt} +1 -1
  90. package/assets/esri/core/workers/chunks/7baf6b1f3f050aa67ae4.js +1 -0
  91. package/assets/esri/core/workers/chunks/{f52b6d5037e4205b035c.js → 7bc5cc5dbf1b7b70ddac.js} +1 -1
  92. package/assets/esri/core/workers/chunks/85e27fd949475f9a6bbc.js +1 -0
  93. package/assets/esri/core/workers/chunks/8967288145f8fbd20e7d.js +1 -0
  94. package/assets/esri/core/workers/chunks/8cbb04a9065aa3756638.js +1 -0
  95. package/assets/esri/core/workers/chunks/8fa0a14165d43ffe87a5.js +1 -0
  96. package/assets/esri/core/workers/chunks/94b8dbf859df71858d1c.js +1 -0
  97. package/assets/esri/core/workers/chunks/96ab518eb6ba11333dee.js +1 -0
  98. package/assets/esri/core/workers/chunks/99a777693e4539f0b03b.js +1 -0
  99. package/assets/esri/core/workers/chunks/9cb2ae42a8e328b1d98d.js +1 -0
  100. package/assets/esri/core/workers/chunks/9d3c58a0ef634d95b7bd.js +1 -0
  101. package/assets/esri/core/workers/chunks/9d77467aa71d345fc1b6.js +1 -0
  102. package/assets/esri/core/workers/chunks/9f8b7b6b4e95f9a794fc.js +1 -0
  103. package/assets/esri/core/workers/chunks/a78757b9c7e8cbea08fa.js +1 -0
  104. package/assets/esri/core/workers/chunks/{9b7c51ff3d2b42aa62f5.js → a7b1b75643ed31489495.js} +1 -1
  105. package/assets/esri/core/workers/chunks/a8b13fb804bb775e4967.js +1 -0
  106. package/assets/esri/core/workers/chunks/a8c13529367c037cdd94.js +1 -0
  107. package/assets/esri/core/workers/chunks/a96afc176041f698c7a1.js +1 -0
  108. package/assets/esri/core/workers/chunks/aa861b8eae6c85f3dad4.js +1 -0
  109. package/assets/esri/core/workers/chunks/ac8dca61ade28c542ae2.js +1 -0
  110. package/assets/esri/core/workers/chunks/ad081d8e49e7f90c3c26.js +1 -0
  111. package/assets/esri/core/workers/chunks/afa6912454f2a5ffadce.js +1 -0
  112. package/assets/esri/core/workers/chunks/b0b036ad3ad3cd956747.js +1 -0
  113. package/assets/esri/core/workers/chunks/{2a39d520b192b8e552b5.js → b2ae5fc4f787ea568b88.js} +1 -1
  114. package/assets/esri/core/workers/chunks/b2beb6e1fd2ee6503830.js +1 -0
  115. package/assets/esri/core/workers/chunks/{b87bc1481a49b38109f4.js → b9c177524b3e7de1ffd1.js} +1 -1
  116. package/assets/esri/core/workers/chunks/ba615f118a3a8970ef25.js +1 -0
  117. package/assets/esri/core/workers/chunks/{7c1b9ae141112a63b446.js → ba6654a885be4b7a43f0.js} +1 -1
  118. package/assets/esri/core/workers/chunks/bab1cfd0a901181622af.js +1 -0
  119. package/assets/esri/core/workers/chunks/be2b7cce79fd41627931.js +1 -0
  120. package/assets/esri/core/workers/chunks/bf6dda4a2af14c4b7716.js +1 -0
  121. package/assets/esri/core/workers/chunks/{ed0297fc61014e848c18.js → c080114a69fa95b88d22.js} +1 -1
  122. package/assets/esri/core/workers/chunks/c13dfdd548dcb1bdb294.js +1 -0
  123. package/assets/esri/core/workers/chunks/c36f84daa7736878418d.js +1 -0
  124. package/assets/esri/core/workers/chunks/c6f94b92e866b881d9b9.js +1 -0
  125. package/assets/esri/core/workers/chunks/{573dc3064e84ca86844d.js → c959e0d1cf7dce0421b9.js} +1 -1
  126. package/assets/esri/core/workers/chunks/{1fd48459afb58a6cf14f.js → ca2f5faa01d99c21ec14.js} +1 -1
  127. package/assets/esri/core/workers/chunks/cbb291412fd1a5261aa9.js +1 -0
  128. package/assets/esri/core/workers/chunks/{7aa543a97f055cddea99.js → cc146c57bbdac8029fd8.js} +1 -1
  129. package/assets/esri/core/workers/chunks/cd7d83d127e085d52584.js +1 -0
  130. package/assets/esri/core/workers/chunks/cef4af64860ebbfc1c47.js +1 -0
  131. package/assets/esri/core/workers/chunks/d1454155ee1b8a421cbb.js +1 -0
  132. package/assets/esri/core/workers/chunks/{0cd583c3233573cb8468.js → d24c4fbc567486b1188f.js} +1 -1
  133. package/assets/esri/core/workers/chunks/d52108864136c5a8a618.js +1 -0
  134. package/assets/esri/core/workers/chunks/d72488db62fcf39447b6.js +1 -0
  135. package/assets/esri/core/workers/chunks/de03439ca2c9782bf325.js +1 -0
  136. package/assets/esri/core/workers/chunks/de6cff7b6cbbf99b20d1.js +981 -0
  137. package/assets/esri/core/workers/chunks/e079cb1d53aca15b7df2.js +1 -0
  138. package/assets/esri/core/workers/chunks/e59764ee8cf25d4f74e2.js +1 -0
  139. package/assets/esri/core/workers/chunks/e6df9839b551569fbc62.js +1 -0
  140. package/assets/esri/core/workers/chunks/e97e986120aaadad7d4c.js +1 -0
  141. package/assets/esri/core/workers/chunks/{2f66fcb8670b108af549.js → ed0bcc66fb1e0ee75a4b.js} +1 -1
  142. package/assets/esri/core/workers/chunks/f8e7755240a94b499e1f.js +1 -0
  143. package/assets/esri/libs/vxl/vxlLayer.wasm +0 -0
  144. package/assets/esri/themes/base/icons/fonts/CalciteWebCoreIcons.svg +1 -0
  145. package/assets/esri/themes/base/icons/fonts/CalciteWebCoreIcons.ttf +0 -0
  146. package/assets/esri/themes/base/icons/fonts/CalciteWebCoreIcons.woff +0 -0
  147. package/assets/esri/themes/base/icons/selection.json +1 -1
  148. package/assets/esri/themes/base/icons/style.css +4 -0
  149. package/assets/esri/themes/base/icons/style.scss +6 -0
  150. package/assets/esri/themes/base/icons/variables.scss +1 -0
  151. package/assets/esri/themes/base/widgets/_Weather.scss +1 -1
  152. package/assets/esri/themes/dark/main.css +1 -1
  153. package/assets/esri/themes/dark-blue/main.css +1 -1
  154. package/assets/esri/themes/dark-green/main.css +1 -1
  155. package/assets/esri/themes/dark-purple/main.css +1 -1
  156. package/assets/esri/themes/dark-red/main.css +1 -1
  157. package/assets/esri/themes/light/main.css +1 -1
  158. package/assets/esri/themes/light/view.css +1 -1
  159. package/assets/esri/themes/light-blue/main.css +1 -1
  160. package/assets/esri/themes/light-green/main.css +1 -1
  161. package/assets/esri/themes/light-purple/main.css +1 -1
  162. package/assets/esri/themes/light-red/main.css +1 -1
  163. package/assets/esri/widgets/Editor/t9n/Editor_ar.json +1 -1
  164. package/assets/esri/widgets/Editor/t9n/Editor_bg.json +1 -1
  165. package/assets/esri/widgets/Editor/t9n/Editor_bs.json +1 -1
  166. package/assets/esri/widgets/Editor/t9n/Editor_ca.json +1 -1
  167. package/assets/esri/widgets/Editor/t9n/Editor_cs.json +1 -1
  168. package/assets/esri/widgets/Editor/t9n/Editor_da.json +1 -1
  169. package/assets/esri/widgets/Editor/t9n/Editor_de.json +1 -1
  170. package/assets/esri/widgets/Editor/t9n/Editor_el.json +1 -1
  171. package/assets/esri/widgets/Editor/t9n/Editor_es.json +1 -1
  172. package/assets/esri/widgets/Editor/t9n/Editor_et.json +1 -1
  173. package/assets/esri/widgets/Editor/t9n/Editor_fi.json +1 -1
  174. package/assets/esri/widgets/Editor/t9n/Editor_fr.json +1 -1
  175. package/assets/esri/widgets/Editor/t9n/Editor_he.json +1 -1
  176. package/assets/esri/widgets/Editor/t9n/Editor_hr.json +1 -1
  177. package/assets/esri/widgets/Editor/t9n/Editor_hu.json +1 -1
  178. package/assets/esri/widgets/Editor/t9n/Editor_id.json +1 -1
  179. package/assets/esri/widgets/Editor/t9n/Editor_it.json +1 -1
  180. package/assets/esri/widgets/Editor/t9n/Editor_ja.json +1 -1
  181. package/assets/esri/widgets/Editor/t9n/Editor_ko.json +1 -1
  182. package/assets/esri/widgets/Editor/t9n/Editor_lt.json +1 -1
  183. package/assets/esri/widgets/Editor/t9n/Editor_lv.json +1 -1
  184. package/assets/esri/widgets/Editor/t9n/Editor_nb.json +1 -1
  185. package/assets/esri/widgets/Editor/t9n/Editor_nl.json +1 -1
  186. package/assets/esri/widgets/Editor/t9n/Editor_pl.json +1 -1
  187. package/assets/esri/widgets/Editor/t9n/Editor_pt-BR.json +1 -1
  188. package/assets/esri/widgets/Editor/t9n/Editor_pt-PT.json +1 -1
  189. package/assets/esri/widgets/Editor/t9n/Editor_ro.json +1 -1
  190. package/assets/esri/widgets/Editor/t9n/Editor_ru.json +1 -1
  191. package/assets/esri/widgets/Editor/t9n/Editor_sk.json +1 -1
  192. package/assets/esri/widgets/Editor/t9n/Editor_sl.json +1 -1
  193. package/assets/esri/widgets/Editor/t9n/Editor_sr.json +1 -1
  194. package/assets/esri/widgets/Editor/t9n/Editor_sv.json +1 -1
  195. package/assets/esri/widgets/Editor/t9n/Editor_th.json +1 -1
  196. package/assets/esri/widgets/Editor/t9n/Editor_tr.json +1 -1
  197. package/assets/esri/widgets/Editor/t9n/Editor_uk.json +1 -1
  198. package/assets/esri/widgets/Editor/t9n/Editor_vi.json +1 -1
  199. package/assets/esri/widgets/Editor/t9n/Editor_zh-CN.json +1 -1
  200. package/assets/esri/widgets/Editor/t9n/Editor_zh-HK.json +1 -1
  201. package/assets/esri/widgets/Editor/t9n/Editor_zh-TW.json +1 -1
  202. package/assets/esri/widgets/ElevationProfile/t9n/ElevationProfile_ja.json +1 -1
  203. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_ar.json +1 -1
  204. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_bg.json +1 -1
  205. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_bs.json +1 -1
  206. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_ca.json +1 -1
  207. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_cs.json +1 -1
  208. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_da.json +1 -1
  209. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_de.json +1 -1
  210. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_el.json +1 -1
  211. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_es.json +1 -1
  212. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_et.json +1 -1
  213. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_fi.json +1 -1
  214. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_fr.json +1 -1
  215. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_he.json +1 -1
  216. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_hr.json +1 -1
  217. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_hu.json +1 -1
  218. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_id.json +1 -1
  219. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_it.json +1 -1
  220. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_ja.json +1 -1
  221. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_ko.json +1 -1
  222. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_lt.json +1 -1
  223. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_lv.json +1 -1
  224. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_nb.json +1 -1
  225. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_nl.json +1 -1
  226. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_pl.json +1 -1
  227. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_pt-BR.json +1 -1
  228. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_pt-PT.json +1 -1
  229. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_ro.json +1 -1
  230. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_ru.json +1 -1
  231. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_sk.json +1 -1
  232. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_sl.json +1 -1
  233. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_sr.json +1 -1
  234. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_sv.json +1 -1
  235. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_th.json +1 -1
  236. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_tr.json +1 -1
  237. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_uk.json +1 -1
  238. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_vi.json +1 -1
  239. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_zh-CN.json +1 -1
  240. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_zh-HK.json +1 -1
  241. package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_zh-TW.json +1 -1
  242. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_cs.json +1 -1
  243. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_el.json +1 -1
  244. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_fr.json +1 -1
  245. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_lv.json +1 -1
  246. package/assets/esri/widgets/Weather/t9n/Weather_ar.json +1 -1
  247. package/assets/esri/widgets/Weather/t9n/Weather_bg.json +1 -1
  248. package/assets/esri/widgets/Weather/t9n/Weather_bs.json +1 -1
  249. package/assets/esri/widgets/Weather/t9n/Weather_ca.json +1 -1
  250. package/assets/esri/widgets/Weather/t9n/Weather_cs.json +1 -1
  251. package/assets/esri/widgets/Weather/t9n/Weather_da.json +1 -1
  252. package/assets/esri/widgets/Weather/t9n/Weather_de.json +1 -1
  253. package/assets/esri/widgets/Weather/t9n/Weather_el.json +1 -1
  254. package/assets/esri/widgets/Weather/t9n/Weather_es.json +1 -1
  255. package/assets/esri/widgets/Weather/t9n/Weather_et.json +1 -1
  256. package/assets/esri/widgets/Weather/t9n/Weather_fi.json +1 -1
  257. package/assets/esri/widgets/Weather/t9n/Weather_fr.json +1 -1
  258. package/assets/esri/widgets/Weather/t9n/Weather_he.json +1 -1
  259. package/assets/esri/widgets/Weather/t9n/Weather_hr.json +1 -1
  260. package/assets/esri/widgets/Weather/t9n/Weather_hu.json +1 -1
  261. package/assets/esri/widgets/Weather/t9n/Weather_id.json +1 -1
  262. package/assets/esri/widgets/Weather/t9n/Weather_it.json +1 -1
  263. package/assets/esri/widgets/Weather/t9n/Weather_ja.json +1 -1
  264. package/assets/esri/widgets/Weather/t9n/Weather_ko.json +1 -1
  265. package/assets/esri/widgets/Weather/t9n/Weather_lt.json +1 -1
  266. package/assets/esri/widgets/Weather/t9n/Weather_lv.json +1 -1
  267. package/assets/esri/widgets/Weather/t9n/Weather_nb.json +1 -1
  268. package/assets/esri/widgets/Weather/t9n/Weather_nl.json +1 -1
  269. package/assets/esri/widgets/Weather/t9n/Weather_pl.json +1 -1
  270. package/assets/esri/widgets/Weather/t9n/Weather_pt-BR.json +1 -1
  271. package/assets/esri/widgets/Weather/t9n/Weather_pt-PT.json +1 -1
  272. package/assets/esri/widgets/Weather/t9n/Weather_ro.json +1 -1
  273. package/assets/esri/widgets/Weather/t9n/Weather_ru.json +1 -1
  274. package/assets/esri/widgets/Weather/t9n/Weather_sk.json +1 -1
  275. package/assets/esri/widgets/Weather/t9n/Weather_sl.json +1 -1
  276. package/assets/esri/widgets/Weather/t9n/Weather_sr.json +1 -1
  277. package/assets/esri/widgets/Weather/t9n/Weather_sv.json +1 -1
  278. package/assets/esri/widgets/Weather/t9n/Weather_th.json +1 -1
  279. package/assets/esri/widgets/Weather/t9n/Weather_tr.json +1 -1
  280. package/assets/esri/widgets/Weather/t9n/Weather_uk.json +1 -1
  281. package/assets/esri/widgets/Weather/t9n/Weather_vi.json +1 -1
  282. package/assets/esri/widgets/Weather/t9n/Weather_zh-CN.json +1 -1
  283. package/assets/esri/widgets/Weather/t9n/Weather_zh-HK.json +1 -1
  284. package/assets/esri/widgets/Weather/t9n/Weather_zh-TW.json +1 -1
  285. package/chunks/Clouds.glsl.js +14 -14
  286. package/chunks/CloudsComposition.glsl.js +4 -4
  287. package/chunks/DefaultMaterial.glsl.js +2 -2
  288. package/chunks/HUDMaterial.glsl.js +22 -21
  289. package/chunks/RibbonLine.glsl.js +10 -14
  290. package/chunks/persistableUrlUtils.js +1 -1
  291. package/chunks/vec32.js +1 -1
  292. package/chunks/vec42.js +1 -1
  293. package/chunks/vxlLayer.js +1 -1
  294. package/core/has.js +1 -1
  295. package/core/urlUtils.js +1 -1
  296. package/core/workers/workerFactory.js +1 -1
  297. package/form/elements/FieldElement.js +1 -1
  298. package/geometry/support/buffer/math/common.js +1 -1
  299. package/geometry/support/heightModelInfoUtils.js +1 -1
  300. package/interfaces.d.ts +372 -126
  301. package/layers/FeatureLayer.js +1 -1
  302. package/layers/RouteLayer.js +1 -1
  303. package/layers/SubtypeGroupLayer.js +1 -1
  304. package/layers/VectorTileLayer.js +1 -1
  305. package/layers/VoxelLayer.js +1 -1
  306. package/layers/VoxelWasmPerScene.js +1 -1
  307. package/layers/WMSLayer.js +1 -1
  308. package/layers/graphics/controllers/FeatureTileController3D.js +1 -1
  309. package/layers/graphics/data/QueryEngineCapabilities.js +1 -1
  310. package/layers/graphics/sources/OGCFeatureSource.js +1 -1
  311. package/layers/mixins/ArcGISImageService.js +1 -1
  312. package/layers/mixins/OperationalLayer.js +1 -1
  313. package/layers/ogc/crsUtils.js +5 -0
  314. package/layers/support/RasterFunction.js +1 -1
  315. package/layers/support/RasterWorker.js +1 -1
  316. package/layers/support/capabilities.js +1 -1
  317. package/layers/support/rasterDatasets/BaseRaster.js +1 -1
  318. package/layers/support/rasterDatasets/WCSRaster.js +1 -1
  319. package/layers/support/rasterDatasets/wcsCoverageParser.js +1 -1
  320. package/layers/support/rasterFunctions/rasterProjectionHelper.js +1 -1
  321. package/layers/support/vectorTileLayerLoader.js +1 -1
  322. package/layers/support/wmsUtils.js +1 -1
  323. package/layers/support/wmtsUtils.js +1 -1
  324. package/libs/vxl/enums.js +1 -1
  325. package/package.json +5 -5
  326. package/portal/schemas/buildingSceneLayerItem.js +1 -1
  327. package/portal/schemas/definitions.js +1 -1
  328. package/portal/schemas/integratedMeshLayerItem.js +1 -1
  329. package/portal/schemas/pointCloudLayerItem.js +1 -1
  330. package/portal/schemas/sceneLayerItem.js +1 -1
  331. package/portal/schemas/webScene.js +1 -1
  332. package/rasterRenderers.js +1 -1
  333. package/renderers/support/RasterSymbolizer.js +1 -1
  334. package/request.js +1 -1
  335. package/rest/find.js +1 -1
  336. package/rest/geometryService/generalize.js +1 -1
  337. package/rest/geometryService/lengths.js +1 -1
  338. package/rest/geometryService/offset.js +1 -1
  339. package/rest/geometryService/relation.js +1 -1
  340. package/rest/geometryService/trimExtend.js +1 -1
  341. package/rest/identify.js +1 -1
  342. package/{tasks → rest}/operations/find.js +0 -0
  343. package/{tasks → rest}/operations/generalize.js +0 -0
  344. package/rest/operations/identify.js +5 -0
  345. package/{tasks → rest}/operations/lengths.js +0 -0
  346. package/{tasks → rest}/operations/offset.js +0 -0
  347. package/{tasks → rest}/operations/relation.js +0 -0
  348. package/{tasks → rest}/operations/trimExtend.js +0 -0
  349. package/{tasks → rest}/operations/urlUtils.js +0 -0
  350. package/rest/print.js +1 -1
  351. package/rest/query/operations/query.js +1 -1
  352. package/rest/query/operations/queryAttachments.js +1 -1
  353. package/rest/query/operations/queryRelatedRecords.js +1 -1
  354. package/rest/query/operations/queryTopFeatures.js +1 -1
  355. package/rest/route/utils.js +1 -1
  356. package/rest/support/ImageIdentifyParameters.js +1 -1
  357. package/rest/support/NetworkServiceDescription.js +1 -1
  358. package/rest/support/RouteInfo.js +1 -1
  359. package/rest/support/RouteParameters.js +1 -1
  360. package/rest/support/RouteSettings.js +5 -0
  361. package/rest/support/StatisticDefinition.js +1 -1
  362. package/rest/support/Stop.js +1 -1
  363. package/rest/support/networkEnums.js +1 -1
  364. package/smartMapping/renderers/univariateColorSize.js +1 -1
  365. package/smartMapping/support/adapters/FeatureLayerAdapter.js +1 -1
  366. package/support/featureFlags.js +1 -1
  367. package/support/revision.js +1 -1
  368. package/symbols/ExtrudeSymbol3DLayer.js +1 -1
  369. package/symbols/Font.js +1 -1
  370. package/symbols/IconSymbol3DLayer.js +1 -1
  371. package/symbols/ObjectSymbol3DLayer.js +1 -1
  372. package/symbols/PathSymbol3DLayer.js +1 -1
  373. package/symbols/TextSymbol.js +1 -1
  374. package/symbols/TextSymbol3DLayer.js +1 -1
  375. package/symbols/cim/placements/PlacementAlongLineSameSize.js +1 -1
  376. package/symbols/support/Symbol3DHalo.js +1 -1
  377. package/symbols/support/Symbol3DMaterial.js +1 -1
  378. package/symbols/support/cimSymbolUtils.js +1 -1
  379. package/symbols/support/textUtils.js +5 -0
  380. package/symbols/support/utils.js +1 -1
  381. package/views/2d/engine/Stage.js +1 -1
  382. package/views/2d/engine/vectorTiles/TileHandler.js +1 -1
  383. package/views/2d/engine/vectorTiles/shaders/VTLMaterialManager.js +1 -1
  384. package/views/2d/engine/vectorTiles/style/VectorTileSource.js +1 -1
  385. package/views/2d/engine/vectorTiles/style/VectorTilesRequestManager.js +5 -0
  386. package/views/2d/engine/webgl/BitBlitRenderer.js +1 -1
  387. package/views/2d/engine/webgl/MaterialManager.js +1 -1
  388. package/views/2d/engine/webgl/alignmentUtils.js +1 -1
  389. package/views/2d/engine/webgl/effects/BlendEffect.js +1 -1
  390. package/views/2d/engine/webgl/materialKey/MaterialKey.js +1 -1
  391. package/views/2d/engine/webgl/mesh/templates/WGLLabelTemplate.js +1 -1
  392. package/views/2d/engine/webgl/shaders/BlendPrograms.js +1 -1
  393. package/views/2d/engine/webgl/shaders/MaterialPrograms.js +1 -1
  394. package/views/2d/layers/BaseLayerView2D.js +1 -1
  395. package/views/2d/layers/BaseLayerViewGL2D.js +1 -1
  396. package/views/2d/layers/GraphicsLayerView2D.js +1 -1
  397. package/views/2d/layers/ImageryLayerView2D.js +1 -1
  398. package/views/2d/layers/ImageryTileLayerView2D.js +1 -1
  399. package/views/2d/layers/LayerView2D.js +1 -1
  400. package/views/2d/layers/MapNotesLayerView2D.js +1 -1
  401. package/views/2d/layers/RouteLayerView2D.js +1 -1
  402. package/views/2d/layers/TileLayerView2D.js +1 -1
  403. package/views/2d/layers/VectorTileLayerView2D.js +1 -1
  404. package/views/2d/layers/WMSLayerView2D.js +1 -1
  405. package/views/2d/layers/WMTSLayerView2D.js +1 -1
  406. package/views/2d/layers/features/sources/BaseFeatureSource.js +1 -1
  407. package/views/2d/layers/features/support/AttributeStore.js +1 -1
  408. package/views/2d/layers/graphics/GraphicBoundsRenderer.js +1 -1
  409. package/views/2d/layers/graphics/GraphicsView2D.js +1 -1
  410. package/views/2d/layers/imagery/BaseImageryTileSubView2D.js +1 -1
  411. package/views/2d/support/engineHelpers.js +1 -1
  412. package/views/3d/analysis/LineOfSight/LineOfSightController.js +1 -1
  413. package/views/3d/environment/CloudsComposition.glsl.js +1 -1
  414. package/views/3d/environment/CloudsComposition.js +1 -1
  415. package/views/3d/environment/CloudsGenerator.js +1 -1
  416. package/views/3d/environment/CloudyWeather.js +1 -1
  417. package/views/3d/environment/Fog.js +1 -1
  418. package/views/3d/environment/FoggyWeather.js +1 -1
  419. package/views/3d/environment/NoiseTextureAtlas.js +1 -1
  420. package/views/3d/environment/RainyWeather.js +1 -1
  421. package/views/3d/environment/Stars.js +1 -1
  422. package/views/3d/layers/BuildingComponentSublayerView3D.js +1 -1
  423. package/views/3d/layers/DynamicLayerView3D.js +1 -1
  424. package/views/3d/layers/FeatureLayerViewBase3D.js +1 -1
  425. package/views/3d/layers/FeatureLikeLayerView3D.js +1 -1
  426. package/views/3d/layers/GraphicsLayerView3D.js +1 -1
  427. package/views/3d/layers/GraphicsView3D.js +1 -1
  428. package/views/3d/layers/I3SMeshView3D.js +1 -1
  429. package/views/3d/layers/ImageryLayerView3D.js +1 -1
  430. package/views/3d/layers/ImageryTileLayerView3D.js +1 -1
  431. package/views/3d/layers/IntegratedMeshLayerView3D.js +1 -1
  432. package/views/3d/layers/MapImageLayerView3D.js +1 -1
  433. package/views/3d/layers/OGCFeatureLayerView3D.js +1 -1
  434. package/views/3d/layers/PointCloudLayerView3D.js +1 -1
  435. package/views/3d/layers/SceneLayerGraphicsView3D.js +1 -1
  436. package/views/3d/layers/SceneLayerView3D.js +1 -1
  437. package/views/3d/layers/VectorTileLayerView3D.js +1 -1
  438. package/views/3d/layers/VoxelLayerView3D.js +1 -1
  439. package/views/3d/layers/WMSLayerView3D.js +1 -1
  440. package/views/3d/layers/WMTSLayerView3D.js +1 -1
  441. package/views/3d/layers/graphics/Deconflictor.js +1 -1
  442. package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
  443. package/views/3d/layers/graphics/Graphics3DDrapedGraphicLayer.js +1 -1
  444. package/views/3d/layers/graphics/Graphics3DElevationAlignment.js +1 -1
  445. package/views/3d/layers/graphics/Graphics3DFeatureProcessor.js +5 -0
  446. package/views/3d/layers/graphics/Graphics3DFrustumVisibility.js +1 -1
  447. package/views/3d/layers/graphics/Graphics3DIconSymbolLayer.js +1 -1
  448. package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
  449. package/views/3d/layers/graphics/Graphics3DPointSymbol.js +1 -1
  450. package/views/3d/layers/graphics/Graphics3DPolygonFillSymbolLayer.js +1 -1
  451. package/views/3d/layers/graphics/Graphics3DScaleVisibility.js +1 -1
  452. package/views/3d/layers/graphics/Graphics3DSymbolCreationContext.js +1 -1
  453. package/views/3d/layers/graphics/Graphics3DSymbolLayer.js +1 -1
  454. package/views/3d/layers/graphics/Graphics3DTextSymbolLayer.js +1 -1
  455. package/views/3d/layers/graphics/GraphicsProcessor.js +5 -0
  456. package/views/3d/layers/graphics/IGraphics3DFeatureProcessor.js +4 -0
  457. package/views/3d/layers/graphics/Labeler.js +1 -1
  458. package/views/3d/layers/graphics/QueryEngine.js +1 -1
  459. package/views/3d/layers/support/FeatureTileTree3DDebugger.js +1 -1
  460. package/views/3d/state/controllers/RotateController.js +1 -1
  461. package/views/3d/state/controllers/global/PinchAndPanController.js +1 -1
  462. package/views/3d/state/controllers/global/ZoomController.js +1 -1
  463. package/views/3d/state/controllers/global/ZoomStepController.js +1 -1
  464. package/views/3d/state/controllers/local/PinchAndPanController.js +1 -1
  465. package/views/3d/state/controllers/local/ZoomStepController.js +1 -1
  466. package/views/3d/support/debugFlags.js +1 -1
  467. package/views/3d/support/sunUtils.js +1 -1
  468. package/views/3d/terrain/Overlay.js +1 -1
  469. package/views/3d/terrain/OverlayManager.js +1 -1
  470. package/views/3d/terrain/TerrainSurface.js +1 -1
  471. package/views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js +7 -1
  472. package/views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js +28 -24
  473. package/views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js +19 -14
  474. package/views/3d/webgl-engine/core/shaderLibrary/util/CloudsParallaxShading.glsl.js +12 -14
  475. package/views/3d/webgl-engine/lib/GridLocalOriginFactory.js +1 -1
  476. package/views/3d/webgl-engine/lib/InstanceParameters.js +5 -0
  477. package/views/3d/webgl-engine/lib/{localOrigin.js → LocalOriginFactory.js} +0 -0
  478. package/views/3d/webgl-engine/lib/OffscreenRendering.js +1 -1
  479. package/views/3d/webgl-engine/lib/Program.js +1 -1
  480. package/views/3d/webgl-engine/lib/RenderGeometry.js +1 -1
  481. package/views/3d/webgl-engine/lib/RenderTargetHelper.js +1 -1
  482. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  483. package/views/3d/webgl-engine/lib/RenderingContext.js +1 -1
  484. package/views/3d/webgl-engine/lib/SSAOHelper.js +1 -1
  485. package/views/3d/webgl-engine/lib/TextRenderParameters.js +1 -1
  486. package/views/3d/webgl-engine/lib/TextRenderer.js +1 -1
  487. package/views/3d/webgl-engine/lib/intersectorUtilsConversions.js +1 -1
  488. package/views/3d/webgl-engine/lib/lodRendering/LodRenderer.js +1 -1
  489. package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
  490. package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
  491. package/views/3d/webgl-engine/parts/RenderView.js +1 -1
  492. package/views/3d/webgl-engine/parts/ScreenshotManager.js +1 -1
  493. package/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js +1 -1
  494. package/views/3d/webgl-engine/shaders/HUDMaterialTechnique.js +1 -1
  495. package/views/3d/webgl-engine/shaders/RealisticTreeTechnique.js +1 -1
  496. package/views/3d/webgl-engine/shaders/RibbonLineTechnique.js +1 -1
  497. package/views/LayerViewManager.js +1 -1
  498. package/views/MapView.js +1 -1
  499. package/views/SceneView.js +1 -1
  500. package/views/interactive/snapping/FeatureSnappingEngine.js +1 -1
  501. package/views/interactive/snapping/featureSources/FeatureServiceSnappingSource.js +1 -1
  502. package/views/interactive/snapping/featureSources/GraphicsSnappingSource.js +1 -1
  503. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTiledFetcher.js +1 -1
  504. package/views/layers/ImageryTileLayerView.js +1 -1
  505. package/views/layers/LayerView.js +1 -1
  506. package/views/layers/OGCFeatureLayerView.js +1 -1
  507. package/views/layers/RefreshableLayerView.js +1 -1
  508. package/views/overlay/ViewOverlay.js +1 -1
  509. package/views/support/DefaultsFromMap.js +1 -1
  510. package/views/support/WatchUpdatingTracking.js +1 -1
  511. package/views/support/imageReprojection.js +1 -1
  512. package/views/webgl/BufferObject.js +1 -1
  513. package/views/webgl/ContextState.js +1 -1
  514. package/views/webgl/FramebufferObject.js +1 -1
  515. package/views/webgl/Program.js +1 -1
  516. package/views/webgl/ProgramCache.js +1 -1
  517. package/views/webgl/ProgramTemplate.js +1 -1
  518. package/views/webgl/Renderbuffer.js +1 -1
  519. package/views/webgl/RenderingContext.js +1 -1
  520. package/views/webgl/ShaderTranspiler.js +1 -1
  521. package/views/webgl/Texture.js +1 -1
  522. package/views/webgl/UniformBufferLayout.js +5 -0
  523. package/views/webgl/UniformBufferObject.js +5 -0
  524. package/views/webgl/Util.js +1 -1
  525. package/views/webgl/enums.js +1 -1
  526. package/views/webgl/rasterUtils.js +1 -1
  527. package/views/webgl/storageLayouts.js +5 -0
  528. package/views/webgl/testDoublePrecisionArithmetic.js +1 -1
  529. package/views/webgl/testFloatBufferBlend.js +1 -1
  530. package/views/webgl/testSVGPremultipliedAlpha.js +1 -1
  531. package/views/webgl/testSamplerPrecision.js +1 -1
  532. package/views/webgl/tests/SimpleDraw.js +1 -1
  533. package/widgets/BasemapLayerList.js +1 -1
  534. package/widgets/BuildingExplorer/BuildingDisciplinesViewModel.js +1 -1
  535. package/widgets/Editor/BatchCreateWorkflow.js +1 -1
  536. package/widgets/Editor/CreateWorkflow.js +1 -1
  537. package/widgets/Editor/UpdateWorkflow.js +1 -1
  538. package/widgets/Editor/workflowUtils.js +1 -1
  539. package/widgets/ElevationProfile/components/SettingsButton.js +1 -1
  540. package/widgets/ElevationProfile.js +1 -1
  541. package/widgets/Feature/FeatureExpression/FeatureExpressionViewModel.js +1 -1
  542. package/widgets/Feature/FeatureExpression.js +1 -1
  543. package/widgets/Feature/FeatureMedia/FeatureMediaViewModel.js +1 -1
  544. package/widgets/Feature/FeatureMedia.js +1 -1
  545. package/widgets/Feature/FeatureViewModel.js +1 -1
  546. package/widgets/FeatureForm/FeatureFormViewModel.js +1 -1
  547. package/widgets/FeatureForm/InputField.js +1 -1
  548. package/widgets/FeatureForm/InputFieldGroup.js +1 -1
  549. package/widgets/FeatureForm.js +1 -1
  550. package/widgets/FeatureTemplates.js +1 -1
  551. package/widgets/FloorFilter.js +1 -1
  552. package/widgets/LayerList/LayerListViewModel.js +1 -1
  553. package/widgets/LayerList/ListItemPanel.js +1 -1
  554. package/widgets/LayerList/support/layerListUtils.js +1 -1
  555. package/widgets/Legend/support/ActiveLayerInfo.js +1 -1
  556. package/widgets/Popup.js +1 -1
  557. package/widgets/Print.js +1 -1
  558. package/widgets/Search.js +1 -1
  559. package/widgets/Sketch/SketchViewModel.js +1 -1
  560. package/widgets/Weather/CoverageSlider.js +5 -0
  561. package/widgets/Weather/WeatherViewModel.js +1 -1
  562. package/widgets/Weather/css.js +1 -1
  563. package/widgets/Weather.js +1 -1
  564. package/widgets/support/geolocationUtils.js +1 -1
  565. package/assets/esri/core/workers/chunks/0881ce46b10362861f87.js +0 -1
  566. package/assets/esri/core/workers/chunks/0c0a02770eeeb3e28ea1.js +0 -1
  567. package/assets/esri/core/workers/chunks/0d2effbd84a9482eb639.js +0 -1
  568. package/assets/esri/core/workers/chunks/0f04246c1b591a3ac74d.js +0 -1
  569. package/assets/esri/core/workers/chunks/1ac6be0dc25e16c75d06.js +0 -1
  570. package/assets/esri/core/workers/chunks/1f8110ea12d65ca94b55.js +0 -1
  571. package/assets/esri/core/workers/chunks/2025d0fd61a64876c81b.js +0 -1
  572. package/assets/esri/core/workers/chunks/241859d74c0daac62e11.js +0 -1
  573. package/assets/esri/core/workers/chunks/2c9af2ebd72d9b55329b.js +0 -1
  574. package/assets/esri/core/workers/chunks/331be347c1b1ca0be2d2.js +0 -1
  575. package/assets/esri/core/workers/chunks/39af317388ecebb4387d.js +0 -1
  576. package/assets/esri/core/workers/chunks/39be2893a7dbdecfd65a.js +0 -1
  577. package/assets/esri/core/workers/chunks/3a20f66b0b7d08064e34.js +0 -1
  578. package/assets/esri/core/workers/chunks/445099d037affd139ed0.js +0 -1
  579. package/assets/esri/core/workers/chunks/45848fecec88ed2da33d.js +0 -1
  580. package/assets/esri/core/workers/chunks/48d3a3abc53abe6a4017.js +0 -1
  581. package/assets/esri/core/workers/chunks/5005b8c1fdd5cb9a4c19.js +0 -1
  582. package/assets/esri/core/workers/chunks/52e4c367c72ea7cc3457.js +0 -1
  583. package/assets/esri/core/workers/chunks/5d8170f6207dbeb4de1b.js +0 -1
  584. package/assets/esri/core/workers/chunks/615aa2d3ecafe30c80c0.js +0 -1
  585. package/assets/esri/core/workers/chunks/642c38ac00a962f35d44.js +0 -1
  586. package/assets/esri/core/workers/chunks/64459604505647e9c714.js +0 -1
  587. package/assets/esri/core/workers/chunks/653d1550dd1a4867a9fc.js +0 -1
  588. package/assets/esri/core/workers/chunks/65f73fbbc3c7c60c6d3d.js +0 -1
  589. package/assets/esri/core/workers/chunks/6db7081d344bea26ef64.js +0 -1
  590. package/assets/esri/core/workers/chunks/6deac533bb455be4004b.js +0 -1
  591. package/assets/esri/core/workers/chunks/6e13dab8ec43f7494297.js +0 -1
  592. package/assets/esri/core/workers/chunks/722a10c65456844d72b9.js +0 -1
  593. package/assets/esri/core/workers/chunks/7bd4c3ee43fb038b88d8.js +0 -1
  594. package/assets/esri/core/workers/chunks/803de5097a8a2c4b58a8.js +0 -1
  595. package/assets/esri/core/workers/chunks/8298231a0fd0129b0d5c.js +0 -1
  596. package/assets/esri/core/workers/chunks/8500c6c011400af1b7bd.js +0 -1
  597. package/assets/esri/core/workers/chunks/8b322a2a47dfdbb59b45.js +0 -1
  598. package/assets/esri/core/workers/chunks/8f83bebef9174c3f15da.js +0 -1
  599. package/assets/esri/core/workers/chunks/904332faa22bc0e876cb.js +0 -1
  600. package/assets/esri/core/workers/chunks/950565d1e682fc4072e1.js +0 -1
  601. package/assets/esri/core/workers/chunks/9846098704ee38bf6350.js +0 -1
  602. package/assets/esri/core/workers/chunks/a247ddd84245c81112c8.js +0 -1
  603. package/assets/esri/core/workers/chunks/a721342a32541717324d.js +0 -1
  604. package/assets/esri/core/workers/chunks/a9ffa806df20130ecfb6.js +0 -1
  605. package/assets/esri/core/workers/chunks/af13e534e4160636bd3d.js +0 -1
  606. package/assets/esri/core/workers/chunks/b2f62234ebb8b6158baa.js +0 -1
  607. package/assets/esri/core/workers/chunks/b51261a9a9ab62388839.js +0 -971
  608. package/assets/esri/core/workers/chunks/b58eba403bd517a7bb15.js +0 -1
  609. package/assets/esri/core/workers/chunks/b5bb7cfa26b1f0cec67a.js +0 -1
  610. package/assets/esri/core/workers/chunks/b8666d1a4e4fff7a4703.js +0 -1
  611. package/assets/esri/core/workers/chunks/bea1da9e3f878e0e2c83.js +0 -1
  612. package/assets/esri/core/workers/chunks/c1b6c31fa3ec1542f996.js +0 -1
  613. package/assets/esri/core/workers/chunks/c32a4fbdc87225f84019.js +0 -1
  614. package/assets/esri/core/workers/chunks/c67fea81f69a60c0eaef.js +0 -1
  615. package/assets/esri/core/workers/chunks/cb68db7169b9dfd1c3ff.js +0 -1
  616. package/assets/esri/core/workers/chunks/cc96608b2802fbfe7a08.js +0 -1
  617. package/assets/esri/core/workers/chunks/cd02fe27eb07681cb366.js +0 -1
  618. package/assets/esri/core/workers/chunks/d336afd5890dcdbf5341.js +0 -1
  619. package/assets/esri/core/workers/chunks/da69e3e5949fe1716e34.js +0 -1
  620. package/assets/esri/core/workers/chunks/daa9c450b2e2a5371249.js +0 -1
  621. package/assets/esri/core/workers/chunks/dd63ba77b7e4c3c9c594.js +0 -1
  622. package/assets/esri/core/workers/chunks/dfa57982d28c9aeb97b9.js +0 -1
  623. package/assets/esri/core/workers/chunks/e01812116b27874948f0.js +0 -1
  624. package/assets/esri/core/workers/chunks/e5c9d8482b913cf3580a.js +0 -1
  625. package/assets/esri/core/workers/chunks/eeadd92f0bede9fc8745.js +0 -1
  626. package/assets/esri/core/workers/chunks/fbb67cb6224aed2cce16.js +0 -1
  627. package/assets/esri/core/workers/chunks/feeaf61424336e9eac88.js +0 -1
  628. package/assets/esri/core/workers/chunks/ff02295329a8986d0568.js +0 -1
  629. package/tasks/operations/identify.js +0 -5
  630. package/views/2d/engine/webgl/mesh/templates/meshUtils.js +0 -5
  631. package/views/3d/layers/graphics/Graphics3DFeatureLikeLayerView.js +0 -5
  632. package/views/3d/layers/graphics/Graphics3DGraphicLikeLayerView.js +0 -5
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../chunks/tslib.es6.js";import t from"../PopupTemplate.js";import"../renderers/ClassBreaksRenderer.js";import"../renderers/DictionaryRenderer.js";import"../renderers/DotDensityRenderer.js";import"../renderers/HeatmapRenderer.js";import"../renderers/Renderer.js";import r from"../renderers/SimpleRenderer.js";import i from"../renderers/UniqueValueRenderer.js";import{read as o}from"../renderers/support/jsonUtils.js";import{rendererTypes as s,webSceneRendererTypes as n}from"../renderers/support/types.js";import a from"../request.js";import{symbolTypes as p,symbolTypesRenderer as l}from"../symbols.js";import u from"../core/Collection.js";import d from"../core/Error.js";import y from"../core/Handles.js";import c from"../core/has.js";import{JSONMap as h}from"../core/jsonMap.js";import m from"../core/Logger.js";import{destroyMaybe as f,isSome as b}from"../core/maybe.js";import{MultiOriginJSONMixin as g}from"../core/MultiOriginJSONSupport.js";import{setDeepValue as v}from"../core/object.js";import{throwIfAbortError as w,whenOrAbort as I}from"../core/promiseUtils.js";import{parseWhereClause as F}from"../core/sql.js";import{urlToObject as S,join as j}from"../core/urlUtils.js";import{property as E}from"../core/accessorSupport/decorators/property.js";import"../core/arrayUtils.js";import{cast as T}from"../core/accessorSupport/decorators/cast.js";import{reader as x}from"../core/accessorSupport/decorators/reader.js";import{subclass as D}from"../core/accessorSupport/decorators/subclass.js";import{writer as C}from"../core/accessorSupport/decorators/writer.js";import{createTypeReader as M}from"../core/accessorSupport/extensions/serializableProperty/reader.js";import L from"../form/FormTemplate.js";import O from"../geometry/Extent.js";import P from"../geometry/HeightModelInfo.js";import _ from"../geometry/SpatialReference.js";import R from"./Layer.js";import A from"./graphics/sources/MemorySource.js";import{APIKeyMixin as q}from"./mixins/APIKeyMixin.js";import{ArcGISService as Q}from"./mixins/ArcGISService.js";import{BlendLayer as U}from"./mixins/BlendLayer.js";import{CustomParametersMixin as V}from"./mixins/CustomParametersMixin.js";import{FeatureEffectLayer as G}from"./mixins/FeatureEffectLayer.js";import{OperationalLayer as z}from"./mixins/OperationalLayer.js";import{OrderedLayer as B}from"./mixins/OrderedLayer.js";import{PortalLayer as k}from"./mixins/PortalLayer.js";import{RefreshableLayer as N}from"./mixins/RefreshableLayer.js";import{ScaleRangeLayer as W}from"./mixins/ScaleRangeLayer.js";import{TemporalLayer as J}from"./mixins/TemporalLayer.js";import{titleFromUrlAndName as Z,parse as $,cleanTitle as H,sanitizeUrlWithLayerId as K,writeUrlWithLayerId as X}from"./support/arcgisLayerUrl.js";import{elevationInfo as Y,id as ee,labelsVisible as te,opacityDrawingInfo as re,legendEnabled as ie,minScale as oe,maxScale as se,popupEnabled as ne,screenSizePerspectiveEnabled as ae,url as pe}from"./support/commonProperties.js";import{FeatureIndex as le}from"./support/FeatureIndex.js";import{featureReductionProperty as ue}from"./support/featureReductionUtils.js";import de from"./support/FeatureTemplate.js";import ye from"./support/FeatureType.js";import{defineFieldProperties as ce}from"./support/fieldProperties.js";import{fixRendererFields as he,fixTimeInfoFields as me}from"./support/fieldUtils.js";import fe from"./support/GeometryFieldsInfo.js";import be from"./support/LabelClass.js";import{reader as ge}from"./support/labelingInfo.js";import ve from"./support/LayerFloorInfo.js";import we from"./support/Relationship.js";import Ie from"./support/TimeInfo.js";import{DataLayerSource as Fe}from"./support/source/DataLayerSource.js";import{loadStyleRenderer as Se}from"../renderers/support/styleUtils.js";import je from"../rest/support/AttachmentQuery.js";import Ee from"../rest/support/FeatureSet.js";import Te from"../rest/support/Query.js";import xe from"../rest/support/RelationshipQuery.js";import De from"../rest/support/TopFeaturesQuery.js";import{createPopupTemplate as Ce}from"../support/popupUtils.js";const Me=new h({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryMultiPatch:"multipatch"}),Le={name:"supportsName",size:"supportsSize",contentType:"supportsContentType",keywords:"supportsKeywords",exifInfo:"supportsExifInfo"},Oe="FeatureLayer",Pe=m.getLogger("esri.layers.FeatureLayer");function _e(e){return e&&e instanceof u}function Re(e,t,r){return!!(e&&e.hasOwnProperty(t)?e[t]:r)}function Ae(e,t,r){return e&&e.hasOwnProperty(t)?e[t]:r}const qe=ce();function Qe(e,t,r){const i=!(null==r||!r.writeLayerSchema);return{enabled:i,ignoreOrigin:i}}let Ue=class extends(G(U(B(J(W(N(Q(z(k(g(V(q(R))))))))))))){constructor(...e){super(...e),this._handles=new y,this.capabilities=null,this.charts=null,this.copyright=null,this.datesInUnknownTimezone=!1,this.displayField=null,this.definitionExpression=null,this.dynamicDataSource=null,this.editFieldsInfo=null,this.editingInfo=null,this.elevationInfo=null,this.featureReduction=null,this.fields=null,this.fieldsIndex=null,this.floorInfo=null,this.formTemplate=null,this.fullExtent=null,this.gdbVersion=null,this.geometryFieldsInfo=null,this.geometryType=null,this.hasM=void 0,this.hasZ=void 0,this.heightModelInfo=null,this.historicMoment=null,this.infoFor3D=null,this.isTable=!1,this.labelsVisible=!0,this.labelingInfo=null,this.layerId=void 0,this.legendEnabled=!0,this.minScale=0,this.maxScale=0,this.globalIdField=null,this.objectIdField=null,this.outFields=null,this.path=null,this.popupEnabled=!0,this.popupTemplate=null,this.relationships=null,this.sourceJSON=null,this.returnM=void 0,this.returnZ=void 0,this.screenSizePerspectiveEnabled=!0,this.serviceDefinitionExpression=null,this.spatialReference=_.WGS84,this.subtypeCode=null,this.templates=null,this.timeInfo=null,this.title=null,this.sublayerTitleMode="item-title",this.trackIdField=null,this.type="feature",this.typeIdField=null,this.types=null,this.indexes=new(u.ofType(le)),this.userIsAdmin=!1,this.version=void 0,this.visible=!0}destroy(){var e;null==(e=this.source)||e.destroy(),this._handles=f(this._handles)}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}load(e){const t=b(e)?e.signal:null;if(this.portalItem&&this.portalItem.loaded&&this.source)return void this.addResolvingPromise(this.createGraphicsSource(t).then((e=>this._initLayerProperties(e))));const r=this.loadFromPortal({supportedTypes:["Feature Service","Feature Collection"]},e).catch(w).then((async()=>{if(this.url&&null==this.layerId&&/FeatureServer|MapServer\/*$/i.test(this.url)){const e=await this._fetchFirstLayerId(t);null!=e&&(this.layerId=e)}if(!this.url&&!this._hasMemorySource())throw new d("feature-layer:missing-url-or-source","Feature layer must be created with either a url or a source");return this._initLayerProperties(await this.createGraphicsSource(t))})).then((()=>this.finishLoadEditablePortalLayer(e)));return this.addResolvingPromise(r),Promise.resolve(this)}readCapabilities(e,t){return t=t.layerDefinition||t,{attachment:this._readAttachmentCapabilities(t.attachmentProperties),data:this._readDataCapabilities(t),metadata:this._readMetadataCapabilities(t),operations:this._readOperationsCapabilities(t.capabilities||e,t),query:this._readQueryCapabilities(t),queryRelated:this._readQueryRelatedCapabilities(t),editing:this._readEditingCapabilities(t)}}get createQueryVersion(){return this.commitProperty("definitionExpression"),this.commitProperty("dynamicDataSource"),this.commitProperty("timeExtent"),this.commitProperty("timeOffset"),this.commitProperty("geometryType"),this.commitProperty("gdbVersion"),this.commitProperty("historicMoment"),this.commitProperty("returnZ"),this.commitProperty("capabilities"),this.commitProperty("returnM"),(this._get("createQueryVersion")||0)+1}get editingEnabled(){return!(this.loaded&&!this.capabilities.operations.supportsEditing)&&(this._isOverridden("editingEnabled")?this._get("editingEnabled"):this._hasMemorySource()||this.userHasEditingPrivileges)}set editingEnabled(e){null!=e?this._override("editingEnabled",e):this._clearOverride("editingEnabled")}readEditingEnabled(e,t){return this._readEditingEnabled(t,!1)}readEditingEnabledFromWebMap(e,t,r){return this._readEditingEnabled(t,!0,r)}writeEditingEnabled(e,t){this._writeEditingEnabled(e,t,!1)}writeEditingEnabledToWebMap(e,t,r,i){this._writeEditingEnabled(e,t,!0,i)}readEditingInfo(e,t){const{editingInfo:r}=t;return r?{lastEditDate:null!=r.lastEditDate?new Date(r.lastEditDate):null}:null}readIsTable(e,t){return"Table"===(t=t&&t.layerDefinition||t).type||!t.geometryType}writeIsTable(e,t,r,i){null!=i&&i.writeLayerSchema&&v(r,e?"Table":"Feature Layer",t)}readMinScale(e,t){return t.effectiveMinScale||e||0}readMaxScale(e,t){return t.effectiveMaxScale||e||0}readGlobalIdFieldFromService(e,t){if((t=t.layerDefinition||t).globalIdField)return t.globalIdField;if(t.fields)for(const r of t.fields)if("esriFieldTypeGlobalID"===r.type)return r.name}readObjectIdFieldFromService(e,t){if((t=t.layerDefinition||t).objectIdField)return t.objectIdField;if(t.fields)for(const r of t.fields)if("esriFieldTypeOID"===r.type)return r.name}get parsedUrl(){const e=this.url?S(this.url):null;return null!=e&&(null!=this.dynamicDataSource?e.path=j(e.path,"dynamicLayer"):null!=this.layerId&&(e.path=j(e.path,this.layerId.toString()))),e}get defaultPopupTemplate(){return this.createPopupTemplate()}set renderer(e){he(e,this.fieldsIndex),this._set("renderer",e)}readRenderer(e,t,s){const n=(t=t.layerDefinition||t).drawingInfo&&t.drawingInfo.renderer||void 0;if(n){const e=o(n,t,s)||void 0;return e||Pe.error("Failed to create renderer",{rendererDefinition:t.drawingInfo.renderer,layer:this,context:s}),e}if(t.defaultSymbol)return t.types&&t.types.length?new i({defaultSymbol:Ve(t.defaultSymbol,t,s),field:t.typeIdField,uniqueValueInfos:t.types.map((e=>({id:e.id,symbol:Ve(e.symbol,e,s)})))}):new r({symbol:Ve(t.defaultSymbol,t,s)})}set source(e){const t=this._get("source");t!==e&&(_e(t)&&this._resetMemorySource(t),_e(e)&&this._initMemorySource(e),this._set("source",e))}castSource(e){return e?Array.isArray(e)||e instanceof u?new A({layer:this,items:e}):e:null}readSource(e,t){const r=Ee.fromJSON(t.featureSet);return new A({layer:this,items:r&&r.features||[]})}readServiceDefinitionExpression(e,t){return t.definitionQuery||t.definitionExpression}readTemplates(e,t){const r=t.editFieldsInfo,i=r&&r.creatorField,o=r&&r.editorField;return e=e&&e.map((e=>de.fromJSON(e))),this._fixTemplates(e,i),this._fixTemplates(e,o),e}readTitle(e,t){const r=t.layerDefinition&&t.layerDefinition.name||t.name,i=t.title||t.layerDefinition&&t.layerDefinition.title;if(r){const e=this.portalItem&&this.portalItem.title;if("item-title"===this.sublayerTitleMode)return this.url?Z(this.url,r):r;let t=r;if(!t&&this.url){const e=$(this.url);b(e)&&(t=e.title)}if(!t)return;return"item-title-and-service-name"===this.sublayerTitleMode&&e&&e!==t&&(t=e+" - "+t),H(t)}if("item-title"===this.sublayerTitleMode&&i)return i}readTitleFromWebMap(e,t){return t.title||t.layerDefinition&&t.layerDefinition.name}readTypeIdField(e,t){let r=(t=t.layerDefinition||t).typeIdField;if(r&&t.fields){r=r.toLowerCase();const e=t.fields.find((e=>e.name.toLowerCase()===r));e&&(r=e.name)}return r}readTypes(e,t){e=(t=t.layerDefinition||t).types;const r=t.editFieldsInfo,i=r&&r.creatorField,o=r&&r.editorField;return e&&e.map((e=>(e=ye.fromJSON(e),this._fixTemplates(e.templates,i),this._fixTemplates(e.templates,o),e)))}set url(e){const t=K({layer:this,url:e,nonStandardUrlAllowed:!0,logger:Pe});this._set("url",t.url),null!=t.layerId&&this._set("layerId",t.layerId)}writeUrl(e,t,r,i){X(this,e,null,t,i)}readVersion(e,t){return t.currentVersion?t.currentVersion:t.hasOwnProperty("capabilities")||t.hasOwnProperty("drawingInfo")||t.hasOwnProperty("hasAttachments")||t.hasOwnProperty("htmlPopupType")||t.hasOwnProperty("relationships")||t.hasOwnProperty("timeInfo")||t.hasOwnProperty("typeIdField")||t.hasOwnProperty("types")?10:9.3}readVisible(e,t){return t.layerDefinition&&null!=t.layerDefinition.defaultVisibility?!!t.layerDefinition.defaultVisibility:null!=t.visibility?!!t.visibility:void 0}addAttachment(e,t){return this.load().then((()=>this._checkAttachmentSupport(e))).then((()=>{if(!("addAttachment"in this.source))throw new d(Oe,"Layer source does not support addAttachment capability");return this.source.addAttachment(e,t)}))}updateAttachment(e,t,r){return this.load().then((()=>this._checkAttachmentSupport(e))).then((()=>{if(!("updateAttachment"in this.source))throw new d(Oe,"Layer source does not support updateAttachment capability");return this.source.updateAttachment(e,t,r)}))}async applyEdits(e,t){const r=await import("./graphics/editingSupport.js");return await this.load(),r.applyEdits(this,this.source,e,t)}on(e,t){return super.on(e,t)}createPopupTemplate(e){return Ce(this,e)}async createGraphicsSource(e){if(this._hasMemorySource())return this.source.load({signal:e});const{default:t}=await I(import("./graphics/sources/FeatureLayerSource.js"),e);return new t({layer:this}).load({signal:e})}createQuery(){const e=new Te,t=this.get("capabilities.data");e.dynamicDataSource=this.dynamicDataSource,e.gdbVersion=this.gdbVersion,e.historicMoment=this.historicMoment,e.returnGeometry=!0,t&&(t.supportsZ&&null!=this.returnZ&&(e.returnZ=this.returnZ),t.supportsM&&null!=this.returnM&&(e.returnM=this.returnM)),e.outFields=["*"],e.where=this.definitionExpression||"1=1";const{timeOffset:r,timeExtent:i}=this;return e.timeExtent=null!=r&&null!=i?i.offset(-r.value,r.unit):i||null,e.multipatchOption="multipatch"===this.geometryType?"xyFootprint":null,e}deleteAttachments(e,t){return this.load().then((()=>this._checkAttachmentSupport(e))).then((()=>{if(!("deleteAttachments"in this.source))throw new d(Oe,"Layer source does not support deleteAttachments capability");return this.source.deleteAttachments(e,t)}))}fetchRecomputedExtents(e){return this.load({signal:null==e?void 0:e.signal}).then((()=>{if(this.source.fetchRecomputedExtents)return this.source.fetchRecomputedExtents(e);throw new d(Oe,"Layer source does not support fetchUpdates capability")}))}getFeatureType(e){const{typeIdField:t,types:r}=this;if(!t||!e)return null;const i=e.attributes?e.attributes[t]:void 0;if(null==i)return null;let o=null;return r.some((e=>{const{id:t}=e;return null!=t&&(t.toString()===i.toString()&&(o=e),!!o)})),o}getFieldDomain(e,t){const r=t&&t.feature,i=this.getFeatureType(r);if(i){const t=i.domains&&i.domains[e];if(t&&"inherited"!==t.type)return t}return this._getLayerDomain(e)}getField(e){return this.fieldsIndex.get(e)}queryAttachments(e,t){return e=je.from(e),this.load().then((()=>{if(!this.get("capabilities.data.supportsAttachment"))throw new d(Oe,"this layer doesn't support attachments");const{attachmentTypes:t,objectIds:r,globalIds:i,num:o,size:s,start:n,where:a}=e;if(!this.get("capabilities.operations.supportsQueryAttachments")){const p=r&&r.length>1,l=t&&t.length,u=i&&i.length,y=s&&s.length;if(p||l||u||y||o||n||a)throw new d(Oe,"when 'supportsQueryAttachments' is false, only objectIds of length 1 are supported",e)}if(!(r&&r.length||a))throw new d(Oe,"'objectIds' or 'where' are required to perform attachment query",e);if(!("queryAttachments"in this.source))throw new d(Oe,"Layer source does not support queryAttachments capability",e);return this.source.queryAttachments(e)}))}queryFeatures(e,t){return this.load().then((()=>this.source.queryFeatures(Te.from(e)||this.createQuery(),t))).then((e=>{if(null!=e&&e.features)for(const t of e.features)t.layer=t.sourceLayer=this;return e}))}queryObjectIds(e,t){return this.load().then((()=>{if(this.source.queryObjectIds)return this.source.queryObjectIds(Te.from(e)||this.createQuery(),t);throw new d(Oe,"Layer source does not support queryObjectIds capability")}))}queryFeatureCount(e,t){return this.load().then((()=>{if(this.source.queryFeatureCount)return this.source.queryFeatureCount(Te.from(e)||this.createQuery(),t);throw new d(Oe,"Layer source does not support queryFeatureCount capability")}))}queryExtent(e,t){return this.load().then((()=>{if(this.source.queryExtent)return this.source.queryExtent(Te.from(e)||this.createQuery(),t);throw new d(Oe,"Layer source does not support queryExtent capability")}))}queryRelatedFeatures(e,t){return this.load().then((()=>{if("queryRelatedFeatures"in this.source)return this.source.queryRelatedFeatures(xe.from(e),t);throw new d(Oe,"Layer source does not support queryRelatedFeatures capability")}))}queryRelatedFeaturesCount(e,t){return this.load().then((()=>{if("queryRelatedFeaturesCount"in this.source)return this.source.queryRelatedFeaturesCount(xe.from(e),t);throw new d(Oe,"Layer source does not support queryRelatedFeaturesCount capability")}))}queryTopFeatures(e,t){return this.load().then((()=>{if("queryTopFeatures"in this.source&&this.get("capabilities.query.supportsTopFeaturesQuery"))return this.source.queryTopFeatures(De.from(e),t).then((e=>{if(null!=e&&e.features)for(const t of e.features)t.layer=t.sourceLayer=this;return e}));throw new d(Oe,"Layer source does not support queryTopFeatures capability")}))}queryTopObjectIds(e,t){return this.load().then((()=>{if("queryTopObjectIds"in this.source&&this.get("capabilities.query.supportsTopFeaturesQuery"))return this.source.queryTopObjectIds(De.from(e),t);throw new d(Oe,"Layer source does not support queryTopObjectIds capability")}))}queryTopFeaturesExtent(e,t){return this.load().then((()=>{if("queryTopExtents"in this.source&&this.get("capabilities.query.supportsTopFeaturesQuery"))return this.source.queryTopExtents(De.from(e),t);throw new d(Oe,"Layer source does not support queryTopExtents capability")}))}queryTopFeatureCount(e,t){return this.load().then((()=>{if("queryTopCount"in this.source&&this.get("capabilities.query.supportsTopFeaturesQuery"))return this.source.queryTopCount(De.from(e),t);throw new d(Oe,"Layer source does not support queryFeatureCount capability")}))}read(e,t){const r=e.featureCollection;if(r){const e=r.layers;e&&1===e.length&&(super.read(e[0],t),null!=r.showLegend&&super.read({showLegend:r.showLegend},t))}super.read(e,t),t&&"service"===t.origin&&this.revert(["objectIdField","fields","timeInfo","spatialReference"],"service")}write(e,t){var r,i;const o=(t={...t,writeLayerSchema:null!=(r=null==(i=t)?void 0:i.writeLayerSchema)?r:this._hasMemorySource()}).origin,s=t.layerContainerType,n=t.messages;if(this.isTable){if("web-scene"===o||"web-map"===o&&"tables"!==s)return n&&n.push(new d("layer:unsupported",`Layer (${this.title}, ${this.id}) of type '${this.declaredClass}' using a Table source cannot be written to web scenes and web maps`,{layer:this})),null;if(this._hasMemorySource())return n&&n.push(new d("layer:unsupported",`Layer (${this.title}, ${this.id}) of type '${this.declaredClass}' using an in-memory Table source cannot be written to web scenes and web maps`,{layer:this})),null}else if(this.loaded&&"web-map"===o&&"tables"===s)return n&&n.push(new d("layer:unsupported",`Layer (${this.title}, ${this.id}) of type '${this.declaredClass}' using a non-table source cannot be written to tables in web maps`,{layer:this})),null;return super.write(e,t)}_readEditingEnabled(e,t,r){var i;let o=null==(i=e.layerDefinition)?void 0:i.capabilities;return o?this._hasEditingCapability(o):(o=e.capabilities,t&&"web-map"===(null==r?void 0:r.origin)&&!this._hasMemorySource()&&o?this._hasEditingCapability(o):void 0)}_hasEditingCapability(e){return e.toLowerCase().split(",").map((e=>e.trim())).includes("editing")}_writeEditingEnabled(e,t,r,i){if(!e){var o,s;const e=null!=(o=this.capabilities)&&null!=(s=o.operations)&&s.supportsSync?"Query,Sync":"Query";v("layerDefinition.capabilities",e,t),!r||null!=i&&i.writeLayerSchema||(t.capabilities=e)}}_checkAttachmentSupport(e){const{attributes:t}=e,{objectIdField:r}=this;return this.get("capabilities.data.supportsAttachment")?e?t?t[r]?void 0:Promise.reject(new d(Oe,`feature is missing the identifying attribute ${r}`)):Promise.reject(new d(Oe,"'attributes' are required on a feature to query attachments")):Promise.reject(new d(Oe,"A feature is required to add/delete/update attachments")):Promise.reject(new d(Oe,"this layer doesn't support attachments"))}_getLayerDomain(e){const t=this.fieldsIndex.get(e);return t?t.domain:null}_fetchFirstLayerId(e){return a(this.url,{query:{f:"json",...this.customParameters,token:this.apiKey},responseType:"json",signal:e}).then((e=>{const t=e.data;if(t)return Array.isArray(t.layers)&&t.layers.length>0?t.layers[0].id:Array.isArray(t.tables)&&t.tables.length>0?t.tables[0].id:void 0}))}async _initLayerProperties(e){return this._set("source",e),e.sourceJSON&&(this.sourceJSON=e.sourceJSON,this.read(e.sourceJSON,{origin:"service",url:this.parsedUrl})),this._verifySource(),this._verifyFields(),he(this.renderer,this.fieldsIndex),me(this.timeInfo,this.fieldsIndex),Se(this,{origin:"service"})}async hasDataChanged(){var e;if(null!=(e=this.source)&&e.refresh)try{var t;const{dataChanged:e,updates:r}=await(null==(t=this.source)?void 0:t.refresh());if(b(r)&&(this.sourceJSON={...this.sourceJSON,...r},this.read(r,{origin:"service",url:this.parsedUrl})),e)return!0}catch{}if(this.definitionExpression)try{return(await F(this.definitionExpression,this.fieldsIndex)).hasDateFunctions}catch{}return!1}_verifyFields(){const e=this.parsedUrl&&this.parsedUrl.path||"undefined";this.objectIdField||console.log("FeatureLayer: 'objectIdField' property is not defined (url: "+e+")"),this.isTable||this._hasMemorySource()||-1!==e.search(/\/FeatureServer\//i)||this.fields&&this.fields.some((function(e){return"geometry"===e.type}))||console.log("FeatureLayer: unable to find field of type 'geometry' in the layer 'fields' list. If you are using a map service layer, features will not have geometry (url: "+e+")")}_fixTemplates(e,t){e&&e.forEach((e=>{const r=e.prototype&&e.prototype.attributes;r&&t&&delete r[t]}))}_verifySource(){if(this._hasMemorySource()){if(this.url)throw new d("feature-layer:mixed-source-and-url","FeatureLayer cannot be created with both an in-memory source and a url")}else if(!this.url)throw new d("feature-layer:source-or-url-required","FeatureLayer requires either a url, a valid portal item or a source")}_initMemorySource(e){e.forEach((e=>{e.layer=this,e.sourceLayer=this})),this._handles.add([e.on("after-add",(e=>{e.item.layer=this,e.item.sourceLayer=this})),e.on("after-remove",(e=>{e.item.layer=null,e.item.sourceLayer=null}))],"fl-source")}_resetMemorySource(e){e.forEach((e=>{e.layer=null,e.sourceLayer=null})),this._handles.remove("fl-source")}_hasMemorySource(){return!(this.url||!this.source)}_readAttachmentCapabilities(e){const t={supportsName:!1,supportsSize:!1,supportsContentType:!1,supportsKeywords:!1,supportsExifInfo:!1};return e&&Array.isArray(e)&&e.forEach((e=>{const r=Le[e.name];r&&(t[r]=!!e.isEnabled)})),t}_readDataCapabilities(e){return{isVersioned:Re(e,"isDataVersioned",!1),supportsAttachment:Re(e,"hasAttachments",!1),supportsM:Re(e,"hasM",!1),supportsZ:Re(e,"hasZ",!1)}}_readMetadataCapabilities(e){return{supportsAdvancedFieldProperties:Re(e,"supportsFieldDescriptionProperty",!1)}}_readOperationsCapabilities(e,t){const r=e?e.toLowerCase().split(",").map((e=>e.trim())):[],i=r.includes("editing")&&!t.datesInUnknownTimezone;let o=i&&r.includes("create"),s=i&&r.includes("delete"),n=i&&r.includes("update");const a=r.includes("changetracking");return i&&!(o||s||n)&&(o=s=n=!0),{supportsCalculate:Re(t,"supportsCalculate",!1),supportsTruncate:Re(t,"supportsTruncate",!1),supportsValidateSql:Re(t,"supportsValidateSql",!1),supportsAdd:o,supportsDelete:s,supportsEditing:i,supportsChangeTracking:a,supportsQuery:r.includes("query"),supportsQueryAttachments:Re(t.advancedQueryCapabilities,"supportsQueryAttachments",!1),supportsResizeAttachments:Re(t,"supportsAttachmentsResizing",!1),supportsSync:r.includes("sync"),supportsUpdate:n,supportsExceedsLimitStatistics:Re(t,"supportsExceedsLimitStatistics",!1)}}_readQueryCapabilities(e){var t;const r=e.advancedQueryCapabilities,i=e.ownershipBasedAccessControlForFeatures,o=e.archivingInfo,s=null==(t=this.url)?void 0:t.includes("MapServer"),n=!c("mapserver-pbf-enabled")&&s&&this.version<10.81,a=(e.supportedQueryFormats||"").split(",").reduce(((e,t)=>{const r=t.toLowerCase().trim();return r&&e.add(r),e}),new Set);return{supportsStatistics:Re(r,"supportsStatistics",e.supportsStatistics),supportsPercentileStatistics:Re(r,"supportsPercentileStatistics",!1),supportsCentroid:Re(r,"supportsReturningGeometryCentroid",!1),supportsDistance:Re(r,"supportsQueryWithDistance",!1),supportsDistinct:Re(r,"supportsDistinct",e.supportsAdvancedQueries),supportsExtent:Re(r,"supportsReturningQueryExtent",!1),supportsGeometryProperties:Re(r,"supportsReturningGeometryProperties",!1),supportsHavingClause:Re(r,"supportsHavingClause",!1),supportsOrderBy:Re(r,"supportsOrderBy",e.supportsAdvancedQueries),supportsPagination:Re(r,"supportsPagination",!1),supportsQuantization:Re(e,"supportsCoordinatesQuantization",!1),supportsQuantizationEditMode:Re(e,"supportsQuantizationEditMode",!1),supportsQueryGeometry:Re(e,"supportsReturningQueryGeometry",!1),supportsResultType:Re(r,"supportsQueryWithResultType",!1),supportsMaxRecordCountFactor:Re(r,"supportsMaxRecordCountFactor",!1),supportsSqlExpression:Re(r,"supportsSqlExpression",!1),supportsStandardizedQueriesOnly:Re(e,"useStandardizedQueries",!1),supportsTopFeaturesQuery:Re(r,"supportsTopFeaturesQuery",!1),supportsQueryByOthers:Re(i,"allowOthersToQuery",!0),supportsHistoricMoment:Re(o,"supportsQueryWithHistoricMoment",!1),supportsFormatPBF:!n&&a.has("pbf"),supportsDisjointSpatialRelationship:Re(r,"supportsDisjointSpatialRel",!1),supportsCacheHint:Re(r,"supportsQueryWithCacheHint",!1),maxRecordCountFactor:Ae(e,"maxRecordCountFactor",void 0),maxRecordCount:Ae(e,"maxRecordCount",void 0),standardMaxRecordCount:Ae(e,"standardMaxRecordCount",void 0),tileMaxRecordCount:Ae(e,"tileMaxRecordCount",void 0)}}_readQueryRelatedCapabilities(e){const t=e.advancedQueryCapabilities,r=Re(t,"supportsAdvancedQueryRelated",!1);return{supportsPagination:Re(t,"supportsQueryRelatedPagination",!1),supportsCount:r,supportsOrderBy:r}}_readEditingCapabilities(e){const t=e.ownershipBasedAccessControlForFeatures;return{supportsGeometryUpdate:Re(e,"allowGeometryUpdates",!0),supportsGlobalId:Re(e,"supportsApplyEditsWithGlobalIds",!1),supportsReturnServiceEditsInSourceSpatialReference:Re(e,"supportsReturnServiceEditsInSourceSR",!1),supportsRollbackOnFailure:Re(e,"supportsRollbackOnFailureParameter",!1),supportsUpdateWithoutM:Re(e,"allowUpdateWithoutMValues",!1),supportsUploadWithItemId:Re(e,"supportsAttachmentsByUploadId",!1),supportsDeleteByAnonymous:Re(t,"allowAnonymousToDelete",!0),supportsDeleteByOthers:Re(t,"allowOthersToDelete",!0),supportsUpdateByAnonymous:Re(t,"allowAnonymousToUpdate",!0),supportsUpdateByOthers:Re(t,"allowOthersToUpdate",!0)}}};e([E({readOnly:!0,json:{read:!1}})],Ue.prototype,"capabilities",void 0),e([x("service","capabilities",["advancedQueryCapabilities","allowGeometryUpdates","allowUpdateWithoutMValues","archivingInfo","capabilities","datesInUnknownTimezone","hasAttachments","hasM","hasZ","maxRecordCount","maxRecordCountFactor","ownershipBasedAccessControlForFeatures","standardMaxRecordCount","supportedQueryFormats","supportsAdvancedQueries","supportsApplyEditsWithGlobalIds","supportsAttachmentsByUploadId","supportsAttachmentsResizing","supportsCalculate","supportsCoordinatesQuantization","supportsExceedsLimitStatistics","supportsFieldDescriptionProperty","supportsQuantizationEditMode","supportsRollbackOnFailureParameter","supportsStatistics","supportsTruncate","supportsValidateSql","tileMaxRecordCount","useStandardizedQueries"])],Ue.prototype,"readCapabilities",null),e([E({json:{origins:{"portal-item":{write:!0},"web-map":{write:!0}}}})],Ue.prototype,"charts",void 0),e([E({readOnly:!0})],Ue.prototype,"createQueryVersion",null),e([E({type:String,json:{read:{source:"layerDefinition.copyrightText"},origins:{service:{read:{source:"copyrightText"}}}}})],Ue.prototype,"copyright",void 0),e([E({type:Boolean})],Ue.prototype,"datesInUnknownTimezone",void 0),e([E({type:String,json:{read:{source:"layerDefinition.displayField"},origins:{service:{read:{source:"displayField"}}}}})],Ue.prototype,"displayField",void 0),e([E({type:String,json:{origins:{service:{read:!1,write:!1}},name:"layerDefinition.definitionExpression",write:{enabled:!0,allowNull:!0}}})],Ue.prototype,"definitionExpression",void 0),e([E({types:p,readOnly:!0})],Ue.prototype,"defaultSymbol",void 0),e([E({type:Fe})],Ue.prototype,"dynamicDataSource",void 0),e([E({readOnly:!0})],Ue.prototype,"editFieldsInfo",void 0),e([E({type:Boolean})],Ue.prototype,"editingEnabled",null),e([x(["portal-item","web-scene"],"editingEnabled",["layerDefinition.capabilities"])],Ue.prototype,"readEditingEnabled",null),e([x("web-map","editingEnabled",["capabilities","layerDefinition.capabilities"])],Ue.prototype,"readEditingEnabledFromWebMap",null),e([C(["portal-item","web-scene"],"editingEnabled",{"layerDefinition.capabilities":{type:String}})],Ue.prototype,"writeEditingEnabled",null),e([C("web-map","editingEnabled",{capabilities:{type:String},"layerDefinition.capabilities":{type:String}})],Ue.prototype,"writeEditingEnabledToWebMap",null),e([E({readOnly:!0})],Ue.prototype,"editingInfo",void 0),e([x("editingInfo")],Ue.prototype,"readEditingInfo",null),e([E(Y)],Ue.prototype,"elevationInfo",void 0),e([E(ue)],Ue.prototype,"featureReduction",void 0),e([E({...qe.fields,json:{read:{source:"layerDefinition.fields"},origins:{service:{name:"fields"},"web-map":{write:{target:"layerDefinition.fields",overridePolicy:Qe}}}}})],Ue.prototype,"fields",void 0),e([E(qe.fieldsIndex)],Ue.prototype,"fieldsIndex",void 0),e([E({type:ve,json:{read:{source:"layerDefinition.floorInfo"},write:{target:"layerDefinition.floorInfo"}}})],Ue.prototype,"floorInfo",void 0),e([E({type:L,json:{name:"formInfo",write:!0,origins:{"web-scene":{read:!1,write:!1}}}})],Ue.prototype,"formTemplate",void 0),e([E({type:O,json:{origins:{service:{read:{source:"extent"}}},read:{source:"layerDefinition.extent"}}})],Ue.prototype,"fullExtent",void 0),e([E()],Ue.prototype,"gdbVersion",void 0),e([E({readOnly:!0,type:fe,json:{read:{source:"geometryProperties"}}})],Ue.prototype,"geometryFieldsInfo",void 0),e([E({type:["point","polygon","polyline","multipoint","multipatch","mesh"],json:{origins:{service:{read:Me.read},"web-map":{write:{target:"layerDefinition.geometryType",overridePolicy:Qe,writer(e,t,r){const i=e?Me.toJSON(e):null;i&&v(r,i,t)}}}},read:{source:"layerDefinition.geometryType",reader:Me.read}}})],Ue.prototype,"geometryType",void 0),e([E({type:Boolean,json:{origins:{service:{read:!0}},read:{source:"layerDefinition.hasM"}}})],Ue.prototype,"hasM",void 0),e([E({type:Boolean,json:{origins:{service:{read:!0}},read:{source:"layerDefinition.hasZ"}}})],Ue.prototype,"hasZ",void 0),e([E({readOnly:!0,type:P})],Ue.prototype,"heightModelInfo",void 0),e([E({type:Date})],Ue.prototype,"historicMoment",void 0),e([E(ee)],Ue.prototype,"id",void 0),e([E({readOnly:!0,json:{origins:{service:{read:!0}},read:!1}})],Ue.prototype,"infoFor3D",void 0),e([E({readOnly:!0,json:{origins:{"web-map":{write:{target:"layerDefinition.type"}}}}})],Ue.prototype,"isTable",void 0),e([x("service","isTable",["type","geometryType"]),x("isTable",["layerDefinition.type","layerDefinition.geometryType"])],Ue.prototype,"readIsTable",null),e([C("web-map","isTable")],Ue.prototype,"writeIsTable",null),e([E(te)],Ue.prototype,"labelsVisible",void 0),e([E({type:[be],json:{origins:{service:{read:{source:"drawingInfo.labelingInfo",reader:ge},write:{target:"drawingInfo.labelingInfo",enabled:!1}}},read:{source:"layerDefinition.drawingInfo.labelingInfo",reader:ge},write:{target:"layerDefinition.drawingInfo.labelingInfo"}}})],Ue.prototype,"labelingInfo",void 0),e([E(re)],Ue.prototype,"opacity",void 0),e([E({type:Number,json:{origins:{service:{read:{source:"id"}}},read:!1}})],Ue.prototype,"layerId",void 0),e([E(ie)],Ue.prototype,"legendEnabled",void 0),e([E({type:["show","hide"]})],Ue.prototype,"listMode",void 0),e([E(oe)],Ue.prototype,"minScale",void 0),e([x("service","minScale",["minScale","effectiveMinScale"])],Ue.prototype,"readMinScale",null),e([E(se)],Ue.prototype,"maxScale",void 0),e([x("service","maxScale",["maxScale","effectiveMaxScale"])],Ue.prototype,"readMaxScale",null),e([E({type:String})],Ue.prototype,"globalIdField",void 0),e([x("globalIdField",["layerDefinition.globalIdField","layerDefinition.fields"]),x("service","globalIdField",["globalIdField","fields"])],Ue.prototype,"readGlobalIdFieldFromService",null),e([E({type:String,json:{origins:{"web-map":{write:{target:"layerDefinition.objectIdField",overridePolicy:Qe}}}}})],Ue.prototype,"objectIdField",void 0),e([x("objectIdField",["layerDefinition.objectIdField","layerDefinition.fields"]),x("service","objectIdField",["objectIdField","fields"])],Ue.prototype,"readObjectIdFieldFromService",null),e([E({value:"ArcGISFeatureLayer",type:["ArcGISFeatureLayer"]})],Ue.prototype,"operationalLayerType",void 0),e([E(qe.outFields)],Ue.prototype,"outFields",void 0),e([E({readOnly:!0})],Ue.prototype,"parsedUrl",null),e([E({type:String,json:{origins:{"web-scene":{read:!0,write:!0}},read:!1}})],Ue.prototype,"path",void 0),e([E(ne)],Ue.prototype,"popupEnabled",void 0),e([E({type:t,json:{name:"popupInfo",write:!0}})],Ue.prototype,"popupTemplate",void 0),e([E({readOnly:!0})],Ue.prototype,"defaultPopupTemplate",null),e([E({type:[we],readOnly:!0})],Ue.prototype,"relationships",void 0),e([E({types:s,json:{origins:{service:{write:{target:"drawingInfo.renderer",enabled:!1}},"web-scene":{types:n,name:"layerDefinition.drawingInfo.renderer",write:{overridePolicy:(e,t,r)=>({ignoreOrigin:null==r?void 0:r.writeLayerSchema})}}},write:{target:"layerDefinition.drawingInfo.renderer",overridePolicy:(e,t,r)=>({ignoreOrigin:null==r?void 0:r.writeLayerSchema})}}})],Ue.prototype,"renderer",null),e([x("service","renderer",["drawingInfo.renderer","defaultSymbol"]),x("renderer",["layerDefinition.drawingInfo.renderer","layerDefinition.defaultSymbol"])],Ue.prototype,"readRenderer",null),e([E()],Ue.prototype,"sourceJSON",void 0),e([E({type:Boolean})],Ue.prototype,"returnM",void 0),e([E({type:Boolean})],Ue.prototype,"returnZ",void 0),e([E(ae)],Ue.prototype,"screenSizePerspectiveEnabled",void 0),e([E()],Ue.prototype,"source",null),e([T("source")],Ue.prototype,"castSource",null),e([x("portal-item","source",["featureSet"]),x("web-map","source",["featureSet"])],Ue.prototype,"readSource",null),e([E({readOnly:!0})],Ue.prototype,"serviceDefinitionExpression",void 0),e([x("service","serviceDefinitionExpression",["definitionQuery","definitionExpression"])],Ue.prototype,"readServiceDefinitionExpression",null),e([E({type:_,json:{origins:{service:{read:{source:"extent.spatialReference"}}},read:{source:"layerDefinition.extent.spatialReference"}}})],Ue.prototype,"spatialReference",void 0),e([E({type:Number})],Ue.prototype,"subtypeCode",void 0),e([E({type:[de]})],Ue.prototype,"templates",void 0),e([x("templates",["editFieldsInfo","creatorField","editorField","templates"])],Ue.prototype,"readTemplates",null),e([E({type:Ie})],Ue.prototype,"timeInfo",void 0),e([E()],Ue.prototype,"title",void 0),e([x("service","title",["name"]),x("portal-item","title",["layerDefinition.title","layerDefinition.name","title"])],Ue.prototype,"readTitle",null),e([x("web-map","title",["layerDefinition.name","title"])],Ue.prototype,"readTitleFromWebMap",null),e([E({type:String})],Ue.prototype,"sublayerTitleMode",void 0),e([E({type:String,json:{read:{source:"timeInfo.trackIdField"}}})],Ue.prototype,"trackIdField",void 0),e([E({json:{read:!1}})],Ue.prototype,"type",void 0),e([E({type:String})],Ue.prototype,"typeIdField",void 0),e([x("service","typeIdField"),x("typeIdField",["layerDefinition.typeIdField"])],Ue.prototype,"readTypeIdField",null),e([E({type:[ye]})],Ue.prototype,"types",void 0),e([x("service","types",["types"]),x("types",["layerDefinition.types"])],Ue.prototype,"readTypes",null),e([E({readOnly:!0,json:{write:!1}})],Ue.prototype,"serverGens",void 0),e([E({type:u.ofType(le),readOnly:!0})],Ue.prototype,"indexes",void 0),e([E(pe)],Ue.prototype,"url",null),e([C("url")],Ue.prototype,"writeUrl",null),e([E({readOnly:!0})],Ue.prototype,"userIsAdmin",void 0),e([E({json:{origins:{service:{read:!0}},read:!1}})],Ue.prototype,"version",void 0),e([x("service","version",["currentVersion","capabilities","drawingInfo","hasAttachments","htmlPopupType","relationships","timeInfo","typeIdField","types"])],Ue.prototype,"readVersion",null),e([E({type:Boolean,json:{origins:{"portal-item":{write:{target:"layerDefinition.defaultVisibility"}}}}})],Ue.prototype,"visible",void 0),e([x("portal-item","visible",["visibility","layerDefinition.defaultVisibility"])],Ue.prototype,"readVisible",null),Ue=e([D("esri.layers.FeatureLayer")],Ue);const Ve=M({types:l}),Ge=Ue;export{Ge as default};
5
+ import{_ as e}from"../chunks/tslib.es6.js";import t from"../PopupTemplate.js";import"../renderers/ClassBreaksRenderer.js";import"../renderers/DictionaryRenderer.js";import"../renderers/DotDensityRenderer.js";import"../renderers/HeatmapRenderer.js";import"../renderers/Renderer.js";import r from"../renderers/SimpleRenderer.js";import i from"../renderers/UniqueValueRenderer.js";import{read as o}from"../renderers/support/jsonUtils.js";import{rendererTypes as s,webSceneRendererTypes as n}from"../renderers/support/types.js";import a from"../request.js";import{symbolTypes as p,symbolTypesRenderer as l}from"../symbols.js";import u from"../core/Collection.js";import d from"../core/Error.js";import y from"../core/Handles.js";import c from"../core/has.js";import{JSONMap as h}from"../core/jsonMap.js";import m from"../core/Logger.js";import{destroyMaybe as f,isSome as g}from"../core/maybe.js";import{MultiOriginJSONMixin as b}from"../core/MultiOriginJSONSupport.js";import{setDeepValue as v}from"../core/object.js";import{throwIfAbortError as w,whenOrAbort as S}from"../core/promiseUtils.js";import{parseWhereClause as I}from"../core/sql.js";import{urlToObject as F,join as j}from"../core/urlUtils.js";import{property as E}from"../core/accessorSupport/decorators/property.js";import"../core/arrayUtils.js";import{cast as T}from"../core/accessorSupport/decorators/cast.js";import{reader as x}from"../core/accessorSupport/decorators/reader.js";import{subclass as D}from"../core/accessorSupport/decorators/subclass.js";import{writer as C}from"../core/accessorSupport/decorators/writer.js";import{createTypeReader as M}from"../core/accessorSupport/extensions/serializableProperty/reader.js";import L from"../form/FormTemplate.js";import O from"../geometry/Extent.js";import A from"../geometry/HeightModelInfo.js";import P from"../geometry/SpatialReference.js";import _ from"./Layer.js";import R from"./graphics/sources/MemorySource.js";import{APIKeyMixin as q}from"./mixins/APIKeyMixin.js";import{ArcGISService as Q}from"./mixins/ArcGISService.js";import{BlendLayer as U}from"./mixins/BlendLayer.js";import{CustomParametersMixin as V}from"./mixins/CustomParametersMixin.js";import{FeatureEffectLayer as G}from"./mixins/FeatureEffectLayer.js";import{OperationalLayer as z}from"./mixins/OperationalLayer.js";import{OrderedLayer as B}from"./mixins/OrderedLayer.js";import{PortalLayer as k}from"./mixins/PortalLayer.js";import{RefreshableLayer as N}from"./mixins/RefreshableLayer.js";import{ScaleRangeLayer as W}from"./mixins/ScaleRangeLayer.js";import{TemporalLayer as J}from"./mixins/TemporalLayer.js";import{titleFromUrlAndName as Z,parse as H,cleanTitle as $,sanitizeUrlWithLayerId as K,writeUrlWithLayerId as X}from"./support/arcgisLayerUrl.js";import{elevationInfo as Y,id as ee,labelsVisible as te,opacityDrawingInfo as re,legendEnabled as ie,minScale as oe,maxScale as se,popupEnabled as ne,screenSizePerspectiveEnabled as ae,url as pe}from"./support/commonProperties.js";import{FeatureIndex as le}from"./support/FeatureIndex.js";import{featureReductionProperty as ue}from"./support/featureReductionUtils.js";import de from"./support/FeatureTemplate.js";import ye from"./support/FeatureType.js";import{defineFieldProperties as ce}from"./support/fieldProperties.js";import{fixRendererFields as he,fixTimeInfoFields as me}from"./support/fieldUtils.js";import fe from"./support/GeometryFieldsInfo.js";import ge from"./support/LabelClass.js";import{reader as be}from"./support/labelingInfo.js";import ve from"./support/LayerFloorInfo.js";import we from"./support/Relationship.js";import Se from"./support/TimeInfo.js";import{DataLayerSource as Ie}from"./support/source/DataLayerSource.js";import{loadStyleRenderer as Fe}from"../renderers/support/styleUtils.js";import je from"../rest/support/AttachmentQuery.js";import Ee from"../rest/support/FeatureSet.js";import Te from"../rest/support/Query.js";import xe from"../rest/support/RelationshipQuery.js";import De from"../rest/support/TopFeaturesQuery.js";import{createPopupTemplate as Ce}from"../support/popupUtils.js";const Me=new h({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryMultiPatch:"multipatch"}),Le={name:"supportsName",size:"supportsSize",contentType:"supportsContentType",keywords:"supportsKeywords",exifInfo:"supportsExifInfo"},Oe="FeatureLayer",Ae=m.getLogger("esri.layers.FeatureLayer");function Pe(e){return e&&e instanceof u}function _e(e,t,r){return!!(e&&e.hasOwnProperty(t)?e[t]:r)}function Re(e,t,r){return e&&e.hasOwnProperty(t)?e[t]:r}function qe(e){var t;const r=null==e||null==(t=e.supportedSpatialAggregationStatistics)?void 0:t.map((e=>e.toLowerCase()));return{envelope:!(null==r||!r.includes("envelopeaggregate")),centroid:!(null==r||!r.includes("centroidaggregate")),convexHull:!(null==r||!r.includes("convexhullaggregate"))}}const Qe=ce();function Ue(e,t,r){const i=!(null==r||!r.writeLayerSchema);return{enabled:i,ignoreOrigin:i}}let Ve=class extends(G(U(B(J(W(N(Q(z(k(b(V(q(_))))))))))))){constructor(...e){super(...e),this._handles=new y,this.capabilities=null,this.charts=null,this.copyright=null,this.datesInUnknownTimezone=!1,this.displayField=null,this.definitionExpression=null,this.dynamicDataSource=null,this.editFieldsInfo=null,this.editingInfo=null,this.elevationInfo=null,this.featureReduction=null,this.fields=null,this.fieldsIndex=null,this.floorInfo=null,this.formTemplate=null,this.fullExtent=null,this.gdbVersion=null,this.geometryFieldsInfo=null,this.geometryType=null,this.hasM=void 0,this.hasZ=void 0,this.heightModelInfo=null,this.historicMoment=null,this.infoFor3D=null,this.isTable=!1,this.labelsVisible=!0,this.labelingInfo=null,this.layerId=void 0,this.legendEnabled=!0,this.minScale=0,this.maxScale=0,this.globalIdField=null,this.objectIdField=null,this.outFields=null,this.path=null,this.popupEnabled=!0,this.popupTemplate=null,this.relationships=null,this.sourceJSON=null,this.returnM=void 0,this.returnZ=void 0,this.screenSizePerspectiveEnabled=!0,this.serviceDefinitionExpression=null,this.spatialReference=P.WGS84,this.subtypeCode=null,this.templates=null,this.timeInfo=null,this.title=null,this.sublayerTitleMode="item-title",this.trackIdField=null,this.type="feature",this.typeIdField=null,this.types=null,this.indexes=new(u.ofType(le)),this.userIsAdmin=!1,this.version=void 0,this.visible=!0}destroy(){var e;null==(e=this.source)||e.destroy(),this._handles=f(this._handles)}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}load(e){const t=g(e)?e.signal:null;if(this.portalItem&&this.portalItem.loaded&&this.source)return void this.addResolvingPromise(this.createGraphicsSource(t).then((e=>this._initLayerProperties(e))));const r=this.loadFromPortal({supportedTypes:["Feature Service","Feature Collection"]},e).catch(w).then((async()=>{if(this.url&&null==this.layerId&&/FeatureServer|MapServer\/*$/i.test(this.url)){const e=await this._fetchFirstLayerId(t);null!=e&&(this.layerId=e)}if(!this.url&&!this._hasMemorySource())throw new d("feature-layer:missing-url-or-source","Feature layer must be created with either a url or a source");return this._initLayerProperties(await this.createGraphicsSource(t))})).then((()=>this.finishLoadEditablePortalLayer(e)));return this.addResolvingPromise(r),Promise.resolve(this)}readCapabilities(e,t){return t=t.layerDefinition||t,{attachment:this._readAttachmentCapabilities(t.attachmentProperties),data:this._readDataCapabilities(t),metadata:this._readMetadataCapabilities(t),operations:this._readOperationsCapabilities(t.capabilities||e,t),query:this._readQueryCapabilities(t),queryRelated:this._readQueryRelatedCapabilities(t),editing:this._readEditingCapabilities(t)}}get createQueryVersion(){return this.commitProperty("definitionExpression"),this.commitProperty("dynamicDataSource"),this.commitProperty("timeExtent"),this.commitProperty("timeOffset"),this.commitProperty("geometryType"),this.commitProperty("gdbVersion"),this.commitProperty("historicMoment"),this.commitProperty("returnZ"),this.commitProperty("capabilities"),this.commitProperty("returnM"),(this._get("createQueryVersion")||0)+1}get editingEnabled(){return!(this.loaded&&!this.capabilities.operations.supportsEditing)&&(this._isOverridden("editingEnabled")?this._get("editingEnabled"):this._hasMemorySource()||this.userHasEditingPrivileges)}set editingEnabled(e){null!=e?this._override("editingEnabled",e):this._clearOverride("editingEnabled")}readEditingEnabled(e,t){return this._readEditingEnabled(t,!1)}readEditingEnabledFromWebMap(e,t,r){return this._readEditingEnabled(t,!0,r)}writeEditingEnabled(e,t){this._writeEditingEnabled(e,t,!1)}writeEditingEnabledToWebMap(e,t,r,i){this._writeEditingEnabled(e,t,!0,i)}readEditingInfo(e,t){const{editingInfo:r}=t;return r?{lastEditDate:null!=r.lastEditDate?new Date(r.lastEditDate):null}:null}readIsTable(e,t){return"Table"===(t=t&&t.layerDefinition||t).type||!t.geometryType}writeIsTable(e,t,r,i){null!=i&&i.writeLayerSchema&&v(r,e?"Table":"Feature Layer",t)}readMinScale(e,t){return t.effectiveMinScale||e||0}readMaxScale(e,t){return t.effectiveMaxScale||e||0}readGlobalIdFieldFromService(e,t){if((t=t.layerDefinition||t).globalIdField)return t.globalIdField;if(t.fields)for(const r of t.fields)if("esriFieldTypeGlobalID"===r.type)return r.name}readObjectIdFieldFromService(e,t){if((t=t.layerDefinition||t).objectIdField)return t.objectIdField;if(t.fields)for(const r of t.fields)if("esriFieldTypeOID"===r.type)return r.name}get parsedUrl(){const e=this.url?F(this.url):null;return null!=e&&(null!=this.dynamicDataSource?e.path=j(e.path,"dynamicLayer"):null!=this.layerId&&(e.path=j(e.path,this.layerId.toString()))),e}get defaultPopupTemplate(){return this.createPopupTemplate()}set renderer(e){he(e,this.fieldsIndex),this._set("renderer",e)}readRenderer(e,t,s){const n=(t=t.layerDefinition||t).drawingInfo&&t.drawingInfo.renderer||void 0;if(n){const e=o(n,t,s)||void 0;return e||Ae.error("Failed to create renderer",{rendererDefinition:t.drawingInfo.renderer,layer:this,context:s}),e}if(t.defaultSymbol)return t.types&&t.types.length?new i({defaultSymbol:Ge(t.defaultSymbol,t,s),field:t.typeIdField,uniqueValueInfos:t.types.map((e=>({id:e.id,symbol:Ge(e.symbol,e,s)})))}):new r({symbol:Ge(t.defaultSymbol,t,s)})}set source(e){const t=this._get("source");t!==e&&(Pe(t)&&this._resetMemorySource(t),Pe(e)&&this._initMemorySource(e),this._set("source",e))}castSource(e){return e?Array.isArray(e)||e instanceof u?new R({layer:this,items:e}):e:null}readSource(e,t){const r=Ee.fromJSON(t.featureSet);return new R({layer:this,items:r&&r.features||[]})}readServiceDefinitionExpression(e,t){return t.definitionQuery||t.definitionExpression}readTemplates(e,t){const r=t.editFieldsInfo,i=r&&r.creatorField,o=r&&r.editorField;return e=e&&e.map((e=>de.fromJSON(e))),this._fixTemplates(e,i),this._fixTemplates(e,o),e}readTitle(e,t){const r=t.layerDefinition&&t.layerDefinition.name||t.name,i=t.title||t.layerDefinition&&t.layerDefinition.title;if(r){const e=this.portalItem&&this.portalItem.title;if("item-title"===this.sublayerTitleMode)return this.url?Z(this.url,r):r;let t=r;if(!t&&this.url){const e=H(this.url);g(e)&&(t=e.title)}if(!t)return;return"item-title-and-service-name"===this.sublayerTitleMode&&e&&e!==t&&(t=e+" - "+t),$(t)}if("item-title"===this.sublayerTitleMode&&i)return i}readTitleFromWebMap(e,t){return t.title||t.layerDefinition&&t.layerDefinition.name}readTypeIdField(e,t){let r=(t=t.layerDefinition||t).typeIdField;if(r&&t.fields){r=r.toLowerCase();const e=t.fields.find((e=>e.name.toLowerCase()===r));e&&(r=e.name)}return r}readTypes(e,t){e=(t=t.layerDefinition||t).types;const r=t.editFieldsInfo,i=r&&r.creatorField,o=r&&r.editorField;return e&&e.map((e=>(e=ye.fromJSON(e),this._fixTemplates(e.templates,i),this._fixTemplates(e.templates,o),e)))}set url(e){const t=K({layer:this,url:e,nonStandardUrlAllowed:!0,logger:Ae});this._set("url",t.url),null!=t.layerId&&this._set("layerId",t.layerId)}writeUrl(e,t,r,i){X(this,e,null,t,i)}readVersion(e,t){return t.currentVersion?t.currentVersion:t.hasOwnProperty("capabilities")||t.hasOwnProperty("drawingInfo")||t.hasOwnProperty("hasAttachments")||t.hasOwnProperty("htmlPopupType")||t.hasOwnProperty("relationships")||t.hasOwnProperty("timeInfo")||t.hasOwnProperty("typeIdField")||t.hasOwnProperty("types")?10:9.3}readVisible(e,t){return t.layerDefinition&&null!=t.layerDefinition.defaultVisibility?!!t.layerDefinition.defaultVisibility:null!=t.visibility?!!t.visibility:void 0}addAttachment(e,t){return this.load().then((()=>this._checkAttachmentSupport(e))).then((()=>{if(!("addAttachment"in this.source))throw new d(Oe,"Layer source does not support addAttachment capability");return this.source.addAttachment(e,t)}))}updateAttachment(e,t,r){return this.load().then((()=>this._checkAttachmentSupport(e))).then((()=>{if(!("updateAttachment"in this.source))throw new d(Oe,"Layer source does not support updateAttachment capability");return this.source.updateAttachment(e,t,r)}))}async applyEdits(e,t){const r=await import("./graphics/editingSupport.js");return await this.load(),r.applyEdits(this,this.source,e,t)}on(e,t){return super.on(e,t)}createPopupTemplate(e){return Ce(this,e)}async createGraphicsSource(e){if(this._hasMemorySource())return this.source.load({signal:e});const{default:t}=await S(import("./graphics/sources/FeatureLayerSource.js"),e);return new t({layer:this}).load({signal:e})}createQuery(){const e=new Te,t=this.get("capabilities.data");e.dynamicDataSource=this.dynamicDataSource,e.gdbVersion=this.gdbVersion,e.historicMoment=this.historicMoment,e.returnGeometry=!0,t&&(t.supportsZ&&null!=this.returnZ&&(e.returnZ=this.returnZ),t.supportsM&&null!=this.returnM&&(e.returnM=this.returnM)),e.outFields=["*"],e.where=this.definitionExpression||"1=1";const{timeOffset:r,timeExtent:i}=this;return e.timeExtent=null!=r&&null!=i?i.offset(-r.value,r.unit):i||null,e.multipatchOption="multipatch"===this.geometryType?"xyFootprint":null,e}deleteAttachments(e,t){return this.load().then((()=>this._checkAttachmentSupport(e))).then((()=>{if(!("deleteAttachments"in this.source))throw new d(Oe,"Layer source does not support deleteAttachments capability");return this.source.deleteAttachments(e,t)}))}fetchRecomputedExtents(e){return this.load({signal:null==e?void 0:e.signal}).then((()=>{if(this.source.fetchRecomputedExtents)return this.source.fetchRecomputedExtents(e);throw new d(Oe,"Layer source does not support fetchUpdates capability")}))}getFeatureType(e){const{typeIdField:t,types:r}=this;if(!t||!e)return null;const i=e.attributes?e.attributes[t]:void 0;if(null==i)return null;let o=null;return r.some((e=>{const{id:t}=e;return null!=t&&(t.toString()===i.toString()&&(o=e),!!o)})),o}getFieldDomain(e,t){const r=t&&t.feature,i=this.getFeatureType(r);if(i){const t=i.domains&&i.domains[e];if(t&&"inherited"!==t.type)return t}return this._getLayerDomain(e)}getField(e){return this.fieldsIndex.get(e)}queryAttachments(e,t){return e=je.from(e),this.load().then((()=>{if(!this.get("capabilities.data.supportsAttachment"))throw new d(Oe,"this layer doesn't support attachments");const{attachmentTypes:t,objectIds:r,globalIds:i,num:o,size:s,start:n,where:a}=e;if(!this.get("capabilities.operations.supportsQueryAttachments")){const p=r&&r.length>1,l=t&&t.length,u=i&&i.length,y=s&&s.length;if(p||l||u||y||o||n||a)throw new d(Oe,"when 'supportsQueryAttachments' is false, only objectIds of length 1 are supported",e)}if(!(r&&r.length||a))throw new d(Oe,"'objectIds' or 'where' are required to perform attachment query",e);if(!("queryAttachments"in this.source))throw new d(Oe,"Layer source does not support queryAttachments capability",e);return this.source.queryAttachments(e)}))}queryFeatures(e,t){return this.load().then((()=>this.source.queryFeatures(Te.from(e)||this.createQuery(),t))).then((e=>{if(null!=e&&e.features)for(const t of e.features)t.layer=t.sourceLayer=this;return e}))}queryObjectIds(e,t){return this.load().then((()=>{if(this.source.queryObjectIds)return this.source.queryObjectIds(Te.from(e)||this.createQuery(),t);throw new d(Oe,"Layer source does not support queryObjectIds capability")}))}queryFeatureCount(e,t){return this.load().then((()=>{if(this.source.queryFeatureCount)return this.source.queryFeatureCount(Te.from(e)||this.createQuery(),t);throw new d(Oe,"Layer source does not support queryFeatureCount capability")}))}queryExtent(e,t){return this.load().then((()=>{if(this.source.queryExtent)return this.source.queryExtent(Te.from(e)||this.createQuery(),t);throw new d(Oe,"Layer source does not support queryExtent capability")}))}queryRelatedFeatures(e,t){return this.load().then((()=>{if("queryRelatedFeatures"in this.source)return this.source.queryRelatedFeatures(xe.from(e),t);throw new d(Oe,"Layer source does not support queryRelatedFeatures capability")}))}queryRelatedFeaturesCount(e,t){return this.load().then((()=>{if("queryRelatedFeaturesCount"in this.source)return this.source.queryRelatedFeaturesCount(xe.from(e),t);throw new d(Oe,"Layer source does not support queryRelatedFeaturesCount capability")}))}queryTopFeatures(e,t){return this.load().then((()=>{if("queryTopFeatures"in this.source&&this.get("capabilities.query.supportsTopFeaturesQuery"))return this.source.queryTopFeatures(De.from(e),t).then((e=>{if(null!=e&&e.features)for(const t of e.features)t.layer=t.sourceLayer=this;return e}));throw new d(Oe,"Layer source does not support queryTopFeatures capability")}))}queryTopObjectIds(e,t){return this.load().then((()=>{if("queryTopObjectIds"in this.source&&this.get("capabilities.query.supportsTopFeaturesQuery"))return this.source.queryTopObjectIds(De.from(e),t);throw new d(Oe,"Layer source does not support queryTopObjectIds capability")}))}queryTopFeaturesExtent(e,t){return this.load().then((()=>{if("queryTopExtents"in this.source&&this.get("capabilities.query.supportsTopFeaturesQuery"))return this.source.queryTopExtents(De.from(e),t);throw new d(Oe,"Layer source does not support queryTopExtents capability")}))}queryTopFeatureCount(e,t){return this.load().then((()=>{if("queryTopCount"in this.source&&this.get("capabilities.query.supportsTopFeaturesQuery"))return this.source.queryTopCount(De.from(e),t);throw new d(Oe,"Layer source does not support queryFeatureCount capability")}))}read(e,t){const r=e.featureCollection;if(r){const e=r.layers;e&&1===e.length&&(super.read(e[0],t),null!=r.showLegend&&super.read({showLegend:r.showLegend},t))}super.read(e,t),t&&"service"===t.origin&&this.revert(["objectIdField","fields","timeInfo","spatialReference"],"service")}write(e,t){var r,i;const o=(t={...t,writeLayerSchema:null!=(r=null==(i=t)?void 0:i.writeLayerSchema)?r:this._hasMemorySource()}).origin,s=t.layerContainerType,n=t.messages;if(this.isTable){if("web-scene"===o||"web-map"===o&&"tables"!==s)return n&&n.push(new d("layer:unsupported",`Layer (${this.title}, ${this.id}) of type '${this.declaredClass}' using a Table source cannot be written to web scenes and web maps`,{layer:this})),null;if(this._hasMemorySource())return n&&n.push(new d("layer:unsupported",`Layer (${this.title}, ${this.id}) of type '${this.declaredClass}' using an in-memory Table source cannot be written to web scenes and web maps`,{layer:this})),null}else if(this.loaded&&"web-map"===o&&"tables"===s)return n&&n.push(new d("layer:unsupported",`Layer (${this.title}, ${this.id}) of type '${this.declaredClass}' using a non-table source cannot be written to tables in web maps`,{layer:this})),null;return super.write(e,t)}_readEditingEnabled(e,t,r){var i;let o=null==(i=e.layerDefinition)?void 0:i.capabilities;return o?this._hasEditingCapability(o):(o=e.capabilities,t&&"web-map"===(null==r?void 0:r.origin)&&!this._hasMemorySource()&&o?this._hasEditingCapability(o):void 0)}_hasEditingCapability(e){return e.toLowerCase().split(",").map((e=>e.trim())).includes("editing")}_writeEditingEnabled(e,t,r,i){if(!e){var o,s;const e=null!=(o=this.capabilities)&&null!=(s=o.operations)&&s.supportsSync?"Query,Sync":"Query";v("layerDefinition.capabilities",e,t),!r||null!=i&&i.writeLayerSchema||(t.capabilities=e)}}_checkAttachmentSupport(e){const{attributes:t}=e,{objectIdField:r}=this;return this.get("capabilities.data.supportsAttachment")?e?t?t[r]?void 0:Promise.reject(new d(Oe,`feature is missing the identifying attribute ${r}`)):Promise.reject(new d(Oe,"'attributes' are required on a feature to query attachments")):Promise.reject(new d(Oe,"A feature is required to add/delete/update attachments")):Promise.reject(new d(Oe,"this layer doesn't support attachments"))}_getLayerDomain(e){const t=this.fieldsIndex.get(e);return t?t.domain:null}_fetchFirstLayerId(e){return a(this.url,{query:{f:"json",...this.customParameters,token:this.apiKey},responseType:"json",signal:e}).then((e=>{const t=e.data;if(t)return Array.isArray(t.layers)&&t.layers.length>0?t.layers[0].id:Array.isArray(t.tables)&&t.tables.length>0?t.tables[0].id:void 0}))}async _initLayerProperties(e){return this._set("source",e),e.sourceJSON&&(this.sourceJSON=e.sourceJSON,this.read(e.sourceJSON,{origin:"service",url:this.parsedUrl})),this._verifySource(),this._verifyFields(),he(this.renderer,this.fieldsIndex),me(this.timeInfo,this.fieldsIndex),Fe(this,{origin:"service"})}async hasDataChanged(){var e;if(null!=(e=this.source)&&e.refresh)try{var t;const{dataChanged:e,updates:r}=await(null==(t=this.source)?void 0:t.refresh());if(g(r)&&(this.sourceJSON={...this.sourceJSON,...r},this.read(r,{origin:"service",url:this.parsedUrl})),e)return!0}catch{}if(this.definitionExpression)try{return(await I(this.definitionExpression,this.fieldsIndex)).hasDateFunctions}catch{}return!1}_verifyFields(){const e=this.parsedUrl&&this.parsedUrl.path||"undefined";this.objectIdField||console.log("FeatureLayer: 'objectIdField' property is not defined (url: "+e+")"),this.isTable||this._hasMemorySource()||-1!==e.search(/\/FeatureServer\//i)||this.fields&&this.fields.some((function(e){return"geometry"===e.type}))||console.log("FeatureLayer: unable to find field of type 'geometry' in the layer 'fields' list. If you are using a map service layer, features will not have geometry (url: "+e+")")}_fixTemplates(e,t){e&&e.forEach((e=>{const r=e.prototype&&e.prototype.attributes;r&&t&&delete r[t]}))}_verifySource(){if(this._hasMemorySource()){if(this.url)throw new d("feature-layer:mixed-source-and-url","FeatureLayer cannot be created with both an in-memory source and a url")}else if(!this.url)throw new d("feature-layer:source-or-url-required","FeatureLayer requires either a url, a valid portal item or a source")}_initMemorySource(e){e.forEach((e=>{e.layer=this,e.sourceLayer=this})),this._handles.add([e.on("after-add",(e=>{e.item.layer=this,e.item.sourceLayer=this})),e.on("after-remove",(e=>{e.item.layer=null,e.item.sourceLayer=null}))],"fl-source")}_resetMemorySource(e){e.forEach((e=>{e.layer=null,e.sourceLayer=null})),this._handles.remove("fl-source")}_hasMemorySource(){return!(this.url||!this.source)}_readAttachmentCapabilities(e){const t={supportsName:!1,supportsSize:!1,supportsContentType:!1,supportsKeywords:!1,supportsExifInfo:!1};return e&&Array.isArray(e)&&e.forEach((e=>{const r=Le[e.name];r&&(t[r]=!!e.isEnabled)})),t}_readDataCapabilities(e){return{isVersioned:_e(e,"isDataVersioned",!1),supportsAttachment:_e(e,"hasAttachments",!1),supportsM:_e(e,"hasM",!1),supportsZ:_e(e,"hasZ",!1)}}_readMetadataCapabilities(e){return{supportsAdvancedFieldProperties:_e(e,"supportsFieldDescriptionProperty",!1)}}_readOperationsCapabilities(e,t){const r=e?e.toLowerCase().split(",").map((e=>e.trim())):[],i=r.includes("editing")&&!t.datesInUnknownTimezone;let o=i&&r.includes("create"),s=i&&r.includes("delete"),n=i&&r.includes("update");const a=r.includes("changetracking");return i&&!(o||s||n)&&(o=s=n=!0),{supportsCalculate:_e(t,"supportsCalculate",!1),supportsTruncate:_e(t,"supportsTruncate",!1),supportsValidateSql:_e(t,"supportsValidateSql",!1),supportsAdd:o,supportsDelete:s,supportsEditing:i,supportsChangeTracking:a,supportsQuery:r.includes("query"),supportsQueryAttachments:_e(t.advancedQueryCapabilities,"supportsQueryAttachments",!1),supportsResizeAttachments:_e(t,"supportsAttachmentsResizing",!1),supportsSync:r.includes("sync"),supportsUpdate:n,supportsExceedsLimitStatistics:_e(t,"supportsExceedsLimitStatistics",!1)}}_readQueryCapabilities(e){var t;const r=e.advancedQueryCapabilities,i=e.ownershipBasedAccessControlForFeatures,o=e.archivingInfo,s=null==(t=this.url)?void 0:t.includes("MapServer"),n=!c("mapserver-pbf-enabled")&&s&&this.version<10.81,a=(e.supportedQueryFormats||"").split(",").reduce(((e,t)=>{const r=t.toLowerCase().trim();return r&&e.add(r),e}),new Set);return{supportsStatistics:_e(r,"supportsStatistics",e.supportsStatistics),supportsPercentileStatistics:_e(r,"supportsPercentileStatistics",!1),supportsSpatialAggregationStatistics:_e(r,"supportsSpatialAggregationStatistics",!1),supportedSpatialAggregationStatistics:qe(r),supportsCentroid:_e(r,"supportsReturningGeometryCentroid",!1),supportsDistance:_e(r,"supportsQueryWithDistance",!1),supportsDistinct:_e(r,"supportsDistinct",e.supportsAdvancedQueries),supportsExtent:_e(r,"supportsReturningQueryExtent",!1),supportsGeometryProperties:_e(r,"supportsReturningGeometryProperties",!1),supportsHavingClause:_e(r,"supportsHavingClause",!1),supportsOrderBy:_e(r,"supportsOrderBy",e.supportsAdvancedQueries),supportsPagination:_e(r,"supportsPagination",!1),supportsQuantization:_e(e,"supportsCoordinatesQuantization",!1),supportsQuantizationEditMode:_e(e,"supportsQuantizationEditMode",!1),supportsQueryGeometry:_e(e,"supportsReturningQueryGeometry",!1),supportsResultType:_e(r,"supportsQueryWithResultType",!1),supportsMaxRecordCountFactor:_e(r,"supportsMaxRecordCountFactor",!1),supportsSqlExpression:_e(r,"supportsSqlExpression",!1),supportsStandardizedQueriesOnly:_e(e,"useStandardizedQueries",!1),supportsTopFeaturesQuery:_e(r,"supportsTopFeaturesQuery",!1),supportsQueryByOthers:_e(i,"allowOthersToQuery",!0),supportsHistoricMoment:_e(o,"supportsQueryWithHistoricMoment",!1),supportsFormatPBF:!n&&a.has("pbf"),supportsDisjointSpatialRelationship:_e(r,"supportsDisjointSpatialRel",!1),supportsCacheHint:_e(r,"supportsQueryWithCacheHint",!1),maxRecordCountFactor:Re(e,"maxRecordCountFactor",void 0),maxRecordCount:Re(e,"maxRecordCount",void 0),standardMaxRecordCount:Re(e,"standardMaxRecordCount",void 0),tileMaxRecordCount:Re(e,"tileMaxRecordCount",void 0)}}_readQueryRelatedCapabilities(e){const t=e.advancedQueryCapabilities,r=_e(t,"supportsAdvancedQueryRelated",!1);return{supportsPagination:_e(t,"supportsQueryRelatedPagination",!1),supportsCount:r,supportsOrderBy:r}}_readEditingCapabilities(e){const t=e.ownershipBasedAccessControlForFeatures;return{supportsGeometryUpdate:_e(e,"allowGeometryUpdates",!0),supportsGlobalId:_e(e,"supportsApplyEditsWithGlobalIds",!1),supportsReturnServiceEditsInSourceSpatialReference:_e(e,"supportsReturnServiceEditsInSourceSR",!1),supportsRollbackOnFailure:_e(e,"supportsRollbackOnFailureParameter",!1),supportsUpdateWithoutM:_e(e,"allowUpdateWithoutMValues",!1),supportsUploadWithItemId:_e(e,"supportsAttachmentsByUploadId",!1),supportsDeleteByAnonymous:_e(t,"allowAnonymousToDelete",!0),supportsDeleteByOthers:_e(t,"allowOthersToDelete",!0),supportsUpdateByAnonymous:_e(t,"allowAnonymousToUpdate",!0),supportsUpdateByOthers:_e(t,"allowOthersToUpdate",!0)}}};e([E({readOnly:!0,json:{read:!1}})],Ve.prototype,"capabilities",void 0),e([x("service","capabilities",["advancedQueryCapabilities","allowGeometryUpdates","allowUpdateWithoutMValues","archivingInfo","capabilities","datesInUnknownTimezone","hasAttachments","hasM","hasZ","maxRecordCount","maxRecordCountFactor","ownershipBasedAccessControlForFeatures","standardMaxRecordCount","supportedQueryFormats","supportsAdvancedQueries","supportsApplyEditsWithGlobalIds","supportsAttachmentsByUploadId","supportsAttachmentsResizing","supportsCalculate","supportsCoordinatesQuantization","supportsExceedsLimitStatistics","supportsFieldDescriptionProperty","supportsQuantizationEditMode","supportsRollbackOnFailureParameter","supportsStatistics","supportsTruncate","supportsValidateSql","tileMaxRecordCount","useStandardizedQueries"])],Ve.prototype,"readCapabilities",null),e([E({json:{origins:{"portal-item":{write:!0},"web-map":{write:!0}}}})],Ve.prototype,"charts",void 0),e([E({readOnly:!0})],Ve.prototype,"createQueryVersion",null),e([E({type:String,json:{read:{source:"layerDefinition.copyrightText"},origins:{service:{read:{source:"copyrightText"}}}}})],Ve.prototype,"copyright",void 0),e([E({type:Boolean})],Ve.prototype,"datesInUnknownTimezone",void 0),e([E({type:String,json:{read:{source:"layerDefinition.displayField"},origins:{service:{read:{source:"displayField"}}}}})],Ve.prototype,"displayField",void 0),e([E({type:String,json:{origins:{service:{read:!1,write:!1}},name:"layerDefinition.definitionExpression",write:{enabled:!0,allowNull:!0}}})],Ve.prototype,"definitionExpression",void 0),e([E({types:p,readOnly:!0})],Ve.prototype,"defaultSymbol",void 0),e([E({type:Ie})],Ve.prototype,"dynamicDataSource",void 0),e([E({readOnly:!0})],Ve.prototype,"editFieldsInfo",void 0),e([E({type:Boolean})],Ve.prototype,"editingEnabled",null),e([x(["portal-item","web-scene"],"editingEnabled",["layerDefinition.capabilities"])],Ve.prototype,"readEditingEnabled",null),e([x("web-map","editingEnabled",["capabilities","layerDefinition.capabilities"])],Ve.prototype,"readEditingEnabledFromWebMap",null),e([C(["portal-item","web-scene"],"editingEnabled",{"layerDefinition.capabilities":{type:String}})],Ve.prototype,"writeEditingEnabled",null),e([C("web-map","editingEnabled",{capabilities:{type:String},"layerDefinition.capabilities":{type:String}})],Ve.prototype,"writeEditingEnabledToWebMap",null),e([E({readOnly:!0})],Ve.prototype,"editingInfo",void 0),e([x("editingInfo")],Ve.prototype,"readEditingInfo",null),e([E(Y)],Ve.prototype,"elevationInfo",void 0),e([E(ue)],Ve.prototype,"featureReduction",void 0),e([E({...Qe.fields,json:{read:{source:"layerDefinition.fields"},origins:{service:{name:"fields"},"web-map":{write:{target:"layerDefinition.fields",overridePolicy:Ue}}}}})],Ve.prototype,"fields",void 0),e([E(Qe.fieldsIndex)],Ve.prototype,"fieldsIndex",void 0),e([E({type:ve,json:{read:{source:"layerDefinition.floorInfo"},write:{target:"layerDefinition.floorInfo"}}})],Ve.prototype,"floorInfo",void 0),e([E({type:L,json:{name:"formInfo",write:!0,origins:{"web-scene":{read:!1,write:!1}}}})],Ve.prototype,"formTemplate",void 0),e([E({type:O,json:{origins:{service:{read:{source:"extent"}}},read:{source:"layerDefinition.extent"}}})],Ve.prototype,"fullExtent",void 0),e([E()],Ve.prototype,"gdbVersion",void 0),e([E({readOnly:!0,type:fe,json:{read:{source:"geometryProperties"}}})],Ve.prototype,"geometryFieldsInfo",void 0),e([E({type:["point","polygon","polyline","multipoint","multipatch","mesh"],json:{origins:{service:{read:Me.read},"web-map":{write:{target:"layerDefinition.geometryType",overridePolicy:Ue,writer(e,t,r){const i=e?Me.toJSON(e):null;i&&v(r,i,t)}}}},read:{source:"layerDefinition.geometryType",reader:Me.read}}})],Ve.prototype,"geometryType",void 0),e([E({type:Boolean,json:{origins:{service:{read:!0}},read:{source:"layerDefinition.hasM"}}})],Ve.prototype,"hasM",void 0),e([E({type:Boolean,json:{origins:{service:{read:!0}},read:{source:"layerDefinition.hasZ"}}})],Ve.prototype,"hasZ",void 0),e([E({readOnly:!0,type:A})],Ve.prototype,"heightModelInfo",void 0),e([E({type:Date})],Ve.prototype,"historicMoment",void 0),e([E(ee)],Ve.prototype,"id",void 0),e([E({readOnly:!0,json:{origins:{service:{read:!0}},read:!1}})],Ve.prototype,"infoFor3D",void 0),e([E({readOnly:!0,json:{origins:{"web-map":{write:{target:"layerDefinition.type"}}}}})],Ve.prototype,"isTable",void 0),e([x("service","isTable",["type","geometryType"]),x("isTable",["layerDefinition.type","layerDefinition.geometryType"])],Ve.prototype,"readIsTable",null),e([C("web-map","isTable")],Ve.prototype,"writeIsTable",null),e([E(te)],Ve.prototype,"labelsVisible",void 0),e([E({type:[ge],json:{origins:{service:{read:{source:"drawingInfo.labelingInfo",reader:be},write:{target:"drawingInfo.labelingInfo",enabled:!1}}},read:{source:"layerDefinition.drawingInfo.labelingInfo",reader:be},write:{target:"layerDefinition.drawingInfo.labelingInfo"}}})],Ve.prototype,"labelingInfo",void 0),e([E(re)],Ve.prototype,"opacity",void 0),e([E({type:Number,json:{origins:{service:{read:{source:"id"}}},read:!1}})],Ve.prototype,"layerId",void 0),e([E(ie)],Ve.prototype,"legendEnabled",void 0),e([E({type:["show","hide"]})],Ve.prototype,"listMode",void 0),e([E(oe)],Ve.prototype,"minScale",void 0),e([x("service","minScale",["minScale","effectiveMinScale"])],Ve.prototype,"readMinScale",null),e([E(se)],Ve.prototype,"maxScale",void 0),e([x("service","maxScale",["maxScale","effectiveMaxScale"])],Ve.prototype,"readMaxScale",null),e([E({type:String})],Ve.prototype,"globalIdField",void 0),e([x("globalIdField",["layerDefinition.globalIdField","layerDefinition.fields"]),x("service","globalIdField",["globalIdField","fields"])],Ve.prototype,"readGlobalIdFieldFromService",null),e([E({type:String,json:{origins:{"web-map":{write:{target:"layerDefinition.objectIdField",overridePolicy:Ue}}}}})],Ve.prototype,"objectIdField",void 0),e([x("objectIdField",["layerDefinition.objectIdField","layerDefinition.fields"]),x("service","objectIdField",["objectIdField","fields"])],Ve.prototype,"readObjectIdFieldFromService",null),e([E({value:"ArcGISFeatureLayer",type:["ArcGISFeatureLayer"]})],Ve.prototype,"operationalLayerType",void 0),e([E(Qe.outFields)],Ve.prototype,"outFields",void 0),e([E({readOnly:!0})],Ve.prototype,"parsedUrl",null),e([E({type:String,json:{origins:{"web-scene":{read:!0,write:!0}},read:!1}})],Ve.prototype,"path",void 0),e([E(ne)],Ve.prototype,"popupEnabled",void 0),e([E({type:t,json:{name:"popupInfo",write:!0}})],Ve.prototype,"popupTemplate",void 0),e([E({readOnly:!0})],Ve.prototype,"defaultPopupTemplate",null),e([E({type:[we],readOnly:!0})],Ve.prototype,"relationships",void 0),e([E({types:s,json:{origins:{service:{write:{target:"drawingInfo.renderer",enabled:!1}},"web-scene":{types:n,name:"layerDefinition.drawingInfo.renderer",write:{overridePolicy:(e,t,r)=>({ignoreOrigin:null==r?void 0:r.writeLayerSchema})}}},write:{target:"layerDefinition.drawingInfo.renderer",overridePolicy:(e,t,r)=>({ignoreOrigin:null==r?void 0:r.writeLayerSchema})}}})],Ve.prototype,"renderer",null),e([x("service","renderer",["drawingInfo.renderer","defaultSymbol"]),x("renderer",["layerDefinition.drawingInfo.renderer","layerDefinition.defaultSymbol"])],Ve.prototype,"readRenderer",null),e([E()],Ve.prototype,"sourceJSON",void 0),e([E({type:Boolean})],Ve.prototype,"returnM",void 0),e([E({type:Boolean})],Ve.prototype,"returnZ",void 0),e([E(ae)],Ve.prototype,"screenSizePerspectiveEnabled",void 0),e([E()],Ve.prototype,"source",null),e([T("source")],Ve.prototype,"castSource",null),e([x("portal-item","source",["featureSet"]),x("web-map","source",["featureSet"])],Ve.prototype,"readSource",null),e([E({readOnly:!0})],Ve.prototype,"serviceDefinitionExpression",void 0),e([x("service","serviceDefinitionExpression",["definitionQuery","definitionExpression"])],Ve.prototype,"readServiceDefinitionExpression",null),e([E({type:P,json:{origins:{service:{read:{source:"extent.spatialReference"}}},read:{source:"layerDefinition.extent.spatialReference"}}})],Ve.prototype,"spatialReference",void 0),e([E({type:Number})],Ve.prototype,"subtypeCode",void 0),e([E({type:[de]})],Ve.prototype,"templates",void 0),e([x("templates",["editFieldsInfo","creatorField","editorField","templates"])],Ve.prototype,"readTemplates",null),e([E({type:Se})],Ve.prototype,"timeInfo",void 0),e([E()],Ve.prototype,"title",void 0),e([x("service","title",["name"]),x("portal-item","title",["layerDefinition.title","layerDefinition.name","title"])],Ve.prototype,"readTitle",null),e([x("web-map","title",["layerDefinition.name","title"])],Ve.prototype,"readTitleFromWebMap",null),e([E({type:String})],Ve.prototype,"sublayerTitleMode",void 0),e([E({type:String,json:{read:{source:"timeInfo.trackIdField"}}})],Ve.prototype,"trackIdField",void 0),e([E({json:{read:!1}})],Ve.prototype,"type",void 0),e([E({type:String})],Ve.prototype,"typeIdField",void 0),e([x("service","typeIdField"),x("typeIdField",["layerDefinition.typeIdField"])],Ve.prototype,"readTypeIdField",null),e([E({type:[ye]})],Ve.prototype,"types",void 0),e([x("service","types",["types"]),x("types",["layerDefinition.types"])],Ve.prototype,"readTypes",null),e([E({readOnly:!0,json:{write:!1}})],Ve.prototype,"serverGens",void 0),e([E({type:u.ofType(le),readOnly:!0})],Ve.prototype,"indexes",void 0),e([E(pe)],Ve.prototype,"url",null),e([C("url")],Ve.prototype,"writeUrl",null),e([E({readOnly:!0})],Ve.prototype,"userIsAdmin",void 0),e([E({json:{origins:{service:{read:!0}},read:!1}})],Ve.prototype,"version",void 0),e([x("service","version",["currentVersion","capabilities","drawingInfo","hasAttachments","htmlPopupType","relationships","timeInfo","typeIdField","types"])],Ve.prototype,"readVersion",null),e([E({type:Boolean,json:{origins:{"portal-item":{write:{target:"layerDefinition.defaultVisibility"}}}}})],Ve.prototype,"visible",void 0),e([x("portal-item","visible",["visibility","layerDefinition.defaultVisibility"])],Ve.prototype,"readVisible",null),Ve=e([D("esri.layers.FeatureLayer")],Ve);const Ge=M({types:l}),ze=Ve;export{ze as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../chunks/tslib.es6.js";import r from"../config.js";import"../geometry.js";import t from"../Graphic.js";import o from"../PopupTemplate.js";import"../renderers/ClassBreaksRenderer.js";import"../renderers/DictionaryRenderer.js";import"../renderers/DotDensityRenderer.js";import"../renderers/HeatmapRenderer.js";import"../renderers/Renderer.js";import"../renderers/SimpleRenderer.js";import"../renderers/UniqueValueRenderer.js";import{read as i}from"../renderers/support/jsonUtils.js";import s from"../core/Collection.js";import n from"../core/Error.js";import{isSome as l,isNone as a}from"../core/maybe.js";import{MultiOriginJSONMixin as p}from"../core/MultiOriginJSONSupport.js";import{setDeepValue as y}from"../core/object.js";import{property as u}from"../core/accessorSupport/decorators/property.js";import"../core/arrayUtils.js";import"../core/has.js";import"../core/accessorSupport/ensureType.js";import{reader as m}from"../core/accessorSupport/decorators/reader.js";import{subclass as f}from"../core/accessorSupport/decorators/subclass.js";import{writer as d}from"../core/accessorSupport/decorators/writer.js";import c from"../geometry/Extent.js";import{WGS84 as S}from"../geometry/support/spatialReferenceUtils.js";import h from"./Layer.js";import{BlendLayer as g}from"./mixins/BlendLayer.js";import{OperationalLayer as b}from"./mixins/OperationalLayer.js";import{PortalLayer as w}from"./mixins/PortalLayer.js";import{ScaleRangeLayer as P}from"./mixins/ScaleRangeLayer.js";import B from"./support/DefaultSymbols.js";import{solve as N}from"../rest/route.js";import v from"../rest/support/DirectionLine.js";import O from"../rest/support/DirectionPoint.js";import I from"../rest/support/PointBarrier.js";import j from"../rest/support/PolygonBarrier.js";import D from"../rest/support/PolylineBarrier.js";import _ from"../rest/support/RouteInfo.js";import L from"../rest/support/RouteParameters.js";import J from"../rest/support/Stop.js";import R from"../geometry/SpatialReference.js";import T from"../geometry/Multipoint.js";function C(e){return e.length?e:null}function x(e){return"layers"in e}function F(e){return"esri.rest.support.FeatureSet"===e.declaredClass}function G(e){return"esri.rest.support.NetworkFeatureSet"===e.declaredClass}const k=s.ofType(v),A=s.ofType(O),M=s.ofType(I),E=s.ofType(j),U=s.ofType(D),q=s.ofType(J);let W=class extends(g(P(b(w(p(h)))))){constructor(...e){super(...e),this._featureCollection=null,this._type="Feature Collection",this.defaultSymbols=new B,this.directionLines=null,this.directionPoints=null,this.featureCollectionType="route",this.legendEnabled=!1,this.maxScale=0,this.minScale=0,this.pointBarriers=new M,this.polygonBarriers=new E,this.polylineBarriers=new U,this.routeInfo=null,this.spatialReference=R.WGS84,this.stops=new q,this.title="Route",this.type="route"}writeFeatureCollectionWebmap(e,r){const t=[this._writePolygonBarriers(),this._writePolylineBarriers(),this._writePointBarriers(),this._writeRouteInfo(),this._writeDirectionLines(),this._writeDirectionPoints(),this._writeStops()].filter((e=>!!e)),o=t.map(((e,r)=>r));y("featureCollection.layers",t,r),r.opacity=this.opacity,r.visibility=this.visible,r.visibleLayers=o}readDirectionLines(e,r){return this._getNetworkFeatures(r,"DirectionLines",(e=>v.fromPortalJSON(e)))}readDirectionPoints(e,r){return this._getNetworkFeatures(r,"DirectionPoints",(e=>O.fromPortalJSON(e)))}get fullExtent(){if(l(this.routeInfo)&&l(this.routeInfo.geometry))return this.routeInfo.geometry.extent;if(this.stops.length>1){const{spatialReference:e}=this.stops[0],r=new T({spatialReference:e}),t=this.stops.toArray().map((e=>e.geometry));for(const o of t)l(o)&&r.addPoint(o);return r.extent}return new c({xmin:-180,ymin:-90,xmax:180,ymax:90,spatialReference:R.WGS84})}readMaxScale(e,r){var t;const o=(x(r)?r.layers:r.featureCollection.layers).find((e=>l(e.layerDefinition.maxScale)));return null!=(t=null==o?void 0:o.layerDefinition.maxScale)?t:0}readMinScale(e,r){var t;const o=(x(r)?r.layers:r.featureCollection.layers).find((e=>l(e.layerDefinition.minScale)));return null!=(t=null==o?void 0:o.layerDefinition.minScale)?t:0}readPointBarriers(e,r){return this._getNetworkFeatures(r,"Barriers",(e=>I.fromPortalJSON(e)))}readPolygonBarriers(e,r){return this._getNetworkFeatures(r,"PolygonBarriers",(e=>j.fromPortalJSON(e)))}readPolylineBarriers(e,r){return this._getNetworkFeatures(r,"PolylineBarriers",(e=>D.fromPortalJSON(e)))}readRouteInfo(e,r){const t=this._getNetworkFeatures(r,"RouteInfo",(e=>_.fromPortalJSON(e)));return t.length>0?t.getItemAt(0):null}get routeServiceUrl(){var e,t,o,i;return null!=(e=this.portalItem)&&e.id&&null!=(t=null==(o=this.portalItem.portal.helperServices)||null==(i=o.route)?void 0:i.url)?t:r.routeServiceUrl}readSpatialReference(e,r){var t,o;const i=x(r)?r.layers:r.featureCollection.layers;if(!i.length)return R.WGS84;const{layerDefinition:s}=i[0],n=null!=(t=null!=(o=s.spatialReference)?o:s.extent.spatialReference)?t:S;return R.fromJSON(n)}readStops(e,r){return this._getNetworkFeatures(r,"Stops",(e=>J.fromPortalJSON(e)),(e=>this._setStopSymbol(e)))}load(e){return this.addResolvingPromise(this.loadFromPortal({supportedTypes:["Feature Collection"]},e)),Promise.resolve(this)}async solve(e,r){var t,o,i,l;const p=null!=(t=null==e?void 0:e.stops)?t:this.stops,y=null!=(o=null==e?void 0:e.pointBarriers)?o:C(this.pointBarriers),u=null!=(i=null==e?void 0:e.polylineBarriers)?i:C(this.polylineBarriers),m=null!=(l=null==e?void 0:e.polygonBarriers)?l:C(this.polygonBarriers);if(a(p))throw new n("routelayer:undefined-stops","the route layer must have stops defined in the route parameters.");if((F(p)||G(p))&&p.features.length<2||s.isCollection(p)&&p.length<2)throw new n("routelayer:insufficent-stops","the route layer must have two or more stops to solve a route.");const f={startTime:new Date},d={directionsOutputType:"featuresets",ignoreInvalidLocations:!0,pointBarriers:y,polylineBarriers:u,polygonBarriers:m,preserveFirstStop:!0,preserveLastStop:!0,returnBarriers:!!y,returnDirections:!0,returnPolygonBarriers:!!m,returnPolylineBarriers:!!u,returnRoutes:!0,returnStops:!0,stops:p},c=e?L.from(e):new L;for(const s in f)null==c[s]&&(c[s]=f[s]);return c.set(d),N(this.routeServiceUrl,c,r)}update(e){var r,t,o;const i=e.routeResults[0].stops.map((e=>J.fromJSON(e.toJSON())));this._setStopSymbol(i),this.stops=new q(i),this.polygonBarriers=new E(null==(r=e.polygonBarriers)?void 0:r.map((e=>{const r=j.fromJSON(e.toJSON());return r.symbol=this.defaultSymbols.polygonBarriers,r}))),this.polylineBarriers=new U(null==(t=e.polylineBarriers)?void 0:t.map((e=>{const r=D.fromJSON(e.toJSON());return r.symbol=this.defaultSymbols.polylineBarriers,r}))),this.pointBarriers=new M(null==(o=e.pointBarriers)?void 0:o.map((e=>{const r=I.fromJSON(e.toJSON());return r.symbol=this.defaultSymbols.pointBarriers,r})));const s=_.fromJSON(e.routeResults[0].route.toJSON());s.symbol=this.defaultSymbols.routeInfo,this._set("routeInfo",s),this._set("directionPoints",new A(e.routeResults[0].directionPoints.features.map((e=>{const r=O.fromJSON(e.toJSON());return r.symbol=this.defaultSymbols.directionPoints,r})))),this._set("directionLines",new k(e.routeResults[0].directionLines.features.map((e=>{const r=v.fromJSON(e.toJSON());return r.symbol=this.defaultSymbols.directionLines,r}))))}_getLayerDefinition(){return{capabilities:"Query,Update,Editing",extent:this.fullExtent.toJSON(),hasM:!1,hasZ:!1,maxScale:this.maxScale,minScale:this.minScale,objectIdField:"__OBJECTID",spatialReference:this.spatialReference.toJSON(),type:"Feature Layer",typeIdField:""}}_getNetworkFeatures(e,r,n,l){const p=(x(e)?e.layers:e.featureCollection.layers).find((e=>e.layerDefinition.name===r));if(a(p))return new s;const{layerDefinition:y,popupInfo:u,featureSet:m}=p,f=y.drawingInfo.renderer,{features:d}=m,c=f&&i(f),S=d.map((e=>{var i;const s=n(e),{attributes:l}=e,a=new t({attributes:l});return null!=s.symbol||(s.symbol=null!=(i=null==c?void 0:c.getSymbol(a))?i:this._getNetworkSymbol(r)),null!=s.popupTemplate||(s.popupTemplate=u&&o.fromJSON(u)),s}));return l&&S.some((e=>!e.symbol))&&l(S),new s(S)}_getNetworkSymbol(e){switch(e){case"Barriers":return this.defaultSymbols.pointBarriers;case"DirectionPoints":return this.defaultSymbols.directionPoints;case"DirectionLines":return this.defaultSymbols.directionLines;case"PolylineBarriers":return this.defaultSymbols.polylineBarriers;case"PolygonBarriers":return this.defaultSymbols.polygonBarriers;case"RouteInfo":return this.defaultSymbols.routeInfo;case"Stops":return null}}_setStopSymbol(e){if(!e)return;if(e.length<2){for(const r of e)r.symbol=this.defaultSymbols.invalidStop;return}const r=e.map((e=>e.sequence)).filter((e=>l(e))),t=Math.min(...r),o=Math.max(...r);for(const i of e)i.sequence!==t?i.sequence!==o?"ok"===i.status||"not-located-on-closest"===i.status?"waypoint"!==i.locationType?"break"!==i.locationType?i.symbol=this.defaultSymbols.middleStop:i.symbol=this.defaultSymbols.breakStop:i.symbol=this.defaultSymbols.waypointStop:i.symbol=this.defaultSymbols.invalidStop:i.symbol=this.defaultSymbols.lastStop:i.symbol=this.defaultSymbols.firstStop}_writeDirectionLines(){return a(this.directionLines)||!this.directionLines.length?null:{featureSet:{features:this.directionLines.toArray().map((e=>e.toPortalJSON())),geometryType:"esriGeometryPolyline"},layerDefinition:{...this._getLayerDefinition(),drawingInfo:{renderer:{type:"simple",symbol:this.defaultSymbols.directionLines.toJSON()}},fields:v.fields,geometryType:"esriGeometryPolyline",name:"DirectionLines",title:"Direction Lines"},popupInfo:v.popupInfo}}_writeDirectionPoints(){return a(this.directionPoints)||!this.directionPoints.length?null:{featureSet:{features:this.directionPoints.toArray().map((e=>e.toPortalJSON())),geometryType:"esriGeometryPoint"},layerDefinition:{...this._getLayerDefinition(),drawingInfo:{renderer:{type:"simple",symbol:this.defaultSymbols.directionPoints.toJSON()}},fields:O.fields,geometryType:"esriGeometryPoint",name:"DirectionPoints",title:"Direction Points"},popupInfo:O.popupInfo}}_writePointBarriers(){return a(this.pointBarriers)||!this.pointBarriers.length?null:{featureSet:{features:this.pointBarriers.toArray().map((e=>e.toPortalJSON())),geometryType:"esriGeometryPoint"},layerDefinition:{...this._getLayerDefinition(),drawingInfo:{renderer:{type:"simple",symbol:this.defaultSymbols.pointBarriers.toJSON()}},fields:I.fields,geometryType:"esriGeometryPoint",name:"Barrier",title:"Point Barrier"},popupInfo:I.popupInfo}}_writePolygonBarriers(){return a(this.polygonBarriers)||!this.polygonBarriers.length?null:{featureSet:{features:this.polygonBarriers.toArray().map((e=>e.toPortalJSON())),geometryType:"esriGeometryPolygon"},layerDefinition:{...this._getLayerDefinition(),drawingInfo:{renderer:{type:"simple",symbol:this.defaultSymbols.polygonBarriers.toJSON()}},fields:j.fields,geometryType:"esriGeometryPolygon",name:"PolygonBarriers",title:"Polygon Barriers"},popupInfo:j.popupInfo}}_writePolylineBarriers(){return a(this.polylineBarriers)||!this.polylineBarriers.length?null:{featureSet:{features:this.polylineBarriers.toArray().map((e=>e.toPortalJSON())),geometryType:"esriGeometryPolyline"},layerDefinition:{...this._getLayerDefinition(),drawingInfo:{renderer:{type:"simple",symbol:this.defaultSymbols.polylineBarriers.toJSON()}},fields:D.fields,geometryType:"esriGeometryPolyline",name:"PolylineBarriers",title:"Line Barriers"},popupInfo:D.popupInfo}}_writeRouteInfo(){return a(this.routeInfo)?null:{featureSet:{features:[this.routeInfo.toPortalJSON()],geometryType:"esriGeometryPolyline"},layerDefinition:{...this._getLayerDefinition(),drawingInfo:{renderer:{type:"simple",symbol:this.defaultSymbols.routeInfo.toJSON()}},fields:_.fields,geometryType:"esriGeometryPolyline",name:"RouteInfo",title:"Route Details"},popupInfo:_.popupInfo}}_writeStops(){return a(this.stops)||!this.stops.length?null:{featureSet:{features:this.stops.toArray().map((e=>e.toPortalJSON())),geometryType:"esriGeometryPoint"},layerDefinition:{...this._getLayerDefinition(),drawingInfo:{renderer:{type:"uniqueValue",field1:"Sequence",defaultSymbol:this.defaultSymbols.middleStop.toJSON(),uniqueValueInfos:[{value:"1",symbol:this.defaultSymbols.firstStop.toJSON(),label:"First Stop"},{value:`${this.stops.length}`,symbol:this.defaultSymbols.lastStop.toJSON(),label:"Last Stop"}]}},fields:J.fields,geometryType:"esriGeometryPoint",name:"Stops",title:"Stops"},popupInfo:J.popupInfo}}};e([u({readOnly:!0,json:{read:!1,origins:{"web-map":{write:{overridePolicy(){return{allowNull:!0,ignoreOrigin:null==this.portalItem}}}}}}})],W.prototype,"_featureCollection",void 0),e([d("web-map","_featureCollection")],W.prototype,"writeFeatureCollectionWebmap",null),e([u({readOnly:!0,json:{read:!1,origins:{"web-map":{write:{target:"type",overridePolicy(){return{ignoreOrigin:null!=this.portalItem}}}}}}})],W.prototype,"_type",void 0),e([u({nonNullable:!0,type:B})],W.prototype,"defaultSymbols",void 0),e([u({readOnly:!0})],W.prototype,"directionLines",void 0),e([m(["web-map","portal-item"],"directionLines",["layers","featureCollection.layers"])],W.prototype,"readDirectionLines",null),e([u({readOnly:!0})],W.prototype,"directionPoints",void 0),e([m(["web-map","portal-item"],"directionPoints",["layers","featureCollection.layers"])],W.prototype,"readDirectionPoints",null),e([u({readOnly:!0,json:{read:!1,origins:{"web-map":{write:{ignoreOrigin:!0}}}}})],W.prototype,"featureCollectionType",void 0),e([u({readOnly:!0})],W.prototype,"fullExtent",null),e([u({json:{origins:{"web-map":{name:"featureCollection.showLegend"}},write:!0}})],W.prototype,"legendEnabled",void 0),e([u({type:["show","hide"]})],W.prototype,"listMode",void 0),e([u({type:Number,nonNullable:!0,json:{write:!1}})],W.prototype,"maxScale",void 0),e([m(["web-map","portal-item"],"maxScale",["layers","featureCollection.layers"])],W.prototype,"readMaxScale",null),e([u({type:Number,nonNullable:!0,json:{write:!1}})],W.prototype,"minScale",void 0),e([m(["web-map","portal-item"],"minScale",["layers","featureCollection.layers"])],W.prototype,"readMinScale",null),e([u({type:["ArcGISFeatureLayer"],value:"ArcGISFeatureLayer"})],W.prototype,"operationalLayerType",void 0),e([u({nonNullable:!0,type:s.ofType(I)})],W.prototype,"pointBarriers",void 0),e([m(["web-map","portal-item"],"pointBarriers",["layers","featureCollection.layers"])],W.prototype,"readPointBarriers",null),e([u({nonNullable:!0,type:s.ofType(j)})],W.prototype,"polygonBarriers",void 0),e([m(["web-map","portal-item"],"polygonBarriers",["layers","featureCollection.layers"])],W.prototype,"readPolygonBarriers",null),e([u({nonNullable:!0,type:s.ofType(D)})],W.prototype,"polylineBarriers",void 0),e([m(["web-map","portal-item"],"polylineBarriers",["layers","featureCollection.layers"])],W.prototype,"readPolylineBarriers",null),e([u({readOnly:!0})],W.prototype,"routeInfo",void 0),e([m(["web-map","portal-item"],"routeInfo",["layers","featureCollection.layers"])],W.prototype,"readRouteInfo",null),e([u({nonNullable:!0})],W.prototype,"routeServiceUrl",null),e([u({type:R})],W.prototype,"spatialReference",void 0),e([m(["web-map","portal-item"],"spatialReference",["layers","featureCollection.layers"])],W.prototype,"readSpatialReference",null),e([u({nonNullable:!0,type:s.ofType(J)})],W.prototype,"stops",void 0),e([m(["web-map","portal-item"],"stops",["layers","featureCollection.layers"])],W.prototype,"readStops",null),e([u()],W.prototype,"title",void 0),e([u({readOnly:!0,json:{read:!1}})],W.prototype,"type",void 0),W=e([f("esri.layers.RouteLayer")],W);const V=W;export{V as default};
5
+ import{_ as e}from"../chunks/tslib.es6.js";import t from"../config.js";import"../geometry.js";import r from"../Graphic.js";import o from"../PopupTemplate.js";import"../renderers/ClassBreaksRenderer.js";import"../renderers/DictionaryRenderer.js";import"../renderers/DotDensityRenderer.js";import"../renderers/HeatmapRenderer.js";import"../renderers/Renderer.js";import"../renderers/SimpleRenderer.js";import"../renderers/UniqueValueRenderer.js";import{read as i}from"../renderers/support/jsonUtils.js";import s from"../core/Collection.js";import n from"../core/Error.js";import{isSome as l,isNone as a}from"../core/maybe.js";import{MultiOriginJSONMixin as p}from"../core/MultiOriginJSONSupport.js";import{setDeepValue as u}from"../core/object.js";import{convertUnit as y}from"../core/unitUtils.js";import{property as m}from"../core/accessorSupport/decorators/property.js";import"../core/arrayUtils.js";import"../core/has.js";import"../core/accessorSupport/ensureType.js";import{reader as f}from"../core/accessorSupport/decorators/reader.js";import{subclass as c}from"../core/accessorSupport/decorators/subclass.js";import{writer as d}from"../core/accessorSupport/decorators/writer.js";import S from"../geometry/Extent.js";import{WGS84 as h}from"../geometry/support/spatialReferenceUtils.js";import g from"./Layer.js";import{BlendLayer as b}from"./mixins/BlendLayer.js";import{OperationalLayer as w}from"./mixins/OperationalLayer.js";import{PortalLayer as v}from"./mixins/PortalLayer.js";import{ScaleRangeLayer as B}from"./mixins/ScaleRangeLayer.js";import P from"./support/DefaultSymbols.js";import{fetchServiceDescription as N}from"../rest/networkService.js";import{solve as I}from"../rest/route.js";import D from"../rest/support/DirectionLine.js";import O from"../rest/support/DirectionPoint.js";import{directionsTimeUnitJsonMap as j,directionsLengthUnitJsonMap as L}from"../rest/support/networkEnums.js";import C from"../rest/support/PointBarrier.js";import _ from"../rest/support/PolygonBarrier.js";import T from"../rest/support/PolylineBarrier.js";import J from"../rest/support/RouteInfo.js";import R from"../rest/support/RouteParameters.js";import x from"../rest/support/RouteSettings.js";import F from"../rest/support/Stop.js";import k from"../geometry/SpatialReference.js";import A from"../geometry/Multipoint.js";function G(e){return e.length?e:null}function U(e){return"layers"in e}function M(e){return"esri.rest.support.FeatureSet"===e.declaredClass}function W(e){return"esri.rest.support.NetworkFeatureSet"===e.declaredClass}function E(e,t,r){var o,i,s,a,p,u,y,m,f,c,d;const S=t.networkDataset.networkAttributes.filter((e=>"esriNAUTCost"===e.usageType)),h=t.supportedTravelModes.find((e=>e.id===t.defaultTravelMode)),g=null!=(o=r.travelMode)?o:h,{timeAttributeName:b,distanceAttributeName:w}=g,v=S.find((e=>e.name===b)),B=S.find((e=>e.name===w)),P=null!=(i=null!=(s=null==(a=r.travelMode)?void 0:a.impedanceAttributeName)?s:r.impedanceAttribute)?i:t.impedance,N=j.fromJSON(null==v?void 0:v.units),I=L.fromJSON(null==B?void 0:B.units);if(!N||!I)throw new n("routelayer:unknown-impedance-units","the units of either the distance or time impedance are unknown");const D=null!=(p=r.directionsLanguage)?p:t.directionsLanguage,O=null!=(u=null!=(y=r.accumulateAttributes)?y:t.accumulateAttributeNames)?u:[],C=new Set(S.filter((({name:e})=>e===b||e===w||e===P||O.includes(e))).map((({name:e})=>e))),_=e=>{for(const t in e)C.has(t)||delete e[t]};for(const n of e.pointBarriers){var T;if(l(n.costs))n.addedCost=null!=(T=n.costs[P])?T:0,_(n.costs)}for(const n of e.polygonBarriers){var J;if(l(n.costs))n.scaleFactor=null!=(J=n.costs[P])?J:1,_(n.costs)}for(const n of e.polylineBarriers){var R;if(l(n.costs))n.scaleFactor=null!=(R=n.costs[P])?R:1,_(n.costs)}const{routeInfo:F}=e,{findBestSequence:k,preserveFirstStop:A,preserveLastStop:G,startTimeIsUTC:U,timeWindowsAreUTC:M}=r;F.analysisSettings=new x({accumulateAttributes:O,directionsLanguage:D,findBestSequence:k,preserveFirstStop:A,preserveLastStop:G,startTimeIsUTC:U,timeWindowsAreUTC:M,travelMode:g}),F.totalDuration=q(null!=(m=F.totalCosts[b])?m:0,N),F.totalDistance=V(null!=(f=F.totalCosts[w])?f:0,I),F.totalLateDuration=q(null!=(c=F.totalViolations[b])?c:0,N),F.totalWaitDuration=q(null!=(d=F.totalWait[b])?d:0,N),l(F.totalCosts)&&_(F.totalCosts),l(F.totalViolations)&&_(F.totalViolations),l(F.totalWait)&&_(F.totalWait);for(const n of e.stops){var W,E,H,K,Q,Z;if(l(n.serviceCosts))n.serviceDuration=q(null!=(W=n.serviceCosts[b])?W:0,N),n.serviceDistance=V(null!=(E=n.serviceCosts[w])?E:0,I),_(n.serviceCosts);if(l(n.cumulativeCosts))n.cumulativeDuration=q(null!=(H=n.cumulativeCosts[b])?H:0,N),n.cumulativeDistance=V(null!=(K=n.cumulativeCosts[w])?K:0,I),_(n.cumulativeCosts);if(l(n.violations))n.lateDuration=q(null!=(Q=n.violations[b])?Q:0,N),_(n.violations);if(l(n.wait))n.waitDuration=q(null!=(Z=n.wait[b])?Z:0,N),_(n.wait)}}function q(e,t){switch(t){case"seconds":return e/60;case"hours":return 60*e;case"days":return 60*e*24;default:return e}}function V(e,t){return"decimal-degrees"===t||"points"===t?e:y(e,t,"meters")}const H=s.ofType(D),K=s.ofType(O),Q=s.ofType(C),Z=s.ofType(_),$=s.ofType(T),z=s.ofType(F);let X=class extends(b(B(w(v(p(g)))))){constructor(...e){super(...e),this._featureCollection=null,this._type="Feature Collection",this.defaultSymbols=new P,this.directionLines=null,this.directionPoints=null,this.featureCollectionType="route",this.legendEnabled=!1,this.maxScale=0,this.minScale=0,this.pointBarriers=new Q,this.polygonBarriers=new Z,this.polylineBarriers=new $,this.routeInfo=null,this.spatialReference=k.WGS84,this.stops=new z,this.title="Route",this.type="route"}writeFeatureCollectionWebmap(e,t){const r=[this._writePolygonBarriers(),this._writePolylineBarriers(),this._writePointBarriers(),this._writeRouteInfo(),this._writeDirectionLines(),this._writeDirectionPoints(),this._writeStops()].filter((e=>!!e)),o=r.map(((e,t)=>t));u("featureCollection.layers",r,t),t.opacity=this.opacity,t.visibility=this.visible,t.visibleLayers=o}readDirectionLines(e,t){return this._getNetworkFeatures(t,"DirectionLines",(e=>D.fromPortalJSON(e)))}readDirectionPoints(e,t){return this._getNetworkFeatures(t,"DirectionPoints",(e=>O.fromPortalJSON(e)))}get fullExtent(){if(l(this.routeInfo)&&l(this.routeInfo.geometry))return this.routeInfo.geometry.extent;if(this.stops.length>1){const{spatialReference:e}=this.stops[0],t=new A({spatialReference:e}),r=this.stops.toArray().map((e=>e.geometry));for(const o of r)l(o)&&t.addPoint(o);return t.extent}return new S({xmin:-180,ymin:-90,xmax:180,ymax:90,spatialReference:k.WGS84})}readMaxScale(e,t){var r;const o=(U(t)?t.layers:t.featureCollection.layers).find((e=>l(e.layerDefinition.maxScale)));return null!=(r=null==o?void 0:o.layerDefinition.maxScale)?r:0}readMinScale(e,t){var r;const o=(U(t)?t.layers:t.featureCollection.layers).find((e=>l(e.layerDefinition.minScale)));return null!=(r=null==o?void 0:o.layerDefinition.minScale)?r:0}readPointBarriers(e,t){return this._getNetworkFeatures(t,"Barriers",(e=>C.fromPortalJSON(e)))}readPolygonBarriers(e,t){return this._getNetworkFeatures(t,"PolygonBarriers",(e=>_.fromPortalJSON(e)))}readPolylineBarriers(e,t){return this._getNetworkFeatures(t,"PolylineBarriers",(e=>T.fromPortalJSON(e)))}readRouteInfo(e,t){const r=this._getNetworkFeatures(t,"RouteInfo",(e=>J.fromPortalJSON(e)));return r.length>0?r.getItemAt(0):null}get routeServiceUrl(){var e,r,o,i;return null!=(e=this.portalItem)&&e.id&&null!=(r=null==(o=this.portalItem.portal.helperServices)||null==(i=o.route)?void 0:i.url)?r:t.routeServiceUrl}readSpatialReference(e,t){var r,o;const i=U(t)?t.layers:t.featureCollection.layers;if(!i.length)return k.WGS84;const{layerDefinition:s}=i[0],n=null!=(r=null!=(o=s.spatialReference)?o:s.extent.spatialReference)?r:h;return k.fromJSON(n)}readStops(e,t){return this._getNetworkFeatures(t,"Stops",(e=>F.fromPortalJSON(e)),(e=>this._setStopSymbol(e)))}load(e){return this.addResolvingPromise(this.loadFromPortal({supportedTypes:["Feature Collection"]},e)),Promise.resolve(this)}async solve(e,t){var r,o,i,l;const p=null!=(r=null==e?void 0:e.stops)?r:this.stops,u=null!=(o=null==e?void 0:e.pointBarriers)?o:G(this.pointBarriers),y=null!=(i=null==e?void 0:e.polylineBarriers)?i:G(this.polylineBarriers),m=null!=(l=null==e?void 0:e.polygonBarriers)?l:G(this.polygonBarriers);if(a(p))throw new n("routelayer:undefined-stops","the route layer must have stops defined in the route parameters.");if((M(p)||W(p))&&p.features.length<2||s.isCollection(p)&&p.length<2)throw new n("routelayer:insufficent-stops","the route layer must have two or more stops to solve a route.");const f=await N(this.routeServiceUrl,null==e?void 0:e.apiKey,t),c={startTime:new Date},d={directionsOutputType:"featuresets",ignoreInvalidLocations:!0,pointBarriers:u,polylineBarriers:y,polygonBarriers:m,preserveFirstStop:!0,preserveLastStop:!0,returnBarriers:!!u,returnDirections:!0,returnPolygonBarriers:!!m,returnPolylineBarriers:!!y,returnRoutes:!0,returnStops:!0,stops:p},S=e?R.from(e):new R;for(const s in c)null==S[s]&&(S[s]=c[s]);S.set(d);const h=await I(this.routeServiceUrl,S,t),g=this._toRouteLayerSolution(h);return E(g,f,S),g}update(e){const{stops:t,directionLines:r,directionPoints:o,pointBarriers:i,polylineBarriers:s,polygonBarriers:n,routeInfo:l}=e;this.set({stops:t,pointBarriers:i,polylineBarriers:s,polygonBarriers:n}),this._set("directionLines",r),this._set("directionPoints",o),this._set("routeInfo",l)}_getLayerDefinition(){return{capabilities:"Query,Update,Editing",extent:this.fullExtent.toJSON(),hasM:!1,hasZ:!1,maxScale:this.maxScale,minScale:this.minScale,objectIdField:"__OBJECTID",spatialReference:this.spatialReference.toJSON(),type:"Feature Layer",typeIdField:""}}_getNetworkFeatures(e,t,n,l){const p=(U(e)?e.layers:e.featureCollection.layers).find((e=>e.layerDefinition.name===t));if(a(p))return new s;const{layerDefinition:u,popupInfo:y,featureSet:m}=p,f=u.drawingInfo.renderer,{features:c}=m,d=f&&i(f),S=c.map((e=>{var i;const s=n(e),{attributes:l}=e,a=new r({attributes:l});return null!=s.symbol||(s.symbol=null!=(i=null==d?void 0:d.getSymbol(a))?i:this._getNetworkSymbol(t)),null!=s.popupTemplate||(s.popupTemplate=y&&o.fromJSON(y)),s}));return l&&S.some((e=>!e.symbol))&&l(S),new s(S)}_getNetworkSymbol(e){switch(e){case"Barriers":return this.defaultSymbols.pointBarriers;case"DirectionPoints":return this.defaultSymbols.directionPoints;case"DirectionLines":return this.defaultSymbols.directionLines;case"PolylineBarriers":return this.defaultSymbols.polylineBarriers;case"PolygonBarriers":return this.defaultSymbols.polygonBarriers;case"RouteInfo":return this.defaultSymbols.routeInfo;case"Stops":return null}}_setStopSymbol(e){if(!e)return;if(e.length<2){for(const t of e)t.symbol=this.defaultSymbols.invalidStop;return}const t=e.map((e=>e.sequence)).filter((e=>l(e))),r=Math.min(...t),o=Math.max(...t);for(const i of e)i.sequence!==r?i.sequence!==o?"ok"===i.status||"not-located-on-closest"===i.status?"waypoint"!==i.locationType?"break"!==i.locationType?i.symbol=this.defaultSymbols.middleStop:i.symbol=this.defaultSymbols.breakStop:i.symbol=this.defaultSymbols.waypointStop:i.symbol=this.defaultSymbols.invalidStop:i.symbol=this.defaultSymbols.lastStop:i.symbol=this.defaultSymbols.firstStop}_toRouteLayerSolution(e){var t,r,o;const i=e.routeResults[0].stops.map((e=>F.fromJSON(e.toJSON())));this._setStopSymbol(i);const s=new z(i),n=new Z(null==(t=e.polygonBarriers)?void 0:t.map((e=>{const t=_.fromJSON(e.toJSON());return t.symbol=this.defaultSymbols.polygonBarriers,t}))),l=new $(null==(r=e.polylineBarriers)?void 0:r.map((e=>{const t=T.fromJSON(e.toJSON());return t.symbol=this.defaultSymbols.polylineBarriers,t}))),a=new Q(null==(o=e.pointBarriers)?void 0:o.map((e=>{const t=C.fromJSON(e.toJSON());return t.symbol=this.defaultSymbols.pointBarriers,t}))),p=J.fromJSON(e.routeResults[0].route.toJSON());p.symbol=this.defaultSymbols.routeInfo;const u=new K(e.routeResults[0].directionPoints.features.map((e=>{const t=O.fromJSON(e.toJSON());return t.symbol=this.defaultSymbols.directionPoints,t})));return{directionLines:new H(e.routeResults[0].directionLines.features.map((e=>{const t=D.fromJSON(e.toJSON());return t.symbol=this.defaultSymbols.directionLines,t}))),directionPoints:u,pointBarriers:a,polygonBarriers:n,polylineBarriers:l,routeInfo:p,stops:s}}_writeDirectionLines(){return a(this.directionLines)||!this.directionLines.length?null:{featureSet:{features:this.directionLines.toArray().map((e=>e.toPortalJSON())),geometryType:"esriGeometryPolyline"},layerDefinition:{...this._getLayerDefinition(),drawingInfo:{renderer:{type:"simple",symbol:this.defaultSymbols.directionLines.toJSON()}},fields:D.fields,geometryType:"esriGeometryPolyline",name:"DirectionLines",title:"Direction Lines"},popupInfo:D.popupInfo}}_writeDirectionPoints(){return a(this.directionPoints)||!this.directionPoints.length?null:{featureSet:{features:this.directionPoints.toArray().map((e=>e.toPortalJSON())),geometryType:"esriGeometryPoint"},layerDefinition:{...this._getLayerDefinition(),drawingInfo:{renderer:{type:"simple",symbol:this.defaultSymbols.directionPoints.toJSON()}},fields:O.fields,geometryType:"esriGeometryPoint",name:"DirectionPoints",title:"Direction Points"},popupInfo:O.popupInfo}}_writePointBarriers(){return a(this.pointBarriers)||!this.pointBarriers.length?null:{featureSet:{features:this.pointBarriers.toArray().map((e=>e.toPortalJSON())),geometryType:"esriGeometryPoint"},layerDefinition:{...this._getLayerDefinition(),drawingInfo:{renderer:{type:"simple",symbol:this.defaultSymbols.pointBarriers.toJSON()}},fields:C.fields,geometryType:"esriGeometryPoint",name:"Barrier",title:"Point Barrier"},popupInfo:C.popupInfo}}_writePolygonBarriers(){return a(this.polygonBarriers)||!this.polygonBarriers.length?null:{featureSet:{features:this.polygonBarriers.toArray().map((e=>e.toPortalJSON())),geometryType:"esriGeometryPolygon"},layerDefinition:{...this._getLayerDefinition(),drawingInfo:{renderer:{type:"simple",symbol:this.defaultSymbols.polygonBarriers.toJSON()}},fields:_.fields,geometryType:"esriGeometryPolygon",name:"PolygonBarriers",title:"Polygon Barriers"},popupInfo:_.popupInfo}}_writePolylineBarriers(){return a(this.polylineBarriers)||!this.polylineBarriers.length?null:{featureSet:{features:this.polylineBarriers.toArray().map((e=>e.toPortalJSON())),geometryType:"esriGeometryPolyline"},layerDefinition:{...this._getLayerDefinition(),drawingInfo:{renderer:{type:"simple",symbol:this.defaultSymbols.polylineBarriers.toJSON()}},fields:T.fields,geometryType:"esriGeometryPolyline",name:"PolylineBarriers",title:"Line Barriers"},popupInfo:T.popupInfo}}_writeRouteInfo(){return a(this.routeInfo)?null:{featureSet:{features:[this.routeInfo.toPortalJSON()],geometryType:"esriGeometryPolyline"},layerDefinition:{...this._getLayerDefinition(),drawingInfo:{renderer:{type:"simple",symbol:this.defaultSymbols.routeInfo.toJSON()}},fields:J.fields,geometryType:"esriGeometryPolyline",name:"RouteInfo",title:"Route Details"},popupInfo:J.popupInfo}}_writeStops(){return a(this.stops)||!this.stops.length?null:{featureSet:{features:this.stops.toArray().map((e=>e.toPortalJSON())),geometryType:"esriGeometryPoint"},layerDefinition:{...this._getLayerDefinition(),drawingInfo:{renderer:{type:"uniqueValue",field1:"Sequence",defaultSymbol:this.defaultSymbols.middleStop.toJSON(),uniqueValueInfos:[{value:"1",symbol:this.defaultSymbols.firstStop.toJSON(),label:"First Stop"},{value:`${this.stops.length}`,symbol:this.defaultSymbols.lastStop.toJSON(),label:"Last Stop"}]}},fields:F.fields,geometryType:"esriGeometryPoint",name:"Stops",title:"Stops"},popupInfo:F.popupInfo}}};e([m({readOnly:!0,json:{read:!1,origins:{"web-map":{write:{overridePolicy(){return{allowNull:!0,ignoreOrigin:null==this.portalItem}}}}}}})],X.prototype,"_featureCollection",void 0),e([d("web-map","_featureCollection")],X.prototype,"writeFeatureCollectionWebmap",null),e([m({readOnly:!0,json:{read:!1,origins:{"web-map":{write:{target:"type",overridePolicy(){return{ignoreOrigin:null!=this.portalItem}}}}}}})],X.prototype,"_type",void 0),e([m({nonNullable:!0,type:P})],X.prototype,"defaultSymbols",void 0),e([m({readOnly:!0})],X.prototype,"directionLines",void 0),e([f(["web-map","portal-item"],"directionLines",["layers","featureCollection.layers"])],X.prototype,"readDirectionLines",null),e([m({readOnly:!0})],X.prototype,"directionPoints",void 0),e([f(["web-map","portal-item"],"directionPoints",["layers","featureCollection.layers"])],X.prototype,"readDirectionPoints",null),e([m({readOnly:!0,json:{read:!1,origins:{"web-map":{write:{ignoreOrigin:!0}}}}})],X.prototype,"featureCollectionType",void 0),e([m({readOnly:!0})],X.prototype,"fullExtent",null),e([m({json:{origins:{"web-map":{name:"featureCollection.showLegend"}},write:!0}})],X.prototype,"legendEnabled",void 0),e([m({type:["show","hide"]})],X.prototype,"listMode",void 0),e([m({type:Number,nonNullable:!0,json:{write:!1}})],X.prototype,"maxScale",void 0),e([f(["web-map","portal-item"],"maxScale",["layers","featureCollection.layers"])],X.prototype,"readMaxScale",null),e([m({type:Number,nonNullable:!0,json:{write:!1}})],X.prototype,"minScale",void 0),e([f(["web-map","portal-item"],"minScale",["layers","featureCollection.layers"])],X.prototype,"readMinScale",null),e([m({type:["ArcGISFeatureLayer"],value:"ArcGISFeatureLayer"})],X.prototype,"operationalLayerType",void 0),e([m({nonNullable:!0,type:s.ofType(C)})],X.prototype,"pointBarriers",void 0),e([f(["web-map","portal-item"],"pointBarriers",["layers","featureCollection.layers"])],X.prototype,"readPointBarriers",null),e([m({nonNullable:!0,type:s.ofType(_)})],X.prototype,"polygonBarriers",void 0),e([f(["web-map","portal-item"],"polygonBarriers",["layers","featureCollection.layers"])],X.prototype,"readPolygonBarriers",null),e([m({nonNullable:!0,type:s.ofType(T)})],X.prototype,"polylineBarriers",void 0),e([f(["web-map","portal-item"],"polylineBarriers",["layers","featureCollection.layers"])],X.prototype,"readPolylineBarriers",null),e([m({readOnly:!0})],X.prototype,"routeInfo",void 0),e([f(["web-map","portal-item"],"routeInfo",["layers","featureCollection.layers"])],X.prototype,"readRouteInfo",null),e([m({nonNullable:!0})],X.prototype,"routeServiceUrl",null),e([m({type:k})],X.prototype,"spatialReference",void 0),e([f(["web-map","portal-item"],"spatialReference",["layers","featureCollection.layers"])],X.prototype,"readSpatialReference",null),e([m({nonNullable:!0,type:s.ofType(F)})],X.prototype,"stops",void 0),e([f(["web-map","portal-item"],"stops",["layers","featureCollection.layers"])],X.prototype,"readStops",null),e([m()],X.prototype,"title",void 0),e([m({readOnly:!0,json:{read:!1}})],X.prototype,"type",void 0),X=e([c("esri.layers.RouteLayer")],X);const Y=X;export{Y as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../chunks/tslib.es6.js";import"../renderers/ClassBreaksRenderer.js";import"../renderers/DictionaryRenderer.js";import"../renderers/DotDensityRenderer.js";import"../renderers/HeatmapRenderer.js";import"../renderers/Renderer.js";import t from"../renderers/SimpleRenderer.js";import r from"../renderers/UniqueValueRenderer.js";import{read as i}from"../renderers/support/jsonUtils.js";import{rendererTypes as o,webSceneRendererTypes as s}from"../renderers/support/types.js";import n from"../request.js";import{symbolTypes as a,symbolTypesRenderer as l}from"../symbols.js";import p from"../core/Collection.js";import u from"../core/Error.js";import{HandleOwnerMixin as d}from"../core/HandleOwner.js";import y from"../core/Handles.js";import c from"../core/has.js";import{JSONMap as h}from"../core/jsonMap.js";import m from"../core/Logger.js";import{destroyMaybe as f,isSome as b,unwrapOr as g}from"../core/maybe.js";import{MultiOriginJSONMixin as v}from"../core/MultiOriginJSONSupport.js";import{setDeepValue as w}from"../core/object.js";import{throwIfAbortError as S,throwIfAborted as I}from"../core/promiseUtils.js";import{parseWhereClause as F}from"../core/sql.js";import{urlToObject as j,join as E}from"../core/urlUtils.js";import{property as x}from"../core/accessorSupport/decorators/property.js";import"../core/arrayUtils.js";import{cast as D}from"../core/accessorSupport/decorators/cast.js";import{reader as C}from"../core/accessorSupport/decorators/reader.js";import{subclass as M}from"../core/accessorSupport/decorators/subclass.js";import{writer as T}from"../core/accessorSupport/decorators/writer.js";import{createTypeReader as O}from"../core/accessorSupport/extensions/serializableProperty/reader.js";import R from"../form/FormTemplate.js";import A from"../geometry/Extent.js";import L from"../geometry/HeightModelInfo.js";import _ from"../geometry/SpatialReference.js";import P from"./Layer.js";import Q from"./graphics/sources/MemorySource.js";import{ArcGISService as q}from"./mixins/ArcGISService.js";import{BlendLayer as G}from"./mixins/BlendLayer.js";import{CustomParametersMixin as U}from"./mixins/CustomParametersMixin.js";import{OperationalLayer as V}from"./mixins/OperationalLayer.js";import{PortalLayer as B}from"./mixins/PortalLayer.js";import{RefreshableLayer as z}from"./mixins/RefreshableLayer.js";import{ScaleRangeLayer as N}from"./mixins/ScaleRangeLayer.js";import{TemporalLayer as W}from"./mixins/TemporalLayer.js";import{titleFromUrlAndName as k,parse as $,cleanTitle as Z,sanitizeUrlWithLayerId as J,writeUrlWithLayerId as H}from"./support/arcgisLayerUrl.js";import{elevationInfo as K,id as X,opacityDrawingInfo as Y,legendEnabled as ee,minScale as te,maxScale as re,screenSizePerspectiveEnabled as ie,url as oe}from"./support/commonProperties.js";import{FeatureIndex as se}from"./support/FeatureIndex.js";import{featureReductionProperty as ne}from"./support/featureReductionUtils.js";import{defineFieldProperties as ae}from"./support/fieldProperties.js";import{fixRendererFields as le,fixTimeInfoFields as pe}from"./support/fieldUtils.js";import ue from"./support/GeometryFieldsInfo.js";import de from"./support/LayerFloorInfo.js";import ye from"./support/Relationship.js";import ce from"./support/SubtypeSublayer.js";import he from"./support/TimeInfo.js";import{DataLayerSource as me}from"./support/source/DataLayerSource.js";import{loadStyleRenderer as fe}from"../renderers/support/styleUtils.js";import be from"../rest/support/AttachmentQuery.js";import ge from"../rest/support/FeatureSet.js";import ve from"../rest/support/Query.js";import we from"../rest/support/RelationshipQuery.js";const Se=new h({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryMultiPatch:"multipatch"}),Ie={name:"supportsName",size:"supportsSize",contentType:"supportsContentType",keywords:"supportsKeywords",exifInfo:"supportsExifInfo"},Fe="SubtypeGroupLayer",je=m.getLogger("esri.layers.SubtypeGroupLayer");function Ee(e){return e&&e instanceof p}function xe(e,t,r){return!!(e&&e.hasOwnProperty(t)?e[t]:r)}function De(e,t,r){return e&&e.hasOwnProperty(t)?e[t]:r}const Ce=ae();function Me(e,t,r){const i=!(null==r||!r.writeLayerSchema);return{enabled:i,ignoreOrigin:i}}let Te=class extends(G(W(N(z(q(V(B(v(U(d(P))))))))))){constructor(...e){super(...e),this._handles=new y,this.capabilities=null,this.charts=null,this.copyright=null,this.displayField=null,this.definitionExpression=null,this.dynamicDataSource=null,this.editFieldsInfo=null,this.editingEnabled=!0,this.editingInfo=null,this.elevationInfo=null,this.featureReduction=null,this.fields=null,this.fieldsIndex=null,this.floorInfo=null,this.formTemplate=null,this.fullExtent=null,this.gdbVersion=null,this.geometryFieldsInfo=null,this.geometryType=null,this.hasM=void 0,this.hasZ=void 0,this.heightModelInfo=null,this.historicMoment=null,this.isTable=!1,this.layerId=void 0,this.legendEnabled=!0,this.minScale=0,this.maxScale=0,this.globalIdField=null,this.objectIdField=null,this.outFields=null,this.path=null,this.relationships=null,this.sourceJSON=null,this.returnM=void 0,this.returnZ=void 0,this.screenSizePerspectiveEnabled=!0,this.serviceDefinitionExpression=null,this.spatialReference=_.WGS84,this.subtypeField=null,this.sublayers=new(p.ofType(ce)),this.timeInfo=null,this.title=null,this.sublayerTitleMode="item-title",this.trackIdField=null,this.type="subtype-group",this.typeIdField=null,this.indexes=new(p.ofType(se)),this.userIsAdmin=!1,this.version=void 0,this.visible=!0,this._handles.add(this.watch("sublayers",((e,t)=>this._handleSublayersChange(e,t)),!0))}destroy(){var e;null==(e=this.source)||e.destroy(),this._handles=f(this._handles)}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}load(e){const t=b(e)?e.signal:null;if(this.portalItem&&this.portalItem.loaded&&this.source)return void this.addResolvingPromise(this.createGraphicsSource(t).then((e=>this._initLayerProperties(e))));const r=this.loadFromPortal({supportedTypes:["Feature Service","Feature Collection"]},e).catch(S).then((async()=>{if(this.url&&null==this.layerId&&/FeatureServer|MapServer\/*$/i.test(this.url)){const e=await this._fetchFirstLayerId(t);null!=e&&(this.layerId=e)}if(!this.url&&!this._hasMemorySource())throw new u("feature-layer:missing-url-or-source","Feature layer must be created with either a url or a source");return this._initLayerProperties(await this.createGraphicsSource(t))})).then((()=>this.finishLoadEditablePortalLayer(e)));return this.addResolvingPromise(r),Promise.resolve(this)}readCapabilities(e,t){return t=t.layerDefinition||t,{attachment:this._readAttachmentCapabilities(t.attachmentProperties),data:this._readDataCapabilities(t),metadata:this._readMetadataCapabilities(t),operations:this._readOperationsCapabilities(t.capabilities||e,t),query:this._readQueryCapabilities(t),queryRelated:this._readQueryRelatedCapabilities(t),editing:this._readEditingCapabilities(t)}}get createQueryVersion(){return this.commitProperty("definitionExpression"),this.commitProperty("dynamicDataSource"),this.commitProperty("timeExtent"),this.commitProperty("timeOffset"),this.commitProperty("geometryType"),this.commitProperty("gdbVersion"),this.commitProperty("historicMoment"),this.commitProperty("returnZ"),this.commitProperty("capabilities"),this.commitProperty("returnM"),(this._get("createQueryVersion")||0)+1}readEditingEnabled(e,t){return this._readEditingEnabled(t,!1)}readEditingEnabledFromWebMap(e,t,r){return this._readEditingEnabled(t,!0,r)}writeEditingEnabled(e,t){this._writeEditingEnabled(e,t,!1)}writeEditingEnabledToWebMap(e,t,r,i){this._writeEditingEnabled(e,t,!0,i)}readEditingInfo(e,t){const{editingInfo:r}=t;return r?{lastEditDate:null!=r.lastEditDate?new Date(r.lastEditDate):null}:null}readIsTable(e,t){return"Table"===(t=t&&t.layerDefinition||t).type||!t.geometryType}writeIsTable(e,t,r,i){null!=i&&i.writeLayerSchema&&w(r,e?"Table":"Feature Layer",t)}readMinScale(e,t){return t.effectiveMinScale||e||0}readMaxScale(e,t){return t.effectiveMaxScale||e||0}readGlobalIdFieldFromService(e,t){if((t=t.layerDefinition||t).globalIdField)return t.globalIdField;if(t.fields)for(const r of t.fields)if("esriFieldTypeGlobalID"===r.type)return r.name}readObjectIdFieldFromService(e,t){if((t=t.layerDefinition||t).objectIdField)return t.objectIdField;if(t.fields)for(const r of t.fields)if("esriFieldTypeOID"===r.type)return r.name}get parsedUrl(){const e=this.url?j(this.url):null;return null!=e&&(null!=this.dynamicDataSource?e.path=E(e.path,"dynamicLayer"):null!=this.layerId&&(e.path=E(e.path,this.layerId.toString()))),e}set renderer(e){le(e,this.fieldsIndex),this._set("renderer",e)}readRenderer(e,o,s){const n=(o=o.layerDefinition||o).drawingInfo&&o.drawingInfo.renderer||void 0;if(n){const e=i(n,o,s)||void 0;return e||je.error("Failed to create renderer",{rendererDefinition:o.drawingInfo.renderer,layer:this,context:s}),e}if(o.defaultSymbol)return o.types&&o.types.length?new r({defaultSymbol:Oe(o.defaultSymbol,o,s),field:o.typeIdField,uniqueValueInfos:o.types.map((e=>({id:e.id,symbol:Oe(e.symbol,e,s)})))}):new t({symbol:Oe(o.defaultSymbol,o,s)})}set source(e){const t=this._get("source");t!==e&&(Ee(t)&&this._resetMemorySource(t),Ee(e)&&this._initMemorySource(e),this._set("source",e))}castSource(e){return e?Array.isArray(e)||e instanceof p?new Q({layer:this,items:e}):e:null}readSource(e,t){const r=ge.fromJSON(t.featureSet);return new Q({layer:this,items:r&&r.features||[]})}readServiceDefinitionExpression(e,t){return t.definitionQuery||t.definitionExpression}readTitle(e,t){const r=t.layerDefinition&&t.layerDefinition.name||t.name,i=t.title||t.layerDefinition&&t.layerDefinition.title;if(r){const e=this.portalItem&&this.portalItem.title;if("item-title"===this.sublayerTitleMode)return this.url?k(this.url,r):r;let t=r;if(!t&&this.url){const e=$(this.url);b(e)&&(t=e.title)}if(!t)return;return"item-title-and-service-name"===this.sublayerTitleMode&&e&&e!==t&&(t=e+" - "+t),Z(t)}if("item-title"===this.sublayerTitleMode&&i)return i}readTitleFromWebMap(e,t){return t.title||t.layerDefinition&&t.layerDefinition.name}readTypeIdField(e,t){let r=(t=t.layerDefinition||t).typeIdField;if(r&&t.fields){r=r.toLowerCase();const e=t.fields.find((e=>e.name.toLowerCase()===r));e&&(r=e.name)}return r}set url(e){const t=J({layer:this,url:e,nonStandardUrlAllowed:!0,logger:je});this._set("url",t.url),null!=t.layerId&&this._set("layerId",t.layerId)}writeUrl(e,t,r,i){H(this,e,null,t,i)}readVersion(e,t){return t.currentVersion?t.currentVersion:t.hasOwnProperty("capabilities")||t.hasOwnProperty("drawingInfo")||t.hasOwnProperty("hasAttachments")||t.hasOwnProperty("htmlPopupType")||t.hasOwnProperty("relationships")||t.hasOwnProperty("timeInfo")||t.hasOwnProperty("typeIdField")||t.hasOwnProperty("types")?10:9.3}readVisible(e,t){return t.layerDefinition&&null!=t.layerDefinition.defaultVisibility?!!t.layerDefinition.defaultVisibility:null!=t.visibility?!!t.visibility:void 0}addAttachment(e,t){return this.load().then((()=>this._checkAttachmentSupport(e))).then((()=>{if(!("addAttachment"in this.source))throw new u(Fe,"Layer source does not support addAttachment capability");return this.source.addAttachment(e,t)}))}updateAttachment(e,t,r){return this.load().then((()=>this._checkAttachmentSupport(e))).then((()=>{if(!("updateAttachment"in this.source))throw new u(Fe,"Layer source does not support updateAttachment capability");return this.source.updateAttachment(e,t,r)}))}async applyEdits(e,t){const r=await import("./graphics/editingSupport.js");return await this.load(),r.applyEdits(this,this.source,e,t)}on(e,t){return super.on(e,t)}async createGraphicsSource(e){if(this._hasMemorySource())return this.emit("graphics-source-create",{graphicsSource:this.source}),this.source.load({signal:e});const t=await import("./graphics/sources/FeatureLayerSource.js");I(e);const r=await new t.default({layer:this}).load({signal:e});return this.emit("graphics-source-create",{graphicsSource:r}),r}createQuery(){const e=new ve,t=this.get("capabilities.data"),r=this.sublayers.map((e=>e.subtypeCode));e.dynamicDataSource=this.dynamicDataSource,e.gdbVersion=this.gdbVersion,e.historicMoment=this.historicMoment,e.returnGeometry=!0,t&&(t.supportsZ&&null!=this.returnZ&&(e.returnZ=this.returnZ),t.supportsM&&null!=this.returnM&&(e.returnM=this.returnM)),e.outFields=["*"],e.where=`${this.subtypeField} IN (${r.join(",")})`,this.definitionExpression&&(e.where+=` AND (${this.definitionExpression})`);const{timeOffset:i,timeExtent:o}=this;return e.timeExtent=null!=i&&null!=o?o.offset(-i.value,i.unit):o||null,e.multipatchOption="multipatch"===this.geometryType?"xyFootprint":null,e}deleteAttachments(e,t){return this.load().then((()=>this._checkAttachmentSupport(e))).then((()=>{if(!("deleteAttachments"in this.source))throw new u(Fe,"Layer source does not support deleteAttachments capability");return this.source.deleteAttachments(e,t)}))}fetchRecomputedExtents(e){return this.load({signal:null==e?void 0:e.signal}).then((()=>{if(this.source.fetchRecomputedExtents)return this.source.fetchRecomputedExtents(e);throw new u(Fe,"Layer source does not support fetchUpdates capability")}))}getFieldDomain(e,t){return this._getLayerDomain(e)}getField(e){return this.fieldsIndex.get(e)}queryAttachments(e,t){return e=be.from(e),this.load().then((()=>{if(!this.get("capabilities.data.supportsAttachment"))throw new u(Fe,"this layer doesn't support attachments");const{attachmentTypes:t,objectIds:r,globalIds:i,num:o,size:s,start:n,where:a}=e;if(!this.get("capabilities.operations.supportsQueryAttachments")){const l=r&&r.length>1,p=t&&t.length,d=i&&i.length,y=s&&s.length;if(l||p||d||y||o||n||a)throw new u(Fe,"when 'supportsQueryAttachments' is false, only objectIds of length 1 are supported",e)}if(!(r&&r.length||a))throw new u(Fe,"'objectIds' or 'where' are required to perform attachment query",e);if(!("queryAttachments"in this.source))throw new u(Fe,"Layer source does not support queryAttachments capability",e);return this.source.queryAttachments(e)}))}queryFeatures(e,t){const r=ve.from(e)||this.createQuery(),i=g(r.outFields,[]);return i.find((e=>e===this.subtypeField))||(i.push(this.subtypeField),r.outFields=i),this.load().then((()=>this.source.queryFeatures(r,t))).then((e=>{if(null!=e&&e.features)for(const t of e.features)t.layer=this._findSublayerForFeature(t),t.sourceLayer=this;return e}))}_findSublayerForFeature(e){const t=this.fieldsIndex.get(this.subtypeField),r=e.attributes[t.name];return this.sublayers.find((e=>e.subtypeCode===r))}queryObjectIds(e,t){return this.load().then((()=>{if(this.source.queryObjectIds)return this.source.queryObjectIds(ve.from(e)||this.createQuery(),t);throw new u(Fe,"Layer source does not support queryObjectIds capability")}))}queryFeatureCount(e,t){return this.load().then((()=>{if(this.source.queryFeatureCount)return this.source.queryFeatureCount(ve.from(e)||this.createQuery(),t);throw new u(Fe,"Layer source does not support queryFeatureCount capability")}))}queryExtent(e,t){return this.load().then((()=>{if(this.source.queryExtent)return this.source.queryExtent(ve.from(e)||this.createQuery(),t);throw new u(Fe,"Layer source does not support queryExtent capability")}))}queryRelatedFeatures(e,t){return this.load().then((()=>{if("queryRelatedFeatures"in this.source)return this.source.queryRelatedFeatures(we.from(e),t);throw new u(Fe,"Layer source does not support queryRelatedFeatures capability")}))}queryRelatedFeaturesCount(e,t){return this.load().then((()=>{if("queryRelatedFeaturesCount"in this.source)return this.source.queryRelatedFeaturesCount(we.from(e),t);throw new u(Fe,"Layer source does not support queryRelatedFeaturesCount capability")}))}read(e,t){const r=e.featureCollection;if(r){const e=r.layers;e&&1===e.length&&(super.read(e[0],t),null!=r.showLegend&&super.read({showLegend:r.showLegend},t))}super.read(e,t),t&&"service"===t.origin&&this.revert(["objectIdField","fields","timeInfo","spatialReference"],"service")}write(e,t){var r,i;const o=(t={...t,writeLayerSchema:null!=(r=null==(i=t)?void 0:i.writeLayerSchema)?r:this._hasMemorySource()}).origin,s=t.layerContainerType,n=t.messages;if(this.isTable){if("web-scene"===o||"web-map"===o&&"tables"!==s)return n&&n.push(new u("layer:unsupported",`Layer (${this.title}, ${this.id}) of type '${this.declaredClass}' using a Table source cannot be written to web scenes and web maps`,{layer:this})),null;if(this._hasMemorySource())return n&&n.push(new u("layer:unsupported",`Layer (${this.title}, ${this.id}) of type '${this.declaredClass}' using an in-memory Table source cannot be written to web scenes and web maps`,{layer:this})),null}else if(this.loaded&&"web-map"===o&&"tables"===s)return n&&n.push(new u("layer:unsupported",`Layer (${this.title}, ${this.id}) of type '${this.declaredClass}' using a non-table source cannot be written to tables in web maps`,{layer:this})),null;return super.write(e,t)}_readEditingEnabled(e,t,r){var i;let o=null==(i=e.layerDefinition)?void 0:i.capabilities;return o?this._hasEditingCapability(o):(o=e.capabilities,!(t&&"web-map"===(null==r?void 0:r.origin)&&!this._hasMemorySource()&&o)||this._hasEditingCapability(o))}_hasEditingCapability(e){return e.toLowerCase().split(",").map((e=>e.trim())).includes("editing")}_writeEditingEnabled(e,t,r,i){if(!e){var o,s;const e=null!=(o=this.capabilities)&&null!=(s=o.operations)&&s.supportsSync?"Query,Sync":"Query";w("layerDefinition.capabilities",e,t),!r||null!=i&&i.writeLayerSchema||(t.capabilities=e)}}_checkAttachmentSupport(e){const{attributes:t}=e,{objectIdField:r}=this;return this.get("capabilities.data.supportsAttachment")?e?t?t[r]?void 0:Promise.reject(new u(Fe,`feature is missing the identifying attribute ${r}`)):Promise.reject(new u(Fe,"'attributes' are required on a feature to query attachments")):Promise.reject(new u(Fe,"A feature is required to add/delete/update attachments")):Promise.reject(new u(Fe,"this layer doesn't support attachments"))}_getLayerDomain(e){const t=this.fieldsIndex.get(e);return t?t.domain:null}_fetchFirstLayerId(e){return n(this.url,{query:{f:"json",...this.customParameters},responseType:"json",signal:e}).then((e=>{const t=e.data;if(t)return Array.isArray(t.layers)&&t.layers.length>0?t.layers[0].id:Array.isArray(t.tables)&&t.tables.length>0?t.tables[0].id:void 0}))}async _initLayerProperties(e){return this._set("source",e),e.sourceJSON&&(this.sourceJSON=e.sourceJSON,this.read(e.sourceJSON,{origin:"service",url:this.parsedUrl})),this._verifySource(),this._verifyFields(),le(this.renderer,this.fieldsIndex),pe(this.timeInfo,this.fieldsIndex),fe(this,{origin:"service"})}async hasDataChanged(){var e;if(null!=(e=this.source)&&e.refresh)try{var t;const{dataChanged:e,updates:r}=await(null==(t=this.source)?void 0:t.refresh());if(b(r)&&(this.sourceJSON={...this.sourceJSON,...r},this.read(r,{origin:"service",url:this.parsedUrl})),e)return!0}catch{}if(this.definitionExpression)try{return(await F(this.definitionExpression,this.fieldsIndex)).hasDateFunctions}catch{}return!1}_verifyFields(){const e=this.parsedUrl&&this.parsedUrl.path||"undefined";this.objectIdField||console.log("SubtypeGroupLayer: 'objectIdField' property is not defined (url: "+e+")"),this.isTable||this._hasMemorySource()||-1!==e.search(/\/FeatureServer\//i)||this.fields&&this.fields.some((function(e){return"geometry"===e.type}))||console.log("SubtypeGroupLayer: unable to find field of type 'geometry' in the layer 'fields' list. If you are using a map service layer, features will not have geometry (url: "+e+")")}_verifySource(){if(this._hasMemorySource()){if(this.url)throw new u("feature-layer:mixed-source-and-url","SubtypeGroupLayer cannot be created with both an in-memory source and a url")}else if(!this.url)throw new u("feature-layer:source-or-url-required","SubtypeGroupLayer requires either a url, a valid portal item or a source")}_initMemorySource(e){e.forEach((e=>{e.layer=this,e.sourceLayer=this})),this._handles.add([e.on("after-add",(e=>{e.item.layer=this,e.item.sourceLayer=this})),e.on("after-remove",(e=>{e.item.layer=null,e.item.sourceLayer=null}))],"fl-source")}_resetMemorySource(e){e.forEach((e=>{e.layer=null,e.sourceLayer=null})),this._handles.remove("fl-source")}_hasMemorySource(){return!(this.url||!this.source)}_readAttachmentCapabilities(e){const t={supportsName:!1,supportsSize:!1,supportsContentType:!1,supportsKeywords:!1,supportsExifInfo:!1};return e&&Array.isArray(e)&&e.forEach((e=>{const r=Ie[e.name];r&&(t[r]=!!e.isEnabled)})),t}_readDataCapabilities(e){return{isVersioned:xe(e,"isDataVersioned",!1),supportsAttachment:xe(e,"hasAttachments",!1),supportsM:xe(e,"hasM",!1),supportsZ:xe(e,"hasZ",!1)}}_readMetadataCapabilities(e){return{supportsAdvancedFieldProperties:xe(e,"supportsFieldDescriptionProperty",!1)}}_readOperationsCapabilities(e,t){const r=e?e.toLowerCase().split(",").map((e=>e.trim())):[],i=-1!==r.indexOf("editing");let o=i&&-1!==r.indexOf("create"),s=i&&-1!==r.indexOf("delete"),n=i&&-1!==r.indexOf("update");const a=-1!==r.indexOf("changetracking");return i&&!(o||s||n)&&(o=s=n=!0),{supportsCalculate:xe(t,"supportsCalculate",!1),supportsTruncate:xe(t,"supportsTruncate",!1),supportsValidateSql:xe(t,"supportsValidateSql",!1),supportsAdd:o,supportsDelete:s,supportsEditing:i,supportsChangeTracking:a,supportsQuery:-1!==r.indexOf("query"),supportsQueryAttachments:xe(t.advancedQueryCapabilities,"supportsQueryAttachments",!1),supportsResizeAttachments:xe(t,"supportsAttachmentsResizing",!1),supportsSync:-1!==r.indexOf("sync"),supportsUpdate:n,supportsExceedsLimitStatistics:xe(t,"supportsExceedsLimitStatistics",!1)}}_readQueryCapabilities(e){var t;const r=e.advancedQueryCapabilities,i=e.ownershipBasedAccessControlForFeatures,o=e.archivingInfo,s=null==(t=this.url)?void 0:t.includes("MapServer"),n=!c("mapserver-pbf-enabled")&&s&&this.version<10.81,a=(e.supportedQueryFormats||"").split(",").reduce(((e,t)=>{const r=t.toLowerCase().trim();return r&&e.add(r),e}),new Set);return{supportsStatistics:xe(r,"supportsStatistics",e.supportsStatistics),supportsPercentileStatistics:xe(r,"supportsPercentileStatistics",!1),supportsCentroid:xe(r,"supportsReturningGeometryCentroid",!1),supportsDistance:xe(r,"supportsQueryWithDistance",!1),supportsDistinct:xe(r,"supportsDistinct",e.supportsAdvancedQueries),supportsExtent:xe(r,"supportsReturningQueryExtent",!1),supportsGeometryProperties:xe(r,"supportsReturningGeometryProperties",!1),supportsHavingClause:xe(r,"supportsHavingClause",!1),supportsOrderBy:xe(r,"supportsOrderBy",e.supportsAdvancedQueries),supportsPagination:xe(r,"supportsPagination",!1),supportsQuantization:xe(e,"supportsCoordinatesQuantization",!1),supportsQuantizationEditMode:xe(e,"supportsQuantizationEditMode",!1),supportsQueryGeometry:xe(e,"supportsReturningQueryGeometry",!1),supportsResultType:xe(r,"supportsQueryWithResultType",!1),supportsMaxRecordCountFactor:xe(r,"supportsMaxRecordCountFactor",!1),supportsSqlExpression:xe(r,"supportsSqlExpression",!1),supportsStandardizedQueriesOnly:xe(e,"useStandardizedQueries",!1),supportsTopFeaturesQuery:xe(r,"supportsTopFeaturesQuery",!1),supportsQueryByOthers:xe(i,"allowOthersToQuery",!0),supportsHistoricMoment:xe(o,"supportsQueryWithHistoricMoment",!1),supportsFormatPBF:!n&&a.has("pbf"),supportsDisjointSpatialRelationship:xe(r,"supportsDisjointSpatialRel",!1),supportsCacheHint:xe(r,"supportsQueryWithCacheHint",!1),maxRecordCountFactor:De(e,"maxRecordCountFactor",void 0),maxRecordCount:De(e,"maxRecordCount",void 0),standardMaxRecordCount:De(e,"standardMaxRecordCount",void 0),tileMaxRecordCount:De(e,"tileMaxRecordCount",void 0)}}_readQueryRelatedCapabilities(e){const t=e.advancedQueryCapabilities,r=xe(t,"supportsAdvancedQueryRelated",!1);return{supportsPagination:xe(t,"supportsQueryRelatedPagination",!1),supportsCount:r,supportsOrderBy:r}}_readEditingCapabilities(e){const t=e.ownershipBasedAccessControlForFeatures;return{supportsGeometryUpdate:xe(e,"allowGeometryUpdates",!0),supportsGlobalId:xe(e,"supportsApplyEditsWithGlobalIds",!1),supportsReturnServiceEditsInSourceSpatialReference:xe(e,"supportsReturnServiceEditsInSourceSpatialReference",!1),supportsRollbackOnFailure:xe(e,"supportsRollbackOnFailureParameter",!1),supportsUpdateWithoutM:xe(e,"allowUpdateWithoutMValues",!1),supportsUploadWithItemId:xe(e,"supportsAttachmentsByUploadId",!1),supportsDeleteByAnonymous:xe(t,"allowAnonymousToDelete",!0),supportsDeleteByOthers:xe(t,"allowOthersToDelete",!0),supportsUpdateByAnonymous:xe(t,"allowAnonymousToUpdate",!0),supportsUpdateByOthers:xe(t,"allowOthersToUpdate",!0)}}_handleSublayersChange(e,t){t&&(t.forEach((e=>{e.parent=null})),this.handles.remove("sublayers-owner")),e&&(e.forEach((e=>{e.parent=this})),this.handles.add([e.on("after-add",(({item:e})=>{e.parent=this})),e.on("after-remove",(({item:e})=>{e.parent=null}))],"sublayers-owner"))}};e([x({readOnly:!0,json:{read:!1}})],Te.prototype,"capabilities",void 0),e([C("service","capabilities",["advancedQueryCapabilities","allowGeometryUpdates","allowUpdateWithoutMValues","archivingInfo","capabilities","hasAttachments","hasM","hasZ","maxRecordCount","maxRecordCountFactor","ownershipBasedAccessControlForFeatures","standardMaxRecordCount","supportedQueryFormats","supportsAdvancedQueries","supportsApplyEditsWithGlobalIds","supportsAttachmentsByUploadId","supportsAttachmentsResizing","supportsCalculate","supportsCoordinatesQuantization","supportsExceedsLimitStatistics","supportsFieldDescriptionProperty","supportsQuantizationEditMode","supportsRollbackOnFailureParameter","supportsStatistics","supportsTruncate","supportsValidateSql","tileMaxRecordCount","useStandardizedQueries"])],Te.prototype,"readCapabilities",null),e([x({json:{origins:{"portal-item":{write:!0},"web-map":{write:!0}}}})],Te.prototype,"charts",void 0),e([x({readOnly:!0})],Te.prototype,"createQueryVersion",null),e([x({type:String,json:{read:{source:"layerDefinition.copyrightText"},origins:{service:{read:{source:"copyrightText"}}}}})],Te.prototype,"copyright",void 0),e([x({type:String,json:{read:{source:"layerDefinition.displayField"},origins:{service:{read:{source:"displayField"}}}}})],Te.prototype,"displayField",void 0),e([x({type:String,json:{origins:{service:{read:!1,write:!1}},name:"layerDefinition.definitionExpression",write:{enabled:!0,allowNull:!0}}})],Te.prototype,"definitionExpression",void 0),e([x({types:a,readOnly:!0})],Te.prototype,"defaultSymbol",void 0),e([x({type:me})],Te.prototype,"dynamicDataSource",void 0),e([x({readOnly:!0})],Te.prototype,"editFieldsInfo",void 0),e([x({type:Boolean})],Te.prototype,"editingEnabled",void 0),e([C(["portal-item","web-scene"],"editingEnabled",["layerDefinition.capabilities"])],Te.prototype,"readEditingEnabled",null),e([C("web-map","editingEnabled",["capabilities","layerDefinition.capabilities"])],Te.prototype,"readEditingEnabledFromWebMap",null),e([T(["portal-item","web-scene"],"editingEnabled",{"layerDefinition.capabilities":{type:String}})],Te.prototype,"writeEditingEnabled",null),e([T("web-map","editingEnabled",{capabilities:{type:String},"layerDefinition.capabilities":{type:String}})],Te.prototype,"writeEditingEnabledToWebMap",null),e([x({readOnly:!0})],Te.prototype,"editingInfo",void 0),e([C("editingInfo")],Te.prototype,"readEditingInfo",null),e([x(K)],Te.prototype,"elevationInfo",void 0),e([x(ne)],Te.prototype,"featureReduction",void 0),e([x({...Ce.fields,json:{read:{source:"layerDefinition.fields"},origins:{service:{read:!0},"web-map":{write:{target:"layerDefinition.fields",overridePolicy:Me}}}}})],Te.prototype,"fields",void 0),e([x(Ce.fieldsIndex)],Te.prototype,"fieldsIndex",void 0),e([x({type:de,json:{read:{source:"layerDefinition.floorInfo"},write:{target:"layerDefinition.floorInfo"},origins:{"web-scene":{write:!1}}}})],Te.prototype,"floorInfo",void 0),e([x({type:R,json:{name:"formInfo",write:!0,origins:{"web-scene":{read:!1,write:!1}}}})],Te.prototype,"formTemplate",void 0),e([x({type:A,json:{origins:{service:{read:{source:"extent"}}},read:{source:"layerDefinition.extent"}}})],Te.prototype,"fullExtent",void 0),e([x()],Te.prototype,"gdbVersion",void 0),e([x({readOnly:!0,type:ue,json:{read:{source:"geometryProperties"}}})],Te.prototype,"geometryFieldsInfo",void 0),e([x({type:["point","polygon","polyline","multipoint","multipatch","mesh"],json:{origins:{service:{read:Se.read},"web-map":{write:{target:"layerDefinition.geometryType",overridePolicy:Me,writer(e,t,r){const i=e?Se.toJSON(e):null;i&&w(r,i,t)}}}},read:{source:"layerDefinition.geometryType",reader:Se.read}}})],Te.prototype,"geometryType",void 0),e([x({type:Boolean,json:{origins:{service:{read:!0}},read:{source:"layerDefinition.hasM"}}})],Te.prototype,"hasM",void 0),e([x({type:Boolean,json:{origins:{service:{read:!0}},read:{source:"layerDefinition.hasZ"}}})],Te.prototype,"hasZ",void 0),e([x({readOnly:!0,type:L})],Te.prototype,"heightModelInfo",void 0),e([x({type:Date})],Te.prototype,"historicMoment",void 0),e([x(X)],Te.prototype,"id",void 0),e([x({readOnly:!0,json:{origins:{"web-map":{write:{target:"layerDefinition.type"}}}}})],Te.prototype,"isTable",void 0),e([C("service","isTable",["type","geometryType"]),C("isTable",["layerDefinition.type","layerDefinition.geometryType"])],Te.prototype,"readIsTable",null),e([T("web-map","isTable")],Te.prototype,"writeIsTable",null),e([x(Y)],Te.prototype,"opacity",void 0),e([x({type:Number,json:{origins:{service:{read:{source:"id"}}},read:!1}})],Te.prototype,"layerId",void 0),e([x(ee)],Te.prototype,"legendEnabled",void 0),e([x({type:["show","hide"]})],Te.prototype,"listMode",void 0),e([x(te)],Te.prototype,"minScale",void 0),e([C("service","minScale",["minScale","effectiveMinScale"])],Te.prototype,"readMinScale",null),e([x(re)],Te.prototype,"maxScale",void 0),e([C("service","maxScale",["maxScale","effectiveMaxScale"])],Te.prototype,"readMaxScale",null),e([x({type:String})],Te.prototype,"globalIdField",void 0),e([C("globalIdField",["layerDefinition.globalIdField","layerDefinition.fields"]),C("service","globalIdField",["globalIdField","fields"])],Te.prototype,"readGlobalIdFieldFromService",null),e([x({type:String,json:{origins:{"web-map":{write:{target:"layerDefinition.objectIdField",overridePolicy:Me}}}}})],Te.prototype,"objectIdField",void 0),e([C("objectIdField",["layerDefinition.objectIdField","layerDefinition.fields"]),C("service","objectIdField",["objectIdField","fields"])],Te.prototype,"readObjectIdFieldFromService",null),e([x({value:"ArcGISSubtypeGroupLayer",type:["ArcGISSubtypeGroupLayer"]})],Te.prototype,"operationalLayerType",void 0),e([x(Ce.outFields)],Te.prototype,"outFields",void 0),e([x({readOnly:!0})],Te.prototype,"parsedUrl",null),e([x({type:String,json:{origins:{"web-scene":{read:!0,write:!0}},read:!1}})],Te.prototype,"path",void 0),e([x({type:[ye],readOnly:!0})],Te.prototype,"relationships",void 0),e([x({types:o,json:{origins:{service:{write:{target:"drawingInfo.renderer",enabled:!1}},"web-scene":{types:s,name:"layerDefinition.drawingInfo.renderer",write:{overridePolicy:(e,t,r)=>({ignoreOrigin:null==r?void 0:r.writeLayerSchema})}}},write:{target:"layerDefinition.drawingInfo.renderer",overridePolicy:(e,t,r)=>({ignoreOrigin:null==r?void 0:r.writeLayerSchema})}}})],Te.prototype,"renderer",null),e([C("service","renderer",["drawingInfo.renderer","defaultSymbol"]),C("renderer",["layerDefinition.drawingInfo.renderer","layerDefinition.defaultSymbol"])],Te.prototype,"readRenderer",null),e([x()],Te.prototype,"sourceJSON",void 0),e([x({type:Boolean})],Te.prototype,"returnM",void 0),e([x({type:Boolean})],Te.prototype,"returnZ",void 0),e([x(ie)],Te.prototype,"screenSizePerspectiveEnabled",void 0),e([x()],Te.prototype,"source",null),e([D("source")],Te.prototype,"castSource",null),e([C("portal-item","source",["featureSet"]),C("web-map","source",["featureSet"])],Te.prototype,"readSource",null),e([x({readOnly:!0})],Te.prototype,"serviceDefinitionExpression",void 0),e([C("service","serviceDefinitionExpression",["definitionQuery","definitionExpression"])],Te.prototype,"readServiceDefinitionExpression",null),e([x({type:_,json:{origins:{service:{read:{source:"extent.spatialReference"}}},read:{source:"layerDefinition.extent.spatialReference"}}})],Te.prototype,"spatialReference",void 0),e([x({type:String})],Te.prototype,"subtypeField",void 0),e([x({type:p.ofType(ce),json:{origins:{service:{read:{source:"subtypes",reader:(e,t,r)=>{const o=e.map((e=>new ce({subtypeCode:e.code,renderer:i(t.drawingInfo.renderer,t,r),title:e.name})));return new(p.ofType(ce))(o)}}}}}})],Te.prototype,"sublayers",void 0),e([x({type:he})],Te.prototype,"timeInfo",void 0),e([x()],Te.prototype,"title",void 0),e([C("service","title",["name"]),C("portal-item","title",["layerDefinition.title","layerDefinition.name","title"])],Te.prototype,"readTitle",null),e([C("web-map","title",["layerDefinition.name","title"])],Te.prototype,"readTitleFromWebMap",null),e([x({type:String})],Te.prototype,"sublayerTitleMode",void 0),e([x({type:String,json:{read:{source:"timeInfo.trackIdField"}}})],Te.prototype,"trackIdField",void 0),e([x({json:{read:!1}})],Te.prototype,"type",void 0),e([x({type:String})],Te.prototype,"typeIdField",void 0),e([C("service","typeIdField"),C("typeIdField",["layerDefinition.typeIdField"])],Te.prototype,"readTypeIdField",null),e([x({readOnly:!0,json:{write:!1}})],Te.prototype,"serverGens",void 0),e([x({type:p.ofType(se),readOnly:!0})],Te.prototype,"indexes",void 0),e([x(oe)],Te.prototype,"url",null),e([T("url")],Te.prototype,"writeUrl",null),e([x({readOnly:!0})],Te.prototype,"userIsAdmin",void 0),e([x({json:{origins:{service:{read:!0}},read:!1}})],Te.prototype,"version",void 0),e([C("service","version",["currentVersion","capabilities","drawingInfo","hasAttachments","htmlPopupType","relationships","timeInfo","typeIdField","types"])],Te.prototype,"readVersion",null),e([x({type:Boolean,json:{origins:{"portal-item":{write:{target:"layerDefinition.defaultVisibility"}}}}})],Te.prototype,"visible",void 0),e([C("portal-item","visible",["visibility","layerDefinition.defaultVisibility"])],Te.prototype,"readVisible",null),Te=e([M("esri.layers.SubtypeGroupLayer")],Te);const Oe=O({types:l}),Re=Te;export{Re as default};
5
+ import{_ as e}from"../chunks/tslib.es6.js";import"../renderers/ClassBreaksRenderer.js";import"../renderers/DictionaryRenderer.js";import"../renderers/DotDensityRenderer.js";import"../renderers/HeatmapRenderer.js";import"../renderers/Renderer.js";import t from"../renderers/SimpleRenderer.js";import r from"../renderers/UniqueValueRenderer.js";import{read as i}from"../renderers/support/jsonUtils.js";import{rendererTypes as o,webSceneRendererTypes as s}from"../renderers/support/types.js";import a from"../request.js";import{symbolTypes as n,symbolTypesRenderer as l}from"../symbols.js";import p from"../core/Collection.js";import u from"../core/Error.js";import{HandleOwnerMixin as d}from"../core/HandleOwner.js";import c from"../core/Handles.js";import y from"../core/has.js";import{JSONMap as h}from"../core/jsonMap.js";import m from"../core/Logger.js";import{destroyMaybe as f,isSome as b,unwrapOr as g}from"../core/maybe.js";import{MultiOriginJSONMixin as v}from"../core/MultiOriginJSONSupport.js";import{setDeepValue as w}from"../core/object.js";import{throwIfAbortError as S,throwIfAborted as I}from"../core/promiseUtils.js";import{parseWhereClause as F}from"../core/sql.js";import{urlToObject as j,join as x}from"../core/urlUtils.js";import{property as E}from"../core/accessorSupport/decorators/property.js";import"../core/arrayUtils.js";import{cast as D}from"../core/accessorSupport/decorators/cast.js";import{reader as C}from"../core/accessorSupport/decorators/reader.js";import{subclass as M}from"../core/accessorSupport/decorators/subclass.js";import{writer as A}from"../core/accessorSupport/decorators/writer.js";import{createTypeReader as T}from"../core/accessorSupport/extensions/serializableProperty/reader.js";import O from"../form/FormTemplate.js";import R from"../geometry/Extent.js";import L from"../geometry/HeightModelInfo.js";import _ from"../geometry/SpatialReference.js";import P from"./Layer.js";import Q from"./graphics/sources/MemorySource.js";import{ArcGISService as q}from"./mixins/ArcGISService.js";import{BlendLayer as G}from"./mixins/BlendLayer.js";import{CustomParametersMixin as U}from"./mixins/CustomParametersMixin.js";import{OperationalLayer as V}from"./mixins/OperationalLayer.js";import{PortalLayer as B}from"./mixins/PortalLayer.js";import{RefreshableLayer as z}from"./mixins/RefreshableLayer.js";import{ScaleRangeLayer as N}from"./mixins/ScaleRangeLayer.js";import{TemporalLayer as W}from"./mixins/TemporalLayer.js";import{titleFromUrlAndName as k,parse as $,cleanTitle as Z,sanitizeUrlWithLayerId as H,writeUrlWithLayerId as J}from"./support/arcgisLayerUrl.js";import{elevationInfo as K,id as X,opacityDrawingInfo as Y,legendEnabled as ee,minScale as te,maxScale as re,screenSizePerspectiveEnabled as ie,url as oe}from"./support/commonProperties.js";import{FeatureIndex as se}from"./support/FeatureIndex.js";import{featureReductionProperty as ae}from"./support/featureReductionUtils.js";import{defineFieldProperties as ne}from"./support/fieldProperties.js";import{fixRendererFields as le,fixTimeInfoFields as pe}from"./support/fieldUtils.js";import ue from"./support/GeometryFieldsInfo.js";import de from"./support/LayerFloorInfo.js";import ce from"./support/Relationship.js";import ye from"./support/SubtypeSublayer.js";import he from"./support/TimeInfo.js";import{DataLayerSource as me}from"./support/source/DataLayerSource.js";import{loadStyleRenderer as fe}from"../renderers/support/styleUtils.js";import be from"../rest/support/AttachmentQuery.js";import ge from"../rest/support/FeatureSet.js";import ve from"../rest/support/Query.js";import we from"../rest/support/RelationshipQuery.js";const Se=new h({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryMultiPatch:"multipatch"}),Ie={name:"supportsName",size:"supportsSize",contentType:"supportsContentType",keywords:"supportsKeywords",exifInfo:"supportsExifInfo"},Fe="SubtypeGroupLayer",je=m.getLogger("esri.layers.SubtypeGroupLayer");function xe(e){return e&&e instanceof p}function Ee(e,t,r){return!!(e&&e.hasOwnProperty(t)?e[t]:r)}function De(e,t,r){return e&&e.hasOwnProperty(t)?e[t]:r}function Ce(e){var t;const r=null==e||null==(t=e.supportedSpatialAggregationStatistics)?void 0:t.map((e=>e.toLowerCase()));return{envelope:!(null==r||!r.includes("envelopeaggregate")),centroid:!(null==r||!r.includes("centroidaggregate")),convexHull:!(null==r||!r.includes("convexhullaggregate"))}}const Me=ne();function Ae(e,t,r){const i=!(null==r||!r.writeLayerSchema);return{enabled:i,ignoreOrigin:i}}let Te=class extends(G(W(N(z(q(V(B(v(U(d(P))))))))))){constructor(...e){super(...e),this._handles=new c,this.capabilities=null,this.charts=null,this.copyright=null,this.displayField=null,this.definitionExpression=null,this.dynamicDataSource=null,this.editFieldsInfo=null,this.editingEnabled=!0,this.editingInfo=null,this.elevationInfo=null,this.featureReduction=null,this.fields=null,this.fieldsIndex=null,this.floorInfo=null,this.formTemplate=null,this.fullExtent=null,this.gdbVersion=null,this.geometryFieldsInfo=null,this.geometryType=null,this.hasM=void 0,this.hasZ=void 0,this.heightModelInfo=null,this.historicMoment=null,this.isTable=!1,this.layerId=void 0,this.legendEnabled=!0,this.minScale=0,this.maxScale=0,this.globalIdField=null,this.objectIdField=null,this.outFields=null,this.path=null,this.relationships=null,this.sourceJSON=null,this.returnM=void 0,this.returnZ=void 0,this.screenSizePerspectiveEnabled=!0,this.serviceDefinitionExpression=null,this.spatialReference=_.WGS84,this.subtypeField=null,this.sublayers=new(p.ofType(ye)),this.timeInfo=null,this.title=null,this.sublayerTitleMode="item-title",this.trackIdField=null,this.type="subtype-group",this.typeIdField=null,this.indexes=new(p.ofType(se)),this.userIsAdmin=!1,this.version=void 0,this.visible=!0,this._handles.add(this.watch("sublayers",((e,t)=>this._handleSublayersChange(e,t)),!0))}destroy(){var e;null==(e=this.source)||e.destroy(),this._handles=f(this._handles)}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}load(e){const t=b(e)?e.signal:null;if(this.portalItem&&this.portalItem.loaded&&this.source)return void this.addResolvingPromise(this.createGraphicsSource(t).then((e=>this._initLayerProperties(e))));const r=this.loadFromPortal({supportedTypes:["Feature Service","Feature Collection"]},e).catch(S).then((async()=>{if(this.url&&null==this.layerId&&/FeatureServer|MapServer\/*$/i.test(this.url)){const e=await this._fetchFirstLayerId(t);null!=e&&(this.layerId=e)}if(!this.url&&!this._hasMemorySource())throw new u("feature-layer:missing-url-or-source","Feature layer must be created with either a url or a source");return this._initLayerProperties(await this.createGraphicsSource(t))})).then((()=>this.finishLoadEditablePortalLayer(e)));return this.addResolvingPromise(r),Promise.resolve(this)}readCapabilities(e,t){return t=t.layerDefinition||t,{attachment:this._readAttachmentCapabilities(t.attachmentProperties),data:this._readDataCapabilities(t),metadata:this._readMetadataCapabilities(t),operations:this._readOperationsCapabilities(t.capabilities||e,t),query:this._readQueryCapabilities(t),queryRelated:this._readQueryRelatedCapabilities(t),editing:this._readEditingCapabilities(t)}}get createQueryVersion(){return this.commitProperty("definitionExpression"),this.commitProperty("dynamicDataSource"),this.commitProperty("timeExtent"),this.commitProperty("timeOffset"),this.commitProperty("geometryType"),this.commitProperty("gdbVersion"),this.commitProperty("historicMoment"),this.commitProperty("returnZ"),this.commitProperty("capabilities"),this.commitProperty("returnM"),(this._get("createQueryVersion")||0)+1}readEditingEnabled(e,t){return this._readEditingEnabled(t,!1)}readEditingEnabledFromWebMap(e,t,r){return this._readEditingEnabled(t,!0,r)}writeEditingEnabled(e,t){this._writeEditingEnabled(e,t,!1)}writeEditingEnabledToWebMap(e,t,r,i){this._writeEditingEnabled(e,t,!0,i)}readEditingInfo(e,t){const{editingInfo:r}=t;return r?{lastEditDate:null!=r.lastEditDate?new Date(r.lastEditDate):null}:null}readIsTable(e,t){return"Table"===(t=t&&t.layerDefinition||t).type||!t.geometryType}writeIsTable(e,t,r,i){null!=i&&i.writeLayerSchema&&w(r,e?"Table":"Feature Layer",t)}readMinScale(e,t){return t.effectiveMinScale||e||0}readMaxScale(e,t){return t.effectiveMaxScale||e||0}readGlobalIdFieldFromService(e,t){if((t=t.layerDefinition||t).globalIdField)return t.globalIdField;if(t.fields)for(const r of t.fields)if("esriFieldTypeGlobalID"===r.type)return r.name}readObjectIdFieldFromService(e,t){if((t=t.layerDefinition||t).objectIdField)return t.objectIdField;if(t.fields)for(const r of t.fields)if("esriFieldTypeOID"===r.type)return r.name}get parsedUrl(){const e=this.url?j(this.url):null;return null!=e&&(null!=this.dynamicDataSource?e.path=x(e.path,"dynamicLayer"):null!=this.layerId&&(e.path=x(e.path,this.layerId.toString()))),e}set renderer(e){le(e,this.fieldsIndex),this._set("renderer",e)}readRenderer(e,o,s){const a=(o=o.layerDefinition||o).drawingInfo&&o.drawingInfo.renderer||void 0;if(a){const e=i(a,o,s)||void 0;return e||je.error("Failed to create renderer",{rendererDefinition:o.drawingInfo.renderer,layer:this,context:s}),e}if(o.defaultSymbol)return o.types&&o.types.length?new r({defaultSymbol:Oe(o.defaultSymbol,o,s),field:o.typeIdField,uniqueValueInfos:o.types.map((e=>({id:e.id,symbol:Oe(e.symbol,e,s)})))}):new t({symbol:Oe(o.defaultSymbol,o,s)})}set source(e){const t=this._get("source");t!==e&&(xe(t)&&this._resetMemorySource(t),xe(e)&&this._initMemorySource(e),this._set("source",e))}castSource(e){return e?Array.isArray(e)||e instanceof p?new Q({layer:this,items:e}):e:null}readSource(e,t){const r=ge.fromJSON(t.featureSet);return new Q({layer:this,items:r&&r.features||[]})}readServiceDefinitionExpression(e,t){return t.definitionQuery||t.definitionExpression}readTitle(e,t){const r=t.layerDefinition&&t.layerDefinition.name||t.name,i=t.title||t.layerDefinition&&t.layerDefinition.title;if(r){const e=this.portalItem&&this.portalItem.title;if("item-title"===this.sublayerTitleMode)return this.url?k(this.url,r):r;let t=r;if(!t&&this.url){const e=$(this.url);b(e)&&(t=e.title)}if(!t)return;return"item-title-and-service-name"===this.sublayerTitleMode&&e&&e!==t&&(t=e+" - "+t),Z(t)}if("item-title"===this.sublayerTitleMode&&i)return i}readTitleFromWebMap(e,t){return t.title||t.layerDefinition&&t.layerDefinition.name}readTypeIdField(e,t){let r=(t=t.layerDefinition||t).typeIdField;if(r&&t.fields){r=r.toLowerCase();const e=t.fields.find((e=>e.name.toLowerCase()===r));e&&(r=e.name)}return r}set url(e){const t=H({layer:this,url:e,nonStandardUrlAllowed:!0,logger:je});this._set("url",t.url),null!=t.layerId&&this._set("layerId",t.layerId)}writeUrl(e,t,r,i){J(this,e,null,t,i)}readVersion(e,t){return t.currentVersion?t.currentVersion:t.hasOwnProperty("capabilities")||t.hasOwnProperty("drawingInfo")||t.hasOwnProperty("hasAttachments")||t.hasOwnProperty("htmlPopupType")||t.hasOwnProperty("relationships")||t.hasOwnProperty("timeInfo")||t.hasOwnProperty("typeIdField")||t.hasOwnProperty("types")?10:9.3}readVisible(e,t){return t.layerDefinition&&null!=t.layerDefinition.defaultVisibility?!!t.layerDefinition.defaultVisibility:null!=t.visibility?!!t.visibility:void 0}addAttachment(e,t){return this.load().then((()=>this._checkAttachmentSupport(e))).then((()=>{if(!("addAttachment"in this.source))throw new u(Fe,"Layer source does not support addAttachment capability");return this.source.addAttachment(e,t)}))}updateAttachment(e,t,r){return this.load().then((()=>this._checkAttachmentSupport(e))).then((()=>{if(!("updateAttachment"in this.source))throw new u(Fe,"Layer source does not support updateAttachment capability");return this.source.updateAttachment(e,t,r)}))}async applyEdits(e,t){const r=await import("./graphics/editingSupport.js");return await this.load(),r.applyEdits(this,this.source,e,t)}on(e,t){return super.on(e,t)}async createGraphicsSource(e){if(this._hasMemorySource())return this.emit("graphics-source-create",{graphicsSource:this.source}),this.source.load({signal:e});const t=await import("./graphics/sources/FeatureLayerSource.js");I(e);const r=await new t.default({layer:this}).load({signal:e});return this.emit("graphics-source-create",{graphicsSource:r}),r}createQuery(){const e=new ve,t=this.get("capabilities.data"),r=this.sublayers.map((e=>e.subtypeCode));e.dynamicDataSource=this.dynamicDataSource,e.gdbVersion=this.gdbVersion,e.historicMoment=this.historicMoment,e.returnGeometry=!0,t&&(t.supportsZ&&null!=this.returnZ&&(e.returnZ=this.returnZ),t.supportsM&&null!=this.returnM&&(e.returnM=this.returnM)),e.outFields=["*"],e.where=`${this.subtypeField} IN (${r.join(",")})`,this.definitionExpression&&(e.where+=` AND (${this.definitionExpression})`);const{timeOffset:i,timeExtent:o}=this;return e.timeExtent=null!=i&&null!=o?o.offset(-i.value,i.unit):o||null,e.multipatchOption="multipatch"===this.geometryType?"xyFootprint":null,e}deleteAttachments(e,t){return this.load().then((()=>this._checkAttachmentSupport(e))).then((()=>{if(!("deleteAttachments"in this.source))throw new u(Fe,"Layer source does not support deleteAttachments capability");return this.source.deleteAttachments(e,t)}))}fetchRecomputedExtents(e){return this.load({signal:null==e?void 0:e.signal}).then((()=>{if(this.source.fetchRecomputedExtents)return this.source.fetchRecomputedExtents(e);throw new u(Fe,"Layer source does not support fetchUpdates capability")}))}getFieldDomain(e,t){return this._getLayerDomain(e)}getField(e){return this.fieldsIndex.get(e)}queryAttachments(e,t){return e=be.from(e),this.load().then((()=>{if(!this.get("capabilities.data.supportsAttachment"))throw new u(Fe,"this layer doesn't support attachments");const{attachmentTypes:t,objectIds:r,globalIds:i,num:o,size:s,start:a,where:n}=e;if(!this.get("capabilities.operations.supportsQueryAttachments")){const l=r&&r.length>1,p=t&&t.length,d=i&&i.length,c=s&&s.length;if(l||p||d||c||o||a||n)throw new u(Fe,"when 'supportsQueryAttachments' is false, only objectIds of length 1 are supported",e)}if(!(r&&r.length||n))throw new u(Fe,"'objectIds' or 'where' are required to perform attachment query",e);if(!("queryAttachments"in this.source))throw new u(Fe,"Layer source does not support queryAttachments capability",e);return this.source.queryAttachments(e)}))}queryFeatures(e,t){const r=ve.from(e)||this.createQuery(),i=g(r.outFields,[]);return i.find((e=>e===this.subtypeField))||(i.push(this.subtypeField),r.outFields=i),this.load().then((()=>this.source.queryFeatures(r,t))).then((e=>{if(null!=e&&e.features)for(const t of e.features)t.layer=this._findSublayerForFeature(t),t.sourceLayer=this;return e}))}_findSublayerForFeature(e){const t=this.fieldsIndex.get(this.subtypeField),r=e.attributes[t.name];return this.sublayers.find((e=>e.subtypeCode===r))}queryObjectIds(e,t){return this.load().then((()=>{if(this.source.queryObjectIds)return this.source.queryObjectIds(ve.from(e)||this.createQuery(),t);throw new u(Fe,"Layer source does not support queryObjectIds capability")}))}queryFeatureCount(e,t){return this.load().then((()=>{if(this.source.queryFeatureCount)return this.source.queryFeatureCount(ve.from(e)||this.createQuery(),t);throw new u(Fe,"Layer source does not support queryFeatureCount capability")}))}queryExtent(e,t){return this.load().then((()=>{if(this.source.queryExtent)return this.source.queryExtent(ve.from(e)||this.createQuery(),t);throw new u(Fe,"Layer source does not support queryExtent capability")}))}queryRelatedFeatures(e,t){return this.load().then((()=>{if("queryRelatedFeatures"in this.source)return this.source.queryRelatedFeatures(we.from(e),t);throw new u(Fe,"Layer source does not support queryRelatedFeatures capability")}))}queryRelatedFeaturesCount(e,t){return this.load().then((()=>{if("queryRelatedFeaturesCount"in this.source)return this.source.queryRelatedFeaturesCount(we.from(e),t);throw new u(Fe,"Layer source does not support queryRelatedFeaturesCount capability")}))}read(e,t){const r=e.featureCollection;if(r){const e=r.layers;e&&1===e.length&&(super.read(e[0],t),null!=r.showLegend&&super.read({showLegend:r.showLegend},t))}super.read(e,t),t&&"service"===t.origin&&this.revert(["objectIdField","fields","timeInfo","spatialReference"],"service")}write(e,t){var r,i;const o=(t={...t,writeLayerSchema:null!=(r=null==(i=t)?void 0:i.writeLayerSchema)?r:this._hasMemorySource()}).origin,s=t.layerContainerType,a=t.messages;if(this.isTable){if("web-scene"===o||"web-map"===o&&"tables"!==s)return a&&a.push(new u("layer:unsupported",`Layer (${this.title}, ${this.id}) of type '${this.declaredClass}' using a Table source cannot be written to web scenes and web maps`,{layer:this})),null;if(this._hasMemorySource())return a&&a.push(new u("layer:unsupported",`Layer (${this.title}, ${this.id}) of type '${this.declaredClass}' using an in-memory Table source cannot be written to web scenes and web maps`,{layer:this})),null}else if(this.loaded&&"web-map"===o&&"tables"===s)return a&&a.push(new u("layer:unsupported",`Layer (${this.title}, ${this.id}) of type '${this.declaredClass}' using a non-table source cannot be written to tables in web maps`,{layer:this})),null;return super.write(e,t)}_readEditingEnabled(e,t,r){var i;let o=null==(i=e.layerDefinition)?void 0:i.capabilities;return o?this._hasEditingCapability(o):(o=e.capabilities,!(t&&"web-map"===(null==r?void 0:r.origin)&&!this._hasMemorySource()&&o)||this._hasEditingCapability(o))}_hasEditingCapability(e){return e.toLowerCase().split(",").map((e=>e.trim())).includes("editing")}_writeEditingEnabled(e,t,r,i){if(!e){var o,s;const e=null!=(o=this.capabilities)&&null!=(s=o.operations)&&s.supportsSync?"Query,Sync":"Query";w("layerDefinition.capabilities",e,t),!r||null!=i&&i.writeLayerSchema||(t.capabilities=e)}}_checkAttachmentSupport(e){const{attributes:t}=e,{objectIdField:r}=this;return this.get("capabilities.data.supportsAttachment")?e?t?t[r]?void 0:Promise.reject(new u(Fe,`feature is missing the identifying attribute ${r}`)):Promise.reject(new u(Fe,"'attributes' are required on a feature to query attachments")):Promise.reject(new u(Fe,"A feature is required to add/delete/update attachments")):Promise.reject(new u(Fe,"this layer doesn't support attachments"))}_getLayerDomain(e){const t=this.fieldsIndex.get(e);return t?t.domain:null}_fetchFirstLayerId(e){return a(this.url,{query:{f:"json",...this.customParameters},responseType:"json",signal:e}).then((e=>{const t=e.data;if(t)return Array.isArray(t.layers)&&t.layers.length>0?t.layers[0].id:Array.isArray(t.tables)&&t.tables.length>0?t.tables[0].id:void 0}))}async _initLayerProperties(e){return this._set("source",e),e.sourceJSON&&(this.sourceJSON=e.sourceJSON,this.read(e.sourceJSON,{origin:"service",url:this.parsedUrl})),this._verifySource(),this._verifyFields(),le(this.renderer,this.fieldsIndex),pe(this.timeInfo,this.fieldsIndex),fe(this,{origin:"service"})}async hasDataChanged(){var e;if(null!=(e=this.source)&&e.refresh)try{var t;const{dataChanged:e,updates:r}=await(null==(t=this.source)?void 0:t.refresh());if(b(r)&&(this.sourceJSON={...this.sourceJSON,...r},this.read(r,{origin:"service",url:this.parsedUrl})),e)return!0}catch{}if(this.definitionExpression)try{return(await F(this.definitionExpression,this.fieldsIndex)).hasDateFunctions}catch{}return!1}_verifyFields(){const e=this.parsedUrl&&this.parsedUrl.path||"undefined";this.objectIdField||console.log("SubtypeGroupLayer: 'objectIdField' property is not defined (url: "+e+")"),this.isTable||this._hasMemorySource()||-1!==e.search(/\/FeatureServer\//i)||this.fields&&this.fields.some((function(e){return"geometry"===e.type}))||console.log("SubtypeGroupLayer: unable to find field of type 'geometry' in the layer 'fields' list. If you are using a map service layer, features will not have geometry (url: "+e+")")}_verifySource(){if(this._hasMemorySource()){if(this.url)throw new u("feature-layer:mixed-source-and-url","SubtypeGroupLayer cannot be created with both an in-memory source and a url")}else if(!this.url)throw new u("feature-layer:source-or-url-required","SubtypeGroupLayer requires either a url, a valid portal item or a source")}_initMemorySource(e){e.forEach((e=>{e.layer=this,e.sourceLayer=this})),this._handles.add([e.on("after-add",(e=>{e.item.layer=this,e.item.sourceLayer=this})),e.on("after-remove",(e=>{e.item.layer=null,e.item.sourceLayer=null}))],"fl-source")}_resetMemorySource(e){e.forEach((e=>{e.layer=null,e.sourceLayer=null})),this._handles.remove("fl-source")}_hasMemorySource(){return!(this.url||!this.source)}_readAttachmentCapabilities(e){const t={supportsName:!1,supportsSize:!1,supportsContentType:!1,supportsKeywords:!1,supportsExifInfo:!1};return e&&Array.isArray(e)&&e.forEach((e=>{const r=Ie[e.name];r&&(t[r]=!!e.isEnabled)})),t}_readDataCapabilities(e){return{isVersioned:Ee(e,"isDataVersioned",!1),supportsAttachment:Ee(e,"hasAttachments",!1),supportsM:Ee(e,"hasM",!1),supportsZ:Ee(e,"hasZ",!1)}}_readMetadataCapabilities(e){return{supportsAdvancedFieldProperties:Ee(e,"supportsFieldDescriptionProperty",!1)}}_readOperationsCapabilities(e,t){const r=e?e.toLowerCase().split(",").map((e=>e.trim())):[],i=-1!==r.indexOf("editing");let o=i&&-1!==r.indexOf("create"),s=i&&-1!==r.indexOf("delete"),a=i&&-1!==r.indexOf("update");const n=-1!==r.indexOf("changetracking");return i&&!(o||s||a)&&(o=s=a=!0),{supportsCalculate:Ee(t,"supportsCalculate",!1),supportsTruncate:Ee(t,"supportsTruncate",!1),supportsValidateSql:Ee(t,"supportsValidateSql",!1),supportsAdd:o,supportsDelete:s,supportsEditing:i,supportsChangeTracking:n,supportsQuery:-1!==r.indexOf("query"),supportsQueryAttachments:Ee(t.advancedQueryCapabilities,"supportsQueryAttachments",!1),supportsResizeAttachments:Ee(t,"supportsAttachmentsResizing",!1),supportsSync:-1!==r.indexOf("sync"),supportsUpdate:a,supportsExceedsLimitStatistics:Ee(t,"supportsExceedsLimitStatistics",!1)}}_readQueryCapabilities(e){var t;const r=e.advancedQueryCapabilities,i=e.ownershipBasedAccessControlForFeatures,o=e.archivingInfo,s=null==(t=this.url)?void 0:t.includes("MapServer"),a=!y("mapserver-pbf-enabled")&&s&&this.version<10.81,n=(e.supportedQueryFormats||"").split(",").reduce(((e,t)=>{const r=t.toLowerCase().trim();return r&&e.add(r),e}),new Set);return{supportsStatistics:Ee(r,"supportsStatistics",e.supportsStatistics),supportsPercentileStatistics:Ee(r,"supportsPercentileStatistics",!1),supportsSpatialAggregationStatistics:Ee(r,"supportsSpatialAggregationStatistics",!1),supportedSpatialAggregationStatistics:Ce(r),supportsCentroid:Ee(r,"supportsReturningGeometryCentroid",!1),supportsDistance:Ee(r,"supportsQueryWithDistance",!1),supportsDistinct:Ee(r,"supportsDistinct",e.supportsAdvancedQueries),supportsExtent:Ee(r,"supportsReturningQueryExtent",!1),supportsGeometryProperties:Ee(r,"supportsReturningGeometryProperties",!1),supportsHavingClause:Ee(r,"supportsHavingClause",!1),supportsOrderBy:Ee(r,"supportsOrderBy",e.supportsAdvancedQueries),supportsPagination:Ee(r,"supportsPagination",!1),supportsQuantization:Ee(e,"supportsCoordinatesQuantization",!1),supportsQuantizationEditMode:Ee(e,"supportsQuantizationEditMode",!1),supportsQueryGeometry:Ee(e,"supportsReturningQueryGeometry",!1),supportsResultType:Ee(r,"supportsQueryWithResultType",!1),supportsMaxRecordCountFactor:Ee(r,"supportsMaxRecordCountFactor",!1),supportsSqlExpression:Ee(r,"supportsSqlExpression",!1),supportsStandardizedQueriesOnly:Ee(e,"useStandardizedQueries",!1),supportsTopFeaturesQuery:Ee(r,"supportsTopFeaturesQuery",!1),supportsQueryByOthers:Ee(i,"allowOthersToQuery",!0),supportsHistoricMoment:Ee(o,"supportsQueryWithHistoricMoment",!1),supportsFormatPBF:!a&&n.has("pbf"),supportsDisjointSpatialRelationship:Ee(r,"supportsDisjointSpatialRel",!1),supportsCacheHint:Ee(r,"supportsQueryWithCacheHint",!1),maxRecordCountFactor:De(e,"maxRecordCountFactor",void 0),maxRecordCount:De(e,"maxRecordCount",void 0),standardMaxRecordCount:De(e,"standardMaxRecordCount",void 0),tileMaxRecordCount:De(e,"tileMaxRecordCount",void 0)}}_readQueryRelatedCapabilities(e){const t=e.advancedQueryCapabilities,r=Ee(t,"supportsAdvancedQueryRelated",!1);return{supportsPagination:Ee(t,"supportsQueryRelatedPagination",!1),supportsCount:r,supportsOrderBy:r}}_readEditingCapabilities(e){const t=e.ownershipBasedAccessControlForFeatures;return{supportsGeometryUpdate:Ee(e,"allowGeometryUpdates",!0),supportsGlobalId:Ee(e,"supportsApplyEditsWithGlobalIds",!1),supportsReturnServiceEditsInSourceSpatialReference:Ee(e,"supportsReturnServiceEditsInSourceSpatialReference",!1),supportsRollbackOnFailure:Ee(e,"supportsRollbackOnFailureParameter",!1),supportsUpdateWithoutM:Ee(e,"allowUpdateWithoutMValues",!1),supportsUploadWithItemId:Ee(e,"supportsAttachmentsByUploadId",!1),supportsDeleteByAnonymous:Ee(t,"allowAnonymousToDelete",!0),supportsDeleteByOthers:Ee(t,"allowOthersToDelete",!0),supportsUpdateByAnonymous:Ee(t,"allowAnonymousToUpdate",!0),supportsUpdateByOthers:Ee(t,"allowOthersToUpdate",!0)}}_handleSublayersChange(e,t){t&&(t.forEach((e=>{e.parent=null})),this.handles.remove("sublayers-owner")),e&&(e.forEach((e=>{e.parent=this})),this.handles.add([e.on("after-add",(({item:e})=>{e.parent=this})),e.on("after-remove",(({item:e})=>{e.parent=null}))],"sublayers-owner"))}};e([E({readOnly:!0,json:{read:!1}})],Te.prototype,"capabilities",void 0),e([C("service","capabilities",["advancedQueryCapabilities","allowGeometryUpdates","allowUpdateWithoutMValues","archivingInfo","capabilities","hasAttachments","hasM","hasZ","maxRecordCount","maxRecordCountFactor","ownershipBasedAccessControlForFeatures","standardMaxRecordCount","supportedQueryFormats","supportsAdvancedQueries","supportsApplyEditsWithGlobalIds","supportsAttachmentsByUploadId","supportsAttachmentsResizing","supportsCalculate","supportsCoordinatesQuantization","supportsExceedsLimitStatistics","supportsFieldDescriptionProperty","supportsQuantizationEditMode","supportsRollbackOnFailureParameter","supportsStatistics","supportsTruncate","supportsValidateSql","tileMaxRecordCount","useStandardizedQueries"])],Te.prototype,"readCapabilities",null),e([E({json:{origins:{"portal-item":{write:!0},"web-map":{write:!0}}}})],Te.prototype,"charts",void 0),e([E({readOnly:!0})],Te.prototype,"createQueryVersion",null),e([E({type:String,json:{read:{source:"layerDefinition.copyrightText"},origins:{service:{read:{source:"copyrightText"}}}}})],Te.prototype,"copyright",void 0),e([E({type:String,json:{read:{source:"layerDefinition.displayField"},origins:{service:{read:{source:"displayField"}}}}})],Te.prototype,"displayField",void 0),e([E({type:String,json:{origins:{service:{read:!1,write:!1}},name:"layerDefinition.definitionExpression",write:{enabled:!0,allowNull:!0}}})],Te.prototype,"definitionExpression",void 0),e([E({types:n,readOnly:!0})],Te.prototype,"defaultSymbol",void 0),e([E({type:me})],Te.prototype,"dynamicDataSource",void 0),e([E({readOnly:!0})],Te.prototype,"editFieldsInfo",void 0),e([E({type:Boolean})],Te.prototype,"editingEnabled",void 0),e([C(["portal-item","web-scene"],"editingEnabled",["layerDefinition.capabilities"])],Te.prototype,"readEditingEnabled",null),e([C("web-map","editingEnabled",["capabilities","layerDefinition.capabilities"])],Te.prototype,"readEditingEnabledFromWebMap",null),e([A(["portal-item","web-scene"],"editingEnabled",{"layerDefinition.capabilities":{type:String}})],Te.prototype,"writeEditingEnabled",null),e([A("web-map","editingEnabled",{capabilities:{type:String},"layerDefinition.capabilities":{type:String}})],Te.prototype,"writeEditingEnabledToWebMap",null),e([E({readOnly:!0})],Te.prototype,"editingInfo",void 0),e([C("editingInfo")],Te.prototype,"readEditingInfo",null),e([E(K)],Te.prototype,"elevationInfo",void 0),e([E(ae)],Te.prototype,"featureReduction",void 0),e([E({...Me.fields,json:{read:{source:"layerDefinition.fields"},origins:{service:{read:!0},"web-map":{write:{target:"layerDefinition.fields",overridePolicy:Ae}}}}})],Te.prototype,"fields",void 0),e([E(Me.fieldsIndex)],Te.prototype,"fieldsIndex",void 0),e([E({type:de,json:{read:{source:"layerDefinition.floorInfo"},write:{target:"layerDefinition.floorInfo"},origins:{"web-scene":{write:!1}}}})],Te.prototype,"floorInfo",void 0),e([E({type:O,json:{name:"formInfo",write:!0,origins:{"web-scene":{read:!1,write:!1}}}})],Te.prototype,"formTemplate",void 0),e([E({type:R,json:{origins:{service:{read:{source:"extent"}}},read:{source:"layerDefinition.extent"}}})],Te.prototype,"fullExtent",void 0),e([E()],Te.prototype,"gdbVersion",void 0),e([E({readOnly:!0,type:ue,json:{read:{source:"geometryProperties"}}})],Te.prototype,"geometryFieldsInfo",void 0),e([E({type:["point","polygon","polyline","multipoint","multipatch","mesh"],json:{origins:{service:{read:Se.read},"web-map":{write:{target:"layerDefinition.geometryType",overridePolicy:Ae,writer(e,t,r){const i=e?Se.toJSON(e):null;i&&w(r,i,t)}}}},read:{source:"layerDefinition.geometryType",reader:Se.read}}})],Te.prototype,"geometryType",void 0),e([E({type:Boolean,json:{origins:{service:{read:!0}},read:{source:"layerDefinition.hasM"}}})],Te.prototype,"hasM",void 0),e([E({type:Boolean,json:{origins:{service:{read:!0}},read:{source:"layerDefinition.hasZ"}}})],Te.prototype,"hasZ",void 0),e([E({readOnly:!0,type:L})],Te.prototype,"heightModelInfo",void 0),e([E({type:Date})],Te.prototype,"historicMoment",void 0),e([E(X)],Te.prototype,"id",void 0),e([E({readOnly:!0,json:{origins:{"web-map":{write:{target:"layerDefinition.type"}}}}})],Te.prototype,"isTable",void 0),e([C("service","isTable",["type","geometryType"]),C("isTable",["layerDefinition.type","layerDefinition.geometryType"])],Te.prototype,"readIsTable",null),e([A("web-map","isTable")],Te.prototype,"writeIsTable",null),e([E(Y)],Te.prototype,"opacity",void 0),e([E({type:Number,json:{origins:{service:{read:{source:"id"}}},read:!1}})],Te.prototype,"layerId",void 0),e([E(ee)],Te.prototype,"legendEnabled",void 0),e([E({type:["show","hide"]})],Te.prototype,"listMode",void 0),e([E(te)],Te.prototype,"minScale",void 0),e([C("service","minScale",["minScale","effectiveMinScale"])],Te.prototype,"readMinScale",null),e([E(re)],Te.prototype,"maxScale",void 0),e([C("service","maxScale",["maxScale","effectiveMaxScale"])],Te.prototype,"readMaxScale",null),e([E({type:String})],Te.prototype,"globalIdField",void 0),e([C("globalIdField",["layerDefinition.globalIdField","layerDefinition.fields"]),C("service","globalIdField",["globalIdField","fields"])],Te.prototype,"readGlobalIdFieldFromService",null),e([E({type:String,json:{origins:{"web-map":{write:{target:"layerDefinition.objectIdField",overridePolicy:Ae}}}}})],Te.prototype,"objectIdField",void 0),e([C("objectIdField",["layerDefinition.objectIdField","layerDefinition.fields"]),C("service","objectIdField",["objectIdField","fields"])],Te.prototype,"readObjectIdFieldFromService",null),e([E({value:"ArcGISSubtypeGroupLayer",type:["ArcGISSubtypeGroupLayer"]})],Te.prototype,"operationalLayerType",void 0),e([E(Me.outFields)],Te.prototype,"outFields",void 0),e([E({readOnly:!0})],Te.prototype,"parsedUrl",null),e([E({type:String,json:{origins:{"web-scene":{read:!0,write:!0}},read:!1}})],Te.prototype,"path",void 0),e([E({type:[ce],readOnly:!0})],Te.prototype,"relationships",void 0),e([E({types:o,json:{origins:{service:{write:{target:"drawingInfo.renderer",enabled:!1}},"web-scene":{types:s,name:"layerDefinition.drawingInfo.renderer",write:{overridePolicy:(e,t,r)=>({ignoreOrigin:null==r?void 0:r.writeLayerSchema})}}},write:{target:"layerDefinition.drawingInfo.renderer",overridePolicy:(e,t,r)=>({ignoreOrigin:null==r?void 0:r.writeLayerSchema})}}})],Te.prototype,"renderer",null),e([C("service","renderer",["drawingInfo.renderer","defaultSymbol"]),C("renderer",["layerDefinition.drawingInfo.renderer","layerDefinition.defaultSymbol"])],Te.prototype,"readRenderer",null),e([E()],Te.prototype,"sourceJSON",void 0),e([E({type:Boolean})],Te.prototype,"returnM",void 0),e([E({type:Boolean})],Te.prototype,"returnZ",void 0),e([E(ie)],Te.prototype,"screenSizePerspectiveEnabled",void 0),e([E()],Te.prototype,"source",null),e([D("source")],Te.prototype,"castSource",null),e([C("portal-item","source",["featureSet"]),C("web-map","source",["featureSet"])],Te.prototype,"readSource",null),e([E({readOnly:!0})],Te.prototype,"serviceDefinitionExpression",void 0),e([C("service","serviceDefinitionExpression",["definitionQuery","definitionExpression"])],Te.prototype,"readServiceDefinitionExpression",null),e([E({type:_,json:{origins:{service:{read:{source:"extent.spatialReference"}}},read:{source:"layerDefinition.extent.spatialReference"}}})],Te.prototype,"spatialReference",void 0),e([E({type:String})],Te.prototype,"subtypeField",void 0),e([E({type:p.ofType(ye),json:{origins:{service:{read:{source:"subtypes",reader:(e,t,r)=>{const o=e.map((e=>new ye({subtypeCode:e.code,renderer:i(t.drawingInfo.renderer,t,r),title:e.name})));return new(p.ofType(ye))(o)}}}}}})],Te.prototype,"sublayers",void 0),e([E({type:he})],Te.prototype,"timeInfo",void 0),e([E()],Te.prototype,"title",void 0),e([C("service","title",["name"]),C("portal-item","title",["layerDefinition.title","layerDefinition.name","title"])],Te.prototype,"readTitle",null),e([C("web-map","title",["layerDefinition.name","title"])],Te.prototype,"readTitleFromWebMap",null),e([E({type:String})],Te.prototype,"sublayerTitleMode",void 0),e([E({type:String,json:{read:{source:"timeInfo.trackIdField"}}})],Te.prototype,"trackIdField",void 0),e([E({json:{read:!1}})],Te.prototype,"type",void 0),e([E({type:String})],Te.prototype,"typeIdField",void 0),e([C("service","typeIdField"),C("typeIdField",["layerDefinition.typeIdField"])],Te.prototype,"readTypeIdField",null),e([E({readOnly:!0,json:{write:!1}})],Te.prototype,"serverGens",void 0),e([E({type:p.ofType(se),readOnly:!0})],Te.prototype,"indexes",void 0),e([E(oe)],Te.prototype,"url",null),e([A("url")],Te.prototype,"writeUrl",null),e([E({readOnly:!0})],Te.prototype,"userIsAdmin",void 0),e([E({json:{origins:{service:{read:!0}},read:!1}})],Te.prototype,"version",void 0),e([C("service","version",["currentVersion","capabilities","drawingInfo","hasAttachments","htmlPopupType","relationships","timeInfo","typeIdField","types"])],Te.prototype,"readVersion",null),e([E({type:Boolean,json:{origins:{"portal-item":{write:{target:"layerDefinition.defaultVisibility"}}}}})],Te.prototype,"visible",void 0),e([C("portal-item","visible",["visibility","layerDefinition.defaultVisibility"])],Te.prototype,"readVisible",null),Te=e([M("esri.layers.SubtypeGroupLayer")],Te);const Oe=T({types:l}),Re=Te;export{Re as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../chunks/tslib.es6.js";import t from"../request.js";import r from"../core/Error.js";import{clone as o}from"../core/lang.js";import{MultiOriginJSONMixin as i}from"../core/MultiOriginJSONSupport.js";import{throwIfAbortError as s,createTask as l}from"../core/promiseUtils.js";import{urlToObject as a,addQueryParameters as n,isProtocolRelative as p,normalize as y}from"../core/urlUtils.js";import{property as u}from"../core/accessorSupport/decorators/property.js";import"../core/accessorSupport/ensureType.js";import{reader as c}from"../core/accessorSupport/decorators/reader.js";import{subclass as m}from"../core/accessorSupport/decorators/subclass.js";import{writer as h}from"../core/accessorSupport/decorators/writer.js";import d from"../geometry/Extent.js";import f from"../geometry/SpatialReference.js";import S from"./Layer.js";import{APIKeyMixin as g}from"./mixins/APIKeyMixin.js";import{ArcGISCachedService as v}from"./mixins/ArcGISCachedService.js";import{ArcGISService as _}from"./mixins/ArcGISService.js";import{BlendLayer as j}from"./mixins/BlendLayer.js";import{CustomParametersMixin as b}from"./mixins/CustomParametersMixin.js";import{OperationalLayer as I}from"./mixins/OperationalLayer.js";import{PortalLayer as T}from"./mixins/PortalLayer.js";import{ScaleRangeLayer as w}from"./mixins/ScaleRangeLayer.js";import{checkWebPSupport as L}from"./support/imageUtils.js";import x from"./support/SpriteSource.js";import U from"./support/TileInfo.js";import{loadMetadata as O}from"./support/vectorTileLayerLoader.js";import{createForItem as P}from"../portal/support/jsonContext.js";import R from"../views/2d/engine/vectorTiles/SchemaHelper.js";import{areSchemasOverlapping as M,unionTileInfos as V}from"../views/2d/engine/vectorTiles/tileInfoUtils.js";import C from"../views/2d/engine/vectorTiles/style/StyleRepository.js";import{getWebGL1Capabilities as D}from"../views/webgl/capabilities.js";let k=class extends(j(w(v(_(I(T(b(g(i(S)))))))))){constructor(...e){super(...e),this._spriteSourceMap=new Map,this.currentStyleInfo=null,this.style=null,this.isReference=null,this.operationalLayerType="VectorTileLayer",this.type="vector-tile",this.url=null,this.symbolCollisionBoxesVisible=!1,this.path=null}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}destroy(){this._spriteSourceMap.clear()}async prefetchResources(e){await this.loadSpriteSource(globalThis.devicePixelRatio||1,e)}load(e){const r=this.loadFromPortal({supportedTypes:["Vector Tile Service"],supportsData:!1},e).catch(s).then((async()=>{if(!this.portalItem||!this.portalItem.id)return;const r=`${this.portalItem.itemUrl}/resources/styles/root.json`;(await t(r,{...e,query:{f:"json",...this.customParameters,token:this.apiKey}})).data&&this.read({url:r},P(this.portalItem))})).catch(s).then((()=>this._loadStyle(e)));return this.addResolvingPromise(r),Promise.resolve(this)}get attributionDataUrl(){const e=this.currentStyleInfo,t=e&&e.serviceUrl&&a(e.serviceUrl);if(!t)return null;const r=this._getDefaultAttribution(t.path);return r?n(r,{...this.customParameters,token:this.apiKey}):null}get capabilities(){const e=this.primarySource;return e?e.capabilities:{operations:{supportsExportTiles:!1,supportsTileMap:!1},exportTiles:null}}get fullExtent(){var e;return(null==(e=this.primarySource)?void 0:e.fullExtent)||null}get parsedUrl(){return this.serviceUrl?a(this.serviceUrl):null}get serviceUrl(){return this.currentStyleInfo&&this.currentStyleInfo.serviceUrl||null}get spatialReference(){return this.tileInfo&&this.tileInfo.spatialReference||null}get styleUrl(){return this.currentStyleInfo&&this.currentStyleInfo.styleUrl||null}writeStyleUrl(e,t){e&&p(e)&&(e=`https:${e}`),t.styleUrl=e}get tileInfo(){var e;const t=[];for(const o in this.sourceNameToSource)t.push(this.sourceNameToSource[o]);let r=(null==(e=this.primarySource)?void 0:e.tileInfo)||new U;if(t.length>1)for(let o=0;o<t.length;o++)M(r,t[o].tileInfo)&&(r=V(r,t[o].tileInfo));return r}readVersion(e,t){return t.version?parseFloat(t.version):parseFloat(t.currentVersion)}get compatibleTileInfo256(){return R.create256x256CompatibleTileInfo(this.tileInfo)}get compatibleTileInfo512(){return R.create512x512CompatibleTileInfo(this.tileInfo)}async loadSpriteSource(e=1,t){if(!this._spriteSourceMap.has(e)){var r;const o=D().maxTextureSize,i=null!=(r=this.currentStyleInfo)&&r.spriteUrl?n(this.currentStyleInfo.spriteUrl,{...this.customParameters,token:this.apiKey}):null,s=new x(i,e,o,this.currentStyleInfo.spriteFormat);await s.load(t),this._spriteSourceMap.set(e,s)}return Promise.resolve(this._spriteSourceMap.get(e))}async loadStyle(e,t){var r;const o=e||this.style||this.url;return this._loadingTask&&"string"==typeof o&&this.url===o||(null==(r=this._loadingTask)||r.abort(),this._loadingTask=l((e=>(this._spriteSourceMap.clear(),this._getSourceAndStyle(o,{signal:e}))),t)),this._loadingTask.promise}getStyleLayerId(e){return this.styleRepository.getStyleLayerId(e)}getStyleLayerIndex(e){return this.styleRepository.getStyleLayerIndex(e)}getPaintProperties(e){return o(this.styleRepository.getPaintProperties(e))}setPaintProperties(e,t){const r=this.styleRepository.isPainterDataDriven(e);this.styleRepository.setPaintProperties(e,t);const o=this.styleRepository.isPainterDataDriven(e);this.emit("paint-change",{layer:e,paint:t,isDataDriven:r||o})}getStyleLayer(e){return o(this.styleRepository.getStyleLayer(e))}setStyleLayer(e,t){this.styleRepository.setStyleLayer(e,t),this.emit("style-layer-change",{layer:e,index:t})}deleteStyleLayer(e){this.styleRepository.deleteStyleLayer(e),this.emit("delete-style-layer",{layer:e})}getLayoutProperties(e){return o(this.styleRepository.getLayoutProperties(e))}setLayoutProperties(e,t){this.styleRepository.setLayoutProperties(e,t),this.emit("layout-change",{layer:e,layout:t})}setStyleLayerVisibility(e,t){this.styleRepository.setStyleLayerVisibility(e,t),this.emit("style-layer-visibility-change",{layer:e,visibility:t})}getStyleLayerVisibility(e){return this.styleRepository.getStyleLayerVisibility(e)}write(e,t){return null!=t&&t.origin&&!this.styleUrl?(t.messages&&t.messages.push(new r("vectortilelayer:unsupported",`VectorTileLayer (${this.title}, ${this.id}) with style defined by JSON only are not supported`,{layer:this})),null):super.write(e,t)}getTileUrl(e,t,r){return null}async _getSourceAndStyle(e,t){if(!e)throw new Error("invalid style!");const r=await O(e,{...t,query:{...this.customParameters,token:this.apiKey}});if("webp"===r.spriteFormat){await L("lossy")||(r.spriteFormat="png")}this._set("currentStyleInfo",{...r}),"string"==typeof e?(this.url=e,this.style=null):(this.url=null,this.style=e),this._set("sourceNameToSource",r.sourceNameToSource),this._set("primarySource",r.sourceNameToSource[r.primarySourceName]),this._set("styleRepository",new C(r.style)),this.read(r.layerDefinition,{origin:"service"}),this.emit("load-style")}_getDefaultAttribution(e){const t=e.match(/^https?:\/\/(?:basemaps|basemapsbeta|basemapsdev)(?:-api)?\.arcgis\.com(\/[^\/]+)?\/arcgis\/rest\/services\/([^\/]+(\/[^\/]+)*)\/vectortileserver/i),r=["OpenStreetMap_v2","OpenStreetMap_Daylight_v2","OpenStreetMap_Export_v2","OpenStreetMap_FTS_v2","OpenStreetMap_GCS_v2","World_Basemap","World_Basemap_v2","World_Basemap_Export_v2","World_Basemap_GCS_v2","World_Basemap_WGS84","World_Contours_v2"];if(!t)return;const o=t[2]&&t[2].toLowerCase();if(!o)return;const i=t[1]||"";for(const s of r)if(s.toLowerCase().includes(o))return y(`//static.arcgis.com/attribution/Vector${i}/${s}`)}async _loadStyle(e){var t,r;return null!=(t=null==(r=this._loadingTask)?void 0:r.promise)?t:this.loadStyle(null,e)}};e([u({readOnly:!0})],k.prototype,"attributionDataUrl",null),e([u({type:["show","hide"]})],k.prototype,"listMode",void 0),e([u({readOnly:!0,json:{read:!1}})],k.prototype,"capabilities",null),e([u({readOnly:!0})],k.prototype,"currentStyleInfo",void 0),e([u({json:{read:!1},readOnly:!0,type:d})],k.prototype,"fullExtent",null),e([u()],k.prototype,"style",void 0),e([u({type:Boolean,json:{read:!1,write:{enabled:!0,overridePolicy:()=>({enabled:!1})}}})],k.prototype,"isReference",void 0),e([u({type:["VectorTileLayer"]})],k.prototype,"operationalLayerType",void 0),e([u({readOnly:!0})],k.prototype,"parsedUrl",null),e([u({readOnly:!0})],k.prototype,"serviceUrl",null),e([u({type:f,readOnly:!0})],k.prototype,"spatialReference",null),e([u({readOnly:!0})],k.prototype,"styleRepository",void 0),e([u({readOnly:!0})],k.prototype,"sourceNameToSource",void 0),e([u({readOnly:!0})],k.prototype,"primarySource",void 0),e([u({type:String,readOnly:!0,json:{write:{ignoreOrigin:!0},origins:{"web-document":{write:{ignoreOrigin:!0,isRequired:!0}}}}})],k.prototype,"styleUrl",null),e([h(["portal-item","web-document"],"styleUrl")],k.prototype,"writeStyleUrl",null),e([u({json:{read:!1,origins:{service:{read:!1}}},readOnly:!0,type:U})],k.prototype,"tileInfo",null),e([u({json:{read:!1},readOnly:!0,value:"vector-tile"})],k.prototype,"type",void 0),e([u({json:{origins:{"web-document":{read:{source:"styleUrl"}},"portal-item":{read:{source:"url"}}},write:!1,read:!1}})],k.prototype,"url",void 0),e([u({readOnly:!0})],k.prototype,"version",void 0),e([c("version",["version","currentVersion"])],k.prototype,"readVersion",null),e([u({readOnly:!0})],k.prototype,"compatibleTileInfo256",null),e([u({readOnly:!0})],k.prototype,"compatibleTileInfo512",null),e([u({type:Boolean})],k.prototype,"symbolCollisionBoxesVisible",void 0),e([u({type:String,json:{origins:{"web-scene":{read:!0,write:!0}},read:!1}})],k.prototype,"path",void 0),k=e([m("esri.layers.VectorTileLayer")],k);const B=k;export{B as default};
5
+ import{_ as e}from"../chunks/tslib.es6.js";import t from"../request.js";import r from"../core/Error.js";import{clone as o}from"../core/lang.js";import{MultiOriginJSONMixin as i}from"../core/MultiOriginJSONSupport.js";import{throwIfAbortError as s,createTask as l}from"../core/promiseUtils.js";import{urlToObject as a,addQueryParameters as n,isProtocolRelative as p,normalize as y}from"../core/urlUtils.js";import{property as u}from"../core/accessorSupport/decorators/property.js";import"../core/accessorSupport/ensureType.js";import{reader as c}from"../core/accessorSupport/decorators/reader.js";import{subclass as m}from"../core/accessorSupport/decorators/subclass.js";import{writer as h}from"../core/accessorSupport/decorators/writer.js";import d from"../geometry/Extent.js";import f from"../geometry/SpatialReference.js";import S from"./Layer.js";import{APIKeyMixin as g}from"./mixins/APIKeyMixin.js";import{ArcGISCachedService as v}from"./mixins/ArcGISCachedService.js";import{ArcGISService as j}from"./mixins/ArcGISService.js";import{BlendLayer as _}from"./mixins/BlendLayer.js";import{CustomParametersMixin as b}from"./mixins/CustomParametersMixin.js";import{OperationalLayer as T}from"./mixins/OperationalLayer.js";import{PortalLayer as I}from"./mixins/PortalLayer.js";import{ScaleRangeLayer as w}from"./mixins/ScaleRangeLayer.js";import{checkWebPSupport as L}from"./support/imageUtils.js";import x from"./support/SpriteSource.js";import O from"./support/TileInfo.js";import{loadMetadata as U}from"./support/vectorTileLayerLoader.js";import{createForItem as P}from"../portal/support/jsonContext.js";import R from"../views/2d/engine/vectorTiles/SchemaHelper.js";import{areSchemasOverlapping as M,unionTileInfos as V}from"../views/2d/engine/vectorTiles/tileInfoUtils.js";import C from"../views/2d/engine/vectorTiles/style/StyleRepository.js";import{getWebGL1Capabilities as D}from"../views/webgl/capabilities.js";let N=class extends(_(w(v(j(T(I(b(g(i(S)))))))))){constructor(...e){super(...e),this._spriteSourceMap=new Map,this.currentStyleInfo=null,this.style=null,this.isReference=null,this.operationalLayerType="VectorTileLayer",this.type="vector-tile",this.url=null,this.symbolCollisionBoxesVisible=!1,this.path=null}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}destroy(){if(this.sourceNameToSource)for(const e of Object.values(this.sourceNameToSource))null==e||e.destroy();this._spriteSourceMap.clear()}async prefetchResources(e){await this.loadSpriteSource(globalThis.devicePixelRatio||1,e)}load(e){const r=this.loadFromPortal({supportedTypes:["Vector Tile Service"],supportsData:!1},e).catch(s).then((async()=>{if(!this.portalItem||!this.portalItem.id)return;const r=`${this.portalItem.itemUrl}/resources/styles/root.json`;(await t(r,{...e,query:{f:"json",...this.customParameters,token:this.apiKey}})).data&&this.read({url:r},P(this.portalItem))})).catch(s).then((()=>this._loadStyle(e)));return this.addResolvingPromise(r),Promise.resolve(this)}get attributionDataUrl(){const e=this.currentStyleInfo,t=e&&e.serviceUrl&&a(e.serviceUrl);if(!t)return null;const r=this._getDefaultAttribution(t.path);return r?n(r,{...this.customParameters,token:this.apiKey}):null}get capabilities(){const e=this.primarySource;return e?e.capabilities:{operations:{supportsExportTiles:!1,supportsTileMap:!1},exportTiles:null}}get fullExtent(){var e;return(null==(e=this.primarySource)?void 0:e.fullExtent)||null}get parsedUrl(){return this.serviceUrl?a(this.serviceUrl):null}get serviceUrl(){return this.currentStyleInfo&&this.currentStyleInfo.serviceUrl||null}get spatialReference(){return this.tileInfo&&this.tileInfo.spatialReference||null}get styleUrl(){return this.currentStyleInfo&&this.currentStyleInfo.styleUrl||null}writeStyleUrl(e,t){e&&p(e)&&(e=`https:${e}`),t.styleUrl=e}get tileInfo(){var e;const t=[];for(const o in this.sourceNameToSource)t.push(this.sourceNameToSource[o]);let r=(null==(e=this.primarySource)?void 0:e.tileInfo)||new O;if(t.length>1)for(let o=0;o<t.length;o++)M(r,t[o].tileInfo)&&(r=V(r,t[o].tileInfo));return r}readVersion(e,t){return t.version?parseFloat(t.version):parseFloat(t.currentVersion)}get compatibleTileInfo256(){return R.create256x256CompatibleTileInfo(this.tileInfo)}get compatibleTileInfo512(){return R.create512x512CompatibleTileInfo(this.tileInfo)}async loadSpriteSource(e=1,t){if(!this._spriteSourceMap.has(e)){var r;const o=D().maxTextureSize,i=null!=(r=this.currentStyleInfo)&&r.spriteUrl?n(this.currentStyleInfo.spriteUrl,{...this.customParameters,token:this.apiKey}):null,s=new x(i,e,o,this.currentStyleInfo.spriteFormat);await s.load(t),this._spriteSourceMap.set(e,s)}return Promise.resolve(this._spriteSourceMap.get(e))}async loadStyle(e,t){var r;const o=e||this.style||this.url;return this._loadingTask&&"string"==typeof o&&this.url===o||(null==(r=this._loadingTask)||r.abort(),this._loadingTask=l((e=>(this._spriteSourceMap.clear(),this._getSourceAndStyle(o,{signal:e}))),t)),this._loadingTask.promise}getStyleLayerId(e){return this.styleRepository.getStyleLayerId(e)}getStyleLayerIndex(e){return this.styleRepository.getStyleLayerIndex(e)}getPaintProperties(e){return o(this.styleRepository.getPaintProperties(e))}setPaintProperties(e,t){const r=this.styleRepository.isPainterDataDriven(e);this.styleRepository.setPaintProperties(e,t);const o=this.styleRepository.isPainterDataDriven(e);this.emit("paint-change",{layer:e,paint:t,isDataDriven:r||o})}getStyleLayer(e){return o(this.styleRepository.getStyleLayer(e))}setStyleLayer(e,t){this.styleRepository.setStyleLayer(e,t),this.emit("style-layer-change",{layer:e,index:t})}deleteStyleLayer(e){this.styleRepository.deleteStyleLayer(e),this.emit("delete-style-layer",{layer:e})}getLayoutProperties(e){return o(this.styleRepository.getLayoutProperties(e))}setLayoutProperties(e,t){this.styleRepository.setLayoutProperties(e,t),this.emit("layout-change",{layer:e,layout:t})}setStyleLayerVisibility(e,t){this.styleRepository.setStyleLayerVisibility(e,t),this.emit("style-layer-visibility-change",{layer:e,visibility:t})}getStyleLayerVisibility(e){return this.styleRepository.getStyleLayerVisibility(e)}write(e,t){return null!=t&&t.origin&&!this.styleUrl?(t.messages&&t.messages.push(new r("vectortilelayer:unsupported",`VectorTileLayer (${this.title}, ${this.id}) with style defined by JSON only are not supported`,{layer:this})),null):super.write(e,t)}getTileUrl(e,t,r){return null}async _getSourceAndStyle(e,t){if(!e)throw new Error("invalid style!");const r=await U(e,{...t,query:{...this.customParameters,token:this.apiKey}});if("webp"===r.spriteFormat){await L("lossy")||(r.spriteFormat="png")}this._set("currentStyleInfo",{...r}),"string"==typeof e?(this.url=e,this.style=null):(this.url=null,this.style=e),this._set("sourceNameToSource",r.sourceNameToSource),this._set("primarySource",r.sourceNameToSource[r.primarySourceName]),this._set("styleRepository",new C(r.style)),this.read(r.layerDefinition,{origin:"service"}),this.emit("load-style")}_getDefaultAttribution(e){const t=e.match(/^https?:\/\/(?:basemaps|basemapsbeta|basemapsdev)(?:-api)?\.arcgis\.com(\/[^\/]+)?\/arcgis\/rest\/services\/([^\/]+(\/[^\/]+)*)\/vectortileserver/i),r=["OpenStreetMap_v2","OpenStreetMap_Daylight_v2","OpenStreetMap_Export_v2","OpenStreetMap_FTS_v2","OpenStreetMap_GCS_v2","World_Basemap","World_Basemap_v2","World_Basemap_Export_v2","World_Basemap_GCS_v2","World_Basemap_WGS84","World_Contours_v2"];if(!t)return;const o=t[2]&&t[2].toLowerCase();if(!o)return;const i=t[1]||"";for(const s of r)if(s.toLowerCase().includes(o))return y(`//static.arcgis.com/attribution/Vector${i}/${s}`)}async _loadStyle(e){var t,r;return null!=(t=null==(r=this._loadingTask)?void 0:r.promise)?t:this.loadStyle(null,e)}};e([u({readOnly:!0})],N.prototype,"attributionDataUrl",null),e([u({type:["show","hide"]})],N.prototype,"listMode",void 0),e([u({readOnly:!0,json:{read:!1}})],N.prototype,"capabilities",null),e([u({readOnly:!0})],N.prototype,"currentStyleInfo",void 0),e([u({json:{read:!1},readOnly:!0,type:d})],N.prototype,"fullExtent",null),e([u()],N.prototype,"style",void 0),e([u({type:Boolean,json:{read:!1,write:{enabled:!0,overridePolicy:()=>({enabled:!1})}}})],N.prototype,"isReference",void 0),e([u({type:["VectorTileLayer"]})],N.prototype,"operationalLayerType",void 0),e([u({readOnly:!0})],N.prototype,"parsedUrl",null),e([u({readOnly:!0})],N.prototype,"serviceUrl",null),e([u({type:f,readOnly:!0})],N.prototype,"spatialReference",null),e([u({readOnly:!0})],N.prototype,"styleRepository",void 0),e([u({readOnly:!0})],N.prototype,"sourceNameToSource",void 0),e([u({readOnly:!0})],N.prototype,"primarySource",void 0),e([u({type:String,readOnly:!0,json:{write:{ignoreOrigin:!0},origins:{"web-document":{write:{ignoreOrigin:!0,isRequired:!0}}}}})],N.prototype,"styleUrl",null),e([h(["portal-item","web-document"],"styleUrl")],N.prototype,"writeStyleUrl",null),e([u({json:{read:!1,origins:{service:{read:!1}}},readOnly:!0,type:O})],N.prototype,"tileInfo",null),e([u({json:{read:!1},readOnly:!0,value:"vector-tile"})],N.prototype,"type",void 0),e([u({json:{origins:{"web-document":{read:{source:"styleUrl"}},"portal-item":{read:{source:"url"}}},write:!1,read:!1}})],N.prototype,"url",void 0),e([u({readOnly:!0})],N.prototype,"version",void 0),e([c("version",["version","currentVersion"])],N.prototype,"readVersion",null),e([u({readOnly:!0})],N.prototype,"compatibleTileInfo256",null),e([u({readOnly:!0})],N.prototype,"compatibleTileInfo512",null),e([u({type:Boolean})],N.prototype,"symbolCollisionBoxesVisible",void 0),e([u({type:String,json:{origins:{"web-scene":{read:!0,write:!0}},read:!1}})],N.prototype,"path",void 0),N=e([m("esri.layers.VectorTileLayer")],N);const k=N;export{k as default};