@arcgis/core 5.0.0-next.1 → 5.0.0-next.10

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 (955) hide show
  1. package/Map.js +1 -1
  2. package/PopupTemplate.js +1 -1
  3. package/analysis/ElevationProfileAnalysis.js +1 -1
  4. package/analysis/VolumeMeasurement/VolumeMeasurementCutFillOptions.js +1 -1
  5. package/analysis/VolumeMeasurement/volumeMeasurementConfiguration.js +5 -0
  6. package/analysis/VolumeMeasurementAnalysis.js +1 -1
  7. package/applications/KnowledgeStudio/generalSdkInternalAccess.d.ts +4 -0
  8. package/applications/KnowledgeStudio/generalSdkInternalAccess.js +5 -0
  9. package/applications/KnowledgeStudio/generalSharedKgUtils.d.ts +1 -0
  10. package/applications/KnowledgeStudio/generalSharedKgUtils.js +1 -1
  11. package/applications/KnowledgeStudio/layerInternalAccessUtils.d.ts +2 -0
  12. package/applications/KnowledgeStudio/layerInternalAccessUtils.js +1 -1
  13. package/applications/KnowledgeStudio/resourceSerializationUtils.js +1 -1
  14. package/arcade/featureset/actions/Adapted.js +1 -1
  15. package/arcade/featureset/actions/AttributeFilter.js +1 -1
  16. package/arcade/featureset/actions/GroupBy.js +1 -1
  17. package/arcade/featureset/actions/OrderBy.js +1 -1
  18. package/arcade/featureset/actions/SpatialFilter.js +1 -1
  19. package/arcade/featureset/actions/Top.js +1 -1
  20. package/arcade/featureset/sources/Empty.js +1 -1
  21. package/arcade/featureset/sources/FeatureLayerDynamic.js +1 -1
  22. package/arcade/featureset/sources/FeatureLayerMemory.js +1 -1
  23. package/arcade/featureset/sources/FeatureLayerRelated.js +1 -1
  24. package/arcade/featureset/support/FeatureSet.js +1 -1
  25. package/arcade/featureset/support/sqlUtils.js +1 -1
  26. package/arcade/featureset/support/stats.js +1 -1
  27. package/arcade/functions/featuresetbase.js +1 -1
  28. package/arcade/functions/featuresetstring.js +1 -1
  29. package/arcade/functions/knowledgegraph.js +1 -1
  30. package/assets/components/assets/sort-handle/t9n/messages.uk.json +1 -1
  31. package/assets/esri/core/workers/RemoteClient.js +1 -1
  32. package/assets/esri/core/workers/chunks/{1a713dcc9971e1935401.js → 0030d68d9edf42b4af57.js} +1 -1
  33. package/assets/esri/core/workers/chunks/00c77f03dd511c6dbff2.js +1 -0
  34. package/assets/esri/core/workers/chunks/01d460398f3ba6767a37.js +1 -0
  35. package/assets/esri/core/workers/chunks/0200637e0503556a3b97.js +1 -0
  36. package/assets/esri/core/workers/chunks/022c854eff2c2c2aed6b.js +1 -0
  37. package/assets/esri/core/workers/chunks/{14ace5dc4b8984212a57.js → 042cd64e1f4eb326c30f.js} +1 -1
  38. package/assets/esri/core/workers/chunks/{66db5f77e09d25e33951.js → 063905fbf9a0c6586949.js} +1 -1
  39. package/assets/esri/core/workers/chunks/066a0ea67688361e85a5.js +1 -0
  40. package/assets/esri/core/workers/chunks/06f75c5b6b50934d72a6.js +1 -0
  41. package/assets/esri/core/workers/chunks/{89027f6800e17fab8973.js → 0a5d74414dd02a2fb8e1.js} +1 -1
  42. package/assets/esri/core/workers/chunks/{3815ffa13e7b439bca6e.js → 0d5212f59e9b62c16164.js} +1 -1
  43. package/assets/esri/core/workers/chunks/{388482cea4b9fdeaf06e.js → 0f30a9514571c7be9978.js} +1 -1
  44. package/assets/esri/core/workers/chunks/0f735b0dec173142f3b6.js +2 -0
  45. package/assets/esri/core/workers/chunks/{a8f998b8ec8c56150479.js.LICENSE.txt → 0f735b0dec173142f3b6.js.LICENSE.txt} +1 -1
  46. package/assets/esri/core/workers/chunks/{e032f3d2ee19790f8c79.js → 11e96a312f1294d34c50.js} +1 -1
  47. package/assets/esri/core/workers/chunks/{309c5f69ea06f3081d83.js → 1257c37bf04d39c27b62.js} +1 -1
  48. package/assets/esri/core/workers/chunks/125e71b0e29d1d132777.js +1 -0
  49. package/assets/esri/core/workers/chunks/{1e4e7aedf4b779241a02.js → 15c7c10ff9ac63f0e792.js} +1 -1
  50. package/assets/esri/core/workers/chunks/15f969836d63c7fe2d9d.js +1 -0
  51. package/assets/esri/core/workers/chunks/18c5d79d5ee1136e0a57.js +1 -0
  52. package/assets/esri/core/workers/chunks/{f03635ddf56e2ef90e4c.js → 1d06fcae4c2f02fb1c95.js} +1 -1
  53. package/assets/esri/core/workers/chunks/{651b9144abb1895cc510.js → 1e848d9da1c61a27cf18.js} +1 -1
  54. package/assets/esri/core/workers/chunks/{8cea114168d849c38b1b.js → 20278683bddc8c2d8136.js} +1 -1
  55. package/assets/esri/core/workers/chunks/{d84373a6ec94dcfec8c2.js → 24cd7b84cd0f3de4bff2.js} +1 -1
  56. package/assets/esri/core/workers/chunks/27e6a6c5610007ac6a54.js +1 -0
  57. package/assets/esri/core/workers/chunks/2857bcb68df874e9aa62.js +1 -0
  58. package/assets/esri/core/workers/chunks/{94c9d3094c93f7760433.js → 29286234be26680245f6.js} +1 -1
  59. package/assets/esri/core/workers/chunks/292daac70bb828e4923f.js +1 -0
  60. package/assets/esri/core/workers/chunks/2ddcf3cea0efe4052618.js +1 -0
  61. package/assets/esri/core/workers/chunks/2e8a4df83c43f86d7361.js +1 -0
  62. package/assets/esri/core/workers/chunks/{4f01be74dd26e639330f.js → 2f24017e72d41c259faa.js} +1 -1
  63. package/assets/esri/core/workers/chunks/2f2e4f81f3daa3fb8527.js +1 -0
  64. package/assets/esri/core/workers/chunks/30e220f4f843681a4cdd.js +1 -0
  65. package/assets/esri/core/workers/chunks/3109f0a6914e7be088ed.js +1 -0
  66. package/assets/esri/core/workers/chunks/{5d3661d1fe46dd29aae9.js → 311b564e44ae637c960d.js} +1 -1
  67. package/assets/esri/core/workers/chunks/31bb1ee9370c2753ce9d.js +1 -0
  68. package/assets/esri/core/workers/chunks/329fccd7f5cb8401e0c3.js +1 -0
  69. package/assets/esri/core/workers/chunks/37c1f155da14de91565a.js +1 -0
  70. package/assets/esri/core/workers/chunks/37f2ef14399546e697e6.js +1 -0
  71. package/assets/esri/core/workers/chunks/38ee69125da60464d5a1.js +1 -0
  72. package/assets/esri/core/workers/chunks/38f6b9288c82dac9a800.js +1 -0
  73. package/assets/esri/core/workers/chunks/3a457e718a901a45902e.js.LICENSE.txt +1 -1
  74. package/assets/esri/core/workers/chunks/{f7c99e9c8d19352af38d.js → 3ac7562ea90f91a9f30c.js} +1 -1
  75. package/assets/esri/core/workers/chunks/3b1848713ee25f750242.js +1 -0
  76. package/assets/esri/core/workers/chunks/{e9311386f58f3cb95c22.js → 42a1e71d09e8583a7327.js} +1 -1
  77. package/assets/esri/core/workers/chunks/442973ff4dda923def62.js +1 -0
  78. package/assets/esri/core/workers/chunks/443dfe7029ec208f670c.js +1 -0
  79. package/assets/esri/core/workers/chunks/44f27eac92c5ccc57e12.js +1 -0
  80. package/assets/esri/core/workers/chunks/4941bfd3aae7f6bdac97.js +1 -0
  81. package/assets/esri/core/workers/chunks/{b75930d60449eceb0f1c.js → 4baf6f6e7ddedb25f806.js} +1 -1
  82. package/assets/esri/core/workers/chunks/4bd2cc65f7db0d261543.js +1 -0
  83. package/assets/esri/core/workers/chunks/4fa230dc6e5e87b0dec1.js +1 -0
  84. package/assets/esri/core/workers/chunks/4fb5f1c671892001a4fd.js +1 -0
  85. package/assets/esri/core/workers/chunks/4fbe2a8d742065cbaea3.js +1 -0
  86. package/assets/esri/core/workers/chunks/4fe4feeb251f2916a339.js +1 -0
  87. package/assets/esri/core/workers/chunks/509392131ec473d6b988.js +1 -0
  88. package/assets/esri/core/workers/chunks/{2ea6985da4eb0107bb9d.js → 51ab2acac4ecc1ca9c34.js} +1 -1
  89. package/assets/esri/core/workers/chunks/{fc4417d1260b717a9385.js → 52282f767bd0e99ddca0.js} +1 -1
  90. package/assets/esri/core/workers/chunks/{fc06014fb484fc8c697e.js → 53654edd766d9b4ef750.js} +1 -1
  91. package/assets/esri/core/workers/chunks/55eb6a0f1e4569a65f2a.js +1 -0
  92. package/assets/esri/core/workers/chunks/57e04e2d8721bbdc029a.js +1 -0
  93. package/assets/esri/core/workers/chunks/{ed8a85efbd90241512bb.js → 588533c3abe876f20f62.js} +1 -1
  94. package/assets/esri/core/workers/chunks/591e459f9fce34f519ca.js +1 -0
  95. package/assets/esri/core/workers/chunks/59514624daf188a8030f.js +1 -0
  96. package/assets/esri/core/workers/chunks/5c09d98b41f71a036e2a.js +1 -0
  97. package/assets/esri/core/workers/chunks/{72846fb9c87c6642daf0.js → 5e2ce34def5e053913b2.js} +1 -1
  98. package/assets/esri/core/workers/chunks/{b7a17927e14f502006b4.js → 5ea0c62016d56990787b.js} +1 -1
  99. package/assets/esri/core/workers/chunks/605b9643b1baeff16149.js +1 -0
  100. package/assets/esri/core/workers/chunks/{2ce4a0fe4fae63c43a81.js → 61d970ed75c2c358b1e9.js} +1 -1
  101. package/assets/esri/core/workers/chunks/{7a6a96edc892d7060b7d.js → 629127877042ad784ad2.js} +1 -1
  102. package/assets/esri/core/workers/chunks/{00aa85ae6419aad183ea.js → 6293e33f304c4952f88c.js} +1 -1
  103. package/assets/esri/core/workers/chunks/664ae441617afe4b17ec.js +1 -0
  104. package/assets/esri/core/workers/chunks/67f03d042455cd0f7009.js +1 -0
  105. package/assets/esri/core/workers/chunks/{ec13053af1999701464a.js → 6826fe54562dcdc054d7.js} +1 -1
  106. package/assets/esri/core/workers/chunks/{8215015f11221a354273.js → 6d049182bec34a22abcd.js} +1 -1
  107. package/assets/esri/core/workers/chunks/6d9f2b113d6bde936a04.js +1 -0
  108. package/assets/esri/core/workers/chunks/{5132ca68e8c7af111a47.js → 6e22b02a9715c10578d0.js} +1 -1
  109. package/assets/esri/core/workers/chunks/6e25ef5ad6d6b3f88343.js +1 -0
  110. package/assets/esri/core/workers/chunks/{deb2854bb7d082a26f52.js → 7005d956c990a04ee8b2.js} +1 -1
  111. package/assets/esri/core/workers/chunks/{c73def15ccfb2a32afa8.js → 7290e7a819eb291b1df2.js} +4 -4
  112. package/assets/esri/core/workers/chunks/731f7b552dde0fb325cd.js +1 -0
  113. package/assets/esri/core/workers/chunks/7565b382f6b3d2cb46a3.js +2 -0
  114. package/assets/esri/core/workers/chunks/{24921d31efa8d222ad2d.js.LICENSE.txt → 7565b382f6b3d2cb46a3.js.LICENSE.txt} +1 -1
  115. package/assets/esri/core/workers/chunks/759321045c264bc6964e.js +1 -0
  116. package/assets/esri/core/workers/chunks/773f2c6c9d38db76dfed.js +1 -0
  117. package/assets/esri/core/workers/chunks/7803495f8862d9025bcd.js +1 -0
  118. package/assets/esri/core/workers/chunks/79dbfa2b9b332ca0002f.js +1 -0
  119. package/assets/esri/core/workers/chunks/7a23ab84e1144f081c92.js +1 -0
  120. package/assets/esri/core/workers/chunks/7e3f27ebf366d4266350.js +1 -0
  121. package/assets/esri/core/workers/chunks/826072cfc0ac8e36f03c.js +1 -0
  122. package/assets/esri/core/workers/chunks/826fa0dfb63df77bfd95.js +1 -0
  123. package/assets/esri/core/workers/chunks/8372f142c4d7a65c7954.js +1 -0
  124. package/assets/esri/core/workers/chunks/87921f3fa9001f5801ed.js +1 -0
  125. package/assets/esri/core/workers/chunks/8ce608013b353155ee5a.js +1 -0
  126. package/assets/esri/core/workers/chunks/{24c14e4a1d2a2267097e.js → 8d9d3797c6d62fdfff9d.js} +1 -1
  127. package/assets/esri/core/workers/chunks/{0086a09441627842d34a.js → 8f3503b2fb6cd38757b9.js} +1 -1
  128. package/assets/esri/core/workers/chunks/{e7638b9ab6674bc8a18f.js → 91dfd29e2dba200eab09.js} +1 -1
  129. package/assets/esri/core/workers/chunks/{de1f75c907152df7e788.js → 9698f36c143953a975d4.js} +1 -1
  130. package/assets/esri/core/workers/chunks/9b0c2f4311fe9bca370a.js +1 -0
  131. package/assets/esri/core/workers/chunks/9c48d8d17831aa57f8a4.js +1 -0
  132. package/assets/esri/core/workers/chunks/9f21436016ff7a899e79.js +1 -0
  133. package/assets/esri/core/workers/chunks/9f28b2800945903bc165.js +1 -0
  134. package/assets/esri/core/workers/chunks/{67d9cfe02613cb73ee37.js → 9ff8ee6ed6b98c03ae7e.js} +2 -2
  135. package/assets/esri/core/workers/chunks/{67d9cfe02613cb73ee37.js.LICENSE.txt → 9ff8ee6ed6b98c03ae7e.js.LICENSE.txt} +1 -1
  136. package/assets/esri/core/workers/chunks/a091623bbfb3d771c8d8.js +1 -0
  137. package/assets/esri/core/workers/chunks/a27e74117c37f3efcbca.js +1 -0
  138. package/assets/esri/core/workers/chunks/a41ba05c09a59d1eb35f.js +1 -0
  139. package/assets/esri/core/workers/chunks/a470f662d73aa8d5d90f.js +1 -0
  140. package/assets/esri/core/workers/chunks/a93ebd076bc55aa6eab0.js +1 -0
  141. package/assets/esri/core/workers/chunks/aa78b69219d9a0ef1c54.js.LICENSE.txt +1 -1
  142. package/assets/esri/core/workers/chunks/aaed35a6414859233678.js +1 -0
  143. package/assets/esri/core/workers/chunks/acd0564ad1544f452f3f.js +1 -0
  144. package/assets/esri/core/workers/chunks/{135e270b4f03c4270870.js → af47272aaaef0ea57e71.js} +1 -1
  145. package/assets/esri/core/workers/chunks/b0f43191a431c9de16e5.js +1 -0
  146. package/assets/esri/core/workers/chunks/{bc3bcf88b252760e2574.js → b3028b1ff75eafd0c358.js} +1 -1
  147. package/assets/esri/core/workers/chunks/b320bb76c7e9998fe53b.js +1 -0
  148. package/assets/esri/core/workers/chunks/{79968c183135281d2a6f.js → b3613a38178cad2ebc82.js} +1 -1
  149. package/assets/esri/core/workers/chunks/b8a3f1e60e24a13749c1.js +1 -0
  150. package/assets/esri/core/workers/chunks/ba4571d2637a74a59552.js +1 -0
  151. package/assets/esri/core/workers/chunks/bb7976e2f883b544add6.js +1 -0
  152. package/assets/esri/core/workers/chunks/{56916e56c20465428dd4.js → be3b874f86f627f4fa98.js} +1 -1
  153. package/assets/esri/core/workers/chunks/c29486c4eeb3e72effff.js +1 -0
  154. package/assets/esri/core/workers/chunks/{2b94623cabc6ae0f86ce.js → c37f7756d48ff9af2656.js} +1 -1
  155. package/assets/esri/core/workers/chunks/{1c52999a6392370844a6.js → c4090a60d149a5962179.js} +1 -1
  156. package/assets/esri/core/workers/chunks/c61c61dac1e8d6188749.js +1 -0
  157. package/assets/esri/core/workers/chunks/c84caf81bfaa4a8b5aa1.js +1 -0
  158. package/assets/esri/core/workers/chunks/c8c8cf43fd640d2f5cb1.js +1 -0
  159. package/assets/esri/core/workers/chunks/{73c1d43070b4fe1e5c1e.js → c8e686efe344a33a0258.js} +1 -1
  160. package/assets/esri/core/workers/chunks/{6bb5158de43c4b59107f.js → c9b16fd41cd59d452522.js} +1 -1
  161. package/assets/esri/core/workers/chunks/ce16489cf7eb0d78c741.js.LICENSE.txt +1 -1
  162. package/assets/esri/core/workers/chunks/d048e4926e78458afa3e.js +1 -0
  163. package/assets/esri/core/workers/chunks/d07f911d40bf05fc0306.js +1 -0
  164. package/assets/esri/core/workers/chunks/d1ca7c3a32ce00ed8b81.js +1 -0
  165. package/assets/esri/core/workers/chunks/{630efe10c871425b6a95.js → d1e97cce5047f1791e22.js} +1 -1
  166. package/assets/esri/core/workers/chunks/d28670cb11164e318e45.js +1 -0
  167. package/assets/esri/core/workers/chunks/{46ef545d2b3b3f4e6d32.js → d391bfbaf0e790cd10d6.js} +2 -2
  168. package/assets/esri/core/workers/chunks/{46ef545d2b3b3f4e6d32.js.LICENSE.txt → d391bfbaf0e790cd10d6.js.LICENSE.txt} +1 -1
  169. package/assets/esri/core/workers/chunks/d56ac52a5288e06365e7.js +1 -0
  170. package/assets/esri/core/workers/chunks/d6e0528eacee7ea4c1ce.js.LICENSE.txt +1 -1
  171. package/assets/esri/core/workers/chunks/{d570c75a425aa29672c8.js → da24ad57747714ac5eda.js} +1 -1
  172. package/assets/esri/core/workers/chunks/{7e43c105f1cfc44b7bd0.js → dc51438b832551924a9e.js} +1 -1
  173. package/assets/esri/core/workers/chunks/dc66490520f97eef15bf.js +316 -0
  174. package/assets/esri/core/workers/chunks/ddca92e18e96ea1c9d89.js +1 -0
  175. package/assets/esri/core/workers/chunks/{cfa3164e7fa1884dc2b9.js → ddfd01bb9ba8577c3ffc.js} +1 -1
  176. package/assets/esri/core/workers/chunks/ded9747ae04ab889d52a.js +1 -0
  177. package/assets/esri/core/workers/chunks/{50d9f69d5255af4b29bb.js → df5afa06c6deb6b40109.js} +1 -1
  178. package/assets/esri/core/workers/chunks/df8279e1baf378faf85f.js +1 -0
  179. package/assets/esri/core/workers/chunks/dff2df259f140b7d97a9.js +1 -0
  180. package/assets/esri/core/workers/chunks/e25c4b4a03270d48f408.js +1 -0
  181. package/assets/esri/core/workers/chunks/e3434f91f47f551d9e02.js +1 -0
  182. package/assets/esri/core/workers/chunks/{da573ecc68e6aa8f6da9.js → e767f83f9e2de6650f80.js} +1 -1
  183. package/assets/esri/core/workers/chunks/e9d4cae2144974489d6e.js +1 -0
  184. package/assets/esri/core/workers/chunks/{91df8638b8b904e6d8c5.js → ead8d0cbcebd12dbfad7.js} +1 -1
  185. package/assets/esri/core/workers/chunks/eb6c3dd440ede4adf603.js +1 -0
  186. package/assets/esri/core/workers/chunks/eb9c166db0db6fa60e95.js +1 -0
  187. package/assets/esri/core/workers/chunks/edc671b9b83c8e19cb42.js +1 -0
  188. package/assets/esri/core/workers/chunks/{16d66770ef841564ee3f.js → ee5aa11750c51b220f1e.js} +1 -1
  189. package/assets/esri/core/workers/chunks/ee5f0fd5384caa11c986.js +1 -0
  190. package/assets/esri/core/workers/chunks/f141c9f7f0d9b2322bf6.js +1 -0
  191. package/assets/esri/core/workers/chunks/{5875a51b97ee9bd438a0.js → f34e3fa0c5b28531e289.js} +1 -1
  192. package/assets/esri/core/workers/chunks/f64037a88ab03662dc2a.js +1 -0
  193. package/assets/esri/core/workers/chunks/f651c05604eab83aef5f.js.LICENSE.txt +1 -1
  194. package/assets/esri/core/workers/chunks/{fa4411e0a5ac3fcba365.js → f65c0102af17390a50ac.js} +1 -1
  195. package/assets/esri/core/workers/chunks/f6c11c8ac687de3ef1ab.js +1 -0
  196. package/assets/esri/core/workers/chunks/f7a1f48c53422c6e2028.js +1 -0
  197. package/assets/esri/core/workers/chunks/f7f002ea5ff5fe7f6249.js +1 -0
  198. package/assets/esri/core/workers/chunks/f80f5dbf96c343ac4df6.js +1 -0
  199. package/assets/esri/core/workers/chunks/f8e889be4b45f6f0667e.js +1 -0
  200. package/assets/esri/core/workers/chunks/fbd796c88f07bb6755dc.js +1 -0
  201. package/assets/esri/core/workers/chunks/fbd8d2f61f8a15bcf3db.js +1 -0
  202. package/assets/esri/core/workers/chunks/fccd931f95d81ecc57b2.js +1 -0
  203. package/assets/esri/core/workers/chunks/{2f78861afe0e9037dd8d.js → fe49321dca22dc60d105.js} +1 -1
  204. package/assets/esri/core/workers/chunks/fec3897ed7e8691387ed.js +1 -0
  205. package/assets/esri/libs/parquet/pkg/bundle_bg.wasm +0 -0
  206. package/assets/esri/themes/base/widgets/_Directions.scss +17 -18
  207. package/assets/esri/themes/base/widgets/_NavigationToggle.scss +1 -1
  208. package/assets/esri/themes/base/widgets/_OrientedImageryViewer.scss +4 -4
  209. package/assets/esri/themes/base/widgets/_UtilityNetworkTrace.scss +14 -4
  210. package/assets/esri/themes/base/widgets/_Widget.scss +1 -1
  211. package/assets/esri/themes/dark/main.css +1 -1
  212. package/assets/esri/themes/light/main.css +1 -1
  213. package/assets/esri/themes/light/view.css +1 -1
  214. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_ar.json +1 -1
  215. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_bg.json +1 -1
  216. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_bs.json +1 -1
  217. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_ca.json +1 -1
  218. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_cs.json +1 -1
  219. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_da.json +1 -1
  220. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_de.json +1 -1
  221. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_el.json +1 -1
  222. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_es.json +1 -1
  223. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_et.json +1 -1
  224. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_fi.json +1 -1
  225. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_fr.json +1 -1
  226. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_he.json +1 -1
  227. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_hr.json +1 -1
  228. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_hu.json +1 -1
  229. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_id.json +1 -1
  230. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_it.json +1 -1
  231. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_ja.json +1 -1
  232. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_ko.json +1 -1
  233. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_lt.json +1 -1
  234. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_lv.json +1 -1
  235. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_nl.json +1 -1
  236. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_no.json +1 -1
  237. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_pl.json +1 -1
  238. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_pt-BR.json +1 -1
  239. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_pt-PT.json +1 -1
  240. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_ro.json +1 -1
  241. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_ru.json +1 -1
  242. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_sk.json +1 -1
  243. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_sl.json +1 -1
  244. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_sr.json +1 -1
  245. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_sv.json +1 -1
  246. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_th.json +1 -1
  247. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_tr.json +1 -1
  248. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_uk.json +1 -1
  249. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_vi.json +1 -1
  250. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_zh-CN.json +1 -1
  251. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_zh-HK.json +1 -1
  252. package/assets/esri/views/3d/analysis/VolumeMeasurement/t9n/VolumeMeasurementAnalysis_zh-TW.json +1 -1
  253. package/assets/esri/widgets/Editor/t9n/Editor_ar.json +1 -1
  254. package/assets/esri/widgets/Editor/t9n/Editor_bg.json +1 -1
  255. package/assets/esri/widgets/Editor/t9n/Editor_bs.json +1 -1
  256. package/assets/esri/widgets/Editor/t9n/Editor_ca.json +1 -1
  257. package/assets/esri/widgets/Editor/t9n/Editor_cs.json +1 -1
  258. package/assets/esri/widgets/Editor/t9n/Editor_da.json +1 -1
  259. package/assets/esri/widgets/Editor/t9n/Editor_de.json +1 -1
  260. package/assets/esri/widgets/Editor/t9n/Editor_el.json +1 -1
  261. package/assets/esri/widgets/Editor/t9n/Editor_es.json +1 -1
  262. package/assets/esri/widgets/Editor/t9n/Editor_et.json +1 -1
  263. package/assets/esri/widgets/Editor/t9n/Editor_fi.json +1 -1
  264. package/assets/esri/widgets/Editor/t9n/Editor_fr.json +1 -1
  265. package/assets/esri/widgets/Editor/t9n/Editor_he.json +1 -1
  266. package/assets/esri/widgets/Editor/t9n/Editor_hr.json +1 -1
  267. package/assets/esri/widgets/Editor/t9n/Editor_hu.json +1 -1
  268. package/assets/esri/widgets/Editor/t9n/Editor_id.json +1 -1
  269. package/assets/esri/widgets/Editor/t9n/Editor_it.json +1 -1
  270. package/assets/esri/widgets/Editor/t9n/Editor_ja.json +1 -1
  271. package/assets/esri/widgets/Editor/t9n/Editor_ko.json +1 -1
  272. package/assets/esri/widgets/Editor/t9n/Editor_lt.json +1 -1
  273. package/assets/esri/widgets/Editor/t9n/Editor_lv.json +1 -1
  274. package/assets/esri/widgets/Editor/t9n/Editor_nl.json +1 -1
  275. package/assets/esri/widgets/Editor/t9n/Editor_no.json +1 -1
  276. package/assets/esri/widgets/Editor/t9n/Editor_pl.json +1 -1
  277. package/assets/esri/widgets/Editor/t9n/Editor_pt-BR.json +1 -1
  278. package/assets/esri/widgets/Editor/t9n/Editor_pt-PT.json +1 -1
  279. package/assets/esri/widgets/Editor/t9n/Editor_ro.json +1 -1
  280. package/assets/esri/widgets/Editor/t9n/Editor_ru.json +1 -1
  281. package/assets/esri/widgets/Editor/t9n/Editor_sk.json +1 -1
  282. package/assets/esri/widgets/Editor/t9n/Editor_sl.json +1 -1
  283. package/assets/esri/widgets/Editor/t9n/Editor_sr.json +1 -1
  284. package/assets/esri/widgets/Editor/t9n/Editor_sv.json +1 -1
  285. package/assets/esri/widgets/Editor/t9n/Editor_th.json +1 -1
  286. package/assets/esri/widgets/Editor/t9n/Editor_tr.json +1 -1
  287. package/assets/esri/widgets/Editor/t9n/Editor_uk.json +1 -1
  288. package/assets/esri/widgets/Editor/t9n/Editor_vi.json +1 -1
  289. package/assets/esri/widgets/Editor/t9n/Editor_zh-CN.json +1 -1
  290. package/assets/esri/widgets/Editor/t9n/Editor_zh-HK.json +1 -1
  291. package/assets/esri/widgets/Editor/t9n/Editor_zh-TW.json +1 -1
  292. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ar.json +1 -1
  293. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_bg.json +1 -1
  294. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_bs.json +1 -1
  295. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ca.json +1 -1
  296. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_cs.json +1 -1
  297. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_da.json +1 -1
  298. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_de.json +1 -1
  299. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_el.json +1 -1
  300. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_es.json +1 -1
  301. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_et.json +1 -1
  302. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_fi.json +1 -1
  303. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_fr.json +1 -1
  304. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_he.json +1 -1
  305. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_hr.json +1 -1
  306. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_hu.json +1 -1
  307. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_id.json +1 -1
  308. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_it.json +1 -1
  309. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ja.json +1 -1
  310. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ko.json +1 -1
  311. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_lt.json +1 -1
  312. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_lv.json +1 -1
  313. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_nl.json +1 -1
  314. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_no.json +1 -1
  315. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pl.json +1 -1
  316. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pt-BR.json +1 -1
  317. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pt-PT.json +1 -1
  318. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ro.json +1 -1
  319. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ru.json +1 -1
  320. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sk.json +1 -1
  321. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sl.json +1 -1
  322. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sr.json +1 -1
  323. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sv.json +1 -1
  324. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_th.json +1 -1
  325. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_tr.json +1 -1
  326. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_uk.json +1 -1
  327. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_vi.json +1 -1
  328. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-CN.json +1 -1
  329. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-HK.json +1 -1
  330. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-TW.json +1 -1
  331. package/assets/esri/widgets/Sketch/t9n/Sketch_ar.json +1 -1
  332. package/assets/esri/widgets/Sketch/t9n/Sketch_bg.json +1 -1
  333. package/assets/esri/widgets/Sketch/t9n/Sketch_bs.json +1 -1
  334. package/assets/esri/widgets/Sketch/t9n/Sketch_ca.json +1 -1
  335. package/assets/esri/widgets/Sketch/t9n/Sketch_cs.json +1 -1
  336. package/assets/esri/widgets/Sketch/t9n/Sketch_da.json +1 -1
  337. package/assets/esri/widgets/Sketch/t9n/Sketch_de.json +1 -1
  338. package/assets/esri/widgets/Sketch/t9n/Sketch_el.json +1 -1
  339. package/assets/esri/widgets/Sketch/t9n/Sketch_es.json +1 -1
  340. package/assets/esri/widgets/Sketch/t9n/Sketch_et.json +1 -1
  341. package/assets/esri/widgets/Sketch/t9n/Sketch_fi.json +1 -1
  342. package/assets/esri/widgets/Sketch/t9n/Sketch_fr.json +1 -1
  343. package/assets/esri/widgets/Sketch/t9n/Sketch_he.json +1 -1
  344. package/assets/esri/widgets/Sketch/t9n/Sketch_hr.json +1 -1
  345. package/assets/esri/widgets/Sketch/t9n/Sketch_hu.json +1 -1
  346. package/assets/esri/widgets/Sketch/t9n/Sketch_id.json +1 -1
  347. package/assets/esri/widgets/Sketch/t9n/Sketch_it.json +1 -1
  348. package/assets/esri/widgets/Sketch/t9n/Sketch_ja.json +1 -1
  349. package/assets/esri/widgets/Sketch/t9n/Sketch_ko.json +1 -1
  350. package/assets/esri/widgets/Sketch/t9n/Sketch_lt.json +1 -1
  351. package/assets/esri/widgets/Sketch/t9n/Sketch_lv.json +1 -1
  352. package/assets/esri/widgets/Sketch/t9n/Sketch_nl.json +1 -1
  353. package/assets/esri/widgets/Sketch/t9n/Sketch_no.json +1 -1
  354. package/assets/esri/widgets/Sketch/t9n/Sketch_pl.json +1 -1
  355. package/assets/esri/widgets/Sketch/t9n/Sketch_pt-BR.json +1 -1
  356. package/assets/esri/widgets/Sketch/t9n/Sketch_pt-PT.json +1 -1
  357. package/assets/esri/widgets/Sketch/t9n/Sketch_ro.json +1 -1
  358. package/assets/esri/widgets/Sketch/t9n/Sketch_ru.json +1 -1
  359. package/assets/esri/widgets/Sketch/t9n/Sketch_sk.json +1 -1
  360. package/assets/esri/widgets/Sketch/t9n/Sketch_sl.json +1 -1
  361. package/assets/esri/widgets/Sketch/t9n/Sketch_sr.json +1 -1
  362. package/assets/esri/widgets/Sketch/t9n/Sketch_sv.json +1 -1
  363. package/assets/esri/widgets/Sketch/t9n/Sketch_th.json +1 -1
  364. package/assets/esri/widgets/Sketch/t9n/Sketch_tr.json +1 -1
  365. package/assets/esri/widgets/Sketch/t9n/Sketch_uk.json +1 -1
  366. package/assets/esri/widgets/Sketch/t9n/Sketch_vi.json +1 -1
  367. package/assets/esri/widgets/Sketch/t9n/Sketch_zh-CN.json +1 -1
  368. package/assets/esri/widgets/Sketch/t9n/Sketch_zh-HK.json +1 -1
  369. package/assets/esri/widgets/Sketch/t9n/Sketch_zh-TW.json +1 -1
  370. package/chunks/ComponentShader.glsl.js +72 -39
  371. package/chunks/Envelope.js +1 -1
  372. package/chunks/Geometry.js +1 -1
  373. package/chunks/MultiPathImpl.js +1 -1
  374. package/chunks/OITBlend.glsl.js +3 -3
  375. package/chunks/Point2D.js +1 -1
  376. package/chunks/UnitFactory.js +1 -1
  377. package/chunks/bundle.js +1 -1
  378. package/chunks/containsOperator.js +1 -1
  379. package/chunks/densifyOperator.js +1 -1
  380. package/chunks/differenceOperator.js +1 -1
  381. package/chunks/intersectsOperator.js +1 -1
  382. package/chunks/persistableUrlUtils.js +1 -1
  383. package/config.js +1 -1
  384. package/core/Identifiable.js +1 -1
  385. package/core/MultiOriginJSONSupport.js +1 -1
  386. package/core/NumericIdentifiable.js +5 -0
  387. package/core/QueueProcessor.js +1 -1
  388. package/core/SetUtils.js +1 -1
  389. package/core/WriteableMultiOriginJSONMixin.js +5 -0
  390. package/core/dedupeResult.js +5 -0
  391. package/core/has.js +1 -1
  392. package/core/libs/gl-matrix-2/math/quat.js +1 -1
  393. package/{views/3d/support/ImageWithType.js → core/performance.js} +1 -1
  394. package/core/sanitizerUtils.js +1 -1
  395. package/core/scheduling.js +1 -1
  396. package/core/unitUtils.js +1 -1
  397. package/core/workers/Connection.js +1 -1
  398. package/core/workers/WorkerHandle.js +1 -1
  399. package/core/workers/utils.js +1 -1
  400. package/editing/sharedTemplates/executor/support/createFeatureServiceEdit.js +1 -1
  401. package/form/FormTemplate.js +1 -1
  402. package/form/elements/Element.js +1 -1
  403. package/form/elements/FieldElement.js +1 -1
  404. package/form/elements/GroupElement.js +1 -1
  405. package/geohash/GeohashCell.js +1 -1
  406. package/geohash/geohashUtils.js +1 -1
  407. package/geometry/Extent.js +1 -1
  408. package/geometry/Geometry.js +1 -1
  409. package/geometry/GeometryCursor.js +1 -1
  410. package/geometry/Point.js +1 -1
  411. package/geometry/SpatialReference.js +1 -1
  412. package/geometry/ellipsoidUtils.js +1 -1
  413. package/geometry/geometryCursorCollectUtils.js +1 -1
  414. package/geometry/libtess.js +1 -1
  415. package/geometry/operators/gx/operatorOffset.js +1 -1
  416. package/geometry/operators/support/jsonConverter.js +1 -1
  417. package/geometry/support/MeshTransform.js +1 -1
  418. package/geometry/support/axisAngleDegrees.js +1 -1
  419. package/geometry/support/jsonUtils.js +1 -1
  420. package/geometry/support/meshUtils/exporters/gltf/gltf.js +1 -1
  421. package/geometry/support/meshUtils/loadGLTFMesh.js +1 -1
  422. package/geometry/support/meshUtils/rotate.js +1 -1
  423. package/geometry/support/meshUtils/scale.js +1 -1
  424. package/geometry/support/meshUtils/vertexSpaceConversion.js +1 -1
  425. package/geometry/support/normalizeUtilsSync.js +1 -1
  426. package/geometry/support/plane.js +1 -1
  427. package/geometry/support/polygonUtils.js +1 -1
  428. package/geometry/support/triangulationUtils.js +1 -1
  429. package/identity/Credential.js +1 -1
  430. package/identity/IdentityManager.js +1 -1
  431. package/identity/IdentityManagerBase.js +1 -1
  432. package/interfaces.d.ts +2067 -458
  433. package/intl/date.js +1 -1
  434. package/intl.d.ts +2 -0
  435. package/intl.js +1 -1
  436. package/kernel.js +1 -1
  437. package/layers/FeatureLayer.js +1 -1
  438. package/layers/KnowledgeGraphLayer.js +1 -1
  439. package/layers/Layer.js +1 -1
  440. package/layers/LinkChartLayer.js +1 -1
  441. package/layers/MapNotesLayer.js +1 -1
  442. package/layers/OrientedImageryLayer.js +1 -1
  443. package/layers/SceneLayer.js +1 -1
  444. package/layers/graphics/OptimizedFeature.js +1 -1
  445. package/layers/graphics/OptimizedGeometry.js +1 -1
  446. package/layers/graphics/centroid.js +1 -1
  447. package/layers/graphics/contains.js +1 -1
  448. package/layers/graphics/controllers/FeatureTileController3D.js +1 -1
  449. package/layers/graphics/controllers/I3SOnDemandController.js +1 -1
  450. package/layers/graphics/data/AttributesBuilder.js +1 -1
  451. package/layers/graphics/data/FeatureStore.js +1 -1
  452. package/layers/graphics/data/QueryEngine.js +1 -1
  453. package/layers/graphics/data/QueryEngineResult.js +1 -1
  454. package/layers/graphics/data/geometryUtils.js +1 -1
  455. package/layers/graphics/data/spatialQuerySupport.js +1 -1
  456. package/layers/graphics/featureConversionUtils.js +1 -1
  457. package/layers/graphics/sources/OGCFeatureSource.js +1 -1
  458. package/layers/graphics/sources/connections/GeoEventConnection.js +1 -1
  459. package/layers/graphics/sources/geojson/GeoJSONSourceWorker.js +1 -1
  460. package/layers/graphics/sources/geojson/geojson.js +1 -1
  461. package/layers/graphics/sources/support/MemorySourceWorker.js +1 -1
  462. package/layers/graphics/sources/support/ParquetSourceWorker.js +1 -1
  463. package/layers/graphics/sources/support/clientSideDefaults.js +1 -1
  464. package/layers/knowledgeGraph/KnowledgeGraphSublayer.js +1 -1
  465. package/layers/knowledgeGraph/layerUtils.js +1 -1
  466. package/layers/mixins/ArcGISImageService.js +1 -1
  467. package/layers/mixins/ImageryTileMixin.js +1 -1
  468. package/layers/ogc/ogcFeatureUtils.js +1 -1
  469. package/layers/orientedImagery/core/ExposurePoint.js +1 -1
  470. package/layers/orientedImagery/transformations/imageToWorld.js +1 -1
  471. package/layers/save/groupLayerUtils.js +1 -1
  472. package/layers/support/DateTimeFieldFormat.js +1 -1
  473. package/layers/support/FieldFormat.js +1 -1
  474. package/layers/support/MediaElementBase.js +1 -1
  475. package/layers/support/NumberFieldFormat.js +1 -1
  476. package/layers/support/PixelBlock.js +1 -1
  477. package/layers/support/RasterInfo.js +1 -1
  478. package/layers/support/RasterJobHandler.js +1 -1
  479. package/layers/support/RasterSensorInfo.js +1 -1
  480. package/layers/support/RasterStorageInfo.js +1 -1
  481. package/layers/support/RasterWorker.js +1 -1
  482. package/layers/support/Sublayer.js +1 -1
  483. package/layers/support/TitleCreator.js +1 -1
  484. package/layers/support/arcgisLayerUrl.js +1 -1
  485. package/layers/support/capabilities.js +1 -1
  486. package/layers/support/fieldConfigUtils.js +1 -1
  487. package/layers/support/fieldUtils.js +1 -1
  488. package/layers/support/rasterDatasets/BaseRaster.js +1 -1
  489. package/layers/support/rasterDatasets/pixelReader.js +1 -1
  490. package/layers/support/rasterFieldUtils.js +1 -1
  491. package/layers/support/rasterFunctions/pixelTransformUtils.js +5 -0
  492. package/layers/support/rasterFunctions/pixelUtils.js +1 -1
  493. package/layers/support/serviceCapabilitiesUtils.js +1 -1
  494. package/layers/support/source/DataLayerSource.js +1 -1
  495. package/networks/CircuitManager.d.ts +4 -0
  496. package/networks/UnitIdentifierManager.d.ts +4 -0
  497. package/networks/support/Circuit.d.ts +4 -0
  498. package/networks/support/CircuitLocation.d.ts +4 -0
  499. package/networks/support/CircuitPath.d.ts +4 -0
  500. package/networks/support/CircuitPathConnectivityElement.d.ts +4 -0
  501. package/networks/support/CircuitSection.d.ts +4 -0
  502. package/networks/support/Subcircuit.d.ts +4 -0
  503. package/package.json +5 -5
  504. package/popup/ExpressionInfo.js +1 -1
  505. package/popup/FieldInfo.js +1 -1
  506. package/popup/content/AttachmentsContent.js +1 -1
  507. package/popup/content/BarChartMediaInfo.js +1 -1
  508. package/popup/content/ColumnChartMediaInfo.js +1 -1
  509. package/popup/content/Content.js +1 -1
  510. package/popup/content/CustomContent.js +1 -1
  511. package/popup/content/ExpressionContent.js +1 -1
  512. package/popup/content/FieldsContent.js +1 -1
  513. package/popup/content/ImageMediaInfo.js +1 -1
  514. package/popup/content/LineChartMediaInfo.js +1 -1
  515. package/popup/content/MediaContent.js +1 -1
  516. package/popup/content/PieChartMediaInfo.js +1 -1
  517. package/popup/content/RelationshipContent.js +1 -1
  518. package/popup/content/TextContent.js +1 -1
  519. package/popup/content/UtilityNetworkAssociationsContent.js +1 -1
  520. package/popup/content/mixins/ChartMediaInfo.js +1 -1
  521. package/popup/content/mixins/MediaInfo.js +1 -1
  522. package/popup/content.js +1 -1
  523. package/popup/support/FieldInfoFormat.js +1 -1
  524. package/processRequest.js +5 -0
  525. package/request.js +1 -1
  526. package/requestConfig.js +5 -0
  527. package/requestQueue.js +5 -0
  528. package/rest/geometryService/utils.js +1 -1
  529. package/rest/networks/circuits/support/CircuitTraceResult.d.ts +4 -0
  530. package/rest/networks/circuits/support/CircuitVerifyResult.d.ts +4 -0
  531. package/rest/networks/support/TelecomNetworkElement.d.ts +4 -0
  532. package/rest/networks/unitIdentifiers/support/UnitQueryResult.d.ts +4 -0
  533. package/rest/print.js +1 -1
  534. package/rest/query/executeForCount.js +1 -1
  535. package/rest/query/executeForExtent.js +1 -1
  536. package/rest/query/executeForIds.js +1 -1
  537. package/rest/query/executeQueryJSON.js +1 -1
  538. package/rest/query/executeQueryPBF.js +1 -1
  539. package/rest/query/operations/pbfDehydratedFeatureSet.js +1 -1
  540. package/rest/query/operations/pbfJSONFeatureSet.js +1 -1
  541. package/rest/query/operations/query.js +1 -1
  542. package/rest/query/operations/queryZScale.js +1 -1
  543. package/rest/support/BaseImageMeasureResultValue.js +5 -0
  544. package/rest/support/ImageAreaResult.js +1 -1
  545. package/rest/support/ImageDistanceResult.js +1 -1
  546. package/rest/support/ImageHeightResult.js +1 -1
  547. package/rest/support/ImageMeasureResultAngleValue.js +5 -0
  548. package/rest/support/ImageMeasureResultAreaValue.js +5 -0
  549. package/rest/support/ImageMeasureResultLengthValue.js +5 -0
  550. package/rest/support/ImageWithType.js +5 -0
  551. package/rest/support/imageMeasureUtils.js +1 -1
  552. package/rest/versionManagement/getVersionInfos.js +1 -1
  553. package/smartMapping/renderers/size.js +1 -1
  554. package/smartMapping/statistics/histogram.js +1 -1
  555. package/smartMapping/support/adapters/FeatureLayerAdapter.js +1 -1
  556. package/smartMapping/support/adapters/InMemoryLayerAdapter.js +1 -1
  557. package/smartMapping/support/adapters/support/histogramUtils.js +1 -1
  558. package/smartMapping/support/adapters/support/utils.js +1 -1
  559. package/smartMapping/support/utils.js +1 -1
  560. package/support/basemapDefinitions.js +1 -1
  561. package/support/elevationInfoUtils.js +1 -1
  562. package/support/requestImageUtils.js +1 -1
  563. package/support/revision.js +1 -1
  564. package/symbols/cim/effects/EffectTaperedPolygon.js +1 -1
  565. package/symbols/support/utils.js +1 -1
  566. package/time/TimeExtent.js +1 -1
  567. package/undoredo/support/Services.js +1 -1
  568. package/views/2d/GoToManager.js +1 -1
  569. package/views/2d/analysis/ElevationProfile/ElevationProfileLineVisualization2D.js +1 -1
  570. package/views/2d/constraints/GeometryConstraint.js +1 -1
  571. package/views/2d/constraints/RotationConstraint.js +1 -1
  572. package/views/2d/constraints/ZoomConstraint.js +1 -1
  573. package/views/2d/engine/Bitmap.js +1 -1
  574. package/views/2d/engine/vectorTiles/decluttering/SymbolFader.js +1 -1
  575. package/views/2d/engine/vectorTiles/shaders/sources/shaderRepository.js +1 -1
  576. package/views/2d/engine/webgl/Mesh2D.js +1 -1
  577. package/views/2d/engine/webgl/brushes/WGLBrushVTLSymbol.js +1 -1
  578. package/views/2d/engine/webgl/mesh/templates/templateUtils.js +1 -1
  579. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AnimatedMarkerMeshWriter.js +1 -1
  580. package/views/2d/engine/webgl/shaderGraph/techniques/fill/AFillMeshWriter.js +1 -1
  581. package/views/2d/engine/webgl/shaderGraph/techniques/labels/LabelMeshWriter.js +1 -1
  582. package/views/2d/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTiles2D.js +1 -1
  583. package/views/2d/layers/FeatureLayerView2D.js +1 -1
  584. package/views/2d/layers/features/FeaturePipelineWorker.js +1 -1
  585. package/views/2d/layers/features/aggregation/GridCell.js +1 -1
  586. package/views/2d/layers/features/layerAdapters/CatalogFootprintLayerAdapter.js +1 -1
  587. package/views/2d/layers/features/layerAdapters/FeatureLayerAdapter.js +1 -1
  588. package/views/2d/layers/features/layerAdapters/InMemoryLayerAdapter.js +1 -1
  589. package/views/2d/layers/features/layerAdapters/KnowledgeGraphSublayerAdapter.js +1 -1
  590. package/views/2d/layers/features/layerAdapters/OGCFeatureLayerAdapter.js +1 -1
  591. package/views/2d/layers/features/layerAdapters/OrientedImageryLayerAdapter.js +1 -1
  592. package/views/2d/layers/features/layerAdapters/SubtypeGroupLayerAdapter.js +1 -1
  593. package/views/2d/layers/features/processor/AAggregateStrategy.js +1 -1
  594. package/views/2d/layers/features/processor/BinningStrategy.js +1 -1
  595. package/views/2d/layers/features/processor/FeatureUpdateStrategy.js +1 -1
  596. package/views/2d/layers/features/processor/TrackStrategy.js +1 -1
  597. package/views/2d/layers/features/schema/ExceedsLimitCache.js +5 -0
  598. package/views/2d/layers/features/schema/SourceSchema.js +1 -1
  599. package/views/2d/layers/features/sources/FeatureSource.js +1 -1
  600. package/views/2d/layers/features/sources/strategies/AFeatureLoadStrategy.js +1 -1
  601. package/views/2d/layers/features/sources/strategies/ALoadStrategy.js +1 -1
  602. package/views/2d/layers/features/sources/strategies/ParquetSnapshotLoadStrategy.js +1 -1
  603. package/views/2d/layers/features/sources/strategies/ParquetTileLoadStrategy.js +1 -1
  604. package/views/2d/layers/features/sources/strategies/chunks/Overrides.js +1 -1
  605. package/views/2d/layers/features/sources/strategies/chunks/SourceChunkStore.js +1 -1
  606. package/views/2d/layers/features/sources/strategies/constants.js +5 -0
  607. package/views/2d/layers/features/sources/strategies/support/queryAdapters.js +1 -1
  608. package/views/2d/layers/features/support/AttributeStore.js +1 -1
  609. package/views/2d/layers/features/support/FeatureFilterEvaluator.js +1 -1
  610. package/views/2d/layers/features/support/FeatureSetReader.js +1 -1
  611. package/views/2d/layers/features/support/FeatureSetReaderIndirect.js +1 -1
  612. package/views/2d/layers/features/support/FeatureSetReaderPBF.js +1 -1
  613. package/views/2d/layers/features/support/FeatureSetReaderParquet.js +1 -1
  614. package/views/2d/layers/features/support/GraphicsReader.js +1 -1
  615. package/views/2d/layers/imagery/ImageryTileView2D.js +1 -1
  616. package/views/3d/FocusAreasView.js +1 -1
  617. package/views/3d/GroundView3D.js +1 -1
  618. package/views/3d/analysis/Dimension/LengthDimensionSubTool.js +1 -1
  619. package/views/3d/analysis/ElevationProfile/ElevationProfileLineSceneComputation.js +1 -1
  620. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementCutFillComputation.js +1 -1
  621. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementCutFillController.js +1 -1
  622. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementCutFillVisualization.js +1 -1
  623. package/views/3d/analysis/VolumeMeasurement/volumeMeasurementErrors.js +5 -0
  624. package/views/3d/environment/CloudsRenderer.js +1 -1
  625. package/views/3d/glTF/DefaultLoadingContext.js +1 -1
  626. package/views/3d/interactive/measurementTools/areaMeasurement3D/AreaMeasurement3DTool.js +1 -1
  627. package/views/3d/interactive/measurementTools/areaMeasurement3D/AreaMeasurement3DView.js +1 -1
  628. package/views/3d/interactive/measurementTools/directLineMeasurement3D/DirectLineMeasurement3DTool.js +1 -1
  629. package/views/3d/interactive/measurementTools/directLineMeasurement3D/DirectLineMeasurement3DView.js +1 -1
  630. package/views/3d/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTiles3D.js +1 -1
  631. package/views/3d/layers/ElevationLayerView3D.js +1 -1
  632. package/views/3d/layers/FeatureLayerViewBase3D.js +1 -1
  633. package/views/3d/layers/FlowSubView3D.js +1 -1
  634. package/views/3d/layers/IntegratedMesh3DTilesLayerView3D.js +1 -1
  635. package/views/3d/layers/PointCloudLayerView3D.js +1 -1
  636. package/views/3d/layers/graphics/FeatureGraphics3DGraphicsPipeline.js +1 -1
  637. package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
  638. package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
  639. package/views/3d/layers/graphics/Graphics3DFeatureStore.js +1 -1
  640. package/views/3d/layers/graphics/Graphics3DIconSymbolLayer.js +1 -1
  641. package/views/3d/layers/graphics/Graphics3DLineSymbolLayer.js +1 -1
  642. package/views/3d/layers/graphics/Graphics3DObjectSymbolLayer.js +1 -1
  643. package/views/3d/layers/graphics/Graphics3DPolygonFillSymbolLayer.js +1 -1
  644. package/views/3d/layers/graphics/Graphics3DSymbolCreationContext.js +1 -1
  645. package/views/3d/layers/graphics/Graphics3DWaterSymbolLayer.js +1 -1
  646. package/views/3d/layers/graphics/Labeler.js +1 -1
  647. package/views/3d/layers/graphics/ObjectResourceCache.js +1 -1
  648. package/views/3d/layers/graphics/objectResourceUtils.js +1 -1
  649. package/views/3d/layers/graphics/pipeline/Feature3DPipeline.js +1 -1
  650. package/views/3d/layers/graphics/pipeline/featureSet/PBFPointFeatureSetView.js +1 -1
  651. package/views/3d/layers/graphics/pipeline/featureSet/TiledFeatureStore.js +1 -1
  652. package/views/3d/layers/graphics/pipeline/fetching/Tile3DFetcher.js +1 -1
  653. package/views/3d/layers/graphics/wosrLoader.js +1 -1
  654. package/views/3d/layers/i3s/I3SDataRequester.js +5 -0
  655. package/views/3d/layers/i3s/I3SIndex.js +1 -1
  656. package/views/3d/layers/i3s/I3SNode.js +1 -1
  657. package/views/3d/layers/i3s/I3SNodeLoader.js +1 -1
  658. package/views/3d/layers/i3s/I3SOverrides.js +1 -1
  659. package/views/3d/layers/i3s/I3SQueryFeatureAdapter.js +1 -1
  660. package/views/3d/layers/i3s/I3SViewportQueries.js +1 -1
  661. package/views/3d/layers/support/FeatureTile.js +1 -1
  662. package/views/3d/layers/support/FeatureTileFetcher3D.js +1 -1
  663. package/views/3d/layers/support/FeatureTileFetcher3DContext.js +1 -1
  664. package/views/3d/layers/support/HeatmapFeatureProcessor.js +1 -1
  665. package/views/3d/layers/support/ImageHighlightHelper3D.js +1 -1
  666. package/views/3d/layers/support/MediaLayerInteractionOptions.js +1 -1
  667. package/views/3d/layers/support/MediaLayerInteractionReshapeOptions.js +5 -0
  668. package/views/3d/layers/support/SampledGeometryMaxDistanceRatio.js +5 -0
  669. package/views/3d/layers/support/featureTileQuery3D.js +1 -1
  670. package/views/3d/layers/support/fetchTile.js +1 -1
  671. package/views/3d/layers/support/lyr3dTypeConversions.js +1 -1
  672. package/views/3d/state/ViewStateManager.js +1 -1
  673. package/views/3d/state/controllers/PinchAndPanControllerGlobal.js +1 -1
  674. package/views/3d/state/controllers/PinchAndPanControllerLocal.js +1 -1
  675. package/views/3d/state/controllers/RotateController.js +1 -1
  676. package/views/3d/state/controllers/ZoomControllerGlobal.js +1 -1
  677. package/views/3d/state/controllers/ZoomControllerLocal.js +1 -1
  678. package/views/3d/state/controllers/ZoomStepControllerGlobal.js +1 -1
  679. package/views/3d/state/controllers/ZoomStepControllerLocal.js +1 -1
  680. package/views/3d/state/utils/navigationUtils.js +1 -1
  681. package/views/3d/support/DisplayQualityProfile.js +1 -1
  682. package/views/3d/support/QualitySettings.js +1 -1
  683. package/views/3d/support/ResourceController.js +1 -1
  684. package/views/3d/support/SharedSymbolResources.js +1 -1
  685. package/views/3d/support/StreamTextureCollection.js +1 -1
  686. package/views/3d/support/engineContent/line.js +1 -1
  687. package/views/3d/support/flow/FlowSubViewExtent3D.js +1 -1
  688. package/views/3d/support/flow/FlowSubViewTiles3D.js +1 -1
  689. package/views/3d/support/flow/FlowWorker.js +1 -1
  690. package/views/3d/support/flow/StreamlineResources3D.js +1 -1
  691. package/views/3d/support/flow/StreamlineResources3DOverlay.js +1 -1
  692. package/views/3d/support/flow/StreamlineResources3DShape.js +1 -1
  693. package/views/3d/support/flow/constants.js +1 -1
  694. package/views/3d/support/hitTest.js +1 -1
  695. package/views/3d/support/pointsOfInterest/Focus.js +1 -1
  696. package/views/3d/support/renderInfoUtils/polygon.js +1 -1
  697. package/views/3d/terrain/OverlayRenderer.js +1 -1
  698. package/views/3d/terrain/TerrainSurface.js +1 -1
  699. package/views/3d/terrain/Tile.js +1 -1
  700. package/views/3d/terrain/TileOverlayData.js +1 -1
  701. package/views/3d/webgl-engine/collections/Component/ComponentObject.js +1 -1
  702. package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
  703. package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
  704. package/views/3d/webgl-engine/collections/Component/Material/ComponentTechniqueConfiguration.js +1 -1
  705. package/views/3d/webgl-engine/collections/Component/Material/shader/ComponentShader.glsl.js +1 -1
  706. package/views/3d/webgl-engine/core/shaderLibrary/terrain/Overlay.glsl.js +7 -7
  707. package/views/3d/webgl-engine/core/shaderModules/BooleanDrawUniform.js +5 -0
  708. package/views/3d/webgl-engine/core/shaderTechnique/ShaderTechniqueConstructionContext.js +1 -1
  709. package/views/3d/webgl-engine/lib/BindParameters.js +1 -1
  710. package/views/3d/webgl-engine/lib/CutFillDepth.js +1 -1
  711. package/views/3d/webgl-engine/lib/Object3D.js +1 -1
  712. package/views/3d/webgl-engine/lib/RayIntersections.js +1 -1
  713. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  714. package/views/3d/webgl-engine/lighting/SceneLighting.js +1 -1
  715. package/views/3d/webgl-engine/materials/TriangleMaterial.js +1 -1
  716. package/views/3d/webgl-engine/materials/renderers/MergedBuffer.js +1 -1
  717. package/views/3d/webgl-engine/materials/renderers/VaoWriter.js +1 -1
  718. package/views/3d/webgl-engine/parts/RenderView.js +1 -1
  719. package/views/3d/webgl-engine/shaders/AnimatedLine.glsl.js +10 -4
  720. package/views/3d/webgl-engine/statistics/RendererPerformanceInfo.js +1 -1
  721. package/views/DOMContainer.js +1 -1
  722. package/views/SceneView.js +1 -1
  723. package/views/analysis/ElevationProfile/ElevationProfileController.js +1 -1
  724. package/views/analysis/ElevationProfile/ElevationProfileLineGroundComputation.js +1 -1
  725. package/views/analysis/ElevationProfile/ElevationProfileLineInputComputation.js +1 -1
  726. package/views/analysis/ElevationProfile/ElevationProfileResult.js +1 -1
  727. package/views/analysis/ElevationProfile/ElevationProfileTool.js +1 -1
  728. package/views/analysis/ElevationProfile/constants.js +1 -1
  729. package/views/analysis/ElevationProfile/elevationProfileGenerationUtils.js +1 -1
  730. package/views/analysis/ElevationProfile/elevationProfileGeometryUtils.js +1 -1
  731. package/views/analysis/ElevationProfile/elevationProfileLayerUtils.js +5 -0
  732. package/views/draw/DrawOperation.js +1 -1
  733. package/views/draw/MultipointDrawAction.js +1 -1
  734. package/views/draw/PointDrawAction.js +1 -1
  735. package/views/draw/PolygonDrawAction.js +1 -1
  736. package/views/draw/PolylineDrawAction.js +1 -1
  737. package/views/draw/SegmentDrawAction.js +1 -1
  738. package/views/draw/input/CursorUpdateEvents.js +5 -0
  739. package/views/draw/input/DrawCompleteEvent.js +5 -0
  740. package/views/draw/input/VertexAddEvent.js +5 -0
  741. package/views/draw/input/VertexRemoveEvent.js +5 -0
  742. package/views/draw/input/VertexUpdateEvent.js +5 -0
  743. package/views/draw/support/Reshape.js +1 -1
  744. package/views/draw/support/reshapeUtils.js +1 -1
  745. package/views/interactive/dragEventPipeline.js +1 -1
  746. package/views/interactive/editGeometry/CheckpointingEditGeometryOperations.js +5 -0
  747. package/views/interactive/editGeometry/EditGeometry.js +1 -1
  748. package/views/interactive/editGeometry/operations/ReplayableAppendVertex.js +5 -0
  749. package/views/interactive/snapping/featureSources/FeatureServiceSnappingSource.js +1 -1
  750. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceSnappingSourceWorkerHandle.js +1 -1
  751. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTileStore.js +1 -1
  752. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTiledFetcher.js +1 -1
  753. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTilesSimple.js +1 -1
  754. package/views/layers/FeatureLayerView.js +1 -1
  755. package/views/support/PromiseQueue.js +1 -1
  756. package/views/support/Scheduler.js +1 -1
  757. package/views/support/TextureCompressionWorker.js +1 -1
  758. package/views/webgl/ShaderBuilder.js +1 -1
  759. package/views/webgl/Texture.js +1 -1
  760. package/webdoc/support/webdocSaveUtils.js +1 -1
  761. package/webscene/spec-certification/api.js +1 -1
  762. package/widgets/Attachments/AttachmentsViewModel.js +1 -1
  763. package/widgets/BasemapLayerList.js +1 -1
  764. package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.js +1 -1
  765. package/widgets/BatchAttributeForm/templates/support/createBatchFormTemplate.js +1 -1
  766. package/widgets/BatchAttributeForm.js +1 -1
  767. package/widgets/CoordinateConversion/CoordinateConversionViewModel.js +1 -1
  768. package/widgets/CoordinateConversion.js +1 -1
  769. package/widgets/Daylight/DaylightViewModel.js +1 -1
  770. package/widgets/Daylight.js +1 -1
  771. package/widgets/Directions/css.js +1 -1
  772. package/widgets/Directions.js +1 -1
  773. package/widgets/Editor/AddAssociationWorkflow.js +1 -1
  774. package/widgets/Editor/CreateFeaturesWorkflow.js +1 -1
  775. package/widgets/Editor/EditorViewModel.js +1 -1
  776. package/widgets/Editor/Edits.js +1 -1
  777. package/widgets/Editor/MergeFeaturesWorkflow.d.ts +4 -0
  778. package/widgets/Editor/MergeFeaturesWorkflow.js +5 -0
  779. package/widgets/Editor/MergeFeaturesWorkflowData.d.ts +4 -0
  780. package/widgets/Editor/MergeFeaturesWorkflowData.js +5 -0
  781. package/widgets/Editor/SplitFeatureWorkflow.js +1 -1
  782. package/widgets/Editor/UpdateFeatureWorkflow.js +1 -1
  783. package/widgets/Editor/UpdateFeaturesWorkflow.js +1 -1
  784. package/widgets/Editor/UpdateFeaturesWorkflowData.js +1 -1
  785. package/widgets/Editor/UpdateRecordWorkflow.js +1 -1
  786. package/widgets/Editor/UpdateRecordWorkflowData.js +1 -1
  787. package/widgets/Editor/UpdateWorkflow.js +1 -1
  788. package/widgets/Editor/UpdateWorkflowData.js +1 -1
  789. package/widgets/Editor/components/FeatureList.js +1 -1
  790. package/widgets/Editor/components/UploadDetails.js +1 -1
  791. package/widgets/Editor/support/EditorItem.js +1 -1
  792. package/widgets/Editor/support/SketchController.js +1 -1
  793. package/widgets/Editor/support/errors.js +5 -0
  794. package/widgets/Editor/support/mergeFeaturesUtils.js +5 -0
  795. package/widgets/Editor/workflowUtils.js +1 -1
  796. package/widgets/Editor.js +1 -1
  797. package/widgets/Feature/FeatureExpression.js +1 -1
  798. package/widgets/Feature/FeatureFields/FeatureFieldsViewModel.js +1 -1
  799. package/widgets/Feature/FeatureFields.js +1 -1
  800. package/widgets/Feature/FeatureMedia/FeatureMediaViewModel.js +1 -1
  801. package/widgets/Feature/FeatureMedia.js +1 -1
  802. package/widgets/Feature/FeatureViewModel.js +1 -1
  803. package/widgets/Feature/support/featureUtils.js +1 -1
  804. package/widgets/Feature.js +1 -1
  805. package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/UtilityNetworkAssociationItemList.js +1 -1
  806. package/widgets/FeatureForm/FeatureFormViewModel.js +1 -1
  807. package/widgets/FeatureForm/FieldInput.js +1 -1
  808. package/widgets/FeatureForm/InputBase.js +1 -1
  809. package/widgets/FeatureForm/RelationshipInput.js +1 -1
  810. package/widgets/FeatureForm/featureFormUtils.js +1 -1
  811. package/widgets/FeatureForm.js +1 -1
  812. package/widgets/FeatureTable/FeatureTableViewModel.js +1 -1
  813. package/widgets/FeatureTable/FieldColumn.js +1 -1
  814. package/widgets/FeatureTable/Grid/GridViewModel.js +1 -1
  815. package/widgets/FeatureTable/support/FeatureStore.js +1 -1
  816. package/widgets/LayerList.js +1 -1
  817. package/widgets/Legend/LegendViewModel.js +1 -1
  818. package/widgets/Legend/support/ActiveLayerInfo.js +1 -1
  819. package/widgets/Legend.js +1 -1
  820. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  821. package/widgets/OrientedImageryViewer/adapters/sketch/TriangulatedMeasurementAdapter.js +1 -1
  822. package/widgets/OrientedImageryViewer/adapters/view/SceneViewAdapter.js +1 -1
  823. package/widgets/OrientedImageryViewer/components/SequentialNavigationUI.js +1 -1
  824. package/widgets/OrientedImageryViewer/components/SketchTools.js +1 -1
  825. package/widgets/OrientedImageryViewer/galleryUtils.js +1 -1
  826. package/widgets/OrientedImageryViewer/imageMeasurementUtils.js +1 -1
  827. package/widgets/OrientedImageryViewer/services/DepthImageService.js +1 -1
  828. package/widgets/PanoramicViewer/PanoramicViewerViewModel.js +1 -1
  829. package/widgets/PanoramicViewer/PanoramicZoomManager.js +1 -1
  830. package/widgets/PanoramicViewer/support/PanoramicMeshManager.js +1 -1
  831. package/widgets/PanoramicViewer/support/PanoramicTileNode.js +1 -1
  832. package/widgets/PanoramicViewer/support/PanoramicTilePyramid.js +1 -1
  833. package/widgets/PanoramicViewer/support/getVisibleTiles.js +5 -0
  834. package/widgets/Print.js +1 -1
  835. package/widgets/Search/LayerSearchSource.js +1 -1
  836. package/widgets/Sketch/CreateToolVisibilityMap.js +5 -0
  837. package/widgets/Sketch/SelectionToolVisibilityMap.js +5 -0
  838. package/widgets/Sketch/VisibleElements.js +1 -1
  839. package/widgets/Sketch.js +1 -1
  840. package/widgets/UtilityNetworkTrace.js +1 -1
  841. package/widgets/support/ColorPicker.js +1 -1
  842. package/widgets/support/FilterCondition.js +1 -1
  843. package/widgets/support/SelectionList/LayerItem.js +1 -1
  844. package/widgets/support/jsxWidgetSupport.js +1 -1
  845. package/assets/esri/core/workers/chunks/01642fe19e81bfa33eb5.js +0 -1
  846. package/assets/esri/core/workers/chunks/039ec0fbe3b4b398b8c6.js +0 -1
  847. package/assets/esri/core/workers/chunks/0429c1a3690f20647c9f.js +0 -1
  848. package/assets/esri/core/workers/chunks/05eee334d58a0b9f6316.js +0 -1
  849. package/assets/esri/core/workers/chunks/065f2bbcaeef1f13fd48.js +0 -1
  850. package/assets/esri/core/workers/chunks/0731e588afd1f561ec3b.js +0 -1
  851. package/assets/esri/core/workers/chunks/09de8be660174a229efb.js +0 -1
  852. package/assets/esri/core/workers/chunks/0eaa4dccba0d844b9da3.js +0 -1
  853. package/assets/esri/core/workers/chunks/0f9bb3187306f89e3d63.js +0 -1
  854. package/assets/esri/core/workers/chunks/1019fa4818624ba292ef.js +0 -1
  855. package/assets/esri/core/workers/chunks/10fb29ba6f3f81353fbc.js +0 -1
  856. package/assets/esri/core/workers/chunks/147ad5fdd02f46b6da24.js +0 -1
  857. package/assets/esri/core/workers/chunks/17103e6542aae53c7301.js +0 -1
  858. package/assets/esri/core/workers/chunks/188272af9a6470ccfe31.js +0 -1
  859. package/assets/esri/core/workers/chunks/18da83afbc324fef9fd8.js +0 -316
  860. package/assets/esri/core/workers/chunks/1a9f544f20f643161a36.js +0 -1
  861. package/assets/esri/core/workers/chunks/1cfcadaa98ac528fea37.js +0 -1
  862. package/assets/esri/core/workers/chunks/1db0bf570a04687b3130.js +0 -1
  863. package/assets/esri/core/workers/chunks/2266a8f2c2ec37c19bb4.js +0 -1
  864. package/assets/esri/core/workers/chunks/24921d31efa8d222ad2d.js +0 -2
  865. package/assets/esri/core/workers/chunks/25639559336109ff3df1.js +0 -1
  866. package/assets/esri/core/workers/chunks/2a5f331c0f18d8574b4e.js +0 -1
  867. package/assets/esri/core/workers/chunks/2a900a632a1231deb713.js +0 -1
  868. package/assets/esri/core/workers/chunks/31c6e951b99315e8e68a.js +0 -1
  869. package/assets/esri/core/workers/chunks/326a76a4e80269d4029d.js +0 -1
  870. package/assets/esri/core/workers/chunks/35491fbdd287470d40a4.js +0 -1
  871. package/assets/esri/core/workers/chunks/36247c6f6fc2891df2cf.js +0 -1
  872. package/assets/esri/core/workers/chunks/36fe6b8228e622407ec2.js +0 -1
  873. package/assets/esri/core/workers/chunks/3d22fe2f2c40abbc246e.js +0 -1
  874. package/assets/esri/core/workers/chunks/3d53307efbc3f07d7bf2.js +0 -1
  875. package/assets/esri/core/workers/chunks/3d65b8a2fbe1df050a25.js +0 -1
  876. package/assets/esri/core/workers/chunks/40b81d1c2d53cf598b8e.js +0 -1
  877. package/assets/esri/core/workers/chunks/42a72e1d963e4636323b.js +0 -1
  878. package/assets/esri/core/workers/chunks/456161a323be7d640c61.js +0 -1
  879. package/assets/esri/core/workers/chunks/459a67928bde4a62b6a4.js +0 -1
  880. package/assets/esri/core/workers/chunks/4c4227b0ea21a5e429ab.js +0 -1
  881. package/assets/esri/core/workers/chunks/4eebd74ebc20579dade8.js +0 -1
  882. package/assets/esri/core/workers/chunks/500d09d2191127371081.js +0 -1
  883. package/assets/esri/core/workers/chunks/50864c1924030e62497d.js +0 -1
  884. package/assets/esri/core/workers/chunks/5707713c2f27588b9194.js +0 -1
  885. package/assets/esri/core/workers/chunks/5713f96bade5ebb54c81.js +0 -1
  886. package/assets/esri/core/workers/chunks/5718cf135e105e1e026b.js +0 -1
  887. package/assets/esri/core/workers/chunks/5c585b338a9e9aa0e205.js +0 -1
  888. package/assets/esri/core/workers/chunks/5d1d909354c90cb8eb60.js +0 -1
  889. package/assets/esri/core/workers/chunks/5ea03f53d4d64d9e7cae.js +0 -1
  890. package/assets/esri/core/workers/chunks/6201356f7f91e5c06425.js +0 -1
  891. package/assets/esri/core/workers/chunks/620a94b54be3ed78350d.js +0 -1
  892. package/assets/esri/core/workers/chunks/63019a7eb5222dc5e420.js +0 -1
  893. package/assets/esri/core/workers/chunks/64629ddcf008349eaf41.js +0 -1
  894. package/assets/esri/core/workers/chunks/64ee8d2acae2d6fce608.js +0 -1
  895. package/assets/esri/core/workers/chunks/650c94c0e8ab9721015e.js +0 -1
  896. package/assets/esri/core/workers/chunks/67f305b0c72e77a6331a.js +0 -1
  897. package/assets/esri/core/workers/chunks/6e5b3bbee054d072b594.js +0 -1
  898. package/assets/esri/core/workers/chunks/6f4bd0ee85e7e5a74340.js +0 -1
  899. package/assets/esri/core/workers/chunks/72ecf49d03bb24bf0998.js +0 -1
  900. package/assets/esri/core/workers/chunks/7421f9575487cdc9e28e.js +0 -1
  901. package/assets/esri/core/workers/chunks/77a11d7d53325d108ed8.js +0 -1
  902. package/assets/esri/core/workers/chunks/7c5c272612198db83851.js +0 -1
  903. package/assets/esri/core/workers/chunks/7d9882ddfa6495f72baa.js +0 -1
  904. package/assets/esri/core/workers/chunks/7fffad8ff6878fa1fd56.js +0 -1
  905. package/assets/esri/core/workers/chunks/81bbe5251ed13c0d91cc.js +0 -1
  906. package/assets/esri/core/workers/chunks/85622fe99f4d08afe875.js +0 -1
  907. package/assets/esri/core/workers/chunks/8b16aa50d879b92a5375.js +0 -1
  908. package/assets/esri/core/workers/chunks/8bc64fc7c4b9eb8fca4d.js +0 -1
  909. package/assets/esri/core/workers/chunks/8eefa133c36a004c054c.js +0 -1
  910. package/assets/esri/core/workers/chunks/91afee11072471e4eefe.js +0 -1
  911. package/assets/esri/core/workers/chunks/929ece362604dc301229.js +0 -1
  912. package/assets/esri/core/workers/chunks/9834bc11586a2d8d6f35.js +0 -1
  913. package/assets/esri/core/workers/chunks/9a723d739ac44b45432c.js +0 -1
  914. package/assets/esri/core/workers/chunks/9c6fc4fe2c46f40d63d9.js +0 -1
  915. package/assets/esri/core/workers/chunks/a5f25104938ab33e7a85.js +0 -1
  916. package/assets/esri/core/workers/chunks/a7bd294996e6c8b8354a.js +0 -1
  917. package/assets/esri/core/workers/chunks/a87521ebe632bf783ef4.js +0 -1
  918. package/assets/esri/core/workers/chunks/a8f998b8ec8c56150479.js +0 -2
  919. package/assets/esri/core/workers/chunks/abf4f018c692c18c3320.js +0 -1
  920. package/assets/esri/core/workers/chunks/ae6066ea6cb373dc6db3.js +0 -1
  921. package/assets/esri/core/workers/chunks/b0b2670596d6d8c32b5e.js +0 -1
  922. package/assets/esri/core/workers/chunks/b1f667006cba60ef4aa7.js +0 -1
  923. package/assets/esri/core/workers/chunks/b2add7338258ca7c24dd.js +0 -1
  924. package/assets/esri/core/workers/chunks/b2d9f4e057af26a538fb.js +0 -1
  925. package/assets/esri/core/workers/chunks/b62807c6fcfb70a87cd4.js +0 -1
  926. package/assets/esri/core/workers/chunks/b8339c1d60847a9eed3e.js +0 -1
  927. package/assets/esri/core/workers/chunks/bc6619307f312f9241bf.js +0 -1
  928. package/assets/esri/core/workers/chunks/bfc1e8aec7aace3ff30e.js +0 -1
  929. package/assets/esri/core/workers/chunks/c0feec6e2f0e45900ae0.js +0 -1
  930. package/assets/esri/core/workers/chunks/c362fbbafec91c44eeb2.js +0 -1
  931. package/assets/esri/core/workers/chunks/c368a8e8d2f1535af446.js +0 -1
  932. package/assets/esri/core/workers/chunks/c55c096669677321a227.js +0 -1
  933. package/assets/esri/core/workers/chunks/c7a3a44cca5a7d52cca9.js +0 -1
  934. package/assets/esri/core/workers/chunks/c941d15190fc08523d0d.js +0 -1
  935. package/assets/esri/core/workers/chunks/cc70a4a915b0b2ccb2a0.js +0 -1
  936. package/assets/esri/core/workers/chunks/d121045cddbe55c2ecb2.js +0 -1
  937. package/assets/esri/core/workers/chunks/d2120a623b1bd91b9ed9.js +0 -1
  938. package/assets/esri/core/workers/chunks/d466f3f0d3824c77da7c.js +0 -1
  939. package/assets/esri/core/workers/chunks/d78c2833cdc4730a88a3.js +0 -1
  940. package/assets/esri/core/workers/chunks/dabc5a38a472c9719df9.js +0 -1
  941. package/assets/esri/core/workers/chunks/dc31865edea480f0ebba.js +0 -1
  942. package/assets/esri/core/workers/chunks/df438b62702007267798.js +0 -1
  943. package/assets/esri/core/workers/chunks/e0bbfbe1ed39c82f1bd4.js +0 -1
  944. package/assets/esri/core/workers/chunks/e6fc278e2390d2787345.js +0 -1
  945. package/assets/esri/core/workers/chunks/f4eb090bcc3eca64306a.js +0 -1
  946. package/assets/esri/core/workers/chunks/f7846523adacbfe5047e.js +0 -1
  947. package/assets/esri/core/workers/chunks/f839b86bee15deaf84e4.js +0 -1
  948. package/assets/esri/core/workers/chunks/f98689562017583f73ee.js +0 -1
  949. package/assets/esri/core/workers/chunks/fa5c87889c2f0bef896b.js +0 -1
  950. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementConfiguration.js +0 -5
  951. package/views/3d/layers/i3s/I3SStreamDataController.js +0 -5
  952. package/views/3d/support/StreamDataLoader.js +0 -5
  953. package/views/3d/support/StreamDataRequester.js +0 -5
  954. package/views/3d/support/downloadSlots.js +0 -5
  955. package/views/draw/input/DrawEvents.js +0 -5
package/Map.js CHANGED
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as e}from"tslib";import s from"./Basemap.js";import r from"./Ground.js";import t from"./core/CollectionFlattener.js";import{EventedAccessor as o}from"./core/Evented.js";import{destroyMaybe as a}from"./core/maybe.js";import{when as i}from"./core/reactiveUtils.js";import{property as p}from"./core/accessorSupport/decorators/property.js";import{cast as l}from"./core/accessorSupport/decorators/cast.js";import"./core/has.js";import"./core/RandomLCG.js";import{subclass as n}from"./core/accessorSupport/decorators/subclass.js";import d from"./effects/FocusAreas.js";import{isEditableLayer as m}from"./layers/support/editableLayers.js";import{createCache as c,destroyCache as u,basemapEnsureType as y}from"./support/basemapEnsureType.js";import{createFlattenedTablesCollection as h}from"./support/collectionUtils.js";import{ensureType as b}from"./support/groundUtils.js";import{LayersMixin as f}from"./support/LayersMixin.js";import{TablesMixin as j}from"./support/TablesMixin.js";let g=class extends(j(f(o))){constructor(e){super(e),this.allLayers=new t({getCollections:()=>[this.basemap?.baseLayers,this.basemap?.groundLayers,this.ground?.layers,this.layers,this.basemap?.referenceLayers],getChildrenFunction:e=>"layers"in e?e.layers:null}),this.focusAreas=new d,this.allTables=h(this),this.basemap=null,this.editableLayers=new t({getCollections:()=>[this.allLayers],itemFilterFunction:m}),this.ground=new r,this._basemapCache=c(),this.addHandles(i(()=>this.ground,(e,s)=>{s?.parent===this&&(s.parent=null),e.parent=this},{sync:!0}))}destroy(){u(this._basemapCache),this._basemapCache=null,this.focusAreas.destroy(),this.allLayers.destroy(),this.allTables.destroy(),this.editableLayers.destroy(),this.basemap=a(this.basemap),a(this.ground),this._set("ground",null)}castBasemap(e){return y(e,this._basemapCache)}castGround(e){const s=b(e);return s??this._get("ground")}findLayerById(e){return this.allLayers.find(s=>s.id===e)}findTableById(e){return this.allTables.find(s=>s.id===e)}};e([p({readOnly:!0,dependsOn:[]})],g.prototype,"allLayers",void 0),e([p({type:d,nonNullable:!0,json:{write:{overridePolicy:e=>({enabled:e.areas.length>0,ignoreOrigin:!0})}}})],g.prototype,"focusAreas",void 0),e([p({readOnly:!0})],g.prototype,"allTables",void 0),e([p({type:s,json:{read:{source:"baseMap"},write:{target:"baseMap"}}})],g.prototype,"basemap",void 0),e([l("basemap")],g.prototype,"castBasemap",null),e([p({readOnly:!0})],g.prototype,"editableLayers",void 0),e([p({type:r,nonNullable:!0})],g.prototype,"ground",void 0),e([l("ground")],g.prototype,"castGround",null),e([p()],g.prototype,"undoRedo",void 0),g=e([n("esri.Map")],g);const L=g;export{L as default};
5
+ import{__decorate as e}from"tslib";import s from"./Basemap.js";import r from"./Ground.js";import t from"./core/CollectionFlattener.js";import{EventedAccessor as o}from"./core/Evented.js";import{destroyMaybe as a}from"./core/maybe.js";import{when as i}from"./core/reactiveUtils.js";import{property as p}from"./core/accessorSupport/decorators/property.js";import{cast as l}from"./core/accessorSupport/decorators/cast.js";import"./core/has.js";import"./core/RandomLCG.js";import{subclass as n}from"./core/accessorSupport/decorators/subclass.js";import d from"./effects/FocusAreas.js";import{isEditableLayer as m}from"./layers/support/editableLayers.js";import{createCache as c,destroyCache as u,basemapEnsureType as y}from"./support/basemapEnsureType.js";import{createFlattenedTablesCollection as h}from"./support/collectionUtils.js";import{ensureType as b}from"./support/groundUtils.js";import{LayersMixin as f}from"./support/LayersMixin.js";import{TablesMixin as j}from"./support/TablesMixin.js";let g=class extends(j(f(o))){constructor(e){super(e),this.allLayers=new t({getCollections:()=>[this.basemap?.baseLayers,this.basemap?.groundLayers,this.ground?.layers,this.layers,this.basemap?.referenceLayers],getChildrenFunction:e=>"layers"in e?e.layers:null}),this.focusAreas=new d,this.allTables=h(this),this.basemap=null,this.editableLayers=new t({getCollections:()=>[this.allLayers],itemFilterFunction:m}),this.ground=new r,this._basemapCache=c(),this.addHandles(i(()=>this.ground,(e,s)=>{s?.parent===this&&(s.parent=null),e.parent=this},{sync:!0,initial:!0}))}destroy(){u(this._basemapCache),this._basemapCache=null,this.focusAreas.destroy(),this.allLayers.destroy(),this.allTables.destroy(),this.editableLayers.destroy(),this.basemap=a(this.basemap),a(this.ground),this._set("ground",null)}castBasemap(e){return y(e,this._basemapCache)}castGround(e){const s=b(e);return s??this._get("ground")}findLayerById(e){return this.allLayers.find(s=>s.id===e)}findTableById(e){return this.allTables.find(s=>s.id===e)}};e([p({readOnly:!0,dependsOn:[]})],g.prototype,"allLayers",void 0),e([p({type:d,nonNullable:!0,json:{write:{overridePolicy:e=>({enabled:e.areas.length>0,ignoreOrigin:!0})}}})],g.prototype,"focusAreas",void 0),e([p({readOnly:!0})],g.prototype,"allTables",void 0),e([p({type:s,json:{read:{source:"baseMap"},write:{target:"baseMap"}}})],g.prototype,"basemap",void 0),e([l("basemap")],g.prototype,"castBasemap",null),e([p({readOnly:!0})],g.prototype,"editableLayers",void 0),e([p({type:r,nonNullable:!0})],g.prototype,"ground",void 0),e([l("ground")],g.prototype,"castGround",null),e([p()],g.prototype,"undoRedo",void 0),g=e([n("esri.Map")],g);const L=g;export{L as default};
package/PopupTemplate.js CHANGED
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as t}from"tslib";import{ClonableMixin as e}from"./core/Clonable.js";import o from"./core/Collection.js";import{JSONSupport as s}from"./core/JSONSupport.js";import{clone as i}from"./core/lang.js";import r from"./core/Logger.js";import{isPromiseLike as n}from"./core/promiseUtils.js";import{property as p}from"./core/accessorSupport/decorators/property.js";import{cast as a}from"./core/accessorSupport/decorators/cast.js";import{reader as l}from"./core/accessorSupport/decorators/reader.js";import{subclass as d}from"./core/accessorSupport/decorators/subclass.js";import{writer as c}from"./core/accessorSupport/decorators/writer.js";import{ensureOneOfType as m}from"./core/accessorSupport/ensureType.js";import{collectFields as f,collectArcadeFieldNames as u,extractSubstitutionTemplatesFromString as h}from"./layers/support/fieldUtils.js";import{persistableWebSceneTypes as y,persistableTypes as I}from"./popup/content.js";import F from"./popup/ExpressionInfo.js";import w from"./popup/FieldInfo.js";import _ from"./popup/LayerOptions.js";import x from"./popup/RelatedRecordsInfo.js";import{types as g}from"./popup/content/support/mediaInfoTypes.js";import N from"./support/actions/ActionBase.js";import A from"./support/actions/ActionButton.js";import C from"./support/actions/ActionToggle.js";import j from"./popup/content/UtilityNetworkAssociationsContent.js";import S from"./popup/content/RelationshipContent.js";import O from"./popup/content/ExpressionContent.js";import R from"./popup/content/FieldsContent.js";import E from"./popup/content/AttachmentsContent.js";import T from"./popup/content/TextContent.js";import v from"./popup/content/CustomContent.js";import b from"./popup/content/MediaContent.js";import J from"./popup/content/Content.js";const B="relationships/",L="expression/",M=o.ofType({key:"type",defaultKeyValue:"button",base:N,typeMap:{button:A,toggle:C}}),P={base:J,key:"type",typeMap:{media:b,custom:v,text:T,attachments:E,fields:R,expression:O,relationship:S,utilityNetworkAssociations:j}},W=new Set(["attachments","fields","media","text","expression","relationship"]),k=new Set([...W,"utility-network-associations"]);let U=class extends(e(s)){constructor(t){super(t),this.actions=null,this.content="",this.expressionInfos=null,this.fieldInfos=null,this.layerOptions=null,this.lastEditInfoEnabled=!0,this.outFields=null,this.overwriteActions=!1,this.returnGeometry=!1,this.title=""}castContent(t){return Array.isArray(t)?t.map(t=>m(P,t)):"string"==typeof t||"function"==typeof t||t instanceof HTMLElement||n(t)?t:(r.getLogger(this).error("content error","unsupported content value",{value:t}),null)}readContent(t,e){const{popupElements:o}=e;return Array.isArray(o)&&o.length>0?this._readPopupInfoElements(e.description,e.mediaInfos,o):this._readPopupInfo(e)}writeWebSceneContent(t,e,o,s){this._writePopupTemplateContent(t,e,s)}writeWebMapContent(t,e,o,s){this._writePopupTemplateContent(t,e,s)}writeFieldInfos(t,e,o,s){const{content:i}=this,r=Array.isArray(i)?i:null,{writeFieldFormat:n,...p}=s||{};if(t){const o=r?r.filter(t=>"fields"===t.type):[],s=o.length&&o.every(t=>t.fieldInfos?.length);e.fieldInfos=t.filter(Boolean).map(t=>{const e=t.toJSON(p);return s&&(e.visible=!1),e})}if(r)for(const a of r)"fields"===a.type&&this._writeFieldsContent(a,e,p)}writeLayerOptions(t,e,o,s){e[o]=!t||null===t.showNoDataRecords&&null===t.returnTopmostRaster?null:t.toJSON(s)}writeTitle(t,e){e.title=t||""}async collectRequiredFields(t,e,o){const s=this.expressionInfos||[];await this._collectExpressionInfoFields(t,e,o,[...s,...this._getContentExpressionInfos(this.content,s)]),f(t,e,[...this.outFields||[],...this._getActionsFields(this.actions),...this._getTitleFields(this.title),...this._getContentFields(this.content)])}async getRequiredFields(t,e){const o=new Set;return await this.collectRequiredFields(o,t,e),[...o].sort()}_writePopupTemplateContent(t,e,o){"string"!=typeof t?Array.isArray(t)&&(e.popupElements=t.filter(t=>"web-scene"===o?.origin?W.has(t.type):k.has(t.type)).map(t=>t?.toJSON(o)),e.popupElements.forEach(t=>{"attachments"===t.type?this._writeAttachmentContent(e):"media"===t.type?this._writeMediaContent(t,e):"text"===t.type?this._writeTextContent(t,e):"relationship"===t.type&&this._writeRelationshipContent(t,e)})):e.description=t}_writeFieldsContent(t,e,o){const s=t.fieldInfos;if(!Array.isArray(s)||!s.length)return;const i=e.fieldInfos;if(Array.isArray(i))for(const r of s){const t=i.find(t=>t.fieldName?.toLowerCase()===r.fieldName?.toLowerCase());t?t.visible=!0:i.push(r.toJSON(o))}else e.fieldInfos=s.map(t=>t.toJSON(o))}_writeAttachmentContent(t){t.showAttachments||(t.showAttachments=!0)}_writeRelationshipContent(t,e){const o=t.orderByFields?.map(e=>this._toFieldOrderJSON(e,t.relationshipId))||[],s=[...e.relatedRecordsInfo?.orderByFields||[],...o];e.relatedRecordsInfo={showRelatedRecords:!0,...s?.length&&{orderByFields:s}}}_writeTextContent(t,e){!e.description&&t.text&&(e.description=t.text)}_writeMediaContent(t,e){if(!Array.isArray(t.mediaInfos)||!t.mediaInfos.length)return;const o=i(t.mediaInfos);Array.isArray(e.mediaInfos)?e.mediaInfos=[...e.mediaInfos,...o]:e.mediaInfos=o}_readPopupInfoElements(t,e,o){const s={description:!1,mediaInfos:!1};return o.map(o=>"media"===o.type?(o.mediaInfos||!e||s.mediaInfos||(o.mediaInfos=e,s.mediaInfos=!0),b.fromJSON(o)):"text"===o.type?(o.text||!t||s.description||(o.text=t,s.description=!0),T.fromJSON(o)):"attachments"===o.type?E.fromJSON(o):"fields"===o.type?R.fromJSON(o):"expression"===o.type?O.fromJSON(o):"relationship"===o.type?S.fromJSON(o):"utilityNetworkAssociations"===o.type?j.fromJSON(o):void 0).filter(Boolean)}_toRelationshipContent(t){const{field:e,order:o}=t;if(!e?.startsWith(B))return null;const s=e.replace(B,"").split("/");if(2!==s.length)return null;const i=parseInt(s[0],10),r=s[1];return!Number.isNaN(i)&&r?S.fromJSON({relationshipId:i,orderByFields:[{field:r,order:o}]}):null}_toFieldOrderJSON(t,e){const{order:o,field:s}=t;return{field:`${B}${e}/${s}`,order:o}}_readPopupInfo({description:t,mediaInfos:e,showAttachments:o,relatedRecordsInfo:s={showRelatedRecords:!1}}){const i=[];t?i.push(new T({text:t})):i.push(new R),Array.isArray(e)&&e.length&&i.push(b.fromJSON({mediaInfos:e})),o&&i.push(E.fromJSON({displayType:"auto"}));const{showRelatedRecords:r,orderByFields:n}=s;return r&&n?.length&&n.forEach(t=>{const e=this._toRelationshipContent(t);e&&i.push(e)}),i.length?i:t}_getContentElementFields(t){const e=t?.type;if("attachments"===e)return[...this._extractFieldNames(t.title),...this._extractFieldNames(t.description)];if("custom"===e)return t.outFields||[];if("fields"===e)return[...this._extractFieldNames(t.title),...this._extractFieldNames(t.description),...this._getFieldInfoFields(t.fieldInfos??this.fieldInfos)];if("media"===e){const e=t.mediaInfos||[];return[...this._extractFieldNames(t.title),...this._extractFieldNames(t.description),...e.reduce((t,e)=>[...t,...this._getMediaInfoFields(e)],[])]}return"text"===e?this._extractFieldNames(t.text):"relationship"===e||"utility-network-associations"===e?[...this._extractFieldNames(t.title),...this._extractFieldNames(t.description)]:[]}_getMediaInfoFields(t){const{caption:e,title:o,value:s}=t,i=s||{},{fields:r,normalizeField:n,tooltipField:p,sourceURL:a,linkURL:l}=i,d=[...this._extractFieldNames(o),...this._extractFieldNames(e),...this._extractFieldNames(a),...this._extractFieldNames(l),...r??[]];return n&&d.push(n),p&&d.push(p),d}_getContentExpressionInfos(t,e){return Array.isArray(t)?t.reduce((t,e)=>[...t,..."expression"===e.type&&e.expressionInfo?[e.expressionInfo]:[]],e):[]}_getContentFields(t){return"string"==typeof t?this._extractFieldNames(t):Array.isArray(t)?t.reduce((t,e)=>[...t,...this._getContentElementFields(e)],[]):[]}async _collectExpressionInfoFields(t,e,o,s){s&&await Promise.all(s.map(s=>u(t,e,o,s.expression)))}_getFieldInfoFields(t){return t?t.filter(({fieldName:t,visible:e})=>!(void 0!==e&&!e||!t||t.startsWith(B)||t.startsWith(L))).map(t=>t.fieldName):[]}_getActionsFields(t){return t?t.toArray().reduce((t,e)=>[...t,...this._getActionFields(e)],[]):[]}_getActionFields(t){const{className:e,title:o,type:s}=t,i="button"===s||"toggle"===s?t.image:"";return[...this._extractFieldNames(o),...this._extractFieldNames(e),...this._extractFieldNames(i)]}_getTitleFields(t){return"string"==typeof t?this._extractFieldNames(t):[]}_extractFieldNames(t){return h(t).filter(t=>!(t.startsWith(B)||t.startsWith(L)))}};t([p({type:M})],U.prototype,"actions",void 0),t([p()],U.prototype,"content",void 0),t([a("content")],U.prototype,"castContent",null),t([l("content",["description","fieldInfos","popupElements","mediaInfos","showAttachments","relatedRecordsInfo"])],U.prototype,"readContent",null),t([c("web-scene","content",{popupElements:{type:o.ofType(y)},showAttachments:{type:Boolean},mediaInfos:{type:o.ofType(g)},description:{type:String},relatedRecordsInfo:{type:x}})],U.prototype,"writeWebSceneContent",null),t([c("content",{popupElements:{type:o.ofType(I)},showAttachments:{type:Boolean},mediaInfos:{type:o.ofType(g)},description:{type:String},relatedRecordsInfo:{type:x}})],U.prototype,"writeWebMapContent",null),t([p({type:[F],json:{write:!0}})],U.prototype,"expressionInfos",void 0),t([p({type:[w]})],U.prototype,"fieldInfos",void 0),t([c("fieldInfos")],U.prototype,"writeFieldInfos",null),t([p({type:_})],U.prototype,"layerOptions",void 0),t([c("layerOptions")],U.prototype,"writeLayerOptions",null),t([p({type:Boolean,json:{read:{source:"showLastEditInfo"},write:{target:"showLastEditInfo"},default:!0}})],U.prototype,"lastEditInfoEnabled",void 0),t([p()],U.prototype,"outFields",void 0),t([p()],U.prototype,"overwriteActions",void 0),t([p()],U.prototype,"returnGeometry",void 0),t([p({json:{type:String}})],U.prototype,"title",void 0),t([c("title")],U.prototype,"writeTitle",null),U=t([d("esri.PopupTemplate")],U);const q=U;export{q as default};
5
+ import{__decorate as t}from"tslib";import{ClonableMixin as e}from"./core/Clonable.js";import o from"./core/Collection.js";import{JSONSupport as s}from"./core/JSONSupport.js";import{clone as i}from"./core/lang.js";import r from"./core/Logger.js";import{isPromiseLike as n}from"./core/promiseUtils.js";import{property as p}from"./core/accessorSupport/decorators/property.js";import{cast as a}from"./core/accessorSupport/decorators/cast.js";import{reader as l}from"./core/accessorSupport/decorators/reader.js";import{subclass as d}from"./core/accessorSupport/decorators/subclass.js";import{writer as c}from"./core/accessorSupport/decorators/writer.js";import{ensureOneOfType as m}from"./core/accessorSupport/ensureType.js";import{collectFields as f,collectArcadeFieldNames as u,extractSubstitutionTemplatesFromString as h}from"./layers/support/fieldUtils.js";import{persistableWebSceneTypes as y,persistableTypes as I}from"./popup/content.js";import F from"./popup/ExpressionInfo.js";import w from"./popup/FieldInfo.js";import _ from"./popup/LayerOptions.js";import x from"./popup/RelatedRecordsInfo.js";import{types as g}from"./popup/content/support/mediaInfoTypes.js";import N from"./support/actions/ActionBase.js";import A from"./support/actions/ActionButton.js";import C from"./support/actions/ActionToggle.js";import j from"./popup/content/UtilityNetworkAssociationsContent.js";import S from"./popup/content/RelationshipContent.js";import O from"./popup/content/ExpressionContent.js";import R from"./popup/content/FieldsContent.js";import E from"./popup/content/AttachmentsContent.js";import T from"./popup/content/TextContent.js";import v from"./popup/content/CustomContent.js";import b from"./popup/content/MediaContent.js";import J from"./popup/content/Content.js";const B="relationships/",L="expression/",M=o.ofType({key:"type",defaultKeyValue:"button",base:N,typeMap:{button:A,toggle:C}}),P={base:J,key:"type",typeMap:{media:b,custom:v,text:T,attachments:E,fields:R,expression:O,relationship:S,utilityNetworkAssociations:j}},W=new Set(["attachments","fields","media","text","expression","relationship"]),k=new Set([...W,"utility-network-associations"]);let U=class extends(e(s)){constructor(t){super(t),this.actions=null,this.content="",this.expressionInfos=null,this.fieldInfos=null,this.layerOptions=null,this.lastEditInfoEnabled=!0,this.outFields=null,this.overwriteActions=!1,this.returnGeometry=!1,this.title=""}castContent(t){return Array.isArray(t)?t.map(t=>m(P,t)):"string"==typeof t||"function"==typeof t||t instanceof HTMLElement||n(t)?t:(r.getLogger(this).error("content error","unsupported content value",{value:t}),null)}readContent(t,e){const{popupElements:o}=e;return Array.isArray(o)&&o.length>0?this._readPopupInfoElements(e.description,e.mediaInfos,o):this._readPopupInfo(e)}writeWebSceneContent(t,e,o,s){this._writePopupTemplateContent(t,e,s)}writeWebMapContent(t,e,o,s){this._writePopupTemplateContent(t,e,s)}writeFieldInfos(t,e,o,s){const{content:i}=this,r=Array.isArray(i)?i:null,{writeFieldFormat:n,...p}=s||{};if(t){const o=r?r.filter(t=>"fields"===t.type):[],s=o.length&&o.every(t=>t.fieldInfos?.length);e.fieldInfos=t.filter(Boolean).map(t=>{const e=t.toJSON(p);return s&&(e.visible=!1),e})}if(r)for(const a of r)"fields"===a.type&&this._writeFieldsContent(a,e,p)}writeLayerOptions(t,e,o,s){e[o]=!t||null===t.showNoDataRecords&&null===t.returnTopmostRaster?null:t.toJSON(s)}writeTitle(t,e){e.title=t||""}async collectRequiredFields(t,e,o){const s=this.expressionInfos||[];await this._collectExpressionInfoFields(t,e,o,[...s,...this._getContentExpressionInfos(this.content,s)]),f(t,e,[...this.outFields||[],...this._getActionsFields(this.actions),...this._getTitleFields(this.title),...this._getContentFields(this.content)])}async getRequiredFields(t,e){const o=new Set;return await this.collectRequiredFields(o,t,e),[...o].sort()}_writePopupTemplateContent(t,e,o){"string"!=typeof t?Array.isArray(t)&&(e.popupElements=t.filter(t=>"web-scene"===o?.origin?W.has(t.type):k.has(t.type)).map(t=>t?.toJSON(o)),e.popupElements.forEach(t=>{"attachments"===t.type?this._writeAttachmentContent(e):"media"===t.type?this._writeMediaContent(t,e):"text"===t.type?this._writeTextContent(t,e):"relationship"===t.type&&this._writeRelationshipContent(t,e)})):e.description=t}_writeFieldsContent(t,e,o){const s=t.fieldInfos;if(!Array.isArray(s)||!s.length)return;const i=e.fieldInfos;if(Array.isArray(i))for(const r of s){const t=i.find(t=>t.fieldName?.toLowerCase()===r.fieldName?.toLowerCase());t?t.visible=!0:i.push(r.toJSON(o))}else e.fieldInfos=s.map(t=>t.toJSON(o))}_writeAttachmentContent(t){t.showAttachments||(t.showAttachments=!0)}_writeRelationshipContent(t,e){const o=t.orderByFields?.map(e=>this._toFieldOrderJSON(e,t.relationshipId))||[],s=[...e.relatedRecordsInfo?.orderByFields||[],...o];e.relatedRecordsInfo={showRelatedRecords:!0,...s?.length&&{orderByFields:s}}}_writeTextContent(t,e){!e.description&&t.text&&(e.description=t.text)}_writeMediaContent(t,e){if(!Array.isArray(t.mediaInfos)||!t.mediaInfos.length)return;const o=i(t.mediaInfos);Array.isArray(e.mediaInfos)?e.mediaInfos=[...e.mediaInfos,...o]:e.mediaInfos=o}_readPopupInfoElements(t,e,o){const s={description:!1,mediaInfos:!1};return o.map(o=>"media"===o.type?(o.mediaInfos||!e||s.mediaInfos||(o.mediaInfos=e,s.mediaInfos=!0),b.fromJSON(o)):"text"===o.type?(o.text||!t||s.description||(o.text=t,s.description=!0),T.fromJSON(o)):"attachments"===o.type?E.fromJSON(o):"fields"===o.type?R.fromJSON(o):"expression"===o.type?O.fromJSON(o):"relationship"===o.type?S.fromJSON(o):"utilityNetworkAssociations"===o.type?j.fromJSON(o):void 0).filter(Boolean)}_toRelationshipContent(t){const{field:e,order:o}=t;if(!e?.startsWith(B))return null;const s=e.replace(B,"").split("/");if(2!==s.length)return null;const i=parseInt(s[0],10),r=s[1];return!Number.isNaN(i)&&r?S.fromJSON({relationshipId:i,orderByFields:[{field:r,order:o}]}):null}_toFieldOrderJSON(t,e){const{order:o,field:s}=t;return{field:`${B}${e}/${s}`,order:o}}_readPopupInfo({description:t,mediaInfos:e,showAttachments:o,relatedRecordsInfo:s={showRelatedRecords:!1}}){const i=[];t?i.push(new T({text:t})):i.push(new R),Array.isArray(e)&&e.length&&i.push(b.fromJSON({mediaInfos:e})),o&&i.push(E.fromJSON({displayType:"auto"}));const{showRelatedRecords:r,orderByFields:n}=s;return r&&n?.length&&n.forEach(t=>{const e=this._toRelationshipContent(t);e&&i.push(e)}),i.length?i:t}_getContentElementFields(t){const e=t?.type;if("attachments"===e)return[...this._extractFieldNames(t.title),...this._extractFieldNames(t.description)];if("custom"===e)return t.outFields||[];if("fields"===e)return[...this._extractFieldNames(t.title),...this._extractFieldNames(t.description),...this._getFieldInfoFields(t.fieldInfos??this.fieldInfos)];if("media"===e){const e=t.mediaInfos||[];return[...this._extractFieldNames(t.title),...this._extractFieldNames(t.description),...e.reduce((t,e)=>[...t,...this._getMediaInfoFields(e)],[])]}return"text"===e?this._extractFieldNames(t.text):"relationship"===e||"utility-network-associations"===e?[...this._extractFieldNames(t.title),...this._extractFieldNames(t.description)]:[]}_getMediaInfoFields(t){const{caption:e,title:o,value:s}=t,i=s||{},{fields:r,normalizeField:n,tooltipField:p,sourceURL:a,linkURL:l}=i,d=[...this._extractFieldNames(o),...this._extractFieldNames(e),...this._extractFieldNames(a),...this._extractFieldNames(l),...r??[]];return n&&d.push(n),p&&d.push(p),d}_getContentExpressionInfos(t,e){return Array.isArray(t)?t.reduce((t,e)=>[...t,..."expression"===e.type&&e.expressionInfo?[e.expressionInfo]:[]],e):[]}_getContentFields(t){return"string"==typeof t?this._extractFieldNames(t):Array.isArray(t)?t.reduce((t,e)=>[...t,...this._getContentElementFields(e)],[]):[]}async _collectExpressionInfoFields(t,e,o,s){s&&await Promise.all(s.map(s=>u(t,e,o,s.expression)))}_getFieldInfoFields(t){return t?t.filter(({fieldName:t,visible:e})=>!(void 0!==e&&!e||!t||t.startsWith(B)||t.startsWith(L))).map(t=>t.fieldName):[]}_getActionsFields(t){return t?t.toArray().reduce((t,e)=>[...t,...this._getActionFields(e)],[]):[]}_getActionFields(t){const{className:e,title:o,type:s}=t,i="button"===s||"toggle"===s?t.image:"";return[...this._extractFieldNames(o),...this._extractFieldNames(e),...this._extractFieldNames(i)]}_getTitleFields(t){return"string"==typeof t?this._extractFieldNames(t):[]}_extractFieldNames(t){return h(t).filter(t=>!(t.startsWith(B)||t.startsWith(L)))}};t([p({type:M})],U.prototype,"actions",void 0),t([p()],U.prototype,"content",void 0),t([a("content")],U.prototype,"castContent",null),t([l("content",["description","fieldInfos","popupElements","mediaInfos","showAttachments","relatedRecordsInfo"])],U.prototype,"readContent",null),t([c("web-scene","content",{popupElements:{type:o.ofType(y)},showAttachments:{type:Boolean},mediaInfos:{type:o.ofType(g)},description:{type:String},relatedRecordsInfo:{type:x}})],U.prototype,"writeWebSceneContent",null),t([c("content",{popupElements:{type:o.ofType(I)},showAttachments:{type:Boolean},mediaInfos:{type:o.ofType(g)},description:{type:String},relatedRecordsInfo:{type:x}})],U.prototype,"writeWebMapContent",null),t([p({type:[F],json:{write:!0}})],U.prototype,"expressionInfos",void 0),t([p({type:[w]})],U.prototype,"fieldInfos",void 0),t([c("fieldInfos")],U.prototype,"writeFieldInfos",null),t([p({type:_})],U.prototype,"layerOptions",void 0),t([c("layerOptions")],U.prototype,"writeLayerOptions",null),t([p({type:Boolean,json:{read:{source:"showLastEditInfo"},write:{target:"showLastEditInfo"},default:!0}})],U.prototype,"lastEditInfoEnabled",void 0),t([p()],U.prototype,"outFields",void 0),t([p()],U.prototype,"overwriteActions",void 0),t([p()],U.prototype,"returnGeometry",void 0),t([p({json:{type:String}})],U.prototype,"title",void 0),t([c("title")],U.prototype,"writeTitle",null),U=t([d("esri.PopupTemplate")],U);export{U as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as o}from"tslib";import e from"./Analysis.js";import t from"./ElevationProfile/ElevationProfileDisplayUnits.js";import i from"./ElevationProfile/ElevationProfileLineGround.js";import{ElevationProfileLineCollection as r}from"./ElevationProfile/elevationProfileLineTypes.js";import s from"./ElevationProfile/ElevationProfileViewOptions.js";import{equals as l}from"../core/arrayUtils.js";import n from"../core/Collection.js";import{referenceSetter as p}from"../core/collectionUtils.js";import{equalsMaybe as a}from"../core/maybe.js";import{property as f}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/Logger.js";import{subclass as m}from"../core/accessorSupport/decorators/subclass.js";import y from"../geometry/Polyline.js";import{geometryEquals as v}from"../layers/graphics/dehydratedFeatureComparison.js";import u from"../symbols/support/ElevationInfo.js";import{isValidInputPath as c}from"../views/analysis/ElevationProfile/elevationProfileGeometryUtils.js";let h=class extends e{constructor(o){super(o),this.type="elevation-profile",this.geometry=null,this.displayUnits=new t,this.viewOptions=new s,o?.profiles||(this.profiles=new n([new i]))}get elevationInfo(){return this._get("elevationInfo")}set elevationInfo(o){this._set("elevationInfo",o)}get profiles(){return this._get("profiles")}set profiles(o){const e=this._get("profiles"),t=o??new n;this._set("profiles",p(t,e))}get valid(){return c(this.geometry)}equals(o){return this===o||super.equals(o)&&v(this.geometry,o.geometry)&&a(this.elevationInfo,o.elevationInfo)&&l(this.profiles.toArray(),o.profiles.toArray(),(o,e)=>o.equals(e))&&this.displayUnits.equals(o.displayUnits)&&this.viewOptions.equals(o.viewOptions)}clear(){this.geometry=null,this.elevationInfo=null}};o([f({type:["elevation-profile"]})],h.prototype,"type",void 0),o([f({type:y})],h.prototype,"geometry",void 0),o([f({type:u})],h.prototype,"elevationInfo",null),o([f({type:r,nonNullable:!0})],h.prototype,"profiles",null),o([f({type:t,nonNullable:!0})],h.prototype,"displayUnits",void 0),o([f()],h.prototype,"valid",null),o([f({type:s,nonNullable:!0})],h.prototype,"viewOptions",void 0),h=o([m("esri.analysis.ElevationProfileAnalysis")],h);const d=h;export{d as default};
5
+ import{__decorate as e}from"tslib";import o from"./Analysis.js";import t from"./ElevationProfile/ElevationProfileDisplayUnits.js";import i from"./ElevationProfile/ElevationProfileLineGround.js";import{ElevationProfileLineCollection as r}from"./ElevationProfile/elevationProfileLineTypes.js";import s from"./ElevationProfile/ElevationProfileViewOptions.js";import{equals as l}from"../core/arrayUtils.js";import n from"../core/Collection.js";import{referenceSetter as a}from"../core/collectionUtils.js";import p from"../core/Logger.js";import{equalsMaybe as f}from"../core/maybe.js";import{property as m}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import{subclass as y}from"../core/accessorSupport/decorators/subclass.js";import v from"../geometry/Polyline.js";import{geometryEquals as c}from"../layers/graphics/dehydratedFeatureComparison.js";import h from"../symbols/support/ElevationInfo.js";import{isValidInputPath as u}from"../views/analysis/ElevationProfile/elevationProfileGeometryUtils.js";let d=class extends o{constructor(e){super(e),this.type="elevation-profile",this.geometry=null,this.displayUnits=new t,this.viewOptions=new s,e?.profiles||(this.profiles=new n([new i]))}initialize(){const e=e=>!e?.declaredClass?.startsWith("esri.widgets.ElevationProfile")||(p.getLogger(this).errorOnce("Classes from the 'esri/widgets/ElevationProfile' namespace are meant for use with the Elevation Profile widget and are not supported in the 'profiles' collection of the ElevationProfileAnalysis. Use classes from 'esri/analysis/ElevationProfile' instead."),!1);this.profiles.on("before-changes",o=>{e(o.item)||o.preventDefault()});for(const o of Array.from(this.profiles))e(o)||this.profiles.remove(o)}get elevationInfo(){return this._get("elevationInfo")}set elevationInfo(e){this._set("elevationInfo",e)}get profiles(){return this._get("profiles")}set profiles(e){const o=this._get("profiles"),t=e??new n;this._set("profiles",a(t,o))}get valid(){return u(this.geometry)}equals(e){return this===e||super.equals(e)&&c(this.geometry,e.geometry)&&f(this.elevationInfo,e.elevationInfo)&&l(this.profiles.toArray(),e.profiles.toArray(),(e,o)=>e.equals(o))&&this.displayUnits.equals(e.displayUnits)&&this.viewOptions.equals(e.viewOptions)}clear(){this.geometry=null,this.elevationInfo=null}};e([m({type:["elevation-profile"]})],d.prototype,"type",void 0),e([m({type:v})],d.prototype,"geometry",void 0),e([m({type:h})],d.prototype,"elevationInfo",null),e([m({type:r,nonNullable:!0})],d.prototype,"profiles",null),e([m({type:t,nonNullable:!0})],d.prototype,"displayUnits",void 0),e([m()],d.prototype,"valid",null),e([m({type:s,nonNullable:!0})],d.prototype,"viewOptions",void 0),d=e([y("esri.analysis.ElevationProfileAnalysis")],d);const g=d;export{g as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as o}from"tslib";import{Clonable as r}from"../../core/Clonable.js";import{JSONSupportMixin as t}from"../../core/JSONSupport.js";import{property as e}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{subclass as s}from"../../core/accessorSupport/decorators/subclass.js";let a=class extends(t(r)){constructor(o){super(o),this.targetElevation=null}equals(o){return this===o||this.targetElevation===o.targetElevation}};o([e({type:Number})],a.prototype,"targetElevation",void 0),a=o([s("esri.analysis.VolumeMeasurement.VolumeMeasurementCutFillOptions")],a);const p=a;export{p as default};
5
+ import{__decorate as t}from"tslib";import{Clonable as o}from"../../core/Clonable.js";import{JSONSupportMixin as r}from"../../core/JSONSupport.js";import{property as e}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{subclass as s}from"../../core/accessorSupport/decorators/subclass.js";let a=class extends(r(o)){constructor(t){super(t),this._unconstraintTargetElevation=null}set targetElevation(t){this._unconstraintTargetElevation=t}get targetElevation(){const t=this._unconstraintTargetElevation;return null!=t?this.constrainTargetElevation?.(t)??t:t}equals(t){return this===t||this.targetElevation===t.targetElevation}};t([e({type:Number,value:null})],a.prototype,"targetElevation",null),t([e()],a.prototype,"_unconstraintTargetElevation",void 0),t([e()],a.prototype,"constrainTargetElevation",void 0),a=t([s("esri.analysis.VolumeMeasurement.VolumeMeasurementCutFillOptions")],a);const n=a;export{n as default};
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
+ */
5
+ import e from"../../Color.js";const i=new e("black");class t{constructor(){this.geometryOutlineWidth=1.5,this.geometryOutlineColor=new e("rgb(128,128,128)"),this.cutColor=new e("rgba(153, 198, 111, 0.75)"),this.fillColor=new e("rgba(200, 200, 230, 0.75)"),this.cutColorMuted=new e("rgba(176, 176, 176, 0.75)"),this.fillColorMuted=new e("rgba(194, 194, 194, 0.75)"),this.cutProjectionLineColor=e.blendColors(this.cutColor,i,.4),this.fillProjectionLineColor=e.blendColors(this.fillColor,i,.4),this.projectionLineWidth=2,this.projectionLineStippleSize=4,this.labelDistance=40,this.labelPrecisions={"cubic-millimeters":0,"cubic-centimeters":0,"cubic-decimeters":1,"cubic-meters":2,"cubic-kilometers":6,"cubic-inches":0,"cubic-feet":2,"cubic-yards":2,"cubic-miles":6,liters:2},this.maxVolumeExtentSizeVw=.7,this.minVolumeExtentSizePixels=250,this.minTargetElevation=-11e3,this.maxTargetElevation=9e3,this.maxPerimeterLocalWebMercator=1e4,this.maxPerimeterGlobal=5e4}}const o=new t;export{o as volumeMeasurementConfiguration};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as e}from"tslib";import t from"./Analysis.js";import s from"./VolumeMeasurement/VolumeMeasurementCutFillOptions.js";import o from"./VolumeMeasurement/VolumeMeasurementDisplayUnits.js";import r from"./VolumeMeasurement/VolumeMeasurementInputUnits.js";import{volumeMeasureType as i}from"./VolumeMeasurement/volumeMeasurementUtils.js";import{equals as l}from"../core/arrayUtils.js";import{equalsMaybe as n}from"../core/maybe.js";import{property as p}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/Logger.js";import{subclass as u}from"../core/accessorSupport/decorators/subclass.js";import m from"../geometry/Polygon.js";import{i as a}from"../chunks/simplifyOperator.js";let y=class extends t{constructor(e){super(e),this.type="volume-measurement",this.measureType="cut-fill",this.cutFillOptions=new s,this.displayUnits=new o,this.inputUnits=new r}set geometry(e){null!=e?this._set("geometry",e.clone()):this._set("geometry",null)}get valid(){const{geometry:e}=this;if(1!==e?.rings.length)return!1;const t=e.rings[0],s=3+(t.length>0&&l(t[0],t[t.length-1])?1:0);if(t.length<s)return!1;if(!e.isClockwise(t)){const t=e.clone();return t.rings[0].reverse(),a(t)}return a(e)}clear(){this.geometry=null}equals(e){return this===e||super.equals(e)&&this.measureType===e.measureType&&n(this.geometry,e.geometry)&&this.displayUnits.equals(e.displayUnits)&&this.inputUnits.equals(e.inputUnits)&&this.cutFillOptions.equals(e.cutFillOptions)}};e([p({type:["volume-measurement"]})],y.prototype,"type",void 0),e([p({type:i,nonNullable:!0})],y.prototype,"measureType",void 0),e([p({type:m,value:null})],y.prototype,"geometry",null),e([p({type:s,nonNullable:!0})],y.prototype,"cutFillOptions",void 0),e([p({type:o,nonNullable:!0})],y.prototype,"displayUnits",void 0),e([p({type:r,nonNullable:!0})],y.prototype,"inputUnits",void 0),e([p({readOnly:!0})],y.prototype,"valid",null),y=e([u("esri.analysis.VolumeMeasurementAnalysis")],y);const c=y;export{c as default};
5
+ import{__decorate as e}from"tslib";import t from"./Analysis.js";import{volumeMeasurementConfiguration as s}from"./VolumeMeasurement/volumeMeasurementConfiguration.js";import r from"./VolumeMeasurement/VolumeMeasurementCutFillOptions.js";import o from"./VolumeMeasurement/VolumeMeasurementDisplayUnits.js";import i from"./VolumeMeasurement/VolumeMeasurementInputUnits.js";import{volumeMeasureType as n}from"./VolumeMeasurement/volumeMeasurementUtils.js";import{equals as l}from"../core/arrayUtils.js";import{clamp as m}from"../core/mathUtils.js";import{equalsMaybe as a}from"../core/maybe.js";import{watch as u,syncAndInitial as p}from"../core/reactiveUtils.js";import{convertUnit as c}from"../core/unitUtils.js";import{property as y}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/Logger.js";import{subclass as h}from"../core/accessorSupport/decorators/subclass.js";import g from"../geometry/Polygon.js";import{i as f}from"../chunks/simplifyOperator.js";let v=class extends t{constructor(e){super(e),this.type="volume-measurement",this.measureType="cut-fill",this.cutFillOptions=new r,this.displayUnits=new o,this.inputUnits=new i,this._constrainTargetElevation=e=>{if(this.cutFillOptions.constrainTargetElevation!==this._constrainTargetElevation)return e;const t=c(e,this.inputUnits.elevation??"meters","meters"),{minTargetElevation:r,maxTargetElevation:o}=s;if(t<r||t>o){const e=m(t,r,o);return c(e,"meters",this.inputUnits.elevation??"meters")}return e}}initialize(){this.addHandles(u(()=>this.cutFillOptions,e=>e.constrainTargetElevation=this._constrainTargetElevation,p))}set geometry(e){null!=e?this._set("geometry",e.clone()):this._set("geometry",null)}get valid(){const{geometry:e}=this;if(1!==e?.rings.length)return!1;const t=e.rings[0],s=3+(t.length>0&&l(t[0],t[t.length-1])?1:0);if(t.length<s)return!1;if(!e.isClockwise(t)){const t=e.clone();return t.rings[0].reverse(),f(t)}return f(e)}clear(){this.geometry=null}equals(e){return this===e||super.equals(e)&&this.measureType===e.measureType&&a(this.geometry,e.geometry)&&this.displayUnits.equals(e.displayUnits)&&this.inputUnits.equals(e.inputUnits)&&this.cutFillOptions.equals(e.cutFillOptions)}};e([y({type:["volume-measurement"]})],v.prototype,"type",void 0),e([y({type:n,nonNullable:!0})],v.prototype,"measureType",void 0),e([y({type:g,value:null})],v.prototype,"geometry",null),e([y({type:r,nonNullable:!0})],v.prototype,"cutFillOptions",void 0),e([y({type:o,nonNullable:!0})],v.prototype,"displayUnits",void 0),e([y({type:i,nonNullable:!0})],v.prototype,"inputUnits",void 0),e([y({readOnly:!0})],v.prototype,"valid",null),v=e([h("esri.analysis.VolumeMeasurementAnalysis")],v);const d=v;export{d as default};
@@ -0,0 +1,4 @@
1
+ import "../../interfaces";
2
+
3
+ export const getNewTypedSelectionToolbarViewModel: __esri.generalSdkInternalAccess["getNewTypedSelectionToolbarViewModel"];
4
+ export const typedRegisterNoCorsDomain: __esri.generalSdkInternalAccess["typedRegisterNoCorsDomain"];
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
+ */
5
+ import{registerNoCorsDomains as o}from"../../support/requestUtils.js";import e from"../../widgets/support/SelectionToolbar/SelectionToolbarViewModel.js";const r=(o,r)=>new e({view:o,sources:r}),t=e=>o(e);export{r as getNewTypedSelectionToolbarViewModel,t as typedRegisterNoCorsDomain};
@@ -7,3 +7,4 @@ export const getDefaultLinkChartSublayerLabelingInfos: __esri.generalSharedKgUti
7
7
  export const newLinkChartLayerWithOptimizedGeometry: __esri.generalSharedKgUtils["newLinkChartLayerWithOptimizedGeometry"];
8
8
  export const studioGetRelationshipEndNodeIds: __esri.generalSharedKgUtils["studioGetRelationshipEndNodeIds"];
9
9
  export const studioGetRelationshipEndNodeMap: __esri.generalSharedKgUtils["studioGetRelationshipEndNodeMap"];
10
+ export const webLinkChartFromJSON: __esri.generalSharedKgUtils["webLinkChartFromJSON"];
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import r from"../../layers/LinkChartLayer.js";import{getBindParametersFromCypherQuery as n}from"../../layers/knowledgeGraph/cypherUtils.js";import{getLinkChartDefaultLabelingInfo as e,getMapDefaultLabelingInfo as t}from"../../layers/knowledgeGraph/layerUtils.js";import{utilsExtentToInBoundsRings as o,getRelationshipEndNodeIds as s,getRelationshipEndNodeMap as a}from"../../layers/knowledgeGraph/supportUtils.js";function i(r){return o(r)}async function u(r){return n(r)}function p(n){return new r(n)}function y(r,n,t){return e(r,n,t)}function c(r,n,e){return t(r,n,e)}async function f(r,n,e){return s(r,n,e)}async function l(r,n,e){return a(r,n,e)}export{i as extentToInBoundsRings,u as getBindParametersFromCypherQuery,c as getDefaultKnowledgeSublayerLabelingInfos,y as getDefaultLinkChartSublayerLabelingInfos,p as newLinkChartLayerWithOptimizedGeometry,f as studioGetRelationshipEndNodeIds,l as studioGetRelationshipEndNodeMap};
5
+ import r from"../../WebLinkChart.js";import n from"../../layers/LinkChartLayer.js";import{getBindParametersFromCypherQuery as t}from"../../layers/knowledgeGraph/cypherUtils.js";import{getLinkChartDefaultLabelingInfo as e,getMapDefaultLabelingInfo as o}from"../../layers/knowledgeGraph/layerUtils.js";import{utilsExtentToInBoundsRings as s,getRelationshipEndNodeIds as i,getRelationshipEndNodeMap as a}from"../../layers/knowledgeGraph/supportUtils.js";function u(r){return s(r)}async function f(r){return t(r)}function m(r){return new n(r)}function p(r,n,t){return e(r,n,t)}function c(r,n,t){return o(r,n,t)}async function y(r,n,t){return i(r,n,t)}async function l(r,n,t){return a(r,n,t)}const h=n=>r.fromJSON(n);export{u as extentToInBoundsRings,f as getBindParametersFromCypherQuery,c as getDefaultKnowledgeSublayerLabelingInfos,p as getDefaultLinkChartSublayerLabelingInfos,m as newLinkChartLayerWithOptimizedGeometry,y as studioGetRelationshipEndNodeIds,l as studioGetRelationshipEndNodeMap,h as webLinkChartFromJSON};
@@ -2,5 +2,7 @@ import "../../interfaces";
2
2
 
3
3
  export const addInclusionDefinitionToLayer: __esri.layerInternalAccessUtils["addInclusionDefinitionToLayer"];
4
4
  export const getInclusionDefinitionFromLayer: __esri.layerInternalAccessUtils["getInclusionDefinitionFromLayer"];
5
+ export const kgSublayerToJSON: __esri.layerInternalAccessUtils["kgSublayerToJSON"];
6
+ export const originIdOfPropertyOnSublayer: __esri.layerInternalAccessUtils["originIdOfPropertyOnSublayer"];
5
7
  export const readKnowledgeLayerJSON: __esri.layerInternalAccessUtils["readKnowledgeLayerJSON"];
6
8
  export const removeInclusionDefinitionFromLayer: __esri.layerInternalAccessUtils["removeInclusionDefinitionFromLayer"];
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- function n(n){return n.dataManager.inclusionModeDefinition}function i(n){n.dataManager.inclusionModeDefinition=null}function o(n,i){n.dataManager.inclusionModeDefinition=i}function a(n,i,o){n.read(i,{origin:o})}export{o as addInclusionDefinitionToLayer,n as getInclusionDefinitionFromLayer,a as readKnowledgeLayerJSON,i as removeInclusionDefinitionFromLayer};
5
+ function n(n){return n.dataManager.inclusionModeDefinition}function i(n){n.dataManager.inclusionModeDefinition=null}function o(n,i){n.dataManager.inclusionModeDefinition=i}function t(n,i,o){n.read(i,{origin:o})}const a=n=>n.toJSON(),e=(n,i)=>n.originIdOf(i);export{o as addInclusionDefinitionToLayer,n as getInclusionDefinitionFromLayer,a as kgSublayerToJSON,e as originIdOfPropertyOnSublayer,t as readKnowledgeLayerJSON,i as removeInclusionDefinitionFromLayer};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import e from"../../request.js";import t from"../../core/Error.js";import{getOrCreateMapValue as r}from"../../core/MapUtils.js";import{convertFromGeometry as i}from"../../layers/graphics/featureConversionUtils.js";import n from"../../layers/graphics/OptimizedGeometry.js";import{ProtoOutboundEntityFeatureCollectionAttributionIndexes as s,ProtoOutboundRelationshipFeatureCollectionAttributionIndexes as a}from"../../rest/knowledgeGraph/ProtoFeatureCollection.js";import{getWasmInterface as o}from"../../rest/knowledgeGraph/wasmInterface/knowledgeWasmAccess.js";import{EsriFieldTypes as l}from"../../rest/knowledgeGraph/wasmInterface/WasmDataModelWrapperInterfaces.js";import{WasmQuantizeOriginPositionTypeCode as c,SqlTypeCode as d}from"../../rest/knowledgeGraph/wasmInterface/WasmSerializedLayerData.js";import{wasmToProtoFeatureCollection as u}from"../../rest/knowledgeGraph/wasmInterface/wasmToFeatureFactories.js";async function y(e){const t=[],r={generateAllSublayers:!1,namedTypeDefinitions:new Map};return e.entitiesUrl&&t.push(b(e.entitiesUrl).then(e=>{k(e,r)})),e.relationshipsUrl&&t.push(b(e.relationshipsUrl).then(e=>{k(e,r)})),await Promise.all(t),r}async function f(e,t){t??=!1;const r={generateAllSublayers:t,namedTypeDefinitions:new Map};return await E(e).then(e=>{M(e,r)}),r}async function p(e,t,r){const i=await o(),n=new i.FeatureCollection,s=new i.FeatureCollection;try{g(n,i,e,"entities",t,r),g(s,i,e,"relationships",t,r);const a=new i.FeatureCollectionEncoder,o=new i.FeatureCollectionEncoder,l=C(n,a),c=structuredClone(l),d=C(s,o),u={entitiesFC:c,relationshipsFC:structuredClone(d)};return a.delete(),o.delete(),u}finally{n.delete(),s.delete()}}async function m(e,t,r){const i=await o(),n=new i.FeatureCollection;try{g(n,i,e,"entities",t,r);const s=new i.FeatureCollectionEncoder,a=C(n,s),o=structuredClone(a);return s.delete(),o}finally{n.delete()}}async function _(e,t,r){const i=await o(),n=new i.FeatureCollection;try{g(n,i,e,"relationships",t,r);const s=new i.FeatureCollectionEncoder,a=C(n,s),o=structuredClone(a);return s.delete(),o}finally{n.delete()}}async function w(e){const r=await o(),i=new r.MapOfObjectIdentifierSets;h(i,r,e);const n=new r.MapOfObjectIdentifierSetsEncoder;try{n.set_map_of_identifier_sets(i),n.encode();const e=n.get_encoding_result();if(0!==e.error.error_code)throw new t("knowledge-graph:layer-support-utils",e.error.error_message);const r=structuredClone(e.get_byte_buffer());return n.delete(),r}finally{i.delete()}}function g(e,t,r,n,o,u){e.version="";const y=new t.QueryResult,f=new t.FeatureResult,p="entities"===n?s:a;f.unique_id_field={name:p[p.ELEMENTUID],isSystemMaintained:!1},f.globalid_field_name=p[p.ELEMENTUID],f.geohash_field_name="",f.geometry_properties={shapeAreaFieldName:"",shapeLengthFieldName:"",units:""},f.spatial_reference={wkid:4326,latestWkid:4326,vcsWkid:0,latestVcsWkid:0,wkt:""},f.exceeded_transfer_limit=!1,f.has_z=!1,f.has_m=!1,f.transform={quantizeOriginPosition:{value:c.upperLeft},scale:{xScale:1e-9,yScale:1e-9,mScale:1e-4,zScale:1e-4},translate:{xTranslate:-400,yTranslate:-400,mTranslate:-1e5,zTranslate:-1e5}};for(const i of Object.keys(p).filter(e=>isNaN(Number(e)))){const e=new t.Field;if(e.name=i,e.alias=i,e.sql_type={value:d.sqlTypeBigInt},"entities"===n)switch(i){case p[p.ELEMENTUID]:case p[p.TYPENAME]:e.field_type={value:l.esriFieldTypeString}}else switch(i){case p[p.ELEMENTUID]:case p[p.TYPENAME]:case a[a.FROMUID]:case a[a.TOUID]:e.field_type={value:l.esriFieldTypeString}}e.domain="",f.add_field(e),e.delete()}const m=new Map;for(const i of o.dataModel.entityTypes)m.set(i.name,"entities");for(const i of o.dataModel.relationshipTypes)m.set(i.name,"relationships");for(const[s,l]of r.namedTypeDefinitions)if(n===m.get(s))for(const e of l.members.values()){const r=new t.Feature;for(const i of Object.keys(p).filter(e=>isNaN(Number(e))))if("entities"===n)switch(i){case p[p.ELEMENTUID]:r.add_attribute(e.id,t.esriFieldType.esriFieldTypeString);break;case p[p.TYPENAME]:r.add_attribute(s,t.esriFieldType.esriFieldTypeString)}else switch(i){case p[p.ELEMENTUID]:r.add_attribute(e.id,t.esriFieldType.esriFieldTypeString);break;case a[a.FROMUID]:r.add_attribute(u.has(e.id)?u.get(e.id)[0]:"",t.esriFieldType.esriFieldTypeString);break;case a[a.TOUID]:r.add_attribute(u.has(e.id)?u.get(e.id)[1]:"",t.esriFieldType.esriFieldTypeString);break;case p[p.TYPENAME]:r.add_attribute(s,t.esriFieldType.esriFieldTypeString)}let o;if(e.linkChartLocation&&"x"in e.linkChartLocation?o=i(e.linkChartLocation):e.linkChartLocation&&(o=e.linkChartLocation),e.linkChartLocation&&o){const e=new t.FeatureCollectionGeometry;let i=!1;switch(n){case"entities":e.geometry_type=t.esriGeometryType.esriGeometryPoint,i=!0;break;case"relationships":e.geometry_type=t.esriGeometryType.esriGeometryPolyline}e.coords=new Float64Array(o.coords),e.lengths=new Uint32Array(i?[1]:o.lengths),r.set_compressed_geometry(e),e.delete()}f.add_feature(r),r.delete()}switch(n){case"entities":f.geometry_type=t.esriGeometryType.esriGeometryPoint;break;case"relationships":f.geometry_type=t.esriGeometryType.esriGeometryPolyline}return y.set_feature_result(f),e.set_query_result(y),f.delete(),y.delete(),e}function h(e,t,r){for(const[i,n]of r.namedTypeDefinitions){if(!n.members||n.useAllData)continue;const r=n.members.keys();let s=!1,a=!0;const o=new t.ObjectIdArray,l=new t.StringArray,c=new t.GlobalIdArray,d=new t.IdentifierArray,u=new t.ObjectIdentifierSet;for(const e of r)a&&(s=!isNaN(Number(e)),a=!1),s?o.add_objectid(Number(e)):(l.add_string(e),c.add_globalid(e)),d.add_identifier(e);u.set_oid_array(o),u.set_string_array(l),u.set_globalid_array(c),u.set_identifier_array(d),o.delete(),l.delete(),c.delete(),d.delete(),e.put_identifier_set(i,u),u.delete()}return e}async function b(t){const r=await e(t,{responseType:"array-buffer"});return T(await r.data)}async function T(e){const r=new((await o()).FeatureCollectionDecoder),i=r.decode(new Uint8Array(e));if(0!==i.error_code)throw new t("knowledge-graph:layer-support-utils",i.error_message);const n=r.get_feature_collection(),s=u(n);return r.delete(),s}async function E(t){const r=await e(t,{responseType:"array-buffer"}),i=await r.data;return F(new Uint8Array(i))}async function F(e){const r=new((await o()).MapOfObjectIdentifierSetsDecoder),i=r.decode(new Uint8Array(e)),n=new Map;if(0!==i.error_code)throw new t("knowledge-graph:layer-support-utils",i.error_message);const s=r.get_map_of_identifier_sets(),a=s.keys,l=a.size();for(let o=0;o<l;o++){const e=a.get(o),r=s.query_identifier_set(e),i=[];if(1===r.id_array_type.value){const e=r.get_globalid_array(),t=e.count();for(let r=0;r<t;r++)i.push(e.get_globalid_at(r))}else if(3===r.id_array_type.value){const e=r.get_identifier_array(),t=e.count();for(let r=0;r<t;r++)i.push(e.get_identifier_at(r).toString())}else if(2===r.id_array_type.value){const e=r.get_string_array(),t=e.count();for(let r=0;r<t;r++)i.push(e.get_string_at(r))}else{if(0!==r.id_array_type.value)throw new t("knowledge-graph:layer-support-utils","Tried to encode an unexpected ID Array type.");{const e=r.get_oid_array(),t=e.count();for(let r=0;r<t;r++)i.push(e.get_objectid_at(r).toString())}}n.set(e,i)}return r.delete(),n}function k(e,t){if(!e?.queryResult?.featureResult)return t;const i=e.queryResult.featureResult.fieldNameToAttributeIndexMap;for(const s of e.queryResult.featureResult.features){const e=s.attributes[i.TYPENAME],a=r(t.namedTypeDefinitions,e,()=>({useAllData:!1,members:new Map})),o=s.attributes[i.ELEMENTUID];if(s.compressedGeometry?.coords?.length>0){let e=s.compressedGeometry.lengths;"esriGeometryPoint"===s.compressedGeometry.geometryType&&(e=[]),a.members.set(o,{id:o,linkChartLocation:new n(e,s.compressedGeometry.coords)})}else a.members.set(o,{id:o})}return t}function M(e,t){for(const[i,n]of e){const e=r(t.namedTypeDefinitions,i,()=>({useAllData:!1,members:new Map}));for(const t of n)e.members.has(t)||e.members.set(t,{id:t})}return t}const C=(e,r)=>{r.set_feature_collection(e),r.encode();const i=r.get_encoding_result();if(0!==i.error.error_code)throw new t("knowledge-graph:layer-support-utils",i.error.error_message);return i.get_byte_buffer()},I={fetchAndConvertSerializedLinkChart:e=>y(e)};export{k as addFeatureCollectionToInclusionDefinition,M as addIdMapToInclusionDefinition,T as deserializeFeatureCollection,F as deserializeIdCollectionMap,f as fetchAndConvertSerializedKnowledgeIdMap,y as fetchAndConvertSerializedLinkChart,b as fetchAndDeserializeFeatureCollection,E as fetchAndDeserializeIdCollectionMap,I as serializationUtilsModuleWrapper,p as serializeInclusionDefinitionToAllPbf,m as serializeInclusionDefinitionToEntitiesPbf,w as serializeInclusionDefinitionToIdCollectionsMapPbf,_ as serializeInclusionDefinitionToRelationshipsPbf,g as setFeatureCollectionProperties};
5
+ import e from"../../request.js";import t from"../../core/Error.js";import{getOrCreateMapValue as r}from"../../core/MapUtils.js";import{convertFromGeometry as i}from"../../layers/graphics/featureConversionUtils.js";import n from"../../layers/graphics/OptimizedGeometry.js";import{ProtoOutboundEntityFeatureCollectionAttributionIndexes as s,ProtoOutboundRelationshipFeatureCollectionAttributionIndexes as a}from"../../rest/knowledgeGraph/ProtoFeatureCollection.js";import{getWasmInterface as o}from"../../rest/knowledgeGraph/wasmInterface/knowledgeWasmAccess.js";import{EsriFieldTypes as l}from"../../rest/knowledgeGraph/wasmInterface/WasmDataModelWrapperInterfaces.js";import{WasmQuantizeOriginPositionTypeCode as c,SqlTypeCode as d}from"../../rest/knowledgeGraph/wasmInterface/WasmSerializedLayerData.js";import{wasmToProtoFeatureCollection as u}from"../../rest/knowledgeGraph/wasmInterface/wasmToFeatureFactories.js";async function y(e,t){const r=[],i={generateAllSublayers:!1,namedTypeDefinitions:new Map};return e.entitiesUrl&&r.push(b(e.entitiesUrl,t).then(e=>{k(e,i)})),e.relationshipsUrl&&r.push(b(e.relationshipsUrl,t).then(e=>{k(e,i)})),await Promise.all(r),i}async function f(e,t,r){t??=!1;const i={generateAllSublayers:t,namedTypeDefinitions:new Map};return await E(e,r).then(e=>{M(e,i)}),i}async function p(e,t,r){const i=await o(),n=new i.FeatureCollection,s=new i.FeatureCollection;try{w(n,i,e,"entities",t,r),w(s,i,e,"relationships",t,r);const a=new i.FeatureCollectionEncoder,o=new i.FeatureCollectionEncoder,l=C(n,a),c=structuredClone(l),d=C(s,o),u={entitiesFC:c,relationshipsFC:structuredClone(d)};return a.delete(),o.delete(),u}finally{n.delete(),s.delete()}}async function m(e,t,r){const i=await o(),n=new i.FeatureCollection;try{w(n,i,e,"entities",t,r);const s=new i.FeatureCollectionEncoder,a=C(n,s),o=structuredClone(a);return s.delete(),o}finally{n.delete()}}async function _(e,t,r){const i=await o(),n=new i.FeatureCollection;try{w(n,i,e,"relationships",t,r);const s=new i.FeatureCollectionEncoder,a=C(n,s),o=structuredClone(a);return s.delete(),o}finally{n.delete()}}async function g(e){const r=await o(),i=new r.MapOfObjectIdentifierSets;h(i,r,e);const n=new r.MapOfObjectIdentifierSetsEncoder;try{n.set_map_of_identifier_sets(i),n.encode();const e=n.get_encoding_result();if(0!==e.error.error_code)throw new t("knowledge-graph:layer-support-utils",e.error.error_message);const r=structuredClone(e.get_byte_buffer());return n.delete(),r}finally{i.delete()}}function w(e,t,r,n,o,u){e.version="";const y=new t.QueryResult,f=new t.FeatureResult,p="entities"===n?s:a;f.unique_id_field={name:p[p.ELEMENTUID],isSystemMaintained:!1},f.globalid_field_name=p[p.ELEMENTUID],f.geohash_field_name="",f.geometry_properties={shapeAreaFieldName:"",shapeLengthFieldName:"",units:""},f.spatial_reference={wkid:4326,latestWkid:4326,vcsWkid:0,latestVcsWkid:0,wkt:""},f.exceeded_transfer_limit=!1,f.has_z=!1,f.has_m=!1,f.transform={quantizeOriginPosition:{value:c.upperLeft},scale:{xScale:1e-9,yScale:1e-9,mScale:1e-4,zScale:1e-4},translate:{xTranslate:-400,yTranslate:-400,mTranslate:-1e5,zTranslate:-1e5}};for(const i of Object.keys(p).filter(e=>isNaN(Number(e)))){const e=new t.Field;if(e.name=i,e.alias=i,e.sql_type={value:d.sqlTypeBigInt},"entities"===n)switch(i){case p[p.ELEMENTUID]:case p[p.TYPENAME]:e.field_type={value:l.esriFieldTypeString}}else switch(i){case p[p.ELEMENTUID]:case p[p.TYPENAME]:case a[a.FROMUID]:case a[a.TOUID]:e.field_type={value:l.esriFieldTypeString}}e.domain="",f.add_field(e),e.delete()}const m=new Map;for(const i of o.dataModel.entityTypes)m.set(i.name,"entities");for(const i of o.dataModel.relationshipTypes)m.set(i.name,"relationships");for(const[s,l]of r.namedTypeDefinitions)if(n===m.get(s))for(const e of l.members.values()){const r=new t.Feature;for(const i of Object.keys(p).filter(e=>isNaN(Number(e))))if("entities"===n)switch(i){case p[p.ELEMENTUID]:r.add_attribute(e.id,t.esriFieldType.esriFieldTypeString);break;case p[p.TYPENAME]:r.add_attribute(s,t.esriFieldType.esriFieldTypeString)}else switch(i){case p[p.ELEMENTUID]:r.add_attribute(e.id,t.esriFieldType.esriFieldTypeString);break;case a[a.FROMUID]:r.add_attribute(u.has(e.id)?u.get(e.id)[0]:"",t.esriFieldType.esriFieldTypeString);break;case a[a.TOUID]:r.add_attribute(u.has(e.id)?u.get(e.id)[1]:"",t.esriFieldType.esriFieldTypeString);break;case p[p.TYPENAME]:r.add_attribute(s,t.esriFieldType.esriFieldTypeString)}let o;if(e.linkChartLocation&&"x"in e.linkChartLocation?o=i(e.linkChartLocation):e.linkChartLocation&&(o=e.linkChartLocation),e.linkChartLocation&&o){const e=new t.FeatureCollectionGeometry;let i=!1;switch(n){case"entities":e.geometry_type=t.esriGeometryType.esriGeometryPoint,i=!0;break;case"relationships":e.geometry_type=t.esriGeometryType.esriGeometryPolyline}e.coords=new Float64Array(o.coords),e.lengths=new Uint32Array(i?[1]:o.lengths),r.set_compressed_geometry(e),e.delete()}f.add_feature(r),r.delete()}switch(n){case"entities":f.geometry_type=t.esriGeometryType.esriGeometryPoint;break;case"relationships":f.geometry_type=t.esriGeometryType.esriGeometryPolyline}return y.set_feature_result(f),e.set_query_result(y),f.delete(),y.delete(),e}function h(e,t,r){for(const[i,n]of r.namedTypeDefinitions){if(!n.members||n.useAllData)continue;const r=n.members.keys();let s=!1,a=!0;const o=new t.ObjectIdArray,l=new t.StringArray,c=new t.GlobalIdArray,d=new t.IdentifierArray,u=new t.ObjectIdentifierSet;for(const e of r)a&&(s=!isNaN(Number(e)),a=!1),s?o.add_objectid(Number(e)):(l.add_string(e),c.add_globalid(e)),d.add_identifier(e);u.set_oid_array(o),u.set_string_array(l),u.set_globalid_array(c),u.set_identifier_array(d),o.delete(),l.delete(),c.delete(),d.delete(),e.put_identifier_set(i,u),u.delete()}return e}async function b(t,r){const i=await e(t,{responseType:"array-buffer",signal:r?.signal});return T(await i.data)}async function T(e){const r=new((await o()).FeatureCollectionDecoder),i=r.decode(new Uint8Array(e));if(0!==i.error_code)throw new t("knowledge-graph:layer-support-utils",i.error_message);const n=r.get_feature_collection(),s=u(n);return r.delete(),s}async function E(t,r){const i=await e(t,{responseType:"array-buffer",signal:r?.signal}),n=await i.data;return F(new Uint8Array(n))}async function F(e){const r=new((await o()).MapOfObjectIdentifierSetsDecoder),i=r.decode(new Uint8Array(e)),n=new Map;if(0!==i.error_code)throw new t("knowledge-graph:layer-support-utils",i.error_message);const s=r.get_map_of_identifier_sets(),a=s.keys,l=a.size();for(let o=0;o<l;o++){const e=a.get(o),r=s.query_identifier_set(e),i=[];if(1===r.id_array_type.value){const e=r.get_globalid_array(),t=e.count();for(let r=0;r<t;r++)i.push(e.get_globalid_at(r))}else if(3===r.id_array_type.value){const e=r.get_identifier_array(),t=e.count();for(let r=0;r<t;r++)i.push(e.get_identifier_at(r).toString())}else if(2===r.id_array_type.value){const e=r.get_string_array(),t=e.count();for(let r=0;r<t;r++)i.push(e.get_string_at(r))}else{if(0!==r.id_array_type.value)throw new t("knowledge-graph:layer-support-utils","Tried to encode an unexpected ID Array type.");{const e=r.get_oid_array(),t=e.count();for(let r=0;r<t;r++)i.push(e.get_objectid_at(r).toString())}}n.set(e,i)}return r.delete(),n}function k(e,t){if(!e?.queryResult?.featureResult)return t;const{hasZ:i,hasM:s}=e.queryResult.featureResult,a=e.queryResult.featureResult.fieldNameToAttributeIndexMap;for(const o of e.queryResult.featureResult.features){const e=o.attributes[a.TYPENAME],l=r(t.namedTypeDefinitions,e,()=>({useAllData:!1,members:new Map})),c=o.attributes[a.ELEMENTUID];if(o.compressedGeometry?.coords?.length>0){let e=o.compressedGeometry.lengths;"esriGeometryPoint"===o.compressedGeometry.geometryType&&(e=[]),l.members.set(c,{id:c,linkChartLocation:new n(e,o.compressedGeometry.coords,i,s)})}else l.members.set(c,{id:c})}return t}function M(e,t){for(const[i,n]of e){const e=r(t.namedTypeDefinitions,i,()=>({useAllData:!1,members:new Map}));for(const t of n)e.members.has(t)||e.members.set(t,{id:t})}return t}const C=(e,r)=>{r.set_feature_collection(e),r.encode();const i=r.get_encoding_result();if(0!==i.error.error_code)throw new t("knowledge-graph:layer-support-utils",i.error.error_message);return i.get_byte_buffer()},I={fetchAndConvertSerializedLinkChart:e=>y(e)};export{k as addFeatureCollectionToInclusionDefinition,M as addIdMapToInclusionDefinition,T as deserializeFeatureCollection,F as deserializeIdCollectionMap,f as fetchAndConvertSerializedKnowledgeIdMap,y as fetchAndConvertSerializedLinkChart,b as fetchAndDeserializeFeatureCollection,E as fetchAndDeserializeIdCollectionMap,I as serializationUtilsModuleWrapper,p as serializeInclusionDefinitionToAllPbf,m as serializeInclusionDefinitionToEntitiesPbf,g as serializeInclusionDefinitionToIdCollectionsMapPbf,_ as serializeInclusionDefinitionToRelationshipsPbf,w as setFeatureCollectionProperties};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import e from"../../../Graphic.js";import{neverAbortedSignal as t}from"../../arcadeEnvironment.js";import{cloneGeometry as r}from"../../kernel.js";import{throwIfCancelled as s,FeatureSetError as a}from"../support/errorsupport.js";import{FeatureSet as i}from"../support/FeatureSet.js";import{isDate as l,isLuxonDate as o,isArcadeTime as n,isArcadeDate as u,isArcadeDateOnly as h,cloneField as c,layerGeometryEsriConstants as d,defaultMaxRecords as p}from"../support/shared.js";import{reformulateWithoutField as f,toWhereClause as N,translateFunctionToDatabaseSpecific as g,convertColumnReferenceToSql as S,makeToday as m,makeSqlFromDateTimeParameter as w,makeTimeString as v,arcadeDateToSqlString as T,arcadeDateOnlyToSqlString as C,convertIntervalToSql as y,combine as _,scanForField as W}from"../support/sqlUtils.js";import{SqlError as A}from"../../../core/sql/errorSupport.js";import F from"../../../core/sql/WhereClause.js";import E from"../../../geometry/SpatialReference.js";class x{constructor(e){this.field=e,this.sqlRewritable=!1}postInitialization(e,t){}}class I extends x{constructor(e){super(e),this.sqlRewritable=!0}extractValue(e){return e.attributes[this.field.name]}rewriteSql(e){return{rewritten:this.sqlRewritable,where:e}}}class B extends x{constructor(e,t,r){super(c(e)),this.originalField=e,this.sqlRewritable=!0,this.field.name=t,this.field.alias=r}rewriteSql(e,t){return{rewritten:this.sqlRewritable,where:f(e,this.field.name,this.originalField.name,t.getFieldsIndex())}}extractValue(e){return e.attributes[this.originalField.name]}}class b extends x{constructor(e,t,r){super(e),this.codefield=t,this.lkp=r,this.reverseLkp={};for(const s in r)this.reverseLkp[r[s]]=s;this.sqlRewritable=!0}static{this.BADNESS="_!!!_BAD_LKP_!!!!"}rewriteSql(e,t){const r=this.evaluateNodeToWhereClause(e.parseTree,0,this.field.name,this.codefield instanceof F?N(this.codefield,0):this.codefield,e.parameters);return r.includes(b.BADNESS)?{rewritten:!1,where:e}:{rewritten:this.sqlRewritable,where:F.create(r,{fieldsIndex:t._parent.getFieldsIndex(),timeZone:t.dateFieldsTimeZoneDefaultUTC})}}evaluateNodeToWhereClause(e,t,r=null,s=null,a){let i,c,d,p;switch(e.type){case"interval":return y(this.evaluateNodeToWhereClause(e.value,t,r,s,a),e.qualifier,e.op);case"case-expression":{let s=" CASE ";"simple"===e.format&&(s+=this.evaluateNodeToWhereClause(e.operand,t,r,b.BADNESS,a));for(let i=0;i<e.clauses.length;i++)s+=" WHEN "+this.evaluateNodeToWhereClause(e.clauses[i].operand,t,r,b.BADNESS,a)+" THEN "+this.evaluateNodeToWhereClause(e.clauses[i].value,t,r,b.BADNESS,a);return null!==e.else&&(s+=" ELSE "+this.evaluateNodeToWhereClause(e.else,t,r,b.BADNESS,a)),s+=" END ",s}case"parameter":{const r=a[e.value.toLowerCase()];if("string"==typeof r)return"'"+r.toString().replaceAll("'","''")+"'";if(l(r))return w(r,t);if(o(r))return w(r,t);if(n(r))return v(r,t);if(u(r))return T(r,t);if(h(r))return C(r,t);if(Array.isArray(r)){const e=[];for(let s=0;s<r.length;s++)"string"==typeof r[s]?e.push("'"+r[s].toString().replaceAll("'","''")+"'"):l(r[s])||o(r[s])?e.push(w(r[s],t)):n(r[s])?e.push(v(r[s],t)):u(r[s])?e.push(T(r[s],t)):h(r[s])?e.push(C(r[s],t)):e.push(r[s].toString());return e}return r.toString()}case"expression-list":c=[];for(const i of e.value)c.push(this.evaluateNodeToWhereClause(i,t,r,s,a));return c;case"unary-expression":return" ( NOT "+this.evaluateNodeToWhereClause(e.expr,t,r,b.BADNESS,a)+" ) ";case"binary-expression":switch(e.operator){case"AND":return" ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" AND "+this.evaluateNodeToWhereClause(e.right,t,r,s,a)+") ";case"OR":return" ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" OR "+this.evaluateNodeToWhereClause(e.right,t,r,s,a)+") ";case"IS":if("null"!==e.right.type)throw new A("UnsupportedIsRhs");return" ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" IS NULL )";case"ISNOT":if("null"!==e.right.type)throw new A("UnsupportedIsRhs");return" ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" IS NOT NULL )";case"IN":if(i=[],"expression-list"===e.right.type){if("column-reference"===e.left.type&&e.left.column.toUpperCase()===this.field.name.toUpperCase()){const i=[];let l=!0;for(const t of e.right.value){if("string"!==t.type){l=!1;break}if(void 0===this.lkp[t.value]){l=!1;break}i.push(this.lkp[t.value].toString())}if(l)return" ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" IN ("+i.join(",")+")) "}return i=this.evaluateNodeToWhereClause(e.right,t,r,s,a)," ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" IN ("+i.join(",")+")) "}return p=this.evaluateNodeToWhereClause(e.right,t,r,s,a),Array.isArray(p)?" ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" IN ("+p.join(",")+")) ":" ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" IN ("+p+")) ";case"NOT IN":if(i=[],"expression-list"===e.right.type){if("column-reference"===e.left.type&&e.left.column.toUpperCase()===this.field.name.toUpperCase()){const i=[];let l=!0;for(const t of e.right.value){if("string"!==t.type){l=!1;break}if(void 0===this.lkp[t.value]){l=!1;break}i.push(this.lkp[t.value].toString())}if(l)return" ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" NOT IN ("+i.join(",")+")) "}return i=this.evaluateNodeToWhereClause(e.right,t,r,s,a)," ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" NOT IN ("+i.join(",")+")) "}return p=this.evaluateNodeToWhereClause(e.right,t,r,s,a),Array.isArray(p)?" ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" NOT IN ("+p.join(",")+")) ":" ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" NOT IN ("+p+")) ";case"BETWEEN":return d=this.evaluateNodeToWhereClause(e.right,t,r,b.BADNESS,a)," ("+this.evaluateNodeToWhereClause(e.left,t,r,b.BADNESS,a)+" BETWEEN "+d[0]+" AND "+d[1]+" ) ";case"NOTBETWEEN":return d=this.evaluateNodeToWhereClause(e.right,t,r,b.BADNESS,a)," ("+this.evaluateNodeToWhereClause(e.left,t,r,b.BADNESS,a)+" NOT BETWEEN "+d[0]+" AND "+d[1]+" ) ";case"LIKE":return""!==e.escape?" ("+this.evaluateNodeToWhereClause(e.left,t,r,b.BADNESS,a)+" LIKE "+this.evaluateNodeToWhereClause(e.right,t,r,b.BADNESS,a)+" ESCAPE '"+e.escape+"') ":" ("+this.evaluateNodeToWhereClause(e.left,t,r,b.BADNESS,a)+" LIKE "+this.evaluateNodeToWhereClause(e.right,t,r,b.BADNESS,a)+") ";case"NOT LIKE":return""!==e.escape?" ("+this.evaluateNodeToWhereClause(e.left,t,r,b.BADNESS,a)+" NOT LIKE "+this.evaluateNodeToWhereClause(e.right,t,r,b.BADNESS,a)+" ESCAPE '"+e.escape+"') ":" ("+this.evaluateNodeToWhereClause(e.left,t,r,b.BADNESS,a)+" NOT LIKE "+this.evaluateNodeToWhereClause(e.right,t,r,b.BADNESS,a)+") ";case"<>":case"=":if("column-reference"===e.left.type&&"string"===e.right.type){if(e.left.column.toUpperCase()===this.field.name.toUpperCase()&&void 0!==this.lkp[e.right.value.toString()])return" ("+s+" "+e.operator+" "+this.lkp[e.right.value.toString()].toString()+") "}else if("column-reference"===e.right.type&&"string"===e.left.type&&e.right.column.toUpperCase()===this.field.name.toUpperCase())return" ("+this.lkp[e.right.value.toString()].toString()+" "+e.operator+" "+s+") ";return" ("+this.evaluateNodeToWhereClause(e.left,t,r,b.BADNESS,a)+" "+e.operator+" "+this.evaluateNodeToWhereClause(e.right,t,r,b.BADNESS,a)+") ";case"<":case">":case">=":case"<=":case"*":case"-":case"+":case"/":case"||":return" ("+this.evaluateNodeToWhereClause(e.left,t,r,b.BADNESS,a)+" "+e.operator+" "+this.evaluateNodeToWhereClause(e.right,t,r,b.BADNESS,a)+") "}case"null":return"null";case"boolean":return!0===e.value?"1":"0";case"string":return"'"+e.value.toString().replaceAll("'","''")+"'";case"timestamp":return`timestamp '${e.value}'`;case"date":return`date '${e.value}'`;case"time":return`time '${e.value}'`;case"number":return e.value.toString();case"current-time":return m(e.mode,t);case"current-user":return"CURRENT_USER";case"column-reference":return r&&r.toLowerCase()===e.column.toLowerCase()?"("+s+")":S(e.column);case"data-type":return e.value;case"function":{const s=this.evaluateNodeToWhereClause(e.args,t,r,b.BADNESS,a);return g(e.name,s,t)}}throw new A("UnsupportedSyntax",{node:e.type})}extractValue(e){if(this.codefield instanceof F){const t=this.codefield.calculateValueCompiled(e);return this.reverseLkp[F.convertValueToStorageFormat(t)]}return this.reverseLkp[e.attributes[this.codefield]]}}class D extends x{constructor(e,t){super(e),this._sql=t}rewriteSql(e,t){return{rewritten:!0,where:f(e,this.field.name,N(this._sql,0),t.getFieldsIndex())}}extractValue(e){return F.convertValueToStorageFormat(this._sql.calculateValueCompiled(e),this.field.type)}}class q extends i{static findField(e,t){for(const r of e)if(r.name.toLowerCase()===t.toString().toLowerCase())return r;return null}constructor(e){super(e),this.declaredClass="esri.arcade.featureset.actions.Adapted",this.adaptedFields=[],this._extraFilter=null,this._extraFilter=e.extraFilter,this._parent=e.parentfeatureset,this._maxProcessing=30,this.adaptedFields=e.adaptedFields}_initialiseFeatureSet(){null!==this._parent?(this.geometryType=this._parent.geometryType,this.objectIdField=this._parent.objectIdField,this.globalIdField=this._parent.globalIdField,this.spatialReference=this._parent.spatialReference,this.hasM=this._parent.hasM,this.hasZ=this._parent.hasZ,this.typeIdField=this._parent.typeIdField,this.types=this._parent.types):(this.spatialReference=new E({wkid:4326}),this.objectIdField="",this.globalIdField="",this.geometryType=d.point,this.typeIdField="",this.types=null,this.subtypeField=null,this.subtypes=null),this.fields=[];for(const e of this.adaptedFields)e.postInitialization(this,this._parent),this.fields.push(e.field)}async _queryAll(){return await this._ensureLoaded(),this._extraFilter?(await this.query({abortSignal:t})).features:this._calculateFields(await this._parent.queryAll(t))}async query(e){let t=!1,r=e.where??null;const a=this._reformulateWithoutAdaptions(r);t=a.cannot,r=a.where;let i=!1,l=e.orderBy;if(null!=l){i=!0;const e=[];for(const t of this.adaptedFields)if(!(t instanceof I)&&!0===l.scanForField(t.field.name)){if(!(t instanceof B)){l=null,i=!1;break}e.push({field:t.field.name,newfield:t.originalField.name})}l&&e.length>0&&(l=l.replaceFields(e))}null!=r?null!=this._extraFilter&&(r=_(this._extraFilter,r)):r=this._extraFilter,await this._ensureLoaded();const o=await this._parent.query({...e,where:r,orderBy:l});return s(e.abortSignal),!0===t?{...o,filterApplied:!1,ordered:!0===i&&o.ordered,features:this._calculateFields(o.features)}:{...o,ordered:!0===i&&o.ordered,features:this._calculateFields(o.features)}}async*_calculateFields(t){for await(const s of t)yield s.map(t=>{const s={};for(const e of this.adaptedFields)s[e.field.name]=e.extractValue(t);return new e({attributes:s,geometry:r(t.geometry)})})}async queryStat(e){let t=!1,r=e.field,s=this._reformulateWithoutAdaptions(r);t=s.cannot,r=s.where;let a=e.where??null;if(s=this._reformulateWithoutAdaptions(a),t=t||s.cannot,a=s.where,null!=a?null!==this._extraFilter&&(a=_(this._extraFilter,a)):a=this._extraFilter,!0===t)return null==a&&null==e.spatialFilter?this._manualStat(e.stat,r,e.limit??p,e.abortSignal):{calculated:!1};const i=await this._parent.queryStat({...e,field:r,where:a});return!1===i.calculated?null==a&&null==e.spatialFilter?this._manualStat(e.stat,r,e.limit??p,e.abortSignal):{calculated:!1}:i}async canQueryAggregate(e){if(null===this._parent)return!1;for(let a=0;a<e.groupBy.length;a++)for(const t of this.adaptedFields)if(e.groupBy[a].toLowerCase()===t.field.name.toLowerCase()&&!(t instanceof I))return!1;const t=[];for(let a=0;a<e.statistics.length;a++){const r=e.statistics[a];if(null!==r.workingexpr){const e=this._reformulateWithoutAdaptions(r.workingexpr);if(e.cannot)return!1;const s=r.clone();s.workingexpr=e.where,t.push(s)}else t.push(r)}let r=e.where??null;const s=this._reformulateWithoutAdaptions(r);return!s.cannot&&(r=s.where,null!==r?null!==this._extraFilter&&(r=_(this._extraFilter,r)):r=this._extraFilter,this._parent.canQueryAggregate({...e,statistics:t,where:r}))}async queryAggregate(e){if(null===this._parent)throw new a("NeverReach");const t=[];for(let i=0;i<e.statistics.length;i++){const r=e.statistics[i];if(null!==r.workingexpr){const e=this._reformulateWithoutAdaptions(r.workingexpr);if(e.cannot)throw new a("NeverReach");const s=r.clone();s.workingexpr=e.where,t.push(s)}else t.push(r)}let r=e.where??null;const s=this._reformulateWithoutAdaptions(r);if(s.cannot)throw new a("NeverReach");return r=s.where,null!==r?null!==this._extraFilter&&(r=_(this._extraFilter,r)):r=this._extraFilter,this._parent.queryAggregate({...e,statistics:t,where:r})}_reformulateWithoutAdaptions(e){const t={cannot:!1,where:e};if(null!==e)for(const r of this.adaptedFields)if(!0===W(e,r.field.name)){const s=r.rewriteSql(e,this);if(!0!==s.rewritten){t.cannot=!0,t.where=null;break}t.where=s.where}return t}}export{q as AdaptedFeatureSet,x as AdaptedField,B as FieldRename,I as OriginalField,D as SqlExpressionAdapted,b as StringToCodeAdapted};
5
+ import e from"../../../Graphic.js";import{neverAbortedSignal as t}from"../../arcadeEnvironment.js";import{cloneGeometry as r}from"../../kernel.js";import{throwIfCancelled as s,FeatureSetError as a}from"../support/errorsupport.js";import{FeatureSet as i}from"../support/FeatureSet.js";import{isDate as l,isLuxonDate as o,isArcadeTime as n,isArcadeDate as u,isArcadeDateOnly as h,cloneField as c,defaultMaxRecords as d}from"../support/shared.js";import{reformulateWithoutField as p,toWhereClause as f,translateFunctionToDatabaseSpecific as N,convertColumnReferenceToSql as g,makeToday as S,makeSqlFromDateTimeParameter as m,makeTimeString as T,arcadeDateToSqlString as w,arcadeDateOnlyToSqlString as C,convertIntervalToSql as _,combine as v,scanForField as y}from"../support/sqlUtils.js";import{SqlError as W}from"../../../core/sql/errorSupport.js";import A from"../../../core/sql/WhereClause.js";class E{constructor(e){this.field=e,this.sqlRewritable=!1}postInitialization(e,t){}}class F extends E{constructor(e){super(e),this.sqlRewritable=!0}extractValue(e){return e.attributes[this.field.name]}rewriteSql(e){return{rewritten:this.sqlRewritable,where:e}}}class x extends E{constructor(e,t,r){super(c(e)),this.originalField=e,this.sqlRewritable=!0,this.field.name=t,this.field.alias=r}rewriteSql(e,t){return{rewritten:this.sqlRewritable,where:p(e,this.field.name,this.originalField.name,t.getFieldsIndex())}}extractValue(e){return e.attributes[this.originalField.name]}}class I extends E{constructor(e,t,r){super(e),this.codefield=t,this._stringToCode=r,this._codeToString={};for(const s in r)this._codeToString[r[s]]=s;this.sqlRewritable=!0}static{this.BADNESS="_!!!_BAD_LKP_!!!!"}rewriteSql(e,t){const r=this.evaluateNodeToWhereClause(e.parseTree,0,this.field.name,this.codefield instanceof A?f(this.codefield,0):this.codefield,e.parameters);return r.includes(I.BADNESS)?{rewritten:!1,where:e}:{rewritten:this.sqlRewritable,where:A.create(r,{fieldsIndex:t._parent.getFieldsIndex(),timeZone:t.dateFieldsTimeZoneDefaultUTC})}}evaluateNodeToWhereClause(e,t,r=null,s=null,a){switch(e.type){case"interval":return _(this.evaluateNodeToWhereClause(e.value,t,r,s,a),e.qualifier,e.op);case"case-expression":{let s=" CASE ";"simple"===e.format&&(s+=this.evaluateNodeToWhereClause(e.operand,t,r,I.BADNESS,a));for(const i of e.clauses)s+=" WHEN "+this.evaluateNodeToWhereClause(i.operand,t,r,I.BADNESS,a)+" THEN "+this.evaluateNodeToWhereClause(i.value,t,r,I.BADNESS,a);return null!==e.else&&(s+=" ELSE "+this.evaluateNodeToWhereClause(e.else,t,r,I.BADNESS,a)),s+=" END ",s}case"parameter":{const r=a[e.value.toLowerCase()];return"string"==typeof r?"'"+r.toString().replaceAll("'","''")+"'":l(r)||o(r)?m(r,t):n(r)?T(r,t):u(r)?w(r,t):h(r)?C(r,t):Array.isArray(r)?r.map(e=>"string"==typeof e?"'"+e.toString().replaceAll("'","''")+"'":l(e)||o(e)?m(e,t):n(e)?T(e,t):u(e)?w(e,t):h(e)?C(e,t):e.toString()):r.toString()}case"expression-list":{const i=[];for(const l of e.value)i.push(this.evaluateNodeToWhereClause(l,t,r,s,a));return i}case"unary-expression":return" ( NOT "+this.evaluateNodeToWhereClause(e.expr,t,r,I.BADNESS,a)+" ) ";case"binary-expression":switch(e.operator){case"AND":return" ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" AND "+this.evaluateNodeToWhereClause(e.right,t,r,s,a)+") ";case"OR":return" ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" OR "+this.evaluateNodeToWhereClause(e.right,t,r,s,a)+") ";case"IS":if("null"!==e.right.type)throw new W("UnsupportedIsRhs");return" ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" IS NULL )";case"ISNOT":if("null"!==e.right.type)throw new W("UnsupportedIsRhs");return" ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" IS NOT NULL )";case"IN":{if("expression-list"===e.right.type){if("column-reference"===e.left.type&&e.left.column.toUpperCase()===this.field.name.toUpperCase()){const i=[];let l=!0;for(const t of e.right.value){if("string"!==t.type){l=!1;break}if(void 0===this._stringToCode[t.value]){l=!1;break}i.push(this._stringToCode[t.value].toString())}if(l)return" ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" IN ("+i.join(",")+")) "}const i=this.evaluateNodeToWhereClause(e.right,t,r,s,a);return" ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" IN ("+i.join(",")+")) "}const i=this.evaluateNodeToWhereClause(e.right,t,r,s,a);return Array.isArray(i)?" ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" IN ("+i.join(",")+")) ":" ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" IN ("+i+")) "}case"NOT IN":{if("expression-list"===e.right.type){if("column-reference"===e.left.type&&e.left.column.toUpperCase()===this.field.name.toUpperCase()){const i=[];let l=!0;for(const t of e.right.value){if("string"!==t.type){l=!1;break}if(void 0===this._stringToCode[t.value]){l=!1;break}i.push(this._stringToCode[t.value].toString())}if(l)return" ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" NOT IN ("+i.join(",")+")) "}const i=this.evaluateNodeToWhereClause(e.right,t,r,s,a);return" ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" NOT IN ("+i.join(",")+")) "}const i=this.evaluateNodeToWhereClause(e.right,t,r,s,a);return Array.isArray(i)?" ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" NOT IN ("+i.join(",")+")) ":" ("+this.evaluateNodeToWhereClause(e.left,t,r,s,a)+" NOT IN ("+i+")) "}case"BETWEEN":{const s=this.evaluateNodeToWhereClause(e.right,t,r,I.BADNESS,a);return" ("+this.evaluateNodeToWhereClause(e.left,t,r,I.BADNESS,a)+" BETWEEN "+s[0]+" AND "+s[1]+" ) "}case"NOTBETWEEN":{const s=this.evaluateNodeToWhereClause(e.right,t,r,I.BADNESS,a);return" ("+this.evaluateNodeToWhereClause(e.left,t,r,I.BADNESS,a)+" NOT BETWEEN "+s[0]+" AND "+s[1]+" ) "}case"LIKE":return""!==e.escape?" ("+this.evaluateNodeToWhereClause(e.left,t,r,I.BADNESS,a)+" LIKE "+this.evaluateNodeToWhereClause(e.right,t,r,I.BADNESS,a)+" ESCAPE '"+e.escape+"') ":" ("+this.evaluateNodeToWhereClause(e.left,t,r,I.BADNESS,a)+" LIKE "+this.evaluateNodeToWhereClause(e.right,t,r,I.BADNESS,a)+") ";case"NOT LIKE":return""!==e.escape?" ("+this.evaluateNodeToWhereClause(e.left,t,r,I.BADNESS,a)+" NOT LIKE "+this.evaluateNodeToWhereClause(e.right,t,r,I.BADNESS,a)+" ESCAPE '"+e.escape+"') ":" ("+this.evaluateNodeToWhereClause(e.left,t,r,I.BADNESS,a)+" NOT LIKE "+this.evaluateNodeToWhereClause(e.right,t,r,I.BADNESS,a)+") ";case"<>":case"=":if("column-reference"===e.left.type&&"string"===e.right.type){if(e.left.column.toUpperCase()===this.field.name.toUpperCase()&&void 0!==this._stringToCode[e.right.value.toString()])return" ("+s+" "+e.operator+" "+this._stringToCode[e.right.value.toString()].toString()+") "}else if("column-reference"===e.right.type&&"string"===e.left.type&&e.right.column.toUpperCase()===this.field.name.toUpperCase())return" ("+this._stringToCode[e.left.value.toString()].toString()+" "+e.operator+" "+s+") ";return" ("+this.evaluateNodeToWhereClause(e.left,t,r,I.BADNESS,a)+" "+e.operator+" "+this.evaluateNodeToWhereClause(e.right,t,r,I.BADNESS,a)+") ";case"<":case">":case">=":case"<=":case"*":case"-":case"+":case"/":case"||":return" ("+this.evaluateNodeToWhereClause(e.left,t,r,I.BADNESS,a)+" "+e.operator+" "+this.evaluateNodeToWhereClause(e.right,t,r,I.BADNESS,a)+") "}case"null":return"null";case"boolean":return!0===e.value?"1":"0";case"string":return"'"+e.value.toString().replaceAll("'","''")+"'";case"timestamp":return`timestamp '${e.value}'`;case"date":return`date '${e.value}'`;case"time":return`time '${e.value}'`;case"number":return e.value.toString();case"current-time":return S(e.mode,t);case"current-user":return"CURRENT_USER";case"column-reference":return r&&r.toLowerCase()===e.column.toLowerCase()?"("+s+")":g(e);case"data-type":return e.value;case"function":{const s=this.evaluateNodeToWhereClause(e.args,t,r,I.BADNESS,a);return N(e.name,s,t)}}throw new W("UnsupportedSyntax",{node:e.type})}extractValue(e){if(this.codefield instanceof A){const t=this.codefield.calculateValueCompiled(e);return this._codeToString[A.convertValueToStorageFormat(t)]}return this._codeToString[e.attributes[this.codefield]]}}class B extends E{constructor(e,t){super(e),this._sql=t}rewriteSql(e,t){return{rewritten:!0,where:p(e,this.field.name,f(this._sql,0),t.getFieldsIndex())}}extractValue(e){return A.convertValueToStorageFormat(this._sql.calculateValueCompiled(e),this.field.type)}}class D extends i{static findField(e,t){for(const r of e)if(r.name.toLowerCase()===t.toString().toLowerCase())return r;return null}constructor(e){super(),this.declaredClass="esri.arcade.featureset.actions.Adapted",this._maxProcessing=30,this._parent=e.parentfeatureset,this._adaptedFields=e.adaptedFields,this._extraFilter=e.extraFilter}_initialiseFeatureSet(){this.geometryType=this._parent.geometryType,this.objectIdField=this._parent.objectIdField,this.globalIdField=this._parent.globalIdField,this.spatialReference=this._parent.spatialReference,this.hasM=this._parent.hasM,this.hasZ=this._parent.hasZ,this.typeIdField=this._parent.typeIdField,this.types=this._parent.types,this.fields=[];for(const e of this._adaptedFields)e.postInitialization(this,this._parent),this.fields.push(e.field)}async _queryAll(){return await this._ensureLoaded(),this._extraFilter?(await this.query({abortSignal:t})).features:this._calculateFields(await this._parent.queryAll(t))}async query(e){let t=e.where??null;const r=this._reformulateWithoutAdaptions(t),a=r.cannot;t=r.where;let i=!1,l=e.orderBy;if(null!=l){i=!0;const e=[];for(const t of this._adaptedFields)if(!(t instanceof F)&&!0===l.scanForField(t.field.name)){if(!(t instanceof x)){l=null,i=!1;break}e.push({field:t.field.name,newfield:t.originalField.name})}l&&e.length>0&&(l=l.replaceFields(e))}null!=t?null!=this._extraFilter&&(t=v(this._extraFilter,t)):t=this._extraFilter,await this._ensureLoaded();const o=await this._parent.query({...e,where:t,orderBy:l});return s(e.abortSignal),a?{...o,filterApplied:!1,ordered:!!i&&o.ordered,features:this._calculateFields(o.features)}:{...o,ordered:!!i&&o.ordered,features:this._calculateFields(o.features)}}async*_calculateFields(t){for await(const s of t)yield s.map(t=>{const s={};for(const e of this._adaptedFields)s[e.field.name]=e.extractValue(t);return new e({attributes:s,geometry:r(t.geometry)})})}async queryStat(e){let t=!1,r=e.field,s=this._reformulateWithoutAdaptions(r);t=s.cannot,r=s.where;let a=e.where??null;if(s=this._reformulateWithoutAdaptions(a),t=t||s.cannot,a=s.where,null!=a?null!==this._extraFilter&&(a=v(this._extraFilter,a)):a=this._extraFilter,t)return null==a&&null==e.spatialFilter?this._manualStat(e.stat,r,e.limit??d,e.abortSignal):{calculated:!1};const i=await this._parent.queryStat({...e,field:r,where:a});return i.calculated?i:null==a&&null==e.spatialFilter?this._manualStat(e.stat,r,e.limit??d,e.abortSignal):{calculated:!1}}async canQueryAggregate(e){for(const a of e.groupBy)for(const e of this._adaptedFields)if(a.toLowerCase()===e.field.name.toLowerCase()&&!(e instanceof F))return!1;const t=[];for(const a of e.statistics)if(null!==a.workingexpr){const e=this._reformulateWithoutAdaptions(a.workingexpr);if(e.cannot)return!1;const r=a.clone();r.workingexpr=e.where,t.push(r)}else t.push(a);let r=e.where??null;const s=this._reformulateWithoutAdaptions(r);return!s.cannot&&(r=s.where,null!==r?null!==this._extraFilter&&(r=v(this._extraFilter,r)):r=this._extraFilter,this._parent.canQueryAggregate({...e,statistics:t,where:r}))}async queryAggregate(e){const t=[];for(const i of e.statistics)if(null!==i.workingexpr){const e=this._reformulateWithoutAdaptions(i.workingexpr);if(e.cannot)throw new a("NeverReach");const r=i.clone();r.workingexpr=e.where,t.push(r)}else t.push(i);let r=e.where??null;const s=this._reformulateWithoutAdaptions(r);if(s.cannot)throw new a("NeverReach");return r=s.where,null!==r?null!==this._extraFilter&&(r=v(this._extraFilter,r)):r=this._extraFilter,this._parent.queryAggregate({...e,statistics:t,where:r})}_reformulateWithoutAdaptions(e){const t={cannot:!1,where:e};if(null!==e)for(const r of this._adaptedFields)if(!0===y(e,r.field.name)){const s=r.rewriteSql(e,this);if(!0!==s.rewritten){t.cannot=!0,t.where=null;break}t.where=s.where}return t}}export{D as AdaptedFeatureSet,E as AdaptedField,x as FieldRename,F as OriginalField,B as SqlExpressionAdapted,I as StringToCodeAdapted};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{neverAbortedSignal as e}from"../../arcadeEnvironment.js";import{throwIfCancelled as t,FeatureSetError as s}from"../support/errorsupport.js";import{FeatureSet as r}from"../support/FeatureSet.js";import{layerGeometryEsriConstants as i,defaultMaxRecords as l}from"../support/shared.js";import{combine as a}from"../support/sqlUtils.js";import h from"../../../core/sql/WhereClause.js";import u from"../../../geometry/SpatialReference.js";class n extends r{constructor(e){super(e),this.declaredClass="esri.arcade.featureset.actions.AttributeFilter",this._maxProcessing=1e3,this._parent=e.parentfeatureset,e.whereclause instanceof h?(this._whereclause=e.whereclause,this._whereClauseFunction=null):(this._whereClauseFunction=e.whereclause,this._whereclause=null)}_initialiseFeatureSet(){null!==this._parent?(this.fields=this._parent.fields.slice(),this.geometryType=this._parent.geometryType,this.objectIdField=this._parent.objectIdField,this.globalIdField=this._parent.globalIdField,this.spatialReference=this._parent.spatialReference,this.hasM=this._parent.hasM,this.hasZ=this._parent.hasZ,this.typeIdField=this._parent.typeIdField,this.types=this._parent.types,this.subtypeField=this._parent.subtypeField,this.subtypes=this._parent.subtypes):(this.fields=[],this.typeIdField="",this.subtypeField="",this.objectIdField="",this.globalIdField="",this.spatialReference=new u({wkid:4326}),this.geometryType=i.point)}async _queryAll(){return(await this.query({abortSignal:e})).features}async query(e){let s=e.where;null!==this._whereClauseFunction||(null!=s?null!==this._whereclause&&(s=a(this._whereclause,s)):s=this._whereclause),await this._ensureLoaded();const r=await this._parent.query({...e,where:s});return t(e.abortSignal),r.filterApplied&&null==this._whereClauseFunction?r:{...r,features:this._applyFilter(r.features,e.abortSignal)}}async*_applyFilter(e,s){for await(const r of e)if(t(s),null==this._whereClauseFunction){const e=r.filter(e=>this.executeWhereClause(e));e.length>0&&(yield e)}else{const e=[];for(const t of r)await this.executeWhereClauseDeferred(t)&&e.push(t);e.length>0&&(yield e)}}async queryStat(e){if(null!==this._whereClauseFunction)return null==e.where&&null==e.spatialFilter?this._manualStat(e.stat,e.field,e.limit??l,e.abortSignal):{calculated:!1};let t=this._whereclause;null!=e.where&&null!==this._whereclause&&(t=a(this._whereclause,e.where));const s=await this._parent.queryStat({...e,where:t});return!1===s.calculated?null==e.where&&null==e.spatialFilter?this._manualStat(e.stat,e.field,e.limit??l,e.abortSignal):{calculated:!1}:s}async canQueryAggregate(e){if(null!==this._whereClauseFunction)return!1;let t=e.where;return null!=t?null!==this._whereclause&&(t=a(this._whereclause,t)):t=this._whereclause,null!==this._parent&&this._parent.canQueryAggregate({...e,where:t})}async queryAggregate(e){if(null===this._parent)throw new s("NeverReach");let t=e.where;return null!=t?null!==this._whereclause&&(t=a(this._whereclause,t)):t=this._whereclause,this._parent.queryAggregate({...e,where:t})}executeWhereClause(e){return this._whereclause?.testFeature(e)??!1}async executeWhereClauseDeferred(e){return null!==this._whereClauseFunction?this._whereClauseFunction(e):this.executeWhereClause(e)}getFieldsIndex(){return this._parent.getFieldsIndex()}}export{n as default};
5
+ import{neverAbortedSignal as e}from"../../arcadeEnvironment.js";import{throwIfCancelled as t}from"../support/errorsupport.js";import{FeatureSet as s}from"../support/FeatureSet.js";import{defaultMaxRecords as r}from"../support/shared.js";import{combine as a}from"../support/sqlUtils.js";import l from"../../../core/sql/WhereClause.js";class i extends s{constructor(e){super(),this.declaredClass="esri.arcade.featureset.actions.AttributeFilter",this._maxProcessing=1e3,this._parent=e.parentfeatureset,e.whereclause instanceof l?(this._whereClause=e.whereclause,this._whereClauseFunction=null):(this._whereClauseFunction=e.whereclause,this._whereClause=null)}_initialiseFeatureSet(){this.fields=this._parent.fields.slice(),this.geometryType=this._parent.geometryType,this.objectIdField=this._parent.objectIdField,this.globalIdField=this._parent.globalIdField,this.spatialReference=this._parent.spatialReference,this.hasM=this._parent.hasM,this.hasZ=this._parent.hasZ,this.typeIdField=this._parent.typeIdField,this.types=this._parent.types,this.subtypeField=this._parent.subtypeField,this.subtypes=this._parent.subtypes}async _queryAll(){return(await this.query({abortSignal:e})).features}async query(e){let s=e.where;null!==this._whereClauseFunction||(null!=s?null!==this._whereClause&&(s=a(this._whereClause,s)):s=this._whereClause),await this._ensureLoaded();const r=await this._parent.query({...e,where:s});return t(e.abortSignal),r.filterApplied&&null==this._whereClauseFunction?r:{...r,features:this._applyFilter(r.features,e.abortSignal)}}async*_applyFilter(e,s){for await(const r of e)if(t(s),null==this._whereClauseFunction){const e=r.filter(e=>this.executeWhereClause(e));e.length>0&&(yield e)}else{const e=[];for(const t of r)await this.executeWhereClauseDeferred(t)&&e.push(t);e.length>0&&(yield e)}}async queryStat(e){if(null!==this._whereClauseFunction)return null==e.where&&null==e.spatialFilter?this._manualStat(e.stat,e.field,e.limit??r,e.abortSignal):{calculated:!1};let t=this._whereClause;null!=e.where&&null!==this._whereClause&&(t=a(this._whereClause,e.where));const s=await this._parent.queryStat({...e,where:t});return s.calculated?s:null==e.where&&null==e.spatialFilter?this._manualStat(e.stat,e.field,e.limit??r,e.abortSignal):{calculated:!1}}async canQueryAggregate(e){if(null!==this._whereClauseFunction)return!1;let t=e.where;return null!=t?null!==this._whereClause&&(t=a(this._whereClause,t)):t=this._whereClause,this._parent.canQueryAggregate({...e,where:t})}async queryAggregate(e){let t=e.where;return null!=t?null!==this._whereClause&&(t=a(this._whereClause,t)):t=this._whereClause,this._parent.queryAggregate({...e,where:t})}executeWhereClause(e){return this._whereClause?.testFeature(e)??!1}async executeWhereClauseDeferred(e){return null!==this._whereClauseFunction?this._whereClauseFunction(e):this.executeWhereClause(e)}getFieldsIndex(){return this._parent.getFieldsIndex()}}export{i as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import e from"../../../Graphic.js";import{neverAbortedSignal as t}from"../../arcadeEnvironment.js";import{StringEnum as s}from"../../enum.js";import{a2 as i}from"../../../chunks/languageUtils.js";import{SqlExpressionAdapted as r,OriginalField as o,AdaptedFeatureSet as a}from"./Adapted.js";import l from"./AttributeFilter.js";import n from"./OrderBy.js";import{FeatureSetError as d,throwIfCancelled as u}from"../support/errorsupport.js";import{FeatureSet as p,emptyFeaturesResult as f}from"../support/FeatureSet.js";import h from"../support/OrderbyClause.js";import{layerGeometryEsriConstants as c}from"../support/shared.js";import{isSingleField as g,toWhereClause as m,predictType as y,scanForField as _,reformulateWithoutField as b}from"../support/sqlUtils.js";import F from"../support/StatsField.js";import{createMD5Hash as w,outputTypes as S}from"../../../core/MD5.js";import{aggregateFunction as A}from"../../../core/sql/AggregateFunctions.js";import{DateOnly as x}from"../../../core/sql/DateOnly.js";import{SqlTimeStampOffset as I}from"../../../core/sql/SqlTimestampOffset.js";import{TimeOnly as j}from"../../../core/sql/TimeOnly.js";import T from"../../../core/sql/WhereClause.js";import q from"../../../geometry/SpatialReference.js";import C from"../../../layers/support/Field.js";import G from"../../../layers/support/FieldsIndex.js";const N=new s(["MIN","MAX","VAR","STDDEV","COUNT","SUM","AVG"],[["VARIANCE","VAR"],["AVERAGE","AVG"],["MEAN","AVG"],["STDEV","STDDEV"]]);class k extends p{constructor(e){super(e),this._decodedStatsfield=[],this._decodedGroupbyfield=[],this._candosimplegroupby=!0,this.phsyicalgroupbyfields=[],this.objectIdField="ROW__ID",this._internalObjectIdField="ROW__ID",this._adaptedFields=[],this.declaredClass="esri.arcade.featureset.actions.Aggregate",this._uniqueIds=1,this._maxQuery=10,this._maxProcessing=10,this._parent=e.parentfeatureset,this._config=e}isTable(){return!0}_nextUniqueName(e){for(;1===e["T"+this._uniqueIds.toString()];)this._uniqueIds++;const t="T"+this._uniqueIds.toString();return e[t]=1,t}_convertToEsriFieldType(e){return e}_initialiseFeatureSet(){const e={};let t=!1,s=1;const i=this._parent?this._parent.getFieldsIndex():new G([]);for(this.objectIdField="ROW__ID",this.globalIdField="";!1===t;){let e=!1;for(let t=0;t<this._config.groupbyfields.length;t++)if(this._config.groupbyfields[t].name.toLowerCase()===this.objectIdField.toLowerCase()){e=!0;break}if(!1===e)for(let t=0;t<this._config.statsfields.length;t++)if(this._config.statsfields[t].name.toLowerCase()===this.objectIdField.toLowerCase()){e=!0;break}!1===e?t=!0:(this.objectIdField="ROW__ID"+s.toString(),s++)}for(const r of this._config.statsfields){const e=new F;e.field=r.name,e.tofieldname=r.name,e.workingexpr=r.expression instanceof T?r.expression:T.create(r.expression,{fieldsIndex:i,timeZone:this.dateFieldsTimeZoneDefaultUTC}),e.typeofstat=N.lookup(r.statistic)??"COUNT",this._decodedStatsfield.push(e)}this._decodedGroupbyfield=[];for(const r of this._config.groupbyfields){const e={name:r.name,singlefield:null,tofieldname:r.name,expression:r.expression instanceof T?r.expression:T.create(r.expression,{fieldsIndex:i,timeZone:this.dateFieldsTimeZoneDefaultUTC}),sqlType:null};this._decodedGroupbyfield.push(e)}if(null!==this._parent){this.geometryType=this._parent.geometryType,this.spatialReference=this._parent.spatialReference,this.hasM=this._parent.hasM,this.hasZ=this._parent.hasZ,this.typeIdField="";for(const t of this._parent.fields)e[t.name.toUpperCase()]=1;this.types=null,this.subtypes=null,this.subtypeField=""}else this.geometryType=c.point,this.typeIdField="",this.types=null,this.subtypes=null,this.subtypeField="",this.spatialReference=new q({wkid:4326});this.fields=[];const a=new F;a.field=this._nextUniqueName(e),a.tofieldname=this.objectIdField,a.workingexpr=T.create(this._parent.objectIdField,{fieldsIndex:this._parent.getFieldsIndex(),timeZone:this.dateFieldsTimeZoneDefaultUTC}),a.typeofstat="MIN",this._decodedStatsfield.push(a);for(const o of this._decodedGroupbyfield){const t=new C;if(o.name=this._nextUniqueName(e),t.name=o.tofieldname,t.alias=t.name,g(o.expression)){const e=this._parent.getField(m(o.expression,0));if(!e)throw new d("AggregationFieldNotFound");o.name=e.name,o.singlefield=e.name,this.phsyicalgroupbyfields.push(e.name),t.type=e.type,o.sqlType=e.type}else{t.type=this._convertToEsriFieldType(y(o.expression,this._parent.fields));const e=new C;e.name=o.name,e.alias=e.name,this.phsyicalgroupbyfields.push(o.name),this._adaptedFields.push(new r(e,o.expression)),this._candosimplegroupby=!1,o.sqlType=t.type}this.fields.push(t)}if(this._adaptedFields.length>0)for(const r of this._parent.fields)this._adaptedFields.push(new o(r));for(let r=0;r<this._decodedStatsfield.length;r++){const t=new C;let s=null;const i=this._decodedStatsfield[r];i.field=this._nextUniqueName(e),i.tofieldname===this.objectIdField&&(this._internalObjectIdField=i.field),t.name=i.tofieldname,t.alias=t.name;const o=null!==i.workingexpr&&g(i.workingexpr)?m(i.workingexpr,0):"";switch(this._decodedStatsfield[r].typeofstat){case"SUM":if(""!==o){if(s=this._parent.getField(o),!s)throw new d("AggregationFieldNotFound");t.type=s.type}else t.type="double";break;case"MIN":case"MAX":if(""!==o){if(s=this._parent.getField(o),!s)throw new d("AggregationFieldNotFound");t.type=s.type}else t.type="double";break;case"COUNT":t.type="integer";break;case"STDDEV":case"VAR":case"AVG":if(""!==o&&(s=this._parent.getField(o),!s))throw new d("AggregationFieldNotFound");t.type="double"}this.fields.push(t)}}async _queryAll(){return(await this.query({abortSignal:t})).features}async query(e){if(null!=e.spatialFilter)return f;const t={ordered:!1,nowhereclause:!1};await this._ensureLoaded();let s=e.where;if(null!=s)for(let a=0;a<this._decodedStatsfield.length;a++)if(!0===_(s,this._decodedStatsfield[a].tofieldname)){t.nowhereclause=!0,s=null;break}let i=e.orderBy;if(null!=i){t.ordered=!0;for(let e=0;e<this._decodedStatsfield.length;e++)if(!0===i.scanForField(this._decodedStatsfield[e].tofieldname)){i=null,t.ordered=!1;break}if(null!==i)for(const e of this._decodedGroupbyfield)if(null===e.singlefield&&!0===i.scanForField(e.tofieldname)){i=null,t.ordered=!1;break}}if(!1!==this._candosimplegroupby&&await this._parent.canQueryAggregate({groupBy:this.phsyicalgroupbyfields,statistics:this._decodedStatsfield,where:null,spatialFilter:null,abortSignal:e.abortSignal})){let r=null;s&&(r=this._reformulateWhereClauseWithoutGroupByFields(s));let o=null;i&&(o=this._reformulateOrderClauseWithoutGroupByFields(i));const a=await this._parent.queryAggregate({groupBy:this.phsyicalgroupbyfields,statistics:this._decodedStatsfield,where:r,spatialFilter:null,orderBy:o,abortSignal:e.abortSignal});return u(e.abortSignal),{...a,filterApplied:!t.nowhereclause&&a.filterApplied,ordered:!0===t.ordered&&a.ordered,features:this._fixAggregateAttributeNames(a.features)}}let r=this._parent;if(this._adaptedFields.length>0&&(r=new a({parentfeatureset:this._parent,adaptedFields:this._adaptedFields,extraFilter:null})),!0===t.nowhereclause){const t=new n({parentfeatureset:r,orderbyclause:new h(this.phsyicalgroupbyfields.join(",")+","+this._parent.objectIdField+" ASC")});return{filterApplied:!1,spatialFilterApplied:!1,ordered:!1,features:this._aggregateSortedFeatureGroups((await t.query({abortSignal:e.abortSignal})).features,this._maxQuery,e.abortSignal)}}let o=r;if(null!==s){let e=null;s&&(e=this._reformulateWhereClauseWithoutGroupByFields(s)),o=new l({parentfeatureset:o,whereclause:e})}const d=new n({parentfeatureset:o,orderbyclause:new h(this.phsyicalgroupbyfields.join(",")+","+this._parent.objectIdField+" ASC")});return{filterApplied:!1,spatialFilterApplied:!1,ordered:!1,features:this._aggregateSortedFeatureGroups((await d.query({abortSignal:e.abortSignal})).features,this._maxQuery,e.abortSignal)}}async*_fixAggregateAttributeNames(t){for await(const s of t)yield s.map(t=>{const s={geometry:t.geometry,attributes:{}},i={};for(const e in t.attributes)i[e.toLowerCase()]=t.attributes[e];for(const e of this._decodedGroupbyfield)s.attributes[e.tofieldname]=i[e.name.toLowerCase()];for(const e of this._decodedStatsfield)s.attributes[e.tofieldname]=i[e.field.toLowerCase()];return new e(s)})}async*_aggregateSortedFeatureGroups(e,t,s){let r=null,o=[];for await(const a of e){await i(),u(s);for(const e of a){const t=this._generateAggregateHash(e);null==r?r={features:[e],id:t}:t!==r.id?(o.push(this._calculateAndAppendAggregateItem(r)),r=null,r={features:[e],id:t}):r.features.push(e)}o.length>=t&&(yield o,o=[])}null!=r&&(o.push(this._calculateAndAppendAggregateItem(r)),yield o)}async queryStat(e){return{calculated:!1}}async canQueryAggregate(e){return!1}async queryAggregate(e){throw new d("NeverReach")}_reformulateWhereClauseWithoutStatsFields(e){for(const t of this._decodedStatsfield)e=b(e,t.tofieldname,m(t.workingexpr,0),this._parent.getFieldsIndex());return e}_reformulateWhereClauseWithoutGroupByFields(e){for(const t of this._decodedGroupbyfield)t.tofieldname!==t.name&&(e=b(e,t.tofieldname,m(t.expression,0),this._parent.getFieldsIndex()));return e}_reformulateOrderClauseWithoutGroupByFields(e){const t=[];for(const s of this._decodedGroupbyfield)s.tofieldname!==s.name&&t.push({field:s.tofieldname,newfield:s.name});return t.length>0?e.replaceFields(t):e}_calculateFieldStat(e,t,s){const i=[];for(const r of e.features)if(null!==t.workingexpr){const e=t.workingexpr.calculateValue(r);null!==e&&(e instanceof x||e instanceof j?i.push(e.toNumber()):e instanceof I?i.push(e.toMilliseconds()):i.push(e))}else i.push(null);s.attributes[t.tofieldname]=A(t.typeofstat,[i])}_calculateAndAppendAggregateItem(t){const s={attributes:{},geometry:null};for(const e of this._decodedGroupbyfield){const i=e.singlefield?t.features[0].attributes[e.singlefield]:T.convertValueToStorageFormat(e.expression.calculateValue(t.features[0]),e.sqlType);s.attributes[e.tofieldname]=i}for(const e of this._decodedStatsfield)this._calculateFieldStat(t,e,s);const i=[];for(let e=0;e<this._decodedStatsfield.length;e++)i.push(this._calculateFieldStat(t,this._decodedStatsfield[e],s));return new e({attributes:s.attributes,geometry:s.geometry})}_generateAggregateHash(e){let t="";for(const s of this._decodedGroupbyfield){const i=s.singlefield?e.attributes[s.singlefield]:s.expression.calculateValue(e);t+=null==i?":":":"+i.toString()}return w(t,S.String)}async getFeatureByObjectId(){return null}}export{k as default};
5
+ import e from"../../../Graphic.js";import{neverAbortedSignal as t}from"../../arcadeEnvironment.js";import{StringEnum as s}from"../../enum.js";import{a2 as i}from"../../../chunks/languageUtils.js";import{SqlExpressionAdapted as r,OriginalField as o,AdaptedFeatureSet as a}from"./Adapted.js";import n from"./AttributeFilter.js";import l from"./OrderBy.js";import{FeatureSetError as d,throwIfCancelled as u}from"../support/errorsupport.js";import{FeatureSet as p,emptyFeaturesResult as f}from"../support/FeatureSet.js";import c from"../support/OrderbyClause.js";import{isSingleField as h,toWhereClause as g,predictType as m,scanForField as _,reformulateWithoutField as y}from"../support/sqlUtils.js";import F from"../support/StatsField.js";import{createMD5Hash as w,outputTypes as b}from"../../../core/MD5.js";import{aggregateFunction as S}from"../../../core/sql/AggregateFunctions.js";import{DateOnly as A}from"../../../core/sql/DateOnly.js";import{SqlTimeStampOffset as x}from"../../../core/sql/SqlTimestampOffset.js";import{TimeOnly as G}from"../../../core/sql/TimeOnly.js";import I from"../../../core/sql/WhereClause.js";import j from"../../../layers/support/Field.js";const B=new s(["MIN","MAX","VAR","STDDEV","COUNT","SUM","AVG"],[["VARIANCE","VAR"],["AVERAGE","AVG"],["MEAN","AVG"],["STDEV","STDDEV"]]);class T extends p{constructor(e){super(),this.declaredClass="esri.arcade.featureset.actions.Aggregate",this._decodedStatsFields=[],this._decodedGroupByFields=[],this._canDoSimpleGroupBy=!0,this._physicalGroupByFields=[],this.objectIdField="ROW__ID",this._adaptedFields=[],this._uniqueIds=1,this._maxQuery=10,this._maxProcessing=10,this._parent=e.parentfeatureset,this._config=e}isTable(){return!0}_nextUniqueName(e){for(;1===e["T"+this._uniqueIds.toString()];)this._uniqueIds++;const t="T"+this._uniqueIds.toString();return e[t]=1,t}_convertToEsriFieldType(e){return e}_initialiseFeatureSet(){const e=this._parent.getFieldsIndex();this.objectIdField="ROW__ID",this.globalIdField="";let t=!1,s=1;for(;!1===t;){let e=!1;for(const t of this._config.groupbyfields)if(t.name.toLowerCase()===this.objectIdField.toLowerCase()){e=!0;break}if(!1===e)for(const t of this._config.statsfields)if(t.name.toLowerCase()===this.objectIdField.toLowerCase()){e=!0;break}!1===e?t=!0:(this.objectIdField="ROW__ID"+s.toString(),s++)}for(const r of this._config.statsfields){const t=new F;t.field=r.name,t.tofieldname=r.name,t.workingexpr=r.expression instanceof I?r.expression:I.create(r.expression,{fieldsIndex:e,timeZone:this.dateFieldsTimeZoneDefaultUTC}),t.typeofstat=B.lookup(r.statistic)??"COUNT",this._decodedStatsFields.push(t)}this._decodedGroupByFields=[];for(const r of this._config.groupbyfields){const t={name:r.name,singlefield:null,tofieldname:r.name,expression:r.expression instanceof I?r.expression:I.create(r.expression,{fieldsIndex:e,timeZone:this.dateFieldsTimeZoneDefaultUTC}),sqlType:null};this._decodedGroupByFields.push(t)}const i={};this.geometryType=this._parent.geometryType,this.spatialReference=this._parent.spatialReference,this.hasM=this._parent.hasM,this.hasZ=this._parent.hasZ,this.typeIdField="";for(const r of this._parent.fields)i[r.name.toUpperCase()]=1;this.types=null,this.subtypes=null,this.subtypeField="",this.fields=[];const a=new F;a.field=this._nextUniqueName(i),a.tofieldname=this.objectIdField,a.workingexpr=I.create(this._parent.objectIdField,{fieldsIndex:this._parent.getFieldsIndex(),timeZone:this.dateFieldsTimeZoneDefaultUTC}),a.typeofstat="MIN",this._decodedStatsFields.push(a);for(const o of this._decodedGroupByFields){const e=new j;if(o.name=this._nextUniqueName(i),e.name=o.tofieldname,e.alias=e.name,h(o.expression)){const t=this._parent.getField(g(o.expression,0));if(!t)throw new d("AggregationFieldNotFound");o.name=t.name,o.singlefield=t.name,this._physicalGroupByFields.push(t.name),e.type=t.type,o.sqlType=t.type}else{e.type=this._convertToEsriFieldType(m(o.expression,this._parent.fields));const t=new j;t.name=o.name,t.alias=t.name,this._physicalGroupByFields.push(o.name),this._adaptedFields.push(new r(t,o.expression)),this._canDoSimpleGroupBy=!1,o.sqlType=e.type}this.fields.push(e)}if(this._adaptedFields.length>0)for(const r of this._parent.fields)this._adaptedFields.push(new o(r));for(const r of this._decodedStatsFields){const e=new j;let t=null;r.field=this._nextUniqueName(i),e.name=r.tofieldname,e.alias=e.name;const s=null!==r.workingexpr&&h(r.workingexpr)?g(r.workingexpr,0):"";switch(r.typeofstat){case"SUM":if(""!==s){if(t=this._parent.getField(s),!t)throw new d("AggregationFieldNotFound");e.type=t.type}else e.type="double";break;case"MIN":case"MAX":if(""!==s){if(t=this._parent.getField(s),!t)throw new d("AggregationFieldNotFound");e.type=t.type}else e.type="double";break;case"COUNT":e.type="integer";break;case"STDDEV":case"VAR":case"AVG":if(""!==s&&(t=this._parent.getField(s),!t))throw new d("AggregationFieldNotFound");e.type="double"}this.fields.push(e)}}async _queryAll(){return(await this.query({abortSignal:t})).features}async query(e){if(null!=e.spatialFilter)return f;const t={ordered:!1,nowhereclause:!1};await this._ensureLoaded();let s=e.where;if(null!=s)for(const a of this._decodedStatsFields)if(!0===_(s,a.tofieldname)){t.nowhereclause=!0,s=null;break}let i=e.orderBy;if(null!=i){t.ordered=!0;for(const e of this._decodedStatsFields)if(!0===i.scanForField(e.tofieldname)){i=null,t.ordered=!1;break}if(null!==i)for(const e of this._decodedGroupByFields)if(null===e.singlefield&&!0===i.scanForField(e.tofieldname)){i=null,t.ordered=!1;break}}if(!1!==this._canDoSimpleGroupBy&&await this._parent.canQueryAggregate({groupBy:this._physicalGroupByFields,statistics:this._decodedStatsFields,where:null,spatialFilter:null,abortSignal:e.abortSignal})){const r=await this._parent.queryAggregate({groupBy:this._physicalGroupByFields,statistics:this._decodedStatsFields,where:s?this._reformulateWhereClauseWithoutGroupByFields(s):null,spatialFilter:null,orderBy:i?this._reformulateOrderClauseWithoutGroupByFields(i):null,abortSignal:e.abortSignal});return u(e.abortSignal),{...r,filterApplied:!t.nowhereclause&&r.filterApplied,ordered:!0===t.ordered&&r.ordered,features:this._fixAggregateAttributeNames(r.features)}}const r=this._adaptedFields.length>0?new a({parentfeatureset:this._parent,adaptedFields:this._adaptedFields,extraFilter:null}):this._parent;if(!0===t.nowhereclause){const t=new l({parentfeatureset:r,orderbyclause:new c(this._physicalGroupByFields.join(",")+","+this._parent.objectIdField+" ASC")});return{filterApplied:!1,spatialFilterApplied:!1,ordered:!1,features:this._aggregateSortedFeatureGroups((await t.query({abortSignal:e.abortSignal})).features,this._maxQuery,e.abortSignal)}}let o=r;null!=s&&(o=new n({parentfeatureset:o,whereclause:this._reformulateWhereClauseWithoutGroupByFields(s)}));const d=new l({parentfeatureset:o,orderbyclause:new c(this._physicalGroupByFields.join(",")+","+this._parent.objectIdField+" ASC")});return{filterApplied:!1,spatialFilterApplied:!1,ordered:!1,features:this._aggregateSortedFeatureGroups((await d.query({abortSignal:e.abortSignal})).features,this._maxQuery,e.abortSignal)}}async*_fixAggregateAttributeNames(t){for await(const s of t)yield s.map(t=>{const s={geometry:t.geometry,attributes:{}},i={};for(const e in t.attributes)i[e.toLowerCase()]=t.attributes[e];for(const e of this._decodedGroupByFields)s.attributes[e.tofieldname]=i[e.name.toLowerCase()];for(const e of this._decodedStatsFields)s.attributes[e.tofieldname]=i[e.field.toLowerCase()];return new e(s)})}async*_aggregateSortedFeatureGroups(e,t,s){let r=null,o=[];for await(const a of e){await i(),u(s);for(const e of a){const t=this._generateAggregateHash(e);null==r?r={features:[e],id:t}:t!==r.id?(o.push(this._calculateAndAppendAggregateItem(r)),r={features:[e],id:t}):r.features.push(e)}o.length>=t&&(yield o,o=[])}null!=r&&(o.push(this._calculateAndAppendAggregateItem(r)),yield o)}async queryStat(e){return{calculated:!1}}async canQueryAggregate(e){return!1}async queryAggregate(e){throw new d("NeverReach")}_reformulateWhereClauseWithoutStatsFields(e){for(const t of this._decodedStatsFields)e=y(e,t.tofieldname,g(t.workingexpr,0),this._parent.getFieldsIndex());return e}_reformulateWhereClauseWithoutGroupByFields(e){for(const t of this._decodedGroupByFields)t.tofieldname!==t.name&&(e=y(e,t.tofieldname,g(t.expression,0),this._parent.getFieldsIndex()));return e}_reformulateOrderClauseWithoutGroupByFields(e){const t=[];for(const s of this._decodedGroupByFields)s.tofieldname!==s.name&&t.push({field:s.tofieldname,newfield:s.name});return t.length>0?e.replaceFields(t):e}_calculateFieldStat(e,t,s){const i=[];for(const r of e.features)if(null!==t.workingexpr){const e=t.workingexpr.calculateValue(r);null!==e&&(e instanceof A||e instanceof G?i.push(e.toNumber()):e instanceof x?i.push(e.toMilliseconds()):i.push(e))}else i.push(null);s.attributes[t.tofieldname]=S(t.typeofstat,[i])}_calculateAndAppendAggregateItem(t){const s={attributes:{}};for(const e of this._decodedGroupByFields){const i=e.singlefield?t.features[0].attributes[e.singlefield]:I.convertValueToStorageFormat(e.expression.calculateValue(t.features[0]),e.sqlType);s.attributes[e.tofieldname]=i}for(const e of this._decodedStatsFields)this._calculateFieldStat(t,e,s);return new e(s)}_generateAggregateHash(e){let t="";for(const s of this._decodedGroupByFields){const i=s.singlefield?e.attributes[s.singlefield]:s.expression.calculateValue(e);t+=null==i?":":":"+i.toString()}return w(t,b.String)}async getFeatureByObjectId(){return null}}export{T as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{neverAbortedSignal as r}from"../../arcadeEnvironment.js";import{a2 as e}from"../../../chunks/languageUtils.js";import{throwIfCancelled as t}from"../support/errorsupport.js";import{FeatureSet as a}from"../support/FeatureSet.js";import{defaultMaxRecords as s}from"../support/shared.js";import{splitIntoChunks as o}from"../../../core/arrayUtils.js";class n extends a{constructor(r){super(r),this.declaredClass="esri.arcade.featureset.actions.OrderBy",this._maxProcessing=100,this._orderbyclause=r.orderbyclause,this._parent=r.parentfeatureset}async _queryAll(){return(await this.query({abortSignal:r})).features}async query(r){await this._ensureLoaded();const e=await this._parent.query({...r,orderBy:null==r.orderBy?this._orderbyclause:r.orderBy});return t(r.abortSignal),!1===e.ordered?{...e,ordered:!0,features:this._sortFeatures(e.features,r.abortSignal)}:e}async*_sortFeatures(r,a){const s=[];for await(const o of r)s.push(o),await e(),t(a);const n=s.flat();this._orderbyclause.order(n);for(const e of o(n,this._maxQueryRate()))yield e}async queryStat(r){const e=await this._parent.queryStat(r);return!1===e.calculated?null==r.where&&null==r.spatialFilter?this._manualStat(r.stat,r.field,r.limit??s,r.abortSignal):{calculated:!1}:e}async canQueryAggregate(r){return this._parent.canQueryAggregate(r)}async queryAggregate(r){return this._parent.queryAggregate(r)}getFieldsIndex(){return this._parent.getFieldsIndex()}}export{n as default};
5
+ import{neverAbortedSignal as r}from"../../arcadeEnvironment.js";import{a2 as e}from"../../../chunks/languageUtils.js";import{throwIfCancelled as t}from"../support/errorsupport.js";import{FeatureSet as a}from"../support/FeatureSet.js";import{defaultMaxRecords as s}from"../support/shared.js";import{splitIntoChunks as o}from"../../../core/arrayUtils.js";class n extends a{constructor(r){super(),this.declaredClass="esri.arcade.featureset.actions.OrderBy",this._maxProcessing=100,this._parent=r.parentfeatureset,this._orderByClause=r.orderbyclause}async _queryAll(){return(await this.query({abortSignal:r})).features}async query(r){await this._ensureLoaded();const e=await this._parent.query({...r,orderBy:null==r.orderBy?this._orderByClause:r.orderBy});return t(r.abortSignal),!1===e.ordered?{...e,ordered:!0,features:this._sortFeatures(e.features,r.abortSignal)}:e}async*_sortFeatures(r,a){const s=[];for await(const o of r)s.push(o),await e(),t(a);const n=s.flat();this._orderByClause.order(n);for(const e of o(n,this._maxQueryRate()))yield e}async queryStat(r){const e=await this._parent.queryStat(r);return e.calculated?e:null==r.where&&null==r.spatialFilter?this._manualStat(r.stat,r.field,r.limit??s,r.abortSignal):{calculated:!1}}async canQueryAggregate(r){return this._parent.canQueryAggregate(r)}async queryAggregate(r){return this._parent.queryAggregate(r)}getFieldsIndex(){return this._parent.getFieldsIndex()}}export{n as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{neverAbortedSignal as t}from"../../arcadeEnvironment.js";import{shapeExtent as e}from"../../kernel.js";import{throwIfCancelled as r,FeatureSetError as a}from"../support/errorsupport.js";import{FeatureSet as i}from"../support/FeatureSet.js";import{defaultMaxRecords as s}from"../support/shared.js";import{invokeRemoteGeometryOp as l}from"../../geometry/operatorsWorkerConnection.js";class o extends i{constructor(t){super(t),this._relation="",this._relationString="",this.declaredClass="esri.arcade.featureset.actions.SpatialFilter",this._relationString=t.relationString,this._parent=t.parentfeatureset,this._maxProcessing=40,this._relation=t.relation,this._relationGeom=t.relationGeom}get _spatialFilter(){return{relation:"esriSpatialRelRelation"!==this._relation?this._relation:`esriSpatialRelRelation:${this._relationString}`,geometry:this._relationGeom}}async _queryAll(){return(await this.query({abortSignal:t})).features}async query(t){await this._ensureLoaded();const e=await this._parent.query({...t,spatialFilter:this._spatialFilter});return r(t.abortSignal),{...e,spatialFilterApplied:null==t.spatialFilter,features:e.spatialFilterApplied?e.features:this._applySpatialFilter(e.features,t.abortSignal)}}async*_applySpatialFilter(t,e){for await(const a of t){r(e);const t=[];for(const e of a)await this.executeSpatialRelationTest(e)&&t.push(e);t.length>0&&(yield t)}}async queryStat(t){if(null!=t.spatialFilter)return{calculated:!1};const e=await this._parent.queryStat({...t,spatialFilter:this._spatialFilter});return!1===e.calculated?null==t.where&&null==t.spatialFilter?this._manualStat(t.stat,t.field,t.limit??s,t.abortSignal):{calculated:!1}:e}async canQueryAggregate(t){return null==t.spatialFilter&&(null!==this._parent&&this._parent.canQueryAggregate({...t,spatialFilter:this._spatialFilter}))}async queryAggregate(t){if(null===this._parent)throw new a("NeverReach");return this._parent.queryAggregate({...t,spatialFilter:this._spatialFilter})}async executeSpatialRelationTest(t){if(null==t.geometry)return!1;switch(this._relation){case"esriSpatialRelEnvelopeIntersects":{const r=e(this._relationGeom),a=e(t.geometry);return null!=r&&null!=a&&l("intersects",[r.toJSON(),a.toJSON()])}case"esriSpatialRelIntersects":return l("intersects",[this._relationGeom.toJSON(),t.geometry.toJSON()]);case"esriSpatialRelContains":return l("contains",[this._relationGeom.toJSON(),t.geometry.toJSON()]);case"esriSpatialRelOverlaps":return l("overlaps",[this._relationGeom.toJSON(),t.geometry.toJSON()]);case"esriSpatialRelWithin":return l("within",[this._relationGeom.toJSON(),t.geometry.toJSON()]);case"esriSpatialRelTouches":return l("touches",[this._relationGeom.toJSON(),t.geometry.toJSON()]);case"esriSpatialRelCrosses":return l("crosses",[this._relationGeom.toJSON(),t.geometry.toJSON()]);case"esriSpatialRelRelation":return l("relate",[this._relationGeom.toJSON(),t.geometry.toJSON(),this._relationString??""]);default:return!1}}getFieldsIndex(){return this._parent.getFieldsIndex()}}export{o as default};
5
+ import{neverAbortedSignal as t}from"../../arcadeEnvironment.js";import{shapeExtent as e}from"../../kernel.js";import{throwIfCancelled as r,FeatureSetError as a}from"../support/errorsupport.js";import{FeatureSet as i}from"../support/FeatureSet.js";import{defaultMaxRecords as s}from"../support/shared.js";import{invokeRemoteGeometryOp as l}from"../../geometry/operatorsWorkerConnection.js";import{neverReachedSilent as o}from"../../../core/compilerUtils.js";class n extends i{constructor(t){super(),this.declaredClass="esri.arcade.featureset.actions.SpatialFilter",this._maxProcessing=40,this._parent=t.parentfeatureset,this._relation=t.relation,this._relationString=t.relationString??"",this._relationGeom=t.relationGeom}get _spatialFilter(){return{relation:"esriSpatialRelRelation"!==this._relation?this._relation:`esriSpatialRelRelation:${this._relationString}`,geometry:this._relationGeom}}async _queryAll(){return(await this.query({abortSignal:t})).features}async query(t){await this._ensureLoaded();const e=await this._parent.query({...t,spatialFilter:this._spatialFilter});return r(t.abortSignal),{...e,spatialFilterApplied:null==t.spatialFilter,features:e.spatialFilterApplied?e.features:this._applySpatialFilter(e.features,t.abortSignal)}}async*_applySpatialFilter(t,e){for await(const a of t){r(e);const t=[];for(const e of a)await this._executeSpatialRelationTest(e)&&t.push(e);t.length>0&&(yield t)}}async queryStat(t){if(null!=t.spatialFilter)return{calculated:!1};const e=await this._parent.queryStat({...t,spatialFilter:this._spatialFilter});return e.calculated?e:null==t.where&&null==t.spatialFilter?this._manualStat(t.stat,t.field,t.limit??s,t.abortSignal):{calculated:!1}}async canQueryAggregate(t){return null==t.spatialFilter&&this._parent.canQueryAggregate({...t,spatialFilter:this._spatialFilter})}async queryAggregate(t){if(null!=t.spatialFilter)throw new a("NeverReach");return this._parent.queryAggregate({...t,spatialFilter:this._spatialFilter})}async _executeSpatialRelationTest(t){if(null==t.geometry)return!1;switch(this._relation){case"esriSpatialRelEnvelopeIntersects":{const r=e(this._relationGeom),a=e(t.geometry);return null!=r&&null!=a&&l("intersects",[r.toJSON(),a.toJSON()])}case"esriSpatialRelIntersects":return l("intersects",[this._relationGeom.toJSON(),t.geometry.toJSON()]);case"esriSpatialRelContains":return l("contains",[this._relationGeom.toJSON(),t.geometry.toJSON()]);case"esriSpatialRelOverlaps":return l("overlaps",[this._relationGeom.toJSON(),t.geometry.toJSON()]);case"esriSpatialRelWithin":return l("within",[this._relationGeom.toJSON(),t.geometry.toJSON()]);case"esriSpatialRelTouches":return l("touches",[this._relationGeom.toJSON(),t.geometry.toJSON()]);case"esriSpatialRelCrosses":return l("crosses",[this._relationGeom.toJSON(),t.geometry.toJSON()]);case"esriSpatialRelRelation":return l("relate",[this._relationGeom.toJSON(),t.geometry.toJSON(),this._relationString]);default:return o(this._relation),!1}}getFieldsIndex(){return this._parent.getFieldsIndex()}}export{n as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{neverAbortedSignal as e}from"../../arcadeEnvironment.js";import{FeatureSetError as t}from"../support/errorsupport.js";import{FeatureSet as r}from"../support/FeatureSet.js";class a extends r{constructor(e){super(e),this._topnum=0,this.declaredClass="esri.arcade.featureset.actions.Top",this._maxProcessing=100,this._topnum=e.topnum,this._parent=e.parentfeatureset}async _queryAll(){return(await this.query({abortSignal:e})).features}async query(e){await this._ensureLoaded();const t=await this._parent.queryAll(e.abortSignal);return{filterApplied:null==e.where,spatialFilterApplied:null==e.spatialFilter,ordered:!1,features:this._limit(t,this._topnum)}}async*_limit(e,t){let r=t;for await(const a of e)if(r>=a.length?(r-=a.length,yield a):(yield a.slice(0,r),r=0),r<=0)break}async queryStat(e){return{calculated:!1}}async canQueryAggregate(e){return!1}async queryAggregate(e){throw new t("NeverReach")}getFieldsIndex(){return this._parent.getFieldsIndex()}}export{a as default};
5
+ import{neverAbortedSignal as e}from"../../arcadeEnvironment.js";import{FeatureSetError as t}from"../support/errorsupport.js";import{FeatureSet as r}from"../support/FeatureSet.js";async function*a(e,t){let r=t;for await(const a of e)if(r>=a.length?(r-=a.length,yield a):(yield a.slice(0,r),r=0),r<=0)break}class s extends r{constructor(e){super(),this.declaredClass="esri.arcade.featureset.actions.Top",this._maxProcessing=100,this._parent=e.parentfeatureset,this._limit=e.topnum}async _queryAll(){return(await this.query({abortSignal:e})).features}async query(e){await this._ensureLoaded();const t=await this._parent.queryAll(e.abortSignal);return{filterApplied:null==e.where,spatialFilterApplied:null==e.spatialFilter,ordered:!1,features:a(t,this._limit)}}async queryStat(e){return{calculated:!1}}async canQueryAggregate(e){return!1}async queryAggregate(e){throw new t("NeverReach")}getFieldsIndex(){return this._parent.getFieldsIndex()}}export{s as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{FeatureSetError as e}from"../support/errorsupport.js";import{FeatureSet as r,emptyFeaturesResult as t}from"../support/FeatureSet.js";import{defaultMaxRecords as s}from"../support/shared.js";class a extends r{constructor(e){super(e),this.declaredClass="esri.layers.featureset.sources.Empty",this._maxProcessing=1e3,this._parent=e.parentfeatureset,this._databaseType=0}async _queryAll(){return t.features}async query(e){return t}async queryStat(e){return await this._manualStat(e.stat,e.field,e.limit??s,e.abortSignal)}async canQueryAggregate(e){return!1}async queryAggregate(r){throw new e("NeverReach")}async queryAttachments(){return[]}}export{a as default};
5
+ import{FeatureSetError as e}from"../support/errorsupport.js";import{FeatureSet as r,emptyFeaturesResult as t}from"../support/FeatureSet.js";import{defaultMaxRecords as s}from"../support/shared.js";class a extends r{constructor(e){super(),this.declaredClass="esri.layers.featureset.sources.Empty",this._maxProcessing=1e3,this._parent=e.parentfeatureset,this._databaseType=0}async _queryAll(){return t.features}async query(e){return t}async queryStat(e){return await this._manualStat(e.stat,e.field,e.limit??s,e.abortSignal)}async canQueryAggregate(e){return!1}async queryAggregate(r){throw new e("NeverReach")}async queryAttachments(){return[]}}export{a as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import e from"../../../Graphic.js";import{id as t}from"../../../kernel.js";import r from"../../../request.js";import{neverAbortedSignal as i}from"../../arcadeEnvironment.js";import s from"../../Attachment.js";import a from"../../Dictionary.js";import{throwIfCancelled as l,FeatureSetError as n}from"../support/errorsupport.js";import{FeatureSet as o,emptyFeaturesResult as u}from"../support/FeatureSet.js";import{defaultMaxRecords as c,stableStringify as h,extractServiceUrl as y}from"../support/shared.js";import{toWhereClause as d,isSingleField as p}from"../support/sqlUtils.js";import{decodeStatType as m}from"../support/stats.js";import{sliceEquals as _}from"../../../core/arrayUtils.js";import{createMD5Hash as f,outputTypes as g}from"../../../core/MD5.js";import{sqlAnd as F}from"../../../core/sql.js";import w from"../../../core/sql/WhereClause.js";import{fromJSON as b}from"../../../geometry/support/jsonUtils.js";import S from"../../../layers/FeatureLayer.js";import{toQueryStringParameters as R}from"../../../rest/query/operations/queryRelatedRecords.js";import I from"../../../rest/support/AttachmentQuery.js";import q from"../../../rest/support/Query.js";import T from"../../../rest/support/StatisticDefinition.js";function v(e){if(0===e.length)throw new n("NeverReach");const t=[];for(let i=0;i<e.length;i++){const r=e[i],s=[`"${r.name.replaceAll('"','""')}" ${r.asc?">":"<"} @last_${i}`];for(let t=0;t<i;t++){const r=e[t];s.push(`"${r.name.replaceAll('"','""')}" = @last_${t}`)}t.push(s.join(" AND "))}const r=t.join(" OR ");return w.create(r)}function Q(e,t){null==e.clause&&(e.clause=v(e.keyFields));for(let r=0;r<e.keyFields.length;r++){const i=e.keyFields[r].name;e.clause.parameters[`last_${r}`]=t.attributes[i]}}class j extends o{constructor(e){super(e),this.declaredClass="esri.arcade.featureset.sources.FeatureLayerDynamic",this._removeGeometry=!1,this._overrideFields=null,this._requestStandardised=!1,this._useDefinitionExpression=!0,e.spatialReference&&(this.spatialReference=e.spatialReference),this._maxProcessing=1e3,this._layer=e.layer,void 0!==e.outFields&&(this._overrideFields=e.outFields),void 0!==e.includeGeometry&&(this._removeGeometry=!1===e.includeGeometry)}_maxQueryRate(){return c}get urlQueryPath(){return this._layer.parsedUrl.path||""}convertQueryToLruCacheKey(e){const t=this.urlQueryPath+","+h(e.toJSON());return f(t,g.String)}async loadImpl(){return!0===this._layer.loaded?(this._initialiseFeatureSet(),this):(await this._layer.load(),this._initialiseFeatureSet(),this)}_initialiseFeatureSet(){if(null==this.spatialReference&&(this.spatialReference=this._layer.spatialReference),this.geometryType=this._layer.geometryType??"",this.fields=this._layer.fields.slice(),this.hasZ=!0===this._layer?.capabilities?.data?.supportsZ,this.hasM=!0===this._layer?.capabilities?.data?.supportsM,null!==this._overrideFields)if(1===this._overrideFields.length&&"*"===this._overrideFields[0])this._overrideFields=null;else{const e=[],t=[];for(const r of this.fields)if("oid"===r.type)e.push(r),t.push(r.name);else for(const i of this._overrideFields)if(i.toLowerCase()===r.name.toLowerCase()){e.push(r),t.push(r.name);break}this.fields=e,this._overrideFields=t}if(this._layer.source&&this._layer.source.sourceJSON){const e=this._layer.source.sourceJSON.currentVersion;!0===this._layer.source.sourceJSON.useStandardizedQueries?(this._databaseType=1,null!=e&&e>=10.61&&(this._databaseType=0)):null!=e&&(e>=10.5&&(this._databaseType=1,this._requestStandardised=!0),e>=10.61&&(this._databaseType=0))}this.objectIdField=this._layer.objectIdField;for(const e of this.fields)"global-id"===e.type&&(this.globalIdField=e.name);this.subtypeField=this._layer.subtypeField??"",this.subtypes=this._layer.subtypes,this.typeIdField=("typeIdField"in this._layer?this._layer.typeIdField:null)??"",this.types="types"in this._layer?this._layer.types:null}async _runDatabaseProbe(e){await this._ensureLoaded();const t=new q;this.datesInUnknownTimezone&&(t.timeReferenceUnknownClient=!0),t.where=e.replace("OBJECTID",this._layer.objectIdField);try{return await this._layer.queryObjectIds(t),!0}catch(r){return!1}}_canUsePagination(){return!(!this._layer.capabilities||!this._layer.capabilities.query||!0!==this._layer.capabilities.query.supportsPagination)}_cacheableFeatureSetSourceKey(){return this._layer.url}get gdbVersion(){return this._layer&&this._layer.capabilities&&this._layer.capabilities.data&&this._layer.capabilities.data.isVersioned?this._layer.gdbVersion||"SDE.DEFAULT":""}nativeCapabilities(){return{title:this._layer.title??"",source:this,canQueryRelated:!0,capabilities:this._layer.capabilities,databaseType:this._databaseType,requestStandardised:this._requestStandardised}}async _queryAll(){return(await this.query({abortSignal:i})).features}async query(e){return await this._ensureLoaded(),this.isTable()&&null!=e.spatialFilter?u:this._canUsePagination()?this._queryUsingPaging(e):this._queryUsingIdSetTraversal(e)}async _queryUsingPaging(e){let t="",r=!1;null!=e.orderBy&&this._layer.capabilities&&this._layer.capabilities.query&&!0===this._layer.capabilities.query.supportsOrderBy&&(t=e.orderBy.constructClause(),r=!0);const i=await this.databaseType(),s=null==e.where?null==e.spatialFilter?"1=1":"":d(e.where,i);let a=this._maxQueryRate();const l=this._layer.capabilities?.query.maxRecordCount;null!=l&&l<a&&(a=l);const n=!0!==this._removeGeometry,o=this._overrideFields??this._fieldsIncludingObjectId(["*"]),u=this._createQuery();return u.where=F(u.where,s),null!=e.spatialFilter&&(u.spatialRelationship=this._makeRelationshipEnum(e.spatialFilter.relation),u.relationParameter=this._makeRelationshipParam(e.spatialFilter.relation),u.geometry=e.spatialFilter.geometry),u.orderByFields=""!==t?t.split(","):null,u.outFields=o,u.returnGeometry=n,u.outSpatialReference=this.spatialReference,{ordered:r,filterApplied:!0,spatialFilterApplied:!0,features:this._queryPaginated(u,a,e.abortSignal)}}async*_queryPaginated(e,t,r){let i;e.num=t,e.start=0;do{l(r),i=await this.executeQuery(e,"execute"),yield i.features,e.start+=t}while(void 0===i.exceededTransferLimit&&i.features.length===t||!1!==i.exceededTransferLimit)}async _queryUsingIdSetTraversal(e){let t="",r=!1;null!=e.orderBy&&this._layer.capabilities&&this._layer.capabilities.query&&!0===this._layer.capabilities.query.supportsOrderBy&&(t=e.orderBy.constructClause(),r=!0);const i=await this.databaseType(),s=null==e.where?null==e.spatialFilter?"1=1":"":d(e.where,i),a=this._createQuery();a.where=F(a.where,s),null!=e.spatialFilter&&(a.spatialRelationship=this._makeRelationshipEnum(e.spatialFilter.relation),a.relationParameter=this._makeRelationshipParam(e.spatialFilter.relation),a.geometry=e.spatialFilter.geometry),a.orderByFields=""!==t?t.split(","):null,a.outSpatialReference=this.spatialReference;const n=await this.executeQuery(a,"executeForIds");if(l(e.abortSignal),null==n||n.length<=0)return u;let o=this._maxQueryRate();const c=this._layer.capabilities?.query.maxRecordCount;null!=c&&c<o&&(o=c);const h=this._createQuery();return a.outFields=this._overrideFields??this._fieldsIncludingObjectId(["*"]),a.returnGeometry=!0!==this._removeGeometry,a.outSpatialReference=this.spatialReference,{ordered:r,filterApplied:!0,spatialFilterApplied:!0,features:this._traverseIdSet(h,n,o,e.abortSignal)}}async*_traverseIdSet(e,t,r,i){for(let s=0;s<t.length;s+=r){e.objectIds=t.slice(s,s+r),l(i);const a=await this.executeQuery(e,"execute");yield a.features}}async queryStat(e){await this._ensureLoaded();const t=this._layer.capabilities?.query,r=!!t?.supportsSqlExpression,i=!!t?.supportsStatistics,s=!!t?.supportsDistinct,a=e.stat;if("count"===a)return s?this._queryCount(e):{calculated:!1};const l=e.field;if(null==l)return{calculated:!1};if(!1===i||!1===p(l)&&!1===r||!1===l.isStandardized)return null!=e.spatialFilter||null!=e.where?{calculated:!1}:this._manualStat(a,l,e.limit??c,e.abortSignal);if("distinct"===a)return!1===s?null!=e.spatialFilter||null!=e.where?{calculated:!1}:this._manualStat(a,l,e.limit??c,e.abortSignal):{calculated:!1};const o=await this.databaseType();if(this.isTable()&&null!=e.spatialFilter)return{calculated:!0,result:null};const u=this._createQuery();u.where=F(u.where,null==e.where?null==e.spatialFilter?"1=1":"":d(e.where,o)),null!=e.spatialFilter&&(u.spatialRelationship=this._makeRelationshipEnum(e.spatialFilter.relation),u.relationParameter=this._makeRelationshipParam(e.spatialFilter.relation),u.geometry=e.spatialFilter.geometry);const h=new T;h.statisticType=m(a),h.onStatisticField=d(l,o),h.outStatisticFieldName="ARCADE_STAT_RESULT",u.returnGeometry=!1;let y="ARCADE_STAT_RESULT";u.outStatistics=[h];const _=await this.executeQuery(u,"execute");if(!_.hasOwnProperty("features")||0===_.features.length)throw new n("InvalidStatResponse");let f=!1;const g=_.fields??[];for(let n=0;n<g.length;n++)if("ARCADE_STAT_RESULT"===g[n].name.toUpperCase()){y=g[n].name,"date"===g[n].type&&(f=!0);break}if(f){let e=_.features[0].attributes[y];return null!==e&&(e=new Date(_.features[0].attributes[y])),{calculated:!0,result:e}}return{calculated:!0,result:_.features[0].attributes[y]}}async _queryCount(e){const t=await this.databaseType();if(this.isTable()&&null!=e.spatialFilter)return{calculated:!0,result:0};const r=this._createQuery();r.where=F(r.where,null==e.where?null==e.spatialFilter?"1=1":"":d(e.where,t)),null!=e.spatialFilter&&(r.spatialRelationship=this._makeRelationshipEnum(e.spatialFilter.relation),r.relationParameter=this._makeRelationshipParam(e.spatialFilter.relation),r.geometry=e.spatialFilter.geometry),r.returnGeometry=!1;return{calculated:!0,result:await this.executeQuery(r,"executeForCount")}}async canQueryAggregate(e){await this._ensureLoaded();let t=!1;const r=this._layer.capabilities?.query,i=!0===r?.supportsSqlExpression;if(null!=r&&!0===r.supportsStatistics&&!0===r.supportsOrderBy&&(t=!0),t)for(let s=0;s<e.statistics.length-1;s++)(!1===e.statistics[s].workingexpr?.isStandardized||!1===p(e.statistics[s].workingexpr)&&!1===i)&&(t=!1);return!1!==t}async queryAggregate(e){if(await this._ensureLoaded(),this.isTable()&&null!=e.spatialFilter)return u;const t=await this.databaseType(),r=e.groupBy,i=e.orderBy,s=e.statistics;let a=null;if(!this._layer.capabilities.query.supportsPaginationOnAggregatedQueries){const e=this.getFieldsIndex();a={keyFields:r.map((t,r)=>({name:e.normalizeFieldName(t)??t,asc:null==i||1===i._directions[r]}))}}let l="",n=!1;null!=i&&!0===this._layer.capabilities?.query?.supportsOrderBy&&(null==a||_(r,0,r.length,i._fields,0,Math.min(i._fields.length,r.length),(e,t)=>e.toLowerCase()===t.toLowerCase()))&&(l=i.constructClause(),n=!0),""===l&&(l=r.join(","));const o=[];for(let u=0;u<s.length;u++){const e=new T;e.onStatisticField=null!==s[u].workingexpr?d(s[u].workingexpr,t):"",e.outStatisticFieldName=s[u].field,e.statisticType=s[u].toStatisticsName(),o.push(e)}let c=this._maxQueryRate();const h=this._layer.capabilities?.query.maxRecordCount;null!=h&&h<c&&(c=h);const y=null==e.where?null==e.spatialFilter?"1=1":"":d(e.where,t),p=this._createQuery();return p.where=F(p.where,y),null!=e.spatialFilter&&(p.spatialRelationship=this._makeRelationshipEnum(e.spatialFilter.relation),p.relationParameter=this._makeRelationshipParam(e.spatialFilter.relation),p.geometry=e.spatialFilter.geometry),p.orderByFields=""!==l?l.split(","):null,p.outFields=["*"],p.outStatistics=o,p.groupByFieldsForStatistics=r,p.returnGeometry=!1,null==a?{filterApplied:!0,spatialFilterApplied:!0,ordered:n,features:this._queryPaginated(p,c,e.abortSignal)}:{filterApplied:!0,spatialFilterApplied:!0,ordered:n,features:this._queryKeysetPaginated(p,a,e.abortSignal)}}async*_queryKeysetPaginated(e,t,r){const i=e.where;for(;;){if(null!=t.clause){if(!this._layer.capabilities.query.supportsOrderBy)throw new n("NotImplemented");e.where=F(i,d(t.clause,await this.databaseType()))}const s=await this.executeQuery(e,"execute");if(l(r),!s.hasOwnProperty("features"))throw new n("InvalidStatResponse");if(yield s.features,0===s.features.length||!s.exceededTransferLimit)break;Q(t,s.features.at(-1))}}_createQuery(){const e=this._layer.createQuery();return e.returnZ=this.hasZ,e.returnM=this.hasM,this.datesInUnknownTimezone&&(e.timeReferenceUnknownClient=!0),this._requestStandardised&&(e.sqlFormat="standard"),this._useDefinitionExpression?"subtype-group"===this._layer.type&&(e.where=this._layer.definitionExpression):e.where=null,e}executeQuery(e,t){const r="execute"===t?this._layer.queryFeatures.bind(this._layer):"executeForCount"===t?this._layer.queryFeatureCount.bind(this._layer):this._layer.queryObjectIds.bind(this._layer);let i=null;if(this.recentlyUsedQueries){const t=this.convertQueryToLruCacheKey(e);i=this.recentlyUsedQueries.getFromCache(t),null===i&&(i=r(e),this.recentlyUsedQueries.addToCache(t,i),i=i.catch(e=>{throw this.recentlyUsedQueries?.removeFromCache(t),e}))}return this.featureSetQueryInterceptor&&this.featureSetQueryInterceptor.preLayerQueryCallback({layer:this._layer,query:e,method:t}),null===i&&(i=r(e)),i}_fieldsIncludingObjectId(e){if(null===e)return[this.objectIdField];const t=e.slice();if(t.includes("*"))return t;let r=!1;for(const i of t)if(i.toUpperCase()===this.objectIdField.toUpperCase()){r=!0;break}return!1===r&&t.push(this.objectIdField),t}isTable(){return this._layer.isTable||null===this._layer.geometryType||"table"===this._layer.type||""===this._layer.geometryType||"esriGeometryNull"===this._layer.geometryType}_makeRelationshipEnum(e){if(e.includes("esriSpatialRelRelation"))return"relation";switch(e){case"esriSpatialRelRelation":return"relation";case"esriSpatialRelIntersects":return"intersects";case"esriSpatialRelContains":return"contains";case"esriSpatialRelOverlaps":return"overlaps";case"esriSpatialRelWithin":return"within";case"esriSpatialRelTouches":return"touches";case"esriSpatialRelCrosses":return"crosses";case"esriSpatialRelEnvelopeIntersects":return"envelope-intersects"}return e}_makeRelationshipParam(e){return e.includes("esriSpatialRelRelation")?e.split(":")[1]:""}static create(e,t,r,i,s){const a=new S({url:e,outFields:null===t?["*"]:t});return new j({layer:a,spatialReference:r,lrucache:i,interceptor:s})}relationshipMetaData(){return this._layer&&this._layer.source&&this._layer.source.sourceJSON?.relationships?this._layer.source.sourceJSON.relationships:[]}serviceUrl(){return y(this._layer.parsedUrl.path)}async queryAttachments(e,t,r,i,l){function n(e){const t=e.capabilities;return t?.data.supportsAttachment&&t?.operations.supportsQueryAttachments}const o=this._layer;if(n(o)){const n={objectIds:[e],returnMetadata:l};(t&&t>0||r&&r>0)&&(n.size=[t&&t>0?t:0,r&&r>0?r:t+1]),i&&i.length>0&&(n.attachmentTypes=i),this.featureSetQueryInterceptor&&this.featureSetQueryInterceptor.preLayerQueryCallback({layer:o,query:n,method:"attachments"});const u=await o.queryAttachments(new I(n)),c=[];return u&&u[e]&&u[e].forEach(t=>{const r=this._layer.parsedUrl.path+"/"+e.toString()+"/attachments/"+t.id.toString();let i=null;l&&t.exifInfo&&(i=a.convertJsonToArcade(t.exifInfo,"system",!0)),c.push(new s(t.id,t.name,t.contentType,t.size,r,i,t.keywords??null))}),c}return[]}async queryRelatedFeatures(t){const i=R(t);i.f="json",this._requestStandardised&&(i.sqlFormat="standard"),this.featureSetQueryInterceptor&&this.featureSetQueryInterceptor.preRequestCallback({layer:this._layer,queryPayload:i,method:"relatedrecords",url:this._layer.parsedUrl.path+"/queryRelatedRecords"});const s=await r(this._layer.parsedUrl.path+"/queryRelatedRecords",{responseType:"json",query:i});if(s.data){const t={},r=s.data;if(r?.relatedRecordGroups){const i=r.spatialReference;for(const s of r.relatedRecordGroups){const a=s.objectId,l=[];for(const t of s.relatedRecords){t.geometry&&(t.geometry.spatialReference=i);const r=new e({geometry:t.geometry?b(t.geometry):null,attributes:t.attributes});l.push(r)}t[a]={features:l,exceededTransferLimit:!0===r.exceededTransferLimit}}}return t}throw new n("InvalidRequest")}async getFeatureByObjectId(e,t){const r=this._createQuery();r.outFields=t,r.returnGeometry=!1,r.outSpatialReference=this.spatialReference,r.where=F(r.where,this.objectIdField+"="+e.toString()),this.featureSetQueryInterceptor&&this.featureSetQueryInterceptor.preLayerQueryCallback({layer:this._layer,query:r,method:"execute"});const i=await this._layer.queryFeatures(r);return 1===i.features.length?i.features[0]:null}async getIdentityUser(){await this.load();const e=t?.findCredential(this._layer.url);return e?e.userId:null}async getOwningSystemUrl(){await this.load();const e=t?.findServerInfo(this._layer.url);if(e)return e.owningSystemUrl;let i=this._layer.url;const s=i.toLowerCase().indexOf("/rest/services");if(i=s>-1?i.slice(0,s):i,i){i+="/rest/info";try{const e=await r(i,{query:{f:"json"}});let t="";return e.data?.owningSystemUrl&&(t=e.data.owningSystemUrl),t}catch(a){return""}}return""}getDataSourceFeatureSet(){const e=new j({layer:this._layer,spatialReference:this.spatialReference??void 0,outFields:this._overrideFields??void 0,includeGeometry:!this._removeGeometry,lrucache:this.recentlyUsedQueries??void 0,interceptor:this.featureSetQueryInterceptor??void 0});return e._useDefinitionExpression=!1,e}get preferredTimeZone(){return this._layer.preferredTimeZone??null}get dateFieldsTimeZone(){return this._layer.dateFieldsTimeZone??null}get datesInUnknownTimezone(){return this._layer.datesInUnknownTimezone??!1}get editFieldsInfo(){return this._layer.editFieldsInfo??null}get timeInfo(){return this._layer.timeInfo??null}async getFeatureSetInfo(){if(this.fsetInfo)return this.fsetInfo;let e=null,t="serviceItemId"in this._layer?this._layer.serviceItemId:null;const i=this._layer.parsedUrl?.path??null;if(i){const s=await r(i,{responseType:"json",query:{f:"json"}});e=s?.data?.name??null,t=s?.data?.serviceItemId??null}const s=this._layer.title&&null!==(this._layer.parent??null);return this.featureSetInfo={layerId:this._layer.layerId,layerName:""===e?null:e,itemId:""===t?null:t,serviceLayerUrl:""===i?null:i,webMapLayerId:s?this._layer.id??null:null,webMapLayerTitle:s?this._layer.title??null:null,className:null,objectClassId:null},this.fsetInfo}}export{j as default};
5
+ import e from"../../../Graphic.js";import{id as t}from"../../../kernel.js";import r from"../../../request.js";import{neverAbortedSignal as i}from"../../arcadeEnvironment.js";import s from"../../Attachment.js";import a from"../../Dictionary.js";import{throwIfCancelled as l,FeatureSetError as n}from"../support/errorsupport.js";import{FeatureSet as o,emptyFeaturesResult as u}from"../support/FeatureSet.js";import{defaultMaxRecords as c,stableStringify as h,extractServiceUrl as y}from"../support/shared.js";import{toWhereClause as d,isSingleField as p}from"../support/sqlUtils.js";import{decodeStatType as _}from"../support/stats.js";import{sliceEquals as m}from"../../../core/arrayUtils.js";import{createMD5Hash as f,outputTypes as F}from"../../../core/MD5.js";import{sqlAnd as g}from"../../../core/sql.js";import w from"../../../core/sql/WhereClause.js";import{fromJSON as S}from"../../../geometry/support/jsonUtils.js";import b from"../../../layers/FeatureLayer.js";import{toQueryStringParameters as R}from"../../../rest/query/operations/queryRelatedRecords.js";import I from"../../../rest/support/AttachmentQuery.js";import q from"../../../rest/support/Query.js";import T from"../../../rest/support/StatisticDefinition.js";function Q(e){if(0===e.length)throw new n("NeverReach");const t=[];for(let i=0;i<e.length;i++){const r=e[i],s=[`"${r.name.replaceAll('"','""')}" ${r.asc?">":"<"} @last_${i}`];for(let t=0;t<i;t++){const r=e[t];s.push(`"${r.name.replaceAll('"','""')}" = @last_${t}`)}t.push(s.join(" AND "))}const r=t.join(" OR ");return w.create(r)}function v(e,t){null==e.clause&&(e.clause=Q(e.keyFields));for(let r=0;r<e.keyFields.length;r++){const i=e.keyFields[r].name;e.clause.parameters[`last_${r}`]=t.attributes[i]}}class j extends o{constructor(e){super(),this.declaredClass="esri.arcade.featureset.sources.FeatureLayerDynamic",this._removeGeometry=!1,this._overrideFields=null,this._requestStandardised=!1,this._useDefinitionExpression=!0,this._recentlyUsedQueries=null,this._featureSetQueryInterceptor=null,this._featureSetInfo=null,this._maxProcessing=1e3,this._layer=e.layer,e.spatialReference&&(this.spatialReference=e.spatialReference),void 0!==e.outFields&&(this._overrideFields=e.outFields),void 0!==e.includeGeometry&&(this._removeGeometry=!1===e.includeGeometry),e.lrucache&&(this._recentlyUsedQueries=e.lrucache),e.interceptor&&(this._featureSetQueryInterceptor=e.interceptor)}_maxQueryRate(){return c}get urlQueryPath(){return this._layer.parsedUrl.path||""}convertQueryToLruCacheKey(e){const t=this.urlQueryPath+","+h(e.toJSON());return f(t,F.String)}async loadImpl(){return!0===this._layer.loaded?(this._initialiseFeatureSet(),this):(await this._layer.load(),this._initialiseFeatureSet(),this)}_initialiseFeatureSet(){if(null==this.spatialReference&&(this.spatialReference=this._layer.spatialReference),this.geometryType=this._layer.geometryType??"",this.fields=this._layer.fields.slice(),this.hasZ=!0===this._layer.capabilities?.data?.supportsZ,this.hasM=!0===this._layer.capabilities?.data?.supportsM,null!==this._overrideFields)if(1===this._overrideFields.length&&"*"===this._overrideFields[0])this._overrideFields=null;else{const e=[],t=[];for(const r of this.fields)if("oid"===r.type)e.push(r),t.push(r.name);else for(const i of this._overrideFields)if(i.toLowerCase()===r.name.toLowerCase()){e.push(r),t.push(r.name);break}this.fields=e,this._overrideFields=t}if(this._layer.source&&this._layer.source.sourceJSON){const e=this._layer.source.sourceJSON.currentVersion;!0===this._layer.source.sourceJSON.useStandardizedQueries?(this._databaseType=1,null!=e&&e>=10.61&&(this._databaseType=0)):null!=e&&(e>=10.5&&(this._databaseType=1,this._requestStandardised=!0),e>=10.61&&(this._databaseType=0))}this.objectIdField=this._layer.objectIdField;for(const e of this.fields)"global-id"===e.type&&(this.globalIdField=e.name);this.subtypeField=this._layer.subtypeField??"",this.subtypes=this._layer.subtypes,this.typeIdField=("typeIdField"in this._layer?this._layer.typeIdField:null)??"",this.types="types"in this._layer?this._layer.types:null}async _runDatabaseProbe(e){await this._ensureLoaded();const t=new q;this.datesInUnknownTimezone&&(t.timeReferenceUnknownClient=!0),t.where=e.replace("OBJECTID",this._layer.objectIdField);try{return await this._layer.queryObjectIds(t),!0}catch{return!1}}_canUsePagination(){return!(!this._layer.capabilities||!this._layer.capabilities.query||!0!==this._layer.capabilities.query.supportsPagination)}_cacheableFeatureSetSourceKey(){return this._layer.url}get gdbVersion(){return this._layer&&this._layer.capabilities&&this._layer.capabilities.data&&this._layer.capabilities.data.isVersioned?this._layer.gdbVersion||"SDE.DEFAULT":""}nativeCapabilities(){return{title:this._layer.title??"",source:this,canQueryRelated:!0,capabilities:this._layer.capabilities,databaseType:this._databaseType,requestStandardised:this._requestStandardised}}async _queryAll(){return(await this.query({abortSignal:i})).features}async query(e){return await this._ensureLoaded(),this.isTable()&&null!=e.spatialFilter?u:this._canUsePagination()?this._queryUsingPaging(e):this._queryUsingIdSetTraversal(e)}async _queryUsingPaging(e){let t="",r=!1;null!=e.orderBy&&!0===this._layer.capabilities?.query?.supportsOrderBy&&(t=e.orderBy.constructClause(),r=!0);const i=await this.databaseType(),s=null==e.where?null==e.spatialFilter?"1=1":"":d(e.where,i);let a=this._maxQueryRate();const l=this._layer.capabilities?.query.maxRecordCount;null!=l&&l<a&&(a=l);const n=!0!==this._removeGeometry,o=this._overrideFields??this._fieldsIncludingObjectId(["*"]),u=this._createQuery();return u.where=g(u.where,s),null!=e.spatialFilter&&(u.spatialRelationship=this._makeRelationshipEnum(e.spatialFilter.relation),u.relationParameter=this._makeRelationshipParam(e.spatialFilter.relation),u.geometry=e.spatialFilter.geometry),u.orderByFields=""!==t?t.split(","):null,u.outFields=o,u.returnGeometry=n,u.outSpatialReference=this.spatialReference,{ordered:r,filterApplied:!0,spatialFilterApplied:!0,features:this._queryPaginated(u,a,e.abortSignal)}}async*_queryPaginated(e,t,r){let i;e.num=t,e.start=0;do{l(r),i=await this.executeQuery(e,"execute"),yield i.features,e.start+=t}while(void 0===i.exceededTransferLimit&&i.features.length===t||!1!==i.exceededTransferLimit)}async _queryUsingIdSetTraversal(e){let t="",r=!1;null!=e.orderBy&&this._layer.capabilities&&this._layer.capabilities.query&&!0===this._layer.capabilities.query.supportsOrderBy&&(t=e.orderBy.constructClause(),r=!0);const i=await this.databaseType(),s=null==e.where?null==e.spatialFilter?"1=1":"":d(e.where,i),a=this._createQuery();a.where=g(a.where,s),null!=e.spatialFilter&&(a.spatialRelationship=this._makeRelationshipEnum(e.spatialFilter.relation),a.relationParameter=this._makeRelationshipParam(e.spatialFilter.relation),a.geometry=e.spatialFilter.geometry),a.orderByFields=""!==t?t.split(","):null,a.outSpatialReference=this.spatialReference;const n=await this.executeQuery(a,"executeForIds");if(l(e.abortSignal),null==n||n.length<=0)return u;let o=this._maxQueryRate();const c=this._layer.capabilities?.query.maxRecordCount;null!=c&&c<o&&(o=c);const h=this._createQuery();return a.outFields=this._overrideFields??this._fieldsIncludingObjectId(["*"]),a.returnGeometry=!0!==this._removeGeometry,a.outSpatialReference=this.spatialReference,{ordered:r,filterApplied:!0,spatialFilterApplied:!0,features:this._traverseIdSet(h,n,o,e.abortSignal)}}async*_traverseIdSet(e,t,r,i){for(let s=0;s<t.length;s+=r){e.objectIds=t.slice(s,s+r),l(i);const a=await this.executeQuery(e,"execute");yield a.features}}async queryStat(e){await this._ensureLoaded();const t=this._layer.capabilities?.query,r=!!t?.supportsSqlExpression,i=!!t?.supportsStatistics,s=!!t?.supportsDistinct,a=_(e.stat);if("count"===a)return s?this._queryCount(e):{calculated:!1};const l=e.field;if(null==l)return{calculated:!1};if(!1===i||!1===p(l)&&!1===r||!1===l.isStandardized)return null!=e.spatialFilter||null!=e.where?{calculated:!1}:this._manualStat(e.stat,l,e.limit??c,e.abortSignal);if("distinct"===a)return!1===s?null!=e.spatialFilter||null!=e.where?{calculated:!1}:this._manualStat(a,l,e.limit??c,e.abortSignal):{calculated:!1};const o=await this.databaseType();if(this.isTable()&&null!=e.spatialFilter)return{calculated:!0,result:null};const u=this._createQuery();u.where=g(u.where,null==e.where?null==e.spatialFilter?"1=1":"":d(e.where,o)),null!=e.spatialFilter&&(u.spatialRelationship=this._makeRelationshipEnum(e.spatialFilter.relation),u.relationParameter=this._makeRelationshipParam(e.spatialFilter.relation),u.geometry=e.spatialFilter.geometry);const h=new T;h.statisticType=a,h.onStatisticField=d(l,o),h.outStatisticFieldName="ARCADE_STAT_RESULT",u.returnGeometry=!1;let y="ARCADE_STAT_RESULT";u.outStatistics=[h];const m=await this.executeQuery(u,"execute");if(!m.hasOwnProperty("features")||0===m.features.length)throw new n("InvalidStatResponse");let f=!1;const F=m.fields??[];for(const n of F)if("ARCADE_STAT_RESULT"===n.name.toUpperCase()){y=n.name,"date"===n.type&&(f=!0);break}const w=m.features[0].attributes[y];return{calculated:!0,result:f&&null!=w?new Date(w):w}}async _queryCount(e){const t=await this.databaseType();if(this.isTable()&&null!=e.spatialFilter)return{calculated:!0,result:0};const r=this._createQuery();r.where=g(r.where,null==e.where?null==e.spatialFilter?"1=1":"":d(e.where,t)),null!=e.spatialFilter&&(r.spatialRelationship=this._makeRelationshipEnum(e.spatialFilter.relation),r.relationParameter=this._makeRelationshipParam(e.spatialFilter.relation),r.geometry=e.spatialFilter.geometry),r.returnGeometry=!1;return{calculated:!0,result:await this.executeQuery(r,"executeForCount")}}async canQueryAggregate(e){await this._ensureLoaded();let t=!1;const r=this._layer.capabilities?.query,i=!0===r?.supportsSqlExpression;if(null!=r&&!0===r.supportsStatistics&&!0===r.supportsOrderBy&&(t=!0),t)for(const s of e.statistics)(!1===s.workingexpr?.isStandardized||!1===p(s.workingexpr)&&!1===i)&&(t=!1);return t}async queryAggregate(e){if(await this._ensureLoaded(),this.isTable()&&null!=e.spatialFilter)return u;const t=await this.databaseType(),r=e.groupBy,i=e.orderBy;let s=null;if(!this._layer.capabilities.query.supportsPaginationOnAggregatedQueries){const e=this.getFieldsIndex();s={keyFields:r.map((t,r)=>({name:e.normalizeFieldName(t)??t,asc:null==i||1===i._directions[r]}))}}let a="",l=!1;null!=i&&!0===this._layer.capabilities?.query?.supportsOrderBy&&(null==s||m(r,0,r.length,i._fields,0,Math.min(i._fields.length,r.length),(e,t)=>e.toLowerCase()===t.toLowerCase()))&&(a=i.constructClause(),l=!0),""===a&&(a=r.join(","));const n=e.statistics.map(e=>new T({onStatisticField:null!==e.workingexpr?d(e.workingexpr,t):"",outStatisticFieldName:e.field,statisticType:e.toStatisticsName()}));let o=this._maxQueryRate();const c=this._layer.capabilities?.query.maxRecordCount;null!=c&&c<o&&(o=c);const h=null==e.where?null==e.spatialFilter?"1=1":"":d(e.where,t),y=this._createQuery();return y.where=g(y.where,h),null!=e.spatialFilter&&(y.spatialRelationship=this._makeRelationshipEnum(e.spatialFilter.relation),y.relationParameter=this._makeRelationshipParam(e.spatialFilter.relation),y.geometry=e.spatialFilter.geometry),y.orderByFields=""!==a?a.split(","):null,y.outFields=["*"],y.outStatistics=n,y.groupByFieldsForStatistics=r,y.returnGeometry=!1,null==s?{filterApplied:!0,spatialFilterApplied:!0,ordered:l,features:this._queryPaginated(y,o,e.abortSignal)}:{filterApplied:!0,spatialFilterApplied:!0,ordered:l,features:this._queryKeysetPaginated(y,s,e.abortSignal)}}async*_queryKeysetPaginated(e,t,r){const i=e.where;for(;;){if(null!=t.clause){if(!this._layer.capabilities.query.supportsOrderBy)throw new n("NotImplemented");e.where=g(i,d(t.clause,await this.databaseType()))}const s=await this.executeQuery(e,"execute");if(l(r),!s.hasOwnProperty("features"))throw new n("InvalidStatResponse");if(yield s.features,0===s.features.length||!s.exceededTransferLimit)break;v(t,s.features.at(-1))}}_createQuery(){const e=this._layer.createQuery();return e.returnZ=this.hasZ,e.returnM=this.hasM,this.datesInUnknownTimezone&&(e.timeReferenceUnknownClient=!0),this._requestStandardised&&(e.sqlFormat="standard"),this._useDefinitionExpression?"subtype-group"===this._layer.type&&(e.where=this._layer.definitionExpression):e.where=null,e}executeQuery(e,t){const r="execute"===t?this._layer.queryFeatures.bind(this._layer):"executeForCount"===t?this._layer.queryFeatureCount.bind(this._layer):this._layer.queryObjectIds.bind(this._layer);let i=null;if(this._recentlyUsedQueries){const t=this.convertQueryToLruCacheKey(e);i=this._recentlyUsedQueries.getFromCache(t),null===i&&(i=r(e),this._recentlyUsedQueries.addToCache(t,i),i=i.catch(e=>{throw this._recentlyUsedQueries?.removeFromCache(t),e}))}return this._featureSetQueryInterceptor&&this._featureSetQueryInterceptor.preLayerQueryCallback({layer:this._layer,query:e,method:t}),null===i&&(i=r(e)),i}_fieldsIncludingObjectId(e){if(null===e)return[this.objectIdField];const t=e.slice();if(t.includes("*"))return t;let r=!1;for(const i of t)if(i.toUpperCase()===this.objectIdField.toUpperCase()){r=!0;break}return r||t.push(this.objectIdField),t}isTable(){return this._layer.isTable||null===this._layer.geometryType||"table"===this._layer.type||""===this._layer.geometryType||"esriGeometryNull"===this._layer.geometryType}_makeRelationshipEnum(e){if(e.includes("esriSpatialRelRelation"))return"relation";switch(e){case"esriSpatialRelRelation":return"relation";case"esriSpatialRelIntersects":return"intersects";case"esriSpatialRelContains":return"contains";case"esriSpatialRelOverlaps":return"overlaps";case"esriSpatialRelWithin":return"within";case"esriSpatialRelTouches":return"touches";case"esriSpatialRelCrosses":return"crosses";case"esriSpatialRelEnvelopeIntersects":return"envelope-intersects"}return e}_makeRelationshipParam(e){return e.includes("esriSpatialRelRelation")?e.split(":")[1]:""}static create(e,t,r,i,s){const a=new b({url:e,outFields:null===t?["*"]:t});return new j({layer:a,spatialReference:r,lrucache:i,interceptor:s})}relationshipMetadata(){return this._layer&&this._layer.source&&this._layer.source.sourceJSON?.relationships?this._layer.source.sourceJSON.relationships:[]}serviceUrl(){return y(this._layer.parsedUrl.path)}async queryAttachments(e,t,r,i,l){function n(e){const t=e.capabilities;return t?.data.supportsAttachment&&t?.operations.supportsQueryAttachments}const o=this._layer;if(!n(o))return[];const u=new I({objectIds:[e],returnMetadata:l});(t&&t>0||r&&r>0)&&(u.size=[t&&t>0?t:0,r&&r>0?r:t+1]),i&&i.length>0&&(u.attachmentTypes=i),this._featureSetQueryInterceptor&&this._featureSetQueryInterceptor.preLayerQueryCallback({layer:o,query:u,method:"attachments"});const c=await o.queryAttachments(u);return c?.[e]?c[e].map(t=>{const r=`${this._layer.parsedUrl.path}/${e}/attachments/${t.id}`;let i=null;return l&&t.exifInfo&&(i=a.convertJsonToArcade(t.exifInfo,"system",!0)),new s(t.id,t.name,t.contentType,t.size,r,i,t.keywords??null)}):[]}async queryRelatedFeatures(t){const i=R(t);i.f="json",this._requestStandardised&&(i.sqlFormat="standard"),this._featureSetQueryInterceptor&&this._featureSetQueryInterceptor.preRequestCallback({layer:this._layer,queryPayload:i,method:"relatedrecords",url:this._layer.parsedUrl.path+"/queryRelatedRecords"});const s=await r(this._layer.parsedUrl.path+"/queryRelatedRecords",{responseType:"json",query:i});if(s.data){const t={},r=s.data;if(r?.relatedRecordGroups){const i=r.spatialReference,s=!0===r.exceededTransferLimit;for(const a of r.relatedRecordGroups){const r=a.relatedRecords.map(t=>(t.geometry&&(t.geometry.spatialReference=i),new e({geometry:t.geometry?S(t.geometry):null,attributes:t.attributes})));t[a.objectId]={features:r,exceededTransferLimit:s}}}return t}throw new n("InvalidRequest")}async getFeatureByObjectId(e,t){const r=this._createQuery();r.outFields=t,r.returnGeometry=!1,r.outSpatialReference=this.spatialReference,r.where=g(r.where,this.objectIdField+"="+e.toString()),this._featureSetQueryInterceptor&&this._featureSetQueryInterceptor.preLayerQueryCallback({layer:this._layer,query:r,method:"execute"});const i=await this._layer.queryFeatures(r);return 1===i.features.length?i.features[0]:null}async getIdentityUser(){await this.load();const e=t?.findCredential(this._layer.url);return e?e.userId:null}async getOwningSystemUrl(){await this.load();const e=t?.findServerInfo(this._layer.url);if(e)return e.owningSystemUrl??"";let i=this._layer.url;const s=i.toLowerCase().indexOf("/rest/services");if(i=s>-1?i.slice(0,s):i,i){i+="/rest/info";try{const e=await r(i,{query:{f:"json"}});let t="";return e.data?.owningSystemUrl&&(t=e.data.owningSystemUrl),t}catch{return""}}return""}getDataSourceFeatureSet(){const e=new j({layer:this._layer,spatialReference:this.spatialReference??void 0,outFields:this._overrideFields??void 0,includeGeometry:!this._removeGeometry,lrucache:this._recentlyUsedQueries??void 0,interceptor:this._featureSetQueryInterceptor??void 0});return e._useDefinitionExpression=!1,e}get preferredTimeZone(){return this._layer.preferredTimeZone??null}get dateFieldsTimeZone(){return this._layer.dateFieldsTimeZone??null}get datesInUnknownTimezone(){return this._layer.datesInUnknownTimezone??!1}get editFieldsInfo(){return this._layer.editFieldsInfo??null}get timeInfo(){return this._layer.timeInfo??null}async getFeatureSetInfo(){if(this._featureSetInfo)return this._featureSetInfo;let e=null,t="serviceItemId"in this._layer?this._layer.serviceItemId:null;const i=this._layer.parsedUrl?.path??null;if(i){const s=await r(i,{responseType:"json",query:{f:"json"}});e=s?.data?.name??null,t=s?.data?.serviceItemId??null}const s=this._layer.title&&null!==(this._layer.parent??null);return this._featureSetInfo={layerId:this._layer.layerId,layerName:""===e?null:e,itemId:""===t?null:t,serviceLayerUrl:""===i?null:i,webMapLayerId:s?this._layer.id??null:null,webMapLayerTitle:s?this._layer.title??null:null,className:null,objectClassId:null},this._featureSetInfo}}export{j as default};