@arcgis/core 4.33.0-next.20250327 → 4.33.0-next.20250329

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 (253) hide show
  1. package/applications/Components/reactiveUtils.d.ts +4 -0
  2. package/applications/Components/reactiveUtils.js +1 -1
  3. package/applications/KnowledgeStudio/layerInternalAccessUtils.d.ts +1 -0
  4. package/applications/KnowledgeStudio/layerInternalAccessUtils.js +1 -1
  5. package/applications/MapViewer/templateUtils.js +1 -1
  6. package/assets/esri/core/workers/RemoteClient.js +1 -1
  7. package/assets/esri/core/workers/chunks/{66cae76da0582cfa8656.js → 0943695a1dcd21c45e83.js} +1 -1
  8. package/assets/esri/core/workers/chunks/{c6bcfa99fb222894fa0e.js → 0a0e5d699ddb7052c5c0.js} +1 -1
  9. package/assets/esri/core/workers/chunks/0a675f9f69b8b13b7443.js +1 -0
  10. package/assets/esri/core/workers/chunks/{0a98dc3ea67ce97a6e7b.js → 0b6ceb0194a07bbc3433.js} +1 -1
  11. package/assets/esri/core/workers/chunks/0eed612e82a279ac8d1e.js +1 -0
  12. package/assets/esri/core/workers/chunks/{458f4c6c8820c1f62f69.js → 1322096a72e910f23167.js} +1 -1
  13. package/assets/esri/core/workers/chunks/{cbe22c58b3230b12b31a.js → 13ad4ee2e064d13ca34d.js} +1 -1
  14. package/assets/esri/core/workers/chunks/176e7c7c2a871bcb512e.js +1 -0
  15. package/assets/esri/core/workers/chunks/1cd9b5ef62582b25df9b.js +1 -0
  16. package/assets/esri/core/workers/chunks/1cf8a431e5da946c7d27.js +1 -0
  17. package/assets/esri/core/workers/chunks/{add0770399a63b7635b5.js → 1df34b7fd68f5ab55bd3.js} +1 -1
  18. package/assets/esri/core/workers/chunks/201db423e3c6f947b77c.js +1 -0
  19. package/assets/esri/core/workers/chunks/213e82a7e3fa5b253ec1.js +1 -0
  20. package/assets/esri/core/workers/chunks/{22618753349eb9d8b3df.js → 222446da9cb58c3c3b7e.js} +1 -1
  21. package/assets/esri/core/workers/chunks/{e1b42fc5c1d89333e834.js → 239821543abbd63c5787.js} +2 -2
  22. package/assets/esri/core/workers/chunks/{0f37b3a797d8a55439a4.js → 277b61af8982092a4c81.js} +1 -1
  23. package/assets/esri/core/workers/chunks/2a654d8de99be40dd0e6.js +1 -0
  24. package/assets/esri/core/workers/chunks/2b07bdb6c4c4a5b2f968.js +1 -0
  25. package/assets/esri/core/workers/chunks/2bda2cfc6e81818d7d33.js +1 -0
  26. package/assets/esri/core/workers/chunks/2cbab0c078d0b844934c.js +1 -0
  27. package/assets/esri/core/workers/chunks/{193b4fecdfee927d6200.js → 37e4f588a6896f98bce3.js} +1 -1
  28. package/assets/esri/core/workers/chunks/392e64a573f67817db02.js +1 -0
  29. package/assets/esri/core/workers/chunks/3a743653b786b010a57f.js +1 -0
  30. package/assets/esri/core/workers/chunks/3be007f32ea1e18b8b3b.js +1 -0
  31. package/assets/esri/core/workers/chunks/451555af283b32a10fef.js +1 -0
  32. package/assets/esri/core/workers/chunks/{835fa4484c58d9b31c78.js → 460afde071df9f35182d.js} +1 -1
  33. package/assets/esri/core/workers/chunks/{26bedec014488e1fc5e4.js → 4816cf647eca2f4cecc2.js} +1 -1
  34. package/assets/esri/core/workers/chunks/{fdc9bd8f309af610fa62.js → 48ad7beb48dcc2693cc3.js} +1 -1
  35. package/assets/esri/core/workers/chunks/{1e631e34ee495eb0e76e.js → 49ed3ab9bd6d7c52e864.js} +1 -1
  36. package/assets/esri/core/workers/chunks/{09c9e4e94f09ba9f4c22.js → 4aa0a58ded4465ea28bd.js} +1 -1
  37. package/assets/esri/core/workers/chunks/{82692bff98b4ec781544.js → 4d798da25a726f179089.js} +1 -1
  38. package/assets/esri/core/workers/chunks/51339193abddfe37745d.js +1 -0
  39. package/assets/esri/core/workers/chunks/52d160cb7921ae7a4f57.js +1 -0
  40. package/assets/esri/core/workers/chunks/{630a9afdf0523c27ddb6.js → 555c95b149e3a82a4460.js} +1 -1
  41. package/assets/esri/core/workers/chunks/{eab1e3c101158675abba.js → 5660f479c005149bce8d.js} +1 -1
  42. package/assets/esri/core/workers/chunks/5a51c75a2932d9da001a.js +1 -0
  43. package/assets/esri/core/workers/chunks/{37a3533f004bf2e888da.js → 5d01f0b86566d08ba29d.js} +1 -1
  44. package/assets/esri/core/workers/chunks/{0576b035c1654a43ad5c.js → 5de3aee547113bfd59df.js} +1 -1
  45. package/assets/esri/core/workers/chunks/5e79642851e888eddfe4.js +1 -0
  46. package/assets/esri/core/workers/chunks/{45eee326f7a649c5a15b.js → 626db8488f9d931cf55c.js} +2 -2
  47. package/assets/esri/core/workers/chunks/{5a6f7360183693f8490d.js → 6339a24874c698594101.js} +1 -1
  48. package/assets/esri/core/workers/chunks/63dade3e1cc7f5b76846.js +1 -0
  49. package/assets/esri/core/workers/chunks/6c378e7a6ca29d530880.js +1 -0
  50. package/assets/esri/core/workers/chunks/71e46e866c23372b0b58.js +1 -0
  51. package/assets/esri/core/workers/chunks/{c591527543fd75a917d4.js → 72c7126dbd27fa48fcdb.js} +1 -1
  52. package/assets/esri/core/workers/chunks/738e4f46feb3758456e0.js +1 -0
  53. package/assets/esri/core/workers/chunks/{d459c790a3b89ac53d2d.js → 759c12b0715279e3c0f6.js} +1 -1
  54. package/assets/esri/core/workers/chunks/75fa861b5757551f8fdc.js +1 -0
  55. package/assets/esri/core/workers/chunks/7655be1470ce39f0e494.js +1 -0
  56. package/assets/esri/core/workers/chunks/77660e18ea793ae85f83.js +1 -0
  57. package/assets/esri/core/workers/chunks/796cf1c2ca9955595836.js +1 -0
  58. package/assets/esri/core/workers/chunks/79c4f10da8360ee60cd2.js +1 -0
  59. package/assets/esri/core/workers/chunks/{49c346d2fb8538990f45.js → 7d1c39c2a80e20a0595f.js} +1 -1
  60. package/assets/esri/core/workers/chunks/7f36cffc6ed984b7e467.js +1 -0
  61. package/assets/esri/core/workers/chunks/82353e59ac6d909dcf41.js +1 -0
  62. package/assets/esri/core/workers/chunks/82493f51a2182f76dd2f.js +1 -0
  63. package/assets/esri/core/workers/chunks/84d301e1b6b0d0b48f51.js +1 -0
  64. package/assets/esri/core/workers/chunks/86931186095c23e47c0c.js +1 -0
  65. package/assets/esri/core/workers/chunks/879d672d12f9ef2e1b50.js +1 -0
  66. package/assets/esri/core/workers/chunks/{59e4e780dcdfed555ca5.js → 8ef5e6f1c606e5e41002.js} +1 -1
  67. package/assets/esri/core/workers/chunks/90c893959145827961ac.js +1 -0
  68. package/assets/esri/core/workers/chunks/921b41b101957cfc1cfd.js +1 -0
  69. package/assets/esri/core/workers/chunks/931275cfa2c55eb0f504.js +1 -0
  70. package/assets/esri/core/workers/chunks/{f128d3431da86e484117.js → 94292c7afff18694d55e.js} +1 -1
  71. package/assets/esri/core/workers/chunks/{7e0e9ca84490a0c67197.js → 98da74243df03e0cc70d.js} +1 -1
  72. package/assets/esri/core/workers/chunks/{354117429b3a0a0794c9.js → 999e8dbe6f4d0665b3ab.js} +1 -1
  73. package/assets/esri/core/workers/chunks/{c0400c25c53fd90fc90e.js → 9e156e135f34f9b06032.js} +1 -1
  74. package/assets/esri/core/workers/chunks/9f18de17fbcad0e5c140.js +1 -0
  75. package/assets/esri/core/workers/chunks/{4eb1a2433f675bde12ad.js → a01c86910fe4984eb788.js} +1 -1
  76. package/assets/esri/core/workers/chunks/a348ff2dd936c6bf9399.js +1 -0
  77. package/assets/esri/core/workers/chunks/a53e9f5092de715da025.js +1 -0
  78. package/assets/esri/core/workers/chunks/a9b6377f1fef5826f28d.js +1 -0
  79. package/assets/esri/core/workers/chunks/{21016d58428b15f7427c.js → aa712f850fd129ca5ed8.js} +1 -1
  80. package/assets/esri/core/workers/chunks/ab0113d1269675dcd520.js +1 -0
  81. package/assets/esri/core/workers/chunks/ba4d91816f6a0bf0d812.js +1 -0
  82. package/assets/esri/core/workers/chunks/bf453744067267e84d1b.js +1 -0
  83. package/assets/esri/core/workers/chunks/c2f38c66fae2cdb57445.js +1 -0
  84. package/assets/esri/core/workers/chunks/c7aa4a8263e21f631004.js +1 -0
  85. package/assets/esri/core/workers/chunks/{3be465c653236d6d8c1f.js → d2c7067bb6654c0e2793.js} +1 -1
  86. package/assets/esri/core/workers/chunks/{bc3f42401131a12fce9b.js → d2eb3802fa003c2d497e.js} +1 -1
  87. package/assets/esri/core/workers/chunks/da7c14ae1a25fc7163ce.js +1 -0
  88. package/assets/esri/core/workers/chunks/da8a002d18544def5383.js +1 -0
  89. package/assets/esri/core/workers/chunks/daa54c8a317c27881763.js +1 -0
  90. package/assets/esri/core/workers/chunks/dde03a893f9cef8e0f45.js +1 -0
  91. package/assets/esri/core/workers/chunks/e15c612caadf7bac4ab9.js +1 -0
  92. package/assets/esri/core/workers/chunks/{a2377969f76640f1d6fe.js → e2029267cddb8e2effab.js} +1 -1
  93. package/assets/esri/core/workers/chunks/e3ef0451dcdc2e966628.js +1 -0
  94. package/assets/esri/core/workers/chunks/{fc7ce48c7b31a4665a9b.js → e792603b7cc3ddd133f3.js} +1 -1
  95. package/assets/esri/core/workers/chunks/e7e987558cf017c62458.js +1 -0
  96. package/assets/esri/core/workers/chunks/eabfab23246d4a052ea3.js +1 -0
  97. package/assets/esri/core/workers/chunks/ed3d1d0465f4a4d8df4a.js +1 -0
  98. package/assets/esri/core/workers/chunks/{0c9e933b392616460e62.js → f0c864425f000ab87a7b.js} +1 -1
  99. package/assets/esri/core/workers/chunks/{ed4afafbcb31491c2049.js → f452ca61842dbe8de9af.js} +1 -1
  100. package/assets/esri/core/workers/chunks/f54546c155fba2fd3a7e.js +1 -0
  101. package/assets/esri/core/workers/chunks/{4c8164955f8d844c09ee.js → f8d1c7df671733c3325c.js} +1 -1
  102. package/assets/esri/core/workers/chunks/{e45404a982e173459990.js → f92d521ed3df3c9f737b.js} +1 -1
  103. package/assets/esri/core/workers/chunks/{b2289c18c02c868a2939.js → f9bedb421d4e115a888f.js} +1 -1
  104. package/assets/esri/core/workers/chunks/{55f7b1de8882569861c0.js → faed301a25252c619cff.js} +1 -1
  105. package/assets/esri/core/workers/chunks/fb22b2e4988ecf4d6376.js +1 -0
  106. package/assets/esri/core/workers/chunks/fb455fd89b74b70a6a2b.js +1 -0
  107. package/assets/esri/core/workers/chunks/{6d77c7e9dec323fc4145.js → fb603edd374e24f366ff.js} +1 -1
  108. package/assets/esri/core/workers/chunks/fc5ca7b08915177c5e33.js +1 -0
  109. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList.json +1 -1
  110. package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_en.json +1 -1
  111. package/assets/esri/widgets/CatalogLayerList/t9n/CatalogLayerList.json +1 -1
  112. package/assets/esri/widgets/CatalogLayerList/t9n/CatalogLayerList_en.json +1 -1
  113. package/assets/esri/widgets/LayerList/t9n/LayerList.json +1 -1
  114. package/assets/esri/widgets/LayerList/t9n/LayerList_en.json +1 -1
  115. package/core/Accessor.js +1 -1
  116. package/core/accessorSupport/utils.js +1 -1
  117. package/core/workers/registry.js +1 -1
  118. package/geometry/operators/gx/operatorPolygonOverlay.js +1 -1
  119. package/geometry/operators/polygonOverlayOperator.js +1 -1
  120. package/geometry/support/meshUtils/elevation.js +1 -1
  121. package/geometry/support/meshUtils.js +1 -1
  122. package/interfaces.d.ts +152 -16
  123. package/intl/locale.js +1 -1
  124. package/layers/OrientedImageryLayer.js +1 -1
  125. package/layers/SceneLayer.js +1 -1
  126. package/layers/graphics/sources/WFSSourceWorker.js +1 -1
  127. package/layers/support/RasterWorker.js +1 -1
  128. package/layers/support/VideoElement.js +1 -1
  129. package/layers/support/commonProperties.js +1 -1
  130. package/layers/support/rasterDatasets/FunctionRaster.js +1 -1
  131. package/layers/support/rasterFunctions/clipUtils.js +1 -1
  132. package/layers/support/rasterFunctions/rasterProjectionHelper.js +1 -1
  133. package/networks/RulesTable.js +1 -1
  134. package/networks/UtilityNetwork.js +1 -1
  135. package/networks/support/utils.js +1 -1
  136. package/package.json +2 -2
  137. package/portal/schemas/definitions.js +1 -1
  138. package/portal/schemas/sceneLayerItem.js +1 -1
  139. package/rest/networks/queryAssociations.js +1 -1
  140. package/support/actions/actionUtils.js +1 -1
  141. package/support/revision.js +1 -1
  142. package/symbols/WebStyleSymbol.js +1 -1
  143. package/symbols/support/symbolUtils.js +1 -1
  144. package/tables/AttributeTableTemplate.js +1 -1
  145. package/tables/elements/AttributeTableAttachmentElement.js +1 -1
  146. package/tables/elements/AttributeTableFieldElement.js +1 -1
  147. package/tables/elements/AttributeTableGroupElement.js +1 -1
  148. package/tables/elements/AttributeTableRelationshipElement.js +1 -1
  149. package/tables/support/FieldOrder.js +5 -0
  150. package/tables/support/tablesUtils.js +1 -1
  151. package/views/2d/LabelManager.js +1 -1
  152. package/views/2d/engine/webgl/Overlay.js +1 -1
  153. package/views/2d/layers/features/layerAdapters/OGCFeatureLayerAdapter.js +1 -1
  154. package/views/2d/layers/features/schema/processor/symbols/SymbolSchema.js +1 -1
  155. package/views/2d/layers/graphics/GraphicsView2D.js +1 -1
  156. package/views/3d/layers/graphics/Graphics3DWebStyleSymbol.js +1 -1
  157. package/views/3d/terrain/TerrainSurface.js +1 -1
  158. package/views/3d/terrain/Tile.js +1 -1
  159. package/views/3d/terrain/TileRenderer.js +1 -1
  160. package/views/DOMContainer.js +1 -1
  161. package/views/FocusArea.js +1 -1
  162. package/views/GroundView.js +1 -1
  163. package/views/PopupView.js +1 -1
  164. package/views/VideoView.js +1 -1
  165. package/views/support/GroundViewElevationSampler.js +1 -1
  166. package/views/support/TextureCompressionHelper.js +1 -1
  167. package/views/support/TextureCompressionWorker.js +5 -0
  168. package/views/support/TextureCompressionWorkerHandle.js +5 -0
  169. package/views/support/imageReprojection.js +1 -1
  170. package/views/webgl/Texture.js +1 -1
  171. package/webscene/Slide.js +1 -1
  172. package/widgets/CatalogLayerList/CatalogLayerListViewModel.js +1 -1
  173. package/widgets/CatalogLayerList.js +1 -1
  174. package/widgets/Directions.js +1 -1
  175. package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/UtilityNetworkAssociationItemList.js +1 -1
  176. package/widgets/FeatureTable/FeatureTableViewModel.js +1 -1
  177. package/widgets/FeatureTable/Grid/Grid.js +1 -1
  178. package/widgets/FeatureTable/Grid/GridViewModel.js +1 -1
  179. package/widgets/FeatureTable/support/FeatureStore.js +1 -1
  180. package/widgets/FeatureTable.js +1 -1
  181. package/widgets/Features/FeaturesDrillIn.js +1 -1
  182. package/widgets/Features.js +1 -1
  183. package/widgets/LayerList/LayerListItem.js +1 -1
  184. package/widgets/LayerList/ListItem.js +1 -1
  185. package/widgets/Legend/support/ActiveLayerInfo.js +1 -1
  186. package/widgets/Legend.js +1 -1
  187. package/widgets/Search.js +1 -1
  188. package/widgets/TableList/ListItem.js +1 -1
  189. package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.js +1 -1
  190. package/widgets/UtilityNetworkTrace.js +1 -1
  191. package/widgets/ValuePicker.js +1 -1
  192. package/widgets/Widget.js +1 -1
  193. package/widgets/support/tests.js +1 -1
  194. package/widgets/support/uriUtils.js +1 -1
  195. package/assets/esri/core/workers/chunks/07910d16d1efae41d4bc.js +0 -1
  196. package/assets/esri/core/workers/chunks/0a3c1642cfabf9acd5c5.js +0 -1
  197. package/assets/esri/core/workers/chunks/0b7331613f91a3258352.js +0 -1
  198. package/assets/esri/core/workers/chunks/1a09dfb2c9fd7cd84cd4.js +0 -1
  199. package/assets/esri/core/workers/chunks/1dd6d68d23ba07587ae4.js +0 -1
  200. package/assets/esri/core/workers/chunks/2079f9d28e4199714f22.js +0 -1
  201. package/assets/esri/core/workers/chunks/29ba2022c2978e9bd53e.js +0 -1
  202. package/assets/esri/core/workers/chunks/29fe3e9a0ecab74bb729.js +0 -1
  203. package/assets/esri/core/workers/chunks/2bb508701ad8ccc3d6ab.js +0 -1
  204. package/assets/esri/core/workers/chunks/2ce80c764cca9e6a20cd.js +0 -1
  205. package/assets/esri/core/workers/chunks/2f23fc27d005ffa18f47.js +0 -1
  206. package/assets/esri/core/workers/chunks/35f3eef81fac7924a487.js +0 -1
  207. package/assets/esri/core/workers/chunks/4539a802cba77a7a7cc7.js +0 -1
  208. package/assets/esri/core/workers/chunks/470cf066294b053c2732.js +0 -1
  209. package/assets/esri/core/workers/chunks/4d7bd2bbe9045a2fee7a.js +0 -1
  210. package/assets/esri/core/workers/chunks/50b6be13c270d7ac80d3.js +0 -1
  211. package/assets/esri/core/workers/chunks/54ace3e4802934f3f9f2.js +0 -1
  212. package/assets/esri/core/workers/chunks/55c7c51e56d72f507c22.js +0 -1
  213. package/assets/esri/core/workers/chunks/5656cc44e3d4547668db.js +0 -1
  214. package/assets/esri/core/workers/chunks/597f450a57750637cb4d.js +0 -1
  215. package/assets/esri/core/workers/chunks/605eddec7aac891ed141.js +0 -1
  216. package/assets/esri/core/workers/chunks/6e7577cb6378ff34e722.js +0 -1
  217. package/assets/esri/core/workers/chunks/6eb8d7edafeafeb10cae.js +0 -1
  218. package/assets/esri/core/workers/chunks/71bd94cc789a55910f92.js +0 -1
  219. package/assets/esri/core/workers/chunks/74541f1a6d4228275c52.js +0 -1
  220. package/assets/esri/core/workers/chunks/75ec4d2ae9d427a1434f.js +0 -1
  221. package/assets/esri/core/workers/chunks/762567124623f6d11e67.js +0 -1
  222. package/assets/esri/core/workers/chunks/77845cd5d824c1004bfa.js +0 -1
  223. package/assets/esri/core/workers/chunks/78683f1aadc1377be5fd.js +0 -1
  224. package/assets/esri/core/workers/chunks/7a4413a188a8f1affb2f.js +0 -1
  225. package/assets/esri/core/workers/chunks/7d3b2bdc75525d47389c.js +0 -1
  226. package/assets/esri/core/workers/chunks/8063e35dacf8f99471d8.js +0 -1
  227. package/assets/esri/core/workers/chunks/81f2f1614ea27f4c2e65.js +0 -1
  228. package/assets/esri/core/workers/chunks/85a9025c2990a8bbd61b.js +0 -1
  229. package/assets/esri/core/workers/chunks/901c957c049f53318e87.js +0 -1
  230. package/assets/esri/core/workers/chunks/94f41ef15f6c61562e5e.js +0 -1
  231. package/assets/esri/core/workers/chunks/95f23bd17ce9e07fc8ef.js +0 -1
  232. package/assets/esri/core/workers/chunks/96d7f47ea8fbf345101c.js +0 -1
  233. package/assets/esri/core/workers/chunks/9f312f7284e506a84ed7.js +0 -1
  234. package/assets/esri/core/workers/chunks/a68b48fd1a529f69705e.js +0 -1
  235. package/assets/esri/core/workers/chunks/ac86d0b31f6368bd1fb1.js +0 -1
  236. package/assets/esri/core/workers/chunks/ad9b3b83aa96db7b79ea.js +0 -1
  237. package/assets/esri/core/workers/chunks/b02ac03503bfff1ff922.js +0 -1
  238. package/assets/esri/core/workers/chunks/b2666b89755323a84fcb.js +0 -1
  239. package/assets/esri/core/workers/chunks/b948fe33b4d650eea796.js +0 -1
  240. package/assets/esri/core/workers/chunks/be002f24beb832a369ce.js +0 -1
  241. package/assets/esri/core/workers/chunks/bf3c4c1bff8b71bc0b13.js +0 -1
  242. package/assets/esri/core/workers/chunks/d45ff061bf71b73e9f26.js +0 -1
  243. package/assets/esri/core/workers/chunks/d8ddff920725acb99200.js +0 -1
  244. package/assets/esri/core/workers/chunks/db4c110ab4c26c4b768c.js +0 -1
  245. package/assets/esri/core/workers/chunks/dfa4be2e07cc4c0938b0.js +0 -1
  246. package/assets/esri/core/workers/chunks/e491daf73ab1264aa1b9.js +0 -1
  247. package/assets/esri/core/workers/chunks/f2a6287c8d28be24f71e.js +0 -1
  248. package/assets/esri/core/workers/chunks/f4861d73c62096f73e48.js +0 -1
  249. package/assets/esri/core/workers/chunks/f70dd16f14279bb7e60d.js +0 -1
  250. package/assets/esri/core/workers/chunks/fa011ad649c05201e92a.js +0 -1
  251. package/views/3d/webgl-engine/lib/TextureCompressionWorker.js +0 -5
  252. package/views/3d/webgl-engine/lib/TextureCompressionWorkerHandle.js +0 -5
  253. /package/assets/esri/core/workers/chunks/{e1b42fc5c1d89333e834.js.LICENSE.txt → 239821543abbd63c5787.js.LICENSE.txt} +0 -0
package/interfaces.d.ts CHANGED
@@ -203,8 +203,21 @@ declare namespace __esri {
203
203
  mutate(mutateFn: (value: T) => void): void;
204
204
  }
205
205
 
206
+ export interface __ReactiveObservable {
207
+ notify(): void;
208
+ }
209
+
210
+ export interface __ReactiveTrackingTarget {
211
+ clear(): void;
212
+ destroy(): void;
213
+ }
214
+
206
215
  interface ComponentsReactiveUtils {
207
216
  signal<T>(initialValue: T, equalityFunction?: (a: T, b: T) => boolean): Signal<T>;
217
+ createObservable(): __ReactiveObservable;
218
+ createTrackingTarget(callback: () => void): __ReactiveTrackingTarget;
219
+ trackAccess(observable: __ReactiveObservable): void;
220
+ runTracked<T>(target: __ReactiveTrackingTarget, callback: () => T): T | null;
208
221
  }
209
222
 
210
223
  export const ComponentsReactiveUtils: ComponentsReactiveUtils;
@@ -855,6 +868,14 @@ declare namespace __esri {
855
868
  }
856
869
 
857
870
  export class SliceAnalysis {
871
+ /**
872
+ * A flag that indicates whether the ground surface should be excluded from the slice analysis.
873
+ *
874
+ * @default false
875
+ *
876
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-analysis-SliceAnalysis.html#excludeGroundSurface Read more...}
877
+ */
878
+ excludeGroundSurface: boolean;
858
879
  /**
859
880
  * Whether the {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-analysis-SliceAnalysis.html#shape shape} supports a tilt angle or not.
860
881
  *
@@ -871,6 +892,13 @@ declare namespace __esri {
871
892
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-analysis-SliceAnalysis.html Read more...}
872
893
  */
873
894
  constructor(properties?: SliceAnalysisProperties);
895
+ /**
896
+ * A collection of layers that should be excluded from the slice analysis.
897
+ *
898
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-analysis-SliceAnalysis.html#excludedLayers Read more...}
899
+ */
900
+ get excludedLayers(): Collection<Layer | BuildingComponentSublayer>;
901
+ set excludedLayers(value: CollectionProperties<Layer | BuildingComponentSublayer>);
874
902
  /**
875
903
  * The shape used to slice elements in a 3D scene.
876
904
  *
@@ -887,6 +915,18 @@ declare namespace __esri {
887
915
  }
888
916
 
889
917
  interface SliceAnalysisProperties {
918
+ /**
919
+ * A collection of layers that should be excluded from the slice analysis.
920
+ *
921
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-analysis-SliceAnalysis.html#excludedLayers Read more...}
922
+ */
923
+ excludedLayers?: CollectionProperties<Layer | BuildingComponentSublayer>;
924
+ /**
925
+ * A flag that indicates whether the ground surface should be excluded from the slice analysis.
926
+ *
927
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-analysis-SliceAnalysis.html#excludeGroundSurface Read more...}
928
+ */
929
+ excludeGroundSurface?: boolean;
890
930
  /**
891
931
  * The shape used to slice elements in a 3D scene.
892
932
  *
@@ -1716,6 +1756,7 @@ declare namespace __esri {
1716
1756
  interface layerInternalAccessUtils {
1717
1757
  addInclusionDefinitionToLayer(layer: KnowledgeGraphLayer, inclusionDefinition: InclusionModeDefinitionOptimizedGeometry): void;
1718
1758
  getInclusionDefinitionFromLayer(layer: KnowledgeGraphLayer | LinkChartLayer): InclusionModeDefinitionOptimizedGeometry | nullish;
1759
+ readKnowledgeLayerJSON(layer: KnowledgeGraphLayer | LinkChartLayer | KnowledgeGraphSublayer, json: any, originName: "defaults" | "service" | "portal-item" | "web-scene" | "web-map" | "link-chart" | "user"): void;
1719
1760
  removeInclusionDefinitionFromLayer(layer: KnowledgeGraphLayer): void;
1720
1761
  }
1721
1762
 
@@ -10154,21 +10195,31 @@ declare namespace __esri {
10154
10195
  /**
10155
10196
  * Performs the topological overlay of the geometry set in the XY plane.
10156
10197
  *
10157
- * @param geometries The set of geometries to overlay. All the geometries must have the same spatial reference.
10198
+ * @param polygons The set of polygons to overlay. All the polygons must have the same spatial reference.
10158
10199
  * @param options Additional options.
10159
10200
  * @param options.gaps Create polygons to fill gaps. Gaps are empty areas between different polygons, that have a closed boundary.
10160
10201
  * @param options.holes Create polygons to fill holes. Holes are empty areas completely enclosed by a single polygon. In addition to regular holes formed by the interior rings, the operator considers any empty area that has a closed boundary formed by the segments of same polygon to be a hole. For example, a gap between two or more exterior rings of same polygon is also considered a hole.
10161
10202
  * @param options.noOverlaps Output non-overlapping areas of polygons.
10162
10203
  * @param options.overlaps Output overlapping areas of polygons.
10163
- * @param options.multiPart Output multipart polygons. This option must be combined with other options. Multipart output requires more processing. If the option is not set, the output will contain single part polygons (one exterior ring and zero or more holes).
10204
+ * @param options.multiPart Output multipart polygons. Multipart output requires more processing. If the option is not set, the output will contain single part polygons (one exterior ring and zero or more holes).
10164
10205
  *
10165
10206
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-operators-polygonOverlayOperator.html#executeMany Read more...}
10166
10207
  */
10167
- executeMany(geometries: GeometryUnion[], options?: polygonOverlayOperatorExecuteManyOptions): Polygon[];
10208
+ executeMany(polygons: Polygon[], options?: polygonOverlayOperatorExecuteManyOptions): ExecuteManyResult;
10168
10209
  }
10169
10210
 
10170
10211
  export const polygonOverlayOperator: polygonOverlayOperator;
10171
10212
 
10213
+ /**
10214
+ * Object returned by the {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-operators-polygonOverlayOperator.html#executeMany executeMany()} method.
10215
+ *
10216
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-operators-polygonOverlayOperator.html#ExecuteManyResult Read more...}
10217
+ */
10218
+ export interface ExecuteManyResult {
10219
+ results: Polygon[];
10220
+ ids: number[][];
10221
+ }
10222
+
10172
10223
  export interface polygonOverlayOperatorExecuteManyOptions {
10173
10224
  gaps?: boolean;
10174
10225
  holes?: boolean;
@@ -28869,6 +28920,13 @@ declare namespace __esri {
28869
28920
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-SceneLayer.html Read more...}
28870
28921
  */
28871
28922
  constructor(properties?: SceneLayerProperties);
28923
+ /**
28924
+ * This property is used to configure the associated layer's {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTable.html FeatureTable}.
28925
+ *
28926
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-SceneLayer.html#attributeTableTemplate Read more...}
28927
+ */
28928
+ get attributeTableTemplate(): AttributeTableTemplate | nullish;
28929
+ set attributeTableTemplate(value: AttributeTableTemplateProperties | nullish);
28872
28930
  /**
28873
28931
  * Specifies how features are placed on the vertical axis (z).
28874
28932
  *
@@ -29159,6 +29217,12 @@ declare namespace __esri {
29159
29217
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-SceneLayer.html#apiKey Read more...}
29160
29218
  */
29161
29219
  apiKey?: APIKeyMixinProperties["apiKey"];
29220
+ /**
29221
+ * This property is used to configure the associated layer's {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTable.html FeatureTable}.
29222
+ *
29223
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-SceneLayer.html#attributeTableTemplate Read more...}
29224
+ */
29225
+ attributeTableTemplate?: AttributeTableTemplateProperties | nullish;
29162
29226
  /**
29163
29227
  * The copyright text as defined by the scene service.
29164
29228
  *
@@ -89331,6 +89395,7 @@ declare namespace __esri {
89331
89395
  * @param options.spatialReference The spatial reference of the view in which the graphic is displayed.
89332
89396
  * @param options.renderer The renderer of the layer associated with the `graphic`.
89333
89397
  * @param options.resolution The {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html#resolution resolution} of the view at which the graphic is displayed.
89398
+ * @param options.webStyleAcceptedFormats A list of accepted formats when resolving web style symbols. The symbol will resolve to the first accepted format in the list.
89334
89399
  *
89335
89400
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-support-symbolUtils.html#getDisplayedColor Read more...}
89336
89401
  */
@@ -89345,6 +89410,7 @@ declare namespace __esri {
89345
89410
  * @param options.spatialReference The spatial reference of the view in which the symbol is displayed.
89346
89411
  * @param options.renderer The renderer of the layer associated with the `graphic`.
89347
89412
  * @param options.resolution The {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html#resolution resolution} of the view at which the symbol is displayed.
89413
+ * @param options.webStyleAcceptedFormats A list of accepted formats when resolving web style symbols. The symbol will resolve to the first accepted format in the list.
89348
89414
  *
89349
89415
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-support-symbolUtils.html#getDisplayedSymbol Read more...}
89350
89416
  */
@@ -89430,6 +89496,7 @@ declare namespace __esri {
89430
89496
  spatialReference?: SpatialReference;
89431
89497
  renderer?: RendererUnion;
89432
89498
  resolution?: number;
89499
+ webStyleAcceptedFormats?: ("web" | "cim")[];
89433
89500
  }
89434
89501
 
89435
89502
  export interface symbolUtilsGetDisplayedSymbolOptions {
@@ -89438,6 +89505,7 @@ declare namespace __esri {
89438
89505
  spatialReference?: SpatialReference;
89439
89506
  renderer?: RendererUnion;
89440
89507
  resolution?: number;
89508
+ webStyleAcceptedFormats?: ("web" | "cim")[];
89441
89509
  }
89442
89510
 
89443
89511
  export interface symbolUtilsGetLegendLabelOptions {
@@ -90184,20 +90252,22 @@ declare namespace __esri {
90184
90252
  *
90185
90253
  * @param options An object with the following properties.
90186
90254
  * @param options.signal Signal object that can be used to abort the asynchronous task. The returned promise will be rejected with an {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Error.html Error} named `AbortError` when an abort is signaled. See also [AbortController](https://developer.mozilla.org/en-US/docs/Web/API/AbortController) for more information on how to construct a controller that can be used to deliver abort signals.
90255
+ * @deprecated since version 4.33. Use [`fetchSymbol`](#fetchSymbol) instead. Pass `{ acceptedFormats: ["cim"] }`
90256
+ * as options to [`fetchSymbol`](#fetchSymbol) to retrieve only CIM symbols.
90187
90257
  *
90188
90258
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-WebStyleSymbol.html#fetchCIMSymbol Read more...}
90189
90259
  */
90190
90260
  fetchCIMSymbol(options?: WebStyleSymbolFetchCIMSymbolOptions | null): Promise<CIMSymbol>;
90191
90261
  /**
90192
- * Downloads and returns the {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-PointSymbol3D.html PointSymbol3D} instance the
90193
- * WebStyleSymbol refers to.
90262
+ * Resolves and returns the symbol instance the WebStyleSymbol refers to.
90194
90263
  *
90195
90264
  * @param options An object with the following properties.
90265
+ * @param options.acceptedFormats A list of accepted formats. The symbol will resolve to the first accepted format in the list.
90196
90266
  * @param options.signal Signal object that can be used to abort the asynchronous task. The returned promise will be rejected with an {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Error.html Error} named `AbortError` when an abort is signaled. See also [AbortController](https://developer.mozilla.org/en-US/docs/Web/API/AbortController) for more information on how to construct a controller that can be used to deliver abort signals.
90197
90267
  *
90198
90268
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-WebStyleSymbol.html#fetchSymbol Read more...}
90199
90269
  */
90200
- fetchSymbol(options?: WebStyleSymbolFetchSymbolOptions | null): Promise<PointSymbol3D>;
90270
+ fetchSymbol(options?: WebStyleSymbolFetchSymbolOptions | null): Promise<Symbol2D3DUnion>;
90201
90271
  static fromJSON(json: any): WebStyleSymbol;
90202
90272
  }
90203
90273
 
@@ -90233,6 +90303,7 @@ declare namespace __esri {
90233
90303
  }
90234
90304
 
90235
90305
  export interface WebStyleSymbolFetchSymbolOptions {
90306
+ acceptedFormats?: ("web" | "cim")[];
90236
90307
  signal?: AbortSignal | nullish;
90237
90308
  }
90238
90309
 
@@ -90486,12 +90557,6 @@ declare namespace __esri {
90486
90557
  }
90487
90558
 
90488
90559
  export class AttributeTableTemplate {
90489
- /**
90490
- * An Array of {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-tables-AttributeTableTemplate.html#FieldOrder FieldOrder} objects indicating the records' sort order.
90491
- *
90492
- * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-tables-AttributeTableTemplate.html#orderByFields Read more...}
90493
- */
90494
- orderByFields: FieldOrder[] | nullish;
90495
90560
  /**
90496
90561
  * An `AttributeTableTemplate` manages the configuration of how the {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTable.html FeatureTable} widget displays its columns.
90497
90562
  *
@@ -90518,6 +90583,13 @@ declare namespace __esri {
90518
90583
  | (AttributeTableRelationshipElementProperties & { type: "relationship" })
90519
90584
  )[]
90520
90585
  | nullish);
90586
+ /**
90587
+ * An Array of {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-tables-AttributeTableTemplate.html#FieldOrder FieldOrder} objects indicating the records' sort order.
90588
+ *
90589
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-tables-AttributeTableTemplate.html#orderByFields Read more...}
90590
+ */
90591
+ get orderByFields(): FieldOrder[] | nullish;
90592
+ set orderByFields(value: FieldOrderProperties[] | nullish);
90521
90593
  /**
90522
90594
  * Creates a deep clone of the AttributeTableTemplate class.
90523
90595
  *
@@ -90561,7 +90633,7 @@ declare namespace __esri {
90561
90633
  *
90562
90634
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-tables-AttributeTableTemplate.html#orderByFields Read more...}
90563
90635
  */
90564
- orderByFields?: FieldOrder[] | nullish;
90636
+ orderByFields?: FieldOrderProperties[] | nullish;
90565
90637
  }
90566
90638
 
90567
90639
  /**
@@ -90569,9 +90641,19 @@ declare namespace __esri {
90569
90641
  *
90570
90642
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-tables-AttributeTableTemplate.html#FieldOrder Read more...}
90571
90643
  */
90572
- export interface FieldOrder {
90573
- field?: string;
90574
- order?: "asc" | "desc";
90644
+ export interface FieldOrderProperties {
90645
+ field?: string | nullish;
90646
+ order?: "asc" | "desc" | nullish;
90647
+ }
90648
+
90649
+ /**
90650
+ * This object sets a field and sort order for how records display within the table.
90651
+ *
90652
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-tables-AttributeTableTemplate.html#FieldOrder Read more...}
90653
+ */
90654
+ export interface FieldOrder extends AnonymousAccessor {
90655
+ field: string | nullish;
90656
+ order: "asc" | "desc" | nullish;
90575
90657
  }
90576
90658
 
90577
90659
  /**
@@ -114438,6 +114520,12 @@ declare namespace __esri {
114438
114520
  readonly columns: Collection<
114439
114521
  Column | FieldColumn | GroupColumn | ActionColumn | AttachmentsColumn | RelationshipColumn
114440
114522
  >;
114523
+ /**
114524
+ * The SQL where clause used to filter features visible in the table.
114525
+ *
114526
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTable.html#definitionExpression Read more...}
114527
+ */
114528
+ definitionExpression: string | nullish;
114441
114529
  /**
114442
114530
  * Text displayed in the table header, under the title.
114443
114531
  *
@@ -114681,6 +114769,36 @@ declare namespace __esri {
114681
114769
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTable.html#state Read more...}
114682
114770
  */
114683
114771
  readonly state: "disabled" | "loading" | "loaded" | "ready" | "error";
114772
+ /**
114773
+ * Indicates whether the table and associated layer support adding attachments with the current configuration.
114774
+ *
114775
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTable.html#supportsAddAttachments Read more...}
114776
+ */
114777
+ readonly supportsAddAttachments: boolean;
114778
+ /**
114779
+ * Indicates whether the table and associated layer support viewing attachments with the current configuration.
114780
+ *
114781
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTable.html#supportsAttachments Read more...}
114782
+ */
114783
+ readonly supportsAttachments: boolean;
114784
+ /**
114785
+ * Indicates whether the table and associated layer support deleting attachments with the current configuration.
114786
+ *
114787
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTable.html#supportsDeleteAttachments Read more...}
114788
+ */
114789
+ readonly supportsDeleteAttachments: boolean;
114790
+ /**
114791
+ * Indicates whether the table and associated layer support resizing attachments with the current configuration.
114792
+ *
114793
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTable.html#supportsResizeAttachments Read more...}
114794
+ */
114795
+ readonly supportsResizeAttachments: boolean;
114796
+ /**
114797
+ * Indicates whether the table and associated layer support updating attachments with the current configuration.
114798
+ *
114799
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTable.html#supportsUpdateAttachments Read more...}
114800
+ */
114801
+ readonly supportsUpdateAttachments: boolean;
114684
114802
  /**
114685
114803
  * A reference to top-level controller table.
114686
114804
  *
@@ -114984,6 +115102,12 @@ declare namespace __esri {
114984
115102
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTable.html#columnReorderingEnabled Read more...}
114985
115103
  */
114986
115104
  columnReorderingEnabled?: boolean;
115105
+ /**
115106
+ * The SQL where clause used to filter features visible in the table.
115107
+ *
115108
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTable.html#definitionExpression Read more...}
115109
+ */
115110
+ definitionExpression?: string | nullish;
114987
115111
  /**
114988
115112
  * Text displayed in the table header, under the title.
114989
115113
  *
@@ -115485,6 +115609,12 @@ declare namespace __esri {
115485
115609
  readonly columns: Collection<
115486
115610
  Column | FieldColumn | GroupColumn | ActionColumn | AttachmentsColumn | RelationshipColumn
115487
115611
  >;
115612
+ /**
115613
+ * The SQL where clause used to filter features visible in the table.
115614
+ *
115615
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTable-FeatureTableViewModel.html#definitionExpression Read more...}
115616
+ */
115617
+ definitionExpression: string | nullish;
115488
115618
  /**
115489
115619
  * Indicates whether editing is enabled on the data within the feature table.
115490
115620
  *
@@ -115977,6 +116107,12 @@ declare namespace __esri {
115977
116107
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTable-FeatureTableViewModel.html#autoRefreshEnabled Read more...}
115978
116108
  */
115979
116109
  autoRefreshEnabled?: boolean;
116110
+ /**
116111
+ * The SQL where clause used to filter features visible in the table.
116112
+ *
116113
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTable-FeatureTableViewModel.html#definitionExpression Read more...}
116114
+ */
116115
+ definitionExpression?: string | nullish;
115980
116116
  /**
115981
116117
  * Indicates whether editing is enabled on the data within the feature table.
115982
116118
  *
package/intl/locale.js CHANGED
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.33/esri/copyright.txt for details.
4
4
  */
5
- import{makeHandle as n}from"../core/handleUtils.js";let e,o;const t=globalThis.esriConfig?.locale??globalThis.dojoConfig?.locale,i=globalThis.document?.documentElement;function a(){const n=i?.getAttribute("lang"),e=globalThis.navigator?.language;return t??n??e??"en"}function r(){return void 0===o&&(o=a()),o}function l(n){e=n||void 0,b()}const c=/^(?<language>[a-z]{2,3})(?:-[a-z]{3})?(?:-[A-Z][a-z]{3})?(?:-(?<region>[A-Z]{2}|\d{3}))?(?:-.*)?$/;function u(n=r()){return c.exec(n)?.groups}function s(n=r()){const e=u(n)?.language;return"he"===e||"ar"===e}const g=[];function f(e){return g.push(e),n((()=>g.splice(g.indexOf(e),1)))}const h=[];function d(e){return h.push(e),n((()=>h.splice(h.indexOf(e),1)))}function b(){const n=e??a();o!==n&&([...h].forEach((e=>e(n))),o=n,[...g].forEach((e=>e(n))))}if(globalThis.addEventListener?.("languagechange",b),i){new MutationObserver((()=>{b()})).observe(i,{attributeFilter:["lang"]})}export{d as beforeLocaleChange,a as getDefaultLocale,r as getLocale,u as getLocaleParts,f as onLocaleChange,s as prefersRTL,l as setLocale};
5
+ import{makeHandle as e}from"../core/handleUtils.js";import"../core/has.js";let n,t;const o=globalThis.esriConfig?.locale??globalThis.dojoConfig?.locale,r=globalThis.document?.documentElement;function a(){const e=r?.getAttribute("lang"),n=globalThis.navigator?.language;return o??e??n??"en"}function i(){return void 0===t&&(t=a()),t}function l(e){n=e||void 0,m()}const c=/^(?<language>[a-z]{2,3})(?:-[a-z]{3})?(?:-[A-Z][a-z]{3})?(?:-(?<region>[A-Z]{2}|\d{3}))?(?:-.*)?$/;function s(e=i()){return c.exec(e)?.groups}function u(e=i()){const n=s(e)?.language;return"he"===n||"ar"===n}const g=[],f=new Map;function h(){const e=Array.from(f.values())[0];f.clear();const n=g.length;if(0!==n)throw new Error(`Unexpected ${n} locale change listeners still active.${e?` For example:\n${e}`:" Set enableListenerTracing in esri/intl/locale.ts to include a stack trace."}`)}function d(n){return g.push(n),e((()=>{g.splice(g.indexOf(n),1)}))}const p=[];function b(n){return p.push(n),e((()=>p.splice(p.indexOf(n),1)))}function m(){const e=n??a();t!==e&&([...p].forEach((n=>n(e))),t=e,[...g].forEach((n=>n(e))))}if(globalThis.addEventListener?.("languagechange",m),r){new MutationObserver((()=>{m()})).observe(r,{attributeFilter:["lang"]})}export{h as assertNoLocaleChangeListeners,b as beforeLocaleChange,a as getDefaultLocale,i as getLocale,s as getLocaleParts,d as onLocaleChange,u as prefersRTL,l as setLocale};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.33/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../chunks/tslib.es6.js";import t from"../core/Error.js";import{clone as i}from"../core/lang.js";import{setDeepValue as r}from"../core/object.js";import{property as o}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/Logger.js";import{subclass as a}from"../core/accessorSupport/decorators/subclass.js";import n from"./FeatureLayer.js";import{useViewTimeProperty as s}from"./mixins/TemporalLayer.js";import{orientedImageryTypeMap as p,timeIntervalUnitTypeMap as m,verticalMeasurementTypeMap as y,getEffectiveElevationSource as l,isOrientationAccuracy as d}from"./orientedImagery/core/utils.js";import u from"../time/TimeExtent.js";import{SaveOperationType as c}from"../webdoc/interfaces.js";const h=new Set(["demPathPrefix","demPathSuffix","depthImagePathPrefix","depthImagePathSuffix","elevationSource","horizontalMeasurementUnit","imageGeometryField","imageReferenceField","verticalMeasurementUnit","videoPathPrefix","videoPathSuffix","timeAnimation","visibilityTimeExtent"]),g=(e,t)=>!h.has(t)&&e,f=(e,t,i)=>{const r=`orientedImageryProperties.${e}`;return{name:r,write:t?{ignoreOrigin:!0,target:r,writer:t}:{ignoreOrigin:!0},read:i?{ignoreOrigin:!0,source:r,reader:i}:{ignoreOrigin:!0}}};function v(e){return e.json?(e.json.origins=e.json.origins??{},e.json.origins["web-scene"]={write:!1,read:!1},e):e}function j(e,t,i,r){const{name:o,write:a,read:n}=f(e,t,i),s={name:o,write:a,read:n,origins:{service:{name:`orientedImageryInfo.${o}`,write:t,read:i},"web-scene":{name:o,write:g(a,e),read:g(n,e)},"web-map":{name:o,write:a,read:n}}};return r&&s.origins?(s.type=r,s.origins["web-map"].type=r,s.origins["web-scene"].type=r,s):s}let P=class extends n{constructor(){super(...arguments),this.cameraHeading=null,this.cameraHeight=null,this.cameraPitch=null,this.cameraRoll=null,this.coveragePercent=null,this.demPathPrefix=null,this.demPathSuffix=null,this.depthImagePathPrefix=null,this.depthImagePathSuffix=null,this.elevationSource=null,this.farDistance=null,this.geometryType="point",this.horizontalFieldOfView=null,this.horizontalMeasurementUnit=null,this.imageGeometryField="ImageGeometry",this.imagePathPrefix=null,this.imagePathSuffix=null,this.imageReferenceField="OIObjectID",this.imageRotation=null,this.maximumDistance=null,this.nearDistance=null,this.operationalLayerType="OrientedImageryLayer",this.orientationAccuracy=null,this.orientedImageryType=null,this.supportedSourceTypes=new Set(["Oriented Imagery Layer"]),this.type="oriented-imagery",this.timeIntervalUnit="days",this.useViewTime=!0,this.verticalFieldOfView=null,this.verticalMeasurementUnit=null,this.videoPathPrefix=null,this.videoPathSuffix=null,this.visibilityTimeExtent=null}get effectiveElevationSource(){const{elevationSource:e,demPathPrefix:t,demPathSuffix:i}=this;return l(e,t,i)}async save(e){return this._debouncedSaveOperations(c.SAVE,e)}async saveAs(e,t){return this._debouncedSaveOperations(c.SAVE_AS,t,e)}findFirstValidLayerId(e){return e.layers?.find((e=>this.supportedSourceTypes.has(e.type)))?.id}_verifySource(){if(super._verifySource(),"point"!==this.geometryType)throw new t("oriented-imagery-layer:invalid-geometry-type","OrientedImageryLayer only supports point geometry type")}};e([o({type:Number,json:j("cameraHeading")})],P.prototype,"cameraHeading",void 0),e([o({type:Number,json:j("cameraHeight")})],P.prototype,"cameraHeight",void 0),e([o({type:Number,json:j("cameraPitch")})],P.prototype,"cameraPitch",void 0),e([o({type:Number,json:j("cameraRoll")})],P.prototype,"cameraRoll",void 0),e([o({type:Number,json:j("coveragePercent")})],P.prototype,"coveragePercent",void 0),e([o({type:String,json:j("demPathPrefix")})],P.prototype,"demPathPrefix",void 0),e([o({type:String,json:j("demPathSuffix")})],P.prototype,"demPathSuffix",void 0),e([o({type:String,json:j("depthImagePathPrefix")})],P.prototype,"depthImagePathPrefix",void 0),e([o({type:String,json:j("depthImagePathSuffix")})],P.prototype,"depthImagePathSuffix",void 0),e([o({type:Object,json:j("elevationSource")})],P.prototype,"elevationSource",void 0),e([o({readOnly:!0})],P.prototype,"effectiveElevationSource",null),e([o({type:Number,json:j("farDistance")})],P.prototype,"farDistance",void 0),e([o()],P.prototype,"geometryType",void 0),e([o({type:Number,json:j("horizontalFieldOfView")})],P.prototype,"horizontalFieldOfView",void 0),e([o({type:String,json:j("horizontalMeasurementUnit")})],P.prototype,"horizontalMeasurementUnit",void 0),e([o({type:String,json:{...j("imageGeometryField"),default:"ImageGeometry"}})],P.prototype,"imageGeometryField",void 0),e([o({type:String,json:j("imagePathPrefix")})],P.prototype,"imagePathPrefix",void 0),e([o({type:String,json:j("imagePathSuffix")})],P.prototype,"imagePathSuffix",void 0),e([o({type:String,json:{...j("imageReferenceField"),default:"OIObjectID"}})],P.prototype,"imageReferenceField",void 0),e([o({type:Number,json:j("imageRotation")})],P.prototype,"imageRotation",void 0),e([o({type:Number,json:j("maximumDistance")})],P.prototype,"maximumDistance",void 0),e([o({type:Number,json:j("nearDistance")})],P.prototype,"nearDistance",void 0),e([o({type:["OrientedImageryLayer"],json:{origins:{"portal-item":{name:"layerType",write:{enabled:!0,ignoreOrigin:!0}}}}})],P.prototype,"operationalLayerType",void 0),e([o({json:{...j("orientationAccuracy",((e,t,i)=>{r(i,e.join(";"),t)}),(e=>{const t=e?.split(";")?.map(Number);return d(t)?t:[0,0,0,0,0,0,0,0,0]}),String)}})],P.prototype,"orientationAccuracy",void 0),e([o({json:{...j("orientedImageryType",p.write,p.read,p.jsonValues.slice(1))}})],P.prototype,"orientedImageryType",void 0),e([o({json:{read:!1},value:"oriented-imagery",readOnly:!0})],P.prototype,"type",void 0),e([o({type:m.apiValues,json:{...j("timeIntervalUnit",m.write,m.read,m.jsonValues)}})],P.prototype,"timeIntervalUnit",void 0),e([o(v(i(s)))],P.prototype,"useViewTime",void 0),e([o({type:Number,json:j("verticalFieldOfView")})],P.prototype,"verticalFieldOfView",void 0),e([o({type:y.apiValues,json:{...j("verticalMeasurementUnit",y.write,y.read,y.jsonValues)}})],P.prototype,"verticalMeasurementUnit",void 0),e([o({type:String,json:j("videoPathPrefix")})],P.prototype,"videoPathPrefix",void 0),e([o({type:String,json:j("videoPathSuffix")})],P.prototype,"videoPathSuffix",void 0),e([o({type:u,json:{origins:{"web-scene":{write:!1,read:!1}}}})],P.prototype,"visibilityTimeExtent",void 0),P=e([a("esri.layers.OrientedImageryLayer")],P);const S=P;export{S as default};
5
+ import{_ as e}from"../chunks/tslib.es6.js";import t from"../core/Error.js";import{clone as i}from"../core/lang.js";import{setDeepValue as r}from"../core/object.js";import{property as o}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/Logger.js";import{subclass as a}from"../core/accessorSupport/decorators/subclass.js";import n from"./FeatureLayer.js";import{useViewTimeProperty as s}from"./mixins/TemporalLayer.js";import{orientedImageryTypeMap as p,timeIntervalUnitTypeMap as m,verticalMeasurementTypeMap as l,getEffectiveElevationSource as y,isOrientationAccuracy as d}from"./orientedImagery/core/utils.js";import u from"../tables/AttributeTableTemplate.js";import c from"../time/TimeExtent.js";import{SaveOperationType as h}from"../webdoc/interfaces.js";const g=new Set(["demPathPrefix","demPathSuffix","depthImagePathPrefix","depthImagePathSuffix","elevationSource","horizontalMeasurementUnit","imageGeometryField","imageReferenceField","verticalMeasurementUnit","videoPathPrefix","videoPathSuffix","timeAnimation","visibilityTimeExtent"]),f=(e,t)=>!g.has(t)&&e,v=(e,t,i)=>{const r=`orientedImageryProperties.${e}`;return{name:r,write:t?{ignoreOrigin:!0,target:r,writer:t}:{ignoreOrigin:!0},read:i?{ignoreOrigin:!0,source:r,reader:i}:{ignoreOrigin:!0}}};function j(e){return e.json?(e.json.origins=e.json.origins??{},e.json.origins["web-scene"]={write:!1,read:!1},e):e}function P(e,t,i,r){const{name:o,write:a,read:n}=v(e,t,i),s={name:o,write:a,read:n,origins:{service:{name:`orientedImageryInfo.${o}`,write:t,read:i},"web-scene":{name:o,write:f(a,e),read:f(n,e)},"web-map":{name:o,write:a,read:n}}};return r&&s.origins?(s.type=r,s.origins["web-map"].type=r,s.origins["web-scene"].type=r,s):s}let S=class extends n{constructor(){super(...arguments),this.attributeTableTemplate=null,this.cameraHeading=null,this.cameraHeight=null,this.cameraPitch=null,this.cameraRoll=null,this.coveragePercent=null,this.demPathPrefix=null,this.demPathSuffix=null,this.depthImagePathPrefix=null,this.depthImagePathSuffix=null,this.elevationSource=null,this.farDistance=null,this.geometryType="point",this.horizontalFieldOfView=null,this.horizontalMeasurementUnit=null,this.imageGeometryField="ImageGeometry",this.imagePathPrefix=null,this.imagePathSuffix=null,this.imageReferenceField="OIObjectID",this.imageRotation=null,this.maximumDistance=null,this.nearDistance=null,this.operationalLayerType="OrientedImageryLayer",this.orientationAccuracy=null,this.orientedImageryType=null,this.supportedSourceTypes=new Set(["Oriented Imagery Layer"]),this.type="oriented-imagery",this.timeIntervalUnit="days",this.useViewTime=!0,this.verticalFieldOfView=null,this.verticalMeasurementUnit=null,this.videoPathPrefix=null,this.videoPathSuffix=null,this.visibilityTimeExtent=null}get effectiveElevationSource(){const{elevationSource:e,demPathPrefix:t,demPathSuffix:i}=this;return y(e,t,i)}async save(e){return this._debouncedSaveOperations(h.SAVE,e)}async saveAs(e,t){return this._debouncedSaveOperations(h.SAVE_AS,t,e)}findFirstValidLayerId(e){return e.layers?.find((e=>this.supportedSourceTypes.has(e.type)))?.id}_verifySource(){if(super._verifySource(),"point"!==this.geometryType)throw new t("oriented-imagery-layer:invalid-geometry-type","OrientedImageryLayer only supports point geometry type")}};e([o({type:u,json:{write:!1,read:!1}})],S.prototype,"attributeTableTemplate",void 0),e([o({type:Number,json:P("cameraHeading")})],S.prototype,"cameraHeading",void 0),e([o({type:Number,json:P("cameraHeight")})],S.prototype,"cameraHeight",void 0),e([o({type:Number,json:P("cameraPitch")})],S.prototype,"cameraPitch",void 0),e([o({type:Number,json:P("cameraRoll")})],S.prototype,"cameraRoll",void 0),e([o({type:Number,json:P("coveragePercent")})],S.prototype,"coveragePercent",void 0),e([o({type:String,json:P("demPathPrefix")})],S.prototype,"demPathPrefix",void 0),e([o({type:String,json:P("demPathSuffix")})],S.prototype,"demPathSuffix",void 0),e([o({type:String,json:P("depthImagePathPrefix")})],S.prototype,"depthImagePathPrefix",void 0),e([o({type:String,json:P("depthImagePathSuffix")})],S.prototype,"depthImagePathSuffix",void 0),e([o({type:Object,json:P("elevationSource")})],S.prototype,"elevationSource",void 0),e([o({readOnly:!0})],S.prototype,"effectiveElevationSource",null),e([o({type:Number,json:P("farDistance")})],S.prototype,"farDistance",void 0),e([o()],S.prototype,"geometryType",void 0),e([o({type:Number,json:P("horizontalFieldOfView")})],S.prototype,"horizontalFieldOfView",void 0),e([o({type:String,json:P("horizontalMeasurementUnit")})],S.prototype,"horizontalMeasurementUnit",void 0),e([o({type:String,json:{...P("imageGeometryField"),default:"ImageGeometry"}})],S.prototype,"imageGeometryField",void 0),e([o({type:String,json:P("imagePathPrefix")})],S.prototype,"imagePathPrefix",void 0),e([o({type:String,json:P("imagePathSuffix")})],S.prototype,"imagePathSuffix",void 0),e([o({type:String,json:{...P("imageReferenceField"),default:"OIObjectID"}})],S.prototype,"imageReferenceField",void 0),e([o({type:Number,json:P("imageRotation")})],S.prototype,"imageRotation",void 0),e([o({type:Number,json:P("maximumDistance")})],S.prototype,"maximumDistance",void 0),e([o({type:Number,json:P("nearDistance")})],S.prototype,"nearDistance",void 0),e([o({type:["OrientedImageryLayer"],json:{origins:{"portal-item":{name:"layerType",write:{enabled:!0,ignoreOrigin:!0}}}}})],S.prototype,"operationalLayerType",void 0),e([o({json:{...P("orientationAccuracy",((e,t,i)=>{r(i,e.join(";"),t)}),(e=>{const t=e?.split(";")?.map(Number);return d(t)?t:[0,0,0,0,0,0,0,0,0]}),String)}})],S.prototype,"orientationAccuracy",void 0),e([o({json:{...P("orientedImageryType",p.write,p.read,p.jsonValues.slice(1))}})],S.prototype,"orientedImageryType",void 0),e([o({json:{read:!1},value:"oriented-imagery",readOnly:!0})],S.prototype,"type",void 0),e([o({type:m.apiValues,json:{...P("timeIntervalUnit",m.write,m.read,m.jsonValues)}})],S.prototype,"timeIntervalUnit",void 0),e([o(j(i(s)))],S.prototype,"useViewTime",void 0),e([o({type:Number,json:P("verticalFieldOfView")})],S.prototype,"verticalFieldOfView",void 0),e([o({type:l.apiValues,json:{...P("verticalMeasurementUnit",l.write,l.read,l.jsonValues)}})],S.prototype,"verticalMeasurementUnit",void 0),e([o({type:String,json:P("videoPathPrefix")})],S.prototype,"videoPathPrefix",void 0),e([o({type:String,json:P("videoPathSuffix")})],S.prototype,"videoPathSuffix",void 0),e([o({type:c,json:{origins:{"web-scene":{write:!1,read:!1}}}})],S.prototype,"visibilityTimeExtent",void 0),S=e([a("esri.layers.OrientedImageryLayer")],S);const x=S;export{x as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.33/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../chunks/tslib.es6.js";import t from"../Graphic.js";import r from"../PopupTemplate.js";import i from"../core/Clonable.js";import s from"../core/Collection.js";import o from"../core/Error.js";import a from"../core/Logger.js";import{destroyMaybe as n}from"../core/maybe.js";import{MultiOriginJSONMixin as l}from"../core/MultiOriginJSONSupport.js";import{throwIfAbortError as p,isAbortError as d}from"../core/promiseUtils.js";import{whenOnce as u}from"../core/reactiveUtils.js";import{property as y}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/RandomLCG.js";import{getProperties as c}from"../core/accessorSupport/utils.js";import{reader as h}from"../core/accessorSupport/decorators/reader.js";import{subclass as f}from"../core/accessorSupport/decorators/subclass.js";import{OriginId as m}from"../core/accessorSupport/PropertyOrigin.js";import g from"../geometry/Point.js";import v from"./Layer.js";import{NoModelError as b,MultipleModelsError as w}from"./graphics/sources/support/uploadAssetErrors.js";import{APIKeyMixin as I}from"./mixins/APIKeyMixin.js";import{ArcGISService as L}from"./mixins/ArcGISService.js";import{CustomParametersMixin as j}from"./mixins/CustomParametersMixin.js";import{EditBusLayer as F}from"./mixins/EditBusLayer.js";import{OperationalLayer as S}from"./mixins/OperationalLayer.js";import{PortalLayer as _}from"./mixins/PortalLayer.js";import{ScaleRangeLayer as A}from"./mixins/ScaleRangeLayer.js";import{SceneService as O,SaveOperationType as P}from"./mixins/SceneService.js";import{useViewTimeProperty as E}from"./mixins/TemporalLayer.js";import{TemporalSceneLayer as T}from"./mixins/TemporalSceneLayer.js";import{isHostedAgolService as x}from"./support/arcgisLayerUrl.js";import{findAssociatedFeatureService as D}from"./support/associatedFeatureServiceUtils.js";import{zeroCapabilities as U}from"./support/capabilities.js";import{elevationInfo as R,labelsVisible as q,legendEnabled as C,popupEnabled as G,screenSizePerspectiveEnabled as N}from"./support/commonProperties.js";import{getFieldDomain as Q,computeEffectiveEditingEnabled as V,getGlobalIdToObjectIdMap as M}from"./support/featureLayerUtils.js";import{FeatureReduction as k}from"./support/FeatureReduction.js";import K from"./support/FeatureReductionSelection.js";import{defineFieldProperties as $}from"./support/fieldProperties.js";import H from"./support/FieldsIndex.js";import{fixRendererFields as z,unpackFieldNames as W}from"./support/fieldUtils.js";import{I3SNodePageDefinition as Z,I3SMaterialDefinition as B,I3STextureSetDefinition as J,I3SGeometryDefinition as X}from"./support/I3SLayerDefinitions.js";import{isFileEditFormat as Y,isFileSupported as ee}from"./support/infoFor3D.js";import te from"./support/LabelClass.js";import{reader as re}from"./support/labelingInfo.js";import ie from"./support/LayerFloorInfo.js";import{layerLookupMap as se}from"./support/lazyLayerLoader.js";import{getMeshTransformForMetersToSpatialReference as oe}from"./support/meshSpatialReferenceScaleUtils.js";import{RangeInfo as ae}from"./support/RangeInfo.js";import ne from"./support/SceneFilter.js";import{cacheIsOutOfSync as le}from"./support/sceneLayerCacheUtils.js";import{fetchStatistics as pe}from"./support/sceneLayerStatistics.js";import{loadStyleRenderer as de}from"../renderers/support/styleUtils.js";import{webSceneRendererTypes as ue}from"../renderers/support/typeUtils.js";import ye from"../rest/support/Query.js";import{logInvalidElevationInfoWarning as ce,elevationModeUnsupportedMessage as he,featureExpressionUnsupportedMessage as fe}from"../support/elevationInfoUtils.js";import{createPopupTemplate as me}from"../support/popupUtils.js";import{extractZipFiles as ge}from"../support/zipUtils.js";import{queryAttributesFromCachedAttributesId as ve}from"../views/3d/layers/i3s/I3SUtil.js";import{getRequiredFields as be,getFetchPopupTemplate as we}from"../views/layers/support/popupUtils.js";import{transparencyToOpacity as Ie}from"../webdoc/support/opacityUtils.js";const Le=new Set(["3DObject","Point"]),je=$();let Fe=class extends(T(F(O(L(S(_(A(l(j(I(i.ClonableMixin(v)))))))))))){constructor(...e){super(...e),this.featureReduction=null,this.rangeInfos=null,this.operationalLayerType="ArcGISSceneServiceLayer",this.type="scene",this.fields=null,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.objectIdField=null,this.globalIdField=null,this._fieldUsageInfo={},this.screenSizePerspectiveEnabled=!0,this.serviceItemId=void 0}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}destroy(){this._set("renderer",null),this.associatedLayer=n(this.associatedLayer)}getField(e){return this.fieldsIndex.get(e)}getFieldDomain(e,t){const r=this.getField(e)?.domain??null;return this.associatedLayer?Q(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 attributeTableTemplate(){return this.associatedLayer?.attributeTableTemplate??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:Z.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 _e[this.profile]||"mesh"}set renderer(e){z(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:U;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:h,supportsDelete:f,supportsQuery:m,supportsQueryAttachments:g,supportsAsyncConvert3D:v}}=e,b=e.operations.supportsChangeTracking,w=!!this.associatedLayer?.infoFor3D;return{query:t,queryRelated:r,editing:{supportsGlobalId:i,supportsReturnServiceEditsInSourceSpatialReference:n,supportsRollbackOnFailure:s,supportsGeometryUpdate:w&&a,supportsUploadWithItemId:o},data:{supportsAttachment:u,supportsZ:l,supportsM:p,isVersioned:d},operations:{supportsQuery:m,supportsQueryAttachments:g,supportsEditing:y&&b,supportsAdd:w&&c&&b,supportsDelete:w&&f&&b,supportsUpdate:h&&b,supportsAsyncConvert3D:v}}}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&&Se[r]?Se[r]:(a.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)}load(e){return this.addResolvingPromise(this._load(e)),Promise.resolve(this)}async _load(e){const t=null!=e?e.signal:null;await this.loadFromPortal({supportedTypes:["Scene Service"]},e).catch(p),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 de(this,{origin:"service"},t),z(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){a.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 ye;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;return e}))}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=W(this.fieldsIndex,await be(this,we(this)));return ve(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}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:(a.getLogger(this).error("#getFieldUsageInfo()","Unavailable until layer is loaded"),t)}createPopupTemplate(e){return me(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(P.SAVE_AS,{...t,getTypeKeywords:()=>this._getTypeKeywords(),portalItemLayerType:"scene"},e)}async save(){const e={getTypeKeywords:()=>this._getTypeKeywords(),portalItemLayerType:"scene"};return this._debouncedSaveOperations(P.SAVE,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 x(s.url)&&n&&null!=e.deleteFeatures&&null!=a&&(i={...i,globalIdToObjectId:await M(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)}on(e,t){return super.on(e,t)}async convertMesh(e,t){t??={};const r=e=>{throw a.getLogger(this).error(".convertMesh()",e.message),e};await this.load(),this.infoFor3D||r(new o("invalid:layer","SceneLayer has no capability for mesh conversion"));const i=await this.extractAndFilterFiles(e),s=i.reduce(((e,t)=>Y(this.infoFor3D,t)?e+1:e),0);0===s&&r(new b),s>1&&r(new w);const n=this.spatialReference,l=t.location??new g({x:0,y:0,z:0,spatialReference:n}),p=l.spatialReference.isGeographic?"local":"georeferenced",{default:d}=await import("../geometry/Mesh.js"),u=d.createWithExternalSource(l,i,{vertexSpace:p,transform:oe(l.spatialReference),unitConversionDisabled:!0}),[y]=await this.uploadAssets([u],{...t,useAssetOrigin:!t.location});return y}async extractAndFilterFiles(e){await this.load();const t=this.infoFor3D;if(!t)return e;return(await ge(e)).filter((e=>ee(t,e)))}validateLayer(e){if(e.layerType&&!Le.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)}_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._applyAssociatedLayerPopupOverrides(),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)}_applyAssociatedLayerPopupOverrides(){if(!this.associatedLayer)return;const e=["popupTemplate","popupEnabled"],t=c(this);for(let r=0;r<e.length;r++){const i=e[r],s=this.originIdOf(i),o=this.associatedLayer.originIdOf(i);s<o&&(o===m.SERVICE||o===m.PORTAL_ITEM)&&t.setAtOrigin(i,this.associatedLayer[i],o)}}_applyAssociatedLayerExtentOverride(){const e=this.associatedLayer?.getAtOrigin("fullExtent","service");if(null==this.associatedLayer?.infoFor3D||!e||!x(this.associatedLayer?.url)||!le(this))return;c(this).setAtOrigin("fullExtent",e.clone(),m.SERVICE)}_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 se.FeatureLayer();this.associatedLayer=new s({url:t,customParameters:this.customParameters,layerId:r,portalItem:i}),await this.associatedLayer.load()}catch(t){d(t)||this._logWarningOnPopupEnabled()}}async _logWarningOnPopupEnabled(){await u((()=>this.popupEnabled&&null!=this.popupTemplate));const e=`this SceneLayer: ${this.title}`;null==this.attributeStorageInfo?a.getLogger(this).warn(`Associated FeatureLayer could not be loaded and no binary attributes found. Popups will not work on ${e}`):a.getLogger(this).info(`Associated FeatureLayer could not be loaded. Falling back to binary attributes for Popups on ${e}`)}_validateElevationInfo(){const e=this.elevationInfo;"mesh-pyramids"===this.profile&&ce(a.getLogger(this),he("Mesh scene layers","relative-to-scene",e)),ce(a.getLogger(this),fe("Scene layers",e))}async fetchStatistics(e,t){return await pe({fieldName:e,statisticsInfo:this.statisticsInfo,errorContext:"scenelayer",fieldsIndex:this.fieldsIndex,path:this.parsedUrl?.path??"",customParameters:this.customParameters,apiKey:this.apiKey,signal:t?.signal})}};e([y({types:{key:"type",base:k,typeMap:{selection:K}},json:{origins:{"web-scene":{name:"layerDefinition.featureReduction",write:!0},"portal-item":{name:"layerDefinition.featureReduction",write:!0}}}})],Fe.prototype,"featureReduction",void 0),e([y({type:[ae],json:{read:!1,origins:{"web-scene":{name:"layerDefinition.rangeInfos",write:!0},"portal-item":{name:"layerDefinition.rangeInfos",write:!0}}}})],Fe.prototype,"rangeInfos",void 0),e([y({json:{read:!1}})],Fe.prototype,"associatedLayer",void 0),e([y({type:["show","hide"]})],Fe.prototype,"listMode",void 0),e([y({type:["ArcGISSceneServiceLayer"]})],Fe.prototype,"operationalLayerType",void 0),e([y({json:{read:!1},readOnly:!0})],Fe.prototype,"type",void 0),e([y({...je.fields,readOnly:!0,json:{read:!1,origins:{service:{read:!0}}}})],Fe.prototype,"fields",void 0),e([y()],Fe.prototype,"types",null),e([y()],Fe.prototype,"typeIdField",null),e([y()],Fe.prototype,"templates",null),e([y()],Fe.prototype,"formTemplate",null),e([y()],Fe.prototype,"attributeTableTemplate",null),e([y({readOnly:!0,clonable:!1})],Fe.prototype,"fieldsIndex",null),e([y({type:ie,json:{read:{source:"layerDefinition.floorInfo"},write:{target:"layerDefinition.floorInfo"}}})],Fe.prototype,"floorInfo",void 0),e([y(je.outFields)],Fe.prototype,"outFields",void 0),e([y({type:Z,readOnly:!0,json:{read:!1}})],Fe.prototype,"nodePages",void 0),e([h("service","nodePages",["nodePages","pointNodePages"])],Fe.prototype,"readNodePages",null),e([y({type:[B],readOnly:!0})],Fe.prototype,"materialDefinitions",void 0),e([y({type:[J],readOnly:!0})],Fe.prototype,"textureSetDefinitions",void 0),e([y({type:[X],readOnly:!0})],Fe.prototype,"geometryDefinitions",void 0),e([y({readOnly:!0})],Fe.prototype,"serviceUpdateTimeStamp",void 0),e([y({readOnly:!0})],Fe.prototype,"attributeStorageInfo",void 0),e([y({readOnly:!0})],Fe.prototype,"statisticsInfo",void 0),e([y({type:s.ofType(Number),nonNullable:!0,json:{origins:{service:{read:!1,write:!1}},name:"layerDefinition.excludeObjectIds",write:{enabled:!0}}})],Fe.prototype,"excludeObjectIds",void 0),e([y({type:String,json:{origins:{service:{read:!1,write:!1}},name:"layerDefinition.definitionExpression",write:{enabled:!0,allowNull:!0}}})],Fe.prototype,"definitionExpression",void 0),e([y({type:ne,json:{name:"layerDefinition.polygonFilter",write:{enabled:!0,allowNull:!0},origins:{service:{read:!1,write:!1}}}})],Fe.prototype,"filter",void 0),e([y({type:String,json:{origins:{"web-scene":{read:!0,write:!0}},read:!1}})],Fe.prototype,"path",void 0),e([y(R)],Fe.prototype,"elevationInfo",null),e([y({readOnly:!0,json:{read:!1}})],Fe.prototype,"effectiveCapabilities",null),e([y({readOnly:!0})],Fe.prototype,"effectiveEditingEnabled",null),e([y({type:String})],Fe.prototype,"geometryType",null),e([y(q)],Fe.prototype,"labelsVisible",void 0),e([y({type:[te],json:{origins:{service:{name:"drawingInfo.labelingInfo",read:{reader:re},write:!1}},name:"layerDefinition.drawingInfo.labelingInfo",read:{reader:re},write:!0}})],Fe.prototype,"labelingInfo",void 0),e([y(C)],Fe.prototype,"legendEnabled",void 0),e([y({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?Ie(r):void 0}}},"portal-item":{write:!0},service:{read:!1}}}})],Fe.prototype,"opacity",void 0),e([y({type:["Low","High"],readOnly:!0,json:{read:!1,origins:{service:{read:!0}}}})],Fe.prototype,"priority",void 0),e([y({type:["Labels"],readOnly:!0,json:{read:!1,origins:{service:{read:!0}}}})],Fe.prototype,"semantic",void 0),e([y({types:ue,json:{origins:{service:{read:{source:"drawingInfo.renderer"}}},name:"layerDefinition.drawingInfo.renderer",write:!0},value:null})],Fe.prototype,"renderer",null),e([y({json:{read:!1}})],Fe.prototype,"cachedDrawingInfo",void 0),e([h("service","cachedDrawingInfo")],Fe.prototype,"readCachedDrawingInfo",null),e([y({readOnly:!0,json:{read:!1}})],Fe.prototype,"capabilities",null),e([y({type:Boolean,json:{read:!1}})],Fe.prototype,"editingEnabled",null),e([y({readOnly:!0,json:{write:!1,read:!1}})],Fe.prototype,"infoFor3D",null),e([y({readOnly:!0,json:{write:!1,read:!1}})],Fe.prototype,"relationships",null),e([y(G)],Fe.prototype,"popupEnabled",void 0),e([y({type:r,json:{name:"popupInfo",write:!0}})],Fe.prototype,"popupTemplate",void 0),e([y({readOnly:!0,json:{read:!1}})],Fe.prototype,"defaultPopupTemplate",null),e([y({type:String,json:{read:!1}})],Fe.prototype,"objectIdField",void 0),e([h("service","objectIdField",["objectIdField","fields"])],Fe.prototype,"readObjectIdField",null),e([y({type:String,json:{read:!1}})],Fe.prototype,"globalIdField",void 0),e([h("service","globalIdField",["globalIdField","fields"])],Fe.prototype,"readGlobalIdField",null),e([y({readOnly:!0,type:String,json:{read:!1}})],Fe.prototype,"displayField",null),e([y({type:String,json:{read:!1}})],Fe.prototype,"profile",void 0),e([h("service","profile",["store.profile"])],Fe.prototype,"readProfile",null),e([y({readOnly:!0,type:String,json:{origins:{service:{read:{source:"store.normalReferenceFrame"}}},read:!1}})],Fe.prototype,"normalReferenceFrame",void 0),e([y(N)],Fe.prototype,"screenSizePerspectiveEnabled",void 0),e([y({json:{read:!1,origins:{service:{read:!0}}}})],Fe.prototype,"serviceItemId",void 0),e([y(E)],Fe.prototype,"useViewTime",null),Fe=e([f("esri.layers.SceneLayer")],Fe);const Se={"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"},_e={"mesh-pyramids":"mesh",points:"point"},Ae=Fe;export{Ae as default};
5
+ import{_ as e}from"../chunks/tslib.es6.js";import t from"../Graphic.js";import r from"../PopupTemplate.js";import i from"../core/Clonable.js";import s from"../core/Collection.js";import o from"../core/Error.js";import a from"../core/Logger.js";import{destroyMaybe as n}from"../core/maybe.js";import{MultiOriginJSONMixin as l}from"../core/MultiOriginJSONSupport.js";import{throwIfAbortError as p,isAbortError as d}from"../core/promiseUtils.js";import{whenOnce as y}from"../core/reactiveUtils.js";import{property as u}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/RandomLCG.js";import{getProperties as c}from"../core/accessorSupport/utils.js";import{reader as h}from"../core/accessorSupport/decorators/reader.js";import{subclass as f}from"../core/accessorSupport/decorators/subclass.js";import{OriginId as m}from"../core/accessorSupport/PropertyOrigin.js";import g from"../geometry/Point.js";import v from"./Layer.js";import{NoModelError as b,MultipleModelsError as w}from"./graphics/sources/support/uploadAssetErrors.js";import{APIKeyMixin as I}from"./mixins/APIKeyMixin.js";import{ArcGISService as L}from"./mixins/ArcGISService.js";import{CustomParametersMixin as j}from"./mixins/CustomParametersMixin.js";import{EditBusLayer as F}from"./mixins/EditBusLayer.js";import{OperationalLayer as S}from"./mixins/OperationalLayer.js";import{PortalLayer as _}from"./mixins/PortalLayer.js";import{ScaleRangeLayer as A}from"./mixins/ScaleRangeLayer.js";import{SceneService as O,SaveOperationType as P}from"./mixins/SceneService.js";import{useViewTimeProperty as E}from"./mixins/TemporalLayer.js";import{TemporalSceneLayer as T}from"./mixins/TemporalSceneLayer.js";import{isHostedAgolService as x}from"./support/arcgisLayerUrl.js";import{findAssociatedFeatureService as D}from"./support/associatedFeatureServiceUtils.js";import{zeroCapabilities as U}from"./support/capabilities.js";import{elevationInfo as R,labelsVisible as q,legendEnabled as C,popupEnabled as G,attributeTableTemplate as N,screenSizePerspectiveEnabled as Q}from"./support/commonProperties.js";import{getFieldDomain as V,computeEffectiveEditingEnabled as M,getGlobalIdToObjectIdMap as k}from"./support/featureLayerUtils.js";import{FeatureReduction as K}from"./support/FeatureReduction.js";import $ from"./support/FeatureReductionSelection.js";import{defineFieldProperties as H}from"./support/fieldProperties.js";import z from"./support/FieldsIndex.js";import{fixRendererFields as W,unpackFieldNames as Z}from"./support/fieldUtils.js";import{I3SNodePageDefinition as B,I3SMaterialDefinition as J,I3STextureSetDefinition as X,I3SGeometryDefinition as Y}from"./support/I3SLayerDefinitions.js";import{isFileEditFormat as ee,isFileSupported as te}from"./support/infoFor3D.js";import re from"./support/LabelClass.js";import{reader as ie}from"./support/labelingInfo.js";import se from"./support/LayerFloorInfo.js";import{layerLookupMap as oe}from"./support/lazyLayerLoader.js";import{getMeshTransformForMetersToSpatialReference as ae}from"./support/meshSpatialReferenceScaleUtils.js";import{RangeInfo as ne}from"./support/RangeInfo.js";import le from"./support/SceneFilter.js";import{cacheIsOutOfSync as pe}from"./support/sceneLayerCacheUtils.js";import{fetchStatistics as de}from"./support/sceneLayerStatistics.js";import{loadStyleRenderer as ye}from"../renderers/support/styleUtils.js";import{webSceneRendererTypes as ue}from"../renderers/support/typeUtils.js";import ce from"../rest/support/Query.js";import{logInvalidElevationInfoWarning as he,elevationModeUnsupportedMessage as fe,featureExpressionUnsupportedMessage as me}from"../support/elevationInfoUtils.js";import{createPopupTemplate as ge}from"../support/popupUtils.js";import{extractZipFiles as ve}from"../support/zipUtils.js";import{queryAttributesFromCachedAttributesId as be}from"../views/3d/layers/i3s/I3SUtil.js";import{getRequiredFields as we,getFetchPopupTemplate as Ie}from"../views/layers/support/popupUtils.js";import{transparencyToOpacity as Le}from"../webdoc/support/opacityUtils.js";const je=new Set(["3DObject","Point"]),Fe=H();let Se=class extends(T(F(O(L(S(_(A(l(j(I(i.ClonableMixin(v)))))))))))){constructor(...e){super(...e),this.featureReduction=null,this.rangeInfos=null,this.operationalLayerType="ArcGISSceneServiceLayer",this.type="scene",this.fields=null,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}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}destroy(){this._set("renderer",null),this.associatedLayer=n(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 z(this.fields)}readNodePages(e,t,r){return"Point"===t.layerType&&(e=t.pointNodePages),null==e||"object"!=typeof e?null:B.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&&M(this.associatedLayer)}get geometryType(){return Ae[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:U;const{query:t,queryRelated:r,editing:{supportsGlobalId:i,supportsRollbackOnFailure:s,supportsUploadWithItemId:o,supportsGeometryUpdate:a,supportsReturnServiceEditsInSourceSpatialReference:n},data:{supportsZ:l,supportsM:p,isVersioned:d,supportsAttachment:y},operations:{supportsEditing:u,supportsAdd:c,supportsUpdate:h,supportsDelete:f,supportsQuery:m,supportsQueryAttachments:g,supportsAsyncConvert3D:v}}=e,b=e.operations.supportsChangeTracking,w=!!this.associatedLayer?.infoFor3D;return{query:t,queryRelated:r,editing:{supportsGlobalId:i,supportsReturnServiceEditsInSourceSpatialReference:n,supportsRollbackOnFailure:s,supportsGeometryUpdate:w&&a,supportsUploadWithItemId:o},data:{supportsAttachment:y,supportsZ:l,supportsM:p,isVersioned:d},operations:{supportsQuery:m,supportsQueryAttachments:g,supportsEditing:u&&b,supportsAdd:w&&c&&b,supportsDelete:w&&f&&b,supportsUpdate:h&&b,supportsAsyncConvert3D:v}}}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&&_e[r]?_e[r]:(a.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)}load(e){return this.addResolvingPromise(this._load(e)),Promise.resolve(this)}async _load(e){const t=null!=e?e.signal:null;await this.loadFromPortal({supportedTypes:["Scene Service"]},e).catch(p),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 ye(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){a.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 ce;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;return e}))}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 we(this,Ie(this)));return be(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}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:(a.getLogger(this).error("#getFieldUsageInfo()","Unavailable until layer is loaded"),t)}createPopupTemplate(e){return ge(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(P.SAVE_AS,{...t,getTypeKeywords:()=>this._getTypeKeywords(),portalItemLayerType:"scene"},e)}async save(){const e={getTypeKeywords:()=>this._getTypeKeywords(),portalItemLayerType:"scene"};return this._debouncedSaveOperations(P.SAVE,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 x(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)}on(e,t){return super.on(e,t)}async convertMesh(e,t){t??={};const r=e=>{throw a.getLogger(this).error(".convertMesh()",e.message),e};await this.load(),this.infoFor3D||r(new o("invalid:layer","SceneLayer has no capability for mesh conversion"));const i=await this.extractAndFilterFiles(e),s=i.reduce(((e,t)=>ee(this.infoFor3D,t)?e+1:e),0);0===s&&r(new b),s>1&&r(new w);const n=this.spatialReference,l=t.location??new g({x:0,y:0,z:0,spatialReference:n}),p=l.spatialReference.isGeographic?"local":"georeferenced",{default:d}=await import("../geometry/Mesh.js"),y=d.createWithExternalSource(l,i,{vertexSpace:p,transform:ae(l.spatialReference),unitConversionDisabled:!0}),[u]=await this.uploadAssets([y],{...t,useAssetOrigin:!t.location});return u}async extractAndFilterFiles(e){await this.load();const t=this.infoFor3D;if(!t)return e;return(await ve(e)).filter((e=>te(t,e)))}validateLayer(e){if(e.layerType&&!je.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)}_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=c(this);for(let r=0;r<e.length;r++){const i=e[r],s=this.originIdOf(i),o=this.associatedLayer.originIdOf(i);s<o&&(o===m.SERVICE||o===m.PORTAL_ITEM)&&t.setAtOrigin(i,this.associatedLayer[i],o)}}_applyAssociatedLayerExtentOverride(){const e=this.associatedLayer?.getAtOrigin("fullExtent","service");if(null==this.associatedLayer?.infoFor3D||!e||!x(this.associatedLayer?.url)||!pe(this))return;c(this).setAtOrigin("fullExtent",e.clone(),m.SERVICE)}_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 oe.FeatureLayer();this.associatedLayer=new s({url:t,customParameters:this.customParameters,layerId:r,portalItem:i}),await this.associatedLayer.load()}catch(t){d(t)||this._logWarningOnPopupEnabled()}}async _logWarningOnPopupEnabled(){await y((()=>this.popupEnabled&&null!=this.popupTemplate));const e=`this SceneLayer: ${this.title}`;null==this.attributeStorageInfo?a.getLogger(this).warn(`Associated FeatureLayer could not be loaded and no binary attributes found. Popups will not work on ${e}`):a.getLogger(this).info(`Associated FeatureLayer could not be loaded. Falling back to binary attributes for Popups on ${e}`)}_validateElevationInfo(){const e=this.elevationInfo;"mesh-pyramids"===this.profile&&he(a.getLogger(this),fe("Mesh scene layers","relative-to-scene",e)),he(a.getLogger(this),me("Scene layers",e))}async fetchStatistics(e,t){return await de({fieldName:e,statisticsInfo:this.statisticsInfo,errorContext:"scenelayer",fieldsIndex:this.fieldsIndex,path:this.parsedUrl?.path??"",customParameters:this.customParameters,apiKey:this.apiKey,signal:t?.signal})}};e([u({types:{key:"type",base:K,typeMap:{selection:$}},json:{origins:{"web-scene":{name:"layerDefinition.featureReduction",write:!0},"portal-item":{name:"layerDefinition.featureReduction",write:!0}}}})],Se.prototype,"featureReduction",void 0),e([u({type:[ne],json:{read:!1,origins:{"web-scene":{name:"layerDefinition.rangeInfos",write:!0},"portal-item":{name:"layerDefinition.rangeInfos",write:!0}}}})],Se.prototype,"rangeInfos",void 0),e([u({json:{read:!1}})],Se.prototype,"associatedLayer",void 0),e([u({type:["show","hide"]})],Se.prototype,"listMode",void 0),e([u({type:["ArcGISSceneServiceLayer"]})],Se.prototype,"operationalLayerType",void 0),e([u({json:{read:!1},readOnly:!0})],Se.prototype,"type",void 0),e([u({...Fe.fields,readOnly:!0,json:{read:!1,origins:{service:{read:!0}}}})],Se.prototype,"fields",void 0),e([u()],Se.prototype,"types",null),e([u()],Se.prototype,"typeIdField",null),e([u()],Se.prototype,"templates",null),e([u()],Se.prototype,"formTemplate",null),e([u({readOnly:!0,clonable:!1})],Se.prototype,"fieldsIndex",null),e([u({type:se,json:{read:{source:"layerDefinition.floorInfo"},write:{target:"layerDefinition.floorInfo"}}})],Se.prototype,"floorInfo",void 0),e([u(Fe.outFields)],Se.prototype,"outFields",void 0),e([u({type:B,readOnly:!0,json:{read:!1}})],Se.prototype,"nodePages",void 0),e([h("service","nodePages",["nodePages","pointNodePages"])],Se.prototype,"readNodePages",null),e([u({type:[J],readOnly:!0})],Se.prototype,"materialDefinitions",void 0),e([u({type:[X],readOnly:!0})],Se.prototype,"textureSetDefinitions",void 0),e([u({type:[Y],readOnly:!0})],Se.prototype,"geometryDefinitions",void 0),e([u({readOnly:!0})],Se.prototype,"serviceUpdateTimeStamp",void 0),e([u({readOnly:!0})],Se.prototype,"attributeStorageInfo",void 0),e([u({readOnly:!0})],Se.prototype,"statisticsInfo",void 0),e([u({type:s.ofType(Number),nonNullable:!0,json:{origins:{service:{read:!1,write:!1}},name:"layerDefinition.excludeObjectIds",write:{enabled:!0}}})],Se.prototype,"excludeObjectIds",void 0),e([u({type:String,json:{origins:{service:{read:!1,write:!1}},name:"layerDefinition.definitionExpression",write:{enabled:!0,allowNull:!0}}})],Se.prototype,"definitionExpression",void 0),e([u({type:le,json:{name:"layerDefinition.polygonFilter",write:{enabled:!0,allowNull:!0},origins:{service:{read:!1,write:!1}}}})],Se.prototype,"filter",void 0),e([u({type:String,json:{origins:{"web-scene":{read:!0,write:!0}},read:!1}})],Se.prototype,"path",void 0),e([u(R)],Se.prototype,"elevationInfo",null),e([u({readOnly:!0,json:{read:!1}})],Se.prototype,"effectiveCapabilities",null),e([u({readOnly:!0})],Se.prototype,"effectiveEditingEnabled",null),e([u({type:String})],Se.prototype,"geometryType",null),e([u(q)],Se.prototype,"labelsVisible",void 0),e([u({type:[re],json:{origins:{service:{name:"drawingInfo.labelingInfo",read:{reader:ie},write:!1}},name:"layerDefinition.drawingInfo.labelingInfo",read:{reader:ie},write:!0}})],Se.prototype,"labelingInfo",void 0),e([u(C)],Se.prototype,"legendEnabled",void 0),e([u({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?Le(r):void 0}}},"portal-item":{write:!0},service:{read:!1}}}})],Se.prototype,"opacity",void 0),e([u({type:["Low","High"],readOnly:!0,json:{read:!1,origins:{service:{read:!0}}}})],Se.prototype,"priority",void 0),e([u({type:["Labels"],readOnly:!0,json:{read:!1,origins:{service:{read:!0}}}})],Se.prototype,"semantic",void 0),e([u({types:ue,json:{origins:{service:{read:{source:"drawingInfo.renderer"}}},name:"layerDefinition.drawingInfo.renderer",write:!0},value:null})],Se.prototype,"renderer",null),e([u({json:{read:!1}})],Se.prototype,"cachedDrawingInfo",void 0),e([h("service","cachedDrawingInfo")],Se.prototype,"readCachedDrawingInfo",null),e([u({readOnly:!0,json:{read:!1}})],Se.prototype,"capabilities",null),e([u({type:Boolean,json:{read:!1}})],Se.prototype,"editingEnabled",null),e([u({readOnly:!0,json:{write:!1,read:!1}})],Se.prototype,"infoFor3D",null),e([u({readOnly:!0,json:{write:!1,read:!1}})],Se.prototype,"relationships",null),e([u(G)],Se.prototype,"popupEnabled",void 0),e([u({type:r,json:{name:"popupInfo",write:!0}})],Se.prototype,"popupTemplate",void 0),e([u({readOnly:!0,json:{read:!1}})],Se.prototype,"defaultPopupTemplate",null),e([u(N)],Se.prototype,"attributeTableTemplate",void 0),e([u({type:String,json:{read:!1}})],Se.prototype,"objectIdField",void 0),e([h("service","objectIdField",["objectIdField","fields"])],Se.prototype,"readObjectIdField",null),e([u({type:String,json:{read:!1}})],Se.prototype,"globalIdField",void 0),e([h("service","globalIdField",["globalIdField","fields"])],Se.prototype,"readGlobalIdField",null),e([u({readOnly:!0,type:String,json:{read:!1}})],Se.prototype,"displayField",null),e([u({type:String,json:{read:!1}})],Se.prototype,"profile",void 0),e([h("service","profile",["store.profile"])],Se.prototype,"readProfile",null),e([u({readOnly:!0,type:String,json:{origins:{service:{read:{source:"store.normalReferenceFrame"}}},read:!1}})],Se.prototype,"normalReferenceFrame",void 0),e([u(Q)],Se.prototype,"screenSizePerspectiveEnabled",void 0),e([u({json:{read:!1,origins:{service:{read:!0}}}})],Se.prototype,"serviceItemId",void 0),e([u(E)],Se.prototype,"useViewTime",null),Se=e([f("esri.layers.SceneLayer")],Se);const _e={"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"},Ae={"mesh-pyramids":"mesh",points:"point"},Oe=Se;export{Oe as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.33/esri/copyright.txt for details.
4
4
  */
5
- import{createTask as e}from"../../../core/asyncUtils.js";import t from"../../../core/Error.js";import r from"../../../core/Logger.js";import{throwIfAborted as a,isAbortError as s}from"../../../core/promiseUtils.js";import o from"../../../core/Warning.js";import{equals as n}from"../../../geometry/support/spatialReferenceUtils.js";import{convertFromGeometry as i,convertToGeometry as u}from"../featureConversionUtils.js";import{executeQueryForSnapping as l}from"../data/executeQueryForSnapping.js";import h from"../data/FeatureStore.js";import{checkProjectionSupport as c,project as m}from"../data/projectionSupport.js";import{QueryEngine as p}from"../data/QueryEngine.js";import{validateGeoJSON as g,createOptimizedFeatures as d}from"./geojson/geojson.js";import{mixAttributes as f}from"./support/sourceUtils.js";import{getGetFeatureSpatialReference as y,getFeatureCount as _,getFeature as x}from"../../ogc/wfsUtils.js";import w from"../../support/FieldsIndex.js";import{isNumber as C}from"../../../support/guards.js";import{utc as R}from"../../../time/constants.js";const F="esri.layers.WFSLayer";class S{constructor(){this._customParameters=null,this._queryEngine=null,this._supportsPagination=!0}destroy(){this._queryEngine?.destroy(),this._queryEngine=null}async load(e,r={}){const{getFeatureUrl:s,getFeatureOutputFormat:o,fields:n,geometryType:i,featureType:u,maxRecordCount:l,maxTotalRecordCount:m,maxPageCount:g,objectIdField:d,customParameters:f}=e,{spatialReference:_,getFeatureSpatialReference:x}=y(s,u,e.spatialReference);try{await c(x,_)}catch{throw new t("unsupported-projection","Projection not supported",{inSpatialReference:x,outSpatialReference:_})}a(r),this._customParameters=f,this._featureType=u,this._fieldsIndex=w.fromLayerJSON({fields:n,dateFieldsTimeReference:n.some((e=>"esriFieldTypeDate"===e.type))?{timeZoneIANA:R}:null}),this._geometryType=i,this._getFeatureUrl=s,this._getFeatureOutputFormat=o,this._getFeatureSpatialReference=x,this._maxRecordCount=l,this._maxTotalRecordCount=m,this._maxPageCount=g,this._objectIdField=d,this._spatialReference=_;let C=await this._snapshotFeatures(r);if(C.errors.length>0&&(this._supportsPagination=!1,C=await this._snapshotFeatures(r),C.errors.length>0))throw C.errors[0];return this._queryEngine=new p({fieldsIndex:this._fieldsIndex,geometryType:i,hasM:!1,hasZ:!1,objectIdField:d,spatialReference:_,timeInfo:null,featureStore:new h({geometryType:i,hasM:!1,hasZ:!1})}),this._queryEngine.featureStore.addMany(C.features),{warnings:E(C),extent:(await this._queryEngine.fetchRecomputedExtents()).fullExtent}}async applyEdits(){throw new t("wfs-source:editing-not-supported","applyEdits() is not supported on WFSLayer")}async queryFeatures(e={},t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeQuery(e,t.signal)}async queryFeatureCount(e={},t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeQueryForCount(e,t.signal)}async queryObjectIds(e={},t={}){await this._waitSnapshotComplete();return(await this._queryEngine.executeQueryForIds(e,t.signal)).filter(C)}async queryExtent(e={},t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeQueryForExtent(e,t.signal)}async querySnapping(e,t={}){return await this._waitSnapshotComplete(),l(this._queryEngine,e,t.signal)}async queryAttributeBins(e,t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeAttributeBinsQuery(e,t.signal)}async refresh(t){return this._customParameters=t.customParameters,this._maxRecordCount=t.maxRecordCount,this._maxTotalRecordCount=t.maxTotalRecordCount,this._maxPageCount=t.maxPageCount,this._snapshotTask?.abort(),this._snapshotTask=e((e=>this._snapshotFeatures({signal:e}))),this._snapshotTask.promise.then((e=>{this._queryEngine.featureStore.clear(),this._queryEngine.featureStore.addMany(e.features);for(const t of E(e))r.getLogger(F).warn(new o("wfs-layer:refresh-warning",t.message,t.details));e.errors?.length&&r.getLogger(F).warn(new o("wfs-layer:refresh-error","Refresh completed with errors",{errors:e.errors}))}),(()=>{this._queryEngine.featureStore.clear()})),await this._waitSnapshotComplete(),{extent:(await this._queryEngine.fetchRecomputedExtents()).fullExtent}}async _waitSnapshotComplete(){if(this._snapshotTask&&!this._snapshotTask.finished){try{await this._snapshotTask.promise}catch{}return this._waitSnapshotComplete()}}async _snapshotFeatures(e){const t=e?.signal,r=this._maxTotalRecordCount,o=this._maxPageCount,n=this._supportsPagination?await _(this._getFeatureUrl,this._featureType.typeName,{customParameters:this._customParameters,signal:t}):void 0;let i=[];const u=[];if(null==n)try{i=await this._singleQuery(t)}catch(l){s(l)||u.push(l)}else{const e=Math.min(n,r),a=T(this,Math.max(1,Math.min(Math.ceil(e/this._maxRecordCount),o)),t);await Promise.allSettled(Array.from({length:10}).map((()=>j(a,i,u))))}return a(t),{features:i,totalRecordCount:n,maxTotalRecordCount:r,maxPageCount:o,errors:u}}async _singleQuery(e){const t=await x(this._getFeatureUrl,this._featureType.typeName,this._getFeatureSpatialReference,this._getFeatureOutputFormat,{customParameters:this._customParameters,signal:e});return this._processGeoJSON(t,{signal:e})}async _pageQuery(e,t){const r=e*this._maxRecordCount,a=await x(this._getFeatureUrl,this._featureType.typeName,this._getFeatureSpatialReference,this._getFeatureOutputFormat,{customParameters:this._customParameters,startIndex:r,count:this._maxRecordCount,signal:t});return this._processGeoJSON(a,{startIndex:r,signal:t})}_processGeoJSON(e,t){g(e,this._getFeatureSpatialReference.wkid);const{startIndex:r,signal:s}=t;a(s);const o=d(e,{geometryType:this._geometryType,hasZ:!1,objectIdField:this._objectIdField});if(!n(this._spatialReference,this._getFeatureSpatialReference))for(const a of o)null!=a.geometry&&(a.geometry=i(m(u(a.geometry,this._geometryType,!1,!1),this._getFeatureSpatialReference,this._spatialReference)));let l=r??1;for(const a of o){const e={};f(this._fieldsIndex,e,a.attributes,!0),a.attributes=e,null==e[this._objectIdField]&&(a.objectId=e[this._objectIdField]=l++)}return o}}function*T(e,t,r){for(let a=0;a<t;a++)yield e._pageQuery(a,r)}async function j(e,t,r){let a=e.next();for(;!a.done;){try{const e=await a.value;t.push(...e)}catch(o){s(o)||r.push(o)}a=e.next()}}function E(e){const t=[];return null!=e.totalRecordCount&&(e.features.length<e.totalRecordCount&&t.push({name:"wfs-layer:maxRecordCount-too-low",message:`Could only fetch ${e.features.length} of ${e.totalRecordCount} in ${e.maxPageCount} queries. Try increasing the value of WFSLayer.maxRecordCount.`,details:{recordCount:e.features.length,totalRecordCount:e.totalRecordCount}}),e.totalRecordCount>e.maxTotalRecordCount&&t.push({name:"wfs-layer:large-dataset",message:`The number of ${e.totalRecordCount} features exceeds the maximum allowed of ${e.maxTotalRecordCount}.`,details:{recordCount:e.features.length,totalRecordCount:e.totalRecordCount,maxTotalRecordCount:e.maxTotalRecordCount}})),t}export{S as default};
5
+ import{createTask as e}from"../../../core/asyncUtils.js";import t from"../../../core/Error.js";import r from"../../../core/Logger.js";import{clamp as a}from"../../../core/mathUtils.js";import{throwIfAborted as s,isAbortError as o}from"../../../core/promiseUtils.js";import n from"../../../core/Warning.js";import{equals as i}from"../../../geometry/support/spatialReferenceUtils.js";import{convertFromGeometry as u,convertToGeometry as l}from"../featureConversionUtils.js";import{executeQueryForSnapping as c}from"../data/executeQueryForSnapping.js";import h from"../data/FeatureStore.js";import{checkProjectionSupport as m,project as p}from"../data/projectionSupport.js";import{QueryEngine as d}from"../data/QueryEngine.js";import{validateGeoJSON as g,createOptimizedFeatures as f}from"./geojson/geojson.js";import{mixAttributes as y}from"./support/sourceUtils.js";import{getGetFeatureSpatialReference as _,getFeatureCount as x,getFeature as C}from"../../ogc/wfsUtils.js";import w from"../../support/FieldsIndex.js";import{isNumber as R}from"../../../support/guards.js";import{utc as F}from"../../../time/constants.js";const S="esri.layers.WFSLayer";class j{constructor(){this._customParameters=null,this._queryEngine=null,this._supportsPagination=!0}destroy(){this._queryEngine?.destroy(),this._queryEngine=null}async load(e,r={}){const{getFeatureUrl:a,getFeatureOutputFormat:o,fields:n,geometryType:i,featureType:u,maxRecordCount:l,maxTotalRecordCount:c,maxPageCount:p,objectIdField:g,customParameters:f}=e,{spatialReference:y,getFeatureSpatialReference:x}=_(a,u,e.spatialReference);try{await m(x,y)}catch{throw new t("unsupported-projection","Projection not supported",{inSpatialReference:x,outSpatialReference:y})}s(r),this._customParameters=f,this._featureType=u,this._fieldsIndex=w.fromLayerJSON({fields:n,dateFieldsTimeReference:n.some((e=>"esriFieldTypeDate"===e.type))?{timeZoneIANA:F}:null}),this._geometryType=i,this._getFeatureUrl=a,this._getFeatureOutputFormat=o,this._getFeatureSpatialReference=x,this._maxRecordCount=l,this._maxTotalRecordCount=c,this._maxPageCount=p,this._objectIdField=g,this._spatialReference=y;let C=await this._snapshotFeatures(r);if(C.errors.length>0&&(this._supportsPagination=!1,C=await this._snapshotFeatures(r),C.errors.length>0))throw C.errors[0];return this._queryEngine=new d({fieldsIndex:this._fieldsIndex,geometryType:i,hasM:!1,hasZ:!1,objectIdField:g,spatialReference:y,timeInfo:null,featureStore:new h({geometryType:i,hasM:!1,hasZ:!1})}),this._queryEngine.featureStore.addMany(C.features),{warnings:q(C),extent:(await this._queryEngine.fetchRecomputedExtents()).fullExtent}}async applyEdits(){throw new t("wfs-source:editing-not-supported","applyEdits() is not supported on WFSLayer")}async queryFeatures(e={},t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeQuery(e,t.signal)}async queryFeatureCount(e={},t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeQueryForCount(e,t.signal)}async queryObjectIds(e={},t={}){await this._waitSnapshotComplete();return(await this._queryEngine.executeQueryForIds(e,t.signal)).filter(R)}async queryExtent(e={},t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeQueryForExtent(e,t.signal)}async querySnapping(e,t={}){return await this._waitSnapshotComplete(),c(this._queryEngine,e,t.signal)}async queryAttributeBins(e,t={}){return await this._waitSnapshotComplete(),this._queryEngine.executeAttributeBinsQuery(e,t.signal)}async refresh(t){return this._customParameters=t.customParameters,this._maxRecordCount=t.maxRecordCount,this._maxTotalRecordCount=t.maxTotalRecordCount,this._maxPageCount=t.maxPageCount,this._snapshotTask?.abort(),this._snapshotTask=e((e=>this._snapshotFeatures({signal:e}))),this._snapshotTask.promise.then((e=>{this._queryEngine.featureStore.clear(),this._queryEngine.featureStore.addMany(e.features);for(const t of q(e))r.getLogger(S).warn(new n("wfs-layer:refresh-warning",t.message,t.details));e.errors?.length&&r.getLogger(S).warn(new n("wfs-layer:refresh-error","Refresh completed with errors",{errors:e.errors}))}),(()=>{this._queryEngine.featureStore.clear()})),await this._waitSnapshotComplete(),{extent:(await this._queryEngine.fetchRecomputedExtents()).fullExtent}}async _waitSnapshotComplete(){if(this._snapshotTask&&!this._snapshotTask.finished){try{await this._snapshotTask.promise}catch{}return this._waitSnapshotComplete()}}async _snapshotFeatures(e){const t=e?.signal,r=this._maxTotalRecordCount,n=this._maxPageCount,i=this._supportsPagination&&n>1?await x(this._getFeatureUrl,this._featureType.typeName,{customParameters:this._customParameters,signal:t}):void 0;let u=[];const l=[];if(null==i)try{u=await this._singleQuery(t)}catch(c){o(c)||l.push(c)}else{const e=Math.min(i,r),s=T(this,a(Math.ceil(e/this._maxRecordCount),1,n),t);await Promise.allSettled(Array.from({length:10}).map((()=>E(s,u,l))))}return s(t),{features:u,totalRecordCount:i,maxTotalRecordCount:r,maxPageCount:n,errors:l}}async _singleQuery(e){const t=Number.isFinite(this._maxRecordCount)&&this._maxRecordCount>0?this._maxRecordCount:void 0,r=await C(this._getFeatureUrl,this._featureType.typeName,this._getFeatureSpatialReference,this._getFeatureOutputFormat,{customParameters:this._customParameters,count:t,signal:e});return this._processGeoJSON(r,{signal:e})}async _pageQuery(e,t){const r=e*this._maxRecordCount,a=await C(this._getFeatureUrl,this._featureType.typeName,this._getFeatureSpatialReference,this._getFeatureOutputFormat,{customParameters:this._customParameters,startIndex:r,count:this._maxRecordCount,signal:t});return this._processGeoJSON(a,{startIndex:r,signal:t})}_processGeoJSON(e,t){g(e,this._getFeatureSpatialReference.wkid);const{startIndex:r,signal:a}=t;s(a);const o=f(e,{geometryType:this._geometryType,hasZ:!1,objectIdField:this._objectIdField});if(!i(this._spatialReference,this._getFeatureSpatialReference))for(const s of o)null!=s.geometry&&(s.geometry=u(p(l(s.geometry,this._geometryType,!1,!1),this._getFeatureSpatialReference,this._spatialReference)));let n=r??1;for(const s of o){const e={};y(this._fieldsIndex,e,s.attributes,!0),s.attributes=e,null==e[this._objectIdField]&&(s.objectId=e[this._objectIdField]=n++)}return o}}function*T(e,t,r){for(let a=0;a<t;a++)yield e._pageQuery(a,r)}async function E(e,t,r){let a=e.next();for(;!a.done;){try{const e=await a.value;t.push(...e)}catch(s){o(s)||r.push(s)}a=e.next()}}function q(e){const t=[];return null!=e.totalRecordCount&&(e.features.length<e.totalRecordCount&&t.push({name:"wfs-layer:maxRecordCount-too-low",message:`Could only fetch ${e.features.length} of ${e.totalRecordCount} in ${e.maxPageCount} queries. Try increasing the value of WFSLayer.maxRecordCount.`,details:{recordCount:e.features.length,totalRecordCount:e.totalRecordCount}}),e.totalRecordCount>e.maxTotalRecordCount&&t.push({name:"wfs-layer:large-dataset",message:`The number of ${e.totalRecordCount} features exceeds the maximum allowed of ${e.maxTotalRecordCount}.`,details:{recordCount:e.features.length,totalRecordCount:e.totalRecordCount,maxTotalRecordCount:e.maxTotalRecordCount}})),t}export{j as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.33/esri/copyright.txt for details.
4
4
  */
5
- import r from"../../geometry/Extent.js";import e from"../../geometry/Point.js";import t from"../../geometry/support/GeographicTransformation.js";import s from"./PixelBlock.js";import{decode as o}from"./rasterFormats/RasterCodec.js";import{split as i,clipTile as n,mosaic as a,approximateTransform as l,getLocalArithmeticNorthRotations as m}from"./rasterFunctions/pixelUtils.js";import{create as c}from"./rasterFunctions/rasterFunctionHelper.js";import{requirePE as f,load as p,getProjectionOffsetGrid as u}from"./rasterFunctions/rasterProjectionHelper.js";import{computeStatisticsHistograms as S,estimateStatisticsHistograms as d}from"./rasterFunctions/stretchUtils.js";import{convertVectorFieldData as x,convertToLocalDirections as y}from"./rasterFunctions/vectorFieldUtils.js";import{readTransform as O}from"./rasterTransforms/utils.js";import h from"../../renderers/support/RasterSymbolizer.js";import{createFlowMesh as N}from"../../views/2d/engine/flow/dataUtils.js";class J{convertVectorFieldData(r){const e=s.fromJSON(r.pixelBlock),t=x(e,r.type);return Promise.resolve(null!=t?t.toJSON():null)}computeStatisticsHistograms(r){const e=s.fromJSON(r.pixelBlock),t=S(e);return Promise.resolve(t)}async decode(r){const e=await o(r.data,r.options);return e&&e.toJSON()}symbolize(e){e.pixelBlock=s.fromJSON(e.pixelBlock),e.extent=e.extent?r.fromJSON(e.extent):null;const t=this.symbolizer.symbolize(e);return Promise.resolve(null!=t?t.toJSON():null)}async updateSymbolizer(r){this.symbolizer=h.fromJSON(r.symbolizerJSON),r.histograms&&"rasterStretch"===this.symbolizer?.rendererJSON.type&&(this.symbolizer.rendererJSON.histograms=r.histograms)}async updateRasterFunction(r){this.rasterFunction=c(r.rasterFunctionJSON)}async process(t){const o=this.rasterFunction.process({extent:r.fromJSON(t.extent),primaryPixelBlocks:t.primaryPixelBlocks.map((r=>null!=r?s.fromJSON(r):null)),primaryPixelSizes:t.primaryPixelSizes?.map((r=>null!=r?e.fromJSON(r):null)),primaryRasterIds:t.primaryRasterIds});return null!=o?o.toJSON():null}stretch(r){const e=this.symbolizer.simpleStretch(s.fromJSON(r.srcPixelBlock),r.stretchParams);return Promise.resolve(e?.toJSON())}estimateStatisticsHistograms(r){const e=d(s.fromJSON(r.srcPixelBlock));return Promise.resolve(e)}split(r){const e=i(s.fromJSON(r.srcPixelBlock),r.tileSize,r.maximumPyramidLevel??0,!1===r.useBilinear);return e&&e.forEach(((r,t)=>{e.set(t,r?.toJSON())})),Promise.resolve(e)}clipTile(r){const e=s.fromJSON(r.pixelBlock),t=n({...r,pixelBlock:e});return Promise.resolve(t?.toJSON())}async mosaicAndTransform(r){const e=r.srcPixelBlocks.map((r=>r?new s(r):null)),t=a(e,r.srcMosaicSize,{blockWidths:r.blockWidths,alignmentInfo:r.alignmentInfo,clipOffset:r.clipOffset,clipSize:r.clipSize});let o,i=t;return r.coefs&&(i=l(t,r.destDimension,r.coefs,r.sampleSpacing,r.interpolation)),r.projectDirections&&r.gcsGrid&&(o=m(r.destDimension,r.gcsGrid),i=y(i,r.isUV?"vector-uv":"vector-magdir",o)),{pixelBlock:i?.toJSON(),localNorthDirections:o}}async createFlowMesh(r,e){const t={data:new Float32Array(r.flowData.buffer),mask:new Uint8Array(r.flowData.maskBuffer),width:r.flowData.width,height:r.flowData.height},{vertexData:s,indexData:o}=await N(r.meshType,r.simulationSettings,t,e.signal);return{result:{vertexBuffer:s.buffer,indexBuffer:o.buffer},transferList:[s.buffer,o.buffer]}}async getProjectionOffsetGrid(e){const s=r.fromJSON(e.projectedExtent),o=r.fromJSON(e.srcBufferExtent);let i=null;e.datumTransformationSteps&&(i=new t({steps:e.datumTransformationSteps})),(e.includeGCSGrid||f(s.spatialReference,o.spatialReference,i))&&await p();const n=e.rasterTransform?O(e.rasterTransform):null;return u({...e,projectedExtent:s,srcBufferExtent:o,datumTransformation:i,rasterTransform:n})}}export{J as default};
5
+ import r from"../../geometry/Extent.js";import e from"../../geometry/Point.js";import t from"../../geometry/operators/support/GeographicTransformation.js";import s from"./PixelBlock.js";import{decode as o}from"./rasterFormats/RasterCodec.js";import{split as i,clipTile as n,mosaic as a,approximateTransform as l,getLocalArithmeticNorthRotations as m}from"./rasterFunctions/pixelUtils.js";import{create as c}from"./rasterFunctions/rasterFunctionHelper.js";import{load as f,getProjectionOffsetGrid as p}from"./rasterFunctions/rasterProjectionHelper.js";import{computeStatisticsHistograms as u,estimateStatisticsHistograms as S}from"./rasterFunctions/stretchUtils.js";import{convertVectorFieldData as d,convertToLocalDirections as x}from"./rasterFunctions/vectorFieldUtils.js";import{readTransform as y}from"./rasterTransforms/utils.js";import h from"../../renderers/support/RasterSymbolizer.js";import{createFlowMesh as O}from"../../views/2d/engine/flow/dataUtils.js";class N{convertVectorFieldData(r){const e=s.fromJSON(r.pixelBlock),t=d(e,r.type);return Promise.resolve(null!=t?t.toJSON():null)}computeStatisticsHistograms(r){const e=s.fromJSON(r.pixelBlock),t=u(e);return Promise.resolve(t)}async decode(r){const e=await o(r.data,r.options);return e&&e.toJSON()}symbolize(e){e.pixelBlock=s.fromJSON(e.pixelBlock),e.extent=e.extent?r.fromJSON(e.extent):null;const t=this.symbolizer.symbolize(e);return Promise.resolve(null!=t?t.toJSON():null)}async updateSymbolizer(r){this.symbolizer=h.fromJSON(r.symbolizerJSON),r.histograms&&"rasterStretch"===this.symbolizer?.rendererJSON.type&&(this.symbolizer.rendererJSON.histograms=r.histograms)}async updateRasterFunction(r){this.rasterFunction=c(r.rasterFunctionJSON)}async process(t){const o=this.rasterFunction.process({extent:r.fromJSON(t.extent),primaryPixelBlocks:t.primaryPixelBlocks.map((r=>null!=r?s.fromJSON(r):null)),primaryPixelSizes:t.primaryPixelSizes?.map((r=>null!=r?e.fromJSON(r):null)),primaryRasterIds:t.primaryRasterIds});return null!=o?o.toJSON():null}stretch(r){const e=this.symbolizer.simpleStretch(s.fromJSON(r.srcPixelBlock),r.stretchParams);return Promise.resolve(e?.toJSON())}estimateStatisticsHistograms(r){const e=S(s.fromJSON(r.srcPixelBlock));return Promise.resolve(e)}split(r){const e=i(s.fromJSON(r.srcPixelBlock),r.tileSize,r.maximumPyramidLevel??0,!1===r.useBilinear);return e&&e.forEach(((r,t)=>{e.set(t,r?.toJSON())})),Promise.resolve(e)}clipTile(r){const e=s.fromJSON(r.pixelBlock),t=n({...r,pixelBlock:e});return Promise.resolve(t?.toJSON())}async mosaicAndTransform(r){const e=r.srcPixelBlocks.map((r=>r?new s(r):null)),t=a(e,r.srcMosaicSize,{blockWidths:r.blockWidths,alignmentInfo:r.alignmentInfo,clipOffset:r.clipOffset,clipSize:r.clipSize});let o,i=t;return r.coefs&&(i=l(t,r.destDimension,r.coefs,r.sampleSpacing,r.interpolation)),r.projectDirections&&r.gcsGrid&&(o=m(r.destDimension,r.gcsGrid),i=x(i,r.isUV?"vector-uv":"vector-magdir",o)),{pixelBlock:i?.toJSON(),localNorthDirections:o}}async createFlowMesh(r,e){const t={data:new Float32Array(r.flowData.buffer),mask:new Uint8Array(r.flowData.maskBuffer),width:r.flowData.width,height:r.flowData.height},{vertexData:s,indexData:o}=await O(r.meshType,r.simulationSettings,t,e.signal);return{result:{vertexBuffer:s.buffer,indexBuffer:o.buffer},transferList:[s.buffer,o.buffer]}}async getProjectionOffsetGrid(e){const s=r.fromJSON(e.projectedExtent),o=r.fromJSON(e.srcBufferExtent);let i=null;e.datumTransformationSteps?.length&&(i=new t({steps:e.datumTransformationSteps})),await f();const n=e.rasterTransform?y(e.rasterTransform):null;return p({...e,projectedExtent:s,srcBufferExtent:o,datumTransformation:i,rasterTransform:n})}}export{N as default};