@arcgis/core 5.2.0-next.7 → 5.2.0-next.9

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 (489) hide show
  1. package/applications/SceneViewer/layerUtils.d.ts +9 -1
  2. package/applications/SceneViewer/layerUtils.js +1 -1
  3. package/arcgisGlobal.d.ts +4 -0
  4. package/assets/esri/core/workers/RemoteClient.js +1 -1
  5. package/assets/esri/core/workers/chunks/07cc5743cb6a9fd68adb.js +1 -0
  6. package/assets/esri/core/workers/chunks/0cbd7f5fe24271942abd.js +1 -0
  7. package/assets/esri/core/workers/chunks/0ecc1bc1686844cdd60e.js +1 -0
  8. package/assets/esri/core/workers/chunks/0f75c19d8e296a32e329.js +1 -0
  9. package/assets/esri/core/workers/chunks/174cc2e69e5b5a13d880.js +1 -0
  10. package/assets/esri/core/workers/chunks/18f980465db5a86153d1.js +1 -0
  11. package/assets/esri/core/workers/chunks/1996f0a930abdd97b855.js +1 -0
  12. package/assets/esri/core/workers/chunks/1c8436b27a3d3cde5cfc.js +1 -0
  13. package/assets/esri/core/workers/chunks/1cb1f125dccbf8c8cac9.js +1 -0
  14. package/assets/esri/core/workers/chunks/1dd06335bb2d35c66339.js +1 -0
  15. package/assets/esri/core/workers/chunks/1f289aa69dd6b6be534a.js +1 -0
  16. package/assets/esri/core/workers/chunks/2185e8a52c5e29d46680.js +1 -0
  17. package/assets/esri/core/workers/chunks/{da29cf0e64065631a470.js → 24810c36ae09bb4e83dc.js} +1 -1
  18. package/assets/esri/core/workers/chunks/26583db2af1a1cc456e5.js +1 -0
  19. package/assets/esri/core/workers/chunks/274b82cb183ddd0042f3.js +1 -0
  20. package/assets/esri/core/workers/chunks/27c6def22c2b0791ce9e.js +1 -0
  21. package/assets/esri/core/workers/chunks/2d2895f1fdf44d212a4d.js +1 -0
  22. package/assets/esri/core/workers/chunks/2dbc2fd0f2dde505c465.js +1 -0
  23. package/assets/esri/core/workers/chunks/2dbcdfdf000226bfe746.js +1 -0
  24. package/assets/esri/core/workers/chunks/2e6382d50bf012064eae.js +1 -0
  25. package/assets/esri/core/workers/chunks/30f1909c5ef1835b8507.js +1 -0
  26. package/assets/esri/core/workers/chunks/31918a0d9886dedf385f.js +1 -0
  27. package/assets/esri/core/workers/chunks/{1c029b03ed836f393a50.js → 3248001d9dfb9153699e.js} +1 -1
  28. package/assets/esri/core/workers/chunks/3297658ccd8d4b9ce733.js +1 -0
  29. package/assets/esri/core/workers/chunks/{716a4d7e8b908b81870b.js → 32f26757e36704923286.js} +1 -1
  30. package/assets/esri/core/workers/chunks/3529afab0c2444275d91.js +1 -0
  31. package/assets/esri/core/workers/chunks/36dac6ab51d9dbdd091d.js +1 -0
  32. package/assets/esri/core/workers/chunks/390fda094fa8695d98cf.js +1 -0
  33. package/assets/esri/core/workers/chunks/39596715e84d0da2f803.js +30 -0
  34. package/assets/esri/core/workers/chunks/398eb3100a282e4736bb.js +1 -0
  35. package/assets/esri/core/workers/chunks/3b3f91a61e3f29af1fb2.js +1 -0
  36. package/assets/esri/core/workers/chunks/{f815106d439ff1f76e51.js → 3b837b512999e6ab24bc.js} +1 -1
  37. package/assets/esri/core/workers/chunks/3d20c86f1fe877bf884b.js +1 -0
  38. package/assets/esri/core/workers/chunks/3dc5fbecc427df1fd827.js +1 -0
  39. package/assets/esri/core/workers/chunks/3e65b4b18760bde8ceee.js +1 -0
  40. package/assets/esri/core/workers/chunks/3ff7aa216cd794d951e8.js +1 -0
  41. package/assets/esri/core/workers/chunks/{8e1865392681d390ab2e.js → 401ee7fa500adad77db1.js} +1 -1
  42. package/assets/esri/core/workers/chunks/{60915a3708a34da1977e.js → 426156137f279d979ddd.js} +1 -1
  43. package/assets/esri/core/workers/chunks/434c1dd3f48e6f0802fc.js +1 -0
  44. package/assets/esri/core/workers/chunks/4517630bf869205bab87.js +1 -0
  45. package/assets/esri/core/workers/chunks/48f1c3a7c9f16d6896f6.js +1 -0
  46. package/assets/esri/core/workers/chunks/{cfd28eba44cf5a296c6d.js → 49308bdc36373555f1af.js} +1 -1
  47. package/assets/esri/core/workers/chunks/{09d0e430c66788a2626f.js → 4a20f7a0700fd14a129f.js} +1 -1
  48. package/assets/esri/core/workers/chunks/5075e85e1eafd431a8c0.js +1 -0
  49. package/assets/esri/core/workers/chunks/5121768c70f1e03b685c.js +1 -0
  50. package/assets/esri/core/workers/chunks/5201105ca11a2d450460.js +1 -0
  51. package/assets/esri/core/workers/chunks/528ed0bd8dc149ead023.js +1 -0
  52. package/assets/esri/core/workers/chunks/52f354bf80ee5ab0379a.js +1 -0
  53. package/assets/esri/core/workers/chunks/538537f9bc866d9caa75.js +1 -0
  54. package/assets/esri/core/workers/chunks/58a7cdebc3d182c15ec6.js +1 -0
  55. package/assets/esri/core/workers/chunks/58ac245ff7fb57c1004f.js +1 -0
  56. package/assets/esri/core/workers/chunks/58acc18b92533166135d.js +1 -0
  57. package/assets/esri/core/workers/chunks/597aa39cdb5366ef9a74.js +1 -0
  58. package/assets/esri/core/workers/chunks/5bfae465872760e7af6d.js +1 -0
  59. package/assets/esri/core/workers/chunks/5cb274e5759f7ca0d4ed.js +1 -0
  60. package/assets/esri/core/workers/chunks/5d3ddbf94539cb4f493e.js +1 -0
  61. package/assets/esri/core/workers/chunks/{542f5469f7b42026b24f.js → 5d62d1920e3e35fc0192.js} +1 -1
  62. package/assets/esri/core/workers/chunks/5dd441db1e74dc9b56e9.js +1 -0
  63. package/assets/esri/core/workers/chunks/630ad47857de3cf726d1.js +1 -0
  64. package/assets/esri/core/workers/chunks/64114a7d2da162987958.js +1 -0
  65. package/assets/esri/core/workers/chunks/6821462e5c1e9c76010a.js +1 -0
  66. package/assets/esri/core/workers/chunks/684d3cb4fb233180b2d0.js +1 -0
  67. package/assets/esri/core/workers/chunks/686c51fd2144e132783e.js +1 -0
  68. package/assets/esri/core/workers/chunks/68f9b2da1fd08785320f.js +2 -0
  69. package/assets/esri/core/workers/chunks/69e98de578f467a35054.js +1 -0
  70. package/assets/esri/core/workers/chunks/6a3d207308b29651f397.js +1 -0
  71. package/assets/esri/core/workers/chunks/6aabde21b0b376d95888.js +1 -0
  72. package/assets/esri/core/workers/chunks/6d616b66fb32904b55a1.js +1 -0
  73. package/assets/esri/core/workers/chunks/{bcb021a167580bb1619f.js → 6ef3b8d67b498d655a99.js} +1 -1
  74. package/assets/esri/core/workers/chunks/6f125b4ed06c0022dee6.js +1 -0
  75. package/assets/esri/core/workers/chunks/6f4825c3ef1fe202ab82.js +1 -0
  76. package/assets/esri/core/workers/chunks/6f5d61f734ec40dafabb.js +1 -0
  77. package/assets/esri/core/workers/chunks/{fce7995c26953bfd8d3d.js → 70229007d594536ba6a3.js} +1 -1
  78. package/assets/esri/core/workers/chunks/71e55381fdff3fc2542e.js +1 -0
  79. package/assets/esri/core/workers/chunks/{90953a827bc89d0e6bd5.js → 72cfb186e50537bcdd19.js} +1 -1
  80. package/assets/esri/core/workers/chunks/72d67cc3a382e83bf1a2.js +1 -0
  81. package/assets/esri/core/workers/chunks/7748743d4be047094d67.js +1 -0
  82. package/assets/esri/core/workers/chunks/78c53aeb0a408ab3c80c.js +1 -0
  83. package/assets/esri/core/workers/chunks/7b5c1030a7cf0f382cc4.js +1 -0
  84. package/assets/esri/core/workers/chunks/7cee81c5aa1e6b7d2452.js +1 -0
  85. package/assets/esri/core/workers/chunks/7e89cb9ff615742e0894.js +1 -0
  86. package/assets/esri/core/workers/chunks/80f4f686ce403cb2693f.js +1 -0
  87. package/assets/esri/core/workers/chunks/{62dfbdc847be4800e833.js → 8103d06f760a2c79773d.js} +10 -14
  88. package/assets/esri/core/workers/chunks/{8477b5fdd99c6ac5c27b.js → 851705cf276eae8d4d37.js} +1 -1
  89. package/assets/esri/core/workers/chunks/89e09276086745aa21fa.js +1 -0
  90. package/assets/esri/core/workers/chunks/{4894997bfa438f66da36.js → 8a8c5e5ce457ca004687.js} +1 -1
  91. package/assets/esri/core/workers/chunks/{b79428c5093614174e76.js → 8b0a01ebc86ab226f01f.js} +1 -1
  92. package/assets/esri/core/workers/chunks/{452c01cecbbd1e370098.js → 8f93e6fc11a158d4f1ee.js} +1 -1
  93. package/assets/esri/core/workers/chunks/93bd56396b8cd020f965.js +1 -0
  94. package/assets/esri/core/workers/chunks/{359d3acb3953e64e5a78.js → 93ceb74ac88ef460fe5f.js} +1 -1
  95. package/assets/esri/core/workers/chunks/957f7b8de4aecb6f644e.js +1 -0
  96. package/assets/esri/core/workers/chunks/{875cce0be4f6c89f80f3.js → 9629601de5e44ffe90ea.js} +2 -2
  97. package/assets/esri/core/workers/chunks/976ab2be6c244768c08a.js +1 -0
  98. package/assets/esri/core/workers/chunks/{e785f76c1a75cb1d1e1f.js → 99101789035f1787c630.js} +1 -1
  99. package/assets/esri/core/workers/chunks/99e5296192ab98fd0d99.js +1 -0
  100. package/assets/esri/core/workers/chunks/9d5f7573bfe3b051daf1.js +1 -0
  101. package/assets/esri/core/workers/chunks/a0c00c6fe60db49b3ab9.js +1 -0
  102. package/assets/esri/core/workers/chunks/a2247f4c3116efb16c4f.js +1 -0
  103. package/assets/esri/core/workers/chunks/a4245bd4e67a428fd835.js +1 -0
  104. package/assets/esri/core/workers/chunks/a442534ac0956a68b769.js +1 -0
  105. package/assets/esri/core/workers/chunks/a4e9a17dacbb52444d75.js +1 -0
  106. package/assets/esri/core/workers/chunks/{8bdca6f06c8b5fedd917.js → a5abba59e738c3240c22.js} +1 -1
  107. package/assets/esri/core/workers/chunks/a9fc53ae040320e49834.js +1 -0
  108. package/assets/esri/core/workers/chunks/aa118c1bcd922b8ac328.js +1 -0
  109. package/assets/esri/core/workers/chunks/aae0049c2c3e15a813e8.js +1 -0
  110. package/assets/esri/core/workers/chunks/ac33b10fe65f9e9e824f.js +1 -0
  111. package/assets/esri/core/workers/chunks/adc32f6b45ea3026fc34.js +1 -0
  112. package/assets/esri/core/workers/chunks/af31e62499d45bdab3c3.js +1 -0
  113. package/assets/esri/core/workers/chunks/b22a1c98271c2e4d8808.js +1 -0
  114. package/assets/esri/core/workers/chunks/{9f4681713f03365a2a53.js → b666027b9022fa346a79.js} +1 -1
  115. package/assets/esri/core/workers/chunks/b73c146d3e550eaf07eb.js +1 -0
  116. package/assets/esri/core/workers/chunks/{0f3654c8157ec8f22869.js → b895674c0550826ecb28.js} +3 -3
  117. package/assets/esri/core/workers/chunks/c0cbc50e5afd68bd485c.js +1 -0
  118. package/assets/esri/core/workers/chunks/c2a65de34f6a6c89c652.js +1 -0
  119. package/assets/esri/core/workers/chunks/c357c0a08b99c1e7f290.js +1 -0
  120. package/assets/esri/core/workers/chunks/{4a23b27bfbcfa08fd9a7.js → c3cf9e6e91f71c9cc5f3.js} +1 -1
  121. package/assets/esri/core/workers/chunks/c3ff2ff0a86a9143d7a5.js +1 -0
  122. package/assets/esri/core/workers/chunks/{e545df5ea7c0ced92cee.js → c424a66f1546275e2bcb.js} +1 -1
  123. package/assets/esri/core/workers/chunks/c60b4f2dd5fccdf362a7.js +1 -0
  124. package/assets/esri/core/workers/chunks/c6d0b4875b6b8d6bc25a.js +1 -0
  125. package/assets/esri/core/workers/chunks/c80fc1b3048e8d58a1f8.js +1 -0
  126. package/assets/esri/core/workers/chunks/c911f0b5bdd43b66b731.js +1 -0
  127. package/assets/esri/core/workers/chunks/c9a4601073e1a3eee9d0.js +1 -0
  128. package/assets/esri/core/workers/chunks/ccffaba50674adba7a0f.js +1 -0
  129. package/assets/esri/core/workers/chunks/{24646a1176ce34039155.js → cdf6ad970dc1893dac58.js} +1 -1
  130. package/assets/esri/core/workers/chunks/d13e003c9293cb7e2852.js +1 -0
  131. package/assets/esri/core/workers/chunks/d24e027bb8b2c09f25c8.js +1 -0
  132. package/assets/esri/core/workers/chunks/d2df8c328054dc6cb7b7.js +1 -0
  133. package/assets/esri/core/workers/chunks/d5c35a75fd4c41def420.js +1 -0
  134. package/assets/esri/core/workers/chunks/{5e3e0d7b85dfd52d1c7d.js → d78b7cac322755e87eb8.js} +1 -1
  135. package/assets/esri/core/workers/chunks/d7be278aed1fb37ad5ec.js +1 -0
  136. package/assets/esri/core/workers/chunks/d9695794cfaa014a55b1.js +1 -0
  137. package/assets/esri/core/workers/chunks/da1e8b338ab9fe9e0a8e.js +1 -0
  138. package/assets/esri/core/workers/chunks/dd920a6f6422fa213eba.js +1 -0
  139. package/assets/esri/core/workers/chunks/e1bf87077541da6853c6.js +1 -0
  140. package/assets/esri/core/workers/chunks/e279bcbe4f10e87bde6c.js +1 -0
  141. package/assets/esri/core/workers/chunks/e4406baf206b9e4c7e4f.js +1 -0
  142. package/assets/esri/core/workers/chunks/e499252cb52f7aed49a0.js +1 -0
  143. package/assets/esri/core/workers/chunks/{e178cd0e9178d6716410.js → e5837e5ac6ef761f26a2.js} +1 -1
  144. package/assets/esri/core/workers/chunks/e6a7272b59a4c2e34dca.js +1 -0
  145. package/assets/esri/core/workers/chunks/e912b515704e20313e53.js +1 -0
  146. package/assets/esri/core/workers/chunks/eac683a37339aa558455.js +1 -0
  147. package/assets/esri/core/workers/chunks/ec1841e6e498d54012eb.js +1 -0
  148. package/assets/esri/core/workers/chunks/ed3d16a5b4084ef61f8a.js +1 -0
  149. package/assets/esri/core/workers/chunks/ee07f54bc77fe9f8575a.js +1 -0
  150. package/assets/esri/core/workers/chunks/{e094364e54981c91e1b4.js → eeea5710275c967e8d51.js} +1 -1
  151. package/assets/esri/core/workers/chunks/ef46ef4f0ee9f2aeaa4a.js +1 -0
  152. package/assets/esri/core/workers/chunks/efb4aa5886730ea377bd.js +1 -0
  153. package/assets/esri/core/workers/chunks/{485d20152495c27b8074.js → f2a268c69f2a5566381b.js} +1 -1
  154. package/assets/esri/core/workers/chunks/f590db684d88e72bd79b.js +1 -0
  155. package/assets/esri/core/workers/chunks/f69df22a5c64389ebe28.js +1 -0
  156. package/assets/esri/core/workers/chunks/{f60292d97bcdbf19165b.js → f6d047358d14328f3622.js} +1 -1
  157. package/assets/esri/core/workers/chunks/f7fca88d120d45bb782a.js +1 -0
  158. package/assets/esri/core/workers/chunks/f819854098d63fe4ccdb.js +1 -0
  159. package/assets/esri/core/workers/chunks/f8f3579d0c1b65762902.js +1 -0
  160. package/assets/esri/core/workers/chunks/f98118127469449ca145.js +1 -0
  161. package/assets/esri/core/workers/chunks/f9ed05d4ad1f44d033bb.js +1 -0
  162. package/assets/esri/core/workers/chunks/fb6605be0c5e36785543.js +1 -0
  163. package/assets/esri/core/workers/chunks/fbe7dae0b4bf2d172487.js +1 -0
  164. package/assets/esri/core/workers/chunks/fc4d9be62cf5e9758842.js +1 -0
  165. package/assets/esri/core/workers/chunks/fd70a25ffdf2cc6c5be2.js +1 -0
  166. package/assets/esri/libs/lyr3d/lyr3DMain.wasm +0 -0
  167. package/assets/esri/libs/lyr3d/lyr3DWorker.wasm +0 -0
  168. package/assets/esri/libs/parquet/pkg/bundle_bg.wasm +0 -0
  169. package/assets/esri/libs/vxl/vxlLayer.wasm +0 -0
  170. package/assets/esri/themes/base/widgets/_BatchAttributeForm.scss +38 -8
  171. package/assets/esri/themes/dark/main.css +1 -1
  172. package/assets/esri/themes/light/main.css +1 -1
  173. package/assets/esri/themes/light/view.css +1 -1
  174. package/chunks/GaussianSplatComposition.glsl.js +1 -1
  175. package/chunks/GlobalIllumination.glsl.js +1 -1
  176. package/chunks/GlowComposition.glsl.js +2 -2
  177. package/chunks/OITBlend.glsl.js +3 -3
  178. package/chunks/OITBlendEmission.glsl.js +2 -2
  179. package/chunks/OITDimOpaque.glsl.js +2 -2
  180. package/chunks/SlicePlaneMaterial.glsl.js +4 -4
  181. package/chunks/bundle2.js +1 -1
  182. package/chunks/lyr3DMain.js +1 -1
  183. package/chunks/lyr3DWorker.js +1 -1
  184. package/chunks/vxlLayer.js +1 -1
  185. package/config.js +1 -1
  186. package/core/has.js +1 -1
  187. package/core/screenUtils.js +1 -1
  188. package/core/sql.d.ts +1 -1
  189. package/geometry/Extent.d.ts +0 -13
  190. package/geometry/Geometry.d.ts +10 -8
  191. package/geometry/Multipoint.d.ts +9 -0
  192. package/geometry/Multipoint.js +1 -1
  193. package/geometry/Point.d.ts +15 -71
  194. package/geometry/Polygon.js +1 -1
  195. package/geometry/support/geometryUtils.js +1 -1
  196. package/graphic/AnnotationGraphicOrigin.d.ts +34 -0
  197. package/graphic/AnnotationGraphicOrigin.js +2 -0
  198. package/graphic/DimensionFeatureGraphicOrigin.d.ts +34 -0
  199. package/graphic/DimensionFeatureGraphicOrigin.js +2 -0
  200. package/identity/IdentityManagerBase.js +1 -1
  201. package/interfaces.d.ts +11 -0
  202. package/kernel.js +1 -1
  203. package/layers/AnnotationLayer.d.ts +263 -32
  204. package/layers/AnnotationLayer.js +1 -1
  205. package/layers/DimensionFeatureLayer.d.ts +263 -32
  206. package/layers/DimensionFeatureLayer.js +1 -1
  207. package/layers/FeatureLayer.d.ts +1 -1
  208. package/layers/GeoJSONLayer.d.ts +7 -7
  209. package/layers/ParquetLayer.d.ts +22 -2
  210. package/layers/SceneLayer.d.ts +4 -2
  211. package/layers/VideoLayer.d.ts +7 -1
  212. package/layers/VideoLayer.js +1 -1
  213. package/layers/catalog/CatalogFootprintLayer.d.ts +40 -10
  214. package/layers/graphics/sources/parquet/FileProvider.js +1 -1
  215. package/layers/graphics/sources/parquet/ParquetFileInfo.js +2 -0
  216. package/layers/graphics/sources/parquet/ParquetFileStatistics.js +2 -0
  217. package/layers/graphics/sources/parquet/PortalParquetFileProvider.js +1 -1
  218. package/layers/graphics/sources/parquet/PortalParquetLayerFileProvider.js +1 -1
  219. package/layers/graphics/sources/parquet/UrlsFileProvider.js +1 -1
  220. package/layers/graphics/sources/parquet/createFileProvider.js +1 -1
  221. package/layers/graphics/sources/support/ParquetSourceWorker.js +1 -1
  222. package/layers/mixins/FeatureLayerBase.d.ts +40 -16
  223. package/layers/mixins/TemporalLayer.d.ts +4 -2
  224. package/layers/support/AnnotationSublayer.d.ts +44 -0
  225. package/layers/support/AnnotationSublayer.js +2 -0
  226. package/layers/support/GeometryEncodingLocation.d.ts +1 -1
  227. package/layers/support/GeometryEncodingWkb.d.ts +3 -2
  228. package/layers/support/ParquetFilesData.d.ts +13 -3
  229. package/layers/support/ParquetPortalItemData.d.ts +12 -1
  230. package/layers/support/arcgisLayers.js +1 -1
  231. package/layers/support/commonProperties.js +1 -1
  232. package/layers/support/featureLayerUtils.js +1 -1
  233. package/layers/support/layerUtils.js +1 -1
  234. package/layers/support/parquetUtils.js +1 -1
  235. package/layers/support/tiles3DUtils.js +1 -1
  236. package/layers/support/timeSeriesUtils.js +1 -1
  237. package/layers/video/types.d.ts +61 -1
  238. package/libs/parquet/parquet.js +1 -1
  239. package/package.json +1 -1
  240. package/request/types.d.ts +18 -20
  241. package/rest/support/Query.d.ts +1 -0
  242. package/support/revision.js +1 -1
  243. package/symbols/cim/CIMSymbolDrawHelper.js +1 -1
  244. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AnimatedMarkerShader.js +1 -1
  245. package/views/2d/engine/webgl/shaderGraph/techniques/dotDensity/DotDensityPolygonShader.js +1 -1
  246. package/views/2d/engine/webgl/shaderGraph/techniques/markers/MarkerShader.js +1 -1
  247. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/ComplexOutlineFillShader.js +1 -1
  248. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/HeatmapAccumulateShader.js +1 -1
  249. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/OutlineFillShader.js +1 -1
  250. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/hittestUtils.js +1 -1
  251. package/views/2d/engine/webgl/shaderGraph/techniques/text/TextShader.js +1 -1
  252. package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
  253. package/views/2d/layers/FeatureLikeLayerView2D.js +1 -1
  254. package/views/2d/layers/GeoRSSLayerView2D.js +1 -1
  255. package/views/2d/layers/GraphicsLayerView2D.js +1 -1
  256. package/views/2d/layers/ImageryLayerView2D.js +1 -1
  257. package/views/2d/layers/ImageryTileLayerView2D.js +1 -1
  258. package/views/2d/layers/KMLLayerView2D.js +1 -1
  259. package/views/2d/layers/MapNotesLayerView2D.js +1 -1
  260. package/views/2d/layers/MediaLayerView2D.js +1 -1
  261. package/views/2d/layers/RouteLayerView2D.js +1 -1
  262. package/views/2d/layers/features/layerAdapters/AnnotationLayerAdapter.js +1 -1
  263. package/views/2d/layers/features/layerAdapters/DimensionLayerAdapter.js +1 -1
  264. package/views/2d/layers/features/sources/strategies/ParquetSnapshotLoadStrategy.js +1 -1
  265. package/views/2d/layers/features/sources/strategies/ParquetTileLoadStrategy.js +1 -1
  266. package/views/2d/layers/graphics/GraphicStore.js +1 -1
  267. package/views/2d/support/hitTestUtils.js +1 -1
  268. package/views/3d/analysis/LineOfSight/LineOfSightAggregateManipulatedObject3D.js +2 -0
  269. package/views/3d/analysis/LineOfSight/LineOfSightAuthoringUtils.js +1 -1
  270. package/views/3d/analysis/LineOfSight/LineOfSightConfiguration.js +1 -1
  271. package/views/3d/analysis/LineOfSight/LineOfSightManipulators.js +1 -1
  272. package/views/3d/analysis/LineOfSight/LineOfSightObserverPlugin.js +1 -1
  273. package/views/3d/analysis/LineOfSight/LineOfSightPlacementLeafPlugin.js +2 -0
  274. package/views/3d/analysis/LineOfSight/LineOfSightPlacementTool.js +1 -1
  275. package/views/3d/analysis/LineOfSight/LineOfSightReshapeTool3D.js +2 -0
  276. package/views/3d/analysis/LineOfSight/LineOfSightRootPlugin.js +1 -1
  277. package/views/3d/analysis/LineOfSight/LineOfSightTargetPlugin.js +1 -1
  278. package/views/3d/analysis/LineOfSight/LineOfSightTool.js +1 -1
  279. package/views/3d/analysis/LineOfSight/LineOfSightTool2.js +1 -1
  280. package/views/3d/analysis/Viewshed/ViewshedSnappingController.js +1 -1
  281. package/views/3d/analysis/Viewshed/ViewshedSubTool.js +1 -1
  282. package/views/3d/interactive/editingTools/reshape/ReshapeOperation.js +1 -1
  283. package/views/3d/interactive/editingTools/reshape/ReshapeTool3D.js +1 -1
  284. package/views/3d/interactive/editingTools/reshape/isSupportedObject.js +1 -1
  285. package/views/3d/interactive/editingTools/reshape/reshapeTooltipUtils3D.js +1 -1
  286. package/views/3d/interactive/editingTools/visualElementUtils.js +1 -1
  287. package/views/3d/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTiles3D.js +1 -1
  288. package/views/3d/layers/FlowSubView3D.js +1 -1
  289. package/views/3d/layers/GaussianSplatLayerView3D.js +1 -1
  290. package/views/3d/layers/IntegratedMesh3DTilesLayerView3D.js +1 -1
  291. package/views/3d/layers/i3s/PointCloudRenderer.js +1 -1
  292. package/views/3d/terrain/OverlayManager.js +1 -1
  293. package/views/3d/terrain/TerrainRenderer.js +1 -1
  294. package/views/3d/webgl/RenderNode.d.ts +25 -4
  295. package/views/3d/webgl-engine/collections/Component/ComponentObject.js +1 -1
  296. package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
  297. package/views/3d/webgl-engine/collections/Component/RenderSubmitSystem.js +1 -1
  298. package/views/3d/webgl-engine/core/renderPasses/RenderPassManager.js +1 -1
  299. package/views/3d/webgl-engine/core/shaderLibrary/util/EmissionDimming.glsl.js +1 -1
  300. package/views/3d/webgl-engine/effects/RenderPlugin.js +1 -1
  301. package/views/3d/webgl-engine/effects/RenderPluginManager.js +1 -1
  302. package/views/3d/webgl-engine/effects/emissive/emissions.js +1 -1
  303. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIllumination.js +1 -1
  304. package/views/3d/webgl-engine/effects/transparency/OITBlend.js +1 -1
  305. package/views/3d/webgl-engine/effects/transparency/OITBlendTechniqueConfiguration.js +1 -1
  306. package/views/3d/webgl-engine/lib/BindParameters.js +1 -1
  307. package/views/3d/webgl-engine/lib/MainFramebuffer.js +1 -1
  308. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  309. package/views/3d/webgl-engine/lib/RendererBase.js +1 -1
  310. package/views/3d/webgl-engine/lib/SortedRenderGeometryRenderer.js +1 -1
  311. package/views/3d/webgl-engine/lib/lodRendering/LodRenderer.js +1 -1
  312. package/views/3d/webgl-engine/materials/renderers/MergedRenderer.js +1 -1
  313. package/views/3d/webgl-engine/shaders/OutputColorHighlightOLID.glsl.js +2 -2
  314. package/views/3d/webgl-engine/shaders/SlicePlaneMaterial.glsl.js +1 -1
  315. package/views/3d/webgl-engine/shaders/ToneMapping.glsl.js +6 -10
  316. package/views/draw/plugins/PolygonPlugin.js +1 -1
  317. package/views/interactive/interactiveToolUtils.js +1 -1
  318. package/views/interactive/snapping/FeatureSnappingEngine.js +1 -1
  319. package/views/interactive/snapping/LineSnapper.js +1 -1
  320. package/views/interactive/snapping/ParallelLineSnapper.js +1 -1
  321. package/views/interactive/snapping/RightAngleSnapper.js +1 -1
  322. package/views/interactive/snapping/RightAngleTriangleSnapper.js +1 -1
  323. package/views/interactive/snapping/SnappingAlgorithm.js +1 -1
  324. package/views/interactive/snapping/SnappingManager.js +1 -1
  325. package/views/interactive/snapping/snappingUtils.js +1 -1
  326. package/views/layers/FeatureLikeLayerView.d.ts +25 -1
  327. package/views/layers/FeatureLikeLayerView.js +1 -1
  328. package/views/types.d.ts +4 -4
  329. package/views/webgl/RenderingContext.js +1 -1
  330. package/views/webgl/renderState.js +1 -1
  331. package/webdoc/support/webdocSaveUtils.js +1 -1
  332. package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.d.ts +10 -2
  333. package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.js +1 -1
  334. package/widgets/BatchAttributeForm/ReactiveContingentValuesManager.js +1 -1
  335. package/widgets/BatchAttributeForm/attachmentUtils.d.ts +14 -0
  336. package/widgets/BatchAttributeForm/attachmentUtils.js +1 -1
  337. package/widgets/BatchAttributeForm/batchAttributeFormUtils.js +1 -1
  338. package/widgets/BatchAttributeForm/css.js +1 -1
  339. package/widgets/BatchAttributeForm/inputs/AttachmentElementInput.d.ts +8 -6
  340. package/widgets/BatchAttributeForm/inputs/AttachmentElementInput.js +1 -1
  341. package/widgets/BatchAttributeForm/inputs/FieldInput.js +1 -1
  342. package/widgets/BatchAttributeForm/inputs/RelationshipElementInput.js +1 -1
  343. package/widgets/BatchAttributeForm/inputs/support/attachmentValidationCriteriaState.d.ts +5 -0
  344. package/widgets/BatchAttributeForm/inputs/support/createBatchFormInputs.js +1 -1
  345. package/widgets/BatchAttributeForm/inputs/types.d.ts +8 -1
  346. package/widgets/BatchAttributeForm/interfaceUtils.js +1 -1
  347. package/widgets/BatchAttributeForm/rendered-content/RelationshipDetails.js +1 -1
  348. package/widgets/BatchAttributeForm/templates/support/createBatchFormTemplate.js +1 -1
  349. package/widgets/BatchAttributeForm.d.ts +9 -1
  350. package/widgets/BatchAttributeForm.js +1 -1
  351. package/widgets/FeatureTable/FeatureTableViewModel.js +1 -1
  352. package/widgets/FeatureTable/Grid/Column.js +1 -1
  353. package/widgets/FeatureTable/Grid/Grid.js +1 -1
  354. package/widgets/FeatureTable/Grid/GridViewModel.js +1 -1
  355. package/widgets/FeatureTable/Grid/GroupColumn.js +1 -1
  356. package/widgets/FeatureTable.js +1 -1
  357. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  358. package/widgets/Print/PrintViewModel.js +1 -1
  359. package/widgets/VideoPlayer/VideoPlayerViewModel.d.ts +7 -1
  360. package/widgets/VideoPlayer/VideoPlayerViewModel.js +1 -1
  361. package/widgets/support/ContingentValuesManager.js +1 -1
  362. package/assets/esri/core/workers/chunks/02aaeaa988e9e7d65a7f.js +0 -1
  363. package/assets/esri/core/workers/chunks/03354ad3d74d858173b4.js +0 -1
  364. package/assets/esri/core/workers/chunks/09a4139fc6d069ab6928.js +0 -1
  365. package/assets/esri/core/workers/chunks/0a510acf50915e00c62b.js +0 -1
  366. package/assets/esri/core/workers/chunks/0a780a883abfcdf0b900.js +0 -1
  367. package/assets/esri/core/workers/chunks/0fbf9bf52ecb4cd8293b.js +0 -1
  368. package/assets/esri/core/workers/chunks/119d352dd586f2bb61ec.js +0 -1
  369. package/assets/esri/core/workers/chunks/130784a27661de6b52a5.js +0 -1
  370. package/assets/esri/core/workers/chunks/145364aa20b4435294c2.js +0 -1
  371. package/assets/esri/core/workers/chunks/1595dc499a06b23b6a96.js +0 -1
  372. package/assets/esri/core/workers/chunks/16713986893adfbc9331.js +0 -1
  373. package/assets/esri/core/workers/chunks/179c9fe4ac83b42e5976.js +0 -1
  374. package/assets/esri/core/workers/chunks/19dcae83be0fc0aced02.js +0 -1
  375. package/assets/esri/core/workers/chunks/1c64e10f966e26af6fed.js +0 -1
  376. package/assets/esri/core/workers/chunks/1eabe746481e0b228498.js +0 -1
  377. package/assets/esri/core/workers/chunks/201007cf1a91e2b126fc.js +0 -1
  378. package/assets/esri/core/workers/chunks/20d0adc678f11981059c.js +0 -1
  379. package/assets/esri/core/workers/chunks/227eff8aa4a6f5f03bc2.js +0 -1
  380. package/assets/esri/core/workers/chunks/233ff588798c8a5eedf4.js +0 -1
  381. package/assets/esri/core/workers/chunks/238478cfe493fd4a6100.js +0 -1
  382. package/assets/esri/core/workers/chunks/24647e7424798dccdaf5.js +0 -1
  383. package/assets/esri/core/workers/chunks/249616ea2d90d40a8299.js +0 -1
  384. package/assets/esri/core/workers/chunks/24d9e4f1c7b8ff0d2cce.js +0 -1
  385. package/assets/esri/core/workers/chunks/2b36a54927f5a7281da3.js +0 -1
  386. package/assets/esri/core/workers/chunks/2bcd4d395bfe6a19ccc8.js +0 -1
  387. package/assets/esri/core/workers/chunks/2c8584ec1c3c9fd5aba2.js +0 -1
  388. package/assets/esri/core/workers/chunks/2d374cc8c54a722a7afe.js +0 -1
  389. package/assets/esri/core/workers/chunks/2e11b4e9d66474a60064.js +0 -1
  390. package/assets/esri/core/workers/chunks/2fa080539d039c92ce08.js +0 -1
  391. package/assets/esri/core/workers/chunks/3109b05fe4fc40d4f25b.js +0 -1
  392. package/assets/esri/core/workers/chunks/31442f25d550ead58fc4.js +0 -1
  393. package/assets/esri/core/workers/chunks/32323b0e0fcecd8f640e.js +0 -1
  394. package/assets/esri/core/workers/chunks/330da3828eefd8d72d3f.js +0 -1
  395. package/assets/esri/core/workers/chunks/33e0130e6a40fc768978.js +0 -1
  396. package/assets/esri/core/workers/chunks/343ba5ea459e96ba79c6.js +0 -1
  397. package/assets/esri/core/workers/chunks/388e71e8f2ec41bfa5a9.js +0 -1
  398. package/assets/esri/core/workers/chunks/3a5c1c501808352857bd.js +0 -1
  399. package/assets/esri/core/workers/chunks/3aacaa1be5efeac23a37.js +0 -1
  400. package/assets/esri/core/workers/chunks/3b765a8cac9e92f644f2.js +0 -1
  401. package/assets/esri/core/workers/chunks/3bf6d55511cd7722eb93.js +0 -1
  402. package/assets/esri/core/workers/chunks/3e012cd3ca4451f89f59.js +0 -1
  403. package/assets/esri/core/workers/chunks/3fbb6ff940156a981983.js +0 -1
  404. package/assets/esri/core/workers/chunks/40910c69307e2d2d3f28.js +0 -1
  405. package/assets/esri/core/workers/chunks/40c4e14e7bb505ef10a3.js +0 -1
  406. package/assets/esri/core/workers/chunks/4104fa1ede36bcee9be5.js +0 -1
  407. package/assets/esri/core/workers/chunks/423a9882abd4a6dadf86.js +0 -1
  408. package/assets/esri/core/workers/chunks/428561df7ba6f02e2d80.js +0 -1
  409. package/assets/esri/core/workers/chunks/45323491f9005629c602.js +0 -1
  410. package/assets/esri/core/workers/chunks/46d0a25d33b5b328cfce.js +0 -1
  411. package/assets/esri/core/workers/chunks/47dd2bfecc5c4b5f10f0.js +0 -1
  412. package/assets/esri/core/workers/chunks/4845df00f6ebcce6ea3e.js +0 -1
  413. package/assets/esri/core/workers/chunks/48fcc10768d93e95a04e.js +0 -1
  414. package/assets/esri/core/workers/chunks/4a9dd9f8aa98882218f3.js +0 -1
  415. package/assets/esri/core/workers/chunks/4bfffdfbe6d467f143a4.js +0 -1
  416. package/assets/esri/core/workers/chunks/518046d2b95a7590a092.js +0 -1
  417. package/assets/esri/core/workers/chunks/54dad475dc806a38c287.js +0 -1
  418. package/assets/esri/core/workers/chunks/552945a73a95cd2a9f54.js +0 -1
  419. package/assets/esri/core/workers/chunks/5553279998ae07b60f5f.js +0 -1
  420. package/assets/esri/core/workers/chunks/58155f24f8ed6aca7a21.js +0 -1
  421. package/assets/esri/core/workers/chunks/5838f46d341d2fde42ee.js +0 -1
  422. package/assets/esri/core/workers/chunks/592a599f514de373dead.js +0 -1
  423. package/assets/esri/core/workers/chunks/5aba23584e0b230c75f5.js +0 -1
  424. package/assets/esri/core/workers/chunks/5f9bacee6fbf9ac1bca0.js +0 -1
  425. package/assets/esri/core/workers/chunks/62206d5d497b95fc4caf.js +0 -1
  426. package/assets/esri/core/workers/chunks/624b1bb269744142b835.js +0 -1
  427. package/assets/esri/core/workers/chunks/62fc3c367f736c73b0d7.js +0 -1
  428. package/assets/esri/core/workers/chunks/643c33a98f2d30a92001.js +0 -1
  429. package/assets/esri/core/workers/chunks/64daa2a714e59d22bbd4.js +0 -1
  430. package/assets/esri/core/workers/chunks/65621650a53f69f7b05a.js +0 -1
  431. package/assets/esri/core/workers/chunks/6a5356ebed70e0f8f979.js +0 -1
  432. package/assets/esri/core/workers/chunks/6c9933f948efd7923aa1.js +0 -1
  433. package/assets/esri/core/workers/chunks/6cab67fc7044ee9b863b.js +0 -1
  434. package/assets/esri/core/workers/chunks/7014e73dfd3c8baa704c.js +0 -1
  435. package/assets/esri/core/workers/chunks/75839240022b280929f7.js +0 -1
  436. package/assets/esri/core/workers/chunks/76589434d573111a8fb4.js +0 -1
  437. package/assets/esri/core/workers/chunks/767ea5b455b3823afd09.js +0 -1
  438. package/assets/esri/core/workers/chunks/77859a61d059738d057f.js +0 -1
  439. package/assets/esri/core/workers/chunks/78aa5bc6af2758da20d0.js +0 -1
  440. package/assets/esri/core/workers/chunks/7b564226def99fcf79d8.js +0 -1
  441. package/assets/esri/core/workers/chunks/7bbffe07e62897928773.js +0 -1
  442. package/assets/esri/core/workers/chunks/7cadfd7444a2a05cf2fb.js +0 -1
  443. package/assets/esri/core/workers/chunks/7df94cb985db41815fad.js +0 -2
  444. package/assets/esri/core/workers/chunks/823789261ca3338f0fa8.js +0 -1
  445. package/assets/esri/core/workers/chunks/8419934bec7723b0feef.js +0 -1
  446. package/assets/esri/core/workers/chunks/84b0b6e099d949e0fea5.js +0 -1
  447. package/assets/esri/core/workers/chunks/9133c1b7cc1c9da27deb.js +0 -1
  448. package/assets/esri/core/workers/chunks/92ab5886aa2d8b9b179f.js +0 -1
  449. package/assets/esri/core/workers/chunks/9a6e62ef984e9c5babc4.js +0 -1
  450. package/assets/esri/core/workers/chunks/9b676606bf839b7aa433.js +0 -1
  451. package/assets/esri/core/workers/chunks/9d27cc631bab8aa7479e.js +0 -1
  452. package/assets/esri/core/workers/chunks/9dcfaca1f4fa8c8026ac.js +0 -1
  453. package/assets/esri/core/workers/chunks/9f23a61c60949459c14f.js +0 -30
  454. package/assets/esri/core/workers/chunks/a03c4c0bf138734a002e.js +0 -1
  455. package/assets/esri/core/workers/chunks/a0fa60a24e58f7a47e41.js +0 -1
  456. package/assets/esri/core/workers/chunks/a261f4c22224511fdfff.js +0 -1
  457. package/assets/esri/core/workers/chunks/a2ac139d0975085279a6.js +0 -1
  458. package/assets/esri/core/workers/chunks/a806ac351ef5da04c250.js +0 -1
  459. package/assets/esri/core/workers/chunks/ab94c9f62462d7a98f6a.js +0 -1
  460. package/assets/esri/core/workers/chunks/abdb05754c50776c3edd.js +0 -1
  461. package/assets/esri/core/workers/chunks/ad488985824fbb830ed6.js +0 -1
  462. package/assets/esri/core/workers/chunks/b0ac4b0b7aec70cfe6eb.js +0 -1
  463. package/assets/esri/core/workers/chunks/b23009d9f8eb7c20ce45.js +0 -1
  464. package/assets/esri/core/workers/chunks/bfbd1ca28ed2f263e58f.js +0 -1
  465. package/assets/esri/core/workers/chunks/c1b6de0d728d25d7905a.js +0 -1
  466. package/assets/esri/core/workers/chunks/c44be4aaba829e6d149d.js +0 -1
  467. package/assets/esri/core/workers/chunks/ca6907e14b1dde4d5c07.js +0 -1
  468. package/assets/esri/core/workers/chunks/cbbd94c53e75efc99876.js +0 -1
  469. package/assets/esri/core/workers/chunks/ce0e627a5e1cb78adce8.js +0 -1
  470. package/assets/esri/core/workers/chunks/cf7acf5acb6d322fd996.js +0 -1
  471. package/assets/esri/core/workers/chunks/d21480b078ec9680d4c4.js +0 -1
  472. package/assets/esri/core/workers/chunks/d81291dac1932350eccd.js +0 -1
  473. package/assets/esri/core/workers/chunks/da3c54e27a808f4fcc18.js +0 -1
  474. package/assets/esri/core/workers/chunks/dc6d50e1097a920ff820.js +0 -1
  475. package/assets/esri/core/workers/chunks/dd58286dde3b20356f84.js +0 -1
  476. package/assets/esri/core/workers/chunks/dfeddb7b17fa9eaae64c.js +0 -1
  477. package/assets/esri/core/workers/chunks/e4e0c5a45cf32973d5d5.js +0 -1
  478. package/assets/esri/core/workers/chunks/e638391801ad83fe4a68.js +0 -1
  479. package/assets/esri/core/workers/chunks/e755477dc78e9d6038d4.js +0 -1
  480. package/assets/esri/core/workers/chunks/e7712467db46e1385cf4.js +0 -1
  481. package/assets/esri/core/workers/chunks/ed2cb60e4f17f46fb78d.js +0 -1
  482. package/assets/esri/core/workers/chunks/edb55329305becdb204f.js +0 -1
  483. package/assets/esri/core/workers/chunks/f02fe24177e56a7e42b2.js +0 -1
  484. package/assets/esri/core/workers/chunks/f1fb2f12371f4c562079.js +0 -1
  485. package/assets/esri/core/workers/chunks/f3dfe1bd1146a6927407.js +0 -1
  486. package/assets/esri/core/workers/chunks/ff48334528d2554db4fe.js +0 -1
  487. package/views/3d/analysis/LineOfSight/LineOfSightAuthoringStore.js +0 -2
  488. /package/assets/esri/core/workers/chunks/{7df94cb985db41815fad.js.LICENSE.txt → 68f9b2da1fd08785320f.js.LICENSE.txt} +0 -0
  489. /package/assets/esri/core/workers/chunks/{875cce0be4f6c89f80f3.js.LICENSE.txt → 9629601de5e44ffe90ea.js.LICENSE.txt} +0 -0
@@ -392,15 +392,29 @@ export default class CatalogFootprintLayer extends CatalogFootprintLayerSupercla
392
392
  /** The geometry type of features in the layer. */
393
393
  get geometryType(): "polygon";
394
394
  /**
395
- * Indicates whether the client-side features in the layer have `M` (measurement) values.
396
- * Use the `supportsM` property in the CatalogLayer's [capabilities.data](https://developers.arcgis.com/javascript/latest/references/core/layers/catalog/CatalogFootprintLayer/#capabilities)
397
- * object to verify if `M` values are supported on [feature service](https://developers.arcgis.com/rest/services-reference/feature-service.htm) features.
395
+ * Indicates whether the layer has m aware geometries.
396
+ * Use the `supportsM` property in the layer's [DataCapabilities](https://developers.arcgis.com/javascript/latest/references/core/layers/types/#DataCapabilities)
397
+ * to verify if m-values are supported by the layer.
398
+ *
399
+ * - When `true`: The layer has m aware features. M-values are part of the geometry.
400
+ * - When `false`: The layer does not have m aware features. M-values are not part of the geometry.
401
+ *
402
+ * @see [returnM](https://developers.arcgis.com/javascript/latest/references/core/layers/mixins/FeatureLayerBase/#returnM) for details regarding fetching m-values with features from a layer
403
+ * @see [Linear referencing](https://pro.arcgis.com/en/pro-app/latest/help/data/linear-referencing/introduction-to-linear-referencing.htm)
398
404
  */
399
405
  get hasM(): boolean;
400
406
  /**
401
- * Indicates whether the client-side features in the layer have `Z` (elevation) values. Refer to [elevationInfo](https://developers.arcgis.com/javascript/latest/references/core/layers/catalog/CatalogFootprintLayer/#elevationInfo) for details regarding placement and rendering
402
- * of features with z-values in 3D [SceneViews](https://developers.arcgis.com/javascript/latest/references/core/views/SceneView/). Use the `supportsZ` property in the CatalogLayer's [capabilities.data](https://developers.arcgis.com/javascript/latest/references/core/layers/catalog/CatalogFootprintLayer/#capabilities)
403
- * object to verify if `Z` values are supported on [feature service](https://developers.arcgis.com/rest/services-reference/feature-service.htm) features.
407
+ * Indicates whether the layer has z aware geometries. Use the `supportsZ` property in the layer's [DataCapabilities](https://developers.arcgis.com/javascript/latest/references/core/layers/types/#DataCapabilities)
408
+ * to verify if z-values are supported by the layer.
409
+ *
410
+ * - When `true`: The layer has z aware features. Z-values are part of the geometry.
411
+ * - When `false`: The layer does not have z aware features. Z-values are not part of the geometry.
412
+ * > [!NOTE]
413
+ * > - Refer to [FeatureLayerBase.elevationInfo](https://developers.arcgis.com/javascript/latest/references/core/layers/mixins/FeatureLayerBase/#elevationInfo) for details regarding placement and rendering
414
+ * > of features with z-values in 3D [SceneViews](https://developers.arcgis.com/javascript/latest/references/core/views/SceneView/).
415
+ *
416
+ * @see [returnZ](https://developers.arcgis.com/javascript/latest/references/core/layers/mixins/FeatureLayerBase/#returnZ) for details regarding fetching z-values with features from a layer
417
+ * @see [Point.z](https://developers.arcgis.com/javascript/latest/references/core/geometry/Point/#z) for more information on how z-values are represented in geometries
404
418
  */
405
419
  get hasZ(): boolean;
406
420
  /**
@@ -548,13 +562,29 @@ export default class CatalogFootprintLayer extends CatalogFootprintLayerSupercla
548
562
  get renderer(): RendererUnion | null | undefined;
549
563
  set renderer(value: (((SimpleRendererProperties & { type: "simple" }) | (ClassBreaksRendererProperties & { type: "class-breaks" }) | (UniqueValueRendererProperties & { type: "unique-value" }) | (DotDensityRendererProperties & { type: "dot-density" }) | (DictionaryRendererProperties & { type: "dictionary" }) | (PieChartRendererProperties & { type: "pie-chart" })) | (HeatmapRendererProperties & { type: "heatmap" })) | null | undefined);
550
564
  /**
551
- * When `true`, indicates that m-values will be returned. When `false`, indicates that m-values will never be returned. The layer view
552
- * determines whether to include m-values in feature queries when the property value is `undefined`.
565
+ * Determines whether m-values (measure) are returned in feature geometries. For 2D views, support was added at version 5.1 and the behavior is as follows:
566
+ * - When `undefined` (default): Fetches m-values if they are needed for rendering or labeling, or layer property interacts with the geometry.
567
+ * Otherwise, m-values are excluded from feature queries.
568
+ * - When `true`: Fetches m-values with the geometry, ensuring they are available on the client.
569
+ * - When `false`: Excludes m-values from feature queries. M-values are not part of geometries.
570
+ *
571
+ * > [!WARNING]
572
+ * >
573
+ * > 3D views do not support m-values. They will not be fetched or returned in 3D scene queries, regardless of this setting.
574
+ *
575
+ * @see [FeatureLayerBase.hasM](https://developers.arcgis.com/javascript/latest/references/core/layers/mixins/FeatureLayerBase/#hasM)
553
576
  */
554
577
  get returnM(): boolean | null | undefined;
555
578
  /**
556
- * When `true`, indicates that z-values will always be returned. When `false`, indicates that z-values will never be returned. The layer view
557
- * determines whether to include z-values in feature queries when the property value is `undefined`.
579
+ * Determines whether z-values (elevation) are returned in feature geometries. For 3D views, z-values are always fetched regardless of the `returnZ` setting.
580
+ * For 2D views, support was added at version 5.1 and the behavior is as follows:
581
+ * - When `undefined` (default): Fetches z-values if they are needed for rendering or labeling, or layer property interacts with the geometry.
582
+ * Otherwise, z-values are excluded from feature queries.
583
+ * - When `true`: Fetches z-values with the geometry, ensuring they are available on the client.
584
+ * - When `false`: Excludes z-values from feature queries. Z-values are not part of geometries.
585
+ *
586
+ * @see [FeatureLayerBase.hasZ](https://developers.arcgis.com/javascript/latest/references/core/layers/mixins/FeatureLayerBase/#hasZ)
587
+ * @see [Geometry.hasZ](https://developers.arcgis.com/javascript/latest/references/core/geometry/Geometry/#hasZ)
558
588
  */
559
589
  get returnZ(): boolean | null | undefined;
560
590
  /** The spatial reference the source data is stored in. */
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import e from"../../../../request.js";import has from"../../../../core/has.js";import{QueueProcessor as t}from"../../../../core/QueueProcessor.js";import{isBlobProtocol as a}from"../../../../core/urlUtils.js";const r="parquet.v1",s=new t({concurrency:12,process:async t=>{const{data:a}=await e(t.url,t.options);return a}});class n{constructor(e=()=>{}){this._getCustomParameters=e}async fetchRange(e,t,a,n){const o=await this._resolveFileUrl(e),c={url:o,options:{responseType:"array-buffer",query:this._getCustomParameters()??{},cacheMode:"no-store",useQueue:!0,headers:{range:`bytes=${t}-${a}`}}};if(!has("parquetlayer-cache-enabled"))return s.push(c);const i=new URL(o);i.searchParams.append("range",`${t}-${a}`);try{const e=await caches.open(`${r}:${o}`),t=await e.match(i);if(t)return await t.arrayBuffer();const a=await s.push(c);return await e.put(i,new Response(a,{headers:{"Content-Type":"application/octet-stream","Content-Length":a.byteLength.toString()}})),a}catch(h){return s.push(c)}}async fetchLength(t){const s=await this._resolveFileUrl(t);if(a(s)){const{data:t}=await e(s,{responseType:"blob"});return t.size}const{data:n}=await e(s,{responseType:"native",method:"head",query:this._getCustomParameters()}),o=n.headers.get("Content-Length");if(null==o)throw new Error("Unable to parse content length");const c=parseInt(o,10);if(!has("parquetlayer-cache-enabled"))return c;try{const e=`${r}:${s}`,t=new URL(s);t.searchParams.append("metadata","true");let a=await caches.open(e);const o=n.headers.get("etag")??n.headers.get("Last-Modified");if(null==o)return await caches.delete(e),c;const i=await a.match(t),h=await(i?.json());h?.tag!==o&&(await caches.delete(e),a=await caches.open(e));const p=JSON.stringify({tag:o});await a.put(t,new Response(p,{headers:{"Content-Type":"application/json","Content-Length":p.length.toString()}}))}catch(i){}return c}}export{n as FileProvider};
2
+ import{__addDisposableResource as t,__disposeResources as e}from"tslib";import a from"../../../../request.js";import has from"../../../../core/has.js";import{QueueProcessor as s}from"../../../../core/QueueProcessor.js";import{isBlobProtocol as r}from"../../../../core/urlUtils.js";import{ParquetFileInfo as n}from"./ParquetFileInfo.js";import{parseFileStatisticsMap as i}from"./ParquetFileStatistics.js";import{createParquetFile as o,readMetadata as c}from"../../../../libs/parquet/parquet.js";const h="parquet.v1",u="_spatial.json",f=new s({concurrency:12,process:async t=>{const{data:e}=await a(t.url,t.options);return e}});class l{constructor(t,e=()=>{}){this._geometryInfo=t,this._getCustomParameters=e}async destroy(){await this.clear()}async clear(){if(this._infos){const t=await this._infos;for(const e of t.values())e.destroy();t.clear(),this._infos=null}}async getMetadata(){const a={stack:[],error:void 0,hasError:!1};try{const e=(await this._getParquetFileNames()).at(0);if(!e)return null;const s=t(a,await o(e,{provider:this}),!1);return c(s)}catch(s){a.error=s,a.hasError=!0}finally{e(a)}}getGeometryInfo(){return this._geometryInfo}async getFiles(){const t=await this._getInfoMap();return Array.from(t.values())}async updateGeometryInfo(t){if(this._geometryInfo)throw new Error("GeometryInfo already set");await this.clear(),this._geometryInfo=t}async fetchLength(t){const{byteLength:e,cacheTag:a}=await this._fetchLengthAndTag(t);if(!has("parquetlayer-cache-enabled"))return e;try{await this._createOrResetCache(t,a)}catch(s){}return e}async fetchRange(t,e,a,s){if(!has("parquetlayer-cache-enabled"))return this._fetchRange(t,e,a,s);const r=new URL(this._getCacheFileName(t));r.searchParams.append("range",`${e}-${a}`);try{const n=await this._openCache(t),i=await n.match(r);if(i)return await i.arrayBuffer();const o=await this._fetchRange(t,e,a,s);return await n.put(r,new Response(o,{headers:{"Content-Type":"application/octet-stream","Content-Length":o.byteLength.toString()}})),o}catch(n){return this._fetchRange(t,e,a,s)}}_getCacheFileName(t){return t}async _requestStatistics(t){const{data:e}=await a(t,{responseType:"json",query:this._getCustomParameters()});return e}async _fetchRange(t,e,a,s){const r={url:t,options:{responseType:"array-buffer",query:this._getCustomParameters()??{},cacheMode:"no-store",useQueue:!0,headers:{range:`bytes=${e}-${a}`}}};return f.push(r)}async _fetchLengthAndTag(t){if(r(t)){const{data:e}=await a(t,{responseType:"blob"});return{byteLength:e.size,cacheTag:null}}const e=await this._requestHead(t),s=e.headers.get("Content-Length");if(null==s)throw new Error("Unable to parse content length");const n=e.headers.get("etag")??e.headers.get("Last-Modified");return{byteLength:parseInt(s,10),cacheTag:n}}async _getInfoMap(){return this._infos||(this._infos=this._fetchParquetFiles()),this._infos}async _updateParquetFileInfos(t){const e=await this._getInfoMap(),a=new Set(t);for(const s of a)if(!e.get(s)){const t=e.size,a=await n.create(this.getGeometryInfo(),this,s,t,null);e.set(s,a)}for(const s of e.keys())if(!a.has(s))throw new Error("Deletion not supported")}async _getFileStatistics(t){this._statistics||(this._statistics=this._fetchStatistics());const e=await this._statistics,a=p(t);return e.get(a)}async _fetchParquetFiles(){const t=(await this._getParquetFileNames()).map(async(t,e)=>{const a=e,s=await this._getFileStatistics(t);return n.create(this.getGeometryInfo(),this,t,a,s)}),e=await Promise.all(t),a=new Map;for(const s of e)a.set(s.url,s);return a}async _fetchStatistics(){const t=await this._getStatisticsFileName();if(null==t)return new Map;const e=await this._resolveFileUrl(t),a=await this._requestStatistics(e);return i(a)}async _requestHead(t){const{data:e}=await a(t,{responseType:"native",method:"head",query:this._getCustomParameters()});return e}async _openCache(t){return caches.open(this._getCacheName(t))}_getCacheName(t){return`${h}:${this._getCacheFileName(t)}`}async _createOrResetCache(t,e){const a=this._getCacheName(t),s=new URL(this._getCacheFileName(t));if(s.searchParams.append("metadata","true"),null==e)return void await caches.delete(a);let r=await caches.open(a);const n=await r.match(s),i=await(n?.json());i?.tag!==e&&(await caches.delete(a),r=await caches.open(a));const o=JSON.stringify({tag:e});await r.put(s,new Response(o,{headers:{"Content-Type":"application/json","Content-Length":o.length.toString()}}))}}function g(t){const e=t.split(/[?#]/)[0];return e===u||e.endsWith(u)}function p(t){return t.split(/[?#]/)[0].split("/").at(-1)??t}export{l as FileProvider,g as isStatisticsFileName,u as spatialFileName};
@@ -0,0 +1,2 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
+ import{FileStatistics as t}from"./ParquetFileStatistics.js";import{createParquetFile as e}from"../../../../libs/parquet/parquet.js";class i{static async create(r,s,o,l,f){if(!f){const f=await e(o,{geometryInfo:r,provider:s}),n=t.fromFile(f);return new i(r,s,o,l,n,Promise.resolve(f))}return new i(r,s,o,l,f,null)}constructor(t,e,i,r,s,o){this._geometryInfo=t,this._provider=e,this.url=i,this.id=r,this.statistics=s,this._file=o}destroy(){null!=this._file&&this._file.then(t=>t.free())}get file(){return null==this._file&&(this._file=e(this.url,{geometryInfo:this._geometryInfo,provider:this._provider})),this._file}}export{i as ParquetFileInfo};
@@ -0,0 +1,2 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
+ function n(n){const u=new Map;for(const o of n.files){const n=t(o);u.set(o.name,n)}return u}function t(n){const t=new Map;for(const u of n.statistics??[]){const n=u.column.at(-1);null!=n&&t.set(n,{minValue:u.minValue,maxValue:u.maxValue,nullCount:u.nullCount??0,distinctCount:u.distinctCount??null})}return new u(0,0,t)}class u{static fromFile(n){const t=n.numRows(),o=n.byteLength(),l=new Map;for(const u of n.getColumnDescriptors()){const n=u.minValue(),t=u.maxValue(),o=u.distinctCount(),s=u.nullCount();null!=n&&null!=t&&null!=o&&null!=s&&l.set(u.name(),{minValue:n,maxValue:t,distinctCount:o,nullCount:s}),u.free()}return new u(t,o,l)}constructor(n,t,u){this.rowCount=n,this.byteSize=t,this.statistics=u}}export{u as FileStatistics,t as parseFileStatistics,n as parseFileStatisticsMap};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import e from"../../../../request.js";import{FileProvider as r}from"./FileProvider.js";import{parseKnownArcGISOnlineDomain as s}from"../../../../portal/support/urlUtils.js";class t extends r{constructor(e,r){super(r),this._schema=e,this._isAgol=!!s(this._schema.itemUrl)}async getFileList(){return[`${this._baseUrl}/data`]}async fetchLength(e){return this._schema.size}async fetchRange(e,r,s,t){try{return await super.fetchRange(e,r,s,t)}catch{this._resolvedUrl=null}return super.fetchRange(e,r,s,t)}async _resolveFileUrl(e){return this._resolvedUrl||(this._resolvedUrl=this._fetchResolvedUrl()),this._resolvedUrl}get _baseUrl(){return this._schema.itemCdnUrl??this._schema.itemUrl}async _fetchResolvedUrl(){if(!this._isAgol)return`${this._baseUrl}/data`;return(await e(`${this._baseUrl}/data`,{query:{signedurl:!0,expiration:9,f:"json"}})).data.signedUrl}}export{t as PortalParquetFileProvider};
2
+ import e from"../../../../request.js";import{FileProvider as t}from"./FileProvider.js";import{parseKnownArcGISOnlineDomain as r}from"../../../../portal/support/urlUtils.js";class s extends t{constructor(e,t,s){super(t,s),this._schema=e,this._isAgol=!!r(this._schema.itemUrl)}async update(e){throw new Error("Unsupported")}async _getParquetFileNames(){return[`${this._baseUrl}/data`]}async _getStatisticsFileName(){return null}_getCacheFileName(e){return`${this._baseUrl}/data`}async _resolveFileUrl(e){return this._resolvedUrl||(this._resolvedUrl=this._fetchResolvedUrl()),this._resolvedUrl}async _fetchLengthAndTag(e){const t=await super._fetchLengthAndTag(e);return t.cacheTag=this._schema.modified.getTime().toString(),t}async _fetchRange(e,t,r,s){try{const a=await this._resolveFileUrl(e);return await super._fetchRange(a,t,r,s)}catch{this._resolvedUrl=null}const a=await this._resolveFileUrl(e);return super._fetchRange(a,t,r,s)}get _baseUrl(){return this._schema.itemCdnUrl??this._schema.itemUrl}async _fetchResolvedUrl(){if(!this._isAgol)return`${this._baseUrl}/data`;return(await e(`${this._baseUrl}/data`,{query:{signedurl:!0,expiration:9,f:"json"}})).data.signedUrl}}export{s as PortalParquetFileProvider};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import e from"../../../../request.js";import{FileProvider as t}from"./FileProvider.js";const r=100;class s extends t{constructor(e,t){super(t),this._schema=e}get _baseUrl(){return this._schema.itemCdnUrl??this._schema.itemUrl}async getFileList(){const e=await this._getResources();return Array.from(e.keys())}async getResource(e){const t=(await this._getResources()).get(e);if(!t)throw new Error(`Resource ${e} not found.`);return t}async fetchLength(e){return(await this.getResource(e)).size}async fetchRange(e,t,r,s){try{return await super.fetchRange(e,t,r,s)}catch{this._invalidate()}return super.fetchRange(e,t,r,s)}async _resolveFileUrl(e){return(await this.getResource(e)).signedUrl}_invalidate(){this._resources=null}async _getResources(){return this._resources||(this._resources=this._fetchResources()),await this._resources}async _fetchResources(){const t=new Map;let s=1;const n=o(this._schema.itemMetadata.url);for(;-1!==s;){const o=await e(`${this._baseUrl}/resources`,{query:{f:"json",start:s,num:r}});for(const e of o.data.resources)e.resource.startsWith(n)&&t.set(e.resource,e);s=o.data.nextStart}return t}}function o(e){const t=e.split("/").filter(Boolean),r=t.indexOf("resources");if(-1===r||r===t.length-1)throw new Error(`URL does not contain a resources directory name: ${e}`);return`${t.slice(r+1).map(e=>decodeURIComponent(e)).join("/")}/`}export{s as PortalParquetResourcesFileProvider};
2
+ import e from"../../../../request.js";import{FileProvider as t,isStatisticsFileName as s}from"./FileProvider.js";const r=100;class a extends t{constructor(e,t,s){super(t,s),this._schema=e}get _baseUrl(){return this._schema.itemCdnUrl??this._schema.itemUrl}async update(e){throw new Error("Unsupported")}async _getParquetFileNames(){const e=await this._getResources();return Array.from(e.keys()).filter(e=>e.endsWith(".parquet"))}async _getStatisticsFileName(){const e=await this._getResources();return Array.from(e.keys()).find(s)??null}_getCacheFileName(e){return`${this._baseUrl}/resources/${e}`}async _resolveFileUrl(e){const t=await this._getResource(e);return t.signedUrl?t.signedUrl:`${this._baseUrl}/resources/${e}`}async _fetchLengthAndTag(e){const t=await this._getResource(e),s=this._schema.itemMetadata.modified.getTime().toString();return{byteLength:t.size,cacheTag:s}}async _fetchRange(e,t,s,r){try{const a=await this._resolveFileUrl(e);return await super._fetchRange(a,t,s,r)}catch{this._invalidate()}const a=await this._resolveFileUrl(e);return super._fetchRange(a,t,s,r)}_invalidate(){this._resources=null}async _getResources(){return this._resources||(this._resources=this._fetchResources()),await this._resources}async _getResource(e){const t=(await this._getResources()).get(e);if(!t)throw new Error(`Resource ${e} not found.`);return t}async _fetchResources(){const t=new Map;let s=1;const a=n(this._schema.itemMetadata.url);for(;-1!==s;){const n=await e(`${this._baseUrl}/resources`,{query:{f:"json",start:s,num:r}});for(const e of n.data.resources)e.resource.startsWith(a)&&t.set(e.resource,e);s=n.data.nextStart}return t}}function n(e){const t=e.split("/").filter(Boolean),s=t.indexOf("resources");if(-1===s||s===t.length-1)throw new Error(`URL does not contain a resources directory name: ${e}`);return`${t.slice(s+1).map(e=>decodeURIComponent(e)).join("/")}/`}export{a as PortalParquetResourcesFileProvider};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{FileProvider as e}from"./FileProvider.js";class r extends e{constructor(e,r=()=>{}){super(r),this._schema=e}async getFileList(){return this._schema.urls}async _resolveFileUrl(e){return e}}export{r as UrlsFileProvider};
2
+ import{FileProvider as e,isStatisticsFileName as s}from"./FileProvider.js";class t extends e{constructor(e,s=null,t=()=>{}){super(s,t),this._schema=e}async update(e){await this._updateParquetFileInfos(await this._getParquetFileNames()),this._schema=e}async _resolveFileUrl(e){return e}async _getParquetFileNames(){return this._schema.urls.filter(e=>!e.endsWith(".json"))}async _getStatisticsFileName(){return this._schema.urls.find(s)??null}}export{t as UrlsFileProvider};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{PortalParquetFileProvider as r}from"./PortalParquetFileProvider.js";import{PortalParquetResourcesFileProvider as e}from"./PortalParquetLayerFileProvider.js";import{UrlsFileProvider as t}from"./UrlsFileProvider.js";function o(o,a){switch(o.type){case"urls":return new t(o,a);case"portal-parquet-file":return new r(o,a);case"portal-parquet-layer":return new e(o,a)}}export{o as createFileProvider};
2
+ import{PortalParquetFileProvider as r}from"./PortalParquetFileProvider.js";import{PortalParquetResourcesFileProvider as e}from"./PortalParquetLayerFileProvider.js";import{UrlsFileProvider as t}from"./UrlsFileProvider.js";function o(o,a,i){switch(o.type){case"urls":return new t(o,a,i);case"portal-parquet-file":return new r(o,a,i);case"portal-parquet-layer":return new e(o,a,i)}}export{o as createFileProvider};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{__addDisposableResource as e,__disposeResources as t}from"tslib";import{toConst as r}from"../../../../core/compilerUtils.js";import s from"../../../../core/Error.js";import has from"../../../../core/has.js";import i from"../../../../core/Logger.js";import{onAbortOrThrow as o,throwIfAborted as a}from"../../../../core/promiseUtils.js";import{QueueProcessor as n}from"../../../../core/QueueProcessor.js";import{parseWhereClause as u}from"../../../../core/sql.js";import p from"../../../../geometry/SpatialReference.js";import{set as l,create as c,expandWithRect as d,expandWithAABB as f,negativeInfinity as m,fromRect as y}from"../../../../geometry/support/aaBoundingBox.js";import{getQueryResultExtent as h,QueryEngine as g}from"../../data/QueryEngine.js";import{QueryEngineResult as w}from"../../data/QueryEngineResult.js";import{normalizeQueryLike as _}from"../../data/queryUtils.js";import{createFileProvider as I}from"../parquet/createFileProvider.js";import{createDrawingInfo as F}from"./clientSideDefaults.js";import{getParquetFileId as x,getParquetRowId as R}from"./parquetIdUtils.js";import S from"../../../support/Field.js";import v from"../../../support/FieldsIndex.js";import{fromParquetGeometryEncodingJSON as q}from"../../../support/parquetEncodingUtils.js";import{completeParquetLayerInfo as C,fromParquetJSONGeometryType as E,toParquetJSONGeometryType as b}from"../../../support/parquetUtils.js";import{loadParquetModule as O}from"../../../../libs/parquet/loadParquetModule.js";import{createParquetFile as Q,readGeoMetadata as P}from"../../../../libs/parquet/parquet.js";import{FeatureStoreQueryAdapter as T}from"../../../../views/2d/layers/features/FeatureStoreQueryAdapter.js";import{FeatureSnapshotSourceChunk as j}from"../../../../views/2d/layers/features/sources/strategies/chunks/FeatureSnapshotSourceChunk.js";import{FeatureSourceChunkStore as M}from"../../../../views/2d/layers/features/sources/strategies/chunks/SourceChunkStore.js";import{FeatureMetadata as A}from"../../../../views/2d/layers/features/support/FeatureMetadata.js";import{FeatureSetReaderParquet as B}from"../../../../views/2d/layers/features/support/FeatureSetReaderParquet.js";const G=new T,D=4,z="__OBJECTID",W=new TextDecoder;class U{constructor(){this._fileInfos=new Map,this._queue=new n({concurrency:D,process:(e,t)=>this._executeQuery(e,t)}),this._indexMap={}}async load(r){const o=r.spatialReference?p.fromJSON(r.spatialReference):void 0;if(o&&!o.isWGS84&&!o.isWebMercator)throw new s("parquet:unsupported-projection","Only WGS84 and Web Mercator are supported");this._customParameters=r.customParameters,this._provider=I(r.provider,()=>this._customParameters);const a=await C(this._provider,{fields:r.fields?.map(e=>S.fromJSON(e)),geometryEncoding:r.geometryEncoding?q(r.geometryEncoding):null,geometryType:r.geometryType?E(r.geometryType):null,displayOptimization:r.displayOptimization,spatialReference:o});if(!a.fields)throw new s("parquet:unsupported","Fields must be defined");let n;if(a.spatialReference&&a.geometryType){if(!a.spatialReference)throw new s("parquet:unsupported","SpatialReference must be defined");if(!a.spatialReference.isGeographic&&!a.spatialReference.isWebMercator)throw new s("parquet:unsupported-projection","Only WGS84 and Web Mercator are supported");a.spatialReference.isGeographic&&!a.spatialReference.isWGS84&&(i.getLogger("parquet:unsupported-projection").warn("Found a geographic projection that is not WGS84. Handling as WGS84.",{spatialReference:a.spatialReference}),a.spatialReference=p.WGS84),n={geometry:a.geometryEncoding?{geometryType:b(a.geometryType),spatialReference:a.spatialReference.toJSON(),encoding:a.geometryEncoding.toJSON()}:null,displayOptimization:a.displayOptimization}}this.setCustomParameters(r.customParameters),this._geometryInfo=n;const u=await this._provider.getFileList();for(const e of u)this._addFile(e);this._capabilities=H(await this._getFileStatistics());const f=this._fileInfos.values().next().value;if(!f)return{layerDefinition:{},capabilities:H(null)};const y=await f,{fields:h}=a;if(null==h)throw new s("parquet-layer:missing-metadata","Unable to create parquet source: cannot infer fields",h);h.push(new S({name:z,type:"oid",alias:z}));for(const e of h){const t=y.file.columnForFieldName(e.name);null!=t&&(this._indexMap[e.name]=t)}const g=new v(h.map(e=>e.toJSON()));this._fieldsIndex=g;const w=b(a.geometryType??"point");if(this._metadata=A.createFeature({fieldsIndex:g.toJSON(),geometryType:w,hasZ:!1,hasM:!1,featureIdInfo:{type:"object-id",fieldName:"rowId"},subtypes:null,subtypeField:null,types:null,typeIdField:null,globalIdField:null,spatialReference:a.spatialReference,outSpatialReference:null,timeInfo:null,timeReferenceUnknownClient:null,dateFieldsTimeZone:null}),this._queryEngineParams={fieldsIndex:this._metadata.fieldsIndex,geometryType:w,featureIdInfo:{type:"object-id",fieldName:"rowId"},hasM:!1,hasZ:!1,spatialReference:a.spatialReference?.toJSON()??{wkid:4326},aggregateAdapter:null,timeInfo:null,definitionExpression:null},a.spatialReference){const e=await this._getFileInfos();this._fullExtent=V(e,a.spatialReference.toJSON())}if(null==this._fullExtent&&"location"===a.geometryEncoding?.type){const{xField:r,yField:s}=a.geometryEncoding,i=l(c(),m);for(const o of await this._getFileInfos())for(const a of o.file.rowGroups()){const o={stack:[],error:void 0,hasError:!1};try{const t=e(o,a.columnDescriptorForAttribute(r),!1),n=e(o,a.columnDescriptorForAttribute(s),!1),u=[t.minValue(),n.minValue(),t.maxValue(),n.maxValue()];d(i,u),a.free()}catch(_){o.error=_,o.hasError=!0}finally{t(o)}}this._fullExtent={xmin:i[0],ymin:i[1],xmax:i[3],ymax:i[4],spatialReference:a.spatialReference?.toJSON()}}return{capabilities:this._capabilities,layerDefinition:{fields:a.fields?.map(e=>e.toJSON()),drawingInfo:F(w),extent:this._fullExtent??void 0,geometryType:w,geometryEncoding:a.geometryEncoding?.toJSON(),displayOptimization:a.displayOptimization}}}destroy(){for(const e of this._fileInfos.values())e.then(e=>e.file.free);this._fileInfos.clear(),this._queue.destroy()}setCustomParameters(e){this._customParameters=e}getIndexMap(){return this._indexMap}async getFilesIds(){const e=[];for await(const t of this._fileInfos.values())e.push(t.id);return e}async getFileId(e){const t=this._fileInfos.get(e);if(!t)throw new Error(`InternalError: File ${e} does not exist`);return(await t).id}async updateFileProvider(e){const t=I(e,()=>this._customParameters),r=await t.getFileList();this._provider=t,await this._updateFiles(new Set(r))}async queryFeatures(e,t){this._validateQuery(e),L(e)||(e.resultRecordCount=e.resultRecordCount?Math.min(e.resultRecordCount,8e3):8e3,e.resultOffset=e.resultOffset??0),(e.outStatistics||e.returnDistinctValues)&&(e.returnGeometry=void 0);return(await this._enqueueQuery(e,t)).createQueryResponse()}async queryFeatureCount(e,t){const r=await _(e,null,this._queryEngineParams.spatialReference);if(this._validateQuery(r),!N(r))return this._getFeatureCount();r.outFields=void 0,r.returnGeometry=void 0;return(await this._enqueueQuery(r,t)).createQueryResponseForCount()}async queryObjectIds(e,t){const r=await _(e,null,this._queryEngineParams.spatialReference);if(this._validateQuery(r),!N(r))return Array.from({length:await this._getFeatureCount()},(e,t)=>t);r.resultRecordCount=r.resultRecordCount?Math.min(r.resultRecordCount,8e3):8e3,r.resultOffset=r.resultOffset??0,r.returnGeometry=void 0,r.outFields=void 0;return(await this._enqueueQuery(r,t)).items.map(e=>e.getObjectId())}async queryExtent(e,t){const s=await _(e,null,this._queryEngineParams.spatialReference);if(this._validateQuery(s),this._fullExtent&&!N(s))return{count:await this._getFeatureCount(),extent:this._fullExtent};const i=r(this._metadata.spatialReference);s.returnGeometry=!0,s.outFields=void 0;const o=l(c(),m),a=c(),n=await this._enqueueQuery(s,t);let u=0;for(const r of n.items)r.getBounds(a)&&(f(o,a),u+=1);return{count:u,extent:h(o,i,s.outSR?r(s.outSR):i,i,!1)}}async queryStream(e,t,r){if(!r.signal)throw new Error("InternalError: AbortSignal must be passed");const s=await this._getFileInfoById(e),i=(await O()).Query.new();"tile"===t.type&&(i.setExtent(t.extent),i.setQuantizationTransform(t.transform),i.setScale(t.scale)),i.setOutFields(t.outFields.filter(e=>null!=this._indexMap[e])),i.setOutSpatialReference(t.outSpatialReference.wkid),i.setReturnGeometry(!0),t.where&&await this._setWhereClause(i,s.file,t.where);const a=await s.file.executeQuery(i,r.signal),n=s.streamIdCounter++,u=o(r.signal,e=>{const t=s.streams.get(n);null!=t&&(t.handle.remove(),s.streams.delete(n))});return s.streams.set(n,{stream:a,handle:u}),n}async getStreamNext(e,t,r){if(!r.signal)throw new Error("InternalError: AbortSignal must be passed");const s=await this._getFileInfoById(e),i=s.streams.get(t);if(!i)return null;const o=await i.stream.next(r.signal);return null==o&&(i.handle.remove(),s.streams.delete(t)),o?.serialize().buffer}async createPatch(e,t,r,s,i){if(!i.signal)throw new Error("InternalError: AbortSignal must be passed");const o=await this._getFileInfoById(e);return(await o.file.createChunkPatch(t,r,s,i.signal)).serialize().buffer}async _updateFiles(e){for(const[t,r]of this._fileInfos.entries())e.has(t)?e.delete(t):(r.then(e=>e.file.free()),this._fileInfos.delete(t));await Promise.all(Array.from(e.values(),e=>this._addFile(e)))}async _getFileInfos(){return Promise.all(Array.from(this._fileInfos.values()))}async _getFileInfoById(e){for await(const t of this._fileInfos.values())if(t.id===e)return t;throw new Error(`InternalError: File ${e} does not exist`)}async _getFileStatistics(){if(!this._fileInfos.size)return null;const e=(await this._getFileInfos()).reduce((e,t)=>e+t.file.byteLength(),0);return{featureCount:await this._getFeatureCount(),byteLength:e}}async _getFile(e){for(const t of await this._getFileInfos())if(t.id===e)return t.file;throw new Error(`InternalError: File ${e} does not exist`)}_addFile(e){const t=this._fileInfos.size;this._fileInfos.set(e,this._createFileInfo(e,t))}async _createFileInfo(e,t){return{id:t,file:await Q(e,{geometryInfo:this._geometryInfo,provider:this._provider}),streamIdCounter:0,streams:new Map}}async _getFeatureCount(){return(await this._getFileInfos()).reduce((e,t)=>e+t.file.numRows(),0)}_validateQuery(e){if(!this._capabilities.query.supportsStatistics&&e.outStatistics)throw new s("parquet:unsupported","Statistics queries are not supported",{query:e});if(!this._capabilities.query.supportsOrderBy&&e.orderByFields?.length)throw new s("parquet:unsupported","Queries using orderBy are not supported",{query:e});if(!this._capabilities.query.supportsDistinct&&e.returnDistinctValues)throw new s("parquet:unsupported","Queries using returnDistinctValues are not supported",{query:e})}async _setWhereClause(e,t,r){const i=this._indexMap,o=this._fieldsIndex,a={getAttribute(e,r){const s=t.readAttribute(e.rowGroup,e.row,i[r]);if(null==s)return null;const a=o.get(r);return"esriFieldTypeString"===a.type||"esriFieldTypeDateOnly"===a.type||"esriFieldTypeTimeOnly"===a.type||"esriFieldTypeTimestampOffset"===a.type?W.decode(s):s}},n=await u(r,this._fieldsIndex);if(!n.isStandardized)throw new s("sql-parse-error","expression is not standardized");const p=(e,t)=>n.testFeatureCompiled({rowGroup:e,row:t},a,null);e.setWhere(r),e.setWhereEvaluator(p),e.setWhereFields(n.fieldNames)}async*_fetchChunks(e,t){const r=await O();for(const s of await this._getFileInfos()){const i=r.Query.new();i.setOutFields(e.fields),i.setReturnGeometry(e.returnGeometry),e.where&&await this._setWhereClause(i,s.file,e.where);const o=await s.file.executeQuery(i),n=[],u=o.next(t);for(let e=0;e<D;e++)n.push(o.next(t));let p=await u;for(;null!=p;){a(t);const e=new B(this._metadata,this._indexMap,p,s.id),r=k([new j(e,null,0,!1)],this._queryEngineParams),i=n.shift();n.push(o.next(t)),yield r,p=await i}}}_enqueueQuery(e,t){return this._queue.push(e,t)}async _executeQuery(e,t){const r=await this._getReadParams(e);if(e.where=void 0,e.objectIds?.length){const r=new Map;for(const t of e.objectIds){const e=x(t),s=R(t);let i=r.get(e);i||(i=[],r.set(e,i)),i.push(s)}const s=[];for(const[i,o]of r.entries()){const r=await this._executeFileIdQuery(e,i,o,t);for(const e of r)s.push(e)}return new w(s,e,{fieldsIndex:this._fieldsIndex,geometryType:this._metadata.geometryType,spatialReference:this._queryEngineParams.spatialReference,hasM:!1,hasZ:!1,featureAdapter:G,featureIdInfo:this._queryEngineParams.featureIdInfo})}let s=e.resultRecordCount??await this._getFeatureCount(),i=e.resultOffset??0;e.resultRecordCount=void 0,e.resultOffset=void 0;const o=[];for await(const a of this._fetchChunks(r,t)){const r=await a.executeQueryForOpaqueFeatures(e,t);if(r.length>i){const t=r.slice(i,Math.min(i+s,r.length));for(const e of t)o.push(e);if(i=0,s-=t.length,0===s)return new w(o,e,{fieldsIndex:this._fieldsIndex,geometryType:this._metadata.geometryType,spatialReference:this._queryEngineParams.spatialReference,hasM:!1,hasZ:!1,featureAdapter:G,featureIdInfo:this._queryEngineParams.featureIdInfo})}else i-=r.length}return new w(o,e,{fieldsIndex:this._fieldsIndex,geometryType:this._metadata.geometryType,spatialReference:this._queryEngineParams.spatialReference,hasM:!1,hasZ:!1,featureAdapter:G,featureIdInfo:this._queryEngineParams.featureIdInfo})}async _executeFileIdQuery(e,t,r,s){const i=await this._getReadParams(e),o=(await O()).Query.new();o.setOutFields(i.fields),o.setReturnGeometry(i.returnGeometry),o.setIds(new Uint32Array(r));const a=await this._getFile(t),n=await a.executeQuery(o,s);let u=await n.next(s),p=0;const l=[];for(;null!=u;){const e=new B(this._metadata,this._indexMap,u,t),r=new j(e,null,p++,!1);l.push(r),u=await n.next(s)}return k(l,this._queryEngineParams).executeQueryForOpaqueFeatures(e,s)}async _getReadParams(e){const t=new Set;if(e.outStatistics)for(const r of e.outStatistics)null!=r.onStatisticField&&t.add(r.onStatisticField);if(e.outFields)for(const r of e.outFields)t.add(r);return{fields:(t.has("*")?this._fieldsIndex.fields.map(e=>e.name):Array.from(t)).filter(e=>null!=this._indexMap[e]),returnGeometry:!!e.returnGeometry||!!e.geometry,where:e.where}}}function N(e){for(const t in e){const r=t;switch(r){case"resultOffset":case"resultRecordCount":case"aggregateIds":case"distance":case"gdbVersion":case"geometry":case"having":case"timeExtent":case"objectIds":case"historicMoment":case"where":return null!=e[r]}}return!1}function k(e,t){const r=new M;for(const s of e)r.insert(s);return new g({...t,featureStore:r})}function J(e){switch(e.length){case 4:return y(c(),e);case 6:return e;default:throw new s("parquet:protocol-violation","Invalid Geoparquet file. BoundingBox size must be 4 or 6.",{bbox:e})}}function V(e,t){const r=l(c(),m);for(const s of e){const e=P(s.file);if(!e)return null;const t=e.columns[e.primary_column];if(!t.bbox)return null;const i=J(t.bbox);f(r,i)}return{xmin:r[0],ymin:r[1],xmax:r[3],ymax:r[4],spatialReference:t}}function H(e){const t=e?.featureCount;let r=!1;return null!=t&&t<has("parquetlayer-full-query-feature-count")&&(r=!0),{analytics:{supportsCacheHint:!1},attachment:null,data:{isVersioned:!1,isBranchVersioned:!1,supportedCurveTypes:[],supportsAttachment:!1,supportsM:!1,supportsTrueCurve:!1,supportsZ:!1},metadata:{supportsAdvancedFieldProperties:!1},operations:{supportsCalculate:!1,supportsTruncate:!1,supportsValidateSql:!1,supportsAdd:!1,supportsDelete:!1,supportsEditing:!1,supportsChangeTracking:!1,supportsQuery:!0,supportsQueryBins:!1,supportsQueryPivot:!1,supportsQueryAnalytics:!1,supportsQueryAttachments:!1,supportsQueryTopFeatures:!1,supportsResizeAttachments:!1,supportsSync:!1,supportsUpdate:!1,supportsExceedsLimitStatistics:!1,supportsAsyncConvert3D:!1},query:{maxRecordCount:8e3,maxRecordCountFactor:void 0,maxUniqueIDCount:void 0,relativeTimeBinWindow:void 0,standardMaxRecordCount:void 0,standardMaxRecordCountNoGeometry:void 0,supportsStatisticsAggregatedIds:!1,supportsCacheHint:!1,supportsCentroid:!0,supportsCentroidOnDegeneratedQuantizedGeometry:!1,supportsCurrentUser:!1,supportsDegeneratedQuantizedGeometry:!1,supportsDisjointSpatialRelationship:!1,supportsDistance:!1,supportsOutDistance:!1,supportsDistinct:r,supportsExtent:!1,supportsFormatPBF:!1,supportsFormatPBFWithCurves:!1,supportsGeometryProperties:!1,supportsHavingClause:!1,supportsHistoricMoment:!1,supportsMaxRecordCountFactor:!1,supportsOrderBy:r,supportsPagination:!0,supportsPaginationOnAggregatedQueries:!1,supportsPercentileStatistics:!1,supportsQuantization:!0,supportsQuantizationEditMode:!1,supportsQueryByAnonymous:!1,supportsQueryByOthers:!1,supportsQueryGeometry:!1,supportsResultType:!1,supportsReturnMesh:!1,supportsReturnExceededLimitGeometries:!1,supportsStandardizedQueriesOnly:!1,supportsTopFeaturesQuery:!1,supportsStatistics:r,supportsSpatialAggregationStatistics:!1,supportedSpatialAggregationStatistics:{envelope:!1,centroid:!1,convexHull:!1},supportsDefaultSpatialReference:!1,supportsFullTextSearch:!1,supportsCompactGeometry:!1,supportsSqlExpression:!1,supportsTrueCurve:!1,tileMaxRecordCount:void 0},queryAttributeBins:{supportsDate:!1,supportsFixedInterval:!1,supportsAutoInterval:!1,supportsFixedBoundaries:!1,supportsStackBy:!1,supportsSplitBy:!1,supportsSnapToData:!1,supportsReturnFullIntervalBin:!1,supportsFirstDayOfWeek:!1,supportsNormalization:!1},queryRelated:{supportsCount:!1,supportsOrderBy:!1,supportsPagination:!1,supportsCacheHint:!1},queryTopFeatures:{supportsCacheHint:!1},editing:{supportsDeleteByAnonymous:!1,supportsDeleteByOthers:!1,supportsGeometryUpdate:!1,supportsGlobalId:!1,supportsTrueCurveUpdate:!1,supportsTrueCurveUpdateByTrueCurveClientsOnly:!0,supportsReturnServiceEditsInSourceSpatialReference:!1,supportsRollbackOnFailure:!1,supportsUpdateByAnonymous:!1,supportsUpdateByOthers:!1,supportsUploadWithItemId:!1,supportsUpdateWithoutM:!1,supportsAsyncApplyEdits:!1,zDefault:void 0}}}function L(e){return!!(e.objectIds?.length||e.outStatistics||e.orderByFields?.length||e.returnDistinctValues)}export{U as default};
2
+ import{__addDisposableResource as e,__disposeResources as t}from"tslib";import{toConst as r}from"../../../../core/compilerUtils.js";import s from"../../../../core/Error.js";import has from"../../../../core/has.js";import i from"../../../../core/Logger.js";import{onAbortOrThrow as a,throwIfAborted as n}from"../../../../core/promiseUtils.js";import{QueueProcessor as o}from"../../../../core/QueueProcessor.js";import{parseWhereClause as u}from"../../../../core/sql.js";import l from"../../../../geometry/SpatialReference.js";import{set as p,create as c,expandWithAABB as d,expandWithRect as f,negativeInfinity as m}from"../../../../geometry/support/aaBoundingBox.js";import{getQueryResultExtent as h,QueryEngine as y}from"../../data/QueryEngine.js";import{queryBinsCapabilities as g,queryCapabilities as _}from"../../data/QueryEngineCapabilities.js";import{QueryEngineResult as w}from"../../data/QueryEngineResult.js";import{normalizeQueryLike as x}from"../../data/queryUtils.js";import{createFileProvider as I}from"../parquet/createFileProvider.js";import{createDrawingInfo as F}from"./clientSideDefaults.js";import{getParquetFileId as S,getParquetRowId as R}from"./parquetIdUtils.js";import q from"../../../support/Field.js";import v from"../../../support/FieldsIndex.js";import{fromParquetGeometryEncodingJSON as C}from"../../../support/parquetEncodingUtils.js";import{completeParquetLayerInfo as E,fromParquetJSONGeometryType as O,toParquetJSONGeometryType as b}from"../../../support/parquetUtils.js";import{loadParquetModule as P}from"../../../../libs/parquet/loadParquetModule.js";import{FeatureStoreQueryAdapter as Q}from"../../../../views/2d/layers/features/FeatureStoreQueryAdapter.js";import{FeatureSnapshotSourceChunk as T}from"../../../../views/2d/layers/features/sources/strategies/chunks/FeatureSnapshotSourceChunk.js";import{FeatureSourceChunkStore as j}from"../../../../views/2d/layers/features/sources/strategies/chunks/SourceChunkStore.js";import{FeatureMetadata as N}from"../../../../views/2d/layers/features/support/FeatureMetadata.js";import{FeatureSetReaderParquet as A}from"../../../../views/2d/layers/features/support/FeatureSetReaderParquet.js";const M=new Q,B=4,G="__OBJECTID",D=new TextDecoder,z=8e3,k=8,V=2,W=20;class U{constructor(e,t){this._files=e,this._createFileStream=t,this._fileIndex=0,this._streamIndex=0,this._streams=[],this._pending=new Set,this._resolvedCount=0}async next(e){for(await this._fill(e);this._pending.size>0;){n(e),await this._fill(e);const t=await J(this._pending);if(this._pending.delete(t.read),this._resolvedCount++,null!=t.chunk)return t.chunk}return null}async _fill(e){for(this._removeDone();this._pending.size<k;){const t=this._getOrCreateNextStream(e);if(null==t)return;this._pending.add(t.read(e))}}_getOrCreateNextStream(e){const t=this._resolvedCount>=k?k:V;if(this._fileIndex<this._files.length&&this._streams.length<t){const t=this._files[this._fileIndex++],r=new Z(t.id,this._createFileStream(t,e));return this._streams.push(r),r}return this._getNextStream()}_getNextStream(){const e=this._streams.length;for(let t=0;t<e;t++){const r=(this._streamIndex+t)%e,s=this._streams[r];if(s.canRead)return this._streamIndex=(r+1)%e,s}return null}_removeDone(){let e=this._streamIndex;for(let t=this._streams.length-1;t>=0;t--)this._streams[t].done&&(this._streams.splice(t,1),t<e&&e--);this._streamIndex=this._streams.length>0?e%this._streams.length:0}}function J(e){return Promise.race(Array.from(e,async e=>({read:e,chunk:await e})))}class Z{constructor(e,t){this._fileId=e,this._stream=t,this._readCount=0,this._reachedEnd=!1}get canRead(){return!this._reachedEnd}get done(){return this._reachedEnd&&0===this._readCount}async read(e){this._readCount++;try{const t=await this._stream,r=await t.next(e);return null==r?(this._reachedEnd=!0,null):{fileId:this._fileId,chunk:r}}finally{this._readCount--}}}class L{constructor(){this._queue=new o({concurrency:B,process:(e,t)=>this._executeQuery(e,t)}),this._streams=new Map,this._streamIdCounter=0,this._indexMap={}}async load(e){const t=e.spatialReference?l.fromJSON(e.spatialReference):void 0;if(t&&!t.isWGS84&&!t.isWebMercator)throw new s("parquet:unsupported-projection","Only WGS84 and Web Mercator are supported");this._customParameters=e.customParameters,this._provider=I(e.provider,null,()=>this._customParameters);const r=await this._provider.getMetadata(),a=await E(r,{fields:e.fields?.map(e=>q.fromJSON(e)),geometryEncoding:e.geometryEncoding?C(e.geometryEncoding):null,geometryType:e.geometryType?O(e.geometryType):null,displayOptimization:e.displayOptimization,spatialReference:t});if(!a.fields)throw new s("parquet:unsupported","Fields must be defined");let n;if(a.spatialReference&&a.geometryType){if(!a.spatialReference)throw new s("parquet:unsupported","SpatialReference must be defined");if(!a.spatialReference.isGeographic&&!a.spatialReference.isWebMercator)throw new s("parquet:unsupported-projection","Only WGS84 and Web Mercator are supported");a.spatialReference.isGeographic&&!a.spatialReference.isWGS84&&(i.getLogger("parquet:unsupported-projection").warn("Found a geographic projection that is not WGS84. Handling as WGS84.",{spatialReference:a.spatialReference}),a.spatialReference=l.WGS84),n={geometry:a.geometryEncoding?{geometryType:b(a.geometryType),spatialReference:a.spatialReference.toJSON(),encoding:a.geometryEncoding.toJSON()}:null,displayOptimization:a.displayOptimization}}this.setCustomParameters(e.customParameters),this._displayOptimization=a.displayOptimization,await this._provider.updateGeometryInfo(n),this._capabilities=ie(await this._getFileStatistics());const o=await this._provider.getFiles();if(!o.length)return{layerDefinition:{},capabilities:ie(null)};const u=await o[0].file;a.file=u;const{fields:p}=a;if(null==p)throw new s("parquet-layer:missing-metadata","Unable to create parquet source: cannot infer fields",p);p.push(new q({name:G,type:"oid",alias:G}));for(const s of p){const e=u.getColumnId(s.name);null!=e&&(this._indexMap[s.name]=e)}const c=new v(p.map(e=>e.toJSON()));this._fieldsIndex=c;const d=b(a.geometryType??"point");return this._metadata=N.createFeature({fieldsIndex:c.toJSON(),geometryType:d,hasZ:!1,hasM:!1,featureIdInfo:{type:"object-id",fieldName:"rowId"},subtypes:null,subtypeField:null,types:null,typeIdField:null,globalIdField:null,spatialReference:a.spatialReference,outSpatialReference:null,timeInfo:null,timeReferenceUnknownClient:null,dateFieldsTimeZone:null}),this._queryEngineParams={fieldsIndex:this._metadata.fieldsIndex,geometryType:d,featureIdInfo:{type:"object-id",fieldName:"rowId"},hasM:!1,hasZ:!1,spatialReference:a.spatialReference?.toJSON()??{wkid:4326},aggregateAdapter:null,timeInfo:null,definitionExpression:null},this._fullExtent=r?.extent?r.extent:await this._tryDeriveParquetFullExtent(a),{capabilities:this._capabilities,layerDefinition:{fields:a.fields?.map(e=>e.toJSON()),drawingInfo:F(d),extent:this._fullExtent??void 0,geometryType:d,geometryEncoding:a.geometryEncoding?.toJSON(),displayOptimization:a.displayOptimization}}}destroy(){this._provider.destroy(),this._queue.destroy();for(const{handle:e}of this._streams.values())e.remove();this._streams.clear()}setCustomParameters(e){this._customParameters=e}getIndexMap(){return this._indexMap}async updateFileProvider(e){this._provider=I(e,this._provider.getGeometryInfo(),()=>this._customParameters)}async queryFeatures(e,t){this._validateQuery(e),ae(e)||(e.resultRecordCount=e.resultRecordCount?Math.min(e.resultRecordCount,z):z,e.resultOffset=e.resultOffset??0),(e.outStatistics||e.returnDistinctValues)&&(e.returnGeometry=void 0);return(await this._enqueueQuery(e,t)).createQueryResponse()}async queryFeatureCount(e,t){const r=await x(e,null,this._queryEngineParams.spatialReference);if(this._validateQuery(r),!H(r))return this._getFeatureCount();r.outFields=void 0,r.returnGeometry=void 0;return(await this._enqueueQuery(r,t)).createQueryResponseForCount()}async queryObjectIds(e,t){const r=await x(e,null,this._queryEngineParams.spatialReference);if(this._validateQuery(r),!H(r))return Array.from({length:await this._getFeatureCount()},(e,t)=>t);r.resultRecordCount=r.resultRecordCount?Math.min(r.resultRecordCount,8e3):8e3,r.resultOffset=r.resultOffset??0,r.returnGeometry=void 0,r.outFields=void 0;return(await this._enqueueQuery(r,t)).items.map(e=>e.getObjectId())}async queryExtent(e,t){const s=await x(e,null,this._queryEngineParams.spatialReference);if(this._validateQuery(s),this._fullExtent&&!H(s))return{count:await this._getFeatureCount(),extent:this._fullExtent};const i=r(this._metadata.spatialReference);s.returnGeometry=!0,s.outFields=void 0;const a=p(c(),m),n=c(),o=await this._enqueueQuery(s,t);let u=0;for(const r of o.items)r.getBounds(n)&&(d(a,n),u+=1);return{count:u,extent:h(a,i,s.outSR?r(s.outSR):i.toJSON(),i,!1)}}async queryStream(e,t){if(!t.signal)throw new Error("InternalError: AbortSignal must be passed");const r=await this._getCandidateFiles(e),s=new U(r,async(t,r)=>{const s=await t.file,i=await this._createParquetQuery(s,e);return s.executeQuery(i,r)}),i=this._streamIdCounter++,n=a(t.signal,e=>{const t=this._streams.get(i);null!=t&&(t.handle.remove(),this._streams.delete(i))});return this._streams.set(i,{stream:s,handle:n}),i}async getStreamNext(e,t){if(!t.signal)throw new Error("InternalError: AbortSignal must be passed");const r=this._streams.get(e);if(!r)return{result:null};const s=await r.stream.next(t.signal);if(null==s)return r.handle.remove(),this._streams.delete(e),{result:null};const i=s.chunk.serialize().buffer,a={fileId:s.fileId,buffer:i};return i instanceof ArrayBuffer?{result:a,transferList:[i]}:{result:a}}async createPatch(e,t,r,s,i){if(!i.signal)throw new Error("InternalError: AbortSignal must be passed");const a=await this._getFileInfoById(e),n=await a.file;return(await n.createChunkPatch(t,r,s,i.signal)).serialize().buffer}async _getCandidateFiles(e){const t=await this._provider.getFiles(),r=await this._getSpatialFilePruning(e);if(null==r)return t;const s=t.filter(e=>this._mayIncludeFileForSpatialPruning(e,r));return"xz"===r.type?$(s,r):s}async _getSpatialFilePruning(e){if("tile"!==e.type)return null;const t=this._displayOptimization,r=t?.index;if(null==r)return null;const s=e.outSpatialReference.wkid;if(null==r.wkid||null==s)return null;const i=r.wkid,a=await P();switch(r.type){case"xz":return{type:"xz",fieldName:r.code,intersects:(t,n)=>a.queryIntersectsXZStatistics(r.fullExtent,e.extent,s,i,W,t,n)};case"z":return{type:"xy",xFieldName:r.xColumn,yFieldName:r.yColumn,intersects:(t,r,n,o)=>a.queryIntersectsXYStatistics(e.extent,s,i,t,r,n,o)}}}_mayIncludeFileForSpatialPruning(e,t){switch(t.type){case"xz":{const r=X(e,t);return null==r||te(r,t)}case"xy":{const{xStatistics:r,yStatistics:s}=ee(e,t);return null==r||null==s||re(r,s,t)}}}async _tryDeriveParquetFullExtent(r){if(!r.spatialReference)return null;if(null==this._fullExtent&&"location"===r.geometryEncoding?.type){const i=await this._provider.getFiles(),{xField:a,yField:n}=r.geometryEncoding,o=p(c(),m);for(const r of i){const i=await r.file;for(const r of i.rowGroups()){const i={stack:[],error:void 0,hasError:!1};try{const t=e(i,r.columnDescriptorForAttribute(a),!1),s=e(i,r.columnDescriptorForAttribute(n),!1),u=[t.minValue(),s.minValue(),t.maxValue(),s.maxValue()];f(o,u),r.free()}catch(s){i.error=s,i.hasError=!0}finally{t(i)}}}return{xmin:o[0],ymin:o[1],xmax:o[3],ymax:o[4],spatialReference:r.spatialReference?.toJSON()}}return null}async _getFileInfoById(e){const t=await this._provider.getFiles();for(const r of t)if(r.id===e)return r;throw new Error(`InternalError: File ${e} does not exist`)}async _getFileStatistics(){return{featureCount:await this._getFeatureCount(),byteLength:await this._getByteLength()}}async _getFile(e){return(await this._getFileInfoById(e)).file}async _createParquetQuery(e,t){const r=(await P()).Query.new();return"tile"===t.type&&(r.setExtent(t.extent),r.setQuantizationTransform(t.transform),r.setScale(t.scale)),r.setOutFields(t.outFields.filter(e=>null!=this._indexMap[e])),r.setOutSpatialReference(t.outSpatialReference.wkid),r.setReturnGeometry(t.returnGeometry),t.where&&await this._setWhereClause(r,e,t.where),r}async _getFeatureCount(){return(await this._provider.getFiles()).map(e=>e.statistics.rowCount).reduce((e,t)=>e+t,0)}async _getByteLength(){return(await this._provider.getFiles()).map(e=>e.statistics.byteSize).reduce((e,t)=>e+t,0)}_validateQuery(e){if(!this._capabilities.query.supportsStatistics&&e.outStatistics)throw new s("parquet:unsupported","Statistics queries are not supported",{query:e});if(!this._capabilities.query.supportsOrderBy&&e.orderByFields?.length)throw new s("parquet:unsupported","Queries using orderBy are not supported",{query:e});if(!this._capabilities.query.supportsDistinct&&e.returnDistinctValues)throw new s("parquet:unsupported","Queries using returnDistinctValues are not supported",{query:e})}async _setWhereClause(e,t,r){const i=this._indexMap,a=this._fieldsIndex,n={getAttribute(e,r){const s=t.readAttribute(e.rowGroup,e.row,i[r]);if(null==s)return null;const n=a.get(r);return"esriFieldTypeString"===n.type||"esriFieldTypeDateOnly"===n.type||"esriFieldTypeTimeOnly"===n.type||"esriFieldTypeTimestampOffset"===n.type?D.decode(s):s}},o=await u(r,this._fieldsIndex);if(!o.isStandardized)throw new s("sql-parse-error","expression is not standardized");const l=(e,t)=>o.testFeatureCompiled({rowGroup:e,row:t},n,null);e.setWhere(r),e.setWhereEvaluator(l),e.setWhereFields(o.fieldNames)}async*_fetchChunks(e,t){const r=await P(),s=await this._provider.getFiles();for(const i of s){const s=await i.file,a=r.Query.new();a.setOutFields(e.fields),a.setReturnGeometry(e.returnGeometry),e.where&&await this._setWhereClause(a,s,e.where);const o=await s.executeQuery(a),u=[],l=o.next(t);for(let e=0;e<B;e++)u.push(o.next(t));let p=await l;for(;null!=p;){n(t);const e=new A(this._metadata,this._indexMap,p,i.id),r=Y([new T(e,null,0,!1)],this._queryEngineParams),s=u.shift();u.push(o.next(t)),yield r,p=await s}}}_enqueueQuery(e,t){return this._queue.push(e,t)}async _executeQuery(e,t){const r=await this._getReadParams(e);if(e.where=void 0,e.objectIds?.length){const r=new Map;for(const t of e.objectIds){const e=S(t),s=R(t);let i=r.get(e);i||(i=[],r.set(e,i)),i.push(s)}const s=[];for(const[i,a]of r.entries()){const r=await this._executeFileIdQuery(e,i,a,t);for(const e of r)s.push(e)}return new w(s,e,{fieldsIndex:this._fieldsIndex,geometryType:this._metadata.geometryType,spatialReference:this._queryEngineParams.spatialReference,hasM:!1,hasZ:!1,featureAdapter:M,featureIdInfo:this._queryEngineParams.featureIdInfo})}let s=e.resultRecordCount??await this._getFeatureCount(),i=e.resultOffset??0;e.resultRecordCount=void 0,e.resultOffset=void 0;const a=[];for await(const n of this._fetchChunks(r,t)){const r=await n.executeQueryForOpaqueFeatures(e,t);if(r.length>i){const t=r.slice(i,Math.min(i+s,r.length));for(const e of t)a.push(e);if(i=0,s-=t.length,0===s)return new w(a,e,{fieldsIndex:this._fieldsIndex,geometryType:this._metadata.geometryType,spatialReference:this._queryEngineParams.spatialReference,hasM:!1,hasZ:!1,featureAdapter:M,featureIdInfo:this._queryEngineParams.featureIdInfo})}else i-=r.length}return new w(a,e,{fieldsIndex:this._fieldsIndex,geometryType:this._metadata.geometryType,spatialReference:this._queryEngineParams.spatialReference,hasM:!1,hasZ:!1,featureAdapter:M,featureIdInfo:this._queryEngineParams.featureIdInfo})}async _executeFileIdQuery(e,t,r,s){const i=await this._getReadParams(e),a=(await P()).Query.new();a.setOutFields(i.fields),a.setReturnGeometry(i.returnGeometry),a.setIds(new Uint32Array(r));const n=await this._getFile(t),o=await n.executeQuery(a,s);let u=await o.next(s),l=0;const p=[];for(;null!=u;){const e=new A(this._metadata,this._indexMap,u,t),r=new T(e,null,l++,!1);p.push(r),u=await o.next(s)}return Y(p,this._queryEngineParams).executeQueryForOpaqueFeatures(e,s)}async _getReadParams(e){const t=new Set;if(e.outStatistics)for(const r of e.outStatistics)null!=r.onStatisticField&&t.add(r.onStatisticField);if(e.outFields)for(const r of e.outFields)t.add(r);return{fields:(t.has("*")?this._fieldsIndex.fields.map(e=>e.name):Array.from(t)).filter(e=>null!=this._indexMap[e]),returnGeometry:!!e.returnGeometry||!!e.geometry,where:e.where}}}function H(e){for(const t in e){const r=t;switch(r){case"resultOffset":case"resultRecordCount":case"aggregateIds":case"distance":case"gdbVersion":case"geometry":case"having":case"timeExtent":case"objectIds":case"historicMoment":case"where":return null!=e[r]}}return!1}function Y(e,t){const r=new j;for(const s of e)r.insert(s);return new y({...t,featureStore:r})}function X(e,t){return e.statistics.statistics.get(t.fieldName)??null}function $(e,t){return e.slice().sort((e,r)=>{const s=K(e,t),i=K(r,t);return s===i?0:s<i?-1:1})}function K(e,t){const r=X(e,t);if(null==r)return Number.POSITIVE_INFINITY;const s=se(r.minValue),i=se(r.maxValue);return null==s||null==i||i<s?Number.POSITIVE_INFINITY:i-s}function ee(e,t){return{xStatistics:e.statistics.statistics.get(t.xFieldName)??null,yStatistics:e.statistics.statistics.get(t.yFieldName)??null}}function te(e,t){const r=se(e.minValue),s=se(e.maxValue);return null==r||null==s||t.intersects(r,s)}function re(e,t,r){const s=se(e.minValue),i=se(e.maxValue),a=se(t.minValue),n=se(t.maxValue);return null==s||null==i||null==a||null==n||r.intersects(s,i,a,n)}function se(e){return"number"==typeof e&&Number.isFinite(e)?e:null}function ie(e){const t=e?.featureCount;let r=!1;return null!=t&&t<has("parquetlayer-full-query-feature-count")&&(r=!0),{analytics:{supportsCacheHint:!1},attachment:null,data:{isVersioned:!1,isBranchVersioned:!1,supportedCurveTypes:[],supportsAttachment:!1,supportsM:!1,supportsTrueCurve:!1,supportsZ:!1},metadata:{supportsAdvancedFieldProperties:!1},operations:{supportsCalculate:!1,supportsTruncate:!1,supportsValidateSql:!1,supportsAdd:!1,supportsDelete:!1,supportsEditing:!1,supportsChangeTracking:!1,supportsQuery:!0,supportsQueryBins:!1,supportsQueryPivot:!1,supportsQueryAnalytics:!1,supportsQueryAttachments:!1,supportsQueryTopFeatures:!1,supportsResizeAttachments:!1,supportsSync:!1,supportsUpdate:!1,supportsExceedsLimitStatistics:!1,supportsAsyncConvert3D:!1},query:{..._,maxRecordCount:z,supportsDistinct:r,supportsOrderBy:r,supportsStatistics:r,supportsSpatialAggregationStatistics:r,supportedSpatialAggregationStatistics:{envelope:r,centroid:r,convexHull:r}},queryAttributeBins:r?g:{supportsDate:!1,supportsFixedInterval:!1,supportsAutoInterval:!1,supportsFixedBoundaries:!1,supportsStackBy:!1,supportsSplitBy:!1,supportsSnapToData:!1,supportsReturnFullIntervalBin:!1,supportsFirstDayOfWeek:!1,supportsNormalization:!1},queryRelated:{supportsCount:!1,supportsOrderBy:!1,supportsPagination:!1,supportsCacheHint:!1},queryTopFeatures:{supportsCacheHint:!1},editing:{supportsDeleteByAnonymous:!1,supportsDeleteByOthers:!1,supportsGeometryUpdate:!1,supportsGlobalId:!1,supportsTrueCurveUpdate:!1,supportsTrueCurveUpdateByTrueCurveClientsOnly:!0,supportsReturnServiceEditsInSourceSpatialReference:!1,supportsRollbackOnFailure:!1,supportsUpdateByAnonymous:!1,supportsUpdateByOthers:!1,supportsUploadWithItemId:!1,supportsUpdateWithoutM:!1,supportsAsyncApplyEdits:!1,zDefault:void 0}}}function ae(e){return!!(e.objectIds?.length||e.outStatistics||e.orderByFields?.length||e.returnDistinctValues)}export{L as default};
@@ -329,17 +329,29 @@ export abstract class FeatureLayerBase {
329
329
  */
330
330
  accessor globalIdField: string | null | undefined;
331
331
  /**
332
- * Indicates whether the client-side features in the layer have `M` (measurement) values.
333
- * Use the `supportsM` property in the FeatureLayer's [capabilities.data](https://developers.arcgis.com/javascript/latest/references/core/layers/mixins/FeatureLayerBase/#capabilities)
334
- * object to verify if `M` values are supported on [feature service](https://developers.arcgis.com/rest/services-reference/feature-service.htm) features.
332
+ * Indicates whether the layer has m aware geometries.
333
+ * Use the `supportsM` property in the layer's [DataCapabilities](https://developers.arcgis.com/javascript/latest/references/core/layers/types/#DataCapabilities)
334
+ * to verify if m-values are supported by the layer.
335
+ *
336
+ * - When `true`: The layer has m aware features. M-values are part of the geometry.
337
+ * - When `false`: The layer does not have m aware features. M-values are not part of the geometry.
338
+ *
339
+ * @see [returnM](https://developers.arcgis.com/javascript/latest/references/core/layers/mixins/FeatureLayerBase/#returnM) for details regarding fetching m-values with features from a layer
340
+ * @see [Linear referencing](https://pro.arcgis.com/en/pro-app/latest/help/data/linear-referencing/introduction-to-linear-referencing.htm)
335
341
  */
336
342
  accessor hasM: boolean;
337
343
  /**
338
- * Indicates whether the client-side features in the layer have `Z` (elevation) values.
339
- * Refer to [elevationInfo](https://developers.arcgis.com/javascript/latest/references/core/layers/mixins/FeatureLayerBase/#elevationInfo) for details regarding placement and rendering
340
- * of features with z-values in 3D [SceneViews](https://developers.arcgis.com/javascript/latest/references/core/views/SceneView/).
341
- * Use the `supportsZ` property in the FeatureLayer's [capabilities.data](https://developers.arcgis.com/javascript/latest/references/core/layers/mixins/FeatureLayerBase/#capabilities)
342
- * object to verify if `Z` values are supported on [feature service](https://developers.arcgis.com/rest/services-reference/feature-service.htm) features.
344
+ * Indicates whether the layer has z aware geometries. Use the `supportsZ` property in the layer's [DataCapabilities](https://developers.arcgis.com/javascript/latest/references/core/layers/types/#DataCapabilities)
345
+ * to verify if z-values are supported by the layer.
346
+ *
347
+ * - When `true`: The layer has z aware features. Z-values are part of the geometry.
348
+ * - When `false`: The layer does not have z aware features. Z-values are not part of the geometry.
349
+ * > [!NOTE]
350
+ * > - Refer to [elevationInfo](https://developers.arcgis.com/javascript/latest/references/core/layers/mixins/FeatureLayerBase/#elevationInfo) for details regarding placement and rendering
351
+ * > of features with z-values in 3D [SceneViews](https://developers.arcgis.com/javascript/latest/references/core/views/SceneView/).
352
+ *
353
+ * @see [returnZ](https://developers.arcgis.com/javascript/latest/references/core/layers/mixins/FeatureLayerBase/#returnZ) for details regarding fetching z-values with features from a layer
354
+ * @see [Point.z](https://developers.arcgis.com/javascript/latest/references/core/geometry/Point/#z) for more information on how z-values are represented in geometries
343
355
  */
344
356
  accessor hasZ: boolean;
345
357
  /**
@@ -452,17 +464,29 @@ export abstract class FeatureLayerBase {
452
464
  */
453
465
  get relationships(): Relationship[] | null | undefined;
454
466
  /**
455
- * When `true`, indicates that M values will be returned. When
456
- * `false`, indicates that M values will never be returned. The layer view
457
- * determines whether to include M values in feature queries when the
458
- * property value is `undefined`.
467
+ * Determines whether m-values (measure) are returned in feature geometries. For 2D views, support was added at version 5.1 and the behavior is as follows:
468
+ * - When `undefined` (default): Fetches m-values if they are needed for rendering or labeling, or layer property interacts with the geometry.
469
+ * Otherwise, m-values are excluded from feature queries.
470
+ * - When `true`: Fetches m-values with the geometry, ensuring they are available on the client.
471
+ * - When `false`: Excludes m-values from feature queries. M-values are not part of geometries.
472
+ *
473
+ * > [!WARNING]
474
+ * >
475
+ * > 3D views do not support m-values. They will not be fetched or returned in 3D scene queries, regardless of this setting.
476
+ *
477
+ * @see [FeatureLayerBase.hasM](https://developers.arcgis.com/javascript/latest/references/core/layers/mixins/FeatureLayerBase/#hasM)
459
478
  */
460
479
  accessor returnM: boolean | null | undefined;
461
480
  /**
462
- * When `true`, indicates that z-values will always be returned. When
463
- * `false`, indicates that z-values will never be returned. The layer view
464
- * determines whether to include z-values in feature queries when the
465
- * property value is `undefined`.
481
+ * Determines whether z-values (elevation) are returned in feature geometries. For 3D views, z-values are always fetched regardless of the `returnZ` setting.
482
+ * For 2D views, support was added at version 5.1 and the behavior is as follows:
483
+ * - When `undefined` (default): Fetches z-values if they are needed for rendering or labeling, or layer property interacts with the geometry.
484
+ * Otherwise, z-values are excluded from feature queries.
485
+ * - When `true`: Fetches z-values with the geometry, ensuring they are available on the client.
486
+ * - When `false`: Excludes z-values from feature queries. Z-values are not part of geometries.
487
+ *
488
+ * @see [FeatureLayerBase.hasZ](https://developers.arcgis.com/javascript/latest/references/core/layers/mixins/FeatureLayerBase/#hasZ)
489
+ * @see [Geometry.hasZ](https://developers.arcgis.com/javascript/latest/references/core/geometry/Geometry/#hasZ)
466
490
  */
467
491
  accessor returnZ: boolean | null | undefined;
468
492
  /**
@@ -64,7 +64,8 @@ export interface TemporalLayerProperties extends Partial<Pick<TemporalLayer, "us
64
64
  * for the layer. The `timeInfo` property, along with its `startField` and `endField` properties, must be set at the
65
65
  * time of layer initialization if it is being set for a
66
66
  * [CSVLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/CSVLayer/),
67
- * [GeoJSONLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/GeoJSONLayer/) or
67
+ * [GeoJSONLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/GeoJSONLayer/),
68
+ * [OGCFeatureLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/OGCFeatureLayer/) or
68
69
  * [FeatureLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/FeatureLayer/)
69
70
  * initialized from [client-side features](https://developers.arcgis.com/javascript/latest/references/core/layers/FeatureLayer/#creating-a-featurelayer).
70
71
  * The [fullTimeExtent](https://developers.arcgis.com/javascript/latest/references/core/layers/support/TimeInfo/#fullTimeExtent) for `timeInfo` is
@@ -201,7 +202,8 @@ export abstract class TemporalLayer {
201
202
  * for the layer. The `timeInfo` property, along with its `startField` and `endField` properties, must be set at the
202
203
  * time of layer initialization if it is being set for a
203
204
  * [CSVLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/CSVLayer/),
204
- * [GeoJSONLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/GeoJSONLayer/) or
205
+ * [GeoJSONLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/GeoJSONLayer/),
206
+ * [OGCFeatureLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/OGCFeatureLayer/) or
205
207
  * [FeatureLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/FeatureLayer/)
206
208
  * initialized from [client-side features](https://developers.arcgis.com/javascript/latest/references/core/layers/FeatureLayer/#creating-a-featurelayer).
207
209
  * The [fullTimeExtent](https://developers.arcgis.com/javascript/latest/references/core/layers/support/TimeInfo/#fullTimeExtent) for `timeInfo` is
@@ -0,0 +1,44 @@
1
+ import type AnnotationLayer from "../AnnotationLayer.js";
2
+ import type { ClonableMixin } from "../../core/Clonable.js";
3
+ import type { IdentifiableMixin, IdentifiableMixinProperties } from "../../core/Identifiable.js";
4
+ import type { Loadable, LoadableMixinProperties } from "../../core/Loadable.js";
5
+
6
+ export interface AnnotationSublayerProperties extends LoadableMixinProperties, IdentifiableMixinProperties, Partial<Pick<AnnotationSublayer, "parent" | "subtypeCode" | "title" | "visible">> {}
7
+
8
+ /**
9
+ * Represents a sublayer in a [AnnotationLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/AnnotationLayer/). Each AnnotationSublayer
10
+ * is not a standalone service, but rather each sublayer corresponds to one subtype in the source feature service.
11
+ *
12
+ * The AnnotationSublayers are identified by their unique [subtypeCode](https://developers.arcgis.com/javascript/latest/references/core/layers/support/AnnotationSublayer/#subtypeCode). You can configure the properties of each sublayer while
13
+ * initializing the AnnotationLayer
14
+ *
15
+ * @since 5.1
16
+ * @see [AnnotationLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/AnnotationLayer/)
17
+ */
18
+ export default class AnnotationSublayer extends AnnotationSublayerSuperclass {
19
+ constructor(properties?: AnnotationSublayerProperties);
20
+ /** The [AnnotationLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/AnnotationLayer/) to which the sublayer belongs. */
21
+ accessor parent: AnnotationLayer | null | undefined;
22
+ /**
23
+ * The unique identifier representing the [AnnotationSublayer](https://developers.arcgis.com/javascript/latest/references/core/layers/support/AnnotationSublayer/)
24
+ * created from the [AnnotationLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/AnnotationLayer/).
25
+ */
26
+ accessor subtypeCode: number;
27
+ /**
28
+ * The title of the layer used to identify it in places such as the [layer list](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-layer-list/).
29
+ * The title is set to the subtype description of the layer.
30
+ */
31
+ accessor title: string | null | undefined;
32
+ get type(): "annotation-sublayer";
33
+ /**
34
+ * Indicates if the layer is visible in the [View](https://developers.arcgis.com/javascript/latest/references/core/views/View/). When `false`,
35
+ * the annotations corresponding to this sublayer will not be visible in the view.
36
+ *
37
+ * @default true
38
+ * @example
39
+ * // The layer is no longer visible in the view
40
+ * layer.visible = false;
41
+ */
42
+ accessor visible: boolean;
43
+ }
44
+ declare const AnnotationSublayerSuperclass: typeof Loadable & typeof IdentifiableMixin & typeof ClonableMixin
@@ -0,0 +1,2 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
+ import{__decorate as o}from"tslib";import{ClonableMixin as t}from"../../core/Clonable.js";import{IdentifiableMixin as e}from"../../core/Identifiable.js";import{Loadable as r}from"../../core/Loadable.js";import{property as p,subclass as i}from"../../core/accessorSupport/decorators.js";let s=class extends(t(e(r))){constructor(o){super(o),this.type="annotation-sublayer",this.parent=null,this.subtypeCode=null,this.title=null,this.visible=!0}};o([p({readOnly:!0,json:{read:!1}})],s.prototype,"type",void 0),o([p({clonable:!1})],s.prototype,"parent",void 0),o([p({type:Number})],s.prototype,"subtypeCode",void 0),o([p({type:String})],s.prototype,"title",void 0),o([p({type:Boolean})],s.prototype,"visible",void 0),s=o([i("esri.layers.support.AnnotationSublayer")],s);export{s as default};
@@ -11,7 +11,7 @@ export interface GeometryEncodingLocationProperties extends Partial<Pick<Geometr
11
11
  * For other coordinate field names, set the [xField](https://developers.arcgis.com/javascript/latest/references/core/layers/support/GeometryEncodingLocation/#xField) and [yField](https://developers.arcgis.com/javascript/latest/references/core/layers/support/GeometryEncodingLocation/#yField) properties to the names of the fields
12
12
  * containing the latitude and longitude values respectively.
13
13
  *
14
- * @since 4.33
14
+ * @since 5.1
15
15
  * @see [ParquetLayer.geometryEncoding](https://developers.arcgis.com/javascript/latest/references/core/layers/ParquetLayer/#geometryEncoding)
16
16
  * @see [getParquetLayerInfo()](https://developers.arcgis.com/javascript/latest/references/core/layers/support/parquetUtils/#getParquetLayerInfo)
17
17
  */
@@ -1,13 +1,14 @@
1
1
  import type { ClonableMixin } from "../../core/Clonable.js";
2
2
  import type { JSONSupport } from "../../core/JSONSupport.js";
3
3
 
4
- /** @since 5.0 */
4
+ /** @since 5.1 */
5
5
  export interface GeometryEncodingWkbProperties extends Partial<Pick<GeometryEncodingWkb, "field" | "orientation">> {}
6
6
 
7
7
  /**
8
8
  * Well-Known Binary (WKB) is a binary format used to encode geometries in a column.
9
9
  *
10
- * @since 4.33
10
+ * @beta
11
+ * @since 5.1
11
12
  * @see [ParquetLayer.geometryEncoding](https://developers.arcgis.com/javascript/latest/references/core/layers/ParquetLayer/#geometryEncoding)
12
13
  * @see [getParquetLayerInfo()](https://developers.arcgis.com/javascript/latest/references/core/layers/support/parquetUtils/#getParquetLayerInfo)
13
14
  */
@@ -7,7 +7,6 @@ export interface ParquetFilesDataProperties {
7
7
  /**
8
8
  * Collection of urls for Parquet files.
9
9
  *
10
- * @deprecated since 5.1. Use [data](https://developers.arcgis.com/javascript/latest/references/core/layers/ParquetLayer/#data) with [ParquetFilesData](https://developers.arcgis.com/javascript/latest/references/core/layers/support/ParquetFilesData/) instead.
11
10
  * @example
12
11
  * // Legacy file-backed alias
13
12
  * const layer = new ParquetLayer({
@@ -21,8 +20,20 @@ export interface ParquetFilesDataProperties {
21
20
  }
22
21
 
23
22
  /**
24
- * File-backed data source configuration for a [ParquetLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/ParquetLayer/).
23
+ * Sets one or more Parquet files as the [data](https://developers.arcgis.com/javascript/latest/references/core/layers/ParquetLayer/#data) source for a [ParquetLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/ParquetLayer/).
25
24
  *
25
+ * @example
26
+ * // Create a Parquet layer from multiple Parquet files
27
+ * const layer = new ParquetLayer({
28
+ * data: new ParquetFilesData({
29
+ * urls: [
30
+ * "https://example.com/path/to/parquetfile1.parquet",
31
+ * "https://example.com/path/to/parquetfile2.parquet"
32
+ * ]
33
+ * })
34
+ * });
35
+ * @since 5.1
36
+ * @beta
26
37
  * @see [ParquetLayer.data](https://developers.arcgis.com/javascript/latest/references/core/layers/ParquetLayer/#data)
27
38
  */
28
39
  export default class ParquetFilesData extends ParquetFilesDataSuperclass {
@@ -30,7 +41,6 @@ export default class ParquetFilesData extends ParquetFilesDataSuperclass {
30
41
  /**
31
42
  * Collection of urls for Parquet files.
32
43
  *
33
- * @deprecated since 5.1. Use [data](https://developers.arcgis.com/javascript/latest/references/core/layers/ParquetLayer/#data) with [ParquetFilesData](https://developers.arcgis.com/javascript/latest/references/core/layers/support/ParquetFilesData/) instead.
34
44
  * @example
35
45
  * // Legacy file-backed alias
36
46
  * const layer = new ParquetLayer({
@@ -9,8 +9,19 @@ export interface ParquetPortalItemDataProperties {
9
9
  }
10
10
 
11
11
  /**
12
- * Portal-item-backed data source configuration for a [ParquetLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/ParquetLayer/).
12
+ * Sets an ArcGIS Online [portalItem](https://developers.arcgis.com/javascript/latest/references/core/portal/PortalItem/) as the [data](https://developers.arcgis.com/javascript/latest/references/core/layers/ParquetLayer/#data)
13
+ * source for a [ParquetLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/ParquetLayer/).
13
14
  *
15
+ * @example
16
+ * // Create a parquet layer from arcgis online portal item
17
+ * const layer = new ParquetLayer({
18
+ * data: new ParquetPortalItemData({
19
+ * portalItem: {
20
+ * id: "6ab6f959c1684eb5a54db91644a89747",
21
+ * },
22
+ * }),
23
+ * });
24
+ * @since 5.1
14
25
  * @beta
15
26
  * @see [ParquetLayer.data](https://developers.arcgis.com/javascript/latest/references/core/layers/ParquetLayer/#data)
16
27
  */
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import e from"../../core/Error.js";import{urlToObject as r,getFilename as a}from"../../core/urlUtils.js";import{parse as t,parseNonStandardSublayerUrl as s}from"./arcgisLayerUrl.js";import{findAssociatedFeatureService as n}from"./associatedFeatureServiceUtils.js";import{getLayerModuleType as o,fetchFeatureService as l}from"./fetchService.js";import{layersLoaderMap as i}from"./layersLoader.js";import{getPreferredUrl as c,sceneServiceLayerTypeToClassName as u}from"./layerUtils.js";import{requestServiceJSON as y}from"../../request/serviceJSON.js";const f="KHR_gaussian_splatting",m={FeatureLayer:!0,SceneLayer:!0,VideoLayer:!0};async function p(e){const{properties:r,url:a}=e,t={...r,url:a},s=await w(a,r?.customParameters),{Constructor:n,layerId:o,sourceJSON:l,parsedUrl:i,layers:c,tables:u}=s;if(c.length+u.length===0)return null!=o&&(t.layerId=o),null!=l&&(t.sourceJSON=l),new n(t);const y=new(0,(await import("../GroupLayer.js")).default)({title:i.title});return await v(y,s,t),y}function d(e,r){return e?e.find(({id:e})=>e===r):null}function S(e,r,a,t,s){const n={...s,layerId:r};return null!=e&&(n.url=e),null!=a&&(n.sourceJSON=a),"sublayerTitleMode"in t.prototype&&(n.sublayerTitleMode="service-name"),new t(n)}async function v(e,r,a){const t=r.sublayerConstructorProvider;for(const{id:s,serverUrl:n}of r.layers){const o=d(r.sublayerInfos,s),l=S(n,s,o,(o&&t?.(o))??r.Constructor,a);e.add(l)}if(r.tables.length){const t=await g("FeatureLayer");r.tables.forEach(({id:s,serverUrl:n})=>{const o=S(n,s,d(r.tableInfos,s),t,a);e.tables.add(o)})}}async function w(r,a){let s=t(r);if(null==s&&(s=await b(r,a)),null==s)throw new e("arcgis-layers:url-mismatch","The url '${url}' is not a valid arcgis resource",{url:r});const{serverType:n,sublayer:l}=s;let i;const f={FeatureServer:"FeatureLayer",KnowledgeGraphServer:"KnowledgeGraphLayer",StreamServer:"StreamLayer",VectorTileServer:"VectorTileLayer",VideoServer:"VideoLayer"},p="FeatureServer"===n,d="SceneServer"===n,S={parsedUrl:s,Constructor:null,layerId:p||d?l??void 0:void 0,layers:[],tables:[]};switch(n){case"MapServer":if(null!=l){const{type:t}=await y(r,{customParameters:a});switch(i="FeatureLayer",t){case"Annotation Layer":i="AnnotationLayer";break;case"Dimension Layer":i="DimensionFeatureLayer";break;case"Catalog Layer":i="CatalogLayer";break;case"Annotation SubLayer":case"Catalog Dynamic Group Layer":throw new e("arcgis-layers:unsupported",`fromUrl() not supported for "${t}" layers`)}}else{i=await P(r,a)?"TileLayer":"MapImageLayer"}break;case"ImageServer":{const e=await y(r,{customParameters:a}),{tileInfo:t,cacheType:s}=e;i=t?"LERC"!==t?.format?.toUpperCase()||s&&"elevation"!==s.toLowerCase()?"ImageryTileLayer":"ElevationLayer":"ImageryLayer";break}case"SceneServer":{const e=await y(s.url.path,{customParameters:a});if(i="SceneLayer",e){const r=e?.layers;if("Voxel"===e?.layerType)i="VoxelLayer";else if(r?.length){const e=r[0]?.layerType;null!=e&&null!=u[e]&&(i=u[e])}}break}case"3DTilesServer":i=await U(r,a)?"GaussianSplatLayer":"IntegratedMesh3DTilesLayer";break;case"FeatureServer":if(i="FeatureLayer",null!=l){const e=await y(r,{customParameters:a});S.sourceJSON=e,S.preferredUrl=c(),i=o(e.type)}break;default:i=f[n]}if(m[i]&&null==l){const e=await L(r,n,a);p&&(S.preferredUrl=e.preferredUrl,S.sublayerInfos=e.layerInfos,S.tableInfos=e.tableInfos);if(1!==e.layers.length+e.tables.length)S.layers=e.layers,S.tables=e.tables,p&&e.layerInfos?.length&&(S.sublayerConstructorProvider=await O(e.layerInfos));else if(p||d){const r=e.layerInfos?.[0]??e.tableInfos?.[0];if(S.layerId=e.layers[0]?.id??e.tables[0]?.id,S.sourceJSON=r,p){const e=r?.type;i=o(e)}}}return S.Constructor=await g(i),S}async function b(e,t){const n=await y(e,{customParameters:t});let o=null,l=null;const i=n.type;if("Feature Layer"===i||"Table"===i?(o="FeatureServer",l=n.id??null):"indexedVector"===i?o="VectorTileServer":n.hasOwnProperty("mapName")?o="MapServer":n.hasOwnProperty("bandCount")&&n.hasOwnProperty("pixelSizeX")?o="ImageServer":n.hasOwnProperty("maxRecordCount")&&n.hasOwnProperty("allowGeometryUpdates")?o="FeatureServer":n.hasOwnProperty("streamUrls")?o="StreamServer":h(n)?(o="SceneServer",l=n.id):n.hasOwnProperty("layers")&&h(n.layers?.[0])&&(o="SceneServer"),!o)return null;const c=null!=l?s(e):null;return{title:null!=c&&n.name||a(e),serverType:o,sublayer:l,url:{path:null!=c?c.serviceUrl:r(e).path}}}function h(e){return null!=e&&e.hasOwnProperty("store")&&e.hasOwnProperty("id")&&"number"==typeof e.id}async function L(e,r,a){let t,s,n,o=!1;switch(r){case"FeatureServer":{const r=await l(e,{customParameters:a});n=c(e,{preferredHost:r.preferredHost}),o=!!r.layersJSON,t=r.layersJSON||r.serviceJSON;break}case"SceneServer":{const r=await I(e,a);t=r.serviceInfo,s=r.tableServerUrl;break}default:t=await y(e,{customParameters:a})}const i=t?.layers,u=t?.tables;return{preferredUrl:n,layers:i?.map(e=>({id:e.id})).reverse()||[],tables:u?.map(e=>({serverUrl:s,id:e.id})).reverse()||[],layerInfos:o?i:[],tableInfos:o?u:[]}}async function I(e,r){const a=await y(e,{customParameters:r}),t=a.layers?.[0];if(!t)return{serviceInfo:a};try{const{serverUrl:t}=await n(e),s=await y(t,{customParameters:r}).catch(()=>null);return s&&(a.tables=s.tables),{serviceInfo:a,tableServerUrl:t}}catch{return{serviceInfo:a}}}async function g(e){return(0,i[e])()}async function P(e,r){return(await y(e,{customParameters:r})).tileInfo}async function U(e,r){const a=await y(e,{customParameters:r}),t=a.extensions?.["3DTILES_content_gltf"];return!0===t?.extensionsRequired?.includes(f)}async function O(e){if(!e.length)return;const r=new Set,a=[];for(const{type:n}of e)r.has(n)||(r.add(n),a.push(g(o(n))));const t=await Promise.all(a),s=new Map;return Array.from(r).forEach((e,r)=>{s.set(e,t[r])}),e=>s.get(e.type)}export{p as fromUrl};
2
+ import e from"../../core/Error.js";import{urlToObject as r,getFilename as a}from"../../core/urlUtils.js";import{parse as t,parseNonStandardSublayerUrl as s}from"./arcgisLayerUrl.js";import{findAssociatedFeatureService as n}from"./associatedFeatureServiceUtils.js";import{getLayerModuleType as o,fetchFeatureService as l}from"./fetchService.js";import{layersLoaderMap as i}from"./layersLoader.js";import{getPreferredUrl as c,sceneServiceLayerTypeToClassName as u}from"./layerUtils.js";import{requestServiceJSON as y}from"../../request/serviceJSON.js";const f="KHR_gaussian_splatting",m={FeatureLayer:!0,SceneLayer:!0,VideoLayer:!0};async function p(e){const{properties:r,url:a}=e,t={...r,url:a},s=await w(a,r?.customParameters),{Constructor:n,layerId:o,sourceJSON:l,parsedUrl:i,layers:c,tables:u}=s;if(c.length+u.length===0)return null!=o&&(t.layerId=o),null!=l&&(t.sourceJSON=l),new n(t);const y=new(0,(await import("../GroupLayer.js")).default)({title:i.title});return await v(y,s,t),y}function d(e,r){return e?e.find(({id:e})=>e===r):null}function S(e,r,a,t,s){const n={...s,layerId:r};return null!=e&&(n.url=e),null!=a&&(n.sourceJSON=a),"sublayerTitleMode"in t.prototype&&(n.sublayerTitleMode="service-name"),new t(n)}async function v(e,r,a){const t=r.sublayerConstructorProvider;for(const{id:s,serverUrl:n}of r.layers){const o=d(r.sublayerInfos,s),l=S(n,s,o,(o&&t?.(o))??r.Constructor,a);e.add(l)}if(r.tables.length){const t=await g("FeatureLayer");r.tables.forEach(({id:s,serverUrl:n})=>{const o=S(n,s,d(r.tableInfos,s),t,a);e.tables.add(o)})}}async function w(r,a){let s=t(r);if(null==s&&(s=await b(r,a)),null==s)throw new e("arcgis-layers:url-mismatch","The url '${url}' is not a valid arcgis resource",{url:r});const{serverType:n,sublayer:l}=s;let i;const f={FeatureServer:"FeatureLayer",KnowledgeGraphServer:"KnowledgeGraphLayer",StreamServer:"StreamLayer",VectorTileServer:"VectorTileLayer",VideoServer:"VideoLayer"},p="FeatureServer"===n,d="SceneServer"===n,S={parsedUrl:s,Constructor:null,layerId:p||d?l??void 0:void 0,layers:[],tables:[]};switch(n){case"MapServer":if(null!=l){const{type:t}=await y(r,{customParameters:a});switch(i="FeatureLayer",t){case"Annotation Layer":i="AnnotationLayer";break;case"Dimension Layer":i="DimensionFeatureLayer";break;case"Catalog Layer":i="CatalogLayer";break;case"Annotation SubLayer":case"Catalog Dynamic Group Layer":throw new e("arcgis-layers:unsupported",`fromUrl() not supported for "${t}" layers`)}}else{i=await P(r,a)?"TileLayer":"MapImageLayer"}break;case"ImageServer":{const e=await y(r,{customParameters:a}),{tileInfo:t,cacheType:s}=e;i=t?"LERC"!==t?.format?.toUpperCase()||s&&"elevation"!==s.toLowerCase()?"ImageryTileLayer":"ElevationLayer":"ImageryLayer";break}case"SceneServer":{const e=await y(s.url.path,{customParameters:a});if(i="SceneLayer",e){const r=e?.layers;if("Voxel"===e?.layerType)i="VoxelLayer";else if(r?.length){const e=r[0]?.layerType;null!=e&&null!=u[e]&&(i=u[e])}}break}case"3DTilesServer":i=await U(r,a)?"GaussianSplatLayer":"IntegratedMesh3DTilesLayer";break;case"FeatureServer":if(i="FeatureLayer",null!=l){const e=await y(r,{customParameters:a});S.sourceJSON=e,S.preferredUrl=c(),i=o(e.type)}break;default:i=f[n]}if(m[i]&&null==l){const e=await L(r,n,a);p&&(S.preferredUrl=e.preferredUrl,S.sublayerInfos=e.layerInfos,S.tableInfos=e.tableInfos);if(1!==e.layers.length+e.tables.length)S.layers=e.layers,S.tables=e.tables,p&&e.layerInfos?.length&&(S.sublayerConstructorProvider=await O(e.layerInfos));else if(p||d){const r=e.layerInfos?.[0]??e.tableInfos?.[0];if(S.layerId=e.layers[0]?.id??e.tables[0]?.id,S.sourceJSON=r,p){const e=r?.type;i=o(e)}}}return S.Constructor=await g(i),S}async function b(e,t){const n=await y(e,{customParameters:t});let o=null,l=null;const i=n.type;if("Feature Layer"===i||"Table"===i?(o="FeatureServer",l=n.id??null):"indexedVector"===i?o="VectorTileServer":n.hasOwnProperty("mapName")?o="MapServer":n.hasOwnProperty("bandCount")&&n.hasOwnProperty("pixelSizeX")?o="ImageServer":n.hasOwnProperty("maxRecordCount")&&n.hasOwnProperty("allowGeometryUpdates")?o="FeatureServer":n.hasOwnProperty("streamUrls")?o="StreamServer":h(n)?(o="SceneServer",l=n.id):n.hasOwnProperty("layers")&&h(n.layers?.[0])&&(o="SceneServer"),!o)return null;const c=null!=l?s(e):null;return{title:null!=c&&n.name||a(e),serverType:o,sublayer:l,url:{path:null!=c?c.serviceUrl:r(e).path}}}function h(e){return null!=e&&e.hasOwnProperty("store")&&e.hasOwnProperty("id")&&"number"==typeof e.id}async function L(e,r,a){let t,s,n,o=!1;switch(r){case"FeatureServer":{const r=await l(e,{customParameters:a});n=c(e,{preferredHost:r.preferredHost}),o=!!r.layersJSON,t=r.layersJSON||r.serviceJSON;break}case"SceneServer":{const r=await I(e,a);t=r.serviceInfo,s=r.tableServerUrl;break}default:t=await y(e,{customParameters:a})}const i=t?.layers,u=t?.tables;return{preferredUrl:n,layers:i?.map(e=>({id:e.id})).reverse()||[],tables:u?.map(e=>({serverUrl:s,id:e.id})).reverse()||[],layerInfos:o?i:[],tableInfos:o?u:[]}}async function I(e,r){const a=await y(e,{customParameters:r}),t=a.layers?.[0];if(!t)return{serviceInfo:a};try{const{serverUrl:t}=await n(e),s=await y(t,{customParameters:r}).catch(()=>null);return s&&(a.tables=s.tables),{serviceInfo:a,tableServerUrl:t}}catch{return{serviceInfo:a}}}async function g(e){return(0,i[e])()}async function P(e,r){return(await y(e,{customParameters:r})).tileInfo}async function U(e,r){const a=await y(e,{customParameters:r}),t=a.extensions?.["3DTILES_content_gltf"];return!0===t?.extensionsRequired?.includes(f)}async function O(e){if(!e.length)return;const r=new Set,a=[];for(const{type:n}of e)r.has(n)||(r.add(n),a.push(g(o(n))));const t=await Promise.all(a),s=new Map;return Array.from(r).forEach((e,r)=>{s.set(e,t[r])}),e=>s.get(e.type)}export{p as fromUrl,U as isGaussianSplat3DTilesUrl};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{excludeTables as e}from"../../core/accessorSupport/layerContainerType.js";import r from"../../geometry/Extent.js";import n from"../../geometry/SpatialReference.js";import{w as i}from"../../chunks/persistableUrlUtils.js";import a from"../../symbols/support/ElevationInfo.js";import o from"../../tables/AttributeTableTemplate.js";import{transparencyToOpacity as t}from"../../webdoc/support/opacityUtils.js";const s={type:Boolean,value:!0,json:{origins:{service:{read:!1,write:!1},"web-map":{read:!1,write:!1}},name:"screenSizePerspective",write:{enabled:!0,layerContainerTypes:e}}},l={type:Boolean,value:!0,json:{name:"disablePopup",read:{reader:(e,r)=>!r.disablePopup},write:{enabled:!0,writer(e,r,n){r[n]=!e}}}},p={type:Boolean,value:!0,nonNullable:!0,json:{name:"showLabels",write:{enabled:!0,layerContainerTypes:e}}},y={type:String,json:{origins:{"portal-item":{write:!1}},write:{isRequired:!0,ignoreOrigin:!0,writer:i}}},d={type:Boolean,value:!0,nonNullable:!0,json:{origins:{service:{read:{enabled:!1}}},name:"showLegend",write:{enabled:!0,layerContainerTypes:e}}},m={value:null,type:a,json:{origins:{service:{name:"elevationInfo",write:!0}},name:"layerDefinition.elevationInfo",write:{enabled:!0,layerContainerTypes:e}}};function c(e){return{type:e,readOnly:!0,json:{origins:{service:{read:!0}},read:!1}}}const f={write:{enabled:!0,layerContainerTypes:e},read:!0},w={type:Number,json:{origins:{"web-document":f,"portal-item":{write:{layerContainerTypes:e}}}}},b={...w,json:{...w.json,origins:{"web-document":{...f,write:{enabled:!0,layerContainerTypes:e,target:{opacity:{type:Number},"layerDefinition.drawingInfo.transparency":{type:Number}}}}},read:{source:["layerDefinition.drawingInfo.transparency","drawingInfo.transparency"],reader:(e,r,n)=>n&&"service"!==n.origin||!r.drawingInfo||void 0===r.drawingInfo.transparency?r.layerDefinition?.drawingInfo&&void 0!==r.layerDefinition.drawingInfo.transparency?t(r.layerDefinition.drawingInfo.transparency):void 0:t(r.drawingInfo.transparency)}}},g={type:r,readOnly:!0,json:{origins:{service:{read:{source:["fullExtent","spatialReference"],reader:(e,i)=>{const a=r.fromJSON(e);return null!=i.spatialReference&&"object"==typeof i.spatialReference&&(a.spatialReference=n.fromJSON(i.spatialReference)),a}}}},read:!1}},u={type:String,json:{origins:{service:{read:!1},"portal-item":{read:!1}}}},j={type:Number,json:{origins:{service:{write:{enabled:!1}}},name:"layerDefinition.minScale",write:{layerContainerTypes:e}}},v={type:Number,json:{origins:{service:{write:{enabled:!1}}},name:"layerDefinition.maxScale",write:{layerContainerTypes:e}}},T={json:{write:{ignoreOrigin:!0,layerContainerTypes:e},origins:{"web-map":{read:!1,write:!1}}}},I={type:o,json:{name:"attributeTableInfo",write:!0}};export{I as attributeTableTemplate,m as elevationInfo,u as id,p as labelsVisible,d as legendEnabled,T as listMode,v as maxScale,j as minScale,w as opacity,b as opacityDrawingInfo,l as popupEnabled,c as readOnlyService,g as sceneLayerFullExtent,s as screenSizePerspectiveEnabled,y as url};
2
+ import{JSONMap as e}from"../../core/jsonMap.js";import{excludeTables as r}from"../../core/accessorSupport/layerContainerType.js";import n from"../../geometry/Extent.js";import i from"../../geometry/SpatialReference.js";import{w as a}from"../../chunks/persistableUrlUtils.js";import o from"../../symbols/support/ElevationInfo.js";import t from"../../tables/AttributeTableTemplate.js";import{transparencyToOpacity as s}from"../../webdoc/support/opacityUtils.js";const l={type:Boolean,value:!0,json:{origins:{service:{read:!1,write:!1},"web-map":{read:!1,write:!1}},name:"screenSizePerspective",write:{enabled:!0,layerContainerTypes:r}}},p={type:Boolean,value:!0,json:{name:"disablePopup",read:{reader:(e,r)=>!r.disablePopup},write:{enabled:!0,writer(e,r,n){r[n]=!e}}}},y={type:Boolean,value:!0,nonNullable:!0,json:{name:"showLabels",write:{enabled:!0,layerContainerTypes:r}}},d={type:String,json:{origins:{"portal-item":{write:!1}},write:{isRequired:!0,ignoreOrigin:!0,writer:a}}},m={type:Boolean,value:!0,nonNullable:!0,json:{origins:{service:{read:{enabled:!1}}},name:"showLegend",write:{enabled:!0,layerContainerTypes:r}}},c={value:null,type:o,json:{origins:{service:{name:"elevationInfo",write:!0}},name:"layerDefinition.elevationInfo",write:{enabled:!0,layerContainerTypes:r}}};function w(e){return{type:e,readOnly:!0,json:{origins:{service:{read:!0}},read:!1}}}const f={write:{enabled:!0,layerContainerTypes:r},read:!0},g={type:Number,json:{origins:{"web-document":f,"portal-item":{write:{layerContainerTypes:r}}}}},u={...g,json:{...g.json,origins:{"web-document":{...f,write:{enabled:!0,layerContainerTypes:r,target:{opacity:{type:Number},"layerDefinition.drawingInfo.transparency":{type:Number}}}}},read:{source:["layerDefinition.drawingInfo.transparency","drawingInfo.transparency"],reader:(e,r,n)=>n&&"service"!==n.origin||!r.drawingInfo||void 0===r.drawingInfo.transparency?r.layerDefinition?.drawingInfo&&void 0!==r.layerDefinition.drawingInfo.transparency?s(r.layerDefinition.drawingInfo.transparency):void 0:s(r.drawingInfo.transparency)}}},b={type:n,readOnly:!0,json:{origins:{service:{read:{source:["fullExtent","spatialReference"],reader:(e,r)=>{const a=n.fromJSON(e);return null!=r.spatialReference&&"object"==typeof r.spatialReference&&(a.spatialReference=i.fromJSON(r.spatialReference)),a}}}},read:!1}},j={type:String,json:{origins:{service:{read:!1},"portal-item":{read:!1}}}},v={type:Number,json:{origins:{service:{write:{enabled:!1}}},name:"layerDefinition.minScale",write:{layerContainerTypes:r}}},T={type:Number,json:{origins:{service:{write:{enabled:!1}}},name:"layerDefinition.maxScale",write:{layerContainerTypes:r}}},I={json:{write:{ignoreOrigin:!0,layerContainerTypes:r},origins:{"web-map":{read:!1,write:!1}}}},C={type:t,json:{name:"attributeTableInfo",write:!0}},N=new e({High:"high",Medium:"medium",Low:"low",None:"none"}),h={type:N.apiValues,json:{name:"layerDefinition.barrierWeight",default:"high",read:N.read,write:N.write,origins:{service:{read:!1}}}};export{C as attributeTableTemplate,h as barrierWeight,c as elevationInfo,j as id,y as labelsVisible,m as legendEnabled,I as listMode,T as maxScale,v as minScale,g as opacity,u as opacityDrawingInfo,p as popupEnabled,w as readOnlyService,b as sceneLayerFullExtent,l as screenSizePerspectiveEnabled,d as url};