@arcgis/core 5.2.0-next.87 → 5.2.0-next.89

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 (679) hide show
  1. package/Graphic.js +1 -1
  2. package/arcade/Dictionary.js +1 -1
  3. package/arcade/Feature.js +1 -1
  4. package/arcade/ImmutablePointArray.js +1 -1
  5. package/arcade/Pixel.js +1 -1
  6. package/arcade/Voxel.js +1 -1
  7. package/arcade/arcadeAsyncRuntime.js +1 -1
  8. package/arcade/arcadeCompiler.js +1 -1
  9. package/arcade/arcadeRuntime.js +1 -1
  10. package/arcade/containerUtils.js +1 -1
  11. package/arcade/debug.js +1 -1
  12. package/arcade/deepClone.js +1 -1
  13. package/arcade/featureset/actions/SpatialFilter.js +1 -1
  14. package/arcade/featureset/support/FeatureSet.js +1 -1
  15. package/arcade/functions/centroid.js +1 -1
  16. package/arcade/functions/date.js +1 -1
  17. package/arcade/functions/feature.js +1 -1
  18. package/arcade/functions/featuresetbase.js +1 -1
  19. package/arcade/functions/featuresetgeom.js +1 -1
  20. package/arcade/functions/featuresetstats.js +1 -1
  21. package/arcade/functions/featuresetstring.js +1 -1
  22. package/arcade/functions/fieldStats.js +1 -1
  23. package/arcade/functions/geomasync.js +1 -1
  24. package/arcade/functions/geometry.js +1 -1
  25. package/arcade/functions/geomsync.js +1 -1
  26. package/arcade/functions/knowledgegraph.js +1 -1
  27. package/arcade/functions/maths.js +1 -1
  28. package/arcade/functions/stats.js +1 -1
  29. package/arcade/functions/string.js +1 -1
  30. package/arcade/functions/track.js +1 -1
  31. package/arcade/geometry/adapters/accessor.js +2 -0
  32. package/arcade/geometry/adapters/dehydrated.js +2 -0
  33. package/arcade/geometry/adapters/gx.js +2 -0
  34. package/arcade/geometry/adapters/json.js +2 -0
  35. package/arcade/geometry/adapters/optimized.js +2 -0
  36. package/arcade/geometry/adapters/tuple.js +2 -0
  37. package/arcade/geometry/adapters/utils.js +2 -0
  38. package/arcade/geometry/arrayOfPointsConversions.js +2 -0
  39. package/arcade/geometry/constructors.js +1 -1
  40. package/arcade/geometry/functions.js +1 -1
  41. package/arcade/geometry/isSelfIntersecting.js +2 -0
  42. package/arcade/geometry/nearestCoordinate.js +2 -0
  43. package/arcade/geometry/nearestVertex.js +1 -1
  44. package/arcade/geometry/operators.js +1 -1
  45. package/arcade/geometry/operatorsWorker.js +1 -1
  46. package/arcade/geometry/rotate.js +1 -1
  47. package/arcade/geometry.js +2 -0
  48. package/arcade/languageUtils.js +1 -1
  49. package/arcade.js +1 -1
  50. package/arcgisGlobal.d.ts +1 -0
  51. package/assets/esri/core/workers/RemoteClient.js +1 -1
  52. package/assets/esri/core/workers/chunks/{0b8c9657975388f1e4c8.js → 00181785a180e934bf7c.js} +1 -1
  53. package/assets/esri/core/workers/chunks/{01e648b258efa6408070.js → 0336f4f8498a22347720.js} +1 -1
  54. package/assets/esri/core/workers/chunks/05393b23ab24126d4236.js +1 -0
  55. package/assets/esri/core/workers/chunks/07613ecf13c38ad58b79.js +1 -0
  56. package/assets/esri/core/workers/chunks/08263c07d92c48806834.js +1 -0
  57. package/assets/esri/core/workers/chunks/090ea7a131f8f60203ed.js +1 -0
  58. package/assets/esri/core/workers/chunks/09e01fd1c199be0c8e03.js +1 -0
  59. package/assets/esri/core/workers/chunks/{12d6d73ca1fa55640a4f.js → 0b4a7209b99227a842ad.js} +1 -1
  60. package/assets/esri/core/workers/chunks/0d95f72e1c07ab867d21.js +1 -0
  61. package/assets/esri/core/workers/chunks/0dbbac7a2378728571a7.js +1 -0
  62. package/assets/esri/core/workers/chunks/0f15468ffefd3e9a17b8.js +29 -0
  63. package/assets/esri/core/workers/chunks/13e92f6a9573a2818fb7.js +1 -0
  64. package/assets/esri/core/workers/chunks/159b16f47665f94a0305.js +1 -0
  65. package/assets/esri/core/workers/chunks/15f4f7e34e14e3cf52e6.js +1 -0
  66. package/assets/esri/core/workers/chunks/19e93d4d37018e3ee849.js +1 -0
  67. package/assets/esri/core/workers/chunks/{911f3a1b8dd4bc5c9782.js → 1bf5c0a4bc5a960a3fa2.js} +1 -1
  68. package/assets/esri/core/workers/chunks/1bf967c68d0c795d3fb4.js +1 -0
  69. package/assets/esri/core/workers/chunks/1c378d489c5402888f76.js +1 -0
  70. package/assets/esri/core/workers/chunks/1d1e8d8b1fcf2d9f3dfc.js +1 -0
  71. package/assets/esri/core/workers/chunks/{e5c8f9fef88ca33624e9.js → 1e087fb13b7b0a5d6fec.js} +1 -1
  72. package/assets/esri/core/workers/chunks/1e192ac0533a5c0b5a7a.js +1 -0
  73. package/assets/esri/core/workers/chunks/1f9d6180a96d557838e9.js +1 -0
  74. package/assets/esri/core/workers/chunks/1fe077f57a087c0e9119.js +1 -0
  75. package/assets/esri/core/workers/chunks/20f6e681ccd8bf884b77.js +1 -0
  76. package/assets/esri/core/workers/chunks/212222b64039d436b9a6.js +1 -0
  77. package/assets/esri/core/workers/chunks/22c94f9a69b2157f8dbd.js +1 -0
  78. package/assets/esri/core/workers/chunks/23addf8b11938e0c96e9.js +1 -0
  79. package/assets/esri/core/workers/chunks/25a2e02677a74834c8b5.js +1 -0
  80. package/assets/esri/core/workers/chunks/26ecc841396e5e719b6a.js +1 -0
  81. package/assets/esri/core/workers/chunks/27c0bed59626c7f64125.js +1 -0
  82. package/assets/esri/core/workers/chunks/2bc3e7f394386fa75447.js +1 -0
  83. package/assets/esri/core/workers/chunks/2c9783e3b44986e86797.js +1 -0
  84. package/assets/esri/core/workers/chunks/2ceb07b125c84b51f02a.js +1 -0
  85. package/assets/esri/core/workers/chunks/2cf2f2842c19be84ab4d.js +1 -0
  86. package/assets/esri/core/workers/chunks/2d07d5a9ec67c39ef10c.js +1 -0
  87. package/assets/esri/core/workers/chunks/{a7c715648a07ed70b122.js → 2ec44ebc48beeba11201.js} +1 -1
  88. package/assets/esri/core/workers/chunks/2f2d699b072472fa710e.js +1 -0
  89. package/assets/esri/core/workers/chunks/2f3bbc1f7d4abbbeec2f.js +1 -0
  90. package/assets/esri/core/workers/chunks/30af0f7c4cfa541c9efd.js +1 -0
  91. package/assets/esri/core/workers/chunks/30d816bdeea00f6fa1ca.js +1 -0
  92. package/assets/esri/core/workers/chunks/{39c0a3eb6a870953d530.js → 31a0620a6028e94c7532.js} +3 -3
  93. package/assets/esri/core/workers/chunks/32f11b4aeae1ef00e466.js +1 -0
  94. package/assets/esri/core/workers/chunks/37adb55d9f83faad1712.js +1 -0
  95. package/assets/esri/core/workers/chunks/3869dca884d7ca6488f5.js +1 -0
  96. package/assets/esri/core/workers/chunks/39b6a5222f45cb8dbc94.js +1 -0
  97. package/assets/esri/core/workers/chunks/3a9c6f58a1a065c14017.js +1 -0
  98. package/assets/esri/core/workers/chunks/3aceedec9abfb2fdfa18.js +1 -0
  99. package/assets/esri/core/workers/chunks/3b552afffaa78bf4fe18.js +1 -0
  100. package/assets/esri/core/workers/chunks/{fe06cc2f90b2d551e4c1.js → 3bbd2d4a19c3b7ad82e4.js} +1 -1
  101. package/assets/esri/core/workers/chunks/3de07326da4c47cd2aab.js +1 -0
  102. package/assets/esri/core/workers/chunks/3f5234120d3a14186c1c.js +1 -0
  103. package/assets/esri/core/workers/chunks/3f82410d9f701e7ad8eb.js +1 -0
  104. package/assets/esri/core/workers/chunks/{dbd6bbd3e834ff9d220e.js → 41cf6163758d28fb1968.js} +1 -1
  105. package/assets/esri/core/workers/chunks/45858d1c6487f4a98e40.js +1 -0
  106. package/assets/esri/core/workers/chunks/45c1c90ac6c14657f3ff.js +1 -0
  107. package/assets/esri/core/workers/chunks/46f8c7ae7fb356c3410d.js +1 -0
  108. package/assets/esri/core/workers/chunks/486f1a3b7269ce6c3911.js +1 -0
  109. package/assets/esri/core/workers/chunks/497c5a9c95e9a89ac217.js +1 -0
  110. package/assets/esri/core/workers/chunks/49d36e54644dc2966128.js +1 -0
  111. package/assets/esri/core/workers/chunks/4aefe6fd4d725a107758.js +1 -0
  112. package/assets/esri/core/workers/chunks/4b6f433022a6822706cb.js +1 -0
  113. package/assets/esri/core/workers/chunks/4c7264e3f4156f92d613.js +1 -0
  114. package/assets/esri/core/workers/chunks/4ee99e654dad6f09abee.js +1 -0
  115. package/assets/esri/core/workers/chunks/50525b617ef78086d3c7.js +1 -0
  116. package/assets/esri/core/workers/chunks/{a7727a2377470d586ff9.js → 51c9bd7c03d780fadebc.js} +1 -1
  117. package/assets/esri/core/workers/chunks/5235b9c21ac4156c2375.js +1 -0
  118. package/assets/esri/core/workers/chunks/52422500ca3d6cf2e596.js +1 -0
  119. package/assets/esri/core/workers/chunks/527b87fddf33bb5d519e.js +1 -0
  120. package/assets/esri/core/workers/chunks/{a4bae2396fae48b57047.js → 595edbc1e9bba47d5676.js} +1 -1
  121. package/assets/esri/core/workers/chunks/5af16937904c06fb06f6.js +1 -0
  122. package/assets/esri/core/workers/chunks/5bf65dbfd9c7a5ea187d.js +1 -0
  123. package/assets/esri/core/workers/chunks/5d7a5aa608ed6192b016.js +1 -0
  124. package/assets/esri/core/workers/chunks/5d9c92c4e60a4696fdad.js +1 -0
  125. package/assets/esri/core/workers/chunks/5ed7bc9e6cb7cdee92e2.js +1 -0
  126. package/assets/esri/core/workers/chunks/{272c8ccdbd3dcc14e99b.js → 5ed89c862eee1345e3af.js} +1 -1
  127. package/assets/esri/core/workers/chunks/5fbd7d8d8896a224fff3.js +1 -0
  128. package/assets/esri/core/workers/chunks/607acd9f615f87e14075.js +1 -0
  129. package/assets/esri/core/workers/chunks/62ee6c247f783acabb74.js +1 -0
  130. package/assets/esri/core/workers/chunks/64ce2d060ae7cdd412cf.js +1 -0
  131. package/assets/esri/core/workers/chunks/65f4ca7201e7267bfc81.js +1 -0
  132. package/assets/esri/core/workers/chunks/67efdd296007a809586c.js +1 -0
  133. package/assets/esri/core/workers/chunks/680557b8832fbdab7f46.js +1 -0
  134. package/assets/esri/core/workers/chunks/691434d4c6a38e63d819.js +1 -0
  135. package/assets/esri/core/workers/chunks/{ba67aaa08e4f11e1140a.js → 696cb3bf167327d5b0b9.js} +1 -1
  136. package/assets/esri/core/workers/chunks/69700ed16727ed0c4e3a.js +1 -0
  137. package/assets/esri/core/workers/chunks/6a2d890640b2cd6c5ccb.js +1 -0
  138. package/assets/esri/core/workers/chunks/6b84982dfaf084a61b93.js +1 -0
  139. package/assets/esri/core/workers/chunks/{7343a44a2382a1d68497.js → 6b9dbf43c0659e55c539.js} +1 -1
  140. package/assets/esri/core/workers/chunks/6de5c6af62776e1b9776.js +1 -0
  141. package/assets/esri/core/workers/chunks/71308dca3fd05687e7bd.js +1 -0
  142. package/assets/esri/core/workers/chunks/75bddfe2be64379db8fd.js +1 -0
  143. package/assets/esri/core/workers/chunks/777f2fdf1f4b9f243893.js +1 -0
  144. package/assets/esri/core/workers/chunks/78085f804969c9282700.js +1 -0
  145. package/assets/esri/core/workers/chunks/7aa9b61ca9b66f30449f.js +1 -0
  146. package/assets/esri/core/workers/chunks/7c56446184abcd14678b.js +1 -0
  147. package/assets/esri/core/workers/chunks/7e41cee4a0ae75e1490d.js +1 -0
  148. package/assets/esri/core/workers/chunks/7f55a150e4da02786311.js +1 -0
  149. package/assets/esri/core/workers/chunks/847b02d188ece9b563ad.js +1 -0
  150. package/assets/esri/core/workers/chunks/86c3d3c7015f1cd55fac.js +1 -0
  151. package/assets/esri/core/workers/chunks/87e0ceb1a64ab08e679a.js +1 -0
  152. package/assets/esri/core/workers/chunks/903c7bd079888f65fef1.js +1 -0
  153. package/assets/esri/core/workers/chunks/9226205850e35b7fc610.js +1 -0
  154. package/assets/esri/core/workers/chunks/94453d075ce02eff4844.js +1 -0
  155. package/assets/esri/core/workers/chunks/9474c913e53f69679197.js +1 -0
  156. package/assets/esri/core/workers/chunks/94ddfe165ac25aef8229.js +1 -0
  157. package/assets/esri/core/workers/chunks/{75a2c43311f5f9058f62.js → 94f62ff81cc6fb83e73f.js} +1 -1
  158. package/assets/esri/core/workers/chunks/95ccac3734ac70387b03.js +1 -0
  159. package/assets/esri/core/workers/chunks/97c7dfd29ad4c2966cb4.js +1 -0
  160. package/assets/esri/core/workers/chunks/{1354b8442c2c501238f1.js → 986c5024f22bbfc49aba.js} +1 -1
  161. package/assets/esri/core/workers/chunks/9b81bd62a2c72f592db1.js +1 -0
  162. package/assets/esri/core/workers/chunks/{62596065747abce1964d.js → 9b8e33985310f281f084.js} +1 -1
  163. package/assets/esri/core/workers/chunks/9e2b3754a76e0dd4a94a.js +1 -0
  164. package/assets/esri/core/workers/chunks/a03e7333e3328036f478.js +1 -0
  165. package/assets/esri/core/workers/chunks/a0565137027c83108953.js +1 -0
  166. package/assets/esri/core/workers/chunks/a176727a1148ca4fb432.js +1 -0
  167. package/assets/esri/core/workers/chunks/a3b403f8acb90af19adb.js +1 -0
  168. package/assets/esri/core/workers/chunks/a4596f028758649da099.js +1 -0
  169. package/assets/esri/core/workers/chunks/a46ac0be9aabc4cfedc7.js +1 -0
  170. package/assets/esri/core/workers/chunks/a4a22149077c7780481c.js +1 -0
  171. package/assets/esri/core/workers/chunks/a6ab627e965fe7e5bd52.js +1 -0
  172. package/assets/esri/core/workers/chunks/a6d4132a16c51323a38a.js +1 -0
  173. package/assets/esri/core/workers/chunks/a7954ad55a241af9064f.js +1 -0
  174. package/assets/esri/core/workers/chunks/a7e6382ecc91c876117f.js +1 -0
  175. package/assets/esri/core/workers/chunks/a88bf8ae93077e1b48cf.js +1 -0
  176. package/assets/esri/core/workers/chunks/a8b878c12cb1a6ea012b.js +1 -0
  177. package/assets/esri/core/workers/chunks/{ec0803cfa5051c4d300d.js → aa0ef4493a7e9bed159f.js} +1 -1
  178. package/assets/esri/core/workers/chunks/aa8ab28e0c1ae3b55ac0.js +1 -0
  179. package/assets/esri/core/workers/chunks/add834f867900a7091d2.js +1 -0
  180. package/assets/esri/core/workers/chunks/{bbf4c2ee4d56bb0f1a81.js → afa6b74d9ca9ed0154af.js} +1 -1
  181. package/assets/esri/core/workers/chunks/b0e25ccb5a1e57a82628.js +1 -0
  182. package/assets/esri/core/workers/chunks/b17a9853250ab626d58d.js +1 -0
  183. package/assets/esri/core/workers/chunks/b19cff0e43fab2632660.js +1 -0
  184. package/assets/esri/core/workers/chunks/b2e2234fdf8e05bc3312.js +1 -0
  185. package/assets/esri/core/workers/chunks/b6063d1755def00d4889.js +1 -0
  186. package/assets/esri/core/workers/chunks/bb56ab53c5a10c9518a6.js +1 -0
  187. package/assets/esri/core/workers/chunks/bd1a7e95a797e1ed4a7b.js +1 -0
  188. package/assets/esri/core/workers/chunks/bd2602195e265f8fdb15.js +1 -0
  189. package/assets/esri/core/workers/chunks/bdfffa5f88b559a4b42d.js +1 -0
  190. package/assets/esri/core/workers/chunks/{f762f0f6c83748d8e328.js → bee411f08e2a9499f8f5.js} +1 -1
  191. package/assets/esri/core/workers/chunks/bf11319138facf44752c.js +1 -0
  192. package/assets/esri/core/workers/chunks/bf357afbabaa8dec4d75.js +1 -0
  193. package/assets/esri/core/workers/chunks/bf7875fda48b15271a10.js +1 -0
  194. package/assets/esri/core/workers/chunks/bfa59005a9b191d18546.js +1 -0
  195. package/assets/esri/core/workers/chunks/bfb8fc6b940bd5510e29.js +1 -0
  196. package/assets/esri/core/workers/chunks/{b311658b8a223efe35d6.js → c0e073a77484b0dfd383.js} +1 -1
  197. package/assets/esri/core/workers/chunks/c13aa45ccd5efb662f88.js +1 -0
  198. package/assets/esri/core/workers/chunks/c176df477bbbbc9c6922.js +1 -0
  199. package/assets/esri/core/workers/chunks/{073224c6ac77dc9e97af.js → c23943e51734254d31e8.js} +1 -1
  200. package/assets/esri/core/workers/chunks/c35553d07ad169910742.js +1 -0
  201. package/assets/esri/core/workers/chunks/c4fef90cf08bbe4f0bb5.js +1 -0
  202. package/assets/esri/core/workers/chunks/c5c2fed38e0ccf84f1fa.js +1 -0
  203. package/assets/esri/core/workers/chunks/c80277a313205853a857.js +1 -0
  204. package/assets/esri/core/workers/chunks/c88bfa51d2a8a024fc24.js +1 -0
  205. package/assets/esri/core/workers/chunks/c91042f8bf886056a29c.js +1 -0
  206. package/assets/esri/core/workers/chunks/ca204c110438f7315790.js +1 -0
  207. package/assets/esri/core/workers/chunks/ca36d85a47179d95f2fc.js +1 -0
  208. package/assets/esri/core/workers/chunks/cb6fb04fe5c8d90d4196.js +1 -0
  209. package/assets/esri/core/workers/chunks/ccaeabc3be07f3c96f50.js +1 -0
  210. package/assets/esri/core/workers/chunks/{85f459297b0214141d43.js → cd02a6078443b8f63927.js} +1 -1
  211. package/assets/esri/core/workers/chunks/{3a36c132ceddef3d15c8.js → cdbcc4cd9145dd93db49.js} +1 -1
  212. package/assets/esri/core/workers/chunks/{e90feee1756a2209f93f.js → ce9fe1a89b474f9e7ee7.js} +1 -1
  213. package/assets/esri/core/workers/chunks/d0cf9ff48f051adbd455.js +1 -0
  214. package/assets/esri/core/workers/chunks/d119671a32a050517cca.js +1 -0
  215. package/assets/esri/core/workers/chunks/d26be8313526ecea9c68.js +1 -0
  216. package/assets/esri/core/workers/chunks/d270b49c037085503016.js +1 -0
  217. package/assets/esri/core/workers/chunks/{f5eee6e548bb24b5a003.js → d30a7fc8dab4ebb8893b.js} +1 -1
  218. package/assets/esri/core/workers/chunks/d344c3fd9f6b113bbcd7.js +1 -0
  219. package/assets/esri/core/workers/chunks/d36bbda9b7261534568f.js +1 -0
  220. package/assets/esri/core/workers/chunks/d4b0012ae1d3b8a9ba01.js +1 -0
  221. package/assets/esri/core/workers/chunks/d58d6b55b2749a535eb3.js +1 -0
  222. package/assets/esri/core/workers/chunks/d6f7aa280f1bd201d4ef.js +1 -0
  223. package/assets/esri/core/workers/chunks/{60f490afdbe299f89669.js → d871572997600930e017.js} +1 -1
  224. package/assets/esri/core/workers/chunks/da9aacdb0b4a04f42fb8.js +1 -0
  225. package/assets/esri/core/workers/chunks/daf7b647bd960d8bad56.js +1 -0
  226. package/assets/esri/core/workers/chunks/{10ac92dcd3738ec23dfb.js → db04c1bad40d068306ba.js} +1 -1
  227. package/assets/esri/core/workers/chunks/{3427f0c026301bcf7272.js → db180f8d25471cfa48af.js} +1 -1
  228. package/assets/esri/core/workers/chunks/ddf284648a73b6993737.js +1 -0
  229. package/assets/esri/core/workers/chunks/dfbe0efe453587ec5eb2.js +1 -0
  230. package/assets/esri/core/workers/chunks/e1682e94cc714197ebb4.js +1 -0
  231. package/assets/esri/core/workers/chunks/e2576c37cf13dc421f69.js +1 -0
  232. package/assets/esri/core/workers/chunks/e370a3337b3c90240e73.js +1 -0
  233. package/assets/esri/core/workers/chunks/e39bccc000c768120a32.js +1 -0
  234. package/assets/esri/core/workers/chunks/e40e08029325f43452d0.js +1 -0
  235. package/assets/esri/core/workers/chunks/e50adcfb392adfb3f79c.js +1 -0
  236. package/assets/esri/core/workers/chunks/{0d7d54e74b5639a0be6e.js → e707534a700a2de687ca.js} +1 -1
  237. package/assets/esri/core/workers/chunks/e823c9ccb7bc348d8824.js +1 -0
  238. package/assets/esri/core/workers/chunks/e88eee4c2fc4229c2a8b.js +1 -0
  239. package/assets/esri/core/workers/chunks/e9f29019aa78f07ace66.js +1 -0
  240. package/assets/esri/core/workers/chunks/ea75c23c44452f45a949.js +1 -0
  241. package/assets/esri/core/workers/chunks/ea91c57a0b31f3f65ee5.js +1 -0
  242. package/assets/esri/core/workers/chunks/eda04911553cf99fb99b.js +1 -0
  243. package/assets/esri/core/workers/chunks/ee77999df3785468b2b6.js +1 -0
  244. package/assets/esri/core/workers/chunks/ef851a2cff76fd211c07.js +1 -0
  245. package/assets/esri/core/workers/chunks/f106cc7f559856f69b9f.js +1 -0
  246. package/assets/esri/core/workers/chunks/f247f3c5148fa0237a7c.js +1 -0
  247. package/assets/esri/core/workers/chunks/{a26dc2647a15b830390e.js → f253875feb11883deb84.js} +1 -1
  248. package/assets/esri/core/workers/chunks/f3716ce04d09af31cfb1.js +1 -0
  249. package/assets/esri/core/workers/chunks/f3d57c5b9dffd12e45b4.js +1 -0
  250. package/assets/esri/core/workers/chunks/f3e53be08ab9dbdf17ae.js +1 -0
  251. package/assets/esri/core/workers/chunks/f43ae1c2f89e1c4396cc.js +1 -0
  252. package/assets/esri/core/workers/chunks/f60ed579981913d44675.js +1 -0
  253. package/assets/esri/core/workers/chunks/{147d1e7e2852a4197e5f.js → f665fb4c5633e0a459d8.js} +1 -1
  254. package/assets/esri/core/workers/chunks/f66e597e524b26e61cd3.js +1 -0
  255. package/assets/esri/core/workers/chunks/{bec140a69cfdb0519680.js → f74c7cbe4bd12f73ae90.js} +1 -1
  256. package/assets/esri/core/workers/chunks/{e6f6b38eda34708d61c5.js → f7f2102b16d201e5f531.js} +1 -1
  257. package/assets/esri/core/workers/chunks/f82ae237452b97cfc024.js +1 -0
  258. package/assets/esri/core/workers/chunks/f83c3597e9332bd991eb.js +1 -0
  259. package/assets/esri/core/workers/chunks/f8a6d8cdcabcd1d511b6.js +1 -0
  260. package/assets/esri/core/workers/chunks/f8f7b86bbd62106bc3d4.js +1 -0
  261. package/assets/esri/core/workers/chunks/f9a4387f850d85c44ca5.js +1 -0
  262. package/assets/esri/core/workers/chunks/fbc7576ed12964059da6.js +1 -0
  263. package/assets/esri/core/workers/chunks/fdd0e6d9927d3c43b0d3.js +1 -0
  264. package/assets/esri/core/workers/chunks/fddcb8be714ad18ad0c8.js +1 -0
  265. package/assets/esri/core/workers/chunks/{baa46edd87e97f922128.js → ffe749d790320dddfa74.js} +1 -1
  266. package/chunks/Bufferer-CclWhXVb.js +1 -1
  267. package/chunks/Distance2DCalculator-DjIp2uQi.js +1 -1
  268. package/chunks/Envelope.js +1 -1
  269. package/chunks/GeodeticDistanceCalculator-zRp89-dW.js +1 -1
  270. package/chunks/GeodeticUtils.js +1 -1
  271. package/chunks/GeographicTransformation.js +1 -1
  272. package/chunks/Geometry.js +1 -1
  273. package/chunks/GlowComposite.glsl.js +9 -7
  274. package/chunks/MultiPathImpl.js +1 -1
  275. package/chunks/OperatorCentroid2D.js +1 -1
  276. package/chunks/OperatorContains.js +2 -0
  277. package/chunks/OperatorCrosses.js +1 -1
  278. package/chunks/OperatorCut.js +1 -1
  279. package/chunks/OperatorDisjoint.js +2 -0
  280. package/chunks/OperatorDistance.js +2 -0
  281. package/chunks/OperatorEquals.js +2 -0
  282. package/chunks/OperatorGeodesicBuffer.js +1 -1
  283. package/chunks/OperatorGeodeticArea.js +1 -1
  284. package/chunks/OperatorGeodeticDensifyByLength.js +1 -1
  285. package/chunks/OperatorGeodeticLength.js +1 -1
  286. package/chunks/OperatorGraphicBuffer.js +1 -1
  287. package/chunks/OperatorIntegrate.js +1 -1
  288. package/chunks/OperatorIntersects.js +1 -1
  289. package/chunks/OperatorMultiPartToSinglePart.js +1 -1
  290. package/chunks/OperatorOverlaps.js +1 -1
  291. package/chunks/OperatorProximity.js +1 -1
  292. package/chunks/OperatorProximityGeodesic.js +1 -1
  293. package/chunks/OperatorRelate.js +2 -0
  294. package/chunks/OperatorShapePreservingLength.js +1 -1
  295. package/chunks/OperatorShapePreservingProject.js +1 -1
  296. package/chunks/OperatorSimplifyOGC.js +1 -1
  297. package/chunks/OperatorTouches.js +1 -1
  298. package/chunks/OperatorWithin.js +1 -1
  299. package/chunks/Point2D.js +1 -1
  300. package/chunks/ProjectionTransformation.js +1 -1
  301. package/chunks/SideCalculator2D-DX0718xq.js +1 -1
  302. package/chunks/UnitFactory.js +1 -1
  303. package/chunks/aiServices.js +1 -1
  304. package/chunks/array.js +1 -1
  305. package/chunks/boundedPlane.js +1 -1
  306. package/chunks/cameraUtilsSpherical.js +1 -1
  307. package/chunks/languageUtils.js +1 -1
  308. package/config.js +1 -1
  309. package/core/accessorSupport/Property.js +1 -1
  310. package/core/sql/TimeOnly.js +1 -1
  311. package/core/units.js +1 -1
  312. package/editing/sharedTemplates/executor/builders/bufferLineToPolygon.js +1 -1
  313. package/editing/sharedTemplates/executor/builders/bufferPointToPolygon.js +1 -1
  314. package/editing/sharedTemplates/executor/builders/bufferPolygonToPolygon.js +1 -1
  315. package/editing/sharedTemplates/executor/builders/pointAtIntersectionVerticesOfLine.js +1 -1
  316. package/editing/sharedTemplates/executor/builders/support/offsetUtils.js +1 -1
  317. package/form/elements/inputs/inputUtils.js +1 -1
  318. package/geometry/operators/areaOperator.js +1 -1
  319. package/geometry/operators/bufferOperator.js +1 -1
  320. package/geometry/operators/centroidOperator.js +1 -1
  321. package/geometry/operators/clipOperator.js +1 -1
  322. package/geometry/operators/containsOperator.js +1 -1
  323. package/geometry/operators/convexHullOperator.js +1 -1
  324. package/geometry/operators/crossesOperator.js +1 -1
  325. package/geometry/operators/cutOperator.js +1 -1
  326. package/geometry/operators/densifyOperator.js +1 -1
  327. package/geometry/operators/differenceOperator.js +1 -1
  328. package/geometry/operators/disjointOperator.js +1 -1
  329. package/geometry/operators/distanceOperator.js +1 -1
  330. package/geometry/operators/equalsOperator.js +1 -1
  331. package/geometry/operators/generalizeOperator.js +1 -1
  332. package/geometry/operators/geodesicBufferOperator.js +1 -1
  333. package/geometry/operators/geodeticAreaOperator.js +1 -1
  334. package/geometry/operators/geodeticDensifyOperator.js +1 -1
  335. package/geometry/operators/geodeticDistanceOperator.js +1 -1
  336. package/geometry/operators/geodeticLengthOperator.js +1 -1
  337. package/geometry/operators/gx/operatorAutoComplete.js +1 -1
  338. package/geometry/operators/gx/operatorBuffer.js +1 -1
  339. package/geometry/operators/gx/operatorDifference.js +1 -1
  340. package/geometry/operators/gx/operatorIntersection.js +1 -1
  341. package/geometry/operators/gx/operatorLabelPoint.js +1 -1
  342. package/geometry/operators/gx/operatorLinesToPolygons.js +1 -1
  343. package/geometry/operators/gx/operatorPolygonOverlay.js +1 -1
  344. package/geometry/operators/gx/operatorSimplify.js +1 -1
  345. package/geometry/operators/gx/operatorSymmetricDifference.js +1 -1
  346. package/geometry/operators/gx/operatorUnion.js +1 -1
  347. package/geometry/operators/intersectionOperator.js +1 -1
  348. package/geometry/operators/intersectsOperator.js +1 -1
  349. package/geometry/operators/json/containsOperator.js +1 -1
  350. package/geometry/operators/json/crossesOperator.js +1 -1
  351. package/geometry/operators/json/disjointOperator.js +1 -1
  352. package/geometry/operators/json/intersectsOperator.js +1 -1
  353. package/geometry/operators/json/overlapsOperator.js +1 -1
  354. package/geometry/operators/json/touchesOperator.js +1 -1
  355. package/geometry/operators/json/unionOperator.js +1 -1
  356. package/geometry/operators/json/withinOperator.js +1 -1
  357. package/geometry/operators/labelPointOperator.js +1 -1
  358. package/geometry/operators/lengthOperator.js +1 -1
  359. package/geometry/operators/multiPartToSinglePartOperator.js +1 -1
  360. package/geometry/operators/offsetOperator.js +1 -1
  361. package/geometry/operators/overlapsOperator.js +1 -1
  362. package/geometry/operators/proximityOperator.js +1 -1
  363. package/geometry/operators/relateOperator.js +1 -1
  364. package/geometry/operators/reshapeOperator.js +1 -1
  365. package/geometry/operators/simplifyOGCOperator.js +1 -1
  366. package/geometry/operators/simplifyOperator.js +1 -1
  367. package/geometry/operators/support/apiConverter.js +1 -1
  368. package/geometry/operators/support/jsonConverter.js +1 -1
  369. package/geometry/operators/support/projectionTransformation.js +1 -1
  370. package/geometry/operators/symmetricDifferenceOperator.js +1 -1
  371. package/geometry/operators/touchesOperator.js +1 -1
  372. package/geometry/operators/unionOperator.js +1 -1
  373. package/geometry/operators/withinOperator.js +1 -1
  374. package/geometry/support/convexPolyhedron.js +1 -1
  375. package/geometry/support/curves/circleUtils.js +1 -1
  376. package/geometry/support/curves/ellipticArc7Utils.js +1 -1
  377. package/geometry/support/frustum.js +1 -1
  378. package/geometry/support/plane.js +1 -1
  379. package/geometry/support/webMercatorUtils.js +1 -1
  380. package/kernel.js +1 -1
  381. package/layers/VectorTileLayer.js +1 -1
  382. package/layers/graphics/data/FlatFeatureStore.js +1 -1
  383. package/layers/graphics/data/QueryEngine.js +1 -1
  384. package/layers/graphics/hydratedFeatures.js +1 -1
  385. package/layers/mixins/DataSeriesLayer.js +1 -1
  386. package/layers/support/csvUtils.js +1 -1
  387. package/layers/support/fieldUtils.js +1 -1
  388. package/layers/video/VideoController.js +1 -1
  389. package/package.json +4 -4
  390. package/support/ArcadeExpression.js +1 -1
  391. package/support/arcadeUtils.js +1 -1
  392. package/support/loadArcade.js +1 -1
  393. package/support/revision.js +1 -1
  394. package/support/tests/serviceMockDependencies.js +1 -1
  395. package/views/2d/analysis/AreaMeasurement/AreaMeasurementController.js +1 -1
  396. package/views/2d/analysis/DistanceMeasurement/DistanceMeasurementController.js +1 -1
  397. package/views/2d/engine/vectorTiles/TileManager.js +1 -1
  398. package/views/2d/engine/webgl/util/Fader.js +1 -1
  399. package/views/2d/layers/features/support/FeatureSetReader.js +1 -1
  400. package/views/2d/layers/support/RouteLayerWaypointVisualization.js +1 -1
  401. package/views/3d/analysis/LineOfSight/LineOfSightConfiguration.js +1 -1
  402. package/views/3d/analysis/LineOfSight/LineOfSightManipulators.js +1 -1
  403. package/views/3d/analysis/LineOfSight/LineOfSightVisualization.js +1 -1
  404. package/views/3d/analysis/ShadowCastAnalysisView3D.js +1 -1
  405. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementController.js +1 -1
  406. package/views/3d/input/SceneInputManager.js +1 -1
  407. package/views/3d/input/handlers/RopePullNavigation.js +2 -0
  408. package/views/3d/layers/I3SMeshView3D.js +1 -1
  409. package/views/3d/layers/IntegratedMeshNormals.js +1 -1
  410. package/views/3d/layers/TiledLayerView3D.js +1 -1
  411. package/views/3d/layers/graphics/featureExpressionInfoUtils.js +1 -1
  412. package/views/3d/layers/i3s/I3SNode.js +1 -1
  413. package/views/3d/layers/i3s/I3SViewportQueries.js +1 -1
  414. package/views/3d/layers/i3s/SweptSphereVolume.js +1 -1
  415. package/views/3d/layers/support/FeatureTileVisibility3D.js +1 -1
  416. package/views/3d/layers/support/IntegratedMesh3DTilesVertexProcessing.js +1 -1
  417. package/views/3d/state/Frustum.js +1 -1
  418. package/views/3d/state/controllers/RopePullController.js +2 -0
  419. package/views/3d/state/utils/ropePullUtils.js +1 -1
  420. package/views/3d/support/ElevationAgnosticVisibility.js +1 -1
  421. package/views/3d/support/sphericalTileUtils.js +1 -1
  422. package/views/3d/terrain/PlanarPatch.js +1 -1
  423. package/views/3d/terrain/SphericalPatch.js +1 -1
  424. package/views/3d/terrain/Tile.js +1 -1
  425. package/views/3d/webgl-engine/effects/RenderPluginManager.js +1 -1
  426. package/views/3d/webgl-engine/lib/Geometry.js +1 -1
  427. package/views/3d/webgl-engine/lib/LineMaterial.js +2 -0
  428. package/views/3d/webgl-engine/lib/Material.js +1 -1
  429. package/views/3d/webgl-engine/lib/PointMaterial.js +2 -0
  430. package/views/3d/webgl-engine/lib/RenderGeometry.js +1 -1
  431. package/views/3d/webgl-engine/lib/SortedRenderGeometryRenderer.js +1 -1
  432. package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
  433. package/views/3d/webgl-engine/materials/HeatmapDensityMaterial.js +1 -1
  434. package/views/3d/webgl-engine/materials/LineCalloutMaterial.js +1 -1
  435. package/views/3d/webgl-engine/materials/LineMarkerMaterial.js +1 -1
  436. package/views/3d/webgl-engine/materials/MeasurementArrowMaterial.js +1 -1
  437. package/views/3d/webgl-engine/materials/NativeLineMaterial.js +1 -1
  438. package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
  439. package/views/SelectionManager.js +1 -1
  440. package/views/draw/DrawTool.js +1 -1
  441. package/views/draw/support/createUtils.js +1 -1
  442. package/views/interactive/editGeometry/operations/OffsetEdgeVertex.js +1 -1
  443. package/views/interactive/sketch/constraints.js +1 -1
  444. package/views/popupAdapter.js +1 -1
  445. package/views/support/GeometryWorker.js +1 -1
  446. package/views/support/geometry3dUtils.js +1 -1
  447. package/views/support/selectionUtils.js +1 -1
  448. package/widgets/AreaMeasurement2D/AreaMeasurement2DTool.js +1 -1
  449. package/widgets/BatchAttributeForm/expressions/ArcadeExecutorProvider.js +1 -1
  450. package/widgets/BatchAttributeForm/templates/FieldElementTemplate.js +1 -1
  451. package/widgets/BatchAttributeForm/templates/support/createBatchFormTemplate.js +1 -1
  452. package/widgets/BatchAttributeForm/templates/support/hashElementTemplate.js +1 -1
  453. package/widgets/DistanceMeasurement2D/DistanceMeasurement2DTool.js +1 -1
  454. package/widgets/FeatureTable/support/types.d.ts +3 -1
  455. package/widgets/OrientedImageryViewer/adapters/view/MapViewAdapter.js +1 -1
  456. package/widgets/OrientedImageryViewer/components/ImageViewerViewModel.js +1 -1
  457. package/widgets/OrientedImageryViewer/components/OrientedImageryVideoViewModel.js +1 -1
  458. package/widgets/OrientedImageryViewer/imageMeasurementUtils.js +1 -1
  459. package/widgets/OrientedImageryViewer/support/panConstraint.js +1 -1
  460. package/widgets/OrientedImageryViewer/support/superimposeUtils.js +1 -1
  461. package/widgets/OrientedImageryViewer/videoViewerUtils.js +1 -1
  462. package/widgets/UtilityNetworkTrace/support/GeometryHandler.js +1 -1
  463. package/widgets/support/SelectionList/selectionListUtils.d.ts +58 -0
  464. package/widgets/support/SelectionToolbar/SelectionToolbarViewModel.js +1 -1
  465. package/widgets/support/Selector2D/selectorUtils.js +1 -1
  466. package/arcade/kernel.js +0 -2
  467. package/assets/esri/core/workers/chunks/01b7babaefe6500fd6eb.js +0 -1
  468. package/assets/esri/core/workers/chunks/06e109e92de7fa0956e3.js +0 -1
  469. package/assets/esri/core/workers/chunks/0775d1e3034d5e7ef7bc.js +0 -1
  470. package/assets/esri/core/workers/chunks/0993e51d3a9701ed2198.js +0 -1
  471. package/assets/esri/core/workers/chunks/09a0a1e794ddff65aa08.js +0 -1
  472. package/assets/esri/core/workers/chunks/0e57d33bd202d0972207.js +0 -1
  473. package/assets/esri/core/workers/chunks/114ba901fd319ce87dc6.js +0 -1
  474. package/assets/esri/core/workers/chunks/12a3b55195ce3244259d.js +0 -1
  475. package/assets/esri/core/workers/chunks/151bac9e519a3b821baf.js +0 -1
  476. package/assets/esri/core/workers/chunks/156f85ac1885464f0072.js +0 -1
  477. package/assets/esri/core/workers/chunks/180eebd8b7badc2840c9.js +0 -1
  478. package/assets/esri/core/workers/chunks/19cb8963d5ec2246357b.js +0 -1
  479. package/assets/esri/core/workers/chunks/19d4ecee1c161ac0f33c.js +0 -1
  480. package/assets/esri/core/workers/chunks/19ece9f5313f53384cac.js +0 -1
  481. package/assets/esri/core/workers/chunks/1d770e8f0fe57d937daa.js +0 -1
  482. package/assets/esri/core/workers/chunks/1dd22b8df6a52277c64b.js +0 -1
  483. package/assets/esri/core/workers/chunks/1ede298ab815e9ad625c.js +0 -1
  484. package/assets/esri/core/workers/chunks/208bc524bd1e0d3aab79.js +0 -1
  485. package/assets/esri/core/workers/chunks/20a4ae83542c7d39cf0f.js +0 -1
  486. package/assets/esri/core/workers/chunks/21071ab3d7b2771406ae.js +0 -1
  487. package/assets/esri/core/workers/chunks/21bfa89363104f041101.js +0 -1
  488. package/assets/esri/core/workers/chunks/21d0a4d6639d32278f11.js +0 -1
  489. package/assets/esri/core/workers/chunks/22a75fdc6ba60213a870.js +0 -1
  490. package/assets/esri/core/workers/chunks/22e004ed97e06536ecef.js +0 -1
  491. package/assets/esri/core/workers/chunks/23942712a3f6290e0fdb.js +0 -1
  492. package/assets/esri/core/workers/chunks/242287de82586d42f0a4.js +0 -1
  493. package/assets/esri/core/workers/chunks/25cb5086eaa412f6820b.js +0 -1
  494. package/assets/esri/core/workers/chunks/26c8ed0aef59ed6d5267.js +0 -1
  495. package/assets/esri/core/workers/chunks/2742d62fceaf0736aef0.js +0 -1
  496. package/assets/esri/core/workers/chunks/276eba546dc8774076ee.js +0 -1
  497. package/assets/esri/core/workers/chunks/28e02b213da9e682d3dc.js +0 -29
  498. package/assets/esri/core/workers/chunks/2d8195231cb16247f198.js +0 -1
  499. package/assets/esri/core/workers/chunks/2db1227ecd421728630d.js +0 -1
  500. package/assets/esri/core/workers/chunks/2ddc9c9ff6ec243d85e2.js +0 -1
  501. package/assets/esri/core/workers/chunks/2e712154ebb895d96ba1.js +0 -1
  502. package/assets/esri/core/workers/chunks/2f2df51d4976ae65edae.js +0 -1
  503. package/assets/esri/core/workers/chunks/32d31fd4cffdf5a80acb.js +0 -1
  504. package/assets/esri/core/workers/chunks/33aaa5a49e396a0aca47.js +0 -1
  505. package/assets/esri/core/workers/chunks/35622088727e120c93b9.js +0 -1
  506. package/assets/esri/core/workers/chunks/3714cc26f446c4d9cc2c.js +0 -1
  507. package/assets/esri/core/workers/chunks/3722d40d161d60370936.js +0 -1
  508. package/assets/esri/core/workers/chunks/3ac4cfeb1af12a9dc27d.js +0 -1
  509. package/assets/esri/core/workers/chunks/3b009c05eaec5a7048a8.js +0 -1
  510. package/assets/esri/core/workers/chunks/3b376318df4ff8519370.js +0 -1
  511. package/assets/esri/core/workers/chunks/3bf37fd3280f4891c76b.js +0 -1
  512. package/assets/esri/core/workers/chunks/3d18a10a1ecfabe92db3.js +0 -1
  513. package/assets/esri/core/workers/chunks/3de20165796fa4f76728.js +0 -1
  514. package/assets/esri/core/workers/chunks/3fbd4c7e25440c4713f2.js +0 -1
  515. package/assets/esri/core/workers/chunks/407dba2be21255eb47fc.js +0 -1
  516. package/assets/esri/core/workers/chunks/414093fa4957d17bf551.js +0 -1
  517. package/assets/esri/core/workers/chunks/44b1a4e8a65221ad3808.js +0 -1
  518. package/assets/esri/core/workers/chunks/48b31b8534e7bfe42976.js +0 -1
  519. package/assets/esri/core/workers/chunks/48f6af09436723f2d861.js +0 -1
  520. package/assets/esri/core/workers/chunks/49e37f653b81f9e4f7cc.js +0 -1
  521. package/assets/esri/core/workers/chunks/4b4221a869b3f0d517fa.js +0 -1
  522. package/assets/esri/core/workers/chunks/4b86bcde5992eb752ab0.js +0 -1
  523. package/assets/esri/core/workers/chunks/4b9095e2bd060efd47c4.js +0 -1
  524. package/assets/esri/core/workers/chunks/5084de4d0d4961b63ab7.js +0 -1
  525. package/assets/esri/core/workers/chunks/51a8a47aac1d8d22ba9d.js +0 -1
  526. package/assets/esri/core/workers/chunks/5324e4feb78203204c0c.js +0 -1
  527. package/assets/esri/core/workers/chunks/5536cee0dfc183584a9b.js +0 -1
  528. package/assets/esri/core/workers/chunks/58d10928959ae1e2e8d9.js +0 -1
  529. package/assets/esri/core/workers/chunks/597a8e3d9e458298fdd3.js +0 -1
  530. package/assets/esri/core/workers/chunks/5a006ff759fad9fc25cb.js +0 -1
  531. package/assets/esri/core/workers/chunks/60be6de19c5659091d8f.js +0 -1
  532. package/assets/esri/core/workers/chunks/61a38237e163b39520e5.js +0 -1
  533. package/assets/esri/core/workers/chunks/61fcdba6f2097378dce5.js +0 -1
  534. package/assets/esri/core/workers/chunks/6561c01c67db1f4c546e.js +0 -1
  535. package/assets/esri/core/workers/chunks/65eff0ae773505495f21.js +0 -1
  536. package/assets/esri/core/workers/chunks/67452ba9e87962b9e01e.js +0 -1
  537. package/assets/esri/core/workers/chunks/68195277046861ed39a7.js +0 -1
  538. package/assets/esri/core/workers/chunks/68705692335d57522030.js +0 -1
  539. package/assets/esri/core/workers/chunks/6a2a4da3a1cd64ff576f.js +0 -1
  540. package/assets/esri/core/workers/chunks/6af1680771fd8ae8c7dc.js +0 -1
  541. package/assets/esri/core/workers/chunks/6c367de583e0e657ca3a.js +0 -1
  542. package/assets/esri/core/workers/chunks/6d2021a0f0c9a3c6a0e6.js +0 -1
  543. package/assets/esri/core/workers/chunks/6db4a4f9a9ce7cc738d0.js +0 -1
  544. package/assets/esri/core/workers/chunks/6f2a9259240769c7cd6e.js +0 -1
  545. package/assets/esri/core/workers/chunks/724260e36efea90585f4.js +0 -1
  546. package/assets/esri/core/workers/chunks/74ae1222787389d5fcaa.js +0 -1
  547. package/assets/esri/core/workers/chunks/74bfaa98da6c5d375f05.js +0 -1
  548. package/assets/esri/core/workers/chunks/7a68a16f7fea712b9fd6.js +0 -1
  549. package/assets/esri/core/workers/chunks/7b2174b19d06c16715f0.js +0 -1
  550. package/assets/esri/core/workers/chunks/7d8e59ad438fb34b476d.js +0 -1
  551. package/assets/esri/core/workers/chunks/7eb94fc75926bc739233.js +0 -1
  552. package/assets/esri/core/workers/chunks/80795118467fb31ea4ed.js +0 -1
  553. package/assets/esri/core/workers/chunks/820c530b8765ecb1f36e.js +0 -1
  554. package/assets/esri/core/workers/chunks/830daaca32352da6eebe.js +0 -1
  555. package/assets/esri/core/workers/chunks/852649460d664b0a1a1d.js +0 -1
  556. package/assets/esri/core/workers/chunks/85c538bf1209f0da1f8e.js +0 -1
  557. package/assets/esri/core/workers/chunks/8c2921081ca3e7fd0385.js +0 -1
  558. package/assets/esri/core/workers/chunks/8db3fd97e8eccd3ba1db.js +0 -1
  559. package/assets/esri/core/workers/chunks/8e225dd0319672103561.js +0 -1
  560. package/assets/esri/core/workers/chunks/8e79a84e224d05204e7d.js +0 -1
  561. package/assets/esri/core/workers/chunks/8e9aff66a2d4e2cc102b.js +0 -1
  562. package/assets/esri/core/workers/chunks/917318f8e186f466dc52.js +0 -1
  563. package/assets/esri/core/workers/chunks/9267f6a65c2245696eac.js +0 -1
  564. package/assets/esri/core/workers/chunks/9407db0584c730591161.js +0 -1
  565. package/assets/esri/core/workers/chunks/958e161634b5bfd50625.js +0 -1
  566. package/assets/esri/core/workers/chunks/9658b46a7111cda53b0d.js +0 -1
  567. package/assets/esri/core/workers/chunks/974bcaf2a059b8cfb153.js +0 -1
  568. package/assets/esri/core/workers/chunks/99881d0a6c2490a16268.js +0 -1
  569. package/assets/esri/core/workers/chunks/99980c944acb8ff88d6a.js +0 -1
  570. package/assets/esri/core/workers/chunks/9c227785f4454d3966ea.js +0 -1
  571. package/assets/esri/core/workers/chunks/9d61d9136f3d00aab530.js +0 -1
  572. package/assets/esri/core/workers/chunks/9df2685583393a87df2d.js +0 -1
  573. package/assets/esri/core/workers/chunks/9e840a71906c4deef776.js +0 -1
  574. package/assets/esri/core/workers/chunks/9ee6e8a6b9bfda758c21.js +0 -1
  575. package/assets/esri/core/workers/chunks/a03f4605bde69bfb6d41.js +0 -1
  576. package/assets/esri/core/workers/chunks/a327843cee2057ee76c0.js +0 -1
  577. package/assets/esri/core/workers/chunks/a557347fb313df6fcc79.js +0 -1
  578. package/assets/esri/core/workers/chunks/a8da0728a12fc46dca23.js +0 -1
  579. package/assets/esri/core/workers/chunks/a9ea28e0f22cfe3ccf92.js +0 -1
  580. package/assets/esri/core/workers/chunks/aae92f23b38ae22dd8bf.js +0 -1
  581. package/assets/esri/core/workers/chunks/ad3714da9c90d7471385.js +0 -1
  582. package/assets/esri/core/workers/chunks/b047f9e9ba26037657ed.js +0 -1
  583. package/assets/esri/core/workers/chunks/b1323800119bd5c1759b.js +0 -1
  584. package/assets/esri/core/workers/chunks/b18c35f25da18a3219d7.js +0 -1
  585. package/assets/esri/core/workers/chunks/b1f68ee65cce457d7b5b.js +0 -1
  586. package/assets/esri/core/workers/chunks/b2d6fd436981c890152f.js +0 -1
  587. package/assets/esri/core/workers/chunks/b3c518ca8679fbe16ece.js +0 -1
  588. package/assets/esri/core/workers/chunks/b4b4fe06364bea9b0750.js +0 -1
  589. package/assets/esri/core/workers/chunks/b61b7005edd9ced925e9.js +0 -1
  590. package/assets/esri/core/workers/chunks/b661aae7e3ce955a783e.js +0 -1
  591. package/assets/esri/core/workers/chunks/b66ebe53bd879aa9de57.js +0 -1
  592. package/assets/esri/core/workers/chunks/b8ca80134abfcc692244.js +0 -1
  593. package/assets/esri/core/workers/chunks/bbdf10d76d852072c878.js +0 -1
  594. package/assets/esri/core/workers/chunks/bbeb61d9302323bae9fb.js +0 -1
  595. package/assets/esri/core/workers/chunks/bbfd2b4af8e498b61af9.js +0 -1
  596. package/assets/esri/core/workers/chunks/bdafd4f03585351cecc3.js +0 -1
  597. package/assets/esri/core/workers/chunks/bddd5aa7a14cd45ff91c.js +0 -1
  598. package/assets/esri/core/workers/chunks/be31c2cb97f664a54306.js +0 -1
  599. package/assets/esri/core/workers/chunks/be4319827db91aa71bf5.js +0 -1
  600. package/assets/esri/core/workers/chunks/bef32acf368b4d5aba37.js +0 -1
  601. package/assets/esri/core/workers/chunks/c1568bcd3f04014152e1.js +0 -1
  602. package/assets/esri/core/workers/chunks/c1a7c475ce0c59ffa75a.js +0 -1
  603. package/assets/esri/core/workers/chunks/c229a4eedda468c914a9.js +0 -1
  604. package/assets/esri/core/workers/chunks/c2b2942456f1b10d0e96.js +0 -1
  605. package/assets/esri/core/workers/chunks/c308d8f419ba63c583e6.js +0 -1
  606. package/assets/esri/core/workers/chunks/c5dc2743c7116d0bc0d8.js +0 -1
  607. package/assets/esri/core/workers/chunks/c68cc3b9c170b8de22dc.js +0 -1
  608. package/assets/esri/core/workers/chunks/c6ef0636073e28350c91.js +0 -1
  609. package/assets/esri/core/workers/chunks/c71368cd64f240da1743.js +0 -1
  610. package/assets/esri/core/workers/chunks/cb2f27e5d465124b9868.js +0 -1
  611. package/assets/esri/core/workers/chunks/cee2f7f3b3f84688e49d.js +0 -1
  612. package/assets/esri/core/workers/chunks/d0942860a53b02371e94.js +0 -1
  613. package/assets/esri/core/workers/chunks/d13eeff678972a245d5d.js +0 -1
  614. package/assets/esri/core/workers/chunks/d3d7b4cd28a0dc2720d4.js +0 -1
  615. package/assets/esri/core/workers/chunks/d3ea7ac6fe71c95faa75.js +0 -1
  616. package/assets/esri/core/workers/chunks/d41e4498aaf4970f48b0.js +0 -1
  617. package/assets/esri/core/workers/chunks/d56603e1d0031f3c5f3b.js +0 -1
  618. package/assets/esri/core/workers/chunks/d7c8725ffb175cec5f8a.js +0 -1
  619. package/assets/esri/core/workers/chunks/d96fa373dcb621c2a869.js +0 -1
  620. package/assets/esri/core/workers/chunks/da233362b06b6db375f1.js +0 -1
  621. package/assets/esri/core/workers/chunks/dbc8f15a6be835f4897d.js +0 -1
  622. package/assets/esri/core/workers/chunks/e00d0036974aaec7d876.js +0 -1
  623. package/assets/esri/core/workers/chunks/e0c75ae3a211a8da10f7.js +0 -1
  624. package/assets/esri/core/workers/chunks/e474106292834633e7d4.js +0 -1
  625. package/assets/esri/core/workers/chunks/e557043f90c051e93925.js +0 -1
  626. package/assets/esri/core/workers/chunks/e5cbed6f19c743915c8e.js +0 -1
  627. package/assets/esri/core/workers/chunks/e5ecd93bd32e99bc99d1.js +0 -1
  628. package/assets/esri/core/workers/chunks/e64ccdb8328eb6514e59.js +0 -1
  629. package/assets/esri/core/workers/chunks/eb8c4f194bb66a27d418.js +0 -1
  630. package/assets/esri/core/workers/chunks/ebd8c77df5df63bd3efe.js +0 -1
  631. package/assets/esri/core/workers/chunks/f14347f5d63f5d102617.js +0 -1
  632. package/assets/esri/core/workers/chunks/f3c0280b6c87f2383a60.js +0 -1
  633. package/assets/esri/core/workers/chunks/f42c4dcb8f413ca1c6fd.js +0 -1
  634. package/assets/esri/core/workers/chunks/f5773321487ec248fa3b.js +0 -1
  635. package/assets/esri/core/workers/chunks/f76911f71540b058a881.js +0 -1
  636. package/assets/esri/core/workers/chunks/f988d5a6dcc15fe34797.js +0 -1
  637. package/assets/esri/core/workers/chunks/fa29b5064d6626cfc019.js +0 -1
  638. package/assets/esri/core/workers/chunks/fa882d0f4a9826533421.js +0 -1
  639. package/assets/esri/core/workers/chunks/fb2d43608006f588e3cb.js +0 -1
  640. package/assets/esri/core/workers/chunks/fbd02e8277fe2252ecd2.js +0 -1
  641. package/assets/esri/core/workers/chunks/fc1aeea22f8c9d63864a.js +0 -1
  642. package/assets/esri/core/workers/chunks/fc3c03cfa3d6bf3b37dc.js +0 -1
  643. package/assets/esri/core/workers/chunks/fcf7299e2ee904ab9882.js +0 -1
  644. package/assets/esri/core/workers/chunks/ff07d351553deb70b889.js +0 -1
  645. package/assets/esri/core/workers/chunks/ffee66699f5d26569baf.js +0 -1
  646. package/chunks/OperatorDefinitions.js +0 -2
  647. package/chunks/areaOperator.js +0 -2
  648. package/chunks/bufferOperator.js +0 -2
  649. package/chunks/centroidOperator.js +0 -2
  650. package/chunks/clipOperator.js +0 -2
  651. package/chunks/containsOperator.js +0 -2
  652. package/chunks/convexHullOperator.js +0 -2
  653. package/chunks/crossesOperator.js +0 -2
  654. package/chunks/cutOperator.js +0 -2
  655. package/chunks/densifyOperator.js +0 -2
  656. package/chunks/differenceOperator.js +0 -2
  657. package/chunks/disjointOperator.js +0 -2
  658. package/chunks/distanceOperator.js +0 -2
  659. package/chunks/equalsOperator.js +0 -2
  660. package/chunks/generalizeOperator.js +0 -2
  661. package/chunks/geodesicBufferOperator.js +0 -2
  662. package/chunks/geodeticAreaOperator.js +0 -2
  663. package/chunks/geodeticDensifyOperator.js +0 -2
  664. package/chunks/geodeticDistanceOperator.js +0 -2
  665. package/chunks/geodeticLengthOperator.js +0 -2
  666. package/chunks/intersectionOperator.js +0 -2
  667. package/chunks/intersectsOperator.js +0 -2
  668. package/chunks/labelPointOperator.js +0 -2
  669. package/chunks/lengthOperator.js +0 -2
  670. package/chunks/multiPartToSinglePartOperator.js +0 -2
  671. package/chunks/offsetOperator.js +0 -2
  672. package/chunks/overlapsOperator.js +0 -2
  673. package/chunks/proximityOperator.js +0 -2
  674. package/chunks/relateOperator.js +0 -2
  675. package/chunks/simplifyOperator.js +0 -2
  676. package/chunks/symmetricDifferenceOperator.js +0 -2
  677. package/chunks/touchesOperator.js +0 -2
  678. package/chunks/unionOperator.js +0 -2
  679. package/chunks/withinOperator.js +0 -2
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{indexOf as e,PositionHint as t}from"../../../core/arrayUtils.js";import{toConst as i}from"../../../core/compilerUtils.js";import r from"../../../core/Error.js";import"../../../core/has.js";import{clone as s}from"../../../core/lang.js";import{removeMaybe as a,destroyMaybe as n}from"../../../core/maybe.js";import{signalFromSignalOrOptions as l,throwIfAborted as o}from"../../../core/promiseUtils.js";import{getMetersPerUnitForSR as u}from"../../../core/units.js";import{isSerializable as c}from"../../../core/support/jsonUtils.js";import{isLoaded as y}from"../../../geometry/projectionUtils.js";import{set as h,create as d,expandWithAABB as m,negativeInfinity as f}from"../../../geometry/support/aaBoundingBox.js";import{fromValues as p,create as x}from"../../../geometry/support/aaBoundingRect.js";import{getBoundsXY as g}from"../../../geometry/support/boundsUtils.js";import{isExtent as _,isPolygon as F}from"../../../geometry/support/jsonTypeUtils.js";import{fromJSON as w}from"../../../geometry/support/jsonUtils.js";import{normalizeCentralMeridian as Q}from"../../../geometry/support/normalizeUtils.js";import{equals as S,isValid as R}from"../../../geometry/support/spatialReferenceUtils.js";import{convertFromGeometry as I}from"../featureConversionUtils.js";import{getWhereClause as j}from"./attributeSupport.js";import{getGeometry as E,cleanFromGeometryEngine as b}from"./geometryUtils.js";import{checkProjectionSupport as T,project as A,projectMany as v}from"./projectionSupport.js";import{QueryEngineCache as G}from"./QueryEngineCache.js";import{queryCapabilities as k}from"./QueryEngineCapabilities.js";import{QueryEngineResult as C}from"./QueryEngineResult.js";import{queryEngineEmptyResult as O,normalizeAttributeBinsQuery as P,normalizeQueryLike as q,normalizeQuery as z}from"./queryUtils.js";import{validateAttributeBinsQuery as U,validateQuery as B,validateStatisticsQuery as M}from"./queryValidationUtils.js";import{getSpatialQueryOperator as H,canQueryWithRBush as Z}from"./spatialQuerySupport.js";import{getTimeExtent as J,getTimeOperator as L}from"./timeSupport.js";import N from"../../support/FieldsIndex.js";import{ImmediateTask as V}from"../../../views/support/Scheduler.js";const D="unsupported-query";class K{constructor(e,t=null,i,r,s){this.attributes=e,this.geometry=i,this.centroid=r,this.filterFlags=s,this.groupId=-1,this.displayId=t}}class W{constructor(e){this._changeHandle=null,this.capabilities={query:k},this.geometryType=e.geometryType,this.hasM=!!e.hasM,this.hasZ=!!e.hasZ,this.spatialReference=e.spatialReference,this.definitionExpression=e.definitionExpression,this.featureStore=e.featureStore,this.aggregateAdapter=e.aggregateAdapter,this._cache=e.cache??new G,this.timeInfo=e.timeInfo,this.featureIdInfo=e.featureIdInfo,this._changeHandle=this.featureStore.events.on("changed",()=>this._clearCache()),this.fieldsIndex=c(e.fieldsIndex)?e.fieldsIndex:N.fromJSON(e.fieldsIndex),!e.availableFields||1===e.availableFields.length&&"*"===e.availableFields[0]?this.availableFields=new Set(this.fieldsIndex.fields.map(e=>e.name)):this.availableFields=new Set(e.availableFields.map(e=>this.fieldsIndex.get(e)?.name).filter(e=>null!=e)),e.scheduler&&e.priority?this._frameTask=e.scheduler.registerTask(e.priority):this._frameTask=V}destroy(){this._changeHandle=a(this._changeHandle),this._frameTask=a(this._frameTask),this._clearCache(),n(this._cache)}get featureAdapter(){return this.featureStore.featureAdapter}async executeQuery(e,t){const i=l(t);return await this._frameTask.scheduleGenerator(()=>this._executeQueryFeatureSet(e),i)}async executeQueryForCount(e={},t){const i=l(t);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForCount(e),i)}async executeQueryForExtent(e,t){const i=l(t);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForExtent(e),i)}async executeQueryForIds(e,t){return Array.from(await this.executeQueryForIdSet(e,t))}async executeQueryForIdSet(e,t){const i=l(t);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForIdSet(e),i)}async executeQueryForLatestObservations(e,t){const i=l(t);if(!this.timeInfo?.trackIdField)throw new r(D,"Missing timeInfo or timeInfo.trackIdField",{query:e,timeInfo:this.timeInfo});return await this._frameTask.scheduleGenerator(()=>this._executeQueryForLatestObservations(e),i)}async executeQueryForOpaqueFeatures(e,t){const i=l(t);return(await this._frameTask.scheduleGenerator(()=>this._executeQuery(e,{}),i)).items}async executeAttributeBinsQuery(e,t){const i=l(t);return e=s(e),await this._frameTask.scheduleGenerator(()=>this._executeAttributeBinsQuery(e),i)}async executeQueryForSummaryStatistics(e={},t,i){const r=l(i);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForSummaryStatistics(e,t),r)}async executeQueryForUniqueValues(e={},t,i){const r=l(i);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForUniqueValues(e,t),r)}async executeQueryForClassBreaks(e={},t,i){const r=l(i);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForClassBreaks(e,t),r)}async executeQueryForHistogram(e={},t,i){const r=l(i);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForHistogram(e,t),r)}async executeQueryForSnapping(e,t){const i=l(t);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForSnapping(e,i),i)}async fetchRecomputedExtents(e){const t=l(e);this._timeExtentPromise||=J(this.timeInfo,this.featureStore);const[i,r]=await Promise.all([this._getFullExtent(),this._timeExtentPromise]);return o(t),{fullExtent:i,timeExtent:r}}_clearCache(){this._cache.clear(),this._allFeaturesPromise=null,this._timeExtentPromise=null,this._fullExtentPromise=null}async*_executeQueryFeatureSet(e){try{const t=yield*this._executeQuery(e,{});return yield,await t.createQueryResponse()}catch(t){if(t!==O)throw t;return await new C([],e,this).createQueryResponse()}}async*_executeQueryForCount(e){try{const t=yield*this._executeQuery(e,{returnGeometry:!1,returnCentroid:!1,outSR:null});return yield,t.createQueryResponseForCount()}catch(t){if(t!==O)throw t;return 0}}async*_executeQueryForExtent(e){const t=e.outSR;try{const i=yield*this._executeQuery(e,{returnGeometry:!0,returnCentroid:!1,outSR:null});yield;const r=i.size;if(!r)return{count:0,extent:null};const s=await this._getBounds(i.items,i.spatialReference,t??this.spatialReference);return yield,{count:r,extent:s}}catch(i){if(i===O)return{count:0,extent:null};throw i}}async*_executeQueryForIdSet(e){try{const t=yield*this._executeQuery(e,{returnGeometry:!0,returnCentroid:!1,outSR:null});yield;const i=t.items,r=new Set;for(const e of i)r.add(t.featureAdapter.getObjectId(e));return r}catch(t){if(t===O)return new Set;throw t}}async*_executeQueryForLatestObservations(e){try{const t=yield*this._executeQuery(e,{});return yield,this._filterLatest(t),yield,await t.createQueryResponse()}catch(t){if(t!==O)throw t;return await new C([],e,this).createQueryResponse()}}async*_executeAttributeBinsQuery(e){let t;try{e=await P(e,this.definitionExpression,this.spatialReference),yield,e=await U(e,{availableFields:this.availableFields,fieldsIndex:this.fieldsIndex,geometryType:this.geometryType,spatialReference:this.spatialReference}),yield;const i=yield*this._executeSceneFilterQuery(e);yield,t=yield*this._executeGeometryQuery(e,i),yield,this._executeAggregateIdsQuery(t),yield,this._executeObjectIdsQuery(t),yield,this._executeTimeQuery(t),yield,this._executeAttributesQuery(t),yield}catch(i){if(i!==O)throw i;t=new C([],e,this)}return await t.createQueryBinsResponse(e)}async*_executeQueryForSummaryStatistics(e={},t){const{field:i,normalizationField:r,valueExpression:s}=t,a=yield*this._executeQueryForStatistics(e,{field:i,normalizationField:r,valueExpression:s});return yield,await a.createSummaryStatisticsResponse(t)}async*_executeQueryForUniqueValues(e={},t){const{field:i,field2:r,field3:s,valueExpression:a}=t,n=yield*this._executeQueryForStatistics(e,{field:i,field2:r,field3:s,valueExpression:a});return yield,await n.createUniqueValuesResponse(t)}async*_executeQueryForClassBreaks(e,t){const{field:i,normalizationField:r,valueExpression:s}=t,a=yield*this._executeQueryForStatistics(e,{field:i,normalizationField:r,valueExpression:s});return yield,await a.createClassBreaksResponse(t)}async*_executeQueryForHistogram(e,t){const{field:i,normalizationField:r,valueExpression:s}=t,a=yield*this._executeQueryForStatistics(e,{field:i,normalizationField:r,valueExpression:s});return yield,await a.createHistogramResponse(t)}async*_executeQueryForSnapping(e,t){const{point:i,distance:r,returnEdge:a,vertexMode:n}=e;if(!a&&"none"===n)return{candidates:[]};let l=s(e.query);l=await q(l,this.definitionExpression,this.spatialReference),yield,l=await B(l,{availableFields:this.availableFields,fieldsIndex:this.fieldsIndex,geometryType:this.geometryType,spatialReference:this.spatialReference}),yield;const o=!S(i.spatialReference,this.spatialReference);o&&(await T(i.spatialReference,this.spatialReference),yield);const u="number"==typeof r?r:r.x,c="number"==typeof r?r:r.y,y={xmin:i.x-u,xmax:i.x+u,ymin:i.y-c,ymax:i.y+c,spatialReference:i.spatialReference},h=o?A(y,this.spatialReference):y;if(!h)return{candidates:[]};const[d]=await Q(w(i),{signal:t});yield;const[m]=await Q(w(h),{signal:t});if(yield,null==d||null==m)return{candidates:[]};const f=await this._searchFeatures(X(m.toJSON()));yield;const p=new C(f,l,this);this._executeObjectIdsQuery(p),yield,this._executeTimeQuery(p),yield,this._executeAttributesQuery(p),yield,yield*this._executeGeometryQueryForSnapping(p),yield;const x=d.toJSON(),g=o?A(x,this.spatialReference):x,_=o?Math.max(h.xmax-h.xmin,h.ymax-h.ymin)/2:r;return p.createSnappingResponse({...e,point:g,distance:_},l.returnZ,i.spatialReference)}async _getBounds(e,t,i){const r=h(d(),f);return await this.featureStore.forEachBounds(e,e=>m(r,e)),Y(r,t,i,this.spatialReference,this.hasZ)}_getFullExtent(){return this._fullExtentPromise||="getFullExtent"in this.featureStore&&this.featureStore.getFullExtent?Promise.resolve(this.featureStore.getFullExtent(this.spatialReference)):this._getAllFeatures().then(e=>this._getBounds(e,this.spatialReference,this.spatialReference)),this._fullExtentPromise}async _getAllFeaturesQueryEngineResult(e){return new C(await this._getAllFeatures(),e,this)}async _getAllFeatures(){if(null==this._allFeaturesPromise){const e=[];this._allFeaturesPromise=(async()=>await this.featureStore.forEach(t=>e.push(t)))().then(()=>i(e))}const e=this._allFeaturesPromise,t=await e;return e===this._allFeaturesPromise?t.slice():this._getAllFeatures()}async*_executeQuery(e,t){e=s(e),e=await z(e,this.definitionExpression,this.spatialReference),yield,e=await B(e,{availableFields:this.availableFields,fieldsIndex:this.fieldsIndex,geometryType:this.geometryType,spatialReference:this.spatialReference}),yield,e={...e,...t};const i=yield*this._executeSceneFilterQuery(e);yield;const r=yield*this._executeGeometryQuery(e,i);return yield,this._executeAggregateIdsQuery(r),yield,this._executeObjectIdsQuery(r),yield,this._executeTimeQuery(r),yield,this._executeAttributesQuery(r),r}async*_executeSceneFilterQuery(e){if(null==e.sceneFilter)return null;const{outSR:t,returnGeometry:i,returnCentroid:r}=e,s=this.featureStore.featureSpatialReference,a=e.sceneFilter.geometry,n=null==s||S(s,a.spatialReference)?a:A(a,s);if(!n)return null;const l=i||r,o=R(t)&&!S(this.spatialReference,t)&&l?async e=>this._project(e,t):e=>e;yield;const u=this.featureAdapter,c=await this._searchFeatures(X(n));yield;if("disjoint"===e.sceneFilter.spatialRelationship){if(!c.length)return null;const t=new Set;for(const e of c)t.add(u.getObjectId(e));const i=await this._getAllFeatures();yield;const r=await H("esriSpatialRelDisjoint",n,this.geometryType);yield;const s=e=>!t.has(u.getObjectId(e))||r(u.getGeometry(e)),a=yield*this._runSpatialFilter(i,s);yield;const l=new C(a,e,this);return await o(l)}if(!c.length)return new C([],e,this);if(this._canExecuteSinglePass(n,e))return await o(new C(c,e,this));const y=await H("esriSpatialRelContains",n,this.geometryType);yield;const h=yield*this._runSpatialFilter(c,e=>y(u.getGeometry(e)));return yield,await o(new C(h,e,this))}async*_executeGeometryQuery(i,r){if(null!=r&&0===r.items.length)return r;const{geometry:s,outSR:a,returnGeometry:n,returnCentroid:l}=i,o=r?null:this._getCacheKey(i),u=o?this._cache.get(o):null;if(u)return new C(u,i,this);const c=R(a)&&!S(this.spatialReference,a),y=n||l,h=async e=>(c&&y&&await this._project(e,a),o&&this._cache.put(o,e.items),e),d=this.featureStore.featureSpatialReference,m=!s||null==d||S(d,s.spatialReference)?s:A(s,d);if(!m)return await h(null!=r?r:await this._getAllFeaturesQueryEngineResult(i));yield;const f=this.featureAdapter;let p=await this._searchFeatures(X(s));yield;const x=i.spatialRel??"esriSpatialRelIntersects";if("esriSpatialRelDisjoint"===x){if(!p.length)return await h(null!=r?r:await this._getAllFeaturesQueryEngineResult(i));const e=new Set;for(const i of p)e.add(f.getObjectId(i));let t;null!=r?t=r.items:(yield,t=await this._getAllFeatures(),yield);const s=await H(x,m,this.geometryType);yield;const a=t=>!e.has(f.getObjectId(t))||s(f.getGeometry(t)),n=yield*this._runSpatialFilter(t,a);yield;const l=new C(n,i,this);return await h(l)}if(null!=r){const i=new t;p=p.filter(t=>e(r.items,t,r.items.length,i)>=0)}if(!p.length){const e=new C([],i,this);return o&&this._cache.put(o,e.items),e}if(this._canExecuteSinglePass(m,i))return await h(new C(p,i,this));const g=await H(x,m,this.geometryType);yield;const _=yield*this._runSpatialFilter(p,e=>g(f.getGeometry(e)));return yield,await h(new C(_,i,this))}_executeAggregateIdsQuery(e){if(0===e.items.length||!e.query.aggregateIds?.length||null==this.aggregateAdapter)return;const t=new Set;for(const r of e.query.aggregateIds){this.aggregateAdapter.getFeatureObjectIds(r).forEach(e=>t.add(e))}const i=this.featureAdapter.getObjectId;e.items=e.items.filter(e=>t.has(i(e)))}_executeObjectIdsQuery(e){if(0===e.items.length||!e.query.objectIds?.length)return;const t=new Set(e.query.objectIds),i=this.featureAdapter.getObjectId;e.items=e.items.filter(e=>t.has(i(e)))}_executeTimeQuery(e){if(0===e.items.length)return;const t=L(this.timeInfo,e.query.timeExtent,this.featureAdapter);null!=t&&(e.items=e.items.filter(t))}_executeAttributesQuery(e){if(0===e.items.length)return;const t=j(e.query.where,this.fieldsIndex);if(t){if(!t.isStandardized)throw new TypeError("Where clause is not standardized");e.items=e.items.filter(e=>t.testFeature(e,this.featureAdapter))}}async*_executeGeometryQueryForSnapping(e){const{query:t}=e,{spatialRel:i}=t;if(!e?.items?.length||!t.geometry||!i)return;const r=await H(i,t.geometry,this.geometryType);yield;const s=this.featureAdapter,a=e=>r(s.getGeometry(e)),n=yield*this._runSpatialFilter(e.items,a);e.items=n}*_runSpatialFilter(e,t){if(!t)return e;if(null==this._frameTask)return e.filter(e=>t(e));let i=yield;const r=new Array;for(const s of e)t(s)&&r.push(s),i.madeProgress(),i.done&&(i=yield);return r}_filterLatest(e){const{trackIdField:t,startTimeField:i,endTimeField:r}=this.timeInfo,s=r||i,a=new Map,n=this.featureAdapter.getAttribute;for(const l of e.items){const e=n(l,t),i=n(l,s),r=a.get(e);(!r||i>n(r,s))&&a.set(e,l)}e.items=Array.from(a.values())}_getCacheKey(e){const{geometry:t,spatialRel:i,returnGeometry:r,returnCentroid:s,outSR:a,resultType:n,cacheHint:l}=e;if("tile"!==n&&!l)return null;const o=r||s;return R(a)&&!S(this.spatialReference,a)&&o?JSON.stringify([t,i,a]):JSON.stringify([t,i])}_canExecuteSinglePass(e,t){const{spatialRel:i}=t;return Z(e)&&("esriSpatialRelEnvelopeIntersects"===i||"esriGeometryPoint"===this.geometryType&&("esriSpatialRelIntersects"===i||"esriSpatialRelContains"===i))}async _project(e,t){if(!t||S(this.spatialReference,t))return e;const r=this.featureAdapter,s=y()?await this._getFullExtent():void 0,a=await v(e.items.map(e=>E(this.geometryType,r.getGeometry(e))),this.spatialReference,t,{areaOfInterestExtent:s});return e.items=i(a.map((t,i)=>r.cloneWithGeometry(e.items[i],I(t,this.hasZ,this.hasM),this.geometryType))),e}async _searchFeatures(e){const t=new Set;await Promise.all(e.map(e=>this.featureStore.forEachInBounds(e,e=>t.add(e))));const i=Array.from(t.values());return t.clear(),i}async*_executeQueryForStatistics(e,t){e=s(e);try{e=await z(e,this.definitionExpression,this.spatialReference),yield,e=await M(e,t,{availableFields:this.availableFields,fieldsIndex:this.fieldsIndex,geometryType:this.geometryType,spatialReference:this.spatialReference}),yield;const i=yield*this._executeSceneFilterQuery(e);yield;const r=yield*this._executeGeometryQuery(e,i);return yield,this._executeAggregateIdsQuery(r),yield,this._executeObjectIdsQuery(r),yield,this._executeTimeQuery(r),yield,this._executeAttributesQuery(r),yield,r}catch(i){if(i!==O)throw i;return new C([],e,this)}}get test(){}}function X(e){if(Z(e)){if(_(e))return[p(Math.min(e.xmin,e.xmax),Math.min(e.ymin,e.ymax),Math.max(e.xmin,e.xmax),Math.max(e.ymin,e.ymax))];if(F(e))return e.rings.map(e=>p(Math.min(e[0][0],e[2][0]),Math.min(e[0][1],e[2][1]),Math.max(e[0][0],e[2][0]),Math.max(e[0][1],e[2][1])))}return[g(x(),e)]}function Y(e,t,i,r,s){const a={xmin:e[0],ymin:e[1],xmax:e[3],ymax:e[4],spatialReference:b(r)};s&&isFinite(e[2])&&isFinite(e[5])&&(a.zmin=e[2],a.zmax=e[5],a.hasZ=!0);const n=A(a,t,i);if(n.spatialReference=b(i),n.xmax-n.xmin===0){const e=u(n.spatialReference);n.xmin-=e,n.xmax+=e}if(n.ymax-n.ymin===0){const e=u(n.spatialReference);n.ymin-=e,n.ymax+=e}if(s&&null!=n.zmin&&null!=n.zmax&&n.zmax-n.zmin===0){const e=u(n.spatialReference);n.zmin-=e,n.zmax+=e}return n}export{K as Feature,W as QueryEngine,X as getQueryBoundingRects,Y as getQueryResultExtent};
2
+ import{indexOf as e,PositionHint as t}from"../../../core/arrayUtils.js";import{toConst as i}from"../../../core/compilerUtils.js";import r from"../../../core/Error.js";import"../../../core/has.js";import{clone as s}from"../../../core/lang.js";import{removeMaybe as a,destroyMaybe as n}from"../../../core/maybe.js";import{signalFromSignalOrOptions as l,throwIfAborted as o}from"../../../core/promiseUtils.js";import{getMetersPerUnitForSR as u}from"../../../core/units.js";import{isSerializable as c}from"../../../core/support/jsonUtils.js";import{isLoaded as y}from"../../../geometry/projectionUtils.js";import{set as h,create as d,expandWithAABB as m,negativeInfinity as f}from"../../../geometry/support/aaBoundingBox.js";import{fromValues as p,create as x}from"../../../geometry/support/aaBoundingRect.js";import{getBoundsXY as g}from"../../../geometry/support/boundsUtils.js";import{isExtent as _,isPolygon as F}from"../../../geometry/support/jsonTypeUtils.js";import{fromJSON as w}from"../../../geometry/support/jsonUtils.js";import{normalizeCentralMeridian as Q}from"../../../geometry/support/normalizeUtils.js";import{equals as S,isValid as R}from"../../../geometry/support/spatialReferenceUtils.js";import{convertFromGeometry as I}from"../featureConversionUtils.js";import{getWhereClause as j}from"./attributeSupport.js";import{getGeometry as E}from"./geometryUtils.js";import{checkProjectionSupport as b,project as T,projectMany as A}from"./projectionSupport.js";import{QueryEngineCache as v}from"./QueryEngineCache.js";import{queryCapabilities as G}from"./QueryEngineCapabilities.js";import{QueryEngineResult as k}from"./QueryEngineResult.js";import{queryEngineEmptyResult as C,normalizeAttributeBinsQuery as O,normalizeQueryLike as P,normalizeQuery as q}from"./queryUtils.js";import{validateAttributeBinsQuery as z,validateQuery as U,validateStatisticsQuery as B}from"./queryValidationUtils.js";import{getSpatialQueryOperator as M,canQueryWithRBush as H}from"./spatialQuerySupport.js";import{getTimeExtent as Z,getTimeOperator as J}from"./timeSupport.js";import L from"../../support/FieldsIndex.js";import{ImmediateTask as N}from"../../../views/support/Scheduler.js";const V="unsupported-query";class D{constructor(e,t=null,i,r,s){this.attributes=e,this.geometry=i,this.centroid=r,this.filterFlags=s,this.groupId=-1,this.displayId=t}}class K{constructor(e){this._changeHandle=null,this.capabilities={query:G},this.geometryType=e.geometryType,this.hasM=!!e.hasM,this.hasZ=!!e.hasZ,this.spatialReference=e.spatialReference,this.definitionExpression=e.definitionExpression,this.featureStore=e.featureStore,this.aggregateAdapter=e.aggregateAdapter,this._cache=e.cache??new v,this.timeInfo=e.timeInfo,this.featureIdInfo=e.featureIdInfo,this._changeHandle=this.featureStore.events.on("changed",()=>this._clearCache()),this.fieldsIndex=c(e.fieldsIndex)?e.fieldsIndex:L.fromJSON(e.fieldsIndex),!e.availableFields||1===e.availableFields.length&&"*"===e.availableFields[0]?this.availableFields=new Set(this.fieldsIndex.fields.map(e=>e.name)):this.availableFields=new Set(e.availableFields.map(e=>this.fieldsIndex.get(e)?.name).filter(e=>null!=e)),e.scheduler&&e.priority?this._frameTask=e.scheduler.registerTask(e.priority):this._frameTask=N}destroy(){this._changeHandle=a(this._changeHandle),this._frameTask=a(this._frameTask),this._clearCache(),n(this._cache)}get featureAdapter(){return this.featureStore.featureAdapter}async executeQuery(e,t){const i=l(t);return await this._frameTask.scheduleGenerator(()=>this._executeQueryFeatureSet(e),i)}async executeQueryForCount(e={},t){const i=l(t);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForCount(e),i)}async executeQueryForExtent(e,t){const i=l(t);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForExtent(e),i)}async executeQueryForIds(e,t){return Array.from(await this.executeQueryForIdSet(e,t))}async executeQueryForIdSet(e,t){const i=l(t);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForIdSet(e),i)}async executeQueryForLatestObservations(e,t){const i=l(t);if(!this.timeInfo?.trackIdField)throw new r(V,"Missing timeInfo or timeInfo.trackIdField",{query:e,timeInfo:this.timeInfo});return await this._frameTask.scheduleGenerator(()=>this._executeQueryForLatestObservations(e),i)}async executeQueryForOpaqueFeatures(e,t){const i=l(t);return(await this._frameTask.scheduleGenerator(()=>this._executeQuery(e,{}),i)).items}async executeAttributeBinsQuery(e,t){const i=l(t);return e=s(e),await this._frameTask.scheduleGenerator(()=>this._executeAttributeBinsQuery(e),i)}async executeQueryForSummaryStatistics(e={},t,i){const r=l(i);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForSummaryStatistics(e,t),r)}async executeQueryForUniqueValues(e={},t,i){const r=l(i);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForUniqueValues(e,t),r)}async executeQueryForClassBreaks(e={},t,i){const r=l(i);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForClassBreaks(e,t),r)}async executeQueryForHistogram(e={},t,i){const r=l(i);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForHistogram(e,t),r)}async executeQueryForSnapping(e,t){const i=l(t);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForSnapping(e,i),i)}async fetchRecomputedExtents(e){const t=l(e);this._timeExtentPromise||=Z(this.timeInfo,this.featureStore);const[i,r]=await Promise.all([this._getFullExtent(),this._timeExtentPromise]);return o(t),{fullExtent:i,timeExtent:r}}_clearCache(){this._cache.clear(),this._allFeaturesPromise=null,this._timeExtentPromise=null,this._fullExtentPromise=null}async*_executeQueryFeatureSet(e){try{const t=yield*this._executeQuery(e,{});return yield,await t.createQueryResponse()}catch(t){if(t!==C)throw t;return await new k([],e,this).createQueryResponse()}}async*_executeQueryForCount(e){try{const t=yield*this._executeQuery(e,{returnGeometry:!1,returnCentroid:!1,outSR:null});return yield,t.createQueryResponseForCount()}catch(t){if(t!==C)throw t;return 0}}async*_executeQueryForExtent(e){const t=e.outSR;try{const i=yield*this._executeQuery(e,{returnGeometry:!0,returnCentroid:!1,outSR:null});yield;const r=i.size;if(!r)return{count:0,extent:null};const s=await this._getBounds(i.items,i.spatialReference,t??this.spatialReference);return yield,{count:r,extent:s}}catch(i){if(i===C)return{count:0,extent:null};throw i}}async*_executeQueryForIdSet(e){try{const t=yield*this._executeQuery(e,{returnGeometry:!0,returnCentroid:!1,outSR:null});yield;const i=t.items,r=new Set;for(const e of i)r.add(t.featureAdapter.getObjectId(e));return r}catch(t){if(t===C)return new Set;throw t}}async*_executeQueryForLatestObservations(e){try{const t=yield*this._executeQuery(e,{});return yield,this._filterLatest(t),yield,await t.createQueryResponse()}catch(t){if(t!==C)throw t;return await new k([],e,this).createQueryResponse()}}async*_executeAttributeBinsQuery(e){let t;try{e=await O(e,this.definitionExpression,this.spatialReference),yield,e=await z(e,{availableFields:this.availableFields,fieldsIndex:this.fieldsIndex,geometryType:this.geometryType,spatialReference:this.spatialReference}),yield;const i=yield*this._executeSceneFilterQuery(e);yield,t=yield*this._executeGeometryQuery(e,i),yield,this._executeAggregateIdsQuery(t),yield,this._executeObjectIdsQuery(t),yield,this._executeTimeQuery(t),yield,this._executeAttributesQuery(t),yield}catch(i){if(i!==C)throw i;t=new k([],e,this)}return await t.createQueryBinsResponse(e)}async*_executeQueryForSummaryStatistics(e={},t){const{field:i,normalizationField:r,valueExpression:s}=t,a=yield*this._executeQueryForStatistics(e,{field:i,normalizationField:r,valueExpression:s});return yield,await a.createSummaryStatisticsResponse(t)}async*_executeQueryForUniqueValues(e={},t){const{field:i,field2:r,field3:s,valueExpression:a}=t,n=yield*this._executeQueryForStatistics(e,{field:i,field2:r,field3:s,valueExpression:a});return yield,await n.createUniqueValuesResponse(t)}async*_executeQueryForClassBreaks(e,t){const{field:i,normalizationField:r,valueExpression:s}=t,a=yield*this._executeQueryForStatistics(e,{field:i,normalizationField:r,valueExpression:s});return yield,await a.createClassBreaksResponse(t)}async*_executeQueryForHistogram(e,t){const{field:i,normalizationField:r,valueExpression:s}=t,a=yield*this._executeQueryForStatistics(e,{field:i,normalizationField:r,valueExpression:s});return yield,await a.createHistogramResponse(t)}async*_executeQueryForSnapping(e,t){const{point:i,distance:r,returnEdge:a,vertexMode:n}=e;if(!a&&"none"===n)return{candidates:[]};let l=s(e.query);l=await P(l,this.definitionExpression,this.spatialReference),yield,l=await U(l,{availableFields:this.availableFields,fieldsIndex:this.fieldsIndex,geometryType:this.geometryType,spatialReference:this.spatialReference}),yield;const o=!S(i.spatialReference,this.spatialReference);o&&(await b(i.spatialReference,this.spatialReference),yield);const u="number"==typeof r?r:r.x,c="number"==typeof r?r:r.y,y={xmin:i.x-u,xmax:i.x+u,ymin:i.y-c,ymax:i.y+c,spatialReference:i.spatialReference},h=o?T(y,this.spatialReference):y;if(!h)return{candidates:[]};const[d]=await Q(w(i),{signal:t});yield;const[m]=await Q(w(h),{signal:t});if(yield,null==d||null==m)return{candidates:[]};const f=await this._searchFeatures(W(m.toJSON()));yield;const p=new k(f,l,this);this._executeObjectIdsQuery(p),yield,this._executeTimeQuery(p),yield,this._executeAttributesQuery(p),yield,yield*this._executeGeometryQueryForSnapping(p),yield;const x=d.toJSON(),g=o?T(x,this.spatialReference):x,_=o?Math.max(h.xmax-h.xmin,h.ymax-h.ymin)/2:r;return p.createSnappingResponse({...e,point:g,distance:_},l.returnZ,i.spatialReference)}async _getBounds(e,t,i){const r=h(d(),f);return await this.featureStore.forEachBounds(e,e=>m(r,e)),X(r,t,i,this.spatialReference,this.hasZ)}_getFullExtent(){return this._fullExtentPromise||="getFullExtent"in this.featureStore&&this.featureStore.getFullExtent?Promise.resolve(this.featureStore.getFullExtent(this.spatialReference)):this._getAllFeatures().then(e=>this._getBounds(e,this.spatialReference,this.spatialReference)),this._fullExtentPromise}async _getAllFeaturesQueryEngineResult(e){return new k(await this._getAllFeatures(),e,this)}async _getAllFeatures(){if(null==this._allFeaturesPromise){const e=[];this._allFeaturesPromise=(async()=>await this.featureStore.forEach(t=>e.push(t)))().then(()=>i(e))}const e=this._allFeaturesPromise,t=await e;return e===this._allFeaturesPromise?t.slice():this._getAllFeatures()}async*_executeQuery(e,t){e=s(e),e=await q(e,this.definitionExpression,this.spatialReference),yield,e=await U(e,{availableFields:this.availableFields,fieldsIndex:this.fieldsIndex,geometryType:this.geometryType,spatialReference:this.spatialReference}),yield,e={...e,...t};const i=yield*this._executeSceneFilterQuery(e);yield;const r=yield*this._executeGeometryQuery(e,i);return yield,this._executeAggregateIdsQuery(r),yield,this._executeObjectIdsQuery(r),yield,this._executeTimeQuery(r),yield,this._executeAttributesQuery(r),r}async*_executeSceneFilterQuery(e){if(null==e.sceneFilter)return null;const{outSR:t,returnGeometry:i,returnCentroid:r}=e,s=this.featureStore.featureSpatialReference,a=e.sceneFilter.geometry,n=null==s||S(s,a.spatialReference)?a:T(a,s);if(!n)return null;const l=i||r,o=R(t)&&!S(this.spatialReference,t)&&l?async e=>this._project(e,t):e=>e;yield;const u=this.featureAdapter,c=await this._searchFeatures(W(n));yield;if("disjoint"===e.sceneFilter.spatialRelationship){if(!c.length)return null;const t=new Set;for(const e of c)t.add(u.getObjectId(e));const i=await this._getAllFeatures();yield;const r=await M("esriSpatialRelDisjoint",n,this.geometryType);yield;const s=e=>!t.has(u.getObjectId(e))||r(u.getGeometry(e)),a=yield*this._runSpatialFilter(i,s);yield;const l=new k(a,e,this);return await o(l)}if(!c.length)return new k([],e,this);if(this._canExecuteSinglePass(n,e))return await o(new k(c,e,this));const y=await M("esriSpatialRelContains",n,this.geometryType);yield;const h=yield*this._runSpatialFilter(c,e=>y(u.getGeometry(e)));return yield,await o(new k(h,e,this))}async*_executeGeometryQuery(i,r){if(null!=r&&0===r.items.length)return r;const{geometry:s,outSR:a,returnGeometry:n,returnCentroid:l}=i,o=r?null:this._getCacheKey(i),u=o?this._cache.get(o):null;if(u)return new k(u,i,this);const c=R(a)&&!S(this.spatialReference,a),y=n||l,h=async e=>(c&&y&&await this._project(e,a),o&&this._cache.put(o,e.items),e),d=this.featureStore.featureSpatialReference,m=!s||null==d||S(d,s.spatialReference)?s:T(s,d);if(!m)return await h(null!=r?r:await this._getAllFeaturesQueryEngineResult(i));yield;const f=this.featureAdapter;let p=await this._searchFeatures(W(s));yield;const x=i.spatialRel??"esriSpatialRelIntersects";if("esriSpatialRelDisjoint"===x){if(!p.length)return await h(null!=r?r:await this._getAllFeaturesQueryEngineResult(i));const e=new Set;for(const i of p)e.add(f.getObjectId(i));let t;null!=r?t=r.items:(yield,t=await this._getAllFeatures(),yield);const s=await M(x,m,this.geometryType);yield;const a=t=>!e.has(f.getObjectId(t))||s(f.getGeometry(t)),n=yield*this._runSpatialFilter(t,a);yield;const l=new k(n,i,this);return await h(l)}if(null!=r){const i=new t;p=p.filter(t=>e(r.items,t,r.items.length,i)>=0)}if(!p.length){const e=new k([],i,this);return o&&this._cache.put(o,e.items),e}if(this._canExecuteSinglePass(m,i))return await h(new k(p,i,this));const g=await M(x,m,this.geometryType);yield;const _=yield*this._runSpatialFilter(p,e=>g(f.getGeometry(e)));return yield,await h(new k(_,i,this))}_executeAggregateIdsQuery(e){if(0===e.items.length||!e.query.aggregateIds?.length||null==this.aggregateAdapter)return;const t=new Set;for(const r of e.query.aggregateIds){this.aggregateAdapter.getFeatureObjectIds(r).forEach(e=>t.add(e))}const i=this.featureAdapter.getObjectId;e.items=e.items.filter(e=>t.has(i(e)))}_executeObjectIdsQuery(e){if(0===e.items.length||!e.query.objectIds?.length)return;const t=new Set(e.query.objectIds),i=this.featureAdapter.getObjectId;e.items=e.items.filter(e=>t.has(i(e)))}_executeTimeQuery(e){if(0===e.items.length)return;const t=J(this.timeInfo,e.query.timeExtent,this.featureAdapter);null!=t&&(e.items=e.items.filter(t))}_executeAttributesQuery(e){if(0===e.items.length)return;const t=j(e.query.where,this.fieldsIndex);if(t){if(!t.isStandardized)throw new TypeError("Where clause is not standardized");e.items=e.items.filter(e=>t.testFeature(e,this.featureAdapter))}}async*_executeGeometryQueryForSnapping(e){const{query:t}=e,{spatialRel:i}=t;if(!e?.items?.length||!t.geometry||!i)return;const r=await M(i,t.geometry,this.geometryType);yield;const s=this.featureAdapter,a=e=>r(s.getGeometry(e)),n=yield*this._runSpatialFilter(e.items,a);e.items=n}*_runSpatialFilter(e,t){if(!t)return e;if(null==this._frameTask)return e.filter(e=>t(e));let i=yield;const r=new Array;for(const s of e)t(s)&&r.push(s),i.madeProgress(),i.done&&(i=yield);return r}_filterLatest(e){const{trackIdField:t,startTimeField:i,endTimeField:r}=this.timeInfo,s=r||i,a=new Map,n=this.featureAdapter.getAttribute;for(const l of e.items){const e=n(l,t),i=n(l,s),r=a.get(e);(!r||i>n(r,s))&&a.set(e,l)}e.items=Array.from(a.values())}_getCacheKey(e){const{geometry:t,spatialRel:i,returnGeometry:r,returnCentroid:s,outSR:a,resultType:n,cacheHint:l}=e;if("tile"!==n&&!l)return null;const o=r||s;return R(a)&&!S(this.spatialReference,a)&&o?JSON.stringify([t,i,a]):JSON.stringify([t,i])}_canExecuteSinglePass(e,t){const{spatialRel:i}=t;return H(e)&&("esriSpatialRelEnvelopeIntersects"===i||"esriGeometryPoint"===this.geometryType&&("esriSpatialRelIntersects"===i||"esriSpatialRelContains"===i))}async _project(e,t){if(!t||S(this.spatialReference,t))return e;const r=this.featureAdapter,s=y()?await this._getFullExtent():void 0,a=await A(e.items.map(e=>E(this.geometryType,r.getGeometry(e))),this.spatialReference,t,{areaOfInterestExtent:s});return e.items=i(a.map((t,i)=>r.cloneWithGeometry(e.items[i],I(t,this.hasZ,this.hasM),this.geometryType))),e}async _searchFeatures(e){const t=new Set;await Promise.all(e.map(e=>this.featureStore.forEachInBounds(e,e=>t.add(e))));const i=Array.from(t.values());return t.clear(),i}async*_executeQueryForStatistics(e,t){e=s(e);try{e=await q(e,this.definitionExpression,this.spatialReference),yield,e=await B(e,t,{availableFields:this.availableFields,fieldsIndex:this.fieldsIndex,geometryType:this.geometryType,spatialReference:this.spatialReference}),yield;const i=yield*this._executeSceneFilterQuery(e);yield;const r=yield*this._executeGeometryQuery(e,i);return yield,this._executeAggregateIdsQuery(r),yield,this._executeObjectIdsQuery(r),yield,this._executeTimeQuery(r),yield,this._executeAttributesQuery(r),yield,r}catch(i){if(i!==C)throw i;return new k([],e,this)}}get test(){}}function W(e){if(H(e)){if(_(e))return[p(Math.min(e.xmin,e.xmax),Math.min(e.ymin,e.ymax),Math.max(e.xmin,e.xmax),Math.max(e.ymin,e.ymax))];if(F(e))return e.rings.map(e=>p(Math.min(e[0][0],e[2][0]),Math.min(e[0][1],e[2][1]),Math.max(e[0][0],e[2][0]),Math.max(e[0][1],e[2][1])))}return[g(x(),e)]}function X(e,t,i,r,s){const a={xmin:e[0],ymin:e[1],xmax:e[3],ymax:e[4],spatialReference:r};s&&isFinite(e[2])&&isFinite(e[5])&&(a.zmin=e[2],a.zmax=e[5],a.hasZ=!0);const n=T(a,t,i);if(n.spatialReference=i,n.xmax-n.xmin===0){const e=u(n.spatialReference);n.xmin-=e,n.xmax+=e}if(n.ymax-n.ymin===0){const e=u(n.spatialReference);n.ymin-=e,n.ymax+=e}if(s&&null!=n.zmin&&null!=n.zmax&&n.zmax-n.zmin===0){const e=u(n.spatialReference);n.zmin-=e,n.zmax+=e}return n}export{D as Feature,K as QueryEngine,W as getQueryBoundingRects,X as getQueryResultExtent};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import e from"../../Graphic.js";import{clone as t}from"../../core/lang.js";import{isFloat32Array as n,isFloat64Array as r}from"../../core/typedArrayUtil.js";import a from"../../geometry/SpatialReference.js";import{fromJSON as i}from"../../geometry/support/jsonUtils.js";import{makeDehydratedPoint as s}from"./dehydratedPoint.js";function o(e){return"declaredClass"in e}function m(e){return"declaredClass"in e}function l(e){return"declaredClass"in e}function c(n,r,a){return n?l(n)?(n.origin!==a&&(n.origin=a),n):new e({layer:r,sourceLayer:r,origin:a,visible:n.visible,symbol:t(n.symbol),attributes:t(n.attributes),geometry:u(n.geometry)}):null}function u(e){return null==e?null:o(e)?e:i(f(e))}function f(e){const{wkid:t,wkt:n,wkt2:r,latestWkid:a}=e.spatialReference,i={wkid:t,wkt:n,wkt2:r,latestWkid:a};switch(e.type){case"point":{const{x:t,y:n,z:r,m:a}=e;return{x:t,y:n,z:r,m:a,spatialReference:i}}case"polygon":{const{rings:t,hasZ:n,hasM:r}=e;return{rings:p(t),hasZ:n,hasM:r,spatialReference:i}}case"polyline":{const{paths:t,hasZ:n,hasM:r}=e;return{paths:p(t),hasZ:n,hasM:r,spatialReference:i}}case"extent":{const{xmin:t,xmax:n,ymin:r,ymax:a,zmin:s,zmax:o,mmin:m,mmax:l,hasZ:c,hasM:u}=e;return{xmin:t,xmax:n,ymin:r,ymax:a,zmin:s,zmax:o,mmin:m,mmax:l,hasZ:c,hasM:u,spatialReference:i}}case"multipoint":{const{points:t,hasZ:n,hasM:r}=e;return{points:d(t)?h(t):t,hasZ:n,hasM:r,spatialReference:i}}default:return}}function p(e){return y(e)?e.map(e=>h(e)):e}function h(e){return e.map(e=>Array.from(e))}function y(e){for(const t of e)if(0!==t.length)return d(t);return!1}function d(e){return e.length>0&&(n(e[0])||r(e[0]))}function x(e,t){if(!e)return null;let n;if(m(e)){if(null==t)return e.clone();if(m(t))return t.copy(e)}return null!=t?(n=t,n.x=e.x,n.y=e.y,n.spatialReference=e.spatialReference,e.hasZ?(n.z=e.z,n.hasZ=e.hasZ):(n.z=void 0,n.hasZ=!1),e.hasM?(n.m=e.m,n.hasM=!0):(n.m=void 0,n.hasM=!1)):(n=s(e.x,e.y,e.z,e.spatialReference),e.hasM&&(n.m=e.m,n.hasM=!0)),n}function k(e){if(e instanceof a)return e;const{wkid:t,wkt:n,wkt2:r,latestWkid:i}=e,s={wkid:t,wkt:n,wkt2:r,latestWkid:i};return a.fromJSON(s)}export{x as clonePoint,u as hydrateGeometry,c as hydrateGraphic,k as hydratedSpatialReference,o as isHydratedGeometry,l as isHydratedGraphic,m as isHydratedPoint};
2
+ import e from"../../Graphic.js";import{clone as t}from"../../core/lang.js";import{isFloat32Array as n,isFloat64Array as r}from"../../core/typedArrayUtil.js";import a from"../../geometry/SpatialReference.js";import{fromJSON as i}from"../../geometry/support/jsonUtils.js";import{makeDehydratedPoint as s}from"./dehydratedPoint.js";function o(e){return"declaredClass"in e}function m(e){return"declaredClass"in e}function l(e){return"declaredClass"in e}function c(n,r,a){return n?l(n)?(n.origin!==a&&(n.origin=a),n):new e({layer:r,sourceLayer:r,origin:a,visible:n.visible,symbol:t(n.symbol),attributes:t(n.attributes),geometry:u(n.geometry)}):null}function u(e){return null==e?null:o(e)?e:i(f(e))}function f(e){const{wkid:t,wkt:n,wkt2:r,latestWkid:a}=e.spatialReference,i={wkid:t,wkt:n,wkt2:r,latestWkid:a};switch(e.type){case"point":{const{x:t,y:n,z:r,m:a}=e;return{x:t,y:n,z:r,m:a,spatialReference:i}}case"polygon":{const{rings:t,hasZ:n,hasM:r}=e;return{rings:p(t),hasZ:n,hasM:r,spatialReference:i}}case"polyline":{const{paths:t,hasZ:n,hasM:r}=e;return{paths:p(t),hasZ:n,hasM:r,spatialReference:i}}case"extent":{const{xmin:t,xmax:n,ymin:r,ymax:a,zmin:s,zmax:o,mmin:m,mmax:l,hasZ:c,hasM:u}=e;return{xmin:t,xmax:n,ymin:r,ymax:a,zmin:s,zmax:o,mmin:m,mmax:l,hasZ:c,hasM:u,spatialReference:i}}case"multipoint":{const{points:t,hasZ:n,hasM:r}=e;return{points:d(t)?h(t):t,hasZ:n,hasM:r,spatialReference:i}}default:return}}function p(e){return y(e)?e.map(e=>h(e)):e}function h(e){return e.map(e=>Array.from(e))}function y(e){for(const t of e)if(0!==t.length)return d(t);return!1}function d(e){return e.length>0&&(n(e[0])||r(e[0]))}function x(e,t){if(!e)return null;let n;if(m(e)){if(null==t)return e.clone();if(m(t))return t.copy(e)}return null!=t?(n=t,n.x=e.x,n.y=e.y,n.spatialReference=e.spatialReference,e.hasZ?(n.z=e.z,n.hasZ=e.hasZ):(n.z=void 0,n.hasZ=!1),e.hasM?(n.m=e.m,n.hasM=!0):(n.m=void 0,n.hasM=!1)):(n=s(e.x,e.y,e.z,e.spatialReference),e.hasM&&(n.m=e.m,n.hasM=!0)),n}function k(e){if(e instanceof a)return e;const{wkid:t,wkt:n,wkt2:r,latestWkid:i}=e,s={wkid:t,wkt:n,wkt2:r,latestWkid:i};return a.fromJSON(s)}export{x as clonePoint,u as hydrateGeometry,f as hydrateGeometryJSON,c as hydrateGraphic,k as hydratedSpatialReference,o as isHydratedGeometry,l as isHydratedGraphic,m as isHydratedPoint};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import{property as r,subclass as o}from"../../core/accessorSupport/decorators.js";import{excludeTables as s}from"../../core/accessorSupport/layerContainerType.js";import t from"../support/TimeSeriesInfo.js";const i=i=>{const a=i;let n=class extends a{constructor(){super(...arguments),this.dataSeriesInfos=null}};return e([r({type:[t],json:{write:{enabled:!0,allowNull:!0,layerContainerTypes:s},origins:{"web-scene":{write:!1,read:!1}}}})],n.prototype,"dataSeriesInfos",void 0),n=e([o("esri.layers.mixins.DataSeriesLayer")],n),n};export{i as DataSeriesLayer};
2
+ import{__decorate as e}from"tslib";import{property as r,subclass as s}from"../../core/accessorSupport/decorators.js";import{excludeTables as o}from"../../core/accessorSupport/layerContainerType.js";import t from"../support/TimeSeriesInfo.js";const i=i=>{const a=i;let n=class extends a{constructor(){super(...arguments),this.dataSeriesInfos=null}};return e([r({type:[t],json:{read:{source:["layerDefinition.dataSeriesInfos","dataSeriesInfos"],reader:(e,r,s)=>{const o=r?.layerDefinition?.dataSeriesInfos??r.dataSeriesInfos;return o?.filter(e=>"time-series-fields"===e.type).map(e=>t.fromJSON(e,s))}},write:{target:"layerDefinition.dataSeriesInfos",enabled:!0,allowNull:!0,layerContainerTypes:o},origins:{"web-scene":{write:!1,read:!1}}}})],n.prototype,"dataSeriesInfos",void 0),n=e([s("esri.layers.mixins.DataSeriesLayer")],n),n};export{i as DataSeriesLayer};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import e from"../../request.js";import{isSome as t}from"../../core/arrayUtils.js";import{isDateString as i}from"../../core/date.js";import r from"../../core/Error.js";import{cacheAsync as n,getYieldedValue as o}from"../../core/iteratorUtils.js";import{_parseInfo as l}from"../../core/number.js";import{urlToObject as s}from"../../core/urlUtils.js";import a from"./Field.js";import{normalizeFieldName as c,getFieldDefaultLength as f}from"./fieldUtils.js";import{inferLocationInfo as u}from"./locationUtils.js";async function d(t,i={}){const{customParameters:n,signal:o}=i,l=s(t),a=await e(l.path,{query:{...l.query,...n},responseType:"native",signal:o});if(!a.data.body)throw new r("csv-utils:empty-csv","CSV is empty");const[c]=await Promise.allSettled([m(a.data.body)]);if(await a.data.body.cancel(),"rejected"===c.status)throw c.reason;return{url:t,customParameters:n,...c.value}}async function m(e){const t=e.getReader(),i=n(w(t)),l=i(),s=o(await l.next())?.trim(),c=o(await l.next())?.trim();if(!s)throw new r("csv-utils:empty-csv","CSV is empty");const{delimiter:f,locationInfo:u}=N(s,c);if(!f)throw new r("csv-utils:invalid-delimiter","Unable to detect the delimiter from CSV",{firstLine:s,secondLine:c});const{names:d,aliases:m}=S(s,f),p=i();await p.next();const y=await j(p,f,d,m,u);return t.releaseLock(),e.cancel().catch(()=>{}),{delimiter:f,fields:y.map(e=>a.fromJSON(e)),latitudeField:u?.latitudeFieldName,longitudeField:u?.longitudeFieldName}}const p=/^\s*"([\S\s]*)"\s*$/,y=/""/g,g="\n",h=[",",";","|","\t"];async function*w(e){const t=/\r?\n/gm,i=new TextDecoder;let r="";for await(const n of F(e)){const e=`${r}${i.decode(n)}`.split(t).filter(Boolean);r=e.pop()||"",yield*e}}async function*F(e){let t=await e.read();for(;!t.done;)yield t.value,t=await e.read();e.releaseLock()}function N(e,t,i){e=e.trim(),t=t?.trim();const r=[],n=Array.from(new Set([i?.delimiter,...h])).filter(e=>null!=e);for(const l of n){const i=v(e,l).length,n=v(t,l).length??i;i>1&&r.push({weight:Math.min(i,n),delimiter:l})}const o=r.sort(({weight:e},{weight:t})=>t-e).map(({delimiter:e})=>e);for(const l of o){const t=S(e,l).names,r=u(t,i?.longitudeField,i?.latitudeField);if(r.longitudeFieldName&&r.latitudeFieldName)return{delimiter:l,locationInfo:r}}return{delimiter:o[0],locationInfo:null}}async function*b(e,t,i,r=()=>Object.create(null)){let n="",o="",l=0,s=r(),a=0;for await(const c of e){const e=T(c,i);for(const c of e)if(n+=o+c,o="",l+=I(c),l%2==0){if(l>0){const e=p.exec(n);if(!e)return s=r(),a=0,n="",void(l=0);s[t[a]]=U(e[1]).replaceAll(y,'"'),a++}else s[t[a]]=U(n),a++;n="",l=0}else o=i;0===l?(yield s,s=r(),a=0):o=g}}function T(e,t){return x(e,t)}function*x(e,t){let i=0;for(;i<=e.length;){const r=e.indexOf(t,i),n=e.slice(i,r>-1?r:void 0);i+=n.length+t.length,yield n}}function S(e,i){const r=v(e,i).filter(t),n=r.map(e=>c(e));for(let t=n.length-1;t>=0;t--)n[t]||(n.splice(t,1),r.splice(t,1));return{names:n,aliases:r}}function v(e,t){if(!e?.length)return[];const i=[];let r="",n="",o=0;const l=T(e,t);for(const s of l)if(r+=n+s,n="",o+=I(s),o%2==0){if(o>0){const e=p.exec(r);e&&i.push(e[1].replaceAll(y,'"'))}else i.push(r);r="",o=0}else n=t;return i}async function j(e,t,i,r,n){const o=[],l=[];for await(const s of b(e,i,t)){if(10===l.length)break;l.push(s)}for(let s=0;s<i.length;s++){const e=i[s],t=r[s];if(e===n?.longitudeFieldName||e===n?.latitudeFieldName)o.push({name:e,type:"esriFieldTypeDouble",alias:t});else{const i=D(l.map(t=>t[e]))??"esriFieldTypeString";o.push({name:e,type:i,alias:t,length:f(i)})}}return o}function D(e){if(!e.length)return"esriFieldTypeString";const t=/[^+\-.,0-9]/;return e.map(e=>{if(""!==e){if(!t.test(e)){let t=O(e);if(!isNaN(t))return/[.,]/.test(e)||!Number.isInteger(t)||t>214783647||t<-214783648?"esriFieldTypeDouble":"esriFieldTypeInteger";if(e.includes("E")){if(t=Number(e),!Number.isNaN(t))return"esriFieldTypeDouble";if(e.includes(",")&&(e=e.replace(",","."),t=Number(e),!Number.isNaN(t)))return"esriFieldTypeDouble"}}return i(e)?"esriFieldTypeDate":"esriFieldTypeString"}}).reduce((e,t)=>void 0===e?t:void 0===t?e:e===t?t:"esriFieldTypeString"===e||"esriFieldTypeString"===t?"esriFieldTypeString":"esriFieldTypeDouble"===e||"esriFieldTypeDouble"===t?"esriFieldTypeDouble":void 0)}const O=function(){const e=l(),t=new RegExp("^"+e.regexp+"$"),i=new RegExp("["+e.group+"\\s\\xa0]","g"),r=e.factor;return n=>{const o=t.exec(n);if(e.factor=r,!o)return NaN;let l=o[1];if(!o[1]){if(!o[2])return NaN;l=o[2],e.factor*=-1}return l=l.replace(i,"").replace(e.decimal,"."),+l*e.factor}}();function U(e){return JSON.parse(JSON.stringify(e))}function I(e){let t=0,i=0;for(i=e.indexOf('"',i);i>=0;)t++,i=e.indexOf('"',i+1);return t}export{d as getCSVLayerInfo};
2
+ import e from"../../request.js";import{isSome as t}from"../../core/arrayUtils.js";import{isDateString as i}from"../../core/date.js";import r from"../../core/Error.js";import{cacheAsync as n,getYieldedValue as o}from"../../core/iteratorUtils.js";import{_parseInfo as l}from"../../core/number.js";import{urlToObject as s}from"../../core/urlUtils.js";import a from"./Field.js";import{normalizeFieldName as c,getFieldDefaultLength as f}from"./fieldUtils.js";import{inferLocationInfo as u}from"./locationUtils.js";async function d(t,i={}){const{customParameters:n,signal:o}=i,l=s(t),a=await e(l.path,{query:{...l.query,...n},responseType:"native",signal:o});if(!a.data.body)throw new r("csv-utils:empty-csv","CSV is empty");const[c]=await Promise.allSettled([m(a.data.body)]);if(await a.data.body.cancel(),"rejected"===c.status)throw c.reason;return{url:t,customParameters:n,...c.value}}async function m(e){const t=e.getReader(),i=n(w(t)),l=i(),s=o(await l.next())?.trim(),c=o(await l.next())?.trim();if(!s)throw new r("csv-utils:empty-csv","CSV is empty");const{delimiter:f,locationInfo:u}=N(s,c);if(!f)throw new r("csv-utils:invalid-delimiter","Unable to detect the delimiter from CSV",{firstLine:s,secondLine:c});const{names:d,aliases:m}=S(s,f),p=i();await p.next();const y=await j(p,f,d,m,u);return t.releaseLock(),e.cancel().catch(()=>{}),{delimiter:f,fields:y.map(e=>a.fromJSON(e)),latitudeField:u?.latitudeFieldName,longitudeField:u?.longitudeFieldName}}const p=/^\s*"([\S\s]*)"\s*$/,y=/""/g,g="\n",h=[",",";","|","\t"];async function*w(e){const t=/\r?\n/gm,i=new TextDecoder;let r="";for await(const n of F(e)){const e=`${r}${i.decode(n)}`.split(t).filter(Boolean);r=e.pop()||"",yield*e}}async function*F(e){let t=await e.read();for(;!t.done;)yield t.value,t=await e.read();e.releaseLock()}function N(e,t,i){e=e.trim(),t=t?.trim();const r=[],n=Array.from(new Set([i?.delimiter,...h])).filter(e=>null!=e);for(const l of n){const i=v(e,l).length,n=v(t,l).length??i;i>1&&r.push({weight:Math.min(i,n),delimiter:l})}const o=r.sort(({weight:e},{weight:t})=>t-e).map(({delimiter:e})=>e);for(const l of o){const t=S(e,l).names,r=u(t,i?.longitudeField,i?.latitudeField);if(r.longitudeFieldName&&r.latitudeFieldName)return{delimiter:l,locationInfo:r}}return{delimiter:o[0],locationInfo:null}}async function*b(e,t,i,r=()=>Object.create(null)){let n="",o="",l=0,s=r(),a=0;for await(const c of e){const e=T(c,i);for(const c of e)if(n+=o+c,o="",l+=L(c),l%2==0){if(l>0){const e=p.exec(n);if(!e)return s=r(),a=0,n="",void(l=0);s[t[a]]=E(e[1]).replaceAll(y,'"'),a++}else s[t[a]]=E(n),a++;n="",l=0}else o=i;0===l?(yield s,s=r(),a=0):o=g}}function T(e,t){return x(e,t)}function*x(e,t){let i=0;for(;i<=e.length;){const r=e.indexOf(t,i),n=e.slice(i,r>-1?r:void 0);i+=n.length+t.length,yield n}}function S(e,i){const r=v(e,i).filter(t),n=r.map(e=>c(e));for(let t=n.length-1;t>=0;t--)n[t]||(n.splice(t,1),r.splice(t,1));return{names:n,aliases:r}}function v(e,t){if(!e?.length)return[];const i=[];let r="",n="",o=0;const l=T(e,t);for(const s of l)if(r+=n+s,n="",o+=L(s),o%2==0){if(o>0){const e=p.exec(r);e&&i.push(e[1].replaceAll(y,'"'))}else i.push(r);r="",o=0}else n=t;return i}async function j(e,t,i,r,n){const o=[],l=[];for await(const s of b(e,i,t)){if(10===l.length)break;l.push(s)}for(let s=0;s<i.length;s++){const e=i[s],t=r[s];if(e===n?.longitudeFieldName||e===n?.latitudeFieldName)o.push({name:e,type:"esriFieldTypeDouble",alias:t});else{const i=U(l.map(t=>t[e]))??"esriFieldTypeString";o.push({name:e,type:i,alias:t,length:f(i)})}}return o}const D=-2147483648,O=2**31-1;function U(e){if(!e.length)return"esriFieldTypeString";const t=/[^+\-.,0-9]/;return e.map(e=>{if(""!==e){if(!t.test(e)){let t=I(e);if(!isNaN(t))return/[.,]/.test(e)||!Number.isInteger(t)||t<D||t>O?"esriFieldTypeDouble":"esriFieldTypeInteger";if(e.includes("E")){if(t=Number(e),!Number.isNaN(t))return"esriFieldTypeDouble";if(e.includes(",")&&(e=e.replace(",","."),t=Number(e),!Number.isNaN(t)))return"esriFieldTypeDouble"}}return i(e)?"esriFieldTypeDate":"esriFieldTypeString"}}).reduce((e,t)=>void 0===e?t:void 0===t?e:e===t?t:"esriFieldTypeString"===e||"esriFieldTypeString"===t?"esriFieldTypeString":"esriFieldTypeDouble"===e||"esriFieldTypeDouble"===t?"esriFieldTypeDouble":void 0)}const I=function(){const e=l(),t=new RegExp("^"+e.regexp+"$"),i=new RegExp("["+e.group+"\\s\\xa0]","g"),r=e.factor;return n=>{const o=t.exec(n);if(e.factor=r,!o)return NaN;let l=o[1];if(!o[1]){if(!o[2])return NaN;l=o[2],e.factor*=-1}return l=l.replace(i,"").replace(e.decimal,"."),+l*e.factor}}();function E(e){return JSON.parse(JSON.stringify(e))}function L(e){let t=0,i=0;for(i=e.indexOf('"',i);i>=0;)t++,i=e.indexOf('"',i+1);return t}export{d as getCSVLayerInfo};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import e from"../../core/Error.js";import{getDeepValue as n,setDeepValue as i}from"../../core/object.js";import{union as t}from"../../core/SetUtils.js";import{parseWhereClause as r}from"../../core/sql.js";import{getDomainRange as l}from"./domainUtils.js";import{getFieldNameFromSimpleExpression as o}from"../../support/arcadeExpressionUtils.js";import{isStringOrNull as s,isString as a}from"../../support/guards.js";import{loadArcade as u}from"../../support/loadArcade.js";const f=/^([0-9_])/,c=/[^a-z0-9_\u0080-\uffff]+/gi;function d(e){if(null==e)return null;return e.trim().replaceAll(c,"_").replace(f,"F$1")||null}const p=["field","field2","field3","normalizationField","rotationInfo.field","proportionalSymbolInfo.field","proportionalSymbolInfo.normalizationField","colorInfo.field","colorInfo.normalizationField"],m=["field","normalizationField"];function y(e,n){if(null!=e&&null!=n)for(const i of Array.isArray(e)?e:[e])if(g(p,i,n),"visualVariables"in i&&i.visualVariables)for(const e of i.visualVariables)g(m,e,n)}function g(e,t,r){if(e)for(const l of e){const e=n(l,t),o=e&&"function"!=typeof e&&r.get(e);o&&i(l,o.name,t)}}function F(e,n){if(null!=e&&n?.fields?.length)if("startField"in e){const i=n.get(e.startField),t=n.get(e.endField);e.startField=i?.name??null,e.endField=t?.name??null}else{const i=n.get(e.startTimeField),t=n.get(e.endTimeField);e.startTimeField=i?.name??null,e.endTimeField=t?.name??null}}const b=new Set;function I(e,n){return e&&n?(b.clear(),w(b,e,n),Array.from(b).sort()):[]}function w(e,n,i){if(i)if(n?.fields?.length)if(i.includes("*"))for(const{name:t}of n.fields)e.add(t);else for(const t of i)x(e,n,t);else{if(i.includes("*"))return e.clear(),void e.add("*");for(const n of i)null!=n&&e.add(n)}}function x(e,n,i){if("string"==typeof i)if(n){const t=n.get(i);t&&e.add(t.name)}else e.add(i)}function T(e,n){return null==n||null==e?[]:n.includes("*")?(e.fields??[]).map(e=>e.name):n}function h(e,n,i=1){if(!n||!e)return[];if(n.includes("*"))return["*"];const t=I(e,n);return t.length/e.fields.length>=i?["*"]:t}async function v(e,n,i,t){if(!t)return;const r=o(t);if(r)x(e,n,r);else{const{arcadeUtils:r}=await u(),l=r.extractFieldNames(t,i?.partitions??n?.fields?.map(e=>e.name));for(const t of l)x(e,i?.index??n,t)}}async function S(n,i,t){if(t&&"1=1"!==t){const l=await r(t,i);if(!l.isStandardized)throw new e("fieldUtils:collectFilterFields","Where clause is not standardized",{where:t});w(n,i,l.fieldNames)}}function E({displayField:e,fields:n}){return e||(n?.length?A(n):null)}function A(e){return _(e,"name-or-title")||_(e,"unique-identifier")||_(e,"type-or-category")||$(e)}function $(e){for(const n of e){if(!n?.name)continue;const e=n.name.toLowerCase();if(e.includes("name")||e.includes("title"))return n.name}return null}function _(e,n){for(const i of e)if(i?.valueType&&i.valueType===n)return i.name;return null}async function N(e){if(!e)return[];const n=new Set;return await L(n,e),Array.from(n).sort()}async function L(e,n){if(!n)return;const i=n.elevationInfo?.featureExpressionInfo;return i?i.collectRequiredFields(e,n.fieldsIndex):void 0}function M(e,n,i){i.onStatisticExpression?v(e,n,null,i.onStatisticExpression.expression):e.add(i.onStatisticField)}async function j(e,n,i){if(!n||!i||!("fields"in i))return;const t=[],r=i.popupTemplate;t.push(O(e,n,r)),i.fields&&t.push(...i.fields.map(async i=>M(e,n.fieldsIndex,i))),await Promise.all(t)}async function D(e,n){const{fieldsIndex:i,trackInfo:t}=n;if(!n||!t||!i)return;const r=[t.latestObservations.renderer?.collectRequiredFields(e,i),t.previousObservations.renderer?.collectRequiredFields(e,i),t.trackLines.renderer?.collectRequiredFields(e,i)];t.popupTemplate&&r.push(O(e,n,t.popupTemplate));for(const l of[t.latestObservations.labelingInfo,t.previousObservations.labelingInfo,t.trackLines.labelingInfo])if(l)for(const n of l)r.push(ee(e,i,n));await Promise.all(r)}async function O(e,n,i){const t=[];i?.expressionInfos&&t.push(...i.expressionInfos.map(i=>v(e,n.fieldsIndex,null,i.expression)));const r=i?.content;if(Array.isArray(r))for(const l of r)"expression"===l.type&&l.expressionInfo&&t.push(v(e,n.fieldsIndex,null,l.expressionInfo.expression));await Promise.all(t)}async function C(e,n,i){n&&(n.timeInfo&&i?.timeExtent&&w(e,n.fieldsIndex,[n.timeInfo.startField,n.timeInfo.endField]),n.floorInfo&&w(e,n.fieldsIndex,[n.floorInfo.floorField]),null!=i?.where&&await S(e,n.fieldsIndex,i.where))}async function R(e,n,i){n&&i&&await Promise.all(i.map(i=>V(e,n,i)))}async function V(e,n,i){n&&i&&(i.valueExpression?await v(e,n.fieldsIndex,null,i.valueExpression):i.field&&x(e,n.fieldsIndex,i.field))}async function k(e){if(!e)return[];const n="timeInfo"in e&&e.timeInfo;return n?I(e.fieldsIndex,[e.trackIdField,n.startField,n.endField]):[]}function U(e){return e?I(e.fieldsIndex,J(e)):[]}function q(e){if(!e)return[];const n=e.geometryFieldsInfo;return n?I(e.fieldsIndex,[n.shapeAreaField,n.shapeLengthField]):[]}async function z(e,n,i){if(!n||!i)return;const t=n.fieldsIndex;await Promise.all(i.filters.map(n=>S(e,t,n.where)))}const X=new Set(["oid","global-id","guid"]),P=new Set(["oid","global-id"]),B=[/^fnode_$/i,/^tnode_$/i,/^lpoly_$/i,/^rpoly_$/i,/^poly_$/i,/^shape$/i,/^shape_$/i,/^subclass$/i,/^subclass_$/i,/^rings_ok$/i,/^rings_nok$/i,/objectid/i,/^perimeter_/i,/_perimeter$/i,/_i$/i];function G(e){const n=new Set;W(e).forEach(e=>n.add(e)),q(e).forEach(e=>n.add(e.toLowerCase()));const i=e&&"infoFor3D"in e?e.infoFor3D:void 0;return i&&(Object.values(i.assetMapFieldRoles).forEach(e=>n.add(e.toLowerCase())),Object.values(i.transformFieldRoles).forEach(e=>n.add(e.toLowerCase()))),Array.from(n)}function J(e){if(!e)return[];const n="editFieldsInfo"in e&&e.editFieldsInfo;if(!n)return[];const{creationDateField:i,creatorField:t,editDateField:r,editorField:l}=n;return[i,t,r,l].filter(Boolean)}function W(e){return J(e).map(e=>e.toLowerCase())}function H(e){return!!e.type}function K(e,n){return!!e.editable&&H(e)&&!X.has(e.type)&&!W(n).includes(e.name?.toLowerCase()??"")}function Q(e,n){const i=e.name?.toLowerCase()??"";return!(null!=n?.objectIdField&&i===n.objectIdField.toLowerCase()||null!=n?.globalIdField&&i===n.globalIdField.toLowerCase()||G(n).includes(i)||P.has(e.type)||B.some(e=>e.test(i)))}async function Y(e){if(!e)return[];const n=new Set;return await Z(n,e),Array.from(n).sort()}async function Z(e,n){const{labelingInfo:i,fieldsIndex:t}=n;i?.length&&await Promise.all(i.map(n=>ee(e,t,n)))}async function ee(e,n,i){if(!i)return;const t=i.getLabelExpression(),r=i.where;if("arcade"===t.type)await v(e,n,null,t.expression);else{const i=t.expression.match(/{[^}]*}/g);i&&i.forEach(i=>{x(e,n,i.slice(1,-1))})}await S(e,n,r)}function ne(e){const n=e.defaultValue;return void 0!==n&&se(e,n)?n:e.nullable?null:void 0}function ie(e){const n="string"==typeof e?{type:e}:e;return be(n)?255:"esriFieldTypeDate"===n.type||"date"===n.type?8:void 0}function te(e){return"number"==typeof e&&!isNaN(e)&&isFinite(e)}function re(e){return null===e||te(e)}function le(e){return null===e||Number.isInteger(e)}function oe(){return!0}function se(e,n){let i;switch(e.type){case"date":case"integer":case"long":case"small-integer":case"big-integer":case"esriFieldTypeDate":case"esriFieldTypeInteger":case"esriFieldTypeLong":case"esriFieldTypeSmallInteger":case"esriFieldTypeBigInteger":i=e.nullable?le:Number.isInteger;break;case"double":case"single":case"esriFieldTypeSingle":case"esriFieldTypeDouble":i=e.nullable?re:te;break;case"string":case"esriFieldTypeString":i=e.nullable?s:a;break;default:i=oe}return 1===arguments.length?i:i(n)}const ae=["integer","small-integer","big-integer","long"],ue=["single","double"],fe=[...ae,...ue],ce=["esriFieldTypeInteger","esriFieldTypeSmallInteger","esriFieldTypeLong","esriFieldTypeBigInteger"],de=["esriFieldTypeSingle","esriFieldTypeDouble"],pe=new Set([...ae,...ce]),me=new Set([...ue,...de]),ye=t(pe,me);function ge(e){return null!=e&&pe.has(e.type)}function Fe(e){return null!=e&&ye.has(e.type)}function be(e){return null!=e&&("string"===e.type||"esriFieldTypeString"===e.type)}function Ie(e){return null!=e&&("date"===e.type||"esriFieldTypeDate"===e.type)}function we(e){return null!=e&&("date-only"===e.type||"esriFieldTypeDateOnly"===e.type)}function xe(e){return null!=e&&("timestamp-offset"===e.type||"esriFieldTypeTimestampOffset"===e.type)}function Te(e){return null!=e&&("time-only"===e.type||"esriFieldTypeTimeOnly"===e.type)}function he(e){return null!=e&&("date"===e.type||"date-only"===e.type||"time-only"===e.type||"timestamp-offset"===e.type)}function ve(e){return null!=e&&("oid"===e.type||"esriFieldTypeOID"===e.type)}function Se(e){return null!=e&&("global-id"===e.type||"esriFieldTypeGlobalID"===e.type)}function Ee(e,n){return null===_e(e,n)}function Ae(e){return null==e||"number"==typeof e&&isNaN(e)?null:e}function $e(e){return parseFloat(e.replaceAll("_",""))}function _e(e,n){return null==e||e.nullable&&null===n?null:se(e,n)?Fe(e)&&!Ne(e.type,Number(n))?"numeric-range-validation-error::out-of-range":null:"type-validation-error::invalid-type"}function Ne(e,n){const i="string"==typeof e?Me(e):e;if(!i)return!1;const t=i.min,r=i.max;return i.isInteger?Number.isInteger(n)&&n>=t&&n<=r:n>=t&&n<=r}function Le(e,n){const i=l(e,n);return i||(Fe(e)?Me(e.type):void 0)}function Me(e){switch(e){case"esriFieldTypeSmallInteger":case"small-integer":return De;case"esriFieldTypeInteger":case"esriFieldTypeLong":case"integer":case"long":return Oe;case"esriFieldTypeBigInteger":case"big-integer":return Ce;case"esriFieldTypeSingle":case"single":return Ve;case"esriFieldTypeDouble":case"double":return ke}}function je(e){if(!te(e))return null;if(Number.isInteger(e)){if(e>=De.min&&e<=De.max)return"esriFieldTypeSmallInteger";if(e>=Oe.min&&e<=Oe.max)return"esriFieldTypeInteger";if(e>=Ce.min&&e<=Ce.max)return"esriFieldTypeBigInteger"}return e>=Ve.min&&e<=Ve.max?"esriFieldTypeSingle":"esriFieldTypeDouble"}const De={min:-32768,max:32767,isInteger:!0,rawMin:-32768,rawMax:32767},Oe={min:-2147483648,max:2147483647,isInteger:!0,rawMin:-2147483648,rawMax:2147483647},Ce={min:-Number.MAX_SAFE_INTEGER,max:Number.MAX_SAFE_INTEGER,isInteger:!0,rawMin:-Number.MAX_SAFE_INTEGER,rawMax:Number.MAX_SAFE_INTEGER},Re=(2-2**-23)*2**127,Ve={min:-Re,max:Re,isInteger:!1,rawMin:-Re,rawMax:Re},ke={min:-Number.MAX_VALUE,max:Number.MAX_VALUE,isInteger:!1,rawMin:-Number.MAX_VALUE,rawMax:Number.MAX_VALUE};function Ue(e,n,i){switch(e){case"domain-validation-error::invalid-coded-value":return`Value ${i} is not in the coded domain - field: ${n.name}, domain: ${JSON.stringify(n.domain)}`;case"domain-validation-error::value-out-of-range":return`Value ${i} is out of the range of valid values - field: ${n.name}, domain: ${JSON.stringify(n.domain)}`;case"type-validation-error::invalid-type":return`Value ${i} is not a valid value for the field type - field: ${n.name}, type: ${n.type}, nullable: ${n.nullable}`;case"numeric-range-validation-error::out-of-range":{const{min:e,max:t}=Me(n.type);return`Value ${i} is out of range for the number type - field: ${n.name}, type: ${n.type}, value range is ${e} to ${t}`}}}function qe(e,n){return!ze(e,n,null)}function ze(e,n,i){if(!e?.attributes||!n){if(null!=i)for(const e of n??[])i.add(e);return!0}const t=new Set(Object.keys(e.attributes));let r=!1;for(const l of n)if(!t.has(l)){if(r=!0,null==i)break;i.add(l)}return r}async function Xe(e,n){const i=new Set;for(const t of n)await v(i,e.fieldsIndex,null,t);return Array.from(i).sort()}function Pe(e){return!!e&&["raster.itempixelvalue","raster.servicepixelvalue"].some(n=>e.toLowerCase().startsWith(n))}async function Be(e,n){const i=new Set;return e?.collectRequiredFields&&await e.collectRequiredFields(i,n),Array.from(i).sort()}function Ge(e){const n=e?.match(/{[^}]+}/g);return n?n.map(e=>e.slice(1,-1).split(":")[0].trim()):[]}function Je(e,n){const{statisticType:i,onStatisticField:t,onStatisticExpression:r}=e,l=n.get(t),o=Fe(l),s=r?.returnType;switch(i){case"avg":case"avg_angle":return l?o||Ie(l)?"double":null:s&&"number"===s?"double":null;case"count":return"integer";case"min":case"max":return l?o||he(l)?l?.type??null:null:s&&"number"===s?"double":null;case"sum":return l?o?l?.type??null:null:s&&"number"===s?"double":null;case"mode":return l?l?.type??null:s?"number"===s?"double":"string":null;default:return null}}function We(e){const{fieldName:n,fieldsMap:i,normalizedFieldsMap:t}=e;if(!n)return;let r=i.get(n);return r||(r=i.get(He(n))??t.get(Ke(n)),r&&i.set(n,r),r)}function He(e){return e.trim().toLowerCase()}function Ke(e){return d(e)?.toLowerCase()??""}export{He as applyLowerCaseFieldName,Ce as bigIntegerRange,v as collectArcadeFieldNames,z as collectDisplayFilterFields,L as collectElevationFields,j as collectFeatureReductionFields,x as collectField,w as collectFields,C as collectFilterFields,Z as collectLabelingFields,R as collectOrderByInfos,O as collectPopupTemplateFields,S as collectSQLFieldNames,D as collectTrackInfoFields,ke as doubleRange,Ge as extractSubstitutionTemplatesFromString,qe as featureHasFields,I as fixFields,y as fixRendererFields,F as fixTimeInfoFields,de as floatJSONTypes,ue as floatTypes,Je as getAggregateFieldType,E as getDisplayFieldName,A as getDisplayFieldNameFromFields,J as getEditTrackingFields,N as getElevationFields,Xe as getExpressionFields,U as getFeatureEditFields,q as getFeatureGeometryFields,ie as getFieldDefaultLength,ne as getFieldDefaultValue,We as getFieldFromIndex,Le as getFieldRange,Y as getLabelingFields,G as getLowerCaseDefaultHiddenFields,W as getLowerCaseEditTrackingFields,je as getNumericTypeForValue,Be as getRendererFields,k as getTimeFields,ce as integerJSONTypes,Oe as integerRange,ae as integerTypes,Ie as isDateField,we as isDateOnlyField,K as isFieldEditable,Q as isFieldVisibleByDefault,H as isFieldWithType,Se as isGlobalIDField,ge as isIntegerField,Ne as isNumberInRange,Fe as isNumericField,ve as isObjectIDField,Pe as isRasterPixelValueField,be as isStringField,Te as isTimeOnlyField,xe as isTimestampOffsetField,Ee as isValidFieldValue,se as isValueMatchingFieldType,Ke as lowerCaseNormalizedFieldName,d as normalizeFieldName,fe as numericTypes,h as packFields,ze as populateMissingFields,p as rendererFields,Ae as sanitizeNullFieldValue,$e as sanitizedParseFloat,Ve as singleRange,De as smallIntegerRange,T as unpackFieldNames,_e as validateFieldValue,Ue as validationErrorToString,m as visualVariableFields};
2
+ import e from"../../core/Error.js";import{getDeepValue as n,setDeepValue as i}from"../../core/object.js";import{union as t}from"../../core/SetUtils.js";import{parseWhereClause as r}from"../../core/sql.js";import{getDomainRange as l}from"./domainUtils.js";import{getFieldNameFromSimpleExpression as o}from"../../support/arcadeExpressionUtils.js";import{isStringOrNull as s,isString as a}from"../../support/guards.js";import{loadArcade as u}from"../../support/loadArcade.js";const f=/^([0-9_])/,c=/[^a-z0-9_\u0080-\uffff]+/gi;function d(e){if(null==e)return null;return e.trim().replaceAll(c,"_").replace(f,"F$1")||null}const p=["field","field2","field3","normalizationField","rotationInfo.field","proportionalSymbolInfo.field","proportionalSymbolInfo.normalizationField","colorInfo.field","colorInfo.normalizationField"],m=["field","normalizationField"];function y(e,n){if(null!=e&&null!=n)for(const i of Array.isArray(e)?e:[e])if(g(p,i,n),"visualVariables"in i&&i.visualVariables)for(const e of i.visualVariables)g(m,e,n)}function g(e,t,r){if(e)for(const l of e){const e=n(l,t),o=e&&"function"!=typeof e&&r.get(e);o&&i(l,o.name,t)}}function F(e,n){if(null!=e&&n?.fields?.length)if("startField"in e){const i=n.get(e.startField),t=n.get(e.endField);e.startField=i?.name??null,e.endField=t?.name??null}else{const i=n.get(e.startTimeField),t=n.get(e.endTimeField);e.startTimeField=i?.name??null,e.endTimeField=t?.name??null}}const b=new Set;function I(e,n){return e&&n?(b.clear(),w(b,e,n),Array.from(b).sort()):[]}function w(e,n,i){if(i)if(n?.fields?.length)if(i.includes("*"))for(const{name:t}of n.fields)e.add(t);else for(const t of i)x(e,n,t);else{if(i.includes("*"))return e.clear(),void e.add("*");for(const n of i)null!=n&&e.add(n)}}function x(e,n,i){if("string"==typeof i)if(n){const t=n.get(i);t&&e.add(t.name)}else e.add(i)}function T(e,n){return null==n||null==e?[]:n.includes("*")?(e.fields??[]).map(e=>e.name):n}function h(e,n,i=1){if(!n||!e)return[];if(n.includes("*"))return["*"];const t=I(e,n);return t.length/e.fields.length>=i?["*"]:t}async function v(e,n,i,t){if(!t)return;const r=o(t);if(r)x(e,n,r);else{const{arcadeUtils:r}=await u(),l=r.extractFieldNames(t,i?.partitions??n?.fields?.map(e=>e.name));for(const t of l)x(e,i?.index??n,t)}}async function S(n,i,t){if(t&&"1=1"!==t){const l=await r(t,i);if(!l.isStandardized)throw new e("fieldUtils:collectFilterFields","Where clause is not standardized",{where:t});w(n,i,l.fieldNames)}}function E({displayField:e,fields:n}){return e||(n?.length?A(n):null)}function A(e){return _(e,"name-or-title")||_(e,"unique-identifier")||_(e,"type-or-category")||$(e)}function $(e){for(const n of e){if(!n?.name)continue;const e=n.name.toLowerCase();if(e.includes("name")||e.includes("title"))return n.name}return null}function _(e,n){for(const i of e)if(i?.valueType&&i.valueType===n)return i.name;return null}async function N(e){if(!e)return[];const n=new Set;return await L(n,e),Array.from(n).sort()}async function L(e,n){if(!n)return;const i=n.elevationInfo?.featureExpressionInfo;return i?i.collectRequiredFields(e,n.fieldsIndex):void 0}function M(e,n,i){i.onStatisticExpression?v(e,n,null,i.onStatisticExpression.expression):e.add(i.onStatisticField)}async function j(e,n,i){if(!n||!i||!("fields"in i))return;const t=[],r=i.popupTemplate;t.push(O(e,n,r)),i.fields&&t.push(...i.fields.map(async i=>M(e,n.fieldsIndex,i))),await Promise.all(t)}async function D(e,n){const{fieldsIndex:i,trackInfo:t}=n;if(!n||!t||!i)return;const r=[t.latestObservations.renderer?.collectRequiredFields(e,i),t.previousObservations.renderer?.collectRequiredFields(e,i),t.trackLines.renderer?.collectRequiredFields(e,i)];t.popupTemplate&&r.push(O(e,n,t.popupTemplate));for(const l of[t.latestObservations.labelingInfo,t.previousObservations.labelingInfo,t.trackLines.labelingInfo])if(l)for(const n of l)r.push(ee(e,i,n));await Promise.all(r)}async function O(e,n,i){const t=[];i?.expressionInfos&&t.push(...i.expressionInfos.map(i=>v(e,n.fieldsIndex,null,i.expression)));const r=i?.content;if(Array.isArray(r))for(const l of r)"expression"===l.type&&l.expressionInfo&&t.push(v(e,n.fieldsIndex,null,l.expressionInfo.expression));await Promise.all(t)}async function C(e,n,i){n&&(n.timeInfo&&i?.timeExtent&&w(e,n.fieldsIndex,[n.timeInfo.startField,n.timeInfo.endField]),n.floorInfo&&w(e,n.fieldsIndex,[n.floorInfo.floorField]),null!=i?.where&&await S(e,n.fieldsIndex,i.where))}async function R(e,n,i){n&&i&&await Promise.all(i.map(i=>V(e,n,i)))}async function V(e,n,i){n&&i&&(i.valueExpression?await v(e,n.fieldsIndex,null,i.valueExpression):i.field&&x(e,n.fieldsIndex,i.field))}async function k(e){if(!e)return[];const n="timeInfo"in e&&e.timeInfo;return n?I(e.fieldsIndex,[e.trackIdField,n.startField,n.endField]):[]}function U(e){return e?I(e.fieldsIndex,J(e)):[]}function q(e){if(!e)return[];const n=e.geometryFieldsInfo;return n?I(e.fieldsIndex,[n.shapeAreaField,n.shapeLengthField]):[]}async function z(e,n,i){if(!n||!i)return;const t=n.fieldsIndex;await Promise.all(i.filters.map(n=>S(e,t,n.where)))}const X=new Set(["oid","global-id","guid"]),P=new Set(["oid","global-id"]),B=[/^fnode_$/i,/^tnode_$/i,/^lpoly_$/i,/^rpoly_$/i,/^poly_$/i,/^shape$/i,/^shape_$/i,/^subclass$/i,/^subclass_$/i,/^rings_ok$/i,/^rings_nok$/i,/objectid/i,/^perimeter_/i,/_perimeter$/i,/_i$/i];function G(e){const n=new Set;W(e).forEach(e=>n.add(e)),q(e).forEach(e=>n.add(e.toLowerCase()));const i=e&&"infoFor3D"in e?e.infoFor3D:void 0;return i&&(Object.values(i.assetMapFieldRoles).forEach(e=>n.add(e.toLowerCase())),Object.values(i.transformFieldRoles).forEach(e=>n.add(e.toLowerCase()))),Array.from(n)}function J(e){if(!e)return[];const n="editFieldsInfo"in e&&e.editFieldsInfo;if(!n)return[];const{creationDateField:i,creatorField:t,editDateField:r,editorField:l}=n;return[i,t,r,l].filter(Boolean)}function W(e){return J(e).map(e=>e.toLowerCase())}function H(e){return!!e.type}function K(e,n){return!!e.editable&&H(e)&&!X.has(e.type)&&!W(n).includes(e.name?.toLowerCase()??"")}function Q(e,n){const i=e.name?.toLowerCase()??"";return!(null!=n?.objectIdField&&i===n.objectIdField.toLowerCase()||null!=n?.globalIdField&&i===n.globalIdField.toLowerCase()||G(n).includes(i)||P.has(e.type)||B.some(e=>e.test(i)))}async function Y(e){if(!e)return[];const n=new Set;return await Z(n,e),Array.from(n).sort()}async function Z(e,n){const{labelingInfo:i,fieldsIndex:t}=n;i?.length&&await Promise.all(i.map(n=>ee(e,t,n)))}async function ee(e,n,i){if(!i)return;const t=i.getLabelExpression(),r=i.where;if("arcade"===t.type)await v(e,n,null,t.expression);else{const i=t.expression.match(/{[^}]*}/g);i&&i.forEach(i=>{x(e,n,i.slice(1,-1))})}await S(e,n,r)}function ne(e){const n=e.defaultValue;return void 0!==n&&se(e,n)?n:e.nullable?null:void 0}function ie(e){const n="string"==typeof e?{type:e}:e;return be(n)?255:"esriFieldTypeDate"===n.type||"date"===n.type?8:void 0}function te(e){return"number"==typeof e&&!isNaN(e)&&isFinite(e)}function re(e){return null===e||te(e)}function le(e){return null===e||Number.isInteger(e)}function oe(){return!0}function se(e,n){let i;switch(e.type){case"date":case"integer":case"long":case"small-integer":case"big-integer":case"esriFieldTypeDate":case"esriFieldTypeInteger":case"esriFieldTypeLong":case"esriFieldTypeSmallInteger":case"esriFieldTypeBigInteger":i=e.nullable?le:Number.isInteger;break;case"double":case"single":case"esriFieldTypeSingle":case"esriFieldTypeDouble":i=e.nullable?re:te;break;case"string":case"esriFieldTypeString":i=e.nullable?s:a;break;default:i=oe}return 1===arguments.length?i:i(n)}const ae=["integer","small-integer","big-integer","long"],ue=["single","double"],fe=[...ae,...ue],ce=["esriFieldTypeInteger","esriFieldTypeSmallInteger","esriFieldTypeLong","esriFieldTypeBigInteger"],de=["esriFieldTypeSingle","esriFieldTypeDouble"],pe=new Set([...ae,...ce]),me=new Set([...ue,...de]),ye=t(pe,me);function ge(e){return null!=e&&pe.has(e.type)}function Fe(e){return null!=e&&ye.has(e.type)}function be(e){return null!=e&&("string"===e.type||"esriFieldTypeString"===e.type)}function Ie(e){return null!=e&&("date"===e.type||"esriFieldTypeDate"===e.type)}function we(e){return null!=e&&("date-only"===e.type||"esriFieldTypeDateOnly"===e.type)}function xe(e){return null!=e&&("timestamp-offset"===e.type||"esriFieldTypeTimestampOffset"===e.type)}function Te(e){return null!=e&&("time-only"===e.type||"esriFieldTypeTimeOnly"===e.type)}function he(e){return null!=e&&("date"===e.type||"date-only"===e.type||"time-only"===e.type||"timestamp-offset"===e.type)}function ve(e){return null!=e&&("oid"===e.type||"esriFieldTypeOID"===e.type)}function Se(e){return null!=e&&("global-id"===e.type||"esriFieldTypeGlobalID"===e.type)}function Ee(e,n){return null===_e(e,n)}function Ae(e){return null==e||"number"==typeof e&&isNaN(e)?null:e}function $e(e){return parseFloat(e.replaceAll("_",""))}function _e(e,n){return null==e||e.nullable&&null===n?null:se(e,n)?Fe(e)&&!Ne(e.type,Number(n))?"numeric-range-validation-error::out-of-range":null:"type-validation-error::invalid-type"}function Ne(e,n){const i="string"==typeof e?Me(e):e;if(!i)return!1;const t=i.min,r=i.max;return i.isInteger?Number.isInteger(n)&&n>=t&&n<=r:n>=t&&n<=r}function Le(e,n){const i=l(e,n);return i||(Fe(e)?Me(e.type):void 0)}function Me(e){switch(e){case"esriFieldTypeSmallInteger":case"small-integer":return De;case"esriFieldTypeInteger":case"esriFieldTypeLong":case"integer":case"long":return Re;case"esriFieldTypeBigInteger":case"big-integer":return Ve;case"esriFieldTypeSingle":case"single":return Ue;case"esriFieldTypeDouble":case"double":return qe}}function je(e){if(!te(e))return null;if(Number.isInteger(e)){if(e>=De.min&&e<=De.max)return"esriFieldTypeSmallInteger";if(e>=Re.min&&e<=Re.max)return"esriFieldTypeInteger";if(e>=Ve.min&&e<=Ve.max)return"esriFieldTypeBigInteger"}return e>=Ue.min&&e<=Ue.max?"esriFieldTypeSingle":"esriFieldTypeDouble"}const De={min:-32768,max:32767,isInteger:!0,rawMin:-32768,rawMax:32767},Oe=-2147483648,Ce=2**31-1,Re={min:Oe,max:Ce,isInteger:!0,rawMin:Oe,rawMax:Ce},Ve={min:-Number.MAX_SAFE_INTEGER,max:Number.MAX_SAFE_INTEGER,isInteger:!0,rawMin:-Number.MAX_SAFE_INTEGER,rawMax:Number.MAX_SAFE_INTEGER},ke=(2-2**-23)*2**127,Ue={min:-ke,max:ke,isInteger:!1,rawMin:-ke,rawMax:ke},qe={min:-Number.MAX_VALUE,max:Number.MAX_VALUE,isInteger:!1,rawMin:-Number.MAX_VALUE,rawMax:Number.MAX_VALUE};function ze(e,n,i){switch(e){case"domain-validation-error::invalid-coded-value":return`Value ${i} is not in the coded domain - field: ${n.name}, domain: ${JSON.stringify(n.domain)}`;case"domain-validation-error::value-out-of-range":return`Value ${i} is out of the range of valid values - field: ${n.name}, domain: ${JSON.stringify(n.domain)}`;case"type-validation-error::invalid-type":return`Value ${i} is not a valid value for the field type - field: ${n.name}, type: ${n.type}, nullable: ${n.nullable}`;case"numeric-range-validation-error::out-of-range":{const{min:e,max:t}=Me(n.type);return`Value ${i} is out of range for the number type - field: ${n.name}, type: ${n.type}, value range is ${e} to ${t}`}}}function Xe(e,n){return!Pe(e,n,null)}function Pe(e,n,i){if(!e?.attributes||!n){if(null!=i)for(const e of n??[])i.add(e);return!0}const t=new Set(Object.keys(e.attributes));let r=!1;for(const l of n)if(!t.has(l)){if(r=!0,null==i)break;i.add(l)}return r}async function Be(e,n){const i=new Set;for(const t of n)await v(i,e.fieldsIndex,null,t);return Array.from(i).sort()}function Ge(e){return!!e&&["raster.itempixelvalue","raster.servicepixelvalue"].some(n=>e.toLowerCase().startsWith(n))}async function Je(e,n){const i=new Set;return e?.collectRequiredFields&&await e.collectRequiredFields(i,n),Array.from(i).sort()}function We(e){const n=e?.match(/{[^}]+}/g);return n?n.map(e=>e.slice(1,-1).split(":")[0].trim()):[]}function He(e,n){const{statisticType:i,onStatisticField:t,onStatisticExpression:r}=e,l=n.get(t),o=Fe(l),s=r?.returnType;switch(i){case"avg":case"avg_angle":return l?o||Ie(l)?"double":null:s&&"number"===s?"double":null;case"count":return"integer";case"min":case"max":return l?o||he(l)?l?.type??null:null:s&&"number"===s?"double":null;case"sum":return l?o?l?.type??null:null:s&&"number"===s?"double":null;case"mode":return l?l?.type??null:s?"number"===s?"double":"string":null;default:return null}}function Ke(e){const{fieldName:n,fieldsMap:i,normalizedFieldsMap:t}=e;if(!n)return;let r=i.get(n);return r||(r=i.get(Qe(n))??t.get(Ye(n)),r&&i.set(n,r),r)}function Qe(e){return e.trim().toLowerCase()}function Ye(e){return d(e)?.toLowerCase()??""}export{Qe as applyLowerCaseFieldName,Ve as bigIntegerRange,v as collectArcadeFieldNames,z as collectDisplayFilterFields,L as collectElevationFields,j as collectFeatureReductionFields,x as collectField,w as collectFields,C as collectFilterFields,Z as collectLabelingFields,R as collectOrderByInfos,O as collectPopupTemplateFields,S as collectSQLFieldNames,D as collectTrackInfoFields,qe as doubleRange,We as extractSubstitutionTemplatesFromString,Xe as featureHasFields,I as fixFields,y as fixRendererFields,F as fixTimeInfoFields,de as floatJSONTypes,ue as floatTypes,He as getAggregateFieldType,E as getDisplayFieldName,A as getDisplayFieldNameFromFields,J as getEditTrackingFields,N as getElevationFields,Be as getExpressionFields,U as getFeatureEditFields,q as getFeatureGeometryFields,ie as getFieldDefaultLength,ne as getFieldDefaultValue,Ke as getFieldFromIndex,Le as getFieldRange,Y as getLabelingFields,G as getLowerCaseDefaultHiddenFields,W as getLowerCaseEditTrackingFields,je as getNumericTypeForValue,Je as getRendererFields,k as getTimeFields,ce as integerJSONTypes,Re as integerRange,ae as integerTypes,Ie as isDateField,we as isDateOnlyField,K as isFieldEditable,Q as isFieldVisibleByDefault,H as isFieldWithType,Se as isGlobalIDField,ge as isIntegerField,Ne as isNumberInRange,Fe as isNumericField,ve as isObjectIDField,Ge as isRasterPixelValueField,be as isStringField,Te as isTimeOnlyField,xe as isTimestampOffsetField,Ee as isValidFieldValue,se as isValueMatchingFieldType,Ye as lowerCaseNormalizedFieldName,d as normalizeFieldName,fe as numericTypes,h as packFields,Pe as populateMissingFields,p as rendererFields,Ae as sanitizeNullFieldValue,$e as sanitizedParseFloat,Ue as singleRange,De as smallIntegerRange,T as unpackFieldNames,_e as validateFieldValue,ze as validationErrorToString,m as visualVariableFields};