@arcgis/core 6.0.0-next.22 → 6.0.0-next.24

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 (433) hide show
  1. package/Graphic.d.ts +47 -14
  2. package/PopupTemplate.js +1 -1
  3. package/WebScene.d.ts +3 -0
  4. package/analysis/LineOfSightAnalysis.d.ts +1 -1
  5. package/analysis/LineOfSightAnalysisObserver.d.ts +5 -4
  6. package/analysis/LineOfSightAnalysisTarget.d.ts +4 -4
  7. package/analysis/Viewshed.d.ts +4 -4
  8. package/arcade/functions/string.js +1 -1
  9. package/arcgisGlobal.d.ts +0 -5
  10. package/assets/esri/core/workers/RemoteClient.js +1 -1
  11. package/assets/esri/core/workers/chunks/{3c277a0f099d67090d07.js → 02335385b1476fe322eb.js} +1 -1
  12. package/assets/esri/core/workers/chunks/{db9921fbda556f142c4a.js → 04d55ed51e8b2683c4b4.js} +1 -1
  13. package/assets/esri/core/workers/chunks/{435b90168f79c5587a07.js → 04ecf15524ff3838c01c.js} +1 -1
  14. package/assets/esri/core/workers/chunks/{e2f42aec02bff33b25dd.js → 09300e74e5b014ce6269.js} +1 -1
  15. package/assets/esri/core/workers/chunks/{fcb86d24fc7e0666b564.js → 096b2bf1c0d69d27f20c.js} +1 -1
  16. package/assets/esri/core/workers/chunks/{612345f17f5eeb99ea8f.js → 0d9c4c6c571ce26d356b.js} +1 -1
  17. package/assets/esri/core/workers/chunks/{0f725cf79ce00e790a7d.js → 1168bc5c9f0a7e1f63a2.js} +1 -1
  18. package/assets/esri/core/workers/chunks/{4911ce62421a6c3320b0.js → 13c64087be3b2985a21b.js} +1 -1
  19. package/assets/esri/core/workers/chunks/{8e19629899a5becf8e19.js → 150e7a7bd5df25693da7.js} +1 -1
  20. package/assets/esri/core/workers/chunks/{12a7997a40c77f5c9160.js → 151e5799ede763a03ee2.js} +1 -1
  21. package/assets/esri/core/workers/chunks/{a64446a3328a7323e307.js → 173f89c55a5c79ff065b.js} +1 -1
  22. package/assets/esri/core/workers/chunks/{8715661a838361d4211a.js → 1b24a40c0fa197014873.js} +1 -1
  23. package/assets/esri/core/workers/chunks/{ca0d4ce453d8eb35467d.js → 277263466837e1673f56.js} +1 -1
  24. package/assets/esri/core/workers/chunks/{b1d989b72203113a06fe.js → 2a36fe3f3f257a779a1b.js} +1 -1
  25. package/assets/esri/core/workers/chunks/2c0cb214fedb29487eef.js +1 -0
  26. package/assets/esri/core/workers/chunks/{ffcb99693182a621a93e.js → 2cf8172be83b10b11bdc.js} +1 -1
  27. package/assets/esri/core/workers/chunks/{fcaf9450642fcef83286.js → 3048e74e6246324ce6fc.js} +1 -1
  28. package/assets/esri/core/workers/chunks/{95b82cbbe355266c65d7.js → 30af63b3b750142faadb.js} +1 -1
  29. package/assets/esri/core/workers/chunks/30dcf2cfb31cb70de7df.js +1 -0
  30. package/assets/esri/core/workers/chunks/{9f0a973a0dd28953ce25.js → 371e2ddb88cc6b9a41e8.js} +1 -1
  31. package/assets/esri/core/workers/chunks/3fd5c3cd8457ddc68798.js +1 -0
  32. package/assets/esri/core/workers/chunks/{62fec1816907f070f079.js → 3fe04f13215474accb09.js} +1 -1
  33. package/assets/esri/core/workers/chunks/{f47fe4433b05fca5c3ad.js → 42f6194633c2d879c8da.js} +1 -1
  34. package/assets/esri/core/workers/chunks/{cddc3e285f763ccf33c2.js → 4869e097261ded90b8bb.js} +1 -1
  35. package/assets/esri/core/workers/chunks/{d8a7eba588d374b2f961.js → 4bb9a5f4ca944d3fc206.js} +1 -1
  36. package/assets/esri/core/workers/chunks/{2e096537a3a5555a4a93.js → 4cb751dc8d00bdaeb04c.js} +1 -1
  37. package/assets/esri/core/workers/chunks/{8052da8be251c3ff2176.js → 4d93bed14945e3d34d5c.js} +1 -1
  38. package/assets/esri/core/workers/chunks/{65cb5e39c467a35621ca.js → 56e903ccef66cbe18f92.js} +1 -1
  39. package/assets/esri/core/workers/chunks/{44d5508042cacdfcac47.js → 58da3f8cf0f7f6a7e4fa.js} +1 -1
  40. package/assets/esri/core/workers/chunks/{bc915fb182d463d804e6.js → 5c04835b0b52461183cd.js} +1 -1
  41. package/assets/esri/core/workers/chunks/{7e8611cb709f105946f5.js → 6061232c96e11eb7b25d.js} +1 -1
  42. package/assets/esri/core/workers/chunks/{1e514e1c9aabefa04201.js → 64382363d6dc04ff1eac.js} +1 -1
  43. package/assets/esri/core/workers/chunks/{c82daefb193aae895bc0.js → 67e06d606c7fd2064adf.js} +1 -1
  44. package/assets/esri/core/workers/chunks/{434a8ba841a59e0deab9.js → 67e533748435253aaba6.js} +1 -1
  45. package/assets/esri/core/workers/chunks/{feb41abc03d677df6f73.js → 6b9961261241fdce0e94.js} +1 -1
  46. package/assets/esri/core/workers/chunks/{949bee7b304e625a7891.js → 6db0f8fe1402643fbe1a.js} +1 -1
  47. package/assets/esri/core/workers/chunks/{baed828b7846c0863289.js → 6f1d6453184e0a1530ad.js} +22 -18
  48. package/assets/esri/core/workers/chunks/6f897b4e7ddd1dd1672b.js +1 -0
  49. package/assets/esri/core/workers/chunks/{0049b66ccbfb168caa76.js → 7124ad8dc5ad40dc66f3.js} +1 -1
  50. package/assets/esri/core/workers/chunks/{6e107ce73633de8ac257.js → 72f4dad65e16a7d7c58f.js} +1 -1
  51. package/assets/esri/core/workers/chunks/{0df9a906f7823c23d426.js → 7566321c6a2913f2852b.js} +1 -1
  52. package/assets/esri/core/workers/chunks/{c4ddac23bd649d24f3f2.js → 75d551a449bba61ce238.js} +1 -1
  53. package/assets/esri/core/workers/chunks/{af349c7bc8ef41a0e1bd.js → 7748c2886d0122b40eeb.js} +1 -1
  54. package/assets/esri/core/workers/chunks/{b4c3ec081874b49ff89b.js → 78fbe330f16bdbdb886e.js} +1 -1
  55. package/assets/esri/core/workers/chunks/79483c05867ba1386f5a.js +1 -0
  56. package/assets/esri/core/workers/chunks/7b482afb9fd1229f5707.js +1 -0
  57. package/assets/esri/core/workers/chunks/7c631e2947243e2c9bde.js +1 -0
  58. package/assets/esri/core/workers/chunks/{814751e705c05099f864.js → 7c75a8ee266c36baa902.js} +1 -1
  59. package/assets/esri/core/workers/chunks/7db9e615e60d824eac1b.js +1 -0
  60. package/assets/esri/core/workers/chunks/{8a7b02037151767542f1.js → 7dbf4c7480bf9c72820d.js} +1 -1
  61. package/assets/esri/core/workers/chunks/{1b1d3f6916d2cb751435.js → 87177e0f82e8a6ae3189.js} +1 -1
  62. package/assets/esri/core/workers/chunks/{5cb26bbaa08114aec5ce.js → 89cc1a5539b82fb46216.js} +1 -1
  63. package/assets/esri/core/workers/chunks/8b5dcc4282772bf6b675.js +1 -0
  64. package/assets/esri/core/workers/chunks/{8c12269d26f5a4c753cb.js → 8ebaf5754e86a45b0497.js} +1 -1
  65. package/assets/esri/core/workers/chunks/{542e5640ea1b80ef801a.js → 9189dfe19a2a2ccd5173.js} +1 -1
  66. package/assets/esri/core/workers/chunks/{67a35155b8b4d36f171e.js → 926e0a3827eaf16ca8b4.js} +1 -1
  67. package/assets/esri/core/workers/chunks/{dc1761cba0454fda3cf9.js → 9630234267098115de4d.js} +1 -1
  68. package/assets/esri/core/workers/chunks/{10d80e793019dfb45ca2.js → 987424121cf30b0f3c50.js} +1 -1
  69. package/assets/esri/core/workers/chunks/9afc87474cef1fc4fe4a.js +1 -0
  70. package/assets/esri/core/workers/chunks/{facd1ff23203fed67686.js → 9b048f80c2d28d527373.js} +1 -1
  71. package/assets/esri/core/workers/chunks/9dd48e75b4e8d9811d81.js +1 -0
  72. package/assets/esri/core/workers/chunks/{ee08ae5b73439a1ff666.js → a163c6005aba3378edaa.js} +1 -1
  73. package/assets/esri/core/workers/chunks/a4b822ee45810c4c292a.js +1 -0
  74. package/assets/esri/core/workers/chunks/{092e311cb7aea92a6a26.js → acb265a22be5e12f38e5.js} +1 -1
  75. package/assets/esri/core/workers/chunks/{1a411ddae7a47015370c.js → acf4737ba509cbd73cce.js} +1 -1
  76. package/assets/esri/core/workers/chunks/ad96132bc89671e595f3.js +1 -0
  77. package/assets/esri/core/workers/chunks/{d247dd53788d512b9c9f.js → af3c6794334626b94f00.js} +1 -1
  78. package/assets/esri/core/workers/chunks/{532e9cda8ac3601d8892.js → b12acf1f694f82e00df9.js} +1 -1
  79. package/assets/esri/core/workers/chunks/{d08ff41e2a9bcd58b64a.js → ba3d5abff65aefcb8dee.js} +1 -1
  80. package/assets/esri/core/workers/chunks/{504184828048310a052c.js → bdc221d94300c225665a.js} +1 -1
  81. package/assets/esri/core/workers/chunks/c0eb27263f608dc3684b.js +1 -0
  82. package/assets/esri/core/workers/chunks/c2318c014e97ba519be8.js +1 -0
  83. package/assets/esri/core/workers/chunks/{7f8e327acad48c9e75ea.js → c62237c344e341619341.js} +1 -1
  84. package/assets/esri/core/workers/chunks/{a2ad3e620c98e2b2eb06.js → cd355baab983033c3ef0.js} +1 -1
  85. package/assets/esri/core/workers/chunks/{7be6d621a0d1e33dfff4.js → d070fcb73ce274ab80e4.js} +1 -1
  86. package/assets/esri/core/workers/chunks/{6d41444b46677aa762a7.js → db41490bd39d863305bf.js} +1 -1
  87. package/assets/esri/core/workers/chunks/{fc5a36e54929e03efa86.js → dba5f44c4e4a3f075df2.js} +1 -1
  88. package/assets/esri/core/workers/chunks/{3e30b96a8c75bd5b9ae2.js → ddc95cdac6c06fc4794c.js} +1 -1
  89. package/assets/esri/core/workers/chunks/{a5c8f9f5be4ef5063b42.js → df26ec0b508cf4716e0a.js} +1 -1
  90. package/assets/esri/core/workers/chunks/{f426da2210888cc264b4.js → e83f9abee611c5b80009.js} +1 -1
  91. package/assets/esri/core/workers/chunks/{8487727f1197cf7dbf50.js → ef12fa3574d4cbf8b084.js} +1 -1
  92. package/assets/esri/core/workers/chunks/f10c883eb26330e3421c.js +1 -0
  93. package/assets/esri/core/workers/chunks/f46e92c67986c8c09bdd.js +1 -0
  94. package/assets/esri/core/workers/chunks/{709e019885822b1f6f3e.js → f905f1a1aa4c123cbe83.js} +1 -1
  95. package/assets/esri/core/workers/chunks/{5b91e2dffdc84c006539.js → fb37f0848196c28b7fd7.js} +1 -1
  96. package/assets/esri/libs/librust-parquet/pkg/parquet_bg.wasm +0 -0
  97. package/assets/esri/libs/librust-text/pkg/text_bg.wasm +0 -0
  98. package/assets/esri/themes/base/_core.scss +0 -2
  99. package/assets/esri/themes/dark/main.css +1 -1
  100. package/assets/esri/themes/light/main.css +1 -1
  101. package/assets/esri/themes/light/view.css +1 -1
  102. package/chunks/Component.glsl.js +9 -12
  103. package/chunks/DefaultMaterial.glsl.js +4 -5
  104. package/chunks/MultiPathImpl.js +1 -1
  105. package/chunks/OperatorProximityGeodesic.js +1 -1
  106. package/chunks/Path.glsl.js +2 -4
  107. package/chunks/RealisticTree.glsl.js +3 -3
  108. package/chunks/SSAO.glsl.js +1 -2
  109. package/chunks/basis_encoder.js +1 -1
  110. package/chunks/basis_transcoder.js +1 -1
  111. package/chunks/draco_mesh_decoder.js +1 -1
  112. package/chunks/dxt_encoder.js +1 -1
  113. package/chunks/i3s.js +1 -1
  114. package/chunks/lclayout.js +1 -1
  115. package/chunks/lerc-wasm.js +1 -1
  116. package/chunks/libtess-f32.js +1 -1
  117. package/chunks/libtess-f64.js +1 -1
  118. package/chunks/lyr3DMain.js +1 -1
  119. package/chunks/lyr3DWorker.js +1 -1
  120. package/chunks/parquet.js +1 -1
  121. package/chunks/qb3-wasm.js +1 -1
  122. package/chunks/rbush.js +1 -1
  123. package/chunks/text.js +1 -1
  124. package/chunks/vxlLayer.js +1 -1
  125. package/config.js +1 -1
  126. package/core/workers/WorkerFallback.js +4 -2
  127. package/core/workers/workerFactory.js +1 -1
  128. package/core/workers/workers.js +4 -2
  129. package/geometry/support/clipRay.js +1 -1
  130. package/geometry/support/labelPoint.js +1 -1
  131. package/geometry/support/plane.js +1 -1
  132. package/graphic/AnnotationFeatureGraphicOrigin.d.ts +49 -9
  133. package/graphic/BuildingGraphicOrigin.d.ts +49 -0
  134. package/graphic/CSVGraphicOrigin.d.ts +42 -9
  135. package/graphic/CatalogGraphicOrigin.d.ts +42 -9
  136. package/graphic/DimensionFeatureGraphicOrigin.d.ts +42 -9
  137. package/graphic/FeatureGraphicOrigin.d.ts +42 -9
  138. package/graphic/GeoJSONGraphicOrigin.d.ts +42 -9
  139. package/graphic/GeoRSSGraphicOrigin.d.ts +42 -9
  140. package/graphic/GraphicOrigin.d.ts +52 -12
  141. package/graphic/ImageryGraphicOrigin.d.ts +42 -9
  142. package/graphic/ImageryTileGraphicOrigin.d.ts +42 -9
  143. package/graphic/KMLGraphicOrigin.d.ts +47 -10
  144. package/graphic/KnowledgeGraphGraphicOrigin.d.ts +49 -1
  145. package/graphic/LinkChartGraphicOrigin.d.ts +49 -1
  146. package/graphic/MapImageGraphicOrigin.d.ts +49 -1
  147. package/graphic/MapNotesGraphicOrigin.d.ts +48 -1
  148. package/graphic/OGCFeatureGraphicOrigin.d.ts +42 -9
  149. package/graphic/OrientedImageryGraphicOrigin.d.ts +42 -9
  150. package/graphic/ParquetGraphicOrigin.d.ts +42 -9
  151. package/graphic/PointCloudGraphicOrigin.d.ts +43 -0
  152. package/graphic/SceneGraphicOrigin.d.ts +43 -0
  153. package/graphic/SketchGraphicOrigin.d.ts +43 -0
  154. package/graphic/StreamGraphicOrigin.d.ts +43 -0
  155. package/graphic/SubtypeGroupGraphicOrigin.d.ts +49 -1
  156. package/graphic/TileGraphicOrigin.d.ts +49 -1
  157. package/graphic/VectorTileGraphicOrigin.d.ts +43 -14
  158. package/graphic/VoxelGraphicOrigin.d.ts +43 -0
  159. package/graphic/WCSGraphicOrigin.d.ts +43 -0
  160. package/graphic/WFSGraphicOrigin.d.ts +42 -9
  161. package/graphic/getGraphicOriginTitle.d.ts +21 -3
  162. package/interfaces.d.ts +0 -55
  163. package/kernel.js +1 -1
  164. package/layers/ElevationLayer.d.ts +6 -2
  165. package/layers/GaussianSplatLayer.d.ts +2 -1
  166. package/layers/GeoJSONLayer.d.ts +2 -107
  167. package/layers/IntegratedMeshLayer.js +1 -1
  168. package/layers/ParquetLayer.d.ts +24 -1
  169. package/layers/ParquetLayer.js +1 -1
  170. package/layers/SceneLayer.d.ts +40 -16
  171. package/layers/ViewshedLayer.d.ts +10 -4
  172. package/layers/WMSLayer.d.ts +2 -69
  173. package/layers/mixins/ReloadableLayer.js +1 -1
  174. package/layers/mixins/TemporalLayer.d.ts +70 -48
  175. package/layers/mixins/TiledImagery.d.ts +0 -11
  176. package/layers/orientedImagery/transformations/utils.js +1 -1
  177. package/layers/save/featureLayerUtils.js +1 -1
  178. package/layers/save/imageryUtils.js +1 -1
  179. package/layers/save/mapImageLayerUtils.js +1 -1
  180. package/layers/save/mediaLayerUtils.js +1 -1
  181. package/layers/save/parquetLayerUtils.js +2 -0
  182. package/layers/save/streamLayerUtils.js +1 -1
  183. package/layers/support/LabelClass.d.ts +8 -2
  184. package/layers/support/layersMapping.js +1 -1
  185. package/layers/support/rasterJobHelper.js +1 -1
  186. package/layers/video/VideoController.js +5 -5
  187. package/package.json +2 -2
  188. package/popup/content.d.ts +38 -1
  189. package/popup/content.js +1 -1
  190. package/portal/schemas/definitions.js +1 -1
  191. package/portal/schemas/webScene.js +1 -1
  192. package/rest/query/operations/pbfDehydratedFeatureSet.js +1 -1
  193. package/rest/query/operations/pbfFlatFeatureSet.js +1 -1
  194. package/rest/query/operations/pbfJSONFeatureSet.js +1 -1
  195. package/smartMapping/popup/support/clusterUtils.js +1 -1
  196. package/smartMapping/popup/support/utils.js +2 -2
  197. package/smartMapping/renderers/size.js +1 -1
  198. package/smartMapping/renderers/support/regenerateUtils.js +1 -1
  199. package/support/timeUtils.d.ts +11 -0
  200. package/undoredo/support/ApplySet.js +1 -1
  201. package/views/2d/engine/flow/ProcessingTimeEstimate.js +1 -1
  202. package/views/2d/engine/vectorTiles/VectorTileContainer.js +1 -1
  203. package/views/2d/engine/vectorTiles/buckets/SymbolBucket.js +1 -1
  204. package/views/2d/engine/webgl/GlyphWorker.js +1 -1
  205. package/views/2d/engine/webgl/mesh/templates/shapingUtils.js +1 -1
  206. package/views/2d/engine/webgl/shaderGraph/techniques/markers/MarkerMeshWriter.js +1 -1
  207. package/views/2d/layers/features/Processor.js +1 -1
  208. package/views/2d/layers/features/aggregation/GeohashSpatialIndex.js +1 -1
  209. package/views/2d/layers/features/aggregation/GridSpatialIndex.js +1 -1
  210. package/views/2d/layers/features/layerAdapters/CatalogFootprintLayerAdapter.js +1 -1
  211. package/views/2d/layers/features/layerAdapters/FeatureLayerAdapter.js +1 -1
  212. package/views/2d/layers/features/layerAdapters/InMemoryLayerAdapter.js +1 -1
  213. package/views/2d/layers/features/layerAdapters/KnowledgeGraphSublayerAdapter.js +1 -1
  214. package/views/2d/layers/features/layerAdapters/OGCFeatureLayerAdapter.js +1 -1
  215. package/views/2d/layers/features/layerAdapters/OrientedImageryLayerAdapter.js +1 -1
  216. package/views/2d/layers/features/layerAdapters/ParquetLayerAdapter.js +1 -1
  217. package/views/2d/layers/features/layerAdapters/StreamLayerAdapter.js +1 -1
  218. package/views/2d/layers/features/processor/AggregateStrategy.js +1 -1
  219. package/views/2d/layers/features/processor/FeatureUpdateStrategy.js +1 -1
  220. package/views/2d/layers/features/processor/bins/BinAdapter.js +1 -1
  221. package/views/2d/layers/features/processor/bins/BinLevelState.js +1 -1
  222. package/views/2d/layers/features/processor/clusters/ClusterAdapter.js +1 -1
  223. package/views/2d/layers/features/processor/clusters/ClusterLevelState.js +1 -1
  224. package/views/2d/layers/features/processor/tracks/TrackAdapter.js +1 -1
  225. package/views/2d/layers/features/processor/tracks/TrackLevelState.js +1 -1
  226. package/views/2d/layers/features/schema/processor/SimpleProcessorSchema.js +1 -1
  227. package/views/2d/layers/features/sources/strategies/chunks/ASourceChunk.js +1 -1
  228. package/views/2d/layers/features/sources/strategies/chunks/ByReferenceTileSourceChunk.js +1 -1
  229. package/views/2d/layers/features/sources/strategies/chunks/FeatureSnapshotSourceChunk.js +1 -1
  230. package/views/2d/layers/features/sources/strategies/chunks/Overrides.js +1 -1
  231. package/views/2d/layers/features/sources/strategies/chunks/ParquetSnapshotSourceChunk.js +1 -1
  232. package/views/2d/layers/features/sources/strategies/chunks/SourceChunkStore.js +1 -1
  233. package/views/2d/layers/features/sources/strategies/chunks/StreamSourceChunk.js +1 -1
  234. package/views/2d/layers/features/support/AttributeStore.js +1 -1
  235. package/views/2d/layers/features/support/FeatureFilterEvaluator.js +1 -1
  236. package/views/2d/layers/features/support/FeatureSetReader.js +1 -1
  237. package/views/2d/layers/features/support/GraphicsReader.js +1 -1
  238. package/views/2d/layers/graphics/GraphicsView2D.js +1 -1
  239. package/views/3d/environment/SunLighting.d.ts +0 -1
  240. package/views/3d/environment/SunLighting.js +1 -1
  241. package/views/3d/environment/VirtualLighting.d.ts +0 -1
  242. package/views/3d/environment/VirtualLighting.js +1 -1
  243. package/views/3d/input/handlers/ground/GroundDoubleClickMove.js +1 -1
  244. package/views/3d/interactive/editingTools/reshape/ReshapeOperation.js +1 -1
  245. package/views/3d/interactive/placementTools/GroundNavigationPlacementTool3D.js +1 -1
  246. package/views/3d/layers/IntegratedMesh3DTilesLayerView3D.js +1 -1
  247. package/views/3d/layers/SceneLayerGraphicsView3D.js +1 -1
  248. package/views/3d/layers/graphics/Deconflictor.js +1 -1
  249. package/views/3d/layers/graphics/ElevationAligners.js +1 -1
  250. package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
  251. package/views/3d/layers/graphics/Graphics3DIconSymbolLayer.js +1 -1
  252. package/views/3d/layers/graphics/Graphics3DTextSymbolLayer.js +1 -1
  253. package/views/3d/layers/graphics/LabelParameters.js +1 -1
  254. package/views/3d/layers/graphics/Labeler.js +1 -1
  255. package/views/3d/layers/graphics/elevationAlignmentUtils.js +1 -1
  256. package/views/3d/layers/graphics/pointUtils.js +1 -1
  257. package/views/3d/layers/i3s/I3SIndex.js +1 -1
  258. package/views/3d/layers/i3s/I3SOverrides.js +1 -1
  259. package/views/3d/layers/support/Tiles3DBVH.js +1 -1
  260. package/views/3d/layers/support/featureTileQuery3D.js +1 -1
  261. package/views/3d/state/controllers/ZoomControllerLocal.js +1 -1
  262. package/views/3d/state/controllers/ZoomStepControllerLocal.js +1 -1
  263. package/views/3d/state/helpers/SceneIntersectionHelper.js +1 -1
  264. package/views/3d/state/utils/groundNavigationUtils.js +1 -1
  265. package/views/3d/state/utils/navigationUtils.js +1 -1
  266. package/views/3d/terrain/TerrainRenderer.js +1 -1
  267. package/views/3d/terrain/TerrainSurface.js +1 -1
  268. package/views/3d/webgl-engine/collections/Component/Material/Component.glsl.js +1 -1
  269. package/views/3d/webgl-engine/core/shaderLibrary/hud/HUD.glsl.js +1 -2
  270. package/views/3d/webgl-engine/core/shaderLibrary/shading/ScreenSpaceRayMarching.glsl.js +1 -2
  271. package/views/3d/webgl-engine/effects/glow/applyEmissiveGlow.glsl.js +9 -4
  272. package/views/3d/webgl-engine/effects/magnifier/Magnifier.js +1 -1
  273. package/views/3d/webgl-engine/effects/shadowAccumulation/ShadowCastRenderer.js +1 -1
  274. package/views/3d/webgl-engine/effects/snowcover/applySnow.glsl.js +18 -0
  275. package/views/3d/webgl-engine/lib/Intersector.js +1 -1
  276. package/views/3d/webgl-engine/lib/RenderingContext.js +1 -1
  277. package/views/3d/webgl-engine/lib/TextureRepository.js +1 -1
  278. package/views/3d/webgl-engine/lib/depthRangeUtils.js +1 -1
  279. package/views/3d/webgl-engine/lib/screenPolygonTriangleIntersections.js +1 -1
  280. package/views/3d/webgl-engine/materials/ColorMaterial.js +1 -1
  281. package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
  282. package/views/3d/webgl-engine/materials/Path.glsl.js +1 -1
  283. package/views/3d/webgl-engine/materials/PathMaterial.js +1 -1
  284. package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
  285. package/views/3d/webgl-engine/materials/TriangleMaterial.js +1 -1
  286. package/views/3d/webgl-engine/materials/internal/worldSizedRibbonLineIntersectionUtils.js +2 -0
  287. package/views/3d/webgl-engine/shaders/DefaultMaterial.glsl.js +1 -1
  288. package/views/3d/webgl-engine/shaders/RealisticTree.glsl.js +1 -1
  289. package/views/DOMContainer.js +1 -1
  290. package/views/draw/SegmentDrawAction.js +1 -1
  291. package/views/interactive/snapping/SnappingManagerPool.js +1 -1
  292. package/views/interactive/tooltip/content/TooltipContent.js +1 -1
  293. package/views/interactive/tooltip/fields/TooltipField.js +1 -1
  294. package/views/layers/LineOfSightLayerView.d.ts +2 -2
  295. package/views/layers/ViewshedLayerView.d.ts +2 -1
  296. package/views/support/LayerViewManager.js +1 -1
  297. package/views/support/ScheduledQueueProcessor.js +1 -1
  298. package/views/support/screenshotUtils.js +1 -1
  299. package/views/ui/UI.js +1 -1
  300. package/webdoc/support/webdocSaveUtils.js +1 -1
  301. package/webscene/Slide.d.ts +1 -2
  302. package/widgets/Editor/UpdateRecordWorkflow.js +1 -1
  303. package/widgets/Feature/FeatureExpression/FeatureExpressionViewModel.js +1 -1
  304. package/widgets/Feature/FeatureRelationship/FeatureRelationshipViewModel.js +1 -1
  305. package/widgets/FeatureForm/UtilityNetworkAssociationAddAssociationViewModel.js +1 -1
  306. package/widgets/FeatureTable/RelationshipColumn.js +1 -1
  307. package/widgets/FloorFilter/FloorFilterViewModel.js +1 -1
  308. package/widgets/Locate.d.ts +1 -1
  309. package/widgets/OrientedImageryViewer/ImageMeasurementWorker.js +1 -1
  310. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  311. package/widgets/OrientedImageryViewer/imageMeasurementUtils.js +1 -1
  312. package/widgets/OrientedImageryViewer/services/ImageMeasurementService.js +1 -1
  313. package/widgets/Search/SearchViewModel.js +1 -1
  314. package/widgets/Search/support/layerSearchUtils.js +1 -1
  315. package/widgets/Sketch/SketchViewModel.js +1 -1
  316. package/widgets/Sketch/support/PluginManager.js +1 -1
  317. package/widgets/UtilityNetworkTrace/UtilityNetworkTraceFeature.js +1 -1
  318. package/widgets/support/GeolocationPositioning.d.ts +1 -2
  319. package/assets/esri/core/workers/chunks/14d5d219e7fe017f23f0.js +0 -1
  320. package/assets/esri/core/workers/chunks/42045cf46497828cd3c0.js +0 -1
  321. package/assets/esri/core/workers/chunks/42753cf4965a94bc91ca.js +0 -1
  322. package/assets/esri/core/workers/chunks/42e985a576d7aaeed0cf.js +0 -1
  323. package/assets/esri/core/workers/chunks/5046214dd32029cb733d.js +0 -1
  324. package/assets/esri/core/workers/chunks/576248e9ae2654569420.js +0 -1
  325. package/assets/esri/core/workers/chunks/58865772bed48141a56a.js +0 -1
  326. package/assets/esri/core/workers/chunks/6059853ef3b6cddbe869.js +0 -1
  327. package/assets/esri/core/workers/chunks/72e6d594b7262430ae55.js +0 -1
  328. package/assets/esri/core/workers/chunks/7d11710e1586a3d75887.js +0 -1
  329. package/assets/esri/core/workers/chunks/8f74d92ac69714b9fd4e.js +0 -1
  330. package/assets/esri/core/workers/chunks/a09d2e1e2540921e4717.js +0 -1
  331. package/assets/esri/core/workers/chunks/a35c69a4751d28c39907.js +0 -1
  332. package/assets/esri/core/workers/chunks/a679207c3458cc0b1fec.js +0 -1
  333. package/assets/esri/core/workers/chunks/dfa5f1311806473e473f.js +0 -1
  334. package/assets/esri/core/workers/chunks/fc76aff0f7d95e517d8f.js +0 -1
  335. package/assets/esri/themes/base/widgets/_DirectionalPad.scss +0 -85
  336. package/assets/esri/widgets/DirectionalPad/t9n/messages.ar.json +0 -1
  337. package/assets/esri/widgets/DirectionalPad/t9n/messages.bg.json +0 -1
  338. package/assets/esri/widgets/DirectionalPad/t9n/messages.bs.json +0 -1
  339. package/assets/esri/widgets/DirectionalPad/t9n/messages.ca.json +0 -1
  340. package/assets/esri/widgets/DirectionalPad/t9n/messages.cs.json +0 -1
  341. package/assets/esri/widgets/DirectionalPad/t9n/messages.da.json +0 -1
  342. package/assets/esri/widgets/DirectionalPad/t9n/messages.de.json +0 -1
  343. package/assets/esri/widgets/DirectionalPad/t9n/messages.el.json +0 -1
  344. package/assets/esri/widgets/DirectionalPad/t9n/messages.en.json +0 -1
  345. package/assets/esri/widgets/DirectionalPad/t9n/messages.es.json +0 -1
  346. package/assets/esri/widgets/DirectionalPad/t9n/messages.et.json +0 -1
  347. package/assets/esri/widgets/DirectionalPad/t9n/messages.fi.json +0 -1
  348. package/assets/esri/widgets/DirectionalPad/t9n/messages.fr.json +0 -1
  349. package/assets/esri/widgets/DirectionalPad/t9n/messages.he.json +0 -1
  350. package/assets/esri/widgets/DirectionalPad/t9n/messages.hr.json +0 -1
  351. package/assets/esri/widgets/DirectionalPad/t9n/messages.hu.json +0 -1
  352. package/assets/esri/widgets/DirectionalPad/t9n/messages.id.json +0 -1
  353. package/assets/esri/widgets/DirectionalPad/t9n/messages.it.json +0 -1
  354. package/assets/esri/widgets/DirectionalPad/t9n/messages.ja.json +0 -1
  355. package/assets/esri/widgets/DirectionalPad/t9n/messages.ko.json +0 -1
  356. package/assets/esri/widgets/DirectionalPad/t9n/messages.lt.json +0 -1
  357. package/assets/esri/widgets/DirectionalPad/t9n/messages.lv.json +0 -1
  358. package/assets/esri/widgets/DirectionalPad/t9n/messages.nl.json +0 -1
  359. package/assets/esri/widgets/DirectionalPad/t9n/messages.no.json +0 -1
  360. package/assets/esri/widgets/DirectionalPad/t9n/messages.pl.json +0 -1
  361. package/assets/esri/widgets/DirectionalPad/t9n/messages.pt-BR.json +0 -1
  362. package/assets/esri/widgets/DirectionalPad/t9n/messages.pt-PT.json +0 -1
  363. package/assets/esri/widgets/DirectionalPad/t9n/messages.ro.json +0 -1
  364. package/assets/esri/widgets/DirectionalPad/t9n/messages.ru.json +0 -1
  365. package/assets/esri/widgets/DirectionalPad/t9n/messages.sk.json +0 -1
  366. package/assets/esri/widgets/DirectionalPad/t9n/messages.sl.json +0 -1
  367. package/assets/esri/widgets/DirectionalPad/t9n/messages.sr.json +0 -1
  368. package/assets/esri/widgets/DirectionalPad/t9n/messages.sv.json +0 -1
  369. package/assets/esri/widgets/DirectionalPad/t9n/messages.th.json +0 -1
  370. package/assets/esri/widgets/DirectionalPad/t9n/messages.tr.json +0 -1
  371. package/assets/esri/widgets/DirectionalPad/t9n/messages.uk.json +0 -1
  372. package/assets/esri/widgets/DirectionalPad/t9n/messages.vi.json +0 -1
  373. package/assets/esri/widgets/DirectionalPad/t9n/messages.zh-CN.json +0 -1
  374. package/assets/esri/widgets/DirectionalPad/t9n/messages.zh-HK.json +0 -1
  375. package/assets/esri/widgets/DirectionalPad/t9n/messages.zh-TW.json +0 -1
  376. package/assets/esri/widgets/Track/t9n/messages.ar.json +0 -1
  377. package/assets/esri/widgets/Track/t9n/messages.bg.json +0 -1
  378. package/assets/esri/widgets/Track/t9n/messages.bs.json +0 -1
  379. package/assets/esri/widgets/Track/t9n/messages.ca.json +0 -1
  380. package/assets/esri/widgets/Track/t9n/messages.cs.json +0 -1
  381. package/assets/esri/widgets/Track/t9n/messages.da.json +0 -1
  382. package/assets/esri/widgets/Track/t9n/messages.de.json +0 -1
  383. package/assets/esri/widgets/Track/t9n/messages.el.json +0 -1
  384. package/assets/esri/widgets/Track/t9n/messages.en.json +0 -1
  385. package/assets/esri/widgets/Track/t9n/messages.es.json +0 -1
  386. package/assets/esri/widgets/Track/t9n/messages.et.json +0 -1
  387. package/assets/esri/widgets/Track/t9n/messages.fi.json +0 -1
  388. package/assets/esri/widgets/Track/t9n/messages.fr.json +0 -1
  389. package/assets/esri/widgets/Track/t9n/messages.he.json +0 -1
  390. package/assets/esri/widgets/Track/t9n/messages.hr.json +0 -1
  391. package/assets/esri/widgets/Track/t9n/messages.hu.json +0 -1
  392. package/assets/esri/widgets/Track/t9n/messages.id.json +0 -1
  393. package/assets/esri/widgets/Track/t9n/messages.it.json +0 -1
  394. package/assets/esri/widgets/Track/t9n/messages.ja.json +0 -1
  395. package/assets/esri/widgets/Track/t9n/messages.ko.json +0 -1
  396. package/assets/esri/widgets/Track/t9n/messages.lt.json +0 -1
  397. package/assets/esri/widgets/Track/t9n/messages.lv.json +0 -1
  398. package/assets/esri/widgets/Track/t9n/messages.nl.json +0 -1
  399. package/assets/esri/widgets/Track/t9n/messages.no.json +0 -1
  400. package/assets/esri/widgets/Track/t9n/messages.pl.json +0 -1
  401. package/assets/esri/widgets/Track/t9n/messages.pt-BR.json +0 -1
  402. package/assets/esri/widgets/Track/t9n/messages.pt-PT.json +0 -1
  403. package/assets/esri/widgets/Track/t9n/messages.ro.json +0 -1
  404. package/assets/esri/widgets/Track/t9n/messages.ru.json +0 -1
  405. package/assets/esri/widgets/Track/t9n/messages.sk.json +0 -1
  406. package/assets/esri/widgets/Track/t9n/messages.sl.json +0 -1
  407. package/assets/esri/widgets/Track/t9n/messages.sr.json +0 -1
  408. package/assets/esri/widgets/Track/t9n/messages.sv.json +0 -1
  409. package/assets/esri/widgets/Track/t9n/messages.th.json +0 -1
  410. package/assets/esri/widgets/Track/t9n/messages.tr.json +0 -1
  411. package/assets/esri/widgets/Track/t9n/messages.uk.json +0 -1
  412. package/assets/esri/widgets/Track/t9n/messages.vi.json +0 -1
  413. package/assets/esri/widgets/Track/t9n/messages.zh-CN.json +0 -1
  414. package/assets/esri/widgets/Track/t9n/messages.zh-HK.json +0 -1
  415. package/assets/esri/widgets/Track/t9n/messages.zh-TW.json +0 -1
  416. package/views/2d/layers/features/FeatureSpatialIndex.js +0 -2
  417. package/views/2d/layers/features/support/FeatureSetReaderIndirect.js +0 -2
  418. package/views/3d/webgl-engine/effects/snowcover/SnowCover.glsl.js +0 -12
  419. package/widgets/DirectionalPad/DirectionalPadViewModel.d.ts +0 -85
  420. package/widgets/DirectionalPad/DirectionalPadViewModel.js +0 -2
  421. package/widgets/DirectionalPad/VisibleElements.d.ts +0 -40
  422. package/widgets/DirectionalPad/VisibleElements.js +0 -2
  423. package/widgets/DirectionalPad/constants.js +0 -2
  424. package/widgets/DirectionalPad/css.js +0 -2
  425. package/widgets/DirectionalPad/types.d.ts +0 -27
  426. package/widgets/DirectionalPad/utils.js +0 -2
  427. package/widgets/DirectionalPad.d.ts +0 -156
  428. package/widgets/DirectionalPad.js +0 -2
  429. package/widgets/Track/TrackViewModel.d.ts +0 -131
  430. package/widgets/Track/TrackViewModel.js +0 -2
  431. package/widgets/Track/types.d.ts +0 -6
  432. package/widgets/Track.d.ts +0 -278
  433. package/widgets/Track.js +0 -2
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arcgis/core",
3
- "version": "6.0.0-next.22",
3
+ "version": "6.0.0-next.24",
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.22",
23
+ "@arcgis/toolkit": "6.0.0-next.24",
24
24
  "@esri/arcgis-html-sanitizer": "~4.2.0-next.2",
25
25
  "@esri/calcite-components": "^5.2.0",
26
26
  "@vaadin/grid": "~25.3.4",
@@ -36,6 +36,7 @@
36
36
  * }
37
37
  * ```
38
38
  *
39
+ * @deprecated at 5.2. Use individual content imports instead.
39
40
  * @since 4.11
40
41
  * @see [PopupTemplate](https://developers.arcgis.com/javascript/latest/references/core/PopupTemplate/)
41
42
  * @see [TextContent](https://developers.arcgis.com/javascript/latest/references/core/popup/content/TextContent/)
@@ -58,98 +59,134 @@ import type UtilityNetworkAssociationsContentClass from "./content/UtilityNetwor
58
59
  /**
59
60
  * AttachmentsContent represents an attachment element associated with a
60
61
  * feature.
62
+ *
63
+ * @deprecated at 5.2. Import [AttachmentsContent](https://developers.arcgis.com/javascript/latest/references/core/popup/content/AttachmentsContent/) directly instead.
61
64
  */
62
65
  export type AttachmentsContent = AttachmentsContentClass;
63
66
 
64
67
  /**
65
68
  * AttachmentsContent represents an attachment element associated with a
66
69
  * feature.
70
+ *
71
+ * @deprecated at 5.2. Import [AttachmentsContent](https://developers.arcgis.com/javascript/latest/references/core/popup/content/AttachmentsContent/) directly instead.
67
72
  */
68
73
  export const AttachmentsContent: typeof AttachmentsContentClass;
69
74
 
70
75
  /**
71
76
  * CustomContent represents a custom content element associated with a
72
77
  * feature.
78
+ *
79
+ * @deprecated at 5.2. Import [CustomContent](https://developers.arcgis.com/javascript/latest/references/core/popup/content/CustomContent/) directly instead.
73
80
  */
74
81
  export type CustomContent = CustomContentClass;
75
82
 
76
83
  /**
77
84
  * CustomContent represents a custom content element associated with a
78
85
  * feature.
86
+ *
87
+ * @deprecated at 5.2. Import [CustomContent](https://developers.arcgis.com/javascript/latest/references/core/popup/content/CustomContent/) directly instead.
79
88
  */
80
89
  export const CustomContent: typeof CustomContentClass;
81
90
 
82
91
  /**
83
92
  * ExpressionContent represents an expression element associated with a
84
93
  * feature.
94
+ *
95
+ * @deprecated at 5.2. Import [ExpressionContent](https://developers.arcgis.com/javascript/latest/references/core/popup/content/ExpressionContent/) directly instead.
85
96
  */
86
97
  export type ExpressionContent = ExpressionContentClass;
87
98
 
88
99
  /**
89
100
  * ExpressionContent represents an expression element associated with a
90
101
  * feature.
102
+ *
103
+ * @deprecated at 5.2. Import [ExpressionContent](https://developers.arcgis.com/javascript/latest/references/core/popup/content/ExpressionContent/) directly instead.
91
104
  */
92
105
  export const ExpressionContent: typeof ExpressionContentClass;
93
106
 
94
107
  /**
95
108
  * FieldsContent represents the [FieldInfo](https://developers.arcgis.com/javascript/latest/references/core/popup/FieldInfo/) associated with a
96
109
  * feature.
110
+ *
111
+ * @deprecated at 5.2. Import [FieldsContent](https://developers.arcgis.com/javascript/latest/references/core/popup/content/FieldsContent/) directly instead.
97
112
  */
98
113
  export type FieldsContent = FieldsContentClass;
99
114
 
100
115
  /**
101
116
  * FieldsContent represents the [FieldInfo](https://developers.arcgis.com/javascript/latest/references/core/popup/FieldInfo/) associated with a
102
117
  * feature.
118
+ *
119
+ * @deprecated at 5.2. Import [FieldsContent](https://developers.arcgis.com/javascript/latest/references/core/popup/content/FieldsContent/) directly instead.
103
120
  */
104
121
  export const FieldsContent: typeof FieldsContentClass;
105
122
 
106
123
  /**
107
124
  * MediaContent contains an individual or array of chart and/or image media elements
108
125
  * to display within a popup's content.
126
+ *
127
+ * @deprecated at 5.2. Import [MediaContent](https://developers.arcgis.com/javascript/latest/references/core/popup/content/MediaContent/) directly instead.
109
128
  */
110
129
  export type MediaContent = MediaContentClass;
111
130
 
112
131
  /**
113
132
  * MediaContent contains an individual or array of chart and/or image media elements
114
133
  * to display within a popup's content.
134
+ *
135
+ * @deprecated at 5.2. Import [MediaContent](https://developers.arcgis.com/javascript/latest/references/core/popup/content/MediaContent/) directly instead.
115
136
  */
116
137
  export const MediaContent: typeof MediaContentClass;
117
138
 
118
139
  /**
119
140
  * RelationshipContent represents a relationship element associated with a
120
141
  * feature.
142
+ *
143
+ * @deprecated at 5.2. Import [RelationshipContent](https://developers.arcgis.com/javascript/latest/references/core/popup/content/RelationshipContent/) directly instead.
121
144
  */
122
145
  export type RelationshipContent = RelationshipContentClass;
123
146
 
124
147
  /**
125
148
  * RelationshipContent represents a relationship element associated with a
126
149
  * feature.
150
+ *
151
+ * @deprecated at 5.2. Import [RelationshipContent](https://developers.arcgis.com/javascript/latest/references/core/popup/content/RelationshipContent/) directly instead.
127
152
  */
128
153
  export const RelationshipContent: typeof RelationshipContentClass;
129
154
 
130
155
  /**
131
156
  * TextContent defines descriptive text as an element within the [PopupTemplate's](https://developers.arcgis.com/javascript/latest/references/core/PopupTemplate/)
132
157
  * content.
158
+ *
159
+ * @deprecated at 5.2. Import [TextContent](https://developers.arcgis.com/javascript/latest/references/core/popup/content/TextContent/) directly instead.
133
160
  */
134
161
  export type TextContent = TextContentClass;
135
162
 
136
163
  /**
137
164
  * TextContent defines descriptive text as an element within the [PopupTemplate's](https://developers.arcgis.com/javascript/latest/references/core/PopupTemplate/)
138
165
  * content.
166
+ *
167
+ * @deprecated at 5.2. Import [TextContent](https://developers.arcgis.com/javascript/latest/references/core/popup/content/TextContent/) directly instead.
139
168
  */
140
169
  export const TextContent: typeof TextContentClass;
141
170
 
142
171
  /**
143
172
  * UtilityNetworkAssociationsContent represents an utility network associations element associated with a
144
173
  * feature.
174
+ *
175
+ * @deprecated at 5.2. Import [UtilityNetworkAssociationsContent](https://developers.arcgis.com/javascript/latest/references/core/popup/content/UtilityNetworkAssociationsContent/) directly instead.
145
176
  */
146
177
  export type UtilityNetworkAssociationsContent = UtilityNetworkAssociationsContentClass;
147
178
 
148
179
  /**
149
180
  * UtilityNetworkAssociationsContent represents an utility network associations element associated with a
150
181
  * feature.
182
+ *
183
+ * @deprecated at 5.2. Import [UtilityNetworkAssociationsContent](https://developers.arcgis.com/javascript/latest/references/core/popup/content/UtilityNetworkAssociationsContent/) directly instead.
151
184
  */
152
185
  export const UtilityNetworkAssociationsContent: typeof UtilityNetworkAssociationsContentClass;
153
186
 
154
- /** Popup content element types. */
187
+ /**
188
+ * Popup content element types.
189
+ *
190
+ * @deprecated at 5.2. Use individual content imports instead.
191
+ */
155
192
  export type Content = AttachmentsContent | FieldsContent | MediaContent | TextContent | CustomContent | ExpressionContent | RelationshipContent | UtilityNetworkAssociationsContent;
package/popup/content.js CHANGED
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import e from"./content/AttachmentsContent.js";import t from"./content/Content.js";import n from"./content/CustomContent.js";import r from"./content/ExpressionContent.js";import i from"./content/FieldsContent.js";import a from"./content/MediaContent.js";import o from"./content/RelationshipContent.js";import s from"./content/TextContent.js";import c from"./content/UtilityNetworkAssociationsContent.js";const l=e,u=t,d=n,f=r,p=i,m=a,h=o,g=s,_=c;function v(e){return e instanceof u}const y={base:null,key:`type`,typeMap:{attachment:l,media:m,text:g,expression:f,field:p,relationship:h,utilityNetworkAssociations:_}},b={base:null,key:`type`,typeMap:{attachment:l,media:m,text:g,expression:f,field:p,relationship:h}};export{l as AttachmentsContent,u as BaseContent,d as CustomContent,f as ExpressionContent,p as FieldsContent,m as MediaContent,h as RelationshipContent,g as TextContent,_ as UtilityNetworkAssociationsContent,v as isContent,y as persistableTypes,b as persistableWebSceneTypes};
2
+ import{deprecatedModule as e}from"../core/deprecate.js";import t from"../core/Logger.js";import n from"./content/AttachmentsContent.js";import r from"./content/Content.js";import i from"./content/CustomContent.js";import a from"./content/ExpressionContent.js";import o from"./content/FieldsContent.js";import s from"./content/MediaContent.js";import c from"./content/RelationshipContent.js";import l from"./content/TextContent.js";import u from"./content/UtilityNetworkAssociationsContent.js";e(t.getLogger(`esri.popup.content`),`esri.popup.content`,{replacement:`Individual content module imports`,version:`5.2`,warnOnce:!0});const d=n,f=r,p=i,m=a,h=o,g=s,_=c,v=l,y=u;function b(e){return e instanceof f}export{d as AttachmentsContent,f as BaseContent,p as CustomContent,m as ExpressionContent,h as FieldsContent,g as MediaContent,_ as RelationshipContent,v as TextContent,y as UtilityNetworkAssociationsContent,b as isContent};
@@ -1,5 +1,5 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- const e={"applicationProperties_schema.json":{title:`applicationProperties`,type:`object`,description:`Configuration of application and UI elements.`,properties:{viewing:{type:`object`,$ref:`#/definitions/viewing_schema.json`}},additionalProperties:!1},"baseMap_schema.json":{title:`baseMap`,type:`object`,description:`The basemap provides geographic context to the map and scene.`,properties:{baseMapLayers:{type:`array`,description:`An array of baseMapLayer objects defining the basemaps used in the web scene.`,items:{$ref:`#/definitions/baseMapLayer_schema.json`},uniqueItems:!0},elevationLayers:{type:`array`,description:"<em>Deprecated, use `baseMap.groundLayers` or `ground.layers` instead.<sup>[1](./baseMap.md#additional-information)</sup></em> An array of elevationLayer objects defining the basemaps used in the web scene.",items:{$ref:`#/definitions/elevationLayers_schema.json`},uniqueItems:!0},groundLayers:{type:`array`,description:`A Collection of integrated mesh layers which constitute the ground of the basemap used in the web scene.<sup>[2](./baseMap.md#additional-information)</sup>`,items:{$ref:`#/definitions/integratedMesh3DTilesLayer_schema.json`},uniqueItems:!0},id:{type:`string`,description:`A unique identifying string for the basemap.`},title:{type:`string`,description:`Required string title for the basemap that can be used in a table of contents.`}},required:[`baseMapLayers`,`title`],additionalProperties:!1},"clippingArea_schema.json":{title:`clippingArea`,type:`object`,description:`Defines area to be clipped for display.`,properties:{clip:{type:`boolean`,description:`enable / disable clipping`},geometry:{description:`envelope of clip area`,$ref:`#/definitions/extent_schema.json`}}},"focusAreas_schema.json":{title:`Focus Areas`,type:`object`,description:`Container holding the scene's focus areas.`,properties:{areas:{type:`array`,description:`Array of focus area objects.`,items:{$ref:`#/definitions/focusArea_schema.json`}},style:{description:`The global visual effect applied to all focus areas.`,enum:[`bright`,`dark`]}},required:[`areas`],additionalProperties:!1},"ground_schema.json":{title:`Ground`,type:`object`,description:`Ground defines the main surface of the web scene, based on elevation layers.`,properties:{layers:{type:`array`,description:`An array of elevationLayer objects defining the elevation of the ground in the web scene.`,items:{$ref:`#/definitions/elevationLayers_schema.json`},uniqueItems:!0},navigationConstraint:{description:`Object determining whether the camera is constrained to navigate only above, or also under the ground surface. If not specified, navigation is constrained to above ground.`,$ref:`#/definitions/navigationConstraint_schema.json`},surfaceColor:{description:`Defines the color of the ground surface, displayed underneath the basemap. If no color, the default grid is shown.`,$ref:`#/definitions/color_schema.json`},transparency:{type:`integer`,description:"The transparency of the ground surface. It is used for seeing through the ground, therefore this property also changes the transparency of the basemap. Draped operational layers are not affected by this property. The value has to lie between `100` (full transparency) and `0` (full opacity).",minimum:0,maximum:100}},required:[`layers`],additionalProperties:!1},"heightModelInfo_schema.json":{title:`heightModelInfo`,type:`object`,description:`An object that defines the characteristics of the vertical coordinate system used by the web scene.`,properties:{heightModel:{type:`string`,description:`The surface type or height model of the vertical coordinate system.`,enum:[`ellipsoidal`,`gravity_related_height`],default:`ellipsoidal`},heightUnit:{type:`string`,description:`The unit of the vertical coordinate system.<a href="#heightUnit"><sup>1</sup></a>`,enum:[`150-kilometers`,`50-kilometers`,`benoit-1895-b-chain`,`clarke-foot`,`clarke-link`,`clarke-yard`,`foot`,`gold-coast-foot`,`indian-1937-yard`,`indian-yard`,`meter`,`sears-1922-truncated-chain`,`sears-chain`,`sears-foot`,`sears-yard`,`us-foot`]},vertCRS:{type:`string`,description:`(Optional) The datum realization of the vertical coordinate system.`}},required:[`heightModel`,`heightUnit`],additionalProperties:!1},"initialState_schema.json":{title:`initialState`,type:`object`,description:`An object that provides information about the initial environment settings and viewpoint of the web scene.`,properties:{analyses:{type:`array`,description:`List of analyses which are part of the view.`,items:{$ref:`#/definitions/analyses_schema.json`}},environment:{type:`object`,$ref:`#/definitions/environment_schema.json`},timeExtent:{description:`Represents the time extent for the data displayed on the scene.`,$ref:`#/definitions/timeExtent_schema.json`},viewpoint:{description:`Describes a point of view for a 2D or 3D view. In a 3D view, it is determined using a camera position.`,$ref:`#/definitions/viewpoint_schema.json`}},required:[`environment`,`viewpoint`],additionalProperties:!1},"mapFloorInfo_schema.json":{title:`mapFloorInfo`,type:`object`,description:`Contains floor-awareness information for the web scene. Defines the layers and required fields for each layer that are used for floor filtering.`,properties:{facilityLayer:{description:`Defines the layer and field properties for the Facility layer used for floor filtering.`,$ref:`#/definitions/facilityLayerInfo_schema.json`},levelLayer:{description:`Defines the layer and field properties for the Level layer used for floor filtering.`,$ref:`#/definitions/levelLayerInfo_schema.json`},siteLayer:{description:`Defines the layer and field properties for the Site layer used for floor filtering. This property is optional.`,$ref:`#/definitions/siteLayerInfo_schema.json`}},required:[`facilityLayer`,`levelLayer`],additionalProperties:!1},"mapRangeInfo_schema.json":{title:`Map Range Information`,description:`Map range information`,properties:{activeRangeName:{type:`string`,description:`Active range ID that slider/picker acts upon.`},currentRangeExtent:{type:`array`,description:`Current range for the active range.`,items:{type:`number`},minItems:2,maxItems:2},fullRangeExtent:{type:`array`,description:`Full range extent for the active range to be presented in the UI.`,items:{type:`number`},minItems:2,maxItems:2}},required:[`activeRangeName`],additionalProperties:!1},"operationalLayers_schema.json":{title:`operationalLayers`,type:`object`,description:`Operational layers contain your data. Usually, a basemap sits beneath your operational layers to give them geographic context.`,oneOf:[{$ref:`#/definitions/buildingSceneLayer_schema.json`},{$ref:`#/definitions/catalogLayer_schema.json`},{$ref:`#/definitions/csvLayer_schema.json`},{$ref:`#/definitions/dimensionLayer_schema.json`},{$ref:`#/definitions/featureLayer_schema.json`},{$ref:`#/definitions/gaussianSplatLayer_schema.json`},{$ref:`#/definitions/geojsonLayer_schema.json`},{$ref:`#/definitions/groupLayer_schema.json`},{$ref:`#/definitions/imageServiceLayer_schema.json`},{$ref:`#/definitions/integratedMesh3DTilesLayer_schema.json`},{$ref:`#/definitions/integratedMeshLayer_schema.json`},{$ref:`#/definitions/kmlLayer_schema.json`},{$ref:`#/definitions/lineOfSightLayer_schema.json`},{$ref:`#/definitions/mapServiceLayer_schema.json`},{$ref:`#/definitions/mediaLayer_schema.json`},{$ref:`#/definitions/object3DTilesLayer_schema.json`},{$ref:`#/definitions/ogcFeatureLayer_schema.json`},{$ref:`#/definitions/orientedImageryLayer_schema.json`},{$ref:`#/definitions/pointCloudLayer_schema.json`},{$ref:`#/definitions/rasterDataLayer_schema.json`},{$ref:`#/definitions/sceneLayer_schema.json`},{$ref:`#/definitions/tiledImageServiceLayer_schema.json`},{$ref:`#/definitions/tiledMapServiceLayer_schema.json`},{$ref:`#/definitions/vectorTileLayer_schema.json`},{$ref:`#/definitions/viewshedLayer_schema.json`},{$ref:`#/definitions/voxelLayer_schema.json`},{$ref:`#/definitions/wcsLayer_schema.json`},{$ref:`#/definitions/webTiledLayer_schema.json`},{$ref:`#/definitions/wfsLayer_schema.json`},{$ref:`#/definitions/wmsLayer_schema.json`}]},"presentation_schema.json":{title:`presentation`,type:`object`,description:`A presentation consists of multiple slides, where each slide is a specific view into the web scene.`,properties:{slides:{type:`array`,description:`Array of slide objects.`,items:{$ref:`#/definitions/slide_schema.json`}}},additionalProperties:!1},"spatialReference_schema.json":{title:`spatialReference`,type:`object`,description:`The spatialReference object is located at the top level of the JSON hierarchy. In addition to this, it is also available within the operationalLayer and basemap objects.
2
+ const e={"applicationProperties_schema.json":{title:`applicationProperties`,type:`object`,description:`Configuration of application and UI elements.`,properties:{viewing:{type:`object`,$ref:`#/definitions/viewing_schema.json`}},additionalProperties:!1},"baseMap_schema.json":{title:`baseMap`,type:`object`,description:`The basemap provides geographic context to the map and scene.`,properties:{baseMapLayers:{type:`array`,description:`An array of baseMapLayer objects defining the basemaps used in the web scene.`,items:{$ref:`#/definitions/baseMapLayer_schema.json`},uniqueItems:!0},elevationLayers:{type:`array`,description:"<em>Deprecated, use `baseMap.groundLayers` or `ground.layers` instead.<sup>[1](./baseMap.md#additional-information)</sup></em> An array of elevationLayer objects defining the basemaps used in the web scene.",items:{$ref:`#/definitions/elevationLayers_schema.json`},uniqueItems:!0},groundLayers:{type:`array`,description:`A Collection of integrated mesh layers which constitute the ground of the basemap used in the web scene.<sup>[2](./baseMap.md#additional-information)</sup>`,items:{$ref:`#/definitions/integratedMesh3DTilesLayer_schema.json`},uniqueItems:!0},id:{type:`string`,description:`A unique identifying string for the basemap.`},title:{type:`string`,description:`Required string title for the basemap that can be used in a table of contents.`}},required:[`baseMapLayers`,`title`],additionalProperties:!1},"clippingArea_schema.json":{title:`clippingArea`,type:`object`,description:`Defines area to be clipped for display.`,properties:{clip:{type:`boolean`,description:`enable / disable clipping`},geometry:{description:`envelope of clip area`,$ref:`#/definitions/extent_schema.json`}}},"focusAreas_schema.json":{title:`Focus Areas`,type:`object`,description:`Container holding the scene's focus areas.`,properties:{areas:{type:`array`,description:`Array of focus area objects.`,items:{$ref:`#/definitions/focusArea_schema.json`}},style:{description:`The global visual effect applied to all focus areas.`,enum:[`bright`,`dark`]}},required:[`areas`],additionalProperties:!1},"ground_schema.json":{title:`Ground`,type:`object`,description:`Ground defines the main surface of the web scene, based on elevation layers.`,properties:{layers:{type:`array`,description:`An array of elevationLayer objects defining the elevation of the ground in the web scene.`,items:{$ref:`#/definitions/elevationLayers_schema.json`},uniqueItems:!0},navigationConstraint:{description:`Object determining whether the camera is constrained to navigate only above, or also under the ground surface. If not specified, navigation is constrained to above ground.`,$ref:`#/definitions/navigationConstraint_schema.json`},surfaceColor:{description:`Defines the color of the ground surface, displayed underneath the basemap. If no color, the default grid is shown.`,$ref:`#/definitions/color_schema.json`},transparency:{type:`integer`,description:"The transparency of the ground surface. It is used for seeing through the ground, therefore this property also changes the transparency of the basemap. Draped operational layers are not affected by this property. The value has to lie between `100` (full transparency) and `0` (full opacity).",minimum:0,maximum:100}},required:[`layers`],additionalProperties:!1},"heightModelInfo_schema.json":{title:`heightModelInfo`,type:`object`,description:"<em>Deprecated. Use `spatialReference` instead to determine the scene's vertical coordinate system.</em><br> An object that defines the characteristics of the vertical coordinate system used by the web scene.",properties:{heightModel:{type:`string`,description:`The surface type or height model of the vertical coordinate system.`,enum:[`ellipsoidal`,`gravity_related_height`],default:`ellipsoidal`},heightUnit:{type:`string`,description:`The unit of the vertical coordinate system.<a href="#heightUnit"><sup>1</sup></a>`,enum:[`150-kilometers`,`50-kilometers`,`benoit-1895-b-chain`,`clarke-foot`,`clarke-link`,`clarke-yard`,`foot`,`gold-coast-foot`,`indian-1937-yard`,`indian-yard`,`meter`,`sears-1922-truncated-chain`,`sears-chain`,`sears-foot`,`sears-yard`,`us-foot`]},vertCRS:{type:`string`,description:`(Optional) The datum realization of the vertical coordinate system.`}},required:[`heightModel`,`heightUnit`],additionalProperties:!1},"initialState_schema.json":{title:`initialState`,type:`object`,description:`An object that provides information about the initial environment settings and viewpoint of the web scene.`,properties:{analyses:{type:`array`,description:`List of analyses which are part of the view.`,items:{$ref:`#/definitions/analyses_schema.json`}},environment:{type:`object`,$ref:`#/definitions/environment_schema.json`},timeExtent:{description:`Represents the time extent for the data displayed on the scene.`,$ref:`#/definitions/timeExtent_schema.json`},viewpoint:{description:`Describes a point of view for a 2D or 3D view. In a 3D view, it is determined using a camera position.`,$ref:`#/definitions/viewpoint_schema.json`}},required:[`environment`,`viewpoint`],additionalProperties:!1},"mapFloorInfo_schema.json":{title:`mapFloorInfo`,type:`object`,description:`Contains floor-awareness information for the web scene. Defines the layers and required fields for each layer that are used for floor filtering.`,properties:{facilityLayer:{description:`Defines the layer and field properties for the Facility layer used for floor filtering.`,$ref:`#/definitions/facilityLayerInfo_schema.json`},levelLayer:{description:`Defines the layer and field properties for the Level layer used for floor filtering.`,$ref:`#/definitions/levelLayerInfo_schema.json`},siteLayer:{description:`Defines the layer and field properties for the Site layer used for floor filtering. This property is optional.`,$ref:`#/definitions/siteLayerInfo_schema.json`}},required:[`facilityLayer`,`levelLayer`],additionalProperties:!1},"mapRangeInfo_schema.json":{title:`Map Range Information`,description:`Map range information`,properties:{activeRangeName:{type:`string`,description:`Active range ID that slider/picker acts upon.`},currentRangeExtent:{type:`array`,description:`Current range for the active range.`,items:{type:`number`},minItems:2,maxItems:2},fullRangeExtent:{type:`array`,description:`Full range extent for the active range to be presented in the UI.`,items:{type:`number`},minItems:2,maxItems:2}},required:[`activeRangeName`],additionalProperties:!1},"operationalLayers_schema.json":{title:`operationalLayers`,type:`object`,description:`Operational layers contain your data. Usually, a basemap sits beneath your operational layers to give them geographic context.`,oneOf:[{$ref:`#/definitions/buildingSceneLayer_schema.json`},{$ref:`#/definitions/catalogLayer_schema.json`},{$ref:`#/definitions/csvLayer_schema.json`},{$ref:`#/definitions/dimensionLayer_schema.json`},{$ref:`#/definitions/featureLayer_schema.json`},{$ref:`#/definitions/gaussianSplatLayer_schema.json`},{$ref:`#/definitions/geojsonLayer_schema.json`},{$ref:`#/definitions/groupLayer_schema.json`},{$ref:`#/definitions/imageServiceLayer_schema.json`},{$ref:`#/definitions/integratedMesh3DTilesLayer_schema.json`},{$ref:`#/definitions/integratedMeshLayer_schema.json`},{$ref:`#/definitions/kmlLayer_schema.json`},{$ref:`#/definitions/lineOfSightLayer_schema.json`},{$ref:`#/definitions/mapServiceLayer_schema.json`},{$ref:`#/definitions/mediaLayer_schema.json`},{$ref:`#/definitions/object3DTilesLayer_schema.json`},{$ref:`#/definitions/ogcFeatureLayer_schema.json`},{$ref:`#/definitions/orientedImageryLayer_schema.json`},{$ref:`#/definitions/pointCloudLayer_schema.json`},{$ref:`#/definitions/rasterDataLayer_schema.json`},{$ref:`#/definitions/sceneLayer_schema.json`},{$ref:`#/definitions/tiledImageServiceLayer_schema.json`},{$ref:`#/definitions/tiledMapServiceLayer_schema.json`},{$ref:`#/definitions/vectorTileLayer_schema.json`},{$ref:`#/definitions/viewshedLayer_schema.json`},{$ref:`#/definitions/voxelLayer_schema.json`},{$ref:`#/definitions/wcsLayer_schema.json`},{$ref:`#/definitions/webTiledLayer_schema.json`},{$ref:`#/definitions/wfsLayer_schema.json`},{$ref:`#/definitions/wmsLayer_schema.json`}]},"presentation_schema.json":{title:`presentation`,type:`object`,description:`A presentation consists of multiple slides, where each slide is a specific view into the web scene.`,properties:{slides:{type:`array`,description:`Array of slide objects.`,items:{$ref:`#/definitions/slide_schema.json`}}},additionalProperties:!1},"spatialReference_schema.json":{title:`spatialReference`,type:`object`,description:`The spatialReference object is located at the top level of the JSON hierarchy. In addition to this, it is also available within the operationalLayer and basemap objects.
3
3
 
4
4
  Many predefined spatial references have already been defined and are available for use. A spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT). The default tolerance and resolution values for the associated coordinate system are used.
5
5
 
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import{schema_definitions as e}from"./definitions.js";const t={title:`Webscene`,type:`object`,description:`The web scene data lists the basemap, operational layers, and presentation slides to be used in the web scene. It also contains information about pop-up windows and layer styling overrides to be used in the web scene. A version property allows you to supply the version of the web scene JSON format being used.`,properties:{applicationProperties:{$ref:`#/definitions/applicationProperties_schema.json`},authoringApp:{type:`string`,description:`String value indicating the application which authored the webmap`},authoringAppVersion:{type:`string`,description:`String value indicating the authoring App's version number.`},baseMap:{description:`Basemaps give the web scene a geographic context.`,$ref:`#/definitions/baseMap_schema.json`},clippingArea:{$ref:`#/definitions/clippingArea_schema.json`},focusAreas:{$ref:`#/definitions/focusAreas_schema.json`},ground:{$ref:`#/definitions/ground_schema.json`},heightModelInfo:{$ref:`#/definitions/heightModelInfo_schema.json`},initialState:{$ref:`#/definitions/initialState_schema.json`},mapFloorInfo:{$ref:`#/definitions/mapFloorInfo_schema.json`},mapRangeInfo:{description:`Map Range Information`,$ref:`#/definitions/mapRangeInfo_schema.json`},operationalLayers:{type:`array`,description:`Operational layers contain business data which are used to make thematic scenes.`,items:{$ref:`#/definitions/operationalLayers_schema.json`},uniqueItems:!0},presentation:{$ref:`#/definitions/presentation_schema.json`},spatialReference:{description:`An object used to specify the spatial reference of the given geometry.`,$ref:`#/definitions/spatialReference_schema.json`},tables:{type:`array`,description:`An array of table objects.`,items:{$ref:`#/definitions/table_schema.json`}},timeZone:{$ref:`#/definitions/timeZone_schema.json`},transportationNetworks:{type:`array`,description:`Used to specify the transportation networks of the scene.`,items:{$ref:`#/definitions/transportationNetwork_schema.json`}},version:{$ref:`#/definitions/version_schema.json`},viewingMode:{type:`string`,enum:[`global`,`local`]},widgets:{description:`the widgets object contains widgets that should be exposed to the user.`,$ref:`#/definitions/widgets_schema.json`}},required:[`ground`,`operationalLayers`,`spatialReference`,`version`,`viewingMode`],additionalProperties:!1,$schema:`http://json-schema.org/draft-07/schema`,definitions:e};export{t as json};
2
+ import{schema_definitions as e}from"./definitions.js";const t={title:`Webscene`,type:`object`,description:`The web scene data lists the basemap, operational layers, and presentation slides to be used in the web scene. It also contains information about pop-up windows and layer styling overrides to be used in the web scene. A version property allows you to supply the version of the web scene JSON format being used.`,properties:{applicationProperties:{$ref:`#/definitions/applicationProperties_schema.json`},authoringApp:{type:`string`,description:`String value indicating the application which authored the webmap`},authoringAppVersion:{type:`string`,description:`String value indicating the authoring App's version number.`},baseMap:{description:`Basemaps give the web scene a geographic context.`,$ref:`#/definitions/baseMap_schema.json`},clippingArea:{$ref:`#/definitions/clippingArea_schema.json`},focusAreas:{$ref:`#/definitions/focusAreas_schema.json`},ground:{$ref:`#/definitions/ground_schema.json`},heightModelInfo:{description:"<em>Deprecated. Use `spatialReference` instead to determine the scene's vertical coordinate system.</em><br> An object that defines the characteristics of the vertical coordinate system used by the web scene.",$ref:`#/definitions/heightModelInfo_schema.json`},initialState:{$ref:`#/definitions/initialState_schema.json`},mapFloorInfo:{$ref:`#/definitions/mapFloorInfo_schema.json`},mapRangeInfo:{description:`Map Range Information`,$ref:`#/definitions/mapRangeInfo_schema.json`},operationalLayers:{type:`array`,description:`Operational layers contain business data which are used to make thematic scenes.`,items:{$ref:`#/definitions/operationalLayers_schema.json`},uniqueItems:!0},presentation:{$ref:`#/definitions/presentation_schema.json`},spatialReference:{description:`An object used to specify the spatial reference of the given geometry.`,$ref:`#/definitions/spatialReference_schema.json`},tables:{type:`array`,description:`An array of table objects.`,items:{$ref:`#/definitions/table_schema.json`}},timeZone:{$ref:`#/definitions/timeZone_schema.json`},transportationNetworks:{type:`array`,description:`Used to specify the transportation networks of the scene.`,items:{$ref:`#/definitions/transportationNetwork_schema.json`}},version:{$ref:`#/definitions/version_schema.json`},viewingMode:{type:`string`,enum:[`global`,`local`]},widgets:{description:`the widgets object contains widgets that should be exposed to the user.`,$ref:`#/definitions/widgets_schema.json`}},required:[`ground`,`operationalLayers`,`spatialReference`,`version`,`viewingMode`],additionalProperties:!1,$schema:`http://json-schema.org/draft-07/schema`,definitions:e};export{t as json};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import{generateUID as e}from"../../../core/uid.js";import{zScale as t}from"../../../geometry/support/zscale.js";import{DehydratedFeatureSetClass as n,DehydratedFeatureClass as r,removeLargeStringAttributes as i}from"../../../layers/graphics/dehydratedFeatures.js";import{makeVertexTransformer as a,makeAttributesClass as o}from"./pbfFeatureSetUtils.js";class s{constructor(e){this._options=e,this.featureSet=new n,this.usesShortGeometryTypes=!0,this.transferList=[],this.coordinates=[],this._queryGeometryType=null,this._queryGeometry=null,this._queryCoordinates=null,this.parseOnly=null,this.missingAttributes=[],this._transformInPlace=null,this._attributesClass=null,this._previousX=0,this._previousY=0,this._point=null,this._lengths=null,this._coords=null,this._coordinateIndex=0,this._partIndex=0,this._partEnd=0,this._vertex=[],this._i=0,this._finishVertex=null}queryGeometryType(){return this._queryGeometryType}queryGeometry(){return this._queryGeometry}queryCoordinates(){return this._queryCoordinates}idField(e){typeof e==`string`&&(this.featureSet.objectIdFieldName=e)}finish(){this._options.applyTransform&&(this.featureSet.transform=null)}_setVertexTransformer(){let{sourceSpatialReference:e}=this._options,{spatialReference:n,hasZ:r}=this.featureSet,i=r?t(e,n):1;this._transformInPlace??=a(this.featureSet,i)}feature(){this._attributesClass??=o(this.featureSet.fields?.map(e=>e.name)??[]),this.featureSet.features.push(new r(e(),null,new this._attributesClass)),this.coordinates.push(null),this._options.applyTransform&&this._setVertexTransformer()}finishFeature(){let{maxStringAttributeLength:e,maxStringAttributeFields:t}=this._options,{attributes:n}=this.featureSet.features.at(-1),r=n[this.featureSet.objectIdFieldName];i(n,t,e,e=>{r!=null&&this.missingAttributes.push({objectId:r,attribute:e})})}_createPoint(){let{hasZ:e,hasM:t}=this.featureSet,n={type:`point`,x:0,y:0,spatialReference:null,hasZ:e,hasM:t};return e&&(n.z=0),t&&(n.m=0),n}centroid(e){let{hasZ:t,hasM:n}=this.featureSet,r={type:`point`,x:0,y:0,spatialReference:null,hasZ:t,hasM:n};[r.x,r.y]=e,t&&(r.z=e[2]),n&&(r.m=e.at(-1)),this.featureSet.features.at(-1).centroid=r}geometry(e,t,n){this._previousX=this._previousY=0,this._lengths=n;let{hasZ:r,hasM:i}=this.featureSet;r??=!1,i??=!1,this._vertex=[0,0],r&&this._vertex.push(0),i&&this._vertex.push(0);let a,o=null;switch(t){case`esriGeometryPoint`:this._point=this._createPoint(),a=this._point,this._finishVertex=r?i?s._finishVertexPointXYZM:s._finishVertexPointXYZ:i?s._finishVertexPointXYM:s._finishVertexPointXY;break;case`esriGeometryMultipoint`:this._createPackedCoordinates(n),o={coords:this._coords,lengths:n.slice()},a={type:`multipoint`,points:null,spatialReference:null,hasZ:r,hasM:i};break;case`esriGeometryPolyline`:case`esriGeometryPolygon`:this._createPackedCoordinates(n),o={coords:this._coords,lengths:n.slice()},a=t===`esriGeometryPolygon`?{type:`polygon`,rings:null,spatialReference:null,hasZ:r,hasM:i}:{type:`polyline`,paths:null,spatialReference:null,hasZ:r,hasM:i}}e===1?(this._queryGeometry=a,this._queryCoordinates=o,this._queryGeometryType=t,this._options.applyTransform||this._setVertexTransformer()):(this.featureSet.features.at(-1).geometry=a,this.coordinates[this.coordinates.length-1]=o)}_createPackedCoordinates(e){let t=this._vertex.length;for(this._coords=new Float64Array(e.reduce((e,t)=>e+t,0)*t),this._coordinateIndex=this._partIndex=0,this._partEnd=(e[0]??0)*t;this._partEnd===0&&++this._partIndex<e.length;)this._partEnd+=e[this._partIndex]*t;this._finishVertex=s._finishVertexPacked,this.transferList.push(this._coords.buffer)}coord(e){let t=this._vertex;t[this._i++]=e,!(this._i<t.length)&&(this._i=0,this._transformInPlace&&(t[0]+=this._previousX,t[1]+=this._previousY,[this._previousX,this._previousY]=t,this._transformInPlace(t)),this._finishVertex(this))}static _finishVertexPointXY({_point:e,_vertex:t}){[e.x,e.y]=t}static _finishVertexPointXYZ({_point:e,_vertex:t}){[e.x,e.y,e.z]=t}static _finishVertexPointXYM({_point:e,_vertex:t}){[e.x,e.y,e.m]=t}static _finishVertexPointXYZM({_point:e,_vertex:t}){[e.x,e.y,e.z,e.m]=t}static _finishVertexPacked(e){let{_vertex:t,_coords:n,_lengths:r}=e;if(n.set(t,e._coordinateIndex),e._coordinateIndex+=t.length,e._coordinateIndex===e._partEnd)for(e._previousX=e._previousY=0;e._coordinateIndex===e._partEnd&&++e._partIndex<r.length;)e._partEnd+=r[e._partIndex]*t.length}}export{s as DehydratedFeatureSetParserContext};
2
+ import{generateUID as e}from"../../../core/uid.js";import{zScale as t}from"../../../geometry/support/zscale.js";import{DehydratedFeatureSetClass as n,DehydratedFeatureClass as r,removeLargeStringAttributes as i}from"../../../layers/graphics/dehydratedFeatures.js";import{makeVertexTransformer as a,makeAttributesClass as o}from"./pbfFeatureSetUtils.js";class s{constructor(e){this._options=e,this.featureSet=new n,this.usesShortGeometryTypes=!0,this.transferList=[],this.coordinates=[],this._queryGeometryType=null,this._queryGeometry=null,this._queryCoordinates=null,this.parseOnly=null,this.missingAttributes=[],this._transformInPlace=null,this._attributesClass=null,this._previousX=0,this._previousY=0,this._point=null,this._lengths=null,this._coords=null,this._coordinateIndex=0,this._partIndex=0,this._partEnd=0,this._vertex=[],this._i=0,this._finishVertex=null}queryGeometryType(){return this._queryGeometryType}queryGeometry(){return this._queryGeometry}queryCoordinates(){return this._queryCoordinates}idField(e){typeof e==`string`&&(this.featureSet.objectIdFieldName=e)}finish(){this._options.applyTransform&&(this.featureSet.transform=null)}_setVertexTransformer(){let{sourceSpatialReference:e}=this._options,{spatialReference:n,hasZ:r}=this.featureSet,i=r?t(e,n):1;this._transformInPlace??=a(this.featureSet,i)}feature(){this._attributesClass??=o(this.featureSet.fields?.map(e=>e.name)??[]),this.featureSet.features.push(new r(e(),null,new this._attributesClass)),this.coordinates.push(null),this._options.applyTransform&&this._setVertexTransformer()}finishFeature(){let{maxStringAttributeLength:e,maxStringAttributeFields:t}=this._options,{attributes:n}=this.featureSet.features.at(-1),r=n[this.featureSet.objectIdFieldName];i(n,t,e,e=>{r!=null&&this.missingAttributes.push({objectId:r,attribute:e})})}_createPoint(){let{hasZ:e,hasM:t}=this.featureSet,n={type:`point`,x:0,y:0,spatialReference:null,hasZ:e,hasM:t};return e&&(n.z=0),t&&(n.m=0),n}centroid(e){let{hasZ:t,hasM:n}=this.featureSet,r={type:`point`,x:0,y:0,spatialReference:null,hasZ:t,hasM:n};[r.x,r.y]=e,t&&(r.z=e[2]),n&&(r.m=e.at(-1)),this.featureSet.features.at(-1).centroid=r}geometry(e,t,n){this._previousX=this._previousY=0,this._lengths=n;let{hasZ:r,hasM:i}=this.featureSet;r??=!1,i??=!1,this._vertex=[0,0],r&&this._vertex.push(0),i&&this._vertex.push(0);let a,o=null;switch(t){case`esriGeometryPoint`:this._point=this._createPoint(),a=this._point,this._finishVertex=r?i?s._finishVertexPointXYZM:s._finishVertexPointXYZ:i?s._finishVertexPointXYM:s._finishVertexPointXY;break;case`esriGeometryMultipoint`:this._createPackedCoordinates(n),o={coords:this._coords,lengths:n.slice()},a={type:`multipoint`,points:null,spatialReference:null,hasZ:r,hasM:i};break;case`esriGeometryPolyline`:case`esriGeometryPolygon`:this._createPackedCoordinates(n),o={coords:this._coords,lengths:n.slice()},a=t===`esriGeometryPolygon`?{type:`polygon`,rings:null,spatialReference:null,hasZ:r,hasM:i}:{type:`polyline`,paths:null,spatialReference:null,hasZ:r,hasM:i}}e===1?(this._queryGeometry=a,this._queryCoordinates=o,this._queryGeometryType=t,this._options.applyTransform||this._setVertexTransformer()):(this.featureSet.features.at(-1).geometry=a,this.coordinates[this.coordinates.length-1]=o)}_createPackedCoordinates(e){let t=this._vertex.length;for(this._coords=new Float64Array(e.reduce((e,t)=>e+t,0)*t),this._coordinateIndex=this._partIndex=0,this._partEnd=(e[0]??0)*t;this._partEnd===0&&++this._partIndex<e.length;)this._partEnd+=e[this._partIndex]*t;this._finishVertex=s._finishVertexPacked,this.transferList.push(this._coords.buffer)}coord(e){let t=this._vertex;t[this._i++]=e,this._i<t.length||(this._i=0,this._transformInPlace&&(t[0]+=this._previousX,t[1]+=this._previousY,[this._previousX,this._previousY]=t,this._transformInPlace(t)),this._finishVertex(this))}static _finishVertexPointXY({_point:e,_vertex:t}){[e.x,e.y]=t}static _finishVertexPointXYZ({_point:e,_vertex:t}){[e.x,e.y,e.z]=t}static _finishVertexPointXYM({_point:e,_vertex:t}){[e.x,e.y,e.m]=t}static _finishVertexPointXYZM({_point:e,_vertex:t}){[e.x,e.y,e.z,e.m]=t}static _finishVertexPacked(e){let{_vertex:t,_coords:n,_lengths:r}=e;if(n.set(t,e._coordinateIndex),e._coordinateIndex+=t.length,e._coordinateIndex===e._partEnd)for(e._previousX=e._previousY=0;e._coordinateIndex===e._partEnd&&++e._partIndex<r.length;)e._partEnd+=r[e._partIndex]*t.length}}export{s as DehydratedFeatureSetParserContext};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import{allocateFlatGeometry as e,writeBezierCurveSegment as t,writeCircularArcSegment as n,writeEllipticArc7Segment as r,FlatGeometry as i}from"../../../geometry/FlatGeometry.js";import{featureGeometryTypeKebabDictionary as a}from"../../../geometry/support/typeUtils.js";import{zScale as o}from"../../../geometry/support/zscale.js";import{FlatFeature as s}from"../../../layers/graphics/FlatFeature.js";import{FlatFeatureSet as c}from"../../../layers/graphics/FlatFeatureSet.js";import l from"../../../layers/graphics/OptimizedGeometry.js";import{createFeatureId as u}from"../../../layers/graphics/data/createFeatureId.js";import{makeAttributesClass as d,makeVertexTransformer as f}from"./pbfFeatureSetUtils.js";class p{constructor(e){this._options=e,this.featureSet=new c,this.parseOnly=null,this._idInfo=null,this._transformInPlace=null,this._transformInPlaceXY=null,this._push=p._pushXY,this._attributesClass=null,this._previousX=0,this._previousY=0,this._vertex=[],this._i=0,this._geometry=null,this._iVertex=0,this._iPart=0,this._isPolygon=!1,this._ringEndsAt=-1,this._pointBuffer=null,this._pointBufferOffset=0}queryGeometryType(){return this.featureSet.queryGeometryType}queryGeometry(){return this.featureSet.queryGeometry}idField(e){typeof e==`string`?this._idInfo??={type:`object-id`,fieldName:e}:this._idInfo={type:`unique-id-simple`,fieldName:e.name}}finish(){if(this._idInfo)for(let e of this.featureSet.features)e.objectId=u(e,this._idInfo);let{spatialReference:e,features:t}=this.featureSet;if(e)for(let{geometry:n}of t)n&&(n.spatialReference=e);this.featureSet.transform=null}feature(){this._attributesClass??=d(this.featureSet.fields?.map(e=>e.name)??[]),this.featureSet.features.push(new s(null,new this._attributesClass,null,0)),this._setVertexTransformer()}centroid(e){let{hasZ:t,hasM:n}=this.featureSet;this.featureSet.features.at(-1).centroid=new l([],e,t,n)}geometry(t,n,r){this._previousX=this._previousY=0,this._i=this._iVertex=this._iPart=0;let{hasZ:i,hasM:o}=this.featureSet;i??=!1,o??=!1,this._vertex=[0,0],i&&this._vertex.push(0),o&&this._vertex.push(0);let s=a.fromJSON(n);this._isPolygon=s===`polygon`;let c=Number(this._isPolygon),l=s===`point`?1:r.reduce((e,t)=>e+t-c,0),u=s===`point`?0:r.length;if(this._geometry=s===`point`?this._allocatePoint():e(s,l,u,i,o,!1),this._push=i?o?p._pushXYZM:p._pushXYZ:o?p._pushXYM:p._pushXY,this._geometry.isMultipart()){this._geometry.partOffsets[0]=0;for(let e=0;e<u;++e)this._geometry.partOffsets[e+1]=this._geometry.partOffsets[e]+r[e]-c}this._ringEndsAt=c?this._geometry.partOffsets.at(1)??0:-1,t===1?(this.featureSet.queryGeometry=this._geometry,this.featureSet.queryGeometryType=n):this.featureSet.features.at(-1).geometry=this._geometry}coord(e){let t=this._vertex;t[this._i++]=e,!(this._i<t.length)&&(this._i=0,t[0]+=this._previousX,t[1]+=this._previousY,[this._previousX,this._previousY]=t,!(this._iVertex===this._ringEndsAt&&(++this._iPart,this._ringEndsAt=this._geometry.partOffsets[this._iPart+1],this._previousX=this._previousY=0,this._isPolygon))&&(this._transformInPlace?.(t),this._push(this)))}curvedGeometry(t,n,r,i){let{hasZ:o,hasM:s}=this.featureSet;o??=!1,s??=!1,this._i=this._iVertex=this._iPart=0;let c=a.fromJSON(t);this._isPolygon=c===`polygon`;let l=Number(!this._isPolygon),u=n.length,d=0,f=0,p=l*u;for(let e=0;e<r.length;++e)switch(p+=i[e],r[e]){case 1:case 3:d+=i[e];continue;case 2:f+=i[e]}this._geometry=e(c,p,u,o,s,!0,d,f);let{partOffsets:m}=this._geometry;m[0]=0;for(let e=0,t=0;e<u;++e){m[e+1]=m[e]+l;for(let r=0;r<n[e];++r)m[e+1]+=i[t++]}switch(t){case`esriGeometryPoint`:case`esriGeometryMultipoint`:throw Error(`Curved ${t} does not make sense`)}this.featureSet.features.at(-1).geometry=this._geometry}startCurvedPart(e){}finishCurvedPart(e){this._isPolygon||(this._transform(e,this._vertex),this._push(this)),++this._iPart}lineSegment(e,t){this._transform(e,this._vertex),this._push(this)}bezierSegment(e,n,r,i){this._transform(e,this._vertex),this._push(this),this._transformXY(n,g.b[0]),this._transformXY(r,g.b[1]),this._transformXY(i,g.b[2]),this._i=t(this._vertex,g,this._geometry,this._iVertex-1,this._i)}circularArcSegment(e,t,r){this._transform(e,this._vertex),this._push(this),this._transformXY(t,m.c[0]),this._transformXY(r,m.c[1]),this._i=n(this._vertex,m,this._geometry,this._iVertex-1,this._i)}ellipticArcSegment(e,t,n,i,a,o,s,c){this._transform(e,this._vertex),this._push(this),this._transformXY(t,h.a[0]),this._transformXY(n,h.a[1]),h.a[2]=i,h.a[3]=a,h.a[4]=o,h.a[5]=s,h.a[6]=c,this._i=r(this._vertex,h,this._geometry,this._iVertex-1,this._i)}_allocatePoint(){let{hasZ:e,hasM:t}=this.featureSet,n=Float64Array.BYTES_PER_ELEMENT*(2+Number(e)+Number(t));if(this._pointBuffer??=new ArrayBuffer(32*n),this._pointBufferOffset>=this._pointBuffer.byteLength){let e=Math.floor(this._pointBuffer.byteLength/n*1.5);this._pointBuffer=new ArrayBuffer(e*n),this._pointBufferOffset=0}let r=new Float64Array(this._pointBuffer,this._pointBufferOffset,2);this._pointBufferOffset+=r.byteLength;let a=new i({type:`point`,vertexCount:1,vertexXY:r,vertexZ:void 0,vertexM:void 0,partCount:0,partOffsets:void 0,partFlags:void 0,segmentFlags:void 0,segmentIndices:void 0,segmentParams:void 0,segmentCountArc:0,segmentCountBezier:0});return e&&(a.vertexZ=new Float64Array(this._pointBuffer,this._pointBufferOffset,1),this._pointBufferOffset+=a.vertexZ.byteLength),t&&(a.vertexM=new Float64Array(this._pointBuffer,this._pointBufferOffset,1),this._pointBufferOffset+=a.vertexM.byteLength),a}static _pushXY(e){let t=e._iVertex++,{vertexXY:n}=e._geometry;[n[t*2],n[t*2+1]]=e._vertex}static _pushXYZ(e){let t=e._iVertex++,{vertexXY:n,vertexZ:r}=e._geometry;[n[t*2],n[t*2+1],r[t]]=e._vertex}static _pushXYM(e){let t=e._iVertex++,{vertexXY:n,vertexM:r}=e._geometry;[n[t*2],n[t*2+1],r[t]]=e._vertex}static _pushXYZM(e){let t=e._iVertex++,{vertexXY:n,vertexM:r,vertexZ:i}=e._geometry;[n[t*2],n[t*2+1],i[t],r[t]]=e._vertex}_setVertexTransformer(){let{sourceSpatialReference:e}=this._options,{spatialReference:t,hasZ:n,transform:r}=this.featureSet,i=n?o(e,t):1;this._transformInPlace??=f(this.featureSet,i),this._transformInPlaceXY??=f({transform:r})}_transform(e,t){for(let n=0;n<e.length;++n)t[n]=e[n];this._transformInPlace?.(t)}_transformXY(e,t){t[0]=e[0],t[1]=e[1],this._transformInPlaceXY?.(t)}}const m={c:[[0,0],[0,0]]},h={a:[[0,0],[0,0],0,0,0,0,0]},g={b:[[0,0],[0,0],[0,0]]};export{p as FlatFeatureSetParserContext};
2
+ import{allocateFlatGeometry as e,writeBezierCurveSegment as t,writeCircularArcSegment as n,writeEllipticArc7Segment as r,FlatGeometry as i}from"../../../geometry/FlatGeometry.js";import{featureGeometryTypeKebabDictionary as a}from"../../../geometry/support/typeUtils.js";import{zScale as o}from"../../../geometry/support/zscale.js";import{FlatFeature as s}from"../../../layers/graphics/FlatFeature.js";import{FlatFeatureSet as c}from"../../../layers/graphics/FlatFeatureSet.js";import l from"../../../layers/graphics/OptimizedGeometry.js";import{createFeatureId as u}from"../../../layers/graphics/data/createFeatureId.js";import{makeAttributesClass as d,makeVertexTransformer as f}from"./pbfFeatureSetUtils.js";class p{constructor(e){this._options=e,this.featureSet=new c,this.parseOnly=null,this._idInfo=null,this._transformInPlace=null,this._transformInPlaceXY=null,this._push=p._pushXY,this._attributesClass=null,this._previousX=0,this._previousY=0,this._vertex=[],this._i=0,this._geometry=null,this._iVertex=0,this._iPart=0,this._isPolygon=!1,this._ringEndsAt=-1,this._pointBuffer=null,this._pointBufferOffset=0}queryGeometryType(){return this.featureSet.queryGeometryType}queryGeometry(){return this.featureSet.queryGeometry}idField(e){typeof e==`string`?this._idInfo??={type:`object-id`,fieldName:e}:this._idInfo={type:`unique-id-simple`,fieldName:e.name}}finish(){if(this._idInfo)for(let e of this.featureSet.features)e.objectId=u(e,this._idInfo);let{spatialReference:e,features:t}=this.featureSet;if(e)for(let{geometry:n}of t)n&&(n.spatialReference=e);this.featureSet.transform=null}feature(){this._attributesClass??=d(this.featureSet.fields?.map(e=>e.name)??[]),this.featureSet.features.push(new s(null,new this._attributesClass,null,0)),this._setVertexTransformer()}centroid(e){let{hasZ:t,hasM:n}=this.featureSet;this.featureSet.features.at(-1).centroid=new l([],e,t,n)}geometry(t,n,r){this._previousX=this._previousY=0,this._i=this._iVertex=this._iPart=0;let{hasZ:i,hasM:o}=this.featureSet;i??=!1,o??=!1,this._vertex=[0,0],i&&this._vertex.push(0),o&&this._vertex.push(0);let s=a.fromJSON(n);this._isPolygon=s===`polygon`;let c=Number(this._isPolygon),l=s===`point`?1:r.reduce((e,t)=>e+t-c,0),u=s===`point`?0:r.length;if(this._geometry=s===`point`?this._allocatePoint():e(s,l,u,i,o,!1),this._push=i?o?p._pushXYZM:p._pushXYZ:o?p._pushXYM:p._pushXY,this._geometry.isMultipart()){this._geometry.partOffsets[0]=0;for(let e=0;e<u;++e)this._geometry.partOffsets[e+1]=this._geometry.partOffsets[e]+r[e]-c}this._ringEndsAt=c?this._geometry.partOffsets.at(1)??0:-1,t===1?(this.featureSet.queryGeometry=this._geometry,this.featureSet.queryGeometryType=n):this.featureSet.features.at(-1).geometry=this._geometry}coord(e){let t=this._vertex;t[this._i++]=e,this._i<t.length||(this._i=0,t[0]+=this._previousX,t[1]+=this._previousY,[this._previousX,this._previousY]=t,this._iVertex===this._ringEndsAt&&(++this._iPart,this._ringEndsAt=this._geometry.partOffsets[this._iPart+1],this._previousX=this._previousY=0,this._isPolygon)||(this._transformInPlace?.(t),this._push(this)))}curvedGeometry(t,n,r,i){let{hasZ:o,hasM:s}=this.featureSet;o??=!1,s??=!1,this._i=this._iVertex=this._iPart=0;let c=a.fromJSON(t);this._isPolygon=c===`polygon`;let l=Number(!this._isPolygon),u=n.length,d=0,f=0,p=l*u;for(let e=0;e<r.length;++e)switch(p+=i[e],r[e]){case 1:case 3:d+=i[e];continue;case 2:f+=i[e]}this._geometry=e(c,p,u,o,s,!0,d,f);let{partOffsets:m}=this._geometry;m[0]=0;for(let e=0,t=0;e<u;++e){m[e+1]=m[e]+l;for(let r=0;r<n[e];++r)m[e+1]+=i[t++]}switch(t){case`esriGeometryPoint`:case`esriGeometryMultipoint`:throw Error(`Curved ${t} does not make sense`)}this.featureSet.features.at(-1).geometry=this._geometry}startCurvedPart(e){}finishCurvedPart(e){this._isPolygon||(this._transform(e,this._vertex),this._push(this)),++this._iPart}lineSegment(e,t){this._transform(e,this._vertex),this._push(this)}bezierSegment(e,n,r,i){this._transform(e,this._vertex),this._push(this),this._transformXY(n,g.b[0]),this._transformXY(r,g.b[1]),this._transformXY(i,g.b[2]),this._i=t(this._vertex,g,this._geometry,this._iVertex-1,this._i)}circularArcSegment(e,t,r){this._transform(e,this._vertex),this._push(this),this._transformXY(t,m.c[0]),this._transformXY(r,m.c[1]),this._i=n(this._vertex,m,this._geometry,this._iVertex-1,this._i)}ellipticArcSegment(e,t,n,i,a,o,s,c){this._transform(e,this._vertex),this._push(this),this._transformXY(t,h.a[0]),this._transformXY(n,h.a[1]),h.a[2]=i,h.a[3]=a,h.a[4]=o,h.a[5]=s,h.a[6]=c,this._i=r(this._vertex,h,this._geometry,this._iVertex-1,this._i)}_allocatePoint(){let{hasZ:e,hasM:t}=this.featureSet,n=Float64Array.BYTES_PER_ELEMENT*(2+Number(e)+Number(t));if(this._pointBuffer??=new ArrayBuffer(32*n),this._pointBufferOffset>=this._pointBuffer.byteLength){let e=Math.floor(this._pointBuffer.byteLength/n*1.5);this._pointBuffer=new ArrayBuffer(e*n),this._pointBufferOffset=0}let r=new Float64Array(this._pointBuffer,this._pointBufferOffset,2);this._pointBufferOffset+=r.byteLength;let a=new i({type:`point`,vertexCount:1,vertexXY:r,vertexZ:void 0,vertexM:void 0,partCount:0,partOffsets:void 0,partFlags:void 0,segmentFlags:void 0,segmentIndices:void 0,segmentParams:void 0,segmentCountArc:0,segmentCountBezier:0});return e&&(a.vertexZ=new Float64Array(this._pointBuffer,this._pointBufferOffset,1),this._pointBufferOffset+=a.vertexZ.byteLength),t&&(a.vertexM=new Float64Array(this._pointBuffer,this._pointBufferOffset,1),this._pointBufferOffset+=a.vertexM.byteLength),a}static _pushXY(e){let t=e._iVertex++,{vertexXY:n}=e._geometry;[n[t*2],n[t*2+1]]=e._vertex}static _pushXYZ(e){let t=e._iVertex++,{vertexXY:n,vertexZ:r}=e._geometry;[n[t*2],n[t*2+1],r[t]]=e._vertex}static _pushXYM(e){let t=e._iVertex++,{vertexXY:n,vertexM:r}=e._geometry;[n[t*2],n[t*2+1],r[t]]=e._vertex}static _pushXYZM(e){let t=e._iVertex++,{vertexXY:n,vertexM:r,vertexZ:i}=e._geometry;[n[t*2],n[t*2+1],i[t],r[t]]=e._vertex}_setVertexTransformer(){let{sourceSpatialReference:e}=this._options,{spatialReference:t,hasZ:n,transform:r}=this.featureSet,i=n?o(e,t):1;this._transformInPlace??=f(this.featureSet,i),this._transformInPlaceXY??=f({transform:r})}_transform(e,t){for(let n=0;n<e.length;++n)t[n]=e[n];this._transformInPlace?.(t)}_transformXY(e,t){t[0]=e[0],t[1]=e[1],this._transformInPlaceXY?.(t)}}const m={c:[[0,0],[0,0]]},h={a:[[0,0],[0,0],0,0,0,0,0]},g={b:[[0,0],[0,0],[0,0]]};export{p as FlatFeatureSetParserContext};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import{zScale as e}from"../../../geometry/support/zscale.js";import{makeAttributesClass as t,makeVertexTransformer as n}from"./pbfFeatureSetUtils.js";class r{constructor(e){this._options=e,this.featureSet={features:[]},this.parseOnly=null,this._transformInPlace=null,this._transformInPlaceXY=null,this._finishVertex=r._finishVertexNonPoint,this._attributesClass=null,this._previousX=0,this._previousY=0,this._point=null,this._lengths=null,this._vertex=[],this._part=null,this._parts=null,this._i=0}queryGeometryType(){return this.featureSet.queryGeometryType}queryGeometry(){return this.featureSet.queryGeometry}idField(e){typeof e==`string`&&(this.featureSet.objectIdFieldName=e)}finish(){this._options.applyTransform&&(this.featureSet.transform=null);let{spatialReference:e,features:t}=this.featureSet;if(e)for(let{geometry:n}of t)n&&(n.spatialReference=e)}feature(){this._attributesClass??=t(this.featureSet.fields?.map(e=>e.name)??[]),this.featureSet.features.push({attributes:new this._attributesClass}),this._options.applyTransform&&this._setVertexTransformer()}centroid([e,t]){this.featureSet.features.at(-1).centroid={x:e,y:t}}geometry(e,t,n){this._previousX=this._previousY=0,this._lengths=n;let{hasZ:i,hasM:a}=this.featureSet;i??=!1,a??=!1,this._i=0,this._vertex=[0,0],i&&this._vertex.push(0),a&&this._vertex.push(0);let o;switch(this._finishVertex=r._finishVertexNonPoint,t){case`esriGeometryPoint`:this._point={x:0,y:0},o=this._point,this._finishVertex=i?a?r._finishVertexPointXYZM:r._finishVertexPointXYZ:a?r._finishVertexPointXYM:r._finishVertexPointXY;break;case`esriGeometryMultipoint`:o={points:[],hasZ:i,hasM:a},this._part=o.points,this._parts=[];break;case`esriGeometryPolyline`:o={paths:[],hasZ:i,hasM:a},this._parts=o.paths,this._part=[];break;case`esriGeometryPolygon`:o={rings:[],hasZ:i,hasM:a},this._parts=o.rings,this._part=[]}e===1?(this.featureSet.queryGeometry=o,this.featureSet.queryGeometryType=t,this._options.applyTransform||this._setVertexTransformer()):this.featureSet.features.at(-1).geometry=o}coord(e){let t=this._vertex;t[this._i++]=e,!(this._i<t.length)&&(this._i=0,this._transformInPlace&&(t[0]+=this._previousX,t[1]+=this._previousY,[this._previousX,this._previousY]=t,this._transformInPlace(t)),this._finishVertex(this))}curvedGeometry(e,t,n,r){let{hasZ:i,hasM:a}=this.featureSet;i??=!1,a??=!1;let o;switch(e){case`esriGeometryPoint`:case`esriGeometryMultipoint`:throw Error(`Curved ${e} does not make sense`);case`esriGeometryPolyline`:o={paths:[],curvePaths:[],hasZ:i,hasM:a},this._parts=o.curvePaths,this._part=[];break;case`esriGeometryPolygon`:o={rings:[],curveRings:[],hasZ:i,hasM:a},this._parts=o.curveRings,this._part=[]}this.featureSet.features.at(-1).geometry=o}startCurvedPart(e){this._part.push(this._transform(e))}finishCurvedPart(e){this._parts.push(this._part),this._part=[]}lineSegment(e,t){this._part.push(this._transform(t))}bezierSegment(e,t,n,r){this._part.push({b:[this._transform(t),this._transformXY(n),this._transformXY(r)]})}circularArcSegment(e,t,n){this._part.push({c:[this._transform(t),this._transformXY(n)]})}ellipticArcSegment(e,t,n,r,i,a,o,s){this._part.push({a:[this._transform(t),this._transformXY(n),r,i,a,o,s]})}static _finishVertexPointXY({_point:e,_vertex:t}){[e.x,e.y]=t}static _finishVertexPointXYZ({_point:e,_vertex:t}){[e.x,e.y,e.z]=t}static _finishVertexPointXYM({_point:e,_vertex:t}){[e.x,e.y,e.m]=t}static _finishVertexPointXYZM({_point:e,_vertex:t}){[e.x,e.y,e.z,e.m]=t}static _finishVertexNonPoint(e){let{_part:t,_parts:n,_lengths:r,_vertex:i}=e;t.push([...i]),!(t.length<r[n.length])&&(e._previousX=e._previousY=0,e._part=[],n.push(t))}_setVertexTransformer(){let{sourceSpatialReference:t}=this._options,{spatialReference:r,hasZ:i,transform:a}=this.featureSet,o=i?e(t,r):1;this._transformInPlace??=n(this.featureSet,o),this._transformInPlaceXY??=n({transform:a})}_transform(e){let t=[...e];return this._transformInPlace?.(t),t}_transformXY(e){let t=[e[0],e[1]];return this._transformInPlaceXY?.(t),t}}export{r as JSONFeatureSetParserContext};
2
+ import{zScale as e}from"../../../geometry/support/zscale.js";import{makeAttributesClass as t,makeVertexTransformer as n}from"./pbfFeatureSetUtils.js";class r{constructor(e){this._options=e,this.featureSet={features:[]},this.parseOnly=null,this._transformInPlace=null,this._transformInPlaceXY=null,this._finishVertex=r._finishVertexNonPoint,this._attributesClass=null,this._previousX=0,this._previousY=0,this._point=null,this._lengths=null,this._vertex=[],this._part=null,this._parts=null,this._i=0}queryGeometryType(){return this.featureSet.queryGeometryType}queryGeometry(){return this.featureSet.queryGeometry}idField(e){typeof e==`string`&&(this.featureSet.objectIdFieldName=e)}finish(){this._options.applyTransform&&(this.featureSet.transform=null);let{spatialReference:e,features:t}=this.featureSet;if(e)for(let{geometry:n}of t)n&&(n.spatialReference=e)}feature(){this._attributesClass??=t(this.featureSet.fields?.map(e=>e.name)??[]),this.featureSet.features.push({attributes:new this._attributesClass}),this._options.applyTransform&&this._setVertexTransformer()}centroid([e,t]){this.featureSet.features.at(-1).centroid={x:e,y:t}}geometry(e,t,n){this._previousX=this._previousY=0,this._lengths=n;let{hasZ:i,hasM:a}=this.featureSet;i??=!1,a??=!1,this._i=0,this._vertex=[0,0],i&&this._vertex.push(0),a&&this._vertex.push(0);let o;switch(this._finishVertex=r._finishVertexNonPoint,t){case`esriGeometryPoint`:this._point={x:0,y:0},o=this._point,this._finishVertex=i?a?r._finishVertexPointXYZM:r._finishVertexPointXYZ:a?r._finishVertexPointXYM:r._finishVertexPointXY;break;case`esriGeometryMultipoint`:o={points:[],hasZ:i,hasM:a},this._part=o.points,this._parts=[];break;case`esriGeometryPolyline`:o={paths:[],hasZ:i,hasM:a},this._parts=o.paths,this._part=[];break;case`esriGeometryPolygon`:o={rings:[],hasZ:i,hasM:a},this._parts=o.rings,this._part=[]}e===1?(this.featureSet.queryGeometry=o,this.featureSet.queryGeometryType=t,this._options.applyTransform||this._setVertexTransformer()):this.featureSet.features.at(-1).geometry=o}coord(e){let t=this._vertex;t[this._i++]=e,this._i<t.length||(this._i=0,this._transformInPlace&&(t[0]+=this._previousX,t[1]+=this._previousY,[this._previousX,this._previousY]=t,this._transformInPlace(t)),this._finishVertex(this))}curvedGeometry(e,t,n,r){let{hasZ:i,hasM:a}=this.featureSet;i??=!1,a??=!1;let o;switch(e){case`esriGeometryPoint`:case`esriGeometryMultipoint`:throw Error(`Curved ${e} does not make sense`);case`esriGeometryPolyline`:o={paths:[],curvePaths:[],hasZ:i,hasM:a},this._parts=o.curvePaths,this._part=[];break;case`esriGeometryPolygon`:o={rings:[],curveRings:[],hasZ:i,hasM:a},this._parts=o.curveRings,this._part=[]}this.featureSet.features.at(-1).geometry=o}startCurvedPart(e){this._part.push(this._transform(e))}finishCurvedPart(e){this._parts.push(this._part),this._part=[]}lineSegment(e,t){this._part.push(this._transform(t))}bezierSegment(e,t,n,r){this._part.push({b:[this._transform(t),this._transformXY(n),this._transformXY(r)]})}circularArcSegment(e,t,n){this._part.push({c:[this._transform(t),this._transformXY(n)]})}ellipticArcSegment(e,t,n,r,i,a,o,s){this._part.push({a:[this._transform(t),this._transformXY(n),r,i,a,o,s]})}static _finishVertexPointXY({_point:e,_vertex:t}){[e.x,e.y]=t}static _finishVertexPointXYZ({_point:e,_vertex:t}){[e.x,e.y,e.z]=t}static _finishVertexPointXYM({_point:e,_vertex:t}){[e.x,e.y,e.m]=t}static _finishVertexPointXYZM({_point:e,_vertex:t}){[e.x,e.y,e.z,e.m]=t}static _finishVertexNonPoint(e){let{_part:t,_parts:n,_lengths:r,_vertex:i}=e;t.push([...i]),t.length<r[n.length]||(e._previousX=e._previousY=0,e._part=[],n.push(t))}_setVertexTransformer(){let{sourceSpatialReference:t}=this._options,{spatialReference:r,hasZ:i,transform:a}=this.featureSet,o=i?e(t,r):1;this._transformInPlace??=n(this.featureSet,o),this._transformInPlaceXY??=n({transform:a})}_transform(e){let t=[...e];return this._transformInPlace?.(t),t}_transformXY(e){let t=[e[0],e[1]];return this._transformInPlaceXY?.(t),t}}export{r as JSONFeatureSetParserContext};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import{substitute as e}from"../../../intl/substitute.js";import{numericTypes as t}from"../../../layers/support/fieldUtils.js";import{TextContent as n}from"../../../popup/content.js";import r from"../../../popup/ExpressionInfo.js";import i from"../../../popup/FieldInfo.js";import a from"../../../popup/support/FieldInfoFormat.js";import{getFieldAndExpressionInfos as o,getContentFromFieldInfos as s}from"./utils.js";import{getStatisticInfos as c,getClusterField as l,getPredominantTypeExpression as u,clusterCountField as d}from"../../support/clusterUtils.js";import{isClusterCompatibleRenderer as f}from"../../../views/2d/layers/support/clusterUtils.js";function p(e){let{fieldName:n,label:r,type:o}=e,s=o!=null&&t.includes(o),c=new i({fieldName:n,label:r,visible:!0,format:s?new a({places:o===`integer`||o===`small-integer`?0:2,digitSeparator:!0}):void 0});return o===`date`&&(c.format=new a({dateFormat:`short-date-short-time`})),c}function m(e,t){let n=e?t.getField(e):null;return n==null?void 0:n.alias||n.name}function h(t,n,r){let{attributeInfo:i,statisticType:a}=n,{field:o,normalizationField:s}=i,c=``,l;if(a===`avg`?l=s?r.clusters.avgNormFieldLabel:r.clusters.avgFieldLabel:a===`type`&&(l=r.clusters.predominantFieldLabel),l){let n=i.valueExpression?i.valueExpressionTitle:m(o,t),r=s&&m(s,t);c=e(l,{fieldLabel:n||``,normFieldLabel:r||``})}return c}function g(t,n,r,i){let{attributeInfo:a,statisticType:o}=n,{field:s,normalizationField:c}=a,l=``,u;if(o===`avg`?u=c?i.clusters.avgNormFieldSummary:i.clusters.avgFieldSummary:o===`type`&&(u=i.clusters.predominantFieldSummary),u){let n=a.valueExpression?a.valueExpressionTitle:m(s,t),i=c&&m(c,t);l=e(u,{fieldLabel:n||``,normFieldLabel:i||``,fieldValue:`{`+r+`}`})}return l}function _(t){return{fieldInfo:p({fieldName:d,label:t.clusters.numFeatures,type:`integer`}),fieldSummary:new n({text:e(t.clusters.countSummary,{count:`{${d}}`})})}}async function v(e,t,i){if(!f(t))return null;let a=c(e,t),o=i.clusters.predominantNoneValue,s=t.type===`unique-value`?t.uniqueValueInfos??[]:[],{fieldInfo:d,fieldSummary:m}=_(i),v=[m],y=[d],b=[];for(let t of a){let{statisticType:a,attributeInfo:c}=t,d=l(c,a),f=h(e,t,i);if(a===`avg`)v.push(new n({text:g(e,t,d,i)})),y.push(p({fieldName:d,label:f,type:`double`}));else if(a===`type`){let a=`expression/${d}`;v.push(new n({text:g(e,t,a,i)})),b.push(new r({name:d,title:f,returnType:`string`,expression:u(s,d,o)})),y.push(p({fieldName:a}))}}return{fieldInfos:y,expressionInfos:b,content:v}}async function y(e,t,n){if(!f(t))return null;let{fieldInfo:r,fieldSummary:i}=_(n),a=[i],c=[r],l=[],{fieldInfos:u,expressionInfos:d}=await o({renderer:t,layer:e,isFeatureReduction:!0}),p=await s(e,{fieldInfos:u,expressionInfos:d},!0);return a.push(...p),c.push(...u),l.push(...d),{fieldInfos:c,expressionInfos:l,content:a}}export{v as getContentAndInfos,y as getContentAndInfosForPieChart};
2
+ import{substitute as e}from"../../../intl/substitute.js";import{numericTypes as t}from"../../../layers/support/fieldUtils.js";import n from"../../../popup/ExpressionInfo.js";import r from"../../../popup/FieldInfo.js";import i from"../../../popup/content/TextContent.js";import a from"../../../popup/support/FieldInfoFormat.js";import{getFieldAndExpressionInfos as o,getContentFromFieldInfos as s}from"./utils.js";import{getStatisticInfos as c,getClusterField as l,getPredominantTypeExpression as u,clusterCountField as d}from"../../support/clusterUtils.js";import{isClusterCompatibleRenderer as f}from"../../../views/2d/layers/support/clusterUtils.js";function p(e){let{fieldName:n,label:i,type:o}=e,s=o!=null&&t.includes(o),c=new r({fieldName:n,label:i,visible:!0,format:s?new a({places:o===`integer`||o===`small-integer`?0:2,digitSeparator:!0}):void 0});return o===`date`&&(c.format=new a({dateFormat:`short-date-short-time`})),c}function m(e,t){let n=e?t.getField(e):null;return n==null?void 0:n.alias||n.name}function h(t,n,r){let{attributeInfo:i,statisticType:a}=n,{field:o,normalizationField:s}=i,c=``,l;if(a===`avg`?l=s?r.clusters.avgNormFieldLabel:r.clusters.avgFieldLabel:a===`type`&&(l=r.clusters.predominantFieldLabel),l){let n=i.valueExpression?i.valueExpressionTitle:m(o,t),r=s&&m(s,t);c=e(l,{fieldLabel:n||``,normFieldLabel:r||``})}return c}function g(t,n,r,i){let{attributeInfo:a,statisticType:o}=n,{field:s,normalizationField:c}=a,l=``,u;if(o===`avg`?u=c?i.clusters.avgNormFieldSummary:i.clusters.avgFieldSummary:o===`type`&&(u=i.clusters.predominantFieldSummary),u){let n=a.valueExpression?a.valueExpressionTitle:m(s,t),i=c&&m(c,t);l=e(u,{fieldLabel:n||``,normFieldLabel:i||``,fieldValue:`{`+r+`}`})}return l}function _(t){return{fieldInfo:p({fieldName:d,label:t.clusters.numFeatures,type:`integer`}),fieldSummary:new i({text:e(t.clusters.countSummary,{count:`{${d}}`})})}}async function v(e,t,r){if(!f(t))return null;let a=c(e,t),o=r.clusters.predominantNoneValue,s=t.type===`unique-value`?t.uniqueValueInfos??[]:[],{fieldInfo:d,fieldSummary:m}=_(r),v=[m],y=[d],b=[];for(let t of a){let{statisticType:a,attributeInfo:c}=t,d=l(c,a),f=h(e,t,r);if(a===`avg`)v.push(new i({text:g(e,t,d,r)})),y.push(p({fieldName:d,label:f,type:`double`}));else if(a===`type`){let a=`expression/${d}`;v.push(new i({text:g(e,t,a,r)})),b.push(new n({name:d,title:f,returnType:`string`,expression:u(s,d,o)})),y.push(p({fieldName:a}))}}return{fieldInfos:y,expressionInfos:b,content:v}}async function y(e,t,n){if(!f(t))return null;let{fieldInfo:r,fieldSummary:i}=_(n),a=[i],c=[r],l=[],{fieldInfos:u,expressionInfos:d}=await o({renderer:t,layer:e,isFeatureReduction:!0}),p=await s(e,{fieldInfos:u,expressionInfos:d},!0);return a.push(...p),c.push(...u),l.push(...d),{fieldInfos:c,expressionInfos:l,content:a}}export{v as getContentAndInfos,y as getContentAndInfosForPieChart};
@@ -1,6 +1,6 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import{unique as e}from"../../../core/arrayUtils.js";import"../../../core/has.js";import{fetchMessageBundle as t}from"../../../intl/messages.js";import{substitute as n}from"../../../intl/substitute.js";import{numericTypes as r}from"../../../layers/support/fieldUtils.js";import{FieldsContent as i,TextContent as a}from"../../../popup/content.js";import o from"../../../popup/ExpressionInfo.js";import s from"../../../popup/FieldInfo.js";import c from"../../../popup/support/FieldInfoFormat.js";import{getAttributes as l}from"../../../renderers/support/utils.js";import{viewScaleRE as u}from"../../../renderers/visualVariables/support/visualVariableUtils.js";import{getFeatureReductionFields as d}from"../../support/adapters/support/utils.js";let f=0;function p(e=0){}const m=`expression/`;function h(e){return!(`hasVisualVariables`in e)||!e.hasVisualVariables()?[]:e.visualVariables.filter(e=>!(u.test(e.valueExpression)||`target`in e&&e.target===`outline`))}function g(e,t){return t?d(e)?.find(e=>e.name.toLowerCase()===t.toLowerCase()):null}function _(e,t,n){let i=null;if(n&&`featureReduction`in e){let t=e.featureReduction;t&&`popupTemplate`in t&&t.popupTemplate&&(i=t.popupTemplate.fieldInfos)}else`popupTemplate`in e&&e.popupTemplate&&(i=e.popupTemplate.fieldInfos);let a=n?g(e,t):e.getField(t),o=null;if(i&&i.some(e=>e&&e.fieldName?.toLowerCase()===a?.name.toLowerCase()?(o=e.clone(),!0):!1),!o){let e=r.includes(a.type),t=a.type===`integer`||a.type===`small-integer`;o=new s({fieldName:a.name,isEditable:a.editable,visible:!0,format:e?new c({places:t?0:2,digitSeparator:!0}):void 0})}return o.label||(o.label=a.alias),o}function v(e){let{expression:t,title:n,returnType:r}=e;return new o({name:`expr${f++}`,expression:t,title:n,returnType:r})}function y(e){let t=e.returnType===`number`?new c({places:2,digitSeparator:!0}):void 0;return new s({fieldName:`${m}${e.name}`,visible:!0,format:t})}async function b(r){let i=await t(`esri/smartMapping/t9n/smartMapping`),{renderer:a,layer:o,normFieldExpressionTemplate:s,isFeatureReduction:c}=r,u=[],d=[],f=l(a,h);for(let e of f)if(e.type===`field`)u.push(_(o,e.field,c));else if(e.type===`normalized-field`){let t=c?g(o,e.field):o.getField(e.field),r=c?g(o,e.normalizationField):o.getField(e.normalizationField),a=v({expression:`
2
+ import{unique as e}from"../../../core/arrayUtils.js";import"../../../core/has.js";import{fetchMessageBundle as t}from"../../../intl/messages.js";import{substitute as n}from"../../../intl/substitute.js";import{numericTypes as r}from"../../../layers/support/fieldUtils.js";import i from"../../../popup/ExpressionInfo.js";import a from"../../../popup/FieldInfo.js";import o from"../../../popup/content/FieldsContent.js";import s from"../../../popup/content/TextContent.js";import c from"../../../popup/support/FieldInfoFormat.js";import{getAttributes as l}from"../../../renderers/support/utils.js";import{viewScaleRE as u}from"../../../renderers/visualVariables/support/visualVariableUtils.js";import{getFeatureReductionFields as d}from"../../support/adapters/support/utils.js";let f=0;function p(e=0){}const m=`expression/`;function h(e){return!(`hasVisualVariables`in e)||!e.hasVisualVariables()?[]:e.visualVariables.filter(e=>!(u.test(e.valueExpression)||`target`in e&&e.target===`outline`))}function g(e,t){return t?d(e)?.find(e=>e.name.toLowerCase()===t.toLowerCase()):null}function _(e,t,n){let i=null;if(n&&`featureReduction`in e){let t=e.featureReduction;t&&`popupTemplate`in t&&t.popupTemplate&&(i=t.popupTemplate.fieldInfos)}else`popupTemplate`in e&&e.popupTemplate&&(i=e.popupTemplate.fieldInfos);let o=n?g(e,t):e.getField(t),s=null;if(i&&i.some(e=>e&&e.fieldName?.toLowerCase()===o?.name.toLowerCase()?(s=e.clone(),!0):!1),!s){let e=r.includes(o.type),t=o.type===`integer`||o.type===`small-integer`;s=new a({fieldName:o.name,isEditable:o.editable,visible:!0,format:e?new c({places:t?0:2,digitSeparator:!0}):void 0})}return s.label||(s.label=o.alias),s}function v(e){let{expression:t,title:n,returnType:r}=e;return new i({name:`expr${f++}`,expression:t,title:n,returnType:r})}function y(e){let t=e.returnType===`number`?new c({places:2,digitSeparator:!0}):void 0;return new a({fieldName:`${m}${e.name}`,visible:!0,format:t})}async function b(r){let i=await t(`esri/smartMapping/t9n/smartMapping`),{renderer:a,layer:o,normFieldExpressionTemplate:s,isFeatureReduction:c}=r,u=[],d=[],f=l(a,h);for(let e of f)if(e.type===`field`)u.push(_(o,e.field,c));else if(e.type===`normalized-field`){let t=c?g(o,e.field):o.getField(e.field),r=c?g(o,e.normalizationField):o.getField(e.normalizationField),a=v({expression:`
3
3
  $feature["${t.name}"];
4
4
  $feature["${r.name}"];
5
5
  ${s===`percentage`?`($feature["${t.name}"] / $feature["${r.name}"]) * 100;`:`$feature["${t.name}"] / $feature["${r.name}"];`}
6
- `,title:n(s===`percentage`?i.normFieldLabelAsPercent:i.normFieldLabel,{expression1:t.alias,expression2:r.alias}),returnType:`number`});u.push(y(a),_(o,e.field,c),_(o,e.normalizationField,c)),d.push(a)}else if(e.type===`expression`){let t=v(e);u.push(y(t)),d.push(t)}return{fieldInfos:e(u,(e,t)=>e.fieldName===t.fieldName),expressionInfos:e(d,(e,t)=>e.expression===t.expression)}}async function x(e,r,o){let{fieldInfos:s,expressionInfos:c}=r,l=await t(`esri/smartMapping/t9n/smartMapping`);if(s.length>2)return[new i({fieldInfos:s})];let u=[];for(let t of s){let r=t.fieldName||``,i=t.label;if(!i){let t=o?g(e,r):e.getField(r);if(t)i=t.alias||r;else if(c){let e=r.split(m)[1],t=c[c.findIndex(t=>t.name===e)];t&&(i=t.title||t.name)}}u.push(new a({text:n(l.fieldInfo,{fieldLabel:i,fieldValue:`{${r}}`})}))}return u}function S(e){return`normalizationField`in e&&e.normalizationField?!0:`hasVisualVariables`in e&&e.hasVisualVariables()&&e.visualVariables.some(e=>!!(`normalizationField`in e&&e.normalizationField))}export{m as expressionFieldPrefix,x as getContentFromFieldInfos,v as getExpressionInfo,b as getFieldAndExpressionInfos,_ as getFieldInfo,y as getFieldInfoFromExpressionInfo,h as getPrimaryVisualVariables,S as hasNormalizedField,p as resetSuffixForTests};
6
+ `,title:n(s===`percentage`?i.normFieldLabelAsPercent:i.normFieldLabel,{expression1:t.alias,expression2:r.alias}),returnType:`number`});u.push(y(a),_(o,e.field,c),_(o,e.normalizationField,c)),d.push(a)}else if(e.type===`expression`){let t=v(e);u.push(y(t)),d.push(t)}return{fieldInfos:e(u,(e,t)=>e.fieldName===t.fieldName),expressionInfos:e(d,(e,t)=>e.expression===t.expression)}}async function x(e,r,i){let{fieldInfos:a,expressionInfos:c}=r,l=await t(`esri/smartMapping/t9n/smartMapping`);if(a.length>2)return[new o({fieldInfos:a})];let u=[];for(let t of a){let r=t.fieldName||``,a=t.label;if(!a){let t=i?g(e,r):e.getField(r);if(t)a=t.alias||r;else if(c){let e=r.split(m)[1],t=c[c.findIndex(t=>t.name===e)];t&&(a=t.title||t.name)}}u.push(new s({text:n(l.fieldInfo,{fieldLabel:a,fieldValue:`{${r}}`})}))}return u}function S(e){return`normalizationField`in e&&e.normalizationField?!0:`hasVisualVariables`in e&&e.hasVisualVariables()&&e.visualVariables.some(e=>!!(`normalizationField`in e&&e.normalizationField))}export{m as expressionFieldPrefix,x as getContentFromFieldInfos,v as getExpressionInfo,b as getFieldAndExpressionInfos,_ as getFieldInfo,y as getFieldInfoFromExpressionInfo,h as getPrimaryVisualVariables,S as hasNormalizedField,p as resetSuffixForTests};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import{createUniqueColors as e}from"../../core/colorUtils.js";import t from"../../core/Error.js";import{toPt as n}from"../../core/screenUtils.js";import{ensureClass as r}from"../../core/accessorSupport/ensureType.js";import{fetchMessageBundle as i}from"../../intl/messages.js";import a from"../../renderers/ClassBreaksRenderer.js";import o from"../../renderers/support/AuthoringInfo.js";import s from"../../renderers/support/AuthoringInfoSizeStop.js";import c from"../../renderers/support/AuthoringInfoVisualVariable.js";import{setLabelsForClassBreaks as l}from"../../renderers/support/utils.js";import u from"../../renderers/visualVariables/SizeVariable.js";import{castSizeFromStringOrNumber as d}from"../../renderers/visualVariables/support/castSizeVariable.js";import f from"../../renderers/visualVariables/support/SizeStop.js";import p from"../../renderers/visualVariables/support/SizeVariableLegendOptions.js";import m from"../heuristics/ageUnit.js";import h from"../heuristics/outline.js";import g from"../heuristics/referenceSize.js";import _ from"../heuristics/sizeRange.js";import{getTypeSchemeData as v}from"./type.js";import{createPrimitiveOverrides as y,updateReferenceSizeSymbol as b,createReferenceSizeSymbol as x}from"./support/referenceSizeUtils.js";import{spliceVisualVariables as S,updateAuthoringInfoVisualVariable as C,getAuthoringInfoVisualVariable as w,isSizeVV as T,processRegenerateParams as E,getRendererToUpdate as D,getStyleType as O,hasOutlineVV as k,hasScaleDependentSizeVV as A,findSizeVVIndex as j,findOutlineVVIndex as M}from"./support/regenerateUtils.js";import{createPrimitiveOverrides as ee,updateSpikeSymbol as te,createSpikeSymbol as N,defaultSpikeSymbolStyle as P}from"./support/spikeUtils.js";import{resolveDataSeriesInfo as F}from"./support/timeSeriesUtils.js";import{errorCallback as I,getTitleAndExpressionForAgeRenderer as ne,updateAgeRendererAuthoringInfoVV as re,getClassBreaks as ie,getSummaryStatistics as ae,createSymbol as L,getSymbolOutlineFromScheme as R,getSymbolSizeFromScheme as z,verifyBasicFieldValidity as B,getSizeRangeForAxis as oe,getDataRange as se,getBasemapInfo as ce}from"./support/utils.js";import le from"../statistics/summaryStatisticsForTimeSeries.js";import{verifyDates as ue,supportedAgeUnits as de}from"../statistics/support/ageUtils.js";import{verifyBinningParams as V}from"../support/binningUtils.js";import{getNormalizationType as fe,getFieldsList as H,isAnyDateField as pe}from"../support/utils.js";import{createLayerAdapter as U,featureCapableLayerTypes as W,getLayerTypeLabels as G,binningCapableLayerTypes as K}from"../support/adapters/support/layerUtils.js";import{cloneScheme as q,getSchemes as me}from"../symbology/size.js";import{getColorFromSymbol as J}from"../../symbols/support/utils.js";const he=2**53-1,ge=[5,112.5];async function _e(e,n){let r=F({...e});if(!(r&&r.layer&&(r.field||r.valueExpression||r.sqlExpression)))throw new t(`size-visual-variable:missing-parameters`,`'layer' and 'field', 'valueExpression' or 'sqlExpression' parameters are required`);if(r.valueExpression&&!r.sqlExpression&&!r.view)throw new t(`size-visual-variable:missing-parameters`,`View is required when 'valueExpression' is specified`);if(r.theme===`reference-size`&&!(r.view||r.field))throw new t(`size-visual-variable:missing-parameters`,`'view' and 'field' are required when 'theme' is 'reference-size'`);if(r.theme===`reference-size`&&r.valueExpression)throw new t(`size-visual-variable:missing-parameters`,`'valueExpression' is not supported when 'theme' is 'reference-size'`);r.forBinning&&V(r,`size-visual-variable`);let i={...r},a=r.forBinning?K:W,o=U(i.layer,a,r.forBinning);if(!o)throw new t(`size-visual-variable:invalid-parameters`,`'layer' must be one of these types: `+G(a).join(`, `));i.axis===`height`&&(i.sizeOptimizationEnabled=!1);let s=i.signal==null?null:{signal:i.signal};await o.load(s);let c=o.geometryType;if(c===`mesh`)throw new t(`size-visual-variable:invalid-parameters`,`Size visualization is not applicable to layers with 'mesh' geometry type`);if(i.worldScale){if(c===`polyline`||c===`polygon`)throw new t(`size-visual-variable:not-supported`,`'worldScale' sizing is not supported for polyline and polygon layers`);if(i.view?.type!==`3d`)throw new t(`size-visual-variable:invalid-parameters`,`'view' parameter should be an instance of SceneView when 'worldScale' parameter is true`)}if(i.theme===`reference-size`&&!r.forBinning&&c!==`polygon`)throw new t(`size-visual-variable:invalid-parameters`,`Reference size is only supported for polygon layers`);if(i.theme===`spike`&&!r.forBinning&&c!==`polygon`&&c!==`point`)throw new t(`size-visual-variable:invalid-parameters`,`Spike is only supported for point and polygon layers`);let l=await H({field:i.field,normalizationField:i.normalizationField,valueExpression:i.valueExpression}),u=B(o,l,`size-visual-variable:invalid-parameters`);if(u)throw u;i.theme===`spike`&&!i.spikeOptions?.symbolStyle&&(i.spikeOptions??={},i.spikeOptions.symbolStyle=P);let d={...i,layer:o,referenceSizeResult:n};return await ye(d),d}async function ve(e){let n=F({...e});if(!(n&&n.layer&&(n.field||n.valueExpression||n.sqlExpression)))throw new t(`size-continuous-renderer:missing-parameters`,`'layer' and 'field', 'valueExpression' or 'sqlExpression' parameters are required`);if(n.valueExpression&&!n.sqlExpression&&!n.view)throw new t(`size-continuous-renderer:missing-parameters`,`View is required when 'valueExpression' is specified`);n.forBinning&&V(n,`size-continuous-renderer`);let r={...n};r.symbolType=r.symbolType||`2d`,r.defaultSymbolEnabled??=!0;let i=n.forBinning?K:W,a=U(r.layer,i,n.forBinning);if(!a)throw new t(`size-continuous-renderer:invalid-parameters`,`'layer' must be one of these types: `+G(i).join(`, `));let o=r.signal==null?null:{signal:r.signal};await a.load(o);let s=a.geometryType,c=r.symbolType.includes(`3d`);if(r.outlineOptimizationEnabled=r.theme!==`reference-size`&&r.theme!==`spike`&&s===`polygon`&&r.outlineOptimizationEnabled,s===`mesh`)throw new t(`size-continuous-renderer:invalid-parameters`,`Size visualization is not applicable to layers with 'mesh' geometry type`);if(c&&(s===`polyline`||s===`polygon`))throw new t(`size-continuous-renderer:not-supported`,`3d symbols are not supported for polyline and polygon layers`);if(r.symbolType.includes(`3d-volumetric`)&&r.view?.type!==`3d`)throw new t(`size-continuous-renderer:invalid-parameters`,`'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or 3d-volumetric-uniform`);if(r.theme===`reference-size`&&!n.forBinning&&s!==`polygon`)throw new t(`size-continuous-renderer:invalid-parameters`,`Reference size is only supported for polygon layers`);if(r.theme===`spike`&&!n.forBinning&&s!==`polygon`&&s!==`point`)throw new t(`size-continuous-renderer:invalid-parameters`,`Spike is only supported for point and polygon layers`);let l=await H({field:r.field,normalizationField:r.normalizationField,valueExpression:r.valueExpression}),u=B(a,l,`size-continuous-renderer:invalid-parameters`);if(u)throw u;r.theme===`spike`&&!r.spikeOptions?.symbolStyle&&(r.spikeOptions??={},r.spikeOptions.symbolStyle=P);let d={...r,layer:a};return await ye(d),d}async function ye(e){let t=e.layer,n=t.geometryType,r=t.layer,i=e.forBinning&&`featureReduction`in r&&r.featureReduction?.type===`binning`;if((n===`polygon`||i)&&e.view&&e.field&&!e.valueExpression&&(!e.theme||e.theme===`reference-size`)){try{e.referenceSizeResult=e.referenceSizeResult??await g({layer:r,view:e.view,filter:e.filter,forBinning:e.forBinning,signal:e.signal})}catch{}!e.theme&&e.referenceSizeResult?.isGrid&&(e.theme=`reference-size`),e.referenceSizeOptions?.symbolStyle||(e.referenceSizeOptions?e.referenceSizeOptions.symbolStyle=`circle`:e.referenceSizeOptions={symbolStyle:`circle`})}}async function be(e){if(!e||!(e.layer&&e.view&&e.sizeStops))throw new t(`update-renderer-with-reference-size:missing-parameters`,`'layer', 'view and 'sizeStops' parameters are required`);let{view:n,forBinning:r}=e,i=e.forBinning?K:W,a=U(e.layer,i,e.forBinning);if(!a)throw new t(`update-renderer-with-reference-size:invalid-parameters`,`'layer' must be one of these types: `+G(i).join(`, `));let o=a.layer,s=e.renderer;if(!s){if(e.forBinning){if(!(`featureReduction`in o&&o.featureReduction&&`renderer`in o.featureReduction&&o.featureReduction.renderer&&(o.featureReduction.renderer.type===`class-breaks`||o.featureReduction.renderer.type===`unique-value`)))throw new t(`update-renderer-with-reference-size:invalid-parameters`,`Feature reduction renderer is not supported`);s=o.featureReduction.renderer}else{if(!(`renderer`in o&&o.renderer&&(o.renderer.type===`class-breaks`||o.renderer.type===`unique-value`)))throw new t(`update-renderer-with-reference-size:invalid-parameters`,`Renderer is not supported`);s=o.renderer}}let c=s.authoringInfo;if(!c||!c?.visualVariables?.some(e=>e.theme===`reference-size`))throw new t(`update-renderer-with-reference-size:invalid-parameters`,`'renderer.authoringInfo.visualVariables' should have an authoringInfoVisualVariable with 'theme' set to 'reference-size'`);let l=e.isGrid??(await g({view:n,layer:o,forBinning:r}))?.isGrid;return{...e,isGrid:l,renderer:s,layer:a}}async function xe(e){if(!e||!(e.layer&&e.sizeStops))throw new t(`update-renderer-with-spike:missing-parameters`,`'layer' and 'sizeStops' parameters are required`);let n=e.forBinning?K:W,r=U(e.layer,n,e.forBinning);if(!r)throw new t(`update-renderer-with-spike:invalid-parameters`,`'layer' must be one of these types: `+G(n).join(`, `));await r.load();let i=r.layer,a=e.renderer;if(!a){if(e.forBinning){if(!(`featureReduction`in i&&i.featureReduction&&`renderer`in i.featureReduction&&i.featureReduction.renderer&&(i.featureReduction.renderer.type===`class-breaks`||i.featureReduction.renderer.type===`unique-value`)))throw new t(`update-renderer-with-spike:invalid-parameters`,`Feature reduction renderer is not supported`);a=i.featureReduction.renderer}else{if(!(`renderer`in i&&i.renderer&&(i.renderer.type===`class-breaks`||i.renderer.type===`unique-value`)))throw new t(`update-renderer-with-spike:invalid-parameters`,`Renderer is not supported`);a=i.renderer}}let o=a.authoringInfo?.visualVariables.find(e=>e.theme===`spike`);if(!o)throw new t(`update-renderer-with-spike:invalid-parameters`,`'renderer.authoringInfo.visualVariables' should have an authoringInfoVisualVariable with 'theme' set to 'spike'`);let s=e.spikeOptions??{};return s.symbolStyle??=o?.spikeSymbolStyle?void 0:P,{...e,renderer:a,layer:r,spikeOptions:s}}async function Se(e){let n=F({...e});if(!(n&&n.layer&&(n.field||n.valueExpression)))throw new t(`size-class-breaks-renderer:missing-parameters`,`'layer' and 'field' or 'valueExpression' parameters are required`);if(n.valueExpression&&!n.view)throw new t(`size-class-breaks-renderer:missing-parameters`,`View is required when 'valueExpression' is specified`);n.forBinning&&V(n,`size-class-breaks-renderer`);let r={...n};r.symbolType=r.symbolType||`2d`,r.defaultSymbolEnabled??=!0,r.classificationMethod??=`equal-interval`,r.normalizationType=fe(r);let i=n.forBinning?K:W,a=U(r.layer,i,n.forBinning);if(!a)throw new t(`size-class-breaks-renderer:invalid-parameters`,`'layer' must be one of these types: `+G(i).join(`, `));if((r.minValue==null||r.maxValue==null)&&(r.minValue!=null||r.maxValue!=null))throw new t(`size-class-breaks-renderer:missing-parameters`,`Both 'minValue' and 'maxValue' are required when specifying custom data range`);let o=r.signal==null?null:{signal:r.signal};await a.load(o);let s=a.geometryType,c=r.symbolType.includes(`3d`);if(r.outlineOptimizationEnabled=s===`polygon`&&r.outlineOptimizationEnabled,s===`mesh`)throw new t(`size-class-breaks-renderer:invalid-parameters`,`Size visualization is not applicable to layers with 'mesh' geometry type`);if(c&&(s===`polyline`||s===`polygon`))throw new t(`size-class-breaks-renderer:not-supported`,`3d symbols are not supported for polyline and polygon layers`);if(r.symbolType.includes(`3d-volumetric`)&&r.view?.type!==`3d`)throw new t(`size-class-breaks-renderer:invalid-parameters`,`'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or 3d-volumetric-uniform`);let l=await H({field:r.field,normalizationField:r.normalizationField}),u=B(a,l,`size-class-breaks-renderer:invalid-parameters`);if(u)throw u;return{...r,layer:a}}function Ce(e){let t={...e};delete t.basemap,delete t.sizeScheme,delete t.legendOptions,delete t.symbolType,delete t.defaultSymbolEnabled;let n=t;return n.analyzeData=t.minValue==null||t.maxValue==null,n}function Y(e){let t={...e},n=!!t.symbolType?.includes(`3d-volumetric`),r=t;return r.worldScale=n,n&&(r.axis=t.symbolType===`3d-volumetric-uniform`?`all`:`height`),delete t.symbolType,delete t.defaultSymbolEnabled,r}async function we(e){if(!(e&&e.layer&&e.view&&e.startTime&&e.endTime))throw new t(`size-age-renderer:missing-parameters`,`'layer', 'view', 'startTime', 'endTime' parameters are required`);let n={...e};n.symbolType??=`2d`,n.defaultSymbolEnabled??=!0;let r=U(n.layer,W);if(!r)throw new t(`size-age-renderer:invalid-parameters`,`'layer' must be one of these types: `+G(W).join(`, `));let i=n.signal==null?null:{signal:n.signal};await r.load(i);let a=r.geometryType,o=n.symbolType.includes(`3d`);if(n.outlineOptimizationEnabled=a===`polygon`&&n.outlineOptimizationEnabled,a===`mesh`)throw new t(`size-age-renderer:invalid-parameters`,`Size visualization is not applicable to layers with 'mesh' geometry type`);if(o&&(a===`polyline`||a===`polygon`))throw new t(`size-age-renderer:not-supported`,`3d symbols are not supported for polyline and polygon layers`);if(n.symbolType.includes(`3d-volumetric`)&&!(n.view&&n.view.type===`3d`))throw new t(`size-age-renderer:invalid-parameters`,`'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or 3d-volumetric-uniform`);let s=ue(r,n.startTime,n.endTime,`size-age-renderer:invalid-parameters`);if(s)throw s;if(n.unit&&!de.includes(n.unit))throw new t(`size-age-renderer:invalid-unit`,`Supported units are: ${de.join(`, `)}`);return{...n,layer:r}}async function Te(e){let n=`regenerate-size-visual-variables`;E(e,n);let r=await D(e),i=O(r);if(!i||![`size-continuous`,`univariate-color-size`,`color-size`,`relationship-size`,`type-size`].includes(i))throw new t(`${n}:invalid-parameters`,`Renderer is invalid`);let a=w(r,`size`);if(!a)throw new t(`${n}:invalid-parameters`,`Renderer does not have a size visual variable authoringInfo`);let o=a.theme,s=o===`reference-size`,c=o===`spike`,l=r.visualVariables?.find(T);if(!l&&!s&&!c)throw new t(`${n}:invalid-parameters`,`Renderer does not have a size visual variable`);let u=a.field,d=a.normalizationField,f=null,p=null;u||(l?.field?(u=l.field,d=l.normalizationField):r.field?(u=r.field,d=r.normalizationField):(f=l?.valueExpression??r.valueExpression,p=l?.valueExpressionTitle??r.valueExpressionTitle));let{layer:m,forBinning:h,filter:g,view:_,signal:v}=e,y=a.dataSeriesName,b=a.dataSeriesCalculationName,x=A(r),S=await _e({layer:m,field:u,valueExpression:f,valueExpressionTitle:p,normalizationField:d,theme:o,sizeOptimizationEnabled:x,forBinning:h,dataSeriesName:y,dataSeriesCalculationName:b,filter:g,view:_,signal:v},e.referenceSizeResult);return o===`reference-size`&&a.referenceSizeScale!=null&&S.referenceSizeResult&&!S.referenceSizeResult.isGrid&&!S.sizeOptimizationEnabled&&(S.sizeOptimizationEnabled=!0),{...e,creatorParameters:S,renderer:r}}async function Ee(e){let n=`regenerate-size-continuous-renderer`;E(e,n);let r=await D(e),i=O(r);if(!i||![`size-continuous`,`univariate-color-size`].includes(i))throw new t(`${n}:invalid-parameters`,`Renderer is invalid`);let{authoringInfo:a,field:o,normalizationField:s,valueExpression:c,valueExpressionTitle:l}=r,u=a?.visualVariables.find(e=>e.type===`size`),d=u.theme,{layer:f,forBinning:p,filter:m,view:h,signal:g}=e,_=u.dataSeriesName,v=u.dataSeriesCalculationName,y=await ve({layer:f,field:o,valueExpression:c,valueExpressionTitle:l,normalizationField:s,theme:d,outlineOptimizationEnabled:k(r),sizeOptimizationEnabled:A(r),forBinning:p,dataSeriesName:_,dataSeriesCalculationName:v,filter:m,view:h,signal:g});return d===`reference-size`&&u.referenceSizeScale!=null&&y.referenceSizeResult&&!y.referenceSizeResult.isGrid&&!y.sizeOptimizationEnabled&&(y.sizeOptimizationEnabled=!0),{...e,creatorParameters:y,renderer:r}}async function De(e){let n=`regenerate-size-class-breaks-renderer`;await E(e,n);let r=await D(e);if(O(r)!==`size-class-breaks`)throw new t(`${n}:invalid-parameters`,`Renderer is invalid`);let{authoringInfo:i,field:a,normalizationField:o,normalizationType:s,normalizationTotal:c,valueExpression:l,valueExpressionTitle:u}=r,{classificationMethod:d,standardDeviationInterval:f}=i,p=r.classBreakInfos.length,{layer:m,forBinning:h,filter:g,view:_,signal:v}=e,y=i?.dataSeriesName,b=i?.dataSeriesCalculationName,x=await Se({layer:m,field:a,valueExpression:l,valueExpressionTitle:u,normalizationType:s,normalizationField:o,normalizationTotal:c,classificationMethod:d,standardDeviationInterval:f,numClasses:p,outlineOptimizationEnabled:k(r),forBinning:h,dataSeriesName:y,dataSeriesCalculationName:b,filter:g,view:_,signal:v});return{...e,creatorParameters:x,renderer:r}}async function Oe(e){let n=`regenerate-size-age-renderer`;await E(e,n);let r=await D(e);if(O(r)!==`size-age`)throw new t(`${n}:invalid-parameters`,`Renderer is invalid`);let{authoringInfo:i}=r,a=i?.visualVariables.find(e=>e.type===`size`),o=a.startTime,s=a.endTime,c=a.units,l=a.theme,{layer:u,filter:d,view:f,signal:p}=e,m=await we({layer:u,startTime:o,endTime:s,unit:c,theme:l,outlineOptimizationEnabled:k(r),sizeOptimizationEnabled:A(r),filter:d,view:f,signal:p});return{...e,creatorParameters:m,renderer:r}}async function X(e){let t=e.sizeScheme,n=null,r=null,i=await ce(e.basemap,e.view);if(n=i.basemapId==null?null:i.basemapId,r=i.basemapTheme==null?null:i.basemapTheme,t)return{scheme:q(t),basemapId:n,basemapTheme:r};let a=me({basemapTheme:r,geometryType:e.geometryType,worldScale:e.worldScale,view:e.view});return a&&(t=a.primaryScheme,n=a.basemapId,r=a.basemapTheme),{scheme:t,basemapId:n,basemapTheme:r}}function ke(e,t){switch(t){case`point`:case`multipoint`:{let t=e;return[d(t.minSize),d(t.maxSize)]}case`polyline`:{let t=e;return[d(t.minWidth),d(t.maxWidth)]}case`polygon`:{let t=e;return[d(t.marker.minSize),d(t.marker.maxSize)]}}}function Ae(e,t){e.transformationType===`clamped-linear`&&t===`below`&&e.flipSizes()}async function je(e,t,n,r,i,a){return Me(e,t,n,r)||ke(i,a)}function Me(e,t,n,r){return r===`spike`?[n?.minHeight??ge[0],n?.maxHeight??ge[1]]:r===`reference-size`&&t?[1,t.size]:e?[e.minSize,e.maxSize]:null}function Z(e,t){if(t.theme===`reference-size`&&e.min!=null&&e.max!=null&&e.avg!=null&&e.stddev!=null){let t=e.avg,n=e.min,r=e.max,i=e.stddev,a=t===0?0:i/t,o=n>0&&n<1&&r<2&&a<.5,s=n>0&&n<100&&r<200&&a<.5,c=t+2*i;return{minDataValue:o||s?0:n,maxDataValue:o?1:s?100:c,defaultValuesUsed:!1}}let{theme:n,field:r}=t,i=t.layer,a=r&&typeof r!=`function`?i.getField(r):null,o=pe(a);return se(e,n,o,n===`above`||n===`below`)}function Q(e,n){if((n===`spike`||n===`reference-size`)&&e.minDataValue!=null&&e.maxDataValue!=null&&e.minSize!=null&&e.maxSize!=null&&typeof e.minSize==`number`&&typeof e.maxSize==`number`)return[new f({value:e.minDataValue,size:e.minSize}),new f({value:e.maxDataValue,size:e.maxSize})];throw new t(`get-size-stops-for-theme`,`Invalid size variable or theme`)}async function Ne(e,n,i,a){let{theme:l,field:d,normalizationField:f,minValue:m,maxValue:h,axis:g}=e,_=e.layer.geometryType,v=await X({basemap:e.basemap,geometryType:_,sizeScheme:e.sizeScheme,worldScale:e.worldScale,view:e.view}),y=v.scheme;if(!y)throw new t(`size-visual-variable:insufficient-info`,`Unable to find size scheme`);let b=await je(i,a,e.spikeOptions,l,y,_),{minDataValue:x,maxDataValue:S,defaultValuesUsed:C}=Z(n,e),w=[],T=g===`height`,E=T?g:void 0,D=b[0],O=b[1];if(T&&typeof D==`number`&&typeof O==`number`){let e=oe({minSize:D,maxSize:O},E);w.push(new u({axis:`width-and-depth`,minSize:e.minSize})),O=e.maxSize}let k=new u({field:d??void 0,valueExpression:e.valueExpression,valueExpressionTitle:e.valueExpressionTitle,valueUnit:`unknown`,normalizationField:f,axis:E,minSize:D,maxSize:O,minDataValue:x,maxDataValue:S,legendOptions:r(p,e.legendOptions)});Ae(k,l),w.unshift(k);let A=l===`reference-size`?new c({type:`size`,field:e.field,normalizationField:e.normalizationField,dataSeriesName:e.dataSeriesName,dataSeriesCalculationName:e.dataSeriesCalculationName,sizeStops:Q(k,l).map(({label:e,size:t,value:n})=>new s({label:e,size:t,value:n})),theme:l,referenceSizeScale:a?.isGrid||e.sizeOptimizationEnabled?e?.view?.scale:void 0,referenceSizeSymbolStyle:e.referenceSizeOptions?.symbolStyle,minSliderValue:m??n.min,maxSliderValue:h??n.max}):l===`spike`?new c({type:`size`,field:e.field,normalizationField:e.normalizationField,dataSeriesName:e.dataSeriesName,dataSeriesCalculationName:e.dataSeriesCalculationName,spikeSymbolStyle:e.spikeOptions?.symbolStyle,sizeStops:Q(k,l).map(({label:e,size:t,value:n})=>new s({label:e,size:t,value:n})),theme:l,minSliderValue:m??n.min,maxSliderValue:h??n.max}):new c({type:`size`,theme:l,dataSeriesName:e.dataSeriesName,dataSeriesCalculationName:e.dataSeriesCalculationName,minSliderValue:m??n.min,maxSliderValue:h??n.max}),j=new o({visualVariables:[A]});return{basemapId:v.basemapId,basemapTheme:v.basemapTheme,visualVariables:w,statistics:n,isGrid:a?.isGrid,defaultValuesUsed:C,sizeScheme:q(y),authoringInfo:j}}async function Pe(e,t,n,r,o){let s=await i(`esri/smartMapping/t9n/smartMapping`),c=o.layer,l=o.field,u=c.geometryType,d=o.defaultSymbolEnabled,f=q(e.sizeScheme),p=u===`polygon`,m=p?f.marker:f,h=p?f.background:null,g=p?`point`:u,_=t?.opacity,v=e.isGrid,b=o.theme,S=b===`reference-size`,C=b===`spike`,w=!S&&!C?e.visualVariables.map(e=>e.clone()):[];t?.visualVariables?.length&&w.push(...t.visualVariables.map(e=>e.clone()));let T=S?x({type:o.referenceSizeOptions?.symbolStyle||`circle`,color:m.color,primitiveOverrides:y({view:o.view,field:l,normalizationField:r,sizeStops:Q(e.visualVariables[0],b),sizeByScaleEnabled:v||!!o.sizeOptimizationEnabled})}):C?N({color:m.color,strokeColor:m.outline.color,baseWidth:o.spikeOptions?.baseWidth,strokeWidth:o.spikeOptions?.strokeWidth,defaultHeight:o.spikeOptions?.defaultHeight,primitiveOverrides:ee({field:l,normalizationField:r,sizeStops:Q(e.visualVariables[0],b)}),symbolStyle:o.spikeOptions?.symbolStyle}):L(g,{type:o.symbolType,color:m.color,size:z(m,g),outline:R(m,g,_)});return{renderer:new a({backgroundFillSymbol:!v&&h?L(u,{type:o.symbolType,color:h.color,outline:R(h,u,_)}):null,classBreakInfos:[{minValue:-he,maxValue:he,symbol:T}],defaultLabel:d?s.other:null,defaultSymbol:d&&!S&&!C?L(g,{type:o.symbolType,color:m.noDataColor,size:z(m,g,!0),outline:R(m,g,_)}):null,field:l,normalizationField:r,normalizationType:n,valueExpression:o.valueExpression,valueExpressionTitle:o.valueExpressionTitle,visualVariables:w,authoringInfo:e.authoringInfo?.clone()}),visualVariables:e.visualVariables.map(e=>e.clone()),statistics:e.statistics,defaultValuesUsed:e.defaultValuesUsed,isGrid:v,sizeScheme:q(e.sizeScheme),basemapId:e.basemapId,basemapTheme:e.basemapTheme}}function Fe(e,t){let r=n(e.minSize),i=(n(e.maxSize)-r)/(t>=4?t-1:t),a=[];for(let e=0;e<t;e++)a.push(r+i*e);return a}async function Ie(e,t){let n=await i(`esri/smartMapping/t9n/smartMapping`),r=e.layer,s=e.defaultSymbolEnabled,c=r.geometryType,u=c===`polygon`,d=e.symbolType?.includes(`3d-volumetric`),f=await X({basemap:e.basemap,geometryType:c,sizeScheme:e.sizeScheme,worldScale:d,view:e.view}),p=f.scheme,{result:m,outlineResult:h}=t,g=m?.classBreakInfos??[],_=e.classificationMethod,v=e.normalizationType,y=u?p.marker:p,b=u?p.background:null,x=u?`point`:c,S=ke(y,x),C=d?oe({minSize:S[0],maxSize:S[1]},`height`):null,w=Fe({minSize:S[0],maxSize:C?C.maxSize:S[1]},g.length),T=h?.opacity,E=new a({backgroundFillSymbol:b&&L(c,{type:e.symbolType,color:b.color,outline:R(b,c,T)}),classBreakInfos:g.map((t,n)=>({minValue:t.minValue,maxValue:t.maxValue,symbol:L(x,{type:e.symbolType,color:y.color,size:w[n],widthAndDepth:C?.minSize,outline:R(y,x,T)}),label:t.label})),defaultLabel:s?n.other:null,defaultSymbol:s?L(x,{type:e.symbolType,color:y.noDataColor,size:z(y,x,!0),widthAndDepth:C?.minSize,outline:R(y,x,T)}):null,field:e.field,valueExpression:e.valueExpression,valueExpressionTitle:e.valueExpressionTitle,normalizationType:v,normalizationField:e.normalizationField,normalizationTotal:v===`percent-of-total`?m?.normalizationTotal:void 0,legendOptions:e.legendOptions,authoringInfo:new o({type:`class-breaks-size`,classificationMethod:_,standardDeviationInterval:e.standardDeviationInterval,dataSeriesName:e.dataSeriesName,dataSeriesCalculationName:e.dataSeriesCalculationName})});return _!==`standard-deviation`&&l({classBreakInfos:E.classBreakInfos,classificationMethod:_,normalizationType:v,round:!0}),h?.visualVariables?.length&&(E.visualVariables=h.visualVariables.map(e=>e.clone())),{renderer:E,sizeScheme:q(p),classBreaksResult:m,defaultValuesUsed:!!t.defaultValuesUsed,basemapId:f.basemapId,basemapTheme:f.basemapTheme}}async function $(e){let t=await _e(e),{view:n,field:r,valueExpression:i,minValue:a,maxValue:o,layer:s,normalizationField:c,signal:l,statistics:u,filter:d,dataSeriesName:f}=t,p=c?`field`:void 0,[m,h]=await Promise.all([u??(f?le({layer:s,view:n,signal:l,timeSeriesName:f,timeSeriesCalculationName:t.dataSeriesCalculationName,filter:d}):ae({layer:s,field:r,valueExpression:i,sqlExpression:t.sqlExpression,sqlWhere:t.sqlWhere,normalizationType:p,normalizationField:c,filter:d,minValue:a,maxValue:o,view:n,signal:l})),t.sizeOptimizationEnabled?_({view:n,layer:s,signal:l,filter:d}).catch(I):null]);return Ne(t,m,h,t.referenceSizeResult)}async function Le(e){let{view:t,filter:n,renderer:r,signal:i,creatorParameters:a}=await Te(e),{field:o,normalizationField:c,valueExpression:l,valueExpressionTitle:d,theme:f,layer:p,sizeOptimizationEnabled:m,spikeOptions:h,referenceSizeResult:g,dataSeriesName:v,dataSeriesCalculationName:y}=a,b=c?`field`:void 0,x=r.authoringInfo?.clone(),[S,C]=await Promise.all([(v?le({layer:p,view:t,signal:i,timeSeriesName:v,timeSeriesCalculationName:y,filter:n}):Promise.resolve(null)).then(e=>e??ae({layer:p,field:o,valueExpression:l,normalizationField:c,normalizationType:b,filter:n,view:t,signal:i})),m&&!g?_({view:t,layer:p,signal:i,filter:n}).catch(I):null]),w=Me(C,g,h,f),{minDataValue:E,maxDataValue:D}=Z(S,{theme:f,layer:p,field:o}),O=r.visualVariables?.find(T),k=(O?.stops?null:O)??new u({field:o??void 0,valueExpression:l,valueExpressionTitle:d,valueUnit:`unknown`,normalizationField:c});w&&(k.minSize=w[0],k.maxSize=w[1]),k.minDataValue=E,k.maxDataValue=D,v&&(k.valueExpression=l??null,k.valueExpressionTitle=d??null),Ae(k,f);let A=x.visualVariables.find(e=>e.type===`size`);A.dataSeriesName=v??A.dataSeriesName,A.dataSeriesCalculationName=y??A.dataSeriesCalculationName,A.minSliderValue=S.min,A.maxSliderValue=S.max;let j=f===`reference-size`;return(j||f===`spike`)&&(A.sizeStops=Q(k,f).map(({label:e,size:t,value:n})=>new s({label:e,size:t,value:n})),j&&(A.referenceSizeScale=g?.isGrid||m?t?.scale:void 0)),{visualVariables:f===`reference-size`||f===`spike`?[]:[k],isGrid:!!g?.isGrid,authoringInfo:x,statistics:S}}async function Re(e){let t=await ve(e),n={layer:t.layer,view:t.view,filter:t.filter,signal:t.signal},[r,i]=await Promise.all([$(Y(t)),t.outlineOptimizationEnabled?h(n).catch(I):null]),a=t.normalizationField;return Pe(r,i,a?`field`:void 0,a,t)}async function ze(e){let{renderer:t,view:n,signal:r,filter:i,creatorParameters:a,forBinning:o}=await Ee(e),{layer:s,sizeOptimizationEnabled:c,outlineOptimizationEnabled:l,theme:u,referenceSizeResult:d,valueExpression:f,valueExpressionTitle:p}=a,[m,g]=await Promise.all([Le({...e,referenceSizeResult:d}),l?h({layer:s,view:n,filter:i,signal:r}).catch(I):null]),_=u===`reference-size`,v=u===`spike`;S(t,m.visualVariables,j),S(t,g?.visualVariables,M),t.valueExpression=f??null,t.valueExpressionTitle=p??null,C(t,m.authoringInfo,`size`);let y=m.statistics;if(!_&&!v)return{renderer:t,statistics:y};if(v)return{renderer:await Ve({layer:s,renderer:t,forBinning:o,sizeStops:w(t,`size`,`spike`)?.sizeStops}),statistics:y};let b=m.isGrid;return{renderer:await Be({layer:s,renderer:t,view:n,forBinning:o,sizeOptimizationEnabled:c,sizeStops:w(t,`size`,`reference-size`)?.sizeStops,isGrid:b}),isGrid:b,statistics:y}}async function Be(n){let{layer:r,referenceSizeOptions:i,renderer:a,sizeScheme:c,sizeStops:l,typeScheme:u,view:d,isGrid:f}=await be(n),p=a.clone();p.authoringInfo??=new o;let m=p.authoringInfo.visualVariables.find(e=>e.theme===`reference-size`),h=n.field??m?.field,g=n.normalizationField??m?.normalizationField;if(!h)throw new t(`update-renderer-with-reference-size:invalid-parameters`,`'field' parameter or authoring info with 'field' is required.`);let _=y({view:d,field:h,normalizationField:g,sizeStops:l,sizeByScaleEnabled:f||!!n.sizeOptimizationEnabled}),v=i?.symbolStyle||m?.referenceSizeSymbolStyle||`circle`;if(p.type===`class-breaks`){let e=(`geometryType`in r?r.geometryType:null)===`polygon`&&c&&`marker`in c?c.marker:null;p.classBreakInfos.forEach(t=>{let n=e?.color??J(t.symbol,1);t.symbol.type===`cim`?b(t.symbol,{type:v,color:n,primitiveOverrides:_}):n&&(t.symbol=x({type:v,color:n,primitiveOverrides:_}))})}else if(p.type===`unique-value`){let t=p.uniqueValueGroups,n=(`geometryType`in r?r.geometryType:null)===`polygon`&&u&&`colors`in u?u.colors:null,i=n?e(n,p.uniqueValueInfos?.length??0):null,a=0;if(t){for(let e of t)for(let t of e.classes??[]){let e=i?i[a]:J(t.symbol,1);t.symbol?.type===`cim`?b(t.symbol,{type:v,color:e,primitiveOverrides:_}):e&&(t.symbol=x({type:v,color:e,primitiveOverrides:_})),a++}p.uniqueValueGroups=t}}return m&&(m.field=h,m.normalizationField=g,m.sizeStops=l.map(({label:e,size:t,value:n})=>new s({label:e,size:t,value:n})),m.referenceSizeScale=f||n.sizeOptimizationEnabled?d.scale:void 0,m.referenceSizeSymbolStyle=v),p}async function Ve(n){let{layer:r,renderer:i,sizeScheme:a,sizeStops:c,typeScheme:l,spikeOptions:u}=await xe(n),d=i.clone();d.authoringInfo??=new o;let f=d.authoringInfo.visualVariables.find(e=>e.theme===`spike`),p=n.field??f?.field,m=n.normalizationField??f?.normalizationField;if(!p)throw new t(`update-renderer-with-spike:invalid-parameters`,`'field' parameter or authoring info with 'field' is required.`);let h=ee({field:p,normalizationField:m,sizeStops:c}),g=`geometryType`in r?r.geometryType:null,_={primitiveOverrides:h,...u},y=u?.symbolStyle,b=y&&y.includes(`outline`)&&(y.includes(`solid-fill`)||y.includes(`gradient-fill`));if(d.type===`class-breaks`){if(a||b){let e=(g?await X({geometryType:g,sizeScheme:a,view:n.view}):null)?.scheme,t=g===`polygon`&&e&&`marker`in e?e.marker:e;a&&(_.color=t&&`color`in t?t?.color:void 0),b&&(_.strokeColor=t&&`outline`in t?t.outline.color:void 0)}d.classBreakInfos.forEach(e=>{if(e.symbol.type===`cim`)te(e.symbol,_);else{let t=_.color??J(e.symbol,1)??void 0;t&&(e.symbol=N({..._,color:t}))}})}else if(d.type===`unique-value`){let t=d.uniqueValueGroups,r=d.uniqueValueInfos?.length??0,i=null;if(l||b){let t=(g&&r?await v({numColors:r,geometryType:g,typeScheme:l,view:n.view}):null)?.scheme;if(l){let n=t&&`colors`in t?t.colors:null;i=n?e(n,r):null}b&&(_.strokeColor=t&&`outline`in t?t.outline.color:void 0)}let a=0;if(t){for(let e of t)for(let t of e.classes??[]){if(t.symbol?.type===`cim`)te(t.symbol,{..._,color:i?.[a]});else{let e=i?.[a]??J(t.symbol,1)??void 0;e&&(t.symbol=N({..._,color:e}))}a++}d.uniqueValueGroups=t}}return f&&(f.field=p,f.normalizationField=m,f.sizeStops=c.map(({label:e,size:t,value:n})=>new s({label:e,size:t,value:n})),y&&(f.spikeSymbolStyle=y)),d}async function He(e){let t=await Se(e);return Ie(t,await ie(Ce(t),t.outlineOptimizationEnabled))}async function Ue(e){let{renderer:n,creatorParameters:r}=await De(e),{outlineOptimizationEnabled:i,normalizationType:a,classificationMethod:o,valueExpression:s,valueExpressionTitle:c}=r,{result:u,outlineResult:d}=await ie(Ce(r),i),f=u.classBreakInfos;if(r.numClasses!==f.length)throw new t(`regenerate-class-breaks-renderer:invalid-parameters`,`The number of class breaks generated does not match the number of class breaks in the renderer.`);return n.classBreakInfos.forEach((e,t)=>{e.minValue=f[t].minValue,e.maxValue=f[t].maxValue,e.label=f[t].label}),n.normalizationTotal=a===`percent-of-total`?u.normalizationTotal:void 0,o!==`standard-deviation`&&l({classBreakInfos:n.classBreakInfos,classificationMethod:o,normalizationType:a,round:!0}),S(n,d?.visualVariables,M),n.valueExpression=s??null,n.valueExpressionTitle=c??null,{renderer:n}}async function We(e){let t=await we(e),{defaultSymbolEnabled:n,view:r,startTime:i,endTime:a,symbolType:o,minValue:s,maxValue:c,signal:l,filter:u,layer:d}=t,[f,p]=await Promise.all([t.unit?{unit:t.unit,statistics:null,valueExpression:null}:await m({view:r,layer:d,startTime:i,endTime:a,minValue:s,maxValue:c,signal:l,filter:u}),t.outlineOptimizationEnabled?h({layer:d,view:r,filter:u,signal:l}).catch(I):null]),{unit:g,statistics:_}=f,{valueExpression:v,title:y}=await ne(t,g),b=await Pe(await $(Y({layer:d,basemap:t.basemap,valueExpression:v,symbolType:o,statistics:_,legendOptions:{title:y},theme:t.theme,sizeScheme:t.sizeScheme,sizeOptimizationEnabled:t.sizeOptimizationEnabled,view:t.view,minValue:s,maxValue:c,filter:u,signal:l})),p,null,null,{layer:d,valueExpression:v,defaultSymbolEnabled:n,symbolType:o});return(b.renderer.authoringInfo?.visualVariables)?.forEach(e=>re(e,i,a,g)),{...b,unit:g}}async function Ge(e){let{renderer:t,creatorParameters:n}=await Oe(e),{layer:r,outlineOptimizationEnabled:i,sizeOptimizationEnabled:a,startTime:o,endTime:s,theme:c,view:l,signal:u,filter:d}=n,[f,p]=await Promise.all([m({view:l,layer:r,startTime:o,endTime:s,signal:u,filter:d}),i?h({layer:r,view:l,filter:d,signal:u}).catch(I):null]),{unit:g,statistics:_}=f,{valueExpression:v,title:y}=await ne(n,g),b=await $(Y({layer:r,valueExpression:v,statistics:_,legendOptions:{title:y},sizeOptimizationEnabled:a,theme:c,view:l,filter:d,signal:u}));return S(t,b.visualVariables,j),S(t,p?.visualVariables,M),t.authoringInfo=b.authoringInfo.clone(),(t.authoringInfo?.visualVariables)?.forEach(e=>re(e,o,s,g)),{renderer:t}}export{We as createAgeRenderer,He as createClassBreaksRenderer,Re as createContinuousRenderer,$ as createVisualVariables,Q as getSizeStopsForTheme,Ge as regenerateAgeRenderer,Ue as regenerateClassBreaksRenderer,ze as regenerateContinuousRenderer,Le as regenerateVisualVariables,Be as updateRendererWithReferenceSize,Ve as updateRendererWithSpike};
2
+ import{createUniqueColors as e}from"../../core/colorUtils.js";import t from"../../core/Error.js";import{toPt as n}from"../../core/screenUtils.js";import{ensureClass as r}from"../../core/accessorSupport/ensureType.js";import{fetchMessageBundle as i}from"../../intl/messages.js";import a from"../../renderers/ClassBreaksRenderer.js";import o from"../../renderers/support/AuthoringInfo.js";import s from"../../renderers/support/AuthoringInfoSizeStop.js";import c from"../../renderers/support/AuthoringInfoVisualVariable.js";import{setLabelsForClassBreaks as l}from"../../renderers/support/utils.js";import u from"../../renderers/visualVariables/SizeVariable.js";import{castSizeFromStringOrNumber as d}from"../../renderers/visualVariables/support/castSizeVariable.js";import f from"../../renderers/visualVariables/support/SizeStop.js";import p from"../../renderers/visualVariables/support/SizeVariableLegendOptions.js";import m from"../heuristics/ageUnit.js";import h from"../heuristics/outline.js";import g from"../heuristics/referenceSize.js";import _ from"../heuristics/sizeRange.js";import{getTypeSchemeData as v}from"./type.js";import{createPrimitiveOverrides as y,updateReferenceSizeSymbol as b,createReferenceSizeSymbol as x}from"./support/referenceSizeUtils.js";import{spliceVisualVariables as S,updateAuthoringInfoVisualVariable as C,getAuthoringInfoVisualVariable as w,isSizeVV as T,processRegenerateParams as E,getRendererToUpdate as D,getStyleType as O,hasOutlineVV as k,hasScaleDependentSizeVV as A,findSizeVVIndex as j,findOutlineVVIndex as M}from"./support/regenerateUtils.js";import{createPrimitiveOverrides as ee,updateSpikeSymbol as te,createSpikeSymbol as N,defaultSpikeSymbolStyle as P}from"./support/spikeUtils.js";import{resolveDataSeriesInfo as F}from"./support/timeSeriesUtils.js";import{errorCallback as I,getTitleAndExpressionForAgeRenderer as ne,updateAgeRendererAuthoringInfoVV as re,getClassBreaks as ie,getSummaryStatistics as ae,createSymbol as L,getSymbolOutlineFromScheme as R,getSymbolSizeFromScheme as z,verifyBasicFieldValidity as B,getSizeRangeForAxis as oe,getDataRange as se,getBasemapInfo as ce}from"./support/utils.js";import le from"../statistics/summaryStatisticsForTimeSeries.js";import{verifyDates as ue,supportedAgeUnits as de}from"../statistics/support/ageUtils.js";import{verifyBinningParams as V}from"../support/binningUtils.js";import{getNormalizationType as fe,getFieldsList as H,isAnyDateField as pe}from"../support/utils.js";import{createLayerAdapter as U,featureCapableLayerTypes as W,getLayerTypeLabels as G,binningCapableLayerTypes as K}from"../support/adapters/support/layerUtils.js";import{cloneScheme as q,getSchemes as me}from"../symbology/size.js";import{getColorFromSymbol as J}from"../../symbols/support/utils.js";const he=2**53-1,ge=[5,112.5];async function _e(e,n){let r=F({...e});if(!(r&&r.layer&&(r.field||r.valueExpression||r.sqlExpression)))throw new t(`size-visual-variable:missing-parameters`,`'layer' and 'field', 'valueExpression' or 'sqlExpression' parameters are required`);if(r.valueExpression&&!r.sqlExpression&&!r.view)throw new t(`size-visual-variable:missing-parameters`,`View is required when 'valueExpression' is specified`);if(r.theme===`reference-size`&&!(r.view||r.field))throw new t(`size-visual-variable:missing-parameters`,`'view' and 'field' are required when 'theme' is 'reference-size'`);if(r.theme===`reference-size`&&r.valueExpression)throw new t(`size-visual-variable:missing-parameters`,`'valueExpression' is not supported when 'theme' is 'reference-size'`);r.forBinning&&V(r,`size-visual-variable`);let i={...r},a=r.forBinning?K:W,o=U(i.layer,a,r.forBinning);if(!o)throw new t(`size-visual-variable:invalid-parameters`,`'layer' must be one of these types: `+G(a).join(`, `));i.axis===`height`&&(i.sizeOptimizationEnabled=!1);let s=i.signal==null?null:{signal:i.signal};await o.load(s);let c=o.geometryType;if(c===`mesh`)throw new t(`size-visual-variable:invalid-parameters`,`Size visualization is not applicable to layers with 'mesh' geometry type`);if(i.worldScale){if(c===`polyline`||c===`polygon`)throw new t(`size-visual-variable:not-supported`,`'worldScale' sizing is not supported for polyline and polygon layers`);if(i.view?.type!==`3d`)throw new t(`size-visual-variable:invalid-parameters`,`'view' parameter should be an instance of SceneView when 'worldScale' parameter is true`)}if(i.theme===`reference-size`&&!r.forBinning&&c!==`polygon`)throw new t(`size-visual-variable:invalid-parameters`,`Reference size is only supported for polygon layers`);if(i.theme===`spike`&&!r.forBinning&&c!==`polygon`&&c!==`point`)throw new t(`size-visual-variable:invalid-parameters`,`Spike is only supported for point and polygon layers`);let l=await H({field:i.field,normalizationField:i.normalizationField,valueExpression:i.valueExpression}),u=B(o,l,`size-visual-variable:invalid-parameters`);if(u)throw u;i.theme===`spike`&&!i.spikeOptions?.symbolStyle&&(i.spikeOptions??={},i.spikeOptions.symbolStyle=P);let d={...i,layer:o,referenceSizeResult:n};return await ye(d),d}async function ve(e){let n=F({...e});if(!(n&&n.layer&&(n.field||n.valueExpression||n.sqlExpression)))throw new t(`size-continuous-renderer:missing-parameters`,`'layer' and 'field', 'valueExpression' or 'sqlExpression' parameters are required`);if(n.valueExpression&&!n.sqlExpression&&!n.view)throw new t(`size-continuous-renderer:missing-parameters`,`View is required when 'valueExpression' is specified`);n.forBinning&&V(n,`size-continuous-renderer`);let r={...n};r.symbolType=r.symbolType||`2d`,r.defaultSymbolEnabled??=!0;let i=n.forBinning?K:W,a=U(r.layer,i,n.forBinning);if(!a)throw new t(`size-continuous-renderer:invalid-parameters`,`'layer' must be one of these types: `+G(i).join(`, `));let o=r.signal==null?null:{signal:r.signal};await a.load(o);let s=a.geometryType,c=r.symbolType.includes(`3d`);if(r.outlineOptimizationEnabled=r.theme!==`reference-size`&&r.theme!==`spike`&&s===`polygon`&&r.outlineOptimizationEnabled,s===`mesh`)throw new t(`size-continuous-renderer:invalid-parameters`,`Size visualization is not applicable to layers with 'mesh' geometry type`);if(c&&(s===`polyline`||s===`polygon`))throw new t(`size-continuous-renderer:not-supported`,`3d symbols are not supported for polyline and polygon layers`);if(r.symbolType.includes(`3d-volumetric`)&&r.view?.type!==`3d`)throw new t(`size-continuous-renderer:invalid-parameters`,`'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or 3d-volumetric-uniform`);if(r.theme===`reference-size`&&!n.forBinning&&s!==`polygon`)throw new t(`size-continuous-renderer:invalid-parameters`,`Reference size is only supported for polygon layers`);if(r.theme===`spike`&&!n.forBinning&&s!==`polygon`&&s!==`point`)throw new t(`size-continuous-renderer:invalid-parameters`,`Spike is only supported for point and polygon layers`);let l=await H({field:r.field,normalizationField:r.normalizationField,valueExpression:r.valueExpression}),u=B(a,l,`size-continuous-renderer:invalid-parameters`);if(u)throw u;r.theme===`spike`&&!r.spikeOptions?.symbolStyle&&(r.spikeOptions??={},r.spikeOptions.symbolStyle=P);let d={...r,layer:a};return await ye(d),d}async function ye(e){let t=e.layer,n=t.geometryType,r=t.layer,i=e.forBinning&&`featureReduction`in r&&r.featureReduction?.type===`binning`;if((n===`polygon`||i)&&e.view&&e.field&&!e.valueExpression&&(!e.theme||e.theme===`reference-size`)){try{e.referenceSizeResult=e.referenceSizeResult??await g({layer:r,view:e.view,filter:e.filter,forBinning:e.forBinning,signal:e.signal})}catch{}!e.theme&&e.referenceSizeResult?.isGrid&&(e.theme=`reference-size`),e.referenceSizeOptions?.symbolStyle||(e.referenceSizeOptions?e.referenceSizeOptions.symbolStyle=`circle`:e.referenceSizeOptions={symbolStyle:`circle`})}}async function be(e){if(!e||!(e.layer&&e.view&&e.sizeStops))throw new t(`update-renderer-with-reference-size:missing-parameters`,`'layer', 'view and 'sizeStops' parameters are required`);let{view:n,forBinning:r}=e,i=e.forBinning?K:W,a=U(e.layer,i,e.forBinning);if(!a)throw new t(`update-renderer-with-reference-size:invalid-parameters`,`'layer' must be one of these types: `+G(i).join(`, `));let o=a.layer,s=e.renderer;if(!s){if(e.forBinning){if(!(`featureReduction`in o&&o.featureReduction&&`renderer`in o.featureReduction&&o.featureReduction.renderer&&(o.featureReduction.renderer.type===`class-breaks`||o.featureReduction.renderer.type===`unique-value`)))throw new t(`update-renderer-with-reference-size:invalid-parameters`,`Feature reduction renderer is not supported`);s=o.featureReduction.renderer}else{if(!(`renderer`in o&&o.renderer&&(o.renderer.type===`class-breaks`||o.renderer.type===`unique-value`)))throw new t(`update-renderer-with-reference-size:invalid-parameters`,`Renderer is not supported`);s=o.renderer}}let c=s.authoringInfo;if(!c||!c?.visualVariables?.some(e=>e.theme===`reference-size`))throw new t(`update-renderer-with-reference-size:invalid-parameters`,`'renderer.authoringInfo.visualVariables' should have an authoringInfoVisualVariable with 'theme' set to 'reference-size'`);let l=e.isGrid??(await g({view:n,layer:o,forBinning:r}))?.isGrid;return{...e,isGrid:l,renderer:s,layer:a}}async function xe(e){if(!e||!(e.layer&&e.sizeStops))throw new t(`update-renderer-with-spike:missing-parameters`,`'layer' and 'sizeStops' parameters are required`);let n=e.forBinning?K:W,r=U(e.layer,n,e.forBinning);if(!r)throw new t(`update-renderer-with-spike:invalid-parameters`,`'layer' must be one of these types: `+G(n).join(`, `));await r.load();let i=r.layer,a=e.renderer;if(!a){if(e.forBinning){if(!(`featureReduction`in i&&i.featureReduction&&`renderer`in i.featureReduction&&i.featureReduction.renderer&&(i.featureReduction.renderer.type===`class-breaks`||i.featureReduction.renderer.type===`unique-value`)))throw new t(`update-renderer-with-spike:invalid-parameters`,`Feature reduction renderer is not supported`);a=i.featureReduction.renderer}else{if(!(`renderer`in i&&i.renderer&&(i.renderer.type===`class-breaks`||i.renderer.type===`unique-value`)))throw new t(`update-renderer-with-spike:invalid-parameters`,`Renderer is not supported`);a=i.renderer}}let o=a.authoringInfo?.visualVariables.find(e=>e.theme===`spike`);if(!o)throw new t(`update-renderer-with-spike:invalid-parameters`,`'renderer.authoringInfo.visualVariables' should have an authoringInfoVisualVariable with 'theme' set to 'spike'`);let s=e.spikeOptions??{};return s.symbolStyle??=o?.spikeSymbolStyle?void 0:P,{...e,renderer:a,layer:r,spikeOptions:s}}async function Se(e){let n=F({...e});if(!(n&&n.layer&&(n.field||n.valueExpression)))throw new t(`size-class-breaks-renderer:missing-parameters`,`'layer' and 'field' or 'valueExpression' parameters are required`);if(n.valueExpression&&!n.view)throw new t(`size-class-breaks-renderer:missing-parameters`,`View is required when 'valueExpression' is specified`);n.forBinning&&V(n,`size-class-breaks-renderer`);let r={...n};r.symbolType=r.symbolType||`2d`,r.defaultSymbolEnabled??=!0,r.classificationMethod??=`equal-interval`,r.normalizationType=fe(r);let i=n.forBinning?K:W,a=U(r.layer,i,n.forBinning);if(!a)throw new t(`size-class-breaks-renderer:invalid-parameters`,`'layer' must be one of these types: `+G(i).join(`, `));if((r.minValue==null||r.maxValue==null)&&(r.minValue!=null||r.maxValue!=null))throw new t(`size-class-breaks-renderer:missing-parameters`,`Both 'minValue' and 'maxValue' are required when specifying custom data range`);let o=r.signal==null?null:{signal:r.signal};await a.load(o);let s=a.geometryType,c=r.symbolType.includes(`3d`);if(r.outlineOptimizationEnabled=s===`polygon`&&r.outlineOptimizationEnabled,s===`mesh`)throw new t(`size-class-breaks-renderer:invalid-parameters`,`Size visualization is not applicable to layers with 'mesh' geometry type`);if(c&&(s===`polyline`||s===`polygon`))throw new t(`size-class-breaks-renderer:not-supported`,`3d symbols are not supported for polyline and polygon layers`);if(r.symbolType.includes(`3d-volumetric`)&&r.view?.type!==`3d`)throw new t(`size-class-breaks-renderer:invalid-parameters`,`'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or 3d-volumetric-uniform`);let l=await H({field:r.field,normalizationField:r.normalizationField}),u=B(a,l,`size-class-breaks-renderer:invalid-parameters`);if(u)throw u;return{...r,layer:a}}function Ce(e){let t={...e};delete t.basemap,delete t.sizeScheme,delete t.legendOptions,delete t.symbolType,delete t.defaultSymbolEnabled;let n=t;return n.analyzeData=t.minValue==null||t.maxValue==null,n}function Y(e){let t={...e},n=!!t.symbolType?.includes(`3d-volumetric`),r=t;return r.worldScale=n,n&&(r.axis=t.symbolType===`3d-volumetric-uniform`?`all`:`height`),delete t.symbolType,delete t.defaultSymbolEnabled,r}async function we(e){if(!(e&&e.layer&&e.view&&e.startTime&&e.endTime))throw new t(`size-age-renderer:missing-parameters`,`'layer', 'view', 'startTime', 'endTime' parameters are required`);let n={...e};n.symbolType??=`2d`,n.defaultSymbolEnabled??=!0;let r=U(n.layer,W);if(!r)throw new t(`size-age-renderer:invalid-parameters`,`'layer' must be one of these types: `+G(W).join(`, `));let i=n.signal==null?null:{signal:n.signal};await r.load(i);let a=r.geometryType,o=n.symbolType.includes(`3d`);if(n.outlineOptimizationEnabled=a===`polygon`&&n.outlineOptimizationEnabled,a===`mesh`)throw new t(`size-age-renderer:invalid-parameters`,`Size visualization is not applicable to layers with 'mesh' geometry type`);if(o&&(a===`polyline`||a===`polygon`))throw new t(`size-age-renderer:not-supported`,`3d symbols are not supported for polyline and polygon layers`);if(n.symbolType.includes(`3d-volumetric`)&&!(n.view&&n.view.type===`3d`))throw new t(`size-age-renderer:invalid-parameters`,`'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or 3d-volumetric-uniform`);let s=ue(r,n.startTime,n.endTime,`size-age-renderer:invalid-parameters`);if(s)throw s;if(n.unit&&!de.includes(n.unit))throw new t(`size-age-renderer:invalid-unit`,`Supported units are: ${de.join(`, `)}`);return{...n,layer:r}}async function Te(e){let n=`regenerate-size-visual-variables`;E(e,n);let r=await D(e),i=O(r);if(!i||![`size-continuous`,`univariate-color-size`,`color-size`,`relationship-size`,`type-size`].includes(i))throw new t(`${n}:invalid-parameters`,`Renderer is invalid`);let a=w(r,`size`);if(!a)throw new t(`${n}:invalid-parameters`,`Renderer does not have a size visual variable authoringInfo`);let o=a.theme,s=o===`reference-size`,c=o===`spike`,l=r.visualVariables?.find(T);if(!l&&!s&&!c)throw new t(`${n}:invalid-parameters`,`Renderer does not have a size visual variable`);let u=a.field,d=a.normalizationField,f=null,p=null;u||(l?.field?(u=l.field,d=l.normalizationField):r.field?(u=r.field,d=r.normalizationField):(f=l?.valueExpression??r.valueExpression,p=l?.valueExpressionTitle??r.valueExpressionTitle));let{layer:m,forBinning:h,filter:g,view:_,signal:v}=e,y=a.dataSeriesName,b=a.dataSeriesCalculationName,x=A(r),S=await _e({layer:m,field:u,valueExpression:f,valueExpressionTitle:p,normalizationField:d,theme:o,sizeOptimizationEnabled:x,forBinning:h,dataSeriesName:y,dataSeriesCalculationName:b,filter:g,view:_,signal:v},e.referenceSizeResult);return o===`reference-size`&&a.referenceSizeScale!=null&&S.referenceSizeResult&&!S.referenceSizeResult.isGrid&&!S.sizeOptimizationEnabled&&(S.sizeOptimizationEnabled=!0),{...e,creatorParameters:S,renderer:r}}async function Ee(e){let n=`regenerate-size-continuous-renderer`;E(e,n);let r=await D(e),i=O(r);if(!i||![`size-continuous`,`univariate-color-size`].includes(i))throw new t(`${n}:invalid-parameters`,`Renderer is invalid`);let{authoringInfo:a,field:o,normalizationField:s,valueExpression:c,valueExpressionTitle:l}=r,u=a?.visualVariables.find(e=>e.type===`size`),d=u.theme,{layer:f,forBinning:p,filter:m,view:h,signal:g}=e,_=u.dataSeriesName,v=u.dataSeriesCalculationName,y=await ve({layer:f,field:o,valueExpression:c,valueExpressionTitle:l,normalizationField:s,theme:d,outlineOptimizationEnabled:k(r),sizeOptimizationEnabled:A(r),forBinning:p,dataSeriesName:_,dataSeriesCalculationName:v,filter:m,view:h,signal:g});return d===`reference-size`&&u.referenceSizeScale!=null&&y.referenceSizeResult&&!y.referenceSizeResult.isGrid&&!y.sizeOptimizationEnabled&&(y.sizeOptimizationEnabled=!0),{...e,creatorParameters:y,renderer:r}}async function De(e){let n=`regenerate-size-class-breaks-renderer`;await E(e,n);let r=await D(e);if(O(r)!==`size-class-breaks`)throw new t(`${n}:invalid-parameters`,`Renderer is invalid`);let{authoringInfo:i,field:a,normalizationField:o,normalizationType:s,normalizationTotal:c,valueExpression:l,valueExpressionTitle:u}=r,{classificationMethod:d,standardDeviationInterval:f}=i,p=r.classBreakInfos.length,m=r.classBreakInfos[0]?.symbol,h=m?.type===`point-3d`?m.symbolLayers.at(0):null,g=h?.type===`object`?`3d-volumetric`:h?`3d-flat`:`2d`,{layer:_,forBinning:v,filter:y,view:b,signal:x}=e,S=i?.dataSeriesName,C=i?.dataSeriesCalculationName,w=await Se({layer:_,symbolType:g,field:a,valueExpression:l,valueExpressionTitle:u,normalizationType:s,normalizationField:o,normalizationTotal:c,classificationMethod:d,standardDeviationInterval:f,numClasses:p,outlineOptimizationEnabled:k(r),forBinning:v,dataSeriesName:S,dataSeriesCalculationName:C,filter:y,view:b,signal:x});return{...e,creatorParameters:w,renderer:r}}async function Oe(e){let n=`regenerate-size-age-renderer`;await E(e,n);let r=await D(e);if(O(r)!==`size-age`)throw new t(`${n}:invalid-parameters`,`Renderer is invalid`);let{authoringInfo:i}=r,a=i?.visualVariables.find(e=>e.type===`size`),o=a.startTime,s=a.endTime,c=a.units,l=a.theme,{layer:u,filter:d,view:f,signal:p}=e,m=await we({layer:u,startTime:o,endTime:s,unit:c,theme:l,outlineOptimizationEnabled:k(r),sizeOptimizationEnabled:A(r),filter:d,view:f,signal:p});return{...e,creatorParameters:m,renderer:r}}async function X(e){let t=e.sizeScheme,n=null,r=null,i=await ce(e.basemap,e.view);if(n=i.basemapId==null?null:i.basemapId,r=i.basemapTheme==null?null:i.basemapTheme,t)return{scheme:q(t),basemapId:n,basemapTheme:r};let a=me({basemapTheme:r,geometryType:e.geometryType,worldScale:e.worldScale,view:e.view});return a&&(t=a.primaryScheme,n=a.basemapId,r=a.basemapTheme),{scheme:t,basemapId:n,basemapTheme:r}}function ke(e,t){switch(t){case`point`:case`multipoint`:{let t=e;return[d(t.minSize),d(t.maxSize)]}case`polyline`:{let t=e;return[d(t.minWidth),d(t.maxWidth)]}case`polygon`:{let t=e;return[d(t.marker.minSize),d(t.marker.maxSize)]}}}function Ae(e,t){e.transformationType===`clamped-linear`&&t===`below`&&e.flipSizes()}async function je(e,t,n,r,i,a){return Me(e,t,n,r)||ke(i,a)}function Me(e,t,n,r){return r===`spike`?[n?.minHeight??ge[0],n?.maxHeight??ge[1]]:r===`reference-size`&&t?[1,t.size]:e?[e.minSize,e.maxSize]:null}function Z(e,t){if(t.theme===`reference-size`&&e.min!=null&&e.max!=null&&e.avg!=null&&e.stddev!=null){let t=e.avg,n=e.min,r=e.max,i=e.stddev,a=t===0?0:i/t,o=n>0&&n<1&&r<2&&a<.5,s=n>0&&n<100&&r<200&&a<.5,c=t+2*i;return{minDataValue:o||s?0:n,maxDataValue:o?1:s?100:c,defaultValuesUsed:!1}}let{theme:n,field:r}=t,i=t.layer,a=r&&typeof r!=`function`?i.getField(r):null,o=pe(a);return se(e,n,o,n===`above`||n===`below`)}function Q(e,n){if((n===`spike`||n===`reference-size`)&&e.minDataValue!=null&&e.maxDataValue!=null&&e.minSize!=null&&e.maxSize!=null&&typeof e.minSize==`number`&&typeof e.maxSize==`number`)return[new f({value:e.minDataValue,size:e.minSize}),new f({value:e.maxDataValue,size:e.maxSize})];throw new t(`get-size-stops-for-theme`,`Invalid size variable or theme`)}async function Ne(e,n,i,a){let{theme:l,field:d,normalizationField:f,minValue:m,maxValue:h,axis:g}=e,_=e.layer.geometryType,v=await X({basemap:e.basemap,geometryType:_,sizeScheme:e.sizeScheme,worldScale:e.worldScale,view:e.view}),y=v.scheme;if(!y)throw new t(`size-visual-variable:insufficient-info`,`Unable to find size scheme`);let b=await je(i,a,e.spikeOptions,l,y,_),{minDataValue:x,maxDataValue:S,defaultValuesUsed:C}=Z(n,e),w=[],T=g===`height`,E=T?g:void 0,D=b[0],O=b[1];if(T&&typeof D==`number`&&typeof O==`number`){let e=oe({minSize:D,maxSize:O},E);w.push(new u({axis:`width-and-depth`,minSize:e.minSize})),O=e.maxSize}let k=new u({field:d??void 0,valueExpression:e.valueExpression,valueExpressionTitle:e.valueExpressionTitle,valueUnit:`unknown`,normalizationField:f,axis:E,minSize:D,maxSize:O,minDataValue:x,maxDataValue:S,legendOptions:r(p,e.legendOptions)});Ae(k,l),w.unshift(k);let A=l===`reference-size`?new c({type:`size`,field:e.field,normalizationField:e.normalizationField,dataSeriesName:e.dataSeriesName,dataSeriesCalculationName:e.dataSeriesCalculationName,sizeStops:Q(k,l).map(({label:e,size:t,value:n})=>new s({label:e,size:t,value:n})),theme:l,referenceSizeScale:a?.isGrid||e.sizeOptimizationEnabled?e?.view?.scale:void 0,referenceSizeSymbolStyle:e.referenceSizeOptions?.symbolStyle,minSliderValue:m??n.min,maxSliderValue:h??n.max}):l===`spike`?new c({type:`size`,field:e.field,normalizationField:e.normalizationField,dataSeriesName:e.dataSeriesName,dataSeriesCalculationName:e.dataSeriesCalculationName,spikeSymbolStyle:e.spikeOptions?.symbolStyle,sizeStops:Q(k,l).map(({label:e,size:t,value:n})=>new s({label:e,size:t,value:n})),theme:l,minSliderValue:m??n.min,maxSliderValue:h??n.max}):new c({type:`size`,theme:l,dataSeriesName:e.dataSeriesName,dataSeriesCalculationName:e.dataSeriesCalculationName,minSliderValue:m??n.min,maxSliderValue:h??n.max}),j=new o({visualVariables:[A]});return{basemapId:v.basemapId,basemapTheme:v.basemapTheme,visualVariables:w,statistics:n,isGrid:a?.isGrid,defaultValuesUsed:C,sizeScheme:q(y),authoringInfo:j}}async function Pe(e,t,n,r,o){let s=await i(`esri/smartMapping/t9n/smartMapping`),c=o.layer,l=o.field,u=c.geometryType,d=o.defaultSymbolEnabled,f=q(e.sizeScheme),p=u===`polygon`,m=p?f.marker:f,h=p?f.background:null,g=p?`point`:u,_=t?.opacity,v=e.isGrid,b=o.theme,S=b===`reference-size`,C=b===`spike`,w=!S&&!C?e.visualVariables.map(e=>e.clone()):[];t?.visualVariables?.length&&w.push(...t.visualVariables.map(e=>e.clone()));let T=S?x({type:o.referenceSizeOptions?.symbolStyle||`circle`,color:m.color,primitiveOverrides:y({view:o.view,field:l,normalizationField:r,sizeStops:Q(e.visualVariables[0],b),sizeByScaleEnabled:v||!!o.sizeOptimizationEnabled})}):C?N({color:m.color,strokeColor:m.outline.color,baseWidth:o.spikeOptions?.baseWidth,strokeWidth:o.spikeOptions?.strokeWidth,defaultHeight:o.spikeOptions?.defaultHeight,primitiveOverrides:ee({field:l,normalizationField:r,sizeStops:Q(e.visualVariables[0],b)}),symbolStyle:o.spikeOptions?.symbolStyle}):L(g,{type:o.symbolType,color:m.color,size:z(m,g),outline:R(m,g,_)});return{renderer:new a({backgroundFillSymbol:!v&&h?L(u,{type:o.symbolType,color:h.color,outline:R(h,u,_)}):null,classBreakInfos:[{minValue:-he,maxValue:he,symbol:T}],defaultLabel:d?s.other:null,defaultSymbol:d&&!S&&!C?L(g,{type:o.symbolType,color:m.noDataColor,size:z(m,g,!0),outline:R(m,g,_)}):null,field:l,normalizationField:r,normalizationType:n,valueExpression:o.valueExpression,valueExpressionTitle:o.valueExpressionTitle,visualVariables:w,authoringInfo:e.authoringInfo?.clone()}),visualVariables:e.visualVariables.map(e=>e.clone()),statistics:e.statistics,defaultValuesUsed:e.defaultValuesUsed,isGrid:v,sizeScheme:q(e.sizeScheme),basemapId:e.basemapId,basemapTheme:e.basemapTheme}}function Fe(e,t){let r=n(e.minSize),i=(n(e.maxSize)-r)/(t>=4?t-1:t),a=[];for(let e=0;e<t;e++)a.push(r+i*e);return a}async function Ie(e,t){let n=await i(`esri/smartMapping/t9n/smartMapping`),r=e.layer,s=e.defaultSymbolEnabled,c=r.geometryType,u=c===`polygon`,d=e.symbolType?.includes(`3d-volumetric`),f=await X({basemap:e.basemap,geometryType:c,sizeScheme:e.sizeScheme,worldScale:d,view:e.view}),p=f.scheme,{result:m,outlineResult:h}=t,g=m?.classBreakInfos??[],_=e.classificationMethod,v=e.normalizationType,y=u?p.marker:p,b=u?p.background:null,x=u?`point`:c,S=ke(y,x),C=d?oe({minSize:S[0],maxSize:S[1]},`height`):null,w=Fe({minSize:S[0],maxSize:C?C.maxSize:S[1]},g.length),T=h?.opacity,E=new a({backgroundFillSymbol:b&&L(c,{type:e.symbolType,color:b.color,outline:R(b,c,T)}),classBreakInfos:g.map((t,n)=>({minValue:t.minValue,maxValue:t.maxValue,symbol:L(x,{type:e.symbolType,color:y.color,size:w[n],widthAndDepth:C?.minSize,outline:R(y,x,T)}),label:t.label})),defaultLabel:s?n.other:null,defaultSymbol:s?L(x,{type:e.symbolType,color:y.noDataColor,size:z(y,x,!0),widthAndDepth:C?.minSize,outline:R(y,x,T)}):null,field:e.field,valueExpression:e.valueExpression,valueExpressionTitle:e.valueExpressionTitle,normalizationType:v,normalizationField:e.normalizationField,normalizationTotal:v===`percent-of-total`?m?.normalizationTotal:void 0,legendOptions:e.legendOptions,authoringInfo:new o({type:`class-breaks-size`,classificationMethod:_,standardDeviationInterval:e.standardDeviationInterval,dataSeriesName:e.dataSeriesName,dataSeriesCalculationName:e.dataSeriesCalculationName})});return _!==`standard-deviation`&&l({classBreakInfos:E.classBreakInfos,classificationMethod:_,normalizationType:v,round:!0}),h?.visualVariables?.length&&(E.visualVariables=h.visualVariables.map(e=>e.clone())),{renderer:E,sizeScheme:q(p),classBreaksResult:m,defaultValuesUsed:!!t.defaultValuesUsed,basemapId:f.basemapId,basemapTheme:f.basemapTheme}}async function $(e){let t=await _e(e),{view:n,field:r,valueExpression:i,minValue:a,maxValue:o,layer:s,normalizationField:c,signal:l,statistics:u,filter:d,dataSeriesName:f}=t,p=c?`field`:void 0,[m,h]=await Promise.all([u??(f?le({layer:s,view:n,signal:l,timeSeriesName:f,timeSeriesCalculationName:t.dataSeriesCalculationName,filter:d}):ae({layer:s,field:r,valueExpression:i,sqlExpression:t.sqlExpression,sqlWhere:t.sqlWhere,normalizationType:p,normalizationField:c,filter:d,minValue:a,maxValue:o,view:n,signal:l})),t.sizeOptimizationEnabled?_({view:n,layer:s,signal:l,filter:d}).catch(I):null]);return Ne(t,m,h,t.referenceSizeResult)}async function Le(e){let{view:t,filter:n,renderer:r,signal:i,creatorParameters:a}=await Te(e),{field:o,normalizationField:c,valueExpression:l,valueExpressionTitle:d,theme:f,layer:p,sizeOptimizationEnabled:m,spikeOptions:h,referenceSizeResult:g,dataSeriesName:v,dataSeriesCalculationName:y}=a,b=c?`field`:void 0,x=r.authoringInfo?.clone(),[S,C]=await Promise.all([(v?le({layer:p,view:t,signal:i,timeSeriesName:v,timeSeriesCalculationName:y,filter:n}):Promise.resolve(null)).then(e=>e??ae({layer:p,field:o,valueExpression:l,normalizationField:c,normalizationType:b,filter:n,view:t,signal:i})),m&&!g?_({view:t,layer:p,signal:i,filter:n}).catch(I):null]),w=Me(C,g,h,f),{minDataValue:E,maxDataValue:D}=Z(S,{theme:f,layer:p,field:o}),O=r.visualVariables?.find(T),k=(O?.stops?null:O)??new u({field:o??void 0,valueExpression:l,valueExpressionTitle:d,valueUnit:`unknown`,normalizationField:c});w&&(k.minSize=w[0],k.maxSize=w[1]),k.minDataValue=E,k.maxDataValue=D,v&&(k.valueExpression=l??null,k.valueExpressionTitle=d??null),Ae(k,f);let A=x.visualVariables.find(e=>e.type===`size`);A.dataSeriesName=v??A.dataSeriesName,A.dataSeriesCalculationName=y??A.dataSeriesCalculationName,A.minSliderValue=S.min,A.maxSliderValue=S.max;let j=f===`reference-size`;return(j||f===`spike`)&&(A.sizeStops=Q(k,f).map(({label:e,size:t,value:n})=>new s({label:e,size:t,value:n})),j&&(A.referenceSizeScale=g?.isGrid||m?t?.scale:void 0)),{visualVariables:f===`reference-size`||f===`spike`?[]:[k],isGrid:!!g?.isGrid,authoringInfo:x,statistics:S}}async function Re(e){let t=await ve(e),n={layer:t.layer,view:t.view,filter:t.filter,signal:t.signal},[r,i]=await Promise.all([$(Y(t)),t.outlineOptimizationEnabled?h(n).catch(I):null]),a=t.normalizationField;return Pe(r,i,a?`field`:void 0,a,t)}async function ze(e){let{renderer:t,view:n,signal:r,filter:i,creatorParameters:a,forBinning:o}=await Ee(e),{layer:s,sizeOptimizationEnabled:c,outlineOptimizationEnabled:l,theme:u,referenceSizeResult:d,valueExpression:f,valueExpressionTitle:p}=a,[m,g]=await Promise.all([Le({...e,referenceSizeResult:d}),l?h({layer:s,view:n,filter:i,signal:r}).catch(I):null]),_=u===`reference-size`,v=u===`spike`;S(t,m.visualVariables,j),S(t,g?.visualVariables,M),t.valueExpression=f??null,t.valueExpressionTitle=p??null,C(t,m.authoringInfo,`size`);let y=m.statistics;if(!_&&!v)return{renderer:t,statistics:y};if(v)return{renderer:await Ve({layer:s,renderer:t,forBinning:o,sizeStops:w(t,`size`,`spike`)?.sizeStops}),statistics:y};let b=m.isGrid;return{renderer:await Be({layer:s,renderer:t,view:n,forBinning:o,sizeOptimizationEnabled:c,sizeStops:w(t,`size`,`reference-size`)?.sizeStops,isGrid:b}),isGrid:b,statistics:y}}async function Be(n){let{layer:r,referenceSizeOptions:i,renderer:a,sizeScheme:c,sizeStops:l,typeScheme:u,view:d,isGrid:f}=await be(n),p=a.clone();p.authoringInfo??=new o;let m=p.authoringInfo.visualVariables.find(e=>e.theme===`reference-size`),h=n.field??m?.field,g=n.normalizationField??m?.normalizationField;if(!h)throw new t(`update-renderer-with-reference-size:invalid-parameters`,`'field' parameter or authoring info with 'field' is required.`);let _=y({view:d,field:h,normalizationField:g,sizeStops:l,sizeByScaleEnabled:f||!!n.sizeOptimizationEnabled}),v=i?.symbolStyle||m?.referenceSizeSymbolStyle||`circle`;if(p.type===`class-breaks`){let e=(`geometryType`in r?r.geometryType:null)===`polygon`&&c&&`marker`in c?c.marker:null;p.classBreakInfos.forEach(t=>{let n=e?.color??J(t.symbol,1);t.symbol.type===`cim`?b(t.symbol,{type:v,color:n,primitiveOverrides:_}):n&&(t.symbol=x({type:v,color:n,primitiveOverrides:_}))})}else if(p.type===`unique-value`){let t=p.uniqueValueGroups,n=(`geometryType`in r?r.geometryType:null)===`polygon`&&u&&`colors`in u?u.colors:null,i=n?e(n,p.uniqueValueInfos?.length??0):null,a=0;if(t){for(let e of t)for(let t of e.classes??[]){let e=i?i[a]:J(t.symbol,1);t.symbol?.type===`cim`?b(t.symbol,{type:v,color:e,primitiveOverrides:_}):e&&(t.symbol=x({type:v,color:e,primitiveOverrides:_})),a++}p.uniqueValueGroups=t}}return m&&(m.field=h,m.normalizationField=g,m.sizeStops=l.map(({label:e,size:t,value:n})=>new s({label:e,size:t,value:n})),m.referenceSizeScale=f||n.sizeOptimizationEnabled?d.scale:void 0,m.referenceSizeSymbolStyle=v),p}async function Ve(n){let{layer:r,renderer:i,sizeScheme:a,sizeStops:c,typeScheme:l,spikeOptions:u}=await xe(n),d=i.clone();d.authoringInfo??=new o;let f=d.authoringInfo.visualVariables.find(e=>e.theme===`spike`),p=n.field??f?.field,m=n.normalizationField??f?.normalizationField;if(!p)throw new t(`update-renderer-with-spike:invalid-parameters`,`'field' parameter or authoring info with 'field' is required.`);let h=ee({field:p,normalizationField:m,sizeStops:c}),g=`geometryType`in r?r.geometryType:null,_={primitiveOverrides:h,...u},y=u?.symbolStyle,b=y&&y.includes(`outline`)&&(y.includes(`solid-fill`)||y.includes(`gradient-fill`));if(d.type===`class-breaks`){if(a||b){let e=(g?await X({geometryType:g,sizeScheme:a,view:n.view}):null)?.scheme,t=g===`polygon`&&e&&`marker`in e?e.marker:e;a&&(_.color=t&&`color`in t?t?.color:void 0),b&&(_.strokeColor=t&&`outline`in t?t.outline.color:void 0)}d.classBreakInfos.forEach(e=>{if(e.symbol.type===`cim`)te(e.symbol,_);else{let t=_.color??J(e.symbol,1)??void 0;t&&(e.symbol=N({..._,color:t}))}})}else if(d.type===`unique-value`){let t=d.uniqueValueGroups,r=d.uniqueValueInfos?.length??0,i=null;if(l||b){let t=(g&&r?await v({numColors:r,geometryType:g,typeScheme:l,view:n.view}):null)?.scheme;if(l){let n=t&&`colors`in t?t.colors:null;i=n?e(n,r):null}b&&(_.strokeColor=t&&`outline`in t?t.outline.color:void 0)}let a=0;if(t){for(let e of t)for(let t of e.classes??[]){if(t.symbol?.type===`cim`)te(t.symbol,{..._,color:i?.[a]});else{let e=i?.[a]??J(t.symbol,1)??void 0;e&&(t.symbol=N({..._,color:e}))}a++}d.uniqueValueGroups=t}}return f&&(f.field=p,f.normalizationField=m,f.sizeStops=c.map(({label:e,size:t,value:n})=>new s({label:e,size:t,value:n})),y&&(f.spikeSymbolStyle=y)),d}async function He(e){let t=await Se(e);return Ie(t,await ie(Ce(t),t.outlineOptimizationEnabled))}async function Ue(e){let{renderer:t,creatorParameters:n}=await De(e),{outlineOptimizationEnabled:r,normalizationType:i,classificationMethod:a,valueExpression:o,valueExpressionTitle:s}=n;if(a===`manual`)return{renderer:t};let c=await ie(Ce(n),r),{result:u,outlineResult:d}=c,f=u.classBreakInfos;if(n.numClasses!==f.length){let{renderer:e}=await Ie(n,c);t.classBreakInfos=e.classBreakInfos}else t.classBreakInfos.forEach((e,t)=>{e.minValue=f[t].minValue,e.maxValue=f[t].maxValue,e.label=f[t].label}),a!==`standard-deviation`&&l({classBreakInfos:t.classBreakInfos,classificationMethod:a,normalizationType:i,round:!0});return t.normalizationTotal=i===`percent-of-total`?u.normalizationTotal:void 0,S(t,d?.visualVariables,M),t.valueExpression=o??null,t.valueExpressionTitle=s??null,{renderer:t}}async function We(e){let t=await we(e),{defaultSymbolEnabled:n,view:r,startTime:i,endTime:a,symbolType:o,minValue:s,maxValue:c,signal:l,filter:u,layer:d}=t,[f,p]=await Promise.all([t.unit?{unit:t.unit,statistics:null,valueExpression:null}:await m({view:r,layer:d,startTime:i,endTime:a,minValue:s,maxValue:c,signal:l,filter:u}),t.outlineOptimizationEnabled?h({layer:d,view:r,filter:u,signal:l}).catch(I):null]),{unit:g,statistics:_}=f,{valueExpression:v,title:y}=await ne(t,g),b=await Pe(await $(Y({layer:d,basemap:t.basemap,valueExpression:v,symbolType:o,statistics:_,legendOptions:{title:y},theme:t.theme,sizeScheme:t.sizeScheme,sizeOptimizationEnabled:t.sizeOptimizationEnabled,view:t.view,minValue:s,maxValue:c,filter:u,signal:l})),p,null,null,{layer:d,valueExpression:v,defaultSymbolEnabled:n,symbolType:o});return(b.renderer.authoringInfo?.visualVariables)?.forEach(e=>re(e,i,a,g)),{...b,unit:g}}async function Ge(e){let{renderer:t,creatorParameters:n}=await Oe(e),{layer:r,outlineOptimizationEnabled:i,sizeOptimizationEnabled:a,startTime:o,endTime:s,theme:c,view:l,signal:u,filter:d}=n,[f,p]=await Promise.all([m({view:l,layer:r,startTime:o,endTime:s,signal:u,filter:d}),i?h({layer:r,view:l,filter:d,signal:u}).catch(I):null]),{unit:g,statistics:_}=f,{valueExpression:v,title:y}=await ne(n,g),b=await $(Y({layer:r,valueExpression:v,statistics:_,legendOptions:{title:y},sizeOptimizationEnabled:a,theme:c,view:l,filter:d,signal:u}));return S(t,b.visualVariables,j),S(t,p?.visualVariables,M),t.authoringInfo=b.authoringInfo.clone(),(t.authoringInfo?.visualVariables)?.forEach(e=>re(e,o,s,g)),{renderer:t}}export{We as createAgeRenderer,He as createClassBreaksRenderer,Re as createContinuousRenderer,$ as createVisualVariables,Q as getSizeStopsForTheme,Ge as regenerateAgeRenderer,Ue as regenerateClassBreaksRenderer,ze as regenerateContinuousRenderer,Le as regenerateVisualVariables,Be as updateRendererWithReferenceSize,Ve as updateRendererWithSpike};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/6.0/LICENSE.txt */
2
- import e from"../../../core/Error.js";async function t(t,n){let{layer:r,view:i,forBinning:a,filter:o}=t;if(!r||!i)throw new e(`${n}:missing-parameters`,`'layer' and 'view' parameters are required`);await r.load();let s=`featureReduction`in r?r.featureReduction:null;if(a){if(s?.type!==`binning`)throw new e(`${n}:invalid-parameters`,`'layer' must have 'featureReduction' property defined with 'binning' type when 'forBinning' parameter is true`);if(o)throw new e(`${n}:invalid-parameters`,`'filter' parameter is not supported when 'forBinning' parameter is true`)}return t}async function n(t){let{layer:n,forBinning:r,renderer:i}=t;await n.load();let a=`featureReduction`in n?n.featureReduction:null,o=i?.clone()??(r&&a?.type===`binning`?a?.renderer?.clone():`renderer`in n?n.renderer?.clone():null);if(!o)throw new e(`get-renderer-to-update:invalid-parameters`,`renderer not available`);return o}function r(e,t,n){return(e?.authoringInfo?.visualVariables)?.find(e=>n===`reference-size`?e.type===t&&e.theme===`reference-size`:n===`spike`?e.type===t&&e.theme===`spike`:e.type===t)}function i(e){if(!e)return null;let t=e.type,n=`visualVariables`in e?e.visualVariables:null,i=n?.find(p),a=n?.find(g),o=e.authoringInfo,s=r(e,`color`),c=r(e,`size`),l=r(e,`size`,`reference-size`),u=r(e,`size`,`spike`);if(t===`class-breaks`){if(o?.type===`univariate-color-size`)return`univariate-color-size`;if(i)return a?c?.units?`color-size-age`:s?.units?`color-age-size`:`color-size`:s?.units?`color-age`:l||u?`color-size`:`color-continuous`;if(a)return c?.units?`size-age`:`size-continuous`;if(e.classBreakInfos.length>1)return o?.type===`class-breaks-color`?`color-class-breaks`:o?.type===`class-breaks-size`?`size-class-breaks`:null;if(l||u)return`size-continuous`}return t===`unique-value`?e.valueExpression?o?.type===`predominance`?`predominance`:o?.type===`relationship`?a||l||u?`relationship-size`:`relationship`:a||l||u?`type-size`:`type`:a?c?.units?`type-size-age`:`type-size`:l||u?`type-size`:`type`:t===`pie-chart`?`pie-chart`:t===`dot-density`?`dot-density`:t===`heatmap`?`heatmap`:t===`simple`?`location`:null}function a(e){return!!e.visualVariables?.some(_)}function o(e){return!!e.visualVariables?.some(v)}function s(e){return e?.findIndex(_)??-1}function c(e){return e?.findIndex(g)??-1}function l(e){return e?.findIndex(p)??-1}function u(e){return e?.findIndex(m)??-1}function d(e){return e?.findIndex(h)??-1}function f(e){return e?.findIndex(v)??-1}function p(e){return e.type===`color`}function m(e){return e.type===`opacity`}function h(e){return e.type===`rotation`}function g(e){return e.type===`size`&&e.target!==`outline`&&e.valueExpression!==`$view.scale`}function _(e){return e.type===`size`&&e.target===`outline`}function v(e){return e.type===`size`&&e.valueExpression===`$view.scale`&&e.target!==`outline`&&Array.isArray(e.stops)}function y(e,t,n){let r=e.visualVariables,i=n(r);if(!t||Array.isArray(t)&&!t.length)return;Array.isArray(t)||(t=[t]);let a=t.map(e=>e.clone());r?i>-1?r.splice(i,1,...a):r.push(...a):e.visualVariables=a}function b(e,t,n){let i=t?.visualVariables.find(e=>e.type===n),a=r(e,n);a&&i&&(a.dataSeriesName=i.dataSeriesName,a.dataSeriesCalculationName=i.dataSeriesCalculationName,a.minSliderValue=i.minSliderValue,a.maxSliderValue=i.maxSliderValue,n===`size`&&(a.theme===`reference-size`||a.theme===`spike`)&&(a.sizeStops=i.sizeStops?.map(e=>e.clone()),a.theme===`reference-size`&&(a.referenceSizeScale=i.referenceSizeScale)))}export{l as findColorVVIndex,u as findOpacityVVIndex,s as findOutlineVVIndex,d as findRotationVVIndex,f as findScaleDependentSizeVVIndex,c as findSizeVVIndex,r as getAuthoringInfoVisualVariable,n as getRendererToUpdate,i as getStyleType,a as hasOutlineVV,o as hasScaleDependentSizeVV,p as isColorVV,m as isOpacityVV,_ as isOutlineVV,h as isRotationVV,v as isScaleDependentSizeVV,g as isSizeVV,t as processRegenerateParams,y as spliceVisualVariables,b as updateAuthoringInfoVisualVariable};
2
+ import e from"../../../core/Error.js";async function t(t,n){let{layer:r,view:i,forBinning:a,filter:o}=t;if(!r||!i)throw new e(`${n}:missing-parameters`,`'layer' and 'view' parameters are required`);await r.load();let s=`featureReduction`in r?r.featureReduction:null;if(a){if(s?.type!==`binning`)throw new e(`${n}:invalid-parameters`,`'layer' must have 'featureReduction' property defined with 'binning' type when 'forBinning' parameter is true`);if(o)throw new e(`${n}:invalid-parameters`,`'filter' parameter is not supported when 'forBinning' parameter is true`)}return t}async function n(t){let{layer:n,forBinning:r,renderer:i}=t;await n.load();let a=`featureReduction`in n?n.featureReduction:null,o=i?.clone()??(r&&a?.type===`binning`?a?.renderer?.clone():`renderer`in n?n.renderer?.clone():null);if(!o)throw new e(`get-renderer-to-update:invalid-parameters`,`renderer not available`);return o}function r(e,t,n){return(e?.authoringInfo?.visualVariables)?.find(e=>n===`reference-size`?e.type===t&&e.theme===`reference-size`:n===`spike`?e.type===t&&e.theme===`spike`:e.type===t)}function i(e){if(!e)return null;let t=e.type,n=`visualVariables`in e?e.visualVariables:null,i=n?.find(p),a=n?.find(g),o=e.authoringInfo,s=r(e,`color`),c=r(e,`size`),l=r(e,`size`,`reference-size`),u=r(e,`size`,`spike`);if(t===`class-breaks`){if(o?.type===`univariate-color-size`)return`univariate-color-size`;if(o?.type===`class-breaks-color`)return`color-class-breaks`;if(o?.type===`class-breaks-size`)return`size-class-breaks`;if(i)return a?c?.units?`color-size-age`:s?.units?`color-age-size`:`color-size`:s?.units?`color-age`:l||u?`color-size`:`color-continuous`;if(a)return c?.units?`size-age`:`size-continuous`;if(e.classBreakInfos.length>1)return null;if(l||u)return`size-continuous`}return t===`unique-value`?e.valueExpression?o?.type===`predominance`?`predominance`:o?.type===`relationship`?a||l||u?`relationship-size`:`relationship`:a||l||u?`type-size`:`type`:a?c?.units?`type-size-age`:`type-size`:l||u?`type-size`:`type`:t===`pie-chart`?`pie-chart`:t===`dot-density`?`dot-density`:t===`heatmap`?`heatmap`:t===`simple`?`location`:null}function a(e){return!!e.visualVariables?.some(_)}function o(e){return!!e.visualVariables?.some(v)}function s(e){return e?.findIndex(_)??-1}function c(e){return e?.findIndex(g)??-1}function l(e){return e?.findIndex(p)??-1}function u(e){return e?.findIndex(m)??-1}function d(e){return e?.findIndex(h)??-1}function f(e){return e?.findIndex(v)??-1}function p(e){return e.type===`color`}function m(e){return e.type===`opacity`}function h(e){return e.type===`rotation`}function g(e){return e.type===`size`&&e.target!==`outline`&&e.valueExpression!==`$view.scale`}function _(e){return e.type===`size`&&e.target===`outline`}function v(e){return e.type===`size`&&e.valueExpression===`$view.scale`&&e.target!==`outline`&&Array.isArray(e.stops)}function y(e,t,n){let r=e.visualVariables,i=n(r);if(!t||Array.isArray(t)&&!t.length)return;Array.isArray(t)||(t=[t]);let a=t.map(e=>e.clone());r?i>-1?r.splice(i,1,...a):r.push(...a):e.visualVariables=a}function b(e,t,n){let i=t?.visualVariables.find(e=>e.type===n),a=r(e,n);a&&i&&(a.dataSeriesName=i.dataSeriesName,a.dataSeriesCalculationName=i.dataSeriesCalculationName,a.minSliderValue=i.minSliderValue,a.maxSliderValue=i.maxSliderValue,n===`size`&&(a.theme===`reference-size`||a.theme===`spike`)&&(a.sizeStops=i.sizeStops?.map(e=>e.clone()),a.theme===`reference-size`&&(a.referenceSizeScale=i.referenceSizeScale)))}export{l as findColorVVIndex,u as findOpacityVVIndex,s as findOutlineVVIndex,d as findRotationVVIndex,f as findScaleDependentSizeVVIndex,c as findSizeVVIndex,r as getAuthoringInfoVisualVariable,n as getRendererToUpdate,i as getStyleType,a as hasOutlineVV,o as hasScaleDependentSizeVV,p as isColorVV,m as isOpacityVV,_ as isOutlineVV,h as isRotationVV,v as isScaleDependentSizeVV,g as isSizeVV,t as processRegenerateParams,y as spliceVisualVariables,b as updateAuthoringInfoVisualVariable};
@@ -26,6 +26,7 @@ import type { TimeSliderSettings } from "../widgets/TimeSlider/types.js";
26
26
  * If canceled, the promise will be rejected with an error named `AbortError`.
27
27
  * See also [AbortController](https://developer.mozilla.org/docs/Web/API/AbortController).
28
28
  * @returns Returns a promise that resolves to a [TimeExtent](https://developers.arcgis.com/javascript/latest/references/core/time/TimeExtent/).
29
+ * @see [FeatureLayer.timeInfo](https://developers.arcgis.com/javascript/latest/references/core/layers/FeatureLayer/#timeInfo)
29
30
  * @example
30
31
  * // Get the time extent of all layers in the view.
31
32
  * const fullTimeExtent = await getTimeExtentFromLayers(view.map.allLayers);
@@ -35,6 +36,16 @@ import type { TimeSliderSettings } from "../widgets/TimeSlider/types.js";
35
36
  * earthquakes,
36
37
  * emergencyCalls
37
38
  * ]);
39
+ * @example
40
+ * // update layer's timeInfo at runtime
41
+ * featureLayer.timeInfo = {
42
+ * startField: "DateField",
43
+ * timeZone: "UTC"
44
+ * };
45
+ *
46
+ * // calculate the fullTimeExtent based on startField
47
+ * const fullTimeExtent = getTimeExtentFromLayers([featureLayer]);
48
+ * featureLayer.timeInfo.fullTimeExtent = fullTimeExtent;
38
49
  */
39
50
  export function getTimeExtentFromLayers(layers: ReadonlyArrayOrCollection<Layer>, signal?: AbortSignal | null | undefined): Promise<TimeExtent>;
40
51