@arcgis/core 5.1.0-next.105 → 5.1.0-next.107

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 (478) hide show
  1. package/analysis/AreaMeasurementAnalysis.d.ts +5 -5
  2. package/analysis/DimensionAnalysis.d.ts +3 -3
  3. package/analysis/DimensionSimpleStyle.d.ts +2 -2
  4. package/analysis/DirectLineMeasurementAnalysis.d.ts +4 -4
  5. package/analysis/DistanceMeasurementAnalysis.d.ts +4 -4
  6. package/analysis/ElevationProfileAnalysis.d.ts +3 -3
  7. package/analysis/LengthDimension.d.ts +2 -2
  8. package/analysis/LineOfSightAnalysis.d.ts +4 -4
  9. package/analysis/ShadowCast/DiscreteOptions.d.ts +7 -3
  10. package/analysis/ShadowCast/MinDurationOptions.d.ts +5 -1
  11. package/analysis/ShadowCast/TotalDurationOptions.d.ts +7 -3
  12. package/analysis/ShadowCast/types.d.ts +1 -1
  13. package/analysis/ShadowCastAnalysis.d.ts +11 -6
  14. package/analysis/SliceAnalysis.d.ts +4 -4
  15. package/analysis/SlicePlane.d.ts +3 -3
  16. package/analysis/Viewshed.d.ts +2 -2
  17. package/analysis/ViewshedAnalysis.d.ts +3 -3
  18. package/analysis/VolumeMeasurement/VolumeMeasurementCutFillOptions.d.ts +1 -1
  19. package/analysis/VolumeMeasurementAnalysis.d.ts +3 -3
  20. package/applications/Components/imageryUtils.d.ts +24 -0
  21. package/applications/Components/layerUtils.d.ts +21 -0
  22. package/applications/Components/layerUtils.js +2 -0
  23. package/applications/Components/templateUtils.d.ts +11 -1
  24. package/applications/Components/templateUtils.js +1 -1
  25. package/arcgisGlobal.d.ts +6 -0
  26. package/assets/components/assets/icon/buttons16.json +1 -0
  27. package/assets/components/assets/icon/buttons24.json +1 -0
  28. package/assets/components/assets/icon/buttons32.json +1 -0
  29. package/assets/components/assets/icon/entityTypes16.json +1 -0
  30. package/assets/components/assets/icon/entityTypes24.json +1 -0
  31. package/assets/components/assets/icon/entityTypes32.json +1 -0
  32. package/assets/esri/core/t9n/Units_ar.json +1 -1
  33. package/assets/esri/core/t9n/Units_bg.json +1 -1
  34. package/assets/esri/core/t9n/Units_bs.json +1 -1
  35. package/assets/esri/core/t9n/Units_ca.json +1 -1
  36. package/assets/esri/core/t9n/Units_cs.json +1 -1
  37. package/assets/esri/core/t9n/Units_da.json +1 -1
  38. package/assets/esri/core/t9n/Units_de.json +1 -1
  39. package/assets/esri/core/t9n/Units_el.json +1 -1
  40. package/assets/esri/core/t9n/Units_es.json +1 -1
  41. package/assets/esri/core/t9n/Units_et.json +1 -1
  42. package/assets/esri/core/t9n/Units_fi.json +1 -1
  43. package/assets/esri/core/t9n/Units_fr.json +1 -1
  44. package/assets/esri/core/t9n/Units_he.json +1 -1
  45. package/assets/esri/core/t9n/Units_hr.json +1 -1
  46. package/assets/esri/core/t9n/Units_hu.json +1 -1
  47. package/assets/esri/core/t9n/Units_id.json +1 -1
  48. package/assets/esri/core/t9n/Units_it.json +1 -1
  49. package/assets/esri/core/t9n/Units_ja.json +1 -1
  50. package/assets/esri/core/t9n/Units_ko.json +1 -1
  51. package/assets/esri/core/t9n/Units_lt.json +1 -1
  52. package/assets/esri/core/t9n/Units_lv.json +1 -1
  53. package/assets/esri/core/t9n/Units_nl.json +1 -1
  54. package/assets/esri/core/t9n/Units_no.json +1 -1
  55. package/assets/esri/core/t9n/Units_pl.json +1 -1
  56. package/assets/esri/core/t9n/Units_pt-BR.json +1 -1
  57. package/assets/esri/core/t9n/Units_pt-PT.json +1 -1
  58. package/assets/esri/core/t9n/Units_ro.json +1 -1
  59. package/assets/esri/core/t9n/Units_ru.json +1 -1
  60. package/assets/esri/core/t9n/Units_sk.json +1 -1
  61. package/assets/esri/core/t9n/Units_sl.json +1 -1
  62. package/assets/esri/core/t9n/Units_sr.json +1 -1
  63. package/assets/esri/core/t9n/Units_sv.json +1 -1
  64. package/assets/esri/core/t9n/Units_th.json +1 -1
  65. package/assets/esri/core/t9n/Units_tr.json +1 -1
  66. package/assets/esri/core/t9n/Units_uk.json +1 -1
  67. package/assets/esri/core/t9n/Units_vi.json +1 -1
  68. package/assets/esri/core/t9n/Units_zh-CN.json +1 -1
  69. package/assets/esri/core/t9n/Units_zh-HK.json +1 -1
  70. package/assets/esri/core/t9n/Units_zh-TW.json +1 -1
  71. package/assets/esri/core/workers/RemoteClient.js +1 -1
  72. package/assets/esri/core/workers/chunks/{6854b28853f5dd195110.js → 01c70c27aa3a955e2928.js} +1 -1
  73. package/assets/esri/core/workers/chunks/{b7a81fd4994eabba1869.js → 0c8e6ccb5a8174718d62.js} +1 -1
  74. package/assets/esri/core/workers/chunks/{a943bd2e6fb7443c2b66.js → 17604cbd4d24158e2c16.js} +1 -1
  75. package/assets/esri/core/workers/chunks/179c9fe4ac83b42e5976.js +1 -0
  76. package/assets/esri/core/workers/chunks/1d1929f98d941179be29.js +2 -0
  77. package/assets/esri/core/workers/chunks/{24247ee93f43fff5e596.js.LICENSE.txt → 1d1929f98d941179be29.js.LICENSE.txt} +1 -3
  78. package/assets/esri/core/workers/chunks/1ebb613bbe09fcf274d8.js +1 -0
  79. package/assets/esri/core/workers/chunks/24b43fb12fc3009fdc30.js +1 -0
  80. package/assets/esri/core/workers/chunks/2b9661700743d1f9717e.js +1 -0
  81. package/assets/esri/core/workers/chunks/2f0a3b22fc46d832e240.js +1 -0
  82. package/assets/esri/core/workers/chunks/{2dced41ff2aa1bd86665.js → 33ec193e6d7a0cb9d8dd.js} +1 -1
  83. package/assets/esri/core/workers/chunks/340f2c996f62f7f5ceae.js +1 -0
  84. package/assets/esri/core/workers/chunks/37c63570c0b4981cd519.js +1 -0
  85. package/assets/esri/core/workers/chunks/{a0e72b107991ba38a9f0.js → 502c3da8c49bf885f51d.js} +1 -1
  86. package/assets/esri/core/workers/chunks/518046d2b95a7590a092.js +1 -0
  87. package/assets/esri/core/workers/chunks/547dc6ccb989bd962661.js +1 -0
  88. package/assets/esri/core/workers/chunks/549d348ca181d06aefb7.js +2 -0
  89. package/assets/esri/core/workers/chunks/{9b89cc85c1b5d561df7c.js → 55334ad3618899cdbf78.js} +2 -2
  90. package/assets/esri/core/workers/chunks/{7485d59d60d61737d662.js → 55b765c72d13b3b911f9.js} +1 -1
  91. package/assets/esri/core/workers/chunks/{1e8d5bfc5f8c2664190c.js → 56d9d3f108ff6e719dd4.js} +1 -1
  92. package/assets/esri/core/workers/chunks/5cdf87e7a59ace38df87.js +1 -0
  93. package/assets/esri/core/workers/chunks/622bdd1b9d5d292ec12b.js +1 -0
  94. package/assets/esri/core/workers/chunks/69c9eb93553b006b640d.js +2 -0
  95. package/assets/esri/core/workers/chunks/6d20d741b8ae1a45b422.js +1 -0
  96. package/assets/esri/core/workers/chunks/702a3ef9e1b3442cbee7.js +1 -0
  97. package/assets/esri/core/workers/chunks/75a7de23c05435ec7649.js +1 -0
  98. package/assets/esri/core/workers/chunks/762e23466308f22d7076.js +1 -0
  99. package/assets/esri/core/workers/chunks/{52219561c144e5cb4442.js → 770611659b38066a6228.js} +1 -1
  100. package/assets/esri/core/workers/chunks/{e90afd914f2ccd4f5374.js → 7ce60331f94ee0a5d674.js} +6 -6
  101. package/assets/esri/core/workers/chunks/825db2ea15308ee6e5dc.js +1 -0
  102. package/assets/esri/core/workers/chunks/8330302096d4312a4393.js +1 -0
  103. package/assets/esri/core/workers/chunks/{7617bd0f3a70dfe61637.js → 8557dd9ef336b23f768f.js} +1 -1
  104. package/assets/esri/core/workers/chunks/885eac78a76184efa1e5.js +1 -0
  105. package/assets/esri/core/workers/chunks/{79dc7045d9a2d43ba8df.js → 890b7a1153b7f65eba9a.js} +1 -1
  106. package/assets/esri/core/workers/chunks/9234a293d61e134f121f.js +1 -0
  107. package/assets/esri/core/workers/chunks/{44636ef119c6a576470b.js → 94eab215bab3e4e0e5b5.js} +1 -1
  108. package/assets/esri/core/workers/chunks/95dee5853c6e89f15ea9.js +1 -0
  109. package/assets/esri/core/workers/chunks/a5b9ae4c93f9af7589f2.js +1 -0
  110. package/assets/esri/core/workers/chunks/{fb415b01f0f1d644832d.js → ac408c62565e2c8b5975.js} +1 -1
  111. package/assets/esri/core/workers/chunks/b3e8ab68fc38306f13c6.js +1 -0
  112. package/assets/esri/core/workers/chunks/b69d1d528e271568cbd8.js +2 -0
  113. package/assets/esri/core/workers/chunks/{0cc74bc3772be51cabc1.js → bbaf8baa3ca6195467e4.js} +1 -1
  114. package/assets/esri/core/workers/chunks/{f7e386ece75afb6e4be5.js → bc249bb667f0564ad093.js} +1 -1
  115. package/assets/esri/core/workers/chunks/c4872cf3b71d00f450e1.js +1 -0
  116. package/assets/esri/core/workers/chunks/c5ab346a226df1894302.js +1 -0
  117. package/assets/esri/core/workers/chunks/{39a8e6c9d710d3faea3c.js → cdb48d198145493f76f3.js} +1 -1
  118. package/assets/esri/core/workers/chunks/{359dbfbfb9acfb18bc6e.js → d4014213c476bf8099af.js} +1 -1
  119. package/assets/esri/core/workers/chunks/da29cf0e64065631a470.js +1 -0
  120. package/assets/esri/core/workers/chunks/ddebc1dc10a2d207389f.js +1 -0
  121. package/assets/esri/core/workers/chunks/e393fd61deb2e7f22ee6.js +1 -0
  122. package/assets/esri/core/workers/chunks/ea2bf7c543cc536400b7.js +30 -0
  123. package/assets/esri/core/workers/chunks/ece30bfd5c49b8d99752.js +1 -0
  124. package/assets/esri/core/workers/chunks/ecf4d07917efc97eb991.js +1 -0
  125. package/assets/esri/core/workers/chunks/ee56290e600cbeb25a00.js +1 -0
  126. package/assets/esri/core/workers/chunks/f52c6efc5a2abf5ac845.js +1 -0
  127. package/assets/esri/core/workers/chunks/fc1fe1f58a65a1694c09.js +1 -0
  128. package/assets/esri/geometry/support/pe-wasm.wasm +0 -0
  129. package/assets/esri/libs/lyr3d/lyr3DMain.wasm +0 -0
  130. package/assets/esri/libs/lyr3d/lyr3DWorker.wasm +0 -0
  131. package/assets/esri/themes/base/widgets/_BatchAttributeForm.scss +84 -1
  132. package/assets/esri/themes/base/widgets/_Sketch.scss +1 -24
  133. package/assets/esri/themes/dark/main.css +1 -1
  134. package/assets/esri/themes/light/main.css +1 -1
  135. package/assets/esri/themes/light/view.css +1 -1
  136. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm.json +1 -1
  137. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ar.json +1 -1
  138. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_bg.json +1 -1
  139. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_bs.json +1 -1
  140. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ca.json +1 -1
  141. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_cs.json +1 -1
  142. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_da.json +1 -1
  143. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_de.json +1 -1
  144. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_el.json +1 -1
  145. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_en.json +1 -1
  146. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_es.json +1 -1
  147. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_et.json +1 -1
  148. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_fi.json +1 -1
  149. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_fr.json +1 -1
  150. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_he.json +1 -1
  151. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_hr.json +1 -1
  152. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_hu.json +1 -1
  153. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_id.json +1 -1
  154. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_it.json +1 -1
  155. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ja.json +1 -1
  156. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ko.json +1 -1
  157. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_lt.json +1 -1
  158. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_lv.json +1 -1
  159. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_nl.json +1 -1
  160. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_no.json +1 -1
  161. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_pl.json +1 -1
  162. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_pt-BR.json +1 -1
  163. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_pt-PT.json +1 -1
  164. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ro.json +1 -1
  165. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ru.json +1 -1
  166. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sk.json +1 -1
  167. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sl.json +1 -1
  168. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sr.json +1 -1
  169. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sv.json +1 -1
  170. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_th.json +1 -1
  171. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_tr.json +1 -1
  172. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_uk.json +1 -1
  173. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_vi.json +1 -1
  174. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_zh-CN.json +1 -1
  175. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_zh-HK.json +1 -1
  176. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_zh-TW.json +1 -1
  177. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable.json +1 -1
  178. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_en.json +1 -1
  179. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ar.json +1 -1
  180. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_bg.json +1 -1
  181. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_bs.json +1 -1
  182. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ca.json +1 -1
  183. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_cs.json +1 -1
  184. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_da.json +1 -1
  185. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_de.json +1 -1
  186. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_el.json +1 -1
  187. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_es.json +1 -1
  188. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_et.json +1 -1
  189. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_fi.json +1 -1
  190. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_fr.json +1 -1
  191. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_he.json +1 -1
  192. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_hr.json +1 -1
  193. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_hu.json +1 -1
  194. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_id.json +1 -1
  195. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_it.json +1 -1
  196. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ja.json +1 -1
  197. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ko.json +1 -1
  198. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_lt.json +1 -1
  199. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_lv.json +1 -1
  200. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_nl.json +1 -1
  201. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_no.json +1 -1
  202. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pl.json +1 -1
  203. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pt-BR.json +1 -1
  204. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pt-PT.json +1 -1
  205. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ro.json +1 -1
  206. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ru.json +1 -1
  207. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sk.json +1 -1
  208. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sl.json +1 -1
  209. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sr.json +1 -1
  210. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sv.json +1 -1
  211. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_th.json +1 -1
  212. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_tr.json +1 -1
  213. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_uk.json +1 -1
  214. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_vi.json +1 -1
  215. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-CN.json +1 -1
  216. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-HK.json +1 -1
  217. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-TW.json +1 -1
  218. package/assets/esri/widgets/Sketch/t9n/Sketch.json +1 -1
  219. package/assets/esri/widgets/Sketch/t9n/Sketch_en.json +1 -1
  220. package/chunks/ComponentShader.glsl.js +11 -15
  221. package/chunks/Fog.glsl.js +3 -3
  222. package/chunks/GlowComposition.glsl.js +38 -56
  223. package/chunks/OITDimOpaque.glsl.js +8 -3
  224. package/chunks/SimpleAtmosphere.glsl.js +3 -3
  225. package/chunks/lyr3DWorker.js +1 -1
  226. package/chunks/pe-wasm.js +1 -1
  227. package/config.js +1 -1
  228. package/core/generatorUtils.js +2 -0
  229. package/core/libs/gl-matrix-2/factories/vec2f64.js +1 -1
  230. package/core/libs/gl-matrix-2/math/vec2.js +1 -1
  231. package/core/mathUtils.js +1 -1
  232. package/core/typedArrayUtil.js +1 -1
  233. package/geometry/HeightModelInfo.js +1 -1
  234. package/geometry/geometryEngine.d.ts +2 -2
  235. package/geometry/support/WKIDUnitConversion.js +1 -1
  236. package/geometry/support/buffer/BufferView.js +1 -1
  237. package/geometry/support/vcsData.js +1 -1
  238. package/geometry/support/vcsLookup.js +1 -1
  239. package/identity/IdentityManagerBase.js +1 -1
  240. package/kernel.js +1 -1
  241. package/layers/DimensionLayer.d.ts +5 -5
  242. package/layers/FeatureLayer.d.ts +2 -2
  243. package/layers/GaussianSplatLayer.d.ts +3 -3
  244. package/layers/LineOfSightLayer.d.ts +5 -5
  245. package/layers/ParquetLayer.d.ts +6 -4
  246. package/layers/SubtypeGroupLayer.d.ts +2 -2
  247. package/layers/ViewshedLayer.d.ts +3 -3
  248. package/layers/graphics/sources/ParquetSource.js +1 -1
  249. package/layers/graphics/sources/parquet/FileProvider.js +2 -0
  250. package/layers/graphics/sources/parquet/PortalParquetFileProvider.js +2 -0
  251. package/layers/graphics/sources/parquet/PortalParquetLayerFileProvider.js +2 -0
  252. package/layers/graphics/sources/parquet/UrlsFileProvider.js +2 -0
  253. package/layers/graphics/sources/parquet/createFileProvider.js +2 -0
  254. package/layers/graphics/sources/support/ParquetSourceWorker.js +1 -1
  255. package/layers/knowledgeGraph/KnowledgeGraphSublayer.d.ts +1 -1
  256. package/layers/raster/datasets/ImageAuxRaster.js +1 -1
  257. package/layers/raster/datasets/MRFRaster.js +1 -1
  258. package/layers/raster/datasets/pixelReader.js +1 -1
  259. package/layers/raster/formats/JpgPlus.js +1 -1
  260. package/layers/raster/formats/RasterCodec.js +1 -1
  261. package/layers/raster/functions/clipUtils.js +1 -1
  262. package/layers/support/AggregateField.d.ts +2 -1
  263. package/layers/support/LayerContingentValuesCache.js +1 -1
  264. package/layers/support/SubtypeSublayer.d.ts +4 -4
  265. package/layers/support/parquetUtils.d.ts +18 -7
  266. package/layers/support/parquetUtils.js +1 -1
  267. package/layers/support/rasterFunctionUtils.d.ts +2 -2
  268. package/libs/parquet/parquet.js +1 -1
  269. package/linkChart/ChronologicalLayoutSettings.d.ts +1 -1
  270. package/networks/CircuitManager.d.ts +3 -3
  271. package/networks/UnitIdentifierManager.d.ts +1 -1
  272. package/networks/UnitIdentifierManager.js +1 -1
  273. package/networks/UtilityNetwork.d.ts +2 -2
  274. package/networks/UtilityNetwork.js +1 -1
  275. package/networks/support/Circuit.d.ts +1 -1
  276. package/networks/support/CircuitLocation.d.ts +1 -1
  277. package/networks/support/CircuitSection.d.ts +1 -1
  278. package/networks/support/Subcircuit.d.ts +1 -1
  279. package/networks/support/TraceJobInfo.js +1 -1
  280. package/networks/support/jsonTypes.d.ts +10 -3
  281. package/package.json +4 -4
  282. package/popup/FieldInfo.d.ts +4 -2
  283. package/popup/support/FieldInfoFormat.d.ts +3 -2
  284. package/rest/featureService/FeatureService.d.ts +1 -1
  285. package/rest/knowledgeGraph/FieldIndex.d.ts +1 -1
  286. package/rest/knowledgeGraph/GraphObjectType.d.ts +2 -2
  287. package/rest/knowledgeGraph/GraphSearch.d.ts +1 -1
  288. package/rest/knowledgeGraph/GraphSearchStreaming.d.ts +1 -1
  289. package/rest/networks/circuits/support/CircuitVerifyResult.js +1 -1
  290. package/rest/networks/circuits/support/ExportCircuitsParameters.d.ts +19 -1
  291. package/rest/networks/circuits/support/ExportCircuitsResult.js +1 -1
  292. package/rest/networks/circuits/support/VerifyCircuitsParameters.d.ts +18 -10
  293. package/rest/networks/circuits/support/VerifyCircuitsParameters.js +1 -1
  294. package/rest/networks/circuits/support/VerifyCircuitsResult.js +1 -1
  295. package/rest/networks/support/TraceParameters.js +1 -1
  296. package/rest/networks/support/TraceResult.js +1 -1
  297. package/rest/networks/trace.js +1 -1
  298. package/rest/networks/unitIdentifiers/support/QueryUnitIdentifiersParameters.js +1 -1
  299. package/rest/support/AreasAndLengthsParameters.d.ts +1 -1
  300. package/rest/support/GeneralizeParameters.d.ts +1 -1
  301. package/rest/support/Query.d.ts +1 -1
  302. package/rest/support/RelationParameters.d.ts +1 -1
  303. package/rest/support/types.d.ts +1 -1
  304. package/support/revision.js +1 -1
  305. package/symbols/CIMSymbol.d.ts +1 -1
  306. package/views/2d/analysis/AreaMeasurementAnalysisView2D.d.ts +1 -0
  307. package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
  308. package/views/2d/layers/features/layerAdapters/ParquetLayerAdapter.js +1 -1
  309. package/views/2d/layers/features/sources/strategies/ParquetSnapshotLoadStrategy.js +1 -1
  310. package/views/2d/layers/features/sources/strategies/ParquetTileLoadStrategy.js +1 -1
  311. package/views/2d/layers/features/sources/strategies/chunks/ParquetSnapshotSourceChunk.js +1 -1
  312. package/views/2d/layers/features/sources/strategies/chunks/ParquetSourceChunk.js +1 -1
  313. package/views/3d/analysis/AreaMeasurementAnalysisView3D.d.ts +1 -0
  314. package/views/3d/analysis/DimensionAnalysisView3D.d.ts +7 -6
  315. package/views/3d/analysis/DirectLineMeasurementAnalysisView3D.d.ts +2 -0
  316. package/views/3d/analysis/LineOfSight/LineOfSightAuthoringUtils.js +1 -1
  317. package/views/3d/analysis/LineOfSight/LineOfSightIntersectionResult.js +1 -1
  318. package/views/3d/analysis/LineOfSight/LineOfSightRayIntersector.js +1 -1
  319. package/views/3d/analysis/LineOfSight/LineOfSightTool.js +1 -1
  320. package/views/3d/analysis/LineOfSightAnalysisView3D.d.ts +2 -1
  321. package/views/3d/analysis/ShadowCastAnalysisView3D.d.ts +5 -1
  322. package/views/3d/analysis/SliceAnalysisView3D.d.ts +4 -3
  323. package/views/3d/analysis/Viewshed/ViewshedConfiguration.js +1 -1
  324. package/views/3d/analysis/Viewshed/ViewshedDrawToolRenderer.js +2 -0
  325. package/views/3d/analysis/Viewshed/ViewshedEditTool.js +1 -1
  326. package/views/3d/analysis/Viewshed/ViewshedInteractionVisuals.js +2 -0
  327. package/views/3d/analysis/Viewshed/ViewshedPlacementController.js +2 -0
  328. package/views/3d/analysis/Viewshed/ViewshedPlacementOperation.js +2 -0
  329. package/views/3d/analysis/Viewshed/ViewshedPlacementPointPlugin.js +2 -0
  330. package/views/3d/analysis/Viewshed/ViewshedPlacementRootPlugin.js +2 -0
  331. package/views/3d/analysis/Viewshed/ViewshedSnappingController.js +2 -0
  332. package/views/3d/analysis/Viewshed/ViewshedSubTool.js +1 -1
  333. package/views/3d/analysis/Viewshed/ViewshedSubVisualization.js +1 -1
  334. package/views/3d/analysis/Viewshed/ViewshedTool.js +1 -1
  335. package/views/3d/analysis/Viewshed/ViewshedTool2.js +1 -1
  336. package/views/3d/analysis/Viewshed/analysisViewRegister.js +1 -1
  337. package/views/3d/analysis/Viewshed/placementUtils.js +2 -0
  338. package/views/3d/analysis/Viewshed/toolLifecycleUtils.js +2 -0
  339. package/views/3d/analysis/Viewshed/viewshedSubToolUtils.js +1 -1
  340. package/views/3d/analysis/Viewshed/viewshedToolUtils.js +1 -1
  341. package/views/3d/analysis/ViewshedAnalysisView3D.d.ts +4 -3
  342. package/views/3d/analysis/ViewshedAnalysisView3D.js +1 -1
  343. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementCutFillController.js +1 -1
  344. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementShiftTool.js +1 -1
  345. package/views/3d/environment/FoggyWeather.js +1 -1
  346. package/views/3d/layers/GaussianSplatLayerView3D.js +1 -1
  347. package/views/3d/layers/IntegratedMesh3DTilesLayerView3D.js +1 -1
  348. package/views/3d/layers/graphics/Graphics3DPolygonFillSymbolLayer.js +1 -1
  349. package/views/3d/layers/graphics/polygonUtils.js +1 -1
  350. package/views/3d/layers/i3s/Intersector.js +1 -1
  351. package/views/3d/layers/support/UVWorkspace.js +2 -0
  352. package/views/3d/layers/support/patternUtils.js +1 -1
  353. package/views/3d/layers/support/uvUtils.js +1 -1
  354. package/views/3d/support/ResourceController.js +1 -1
  355. package/views/3d/support/gaussianSplatting/GaussianSplatDataStore.js +1 -1
  356. package/views/3d/support/gaussianSplatting/GaussianSplatIntersectionHandler.js +1 -1
  357. package/views/3d/support/gaussianSplatting/GaussianSplatTextureAtlas.js +1 -1
  358. package/views/3d/support/gaussianSplatting/GaussianTile.js +1 -1
  359. package/views/3d/support/meshProcessing.js +1 -1
  360. package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
  361. package/views/3d/webgl-engine/core/shaderLibrary/TextureBackedBuffer.glsl.js +8 -8
  362. package/views/3d/webgl-engine/core/shaderLibrary/TextureBackedBufferFields.glsl.js +13 -9
  363. package/views/3d/webgl-engine/core/shaderLibrary/attributes/PathVertexPosition.glsl.js +63 -49
  364. package/views/3d/webgl-engine/effects/blit/Blit.js +1 -1
  365. package/views/3d/webgl-engine/effects/fog/Fog.js +1 -1
  366. package/views/3d/webgl-engine/effects/glow/Glow.js +1 -1
  367. package/views/3d/webgl-engine/effects/glow/GlowCompositionTechniqueConfiguration.js +1 -1
  368. package/views/3d/webgl-engine/lib/AttributeArray.js +1 -1
  369. package/views/3d/webgl-engine/lib/GaussianSplatRenderNode.js +1 -1
  370. package/views/3d/webgl-engine/lib/Geometry.js +1 -1
  371. package/views/3d/webgl-engine/lib/PathBuilder.js +1 -1
  372. package/views/3d/webgl-engine/lib/PathCapBuilder.js +1 -1
  373. package/views/3d/webgl-engine/lib/PathExtruder.js +1 -1
  374. package/views/3d/webgl-engine/lib/PathGeometry.js +1 -1
  375. package/views/3d/webgl-engine/lib/PathGeometryData.js +1 -1
  376. package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
  377. package/views/3d/webgl-engine/lib/TextureBackedBuffer/TextureBackedBufferFieldCreation.js +1 -1
  378. package/views/3d/webgl-engine/materials/PathLayouts.js +2 -0
  379. package/views/3d/webgl-engine/materials/PathMaterial.js +1 -1
  380. package/views/3d/webgl-engine/materials/PathTechnique.js +1 -1
  381. package/views/3d/webgl-engine/materials/PathTechniqueConfiguration.js +1 -1
  382. package/views/3d/webgl-engine/materials/PatternMaterial.js +1 -1
  383. package/views/3d/webgl-engine/materials/internal/bufferWriterUtils.js +1 -1
  384. package/views/3d/webgl-engine/shaders/SphereDepthInterpolate.glsl.js +2 -3
  385. package/views/PopupView.d.ts +77 -1
  386. package/views/PopupView.js +1 -1
  387. package/views/SceneView.js +1 -1
  388. package/views/draw/DrawTool.d.ts +77 -0
  389. package/views/draw/support/editingSessionUtils.js +1 -1
  390. package/views/draw/support/managers/PluginLifecycleManager.d.ts +10 -0
  391. package/views/interactive/InteractiveToolBase.d.ts +11 -0
  392. package/views/interactive/editGeometry/interfaces.d.ts +8 -0
  393. package/views/interactive/interfaces.d.ts +20 -0
  394. package/views/layers/DimensionLayerView.d.ts +2 -1
  395. package/views/layers/LineOfSightLayerView.d.ts +2 -1
  396. package/views/layers/ViewshedLayerView.d.ts +2 -1
  397. package/views/webgl/capabilities/load.js +1 -1
  398. package/webscene/Slide.js +1 -1
  399. package/widgets/Attachments/types.d.ts +1 -1
  400. package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.d.ts +38 -5
  401. package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.js +1 -1
  402. package/widgets/BatchAttributeForm/ReactiveContingentValuesManager.js +2 -0
  403. package/widgets/BatchAttributeForm/ReactiveGraphic.js +1 -1
  404. package/widgets/BatchAttributeForm/attachmentUtils.js +1 -1
  405. package/widgets/BatchAttributeForm/batchAttributeFormUtils.js +1 -1
  406. package/widgets/BatchAttributeForm/css.js +1 -1
  407. package/widgets/BatchAttributeForm/inputs/AttachmentElementInput.d.ts +11 -0
  408. package/widgets/BatchAttributeForm/inputs/AttachmentElementInput.js +1 -1
  409. package/widgets/BatchAttributeForm/inputs/FieldInput.d.ts +77 -0
  410. package/widgets/BatchAttributeForm/inputs/FieldInput.js +1 -1
  411. package/widgets/BatchAttributeForm/inputs/support/createBatchFormInputs.js +1 -1
  412. package/widgets/BatchAttributeForm/inputs/support/inputUtils.js +1 -1
  413. package/widgets/BatchAttributeForm/interfaceUtils.js +2 -0
  414. package/widgets/BatchAttributeForm/templates/support/createBatchFormTemplate.js +1 -1
  415. package/widgets/BatchAttributeForm/types.d.ts +30 -2
  416. package/widgets/BatchAttributeForm.d.ts +52 -1
  417. package/widgets/BatchAttributeForm.js +1 -1
  418. package/widgets/CoordinateConversion/CoordinateConversionViewModel.d.ts +9 -1
  419. package/widgets/CoordinateConversion/CoordinateConversionViewModel.js +1 -1
  420. package/widgets/Editor.d.ts +1 -1
  421. package/widgets/FeatureTable/FieldColumn.js +1 -1
  422. package/widgets/FeatureTable/support/FeatureStore.js +1 -1
  423. package/widgets/LayerList/LayerListItem.js +1 -1
  424. package/widgets/Sketch/SketchViewModel.d.ts +67 -2
  425. package/widgets/Sketch/SketchViewModel.js +1 -1
  426. package/widgets/Sketch/VisibleElements.d.ts +19 -1
  427. package/widgets/Sketch/VisibleElements.js +1 -1
  428. package/widgets/Sketch/support/OperationHandle.js +1 -1
  429. package/widgets/Sketch/support/PluginManager.d.ts +12 -0
  430. package/widgets/Sketch/support/PluginManager.js +1 -1
  431. package/widgets/Sketch.js +1 -1
  432. package/widgets/TimeSlider.d.ts +3 -3
  433. package/widgets/VideoPlayer/VideoPlayerViewModel.d.ts +10 -0
  434. package/widgets/VideoPlayer/VideoPlayerViewModel.js +1 -1
  435. package/widgets/support/ContingentValuesManager.js +1 -1
  436. package/widgets/support/SelectionToolbar/SelectionToolbarViewModel.d.ts +81 -0
  437. package/widgets/support/SelectionToolbar/types.d.ts +4 -0
  438. package/widgets/support/forms/formUtils.js +1 -1
  439. package/assets/esri/core/workers/chunks/11b0d3a825fe50dd1e84.js +0 -1
  440. package/assets/esri/core/workers/chunks/130851b81f04e6a008cd.js +0 -1
  441. package/assets/esri/core/workers/chunks/1a3426276dc82a8a80f2.js +0 -1
  442. package/assets/esri/core/workers/chunks/1c8a21b7b60c0709e6b2.js +0 -1
  443. package/assets/esri/core/workers/chunks/24247ee93f43fff5e596.js +0 -2
  444. package/assets/esri/core/workers/chunks/276cb6a1cdd26d0e1444.js +0 -1
  445. package/assets/esri/core/workers/chunks/2b3a8a53cd68f666676b.js +0 -1
  446. package/assets/esri/core/workers/chunks/2ecb21c402cdd8c82533.js +0 -1
  447. package/assets/esri/core/workers/chunks/2f903bd3a2611e7f0946.js +0 -30
  448. package/assets/esri/core/workers/chunks/2fda38219d778f0447b5.js +0 -1
  449. package/assets/esri/core/workers/chunks/38d7430d2370b69334d7.js +0 -1
  450. package/assets/esri/core/workers/chunks/39d6032d79720935910d.js +0 -1
  451. package/assets/esri/core/workers/chunks/5dafd35801dca4229aed.js +0 -1
  452. package/assets/esri/core/workers/chunks/642be1619c0e76355cb6.js +0 -1
  453. package/assets/esri/core/workers/chunks/6d66dc77af8d112c33c6.js +0 -1
  454. package/assets/esri/core/workers/chunks/7b3642195d6d3ea9b830.js +0 -1
  455. package/assets/esri/core/workers/chunks/7e57029ec958f6423d5d.js +0 -2
  456. package/assets/esri/core/workers/chunks/8042e001545e2782499c.js +0 -1
  457. package/assets/esri/core/workers/chunks/855bf811cd79b97c169a.js +0 -1
  458. package/assets/esri/core/workers/chunks/881234f25c7814de8753.js +0 -1
  459. package/assets/esri/core/workers/chunks/8a7682071941c35f05c1.js +0 -1
  460. package/assets/esri/core/workers/chunks/8fdd57e2a0af647f1e3e.js +0 -1
  461. package/assets/esri/core/workers/chunks/90ea570f6b6ce8ca693b.js +0 -1
  462. package/assets/esri/core/workers/chunks/9373daa677dc767d7cf0.js +0 -1
  463. package/assets/esri/core/workers/chunks/95df6d2ebacc43ac5fa3.js +0 -1
  464. package/assets/esri/core/workers/chunks/a02ebdcb802d128c8eee.js +0 -1
  465. package/assets/esri/core/workers/chunks/adf72d87f0114aeade0e.js +0 -1
  466. package/assets/esri/core/workers/chunks/aec4a4cd7044fdbbbe34.js +0 -1
  467. package/assets/esri/core/workers/chunks/b1a21a4d7d73ad7d0e47.js +0 -1
  468. package/assets/esri/core/workers/chunks/b262478da29470abb72b.js +0 -2
  469. package/assets/esri/core/workers/chunks/b75e090a7e935ff870a3.js +0 -1
  470. package/assets/esri/core/workers/chunks/bacf0c9d5d3e084dea61.js +0 -1
  471. package/assets/esri/core/workers/chunks/c0e4fd6fa1d765275248.js +0 -2
  472. package/assets/esri/core/workers/chunks/cfaa6e205bfc0c94a1b1.js +0 -1
  473. package/assets/esri/core/workers/chunks/d3f08f1a9a250cd8a2c8.js +0 -1
  474. package/assets/esri/core/workers/chunks/dcb7a3ff59677b1cf0f1.js +0 -1
  475. /package/assets/esri/core/workers/chunks/{7e57029ec958f6423d5d.js.LICENSE.txt → 549d348ca181d06aefb7.js.LICENSE.txt} +0 -0
  476. /package/assets/esri/core/workers/chunks/{9b89cc85c1b5d561df7c.js.LICENSE.txt → 55334ad3618899cdbf78.js.LICENSE.txt} +0 -0
  477. /package/assets/esri/core/workers/chunks/{b262478da29470abb72b.js.LICENSE.txt → 69c9eb93553b006b640d.js.LICENSE.txt} +0 -0
  478. /package/assets/esri/core/workers/chunks/{c0e4fd6fa1d765275248.js.LICENSE.txt → b69d1d528e271568cbd8.js.LICENSE.txt} +0 -0
package/widgets/Sketch.js CHANGED
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import{substitute as t}from"../intl.js";import{isSome as i}from"../core/arrayUtils.js";import{deprecateWidget as o}from"../core/deprecate.js";import{handlesGroup as n}from"../core/handleUtils.js";import s from"../core/Logger.js";import{removeMaybe as l,destroyMaybe as r}from"../core/maybe.js";import{ignoreAbortErrors as a}from"../core/promiseUtils.js";import{watch as c,syncAndInitial as p,when as d}from"../core/reactiveUtils.js";import{property as h,subclass as u}from"../core/accessorSupport/decorators.js";import{symbolTypes as m}from"../symbols/support/typeUtils.js";import g from"../views/interactive/sketch/SketchLabelOptions.js";import v from"../views/interactive/sketch/SketchTooltipOptions.js";import f from"../views/interactive/sketch/SketchValueOptions.js";import _ from"./Widget.js";import y from"./Sketch/SketchViewModel.js";import b from"./Sketch/VisibleElements.js";import w from"./Sketch/support/ResponsiveToolbar/ResponsiveToolbar.js";import{loadCalciteComponents as T}from"./support/componentsUtils.js";import S from"./support/PluginSettingsControls.js";import C from"./support/SelectionToolbar.js";import M from"./support/SketchTooltipControls.js";import O from"./support/SnappingControls.js";import{tsx as P,messageBundle as k,vmEvent as I}from"./support/widget.js";import L from"./support/SelectionToolbar/VisibleElements.js";import R from"./support/SketchTooltipControls/VisibleElements.js";const E="esri-sketch",W="settings-menu-action",x={base:E,vertical:`${E}--vertical`,docked:`${E}-bar`,floating:`${E}-pad`,chipHorizontal:`${E}__selection-count-chip--horizontal`,chipVertical:`${E}__selection-count-chip--vertical`,chipVerticalSmall:`${E}__selection-count-chip--vertical--s`,popoverWrapper:`${E}__popover-wrapper`,simplificationWarningAction:`${E}__simplification-warning-action`,simplificationWarningLoader:`${E}__simplification-warning-loader`,simplificationWarningContent:`${E}__simplification-warning-content`,simplificationWarningDescription:`${E}__simplification-warning-description`,simplificationWarningCancelButton:`${E}__simplification-warning-cancel-button`},D={point:"pin",polyline:"line",polygon:"polygon",rectangle:"rectangle",circle:"circle",multipoint:"pins",mesh:"i3d-building",freehandPolygon:"freehand-area",freehandPolyline:"freehand",text:"add-text"};let B=class extends _{constructor(e,t){super(e,t),this._selectionToolbar=null,this._viewModelHandlesGroup=null,this._popoverElement=null,this.availableCreateTools=["point","polyline","polygon","rectangle","circle"],this.customToolOptions=null,this.customActions=null,this.toolbarKind="floating",this.contextualToolLocation="separate",this.groupCollapsePriorities=null,this.groupAllowCollapseOptions=null,this.messages=null,this.messagesCommon=null,this.visibleElements=new b,this._defaultViewModel=null,this._activeCustomToolOptions=null,this._calcitePopoverReferenceElement=null,this._relativeLocation="top",this._popoverOpen=!1,this._simplificationPopoverOpen=!1,this._showSimplificationWarning=!1,this._simplificationPopoverElement=null,this._simplificationPopoverReferenceElement=null,!0!==e?.suppressDeprecationWarning&&(this.announceDeprecation=()=>{o(s.getLogger(this),"Sketch","arcgis-sketch",{version:"5.0"})}),this._activateCreateTool=this._activateCreateTool.bind(this),this.viewModel=e?.viewModel||(this._defaultViewModel=new y({creationMode:e?.creationMode??"continuous",useLegacyCreateTools:e?.useLegacyCreateTools??"3d"===e?.view?.type})),this.viewModel.pluginManager.sketch=this}normalizeCtorArgs(e={}){const{suppressDeprecationWarning:t,...i}=e;return i}initialize(){const{layer:e,view:t}=this,i="2d"===t?.type,o=new C({persistSelection:!1,visibleElements:new L({chip:!1,lassoTool:i,operationTypeControls:!1,pan:!1,pointTool:!1,rectangleTool:i}),view:t,sources:e?[e]:null,scale:this.scale,disabled:"disabled"===this.state||this._hasLongRunningOperation});this.addHandles([c(()=>this.viewModel,e=>{this._viewModelHandlesGroup=l(this._viewModelHandlesGroup),e&&(this._viewModelHandlesGroup=n([e.on("create",()=>this.scheduleRender()),e.on("update",()=>this.scheduleRender()),e.on("delete",e=>this.emit("delete",e)),e.on("undo",()=>this.scheduleRender()),e.on("redo",()=>this.scheduleRender()),c(()=>e.layer,e=>{this._selectionToolbar&&(this._selectionToolbar.sources=e?[e]:null)}),c(()=>e.view,e=>{this._selectionToolbar&&(this._selectionToolbar.view=e)}),c(()=>e.state,()=>{this.notifyChange("state"),this._syncSelectionToolbarDisabledState()}),c(()=>e.geometrySimplificationInProgress,e=>{this._syncSelectionToolbarDisabledState(),e&&(this._showSimplificationWarning=!0)})]))},p),d(()=>o.activeOperation,()=>{this._clearCompletedSimplificationWarningForToolbarInteraction(),this.viewModel.cancel(),this._activeCustomToolOptions=null}),o.on("complete",e=>this._onSelectionOperationComplete(e)),c(()=>{const{view:e,visibleElements:{selectionTools:t}}=this;return{lassoTool:"3d"!==e?.type&&!!t?.["lasso-selection"],rectangleTool:"3d"!==e?.type&&!!t?.["rectangle-selection"]}},e=>{Object.assign(o.visibleElements,e)},p)]),this._selectionToolbar=o,this._syncSelectionToolbarDisabledState()}loadDependencies(){return T({action:()=>import("@esri/calcite-components/dist/components/calcite-action"),button:()=>import("@esri/calcite-components/dist/components/calcite-button"),chip:()=>import("@esri/calcite-components/dist/components/calcite-chip"),loader:()=>import("@esri/calcite-components/dist/components/calcite-loader"),popover:()=>import("@esri/calcite-components/dist/components/calcite-popover")})}destroy(){this._selectionToolbar?.destroy(),this._viewModelHandlesGroup=l(this._viewModelHandlesGroup)}get activeTool(){const e=this._selectionToolbar?.activeOperation;if(e)switch(e.toolName){case"lasso":return"lasso-selection";case"rectangle":return"rectangle-selection";case"default":return"custom-selection"}const{availableCreateTools:t}=this,{activeTool:i,activeCreateToolDrawMode:o}=this.viewModel;return"polygon"===i&&"freehand"===o&&t?.includes("freehandPolygon")?"freehandPolygon":"polyline"===i&&"freehand"===o&&t?.includes("freehandPolyline")?"freehandPolyline":this.viewModel.activeTool}get activeTooltip(){return this.viewModel.activeTooltip}get createGraphic(){return this.viewModel.createGraphic}get creationMode(){return this.viewModel.creationMode}set creationMode(e){this.viewModel.creationMode=e}get defaultCreateOptions(){return this.viewModel.defaultCreateOptions}set defaultCreateOptions(e){this.viewModel.defaultCreateOptions=e}get defaultUpdateOptions(){return this.viewModel.defaultUpdateOptions}set defaultUpdateOptions(e){this.viewModel.defaultUpdateOptions=e}get icon(){return"pencil"}set icon(e){this._overrideIfSome("icon",e)}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get labelOptions(){return this.viewModel.labelOptions}set labelOptions(e){this.viewModel.labelOptions=e}get layer(){return this.viewModel.layer}set layer(e){this.viewModel.layer=e}set layout(e){this._set("layout",e),this._selectionToolbar&&(this._selectionToolbar.layout=e)}get pointSymbol(){return this.viewModel.pointSymbol}set pointSymbol(e){this.viewModel.pointSymbol=e}get polygonSymbol(){return this.viewModel.polygonSymbol}set polygonSymbol(e){this.viewModel.polygonSymbol=e}get polylineSymbol(){return this.viewModel.polylineSymbol}set polylineSymbol(e){this.viewModel.polylineSymbol=e}get textSymbol(){return this.viewModel.textSymbol}set textSymbol(e){this.viewModel.textSymbol=e}set scale(e){this._set("scale",e),this._selectionToolbar&&(this._selectionToolbar.scale=e)}get snappingOptions(){return this.viewModel.snappingOptions}set snappingOptions(e){this.viewModel.snappingOptions=e}get state(){return this._selectionToolbar?.activeOperation?"active":this.viewModel.state}get tooltipOptions(){return this.viewModel.tooltipOptions}set tooltipOptions(e){this.viewModel.tooltipOptions=e}get updateGraphics(){return this.viewModel.updateGraphics}get valueOptions(){return this.viewModel.valueOptions}set valueOptions(e){this.viewModel.valueOptions=e}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}set viewModel(e){const t=this._get("viewModel");e!==t&&(t&&t===this._defaultViewModel&&r(t),t?.pluginManager?.sketch===this&&(t.pluginManager.sketch=null),this._set("viewModel",e),e.pluginManager.sketch=this)}get useLegacyCreateTools(){return this.viewModel.useLegacyCreateTools}set useLegacyCreateTools(e){this.viewModel.useLegacyCreateTools=e}get isUsingLegacyCreateTools(){return this.viewModel.isUsingLegacyCreateTools}get settingsManager(){return this.viewModel.settingsManager}get _effectiveAvailableCreateTools(){if(this.viewModel.effectiveAvailablePlugins?.length)return this.viewModel.effectiveAvailablePlugins;const{availableCreateTools:e,view:t,visibleElements:i}=this,o=e?.filter(e=>!!i.createTools?.[e]);return"3d"===t?.type?o?.filter(e=>"multipoint"!==e):o}create(e,t,i){const o=i?.createOptions??t;return this._showSimplificationWarning&&!this._hasLongRunningOperation&&this._hideSimplificationWarning(),this._activeCustomToolOptions=i,a(this.viewModel.create(e,o))}update(e,t){return a(this.viewModel.update(e,t))}complete(){this.viewModel.complete()}cancel(){this._selectionToolbar?.cancel(),this.viewModel.cancel(),this._activeCustomToolOptions=null}undo(){this.viewModel.undo(),this.view?.focus()}redo(){this.viewModel.redo(),this.view?.focus()}delete(){this.viewModel.delete()}duplicate(){return this.viewModel.duplicate()}dismissFloatingElements(){this._popoverOpen=!1,this._simplificationPopoverOpen=!1}render(){const{toolbarKind:e,layout:t,scale:i}=this;return P("div",null,P("div",{classes:{[x.base]:!0,[x.floating]:"floating"===e,[x.docked]:"docked"===e,[x.vertical]:"vertical"===t}},P(w,{barStyle:e,layout:t,scale:i},this._renderSelectionSetItemGroupInline(),this._renderSelectionToolsOrBack(),this._renderCreateToolActionGroup(),this._renderUndoRedoMenuItemGroup(),this._renderSettingsMenuItemGroup(),this._renderSimplificationWarningItemGroupInline()),this._renderSelectionSetToolbar(),this._renderSimplificationWarningToolbar(),this._renderSettingsMenuPopover(),this._renderSimplificationWarningPopover()))}_renderSimplificationWarningToolbar(){if("separate"!==this.contextualToolLocation)return;const e=this._renderSimplificationWarningItemGroup();return e?P(w,{barStyle:this.toolbarKind,layout:this.layout,scale:this.scale},e):void 0}_renderSimplificationWarningItemGroupInline(){if("separate"!==this.contextualToolLocation)return this._renderSimplificationWarningItemGroup()}_renderSelectionToolsOrBack(){if(!this.viewModel.isUsingLegacyCreateTools&&this.viewModel.firstPluginWithSwappableLeaf)return this._renderBackButton();const e=this.customActions?.filter(e=>"selection-toolbar"===e.position);return P("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("selectionTools")??!0,"group-kind":"split-button",key:"selection-split-button",priority:this.groupCollapsePriorities?.get("selectionTools")??0},this._renderDefaultSelectionButton(),this._selectionToolbar?.render(),e?.map(e=>this._renderToolbarItem(e)))}_renderSettingsMenuPopover(){const{messagesCommon:e,settingsManager:t,snappingOptions:i,view:o,viewModel:n,visibleElements:s}=this;if(!this._calcitePopoverReferenceElement)return;const l={directionModePicker:s.directionModePicker,labelsToggle:s.labelsToggle,tooltipsToggle:s.tooltipsToggle},r="horizontal"===this.layout?"top"===this._relativeLocation?"bottom-end":"top-end":"right-end";return P("calcite-popover",{afterCreate:e=>this._popoverElement=e,closable:!0,heading:e.settings,key:`${this.id}-settings`,label:e.settings,open:this._popoverOpen,overlayPositioning:"fixed",placement:r,referenceElement:this._calcitePopoverReferenceElement,scale:this.scale,topLayerDisabled:this.topLayerDisabled,onCalcitePopoverBeforeClose:e=>this._beforePopoverClose(e.target),onCalcitePopoverBeforeOpen:e=>this._remeasurePopoverSizes(e.currentTarget),onCalcitePopoverClose:e=>this._refocusOnView(e.target)},P("div",{class:x.popoverWrapper},Object.values(l).includes(!0)?P(M,{sketchOptions:n.sketchOptions,view:o,visibleElements:new R(l)}):void 0,s.snappingControls&&o&&i?P(O,{snappingManager:this.viewModel.snappingManager,snappingOptions:i,view:o,visibleElements:s.snappingControlsElements}):void 0,t.hasSettings?P(S,{settingsManager:t}):void 0))}_beforePopoverClose(e){e===this._popoverElement&&(this._popoverOpen=!1)}_renderSelectionSetToolbar(){if("separate"!==this.contextualToolLocation)return;const e=this._renderSelectionSetItemGroup();return e?.length?P(w,{barStyle:this.toolbarKind,layout:this.layout,scale:this.scale},e):void 0}_renderSimplificationWarningItemGroup(){if(!this._showSimplificationWarning)return;const{messages:e,viewModel:t}=this,{finalizingDrawingCompleteTitle:i,finalizingDrawingTitle:o}=e,n=t.geometrySimplificationInProgress,s=n?o:i,l=n?void 0:"exclamation-mark-triangle",r=`${this.id}__simplification-warning-action`;return P("div",{"group-kind":"measured-content-group",key:"simplification-warning-group",slot:"actions-end"},P("calcite-action",{active:this._simplificationPopoverOpen,afterCreate:e=>this._simplificationPopoverReferenceElement=e,afterRemoved:()=>this._simplificationPopoverReferenceElement=null,afterUpdate:e=>this._simplificationPopoverReferenceElement=e,class:x.simplificationWarningAction,"data-testid":"simplification-warning",disabled:"disabled"===this.state,icon:l,id:r,key:"simplification-warning",onclick:()=>this._simplificationPopoverOpen=!this._simplificationPopoverOpen,scale:this.scale,text:s,title:s},n?P("calcite-loader",{class:x.simplificationWarningLoader,inline:!0,label:e.finalizingDrawing,scale:this.scale,type:"indeterminate"}):void 0))}_renderSimplificationWarningPopover(){if(!this._showSimplificationWarning||!this._simplificationPopoverReferenceElement)return;const{messages:e,messagesCommon:t}=this,{finalizingDrawingCompleteHint:i,finalizingDrawingCompleteTitle:o,finalizingDrawingHint:n,finalizingDrawingTitle:s,simplificationDismiss:l}=e,r=this._hasLongRunningOperation,a=r?s:o,c="l"===this.scale?"l":"s",p="horizontal"===this.layout?"top"===this._relativeLocation?"bottom-end":"top-end":"right-end";return P("calcite-popover",{afterCreate:e=>this._simplificationPopoverElement=e,closable:!0,heading:a,key:`${this.id}-simplification`,label:a,open:this._simplificationPopoverOpen,overlayPositioning:"fixed",placement:p,referenceElement:this._simplificationPopoverReferenceElement,scale:c,topLayerDisabled:this.topLayerDisabled,onCalcitePopoverBeforeClose:e=>this._beforeSimplificationPopoverClose(e.target),onCalcitePopoverBeforeOpen:e=>this._remeasurePopoverSizes(e.currentTarget,this._simplificationPopoverReferenceElement),onCalcitePopoverClose:e=>this._refocusOnView(e.target)},P("div",{class:x.simplificationWarningContent},P("div",{class:x.simplificationWarningDescription},r?n:i),r?P("calcite-button",{class:x.simplificationWarningCancelButton,iconStart:"trash",kind:"danger",label:t.cancel,onclick:()=>this.cancel(),scale:this.scale,width:"full"},t.cancel):P("calcite-button",{appearance:"outline",class:x.simplificationWarningCancelButton,iconStart:"check-circle",kind:"brand",label:l,onclick:()=>this._hideSimplificationWarning(),scale:this.scale,width:"full"},l)))}_renderSelectionSetItemGroupInline(){return"separate"===this.contextualToolLocation?[]:this._renderSelectionSetItemGroup()}_renderUndoRedoMenuItemGroup(){return P("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("undoRedo")??!0,"group-kind":"split-button",key:"undo-redo-menu",priority:this.groupCollapsePriorities?.get("undoRedo")??10,slot:"actions-end"},this._renderUndoButton(),this._renderRedoButton())}_renderSettingsMenuItemGroup(){const e=[],t=[];this.customActions?.forEach(i=>{"settings-before"===i.position?t.push(i):"settings-after"===i.position&&e.push(i)});const o=[...t.map(e=>this._renderToolbarItem(e)),this._renderSettingsMenuButton(),...e.map(e=>this._renderToolbarItem(e))].filter(i);if(o.length)return P("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("settings")??!1,"group-kind":"overflow-group",key:"settings-menu",priority:this.groupCollapsePriorities?.get("settings")??1e3,slot:"actions-end"},o)}_renderSelectionSetItemGroup(){if(!this.updateGraphics.length)return[];const e="inline-end"===this.contextualToolLocation?"actions-end":void 0,t=this.customActions?.filter(e=>"before-selection-set"===e.position),i=this.customActions?.filter(e=>"after-selection-set"===e.position),o=this.groupCollapsePriorities?.get("selectionSet")??100;return[P("div",{"group-kind":"measured-content",key:"selection-count-chip-group",priority:o,slot:e},this._renderFeatureCountChip()),P("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("selectionSet")??!1,"group-kind":"overflow-group",key:"selection-set-tool-group",priority:o,slot:e},t?.map(e=>this._renderToolbarItem(e)),this._renderDuplicateButton(),this._renderDeleteButton(),i?.map(e=>this._renderToolbarItem(e)))]}_renderDefaultSelectionButton(){if(!this.viewModel.updateOnGraphicClick)return[];const{messages:e,state:t}=this;return this._renderToolbarItem({id:"pointer-select",text:e.selectFeature,icon:"cursor",onclick:this._activateDefaultSelectTool,active:"ready"===t})}_renderBackButton(){const{viewModel:e,isUsingLegacyCreateTools:t}=this;if(!t&&e.multiplePluginsActive&&e.firstPluginWithSwappableLeaf&&e.rootPlugins&&(!(e.rootPlugins.length<2&&e.rootPlugins.includes(e.firstPluginWithSwappableLeaf))||this.visibleElements.singlePluginBackButton))return P("div",{"allow-collapse":!1,"group-kind":"overflow-group",key:"back-button-group"},P("calcite-action",{disabled:"disabled"===this.state||this._hasLongRunningOperation,icon:"chevron-left",iconFlipRtl:!0,onclick:()=>{this.viewModel?.cancel()},scale:this.scale,text:this.messagesCommon.back}))}_renderCreateToolActionGroup(){const e=this.viewModel.firstPluginWithSwappableLeaf?[]:this.customToolOptions?.flatMap(e=>this._renderCustomToolItem(e))??[],t=this._effectiveAvailableCreateTools,i=t?.filter(e=>"string"==typeof e),o=i?.map(e=>this._renderCreateToolItem(e)),n=t?.filter(e=>"string"!=typeof e).map(e=>this._renderCreateToolItem(e));return[o?.length||e?.length||n?.length?P("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("createTools")??!0,"group-kind":"overflow-group",key:"create-tools-group",priority:this.groupCollapsePriorities?.get("createTools")??100},o,e,n):void 0]}_renderCreateToolItem(e){return"string"==typeof e?this._renderBuiltInCreateToolItem(e):this._renderDrawToolPluginItem(e)}_renderDrawToolPluginItem(e){const{icon:t,localizationKey:i,uniqueId:o,hidden:n}=e;if(n)return[];const s=this.messages.digitizers,l=s?.[i]??i,r=!this._activeCustomToolOptions&&this.viewModel.drawTool?.pluginStack.some(e=>!e.configuration?.hidden&&e.configuration?.uniqueId===o);return this._renderToolbarItem({id:`${i}-button`,text:l,icon:t,onclick:()=>this._activatePlugin([e]),active:r})}_renderBuiltInCreateToolItem(e){return this._renderToolbarItem({id:`${e}-button`,text:this.messages.draw[e],icon:D[e],onclick:()=>this._activateCreateTool(e),active:this.activeTool===e&&!this._activeCustomToolOptions})}_renderCustomToolItem(e){const{toolKey:t}=e;return this._renderToolbarItem({id:`custom-${e.toolKey}`,text:e.label,icon:e.icon,onclick:()=>this._activateCreateTool(e.toolName,null,e),active:this._activeCustomToolOptions?.toolKey===t})}_renderUndoButton(){return this.visibleElements.undoRedoMenu?this._renderToolbarItem({id:"undo-button",text:this.messages.undo,icon:"undo",disabled:!this.viewModel.canUndo(),onclick:this.undo,flipRTL:!0}):[]}_renderRedoButton(){return this.visibleElements.undoRedoMenu?this._renderToolbarItem({id:"redo-button",text:this.messages.redo,icon:"redo",disabled:!this.viewModel.canRedo(),onclick:this.redo,flipRTL:!0}):[]}_renderSettingsMenuButton(){return this.visibleElements.settingsMenu?this._renderToolbarItem({id:W,text:this.messagesCommon.settings,icon:"gear",active:this._popoverOpen,onclick:()=>this._popoverOpen=!this._popoverOpen,afterCreate:e=>this._calcitePopoverReferenceElement=e,afterUpdate:e=>this._calcitePopoverReferenceElement=e,afterRemoved:()=>this._calcitePopoverReferenceElement=null}):[]}_renderFeatureCountChip(){if(!this.visibleElements.selectionCountLabel)return[];const{layout:e,messages:i,scale:o,id:n,updateGraphics:{length:s}}=this,l=t(i.selectedCount,{count:s}),r="l"===o?999:99,a=s>r?t(i.selectedCountTruncated,{truncated:r}):s,c="l"!==o&&"vertical"===e,p=c?`${n}-selection-chip-small`:`${n}-selection-chip`;return[c?P("span",{classes:{[x.chipVertical]:!0,[x.chipVerticalSmall]:"s"===this.scale},id:p,tabIndex:0,title:l},a):P("calcite-chip",{appearance:"outline",class:"horizontal"===e?x.chipHorizontal:x.chipVertical,id:p,kind:"brand",label:l,scale:"l"===o?"m":"s",tabIndex:0,title:"vertical"===e?l:void 0},"vertical"===e?a:l)]}_renderDuplicateButton(){if(!this.visibleElements.duplicateButton)return[];const{messages:e}=this;return this._renderToolbarItem({id:"duplicate",text:this.updateGraphics.length>1?e.duplicateFeatures:e.duplicateFeature,icon:"copy",onclick:this._onDuplicateSelect})}_renderDeleteButton(){if(!this.visibleElements.deleteButton)return[];const{messages:e}=this,t=this.updateGraphics.length>1?e.deleteFeatures:e.deleteFeature;return this._renderToolbarItem({id:"delete",text:t,icon:"trash",onclick:this.delete})}_renderToolbarItem({id:e,text:t,icon:i,disabled:o,onclick:n,active:s,flipRTL:l,afterCreate:r,afterUpdate:a,afterRemoved:c}){const p=`${this.id}-${e}`,d=n?()=>{e!==W&&this._clearCompletedSimplificationWarningForToolbarInteraction(),n.call(this)}:void 0;return[P("calcite-action",{active:s,afterCreate:r,afterRemoved:c,afterUpdate:a,bind:this,"data-testid":e,disabled:o||"disabled"===this.state||this._hasLongRunningOperation,icon:i,iconFlipRtl:l??!1,id:p,key:e,onclick:d,scale:this.scale,text:t,title:t})]}get _hasLongRunningOperation(){return this.viewModel.geometrySimplificationInProgress}_remeasurePopoverSizes(e,t=this._calcitePopoverReferenceElement){try{const i=e.parentElement,o=this?.view?.container?.getBoundingClientRect(),n=i?.style;if(!(i&&o&&n&&this.view?.container?.contains(i)&&t))return;const{bottom:s,top:l}=t.getBoundingClientRect();if("horizontal"===this.layout){const e=s<o.height/2;e!==("top"===this._relativeLocation)&&(this._relativeLocation=e?"top":"bottom"),e?(n?.setProperty("--sketch-view-height-offset",s-o.top+"px"),n?.setProperty("--sketch-view-margin-offset","30px")):(n?.setProperty("--sketch-view-height-offset",o.bottom-l+"px"),n?.setProperty("--sketch-view-margin-offset","15px"))}else"vertical"===this.layout&&(n.setProperty("--sketch-view-height-offset","15px"),n.setProperty("--sketch-view-margin-offset","15px"));const r=e.shadowRoot?.querySelector("div.header")?.getBoundingClientRect().height;n.setProperty("--sketch-popover-header-offset",`${r}px`)}catch(i){s.getLogger(this.declaredClass).warnOnce("Sketch failed to lay out settings menu.",i)}}_activateCreateTool(e,t,i){const o=this._activeCustomToolOptions;if(i||o){if(i?.toolKey===o?.toolKey)return void this.cancel()}else if(this.activeTool===e)return void this.cancel();this._selectionToolbar?.cancel(),this.create(e,t,i)}_activatePlugin(e){this._selectionToolbar?.cancel(),this.viewModel.firstPluginWithSwappableLeaf?(this.viewModel.drawTool?.replaceLeaf(e),this.view?.ready&&this.view.focus()):this._activateCreateTool(e)}_onDuplicateSelect(){const e=this.duplicate(),t=this.viewModel.activeTool;"transform"!==t&&"reshape"!==t||this.update(e,{tool:t})}_onSelectionOperationComplete(e){const{viewModel:{defaultUpdateOptions:t}}=this,{selection:i}=e;if(!e.aborted&&i.length){const e=t.tool,o=i.length>1&&"reshape"===e?"transform":e;this.update(i,{...t,tool:o})}this.notifyChange("state")}_activateDefaultSelectTool(){this.cancel(),this.view?.focus()}_refocusOnView(e){!this.activeTool||e!==this._popoverElement&&e!==this._simplificationPopoverElement||this.view?.focus()}_beforeSimplificationPopoverClose(e){e===this._simplificationPopoverElement&&(this._simplificationPopoverOpen=!1)}_hideSimplificationWarning(){this._showSimplificationWarning=!1,this._simplificationPopoverOpen=!1}_clearCompletedSimplificationWarningForToolbarInteraction(){this._hasLongRunningOperation||this._hideSimplificationWarning()}_syncSelectionToolbarDisabledState(){this._selectionToolbar&&(this._selectionToolbar.disabled="disabled"===this.state||this._hasLongRunningOperation)}};e([h()],B.prototype,"activeTool",null),e([h({readOnly:!0})],B.prototype,"activeTooltip",null),e([h({cast:e=>{if(!e?.length)return null;const t=new Set(["point","polyline","polygon","rectangle","circle","multipoint","freehandPolyline","freehandPolygon","mesh","text"]);return e.filter(e=>t.has(e))}})],B.prototype,"availableCreateTools",void 0),e([h({readOnly:!0})],B.prototype,"createGraphic",null),e([h()],B.prototype,"creationMode",null),e([h()],B.prototype,"customToolOptions",void 0),e([h()],B.prototype,"customActions",void 0),e([h()],B.prototype,"defaultCreateOptions",null),e([h()],B.prototype,"defaultUpdateOptions",null),e([h()],B.prototype,"icon",null),e([h()],B.prototype,"label",null),e([h({type:g})],B.prototype,"labelOptions",null),e([h()],B.prototype,"layer",null),e([h({type:["horizontal","vertical"],value:"horizontal"})],B.prototype,"layout",null),e([h({types:m})],B.prototype,"pointSymbol",null),e([h({types:m})],B.prototype,"polygonSymbol",null),e([h({types:m})],B.prototype,"polylineSymbol",null),e([h()],B.prototype,"textSymbol",null),e([h({value:"m"})],B.prototype,"scale",null),e([h()],B.prototype,"toolbarKind",void 0),e([h()],B.prototype,"contextualToolLocation",void 0),e([h()],B.prototype,"groupCollapsePriorities",void 0),e([h()],B.prototype,"groupAllowCollapseOptions",void 0),e([h(),k("esri/widgets/Sketch/t9n/Sketch")],B.prototype,"messages",void 0),e([h(),k("esri/t9n/common")],B.prototype,"messagesCommon",void 0),e([h()],B.prototype,"snappingOptions",null),e([h()],B.prototype,"state",null),e([h({type:v})],B.prototype,"tooltipOptions",null),e([h({readOnly:!0})],B.prototype,"updateGraphics",null),e([h({type:f,nonNullable:!0})],B.prototype,"valueOptions",null),e([h()],B.prototype,"view",null),e([h({type:y}),I(["create","update","undo","redo"])],B.prototype,"viewModel",null),e([h({type:b,nonNullable:!0})],B.prototype,"visibleElements",void 0),e([h()],B.prototype,"useLegacyCreateTools",null),e([h()],B.prototype,"isUsingLegacyCreateTools",null),e([h()],B.prototype,"settingsManager",null),e([h()],B.prototype,"_effectiveAvailableCreateTools",null),e([h()],B.prototype,"_defaultViewModel",void 0),e([h()],B.prototype,"_activeCustomToolOptions",void 0),e([h()],B.prototype,"_calcitePopoverReferenceElement",void 0),e([h()],B.prototype,"_hasLongRunningOperation",null),e([h()],B.prototype,"_relativeLocation",void 0),e([h()],B.prototype,"_popoverOpen",void 0),e([h()],B.prototype,"_simplificationPopoverOpen",void 0),e([h()],B.prototype,"_showSimplificationWarning",void 0),e([h()],B.prototype,"_simplificationPopoverElement",void 0),e([h()],B.prototype,"_simplificationPopoverReferenceElement",void 0),B=e([u("esri.widgets.Sketch")],B);const G=B;export{G as default};
2
+ import{__decorate as e}from"tslib";import{substitute as t}from"../intl.js";import{isSome as o}from"../core/arrayUtils.js";import{deprecateWidget as i}from"../core/deprecate.js";import{handlesGroup as s}from"../core/handleUtils.js";import l from"../core/Logger.js";import{removeMaybe as n,destroyMaybe as r}from"../core/maybe.js";import{ignoreAbortErrors as a}from"../core/promiseUtils.js";import{watch as p,syncAndInitial as c,when as d}from"../core/reactiveUtils.js";import{property as h,subclass as u}from"../core/accessorSupport/decorators.js";import{symbolTypes as g}from"../symbols/support/typeUtils.js";import v from"../views/interactive/sketch/SketchLabelOptions.js";import m from"../views/interactive/sketch/SketchTooltipOptions.js";import f from"../views/interactive/sketch/SketchValueOptions.js";import y from"./Widget.js";import b from"./Sketch/SketchViewModel.js";import _ from"./Sketch/VisibleElements.js";import w from"./Sketch/support/ResponsiveToolbar/ResponsiveToolbar.js";import{loadCalciteComponents as T}from"./support/componentsUtils.js";import{connectDelayedLoading as M}from"./support/loaderUtils.js";import S from"./support/PluginSettingsControls.js";import C from"./support/SelectionToolbar.js";import O from"./support/SketchTooltipControls.js";import k from"./support/SnappingControls.js";import{tsx as P,messageBundle as I,vmEvent as L}from"./support/widget.js";import R from"./support/SelectionToolbar/VisibleElements.js";import x from"./support/SketchTooltipControls/VisibleElements.js";const E="esri-sketch",G="settings-menu-action",B={base:E,vertical:`${E}--vertical`,docked:`${E}-bar`,floating:`${E}-pad`,chipHorizontal:`${E}__selection-count-chip--horizontal`,chipVertical:`${E}__selection-count-chip--vertical`,chipVerticalSmall:`${E}__selection-count-chip--vertical--s`,popoverWrapper:`${E}__popover-wrapper`,simplificationProgressLoader:`${E}__simplification-progress-loader`},j={point:"pin",polyline:"line",polygon:"polygon",rectangle:"rectangle",circle:"circle",multipoint:"pins",mesh:"i3d-building",freehandPolygon:"freehand-area",freehandPolyline:"freehand",text:"add-text"};let U=class extends y{constructor(e,t){super(e,t),this._selectionToolbar=null,this._viewModelHandlesGroup=null,this._popoverElement=null,this.availableCreateTools=["point","polyline","polygon","rectangle","circle"],this.customToolOptions=null,this.customActions=null,this.toolbarKind="floating",this.contextualToolLocation="separate",this.groupCollapsePriorities=null,this.groupAllowCollapseOptions=null,this.messages=null,this.messagesCommon=null,this.visibleElements=new _,this._defaultViewModel=null,this._activeCustomToolOptions=null,this._calcitePopoverReferenceElement=null,this._relativeLocation="top",this._popoverOpen=!1,this._showSimplificationProgress=!1,!0!==e?.suppressDeprecationWarning&&(this.announceDeprecation=()=>{i(l.getLogger(this),"Sketch","arcgis-sketch",{version:"5.0"})}),this._activateCreateTool=this._activateCreateTool.bind(this),this.viewModel=e?.viewModel||(this._defaultViewModel=new b({creationMode:e?.creationMode??"continuous",useLegacyCreateTools:e?.useLegacyCreateTools??"3d"===e?.view?.type})),this.viewModel.pluginManager.sketch=this}normalizeCtorArgs(e={}){const{suppressDeprecationWarning:t,...o}=e;return o}initialize(){const{layer:e,view:t}=this,o="2d"===t?.type,i=new C({persistSelection:!1,visibleElements:new R({chip:!1,lassoTool:o,operationTypeControls:!1,pan:!1,pointTool:!1,rectangleTool:o}),view:t,sources:e?[e]:null,scale:this.scale,disabled:"disabled"===this.state||this._hasLongRunningOperation});this.addHandles([p(()=>this.viewModel,e=>{this._viewModelHandlesGroup=n(this._viewModelHandlesGroup),e&&(this._viewModelHandlesGroup=s([e.on("create",()=>this.scheduleRender()),e.on("update",()=>this.scheduleRender()),e.on("delete",e=>this.emit("delete",e)),e.on("undo",()=>this.scheduleRender()),e.on("redo",()=>this.scheduleRender()),p(()=>e.layer,e=>{this._selectionToolbar&&(this._selectionToolbar.sources=e?[e]:null)}),p(()=>e.view,e=>{this._selectionToolbar&&(this._selectionToolbar.view=e)}),p(()=>e.state,()=>{this.notifyChange("state"),this._syncSelectionToolbarDisabledState()}),p(()=>e.geometrySimplificationInProgress,()=>{this._syncSelectionToolbarDisabledState()}),M({getLoading:()=>e.geometrySimplificationInProgress,setEffectiveLoading:e=>{this._showSimplificationProgress=e}})]))},c),d(()=>i.activeOperation,()=>{this.viewModel.cancel(),this._activeCustomToolOptions=null}),i.on("complete",e=>this._onSelectionOperationComplete(e)),p(()=>{const{view:e,visibleElements:{selectionTools:t}}=this;return{lassoTool:"3d"!==e?.type&&!!t?.["lasso-selection"],rectangleTool:"3d"!==e?.type&&!!t?.["rectangle-selection"]}},e=>{Object.assign(i.visibleElements,e)},c)]),this._selectionToolbar=i,this._syncSelectionToolbarDisabledState()}loadDependencies(){return T({action:()=>import("@esri/calcite-components/dist/components/calcite-action"),chip:()=>import("@esri/calcite-components/dist/components/calcite-chip"),loader:()=>import("@esri/calcite-components/dist/components/calcite-loader"),popover:()=>import("@esri/calcite-components/dist/components/calcite-popover")})}destroy(){this._selectionToolbar?.destroy(),this._viewModelHandlesGroup=n(this._viewModelHandlesGroup)}get activeTool(){const e=this._selectionToolbar?.activeOperation;if(e)switch(e.toolName){case"lasso":return"lasso-selection";case"rectangle":return"rectangle-selection";case"default":return"custom-selection"}const{availableCreateTools:t}=this,{activeTool:o,activeCreateToolDrawMode:i}=this.viewModel;return"polygon"===o&&"freehand"===i&&t?.includes("freehandPolygon")?"freehandPolygon":"polyline"===o&&"freehand"===i&&t?.includes("freehandPolyline")?"freehandPolyline":this.viewModel.activeTool}get activeTooltip(){return this.viewModel.activeTooltip}get createGraphic(){return this.viewModel.createGraphic}get creationMode(){return this.viewModel.creationMode}set creationMode(e){this.viewModel.creationMode=e}get defaultCreateOptions(){return this.viewModel.defaultCreateOptions}set defaultCreateOptions(e){this.viewModel.defaultCreateOptions=e}get defaultUpdateOptions(){return this.viewModel.defaultUpdateOptions}set defaultUpdateOptions(e){this.viewModel.defaultUpdateOptions=e}get icon(){return"pencil"}set icon(e){this._overrideIfSome("icon",e)}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get labelOptions(){return this.viewModel.labelOptions}set labelOptions(e){this.viewModel.labelOptions=e}get layer(){return this.viewModel.layer}set layer(e){this.viewModel.layer=e}set layout(e){this._set("layout",e),this._selectionToolbar&&(this._selectionToolbar.layout=e)}get pointSymbol(){return this.viewModel.pointSymbol}set pointSymbol(e){this.viewModel.pointSymbol=e}get polygonSymbol(){return this.viewModel.polygonSymbol}set polygonSymbol(e){this.viewModel.polygonSymbol=e}get polylineSymbol(){return this.viewModel.polylineSymbol}set polylineSymbol(e){this.viewModel.polylineSymbol=e}get textSymbol(){return this.viewModel.textSymbol}set textSymbol(e){this.viewModel.textSymbol=e}set scale(e){this._set("scale",e),this._selectionToolbar&&(this._selectionToolbar.scale=e)}get snappingOptions(){return this.viewModel.snappingOptions}set snappingOptions(e){this.viewModel.snappingOptions=e}get state(){return this._selectionToolbar?.activeOperation?"active":this.viewModel.state}get tooltipOptions(){return this.viewModel.tooltipOptions}set tooltipOptions(e){this.viewModel.tooltipOptions=e}get updateGraphics(){return this.viewModel.updateGraphics}get valueOptions(){return this.viewModel.valueOptions}set valueOptions(e){this.viewModel.valueOptions=e}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}set viewModel(e){const t=this._get("viewModel");e!==t&&(t&&t===this._defaultViewModel&&r(t),t?.pluginManager?.sketch===this&&(t.pluginManager.sketch=null),this._set("viewModel",e),e.pluginManager.sketch=this)}get useLegacyCreateTools(){return this.viewModel.useLegacyCreateTools}set useLegacyCreateTools(e){this.viewModel.useLegacyCreateTools=e}get isUsingLegacyCreateTools(){return this.viewModel.isUsingLegacyCreateTools}get settingsManager(){return this.viewModel.settingsManager}get _effectiveAvailableCreateTools(){if(this.viewModel.effectiveAvailablePlugins?.length)return this.viewModel.effectiveAvailablePlugins;const{availableCreateTools:e,view:t,visibleElements:o}=this,i=e?.filter(e=>!!o.createTools?.[e]);return"3d"===t?.type?i?.filter(e=>"multipoint"!==e):i}create(e,t,o){const i=o?.createOptions??t;return this._activeCustomToolOptions=o,a(this.viewModel.create(e,i))}update(e,t){return a(this.viewModel.update(e,t))}complete(){this.viewModel.complete()}cancel(){this._selectionToolbar?.cancel(),this.viewModel.cancel(),this._activeCustomToolOptions=null}undo(){this.viewModel.undo(),this.view?.focus()}redo(){this.viewModel.redo(),this.view?.focus()}delete(){this.viewModel.delete()}duplicate(){return this.viewModel.duplicate()}dismissFloatingElements(){this._popoverOpen=!1}render(){const{toolbarKind:e,layout:t,scale:o}=this;return P("div",null,P("div",{classes:{[B.base]:!0,[B.floating]:"floating"===e,[B.docked]:"docked"===e,[B.vertical]:"vertical"===t}},P(w,{barStyle:e,layout:t,scale:o},this._renderSelectionSetItemGroupInline(),this._renderSelectionToolsOrBack(),this._renderCreateToolActionGroup(),this._renderUndoRedoMenuItemGroup(),this._renderSettingsMenuItemGroup(),this._renderSimplificationProgressItemGroupInline()),this._renderSelectionSetToolbar(),this._renderSimplificationProgressToolbar(),this._renderSettingsMenuPopover()))}_renderSimplificationProgressToolbar(){if("separate"!==this.contextualToolLocation)return;const e=this._renderSimplificationProgressItemGroup();return e?P(w,{barStyle:this.toolbarKind,layout:this.layout,scale:this.scale},e):void 0}_renderSimplificationProgressItemGroupInline(){if("separate"!==this.contextualToolLocation)return this._renderSimplificationProgressItemGroup()}_renderSelectionToolsOrBack(){if(!this.viewModel.isUsingLegacyCreateTools&&this.viewModel.firstPluginWithSwappableLeaf)return this._renderBackButton();const e=this.customActions?.filter(e=>"selection-toolbar"===e.position);return P("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("selectionTools")??!0,"group-kind":"split-button",key:"selection-split-button",priority:this.groupCollapsePriorities?.get("selectionTools")??0},this._renderDefaultSelectionButton(),this._selectionToolbar?.render(),e?.map(e=>this._renderToolbarItem(e)))}_renderSettingsMenuPopover(){const{messagesCommon:e,settingsManager:t,snappingOptions:o,view:i,viewModel:s,visibleElements:l}=this;if(!this._calcitePopoverReferenceElement)return;const n={directionModePicker:l.directionModePicker,labelsToggle:l.labelsToggle,tooltipsToggle:l.tooltipsToggle},r="horizontal"===this.layout?"top"===this._relativeLocation?"bottom-end":"top-end":"right-end";return P("calcite-popover",{afterCreate:e=>this._popoverElement=e,closable:!0,heading:e.settings,key:`${this.id}-settings`,label:e.settings,open:this._popoverOpen,overlayPositioning:"fixed",placement:r,referenceElement:this._calcitePopoverReferenceElement,scale:this.scale,topLayerDisabled:this.topLayerDisabled,onCalcitePopoverBeforeClose:e=>this._beforePopoverClose(e.target),onCalcitePopoverBeforeOpen:e=>this._remeasurePopoverSizes(e.currentTarget),onCalcitePopoverClose:e=>this._refocusOnView(e.target)},P("div",{class:B.popoverWrapper},Object.values(n).includes(!0)?P(O,{sketchOptions:s.sketchOptions,view:i,visibleElements:new x(n)}):void 0,l.snappingControls&&i&&o?P(k,{snappingManager:this.viewModel.snappingManager,snappingOptions:o,view:i,visibleElements:l.snappingControlsElements}):void 0,t.hasSettings?P(S,{settingsManager:t}):void 0))}_beforePopoverClose(e){e===this._popoverElement&&(this._popoverOpen=!1)}_renderSelectionSetToolbar(){if("separate"!==this.contextualToolLocation)return;const e=this._renderSelectionSetItemGroup();return e?.length?P(w,{barStyle:this.toolbarKind,layout:this.layout,scale:this.scale},e):void 0}_renderSimplificationProgressItemGroup(){if(!this.visibleElements.geometrySimplificationActivityIndicator||!this._showSimplificationProgress)return;const e=`${this.messages.finalizingDrawingTitle}`;return P("div",{"group-kind":"measured-content-group",key:"simplification-progress-group",slot:"actions-end"},P("calcite-action",{"data-testid":"simplification-progress",key:"simplification-progress",scale:this.scale,text:e,title:e},P("calcite-loader",{class:B.simplificationProgressLoader,inline:!0,label:e,scale:this.scale,type:"indeterminate"})))}_renderSelectionSetItemGroupInline(){return"separate"===this.contextualToolLocation?[]:this._renderSelectionSetItemGroup()}_renderUndoRedoMenuItemGroup(){return P("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("undoRedo")??!0,"group-kind":"split-button",key:"undo-redo-menu",priority:this.groupCollapsePriorities?.get("undoRedo")??10,slot:"actions-end"},this._renderUndoButton(),this._renderRedoButton())}_renderSettingsMenuItemGroup(){const e=[],t=[];this.customActions?.forEach(o=>{"settings-before"===o.position?t.push(o):"settings-after"===o.position&&e.push(o)});const i=[...t.map(e=>this._renderToolbarItem(e)),this._renderSettingsMenuButton(),...e.map(e=>this._renderToolbarItem(e))].filter(o);if(i.length)return P("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("settings")??!1,"group-kind":"overflow-group",key:"settings-menu",priority:this.groupCollapsePriorities?.get("settings")??1e3,slot:"actions-end"},i)}_renderSelectionSetItemGroup(){if(!this.updateGraphics.length)return[];const e="inline-end"===this.contextualToolLocation?"actions-end":void 0,t=this.customActions?.filter(e=>"before-selection-set"===e.position),o=this.customActions?.filter(e=>"after-selection-set"===e.position),i=this.groupCollapsePriorities?.get("selectionSet")??100;return[P("div",{"group-kind":"measured-content",key:"selection-count-chip-group",priority:i,slot:e},this._renderFeatureCountChip()),P("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("selectionSet")??!1,"group-kind":"overflow-group",key:"selection-set-tool-group",priority:i,slot:e},t?.map(e=>this._renderToolbarItem(e)),this._renderDuplicateButton(),this._renderDeleteButton(),o?.map(e=>this._renderToolbarItem(e)))]}_renderDefaultSelectionButton(){if(!this.viewModel.updateOnGraphicClick)return[];const{messages:e,state:t}=this;return this._renderToolbarItem({id:"pointer-select",text:e.selectFeature,icon:"cursor",onclick:this._activateDefaultSelectTool,active:"ready"===t})}_renderBackButton(){const{viewModel:e,isUsingLegacyCreateTools:t}=this;if(!t&&e.multiplePluginsActive&&e.firstPluginWithSwappableLeaf&&e.rootPlugins&&(!(e.rootPlugins.length<2&&e.rootPlugins.includes(e.firstPluginWithSwappableLeaf))||this.visibleElements.singlePluginBackButton))return P("div",{"allow-collapse":!1,"group-kind":"overflow-group",key:"back-button-group"},P("calcite-action",{disabled:"disabled"===this.state||this._hasLongRunningOperation,icon:"chevron-left",iconFlipRtl:!0,onclick:()=>{this.viewModel?.cancel()},scale:this.scale,text:this.messagesCommon.back}))}_renderCreateToolActionGroup(){const e=this.viewModel.firstPluginWithSwappableLeaf?[]:this.customToolOptions?.flatMap(e=>this._renderCustomToolItem(e))??[],t=this._effectiveAvailableCreateTools,o=t?.filter(e=>"string"==typeof e),i=o?.map(e=>this._renderCreateToolItem(e)),s=t?.filter(e=>"string"!=typeof e).map(e=>this._renderCreateToolItem(e));return[i?.length||e?.length||s?.length?P("div",{"allow-collapse":this.groupAllowCollapseOptions?.get("createTools")??!0,"group-kind":"overflow-group",key:"create-tools-group",priority:this.groupCollapsePriorities?.get("createTools")??100},i,e,s):void 0]}_renderCreateToolItem(e){return"string"==typeof e?this._renderBuiltInCreateToolItem(e):this._renderDrawToolPluginItem(e)}_renderDrawToolPluginItem(e){const{icon:t,localizationKey:o,uniqueId:i,hidden:s}=e;if(s)return[];const l=this.messages.digitizers,n=l?.[o]??o,r=!this._activeCustomToolOptions&&this.viewModel.drawTool?.pluginStack.some(e=>!e.configuration?.hidden&&e.configuration?.uniqueId===i);return this._renderToolbarItem({id:`${o}-button`,text:n,icon:t,onclick:()=>this._activatePlugin([e]),active:r})}_renderBuiltInCreateToolItem(e){return this._renderToolbarItem({id:`${e}-button`,text:this.messages.draw[e],icon:j[e],onclick:()=>this._activateCreateTool(e),active:this.activeTool===e&&!this._activeCustomToolOptions})}_renderCustomToolItem(e){const{toolKey:t}=e;return this._renderToolbarItem({id:`custom-${e.toolKey}`,text:e.label,icon:e.icon,onclick:()=>this._activateCreateTool(e.toolName,null,e),active:this._activeCustomToolOptions?.toolKey===t})}_renderUndoButton(){return this.visibleElements.undoRedoMenu?this._renderToolbarItem({id:"undo-button",text:this.messages.undo,icon:"undo",disabled:!this.viewModel.canUndo(),onclick:this.undo,flipRTL:!0}):[]}_renderRedoButton(){return this.visibleElements.undoRedoMenu?this._renderToolbarItem({id:"redo-button",text:this.messages.redo,icon:"redo",disabled:!this.viewModel.canRedo(),onclick:this.redo,flipRTL:!0}):[]}_renderSettingsMenuButton(){return this.visibleElements.settingsMenu?this._renderToolbarItem({id:G,text:this.messagesCommon.settings,icon:"gear",active:this._popoverOpen,onclick:()=>this._popoverOpen=!this._popoverOpen,afterCreate:e=>this._calcitePopoverReferenceElement=e,afterUpdate:e=>this._calcitePopoverReferenceElement=e,afterRemoved:()=>this._calcitePopoverReferenceElement=null}):[]}_renderFeatureCountChip(){if(!this.visibleElements.selectionCountLabel)return[];const{layout:e,messages:o,scale:i,id:s,updateGraphics:{length:l}}=this,n=t(o.selectedCount,{count:l}),r="l"===i?999:99,a=l>r?t(o.selectedCountTruncated,{truncated:r}):l,p="l"!==i&&"vertical"===e,c=p?`${s}-selection-chip-small`:`${s}-selection-chip`;return[p?P("span",{classes:{[B.chipVertical]:!0,[B.chipVerticalSmall]:"s"===this.scale},id:c,tabIndex:0,title:n},a):P("calcite-chip",{appearance:"outline",class:"horizontal"===e?B.chipHorizontal:B.chipVertical,id:c,kind:"brand",label:n,scale:"l"===i?"m":"s",tabIndex:0,title:"vertical"===e?n:void 0},"vertical"===e?a:n)]}_renderDuplicateButton(){if(!this.visibleElements.duplicateButton)return[];const{messages:e}=this;return this._renderToolbarItem({id:"duplicate",text:this.updateGraphics.length>1?e.duplicateFeatures:e.duplicateFeature,icon:"copy",onclick:this._onDuplicateSelect})}_renderDeleteButton(){if(!this.visibleElements.deleteButton)return[];const{messages:e}=this,t=this.updateGraphics.length>1?e.deleteFeatures:e.deleteFeature;return this._renderToolbarItem({id:"delete",text:t,icon:"trash",onclick:this.delete})}_renderToolbarItem({id:e,text:t,icon:o,disabled:i,onclick:s,active:l,flipRTL:n,afterCreate:r,afterUpdate:a,afterRemoved:p}){const c=`${this.id}-${e}`,d=s?()=>s.call(this):void 0;return[P("calcite-action",{active:l,afterCreate:r,afterRemoved:p,afterUpdate:a,bind:this,"data-testid":e,disabled:i||"disabled"===this.state||this._hasLongRunningOperation,icon:o,iconFlipRtl:n??!1,id:c,key:e,onclick:d,scale:this.scale,text:t,title:t})]}get _hasLongRunningOperation(){return this.viewModel.geometrySimplificationInProgress}_remeasurePopoverSizes(e){try{const t=this._calcitePopoverReferenceElement,o=e.parentElement,i=this?.view?.container?.getBoundingClientRect(),s=o?.style;if(!(o&&i&&s&&this.view?.container?.contains(o)&&t))return;const{bottom:l,top:n}=t.getBoundingClientRect();if("horizontal"===this.layout){const e=l<i.height/2;e!==("top"===this._relativeLocation)&&(this._relativeLocation=e?"top":"bottom"),e?(s?.setProperty("--sketch-view-height-offset",l-i.top+"px"),s?.setProperty("--sketch-view-margin-offset","30px")):(s?.setProperty("--sketch-view-height-offset",i.bottom-n+"px"),s?.setProperty("--sketch-view-margin-offset","15px"))}else"vertical"===this.layout&&(s.setProperty("--sketch-view-height-offset","15px"),s.setProperty("--sketch-view-margin-offset","15px"));const r=e.shadowRoot?.querySelector("div.header")?.getBoundingClientRect().height;s.setProperty("--sketch-popover-header-offset",`${r}px`)}catch(t){l.getLogger(this.declaredClass).warnOnce("Sketch failed to lay out settings menu.",t)}}_activateCreateTool(e,t,o){const i=this._activeCustomToolOptions;if(o||i){if(o?.toolKey===i?.toolKey)return void this.cancel()}else if(this.activeTool===e)return void this.cancel();this._selectionToolbar?.cancel(),this.create(e,t,o)}_activatePlugin(e){this._selectionToolbar?.cancel(),this.viewModel.firstPluginWithSwappableLeaf?(this.viewModel.drawTool?.replaceLeaf(e),this.view?.ready&&this.view.focus()):this._activateCreateTool(e)}_onDuplicateSelect(){const e=this.duplicate(),t=this.viewModel.activeTool;"transform"!==t&&"reshape"!==t||this.update(e,{tool:t})}_onSelectionOperationComplete(e){const{viewModel:{defaultUpdateOptions:t}}=this,{selection:o}=e;if(!e.aborted&&o.length){const e=t.tool,i=o.length>1&&"reshape"===e?"transform":e;this.update(o,{...t,tool:i})}this.notifyChange("state")}_activateDefaultSelectTool(){this.cancel(),this.view?.focus()}_refocusOnView(e){this.activeTool&&e===this._popoverElement&&this.view?.focus()}_syncSelectionToolbarDisabledState(){this._selectionToolbar&&(this._selectionToolbar.disabled="disabled"===this.state||this._hasLongRunningOperation)}};e([h()],U.prototype,"activeTool",null),e([h({readOnly:!0})],U.prototype,"activeTooltip",null),e([h({cast:e=>{if(!e?.length)return null;const t=new Set(["point","polyline","polygon","rectangle","circle","multipoint","freehandPolyline","freehandPolygon","mesh","text"]);return e.filter(e=>t.has(e))}})],U.prototype,"availableCreateTools",void 0),e([h({readOnly:!0})],U.prototype,"createGraphic",null),e([h()],U.prototype,"creationMode",null),e([h()],U.prototype,"customToolOptions",void 0),e([h()],U.prototype,"customActions",void 0),e([h()],U.prototype,"defaultCreateOptions",null),e([h()],U.prototype,"defaultUpdateOptions",null),e([h()],U.prototype,"icon",null),e([h()],U.prototype,"label",null),e([h({type:v})],U.prototype,"labelOptions",null),e([h()],U.prototype,"layer",null),e([h({type:["horizontal","vertical"],value:"horizontal"})],U.prototype,"layout",null),e([h({types:g})],U.prototype,"pointSymbol",null),e([h({types:g})],U.prototype,"polygonSymbol",null),e([h({types:g})],U.prototype,"polylineSymbol",null),e([h()],U.prototype,"textSymbol",null),e([h({value:"m"})],U.prototype,"scale",null),e([h()],U.prototype,"toolbarKind",void 0),e([h()],U.prototype,"contextualToolLocation",void 0),e([h()],U.prototype,"groupCollapsePriorities",void 0),e([h()],U.prototype,"groupAllowCollapseOptions",void 0),e([h(),I("esri/widgets/Sketch/t9n/Sketch")],U.prototype,"messages",void 0),e([h(),I("esri/t9n/common")],U.prototype,"messagesCommon",void 0),e([h()],U.prototype,"snappingOptions",null),e([h()],U.prototype,"state",null),e([h({type:m})],U.prototype,"tooltipOptions",null),e([h({readOnly:!0})],U.prototype,"updateGraphics",null),e([h({type:f,nonNullable:!0})],U.prototype,"valueOptions",null),e([h()],U.prototype,"view",null),e([h({type:b}),L(["create","update","undo","redo"])],U.prototype,"viewModel",null),e([h({type:_,nonNullable:!0})],U.prototype,"visibleElements",void 0),e([h()],U.prototype,"useLegacyCreateTools",null),e([h()],U.prototype,"isUsingLegacyCreateTools",null),e([h()],U.prototype,"settingsManager",null),e([h()],U.prototype,"_effectiveAvailableCreateTools",null),e([h()],U.prototype,"_defaultViewModel",void 0),e([h()],U.prototype,"_activeCustomToolOptions",void 0),e([h()],U.prototype,"_calcitePopoverReferenceElement",void 0),e([h()],U.prototype,"_hasLongRunningOperation",null),e([h()],U.prototype,"_relativeLocation",void 0),e([h()],U.prototype,"_popoverOpen",void 0),e([h()],U.prototype,"_showSimplificationProgress",void 0),U=e([u("esri.widgets.Sketch")],U);const D=U;export{D as default};
@@ -263,7 +263,7 @@ export interface TimeSliderEvents extends TimeSliderViewModelEvents {}
263
263
  *
264
264
  * With this approach, whenever a TimeSlider's [timeExtent](https://developers.arcgis.com/javascript/latest/references/core/widgets/TimeSlider/#timeExtent) is updated, the assigned view's
265
265
  * [View.timeExtent](https://developers.arcgis.com/javascript/latest/references/core/views/View/#timeExtent) will also be updated. All time-aware layers will automatically update to conform to the view's timeExtent.
266
- * Check out the [Set time properties on data (ArcGIS Pro)](https://pro.arcgis.com/en/pro-app/help/mapping/time/set-the-time-properties-on-data.htm) and
266
+ * Check out the [Set time properties on data (ArcGIS Pro)](https://doc.esri.com/en/arcgis-pro/latest/help/mapping/time/set-the-time-properties-on-data.html) and
267
267
  * [Configure time settings on a layer (ArcGIS Online)](https://doc.arcgis.com/en/arcgis-online/create-maps/configure-time-mv.htm) documents to learn how to enable time on your service.
268
268
  *
269
269
  * ```js
@@ -421,8 +421,8 @@ export interface TimeSliderEvents extends TimeSliderViewModelEvents {}
421
421
  * @see [Sample - Filter features with TimeSlider component](https://developers.arcgis.com/javascript/latest/sample-code/timeslider-component-filter/)
422
422
  * @see [Sample - TimeSlider with offset](https://developers.arcgis.com/javascript/latest/sample-code/widgets-timeslider-offset/)
423
423
  * @see [Sample - Visualizing wind data with VectorFieldRenderer](https://developers.arcgis.com/javascript/latest/sample-code/layers-imagery-vfrenderer/)
424
- * @see [Temporal data (ArcGIS Pro)](https://pro.arcgis.com/en/pro-app/help/mapping/time/temporal-data.htm)
425
- * @see [Set time properties on data (ArcGIS Pro)](https://pro.arcgis.com/en/pro-app/help/mapping/time/set-the-time-properties-on-data.htm)
424
+ * @see [Temporal data (ArcGIS Pro)](https://doc.esri.com/en/arcgis-pro/latest/help/mapping/time/temporal-data.html)
425
+ * @see [Set time properties on data (ArcGIS Pro)](https://doc.esri.com/en/arcgis-pro/latest/help/mapping/time/set-the-time-properties-on-data.html)
426
426
  * @see [Configure time settings on a layer (ArcGIS Online)](https://doc.arcgis.com/en/arcgis-online/create-maps/configure-time-mv.htm)
427
427
  * @see [Set GeoJSONLayer timeInfo](https://developers.arcgis.com/javascript/latest/references/core/layers/GeoJSONLayer/#timeInfo)
428
428
  * @see [Set CSVLayer timeInfo](https://developers.arcgis.com/javascript/latest/references/core/layers/CSVLayer/#timeInfo)
@@ -178,6 +178,16 @@ export default class VideoPlayerViewModel extends Accessor {
178
178
  * videoPlayerViewModel.toggleFrameOutlineDisplay();
179
179
  */
180
180
  toggleFrameOutlineDisplay(): void;
181
+ /**
182
+ * Toggles the loop playback setting.
183
+ *
184
+ * @since 5.1
185
+ * @example
186
+ * ```js
187
+ * videoPlayerViewModel.toggleLoopPlayback();
188
+ * ```
189
+ */
190
+ toggleLoopPlayback(): void;
181
191
  /**
182
192
  * Toggles the sensor display.
183
193
  *
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import t from"../../core/Accessor.js";import{watch as r,initial as l}from"../../core/reactiveUtils.js";import{property as i,subclass as a}from"../../core/accessorSupport/decorators.js";import{videoMetadataEntryId as s}from"../../layers/video/videoUtils.js";function o(e,t){const r={};for(const l of t){const t=e.get(l);t&&(r[t.name]=t.value)}return r}let y=class extends t{constructor(e){super(e),this.followingMode="follow-both",this.layer=null,this.seekLength=10,this.view=null}initialize(){this.addHandles([r(()=>this.layer,(e,t)=>{t&&t.pause(),e&&e.load().then(()=>this._followTelemetry()).catch(()=>{})},l),r(()=>[this.followingMode],()=>this._followTelemetry(),l)])}get buffered(){return this.layer?.buffered||0}get currentTime(){return this.layer?.currentTime||0}get duration(){return this.layer?.duration||0}get ended(){return this.layer?.ended??!0}get metadata(){const e=this.layer?.metadata;return e?{missionInfo:o(e,[s.MissionId,s.PrecisionTimeStamp]),platformInfo:o(e,[s.PlatformTailNumber,s.PlatformTrueAirspeed,s.PlatformCallSign,s.PlatformDesignation,s.PlatformGroundRange]),frameInfo:o(e,[s.FrameCenterElevation,s.FrameCenterLatitude,s.FrameCenterLongitude])}:null}get playing(){return this.layer?.playing??!1}get state(){return this.layer?.loadError?"error":this.layer?.state??"not-ready"}play(){this.layer?.play()}pause(){this.layer?.pause()}seekBackward(){if(this.layer){const e=this.layer.currentTime-this.seekLength;e<=0?this.layer.reset():this.layer.setCurrentTime(e)}}seekForward(){if(this.layer){const e=this.layer.currentTime+this.seekLength;e>=this.layer.duration?this.layer.reset():this.layer.setCurrentTime(e)}}seekToBeginning(){this.layer?.setCurrentTime(0)}seekToEnding(){this.layer?.setCurrentTime(this.layer.duration)}seekTo(e){this.layer?.setCurrentTime(e)}toggleSensorDisplay(){this.layer?.telemetryDisplay&&(this.layer.telemetryDisplay.sensorLocation=!this.layer.telemetryDisplay.sensorLocation)}toggleSensorPathDisplay(){this.layer?.telemetryDisplay&&(this.layer.telemetryDisplay.sensorPath=!this.layer.telemetryDisplay.sensorPath)}toggleSensorSightLineDisplay(){this.layer?.telemetryDisplay&&(this.layer.telemetryDisplay.lineOfSight=!this.layer.telemetryDisplay.lineOfSight)}toggleFrameDisplay(){this.layer?.telemetryDisplay&&(this.layer.telemetryDisplay.frame=!this.layer.telemetryDisplay.frame)}toggleSensorTrailDisplay(){this.layer?.telemetryDisplay&&(this.layer.telemetryDisplay.sensorTrail=!this.layer.telemetryDisplay.sensorTrail)}toggleFrameCenterDisplay(){this.layer?.telemetryDisplay&&(this.layer.telemetryDisplay.frameCenter=!this.layer.telemetryDisplay.frameCenter)}toggleFrameOutlineDisplay(){this.layer?.telemetryDisplay&&(this.layer.telemetryDisplay.frameOutline=!this.layer.telemetryDisplay.frameOutline)}changePlaybackSpeed(e){this.layer&&(this.layer.playbackRate=e)}changeGraphicsColor(e){e&&this.layer.updateTelemetryColor(e)}_followTelemetry(){this.removeHandles("follow"),this.view&&this.layer&&this.addHandles(r(()=>this.layer?.telemetry,()=>{const e=[],t="follow-sensor"===this.followingMode||"follow-both"===this.followingMode,r="follow-frame"===this.followingMode||"follow-both"===this.followingMode;t&&this.layer?.telemetry.sensorLocation&&e.push(this.layer.telemetry.sensorLocation),r&&this.layer?.telemetry.frameCenter&&e.push(this.layer.telemetry.frameCenter),e.length?this.view?.goTo(e).catch(()=>{}):this.layer?.initialExtent&&"none"!==this.followingMode&&this.view?.goTo(this.layer.initialExtent).catch(()=>{})},l),"follow")}};e([i({readOnly:!0})],y.prototype,"buffered",null),e([i({readOnly:!0})],y.prototype,"currentTime",null),e([i({readOnly:!0})],y.prototype,"duration",null),e([i({readOnly:!0})],y.prototype,"ended",null),e([i()],y.prototype,"followingMode",void 0),e([i()],y.prototype,"layer",void 0),e([i({readOnly:!0})],y.prototype,"metadata",null),e([i({readOnly:!0})],y.prototype,"playing",null),e([i()],y.prototype,"seekLength",void 0),e([i({readOnly:!0})],y.prototype,"state",null),e([i()],y.prototype,"view",void 0),y=e([a("esri.widgets.VideoPlayer.VideoPlayerViewModel")],y);const n=y;export{n as default};
2
+ import{__decorate as e}from"tslib";import t from"../../core/Accessor.js";import{watch as r,initial as l}from"../../core/reactiveUtils.js";import{property as i,subclass as a}from"../../core/accessorSupport/decorators.js";import{videoMetadataEntryId as s}from"../../layers/video/videoUtils.js";function o(e,t){const r={};for(const l of t){const t=e.get(l);t&&(r[t.name]=t.value)}return r}let y=class extends t{constructor(e){super(e),this.followingMode="follow-both",this.layer=null,this.seekLength=10,this.view=null}initialize(){this.addHandles([r(()=>this.layer,(e,t)=>{t&&t.pause(),e&&e.load().then(()=>this._followTelemetry()).catch(()=>{})},l),r(()=>[this.followingMode],()=>this._followTelemetry(),l)])}get buffered(){return this.layer?.buffered||0}get currentTime(){return this.layer?.currentTime||0}get duration(){return this.layer?.duration||0}get ended(){return this.layer?.ended??!0}get metadata(){const e=this.layer?.metadata;return e?{missionInfo:o(e,[s.MissionId,s.PrecisionTimeStamp]),platformInfo:o(e,[s.PlatformTailNumber,s.PlatformTrueAirspeed,s.PlatformCallSign,s.PlatformDesignation,s.PlatformGroundRange]),frameInfo:o(e,[s.FrameCenterElevation,s.FrameCenterLatitude,s.FrameCenterLongitude])}:null}get playing(){return this.layer?.playing??!1}get state(){return this.layer?.loadError?"error":this.layer?.state??"not-ready"}play(){this.layer?.play()}pause(){this.layer?.pause()}seekBackward(){if(this.layer){const e=this.layer.currentTime-this.seekLength;e<=0?this.layer.reset():this.layer.setCurrentTime(e)}}seekForward(){if(this.layer){const e=this.layer.currentTime+this.seekLength;e>=this.layer.duration?this.layer.reset():this.layer.setCurrentTime(e)}}seekToBeginning(){this.layer?.setCurrentTime(0)}seekToEnding(){this.layer?.setCurrentTime(this.layer.duration)}seekTo(e){this.layer?.setCurrentTime(e)}toggleSensorDisplay(){this.layer?.telemetryDisplay&&(this.layer.telemetryDisplay.sensorLocation=!this.layer.telemetryDisplay.sensorLocation)}toggleSensorPathDisplay(){this.layer?.telemetryDisplay&&(this.layer.telemetryDisplay.sensorPath=!this.layer.telemetryDisplay.sensorPath)}toggleSensorSightLineDisplay(){this.layer?.telemetryDisplay&&(this.layer.telemetryDisplay.lineOfSight=!this.layer.telemetryDisplay.lineOfSight)}toggleFrameDisplay(){this.layer?.telemetryDisplay&&(this.layer.telemetryDisplay.frame=!this.layer.telemetryDisplay.frame)}toggleSensorTrailDisplay(){this.layer?.telemetryDisplay&&(this.layer.telemetryDisplay.sensorTrail=!this.layer.telemetryDisplay.sensorTrail)}toggleFrameCenterDisplay(){this.layer?.telemetryDisplay&&(this.layer.telemetryDisplay.frameCenter=!this.layer.telemetryDisplay.frameCenter)}toggleFrameOutlineDisplay(){this.layer?.telemetryDisplay&&(this.layer.telemetryDisplay.frameOutline=!this.layer.telemetryDisplay.frameOutline)}toggleLoopPlayback(){this.layer&&(this.layer.loop=!this.layer.loop)}changePlaybackSpeed(e){this.layer&&(this.layer.playbackRate=e)}changeGraphicsColor(e){e&&this.layer.updateTelemetryColor(e)}_followTelemetry(){this.removeHandles("follow"),this.view&&this.layer&&this.addHandles(r(()=>this.layer?.telemetry,()=>{const e=[],t="follow-sensor"===this.followingMode||"follow-both"===this.followingMode,r="follow-frame"===this.followingMode||"follow-both"===this.followingMode;t&&this.layer?.telemetry.sensorLocation&&e.push(this.layer.telemetry.sensorLocation),r&&this.layer?.telemetry.frameCenter&&e.push(this.layer.telemetry.frameCenter),e.length?this.view?.goTo(e).catch(()=>{}):this.layer?.initialExtent&&"none"!==this.followingMode&&this.view?.goTo(this.layer.initialExtent).catch(()=>{})},l),"follow")}};e([i({readOnly:!0})],y.prototype,"buffered",null),e([i({readOnly:!0})],y.prototype,"currentTime",null),e([i({readOnly:!0})],y.prototype,"duration",null),e([i({readOnly:!0})],y.prototype,"ended",null),e([i()],y.prototype,"followingMode",void 0),e([i()],y.prototype,"layer",void 0),e([i({readOnly:!0})],y.prototype,"metadata",null),e([i({readOnly:!0})],y.prototype,"playing",null),e([i()],y.prototype,"seekLength",void 0),e([i({readOnly:!0})],y.prototype,"state",null),e([i()],y.prototype,"view",void 0),y=e([a("esri.widgets.VideoPlayer.VideoPlayerViewModel")],y);const n=y;export{n as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import{Y as t}from"../../chunks/languageUtils.js";import n from"../../core/Accessor.js";import s from"../../core/Collection.js";import{getOrCreateMapValue as o}from"../../core/MapUtils.js";import{destroyMaybe as i}from"../../core/maybe.js";import{EsriPromiseMixin as a}from"../../core/Promise.js";import r from"../../core/ReactiveMap.js";import{on as l}from"../../core/reactiveUtils.js";import{property as c,subclass as u}from"../../core/accessorSupport/decorators.js";import f from"../../layers/support/ContingentValue.js";import d from"../../layers/support/LayerContingentValuesCache.js";import{isFeatureLayer as p,isSubtypeGroupLayer as h}from"../../layers/support/layerUtils.js";import{valueIsValidContingentValue as g}from"../FeatureForm/featureFormUtils.js";const m="#JSAPI_CONTINGENT_VALUE_EMPTY_HASH",y="#JSAPI_CONTINGENT_VALUE_ANY_HASH",_="#JSAPI_CONTINGENT_VALUE_NULL_HASH",v={_any:"any",_code:"code",_null:"null",_range:"range"};let V=class extends(a(n)){constructor(e){super(e),this._cacheMap=new r,this._joinedContingenciesMap=new Map,this._optionsMap=new Map,this._violationsMap=new Map,this.layers=new s}initialize(){this.layers.length&&this._onLayersChange(this.layers.toArray()),this.addHandles([l(()=>this.layers,"change",({added:e})=>this._onLayersChange(e))])}destroy(){this.reset()}get fieldsWithContingentValues(){const e=new r;return this._cacheMap.forEach((t,n)=>{e.set(n,new Set(t.fieldGroups.flatMap(e=>e.fields)))}),e}clear(){this._joinedContingenciesMap.clear(),this.resetOptions(),this.resetViolations()}getViolationForField(e,t,n){const s=this._violationsMap.get(e),o=I(e,t),i=s?.get(o);return i?.get(n)||null}getAllViolations(e,t){const n=this._violationsMap.get(e),s=I(e,t),o=n?.get(s);return o?Array.from(o.values()):[]}getFieldValueOptions(e){const{feature:t,layer:n,fieldName:s,emptyString:o}=e,i=A(n,t,s),a=t.getAttribute(s),l=this._optionsMap.get(n),c=I(n,t),u=l?.get(c);if(u){const e=u.get(s);if(e)return e}const f="coded-value"===i?.type?i.codedValues.map(({name:e,code:t})=>({name:e,value:t})):[],d=null==a||f.some(e=>e.value===a)?[]:[{name:`${a}`,value:a}],p=S(n)&&this.fieldsWithContingentValues.get(n)?.has(s)?this._getContingentValueOptionsForField(n,t,s,o):[];let h=null;if(p.length>0){const e=new Set(p.map(e=>e.value));h={recommended:p,other:f.filter(t=>!e.has(t.value)),unsupported:d}}else h={recommended:f,other:[],unsupported:d};if(u)u.set(s,h);else{const e=new r([[s,h]]);l?l.set(c,e):this._optionsMap.set(n,new r([[c,e]]))}return h}getJoinedContingentValues(e,t){return this._joinContingentValues(e,t)}reset(){this.clear(),this._cacheMap.forEach(i),this._cacheMap.clear()}resetOptions(){this._optionsMap.clear()}resetOptionsForFeature(e,t){this._optionsMap.get(e)?.get(t)?.clear()}resetOptionsForLayer(e){this._optionsMap.get(e)?.clear()}resetViolations(){this._violationsMap.clear()}resetViolationsForFeature(e,t){this._violationsMap.get(e)?.get(t)?.clear()}resetViolationsForLayer(e){this._violationsMap.get(e)?.clear()}validateContingencyConstraints(e,t,n){const s=this._cacheMap.get(e);if(!s)return[];const i=F(t),{invalid:a,incomplete:l}=s.validateContingencyConstraints(i),c=[...a,...n?.includeIncompleteViolations?l:[]],u=new r;for(const o of c)for(const e of o.fieldGroup.fields)u.set(e,o);const f=I(e,t);return o(this._violationsMap,e,()=>new r).set(f,u),c}validateContingenciesForNonNullFields(e,t){const n=t.clone();n.attributes=Object.fromEntries(Object.entries(F(t)).filter(([e,t])=>null!=t)),this.validateContingencyConstraints(e,n)}_onLayersChange(e){e.forEach(e=>{let n=null;t(e)?n=e.parent:(p(e)||h(e))&&(n=e),n&&!this._cacheMap.get(n)&&this.addResolvingPromise(d.createLoadedLayerContingentValuesCache(n).then(e=>{e&&this._cacheMap.set(n,e)}))})}_getContingentValueOptionsForField(e,t,n,s){const o=this.getJoinedContingentValues(e,t),i=new Map,a={code:"",name:s??"No value"},{_code:r,_null:l}=v;for(const c of o){const s=c.values[n];if(s?.objectType===r||s?.objectType===l){const{code:o,name:r}=s.codedValue&&s.objectType!==l?s.codedValue:a;!i.has(o)&&this._isValidContingency(e,t,n,c)&&i.set(o,{name:r,value:o})}}return[...i.values()]}_isValidContingency(e,t,n,s){const o={};for(const[i,a]of Object.entries(F(t)))this.fieldsWithContingentValues.get(e)?.has(i)&&null!=a&&i!==n&&(o[i]=a);return Object.entries(o).every(([e,t])=>!s.values.hasOwnProperty(e)||g(t,s.values[e]))}_joinContingentValues(e,t){const n=this._cacheMap.get(e);if(!t||!n)return[];const s=this._joinedContingenciesMap.get(e),o=I(e,t),i=s?.get(o);if(i)return i;const a=n.subtypeFieldName,l=a?t.attributes[a]:null,c=[];for(const r of n.fieldGroups){const{contingencies:e,fields:t,name:n}=r,s=[];for(const o of e)o.isRetired||null!=o.subtype&&o.subtype.code!==l||s.push({values:o.values});s.length>0&&c.push({name:n,fields:t,contingencies:s})}const[u,f]=C(c),d=u.flatMap(n=>L(e,t,n)),p=f.flatMap(e=>e.contingencies),h=[...d,...p];return s?s.set(o,h):this._joinedContingenciesMap.set(e,new r([[o,h]])),[...d,...p]}};function M(e,t){const{_any:n,_null:s,_range:o}=v;return{leftIsNull:e===s,rightIsNull:t===s,bothAreNull:e===s&&t===s,leftIsAny:e===n,rightIsAny:t===n,bothAreAny:e===n&&t===n,leftIsRange:e===o,rightIsRange:t===o}}function j(e,t,n){const{_any:s}=v,o=Array.from(n);return t.filter(t=>o.every(n=>{const o=t.values[n],i=e.values[n];return o.objectType===s||i.objectType===s||o.codedValue?.code===i.codedValue?.code}))}function b(e,t){const n=new RegExp(`${t}$`),s=[];for(const[o,i]of e){if(o===y)break;n.test(o)&&s.push(...i)}return s}function w(e,t,n,s){const o=Array.isArray(n)?new Set(n):n,i=Array.isArray(s)?new Set(s):s,a=o.size<i.size?o:i,r=a===o?i:o,l=new Set,c=new Set;for(const u of a)if(r.has(u)){const n=A(e,t,u,!0);if(null==n)continue;switch(n.type){case"coded-value":l.add(u);break;case"range":c.add(u)}}return{codedValueFields:l,rangeFields:c}}function C(e){const t=new Map,n=[],s=new Set;for(const l of e)for(const e of l.fields)if(t.has(e)){const o=t.get(e),i=l,a=[o.name,i.name].sort().join("|");if(s.has(a))continue;n.push([o,i]),s.add(a),t.set(e,i)}else t.set(e,l);const o=new Set(n.flat()),i=new Set(e);for(const l of o)i.delete(l);const a=new Map,r=new Map;for(const l of new Set(n.flat())){const e=Symbol(l.name);a.set(e,new Set([l])),r.set(l,e)}for(const[l,c]of n){const e=r.get(l),t=r.get(c);if(e===t)continue;const n=a.get(e),s=a.get(t);for(const o of s)n.add(o),r.set(o,e);a.delete(t)}return[[...a.values()].map(e=>[...e]),[...i]]}function F(e){return e.attributes}function A(e,t,n,s=!1){return e.getFieldDomain(n,{feature:t,excludeImpliedDomains:s})}function I(e,t){return t.getObjectId()??t.attributes[e.objectIdField]??t}function N(e,t,n=!1){if(t.size<1)return[m,!1];const{_any:s,_null:o}=v,i=[];let a=!1;for(const r of t.values()){const t=e.values[r];if(t.objectType===s){if(n)return[y,!0];a=!0,i.push(`${r}:.*`)}else t.objectType===o?i.push(`${r}:${_}`):i.push(`${r}:${t.codedValue?.code}`)}return[i.sort().join("&"),a]}function S(e){return p(e)||h(e)}function T(e,t){const n={values:{...e.values,...t.values}};for(const[s,o]of Object.entries(n.values))o.objectType===v._any&&null!=e.values[s]&&(n.values[s]=e.values[s]);return n}function O(e,t,n){const s=T(e,t),{_null:o,_range:i}=v;for(const a of n.values()){const n=e.values[a],r=t.values[a],{leftIsNull:l,rightIsNull:c,bothAreNull:u,leftIsAny:d,rightIsAny:p,bothAreAny:h,leftIsRange:g,rightIsRange:m}=M(n.objectType,r.objectType);if(u||h)continue;if(l&&p||c&&d){s.values[a]=new f({objectType:o});continue}if(l&&m||c&&g)return null;d?(n.minValue=-1/0,n.maxValue=1/0):p&&(r.minValue=-1/0,r.maxValue=1/0);const y=Math.max(n.minValue,r.minValue),_=Math.min(n.maxValue,r.maxValue);if(y>_)return null;s.values[a]=new f({objectType:i,minValue:y,maxValue:_})}return s}function L(e,t,n){const s=n.slice(),o=s.shift();let i=s.shift(),a=w(e,t,o.fields,i.fields),r=new Set([...o.fields,...i.fields]),l=new Map;for(const u of o.contingencies){const[e]=N(u,a.codedValueFields,!0);l.has(e)?l.get(e)?.push(u):l.set(e,[u])}for(;s.length>0;){const n=new Map,o=s.shift(),c=w(e,t,r,o.fields);for(const e of i.contingencies){const[t,s]=N(e,a.codedValueFields),o=s?b(l,t):l.get(t);if(l.has(y)&&o?.push(...j(e,l.get(y),a.codedValueFields)),null!=o)for(const i of o){const t=a.rangeFields.size>0?O(i,e,a.rangeFields):T(i,e);if(null==t)break;const[s]=N(t,c.codedValueFields,!0);n.has(s)?n.get(s)?.push(t):n.set(s,[t])}}l=n,i=o,a=c,r=new Set([...r,...i.fields])}const c=[];for(const u of i.contingencies){const[e,t]=N(u,a.codedValueFields),n=t?b(l,e):l.get(e);if(l.has(y)&&n.push(...j(u,l.get(y),a.codedValueFields)),null!=n)for(const s of n){const e=a.rangeFields.size>0?O(s,u,a.rangeFields):T(s,u);null!=e&&c.push(e)}}return c}e([c()],V.prototype,"fieldsWithContingentValues",null),e([c()],V.prototype,"layers",void 0),V=e([u("esri.widgets.support.ContingentValuesManager")],V);const E=V;export{E as default};
2
+ import{__decorate as e}from"tslib";import{Y as t}from"../../chunks/languageUtils.js";import n from"../../core/Accessor.js";import s from"../../core/Collection.js";import{abortHandle as o}from"../../core/handleUtils.js";import{getOrCreateMapValue as i}from"../../core/MapUtils.js";import{destroyMaybe as a}from"../../core/maybe.js";import r from"../../core/ReactiveMap.js";import{on as l}from"../../core/reactiveUtils.js";import{property as c,subclass as u}from"../../core/accessorSupport/decorators.js";import{UpdatingHandles as d}from"../../core/support/UpdatingHandles.js";import p from"../../layers/support/ContingentValue.js";import{getFeatureSubtype as f}from"../../layers/support/featureLayerUtils.js";import h from"../../layers/support/LayerContingentValuesCache.js";import{isFeatureLayer as g,isSubtypeGroupLayer as m}from"../../layers/support/layerUtils.js";import{valueIsValidContingentValue as y}from"../FeatureForm/featureFormUtils.js";const _="#JSAPI_CONTINGENT_VALUE_EMPTY_HASH",V="#JSAPI_CONTINGENT_VALUE_ANY_HASH",v="#JSAPI_CONTINGENT_VALUE_NULL_HASH",b={_any:"any",_code:"code",_null:"null",_range:"range"};let C=class extends n{constructor(e){super(e),this._cacheMap=new r,this._joinedContingenciesMap=new Map,this._optionsMap=new Map,this._pendingCacheLoad=new Set,this._updatingHandles=new d,this._violationsMap=new Map,this.layers=new s}initialize(){this.layers.length&&this._onLayersChange(this.layers.toArray()),this.addHandles([l(()=>this.layers,"change",({added:e})=>this._onLayersChange(e))])}destroy(){this.reset()}get _fieldsWithContingentValues(){const e=new r;return this._cacheMap.forEach((t,n)=>{e.set(n,new Set(t.fieldGroups.flatMap(e=>e.fields)))}),e}get updating(){return this._updatingHandles.updating}clear(){this._joinedContingenciesMap.clear(),this.resetOptions(),this.resetViolations()}getViolationForField(e,t,n){const s=this._violationsMap.get(e),o=N(e,t),i=s?.get(o);return i?.get(n)||null}getAllViolations(e,t){const n=this._violationsMap.get(e),s=N(e,t),o=n?.get(s);return o?Array.from(o.values()):[]}getFieldsWithContingentValues(e){return T(e)?this._fieldsWithContingentValues.get(e)??new Set:new Set}getFieldValueOptions(e){const{feature:t,layer:n,fieldName:s,emptyString:o}=e,i=I(n,t,s),a=t.getAttribute(s),l=this._optionsMap.get(n),c=N(n,t),u=l?.get(c);if(u){const e=u.get(s);if(e)return e}const d="coded-value"===i?.type?i.codedValues.map(({name:e,code:t})=>({name:e,value:t})):[],p=null==a||d.some(e=>e.value===a)?[]:[{name:`${a}`,value:a}],f=T(n)&&this._fieldsWithContingentValues.get(n)?.has(s)?this._getContingentValueOptionsForField(n,t,s,o):[];let h=null;if(f.length>0){const e=new Set(f.map(e=>e.value));h={recommended:f,other:d.filter(t=>!e.has(t.value)),unsupported:p}}else h={recommended:d,other:[],unsupported:p};if(u)u.set(s,h);else{const e=new r([[s,h]]);l?l.set(c,e):this._optionsMap.set(n,new r([[c,e]]))}return h}getJoinedContingentValues(e,t){const n=U(e,t),s=this._joinedContingenciesMap.get(n);if(s)return s;const o=this._cacheMap.get(e);if(!o)return[];const i=this._joinContingentValues(o,t);return this._joinedContingenciesMap.set(n,i),i}getRelatedFields(e,t){return this._cacheMap.get(e)?.getRelatedFields(t)??new Set}hasFieldsWithContingentValues(e){return this.getFieldsWithContingentValues(e).size>0}reset(){this.clear(),this._cacheMap.forEach(a),this._cacheMap.clear()}resetOptions(){this._optionsMap.clear()}resetOptionsForFeature(e,t){this._optionsMap.get(e)?.get(N(e,t))?.clear()}resetOptionsForField(e,t,n){this._optionsMap.get(e)?.get(N(e,t))?.delete(n)}resetOptionsForLayer(e){this._optionsMap.get(e)?.clear()}resetViolations(){this._violationsMap.clear()}resetViolationsForFeature(e,t){this._violationsMap.get(e)?.get(t)?.clear()}resetViolationsForLayer(e){this._violationsMap.get(e)?.clear()}validateContingencyConstraints(e,t,n){const s=this._cacheMap.get(e);if(!s)return[];const o=S(t),{invalid:a,incomplete:l}=s.validateContingencyConstraints(o),c=[...a,...n?.includeIncompleteViolations?l:[]],u=new r;for(const i of c)for(const e of i.fieldGroup.fields)u.set(e,i);const d=N(e,t);return i(this._violationsMap,e,()=>new r).set(d,u),c}validateContingenciesForNonNullFields(e,t){const n=t.clone();n.attributes=Object.fromEntries(Object.entries(S(t)).filter(([e,t])=>null!=t)),this.validateContingencyConstraints(e,n)}_onLayersChange(e){e.forEach(e=>{let n=null;if(t(e)?n=e.parent:(g(e)||m(e))&&(n=e),!n||this._cacheMap.get(n)||this._pendingCacheLoad.has(n))return;const s=new AbortController,i=o(s),a=Symbol();this.addHandles(i,a),this._pendingCacheLoad.add(n),this._updatingHandles.addPromise(h.createLoadedLayerContingentValuesCache(n,s).then(t=>{t&&!s.signal.aborted&&(this.removeHandles(a),this._cacheMap.set(n,t),this.resetOptionsForLayer(e))}).finally(()=>this._pendingCacheLoad.delete(n)))})}_getContingentValueOptionsForField(e,t,n,s){const o=this.getJoinedContingentValues(e,t),i=new Map,a={code:"",name:s??"No value"},{_code:r,_null:l}=b;for(const c of o){const s=c.values[n];if(s?.objectType===r||s?.objectType===l){const{code:o,name:r}=s.codedValue&&s.objectType!==l?s.codedValue:a;!i.has(o)&&this._isValidContingency(e,t,n,c)&&i.set(o,{name:r,value:o})}}return[...i.values()]}_isValidContingency(e,t,n,s){const o=this._fieldsWithContingentValues.get(e);for(const i of o??[]){const e=t.attributes[i];if(i!==n&&null!=e&&s.values.hasOwnProperty(i)&&!y(e,s.values[i]))return!1}return!0}_joinContingentValues(e,t){const n=e.subtypeFieldName,s=n?t.attributes[n]:null,o=[];for(const r of e.fieldGroups){const{contingencies:e,fields:t,name:n}=r,i=[];for(const o of e)o.isRetired||null!=o.subtype&&o.subtype.code!==s||i.push({values:o.values});i.length>0&&o.push({name:n,fields:t,contingencies:i})}const[i,a]=A(o);return[...i.flatMap(n=>E(e.layer,t,n)),...a.flatMap(e=>e.contingencies)]}};function M(e,t){const{_any:n,_null:s,_range:o}=b;return{leftIsNull:e===s,rightIsNull:t===s,bothAreNull:e===s&&t===s,leftIsAny:e===n,rightIsAny:t===n,bothAreAny:e===n&&t===n,leftIsRange:e===o,rightIsRange:t===o}}function F(e,t,n){const{_any:s}=b,o=Array.from(n);return t.filter(t=>o.every(n=>{const o=t.values[n],i=e.values[n];return o.objectType===s||i.objectType===s||o.codedValue?.code===i.codedValue?.code}))}function j(e,t){const n=new RegExp(`${t}$`),s=[];for(const[o,i]of e){if(o===V)break;n.test(o)&&s.push(...i)}return s}function w(e,t,n,s){const o=Array.isArray(n)?new Set(n):n,i=Array.isArray(s)?new Set(s):s,a=o.size<i.size?o:i,r=a===o?i:o,l=new Set,c=new Set;for(const u of a)if(r.has(u)){const n=I(e,t,u,!0);if(null==n)continue;switch(n.type){case"coded-value":l.add(u);break;case"range":c.add(u)}}return{codedValueFields:l,rangeFields:c}}function A(e){const t=new Map,n=[],s=new Set;for(const l of e)for(const e of l.fields)if(t.has(e)){const o=t.get(e),i=l,a=[o.name,i.name].sort().join("|");if(s.has(a))continue;n.push([o,i]),s.add(a),t.set(e,i)}else t.set(e,l);const o=new Set(n.flat()),i=new Set(e);for(const l of o)i.delete(l);const a=new Map,r=new Map;for(const l of new Set(n.flat())){const e=Symbol(l.name);a.set(e,new Set([l])),r.set(l,e)}for(const[l,c]of n){const e=r.get(l),t=r.get(c);if(e===t)continue;const n=a.get(e),s=a.get(t);for(const o of s)n.add(o),r.set(o,e);a.delete(t)}return[[...a.values()].map(e=>[...e]),[...i]]}function S(e){return e.attributes}function I(e,t,n,s=!1){return e.getFieldDomain(n,{feature:t,excludeImpliedDomains:s})}function N(e,t){return t.getObjectId()??t.attributes[e.objectIdField]??t}function L(e,t,n=!1){if(t.size<1)return[_,!1];const{_any:s,_null:o}=b,i=[];let a=!1;for(const r of t.values()){const t=e.values[r];if(t.objectType===s){if(n)return[V,!0];a=!0,i.push(`${r}:.*`)}else t.objectType===o?i.push(`${r}:${v}`):i.push(`${r}:${t.codedValue?.code}`)}return[i.sort().join("&"),a]}function T(e){return g(e)||m(e)}function O(e,t){const n={values:{...e.values,...t.values}};for(const[s,o]of Object.entries(n.values))o.objectType===b._any&&null!=e.values[s]&&(n.values[s]=e.values[s]);return n}function H(e,t,n){const s=O(e,t),{_null:o,_range:i}=b;for(const a of n.values()){const n=e.values[a],r=t.values[a],{leftIsNull:l,rightIsNull:c,bothAreNull:u,leftIsAny:d,rightIsAny:f,bothAreAny:h,leftIsRange:g,rightIsRange:m}=M(n.objectType,r.objectType);if(u||h)continue;if(l&&f||c&&d){s.values[a]=new p({objectType:o});continue}if(l&&m||c&&g)return null;d?(n.minValue=-1/0,n.maxValue=1/0):f&&(r.minValue=-1/0,r.maxValue=1/0);const y=Math.max(n.minValue,r.minValue),_=Math.min(n.maxValue,r.maxValue);if(y>_)return null;s.values[a]=new p({objectType:i,minValue:y,maxValue:_})}return s}function E(e,t,n){const s=n.slice(),o=s.shift();let i=s.shift(),a=w(e,t,o.fields,i.fields),r=new Set([...o.fields,...i.fields]),l=new Map;for(const u of o.contingencies){const[e]=L(u,a.codedValueFields,!0);l.has(e)?l.get(e)?.push(u):l.set(e,[u])}for(;s.length>0;){const n=new Map,o=s.shift(),c=w(e,t,r,o.fields);for(const e of i.contingencies){const[t,s]=L(e,a.codedValueFields),o=s?j(l,t):l.get(t);if(l.has(V)&&o?.push(...F(e,l.get(V),a.codedValueFields)),null!=o)for(const i of o){const t=a.rangeFields.size>0?H(i,e,a.rangeFields):O(i,e);if(null==t)break;const[s]=L(t,c.codedValueFields,!0);n.has(s)?n.get(s)?.push(t):n.set(s,[t])}}l=n,i=o,a=c,r=new Set([...r,...i.fields])}const c=[];for(const u of i.contingencies){const[e,t]=L(u,a.codedValueFields),n=t?j(l,e):l.get(e);if(l.has(V)&&n.push(...F(u,l.get(V),a.codedValueFields)),null!=n)for(const s of n){const e=a.rangeFields.size>0?H(s,u,a.rangeFields):O(s,u);null!=e&&c.push(e)}}return c}function U(e,t){let n=e.url??e.uid;if(e.subtypes&&e.subtypes.length>0){const s=f(e,t);n+=`|${s?`subtype:${s.code}`:"subtype:null"}`}if(g(e)&&e.types&&e.typeIdField&&e.types.some(e=>Object.keys(e.domains).length>0)){n+=`|${`type:${t.getAttribute(e.typeIdField)}`}`}return n}e([c()],C.prototype,"_fieldsWithContingentValues",null),e([c()],C.prototype,"layers",void 0),e([c()],C.prototype,"updating",null),C=e([u("esri.widgets.support.ContingentValuesManager")],C);export{C as ContingentValuesManager,T as isLayerWithContingentValues};
@@ -0,0 +1,81 @@
1
+ import type SelectionOperation from "../../../views/selection/SelectionOperation.js";
2
+ import type { EventedAccessor } from "../../../core/Evented.js";
3
+ import type { SelectableViewUnion, SelectionOperationEvents, SelectionSource, SelectionToolName } from "../../../views/selection/types.js";
4
+ import type { SelectionToolOptions } from "./types.js";
5
+
6
+ /** @internal */
7
+ export interface SelectionToolbarViewModelProperties extends Partial<Pick<SelectionToolbarViewModel, "persistSelection" | "sources" | "view">> {}
8
+
9
+ /**
10
+ * Events emitted by SelectionToolbarViewModel.
11
+ *
12
+ * @internal
13
+ */
14
+ export interface SelectionToolbarViewModelEvents {
15
+ /** @internal */
16
+ "before-activate": CustomEvent<{ toolName: SelectionToolName | null; }>;
17
+ /** @internal */
18
+ complete: SelectionOperationEvents["complete"];
19
+ /** @internal */
20
+ "selection-change": SelectionOperationEvents["selection-change"];
21
+ }
22
+
23
+ /**
24
+ * Manages interactive selection operations for rectangle, lasso, and custom selection tools.
25
+ *
26
+ * @internal
27
+ */
28
+ export default class SelectionToolbarViewModel extends EventedAccessor {
29
+ /** @internal */
30
+ "@eventTypes": SelectionToolbarViewModelEvents;
31
+ /** @internal */
32
+ constructor(properties?: SelectionToolbarViewModelProperties);
33
+ /** @internal */
34
+ get activeOperation(): SelectionOperation | null | undefined;
35
+ /**
36
+ * @default true
37
+ * @internal
38
+ */
39
+ accessor persistSelection: boolean;
40
+ /** @internal */
41
+ accessor sources: SelectionSource[] | null | undefined;
42
+ /**
43
+ * The view from which the widget will operate.
44
+ *
45
+ * @name view
46
+ * @instance
47
+ * @type {module:esri/views/MapView | module:esri/views/SceneView}
48
+ * @internal
49
+ */
50
+ accessor view: SelectableViewUnion | null | undefined;
51
+ /**
52
+ * Activates a selection operation.
53
+ *
54
+ * @param options - Optional tool and operation configuration.
55
+ * @returns The active operation, or `undefined` when activation is blocked.
56
+ * @internal
57
+ */
58
+ activate(options?: SelectionToolOptions): SelectionOperation | undefined;
59
+ /**
60
+ * Activates a configured tool by name.
61
+ *
62
+ * @param toolName - The tool identifier to activate.
63
+ * @returns The active operation, or `undefined` when no matching tool configuration is available.
64
+ * @internal
65
+ */
66
+ activateTool(toolName: SelectionToolName): SelectionOperation | undefined;
67
+ /**
68
+ * Cancels the active selection operation, if present.
69
+ *
70
+ * @internal
71
+ */
72
+ cancel(): void;
73
+ /**
74
+ * Toggles a tool by name.
75
+ *
76
+ * @param toolName - The tool identifier to toggle.
77
+ * @returns The active operation when toggled on, or `undefined` when toggled off.
78
+ * @internal
79
+ */
80
+ toggleTool(toolName: SelectionToolName): SelectionOperation | undefined;
81
+ }
@@ -0,0 +1,4 @@
1
+ import type { SelectionOperationProperties } from "../../../views/selection/SelectionOperation.js";
2
+
3
+ /** @internal */
4
+ export type SelectionToolOptions = SelectionOperationProperties;
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{isTextInput as t}from"../../../form/support/formUtils.js";import{validateDomainValue as e}from"../../../layers/support/domainUtils.js";import{validateFieldValue as n}from"../../../layers/support/fieldUtils.js";import{dateTimeIsInRange as r}from"../dateUtils.js";const i=(t,e)=>{if(!t)return!0;const{operations:n}=t;switch(e){case"INSERT":return n.supportsAdd;case"UPDATE":case"DELETE":return n.supportsUpdate;default:return!0}};function o(t,i){const{dataType:o,domain:u,field:l,maxLength:a,minLength:s,multipleChoice:c,range:m,required:f}=i;if(null==t)return f?"input-validation-error::cannot-be-empty":null;if("text"===o&&"string"==typeof t){if(s>-1&&t.length<s)return"length-validation-error::too-short";if(a>-1&&t.length>a)return"length-validation-error::too-long";if(c){const e=g(t,c.choiceDelimiter);if(null!=c.maximumChoices&&e>c.maximumChoices)return"multiple-choice-validation-error::too-many-selected-choices";if(null!=c.minimumChoices&&e<c.minimumChoices)return"multiple-choice-validation-error::too-few-selected-choices"}}return"date"!==o||r({type:l.type,range:m,value:t})?u?e(l,t,u):n(l,t):"numeric-range-validation-error::out-of-range"}function u(t,e){return!(!l(t)||!l(e))||t===e}function l(t){return null==t||""===t}function a({dataType:e,field:n,input:r}){const i=-1;if("date"===e)return i;const o=c(n.length);if(!r||!t(r))return o;const u=c(r.maxLength);return u===i?o:o===i?u:Math.min(o,u)}function s({dataType:e,field:n,input:r}){const i=-1;if("date"===e)return i;if(!r||!t(r))return i;const o=c(r.minLength);if(o<0)return i;const u=c(n.length);return u>i&&u<o?i:o}function c(t){return"number"==typeof t&&t>-1?t:-1}const m={type:"number"},f={type:"number",intlOptions:{notation:"scientific"}};function p(t){return t>=1e7||t<=-1e7}function d(t,e){return null!=t.max&&null!=t.min?e.outsideRange:null!=t.max?e.outsideRangeMax:e.outsideRangeMin}const h=t=>t&&!Number.isNaN(t.valueOf());function g(t,e){return""===t?0:t.split(e).map(t=>t.trim()).filter(t=>""!==t).length}export{i as capabilitiesAllowEditType,h as dateIsValid,c as ensureMinOrMaxLength,a as getMaxLength,s as getMinLength,d as getRangeErrorMessage,l as isEmptyValue,m as numberFormatOptions,f as scientificNumberFormatOptions,p as shouldUseScientificNotation,o as validateFormValue,u as valuesAreEquivalent};
2
+ import{isTextInput as t}from"../../../form/support/formUtils.js";import{validateDomainValue as e}from"../../../layers/support/domainUtils.js";import{validateFieldValue as n}from"../../../layers/support/fieldUtils.js";import{dateTimeIsInRange as i}from"../dateUtils.js";const r=(t,e)=>{if(!t)return!0;const{operations:n}=t;switch(e){case"INSERT":return n.supportsAdd;case"UPDATE":case"DELETE":return n.supportsUpdate;default:return!0}};function o(t,r){const{dataType:o,domain:u,field:l,maxLength:a,minLength:s,multipleChoice:c,range:m,required:f}=r;if(null==t)return f?"input-validation-error::cannot-be-empty":"text"===o&&null!=c?.minimumChoices&&0<c.minimumChoices?"multiple-choice-validation-error::too-few-selected-choices":null;if("text"===o&&"string"==typeof t){if(s>-1&&t.length<s)return"length-validation-error::too-short";if(a>-1&&t.length>a)return"length-validation-error::too-long";if(c){const e=g(t,c.choiceDelimiter);if(null!=c.maximumChoices&&e>c.maximumChoices)return"multiple-choice-validation-error::too-many-selected-choices";if(null!=c.minimumChoices&&e<c.minimumChoices)return"multiple-choice-validation-error::too-few-selected-choices"}}return"date"!==o||i({type:l.type,range:m,value:t})?u?e(l,t,u):n(l,t):"numeric-range-validation-error::out-of-range"}function u(t,e){return!(!l(t)||!l(e))||t===e}function l(t){return null==t||""===t}function a({dataType:e,field:n,input:i}){const r=-1;if("date"===e)return r;const o=c(n.length);if(!i||!t(i))return o;const u=c(i.maxLength);return u===r?o:o===r?u:Math.min(o,u)}function s({dataType:e,field:n,input:i}){const r=-1;if("date"===e)return r;if(!i||!t(i))return r;const o=c(i.minLength);if(o<0)return r;const u=c(n.length);return u>r&&u<o?r:o}function c(t){return"number"==typeof t&&t>-1?t:-1}const m={type:"number"},f={type:"number",intlOptions:{notation:"scientific"}};function p(t){return t>=1e7||t<=-1e7}function d(t,e){return null!=t.max&&null!=t.min?e.outsideRange:null!=t.max?e.outsideRangeMax:e.outsideRangeMin}const h=t=>t&&!Number.isNaN(t.valueOf());function g(t,e){return""===t?0:t.split(e).map(t=>t.trim()).filter(t=>""!==t).length}export{r as capabilitiesAllowEditType,h as dateIsValid,c as ensureMinOrMaxLength,a as getMaxLength,s as getMinLength,d as getRangeErrorMessage,l as isEmptyValue,m as numberFormatOptions,f as scientificNumberFormatOptions,p as shouldUseScientificNotation,o as validateFormValue,u as valuesAreEquivalent};
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[241,5804],{68197(e,t,r){r.d(t,{A:()=>u});var i=r(40876),o=r(4576),s=r(34727),n=r(56507);function a(e){return(0,s.qE)((0,n.Vr)(e),0,255)}function l(e,t){const r=e.toString(16).padStart(2,"0");return t?r.slice(0,1):r}class u{static blendColors(e,t,r,i=new u){return i.r=Math.round(e.r+(t.r-e.r)*r),i.g=Math.round(e.g+(t.g-e.g)*r),i.b=Math.round(e.b+(t.b-e.b)*r),i.a=e.a+(t.a-e.a)*r,i._sanitize()}static fromRgb(e,t){const r=(0,i.lT)(e);return r?u.fromArray(r,t):null}static fromHex(e,t=new u){const r=(0,i.oW)(e);return r?u.fromArray(r,t):null}static fromArray(e,t=new u){return t._set(Number(e[0]),Number(e[1]),Number(e[2]),Number(e[3])),isNaN(t.a)&&(t.a=1),t._sanitize()}static fromString(e,t){const r=(0,i.Eq)(e);return r?u.fromArray(r,t):null}static fromJSON(e){return null!=e?new u([e[0],e[1],e[2],(e[3]??255)/255]):void 0}toUnitRGB(){return[this.r/255,this.g/255,this.b/255]}toUnitRGBA(e){return e??=[0,0,0,0],e[0]=this.r/255,e[1]=this.g/255,e[2]=this.b/255,e[3]=null!=this.a?this.a:1,e}constructor(e){this.r=255,this.g=255,this.b=255,this.a=1,e&&this.setColor(e)}get isBright(){return.299*this.r+.587*this.g+.114*this.b>=127}setColor(e){if("string"==typeof e)u.fromString(e,this);else if((0,o.yc)(e))u.fromArray(e,this);else{const t=e;this._set(t.r??0,t.g??0,t.b??0,t.a??1),e instanceof u||this._sanitize()}return this}toRgb(){return[this.r,this.g,this.b]}toRgba(){return[this.r,this.g,this.b,this.a]}toHex(e){const t=e?.capitalize??!1,r=e?.digits??6,i=3===r||4===r,o=4===r||8===r,s=`#${l(this.r,i)}${l(this.g,i)}${l(this.b,i)}${o?l(Math.round(255*this.a),i):""}`;return t?s.toUpperCase():s}toCss(e=!1){const t=this.r+", "+this.g+", "+this.b;return e?`rgba(${t}, ${this.a})`:`rgb(${t})`}toString(){return this.toCss(!0)}toJSON(){return this.toArray()}toArray(e=0){const t=a(this.r),r=a(this.g),i=a(this.b);return 0===e||1!==this.a?[t,r,i,a(255*this.a)]:[t,r,i]}clone(){return new u(this.toRgba())}hash(){return this.r<<24|this.g<<16|this.b<<8|255*this.a}equals(e){return null!=e&&e.r===this.r&&e.g===this.g&&e.b===this.b&&e.a===this.a}_sanitize(){return this.r=(0,i.c1)(this.r),this.g=(0,i.c1)(this.g),this.b=(0,i.c1)(this.b),this.a=(0,i.G1)(this.a),this}_set(e,t,r,i){this.r=e,this.g=t,this.b=r,this.a=i}}u.prototype.declaredClass="esri.Color"},40876(e,t,r){r.d(t,{Eq:()=>h,G1:()=>y,TS:()=>s,Tf:()=>v,V6:()=>o,Vm:()=>g,ay:()=>l,c1:()=>f,c4:()=>n,j5:()=>u,lT:()=>p,oW:()=>d,xV:()=>b});const i={transparent:[0,0,0,0],black:[0,0,0,1],silver:[192,192,192,1],gray:[128,128,128,1],white:[255,255,255,1],maroon:[128,0,0,1],red:[255,0,0,1],purple:[128,0,128,1],fuchsia:[255,0,255,1],green:[0,128,0,1],lime:[0,255,0,1],olive:[128,128,0,1],yellow:[255,255,0,1],navy:[0,0,128,1],blue:[0,0,255,1],teal:[0,128,128,1],aqua:[0,255,255,1],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],blanchedalmond:[255,235,205,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],oldlace:[253,245,230,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],rebeccapurple:[102,51,153,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],whitesmoke:[245,245,245,1],yellowgreen:[154,205,50,1]};function o(e){return!!i[e]||!!i[e.toLowerCase()]}function s(e){return i[e]??i[e.toLowerCase()]}function n(e){return[...s(e)]}function a(e,t,r){r<0&&++r,r>1&&--r;const i=6*r;return i<1?e+(t-e)*i:2*r<1?t:3*r<2?e+(t-e)*(2/3-r)*6:e}function l(e,t,r,i=1){const o=(e%360+360)%360/360,s=r<=.5?r*(t+1):r+t-r*t,n=2*r-s;return[Math.round(255*a(n,s,o+1/3)),Math.round(255*a(n,s,o)),Math.round(255*a(n,s,o-1/3)),i]}function u(e){const t=e.length>5,r=t?8:4,i=(1<<r)-1,o=t?1:17,s=t?9===e.length:5===e.length;let n=Number("0x"+e.slice(1));if(isNaN(n))return null;const a=[0,0,0,1];let l;return s&&(l=n&i,n>>=r,a[3]=o*l/255),l=n&i,n>>=r,a[2]=o*l,l=n&i,n>>=r,a[1]=o*l,l=n&i,n>>=r,a[0]=o*l,a}function d(e){if(!e.startsWith("#")||isNaN(Number(`0x${e.slice(1)}`)))return null;switch(e.length){case 4:case 5:{const t=parseInt(e.slice(1,2),16),r=parseInt(e.slice(2,3),16),i=parseInt(e.slice(3,4),16),o=4===e.length?15:parseInt(e.slice(4),16);return[t+16*t,r+16*r,i+16*i,(o+16*o)/255]}case 7:case 9:return[parseInt(e.slice(1,3),16),parseInt(e.slice(3,5),16),parseInt(e.slice(5,7),16),(7===e.length?255:parseInt(e.slice(7),16))/255];default:return null}}function p(e){const t=e.toLowerCase().match(/^(rgba?|hsla?)\(([\s.\-,%0-9]+)\)/);if(t){const e=t[2].split(/\s*,\s*/),r=t[1];if("rgb"===r&&3===e.length||"rgba"===r&&4===e.length){if(e[0].endsWith("%")){const t=e.map(e=>2.56*parseFloat(e));return 4===e.length&&(t[3]=parseFloat(e[3])),c(t)}return c(e.map(e=>parseFloat(e)))}if("hsl"===r&&3===e.length||"hsla"===r&&4===e.length)return l(parseFloat(e[0]),parseFloat(e[1])/100,parseFloat(e[2])/100,parseFloat(e[3]??"1"))}return null}function c(e){return e[0]=f(e[0]),e[1]=f(e[1]),e[2]=f(e[2]),e[3]=4===e.length?y(e[3]):1,e}function h(e){let t=o(e)?s(e):null;return t??=p(e),t??=d(e),t}function g(e){const t=h(e);return null!=t?[t[0]/255,t[1]/255,t[2]/255,t[3]]:null}function y(e){return m(e,0,1)}function f(e){return Math.round(m(e,0,255))}function m(e,t,r){return e=Number(e),isNaN(e)?r:e<t?t:e>r?r:e}const v=2.2,w=1/v;function b(e){return e**w}},46130(e,t,r){r.d(t,{v:()=>o});var i=r(76553);function o(e){e?.writtenProperties&&e.writtenProperties.forEach(({target:e,propName:t,newOrigin:r})=>{(0,i.H)(e)&&r&&e.originOf(t)!==r&&e.updateOrigin(t,r)})}},60999(e,t,r){r.d(t,{DZ:()=>g,Ke:()=>h,Tj:()=>d,UT:()=>y,aD:()=>m,jJ:()=>u});var i=r(5482),o=r(69622),s=r(97768),n=r(17676),a=r(10107),l=r(64108);function u(e,t,r){return(0,n.Lx)(e.map((e,i)=>t.apply(r,[e,i])))}async function d(e,t,r){return(await(0,n.Lx)(e.map((e,i)=>t.apply(r,[e,i])))).map(e=>e.value)}function p(e){return{ok:!0,value:e}}function c(e){return{ok:!1,error:e}}async function h(e){if(null==e)return{ok:!1,error:new Error("no promise provided")};try{return p(await e)}catch(e){return c(e)}}async function g(e){try{return p(await e)}catch(e){return(0,n.QP)(e),c(e)}}function y(e,t){return new f(e,t)}let f=class extends o.A{get value(){return null!=(e=this._result)&&!0===e.ok?e.value:null;var e}get error(){return null!=(e=this._result)&&!1===e.ok?e.error:null;var e}get finished(){return null!=this._result}constructor(e,t){super({}),this._result=null,this._abortHandle=null,this.abort=()=>{this._abortController=(0,s.DC)(this._abortController)},this.remove=this.abort,this._abortController=new AbortController;const{signal:r}=this._abortController;this.promise=e(r),this.promise.then(e=>{this._result=p(e),this._cleanup()},e=>{this._result=c(e),this._cleanup()}),this._abortHandle=(0,n.u7)(t,this.abort)}normalizeCtorArgs(){return{}}destroy(){this.abort()}_cleanup(){this._abortHandle=(0,s.xt)(this._abortHandle),this._abortController=null}};(0,i.Cg)([(0,a.MZ)()],f.prototype,"value",null),(0,i.Cg)([(0,a.MZ)()],f.prototype,"error",null),(0,i.Cg)([(0,a.MZ)()],f.prototype,"finished",null),(0,i.Cg)([(0,a.MZ)()],f.prototype,"promise",void 0),(0,i.Cg)([(0,a.MZ)()],f.prototype,"_result",void 0),f=(0,i.Cg)([(0,l.$)("esri.core.asyncUtils.ReactiveTask")],f);class m{constructor(){this._sequence=Promise.resolve()}async acquire(){let e;this._sequence=new Promise(t=>{e=this._sequence.then(()=>t,()=>t)});const t=await e;return{[Symbol.dispose]:t}}async run(e){const t={stack:[],error:void 0,hasError:!1};try{return(0,i.mS)(t,await this.acquire(),!1),await e()}catch(e){t.error=e,t.hasError=!0}finally{(0,i.hk)(t)}}}},76553(e,t,r){function i(e){return e&&"getAtOrigin"in e&&"originOf"in e}r.d(t,{H:()=>i})},13069(e,t,r){r.d(t,{AG:()=>a,lk:()=>o,vD:()=>n,yS:()=>s});const i="randomUUID"in crypto;function o(){if(i)return crypto.randomUUID();const e=crypto.getRandomValues(new Uint16Array(8));e[3]=4095&e[3]|16384,e[4]=16383&e[4]|32768;const t=t=>e[t].toString(16).padStart(4,"0");return t(0)+t(1)+"-"+t(2)+"-"+t(3)+"-"+t(4)+"-"+t(5)+t(6)+t(7)}function s(){return`{${o().toUpperCase()}}`}function n(){return`{${o()}}`}function a(e){const t=e.toUpperCase();return e.startsWith("{")?t:`{${t}}`}},54239(e,t,r){r.d(t,{A:()=>f});var i,o=r(5482),s=r(4576),n=r(66552),a=r(25482),l=r(86211),u=r(67076),d=r(91429),p=r(43937),c=r(36005);const h=(0,n.O)()({orthometric:"gravity-related-height",gravity_related_height:"gravity-related-height",ellipsoidal:"ellipsoidal"}),g=h.jsonValues.slice();(0,s.Xy)(g,"orthometric");const y=(0,n.O)()({meter:"meters",foot:"feet","us-foot":"us-feet","clarke-foot":"clarke-feet","clarke-yard":"clarke-yards","clarke-link":"clarke-links","sears-yard":"sears-yards","sears-foot":"sears-feet","sears-chain":"sears-chains","benoit-1895-b-chain":"benoit-1895-b-chains","indian-yard":"indian-yards","indian-1937-yard":"indian-1937-yards","gold-coast-foot":"gold-coast-feet","sears-1922-truncated-chain":"sears-1922-truncated-chains","50-kilometers":"50-kilometers","150-kilometers":"150-kilometers"});let f=i=class extends a.o{constructor(e){super(e),this.heightModel="gravity-related-height",this.heightUnit="meters",this.vertCRS=null}writeHeightModel(e,t,r){return h.write(e,t,r)}readHeightModel(e,t,r){return h.read(e)||(r?.messages&&r.messages.push(function(e,t){return new u.A("height-model:unsupported",`Height model of value '${e}' is not supported`,t)}(e,{context:r})),null)}readHeightUnit(e,t,r){return y.read(e)||(r?.messages&&r.messages.push(m(e,{context:r})),null)}readHeightUnitService(e,t,r){return(0,l.LA)(e)||y.read(e)||(r?.messages&&r.messages.push(m(e,{context:r})),null)}readVertCRS(e,t){return t.vertCRS||t.ellipsoid||t.geoid}clone(){return new i({heightModel:this.heightModel,heightUnit:this.heightUnit,vertCRS:this.vertCRS})}equals(e){return!!e&&(this===e||this.heightModel===e.heightModel&&this.heightUnit===e.heightUnit&&this.vertCRS===e.vertCRS)}static deriveUnitFromSR(e,t){const r=(0,l.k1)(t);return new i({heightModel:e.heightModel,heightUnit:r??void 0,vertCRS:e.vertCRS})}write(e,t){return t={origin:"web-scene",...t},super.write(e,t)}static fromJSON(e){if(!e)return null;const t=new i;return t.read(e,{origin:"web-scene"}),t}};function m(e,t){return new u.A("height-unit:unsupported",`Height unit of value '${e}' is not supported`,t)}(0,o.Cg)([(0,d.MZ)({type:h.apiValues,constructOnly:!0,json:{origins:{"web-scene":{type:g,default:"ellipsoidal",write:{isRequired:!0}}}}})],f.prototype,"heightModel",void 0),(0,o.Cg)([(0,p.K)("web-scene","heightModel")],f.prototype,"writeHeightModel",null),(0,o.Cg)([(0,c.w)(["web-scene","service"],"heightModel")],f.prototype,"readHeightModel",null),(0,o.Cg)([(0,d.MZ)({type:y.apiValues,constructOnly:!0,json:{origins:{"web-scene":{type:y.jsonValues,write:{writer:y.write,isRequired:!0}}}}})],f.prototype,"heightUnit",void 0),(0,o.Cg)([(0,c.w)("web-scene","heightUnit")],f.prototype,"readHeightUnit",null),(0,o.Cg)([(0,c.w)("service","heightUnit")],f.prototype,"readHeightUnitService",null),(0,o.Cg)([(0,d.MZ)({type:String,constructOnly:!0,json:{origins:{"web-scene":{write:!0}}}})],f.prototype,"vertCRS",void 0),(0,o.Cg)([(0,c.w)("service","vertCRS",["vertCRS","ellipsoid","geoid"])],f.prototype,"readVertCRS",null),f=i=(0,o.Cg)([(0,d.$K)("esri.geometry.HeightModelInfo")],f)},99959(e,t,r){r.d(t,{A:()=>s});var i=r(5482),o=r(91429);let s=class{};s=(0,i.Cg)([(0,o.$K)("esri.graphic.GraphicOrigin")],s)},89808(e,t,r){r.d(t,{Q:()=>i});const i=Symbol("getSliceableSymbol")},77885(e,t,r){r.r(t),r.d(t,{default:()=>ae});var i=r(5482),o=r(37838),s=r(11254),n=r(69540),a=r(49186),l=r(4718),u=r(53966),d=r(25728),p=r(93637),c=r(17676),h=r(84952),g=r(91429),y=r(60950),f=r(89808),m=r(99959);const v=Symbol("isPointCloudGraphicOrigin");var w;class b extends m.A{get[(w=v,y.ym)](){return this.layer}get[f.Q](){return this.layer}constructor(e){super(),this[w]=!0,this.type="point-cloud",this.layer=e}get id(){return this.layer.id}}var C=r(4146),S=r(52136),I=r(18768),A=r(69208),M=r(34287),x=r(8303),R=r(25036),P=r(58947),_=r(56507),j=r(25482);let T=class extends j.o{constructor(e){super(e),this.field=null,this.type=null}clone(){return console.warn(".clone() is not implemented for "+this.declaredClass),null}};(0,i.Cg)([(0,g.MZ)({type:String,json:{write:{enabled:!0,isRequired:!0}}})],T.prototype,"field",void 0),(0,i.Cg)([(0,g.MZ)({readOnly:!0,nonNullable:!0,json:{read:!1,write:{isRequired:!0}}})],T.prototype,"type",void 0),T=(0,i.Cg)([(0,g.$K)("esri.layers.pointCloudFilters.PointCloudFilter")],T);const Z=T;var O,q=r(93223);let U=O=class extends Z{constructor(e){super(e),this.requiredClearBits=null,this.requiredSetBits=null,this.type="bitfield"}clone(){return new O({field:this.field,requiredClearBits:(0,l.o8)(this.requiredClearBits),requiredSetBits:(0,l.o8)(this.requiredSetBits)})}};(0,i.Cg)([(0,g.MZ)({type:[_.jz],json:{write:{enabled:!0,overridePolicy(){return{enabled:!0,isRequired:!this.requiredSetBits}}}}})],U.prototype,"requiredClearBits",void 0),(0,i.Cg)([(0,g.MZ)({type:[_.jz],json:{write:{enabled:!0,overridePolicy(){return{enabled:!0,isRequired:!this.requiredClearBits}}}}})],U.prototype,"requiredSetBits",void 0),(0,i.Cg)([(0,q.e)({pointCloudBitfieldFilter:"bitfield"})],U.prototype,"type",void 0),U=O=(0,i.Cg)([(0,g.$K)("esri.layers.pointCloudFilters.PointCloudBitfieldFilter")],U);const F=U;var N;let k=N=class extends Z{constructor(e){super(e),this.includedReturns=[],this.type="return"}clone(){return new N({field:this.field,includedReturns:(0,l.o8)(this.includedReturns)})}};(0,i.Cg)([(0,g.MZ)({type:[["firstOfMany","last","lastOfMany","single"]],json:{write:{enabled:!0,isRequired:!0}}})],k.prototype,"includedReturns",void 0),(0,i.Cg)([(0,q.e)({pointCloudReturnFilter:"return"})],k.prototype,"type",void 0),k=N=(0,i.Cg)([(0,g.$K)("esri.layers.pointCloudFilters.PointCloudReturnFilter")],k);const E=k;var L;let $=L=class extends Z{constructor(e){super(e),this.mode="exclude",this.type="value",this.values=[]}clone(){return new L({field:this.field,mode:this.mode,values:(0,l.o8)(this.values)})}};(0,i.Cg)([(0,g.MZ)({type:["exclude","include"],json:{write:{enabled:!0,isRequired:!0}}})],$.prototype,"mode",void 0),(0,i.Cg)([(0,q.e)({pointCloudValueFilter:"value"})],$.prototype,"type",void 0),(0,i.Cg)([(0,g.MZ)({type:[Number],json:{write:{enabled:!0,isRequired:!0}}})],$.prototype,"values",void 0),$=L=(0,i.Cg)([(0,g.$K)("esri.layers.pointCloudFilters.PointCloudValueFilter")],$);const V={key:"type",base:Z,typeMap:{value:$,bitfield:F,return:E}};var K,B=r(10873),z=r(20437),H=r(17036),D=r(93705),G=r(63531),J=r(51857);let W=K=class extends J.A{constructor(e){super(e),this.type="point-cloud-rgb",this.field=null}clone(){return new K({...this.cloneProperties(),field:(0,l.o8)(this.field)})}};(0,i.Cg)([(0,q.e)({pointCloudRGBRenderer:"point-cloud-rgb"})],W.prototype,"type",void 0),(0,i.Cg)([(0,g.MZ)({type:String,json:{write:{isRequired:!0}}})],W.prototype,"field",void 0),W=K=(0,i.Cg)([(0,g.$K)("esri.renderers.PointCloudRGBRenderer")],W);const Y=W;var Q=r(69846),X=r(48425);const ee={key:"type",base:J.A,typeMap:{"point-cloud-class-breaks":G.A,"point-cloud-rgb":Y,"point-cloud-stretch":Q.A,"point-cloud-unique-value":X.A},errorContext:"renderer"};var te=r(24212),re=r(30291),ie=r(36005),oe=r(43937);const se=(0,H.p)();let ne=class extends((0,P.w6)((0,I.b)((0,M.q)((0,x.A)((0,R.j)((0,d.M)((0,A.d)((0,S.p)((0,n.OU)(C.A)))))))))){constructor(...e){super(...e),this.operationalLayerType="PointCloudLayer",this.popupEnabled=!0,this.popupTemplate=null,this.opacity=1,this.filters=[],this.fields=null,this.fieldsIndex=null,this.outFields=null,this.path=null,this.legendEnabled=!0,this.renderer=null,this.type="point-cloud",this.graphicOrigin=new b(this),this.rootPagePromise=null}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}get defaultPopupTemplate(){return this.attributeStorageInfo?this.createPopupTemplate():null}getFieldDomain(e){const t=this.fieldsIndex.get(e);return t?.domain?t.domain:null}readServiceFields(e,t,r){return Array.isArray(e)?e.map(e=>{const t=new z.A;return"FieldTypeInteger"===e.type&&((e=(0,l.o8)(e)).type="esriFieldTypeInteger"),t.read(e,r),t}):Array.isArray(t.attributeStorageInfo)?t.attributeStorageInfo.map(e=>new z.A({name:e.name,type:"ELEVATION"===e.name?"double":"integer"})):null}set elevationInfo(e){null!=e&&"absolute-height"!==e.mode||this._set("elevationInfo",e),this._validateElevationInfo(e)}writeRenderer(e,t,r,i){(0,p.sM)("layerDefinition.drawingInfo.renderer",e.write({},i),t)}load(e){return this.addResolvingPromise(this._load(e)),Promise.resolve(this)}async _load(e){await this.loadFromPortal({supportedTypes:["Scene Service"]},e).catch(c.QP),await this._fetchService(e?.signal),await this._fetchRootPageAndUpdateExtent(e?.signal)}async _fetchRootPageAndUpdateExtent(e){this.rootPagePromise=this._fetchRootPage(e);const{fullExtent:t}=this;if(null!=t&&!t.hasZ){const e=await this.rootPagePromise;(0,P.qM)(t,e?.nodes?.[0]?.obb)}}async _fetchRootPage(e){const t=`${this.parsedUrl?.path??""}/nodepages/0`;try{return(await(0,s.A)(t,{query:{f:"json",...this.customParameters,token:this.apiKey},responseType:"json",signal:e})).data}catch(e){throw new a.A("pointcloudlayer:root-page-missing","Root page missing.",{error:e,url:t})}}createPopupTemplate(e){const t=(0,re.tn)(this,e);return t&&(this._formatPopupTemplateReturnsField(t),this._formatPopupTemplateRGBField(t)),t}_formatPopupTemplateReturnsField(e){const t=this.fieldsIndex.get("RETURNS");if(!t)return;const r=e.fieldInfos?.find(e=>e.fieldName===t.name);if(!r)return;const i=new D.A({name:"pcl-returns-decoded",title:t.alias||t.name,expression:`\n var returnValue = $feature.${t.name};\n return (returnValue % 16) + " / " + Floor(returnValue / 16);\n `});e.expressionInfos=[...e.expressionInfos||[],i],r.fieldName="expression/pcl-returns-decoded"}_formatPopupTemplateRGBField(e){const t=this.fieldsIndex.get("RGB");if(!t)return;const r=e.fieldInfos?.find(e=>e.fieldName===t.name);if(!r)return;const i=new D.A({name:"pcl-rgb-decoded",title:t.alias||t.name,expression:`\n var rgb = $feature.${t.name};\n var red = Floor(rgb / 65536, 0);\n var green = Floor((rgb - (red * 65536)) / 256,0);\n var blue = rgb - (red * 65536) - (green * 256);\n\n return "rgb(" + red + "," + green + "," + blue + ")";\n `});e.expressionInfos=[...e.expressionInfos||[],i],r.fieldName="expression/pcl-rgb-decoded"}async queryCachedStatistics(e,t){if(await this.load(t),!this.attributeStorageInfo)throw new a.A("scenelayer:no-cached-statistics","Cached statistics are not available for this layer");const r=this.fieldsIndex.get(e);if(!r)throw new a.A("pointcloudlayer:field-unexisting",`Field '${e}' does not exist on the layer`);for(const e of this.attributeStorageInfo)if(e.name===r.name){const r=(0,h.fj)(this.parsedUrl?.path??"",`./statistics/${e.key}`);return(0,s.A)(r,{query:{f:"json",...this.customParameters,token:this.apiKey},responseType:"json",signal:t?t.signal:null}).then(e=>e.data)}throw new a.A("pointcloudlayer:no-cached-statistics","Cached statistics for this attribute are not available")}async saveAs(e,t){return this._debouncedSaveOperations(1,{...t,getTypeKeywords:()=>this._getTypeKeywords(),portalItemLayerType:"point-cloud"},e)}async save(){const e={getTypeKeywords:()=>this._getTypeKeywords(),portalItemLayerType:"point-cloud"};return this._debouncedSaveOperations(0,e)}validateLayer(e){if(e.layerType&&"PointCloud"!==e.layerType)throw new a.A("pointcloudlayer:layer-type-not-supported","PointCloudLayer does not support this layer type",{layerType:e.layerType});if(isNaN(this.version.major)||isNaN(this.version.minor))throw new a.A("layer:service-version-not-supported","Service version is not supported.",{serviceVersion:this.version.versionString,supportedVersions:"1.x-2.x"});if(this.version.major>2)throw new a.A("layer:service-version-too-new","Service version is too new.",{serviceVersion:this.version.versionString,supportedVersions:"1.x-2.x"})}hasCachedStatistics(e){return null!=this.attributeStorageInfo&&this.attributeStorageInfo.some(t=>t.name===e)}_getTypeKeywords(){return["PointCloud"]}_validateElevationInfo(e){(0,te.XF)(u.A.getLogger(this),(0,te.B)("Point cloud layers","absolute-height",e)),(0,te.XF)(u.A.getLogger(this),(0,te.tW)("Point cloud layers",e))}};(0,i.Cg)([(0,g.MZ)({type:["PointCloudLayer"]})],ne.prototype,"operationalLayerType",void 0),(0,i.Cg)([(0,g.MZ)(B.M6)],ne.prototype,"popupEnabled",void 0),(0,i.Cg)([(0,g.MZ)({type:o.A,json:{name:"popupInfo",write:!0}})],ne.prototype,"popupTemplate",void 0),(0,i.Cg)([(0,g.MZ)({readOnly:!0,json:{read:!1}})],ne.prototype,"defaultPopupTemplate",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0,json:{write:!1,read:!1,origins:{"web-document":{write:!1,read:!1}}}})],ne.prototype,"opacity",void 0),(0,i.Cg)([(0,g.MZ)({type:["show","hide"]})],ne.prototype,"listMode",void 0),(0,i.Cg)([(0,g.MZ)({types:[V],json:{origins:{service:{read:{source:"filters"}}},name:"layerDefinition.filters",write:!0}})],ne.prototype,"filters",void 0),(0,i.Cg)([(0,g.MZ)({type:[z.A]})],ne.prototype,"fields",void 0),(0,i.Cg)([(0,g.MZ)(se.fieldsIndex)],ne.prototype,"fieldsIndex",void 0),(0,i.Cg)([(0,ie.w)("service","fields",["fields","attributeStorageInfo"])],ne.prototype,"readServiceFields",null),(0,i.Cg)([(0,g.MZ)(se.outFields)],ne.prototype,"outFields",void 0),(0,i.Cg)([(0,g.MZ)({readOnly:!0})],ne.prototype,"attributeStorageInfo",void 0),(0,i.Cg)([(0,g.MZ)(B.Yj)],ne.prototype,"elevationInfo",null),(0,i.Cg)([(0,g.MZ)({type:String,json:{origins:{"web-scene":{read:!0,write:!0},"portal-item":{read:!0,write:!0}},read:!1}})],ne.prototype,"path",void 0),(0,i.Cg)([(0,g.MZ)(B.fV)],ne.prototype,"legendEnabled",void 0),(0,i.Cg)([(0,g.MZ)({types:ee,json:{origins:{service:{read:{source:"drawingInfo.renderer"}}},name:"layerDefinition.drawingInfo.renderer",write:{target:{"layerDefinition.drawingInfo.renderer":{types:ee},"layerDefinition.drawingInfo.transparency":{type:Number}}}}})],ne.prototype,"renderer",void 0),(0,i.Cg)([(0,oe.K)("renderer")],ne.prototype,"writeRenderer",null),(0,i.Cg)([(0,g.MZ)({json:{read:!1},readOnly:!0})],ne.prototype,"type",void 0),(0,i.Cg)([(0,g.MZ)({readOnly:!0})],ne.prototype,"graphicOrigin",void 0),ne=(0,i.Cg)([(0,g.$K)("esri.layers.PointCloudLayer")],ne);const ae=ne},52136(e,t,r){r.d(t,{p:()=>s});var i=r(5482),o=r(91429);const s=e=>{const t=e;let r=class extends t{get apiKey(){return this._isOverridden("apiKey")?this._get("apiKey"):"portalItem"in this?this.portalItem?.apiKey:null}set apiKey(e){null!=e?this._override("apiKey",e):(this._clearOverride("apiKey"),this.clear("apiKey","user"))}};return(0,i.Cg)([(0,o.MZ)({type:String})],r.prototype,"apiKey",null),r=(0,i.Cg)([(0,o.$K)("esri.layers.mixins.APIKeyMixin")],r),r}},18768(e,t,r){r.d(t,{b:()=>a});var i=r(5482),o=r(53966),s=r(91429),n=r(60694);const a=e=>{const t=e;let r=class extends t{get title(){if(this._get("title")&&"defaults"!==this.originOf("title"))return this._get("title");if(this.url){const e=(0,n.qg)(this.url);if(e?.title)return e.title}return this._get("title")||""}set title(e){this._set("title",e)}set url(e){this._set("url",(0,n.Jf)(e,o.A.getLogger(this)))}};return(0,i.Cg)([(0,s.MZ)()],r.prototype,"title",null),(0,i.Cg)([(0,s.MZ)({type:String})],r.prototype,"url",null),r=(0,i.Cg)([(0,s.$K)("esri.layers.mixins.ArcGISService")],r),r}},69208(e,t,r){r.d(t,{d:()=>s});var i=r(5482),o=r(91429);const s=e=>{const t=e;let r=class extends t{constructor(){super(...arguments),this.customParameters=null}};return(0,i.Cg)([(0,o.MZ)({type:Object,json:{write:{overridePolicy:e=>({enabled:!!(e&&Object.keys(e).length>0)})}}})],r.prototype,"customParameters",void 0),r=(0,i.Cg)([(0,o.$K)("esri.layers.mixins.CustomParametersMixin")],r),r}},8303(e,t,r){r.d(t,{A:()=>S});var i=r(5482),o=r(92602),s=r(70333),n=r(11254),a=r(60999),l=r(49186),u=r(36563),d=r(53966),p=r(97768),c=r(17676),h=r(84952),g=r(91429),y=r(77548),f=r(20655),m=r(80812),v=r(41318),w=r(10407),b=r(36005),C=r(43937);const S=e=>{const t=e;let S=class extends t{constructor(){super(...arguments),this.resourceReferences={portalItem:null,paths:[]},this.userHasEditingPrivileges=!0,this.userHasFullEditingPrivileges=!1,this.userHasUpdateItemPrivileges=!1}destroy(){this.portalItem=(0,p.pR)(this.portalItem),this.resourceReferences.portalItem=null,this.resourceReferences.paths.length=0}get portalItem(){return this._get("portalItem")}set portalItem(e){e!==this._get("portalItem")&&(this.removeOrigin("portal-item"),this._set("portalItem",e))}readPortalItem(e,t,r){if(t.itemId)return new m.default({id:t.itemId,portal:r?.portal})}writePortalItem(e,t){e?.id&&(t.itemId=e.id)}async loadFromPortal(e,t){if(this.portalItem?.id)try{const{load:i}=await r.e(1204).then(r.bind(r,41204));return(0,c.Te)(t),await i({instance:this,supportedTypes:e.supportedTypes,validateItem:e.validateItem,supportsData:e.supportsData,layerModuleTypeMap:e.layerModuleTypeMap,populateGroupLayer:e.populateGroupLayer},t)}catch(e){throw(0,c.zf)(e)||d.A.getLogger(this).warn(`Failed to load layer (${this.title}, ${this.id}) portal item (${this.portalItem.id})\n ${e}`),e}}async reloadFromPortal(e){if(!this.loaded||!this.portalItem?.id)return!1;try{const{reload:t}=await r.e(1204).then(r.bind(r,41204)),i=new AbortController,o=(0,u.rE)(i);return this.addHandles(o,"reloadFromPortal"),await t({instance:this,supportedTypes:e.supportedTypes,validateItem:e.validateItem,supportsData:e.supportsData,layerModuleTypeMap:e.layerModuleTypeMap,populateGroupLayer:e.populateGroupLayer},{signal:i.signal})}catch(e){throw(0,c.zf)(e)||d.A.getLogger(this).warn(`Failed to reload layer (${this.title}, ${this.id}) portal item (${this.portalItem.id})\n ${e}`),e}finally{this.removeHandles("reloadFromPortal")}}async finishLoadEditablePortalLayer(e){this._set("userHasEditingPrivileges",await this._fetchUserHasEditingPrivileges(e).catch(e=>((0,c.QP)(e),!0)))}async setUserPrivileges(e,t){if(!o.A.userPrivilegesApplied)return this.finishLoadEditablePortalLayer(t);if(this.url)try{const{features:{edit:r,fullEdit:i},content:{updateItem:o}}=await this._fetchUserPrivileges(e,t);this._set("userHasEditingPrivileges",r),this._set("userHasFullEditingPrivileges",i),this._set("userHasUpdateItemPrivileges",o)}catch(e){(0,c.QP)(e)}}async _fetchUserPrivileges(e,t){let r=this.portalItem;if(!e||!r||!r.loaded||r.sourceUrl)return this._fetchFallbackUserPrivileges(t);const i=!s.id?.findCredential(this.url),o=e===r.id;if(o&&r.portal.user)return this._getUserPrivileges(r,i);let n,a;if(o)n=r.portal.url;else try{n=await(0,y.wI)(this.url,t)}catch(e){(0,c.QP)(e)}if(!n||!(0,h.b8)(n,r.portal.url))return this._fetchFallbackUserPrivileges(t);try{const e=null!=t?t.signal:null;a=await(s.id?.getCredential(`${n}/sharing`,{prompt:!1,signal:e}))}catch(e){(0,c.QP)(e)}const l=!0,u=!1,d=!1;if(!a)return{features:{edit:l,fullEdit:u},content:{updateItem:d}};try{if(o?await r.reload():(r=new m.default({id:e,portal:{url:n}}),await r.load(t)),r.portal.user)return this._getUserPrivileges(r,i)}catch(e){(0,c.QP)(e)}return{features:{edit:l,fullEdit:u},content:{updateItem:d}}}_getUserPrivileges(e,t){const r=(0,w.It)(e);return t&&(r.features.edit=!0),r}async _fetchFallbackUserPrivileges(e){let t=!0;try{t=await this._fetchUserHasEditingPrivileges(e)}catch(e){(0,c.QP)(e)}return{features:{edit:t,fullEdit:!1},content:{updateItem:!1}}}async _fetchUserHasEditingPrivileges(e){const t=this.url?s.id?.findCredential(this.url):null;if(!t)return!0;const r=I.credential===t?I.user:await this._fetchEditingUser(e);return I.credential=t,I.user=r,null==r?.privileges||r.privileges.includes("features:user:edit")}async _fetchEditingUser(e){const t=this.portalItem?.portal?.user;if(t)return t;const r=s.id?.findServerInfo(this.url??"");if(!r?.owningSystemUrl)return null;const i=`${r.owningSystemUrl}/sharing/rest`,o=f.A.getDefault();if(o&&o.loaded&&(0,h.S8)(o.restUrl)===(0,h.S8)(i))return o.user;const l=`${i}/community/self`,u=null!=e?e.signal:null,d=await(0,a.Ke)((0,n.A)(l,{authMode:"no-prompt",query:{f:"json"},signal:u}));return d.ok?v.A.fromJSON(d.value.data):null}read(e,t){t&&(t.layer=this),super.read(e,t)}write(e,t){const r=t?.portal,i=this.portalItem?.id&&(this.portalItem.portal||f.A.getDefault());return r&&i&&!(0,h.ut)(i.restUrl,r.restUrl)?(t.messages&&t.messages.push(new l.A("layer:cross-portal",`The layer '${this.title} (${this.id})' cannot be persisted because it refers to an item on a different portal than the one being saved to. To save, set layer.portalItem to null or save to the same portal as the item associated with the layer`,{layer:this})),null):super.write(e,{...t,layer:this})}};return(0,i.Cg)([(0,g.MZ)({type:m.default})],S.prototype,"portalItem",null),(0,i.Cg)([(0,b.w)("web-document","portalItem",["itemId"])],S.prototype,"readPortalItem",null),(0,i.Cg)([(0,C.K)("web-document","portalItem",{itemId:{type:String}})],S.prototype,"writePortalItem",null),(0,i.Cg)([(0,g.MZ)({clonable:!1})],S.prototype,"resourceReferences",void 0),(0,i.Cg)([(0,g.MZ)({type:Boolean,readOnly:!0})],S.prototype,"userHasEditingPrivileges",void 0),(0,i.Cg)([(0,g.MZ)({type:Boolean,readOnly:!0})],S.prototype,"userHasFullEditingPrivileges",void 0),(0,i.Cg)([(0,g.MZ)({type:Boolean,readOnly:!0})],S.prototype,"userHasUpdateItemPrivileges",void 0),S=(0,i.Cg)([(0,g.$K)("esri.layers.mixins.PortalLayer")],S),S},I={credential:null,user:null}},25036(e,t,r){r.d(t,{j:()=>s});var i=r(5482),o=r(91429);const s=e=>{const t=e;let r=class extends t{constructor(){super(...arguments),this.minScale=0,this.maxScale=0}get effectiveScaleRange(){const e={minScale:this.minScale,maxScale:this.maxScale},t=this.parent;void 0!==t?.effectiveScaleRange&&function(e,t){e.minScale=e.minScale>0?t.minScale>0?Math.min(e.minScale,t.minScale):e.minScale:t.minScale,e.maxScale=e.maxScale>0?t.maxScale>0?Math.max(e.maxScale,t.maxScale):e.maxScale:t.maxScale}(e,t.effectiveScaleRange);const r=this._get("effectiveScaleRange");return r&&r.minScale===e.minScale&&r.maxScale===e.maxScale?r:e}};return(0,i.Cg)([(0,o.MZ)({type:Number,nonNullable:!0,json:{write:!0}})],r.prototype,"minScale",void 0),(0,i.Cg)([(0,o.MZ)({type:Number,nonNullable:!0,json:{write:!0}})],r.prototype,"maxScale",void 0),(0,i.Cg)([(0,o.MZ)({readOnly:!0})],r.prototype,"effectiveScaleRange",null),r=(0,i.Cg)([(0,o.$K)("esri.layers.mixins.ScaleRangeLayer")],r),r}},58947(e,t,r){r.d(t,{w6:()=>I,qM:()=>x});var i=r(5482),o=r(11254),s=r(49186),n=r(53966),a=r(17676),l=r(91429),u=r(46130),d=r(5443),p=r(54239),c=r(16930),h=r(60694),g=r(10873),y=r(83898),f=r(73179);var m=r(20655),v=r(80812),w=r(88788),b=r(91682),C=r(26121),S=r(36005);const I=e=>{const t=e;let r=class extends t{constructor(){super(...arguments),this.spatialReference=null,this.fullExtent=null,this.heightModelInfo=null,this.minScale=0,this.maxScale=0,this.version={major:Number.NaN,minor:Number.NaN,versionString:""},this.copyright=null,this.sublayerTitleMode="item-title",this.title=null,this.layerId=null,this.url=null,this.indexInfo=null,this._debouncedSaveOperations=(0,a.sg)(async(e,t,r)=>{switch(e){case 0:return this._save(t);case 1:return this._saveAs(r,t)}})}readSpatialReference(e,t){return M(t)}readFullExtent(e,t,r){if(null!=e&&"object"==typeof e){const i=null==e.spatialReference?{...e,spatialReference:M(t)}:e;return d.A.fromJSON(i,r)}const i=t.store,o=M(t);return null==o||null==i?.extent||!Array.isArray(i.extent)||i.extent.some(e=>e<A)?null:new d.A({xmin:i.extent[0],ymin:i.extent[1],xmax:i.extent[2],ymax:i.extent[3],spatialReference:o})}parseVersionString(e){const t={major:Number.NaN,minor:Number.NaN,versionString:e},r=e.split(".");return r.length>=2&&(t.major=parseInt(r[0],10),t.minor=parseInt(r[1],10)),t}readVersion(e,t){const r=t.store,i=null!=r.version?r.version.toString():"";return this.parseVersionString(i)}readTitlePortalItem(e){return"item-title"!==this.sublayerTitleMode?void 0:e}readTitleService(e,t){if("item-title"===this.sublayerTitleMode)return this.url?(0,h.yG)(this.url,t.name):t.name;let r=t.name;if(!r&&this.url){const e=(0,h.qg)(this.url);null!=e&&(r=e.title)}const i=this.portalItem?.title;return"item-title-and-service-name"===this.sublayerTitleMode&&i&&(r=i+" - "+r),(0,h.cr)(r)}get parsedUrl(){return(0,f.h)(this,{separator:"layers"})}async _fetchIndexAndUpdateExtent(e,t){this.indexInfo=(0,y.F)(this.parsedUrl?.path??"",this.rootNode,e,this.customParameters,this.apiKey,n.A.getLogger(this),t);const{fullExtent:r}=this;null==r||r.hasZ||this._updateExtent(r,await this.indexInfo)}_updateExtent(e,t){if("page"===t?.type){const r=t.rootIndex%t.pageSize,i=t.rootPage?.nodes?.[r];x(e,i?.obb)}else if("node"===t?.type){const r=t.rootNode?.mbs;if(!Array.isArray(r)||4!==r.length||r[0]<A)return;const i=r[2],o=r[3];e.zmin=i-o,e.zmax=i+o}}async _fetchService(e){if(null==this.url)throw new s.A("sceneservice:url-not-set","Scene service can not be loaded without valid portal item or url");if(null==this.layerId&&/SceneServer\/*$/i.test(this.url)){const t=await this._fetchFirstLayerId(e);null!=t&&(this.layerId=t)}return this._fetchServiceLayer(e)}async _fetchFirstLayerId(e){const t=await(0,o.A)(this.url??"",{query:{f:"json",...this.customParameters,token:this.apiKey},responseType:"json",signal:e});if(t.data&&Array.isArray(t.data.layers)&&t.data.layers.length>0)return t.data.layers[0].id}async _fetchServiceLayer(e){const t=await(0,o.A)(this.parsedUrl?.path??"",{query:{f:"json",...this.customParameters,token:this.apiKey},responseType:"json",signal:e});t.ssl&&this.url&&(this.url=this.url.replace(/^http:/i,"https:"));let r=!1;if(t.data.layerType&&"Voxel"===t.data.layerType&&(r=!0),r)return this._fetchVoxelServiceLayer();const i=t.data;this.read(i,this._getServiceContext()),this.validateLayer(i)}async _fetchVoxelServiceLayer(e){const t=(await(0,o.A)(this.parsedUrl?.path+"/layer",{query:{f:"json",...this.customParameters,token:this.apiKey},responseType:"json",signal:e})).data;this.read(t,this._getServiceContext()),this.validateLayer(t)}_getServiceContext(){return{origin:"service",portalItem:this.portalItem,portal:this.portalItem?.portal,url:this.parsedUrl}}async _ensureLoadBeforeSave(){await this.load(),"beforeSave"in this&&"function"==typeof this.beforeSave&&await this.beforeSave()}validateLayer(e){}async _saveAs(e,t){const r={..._,...t};let i=v.default.from(e);if(!i)throw new s.A("sceneservice:portal-item-required","_saveAs() requires a portal item to save to");i.id&&(i=i.clone(),i.id=null);const o=i.portal||m.A.getDefault();await this._ensureLoadBeforeSave(),i.type=P,i.portal=o;const n=(0,w.m)(i,"portal-item",!0),a={layers:[this.write({},n)]};return await Promise.all(n.resources.pendingOperations??[]),await this._validateAgainstJSONSchema(a,n,r),this.url&&(i.url=this.url),i.title||(i.title=this.title),R(i,r,1),await o.signIn(),await o.user.addItem({item:i,folder:r?.folder,data:a}),await(0,b.r)(this.resourceReferences,n),this.portalItem=i,(0,u.v)(n),n.portalItem=i,i}async _save(e){const t={..._,...e};if(!this.portalItem)throw new s.A("sceneservice:portal-item-not-set","Portal item to save to has not been set on this SceneService");if(this.portalItem.type!==P)throw new s.A("sceneservice:portal-item-wrong-type",`Portal item needs to have type "${P}"`);await this._ensureLoadBeforeSave();const r=(0,w.m)(this.portalItem,"portal-item",!0),i={layers:[this.write({},r)]};return await Promise.all(r.resources.pendingOperations??[]),await this._validateAgainstJSONSchema(i,r,t),this.url&&(this.portalItem.url=this.url),this.portalItem.title||(this.portalItem.title=this.title),R(this.portalItem,t,0),await(0,b.S)(this.portalItem,i,this.resourceReferences,r),(0,u.v)(r),this.portalItem}async _validateAgainstJSONSchema(e,t,r){const i=r?.validationOptions;(0,C.ci)(t,{errorName:"sceneservice:save"},{ignoreUnsupported:i?.ignoreUnsupported,supplementalUnsupportedErrors:["scenemodification:unsupported"]});const o=i?.enabled,a=null;if(o&&a){const t=(await a()).validate(e,r.portalItemLayerType);if(!t.length)return;const o=`Layer item did not validate:\n${t.join("\n")}`;if(n.A.getLogger(this).error(`_validateAgainstJSONSchema(): ${o}`),"throw"===i.failPolicy){const e=t.map(e=>new s.A("sceneservice:schema-validation",e));throw new s.A("sceneservice-validate:error","Failed to save layer item due to schema validation, see `details.errors`.",{validationErrors:e})}}}};return(0,i.Cg)([(0,l.MZ)(g.id)],r.prototype,"id",void 0),(0,i.Cg)([(0,l.MZ)({type:c.A})],r.prototype,"spatialReference",void 0),(0,i.Cg)([(0,S.w)("spatialReference",["spatialReference","store.indexCRS","store.geographicCRS"])],r.prototype,"readSpatialReference",null),(0,i.Cg)([(0,l.MZ)({type:d.A})],r.prototype,"fullExtent",void 0),(0,i.Cg)([(0,S.w)("fullExtent",["fullExtent","store.extent","spatialReference","store.indexCRS","store.geographicCRS"])],r.prototype,"readFullExtent",null),(0,i.Cg)([(0,l.MZ)({readOnly:!0,type:p.A})],r.prototype,"heightModelInfo",void 0),(0,i.Cg)([(0,l.MZ)({type:Number,json:{name:"layerDefinition.minScale",write:!0,origins:{service:{read:{source:"minScale"},write:!1}}}})],r.prototype,"minScale",void 0),(0,i.Cg)([(0,l.MZ)({type:Number,json:{name:"layerDefinition.maxScale",write:!0,origins:{service:{read:{source:"maxScale"},write:!1}}}})],r.prototype,"maxScale",void 0),(0,i.Cg)([(0,l.MZ)({readOnly:!0})],r.prototype,"version",void 0),(0,i.Cg)([(0,S.w)("version",["store.version"])],r.prototype,"readVersion",null),(0,i.Cg)([(0,l.MZ)({type:String,json:{read:{source:"copyrightText"}}})],r.prototype,"copyright",void 0),(0,i.Cg)([(0,l.MZ)({type:String,json:{read:!1}})],r.prototype,"sublayerTitleMode",void 0),(0,i.Cg)([(0,l.MZ)({type:String})],r.prototype,"title",void 0),(0,i.Cg)([(0,S.w)("portal-item","title")],r.prototype,"readTitlePortalItem",null),(0,i.Cg)([(0,S.w)("service","title",["name"])],r.prototype,"readTitleService",null),(0,i.Cg)([(0,l.MZ)({type:Number,json:{origins:{service:{read:{source:"id"}},"portal-item":{write:{target:"id",isRequired:!0,ignoreOrigin:!0},read:!1}}}})],r.prototype,"layerId",void 0),(0,i.Cg)([(0,l.MZ)((0,f.b)({separator:"layers"}))],r.prototype,"url",void 0),(0,i.Cg)([(0,l.MZ)({readOnly:!0})],r.prototype,"parsedUrl",null),(0,i.Cg)([(0,l.MZ)({readOnly:!0})],r.prototype,"store",void 0),(0,i.Cg)([(0,l.MZ)({type:String,readOnly:!0,json:{read:{source:"store.rootNode"}}})],r.prototype,"rootNode",void 0),r=(0,i.Cg)([(0,l.$K)("esri.layers.mixins.SceneService")],r),r},A=-1e38;function M(e){if(null!=e.spatialReference)return c.A.fromJSON(e.spatialReference);const t=e.store,r=t.indexCRS||t.geographicCRS,i=r&&parseInt(r.slice(r.lastIndexOf("/")+1),10);return null!=i?new c.A(i):null}function x(e,t){if(null==t?.center||null==t.halfSize)throw new s.A("sceneservice:invalid-node-page","Invalid node page.");if(t.center[0]<A)return;const r=t.halfSize,i=t.center[2],o=Math.sqrt(r[0]*r[0]+r[1]*r[1]+r[2]*r[2]);e.zmin=i-o,e.zmax=i+o}function R(e,t,r){e.typeKeywords||(e.typeKeywords=[]);const i=t.getTypeKeywords();for(const t of i)e.typeKeywords.push(t);e.typeKeywords&&(e.typeKeywords=e.typeKeywords.filter((e,t,r)=>r.indexOf(e)===t),1===r&&(e.typeKeywords=e.typeKeywords.filter(e=>"Hosted Service"!==e)))}const P="Scene Service",_={getTypeKeywords:()=>[],portalItemLayerType:"unknown",validationOptions:{enabled:!0,ignoreUnsupported:!1,failPolicy:"throw"}}},83898(e,t,r){r.d(t,{F:()=>s});var i=r(11254),o=r(49186);async function s(e,t,r,s,n,a,l){let u=null;if(null!=r){const t=`${e}/nodepages/`,o=t+Math.floor(r.rootIndex/r.nodesPerPage);try{return{type:"page",rootPage:(await(0,i.A)(o,{query:{f:"json",...s,token:n},responseType:"json",signal:l})).data,rootIndex:r.rootIndex,pageSize:r.nodesPerPage,lodMetric:r.lodSelectionMetricType,urlPrefix:t}}catch(e){null!=a&&a.warn("#fetchIndexInfo()","Failed to load root node page. Falling back to node documents.",o,e),u=e}}if(!t)return null;const d=t?.split("/").pop(),p=`${e}/nodes/`,c=p+d;try{return{type:"node",rootNode:(await(0,i.A)(c,{query:{f:"json",...s,token:n},responseType:"json",signal:l})).data,urlPrefix:p}}catch(e){throw new o.A("sceneservice:root-node-missing","Root node missing.",{pageError:u,nodeError:e,url:c})}}},17036(e,t,r){r.d(t,{p:()=>l});var i=r(44208),o=r(53966),s=r(20437),n=r(95466),a=r(30524);function l(){return{fields:{type:[s.A],value:null,set:function(e){if(e&&(0,i.A)("big-integer-warning-enabled")){const t=e.filter(e=>"big-integer"===e.type||"oid"===e.type&&(e.length||0)>=8);if(t.length){const e=t.map(e=>`'${e.name}'`).join(", ");o.A.getLogger(this).warn("#fields",`Layer (title: '${this.title??"no title"}', id: '${this.id??"no id"}') references big-integer field(s): ${e}, support for which is experimental. Only integers less than ${Number.MAX_SAFE_INTEGER} (Number.MAX_SAFE_INTEGER) are supported.`)}}this._set("fields",e)}},fieldsIndex:{readOnly:!0,get(){return n.A.fromLayer(this)}},outFields:{type:[String],json:{read:!1},set:function(e){this._userOutFields=e,this.notifyChange("outFields")},get:function(){const e=this._userOutFields;if(!e?.length)return null;if(e.includes("*"))return["*"];if(!this.fields)return e;for(const t of e){const r=this.fieldsIndex?.has(t);r||o.A.getLogger("esri.layers.support.fieldProperties").error("field-attributes-layer:invalid-field",`Invalid field ${t} found in outFields`,{layer:this,outFields:e})}return(0,a.DB)(this.fieldsIndex,e)}}}}},73179(e,t,r){r.d(t,{b:()=>l,h:()=>u});var i=r(4718),o=r(53966),s=r(84952),n=r(60694),a=r(10873);function l(e){const{nonStandardUrlAllowed:t=!1,separator:r}=e??{},s=(0,i.o8)(a.OZ),l=s.json?.write;return"object"==typeof l&&l&&(l.writer=function(e,t,i,o){(0,n.LS)(this,e,r,t,o)}),{...s,set:function(e){if(null==e)return void this._set("url",e);const r=(0,n.HZ)({layer:this,url:e,nonStandardUrlAllowed:t,logger:o.A.getLogger(this)});this._set("url",r.url),null!=r.layerId&&this._set("layerId",r.layerId)}}}function u(e,t){const{separator:r}=t??{},i=(0,s.An)(e.url);return null!=i&&(null!=e.dynamicDataSource?i.path=(0,s.fj)(i.path,"dynamicLayer"):null!=e.layerId&&(i.path=(0,s.fj)(i.path,r??"",e.layerId.toString()))),i}},5757(e,t,r){r.d(t,{B:()=>o,P:()=>i});const i=Symbol("PopupTemplateInstance");function o(e){return null!=e&&"object"==typeof e&&i in e}},88788(e,t,r){r.d(t,{m:()=>n,v:()=>s});var i=r(84952),o=r(20655);function s(e,t){return{...a(e,t),readResourcePaths:[]}}function n(e,t,r){const o=(0,i.An)(e.itemUrl);return{...a(e,t),messages:[],writtenProperties:[],blockedRelativeUrls:[],verifyItemRelativeUrls:o?{rootPath:o.path,writtenUrls:[]}:null,resources:r?{toAdd:[],toUpdate:[],toKeep:[],pendingOperations:[]}:null}}function a(e,t){return{origin:t,url:(0,i.An)(e.itemUrl),portal:e.portal||o.A.getDefault(),portalItem:e}}},10407(e,t,r){r.d(t,{It:()=>h,LG:()=>n,OM:()=>u,Sm:()=>d,Y:()=>a,bK:()=>l,mm:()=>c,sQ:()=>p});var i=r(91218),o=r(16930),s=r(28735);function n(e,t){if(!a(e,t)){const r=e.typeKeywords;r?r.push(t):e.typeKeywords=[t]}}function a(e,t){return!!e.typeKeywords?.includes(t)}function l(e){return a(e,c.HOSTED_SERVICE)}function u(e,t){const r=e.typeKeywords;if(r){const e=r.indexOf(t);e>-1&&r.splice(e,1)}}function d(e,t,r){r?n(e,t):u(e,t)}async function p(e){const t=e.clone().normalize();let r;if(t.length>1)for(const e of t)r?e.width>r.width&&(r=e):r=e;else r=t[0];return async function(e){const t=e.spatialReference;if(t.isWGS84)return e.clone();if(t.isWebMercator)return(0,s.ci)(e);const r=o.A.WGS84;return await(0,i.initializeProjection)(t,r),(0,i.project)(e,r)}(r)}const c={CHARTS:"Charts",DYNAMIC:"Dynamic",DEVELOPER_BASEMAP:"DeveloperBasemap",GROUP_LAYER_MAP:"Map",HOSTED_SERVICE:"Hosted Service",JSAPI:"ArcGIS API for JavaScript",LOCAL_SCENE:"ViewingMode-Local",METADATA:"Metadata",MULTI_LAYER:"Multilayer",ORIENTED_IMAGERY_LAYER:"OrientedImageryLayer",SINGLE_LAYER:"Singlelayer",SUBTYPE_GROUP_LAYER:"SubtypeGroupLayer",SUBTYPE_GROUP_TABLE:"SubtypeGroupTable",TABLE:"Table",TILED_IMAGERY:"Tiled Imagery"};function h(e){const{portal:t,isOrgItem:r,itemControl:i}=e,o=t.user?.privileges;let s=!o||o.includes("features:user:edit"),n=!!r&&!!o?.includes("features:user:fullEdit");const a="update"===i||"admin"===i;return a?n=s=!0:n&&(s=!0),{features:{edit:s,fullEdit:n},content:{updateItem:a}}}},15804(e,t,r){r.d(t,{addOrUpdateResources:()=>a,bg:()=>c,cL:()=>p,fetchResources:()=>n,removeAllResources:()=>u,removeResource:()=>l});var i=r(11254),o=r(49186),s=r(84952);async function n(e,t={},r){await e.load(r);const i=(0,s.fj)(e.itemUrl,"resources"),{start:o=1,num:n=10,sortOrder:a="asc",sortField:l="resource"}=t,u={query:{start:o,num:n,sortOrder:a,sortField:l,token:e.apiKey},signal:r?.signal},d=await e.portal.request(i,u);return{total:d.total,nextStart:d.nextStart,resources:d.resources.map(({created:t,size:r,resource:i})=>({created:new Date(t),size:r,resource:e.resourceFromPath(i)}))}}async function a(e,t,r,i){const n=new Map;for(const{resource:e,content:i,compress:s,access:a}of t){if(!e.hasPath())throw new o.A(`portal-item-resource-${r}:invalid-path`,"Resource does not have a valid path");const[t,l]=d(e.path),u=`${t}/${s??""}/${a??""}`;n.has(u)||n.set(u,{prefix:t,compress:s,access:a,files:[]}),n.get(u).files.push({fileName:l,content:i})}await e.load(i);const a=(0,s.fj)(e.userItemUrl,"add"===r?"addResources":"updateResources");for(const{prefix:t,compress:r,access:o,files:s}of n.values()){const n=25;for(let l=0;l<s.length;l+=n){const u=s.slice(l,l+n),d=new FormData;t&&"."!==t&&d.append("resourcesPrefix",t),r&&d.append("compress","true"),o&&d.append("access",o);let p=0;for(const{fileName:e,content:t}of u)d.append("file"+ ++p,t,e);d.append("f","json"),await e.portal.request(a,{method:"post",body:d,signal:i?.signal})}}}async function l(e,t,r){if(!t.hasPath())throw new o.A("portal-item-resources-remove:invalid-path","Resource does not have a valid path");await e.load(r);const i=(0,s.fj)(e.userItemUrl,"removeResources");await e.portal.request(i,{method:"post",query:{resource:t.path},signal:r?.signal}),t.portalItem=null}async function u(e,t){await e.load(t);const r=(0,s.fj)(e.userItemUrl,"removeResources");return e.portal.request(r,{method:"post",query:{deleteAll:!0},signal:t?.signal})}function d(e){const t=e.lastIndexOf("/");return-1===t?[".",e]:[e.slice(0,t),e.slice(t+1)]}async function p(e){return"blob"===e.type?e.blob:"json"===e.type?new Blob([e.jsonString],{type:"application/json"}):(await(0,i.A)(e.url,{responseType:"blob"})).data}function c(e,t){if(!e.hasPath())return null;const[r,,i]=function(e){const[t,r]=function(e){const t=(0,s.Zo)(e);return null==t?[e,""]:[e.slice(0,e.length-t.length-1),`.${t}`]}(e),[i,o]=d(t);return[i,o,r]}(e.path);return e.portalItem.resourceFromPath((0,s.fj)(r,t+i))}},63531(e,t,r){r.d(t,{A:()=>m});var i,o=r(5482),s=r(4718),n=r(91429),a=r(51857),l=r(20061),u=r(68197),d=r(25482),p=r(56507);let c=i=class extends d.o{constructor(e){super(e),this.description=null,this.label=null,this.minValue=0,this.maxValue=0,this.color=null}clone(){return new i({description:this.description,label:this.label,minValue:this.minValue,maxValue:this.maxValue,color:(0,s.o8)(this.color)})}};(0,o.Cg)([(0,n.MZ)({type:String,json:{write:!0}})],c.prototype,"description",void 0),(0,o.Cg)([(0,n.MZ)({type:String,json:{write:!0}})],c.prototype,"label",void 0),(0,o.Cg)([(0,n.MZ)({type:Number,json:{read:{source:"classMinValue"},write:{target:"classMinValue",isRequired:!0}}})],c.prototype,"minValue",void 0),(0,o.Cg)([(0,n.MZ)({type:Number,json:{read:{source:"classMaxValue"},write:{target:"classMaxValue",isRequired:!0}}})],c.prototype,"maxValue",void 0),(0,o.Cg)([(0,n.MZ)({type:u.A,json:{type:[p.jz],write:{isRequired:!0}}})],c.prototype,"color",void 0),c=i=(0,o.Cg)([(0,n.$K)("esri.renderers.support.pointCloud.ColorClassBreakInfo")],c);const h=c;var g,y=r(19356),f=r(93223);let m=g=class extends a.A{constructor(e){super(e),this.type="point-cloud-class-breaks",this.field=null,this.legendOptions=null,this.fieldTransformType=null,this.colorClassBreakInfos=null}clone(){return new g({...this.cloneProperties(),field:this.field,fieldTransformType:this.fieldTransformType,colorClassBreakInfos:(0,s.o8)(this.colorClassBreakInfos),legendOptions:(0,s.o8)(this.legendOptions)})}};(0,o.Cg)([(0,f.e)({pointCloudClassBreaksRenderer:"point-cloud-class-breaks"})],m.prototype,"type",void 0),(0,o.Cg)([(0,n.MZ)({json:{write:{isRequired:!0}},type:String})],m.prototype,"field",void 0),(0,o.Cg)([(0,n.MZ)({type:l.A,json:{write:!0}})],m.prototype,"legendOptions",void 0),(0,o.Cg)([(0,n.MZ)({type:y.i.apiValues,json:{type:y.i.jsonValues,read:y.i.read,write:y.i.write}})],m.prototype,"fieldTransformType",void 0),(0,o.Cg)([(0,n.MZ)({type:[h],json:{write:{isRequired:!0}}})],m.prototype,"colorClassBreakInfos",void 0),m=g=(0,o.Cg)([(0,n.$K)("esri.renderers.PointCloudClassBreaksRenderer")],m)},51857(e,t,r){r.d(t,{A:()=>S});var i,o=r(5482),s=r(66552),n=r(25482),a=r(4718),l=r(91429);let u=i=class extends n.o{constructor(e){super(e),this.field=null,this.minValue=0,this.maxValue=255}clone(){return new i({field:this.field,minValue:this.minValue,maxValue:this.maxValue})}};(0,o.Cg)([(0,l.MZ)({type:String,json:{write:{isRequired:!0}}})],u.prototype,"field",void 0),(0,o.Cg)([(0,l.MZ)({type:Number,nonNullable:!0,json:{write:{isRequired:!0}}})],u.prototype,"minValue",void 0),(0,o.Cg)([(0,l.MZ)({type:Number,nonNullable:!0,json:{write:{isRequired:!0}}})],u.prototype,"maxValue",void 0),u=i=(0,o.Cg)([(0,l.$K)("esri.renderers.support.pointCloud.ColorModulation")],u);const d=u,p=new s.J({pointCloudFixedSizeAlgorithm:"fixed-size",pointCloudSplatAlgorithm:"splat"});let c=class extends n.o{};(0,o.Cg)([(0,l.MZ)({type:p.apiValues,readOnly:!0,nonNullable:!0,json:{type:p.jsonValues,read:!1,write:{writer:p.write,isRequired:!0}}})],c.prototype,"type",void 0),c=(0,o.Cg)([(0,l.$K)("esri.renderers.support.pointCloud.PointSizeAlgorithm")],c);const h=c;var g,y=r(93223);let f=g=class extends h{constructor(e){super(e),this.type="fixed-size",this.size=0,this.useRealWorldSymbolSizes=null}clone(){return new g({size:this.size,useRealWorldSymbolSizes:this.useRealWorldSymbolSizes})}};(0,o.Cg)([(0,y.e)({pointCloudFixedSizeAlgorithm:"fixed-size"})],f.prototype,"type",void 0),(0,o.Cg)([(0,l.MZ)({type:Number,nonNullable:!0,json:{write:{isRequired:!0}}})],f.prototype,"size",void 0),(0,o.Cg)([(0,l.MZ)({type:Boolean,json:{write:!0}})],f.prototype,"useRealWorldSymbolSizes",void 0),f=g=(0,o.Cg)([(0,l.$K)("esri.renderers.support.pointCloud.PointSizeFixedSizeAlgorithm")],f);const m=f;var v;let w=v=class extends h{constructor(e){super(e),this.type="splat",this.scaleFactor=1}clone(){return new v({scaleFactor:this.scaleFactor})}};(0,o.Cg)([(0,y.e)({pointCloudSplatAlgorithm:"splat"})],w.prototype,"type",void 0),(0,o.Cg)([(0,l.MZ)({type:Number,value:1,nonNullable:!0,json:{write:{isRequired:!0}}})],w.prototype,"scaleFactor",void 0),w=v=(0,o.Cg)([(0,l.$K)("esri.renderers.support.pointCloud.PointSizeSplatAlgorithm")],w);const b={key:"type",base:h,typeMap:{"fixed-size":m,splat:w}},C=(0,s.O)()({pointCloudClassBreaksRenderer:"point-cloud-class-breaks",pointCloudRGBRenderer:"point-cloud-rgb",pointCloudStretchRenderer:"point-cloud-stretch",pointCloudUniqueValueRenderer:"point-cloud-unique-value"});let S=class extends n.o{constructor(e){super(e),this.type=void 0,this.pointSizeAlgorithm=null,this.colorModulation=null,this.pointsPerInch=10}clone(){return console.warn(".clone() is not implemented for "+this.declaredClass),null}cloneProperties(){return{pointSizeAlgorithm:(0,a.o8)(this.pointSizeAlgorithm),colorModulation:(0,a.o8)(this.colorModulation),pointsPerInch:(0,a.o8)(this.pointsPerInch)}}};(0,o.Cg)([(0,l.MZ)({type:C.apiValues,readOnly:!0,nonNullable:!0,json:{type:C.jsonValues,read:!1,write:{writer:C.write,isRequired:!0}}})],S.prototype,"type",void 0),(0,o.Cg)([(0,l.MZ)({types:b,json:{write:!0}})],S.prototype,"pointSizeAlgorithm",void 0),(0,o.Cg)([(0,l.MZ)({type:d,json:{write:!0}})],S.prototype,"colorModulation",void 0),(0,o.Cg)([(0,l.MZ)({json:{write:!0},nonNullable:!0,type:Number})],S.prototype,"pointsPerInch",void 0),S=(0,o.Cg)([(0,l.$K)("esri.renderers.PointCloudRenderer")],S)},69846(e,t,r){r.d(t,{A:()=>c});var i,o=r(5482),s=r(4718),n=r(91429),a=r(51857),l=r(20061),u=r(19356),d=r(72500),p=r(93223);let c=i=class extends a.A{constructor(e){super(e),this.type="point-cloud-stretch",this.field=null,this.legendOptions=null,this.fieldTransformType=null,this.stops=null}clone(){return new i({...this.cloneProperties(),field:(0,s.o8)(this.field),fieldTransformType:(0,s.o8)(this.fieldTransformType),stops:(0,s.o8)(this.stops),legendOptions:(0,s.o8)(this.legendOptions)})}};(0,o.Cg)([(0,p.e)({pointCloudStretchRenderer:"point-cloud-stretch"})],c.prototype,"type",void 0),(0,o.Cg)([(0,n.MZ)({json:{write:{isRequired:!0}},type:String})],c.prototype,"field",void 0),(0,o.Cg)([(0,n.MZ)({type:l.A,json:{write:!0}})],c.prototype,"legendOptions",void 0),(0,o.Cg)([(0,n.MZ)({type:u.i.apiValues,json:{type:u.i.jsonValues,read:u.i.read,write:u.i.write}})],c.prototype,"fieldTransformType",void 0),(0,o.Cg)([(0,n.MZ)({type:[d.A],json:{write:{isRequired:!0}}})],c.prototype,"stops",void 0),c=i=(0,o.Cg)([(0,n.$K)("esri.renderers.PointCloudStretchRenderer")],c)},48425(e,t,r){r.d(t,{A:()=>m});var i,o=r(5482),s=r(4718),n=r(91429),a=r(51857),l=r(20061),u=r(68197),d=r(25482),p=r(56507);let c=i=class extends d.o{constructor(e){super(e),this.description=null,this.label=null,this.values=null,this.color=null}clone(){return new i({description:this.description,label:this.label,values:(0,s.o8)(this.values),color:(0,s.o8)(this.color)})}};(0,o.Cg)([(0,n.MZ)({type:String,json:{write:!0}})],c.prototype,"description",void 0),(0,o.Cg)([(0,n.MZ)({type:String,json:{write:!0}})],c.prototype,"label",void 0),(0,o.Cg)([(0,n.MZ)({type:[String],json:{write:{isRequired:!0}}})],c.prototype,"values",void 0),(0,o.Cg)([(0,n.MZ)({type:u.A,json:{type:[p.jz],write:{isRequired:!0}}})],c.prototype,"color",void 0),c=i=(0,o.Cg)([(0,n.$K)("esri.renderers.support.pointCloud.ColorUniqueValueInfo")],c);const h=c;var g,y=r(19356),f=r(93223);let m=g=class extends a.A{constructor(e){super(e),this.type="point-cloud-unique-value",this.field=null,this.fieldTransformType=null,this.colorUniqueValueInfos=null,this.legendOptions=null}clone(){return new g({...this.cloneProperties(),field:(0,s.o8)(this.field),fieldTransformType:(0,s.o8)(this.fieldTransformType),colorUniqueValueInfos:(0,s.o8)(this.colorUniqueValueInfos),legendOptions:(0,s.o8)(this.legendOptions)})}};(0,o.Cg)([(0,f.e)({pointCloudUniqueValueRenderer:"point-cloud-unique-value"})],m.prototype,"type",void 0),(0,o.Cg)([(0,n.MZ)({json:{write:{isRequired:!0}},type:String})],m.prototype,"field",void 0),(0,o.Cg)([(0,n.MZ)({type:y.i.apiValues,json:{type:y.i.jsonValues,read:y.i.read,write:y.i.write}})],m.prototype,"fieldTransformType",void 0),(0,o.Cg)([(0,n.MZ)({type:[h],json:{write:{isRequired:!0}}})],m.prototype,"colorUniqueValueInfos",void 0),(0,o.Cg)([(0,n.MZ)({type:l.A,json:{write:!0}})],m.prototype,"legendOptions",void 0),m=g=(0,o.Cg)([(0,n.$K)("esri.renderers.PointCloudUniqueValueRenderer")],m)},20061(e,t,r){r.d(t,{A:()=>h});var i,o=r(5482),s=r(69540),n=r(66552),a=r(25482),l=r(91429),u=r(56507),d=r(93223);const p=(0,n.O)()({ascendingValues:"ascending-values",descendingValues:"descending-values"});let c=i=class extends((0,s.OU)(a.o)){static from(e){return(0,u.PZ)(i,e)}constructor(e){super(e),this.title=null,this.order=null}};(0,o.Cg)([(0,l.MZ)({type:String,json:{write:!0}})],c.prototype,"title",void 0),(0,o.Cg)([(0,d.e)(p)],c.prototype,"order",void 0),c=i=(0,o.Cg)([(0,l.$K)("esri.renderers.support.RendererLegendOptions")],c);const h=c},19356(e,t,r){r.d(t,{i:()=>i});const i=new(r(66552).J)({none:"none",lowFourBit:"low-four-bit",highFourBit:"high-four-bit",absoluteValue:"absolute-value",moduloTen:"modulo-ten"})},72500(e,t,r){r.d(t,{A:()=>p});var i,o=r(5482),s=r(68197),n=r(25482),a=r(91429),l=r(56507),u=r(43937);let d=i=class extends n.o{constructor(e){super(e),this.color=null,this.label=null,this.value=null}writeValue(e,t,r){t[r]=e??0}clone(){return new i({color:this.color&&this.color.clone(),label:this.label,value:this.value})}equals(e){return this===e||this.value===e.value&&this.label===e.label&&(this.color===e.color||null!=this.color&&null!=e.color&&this.color.equals(e.color))}};(0,o.Cg)([(0,a.MZ)({type:s.A,json:{type:[l.jz],write:{isRequired:!0}}})],d.prototype,"color",void 0),(0,o.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],d.prototype,"label",void 0),(0,o.Cg)([(0,a.MZ)({type:Number,json:{write:{writerEnsuresNonNull:!0}}})],d.prototype,"value",void 0),(0,o.Cg)([(0,u.K)("value")],d.prototype,"writeValue",null),d=i=(0,o.Cg)([(0,a.$K)("esri.renderers.visualVariables.support.ColorStop")],d);const p=d},30291(e,t,r){r.d(t,{tn:()=>u});var i=r(37838),o=r(30524),s=r(41227),n=r(89893),a=r(66159),l=r(68780);function u({displayField:e,editFieldsInfo:t,fields:r,objectIdField:l,title:u},h){if(!r)return null;const y=function(e,t){const r=t?.visibleFieldNames;return function({fields:e,ignoreFieldTypes:t,sortDisabled:r}){const i=e;return t&&(e=e.filter(e=>!t.includes(e.type))),e===i&&(e=e.slice()),!0!==r&&e.sort(p),e}({fields:e.fields??[],ignoreFieldTypes:t?.ignoreFieldTypes||g,sortDisabled:t?.sortDisabled}).map(t=>new s.A({fieldName:t.name,isEditable:(0,o.R$)(t,e),label:t.alias,format:c(t),visible:d(t,{...e,visibleFieldNames:r})}))}({editFieldsInfo:t,fields:r,objectIdField:l},h);if(!y.length)return null;const f=function(e){const t=(0,o.mB)(e),{titleBase:r}=e;return t?`${r}: {${t.trim()}}`:r??""}({titleBase:u,fields:r,displayField:e}),m=[new a.A,new n.A];return new i.A({title:f,content:m,fieldInfos:y})}const d=(e,t)=>t.visibleFieldNames?t.visibleFieldNames.has(e.name):(0,o.Bz)(e,t);function p(e,t){return"oid"===e.type?-1:"oid"===t.type?1:h(e)?-1:h(t)?1:(e.alias||e.name).toLocaleLowerCase().localeCompare((t.alias||t.name).toLocaleLowerCase())}function c(e){switch(e.type){case"small-integer":case"integer":return new l.A({digitSeparator:!0,places:0});case"single":case"double":return new l.A({digitSeparator:!0,places:2});case"string":return(0,o.JL)(e.name)?new l.A({digitSeparator:!0,places:0}):void 0;default:return}}function h(e){if("name"===(e.name&&e.name.toLowerCase()))return!0;const t=e.alias?.toLowerCase();return"name"===t}const g=["geometry","blob","raster","guid","xml"]},91682(e,t,r){r.d(t,{S:()=>l,r:()=>a});var i=r(49186),o=r(17676),s=r(13069),n=r(15804);async function a(e,t,r){const i=await u(e,t,r);await d(i,t,r)}async function l(e,t,r,i,o){const s=await u(r,i,o);await e.update({data:t}),await d(s,i,o)}async function u(e,t,a){if(!t?.resources)return;const l=t.portalItem===e.portalItem?new Set(e.paths):new Set;e.paths.length=0,e.portalItem=t.portalItem;const u=new Set(t.resources.toKeep.map(e=>e.resource.path)),d=new Set,p=[];u.forEach(t=>{l.delete(t),e.paths.push(t)});const c=[],h=[],g=[];for(const r of t.resources.toUpdate)if(l.delete(r.resource.path),u.has(r.resource.path)||d.has(r.resource.path)){const{resource:t,content:i,finish:o}=r,a=(0,n.bg)(t,(0,s.lk)());e.paths.push(a.path),c.push({resource:a,content:await(0,n.cL)(i),compress:r.compress}),o&&g.push(()=>o(a))}else{e.paths.push(r.resource.path),h.push({resource:r.resource,content:await(0,n.cL)(r.content),compress:r.compress});const t=r.finish;t&&g.push(()=>t(r.resource)),d.add(r.resource.path)}for(const r of t.resources.toAdd)if(e.paths.push(r.resource.path),l.has(r.resource.path))l.delete(r.resource.path);else{c.push({resource:r.resource,content:await(0,n.cL)(r.content),compress:r.compress});const e=r.finish;e&&g.push(()=>e(r.resource))}if(c.length||h.length){const{addOrUpdateResources:e}=await Promise.resolve().then(r.bind(r,15804));await e(t.portalItem,c,"add",a),await e(t.portalItem,h,"update",a)}if(g.forEach(e=>e()),0===p.length)return l;const y=await(0,o.Ol)(p);if((0,o.Te)(a),y.length>0)throw new i.A("save:resources","Failed to save one or more resources",{errors:y});return l}async function d(e,t,r){if(!e||!t.portalItem)return;const i=[];for(const o of e){const e=t.portalItem.resourceFromPath(o);i.push(e.portalItem.removeResource(e,r))}await(0,o.Lx)(i)}},26121(e,t,r){r.d(t,{I6:()=>l,ci:()=>a,dL:()=>n});var i=r(49186),o=r(77548),s=r(59923);async function n(e){const t=[];for(const r of e.allLayers)if("beforeSave"in r&&"function"==typeof r.beforeSave){const e=r.beforeSave();e&&t.push(e)}await Promise.allSettled(t)}function a(e,t,r){let o=(e.messages??[]).filter(({type:e})=>"error"===e).map(({name:e,message:t,details:r})=>new i.A(e,t,r));if(e.blockedRelativeUrls&&(o=o.concat(e.blockedRelativeUrls.map(e=>(0,s.GL)("url",`Relative url '${e}' is not supported`)))),r){const{ignoreUnsupported:e,supplementalUnsupportedErrors:t=[],requiredPropertyChecksDisabled:i}=r;e&&(o=o.filter(({name:e})=>!(s.MG.has(e)||t.includes(e)))),i&&(o=o.filter(e=>"web-document-write:property-required"!==e.name))}if(o.length>0)throw new i.A(t.errorName,"Failed to save due to unsupported or invalid content. See 'details.errors' for more detailed information",{errors:o})}function l(e){return(0,o.qd)(e).some(e=>!!e.charts?.length)}}}]);