@arcgis/core 6.0.0-next.26 → 6.0.0-next.28

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 (343) hide show
  1. package/Map.d.ts +6 -0
  2. package/analysis/AreaMeasurementAnalysis.d.ts +4 -2
  3. package/analysis/DirectLineMeasurementAnalysis.d.ts +8 -4
  4. package/assets/esri/core/workers/RemoteClient.js +1 -1
  5. package/assets/esri/core/workers/chunks/0363d29fc665d169ebc4.js +1 -0
  6. package/assets/esri/core/workers/chunks/037c67ef5c4398d5954d.js +1 -0
  7. package/assets/esri/core/workers/chunks/03f33cb78b5405ab7e23.js +1 -0
  8. package/assets/esri/core/workers/chunks/07b726a46864501b90a0.js +1 -0
  9. package/assets/esri/core/workers/chunks/0864da8f8f147016cf1c.js +1 -0
  10. package/assets/esri/core/workers/chunks/{768389f7f8dba6080df7.js → 0cc7fba402a93e6d2455.js} +2 -2
  11. package/assets/esri/core/workers/chunks/0cfdeb53fb7d5532cf01.js +1 -0
  12. package/assets/esri/core/workers/chunks/112ed86f812e4400a7e0.js +1 -0
  13. package/assets/esri/core/workers/chunks/177f353ce72133e2eeed.js +1 -0
  14. package/assets/esri/core/workers/chunks/1dc6f093028530a492e6.js +1 -0
  15. package/assets/esri/core/workers/chunks/2294254af2c6afb560ee.js +1 -0
  16. package/assets/esri/core/workers/chunks/23a4806b4cdf7cc32e4d.js +1 -0
  17. package/assets/esri/core/workers/chunks/2447d2e2a4a3ab8fcf94.js +1 -0
  18. package/assets/esri/core/workers/chunks/271ae7deccb94112c2df.js +1 -0
  19. package/assets/esri/core/workers/chunks/2df37a9a95ceebb87a5f.js +1 -0
  20. package/assets/esri/core/workers/chunks/2e00c155e447e4930442.js +1 -0
  21. package/assets/esri/core/workers/chunks/2e9a1673b1d51aa082b6.js +1 -0
  22. package/assets/esri/core/workers/chunks/344f5334ad95c7974349.js +1 -0
  23. package/assets/esri/core/workers/chunks/348f1def9cd2ddf92e87.js +1 -0
  24. package/assets/esri/core/workers/chunks/{8e4206068c6953bb7df2.js → 3a47fc97c400fca2c736.js} +1 -1
  25. package/assets/esri/core/workers/chunks/47c97640ec525676918b.js +1 -0
  26. package/assets/esri/core/workers/chunks/50763ea061d5fb3f2e49.js +1 -0
  27. package/assets/esri/core/workers/chunks/518ab22f80c3300bcfff.js +1 -0
  28. package/assets/esri/core/workers/chunks/58609bf94f72bc4f1952.js +1 -0
  29. package/assets/esri/core/workers/chunks/586a929bc037e23857af.js +1 -0
  30. package/assets/esri/core/workers/chunks/58d10e0b35968680fd9f.js +1 -0
  31. package/assets/esri/core/workers/chunks/59bc55880e6fd8ce20c0.js +1 -0
  32. package/assets/esri/core/workers/chunks/{7c75a8ee266c36baa902.js → 5eec1c1162779574f46e.js} +1 -1
  33. package/assets/esri/core/workers/chunks/62a0abcf45a2bd14ecbe.js +1 -0
  34. package/assets/esri/core/workers/chunks/63c4412c16d8a44a5668.js +1 -0
  35. package/assets/esri/core/workers/chunks/6b4c3411f63a9ad9354c.js +1 -0
  36. package/assets/esri/core/workers/chunks/{f528ac5c648ca6a98582.js → 711cfb84659cb4437679.js} +1 -1
  37. package/assets/esri/core/workers/chunks/{9dd1fc56eb1ea6eb705e.js → 76e27e36050a3dd9d249.js} +1 -1
  38. package/assets/esri/core/workers/chunks/76f877e2d2493d56afab.js +1 -0
  39. package/assets/esri/core/workers/chunks/77463141652bf1ca6fb2.js +1 -0
  40. package/assets/esri/core/workers/chunks/7d3f7940815fa5dc244e.js +1 -0
  41. package/assets/esri/core/workers/chunks/914a0b5d9fef683cdf9c.js +1 -0
  42. package/assets/esri/core/workers/chunks/96f87c8efd4b11b37686.js +1 -0
  43. package/assets/esri/core/workers/chunks/97ec46605f16333144b7.js +1 -0
  44. package/assets/esri/core/workers/chunks/{7b482afb9fd1229f5707.js → 9934e8e19f94e9169eea.js} +1 -1
  45. package/assets/esri/core/workers/chunks/99f51d5d9da6e9bfc430.js +1 -0
  46. package/assets/esri/core/workers/chunks/9aebe876b1a2fb075f9c.js +1 -0
  47. package/assets/esri/core/workers/chunks/9c3db7a7c05fa0e81f0a.js +1 -0
  48. package/assets/esri/core/workers/chunks/{6f1d6453184e0a1530ad.js → 9c4961213ac6ec283dd9.js} +25 -25
  49. package/assets/esri/core/workers/chunks/a2cc53ad1a514167e4b8.js +1 -0
  50. package/assets/esri/core/workers/chunks/a33ba23aee3f8f40200f.js +1 -0
  51. package/assets/esri/core/workers/chunks/{45ba4aa87a4732198596.js → b13d8f4e4e80ef00b1bd.js} +1 -1
  52. package/assets/esri/core/workers/chunks/b3801d58c024224917df.js +1 -0
  53. package/assets/esri/core/workers/chunks/b3aa29589dcfb5b93106.js +1 -0
  54. package/assets/esri/core/workers/chunks/b3dbcf43f136ba2dadc5.js +1 -0
  55. package/assets/esri/core/workers/chunks/b9596d862da1ec342cd3.js +1 -0
  56. package/assets/esri/core/workers/chunks/bc1fcc9c897461e68e29.js +1 -0
  57. package/assets/esri/core/workers/chunks/{8b4e9fd88c0c313416d4.js → be04f40f8b403befd0ef.js} +1 -1
  58. package/assets/esri/core/workers/chunks/{150e7a7bd5df25693da7.js → c90388932a7825d9d933.js} +1 -1
  59. package/assets/esri/core/workers/chunks/ca21786e519c914fc9e1.js +1 -0
  60. package/assets/esri/core/workers/chunks/cdb5c26fed7d9a97db49.js +1 -0
  61. package/assets/esri/core/workers/chunks/cdf0c7706d3e1221f49b.js +1 -0
  62. package/assets/esri/core/workers/chunks/d63e181f0e48bde73395.js +1 -0
  63. package/assets/esri/core/workers/chunks/d77888c84a8b49478807.js +1 -0
  64. package/assets/esri/core/workers/chunks/d7f2f1708d2a2668676c.js +1 -0
  65. package/assets/esri/core/workers/chunks/{13c64087be3b2985a21b.js → dbda982485d3fe26c729.js} +1 -1
  66. package/assets/esri/core/workers/chunks/dc7aa0a1eb6c6e361f9f.js +1 -0
  67. package/assets/esri/core/workers/chunks/ec1c4d66142b6efb0e8b.js +1 -0
  68. package/assets/esri/core/workers/chunks/ef2c3febcceedc44b3ac.js +1 -0
  69. package/assets/esri/core/workers/chunks/f08a2a262a3b55149396.js +1 -0
  70. package/assets/esri/core/workers/chunks/f2d56f5c15d5977e1d19.js +1 -0
  71. package/assets/esri/core/workers/chunks/ffe2077a9df7c838ea27.js +1 -0
  72. package/assets/esri/layers/raster/formats/lerc-wasm.wasm +0 -0
  73. package/chunks/BlendLayers.glsl.js +1 -1
  74. package/chunks/Component.glsl.js +9 -12
  75. package/chunks/GaussianSplat.glsl.js +65 -21
  76. package/chunks/GaussianSplatDepth.glsl.js +45 -4
  77. package/chunks/GaussianSplatShadow.glsl.js +73 -19
  78. package/chunks/GlobalIllumination.glsl.js +17 -47
  79. package/chunks/LineMarker.glsl.js +32 -31
  80. package/chunks/OITAddEmission.glsl.js +1 -1
  81. package/chunks/RasterColorizer.glsl.js +1 -1
  82. package/chunks/RibbonLine.glsl.js +36 -36
  83. package/chunks/Terrain.glsl.js +3 -4
  84. package/chunks/Water.glsl.js +22 -23
  85. package/config.js +1 -1
  86. package/core/ReentrantObjectPool.js +1 -1
  87. package/core/memoryEstimations.js +1 -1
  88. package/core/workers/workers.js +2 -2
  89. package/core/workers.d.ts +1 -1
  90. package/form/elements/inputs/DynamicChoiceInput.d.ts +2 -2
  91. package/form/elements/inputs.d.ts +126 -25
  92. package/form/elements/inputs.js +1 -1
  93. package/form/elements.d.ts +1 -0
  94. package/geometry/operators/containsOperator.d.ts +1 -1
  95. package/geometry/operators/densifyOperator.d.ts +1 -1
  96. package/geometry/operators/differenceOperator.d.ts +6 -4
  97. package/geometry/operators/distanceOperator.d.ts +1 -1
  98. package/geometry/operators/geodesicProximityOperator.d.ts +8 -8
  99. package/geometry/operators/graphicBufferOperator.d.ts +6 -6
  100. package/geometry/operators/integrateOperator.d.ts +2 -2
  101. package/geometry/operators/intersectsOperator.d.ts +3 -3
  102. package/geometry/operators/linesToPolygonsOperator.d.ts +2 -2
  103. package/geometry/operators/locateBetweenOperator.d.ts +2 -2
  104. package/geometry/operators/minimumBoundingCircleOperator.d.ts +1 -1
  105. package/geometry/operators/multiPartToSinglePartOperator.d.ts +2 -2
  106. package/geometry/operators/polygonSlicerOperator.d.ts +2 -2
  107. package/geometry/operators/projectOperator.d.ts +2 -2
  108. package/geometry/operators/proximityOperator.d.ts +15 -15
  109. package/geometry/operators/shapePreservingProjectOperator.d.ts +2 -2
  110. package/geometry/operators/simplifyOperator.d.ts +2 -2
  111. package/geometry/operators/support/GeographicTransformationStep.d.ts +3 -3
  112. package/geometry/operators/support/Transformation.d.ts +8 -8
  113. package/geometry/operators/support/geographicTransformationUtils.d.ts +3 -3
  114. package/geometry/operators/symmetricDifferenceOperator.d.ts +2 -2
  115. package/geometry/operators/withinOperator.d.ts +3 -3
  116. package/geometry/support/Indices.js +1 -1
  117. package/graphic/MapNotesGraphicOrigin.d.ts +1 -0
  118. package/kernel.js +1 -1
  119. package/layers/GeospatialPDFLayer.d.ts +2 -2
  120. package/layers/GeospatialPDFLayer.js +1 -1
  121. package/layers/MapNotesLayer.d.ts +3 -2
  122. package/layers/ParquetLayer.d.ts +1 -1
  123. package/layers/VectorTileLayer.d.ts +10 -1
  124. package/layers/buildingSublayers/BuildingGroupSublayer.d.ts +2 -1
  125. package/layers/geospatialPDF/CIM2DLayerview.js +2 -0
  126. package/layers/geospatialPDF/GeospatialPDFFrame.js +1 -1
  127. package/layers/graphics/sources/support/ParquetSourceWorker.js +1 -1
  128. package/layers/mixins/SublayersOwner.js +1 -1
  129. package/layers/orientedImagery/transformations/imageToWorld.js +1 -1
  130. package/layers/orientedImagery/transformations/rectifyMapPoint.js +1 -1
  131. package/layers/support/Sublayer.d.ts +2 -2
  132. package/layers/support/Sublayer.js +1 -1
  133. package/layers/support/SubtypeSublayer.js +1 -1
  134. package/layers/support/layerUtils.js +1 -1
  135. package/package.json +3 -3
  136. package/popup/FeaturesModel.js +1 -1
  137. package/popup/support/featureUtils.js +1 -1
  138. package/rest/featureService/FeatureService.d.ts +0 -5
  139. package/rest/networks/support/TraceLocation.d.ts +2 -1
  140. package/rest/networks/support/TraceResult.d.ts +0 -4
  141. package/rest/support/AttributeBinsQuery.d.ts +3 -2
  142. package/rest/support/ImageGPSInfoParameters.d.ts +2 -1
  143. package/rest/support/OutDistance.d.ts +2 -2
  144. package/rest/support/Query.d.ts +3 -2
  145. package/rest/support/TopFeaturesQuery.d.ts +2 -1
  146. package/rest/support/types.d.ts +10 -1
  147. package/smartMapping/raster/renderers/flow.d.ts +2 -1
  148. package/smartMapping/renderers/color.d.ts +11 -8
  149. package/smartMapping/renderers/location.d.ts +7 -4
  150. package/smartMapping/renderers/predominance.d.ts +7 -4
  151. package/smartMapping/renderers/relationship.d.ts +7 -4
  152. package/smartMapping/renderers/size.d.ts +6 -4
  153. package/smartMapping/renderers/type.d.ts +7 -4
  154. package/smartMapping/renderers/types.d.ts +15 -0
  155. package/smartMapping/renderers/univariateColorSize.d.ts +4 -2
  156. package/smartMapping/statistics/histogramForTimeSeries.js +1 -1
  157. package/smartMapping/statistics/summaryStatisticsForTimeSeries.js +1 -1
  158. package/smartMapping/symbology/flow.d.ts +2 -1
  159. package/smartMapping/symbology/types.d.ts +2 -1
  160. package/support/BasemapStyle.d.ts +2 -2
  161. package/symbols/cim/CIMCursor.js +1 -1
  162. package/symbols/cim/types.d.ts +7 -9
  163. package/tables/elements.d.ts +1 -0
  164. package/views/2d/engine/vectorTiles/TileHandler3D.js +1 -1
  165. package/views/2d/engine/webgl/animations/instructions.js +1 -1
  166. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AnimatedMarkerMeshWriter.js +1 -1
  167. package/views/2d/engine/webgl/shaderGraph/techniques/mesh/MeshWriterVertexPack.js +1 -1
  168. package/views/2d/engine/webgl/textureUtils.js +1 -1
  169. package/views/2d/layers/GeospatialPDFLayerView2D.js +1 -1
  170. package/views/2d/layers/MediaLayerView2D.js +1 -1
  171. package/views/2d/layers/TileLayerView2D.js +1 -1
  172. package/views/2d/layers/features/schema/processor/symbols/ComplexSymbolSchema.js +1 -1
  173. package/views/3d/analysis/AreaMeasurement/support/AreaMeasurementPathHelper.js +1 -1
  174. package/views/3d/analysis/AreaMeasurement/support/MeasurementData.js +1 -1
  175. package/views/3d/analysis/DirectLineMeasurement/DirectLineMeasurementController.js +1 -1
  176. package/views/3d/analysis/support/projectionUtils.js +1 -1
  177. package/views/3d/environment/SunLighting.d.ts +15 -2
  178. package/views/3d/environment/VirtualLighting.d.ts +15 -2
  179. package/views/3d/input/SceneInputManager.js +1 -1
  180. package/views/3d/input/handlers/ground/GroundMouseWheelMove.js +2 -0
  181. package/views/3d/interactive/editingTools/reshape/ReshapeOperation.js +1 -1
  182. package/views/3d/interactive/measurementTools/directLineMeasurement3D/DirectLineMeasurement3DTool.js +1 -1
  183. package/views/3d/interactive/measurementTools/directLineMeasurement3D/DirectLineMeasurement3DView.js +1 -1
  184. package/views/3d/layers/GeospatialPDFLayerView3D.js +1 -1
  185. package/views/3d/layers/ImageryTileLayerView3D.js +1 -1
  186. package/views/3d/layers/graphics/Graphics3DBufferGraphicLayer.js +1 -1
  187. package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
  188. package/views/3d/layers/graphics/Graphics3DDrapedGraphicLayerBase.js +1 -1
  189. package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
  190. package/views/3d/layers/graphics/Graphics3DFeatureStore.js +1 -1
  191. package/views/3d/layers/graphics/Graphics3DGraphic.js +1 -1
  192. package/views/3d/layers/graphics/Graphics3DGraphicCreationContext.js +1 -1
  193. package/views/3d/layers/graphics/Graphics3DLodInstanceGraphicLayer.js +1 -1
  194. package/views/3d/layers/graphics/Graphics3DMeshObject3DGraphicLayer.js +1 -1
  195. package/views/3d/layers/graphics/Graphics3DObject3DGraphicLayer.js +1 -1
  196. package/views/3d/layers/graphics/Graphics3DStageObjectGraphicLayer.js +1 -1
  197. package/views/3d/layers/graphics/Graphics3DSymbol.js +1 -1
  198. package/views/3d/layers/graphics/Labeler.js +1 -1
  199. package/views/3d/layers/graphics/defaultSymbolComplexity.js +1 -1
  200. package/views/3d/layers/support/FeatureTileFetcher3D.js +1 -1
  201. package/views/3d/layers/support/StageLayerElevationProvider.js +1 -1
  202. package/views/3d/layers/support/featureReference.js +1 -1
  203. package/views/3d/navigation/Navigation3D.js +1 -1
  204. package/views/3d/state/controllers/GroundMouseWheelController.js +2 -0
  205. package/views/3d/state/utils/OffsetCorrectionController.js +1 -1
  206. package/views/3d/state/utils/groundNavigationUtils.js +1 -1
  207. package/views/3d/terrain/BlendLayers.glsl.js +1 -1
  208. package/views/3d/terrain/PatchRenderData.js +1 -1
  209. package/views/3d/terrain/RasterColorizer.glsl.js +1 -1
  210. package/views/3d/terrain/TerrainData.js +1 -1
  211. package/views/3d/terrain/TerrainRenderer.js +1 -1
  212. package/views/3d/terrain/TerrainSurface.js +1 -1
  213. package/views/3d/terrain/TextureFader.js +1 -1
  214. package/views/3d/terrain/TextureReference.js +1 -1
  215. package/views/3d/terrain/TileCompositor.js +1 -1
  216. package/views/3d/terrain/TileRenderInfo.js +1 -1
  217. package/views/3d/terrain/TileRenderer.js +1 -1
  218. package/views/3d/terrain/terrainUtils.js +1 -1
  219. package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexTangent.glsl.js +7 -8
  220. package/views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js +25 -25
  221. package/views/3d/webgl-engine/core/shaderLibrary/shading/NormalUtils.glsl.js +3 -5
  222. package/views/3d/webgl-engine/core/shaderLibrary/shading/forwardLocalUp.glsl.js +6 -0
  223. package/views/3d/webgl-engine/core/shaderLibrary/shading/getLocalUp.glsl.js +4 -0
  224. package/views/3d/webgl-engine/core/shaderLibrary/terrain/TerrainTexture.glsl.js +1 -1
  225. package/views/3d/webgl-engine/core/shaderLibrary/terrain/{TileBackground.glsl.js → blendLayers.glsl.js} +10 -11
  226. package/views/3d/webgl-engine/core/shaderLibrary/util/GaussianSplatEvaluation.glsl.js +8 -2
  227. package/views/3d/webgl-engine/core/shaderLibrary/util/cameraUniforms.js +1 -1
  228. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIllumination.glsl.js +1 -1
  229. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIllumination.js +1 -1
  230. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIlluminationTechniqueConfiguration.js +1 -1
  231. package/views/3d/webgl-engine/lib/BindParameters.js +1 -1
  232. package/views/3d/webgl-engine/lib/BoundingInfo.js +1 -1
  233. package/views/3d/webgl-engine/lib/BufferGeometry.js +1 -1
  234. package/views/3d/webgl-engine/lib/BufferObject3D.js +1 -1
  235. package/views/3d/webgl-engine/lib/DirtyEvents.js +1 -1
  236. package/views/3d/webgl-engine/lib/Geometry.js +1 -1
  237. package/views/3d/webgl-engine/lib/ManagedTexture.js +1 -1
  238. package/views/3d/webgl-engine/lib/ModelDirtySet.js +1 -1
  239. package/views/3d/webgl-engine/lib/Object3D.js +1 -1
  240. package/views/3d/webgl-engine/lib/PathGeometry.js +1 -1
  241. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  242. package/views/3d/webgl-engine/lib/TextureBackedBuffer/TextureBuffer.js +1 -1
  243. package/views/3d/webgl-engine/lib/edgeRendering/EdgeView.js +1 -1
  244. package/views/3d/webgl-engine/lib/geometryMemoryUtils.js +2 -0
  245. package/views/3d/webgl-engine/materials/Water.glsl.js +1 -1
  246. package/views/3d/webgl-engine/shaders/GaussianSplat.glsl.js +1 -1
  247. package/views/3d/webgl-engine/shaders/GaussianSplatDepth.glsl.js +1 -1
  248. package/views/3d/webgl-engine/shaders/GaussianSplatPass.glsl.js +61 -108
  249. package/views/3d/webgl-engine/shaders/GaussianSplatShadow.glsl.js +1 -1
  250. package/views/3d/webgl-engine/shaders/LineMarker.glsl.js +1 -1
  251. package/views/3d/webgl-engine/shaders/RibbonLine.glsl.js +1 -1
  252. package/views/3d/webgl-engine/shaders/Terrain.glsl.js +1 -1
  253. package/views/VideoView.js +1 -1
  254. package/views/draw/DrawOperation.js +1 -1
  255. package/views/draw/DrawScreenTool.js +1 -1
  256. package/views/input/types.d.ts +2 -4
  257. package/views/interactive/options/LabelOptions.d.ts +5 -5
  258. package/views/interactive/options/SnappingOptions.d.ts +2 -2
  259. package/views/selection/SelectionOperation.js +1 -1
  260. package/views/selection/types.d.ts +43 -3
  261. package/views/support/layerViewUtils.js +1 -1
  262. package/views/support/selectionUtils.js +1 -1
  263. package/widgets/BatchAttributeForm/inputs/FieldInput.d.ts +0 -1
  264. package/widgets/Editor/VisibleElements.d.ts +4 -0
  265. package/widgets/Editor.d.ts +2 -0
  266. package/widgets/FeatureTable.js +1 -1
  267. package/widgets/Features/FeaturesViewModel.js +1 -1
  268. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  269. package/widgets/OrientedImageryViewer/adapters/view/SceneViewAdapter.js +1 -1
  270. package/widgets/OrientedImageryViewer/services/SuperimposeService.js +1 -1
  271. package/widgets/OrientedImageryViewer/support/NonPanoramicMedia.js +1 -1
  272. package/widgets/OrientedImageryViewer/support/dataCaptureUtils.js +1 -1
  273. package/widgets/OrientedImageryViewer.js +2 -2
  274. package/widgets/PanoramicViewer/utils.js +1 -1
  275. package/widgets/Print.js +1 -1
  276. package/widgets/Search/LayerSearchSource.d.ts +1 -1
  277. package/widgets/Sketch/VisibleElements.d.ts +4 -0
  278. package/widgets/Sketch.d.ts +2 -0
  279. package/widgets/support/SelectionList/GroupLayerItem.d.ts +6 -0
  280. package/widgets/support/SelectionList/GroupLayerItem.js +1 -1
  281. package/widgets/support/SelectionList/ItemBase.js +1 -1
  282. package/widgets/support/SelectionToolbar/SelectionToolbarViewModel.d.ts +6 -1
  283. package/widgets/support/SelectionToolbar/SelectionToolbarViewModel.js +1 -1
  284. package/widgets/support/SelectionToolbar.d.ts +8 -1
  285. package/widgets/support/SelectionToolbar.js +1 -1
  286. package/widgets/support/Selector2D/selectorUtils.js +1 -1
  287. package/assets/esri/core/workers/chunks/0320cbd825f9a4222042.js +0 -1
  288. package/assets/esri/core/workers/chunks/067de1910190da228291.js +0 -1
  289. package/assets/esri/core/workers/chunks/09bd5df07eab80ae7b15.js +0 -1
  290. package/assets/esri/core/workers/chunks/164e74d586297946a717.js +0 -1
  291. package/assets/esri/core/workers/chunks/1c0c5cb13c2590aae906.js +0 -1
  292. package/assets/esri/core/workers/chunks/1c77de1e79860f8d2228.js +0 -1
  293. package/assets/esri/core/workers/chunks/24dac4970526a4e0ae63.js +0 -1
  294. package/assets/esri/core/workers/chunks/2acf2952cef69e382a35.js +0 -1
  295. package/assets/esri/core/workers/chunks/30dcf2cfb31cb70de7df.js +0 -1
  296. package/assets/esri/core/workers/chunks/371e2ddb88cc6b9a41e8.js +0 -1
  297. package/assets/esri/core/workers/chunks/42f6194633c2d879c8da.js +0 -1
  298. package/assets/esri/core/workers/chunks/44f90e75c1dc3d726a95.js +0 -1
  299. package/assets/esri/core/workers/chunks/4abd3753cd9b80e4d937.js +0 -1
  300. package/assets/esri/core/workers/chunks/4bb9a5f4ca944d3fc206.js +0 -1
  301. package/assets/esri/core/workers/chunks/4c389472b8cdb0c55154.js +0 -1
  302. package/assets/esri/core/workers/chunks/4d93bed14945e3d34d5c.js +0 -1
  303. package/assets/esri/core/workers/chunks/4e3f651ac76fcd53df2b.js +0 -1
  304. package/assets/esri/core/workers/chunks/505227797bcf2a1d908d.js +0 -1
  305. package/assets/esri/core/workers/chunks/58da3f8cf0f7f6a7e4fa.js +0 -1
  306. package/assets/esri/core/workers/chunks/5a19a9c3e01d3d415188.js +0 -1
  307. package/assets/esri/core/workers/chunks/5a830bc35adbedd33783.js +0 -1
  308. package/assets/esri/core/workers/chunks/6db0f8fe1402643fbe1a.js +0 -1
  309. package/assets/esri/core/workers/chunks/7124ad8dc5ad40dc66f3.js +0 -1
  310. package/assets/esri/core/workers/chunks/7446d0dfebf93e86c098.js +0 -1
  311. package/assets/esri/core/workers/chunks/7c631e2947243e2c9bde.js +0 -1
  312. package/assets/esri/core/workers/chunks/7f0f9dddc44b1f1600f0.js +0 -1
  313. package/assets/esri/core/workers/chunks/7fb7493f483cd9878bfa.js +0 -1
  314. package/assets/esri/core/workers/chunks/8e310e9cb9d84ac3ca2f.js +0 -1
  315. package/assets/esri/core/workers/chunks/950d4578dc450467404c.js +0 -1
  316. package/assets/esri/core/workers/chunks/99a0a434ea2162166754.js +0 -1
  317. package/assets/esri/core/workers/chunks/9afc87474cef1fc4fe4a.js +0 -1
  318. package/assets/esri/core/workers/chunks/9cbde13e536676767900.js +0 -1
  319. package/assets/esri/core/workers/chunks/9cd3fcb5fca6f9dbbcd8.js +0 -1
  320. package/assets/esri/core/workers/chunks/a025ee38d402504193df.js +0 -1
  321. package/assets/esri/core/workers/chunks/a4b822ee45810c4c292a.js +0 -1
  322. package/assets/esri/core/workers/chunks/a51576d84edca88e41dd.js +0 -1
  323. package/assets/esri/core/workers/chunks/ac24b4370dc7194a3107.js +0 -1
  324. package/assets/esri/core/workers/chunks/ace41659a5ca0e5abfc3.js +0 -1
  325. package/assets/esri/core/workers/chunks/b01804aa6c47a220a603.js +0 -1
  326. package/assets/esri/core/workers/chunks/b3273f847405799e3362.js +0 -1
  327. package/assets/esri/core/workers/chunks/ba3d5abff65aefcb8dee.js +0 -1
  328. package/assets/esri/core/workers/chunks/bca6b469940b7b954123.js +0 -1
  329. package/assets/esri/core/workers/chunks/c0d7ae314ebfad1e3791.js +0 -1
  330. package/assets/esri/core/workers/chunks/c337fc0e6dc69c233e6d.js +0 -1
  331. package/assets/esri/core/workers/chunks/c8eae00b0ec87d8b2ff3.js +0 -1
  332. package/assets/esri/core/workers/chunks/cd9aa950cb74b09008fe.js +0 -1
  333. package/assets/esri/core/workers/chunks/e0d9dc97985561320bd4.js +0 -1
  334. package/assets/esri/core/workers/chunks/e2775b4b753306dc8477.js +0 -1
  335. package/assets/esri/core/workers/chunks/eaddffcc7004101fc230.js +0 -1
  336. package/assets/esri/core/workers/chunks/ebbf425af348e6ede814.js +0 -1
  337. package/assets/esri/core/workers/chunks/efc53007cd2e4991d7d4.js +0 -1
  338. package/assets/esri/core/workers/chunks/f46e92c67986c8c09bdd.js +0 -1
  339. package/assets/esri/core/workers/chunks/f8bc474434fd365ab174.js +0 -1
  340. package/assets/esri/core/workers/chunks/f8d2225f333524ce1d88.js +0 -1
  341. package/assets/esri/core/workers/chunks/f95a1f878c9c1146180e.js +0 -1
  342. package/assets/esri/core/workers/chunks/fb37f0848196c28b7fd7.js +0 -1
  343. /package/assets/esri/core/workers/chunks/{768389f7f8dba6080df7.js.LICENSE.txt → 0cc7fba402a93e6d2455.js.LICENSE.txt} +0 -0
@@ -7,6 +7,7 @@
7
7
  * @see [flowRendererCreator](https://developers.arcgis.com/javascript/latest/references/core/smartMapping/raster/renderers/flow/)
8
8
  */
9
9
  import type Basemap from "../../Basemap.js";
10
+ import type { FlowTheme } from "../../renderers/support/types.js";
10
11
  import type { FlowScheme, FlowSchemes, BasemapTheme, Theme } from "./types.js";
11
12
 
12
13
  /**
@@ -107,7 +108,7 @@ export interface GetSchemesParameters {
107
108
  *
108
109
  * @default "flow-line"
109
110
  */
110
- theme?: "flow-line" | "wave-front" | null;
111
+ theme?: FlowTheme | null;
111
112
  /**
112
113
  * If you have a
113
114
  * non-Esri basemap (e.g. a VectorTileLayer basemap with a custom style) or no basemap at all, use this parameter to indicate
@@ -1,4 +1,5 @@
1
1
  import type Color from "../../Color.js";
2
+ import type { FlowTheme } from "../../renderers/support/types.js";
2
3
 
3
4
  /**
4
5
  * Describes a theme that pairs well with the given basemaps.
@@ -1760,7 +1761,7 @@ export interface FlowScheme {
1760
1761
  *
1761
1762
  * @since 5.0
1762
1763
  */
1763
- theme: "flow-line" | "wave-front";
1764
+ theme: FlowTheme;
1764
1765
  /**
1765
1766
  * The suggested color of the flow lines if a color visual variable is not desired.
1766
1767
  *
@@ -16,8 +16,8 @@ export interface BasemapStyleProperties extends Partial<Pick<BasemapStyle, "apiK
16
16
  *
17
17
  * > [!CAUTION]
18
18
  * >
19
- * > Use of the basemap style service requires authentication via an [API key](https://developers.arcgis.com/javascript/latest/references/core/config/#Config-apiKey) or [user authentication](https://developers.arcgis.com/javascript/latest/secure-resources/#user-authentication). To learn more about API keys,
20
- * > see the [API keys](https://developers.arcgis.com/documentation/mapping-apis-and-services/security/api-keys/) section in the Esri Developer documentation.
19
+ * > Use of the basemap style service requires authentication via an [API key](https://developers.arcgis.com/javascript/latest/references/core/config/#Config-apiKey) or [user authentication](https://developers.arcgis.com/javascript/latest/authentication/access-tokens/#user-authentication). To learn more about API keys,
20
+ * > see the [API key authentication](https://developers.arcgis.com/javascript/latest/authentication/access-tokens/#api-key-authentication) section.
21
21
  *
22
22
  * @since 4.28
23
23
  * @see [Basemap styles service (v2)](https://developers.arcgis.com/rest/basemap-styles/)
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import{Placement as e}from"./CIMPlacements.js";function t(e,t){e[4]=t}class n{constructor(t,n=!0,r=!0,i=0){this._angleToLine=!0,this._keepUpright=!1,this.isClosed=!1,this.geometryCursor=null,this.geometryCursor=!n&&t.geometryType===`esriGeometryPolygon`||!r&&t.geometryType===`esriGeometryPolyline`?null:t,this.geomUnitsPerPoint=i,this.iterateMultiPath=!1,this.iteratePath=!1,this.internalPlacement=new e}next(){if(!this.geometryCursor)return null;let e=this.processMultiPath(this.geometryCursor);if(this.iterateMultiPath&&e||(this.geometryCursor=null),!e)return null;let t=e.getAngle();if(this._angleToLine&&this._keepUpright&&Math.abs(t)>.5*Math.PI){let n=t+Math.PI,r=Math.atan2(Math.sin(n),Math.cos(n));Number.isNaN(r)||e.setRotate(r)}return e}processMultiPath(e){for(;this.iteratePath||e.pathIndex<e.totalSize-1;){this.iteratePath||e.nextPath(),this.iterateMultiPath=!0;let t=this.processPath(e);if(t)return t}return this.iterateMultiPath=!1,null}}class r{constructor(e,t,n,r=0){this.isClosed=!1,this.inputGeometries=e,this.acceptPolygon=t,this.acceptPolyline=n,this.geomUnitsPerPoint=r,this.iteratePath=!1,this.multiPathCursor=null}next(){for(;;){if(!this.multiPathCursor){let e=this.inputGeometries.next();for(;e&&(this.isClosed=this.acceptPolygon&&e.geometryType===`esriGeometryPolygon`||e.geometryType===`esriGeometryEnvelope`,this.multiPathCursor=e,!this.multiPathCursor);)e=this.inputGeometries.next();if(!this.multiPathCursor)return null}for(;this.iteratePath||this.multiPathCursor.nextPath();){this.multiPathCursor.seekPathStart();let e=this.processPath(this.multiPathCursor);if(e)return e}this.multiPathCursor=null}}}export{r as PathEffectCursor,n as PathTransformationCursor,t as setId};
2
+ import{Placement as e}from"./CIMPlacements.js";function t(e,t){e[4]=t}function n(e){if(!(Math.abs(e)>.5*Math.PI))return null;let t=e+Math.PI,n=Math.atan2(Math.sin(t),Math.cos(t));return Number.isNaN(n)?null:n}class r{constructor(t,n=!0,r=!0,i=0){this._angleToLine=!0,this._keepUpright=!1,this.isClosed=!1,this.geometryCursor=null,this.geometryCursor=!n&&t.geometryType===`esriGeometryPolygon`||!r&&t.geometryType===`esriGeometryPolyline`?null:t,this.geomUnitsPerPoint=i,this.iterateMultiPath=!1,this.iteratePath=!1,this.internalPlacement=new e}next(){if(!this.geometryCursor)return null;let e=this.processMultiPath(this.geometryCursor);if(this.iterateMultiPath&&e||(this.geometryCursor=null),!e)return null;let t=e.getAngle(),r=this._angleToLine&&this._keepUpright?n(t):null;return r!=null&&e.setRotate(r),e}processMultiPath(e){for(;this.iteratePath||e.pathIndex<e.totalSize-1;){this.iteratePath||e.nextPath(),this.iterateMultiPath=!0;let t=this.processPath(e);if(t)return t}return this.iterateMultiPath=!1,null}}class i{constructor(e,t,n,r=0){this.isClosed=!1,this.inputGeometries=e,this.acceptPolygon=t,this.acceptPolyline=n,this.geomUnitsPerPoint=r,this.iteratePath=!1,this.multiPathCursor=null}next(){for(;;){if(!this.multiPathCursor){let e=this.inputGeometries.next();for(;e&&(this.isClosed=this.acceptPolygon&&e.geometryType===`esriGeometryPolygon`||e.geometryType===`esriGeometryEnvelope`,this.multiPathCursor=e,!this.multiPathCursor);)e=this.inputGeometries.next();if(!this.multiPathCursor)return null}for(;this.iteratePath||this.multiPathCursor.nextPath();){this.multiPathCursor.seekPathStart();let e=this.processPath(this.multiPathCursor);if(e)return e}this.multiPathCursor=null}}}export{i as PathEffectCursor,r as PathTransformationCursor,n as getUprightAngle,t as setId};
@@ -266,13 +266,13 @@ export interface CIMLineCallout extends CIMCallout {
266
266
  * Represents the leader line style for callouts. Line leaders will always be drawn with their own geometry.
267
267
  *
268
268
  * Supported values:
269
- * - `Base`: The line callout leader is a single line originating from the closest corner of the text box with the gap applied. If the callout has an accent bar it is connected to the closest point at the either top or bottom of the accent bar.
269
+ * - `Base`: The line callout leader is a single line originating from the closest corner of the text box with the gap applied. If the callout has an accent bar it is connected to the closest point at either the top or bottom of the accent bar.
270
270
  * - `MidPoint`: The line callout leader is a single line originating from the midpoint of the left or right side of the text box with the gap applied or from the midpoint of the accent bar if the callout has one.
271
271
  * - `ThreePoint`: The line callout leader is a 3-point line originating from the midpoint of the left or right side of the text box with the gap applied or the midpoint of the accent bar if the callout has one.
272
272
  * - `FourPoint`: The line callout leader is a 4-point line originating from the midpoint of the left or right side of the text box with the gap applied or the midpoint of the accent bar if the callout has one.
273
- * - `Underline`: The line callout draws a line that connects to the closest of the four corners of the text with the gap applied. If the callout has an accent bar it is connected to the closest point at either the top or bottom of the accent bar. Additionally, either and underline or an "overline" is drawn along the closest side (bottom or top) of the text.
274
- * - `CircularCW`: The line callout leader is curved (clockwise) from the anchor point to the closest corner of the text box with the gap applied. If the callout has an accent bar it is connected to the closest point at the either top or bottom of the accent bar.
275
- * - `CircularCCW`: The line callout leader is curved (counter-clockwise) from the anchor point to the closest corner of the text box with the gap applied. If the callout has an accent bar it is connected to the closest point at the either top or bottom of the accent bar.
273
+ * - `Underline`: The line callout draws a line that connects to the closest of the four corners of the text with the gap applied. If the callout has an accent bar it is connected to the closest point at either the top or bottom of the accent bar. Additionally, either an underline or an "overline" is drawn along the closest side (bottom or top) of the text.
274
+ * - `CircularCW`: The line callout leader is curved (clockwise) from the anchor point to the closest corner of the text box with the gap applied. If the callout has an accent bar it is connected to the closest point at either the top or bottom of the accent bar.
275
+ * - `CircularCCW`: The line callout leader is curved (counter-clockwise) from the anchor point to the closest corner of the text box with the gap applied. If the callout has an accent bar it is connected to the closest point at either the top or bottom of the accent bar.
276
276
  *
277
277
  * @since 5.2
278
278
  */
@@ -343,7 +343,7 @@ export type LeaderLineStyle = "Base" | "MidPoint" | "ThreePoint" | "FourPoint" |
343
343
  * "accentBarSymbol": {
344
344
  * "type": "CIMLineSymbol",
345
345
  * "symbolLayers": [
346
- * * {
346
+ * {
347
347
  * "type": "CIMSolidStroke",
348
348
  * "enable": true,
349
349
  * "capStyle": "Round",
@@ -2693,7 +2693,6 @@ export interface CIMSymbolAnimationOffset extends CIMBaseAnimation {
2693
2693
  *
2694
2694
  * @since 5.1
2695
2695
  * @see [CIMSymbolAnimationMoveAlongLine](https://developers.arcgis.com/javascript/latest/references/core/symbols/cim/types/#CIMSymbolAnimationMoveAlongLine)
2696
- * @beta
2697
2696
  */
2698
2697
  export type MovementAlongLineType = "Distance" | "Speed";
2699
2698
 
@@ -2703,7 +2702,6 @@ export type MovementAlongLineType = "Distance" | "Speed";
2703
2702
  * The starting position of the marker(s) on the line geometry is determined by the [CIMMarkerPlacement](https://developers.arcgis.com/javascript/latest/references/core/symbols/cim/types/#CIMMarkerPlacement) properties of the symbol layer.
2704
2703
  *
2705
2704
  * @since 5.1
2706
- * @beta
2707
2705
  */
2708
2706
  export interface CIMSymbolAnimationMoveAlongLine extends CIMBaseAnimation {
2709
2707
  /**
@@ -2756,7 +2754,7 @@ export interface CIMSymbolAnimationMoveAlongLine extends CIMBaseAnimation {
2756
2754
  * [CIMSymbolAnimationTransparency](https://developers.arcgis.com/javascript/latest/references/core/symbols/cim/types/#CIMSymbolAnimationTransparency) | Represents a symbol animation that changes the transparency of a symbol.
2757
2755
  * [CIMSymbolAnimationRotation](https://developers.arcgis.com/javascript/latest/references/core/symbols/cim/types/#CIMSymbolAnimationRotation) | Represents a symbol animation that rotates a symbol to a given value.
2758
2756
  * [CIMSymbolAnimationOffset](https://developers.arcgis.com/javascript/latest/references/core/symbols/cim/types/#CIMSymbolAnimationOffset) | Represents a symbol animation that offsets a symbol to a given X or Y value.
2759
- * [CIMSymbolAnimationMoveAlongLine](https://developers.arcgis.com/javascript/latest/references/core/symbols/cim/types/#CIMSymbolAnimationMoveAlongLine) (beta) | Represents a symbol animation that moves a symbol along a line geometry.
2757
+ * [CIMSymbolAnimationMoveAlongLine](https://developers.arcgis.com/javascript/latest/references/core/symbols/cim/types/#CIMSymbolAnimationMoveAlongLine) | Represents a symbol animation that moves a symbol along a line geometry.
2760
2758
  *
2761
2759
  * > [!WARNING]
2762
2760
  * >
@@ -3025,7 +3023,7 @@ export interface CIMPointSymbolCallout extends CIMLineCallout {
3025
3023
  */
3026
3024
  pointSymbol: CIMPointSymbol;
3027
3025
  /**
3028
- * Defines how the background is scaled to fit the dimensions of the symbol.
3026
+ * Defines how the background is scaled to fit the dimensions of the text symbol.
3029
3027
  *
3030
3028
  * @since 5.2
3031
3029
  */
@@ -32,6 +32,7 @@
32
32
  * }
33
33
  * ```
34
34
  *
35
+ * @deprecated since version 4.34. Import individual element modules directly instead.
35
36
  * @since 4.31
36
37
  * @see [AttributeTableTemplate](https://developers.arcgis.com/javascript/latest/references/core/tables/AttributeTableTemplate/)
37
38
  * @see [AttributeTableAttachmentElement](https://developers.arcgis.com/javascript/latest/references/core/tables/elements/AttributeTableAttachmentElement/)
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import{MinPriority as e}from"../../../../core/MemCache.js";import{throwIfAborted as t}from"../../../../core/promiseUtils.js";import{fromValues as n}from"../../../../core/libs/gl-matrix-2/factories/mat3f32.js";import{create as r}from"../../../../geometry/support/aaBoundingRect.js";import{tileSizeInPixels as i}from"./constants.js";import{TileHandler as a}from"./TileHandler.js";import{VectorTile as o}from"./VectorTile.js";import s from"../../tiling/TileInfoViewPOT.js";import c from"../../tiling/TileKey.js";class l extends a{constructor(e,t,n,r,i){super(e,t,n,e.tileInfo.lods.length-1,r),this._memCache=i,this.type=`TileHandler3D`,this._vectorTiles=new Map,this._ongoingTileRequests=new Map,this._ongoingRequestToController=new Map,this.tilingScheme=new s(e.tileInfo,e.fullExtent)}destroy(){super.destroy(),this._ongoingRequestToController.forEach(e=>e.abort()),this._ongoingRequestToController.clear(),this._ongoingTileRequests.clear(),this._vectorTiles.clear()}async getVectorTile(a,s){let l=new c(a[0],a[1],a[2],0),u=this._vectorTiles.get(l.id)??this._memCache.get(l.id);if(u)return u.retain(),u;let d=await this._getVectorTileData(l);if(t(s),!this._layer)return null;if(u=this._vectorTiles.get(l.id)??this._memCache.get(l.id),u)return u.retain(),u;let f=this._layer.tileInfo.getTileBounds(r(),l),p=this.tilingScheme.getTileResolution(a[0]);return u=new o(l,p,f[0],f[3],i,i,this._styleRepository,this),u.setData(d),d&&(u.retain(),this._memCache.put(l.id,u,e),this._vectorTiles.set(l.id,u)),u.neededForCoverage=!0,u.transforms.tileUnitsToPixels=n(1/8,0,0,0,1/8,0,0,0,1),u}updateTileSize(e){this._memCache.updateSize(e.id)}onDisposeTile(e){this._vectorTiles.delete(e.id)}_getVectorTileData(e){let t=e.id;if(this._ongoingTileRequests.has(t))return this._ongoingTileRequests.get(t);let n=new AbortController,r={signal:n.signal},i=this._getParsedVectorTileData(e,r).then(e=>(this._ongoingTileRequests.delete(t),this._ongoingRequestToController.delete(t),e)).catch(()=>(this._ongoingTileRequests.delete(t),this._ongoingRequestToController.delete(t),null));return this._ongoingTileRequests.set(t,i),this._ongoingRequestToController.set(t,n),i}_getParsedVectorTileData(e,t){return this.fetchTileData(e,t).then(n=>this.parseTileData({key:e,data:n},t))}}export{l as default};
2
+ import{MinPriority as e}from"../../../../core/MemCache.js";import{throwIfAborted as t}from"../../../../core/promiseUtils.js";import{fromValues as n}from"../../../../core/libs/gl-matrix-2/factories/mat3f32.js";import{create as r}from"../../../../geometry/support/aaBoundingRect.js";import{tileSizeInPixels as i}from"./constants.js";import{TileHandler as a}from"./TileHandler.js";import{VectorTile as o}from"./VectorTile.js";import s from"../../tiling/TileInfoViewPOT.js";import c from"../../tiling/TileKey.js";class l extends a{constructor(e,t,n,r,i){super(e,t,n,e.tileInfo.lods.length-1,r),this._memCache=i,this.type=`TileHandler3D`,this._vectorTiles=new Map,this._ongoingTileRequests=new Map,this._ongoingRequestToController=new Map,this.tilingScheme=new s(e.tileInfo,e.fullExtent)}destroy(){super.destroy(),this._ongoingRequestToController.forEach(e=>e.abort()),this._ongoingRequestToController.clear(),this._ongoingTileRequests.clear(),this._vectorTiles.clear()}async getVectorTile(a,s){let l=new c(a[0],a[1],a[2],0),u=this._vectorTiles.get(l.id)??this._memCache.get(l.id);if(u)return u.retain(),u;let d=await this._getVectorTileData(l);if(t(s),!this._layer||!d)return null;if(u=this._vectorTiles.get(l.id)??this._memCache.get(l.id),u)return u.retain(),u;let f=this._layer.tileInfo.getTileBounds(r(),l),p=this.tilingScheme.getTileResolution(a[0]);return u=new o(l,p,f[0],f[3],i,i,this._styleRepository,this),u.setData(d),u.retain(),this._memCache.put(l.id,u,e),this._vectorTiles.set(l.id,u),u.neededForCoverage=!0,u.transforms.tileUnitsToPixels=n(1/8,0,0,0,1/8,0,0,0,1),u}updateTileSize(e){this._memCache.updateSize(e.id)}onDisposeTile(e){this._vectorTiles.delete(e.id)}_getVectorTileData(e){let t=e.id;if(this._ongoingTileRequests.has(t))return this._ongoingTileRequests.get(t);let n=new AbortController,r={signal:n.signal},i=this._getParsedVectorTileData(e,r).then(e=>(this._ongoingTileRequests.delete(t),this._ongoingRequestToController.delete(t),e)).catch(()=>(this._ongoingTileRequests.delete(t),this._ongoingRequestToController.delete(t),null));return this._ongoingTileRequests.set(t,i),this._ongoingRequestToController.set(t,n),i}_getParsedVectorTileData(e,t){return this.fetchTileData(e,t).then(n=>this.parseTileData({key:e,data:n},t))}}export{l as default};
@@ -8,5 +8,5 @@ class e{generateSource(e){let t=[];for(let n=1;n<this.length;n++)t.push(`vec4 at
8
8
  cos1 * s1 * x2 - sin1 * s1 * y2 + x1,
9
9
  sin1 * s1 * x2 + cos1 * s1 * y2 + y1
10
10
  );
11
- `,`out0 = vec4(translation, rotation, scale);`]}encode(e){return[[this.opcode,0,0,0],[e.translation.from[0],e.translation.from[1],e.translation.to[0],e.translation.to[1]],[e.rotation.from,e.rotation.to,e.scale.from,e.scale.to],...p(e.translation.timing),...p(e.rotation.timing),...p(e.scale.timing),[+!!e.relativeTranslation,+!!e.absoluteScale,+!!e.selectGlobalRotation,0]]}}class h extends e{constructor(){super(...arguments),this.opcode=++t,this.length=7,this.ins=1,this.outs=1,this.microcode=[`float fromOpacity = atom0.y;`,`float toOpacity = atom0.z;`,`vec4 fromColor = atom1;`,`vec4 toColor = atom2;`,`float fColor;`,`{`,...c({duration:`atom3.x`,startTimeOffset:`atom3.y`,repeatDelay:`atom3.z`,timeOriginSelector:`atom3.w`,repeatType:`atom4.x`,easing:`atom4.y`,playAnimation:`atom4.z`,reverseAnimation:`atom4.w`,out:`fColor`}),`}`,`float fOpacity;`,`{`,...c({duration:`atom5.x`,startTimeOffset:`atom5.y`,repeatDelay:`atom5.z`,timeOriginSelector:`atom5.w`,repeatType:`atom6.x`,easing:`atom6.y`,playAnimation:`atom6.z`,reverseAnimation:`atom6.w`,out:`fOpacity`}),`}`,`vec4 aColor = mix(fromColor, toColor, fColor);`,`aColor.a *= mix(fromOpacity, toOpacity, fOpacity);`,`vec4 pColor = in0;`,`out0 = aColor * pColor;`]}encode(e){return[[this.opcode,e.opacity.from,e.opacity.to,0],[e.color.from[0],e.color.from[1],e.color.from[2],e.color.from[3]],[e.color.to[0],e.color.to[1],e.color.to[2],e.color.to[3]],...p(e.color.timing),...p(e.opacity.timing)]}}class g extends e{constructor(){super(...arguments),this.opcode=++t,this.length=4,this.ins=1,this.outs=1,this.microcode=[`float fromShift = atom0.y;`,`float toShift = atom0.z;`,`float duration = atom1.x;`,`bool multiplyToByLineLength = atom3.x == 1.0;`,`bool multiplyDurationByLineLength = atom3.y == 1.0;`,`bool continuous = atom3.z == 1.0;`,`toShift *= multiplyToByLineLength ? lineLength : 1.0;`,`duration *= multiplyDurationByLineLength ? lineLength : 1.0;`,`float fShift;`,`if (continuous) {`,...l({duration:`duration`,startTimeOffset:`atom1.y`,repeatDelay:`atom1.z`,timeOriginSelector:`atom1.w`,easing:`atom2.y`,playAnimation:`atom2.z`,reverseAnimation:`atom2.w`,out:`fShift`}),`} else {`,...c({duration:`duration`,startTimeOffset:`atom1.y`,repeatDelay:`atom1.z`,timeOriginSelector:`atom1.w`,repeatType:`atom2.x`,easing:`atom2.y`,playAnimation:`atom2.z`,reverseAnimation:`atom2.w`,out:`fShift`}),`}`,`float aShift = mix(fromShift, toShift, fShift);`,`vec4 pShift = in0;`,`out0 = mod(aShift + pShift, lineLength);`]}encode(e){return[[this.opcode,e.shift.from,e.shift.to,0],...p(e.shift.timing),[+!!e.multiplyToByLineLength,+!!e.multiplyDurationByLineLength,+!!e.continuous,0]]}}const _={scalar:new r,vector3:new i,vector4:new a,animatedTransform:new m,animatedColor:new h,animatedShift:new g,ret:new n},v=4;function y(e){let t=[];t.push(`float globalTime = ${e.globalTime};`),t.push(`float localTimeOrigin = ${e.localTimeOrigin};`),t.push(`float lineLength = ${e.lineLength};`),t.push(`float globalRotation = ${e.globalRotation};`),t.push(`vec2 pointer = ${e.animationPointer};`),t.push(`vec2 size = ${e.animationTextureSize};`),t.push(`int top = 0;`),t.push(`vec4 stack[4];`),t.push(`for (int counter = 0; counter < 40; counter++) {`),t.push(`vec4 atom0 = texture(${e.animationTexture}, (pointer + 0.5) / size);`),t.push(`pointer.x += 1.0;`),t.push(`vec2 pixelDimensions = ${e.pixelDimensions};`),t.push(`if (false) {`);for(let n in _){let r=_[n];t.push(`} else if (int(atom0.x) == ${r.opcode}) {`);for(let n of r.generateSource(e))t.push(n)}return t.push(`} // End if-else.`),t.push(`} // End for.`),t.push(`${e.out} = top > 0 ? stack[top - 1] : vec4(0.0);`),t.join(`
11
+ `,`out0 = vec4(translation, rotation, scale);`]}encode(e){return[[this.opcode,0,0,0],[e.translation.from[0],e.translation.from[1],e.translation.to[0],e.translation.to[1]],[e.rotation.from,e.rotation.to,e.scale.from,e.scale.to],...p(e.translation.timing),...p(e.rotation.timing),...p(e.scale.timing),[+!!e.relativeTranslation,+!!e.absoluteScale,+!!e.selectGlobalRotation,0]]}}class h extends e{constructor(){super(...arguments),this.opcode=++t,this.length=7,this.ins=1,this.outs=1,this.microcode=[`float fromOpacity = atom0.y;`,`float toOpacity = atom0.z;`,`vec4 fromColor = atom1;`,`vec4 toColor = atom2;`,`float fColor;`,`{`,...c({duration:`atom3.x`,startTimeOffset:`atom3.y`,repeatDelay:`atom3.z`,timeOriginSelector:`atom3.w`,repeatType:`atom4.x`,easing:`atom4.y`,playAnimation:`atom4.z`,reverseAnimation:`atom4.w`,out:`fColor`}),`}`,`float fOpacity;`,`{`,...c({duration:`atom5.x`,startTimeOffset:`atom5.y`,repeatDelay:`atom5.z`,timeOriginSelector:`atom5.w`,repeatType:`atom6.x`,easing:`atom6.y`,playAnimation:`atom6.z`,reverseAnimation:`atom6.w`,out:`fOpacity`}),`}`,`vec4 aColor = mix(fromColor, toColor, fColor);`,`aColor.a *= mix(fromOpacity, toOpacity, fOpacity);`,`vec4 pColor = in0;`,`out0 = aColor * pColor;`]}encode(e){return[[this.opcode,e.opacity.from,e.opacity.to,0],[e.color.from[0],e.color.from[1],e.color.from[2],e.color.from[3]],[e.color.to[0],e.color.to[1],e.color.to[2],e.color.to[3]],...p(e.color.timing),...p(e.opacity.timing)]}}class g extends e{constructor(){super(...arguments),this.opcode=++t,this.length=4,this.ins=1,this.outs=1,this.microcode=[`float fromShift = atom0.y;`,`float toShift = atom0.z;`,`float duration = atom1.x;`,`bool multiplyToByLineLength = atom3.x == 1.0;`,`bool multiplyDurationByLineLength = atom3.y == 1.0;`,`bool continuous = atom3.z == 1.0;`,`toShift *= multiplyToByLineLength ? lineLength : 1.0;`,`duration *= multiplyDurationByLineLength ? lineLength : 1.0;`,`float fShift;`,`if (continuous) {`,...l({duration:`duration`,startTimeOffset:`atom1.y`,repeatDelay:`atom1.z`,timeOriginSelector:`atom1.w`,easing:`atom2.y`,playAnimation:`atom2.z`,reverseAnimation:`atom2.w`,out:`fShift`}),`} else {`,...c({duration:`duration`,startTimeOffset:`atom1.y`,repeatDelay:`atom1.z`,timeOriginSelector:`atom1.w`,repeatType:`atom2.x`,easing:`atom2.y`,playAnimation:`atom2.z`,reverseAnimation:`atom2.w`,out:`fShift`}),`}`,`if (lineLength < 50.0) {`,` fShift = 0.0;`,`}`,`float aShift = mix(fromShift, toShift, fShift);`,`vec4 pShift = in0;`,`out0 = mod(aShift + pShift, lineLength);`]}encode(e){return[[this.opcode,e.shift.from,e.shift.to,0],...p(e.shift.timing),[+!!e.multiplyToByLineLength,+!!e.multiplyDurationByLineLength,+!!e.continuous,0]]}}const _={scalar:new r,vector3:new i,vector4:new a,animatedTransform:new m,animatedColor:new h,animatedShift:new g,ret:new n},v=4;function y(e){let t=[];t.push(`float globalTime = ${e.globalTime};`),t.push(`float localTimeOrigin = ${e.localTimeOrigin};`),t.push(`float lineLength = ${e.lineLength};`),t.push(`float globalRotation = ${e.globalRotation};`),t.push(`vec2 pointer = ${e.animationPointer};`),t.push(`vec2 size = ${e.animationTextureSize};`),t.push(`int top = 0;`),t.push(`vec4 stack[4];`),t.push(`for (int counter = 0; counter < 40; counter++) {`),t.push(`vec4 atom0 = texture(${e.animationTexture}, (pointer + 0.5) / size);`),t.push(`pointer.x += 1.0;`),t.push(`vec2 pixelDimensions = ${e.pixelDimensions};`),t.push(`if (false) {`);for(let n in _){let r=_[n];t.push(`} else if (int(atom0.x) == ${r.opcode}) {`);for(let n of r.generateSource(e))t.push(n)}return t.push(`} // End if-else.`),t.push(`} // End for.`),t.push(`${e.out} = top > 0 ? stack[top - 1] : vec4(0.0);`),t.join(`
12
12
  `)}export{e as AAnimationInstruction,h as AnimatedColorInstruction,g as AnimatedShiftInstruction,m as AnimatedTransformInstruction,n as RetInstruction,r as ScalarInstruction,i as Vector3Instruction,a as Vector4Instruction,u as easingCodes,y as generateVirtualMachineSource,c as getTweenFactor,l as getUnclampedTweenFactor,_ as instructions,d as repeatTypeCodes,f as timeOriginSelectorCodes};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import{onePointInPixels as e}from"../../../../../../../core/screenUtils.js";import{GeometryCursor as t}from"../../../../../../../geometry/GeometryCursor.js";import{maxTileCoordValue as n}from"../../../../../../../symbols/cim/constants.js";import{CIMMarkerPlacementHelper as r}from"../../../../../../../symbols/cim/placements/CIMMarkerPlacementHelper.js";import{spritePadding as i,tileSize as a}from"../../../definitions.js";import{AAnimatedMeshWriter as o}from"./AnimatedMeshWriter.js";import{angle as s,sizing as c,animationPointerAndBaseSizeAndReferenceSize as l,uv as u,offset as d,pos as f,bitset as p,id as m,lineLength as h,value1Position2Value2 as g,zoomRange as _}from"./attributes.js";import{clipWithVertexInterpolation as v}from"./clipping.js";import{createComputedAnimatedMeshParams as y}from"./ComputedAnimatedParams.js";function b(e,t){let n=[],r=0,i=0;for(;e.nextPath();){i=t?0:r,e.nextPoint();let{x:a,y:o}=e,s=[{x:a,y:o,attributes:[i]}];for(;e.nextPoint();){let{x:t,y:n}=e,r=t-a,c=n-o,l=Math.sqrt(r*r+c*c);i+=l,s.push({x:t,y:n,attributes:[i]}),a=t,o=n}s.length>1&&n.push(s),r=i}return{lineData:n,totalDistance:r}}class x extends o{get vertexSpec(){return{createComputedParams:y,optionalAttributes:{zoomRange:_,value1Position2Value2:g,lineLength:h},attributes:{id:m,bitset:p,pos:f,offset:d.marker,uv:u.marker,animationPointerAndBaseSizeAndReferenceSize:l,sizing:c,angle:s}}}_write(e,{target:n,effect:r}){let i=r?.geometry,{textureBinding:a}=this.evaluatedMeshParams.sprite;e.recordStart(this.instanceId,this.attributeLayout,a);let o=n.getDisplayId();if(this.shift&&n.geometryType===`esriGeometryPolyline`){if(!i){let r=t.fromFeatureSetReaderCIM(n);r&&this._writeParticles(e,n,r)}}else if(this.evaluatedMeshParams.placement!=null)this._writePlacedMarkers(e,n);else if(n.geometryType===`esriGeometryPolygon`){let t=n.readCentroidForDisplay();if(!t)return;let[r,i]=t.coords;this._writeQuad(e,o,r,i)}else if(n.geometryType===`esriGeometryPoint`){let t=n.readXForDisplay(),r=n.readYForDisplay();this._writeQuad(e,o,t,r)}else{let t=n.readGeometryForDisplay();t&&t.forEachVertex((t,n)=>{this._writeQuad(e,o,t,n)})}e.recordEnd()}_writePlacedMarkers(i,a){let o=t.fromFeatureSetReaderCIM(a)?.clone();if(!o)return;let s=r.getPlacement(o,-1,this.evaluatedMeshParams.placement,e,i.id);if(!s)return;let c=a.getDisplayId(),l=s.next(),u=null;for(;l!=null;){let e=l.tx,t=-l.ty;if(Math.abs(e)>n||Math.abs(t)>n){l=s.next();continue}let r=-l.getAngle();i.recordBounds(e,t,64,64),this.shift?u&&this._writeQuad(i,c,u[0],u[1],void 0,r):this._writeQuad(i,c,e,t,void 0,r),u=[e,t],l=s.next()}}_writeParticles(e,t,n){let r=t.getDisplayId(),{placement:i}=this.evaluatedMeshParams,o=i?.placePerPart??!1,{lineData:s,totalDistance:c}=b(n,o);if(s.length===0)return;let l=this.evaluatedMeshParams.baseSize,u={x:-l,y:-l,width:a+2*l,height:a+2*l},d=s.flatMap(e=>{let t=o?e[e.length-1].attributes[0]:c;return S(v(e,u),t)});for(let{particles:t,lineLength:n}of d){let a=i=>{for(let a of t){let{a:t,b:o}=a;this._writeQuad(e,r,t.position[0],t.position[1],[t.distance-i,o.position[0],o.position[1],o.distance-i],this.evaluatedMeshParams.angleToLine?Math.atan2(t.direction[1],t.direction[0]):0,n,!0)}};if(!i||`placementTemplate`in i||i.type===`CIMMarkerPlacementOnVertices`){let e;if(i&&i.type!==`CIMMarkerPlacementOnVertices`)e=i.placementTemplate;else{e=[0];for(let n of t){let{a:t,b:r}=n,i=t.position[0]-r.position[0],a=t.position[1]-r.position[1],o=Math.sqrt(i*i+a*a);e.push(o)}}let r=-1*n;for(;r<2*n;)for(let t of e)r+=t,a(r)}else i.type===`CIMMarkerPlacementAtExtremities`?i.extremityPlacement===`JustBegin`?a(1):i.extremityPlacement===`JustEnd`?(a(n-1),a(-1)):i.extremityPlacement===`Both`&&(a(1),a(n-1)):i.type===`CIMMarkerPlacementOnLine`&&(i.relativeTo===`LineBeginning`?a(1):i.relativeTo===`LineEnd`?(a(n-1),a(-1)):i.relativeTo===`LineMiddle`&&a(n/2))}}_writeQuad(e,t,n,r,a,o=0,s=0,c=!1){let{rect:l}=this.evaluatedMeshParams.sprite,u=l.x+i,d=l.y+i,f=l.x+l.width-i,p=l.y+l.height-i,m=e.vertexCount();c||e.recordBounds(n,r,64,64);let h={texXmin:u,texYmin:d,texXmax:f,texYmax:p,value1Position2Value2:a,angle:o,lineLength:s};for(let i=0;i<4;i++)this._writeVertex(e,t,n,r,h);e.indexEnsureSize(6),e.indexWrite(m),e.indexWrite(m+1),e.indexWrite(m+2),e.indexWrite(m+1),e.indexWrite(m+3),e.indexWrite(m+2)}}function S(e,t){let n=[];for(let r of e){let e=[],{x:i,y:a}=r[0],o=r[0].attributes[0];for(let t=1;t<r.length;t++){let{x:n,y:s}=r[t],c=r[t].attributes[0],l=n-i,u=s-a,d=Math.sqrt(l*l+u*u);if(d>0)l/=d,u/=d;else continue;e.push({a:{position:[i,a],distance:o,direction:[l,u]},b:{position:[n,s],distance:c,direction:[l,u]}}),i=n,a=s,o=c}n.push({particles:e,lineLength:t})}return n}class C extends x{constructor(){super(...arguments),this.shift=!1}}class w extends x{constructor(){super(...arguments),this.shift=!0}}export{C as AnimatedMarkerMeshWriter,w as AnimatedMarkerShiftMeshWriter,b as convertToLineData};
2
+ import{onePointInPixels as e}from"../../../../../../../core/screenUtils.js";import{GeometryCursor as t}from"../../../../../../../geometry/GeometryCursor.js";import{getUprightAngle as n}from"../../../../../../../symbols/cim/CIMCursor.js";import{maxTileCoordValue as r}from"../../../../../../../symbols/cim/constants.js";import{CIMMarkerPlacementHelper as i}from"../../../../../../../symbols/cim/placements/CIMMarkerPlacementHelper.js";import{spritePadding as a,tileSize as o}from"../../../definitions.js";import{AAnimatedMeshWriter as s}from"./AnimatedMeshWriter.js";import{angle as c,sizing as l,animationPointerAndBaseSizeAndReferenceSize as u,uv as d,offset as f,pos as p,bitset as m,id as h,lineLength as g,value1Position2Value2 as _,zoomRange as v}from"./attributes.js";import{clipWithVertexInterpolation as y}from"./clipping.js";import{createComputedAnimatedMeshParams as b}from"./ComputedAnimatedParams.js";function x(e,t){let n=[],r=0,i=0;for(;e.nextPath();){i=t?0:r,e.nextPoint();let{x:a,y:o}=e,s=[{x:a,y:o,attributes:[i]}];for(;e.nextPoint();){let{x:t,y:n}=e,r=t-a,c=n-o,l=Math.sqrt(r*r+c*c);i+=l,s.push({x:t,y:n,attributes:[i]}),a=t,o=n}s.length>1&&n.push(s),r=i}return{lineData:n,totalDistance:r}}class S extends s{get vertexSpec(){return{createComputedParams:b,optionalAttributes:{zoomRange:v,value1Position2Value2:_,lineLength:g},attributes:{id:h,bitset:m,pos:p,offset:f.marker,uv:d.marker,animationPointerAndBaseSizeAndReferenceSize:u,sizing:l,angle:c}}}_write(e,{target:n,effect:r}){let i=r?.geometry,{textureBinding:a}=this.evaluatedMeshParams.sprite;e.recordStart(this.instanceId,this.attributeLayout,a);let o=n.getDisplayId();if(this.shift&&n.geometryType===`esriGeometryPolyline`){if(!i){let r=t.fromFeatureSetReaderCIM(n);r&&this._writeParticles(e,n,r)}}else if(this.evaluatedMeshParams.placement!=null)this._writePlacedMarkers(e,n);else if(n.geometryType===`esriGeometryPolygon`){let t=n.readCentroidForDisplay();if(!t)return;let[r,i]=t.coords;this._writeQuad(e,o,r,i)}else if(n.geometryType===`esriGeometryPoint`){let t=n.readXForDisplay(),r=n.readYForDisplay();this._writeQuad(e,o,t,r)}else{let t=n.readGeometryForDisplay();t&&t.forEachVertex((t,n)=>{this._writeQuad(e,o,t,n)})}e.recordEnd()}_writePlacedMarkers(n,a){let o=t.fromFeatureSetReaderCIM(a)?.clone();if(!o)return;let s=i.getPlacement(o,-1,this.evaluatedMeshParams.placement,e,n.id);if(!s)return;let c=a.getDisplayId(),l=s.next(),u=null;for(;l!=null;){let e=l.tx,t=-l.ty;if(Math.abs(e)>r||Math.abs(t)>r){l=s.next();continue}let i=-l.getAngle();n.recordBounds(e,t,64,64),this.shift?u&&this._writeQuad(n,c,u[0],u[1],void 0,i):this._writeQuad(n,c,e,t,void 0,i),u=[e,t],l=s.next()}}_writeParticles(e,t,r){let i=t.getDisplayId(),{placement:a}=this.evaluatedMeshParams,s=a?.placePerPart??!1,c=this.evaluatedMeshParams.angleToLine&&a!=null&&`keepUpright`in a&&a.keepUpright,{lineData:l,totalDistance:u}=x(r,s);if(l.length===0)return;let d=this.evaluatedMeshParams.baseSize,f={x:-d,y:-d,width:o+2*d,height:o+2*d},p=l.flatMap(e=>{let t=s?e[e.length-1].attributes[0]:u;return C(y(e,f),t)});for(let{particles:t,lineLength:r}of p){let o=a=>{for(let o of t){let{a:t,b:s}=o,l=this.evaluatedMeshParams.angleToLine?Math.atan2(t.direction[1],t.direction[0]):0,u=c?n(l):null;this._writeQuad(e,i,t.position[0],t.position[1],[t.distance-a,s.position[0],s.position[1],s.distance-a],u??l,r,!0)}};if(!a||`placementTemplate`in a||a.type===`CIMMarkerPlacementOnVertices`){let e;if(a&&a.type!==`CIMMarkerPlacementOnVertices`)e=a.placementTemplate;else{e=[0];for(let n of t){let{a:t,b:r}=n,i=t.position[0]-r.position[0],a=t.position[1]-r.position[1],o=Math.sqrt(i*i+a*a);e.push(o)}}let n=-1*r;for(;n<2*r;)for(let t of e)n+=t,o(n)}else a.type===`CIMMarkerPlacementAtExtremities`?a.extremityPlacement===`JustBegin`?o(1):a.extremityPlacement===`JustEnd`?(o(r-1),o(-1)):a.extremityPlacement===`Both`&&(o(1),o(r-1)):a.type===`CIMMarkerPlacementOnLine`&&(a.relativeTo===`LineBeginning`?o(1):a.relativeTo===`LineEnd`?(o(r-1),o(-1)):a.relativeTo===`LineMiddle`&&o(r/2))}}_writeQuad(e,t,n,r,i,o=0,s=0,c=!1){let{rect:l}=this.evaluatedMeshParams.sprite,u=l.x+a,d=l.y+a,f=l.x+l.width-a,p=l.y+l.height-a,m=e.vertexCount();c||e.recordBounds(n,r,64,64);let h={texXmin:u,texYmin:d,texXmax:f,texYmax:p,value1Position2Value2:i,angle:o,lineLength:s};for(let i=0;i<4;i++)this._writeVertex(e,t,n,r,h);e.indexEnsureSize(6),e.indexWrite(m),e.indexWrite(m+1),e.indexWrite(m+2),e.indexWrite(m+1),e.indexWrite(m+3),e.indexWrite(m+2)}}function C(e,t){let n=[];for(let r of e){let e=[],{x:i,y:a}=r[0],o=r[0].attributes[0];for(let t=1;t<r.length;t++){let{x:n,y:s}=r[t],c=r[t].attributes[0],l=n-i,u=s-a,d=Math.sqrt(l*l+u*u);if(d>0)l/=d,u/=d;else continue;e.push({a:{position:[i,a],distance:o,direction:[l,u]},b:{position:[n,s],distance:c,direction:[l,u]}}),i=n,a=s,o=c}n.push({particles:e,lineLength:t})}return n}class w extends S{constructor(){super(...arguments),this.shift=!1}}class T extends S{constructor(){super(...arguments),this.shift=!0}}export{w as AnimatedMarkerMeshWriter,T as AnimatedMarkerShiftMeshWriter,x as convertToLineData};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import{i1616to32 as e,i16 as t}from"../../../number.js";import{AlignedVertexSpec as n}from"./AlignedVertexSpec.js";import{unpackDataView as r,packDataView as i}from"./dataViewUtils.js";import{bitsetGenericLabelInstance as a}from"../shaders/constants.js";class o{static fromVertexSpec(e,t){let r=n.fromVertexSpec(e,t);return new o(r)}constructor(e){this._spec=e,this.collisionVisibility=!1,this._packed=new Uint8Array(this._spec.stride*this._spec.packVertexCount),this._packedU32View=new Uint32Array(this._packed.buffer),this._dataView=new DataView(this._packed.buffer)}get attributeLayout(){return this._spec.attributeLayout}get stride(){return this._spec.stride}writeVertex(e,t,n,i,o,s){for(let e=0;e<this._spec.packVertexCount;e++){let c=e*this._spec.stride;this._packPosition(n,i,c),this._packId(t,c);let l=this._spec.bitset;if(s){if(l.packTessellation){let e=l.packTessellation(s,o,n,i);this._pack(e,l,c)}for(let e of this._spec.standardAttributes)if(e.packTessellation!=null){let t=e.packTessellation(s,o,n,i);this._pack(t,e,c)}else if(e.packAlternating?.packTessellation){let t=e.packAlternating.packTessellation(s,o,n,i);for(let n=0;n<this._spec.packVertexCount;n++){let r=t[n];this._pack(r,e,n*this._spec.stride)}}}let u=r(this._dataView,l,c),d=1<<a,f=u;this.collisionVisibility?f|=d:f&=~d,this._pack(f,l,c)}e.vertexWriteRegion(this._packedU32View)}pack(e,t){for(let n of this._spec.standardAttributes)if(n.pack&&typeof n.pack!=`string`){let r=n.pack(e,t);for(let e=0;e<this._spec.packVertexCount;e++)this._pack(r,n,e*this._spec.stride)}else if(n.packAlternating?.pack){let r=n.packAlternating.pack(e,t);for(let e=0;e<this._spec.packVertexCount;e++){let t=r[e];this._pack(t,n,e*this._spec.stride)}}}_packPosition(n,r,i){let{offset:a}=this._spec.position,o=this._spec.position.packPrecisionFactor??1,s=t(n*o),c=t(r*o),l=e(s,c);this._dataView.setUint32(i+a,l,!0)}_packId(e,t){let n=e*(this._spec.id.packPrecisionFactor??1),r=this._dataView.getUint32(t+this._spec.id.offset,!0)&4278190080;this._dataView.setUint32(t+this._spec.id.offset,n|r,!0)}_pack(e,t,n){i(this._dataView,e,t,n)}}export{o as MeshWriterVertexPack};
2
+ import{i1616to32 as e,i16 as t}from"../../../number.js";import{AlignedVertexSpec as n}from"./AlignedVertexSpec.js";import{unpackDataView as r,packDataView as i}from"./dataViewUtils.js";import{bitsetGenericLabelInstance as a}from"../shaders/constants.js";class o{static fromVertexSpec(e,t){let r=n.fromVertexSpec(e,t);return new o(r)}constructor(e){this._spec=e,this.collisionVisibility=!1,this._packed=new Uint8Array(this._spec.stride*this._spec.packVertexCount),this._packedU32View=new Uint32Array(this._packed.buffer),this._dataView=new DataView(this._packed.buffer)}get attributeLayout(){return this._spec.attributeLayout}get stride(){return this._spec.stride}writeVertex(e,t,n,i,o,s){for(let e=0;e<this._spec.packVertexCount;e++){let c=e*this._spec.stride;this._packPosition(n,i,c),this._packId(this.collisionVisibility?0:t,c);let l=this._spec.bitset;if(s){if(l.packTessellation){let e=l.packTessellation(s,o,n,i);this._pack(e,l,c)}for(let e of this._spec.standardAttributes)if(e.packTessellation!=null){let t=e.packTessellation(s,o,n,i);this._pack(t,e,c)}else if(e.packAlternating?.packTessellation){let t=e.packAlternating.packTessellation(s,o,n,i);for(let n=0;n<this._spec.packVertexCount;n++){let r=t[n];this._pack(r,e,n*this._spec.stride)}}}let u=r(this._dataView,l,c),d=1<<a,f=u;this.collisionVisibility?f|=d:f&=~d,this._pack(f,l,c)}e.vertexWriteRegion(this._packedU32View)}pack(e,t){for(let n of this._spec.standardAttributes)if(n.pack&&typeof n.pack!=`string`){let r=n.pack(e,t);for(let e=0;e<this._spec.packVertexCount;e++)this._pack(r,n,e*this._spec.stride)}else if(n.packAlternating?.pack){let r=n.packAlternating.pack(e,t);for(let e=0;e<this._spec.packVertexCount;e++){let t=r[e];this._pack(t,n,e*this._spec.stride)}}}_packPosition(n,r,i){let{offset:a}=this._spec.position,o=this._spec.position.packPrecisionFactor??1,s=t(n*o),c=t(r*o),l=e(s,c);this._dataView.setUint32(i+a,l,!0)}_packId(e,t){let n=e*(this._spec.id.packPrecisionFactor??1),r=this._dataView.getUint32(t+this._spec.id.offset,!0)&4278190080;this._dataView.setUint32(t+this._spec.id.offset,n|r,!0)}_pack(e,t,n){i(this._dataView,e,t,n)}}export{o as MeshWriterVertexPack};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import"../../../webgl/BufferObject.js";import"../../../webgl/FramebufferObject.js";import"../../../webgl/Program.js";import"../../../../core/has.js";import"../../../webgl/Renderbuffer.js";import e from"../../../webgl/Texture.js";import"../../../../core/Logger.js";import"../../../webgl/enums.js";import"../../../webgl/Util.js";import{TextureDescriptor as t}from"../../../webgl/TextureDescriptor.js";function n(n,r,i){let a=new t(r.width,r.height);return a.dataType=r.dataType,r.depth&&(a.depth=r.depth),r.flipped&&(a.flipped=r.flipped),r.hasMipmap&&(a.hasMipmap=r.hasMipmap),a.internalFormat=r.internalFormat,r.isImmutable&&(a.isImmutable=r.isImmutable),r.isOpaque&&(a.isOpaque=r.isOpaque),r.maxAnisotropy&&(a.maxAnisotropy=r.maxAnisotropy),a.pixelFormat=r.pixelFormat,r.preMultiplyAlpha&&(a.preMultiplyAlpha=r.preMultiplyAlpha),r.samplingMode&&(a.samplingMode=r.samplingMode),r.target&&(a.target=r.target),r.unpackAlignment&&(a.unpackAlignment=r.unpackAlignment),r.wrapMode&&(a.wrapMode=r.wrapMode),new e(n,a,i)}export{n as createTexture};
2
+ import"../../../webgl/BufferObject.js";import"../../../webgl/FramebufferObject.js";import"../../../webgl/Program.js";import"../../../../core/has.js";import"../../../webgl/Renderbuffer.js";import e from"../../../webgl/Texture.js";import"../../../../core/Logger.js";import"../../../../core/memoryEstimations.js";import"../../../webgl/enums.js";import"../../../webgl/Util.js";import{TextureDescriptor as t}from"../../../webgl/TextureDescriptor.js";function n(n,r,i){let a=new t(r.width,r.height);return a.dataType=r.dataType,r.depth&&(a.depth=r.depth),r.flipped&&(a.flipped=r.flipped),r.hasMipmap&&(a.hasMipmap=r.hasMipmap),a.internalFormat=r.internalFormat,r.isImmutable&&(a.isImmutable=r.isImmutable),r.isOpaque&&(a.isOpaque=r.isOpaque),r.maxAnisotropy&&(a.maxAnisotropy=r.maxAnisotropy),a.pixelFormat=r.pixelFormat,r.preMultiplyAlpha&&(a.preMultiplyAlpha=r.preMultiplyAlpha),r.samplingMode&&(a.samplingMode=r.samplingMode),r.target&&(a.target=r.target),r.unpackAlignment&&(a.unpackAlignment=r.unpackAlignment),r.wrapMode&&(a.wrapMode=r.wrapMode),new e(n,a,i)}export{n as createTexture};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import t from"../../../core/Logger.js";import{isAbortError as n}from"../../../core/promiseUtils.js";import{watch as r}from"../../../core/reactiveUtils.js";import{property as i,subclass as a}from"../../../core/accessorSupport/decorators.js";import{LayerView2D as o}from"./LayerView2D.js";import s from"./imagery/ImageryTileView2D.js";import c from"../../layers/ImageryTileLayerView.js";import{RefreshableLayerView as l}from"../../layers/RefreshableLayerView.js";let u=class extends l(o(c)){constructor(){super(...arguments),this.subview=null}get displayParameters(){let{layer:e}=this,t=this._get(`displayParameters`);return e.visible?{clipToNeatline:e.clippedToNeatline}:t}update(e){this.subview?.update(e),this.notifyChange(`updating`)}isUpdating(){return!this.subview||this.subview.updating}attach(){this.layer.increaseRasterJobHandlerUsage();let e=new s({layer:this.layer,layerView:this,scheduler:this.scheduler});e.useWebGLForProcessing=!0,e.useProgressiveUpdate=!0,this._attachSubview(e),this.subview=e,this.requestUpdate(),this.addAttachHandles([r(()=>this.layer.clippedToNeatline,()=>{let e=this.subview.redrawOrRefetch({refetch:!0,reprocess:!1}).catch(e=>{n(e)||t.getLogger(this).error(e)});this._updatingHandles.addPromise(e)})])}detach(){this.layer.decreaseRasterJobHandlerUsage(),this._detachSubview(this.subview),this.subview?.destroy(),this.subview=null}viewChange(){this.requestUpdate()}moveEnd(){this.subview.moveEnd()}doRefresh(){return this.subview?this.subview.doRefresh():Promise.resolve()}_attachSubview(e){e&&!e.attached&&(e.attach(),e.attached=!0,this.container.addChildAt(e.container,0))}_detachSubview(e){e?.attached&&(this.container.removeChild(e.container),e.detach(),e.attached=!1)}};e([i()],u.prototype,`subview`,void 0),e([i({readOnly:!0})],u.prototype,`displayParameters`,null),u=e([a(`esri.views.2d.layers.GeospatialPDFLayerView2D`)],u);const d=u;export{d as default};
2
+ import{__decorate as e}from"tslib";import t from"../../../Graphic.js";import n from"../../../core/Collection.js";import{makeHandle as r}from"../../../core/handleUtils.js";import i from"../../../core/Logger.js";import{destroyMaybe as a}from"../../../core/maybe.js";import{isAbortError as o}from"../../../core/promiseUtils.js";import{watch as s,whenOnce as c}from"../../../core/reactiveUtils.js";import{property as l,subclass as u}from"../../../core/accessorSupport/decorators.js";import{LAYERVIEW_2D_SYMBOL as d}from"../../../layers/geospatialPDF/CIM2DLayerview.js";import"../engine/Stage.js";import"../../../Color.js";import"../../../core/libs/gl-matrix-2/factories/vec4f32.js";import"../../../geometry/Point.js";import"../../../chunks/pe.js";import"../../../core/has.js";import"../../../core/units.js";import"../../../geometry/ellipsoidUtils.js";import"../../../geometry/support/spatialReferenceUtils.js";import"../../../core/RandomLCG.js";import"../../../core/Accessor.js";import"../engine/transitions/FadeTransition.js";import"../../webgl/BufferObject.js";import"../../webgl/FramebufferObject.js";import"../../webgl/Program.js";import"../../webgl/Renderbuffer.js";import"../../webgl/Texture.js";import"../../../core/memoryEstimations.js";import"../../webgl/enums.js";import"../../webgl/Util.js";import"../engine/webgl/meshing/definitions.js";import"../engine/webgl/shaderGraph/techniques/shaders/VideoScreenShader.js";import"../LabelManager.js";import f from"./graphics/GraphicsView2D.js";import p from"./graphics/GraphicContainer.js";import"../navigation/MapViewNavigation.js";import"../../../request.js";import"../../../core/asyncUtils.js";import"../../../core/support/UpdatingHandles.js";import"../../../core/mathUtils.js";import"../../../core/urlUtils.js";import"../engine/webgl/shaderGraph/techniques/shaders/MagnifierShader.js";import"../../../core/libs/gl-matrix-2/factories/vec2f32.js";import"../../../geometry/Extent.js";import"../../../geometry/Geometry.js";import"../../../geometry/Multipoint.js";import"../../../geometry/Polygon.js";import"../../../geometry/Polyline.js";import"../../../geometry/SpatialReference.js";import"../../../geometry/spatialReferenceEllipsoidUtils.js";import"../../../geometry/operators/support/GeographicTransformation.js";import"../../../geometry/projection/projectors.js";import"../../../geometry/support/normalizeUtils.js";import"../engine/webgl/shaderGraph/techniques/shaders/GridShader.js";import"../../../geometry/support/geodesicConstants.js";import"../../../geometry/support/Ellipsoid.js";import{LayerView2D as m}from"./LayerView2D.js";import h from"./imagery/ImageryTileView2D.js";import g from"../../layers/ImageryTileLayerView.js";import{RefreshableLayerView as _}from"../../layers/RefreshableLayerView.js";let v=class extends _(m(g)){constructor(){super(...arguments),this._graphics=new n,this._graphicsView=null,this.subview=null}get displayParameters(){let{layer:e}=this,t=this._get(`displayParameters`);return e.visible?{clipToNeatline:e.clippedToNeatline}:t}update(e){this.subview?.update(e),this._graphicsView?.processUpdate(e),this.notifyChange(`updating`)}isUpdating(){return!this.subview||this.subview.updating}attach(){this.layer.increaseRasterJobHandlerUsage();let e=new h({layer:this.layer,layerView:this,scheduler:this.scheduler});e.useWebGLForProcessing=!0,e.useProgressiveUpdate=!0,this.subview=e;let t=new n,a=new p(this.view.featuresTilingScheme),l=new f({requestUpdateCallback:()=>this.requestUpdate(),view:this.view,graphics:t,container:a});this._graphicsView=l;let u=new AbortController;y(this.layer,t,this.view.spatialReference);let d=r(()=>{u.abort(),this.container.removeChild(l.container),this._graphicsView===l&&(this._graphicsView=null),l.destroy(),a.destroy(),t.destroy()});this.addAttachHandles([d,s(()=>this.layer.clippedToNeatline,()=>{let t=e.redrawOrRefetch({refetch:!0,reprocess:!1}).catch(e=>{o(e)||i.getLogger(this).error(e)});this._updatingHandles.addPromise(t)})]),this._attachSubview(e),this.container.addChild(a),c(()=>!e.updating&&e.container.children.some(e=>e.bitmap?.rawPixelData?.pixelBlock!=null),u.signal).then(()=>d.remove()).catch(e=>{o(e)||i.getLogger(this).error(e)}),this.requestUpdate()}detach(){this._detachSubview(this.subview),this.subview?.destroy(),this.subview=null,this._graphicsView&&=(this.container.removeChild(this._graphicsView.container),a(this._graphicsView)??null),this._graphics.removeAll(),this.layer.decreaseRasterJobHandlerUsage()}viewChange(){this._graphicsView?.viewChange(),this.requestUpdate()}moveEnd(){this.subview.moveEnd()}doRefresh(){return this.subview?this.subview.doRefresh():Promise.resolve()}_attachSubview(e){e&&!e.attached&&(e.attach(),e.attached=!0,this.container.addChildAt(e.container,0))}_detachSubview(e){e?.attached&&(this.container.removeChild(e.container),e.detach(),e.attached=!1)}};e([l()],v.prototype,`subview`,void 0),e([l({readOnly:!0})],v.prototype,`displayParameters`,null),v=e([u(`esri.views.2d.layers.GeospatialPDFLayerView2D`)],v);function y(e,n,r){let i=e.createNeatline(r),a=new t({geometry:i,symbol:d});n.add(a)}const b=v;export{b as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import"../../../Graphic.js";import t from"../../../core/Collection.js";import n from"../../../core/Error.js";import"../../../core/has.js";import{some as r}from"../../../core/iteratorUtils.js";import i from"../../../core/Logger.js";import{getOrCreateMapValue as a}from"../../../core/MapUtils.js";import{isAbortError as o}from"../../../core/promiseUtils.js";import s from"../../../core/ReactiveMap.js";import{watch as c,syncAndInitial as l,on as u}from"../../../core/reactiveUtils.js";import{isScreenRect as d,isScreenPolygon as f}from"../../../core/screenUtils.js";import{property as p,subclass as m}from"../../../core/accessorSupport/decorators.js";import h from"../../../geometry/Extent.js";import{create as g}from"../../../geometry/support/aaBoundingRect.js";import{ringsContainsCoords as _}from"../../../geometry/support/contains.js";import{targetIntersectsPolygon as v,extentIntersectsPolygon as y}from"../../../geometry/support/intersectsBase.js";import{MediaElementView as b}from"../../../layers/support/MediaElementView.js";import"../../../renderers/SimpleRenderer.js";import"../../../symbols/SimpleFillSymbol.js";import"../engine/Stage.js";import"../../../Color.js";import"../../../core/libs/gl-matrix-2/factories/vec4f32.js";import"../../../geometry/Point.js";import"../../../chunks/pe.js";import"../../../core/units.js";import"../../../geometry/ellipsoidUtils.js";import"../../../geometry/support/spatialReferenceUtils.js";import"../../../core/RandomLCG.js";import"../../../core/Accessor.js";import"../engine/transitions/FadeTransition.js";import"../../webgl/BufferObject.js";import"../../webgl/FramebufferObject.js";import"../../webgl/Program.js";import"../../webgl/Renderbuffer.js";import"../../webgl/Texture.js";import"../../webgl/enums.js";import"../../webgl/Util.js";import"../engine/webgl/meshing/definitions.js";import"../engine/webgl/shaderGraph/techniques/shaders/VideoScreenShader.js";import"../LabelManager.js";import"./graphics/GraphicsView2D.js";import"../../../layers/effects/EffectView.js";import"../engine/webgl/shaderGraph/techniques/clip/ClipTechnique.js";import"../engine/webgl/shaderGraph/techniques/shaders/TileInfo.js";import"../engine/webgl/AFeatureTile.js";import"../engine/webgl/DisplayEntity.js";import"../../../core/libs/gl-matrix-2/factories/vec2f32.js";import"../engine/webgl/number.js";import"../engine/webgl/shaderGraph/techniques/featureTechniqueUtils.js";import"../engine/webgl/shaderGraph/techniques/shaders/TileDebugInfoShader.js";import"../engine/webgl/shaderGraph/techniques/shaders/TileStencilShader.js";import"../../webgl/UniformBufferLayout.js";import"../engine/webgl/shaderGraph/techniques/TechniqueRegistry.js";import"../../../core/libs/gl-matrix-2/factories/vec3f32.js";import"../../../geometry/support/normalizeUtils.js";import"./support/util.js";import"../navigation/MapViewNavigation.js";import"../../../request.js";import"../../../core/asyncUtils.js";import"../../../core/support/UpdatingHandles.js";import"../../../core/mathUtils.js";import"../../../core/urlUtils.js";import"../engine/webgl/shaderGraph/techniques/shaders/MagnifierShader.js";import"../../../geometry/Geometry.js";import"../../../geometry/Multipoint.js";import"../../../geometry/Polygon.js";import"../../../geometry/Polyline.js";import"../../../geometry/SpatialReference.js";import"../../../geometry/spatialReferenceEllipsoidUtils.js";import"../../../geometry/operators/support/GeographicTransformation.js";import"../../../geometry/projection/projectors.js";import"../engine/webgl/shaderGraph/techniques/shaders/GridShader.js";import"../../../geometry/support/geodesicConstants.js";import"../../../geometry/support/Ellipsoid.js";import"../tiling/TileInfoView.js";import"../tiling/TileKey.js";import x from"../tiling/TileQueue.js";import S from"../tiling/TileStrategy.js";import C from"../engine/webgl/Overlay.js";import w from"../engine/webgl/OverlayContainer.js";import{LayerView2D as T}from"./LayerView2D.js";import{getMapPointsFromScreen as E}from"../support/hitTestUtils.js";import D from"../../layers/MediaLayerView.js";import{TaskPriority as O}from"../../support/Scheduler.js";let k=class extends T(D){constructor(){super(...arguments),this._overlayContainer=null,this._fetchQueue=null,this._tileStrategy=null,this._elementReferences=new s,this._debugGraphicsView=null,this._interaction=null,this.elements=new t}initialize(){this.addHandles([c(()=>[this.interactive,this.suspended],async()=>{if(this.interactive&&!this._interaction){let{MediaLayerInteraction:e}=await this._updatingHandles.addPromise(import(`./support/MediaLayerInteraction.js`));if(this.destroyed)return;this._interaction=new e({view:this.view,layer:this.layer}),this.selectedElement!==this._interaction.selectedElement&&(this._interaction.selectedElement=this.selectedElement),this.interactionOptions!==this._interaction.options&&(this._interaction.options=this.interactionOptions)}this._interaction&&(this._interaction.enabled=!this.suspended&&this.interactive)},l),c(()=>this.interactionOptions,e=>{this._interaction&&(this._interaction.options=e)},l),c(()=>this.selectedElement,e=>{this._interaction&&(this._interaction.selectedElement=e)},l)])}isUpdating(){return this._interaction?.updating===!0||r(this._elementReferences.values(),({overlay:e})=>!e.isReady)}attach(){this.addAttachHandles([u(()=>this.layer.effectiveSource,`refresh`,()=>{let e=this.layer.effectiveSource;if(e)for(let{elementView:{element:t}}of this._elementReferences.values())e.hasElement(t)||this._removeElementReference(t);this._tileStrategy.refresh(e=>this._updateTile(e)),this.requestUpdate()}),u(()=>this.layer.effectiveSource,`change`,({element:e})=>this._elementUpdateHandler(e))]),this._overlayContainer=new w,this.container.addChild(this._overlayContainer),this._fetchQueue=new x({tileInfoView:this.view.featuresTilingScheme,concurrency:10,process:(e,t)=>this._queryElements(e,t),scheduler:this.scheduler,priority:O.MAPVIEW_FETCH_QUEUE}),this._tileStrategy=new S({cachePolicy:`purge`,resampling:!0,acquireTile:e=>this._acquireTile(e),releaseTile:e=>this._releaseTile(e),tileInfoView:this.view.featuresTilingScheme}),this.requestUpdate()}detach(){this.elements.removeAll(),this._tileStrategy.destroy(),this._fetchQueue.destroy(),this._overlayContainer.removeAllChildren(),this.container.removeAllChildren(),this._elementReferences.clear(),this._debugGraphicsView?.destroy()}supportsSpatialReference(e){return!0}viewChange(){this.requestUpdate()}moveEnd(){this.requestUpdate()}update(e){this._tileStrategy.update(e),this._debugGraphicsView?.update(e)}async hitTest(e,t){let n=[],r=e.normalize(),i=[r.x,r.y],a=d(t),o=f(t),s=a||o;for(let{elementView:{normalizedCoords:r,element:a}}of this._elementReferences.values())if(s){let i=E(this.view,t).map(e=>[e.x,e.y]);r!=null&&v(i,r.rings)&&n.push({type:`media`,element:a,layer:this.layer,mapPoint:null,sourcePoint:a.toSource(e)})}else r!=null&&_(r.rings,i)&&n.push({type:`media`,element:a,layer:this.layer,mapPoint:e,sourcePoint:a.toSource(e)});return n.reverse()}canResume(){return this.layer.source!=null&&super.canResume()}async doRefresh(){this._fetchQueue.reset(),this._tileStrategy.refresh(e=>this._updateTile(e))}_acquireTile(e){let t=new N(e.clone());return this._updateTile(t),t}_updateTile(e){this._updatingHandles.consumePromise(this._fetchQueue.push(e.key).then(t=>{let[n,r]=e.setElements(t);this._referenceElements(e,n),this._dereferenceElements(e,r),this.requestUpdate()},e=>{o(e)||i.getLogger(this).error(e)}))}_releaseTile(e){this._fetchQueue.abort(e.key.id),e.elements&&this._dereferenceElements(e,e.elements),this.requestUpdate()}async _queryElements(e,t){let n=this.layer.effectiveSource;if(n==null)return[];this.view.featuresTilingScheme.getTileBounds(A,e,!0);let r=new h({xmin:A[0],ymin:A[1],xmax:A[2],ymax:A[3],spatialReference:this.view.spatialReference});return n.queryElements(r,t)}_referenceElements(e,t){if(this.layer.source!=null)for(let n of t)this._referenceElement(e,n)}_referenceElement(e,t){a(this._elementReferences,t.uid,()=>{let e=new b({element:t,spatialReference:this.view.spatialReference}),r=new C(e);return this._overlayContainer.addChild(r),this.elements.add(t),this._updatingHandles.consumePromise(t.load().catch(e=>{i.getLogger(`esri.views.2d.layers.MediaLayerView2D`).error(new n(`element-load-error`,`Element cannot be displayed`,{element:t,error:e}))})),{debugGraphic:null,elementView:e,overlay:r,tiles:new Set}}).tiles.add(e)}_dereferenceElements(e,t){for(let n of t)this._dereferenceElement(e,n)}_dereferenceElement(e,t){let n=this._elementReferences.get(t.uid);n&&(n.tiles.delete(e),n.tiles.size||this._removeElementReference(t))}_removeElementReference(e){let t=this._elementReferences.get(e.uid);t&&(this._overlayContainer.removeChild(t.overlay),t.overlay.destroy(),t.elementView.destroy(),this._elementReferences.delete(e.uid),this.elements.remove(e),this._debugGraphicsView?.graphics.remove(t.debugGraphic))}_elementUpdateHandler(e){if(!this.layer.effectiveSource?.hasElement(e))return;let t=this._elementReferences.get(e.uid);if(t){let n=t.elementView.normalizedCoords;if(n==null){this._removeElementReference(e);return}let r=[],i=[];for(let e of this._tileStrategy.tiles){let a=M(this.view.featuresTilingScheme,e,n);t.tiles.has(e)?a||i.push(e):a&&r.push(e)}for(let t of r)this._referenceElement(t,e);for(let t of i)this._dereferenceElement(t,e);t=this._elementReferences.get(e.uid),t?.debugGraphic&&(t.debugGraphic.geometry=t.elementView.normalizedCoords,this._debugGraphicsView.graphicUpdateHandler({graphic:t.debugGraphic,property:`geometry`}));return}let n=new b({element:e,spatialReference:this.view.spatialReference}).normalizedCoords;if(n!=null)for(let t of this._tileStrategy.tiles)M(this.view.featuresTilingScheme,t,n)&&this._referenceElement(t,e)}};e([p({readOnly:!0})],k.prototype,`elements`,void 0),k=e([m(`esri.views.2d.layers.MediaLayerView2D`)],k);const A=g(),j={xmin:0,ymin:0,xmax:0,ymax:0};function M(e,t,n){return e.getTileBounds(A,t.key,!0),j.xmin=A[0],j.ymin=A[1],j.xmax=A[2],j.ymax=A[3],y(j,n)}class N{constructor(e){this.key=e,this.elements=null,this.isReady=!1,this.visible=!0}setElements(e){let t=[],n=new Set(this.elements);this.elements=e;for(let r of e)n.has(r)?n.delete(r):t.push(r);return this.isReady=!0,[t,Array.from(n)]}destroy(){}}const P=k;export{P as default};
2
+ import{__decorate as e}from"tslib";import"../../../Graphic.js";import t from"../../../core/Collection.js";import n from"../../../core/Error.js";import"../../../core/has.js";import{some as r}from"../../../core/iteratorUtils.js";import i from"../../../core/Logger.js";import{getOrCreateMapValue as a}from"../../../core/MapUtils.js";import{isAbortError as o}from"../../../core/promiseUtils.js";import s from"../../../core/ReactiveMap.js";import{watch as c,syncAndInitial as l,on as u}from"../../../core/reactiveUtils.js";import{isScreenRect as d,isScreenPolygon as f}from"../../../core/screenUtils.js";import{property as p,subclass as m}from"../../../core/accessorSupport/decorators.js";import h from"../../../geometry/Extent.js";import{create as g}from"../../../geometry/support/aaBoundingRect.js";import{ringsContainsCoords as _}from"../../../geometry/support/contains.js";import{targetIntersectsPolygon as v,extentIntersectsPolygon as y}from"../../../geometry/support/intersectsBase.js";import{MediaElementView as b}from"../../../layers/support/MediaElementView.js";import"../../../renderers/SimpleRenderer.js";import"../../../symbols/SimpleFillSymbol.js";import"../engine/Stage.js";import"../../../Color.js";import"../../../core/libs/gl-matrix-2/factories/vec4f32.js";import"../../../geometry/Point.js";import"../../../chunks/pe.js";import"../../../core/units.js";import"../../../geometry/ellipsoidUtils.js";import"../../../geometry/support/spatialReferenceUtils.js";import"../../../core/RandomLCG.js";import"../../../core/Accessor.js";import"../engine/transitions/FadeTransition.js";import"../../webgl/BufferObject.js";import"../../webgl/FramebufferObject.js";import"../../webgl/Program.js";import"../../webgl/Renderbuffer.js";import"../../webgl/Texture.js";import"../../../core/memoryEstimations.js";import"../../webgl/enums.js";import"../../webgl/Util.js";import"../engine/webgl/meshing/definitions.js";import"../engine/webgl/shaderGraph/techniques/shaders/VideoScreenShader.js";import"../LabelManager.js";import"./graphics/GraphicsView2D.js";import"../../../layers/effects/EffectView.js";import"../engine/webgl/shaderGraph/techniques/clip/ClipTechnique.js";import"../engine/webgl/shaderGraph/techniques/shaders/TileInfo.js";import"../engine/webgl/AFeatureTile.js";import"../engine/webgl/DisplayEntity.js";import"../../../core/libs/gl-matrix-2/factories/vec2f32.js";import"../engine/webgl/number.js";import"../engine/webgl/shaderGraph/techniques/featureTechniqueUtils.js";import"../engine/webgl/shaderGraph/techniques/shaders/TileDebugInfoShader.js";import"../engine/webgl/shaderGraph/techniques/shaders/TileStencilShader.js";import"../../webgl/UniformBufferLayout.js";import"../engine/webgl/shaderGraph/techniques/TechniqueRegistry.js";import"../../../core/libs/gl-matrix-2/factories/vec3f32.js";import"../../../geometry/support/normalizeUtils.js";import"./support/util.js";import"../navigation/MapViewNavigation.js";import"../../../request.js";import"../../../core/asyncUtils.js";import"../../../core/support/UpdatingHandles.js";import"../../../core/mathUtils.js";import"../../../core/urlUtils.js";import"../engine/webgl/shaderGraph/techniques/shaders/MagnifierShader.js";import"../../../geometry/Geometry.js";import"../../../geometry/Multipoint.js";import"../../../geometry/Polygon.js";import"../../../geometry/Polyline.js";import"../../../geometry/SpatialReference.js";import"../../../geometry/spatialReferenceEllipsoidUtils.js";import"../../../geometry/operators/support/GeographicTransformation.js";import"../../../geometry/projection/projectors.js";import"../engine/webgl/shaderGraph/techniques/shaders/GridShader.js";import"../../../geometry/support/geodesicConstants.js";import"../../../geometry/support/Ellipsoid.js";import"../tiling/TileInfoView.js";import"../tiling/TileKey.js";import x from"../tiling/TileQueue.js";import S from"../tiling/TileStrategy.js";import C from"../engine/webgl/Overlay.js";import w from"../engine/webgl/OverlayContainer.js";import{LayerView2D as T}from"./LayerView2D.js";import{getMapPointsFromScreen as E}from"../support/hitTestUtils.js";import D from"../../layers/MediaLayerView.js";import{TaskPriority as O}from"../../support/Scheduler.js";let k=class extends T(D){constructor(){super(...arguments),this._overlayContainer=null,this._fetchQueue=null,this._tileStrategy=null,this._elementReferences=new s,this._debugGraphicsView=null,this._interaction=null,this.elements=new t}initialize(){this.addHandles([c(()=>[this.interactive,this.suspended],async()=>{if(this.interactive&&!this._interaction){let{MediaLayerInteraction:e}=await this._updatingHandles.addPromise(import(`./support/MediaLayerInteraction.js`));if(this.destroyed)return;this._interaction=new e({view:this.view,layer:this.layer}),this.selectedElement!==this._interaction.selectedElement&&(this._interaction.selectedElement=this.selectedElement),this.interactionOptions!==this._interaction.options&&(this._interaction.options=this.interactionOptions)}this._interaction&&(this._interaction.enabled=!this.suspended&&this.interactive)},l),c(()=>this.interactionOptions,e=>{this._interaction&&(this._interaction.options=e)},l),c(()=>this.selectedElement,e=>{this._interaction&&(this._interaction.selectedElement=e)},l)])}isUpdating(){return this._interaction?.updating===!0||r(this._elementReferences.values(),({overlay:e})=>!e.isReady)}attach(){this.addAttachHandles([u(()=>this.layer.effectiveSource,`refresh`,()=>{let e=this.layer.effectiveSource;if(e)for(let{elementView:{element:t}}of this._elementReferences.values())e.hasElement(t)||this._removeElementReference(t);this._tileStrategy.refresh(e=>this._updateTile(e)),this.requestUpdate()}),u(()=>this.layer.effectiveSource,`change`,({element:e})=>this._elementUpdateHandler(e))]),this._overlayContainer=new w,this.container.addChild(this._overlayContainer),this._fetchQueue=new x({tileInfoView:this.view.featuresTilingScheme,concurrency:10,process:(e,t)=>this._queryElements(e,t),scheduler:this.scheduler,priority:O.MAPVIEW_FETCH_QUEUE}),this._tileStrategy=new S({cachePolicy:`purge`,resampling:!0,acquireTile:e=>this._acquireTile(e),releaseTile:e=>this._releaseTile(e),tileInfoView:this.view.featuresTilingScheme}),this.requestUpdate()}detach(){this.elements.removeAll(),this._tileStrategy.destroy(),this._fetchQueue.destroy(),this._overlayContainer.removeAllChildren(),this.container.removeAllChildren(),this._elementReferences.clear(),this._debugGraphicsView?.destroy()}supportsSpatialReference(e){return!0}viewChange(){this.requestUpdate()}moveEnd(){this.requestUpdate()}update(e){this._tileStrategy.update(e),this._debugGraphicsView?.update(e)}async hitTest(e,t){let n=[],r=e.normalize(),i=[r.x,r.y],a=d(t),o=f(t),s=a||o;for(let{elementView:{normalizedCoords:r,element:a}}of this._elementReferences.values())if(s){let i=E(this.view,t).map(e=>[e.x,e.y]);r!=null&&v(i,r.rings)&&n.push({type:`media`,element:a,layer:this.layer,mapPoint:null,sourcePoint:a.toSource(e)})}else r!=null&&_(r.rings,i)&&n.push({type:`media`,element:a,layer:this.layer,mapPoint:e,sourcePoint:a.toSource(e)});return n.reverse()}canResume(){return this.layer.source!=null&&super.canResume()}async doRefresh(){this._fetchQueue.reset(),this._tileStrategy.refresh(e=>this._updateTile(e))}_acquireTile(e){let t=new N(e.clone());return this._updateTile(t),t}_updateTile(e){this._updatingHandles.consumePromise(this._fetchQueue.push(e.key).then(t=>{let[n,r]=e.setElements(t);this._referenceElements(e,n),this._dereferenceElements(e,r),this.requestUpdate()},e=>{o(e)||i.getLogger(this).error(e)}))}_releaseTile(e){this._fetchQueue.abort(e.key.id),e.elements&&this._dereferenceElements(e,e.elements),this.requestUpdate()}async _queryElements(e,t){let n=this.layer.effectiveSource;if(n==null)return[];this.view.featuresTilingScheme.getTileBounds(A,e,!0);let r=new h({xmin:A[0],ymin:A[1],xmax:A[2],ymax:A[3],spatialReference:this.view.spatialReference});return n.queryElements(r,t)}_referenceElements(e,t){if(this.layer.source!=null)for(let n of t)this._referenceElement(e,n)}_referenceElement(e,t){a(this._elementReferences,t.uid,()=>{let e=new b({element:t,spatialReference:this.view.spatialReference}),r=new C(e);return this._overlayContainer.addChild(r),this.elements.add(t),this._updatingHandles.consumePromise(t.load().catch(e=>{i.getLogger(`esri.views.2d.layers.MediaLayerView2D`).error(new n(`element-load-error`,`Element cannot be displayed`,{element:t,error:e}))})),{debugGraphic:null,elementView:e,overlay:r,tiles:new Set}}).tiles.add(e)}_dereferenceElements(e,t){for(let n of t)this._dereferenceElement(e,n)}_dereferenceElement(e,t){let n=this._elementReferences.get(t.uid);n&&(n.tiles.delete(e),n.tiles.size||this._removeElementReference(t))}_removeElementReference(e){let t=this._elementReferences.get(e.uid);t&&(this._overlayContainer.removeChild(t.overlay),t.overlay.destroy(),t.elementView.destroy(),this._elementReferences.delete(e.uid),this.elements.remove(e),this._debugGraphicsView?.graphics.remove(t.debugGraphic))}_elementUpdateHandler(e){if(!this.layer.effectiveSource?.hasElement(e))return;let t=this._elementReferences.get(e.uid);if(t){let n=t.elementView.normalizedCoords;if(n==null){this._removeElementReference(e);return}let r=[],i=[];for(let e of this._tileStrategy.tiles){let a=M(this.view.featuresTilingScheme,e,n);t.tiles.has(e)?a||i.push(e):a&&r.push(e)}for(let t of r)this._referenceElement(t,e);for(let t of i)this._dereferenceElement(t,e);t=this._elementReferences.get(e.uid),t?.debugGraphic&&(t.debugGraphic.geometry=t.elementView.normalizedCoords,this._debugGraphicsView.graphicUpdateHandler({graphic:t.debugGraphic,property:`geometry`}));return}let n=new b({element:e,spatialReference:this.view.spatialReference}).normalizedCoords;if(n!=null)for(let t of this._tileStrategy.tiles)M(this.view.featuresTilingScheme,t,n)&&this._referenceElement(t,e)}};e([p({readOnly:!0})],k.prototype,`elements`,void 0),k=e([m(`esri.views.2d.layers.MediaLayerView2D`)],k);const A=g(),j={xmin:0,ymin:0,xmax:0,ymax:0};function M(e,t,n){return e.getTileBounds(A,t.key,!0),j.xmin=A[0],j.ymin=A[1],j.xmax=A[2],j.ymax=A[3],y(j,n)}class N{constructor(e){this.key=e,this.elements=null,this.isReady=!1,this.visible=!0}setElements(e){let t=[],n=new Set(this.elements);this.elements=e;for(let r of e)n.has(r)?n.delete(r):t.push(r);return this.isReady=!0,[t,Array.from(n)]}destroy(){}}const P=k;export{P as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import{makeHandle as t}from"../../../core/handleUtils.js";import n from"../../../core/Logger.js";import{isAbortError as r,waitTick as i}from"../../../core/promiseUtils.js";import{property as a,subclass as o}from"../../../core/accessorSupport/decorators.js";import{equals as s}from"../../../geometry/support/spatialReferenceUtils.js";import c from"../../../layers/support/FeatureFilter.js";import{GraphicsCollection as l}from"../../../support/GraphicsCollection.js";import"../engine/Stage.js";import"../../../Color.js";import"../../../core/libs/gl-matrix-2/factories/vec4f32.js";import"../../../geometry/Point.js";import"../../../chunks/pe.js";import"../../../core/has.js";import"../../../core/units.js";import"../../../geometry/ellipsoidUtils.js";import"../../../core/RandomLCG.js";import"../../../core/Accessor.js";import"../engine/transitions/FadeTransition.js";import"../../webgl/BufferObject.js";import"../../webgl/FramebufferObject.js";import"../../webgl/Program.js";import"../../webgl/Renderbuffer.js";import"../../webgl/Texture.js";import"../../webgl/enums.js";import"../../webgl/Util.js";import"../engine/webgl/meshing/definitions.js";import"../engine/webgl/shaderGraph/techniques/shaders/VideoScreenShader.js";import"../LabelManager.js";import u from"./graphics/GraphicsView2D.js";import"../../../layers/effects/EffectView.js";import"../engine/webgl/shaderGraph/techniques/clip/ClipTechnique.js";import"../engine/webgl/shaderGraph/techniques/shaders/TileInfo.js";import"../engine/webgl/AFeatureTile.js";import"../engine/webgl/DisplayEntity.js";import"../../../geometry/Polygon.js";import"../../../core/libs/gl-matrix-2/factories/vec2f32.js";import"../engine/webgl/number.js";import"../engine/webgl/shaderGraph/techniques/featureTechniqueUtils.js";import"../engine/webgl/shaderGraph/techniques/shaders/TileDebugInfoShader.js";import"../engine/webgl/shaderGraph/techniques/shaders/TileStencilShader.js";import"../../webgl/UniformBufferLayout.js";import"../engine/webgl/shaderGraph/techniques/TechniqueRegistry.js";import"../../../core/libs/gl-matrix-2/factories/vec3f32.js";import"../../../geometry/support/normalizeUtils.js";import"./support/util.js";import"../navigation/MapViewNavigation.js";import"../../../request.js";import"../../../core/asyncUtils.js";import"../../../core/accessorSupport/watch.js";import"../../../core/accessorSupport/tracking/SimpleTrackingTarget.js";import"../../../core/support/UpdatingHandles.js";import"../../../core/mathUtils.js";import"../../../core/urlUtils.js";import"../engine/webgl/shaderGraph/techniques/shaders/MagnifierShader.js";import"../../../geometry/Extent.js";import"../../../geometry/Geometry.js";import"../../../geometry/Multipoint.js";import"../../../geometry/Polyline.js";import"../../../geometry/SpatialReference.js";import"../../../geometry/spatialReferenceEllipsoidUtils.js";import"../../../geometry/operators/support/GeographicTransformation.js";import"../../../geometry/projection/projectors.js";import"../engine/webgl/shaderGraph/techniques/shaders/GridShader.js";import"../../../geometry/support/geodesicConstants.js";import"../../../geometry/support/Ellipsoid.js";import{BitmapTileLayerView2D as d}from"./BitmapTileLayerView2D.js";import{LayerView2D as f}from"./LayerView2D.js";import p from"./graphics/HighlightGraphicContainer.js";import{createBlankImage as m,resampleImage as h}from"./support/imageUtils.js";import g from"../tiling/TileInfoView.js";import _ from"../tiling/TileKey.js";import v from"../tiling/TileQueue.js";import y from"../tiling/TileStrategy.js";import b from"../../layers/LayerView.js";import{RefreshableLayerView as x}from"../../layers/RefreshableLayerView.js";import{getHighlightGraphics as S}from"../../layers/support/highlightUtils.js";import{isMapServiceLayerView as C,MapServiceLayerViewHelper as w}from"../../layers/support/MapServiceLayerViewHelper.js";import{createQueryGeometry as T}from"../../support/drapedUtils.js";import{getHighlightName as E}from"../../support/highlightOptionsUtils.js";import{TaskPriority as D}from"../../support/Scheduler.js";const O=[0,0];let k=class extends x(d(f(b))){constructor(){super(...arguments),this._fetchQueue=null,this._highlightGraphics=new l,this._highlightView=null,this._popupHighlightHelper=null,this._tileStrategy=null,this.layer=null}get resampling(){return!(`resampling`in this.layer)||this.layer.resampling!==!1}get tilemapCache(){return`tilemapCache`in this.layer?this.layer.tilemapCache:null}update(e){this._fetchQueue.pause(),this._fetchQueue.state=e.state,this._tileStrategy.update(e),this._fetchQueue.resume(),this._highlightView?.processUpdate(e)}attach(){let e=`tileServers`in this.layer?this.layer.tileServers:null,t=this.tilemapCache;if(this._tileInfoView=new g(this.layer.tileInfo,this.layer.fullExtent,t?.effectiveMinLOD,t?.effectiveMaxLOD),this._fetchQueue=new v({tileInfoView:this._tileInfoView,concurrency:e&&e.length*10||10,process:(e,t)=>this.fetchTile(e,t),scheduler:this.scheduler,priority:D.MAPVIEW_FETCH_QUEUE}),this._tileStrategy=new y({cachePolicy:`keep`,resampling:this.resampling,acquireTile:e=>this.acquireTile(e),releaseTile:e=>this.releaseTile(e),tileInfoView:this._tileInfoView}),C(this,this.layer)){let e=this._highlightView=new u({view:this.view,graphics:this._highlightGraphics,requestUpdateCallback:()=>this.requestUpdate(),container:new p(this.view.featuresTilingScheme),defaultPointSymbolEnabled:!1});this.container.addChild(this._highlightView.container),this._popupHighlightHelper=new w({createFetchPopupFeaturesQueryGeometry:(e,t)=>T(e,t,this.view),highlightGraphics:this._highlightGraphics,highlightGraphicUpdated:({graphic:t,property:n})=>e.graphicUpdateHandler({graphic:t,property:n}),layerView:this,updatingHandles:this._updatingHandles})}this.requestUpdate(),this.addAttachHandles(this._updatingHandles.add(()=>this.resampling,()=>{this.doRefresh()})),super.attach()}detach(){super.detach(),this._tileStrategy.destroy(),this._fetchQueue.clear(),this.container.removeAllChildren(),this._popupHighlightHelper?.destroy(),this._highlightView?.destroy(),this._fetchQueue=this._tileStrategy=this._tileInfoView=this._popupHighlightHelper=null}async fetchPopupFeaturesAtTarget(e,t,n){return this._popupHighlightHelper?this._popupHighlightHelper.fetchPopupFeaturesAtTarget(t,n):[]}highlight(e,n){let r=S(e);if(r.length===0)return t();let i=E(n),a=this._addHighlightGraphics(r,i);return t(()=>!this.destroyed&&this._removeHighlightGraphics(r,a))}_onHighlightChange(){let e=this._getHighlightFilterGroups();this._highlightView?.setHighlightFilters(e)}_addHighlightGraphics(e,t){return this._highlightGraphics.addMany(e),this._addHighlightFilter(new c({objectIds:e.map(e=>e.uid)}),t)}_removeHighlightGraphics(e,t){this._highlightGraphics.removeMany(e),this._removeHighlight(t)}viewChange(){this.requestUpdate()}moveEnd(){this.requestUpdate()}supportsSpatialReference(e){return s(this.layer.tileInfo?.spatialReference,e)}async doRefresh(){this.attached&&(this.suspended?(this._tileStrategy.clear(),this.requestUpdate()):(this._fetchQueue.reset(),this._tileStrategy.refresh(e=>this._updatingHandles.addPromise(this._enqueueTileFetch(e)))))}acquireTile(e){let t=this._bitmapView.createTile(e),n=t.bitmap;return[n.x,n.y]=this._tileInfoView.getTileCoords(O,t.key),n.resolution=this._tileInfoView.getTileResolution(t.key),[n.width,n.height]=this._tileInfoView.size,this._updatingHandles.consumePromise(this._enqueueTileFetch(t)),this._bitmapView.addChild(t),this.requestUpdate(),t}releaseTile(e){this._fetchQueue.abort(e.key.id),this._bitmapView.removeChild(e),e.once(`detach`,()=>e.destroy()),this.requestUpdate()}async fetchTile(e,t={}){return this.tilemapCache?this._fetchTileWithTilemapCache(e,t):this._fetchTileWithoutTilemapCache(e,t)}async _fetchTileWithoutTilemapCache(e,t={}){let{signal:n,resamplingLevel:i=0}=t;try{return await this._fetchImage(e,n)}catch(n){if(r(n))throw n;if(!this.resampling)return m(this._tileInfoView.size);if(i<3){let n=this._tileInfoView.getTileParentId(e.id);if(n){let r=new _(n),a=await this._fetchTileWithoutTilemapCache(r,{...t,resamplingLevel:i+1});return h(this._tileInfoView,a,r,e)}}return m(this._tileInfoView.size)}}async _fetchTileWithTilemapCache(e,t={}){let n=this.tilemapCache,{signal:a,resamplingLevel:o=0}=t,s=new _(0,0,0,0),c,l=null;try{if(l=await n.fetchAvailabilityUpsample(e.level,e.row,e.col,s,{signal:a}),!this.resampling&&s.level!==e.level)return await i(t),m(this._tileInfoView.size);c=await this._fetchImage(s,a)}catch(n){if(r(n))throw n;if(this.resampling&&l===`unknown`&&o<3){let n=this._tileInfoView.getTileParentId(e.id);if(n){s.set(n);try{c=await this._fetchTileWithTilemapCache(s,{...t,resamplingLevel:o+1})}catch{}}}}return c?this.resampling?h(this._tileInfoView,c,s,e):c:m(this._tileInfoView.size)}async _enqueueTileFetch(e){if(!this._fetchQueue.has(e.key.id)){try{let t=await this._fetchQueue.push(e.key);e.bitmap.source=t,e.bitmap.width=this._tileInfoView.size[0],e.bitmap.height=this._tileInfoView.size[1],e.once(`attach`,()=>this.requestUpdate()),e.once(`isReady`,()=>this.requestUpdate())}catch(e){r(e)||n.getLogger(this).error(e)}this.requestUpdate()}}async _fetchImage(e,t){return this.layer.fetchImageBitmapTile(e.level,e.row,e.col,{signal:t}).then(({bitmap:e})=>e)}};e([a()],k.prototype,`resampling`,null),e([a()],k.prototype,`tilemapCache`,null),k=e([o(`esri.views.2d.layers.TileLayerView2D`)],k);const A=k;export{A as default};
2
+ import{__decorate as e}from"tslib";import{makeHandle as t}from"../../../core/handleUtils.js";import n from"../../../core/Logger.js";import{isAbortError as r,waitTick as i}from"../../../core/promiseUtils.js";import{property as a,subclass as o}from"../../../core/accessorSupport/decorators.js";import{equals as s}from"../../../geometry/support/spatialReferenceUtils.js";import c from"../../../layers/support/FeatureFilter.js";import{GraphicsCollection as l}from"../../../support/GraphicsCollection.js";import"../engine/Stage.js";import"../../../Color.js";import"../../../core/libs/gl-matrix-2/factories/vec4f32.js";import"../../../geometry/Point.js";import"../../../chunks/pe.js";import"../../../core/has.js";import"../../../core/units.js";import"../../../geometry/ellipsoidUtils.js";import"../../../core/RandomLCG.js";import"../../../core/Accessor.js";import"../engine/transitions/FadeTransition.js";import"../../webgl/BufferObject.js";import"../../webgl/FramebufferObject.js";import"../../webgl/Program.js";import"../../webgl/Renderbuffer.js";import"../../webgl/Texture.js";import"../../../core/memoryEstimations.js";import"../../webgl/enums.js";import"../../webgl/Util.js";import"../engine/webgl/meshing/definitions.js";import"../engine/webgl/shaderGraph/techniques/shaders/VideoScreenShader.js";import"../LabelManager.js";import u from"./graphics/GraphicsView2D.js";import"../../../layers/effects/EffectView.js";import"../engine/webgl/shaderGraph/techniques/clip/ClipTechnique.js";import"../engine/webgl/shaderGraph/techniques/shaders/TileInfo.js";import"../engine/webgl/AFeatureTile.js";import"../engine/webgl/DisplayEntity.js";import"../../../geometry/Polygon.js";import"../../../core/libs/gl-matrix-2/factories/vec2f32.js";import"../engine/webgl/number.js";import"../engine/webgl/shaderGraph/techniques/featureTechniqueUtils.js";import"../engine/webgl/shaderGraph/techniques/shaders/TileDebugInfoShader.js";import"../engine/webgl/shaderGraph/techniques/shaders/TileStencilShader.js";import"../../webgl/UniformBufferLayout.js";import"../engine/webgl/shaderGraph/techniques/TechniqueRegistry.js";import"../../../core/libs/gl-matrix-2/factories/vec3f32.js";import"../../../geometry/support/normalizeUtils.js";import"./support/util.js";import"../navigation/MapViewNavigation.js";import"../../../request.js";import"../../../core/asyncUtils.js";import"../../../core/accessorSupport/watch.js";import"../../../core/accessorSupport/tracking/SimpleTrackingTarget.js";import"../../../core/support/UpdatingHandles.js";import"../../../core/mathUtils.js";import"../../../core/urlUtils.js";import"../engine/webgl/shaderGraph/techniques/shaders/MagnifierShader.js";import"../../../geometry/Extent.js";import"../../../geometry/Geometry.js";import"../../../geometry/Multipoint.js";import"../../../geometry/Polyline.js";import"../../../geometry/SpatialReference.js";import"../../../geometry/spatialReferenceEllipsoidUtils.js";import"../../../geometry/operators/support/GeographicTransformation.js";import"../../../geometry/projection/projectors.js";import"../engine/webgl/shaderGraph/techniques/shaders/GridShader.js";import"../../../geometry/support/geodesicConstants.js";import"../../../geometry/support/Ellipsoid.js";import{BitmapTileLayerView2D as d}from"./BitmapTileLayerView2D.js";import{LayerView2D as f}from"./LayerView2D.js";import p from"./graphics/HighlightGraphicContainer.js";import{createBlankImage as m,resampleImage as h}from"./support/imageUtils.js";import g from"../tiling/TileInfoView.js";import _ from"../tiling/TileKey.js";import v from"../tiling/TileQueue.js";import y from"../tiling/TileStrategy.js";import b from"../../layers/LayerView.js";import{RefreshableLayerView as x}from"../../layers/RefreshableLayerView.js";import{getHighlightGraphics as S}from"../../layers/support/highlightUtils.js";import{isMapServiceLayerView as C,MapServiceLayerViewHelper as w}from"../../layers/support/MapServiceLayerViewHelper.js";import{createQueryGeometry as T}from"../../support/drapedUtils.js";import{getHighlightName as E}from"../../support/highlightOptionsUtils.js";import{TaskPriority as D}from"../../support/Scheduler.js";const O=[0,0];let k=class extends x(d(f(b))){constructor(){super(...arguments),this._fetchQueue=null,this._highlightGraphics=new l,this._highlightView=null,this._popupHighlightHelper=null,this._tileStrategy=null,this.layer=null}get resampling(){return!(`resampling`in this.layer)||this.layer.resampling!==!1}get tilemapCache(){return`tilemapCache`in this.layer?this.layer.tilemapCache:null}update(e){this._fetchQueue.pause(),this._fetchQueue.state=e.state,this._tileStrategy.update(e),this._fetchQueue.resume(),this._highlightView?.processUpdate(e)}attach(){let e=`tileServers`in this.layer?this.layer.tileServers:null,t=this.tilemapCache;if(this._tileInfoView=new g(this.layer.tileInfo,this.layer.fullExtent,t?.effectiveMinLOD,t?.effectiveMaxLOD),this._fetchQueue=new v({tileInfoView:this._tileInfoView,concurrency:e&&e.length*10||10,process:(e,t)=>this.fetchTile(e,t),scheduler:this.scheduler,priority:D.MAPVIEW_FETCH_QUEUE}),this._tileStrategy=new y({cachePolicy:`keep`,resampling:this.resampling,acquireTile:e=>this.acquireTile(e),releaseTile:e=>this.releaseTile(e),tileInfoView:this._tileInfoView}),C(this,this.layer)){let e=this._highlightView=new u({view:this.view,graphics:this._highlightGraphics,requestUpdateCallback:()=>this.requestUpdate(),container:new p(this.view.featuresTilingScheme),defaultPointSymbolEnabled:!1});this.container.addChild(this._highlightView.container),this._popupHighlightHelper=new w({createFetchPopupFeaturesQueryGeometry:(e,t)=>T(e,t,this.view),highlightGraphics:this._highlightGraphics,highlightGraphicUpdated:({graphic:t,property:n})=>e.graphicUpdateHandler({graphic:t,property:n}),layerView:this,updatingHandles:this._updatingHandles})}this.requestUpdate(),this.addAttachHandles(this._updatingHandles.add(()=>this.resampling,()=>{this.doRefresh()})),super.attach()}detach(){super.detach(),this._tileStrategy.destroy(),this._fetchQueue.clear(),this.container.removeAllChildren(),this._popupHighlightHelper?.destroy(),this._highlightView?.destroy(),this._fetchQueue=this._tileStrategy=this._tileInfoView=this._popupHighlightHelper=null}async fetchPopupFeaturesAtTarget(e,t,n){return this._popupHighlightHelper?this._popupHighlightHelper.fetchPopupFeaturesAtTarget(t,n):[]}highlight(e,n){let r=S(e);if(r.length===0)return t();let i=E(n),a=this._addHighlightGraphics(r,i);return t(()=>!this.destroyed&&this._removeHighlightGraphics(r,a))}_onHighlightChange(){let e=this._getHighlightFilterGroups();this._highlightView?.setHighlightFilters(e)}_addHighlightGraphics(e,t){return this._highlightGraphics.addMany(e),this._addHighlightFilter(new c({objectIds:e.map(e=>e.uid)}),t)}_removeHighlightGraphics(e,t){this._highlightGraphics.removeMany(e),this._removeHighlight(t)}viewChange(){this.requestUpdate()}moveEnd(){this.requestUpdate()}supportsSpatialReference(e){return s(this.layer.tileInfo?.spatialReference,e)}async doRefresh(){this.attached&&(this.suspended?(this._tileStrategy.clear(),this.requestUpdate()):(this._fetchQueue.reset(),this._tileStrategy.refresh(e=>this._updatingHandles.addPromise(this._enqueueTileFetch(e)))))}acquireTile(e){let t=this._bitmapView.createTile(e),n=t.bitmap;return[n.x,n.y]=this._tileInfoView.getTileCoords(O,t.key),n.resolution=this._tileInfoView.getTileResolution(t.key),[n.width,n.height]=this._tileInfoView.size,this._updatingHandles.consumePromise(this._enqueueTileFetch(t)),this._bitmapView.addChild(t),this.requestUpdate(),t}releaseTile(e){this._fetchQueue.abort(e.key.id),this._bitmapView.removeChild(e),e.once(`detach`,()=>e.destroy()),this.requestUpdate()}async fetchTile(e,t={}){return this.tilemapCache?this._fetchTileWithTilemapCache(e,t):this._fetchTileWithoutTilemapCache(e,t)}async _fetchTileWithoutTilemapCache(e,t={}){let{signal:n,resamplingLevel:i=0}=t;try{return await this._fetchImage(e,n)}catch(n){if(r(n))throw n;if(!this.resampling)return m(this._tileInfoView.size);if(i<3){let n=this._tileInfoView.getTileParentId(e.id);if(n){let r=new _(n),a=await this._fetchTileWithoutTilemapCache(r,{...t,resamplingLevel:i+1});return h(this._tileInfoView,a,r,e)}}return m(this._tileInfoView.size)}}async _fetchTileWithTilemapCache(e,t={}){let n=this.tilemapCache,{signal:a,resamplingLevel:o=0}=t,s=new _(0,0,0,0),c,l=null;try{if(l=await n.fetchAvailabilityUpsample(e.level,e.row,e.col,s,{signal:a}),!this.resampling&&s.level!==e.level)return await i(t),m(this._tileInfoView.size);c=await this._fetchImage(s,a)}catch(n){if(r(n))throw n;if(this.resampling&&l===`unknown`&&o<3){let n=this._tileInfoView.getTileParentId(e.id);if(n){s.set(n);try{c=await this._fetchTileWithTilemapCache(s,{...t,resamplingLevel:o+1})}catch{}}}}return c?this.resampling?h(this._tileInfoView,c,s,e):c:m(this._tileInfoView.size)}async _enqueueTileFetch(e){if(!this._fetchQueue.has(e.key.id)){try{let t=await this._fetchQueue.push(e.key);e.bitmap.source=t,e.bitmap.width=this._tileInfoView.size[0],e.bitmap.height=this._tileInfoView.size[1],e.once(`attach`,()=>this.requestUpdate()),e.once(`isReady`,()=>this.requestUpdate())}catch(e){r(e)||n.getLogger(this).error(e)}this.requestUpdate()}}async _fetchImage(e,t){return this.layer.fetchImageBitmapTile(e.level,e.row,e.col,{signal:t}).then(({bitmap:e})=>e)}};e([a()],k.prototype,`resampling`,null),e([a()],k.prototype,`tilemapCache`,null),k=e([o(`esri.views.2d.layers.TileLayerView2D`)],k);const A=k;export{A as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import e from"../../../../../../../core/Logger.js";import{pt2px as t}from"../../../../../../../core/screenUtils.js";import{CIMSymbolHelper as n}from"../../../../../../../symbols/cim/CIMSymbolHelper.js";import{defaultCIMValues as r}from"../../../../../../../symbols/cim/defaultCIMValues.js";import{Techniques as i}from"../../../../../engine/webgl/shaderGraph/techniques/TechniqueRegistry.js";import{defineMeshWriterReferences as a}from"../../../../../engine/webgl/shaderGraph/techniques/mesh/MeshWriterReferences.js";import{getMaxSizeVVSize as o,noVisualVariables as s}from"../VisualVariablesSchema.js";import{getAnimatedTechniqueSprite as c,hasSizeVVUniform as l}from"./utils.js";function u(t,n){if(t&&n){let r=t.toLowerCase(),i=n.get(r);if(i!==void 0)return{name:r,index:i};e.getLogger(`esri.views.2d.layers.features.schema.processor.symbols/ComplexSymbolSchema`).warn(`Invalid symbol layer name: "${t}"`)}return null}function d(e,t){if(!t?.enabled||!t.drawOrder)return null;let n=t.drawOrder.map(e=>e.toLowerCase()).reverse(),r=new Map;for(let t of e){if(!t.name)continue;let e=f(t,n);if(e===-1)continue;let i=t.name.toLowerCase(),a=r.get(e);a?a.push(i):r.set(e,[i])}let i=new Map,a=0;for(let[e,t]of n.entries()){let n=r.get(e)??[t];for(let e of n)i.set(e,a++)}return i}function f(e,t){for(let n of[e.name,...e.groupNames??[]]){if(!n)continue;let e=t.indexOf(n.toLowerCase());if(e!==-1)return e}return-1}function p(e){return e.minScale||e.maxScale?{minScale:e.minScale??0,maxScale:e.maxScale??0}:null}function m(e){if(e==null)return null;if(Array.isArray(e)){let[t,n,r,i]=e;return[t,n,r,i*255]}return typeof e==`string`?e:{...e,defaultValue:m(e?.defaultValue)}}async function h(e,t,n=!1){return _(e,t,n,!0)}async function g(e,t,n=!1){return _(e,t,n,!1)}async function _(e,t,r,i){let{cimResourceManager:o,cimAnalyzer:s,scaleExpression:c,symbolLayerDrawing:l}=t.schemaOptions,u=e.symbol;if(u==null)return[];await n.normalizeSymbolAndFetchResources(u,o);let f=s.analyzeSymbolReference(e,!1),m=p(e),h=d(f,l),g=v(u,f,r),_=u.type===`CIMPointSymbol`&&u.angleAlignment!==`Map`,y=_||g?t.schemaOptions.viewRotation:null,x={scaleInfo:m,scaleExpression:c,rotationVariable:t.rotationVariable??null,viewRotation:y,viewRotationForCalloutsOnly:g&&!_,layerOrderMap:h},S=[];for(let e of f)switch(e.type){case`marker`:S.push(...b(e,t,x));break;case`fill`:S.push(...O(e,t,x));break;case`outlineFill`:S.push(...T(e,t,x));break;case`gradientFill`:S.push(...A(e,t,x));break;case`line`:S.push(...M(e,t,x));break;case`gradientStroke`:S.push(...L(e,t,x));break;case`text`:S.push(...z(e,t,x))}if(r)for(let e of S)e.inputParams.collisionVisibility=!0;return i?a(S):S}function v(e,t,n){return!n&&e.type===`CIMLineSymbol`&&t.some(e=>(e.type===`marker`||e.type===`text`)&&e.alignment===0)&&t.some(y)}function y(e){return[...e.effects??[],...`outlineEffects`in e?e.outlineEffects??[]:[]].some(({effect:e})=>e.type===`CIMSimpleLineCallout`||e.type===`CIMBackgroundCallout`||e.type===`CIMBalloonCallout`||e.type===`CIMPointSymbolCallout`)}function b(e,t,n){let{uniforms:r,schemaOptions:a}=t,{store:o}=a,{layerOrderMap:c}=n,l=e.isOutline?{...s,visualVariableSizeScaleStops:r.visualVariableSizeOutlineScaleStops}:{visualVariableColor:r.visualVariableColor,visualVariableOpacity:r.visualVariableOpacity,visualVariableSizeMinMaxValue:r.visualVariableSizeMinMaxValue,visualVariableSizeScaleStops:r.visualVariableSizeScaleStops,visualVariableSizeStops:r.visualVariableSizeStops,visualVariableSizeUnitValue:r.visualVariableSizeUnitValue,visualVariableRotation:r.visualVariableRotation};if(e.animationParams){let{hasShiftAnimation:t}=e.animationParams.params,r=t?i.animatedMarkerShift:i.animatedMarker;return x(o.ensureInstance(r,{uniforms:l,optionalAttributes:{zoomRange:!0,value1Position2Value2:e.animationParams.params.hasShiftAnimation,lineLength:t}},u(e.name,c)),e,s,n)}return C(o.ensureInstance(i.marker,{uniforms:l,optionalAttributes:{zoomRange:!!n.scaleInfo}},u(e.name,c)),e,r,n)}function x(e,t,n,r){return t.animationParams?[e.createMeshInfo({pixelDimensions:t.pixelDimensions,texelDimensions:t.texelDimensions,effects:t.effects?{type:`cim-effect-infos`,effectInfos:t.effects}:null,sprite:c(t),animations:t.animationParams,scaleInfo:r.scaleInfo,scaleSymbolsProportionally:t.scaleSymbolsProportionally,strokeWidth:t.outlineWidth,isMapAligned:t.alignment===1,colorLocked:t.colorLocked,isStroke:t.isStroke,baseSize:t.baseSize,placement:t.markerPlacement,referenceSize:t.referenceSize,angleToLine:t.markerPlacement?t.markerPlacement.placement&&`angleToLine`in t.markerPlacement.placement&&t.markerPlacement.placement.angleToLine:!1,sizeRatio:t.sizeRatio,patternHeight:null})]:[]}function S(e,t,n,r){return t.animationParams?[e.createMeshInfo({effects:t.effects?{type:`cim-effect-infos`,effectInfos:t.effects}:null,sprite:c(t),animations:t.animationParams,scaleInfo:r.scaleInfo,scaleSymbolsProportionally:!1,strokeWidth:1,isMapAligned:!0,colorLocked:t.colorLocked||!1,isStroke:!1,baseSize:`width`in t?t.width:-1,placement:null,referenceSize:2,angleToLine:!1,sizeRatio:1,patternHeight:t.type===`fill`&&t.spriteRasterizationParam?t.height:null,joinType:`join`in t?t.join:`round`,capType:`cap`in t?t.cap:`round`,miterLimit:`miterLimit`in t&&t.miterLimit||2,angle:`angle`in t?t.angle:0})]:[]}function C(e,t,n,{scaleInfo:i,scaleExpression:a}){let s=l(n);return[e.createMeshInfo({size:t.size,scaleX:t.scaleX,anchorX:t.anchorPoint.x,anchorY:t.anchorPoint.y,angle:t.rotation,color:m(t.color)??[0,0,0,0],colorLocked:t.colorLocked,frameHeight:t.frameHeight,widthRatio:t.widthRatio,scaleInfo:i,offsetX:t.offsetX,offsetY:t.offsetY,outlineColor:m(t.outlineColor)??[0,0,0,0],outlineSize:t.outlineWidth,referenceSize:t.referenceSize||r.CIMVectorMarker.size,rotateClockwise:t.rotateClockwise,scaleFactor:a??1,sizeRatio:t.sizeRatio,alignment:t.alignment,isAbsoluteAnchorPoint:t.isAbsoluteAnchorPoint,scaleSymbolsProportionally:t.scaleSymbolsProportionally,sprite:t.spriteRasterizationParam,hasSizeVV:s,placement:t.markerPlacement,effects:t.effects?{type:`cim-effect-infos`,effectInfos:t.effects}:null,transforms:t.transform,minPixelBuffer:o(n)})]}function w(e,t,n){let{uniforms:r,schemaOptions:a}=t,{store:o}=a,{layerOrderMap:c}=n,l={visualVariableColor:e.colorLocked?null:r.visualVariableColor,visualVariableOpacity:r.visualVariableOpacity};if(e.animationParams){let t=i.animatedFill;return S(o.ensureInstance(t,{uniforms:{...l,visualVariableSizeMinMaxValue:null,visualVariableSizeStops:null,visualVariableSizeUnitValue:null,visualVariableSizeScaleStops:null,visualVariableRotation:null},optionalAttributes:{zoomRange:!0,value1Position2Value2:!1,lineLength:!1}},u(e.name,c)),e,s,n)}return D(o.ensureInstance(i.fill,{uniforms:l,optionalAttributes:{zoomRange:!!n.scaleInfo}},u(e.name,c)),e,n)}function T(e,t,n){let{uniforms:r,schemaOptions:a}=t,{store:o}=a,{layerOrderMap:s}=n;return E(o.ensureInstance(i.outlineFill,{uniforms:{visualVariableColor:e.colorLocked?null:r.visualVariableColor,visualVariableOpacity:r.visualVariableOpacity,visualVariableSizeMinMaxValue:null,visualVariableSizeScaleStops:null,visualVariableSizeStops:null,visualVariableSizeUnitValue:null},optionalAttributes:{zoomRange:!!n.scaleInfo}},u(e.name,s)),e,n)}function E(e,n,r){let i=m(n.color)??[0,0,0,0],a=m(n.outlineColor)??[0,0,0,0];return[e.createMeshInfo({color:i,outlineColor:a,width:n.outlineWidth,referenceWidth:n.referenceWidth,minPixelBuffer:n.pixelBufferSize==null?0:t(n.pixelBufferSize)+1,capType:n.cap,joinType:n.join,miterLimit:n.miterLimit,outlineUsesColorVV:!n.outlineColorLocked,hasSizeVV:!1,scaleInfo:r.scaleInfo,...P(n,r),effects:n.effects?{type:`cim-effect-infos`,effectInfos:n.effects}:null,outlineEffects:n.outlineEffects?{type:`cim-effect-infos`,effectInfos:n.outlineEffects}:null})]}function D(e,t,n){let{scaleInfo:r}=n;return[e.createMeshInfo({color:m(t.color)??[0,0,0,0],scaleInfo:r,...P(t,n),effects:t.effects?{type:`cim-effect-infos`,effectInfos:t.effects}:null})]}function O(e,t,n){let{layerOrderMap:r}=n;if(!e.spriteRasterizationParam)return w(e,t,n);let{uniforms:a,schemaOptions:o}=t,{store:c}=o,l={visualVariableColor:e.colorLocked?null:a.visualVariableColor,visualVariableOpacity:a.visualVariableOpacity};if(e.animationParams){let t=i.animatedFill;return S(c.ensureInstance(t,{uniforms:{...l,visualVariableSizeMinMaxValue:null,visualVariableSizeStops:null,visualVariableSizeUnitValue:null,visualVariableSizeScaleStops:null,visualVariableRotation:null},optionalAttributes:{zoomRange:!0,value1Position2Value2:!1,lineLength:!1,angle:!!e.angle}},u(e.name,r)),e,s,n)}return k(c.ensureInstance(i.complexFill,{uniforms:l,optionalAttributes:{zoomRange:!!n.scaleInfo}},u(e.name,r)),e,a.visualVariableColor!=null,n)}function k(e,t,n,r){let{scaleInfo:i}=r;if(!t.spriteRasterizationParam)throw Error(`InternalError: Sprite should always be defined`);let a=!!t.hasUnresolvedReplacementColor&&(!n||t.colorLocked),o=t.sampleAlphaOnly&&!a,s=t.spriteRasterizationParam;return[e.createMeshInfo({color:m(t.color)??[0,0,0,0],height:t.height,aspectRatio:t.scaleX,offsetX:t.offsetX,offsetY:t.offsetY,scaleX:1,scaleY:1,angle:t.angle,applyRandomOffset:t.applyRandomOffset,sampleAlphaOnly:o,scaleProportionally:s.resource.type===`CIMHatchFill`,sprite:s,scaleInfo:i,...P(t,r),effects:t.effects?{type:`cim-effect-infos`,effectInfos:t.effects}:null})]}function A(e,t,n){let{uniforms:r,schemaOptions:a}=t,{store:o}=a,{layerOrderMap:s}=n;return j(o.ensureInstance(i.gradientFill,{uniforms:{visualVariableColor:null,visualVariableOpacity:r.visualVariableOpacity},optionalAttributes:{zoomRange:!!n.scaleInfo}},u(e.name,s)),e,n)}function j(e,t,n){let{scaleInfo:r}=n;if(!t.spriteRasterizationParam)throw Error(`InternalError: Sprite should always be defined`);let i=t.spriteRasterizationParam;return[e.createMeshInfo({color:m(t.color)??[0,0,0,0],angle:t.angle,gradientMethod:t.gradientMethod,gradientSize:t.gradientSize,gradientSizeUnits:t.gradientSizeUnits,gradientType:t.gradientType,sprite:i,scaleInfo:r,...P(t,n),effects:t.effects?{type:`cim-effect-infos`,effectInfos:t.effects}:null})]}function M(e,t,n){let{uniforms:r,schemaOptions:a}=t,{store:o}=a,{layerOrderMap:c}=n,l=e.isOutline?{...s,visualVariableSizeScaleStops:r.visualVariableSizeOutlineScaleStops}:{visualVariableColor:e.colorLocked?null:r.visualVariableColor,visualVariableOpacity:r.visualVariableOpacity,visualVariableSizeMinMaxValue:r.visualVariableSizeMinMaxValue,visualVariableSizeScaleStops:r.visualVariableSizeScaleStops,visualVariableSizeStops:r.visualVariableSizeStops,visualVariableSizeUnitValue:r.visualVariableSizeUnitValue};if(e.animationParams){let{hasShiftAnimation:t}=e.animationParams.params,r=i.animatedLine;return S(o.ensureInstance(r,{uniforms:{...l,visualVariableRotation:null},optionalAttributes:{zoomRange:!0,value1Position2Value2:!1,accumulatedDistance:!0,segmentDirection:!0,normal:!0,lineLength:t,angle:!1}},u(e.name,c)),e,s,n)}let d={uniforms:l,optionalAttributes:{zoomRange:!!n.scaleInfo}},f=!!(l.visualVariableSizeMinMaxValue||l.visualVariableSizeScaleStops||l.visualVariableSizeStops||l.visualVariableSizeUnitValue);return e.spriteRasterizationParam?I(o.ensureInstance(i.texturedLine,d,u(e.name,c)),e,f,n):F(o.ensureInstance(i.line,d,u(e.name,c)),e,f,n)}function N(e,t,n){let{scaleInfo:r}=n;return{color:m(e.color)??[0,0,0,0],width:e.width,referenceWidth:e.referenceWidth,capType:e.cap,joinType:e.join,miterLimit:e.miterLimit,scaleInfo:r,hasSizeVV:t,...P(e,n),effects:e.effects?{type:`cim-effect-infos`,effectInfos:e.effects}:null}}function P(e,{rotationVariable:t,viewRotation:n,viewRotationForCalloutsOnly:r}){if(!e.effects?.length&&!e.outlineEffects?.length)return{};let i={};if(e.effectsChangeGeometryType&&(i.useEffectOrigin=!0),n!=null&&(!r||e.type!==`text`&&y(e))&&(i.viewRotation=n),!t)return i;let a=t.valueExpression??(t.field?`$feature[${JSON.stringify(t.field)}]`:null);return a&&(i.effectRotation={valueExpressionInfo:{type:`CIMExpressionInfo`,expression:a},defaultValue:0},i.effectRotationType=t.rotationType),i}function F(e,t,n,r){if(t.spriteRasterizationParam)throw Error(`InternalError: Sprite should not be defined`);let i=N(t,n,r);return[e.createMeshInfo(i)]}function I(e,t,n,r){let{spriteRasterizationParam:i,scaleDash:a,sampleAlphaOnly:o}=t;if(!i)throw Error(`InternalError: Sprite should be defined`);return[e.createMeshInfo({...N(t,n,r),offsetAlongLine:t.offsetAlongLine??0,shouldScaleDash:a??!1,shouldSampleAlphaOnly:o,isSDF:i.resource.type!==`CIMPictureStroke`&&i.resource.type!==`CIMGradientStroke`,sprite:i})]}function L(e,t,n){let{uniforms:r,schemaOptions:a}=t,{store:o}=a,{layerOrderMap:c}=n;return R(o.ensureInstance(i.gradientStroke,{uniforms:e.isOutline?{...s,visualVariableSizeScaleStops:r.visualVariableSizeOutlineScaleStops}:{visualVariableColor:null,visualVariableOpacity:r.visualVariableOpacity,visualVariableSizeMinMaxValue:r.visualVariableSizeMinMaxValue,visualVariableSizeScaleStops:r.visualVariableSizeScaleStops,visualVariableSizeStops:r.visualVariableSizeStops,visualVariableSizeUnitValue:r.visualVariableSizeUnitValue},optionalAttributes:{zoomRange:!!n.scaleInfo}},u(e.name,c)),e,n)}function R(e,t,n){if(!t.spriteRasterizationParam)throw Error(`InternalError: Sprite should always be defined`);let r=t.spriteRasterizationParam;return[e.createMeshInfo({...N(t,!1,n),gradientMethod:t.gradientMethod,gradientSize:t.gradientSize,gradientSizeUnits:t.gradientSizeUnits,gradientType:t.gradientType,sprite:r,effects:t.effects?{type:`cim-effect-infos`,effectInfos:t.effects}:null})]}function z(e,t,n){let{uniforms:r,schemaOptions:a}=t,{store:o}=a,{layerOrderMap:s}=n;return B(o.ensureInstance(i.text,{uniforms:{visualVariableColor:e.colorLocked?null:r.visualVariableColor,visualVariableOpacity:r.visualVariableOpacity,visualVariableRotation:r.visualVariableRotation,visualVariableSizeMinMaxValue:r.visualVariableSizeMinMaxValue,visualVariableSizeScaleStops:r.visualVariableSizeScaleStops,visualVariableSizeStops:r.visualVariableSizeStops,visualVariableSizeUnitValue:r.visualVariableSizeUnitValue},optionalAttributes:{zoomRange:!!n.scaleInfo,referenceSymbol:!1,clipAngle:!1}},u(e.name,s)),e,r,n)}function B(e,t,n,{scaleInfo:r,scaleExpression:i}){return[e.createMeshInfo({alignment:t.alignment,boxBackgroundColor:null,boxBorderLineColor:null,boxBorderLineSize:0,backgroundColor:m(t.backgroundColor),borderLineColor:m(t.borderLineColor),borderLineWidth:t.borderLineWidth??0,useBackgroundCallout:t.useBackgroundCallout,color:m(t.color)??[0,0,0,0],offsetX:t.offsetX,offsetY:t.offsetY,postAngle:t.angle,fontSize:t.size,referenceSize:t.referenceSize,decoration:t.decoration,haloColor:m(t.haloColor)??[0,0,0,0],haloSize:t.haloSize??0,outlineColor:m(t.outlineColor)??[0,0,0,0],outlineSize:t.outlineSize,lineWidth:t.lineWidth||512,lineHeightRatio:1,horizontalAlignment:t.horizontalAlignment??`center`,verticalAlignment:t.verticalAlignment??`baseline`,useCIMAngleBehavior:!1,glyphs:t.textRasterizationParam,scaleInfo:r,effects:t.effects?{type:`cim-effect-infos`,effectInfos:t.effects}:null,placement:t.markerPlacement,transforms:t.transform,scaleFactor:i??1,minPixelBuffer:o(n),repeatLabel:null,repeatLabelDistance:null,allowOverrun:null,labelPosition:null,layerId:null,labelClassId:null})]}export{x as createAnimatedMarkerMeshInfos,S as createAnimatedPolyMeshInfos,k as createComplexFillMeshInfos,C as createComplexMarkerMeshInfos,D as createComplexSimpleFillMeshInfos,F as createComplexSimpleLineMeshInfos,E as createComplexSimpleOutlineFillMeshInfos,h as createComplexSymbolInstances,g as createComplexSymbolPartSchemas,B as createComplexTextMeshInfos,I as createComplexTexturedLineMeshInfos,j as createGradientFillMeshInfos,R as createGradientStrokeMeshInfos,p as getScaleInfo};
2
+ import e from"../../../../../../../core/Logger.js";import{pt2px as t}from"../../../../../../../core/screenUtils.js";import{CIMSymbolHelper as n}from"../../../../../../../symbols/cim/CIMSymbolHelper.js";import{defaultCIMValues as r}from"../../../../../../../symbols/cim/defaultCIMValues.js";import{Techniques as i}from"../../../../../engine/webgl/shaderGraph/techniques/TechniqueRegistry.js";import{defineMeshWriterReferences as a}from"../../../../../engine/webgl/shaderGraph/techniques/mesh/MeshWriterReferences.js";import{getMaxSizeVVSize as o,noVisualVariables as s}from"../VisualVariablesSchema.js";import{getAnimatedTechniqueSprite as c,hasSizeVVUniform as l}from"./utils.js";function u(t,n){if(t&&n){let r=t.toLowerCase(),i=n.get(r);if(i!==void 0)return{name:r,index:i};e.getLogger(`esri.views.2d.layers.features.schema.processor.symbols/ComplexSymbolSchema`).warn(`Invalid symbol layer name: "${t}"`)}return null}function d(e,t){if(!t?.enabled||!t.drawOrder)return null;let n=t.drawOrder.map(e=>e.toLowerCase()).reverse(),r=new Map;for(let t of e){if(!t.name)continue;let e=f(t,n);if(e===-1)continue;let i=t.name.toLowerCase(),a=r.get(e);a?a.push(i):r.set(e,[i])}let i=new Map,a=0;for(let[e,t]of n.entries()){let n=r.get(e)??[t];for(let e of n)i.set(e,a++)}return i}function f(e,t){for(let n of[e.name,...e.groupNames??[]]){if(!n)continue;let e=t.indexOf(n.toLowerCase());if(e!==-1)return e}return-1}function p(e){return e.minScale||e.maxScale?{minScale:e.minScale??0,maxScale:e.maxScale??0}:null}function m(e){if(e==null)return null;if(Array.isArray(e)){let[t,n,r,i]=e;return[t,n,r,i*255]}return typeof e==`string`?e:{...e,defaultValue:m(e?.defaultValue)}}async function h(e,t,n=!1){return _(e,t,n,!0)}async function g(e,t,n=!1){return _(e,t,n,!1)}async function _(e,t,r,i){let{cimResourceManager:o,cimAnalyzer:s,scaleExpression:c,symbolLayerDrawing:l}=t.schemaOptions,u=e.symbol;if(u==null)return[];await n.normalizeSymbolAndFetchResources(u,o);let f=s.analyzeSymbolReference(e,!1),m=p(e),h=d(f,l),g=v(u,f,r),_=u.type===`CIMPointSymbol`&&u.angleAlignment!==`Map`,y=_||g?t.schemaOptions.viewRotation:null,x={scaleInfo:m,scaleExpression:c,rotationVariable:t.rotationVariable??null,viewRotation:y,viewRotationForCalloutsOnly:g&&!_,layerOrderMap:h},S=[];for(let e of f)switch(e.type){case`marker`:S.push(...b(e,t,x));break;case`fill`:S.push(...O(e,t,x));break;case`outlineFill`:S.push(...T(e,t,x));break;case`gradientFill`:S.push(...A(e,t,x));break;case`line`:S.push(...M(e,t,x));break;case`gradientStroke`:S.push(...L(e,t,x));break;case`text`:S.push(...z(e,t,x))}if(r)for(let e of S)e.inputParams.collisionVisibility=!0;return i?a(S):S}function v(e,t,n){return!n&&e.type===`CIMLineSymbol`&&t.some(e=>(e.type===`marker`||e.type===`text`)&&e.alignment===0)&&t.some(y)}function y(e){return[...e.effects??[],...`outlineEffects`in e?e.outlineEffects??[]:[]].some(({effect:e})=>e.type===`CIMSimpleLineCallout`||e.type===`CIMBackgroundCallout`||e.type===`CIMBalloonCallout`||e.type===`CIMPointSymbolCallout`)}function b(e,t,n){let{uniforms:r,schemaOptions:a}=t,{store:o}=a,{layerOrderMap:c}=n,l=e.isOutline?{...s,visualVariableSizeScaleStops:r.visualVariableSizeOutlineScaleStops}:{visualVariableColor:r.visualVariableColor,visualVariableOpacity:r.visualVariableOpacity,visualVariableSizeMinMaxValue:r.visualVariableSizeMinMaxValue,visualVariableSizeScaleStops:r.visualVariableSizeScaleStops,visualVariableSizeStops:r.visualVariableSizeStops,visualVariableSizeUnitValue:r.visualVariableSizeUnitValue,visualVariableRotation:r.visualVariableRotation};if(e.animationParams){let{hasShiftAnimation:t}=e.animationParams.params,r=t?i.animatedMarkerShift:i.animatedMarker;return x(o.ensureInstance(r,{uniforms:l,optionalAttributes:{zoomRange:!0,value1Position2Value2:e.animationParams.params.hasShiftAnimation,lineLength:t}},u(e.name,c)),e,s,n)}return C(o.ensureInstance(i.marker,{uniforms:l,optionalAttributes:{zoomRange:!!n.scaleInfo}},u(e.name,c)),e,r,n)}function x(e,t,n,r){return t.animationParams?[e.createMeshInfo({pixelDimensions:t.pixelDimensions,texelDimensions:t.texelDimensions,effects:t.effects?{type:`cim-effect-infos`,effectInfos:t.effects}:null,sprite:c(t),animations:t.animationParams,scaleInfo:r.scaleInfo,scaleSymbolsProportionally:t.scaleSymbolsProportionally,strokeWidth:t.outlineWidth,isMapAligned:t.alignment===1,colorLocked:t.colorLocked,isStroke:t.isStroke,baseSize:t.baseSize,placement:t.markerPlacement,referenceSize:t.referenceSize,angleToLine:t.markerPlacement?t.markerPlacement.placement&&`angleToLine`in t.markerPlacement.placement&&t.markerPlacement.placement.angleToLine:!1,sizeRatio:t.sizeRatio,patternHeight:null})]:[]}function S(e,t,n,r){return t.animationParams?[e.createMeshInfo({effects:t.effects?{type:`cim-effect-infos`,effectInfos:t.effects}:null,sprite:c(t),animations:t.animationParams,scaleInfo:r.scaleInfo,scaleSymbolsProportionally:!1,strokeWidth:1,isMapAligned:!0,colorLocked:t.colorLocked||!1,isStroke:!1,baseSize:`width`in t?t.width:-1,placement:null,referenceSize:t.type===`line`?t.referenceWidth:2,angleToLine:!1,sizeRatio:1,patternHeight:t.type===`fill`&&t.spriteRasterizationParam?t.height:null,joinType:`join`in t?t.join:`round`,capType:`cap`in t?t.cap:`round`,miterLimit:`miterLimit`in t&&t.miterLimit||2,angle:`angle`in t?t.angle:0})]:[]}function C(e,t,n,{scaleInfo:i,scaleExpression:a}){let s=l(n);return[e.createMeshInfo({size:t.size,scaleX:t.scaleX,anchorX:t.anchorPoint.x,anchorY:t.anchorPoint.y,angle:t.rotation,color:m(t.color)??[0,0,0,0],colorLocked:t.colorLocked,frameHeight:t.frameHeight,widthRatio:t.widthRatio,scaleInfo:i,offsetX:t.offsetX,offsetY:t.offsetY,outlineColor:m(t.outlineColor)??[0,0,0,0],outlineSize:t.outlineWidth,referenceSize:t.referenceSize||r.CIMVectorMarker.size,rotateClockwise:t.rotateClockwise,scaleFactor:a??1,sizeRatio:t.sizeRatio,alignment:t.alignment,isAbsoluteAnchorPoint:t.isAbsoluteAnchorPoint,scaleSymbolsProportionally:t.scaleSymbolsProportionally,sprite:t.spriteRasterizationParam,hasSizeVV:s,placement:t.markerPlacement,effects:t.effects?{type:`cim-effect-infos`,effectInfos:t.effects}:null,transforms:t.transform,minPixelBuffer:o(n)})]}function w(e,t,n){let{uniforms:r,schemaOptions:a}=t,{store:o}=a,{layerOrderMap:c}=n,l={visualVariableColor:e.colorLocked?null:r.visualVariableColor,visualVariableOpacity:r.visualVariableOpacity};if(e.animationParams){let t=i.animatedFill;return S(o.ensureInstance(t,{uniforms:{...l,visualVariableSizeMinMaxValue:null,visualVariableSizeStops:null,visualVariableSizeUnitValue:null,visualVariableSizeScaleStops:null,visualVariableRotation:null},optionalAttributes:{zoomRange:!0,value1Position2Value2:!1,lineLength:!1}},u(e.name,c)),e,s,n)}return D(o.ensureInstance(i.fill,{uniforms:l,optionalAttributes:{zoomRange:!!n.scaleInfo}},u(e.name,c)),e,n)}function T(e,t,n){let{uniforms:r,schemaOptions:a}=t,{store:o}=a,{layerOrderMap:s}=n;return E(o.ensureInstance(i.outlineFill,{uniforms:{visualVariableColor:e.colorLocked?null:r.visualVariableColor,visualVariableOpacity:r.visualVariableOpacity,visualVariableSizeMinMaxValue:null,visualVariableSizeScaleStops:null,visualVariableSizeStops:null,visualVariableSizeUnitValue:null},optionalAttributes:{zoomRange:!!n.scaleInfo}},u(e.name,s)),e,n)}function E(e,n,r){let i=m(n.color)??[0,0,0,0],a=m(n.outlineColor)??[0,0,0,0];return[e.createMeshInfo({color:i,outlineColor:a,width:n.outlineWidth,referenceWidth:n.referenceWidth,minPixelBuffer:n.pixelBufferSize==null?0:t(n.pixelBufferSize)+1,capType:n.cap,joinType:n.join,miterLimit:n.miterLimit,outlineUsesColorVV:!n.outlineColorLocked,hasSizeVV:!1,scaleInfo:r.scaleInfo,...P(n,r),effects:n.effects?{type:`cim-effect-infos`,effectInfos:n.effects}:null,outlineEffects:n.outlineEffects?{type:`cim-effect-infos`,effectInfos:n.outlineEffects}:null})]}function D(e,t,n){let{scaleInfo:r}=n;return[e.createMeshInfo({color:m(t.color)??[0,0,0,0],scaleInfo:r,...P(t,n),effects:t.effects?{type:`cim-effect-infos`,effectInfos:t.effects}:null})]}function O(e,t,n){let{layerOrderMap:r}=n;if(!e.spriteRasterizationParam)return w(e,t,n);let{uniforms:a,schemaOptions:o}=t,{store:c}=o,l={visualVariableColor:e.colorLocked?null:a.visualVariableColor,visualVariableOpacity:a.visualVariableOpacity};if(e.animationParams){let t=i.animatedFill;return S(c.ensureInstance(t,{uniforms:{...l,visualVariableSizeMinMaxValue:null,visualVariableSizeStops:null,visualVariableSizeUnitValue:null,visualVariableSizeScaleStops:null,visualVariableRotation:null},optionalAttributes:{zoomRange:!0,value1Position2Value2:!1,lineLength:!1,angle:!!e.angle}},u(e.name,r)),e,s,n)}return k(c.ensureInstance(i.complexFill,{uniforms:l,optionalAttributes:{zoomRange:!!n.scaleInfo}},u(e.name,r)),e,a.visualVariableColor!=null,n)}function k(e,t,n,r){let{scaleInfo:i}=r;if(!t.spriteRasterizationParam)throw Error(`InternalError: Sprite should always be defined`);let a=!!t.hasUnresolvedReplacementColor&&(!n||t.colorLocked),o=t.sampleAlphaOnly&&!a,s=t.spriteRasterizationParam;return[e.createMeshInfo({color:m(t.color)??[0,0,0,0],height:t.height,aspectRatio:t.scaleX,offsetX:t.offsetX,offsetY:t.offsetY,scaleX:1,scaleY:1,angle:t.angle,applyRandomOffset:t.applyRandomOffset,sampleAlphaOnly:o,scaleProportionally:s.resource.type===`CIMHatchFill`,sprite:s,scaleInfo:i,...P(t,r),effects:t.effects?{type:`cim-effect-infos`,effectInfos:t.effects}:null})]}function A(e,t,n){let{uniforms:r,schemaOptions:a}=t,{store:o}=a,{layerOrderMap:s}=n;return j(o.ensureInstance(i.gradientFill,{uniforms:{visualVariableColor:null,visualVariableOpacity:r.visualVariableOpacity},optionalAttributes:{zoomRange:!!n.scaleInfo}},u(e.name,s)),e,n)}function j(e,t,n){let{scaleInfo:r}=n;if(!t.spriteRasterizationParam)throw Error(`InternalError: Sprite should always be defined`);let i=t.spriteRasterizationParam;return[e.createMeshInfo({color:m(t.color)??[0,0,0,0],angle:t.angle,gradientMethod:t.gradientMethod,gradientSize:t.gradientSize,gradientSizeUnits:t.gradientSizeUnits,gradientType:t.gradientType,sprite:i,scaleInfo:r,...P(t,n),effects:t.effects?{type:`cim-effect-infos`,effectInfos:t.effects}:null})]}function M(e,t,n){let{uniforms:r,schemaOptions:a}=t,{store:o}=a,{layerOrderMap:c}=n,l=e.isOutline?{...s,visualVariableSizeScaleStops:r.visualVariableSizeOutlineScaleStops}:{visualVariableColor:e.colorLocked?null:r.visualVariableColor,visualVariableOpacity:r.visualVariableOpacity,visualVariableSizeMinMaxValue:r.visualVariableSizeMinMaxValue,visualVariableSizeScaleStops:r.visualVariableSizeScaleStops,visualVariableSizeStops:r.visualVariableSizeStops,visualVariableSizeUnitValue:r.visualVariableSizeUnitValue};if(e.animationParams){let{hasShiftAnimation:t}=e.animationParams.params,r=i.animatedLine;return S(o.ensureInstance(r,{uniforms:{...l,visualVariableRotation:null},optionalAttributes:{zoomRange:!0,value1Position2Value2:!1,accumulatedDistance:!0,segmentDirection:!0,normal:!0,lineLength:t,angle:!1}},u(e.name,c)),e,s,n)}let d={uniforms:l,optionalAttributes:{zoomRange:!!n.scaleInfo}},f=!!(l.visualVariableSizeMinMaxValue||l.visualVariableSizeScaleStops||l.visualVariableSizeStops||l.visualVariableSizeUnitValue);return e.spriteRasterizationParam?I(o.ensureInstance(i.texturedLine,d,u(e.name,c)),e,f,n):F(o.ensureInstance(i.line,d,u(e.name,c)),e,f,n)}function N(e,t,n){let{scaleInfo:r}=n;return{color:m(e.color)??[0,0,0,0],width:e.width,referenceWidth:e.referenceWidth,capType:e.cap,joinType:e.join,miterLimit:e.miterLimit,scaleInfo:r,hasSizeVV:t,...P(e,n),effects:e.effects?{type:`cim-effect-infos`,effectInfos:e.effects}:null}}function P(e,{rotationVariable:t,viewRotation:n,viewRotationForCalloutsOnly:r}){if(!e.effects?.length&&!e.outlineEffects?.length)return{};let i={};if(e.effectsChangeGeometryType&&(i.useEffectOrigin=!0),n!=null&&(!r||e.type!==`text`&&y(e))&&(i.viewRotation=n),!t)return i;let a=t.valueExpression??(t.field?`$feature[${JSON.stringify(t.field)}]`:null);return a&&(i.effectRotation={valueExpressionInfo:{type:`CIMExpressionInfo`,expression:a},defaultValue:0},i.effectRotationType=t.rotationType),i}function F(e,t,n,r){if(t.spriteRasterizationParam)throw Error(`InternalError: Sprite should not be defined`);let i=N(t,n,r);return[e.createMeshInfo(i)]}function I(e,t,n,r){let{spriteRasterizationParam:i,scaleDash:a,sampleAlphaOnly:o}=t;if(!i)throw Error(`InternalError: Sprite should be defined`);return[e.createMeshInfo({...N(t,n,r),offsetAlongLine:t.offsetAlongLine??0,shouldScaleDash:a??!1,shouldSampleAlphaOnly:o,isSDF:i.resource.type!==`CIMPictureStroke`&&i.resource.type!==`CIMGradientStroke`,sprite:i})]}function L(e,t,n){let{uniforms:r,schemaOptions:a}=t,{store:o}=a,{layerOrderMap:c}=n;return R(o.ensureInstance(i.gradientStroke,{uniforms:e.isOutline?{...s,visualVariableSizeScaleStops:r.visualVariableSizeOutlineScaleStops}:{visualVariableColor:null,visualVariableOpacity:r.visualVariableOpacity,visualVariableSizeMinMaxValue:r.visualVariableSizeMinMaxValue,visualVariableSizeScaleStops:r.visualVariableSizeScaleStops,visualVariableSizeStops:r.visualVariableSizeStops,visualVariableSizeUnitValue:r.visualVariableSizeUnitValue},optionalAttributes:{zoomRange:!!n.scaleInfo}},u(e.name,c)),e,n)}function R(e,t,n){if(!t.spriteRasterizationParam)throw Error(`InternalError: Sprite should always be defined`);let r=t.spriteRasterizationParam;return[e.createMeshInfo({...N(t,!1,n),gradientMethod:t.gradientMethod,gradientSize:t.gradientSize,gradientSizeUnits:t.gradientSizeUnits,gradientType:t.gradientType,sprite:r,effects:t.effects?{type:`cim-effect-infos`,effectInfos:t.effects}:null})]}function z(e,t,n){let{uniforms:r,schemaOptions:a}=t,{store:o}=a,{layerOrderMap:s}=n;return B(o.ensureInstance(i.text,{uniforms:{visualVariableColor:e.colorLocked?null:r.visualVariableColor,visualVariableOpacity:r.visualVariableOpacity,visualVariableRotation:r.visualVariableRotation,visualVariableSizeMinMaxValue:r.visualVariableSizeMinMaxValue,visualVariableSizeScaleStops:r.visualVariableSizeScaleStops,visualVariableSizeStops:r.visualVariableSizeStops,visualVariableSizeUnitValue:r.visualVariableSizeUnitValue},optionalAttributes:{zoomRange:!!n.scaleInfo,referenceSymbol:!1,clipAngle:!1}},u(e.name,s)),e,r,n)}function B(e,t,n,{scaleInfo:r,scaleExpression:i}){return[e.createMeshInfo({alignment:t.alignment,boxBackgroundColor:null,boxBorderLineColor:null,boxBorderLineSize:0,backgroundColor:m(t.backgroundColor),borderLineColor:m(t.borderLineColor),borderLineWidth:t.borderLineWidth??0,useBackgroundCallout:t.useBackgroundCallout,color:m(t.color)??[0,0,0,0],offsetX:t.offsetX,offsetY:t.offsetY,postAngle:t.angle,fontSize:t.size,referenceSize:t.referenceSize,decoration:t.decoration,haloColor:m(t.haloColor)??[0,0,0,0],haloSize:t.haloSize??0,outlineColor:m(t.outlineColor)??[0,0,0,0],outlineSize:t.outlineSize,lineWidth:t.lineWidth||512,lineHeightRatio:1,horizontalAlignment:t.horizontalAlignment??`center`,verticalAlignment:t.verticalAlignment??`baseline`,useCIMAngleBehavior:!1,glyphs:t.textRasterizationParam,scaleInfo:r,effects:t.effects?{type:`cim-effect-infos`,effectInfos:t.effects}:null,placement:t.markerPlacement,transforms:t.transform,scaleFactor:i??1,minPixelBuffer:o(n),repeatLabel:null,repeatLabelDistance:null,allowOverrun:null,labelPosition:null,layerId:null,labelClassId:null})]}export{x as createAnimatedMarkerMeshInfos,S as createAnimatedPolyMeshInfos,k as createComplexFillMeshInfos,C as createComplexMarkerMeshInfos,D as createComplexSimpleFillMeshInfos,F as createComplexSimpleLineMeshInfos,E as createComplexSimpleOutlineFillMeshInfos,h as createComplexSymbolInstances,g as createComplexSymbolPartSchemas,B as createComplexTextMeshInfos,I as createComplexTexturedLineMeshInfos,j as createGradientFillMeshInfos,R as createGradientStrokeMeshInfos,p as getScaleInfo};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import{EventedAccessor as t}from"../../../../../core/Evented.js";import n from"../../../../../core/Logger.js";import{watch as r,syncAndInitial as i}from"../../../../../core/reactiveUtils.js";import{property as a,subclass as o}from"../../../../../core/accessorSupport/decorators.js";import s from"../../../../../geometry/Point.js";import{tryProject as c}from"../../../../../geometry/projectionUtils.js";import{empty as l,expandPointInPlace as u}from"../../../../../geometry/support/aaBoundingRect.js";import{logFailedGeometryProjectionError as d}from"../../support/projectionUtils.js";import{createCoordinateHelper as f}from"../../../../interactive/coordinateHelper.js";import{EditGeometry as p}from"../../../../interactive/editGeometry/EditGeometry.js";import{EditGeometryOperations as m}from"../../../../interactive/editGeometry/EditGeometryOperations.js";let h=class extends t{constructor(e={}){super(e),this._version=0,this._internalGeometryChange=!1,this._extent=l()}set areaMeasurement(e){this._set(`areaMeasurement`,e),e!=null&&this.view!=null&&this._initialize(e,this.view)}set view(e){this._set(`view`,e),e!=null&&this.areaMeasurement!=null&&this._initialize(this.areaMeasurement,e)}get constructed(){return this.areaMeasurement!=null&&this.view!=null}get version(){return this._version}get isEmptyPolygon(){return!this.constructed||this._editGeometry.parts.length===0}get isValidPolygon(){return this.constructed&&this.polygonIsClosed}get extent(){if(this.constructed&&this._editGeometry.parts[0]?.vertices.length){let e=l(this._extent);return this.forEachVertex(t=>{u(e,t.pos)}),e}return null}get spatialReference(){return this.constructed?this._editGeometry.coordinateHelper.spatialReference:null}_initialize(e,t){this.removeAllHandles(),this.addHandles(r(()=>e.geometry,()=>{this._updateEditGeometryFromModelGeometry(e,t)},i)),this._makeDirty(!0)}_makeDirty(e=!1){this.notifyChange(`polygonIsClosed`),this.notifyChange(`isValidPolygon`),this.notifyChange(`initialized`),this.notifyChange(`extent`),e&&this.notifyChange(`numVertices`)}_updateEditGeometryFromModelGeometry(e,t){if(this._version++,this._internalGeometryChange)return;this.removeHandles(`EditGeometry`);let r=e.geometry;if(r!=null){let i=c(r,t.spatialReference);i??d(e,r.spatialReference,n.getLogger(this)),r=i}this._editGeometryOperations=r==null?new m(new p(`polygon`,f(!0,!1,t.spatialReference)),t.state.viewingMode):m.fromGeometry(r,t.state.viewingMode),this._makeDirty(!0),this.emit(`change`),this.addHandles(this._editGeometry.on(`change`,t=>{this._makeDirty(t.addedVertices!=null||t.removedVertices!=null),this._internalGeometryChange=!0,e.geometry=this.numVertices>0?this._editGeometry.geometry:null,this._internalGeometryChange=!1}),`EditGeometry`)}get _editGeometry(){return this._editGeometryOperations.data}get vertices(){let e=[];return this.forEachVertex(t=>{e.push(t)}),e}get numVertices(){return this.constructed?this._editGeometry.parts[0]?.vertices.length??0:0}get polygonIsClosed(){return this._editGeometry.parts[0]?.isClosed()??!1}get firstPoint(){if(this.constructed){let{coordinateHelper:e,parts:t}=this._editGeometry,n=t[0]?.getFirstVertex();if(n!=null)return e.vectorToPoint(n.pos)}return null}get lastPoint(){if(this.constructed){let{coordinateHelper:e,parts:t}=this._editGeometry,n=t[0]?.getLastVertex();if(n!=null)return e.vectorToPoint(n.pos)}return null}getVertex(e){if(!this.constructed||!this._editGeometry.parts[0]?.vertices.length)return null;let t=this._editGeometry.parts[0].vertices[0],n=t;do{if(n.index===e)return n;n=n.rightSegment.rightVertex}while(n!==t&&n!=null);return null}getVertexPositionAsPoint(e){return this._editGeometry.coordinateHelper.vectorToPoint(e.pos)}getVertexPositionAsPointFromIndex(e){return this._editGeometry.coordinateHelper.vectorToPoint(this.getVertex(e).pos)}forEachVertex(e){if(this.constructed&&this._editGeometry.parts.length>0)for(let t of this._editGeometry.parts[0].iterateVertices())e(t,t.index)}forEachVertexPosition(e){let t=this._editGeometry.coordinateHelper;this.forEachVertex((n,r)=>{t.vectorToPoint(n.pos,g),e(g,r)})}clear(){this.areaMeasurement!=null&&(this.areaMeasurement.geometry=null)}add(e){if(!this.constructed)return null;let t=this._editGeometryOperations.appendVertex(this._editGeometry.coordinateHelper.pointToVector(e),this._editGeometry.parts.at(0));return this.emit(`change`),t}close(){if(!this.constructed||this._editGeometry.parts.length===0)return null;let e=this._editGeometryOperations.closePart(this._editGeometry.parts[0]);return this.emit(`change`),e}ensureContains(e,t=``){let n=!1;if(this._editGeometry.parts.forEach(t=>{for(let r of t.iterateVertices())r===e&&(n=!0)}),!n)throw Error(`vertex doesn't exist ${t}`);return n}setVertexPosition(e,t){if(!this.constructed)return null;let n=this._editGeometryOperations.setVertexPosition(e,this._editGeometry.coordinateHelper.pointToVector(t));return this.emit(`change`),n}equals(e){if(this.numVertices!==e.numVertices)return!1;let t=!0;return this.forEachVertexPosition((n,r)=>{let i=e.getVertexPositionAsPointFromIndex(r);n.equals(i)||(t=!1)}),!!t}};e([a({value:null})],h.prototype,`areaMeasurement`,null),e([a({value:null})],h.prototype,`view`,null),e([a()],h.prototype,`isEmptyPolygon`,null),e([a()],h.prototype,`isValidPolygon`,null),e([a()],h.prototype,`extent`,null),e([a()],h.prototype,`spatialReference`,null),e([a()],h.prototype,`numVertices`,null),e([a()],h.prototype,`polygonIsClosed`,null),h=e([o(`esri.views.3d.analysis.AreaMeasurement.support.AreaMeasurementPathHelper`)],h);const g=new s;export{h as AreaMeasurement3DPathHelper};
2
+ import{__decorate as e}from"tslib";import{EventedAccessor as t}from"../../../../../core/Evented.js";import n from"../../../../../core/Logger.js";import{watch as r,syncAndInitial as i}from"../../../../../core/reactiveUtils.js";import{property as a,subclass as o}from"../../../../../core/accessorSupport/decorators.js";import s from"../../../../../geometry/Point.js";import{empty as c,expandPointInPlace as l}from"../../../../../geometry/support/aaBoundingRect.js";import{applyPolygonProjectionAndElevationAlignment as u,logFailedGeometryProjectionError as d}from"../../support/projectionUtils.js";import{getElevationAtPoint as f}from"../../../support/ElevationProvider.js";import{createElevationUpdateHandle as p}from"../../../support/elevationUpdateUtils.js";import{createCoordinateHelper as m}from"../../../../interactive/coordinateHelper.js";import{EditGeometry as h}from"../../../../interactive/editGeometry/EditGeometry.js";import{EditGeometryOperations as g}from"../../../../interactive/editGeometry/EditGeometryOperations.js";let _=class extends t{constructor(e={}){super(e),this._version=0,this._internalGeometryChange=!1,this._extent=c()}set areaMeasurement(e){this._set(`areaMeasurement`,e),e!=null&&this.view!=null&&this._initialize(e,this.view)}set view(e){this._set(`view`,e),e!=null&&this.areaMeasurement!=null&&this._initialize(this.areaMeasurement,e)}get constructed(){return this.areaMeasurement!=null&&this.view!=null}get version(){return this._version}get isEmptyPolygon(){return!this.constructed||this._editGeometry.parts.length===0}get isValidPolygon(){return this.constructed&&this.polygonIsClosed}get extent(){if(this.constructed&&this._editGeometry.parts[0]?.vertices.length){let e=c(this._extent);return this.forEachVertex(t=>{l(e,t.pos)}),e}return null}get spatialReference(){return this.constructed?this._editGeometry.coordinateHelper.spatialReference:null}_initialize(e,t){this.removeAllHandles(),this.addHandles([r(()=>e.geometry,()=>{this._updateEditGeometryFromModelGeometry(e,t)},i),p({view:t,geometry:()=>{let t=e.geometry;return t?.hasZ?null:t},context:`ground`,onElevationChanges:()=>this._elevationAlignEditGeometry(e,t)})]),this._makeDirty(!0)}_makeDirty(e=!1){this.notifyChange(`polygonIsClosed`),this.notifyChange(`isValidPolygon`),this.notifyChange(`initialized`),this.notifyChange(`extent`),e&&this.notifyChange(`numVertices`)}_updateEditGeometryFromModelGeometry(e,t){if(this._version++,this._internalGeometryChange)return;this.removeHandles(`EditGeometry`);let r=e.geometry;if(r!=null){let i=u(r,t.spatialReference,t.elevationProvider);i??d(e,r.spatialReference,n.getLogger(this)),r=i}this._editGeometryOperations=r==null?new g(new h(`polygon`,m(!0,!1,t.spatialReference)),t.state.viewingMode):g.fromGeometry(r,t.state.viewingMode),this._makeDirty(!0),this.emit(`change`),this.addHandles(this._editGeometry.on(`change`,t=>{this._internalGeometryChange||=(this._makeDirty(t.addedVertices!=null||t.removedVertices!=null),this._internalGeometryChange=!0,e.geometry=this.numVertices>0?this._editGeometry.geometry:null,!1)}),`EditGeometry`)}_elevationAlignEditGeometry(e,t){let n=e.geometry;if(n==null||n.hasZ)return;let r=[],i=this._editGeometry;for(let e of i.iterateVertices()){let n=i.coordinateHelper.vectorToPoint(e.pos,v),a=f(t.elevationProvider,n)??0;e.pos[2]!==a&&(e.pos[2]=a,r.push(e))}r.length!==0&&(this._internalGeometryChange=!0,i.notifyChanges({operation:`apply`,updatedVertices:r}),this._internalGeometryChange=!1,this._version++,this.emit(`change`))}get _editGeometry(){return this._editGeometryOperations.data}get geometry(){return this._editGeometry.geometry}get vertices(){let e=[];return this.forEachVertex(t=>{e.push(t)}),e}get numVertices(){return this.constructed?this._editGeometry.parts[0]?.vertices.length??0:0}get polygonIsClosed(){return this._editGeometry.parts[0]?.isClosed()??!1}get firstPoint(){if(this.constructed){let{coordinateHelper:e,parts:t}=this._editGeometry,n=t[0]?.getFirstVertex();if(n!=null)return e.vectorToPoint(n.pos)}return null}get lastPoint(){if(this.constructed){let{coordinateHelper:e,parts:t}=this._editGeometry,n=t[0]?.getLastVertex();if(n!=null)return e.vectorToPoint(n.pos)}return null}getVertex(e){if(!this.constructed||!this._editGeometry.parts[0]?.vertices.length)return null;let t=this._editGeometry.parts[0].vertices[0],n=t;do{if(n.index===e)return n;n=n.rightSegment.rightVertex}while(n!==t&&n!=null);return null}getVertexPositionAsPoint(e){return this._editGeometry.coordinateHelper.vectorToPoint(e.pos)}getVertexPositionAsPointFromIndex(e){return this._editGeometry.coordinateHelper.vectorToPoint(this.getVertex(e).pos)}forEachVertex(e){if(this.constructed&&this._editGeometry.parts.length>0)for(let t of this._editGeometry.parts[0].iterateVertices())e(t,t.index)}forEachVertexPosition(e){let t=this._editGeometry.coordinateHelper;this.forEachVertex((n,r)=>{t.vectorToPoint(n.pos,v),e(v,r)})}clear(){this.areaMeasurement!=null&&(this.areaMeasurement.geometry=null)}add(e){if(!this.constructed)return null;let t=this._editGeometryOperations.appendVertex(this._editGeometry.coordinateHelper.pointToVector(e),this._editGeometry.parts.at(0));return this.emit(`change`),t}close(){if(!this.constructed||this._editGeometry.parts.length===0)return null;let e=this._editGeometryOperations.closePart(this._editGeometry.parts[0]);return this.emit(`change`),e}ensureContains(e,t=``){let n=!1;if(this._editGeometry.parts.forEach(t=>{for(let r of t.iterateVertices())r===e&&(n=!0)}),!n)throw Error(`vertex doesn't exist ${t}`);return n}setVertexPosition(e,t){if(!this.constructed)return null;let n=this._editGeometryOperations.setVertexPosition(e,this._editGeometry.coordinateHelper.pointToVector(t));return this.emit(`change`),n}equals(e){if(this.numVertices!==e.numVertices)return!1;let t=!0;return this.forEachVertexPosition((n,r)=>{let i=e.getVertexPositionAsPointFromIndex(r);n.equals(i)||(t=!1)}),!!t}};e([a({value:null})],_.prototype,`areaMeasurement`,null),e([a({value:null})],_.prototype,`view`,null),e([a()],_.prototype,`isEmptyPolygon`,null),e([a()],_.prototype,`isValidPolygon`,null),e([a()],_.prototype,`extent`,null),e([a()],_.prototype,`spatialReference`,null),e([a()],_.prototype,`numVertices`,null),e([a()],_.prototype,`polygonIsClosed`,null),_=e([o(`esri.views.3d.analysis.AreaMeasurement.support.AreaMeasurementPathHelper`)],_);const v=new s;export{_ as AreaMeasurement3DPathHelper};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import t from"../../../../../core/Accessor.js";import{resizeFilled as n}from"../../../../../core/arrayUtils.js";import{deg2rad as r}from"../../../../../core/mathUtils.js";import{abortMaybe as i}from"../../../../../core/maybe.js";import{debounce as a,throwIfAborted as o,isPromiseLike as s}from"../../../../../core/promiseUtils.js";import{valueInUnit as c}from"../../../../../core/quantity.js";import{lengthUnitFromSpatialReference as l,areaUnitFromSpatialReference as u}from"../../../../../core/units.js";import{property as d}from"../../../../../core/accessorSupport/decorators/property.js";import{subclass as f}from"../../../../../core/accessorSupport/decorators/subclass.js";import{set as p}from"../../../../../core/libs/gl-matrix-2/math/vec2.js";import{create as m}from"../../../../../core/libs/gl-matrix-2/factories/vec2f64.js";import{copy as h,set as g,cross as _,subtract as v,dot as y,scale as b,add as x}from"../../../../../core/libs/gl-matrix-2/math/vec3.js";import{create as S}from"../../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{create as C}from"../../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{UpdatingHandles as w}from"../../../../../core/support/UpdatingHandles.js";import T from"../../../../../geometry/Polygon.js";import E from"../../../../../geometry/SpatialReference.js";import{isPCPF as D}from"../../../../../geometry/spatialReferenceEllipsoidUtils.js";import{projectDirection as O}from"../../../../../geometry/projection/projectDirection.js";import{projectPointToVector as k}from"../../../../../geometry/projection/projectPointToVector.js";import{projectVectorToVector as A}from"../../../../../geometry/projection/projectVectorToVector.js";import{Sphere as j}from"../../../../../geometry/support/sphere.js";import{bestFitPlane as M,planePointDistance as N,boundingSphere as P}from"../../support/measurementUtils.js";import{getElevationAtPoint as F}from"../../../support/ElevationProvider.js";import{midpoint3d as I,makeOrthonormal as L}from"../../../support/mathUtils.js";import{polygonToRenderInfoNotElevationAligned as R}from"../../../support/renderInfoUtils/polygon.js";import{GeometryWorkerHandle as z}from"../../../../support/GeometryWorkerHandle.js";import{computeEuclideanMeasurementSR as B}from"../../../../support/measurementUtils.js";import{autoMeasurementMode as V}from"../../../../support/measurementWorkerUtils.js";class H{constructor(e){this.positionsWorld=[],this.positionsRender=[],this.positionsFittedRender=[],this.triangleIndices=null,this.areaPolygon=new T({rings:[[]],spatialReference:e}),this.positionsFittedWorldPlaneProjected=this.areaPolygon.rings[0],this.trianglePositions=this.positionsFittedRender,this.triangleUvs=this.positionsFittedWorldPlaneProjected}}class U{constructor(e,t=null,n=null,r=null,i=null,a=null,o=null){this.mode=e,this.area=t,this.geodesicArea=n,this.perimeter=r,this.geodesicPerimeter=i,this.areaCentroidRenderCoords=a,this.geodesicAreaCentroidRenderCoords=o}}let W=class extends t{get numVertices(){return this._length}get hasStagedVertex(){return this._lastCursorPoint!=null}get fittingMode(){return this._fittingMode}get measurements(){return this._measurements}get updating(){return this._updatingHandles.updating}get renderSpatialReference(){return this.view.renderSpatialReference}get updateId(){return this._updateId}constructor(e){super(e),this._length=0,this._lastCursorPoint=null,this._lastPath=null,this._lastPathVersion=-1,this._lastMode=null,this._updatingHandles=new w,this._fittingMode=null,this._measurements=null,this._updateId=0,this._centroidRenderCoords=S(),this._planeWorldCoords=C(),this._worldUp=S(),this._worldTangent=S(),this._frame=[S(),S(),S()],this._worldOrigin=S(),this._updateAxisU=S(),this._updateAxisV=S(),this._updateWorldOrigin=S(),this._tempU=S(),this._tempV=S(),this._tempVec3=S(),this._tempSphere=new j,this._measurementWorker=new z({preloadGeodetic:!0}),this._retryAfterLoadScheduled=!1,this._updateAbortController=null,this._retryAfterTessellationLoad=()=>{if(this._retryAfterLoadScheduled=!1,this.destroyed)return;let e=this._lastPath,t=this._lastCursorPoint,n=this._lastMode;e&&n!=null&&this._update(e,t,n)},this._updateMeasurements=a(async(e,t,n,r)=>{let i=this.view.spatialReference,a=V(i)===0;h(this._updateAxisU,this._frame[0]),h(this._updateAxisV,this._frame[1]),h(this._updateWorldOrigin,this._worldOrigin);let s=(e,t)=>(e&&this.view.renderCoordsHelper.toRenderCoords(e,t)||g(t,0,0,0),t),c=e.areaMeasurement?.geometry,l=a&&t!==1&&c?await this._measurementWorker.geodeticLength(c,void 0,n):null;o(r);let u=this._calculateMode(t,l),d=u===`geodesic`,[f,p]=await Promise.all([d?null:this._measurementWorker.area2D(this.vertexData.areaPolygon,{unit:this._areaMeasurementUnit,lengthUnit:this._lengthMeasurementUnit,returnCentroid:!0,returnLength:!0}),d&&c?await this._measurementWorker.geodeticArea(c,{returnCentroid:!0},n):null]);o(r);let m=d?null:S();m&&f?.centroid&&this._projectWorldPlaneProjectedPointToRender(m,this._updateWorldOrigin,[f.centroid?.x??0,f.centroid?.y??0],this._updateAxisU,this._updateAxisV,this.view.renderSpatialReference,this._measurementSR);let _=p?.centroid?s(p.centroid,S()):null;this._measurements=new U(u,d?null:f?.area,d?p?.area:null,d?null:f?.length,d?l:null,d?null:m,d?_:null)});let t=B(e.view.spatialReference);this._measurementSR=t,this._lengthMeasurementUnit=l(t)??`meters`,this._areaMeasurementUnit=u(t)??`square-meters`;let n=D(t)?E.WebMercator:t;this.vertexData=new H(n)}destroy(){this._measurementWorker.destroy(),this._updatingHandles.destroy()}update(e,t,n){let r=this._lastPathVersion===e.version,i=t?t.equals(this._lastCursorPoint):this._lastCursorPoint==null,a=this._lastMode===n;return r&&a&&i?!1:(this._lastPath=e,this._lastPathVersion=e.version,this._lastCursorPoint=t,this._lastMode=n,this._update(e,t,n),!0)}_scheduleRetryAfterTessellationLoad(e){this._retryAfterLoadScheduled||(this._retryAfterLoadScheduled=!0,this._updatingHandles.consumePromise(e.then(()=>this._retryAfterTessellationLoad(),()=>{this._retryAfterLoadScheduled=!1})))}_update(e,t,n){let r=this._measurementSR,a=e.numVertices,o=t!=null&&!t.equals(e.lastPoint)&&!(a>2&&t.equals(e.firstPoint))&&!e.polygonIsClosed;o&&(a+=1);let s=!e.polygonIsClosed&&a>2,c=e.polygonIsClosed||s;this._resize(a);let{positionsWorld:l,positionsRender:u}=this.vertexData,d=(e,t)=>{G(this.view.elevationProvider,e),k(e,l[t],r),k(e,u[t],this.renderSpatialReference)};e.forEachVertexPosition((e,t)=>d(e,t)),o&&d(t,a-1),this.vertexData.areaPolygon.clearCache(),c?this._updateVertexData()&&(this._updateId++,this._updateAbortController??=new AbortController,this._updatingHandles.consumePromise(this._updateMeasurements(e,n,t,this._updateAbortController.signal))):(this._measurements=null,this.vertexData.triangleIndices=null,this._updateId++,this._updateAbortController=i(this._updateAbortController))}_resize(e){let{positionsWorld:t,positionsRender:r,positionsFittedWorldPlaneProjected:i,positionsFittedRender:a}=this.vertexData;n(t,e,S),n(r,e,S),n(i,e,m),n(a,e,S),this._length=e}_updateVertexData(){let e=this._measurementSR,t=this.view.renderCoordsHelper,{positionsWorld:n,positionsRender:r}=this.vertexData,i=this._planeWorldCoords,a=this._centroidRenderCoords;I(r,a),t.worldUpAtPosition(a,this._worldUp),t.worldBasisAtPosition(a,0,this._worldTangent),O(a,this._worldUp,this.renderSpatialReference,this._worldUp,e),O(a,this._worldTangent,this.renderSpatialReference,this._worldTangent,e),n.length>2&&M(n,i),this._fittingMode=this._selectFittingMode(i,n,this._worldUp,this.fittingSettings);let o=0;if(this._fittingMode===`horizontal`){let e=-1/0;r.forEach((n,i)=>{let a=t.getAltitude(r[i]);a>e&&(e=a,o=i)})}let{_worldOrigin:s}=this;h(this._worldOrigin,n[o]);let c=i,l=this._worldTangent;this._fittingMode===`horizontal`?c=this._worldUp:this._fittingMode===`vertical`&&(c=this._tempVec3,l=this._worldUp,L(i,this._worldUp,c));let u=this._frame[0],d=this._frame[1];h(this._frame[2],c),L(l,c,u),_(d,u,this._frame[2]);let{positionsFittedRender:f,positionsFittedWorldPlaneProjected:m}=this.vertexData,g=this._tempVec3;for(let t=0;t<this._length;++t){let r=m[t],i=f[t];v(g,n[t],s),p(r,y(u,g),y(d,g)),this._projectWorldPlaneProjectedPointToRender(i,s,r,u,d,this.renderSpatialReference,e)}return this._triangulate(new q(s,u,d,this.renderSpatialReference,e))}_triangulate(e){let{worldOrigin:t,axisU:r,axisV:i,renderSR:a,worldSR:o}=e,{areaPolygon:c}=this.vertexData,l=R(c);if(s(l))return this._scheduleRetryAfterTessellationLoad(l),!1;let u=l;if(u==null)return!0;let{positions:d,polygonIndices:f,vertexCount:h}=u,g=[],_=[];n(_,h,S),n(g,h,m);for(let e=0,n=0;e<d.length;e+=3,n++){let s=_[n],c=g[n];p(c,d[e],d[e+1]),this._projectWorldPlaneProjectedPointToRender(s,t,c,r,i,a,o)}return this.vertexData.trianglePositions=_,this.vertexData.triangleIndices=f,this.vertexData.triangleUvs=g,!0}_projectWorldPlaneProjectedPointToRender(e,t,n,r,i,a,o){let s=this._tempU,c=this._tempV;b(s,r,n[0]),b(c,i,n[1]),x(e,s,c),x(e,e,t),A(e,o,e,a)}_selectFittingMode(e,t,n,i){let a=t.map(t=>Math.abs(N(e,t))).reduce((e,t)=>Math.max(e,t),0);P(t,this._tempSphere);let o=a/(this._tempSphere.radius*2),s=o<i.maxRelativeErrorCoplanar,c=o<i.maxRelativeErrorAlmostCoplanar,l=`horizontal`;return s?l=`oblique`:c&&(l=Math.abs(y(n,e))>Math.cos(r(i.verticalAngleThreshold))?`horizontal`:`vertical`),l}_calculateMode(e,t){return t!=null&&e===0?c(t,`meters`)>K?`geodesic`:`euclidean`:t==null||e===1?`euclidean`:`geodesic`}};e([d()],W.prototype,`_measurements`,void 0),e([d()],W.prototype,`updating`,null),e([d()],W.prototype,`renderSpatialReference`,null),e([d()],W.prototype,`_updateId`,void 0),e([d()],W.prototype,`view`,void 0),e([d({constructOnly:!0})],W.prototype,`fittingSettings`,void 0),W=e([f(`esri.views.3d.analysis.AreaMeasurement.support.MeasurementData`)],W);function G(e,t){t.hasZ||(t.z=F(e,t,`ground`)??0)}const K=1e5;class q{constructor(e,t,n,r,i){this.worldOrigin=e,this.axisU=t,this.axisV=n,this.renderSR=r,this.worldSR=i}}export{U as AreaMeasurementQuantities,W as MeasurementData};
2
+ import{__decorate as e}from"tslib";import t from"../../../../../core/Accessor.js";import{resizeFilled as n}from"../../../../../core/arrayUtils.js";import{deg2rad as r}from"../../../../../core/mathUtils.js";import{abortMaybe as i}from"../../../../../core/maybe.js";import{debounce as a,throwIfAborted as o,isPromiseLike as s}from"../../../../../core/promiseUtils.js";import{valueInUnit as c}from"../../../../../core/quantity.js";import{lengthUnitFromSpatialReference as l,areaUnitFromSpatialReference as u}from"../../../../../core/units.js";import{property as d}from"../../../../../core/accessorSupport/decorators/property.js";import{subclass as f}from"../../../../../core/accessorSupport/decorators/subclass.js";import{set as p}from"../../../../../core/libs/gl-matrix-2/math/vec2.js";import{create as m}from"../../../../../core/libs/gl-matrix-2/factories/vec2f64.js";import{copy as h,set as g,cross as _,subtract as v,dot as y,scale as b,add as x}from"../../../../../core/libs/gl-matrix-2/math/vec3.js";import{create as S}from"../../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{create as C}from"../../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{UpdatingHandles as w}from"../../../../../core/support/UpdatingHandles.js";import T from"../../../../../geometry/Polygon.js";import E from"../../../../../geometry/SpatialReference.js";import{isPCPF as D}from"../../../../../geometry/spatialReferenceEllipsoidUtils.js";import{projectDirection as O}from"../../../../../geometry/projection/projectDirection.js";import{projectPointToVector as k}from"../../../../../geometry/projection/projectPointToVector.js";import{projectVectorToVector as A}from"../../../../../geometry/projection/projectVectorToVector.js";import{Sphere as j}from"../../../../../geometry/support/sphere.js";import{bestFitPlane as M,planePointDistance as N,boundingSphere as P}from"../../support/measurementUtils.js";import{getElevationAtPoint as F}from"../../../support/ElevationProvider.js";import{midpoint3d as I,makeOrthonormal as L}from"../../../support/mathUtils.js";import{polygonToRenderInfoNotElevationAligned as R}from"../../../support/renderInfoUtils/polygon.js";import{GeometryWorkerHandle as z}from"../../../../support/GeometryWorkerHandle.js";import{computeEuclideanMeasurementSR as B}from"../../../../support/measurementUtils.js";import{autoMeasurementMode as V}from"../../../../support/measurementWorkerUtils.js";class H{constructor(e){this.positionsWorld=[],this.positionsRender=[],this.positionsFittedRender=[],this.triangleIndices=null,this.areaPolygon=new T({rings:[[]],spatialReference:e}),this.positionsFittedWorldPlaneProjected=this.areaPolygon.rings[0],this.trianglePositions=this.positionsFittedRender,this.triangleUvs=this.positionsFittedWorldPlaneProjected}}class U{constructor(e,t=null,n=null,r=null,i=null,a=null,o=null){this.mode=e,this.area=t,this.geodesicArea=n,this.perimeter=r,this.geodesicPerimeter=i,this.areaCentroidRenderCoords=a,this.geodesicAreaCentroidRenderCoords=o}}let W=class extends t{get numVertices(){return this._length}get hasStagedVertex(){return this._lastCursorPoint!=null}get fittingMode(){return this._fittingMode}get measurements(){return this._measurements}get updating(){return this._updatingHandles.updating}get renderSpatialReference(){return this.view.renderSpatialReference}get updateId(){return this._updateId}constructor(e){super(e),this._length=0,this._lastCursorPoint=null,this._lastPath=null,this._lastPathVersion=-1,this._lastMode=null,this._updatingHandles=new w,this._fittingMode=null,this._measurements=null,this._updateId=0,this._centroidRenderCoords=S(),this._planeWorldCoords=C(),this._worldUp=S(),this._worldTangent=S(),this._frame=[S(),S(),S()],this._worldOrigin=S(),this._updateAxisU=S(),this._updateAxisV=S(),this._updateWorldOrigin=S(),this._tempU=S(),this._tempV=S(),this._tempVec3=S(),this._tempSphere=new j,this._measurementWorker=new z({preloadGeodetic:!0}),this._retryAfterLoadScheduled=!1,this._updateAbortController=null,this._retryAfterTessellationLoad=()=>{if(this._retryAfterLoadScheduled=!1,this.destroyed)return;let e=this._lastPath,t=this._lastCursorPoint,n=this._lastMode;e&&n!=null&&this._update(e,t,n)},this._updateMeasurements=a(async(e,t,n,r)=>{let i=this.view.spatialReference,a=V(i)===0;h(this._updateAxisU,this._frame[0]),h(this._updateAxisV,this._frame[1]),h(this._updateWorldOrigin,this._worldOrigin);let s=(e,t)=>(e&&this.view.renderCoordsHelper.toRenderCoords(e,t)||g(t,0,0,0),t),c=e.geometry,l=a&&t!==1&&c?await this._measurementWorker.geodeticLength(c,void 0,n):null;o(r);let u=this._calculateMode(t,l),d=u===`geodesic`,[f,p]=await Promise.all([d?null:this._measurementWorker.area2D(this.vertexData.areaPolygon,{unit:this._areaMeasurementUnit,lengthUnit:this._lengthMeasurementUnit,returnCentroid:!0,returnLength:!0}),d&&c?await this._measurementWorker.geodeticArea(c,{returnCentroid:!0},n):null]);o(r);let m=d?null:S();m&&f?.centroid&&this._projectWorldPlaneProjectedPointToRender(m,this._updateWorldOrigin,[f.centroid?.x??0,f.centroid?.y??0],this._updateAxisU,this._updateAxisV,this.view.renderSpatialReference,this._measurementSR);let _=p?.centroid?s(p.centroid,S()):null;this._measurements=new U(u,d?null:f?.area,d?p?.area:null,d?null:f?.length,d?l:null,d?null:m,d?_:null)});let t=B(e.view.spatialReference);this._measurementSR=t,this._lengthMeasurementUnit=l(t)??`meters`,this._areaMeasurementUnit=u(t)??`square-meters`;let n=D(t)?E.WebMercator:t;this.vertexData=new H(n)}destroy(){this._updateAbortController=i(this._updateAbortController),this._measurementWorker.destroy(),this._updatingHandles.destroy()}update(e,t,n){let r=this._lastPathVersion===e.version,i=t?t.equals(this._lastCursorPoint):this._lastCursorPoint==null,a=this._lastMode===n;return r&&a&&i?!1:(this._lastPath=e,this._lastPathVersion=e.version,this._lastCursorPoint=t,this._lastMode=n,this._update(e,t,n),!0)}_scheduleRetryAfterTessellationLoad(e){this._retryAfterLoadScheduled||(this._retryAfterLoadScheduled=!0,this._updatingHandles.consumePromise(e.then(()=>this._retryAfterTessellationLoad(),()=>{this._retryAfterLoadScheduled=!1})))}_update(e,t,n){let r=this._measurementSR,a=e.numVertices,o=t!=null&&!t.equals(e.lastPoint)&&!(a>2&&t.equals(e.firstPoint))&&!e.polygonIsClosed;o&&(a+=1);let s=!e.polygonIsClosed&&a>2,c=e.polygonIsClosed||s;this._resize(a);let{positionsWorld:l,positionsRender:u}=this.vertexData,d=(e,t)=>{G(this.view.elevationProvider,e),k(e,l[t],r),k(e,u[t],this.renderSpatialReference)};e.forEachVertexPosition((e,t)=>d(e,t)),o&&d(t,a-1),this.vertexData.areaPolygon.clearCache(),c?this._updateVertexData()&&(this._updateId++,this._updateAbortController=i(this._updateAbortController),this._updateAbortController=new AbortController,this._updatingHandles.consumePromise(this._updateMeasurements(e,n,t,this._updateAbortController.signal))):(this._measurements=null,this.vertexData.triangleIndices=null,this._updateId++,this._updateAbortController=i(this._updateAbortController))}_resize(e){let{positionsWorld:t,positionsRender:r,positionsFittedWorldPlaneProjected:i,positionsFittedRender:a}=this.vertexData;n(t,e,S),n(r,e,S),n(i,e,m),n(a,e,S),this._length=e}_updateVertexData(){let e=this._measurementSR,t=this.view.renderCoordsHelper,{positionsWorld:n,positionsRender:r}=this.vertexData,i=this._planeWorldCoords,a=this._centroidRenderCoords;I(r,a),t.worldUpAtPosition(a,this._worldUp),t.worldBasisAtPosition(a,0,this._worldTangent),O(a,this._worldUp,this.renderSpatialReference,this._worldUp,e),O(a,this._worldTangent,this.renderSpatialReference,this._worldTangent,e),n.length>2&&M(n,i),this._fittingMode=this._selectFittingMode(i,n,this._worldUp,this.fittingSettings);let o=0;if(this._fittingMode===`horizontal`){let e=-1/0;r.forEach((n,i)=>{let a=t.getAltitude(r[i]);a>e&&(e=a,o=i)})}let{_worldOrigin:s}=this;h(this._worldOrigin,n[o]);let c=i,l=this._worldTangent;this._fittingMode===`horizontal`?c=this._worldUp:this._fittingMode===`vertical`&&(c=this._tempVec3,l=this._worldUp,L(i,this._worldUp,c));let u=this._frame[0],d=this._frame[1];h(this._frame[2],c),L(l,c,u),_(d,u,this._frame[2]);let{positionsFittedRender:f,positionsFittedWorldPlaneProjected:m}=this.vertexData,g=this._tempVec3;for(let t=0;t<this._length;++t){let r=m[t],i=f[t];v(g,n[t],s),p(r,y(u,g),y(d,g)),this._projectWorldPlaneProjectedPointToRender(i,s,r,u,d,this.renderSpatialReference,e)}return this._triangulate(new q(s,u,d,this.renderSpatialReference,e))}_triangulate(e){let{worldOrigin:t,axisU:r,axisV:i,renderSR:a,worldSR:o}=e,{areaPolygon:c}=this.vertexData,l=R(c);if(s(l))return this._scheduleRetryAfterTessellationLoad(l),!1;let u=l;if(u==null)return!0;let{positions:d,polygonIndices:f,vertexCount:h}=u,g=[],_=[];n(_,h,S),n(g,h,m);for(let e=0,n=0;e<d.length;e+=3,n++){let s=_[n],c=g[n];p(c,d[e],d[e+1]),this._projectWorldPlaneProjectedPointToRender(s,t,c,r,i,a,o)}return this.vertexData.trianglePositions=_,this.vertexData.triangleIndices=f,this.vertexData.triangleUvs=g,!0}_projectWorldPlaneProjectedPointToRender(e,t,n,r,i,a,o){let s=this._tempU,c=this._tempV;b(s,r,n[0]),b(c,i,n[1]),x(e,s,c),x(e,e,t),A(e,o,e,a)}_selectFittingMode(e,t,n,i){let a=t.map(t=>Math.abs(N(e,t))).reduce((e,t)=>Math.max(e,t),0);P(t,this._tempSphere);let o=a/(this._tempSphere.radius*2),s=o<i.maxRelativeErrorCoplanar,c=o<i.maxRelativeErrorAlmostCoplanar,l=`horizontal`;return s?l=`oblique`:c&&(l=Math.abs(y(n,e))>Math.cos(r(i.verticalAngleThreshold))?`horizontal`:`vertical`),l}_calculateMode(e,t){return t!=null&&e===0?c(t,`meters`)>K?`geodesic`:`euclidean`:t==null||e===1?`euclidean`:`geodesic`}};e([d()],W.prototype,`_measurements`,void 0),e([d()],W.prototype,`updating`,null),e([d()],W.prototype,`renderSpatialReference`,null),e([d()],W.prototype,`_updateId`,void 0),e([d()],W.prototype,`view`,void 0),e([d({constructOnly:!0})],W.prototype,`fittingSettings`,void 0),W=e([f(`esri.views.3d.analysis.AreaMeasurement.support.MeasurementData`)],W);function G(e,t){t.hasZ||(t.z=F(e,t,`ground`)??0)}const K=1e5;class q{constructor(e,t,n,r,i){this.worldOrigin=e,this.axisU=t,this.axisV=n,this.renderSR=r,this.worldSR=i}}export{U as AreaMeasurementQuantities,W as MeasurementData};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import t from"../../../../core/Accessor.js";import n from"../../../../core/Logger.js";import{debounce as r}from"../../../../core/promiseUtils.js";import{toUnit as i}from"../../../../core/quantity.js";import{watch as a,syncAndInitial as o}from"../../../../core/reactiveUtils.js";import{adaptiveLengthUnit as s,adaptiveVerticalLengthUnit as c}from"../../../../core/units.js";import{property as l,subclass as u}from"../../../../core/accessorSupport/decorators.js";import{UpdatingHandles as d}from"../../../../core/support/UpdatingHandles.js";import{applyProjectionAndElevationAlignment as f,logFailedGeometryProjectionError as p}from"../support/projectionUtils.js";import{euclideanDistanceBetweenPoints as m}from"../../../support/euclideanLengthMeasurementUtils.js";import{GeometryWorkerHandle as h}from"../../../support/GeometryWorkerHandle.js";import{autoMeasurementMode as g}from"../../../support/measurementWorkerUtils.js";let _=class extends t{get updating(){return this._updatingHandles.updating}constructor(e){super(e),this._updatingHandles=new d,this._measurementWorker=new h({preloadGeodetic:!0}),this._computeResultDebounced=r(async({elevationAlignedStartPoint:e,elevationAlignedEndPoint:t,measurementMode:n,unit:r})=>{if(e==null||t==null)return null;let a=m(e,t);if(!a)return null;let o=n===1?`euclidean`:n===2||g(this.view.spatialReference)===0?`geodesic`:`euclidean`,l=o===`geodesic`?await this._measurementWorker.geodeticDistanceBetweenPoints(e,t):a?.horizontal,{direct:u,vertical:d}=a,f=s(u.value,u.unit,r),p=s(l.value,l.unit,r),h=c(d.value,d.unit,r);return{mode:o,directDistance:i(u,f),horizontalDistance:i(l,p),verticalDistance:i(d,h)}})}initialize(){this.addHandles([a(()=>({viewData:this.viewData,startPoint:this.analysis.startPoint}),({viewData:e,startPoint:t})=>{e.elevationAlignedStartPoint=this._applyProjectionAndElevationAlignment(t)},o),a(()=>({viewData:this.viewData,endPoint:this.analysis.endPoint}),({viewData:e,endPoint:t})=>{e.elevationAlignedEndPoint=this._applyProjectionAndElevationAlignment(t)},o),a(()=>{let{elevationAlignedStartPoint:e,elevationAlignedEndPoint:t,measurementMode:n,unit:r}=this.viewData;return{elevationAlignedStartPoint:e,elevationAlignedEndPoint:t,measurementMode:n,unit:r}},e=>{this._updatingHandles.consumePromise(this._computeResultDebounced(e).then(e=>{this.viewData.result=e}))},o)])}destroy(){this._updatingHandles.destroy(),this._measurementWorker.destroy()}_applyProjectionAndElevationAlignment(e){if(e==null)return e;let{spatialReference:t,elevationProvider:r}=this.view;return f(e,t,r)??(p(this.analysis,e.spatialReference,n.getLogger(this)),null)}};e([l({constructOnly:!0})],_.prototype,`view`,void 0),e([l({constructOnly:!0})],_.prototype,`analysis`,void 0),e([l({constructOnly:!0})],_.prototype,`viewData`,void 0),_=e([u(`esri.views.3d.analysis.DirectLineMeasurement.DirectLineMeasurementController`)],_);export{_ as DirectLineMeasurementController};
2
+ import{__decorate as e}from"tslib";import t from"../../../../core/Accessor.js";import n from"../../../../core/Logger.js";import{debounce as r}from"../../../../core/promiseUtils.js";import{toUnit as i}from"../../../../core/quantity.js";import{watch as a,syncAndInitial as o}from"../../../../core/reactiveUtils.js";import{adaptiveLengthUnit as s,adaptiveVerticalLengthUnit as c}from"../../../../core/units.js";import{property as l,subclass as u}from"../../../../core/accessorSupport/decorators.js";import{UpdatingHandles as d}from"../../../../core/support/UpdatingHandles.js";import{applyProjectionAndElevationAlignment as f,logFailedGeometryProjectionError as p}from"../support/projectionUtils.js";import{createElevationUpdateHandle as m}from"../../support/elevationUpdateUtils.js";import{euclideanDistanceBetweenPoints as h}from"../../../support/euclideanLengthMeasurementUtils.js";import{GeometryWorkerHandle as g}from"../../../support/GeometryWorkerHandle.js";import{autoMeasurementMode as _}from"../../../support/measurementWorkerUtils.js";let v=class extends t{get updating(){return this._updatingHandles.updating}constructor(e){super(e),this._updatingHandles=new d,this._measurementWorker=new g({preloadGeodetic:!0}),this._computationId=0,this._computeResultDebounced=r(async({elevationAlignedStartPoint:e,elevationAlignedEndPoint:t,measurementMode:n,unit:r})=>{if(e==null||t==null)return null;let a=h(e,t);if(!a)return null;let o=n===1?`euclidean`:n===2||_(this.view.spatialReference)===0?`geodesic`:`euclidean`,l=o===`geodesic`?await this._measurementWorker.geodeticDistanceBetweenPoints(e,t):a?.horizontal,{direct:u,vertical:d}=a,f=s(u.value,u.unit,r),p=s(l.value,l.unit,r),m=c(d.value,d.unit,r);return{mode:o,directDistance:i(u,f),horizontalDistance:i(l,p),verticalDistance:i(d,m)}})}initialize(){for(let[e,t]of[[`startPoint`,`elevationAlignedStartPoint`],[`endPoint`,`elevationAlignedEndPoint`]]){let n=()=>{this.viewData[t]=this._applyProjectionAndElevationAlignment(this.analysis[e])};this.addHandles([a(()=>this.analysis[e],n,o),m({view:this.view,geometry:()=>{let t=this.analysis[e];return t?.hasZ?null:t},context:`ground`,onElevationChanges:n})])}this.addHandles([a(()=>{let{elevationAlignedStartPoint:e,elevationAlignedEndPoint:t,measurementMode:n,unit:r}=this.viewData;return{elevationAlignedStartPoint:e,elevationAlignedEndPoint:t,measurementMode:n,unit:r}},e=>{let t=++this._computationId;this._updatingHandles.consumePromise(this._computeResultDebounced(e).then(e=>{!this.destroyed&&t===this._computationId&&(this.viewData.result=e)}))},o)])}destroy(){this._updatingHandles.destroy(),this._measurementWorker.destroy()}_applyProjectionAndElevationAlignment(e){if(e==null)return e;let{spatialReference:t,elevationProvider:r}=this.view;return f(e,t,r)??(p(this.analysis,e.spatialReference,n.getLogger(this)),null)}};e([l({constructOnly:!0})],v.prototype,`view`,void 0),e([l({constructOnly:!0})],v.prototype,`analysis`,void 0),e([l({constructOnly:!0})],v.prototype,`viewData`,void 0),v=e([u(`esri.views.3d.analysis.DirectLineMeasurement.DirectLineMeasurementController`)],v);export{v as DirectLineMeasurementController};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import{tryProject as e}from"../../../../geometry/projectionUtils.js";import{getElevationAtPoint as t}from"../../support/ElevationProvider.js";function n(n,r,i,a=!1){let o=e(n,r);return o==null?null:((!o.hasZ||a)&&i!=null&&(o.z=t(i,o)??0),o)}function r(e,t,n){n.warnOnce(`Failed to project analysis geometry (id: '${e.id}'), projection from spatial reference (wkid: '${t.wkid}') to view spatial reference is not supported. Projection may be possible after calling projectOperator.load().`)}export{n as applyProjectionAndElevationAlignment,r as logFailedGeometryProjectionError};
2
+ import{tryProject as e}from"../../../../geometry/projectionUtils.js";import{getElevationAtPoint as t}from"../../support/ElevationProvider.js";function n(n,r,i,a=!1){let o=e(n,r);return o==null?null:((!o.hasZ||a)&&i!=null&&(o.z=t(i,o)??0),o)}function r(t,n,r){let i=e(t,n);if(i==null||t.hasZ)return i;for(let e of i.rings)for(let t of e){let e=r.getElevation(t[0],t[1],0,i.spatialReference,`ground`)??0;t.splice(2,+!!i.hasZ,e)}return i.hasZ=!0,i}function i(e,t,n){n.warnOnce(`Failed to project analysis geometry (id: '${e.id}'), projection from spatial reference (wkid: '${t.wkid}') to view spatial reference is not supported. Projection may be possible after calling projectOperator.load().`)}export{r as applyPolygonProjectionAndElevationAlignment,n as applyProjectionAndElevationAlignment,i as logFailedGeometryProjectionError};