@arcgis/core 5.2.0-next.125 → 5.2.0-next.126

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 (283) hide show
  1. package/analysis/ElevationProfile/ElevationProfileDisplayUnits.d.ts +3 -2
  2. package/analysis/VolumeMeasurement/VolumeMeasurementDisplayUnits.d.ts +1 -0
  3. package/arcgisGlobal.d.ts +1 -0
  4. package/assets/esri/core/workers/RemoteClient.js +1 -1
  5. package/assets/esri/core/workers/chunks/{fe9582bc2244667e40ab.js → 05afa8c2b5929ce0545a.js} +1 -1
  6. package/assets/esri/core/workers/chunks/0a20f84b5f004a77a9f9.js +1 -0
  7. package/assets/esri/core/workers/chunks/{cfd56e0a716baf95e17b.js → 0a2b7c691a577cb3d189.js} +1 -1
  8. package/assets/esri/core/workers/chunks/{6cf34cfdd063a1b6fe3e.js → 0ccd4200c5a2a5de6e16.js} +1 -1
  9. package/assets/esri/core/workers/chunks/{bdf012e591a8476db467.js → 1406a884241809b62bff.js} +1 -1
  10. package/assets/esri/core/workers/chunks/17218d714cb07b607c2f.js +1 -0
  11. package/assets/esri/core/workers/chunks/1d040aa8951fff3141d9.js +1 -0
  12. package/assets/esri/core/workers/chunks/30604a29df320d7a4c6b.js +1 -0
  13. package/assets/esri/core/workers/chunks/3ef367c9b7bf1588307d.js +1 -0
  14. package/assets/esri/core/workers/chunks/{5b9b76e180cf206a8a0c.js → 4327d2c39a660bd89da7.js} +1 -1
  15. package/assets/esri/core/workers/chunks/4678a8170d8a3ccd1a7b.js +1 -0
  16. package/assets/esri/core/workers/chunks/474d9541d387b31ad275.js +1 -0
  17. package/assets/esri/core/workers/chunks/{f05becec0952a61bc654.js → 4d18451e0ea6ca54101a.js} +1 -1
  18. package/assets/esri/core/workers/chunks/{26bc509a031788bfa678.js → 4f464047c6f6c9486efd.js} +1 -1
  19. package/assets/esri/core/workers/chunks/{58528ccb7f72ae76d52b.js → 540f60e31b19d85e9371.js} +1 -1
  20. package/assets/esri/core/workers/chunks/{44857a76be2c0ac65bb9.js → 55a560fd872f7463b33d.js} +1 -1
  21. package/assets/esri/core/workers/chunks/56acda1eed3a013430e2.js +1 -0
  22. package/assets/esri/core/workers/chunks/{1f55701d23a5e5a0c70c.js → 57ab87e70ef85b9405f9.js} +122 -122
  23. package/assets/esri/core/workers/chunks/{f0901f9c7135b708434f.js → 5adf2792416b22cd602f.js} +1 -1
  24. package/assets/esri/core/workers/chunks/5fe5ef5ccf480634d159.js +1 -0
  25. package/assets/esri/core/workers/chunks/67678054342178b601cf.js +1 -0
  26. package/assets/esri/core/workers/chunks/67dcf9b873cb037b2647.js +1 -0
  27. package/assets/esri/core/workers/chunks/76548469fe1b9c3b2051.js +1 -0
  28. package/assets/esri/core/workers/chunks/7d6da4e89aa951e6523f.js +1 -0
  29. package/assets/esri/core/workers/chunks/7dd94567833386dc74de.js +1 -0
  30. package/assets/esri/core/workers/chunks/806f96ad09e882be41af.js +1 -0
  31. package/assets/esri/core/workers/chunks/{bbaaebe1774a22dba39b.js → 97602019a1ccad22a03a.js} +1 -1
  32. package/assets/esri/core/workers/chunks/{378bdb4e5cd1ebada1f4.js → 9ca98fffd43e63d5ade3.js} +1 -1
  33. package/assets/esri/core/workers/chunks/9d6a96e4c7ccedcb0c13.js +1 -0
  34. package/assets/esri/core/workers/chunks/9ec04faad97be55309b8.js +1 -0
  35. package/assets/esri/core/workers/chunks/a08385ebf1715414c1a6.js +1 -0
  36. package/assets/esri/core/workers/chunks/{e22a013ec38989caf9de.js → a790fc6b22acf651574b.js} +1 -1
  37. package/assets/esri/core/workers/chunks/{2f52ad525744b8793d49.js → a8258636096416c837a2.js} +1 -1
  38. package/assets/esri/core/workers/chunks/{813dd84933b407c8fe86.js → b34305474a861aaf6ccb.js} +1 -1
  39. package/assets/esri/core/workers/chunks/c5b733c3a5b2680042a2.js +1 -0
  40. package/assets/esri/core/workers/chunks/{f0709c48daca93e759c8.js → c692e583e87af58f6d91.js} +1 -1
  41. package/assets/esri/core/workers/chunks/{4f7e8e4ddf52b5245ea4.js → c77496c350004ee66eb2.js} +1 -1
  42. package/assets/esri/core/workers/chunks/{0fba5c0e89b057da548d.js → cb7cb7d57c4e7f76600f.js} +1 -1
  43. package/assets/esri/core/workers/chunks/d371d9279b30548efa02.js +1 -0
  44. package/assets/esri/core/workers/chunks/d5f0fed415b5b155d57c.js +1 -0
  45. package/assets/esri/core/workers/chunks/{3f082329a544c2c1d62d.js → d5f72670634e73c0b53a.js} +1 -1
  46. package/assets/esri/core/workers/chunks/d6e914f6ed45ea59034e.js +1 -0
  47. package/assets/esri/core/workers/chunks/{5afc12671a9a1bb6c56c.js → dc52e036547612949d32.js} +1 -1
  48. package/assets/esri/core/workers/chunks/e0894a308c84d5c158b0.js +1 -0
  49. package/assets/esri/core/workers/chunks/e1ae83ff3e0225708d4d.js +1 -0
  50. package/assets/esri/core/workers/chunks/{df79c00b5ddbef7148a0.js → eaa7cb3ffa8c11706a09.js} +1 -1
  51. package/assets/esri/core/workers/chunks/eebbc86a15ae3adb5f38.js +1 -0
  52. package/assets/esri/core/workers/chunks/fdbda3d2afea25142b86.js +1 -0
  53. package/assets/esri/libs/pdfjs/pdf.worker.mjs +4 -63051
  54. package/assets/esri/widgets/Editor/t9n/messages.ar.json +1 -1
  55. package/assets/esri/widgets/Editor/t9n/messages.bg.json +1 -1
  56. package/assets/esri/widgets/Editor/t9n/messages.bs.json +1 -1
  57. package/assets/esri/widgets/Editor/t9n/messages.ca.json +1 -1
  58. package/assets/esri/widgets/Editor/t9n/messages.cs.json +1 -1
  59. package/assets/esri/widgets/Editor/t9n/messages.da.json +1 -1
  60. package/assets/esri/widgets/Editor/t9n/messages.de.json +1 -1
  61. package/assets/esri/widgets/Editor/t9n/messages.el.json +1 -1
  62. package/assets/esri/widgets/Editor/t9n/messages.es.json +1 -1
  63. package/assets/esri/widgets/Editor/t9n/messages.et.json +1 -1
  64. package/assets/esri/widgets/Editor/t9n/messages.fi.json +1 -1
  65. package/assets/esri/widgets/Editor/t9n/messages.fr.json +1 -1
  66. package/assets/esri/widgets/Editor/t9n/messages.he.json +1 -1
  67. package/assets/esri/widgets/Editor/t9n/messages.hr.json +1 -1
  68. package/assets/esri/widgets/Editor/t9n/messages.hu.json +1 -1
  69. package/assets/esri/widgets/Editor/t9n/messages.id.json +1 -1
  70. package/assets/esri/widgets/Editor/t9n/messages.it.json +1 -1
  71. package/assets/esri/widgets/Editor/t9n/messages.ja.json +1 -1
  72. package/assets/esri/widgets/Editor/t9n/messages.ko.json +1 -1
  73. package/assets/esri/widgets/Editor/t9n/messages.lt.json +1 -1
  74. package/assets/esri/widgets/Editor/t9n/messages.lv.json +1 -1
  75. package/assets/esri/widgets/Editor/t9n/messages.nl.json +1 -1
  76. package/assets/esri/widgets/Editor/t9n/messages.no.json +1 -1
  77. package/assets/esri/widgets/Editor/t9n/messages.pl.json +1 -1
  78. package/assets/esri/widgets/Editor/t9n/messages.pt-BR.json +1 -1
  79. package/assets/esri/widgets/Editor/t9n/messages.pt-PT.json +1 -1
  80. package/assets/esri/widgets/Editor/t9n/messages.ro.json +1 -1
  81. package/assets/esri/widgets/Editor/t9n/messages.ru.json +1 -1
  82. package/assets/esri/widgets/Editor/t9n/messages.sk.json +1 -1
  83. package/assets/esri/widgets/Editor/t9n/messages.sl.json +1 -1
  84. package/assets/esri/widgets/Editor/t9n/messages.sr.json +1 -1
  85. package/assets/esri/widgets/Editor/t9n/messages.sv.json +1 -1
  86. package/assets/esri/widgets/Editor/t9n/messages.th.json +1 -1
  87. package/assets/esri/widgets/Editor/t9n/messages.tr.json +1 -1
  88. package/assets/esri/widgets/Editor/t9n/messages.uk.json +1 -1
  89. package/assets/esri/widgets/Editor/t9n/messages.vi.json +1 -1
  90. package/assets/esri/widgets/Editor/t9n/messages.zh-CN.json +1 -1
  91. package/assets/esri/widgets/Editor/t9n/messages.zh-HK.json +1 -1
  92. package/assets/esri/widgets/Editor/t9n/messages.zh-TW.json +1 -1
  93. package/chunks/GlobalIllumination.glsl.js +9 -9
  94. package/chunks/GlobalIlluminationBlur.glsl.js +8 -8
  95. package/chunks/HeatmapDensity.glsl.js +5 -5
  96. package/chunks/Pattern.glsl.js +30 -30
  97. package/chunks/RibbonLine.glsl.js +19 -19
  98. package/config.js +1 -1
  99. package/core/accessorSupport/types.d.ts +5 -1
  100. package/interfaces.d.ts +3 -0
  101. package/kernel.js +1 -1
  102. package/layers/ParquetLayer.d.ts +3 -2
  103. package/layers/ParquetLayer.js +1 -1
  104. package/layers/SceneLayer.js +1 -1
  105. package/layers/geospatialPDF/GeospatialPDFFrame.js +1 -1
  106. package/layers/geospatialPDF/GeospatialPDFLayerWorker.js +2 -2
  107. package/layers/geospatialPDF/GeospatialPDFWorkerClient.js +1 -1
  108. package/layers/geospatialPDF/LGIDictMapFrame.js +1 -1
  109. package/layers/geospatialPDF/ViewportMeasureFrame.js +1 -1
  110. package/layers/geospatialPDF/geospatialPDFParserUtils.js +2 -0
  111. package/layers/geospatialPDF/projectionToWKTUtils.js +2 -0
  112. package/layers/geospatialPDF/renderExtentUtils.js +1 -1
  113. package/layers/geospatialPDF/sharedUtils.js +1 -1
  114. package/layers/orientedImagery/transformations/imageToWorld.js +1 -1
  115. package/layers/orientedImagery/transformations/utils.js +1 -1
  116. package/layers/raster/datasets/GeospatialPDFRaster.js +1 -1
  117. package/layers/raster/types.d.ts +6 -0
  118. package/layers/support/TimeSeriesCalculation.d.ts +32 -0
  119. package/layers/support/TimeSeriesCalculation.js +2 -0
  120. package/layers/support/TimeSeriesInfo.d.ts +19 -0
  121. package/layers/support/TimeSeriesInfo.js +1 -1
  122. package/layers/support/commonProperties.js +1 -1
  123. package/layers/support/timeSeriesUtils.d.ts +25 -1
  124. package/layers/support/timeSeriesUtils.js +1 -1
  125. package/layers/types.d.ts +1 -0
  126. package/package.json +2 -2
  127. package/popup/FeatureContentCollection.d.ts +4 -1
  128. package/popup/FeatureContentCollection.js +1 -1
  129. package/popup/types.d.ts +14 -3
  130. package/portal/schemas/definitions.js +1 -1
  131. package/portal/schemas/sceneLayerItem.js +1 -1
  132. package/renderers/support/AuthoringInfo.d.ts +8 -1
  133. package/renderers/support/AuthoringInfo.js +1 -1
  134. package/renderers/support/AuthoringInfoVisualVariable.d.ts +8 -1
  135. package/renderers/support/AuthoringInfoVisualVariable.js +1 -1
  136. package/rest/imageService/fetchRasterInfo.js +1 -1
  137. package/rest/knowledgeGraph/DataModel.js +1 -1
  138. package/smartMapping/renderers/color.d.ts +12 -0
  139. package/smartMapping/renderers/color.js +1 -1
  140. package/smartMapping/renderers/opacity.d.ts +6 -0
  141. package/smartMapping/renderers/opacity.js +1 -1
  142. package/smartMapping/renderers/size.d.ts +12 -0
  143. package/smartMapping/renderers/size.js +1 -1
  144. package/smartMapping/renderers/support/regenerateUtils.js +1 -1
  145. package/smartMapping/renderers/support/rendererUtils.js +1 -1
  146. package/smartMapping/renderers/support/timeSeriesUtils.js +1 -1
  147. package/smartMapping/renderers/type.d.ts +6 -0
  148. package/smartMapping/renderers/type.js +1 -1
  149. package/smartMapping/renderers/univariateColorSize.d.ts +6 -0
  150. package/smartMapping/renderers/univariateColorSize.js +1 -1
  151. package/support/revision.js +1 -1
  152. package/views/2d/analysis/AreaMeasurement/AreaMeasurementTool.js +1 -1
  153. package/views/2d/analysis/AreaMeasurementAnalysisView2D.d.ts +8 -0
  154. package/views/2d/analysis/AreaMeasurementAnalysisView2D.js +1 -1
  155. package/views/2d/analysis/DistanceMeasurement/DistanceMeasurementTool.js +1 -1
  156. package/views/2d/analysis/DistanceMeasurementAnalysisView2D.d.ts +8 -0
  157. package/views/2d/analysis/DistanceMeasurementAnalysisView2D.js +1 -1
  158. package/views/2d/analysis/ElevationProfileAnalysisView2D.d.ts +3 -2
  159. package/views/3d/analysis/AreaMeasurementAnalysisView3D.js +1 -1
  160. package/views/3d/analysis/Dimension/DimensionController.js +1 -1
  161. package/views/3d/analysis/DirectLineMeasurementAnalysisView3D.js +1 -1
  162. package/views/3d/analysis/ElevationProfileAnalysisView3D.d.ts +3 -2
  163. package/views/3d/analysis/LineOfSight/LineOfSightEditTool.js +1 -1
  164. package/views/3d/analysis/LineOfSight/LineOfSightItemTool.js +1 -1
  165. package/views/3d/analysis/LineOfSight/lineOfSightPlacementUtils.js +1 -1
  166. package/views/3d/analysis/Viewshed/ViewshedEditTool.js +1 -1
  167. package/views/3d/analysis/Viewshed/ViewshedPlacementController.js +1 -1
  168. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementShiftTool.js +1 -1
  169. package/views/3d/analysis/VolumeMeasurementAnalysisView3D.d.ts +1 -0
  170. package/views/3d/analysis/VolumeMeasurementAnalysisView3D.js +1 -1
  171. package/views/3d/input/handlers/DragRotate.js +1 -1
  172. package/views/3d/input/handlers/PinchAndPanNavigation.js +1 -1
  173. package/views/3d/input/handlers/ground/GroundDoubleClickMove.js +1 -1
  174. package/views/3d/input/handlers/ground/GroundNavigation.js +1 -1
  175. package/views/3d/state/Constraints.js +1 -1
  176. package/views/3d/state/controllers/GroundNavigationController.js +1 -1
  177. package/views/3d/state/controllers/RotateController.js +1 -1
  178. package/views/3d/support/engineContent/line.js +1 -1
  179. package/views/3d/support/planarDistanceToGroundRatio.js +2 -0
  180. package/views/3d/terrain/OverlayManager.js +1 -1
  181. package/views/3d/terrain/OverlayRenderer.js +1 -1
  182. package/views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js +13 -13
  183. package/views/3d/webgl-engine/core/shaderLibrary/shading/MarkerSizing.glsl.js +2 -2
  184. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIllumination.glsl.js +1 -1
  185. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIllumination.js +1 -1
  186. package/views/3d/webgl-engine/lib/BindParameters.js +1 -1
  187. package/views/3d/webgl-engine/lib/GaussianSplatRenderUtils.js +1 -1
  188. package/views/3d/webgl-engine/lib/GaussianSplatShadows.js +1 -1
  189. package/views/3d/webgl-engine/lib/SortedRenderGeometryRenderer.js +1 -1
  190. package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
  191. package/views/DOMContainer.js +1 -1
  192. package/views/analysis/ElevationProfile/ElevationProfileController.js +1 -1
  193. package/views/analysis/LengthDimensionResult.d.ts +4 -1
  194. package/views/draw/support/managers/TooltipManager.js +1 -1
  195. package/views/interactive/options/SnappingOptions.d.ts +4 -2
  196. package/views/interactive/options/SnappingOptions.js +1 -1
  197. package/views/interactive/options/ViewOptions.d.ts +18 -0
  198. package/views/interactive/options/bindViewToolOptions.js +2 -0
  199. package/views/interactive/snapping/SnappingManagerPool.js +1 -1
  200. package/views/interactive/snapping/allLayerSnapping.js +1 -1
  201. package/views/overlay/FocusRegionOverlayItem.js +1 -1
  202. package/views/selection/SelectionOperation.d.ts +27 -1
  203. package/views/selection/types.d.ts +8 -20
  204. package/widgets/AreaMeasurement2D/AreaMeasurement2DViewModel.d.ts +1 -0
  205. package/widgets/AreaMeasurement2D/AreaMeasurement2DViewModel.js +1 -1
  206. package/widgets/AreaMeasurement2D.js +1 -1
  207. package/widgets/BasemapLayerList/BasemapLayerListViewModel.d.ts +1 -0
  208. package/widgets/BasemapLayerList.d.ts +1 -0
  209. package/widgets/BatchAttributeForm/expressions/types.d.ts +1 -0
  210. package/widgets/BatchAttributeForm/types.d.ts +5 -1
  211. package/widgets/BatchAttributeForm.d.ts +1 -0
  212. package/widgets/Bookmarks/BookmarksViewModel.d.ts +1 -0
  213. package/widgets/Bookmarks.d.ts +1 -0
  214. package/widgets/CatalogLayerList/CatalogLayerListViewModel.d.ts +1 -0
  215. package/widgets/CatalogLayerList.d.ts +1 -0
  216. package/widgets/DistanceMeasurement2D/DistanceMeasurement2DViewModel.d.ts +1 -0
  217. package/widgets/DistanceMeasurement2D/DistanceMeasurement2DViewModel.js +1 -1
  218. package/widgets/DistanceMeasurement2D.js +1 -1
  219. package/widgets/Editor.d.ts +1 -0
  220. package/widgets/FeatureForm.d.ts +1 -0
  221. package/widgets/FeatureTable/FeatureTableViewModel.d.ts +14 -0
  222. package/widgets/FeatureTable/FeatureTableViewModel.js +1 -1
  223. package/widgets/FeatureTable/support/FeatureStore.d.ts +14 -0
  224. package/widgets/FeatureTable/support/FeatureStore.js +1 -1
  225. package/widgets/FeatureTable.d.ts +1 -0
  226. package/widgets/FeatureTemplates.d.ts +1 -0
  227. package/widgets/Features/FeaturesViewModel.d.ts +1 -0
  228. package/widgets/Features.d.ts +2 -1
  229. package/widgets/HistogramRangeSlider.d.ts +1 -0
  230. package/widgets/Home/HomeViewModel.d.ts +1 -0
  231. package/widgets/Home.d.ts +1 -0
  232. package/widgets/LayerList/LayerListViewModel.d.ts +1 -0
  233. package/widgets/LayerList.d.ts +1 -0
  234. package/widgets/Locate/LocateViewModel.d.ts +1 -0
  235. package/widgets/Locate.d.ts +1 -0
  236. package/widgets/OrientedImageryViewer/adapters/view/SceneViewAdapter.js +1 -1
  237. package/widgets/OrientedImageryViewer/navigation/NavigationManagerPanoramic.js +1 -1
  238. package/widgets/OrientedImageryViewer/types.d.ts +4 -1
  239. package/widgets/OrientedImageryViewer.d.ts +4 -1
  240. package/widgets/Popup.d.ts +1 -0
  241. package/widgets/Print/PrintViewModel.d.ts +1 -0
  242. package/widgets/Print.d.ts +1 -0
  243. package/widgets/Search.d.ts +1 -0
  244. package/widgets/Sketch.d.ts +1 -0
  245. package/widgets/Slider.d.ts +4 -0
  246. package/widgets/TimeSlider.d.ts +1 -0
  247. package/widgets/Track/TrackViewModel.d.ts +1 -0
  248. package/widgets/Track.d.ts +1 -0
  249. package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.d.ts +1 -0
  250. package/widgets/UtilityNetworkTrace.d.ts +1 -0
  251. package/widgets/ValuePicker/types.d.ts +1 -0
  252. package/widgets/ValuePicker.d.ts +1 -0
  253. package/widgets/smartMapping/SmartMappingSliderBase.d.ts +1 -0
  254. package/widgets/support/SelectionList/types.d.ts +2 -0
  255. package/widgets/support/SelectionToolbar/SelectionToolbarViewModel.d.ts +2 -1
  256. package/assets/esri/core/workers/chunks/0148cb611bf7c8c5fe8a.js +0 -1
  257. package/assets/esri/core/workers/chunks/0a4a5ed831a4e4d8e0fc.js +0 -1
  258. package/assets/esri/core/workers/chunks/0acc754907395e83bbc6.js +0 -1
  259. package/assets/esri/core/workers/chunks/0f8ff964461cf8e0673b.js +0 -1
  260. package/assets/esri/core/workers/chunks/1e46703cb566c25458ad.js +0 -1
  261. package/assets/esri/core/workers/chunks/25c90092def215949db9.js +0 -1
  262. package/assets/esri/core/workers/chunks/2a34760b3f0c134898ec.js +0 -1
  263. package/assets/esri/core/workers/chunks/38890ac5917942374ab8.js +0 -1
  264. package/assets/esri/core/workers/chunks/3b4ceaf21be540cb3499.js +0 -1
  265. package/assets/esri/core/workers/chunks/4c4ba466e23159991322.js +0 -1
  266. package/assets/esri/core/workers/chunks/606ac9358f508bda94f2.js +0 -1
  267. package/assets/esri/core/workers/chunks/6c4def0faaef861a09c9.js +0 -1
  268. package/assets/esri/core/workers/chunks/7285a37cd5359aa4bac5.js +0 -1
  269. package/assets/esri/core/workers/chunks/753d1ff177ecee8e2377.js +0 -1
  270. package/assets/esri/core/workers/chunks/8a8e94b5d7d153361b0b.js +0 -1
  271. package/assets/esri/core/workers/chunks/923c45ebcf45d9ce8ae0.js +0 -1
  272. package/assets/esri/core/workers/chunks/9af36ee6a0df224859bc.js +0 -1
  273. package/assets/esri/core/workers/chunks/a7ce5b958dfeb240c4a5.js +0 -1
  274. package/assets/esri/core/workers/chunks/aed479c14d93955f4798.js +0 -1
  275. package/assets/esri/core/workers/chunks/be52c319a0a81ce1ba36.js +0 -1
  276. package/assets/esri/core/workers/chunks/c0ec87800faf99cbd8bd.js +0 -1
  277. package/assets/esri/core/workers/chunks/ca5a4f62b09cc8579dc0.js +0 -1
  278. package/assets/esri/core/workers/chunks/d090baaa974e1e83fa44.js +0 -1
  279. package/assets/esri/core/workers/chunks/e9f8325a4cf89ae816cc.js +0 -1
  280. package/assets/esri/core/workers/chunks/ed7d4e8725aaa0ca4589.js +0 -1
  281. package/assets/esri/core/workers/chunks/f4572ad25712d204f258.js +0 -1
  282. package/layers/geospatialPDF/GeospatialPDFParserUtils.js +0 -2
  283. package/layers/geospatialPDF/Projection.js +0 -2
@@ -1,25 +1,25 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{sliceDraw as e}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as o}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{ObjectAndLayerIdColor as t}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/ObjectAndLayerIdColor.glsl.js";import{VertexColor as r}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexColor.glsl.js";import{VisualVariables as a}from"../views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js";import{ColorConversion as i}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{addProjViewLocalOrigin as l,addCameraPosition as n}from"../views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js";import{Float4PassUniform as c}from"../views/3d/webgl-engine/core/shaderModules/Float4PassUniform.js";import{FloatBindUniform as d}from"../views/3d/webgl-engine/core/shaderModules/FloatBindUniform.js";import{glsl as s,If as v}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{outputColorHighlightOLID as p}from"../views/3d/webgl-engine/shaders/OutputColorHighlightOLID.glsl.js";import{getTextureBackedBufferModule as u}from"../views/3d/webgl-engine/shaders/PatternTextureBuffer.glsl.js";import{ShaderBuilder as m}from"../views/webgl/ShaderBuilder.js";const f=.70710678118,g=f,w=.08715574274,b=10,h=1;function x(x){const S=new m,{vertex:j,fragment:C,attributes:V,varyings:T}=S,P=u(x),$=P?.createBuilder(S,x),R=null!=$,A=10===x.output;l(j,x),S.include(o);let L="";R?(x.hasVVColor&&(L=$.getTextureAttribute("colorFeatureAttribute")),x.hasVertexColors?(S.varyings.add("vColor","vec4"),S.vertex.code.add(s`void forwardVertexColor() { vColor = ${$.getTextureAttribute("color")}; }`)):S.vertex.code.add(s`void forwardVertexColor() {}`),V.add("textureElementIndex","uint")):(S.include(r,x),x.hasVVColor&&(V.add("colorFeatureAttribute","float"),L="colorFeatureAttribute")),V.add("position","vec3"),j.inputs.add("position",()=>"position"),S.include(a,x),S.include(t,x),C.include(e,x),S.include(p,x),x.draped&&j.uniforms.add(new d("worldToScreenRatio",e=>1/e.screenToPCSRatio)),V.add("uvMapSpace","vec4"),x.hasVertexColors||T.add("vColor","vec4"),T.add("vpos","vec3",{invariant:!0}),T.add("vuv","vec2"),j.uniforms.add(new c("uColor",e=>e.color));const D=3===x.style||4===x.style||5===x.style;return D&&j.code.add(s`
3
- const mat2 rotate45 = mat2(${s.float(f)}, ${s.float(-g)},
4
- ${s.float(g)}, ${s.float(f)});
5
- `),!x.draped&&R&&(n(j,x),j.uniforms.add(new d("worldToScreenPerDistanceRatio",e=>1/e.camera.perScreenPixelRatio)),j.code.add(s`vec3 projectPointToLineSegment(vec3 center, vec3 halfVector, vec3 point) {
2
+ import{sliceDraw as e}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as t}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{ObjectAndLayerIdColor as o}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/ObjectAndLayerIdColor.glsl.js";import{VertexColor as r}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexColor.glsl.js";import{VisualVariables as a}from"../views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js";import{ColorConversion as i}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{addProjViewLocalOrigin as n,addCameraPosition as l}from"../views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js";import{Float4PassUniform as c}from"../views/3d/webgl-engine/core/shaderModules/Float4PassUniform.js";import{FloatBindUniform as s}from"../views/3d/webgl-engine/core/shaderModules/FloatBindUniform.js";import{glsl as d,If as v}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{outputColorHighlightOLID as p}from"../views/3d/webgl-engine/shaders/OutputColorHighlightOLID.glsl.js";import{getTextureBackedBufferModule as u}from"../views/3d/webgl-engine/shaders/PatternTextureBuffer.glsl.js";import{ShaderBuilder as m}from"../views/webgl/ShaderBuilder.js";const f=.70710678118,g=f,w=.08715574274,b=10,h=1;function x(x){const S=new m,{vertex:j,fragment:C,attributes:V,varyings:T}=S,P=u(x),D=P?.createBuilder(S,x),R=null!=D,$=10===x.output;n(j,x),S.include(t);let A="";R?(x.hasVVColor&&(A=D.getTextureAttribute("colorFeatureAttribute")),x.hasVertexColors?(S.varyings.add("vColor","vec4"),S.vertex.code.add(d`void forwardVertexColor() { vColor = ${D.getTextureAttribute("color")}; }`)):S.vertex.code.add(d`void forwardVertexColor() {}`),V.add("textureElementIndex","uint")):(S.include(r,x),x.hasVVColor&&(V.add("colorFeatureAttribute","float"),A="colorFeatureAttribute")),V.add("position","vec3"),j.inputs.add("position",()=>"position"),S.include(a,x),S.include(o,x),C.include(e,x),S.include(p,x),x.draped&&j.uniforms.add(new s("planarDistanceToScreenRatio",e=>1/e.screenToPlanarDistanceRatio)),V.add("uvMapSpace","vec4"),x.hasVertexColors||T.add("vColor","vec4"),T.add("vpos","vec3",{invariant:!0}),T.add("vuv","vec2"),j.uniforms.add(new c("uColor",e=>e.color));const L=3===x.style||4===x.style||5===x.style;return L&&j.code.add(d`
3
+ const mat2 rotate45 = mat2(${d.float(f)}, ${d.float(-g)},
4
+ ${d.float(g)}, ${d.float(f)});
5
+ `),!x.draped&&R&&(l(j,x),j.uniforms.add(new s("worldToScreenPerDistanceRatio",e=>1/e.camera.perScreenPixelRatio)),j.code.add(d`vec3 projectPointToLineSegment(vec3 center, vec3 halfVector, vec3 point) {
6
6
  float projectedLength = dot(halfVector, point - center) / dot(halfVector, halfVector);
7
7
  return center + halfVector * clamp(projectedLength, -1.0, 1.0);
8
- }`),j.code.add(s`vec3 intersectRayPlane(vec3 rayDir, vec3 rayOrigin, vec3 planeNormal, vec3 planePoint) {
8
+ }`),j.code.add(d`vec3 intersectRayPlane(vec3 rayDir, vec3 rayOrigin, vec3 planeNormal, vec3 planePoint) {
9
9
  float d = dot(planeNormal, planePoint);
10
10
  float t = (d - dot(planeNormal, rayOrigin)) / dot(planeNormal, rayDir);
11
11
  return rayOrigin + t * rayDir;
12
- }`),j.code.add(s`
12
+ }`),j.code.add(d`
13
13
  float boundingRectDistanceToCamera() {
14
- vec3 center = ${$.getTextureAttribute("boundingRect")}[0];
15
- vec3 halfU = ${$.getTextureAttribute("boundingRect")}[1];
16
- vec3 halfV = ${$.getTextureAttribute("boundingRect")}[2];
14
+ vec3 center = ${D.getTextureAttribute("boundingRect")}[0];
15
+ vec3 halfU = ${D.getTextureAttribute("boundingRect")}[1];
16
+ vec3 halfV = ${D.getTextureAttribute("boundingRect")}[2];
17
17
  vec3 n = normalize(cross(halfU, halfV));
18
18
 
19
19
  vec3 viewDir = - vec3(view[0][2], view[1][2], view[2][2]);
20
20
 
21
21
  float viewAngle = dot(viewDir, n);
22
- float minViewAngle = ${s.float(w)};
22
+ float minViewAngle = ${d.float(w)};
23
23
 
24
24
  if (abs(viewAngle) < minViewAngle) {
25
25
  // view direction is (almost) parallel to plane -> clamp it to min angle
@@ -39,34 +39,34 @@ return rayOrigin + t * rayDir;
39
39
 
40
40
  return length(closestPoint - cameraPosition);
41
41
  }
42
- `)),j.code.add(s`
42
+ `)),j.code.add(d`
43
43
  vec2 scaledUV() {
44
- vec2 uv = uvMapSpace.xy ${v(D," * rotate45")};
45
- vec2 uvCellOrigin = uvMapSpace.zw ${v(D," * rotate45")};
44
+ vec2 uv = uvMapSpace.xy ${v(L," * rotate45")};
45
+ vec2 uvCellOrigin = uvMapSpace.zw ${v(L," * rotate45")};
46
46
 
47
- ${v(!x.draped,s`float distanceToCamera = boundingRectDistanceToCamera();
48
- float worldToScreenRatio = worldToScreenPerDistanceRatio / distanceToCamera;`)}
47
+ ${v(!x.draped,d`float distanceToCamera = boundingRectDistanceToCamera();
48
+ float patternDistanceToScreenRatio = worldToScreenPerDistanceRatio / distanceToCamera;`,d`float patternDistanceToScreenRatio = planarDistanceToScreenRatio;`)}
49
49
 
50
50
  // Logarithmically discretize ratio to avoid jittering
51
51
  float step = 0.1;
52
- float discreteWorldToScreenRatio = log(worldToScreenRatio);
53
- discreteWorldToScreenRatio = ceil(discreteWorldToScreenRatio / step) * step;
54
- discreteWorldToScreenRatio = exp(discreteWorldToScreenRatio);
52
+ float discreteDistanceToScreenRatio = log(patternDistanceToScreenRatio);
53
+ discreteDistanceToScreenRatio = ceil(discreteDistanceToScreenRatio / step) * step;
54
+ discreteDistanceToScreenRatio = exp(discreteDistanceToScreenRatio);
55
55
 
56
- vec2 uvOffset = mod(uvCellOrigin * discreteWorldToScreenRatio, ${s.float(b)});
57
- return uvOffset + (uv * discreteWorldToScreenRatio);
56
+ vec2 uvOffset = mod(uvCellOrigin * discreteDistanceToScreenRatio, ${d.float(b)});
57
+ return uvOffset + (uv * discreteDistanceToScreenRatio);
58
58
  }
59
- `),j.main.add(s`
59
+ `),j.main.add(d`
60
60
  vuv = scaledUV();
61
61
  vpos = position;
62
62
  forwardVertexColor();
63
63
  forwardObjectAndLayerIdColor();
64
- ${x.hasVertexColors?"vColor *= uColor;":x.hasVVColor?s`vColor = uColor * interpolateVVColor(${L});`:"vColor = uColor;"}
64
+ ${x.hasVertexColors?"vColor *= uColor;":x.hasVVColor?d`vColor = uColor * interpolateVVColor(${A});`:"vColor = uColor;"}
65
65
  gl_Position = transformPosition(proj, view, vpos);
66
- `),C.include(i),x.draped&&C.uniforms.add(new d("texelSize",e=>1/e.camera.pixelRatio)),A||(C.code.add(s`
67
- const float lineWidth = ${s.float(h)};
68
- const float spacing = ${s.float(b)};
69
- const float spacingINV = ${s.float(1/b)};
66
+ `),C.include(i),x.draped&&C.uniforms.add(new s("texelSize",e=>1/e.camera.pixelRatio)),$||(C.code.add(d`
67
+ const float lineWidth = ${d.float(h)};
68
+ const float spacing = ${d.float(b)};
69
+ const float spacingINV = ${d.float(1/b)};
70
70
 
71
71
  float coverage(float p, float txlSize) {
72
72
  p = mod(p, spacing);
@@ -82,7 +82,7 @@ return rayOrigin + t * rayDir;
82
82
 
83
83
  return coverage / txlSize;
84
84
  }
85
- `),x.draped||C.code.add(s`const int maxSamples = 5;
85
+ `),x.draped||C.code.add(d`const int maxSamples = 5;
86
86
  float sampleAA(float p) {
87
87
  vec2 dxdy = abs(vec2(dFdx(p), dFdy(p)));
88
88
  float fwidth = dxdy.x + dxdy.y;
@@ -103,9 +103,9 @@ accumulator += coverage(p + step.x * dxdy.x + step.y * dxdy.y, fwidth);
103
103
  }
104
104
  accumulator /= float(samples.x * samples.y);
105
105
  return accumulator;
106
- }`)),C.main.add(s`
106
+ }`)),C.main.add(d`
107
107
  discardBySlice(vpos);
108
108
  vec4 color = vColor;
109
- ${v(!A,s`color.a *= ${y(x)};`)}
109
+ ${v(!$,d`color.a *= ${y(x)};`)}
110
110
  outputColorHighlightOLID(applySlice(color, vpos), color.rgb);
111
- `),S}function y(e){function o(o){return e.draped?s`coverage(vuv.${o}, texelSize)`:s`sampleAA(vuv.${o})`}switch(e.style){case 3:case 0:return o("y");case 4:case 1:return o("x");case 5:case 2:return s`1.0 - (1.0 - ${o("x")}) * (1.0 - ${o("y")})`;default:return"0.0"}}const S=Object.freeze(Object.defineProperty({__proto__:null,build:x},Symbol.toStringTag,{value:"Module"}));export{S as P,x as b};
111
+ `),S}function y(e){function t(t){return e.draped?d`coverage(vuv.${t}, texelSize)`:d`sampleAA(vuv.${t})`}switch(e.style){case 3:case 0:return t("y");case 4:case 1:return t("x");case 5:case 2:return d`1.0 - (1.0 - ${t("x")}) * (1.0 - ${t("y")})`;default:return"0.0"}}const S=Object.freeze(Object.defineProperty({__proto__:null,build:x},Symbol.toStringTag,{value:"Module"}));export{S as P,x as b};
@@ -1,5 +1,5 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{sliceDraw as e}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{RibbonVertexPosition as t}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js";import{EvaluateAmbientOcclusion as i}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientOcclusion.glsl.js";import{EvaluateSceneLighting as n}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js";import{LineStipple as r,computePixelSize as o}from"../views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js";import{mainLightIntensity as a}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MainLighting.glsl.js";import{MarkerSizing as s}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MarkerSizing.glsl.js";import{NormalUtils as l}from"../views/3d/webgl-engine/core/shaderLibrary/shading/NormalUtils.glsl.js";import{PiUtils as d}from"../views/3d/webgl-engine/core/shaderLibrary/shading/PiUtils.glsl.js";import{positionOutsideClipSpace as c}from"../views/3d/webgl-engine/core/shaderLibrary/shading/PositionOutsideClipSpace.js";import{readFragmentShadow as p}from"../views/3d/webgl-engine/core/shaderLibrary/shading/readFragmentShadow.glsl.js";import{inverseProjectionMatrix as m,nearFar as g,viewport as v}from"../views/3d/webgl-engine/core/shaderLibrary/util/cameraUniforms.js";import{ColorConversion as h}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{NoPerspectiveWrite as f,NoPerspectiveRead as S}from"../views/3d/webgl-engine/core/shaderLibrary/util/NoPerspective.glsl.js";import{addProjViewLocalOrigin as u,addPixelRatio as x,addCameraPosition as D}from"../views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js";import{Float4PassUniform as b}from"../views/3d/webgl-engine/core/shaderModules/Float4PassUniform.js";import{FloatBindUniform as L}from"../views/3d/webgl-engine/core/shaderModules/FloatBindUniform.js";import{FloatPassUniform as w}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{glsl as y,If as C}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{alphaCutoff as P}from"../views/3d/webgl-engine/shaders/alphaCutoff.glsl.js";import{animatedAlpha as F}from"../views/3d/webgl-engine/shaders/animatedAlpha.glsl.js";import{outputColorHighlightOLID as z}from"../views/3d/webgl-engine/shaders/OutputColorHighlightOLID.glsl.js";import{getTextureBackedBufferModule as j}from"../views/3d/webgl-engine/shaders/RibbonLineTextureBuffer.glsl.js";import{ShaderBuilder as A}from"../views/webgl/ShaderBuilder.js";const W=1;function T(W){const T=new A,{attributes:I,varyings:R,vertex:V,fragment:O}=T,{applyMarkerOffset:E,draped:N,shadingEnabled:$,output:J,capType:_,stippleEnabled:U,falloffEnabled:H,wireframe:M,innerColorEnabled:B,hasAnimation:k,hasScreenSizePerspective:G,worldSized:X,imagePattern:Y}=W,Z=2===_,q=U&&Z,K=H||q,Q=U||Z,ee=j(W).createBuilder(T,W);V.inputs.add("position",()=>ee.getTextureAttribute("position")),W.hasVVSize?V.inputs.add("sizeFeatureAttribute",()=>ee.getTextureAttribute("sizeFeatureAttribute")):V.inputs.add("size",()=>ee.getTextureAttribute("size")),W.hasVVOpacity&&V.inputs.add("opacityFeatureAttribute",()=>ee.getTextureAttribute("opacityFeatureAttribute")),W.hasVVColor?V.inputs.add("colorFeatureAttribute",()=>ee.getTextureAttribute("colorFeatureAttribute")):V.inputs.add("color",()=>ee.getTextureAttribute("color")),O.include(d),T.include(t,W),T.include(r,W),11===J?(T.varyings.add("objectAndLayerIdColorVarying","vec4"),V.code.add(y`
2
+ import{sliceDraw as e}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{RibbonVertexPosition as t}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js";import{EvaluateAmbientOcclusion as i}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientOcclusion.glsl.js";import{EvaluateSceneLighting as n}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js";import{LineStipple as r,computePixelSize as a}from"../views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js";import{mainLightIntensity as o}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MainLighting.glsl.js";import{MarkerSizing as s}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MarkerSizing.glsl.js";import{NormalUtils as l}from"../views/3d/webgl-engine/core/shaderLibrary/shading/NormalUtils.glsl.js";import{PiUtils as d}from"../views/3d/webgl-engine/core/shaderLibrary/shading/PiUtils.glsl.js";import{positionOutsideClipSpace as c}from"../views/3d/webgl-engine/core/shaderLibrary/shading/PositionOutsideClipSpace.js";import{readFragmentShadow as p}from"../views/3d/webgl-engine/core/shaderLibrary/shading/readFragmentShadow.glsl.js";import{inverseProjectionMatrix as m,nearFar as g,viewport as v}from"../views/3d/webgl-engine/core/shaderLibrary/util/cameraUniforms.js";import{ColorConversion as h}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{NoPerspectiveWrite as f,NoPerspectiveRead as S}from"../views/3d/webgl-engine/core/shaderLibrary/util/NoPerspective.glsl.js";import{addProjViewLocalOrigin as u,addPixelRatio as D,addCameraPosition as x}from"../views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js";import{Float4PassUniform as b}from"../views/3d/webgl-engine/core/shaderModules/Float4PassUniform.js";import{FloatBindUniform as L}from"../views/3d/webgl-engine/core/shaderModules/FloatBindUniform.js";import{FloatPassUniform as w}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{glsl as y,If as C}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{alphaCutoff as P}from"../views/3d/webgl-engine/shaders/alphaCutoff.glsl.js";import{animatedAlpha as F}from"../views/3d/webgl-engine/shaders/animatedAlpha.glsl.js";import{outputColorHighlightOLID as z}from"../views/3d/webgl-engine/shaders/OutputColorHighlightOLID.glsl.js";import{getTextureBackedBufferModule as j}from"../views/3d/webgl-engine/shaders/RibbonLineTextureBuffer.glsl.js";import{ShaderBuilder as A}from"../views/webgl/ShaderBuilder.js";const T=1;function R(T){const R=new A,{attributes:W,varyings:I,vertex:V,fragment:O}=R,{applyMarkerOffset:E,draped:N,shadingEnabled:$,output:J,capType:_,stippleEnabled:U,falloffEnabled:M,wireframe:H,innerColorEnabled:B,hasAnimation:k,hasScreenSizePerspective:G,worldSized:X,imagePattern:Y}=T,Z=2===_,q=U&&Z,K=M||q,Q=U||Z,ee=j(T).createBuilder(R,T);V.inputs.add("position",()=>ee.getTextureAttribute("position")),T.hasVVSize?V.inputs.add("sizeFeatureAttribute",()=>ee.getTextureAttribute("sizeFeatureAttribute")):V.inputs.add("size",()=>ee.getTextureAttribute("size")),T.hasVVOpacity&&V.inputs.add("opacityFeatureAttribute",()=>ee.getTextureAttribute("opacityFeatureAttribute")),T.hasVVColor?V.inputs.add("colorFeatureAttribute",()=>ee.getTextureAttribute("colorFeatureAttribute")):V.inputs.add("color",()=>ee.getTextureAttribute("color")),O.include(d),R.include(t,T),R.include(r,T),11===J?(R.varyings.add("objectAndLayerIdColorVarying","vec4"),V.code.add(y`
3
3
  vec4 getOlidColor() {
4
4
  return ${ee.getTextureAttribute("olidColor")};
5
5
  }
@@ -9,7 +9,7 @@ import{sliceDraw as e}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.gls
9
9
  }
10
10
  `),O.code.add(y`void outputObjectAndLayerIdColor() {
11
11
  fragColor = objectAndLayerIdColorVarying;
12
- }`)):(V.code.add(y`void forwardObjectAndLayerIdColor() {}`),O.code.add(y`void outputObjectAndLayerIdColor() {}`));const te=E&&!N;return te&&T.include(s,W),u(V,W),N&&(X||U)&&V.uniforms.add(new L("worldToScreenRatio",e=>1/e.screenToPCSRatio)),V.uniforms.add(m,g,v,new w("miterLimit",e=>"miter"!==e.join?0:e.miterLimit)),V.constants.add("LARGE_HALF_FLOAT","float",65500),V.constants.add("EPS","float",.001),V.constants.add("NUM_JOIN_SUBDIVISIONS","float",W.numJoinSubdivisions),I.add("textureElementIndex","uint"),I.add("lineParameters","vec2"),R.add("vColor","vec4"),R.add("vpos","vec3",{invariant:!0}),R.add("vLineDistance","float"),R.add("vLineWidth","float"),U||(R.add("vIsInsideJoin","int"),R.add("vStretchFactor","float"),R.add("vJoinCenterLineSDFs","vec2"),R.add("vSubdivisionFactor","float")),U&&R.add("vLineSizeInv","float"),K&&R.add("vLineDistanceNorm","float"),Z&&(R.add("vSegmentSDF","float"),R.add("vReverseSegmentSDF","float")),V.code.add(y`vec3 perpendicular(vec3 v) {
12
+ }`)):(V.code.add(y`void forwardObjectAndLayerIdColor() {}`),O.code.add(y`void outputObjectAndLayerIdColor() {}`));const te=E&&!N;if(te&&R.include(s,T),u(V,T),N&&(X||U)){const e=X?"groundMetersToScreenRatio":"planarDistanceToScreenRatio";V.uniforms.add(new L(e,e=>1/(e.screenToPlanarDistanceRatio*(X?e.planarDistanceToGroundRatio:1))))}return V.uniforms.add(m,g,v,new w("miterLimit",e=>"miter"!==e.join?0:e.miterLimit)),V.constants.add("LARGE_HALF_FLOAT","float",65500),V.constants.add("EPS","float",.001),V.constants.add("NUM_JOIN_SUBDIVISIONS","float",T.numJoinSubdivisions),W.add("textureElementIndex","uint"),W.add("lineParameters","vec2"),I.add("vColor","vec4"),I.add("vpos","vec3",{invariant:!0}),I.add("vLineDistance","float"),I.add("vLineWidth","float"),U||(I.add("vIsInsideJoin","int"),I.add("vStretchFactor","float"),I.add("vJoinCenterLineSDFs","vec2"),I.add("vSubdivisionFactor","float")),U&&I.add("vLineSizeInv","float"),K&&I.add("vLineDistanceNorm","float"),Z&&(I.add("vSegmentSDF","float"),I.add("vReverseSegmentSDF","float")),V.code.add(y`vec3 perpendicular(vec3 v) {
13
13
  return vec3(v.y, -v.x, 0.0);
14
14
  }
15
15
  float nearPlaneInterpolationFactor(float nearPlaneDistance, vec4 start, vec4 end) {
@@ -56,7 +56,7 @@ if (next.z > -nearFar[0]) {
56
56
  next = mix(next, pos, nearPlaneInterpolationFactor(adjustedNearPlaneDistance, next, pos));
57
57
  }
58
58
  }
59
- }`),x(V),V.constants.add("aaWidth","float",U?0:1),V.main.add(y`
59
+ }`),D(V),V.constants.add("aaWidth","float",U?0:1),V.main.add(y`
60
60
  vec3 position = ${ee.getTextureAttribute("position")};
61
61
  float u0 = ${ee.getTextureAttribute("u0")};
62
62
  ${C(X,y`
@@ -88,7 +88,7 @@ next = mix(next, pos, nearPlaneInterpolationFactor(adjustedNearPlaneDistance, ne
88
88
  bool markersHidden = areWorldMarkersHidden(pos.xyz, other.xyz);
89
89
  if (!isJoin && !markersHidden) {
90
90
  pos.xyz += normalize(other.xyz - pos.xyz) * getWorldMarkerSize(pos.xyz) * 0.5;
91
- }`),T.include(f),V.code.add(y`
91
+ }`),R.include(f),V.code.add(y`
92
92
  vec2 computeJoinAndCapDisplacement(
93
93
  bool isJoin,
94
94
  bool isStartVertex,
@@ -168,7 +168,7 @@ pos.xyz += normalize(other.xyz - pos.xyz) * getWorldMarkerSize(pos.xyz) * 0.5;
168
168
  `)}
169
169
 
170
170
  if (isOutside && displacementLen > miterLimit * lineWidth) {
171
- ${C(W.roundJoins,y`
171
+ ${C(T.roundJoins,y`
172
172
  vec3 startDir = perpendicular(leftLen < EPS ? right : left);
173
173
  vec3 endDir = perpendicular(rightLen < EPS ? left : right);
174
174
  float factor = ${U?y`min(1.0, subdivisionFactor * ((NUM_JOIN_SUBDIVISIONS + 1.0) / NUM_JOIN_SUBDIVISIONS))`:y`subdivisionFactor`};
@@ -216,7 +216,7 @@ pos.xyz += normalize(other.xyz - pos.xyz) * getWorldMarkerSize(pos.xyz) * 0.5;
216
216
  ${C(U&&!G,"float patternLineSize = lineSize;")}
217
217
 
218
218
  ${C(X,y`
219
- float lineSizeScreen = lineSize * worldToScreenRatio;
219
+ float lineSizeScreen = lineSize * groundMetersToScreenRatio;
220
220
  if (lineSizeScreen < 1.0) {
221
221
  coverage = lineSizeScreen;
222
222
  lineSizeScreen = 1.0;
@@ -293,21 +293,21 @@ pos.w
293
293
  );
294
294
  }`),Z&&V.main.add(y`vec2 segmentDir = normalize(segment.xy);
295
295
  vSegmentSDF = noPerspectiveWrite((isJoin && isStartVertex) ? LARGE_HALF_FLOAT : (dot(pos.xy - segmentOrigin.xy, segmentDir)), pos.w);
296
- vReverseSegmentSDF = noPerspectiveWrite((isJoin && !isStartVertex) ? LARGE_HALF_FLOAT : (dot(pos.xy - segmentEnd.xy, -segmentDir)), pos.w);`),U&&(N||V.main.add(y`vec3 segmentCenter = mix((nextPosition + position) * 0.5, (position + prevPosition) * 0.5, isEndVertex);
297
- float worldToScreenRatio = computeWorldToScreenRatio(segmentCenter);`),V.main.add(y`
296
+ vReverseSegmentSDF = noPerspectiveWrite((isJoin && !isStartVertex) ? LARGE_HALF_FLOAT : (dot(pos.xy - segmentEnd.xy, -segmentDir)), pos.w);`),U&&(N?V.main.add(y`float stippleDistanceToScreenRatio = ${X?"groundMetersToScreenRatio":"planarDistanceToScreenRatio"};`):V.main.add(y`vec3 segmentCenter = mix((nextPosition + position) * 0.5, (position + prevPosition) * 0.5, isEndVertex);
297
+ float stippleDistanceToScreenRatio = computeWorldToScreenRatio(segmentCenter);`),V.main.add(y`
298
298
  float segmentLengthScreenDouble = length(segment.xy);
299
299
  float segmentLengthScreen = segmentLengthScreenDouble * 0.5;
300
- float discreteWorldToScreenRatio = discretizeWorldToScreenRatio(worldToScreenRatio);
300
+ float discreteStippleDistanceToScreenRatio = discretizeStippleDistanceToScreenRatio(stippleDistanceToScreenRatio);
301
301
  float segmentLengthRender = ${C(X,y`abs(mix(nextU0 - u0, u0 - prevU0, isEndVertex))`,y`length(mix(nextPosition - position, position - prevPosition, isEndVertex))`)};
302
302
 
303
303
  ${C(!N||X,y`
304
304
  float segmentStartRender = ${C(X,y`mix(u0, prevU0, isEndVertex)`,y`mix(u0, u0 - segmentLengthRender, isEndVertex)`)};
305
305
  `)}
306
306
 
307
- vStipplePatternStretch = worldToScreenRatio / discreteWorldToScreenRatio;
308
- `),N?V.main.add(y`float segmentLengthPseudoScreen = segmentLengthScreen / pixelRatio * discreteWorldToScreenRatio / worldToScreenRatio;
309
- float startPseudoScreen = u0 * discreteWorldToScreenRatio - mix(0.0, segmentLengthPseudoScreen, isEndVertex);`):V.main.add(y`float startPseudoScreen = segmentStartRender * discreteWorldToScreenRatio;
310
- float segmentLengthPseudoScreen = segmentLengthRender * discreteWorldToScreenRatio;`),V.uniforms.add(new w("stipplePatternPixelSize",e=>o(e))),V.main.add(y`
307
+ vStipplePatternStretch = stippleDistanceToScreenRatio / discreteStippleDistanceToScreenRatio;
308
+ `),N?V.main.add(y`float segmentLengthPseudoScreen = segmentLengthScreen / pixelRatio * discreteStippleDistanceToScreenRatio / stippleDistanceToScreenRatio;
309
+ float startPseudoScreen = u0 * discreteStippleDistanceToScreenRatio - mix(0.0, segmentLengthPseudoScreen, isEndVertex);`):V.main.add(y`float startPseudoScreen = segmentStartRender * discreteStippleDistanceToScreenRatio;
310
+ float segmentLengthPseudoScreen = segmentLengthRender * discreteStippleDistanceToScreenRatio;`),V.uniforms.add(new w("stipplePatternPixelSize",e=>a(e))),V.main.add(y`
311
311
  float patternLength = patternLineSize * stipplePatternPixelSize;
312
312
 
313
313
  ${C(X,y`
@@ -358,13 +358,13 @@ float segmentLengthPseudoScreen = segmentLengthRender * discreteWorldToScreenRat
358
358
  vColor = getColor();
359
359
  vColor.a = noPerspectiveWrite(vColor.a * coverage, pos.w);
360
360
 
361
- ${M&&!N?"pos.z -= EPS * pos.w;":""}
361
+ ${H&&!N?"pos.z -= EPS * pos.w;":""}
362
362
 
363
363
  // transform final position to camera space for slicing
364
364
  vpos = (inverseProjectionMatrix * pos).xyz;
365
365
  gl_Position = pos;
366
366
  forwardObjectAndLayerIdColor();
367
- }`),T.include(z,W),T.include(S),O.include(h),O.include(P),O.include(e,W),O.main.add("discardBySlice(vpos);"),U||O.code.add(y`float lineFeatheringFactor(float lineWidth, float lineDistance) {
367
+ }`),R.include(z,T),R.include(S),O.include(h),O.include(P),O.include(e,T),O.main.add("discardBySlice(vpos);"),U||O.code.add(y`float lineFeatheringFactor(float lineWidth, float lineDistance) {
368
368
  float stretchFactor = vIsInsideJoin == 1 ? noPerspectiveRead(vStretchFactor) : 1.0;
369
369
  float featherWidth = 2.0;
370
370
  float featherStartDistance = max(lineWidth - featherWidth / stretchFactor, 0.0);
@@ -380,7 +380,7 @@ return 1.0 - clamp(feather, 0.0, 1.0);
380
380
  float lineWidth = noPerspectiveRead(vLineWidth);
381
381
  float lineDistance = noPerspectiveRead(vLineDistance);
382
382
  ${C(K,y`float lineDistanceNorm = noPerspectiveRead(vLineDistanceNorm);`)}
383
- `),M?O.main.add(y`vec4 finalColor = vec4(1.0, 0.0, 1.0, 1.0);`):(Z&&O.main.add(y`float sdf = noPerspectiveRead(min(vSegmentSDF, vReverseSegmentSDF));
383
+ `),H?O.main.add(y`vec4 finalColor = vec4(1.0, 0.0, 1.0, 1.0);`):(Z&&O.main.add(y`float sdf = noPerspectiveRead(min(vSegmentSDF, vReverseSegmentSDF));
384
384
  vec2 fragmentPosition = vec2(min(sdf, 0.0), lineDistance);
385
385
  float fragmentRadius = length(fragmentPosition);
386
386
  float fragmentCapSDF = (fragmentRadius - lineWidth) * 0.5;
@@ -398,11 +398,11 @@ float stippleAlpha = step(alphaCutoff, stippleCoverage);`):O.main.add(y`float st
398
398
  color.a = noPerspectiveRead(color.a);`),B&&O.uniforms.add(new b("innerColor",e=>e.innerColor??e.color),new w("innerWidth",(e,t)=>e.innerWidth*t.camera.pixelRatio)).main.add(y`float distToInner = abs(lineDistance) - innerWidth;
399
399
  float innerAA = clamp(0.5 - distToInner, 0.0, 1.0);
400
400
  float innerAlpha = innerColor.a + color.a * (1.0 - innerColor.a);
401
- color = mix(color, vec4(innerColor.rgb, innerAlpha), innerAA);`),O.main.add(y`vec4 finalColor = blendStipple(color, stippleAlpha);`),H&&(O.uniforms.add(new w("falloff",e=>e.falloff)),O.main.add(y`finalColor.a *= pow(max(0.0, 1.0 - abs(lineDistanceNorm)), falloff);`)),U||O.main.add(y`finalColor.a *= lineFeatheringFactor(lineWidth, lineDistance);`),$&&(R.add("vnormal","vec3"),V.include(l,W),V.main.add(y`vnormal = getLocalUp(vpos, localOrigin);
402
- forwardLinearDepthToReadShadow();`),T.include(p,W),D(O,W),O.include(n,W),O.include(i,W),O.uniforms.add(a,V.uniforms.get("localOrigin")).main.add(y`vec3 posWorld = vpos + localOrigin;
401
+ color = mix(color, vec4(innerColor.rgb, innerAlpha), innerAA);`),O.main.add(y`vec4 finalColor = blendStipple(color, stippleAlpha);`),M&&(O.uniforms.add(new w("falloff",e=>e.falloff)),O.main.add(y`finalColor.a *= pow(max(0.0, 1.0 - abs(lineDistanceNorm)), falloff);`)),U||O.main.add(y`finalColor.a *= lineFeatheringFactor(lineWidth, lineDistance);`),$&&(I.add("vnormal","vec3"),V.include(l,T),V.main.add(y`vnormal = getLocalUp(vpos, localOrigin);
402
+ forwardLinearDepthToReadShadow();`),R.include(p,T),x(O,T),O.include(n,T),O.include(i,T),O.uniforms.add(o,V.uniforms.get("localOrigin")).main.add(y`vec3 posWorld = vpos + localOrigin;
403
403
  float additionalAmbientScale = additionalDirectedAmbientLight(posWorld);
404
404
  float shadow = readFragmentShadow(additionalAmbientScale);
405
405
  float ssao = evaluateAmbientOcclusionInverse();
406
406
  vec3 additionalLight = ssao * mainLightIntensity * additionalAmbientScale * ambientBoostFactor * lightingGlobalFactor;
407
407
  vec3 viewDirection = normalize(vpos - cameraPosition);
408
- finalColor = vec4(evaluateSceneLighting(vnormal, finalColor.rgb, shadow, 1.0 - ssao, additionalLight, viewDirection, vnormal), finalColor.a);`)),k&&(V.main.add(`vec4 animatedAlphaTimeStamps = ${ee.getTextureAttribute("timeStamps")};`),T.include(F,W),O.main.add("finalColor.a *= animatedAlpha();"))),O.main.add(y`outputColorHighlightOLID(applySlice(finalColor, vpos), finalColor.rgb);`),T}const I=Object.freeze(Object.defineProperty({__proto__:null,build:T,numRoundJoinSubdivisions:W},Symbol.toStringTag,{value:"Module"}));export{I as R,T as b,W as n};
408
+ finalColor = vec4(evaluateSceneLighting(vnormal, finalColor.rgb, shadow, 1.0 - ssao, additionalLight, viewDirection, vnormal), finalColor.a);`)),k&&(V.main.add(`vec4 animatedAlphaTimeStamps = ${ee.getTextureAttribute("timeStamps")};`),R.include(F,T),O.main.add("finalColor.a *= animatedAlpha();"))),O.main.add(y`outputColorHighlightOLID(applySlice(finalColor, vpos), finalColor.rgb);`),R}const W=Object.freeze(Object.defineProperty({__proto__:null,build:R,numRoundJoinSubdivisions:T},Symbol.toStringTag,{value:"Module"}));export{W as R,R as b,T as n};
package/config.js CHANGED
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import"./core/has.js";import{deepMerge as e}from"./core/object.js";const s={apiKey:void 0,apiKeys:{scopes:[]},applicationName:"",applicationUrl:globalThis.location?.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",userPrivilegesApplied:!0,portalUrl:"https://www.arcgis.com",respectPrefersReducedMotion:!0,routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{crossOriginNoCorsDomains:null,httpsDomains:["arcgis.com","arcgisonline.com","esrikr.com","premiumservices.blackbridge.com","esripremium.accuweather.com","gbm.digitalglobe.com","firstlook.digitalglobe.com","msi.digitalglobe.com"],interceptors:[],internalInterceptors:[],maxUrlLength:2e3,priority:"high",proxyRules:[],proxyUrl:null,timeout:62e3,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&(e(s,globalThis.esriConfig,!0),delete s.has),!s.assetsPath){{const e="5.2.0-next.125";s.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@${e}/assets`}s.defaultAssetsPath=s.assetsPath}export{s as default};
2
+ import"./core/has.js";import{deepMerge as e}from"./core/object.js";const s={apiKey:void 0,apiKeys:{scopes:[]},applicationName:"",applicationUrl:globalThis.location?.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",userPrivilegesApplied:!0,portalUrl:"https://www.arcgis.com",respectPrefersReducedMotion:!0,routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{crossOriginNoCorsDomains:null,httpsDomains:["arcgis.com","arcgisonline.com","esrikr.com","premiumservices.blackbridge.com","esripremium.accuweather.com","gbm.digitalglobe.com","firstlook.digitalglobe.com","msi.digitalglobe.com"],interceptors:[],internalInterceptors:[],maxUrlLength:2e3,priority:"high",proxyRules:[],proxyUrl:null,timeout:62e3,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&(e(s,globalThis.esriConfig,!0),delete s.has),!s.assetsPath){{const e="5.2.0-next.126";s.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@${e}/assets`}s.defaultAssetsPath=s.assetsPath}export{s as default};
@@ -1,6 +1,10 @@
1
- /** @since 5.0 */
1
+ /**
2
+ * @deprecated since 5.2. Only for internal use
3
+ * @since 5.0
4
+ */
2
5
  export type OriginName = "defaults" | "service" | "portal-item" | "web-scene" | "web-map" | "link-chart" | "user";
3
6
 
7
+ /** @deprecated since 5.2. Only for internal use */
4
8
  export type ReadableOriginName = "service" | "portal-item" | "web-scene" | "web-map" | "link-chart";
5
9
 
6
10
  /** @since 5.0 */
package/interfaces.d.ts CHANGED
@@ -5609,6 +5609,9 @@ declare namespace __esri {
5609
5609
  export type TimeInfo = import("./layers/support/TimeInfo.js").default;
5610
5610
  export const TimeInfo: typeof import("./layers/support/TimeInfo.js").default;
5611
5611
 
5612
+ /** @deprecated since 5.0. Refactor using \@arcgis/codemod */
5613
+ export type TimeSeriesCalculationProperties = import("./layers/support/TimeSeriesCalculation.js").TimeSeriesCalculationProperties;
5614
+
5612
5615
  /** @deprecated since 5.0. Refactor using \@arcgis/codemod */
5613
5616
  export type TimeSeriesFieldTimeMappingProperties = import("./layers/support/TimeSeriesFieldTimeMapping.js").TimeSeriesFieldTimeMappingProperties;
5614
5617
 
package/kernel.js CHANGED
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import has from"./core/has.js";import{addQueryParameter as o}from"./core/urlUtils.js";export{buildDate,revision}from"./support/revision.js";Symbol.dispose??=Symbol("Symbol.dispose"),Symbol.asyncDispose??=Symbol("Symbol.asyncDispose");const e="5.2";let r,s=e;function i(o){r=o}function t(e){const s=r?.findCredential(e);return s?.token?o(e,"token",s.token):e}s="5.2.0-next.125",has("host-webworker")||globalThis.$arcgis||Object.defineProperty(globalThis,"$arcgis",{configurable:!1,enumerable:!0,writable:!1,value:{}}),has("host-webworker");export{t as addTokenParameter,s as fullVersion,r as id,i as setId,e as version};
2
+ import has from"./core/has.js";import{addQueryParameter as o}from"./core/urlUtils.js";export{buildDate,revision}from"./support/revision.js";Symbol.dispose??=Symbol("Symbol.dispose"),Symbol.asyncDispose??=Symbol("Symbol.asyncDispose");const e="5.2";let r,s=e;function i(o){r=o}function t(e){const s=r?.findCredential(e);return s?.token?o(e,"token",s.token):e}s="5.2.0-next.126",has("host-webworker")||globalThis.$arcgis||Object.defineProperty(globalThis,"$arcgis",{configurable:!1,enumerable:!0,writable:!1,value:{}}),has("host-webworker");export{t as addTokenParameter,s as fullVersion,r as id,i as setId,e as version};
@@ -19,6 +19,7 @@ import type { FeatureEffectLayer, FeatureEffectLayerProperties } from "./mixins/
19
19
  import type { FeatureReductionLayer, FeatureReductionLayerProperties } from "./mixins/FeatureReductionLayer.js";
20
20
  import type { OperationalLayer, OperationalLayerProperties } from "./mixins/OperationalLayer.js";
21
21
  import type { OrderedLayer, OrderedLayerProperties } from "./mixins/OrderedLayer.js";
22
+ import type { RefreshableLayer, RefreshableLayerProperties } from "./mixins/RefreshableLayer.js";
22
23
  import type { ScaleRangeLayer, ScaleRangeLayerProperties } from "./mixins/ScaleRangeLayer.js";
23
24
  import type { ParquetGeometryType } from "./support/parquetUtils.js";
24
25
  import type { DomainUnion, ParquetDataUnion, ParquetGeometryEncodingUnion } from "./support/types.js";
@@ -45,7 +46,7 @@ import type { ParquetFilesDataProperties } from "./support/ParquetFilesData.js";
45
46
  import type { ReadonlyArrayOrCollection } from "../core/Collection.js";
46
47
  import type { LayerProperties } from "./Layer.js";
47
48
 
48
- export interface ParquetLayerProperties extends LayerProperties, CustomParametersMixinProperties, OperationalLayerProperties, ScaleRangeLayerProperties, DataSeriesLayerProperties, OrderedLayerProperties, BlendLayerProperties, FeatureEffectLayerProperties, FeatureReductionLayerProperties, Partial<Pick<ParquetLayer, "copyright" | "definitionExpression" | "geometryType" | "labelsVisible" | "legendEnabled" | "outFields" | "popupEnabled">> {
49
+ export interface ParquetLayerProperties extends LayerProperties, CustomParametersMixinProperties, OperationalLayerProperties, RefreshableLayerProperties, ScaleRangeLayerProperties, DataSeriesLayerProperties, OrderedLayerProperties, BlendLayerProperties, FeatureEffectLayerProperties, FeatureReductionLayerProperties, Partial<Pick<ParquetLayer, "copyright" | "definitionExpression" | "geometryType" | "labelsVisible" | "legendEnabled" | "outFields" | "popupEnabled">> {
49
50
  /**
50
51
  * The data source for the ParquetLayer. Set this property to [parquet files](https://developers.arcgis.com/javascript/latest/references/core/layers/support/ParquetFilesData/)
51
52
  * or a [portal item](https://developers.arcgis.com/javascript/latest/references/core/layers/support/ParquetPortalItemData/) to define which Parquet content the layer loads.
@@ -909,4 +910,4 @@ export default class ParquetLayer extends ParquetLayerSuperclass {
909
910
  */
910
911
  queryObjectIds(query?: QueryProperties | null | undefined, options?: AbortOptions): Promise<ObjectId[]>;
911
912
  }
912
- declare const ParquetLayerSuperclass: typeof Layer & typeof ClonableMixin & typeof CustomParametersMixin & typeof MultiOriginJSONSupportMixin & typeof OperationalLayer & typeof ScaleRangeLayer & typeof DataSeriesLayer & typeof OrderedLayer & typeof BlendLayer & typeof FeatureEffectLayer & typeof FeatureReductionLayer
913
+ declare const ParquetLayerSuperclass: typeof Layer & typeof ClonableMixin & typeof CustomParametersMixin & typeof MultiOriginJSONSupportMixin & typeof OperationalLayer & typeof RefreshableLayer & typeof ScaleRangeLayer & typeof DataSeriesLayer & typeof OrderedLayer & typeof BlendLayer & typeof FeatureEffectLayer & typeof FeatureReductionLayer
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import t from"../PopupTemplate.js";import{ClonableMixin as r}from"../core/Clonable.js";import i from"../core/Collection.js";import{deprecatedProperty as o}from"../core/deprecate.js";import s from"../core/Error.js";import has from"../core/has.js";import a from"../core/Logger.js";import{MultiOriginJSONSupportMixin as p}from"../core/MultiOriginJSONSupport.js";import{setDeepValue as n}from"../core/object.js";import{on as l}from"../core/reactiveUtils.js";import{getFilename as u}from"../core/urlUtils.js";import{property as d}from"../core/accessorSupport/decorators/property.js";import{subclass as m}from"../core/accessorSupport/decorators/subclass.js";import{writer as y}from"../core/accessorSupport/decorators/writer.js";import c from"../geometry/Extent.js";import f from"../geometry/SpatialReference.js";import h from"../graphic/ParquetGraphicOrigin.js";import g from"./Layer.js";import{ParquetSource as j}from"./graphics/sources/ParquetSource.js";import{BlendLayer as w}from"./mixins/BlendLayer.js";import{CustomParametersMixin as v}from"./mixins/CustomParametersMixin.js";import{DataSeriesLayer as b}from"./mixins/DataSeriesLayer.js";import{FeatureEffectLayer as O}from"./mixins/FeatureEffectLayer.js";import{FeatureReductionLayer as x}from"./mixins/FeatureReductionLayer.js";import{OperationalLayer as q}from"./mixins/OperationalLayer.js";import{OrderedLayer as I}from"./mixins/OrderedLayer.js";import{ScaleRangeLayer as E}from"./mixins/ScaleRangeLayer.js";import{labelsVisible as F,legendEnabled as P,popupEnabled as L}from"./support/commonProperties.js";import S from"./support/FeatureTemplate.js";import T from"./support/Field.js";import{defineFieldProperties as _}from"./support/fieldProperties.js";import{fixRendererFields as D}from"./support/fieldUtils.js";import R from"./support/GeometryEncodingLocation.js";import z from"./support/GeometryEncodingWkb.js";import U from"./support/LabelClass.js";import{reader as C}from"./support/labelingInfo.js";import Q from"./support/ParquetFilesData.js";import M from"./support/ParquetPortalItemData.js";import{parquetGeometryTypeKebabDict as k}from"./support/parquetUtils.js";import{rendererTypes as G}from"../renderers/support/typeUtils.js";import B from"../rest/support/Query.js";import{createPopupTemplate as J}from"../support/popupUtils.js";const N=_(),V="__OBJECTID",A={types:{key:"type",base:null,typeMap:{wkb:z,location:R}},json:{name:"layerDefinition.geometryEncoding",write:{ignoreOrigin:!0,isRequired:!0},origins:{service:{read:{source:"geometryEncoding"}}}}};let W=class extends(x(O(w(I(b(E(q(p(v(r(g))))))))))){constructor(e){super(e),this._emptyUrls=new i,this.copyright=null,this.definitionExpression=null,this.returnM=void 0,this.returnZ=void 0,this.displayOptimization=null,this.fields=null,this.fieldsIndex=null,this.geometryEncoding=null,this.fullExtent=null,this.geometryType=null,this.graphicOrigin=new h(this),this.labelsVisible=!0,this.labelingInfo=null,this.objectIdField=V,this.operationalLayerType="ParquetLayer",this.outFields=null,this.persistenceEnabled=!!has("parquetlayer-persistence-enabled"),this.popupTemplate=null,this.source=null,this.spatialReference=null,this.templates=null,this.type="parquet",this.data=null}initialize(){this.addHandles(l(()=>this.source,"source-changed",()=>{this.emit("refresh",{dataChanged:!0})}))}destroy(){this.source?.destroy()}async load(e){return this.addResolvingPromise(this._load(e)),this}get capabilities(){return this.source?.capabilities}get defaultPopupTemplate(){return this.createPopupTemplate()}writeFields(e,t,r,i){const o=e.filter(e=>!(e.name===V&&"oid"===e.type)).map(e=>e.toJSON(i));n(r,o,t)}get isTable(){return null==this.geometryEncoding&&null==this.displayOptimization}set renderer(e){D(e,this.fieldsIndex),this._set("renderer",e)}get title(){let e=this._get("title");if(e&&"defaults"!==this.originOf("title"))return e;switch(this.data?.type){case"files":{const t=this.data.urls?.at(0);e=t?u(t,["parquet"]):null;break}case"portal-item":e=this.data.portalItem?.title}return e||"Parquet"}set title(e){this._set("title",e)}writeData(e,t,r,i){if(!e)return;if("portal-item"===e.type&&"Parquet Feature Layer"!==e.portalItem?.type)return void i.messages?.push(new s("parquet-layer:unsupported-data",`Portal item with type '${e.portalItem?.type}' is not supported in web maps`,{layer:this,itemId:e.portalItem?.id}));const o=e.write({},i);o&&(t.source=o)}get urls(){return"files"===this.data?.type?this.data.urls:this._emptyUrls}set urls(e){o(a.getLogger(this),"urls",{replacement:"data",version:"5.1",warnOnce:!0}),this.data=new Q({urls:this._normalizeUrls(e)})}createPopupTemplate(e){return J(this,e)}createQuery(){const e=new B;return e.returnGeometry=!0,e.outFields=["*"],e.where=this.definitionExpression||"1=1",e}async createSource(e){const t=new j({layer:this});return await t.load(e),t}getFieldDomain(e,t){return null}getField(e){return this.fieldsIndex.get(e)}async queryFeatures(e,t){await this.load();const r=await this.source.queryFeatures(this._normalizeQuery(e),t),i=this.graphicOrigin;if(r?.features)for(const o of r.features)o.layer=o.sourceLayer=this,o.origin=i;return r}async queryObjectIds(e,t){return await this.load(),this.source.queryObjectIds(this._normalizeQuery(e),t)}async queryFeatureCount(e,t){return await this.load(),this.source.queryFeatureCount(this._normalizeQuery(e),t)}async queryExtent(e,t){return await this.load(),this.source.queryExtent(this._normalizeQuery(e),t)}_normalizeQuery(e){return B.from(e)??this.createQuery()}_normalizeUrls(e){return Array.isArray(e)?new i(e):e??new i}async _load(e){"portal-item"===this.data?.type&&await this.data.portalItem.load();const t=await this.createSource(e);this._set("source",t),this.read(t.sourceJSON,{origin:"service"}),["fields"].forEach(e=>this.revertToOrigin(e,"service")),D(this.renderer,this.fieldsIndex),null==this.spatialReference&&(this.spatialReference=f.WGS84)}};e([d({readOnly:!0,json:{read:!1,write:!1}})],W.prototype,"capabilities",null),e([d({type:String})],W.prototype,"copyright",void 0),e([d({readOnly:!0})],W.prototype,"defaultPopupTemplate",null),e([d({type:String,json:{name:"layerDefinition.definitionExpression",write:{enabled:!0,allowNull:!0}}})],W.prototype,"definitionExpression",void 0),e([d({type:Boolean})],W.prototype,"returnM",void 0),e([d({type:Boolean})],W.prototype,"returnZ",void 0),e([d()],W.prototype,"displayOptimization",void 0),e([d({type:[T],json:{name:"layerDefinition.fields",write:{ignoreOrigin:!0,isRequired:!0},origins:{service:{name:"fields"}}}})],W.prototype,"fields",void 0),e([y("fields")],W.prototype,"writeFields",null),e([d(N.fieldsIndex)],W.prototype,"fieldsIndex",void 0),e([d(A)],W.prototype,"geometryEncoding",void 0),e([d({type:c,json:{name:"extent"}})],W.prototype,"fullExtent",void 0),e([d({type:k.apiValues,json:{name:"layerDefinition.geometryType",read:{reader:k.read},write:{writer:k.write,ignoreOrigin:!0,isRequired:!0},origins:{service:{read:{source:"geometryType",reader:k.read}}}}})],W.prototype,"geometryType",void 0),e([d({readOnly:!0,clonable:!1})],W.prototype,"graphicOrigin",void 0),e([d(F)],W.prototype,"labelsVisible",void 0),e([d({type:[U],json:{name:"layerDefinition.drawingInfo.labelingInfo",read:{reader:C},write:!0}})],W.prototype,"labelingInfo",void 0),e([d(P)],W.prototype,"legendEnabled",void 0),e([d()],W.prototype,"file",void 0),e([d({type:String,readOnly:!0})],W.prototype,"objectIdField",void 0),e([d({type:["ParquetLayer"]})],W.prototype,"operationalLayerType",void 0),e([d(N.outFields)],W.prototype,"outFields",void 0),e([d(L)],W.prototype,"popupEnabled",void 0),e([d({type:t,json:{name:"popupInfo",write:!0}})],W.prototype,"popupTemplate",void 0),e([d({types:G,json:{name:"layerDefinition.drawingInfo.renderer",write:!0,origins:{service:{read:{source:"drawingInfo.renderer"}}}}})],W.prototype,"renderer",null),e([d({type:j,readOnly:!0,cast:null,json:{read:!1}})],W.prototype,"source",void 0),e([d({type:f,json:{name:"layerDefinition.spatialReference",write:{ignoreOrigin:!0,isRequired:!0},origins:{service:{read:{source:"extent.spatialReference"}}}}})],W.prototype,"spatialReference",void 0),e([d({type:[S]})],W.prototype,"templates",void 0),e([d()],W.prototype,"title",null),e([d({json:{read:!1},readOnly:!0})],W.prototype,"type",void 0),e([d({types:{key:"type",base:null,typeMap:{files:Q,"portal-item":M}},json:{name:"source",origins:{"web-map":{write:{target:"source",ignoreOrigin:!0}}}}})],W.prototype,"data",void 0),e([y("web-map","data")],W.prototype,"writeData",null),e([d({type:i.ofType(String),json:{read:!1,write:!1}})],W.prototype,"urls",null),W=e([m("esri.layers.ParquetLayer")],W);export{W as default};
2
+ import{__decorate as e}from"tslib";import t from"../PopupTemplate.js";import{ClonableMixin as r}from"../core/Clonable.js";import i from"../core/Collection.js";import{deprecatedProperty as o}from"../core/deprecate.js";import s from"../core/Error.js";import has from"../core/has.js";import a from"../core/Logger.js";import{MultiOriginJSONSupportMixin as p}from"../core/MultiOriginJSONSupport.js";import{setDeepValue as n}from"../core/object.js";import{on as l}from"../core/reactiveUtils.js";import{getFilename as u}from"../core/urlUtils.js";import{property as d}from"../core/accessorSupport/decorators/property.js";import{subclass as m}from"../core/accessorSupport/decorators/subclass.js";import{writer as y}from"../core/accessorSupport/decorators/writer.js";import c from"../geometry/Extent.js";import f from"../geometry/SpatialReference.js";import h from"../graphic/ParquetGraphicOrigin.js";import g from"./Layer.js";import{ParquetSource as j}from"./graphics/sources/ParquetSource.js";import{BlendLayer as w}from"./mixins/BlendLayer.js";import{CustomParametersMixin as v}from"./mixins/CustomParametersMixin.js";import{DataSeriesLayer as b}from"./mixins/DataSeriesLayer.js";import{FeatureEffectLayer as O}from"./mixins/FeatureEffectLayer.js";import{FeatureReductionLayer as x}from"./mixins/FeatureReductionLayer.js";import{OperationalLayer as I}from"./mixins/OperationalLayer.js";import{OrderedLayer as q}from"./mixins/OrderedLayer.js";import{RefreshableLayer as E}from"./mixins/RefreshableLayer.js";import{ScaleRangeLayer as F}from"./mixins/ScaleRangeLayer.js";import{labelsVisible as L,legendEnabled as P,popupEnabled as T}from"./support/commonProperties.js";import S from"./support/FeatureTemplate.js";import _ from"./support/Field.js";import{defineFieldProperties as D}from"./support/fieldProperties.js";import{fixRendererFields as R}from"./support/fieldUtils.js";import z from"./support/GeometryEncodingLocation.js";import U from"./support/GeometryEncodingWkb.js";import C from"./support/LabelClass.js";import{reader as Q}from"./support/labelingInfo.js";import M from"./support/ParquetFilesData.js";import k from"./support/ParquetPortalItemData.js";import{parquetGeometryTypeKebabDict as G}from"./support/parquetUtils.js";import{rendererTypes as B}from"../renderers/support/typeUtils.js";import J from"../rest/support/Query.js";import{createPopupTemplate as N}from"../support/popupUtils.js";const V=D(),A="__OBJECTID",W={types:{key:"type",base:null,typeMap:{wkb:U,location:z}},json:{name:"layerDefinition.geometryEncoding",write:{ignoreOrigin:!0,isRequired:!0},origins:{service:{read:{source:"geometryEncoding"}}}}};let Z=class extends(x(O(w(q(b(F(E(I(p(v(r(g)))))))))))){constructor(e){super(e),this._emptyUrls=new i,this.copyright=null,this.definitionExpression=null,this.returnM=void 0,this.returnZ=void 0,this.displayOptimization=null,this.fields=null,this.fieldsIndex=null,this.geometryEncoding=null,this.fullExtent=null,this.geometryType=null,this.graphicOrigin=new h(this),this.labelsVisible=!0,this.labelingInfo=null,this.objectIdField=A,this.operationalLayerType="ParquetLayer",this.outFields=null,this.persistenceEnabled=!!has("parquetlayer-persistence-enabled"),this.popupTemplate=null,this.source=null,this.spatialReference=null,this.templates=null,this.type="parquet",this.data=null}initialize(){this.addHandles(l(()=>this.source,"source-changed",()=>{this.emit("refresh",{dataChanged:!0})}))}destroy(){this.source?.destroy()}async load(e){return this.addResolvingPromise(this._load(e)),this}get capabilities(){return this.source?.capabilities}get defaultPopupTemplate(){return this.createPopupTemplate()}writeFields(e,t,r,i){const o=e.filter(e=>!(e.name===A&&"oid"===e.type)).map(e=>e.toJSON(i));n(r,o,t)}get isTable(){return null==this.geometryEncoding&&null==this.displayOptimization}set renderer(e){R(e,this.fieldsIndex),this._set("renderer",e)}get title(){let e=this._get("title");if(e&&"defaults"!==this.originOf("title"))return e;switch(this.data?.type){case"files":{const t=this.data.urls?.at(0);e=t?u(t,["parquet"]):null;break}case"portal-item":e=this.data.portalItem?.title}return e||"Parquet"}set title(e){this._set("title",e)}writeData(e,t,r,i){if(!e)return;if("portal-item"===e.type&&"Parquet Feature Layer"!==e.portalItem?.type)return void i.messages?.push(new s("parquet-layer:unsupported-data",`Portal item with type '${e.portalItem?.type}' is not supported in web maps`,{layer:this,itemId:e.portalItem?.id}));const o=e.write({},i);o&&(t.source=o)}get urls(){return"files"===this.data?.type?this.data.urls:this._emptyUrls}set urls(e){o(a.getLogger(this),"urls",{replacement:"data",version:"5.1",warnOnce:!0}),this.data=new M({urls:this._normalizeUrls(e)})}createPopupTemplate(e){return N(this,e)}createQuery(){const e=new J;return e.returnGeometry=!0,e.outFields=["*"],e.where=this.definitionExpression||"1=1",e}async createSource(e){const t=new j({layer:this});return await t.load(e),t}getFieldDomain(e,t){return null}getField(e){return this.fieldsIndex.get(e)}async queryFeatures(e,t){await this.load();const r=await this.source.queryFeatures(this._normalizeQuery(e),t),i=this.graphicOrigin;if(r?.features)for(const o of r.features)o.layer=o.sourceLayer=this,o.origin=i;return r}async queryObjectIds(e,t){return await this.load(),this.source.queryObjectIds(this._normalizeQuery(e),t)}async queryFeatureCount(e,t){return await this.load(),this.source.queryFeatureCount(this._normalizeQuery(e),t)}async queryExtent(e,t){return await this.load(),this.source.queryExtent(this._normalizeQuery(e),t)}async hasDataChanged(){if("portal-item"===this.data?.type){const e=this.data.portalItem,t=e.modified?.getTime();if(await e.reload(),t===e.modified?.getTime())return!1}return await this.source.reload(null),!0}_normalizeQuery(e){return J.from(e)??this.createQuery()}_normalizeUrls(e){return Array.isArray(e)?new i(e):e??new i}async _load(e){"portal-item"===this.data?.type&&await this.data.portalItem.load();const t=await this.createSource(e);this._set("source",t),this.read(t.sourceJSON,{origin:"service"}),["fields"].forEach(e=>this.revertToOrigin(e,"service")),R(this.renderer,this.fieldsIndex),null==this.spatialReference&&(this.spatialReference=f.WGS84)}};e([d({readOnly:!0,json:{read:!1,write:!1}})],Z.prototype,"capabilities",null),e([d({type:String})],Z.prototype,"copyright",void 0),e([d({readOnly:!0})],Z.prototype,"defaultPopupTemplate",null),e([d({type:String,json:{name:"layerDefinition.definitionExpression",write:{enabled:!0,allowNull:!0}}})],Z.prototype,"definitionExpression",void 0),e([d({type:Boolean})],Z.prototype,"returnM",void 0),e([d({type:Boolean})],Z.prototype,"returnZ",void 0),e([d()],Z.prototype,"displayOptimization",void 0),e([d({type:[_],json:{name:"layerDefinition.fields",write:{ignoreOrigin:!0,isRequired:!0},origins:{service:{name:"fields"}}}})],Z.prototype,"fields",void 0),e([y("fields")],Z.prototype,"writeFields",null),e([d(V.fieldsIndex)],Z.prototype,"fieldsIndex",void 0),e([d(W)],Z.prototype,"geometryEncoding",void 0),e([d({type:c,json:{name:"extent"}})],Z.prototype,"fullExtent",void 0),e([d({type:G.apiValues,json:{name:"layerDefinition.geometryType",read:{reader:G.read},write:{writer:G.write,ignoreOrigin:!0,isRequired:!0},origins:{service:{read:{source:"geometryType",reader:G.read}}}}})],Z.prototype,"geometryType",void 0),e([d({readOnly:!0,clonable:!1})],Z.prototype,"graphicOrigin",void 0),e([d(L)],Z.prototype,"labelsVisible",void 0),e([d({type:[C],json:{name:"layerDefinition.drawingInfo.labelingInfo",read:{reader:Q},write:!0}})],Z.prototype,"labelingInfo",void 0),e([d(P)],Z.prototype,"legendEnabled",void 0),e([d()],Z.prototype,"file",void 0),e([d({type:String,readOnly:!0})],Z.prototype,"objectIdField",void 0),e([d({type:["ParquetLayer"]})],Z.prototype,"operationalLayerType",void 0),e([d(V.outFields)],Z.prototype,"outFields",void 0),e([d(T)],Z.prototype,"popupEnabled",void 0),e([d({type:t,json:{name:"popupInfo",write:!0}})],Z.prototype,"popupTemplate",void 0),e([d({types:B,json:{name:"layerDefinition.drawingInfo.renderer",write:!0,origins:{service:{read:{source:"drawingInfo.renderer"}}}}})],Z.prototype,"renderer",null),e([d({type:j,readOnly:!0,cast:null,json:{read:!1}})],Z.prototype,"source",void 0),e([d({type:f,json:{name:"layerDefinition.spatialReference",write:{ignoreOrigin:!0,isRequired:!0},origins:{service:{read:{source:"extent.spatialReference"}}}}})],Z.prototype,"spatialReference",void 0),e([d({type:[S]})],Z.prototype,"templates",void 0),e([d()],Z.prototype,"title",null),e([d({json:{read:!1},readOnly:!0})],Z.prototype,"type",void 0),e([d({types:{key:"type",base:null,typeMap:{files:M,"portal-item":k}},json:{name:"source",origins:{"web-map":{write:{target:"source",ignoreOrigin:!0}}}}})],Z.prototype,"data",void 0),e([y("web-map","data")],Z.prototype,"writeData",null),e([d({type:i.ofType(String),json:{read:!1,write:!1}})],Z.prototype,"urls",null),Z=e([m("esri.layers.ParquetLayer")],Z);export{Z as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import t from"../Graphic.js";import r from"../PopupTemplate.js";import{ClonableMixin as i}from"../core/Clonable.js";import s from"../core/Collection.js";import o from"../core/Error.js";import{abortHandle as a}from"../core/handleUtils.js";import n from"../core/Logger.js";import{destroyMaybe as l}from"../core/maybe.js";import{MultiOriginJSONSupportMixin as p}from"../core/MultiOriginJSONSupport.js";import{throwIfAbortError as d,throwIfAborted as u,isAbortError as y,throwIfNotAbortError as c}from"../core/promiseUtils.js";import{whenOnce as m}from"../core/reactiveUtils.js";import{property as h,subclass as f}from"../core/accessorSupport/decorators.js";import{getProperties as g}from"../core/accessorSupport/utils.js";import v from"../geometry/Point.js";import{projectAsync as w}from"../geometry/projectionUtils.js";import b from"../graphic/SceneGraphicOrigin.js";import I from"./Layer.js";import{NoModelError as L,MultipleModelsError as j}from"./graphics/sources/support/uploadAssetErrors.js";import{APIKeyMixin as F}from"./mixins/APIKeyMixin.js";import{ArcGISService as S}from"./mixins/ArcGISService.js";import{CustomParametersMixin as T}from"./mixins/CustomParametersMixin.js";import{EditBusLayer as O}from"./mixins/EditBusLayer.js";import{OperationalLayer as _}from"./mixins/OperationalLayer.js";import{PortalLayer as x}from"./mixins/PortalLayer.js";import{ScaleRangeLayer as A}from"./mixins/ScaleRangeLayer.js";import{SceneService as P}from"./mixins/SceneService.js";import{useViewTimeProperty as E}from"./mixins/TemporalLayer.js";import{isHostedAgolService as U}from"./support/arcgisLayerUrl.js";import{findAssociatedFeatureService as D}from"./support/associatedFeatureServiceUtils.js";import{zeroCapabilities as q}from"./support/capabilities.js";import{elevationInfo as R,labelsVisible as C,legendEnabled as Q,popupEnabled as G,attributeTableTemplate as N,screenSizePerspectiveEnabled as k}from"./support/commonProperties.js";import{getFieldDomain as M,computeEffectiveEditingEnabled as V,getGlobalIdToObjectIdMap as K}from"./support/featureLayerUtils.js";import z from"./support/FeatureReductionSelection.js";import{defineFieldProperties as $}from"./support/fieldProperties.js";import H from"./support/FieldsIndex.js";import{fixRendererFields as W,fixTimeInfoFields as B,unpackFieldNames as Z}from"./support/fieldUtils.js";import{I3SNodePageDefinition as J,I3SMaterialDefinition as X,I3STextureSetDefinition as Y,I3SGeometryDefinition as ee}from"./support/I3SLayerDefinitions.js";import{isFileEditFormat as te,isFileSupported as re}from"./support/infoFor3D.js";import ie from"./support/LabelClass.js";import{reader as se}from"./support/labelingInfo.js";import oe from"./support/LayerFloorInfo.js";import{layersLoaderMap as ae}from"./support/layersLoader.js";import{getMeshTransformForMetersToSpatialReference as ne}from"./support/meshSpatialReferenceScaleUtils.js";import{RangeInfo as le}from"./support/RangeInfo.js";import pe from"./support/SceneFilter.js";import{cacheIsOutOfSync as de}from"./support/sceneLayerCacheUtils.js";import{fetchStatistics as ue}from"./support/sceneLayerStatistics.js";import{SceneServiceTimeInfo as ye}from"./support/SceneServiceTimeInfo.js";import ce from"./support/TimeInfo.js";import{loadStyleRenderer as me}from"../renderers/support/styleUtils.js";import{webSceneRendererTypes as he}from"../renderers/support/typeUtils.js";import fe from"../rest/support/Query.js";import{logInvalidElevationInfoWarning as ge,elevationModeUnsupportedMessage as ve,featureExpressionUnsupportedMessage as we}from"../support/elevationInfoUtils.js";import{createPopupTemplate as be}from"../support/popupUtils.js";import{extractZipFiles as Ie}from"../support/zipUtils.js";import Le from"../time/TimeExtent.js";import je from"../time/TimeInterval.js";import{queryAttributesFromCachedAttributesId as Fe}from"../views/3d/layers/i3s/I3SUtil.js";import{getRequiredFields as Se,getFetchPopupTemplate as Te}from"../views/layers/support/popupUtils.js";import{transparencyToOpacity as Oe}from"../webdoc/support/opacityUtils.js";import{reader as _e}from"../core/accessorSupport/decorators/reader.js";const xe=new Set(["3DObject","Point"]),Ae=$();let Pe=class extends(O(P(S(_(x(A(p(T(F(i(I))))))))))){constructor(...e){super(...e),this.featureReduction=null,this.rangeInfos=null,this.operationalLayerType="ArcGISSceneServiceLayer",this.type="scene",this.fields=null,this.graphicOrigin=new b(this),this.floorInfo=null,this.outFields=null,this.nodePages=null,this.materialDefinitions=null,this.textureSetDefinitions=null,this.geometryDefinitions=null,this.serviceUpdateTimeStamp=null,this.excludeObjectIds=new s,this.definitionExpression=null,this.filter=null,this.path=null,this.labelsVisible=!0,this.labelingInfo=null,this.legendEnabled=!0,this.priority=null,this.semantic=null,this.cachedDrawingInfo={color:!1},this.popupEnabled=!0,this.popupTemplate=null,this.attributeTableTemplate=null,this.objectIdField=null,this.globalIdField=null,this._fieldUsageInfo={},this.screenSizePerspectiveEnabled=!0,this.serviceItemId=void 0,this.serviceTimeInfo=null}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}destroy(){this._set("renderer",null),this.associatedLayer=l(this.associatedLayer)}getField(e){return this.fieldsIndex.get(e)}getFieldDomain(e,t){const r=this.getField(e)?.domain??null;return this.associatedLayer?M(this.associatedLayer,e,t,r):r}getFeatureType(e){return e&&this.associatedLayer?this.associatedLayer.getFeatureType(e):null}get types(){return this.associatedLayer?.types??[]}get typeIdField(){return this.associatedLayer?.typeIdField??null}get templates(){return this.associatedLayer?.templates??null}get formTemplate(){return this.associatedLayer?.formTemplate??null}get fieldsIndex(){return new H(this.fields)}readNodePages(e,t,r){return"Point"===t.layerType&&(e=t.pointNodePages),null==e||"object"!=typeof e?null:J.fromJSON(e,r)}set elevationInfo(e){this._set("elevationInfo",e),this.loaded&&this._validateElevationInfo()}get effectiveCapabilities(){return this._capabilitiesFromAssociatedFeatureLayer(this.associatedLayer?.effectiveCapabilities)}get effectiveEditingEnabled(){return null!=this.associatedLayer&&V(this.associatedLayer)}get geometryType(){return Ue[this.profile]||"mesh"}set renderer(e){W(e,this.fieldsIndex),this._set("renderer",e)}readCachedDrawingInfo(e){return null!=e&&"object"==typeof e||(e={}),null==e.color&&(e.color=!1),e}get capabilities(){return this._capabilitiesFromAssociatedFeatureLayer(this.associatedLayer?.capabilities)}_capabilitiesFromAssociatedFeatureLayer(e){e=null!=e?e:q;const{query:t,queryRelated:r,editing:{supportsGlobalId:i,supportsRollbackOnFailure:s,supportsUploadWithItemId:o,supportsGeometryUpdate:a,supportsReturnServiceEditsInSourceSpatialReference:n},data:{supportsZ:l,supportsM:p,isVersioned:d,supportsAttachment:u},operations:{supportsEditing:y,supportsAdd:c,supportsUpdate:m,supportsDelete:h,supportsQuery:f,supportsQueryAttachments:g,supportsAsyncConvert3D:v},attachment:w}=e,b=e.operations.supportsChangeTracking,I=!!this.associatedLayer?.infoFor3D;return{query:t,queryRelated:r,editing:{supportsGlobalId:i,supportsReturnServiceEditsInSourceSpatialReference:n,supportsRollbackOnFailure:s,supportsGeometryUpdate:I&&a,supportsUploadWithItemId:o},data:{supportsAttachment:u,supportsZ:l,supportsM:p,isVersioned:d,queryFormats:e.data.queryFormats,sourceFormats:e.data.sourceFormats},operations:{supportsQuery:f,supportsQueryAttachments:g,supportsEditing:y&&b,supportsAdd:I&&c&&b,supportsDelete:I&&h&&b,supportsUpdate:m&&b,supportsAsyncConvert3D:v},attachment:w}}get editingEnabled(){return this._isOverridden("editingEnabled")?this._get("editingEnabled"):this.associatedLayer?.editingEnabled??!1}set editingEnabled(e){this._overrideIfSome("editingEnabled",e)}get infoFor3D(){return this.associatedLayer?.infoFor3D??null}get relationships(){return this.associatedLayer?.relationships}get defaultPopupTemplate(){return this.associatedLayer||this.attributeStorageInfo?this.createPopupTemplate():null}readObjectIdField(e,t){return!e&&t.fields&&t.fields.some(t=>("esriFieldTypeOID"===t.type&&(e=t.name),!!e)),e||void 0}readGlobalIdField(e,t){return!e&&t.fields&&t.fields.some(t=>("esriFieldTypeGlobalID"===t.type&&(e=t.name),!!e)),e||void 0}get displayField(){return this.associatedLayer?.displayField??null}readProfile(e,t){const r=t.store.profile;return null!=r&&Ee[r]?Ee[r]:(n.getLogger(this).error("Unknown or missing profile",{profile:r,layer:this}),"mesh-pyramids")}get useViewTime(){return this.associatedLayer?.useViewTime??!0}set useViewTime(e){this._override("useViewTime",e)}get timeInfo(){const e=this.associatedLayer?.timeInfo;if(null==e)return null;const t=e.clone();return B(t,this.fieldsIndex),t}set timeInfo(e){B(e,this.fieldsIndex),this._override("timeInfo",e)}get timeExtent(){return this.associatedLayer?.timeExtent}set timeExtent(e){this._override("timeExtent",e)}get timeOffset(){return this.associatedLayer?.timeOffset}set timeOffset(e){this._override("timeOffset",e)}get datesInUnknownTimezone(){return this.associatedLayer?.datesInUnknownTimezone??!1}set datesInUnknownTimezone(e){this._override("datesInUnknownTimezone",e)}load(e){return this.addResolvingPromise(this._load(e)),Promise.resolve(this)}async _load(e){const t=e?.signal;await this.loadFromPortal({supportedTypes:["Scene Service"]},e).catch(d),await this._fetchService(t),await Promise.all([this._fetchIndexAndUpdateExtent(this.nodePages,t),this._setAssociatedFeatureLayer(t),this._loadFilterGeometries()]),this._validateElevationInfo(),this._applyAssociatedLayerOverrides(),this._populateFieldUsageInfo(),await this.loadTimeInfoFromService(e),await me(this,{origin:"service"},t),W(this.renderer,this.fieldsIndex),await this.finishLoadEditablePortalLayer(e)}async beforeSave(){null!=this.filter&&(this.filter=this.filter.clone(),await this.load())}async _loadFilterGeometries(){if(this.filter)try{await this.filter.loadGeometries(this.spatialReference)}catch(e){n.getLogger(this).error("#_loadFilterGeometries()",this,"Failed to load filter geometries. Geometry filter will not be applied for this layer.",{error:e}),this.filter=null}}createQuery(){const e=new fe;return"mesh"===this.geometryType?this.capabilities.query.supportsReturnMesh&&(e.returnGeometry=!0):(e.returnGeometry=!0,e.returnZ=!0),e.where=this.definitionExpression||"1=1",e.sqlFormat="standard",e.outFields=["*"],e}queryExtent(e,t){return this._getAssociatedLayerForQuery().then(r=>r.queryExtent(e||this.createQuery(),t))}queryFeatureCount(e,t){return this._getAssociatedLayerForQuery().then(r=>r.queryFeatureCount(e||this.createQuery(),t))}queryFeatures(e,t){return this._getAssociatedLayerForQuery().then(r=>r.queryFeatures(e||this.createQuery(),t)).then(e=>{if(e?.features)for(const t of e.features)t.layer=this,t.sourceLayer=this,t.origin=this.graphicOrigin;return e})}async queryModels(e,t){const[r,{queryModels:i}]=await Promise.all([this._getAssociatedLayerForQuery(),import("./scene/modelQuerySupport.js")]);return i(this,r,e,t)}async queryModel(e,t){const[r,{queryModel:i}]=await Promise.all([this._getAssociatedLayerForQuery(),import("./scene/modelQuerySupport.js")]);return i(this,r,e,t)}async queryRelatedFeatures(e,t){if(await this.load(),!this.associatedLayer)throw new o("scenelayer:query-not-available","SceneLayer queries are not available without an associated feature layer",{layer:this});return this.associatedLayer.queryRelatedFeatures(e,t)}async queryRelatedFeaturesCount(e,t){if(await this.load(),!this.associatedLayer)throw new o("scenelayer:query-not-available","SceneLayer queries are not available without an associated feature layer",{layer:this});return this.associatedLayer.queryRelatedFeaturesCount(e,t)}async queryCachedAttributes(e,t){const r=Z(this.fieldsIndex,await Se(this,Te(this)));return Fe(this.parsedUrl?.path??"",this.attributeStorageInfo??[],e,t,r,this.apiKey,this.customParameters)}async queryCachedFeature(e,r){const i=await this.queryCachedAttributes(e,[r]);if(!i||0===i.length)throw new o("scenelayer:feature-not-in-cached-data","Feature not found in cached data");const s=new t;return s.attributes=i[0],s.layer=this,s.sourceLayer=this,s.origin=this.graphicOrigin,s}queryObjectIds(e,t){return this._getAssociatedLayerForQuery().then(r=>r.queryObjectIds(e||this.createQuery(),t))}queryAttachments(e,t){return this._getAssociatedLayerForQuery().then(r=>r.queryAttachments(e,t))}getFieldUsageInfo(e){const t={supportsLabelingInfo:!1,supportsRenderer:!1,supportsPopupTemplate:!1,supportsLayerQuery:!1};return this.loaded?this._fieldUsageInfo[e]||t:(n.getLogger(this).error("#getFieldUsageInfo()","Unavailable until layer is loaded"),t)}createPopupTemplate(e){return be(this,e)}_getAssociatedLayerForQuery(){const e=this.associatedLayer;return e?.loaded?Promise.resolve(e):this._loadAssociatedLayerForQuery()}async _loadAssociatedLayerForQuery(){if(await this.load(),!this.associatedLayer)throw new o("scenelayer:query-not-available","SceneLayer queries are not available without an associated feature layer",{layer:this});try{await this.associatedLayer.load()}catch(e){throw new o("scenelayer:query-not-available","SceneLayer associated feature layer could not be loaded",{layer:this,error:e})}return this.associatedLayer}hasCachedStatistics(e){return null!=this.statisticsInfo&&this.statisticsInfo.some(t=>t.name===e)}async queryCachedStatistics(e,t){return await this.load(t),await this.fetchStatistics(e,t)}async saveAs(e,t){return this._debouncedSaveOperations(1,{...t,getTypeKeywords:()=>this._getTypeKeywords(),portalItemLayerType:"scene"},e)}async save(){const e={getTypeKeywords:()=>this._getTypeKeywords(),portalItemLayerType:"scene"};return this._debouncedSaveOperations(0,e)}async applyEdits(e,t){const{applyEdits:r}=await(import("./graphics/editingSupport.js"));let i=t;await this.load();const s=this.associatedLayer;if(!s)throw new o(`${this.type}-layer:not-editable`,"Service is not editable");await s.load();const{globalIdField:a}=s,n=!!s.infoFor3D,l=i?.globalIdUsed??!0;if(n&&null==a)throw new o(`${this.type}-layer:not-editable`,"Valid globalIdField expected on editable SceneLayer");if(n&&!l)throw new o(`${this.type}-layer:globalid-required`,"globalIdUsed must not be false for SceneLayer editing as globalIds are required.");return U(s.url)&&n&&null!=e.deleteFeatures&&null!=a&&(i={...i,globalIdToObjectId:await K(s,e.deleteFeatures,a)}),r(this,s.source,e,i)}async uploadAssets(e,t){if(await this.load(),null==this.associatedLayer)throw new o(`${this.type}-layer:not-editable`,"Service is not editable");return await this.associatedLayer.load(),this.associatedLayer.uploadAssets(e,t)}async convertMesh(e,t){t??={};const r=e=>{throw n.getLogger(this).error(".convertMesh()",e.message),e};await this.load(t),this.infoFor3D||r(new o("invalid:layer","SceneLayer has no capability for mesh conversion"));const i=await this.extractAndFilterFiles(e);u(t);const s=i.reduce((e,t)=>te(this.infoFor3D,t)?e+1:e,0);0===s&&r(new L),s>1&&r(new j);const a=this.spatialReference,l=t.origin,p=await w(l??t.defaultOrigin??new v({x:0,y:0,z:0,spatialReference:a}),a,t),d=a.isGeographic?"local":"georeferenced",{createWithExternalSource:y}=await(import("../geometry/support/meshUtils.js"));u(t);const c=y(p,{type:"client",files:i},{vertexSpace:d,transform:ne(a),unitConversionDisabled:!0}),[m]=await this.uploadAssets([c],{...t,useAssetOrigin:!l});return m}async extractAndFilterFiles(e){await this.load();const t=this.infoFor3D;if(!t)return e;return(await Ie(e)).filter(e=>re(t,e))}validateLayer(e){if(e.layerType&&!xe.has(e.layerType))throw new o("scenelayer:layer-type-not-supported","SceneLayer does not support this layer type",{layerType:e.layerType});if(isNaN(this.version.major)||isNaN(this.version.minor))throw new o("layer:service-version-not-supported","Service version is not supported.",{serviceVersion:this.version.versionString,supportedVersions:"1.x, 2.x"});if(this.version.major>2)throw new o("layer:service-version-too-new","Service version is too new.",{serviceVersion:this.version.versionString,supportedVersions:"1.x, 2.x"});function t(e,t){let r=!1,i=!1;if(null==e)r=!0,i=!0;else{const s=t&&t.isGeographic;switch(e){case"east-north-up":case"earth-centered":r=!0,i=s;break;case"vertex-reference-frame":r=!0,i=!s;break;default:r=!1}}if(!r)throw new o("scenelayer:unsupported-normal-reference-frame","Normal reference frame is invalid.");if(!i)throw new o("scenelayer:incompatible-normal-reference-frame","Normal reference frame is incompatible with layer spatial reference.")}t(this.normalReferenceFrame,this.spatialReference)}get isUsedAsGroundLayer(){return!1}_getTypeKeywords(){const e=[];if("points"===this.profile)e.push("Point");else{if("mesh-pyramids"!==this.profile)throw new o("scenelayer:unknown-profile","SceneLayer:save() encountered an unknown SceneLayer profile: "+this.profile);e.push("3DObject")}return e}_populateFieldUsageInfo(){if(this._fieldUsageInfo={},this.fields)for(const e of this.fields){const t=!!this.attributeStorageInfo?.some(t=>t.name===e.name),r=!!this.associatedLayer?.fields?.some(t=>t&&e.name===t.name),i={supportsLabelingInfo:t,supportsRenderer:t,supportsPopupTemplate:t||r,supportsLayerQuery:r};this._fieldUsageInfo[e.name]=i}}_applyAssociatedLayerOverrides(){this._applyAssociatedLayerFieldsOverrides(),this._applyAssociatedLayerPropertyOverrides(),this._applyAssociatedLayerExtentOverride(),this._applyAssociatedLayerPrivileges()}_applyAssociatedLayerFieldsOverrides(){if(!this.associatedLayer?.fields)return;let e=null;for(const t of this.associatedLayer.fields){const r=this.getField(t.name);r?(!r.domain&&t.domain&&(r.domain=t.domain.clone()),r.editable=t.editable,r.nullable=t.nullable,r.length=t.length):(e||(e=this.fields?this.fields.slice():[]),e.push(t.clone()))}e&&this._set("fields",e)}_applyAssociatedLayerPropertyOverrides(){if(!this.associatedLayer)return;const e=["popupTemplate","popupEnabled","attributeTableTemplate"],t=g(this);for(let r=0;r<e.length;r++){const i=e[r],s=this.originIdOf(i),o=this.associatedLayer.originIdOf(i);s<o&&(2===o||3===o)&&t.setAtOrigin(i,this.associatedLayer[i],o)}}_applyAssociatedLayerExtentOverride(){const e=this.associatedLayer?.getAtOrigin("fullExtent","service");if(null==this.associatedLayer?.infoFor3D||!e||!U(this.associatedLayer?.url)||!de(this))return;g(this).setAtOrigin("fullExtent",e.clone(),2)}_applyAssociatedLayerPrivileges(){const e=this.associatedLayer;e&&(this._set("userHasEditingPrivileges",e.userHasEditingPrivileges),this._set("userHasFullEditingPrivileges",e.userHasFullEditingPrivileges),this._set("userHasUpdateItemPrivileges",e.userHasUpdateItemPrivileges))}async _setAssociatedFeatureLayer(e){if(["mesh-pyramids","points"].includes(this.profile))try{const{serverUrl:t,layerId:r,portalItem:i}=await D(`${this.url}/layers/${this.layerId}`,{sceneLayerItem:this.portalItem,customParameters:this.customParameters,apiKey:this.apiKey,signal:e}),s=await ae.FeatureLayer();this.associatedLayer=new s({url:t,customParameters:this.customParameters,apiKey:this.apiKey,layerId:r,portalItem:i}),await this.associatedLayer.load()}catch(t){y(t)||this._logWarningOnPopupEnabled().catch(()=>{})}}async _logWarningOnPopupEnabled(){const e=new AbortController;this.addHandles(a(e));try{await m(()=>this.popupEnabled&&null!=this.popupTemplate,e.signal)}catch(r){return void c(r)}const t=`this SceneLayer: ${this.title}`;null==this.attributeStorageInfo?n.getLogger(this).warn(`Associated FeatureLayer could not be loaded and no binary attributes found. Popups will not work on ${t}`):n.getLogger(this).info(`Associated FeatureLayer could not be loaded. Falling back to binary attributes for Popups on ${t}`)}_validateElevationInfo(){const e=this.elevationInfo;"mesh-pyramids"===this.profile&&ge(n.getLogger(this),ve("Mesh scene layers","relative-to-scene",e)),ge(n.getLogger(this),we("Scene layers",e))}async fetchStatistics(e,t){return await ue({fieldName:e,statisticsInfo:this.statisticsInfo,errorContext:"scenelayer",fieldsIndex:this.fieldsIndex,path:this.parsedUrl?.path??"",customParameters:this.customParameters,apiKey:this.apiKey,signal:t?.signal})}async loadTimeInfoFromService(e){const{serviceTimeInfo:t}=this;if(null==t)return;const{startTimeField:r,endTimeField:i}=t;if(null==r&&null==i)return;if(de({associatedLayer:this.associatedLayer,serviceUpdateTimeStamp:this.serviceUpdateTimeStamp}))return;const s=async t=>{let i=null;try{const r=await this.fetchStatistics(t,e);i=r?.stats}catch{}if(null==i)return null;const{minTimeStr:s,min:o,maxTimeStr:a,max:n}=i,l=t===r?s??o:a??n;return null!=l?new Date(l):null},[o,a]=await Promise.all([s(r),s(i)]);if(null!=r&&null==o||null!=i&&null==a)return;const n=new Le({start:o,end:a});this.setAtOrigin("timeInfo",new ce({endField:i,startField:r,fullTimeExtent:n}),"service")}};e([h({types:{key:"type",base:null,typeMap:{selection:z}},json:{origins:{"web-scene":{name:"layerDefinition.featureReduction",write:{allowNull:!0}},"portal-item":{name:"layerDefinition.featureReduction",write:{allowNull:!0}}}}})],Pe.prototype,"featureReduction",void 0),e([h({type:[le],json:{read:!1,origins:{"web-scene":{name:"layerDefinition.rangeInfos",write:!0},"portal-item":{name:"layerDefinition.rangeInfos",write:!0}}},clonable:!1})],Pe.prototype,"rangeInfos",void 0),e([h({json:{read:!1}})],Pe.prototype,"associatedLayer",void 0),e([h({type:["show","hide"]})],Pe.prototype,"listMode",void 0),e([h({type:["ArcGISSceneServiceLayer"]})],Pe.prototype,"operationalLayerType",void 0),e([h({json:{read:!1},readOnly:!0})],Pe.prototype,"type",void 0),e([h({...Ae.fields,readOnly:!0,json:{read:!1,origins:{service:{read:!0}}}})],Pe.prototype,"fields",void 0),e([h()],Pe.prototype,"types",null),e([h()],Pe.prototype,"typeIdField",null),e([h()],Pe.prototype,"templates",null),e([h()],Pe.prototype,"formTemplate",null),e([h({readOnly:!0})],Pe.prototype,"graphicOrigin",void 0),e([h({readOnly:!0,clonable:!1})],Pe.prototype,"fieldsIndex",null),e([h({type:oe,json:{read:{source:"layerDefinition.floorInfo"},write:{target:"layerDefinition.floorInfo"}}})],Pe.prototype,"floorInfo",void 0),e([h(Ae.outFields)],Pe.prototype,"outFields",void 0),e([h({type:J,readOnly:!0,json:{read:!1},clonable:!1})],Pe.prototype,"nodePages",void 0),e([_e("service","nodePages",["nodePages","pointNodePages"])],Pe.prototype,"readNodePages",null),e([h({type:[X],readOnly:!0,clonable:!1})],Pe.prototype,"materialDefinitions",void 0),e([h({type:[Y],readOnly:!0,clonable:!1})],Pe.prototype,"textureSetDefinitions",void 0),e([h({type:[ee],readOnly:!0,clonable:!1})],Pe.prototype,"geometryDefinitions",void 0),e([h({readOnly:!0})],Pe.prototype,"serviceUpdateTimeStamp",void 0),e([h({readOnly:!0})],Pe.prototype,"attributeStorageInfo",void 0),e([h({readOnly:!0})],Pe.prototype,"statisticsInfo",void 0),e([h({type:s.ofType(Number),nonNullable:!0,json:{origins:{service:{read:!1,write:!1}},name:"layerDefinition.excludeObjectIds",write:{enabled:!0}}})],Pe.prototype,"excludeObjectIds",void 0),e([h({type:String,json:{origins:{service:{read:!1,write:!1}},name:"layerDefinition.definitionExpression",write:{enabled:!0,allowNull:!0}}})],Pe.prototype,"definitionExpression",void 0),e([h({type:pe,json:{name:"layerDefinition.polygonFilter",write:{enabled:!0,allowNull:!0},origins:{service:{read:!1,write:!1}}}})],Pe.prototype,"filter",void 0),e([h({type:String,json:{origins:{"web-scene":{read:!0,write:!0}},read:!1}})],Pe.prototype,"path",void 0),e([h(R)],Pe.prototype,"elevationInfo",null),e([h({readOnly:!0,json:{read:!1}})],Pe.prototype,"effectiveCapabilities",null),e([h({readOnly:!0})],Pe.prototype,"effectiveEditingEnabled",null),e([h({type:String})],Pe.prototype,"geometryType",null),e([h(C)],Pe.prototype,"labelsVisible",void 0),e([h({type:[ie],json:{origins:{service:{name:"drawingInfo.labelingInfo",read:{reader:se},write:!1}},name:"layerDefinition.drawingInfo.labelingInfo",read:{reader:se},write:!0}})],Pe.prototype,"labelingInfo",void 0),e([h(Q)],Pe.prototype,"legendEnabled",void 0),e([h({type:Number,json:{origins:{"web-document":{default:1,write:{enabled:!0,target:{opacity:{type:Number},"layerDefinition.drawingInfo.transparency":{type:Number}}},read:{source:["opacity","layerDefinition.drawingInfo.transparency"],reader(e,t){if("number"==typeof e&&e>=0&&e<=1)return e;const r=t.layerDefinition?.drawingInfo?.transparency;return void 0!==r?Oe(r):void 0}}},"portal-item":{write:!0},service:{read:!1}}}})],Pe.prototype,"opacity",void 0),e([h({type:["Low","High"],readOnly:!0,json:{read:!1,origins:{service:{read:!0}}}})],Pe.prototype,"priority",void 0),e([h({type:["Labels"],readOnly:!0,json:{read:!1,origins:{service:{read:!0}}}})],Pe.prototype,"semantic",void 0),e([h({types:he,json:{origins:{service:{read:{source:"drawingInfo.renderer"}}},name:"layerDefinition.drawingInfo.renderer",write:!0},value:null})],Pe.prototype,"renderer",null),e([h({json:{read:!1}})],Pe.prototype,"cachedDrawingInfo",void 0),e([_e("service","cachedDrawingInfo")],Pe.prototype,"readCachedDrawingInfo",null),e([h({readOnly:!0,json:{read:!1}})],Pe.prototype,"capabilities",null),e([h({type:Boolean,json:{read:!1}})],Pe.prototype,"editingEnabled",null),e([h({readOnly:!0,json:{write:!1,read:!1}})],Pe.prototype,"infoFor3D",null),e([h({readOnly:!0,json:{write:!1,read:!1}})],Pe.prototype,"relationships",null),e([h(G)],Pe.prototype,"popupEnabled",void 0),e([h({type:r,json:{name:"popupInfo",write:!0}})],Pe.prototype,"popupTemplate",void 0),e([h({readOnly:!0,json:{read:!1}})],Pe.prototype,"defaultPopupTemplate",null),e([h(N)],Pe.prototype,"attributeTableTemplate",void 0),e([h({type:String,json:{read:!1}})],Pe.prototype,"objectIdField",void 0),e([_e("service","objectIdField",["objectIdField","fields"])],Pe.prototype,"readObjectIdField",null),e([h({type:String,json:{read:!1}})],Pe.prototype,"globalIdField",void 0),e([_e("service","globalIdField",["globalIdField","fields"])],Pe.prototype,"readGlobalIdField",null),e([h({readOnly:!0,type:String,json:{read:!1}})],Pe.prototype,"displayField",null),e([h({type:String,json:{read:!1}})],Pe.prototype,"profile",void 0),e([_e("service","profile",["store.profile"])],Pe.prototype,"readProfile",null),e([h({readOnly:!0,type:String,json:{origins:{service:{read:{source:"store.normalReferenceFrame"}}},read:!1}})],Pe.prototype,"normalReferenceFrame",void 0),e([h(k)],Pe.prototype,"screenSizePerspectiveEnabled",void 0),e([h({json:{read:!1,origins:{service:{read:!0}}}})],Pe.prototype,"serviceItemId",void 0),e([h(E)],Pe.prototype,"useViewTime",null),e([h({type:ce,json:{read:!1,write:!1}})],Pe.prototype,"timeInfo",null),e([h({type:Le,json:{read:!1,write:!1}})],Pe.prototype,"timeExtent",null),e([h({type:je,json:{read:!1,write:!1}})],Pe.prototype,"timeOffset",null),e([h({type:Boolean,nonNullable:!0,json:{read:!1,write:!1}})],Pe.prototype,"datesInUnknownTimezone",null),e([h({type:ye,readOnly:!0,json:{read:{source:"timeInfo"}},clonable:!1})],Pe.prototype,"serviceTimeInfo",void 0),e([h()],Pe.prototype,"isUsedAsGroundLayer",null),Pe=e([f("esri.layers.SceneLayer")],Pe);const Ee={"mesh-pyramids":"mesh-pyramids",meshpyramids:"mesh-pyramids","features-meshes":"mesh-pyramids",points:"points","features-points":"points",lines:"lines","features-lines":"lines",polygons:"polygons","features-polygons":"polygons"},Ue={"mesh-pyramids":"mesh",points:"point"},De=Pe;export{De as default};
2
+ import{__decorate as e}from"tslib";import t from"../Graphic.js";import r from"../PopupTemplate.js";import{ClonableMixin as i}from"../core/Clonable.js";import s from"../core/Collection.js";import o from"../core/Error.js";import{abortHandle as a}from"../core/handleUtils.js";import n from"../core/Logger.js";import{destroyMaybe as l}from"../core/maybe.js";import{MultiOriginJSONSupportMixin as p}from"../core/MultiOriginJSONSupport.js";import{throwIfAbortError as d,throwIfAborted as u,isAbortError as y,throwIfNotAbortError as c}from"../core/promiseUtils.js";import{whenOnce as m}from"../core/reactiveUtils.js";import{property as h,subclass as f}from"../core/accessorSupport/decorators.js";import{getProperties as g}from"../core/accessorSupport/utils.js";import v from"../geometry/Point.js";import{projectAsync as w}from"../geometry/projectionUtils.js";import b from"../graphic/SceneGraphicOrigin.js";import I from"./Layer.js";import{NoModelError as L,MultipleModelsError as j}from"./graphics/sources/support/uploadAssetErrors.js";import{APIKeyMixin as F}from"./mixins/APIKeyMixin.js";import{ArcGISService as S}from"./mixins/ArcGISService.js";import{CustomParametersMixin as T}from"./mixins/CustomParametersMixin.js";import{EditBusLayer as O}from"./mixins/EditBusLayer.js";import{OperationalLayer as _}from"./mixins/OperationalLayer.js";import{PortalLayer as x}from"./mixins/PortalLayer.js";import{ScaleRangeLayer as A}from"./mixins/ScaleRangeLayer.js";import{SceneService as P}from"./mixins/SceneService.js";import{useViewTimeProperty as E}from"./mixins/TemporalLayer.js";import{isHostedAgolService as U}from"./support/arcgisLayerUrl.js";import{findAssociatedFeatureService as D}from"./support/associatedFeatureServiceUtils.js";import{zeroCapabilities as q}from"./support/capabilities.js";import{elevationInfo as R,labelsVisible as C,legendEnabled as Q,popupEnabled as G,attributeTableTemplate as N,screenSizePerspectiveEnabled as k,timeInfo as M}from"./support/commonProperties.js";import{getFieldDomain as V,computeEffectiveEditingEnabled as K,getGlobalIdToObjectIdMap as z}from"./support/featureLayerUtils.js";import $ from"./support/FeatureReductionSelection.js";import{defineFieldProperties as H}from"./support/fieldProperties.js";import W from"./support/FieldsIndex.js";import{fixRendererFields as B,fixTimeInfoFields as Z,unpackFieldNames as J}from"./support/fieldUtils.js";import{I3SNodePageDefinition as X,I3SMaterialDefinition as Y,I3STextureSetDefinition as ee,I3SGeometryDefinition as te}from"./support/I3SLayerDefinitions.js";import{isFileEditFormat as re,isFileSupported as ie}from"./support/infoFor3D.js";import se from"./support/LabelClass.js";import{reader as oe}from"./support/labelingInfo.js";import ae from"./support/LayerFloorInfo.js";import{layersLoaderMap as ne}from"./support/layersLoader.js";import{getMeshTransformForMetersToSpatialReference as le}from"./support/meshSpatialReferenceScaleUtils.js";import{RangeInfo as pe}from"./support/RangeInfo.js";import de from"./support/SceneFilter.js";import{cacheIsOutOfSync as ue}from"./support/sceneLayerCacheUtils.js";import{fetchStatistics as ye}from"./support/sceneLayerStatistics.js";import{SceneServiceTimeInfo as ce}from"./support/SceneServiceTimeInfo.js";import me from"./support/TimeInfo.js";import{loadStyleRenderer as he}from"../renderers/support/styleUtils.js";import{webSceneRendererTypes as fe}from"../renderers/support/typeUtils.js";import ge from"../rest/support/Query.js";import{logInvalidElevationInfoWarning as ve,elevationModeUnsupportedMessage as we,featureExpressionUnsupportedMessage as be}from"../support/elevationInfoUtils.js";import{createPopupTemplate as Ie}from"../support/popupUtils.js";import{extractZipFiles as Le}from"../support/zipUtils.js";import je from"../time/TimeExtent.js";import Fe from"../time/TimeInterval.js";import{queryAttributesFromCachedAttributesId as Se}from"../views/3d/layers/i3s/I3SUtil.js";import{getRequiredFields as Te,getFetchPopupTemplate as Oe}from"../views/layers/support/popupUtils.js";import{transparencyToOpacity as _e}from"../webdoc/support/opacityUtils.js";import{reader as xe}from"../core/accessorSupport/decorators/reader.js";const Ae=new Set(["3DObject","Point"]),Pe=H();let Ee=class extends(O(P(S(_(x(A(p(T(F(i(I))))))))))){constructor(...e){super(...e),this.featureReduction=null,this.rangeInfos=null,this.operationalLayerType="ArcGISSceneServiceLayer",this.type="scene",this.fields=null,this.graphicOrigin=new b(this),this.floorInfo=null,this.outFields=null,this.nodePages=null,this.materialDefinitions=null,this.textureSetDefinitions=null,this.geometryDefinitions=null,this.serviceUpdateTimeStamp=null,this.excludeObjectIds=new s,this.definitionExpression=null,this.filter=null,this.path=null,this.labelsVisible=!0,this.labelingInfo=null,this.legendEnabled=!0,this.priority=null,this.semantic=null,this.cachedDrawingInfo={color:!1},this.popupEnabled=!0,this.popupTemplate=null,this.attributeTableTemplate=null,this.objectIdField=null,this.globalIdField=null,this._fieldUsageInfo={},this.screenSizePerspectiveEnabled=!0,this.serviceItemId=void 0,this.serviceTimeInfo=null}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}destroy(){this._set("renderer",null),this.associatedLayer=l(this.associatedLayer)}getField(e){return this.fieldsIndex.get(e)}getFieldDomain(e,t){const r=this.getField(e)?.domain??null;return this.associatedLayer?V(this.associatedLayer,e,t,r):r}getFeatureType(e){return e&&this.associatedLayer?this.associatedLayer.getFeatureType(e):null}get types(){return this.associatedLayer?.types??[]}get typeIdField(){return this.associatedLayer?.typeIdField??null}get templates(){return this.associatedLayer?.templates??null}get formTemplate(){return this.associatedLayer?.formTemplate??null}get fieldsIndex(){return new W(this.fields)}readNodePages(e,t,r){return"Point"===t.layerType&&(e=t.pointNodePages),null==e||"object"!=typeof e?null:X.fromJSON(e,r)}set elevationInfo(e){this._set("elevationInfo",e),this.loaded&&this._validateElevationInfo()}get effectiveCapabilities(){return this._capabilitiesFromAssociatedFeatureLayer(this.associatedLayer?.effectiveCapabilities)}get effectiveEditingEnabled(){return null!=this.associatedLayer&&K(this.associatedLayer)}get geometryType(){return De[this.profile]||"mesh"}set renderer(e){B(e,this.fieldsIndex),this._set("renderer",e)}readCachedDrawingInfo(e){return null!=e&&"object"==typeof e||(e={}),null==e.color&&(e.color=!1),e}get capabilities(){return this._capabilitiesFromAssociatedFeatureLayer(this.associatedLayer?.capabilities)}_capabilitiesFromAssociatedFeatureLayer(e){e=null!=e?e:q;const{query:t,queryRelated:r,editing:{supportsGlobalId:i,supportsRollbackOnFailure:s,supportsUploadWithItemId:o,supportsGeometryUpdate:a,supportsReturnServiceEditsInSourceSpatialReference:n},data:{supportsZ:l,supportsM:p,isVersioned:d,supportsAttachment:u},operations:{supportsEditing:y,supportsAdd:c,supportsUpdate:m,supportsDelete:h,supportsQuery:f,supportsQueryAttachments:g,supportsAsyncConvert3D:v},attachment:w}=e,b=e.operations.supportsChangeTracking,I=!!this.associatedLayer?.infoFor3D;return{query:t,queryRelated:r,editing:{supportsGlobalId:i,supportsReturnServiceEditsInSourceSpatialReference:n,supportsRollbackOnFailure:s,supportsGeometryUpdate:I&&a,supportsUploadWithItemId:o},data:{supportsAttachment:u,supportsZ:l,supportsM:p,isVersioned:d,queryFormats:e.data.queryFormats,sourceFormats:e.data.sourceFormats},operations:{supportsQuery:f,supportsQueryAttachments:g,supportsEditing:y&&b,supportsAdd:I&&c&&b,supportsDelete:I&&h&&b,supportsUpdate:m&&b,supportsAsyncConvert3D:v},attachment:w}}get editingEnabled(){return this._isOverridden("editingEnabled")?this._get("editingEnabled"):this.associatedLayer?.editingEnabled??!1}set editingEnabled(e){this._overrideIfSome("editingEnabled",e)}get infoFor3D(){return this.associatedLayer?.infoFor3D??null}get relationships(){return this.associatedLayer?.relationships}get defaultPopupTemplate(){return this.associatedLayer||this.attributeStorageInfo?this.createPopupTemplate():null}readObjectIdField(e,t){return!e&&t.fields&&t.fields.some(t=>("esriFieldTypeOID"===t.type&&(e=t.name),!!e)),e||void 0}readGlobalIdField(e,t){return!e&&t.fields&&t.fields.some(t=>("esriFieldTypeGlobalID"===t.type&&(e=t.name),!!e)),e||void 0}get displayField(){return this.associatedLayer?.displayField??null}readProfile(e,t){const r=t.store.profile;return null!=r&&Ue[r]?Ue[r]:(n.getLogger(this).error("Unknown or missing profile",{profile:r,layer:this}),"mesh-pyramids")}get useViewTime(){return this.associatedLayer?.useViewTime??!0}set useViewTime(e){this._override("useViewTime",e)}get timeInfo(){const e=this.associatedLayer?.timeInfo;if(null==e)return null;const t=e.clone();return Z(t,this.fieldsIndex),t}set timeInfo(e){Z(e,this.fieldsIndex),this._override("timeInfo",e)}get timeExtent(){return this.associatedLayer?.timeExtent}set timeExtent(e){this._override("timeExtent",e)}get timeOffset(){return this.associatedLayer?.timeOffset}set timeOffset(e){this._override("timeOffset",e)}get datesInUnknownTimezone(){return this.associatedLayer?.datesInUnknownTimezone??!1}set datesInUnknownTimezone(e){this._override("datesInUnknownTimezone",e)}load(e){return this.addResolvingPromise(this._load(e)),Promise.resolve(this)}async _load(e){const t=e?.signal;await this.loadFromPortal({supportedTypes:["Scene Service"]},e).catch(d),await this._fetchService(t),await Promise.all([this._fetchIndexAndUpdateExtent(this.nodePages,t),this._setAssociatedFeatureLayer(t),this._loadFilterGeometries()]),this._validateElevationInfo(),this._applyAssociatedLayerOverrides(),this._populateFieldUsageInfo(),await this.loadTimeInfoFromService(e),await he(this,{origin:"service"},t),B(this.renderer,this.fieldsIndex),await this.finishLoadEditablePortalLayer(e)}async beforeSave(){null!=this.filter&&(this.filter=this.filter.clone(),await this.load())}async _loadFilterGeometries(){if(this.filter)try{await this.filter.loadGeometries(this.spatialReference)}catch(e){n.getLogger(this).error("#_loadFilterGeometries()",this,"Failed to load filter geometries. Geometry filter will not be applied for this layer.",{error:e}),this.filter=null}}createQuery(){const e=new ge;return"mesh"===this.geometryType?this.capabilities.query.supportsReturnMesh&&(e.returnGeometry=!0):(e.returnGeometry=!0,e.returnZ=!0),e.where=this.definitionExpression||"1=1",e.sqlFormat="standard",e.outFields=["*"],e}queryExtent(e,t){return this._getAssociatedLayerForQuery().then(r=>r.queryExtent(e||this.createQuery(),t))}queryFeatureCount(e,t){return this._getAssociatedLayerForQuery().then(r=>r.queryFeatureCount(e||this.createQuery(),t))}queryFeatures(e,t){return this._getAssociatedLayerForQuery().then(r=>r.queryFeatures(e||this.createQuery(),t)).then(e=>{if(e?.features)for(const t of e.features)t.layer=this,t.sourceLayer=this,t.origin=this.graphicOrigin;return e})}async queryModels(e,t){const[r,{queryModels:i}]=await Promise.all([this._getAssociatedLayerForQuery(),import("./scene/modelQuerySupport.js")]);return i(this,r,e,t)}async queryModel(e,t){const[r,{queryModel:i}]=await Promise.all([this._getAssociatedLayerForQuery(),import("./scene/modelQuerySupport.js")]);return i(this,r,e,t)}async queryRelatedFeatures(e,t){if(await this.load(),!this.associatedLayer)throw new o("scenelayer:query-not-available","SceneLayer queries are not available without an associated feature layer",{layer:this});return this.associatedLayer.queryRelatedFeatures(e,t)}async queryRelatedFeaturesCount(e,t){if(await this.load(),!this.associatedLayer)throw new o("scenelayer:query-not-available","SceneLayer queries are not available without an associated feature layer",{layer:this});return this.associatedLayer.queryRelatedFeaturesCount(e,t)}async queryCachedAttributes(e,t){const r=J(this.fieldsIndex,await Te(this,Oe(this)));return Se(this.parsedUrl?.path??"",this.attributeStorageInfo??[],e,t,r,this.apiKey,this.customParameters)}async queryCachedFeature(e,r){const i=await this.queryCachedAttributes(e,[r]);if(!i||0===i.length)throw new o("scenelayer:feature-not-in-cached-data","Feature not found in cached data");const s=new t;return s.attributes=i[0],s.layer=this,s.sourceLayer=this,s.origin=this.graphicOrigin,s}queryObjectIds(e,t){return this._getAssociatedLayerForQuery().then(r=>r.queryObjectIds(e||this.createQuery(),t))}queryAttachments(e,t){return this._getAssociatedLayerForQuery().then(r=>r.queryAttachments(e,t))}getFieldUsageInfo(e){const t={supportsLabelingInfo:!1,supportsRenderer:!1,supportsPopupTemplate:!1,supportsLayerQuery:!1};return this.loaded?this._fieldUsageInfo[e]||t:(n.getLogger(this).error("#getFieldUsageInfo()","Unavailable until layer is loaded"),t)}createPopupTemplate(e){return Ie(this,e)}_getAssociatedLayerForQuery(){const e=this.associatedLayer;return e?.loaded?Promise.resolve(e):this._loadAssociatedLayerForQuery()}async _loadAssociatedLayerForQuery(){if(await this.load(),!this.associatedLayer)throw new o("scenelayer:query-not-available","SceneLayer queries are not available without an associated feature layer",{layer:this});try{await this.associatedLayer.load()}catch(e){throw new o("scenelayer:query-not-available","SceneLayer associated feature layer could not be loaded",{layer:this,error:e})}return this.associatedLayer}hasCachedStatistics(e){return null!=this.statisticsInfo&&this.statisticsInfo.some(t=>t.name===e)}async queryCachedStatistics(e,t){return await this.load(t),await this.fetchStatistics(e,t)}async saveAs(e,t){return this._debouncedSaveOperations(1,{...t,getTypeKeywords:()=>this._getTypeKeywords(),portalItemLayerType:"scene"},e)}async save(){const e={getTypeKeywords:()=>this._getTypeKeywords(),portalItemLayerType:"scene"};return this._debouncedSaveOperations(0,e)}async applyEdits(e,t){const{applyEdits:r}=await(import("./graphics/editingSupport.js"));let i=t;await this.load();const s=this.associatedLayer;if(!s)throw new o(`${this.type}-layer:not-editable`,"Service is not editable");await s.load();const{globalIdField:a}=s,n=!!s.infoFor3D,l=i?.globalIdUsed??!0;if(n&&null==a)throw new o(`${this.type}-layer:not-editable`,"Valid globalIdField expected on editable SceneLayer");if(n&&!l)throw new o(`${this.type}-layer:globalid-required`,"globalIdUsed must not be false for SceneLayer editing as globalIds are required.");return U(s.url)&&n&&null!=e.deleteFeatures&&null!=a&&(i={...i,globalIdToObjectId:await z(s,e.deleteFeatures,a)}),r(this,s.source,e,i)}async uploadAssets(e,t){if(await this.load(),null==this.associatedLayer)throw new o(`${this.type}-layer:not-editable`,"Service is not editable");return await this.associatedLayer.load(),this.associatedLayer.uploadAssets(e,t)}async convertMesh(e,t){t??={};const r=e=>{throw n.getLogger(this).error(".convertMesh()",e.message),e};await this.load(t),this.infoFor3D||r(new o("invalid:layer","SceneLayer has no capability for mesh conversion"));const i=await this.extractAndFilterFiles(e);u(t);const s=i.reduce((e,t)=>re(this.infoFor3D,t)?e+1:e,0);0===s&&r(new L),s>1&&r(new j);const a=this.spatialReference,l=t.origin,p=await w(l??t.defaultOrigin??new v({x:0,y:0,z:0,spatialReference:a}),a,t),d=a.isGeographic?"local":"georeferenced",{createWithExternalSource:y}=await(import("../geometry/support/meshUtils.js"));u(t);const c=y(p,{type:"client",files:i},{vertexSpace:d,transform:le(a),unitConversionDisabled:!0}),[m]=await this.uploadAssets([c],{...t,useAssetOrigin:!l});return m}async extractAndFilterFiles(e){await this.load();const t=this.infoFor3D;if(!t)return e;return(await Le(e)).filter(e=>ie(t,e))}validateLayer(e){if(e.layerType&&!Ae.has(e.layerType))throw new o("scenelayer:layer-type-not-supported","SceneLayer does not support this layer type",{layerType:e.layerType});if(isNaN(this.version.major)||isNaN(this.version.minor))throw new o("layer:service-version-not-supported","Service version is not supported.",{serviceVersion:this.version.versionString,supportedVersions:"1.x, 2.x"});if(this.version.major>2)throw new o("layer:service-version-too-new","Service version is too new.",{serviceVersion:this.version.versionString,supportedVersions:"1.x, 2.x"});function t(e,t){let r=!1,i=!1;if(null==e)r=!0,i=!0;else{const s=t&&t.isGeographic;switch(e){case"east-north-up":case"earth-centered":r=!0,i=s;break;case"vertex-reference-frame":r=!0,i=!s;break;default:r=!1}}if(!r)throw new o("scenelayer:unsupported-normal-reference-frame","Normal reference frame is invalid.");if(!i)throw new o("scenelayer:incompatible-normal-reference-frame","Normal reference frame is incompatible with layer spatial reference.")}t(this.normalReferenceFrame,this.spatialReference)}get isUsedAsGroundLayer(){return!1}_getTypeKeywords(){const e=[];if("points"===this.profile)e.push("Point");else{if("mesh-pyramids"!==this.profile)throw new o("scenelayer:unknown-profile","SceneLayer:save() encountered an unknown SceneLayer profile: "+this.profile);e.push("3DObject")}return e}_populateFieldUsageInfo(){if(this._fieldUsageInfo={},this.fields)for(const e of this.fields){const t=!!this.attributeStorageInfo?.some(t=>t.name===e.name),r=!!this.associatedLayer?.fields?.some(t=>t&&e.name===t.name),i={supportsLabelingInfo:t,supportsRenderer:t,supportsPopupTemplate:t||r,supportsLayerQuery:r};this._fieldUsageInfo[e.name]=i}}_applyAssociatedLayerOverrides(){this._applyAssociatedLayerFieldsOverrides(),this._applyAssociatedLayerPropertyOverrides(),this._applyAssociatedLayerExtentOverride(),this._applyAssociatedLayerPrivileges()}_applyAssociatedLayerFieldsOverrides(){if(!this.associatedLayer?.fields)return;let e=null;for(const t of this.associatedLayer.fields){const r=this.getField(t.name);r?(!r.domain&&t.domain&&(r.domain=t.domain.clone()),r.editable=t.editable,r.nullable=t.nullable,r.length=t.length):(e||(e=this.fields?this.fields.slice():[]),e.push(t.clone()))}e&&this._set("fields",e)}_applyAssociatedLayerPropertyOverrides(){if(!this.associatedLayer)return;const e=["popupTemplate","popupEnabled","attributeTableTemplate"],t=g(this);for(let r=0;r<e.length;r++){const i=e[r],s=this.originIdOf(i),o=this.associatedLayer.originIdOf(i);s<o&&(2===o||3===o)&&t.setAtOrigin(i,this.associatedLayer[i],o)}}_applyAssociatedLayerExtentOverride(){const e=this.associatedLayer?.getAtOrigin("fullExtent","service");if(null==this.associatedLayer?.infoFor3D||!e||!U(this.associatedLayer?.url)||!ue(this))return;g(this).setAtOrigin("fullExtent",e.clone(),2)}_applyAssociatedLayerPrivileges(){const e=this.associatedLayer;e&&(this._set("userHasEditingPrivileges",e.userHasEditingPrivileges),this._set("userHasFullEditingPrivileges",e.userHasFullEditingPrivileges),this._set("userHasUpdateItemPrivileges",e.userHasUpdateItemPrivileges))}async _setAssociatedFeatureLayer(e){if(["mesh-pyramids","points"].includes(this.profile))try{const{serverUrl:t,layerId:r,portalItem:i}=await D(`${this.url}/layers/${this.layerId}`,{sceneLayerItem:this.portalItem,customParameters:this.customParameters,apiKey:this.apiKey,signal:e}),s=await ne.FeatureLayer();this.associatedLayer=new s({url:t,customParameters:this.customParameters,apiKey:this.apiKey,layerId:r,portalItem:i}),await this.associatedLayer.load()}catch(t){y(t)||this._logWarningOnPopupEnabled().catch(()=>{})}}async _logWarningOnPopupEnabled(){const e=new AbortController;this.addHandles(a(e));try{await m(()=>this.popupEnabled&&null!=this.popupTemplate,e.signal)}catch(r){return void c(r)}const t=`this SceneLayer: ${this.title}`;null==this.attributeStorageInfo?n.getLogger(this).warn(`Associated FeatureLayer could not be loaded and no binary attributes found. Popups will not work on ${t}`):n.getLogger(this).info(`Associated FeatureLayer could not be loaded. Falling back to binary attributes for Popups on ${t}`)}_validateElevationInfo(){const e=this.elevationInfo;"mesh-pyramids"===this.profile&&ve(n.getLogger(this),we("Mesh scene layers","relative-to-scene",e)),ve(n.getLogger(this),be("Scene layers",e))}async fetchStatistics(e,t){return await ye({fieldName:e,statisticsInfo:this.statisticsInfo,errorContext:"scenelayer",fieldsIndex:this.fieldsIndex,path:this.parsedUrl?.path??"",customParameters:this.customParameters,apiKey:this.apiKey,signal:t?.signal})}async loadTimeInfoFromService(e){const{serviceTimeInfo:t}=this;if(null==t)return;const{startTimeField:r,endTimeField:i}=t;if(null==r&&null==i)return;if(ue({associatedLayer:this.associatedLayer,serviceUpdateTimeStamp:this.serviceUpdateTimeStamp}))return;const s=async t=>{let i=null;try{const r=await this.fetchStatistics(t,e);i=r?.stats}catch{}if(null==i)return null;const{minTimeStr:s,min:o,maxTimeStr:a,max:n}=i,l=t===r?s??o:a??n;return null!=l?new Date(l):null},[o,a]=await Promise.all([s(r),s(i)]);if(null!=r&&null==o||null!=i&&null==a)return;const n=new je({start:o,end:a});this.setAtOrigin("timeInfo",new me({endField:i,startField:r,fullTimeExtent:n}),"service")}};e([h({types:{key:"type",base:null,typeMap:{selection:$}},json:{origins:{"web-scene":{name:"layerDefinition.featureReduction",write:{allowNull:!0}},"portal-item":{name:"layerDefinition.featureReduction",write:{allowNull:!0}}}}})],Ee.prototype,"featureReduction",void 0),e([h({type:[pe],json:{read:!1,origins:{"web-scene":{name:"layerDefinition.rangeInfos",write:!0},"portal-item":{name:"layerDefinition.rangeInfos",write:!0}}},clonable:!1})],Ee.prototype,"rangeInfos",void 0),e([h({json:{read:!1}})],Ee.prototype,"associatedLayer",void 0),e([h({type:["show","hide"]})],Ee.prototype,"listMode",void 0),e([h({type:["ArcGISSceneServiceLayer"]})],Ee.prototype,"operationalLayerType",void 0),e([h({json:{read:!1},readOnly:!0})],Ee.prototype,"type",void 0),e([h({...Pe.fields,readOnly:!0,json:{read:!1,origins:{service:{read:!0}}}})],Ee.prototype,"fields",void 0),e([h()],Ee.prototype,"types",null),e([h()],Ee.prototype,"typeIdField",null),e([h()],Ee.prototype,"templates",null),e([h()],Ee.prototype,"formTemplate",null),e([h({readOnly:!0})],Ee.prototype,"graphicOrigin",void 0),e([h({readOnly:!0,clonable:!1})],Ee.prototype,"fieldsIndex",null),e([h({type:ae,json:{read:{source:"layerDefinition.floorInfo"},write:{target:"layerDefinition.floorInfo"}}})],Ee.prototype,"floorInfo",void 0),e([h(Pe.outFields)],Ee.prototype,"outFields",void 0),e([h({type:X,readOnly:!0,json:{read:!1},clonable:!1})],Ee.prototype,"nodePages",void 0),e([xe("service","nodePages",["nodePages","pointNodePages"])],Ee.prototype,"readNodePages",null),e([h({type:[Y],readOnly:!0,clonable:!1})],Ee.prototype,"materialDefinitions",void 0),e([h({type:[ee],readOnly:!0,clonable:!1})],Ee.prototype,"textureSetDefinitions",void 0),e([h({type:[te],readOnly:!0,clonable:!1})],Ee.prototype,"geometryDefinitions",void 0),e([h({readOnly:!0})],Ee.prototype,"serviceUpdateTimeStamp",void 0),e([h({readOnly:!0})],Ee.prototype,"attributeStorageInfo",void 0),e([h({readOnly:!0})],Ee.prototype,"statisticsInfo",void 0),e([h({type:s.ofType(Number),nonNullable:!0,json:{origins:{service:{read:!1,write:!1}},name:"layerDefinition.excludeObjectIds",write:{enabled:!0}}})],Ee.prototype,"excludeObjectIds",void 0),e([h({type:String,json:{origins:{service:{read:!1,write:!1}},name:"layerDefinition.definitionExpression",write:{enabled:!0,allowNull:!0}}})],Ee.prototype,"definitionExpression",void 0),e([h({type:de,json:{name:"layerDefinition.polygonFilter",write:{enabled:!0,allowNull:!0},origins:{service:{read:!1,write:!1}}}})],Ee.prototype,"filter",void 0),e([h({type:String,json:{origins:{"web-scene":{read:!0,write:!0}},read:!1}})],Ee.prototype,"path",void 0),e([h(R)],Ee.prototype,"elevationInfo",null),e([h({readOnly:!0,json:{read:!1}})],Ee.prototype,"effectiveCapabilities",null),e([h({readOnly:!0})],Ee.prototype,"effectiveEditingEnabled",null),e([h({type:String})],Ee.prototype,"geometryType",null),e([h(C)],Ee.prototype,"labelsVisible",void 0),e([h({type:[se],json:{origins:{service:{name:"drawingInfo.labelingInfo",read:{reader:oe},write:!1}},name:"layerDefinition.drawingInfo.labelingInfo",read:{reader:oe},write:!0}})],Ee.prototype,"labelingInfo",void 0),e([h(Q)],Ee.prototype,"legendEnabled",void 0),e([h({type:Number,json:{origins:{"web-document":{default:1,write:{enabled:!0,target:{opacity:{type:Number},"layerDefinition.drawingInfo.transparency":{type:Number}}},read:{source:["opacity","layerDefinition.drawingInfo.transparency"],reader(e,t){if("number"==typeof e&&e>=0&&e<=1)return e;const r=t.layerDefinition?.drawingInfo?.transparency;return void 0!==r?_e(r):void 0}}},"portal-item":{write:!0},service:{read:!1}}}})],Ee.prototype,"opacity",void 0),e([h({type:["Low","High"],readOnly:!0,json:{read:!1,origins:{service:{read:!0}}}})],Ee.prototype,"priority",void 0),e([h({type:["Labels"],readOnly:!0,json:{read:!1,origins:{service:{read:!0}}}})],Ee.prototype,"semantic",void 0),e([h({types:fe,json:{origins:{service:{read:{source:"drawingInfo.renderer"}}},name:"layerDefinition.drawingInfo.renderer",write:!0},value:null})],Ee.prototype,"renderer",null),e([h({json:{read:!1}})],Ee.prototype,"cachedDrawingInfo",void 0),e([xe("service","cachedDrawingInfo")],Ee.prototype,"readCachedDrawingInfo",null),e([h({readOnly:!0,json:{read:!1}})],Ee.prototype,"capabilities",null),e([h({type:Boolean,json:{read:!1}})],Ee.prototype,"editingEnabled",null),e([h({readOnly:!0,json:{write:!1,read:!1}})],Ee.prototype,"infoFor3D",null),e([h({readOnly:!0,json:{write:!1,read:!1}})],Ee.prototype,"relationships",null),e([h(G)],Ee.prototype,"popupEnabled",void 0),e([h({type:r,json:{name:"popupInfo",write:!0}})],Ee.prototype,"popupTemplate",void 0),e([h({readOnly:!0,json:{read:!1}})],Ee.prototype,"defaultPopupTemplate",null),e([h(N)],Ee.prototype,"attributeTableTemplate",void 0),e([h({type:String,json:{read:!1}})],Ee.prototype,"objectIdField",void 0),e([xe("service","objectIdField",["objectIdField","fields"])],Ee.prototype,"readObjectIdField",null),e([h({type:String,json:{read:!1}})],Ee.prototype,"globalIdField",void 0),e([xe("service","globalIdField",["globalIdField","fields"])],Ee.prototype,"readGlobalIdField",null),e([h({readOnly:!0,type:String,json:{read:!1}})],Ee.prototype,"displayField",null),e([h({type:String,json:{read:!1}})],Ee.prototype,"profile",void 0),e([xe("service","profile",["store.profile"])],Ee.prototype,"readProfile",null),e([h({readOnly:!0,type:String,json:{origins:{service:{read:{source:"store.normalReferenceFrame"}}},read:!1}})],Ee.prototype,"normalReferenceFrame",void 0),e([h(k)],Ee.prototype,"screenSizePerspectiveEnabled",void 0),e([h({json:{read:!1,origins:{service:{read:!0}}}})],Ee.prototype,"serviceItemId",void 0),e([h(E)],Ee.prototype,"useViewTime",null),e([h(M({disableServiceOrigin:!0,webDocumentOrigin:"web-scene"}))],Ee.prototype,"timeInfo",null),e([h({type:je,json:{read:!1,write:!1}})],Ee.prototype,"timeExtent",null),e([h({type:Fe,json:{read:!1,write:!1}})],Ee.prototype,"timeOffset",null),e([h({type:Boolean,nonNullable:!0,json:{read:!1,write:!1}})],Ee.prototype,"datesInUnknownTimezone",null),e([h({type:ce,readOnly:!0,json:{read:{source:"timeInfo"}},clonable:!1})],Ee.prototype,"serviceTimeInfo",void 0),e([h()],Ee.prototype,"isUsedAsGroundLayer",null),Ee=e([f("esri.layers.SceneLayer")],Ee);const Ue={"mesh-pyramids":"mesh-pyramids",meshpyramids:"mesh-pyramids","features-meshes":"mesh-pyramids",points:"points","features-points":"points",lines:"lines","features-lines":"lines",polygons:"polygons","features-polygons":"polygons"},De={"mesh-pyramids":"mesh",points:"point"},qe=Ee;export{qe as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import e from"../../core/Error.js";import{throwIfAborted as t}from"../../core/promiseUtils.js";import{create as o}from"../../core/libs/gl-matrix-2/factories/vec2f64.js";import{set as r}from"../../core/libs/gl-matrix-2/math/vec2.js";import i from"../../geometry/Extent.js";import n from"../../geometry/Polygon.js";import{densifyExecute as a}from"../../geometry/operators/densifyOperator.js";import{projectExecute as s}from"../../geometry/operators/projectOperator.js";class c{constructor(e){this.ctm=e.ctm,this.spatialReference=e.toSpatialReference(),this.pairedNeatline=e.pairedNeatline,this.outerExtentMediabox=this._getExtentFromArray(e.outerExtentMediaBox),this.geoControlPoints=e.geoControlPoints,this.outerMediaBox=e.outerExtentMediaBox,this.sourceMediaBoxPolygon=this.createSourceMediaBoxPolygon(),this.sourceNeatlinePolygon=this.createSourceNeatlinePolygon()}createSourceMediaBoxPolygon(){const e=[];for(const[t,o]of this.outerMediaBox){const r=l(this.ctm,t,o);e.push([r[0],r[1]])}return new n({rings:[e],spatialReference:this.spatialReference})}createSourceNeatlinePolygon(){const e=[];for(const[t,o]of this.pairedNeatline){const r=l(this.ctm,t,o);e.push([r[0],r[1]])}return new n({rings:[e],spatialReference:this.spatialReference})}createProjectedPolygon(o,r,i){t(i);const n=o;if(n.spatialReference.equals(r))return n;if(!n||!n.extent)throw new e("geospatial-pdf-layer: load","Could not project neatline");const c=Math.max(n.extent.width,n.extent.height)/256,l=a(n,c);return s(l,r)}toExtent(){return this._getExtentFromArray(this.pairedNeatline)}_getExtentFromArray(e){let t=1/0,o=1/0,r=-1/0,n=-1/0;for(let i=0;i<e.length;i++){const a=l(this.ctm,e[i][0],e[i][1]);t=Math.min(t,a[0]),o=Math.min(o,a[1]),r=Math.max(r,a[0]),n=Math.max(n,a[1])}return new i({...{xmin:t,ymin:o,xmax:r,ymax:n},spatialReference:this.spatialReference})}}function l(e,t,i){const[n,a,s,c,l,m]=e,h=o();return r(h,n*t+s*i+l,a*t+c*i+m),h}export{c as default};
2
+ import e from"../../core/Error.js";import{throwIfAborted as t}from"../../core/promiseUtils.js";import{create as o}from"../../core/libs/gl-matrix-2/factories/vec2f64.js";import{set as r}from"../../core/libs/gl-matrix-2/math/vec2.js";import i from"../../geometry/Extent.js";import n from"../../geometry/Polygon.js";import{densifyExecute as a}from"../../geometry/operators/densifyOperator.js";import{projectExecute as s}from"../../geometry/operators/projectOperator.js";class c{constructor(e){this.ctm=e.ctm,this.spatialReference=e.toSpatialReference(),this.pairedNeatline=e.pairedNeatline,this.outerExtentMediabox=this._getExtentFromArray(e.outerExtentMediaBox),this.geoControlPoints=e.geoControlPoints,this.outerMediaBox=e.outerExtentMediaBox,this.sourceMediaBoxPolygon=this.createSourceMediaBoxPolygon(),this.sourceNeatlinePolygon=this.createSourceNeatlinePolygon()}createSourceMediaBoxPolygon(){const e=[];for(const[t,o]of this.outerMediaBox){const r=l(this.ctm,t,o);e.push([r[0],r[1]])}return new n({rings:[e],spatialReference:this.spatialReference})}createSourceNeatlinePolygon(){const e=[];for(const[t,o]of this.pairedNeatline){const r=l(this.ctm,t,o);e.push([r[0],r[1]])}return new n({rings:[e],spatialReference:this.spatialReference})}createProjectedPolygon(o,r,i){t(i);const n=o;if(n.spatialReference.equals(r))return n;if(!n||!n.extent)throw new e("geospatial-pdf-layer:load","Could not project neatline");const c=Math.max(n.extent.width,n.extent.height)/256,l=a(n,c);return s(l,r)}toExtent(){return this._getExtentFromArray(this.pairedNeatline)}_getExtentFromArray(e){let t=1/0,o=1/0,r=-1/0,n=-1/0;for(let i=0;i<e.length;i++){const a=l(this.ctm,e[i][0],e[i][1]);t=Math.min(t,a[0]),o=Math.min(o,a[1]),r=Math.max(r,a[0]),n=Math.max(n,a[1])}return new i({...{xmin:t,ymin:o,xmax:r,ymax:n},spatialReference:this.spatialReference})}}function l(e,t,i){const[n,a,s,c,l,m]=e,h=o();return r(h,n*t+s*i+l,a*t+c*i+m),h}export{c as default};