@arcgis/core 6.0.0-next.37 → 6.0.0-next.39

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 (248) hide show
  1. package/analysis/DimensionAnalysis.js +1 -1
  2. package/analysis/DimensionSimpleStyle.js +1 -1
  3. package/analysis/LengthDimension.js +1 -1
  4. package/analysis/LineOfSightAnalysis.js +1 -1
  5. package/analysis/LineOfSightAnalysisTarget.js +1 -1
  6. package/analysis/Viewshed.js +1 -1
  7. package/analysis/ViewshedAnalysis.js +1 -1
  8. package/assets/esri/core/workers/RemoteClient.js +1 -1
  9. package/assets/esri/core/workers/chunks/02940f7ddaf98e69521e.js +1 -0
  10. package/assets/esri/core/workers/chunks/{9503eedfdda55fc5adab.js → 091ec4fe83038f3558f4.js} +1 -1
  11. package/assets/esri/core/workers/chunks/{322b22a5d54e404bebd5.js → 0c893837f67829757df7.js} +1 -1
  12. package/assets/esri/core/workers/chunks/123541f79be7adff0818.js +1 -0
  13. package/assets/esri/core/workers/chunks/{155861fbd0e5fc2db80c.js → 1a91443970d64a59521d.js} +1 -1
  14. package/assets/esri/core/workers/chunks/1e37337f47f45d6d8005.js +1 -0
  15. package/assets/esri/core/workers/chunks/{4e5405134d079bdf9b7a.js → 1f76f6dcdae9f55389cb.js} +1 -1
  16. package/assets/esri/core/workers/chunks/396299c22994c502e41c.js +1 -0
  17. package/assets/esri/core/workers/chunks/{03daf6f235c6edef6268.js → 398ec098fffe6abceedd.js} +1 -1
  18. package/assets/esri/core/workers/chunks/3b32a24488b3068f0cb7.js +1 -0
  19. package/assets/esri/core/workers/chunks/3b5e9e0b180dc10491ec.js +1 -0
  20. package/assets/esri/core/workers/chunks/46edd6c9ed6701e6b975.js +1 -0
  21. package/assets/esri/core/workers/chunks/{8b0d5551978ab0aac0d1.js → 520f499d79fa71f262c7.js} +1 -1
  22. package/assets/esri/core/workers/chunks/5473409fee59db80f87d.js +1 -0
  23. package/assets/esri/core/workers/chunks/553a8bf5bc5c56d1bcaf.js +1 -0
  24. package/assets/esri/core/workers/chunks/{2211ff0a1f1ae8100231.js → 585ae43c7bcb86a26762.js} +1 -1
  25. package/assets/esri/core/workers/chunks/58716a3a6106a1b0fb9d.js +1 -0
  26. package/assets/esri/core/workers/chunks/{aa6ee2aa4ff6e6d41efb.js → 5882f349f3771868e67f.js} +1 -1
  27. package/assets/esri/core/workers/chunks/{1b17f5f720f6cf3f6d73.js → 5be386b3af867b19ff39.js} +1 -1
  28. package/assets/esri/core/workers/chunks/{ea81f9d71b0842a4be26.js → 5e48898cebb6dbaf09b5.js} +1 -1
  29. package/assets/esri/core/workers/chunks/{139e753d95cfc9470e74.js → 6a65fc1a2931230fe994.js} +1 -1
  30. package/assets/esri/core/workers/chunks/{3e406043a374ee17475b.js → 6f2e7e663229b223b4df.js} +1 -1
  31. package/assets/esri/core/workers/chunks/76e80381fa6d1e084796.js +1 -0
  32. package/assets/esri/core/workers/chunks/{3b380e64566a6cce59e2.js → 7e0ed6e8f7b77e43f628.js} +1 -1
  33. package/assets/esri/core/workers/chunks/8c3779de09291170497f.js +1 -0
  34. package/assets/esri/core/workers/chunks/8e391b5b82429f39791e.js +1 -0
  35. package/assets/esri/core/workers/chunks/947f3a1cad976bba9738.js +1 -0
  36. package/assets/esri/core/workers/chunks/{59a1b637d2c107504a04.js → 966204d6dedc8149c3e9.js} +1 -1
  37. package/assets/esri/core/workers/chunks/ac107079342251a984dd.js +1 -0
  38. package/assets/esri/core/workers/chunks/{572aec57593a08b8045b.js → b15a8d4322f3b7819d2f.js} +1 -1
  39. package/assets/esri/core/workers/chunks/{552c36b40e5a5ec117fb.js → b472c0a21ae29e653f7d.js} +1 -1
  40. package/assets/esri/core/workers/chunks/bdd76a0b6c14e7fb6984.js +1 -0
  41. package/assets/esri/core/workers/chunks/{f372f4eb5527238c46f5.js → c31830ee897d5a7f2582.js} +1 -1
  42. package/assets/esri/core/workers/chunks/c48d97c38e821be17dc5.js +1 -0
  43. package/assets/esri/core/workers/chunks/{0a508e25ec05363e1f04.js → c7ad62f54d2abe1d17a0.js} +1 -1
  44. package/assets/esri/core/workers/chunks/cb1642ea8b66231cbfb5.js +1 -0
  45. package/assets/esri/core/workers/chunks/cf21b217b13770757cb8.js +1 -0
  46. package/assets/esri/core/workers/chunks/d42a4f47843e075c56a8.js +1 -0
  47. package/assets/esri/core/workers/chunks/e2430bc3a1edeb5c3266.js +1 -0
  48. package/assets/esri/core/workers/chunks/e9457a67befc61e11095.js +1 -0
  49. package/assets/esri/core/workers/chunks/f06ef153e106b26a6748.js +1 -0
  50. package/assets/esri/core/workers/chunks/faae3c43048b42341536.js +1 -0
  51. package/assets/esri/core/workers/chunks/fd967a9f3cf0e2890dbb.js +1 -0
  52. package/chunks/h.js +2 -0
  53. package/chunks/projector.js +2 -0
  54. package/config.js +1 -1
  55. package/core/sanitizerUtils.js +1 -1
  56. package/form/FormTemplate.js +1 -1
  57. package/form/elements/Element.js +1 -1
  58. package/form/elements/FieldElement.js +1 -1
  59. package/geometry/ellipsoidUtils.js +4 -4
  60. package/geometry/support/frustumPlanes.js +1 -1
  61. package/geometry/support/plane.js +1 -1
  62. package/geometry/support/triangle.js +1 -1
  63. package/kernel.js +1 -1
  64. package/layers/GraphicsLayer.js +1 -1
  65. package/layers/Lyr3DWasmPerSceneView.js +1 -1
  66. package/layers/geospatialPDF/geospatialPDFParserUtils.js +1 -1
  67. package/layers/geospatialPDF/support/datumUtils.js +2 -0
  68. package/layers/geospatialPDF/support/ellipsoidUtils.js +2 -0
  69. package/layers/geospatialPDF/support/geographicProjectionUtils.js +2 -0
  70. package/layers/geospatialPDF/support/parameterUtils.js +2 -0
  71. package/layers/geospatialPDF/support/projectedProjectionUtils.js +3 -0
  72. package/layers/geospatialPDF/support/projectionToSpatialReference.js +2 -0
  73. package/layers/geospatialPDF/support/statePlaneUtils.js +2 -0
  74. package/layers/geospatialPDF/support/unitUtils.js +2 -0
  75. package/layers/geospatialPDF/support/validateProjectionUtils.js +2 -0
  76. package/layers/graphics/sources/support/clientSideDefaults.js +2 -2
  77. package/layers/knowledgeGraph/KnowledgeGraphSublayer.js +1 -1
  78. package/layers/ogc/ogcFeatureUtils.js +1 -1
  79. package/layers/save/imageryUtils.js +1 -1
  80. package/layers/save/mediaLayerUtils.js +1 -1
  81. package/layers/save/streamLayerUtils.js +1 -1
  82. package/layers/support/ControlPoint.js +1 -1
  83. package/layers/support/ControlPointsGeoreference.js +1 -1
  84. package/layers/support/DimensionalDefinition.js +1 -1
  85. package/layers/support/LabelClass.js +1 -1
  86. package/layers/support/LabelExpressionInfo.js +1 -1
  87. package/layers/support/MediaElementBase.js +1 -1
  88. package/layers/support/MosaicRule.js +1 -1
  89. package/layers/support/MultidimensionalSubset.js +1 -1
  90. package/layers/support/RasterBandInfo.js +1 -1
  91. package/layers/support/RasterFunction.js +1 -1
  92. package/layers/support/RasterFunctionTemplate.js +1 -1
  93. package/layers/support/RasterInfo.js +1 -1
  94. package/layers/support/RasterSensorInfo.js +1 -1
  95. package/layers/support/RasterStorageInfo.js +1 -1
  96. package/layers/support/VideoElement.js +1 -1
  97. package/layers/support/layersLoader.js +1 -1
  98. package/legend/ActiveLayerInfo.d.ts +5 -1
  99. package/legend/ActiveLayerInfo.js +1 -1
  100. package/libs/maquette-advanced-projector/projector.js +1 -1
  101. package/linkChart/LayoutSettings.js +1 -1
  102. package/linkChart/RootedLayoutSettings.js +1 -1
  103. package/package.json +2 -2
  104. package/renderers/FlowRenderer.js +1 -1
  105. package/renderers/RasterColormapRenderer.js +1 -1
  106. package/renderers/RasterShadedReliefRenderer.js +1 -1
  107. package/renderers/RasterStretchRenderer.js +1 -1
  108. package/renderers/VectorFieldRenderer.js +1 -1
  109. package/renderers/support/ColormapInfo.js +1 -1
  110. package/renderers/support/RasterPresetRenderer.js +1 -1
  111. package/renderers/support/rasterRendererHelper.js +1 -1
  112. package/rest/knowledgeGraph/GraphApplyEdits.js +1 -1
  113. package/rest/support/BaseImageMeasureParameters.js +1 -1
  114. package/rest/support/BaseImageMeasureResult.js +1 -1
  115. package/rest/support/FindImagesParameters.js +1 -1
  116. package/rest/support/FindImagesResult.js +1 -1
  117. package/rest/support/ImageAngleParameters.js +1 -1
  118. package/rest/support/ImageAngleResult.js +1 -1
  119. package/rest/support/ImageAreaParameters.js +1 -1
  120. package/rest/support/ImageAreaResult.js +1 -1
  121. package/rest/support/ImageBoundaryParameters.js +1 -1
  122. package/rest/support/ImageBoundaryResult.js +1 -1
  123. package/rest/support/ImageDistanceParameters.js +1 -1
  124. package/rest/support/ImageDistanceResult.js +1 -1
  125. package/rest/support/ImageGPSInfoParameters.js +1 -1
  126. package/rest/support/ImageGPSInfoResult.js +1 -1
  127. package/rest/support/ImageHeightParameters.js +1 -1
  128. package/rest/support/ImageHeightResult.js +1 -1
  129. package/rest/support/ImageHistogramParameters.js +1 -1
  130. package/rest/support/ImageIdentifyParameters.js +1 -1
  131. package/rest/support/ImageIdentifyResult.js +1 -1
  132. package/rest/support/ImagePixelLocationParameters.js +1 -1
  133. package/rest/support/ImagePixelLocationResult.js +1 -1
  134. package/rest/support/ImagePointParameters.js +1 -1
  135. package/rest/support/ImagePointResult.js +1 -1
  136. package/rest/support/ImageSample.js +1 -1
  137. package/rest/support/ImageSampleParameters.js +1 -1
  138. package/rest/support/ImageSampleResult.js +1 -1
  139. package/rest/support/ImageToMapMultirayParameters.js +1 -1
  140. package/rest/support/ImageToMapParameters.js +1 -1
  141. package/rest/support/ImageUrlParameters.js +1 -1
  142. package/rest/support/ImageUrlResult.js +1 -1
  143. package/rest/support/ImageVolumeParameters.js +1 -1
  144. package/rest/support/ImageVolumeResult.js +1 -1
  145. package/rest/support/MapToImageParameters.js +1 -1
  146. package/rest/support/MeasureAreaFromImageResult.js +1 -1
  147. package/rest/support/MeasureFromImageParameters.js +1 -1
  148. package/rest/support/MeasureLengthFromImageResult.js +1 -1
  149. package/symbols/support/cimSymbolUtils.js +1 -1
  150. package/symbols/support/renderUtils.js +1 -1
  151. package/views/2d/ViewState.d.ts +3 -3
  152. package/views/2d/ViewState.js +1 -1
  153. package/views/2d/ViewStateManager.js +1 -1
  154. package/views/2d/engine/vectorTiles/decluttering/CollisionJob.js +1 -1
  155. package/views/2d/engine/vectorTiles/style/geoJSONVectorTileUtils.js +1 -1
  156. package/views/2d/engine/webgl/collisions/LabelMetric.js +1 -1
  157. package/views/2d/engine/webgl/collisions/LabelStore.js +1 -1
  158. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AAnimatedShader.js +1 -1
  159. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AnimatedMarkerShader.js +1 -1
  160. package/views/2d/engine/webgl/shaderGraph/techniques/labels/LabelMeshWriter.js +1 -1
  161. package/views/2d/engine/webgl/shaderGraph/techniques/markers/MarkerShader.js +1 -1
  162. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/AFeatureShader.js +1 -1
  163. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/FillShader.js +1 -1
  164. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/LineShader.js +1 -1
  165. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/OutlineFillShader.js +1 -1
  166. package/views/2d/engine/webgl/shaderGraph/techniques/text/TextShader.js +1 -1
  167. package/views/2d/engine/webgl/util/IntervalMatcher.js +1 -1
  168. package/views/3d/FocusAreasView.js +1 -1
  169. package/views/3d/GroundView3D.js +1 -1
  170. package/views/3d/layers/GaussianSplatLayerView3D.js +1 -1
  171. package/views/3d/layers/graphics/Graphics3DSymbol.js +1 -1
  172. package/views/3d/layers/i3s/I3SBinaryReader.js +1 -1
  173. package/views/3d/state/ConstraintsManager.js +1 -1
  174. package/views/3d/state/ViewState.js +1 -1
  175. package/views/3d/state/ViewStateManager.js +1 -1
  176. package/views/3d/support/gaussianSplatting/GaussianSplatFadeHelper.js +1 -1
  177. package/views/3d/support/gaussianSplatting/GaussianTileLifecycle.js +2 -0
  178. package/views/3d/terrain/OverlayManager.js +1 -1
  179. package/views/3d/terrain/OverlayRenderer.js +1 -1
  180. package/views/3d/terrain/TerrainRenderer.js +1 -1
  181. package/views/3d/terrain/TerrainSurface.js +1 -1
  182. package/views/3d/terrain/Tile.js +1 -1
  183. package/views/3d/terrain/tileUtils.js +1 -1
  184. package/views/3d/webgl-engine/core/shaderLibrary/shading/readShadow.glsl.js +1 -1
  185. package/views/3d/webgl-engine/effects/WeatherFader.js +1 -1
  186. package/views/3d/webgl-engine/effects/debug/RenderNodeVisualizerNode.js +19 -9
  187. package/views/3d/webgl-engine/effects/highlight/Highlight.js +1 -1
  188. package/views/3d/webgl-engine/lib/GeometryUtil.js +1 -1
  189. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  190. package/views/3d/webgl-engine/lib/geometryDataUtils.js +1 -1
  191. package/views/3d/webgl-engine/lib/screenPolygonOverlapUtils.js +1 -1
  192. package/views/3d/webgl-engine/lib/screenPolygonTriangleIntersections.js +1 -1
  193. package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
  194. package/views/3d/webgl-engine/materials/HUDMaterialBaseInstance.js +1 -1
  195. package/views/3d/webgl-engine/materials/LineMarkerMaterial.js +1 -1
  196. package/views/3d/webgl-engine/materials/internal/bufferWriterUtils.js +1 -1
  197. package/views/3d/webgl-engine/materials/internal/lineMarkerBufferUtils.js +1 -1
  198. package/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js +1 -1
  199. package/views/3d/webgl-engine/shaders/HUDMaterialTechnique.js +1 -1
  200. package/views/3d/webgl-engine/shaders/LineMarkerTechnique.js +1 -1
  201. package/views/3d/webgl-engine/shaders/hudMaterialLayouts.js +2 -0
  202. package/views/3d/webgl-engine/shaders/lineMarkerLayouts.js +2 -0
  203. package/views/overlay/LineOverlayItem.js +1 -1
  204. package/views/overlay/TextOverlayItem.js +1 -1
  205. package/views/overlay/ViewOverlay.js +1 -1
  206. package/views/support/GroundElevationSampler.js +1 -1
  207. package/views/support/HighlightOptions.d.ts +2 -2
  208. package/views/support/HighlightOptions.js +1 -1
  209. package/views/webgl/Util.js +1 -1
  210. package/views/webgl/textureUtils.js +1 -1
  211. package/widgets/FeatureTable/Grid/Grid.js +1 -1
  212. package/widgets/Legend/styles/support/univariateUtils.js +1 -1
  213. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  214. package/widgets/OrientedImageryViewer.js +1 -1
  215. package/assets/esri/core/workers/chunks/01f55004d64309f8538b.js +0 -1
  216. package/assets/esri/core/workers/chunks/0d99bfb75dcb9fa29080.js +0 -1
  217. package/assets/esri/core/workers/chunks/144bad0c2415c345736a.js +0 -1
  218. package/assets/esri/core/workers/chunks/165ca7a97b611c8f26c4.js +0 -1
  219. package/assets/esri/core/workers/chunks/1989410a618865f02dec.js +0 -1
  220. package/assets/esri/core/workers/chunks/2f9072563194026e320e.js +0 -1
  221. package/assets/esri/core/workers/chunks/338d800d4efcc91cead1.js +0 -1
  222. package/assets/esri/core/workers/chunks/3415531224f8494d79ca.js +0 -1
  223. package/assets/esri/core/workers/chunks/59a88dd53f8806bbec06.js +0 -1
  224. package/assets/esri/core/workers/chunks/5aeb5e18514644fe2cf9.js +0 -1
  225. package/assets/esri/core/workers/chunks/6edc13a426e00bb93a9b.js +0 -1
  226. package/assets/esri/core/workers/chunks/7862abd24fb5c3b12e6b.js +0 -1
  227. package/assets/esri/core/workers/chunks/8a3dfe997712dc2ddead.js +0 -1
  228. package/assets/esri/core/workers/chunks/8f82a0a6747f673a2a7e.js +0 -1
  229. package/assets/esri/core/workers/chunks/934e1f2153e6fad6ed23.js +0 -1
  230. package/assets/esri/core/workers/chunks/b25a05c58b0fd0f6ac60.js +0 -1
  231. package/assets/esri/core/workers/chunks/c7adb7b77721c75891f4.js +0 -1
  232. package/assets/esri/core/workers/chunks/cd55cad81accf51d2989.js +0 -1
  233. package/assets/esri/core/workers/chunks/ce324dde6d7daea33638.js +0 -1
  234. package/assets/esri/core/workers/chunks/d3412518a7b518860fbb.js +0 -1
  235. package/assets/esri/core/workers/chunks/dac69c0047488fdf986d.js +0 -1
  236. package/assets/esri/core/workers/chunks/dba5f44c4e4a3f075df2.js +0 -1
  237. package/assets/esri/core/workers/chunks/e67ea2f1714e5abeae44.js +0 -1
  238. package/assets/esri/core/workers/chunks/eed4b90494a54f8b337b.js +0 -1
  239. package/assets/esri/core/workers/chunks/f10c883eb26330e3421c.js +0 -1
  240. package/layers/geospatialPDF/projectionToWKTUtils.js +0 -3
  241. package/libs/maquette/cache.js +0 -2
  242. package/libs/maquette/dom.js +0 -2
  243. package/libs/maquette/h.js +0 -2
  244. package/libs/maquette/index.js +0 -2
  245. package/libs/maquette/mapping.js +0 -2
  246. package/libs/maquette/projection.js +0 -2
  247. package/libs/maquette/projector.js +0 -2
  248. package/libs/maquette/utilities/window-performance-projector-logger.js +0 -2
@@ -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"../Color.js";import{addTokenParameter as n}from"../kernel.js";import r from"../request.js";import i from"../core/Accessor.js";import{isSome as a}from"../core/arrayUtils.js";import o from"../core/Collection.js";import{getColorWithEmissiveStrength as s}from"../core/colorUtils.js";import{JSONMap as c}from"../core/jsonMap.js";import l from"../core/Logger.js";import{clamp as u}from"../core/mathUtils.js";import{debounce as d}from"../core/promiseUtils.js";import{on as f,watch as p,initial as m,whenOnce as h}from"../core/reactiveUtils.js";import{px2pt as g}from"../core/screenUtils.js";import{parseWhereClause as _,sqlName as v,sqlLiteral as y}from"../core/sql.js";import{addQueryParameters as ee}from"../core/urlUtils.js";import{property as b,subclass as te}from"../core/accessorSupport/decorators.js";import{runUntracked as x}from"../core/accessorSupport/tracking.js";import{EffectView as ne}from"../layers/effects/EffectView.js";import{getPixelValueRange as re}from"../layers/raster/formats/pixelRangeUtils.js";import{getEffectiveDisplayFilter as ie}from"../layers/support/displayFilterUtils.js";import{ExportImageParameters as ae}from"../layers/support/ExportImageParameters.js";import{collectFields as oe,collectArcadeFieldNames as se}from"../layers/support/fieldUtils.js";import{isFeatureLayer as ce,getFieldConfigurationsContainer as le}from"../layers/support/layerUtils.js";import{getEffectiveClusterSizeVariable as ue}from"./support/clusterUtils.js";import{getColorFromPointCloudStops as de,getRampStopsForPointCloud as fe,getStretchRampStops as pe,getRampStops as S}from"./support/colorRampUtils.js";import{getHeatmapRampStops as me}from"./support/heatmapRampUtils.js";import{getRelationshipRampElement as he,getRotationAngleForFocus as ge}from"./support/relationshipRampUtils.js";import{getRampStops as _e,realWorldMaxSize as ve,realWorldMinSize as ye}from"./support/sizeRampUtils.js";import{specialCharsLessThan as be,specialCharsGreaterThan as xe,getAuthoringInfoVisualVariableByTheme as C,getSymbolForFlowRenderer as Se,formatValue as w,getFormatOptions as T,mergeWhereClauses as Ce,getMedianColor as E,rgbImgSource as we,getFormatOptionsForVisualVariable as Te}from"./support/utils.js";import{fromJSON as Ee}from"../renderers/support/jsonUtils.js";import{isSupportedRenderer3D as De}from"../renderers/support/rendererConversion.js";import{getScaleDependentSymbol as D}from"../renderers/support/scaleDependentSymbolUtils.js";import Oe from"../renderers/visualVariables/SizeVariable.js";import ke from"../renderers/visualVariables/support/SizeVariableLegendOptions.js";import{updateReferenceSizeSymbol as Ae}from"../smartMapping/renderers/support/referenceSizeUtils.js";import O from"../symbols/SimpleFillSymbol.js";import k from"../symbols/SimpleMarkerSymbol.js";import{applyCIMSymbolColor as je}from"../symbols/support/cimSymbolUtils.js";import{renderSymbol as Me}from"../symbols/support/renderUtils.js";import{renderColorRampPreviewHTML as A,renderDotDensityPreviewHTML as Ne,renderPieChartPreviewHTML as Pe,renderPreviewHTML as Fe,getEmissiveFromSymbol as j}from"../symbols/support/symbolUtils.js";import{getCSSFilterFromEffectList as Ie,isVolumetricSymbol as Le}from"../symbols/support/utils.js";import{formatNumberLabel as Re}from"../widgets/smartMapping/support/utils.js";const M=/^\s*(return\s+)?\$view\.scale\s*(;)?\s*$/i,ze=new c({esriGeometryPoint:`point`,esriGeometryMultipoint:`multipoint`,esriGeometryPolyline:`polyline`,esriGeometryPolygon:`polygon`,esriGeometryMultiPatch:`multipatch`}),N=new k({size:6,outline:{color:[128,128,128,.5],width:.5}}),Be=new O({style:`solid`});function P(e){return e.type===`flow`}function F(e){return e.type===`vector-field`}function I(e){return e.type===`raster-colormap`}function L(e){return e.type===`raster-stretch`}function R(e){return e.type===`raster-shaded-relief`}function z(e){return e.declaredClass===`esri.renderers.SimpleRenderer`}function B(e){return e.declaredClass===`esri.renderers.ClassBreaksRenderer`}function V(e){return e.declaredClass===`esri.renderers.UniqueValueRenderer`}function H(e){return e.declaredClass===`esri.renderers.HeatmapRenderer`}function Ve(e){return U(e)||W(e)||G(e)||He(e)}function He(e){return e.declaredClass===`esri.renderers.PointCloudRGBRenderer`}function U(e){return e.declaredClass===`esri.renderers.PointCloudClassBreaksRenderer`}function W(e){return e.declaredClass===`esri.renderers.PointCloudStretchRenderer`}function G(e){return e.declaredClass===`esri.renderers.PointCloudUniqueValueRenderer`}function Ue(e){return e.declaredClass===`esri.renderers.DotDensityRenderer`}function We(e){return e.declaredClass===`esri.renderers.PieChartRenderer`}function Ge(e,t){return z(e)||B(e)||V(e)||H(e)||Ue(e)||We(e)?t.type===`2d`||De(e):L(e)||I(e)||R(e)||U(e)||W(e)||G(e)||F(e)||P(e)}function Ke(e){return e.declaredClass===`esri.layers.BuildingSceneLayer`}function K(e){return e.declaredClass===`esri.layers.SubtypeGroupLayer`}function qe(e){return e.declaredClass===`esri.layers.VoxelLayer`}function Je(e){return e.declaredClass===`esri.layers.WMSLayer`}function Ye(e){return e.declaredClass===`esri.layers.WMTSLayer`}function q(e){return e.declaredClass===`esri.layers.MapImageLayer`}function Xe(e){return e.declaredClass===`esri.layers.TileLayer`}function J(e){return e.declaredClass===`esri.layers.ImageryLayer`}function Y(e){return e.declaredClass===`esri.layers.ImageryTileLayer`}function Ze(e){return e.declaredClass===`esri.layers.WCSLayer`}function Qe(e){return e.type===`stretch-ramp`}function $e(e){return(`authoringInfo`in e?e?.authoringInfo:null)?.type===`univariate-color-size`}function et(e){let t=`authoringInfo`in e?e?.authoringInfo:null;return t?.type===`univariate-color-size`&&t?.univariateTheme===`above-and-below`}function tt(e){return`sublayers`in e}function nt(e){return e&&`symbol`in e}function rt(e,t){let{field:n,field2:r,field3:i,fieldDelimiter:a,valueExpression:o}=e,s=!(!n&&!o||!r&&!i);if(!n)return null;let c=s?t?.toString().split(a||``):[t],l=n?{[n]:c?.[0]}:null;return l&&(r&&(l[r]=c?.[1]),i&&(l[i]=c?.[2])),l}const it=new k({style:`path`,path:`M10,5 L5,0 0,5 M5,0 L5,15`,size:15,outline:{width:1,color:[85,85,85,1]}});let X={},Z={};const Q=new WeakMap;let $=class extends i{constructor(e){super(e),this._hasColorRamp=!1,this._hasOpacityRamp=!1,this._hasSizeRamp=!1,this._loading=!1,this._dotDensityUrlCache=new Map,this._scaleDrivenSizeVariable=null,this._clusterSizeVariable=null,this._layerDefinitionExpression=null,this._layerDefinitionExpressionClause=null,this._layerDisplayFilter=null,this._layerDisplayFilterClause=null,this.children=new o,this.hideLayersNotInCurrentView=!1,this.keepCacheOnDestroy=!1,this.layer=null,this.layerView=null,this.legendElements=[],this.parent=null,this.respectLayerDefinitionExpression=!1,this.respectLayerVisibility=!0,this.sublayerIds=[],this.title=null,this.view=null}initialize(){let e=()=>this.notifyChange(`ready`);this.addHandles([f(()=>this.children,`change`,t=>{let{added:n,removed:r}=t;n.forEach(t=>{let n=`activeLayerInfo-ready-watcher-${t.layer.uid}`;this.addHandles(p(()=>t.ready,e,m),n)}),r.forEach(e=>this.removeHandles(e.layer.uid)),e()})]),this.keepCacheOnDestroy||(X={},Z={})}destroy(){this._dotDensityUrlCache=null,this._scaleDrivenSizeVariable=null,this.keepCacheOnDestroy||(X=null,Z=null),this._layerDefinitionExpressionClause=null}get cssEffectFilter(){let{layer:e,scale:t}=this,n=`effect`in e?e.effect:null;if(!n)return null;let r=new ne({effect:n});return r.endTransition(),r.scale=t,Ie(r,!0)}get isScaleDriven(){let e=this.layer;if(e===null)return!1;if(`effect`in e&&e.effect&&Array.isArray(e.effect))return!0;if(`featureReduction`in e&&e.featureReduction){if(e.featureReduction.type===`cluster`)return!0;if(e.featureReduction.type===`binning`&&`renderer`in e.featureReduction&&e.featureReduction.renderer)return this._isRendererScaleDriven(e.featureReduction.renderer)}return`renderer`in e&&e.renderer?`displayFilterInfo`in e&&e.displayFilterInfo&&V(e.renderer)?!0:this._isRendererScaleDriven(e.renderer):this._isLayerScaleDriven(this.layer)}get loading(){return this.children.length>0?this.children.some(e=>e.loading):this._loading}get opacity(){let e=this.layer.opacity,t=this.parent?.opacity,n=this.layer.parent,r=n&&`uid`in n?this._getParentLayerOpacity(n):null;return t==null?r==null?e:r*e:t*e}get ready(){return x(()=>this.layer===null?!0:this.children.length>0?this._isGroupActive():this.legendElements.length>0)}get scale(){return this.view?.scale??0}get version(){return this.commitProperty(`ready`),x(()=>this._get(`version`)+1)}async buildLegendElementsForFeatureCollections(e){if(this._loading=!0,this.hideLayersNotInCurrentView&&!await this._isLayerInCurrentView()){this.legendElements=[],this._loading=!1,this.notifyChange(`ready`);return}let t=Array.from(e,e=>{if(ce(e))return this._getRendererLegendElements(e.renderer,{title:e.title});if(e.featureSet?.features.length){let t=e.layerDefinition,n=t?.drawingInfo,r=n&&Ee(n.renderer),i=ze.read(t.geometryType);return r?this._getRendererLegendElements(r,{title:e.name,geometryType:i}):(l.getLogger(this).warn(`drawingInfo not available!`),null)}return null});try{let e=[],n=await Promise.allSettled(t);for(let t of n)if(t.status===`fulfilled`)for(let n of t.value??[])e.push(n);this.legendElements=e}catch(e){l.getLogger(this).warn(`error while building legend for layer!`,e)}finally{this._loading=!1,this.notifyChange(`ready`)}}async buildLegendElementsForRenderer(e){try{this._loading=!0;let t=!this.hideLayersNotInCurrentView||await this._isLayerInCurrentView();this.legendElements=t?await this._getRendererLegendElements(e):[]}catch(e){l.getLogger(this).warn(`error while building legend for layer!`,e)}finally{this._loading=!1,this.notifyChange(`ready`)}}async buildLegendElementsForFeatureReduction(e){try{this._loading=!0,await this._waitForLayerViewUpdate(this.layerView);let t=!this.hideLayersNotInCurrentView||await this._isLayerInCurrentView();this.legendElements=t?await this._getLegendElementsForFeatureReduction(e):[]}catch(e){l.getLogger(this).warn(`error while building legend for layer!`,e)}finally{this._loading=!1,this.notifyChange(`ready`)}}async buildLegendElementsForTools(){this._loading=!0;let e=this.layer;if(qe(e))await this._constructLegendElementsForVoxelLayer();else if(Ye(e))this._constructLegendElementsForWMTSlayer();else if(Je(e))await this._constructLegendElementsForWMSSublayers();else if(Ke(e))await this._constructLegendElementsForBuildingSceneLayer();else if(q(e)||Xe(e)||K(e))await this._constructLegendElementsForSublayers();else{this.removeHandles(`imageryLayers-watcher`);let t=`default`;if(J(e)){let n=e?.rasterFunction?.functionName||`default`,r=e.bandIds?.length?e.bandIds.join(``):`###`;t=n+`_`+r}if(Y(e)||e.type===`link-chart`)return;await this._getLegendLayers(`${e.uid}-${t}`).then(async t=>{this.legendElements=[];let n=t.map(async t=>{if(J(e)){let t=p(()=>[e.rasterFunction,e.bandIds],()=>d(async()=>{X.default=null,e.renderer?await this.buildLegendElementsForRenderer(e.renderer):await this.buildLegendElementsForTools()})());this.addHandles(t,`imageryLayers-watcher`)}let n=this._generateSymbolTableElementForLegendLayer(t);n?.infos.length&&(J(e)&&(n.title=e.title),this.legendElements.push(n))});await Promise.allSettled(n)}).catch(e=>{l.getLogger(this).warn(`Request to server for legend has failed!`,e)})}this._loading=!1,this.notifyChange(`ready`)}async _isLayerInCurrentView(e){return this._checkFeatureCountForExpression(e,this.view.extent)}_getParentLayerOpacity(e){let t=1,n=e.parent;return n&&`uid`in n&&(t=this._getParentLayerOpacity(n)),e.opacity*t}_isGroupActive(){return this.children.some(e=>e.ready)}_isRendererScaleDriven(e){if(e.type===`dot-density`)return!0;let t=`valueExpression`in e?e.valueExpression:null;return M.test(t)||(`visualVariables`in e?e.visualVariables:null)?.some(e=>this._isScaleDrivenSizeVariable(e))?!0:this._hasScaleDrivenSymbols(e)}_hasScaleDrivenSymbols(e){switch(e.type){case`simple`:return this._isScaleDrivenSymbol(e.symbol);case`class-breaks`:return this._isScaleDrivenSymbol(e.defaultSymbol)||e.classBreakInfos.some(e=>this._isScaleDrivenSymbol(e.symbol));case`unique-value`:return this._isScaleDrivenSymbol(e.defaultSymbol)||!!e.uniqueValueInfos?.some(e=>this._isScaleDrivenSymbol(e.symbol))}return!1}_isScaleDrivenSymbol(e){if(e?.type===`cim`){let{primitiveOverrides:t,minScale:n,maxScale:r}=e.data,i=t?.some(e=>(e.valueExpressionInfo?.expression||``).includes(`$view.scale`))??!1;return n!=null||r!=null||i}return!1}_isScaleDrivenSizeVariable(e){if(e&&e.type!==`size`)return!1;let t=e,n=t.minSize,r=t.maxSize;return typeof n==`object`&&n&&this._isScaleDrivenSizeVariable(n)||typeof r==`object`&&r&&this._isScaleDrivenSizeVariable(r)?!0:M.test(t.valueExpression)}_isLayerScaleDriven(e){if(`minScale`in e&&e.minScale>0||`maxScale`in e&&e.maxScale>0)return!0;if(`sublayers`in e&&e.sublayers)return e.sublayers.some(e=>this._isLayerScaleDriven(e));let t=e.parent;if(e.loaded===!1&&t&&q(t)&&`source`in e&&e.source&&e.source.type===`map-layer`){for(let n of t.sourceJSON.layers??[])if(n.id===e.source.mapLayerId&&(n.minScale>0||n.maxScale>0))return!0}return!1}async _constructLegendElementsForVoxelLayer(){this._loading=!0,this.legendElements=[],this.removeHandles(`voxel-style-watcher`),this.removeHandles(`voxel-current-variable`);let e=this.layer;this.addHandles(p(()=>e.currentVariableId,()=>this._constructLegendElementsForVoxelLayer()),`voxel-current-variable`),this.addHandles(p(()=>e.getVariableStyles(),()=>this._constructLegendElementsForVoxelLayer()),`voxel-style-watcher`);let t=e.getVariableStyle(null),n=[];if(t){if(t.uniqueValues?.length){let e=[];t.uniqueValues.forEach(t=>{t.enabled&&e.push({label:t.label||`${t.value}`,value:t.value,symbol:new O({color:t.color,outline:null})})}),e.length&&n.push({type:`symbol-table`,title:t.label,infos:e})}else if(t.transferFunction){let{colorStops:e,stretchRange:r}=t.transferFunction,i=e.toArray().reverse(),a=r.map((e,t)=>`${t===0?be:xe} ${Re(e)}`).reverse(),o=i.map(e=>({color:e.color,value:null,label:null}));o[0].label=a[0],o[o.length-1].label=a[1],n.push({type:`color-ramp`,title:t.label,infos:o,preview:A(i.map(e=>e.color))})}}await this._generatePreviewsForLegendElements(n,{opacity:e.opacity}),this.legendElements=n,this._loading=!1,this.notifyChange(`ready`)}_constructLegendElementsForWMTSlayer(){this._loading=!0,this.legendElements=[],this.removeHandles(`wmts-activeLayer-watcher`);let e=this.layer.activeLayer;this.addHandles(p(()=>{let{layer:e}=this;return e&&`activeLayer`in e&&e.activeLayer},()=>this._constructLegendElementsForWMTSlayer()),`wmts-activeLayer-watcher`);let t=e.styleId?e.styles?.find(({id:t})=>t===e.styleId)?.legendUrl:void 0;t&&(this.legendElements=[{type:`symbol-table`,title:e.title,infos:[{src:t,opacity:this.opacity}]}]),this._loading=!1,this.notifyChange(`ready`)}async _constructLegendElementsForWMSSublayers(){this._loading=!0,this.legendElements=[],this.removeHandles(`wms-sublayers-watcher`);let e=this.layer,t=null;(e.customParameters||e.customLayerParameters)&&(t={...e.customParameters,...e.customLayerParameters}),this.addHandles(p(()=>{let{layer:e}=this;return e&&`sublayers`in e&&e.sublayers},()=>this._constructLegendElementsForWMSSublayers()),`wms-sublayers-watcher`),this.legendElements=await this._generateLegendElementsForWMSSublayers(e.sublayers,t),this._loading=!1,this.notifyChange(`ready`)}async _generateLegendElementsForWMSSublayers(e,t){let n=this.layer,r=[];this.addHandles(e.on(`change`,()=>this._constructLegendElementsForWMSSublayers()),`wms-sublayers-watcher`);let i=this.sublayerIds?.map(e=>n.findSublayerById(e))?.filter(a)??[],o=i.length?i:e.toArray();for(let e of o){let n=p(()=>[e.title,e.visible,e.legendEnabled],()=>this._constructLegendElementsForWMSSublayers());if(this.addHandles(n,`wms-sublayers-watcher`),!this.respectLayerVisibility||e.visible&&e.legendEnabled){let n=await this._generateSymbolTableElementForWMSSublayer(e,t);n?.infos.length&&r.unshift(n)}}return r}async _generateSymbolTableElementForWMSSublayer(e,t){if(!e.legendUrl&&e.sublayers){let n=(await this._generateLegendElementsForWMSSublayers(e.sublayers,t)).filter(e=>e);return{type:`symbol-table`,title:e.title,infos:n}}return this._generateSymbolTableElementForLegendUrl(e,t)}async _generateSymbolTableElementForLegendUrl(e,t){let n=e.legendUrl;if(!n)return;let i={type:`symbol-table`,title:e.title||e.name||String(e.id??``),infos:[]};t&&(n=ee(n,t));let a=null,o=e.layer?.opacity;try{a=(await r(n,{responseType:`image`})).data,a&&(a.style.opacity=o)}catch{}return i.infos.push({src:n,preview:a,opacity:o}),i}_getLegendLayers(e,t){let n=X&&X[e];if(n)return Promise.resolve(n);let r=Z?.[e];if(r!=null)return r;let i=this._legendRequest(t).then(t=>{let n=t.layers;return X&&(X[e]=n),n}).finally(()=>{Z&&delete Z[e]});return Z[e]=i,i}_legendRequest(e){let t=this.layer,n={f:`json`,dynamicLayers:e};if(J(t)){let e=t.exportImageServiceParameters.rasterFunction;if(e&&(n.renderingRule=JSON.stringify(e.functionDefinition?.toJSON()||e.toJSON())),t.bandIds&&(n.bandIds=t.bandIds.join()),t.raster||t.viewId||t.customParameters){let{raster:e,viewId:r,customParameters:i}=t;n={raster:e,viewId:r,...n,...i}}}let i=t.url.replace(/(\/)+$/,``);if(`version`in t&&+t.version>=10.01){let e=i.indexOf(`?`);e>-1?i=i.slice(0,e)+`/legend`+i.slice(e):i+=`/legend`}else{let e=i.toLowerCase().indexOf(`/rest/`),t=e===-1?i:i.slice(0,e)+i.slice(e+5);i=`https://utility.arcgis.com/sharing/tools/legend?soapUrl=`+encodeURI(t)+`&returnbytes=true`}return r(i,{query:n}).then(e=>e.data)}async _constructLegendElementsForBuildingSceneLayer(){this._loading=!0,this.legendElements=[],this.removeHandles(`sublayers-watcher`);let e=this.layer;this.addHandles(p(()=>e.sublayers,()=>this._constructLegendElementsForBuildingSceneLayer()),`sublayers-watcher`);try{this.legendElements=await this._generateLegendElementsForBuildingSublayers(e.sublayers,this.opacity)}catch(e){l.getLogger(this).warn(`Request to server for legend has failed!`,e)}finally{this._loading=!1,this.notifyChange(`ready`)}}async _generateLegendElementsForBuildingSublayers(e,t){let n=[];this.addHandles(e.on(`change`,()=>this._constructLegendElementsForBuildingSceneLayer()),`sublayers-watcher`);let r=e.toArray();for(let e of r){let r=p(()=>[`renderer`in e&&e.renderer,e.opacity,e.title,e.visible],()=>this._constructLegendElementsForBuildingSceneLayer());if(this.addHandles(r,`sublayers-watcher`),!this.respectLayerVisibility||e.visible){let r=e?.opacity==null?null:e.opacity,i=r==null?t:r*t;if(e.type===`building-group`){let t={type:`symbol-table`,title:e.title,infos:[]},r=await this._generateLegendElementsForBuildingSublayers(e.sublayers,i);t.infos.push(...r),n=[t,...n]}else e.renderer&&(n=[...await this._getRendererLegendElements(e.renderer,{title:e.title,opacity:i,sublayer:e}),...n])}}return n.filter(e=>!!e&&(`infos`in e&&e.infos?e.infos.length>0:!0))}async _constructLegendElementsForSublayers(){this._loading=!0,this.removeHandles(`sublayers-watcher`);let e=this.layer;if(!(q(e)||Xe(e)||K(e))||this.hideLayersNotInCurrentView&&!await this._isLayerInCurrentView())this.legendElements=[],this._loading=!1,this.notifyChange(`ready`);else{this.addHandles(p(()=>e.sublayers,()=>this._constructLegendElementsForSublayers),`sublayers-watcher`);try{this.legendElements=await this._generateLegendElementsForSublayers(e.sublayers,this.opacity)}catch(e){l.getLogger(this).warn(`Request to server for legend has failed!`,e)}finally{this._loading=!1,this.notifyChange(`ready`)}}}async _generateLegendElementsForSublayers(e,t,n){let r=this.layer,i=[];this.addHandles(e.on(`change`,()=>this._constructLegendElementsForSublayers()),`sublayers-watcher`);let o=e.toArray();!n&&this.sublayerIds&&this.sublayerIds.length&&(o=K(r)?this.sublayerIds.map(e=>r.findSublayerForSubtypeCode(e)).filter(a):this.sublayerIds.map(e=>r.findSublayerById(e)).filter(a));for(let e of o){let r=p(()=>[e.renderer,e.opacity,e.title,e.visible,e.legendEnabled],()=>this._constructLegendElementsForSublayers());this.addHandles(r,`sublayers-watcher`);let a=e.createQuery().where,o=!this.hideLayersNotInCurrentView||await this._isLayerInCurrentView(a),s=!this.respectLayerVisibility||e.visible&&e.legendEnabled&&this._isSublayerInScale(e);if(o&&s){let r=e?.opacity==null?null:e.opacity,a=r==null?t:r*t,o=!tt(e)||e.originIdOf(`renderer`)>2&&!e.sublayers;if(e.renderer&&o)await e.load(),i=[...await this._getRendererLegendElements(e.renderer,{title:e.title,opacity:a,sublayer:e}),...i];else if(tt(e)){let t=await this._generateSymbolTableElementForSublayer(e,a,n);t&&i.unshift(t)}}}return i.filter(e=>!!e&&(`infos`in e&&e.infos?e.infos.length>0:!0))}async _generateSymbolTableElementForSublayer(e,t,n){if(!n){n=new Map;let t=this.layer,r=e.source,i=!(!r||r.type===`map-layer`&&r.mapLayerId===e.id&&(!r.gdbVersion||r.gdbVersion===(`gdbVersion`in t&&t.gdbVersion)))||e.originIdOf(`renderer`)>2||e.originIdOf(`labelingInfo`)>2||e.originIdOf(`labelsVisible`)>2,a=null;if(i){let e=new ae({layer:this.layer});a=e.hasDynamicLayers?e.dynamicLayers:null,e.destroy()}let o=a||`${t.uid}-default`;(await this._getLegendLayers(o,a)).forEach(e=>n.set(e.layerId,e))}let r=n.get(e.id);if((!r||r?.subLayerIds&&r.defaultVisibility)&&e.sublayers){let r=await this._generateLegendElementsForSublayers(e.sublayers,t,n);return{type:`symbol-table`,title:e.title,infos:r}}return this._generateSymbolTableElementForLegendLayer(r,e,t)}_generateSymbolTableElementForLegendLayer(e,t,n){if(!e?.legend||this.respectLayerVisibility&&!this._isLegendLayerInScale(e,t))return null;let r=t?.renderer,i=t?.title||e.layerName;if(r&&(!t||t?.originIdOf(`renderer`)>2)){let e=t?.title||this._getRendererTitle(r,t);e&&(i&&typeof e!=`string`&&`title`in e&&(e.title=i),i=e)}let a={type:`symbol-table`,title:i,legendType:e.legendType||null,infos:[]},o=t?this._sanitizeLegendForSublayer(e.legend.slice(),t):e.legend;return e.legendGroups&&e.legendGroups.length>0?e.legendGroups.forEach(r=>{let i={type:`symbol-table`,title:r.heading,legendType:e.legendType||null,infos:this._generateSymbolTableElementInfosForLegendLayer(o.filter(e=>e.groupId===r.id),e.layerId,r.heading||a.title||t?.title,n)};i.infos?.length>0&&a.infos.push(i)}):a.infos=this._generateSymbolTableElementInfosForLegendLayer(o,e.layerId,a.title||t?.title,n),a.infos.length>0?a:null}_generateSymbolTableElementInfosForLegendLayer(e,t,r,i){return e.map(e=>{let a=e.url;if(e.imageData&&e.imageData.length>0)a=`data:image/png;base64,${e.imageData}`;else if(!a.startsWith(`http`))a=n(`${this.layer.url}/${t}/images/${a}`);else return null;let o=e.label;return{previewAriaLabel:o||r,label:o,src:a,opacity:i??this.opacity,width:e.width,height:e.height}}).filter(a)}_isSublayerInScale(e){let t=e.minScale||0,n=e.maxScale||0;return!(t>0&&t<this.scale||n>this.scale)}_isLegendLayerInScale(e,t){let n=t||this.layer,r=null,i=null,a=!0;return!n.minScale&&n.minScale!==0||!n.maxScale&&n.maxScale!==0?(e.minScale===0&&n.tileInfo&&(r=n.tileInfo.lods[0].scale),e.maxScale===0&&n.tileInfo&&(i=n.tileInfo.lods[n.tileInfo.lods.length-1].scale)):(r=Math.min(n.minScale,e.minScale)||n.minScale||e.minScale,i=Math.max(n.maxScale,e.maxScale)),(r>0&&r<this.scale||i>this.scale)&&(a=!1),a}_sanitizeLegendForSublayer(e,t){if(`version`in this.layer&&+this.layer.version<10.1||e.length===0)return e;let n=t.renderer,r=e.some(e=>e.values),i=0,a=null;return r&&e.some((e,t)=>(e.values||(i=t,a=e,a.label||(a.label=`others`)),a!=null)),n?n.type===`unique-value`?a&&(e.splice(i,1),e.push(a)):n.type===`class-breaks`&&(a&&e.splice(i,1),n.legendOptions?.order||e.reverse(),a&&e.push(a)):a&&(e.splice(i,1),e.push(a)),e}async _getRendererLegendElements(e,t={}){if(!Ge(e,this.view))return l.getLogger(this).warn(`Renderer of type '${e.type}' not supported!`),[];if(Ve(e))return this._constructPointCloudRendererLegendElements(e,t);if(Ue(e))return this._constructDotDensityRendererLegendElements(e);let n=await this._loadRenderer(e);return We(n)?this._constructPieChartRendererLegendElements(n):this._constructRendererLegendElements(n,t)}async _getLegendElementsForFeatureReduction(e){let t=null;return e.type===`binning`?t=e.renderer:e.type===`cluster`&&(t=this._getClusterRenderer(e)),t?this._getRendererLegendElements(t,{isFeatureReductionRenderer:!0}):[]}_getPointCloudRendererTitle(e){return(e.legendOptions?.title||e.field)??``}async _constructPointCloudRendererLegendElements(e,t={}){let n=t.title,r=[],i=null,a=null;if(U(e))i={type:`symbol-table`,title:n||this._getPointCloudRendererTitle(e),infos:[]},e.colorClassBreakInfos.forEach(e=>{i.infos.unshift({label:e.label||e.minValue+` - `+e.maxValue,value:[e.minValue,e.maxValue],symbol:this._getAppliedCloneSymbol(N,e.color)})});else if(W(e)){let t=e.stops,r=null;if(t?.length&&(t.length===1&&(r=t[0].color),!r)){let e=t[0].value,n=t[t.length-1].value;if(e!=null&&n!=null){let i=e+(n-e)/2;r=de(i,t)}}i={type:`symbol-table`,title:null,infos:[{label:null,value:null,symbol:this._getAppliedCloneSymbol(N,r||N.color)}]};let o=fe(e.stops??[])??[];a={type:`color-ramp`,title:n||this._getPointCloudRendererTitle(e),infos:o,preview:A(o.map(e=>e.color))}}else G(e)&&(i={type:`symbol-table`,title:n||this._getPointCloudRendererTitle(e),infos:[]},e.colorUniqueValueInfos?.forEach(e=>{i.infos.push({label:e.label||e.values.join(`, `),value:e.values.join(`, `),symbol:this._getAppliedCloneSymbol(N,e.color)})}));return i?.infos.length&&r.push(i),a?.infos.length&&r.push(a),await this._generatePreviewsForLegendElements(r,{opacity:this.opacity,symbolConfig:{applyColorModulation:!!e.colorModulation}}),r}async _getElementInfoForDotDensity(e,t){let{color:n,label:r,valueExpressionTitle:i}=t,{backgroundColor:a,outline:o,dotSize:s}=e,c=this.cssEffectFilter,l=s+`-`+n+`-`+a+`-`+(o&&JSON.stringify(o.toJSON()))+`-`+c,u=this._dotDensityUrlCache,d=u.has(l)?u.get(l):Ne(e,n);u.set(l,d);let f={shape:{type:`image`,x:0,y:0,width:d.width,height:d.height,src:d.src},fill:null,stroke:null,offset:[0,0]},p=Me([[f]],[d.width,d.height],{cssEffectFilter:this.cssEffectFilter});return{opacity:1,src:d.src,preview:p,width:d.width,height:d.height,previewAriaLabel:r||i}}async _constructDotDensityRendererLegendElements(e){let t=e.calculateDotValue(this.view.scale),n=e.legendOptions?.unit,r={type:`symbol-table`,title:{value:t&&Math.round(t),unit:n||``},infos:[]};for(let t of e.attributes){let n=await this._getElementInfoForDotDensity(e,t);n.label=t.label||t.valueExpressionTitle||t.field,r.infos.push(n)}return[r]}async _constructPieChartRendererLegendElements(e){let t=[],n=null,r=e.outline;e.attributes.forEach(e=>{let n=new k({color:e.color,outline:r}),i=e.label||e.valueExpressionTitle||e.field;t.push({label:i,symbol:n})});let i=t.length?[...t]:[];if(e.othersCategory?.color&&e.othersCategory?.threshold!==0){let i=new k({color:e.othersCategory.color,outline:r});n=e.othersCategory.label||`Other`,t.push({label:n,symbol:i})}if(e.defaultColor?.a){let n=new k({color:e.defaultColor,outline:r});t.push({label:e.defaultLabel,symbol:n})}let a=await this._getVisualVariableLegendElements(e,this.layer)||[];if(t.length){a.unshift({type:`symbol-table`,title:null,infos:t});let o=i.filter(e=>e.label!==n).map(e=>e.symbol.color).filter(Boolean),s=Pe(o,{holePercentage:e.holePercentage,backgroundColor:e.backgroundFillSymbol?.color,cssEffectFilter:this.cssEffectFilter,outline:r});a.unshift({type:`pie-chart-ramp`,title:this._getRendererTitle(e,this.layer),infos:t,preview:s})}return await this._generatePreviewsForLegendElements(a,{opacity:this.layer.opacity,cssEffectFilter:this.cssEffectFilter}),a}async _getWhereClause(e,t,n){let r=await _(e,n),i=new Set,{field:a,field2:o,field3:s}=t;oe(i,n,[a,o,s]),await se(i,n,null,t.valueExpression);let c=new Set(Array.from(i,e=>e.toLowerCase()));return(r?.fieldNames.map(e=>e.toLowerCase()))?.some(e=>!c.has(e))?null:r}async _processDefinitionExpression(e,t){if(!(`definitionExpression`in e))return;let n=e.definitionExpression;n&&this.respectLayerDefinitionExpression?this._layerDefinitionExpression!==n&&(this._layerDefinitionExpressionClause=await this._getWhereClause(n,t,e.fieldsIndex)):this._layerDefinitionExpressionClause=null,this._layerDefinitionExpression=n}async _processDisplayFilter(e,t){if(!(`displayFilterInfo`in e))return;let n=e.displayFilterInfo?ie(e.displayFilterInfo,this.view):null;return n?.where?this._layerDisplayFilter?.id!==n?.id&&(this._layerDisplayFilterClause=await this._getWhereClause(n.where,t,e.fieldsIndex)):this._layerDisplayFilterClause=null,this._layerDisplayFilter=n,n}async _constructRendererLegendElements(e,t={}){let{title:n,sublayer:r,isFeatureReductionRenderer:i}=t,a=r||this.layer,o=C(e,`reference-size`),s=C(e,`spike`),c=i&&`renderer`in a&&a.renderer?a.renderer:e,l=null;V(c)&&(await this._processDefinitionExpression(a,c),l=await this._processDisplayFilter(a,c)),this._hasColorRamp=!1,this._hasOpacityRamp=!1,this._hasSizeRamp=!1,this._scaleDrivenSizeVariable=null;let u=await this._getVisualVariableLegendElements(e,a)||[],d={type:`symbol-table`,title:n||this._getRendererTitle(e,a),infos:[]},f=null,p=!1,m=new Set;if(P(e)&&!this._hasSizeRamp){let t=await Se(e);d.infos.push({label:null,symbol:t})}else if($e(e)){let t=n,r=et(e)?`univariate-above-and-below-ramp`:`univariate-color-size-ramp`,i=u.findIndex(e=>e.type===`color-ramp`),a=i===-1?null:u.splice(i,1)[0],o=u.findIndex(e=>e.type===`size-ramp`),s=o===-1?null:u.splice(o,1)[0],c=[];a&&(t=a.title,c.push(a)),s&&(t=s.title,c.push(s)),c.length>0&&u.push({type:r,title:t,infos:c})}else if(H(e)){let t=me(e);u.push({type:`heatmap-ramp`,title:n||this._getRendererTitle(e,a),infos:t,preview:A(t.map(e=>e.color),{cssEffectFilter:this.cssEffectFilter})})}else if(V(e)){let t=e.authoringInfo;if(t?.type===`relationship`){let{numClasses:n,field1:r,field2:i}=t,o=t.focus;if(n&&r&&i){let t=[r,i],s=ge(o)||0;for(let e of t){let{field:t,normalizationField:n,label:r}=e,i=r||{field:this._getFieldAlias(t,a),normField:n&&this._getFieldAlias(n,a)},o=it.clone();o.angle=s,d.infos.push({label:i,symbol:o}),m.add(o),s+=90}let c=he({focus:o,numClasses:n,infos:e.uniqueValueInfos??[]});u.unshift(c)}}else if(J(this.layer)||Y(this.layer)){let{uniqueValueInfos:t}=e;if(t)for(let e of t)e.symbol&&await this._checkClausesForUVR(c,e.value,a)&&d.infos.push({label:e.label||e.value,value:e.value,symbol:e.symbol})}else{let{field:t,field2:r,field3:i,fieldDelimiter:s,valueExpression:u,defaultSymbol:f}=e,m=!(!t&&!u||!r&&!i),h=l?.title?.trim(),g=[],{uniqueValueGroups:_}=e;if(_)for(let e of _){let n={type:`symbol-table`,title:e.heading,infos:[]},{classes:l}=e;if(l)for(let e of l){let{symbol:l,values:d}=e;if(l){let f=[],p=[];for(let e of d??[]){let{value:n,value2:o,value3:c}=e,l=[],d=[];(t||u)&&(l.push(n),d.push(this._getDomainName(t,n,a)??w(n,T(a,t,this.view.timeZone)))),r&&(l.push(o),d.push(this._getDomainName(r,o,a)??w(o,T(a,r,this.view.timeZone)))),i&&(l.push(c),d.push(this._getDomainName(i,c,a)??w(c,T(a,i,this.view.timeZone)))),f.push(m?l.join(s||``):l[0]),p.push(d.join(` - `))}let h=f.join(`, `),g=e.label;if(!g){let e=p.filter(Boolean);g=e.length?e.join(`, `):h}let _=D(e,this.view.scale)??l;_.type===`cim`&&o&&(_=_.clone(),Ae(_,{innerDotSize:8,outerRingSize:16}));let v=!1;for(let e of f)if(v=await this._checkClausesForUVR(c,e,a),v)break;v&&n.infos.push({label:g,value:h,symbol:_})}}n.infos.length&&g.push(n)}if(g.length){let t=g[0];if(g.length===1&&`title`in t&&!t.title){let e=t.infos?.filter(nt)??[];d.infos.push(...e)}else f&&(g.push({type:`symbol-table`,infos:[{label:e.defaultLabel||`others`,symbol:f}]}),p=!0),d.infos.push(...g);!n&&!e.legendOptions?.title&&!e.valueExpressionTitle?d.title=h:h&&(d.title=`${d.title} (${h})`)}}e.defaultSymbol&&!p&&(d.infos.push({label:e.defaultLabel||`others`,symbol:e.defaultSymbol}),p=!0)}else if(B(e)){if(!o&&!s){if(f=this._isUnclassedRenderer(e),!f||!this._hasSizeRamp){let t=e.classBreakInfos.filter(({symbol:e})=>e),n=e.legendOptions?.order===`ascending-values`;for(let e of t){let{label:t,minValue:r,maxValue:i}=e,o=D(e,this.view.scale)??e.symbol,s=t||(f?null:`${r} - ${i}`),c={previewAriaLabel:s||d.title||a.title,label:s,value:[r,i],symbol:o};n?d.infos.push(c):d.infos.unshift(c)}f&&(d.title=null),this._updateInfosForClassedSizeRenderer(e,d.infos)}e.defaultSymbol&&!f&&(d.infos.push({label:e.defaultLabel||`others`,symbol:e.defaultSymbol}),p=!0)}}else if(L(e)){if(Y(this.layer)||Ze(this.layer)){let t=await this._constructTileImageryStretchRendererElements(e);Qe(t)?u.push(t):d.infos=t}else{let t=this.layer,n,r;e.customStatistics?.length&&({min:n,max:r}=e.customStatistics[0]);let i=[],a=t.serviceRasterInfo;if(t.rasterFunction)try{a=await t.generateRasterInfo(t.rasterFunction)}catch{}let o=re(a.pixelType);if(a.bandCount===1){let i=t.bandIds?.[0]||0;n??=a.statistics?a.statistics[i].min:o[0],r??=a.statistics?a.statistics[i].max:o[1],n||r?u.push(await this._getStretchLegendElements(e,{min:n,max:r})):this._getServerSideLegend()}else if(t.bandIds?.length===1)n??=a.statistics?a.statistics[t.bandIds[0]].min:o[0],r??=a.statistics?a.statistics[t.bandIds[0]].max:o[1],n||r?u.push(await this._getStretchLegendElements(e,{min:n,max:r})):this._getServerSideLegend();else if(a.bandCount>=3){let{bandInfos:e}=a,{bandIds:n}=t;e.length>=a.bandCount?n?.length===3?(i=n.map(t=>e[t].name),d.infos=this._createSymbolTableElementMultiBand(i)):t.format===`lerc`?(i=[0,1,2].map(t=>e[t].name),d.infos=this._createSymbolTableElementMultiBand(i)):this._getServerSideLegend():t.format===`lerc`?(i=[`band1`,`band2`,`band3`],d.infos=this._createSymbolTableElementMultiBand(i)):this._getServerSideLegend()}else this._getServerSideLegend()}}else if(I(e))e.colormapInfos.forEach(e=>{d.infos.push({label:e.label,value:e.value,symbol:this._getAppliedCloneSymbol(Be,e.color)})});else if(z(e)){let n=e.symbol;switch(t.geometryType){case`point`:n=`pointSymbol`in a?a.pointSymbol:null;break;case`polyline`:n=`lineSymbol`in a?a.lineSymbol:null;break;case`polygon`:n=`polygonSymbol`in a?a.polygonSymbol:null}let r=this._clusterSizeVariable&&this._getClusterSymbol()||!this._hasSizeRamp;e.symbol&&r&&d.infos.push({previewAriaLabel:e.label||d.title||a.title,label:e.label,symbol:n})}else if(F(e)){e.outputUnit&&(this.title=`(`+e.toJSON().outputUnit+`)`),d.title=e.attributeField;let t=e.getClassBreakInfos();t?.length?t.forEach(e=>{d.infos.push({label:e.minValue+` - `+e.maxValue,symbol:e.symbol})}):d.infos.push({label:e.attributeField,symbol:e.getDefaultSymbol()})}else R(e)&&u.push(await this._getStretchLegendElements(e,{min:0,max:255}));let h=e.defaultSymbol;h&&!p&&!z(e)&&(!f||this._hasColorRamp||this._hasSizeRamp||this._hasOpacityRamp)&&u.push({type:`symbol-table`,infos:[{label:e.defaultLabel||`others`,symbol:h}]}),d.infos.length&&u.unshift(d);let g=t.opacity==null?this.opacity:t.opacity,_=this._isTallSymbol(`visualVariables`in e?e.visualVariables:null),v=J(this.layer)||Y(this.layer);return await this._generatePreviewsForLegendElements(u,{opacity:g,symbolConfig:{isTall:_,isSquareFill:v},cssEffectFilter:this.cssEffectFilter},{arrowMarkerSymbols:m}),e=null,u}async _waitForLayerViewUpdate(e){await h(()=>!e.updating)}async _checkFeatureCountForExpression(e,t){let n=this.layerView;if(!(n&&`createQuery`in n&&`queryFeatureCount`in n))return!0;try{await this._waitForLayerViewUpdate(n);let r=n.createQuery();return e&&(r.where=Ce(r.where,e)),t&&(r.geometry=t),await n.queryFeatureCount(r)>0}catch{return!0}}_getUVRFeatureCountExpression(e,t){return Object.entries(e).map(([e,n])=>{let r=`getField`in t&&t.getField?t.getField(e):null,i=v(e);if(n==null)return`${i} IS NULL`;try{return`${i} = ${y(n,null,r?{type:r.type}:null)}`}catch{return`${i} = ${y(n)}`}}).join(` AND `)}async _checkClausesForUVR(e,t,n){let r=rt(e,t);if(!r)return!0;let i=!!(!this._layerDefinitionExpressionClause&&this._layerDefinitionExpression&&this.respectLayerDefinitionExpression||!this._layerDisplayFilterClause&&this._layerDisplayFilter?.where),a=this._getUVRFeatureCountExpression(r,n);return(i&&a?await this._checkFeatureCountForExpression(a):!0)&&(this._layerDefinitionExpressionClause?.testFeature(r)??!0)&&(this._layerDisplayFilterClause?.testFeature(r)??!0)}_getServerSideLegend(){setTimeout(()=>this.buildLegendElementsForTools(),0)}_getAllInfos(e){let t=e?.infos;return t?t.reduce((e,t)=>e.concat(this._getAllInfos(t)),[]):[e]}async _constructTileImageryStretchRendererElements(e){let t=this.layer,n=t.symbolizer.rasterInfo??t.raster.rasterInfo,r,i,a=e?.customStatistics?.length?e.customStatistics:n?.statistics;if(a)({min:r,max:i}=a[0]);else{let e=re(n.pixelType);r=e[0],i=e[1]}if(t.hasStandardTime()&&(r=t.getStandardTimeValue(r),i=t.getStandardTimeValue(i)),n.bandCount===1||t.bandIds?.length===1)return this._getStretchLegendElements(e,{min:r,max:i});let o=(t?.bandIds?.length?t.bandIds:Array.from(Array(Math.min(n.bandCount,3)).keys())).map(e=>n.bandInfos[e].name);return o.length<3?o.push(o[1]):o.length>3&&o.splice(3),this._createSymbolTableElementMultiBand(o)}async _getStretchLegendElements(e,t){let n=e.colorRamp?.toJSON(),r=pe(n,t);return{type:`stretch-ramp`,title:``,infos:r,preview:A(r.map(e=>e.color))}}_getClusterSymbol(){let e=this.layer,t=`featureReduction`in e&&e.featureReduction,n=t&&`symbol`in t&&t.renderer;return(!n||n?.authoringInfo?.isAutoGenerated===!0)&&t&&`symbol`in t?t.symbol:null}async _getSizeLegendElement(e,t,n,r){return{type:`size-ramp`,title:this._clusterSizeVariable?this._getClusterTitle(t):e,infos:await _e(n,t,await E(n),this.scale,this.view,r,this._clusterSizeVariable?this._getClusterSymbol():null)}}_createSymbolTableElementMultiBand(e){let t=[],n=[`red`,`green`,`blue`];return e.forEach((e,r)=>{t.push({label:{colorName:n[r],bandName:e},src:we[r],opacity:this.opacity??1})}),t}_updateInfosForClassedSizeRenderer(e,t){let n=e.authoringInfo?.type===`class-breaks-size`,r=e.classBreakInfos.some(e=>Le(e.symbol));if(n&&r){let n=ve,r=ye,i=e.classBreakInfos.length,a=(n-r)/(i>1?i-1:i);t.forEach((e,t)=>{e.size=n-a*t})}}_isTallSymbol(e){let t=!1,n=!1;if(e)for(let r=0;r<e.length&&!(t&&n);r++){let i=e[r];i.type===`size`&&(i.axis===`height`&&(t=!0),i.axis===`width-and-depth`&&(n=!0))}return t&&n}async _generatePreviewsForLegendElements(e,t,n){let r=[];for(let i of e)for(let e of i.infos??[])if(`infos`in e&&e.infos&&r.push(this._generatePreviewsForLegendElements([e],t,n)),nt(e)&&e.symbol&&!e.preview){let a=!0;if(e.symbol.type===`cim`){let{minScale:t,maxScale:n}=e.symbol.data;(t&&t<this.scale||n&&n>this.scale)&&(a=!1)}a&&r.push(this._generateSymbolPreviewForInfo(e,{...t,clipBloomEffect:`theme`in i&&i.theme===`spike`,cssEffectFilter:n?.arrowMarkerSymbols?.has(e.symbol)?null:t.cssEffectFilter},n?{applyScaleDrivenSize:!n.arrowMarkerSymbols?.has(e.symbol)}:void 0))}await Promise.all(r)}async _getSize(e,t){let n=e.size==null&&this._hasSizeRamp?g(22):e.size;if(this._scaleDrivenSizeVariable&&t?.applyScaleDrivenSize){let{getSize:t}=await import(`../renderers/visualVariables/support/visualVariableUtils.js`);n=t(this._scaleDrivenSizeVariable,null,{view:this.view.type,scale:this.scale,shape:e.symbol.type===`simple-marker`?e.symbol.style:null})}return n}_getPreviewCIMOptions(e){return{style:`legend`,cimOptions:{allowScalingUp:this._hasSizeRamp||!!(this._scaleDrivenSizeVariable&&e?.applyScaleDrivenSize),viewParams:this.isScaleDriven?{viewingMode:this.view?.type===`2d`?`map`:this.view?.viewingMode,scale:this.view?.scale}:null}}}async _generateSymbolPreviewForInfo(e,t={},n){let{symbol:r}=e;try{if(t.size=await this._getSize(e,n),t.scale=!1,r.type===`cim`){let e=this._getPreviewCIMOptions(n);t={...t,...e}}e.preview=await Fe(r,t)}catch{e.preview=null,l.getLogger(this).warn(`Generating symbol preview failed for symbol type: ${r?.type}`)}}_getClusterRenderer(e){this._clusterSizeVariable=null;let t=`renderer`in this.layer?this.layer.renderer:null,n=e.renderer?.clone()||t?.clone(),r=ue(e,this.layerView,this.view);if(r&&n!=null&&`visualVariables`in n&&!n.visualVariables?.some(e=>e.type===`size`&&e.target!==`outline`&&!M.test(e.valueExpression))){if(`clusterMinSize`in e&&`clusterMaxSize`in e){let{clusterMinSize:t,clusterMaxSize:n}=e;r.legendOptions=new ke({showLegend:t!==n})}n.visualVariables=(n.visualVariables||[]).concat([r]),this._clusterSizeVariable=r}return n}async _loadRenderer(e){if(Q.has(e))return Q.get(e);let t=[],n=e.clone(),r=await E(n);if(B(n)||V(n)){let e=(n.classBreakInfos||n.uniqueValueInfos).map(e=>this._fetchSymbol(e.symbol,r).then(t=>{e.symbol=t}).catch(()=>{e.symbol=null}));Array.prototype.push.apply(t,e)}return t.push(this._fetchSymbol(n.symbol||n.defaultSymbol,n.defaultSymbol?null:r).then(e=>{this._applySymbolToRenderer(n,e,z(n))}).catch(()=>{this._applySymbolToRenderer(n,null,z(n))})),await Promise.allSettled(t),Q.set(e,n),n}_applySymbolToRenderer(e,t,n){n?e.symbol=t:e.defaultSymbol=t}async _fetchSymbol(e,t){if(!e)throw Error();if(e.type===`web-style`)try{let n=await e.fetchSymbol();return this._getAppliedCloneSymbol(n,t)}catch{throw l.getLogger(this).warn(`Fetching web-style failed!`),Error()}return this._getAppliedCloneSymbol(e,t)}_getAppliedCloneSymbol(e,n){if(!e||!n)return e;let r=e.clone(),i=n&&n.toRgba();return r.type.includes(`3d`)?this._applyColorTo3dSymbol(r,i):r.type===`cim`?je(r,n):r.color&&=new t(i||r.color),r}_applyColorTo3dSymbol(e,n){n&&e.symbolLayers.forEach(e=>{e&&(e.material||={},e.material.color=new t(n))})}async _getVisualVariableLegendElements(e,t){if(!(`visualVariables`in e)||e.type===`vector-field`)return null;let n=e.visualVariables??[],r=[],i=[],o=[],s=C(e,`reference-size`)??C(e,`spike`),c,l=this._clusterSizeVariable;if(s?.sizeStops?.length===2&&(B(e)||V(e))){let[e,t]=s.sizeStops,n=l?l.minDataValue:e.value,r=l?l.maxDataValue:t.value;c=new Oe({field:s.field??void 0,normalizationField:s.normalizationField,minSize:u(e.size,10,100),maxSize:u(t.size,50,150),minDataValue:n,maxDataValue:r}),i.push(c)}for(let e of n)if(e.type===`color`)r.push(e);else if(e.type===`size`){if(e.field===`cluster_count`&&c)continue;i.push(e)}else e.type===`opacity`&&o.push(e);let d=[...r,...i,...o],f,p;if(r.length===0&&B(e)&&e.classBreakInfos&&e.classBreakInfos.length===1){let t=e.classBreakInfos[0];f=t&&t.symbol}r.length===0&&z(e)&&(f=e.symbol);let m=null;if(f){if(f.type.includes(`3d`)){let e=f.symbolLayers.at(0);e.type===`water`?e.color!=null&&(p=e.color):e.material?.color!=null&&(p=e.material.color)}else f.url||(p=f.color);m=j(f)}let h=this.cssEffectFilter;return(await Promise.all(d.map(async n=>{if(n.legendOptions?.showLegend!==!1){let r=P(e)?n.field:this._getRampTitle(n,t),i=null,a=Te(t,n,this.view.timeZone);if(n.type===`color`){let t=await S(n,null,a)??[],o=this._getColorRampInfosWithEmissiveColors(t,e,m);i={type:`color-ramp`,title:r,infos:o,preview:A(o.map(e=>e.color),{cssEffectFilter:h})},this._hasColorRamp||=t.length>0}else if(n.type===`size`&&n.target!==`outline`)M.test(n.valueExpression)?this._clusterSizeVariable||(this._scaleDrivenSizeVariable=n):(i=await this._getSizeLegendElement(r,n,e,a),c===n&&s?.theme===`spike`&&(i.theme=s.theme),this._hasSizeRamp||=!!(i.infos!=null&&i.infos.length));else if(n.type===`opacity`){let t=await S(n,p,a)??[],o=this._getColorRampPreviewColors(t,e,m);i={type:`opacity-ramp`,title:r,infos:t,preview:A(o,{cssEffectFilter:h})},this._hasOpacityRamp||=t.length>0}return i?.infos?i:null}}))).filter(a)}_getColorRampPreviewColors(e,t,n){return this._getColorRampInfosWithEmissiveColors(e,t,n).map(e=>e.color)}_getColorRampInfosWithEmissiveColors(e,t,n){return e.map(e=>{let r=B(t)?this._getStopEmissiveForColorRampInfo(e,t):n;return r===void 0?e:{...e,color:s(e.color,r)}})}_getStopEmissiveForColorRampInfo(e,t){if(!e.value)return;let n=t.getBreakIndexfromInfos(e.value),r=n===-1?null:t.classBreakInfos[n];return j(r?.symbol??t.defaultSymbol??null)}_getDomainName(e,t,n){if(e&&typeof e!=`function`){let r=`getField`in n&&n.getField?.(e),i=r&&`getFieldDomain`in n&&n.getFieldDomain?n.getFieldDomain(r.name):null;return i?.type===`coded-value`?i.getName(t):null}return null}_getClusterTitle(e){let t=this.layer,n=e.field;if(`featureReduction`in t&&t.featureReduction?.type===`cluster`){let e=t.featureReduction,r=`popupTemplate`in e&&e.popupTemplate,i=r&&r.fieldInfos;if(i){for(let e of i)if(e.fieldName===n)return n===`cluster_count`?e.label||{showCount:!0}:e.label}}return{showCount:!0}}_getRampTitle(e,t){let n=e.field,r=e.normalizationField,i=!1,a=!1,o=!1,s=null;n=typeof n==`function`?null:n,r=typeof r==`function`?null:r;let c=e.legendOptions?.title;if(c!=null)s=c;else if(e.valueExpressionTitle)s=e.valueExpressionTitle;else{if(`renderer`in t&&t.renderer&&`authoringInfo`in t.renderer&&t.renderer.authoringInfo?.visualVariables){let e=t.renderer.authoringInfo.visualVariables;for(let t=0;t<e.length;t++){let n=e[t];if(n.type===`color`){if(n.style===`ratio`){i=!0;break}if(n.style===`percent`){a=!0;break}if(n.style===`percent-of-total`){o=!0;break}}}}s={field:n&&this._getFieldAlias(n,t),normField:r&&this._getFieldAlias(r,t),ratio:i,ratioPercent:a,ratioPercentTotal:o}}return s}_getRendererTitle(e,t){let n=e;if(n.legendOptions?.title)return n.legendOptions.title;if(n.valueExpressionTitle)return n.valueExpressionTitle;let r=n.field,i=null,a=null;if(B(n)&&(i=n.normalizationField,a=n.normalizationType===`percent-of-total`),r=typeof r==`function`?null:r,i=typeof i==`function`?null:i,V(n)){let{field2:e,field3:i,fieldDelimiter:a}=n,o=r&&this._getFieldAlias(r,t);return e&&(o=`<${o}>${a}<${this._getFieldAlias(e,t)}>`,i&&(o=`${o}${a}<${this._getFieldAlias(i,t)}>`)),o}let o=null;return(r||i)&&(o={field:r&&this._getFieldAlias(r,t),normField:i&&this._getFieldAlias(i,t),normByPct:a}),o}_getFieldAlias(e,t){let n=le(t,{checkFeatureReduction:!0});if(n)return n.getFieldAlias(e)||e;let r=((`popupTemplate`in t?t.popupTemplate:null)?.fieldInfos)?.find(t=>e===t.fieldName),i=null;`getField`in t&&t.getField?i=t.getField(e):`fieldsIndex`in t&&t.fieldsIndex&&(i=t.fieldsIndex.get(e));let a=null,o=`featureReduction`in t&&t.featureReduction;o&&(r??=`popupTemplate`in o?o.popupTemplate?.fieldInfos?.find(t=>e?.toLowerCase()===t.fieldName?.toLowerCase()):void 0,`fields`in o&&o.fields&&(a=o.fields.find(t=>t.name?.toLowerCase()===e?.toLowerCase())));let s=r||i||a,c=null;return s&&(c=r?.label||i?.alias||a?.alias||`name`in s&&s.name||`fieldName`in s&&s.fieldName||null),c}_isUnclassedRenderer(e){let t=e.visualVariables,n=B(e)&&e.classBreakInfos&&e.classBreakInfos.length===1,r=!1;return n&&t&&(r=e.field?t.some(t=>!(!t||e.field!==t.field||(e.normalizationField||t.normalizationField)&&e.normalizationField!==t.normalizationField)):!!t.length),r}};e([b()],$.prototype,`_loading`,void 0),e([b()],$.prototype,`children`,void 0),e([b({readOnly:!0})],$.prototype,`cssEffectFilter`,null),e([b()],$.prototype,`hideLayersNotInCurrentView`,void 0),e([b({readOnly:!0})],$.prototype,`isScaleDriven`,null),e([b()],$.prototype,`keepCacheOnDestroy`,void 0),e([b()],$.prototype,`layer`,void 0),e([b()],$.prototype,`layerView`,void 0),e([b()],$.prototype,`legendElements`,void 0),e([b({readOnly:!0})],$.prototype,`loading`,null),e([b({readOnly:!0})],$.prototype,`opacity`,null),e([b()],$.prototype,`parent`,void 0),e([b({readOnly:!0})],$.prototype,`ready`,null),e([b()],$.prototype,`respectLayerDefinitionExpression`,void 0),e([b()],$.prototype,`respectLayerVisibility`,void 0),e([b({readOnly:!0})],$.prototype,`scale`,null),e([b()],$.prototype,`sublayerIds`,void 0),e([b()],$.prototype,`title`,void 0),e([b({readOnly:!0,value:0})],$.prototype,`version`,null),e([b()],$.prototype,`view`,void 0),$=e([te(`esri.legend.ActiveLayerInfo`)],$);const at=$;export{at as default};
2
+ import{__decorate as e}from"tslib";import t from"../Color.js";import{addTokenParameter as n}from"../kernel.js";import r from"../request.js";import i from"../core/Accessor.js";import{isSome as a}from"../core/arrayUtils.js";import o from"../core/Collection.js";import{getColorWithEmissiveStrength as s}from"../core/colorUtils.js";import{JSONMap as c}from"../core/jsonMap.js";import l from"../core/Logger.js";import{clamp as u}from"../core/mathUtils.js";import{debounce as d}from"../core/promiseUtils.js";import{on as f,watch as p,initial as m,whenOnce as h}from"../core/reactiveUtils.js";import{px2pt as g}from"../core/screenUtils.js";import{parseWhereClause as _,sqlName as v,sqlLiteral as y}from"../core/sql.js";import{addQueryParameters as ee}from"../core/urlUtils.js";import{property as b,subclass as te}from"../core/accessorSupport/decorators.js";import{runUntracked as x}from"../core/accessorSupport/tracking.js";import{EffectView as ne}from"../layers/effects/EffectView.js";import{getPixelValueRange as re}from"../layers/raster/formats/pixelRangeUtils.js";import{getEffectiveDisplayFilter as ie}from"../layers/support/displayFilterUtils.js";import{ExportImageParameters as ae}from"../layers/support/ExportImageParameters.js";import{collectFields as oe,collectArcadeFieldNames as se}from"../layers/support/fieldUtils.js";import{isFeatureLayer as ce,getFieldConfigurationsContainer as le}from"../layers/support/layerUtils.js";import{getEffectiveClusterSizeVariable as ue}from"./support/clusterUtils.js";import{getColorFromPointCloudStops as de,getRampStopsForPointCloud as fe,getStretchRampStops as pe,getRampStops as S}from"./support/colorRampUtils.js";import{getHeatmapRampStops as me}from"./support/heatmapRampUtils.js";import{getRelationshipRampElement as he,getRotationAngleForFocus as ge}from"./support/relationshipRampUtils.js";import{getRampStops as _e,realWorldMaxSize as ve,realWorldMinSize as ye}from"./support/sizeRampUtils.js";import{specialCharsLessThan as be,specialCharsGreaterThan as xe,getAuthoringInfoVisualVariableByTheme as C,getSymbolForFlowRenderer as Se,formatValue as w,getFormatOptions as T,mergeWhereClauses as Ce,getMedianColor as E,rgbImgSource as we,getFormatOptionsForVisualVariable as Te}from"./support/utils.js";import{fromJSON as Ee}from"../renderers/support/jsonUtils.js";import{isSupportedRenderer3D as De}from"../renderers/support/rendererConversion.js";import{getScaleDependentSymbol as D}from"../renderers/support/scaleDependentSymbolUtils.js";import Oe from"../renderers/visualVariables/SizeVariable.js";import ke from"../renderers/visualVariables/support/SizeVariableLegendOptions.js";import{updateReferenceSizeSymbol as Ae}from"../smartMapping/renderers/support/referenceSizeUtils.js";import O from"../symbols/SimpleFillSymbol.js";import k from"../symbols/SimpleMarkerSymbol.js";import{applyCIMSymbolColor as je}from"../symbols/support/cimSymbolUtils.js";import{renderSymbol as Me}from"../symbols/support/renderUtils.js";import{renderColorRampPreviewHTML as A,renderDotDensityPreviewHTML as Ne,renderPieChartPreviewHTML as Pe,renderPreviewHTML as Fe,getEmissiveFromSymbol as j}from"../symbols/support/symbolUtils.js";import{getCSSFilterFromEffectList as Ie,isVolumetricSymbol as Le}from"../symbols/support/utils.js";import{formatNumberLabel as Re}from"../widgets/smartMapping/support/utils.js";const M=/^\s*(return\s+)?\$view\.scale\s*(;)?\s*$/i,ze=new c({esriGeometryPoint:`point`,esriGeometryMultipoint:`multipoint`,esriGeometryPolyline:`polyline`,esriGeometryPolygon:`polygon`,esriGeometryMultiPatch:`multipatch`}),N=new k({size:6,outline:{color:[128,128,128,.5],width:.5}}),Be=new O({style:`solid`});function P(e){return e.type===`flow`}function F(e){return e.type===`vector-field`}function I(e){return e.type===`raster-colormap`}function L(e){return e.type===`raster-stretch`}function R(e){return e.type===`raster-shaded-relief`}function z(e){return e.declaredClass===`esri.renderers.SimpleRenderer`}function B(e){return e.declaredClass===`esri.renderers.ClassBreaksRenderer`}function V(e){return e.declaredClass===`esri.renderers.UniqueValueRenderer`}function H(e){return e.declaredClass===`esri.renderers.HeatmapRenderer`}function Ve(e){return U(e)||W(e)||G(e)||He(e)}function He(e){return e.declaredClass===`esri.renderers.PointCloudRGBRenderer`}function U(e){return e.declaredClass===`esri.renderers.PointCloudClassBreaksRenderer`}function W(e){return e.declaredClass===`esri.renderers.PointCloudStretchRenderer`}function G(e){return e.declaredClass===`esri.renderers.PointCloudUniqueValueRenderer`}function Ue(e){return e.declaredClass===`esri.renderers.DotDensityRenderer`}function We(e){return e.declaredClass===`esri.renderers.PieChartRenderer`}function Ge(e,t){return z(e)||B(e)||V(e)||H(e)||Ue(e)||We(e)?t.type===`2d`||De(e):L(e)||I(e)||R(e)||U(e)||W(e)||G(e)||F(e)||P(e)}function Ke(e){return e.declaredClass===`esri.layers.BuildingSceneLayer`}function K(e){return e.declaredClass===`esri.layers.SubtypeGroupLayer`}function qe(e){return e.declaredClass===`esri.layers.VoxelLayer`}function Je(e){return e.declaredClass===`esri.layers.WMSLayer`}function Ye(e){return e.declaredClass===`esri.layers.WMTSLayer`}function q(e){return e.declaredClass===`esri.layers.MapImageLayer`}function Xe(e){return e.declaredClass===`esri.layers.TileLayer`}function J(e){return e.declaredClass===`esri.layers.ImageryLayer`}function Y(e){return e.declaredClass===`esri.layers.ImageryTileLayer`}function Ze(e){return e.declaredClass===`esri.layers.WCSLayer`}function Qe(e){return e.type===`stretch-ramp`}function $e(e){return(`authoringInfo`in e?e?.authoringInfo:null)?.type===`univariate-color-size`}function et(e){let t=`authoringInfo`in e?e?.authoringInfo:null;return t?.type===`univariate-color-size`&&t?.univariateTheme===`above-and-below`}function tt(e){return`sublayers`in e}function nt(e){return e&&`symbol`in e}function rt(e,t){let{field:n,field2:r,field3:i,fieldDelimiter:a,valueExpression:o}=e,s=!(!n&&!o||!r&&!i);if(!n)return null;let c=s?t?.toString().split(a||``):[t],l=n?{[n]:c?.[0]}:null;return l&&(r&&(l[r]=c?.[1]),i&&(l[i]=c?.[2])),l}const it=new k({style:`path`,path:`M10,5 L5,0 0,5 M5,0 L5,15`,size:15,outline:{width:1,color:[85,85,85,1]}});let X={},Z={};const Q=new WeakMap;let $=class extends i{constructor(e){super(e),this._hasColorRamp=!1,this._hasOpacityRamp=!1,this._hasSizeRamp=!1,this._loading=!1,this._dotDensityUrlCache=new Map,this._scaleDrivenSizeVariable=null,this._clusterSizeVariable=null,this._layerDefinitionExpression=null,this._layerDefinitionExpressionClause=null,this._layerDisplayFilter=null,this._layerDisplayFilterClause=null,this.children=new o,this.hideLayersNotInCurrentView=!1,this.keepCacheOnDestroy=!1,this.layer=null,this.layerView=null,this.legendElements=[],this.parent=null,this.respectLayerDefinitionExpression=!1,this.respectLayerVisibility=!0,this.scale=0,this.sublayerIds=[],this.title=null,this.view=null}initialize(){let e=()=>this.notifyChange(`ready`);this.addHandles([f(()=>this.children,`change`,t=>{let{added:n,removed:r}=t;n.forEach(t=>{let n=`activeLayerInfo-ready-watcher-${t.layer.uid}`;this.addHandles(p(()=>t.ready,e,m),n)}),r.forEach(e=>this.removeHandles(e.layer.uid)),e()}),p(()=>({stationary:this.view?.stationary??!0,scale:this.view?.scale??0}),e=>{e.stationary&&this.scale!==e.scale&&this._set(`scale`,e.scale)},m)]),this.keepCacheOnDestroy||(X={},Z={})}destroy(){this._dotDensityUrlCache=null,this._scaleDrivenSizeVariable=null,this.keepCacheOnDestroy||(X=null,Z=null),this._layerDefinitionExpressionClause=null}get cssEffectFilter(){let e=this.cssEffectView;return e?(e.scale=this.scale,Ie(e,!0)):null}get cssEffectView(){let{layer:e}=this,t=`effect`in e?e.effect:null;if(!t)return null;let n=this._get(`cssEffectView`);if(n&&n.effect===t)return n;let r=new ne({effect:t});return r.endTransition(),r}get isScaleDriven(){let e=this.layer;if(e===null)return!1;if(`effect`in e&&e.effect&&Array.isArray(e.effect))return!0;if(`featureReduction`in e&&e.featureReduction){if(e.featureReduction.type===`cluster`)return!0;if(e.featureReduction.type===`binning`&&`renderer`in e.featureReduction&&e.featureReduction.renderer)return this._isRendererScaleDriven(e.featureReduction.renderer)}return`renderer`in e&&e.renderer?`displayFilterInfo`in e&&e.displayFilterInfo&&V(e.renderer)?!0:this._isRendererScaleDriven(e.renderer):this._isLayerScaleDriven(this.layer)}get loading(){return this.children.length>0?this.children.some(e=>e.loading):this._loading}get opacity(){let e=this.layer.opacity,t=this.parent?.opacity,n=this.layer.parent,r=n&&`uid`in n?this._getParentLayerOpacity(n):null;return t==null?r==null?e:r*e:t*e}get ready(){return x(()=>this.layer===null?!0:this.children.length>0?this._isGroupActive():this.legendElements.length>0)}get version(){return this.commitProperty(`ready`),x(()=>this._get(`version`)+1)}async buildLegendElementsForFeatureCollections(e){if(this._loading=!0,this.hideLayersNotInCurrentView&&!await this._isLayerInCurrentView()){this.legendElements=[],this._loading=!1,this.notifyChange(`ready`);return}let t=Array.from(e,e=>{if(ce(e))return this._getRendererLegendElements(e.renderer,{title:e.title});if(e.featureSet?.features.length){let t=e.layerDefinition,n=t?.drawingInfo,r=n&&Ee(n.renderer),i=ze.read(t.geometryType);return r?this._getRendererLegendElements(r,{title:e.name,geometryType:i}):(l.getLogger(this).warn(`drawingInfo not available!`),null)}return null});try{let e=[],n=await Promise.allSettled(t);for(let t of n)if(t.status===`fulfilled`)for(let n of t.value??[])e.push(n);this.legendElements=e}catch(e){l.getLogger(this).warn(`error while building legend for layer!`,e)}finally{this._loading=!1,this.notifyChange(`ready`)}}async buildLegendElementsForRenderer(e){try{this._loading=!0;let t=!this.hideLayersNotInCurrentView||await this._isLayerInCurrentView();this.legendElements=t?await this._getRendererLegendElements(e):[]}catch(e){l.getLogger(this).warn(`error while building legend for layer!`,e)}finally{this._loading=!1,this.notifyChange(`ready`)}}async buildLegendElementsForFeatureReduction(e){try{this._loading=!0,await this._waitForLayerViewUpdate(this.layerView);let t=!this.hideLayersNotInCurrentView||await this._isLayerInCurrentView();this.legendElements=t?await this._getLegendElementsForFeatureReduction(e):[]}catch(e){l.getLogger(this).warn(`error while building legend for layer!`,e)}finally{this._loading=!1,this.notifyChange(`ready`)}}async buildLegendElementsForTools(){this._loading=!0;let e=this.layer;if(qe(e))await this._constructLegendElementsForVoxelLayer();else if(Ye(e))this._constructLegendElementsForWMTSlayer();else if(Je(e))await this._constructLegendElementsForWMSSublayers();else if(Ke(e))await this._constructLegendElementsForBuildingSceneLayer();else if(q(e)||Xe(e)||K(e))await this._constructLegendElementsForSublayers();else{this.removeHandles(`imageryLayers-watcher`);let t=`default`;if(J(e)){let n=e?.rasterFunction?.functionName||`default`,r=e.bandIds?.length?e.bandIds.join(``):`###`;t=n+`_`+r}if(Y(e)||e.type===`link-chart`)return;await this._getLegendLayers(`${e.uid}-${t}`).then(async t=>{this.legendElements=[];let n=t.map(async t=>{if(J(e)){let t=p(()=>[e.rasterFunction,e.bandIds],()=>d(async()=>{X.default=null,e.renderer?await this.buildLegendElementsForRenderer(e.renderer):await this.buildLegendElementsForTools()})());this.addHandles(t,`imageryLayers-watcher`)}let n=this._generateSymbolTableElementForLegendLayer(t);n?.infos.length&&(J(e)&&(n.title=e.title),this.legendElements.push(n))});await Promise.allSettled(n)}).catch(e=>{l.getLogger(this).warn(`Request to server for legend has failed!`,e)})}this._loading=!1,this.notifyChange(`ready`)}async _isLayerInCurrentView(e){return this._checkFeatureCountForExpression(e,this.view.extent)}_getParentLayerOpacity(e){let t=1,n=e.parent;return n&&`uid`in n&&(t=this._getParentLayerOpacity(n)),e.opacity*t}_isGroupActive(){return this.children.some(e=>e.ready)}_isRendererScaleDriven(e){if(e.type===`dot-density`)return!0;let t=`valueExpression`in e?e.valueExpression:null;return M.test(t)||(`visualVariables`in e?e.visualVariables:null)?.some(e=>this._isScaleDrivenSizeVariable(e))?!0:this._hasScaleDrivenSymbols(e)}_hasScaleDrivenSymbols(e){switch(e.type){case`simple`:return this._isScaleDrivenSymbol(e.symbol);case`class-breaks`:return this._isScaleDrivenSymbol(e.defaultSymbol)||e.classBreakInfos.some(e=>this._isScaleDrivenSymbol(e.symbol));case`unique-value`:return this._isScaleDrivenSymbol(e.defaultSymbol)||!!e.uniqueValueInfos?.some(e=>this._isScaleDrivenSymbol(e.symbol))}return!1}_isScaleDrivenSymbol(e){if(e?.type===`cim`){let{primitiveOverrides:t,minScale:n,maxScale:r}=e.data,i=t?.some(e=>(e.valueExpressionInfo?.expression||``).includes(`$view.scale`))??!1;return n!=null||r!=null||i}return!1}_isScaleDrivenSizeVariable(e){if(e&&e.type!==`size`)return!1;let t=e,n=t.minSize,r=t.maxSize;return typeof n==`object`&&n&&this._isScaleDrivenSizeVariable(n)||typeof r==`object`&&r&&this._isScaleDrivenSizeVariable(r)?!0:M.test(t.valueExpression)}_isLayerScaleDriven(e){if(`minScale`in e&&e.minScale>0||`maxScale`in e&&e.maxScale>0)return!0;if(`sublayers`in e&&e.sublayers)return e.sublayers.some(e=>this._isLayerScaleDriven(e));let t=e.parent;if(e.loaded===!1&&t&&q(t)&&`source`in e&&e.source&&e.source.type===`map-layer`){for(let n of t.sourceJSON.layers??[])if(n.id===e.source.mapLayerId&&(n.minScale>0||n.maxScale>0))return!0}return!1}async _constructLegendElementsForVoxelLayer(){this._loading=!0,this.legendElements=[],this.removeHandles(`voxel-style-watcher`),this.removeHandles(`voxel-current-variable`);let e=this.layer;this.addHandles(p(()=>e.currentVariableId,()=>this._constructLegendElementsForVoxelLayer()),`voxel-current-variable`),this.addHandles(p(()=>e.getVariableStyles(),()=>this._constructLegendElementsForVoxelLayer()),`voxel-style-watcher`);let t=e.getVariableStyle(null),n=[];if(t){if(t.uniqueValues?.length){let e=[];t.uniqueValues.forEach(t=>{t.enabled&&e.push({label:t.label||`${t.value}`,value:t.value,symbol:new O({color:t.color,outline:null})})}),e.length&&n.push({type:`symbol-table`,title:t.label,infos:e})}else if(t.transferFunction){let{colorStops:e,stretchRange:r}=t.transferFunction,i=e.toArray().reverse(),a=r.map((e,t)=>`${t===0?be:xe} ${Re(e)}`).reverse(),o=i.map(e=>({color:e.color,value:null,label:null}));o[0].label=a[0],o[o.length-1].label=a[1],n.push({type:`color-ramp`,title:t.label,infos:o,preview:A(i.map(e=>e.color))})}}await this._generatePreviewsForLegendElements(n,{opacity:e.opacity}),this.legendElements=n,this._loading=!1,this.notifyChange(`ready`)}_constructLegendElementsForWMTSlayer(){this._loading=!0,this.legendElements=[],this.removeHandles(`wmts-activeLayer-watcher`);let e=this.layer.activeLayer;this.addHandles(p(()=>{let{layer:e}=this;return e&&`activeLayer`in e&&e.activeLayer},()=>this._constructLegendElementsForWMTSlayer()),`wmts-activeLayer-watcher`);let t=e.styleId?e.styles?.find(({id:t})=>t===e.styleId)?.legendUrl:void 0;t&&(this.legendElements=[{type:`symbol-table`,title:e.title,infos:[{src:t,opacity:this.opacity}]}]),this._loading=!1,this.notifyChange(`ready`)}async _constructLegendElementsForWMSSublayers(){this._loading=!0,this.legendElements=[],this.removeHandles(`wms-sublayers-watcher`);let e=this.layer,t=null;(e.customParameters||e.customLayerParameters)&&(t={...e.customParameters,...e.customLayerParameters}),this.addHandles(p(()=>{let{layer:e}=this;return e&&`sublayers`in e&&e.sublayers},()=>this._constructLegendElementsForWMSSublayers()),`wms-sublayers-watcher`),this.legendElements=await this._generateLegendElementsForWMSSublayers(e.sublayers,t),this._loading=!1,this.notifyChange(`ready`)}async _generateLegendElementsForWMSSublayers(e,t){let n=this.layer,r=[];this.addHandles(e.on(`change`,()=>this._constructLegendElementsForWMSSublayers()),`wms-sublayers-watcher`);let i=this.sublayerIds?.map(e=>n.findSublayerById(e))?.filter(a)??[],o=i.length?i:e.toArray();for(let e of o){let n=p(()=>[e.title,e.visible,e.legendEnabled],()=>this._constructLegendElementsForWMSSublayers());if(this.addHandles(n,`wms-sublayers-watcher`),!this.respectLayerVisibility||e.visible&&e.legendEnabled){let n=await this._generateSymbolTableElementForWMSSublayer(e,t);n?.infos.length&&r.unshift(n)}}return r}async _generateSymbolTableElementForWMSSublayer(e,t){if(!e.legendUrl&&e.sublayers){let n=(await this._generateLegendElementsForWMSSublayers(e.sublayers,t)).filter(e=>e);return{type:`symbol-table`,title:e.title,infos:n}}return this._generateSymbolTableElementForLegendUrl(e,t)}async _generateSymbolTableElementForLegendUrl(e,t){let n=e.legendUrl;if(!n)return;let i={type:`symbol-table`,title:e.title||e.name||String(e.id??``),infos:[]};t&&(n=ee(n,t));let a=null,o=e.layer?.opacity;try{a=(await r(n,{responseType:`image`})).data,a&&(a.style.opacity=o)}catch{}return i.infos.push({src:n,preview:a,opacity:o}),i}_getLegendLayers(e,t){let n=X&&X[e];if(n)return Promise.resolve(n);let r=Z?.[e];if(r!=null)return r;let i=this._legendRequest(t).then(t=>{let n=t.layers;return X&&(X[e]=n),n}).finally(()=>{Z&&delete Z[e]});return Z[e]=i,i}_legendRequest(e){let t=this.layer,n={f:`json`,dynamicLayers:e};if(J(t)){let e=t.exportImageServiceParameters.rasterFunction;if(e&&(n.renderingRule=JSON.stringify(e.functionDefinition?.toJSON()||e.toJSON())),t.bandIds&&(n.bandIds=t.bandIds.join()),t.raster||t.viewId||t.customParameters){let{raster:e,viewId:r,customParameters:i}=t;n={raster:e,viewId:r,...n,...i}}}let i=t.url.replace(/(\/)+$/,``);if(`version`in t&&+t.version>=10.01){let e=i.indexOf(`?`);e>-1?i=i.slice(0,e)+`/legend`+i.slice(e):i+=`/legend`}else{let e=i.toLowerCase().indexOf(`/rest/`),t=e===-1?i:i.slice(0,e)+i.slice(e+5);i=`https://utility.arcgis.com/sharing/tools/legend?soapUrl=`+encodeURI(t)+`&returnbytes=true`}return r(i,{query:n}).then(e=>e.data)}async _constructLegendElementsForBuildingSceneLayer(){this._loading=!0,this.legendElements=[],this.removeHandles(`sublayers-watcher`);let e=this.layer;this.addHandles(p(()=>e.sublayers,()=>this._constructLegendElementsForBuildingSceneLayer()),`sublayers-watcher`);try{this.legendElements=await this._generateLegendElementsForBuildingSublayers(e.sublayers,this.opacity)}catch(e){l.getLogger(this).warn(`Request to server for legend has failed!`,e)}finally{this._loading=!1,this.notifyChange(`ready`)}}async _generateLegendElementsForBuildingSublayers(e,t){let n=[];this.addHandles(e.on(`change`,()=>this._constructLegendElementsForBuildingSceneLayer()),`sublayers-watcher`);let r=e.toArray();for(let e of r){let r=p(()=>[`renderer`in e&&e.renderer,e.opacity,e.title,e.visible],()=>this._constructLegendElementsForBuildingSceneLayer());if(this.addHandles(r,`sublayers-watcher`),!this.respectLayerVisibility||e.visible){let r=e?.opacity==null?null:e.opacity,i=r==null?t:r*t;if(e.type===`building-group`){let t={type:`symbol-table`,title:e.title,infos:[]},r=await this._generateLegendElementsForBuildingSublayers(e.sublayers,i);t.infos.push(...r),n=[t,...n]}else e.renderer&&(n=[...await this._getRendererLegendElements(e.renderer,{title:e.title,opacity:i,sublayer:e}),...n])}}return n.filter(e=>!!e&&(`infos`in e&&e.infos?e.infos.length>0:!0))}async _constructLegendElementsForSublayers(){this._loading=!0,this.removeHandles(`sublayers-watcher`);let e=this.layer;if(!(q(e)||Xe(e)||K(e))||this.hideLayersNotInCurrentView&&!await this._isLayerInCurrentView())this.legendElements=[],this._loading=!1,this.notifyChange(`ready`);else{this.addHandles(p(()=>e.sublayers,()=>this._constructLegendElementsForSublayers),`sublayers-watcher`);try{this.legendElements=await this._generateLegendElementsForSublayers(e.sublayers,this.opacity)}catch(e){l.getLogger(this).warn(`Request to server for legend has failed!`,e)}finally{this._loading=!1,this.notifyChange(`ready`)}}}async _generateLegendElementsForSublayers(e,t,n){let r=this.layer,i=[];this.addHandles(e.on(`change`,()=>this._constructLegendElementsForSublayers()),`sublayers-watcher`);let o=e.toArray();!n&&this.sublayerIds&&this.sublayerIds.length&&(o=K(r)?this.sublayerIds.map(e=>r.findSublayerForSubtypeCode(e)).filter(a):this.sublayerIds.map(e=>r.findSublayerById(e)).filter(a));for(let e of o){let r=p(()=>[e.renderer,e.opacity,e.title,e.visible,e.legendEnabled],()=>this._constructLegendElementsForSublayers());this.addHandles(r,`sublayers-watcher`);let a=e.createQuery().where,o=!this.hideLayersNotInCurrentView||await this._isLayerInCurrentView(a),s=!this.respectLayerVisibility||e.visible&&e.legendEnabled&&this._isSublayerInScale(e);if(o&&s){let r=e?.opacity==null?null:e.opacity,a=r==null?t:r*t,o=!tt(e)||e.originIdOf(`renderer`)>2&&!e.sublayers;if(e.renderer&&o)await e.load(),i=[...await this._getRendererLegendElements(e.renderer,{title:e.title,opacity:a,sublayer:e}),...i];else if(tt(e)){let t=await this._generateSymbolTableElementForSublayer(e,a,n);t&&i.unshift(t)}}}return i.filter(e=>!!e&&(`infos`in e&&e.infos?e.infos.length>0:!0))}async _generateSymbolTableElementForSublayer(e,t,n){if(!n){n=new Map;let t=this.layer,r=e.source,i=!(!r||r.type===`map-layer`&&r.mapLayerId===e.id&&(!r.gdbVersion||r.gdbVersion===(`gdbVersion`in t&&t.gdbVersion)))||e.originIdOf(`renderer`)>2||e.originIdOf(`labelingInfo`)>2||e.originIdOf(`labelsVisible`)>2,a=null;if(i){let e=new ae({layer:this.layer});a=e.hasDynamicLayers?e.dynamicLayers:null,e.destroy()}let o=a||`${t.uid}-default`;(await this._getLegendLayers(o,a)).forEach(e=>n.set(e.layerId,e))}let r=n.get(e.id);if((!r||r?.subLayerIds&&r.defaultVisibility)&&e.sublayers){let r=await this._generateLegendElementsForSublayers(e.sublayers,t,n);return{type:`symbol-table`,title:e.title,infos:r}}return this._generateSymbolTableElementForLegendLayer(r,e,t)}_generateSymbolTableElementForLegendLayer(e,t,n){if(!e?.legend||this.respectLayerVisibility&&!this._isLegendLayerInScale(e,t))return null;let r=t?.renderer,i=t?.title||e.layerName;if(r&&(!t||t?.originIdOf(`renderer`)>2)){let e=t?.title||this._getRendererTitle(r,t);e&&(i&&typeof e!=`string`&&`title`in e&&(e.title=i),i=e)}let a={type:`symbol-table`,title:i,legendType:e.legendType||null,infos:[]},o=t?this._sanitizeLegendForSublayer(e.legend.slice(),t):e.legend;return e.legendGroups&&e.legendGroups.length>0?e.legendGroups.forEach(r=>{let i={type:`symbol-table`,title:r.heading,legendType:e.legendType||null,infos:this._generateSymbolTableElementInfosForLegendLayer(o.filter(e=>e.groupId===r.id),e.layerId,r.heading||a.title||t?.title,n)};i.infos?.length>0&&a.infos.push(i)}):a.infos=this._generateSymbolTableElementInfosForLegendLayer(o,e.layerId,a.title||t?.title,n),a.infos.length>0?a:null}_generateSymbolTableElementInfosForLegendLayer(e,t,r,i){return e.map(e=>{let a=e.url;if(e.imageData&&e.imageData.length>0)a=`data:image/png;base64,${e.imageData}`;else if(!a.startsWith(`http`))a=n(`${this.layer.url}/${t}/images/${a}`);else return null;let o=e.label;return{previewAriaLabel:o||r,label:o,src:a,opacity:i??this.opacity,width:e.width,height:e.height}}).filter(a)}_isSublayerInScale(e){let t=e.minScale||0,n=e.maxScale||0;return!(t>0&&t<this.scale||n>this.scale)}_isLegendLayerInScale(e,t){let n=t||this.layer,r=null,i=null,a=!0;return!n.minScale&&n.minScale!==0||!n.maxScale&&n.maxScale!==0?(e.minScale===0&&n.tileInfo&&(r=n.tileInfo.lods[0].scale),e.maxScale===0&&n.tileInfo&&(i=n.tileInfo.lods[n.tileInfo.lods.length-1].scale)):(r=Math.min(n.minScale,e.minScale)||n.minScale||e.minScale,i=Math.max(n.maxScale,e.maxScale)),(r>0&&r<this.scale||i>this.scale)&&(a=!1),a}_sanitizeLegendForSublayer(e,t){if(`version`in this.layer&&+this.layer.version<10.1||e.length===0)return e;let n=t.renderer,r=e.some(e=>e.values),i=0,a=null;return r&&e.some((e,t)=>(e.values||(i=t,a=e,a.label||(a.label=`others`)),a!=null)),n?n.type===`unique-value`?a&&(e.splice(i,1),e.push(a)):n.type===`class-breaks`&&(a&&e.splice(i,1),n.legendOptions?.order||e.reverse(),a&&e.push(a)):a&&(e.splice(i,1),e.push(a)),e}async _getRendererLegendElements(e,t={}){if(!Ge(e,this.view))return l.getLogger(this).warn(`Renderer of type '${e.type}' not supported!`),[];if(Ve(e))return this._constructPointCloudRendererLegendElements(e,t);if(Ue(e))return this._constructDotDensityRendererLegendElements(e);let n=await this._loadRenderer(e);return We(n)?this._constructPieChartRendererLegendElements(n):this._constructRendererLegendElements(n,t)}async _getLegendElementsForFeatureReduction(e){let t=null;return e.type===`binning`?t=e.renderer:e.type===`cluster`&&(t=this._getClusterRenderer(e)),t?this._getRendererLegendElements(t,{isFeatureReductionRenderer:!0}):[]}_getPointCloudRendererTitle(e){return(e.legendOptions?.title||e.field)??``}async _constructPointCloudRendererLegendElements(e,t={}){let n=t.title,r=[],i=null,a=null;if(U(e))i={type:`symbol-table`,title:n||this._getPointCloudRendererTitle(e),infos:[]},e.colorClassBreakInfos.forEach(e=>{i.infos.unshift({label:e.label||e.minValue+` - `+e.maxValue,value:[e.minValue,e.maxValue],symbol:this._getAppliedCloneSymbol(N,e.color)})});else if(W(e)){let t=e.stops,r=null;if(t?.length&&(t.length===1&&(r=t[0].color),!r)){let e=t[0].value,n=t[t.length-1].value;if(e!=null&&n!=null){let i=e+(n-e)/2;r=de(i,t)}}i={type:`symbol-table`,title:null,infos:[{label:null,value:null,symbol:this._getAppliedCloneSymbol(N,r||N.color)}]};let o=fe(e.stops??[])??[];a={type:`color-ramp`,title:n||this._getPointCloudRendererTitle(e),infos:o,preview:A(o.map(e=>e.color))}}else G(e)&&(i={type:`symbol-table`,title:n||this._getPointCloudRendererTitle(e),infos:[]},e.colorUniqueValueInfos?.forEach(e=>{i.infos.push({label:e.label||e.values.join(`, `),value:e.values.join(`, `),symbol:this._getAppliedCloneSymbol(N,e.color)})}));return i?.infos.length&&r.push(i),a?.infos.length&&r.push(a),await this._generatePreviewsForLegendElements(r,{opacity:this.opacity,symbolConfig:{applyColorModulation:!!e.colorModulation}}),r}async _getElementInfoForDotDensity(e,t){let{color:n,label:r,valueExpressionTitle:i}=t,{backgroundColor:a,outline:o,dotSize:s}=e,c=this.cssEffectFilter,l=s+`-`+n+`-`+a+`-`+(o&&JSON.stringify(o.toJSON()))+`-`+c,u=this._dotDensityUrlCache,d=u.has(l)?u.get(l):Ne(e,n);u.set(l,d);let f={shape:{type:`image`,x:0,y:0,width:d.width,height:d.height,src:d.src},fill:null,stroke:null,offset:[0,0]},p=Me([[f]],[d.width,d.height],{cssEffectFilter:this.cssEffectFilter});return{opacity:1,src:d.src,preview:p,width:d.width,height:d.height,previewAriaLabel:r||i}}async _constructDotDensityRendererLegendElements(e){let t=e.calculateDotValue(this.view.scale),n=e.legendOptions?.unit,r={type:`symbol-table`,title:{value:t&&Math.round(t),unit:n||``},infos:[]};for(let t of e.attributes){let n=await this._getElementInfoForDotDensity(e,t);n.label=t.label||t.valueExpressionTitle||t.field,r.infos.push(n)}return[r]}async _constructPieChartRendererLegendElements(e){let t=[],n=null,r=e.outline;e.attributes.forEach(e=>{let n=new k({color:e.color,outline:r}),i=e.label||e.valueExpressionTitle||e.field;t.push({label:i,symbol:n})});let i=t.length?[...t]:[];if(e.othersCategory?.color&&e.othersCategory?.threshold!==0){let i=new k({color:e.othersCategory.color,outline:r});n=e.othersCategory.label||`Other`,t.push({label:n,symbol:i})}if(e.defaultColor?.a){let n=new k({color:e.defaultColor,outline:r});t.push({label:e.defaultLabel,symbol:n})}let a=await this._getVisualVariableLegendElements(e,this.layer)||[];if(t.length){a.unshift({type:`symbol-table`,title:null,infos:t});let o=i.filter(e=>e.label!==n).map(e=>e.symbol.color).filter(Boolean),s=Pe(o,{holePercentage:e.holePercentage,backgroundColor:e.backgroundFillSymbol?.color,cssEffectFilter:this.cssEffectFilter,outline:r});a.unshift({type:`pie-chart-ramp`,title:this._getRendererTitle(e,this.layer),infos:t,preview:s})}return await this._generatePreviewsForLegendElements(a,{opacity:this.layer.opacity,cssEffectFilter:this.cssEffectFilter}),a}async _getWhereClause(e,t,n){let r=await _(e,n),i=new Set,{field:a,field2:o,field3:s}=t;oe(i,n,[a,o,s]),await se(i,n,null,t.valueExpression);let c=new Set(Array.from(i,e=>e.toLowerCase()));return(r?.fieldNames.map(e=>e.toLowerCase()))?.some(e=>!c.has(e))?null:r}async _processDefinitionExpression(e,t){if(!(`definitionExpression`in e))return;let n=e.definitionExpression;n&&this.respectLayerDefinitionExpression?this._layerDefinitionExpression!==n&&(this._layerDefinitionExpressionClause=await this._getWhereClause(n,t,e.fieldsIndex)):this._layerDefinitionExpressionClause=null,this._layerDefinitionExpression=n}async _processDisplayFilter(e,t){if(!(`displayFilterInfo`in e))return;let n=e.displayFilterInfo?ie(e.displayFilterInfo,this.view):null;return n?.where?this._layerDisplayFilter?.id!==n?.id&&(this._layerDisplayFilterClause=await this._getWhereClause(n.where,t,e.fieldsIndex)):this._layerDisplayFilterClause=null,this._layerDisplayFilter=n,n}async _constructRendererLegendElements(e,t={}){let{title:n,sublayer:r,isFeatureReductionRenderer:i}=t,a=r||this.layer,o=C(e,`reference-size`),s=C(e,`spike`),c=i&&`renderer`in a&&a.renderer?a.renderer:e,l=null;V(c)&&(await this._processDefinitionExpression(a,c),l=await this._processDisplayFilter(a,c)),this._hasColorRamp=!1,this._hasOpacityRamp=!1,this._hasSizeRamp=!1,this._scaleDrivenSizeVariable=null;let u=await this._getVisualVariableLegendElements(e,a)||[],d={type:`symbol-table`,title:n||this._getRendererTitle(e,a),infos:[]},f=null,p=!1,m=new Set;if(P(e)&&!this._hasSizeRamp){let t=await Se(e);d.infos.push({label:null,symbol:t})}else if($e(e)){let t=n,r=et(e)?`univariate-above-and-below-ramp`:`univariate-color-size-ramp`,i=u.findIndex(e=>e.type===`color-ramp`),a=i===-1?null:u.splice(i,1)[0],o=u.findIndex(e=>e.type===`size-ramp`),s=o===-1?null:u.splice(o,1)[0],c=[];a&&(t=a.title,c.push(a)),s&&(t=s.title,c.push(s)),c.length>0&&u.push({type:r,title:t,infos:c})}else if(H(e)){let t=me(e);u.push({type:`heatmap-ramp`,title:n||this._getRendererTitle(e,a),infos:t,preview:A(t.map(e=>e.color),{cssEffectFilter:this.cssEffectFilter})})}else if(V(e)){let t=e.authoringInfo;if(t?.type===`relationship`){let{numClasses:n,field1:r,field2:i}=t,o=t.focus;if(n&&r&&i){let t=[r,i],s=ge(o)||0;for(let e of t){let{field:t,normalizationField:n,label:r}=e,i=r||{field:this._getFieldAlias(t,a),normField:n&&this._getFieldAlias(n,a)},o=it.clone();o.angle=s,d.infos.push({label:i,symbol:o}),m.add(o),s+=90}let c=he({focus:o,numClasses:n,infos:e.uniqueValueInfos??[]});u.unshift(c)}}else if(J(this.layer)||Y(this.layer)){let{uniqueValueInfos:t}=e;if(t)for(let e of t)e.symbol&&await this._checkClausesForUVR(c,e.value,a)&&d.infos.push({label:e.label||e.value,value:e.value,symbol:e.symbol})}else{let{field:t,field2:r,field3:i,fieldDelimiter:s,valueExpression:u,defaultSymbol:f}=e,m=!(!t&&!u||!r&&!i),h=l?.title?.trim(),g=[],{uniqueValueGroups:_}=e;if(_)for(let e of _){let n={type:`symbol-table`,title:e.heading,infos:[]},{classes:l}=e;if(l)for(let e of l){let{symbol:l,values:d}=e;if(l){let f=[],p=[];for(let e of d??[]){let{value:n,value2:o,value3:c}=e,l=[],d=[];(t||u)&&(l.push(n),d.push(this._getDomainName(t,n,a)??w(n,T(a,t,this.view.timeZone)))),r&&(l.push(o),d.push(this._getDomainName(r,o,a)??w(o,T(a,r,this.view.timeZone)))),i&&(l.push(c),d.push(this._getDomainName(i,c,a)??w(c,T(a,i,this.view.timeZone)))),f.push(m?l.join(s||``):l[0]),p.push(d.join(` - `))}let h=f.join(`, `),g=e.label;if(!g){let e=p.filter(Boolean);g=e.length?e.join(`, `):h}let _=D(e,this.view.scale)??l;_.type===`cim`&&o&&(_=_.clone(),Ae(_,{innerDotSize:8,outerRingSize:16}));let v=!1;for(let e of f)if(v=await this._checkClausesForUVR(c,e,a),v)break;v&&n.infos.push({label:g,value:h,symbol:_})}}n.infos.length&&g.push(n)}if(g.length){let t=g[0];if(g.length===1&&`title`in t&&!t.title){let e=t.infos?.filter(nt)??[];d.infos.push(...e)}else f&&(g.push({type:`symbol-table`,infos:[{label:e.defaultLabel||`others`,symbol:f}]}),p=!0),d.infos.push(...g);!n&&!e.legendOptions?.title&&!e.valueExpressionTitle?d.title=h:h&&(d.title=`${d.title} (${h})`)}}e.defaultSymbol&&!p&&(d.infos.push({label:e.defaultLabel||`others`,symbol:e.defaultSymbol}),p=!0)}else if(B(e)){if(!o&&!s){if(f=this._isUnclassedRenderer(e),!f||!this._hasSizeRamp){let t=e.classBreakInfos.filter(({symbol:e})=>e),n=e.legendOptions?.order===`ascending-values`;for(let e of t){let{label:t,minValue:r,maxValue:i}=e,o=D(e,this.view.scale)??e.symbol,s=t||(f?null:`${r} - ${i}`),c={previewAriaLabel:s||d.title||a.title,label:s,value:[r,i],symbol:o};n?d.infos.push(c):d.infos.unshift(c)}f&&(d.title=null),this._updateInfosForClassedSizeRenderer(e,d.infos)}e.defaultSymbol&&!f&&(d.infos.push({label:e.defaultLabel||`others`,symbol:e.defaultSymbol}),p=!0)}}else if(L(e)){if(Y(this.layer)||Ze(this.layer)){let t=await this._constructTileImageryStretchRendererElements(e);Qe(t)?u.push(t):d.infos=t}else{let t=this.layer,n,r;e.customStatistics?.length&&({min:n,max:r}=e.customStatistics[0]);let i=[],a=t.serviceRasterInfo;if(t.rasterFunction)try{a=await t.generateRasterInfo(t.rasterFunction)}catch{}let o=re(a.pixelType);if(a.bandCount===1){let i=t.bandIds?.[0]||0;n??=a.statistics?a.statistics[i].min:o[0],r??=a.statistics?a.statistics[i].max:o[1],n||r?u.push(await this._getStretchLegendElements(e,{min:n,max:r})):this._getServerSideLegend()}else if(t.bandIds?.length===1)n??=a.statistics?a.statistics[t.bandIds[0]].min:o[0],r??=a.statistics?a.statistics[t.bandIds[0]].max:o[1],n||r?u.push(await this._getStretchLegendElements(e,{min:n,max:r})):this._getServerSideLegend();else if(a.bandCount>=3){let{bandInfos:e}=a,{bandIds:n}=t;e.length>=a.bandCount?n?.length===3?(i=n.map(t=>e[t].name),d.infos=this._createSymbolTableElementMultiBand(i)):t.format===`lerc`?(i=[0,1,2].map(t=>e[t].name),d.infos=this._createSymbolTableElementMultiBand(i)):this._getServerSideLegend():t.format===`lerc`?(i=[`band1`,`band2`,`band3`],d.infos=this._createSymbolTableElementMultiBand(i)):this._getServerSideLegend()}else this._getServerSideLegend()}}else if(I(e))e.colormapInfos.forEach(e=>{d.infos.push({label:e.label,value:e.value,symbol:this._getAppliedCloneSymbol(Be,e.color)})});else if(z(e)){let n=e.symbol;switch(t.geometryType){case`point`:n=`pointSymbol`in a?a.pointSymbol:null;break;case`polyline`:n=`lineSymbol`in a?a.lineSymbol:null;break;case`polygon`:n=`polygonSymbol`in a?a.polygonSymbol:null}let r=this._clusterSizeVariable&&this._getClusterSymbol()||!this._hasSizeRamp;e.symbol&&r&&d.infos.push({previewAriaLabel:e.label||d.title||a.title,label:e.label,symbol:n})}else if(F(e)){e.outputUnit&&(this.title=`(`+e.toJSON().outputUnit+`)`),d.title=e.attributeField;let t=e.getClassBreakInfos();t?.length?t.forEach(e=>{d.infos.push({label:e.minValue+` - `+e.maxValue,symbol:e.symbol})}):d.infos.push({label:e.attributeField,symbol:e.getDefaultSymbol()})}else R(e)&&u.push(await this._getStretchLegendElements(e,{min:0,max:255}));let h=e.defaultSymbol;h&&!p&&!z(e)&&(!f||this._hasColorRamp||this._hasSizeRamp||this._hasOpacityRamp)&&u.push({type:`symbol-table`,infos:[{label:e.defaultLabel||`others`,symbol:h}]}),d.infos.length&&u.unshift(d);let g=t.opacity==null?this.opacity:t.opacity,_=this._isTallSymbol(`visualVariables`in e?e.visualVariables:null),v=J(this.layer)||Y(this.layer);return await this._generatePreviewsForLegendElements(u,{opacity:g,symbolConfig:{isTall:_,isSquareFill:v},cssEffectFilter:this.cssEffectFilter},{arrowMarkerSymbols:m}),e=null,u}async _waitForLayerViewUpdate(e){await h(()=>!e.updating)}async _checkFeatureCountForExpression(e,t){let n=this.layerView;if(!(n&&`createQuery`in n&&`queryFeatureCount`in n))return!0;try{await this._waitForLayerViewUpdate(n);let r=n.createQuery();return e&&(r.where=Ce(r.where,e)),t&&(r.geometry=t),await n.queryFeatureCount(r)>0}catch{return!0}}_getUVRFeatureCountExpression(e,t){return Object.entries(e).map(([e,n])=>{let r=`getField`in t&&t.getField?t.getField(e):null,i=v(e);if(n==null)return`${i} IS NULL`;try{return`${i} = ${y(n,null,r?{type:r.type}:null)}`}catch{return`${i} = ${y(n)}`}}).join(` AND `)}async _checkClausesForUVR(e,t,n){let r=rt(e,t);if(!r)return!0;let i=!!(!this._layerDefinitionExpressionClause&&this._layerDefinitionExpression&&this.respectLayerDefinitionExpression||!this._layerDisplayFilterClause&&this._layerDisplayFilter?.where),a=this._getUVRFeatureCountExpression(r,n);return(i&&a?await this._checkFeatureCountForExpression(a):!0)&&(this._layerDefinitionExpressionClause?.testFeature(r)??!0)&&(this._layerDisplayFilterClause?.testFeature(r)??!0)}_getServerSideLegend(){setTimeout(()=>this.buildLegendElementsForTools(),0)}_getAllInfos(e){let t=e?.infos;return t?t.reduce((e,t)=>e.concat(this._getAllInfos(t)),[]):[e]}async _constructTileImageryStretchRendererElements(e){let t=this.layer,n=t.symbolizer.rasterInfo??t.raster.rasterInfo,r,i,a=e?.customStatistics?.length?e.customStatistics:n?.statistics;if(a)({min:r,max:i}=a[0]);else{let e=re(n.pixelType);r=e[0],i=e[1]}if(t.hasStandardTime()&&(r=t.getStandardTimeValue(r),i=t.getStandardTimeValue(i)),n.bandCount===1||t.bandIds?.length===1)return this._getStretchLegendElements(e,{min:r,max:i});let o=(t?.bandIds?.length?t.bandIds:Array.from(Array(Math.min(n.bandCount,3)).keys())).map(e=>n.bandInfos[e].name);return o.length<3?o.push(o[1]):o.length>3&&o.splice(3),this._createSymbolTableElementMultiBand(o)}async _getStretchLegendElements(e,t){let n=e.colorRamp?.toJSON(),r=pe(n,t);return{type:`stretch-ramp`,title:``,infos:r,preview:A(r.map(e=>e.color))}}_getClusterSymbol(){let e=this.layer,t=`featureReduction`in e&&e.featureReduction,n=t&&`symbol`in t&&t.renderer;return(!n||n?.authoringInfo?.isAutoGenerated===!0)&&t&&`symbol`in t?t.symbol:null}async _getSizeLegendElement(e,t,n,r){return{type:`size-ramp`,title:this._clusterSizeVariable?this._getClusterTitle(t):e,infos:await _e(n,t,await E(n),this.scale,this.view,r,this._clusterSizeVariable?this._getClusterSymbol():null)}}_createSymbolTableElementMultiBand(e){let t=[],n=[`red`,`green`,`blue`];return e.forEach((e,r)=>{t.push({label:{colorName:n[r],bandName:e},src:we[r],opacity:this.opacity??1})}),t}_updateInfosForClassedSizeRenderer(e,t){let n=e.authoringInfo?.type===`class-breaks-size`,r=e.classBreakInfos.some(e=>Le(e.symbol));if(n&&r){let n=ve,r=ye,i=e.classBreakInfos.length,a=(n-r)/(i>1?i-1:i);t.forEach((e,t)=>{e.size=n-a*t})}}_isTallSymbol(e){let t=!1,n=!1;if(e)for(let r=0;r<e.length&&!(t&&n);r++){let i=e[r];i.type===`size`&&(i.axis===`height`&&(t=!0),i.axis===`width-and-depth`&&(n=!0))}return t&&n}async _generatePreviewsForLegendElements(e,t,n){let r=[];for(let i of e)for(let e of i.infos??[])if(`infos`in e&&e.infos&&r.push(this._generatePreviewsForLegendElements([e],t,n)),nt(e)&&e.symbol&&!e.preview){let a=!0;if(e.symbol.type===`cim`){let{minScale:t,maxScale:n}=e.symbol.data;(t&&t<this.scale||n&&n>this.scale)&&(a=!1)}a&&r.push(this._generateSymbolPreviewForInfo(e,{...t,clipBloomEffect:`theme`in i&&i.theme===`spike`,cssEffectFilter:n?.arrowMarkerSymbols?.has(e.symbol)?null:t.cssEffectFilter},n?{applyScaleDrivenSize:!n.arrowMarkerSymbols?.has(e.symbol)}:void 0))}await Promise.all(r)}async _getSize(e,t){let n=e.size==null&&this._hasSizeRamp?g(22):e.size;if(this._scaleDrivenSizeVariable&&t?.applyScaleDrivenSize){let{getSize:t}=await import(`../renderers/visualVariables/support/visualVariableUtils.js`);n=t(this._scaleDrivenSizeVariable,null,{view:this.view.type,scale:this.scale,shape:e.symbol.type===`simple-marker`?e.symbol.style:null})}return n}_getPreviewCIMOptions(e){return{style:`legend`,cimOptions:{allowScalingUp:this._hasSizeRamp||!!(this._scaleDrivenSizeVariable&&e?.applyScaleDrivenSize),viewParams:this.isScaleDriven?{viewingMode:this.view?.type===`2d`?`map`:this.view?.viewingMode,scale:this.view?.scale}:null}}}async _generateSymbolPreviewForInfo(e,t={},n){let{symbol:r}=e;try{if(t.size=await this._getSize(e,n),t.scale=!1,r.type===`cim`){let e=this._getPreviewCIMOptions(n);t={...t,...e}}e.preview=await Fe(r,t)}catch{e.preview=null,l.getLogger(this).warn(`Generating symbol preview failed for symbol type: ${r?.type}`)}}_getClusterRenderer(e){this._clusterSizeVariable=null;let t=`renderer`in this.layer?this.layer.renderer:null,n=e.renderer?.clone()||t?.clone(),r=ue(e,this.layerView,this.view);if(r&&n!=null&&`visualVariables`in n&&!n.visualVariables?.some(e=>e.type===`size`&&e.target!==`outline`&&!M.test(e.valueExpression))){if(`clusterMinSize`in e&&`clusterMaxSize`in e){let{clusterMinSize:t,clusterMaxSize:n}=e;r.legendOptions=new ke({showLegend:t!==n})}n.visualVariables=(n.visualVariables||[]).concat([r]),this._clusterSizeVariable=r}return n}async _loadRenderer(e){if(Q.has(e))return Q.get(e);let t=[],n=e.clone(),r=await E(n);if(B(n)||V(n)){let e=(n.classBreakInfos||n.uniqueValueInfos).map(e=>this._fetchSymbol(e.symbol,r).then(t=>{e.symbol=t}).catch(()=>{e.symbol=null}));Array.prototype.push.apply(t,e)}return t.push(this._fetchSymbol(n.symbol||n.defaultSymbol,n.defaultSymbol?null:r).then(e=>{this._applySymbolToRenderer(n,e,z(n))}).catch(()=>{this._applySymbolToRenderer(n,null,z(n))})),await Promise.allSettled(t),Q.set(e,n),n}_applySymbolToRenderer(e,t,n){n?e.symbol=t:e.defaultSymbol=t}async _fetchSymbol(e,t){if(!e)throw Error();if(e.type===`web-style`)try{let n=await e.fetchSymbol();return this._getAppliedCloneSymbol(n,t)}catch{throw l.getLogger(this).warn(`Fetching web-style failed!`),Error()}return this._getAppliedCloneSymbol(e,t)}_getAppliedCloneSymbol(e,n){if(!e||!n)return e;let r=e.clone(),i=n&&n.toRgba();return r.type.includes(`3d`)?this._applyColorTo3dSymbol(r,i):r.type===`cim`?je(r,n):r.color&&=new t(i||r.color),r}_applyColorTo3dSymbol(e,n){n&&e.symbolLayers.forEach(e=>{e&&(e.material||={},e.material.color=new t(n))})}async _getVisualVariableLegendElements(e,t){if(!(`visualVariables`in e)||e.type===`vector-field`)return null;let n=e.visualVariables??[],r=[],i=[],o=[],s=C(e,`reference-size`)??C(e,`spike`),c,l=this._clusterSizeVariable;if(s?.sizeStops?.length===2&&(B(e)||V(e))){let[e,t]=s.sizeStops,n=l?l.minDataValue:e.value,r=l?l.maxDataValue:t.value;c=new Oe({field:s.field??void 0,normalizationField:s.normalizationField,minSize:u(e.size,10,100),maxSize:u(t.size,50,150),minDataValue:n,maxDataValue:r}),i.push(c)}for(let e of n)if(e.type===`color`)r.push(e);else if(e.type===`size`){if(e.field===`cluster_count`&&c)continue;i.push(e)}else e.type===`opacity`&&o.push(e);let d=[...r,...i,...o],f,p;if(r.length===0&&B(e)&&e.classBreakInfos&&e.classBreakInfos.length===1){let t=e.classBreakInfos[0];f=t&&t.symbol}r.length===0&&z(e)&&(f=e.symbol);let m=null;if(f){if(f.type.includes(`3d`)){let e=f.symbolLayers.at(0);e.type===`water`?e.color!=null&&(p=e.color):e.material?.color!=null&&(p=e.material.color)}else f.url||(p=f.color);m=j(f)}let h=this.cssEffectFilter;return(await Promise.all(d.map(async n=>{if(n.legendOptions?.showLegend!==!1){let r=P(e)?n.field:this._getRampTitle(n,t),i=null,a=Te(t,n,this.view.timeZone);if(n.type===`color`){let t=await S(n,null,a)??[],o=this._getColorRampInfosWithEmissiveColors(t,e,m);i={type:`color-ramp`,title:r,infos:o,preview:A(o.map(e=>e.color),{cssEffectFilter:h})},this._hasColorRamp||=t.length>0}else if(n.type===`size`&&n.target!==`outline`)M.test(n.valueExpression)?this._clusterSizeVariable||(this._scaleDrivenSizeVariable=n):(i=await this._getSizeLegendElement(r,n,e,a),c===n&&s?.theme===`spike`&&(i.theme=s.theme),this._hasSizeRamp||=!!(i.infos!=null&&i.infos.length));else if(n.type===`opacity`){let t=await S(n,p,a)??[],o=this._getColorRampPreviewColors(t,e,m);i={type:`opacity-ramp`,title:r,infos:t,preview:A(o,{cssEffectFilter:h})},this._hasOpacityRamp||=t.length>0}return i?.infos?i:null}}))).filter(a)}_getColorRampPreviewColors(e,t,n){return this._getColorRampInfosWithEmissiveColors(e,t,n).map(e=>e.color)}_getColorRampInfosWithEmissiveColors(e,t,n){return e.map(e=>{let r=B(t)?this._getStopEmissiveForColorRampInfo(e,t):n;return r===void 0?e:{...e,color:s(e.color,r)}})}_getStopEmissiveForColorRampInfo(e,t){if(!e.value)return;let n=t.getBreakIndexfromInfos(e.value),r=n===-1?null:t.classBreakInfos[n];return j(r?.symbol??t.defaultSymbol??null)}_getDomainName(e,t,n){if(e&&typeof e!=`function`){let r=`getField`in n&&n.getField?.(e),i=r&&`getFieldDomain`in n&&n.getFieldDomain?n.getFieldDomain(r.name):null;return i?.type===`coded-value`?i.getName(t):null}return null}_getClusterTitle(e){let t=this.layer,n=e.field;if(`featureReduction`in t&&t.featureReduction?.type===`cluster`){let e=t.featureReduction,r=`popupTemplate`in e&&e.popupTemplate,i=r&&r.fieldInfos;if(i){for(let e of i)if(e.fieldName===n)return n===`cluster_count`?e.label||{showCount:!0}:e.label}}return{showCount:!0}}_getRampTitle(e,t){let n=e.field,r=e.normalizationField,i=!1,a=!1,o=!1,s=null;n=typeof n==`function`?null:n,r=typeof r==`function`?null:r;let c=e.legendOptions?.title;if(c!=null)s=c;else if(e.valueExpressionTitle)s=e.valueExpressionTitle;else{if(`renderer`in t&&t.renderer&&`authoringInfo`in t.renderer&&t.renderer.authoringInfo?.visualVariables){let e=t.renderer.authoringInfo.visualVariables;for(let t=0;t<e.length;t++){let n=e[t];if(n.type===`color`){if(n.style===`ratio`){i=!0;break}if(n.style===`percent`){a=!0;break}if(n.style===`percent-of-total`){o=!0;break}}}}s={field:n&&this._getFieldAlias(n,t),normField:r&&this._getFieldAlias(r,t),ratio:i,ratioPercent:a,ratioPercentTotal:o}}return s}_getRendererTitle(e,t){let n=e;if(n.legendOptions?.title)return n.legendOptions.title;if(n.valueExpressionTitle)return n.valueExpressionTitle;let r=n.field,i=null,a=null;if(B(n)&&(i=n.normalizationField,a=n.normalizationType===`percent-of-total`),r=typeof r==`function`?null:r,i=typeof i==`function`?null:i,V(n)){let{field2:e,field3:i,fieldDelimiter:a}=n,o=r&&this._getFieldAlias(r,t);return e&&(o=`<${o}>${a}<${this._getFieldAlias(e,t)}>`,i&&(o=`${o}${a}<${this._getFieldAlias(i,t)}>`)),o}let o=null;return(r||i)&&(o={field:r&&this._getFieldAlias(r,t),normField:i&&this._getFieldAlias(i,t),normByPct:a}),o}_getFieldAlias(e,t){let n=le(t,{checkFeatureReduction:!0});if(n)return n.getFieldAlias(e)||e;let r=((`popupTemplate`in t?t.popupTemplate:null)?.fieldInfos)?.find(t=>e===t.fieldName),i=null;`getField`in t&&t.getField?i=t.getField(e):`fieldsIndex`in t&&t.fieldsIndex&&(i=t.fieldsIndex.get(e));let a=null,o=`featureReduction`in t&&t.featureReduction;o&&(r??=`popupTemplate`in o?o.popupTemplate?.fieldInfos?.find(t=>e?.toLowerCase()===t.fieldName?.toLowerCase()):void 0,`fields`in o&&o.fields&&(a=o.fields.find(t=>t.name?.toLowerCase()===e?.toLowerCase())));let s=r||i||a,c=null;return s&&(c=r?.label||i?.alias||a?.alias||`name`in s&&s.name||`fieldName`in s&&s.fieldName||null),c}_isUnclassedRenderer(e){let t=e.visualVariables,n=B(e)&&e.classBreakInfos&&e.classBreakInfos.length===1,r=!1;return n&&t&&(r=e.field?t.some(t=>!(!t||e.field!==t.field||(e.normalizationField||t.normalizationField)&&e.normalizationField!==t.normalizationField)):!!t.length),r}};e([b()],$.prototype,`_loading`,void 0),e([b()],$.prototype,`children`,void 0),e([b({readOnly:!0})],$.prototype,`cssEffectFilter`,null),e([b({readOnly:!0})],$.prototype,`cssEffectView`,null),e([b()],$.prototype,`hideLayersNotInCurrentView`,void 0),e([b({readOnly:!0})],$.prototype,`isScaleDriven`,null),e([b()],$.prototype,`keepCacheOnDestroy`,void 0),e([b()],$.prototype,`layer`,void 0),e([b()],$.prototype,`layerView`,void 0),e([b()],$.prototype,`legendElements`,void 0),e([b({readOnly:!0})],$.prototype,`loading`,null),e([b({readOnly:!0})],$.prototype,`opacity`,null),e([b()],$.prototype,`parent`,void 0),e([b({readOnly:!0})],$.prototype,`ready`,null),e([b()],$.prototype,`respectLayerDefinitionExpression`,void 0),e([b()],$.prototype,`respectLayerVisibility`,void 0),e([b({readOnly:!0})],$.prototype,`scale`,void 0),e([b()],$.prototype,`sublayerIds`,void 0),e([b()],$.prototype,`title`,void 0),e([b({readOnly:!0,value:0})],$.prototype,`version`,null),e([b()],$.prototype,`view`,void 0),$=e([te(`esri.legend.ActiveLayerInfo`)],$);const at=$;export{at as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import{dom as e}from"../maquette/dom.js";import"../maquette/projector.js";import{defaultAdvancedProjectorOptions as t}from"./advanced-projector-options.js";import{applyDefaultProjectionOptions as n}from"./utils.js";const r=(e,t)=>{let n=[];for(;e&&e!==t;)n.push(e),e=e.parentNode;return n},i=(e,t)=>e.find(t),a=(e,t,n=!1)=>{let r=e;return t.forEach((e,a)=>{let o=r?.children?i(r.children,t=>t.domNode===e):void 0;(!n||o||a===t.length-1)&&(r=o)}),r},o=i=>{let o,s={...t,...i},c=n(s),l=c.performanceLogger,u=!0,d,f=!1,p=[],m=[],h=(e,t,n)=>{let i;c.eventHandlerInterceptor=(e,t,n,c)=>function(e){l(`domEvent`,e);let t,n=r(e.currentTarget,i.domNode),c=n.some(e=>customElements.get(e?.tagName?.toLowerCase()));if(e.eventPhase===Event.CAPTURING_PHASE||!c)n.reverse(),t=a(i.getLastRender(),n);else{let n=e.composedPath(),r=n.slice(n.indexOf(e.currentTarget),n.indexOf(i.domNode)).reverse();t=a(i.getLastRender(),r,!0)}let u;return t&&(u=s.handleInterceptedEvent(o,t,this,e)),l(`domEventProcessed`,e),u},s.postProcessProjectionOptions?.(c);let u=n();i=e(t,u,c),c.eventHandlerInterceptor=void 0,p.push(i),m.push(n),s.afterFirstVNodeRendered&&s.afterFirstVNodeRendered(i,u)},g=()=>{if(d=void 0,u){u=!1,l(`renderStart`,void 0);for(let e=0;e<p.length;e++){let t=m[e]();l(`rendered`,void 0);try{p[e].update(t)}catch(e){console.error(e)}l(`patched`,void 0)}l(`renderDone`,void 0),u=!0}};return s.modifyDoRenderImplementation&&(g=s.modifyDoRenderImplementation(g,p,m)),o={renderNow:g,scheduleRender:()=>{!d&&!f&&(d=requestAnimationFrame(g))},stop:()=>{d&&=(cancelAnimationFrame(d),void 0),f=!0},resume:()=>{f=!1,u=!0,o.scheduleRender()},append:(t,n)=>{h(e.append,t,n)},insertBefore:(t,n)=>{h(e.insertBefore,t,n)},merge:(t,n)=>{h(e.merge,t,n)},replace:(t,n)=>{h(e.replace,t,n)},detach:e=>{for(let t=0;t<m.length;t++)if(m[t]===e)return m.splice(t,1),p.splice(t,1)[0];throw Error(`renderFunction was not found`)}},o};export{o as createAdvancedProjector};
2
+ import{renderingSanitizerOptions as e}from"../../core/sanitizerUtils.js";import{defaultAdvancedProjectorOptions as t}from"./advanced-projector-options.js";import{applyDefaultProjectionOptions as n}from"./utils.js";import{d as r}from"../../chunks/projector.js";const i=(e,t)=>{let n=[];for(;e&&e!==t;)n.push(e),e=e.parentNode;return n},a=(e,t)=>e.find(t),o=(e,t,n=!1)=>{let r=e;return t.forEach((e,i)=>{let o=r?.children?a(r.children,t=>t.domNode===e):void 0;(!n||o||i===t.length-1)&&(r=o)}),r},s=a=>{let s,c={...t,...a},l=n(c),u=l.performanceLogger,d=!0,f,p=!1,m=[],h=[],g=(t,n,r)=>{let a;l.eventHandlerInterceptor=(e,t,n,r)=>function(e){u(`domEvent`,e);let t,n=i(e.currentTarget,a.domNode),r=n.some(e=>customElements.get(e?.tagName?.toLowerCase()));if(e.eventPhase===Event.CAPTURING_PHASE||!r)n.reverse(),t=o(a.getLastRender(),n);else{let n=e.composedPath(),r=n.slice(n.indexOf(e.currentTarget),n.indexOf(a.domNode)).reverse();t=o(a.getLastRender(),r,!0)}let l;return t&&(l=c.handleInterceptedEvent(s,t,this,e)),u(`domEventProcessed`,e),l},c.postProcessProjectionOptions?.(l);let d=r();a=t(n,d,{...l,...e}),l.eventHandlerInterceptor=void 0,m.push(a),h.push(r),c.afterFirstVNodeRendered&&c.afterFirstVNodeRendered(a,d)},_=()=>{if(f=void 0,d){d=!1,u(`renderStart`,void 0);for(let e=0;e<m.length;e++){let t=h[e]();u(`rendered`,void 0);try{m[e].update(t)}catch(e){console.error(e)}u(`patched`,void 0)}u(`renderDone`,void 0),d=!0}};return c.modifyDoRenderImplementation&&(_=c.modifyDoRenderImplementation(_,m,h)),s={renderNow:_,scheduleRender:()=>{!f&&!p&&(f=requestAnimationFrame(_))},stop:()=>{f&&=(cancelAnimationFrame(f),void 0),p=!0},resume:()=>{p=!1,d=!0,s.scheduleRender()},append:(e,t)=>{g(r.append,e,t)},insertBefore:(e,t)=>{g(r.insertBefore,e,t)},merge:(e,t)=>{g(r.merge,e,t)},replace:(e,t)=>{g(r.replace,e,t)},detach:e=>{for(let t=0;t<h.length;t++)if(h[t]===e)return h.splice(t,1),m.splice(t,1)[0];throw Error(`renderFunction was not found`)}},s};export{s as createAdvancedProjector};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import{ClonableMixin as t}from"../core/Clonable.js";import{JSONSupport as n}from"../core/JSONSupport.js";import{property as r,subclass as i}from"../core/accessorSupport/decorators.js";import a from"./ChronologicalLayoutSettings.js";import o from"./OrganicLayoutSettings.js";import s from"./RootedLayoutSettings.js";let c=class extends t(n){constructor(e){super(e),this.chronologicalLayoutSettings=null,this.organicLayoutSettings=null,this.rootedLayoutSettings=null}};e([r({type:a,json:{write:!0}})],c.prototype,`chronologicalLayoutSettings`,void 0),e([r({type:o,json:{write:!0}})],c.prototype,`organicLayoutSettings`,void 0),e([r({type:s,json:{write:!0}})],c.prototype,`rootedLayoutSettings`,void 0),c=e([i(`esri.linkChart.LayoutSettings`)],c);export{c as default};
2
+ import{__decorate as e}from"tslib";import{ClonableMixin as t}from"../core/Clonable.js";import{JSONSupport as n}from"../core/JSONSupport.js";import{property as r,subclass as i}from"../core/accessorSupport/decorators.js";import a from"./ChronologicalLayoutSettings.js";import o from"./OrganicLayoutSettings.js";import s from"./RootedLayoutSettings.js";let c=class extends t(n){constructor(e){super(e),this.chronologicalLayoutSettings=null,this.organicLayoutSettings=null,this.rootedLayoutSettings=null}};e([r({type:a,json:{write:!0}})],c.prototype,`chronologicalLayoutSettings`,void 0),e([r({type:o,json:{write:!0}})],c.prototype,`organicLayoutSettings`,void 0),e([r({type:s,json:{write:!0}})],c.prototype,`rootedLayoutSettings`,void 0),c=e([i(`esri.linkChart.LayoutSettings`)],c);const l=c;export{l 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{ClonableMixin as t}from"../core/Clonable.js";import{JSONSupport as n}from"../core/JSONSupport.js";import{property as r,subclass as i}from"../core/accessorSupport/decorators.js";let a=class extends t(n){constructor(e){super(e),this.rootEntities=[]}};e([r({type:[Object],json:{write:!0}})],a.prototype,`rootEntities`,void 0),a=e([i(`esri.linkChart.RootedLayoutSettings`)],a);export{a as default};
2
+ import{__decorate as e}from"tslib";import{ClonableMixin as t}from"../core/Clonable.js";import{JSONSupport as n}from"../core/JSONSupport.js";import{property as r,subclass as i}from"../core/accessorSupport/decorators.js";let a=class extends t(n){constructor(e){super(e),this.rootEntities=[]}};e([r({type:[Object],json:{write:!0}})],a.prototype,`rootEntities`,void 0),a=e([i(`esri.linkChart.RootedLayoutSettings`)],a);const o=a;export{o as default};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arcgis/core",
3
- "version": "6.0.0-next.37",
3
+ "version": "6.0.0-next.39",
4
4
  "description": "ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API",
5
5
  "keywords": [
6
6
  "ArcGIS",
@@ -20,7 +20,7 @@
20
20
  "license": "SEE LICENSE IN LICENSE.md",
21
21
  "dependencies": {
22
22
  "@amcharts/amcharts5": "~5.21.5",
23
- "@arcgis/toolkit": "6.0.0-next.37",
23
+ "@arcgis/toolkit": "6.0.0-next.39",
24
24
  "@esri/arcgis-html-sanitizer": "~4.2.0",
25
25
  "@esri/calcite-components": "^5.2.1",
26
26
  "@vaadin/grid": "~25.3.5",
@@ -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"../Color.js";import{JSONMap as n}from"../core/jsonMap.js";import{JSONSupport as r}from"../core/JSONSupport.js";import{toPt as i}from"../core/screenUtils.js";import{property as a,subclass as o}from"../core/accessorSupport/decorators.js";import{Integer as s}from"../core/accessorSupport/ensureType.js";import{VisualVariablesMixin as c}from"./mixins/VisualVariablesMixin.js";import l from"./support/AuthoringInfo.js";import u from"./support/RendererLegendOptions.js";import{enumeration as d}from"../core/accessorSupport/decorators/enumeration.js";var f;const p=new n({flow_from:`flow-from`,flow_to:`flow-to`});let m=f=class extends c(r){constructor(e){super(e),this.density=.8,this.color=new t([255,255,255,1]),this.flowSpeed=10,this.trailLength=100,this.continuous=!0,this.perturb=null,this.smoothing=0,this.flowRepresentation=`flow-from`,this.type=`flow`,this.authoringInfo=null,this.legendOptions=null,this.trailCap=`butt`,this.background=`none`}get maxPathLength(){return this._get(`maxPathLength`)??200}set maxPathLength(e){this._set(`maxPathLength`,e)}get trailWidth(){return this._get(`trailWidth`)??1.5}set trailWidth(e){this._set(`trailWidth`,e)}get visualVariables(){return super.visualVariables}set visualVariables(e){super.visualVariables=e}clone(){let{density:e,maxPathLength:t,trailWidth:n,flowSpeed:r,trailLength:i,smoothing:a,flowRepresentation:o,trailCap:s,background:c}=this,l=this.color.clone(),u=(this.visualVariables||[]).map(e=>e.clone()),d=this.authoringInfo?.clone(),p=this.legendOptions?.clone();return new f({density:e,color:l,maxPathLength:t,trailWidth:n,flowSpeed:r,trailLength:i,trailCap:s,background:c,smoothing:a,flowRepresentation:o,visualVariables:u,authoringInfo:d,legendOptions:p})}getSymbol(e,t){}async getSymbolAsync(e,t){}getSymbols(){return[]}};e([a({type:Number,json:{write:!0}})],m.prototype,`density`,void 0),e([a({type:t,json:{type:[s],write:{allowNull:!0}}})],m.prototype,`color`,void 0),e([a({type:Number,cast:i,json:{write:!0}})],m.prototype,`maxPathLength`,null),e([a({type:Number,cast:i,json:{write:!0}})],m.prototype,`trailWidth`,null),e([a({type:Number,json:{write:!0}})],m.prototype,`flowSpeed`,void 0),e([a({type:Number,json:{write:!0}})],m.prototype,`trailLength`,void 0),e([a()],m.prototype,`continuous`,void 0),e([a()],m.prototype,`perturb`,void 0),e([a({type:Number,cast:i,json:{write:!1}})],m.prototype,`smoothing`,void 0),e([a({type:p.apiValues,json:{type:p.jsonValues,read:{reader:p.read},write:{writer:p.write}}})],m.prototype,`flowRepresentation`,void 0),e([d({flowRenderer:`flow`}),a({json:{write:{isRequired:!0}}})],m.prototype,`type`,void 0),e([a({type:l,json:{write:!0}})],m.prototype,`authoringInfo`,void 0),e([a({type:u,json:{write:!0}})],m.prototype,`legendOptions`,void 0),e([a({type:[`butt`,`round`],json:{write:!0}})],m.prototype,`trailCap`,void 0),e([a({type:String,json:{origins:{"web-scene":{write:!1}},write:!0}})],m.prototype,`background`,void 0),m=f=e([o(`esri.renderers.FlowRenderer`)],m);export{m as default};
2
+ import{__decorate as e}from"tslib";import t from"../Color.js";import{JSONMap as n}from"../core/jsonMap.js";import{JSONSupport as r}from"../core/JSONSupport.js";import{toPt as i}from"../core/screenUtils.js";import{property as a,subclass as o}from"../core/accessorSupport/decorators.js";import{Integer as s}from"../core/accessorSupport/ensureType.js";import{VisualVariablesMixin as c}from"./mixins/VisualVariablesMixin.js";import l from"./support/AuthoringInfo.js";import u from"./support/RendererLegendOptions.js";import{enumeration as d}from"../core/accessorSupport/decorators/enumeration.js";var f;const p=new n({flow_from:`flow-from`,flow_to:`flow-to`});let m=f=class extends c(r){constructor(e){super(e),this.density=.8,this.color=new t([255,255,255,1]),this.flowSpeed=10,this.trailLength=100,this.continuous=!0,this.perturb=null,this.smoothing=0,this.flowRepresentation=`flow-from`,this.type=`flow`,this.authoringInfo=null,this.legendOptions=null,this.trailCap=`butt`,this.background=`none`}get maxPathLength(){return this._get(`maxPathLength`)??200}set maxPathLength(e){this._set(`maxPathLength`,e)}get trailWidth(){return this._get(`trailWidth`)??1.5}set trailWidth(e){this._set(`trailWidth`,e)}get visualVariables(){return super.visualVariables}set visualVariables(e){super.visualVariables=e}clone(){let{density:e,maxPathLength:t,trailWidth:n,flowSpeed:r,trailLength:i,smoothing:a,flowRepresentation:o,trailCap:s,background:c}=this,l=this.color.clone(),u=(this.visualVariables||[]).map(e=>e.clone()),d=this.authoringInfo?.clone(),p=this.legendOptions?.clone();return new f({density:e,color:l,maxPathLength:t,trailWidth:n,flowSpeed:r,trailLength:i,trailCap:s,background:c,smoothing:a,flowRepresentation:o,visualVariables:u,authoringInfo:d,legendOptions:p})}getSymbol(e,t){}async getSymbolAsync(e,t){}getSymbols(){return[]}};e([a({type:Number,json:{write:!0}})],m.prototype,`density`,void 0),e([a({type:t,json:{type:[s],write:{allowNull:!0}}})],m.prototype,`color`,void 0),e([a({type:Number,cast:i,json:{write:!0}})],m.prototype,`maxPathLength`,null),e([a({type:Number,cast:i,json:{write:!0}})],m.prototype,`trailWidth`,null),e([a({type:Number,json:{write:!0}})],m.prototype,`flowSpeed`,void 0),e([a({type:Number,json:{write:!0}})],m.prototype,`trailLength`,void 0),e([a()],m.prototype,`continuous`,void 0),e([a()],m.prototype,`perturb`,void 0),e([a({type:Number,cast:i,json:{write:!1}})],m.prototype,`smoothing`,void 0),e([a({type:p.apiValues,json:{type:p.jsonValues,read:{reader:p.read},write:{writer:p.write}}})],m.prototype,`flowRepresentation`,void 0),e([d({flowRenderer:`flow`}),a({json:{write:{isRequired:!0}}})],m.prototype,`type`,void 0),e([a({type:l,json:{write:!0}})],m.prototype,`authoringInfo`,void 0),e([a({type:u,json:{write:!0}})],m.prototype,`legendOptions`,void 0),e([a({type:[`butt`,`round`],json:{write:!0}})],m.prototype,`trailCap`,void 0),e([a({type:String,json:{origins:{"web-scene":{write:!1}},write:!0}})],m.prototype,`background`,void 0),m=f=e([o(`esri.renderers.FlowRenderer`)],m);const h=m;export{h 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{JSONSupport as t}from"../core/JSONSupport.js";import{property as n,subclass as r}from"../core/accessorSupport/decorators.js";import i from"./support/ColormapInfo.js";import{convertColorRampToColormap as a}from"./support/colorRampUtils.js";import{enumeration as o}from"../core/accessorSupport/decorators/enumeration.js";var s;let c=s=class extends t{constructor(e){super(e),this.colormapInfos=null,this.type=`raster-colormap`}static createFromColormap(e,t){if(!e)return null;let n=e[0].length===5,r=[...e].sort((e,t)=>e[0]-t[0]).map(e=>i.fromJSON({value:e[0],color:n?e.slice(1,5):e.slice(1,4).concat([255]),label:t?t[e[0]]??``:e[0]}));return new s({colormapInfos:r})}static createFromColorramp(e){let t=a(e);return s.createFromColormap(t)}clone(){return new s({colormapInfos:this.colormapInfos.map(e=>e.toJSON())})}extractColormap(){return this.colormapInfos.map(({value:e,color:t})=>[e,t.r,t.g,t.b,t.a>1?t.a:t.a*255&255]).sort((e,t)=>e[0]-t[0])}};e([n({type:[i],json:{write:{isRequired:!0}}})],c.prototype,`colormapInfos`,void 0),e([o({rasterColormap:`raster-colormap`}),n({json:{write:{isRequired:!0}}})],c.prototype,`type`,void 0),c=s=e([r(`esri.renderers.RasterColormapRenderer`)],c);export{c as default};
2
+ import{__decorate as e}from"tslib";import{JSONSupport as t}from"../core/JSONSupport.js";import{property as n,subclass as r}from"../core/accessorSupport/decorators.js";import i from"./support/ColormapInfo.js";import{convertColorRampToColormap as a}from"./support/colorRampUtils.js";import{enumeration as o}from"../core/accessorSupport/decorators/enumeration.js";var s;let c=s=class extends t{constructor(e){super(e),this.colormapInfos=null,this.type=`raster-colormap`}static createFromColormap(e,t){if(!e)return null;let n=e[0].length===5,r=[...e].sort((e,t)=>e[0]-t[0]).map(e=>i.fromJSON({value:e[0],color:n?e.slice(1,5):e.slice(1,4).concat([255]),label:t?t[e[0]]??``:e[0]}));return new s({colormapInfos:r})}static createFromColorramp(e){let t=a(e);return s.createFromColormap(t)}clone(){return new s({colormapInfos:this.colormapInfos.map(e=>e.toJSON())})}extractColormap(){return this.colormapInfos.map(({value:e,color:t})=>[e,t.r,t.g,t.b,t.a>1?t.a:t.a*255&255]).sort((e,t)=>e[0]-t[0])}};e([n({type:[i],json:{write:{isRequired:!0}}})],c.prototype,`colormapInfos`,void 0),e([o({rasterColormap:`raster-colormap`}),n({json:{write:{isRequired:!0}}})],c.prototype,`type`,void 0),c=s=e([r(`esri.renderers.RasterColormapRenderer`)],c);const l=c;export{l 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{JSONSupport as t}from"../core/JSONSupport.js";import{clone as n}from"../core/lang.js";import{property as r,subclass as i}from"../core/accessorSupport/decorators.js";import{fromJSON as a,types as o}from"../rest/support/colorRamps.js";import{reader as s}from"../core/accessorSupport/decorators/reader.js";import{enumeration as c}from"../core/accessorSupport/decorators/enumeration.js";var l;let u=l=class extends t{constructor(e){super(e),this.altitude=45,this.azimuth=315,this.colorRamp=null,this.hillshadeType=`traditional`,this.pixelSizePower=.664,this.pixelSizeFactor=.024,this.scalingType=`none`,this.type=`raster-shaded-relief`,this.zFactor=1}readColorRamp(e){return a(e)}clone(){return new l({hillshadeType:this.hillshadeType,altitude:this.altitude,azimuth:this.azimuth,zFactor:this.zFactor,scalingType:this.scalingType,pixelSizeFactor:this.pixelSizeFactor,pixelSizePower:this.pixelSizePower,colorRamp:n(this.colorRamp)})}};e([r({type:Number,json:{write:{isRequired:!0}}})],u.prototype,`altitude`,void 0),e([r({type:Number,json:{write:{isRequired:!0}}})],u.prototype,`azimuth`,void 0),e([r({types:o,json:{write:!0}})],u.prototype,`colorRamp`,void 0),e([s(`colorRamp`)],u.prototype,`readColorRamp`,null),e([r({type:[`traditional`,`multi-directional`],json:{write:{isRequired:!0}}})],u.prototype,`hillshadeType`,void 0),e([r({type:Number,json:{write:!0}})],u.prototype,`pixelSizePower`,void 0),e([r({type:Number,json:{write:!0}})],u.prototype,`pixelSizeFactor`,void 0),e([r({type:[`none`,`adjusted`],json:{write:{isRequired:!0}}})],u.prototype,`scalingType`,void 0),e([c({rasterShadedRelief:`raster-shaded-relief`}),r({json:{write:{isRequired:!0}}})],u.prototype,`type`,void 0),e([r({type:Number,json:{write:{isRequired:!0}}})],u.prototype,`zFactor`,void 0),u=l=e([i(`esri.renderers.RasterShadedReliefRenderer`)],u);export{u as default};
2
+ import{__decorate as e}from"tslib";import{JSONSupport as t}from"../core/JSONSupport.js";import{clone as n}from"../core/lang.js";import{property as r,subclass as i}from"../core/accessorSupport/decorators.js";import{types as a,fromJSON as o}from"../rest/support/colorRamps.js";import{reader as s}from"../core/accessorSupport/decorators/reader.js";import{enumeration as c}from"../core/accessorSupport/decorators/enumeration.js";var l;let u=l=class extends t{constructor(e){super(e),this.altitude=45,this.azimuth=315,this.colorRamp=null,this.hillshadeType=`traditional`,this.pixelSizePower=.664,this.pixelSizeFactor=.024,this.scalingType=`none`,this.type=`raster-shaded-relief`,this.zFactor=1}readColorRamp(e){return o(e)}clone(){return new l({hillshadeType:this.hillshadeType,altitude:this.altitude,azimuth:this.azimuth,zFactor:this.zFactor,scalingType:this.scalingType,pixelSizeFactor:this.pixelSizeFactor,pixelSizePower:this.pixelSizePower,colorRamp:n(this.colorRamp)})}};e([r({type:Number,json:{write:{isRequired:!0}}})],u.prototype,`altitude`,void 0),e([r({type:Number,json:{write:{isRequired:!0}}})],u.prototype,`azimuth`,void 0),e([r({types:a,json:{write:!0}})],u.prototype,`colorRamp`,void 0),e([s(`colorRamp`)],u.prototype,`readColorRamp`,null),e([r({type:[`traditional`,`multi-directional`],json:{write:{isRequired:!0}}})],u.prototype,`hillshadeType`,void 0),e([r({type:Number,json:{write:!0}})],u.prototype,`pixelSizePower`,void 0),e([r({type:Number,json:{write:!0}})],u.prototype,`pixelSizeFactor`,void 0),e([r({type:[`none`,`adjusted`],json:{write:{isRequired:!0}}})],u.prototype,`scalingType`,void 0),e([c({rasterShadedRelief:`raster-shaded-relief`}),r({json:{write:{isRequired:!0}}})],u.prototype,`type`,void 0),e([r({type:Number,json:{write:{isRequired:!0}}})],u.prototype,`zFactor`,void 0),u=l=e([i(`esri.renderers.RasterShadedReliefRenderer`)],u);const d=u;export{d 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{JSONSupport as t}from"../core/JSONSupport.js";import{clone as n}from"../core/lang.js";import{property as r,subclass as i}from"../core/accessorSupport/decorators.js";import{stretchTypeJSONDict as a,stretchTypeFunctionEnum as o}from"./support/stretchRendererUtils.js";import{fromJSON as s,types as c}from"../rest/support/colorRamps.js";import{reader as l}from"../core/accessorSupport/decorators/reader.js";import{writer as u}from"../core/accessorSupport/decorators/writer.js";import{enumeration as d}from"../core/accessorSupport/decorators/enumeration.js";var f;let p=f=class extends t{constructor(e){super(e),this.colorRamp=null,this.computeGamma=!1,this.dynamicRangeAdjustment=!1,this.gamma=[],this.maxPercent=null,this.minPercent=null,this.numberOfStandardDeviations=null,this.outputMax=null,this.outputMin=null,this.sigmoidStrengthLevel=null,this.histograms=null,this.customStatistics=null,this.useGamma=!1,this.stretchType=`none`,this.type=`raster-stretch`}readColorRamp(e){if(e)return s(e)}readCustomStatistics(e){return e?.map(e=>({min:e[0],max:e[1],avg:e[2],stddev:e[3]}))}writeCustomStatistics(e,t,n){e?.length&&(t[n]=e.map(e=>[e.min,e.max,e.avg??0,e.stddev??1]))}readStretchType(e,t){let n=t.stretchType;return typeof n==`number`&&(n=o[n]),a.read(n)}clone(){return new f({stretchType:this.stretchType,outputMin:this.outputMin,outputMax:this.outputMax,useGamma:this.useGamma,computeGamma:this.computeGamma,customStatistics:n(this.customStatistics),gamma:n(this.gamma),sigmoidStrengthLevel:this.sigmoidStrengthLevel,numberOfStandardDeviations:this.numberOfStandardDeviations,minPercent:this.minPercent,maxPercent:this.maxPercent,colorRamp:n(this.colorRamp),histograms:n(this.histograms),dynamicRangeAdjustment:this.dynamicRangeAdjustment})}};e([r({types:c,json:{write:!0}})],p.prototype,`colorRamp`,void 0),e([l(`colorRamp`)],p.prototype,`readColorRamp`,null),e([r({type:Boolean,json:{write:!0}})],p.prototype,`computeGamma`,void 0),e([r({type:Boolean,json:{write:{target:`dra`},read:{source:`dra`}}})],p.prototype,`dynamicRangeAdjustment`,void 0),e([r({type:[Number],json:{write:!0}})],p.prototype,`gamma`,void 0),e([r({type:Number,json:{write:!0}})],p.prototype,`maxPercent`,void 0),e([r({type:Number,json:{write:!0}})],p.prototype,`minPercent`,void 0),e([r({type:Number,json:{write:!0}})],p.prototype,`numberOfStandardDeviations`,void 0),e([r({type:Number,json:{read:{source:`max`},write:{target:`max`}}})],p.prototype,`outputMax`,void 0),e([r({type:Number,json:{read:{source:`min`},write:{target:`min`}}})],p.prototype,`outputMin`,void 0),e([r({type:Number,json:{write:!0}})],p.prototype,`sigmoidStrengthLevel`,void 0),e([r()],p.prototype,`histograms`,void 0),e([r({json:{type:[[Number]],name:`statistics`,write:!0}})],p.prototype,`customStatistics`,void 0),e([l(`customStatistics`)],p.prototype,`readCustomStatistics`,null),e([u(`customStatistics`)],p.prototype,`writeCustomStatistics`,null),e([r({type:Boolean,json:{write:!0}})],p.prototype,`useGamma`,void 0),e([r({type:a.apiValues,json:{type:a.jsonValues,write:a.write}})],p.prototype,`stretchType`,void 0),e([l(`stretchType`,[`stretchType`])],p.prototype,`readStretchType`,null),e([d({rasterStretch:`raster-stretch`})],p.prototype,`type`,void 0),p=f=e([i(`esri.renderers.RasterStretchRenderer`)],p);export{p as default};
2
+ import{__decorate as e}from"tslib";import{JSONSupport as t}from"../core/JSONSupport.js";import{clone as n}from"../core/lang.js";import{property as r,subclass as i}from"../core/accessorSupport/decorators.js";import{stretchTypeJSONDict as a,stretchTypeFunctionEnum as o}from"./support/stretchRendererUtils.js";import{types as s,fromJSON as c}from"../rest/support/colorRamps.js";import{reader as l}from"../core/accessorSupport/decorators/reader.js";import{writer as u}from"../core/accessorSupport/decorators/writer.js";import{enumeration as d}from"../core/accessorSupport/decorators/enumeration.js";var f;let p=f=class extends t{constructor(e){super(e),this.colorRamp=null,this.computeGamma=!1,this.dynamicRangeAdjustment=!1,this.gamma=[],this.maxPercent=null,this.minPercent=null,this.numberOfStandardDeviations=null,this.outputMax=null,this.outputMin=null,this.sigmoidStrengthLevel=null,this.histograms=null,this.customStatistics=null,this.useGamma=!1,this.stretchType=`none`,this.type=`raster-stretch`}readColorRamp(e){if(e)return c(e)}readCustomStatistics(e){return e?.map(e=>({min:e[0],max:e[1],avg:e[2],stddev:e[3]}))}writeCustomStatistics(e,t,n){e?.length&&(t[n]=e.map(e=>[e.min,e.max,e.avg??0,e.stddev??1]))}readStretchType(e,t){let n=t.stretchType;return typeof n==`number`&&(n=o[n]),a.read(n)}clone(){return new f({stretchType:this.stretchType,outputMin:this.outputMin,outputMax:this.outputMax,useGamma:this.useGamma,computeGamma:this.computeGamma,customStatistics:n(this.customStatistics),gamma:n(this.gamma),sigmoidStrengthLevel:this.sigmoidStrengthLevel,numberOfStandardDeviations:this.numberOfStandardDeviations,minPercent:this.minPercent,maxPercent:this.maxPercent,colorRamp:n(this.colorRamp),histograms:n(this.histograms),dynamicRangeAdjustment:this.dynamicRangeAdjustment})}};e([r({types:s,json:{write:!0}})],p.prototype,`colorRamp`,void 0),e([l(`colorRamp`)],p.prototype,`readColorRamp`,null),e([r({type:Boolean,json:{write:!0}})],p.prototype,`computeGamma`,void 0),e([r({type:Boolean,json:{write:{target:`dra`},read:{source:`dra`}}})],p.prototype,`dynamicRangeAdjustment`,void 0),e([r({type:[Number],json:{write:!0}})],p.prototype,`gamma`,void 0),e([r({type:Number,json:{write:!0}})],p.prototype,`maxPercent`,void 0),e([r({type:Number,json:{write:!0}})],p.prototype,`minPercent`,void 0),e([r({type:Number,json:{write:!0}})],p.prototype,`numberOfStandardDeviations`,void 0),e([r({type:Number,json:{read:{source:`max`},write:{target:`max`}}})],p.prototype,`outputMax`,void 0),e([r({type:Number,json:{read:{source:`min`},write:{target:`min`}}})],p.prototype,`outputMin`,void 0),e([r({type:Number,json:{write:!0}})],p.prototype,`sigmoidStrengthLevel`,void 0),e([r()],p.prototype,`histograms`,void 0),e([r({json:{type:[[Number]],name:`statistics`,write:!0}})],p.prototype,`customStatistics`,void 0),e([l(`customStatistics`)],p.prototype,`readCustomStatistics`,null),e([u(`customStatistics`)],p.prototype,`writeCustomStatistics`,null),e([r({type:Boolean,json:{write:!0}})],p.prototype,`useGamma`,void 0),e([r({type:a.apiValues,json:{type:a.jsonValues,write:a.write}})],p.prototype,`stretchType`,void 0),e([l(`stretchType`,[`stretchType`])],p.prototype,`readStretchType`,null),e([d({rasterStretch:`raster-stretch`})],p.prototype,`type`,void 0),p=f=e([i(`esri.renderers.RasterStretchRenderer`)],p);const m=p;export{m 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 t from"../Color.js";import n from"../Graphic.js";import{JSONMap as r}from"../core/jsonMap.js";import{JSONSupport as i}from"../core/JSONSupport.js";import{clone as a}from"../core/lang.js";import{property as o,subclass as s}from"../core/accessorSupport/decorators.js";import c from"../geometry/Point.js";import{normalizeCentralMeridian as l}from"../geometry/support/normalizeUtils.js";import{unitKebabDict as u,getUnitConversionFactor as d,convertVectorFieldData as f,convertVectorFieldUnit as p}from"../layers/raster/functions/vectorFieldUtils.js";import m from"./ClassBreaksRenderer.js";import{VisualVariablesMixin as h}from"./mixins/VisualVariablesMixin.js";import g from"./support/ClassBreakInfo.js";import _ from"./visualVariables/RotationVariable.js";import v from"./visualVariables/SizeVariable.js";import{getAllSizes as y,getRotationAngle as b}from"./visualVariables/support/visualVariableUtils.js";import x from"../symbols/PictureMarkerSymbol.js";import S from"../symbols/SimpleLineSymbol.js";import C from"../symbols/SimpleMarkerSymbol.js";import{applySizesToSymbol as w,applyRotationToSymbol as T}from"../symbols/support/utils.js";import{reader as E}from"../core/accessorSupport/decorators/reader.js";import{enumeration as D}from"../core/accessorSupport/decorators/enumeration.js";var O;const k=new Set([`esriMetersPerSecond`,`esriKilometersPerHour`,`esriKnots`,`esriFeetPerSecond`,`esriMilesPerHour`]),A=new r({beaufort_ft:`beaufort-ft`,beaufort_km:`beaufort-km`,beaufort_kn:`beaufort-kn`,beaufort_m:`beaufort-m`,beaufort_mi:`beaufort-mi`,classified_arrow:`classified-arrow`,ocean_current_kn:`ocean-current-kn`,ocean_current_m:`ocean-current-m`,simple_scalar:`simple-scalar`,single_arrow:`single-arrow`,wind_speed:`wind-barb`}),j=new r({flow_from:`flow-from`,flow_to:`flow-to`});let M=O=class extends h(i){constructor(e){super(e),this.attributeField=`Magnitude`,this.flowRepresentation=`flow-from`,this.rotationType=`arithmetic`,this.style=`single-arrow`,this.symbolTileSize=50,this.type=`vector-field`}readInputUnit(e,t){return k.has(e)?u.fromJSON(e):null}readOutputUnit(e,t){return k.has(e)?u.fromJSON(e):null}get styleRenderer(){let e=this.style,t=this.attributeField,n=this._createStyleRenderer(e);return n.field=t,n}get visualVariables(){return super.visualVariables}set visualVariables(e){super.visualVariables=e}get sizeVariables(){let e=[];if(this.visualVariables)for(let t of this.visualVariables)t.type===`size`&&e.push(t);if(e.length===0){let t=new v({field:`Magnitude`,minSize:.2*this.symbolTileSize,maxSize:.8*this.symbolTileSize});this.visualVariables?this.visualVariables.push(t):this._set(`visualVariables`,[t]),e.push(t)}return e}get rotationVariables(){let e=[];if(this.visualVariables)for(let t of this.visualVariables)t.type===`rotation`&&e.push(t);if(e.length===0){let t=new _({field:`Direction`,rotationType:this.rotationType});this.visualVariables?this.visualVariables.push(t):this._set(`visualVariables`,[t]),e.push(t)}return e}clone(){return new O({attributeField:this.attributeField,flowRepresentation:this.flowRepresentation,rotationType:this.rotationType,symbolTileSize:this.symbolTileSize,style:this.style,visualVariables:a(this.visualVariables),inputUnit:this.inputUnit,outputUnit:this.outputUnit})}async getGraphicsFromPixelData(e,t=!1,r=[]){let i=[],a=d(this.inputUnit,this.outputUnit),o=this.rotationVariables[0]?.rotationType||this.rotationType,s=t?f(e.pixelBlock,`vector-uv`,o,a):p(e.pixelBlock,`vector-magdir`,a);if(s==null)return i;let u=e.extent,m=s.mask!=null&&s.mask.length>0,h=0,g=(u.xmax-u.xmin)/s.width,_=(u.ymax-u.ymin)/s.height;for(let e=0;e<s.height;e++)for(let t=0;t<s.width;t++,h++){let a=new c({x:u.xmin+t*g+g/2,y:u.ymax-e*_-_/2,spatialReference:u.spatialReference});a=(await l(a))[0];let o=r.some(e=>e.intersects(a));if((!m||s.mask[h])&&!o){let e={Magnitude:s.pixels[0][h],Direction:s.pixels[1][h]},t=new n({geometry:new c({x:a.x,y:a.y,spatialReference:u.spatialReference}),attributes:e});t.symbol=this._getVisualVariablesAppliedSymbol(t),i.push(t)}}return i}getSymbol(e,t){}async getSymbolAsync(e,t){}getSymbols(){return[]}getClassBreakInfos(){return this.styleRenderer?.classBreakInfos}getDefaultSymbol(){return this.styleRenderer?.defaultSymbol}_getDefaultSymbol(e){return new C({path:`M14,32 14,18 9,23 16,3 22,23 17,18 17,32 z`,outline:new S({width:0}),size:20,color:e||new t([0,92,230])})}_getVisualVariablesAppliedSymbol(e){if(!e)return;let t=this.styleRenderer?.getSymbol(e)?.clone(),n=this.sizeVariables,r=this.rotationVariables;if(n&&n.length&&this.sizeVariables.forEach(n=>w(t,y([n],e))),r&&r.length){let n=this.flowRepresentation===`flow-to`==(this.style===`ocean-current-kn`||this.style===`ocean-current-m`)?0:180;e.attributes.Direction=e.attributes.Direction+n,this.rotationVariables.forEach(n=>T(t,b(n,e),n.axis))}return t}_createStyleRenderer(e){let t={defaultSymbol:this._getDefaultSymbol(),classBreakInfos:[]};switch(e){case`single-arrow`:t=this._createSingleArrowRenderer();break;case`beaufort-kn`:t=this._createBeaufortKnotsRenderer();break;case`beaufort-m`:t=this._createBeaufortMeterRenderer();break;case`beaufort-ft`:t=this._createBeaufortFeetRenderer();break;case`beaufort-mi`:t=this._createBeaufortMilesRenderer();break;case`beaufort-km`:t=this._createBeaufortKilometersRenderer();break;case`ocean-current-m`:t=this._createCurrentMeterRenderer();break;case`ocean-current-kn`:t=this._createCurrentKnotsRenderer();break;case`simple-scalar`:t=this._createSimpleScalarRenderer();break;case`wind-barb`:t=this._createWindBarbsRenderer();break;case`classified-arrow`:t=this._createClassifiedArrowRenderer()}return new m(t)}_createSingleArrowRenderer(){return{defaultSymbol:this._getDefaultSymbol()}}_createBeaufortKnotsRenderer(){return{defaultSymbol:this._getDefaultSymbol(new t([214,47,39])),classBreakInfos:this._getClassBreaks([0,1,3,6,10,16,21,27,33,40,47,55,63],[[40,146,199],[89,162,186],[129,179,171],[160,194,155],[191,212,138],[218,230,119],[250,250,100],[252,213,83],[252,179,102],[250,141,52],[247,110,42],[240,71,29]])}}_createBeaufortMeterRenderer(){return{defaultSymbol:this._getDefaultSymbol(new t([214,47,39])),classBreakInfos:this._getClassBreaks([0,.2,1.8,3.3,5.4,8.5,11,14.1,17.2,20.8,24.4,28.6,32.7],[[69,117,181],[101,137,184],[132,158,186],[162,180,189],[192,204,190],[222,227,191],[255,255,191],[255,220,161],[250,185,132],[245,152,105],[237,117,81],[232,21,21]])}}_createBeaufortFeetRenderer(){let e=this._getDefaultSymbol(new t([214,47,39])),n=[0,.2,1.8,3.3,5.4,8.5,11,14.1,17.2,20.8,24.4,28.6,32.7];return n=n.map(e=>e*3.28084),{defaultSymbol:e,classBreakInfos:this._getClassBreaks(n,[[69,117,181],[101,137,184],[132,158,186],[162,180,189],[192,204,190],[222,227,191],[255,255,191],[255,220,161],[250,185,132],[245,152,105],[237,117,81],[232,21,21]])}}_createBeaufortMilesRenderer(){let e=this._getDefaultSymbol(new t([214,47,39])),n=[0,.2,1.8,3.3,5.4,8.5,11,14.1,17.2,20.8,24.4,28.6,32.7];return n=n.map(e=>e*2.23694),{defaultSymbol:e,classBreakInfos:this._getClassBreaks(n,[[69,117,181],[101,137,184],[132,158,186],[162,180,189],[192,204,190],[222,227,191],[255,255,191],[255,220,161],[250,185,132],[245,152,105],[237,117,81],[232,21,21]])}}_createBeaufortKilometersRenderer(){let e=this._getDefaultSymbol(new t([214,47,39])),n=[0,.2,1.8,3.3,5.4,8.5,11,14.1,17.2,20.8,24.4,28.6,32.7];return n=n.map(e=>e*3.6),{defaultSymbol:e,classBreakInfos:this._getClassBreaks(n,[[69,117,181],[101,137,184],[132,158,186],[162,180,189],[192,204,190],[222,227,191],[255,255,191],[255,220,161],[250,185,132],[245,152,105],[237,117,81],[232,21,21]])}}_createCurrentMeterRenderer(){return{defaultSymbol:this._getDefaultSymbol(new t([177,177,177])),classBreakInfos:this._getClassBreaks([0,.5,1,1.5,2],[[78,26,153],[179,27,26],[202,128,26],[177,177,177]])}}_createCurrentKnotsRenderer(){return{defaultSymbol:this._getDefaultSymbol(new t([177,177,177])),classBreakInfos:this._getClassBreaks([0,.25,.5,1,1.5,2,2.5,3,3.5,4],[[0,0,0],[0,37,100],[78,26,153],[151,0,100],[179,27,26],[177,78,26],[202,128,26],[177,179,52],[177,177,177]])}}_createClassifiedArrowRenderer(){let e=this._getDefaultSymbol(new t([56,168,0])),n=[0,1e-6,3.5,7,10.5,14];if(this.sizeVariables?.length){let e=this.sizeVariables[0].minDataValue,t=this.sizeVariables[0].maxDataValue;if(e!=null&&t!=null){let r=(t-e)/5;n=Array.from({length:5},(t,n)=>e+r*n),n[5]=t}}return{defaultSymbol:e,classBreakInfos:this._getClassBreaks(n,[[56,168,0],[139,309,0],[255,255,0],[255,128,0],[255,0,0]])}}_createSimpleScalarRenderer(){return{defaultSymbol:x.fromJSON({imageData:`iVBORw0KGgoAAAANSUhEUgAAACsAAAArCAQAAABLVLlLAAAABGdBTUEAAYagMeiWXwAAAAJiS0dEAACqjSMyAAAACXBIWXMAAABIAAAASABGyWs+AAAC3ElEQVRIx9XXvW4cVRQH8N982btpsIREJECyiCXsxX4DKh6AliqGKCBBE2SlwlHgAbBD/AKmyEYUeQ1KahPZSZQvBCkQLTHZ7KGY8Xodz4w3a1NwbzVzz/znfJ//zbStVC5q3icKak9GAs2QIdDx3PtW/S011NW3p+M5Eomh11ipTIKe6+4LQzHaQ+G+63pIZNJJQXMpljwTwj1brpgx5w1zZlyx5Z4QnllEIm2xeeSUHBf0hV0bejo1Uh09G3aFvgXk7cCJFBc9EdaRVuHJJaOdKyTV2TVhYLMduNR0Q9gxL5GaaTDw8GzejrDRBpxWoGsySRW0dttKuattwNkIlFw2YXgzOdYq4Ox49PlM+JrKd5OusjTWhBuVxUfMX/KXXZ3WEmkuqa67wspR4BTbwtKr/5u4fFgStse/T7EifFPnnYl9zPq4vmUOPrRndgoHjDti1gOPqlyXoifcRNGQzUd31lDyfHmob1Gp35vSr+P6vilcQ5Egtyd8YF/ySg9NhPM+9M/IOaHwp5+PSZayXTvCogEUwlatC3J8LLwYtcWB8EuDXQVuCkV5/B4eNHb7wGBs87LBDS+xjdVSn09wq1G8dFM+9tSUhIGneLvUdniKxKpTYljCpu3j7rVWlHj/P23v4NPGUEyeCQnexe9lJjzEQqMjJs+EzNAX6B98dBZVRmroJx95x/A/6gln18EyfCUsl+qdXb/tjvfbw+mwforpUOBz4XLVoBwAn3aWnfeH246NyBXhrq7TTN5lNSP9RkU+puUJm3W2Tsdq0nZWM07srk7MwQrZSRysjjGWBLRJNsNbfj2JMR4AbxpU1XLAb9Mxfpsq5EjMuuiR8L0JiHOOBX3hiUvOmavN0nMueSzcceFk0BK4pMqLo7vDD1Z0qrtDx7Itt4Xwm9UqbMmk8S0Dtuzb2pvOU99Z1nLTOfleNmvfZfP2pYZmPfajwosKdDBNpacNpVGGsWX9CyDI8Xq/Sj6QAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE0LTExLTEwVDAzOjE3OjU4LTA1OjAwF+tHyQAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxNC0xMS0xMFQwMzoxNzo1OC0wNTowMGa2/3UAAAAASUVORK5CYII=`,height:20,width:20,type:`esriPMS`,angle:0})}}_createWindBarbsRenderer(){let e=Array.from(Array(31).keys()).map(e=>e*5),t=[{range:`0-5`,path:`M20 20 M5 20 A15 15 0 1 0 35 20 A15 15 0 1 0 5 20 M20 20 M10 20 A10 10 0 1 0 30 20 A10 10 0 1 0 10 20`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMzJweCIgd2lkdGg9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTIwIDIwIE01IDIwIEExNSAxNSAwIDEgMCAzNSAyMCBBMTUgMTUgMCAxIDAgNSAyMCBNMjAgMjAgTTEwIDIwIEExMCAxMCAwIDEgMCAzMCAyMCBBMTAgMTAgMCAxIDAgMTAgMjAiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`},{range:`5-10`,path:`M25 0 L25 40 M25 35 L17.5 37.5`,imageData:`PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjkgMCAyNyA0NiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMjUgMCBMMjUgNDAgTTI1IDM1IEwxNy41IDM3LjUiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`},{range:`10-15`,path:`M25 0 L25 40 L10 45 L25 40`,imageData:`PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjkgMCAyNyA0NiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMjUgMCBMMjUgNDAgTDEwIDQ1IEwyNSA0MCIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`15-20`,path:`M25 0 L25 40 L10 45 L25 40 M25 35 L17.5 37.5`,imageData:`PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjEyIDAgMTUgNDUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0NSBMMjUgNDAgTTI1IDM1IEwxNy41IDM3LjUiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`},{range:`20-25`,path:`M25 0 L25 40 L10 45 L25 40 M25 35 L10 40`,imageData:`PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjkgMCAyNiA0NiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMjUgMCBMMjUgNDAgTDEwIDQ1IEwyNSA0MCBNMjUgMzUgTDEwIDQwIiBzdHlsZT0ic3Ryb2tlOnJnYigwLDAsMCk7c3Ryb2tlLXdpZHRoOjEuNSIvPgogPC9zdmc+`},{range:`25-30`,path:`M25 0 L25 40 L10 45 L25 40 M25 35 L10 40 L25 35 M25 30 L17.5 32.5`,imageData:`PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjkgMCAyNiA0NiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMjUgMCBMMjUgNDAgTDEwIDQ1IEwyNSA0MCBNMjUgMzUgTDEwIDQwIEwyNSAzNSBNMjUgMzAgTDE3LjUgMzIuNSIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`30-35`,path:`M25 0 L25 40 L10 45 L25 40 M25 35 L10 40 L25 35 M25 30 L10 35`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMHB4IiBoZWlnaHQ9IjIwcHgiIHZpZXdCb3g9IjkgMCAyNiA0NiI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0NSBMMjUgNDAgTTI1IDM1IEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`35-40`,path:`M25 0 L25 40 L10 45 L25 40 M25 35 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L17.5 27.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMHB4IiBoZWlnaHQ9IjIwcHgiIHZpZXdCb3g9IjkgMCAyNiA0NiI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0NSBMMjUgNDAgTTI1IDM1IEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSBMMjUgMzAgTTI1IDI1IEwxNy41IDI3LjUiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`},{range:`40-45`,path:`M25 0 L25 40 L10 45 L25 40 M25 35 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMHB4IiBoZWlnaHQ9IjIwcHgiIHZpZXdCb3g9IjkgMCAyNiA0NiI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0NSBMMjUgNDAgTTI1IDM1IEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSBMMjUgMzAgTTI1IDI1IEwxMCAzMCIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`45-50`,path:`M25 0 L25 40 L10 45 L25 40 M25 35 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30 L25 25 M25 20 L17.5 22.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMHB4IiBoZWlnaHQ9IjIwcHgiIHZpZXdCb3g9IjkgMCAyNiA0NiI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0NSBMMjUgNDAgTTI1IDM1IEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSBMMjUgMzAgTTI1IDI1IEwxMCAzMCBMMjUgMjUgTTI1IDIwIEwxNy41IDIyLjUiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`},{range:`50-55`,path:`M25 0 L25 40 L10 40 L25 35`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMHB4IiBoZWlnaHQ9IjIwcHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`},{range:`55-60`,path:`M25 0 L25 40 L10 40 L25 35 M25 30 L17.5 32.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMHB4IiBoZWlnaHQ9IjIwcHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxNy41IDMyLjUiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`},{range:`60-65`,path:`M25 0 L25 40 L10 40 L25 35 M25 30 L10 35`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMnB4IiBoZWlnaHQ9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`65-70`,path:`M25 0 L25 40 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L17.5 27.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMnB4IiBoZWlnaHQ9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSBMMjUgMzAgTTI1IDI1IEwxNy41IDI3LjUiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`},{range:`70-75`,path:`M25 0 L25 40 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMnB4IiBoZWlnaHQ9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSBMMjUgMzAgTTI1IDI1IEwxMCAzMCIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`75-80`,path:`M25 0 L25 40 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30 L25 25 M25 20 L17.5 22.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMnB4IiBoZWlnaHQ9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSBMMjUgMzAgTTI1IDI1IEwxMCAzMCBMMjUgMjUgTTI1IDIwIEwxNy41IDIyLjUiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`},{range:`80-85`,path:`M25 0 L25 40 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30 L25 25 M25 20 L10 25`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMnB4IiBoZWlnaHQ9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSBMMjUgMzAgTTI1IDI1IEwxMCAzMCBMMjUgMjUgTTI1IDIwIEwxMCAyNSIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`85-90`,path:`M25 0 L25 40 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30 L25 25 M25 20 L10 25 L25 20 M25 15 L17.5 17.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMnB4IiBoZWlnaHQ9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSBMMjUgMzAgTTI1IDI1IEwxMCAzMCBMMjUgMjUgTTI1IDIwIEwxMCAyNSBMMjUgMjAgTTI1IDE1IEwxNy41IDE3LjUiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`},{range:`90-95`,path:`M25 0 L25 40 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30 L25 25 M25 20 L10 25 L25 20 M25 15 L10 20`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMnB4IiBoZWlnaHQ9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSBMMjUgMzAgTTI1IDI1IEwxMCAzMCBMMjUgMjUgTTI1IDIwIEwxMCAyNSBMMjUgMjAgTTI1IDE1IEwxMCAyMCIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`95-100`,path:`M25 0 L25 40 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30 L25 25 M25 20 L10 25 L25 20 M25 15 L10 20 L25 15 M25 10 L17.5 12.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMnB4IiBoZWlnaHQ9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSBMMjUgMzAgTTI1IDI1IEwxMCAzMCBMMjUgMjUgTTI1IDIwIEwxMCAyNSBMMjUgMjAgTTI1IDE1IEwxMCAyMCBMMjUgMTUgTTI1IDEwIEwxNy41IDEyLjUiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`},{range:`100-105`,path:`M25 0 L25 40 L10 40 L25 35 L10 35 L25 30`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMnB4IiBoZWlnaHQ9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTDEwIDM1IEwyNSAzMCIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`105-110`,path:`M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L17.5 27.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMzJweCIgd2lkdGg9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTDEwIDM1IEwyNSAzMCBNMjUgMjUgTDE3LjUgMjcuNSIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`110-115`,path:`M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMzJweCIgd2lkdGg9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTDEwIDM1IEwyNSAzMCBNMjUgMjUgTDEwIDMwIiBzdHlsZT0ic3Ryb2tlOnJnYigwLDAsMCk7c3Ryb2tlLXdpZHRoOjEuNSIvPgogPC9zdmc+`},{range:`115-120`,path:`M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30 M25 25 M25 20 L17.5 22.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMzJweCIgd2lkdGg9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTDEwIDM1IEwyNSAzMCBNMjUgMjUgTDEwIDMwIE0yNSAyNSBNMjUgMjAgTDE3LjUgMjIuNSIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`120-125`,path:`M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30 M25 25 M25 20 L10 25`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMzJweCIgd2lkdGg9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTDEwIDM1IEwyNSAzMCBNMjUgMjUgTDEwIDMwIE0yNSAyNSBNMjUgMjAgTDEwIDI1IiBzdHlsZT0ic3Ryb2tlOnJnYigwLDAsMCk7c3Ryb2tlLXdpZHRoOjEuNSIvPgogPC9zdmc+`},{range:`125-130`,path:`M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30 M25 25 M25 20 L10 25 M25 20 M25 15 L17.5 17.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMzJweCIgd2lkdGg9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTDEwIDM1IEwyNSAzMCBNMjUgMjUgTDEwIDMwIE0yNSAyNSBNMjUgMjAgTDEwIDI1IE0yNSAyMCBNMjUgMTUgTDE3LjUgMTcuNSIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`130-135`,path:`M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30 M25 25 M25 20 L10 25 M25 20 M25 15 L10 20`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMzJweCIgd2lkdGg9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTDEwIDM1IEwyNSAzMCBNMjUgMjUgTDEwIDMwIE0yNSAyNSBNMjUgMjAgTDEwIDI1IE0yNSAyMCBNMjUgMTUgTDEwIDIwIiBzdHlsZT0ic3Ryb2tlOnJnYigwLDAsMCk7c3Ryb2tlLXdpZHRoOjEuNSIvPgogPC9zdmc+`},{range:`135-140`,path:`M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30 M25 25 M25 20 L10 25 M25 20 M25 15 L10 20 M25 15 M25 10 L17.5 12.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMzJweCIgd2lkdGg9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTDEwIDM1IEwyNSAzMCBNMjUgMjUgTDEwIDMwIE0yNSAyNSBNMjUgMjAgTDEwIDI1IE0yNSAyMCBNMjUgMTUgTDEwIDIwIE0yNSAxNSBNMjUgMTAgTDE3LjUgMTIuNSIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`140-145`,path:`M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30 M25 25 M25 20 L10 25 M25 20 M25 15 L10 20 M25 15 M25 10 L17.5 12.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMzJweCIgd2lkdGg9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTDEwIDM1IEwyNSAzMCBNMjUgMjUgTDEwIDMwIE0yNSAyNSBNMjUgMjAgTDEwIDI1IE0yNSAyMCBNMjUgMTUgTDEwIDIwIE0yNSAxNSBNMjUgMTAgTDEwIDE1IiBzdHlsZT0ic3Ryb2tlOnJnYigwLDAsMCk7c3Ryb2tlLXdpZHRoOjEuNSIvPgogPC9zdmc+`},{range:`145-150`,path:`M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30 M25 25 M25 20 L10 25 M25 20 M25 15 L10 20 M25 15 M25 10 L17.5 12.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMzJweCIgd2lkdGg9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTDEwIDM1IEwyNSAzMCBNMjUgMjUgTDEwIDMwIE0yNSAyNSBNMjUgMjAgTDEwIDI1IE0yNSAyMCBNMjUgMTUgTDEwIDIwIE0yNSAxNSBNMjUgMTAgTDEwIDE1IE0yNSAxMCBNMjUgNSBMMTcuNSA3LjUiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`}],n=x.fromJSON({imageData:`iVBORw0KGgoAAAANSUhEUgAAACgAAAApCAQAAADtq6NDAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAJiS0dEAP+Hj8y/AAAACXBIWXMAAA7DAAAOwwHHb6hkAAAEY0lEQVRIx5XXWWxWRRQH8N+d+31tUdGAVjGglYJABFEBY91jfDAg7piYaFTccA++uMQEFRcSXlATtxiXqMQt4G4iisYl0ai4sIQYtVFZ1KIFKdTS0l4f7vRCS5fPebozc+bM/2z/Mzcx0AgSiUxXnKfIdMn875FIhX53U2n/B/s+kKM4UINTjTBZImixxnrv+9a2iL6zEoUBXcoudrWj/OtHm3wt02lfU9Qao9OnHvIhgmww84MEl1qnxfNmGrqHxAizLdPpC6chGcAxKGGcL+30gOERf1BSpUqVslQSV8d5ReZFe8VQ9avufJn31cWwlJV7iafKStGOE/1qvfH9qUxxu8ydUdmuSKbGO8YUdT2inKLG69pM70tliktl5qIkCAJGmusDG7Vqsc0WjZa4UBlBiA5YZIcjYzB7qDtH5kaUJFLs7RGZTZ42W4PRRmtwvbdt1+wGiaS4drEtDttdZYIDNVuAclR3vA3+dI3qHqmVSy7U6Tv1MScCPvPR7nIpFlsdCy3FdTLPGhK92e2CUITjMJ9ocwKxnsZqc3O3JwMma3d6UVLnyVxB4aXemZqvPqLdpJhW3KVVbY4yYImPo6M5Urv50fj+0z/FG9YaEiENs8UtMfXUaTeTePNHlhXfA1UU+2lyD1Il3Gtt9+adfpNG7dNlpg2U/T3KYLZ2dUWFdTgp3/rQ4sK973qnInV5TIf40x3dhvrJPBiqyWUo4wAtLqhQYS71qK+QKOFRywmGK/kpikzV6WMKhh58vGWs4TIJNjiEYLIuP8Tt4/zmLyqk+AyrJSbF+Qq1DgqRUPMxyl+9q3IQhX/rMCJ6tEunriDs1oSyQZKlr9AkhT2ZIARbJfaJS1vtVbHB+Rgi0RK/y1q1BWsEEyLoz40xtGKcARPVWB1BTPO7f4LNtpkUl1aoMbViLyZo0GRjPD3BxnxjqXeLYlvhqYrzMMG3HoyJXa3JjfnGlbYYFlP7Jh3qKsKY4hQ7TY0nG+xwRL61n63mxHtqNHosigyMLmClNwvuecFnOZB88nNBDzNkzhxEZaKMBVoKapggMzvHHXBEpNSSFAvtcFRsVn0bW8LlMmcXs+c0Kne3gRR32+zg4uXwjC6zit6Wt4a8LXVfcp/MtQXHn2ynGbuCmb8GvvFeJLEE82ReU9/n6+dkq2x3buG9Wn94smcgAw631RPR7BTH+kbmHReZoEpOdEe7zWqZl40s0JWs9Hmv7hjBHqPDwsjGKVJnWWqjbdZp1KhJi0aPmxYZsIRhlttgeF+Jlke41QcOQKoqilSb6HJzSvNG3G/UoWnxwsmt+sVaYwd63dRbqdnMyCPVeyRPvpYgdavM22oGKoMUVRbJfOWMwidJ8Zzb1UvmWK/VVUXzHaTjjrVYh1897HT7xxYEVUaa5SWb/WO+YUWa9SrwvigzM8YlzlYv2GSdVCYxxlBtVnnFq5olwp5/BEk/OLsf5LUmG2+inRJdVvjZ97ZH9/zP34ug1O91pf4p+D+JYBpvrKxfbwAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxNC0xMS0xMFQwMzoxMjowOS0wNTowMB9ViV0AAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTQtMTEtMTBUMDM6MTI6MDktMDU6MDBuCDHhAAAAAElFTkSuQmCC`,height:20,width:20,type:`esriPMS`,angle:0});return{defaultSymbol:n,classBreakInfos:e.map((r,i)=>{let a;if(i!==e.length-1){if(i===0)a={minValue:r,maxValue:e[i+1],symbol:n};else{let n=x.fromJSON({type:`esriPMS`,imageData:t[i].imageData,contentType:`image/svg+xml`,height:32,width:32,angle:0});a={minValue:r,maxValue:e[i+1],symbol:n}}}return new g(a)})}}_getClassBreaks(e,n){return n.map((n,r)=>new g({minValue:e[r],maxValue:e[r+1],symbol:this._getDefaultSymbol(new t(n))}))}};e([o({type:[`Magnitude`],json:{write:!0}})],M.prototype,`attributeField`,void 0),e([o({type:j.apiValues,json:{type:j.jsonValues,read:{reader:j.read},write:{writer:j.write}}})],M.prototype,`flowRepresentation`,void 0),e([o({type:[`geographic`,`arithmetic`],json:{write:!0}})],M.prototype,`rotationType`,void 0),e([o({type:A.apiValues,json:{type:A.jsonValues,read:{reader:A.read},write:{writer:A.write}}})],M.prototype,`style`,void 0),e([o({json:{write:!0}})],M.prototype,`symbolTileSize`,void 0),e([o({type:u.apiValues,json:{type:u.jsonValues,write:{writer:u.write}}})],M.prototype,`inputUnit`,void 0),e([E(`inputUnit`)],M.prototype,`readInputUnit`,null),e([o({type:u.apiValues,json:{type:u.jsonValues,read:{reader:u.read},write:{writer:u.write}}})],M.prototype,`outputUnit`,void 0),e([E(`outputUnit`)],M.prototype,`readOutputUnit`,null),e([D({vectorField:`vector-field`})],M.prototype,`type`,void 0),e([o({type:m})],M.prototype,`styleRenderer`,null),e([o({type:v})],M.prototype,`sizeVariables`,null),e([o({type:_})],M.prototype,`rotationVariables`,null),M=O=e([s(`esri.renderers.VectorFieldRenderer`)],M);export{M as default};
2
+ import{__decorate as e}from"tslib";import t from"../Color.js";import n from"../Graphic.js";import{JSONMap as r}from"../core/jsonMap.js";import{JSONSupport as i}from"../core/JSONSupport.js";import{clone as a}from"../core/lang.js";import{property as o,subclass as s}from"../core/accessorSupport/decorators.js";import c from"../geometry/Point.js";import{normalizeCentralMeridian as l}from"../geometry/support/normalizeUtils.js";import{unitKebabDict as u,getUnitConversionFactor as d,convertVectorFieldData as f,convertVectorFieldUnit as p}from"../layers/raster/functions/vectorFieldUtils.js";import m from"./ClassBreaksRenderer.js";import{VisualVariablesMixin as h}from"./mixins/VisualVariablesMixin.js";import g from"./support/ClassBreakInfo.js";import _ from"./visualVariables/RotationVariable.js";import v from"./visualVariables/SizeVariable.js";import{getAllSizes as y,getRotationAngle as b}from"./visualVariables/support/visualVariableUtils.js";import x from"../symbols/PictureMarkerSymbol.js";import S from"../symbols/SimpleLineSymbol.js";import C from"../symbols/SimpleMarkerSymbol.js";import{applySizesToSymbol as w,applyRotationToSymbol as T}from"../symbols/support/utils.js";import{reader as E}from"../core/accessorSupport/decorators/reader.js";import{enumeration as D}from"../core/accessorSupport/decorators/enumeration.js";var O;const k=new Set([`esriMetersPerSecond`,`esriKilometersPerHour`,`esriKnots`,`esriFeetPerSecond`,`esriMilesPerHour`]),A=new r({beaufort_ft:`beaufort-ft`,beaufort_km:`beaufort-km`,beaufort_kn:`beaufort-kn`,beaufort_m:`beaufort-m`,beaufort_mi:`beaufort-mi`,classified_arrow:`classified-arrow`,ocean_current_kn:`ocean-current-kn`,ocean_current_m:`ocean-current-m`,simple_scalar:`simple-scalar`,single_arrow:`single-arrow`,wind_speed:`wind-barb`}),j=new r({flow_from:`flow-from`,flow_to:`flow-to`});let M=O=class extends h(i){constructor(e){super(e),this.attributeField=`Magnitude`,this.flowRepresentation=`flow-from`,this.rotationType=`arithmetic`,this.style=`single-arrow`,this.symbolTileSize=50,this.type=`vector-field`}readInputUnit(e,t){return k.has(e)?u.fromJSON(e):null}readOutputUnit(e,t){return k.has(e)?u.fromJSON(e):null}get styleRenderer(){let e=this.style,t=this.attributeField,n=this._createStyleRenderer(e);return n.field=t,n}get visualVariables(){return super.visualVariables}set visualVariables(e){super.visualVariables=e}get sizeVariables(){let e=[];if(this.visualVariables)for(let t of this.visualVariables)t.type===`size`&&e.push(t);if(e.length===0){let t=new v({field:`Magnitude`,minSize:.2*this.symbolTileSize,maxSize:.8*this.symbolTileSize});this.visualVariables?this.visualVariables.push(t):this._set(`visualVariables`,[t]),e.push(t)}return e}get rotationVariables(){let e=[];if(this.visualVariables)for(let t of this.visualVariables)t.type===`rotation`&&e.push(t);if(e.length===0){let t=new _({field:`Direction`,rotationType:this.rotationType});this.visualVariables?this.visualVariables.push(t):this._set(`visualVariables`,[t]),e.push(t)}return e}clone(){return new O({attributeField:this.attributeField,flowRepresentation:this.flowRepresentation,rotationType:this.rotationType,symbolTileSize:this.symbolTileSize,style:this.style,visualVariables:a(this.visualVariables),inputUnit:this.inputUnit,outputUnit:this.outputUnit})}async getGraphicsFromPixelData(e,t=!1,r=[]){let i=[],a=d(this.inputUnit,this.outputUnit),o=this.rotationVariables[0]?.rotationType||this.rotationType,s=t?f(e.pixelBlock,`vector-uv`,o,a):p(e.pixelBlock,`vector-magdir`,a);if(s==null)return i;let u=e.extent,m=s.mask!=null&&s.mask.length>0,h=0,g=(u.xmax-u.xmin)/s.width,_=(u.ymax-u.ymin)/s.height;for(let e=0;e<s.height;e++)for(let t=0;t<s.width;t++,h++){let a=new c({x:u.xmin+t*g+g/2,y:u.ymax-e*_-_/2,spatialReference:u.spatialReference});a=(await l(a))[0];let o=r.some(e=>e.intersects(a));if((!m||s.mask[h])&&!o){let e={Magnitude:s.pixels[0][h],Direction:s.pixels[1][h]},t=new n({geometry:new c({x:a.x,y:a.y,spatialReference:u.spatialReference}),attributes:e});t.symbol=this._getVisualVariablesAppliedSymbol(t),i.push(t)}}return i}getSymbol(e,t){}async getSymbolAsync(e,t){}getSymbols(){return[]}getClassBreakInfos(){return this.styleRenderer?.classBreakInfos}getDefaultSymbol(){return this.styleRenderer?.defaultSymbol}_getDefaultSymbol(e){return new C({path:`M14,32 14,18 9,23 16,3 22,23 17,18 17,32 z`,outline:new S({width:0}),size:20,color:e||new t([0,92,230])})}_getVisualVariablesAppliedSymbol(e){if(!e)return;let t=this.styleRenderer?.getSymbol(e)?.clone(),n=this.sizeVariables,r=this.rotationVariables;if(n&&n.length&&this.sizeVariables.forEach(n=>w(t,y([n],e))),r&&r.length){let n=this.flowRepresentation===`flow-to`==(this.style===`ocean-current-kn`||this.style===`ocean-current-m`)?0:180;e.attributes.Direction=e.attributes.Direction+n,this.rotationVariables.forEach(n=>T(t,b(n,e),n.axis))}return t}_createStyleRenderer(e){let t={defaultSymbol:this._getDefaultSymbol(),classBreakInfos:[]};switch(e){case`single-arrow`:t=this._createSingleArrowRenderer();break;case`beaufort-kn`:t=this._createBeaufortKnotsRenderer();break;case`beaufort-m`:t=this._createBeaufortMeterRenderer();break;case`beaufort-ft`:t=this._createBeaufortFeetRenderer();break;case`beaufort-mi`:t=this._createBeaufortMilesRenderer();break;case`beaufort-km`:t=this._createBeaufortKilometersRenderer();break;case`ocean-current-m`:t=this._createCurrentMeterRenderer();break;case`ocean-current-kn`:t=this._createCurrentKnotsRenderer();break;case`simple-scalar`:t=this._createSimpleScalarRenderer();break;case`wind-barb`:t=this._createWindBarbsRenderer();break;case`classified-arrow`:t=this._createClassifiedArrowRenderer()}return new m(t)}_createSingleArrowRenderer(){return{defaultSymbol:this._getDefaultSymbol()}}_createBeaufortKnotsRenderer(){return{defaultSymbol:this._getDefaultSymbol(new t([214,47,39])),classBreakInfos:this._getClassBreaks([0,1,3,6,10,16,21,27,33,40,47,55,63],[[40,146,199],[89,162,186],[129,179,171],[160,194,155],[191,212,138],[218,230,119],[250,250,100],[252,213,83],[252,179,102],[250,141,52],[247,110,42],[240,71,29]])}}_createBeaufortMeterRenderer(){return{defaultSymbol:this._getDefaultSymbol(new t([214,47,39])),classBreakInfos:this._getClassBreaks([0,.2,1.8,3.3,5.4,8.5,11,14.1,17.2,20.8,24.4,28.6,32.7],[[69,117,181],[101,137,184],[132,158,186],[162,180,189],[192,204,190],[222,227,191],[255,255,191],[255,220,161],[250,185,132],[245,152,105],[237,117,81],[232,21,21]])}}_createBeaufortFeetRenderer(){let e=this._getDefaultSymbol(new t([214,47,39])),n=[0,.2,1.8,3.3,5.4,8.5,11,14.1,17.2,20.8,24.4,28.6,32.7];return n=n.map(e=>e*3.28084),{defaultSymbol:e,classBreakInfos:this._getClassBreaks(n,[[69,117,181],[101,137,184],[132,158,186],[162,180,189],[192,204,190],[222,227,191],[255,255,191],[255,220,161],[250,185,132],[245,152,105],[237,117,81],[232,21,21]])}}_createBeaufortMilesRenderer(){let e=this._getDefaultSymbol(new t([214,47,39])),n=[0,.2,1.8,3.3,5.4,8.5,11,14.1,17.2,20.8,24.4,28.6,32.7];return n=n.map(e=>e*2.23694),{defaultSymbol:e,classBreakInfos:this._getClassBreaks(n,[[69,117,181],[101,137,184],[132,158,186],[162,180,189],[192,204,190],[222,227,191],[255,255,191],[255,220,161],[250,185,132],[245,152,105],[237,117,81],[232,21,21]])}}_createBeaufortKilometersRenderer(){let e=this._getDefaultSymbol(new t([214,47,39])),n=[0,.2,1.8,3.3,5.4,8.5,11,14.1,17.2,20.8,24.4,28.6,32.7];return n=n.map(e=>e*3.6),{defaultSymbol:e,classBreakInfos:this._getClassBreaks(n,[[69,117,181],[101,137,184],[132,158,186],[162,180,189],[192,204,190],[222,227,191],[255,255,191],[255,220,161],[250,185,132],[245,152,105],[237,117,81],[232,21,21]])}}_createCurrentMeterRenderer(){return{defaultSymbol:this._getDefaultSymbol(new t([177,177,177])),classBreakInfos:this._getClassBreaks([0,.5,1,1.5,2],[[78,26,153],[179,27,26],[202,128,26],[177,177,177]])}}_createCurrentKnotsRenderer(){return{defaultSymbol:this._getDefaultSymbol(new t([177,177,177])),classBreakInfos:this._getClassBreaks([0,.25,.5,1,1.5,2,2.5,3,3.5,4],[[0,0,0],[0,37,100],[78,26,153],[151,0,100],[179,27,26],[177,78,26],[202,128,26],[177,179,52],[177,177,177]])}}_createClassifiedArrowRenderer(){let e=this._getDefaultSymbol(new t([56,168,0])),n=[0,1e-6,3.5,7,10.5,14];if(this.sizeVariables?.length){let e=this.sizeVariables[0].minDataValue,t=this.sizeVariables[0].maxDataValue;if(e!=null&&t!=null){let r=(t-e)/5;n=Array.from({length:5},(t,n)=>e+r*n),n[5]=t}}return{defaultSymbol:e,classBreakInfos:this._getClassBreaks(n,[[56,168,0],[139,309,0],[255,255,0],[255,128,0],[255,0,0]])}}_createSimpleScalarRenderer(){return{defaultSymbol:x.fromJSON({imageData:`iVBORw0KGgoAAAANSUhEUgAAACsAAAArCAQAAABLVLlLAAAABGdBTUEAAYagMeiWXwAAAAJiS0dEAACqjSMyAAAACXBIWXMAAABIAAAASABGyWs+AAAC3ElEQVRIx9XXvW4cVRQH8N982btpsIREJECyiCXsxX4DKh6AliqGKCBBE2SlwlHgAbBD/AKmyEYUeQ1KahPZSZQvBCkQLTHZ7KGY8Xodz4w3a1NwbzVzz/znfJ//zbStVC5q3icKak9GAs2QIdDx3PtW/S011NW3p+M5Eomh11ipTIKe6+4LQzHaQ+G+63pIZNJJQXMpljwTwj1brpgx5w1zZlyx5Z4QnllEIm2xeeSUHBf0hV0bejo1Uh09G3aFvgXk7cCJFBc9EdaRVuHJJaOdKyTV2TVhYLMduNR0Q9gxL5GaaTDw8GzejrDRBpxWoGsySRW0dttKuattwNkIlFw2YXgzOdYq4Ox49PlM+JrKd5OusjTWhBuVxUfMX/KXXZ3WEmkuqa67wspR4BTbwtKr/5u4fFgStse/T7EifFPnnYl9zPq4vmUOPrRndgoHjDti1gOPqlyXoifcRNGQzUd31lDyfHmob1Gp35vSr+P6vilcQ5Egtyd8YF/ySg9NhPM+9M/IOaHwp5+PSZayXTvCogEUwlatC3J8LLwYtcWB8EuDXQVuCkV5/B4eNHb7wGBs87LBDS+xjdVSn09wq1G8dFM+9tSUhIGneLvUdniKxKpTYljCpu3j7rVWlHj/P23v4NPGUEyeCQnexe9lJjzEQqMjJs+EzNAX6B98dBZVRmroJx95x/A/6gln18EyfCUsl+qdXb/tjvfbw+mwforpUOBz4XLVoBwAn3aWnfeH246NyBXhrq7TTN5lNSP9RkU+puUJm3W2Tsdq0nZWM07srk7MwQrZSRysjjGWBLRJNsNbfj2JMR4AbxpU1XLAb9Mxfpsq5EjMuuiR8L0JiHOOBX3hiUvOmavN0nMueSzcceFk0BK4pMqLo7vDD1Z0qrtDx7Itt4Xwm9UqbMmk8S0Dtuzb2pvOU99Z1nLTOfleNmvfZfP2pYZmPfajwosKdDBNpacNpVGGsWX9CyDI8Xq/Sj6QAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE0LTExLTEwVDAzOjE3OjU4LTA1OjAwF+tHyQAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxNC0xMS0xMFQwMzoxNzo1OC0wNTowMGa2/3UAAAAASUVORK5CYII=`,height:20,width:20,type:`esriPMS`,angle:0})}}_createWindBarbsRenderer(){let e=Array.from(Array(31).keys()).map(e=>e*5),t=[{range:`0-5`,path:`M20 20 M5 20 A15 15 0 1 0 35 20 A15 15 0 1 0 5 20 M20 20 M10 20 A10 10 0 1 0 30 20 A10 10 0 1 0 10 20`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMzJweCIgd2lkdGg9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTIwIDIwIE01IDIwIEExNSAxNSAwIDEgMCAzNSAyMCBBMTUgMTUgMCAxIDAgNSAyMCBNMjAgMjAgTTEwIDIwIEExMCAxMCAwIDEgMCAzMCAyMCBBMTAgMTAgMCAxIDAgMTAgMjAiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`},{range:`5-10`,path:`M25 0 L25 40 M25 35 L17.5 37.5`,imageData:`PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjkgMCAyNyA0NiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMjUgMCBMMjUgNDAgTTI1IDM1IEwxNy41IDM3LjUiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`},{range:`10-15`,path:`M25 0 L25 40 L10 45 L25 40`,imageData:`PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjkgMCAyNyA0NiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMjUgMCBMMjUgNDAgTDEwIDQ1IEwyNSA0MCIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`15-20`,path:`M25 0 L25 40 L10 45 L25 40 M25 35 L17.5 37.5`,imageData:`PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjEyIDAgMTUgNDUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0NSBMMjUgNDAgTTI1IDM1IEwxNy41IDM3LjUiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`},{range:`20-25`,path:`M25 0 L25 40 L10 45 L25 40 M25 35 L10 40`,imageData:`PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjkgMCAyNiA0NiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMjUgMCBMMjUgNDAgTDEwIDQ1IEwyNSA0MCBNMjUgMzUgTDEwIDQwIiBzdHlsZT0ic3Ryb2tlOnJnYigwLDAsMCk7c3Ryb2tlLXdpZHRoOjEuNSIvPgogPC9zdmc+`},{range:`25-30`,path:`M25 0 L25 40 L10 45 L25 40 M25 35 L10 40 L25 35 M25 30 L17.5 32.5`,imageData:`PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjkgMCAyNiA0NiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMjUgMCBMMjUgNDAgTDEwIDQ1IEwyNSA0MCBNMjUgMzUgTDEwIDQwIEwyNSAzNSBNMjUgMzAgTDE3LjUgMzIuNSIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`30-35`,path:`M25 0 L25 40 L10 45 L25 40 M25 35 L10 40 L25 35 M25 30 L10 35`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMHB4IiBoZWlnaHQ9IjIwcHgiIHZpZXdCb3g9IjkgMCAyNiA0NiI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0NSBMMjUgNDAgTTI1IDM1IEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`35-40`,path:`M25 0 L25 40 L10 45 L25 40 M25 35 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L17.5 27.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMHB4IiBoZWlnaHQ9IjIwcHgiIHZpZXdCb3g9IjkgMCAyNiA0NiI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0NSBMMjUgNDAgTTI1IDM1IEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSBMMjUgMzAgTTI1IDI1IEwxNy41IDI3LjUiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`},{range:`40-45`,path:`M25 0 L25 40 L10 45 L25 40 M25 35 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMHB4IiBoZWlnaHQ9IjIwcHgiIHZpZXdCb3g9IjkgMCAyNiA0NiI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0NSBMMjUgNDAgTTI1IDM1IEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSBMMjUgMzAgTTI1IDI1IEwxMCAzMCIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`45-50`,path:`M25 0 L25 40 L10 45 L25 40 M25 35 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30 L25 25 M25 20 L17.5 22.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMHB4IiBoZWlnaHQ9IjIwcHgiIHZpZXdCb3g9IjkgMCAyNiA0NiI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0NSBMMjUgNDAgTTI1IDM1IEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSBMMjUgMzAgTTI1IDI1IEwxMCAzMCBMMjUgMjUgTTI1IDIwIEwxNy41IDIyLjUiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`},{range:`50-55`,path:`M25 0 L25 40 L10 40 L25 35`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMHB4IiBoZWlnaHQ9IjIwcHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`},{range:`55-60`,path:`M25 0 L25 40 L10 40 L25 35 M25 30 L17.5 32.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMHB4IiBoZWlnaHQ9IjIwcHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxNy41IDMyLjUiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`},{range:`60-65`,path:`M25 0 L25 40 L10 40 L25 35 M25 30 L10 35`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMnB4IiBoZWlnaHQ9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`65-70`,path:`M25 0 L25 40 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L17.5 27.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMnB4IiBoZWlnaHQ9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSBMMjUgMzAgTTI1IDI1IEwxNy41IDI3LjUiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`},{range:`70-75`,path:`M25 0 L25 40 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMnB4IiBoZWlnaHQ9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSBMMjUgMzAgTTI1IDI1IEwxMCAzMCIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`75-80`,path:`M25 0 L25 40 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30 L25 25 M25 20 L17.5 22.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMnB4IiBoZWlnaHQ9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSBMMjUgMzAgTTI1IDI1IEwxMCAzMCBMMjUgMjUgTTI1IDIwIEwxNy41IDIyLjUiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`},{range:`80-85`,path:`M25 0 L25 40 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30 L25 25 M25 20 L10 25`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMnB4IiBoZWlnaHQ9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSBMMjUgMzAgTTI1IDI1IEwxMCAzMCBMMjUgMjUgTTI1IDIwIEwxMCAyNSIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`85-90`,path:`M25 0 L25 40 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30 L25 25 M25 20 L10 25 L25 20 M25 15 L17.5 17.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMnB4IiBoZWlnaHQ9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSBMMjUgMzAgTTI1IDI1IEwxMCAzMCBMMjUgMjUgTTI1IDIwIEwxMCAyNSBMMjUgMjAgTTI1IDE1IEwxNy41IDE3LjUiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`},{range:`90-95`,path:`M25 0 L25 40 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30 L25 25 M25 20 L10 25 L25 20 M25 15 L10 20`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMnB4IiBoZWlnaHQ9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSBMMjUgMzAgTTI1IDI1IEwxMCAzMCBMMjUgMjUgTTI1IDIwIEwxMCAyNSBMMjUgMjAgTTI1IDE1IEwxMCAyMCIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`95-100`,path:`M25 0 L25 40 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30 L25 25 M25 20 L10 25 L25 20 M25 15 L10 20 L25 15 M25 10 L17.5 12.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMnB4IiBoZWlnaHQ9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTTI1IDMwIEwxMCAzNSBMMjUgMzAgTTI1IDI1IEwxMCAzMCBMMjUgMjUgTTI1IDIwIEwxMCAyNSBMMjUgMjAgTTI1IDE1IEwxMCAyMCBMMjUgMTUgTTI1IDEwIEwxNy41IDEyLjUiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`},{range:`100-105`,path:`M25 0 L25 40 L10 40 L25 35 L10 35 L25 30`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMnB4IiBoZWlnaHQ9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTDEwIDM1IEwyNSAzMCIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`105-110`,path:`M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L17.5 27.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMzJweCIgd2lkdGg9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTDEwIDM1IEwyNSAzMCBNMjUgMjUgTDE3LjUgMjcuNSIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`110-115`,path:`M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMzJweCIgd2lkdGg9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTDEwIDM1IEwyNSAzMCBNMjUgMjUgTDEwIDMwIiBzdHlsZT0ic3Ryb2tlOnJnYigwLDAsMCk7c3Ryb2tlLXdpZHRoOjEuNSIvPgogPC9zdmc+`},{range:`115-120`,path:`M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30 M25 25 M25 20 L17.5 22.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMzJweCIgd2lkdGg9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTDEwIDM1IEwyNSAzMCBNMjUgMjUgTDEwIDMwIE0yNSAyNSBNMjUgMjAgTDE3LjUgMjIuNSIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`120-125`,path:`M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30 M25 25 M25 20 L10 25`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMzJweCIgd2lkdGg9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTDEwIDM1IEwyNSAzMCBNMjUgMjUgTDEwIDMwIE0yNSAyNSBNMjUgMjAgTDEwIDI1IiBzdHlsZT0ic3Ryb2tlOnJnYigwLDAsMCk7c3Ryb2tlLXdpZHRoOjEuNSIvPgogPC9zdmc+`},{range:`125-130`,path:`M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30 M25 25 M25 20 L10 25 M25 20 M25 15 L17.5 17.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMzJweCIgd2lkdGg9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTDEwIDM1IEwyNSAzMCBNMjUgMjUgTDEwIDMwIE0yNSAyNSBNMjUgMjAgTDEwIDI1IE0yNSAyMCBNMjUgMTUgTDE3LjUgMTcuNSIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`130-135`,path:`M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30 M25 25 M25 20 L10 25 M25 20 M25 15 L10 20`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMzJweCIgd2lkdGg9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTDEwIDM1IEwyNSAzMCBNMjUgMjUgTDEwIDMwIE0yNSAyNSBNMjUgMjAgTDEwIDI1IE0yNSAyMCBNMjUgMTUgTDEwIDIwIiBzdHlsZT0ic3Ryb2tlOnJnYigwLDAsMCk7c3Ryb2tlLXdpZHRoOjEuNSIvPgogPC9zdmc+`},{range:`135-140`,path:`M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30 M25 25 M25 20 L10 25 M25 20 M25 15 L10 20 M25 15 M25 10 L17.5 12.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMzJweCIgd2lkdGg9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTDEwIDM1IEwyNSAzMCBNMjUgMjUgTDEwIDMwIE0yNSAyNSBNMjUgMjAgTDEwIDI1IE0yNSAyMCBNMjUgMTUgTDEwIDIwIE0yNSAxNSBNMjUgMTAgTDE3LjUgMTIuNSIgc3R5bGU9InN0cm9rZTpyZ2IoMCwwLDApO3N0cm9rZS13aWR0aDoxLjUiLz4KIDwvc3ZnPg==`},{range:`140-145`,path:`M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30 M25 25 M25 20 L10 25 M25 20 M25 15 L10 20 M25 15 M25 10 L17.5 12.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMzJweCIgd2lkdGg9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTDEwIDM1IEwyNSAzMCBNMjUgMjUgTDEwIDMwIE0yNSAyNSBNMjUgMjAgTDEwIDI1IE0yNSAyMCBNMjUgMTUgTDEwIDIwIE0yNSAxNSBNMjUgMTAgTDEwIDE1IiBzdHlsZT0ic3Ryb2tlOnJnYigwLDAsMCk7c3Ryb2tlLXdpZHRoOjEuNSIvPgogPC9zdmc+`},{range:`145-150`,path:`M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30 M25 25 M25 20 L10 25 M25 20 M25 15 L10 20 M25 15 M25 10 L17.5 12.5`,imageData:`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMzJweCIgd2lkdGg9IjMycHgiIHZpZXdCb3g9IjkgMCAyNiA0MSI+CiAgPHBhdGggZD0iTTI1IDAgTDI1IDQwIEwxMCA0MCBMMjUgMzUgTDEwIDM1IEwyNSAzMCBNMjUgMjUgTDEwIDMwIE0yNSAyNSBNMjUgMjAgTDEwIDI1IE0yNSAyMCBNMjUgMTUgTDEwIDIwIE0yNSAxNSBNMjUgMTAgTDEwIDE1IE0yNSAxMCBNMjUgNSBMMTcuNSA3LjUiIHN0eWxlPSJzdHJva2U6cmdiKDAsMCwwKTtzdHJva2Utd2lkdGg6MS41Ii8+CiA8L3N2Zz4=`}],n=x.fromJSON({imageData:`iVBORw0KGgoAAAANSUhEUgAAACgAAAApCAQAAADtq6NDAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAJiS0dEAP+Hj8y/AAAACXBIWXMAAA7DAAAOwwHHb6hkAAAEY0lEQVRIx5XXWWxWRRQH8N+d+31tUdGAVjGglYJABFEBY91jfDAg7piYaFTccA++uMQEFRcSXlATtxiXqMQt4G4iisYl0ai4sIQYtVFZ1KIFKdTS0l4f7vRCS5fPebozc+bM/2z/Mzcx0AgSiUxXnKfIdMn875FIhX53U2n/B/s+kKM4UINTjTBZImixxnrv+9a2iL6zEoUBXcoudrWj/OtHm3wt02lfU9Qao9OnHvIhgmww84MEl1qnxfNmGrqHxAizLdPpC6chGcAxKGGcL+30gOERf1BSpUqVslQSV8d5ReZFe8VQ9avufJn31cWwlJV7iafKStGOE/1qvfH9qUxxu8ydUdmuSKbGO8YUdT2inKLG69pM70tliktl5qIkCAJGmusDG7Vqsc0WjZa4UBlBiA5YZIcjYzB7qDtH5kaUJFLs7RGZTZ42W4PRRmtwvbdt1+wGiaS4drEtDttdZYIDNVuAclR3vA3+dI3qHqmVSy7U6Tv1MScCPvPR7nIpFlsdCy3FdTLPGhK92e2CUITjMJ9ocwKxnsZqc3O3JwMma3d6UVLnyVxB4aXemZqvPqLdpJhW3KVVbY4yYImPo6M5Urv50fj+0z/FG9YaEiENs8UtMfXUaTeTePNHlhXfA1UU+2lyD1Il3Gtt9+adfpNG7dNlpg2U/T3KYLZ2dUWFdTgp3/rQ4sK973qnInV5TIf40x3dhvrJPBiqyWUo4wAtLqhQYS71qK+QKOFRywmGK/kpikzV6WMKhh58vGWs4TIJNjiEYLIuP8Tt4/zmLyqk+AyrJSbF+Qq1DgqRUPMxyl+9q3IQhX/rMCJ6tEunriDs1oSyQZKlr9AkhT2ZIARbJfaJS1vtVbHB+Rgi0RK/y1q1BWsEEyLoz40xtGKcARPVWB1BTPO7f4LNtpkUl1aoMbViLyZo0GRjPD3BxnxjqXeLYlvhqYrzMMG3HoyJXa3JjfnGlbYYFlP7Jh3qKsKY4hQ7TY0nG+xwRL61n63mxHtqNHosigyMLmClNwvuecFnOZB88nNBDzNkzhxEZaKMBVoKapggMzvHHXBEpNSSFAvtcFRsVn0bW8LlMmcXs+c0Kne3gRR32+zg4uXwjC6zit6Wt4a8LXVfcp/MtQXHn2ynGbuCmb8GvvFeJLEE82ReU9/n6+dkq2x3buG9Wn94smcgAw631RPR7BTH+kbmHReZoEpOdEe7zWqZl40s0JWs9Hmv7hjBHqPDwsjGKVJnWWqjbdZp1KhJi0aPmxYZsIRhlttgeF+Jlke41QcOQKoqilSb6HJzSvNG3G/UoWnxwsmt+sVaYwd63dRbqdnMyCPVeyRPvpYgdavM22oGKoMUVRbJfOWMwidJ8Zzb1UvmWK/VVUXzHaTjjrVYh1897HT7xxYEVUaa5SWb/WO+YUWa9SrwvigzM8YlzlYv2GSdVCYxxlBtVnnFq5olwp5/BEk/OLsf5LUmG2+inRJdVvjZ97ZH9/zP34ug1O91pf4p+D+JYBpvrKxfbwAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxNC0xMS0xMFQwMzoxMjowOS0wNTowMB9ViV0AAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTQtMTEtMTBUMDM6MTI6MDktMDU6MDBuCDHhAAAAAElFTkSuQmCC`,height:20,width:20,type:`esriPMS`,angle:0});return{defaultSymbol:n,classBreakInfos:e.map((r,i)=>{let a;if(i!==e.length-1){if(i===0)a={minValue:r,maxValue:e[i+1],symbol:n};else{let n=x.fromJSON({type:`esriPMS`,imageData:t[i].imageData,contentType:`image/svg+xml`,height:32,width:32,angle:0});a={minValue:r,maxValue:e[i+1],symbol:n}}}return new g(a)})}}_getClassBreaks(e,n){return n.map((n,r)=>new g({minValue:e[r],maxValue:e[r+1],symbol:this._getDefaultSymbol(new t(n))}))}};e([o({type:[`Magnitude`],json:{write:!0}})],M.prototype,`attributeField`,void 0),e([o({type:j.apiValues,json:{type:j.jsonValues,read:{reader:j.read},write:{writer:j.write}}})],M.prototype,`flowRepresentation`,void 0),e([o({type:[`geographic`,`arithmetic`],json:{write:!0}})],M.prototype,`rotationType`,void 0),e([o({type:A.apiValues,json:{type:A.jsonValues,read:{reader:A.read},write:{writer:A.write}}})],M.prototype,`style`,void 0),e([o({json:{write:!0}})],M.prototype,`symbolTileSize`,void 0),e([o({type:u.apiValues,json:{type:u.jsonValues,write:{writer:u.write}}})],M.prototype,`inputUnit`,void 0),e([E(`inputUnit`)],M.prototype,`readInputUnit`,null),e([o({type:u.apiValues,json:{type:u.jsonValues,read:{reader:u.read},write:{writer:u.write}}})],M.prototype,`outputUnit`,void 0),e([E(`outputUnit`)],M.prototype,`readOutputUnit`,null),e([D({vectorField:`vector-field`})],M.prototype,`type`,void 0),e([o({type:m})],M.prototype,`styleRenderer`,null),e([o({type:v})],M.prototype,`sizeVariables`,null),e([o({type:_})],M.prototype,`rotationVariables`,null),M=O=e([s(`esri.renderers.VectorFieldRenderer`)],M);const N=M;export{N 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 t from"../../Color.js";import{JSONSupport as n}from"../../core/JSONSupport.js";import{property as r,subclass as i}from"../../core/accessorSupport/decorators.js";import{Integer as a}from"../../core/accessorSupport/ensureType.js";let o=class extends n{constructor(e){super(e),this.value=null,this.label=null,this.color=null}};e([r({type:Number,json:{write:{isRequired:!0}}})],o.prototype,`value`,void 0),e([r({type:String,json:{write:!0}})],o.prototype,`label`,void 0),e([r({type:t,json:{type:[a],write:{isRequired:!0}}})],o.prototype,`color`,void 0),o=e([i(`esri.renderers.support.ColormapInfo`)],o);export{o as default};
2
+ import{__decorate as e}from"tslib";import t from"../../Color.js";import{JSONSupport as n}from"../../core/JSONSupport.js";import{property as r,subclass as i}from"../../core/accessorSupport/decorators.js";import{Integer as a}from"../../core/accessorSupport/ensureType.js";let o=class extends n{constructor(e){super(e),this.value=null,this.label=null,this.color=null}};e([r({type:Number,json:{write:{isRequired:!0}}})],o.prototype,`value`,void 0),e([r({type:String,json:{write:!0}})],o.prototype,`label`,void 0),e([r({type:t,json:{type:[a],write:{isRequired:!0}}})],o.prototype,`color`,void 0),o=e([i(`esri.renderers.support.ColormapInfo`)],o);const s=o;export{s 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{ClonableMixin as t}from"../../core/Clonable.js";import{JSONSupport as n}from"../../core/JSONSupport.js";import{property as r,subclass as i}from"../../core/accessorSupport/decorators.js";import{Integer as a}from"../../core/accessorSupport/ensureType.js";import{websceneRasterRendererTypes as o,rasterRendererTypes as s}from"./rasterTypeUtils.js";import{enumeration as c}from"../../core/accessorSupport/decorators/enumeration.js";let l=class extends t(n){constructor(e){super(e),this.name=void 0,this.method=`none`,this.value=void 0,this.bandIds=void 0,this.renderer=void 0}};e([r({type:String,json:{write:{isRequired:!0}}})],l.prototype,`name`,void 0),e([r({type:[`raster-function-template`,`variable`,`none`],json:{write:{isRequired:!0}}}),c({rasterFunctionTemplate:`raster-function-template`,variable:`variable`,none:`none`})],l.prototype,`method`,void 0),e([r({type:String,json:{write:{isRequired:!0}}})],l.prototype,`value`,void 0),e([r({type:[a],json:{write:{isRequired:!0}}})],l.prototype,`bandIds`,void 0),e([r({types:s,json:{write:!0,origins:{"web-scene":{types:o,write:{overridePolicy(e){return{enabled:e&&e.type!==`vector-field`}}}}}}})],l.prototype,`renderer`,void 0),l=e([i(`esri.renderers.support.RasterPresetRenderer`)],l);export{l as default};
2
+ import{__decorate as e}from"tslib";import{ClonableMixin as t}from"../../core/Clonable.js";import{JSONSupport as n}from"../../core/JSONSupport.js";import{property as r,subclass as i}from"../../core/accessorSupport/decorators.js";import{Integer as a}from"../../core/accessorSupport/ensureType.js";import{websceneRasterRendererTypes as o,rasterRendererTypes as s}from"./rasterTypeUtils.js";import{enumeration as c}from"../../core/accessorSupport/decorators/enumeration.js";let l=class extends t(n){constructor(e){super(e),this.name=void 0,this.method=`none`,this.value=void 0,this.bandIds=void 0,this.renderer=void 0}};e([r({type:String,json:{write:{isRequired:!0}}})],l.prototype,`name`,void 0),e([r({type:[`raster-function-template`,`variable`,`none`],json:{write:{isRequired:!0}}}),c({rasterFunctionTemplate:`raster-function-template`,variable:`variable`,none:`none`})],l.prototype,`method`,void 0),e([r({type:String,json:{write:{isRequired:!0}}})],l.prototype,`value`,void 0),e([r({type:[a],json:{write:{isRequired:!0}}})],l.prototype,`bandIds`,void 0),e([r({types:s,json:{write:!0,origins:{"web-scene":{types:o,write:{overridePolicy(e){return{enabled:e&&e.type!==`vector-field`}}}}}}})],l.prototype,`renderer`,void 0),l=e([i(`esri.renderers.support.RasterPresetRenderer`)],l);const u=l;export{u as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import e from"../../Color.js";import{getMetersPerUnitForSR as t}from"../../core/units.js";import{isFunctionRaster as n}from"../../layers/raster/datasets/datasetUtils.js";import r from"../../layers/support/Field.js";import i from"../ClassBreaksRenderer.js";import a from"../FlowRenderer.js";import o from"../RasterColormapRenderer.js";import s from"../RasterShadedReliefRenderer.js";import c from"../RasterStretchRenderer.js";import l from"../UniqueValueRenderer.js";import u from"../VectorFieldRenderer.js";import d from"./AuthoringInfo.js";import f from"./ClassBreakInfo.js";import{convertColorRampToColormap as p,predefinedJsonColorRamps as m}from"./colorRampUtils.js";import{isVectorFieldRendererSupported as h,isColormapRendererSupported as g,isUVRendererSupported as _,isClassBreaksSupported as v,isShadedReliefRendererSupported as y,isFlowRendererSupported as b}from"./rasterRendererChecks.js";import x from"./UniqueValueInfo.js";import S from"../visualVariables/ColorVariable.js";import ee from"../visualVariables/SizeVariable.js";import C from"../visualVariables/support/ColorStop.js";import w from"../../rest/support/ClassBreaksDefinition.js";import{createGenerateRendererClassBreaks as T}from"../../rest/support/generateRendererUtils.js";import E from"../../rest/support/MultipartColorRamp.js";import D from"../../symbols/SimpleFillSymbol.js";const O=E.fromJSON({type:`multipart`,colorRamps:[{algorithm:`esriCIELabAlgorithm`,fromColor:[0,0,255],toColor:[0,255,255]},{algorithm:`esriCIELabAlgorithm`,fromColor:[0,255,255],toColor:[255,255,0]},{algorithm:`esriCIELabAlgorithm`,fromColor:[255,255,0],toColor:[255,0,0]}]}),k=E.fromJSON(m[0]),A=new Set([`scientific`,`standard-time`,`vector-uv`,`vector-magdir`,`vector-u`,`vector-v`,`vector-magnitude`,`vector-direction`]);function j(e){return e.presetRenderers?.find(({method:t,value:n})=>t===`raster-function-template`?n===e.rasterFunctionName:t===`variable`&&n===e.variableName)}function M(e,t){let{attributeTable:n,colormap:r}=e;if(h(e)){let t=Z(e);if(t!=null)return t}if(t?.rasterFunctionColorRamp){let n=F(e,t);return n.colorRamp=t.rasterFunctionColorRamp,n}if(r!=null){let t=K(e);if(t!=null)return t}if(n!=null){let t=H(e);if(t!=null)return t}return F(e,t)}function N(e,t=!1){let n=[`raster-stretch`];return g(e,t)&&n.push(`raster-colormap`),_(e)&&n.push(`unique-value`),v(e,t)&&n.push(`class-breaks`),y(e)&&n.push(`raster-shaded-relief`),h(e)&&n.push(`vector-field`),b(e)&&n.push(`flow`),n}function P(e){return n(e)&&e.rasterFunction.functionName===`Colormap`?e.rasterFunction.colorRamp:void 0}function te(e,t,n){let r=[`nearest`,`bilinear`,`cubic`,`majority`],i=n?.toLowerCase().replace(`bicubic`,`cubic`),a=r.find(e=>e===i);return t===`Map`?a??`bilinear`:e.dataType===`standard-time`?a??`nearest`:e.dataType===`thematic`||e.attributeTable||e.colormap?a===`nearest`||a===`majority`?a:`nearest`:a??`bilinear`}function F(e,t){e=I(e,t?.variableName);let{bandCount:n}=e,{bandIds:r,stretchType:i}=t||{};r?.some(e=>e>=n)&&(r=null);let a=e.statistics,o=e.histograms;n>1?(r=r?.length?r:L(e),a=a==null?null:r?.map(e=>a[e]),o=o==null?null:r?.map(e=>o[e])):r=[0],i??=ne(e),t?.includeStatisticsInStretch&&(i===`percent-clip`||i===`histogram-equalization`)&&e.statistics?.length&&(i=`min-max`);let s=!1;switch(i){case`none`:s=!1;break;case`percent-clip`:s=!o?.length;break;default:s=!a?.length}let{dataType:l}=e,u=r?.length===1&&A.has(l)?O:null,d=new c({stretchType:i,dynamicRangeAdjustment:s,colorRamp:u,outputMin:0,outputMax:255,gamma:r?.length===1?[1]:[1,1,1],useGamma:!1});return i===`percent-clip`?d.maxPercent=d.minPercent=.25:i===`standard-deviation`&&(d.numberOfStandardDeviations=2),!s&&(e.multidimensionalInfo!=null||t?.includeStatisticsInStretch)&&(i===`percent-clip`?d.histograms=o:(i===`min-max`||i===`standard-deviation`)&&(d.customStatistics=a?.map(e=>({...e})))),d}function I(e,t){let{multidimensionalInfo:n}=e;if(!t||!n)return e;let r=n.variables.find(e=>e.name===t);if(!r)return e;if(e=e.clone(),r){let{statistics:t,histograms:n}=r;t?.length&&(e.statistics=t.map(e=>({min:e.min,max:e.max,avg:e.avg,stddev:e.stddev}))),n?.length&&(e.histograms=n)}return e}function L(e){let t=e.bandCount;if(t===1)return null;if(t===2)return[0];let{bandInfos:n}=e,r;if(n.length===t){let{red:e,green:t,blue:i,nir:a}=z(n);e!=null&&t!=null&&i!=null?r=[e,t,i]:a!=null&&e!=null&&t!=null&&(r=[a,e,t])}return!r&&t>=3&&(r=[0,1,2]),r}function R(e,t){let n=e.bandInfos.map(({name:e})=>e);return t?.length?t.map(e=>n[e]):n}function z(e){let t={};for(let n=0;n<e.length;n++){let r=e[n].name.toLowerCase();r===`red`?t.red=n:r===`green`?t.green=n:r===`blue`?t.blue=n:(r===`nearinfrared`||r===`nearinfrared_1`||r===`nir`)&&(t.nir=n)}if(t.blue==null||t.green==null||t.red==null||t.nir==null){let n=V(e);t.blue??=B(n,480),t.green??=B(n,550),t.red??=B(n,660),t.nir??=B(V(e,800),810)??B(n,810)}return t}function B(e,t,n=60){let r=n,i;for(let n of e){let e=Math.abs(n.wavelength-t);e<=r&&(r=e,i=n.index)}return i}function V(e,t){return e.map(({name:e,minWavelength:n,maxWavelength:r},i)=>/thermal/i.test(e)||/pan/i.test(e)||t!=null&&r!=null&&r<t?null:{wavelength:n!=null&&r!=null?(n+r)/2:n??r??0,index:i}).filter(e=>e!=null)}function ne(e){let t=`percent-clip`,{pixelType:n,dataType:r,histograms:i,statistics:a,multidimensionalInfo:o}=e,s=A.has(r)||r===`generic`&&o!=null;return n===`u8`&&(r===`processed`||i==null||a==null)?t=`none`:n===`u8`||r===`elevation`||s?t=`min-max`:i==null?a!=null&&(t=`min-max`):t=`percent-clip`,t}function H(t,n,r,i){if(!_(t,n))return null;let{attributeTable:a,statistics:o}=t,s=U(a,n),c=G(a,`red`),u=G(a,`green`),f=G(a,`blue`),m=new d,h=[],g=new Set,v=!!(c&&u&&f);if(a!=null)a.features.forEach(t=>{let n=t.attributes[s.name];if(!g.has(t.attributes[s.name])&&n!=null){g.add(n);let r=v&&(c.type===`single`||c.type===`double`)&&(u.type===`single`||u.type===`double`)&&(f.type===`single`||f.type===`double`)&&!a.features.some(e=>e.attributes[c.name]>1||e.attributes[u.name]>1||e.attributes[f.name]>1)?255:1;h.push(new x({value:t.attributes[s.name],label:t.attributes[s.name]+``,symbol:new D({style:`solid`,outline:null,color:v?new e([t.attributes[c.name]*r,t.attributes[u.name]*r,t.attributes[f.name]*r,1]):new e([0,0,0,0])})}))}});else if(o?.[0])for(let t=o[0].min;t<=o[0].max;t++)h.push(new x({value:t,label:t.toString(),symbol:new D({style:`solid`,outline:null,color:new e([0,0,0,0])})}));if(h.sort((e,t)=>e.value&&typeof e.value.valueOf()==`string`?0:e.value>t.value?1:-1),!v){let t=p(k,{numColors:h.length});h.forEach((n,r)=>n.symbol.color=new e(t[r].slice(1,4))),m.colorRamp=k}if(r||i){let t=r||p(i,{numColors:h.length}).map(e=>e.slice(1));h.forEach((n,r)=>n.symbol.color=new e(t[r])),m.colorRamp=i}return new l({field:s.name,uniqueValueInfos:h,authoringInfo:m})}function U(e,t,n){let i;return e==null?i=new r({name:`value`}):(i=t?e.fields.find(e=>t.toLowerCase()===e.name.toLowerCase()):W(e.fields),i||(n||(i=e.fields.find(e=>e.type===`string`)),i||=G(e,`value`))),i}function W(e){let t;for(let n=0;n<e.length;n++){let r=e[n].name.toLowerCase();if(e[n].type===`string`){if(r.startsWith(`class`)){t=e[n];break}t==null&&(r.endsWith(`name`)||r.endsWith(`type`))&&(t=e[n])}}return t}function G(e,t){return e==null?null:e.fields.find(e=>e.name.toLowerCase()===t)}function K(e){if(!g(e))return null;let t,{attributeTable:n,colormap:r}=e;if(n!=null){let e=G(n,`value`),r=U(n,null,!0);r.type===`string`&&(t={},n.features.forEach(n=>{let i=n.attributes;t[i[e.name]]=r?i[r.name]:i[e.name]}))}return o.createFromColormap(r,t)}function q(e,n=`traditional`){if(!y(e))return null;let{extent:r}=e,i=r.width*t(r.spatialReference)>5e6?`adjusted`:`none`;return new s({hillshadeType:n,scalingType:i})}function J(e,t){e=I(e,t?.variableName);let{attributeTable:n}=e;if(!v(e))return null;let r=e.histograms==null?null:e.histograms[0],a=t?.numClasses!=null&&isFinite(t?.numClasses)?t.numClasses:5,o=new d({classificationMethod:t?.classificationMethod,colorRamp:t?.colorRamp}),s=t?.field||`value`,c=[],l=[],u=1e3,m=n!=null,h=m&&n.fields.find(e=>e.name.toLowerCase()===`count`),g=m?n.fields.find(e=>e.name.toLowerCase()===s.toLowerCase()):void 0;if(g&&m){s=g.name;let e=n.features.length,t=0;n.features.forEach(n=>t+=(h?n.attributes[h.name]:50)/e),n.features.forEach(n=>{let r=n.attributes[g.name],i=h?n.attributes[h.name]:50;if(i>0){l.push(i);let n=Math.max(1,Math.round(i/e/t*u));for(let e=0;e<n;e++)c.push(r)}})}else{let{pixelType:t}=e,i=(r.max-r.min)/r.size,a=t.includes(`s`)||t.includes(`u`),o=a&&i===1?Math.floor(r.min+.5):r.min,s=a&&i===1?Math.floor(r.max-.5):r.max,d=r.size,f=0,p;r.counts.forEach(e=>f+=e/d),r.counts.forEach((e,t)=>{if(e>0){l.push(e);let a=Math.max(1,Math.round(e/d/f*u));p=m?n.features[t].attributes[g.name]:t===0?o:t===d-1?s:r.min+i*(t+.5);for(let e=0;e<a;e++)c.push(p)}})}let _=t?.classificationMethod||`natural-breaks`,y=t?.definedInterval;_===`defined-interval`&&!y&&(y=Y(e,g,a));let b=T({values:c,valueFrequency:l,normalizationTotal:null,definition:new w({classificationMethod:_,breakCount:a,definedInterval:y})}),x=t?.colors;if(!x){let e=t?.colorRamp||O;o.colorRamp=e,x=p(e,{numColors:b.classBreaks.length,interpolateAlpha:!0}).map(e=>e.slice(1))}let S=b.classBreaks.map((e,t)=>new f({minValue:e.minValue,maxValue:e.maxValue,label:e.label,symbol:new D({color:x[t]})}));return new i({field:s,classBreakInfos:S,authoringInfo:o})}function Y(e,t,n){let r=0,i=0;if(e.attributeTable!=null){let n=e.attributeTable;r=i=n.features[0].attributes[t.name],n.features.forEach(e=>{let n=e.attributes[t.name];n<r&&(r=n),n>i&&(i=n)})}else if(e.histograms!=null){let t=e.histograms;r=t[0].min,i=t[0].max}return(i-r)/n}const X=new Map([[`m/s`,`meter-per-second`],[`km/h`,`kilometer-per-hour`],[`knots`,`knots`],[`ft/s`,`feet-per-second`],[`mph`,`mile-per-hour`]]);function Z(e){if(!h(e))return null;let t;if(e.statistics!=null&&e.statistics.length&&(e.dataType===`vector-magdir`||e.dataType===`vector-uv`)){let{minMagnitude:n,maxMagnitude:r}=$(e.dataType,e.statistics);t=[new ee({field:`Magnitude`,minSize:10,maxSize:40,minDataValue:n,maxDataValue:r})]}let n=e.multidimensionalInfo==null?void 0:X.get(e.multidimensionalInfo.variables[0].unit),r=new u({visualVariables:t,inputUnit:n,rotationType:`geographic`});return r.visualVariables=[...r.sizeVariables,...r.rotationVariables],r}function Q(e){return{color:e.symbolLayers[0].material?.color,type:`esriSFS`,style:`esriSFSSolid`}}function re(e){if(e.type===`uniqueValue`){let t=e.uniqueValueInfos;return(t?.[0].symbol)?.symbolLayers?.length&&(e.uniqueValueInfos=t?.map(e=>({value:e.value,label:e.label,symbol:e.symbol?Q(e.symbol):null}))),e}if(e.type===`classBreaks`){let t=e.classBreakInfos;return t[0].symbol?.symbolLayers?.length&&(e.classBreakInfos=t.map(e=>({classMinValue:e.classMinValue,classMaxValue:e.classMaxValue,label:e.label,symbol:e.symbol?Q(e.symbol):null}))),e}return e}function ie(t){if(!b(t))return null;let n;if(t.statistics!=null&&t.statistics.length>0&&(t.dataType===`vector-magdir`||t.dataType===`vector-uv`)){let{minMagnitude:r,maxMagnitude:i}=$(t.dataType,t.statistics);n=[new S({field:`Magnitude`,stops:[new C({value:r,color:new e(`#1020c0`)}),new C({value:i,color:new e(`#c02010`)})]})]}return new a({visualVariables:n})}function $(e,t){let n,r;if(e===`vector-magdir`)n=t[0].min,r=t[0].max;else{let e=t[0].min,i=t[0].max,a=t[1].min,o=t[1].max;n=0,r=Math.max(Math.abs(e),Math.abs(a),Math.abs(i),Math.abs(o))}return{minMagnitude:n,maxMagnitude:r}}export{J as createClassBreaksRenderer,K as createColormapRenderer,M as createDefaultRenderer,ie as createFlowRenderer,q as createShadedReliefRenderer,F as createStretchRenderer,H as createUVRenderer,Z as createVectorFieldRenderer,$ as estimateMagnitudeRange,R as getBandNames,U as getClassField,L as getDefaultBandCombination,te as getDefaultInterpolation,Y as getDefinedInterval,G as getField,P as getFunctionColorRamp,N as getSupportedRendererTypes,I as getVariableRasterInfo,z as getWellKnownBandIndexes,j as matchPresetRenderer,re as normalizeRendererJSON};
2
+ import e from"../../Color.js";import{getMetersPerUnitForSR as t}from"../../core/units.js";import{isFunctionRaster as n}from"../../layers/raster/datasets/datasetUtils.js";import r from"../../layers/support/Field.js";import i from"../ClassBreaksRenderer.js";import a from"../FlowRenderer.js";import o from"../RasterColormapRenderer.js";import s from"../RasterShadedReliefRenderer.js";import c from"../RasterStretchRenderer.js";import l from"../UniqueValueRenderer.js";import u from"../VectorFieldRenderer.js";import d from"./AuthoringInfo.js";import f from"./ClassBreakInfo.js";import{predefinedJsonColorRamps as p,convertColorRampToColormap as m}from"./colorRampUtils.js";import{isVectorFieldRendererSupported as h,isColormapRendererSupported as g,isUVRendererSupported as _,isClassBreaksSupported as v,isShadedReliefRendererSupported as y,isFlowRendererSupported as b}from"./rasterRendererChecks.js";import x from"./UniqueValueInfo.js";import S from"../visualVariables/ColorVariable.js";import ee from"../visualVariables/SizeVariable.js";import C from"../visualVariables/support/ColorStop.js";import w from"../../rest/support/ClassBreaksDefinition.js";import{createGenerateRendererClassBreaks as T}from"../../rest/support/generateRendererUtils.js";import E from"../../rest/support/MultipartColorRamp.js";import D from"../../symbols/SimpleFillSymbol.js";const O=E.fromJSON({type:`multipart`,colorRamps:[{algorithm:`esriCIELabAlgorithm`,fromColor:[0,0,255],toColor:[0,255,255]},{algorithm:`esriCIELabAlgorithm`,fromColor:[0,255,255],toColor:[255,255,0]},{algorithm:`esriCIELabAlgorithm`,fromColor:[255,255,0],toColor:[255,0,0]}]}),k=E.fromJSON(p[0]),A=new Set([`scientific`,`standard-time`,`vector-uv`,`vector-magdir`,`vector-u`,`vector-v`,`vector-magnitude`,`vector-direction`]);function j(e){return e.presetRenderers?.find(({method:t,value:n})=>t===`raster-function-template`?n===e.rasterFunctionName:t===`variable`&&n===e.variableName)}function M(e,t){let{attributeTable:n,colormap:r}=e;if(h(e)){let t=Z(e);if(t!=null)return t}if(t?.rasterFunctionColorRamp){let n=F(e,t);return n.colorRamp=t.rasterFunctionColorRamp,n}if(r!=null){let t=K(e);if(t!=null)return t}if(n!=null){let t=H(e);if(t!=null)return t}return F(e,t)}function N(e,t=!1){let n=[`raster-stretch`];return g(e,t)&&n.push(`raster-colormap`),_(e)&&n.push(`unique-value`),v(e,t)&&n.push(`class-breaks`),y(e)&&n.push(`raster-shaded-relief`),h(e)&&n.push(`vector-field`),b(e)&&n.push(`flow`),n}function P(e){return n(e)&&e.rasterFunction.functionName===`Colormap`?e.rasterFunction.colorRamp:void 0}function te(e,t,n){let r=[`nearest`,`bilinear`,`cubic`,`majority`],i=n?.toLowerCase().replace(`bicubic`,`cubic`),a=r.find(e=>e===i);return t===`Map`?a??`bilinear`:e.dataType===`standard-time`?a??`nearest`:e.dataType===`thematic`||e.attributeTable||e.colormap?a===`nearest`||a===`majority`?a:`nearest`:a??`bilinear`}function F(e,t){e=I(e,t?.variableName);let{bandCount:n}=e,{bandIds:r,stretchType:i}=t||{};r?.some(e=>e>=n)&&(r=null);let a=e.statistics,o=e.histograms;n>1?(r=r?.length?r:L(e),a=a==null?null:r?.map(e=>a[e]),o=o==null?null:r?.map(e=>o[e])):r=[0],i??=ne(e),t?.includeStatisticsInStretch&&(i===`percent-clip`||i===`histogram-equalization`)&&e.statistics?.length&&(i=`min-max`);let s=!1;switch(i){case`none`:s=!1;break;case`percent-clip`:s=!o?.length;break;default:s=!a?.length}let{dataType:l}=e,u=r?.length===1&&A.has(l)?O:null,d=new c({stretchType:i,dynamicRangeAdjustment:s,colorRamp:u,outputMin:0,outputMax:255,gamma:r?.length===1?[1]:[1,1,1],useGamma:!1});return i===`percent-clip`?d.maxPercent=d.minPercent=.25:i===`standard-deviation`&&(d.numberOfStandardDeviations=2),!s&&(e.multidimensionalInfo!=null||t?.includeStatisticsInStretch)&&(i===`percent-clip`?d.histograms=o:(i===`min-max`||i===`standard-deviation`)&&(d.customStatistics=a?.map(e=>({...e})))),d}function I(e,t){let{multidimensionalInfo:n}=e;if(!t||!n)return e;let r=n.variables.find(e=>e.name===t);if(!r)return e;if(e=e.clone(),r){let{statistics:t,histograms:n}=r;t?.length&&(e.statistics=t.map(e=>({min:e.min,max:e.max,avg:e.avg,stddev:e.stddev}))),n?.length&&(e.histograms=n)}return e}function L(e){let t=e.bandCount;if(t===1)return null;if(t===2)return[0];let{bandInfos:n}=e,r;if(n.length===t){let{red:e,green:t,blue:i,nir:a}=z(n);e!=null&&t!=null&&i!=null?r=[e,t,i]:a!=null&&e!=null&&t!=null&&(r=[a,e,t])}return!r&&t>=3&&(r=[0,1,2]),r}function R(e,t){let n=e.bandInfos.map(({name:e})=>e);return t?.length?t.map(e=>n[e]):n}function z(e){let t={};for(let n=0;n<e.length;n++){let r=e[n].name.toLowerCase();r===`red`?t.red=n:r===`green`?t.green=n:r===`blue`?t.blue=n:(r===`nearinfrared`||r===`nearinfrared_1`||r===`nir`)&&(t.nir=n)}if(t.blue==null||t.green==null||t.red==null||t.nir==null){let n=V(e);t.blue??=B(n,480),t.green??=B(n,550),t.red??=B(n,660),t.nir??=B(V(e,800),810)??B(n,810)}return t}function B(e,t,n=60){let r=n,i;for(let n of e){let e=Math.abs(n.wavelength-t);e<=r&&(r=e,i=n.index)}return i}function V(e,t){return e.map(({name:e,minWavelength:n,maxWavelength:r},i)=>/thermal/i.test(e)||/pan/i.test(e)||t!=null&&r!=null&&r<t?null:{wavelength:n!=null&&r!=null?(n+r)/2:n??r??0,index:i}).filter(e=>e!=null)}function ne(e){let t=`percent-clip`,{pixelType:n,dataType:r,histograms:i,statistics:a,multidimensionalInfo:o}=e,s=A.has(r)||r===`generic`&&o!=null;return n===`u8`&&(r===`processed`||i==null||a==null)?t=`none`:n===`u8`||r===`elevation`||s?t=`min-max`:i==null?a!=null&&(t=`min-max`):t=`percent-clip`,t}function H(t,n,r,i){if(!_(t,n))return null;let{attributeTable:a,statistics:o}=t,s=U(a,n),c=G(a,`red`),u=G(a,`green`),f=G(a,`blue`),p=new d,h=[],g=new Set,v=!!(c&&u&&f);if(a!=null)a.features.forEach(t=>{let n=t.attributes[s.name];if(!g.has(t.attributes[s.name])&&n!=null){g.add(n);let r=v&&(c.type===`single`||c.type===`double`)&&(u.type===`single`||u.type===`double`)&&(f.type===`single`||f.type===`double`)&&!a.features.some(e=>e.attributes[c.name]>1||e.attributes[u.name]>1||e.attributes[f.name]>1)?255:1;h.push(new x({value:t.attributes[s.name],label:t.attributes[s.name]+``,symbol:new D({style:`solid`,outline:null,color:v?new e([t.attributes[c.name]*r,t.attributes[u.name]*r,t.attributes[f.name]*r,1]):new e([0,0,0,0])})}))}});else if(o?.[0])for(let t=o[0].min;t<=o[0].max;t++)h.push(new x({value:t,label:t.toString(),symbol:new D({style:`solid`,outline:null,color:new e([0,0,0,0])})}));if(h.sort((e,t)=>e.value&&typeof e.value.valueOf()==`string`?0:e.value>t.value?1:-1),!v){let t=m(k,{numColors:h.length});h.forEach((n,r)=>n.symbol.color=new e(t[r].slice(1,4))),p.colorRamp=k}if(r||i){let t=r||m(i,{numColors:h.length}).map(e=>e.slice(1));h.forEach((n,r)=>n.symbol.color=new e(t[r])),p.colorRamp=i}return new l({field:s.name,uniqueValueInfos:h,authoringInfo:p})}function U(e,t,n){let i;return e==null?i=new r({name:`value`}):(i=t?e.fields.find(e=>t.toLowerCase()===e.name.toLowerCase()):W(e.fields),i||(n||(i=e.fields.find(e=>e.type===`string`)),i||=G(e,`value`))),i}function W(e){let t;for(let n=0;n<e.length;n++){let r=e[n].name.toLowerCase();if(e[n].type===`string`){if(r.startsWith(`class`)){t=e[n];break}t==null&&(r.endsWith(`name`)||r.endsWith(`type`))&&(t=e[n])}}return t}function G(e,t){return e==null?null:e.fields.find(e=>e.name.toLowerCase()===t)}function K(e){if(!g(e))return null;let t,{attributeTable:n,colormap:r}=e;if(n!=null){let e=G(n,`value`),r=U(n,null,!0);r.type===`string`&&(t={},n.features.forEach(n=>{let i=n.attributes;t[i[e.name]]=r?i[r.name]:i[e.name]}))}return o.createFromColormap(r,t)}function q(e,n=`traditional`){if(!y(e))return null;let{extent:r}=e,i=r.width*t(r.spatialReference)>5e6?`adjusted`:`none`;return new s({hillshadeType:n,scalingType:i})}function J(e,t){e=I(e,t?.variableName);let{attributeTable:n}=e;if(!v(e))return null;let r=e.histograms==null?null:e.histograms[0],a=t?.numClasses!=null&&isFinite(t?.numClasses)?t.numClasses:5,o=new d({classificationMethod:t?.classificationMethod,colorRamp:t?.colorRamp}),s=t?.field||`value`,c=[],l=[],u=1e3,p=n!=null,h=p&&n.fields.find(e=>e.name.toLowerCase()===`count`),g=p?n.fields.find(e=>e.name.toLowerCase()===s.toLowerCase()):void 0;if(g&&p){s=g.name;let e=n.features.length,t=0;n.features.forEach(n=>t+=(h?n.attributes[h.name]:50)/e),n.features.forEach(n=>{let r=n.attributes[g.name],i=h?n.attributes[h.name]:50;if(i>0){l.push(i);let n=Math.max(1,Math.round(i/e/t*u));for(let e=0;e<n;e++)c.push(r)}})}else{let{pixelType:t}=e,i=(r.max-r.min)/r.size,a=t.includes(`s`)||t.includes(`u`),o=a&&i===1?Math.floor(r.min+.5):r.min,s=a&&i===1?Math.floor(r.max-.5):r.max,d=r.size,f=0,m;r.counts.forEach(e=>f+=e/d),r.counts.forEach((e,t)=>{if(e>0){l.push(e);let a=Math.max(1,Math.round(e/d/f*u));m=p?n.features[t].attributes[g.name]:t===0?o:t===d-1?s:r.min+i*(t+.5);for(let e=0;e<a;e++)c.push(m)}})}let _=t?.classificationMethod||`natural-breaks`,y=t?.definedInterval;_===`defined-interval`&&!y&&(y=Y(e,g,a));let b=T({values:c,valueFrequency:l,normalizationTotal:null,definition:new w({classificationMethod:_,breakCount:a,definedInterval:y})}),x=t?.colors;if(!x){let e=t?.colorRamp||O;o.colorRamp=e,x=m(e,{numColors:b.classBreaks.length,interpolateAlpha:!0}).map(e=>e.slice(1))}let S=b.classBreaks.map((e,t)=>new f({minValue:e.minValue,maxValue:e.maxValue,label:e.label,symbol:new D({color:x[t]})}));return new i({field:s,classBreakInfos:S,authoringInfo:o})}function Y(e,t,n){let r=0,i=0;if(e.attributeTable!=null){let n=e.attributeTable;r=i=n.features[0].attributes[t.name],n.features.forEach(e=>{let n=e.attributes[t.name];n<r&&(r=n),n>i&&(i=n)})}else if(e.histograms!=null){let t=e.histograms;r=t[0].min,i=t[0].max}return(i-r)/n}const X=new Map([[`m/s`,`meter-per-second`],[`km/h`,`kilometer-per-hour`],[`knots`,`knots`],[`ft/s`,`feet-per-second`],[`mph`,`mile-per-hour`]]);function Z(e){if(!h(e))return null;let t;if(e.statistics!=null&&e.statistics.length&&(e.dataType===`vector-magdir`||e.dataType===`vector-uv`)){let{minMagnitude:n,maxMagnitude:r}=$(e.dataType,e.statistics);t=[new ee({field:`Magnitude`,minSize:10,maxSize:40,minDataValue:n,maxDataValue:r})]}let n=e.multidimensionalInfo==null?void 0:X.get(e.multidimensionalInfo.variables[0].unit),r=new u({visualVariables:t,inputUnit:n,rotationType:`geographic`});return r.visualVariables=[...r.sizeVariables,...r.rotationVariables],r}function Q(e){return{color:e.symbolLayers[0].material?.color,type:`esriSFS`,style:`esriSFSSolid`}}function re(e){if(e.type===`uniqueValue`){let t=e.uniqueValueInfos;return(t?.[0].symbol)?.symbolLayers?.length&&(e.uniqueValueInfos=t?.map(e=>({value:e.value,label:e.label,symbol:e.symbol?Q(e.symbol):null}))),e}if(e.type===`classBreaks`){let t=e.classBreakInfos;return t[0].symbol?.symbolLayers?.length&&(e.classBreakInfos=t.map(e=>({classMinValue:e.classMinValue,classMaxValue:e.classMaxValue,label:e.label,symbol:e.symbol?Q(e.symbol):null}))),e}return e}function ie(t){if(!b(t))return null;let n;if(t.statistics!=null&&t.statistics.length>0&&(t.dataType===`vector-magdir`||t.dataType===`vector-uv`)){let{minMagnitude:r,maxMagnitude:i}=$(t.dataType,t.statistics);n=[new S({field:`Magnitude`,stops:[new C({value:r,color:new e(`#1020c0`)}),new C({value:i,color:new e(`#c02010`)})]})]}return new a({visualVariables:n})}function $(e,t){let n,r;if(e===`vector-magdir`)n=t[0].min,r=t[0].max;else{let e=t[0].min,i=t[0].max,a=t[1].min,o=t[1].max;n=0,r=Math.max(Math.abs(e),Math.abs(a),Math.abs(i),Math.abs(o))}return{minMagnitude:n,maxMagnitude:r}}export{J as createClassBreaksRenderer,K as createColormapRenderer,M as createDefaultRenderer,ie as createFlowRenderer,q as createShadedReliefRenderer,F as createStretchRenderer,H as createUVRenderer,Z as createVectorFieldRenderer,$ as estimateMagnitudeRange,R as getBandNames,U as getClassField,L as getDefaultBandCombination,te as getDefaultInterpolation,Y as getDefinedInterval,G as getField,P as getFunctionColorRamp,N as getSupportedRendererTypes,I as getVariableRasterInfo,z as getWellKnownBandIndexes,j as matchPresetRenderer,re as normalizeRendererJSON};
@@ -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{property as n,subclass as r}from"../../core/accessorSupport/decorators.js";let i=class extends t{constructor(e){super(e),this.entityAdds=void 0,this.entityUpdates=void 0,this.entityDeletes=void 0,this.relationshipAdds=void 0,this.relationshipUpdates=void 0,this.relationshipDeletes=void 0,this.options=void 0}};e([n()],i.prototype,`entityAdds`,void 0),e([n()],i.prototype,`entityUpdates`,void 0),e([n()],i.prototype,`entityDeletes`,void 0),e([n()],i.prototype,`relationshipAdds`,void 0),e([n()],i.prototype,`relationshipUpdates`,void 0),e([n()],i.prototype,`relationshipDeletes`,void 0),e([n()],i.prototype,`options`,void 0),i=e([r(`esri.rest.knowledgeGraph.GraphApplyEdits`)],i);export{i as default};
2
+ import{__decorate as e}from"tslib";import t from"../../core/Accessor.js";import{property as n,subclass as r}from"../../core/accessorSupport/decorators.js";let i=class extends t{constructor(e){super(e),this.entityAdds=void 0,this.entityUpdates=void 0,this.entityDeletes=void 0,this.relationshipAdds=void 0,this.relationshipUpdates=void 0,this.relationshipDeletes=void 0,this.options=void 0}};e([n()],i.prototype,`entityAdds`,void 0),e([n()],i.prototype,`entityUpdates`,void 0),e([n()],i.prototype,`entityDeletes`,void 0),e([n()],i.prototype,`relationshipAdds`,void 0),e([n()],i.prototype,`relationshipUpdates`,void 0),e([n()],i.prototype,`relationshipDeletes`,void 0),e([n()],i.prototype,`options`,void 0),i=e([r(`esri.rest.knowledgeGraph.GraphApplyEdits`)],i);const a=i;export{a 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{JSONSupport as t}from"../../core/JSONSupport.js";import{property as n,subclass as r}from"../../core/accessorSupport/decorators.js";import i from"../../geometry/Point.js";import a from"../../layers/support/MosaicRule.js";import{measureOperationJSONMap as o}from"./imageMeasureUtils.js";let s=class extends t{constructor(e){super(e),this.type=null,this.measureOperation=null,this.mosaicRule=null,this.pixelSize=null,this.raster=void 0}};e([n()],s.prototype,`type`,void 0),e([n({type:o.apiValues,json:{read:o.read,write:o.write}})],s.prototype,`measureOperation`,void 0),e([n({type:a,json:{write:!0}})],s.prototype,`mosaicRule`,void 0),e([n({type:i,json:{write:!0}})],s.prototype,`pixelSize`,void 0),e([n({json:{write:!0}})],s.prototype,`raster`,void 0),s=e([r(`esri.rest.support.BaseImageMeasureParameters`)],s);export{s as default};
2
+ import{__decorate as e}from"tslib";import{JSONSupport as t}from"../../core/JSONSupport.js";import{property as n,subclass as r}from"../../core/accessorSupport/decorators.js";import i from"../../geometry/Point.js";import a from"../../layers/support/MosaicRule.js";import{measureOperationJSONMap as o}from"./imageMeasureUtils.js";let s=class extends t{constructor(e){super(e),this.type=null,this.measureOperation=null,this.mosaicRule=null,this.pixelSize=null,this.raster=void 0}};e([n()],s.prototype,`type`,void 0),e([n({type:o.apiValues,json:{read:o.read,write:o.write}})],s.prototype,`measureOperation`,void 0),e([n({type:a,json:{write:!0}})],s.prototype,`mosaicRule`,void 0),e([n({type:i,json:{write:!0}})],s.prototype,`pixelSize`,void 0),e([n({json:{write:!0}})],s.prototype,`raster`,void 0),s=e([r(`esri.rest.support.BaseImageMeasureParameters`)],s);const c=s;export{c as default};