@arcgis/core 4.24.0-next.20220427 → 4.24.0-next.20220430

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 (276) hide show
  1. package/WebMap.js +1 -1
  2. package/analysis/LineOfSightAnalysis.js +1 -1
  3. package/assets/esri/core/workers/RemoteClient.js +1 -1
  4. package/assets/esri/core/workers/chunks/{3a43a2918b44781aaf85.js → 055a0ebf22a82f859474.js} +1 -1
  5. package/assets/esri/core/workers/chunks/{3273b6be43eeb49ee842.js → 0b12ff7b2ed2838afbb8.js} +1 -1
  6. package/assets/esri/core/workers/chunks/0e25548573baf855e394.js +1 -0
  7. package/assets/esri/core/workers/chunks/0edd4c3ca6e7d749d0e5.js +1 -0
  8. package/assets/esri/core/workers/chunks/133f971e72a1a6277ac4.js +1 -0
  9. package/assets/esri/core/workers/chunks/{c388ac33496f004d56f3.js → 135a90ae61f3b3cae91b.js} +1 -1
  10. package/assets/esri/core/workers/chunks/{54f9b1ab9d472bf4baca.js → 1facbda248863cf72cbd.js} +1 -1
  11. package/assets/esri/core/workers/chunks/1fb2d7abe6c8efa84695.js +1 -0
  12. package/assets/esri/core/workers/chunks/2133499e642193f6738f.js +1 -0
  13. package/assets/esri/core/workers/chunks/{dee63bfc108b4e5893a3.js → 2cf3934b3ecabdf207c8.js} +1 -1
  14. package/assets/esri/core/workers/chunks/{3c572629f46e5093223c.js → 30333a95dc0a44e23fb5.js} +1 -1
  15. package/assets/esri/core/workers/chunks/{7afe89eafab00afb31f2.js → 30837d93116f0337972f.js} +1 -1
  16. package/assets/esri/core/workers/chunks/31df729c17470245288c.js +2 -0
  17. package/assets/esri/core/workers/chunks/{c0bf663240df7be68131.js.LICENSE.txt → 31df729c17470245288c.js.LICENSE.txt} +1 -1
  18. package/assets/esri/core/workers/chunks/4130ea1f5a9f197168d7.js +1 -0
  19. package/assets/esri/core/workers/chunks/{417ee7a88575cb8f9aaf.js → 492b65fe99641f5740f0.js} +1 -1
  20. package/assets/esri/core/workers/chunks/4cdd29e1f3a1c7a39af7.js +1 -0
  21. package/assets/esri/core/workers/chunks/{9a0073d43b7dbaeba736.js → 541e644fc77dbe527124.js} +1 -1
  22. package/assets/esri/core/workers/chunks/{5a61a12b2492c6eae592.js → 59e341b2db44351bf557.js} +1 -1
  23. package/assets/esri/core/workers/chunks/{73630d52768e3d932f30.js → 5a10b58533b4116115ac.js} +1 -1
  24. package/assets/esri/core/workers/chunks/5fd787f63362defc984f.js +1 -0
  25. package/assets/esri/core/workers/chunks/682a8f15f352de76df69.js +1 -0
  26. package/assets/esri/core/workers/chunks/6a06635089761ee3e6d4.js +972 -0
  27. package/assets/esri/core/workers/chunks/{ab0c0c29d54f2ed954d6.js → 86b31ae136f931d7884a.js} +1 -1
  28. package/assets/esri/core/workers/chunks/{dc193247a1980360ec4f.js → 8e98ff9404a802352037.js} +1 -1
  29. package/assets/esri/core/workers/chunks/{863cfe35ee640bac103f.js → 94e51fe1c539df6257c2.js} +1 -1
  30. package/assets/esri/core/workers/chunks/{cbe7e6283a427a618d4b.js → 9519a02b9b8db88a3150.js} +1 -1
  31. package/assets/esri/core/workers/chunks/9f3a094aa4b47e4eb046.js +1 -0
  32. package/assets/esri/core/workers/chunks/{50d256bc3b213c8a1b09.js → a0ebf25c9c9a7f839b93.js} +1 -1
  33. package/assets/esri/core/workers/chunks/{d8a992dee594a6a64fde.js → a25f0a195f9217665530.js} +1 -1
  34. package/assets/esri/core/workers/chunks/a59ee7d2b98c85f27dd2.js +1 -0
  35. package/assets/esri/core/workers/chunks/{92ef9b0c61640e0ecbb4.js → a5dbab94697757c87c49.js} +1 -1
  36. package/assets/esri/core/workers/chunks/{147d3ee9aa81d7b2b7fa.js → a6406a248b7b2ed65f35.js} +1 -1
  37. package/assets/esri/core/workers/chunks/{ebdf61eb364ac0856f40.js → acbd0f4d72d1f5d8e4e8.js} +1 -1
  38. package/assets/esri/core/workers/chunks/acc97a210f36bff2d1b0.js +1 -0
  39. package/assets/esri/core/workers/chunks/ad68fe924456d6d7d4f0.js +1 -0
  40. package/assets/esri/core/workers/chunks/b06c949fc7d08e376a5f.js +1 -0
  41. package/assets/esri/core/workers/chunks/b4405e9fe6c0cf7250d3.js +1 -0
  42. package/assets/esri/core/workers/chunks/b97a34d2e7cceef1ac41.js +1 -0
  43. package/assets/esri/core/workers/chunks/bc08fe3b03767bd694c5.js +1 -0
  44. package/assets/esri/core/workers/chunks/c9b09099488d0e719dfb.js +1 -0
  45. package/assets/esri/core/workers/chunks/{4a05d0dfa73ff570e1fa.js → d15e6662d90718411d62.js} +1 -1
  46. package/assets/esri/core/workers/chunks/{b74b9dceabbf7b1aec39.js → d16aac3461af9cee0c29.js} +1 -1
  47. package/assets/esri/core/workers/chunks/{bb678bc2e2fc48112e07.js → d60dd3e1028f714f2258.js} +1 -1
  48. package/assets/esri/core/workers/chunks/{31c1ae0532dd991da63d.js → d6c150c243ca1f6108f9.js} +1 -1
  49. package/assets/esri/core/workers/chunks/{cab6decfcb3f596a3837.js → d8c59b1d73650c060dfb.js} +1 -1
  50. package/assets/esri/core/workers/chunks/{d24339b37cc9316e6d99.js → dcb6e1b33402d7fa455b.js} +1 -1
  51. package/assets/esri/core/workers/chunks/{a8da24116180d708cf81.js → df653bca2b14dffc82d1.js} +1 -1
  52. package/assets/esri/core/workers/chunks/{a3db91d04fe1fca0fe4f.js → e06461703e6f1acfcfdc.js} +1 -1
  53. package/assets/esri/core/workers/chunks/{423e199c2f695e913c0e.js → e3e1d87b8532bf84a18d.js} +1 -1
  54. package/assets/esri/core/workers/chunks/e7744b7e0c16bba93151.js +1 -0
  55. package/assets/esri/core/workers/chunks/ea50effc5c39870dc871.js +1 -0
  56. package/assets/esri/core/workers/chunks/fc4fd9db056579e09bfe.js +1 -0
  57. package/assets/esri/core/workers/chunks/fc9b5f40c5179a8c90de.js +1 -0
  58. package/assets/esri/core/workers/chunks/fd35b69872ac9393924f.js +1 -0
  59. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_ar.json +1 -1
  60. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_bg.json +1 -1
  61. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_bs.json +1 -1
  62. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_ca.json +1 -1
  63. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_cs.json +1 -1
  64. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_da.json +1 -1
  65. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_de.json +1 -1
  66. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_el.json +1 -1
  67. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_es.json +1 -1
  68. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_et.json +1 -1
  69. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_fi.json +1 -1
  70. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_fr.json +1 -1
  71. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_he.json +1 -1
  72. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_hr.json +1 -1
  73. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_hu.json +1 -1
  74. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_id.json +1 -1
  75. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_it.json +1 -1
  76. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_ja.json +1 -1
  77. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_ko.json +1 -1
  78. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_lt.json +1 -1
  79. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_lv.json +1 -1
  80. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_nb.json +1 -1
  81. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_nl.json +1 -1
  82. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_pl.json +1 -1
  83. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_pt-BR.json +1 -1
  84. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_pt-PT.json +1 -1
  85. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_ro.json +1 -1
  86. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_ru.json +1 -1
  87. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_sk.json +1 -1
  88. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_sl.json +1 -1
  89. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_sr.json +1 -1
  90. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_sv.json +1 -1
  91. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_th.json +1 -1
  92. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_tr.json +1 -1
  93. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_uk.json +1 -1
  94. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_vi.json +1 -1
  95. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_zh-CN.json +1 -1
  96. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_zh-HK.json +1 -1
  97. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_zh-TW.json +1 -1
  98. package/assets/esri/widgets/Weather/t9n/Weather_ar.json +1 -1
  99. package/assets/esri/widgets/Weather/t9n/Weather_bg.json +1 -1
  100. package/assets/esri/widgets/Weather/t9n/Weather_bs.json +1 -1
  101. package/assets/esri/widgets/Weather/t9n/Weather_ca.json +1 -1
  102. package/assets/esri/widgets/Weather/t9n/Weather_cs.json +1 -1
  103. package/assets/esri/widgets/Weather/t9n/Weather_da.json +1 -1
  104. package/assets/esri/widgets/Weather/t9n/Weather_de.json +1 -1
  105. package/assets/esri/widgets/Weather/t9n/Weather_el.json +1 -1
  106. package/assets/esri/widgets/Weather/t9n/Weather_es.json +1 -1
  107. package/assets/esri/widgets/Weather/t9n/Weather_et.json +1 -1
  108. package/assets/esri/widgets/Weather/t9n/Weather_fi.json +1 -1
  109. package/assets/esri/widgets/Weather/t9n/Weather_fr.json +1 -1
  110. package/assets/esri/widgets/Weather/t9n/Weather_he.json +1 -1
  111. package/assets/esri/widgets/Weather/t9n/Weather_hr.json +1 -1
  112. package/assets/esri/widgets/Weather/t9n/Weather_hu.json +1 -1
  113. package/assets/esri/widgets/Weather/t9n/Weather_id.json +1 -1
  114. package/assets/esri/widgets/Weather/t9n/Weather_it.json +1 -1
  115. package/assets/esri/widgets/Weather/t9n/Weather_ja.json +1 -1
  116. package/assets/esri/widgets/Weather/t9n/Weather_ko.json +1 -1
  117. package/assets/esri/widgets/Weather/t9n/Weather_lt.json +1 -1
  118. package/assets/esri/widgets/Weather/t9n/Weather_lv.json +1 -1
  119. package/assets/esri/widgets/Weather/t9n/Weather_nb.json +1 -1
  120. package/assets/esri/widgets/Weather/t9n/Weather_nl.json +1 -1
  121. package/assets/esri/widgets/Weather/t9n/Weather_pl.json +1 -1
  122. package/assets/esri/widgets/Weather/t9n/Weather_pt-BR.json +1 -1
  123. package/assets/esri/widgets/Weather/t9n/Weather_pt-PT.json +1 -1
  124. package/assets/esri/widgets/Weather/t9n/Weather_ro.json +1 -1
  125. package/assets/esri/widgets/Weather/t9n/Weather_ru.json +1 -1
  126. package/assets/esri/widgets/Weather/t9n/Weather_sk.json +1 -1
  127. package/assets/esri/widgets/Weather/t9n/Weather_sl.json +1 -1
  128. package/assets/esri/widgets/Weather/t9n/Weather_sr.json +1 -1
  129. package/assets/esri/widgets/Weather/t9n/Weather_sv.json +1 -1
  130. package/assets/esri/widgets/Weather/t9n/Weather_th.json +1 -1
  131. package/assets/esri/widgets/Weather/t9n/Weather_tr.json +1 -1
  132. package/assets/esri/widgets/Weather/t9n/Weather_uk.json +1 -1
  133. package/assets/esri/widgets/Weather/t9n/Weather_vi.json +1 -1
  134. package/assets/esri/widgets/Weather/t9n/Weather_zh-CN.json +1 -1
  135. package/assets/esri/widgets/Weather/t9n/Weather_zh-HK.json +1 -1
  136. package/assets/esri/widgets/Weather/t9n/Weather_zh-TW.json +1 -1
  137. package/chunks/ColorMaterial.glsl.js +4 -4
  138. package/chunks/LineMarker.glsl.js +12 -12
  139. package/chunks/Pattern.glsl.js +17 -17
  140. package/chunks/RibbonLine.glsl.js +34 -34
  141. package/chunks/ShadedColorMaterial.glsl.js +11 -11
  142. package/chunks/index.js +1 -1
  143. package/chunks/sphere.js +1 -1
  144. package/config.js +1 -1
  145. package/core/workers/RemoteClient.js +1 -1
  146. package/core/workers/WorkerHandle.js +1 -1
  147. package/geometry/support/sphere.js +1 -1
  148. package/interfaces.d.ts +74 -20
  149. package/layers/mixins/PortalLayer.js +1 -1
  150. package/layers/support/LercDecoder.js +1 -1
  151. package/package.json +2 -2
  152. package/request.js +1 -1
  153. package/support/elevationInfoUtils.js +1 -1
  154. package/support/revision.js +1 -1
  155. package/symbols/support/previewSymbol2D.js +1 -1
  156. package/views/2d/engine/brushes.js +1 -1
  157. package/views/2d/engine/vectorTiles/TileParser.js +1 -1
  158. package/views/2d/engine/webgl/GraphicDisplayList.js +1 -1
  159. package/views/2d/engine/webgl/Painter.js +1 -1
  160. package/views/2d/engine/webgl/WGLRendererInfo.js +1 -1
  161. package/views/2d/engine/webgl/brushes/WGLBrushDotDensity.js +5 -0
  162. package/views/2d/engine/webgl/brushes/WGLBrushHeatmap.js +5 -0
  163. package/views/2d/engine/webgl/brushes/WGLGeometryBrush.js +1 -1
  164. package/views/2d/engine/webgl/brushes/WGLGeometryBrushFill.js +1 -1
  165. package/views/2d/engine/webgl/brushes/WGLGeometryBrushLabel.js +1 -1
  166. package/views/2d/engine/webgl/brushes/WGLGeometryBrushLine.js +1 -1
  167. package/views/2d/engine/webgl/brushes/WGLGeometryBrushMarker.js +1 -1
  168. package/views/2d/engine/webgl/brushes/WGLGeometryBrushText.js +1 -1
  169. package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
  170. package/views/2d/engine/webgl/techniques/Technique.js +5 -0
  171. package/views/2d/engine/webgl/techniques/dotDensity/TechniqueDotDensity.js +5 -0
  172. package/views/2d/engine/webgl/techniques/heatmap/TechniqueHeatmap.js +5 -0
  173. package/views/2d/engine/webgl/techniques/utils.js +5 -0
  174. package/views/2d/layers/features/schemaUtils.js +1 -1
  175. package/views/2d/layers/features/support/AttributeStore.js +1 -1
  176. package/views/2d/layers/features/support/GraphicsReader.js +1 -1
  177. package/views/2d/layers/features/tileRenderers/support/WGLFeatureView.js +1 -1
  178. package/views/2d/layers/graphics/GraphicsView2D.js +1 -1
  179. package/views/3d/analysis/Slice/SliceTool.js +1 -1
  180. package/views/3d/camera/constraintUtils/distance.js +1 -1
  181. package/views/3d/camera/constraintUtils/tilt.js +1 -1
  182. package/views/3d/interactive/SnappingVisualizer3D.js +1 -1
  183. package/views/3d/interactive/analysisTools/lineOfSight/LineOfSightTool.js +1 -1
  184. package/views/3d/interactive/measurementTools/areaMeasurement3D/AreaMeasurement3DTool.js +1 -1
  185. package/views/3d/interactive/measurementTools/areaMeasurement3D/AreaMeasurement3DView.js +1 -1
  186. package/views/3d/interactive/measurementTools/directLineMeasurement3D/DirectLineMeasurement3DView.js +1 -1
  187. package/views/3d/layers/I3SMeshView3D.js +1 -1
  188. package/views/3d/layers/I3SMeshWorkerHandle.js +1 -1
  189. package/views/3d/layers/I3SPointsWorkerHandle.js +1 -1
  190. package/views/3d/layers/PointCloudWorkerHandle.js +1 -1
  191. package/views/3d/layers/graphics/Deconflictor.js +1 -1
  192. package/views/3d/layers/i3s/I3SElevationProvider.js +1 -1
  193. package/views/3d/layers/i3s/I3SNode.js +1 -1
  194. package/views/3d/layers/support/HeatmapFeatureProcessor.js +1 -1
  195. package/views/3d/state/controllers/GamepadKeyboardController.js +1 -1
  196. package/views/3d/state/utils/navigationUtils.js +1 -1
  197. package/views/3d/support/PBFDecoder.js +1 -1
  198. package/views/3d/support/geometryUtils/sphere.js +1 -1
  199. package/views/3d/terrain/OverlayManager.js +1 -1
  200. package/views/3d/terrain/OverlayRenderer.js +1 -1
  201. package/views/3d/terrain/PatchRenderData.js +1 -1
  202. package/views/3d/terrain/TerrainSurface.js +1 -1
  203. package/views/3d/terrain/Tile.js +1 -1
  204. package/views/3d/terrain/tileUtils.js +1 -1
  205. package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
  206. package/views/3d/webgl-engine/collections/Component/IndexRange/ComponentRangeRunLengthEncoded.js +1 -1
  207. package/views/3d/webgl-engine/lib/DrapedHeatmapRenderer.js +1 -1
  208. package/views/3d/webgl-engine/lib/Octree.js +1 -1
  209. package/views/3d/webgl-engine/lib/edgeRendering/EdgeProcessingWorker.js +1 -1
  210. package/views/3d/webgl-engine/lib/edgeRendering/EdgeView.js +1 -1
  211. package/views/3d/webgl-engine/lib/edgeRendering/EdgeWorkerHandle.js +1 -1
  212. package/views/3d/webgl-engine/lib/verticalOffsetUtils.js +1 -1
  213. package/views/3d/webgl-engine/materials/HeatmapDensityMaterial.js +1 -1
  214. package/views/3d/webgl-engine/shaders/HeatmapTechnique.js +1 -1
  215. package/views/interactive/snapping/FeatureSnappingEngine.js +1 -1
  216. package/views/interactive/snapping/LineSnapper.js +1 -1
  217. package/views/interactive/snapping/ParallelLineSnapper.js +1 -1
  218. package/views/interactive/snapping/RightAngleSnapper.js +1 -1
  219. package/views/interactive/snapping/RightAngleTriangleSnapper.js +1 -1
  220. package/views/interactive/snapping/SnappingManager.js +1 -1
  221. package/views/interactive/snapping/candidates/EdgeSnappingCandidate.js +1 -1
  222. package/views/interactive/snapping/candidates/FeatureSnappingCandidate.js +1 -1
  223. package/views/interactive/snapping/candidates/IntersectionSnappingCandidate.js +1 -1
  224. package/views/interactive/snapping/candidates/LineSnappingCandidate.js +1 -1
  225. package/views/interactive/snapping/candidates/ParallelLineSnappingCandidate.js +1 -1
  226. package/views/interactive/snapping/candidates/RightAngleSnappingCandidate.js +1 -1
  227. package/views/interactive/snapping/candidates/RightAngleTriangleSnappingCandidate.js +1 -1
  228. package/views/interactive/snapping/candidates/SnappingCandidate.js +1 -1
  229. package/views/interactive/snapping/candidates/VertexSnappingCandidate.js +1 -1
  230. package/views/interactive/snapping/featureSources/FeatureCollectionSnappingSource.js +1 -1
  231. package/views/interactive/snapping/featureSources/FeatureServiceSnappingSource.js +1 -1
  232. package/views/interactive/snapping/featureSources/GraphicsSnappingSource.js +1 -1
  233. package/views/interactive/snapping/featureSources/SceneLayerSnappingSource.js +5 -0
  234. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceSnappingSourceWorkerHandle.js +1 -1
  235. package/views/interactive/snapping/featureSources/queryEngineUtils.js +1 -1
  236. package/views/interactive/snapping/featureSources/sceneLayerSource/SceneLayerSnappingSourceWorker.js +5 -0
  237. package/views/interactive/snapping/featureSources/sceneLayerSource/SceneLayerSnappingSourceWorkerHandle.js +5 -0
  238. package/views/interactive/snapping/hints/IntersectionSnappingHint.js +1 -1
  239. package/views/interactive/snapping/hints/LineSnappingHint.js +1 -1
  240. package/views/interactive/snapping/hints/ParallelSnappingHint.js +1 -1
  241. package/views/interactive/snapping/hints/PointSnappingHint.js +1 -1
  242. package/views/interactive/snapping/hints/RightAngleSnappingHint.js +1 -1
  243. package/views/interactive/snapping/hints/SnappingHint.js +1 -1
  244. package/views/interactive/snapping/snappingUtils.js +1 -1
  245. package/views/support/colorUtils.js +1 -1
  246. package/webmap/Bookmark.js +1 -1
  247. package/widgets/AreaMeasurement3D/AreaMeasurement3DViewModel.js +1 -1
  248. package/widgets/DirectLineMeasurement3D/DirectLineMeasurement3DViewModel.js +1 -1
  249. package/widgets/FeatureTable/Grid/Grid.js +2 -2
  250. package/widgets/LineOfSight/LineOfSightViewModel.js +1 -1
  251. package/widgets/Sketch/SketchViewModel.js +1 -1
  252. package/widgets/Slice/SliceViewModel.js +1 -1
  253. package/widgets/support/AnalysisViewModel.js +1 -1
  254. package/widgets/support/InteractiveAnalysisViewModel.js +1 -1
  255. package/assets/esri/core/workers/chunks/2266d6388444ac5d50b3.js +0 -1
  256. package/assets/esri/core/workers/chunks/3f6b17c9d2629ed396da.js +0 -1
  257. package/assets/esri/core/workers/chunks/404f1d7bce014c7e6965.js +0 -1
  258. package/assets/esri/core/workers/chunks/4e4994665549435f51ee.js +0 -1
  259. package/assets/esri/core/workers/chunks/503226c5c612feab4115.js +0 -1
  260. package/assets/esri/core/workers/chunks/528033aa0d663b4d41bf.js +0 -1
  261. package/assets/esri/core/workers/chunks/54af957c5330933805a3.js +0 -1
  262. package/assets/esri/core/workers/chunks/6ef8de3aa9a8d9c22161.js +0 -1
  263. package/assets/esri/core/workers/chunks/72d8b2ad36f0d0a40a0d.js +0 -1
  264. package/assets/esri/core/workers/chunks/756befc4aa3354e1db1d.js +0 -972
  265. package/assets/esri/core/workers/chunks/8a4e2831e8fdde530b21.js +0 -1
  266. package/assets/esri/core/workers/chunks/9b9821772b6cbe189fe0.js +0 -1
  267. package/assets/esri/core/workers/chunks/9c4d41f20c1a94147344.js +0 -1
  268. package/assets/esri/core/workers/chunks/9cfd66ee9e6328b3693a.js +0 -1
  269. package/assets/esri/core/workers/chunks/b548bf032c8af34fe155.js +0 -1
  270. package/assets/esri/core/workers/chunks/bbcae04235830debd814.js +0 -1
  271. package/assets/esri/core/workers/chunks/bc6f5927f07c5993b998.js +0 -1
  272. package/assets/esri/core/workers/chunks/c0bf663240df7be68131.js +0 -2
  273. package/assets/esri/core/workers/chunks/cd9668acbe3babd2b188.js +0 -1
  274. package/assets/esri/core/workers/chunks/d53c7a9ede56be749f2b.js +0 -1
  275. package/assets/esri/core/workers/chunks/e07930ab66f89d215666.js +0 -1
  276. package/assets/esri/core/workers/chunks/f72de828ede4d0c5e9d7.js +0 -1
package/chunks/sphere.js CHANGED
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- import"../core/has.js";import t from"../core/Logger.js";import{acosClamped as r,cartesianToSpherical as e}from"../core/mathUtils.js";import{isNone as o}from"../core/maybe.js";import{d as n}from"./mat4.js";import{c as s,a as i,g as a,i as c,l as u,f,m,b as p,p as g,n as l,s as h}from"./vec3.js";import{c as y}from"./vec3f64.js";import{c as d}from"./vec4.js";import{c as j,f as M}from"./vec4f64.js";import{Axis as A}from"../geometry/support/Axis.js";import{closestPoint as v}from"../geometry/support/ray.js";import{angle as b}from"../geometry/support/vector.js";import{sv3d as S,sm4d as R}from"../geometry/support/vectorStacks.js";const x=t.getLogger("esri.geometry.support.sphere");function P(){return j()}function _(t,r=P()){return d(r,t)}function q(t,r){return M(t[0],t[1],t[2],r)}function w(t){return t}function C(t){t[0]=t[1]=t[2]=t[3]=0}function O(t){return t}function T(t){return Array.isArray(t)?t[3]:t}function k(t){return Array.isArray(t)?t:N}function E(t,r,e,o){return M(t,r,e,o)}function L(t,r,e){return t!==e&&s(e,t),e[3]=t[3]+r,e}function Z(t,r,e){return x.error("sphere.setExtent is not yet supported"),t===e?e:_(t,e)}function z(t,r,e){if(o(r))return!1;const{origin:n,direction:s}=r,i=U;i[0]=n[0]-t[0],i[1]=n[1]-t[1],i[2]=n[2]-t[2];const a=s[0]*s[0]+s[1]*s[1]+s[2]*s[2],c=2*(s[0]*i[0]+s[1]*i[1]+s[2]*i[2]),u=c*c-4*a*(i[0]*i[0]+i[1]*i[1]+i[2]*i[2]-t[3]*t[3]);if(u<0)return!1;const f=Math.sqrt(u);let m=(-c-f)/(2*a);const p=(-c+f)/(2*a);return(m<0||p<m&&p>0)&&(m=p),!(m<0)&&(e&&(e[0]=n[0]+s[0]*m,e[1]=n[1]+s[1]*m,e[2]=n[2]+s[2]*m),!0)}const U=y();function V(t,r){return z(t,r,null)}function X(t,r,e){if(z(t,r,e))return e;const o=Y(t,r,S.get());return i(e,r.origin,a(S.get(),r.direction,c(r.origin,o)/u(r.direction))),e}function Y(t,r,e){const o=S.get(),s=R.get();f(o,r.origin,r.direction);const i=T(t);f(e,o,r.origin),a(e,e,1/u(e)*i);const c=G(t,r.origin),p=b(r.origin,e);return n(s,p+c,o),m(e,e,s),e}function B(t,r,e){return z(t,r,e)?e:(v(r,k(t),e),D(t,e,e))}function D(t,r,e){const o=p(S.get(),r,k(t)),n=a(S.get(),o,t[3]/u(o));return i(e,n,k(t))}function F(t,r){const e=p(S.get(),r,k(t)),o=g(e),n=t[3]*t[3];return Math.sqrt(Math.abs(o-n))}function G(t,e){const o=p(S.get(),e,k(t)),n=u(o),s=T(t),i=s+Math.abs(s-n);return r(s/i)}const H=y();function I(t,r,o,n){const s=p(H,r,k(t));switch(o){case A.X:{const t=e(s,H)[2];return h(n,-Math.sin(t),Math.cos(t),0)}case A.Y:{const t=e(s,H),r=t[1],o=t[2],i=Math.sin(r);return h(n,-i*Math.cos(o),-i*Math.sin(o),Math.cos(r))}case A.Z:return l(n,s);default:return}}function J(t,r){const e=p(Q,r,k(t));return u(e)-t[3]}function K(t,r,e,o){const n=J(t,r),s=I(t,r,A.Z,Q),c=a(Q,s,e-n);return i(o,r,c)}const N=y(),Q=y(),W=Object.freeze(Object.defineProperty({__proto__:null,create:P,copy:_,fromCenterAndRadius:q,wrap:w,clear:C,fromRadius:O,getRadius:T,getCenter:k,fromValues:E,elevate:L,setExtent:Z,intersectRay:z,intersectsRay:V,intersectRayClosestSilhouette:X,closestPointOnSilhouette:Y,closestPoint:B,projectPoint:D,distanceToSilhouette:F,angleToSilhouette:G,axisAt:I,altitudeAt:J,setAltitudeAt:K},Symbol.toStringTag,{value:"Module"}));export{C as a,_ as b,P as c,F as d,z as e,E as f,k as g,Y as h,V as i,O as j,q as k,T as l,L as m,Z as n,X as o,B as p,D as q,G as r,W as s,I as t,J as u,K as v,w};
5
+ import"../core/has.js";import t from"../core/Logger.js";import{acosClamped as r,cartesianToSpherical as n}from"../core/mathUtils.js";import{isNone as o}from"../core/maybe.js";import{d as e}from"./mat4.js";import{c as s,a as i,g as a,i as c,l as u,f,m,b as p,p as g,n as l,s as h,d}from"./vec3.js";import{c as j}from"./vec3f64.js";import{c as y}from"./vec4.js";import{c as M,f as v}from"./vec4f64.js";import{Axis as b}from"../geometry/support/Axis.js";import{closestPoint as S}from"../geometry/support/ray.js";import{angle as x}from"../geometry/support/vector.js";import{sv3d as A,sm4d as P}from"../geometry/support/vectorStacks.js";const R=t.getLogger("esri.geometry.support.sphere");function _(){return M()}function q(t,r=_()){return y(r,t)}function w(t,r){return v(t[0],t[1],t[2],r)}function C(t){return t}function O(t){t[0]=t[1]=t[2]=t[3]=0}function T(t,r){return t[0]=t[1]=t[2]=0,t[3]=r,t}function k(t){return t[3]}function E(t){return t}function L(t,r,n,o){return v(t,r,n,o)}function Z(t,r,n){return t!==n&&s(n,t),n[3]=t[3]+r,n}function z(t,r,n){return R.error("sphere.setExtent is not yet supported"),t===n?n:q(t,n)}function U(t,r,n){if(o(r))return!1;const{origin:e,direction:s}=r,i=V;i[0]=e[0]-t[0],i[1]=e[1]-t[1],i[2]=e[2]-t[2];const a=s[0]*s[0]+s[1]*s[1]+s[2]*s[2],c=2*(s[0]*i[0]+s[1]*i[1]+s[2]*i[2]),u=c*c-4*a*(i[0]*i[0]+i[1]*i[1]+i[2]*i[2]-t[3]*t[3]);if(u<0)return!1;const f=Math.sqrt(u);let m=(-c-f)/(2*a);const p=(-c+f)/(2*a);return(m<0||p<m&&p>0)&&(m=p),!(m<0)&&(n&&(n[0]=e[0]+s[0]*m,n[1]=e[1]+s[1]*m,n[2]=e[2]+s[2]*m),!0)}const V=j();function X(t,r){return U(t,r,null)}function Y(t,r,n){if(U(t,r,n))return n;const o=B(t,r,A.get());return i(n,r.origin,a(A.get(),r.direction,c(r.origin,o)/u(r.direction))),n}function B(t,r,n){const o=A.get(),s=P.get();f(o,r.origin,r.direction);const i=k(t);f(n,o,r.origin),a(n,n,1/u(n)*i);const c=H(t,r.origin),p=x(r.origin,n);return e(s,p+c,o),m(n,n,s),n}function D(t,r,n){return U(t,r,n)?n:(S(r,E(t),n),F(t,n,n))}function F(t,r,n){const o=p(A.get(),r,E(t)),e=a(A.get(),o,t[3]/u(o));return i(n,e,E(t))}function G(t,r){const n=p(A.get(),r,E(t)),o=g(n),e=t[3]*t[3];return Math.sqrt(Math.abs(o-e))}function H(t,n){const o=p(A.get(),n,E(t)),e=u(o),s=k(t),i=s+Math.abs(s-e);return r(s/i)}const I=j();function J(t,r,o,e){const s=p(I,r,E(t));switch(o){case b.X:{const t=n(s,I)[2];return h(e,-Math.sin(t),Math.cos(t),0)}case b.Y:{const t=n(s,I),r=t[1],o=t[2],i=Math.sin(r);return h(e,-i*Math.cos(o),-i*Math.sin(o),Math.cos(r))}case b.Z:return l(e,s);default:return}}function K(t,r){const n=p(W,r,E(t));return u(n)-t[3]}function N(t,r,n,o){const e=K(t,r),s=J(t,r,b.Z,W),c=a(W,s,n-e);return i(o,r,c)}function Q(t,r){const n=d(E(t),r),o=k(t);return n<=o*o}const W=j(),$=_(),tt=Object.freeze(Object.defineProperty({__proto__:null,create:_,copy:q,fromCenterAndRadius:w,wrap:C,clear:O,fromRadius:T,getRadius:k,getCenter:E,fromValues:L,elevate:Z,setExtent:z,intersectRay:U,intersectsRay:X,intersectRayClosestSilhouette:Y,closestPointOnSilhouette:B,closestPoint:D,projectPoint:F,distanceToSilhouette:G,angleToSilhouette:H,axisAt:J,altitudeAt:K,setAltitudeAt:N,containsPoint:Q,tmpSphere:$},Symbol.toStringTag,{value:"Module"}));export{O as a,q as b,_ as c,k as d,G as e,L as f,E as g,U as h,X as i,B as j,T as k,w as l,Q as m,Z as n,z as o,Y as p,D as q,F as r,tt as s,$ as t,H as u,J as v,C as w,K as x,N as y};
package/config.js CHANGED
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- import"./core/has.js";import{deepMerge as e}from"./core/object.js";import{buildDate as r}from"./support/revision.js";var s;const t={apiKey:void 0,applicationUrl:null==(s=globalThis.location)?void 0:s.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",portalUrl:"https://www.arcgis.com",routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{httpsDomains:["arcgis.com","arcgisonline.com","esrikr.com","premiumservices.blackbridge.com","esripremium.accuweather.com","gbm.digitalglobe.com","firstlook.digitalglobe.com","msi.digitalglobe.com"],interceptors:[],maxUrlLength:2e3,proxyRules:[],proxyUrl:null,timeout:6e4,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&(e(t,globalThis.esriConfig,!0),delete t.has),!t.assetsPath){const e="4.24.0";t.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@${e}-next.${r}/assets`}t.baseUrl&&console.warn("[esri.config]","baseUrl has been replaced by assetsPath"),Object.defineProperty(t,"baseUrl",{set(){console.warn("[esri.config]","baseUrl has been replaced by assetsPath")}}),t.request.corsEnabledServers=[],t.request.corsEnabledServers.push=function(){return console.warn("[esri.config]","request.corsEnabledServers is not supported and will be removed in a future release. See http://esriurl.com/cors8664"),0};export{t as default};
5
+ import"./core/has.js";import{deepMerge as e}from"./core/object.js";import{buildDate as r}from"./support/revision.js";var s;const t={apiKey:void 0,applicationUrl:null==(s=globalThis.location)?void 0:s.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",portalUrl:"https://www.arcgis.com",routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{httpsDomains:["arcgis.com","arcgisonline.com","esrikr.com","premiumservices.blackbridge.com","esripremium.accuweather.com","gbm.digitalglobe.com","firstlook.digitalglobe.com","msi.digitalglobe.com"],interceptors:[],maxUrlLength:2e3,priority:"high",proxyRules:[],proxyUrl:null,timeout:6e4,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&(e(t,globalThis.esriConfig,!0),delete t.has),!t.assetsPath){const e="4.24.0";t.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@${e}-next.${r}/assets`}t.baseUrl&&console.warn("[esri.config]","baseUrl has been replaced by assetsPath"),Object.defineProperty(t,"baseUrl",{set(){console.warn("[esri.config]","baseUrl has been replaced by assetsPath")}}),t.request.corsEnabledServers=[],t.request.corsEnabledServers.push=function(){return console.warn("[esri.config]","request.corsEnabledServers is not supported and will be removed in a future release. See http://esriurl.com/cors8664"),0};export{t as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- import{version as e}from"../../kernel.js";import s from"../Error.js";import{on as t}from"../events.js";import{isSome as o}from"../maybe.js";import{onAbortOrThrow as r,createAbortError as i,isPromiseLike as n,isAbortError as a}from"../promiseUtils.js";import{newJobId as l,MessageType as c,receiveMessage as p,toInvokeError as h,postMessage as u}from"./utils.js";import{commitHash as _,buildDate as d}from"../../support/revision.js";const m={statsWorker:()=>import("../../smartMapping/statistics/support/statsWorker.js"),geometryEngineWorker:()=>import("../../geometry/geometryEngineWorker.js"),CSVSourceWorker:()=>import("../../layers/graphics/sources/support/CSVSourceWorker.js"),EdgeProcessingWorker:()=>import("../../views/3d/webgl-engine/lib/edgeRendering/EdgeProcessingWorker.js"),ElevationSamplerWorker:()=>import("../../geometry/support/meshUtils/ElevationSamplerWorker.js"),FeatureServiceSnappingSourceWorker:()=>import("../../views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceSnappingSourceWorker.js"),GeoJSONSourceWorker:()=>import("../../layers/graphics/sources/geojson/GeoJSONSourceWorker.js"),LercWorker:()=>import("../../layers/support/LercWorker.js"),MemorySourceWorker:()=>import("../../layers/graphics/sources/support/MemorySourceWorker.js"),PBFDecoderWorker:()=>import("../../views/3d/support/PBFDecoderWorker.js"),Pipeline:()=>import("../../views/2d/layers/features/Pipeline.js"),PointCloudWorker:()=>import("../../views/3d/layers/PointCloudWorker.js"),RasterWorker:()=>import("../../layers/support/RasterWorker.js"),SceneLayerWorker:()=>import("../../views/3d/layers/SceneLayerWorker.js"),WFSSourceWorker:()=>import("../../layers/graphics/sources/WFSSourceWorker.js"),WorkerTileHandler:()=>import("../../views/2d/engine/vectorTiles/WorkerTileHandler.js")},{CLOSE:g,ABORT:k,INVOKE:b,RESPONSE:v,OPEN_PORT:j,ON:y}=c,f=2;class W{constructor(e){this._timer=null,this._cancelledJobIds=new Set,this._invokeMessages=[],this._invoke=e,this._timer=null,this._process=this._process.bind(this)}push(e){e.type===c.ABORT?this._cancelledJobIds.add(e.jobId):(this._invokeMessages.push(e),null===this._timer&&(this._timer=setTimeout(this._process,0)))}clear(){this._invokeMessages.length=0,this._cancelledJobIds.clear(),this._timer=null}_process(){this._timer=null;for(const e of this._invokeMessages)this._cancelledJobIds.has(e.jobId)||this._invoke(e);this._cancelledJobIds.clear(),this._invokeMessages.length=0}}class M{constructor(e,s,t){this._port=e,this._getNextJob=t,this._outJobs=new Map,this._inJobs=new Map,this._invokeQueue=new W((e=>this._onInvokeMessage(e))),this._client=s.client,this._onMessage=this._onMessage.bind(this),this._channel=s.channel,this._schedule=s.schedule,this._port.addEventListener("message",this._onMessage),this._port.start()}static connect(e){const s=new MessageChannel;let t;t="function"==typeof e?new e:"default"in e&&"function"==typeof e.default?new e.default:e;const o=new M(s.port1,{channel:s,client:t},(()=>null));return"object"==typeof t&&"remoteClient"in t&&(t.remoteClient=o),M.clients.set(o,t),s.port2}static loadWorker(e){const s=m[e];return s?s():Promise.resolve(null)}close(){this._post({type:g}),this._close()}isBusy(){return this._outJobs.size>0}invoke(e,t,o){const n=o&&o.signal,a=o&&o.transferList;if(!this._port)return Promise.reject(new s("worker:port-closed",`Cannot call invoke('${e}'), port is closed`,{methodName:e,data:t}));const c=l();return new Promise(((s,o)=>{const l=r(n,(()=>{var e;const s=this._outJobs.get(c);s&&(this._outJobs.delete(c),this._processWork(),null==(e=s.abortHandle)||e.remove(),this._post({type:k,jobId:c}),o(i()))})),p={resolve:s,reject:o,abortHandle:l,debugInfo:e};this._outJobs.set(c,p),this._post({type:b,jobId:c,methodName:e,abortable:null!=n},t,a)}))}on(e,s){const t=new MessageChannel;function o(e){s(e.data)}return this._port.postMessage({type:c.ON,eventType:e,port:t.port2},[t.port2]),t.port1.addEventListener("message",o),t.port1.start(),{remove(){t.port1.postMessage({type:c.CLOSE}),t.port1.close(),t.port1.removeEventListener("message",o)}}}jobAdded(){this._processWork()}openPort(){const e=new MessageChannel;return this._post({type:j,port:e.port2}),e.port1}_processWork(){if(this._outJobs.size>=f)return;const e=this._getNextJob();if(!e)return;const{methodName:s,data:t,invokeOptions:o,deferred:r}=e;this.invoke(s,t,o).then((e=>r.resolve(e))).catch((e=>r.reject(e)))}_close(){this._channel&&(this._channel=null),this._port.removeEventListener("message",this._onMessage),this._port.close(),this._outJobs.forEach((e=>{var s;null==(s=e.abortHandle)||s.remove(),e.reject(i(`Worker closing, aborting job calling '${e.debugInfo}'`))})),this._inJobs.clear(),this._outJobs.clear(),this._invokeQueue.clear(),this._port=this._client=this._schedule=null}_onMessage(e){o(this._schedule)?this._schedule((()=>this._processMessage(e))):this._processMessage(e)}_processMessage(e){const s=p(e);if(s)switch(s.type){case v:this._onResponseMessage(s);break;case b:this._invokeQueue.push(s);break;case k:this._onAbortMessage(s);break;case g:this._onCloseMessage();break;case j:this._onOpenPortMessage(s);break;case y:this._onOnMessage(s)}}_onAbortMessage(e){const s=this._inJobs,t=e.jobId,o=s.get(t);this._invokeQueue.push(e),o&&(o.controller&&o.controller.abort(),s.delete(t))}_onCloseMessage(){const e=this._client;this._close(),e&&"destroy"in e&&M.clients.get(this)===e&&e.destroy(),M.clients.delete(this),e&&e.remoteClient&&(e.remoteClient=null)}_onInvokeMessage(e){const{methodName:s,jobId:t,data:o,abortable:r}=e,i=r?new AbortController:null,l=this._inJobs;let c,p=this._client,u=p[s];try{if(!u&&s&&s.includes(".")){const e=s.split(".");for(let s=0;s<e.length-1;s++)p=p[e[s]],u=p[e[s+1]]}if("function"!=typeof u)throw new TypeError(`${s} is not a function`);c=u.call(p,o,{client:this,signal:i?i.signal:null})}catch(_){return void this._post({type:v,jobId:t,error:h(_)})}n(c)?(l.set(t,{controller:i,promise:c}),c.then((e=>{l.has(t)&&(l.delete(t),this._post({type:v,jobId:t},e))}),(e=>{l.has(t)&&(l.delete(t),a(e)||this._post({type:v,jobId:t,error:h(e||{message:`Error encountered at method ${s}`})}))}))):this._post({type:v,jobId:t},c)}_onOpenPortMessage(e){new M(e.port,{client:this._client},(()=>null))}_onOnMessage(e){const{port:s}=e,o=this._client.on(e.eventType,(e=>{s.postMessage(e)})),r=t(e.port,"message",(e=>{p(e).type===c.CLOSE&&(r.remove(),o.remove(),s.close())}))}_onResponseMessage(e){var t;const{jobId:o,error:r,data:i}=e,n=this._outJobs;if(!n.has(o))return;const a=n.get(o);this._processWork(),n.delete(o),null==(t=a.abortHandle)||t.remove(),r?a.reject(s.fromJSON(JSON.parse(r))):a.resolve(i)}_post(e,s,t){return u(this._port,e,s,t)}}M.kernelInfo={revision:_,version:e,buildDate:d},M.clients=new Map;export{M as default};
5
+ import{version as e}from"../../kernel.js";import s from"../Error.js";import{on as t}from"../events.js";import{isSome as o}from"../maybe.js";import{onAbortOrThrow as r,createAbortError as i,isPromiseLike as n,isAbortError as a}from"../promiseUtils.js";import{newJobId as l,MessageType as c,receiveMessage as p,toInvokeError as h,postMessage as u}from"./utils.js";import{commitHash as _,buildDate as d}from"../../support/revision.js";const m={statsWorker:()=>import("../../smartMapping/statistics/support/statsWorker.js"),geometryEngineWorker:()=>import("../../geometry/geometryEngineWorker.js"),CSVSourceWorker:()=>import("../../layers/graphics/sources/support/CSVSourceWorker.js"),EdgeProcessingWorker:()=>import("../../views/3d/webgl-engine/lib/edgeRendering/EdgeProcessingWorker.js"),ElevationSamplerWorker:()=>import("../../geometry/support/meshUtils/ElevationSamplerWorker.js"),FeatureServiceSnappingSourceWorker:()=>import("../../views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceSnappingSourceWorker.js"),GeoJSONSourceWorker:()=>import("../../layers/graphics/sources/geojson/GeoJSONSourceWorker.js"),LercWorker:()=>import("../../layers/support/LercWorker.js"),MemorySourceWorker:()=>import("../../layers/graphics/sources/support/MemorySourceWorker.js"),PBFDecoderWorker:()=>import("../../views/3d/support/PBFDecoderWorker.js"),Pipeline:()=>import("../../views/2d/layers/features/Pipeline.js"),PointCloudWorker:()=>import("../../views/3d/layers/PointCloudWorker.js"),RasterWorker:()=>import("../../layers/support/RasterWorker.js"),SceneLayerSnappingSourceWorker:()=>import("../../views/interactive/snapping/featureSources/sceneLayerSource/SceneLayerSnappingSourceWorker.js"),SceneLayerWorker:()=>import("../../views/3d/layers/SceneLayerWorker.js"),WFSSourceWorker:()=>import("../../layers/graphics/sources/WFSSourceWorker.js"),WorkerTileHandler:()=>import("../../views/2d/engine/vectorTiles/WorkerTileHandler.js")},{CLOSE:g,ABORT:k,INVOKE:b,RESPONSE:v,OPEN_PORT:y,ON:j}=c,S=2;class f{constructor(e){this._timer=null,this._cancelledJobIds=new Set,this._invokeMessages=[],this._invoke=e,this._timer=null,this._process=this._process.bind(this)}push(e){e.type===c.ABORT?this._cancelledJobIds.add(e.jobId):(this._invokeMessages.push(e),null===this._timer&&(this._timer=setTimeout(this._process,0)))}clear(){this._invokeMessages.length=0,this._cancelledJobIds.clear(),this._timer=null}_process(){this._timer=null;for(const e of this._invokeMessages)this._cancelledJobIds.has(e.jobId)||this._invoke(e);this._cancelledJobIds.clear(),this._invokeMessages.length=0}}class W{constructor(e,s,t){this._port=e,this._getNextJob=t,this._outJobs=new Map,this._inJobs=new Map,this._invokeQueue=new f((e=>this._onInvokeMessage(e))),this._client=s.client,this._onMessage=this._onMessage.bind(this),this._channel=s.channel,this._schedule=s.schedule,this._port.addEventListener("message",this._onMessage),this._port.start()}static connect(e){const s=new MessageChannel;let t;t="function"==typeof e?new e:"default"in e&&"function"==typeof e.default?new e.default:e;const o=new W(s.port1,{channel:s,client:t},(()=>null));return"object"==typeof t&&"remoteClient"in t&&(t.remoteClient=o),W.clients.set(o,t),s.port2}static loadWorker(e){const s=m[e];return s?s():Promise.resolve(null)}close(){this._post({type:g}),this._close()}isBusy(){return this._outJobs.size>0}invoke(e,t,o){const n=o&&o.signal,a=o&&o.transferList;if(!this._port)return Promise.reject(new s("worker:port-closed",`Cannot call invoke('${e}'), port is closed`,{methodName:e,data:t}));const c=l();return new Promise(((s,o)=>{const l=r(n,(()=>{var e;const s=this._outJobs.get(c);s&&(this._outJobs.delete(c),this._processWork(),null==(e=s.abortHandle)||e.remove(),this._post({type:k,jobId:c}),o(i()))})),p={resolve:s,reject:o,abortHandle:l,debugInfo:e};this._outJobs.set(c,p),this._post({type:b,jobId:c,methodName:e,abortable:null!=n},t,a)}))}on(e,s){const t=new MessageChannel;function o(e){s(e.data)}return this._port.postMessage({type:c.ON,eventType:e,port:t.port2},[t.port2]),t.port1.addEventListener("message",o),t.port1.start(),{remove(){t.port1.postMessage({type:c.CLOSE}),t.port1.close(),t.port1.removeEventListener("message",o)}}}jobAdded(){this._processWork()}openPort(){const e=new MessageChannel;return this._post({type:y,port:e.port2}),e.port1}_processWork(){if(this._outJobs.size>=S)return;const e=this._getNextJob();if(!e)return;const{methodName:s,data:t,invokeOptions:o,deferred:r}=e;this.invoke(s,t,o).then((e=>r.resolve(e))).catch((e=>r.reject(e)))}_close(){this._channel&&(this._channel=null),this._port.removeEventListener("message",this._onMessage),this._port.close(),this._outJobs.forEach((e=>{var s;null==(s=e.abortHandle)||s.remove(),e.reject(i(`Worker closing, aborting job calling '${e.debugInfo}'`))})),this._inJobs.clear(),this._outJobs.clear(),this._invokeQueue.clear(),this._port=this._client=this._schedule=null}_onMessage(e){o(this._schedule)?this._schedule((()=>this._processMessage(e))):this._processMessage(e)}_processMessage(e){const s=p(e);if(s)switch(s.type){case v:this._onResponseMessage(s);break;case b:this._invokeQueue.push(s);break;case k:this._onAbortMessage(s);break;case g:this._onCloseMessage();break;case y:this._onOpenPortMessage(s);break;case j:this._onOnMessage(s)}}_onAbortMessage(e){const s=this._inJobs,t=e.jobId,o=s.get(t);this._invokeQueue.push(e),o&&(o.controller&&o.controller.abort(),s.delete(t))}_onCloseMessage(){const e=this._client;this._close(),e&&"destroy"in e&&W.clients.get(this)===e&&e.destroy(),W.clients.delete(this),e&&e.remoteClient&&(e.remoteClient=null)}_onInvokeMessage(e){const{methodName:s,jobId:t,data:o,abortable:r}=e,i=r?new AbortController:null,l=this._inJobs;let c,p=this._client,u=p[s];try{if(!u&&s&&s.includes(".")){const e=s.split(".");for(let s=0;s<e.length-1;s++)p=p[e[s]],u=p[e[s+1]]}if("function"!=typeof u)throw new TypeError(`${s} is not a function`);c=u.call(p,o,{client:this,signal:i?i.signal:null})}catch(_){return void this._post({type:v,jobId:t,error:h(_)})}n(c)?(l.set(t,{controller:i,promise:c}),c.then((e=>{l.has(t)&&(l.delete(t),this._post({type:v,jobId:t},e))}),(e=>{l.has(t)&&(l.delete(t),a(e)||this._post({type:v,jobId:t,error:h(e||{message:`Error encountered at method ${s}`})}))}))):this._post({type:v,jobId:t},c)}_onOpenPortMessage(e){new W(e.port,{client:this._client},(()=>null))}_onOnMessage(e){const{port:s}=e,o=this._client.on(e.eventType,(e=>{s.postMessage(e)})),r=t(e.port,"message",(e=>{p(e).type===c.CLOSE&&(r.remove(),o.remove(),s.close())}))}_onResponseMessage(e){var t;const{jobId:o,error:r,data:i}=e,n=this._outJobs;if(!n.has(o))return;const a=n.get(o);this._processWork(),n.delete(o),null==(t=a.abortHandle)||t.remove(),r?a.reject(s.fromJSON(JSON.parse(r))):a.resolve(i)}_post(e,s,t){return u(this._port,e,s,t)}}W.kernelInfo={revision:_,version:e,buildDate:d},W.clients=new Map;export{W as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- import{remove as e}from"../arrayUtils.js";import{makeHandle as t}from"../handleUtils.js";import r from"../Logger.js";import{isSome as s}from"../maybe.js";import{throwIfAborted as i}from"../promiseUtils.js";import{open as o}from"./workers.js";const h=r.getLogger("esri.core.workers.WorkerHandle");class n{constructor(e,t,r,s={}){this._mainMethod=t,this._listeners=[],this._promise=o(e,{...s,schedule:r}).then((e=>{if(void 0===this._thread){this._thread=e,this._promise=null,s.hasInitialize&&this.broadcast({},"initialize");for(const e of this._listeners)this._connectListener(e)}else e.close()})),this._promise.catch((t=>h.error(`Failed to initialize ${e} worker: ${t}`)))}on(r,i){const o={removed:!1,eventName:r,callback:i,threadHandle:null};return this._listeners.push(o),this._connectListener(o),t((()=>{o.removed=!0,e(this._listeners,o),this._thread&&s(o.threadHandle)&&o.threadHandle.remove()}))}destroy(){this._thread&&(this._thread.close(),this._thread=null),this._promise=null}invoke(e,t){return this.invokeMethod(this._mainMethod,e,t)}invokeMethod(e,t,r){if(this._thread){const s=this.getTransferList(t,e);return this._thread.invoke(e,t,{transferList:s,signal:r})}return this._promise?this._promise.then((()=>(i(r),this.invokeMethod(e,t,r)))):Promise.reject(null)}broadcast(e,t){return this._thread?Promise.all(this._thread.broadcast(t,e)).then((()=>{})):this._promise?this._promise.then((()=>this.broadcast(e,t))):Promise.reject()}get promise(){return this._promise}_connectListener(e){this._thread&&this._thread.on(e.eventName,e.callback).then((t=>{e.removed||(e.threadHandle=t)}))}}export{n as WorkerHandle};
5
+ import{remove as e}from"../arrayUtils.js";import{makeHandle as t}from"../handleUtils.js";import r from"../Logger.js";import{isSome as s}from"../maybe.js";import{throwIfAborted as i}from"../promiseUtils.js";import{open as o}from"./workers.js";const h=r.getLogger("esri.core.workers.WorkerHandle");class n{constructor(e,t,r,s,i={}){this._mainMethod=t,this._transferLists=r,this._listeners=[],this._promise=o(e,{...i,schedule:s}).then((e=>{if(void 0===this._thread){this._thread=e,this._promise=null,i.hasInitialize&&this.broadcast({},"initialize");for(const e of this._listeners)this._connectListener(e)}else e.close()})),this._promise.catch((t=>h.error(`Failed to initialize ${e} worker: ${t}`)))}on(r,i){const o={removed:!1,eventName:r,callback:i,threadHandle:null};return this._listeners.push(o),this._connectListener(o),t((()=>{o.removed=!0,e(this._listeners,o),this._thread&&s(o.threadHandle)&&o.threadHandle.remove()}))}destroy(){this._thread&&(this._thread.close(),this._thread=null),this._promise=null}invoke(e,t){return this.invokeMethod(this._mainMethod,e,t)}invokeMethod(e,t,r){if(this._thread){const s=this._transferLists[e],i=s?s(t):[];return this._thread.invoke(e,t,{transferList:i,signal:r})}return this._promise?this._promise.then((()=>(i(r),this.invokeMethod(e,t,r)))):Promise.reject(null)}broadcast(e,t){return this._thread?Promise.all(this._thread.broadcast(t,e)).then((()=>{})):this._promise?this._promise.then((()=>this.broadcast(e,t))):Promise.reject()}get promise(){return this._promise}_connectListener(e){this._thread&&this._thread.on(e.eventName,e.callback).then((t=>{e.removed||(e.threadHandle=t)}))}}export{n as WorkerHandle};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- import"../../core/has.js";import"../../core/Logger.js";import"../../core/mathUtils.js";import"../../core/maybe.js";import"../../chunks/mat4.js";import"../../chunks/vec3.js";import"../../chunks/vec3f64.js";import"../../chunks/vec4.js";import"../../chunks/vec4f64.js";import"./Axis.js";import"./ray.js";import"./vector.js";import"./vectorStacks.js";export{u as altitudeAt,r as angleToSilhouette,t as axisAt,a as clear,p as closestPoint,h as closestPointOnSilhouette,b as copy,c as create,d as distanceToSilhouette,m as elevate,k as fromCenterAndRadius,j as fromRadius,f as fromValues,g as getCenter,l as getRadius,e as intersectRay,o as intersectRayClosestSilhouette,i as intersectsRay,q as projectPoint,v as setAltitudeAt,n as setExtent,w as wrap}from"../../chunks/sphere.js";
5
+ import"../../core/has.js";import"../../core/Logger.js";import"../../core/mathUtils.js";import"../../core/maybe.js";import"../../chunks/mat4.js";import"../../chunks/vec3.js";import"../../chunks/vec3f64.js";import"../../chunks/vec4.js";import"../../chunks/vec4f64.js";import"./Axis.js";import"./ray.js";import"./vector.js";import"./vectorStacks.js";export{x as altitudeAt,u as angleToSilhouette,v as axisAt,a as clear,q as closestPoint,j as closestPointOnSilhouette,m as containsPoint,b as copy,c as create,e as distanceToSilhouette,n as elevate,l as fromCenterAndRadius,k as fromRadius,f as fromValues,g as getCenter,d as getRadius,h as intersectRay,p as intersectRayClosestSilhouette,i as intersectsRay,r as projectPoint,y as setAltitudeAt,o as setExtent,t as tmpSphere,w as wrap}from"../../chunks/sphere.js";
package/interfaces.d.ts CHANGED
@@ -1171,6 +1171,14 @@ declare namespace __esri {
1171
1171
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-config.html#request)
1172
1172
  */
1173
1173
  maxUrlLength?: number;
1174
+ /**
1175
+ * **Since:** 4.24 The fetch and image network request priority.
1176
+ *
1177
+ * @default high
1178
+ *
1179
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-config.html#request)
1180
+ */
1181
+ priority?: "auto" | "high" | "low";
1174
1182
  /**
1175
1183
  * A proxy rule defines a proxy for a set of resources with an identical URL prefix.
1176
1184
  *
@@ -8676,7 +8684,7 @@ declare namespace __esri {
8676
8684
  */
8677
8685
  displayField: string;
8678
8686
  /**
8679
- * Specifies how graphics are placed on the vertical axis (z).
8687
+ * Specifies how features are placed on the vertical axis (z).
8680
8688
  *
8681
8689
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-CSVLayer.html#elevationInfo)
8682
8690
  */
@@ -8892,7 +8900,7 @@ declare namespace __esri {
8892
8900
  */
8893
8901
  displayField?: string;
8894
8902
  /**
8895
- * Specifies how graphics are placed on the vertical axis (z).
8903
+ * Specifies how features are placed on the vertical axis (z).
8896
8904
  *
8897
8905
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-CSVLayer.html#elevationInfo)
8898
8906
  */
@@ -9308,7 +9316,7 @@ declare namespace __esri {
9308
9316
  */
9309
9317
  mode: "on-the-ground" | "relative-to-ground" | "absolute-height" | "relative-to-scene";
9310
9318
  /**
9311
- * An elevation offset, which is added to the vertical position of the graphic.
9319
+ * An elevation offset, which is added to the vertical position of the feature.
9312
9320
  *
9313
9321
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-CSVLayer.html#elevationInfo)
9314
9322
  */
@@ -11256,7 +11264,7 @@ declare namespace __esri {
11256
11264
  */
11257
11265
  editingEnabled: boolean;
11258
11266
  /**
11259
- * Specifies how graphics are placed on the vertical axis (z).
11267
+ * Specifies how features are placed on the vertical axis (z).
11260
11268
  *
11261
11269
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-GeoJSONLayer.html#elevationInfo)
11262
11270
  */
@@ -11528,7 +11536,7 @@ declare namespace __esri {
11528
11536
  */
11529
11537
  editingEnabled?: boolean;
11530
11538
  /**
11531
- * Specifies how graphics are placed on the vertical axis (z).
11539
+ * Specifies how features are placed on the vertical axis (z).
11532
11540
  *
11533
11541
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-GeoJSONLayer.html#elevationInfo)
11534
11542
  */
@@ -12011,7 +12019,7 @@ declare namespace __esri {
12011
12019
  */
12012
12020
  mode: "on-the-ground" | "relative-to-ground" | "absolute-height" | "relative-to-scene";
12013
12021
  /**
12014
- * An elevation offset, which is added to the vertical position of the graphic.
12022
+ * An elevation offset, which is added to the vertical position of the feature.
12015
12023
  *
12016
12024
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-GeoJSONLayer.html#elevationInfo)
12017
12025
  */
@@ -15317,7 +15325,7 @@ declare namespace __esri {
15317
15325
  */
15318
15326
  displayField: string;
15319
15327
  /**
15320
- * Specifies how graphics are placed on the vertical axis (z).
15328
+ * Specifies how features are placed on the vertical axis (z).
15321
15329
  *
15322
15330
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-OGCFeatureLayer.html#elevationInfo)
15323
15331
  */
@@ -15467,7 +15475,7 @@ declare namespace __esri {
15467
15475
  */
15468
15476
  displayField?: string;
15469
15477
  /**
15470
- * Specifies how graphics are placed on the vertical axis (z).
15478
+ * Specifies how features are placed on the vertical axis (z).
15471
15479
  *
15472
15480
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-OGCFeatureLayer.html#elevationInfo)
15473
15481
  */
@@ -15574,13 +15582,13 @@ declare namespace __esri {
15574
15582
 
15575
15583
  export interface OGCFeatureLayerElevationInfo extends Object {
15576
15584
  /**
15577
- * Defines how the graphic is placed with respect to the terrain surface.
15585
+ * Defines how the feature is placed with respect to the terrain surface or 3D objects in the scene.
15578
15586
  *
15579
15587
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-OGCFeatureLayer.html#elevationInfo)
15580
15588
  */
15581
15589
  mode: "on-the-ground" | "relative-to-ground" | "absolute-height" | "relative-to-scene";
15582
15590
  /**
15583
- * An elevation offset, which is added to the vertical position of the graphic.
15591
+ * An elevation offset, which is added to the vertical position of the feature.
15584
15592
  *
15585
15593
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-OGCFeatureLayer.html#elevationInfo)
15586
15594
  */
@@ -16170,7 +16178,7 @@ declare namespace __esri {
16170
16178
  */
16171
16179
  definitionExpression: string;
16172
16180
  /**
16173
- * Specifies how graphics are placed on the vertical axis (z).
16181
+ * Specifies how features are placed on the vertical axis (z).
16174
16182
  *
16175
16183
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-SceneLayer.html#elevationInfo)
16176
16184
  */
@@ -16364,7 +16372,7 @@ declare namespace __esri {
16364
16372
  */
16365
16373
  definitionExpression?: string;
16366
16374
  /**
16367
- * Specifies how graphics are placed on the vertical axis (z).
16375
+ * Specifies how features are placed on the vertical axis (z).
16368
16376
  *
16369
16377
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-SceneLayer.html#elevationInfo)
16370
16378
  */
@@ -16692,13 +16700,13 @@ declare namespace __esri {
16692
16700
 
16693
16701
  export interface SceneLayerElevationInfo extends Object {
16694
16702
  /**
16695
- * Defines how the graphic is placed with respect to the terrain surface.
16703
+ * Defines how the feature is placed with respect to the terrain surface.
16696
16704
  *
16697
16705
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-SceneLayer.html#elevationInfo)
16698
16706
  */
16699
16707
  mode: "on-the-ground" | "relative-to-ground" | "absolute-height" | "relative-to-scene";
16700
16708
  /**
16701
- * An elevation offset which is added to the vertical position of the graphic.
16709
+ * An elevation offset which is added to the vertical position of the feature.
16702
16710
  *
16703
16711
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-SceneLayer.html#elevationInfo)
16704
16712
  */
@@ -16793,7 +16801,7 @@ declare namespace __esri {
16793
16801
  */
16794
16802
  displayField: string;
16795
16803
  /**
16796
- * Specifies how graphics are placed on the vertical axis (z).
16804
+ * Specifies how features are placed on the vertical axis (z).
16797
16805
  *
16798
16806
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-StreamLayer.html#elevationInfo)
16799
16807
  */
@@ -16997,7 +17005,7 @@ declare namespace __esri {
16997
17005
  */
16998
17006
  displayField?: string;
16999
17007
  /**
17000
- * Specifies how graphics are placed on the vertical axis (z).
17008
+ * Specifies how features are placed on the vertical axis (z).
17001
17009
  *
17002
17010
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-StreamLayer.html#elevationInfo)
17003
17011
  */
@@ -17142,7 +17150,7 @@ declare namespace __esri {
17142
17150
  */
17143
17151
  mode: "on-the-ground" | "relative-to-ground" | "absolute-height" | "relative-to-scene";
17144
17152
  /**
17145
- * An elevation offset, which is added to the vertical position of the graphic.
17153
+ * An elevation offset, which is added to the vertical position of the feature.
17146
17154
  *
17147
17155
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-StreamLayer.html#elevationInfo)
17148
17156
  */
@@ -24333,7 +24341,7 @@ declare namespace __esri {
24333
24341
  */
24334
24342
  displayField: string;
24335
24343
  /**
24336
- * Specifies how graphics are placed on the vertical axis (z).
24344
+ * Specifies how features are placed on the vertical axis (z).
24337
24345
  *
24338
24346
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-WFSLayer.html#elevationInfo)
24339
24347
  */
@@ -24551,7 +24559,7 @@ declare namespace __esri {
24551
24559
  */
24552
24560
  displayField?: string;
24553
24561
  /**
24554
- * Specifies how graphics are placed on the vertical axis (z).
24562
+ * Specifies how features are placed on the vertical axis (z).
24555
24563
  *
24556
24564
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-WFSLayer.html#elevationInfo)
24557
24565
  */
@@ -24994,7 +25002,7 @@ declare namespace __esri {
24994
25002
  */
24995
25003
  mode: "on-the-ground" | "relative-to-ground" | "absolute-height" | "relative-to-scene";
24996
25004
  /**
24997
- * An elevation offset, which is added to the vertical position of the graphic.
25005
+ * An elevation offset, which is added to the vertical position of the feature.
24998
25006
  *
24999
25007
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-WFSLayer.html#elevationInfo)
25000
25008
  */
@@ -56075,6 +56083,12 @@ declare namespace __esri {
56075
56083
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-CIMSymbol.html#CIMPictureMarker)
56076
56084
  */
56077
56085
  anchorPoint?: CIMPictureMarkerAnchorPoint;
56086
+ /**
56087
+ * A value which specifies if the anchor point location is considered a percentage of the size or as an absolute distance.
56088
+ *
56089
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-CIMSymbol.html#CIMPictureMarker)
56090
+ */
56091
+ anchorPointUnits?: "Relative" | "Absolute";
56078
56092
  /**
56079
56093
  * The distance that the image is offset in the horizontal direction.
56080
56094
  *
@@ -56198,6 +56212,12 @@ declare namespace __esri {
56198
56212
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-CIMSymbol.html#CIMPictureStroke)
56199
56213
  */
56200
56214
  joinStyle?: "Bevel" | "Round" | "Miter";
56215
+ /**
56216
+ * The maximum 'sharpness' that is allowed for miter joins.
56217
+ *
56218
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-CIMSymbol.html#CIMPictureStroke)
56219
+ */
56220
+ miterLimit?: number;
56201
56221
  }
56202
56222
 
56203
56223
  /**
@@ -56219,6 +56239,12 @@ declare namespace __esri {
56219
56239
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-CIMSymbol.html#CIMPointSymbol)
56220
56240
  */
56221
56241
  angle?: number;
56242
+ /**
56243
+ * Indicates whether point symbols align to the map or to the display when a rotation is applied to the map.
56244
+ *
56245
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-CIMSymbol.html#CIMPointSymbol)
56246
+ */
56247
+ angleAlignment?: "Display" | "Map";
56222
56248
  /**
56223
56249
  * The geometric effects applied to the symbol.
56224
56250
  *
@@ -56366,6 +56392,12 @@ declare namespace __esri {
56366
56392
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-CIMSymbol.html#CIMSolidStroke)
56367
56393
  */
56368
56394
  joinStyle?: "Bevel" | "Round" | "Miter";
56395
+ /**
56396
+ * The maximum 'sharpness' that is allowed for miter joins.
56397
+ *
56398
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-CIMSymbol.html#CIMSolidStroke)
56399
+ */
56400
+ miterLimit?: number;
56369
56401
  }
56370
56402
 
56371
56403
  /**
@@ -56544,6 +56576,12 @@ declare namespace __esri {
56544
56576
  * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-CIMSymbol.html#CIMVectorMarker)
56545
56577
  */
56546
56578
  anchorPoint?: CIMVectorMarkerAnchorPoint;
56579
+ /**
56580
+ * A value which specifies if the anchor point location is considered a percentage of the size or as an absolute distance.
56581
+ *
56582
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-CIMSymbol.html#CIMVectorMarker)
56583
+ */
56584
+ anchorPointUnits?: "Relative" | "Absolute";
56547
56585
  /**
56548
56586
  * The distance that the image is offset in the horizontal direction.
56549
56587
  *
@@ -68494,6 +68532,14 @@ declare namespace __esri {
68494
68532
  }
68495
68533
 
68496
68534
  interface Bookmark extends Accessor {
68535
+ /**
68536
+ * The extent of the specified bookmark item.
68537
+ *
68538
+ * @deprecated since 4.17. Use [viewpoint](#viewpoint) instead.
68539
+ *
68540
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webmap-Bookmark.html#extent)
68541
+ */
68542
+ extent: Extent;
68497
68543
  /**
68498
68544
  * The name of the bookmark item.
68499
68545
  *
@@ -68532,6 +68578,14 @@ declare namespace __esri {
68532
68578
  export const Bookmark: BookmarkConstructor;
68533
68579
 
68534
68580
  interface BookmarkProperties {
68581
+ /**
68582
+ * The extent of the specified bookmark item.
68583
+ *
68584
+ * @deprecated since 4.17. Use [viewpoint](#viewpoint) instead.
68585
+ *
68586
+ * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webmap-Bookmark.html#extent)
68587
+ */
68588
+ extent?: ExtentProperties;
68535
68589
  /**
68536
68590
  * The name of the bookmark item.
68537
68591
  *
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- import{_ as t}from"../../chunks/tslib.es6.js";import{id as r}from"../../kernel.js";import e from"../../request.js";import{result as s}from"../../core/asyncUtils.js";import o from"../../core/Error.js";import i from"../../core/Logger.js";import{isNone as a,isSome as l}from"../../core/maybe.js";import{throwIfAborted as n,isAbortError as p,throwIfAbortError as m}from"../../core/promiseUtils.js";import{normalize as u,hasSamePortal as c}from"../../core/urlUtils.js";import{property as d}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/has.js";import"../../core/accessorSupport/ensureType.js";import{reader as h}from"../../core/accessorSupport/decorators/reader.js";import{subclass as f}from"../../core/accessorSupport/decorators/subclass.js";import{writer as y}from"../../core/accessorSupport/decorators/writer.js";import g from"../../portal/Portal.js";import I from"../../portal/PortalItem.js";import j from"../../portal/PortalUser.js";const v=i.getLogger("esri.layers.mixins.PortalLayer"),w=i=>{let w=class extends i{constructor(){super(...arguments),this.resourceReferences={portalItem:null,paths:[]},this.userHasEditingPrivileges=!0}destroy(){var t;null==(t=this.portalItem)||t.destroy(),this.portalItem=null}set portalItem(t){t!==this._get("portalItem")&&(this.removeOrigin("portal-item"),this._set("portalItem",t))}readPortalItem(t,r,e){if(r.itemId)return new I({id:r.itemId,portal:e&&e.portal})}writePortalItem(t,r){t&&t.id&&(r.itemId=t.id)}async loadFromPortal(t,r){if(this.portalItem&&this.portalItem.id)try{const e=await import("../../portal/support/layersLoader.js");return n(r),await e.load({instance:this,supportedTypes:t.supportedTypes,validateItem:t.validateItem,supportsData:t.supportsData},r)}catch(e){throw p(e)||v.warn(`Failed to load layer (${this.title}, ${this.id}) portal item (${this.portalItem.id})\n ${e}`),e}}async finishLoadEditablePortalLayer(t){this._set("userHasEditingPrivileges",await this._fetchUserHasEditingPrivileges(t).catch((t=>(m(t),!0))))}async _fetchUserHasEditingPrivileges(t){const e=this.url?null==r?void 0:r.findCredential(this.url):null;if(!e)return!0;const s=P.credential===e?P.user:await this._fetchEditingUser(t);return P.credential=e,P.user=s,a(s)||null==s.privileges||s.privileges.includes("features:user:edit")}async _fetchEditingUser(t){var o,i;const a=null==(o=this.portalItem)||null==(i=o.portal)?void 0:i.user;if(a)return a;const n=r.findServerInfo(this.url);if(null==n||!n.owningSystemUrl)return null;const p=`${n.owningSystemUrl}/sharing/rest`,m=g.getDefault();if(m&&m.loaded&&u(m.restUrl)===u(p))return m.user;const c=`${p}/community/self`,d=l(t)?t.signal:null,h=await s(e(c,{authMode:"no-prompt",query:{f:"json"},signal:d}));return h.ok?j.fromJSON(h.value.data):null}read(t,r){r&&(r.layer=this),super.read(t,r)}write(t,r){const e=r&&r.portal,s=this.portalItem&&this.portalItem.id&&(this.portalItem.portal||g.getDefault());return e&&s&&!c(s.restUrl,e.restUrl)?(r.messages&&r.messages.push(new o("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 the scene, set the layer.portalItem to null or save the scene to the same portal as the item associated with the layer`,{layer:this})),null):super.write(t,{...r,layer:this})}};return t([d({type:I})],w.prototype,"portalItem",null),t([h("web-document","portalItem",["itemId"])],w.prototype,"readPortalItem",null),t([y("web-document","portalItem",{itemId:{type:String}})],w.prototype,"writePortalItem",null),t([d({clonable:!1})],w.prototype,"resourceReferences",void 0),t([d({readOnly:!0})],w.prototype,"userHasEditingPrivileges",void 0),w=t([f("esri.layers.mixins.PortalLayer")],w),w},P={credential:null,user:null};export{w as PortalLayer};
5
+ import{_ as t}from"../../chunks/tslib.es6.js";import{id as r}from"../../kernel.js";import e from"../../request.js";import{result as s}from"../../core/asyncUtils.js";import o from"../../core/Error.js";import i from"../../core/Logger.js";import{isNone as a,isSome as l}from"../../core/maybe.js";import{throwIfAborted as p,isAbortError as n,throwIfAbortError as m}from"../../core/promiseUtils.js";import{normalize as u,hasSamePortal as c}from"../../core/urlUtils.js";import{property as d}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/has.js";import"../../core/accessorSupport/ensureType.js";import{reader as h}from"../../core/accessorSupport/decorators/reader.js";import{subclass as f}from"../../core/accessorSupport/decorators/subclass.js";import{writer as y}from"../../core/accessorSupport/decorators/writer.js";import g from"../../portal/Portal.js";import I from"../../portal/PortalItem.js";import j from"../../portal/PortalUser.js";const v=i.getLogger("esri.layers.mixins.PortalLayer"),w=i=>{let w=class extends i{constructor(){super(...arguments),this.resourceReferences={portalItem:null,paths:[]},this.userHasEditingPrivileges=!0}destroy(){var t;null==(t=this.portalItem)||t.destroy(),this.portalItem=null}set portalItem(t){t!==this._get("portalItem")&&(this.removeOrigin("portal-item"),this._set("portalItem",t))}readPortalItem(t,r,e){if(r.itemId)return new I({id:r.itemId,portal:e&&e.portal})}writePortalItem(t,r){t&&t.id&&(r.itemId=t.id)}async loadFromPortal(t,r){if(this.portalItem&&this.portalItem.id)try{const e=await import("../../portal/support/layersLoader.js");return p(r),await e.load({instance:this,supportedTypes:t.supportedTypes,validateItem:t.validateItem,supportsData:t.supportsData},r)}catch(e){throw n(e)||v.warn(`Failed to load layer (${this.title}, ${this.id}) portal item (${this.portalItem.id})\n ${e}`),e}}async finishLoadEditablePortalLayer(t){this._set("userHasEditingPrivileges",await this._fetchUserHasEditingPrivileges(t).catch((t=>(m(t),!0))))}async _fetchUserHasEditingPrivileges(t){const e=this.url?null==r?void 0:r.findCredential(this.url):null;if(!e)return!0;const s=P.credential===e?P.user:await this._fetchEditingUser(t);return P.credential=e,P.user=s,a(s)||null==s.privileges||s.privileges.includes("features:user:edit")}async _fetchEditingUser(t){var o,i;const a=null==(o=this.portalItem)||null==(i=o.portal)?void 0:i.user;if(a)return a;const p=r.findServerInfo(this.url);if(null==p||!p.owningSystemUrl)return null;const n=`${p.owningSystemUrl}/sharing/rest`,m=g.getDefault();if(m&&m.loaded&&u(m.restUrl)===u(n))return m.user;const c=`${n}/community/self`,d=l(t)?t.signal:null,h=await s(e(c,{authMode:"no-prompt",query:{f:"json"},signal:d}));return h.ok?j.fromJSON(h.value.data):null}read(t,r){r&&(r.layer=this),super.read(t,r)}write(t,r){const e=r&&r.portal,s=this.portalItem&&this.portalItem.id&&(this.portalItem.portal||g.getDefault());return e&&s&&!c(s.restUrl,e.restUrl)?(r.messages&&r.messages.push(new o("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(t,{...r,layer:this})}};return t([d({type:I})],w.prototype,"portalItem",null),t([h("web-document","portalItem",["itemId"])],w.prototype,"readPortalItem",null),t([y("web-document","portalItem",{itemId:{type:String}})],w.prototype,"writePortalItem",null),t([d({clonable:!1})],w.prototype,"resourceReferences",void 0),t([d({readOnly:!0})],w.prototype,"userHasEditingPrivileges",void 0),w=t([f("esri.layers.mixins.PortalLayer")],w),w},P={credential:null,user:null};export{w as PortalLayer};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- import{unwrap as e,isSome as r}from"../../core/maybe.js";import{WorkerHandle as t}from"../../core/workers/WorkerHandle.js";class s extends t{constructor(e=null){super("LercWorker","_decode",e,{strategy:"dedicated"}),this.schedule=e,this.ref=0}decode(e,r,t){return e&&0!==e.byteLength?this.invoke({buffer:e,options:r},t):Promise.resolve(null)}getTransferList(e){return[e.buffer]}release(){--this.ref<=0&&(o.forEach(((e,r)=>{e===this&&o.delete(r)})),this.destroy())}}const o=new Map;function n(t=null){let n=o.get(e(t));return n||(r(t)?(n=new s((e=>t.schedule(e))),o.set(t,n)):(n=new s,o.set(null,n))),++n.ref,n}export{n as acquireDecoder};
5
+ import{unwrap as e,isSome as r}from"../../core/maybe.js";import{WorkerHandle as t}from"../../core/workers/WorkerHandle.js";class s extends t{constructor(e=null){super("LercWorker","_decode",{_decode:e=>[e.buffer]},e,{strategy:"dedicated"}),this.schedule=e,this.ref=0}decode(e,r,t){return e&&0!==e.byteLength?this.invoke({buffer:e,options:r},t):Promise.resolve(null)}release(){--this.ref<=0&&(o.forEach(((e,r)=>{e===this&&o.delete(r)})),this.destroy())}}const o=new Map;function n(t=null){let n=o.get(e(t));return n||(r(t)?(n=new s((e=>t.schedule(e))),o.set(t,n)):(n=new s,o.set(null,n))),++n.ref,n}export{n as acquireDecoder};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arcgis/core",
3
- "version": "4.24.0-next.20220427",
3
+ "version": "4.24.0-next.20220430",
4
4
  "homepage": "https://js.arcgis.com",
5
5
  "description": "ArcGIS API for JavaScript: A complete 2D and 3D mapping and data visualization API",
6
6
  "keywords": [
@@ -29,7 +29,7 @@
29
29
  "@esri/calcite-colors": "~6.0.1",
30
30
  "@esri/calcite-components": "1.0.0-beta.80",
31
31
  "@popperjs/core": "~2.11.5",
32
- "focus-trap": "~6.8.1",
32
+ "focus-trap": "~6.9.0",
33
33
  "luxon": "~2.3.2",
34
34
  "sortablejs": "~1.15.0"
35
35
  },
package/request.js CHANGED
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- import e from"./config.js";import{id as t}from"./kernel.js";import r from"./core/Error.js";import s from"./core/has.js";import{clone as o}from"./core/lang.js";import{unwrap as n}from"./core/maybe.js";import{onAbort as a,isAbortError as i,createAbortError as l,isAborted as u}from"./core/promiseUtils.js";import{isDataProtocol as c,isBlobProtocol as d,normalize as p,getInterceptor as m,isTrustedServer as h,getOrigin as f,toHTTPS as y,addQueryParameter as w,objectToQuery as g,getProxyRule as b,getProxyUrl as q,addQueryParameters as T,hasSameOrigin as k,getAppUrl as S,addProxyRule as O}from"./core/urlUtils.js";import{supportsApiKey as x}from"./support/apiKeyUtils.js";import{loadImageAsync as v}from"./support/requestUtils.js";async function C(e,t){var r;const o=c(e),i=d(e);i||o||(e=p(e));const l={url:e,requestOptions:{...n(t)}};let u=m(e);if(u){const e=await K(u,l);if(null!=e)return{data:e,getHeader:_,requestOptions:l.requestOptions,url:l.url};u.after||u.error||(u=null)}if(e=l.url,"image"===(t=l.requestOptions).responseType){if(s("host-webworker")||s("host-node"))throw R("request:invalid-parameters",new Error("responseType 'image' is not supported in Web Workers or Node environment"),l)}else if(o)throw R("request:invalid-parameters",new Error("Data URLs are not supported for responseType = "+t.responseType),l);if("head"===t.method){if(t.body)throw R("request:invalid-parameters",new Error("body parameter cannot be set when method is 'head'"),l);if(o||i)throw R("request:invalid-parameters",new Error("data and blob URLs are not supported for method 'head'"),l)}if(await H(),E)return E.execute(e,t);const h=new AbortController;a(t,(()=>h.abort()));const f={controller:h,credential:null,credentialToken:null,fetchOptions:null,hasToken:!1,interceptor:u,params:l,redoRequest:!1,useIdentity:L.useIdentity,useProxy:!1,useSSL:!1,withCredentials:!1},y=await z(f);return null==(r=u)||null==r.after||r.after(y),y}let E;const L=e.request,U="FormData"in globalThis,j=[499,498,403,401],P=["COM_0056","COM_0057","SB_0008"],D=[/\/arcgis\/tokens/i,/\/sharing(\/rest)?\/generatetoken/i,/\/rest\/info/i],_=()=>null,F=Symbol();function I(e){const t=f(e);t&&!C._corsServers.includes(t)&&C._corsServers.push(t)}function M(e){const t=f(e);return!t||t.endsWith(".arcgis.com")||C._corsServers.includes(t)||h(t)}function R(e,t,s,n){let a="Error";const u={url:s.url,requestOptions:s.requestOptions,getHeader:_,ssl:!1};if(t instanceof r)return t.details?(t.details=o(t.details),t.details.url=s.url,t.details.requestOptions=s.requestOptions):t.details=u,t;if(t){const e=n&&(e=>n.headers.get(e)),r=n&&n.status,s=t.message;s&&(a=s),e&&(u.getHeader=e),u.httpStatus=(null!=t.httpCode?t.httpCode:t.code)||r||0,u.subCode=t.subcode,u.messageCode=t.messageCode,"string"==typeof t.details?u.messages=[t.details]:u.messages=t.details,u.raw=F in t?t[F]:t}return i(t)?l():new r(e,a,u)}async function H(){s("host-webworker")?E||(E=await import("./core/workers/request.js")):C._abortableFetch||(C._abortableFetch=globalThis.fetch.bind(globalThis))}async function A(){t||await import("./identity/IdentityManager.js")}async function B(r){const s=r.params.url,o=r.params.requestOptions,n=r.controller.signal,a=o.body;let i=null,l=null,c=null;if(U&&"HTMLFormElement"in globalThis&&(a instanceof FormData?i=a:a instanceof HTMLFormElement&&(l=a,i=new FormData(l))),"string"==typeof a&&(c=a),r.fetchOptions={cache:o.cacheBust&&!C._abortableFetch.polyfill?"no-cache":"default",credentials:"same-origin",headers:o.headers||{},method:"head"===o.method?"HEAD":"GET",mode:"cors",redirect:"follow",signal:n},(i||c)&&(r.fetchOptions.body=i||c),"anonymous"===o.authMode&&(r.useIdentity=!1),r.hasToken=!!(/token=/i.test(s)||o.query&&o.query.token||i&&i.get&&i.get("token")||l&&l.elements.token),!r.hasToken&&e.apiKey&&x(s)&&(o.query||(o.query={}),o.query.token=e.apiKey,r.hasToken=!0),r.useIdentity&&!r.hasToken&&!r.credentialToken&&!N(s)&&!u(n)){let e;"immediate"===o.authMode?(await A(),e=await t.getCredential(s,{signal:n}),r.credential=e):"no-prompt"===o.authMode?(await A(),e=await t.getCredential(s,{prompt:!1,signal:n}).catch((()=>{})),r.credential=e):t&&(e=t.findCredential(s)),e&&(r.credentialToken=e.token,r.useSSL=!!e.ssl)}}function N(e){return D.some((t=>t.test(e)))}async function $(e){let r=e.params.url;const o=e.params.requestOptions,n=e.fetchOptions,a=d(r)||c(r),i=o.responseType||"json",u=a?0:null!=o.timeout?o.timeout:L.timeout;let p=!1;if(!a){e.useSSL&&(r=y(r)),o.cacheBust&&"default"===n.cache&&(r=w(r,"request.preventCache",Date.now()));let a={...o.query};e.credentialToken&&(a.token=e.credentialToken);let i=g(a);s("esri-url-encodes-apostrophe")&&(i=i.replace(/'/g,"%27"));const l=r.length+1+i.length;let u;p="delete"===o.method||"post"===o.method||"put"===o.method||!!o.body||l>L.maxUrlLength;const c=o.useProxy||!!b(r);if(c){const e=q(r);u=e.path,!p&&u.length+1+l>L.maxUrlLength&&(p=!0),e.query&&(a={...e.query,...a})}if("HEAD"===n.method&&(p||c)){if(p){if(l>L.maxUrlLength)throw R("request:invalid-parameters",new Error("URL exceeds maximum length"),e.params);throw R("request:invalid-parameters",new Error("cannot use POST request when method is 'head'"),e.params)}if(c)throw R("request:invalid-parameters",new Error("cannot use proxy when method is 'head'"),e.params)}if(p?(n.method="delete"===o.method?"DELETE":"put"===o.method?"PUT":"POST",o.body?r=T(r,a):(n.body=g(a),n.headers["Content-Type"]="application/x-www-form-urlencoded")):r=T(r,a),c&&(e.useProxy=!0,r=`${u}?${r}`),a.token&&U&&n.body instanceof FormData){const e=n.body;e.set?e.set("token",a.token):e.append("token",a.token)}if(o.hasOwnProperty("withCredentials"))e.withCredentials=o.withCredentials;else if(!k(r,S()))if(h(r))e.withCredentials=!0;else if(t){const s=t.findServerInfo(r);s&&s.webTierAuth&&(e.withCredentials=!0)}e.withCredentials&&(n.credentials="include")}let m,x,v=0,E=!1;u>0&&(v=setTimeout((()=>{E=!0,e.controller.abort()}),u));try{if("native-request-init"===o.responseType)x=n,x.url=r;else if("image"!==o.responseType||"default"!==n.cache||"GET"!==n.method||p||W(o.headers)||!a&&!e.useProxy&&L.proxyUrl&&!M(r)){if(m=await C._abortableFetch(r,n),e.useProxy||I(r),"native"===o.responseType)x=m;else if("HEAD"!==n.method)if(m.ok){switch(i){case"array-buffer":x=await m.arrayBuffer();break;case"blob":case"image":x=await m.blob();break;default:x=await m.text()}if(v&&(clearTimeout(v),v=0),"json"===i||"xml"===i||"document"===i)if(x)switch(i){case"json":x=JSON.parse(x);break;case"xml":x=G(x,"application/xml");break;case"document":x=G(x,"text/html")}else x=null;if(x){if("array-buffer"===i||"blob"===i){const e=m.headers.get("Content-Type");if(/application\/json|text\/plain/i.test(e)&&x["blob"===i?"size":"byteLength"]<=750)try{const e=await new Response(x).json();e.error&&(x=e)}catch{}}"image"===i&&x instanceof Blob&&(x=await X(URL.createObjectURL(x),e,!0))}}else x=await m.text()}else x=await X(r,e)}catch(j){if("AbortError"===j.name){if(E)throw new Error("Timeout exceeded");throw l("Request canceled")}if(!(!m&&j instanceof TypeError&&L.proxyUrl)||o.body||"delete"===o.method||"head"===o.method||"post"===o.method||"put"===o.method||e.useProxy||M(r))throw j;e.redoRequest=!0,O({proxyUrl:L.proxyUrl,urlPrefix:f(r)})}finally{v&&clearTimeout(v)}return[m,x]}async function K(e,t){if(null!=e.responseData)return e.responseData;if(e.headers&&(t.requestOptions.headers={...t.requestOptions.headers,...e.headers}),e.query&&(t.requestOptions.query={...t.requestOptions.query,...e.query}),e.before){let o,n;try{n=await e.before(t)}catch(s){o=R("request:interceptor",s,t)}if((n instanceof Error||n instanceof r)&&(o=R("request:interceptor",n,t)),o)throw e.error&&e.error(o),o;return n}}function W(e){if(e)for(const t of Object.getOwnPropertyNames(e))if(e[t])return!0;return!1}function G(e,t){let r;try{r=(new DOMParser).parseFromString(e,t)}catch{}if(!r||r.getElementsByTagName("parsererror").length)throw new SyntaxError("XML Parse error");return r}async function z(e){var r,s;let o,n;await B(e);try{do{[o,n]=await $(e)}while(!await J(e,o,n))}catch(l){const t=R("request:server",l,e.params,o);throw t.details.ssl=e.useSSL,e.interceptor&&e.interceptor.error&&e.interceptor.error(t),t}const a=e.params.url;if(/\/sharing\/rest\/(accounts|portals)\/self/i.test(a)&&!e.hasToken&&!e.credentialToken&&null!=(r=n)&&null!=(s=r.user)&&s.username&&!h(a)){const e=f(a,!0);e&&L.trustedServers.push(e)}const i=e.credential;if(i&&t){const e=t.findServerInfo(i.server);let r=e&&e.owningSystemUrl;if(r){r=r.replace(/\/?$/,"/sharing");const e=t.findCredential(r,i.userId);e&&-1===t._getIdenticalSvcIdx(r,e)&&e.resources.unshift(r)}}return{data:n,getHeader:o?e=>o.headers.get(e):_,requestOptions:e.params.requestOptions,ssl:e.useSSL,url:e.params.url}}async function J(e,r,s){if(e.redoRequest)return e.redoRequest=!1,!1;const o=e.params.requestOptions;if(!r||"native"===o.responseType||"native-request-init"===o.responseType)return!0;let n,a,i,l;if(!r.ok)throw n=new Error(`Unable to load ${r.url} status: ${r.status}`),n[F]=s,n;null!=s&&s.error&&(n=s.error),n&&(a=Number(n.code),i=n.hasOwnProperty("subcode")?Number(n.subcode):null,l=n.messageCode,l=l&&l.toUpperCase());const u=o.authMode;if(403===a&&(4===i||n.message&&n.message.toLowerCase().includes("ssl")&&!n.message.toLowerCase().includes("permission"))){if(!e.useSSL)return e.useSSL=!0,!1}else if(!e.hasToken&&e.useIdentity&&("no-prompt"!==u||498===a)&&j.includes(a)&&!N(e.params.url)&&(403!==a||!P.includes(l)&&(null==i||2===i&&e.credentialToken))){await A();try{const r=await t.getCredential(e.params.url,{error:R("request:server",n,e.params),prompt:"no-prompt"!==u,signal:e.controller.signal,token:e.credentialToken});return e.credential=r,e.credentialToken=r.token,e.useSSL=e.useSSL||r.ssl,!1}catch(c){if("no-prompt"===u)return e.credential=null,e.credentialToken=null,!1;n=c}}if(n)throw n;return!0}function X(e,t,r=!1){const s=t.controller.signal,o=new Image;return t.withCredentials?o.crossOrigin="use-credentials":o.crossOrigin="anonymous",o.alt="",o.src=e,v(o,e,r,s)}C._abortableFetch=null,C._corsServers=["https://server.arcgisonline.com","https://services.arcgisonline.com"];export{C as default};
5
+ import e from"./config.js";import{id as t}from"./kernel.js";import r from"./core/Error.js";import s from"./core/has.js";import{clone as o}from"./core/lang.js";import{unwrap as n}from"./core/maybe.js";import{onAbort as a,isAbortError as i,createAbortError as l,isAborted as u}from"./core/promiseUtils.js";import{isDataProtocol as c,isBlobProtocol as d,normalize as p,getInterceptor as m,isTrustedServer as h,getOrigin as f,toHTTPS as y,addQueryParameter as w,objectToQuery as g,getProxyRule as b,getProxyUrl as q,addQueryParameters as T,hasSameOrigin as k,getAppUrl as S,addProxyRule as O}from"./core/urlUtils.js";import{supportsApiKey as x}from"./support/apiKeyUtils.js";import{loadImageAsync as v}from"./support/requestUtils.js";async function C(e,t){var r;const o=c(e),i=d(e);i||o||(e=p(e));const l={url:e,requestOptions:{...n(t)}};let u=m(e);if(u){const e=await K(u,l);if(null!=e)return{data:e,getHeader:_,requestOptions:l.requestOptions,url:l.url};u.after||u.error||(u=null)}if(e=l.url,"image"===(t=l.requestOptions).responseType){if(s("host-webworker")||s("host-node"))throw R("request:invalid-parameters",new Error("responseType 'image' is not supported in Web Workers or Node environment"),l)}else if(o)throw R("request:invalid-parameters",new Error("Data URLs are not supported for responseType = "+t.responseType),l);if("head"===t.method){if(t.body)throw R("request:invalid-parameters",new Error("body parameter cannot be set when method is 'head'"),l);if(o||i)throw R("request:invalid-parameters",new Error("data and blob URLs are not supported for method 'head'"),l)}if(await H(),E)return E.execute(e,t);const h=new AbortController;a(t,(()=>h.abort()));const f={controller:h,credential:null,credentialToken:null,fetchOptions:null,hasToken:!1,interceptor:u,params:l,redoRequest:!1,useIdentity:L.useIdentity,useProxy:!1,useSSL:!1,withCredentials:!1},y=await z(f);return null==(r=u)||null==r.after||r.after(y),y}let E;const L=e.request,U="FormData"in globalThis,j=[499,498,403,401],P=["COM_0056","COM_0057","SB_0008"],D=[/\/arcgis\/tokens/i,/\/sharing(\/rest)?\/generatetoken/i,/\/rest\/info/i],_=()=>null,F=Symbol();function I(e){const t=f(e);t&&!C._corsServers.includes(t)&&C._corsServers.push(t)}function M(e){const t=f(e);return!t||t.endsWith(".arcgis.com")||C._corsServers.includes(t)||h(t)}function R(e,t,s,n){let a="Error";const u={url:s.url,requestOptions:s.requestOptions,getHeader:_,ssl:!1};if(t instanceof r)return t.details?(t.details=o(t.details),t.details.url=s.url,t.details.requestOptions=s.requestOptions):t.details=u,t;if(t){const e=n&&(e=>n.headers.get(e)),r=n&&n.status,s=t.message;s&&(a=s),e&&(u.getHeader=e),u.httpStatus=(null!=t.httpCode?t.httpCode:t.code)||r||0,u.subCode=t.subcode,u.messageCode=t.messageCode,"string"==typeof t.details?u.messages=[t.details]:u.messages=t.details,u.raw=F in t?t[F]:t}return i(t)?l():new r(e,a,u)}async function H(){s("host-webworker")?E||(E=await import("./core/workers/request.js")):C._abortableFetch||(C._abortableFetch=globalThis.fetch.bind(globalThis))}async function A(){t||await import("./identity/IdentityManager.js")}async function B(r){const s=r.params.url,o=r.params.requestOptions,n=r.controller.signal,a=o.body;let i=null,l=null,c=null;if(U&&"HTMLFormElement"in globalThis&&(a instanceof FormData?i=a:a instanceof HTMLFormElement&&(l=a,i=new FormData(l))),"string"==typeof a&&(c=a),r.fetchOptions={cache:o.cacheBust&&!C._abortableFetch.polyfill?"no-cache":"default",credentials:"same-origin",headers:o.headers||{},method:"head"===o.method?"HEAD":"GET",mode:"cors",priority:L.priority,redirect:"follow",signal:n},(i||c)&&(r.fetchOptions.body=i||c),"anonymous"===o.authMode&&(r.useIdentity=!1),r.hasToken=!!(/token=/i.test(s)||o.query&&o.query.token||i&&i.get&&i.get("token")||l&&l.elements.token),!r.hasToken&&e.apiKey&&x(s)&&(o.query||(o.query={}),o.query.token=e.apiKey,r.hasToken=!0),r.useIdentity&&!r.hasToken&&!r.credentialToken&&!N(s)&&!u(n)){let e;"immediate"===o.authMode?(await A(),e=await t.getCredential(s,{signal:n}),r.credential=e):"no-prompt"===o.authMode?(await A(),e=await t.getCredential(s,{prompt:!1,signal:n}).catch((()=>{})),r.credential=e):t&&(e=t.findCredential(s)),e&&(r.credentialToken=e.token,r.useSSL=!!e.ssl)}}function N(e){return D.some((t=>t.test(e)))}async function $(e){let r=e.params.url;const o=e.params.requestOptions,n=e.fetchOptions,a=d(r)||c(r),i=o.responseType||"json",u=a?0:null!=o.timeout?o.timeout:L.timeout;let p=!1;if(!a){e.useSSL&&(r=y(r)),o.cacheBust&&"default"===n.cache&&(r=w(r,"request.preventCache",Date.now()));let a={...o.query};e.credentialToken&&(a.token=e.credentialToken);let i=g(a);s("esri-url-encodes-apostrophe")&&(i=i.replace(/'/g,"%27"));const l=r.length+1+i.length;let u;p="delete"===o.method||"post"===o.method||"put"===o.method||!!o.body||l>L.maxUrlLength;const c=o.useProxy||!!b(r);if(c){const e=q(r);u=e.path,!p&&u.length+1+l>L.maxUrlLength&&(p=!0),e.query&&(a={...e.query,...a})}if("HEAD"===n.method&&(p||c)){if(p){if(l>L.maxUrlLength)throw R("request:invalid-parameters",new Error("URL exceeds maximum length"),e.params);throw R("request:invalid-parameters",new Error("cannot use POST request when method is 'head'"),e.params)}if(c)throw R("request:invalid-parameters",new Error("cannot use proxy when method is 'head'"),e.params)}if(p?(n.method="delete"===o.method?"DELETE":"put"===o.method?"PUT":"POST",o.body?r=T(r,a):(n.body=g(a),n.headers["Content-Type"]="application/x-www-form-urlencoded")):r=T(r,a),c&&(e.useProxy=!0,r=`${u}?${r}`),a.token&&U&&n.body instanceof FormData){const e=n.body;e.set?e.set("token",a.token):e.append("token",a.token)}if(o.hasOwnProperty("withCredentials"))e.withCredentials=o.withCredentials;else if(!k(r,S()))if(h(r))e.withCredentials=!0;else if(t){const s=t.findServerInfo(r);s&&s.webTierAuth&&(e.withCredentials=!0)}e.withCredentials&&(n.credentials="include")}let m,x,v=0,E=!1;u>0&&(v=setTimeout((()=>{E=!0,e.controller.abort()}),u));try{if("native-request-init"===o.responseType)x=n,x.url=r;else if("image"!==o.responseType||"default"!==n.cache||"GET"!==n.method||p||W(o.headers)||!a&&!e.useProxy&&L.proxyUrl&&!M(r)){if(m=await C._abortableFetch(r,n),e.useProxy||I(r),"native"===o.responseType)x=m;else if("HEAD"!==n.method)if(m.ok){switch(i){case"array-buffer":x=await m.arrayBuffer();break;case"blob":case"image":x=await m.blob();break;default:x=await m.text()}if(v&&(clearTimeout(v),v=0),"json"===i||"xml"===i||"document"===i)if(x)switch(i){case"json":x=JSON.parse(x);break;case"xml":x=G(x,"application/xml");break;case"document":x=G(x,"text/html")}else x=null;if(x){if("array-buffer"===i||"blob"===i){const e=m.headers.get("Content-Type");if(/application\/json|text\/plain/i.test(e)&&x["blob"===i?"size":"byteLength"]<=750)try{const e=await new Response(x).json();e.error&&(x=e)}catch{}}"image"===i&&x instanceof Blob&&(x=await X(URL.createObjectURL(x),e,!0))}}else x=await m.text()}else x=await X(r,e)}catch(j){if("AbortError"===j.name){if(E)throw new Error("Timeout exceeded");throw l("Request canceled")}if(!(!m&&j instanceof TypeError&&L.proxyUrl)||o.body||"delete"===o.method||"head"===o.method||"post"===o.method||"put"===o.method||e.useProxy||M(r))throw j;e.redoRequest=!0,O({proxyUrl:L.proxyUrl,urlPrefix:f(r)})}finally{v&&clearTimeout(v)}return[m,x]}async function K(e,t){if(null!=e.responseData)return e.responseData;if(e.headers&&(t.requestOptions.headers={...t.requestOptions.headers,...e.headers}),e.query&&(t.requestOptions.query={...t.requestOptions.query,...e.query}),e.before){let o,n;try{n=await e.before(t)}catch(s){o=R("request:interceptor",s,t)}if((n instanceof Error||n instanceof r)&&(o=R("request:interceptor",n,t)),o)throw e.error&&e.error(o),o;return n}}function W(e){if(e)for(const t of Object.getOwnPropertyNames(e))if(e[t])return!0;return!1}function G(e,t){let r;try{r=(new DOMParser).parseFromString(e,t)}catch{}if(!r||r.getElementsByTagName("parsererror").length)throw new SyntaxError("XML Parse error");return r}async function z(e){var r,s;let o,n;await B(e);try{do{[o,n]=await $(e)}while(!await J(e,o,n))}catch(l){const t=R("request:server",l,e.params,o);throw t.details.ssl=e.useSSL,e.interceptor&&e.interceptor.error&&e.interceptor.error(t),t}const a=e.params.url;if(/\/sharing\/rest\/(accounts|portals)\/self/i.test(a)&&!e.hasToken&&!e.credentialToken&&null!=(r=n)&&null!=(s=r.user)&&s.username&&!h(a)){const e=f(a,!0);e&&L.trustedServers.push(e)}const i=e.credential;if(i&&t){const e=t.findServerInfo(i.server);let r=e&&e.owningSystemUrl;if(r){r=r.replace(/\/?$/,"/sharing");const e=t.findCredential(r,i.userId);e&&-1===t._getIdenticalSvcIdx(r,e)&&e.resources.unshift(r)}}return{data:n,getHeader:o?e=>o.headers.get(e):_,requestOptions:e.params.requestOptions,ssl:e.useSSL,url:e.params.url}}async function J(e,r,s){if(e.redoRequest)return e.redoRequest=!1,!1;const o=e.params.requestOptions;if(!r||"native"===o.responseType||"native-request-init"===o.responseType)return!0;let n,a,i,l;if(!r.ok)throw n=new Error(`Unable to load ${r.url} status: ${r.status}`),n[F]=s,n;null!=s&&s.error&&(n=s.error),n&&(a=Number(n.code),i=n.hasOwnProperty("subcode")?Number(n.subcode):null,l=n.messageCode,l=l&&l.toUpperCase());const u=o.authMode;if(403===a&&(4===i||n.message&&n.message.toLowerCase().includes("ssl")&&!n.message.toLowerCase().includes("permission"))){if(!e.useSSL)return e.useSSL=!0,!1}else if(!e.hasToken&&e.useIdentity&&("no-prompt"!==u||498===a)&&j.includes(a)&&!N(e.params.url)&&(403!==a||!P.includes(l)&&(null==i||2===i&&e.credentialToken))){await A();try{const r=await t.getCredential(e.params.url,{error:R("request:server",n,e.params),prompt:"no-prompt"!==u,signal:e.controller.signal,token:e.credentialToken});return e.credential=r,e.credentialToken=r.token,e.useSSL=e.useSSL||r.ssl,!1}catch(c){if("no-prompt"===u)return e.credential=null,e.credentialToken=null,!1;n=c}}if(n)throw n;return!0}function X(e,t,r=!1){const s=t.controller.signal,o=new Image;return t.withCredentials?o.crossOrigin="use-credentials":o.crossOrigin="anonymous",o.alt="",o.fetchpriority=L.priority,o.src=e,v(o,e,r,s)}C._abortableFetch=null,C._corsServers=["https://server.arcgisonline.com","https://services.arcgisonline.com"];export{C as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- import{isNone as e,isSome as t,unwrapOr as n}from"../core/maybe.js";import{getMetersPerUnit as o}from"../symbols/support/unitConversionUtils.js";function r(t,n){return e(n)||!n.mode?t?"absolute-height":"on-the-ground":n.mode}function i(e,n){return r(!!t(e)&&e.hasZ,n)}function u(e){const t=f(e);return i(e.geometry,t)}function s(e){const r=f(e),u=i(e.geometry,r);return{mode:u,offset:t(r)&&"on-the-ground"!==u?n(r.offset,0)*o(n(r.unit,"meters")):0}}function a(e){if("on-the-ground"===u(e))return!1;const n=f(e),o=t(n)&&n.featureExpressionInfo?n.featureExpressionInfo.expression:null;return!(!o||"0"===o)}function f(e){return e.layer&&"elevationInfo"in e.layer?e.layer.elevationInfo:null}function l(o,r,i){if(e(i)||!i.mode)return;const u=o.hasZ?o.z:0,s=t(i.offset)?i.offset:0;switch(i.mode){case"absolute-height":return u-s;case"on-the-ground":return 0;case"relative-to-ground":return u-(n(r.elevationProvider.getElevation(o.x,o.y,o.z,o.spatialReference,"ground"),0)+s);case"relative-to-scene":return u-(n(r.elevationProvider.getElevation(o.x,o.y,o.z,o.spatialReference,"scene"),0)+s)}}function c(e,t,n,o=null){return d(e,t.x,t.y,t.hasZ?t.z:0,t.spatialReference,n,o)}function v(e,t,n,o,r=null){return d(e,t[0],t[1],t.length>2?t[2]:0,n,o,r)}function d(n,o,r,i,u,s,a=null){if(e(s))return;const f=t(a)?a.mode:"absolute-height";if("on-the-ground"===f)return 0;return h(g(o,r,i,u,n,s),o,r,i,u,n,a,f)}function g(e,o,r,i,u,s){const a=t(s.offset)?s.offset:0;switch(s.mode){case"absolute-height":return r+a;case"on-the-ground":return n(u.elevationProvider.getElevation(e,o,0,i,"ground"),0);case"relative-to-ground":return r+n(u.elevationProvider.getElevation(e,o,r,i,"ground"),0)+a;case"relative-to-scene":return r+n(u.elevationProvider.getElevation(e,o,r,i,"scene"),0)+a}}function h(e,o,r,i,u,s,a,f){const l=t(a)&&t(a.offset)?a.offset:0;switch(f){case"absolute-height":return e-l;case"relative-to-ground":return e-(n(s.elevationProvider.getElevation(o,r,i,u,"ground"),0)+l);case"relative-to-scene":return e-(n(s.elevationProvider.getElevation(o,r,i,u,"scene"),0)+l)}}function m(n,o){return e(n)&&e(o)||t(n)&&t(o)&&n.mode===o.mode&&n.offset===o.offset}export{m as elevationInfoLikeEquals,c as getConvertedElevation,v as getConvertedElevationFromVector,r as getEffectiveElevationMode,i as getGeometryEffectiveElevationMode,s as getGraphicEffectiveElevationInfo,u as getGraphicEffectiveElevationMode,l as getZForElevationMode,a as hasGraphicFeatureExpressionInfo,g as zValueInAbsoluteHeightMode};
5
+ import{isNone as e,isSome as t,unwrapOr as n}from"../core/maybe.js";import{getMetersPerUnit as o}from"../symbols/support/unitConversionUtils.js";function r(t,n){return e(n)||!n.mode?t?"absolute-height":"on-the-ground":n.mode}function i(e,n){return r(!!t(e)&&e.hasZ,n)}function u(e){const t=f(e);return i(e.geometry,t)}function s(e){const r=f(e),u=i(e.geometry,r);return{mode:u,offset:t(r)&&"on-the-ground"!==u?n(r.offset,0)*o(n(r.unit,"meters")):0}}function a(e){if("on-the-ground"===u(e))return!1;const n=f(e),o=t(n)&&n.featureExpressionInfo?n.featureExpressionInfo.expression:null;return!(!o||"0"===o)}function f(e){return e.layer&&"elevationInfo"in e.layer?e.layer.elevationInfo:null}function l(o,r,i){if(e(i)||!i.mode)return;const u=o.hasZ?o.z:0,s=t(i.offset)?i.offset:0;switch(i.mode){case"absolute-height":return u-s;case"on-the-ground":return 0;case"relative-to-ground":return u-(n(r.elevationProvider.getElevation(o.x,o.y,o.z,o.spatialReference,"ground"),0)+s);case"relative-to-scene":return u-(n(r.elevationProvider.getElevation(o.x,o.y,o.z,o.spatialReference,"scene"),0)+s)}}function c(e,t,n,o=null){return v(e,t.x,t.y,t.hasZ?t.z:0,t.spatialReference,n,o)}function d(e,t,n,o,r=null){return v(e,t[0],t[1],t.length>2?t[2]:0,n,o,r)}function v(n,o,r,i,u,s,a=null){if(e(s))return;const f=t(a)?a.mode:"absolute-height";if("on-the-ground"===f)return 0;return h(g(o,r,i,u,n,s),o,r,i,u,n,a,f)}function g(e,o,r,i,u,s){const a=t(s.offset)?s.offset:0;switch(s.mode){case"absolute-height":return r+a;case"on-the-ground":return n(u.elevationProvider.getElevation(e,o,0,i,"ground"),0);case"relative-to-ground":return r+n(u.elevationProvider.getElevation(e,o,r,i,"ground"),0)+a;case"relative-to-scene":return r+n(u.elevationProvider.getElevation(e,o,r,i,"scene"),0)+a}}function h(e,o,r,i,u,s,a,f){const l=t(a)&&t(a.offset)?a.offset:0;switch(f){case"absolute-height":return e-l;case"relative-to-ground":return e-(n(s.elevationProvider.getElevation(o,r,i,u,"ground"),0)+l);case"relative-to-scene":return e-(n(s.elevationProvider.getElevation(o,r,i,u,"scene"),0)+l)}}function m(n,o){return e(n)&&e(o)||t(n)&&t(o)&&n.mode===o.mode&&n.offset===o.offset}const p={mode:"absolute-height",offset:0};export{p as absoluteHeightElevationInfo,m as elevationInfoLikeEquals,c as getConvertedElevation,d as getConvertedElevationFromVector,r as getEffectiveElevationMode,i as getGeometryEffectiveElevationMode,s as getGraphicEffectiveElevationInfo,u as getGraphicEffectiveElevationMode,l as getZForElevationMode,a as hasGraphicFeatureExpressionInfo,g as zValueInAbsoluteHeightMode};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- const c="20220427",a="69b252a14e6bb80ac3c630a5d6c567d3026531dc";export{c as buildDate,a as commitHash};
5
+ const e="20220430",c="3f856ced90e1325295c9dc20a75090301ee241b4";export{e as buildDate,c as commitHash};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- import e from"../../Color.js";import t from"../../core/Error.js";import{pt2px as l,px2pt as a}from"../../core/screenUtils.js";import{getFill as n,getStroke as o,getPatternUrlWithColor as i}from"./gfxUtils.js";import{SymbolSizeDefaults as s,shapes as c,adjustColorBrightness as u}from"./previewUtils.js";import{renderSymbol as r}from"./renderUtils.js";const m="picture-fill",h="picture-marker",p="simple-fill",d="simple-line",f="simple-marker",v="text",y="Aa",w=s.size,g=s.maxSize,b=s.maxOutlineSize,M=s.lineWidth,x=document.createElement("canvas");function k(e,t){const l=x.getContext("2d"),a=[];return t&&(t.weight&&a.push(t.weight),t.size&&a.push(t.size+"px"),t.family&&a.push(t.family)),l.font=a.join(" "),l.measureText(e).width}const L=7.2/2.54,z=72/2.54;function j(e){if(0===e.length)return 0;if(e.length>2){const t=a(1),l=parseFloat(e);switch(e.slice(-2)){case"px":return l;case"pt":return l*t;case"in":return 72*l*t;case"pc":return 12*l*t;case"mm":return l*L*t;case"cm":return l*z*t}}return parseFloat(e)}function C(e){const t=null==e?void 0:e.size;return{width:null!=t&&"object"==typeof t&&"width"in t?l(t.width):null,height:null!=t&&"object"==typeof t&&"height"in t?l(t.height):null}}function S(a,s){var x,L;const z="number"==typeof(null==s?void 0:s.size)?null==s?void 0:s.size:null,S=null!=z?l(z):null,F=null!=(null==s?void 0:s.maxSize)?l(s.maxSize):null,E=null!=(null==s?void 0:s.opacity)?s.opacity:null,P=null!=(null==s?void 0:s.rotation)?s.rotation:"angle"in a?a.angle:null,U=n(a);let Z=o(a);if(U&&!Z){const t="type"in U?null:new e(U);"#ffffff"===(t?t.toHex():null)&&(Z={color:"#bdc3c7",width:.75})}const q={shape:null,fill:null,stroke:Z,offset:[0,0]};null!=(x=Z)&&x.width&&(Z.width=Math.min(Z.width,b));const H=(null==(L=Z)?void 0:L.width)||0;let T=null!=(null==s?void 0:s.size)&&(null==(null==s?void 0:s.scale)||(null==s?void 0:s.scale)),V=0,A=0,D=!1;switch(a.type){case f:{const e=a.style,t=Math.min(null!=S?S:l(a.size),F||g);switch(V=t,A=t,e){case"circle":q.shape={type:"circle",cx:0,cy:0,r:.5*t},T||(V+=H,A+=H);break;case"cross":q.shape={type:"path",path:[{command:"M",values:[0,.5*A]},{command:"L",values:[V,.5*A]},{command:"M",values:[.5*V,0]},{command:"L",values:[.5*V,A]}]};break;case"diamond":q.shape={type:"path",path:[{command:"M",values:[0,.5*A]},{command:"L",values:[.5*V,0]},{command:"L",values:[V,.5*A]},{command:"L",values:[.5*V,A]},{command:"Z",values:[]}]},T||(V+=H,A+=H);break;case"square":q.shape={type:"path",path:[{command:"M",values:[0,0]},{command:"L",values:[V,0]},{command:"L",values:[V,A]},{command:"L",values:[0,A]},{command:"Z",values:[]}]},T||(V+=H,A+=H),P&&(D=!0);break;case"triangle":q.shape={type:"path",path:[{command:"M",values:[.5*V,0]},{command:"L",values:[V,A]},{command:"L",values:[0,A]},{command:"Z",values:[]}]},T||(V+=H,A+=H),P&&(D=!0);break;case"x":q.shape={type:"path",path:[{command:"M",values:[0,0]},{command:"L",values:[V,A]},{command:"M",values:[V,0]},{command:"L",values:[0,A]}]},P&&(D=!0);break;case"path":q.shape={type:"path",path:a.path||""},T||(V+=H,A+=H),P&&(D=!0),T=!0}break}case d:{var O;const{width:e,height:t}=C(s),l=null!=t?t:Math.min(null!=S?S:H,F||b),a=null!=e?e:M;Z.width=l,V=a,A=l;const n=(null==q||null==(O=q.stroke)?void 0:O.cap)||"butt",o="round"===n;T=!0,q.stroke.cap="butt"===n?"square":n,q.shape={type:"path",path:[{command:"M",values:[o?l/2:0,A/2]},{command:"L",values:[o?V-l/2:V,A/2]}]};break}case m:case p:{const e="object"==typeof(null==s?void 0:s.symbolConfig)&&(null==s?void 0:s.symbolConfig.isSquareFill),{width:t,height:l}=C(s);V=e&&null!=t?t:null!=S?S:w,A=e&&null!=l?l:V,T||(V+=H,A+=H),T=!0,q.shape=e?{type:"path",path:[{command:"M",values:[0,0]},{command:"L",values:[V,0]},{command:"L",values:[V,A]},{command:"L",values:[0,A]},{command:"L",values:[0,0]},{command:"Z",values:[]}]}:c.fill[0];break}case h:{let e=l(a.width),t=l(a.height);const n=null!=S?S:Math.max(e,t),o=e/t;e=o<=1?Math.ceil(n*o):n,t=o<=1?n:Math.ceil(n/o),V=Math.min(e,F||g),A=Math.min(t,F||g),q.shape={type:"image",x:-Math.round(V/2),y:-Math.round(A/2),width:V,height:A,src:a.url||""},P&&(D=!0);break}case v:{const e=a,t=e.text||y,n=e.font,o=Math.min(null!=S?S:l(n.size),F||g),i=k(t,{weight:n.weight,size:o,family:n.family}),s=/[\uE600-\uE6FF]/.test(t);V=s?o:i,A=o;let c=.25*j((n?o:0).toString());s&&(c+=5),q.shape={type:"text",text:t,x:0,y:c,align:"middle",decoration:n&&n.decoration,rotated:e.rotated,kerning:e.kerning},q.font=n&&{size:o,style:n.style,decoration:n.decoration,weight:n.weight,family:n.family};break}}if(!q.shape)return Promise.reject(new t("symbolPreview: renderPreviewHTML2D","symbol not supported."));const R=U,W=a.color;let B=null;return R&&"pattern"===R.type&&W&&a.type!==m?B=i(R.src,W.toCss(!0)).then((e=>(R.src=e,q.fill=R,q))):(q.fill=U,B=Promise.resolve(q)),B.then((e=>{const t=[[e]];if("object"==typeof(null==s?void 0:s.symbolConfig)&&null!=s&&s.symbolConfig.applyColorModulation){const l=.6*V;t.unshift([{...e,offset:[-l,0],fill:u(U,-.3)}]),t.push([{...e,offset:[l,0],fill:u(U,.3)}]),V+=2*l,T=!1}return r(t,[V,A],{node:s&&s.node,scale:T,opacity:E,rotation:P,useRotationSize:D,effectView:null==s?void 0:s.effectView})}))}export{S as previewSymbol2D};
5
+ import e from"../../Color.js";import t from"../../core/Error.js";import{pt2px as l,px2pt as n}from"../../core/screenUtils.js";import{getFill as a,getStroke as o,getPatternUrlWithColor as i}from"./gfxUtils.js";import{SymbolSizeDefaults as s,shapes as c,adjustColorBrightness as r}from"./previewUtils.js";import{renderSymbol as u}from"./renderUtils.js";import{getColorTheme as m}from"../../views/support/colorUtils.js";const h="picture-fill",p="picture-marker",d="simple-fill",f="simple-line",v="simple-marker",y="text",w="Aa",g=s.size,b=s.maxSize,M=s.maxOutlineSize,x=s.lineWidth,k=document.createElement("canvas");function z(e,t){const l=k.getContext("2d"),n=[];return t&&(t.weight&&n.push(t.weight),t.size&&n.push(t.size+"px"),t.family&&n.push(t.family)),l.font=n.join(" "),l.measureText(e).width}const L=7.2/2.54,j=72/2.54;function C(e){if(0===e.length)return 0;if(e.length>2){const t=n(1),l=parseFloat(e);switch(e.slice(-2)){case"px":return l;case"pt":return l*t;case"in":return 72*l*t;case"pc":return 12*l*t;case"mm":return l*L*t;case"cm":return l*j*t}}return parseFloat(e)}function S(e){const t=null==e?void 0:e.size;return{width:null!=t&&"object"==typeof t&&"width"in t?l(t.width):null,height:null!=t&&"object"==typeof t&&"height"in t?l(t.height):null}}async function F(e,t){const l=t.fill,n=e.color;if("pattern"===(null==l?void 0:l.type)&&n&&e.type!==h){const e=await i(l.src,n.toCss(!0));l.src=e,t.fill=l}}function U(e){return"light"===e?"dark":"light"}function E(t,n){var i,s;const r="number"==typeof(null==n?void 0:n.size)?null==n?void 0:n.size:null,u=null!=r?l(r):null,m=null!=(null==n?void 0:n.maxSize)?l(n.maxSize):null,k=null!=(null==n?void 0:n.rotation)?n.rotation:"angle"in t?t.angle:null,L=a(t);let j=o(t);if(L&&!j){const t="type"in L?null:new e(L);"#ffffff"===(t?t.toHex():null)&&(j={color:"#bdc3c7",width:.75})}const F={shape:null,fill:L,stroke:j,offset:[0,0]};null!=(i=j)&&i.width&&(j.width=Math.min(j.width,M));const U=(null==(s=j)?void 0:s.width)||0;let E=null!=(null==n?void 0:n.size)&&(null==(null==n?void 0:n.scale)||(null==n?void 0:n.scale)),Z=0,q=0,D=!1;switch(t.type){case v:{const e=t.style,n=Math.min(null!=u?u:l(t.size),m||b);switch(Z=n,q=n,e){case"circle":F.shape={type:"circle",cx:0,cy:0,r:.5*n},E||(Z+=U,q+=U);break;case"cross":F.shape={type:"path",path:[{command:"M",values:[0,.5*q]},{command:"L",values:[Z,.5*q]},{command:"M",values:[.5*Z,0]},{command:"L",values:[.5*Z,q]}]};break;case"diamond":F.shape={type:"path",path:[{command:"M",values:[0,.5*q]},{command:"L",values:[.5*Z,0]},{command:"L",values:[Z,.5*q]},{command:"L",values:[.5*Z,q]},{command:"Z",values:[]}]},E||(Z+=U,q+=U);break;case"square":F.shape={type:"path",path:[{command:"M",values:[0,0]},{command:"L",values:[Z,0]},{command:"L",values:[Z,q]},{command:"L",values:[0,q]},{command:"Z",values:[]}]},E||(Z+=U,q+=U),k&&(D=!0);break;case"triangle":F.shape={type:"path",path:[{command:"M",values:[.5*Z,0]},{command:"L",values:[Z,q]},{command:"L",values:[0,q]},{command:"Z",values:[]}]},E||(Z+=U,q+=U),k&&(D=!0);break;case"x":F.shape={type:"path",path:[{command:"M",values:[0,0]},{command:"L",values:[Z,q]},{command:"M",values:[Z,0]},{command:"L",values:[0,q]}]},k&&(D=!0);break;case"path":F.shape={type:"path",path:t.path||""},E||(Z+=U,q+=U),k&&(D=!0),E=!0}break}case f:{var O;const{width:e,height:t}=S(n),l=null!=t?t:Math.min(null!=u?u:U,m||M),a=null!=e?e:x;j.width=l,Z=a,q=l;const o=(null==F||null==(O=F.stroke)?void 0:O.cap)||"butt",i="round"===o;E=!0,F.stroke.cap="butt"===o?"square":o,F.shape={type:"path",path:[{command:"M",values:[i?l/2:0,q/2]},{command:"L",values:[i?Z-l/2:Z,q/2]}]};break}case h:case d:{const e="object"==typeof(null==n?void 0:n.symbolConfig)&&(null==n?void 0:n.symbolConfig.isSquareFill),{width:t,height:l}=S(n);Z=e&&null!=t?t:null!=u?u:g,q=e&&null!=l?l:Z,E||(Z+=U,q+=U),E=!0,F.shape=e?{type:"path",path:[{command:"M",values:[0,0]},{command:"L",values:[Z,0]},{command:"L",values:[Z,q]},{command:"L",values:[0,q]},{command:"L",values:[0,0]},{command:"Z",values:[]}]}:c.fill[0];break}case p:{let e=l(t.width),n=l(t.height);const a=null!=u?u:Math.max(e,n),o=e/n;e=o<=1?Math.ceil(a*o):a,n=o<=1?a:Math.ceil(a/o),Z=Math.min(e,m||b),q=Math.min(n,m||b),F.shape={type:"image",x:-Math.round(Z/2),y:-Math.round(q/2),width:Z,height:q,src:t.url||""},k&&(D=!0);break}case y:{const e=t,n=e.text||w,a=e.font,o=Math.min(null!=u?u:l(a.size),m||b),i=z(n,{weight:a.weight,size:o,family:a.family}),s=/[\uE600-\uE6FF]/.test(n);Z=s?o:i,q=o;let c=.25*C((a?o:0).toString());s&&(c+=5),F.shape={type:"text",text:n,x:0,y:c,align:"middle",decoration:a&&a.decoration,rotated:e.rotated,kerning:e.kerning},F.font=a&&{size:o,style:a.style,decoration:a.decoration,weight:a.weight,family:a.family};break}}return{shapeDescriptor:F,size:[Z,q],renderOptions:{node:null==n?void 0:n.node,scale:E,opacity:null==n?void 0:n.opacity,rotation:k,useRotationSize:D,effectView:null==n?void 0:n.effectView}}}async function Z(e,l){const{shapeDescriptor:n,size:a,renderOptions:o}=E(e,l);if(!n.shape)throw new t("symbolPreview: renderPreviewHTML2D","symbol not supported.");await F(e,n);const i=[[n]];if("object"==typeof(null==l?void 0:l.symbolConfig)&&null!=l&&l.symbolConfig.applyColorModulation){const e=.6*a[0];i.unshift([{...n,offset:[-e,0],fill:r(n.fill,-.3)}]),i.push([{...n,offset:[e,0],fill:r(n.fill,.3)}]),a[0]+=2*e,o.scale=!1}return u(i,a,o)}function q(t){const l=a(t),n=o(t),i=!l||"type"in l?null:new e(l),s=null!=n&&n.color?new e(null==n?void 0:n.color):null,c=i?m(i):null,r=s?m(s):null;return r?c?c===r?U(c):"light":U(r):U(c)}export{q as getContrastingBackgroundTheme,E as getRenderSymbolParameters,Z as previewSymbol2D};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- import r from"./flow/BrushFlow.js";import s from"./imagery/BrushRasterBitmap.js";import e from"./imagery/BrushVectorField.js";import l from"./webgl/brushes/BrushBitmap.js";import o from"./webgl/brushes/BrushClip.js";import m from"./webgl/brushes/WGLBrushInfo.js";import t from"./webgl/brushes/WGLBrushStencil.js";import{WGLBrushVTLBackground as i}from"./webgl/brushes/WGLBrushVTLBackground.js";import{WGLBrushVTLCircle as b}from"./webgl/brushes/WGLBrushVTLCircle.js";import{WGLBrushVTLFill as u}from"./webgl/brushes/WGLBrushVTLFill.js";import{WGLBrushVTLLine as h}from"./webgl/brushes/WGLBrushVTLLine.js";import{WGLBrushVTLSymbol as p}from"./webgl/brushes/WGLBrushVTLSymbol.js";import f from"./webgl/brushes/WGLGeometryBrushFill.js";import B from"./webgl/brushes/WGLGeometryBrushLabel.js";import L from"./webgl/brushes/WGLGeometryBrushLine.js";import g from"./webgl/brushes/WGLGeometryBrushMarker.js";import j from"./webgl/brushes/WGLGeometryBrushText.js";const w={marker:g,line:L,fill:f,text:j,label:B,clip:o,stencil:t,bitmap:l,raster:s,rasterVF:e,flow:r,tileInfo:m,vtlBackground:i,vtlFill:u,vtlLine:h,vtlCircle:b,vtlSymbol:p},G={vtlBackground:i,vtlFill:u,vtlLine:h,vtlCircle:b,vtlSymbol:p};export{w as brushes,G as vtlBrushes};
5
+ import r from"./flow/BrushFlow.js";import s from"./imagery/BrushRasterBitmap.js";import e from"./imagery/BrushVectorField.js";import o from"./webgl/brushes/BrushBitmap.js";import l from"./webgl/brushes/BrushClip.js";import t from"./webgl/brushes/WGLBrushDotDensity.js";import m from"./webgl/brushes/WGLBrushHeatmap.js";import i from"./webgl/brushes/WGLBrushInfo.js";import b from"./webgl/brushes/WGLBrushStencil.js";import{WGLBrushVTLBackground as u}from"./webgl/brushes/WGLBrushVTLBackground.js";import{WGLBrushVTLCircle as h}from"./webgl/brushes/WGLBrushVTLCircle.js";import{WGLBrushVTLFill as p}from"./webgl/brushes/WGLBrushVTLFill.js";import{WGLBrushVTLLine as f}from"./webgl/brushes/WGLBrushVTLLine.js";import{WGLBrushVTLSymbol as B}from"./webgl/brushes/WGLBrushVTLSymbol.js";import L from"./webgl/brushes/WGLGeometryBrushFill.js";import g from"./webgl/brushes/WGLGeometryBrushLabel.js";import a from"./webgl/brushes/WGLGeometryBrushLine.js";import j from"./webgl/brushes/WGLGeometryBrushMarker.js";import w from"./webgl/brushes/WGLGeometryBrushText.js";const G={marker:j,line:a,fill:L,text:w,label:g,clip:l,stencil:b,bitmap:o,raster:s,rasterVF:e,flow:r,tileInfo:i,vtlBackground:u,vtlFill:p,vtlLine:f,vtlCircle:h,vtlSymbol:B,dotDensity:t,heatmap:m},n={vtlBackground:u,vtlFill:p,vtlLine:f,vtlCircle:h,vtlSymbol:B};export{G as brushes,n as vtlBrushes};