@arcgis/core 4.34.0-next.34 → 4.34.0-next.36

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 (306) hide show
  1. package/Graphic.js +1 -1
  2. package/analysis/ElevationProfileAnalysis.d.ts +4 -0
  3. package/analysis/ElevationProfileAnalysis.js +5 -0
  4. package/analysis/ElevationProfileLine.d.ts +4 -0
  5. package/analysis/ElevationProfileLine.js +5 -0
  6. package/analysis/ElevationProfileLineChartOptions.d.ts +4 -0
  7. package/analysis/ElevationProfileLineChartOptions.js +5 -0
  8. package/analysis/ElevationProfileLineGround.d.ts +4 -0
  9. package/analysis/ElevationProfileLineGround.js +5 -0
  10. package/analysis/ElevationProfileLineInput.d.ts +4 -0
  11. package/analysis/ElevationProfileLineInput.js +5 -0
  12. package/analysis/ElevationProfileLineQuery.d.ts +4 -0
  13. package/analysis/ElevationProfileLineQuery.js +5 -0
  14. package/analysis/ElevationProfileLineScene.d.ts +4 -0
  15. package/analysis/ElevationProfileLineScene.js +5 -0
  16. package/analysis/ElevationProfileLineViewOptions.d.ts +4 -0
  17. package/analysis/ElevationProfileLineViewOptions.js +5 -0
  18. package/analysis/ElevationProfileUnits.d.ts +4 -0
  19. package/analysis/ElevationProfileUnits.js +5 -0
  20. package/analysis/support/elevationProfileLineTypes.js +5 -0
  21. package/arcade/ArcadeDate.js +1 -1
  22. package/arcade/ArcadeModuleResolver.js +1 -1
  23. package/arcade/arcadeAsyncRuntime.js +1 -1
  24. package/arcade/arcadeCompiler.js +1 -1
  25. package/arcade/arcadeRuntime.js +1 -1
  26. package/arcade/compilerUtils.js +5 -0
  27. package/arcade/containerUtils.js +1 -1
  28. package/arcade/featureset/actions/GroupBy.js +1 -1
  29. package/arcade/functions/convertdirection.js +1 -1
  30. package/arcade/functions/date.js +1 -1
  31. package/arcade/functions/feature.js +1 -1
  32. package/arcade/functions/featuresetbase.js +1 -1
  33. package/arcade/functions/featuresetgeom.js +1 -1
  34. package/arcade/functions/featuresetstring.js +1 -1
  35. package/arcade/functions/fieldStats.js +1 -1
  36. package/arcade/functions/geomasync.js +1 -1
  37. package/arcade/functions/geometry.js +1 -1
  38. package/arcade/functions/geomsync.js +1 -1
  39. package/arcade/functions/knowledgegraph.js +1 -1
  40. package/arcade/functions/maths.js +1 -1
  41. package/arcade/functions/string.js +1 -1
  42. package/arcade/functions/track.js +1 -1
  43. package/arcade/geometry/functions.js +1 -1
  44. package/arcade/languageUtils.js +1 -1
  45. package/arcade.js +1 -1
  46. package/assets/esri/core/workers/RemoteClient.js +1 -1
  47. package/assets/esri/core/workers/chunks/0550e775677597f3752c.js +1 -0
  48. package/assets/esri/core/workers/chunks/{b4b30a7f1b673461dc55.js → 0997e09fe5b0aba1f804.js} +1 -1
  49. package/assets/esri/core/workers/chunks/0c0080b652cf8afc4e6b.js +1 -0
  50. package/assets/esri/core/workers/chunks/152128775b4740e779ab.js +1 -0
  51. package/assets/esri/core/workers/chunks/{847455bf4fc33d6e6efc.js → 1dc410bc070cabb7198d.js} +1 -1
  52. package/assets/esri/core/workers/chunks/1e58b1e191498417c21d.js +1 -0
  53. package/assets/esri/core/workers/chunks/2032b649350a75ba294f.js +1 -0
  54. package/assets/esri/core/workers/chunks/{55a763662bad03ae6bae.js → 209c70ba2925171ef742.js} +1 -1
  55. package/assets/esri/core/workers/chunks/2105d2cc75e75bf8f1c0.js +1 -0
  56. package/assets/esri/core/workers/chunks/236fc659747e812f6424.js +1 -0
  57. package/assets/esri/core/workers/chunks/2c29f8a708a03cb703ab.js +1 -0
  58. package/assets/esri/core/workers/chunks/{94a3474e3f45efa4a4fe.js → 2c816d3a737e39e6eb84.js} +1 -1
  59. package/assets/esri/core/workers/chunks/40b0c5368b8322498189.js +1 -0
  60. package/assets/esri/core/workers/chunks/{4778acd0cfaf0cebeec7.js → 439128f23fa091633d2d.js} +1 -1
  61. package/assets/esri/core/workers/chunks/{ddaaff5d6036a5eed50f.js → 44116cf0bd4d6a127c96.js} +1 -1
  62. package/assets/esri/core/workers/chunks/4c54239974a5847b8fdd.js +1 -0
  63. package/assets/esri/core/workers/chunks/4fb13252a985131d3dae.js +1 -0
  64. package/assets/esri/core/workers/chunks/{b89aacec211c66e3a011.js → 5d8c64693830506c8776.js} +1 -1
  65. package/assets/esri/core/workers/chunks/5f995450f720483fcffa.js +1 -0
  66. package/assets/esri/core/workers/chunks/{5d0c92aaa5891e6cb8f0.js → 641ca71d7c1a07bde66a.js} +1 -1
  67. package/assets/esri/core/workers/chunks/{b78d00c4e493086741e1.js → 7d25f57299c642e727a6.js} +1 -1
  68. package/assets/esri/core/workers/chunks/81be8d23b8dfa4937eaf.js +1 -0
  69. package/assets/esri/core/workers/chunks/8b7f6f2d1692b6b6dbd5.js +1 -0
  70. package/assets/esri/core/workers/chunks/{0ec7b5f1a614a86ad3db.js → 948ecf0bfbc886ec3b52.js} +1 -1
  71. package/assets/esri/core/workers/chunks/9f43736d6d80c8e858b2.js +1 -0
  72. package/assets/esri/core/workers/chunks/a36be186ad10200c420c.js +1 -0
  73. package/assets/esri/core/workers/chunks/a44f17397d8589433dae.js +1 -0
  74. package/assets/esri/core/workers/chunks/a53f2529b7067c28f320.js +1 -0
  75. package/assets/esri/core/workers/chunks/a6b6915b7321f77f765f.js +1 -0
  76. package/assets/esri/core/workers/chunks/aa12ba96fb8c91105473.js +1 -0
  77. package/assets/esri/core/workers/chunks/ab73df4f809430db6249.js +1 -0
  78. package/assets/esri/core/workers/chunks/ae7f1499912c86973921.js +1 -0
  79. package/assets/esri/core/workers/chunks/b331543767c35e5edcc6.js +1 -0
  80. package/assets/esri/core/workers/chunks/b98a049561b12a0555b7.js +1 -0
  81. package/assets/esri/core/workers/chunks/bf60d4da0dff1e14da8e.js +1 -0
  82. package/assets/esri/core/workers/chunks/{4784af2b04fafacfcc1b.js → c6077a893d5b5c34a46c.js} +1 -1
  83. package/assets/esri/core/workers/chunks/{a809042fdce7ced2a415.js → cc3ca1729af33688c1e3.js} +1 -1
  84. package/assets/esri/core/workers/chunks/cd150c7e1516134c7437.js +1 -0
  85. package/assets/esri/core/workers/chunks/cde79c3644166d4798a8.js +1 -0
  86. package/assets/esri/core/workers/chunks/{181f8bbe670b4468307a.js → ce8f0ed9179c0d314df8.js} +1 -1
  87. package/assets/esri/core/workers/chunks/d4cadde4a9cbfe2c51d8.js +1 -0
  88. package/assets/esri/core/workers/chunks/{ac30cf2f9a94597f7665.js → d6b2ab614f308db50c4a.js} +2 -2
  89. package/assets/esri/core/workers/chunks/dab82564928265b9f22d.js +1 -0
  90. package/assets/esri/core/workers/chunks/dec9656997683ef01ba6.js +1 -0
  91. package/assets/esri/core/workers/chunks/e892ed8b0b990d7eba28.js +1 -0
  92. package/assets/esri/core/workers/chunks/e897c5ce83db8a71b0a2.js +1 -0
  93. package/assets/esri/core/workers/chunks/{41071e672dcddec47492.js → f4e9640306f64b1af7a3.js} +1 -1
  94. package/assets/esri/core/workers/chunks/fa01d418237d7fa67efc.js +1 -0
  95. package/assets/esri/core/workers/chunks/ff736cb5a9fd18368244.js +1 -0
  96. package/chunks/arcade.js +1 -1
  97. package/chunks/array.js +1 -1
  98. package/chunks/languageUtils.js +1 -1
  99. package/config.js +1 -1
  100. package/copyright.txt +27 -0
  101. package/core/BidiEngine.js +1 -1
  102. package/core/Promise.js +1 -1
  103. package/core/accessorSupport/ensureType.js +1 -1
  104. package/core/promiseUtils.js +1 -1
  105. package/core/sql/SqlInterval.js +1 -1
  106. package/core/sql/sqlDateParsingUtils.js +1 -1
  107. package/core/unitUtils.js +1 -1
  108. package/geometry/support/DoubleArray.js +1 -1
  109. package/geometry/support/coordinateSystem.js +1 -1
  110. package/graphic/BuildingGraphicOrigin.d.ts +4 -0
  111. package/graphic/BuildingGraphicOrigin.js +5 -0
  112. package/graphic/CSVGraphicOrigin.d.ts +4 -0
  113. package/graphic/CSVGraphicOrigin.js +5 -0
  114. package/graphic/CatalogGraphicOrigin.d.ts +4 -0
  115. package/graphic/CatalogGraphicOrigin.js +5 -0
  116. package/graphic/FeatureGraphicOrigin.d.ts +4 -0
  117. package/graphic/FeatureGraphicOrigin.js +5 -0
  118. package/graphic/GeoJSONGraphicOrigin.d.ts +4 -0
  119. package/graphic/GeoJSONGraphicOrigin.js +5 -0
  120. package/graphic/GraphicOrigin.d.ts +4 -0
  121. package/graphic/GraphicOrigin.js +5 -0
  122. package/graphic/IntegratedMesh3DTilesGraphicOrigin.d.ts +4 -0
  123. package/graphic/IntegratedMesh3DTilesGraphicOrigin.js +5 -0
  124. package/graphic/IntegratedMeshGraphicOrigin.d.ts +4 -0
  125. package/graphic/IntegratedMeshGraphicOrigin.js +5 -0
  126. package/graphic/OGCFeatureGraphicOrigin.d.ts +4 -0
  127. package/graphic/OGCFeatureGraphicOrigin.js +5 -0
  128. package/graphic/PointCloudGraphicOrigin.d.ts +4 -0
  129. package/graphic/PointCloudGraphicOrigin.js +5 -0
  130. package/graphic/SceneGraphicOrigin.d.ts +4 -0
  131. package/graphic/SceneGraphicOrigin.js +5 -0
  132. package/graphic/StreamGraphicOrigin.d.ts +4 -0
  133. package/graphic/StreamGraphicOrigin.js +5 -0
  134. package/graphic/VectorTileGraphicOrigin.d.ts +4 -0
  135. package/graphic/VectorTileGraphicOrigin.js +5 -0
  136. package/graphic/VoxelGraphicOrigin.d.ts +4 -0
  137. package/graphic/VoxelGraphicOrigin.js +5 -0
  138. package/graphic/WFSGraphicOrigin.d.ts +4 -0
  139. package/graphic/WFSGraphicOrigin.js +5 -0
  140. package/graphic/graphicOriginUtils.js +5 -0
  141. package/graphic/graphicOrigins.d.ts +14 -0
  142. package/graphic/graphicOrigins.js +5 -0
  143. package/graphic/isBuildingGraphicOrigin.js +5 -0
  144. package/graphic/isCSVGraphicOrigin.js +5 -0
  145. package/graphic/isCatalogGraphicOrigin.js +5 -0
  146. package/graphic/isFeatureGraphicOrigin.js +5 -0
  147. package/graphic/isGeoJSONGraphicOrigin.js +5 -0
  148. package/graphic/isIntegratedMesh3DTilesGraphicOrigin.js +5 -0
  149. package/graphic/isIntegratedMeshGraphicOrigin.js +5 -0
  150. package/graphic/isOGCFeatureGraphicOrigin.js +5 -0
  151. package/graphic/isPointCloudGraphicOrigin.js +5 -0
  152. package/graphic/isSceneGraphicOrigin.js +5 -0
  153. package/graphic/isStreamGraphicOrigin.js +5 -0
  154. package/graphic/isVectorTileGraphicOrigin.js +5 -0
  155. package/graphic/isVoxelGraphicOrigin.js +5 -0
  156. package/graphic/isWFSGraphicOrigin.js +5 -0
  157. package/interfaces.d.ts +1025 -63
  158. package/kernel.js +1 -1
  159. package/layers/graphics/controllers/FeatureTileController3D.js +1 -1
  160. package/layers/support/Field.js +1 -1
  161. package/layers/support/PromiseQueue.js +1 -1
  162. package/layers/support/featurePopupQueryUtils.js +1 -1
  163. package/layers/voxel/NCTimeParser.js +1 -1
  164. package/package.json +1 -1
  165. package/rest/knowledgeGraphService.js +1 -1
  166. package/smartMapping/statistics/support/utils.js +1 -1
  167. package/support/arcadeExpressionUtils.js +1 -1
  168. package/support/revision.js +1 -1
  169. package/symbols/support/svgUtils.js +1 -1
  170. package/views/2d/engine/vectorTiles/VectorTileFeatureIndex.js +1 -1
  171. package/views/2d/engine/webgl/FeatureDisplayList.js +1 -1
  172. package/views/2d/engine/webgl/Painter.js +1 -1
  173. package/views/2d/engine/webgl/mesh/templates/segmentUtils.js +1 -1
  174. package/views/2d/engine/webgl/shaderGraph/techniques/labels/LabelTechnique.js +1 -1
  175. package/views/2d/layers/FeatureLayerView2D.js +1 -1
  176. package/views/2d/layers/VectorTileLayerView2D.js +1 -1
  177. package/views/2d/layers/features/layerAdapters/CatalogFootprintLayerAdapter.js +1 -1
  178. package/views/3d/FocusAreasView.js +1 -1
  179. package/views/3d/analysis/AnalysisViewManager3D.js +1 -1
  180. package/views/3d/analysis/ElevationProfileAnalysisView3D.d.ts +4 -0
  181. package/views/3d/analysis/ElevationProfileAnalysisView3D.js +5 -0
  182. package/views/3d/analysis/Slice/SliceController.js +1 -1
  183. package/views/3d/analysis/Slice/sliceToolUtils.js +1 -1
  184. package/views/3d/analysis/VolumeMeasurement/CutFillVolumeMeasurementComputation.js +5 -0
  185. package/views/3d/analysis/VolumeMeasurement/CutFillVolumeMeasurementController.js +1 -1
  186. package/views/3d/environment/Clouds.js +1 -1
  187. package/views/3d/environment/CloudsRenderer.js +1 -1
  188. package/views/3d/environment/EnvironmentRenderer.js +1 -1
  189. package/views/3d/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTiles3D.js +1 -1
  190. package/views/3d/layers/BuildingComponentSublayerView3D.js +1 -1
  191. package/views/3d/layers/CSVLayerView3D.js +1 -1
  192. package/views/3d/layers/CatalogFootprintLayerView3D.js +1 -1
  193. package/views/3d/layers/FeatureLayerView3D.js +1 -1
  194. package/views/3d/layers/FeatureLikeLayerView3D.js +1 -1
  195. package/views/3d/layers/FlowSubView3D.js +1 -1
  196. package/views/3d/layers/GeoJSONLayerView3D.js +1 -1
  197. package/views/3d/layers/GraphicsView3D.js +1 -1
  198. package/views/3d/layers/GraphicsView3DDummyLayer.js +5 -0
  199. package/views/3d/layers/I3SMeshView3D.js +1 -1
  200. package/views/3d/layers/IntegratedMeshLayerView3D.js +1 -1
  201. package/views/3d/layers/OGCFeatureLayerView3D.js +1 -1
  202. package/views/3d/layers/PointCloudLayerView3D.js +1 -1
  203. package/views/3d/layers/SceneLayerGraphicsView3D.js +1 -1
  204. package/views/3d/layers/SceneLayerView3D.js +1 -1
  205. package/views/3d/layers/SceneLayerWorker.js +1 -1
  206. package/views/3d/layers/StreamLayerView3D.js +1 -1
  207. package/views/3d/layers/WFSLayerView3D.js +1 -1
  208. package/views/3d/layers/graphics/Deconflictor.js +1 -1
  209. package/views/3d/layers/graphics/ElevationQuery.js +1 -1
  210. package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
  211. package/views/3d/layers/graphics/Graphics3DElevationAlignment.js +1 -1
  212. package/views/3d/layers/graphics/Graphics3DFeatureProcessor.js +1 -1
  213. package/views/3d/layers/graphics/Graphics3DFrustumVisibility.js +1 -1
  214. package/views/3d/layers/graphics/Graphics3DScaleVisibility.js +1 -1
  215. package/views/3d/layers/graphics/GraphicsDeconflictor.js +1 -1
  216. package/views/3d/layers/graphics/LabelDeconflictor.js +1 -1
  217. package/views/3d/layers/graphics/Labeler.js +1 -1
  218. package/views/3d/layers/graphics/StreamController.js +1 -1
  219. package/views/3d/layers/graphics/pipeline/Feature3DPipeline.js +1 -1
  220. package/views/3d/layers/graphics/pipeline/Feature3DPipelineWorkerHandle.js +1 -1
  221. package/views/3d/layers/graphics/pipeline/Tile3DManager.js +1 -1
  222. package/views/3d/layers/i3s/I3SAsyncElevationUpdater.js +1 -1
  223. package/views/3d/layers/i3s/I3SClientNodeLoader.js +1 -1
  224. package/views/3d/layers/i3s/I3SFrameTask.js +1 -1
  225. package/views/3d/layers/support/FeatureTileDescriptor.js +1 -1
  226. package/views/3d/layers/support/FeatureTileFetcher3D.js +1 -1
  227. package/views/3d/layers/support/FeatureTileFetcher3DContext.js +1 -1
  228. package/views/3d/layers/support/FeatureTileMeasurements3D.js +1 -1
  229. package/views/3d/layers/support/FeatureTileTree3D.js +1 -1
  230. package/views/3d/layers/support/FeatureTileTree3DDebugger.js +1 -1
  231. package/views/3d/layers/support/FeatureTileVisibility3D.js +1 -1
  232. package/views/3d/layers/support/FeatureVisibilityFilter.js +1 -1
  233. package/views/3d/layers/support/StageLayerElevationProvider.js +1 -1
  234. package/views/3d/layers/support/Tiles3DIntersectionHandler.js +1 -1
  235. package/views/3d/state/ConstraintsManager.js +1 -1
  236. package/views/3d/support/StreamDataLoader.js +1 -1
  237. package/views/3d/support/flow/geometryUtils.js +1 -1
  238. package/views/3d/support/pointsOfInterest/CameraOnSurface.js +1 -1
  239. package/views/3d/support/pointsOfInterest/CenterOnSurface.js +1 -1
  240. package/views/3d/support/pointsOfInterest/Focus.js +1 -1
  241. package/views/3d/support/pointsOfInterest/SurfaceGeometryUpdates.js +1 -1
  242. package/views/3d/terrain/OverlayManager.js +1 -1
  243. package/views/3d/terrain/OverlayRenderer.js +1 -1
  244. package/views/3d/terrain/TerrainSurface.js +1 -1
  245. package/views/3d/terrain/Tile.js +1 -1
  246. package/views/3d/webgl-engine/Stage.js +1 -1
  247. package/views/3d/webgl-engine/core/FBOCache.js +1 -1
  248. package/views/3d/webgl-engine/effects/RenderPlugin.js +1 -1
  249. package/views/3d/webgl-engine/effects/RenderPluginManager.js +1 -1
  250. package/views/3d/webgl-engine/effects/focusArea/FocusAreaMaskNode.js +1 -1
  251. package/views/3d/webgl-engine/effects/geometry/RenderOccludedRenderNode.js +1 -1
  252. package/views/3d/webgl-engine/lib/GPUPointOcclusionQuery.js +1 -1
  253. package/views/3d/webgl-engine/lib/Object3D.js +1 -1
  254. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  255. package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
  256. package/views/3d/webgl-engine/lib/TextTextureAtlas.js +1 -1
  257. package/views/3d/webgl-engine/lib/depthRangeUtils.js +1 -1
  258. package/views/3d/webgl-engine/lib/lodRendering/LodRenderer.js +1 -1
  259. package/views/SceneView.js +1 -1
  260. package/views/analysis/ElevationProfileResult.d.ts +4 -0
  261. package/views/analysis/ElevationProfileResult.js +5 -0
  262. package/views/interactive/Tooltip.js +1 -1
  263. package/views/layers/FeatureLayerView.js +1 -1
  264. package/views/layers/support/popupUtils.js +1 -1
  265. package/views/support/ScheduledQueueProcessor.js +1 -1
  266. package/views/support/Scheduler.js +1 -1
  267. package/widgets/Editor/UpdateFeaturesWorkflow.js +1 -1
  268. package/widgets/ElevationProfile/ElevationProfileLine.d.ts +2 -2
  269. package/widgets/ElevationProfile/ElevationProfileLine.js +1 -1
  270. package/widgets/ElevationProfile/ElevationProfileLineGround.d.ts +2 -2
  271. package/widgets/ElevationProfile/ElevationProfileLineInput.d.ts +2 -2
  272. package/widgets/ElevationProfile/ElevationProfileLineQuery.d.ts +2 -2
  273. package/assets/esri/core/workers/chunks/07b2cc0f6b064277632f.js +0 -1
  274. package/assets/esri/core/workers/chunks/086f3bc5938bf9a37274.js +0 -1
  275. package/assets/esri/core/workers/chunks/13f9e92e7e5d44d9f95c.js +0 -1
  276. package/assets/esri/core/workers/chunks/140efe4735605258ecc9.js +0 -1
  277. package/assets/esri/core/workers/chunks/20aed6e1d9b6bf06a398.js +0 -1
  278. package/assets/esri/core/workers/chunks/28e04ef3575f164f611a.js +0 -1
  279. package/assets/esri/core/workers/chunks/2b76e716f478468b6798.js +0 -1
  280. package/assets/esri/core/workers/chunks/386ab72a45102c2d47f2.js +0 -1
  281. package/assets/esri/core/workers/chunks/39bff604d4b4a1295038.js +0 -1
  282. package/assets/esri/core/workers/chunks/3cd1ab26396052f17832.js +0 -1
  283. package/assets/esri/core/workers/chunks/3fb6146d914f9b410c2e.js +0 -1
  284. package/assets/esri/core/workers/chunks/432365fcd7becd508541.js +0 -1
  285. package/assets/esri/core/workers/chunks/439ce953a25b2776cb7f.js +0 -1
  286. package/assets/esri/core/workers/chunks/4c8d2334fcdb1354ff43.js +0 -1
  287. package/assets/esri/core/workers/chunks/50f58b2a933b56effd70.js +0 -1
  288. package/assets/esri/core/workers/chunks/5f321be63ed5447b04a1.js +0 -1
  289. package/assets/esri/core/workers/chunks/6006fbdb90c3bfc493a6.js +0 -1
  290. package/assets/esri/core/workers/chunks/674970c539d336a93ba1.js +0 -1
  291. package/assets/esri/core/workers/chunks/700c641347853b1034d9.js +0 -1
  292. package/assets/esri/core/workers/chunks/7c35c61e3673cf94cdfd.js +0 -1
  293. package/assets/esri/core/workers/chunks/7c75876a0c6460585055.js +0 -1
  294. package/assets/esri/core/workers/chunks/7d852617e91b51121ea7.js +0 -1
  295. package/assets/esri/core/workers/chunks/949dc266ac6f3505d357.js +0 -1
  296. package/assets/esri/core/workers/chunks/98f6d4ea026ed96fd3f3.js +0 -1
  297. package/assets/esri/core/workers/chunks/9bc6d974b0fce9db64ef.js +0 -1
  298. package/assets/esri/core/workers/chunks/a84af1b8b64b86b49bd3.js +0 -1
  299. package/assets/esri/core/workers/chunks/a9d83a442d8d7a376fc0.js +0 -1
  300. package/assets/esri/core/workers/chunks/abe2cdfc2eda46b00812.js +0 -1
  301. package/assets/esri/core/workers/chunks/ba1b21a90b257ac9a342.js +0 -1
  302. package/assets/esri/core/workers/chunks/c30adbead0ba4722acf9.js +0 -1
  303. package/assets/esri/core/workers/chunks/ca46f78aac1133d127fa.js +0 -1
  304. package/assets/esri/core/workers/chunks/dc5a8cf2a44a5ac201c5.js +0 -1
  305. package/assets/esri/core/workers/chunks/ea240d9e594bfbd8af68.js +0 -1
  306. package/assets/esri/core/workers/chunks/f9ad37dfbe1d14c6a352.js +0 -1
package/Graphic.js CHANGED
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as t}from"tslib";import e from"./PopupTemplate.js";import r from"./core/Clonable.js";import{deprecatedConstructorSignature as s}from"./core/deprecate.js";import i from"./core/JSONSupport.js";import o from"./core/Logger.js";import{when as a}from"./core/reactiveUtils.js";import{generateUID as l}from"./core/uid.js";import{property as n}from"./core/accessorSupport/decorators/property.js";import"./core/has.js";import"./core/RandomLCG.js";import{subclass as p}from"./core/accessorSupport/decorators/subclass.js";import{isSerializable as h}from"./core/support/jsonUtils.js";import{fromJSON as u}from"./geometry/support/jsonUtils.js";import{geometryTypes as m}from"./geometry/support/typeUtils.js";import{createFeatureIdFromLayer as g}from"./layers/graphics/data/createFeatureId.js";import{symbolTypes as y}from"./symbols/support/typeUtils.js";var c;function f(t){if(!t)return null;const e={};for(const r in t){const s=u(t[r]);s&&(e[r]=s)}return 0!==Object.keys(e).length?e:null}function b(t){if(null==t)return null;const e={};for(const r in t){const s=t[r];s&&(e[r]=s.toJSON())}return 0!==Object.keys(e).length?e:null}let d=class extends(r.ClonableMixin(i)){static{c=this}constructor(t){super(t),this.isAggregate=!1,this.layer=null,this.origin=null,this.sourceLayer=null,this._version=0,Object.defineProperty(this,"uid",{value:l(),configurable:!0}),Object.defineProperty(this,"_lastMeshTransform",{value:{},configurable:!0,writable:!0,enumerable:!1}),arguments.length>1&&s(o.getLogger(this),"Graphic",{version:"4.30"})}initialize(){this._watchMeshGeometryChanges()}set aggregateGeometries(t){const e=this._get("aggregateGeometries");JSON.stringify(e)!==JSON.stringify(t)&&this._set("aggregateGeometries",t)}set attributes(t){const e=this._get("attributes");e!==t&&(this._set("attributes",t),this._notifyLayer("attributes",e,t))}set geometry(t){const e=this._get("geometry");e!==t&&(this._set("geometry",t),"mesh"!==t?.type&&this._notifyLayer("geometry",e,t))}set popupTemplate(t){const e=this._get("popupTemplate");e!==t&&(this._set("popupTemplate",t),this._notifyLayer("popupTemplate",e,t))}set symbol(t){const e=this._get("symbol");e!==t&&(this._set("symbol",t),this._notifyLayer("symbol",e,t))}get version(){return this._version}set visible(t){const e=this._get("visible");e!==t&&(this._set("visible",t),this._notifyLayer("visible",e,t))}cloneShallow(){return new c({aggregateGeometries:this.aggregateGeometries,attributes:this.attributes,geometry:this.geometry,isAggregate:this.isAggregate,layer:this.layer,popupTemplate:this.popupTemplate,sourceLayer:this.sourceLayer,symbol:this.symbol,visible:this.visible,origin:this.origin})}getEffectivePopupTemplate(t=!1){if(this.popupTemplate)return this.popupTemplate;const e=this.origin&&"layer"in this.origin?this.origin.layer:null;for(const r of[e,this.sourceLayer,this.layer])if(r){if("popupTemplate"in r&&r.popupTemplate)return r.popupTemplate;if(t&&"defaultPopupTemplate"in r&&null!=r.defaultPopupTemplate)return r.defaultPopupTemplate}return null}getAttribute(t){return this.attributes?.[t]}setAttribute(t,e){if(this.attributes){const r=this.getAttribute(t);this.attributes[t]=e,this._notifyLayer("attributes",r,e,t)}else this.attributes={[t]:e}}getObjectId(){const t=this.sourceLayer??this.layer;return t?g(this,t):null}getGlobalId(){const t=this.sourceLayer??this.layer;return t&&"globalIdField"in t&&t.globalIdField?this.getAttribute(t.globalIdField):null}toJSON(){return{aggregateGeometries:b(this.aggregateGeometries),geometry:null!=this.geometry?this.geometry.toJSON():null,symbol:null!=this.symbol?this.symbol.toJSON():null,attributes:h(this.attributes)?this.attributes.toJSON():{...this.attributes},popupTemplate:this.popupTemplate?.toJSON()??null}}notifyMeshTransformChanged(t={}){const{geometry:e}=this;if("mesh"===e?.type){const r={origin:e.origin,transform:e.transform};this._notifyLayer("origin-transform",r,r,t.action)}}_notifyLayer(t,e,r,s){if(this._version++,!this.layer||!("graphicChanged"in this.layer))return;const i={graphic:this,property:t,oldValue:e,newValue:r};"origin-transform"===t&&(i.action=s),"attributes"===t&&(i.attributeName=s),this.layer.graphicChanged(i)}_watchMeshGeometryChanges(){this.addHandles([a(()=>"mesh"===this.geometry?.type&&this.geometry.vertexSpace.origin?{localMatrix:this.geometry.transform?.localMatrix,origin:this.geometry.vertexSpace.origin}:void 0,({localMatrix:t,origin:e})=>{this._lastMeshTransform.localMatrix===t&&this._lastMeshTransform.origin===e||(this._lastMeshTransform.localMatrix=t,this._lastMeshTransform.origin=e,this.notifyMeshTransformChanged())}),a(()=>"mesh"===this.geometry?.type?{vertexAttributes:this.geometry.vertexAttributes}:void 0,()=>{const t=this.geometry;"mesh"===t?.type&&t.vertexSpace.origin?(this._lastMeshTransform.localMatrix=t.transform?.localMatrix,this._lastMeshTransform.origin=t.vertexSpace.origin):(this._lastMeshTransform.localMatrix=void 0,this._lastMeshTransform.origin=void 0),this._notifyLayer("geometry",this.geometry,this.geometry)},{equals:(t,e)=>t===e,sync:!0})])}};t([n({value:null,json:{read:f}})],d.prototype,"aggregateGeometries",null),t([n({value:null})],d.prototype,"attributes",null),t([n({value:null,types:m,json:{read:u}})],d.prototype,"geometry",null),t([n({type:Boolean})],d.prototype,"isAggregate",void 0),t([n({clonable:!1})],d.prototype,"layer",void 0),t([n({clonable:"reference"})],d.prototype,"origin",void 0),t([n({type:e,value:null})],d.prototype,"popupTemplate",null),t([n({clonable:"reference"})],d.prototype,"sourceLayer",void 0),t([n({value:null,types:y})],d.prototype,"symbol",null),t([n({clonable:!1,json:{read:!1,write:!1}})],d.prototype,"_version",void 0),t([n({type:Boolean,value:!0})],d.prototype,"visible",null),d=c=t([p("esri.Graphic")],d);export{d as default};
5
+ import{__decorate as t}from"tslib";import e from"./PopupTemplate.js";import r from"./core/Clonable.js";import{deprecatedConstructorSignature as s}from"./core/deprecate.js";import i from"./core/JSONSupport.js";import o from"./core/Logger.js";import{when as a}from"./core/reactiveUtils.js";import{generateUID as l}from"./core/uid.js";import{property as n}from"./core/accessorSupport/decorators/property.js";import"./core/has.js";import"./core/RandomLCG.js";import{subclass as p}from"./core/accessorSupport/decorators/subclass.js";import{isSerializable as h}from"./core/support/jsonUtils.js";import{fromJSON as u}from"./geometry/support/jsonUtils.js";import{geometryTypes as m}from"./geometry/support/typeUtils.js";import{createFeatureIdFromLayer as g}from"./layers/graphics/data/createFeatureId.js";import{symbolTypes as y}from"./symbols/support/typeUtils.js";var c;function f(t){if(!t)return null;const e={};for(const r in t){const s=u(t[r]);s&&(e[r]=s)}return 0!==Object.keys(e).length?e:null}function b(t){if(null==t)return null;const e={};for(const r in t){const s=t[r];s&&(e[r]=s.toJSON())}return 0!==Object.keys(e).length?e:null}let d=class extends(r.ClonableMixin(i)){static{c=this}constructor(t){super(t),this.isAggregate=!1,this.layer=null,this.origin=null,this.sourceLayer=null,this._version=0,Object.defineProperty(this,"uid",{value:l(),configurable:!0}),Object.defineProperty(this,"_lastMeshTransform",{value:{},configurable:!0,writable:!0,enumerable:!1}),arguments.length>1&&s(o.getLogger(this),"Graphic",{version:"4.30"})}initialize(){this._watchMeshGeometryChanges()}set aggregateGeometries(t){const e=this._get("aggregateGeometries");JSON.stringify(e)!==JSON.stringify(t)&&this._set("aggregateGeometries",t)}set attributes(t){const e=this._get("attributes");e!==t&&(this._set("attributes",t),this._notifyLayer("attributes",e,t))}set geometry(t){const e=this._get("geometry");e!==t&&(this._set("geometry",t),"mesh"!==t?.type&&this._notifyLayer("geometry",e,t))}set popupTemplate(t){const e=this._get("popupTemplate");e!==t&&(this._set("popupTemplate",t),this._notifyLayer("popupTemplate",e,t))}set symbol(t){const e=this._get("symbol");e!==t&&(this._set("symbol",t),this._notifyLayer("symbol",e,t))}get version(){return this._version}set visible(t){const e=this._get("visible");e!==t&&(this._set("visible",t),this._notifyLayer("visible",e,t))}cloneShallow(){return new c({aggregateGeometries:this.aggregateGeometries,attributes:this.attributes,geometry:this.geometry,isAggregate:this.isAggregate,layer:this.layer,popupTemplate:this.popupTemplate,sourceLayer:this.sourceLayer,symbol:this.symbol,visible:this.visible,origin:this.origin})}getEffectivePopupTemplate(t=!1){if(this.popupTemplate)return this.popupTemplate;const e=this.origin&&"layer"in this.origin?this.origin.layer:null;for(const r of[e,this.sourceLayer,this.layer])if(r&&"object"==typeof r){if("popupTemplate"in r&&r.popupTemplate)return r.popupTemplate;if(t&&"defaultPopupTemplate"in r&&null!=r.defaultPopupTemplate)return r.defaultPopupTemplate}return null}getAttribute(t){return this.attributes?.[t]}setAttribute(t,e){if(this.attributes){const r=this.getAttribute(t);this.attributes[t]=e,this._notifyLayer("attributes",r,e,t)}else this.attributes={[t]:e}}getObjectId(){const t=this.sourceLayer??this.layer;return t?g(this,t):null}getGlobalId(){const t=this.sourceLayer??this.layer;return t&&"globalIdField"in t&&t.globalIdField?this.getAttribute(t.globalIdField):null}toJSON(){return{aggregateGeometries:b(this.aggregateGeometries),geometry:null!=this.geometry?this.geometry.toJSON():null,symbol:null!=this.symbol?this.symbol.toJSON():null,attributes:h(this.attributes)?this.attributes.toJSON():{...this.attributes},popupTemplate:this.popupTemplate?.toJSON()??null}}notifyMeshTransformChanged(t={}){const{geometry:e}=this;if("mesh"===e?.type){const r={origin:e.origin,transform:e.transform};this._notifyLayer("origin-transform",r,r,t.action)}}_notifyLayer(t,e,r,s){if(this._version++,!this.layer||!("graphicChanged"in this.layer))return;const i={graphic:this,property:t,oldValue:e,newValue:r};"origin-transform"===t&&(i.action=s),"attributes"===t&&(i.attributeName=s),this.layer.graphicChanged(i)}_watchMeshGeometryChanges(){this.addHandles([a(()=>"mesh"===this.geometry?.type&&this.geometry.vertexSpace.origin?{localMatrix:this.geometry.transform?.localMatrix,origin:this.geometry.vertexSpace.origin}:void 0,({localMatrix:t,origin:e})=>{this._lastMeshTransform.localMatrix===t&&this._lastMeshTransform.origin===e||(this._lastMeshTransform.localMatrix=t,this._lastMeshTransform.origin=e,this.notifyMeshTransformChanged())}),a(()=>"mesh"===this.geometry?.type?{vertexAttributes:this.geometry.vertexAttributes}:void 0,()=>{const t=this.geometry;"mesh"===t?.type&&t.vertexSpace.origin?(this._lastMeshTransform.localMatrix=t.transform?.localMatrix,this._lastMeshTransform.origin=t.vertexSpace.origin):(this._lastMeshTransform.localMatrix=void 0,this._lastMeshTransform.origin=void 0),this._notifyLayer("geometry",this.geometry,this.geometry)},{equals:(t,e)=>t===e,sync:!0})])}};t([n({value:null,json:{read:f}})],d.prototype,"aggregateGeometries",null),t([n({value:null})],d.prototype,"attributes",null),t([n({value:null,types:m,json:{read:u}})],d.prototype,"geometry",null),t([n({type:Boolean})],d.prototype,"isAggregate",void 0),t([n({clonable:!1})],d.prototype,"layer",void 0),t([n({clonable:"reference"})],d.prototype,"origin",void 0),t([n({type:e,value:null})],d.prototype,"popupTemplate",null),t([n({clonable:"reference"})],d.prototype,"sourceLayer",void 0),t([n({value:null,types:y})],d.prototype,"symbol",null),t([n({clonable:!1,json:{read:!1,write:!1}})],d.prototype,"_version",void 0),t([n({type:Boolean,value:!0})],d.prototype,"visible",null),d=c=t([p("esri.Graphic")],d);export{d as default};
@@ -0,0 +1,4 @@
1
+ import "../interfaces";
2
+
3
+ import ElevationProfileAnalysis = __esri.ElevationProfileAnalysis;
4
+ export default ElevationProfileAnalysis;
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
+ */
5
+ import{__decorate as o}from"tslib";import t from"../Graphic.js";import e from"./Analysis.js";import r from"./ElevationProfileLineGround.js";import i from"./ElevationProfileUnits.js";import{ElevationProfileLineCollection as s}from"./support/elevationProfileLineTypes.js";import{equals as p}from"../core/arrayUtils.js";import l from"../core/Collection.js";import{referenceSetter as n}from"../core/collectionUtils.js";import{property as a}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 f from"../geometry/Polyline.js";let m=class extends e{constructor(o){super(o),this.type="elevation-profile",this.input=void 0,this.units=new i,o?.profiles||(this.profiles=new l([new r]))}get profiles(){return this._get("profiles")}set profiles(o){const t=this._get("profiles"),e=o??new l;this._set("profiles",n(e,t))}get valid(){const o=this.input instanceof f?this.input:this.input?.geometry;return null!=o&&"polyline"===o.type&&o.paths.some(o=>o.length>1)}equals(o){return this===o||super.equals(o)&&this.input===o.input&&p(this.profiles.toArray(),o.profiles.toArray(),(o,t)=>o.equals(t))&&this.units.equals(o.units)}clear(){this.input=null}};o([a({type:["elevation-profile"]})],m.prototype,"type",void 0),o([a({type:[t,f],clonable:"reference"})],m.prototype,"input",void 0),o([a({type:s,nonNullable:!0})],m.prototype,"profiles",null),o([a({type:i,nonNullable:!0})],m.prototype,"units",void 0),o([a()],m.prototype,"valid",null),m=o([u("esri.analysis.ElevationProfileAnalysis")],m);const c=m;export{c as default};
@@ -0,0 +1,4 @@
1
+ import "../interfaces";
2
+
3
+ import ElevationProfileLine = __esri.ElevationProfileLine;
4
+ export default ElevationProfileLine;
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
+ */
5
+ import{__decorate as o}from"tslib";import t from"../Color.js";import e from"./ElevationProfileLineChartOptions.js";import i from"./ElevationProfileLineViewOptions.js";import r from"../core/Clonable.js";import{generateUUID as s}from"../core/uuid.js";import{property as l}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/Logger.js";import"../core/RandomLCG.js";import{subclass as p}from"../core/accessorSupport/decorators/subclass.js";let n=class extends r{constructor(o){super(o),this.type=null,this.id=s(),this.chartOptions=new e,this.color=new t("#000000"),this.enabled=!0,this.title=null,this.viewOptions=new i}equals(o){return this===o||this.type===o.type&&this.chartOptions.equals(o.chartOptions)&&this.color.equals(o.color)&&this.enabled===o.enabled&&this.title===o.title&&this.viewOptions.equals(o.viewOptions)}};o([l({nonNullable:!0})],n.prototype,"id",void 0),o([l({type:e,nonNullable:!0})],n.prototype,"chartOptions",void 0),o([l({type:t,nonNullable:!0})],n.prototype,"color",void 0),o([l()],n.prototype,"enabled",void 0),o([l()],n.prototype,"title",void 0),o([l({type:i,nonNullable:!0})],n.prototype,"viewOptions",void 0),n=o([p("esri.analysis.ElevationProfileLine")],n);const a=n;export{a as default};
@@ -0,0 +1,4 @@
1
+ import "../interfaces";
2
+
3
+ import ElevationProfileLineChartOptions = __esri.ElevationProfileLineChartOptions;
4
+ export default ElevationProfileLineChartOptions;
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
+ */
5
+ import{__decorate as o}from"tslib";import r from"../core/Clonable.js";import{property as s}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/Logger.js";import"../core/RandomLCG.js";import{subclass as e}from"../core/accessorSupport/decorators/subclass.js";let i=class extends r{constructor(o){super(o),this.lineVisible=!0}equals(o){return this===o||this.lineVisible===o.lineVisible}};o([s()],i.prototype,"lineVisible",void 0),i=o([e("esri.analysis.ElevationProfileLineChartOptions")],i);const t=i;export{t as default};
@@ -0,0 +1,4 @@
1
+ import "../interfaces";
2
+
3
+ import ElevationProfileLineGround = __esri.ElevationProfileLineGround;
4
+ export default ElevationProfileLineGround;
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
+ */
5
+ import{__decorate as o}from"tslib";import r from"../Color.js";import t from"./ElevationProfileLine.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 p=class extends t{constructor(o){super(o),this.type="ground",this.color=new r("#ff7f00")}};o([e()],p.prototype,"type",void 0),o([e({type:r,nonNullable:!0})],p.prototype,"color",void 0),p=o([s("esri.analysis.ElevationProfileLineGround")],p);const i=p;export{i as default};
@@ -0,0 +1,4 @@
1
+ import "../interfaces";
2
+
3
+ import ElevationProfileLineInput = __esri.ElevationProfileLineInput;
4
+ export default ElevationProfileLineInput;
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
+ */
5
+ import{__decorate as o}from"tslib";import r from"../Color.js";import t from"./ElevationProfileLine.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 p=class extends t{constructor(o){super(o),this.type="input",this.color=new r("#00c8c8")}};o([e()],p.prototype,"type",void 0),o([e({type:r,nonNullable:!0})],p.prototype,"color",void 0),p=o([s("esri.analysis.ElevationProfileLineInput")],p);const i=p;export{i as default};
@@ -0,0 +1,4 @@
1
+ import "../interfaces";
2
+
3
+ import ElevationProfileLineQuery = __esri.ElevationProfileLineQuery;
4
+ export default ElevationProfileLineQuery;
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
+ */
5
+ import{__decorate as o}from"tslib";import r from"../Color.js";import e from"./ElevationProfileLine.js";import{property as s}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/Logger.js";import"../core/RandomLCG.js";import{subclass as t}from"../core/accessorSupport/decorators/subclass.js";let p=class extends e{constructor(o){super(o),this.type="query",this.color=new r("#db334a"),this.source=null}equals(o){return this===o||super.equals(o)&&this.source===o.source}};o([s()],p.prototype,"type",void 0),o([s({type:r,nonNullable:!0})],p.prototype,"color",void 0),o([s({clonable:"reference"})],p.prototype,"source",void 0),p=o([t("esri.analysis.ElevationProfileLineQuery")],p);const i=p;export{i as default};
@@ -0,0 +1,4 @@
1
+ import "../interfaces";
2
+
3
+ import ElevationProfileLineScene = __esri.ElevationProfileLineScene;
4
+ export default ElevationProfileLineScene;
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
+ */
5
+ import{__decorate as o}from"tslib";import r from"../Color.js";import e from"./ElevationProfileLine.js";import{equals as t}from"../core/arrayUtils.js";import{equalsMaybe as s}from"../core/maybe.js";import{property as i}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/Logger.js";import{subclass as c}from"../core/accessorSupport/decorators/subclass.js";let l=class extends e{constructor(o){super(o),this.type="scene",this.color=new r("#cf4ccf"),this.include=null,this.exclude=null}equals(o){return this===o||super.equals(o)&&p(this.include,o.include)&&p(this.exclude,o.exclude)}};function p(o,r){return s(o,r,(o,r)=>t(Array.from(o),Array.from(r)))}o([i()],l.prototype,"type",void 0),o([i({type:r,nonNullable:!0})],l.prototype,"color",void 0),o([i()],l.prototype,"include",void 0),o([i()],l.prototype,"exclude",void 0),l=o([c("esri.analysis.ElevationProfileLineScene")],l);const n=l;export{n as default};
@@ -0,0 +1,4 @@
1
+ import "../interfaces";
2
+
3
+ import ElevationProfileLineViewOptions = __esri.ElevationProfileLineViewOptions;
4
+ export default ElevationProfileLineViewOptions;
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
+ */
5
+ import{__decorate as o}from"tslib";import e from"../core/Clonable.js";import{property as i}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/Logger.js";import"../core/RandomLCG.js";import{subclass as r}from"../core/accessorSupport/decorators/subclass.js";let s=class extends e{constructor(o){super(o),this.lineVisible=!0,this.hoveredPointVisible=!0}equals(o){return this===o||this.lineVisible===o.lineVisible&&this.hoveredPointVisible===o.hoveredPointVisible}};o([i()],s.prototype,"lineVisible",void 0),o([i()],s.prototype,"hoveredPointVisible",void 0),s=o([r("esri.analysis.ElevationProfileLineViewOptions")],s);const t=s;export{t as default};
@@ -0,0 +1,4 @@
1
+ import "../interfaces";
2
+
3
+ import ElevationProfileUnits = __esri.ElevationProfileUnits;
4
+ export default ElevationProfileUnits;
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
+ */
5
+ import{__decorate as o}from"tslib";import t from"../core/Clonable.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 r}from"../core/accessorSupport/decorators/subclass.js";let s=class extends t{constructor(o){super(o),this.distance=null,this.elevation=null}equals(o){return this===o||this.distance===o.distance&&this.elevation===o.elevation}};o([e()],s.prototype,"distance",void 0),o([e()],s.prototype,"elevation",void 0),s=o([r("esri.analysis.ElevationProfileUnits")],s);const i=s;export{i as default};
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
+ */
5
+ import e from"../ElevationProfileLine.js";import o from"../ElevationProfileLineGround.js";import r from"../ElevationProfileLineInput.js";import i from"../ElevationProfileLineQuery.js";import n from"../ElevationProfileLineScene.js";import t from"../../core/Collection.js";const l={base:e,key:"type",typeMap:{ground:o,input:r,query:i,scene:n},errorContext:"elevation-profile-line"},p=t.ofType(l);export{p as ElevationProfileLineCollection,l as elevationProfileLineTypes};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{toStringEnumKey as e}from"./enum.js";import{replace as t}from"../core/string.js";import{UnknownTimeZone as n}from"../core/sql/UnknownTimeZone.js";import{DateTime as r,Zone as s,FixedOffsetZone as i,IANAZone as o}from"luxon";const a={TimeZoneNotRecognized:"Timezone identifier has not been recognized."};class d extends Error{constructor(e,n){super(t(a[e],n)),this.declaredRootClass="esri.arcade.arcadedate.dateerror",Error.captureStackTrace&&Error.captureStackTrace(this,d)}}function u(e,t,n){return e<t?e-t:e>n?e-n:0}function c(e,t,n){return e<t?t:e>n?n:e}class m{constructor(e){this._date=e,this.declaredRootClass="esri.arcade.arcadedate"}static fromParts(e=0,t=1,n=1,s=0,i=0,o=0,a=0,d){if(isNaN(e)||isNaN(t)||isNaN(n)||isNaN(s)||isNaN(i)||isNaN(o)||isNaN(a))return null;const l=r.local(e,t).daysInMonth;let f=r.fromObject({day:c(n,1,l),year:e,month:c(t,1,12),hour:c(s,0,23),minute:c(i,0,59),second:c(o,0,59),millisecond:c(a,0,999)},{zone:h(d)});return f=f.plus({months:u(t,1,12),days:u(n,1,l),hours:u(s,0,23),minutes:u(i,0,59),seconds:u(o,0,59),milliseconds:u(a,0,999)}),new m(f)}static get systemTimeZoneCanonicalName(){return Intl.DateTimeFormat().resolvedOptions().timeZone??"system"}static arcadeDateAndZoneToArcadeDate(e,t){const r=h(t);return e.isUnknownTimeZone||r===n.instance?m.fromParts(e.year,e.monthJS+1,e.day,e.hour,e.minute,e.second,e.millisecond,r):new m(e._date.setZone(r))}static dateJSToArcadeDate(e){return new m(r.fromJSDate(e,{zone:"system"}))}static dateJSAndZoneToArcadeDate(e,t="system"){const n=h(t);return new m(r.fromJSDate(e,{zone:n}))}static unknownEpochToArcadeDate(e){return new m(r.fromMillis(e,{zone:n.instance}))}static unknownDateJSToArcadeDate(e){return new m(r.fromMillis(e.getTime(),{zone:n.instance}))}static epochToArcadeDate(e,t="system"){const n=h(t);return new m(r.fromMillis(e,{zone:n}))}static dateTimeToArcadeDate(e){return new m(e)}clone(){return new m(this._date)}changeTimeZone(e){const t=h(e);return m.dateTimeToArcadeDate(this._date.setZone(t))}static dateTimeAndZoneToArcadeDate(e,t){const r=h(t);return e.zone===n.instance||r===n.instance?m.fromParts(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond,r):new m(e.setZone(r))}static nowToArcadeDate(e){const t=h(e);return new m(r.fromJSDate(new Date,{zone:t}))}static nowUTCToArcadeDate(){return new m(r.utc())}get isSystem(){return"system"===this.timeZone||this.timeZone===m.systemTimeZoneCanonicalName}equals(e){return this.isSystem&&e.isSystem?this.toNumber()===e.toNumber():this.isUnknownTimeZone===e.isUnknownTimeZone&&this._date.equals(e._date)}get isUnknownTimeZone(){return this._date.zone===n.instance}get isValid(){return this._date.isValid}get hour(){return this._date.hour}get second(){return this._date.second}get day(){return this._date.day}get dayOfWeekISO(){return this._date.weekday}get dayOfWeekJS(){let e=this._date.weekday;return e>6&&(e=0),e}get millisecond(){return this._date.millisecond}get monthISO(){return this._date.month}get weekISO(){return this._date.weekNumber}get yearISO(){return this._date.weekYear}get monthJS(){return this._date.month-1}get year(){return this._date.year}get minute(){return this._date.minute}get zone(){return this._date.zone}get timeZoneOffset(){return this.isUnknownTimeZone?0:this._date.offset}get timeZone(){if(this.isUnknownTimeZone)return"unknown";if("system"===this._date.zone.type)return"system";const e=this.zone;return"fixed"===e.type?0===e.fixed?"UTC":e.formatOffset(0,"short"):e.name}stringify(){return JSON.stringify(this.toJSDate())}plus(e){return new m(this._date.plus(e))}diff(e,t){return this._date.diff(e._date,t)[t]}toISODate(){return this._date.toISODate()}toISOString(e){return e?this._date.toISO({suppressMilliseconds:!0,includeOffset:!this.isUnknownTimeZone}):this._date.toISO({includeOffset:!this.isUnknownTimeZone})}toISOTime(e,t){return this._date.toISOTime({suppressMilliseconds:e,includeOffset:t&&!this.isUnknownTimeZone})}toFormat(e,t){return this.isUnknownTimeZone&&(e=e.replaceAll("Z","")),this._date.toFormat(e,t)}toJSDate(){return this._date.toJSDate()}toSQLValue(){return this._date.toFormat("yyyy-LL-dd HH:mm:ss")}toSQLWithKeyword(){return`timestamp '${this.toSQLValue()}'`}toDateTime(){return this._date}toNumber(){return this._date.toMillis()}getTime(){return this._date.toMillis()}toUTC(){return new m(this._date.toUTC())}toLocal(){return new m(this._date.toLocal())}toString(){return this.toISOString(!0)}static fromReaderAsTimeStampOffset(e){if(!e)return null;const t=r.fromISO(e,{setZone:!0});return new m(t)}}function h(t,r=!0){if(t instanceof s)return t;switch(e(t)){case"system":return"system";case"utc":return"UTC";case"unknown":return n.instance}if(/^[+-]?[0-9]{1,2}([:][0-9]{2})?$/.test(t)){const e=i.parseSpecifier("UTC"+(t.startsWith("+")||t.startsWith("-")?"":"+")+t);if(e)return e}const a=o.create(t);if(!a.isValid){if(r)throw new d("TimeZoneNotRecognized");return null}return a}export{m as ArcadeDate,d as ArcadeDateError,a as arcadeDateErrorMessages,h as createDateTimeZone};
5
+ import{toStringEnumKey as e}from"./enum.js";import{replace as t}from"../core/string.js";import{UnknownTimeZone as n}from"../core/sql/UnknownTimeZone.js";import{DateTime as r,Zone as s,FixedOffsetZone as i,IANAZone as o}from"luxon";const a={TimeZoneNotRecognized:"Timezone identifier has not been recognized."};class d extends Error{constructor(e,n){super(t(a[e],n)),this.declaredRootClass="esri.arcade.arcadedate.dateerror",Error.captureStackTrace&&Error.captureStackTrace(this,d)}}function u(e,t,n){return e<t?e-t:e>n?e-n:0}function c(e,t,n){return e<t?t:e>n?n:e}class m{constructor(e){this._date=e,this.declaredRootClass="esri.arcade.arcadedate"}static fromParts(e=0,t=1,n=1,s=0,i=0,o=0,a=0,d){if(isNaN(e)||isNaN(t)||isNaN(n)||isNaN(s)||isNaN(i)||isNaN(o)||isNaN(a))return null;const l=r.local(e,t).daysInMonth;let f=r.fromObject({day:c(n,1,l),year:e,month:c(t,1,12),hour:c(s,0,23),minute:c(i,0,59),second:c(o,0,59),millisecond:c(a,0,999)},{zone:h(d)});return f=f.plus({months:u(t,1,12),days:u(n,1,l),hours:u(s,0,23),minutes:u(i,0,59),seconds:u(o,0,59),milliseconds:u(a,0,999)}),new m(f)}static get systemTimeZoneCanonicalName(){return Intl.DateTimeFormat().resolvedOptions().timeZone??"system"}static arcadeDateAndZoneToArcadeDate(e,t){const r=h(t);return e.isUnknownTimeZone||r===n.instance?m.fromParts(e.year,e.monthJS+1,e.day,e.hour,e.minute,e.second,e.millisecond,r):new m(e._date.setZone(r))}static dateJSToArcadeDate(e){return new m(r.fromJSDate(e,{zone:"system"}))}static dateJSAndZoneToArcadeDate(e,t="system"){const n=h(t);return new m(r.fromJSDate(e,{zone:n}))}static unknownEpochToArcadeDate(e){return new m(r.fromMillis(e,{zone:n.instance}))}static unknownDateJSToArcadeDate(e){return new m(r.fromMillis(e.getTime(),{zone:n.instance}))}static epochToArcadeDate(e,t="system"){const n=h(t);return new m(r.fromMillis(e,{zone:n}))}static dateTimeToArcadeDate(e){return new m(e)}clone(){return new m(this._date)}changeTimeZone(e){const t=h(e);return m.dateTimeToArcadeDate(this._date.setZone(t))}static dateTimeAndZoneToArcadeDate(e,t){const r=h(t);return e.zone===n.instance||r===n.instance?m.fromParts(e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond,r):new m(e.setZone(r))}static nowToArcadeDate(e){const t=h(e);return new m(r.fromJSDate(new Date,{zone:t}))}static nowUTCToArcadeDate(){return new m(r.utc())}get isSystem(){return"system"===this.timeZone||this.timeZone===m.systemTimeZoneCanonicalName}equals(e){return this.isSystem&&e.isSystem?this.toNumber()===e.toNumber():this.isUnknownTimeZone===e.isUnknownTimeZone&&this._date.equals(e._date)}get isUnknownTimeZone(){return this._date.zone===n.instance}get isValid(){return this._date.isValid}get hour(){return this._date.hour}get second(){return this._date.second}get day(){return this._date.day}get dayOfWeekISO(){return this._date.weekday}get dayOfWeekJS(){let e=this._date.weekday;return e>6&&(e=0),e}get millisecond(){return this._date.millisecond}get monthISO(){return this._date.month}get weekISO(){return this._date.weekNumber}get yearISO(){return this._date.weekYear}get monthJS(){return this._date.month-1}get year(){return this._date.year}get minute(){return this._date.minute}get zone(){return this._date.zone}get timeZoneOffset(){return this.isUnknownTimeZone?0:this._date.offset}get timeZone(){if(this.isUnknownTimeZone)return"unknown";if("system"===this._date.zone.type)return"system";const e=this.zone;return"fixed"===e.type?0===e.fixed?"UTC":e.formatOffset(0,"short"):e.name}stringify(){return JSON.stringify(this.toJSDate())}plus(e){return new m(this._date.plus(e))}diff(e,t){return this._date.diff(e._date,t)[t]}toISODate(){return this._date.toISODate()}toISOString(e){return e?this._date.toISO({suppressMilliseconds:!0,includeOffset:!this.isUnknownTimeZone}):this._date.toISO({includeOffset:!this.isUnknownTimeZone})}toISOTime(e,t){return this._date.toISOTime({suppressMilliseconds:e,includeOffset:t&&!this.isUnknownTimeZone})}toFormat(e,t){return this.isUnknownTimeZone&&(e=e.replaceAll("Z","")),this._date.toFormat(e,t)}toJSDate(){return this._date.toJSDate()}toSQLValue(){return this._date.toFormat("yyyy-LL-dd HH:mm:ss")}toSQLWithKeyword(){return`timestamp '${this.toSQLValue()}'`}toDateTime(){return this._date}toNumber(){return this._date.toMillis()}getTime(){return this._date.toMillis()}toUTC(){return new m(this._date.toUTC())}toLocal(){return new m(this._date.toLocal())}toString(){return this.toISOString(!0)}static fromReaderAsTimeStampOffset(e){if(!e)return null;const t=r.fromISO(e,{setZone:!0});return new m(t)}}function h(t,r=!0){if(t instanceof s)return t;switch(e(t)){case"system":return"system";case"utc":return"UTC";case"unknown":return n.instance}if(/^[+-]?[0-9]{1,2}(:[0-9]{2})?$/.test(t)){const e=i.parseSpecifier("UTC"+(t.startsWith("+")||t.startsWith("-")?"":"+")+t);if(e)return e}const a=o.create(t);if(!a.isValid){if(r)throw new d("TimeZoneNotRecognized");return null}return a}export{m as ArcadeDate,d as ArcadeDateError,a as arcadeDateErrorMessages,h as createDateTimeZone};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import t from"../request.js";import{ModuleError as e}from"./executionError.js";import{parseScript as r}from"./parser.js";import o from"./featureset/support/RecentlyUsedCache.js";import s from"../portal/Portal.js";class i{constructor(t){this.portalUri=t}static{this.mocks={}}static{this.cachedModules=new o(30)}normalizeModuleUri(t){const r=/^[a-z0-9A-Z]+(@[0-9]+\.[0-9]+\.[0-9]+)?([?|/].*)?$/gi,o=/(?<portalurl>.+)\/home\/item\.html\?id=(?<itemid>.+)$/gi,c=/(?<portalurl>.+)\/sharing\/rest\/content\/users\/[a-zA-Z0-9]+\/items\/(?<itemid>.+)$/gi,l=/(?<portalurl>.+)\/sharing\/rest\/content\/items\/(?<itemid>.+)$/gi,a=/(?<itemid>.*)@(?<versionstring>[0-9]+\.[0-9]+\.[0-9]+)([?|/].*)?$/gi;if(t.startsWith("portal+")){let i=t.slice(7),u="",n=i,m=!1;for(const t of[o,l,c]){const e=t.exec(i);if(null!==e){const t=e.groups;n=t.itemid,u=t.portalurl,m=!0;break}}if(!1===m){if(!r.test(i))throw new e("UnsupportedUriProtocol",{uri:t});n=i,u=this.portalUri}n.includes("/")&&(n=n.split("/")[0]),n.includes("?")&&(n=n.split("?")[0]);let d="current";const h=a.exec(n);if(null!==h){const t=h.groups;n=t.itemid,d=t.versionstring}return i=new s({url:u}).restUrl+"/content/items/"+n+"/resources/"+d+".arc",{url:i,scheme:"portal",uri:"PO:"+i}}if(t.startsWith("mock")){if("mock"===t){return{url:"",scheme:"mock",data:'\n export var hello = 1;\n export function helloWorld() {\n return "Hello World " + hello;\n }\n ',uri:"mock"}}const e=t.replace("mock:","");if(void 0!==i.mocks[e])return{url:"",scheme:"mock",data:i.mocks[e],uri:t}}throw new e("UnrecognizedUri",{uri:t})}async fetchModule(t){const e=i.cachedModules.getFromCache(t.uri);if(e)return e;const r=this.fetchSource(t);i.cachedModules.addToCache(t.uri,r);let o=null;try{o=await r}catch(s){throw i.cachedModules.removeFromCache(t.uri),s}return o}async fetchSource(o){if("portal"===o.scheme){const e=await t(o.url,{responseType:"text",query:{}});if(e.data)return r(e.data,[])}if("mock"===o.scheme)return r(o.data??"",[]);throw new e("UnsupportedUriProtocol")}static create(t){return new i(t)}static{this._default=null}static getDefault(){return this._default??(i._default=i._moduleResolverFactory())}static set moduleResolverClass(t){this._moduleResolverFactory=t,this._default=null}static{this._moduleResolverFactory=()=>{const t=s.getDefault();return new i(t.url)}}}export{i as ArcadeModuleResolver};
5
+ import t from"../request.js";import{ModuleError as e}from"./executionError.js";import{parseScript as r}from"./parser.js";import o from"./featureset/support/RecentlyUsedCache.js";import s from"../portal/Portal.js";class i{constructor(t){this.portalUri=t}static{this.mocks={}}static{this.cachedModules=new o(30)}normalizeModuleUri(t){const r=/^[a-z0-9]+(@[0-9]+\.[0-9]+\.[0-9]+)?([?|/].*)?$/gi,o=/(?<portalurl>.+)\/home\/item\.html\?id=(?<itemid>.+)$/gi,c=/(?<portalurl>.+)\/sharing\/rest\/content\/users\/[a-z0-9]+\/items\/(?<itemid>.+)$/gi,l=/(?<portalurl>.+)\/sharing\/rest\/content\/items\/(?<itemid>.+)$/gi,a=/(?<itemid>.*)@(?<versionstring>[0-9]+\.[0-9]+\.[0-9]+)([?|/].*)?$/gi;if(t.startsWith("portal+")){let i=t.slice(7),u="",n=i,m=!1;for(const t of[o,l,c]){const e=t.exec(i);if(null!==e){const t=e.groups;n=t.itemid,u=t.portalurl,m=!0;break}}if(!1===m){if(!r.test(i))throw new e("UnsupportedUriProtocol",{uri:t});n=i,u=this.portalUri}n.includes("/")&&(n=n.split("/")[0]),n.includes("?")&&(n=n.split("?")[0]);let d="current";const h=a.exec(n);if(null!==h){const t=h.groups;n=t.itemid,d=t.versionstring}return i=new s({url:u}).restUrl+"/content/items/"+n+"/resources/"+d+".arc",{url:i,scheme:"portal",uri:"PO:"+i}}if(t.startsWith("mock")){if("mock"===t){return{url:"",scheme:"mock",data:'\n export var hello = 1;\n export function helloWorld() {\n return "Hello World " + hello;\n }\n ',uri:"mock"}}const e=t.replace("mock:","");if(void 0!==i.mocks[e])return{url:"",scheme:"mock",data:i.mocks[e],uri:t}}throw new e("UnrecognizedUri",{uri:t})}async fetchModule(t){const e=i.cachedModules.getFromCache(t.uri);if(e)return e;const r=this.fetchSource(t);i.cachedModules.addToCache(t.uri,r);let o=null;try{o=await r}catch(s){throw i.cachedModules.removeFromCache(t.uri),s}return o}async fetchSource(o){if("portal"===o.scheme){const e=await t(o.url,{responseType:"text",query:{}});if(e.data)return r(e.data,[])}if("mock"===o.scheme)return r(o.data??"",[]);throw new e("UnsupportedUriProtocol")}static create(t){return new i(t)}static{this._default=null}static getDefault(){return this._default??(i._default=i._moduleResolverFactory())}static set moduleResolverClass(t){this._moduleResolverFactory=t,this._default=null}static{this._moduleResolverFactory=()=>{const t=s.getDefault();return new i(t.url)}}}export{i as ArcadeModuleResolver};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{neverAbortedSignal as e,toSymbolId as t}from"./arcadeEnvironment.js";import{ArcadeModule as n}from"./ArcadeModule.js";import{ArcadeModuleLoader as r}from"./ArcadeModuleLoader.js";import{getNestedOptionalValue as o,geometryMember as a,getGeometryKeys as i}from"./containerUtils.js";import l from"./Dictionary.js";import{ArcadeExecutionError as s,ensureArcadeExecutionError as c}from"./executionError.js";import u from"./Feature.js";import{NativeFunction as f,ScopeMarshalledFunction as p,ArcadeFunction as w,wrapModuleScopedResponse as d}from"./FunctionWrapper.js";import{R as h,I as g,A as m,i as y,q as b,r as v,v as S,B as x,u as F,w as I,x as k,y as M,z as O,s as j,j as R,k as C,m as A,h as N}from"../chunks/languageUtils.js";import{addFunctionDeclaration as E}from"./treeAnalysis.js";import{A as B}from"../chunks/aiServices.js";import{A as D}from"../chunks/array.js";import{registerFunctions as K}from"./functions/date.js";import{registerFunctions as U}from"./functions/feature.js";import{registerFunctions as Z}from"./functions/geomasync.js";import{registerFunctions as G}from"./functions/geometry.js";import{registerFunctions as L}from"./functions/maths.js";import{registerFunctions as q}from"./functions/stats.js";import{registerFunctions as P}from"./functions/string.js";import{registerFunctions as W}from"./functions/track.js";import"../core/has.js";import z from"../geometry/Geometry.js";import V from"../geometry/SpatialReference.js";import{isGraphic as T,isBoolean as _,isString as Y,isArray as H,isNumber as J}from"../support/guards.js";async function Q(e,t){const n=[];for(let r=0;r<t.arguments.length;r++)n.push(await re(e,t.arguments[r]));return n}async function X(e,t,n){if(!0===t.preparsed)return n(e,null,t.arguments);return n(e,t,await Q(e,t))}class $ extends w{constructor(e,t){super(),this.definition=null,this.context=null,this.definition=e,this.context=t}createFunction(e){return(...t)=>{const n={spatialReference:this.context.spatialReference,console:this.context.console,lrucache:this.context.lrucache,timeZone:this.context.timeZone??null,exports:this.context.exports,libraryResolver:this.context.libraryResolver,interceptor:this.context.interceptor,services:this.context.services,abortSignal:this.context.abortSignal,localScope:{},depthCounter:{depth:e.depthCounter+1},globalScope:this.context.globalScope,track:this.context.track};if(n.depthCounter.depth>64)throw new s(e,"MaximumCallDepth",null);return ee(this.definition,n,t,null)}}call(e,t){return ne(e,t,(n,r,o)=>{const a={spatialReference:e.spatialReference,services:e.services,console:e.console,libraryResolver:e.libraryResolver,exports:e.exports,lrucache:e.lrucache,timeZone:e.timeZone??null,interceptor:e.interceptor,localScope:{},abortSignal:e.abortSignal,globalScope:e.globalScope,depthCounter:{depth:e.depthCounter.depth+1},track:e.track};if(a.depthCounter.depth>64)throw new s(e,"MaximumCallDepth",t);return ee(this.definition,a,o,t)})}marshalledCall(e,t,n,r){return r(e,t,async(o,a,i)=>{const l={spatialReference:e.spatialReference,services:e.services,globalScope:n.globalScope,depthCounter:{depth:e.depthCounter.depth+1},libraryResolver:e.libraryResolver,exports:e.exports,console:e.console,abortSignal:e.abortSignal,lrucache:e.lrucache,timeZone:e.timeZone??null,interceptor:e.interceptor,localScope:{},track:e.track};return i=i.map(t=>!y(t)||t instanceof p?t:d(t,e,r)),d(await ee(this.definition,l,i,t),n,r)})}}async function ee(e,n,r,o){const a=e.body;if(r.length!==e.params.length)throw new s(n,"WrongNumberOfParameters",null);for(let l=0;l<r.length;l++){const o=e.params[l];"Identifier"===o.type&&null!=n.localScope&&(n.localScope[t(o)]={value:r[l]})}const i=await oe(n,a);if(i instanceof h)return i.value;if(i===b)throw new s(n,"UnexpectedToken",o);if(i===v)throw new s(n,"UnexpectedToken",o);return i instanceof g?i.value:i}class te extends n{constructor(e){super(),this.source=e}global(e){const n=this.executingContext.globalScope[t(e)];if(y(n.value)&&!(n.value instanceof p)){const r=new p;return r.fn=n.value,r.parameterEvaluator=ne,r.context=this.executingContext,this.executingContext.globalScope[t(e)]={value:r},r}return n.value}setGlobal(e,n){if(y(n))throw new s(null,"AssignModuleFunction",null);this.executingContext.globalScope[t(e)]={value:n}}hasGlobal(e){return void 0===this.executingContext.exports[e]&&(e=t(e)),void 0!==this.executingContext.exports[e]}async loadModule(t){const n=t.spatialReference??V.WebMercator;this.moduleScope=Ve(null,null,t.timeZone),this.executingContext={spatialReference:n,services:t.services,libraryResolver:new r(t.libraryResolver._moduleSingletons,this.source.syntax.loadedModules),exports:{},abortSignal:t.abortSignal??e,globalScope:this.moduleScope,console:t.console??Te,lrucache:t.lrucache,timeZone:t.timeZone??null,interceptor:t.interceptor,localScope:null,depthCounter:{depth:1},track:null},await ve(this.executingContext,this.source.syntax)}}async function ne(e,t,n){if(!0===t.preparsed)return n(e,null,t.arguments);return n(e,t,await Q(e,t))}async function re(e,t){t.breakpoint&&await t.breakpoint();try{switch(t.type){case"UpdateExpression":return await he(e,t);case"AssignmentExpression":return await me(e,t);case"TemplateLiteral":return await De(e,t);case"Identifier":return Ee(e,t);case"MemberExpression":return await je(e,t);case"Literal":return t.value;case"CallExpression":return await Be(e,t);case"UnaryExpression":return await Re(e,t);case"BinaryExpression":return await Ae(e,t);case"LogicalExpression":return await Ne(e,t);case"ArrayExpression":return await Ce(e,t);case"ObjectExpression":return await ae(e,t);default:throw new s(e,"Unrecognized",t)}}catch(n){throw c(e,t,n)}}async function oe(e,t){t.breakpoint&&await t.breakpoint();try{switch(t.type){case"ImportDeclaration":return await Ie(e,t);case"ExportNamedDeclaration":return await ke(e,t);case"VariableDeclaration":return await Me(e,t,0);case"BlockStatement":return await ve(e,t);case"FunctionDeclaration":return await Fe(e,t);case"ReturnStatement":return await xe(e,t);case"IfStatement":return await be(e,t);case"ExpressionStatement":return await ye(e,t);case"ForStatement":return await le(e,t);case"WhileStatement":return await ie(e,t);case"ForInStatement":return await we(e,t);case"ForOfStatement":return await de(e,t);case"BreakStatement":return b;case"EmptyStatement":return S;case"ContinueStatement":return v;default:throw new s(e,"Unrecognized",t)}}catch(n){throw c(e,t,n)}}async function ae(e,t){const n=[];for(let i=0;i<t.properties.length;i++){const r=t.properties[i],o=await re(e,r.value),a="Identifier"===r.key.type?r.key.name:await re(e,r.key);n[i]={key:a,value:o}}const r=Object.create(null),o=new Map;for(let i=0;i<n.length;i++){const a=n[i];if(y(a.value))throw new s(e,"NoFunctionInDictionary",t);if(!1===Y(a.key))throw new s(e,"KeyMustBeString",t);let l=a.key.toString();const c=l.toLowerCase();o.has(c)?l=o.get(c):o.set(c,l),a.value===S?r[l]=null:r[l]=a.value}const a=new l(r);return a.immutable=!1,a}async function ie(e,t){let n=await re(e,t.test);if(!1===n)return S;if(!0!==n)throw new s(e,"BooleanConditionRequired",t);for(;!0===n;){const r=await oe(e,t.body);if(r===b)break;if(r instanceof h)return r;if(n=await re(e,t.test),!0!==n&&!1!==n)throw new s(e,"BooleanConditionRequired",t)}return S}async function le(e,t){try{for(null!==t.init&&("VariableDeclaration"===t.init.type?await oe(e,t.init):await re(e,t.init));;){if(null!==t.test){const n=await re(e,t.test);if(!0===e.abortSignal?.aborted)throw new s(e,"Cancelled",t);if(!1===n)break;if(!0!==n)throw new s(e,"BooleanConditionRequired",t)}const n=await oe(e,t.body);if(n===b)break;if(n instanceof h)return n;null!==t.update&&await re(e,t.update)}return S}catch(n){throw n}}async function se(e,t,n,r,o="i"){const a=n.length;for(let i=0;i<a;i++){if("k"===o){if(i>=n.length)throw new s(e,"OutOfBounds",t);r.value=n[i]}else r.value=i;const a=await oe(e,t.body);if(a===b)break;if(a instanceof h)return a}return S}async function ce(e,t,n,r,o="i"){const a=n.length();for(let i=0;i<a;i++){r.value="k"===o?n.get(i):i;const a=await oe(e,t.body);if(a===b)break;if(a instanceof h)return a}return S}async function ue(e,t,n,r){const o=n.iterator(e.abortSignal);let a;for(;null!=(a=await o.next());){const o=u.createFromGraphicLikeObject(a.geometry,a.attributes,n,e.timeZone);o._underlyingGraphic=a,r.value=o;const i=await oe(e,t.body);if(i===b)break;if(i instanceof h)return i}return S}async function fe(e,t,n,r){for(const o of n.keys()){const a=n.field(o);r.value=l.containerEntry(o,a);const i=await oe(e,t.body);if(i===b)break;if(i instanceof h)return i}return S}async function pe(e,t,n,r){for(const o of i(n)){const i=a(n,o,e,t,1);r.value=l.containerEntry(o,i);const s=await oe(e,t.body);if(s===b)break;if(s instanceof h)return s}return S}async function we(e,n){const r=await re(e,n.right);"VariableDeclaration"===n.left.type&&await oe(e,n.left);const o=t("VariableDeclaration"===n.left.type?n.left.declarations[0].id:n.left);let a=null;if(null!=e.localScope&&void 0!==e.localScope[o]&&(a=e.localScope[o]),null===a&&void 0!==e.globalScope[o]){const t=e.globalScope[o].value;a=e.globalScope[o]={value:t}}if(null===a)throw new s(e,"InvalidIdentifier",n);return H(r)||Y(r)?await se(e,n,r,a):R(r)?await ce(e,n,r,a):r instanceof l||j(r)?await se(e,n,r.keys(),a,"k"):A(r)?await ue(e,n,r,a):N(r)?await se(e,n,i(r),a,"k"):S}async function de(e,n){const r=await re(e,n.right);"VariableDeclaration"===n.left.type&&await oe(e,n.left);const o=t("VariableDeclaration"===n.left.type?n.left.declarations[0].id:n.left);let a=null;if(null!=e.localScope&&void 0!==e.localScope[o]&&(a=e.localScope[o]),null===a&&void 0!==e.globalScope[o]){const t=e.globalScope[o].value;a=e.globalScope[o]={value:t}}if(null===a)throw new s(e,"InvalidIdentifier",n);return H(r)||Y(r)?await se(e,n,r,a,"k"):R(r)?await ce(e,n,r,a,"k"):r instanceof l||j(r)?await fe(e,n,r,a):A(r)?await ue(e,n,r,a):N(r)?await pe(e,n,r,a):S}async function he(e,n){const r=n.argument;if("CallExpression"===r.type)throw new s(e,"NeverReach",n);if("MemberExpression"===r.type){const t=await re(e,r.object);let o,a;if(!0===r.computed)o=await re(e,r.property);else{if("Identifier"!==r.property.type)throw new s(e,"Unrecognized",n);o=r.property.name}if(H(t)){if(!J(o))throw new s(e,"ArrayAccessMustBeNumber",n);if(o<0&&(o=t.length+o),o<0||o>=t.length)throw new s(e,"OutOfBounds",n);a=F(t[o]),t[o]="++"===n.operator?a+1:a-1}else if(t instanceof l){if(!1===Y(o))throw new s(e,"KeyAccessorMustBeString",n);if(!0!==t.hasField(o))throw new s(e,"FieldNotFound",n,{key:o});a=F(t.field(o)),t.setField(o,"++"===n.operator?a+1:a-1)}else if(t instanceof te){if(!1===Y(o))throw new s(e,"ModuleAccessorMustBeString",n);if(!0!==t.hasGlobal(o))throw new s(e,"ModuleExportNotFound",n);a=F(t.global(o)),t.setGlobal(o,"++"===n.operator?a+1:a-1)}else{if(!C(t))throw R(t)?new s(e,"Immutable",n):new s(e,"InvalidParameter",n);if(!1===Y(o))throw new s(e,"KeyAccessorMustBeString",n);if(!0!==t.hasField(o))throw new s(e,"FieldNotFound",n,{key:o});a=F(t.field(o)),t.setField(o,"++"===n.operator?a+1:a-1)}return!1===n.prefix?a:"++"===n.operator?a+1:a-1}const o=t(r);let a;if(null!=e.localScope&&void 0!==e.localScope[o])return a=F(e.localScope[o].value),e.localScope[o]={value:"++"===n.operator?a+1:a-1},!1===n.prefix?a:"++"===n.operator?a+1:a-1;if(void 0!==e.globalScope[o])return a=F(e.globalScope[o].value),e.globalScope[o]={value:"++"===n.operator?a+1:a-1},!1===n.prefix?a:"++"===n.operator?a+1:a-1;throw new s(e,"InvalidIdentifier",n)}function ge(e,t,n,r,o){switch(t){case"=":return e===S?null:e;case"/=":return F(n)/F(e);case"*=":return F(n)*F(e);case"-=":return F(n)-F(e);case"+=":return Y(n)||Y(e)?I(n)+I(e):F(n)+F(e);case"%=":return F(n)%F(e);default:throw new s(o,"UnsupportedOperator",r)}}async function me(e,n){const r=n.left;if("MemberExpression"===r.type){const t=await re(e,r.object);let o;if(!0===r.computed)o=await re(e,r.property);else{if("Identifier"!==r.property.type)throw new s(e,"InvalidIdentifier",n);o=r.property.name}const a=await re(e,n.right);if(H(t)){if(!J(o))throw new s(e,"ArrayAccessMustBeNumber",n);if(o<0&&(o=t.length+o),o<0||o>t.length)throw new s(e,"OutOfBounds",n);if(o===t.length){if("="!==n.operator)throw new s(e,"OutOfBounds",n);t[o]=ge(a,n.operator,t[o],n,e)}else t[o]=ge(a,n.operator,t[o],n,e)}else if(t instanceof l){if(!1===Y(o))throw new s(e,"KeyAccessorMustBeString",n);if(!0===t.hasField(o))t.setField(o,ge(a,n.operator,t.field(o),n,e));else{if("="!==n.operator)throw new s(e,"FieldNotFound",n,{key:o});t.setField(o,ge(a,n.operator,null,n,e))}}else if(t instanceof te){if(!1===Y(o))throw new s(e,"KeyAccessorMustBeString",n);if(!0!==t.hasGlobal(o))throw new s(e,"ModuleExportNotFound",n);t.setGlobal(o,ge(a,n.operator,t.global(o),n,e))}else{if(!C(t))throw R(t)?new s(e,"Immutable",n):new s(e,"InvalidParameter",n);if(!1===Y(o))throw new s(e,"KeyAccessorMustBeString",n);if(!0===t.hasField(o))t.setField(o,ge(a,n.operator,t.field(o),n,e));else{if("="!==n.operator)throw new s(e,"FieldNotFound",n,{key:o});t.setField(o,ge(a,n.operator,null,n,e))}}return S}const o=t(r);if(null!=e.localScope&&void 0!==e.localScope[o]){const t=await re(e,n.right);return e.localScope[o]={value:ge(t,n.operator,e.localScope[o].value,n,e)},S}if(void 0!==e.globalScope[o]){const t=await re(e,n.right);return e.globalScope[o]={value:ge(t,n.operator,e.globalScope[o].value,n,e)},S}throw new s(e,"InvalidIdentifier",n)}async function ye(e,t){const n=await re(e,t.expression);return n===S?S:new g(n)}async function be(e,t){const n=await re(e,t.test);if(!0===n)return oe(e,t.consequent);if(!1===n)return null!==t.alternate?oe(e,t.alternate):S;throw new s(e,"BooleanConditionRequired",t)}async function ve(e,t){return Se(e,t,0)}async function Se(e,t,n){if(n>=t.body.length)return S;const r=await oe(e,t.body[n]);return r instanceof h||r===b||r===v||n===t.body.length-1?r:Se(e,t,n+1)}async function xe(e,t){if(null===t.argument)return new h(S);const n=await re(e,t.argument);return new h(n)}async function Fe(e,n){const r=t(n.id);return e.globalScope[r]={value:new $(n,e)},S}async function Ie(e,n){const r=t(n.specifiers[0].local),o=e.libraryResolver.loadLibrary(r);let a;return e.libraryResolver._moduleSingletons?.has(o.uri)?a=e.libraryResolver._moduleSingletons.get(o.uri):(a=new te(o),await a.loadModule(e),e.libraryResolver._moduleSingletons?.set(o.uri,a)),e.globalScope[r]={value:a},S}async function ke(e,n){if(await oe(e,n.declaration),"FunctionDeclaration"===n.declaration.type)e.exports[t(n.declaration.id)]="function";else if("VariableDeclaration"===n.declaration.type)for(const r of n.declaration.declarations)e.exports[t(r.id)]="variable";return S}async function Me(e,t,n){return n>=t.declarations.length?S:(await Oe(e,t.declarations[n]),n===t.declarations.length-1||await Me(e,t,n+1),S)}async function Oe(e,n){let r=null;if(r=null===n.init?null:await re(e,n.init),null!==e.localScope){if(r===S&&(r=null),"Identifier"!==n.id.type)throw new s(e,"InvalidIdentifier",n);const o=t(n.id);return void(null!=e.localScope&&(e.localScope[o]={value:r}))}if("Identifier"!==n.id.type)throw new s(e,"InvalidIdentifier",n);const o=t(n.id);r===S&&(r=null),e.globalScope[o]={value:r}}async function je(e,t){const n=await re(e,t.object);if(null===n)throw new s(e,"MemberOfNull",t);if(!1===t.computed){if("Identifier"===t.property.type){if(n instanceof l||j(n))return n.field(t.property.name);if(n instanceof z)return a(n,t.property.name,e,t);if(n instanceof te){if(!n.hasGlobal(t.property.name))throw new s(e,"InvalidIdentifier",t);return n.global(t.property.name)}throw new s(e,"InvalidMemberAccessKey",t)}throw new s(e,"InvalidMemberAccessKey",t)}let r=await re(e,t.property);if(n instanceof l||j(n)){if(Y(r))return n.field(r);throw new s(e,"InvalidMemberAccessKey",t)}if(n instanceof te){if(Y(r))return n.global(r);throw new s(e,"InvalidMemberAccessKey",t)}if(n instanceof z){if(Y(r))return a(n,r,e,t);throw new s(e,"InvalidMemberAccessKey",t)}if(H(n)){if(J(r)&&isFinite(r)&&Math.floor(r)===r){if(r<0&&(r=n.length+r),r>=n.length||r<0)throw new s(e,"OutOfBounds",t);return n[r]}throw new s(e,"InvalidMemberAccessKey",t)}if(R(n)){if(J(r)&&isFinite(r)&&Math.floor(r)===r){if(r<0&&(r=n.length()+r),r>=n.length()||r<0)throw new s(e,"OutOfBounds",t);return n.get(r)}throw new s(e,"InvalidMemberAccessKey",t)}if(Y(n)){if(J(r)&&isFinite(r)&&Math.floor(r)===r){if(r<0&&(r=n.length+r),r>=n.length||r<0)throw new s(e,"OutOfBounds",t);return n[r]}throw new s(e,"InvalidMemberAccessKey",t)}throw new s(e,"InvalidMemberAccessKey",t)}async function Re(e,t){const n=await re(e,t.argument);if(_(n)){if("!"===t.operator)return!n;if("-"===t.operator)return-1*F(n);if("+"===t.operator)return 1*F(n);if("~"===t.operator)return~F(n);throw new s(e,"UnsupportUnaryOperator",t)}if("-"===t.operator)return-1*F(n);if("+"===t.operator)return 1*F(n);if("~"===t.operator)return~F(n);throw new s(e,"UnsupportUnaryOperator",t)}async function Ce(e,t){const n=[];for(let r=0;r<t.elements.length;r++)n.push(await re(e,t.elements[r]));for(let r=0;r<n.length;r++){if(y(n[r]))throw new s(e,"NoFunctionInArray",t);n[r]===S&&(n[r]=null)}return n}async function Ae(e,t){const n=await re(e,t.left),r=await re(e,t.right);switch(t.operator){case"|":case"<<":case">>":case">>>":case"^":case"&":return O(F(n),F(r),t.operator);case"==":return M(n,r);case"!=":return!M(n,r);case"<":case">":case"<=":case">=":return k(n,r,t.operator);case"+":return Y(n)||Y(r)?I(n)+I(r):F(n)+F(r);case"-":return F(n)-F(r);case"*":return F(n)*F(r);case"/":return F(n)/F(r);case"%":return F(n)%F(r);default:throw new s(e,"UnsupportedOperator",t)}}async function Ne(e,t){const n=await re(e,t.left);if(!_(n))throw new s(e,"LogicalExpressionOnlyBoolean",t);switch(t.operator){case"||":{if(!0===n)return n;const r=await re(e,t.right);if(_(r))return r;throw new s(e,"LogicExpressionOrAnd",t)}case"&&":{if(!1===n)return n;const r=await re(e,t.right);if(_(r))return r;throw new s(e,"LogicExpressionOrAnd",t)}default:throw new s(e,"LogicExpressionOrAnd",t)}}function Ee(e,n){const r=t(n);if(null!=e.localScope&&void 0!==e.localScope[r])return e.localScope[r].value;if(void 0!==e.globalScope[r])return e.globalScope[r].value;throw new s(e,"InvalidIdentifier",n)}async function Be(e,n){if("MemberExpression"===n.callee.type){const t=await re(e,n.callee.object);if(!(t instanceof te))throw new s(e,"FunctionNotFound",n);const r=!1===n.callee.computed?n.callee.property.name:await re(e,n.callee.property);if(!t.hasGlobal(r))throw new s(e,"FunctionNotFound",n);const o=t.global(r);if(!y(o))throw new s(e,"CallNonFunction",n);return o.call(e,n)}if("Identifier"!==n.callee.type)throw new s(e,"FunctionNotFound",n);const r=t(n.callee);if(null!=e.localScope&&void 0!==e.localScope[r]){const t=e.localScope[r];if(y(t.value))return t.value.call(e,n);throw new s(e,"CallNonFunction",n)}if(void 0!==e.globalScope[r]){const t=e.globalScope[r];if(y(t.value))return t.value.call(e,n);throw new s(e,"CallNonFunction",n)}throw new s(e,"FunctionNotFound",n)}async function De(e,t){let n="",r=0;for(const o of t.quasis)if(n+=o.value?o.value.cooked:"",!1===o.tail){if(t.expressions[r]){const o=await re(e,t.expressions[r]);if(y(o))throw new s(e,"NoFunctionInTemplateLiteral",t);n+=I(o)}r++}return n}async function Ke(e,t){x(null===t.arguments?[]:t.arguments,3,3,e,t);const n=await re(e,t.arguments[0]);if(!1===_(n))throw new s(e,"BooleanConditionRequired",t);return re(e,n?t.arguments[1]:t.arguments[2])}async function Ue(e,t){x(null===t.arguments?[]:t.arguments,2,3,e,t);const n=await re(e,t.arguments[0]);if(3===t.arguments.length){const r=await re(e,t.arguments[1]),a=o(n,r);return null!=a&&""!==a?a:re(e,t.arguments[2])}return null==n||""===n?re(e,t.arguments[1]):n}async function Ze(e,t){if(t.arguments.length<2)throw new s(e,"WrongNumberOfParameters",t);if(2===t.arguments.length)return re(e,t.arguments[1]);if((t.arguments.length-1)%2==0)throw new s(e,"WrongNumberOfParameters",t);return Ge(e,t,1,await re(e,t.arguments[0]))}async function Ge(e,t,n,r){const o=await re(e,t.arguments[n]);if(M(o,r))return re(e,t.arguments[n+1]);const a=t.arguments.length-n;return 1===a?re(e,t.arguments[n]):2===a?null:3===a?re(e,t.arguments[n+2]):Ge(e,t,n+2,r)}async function Le(e,t){if(t.arguments.length<3)throw new s(e,"WrongNumberOfParameters",t);if(t.arguments.length%2==0)throw new s(e,"WrongNumberOfParameters",t);const n=await re(e,t.arguments[0]);if(!1===_(n))throw new s(e,"BooleanConditionRequired",t.arguments[0]);return qe(e,t,0,n)}async function qe(e,t,n,r){if(!0===r)return re(e,t.arguments[n+1]);if(3===t.arguments.length-n)return re(e,t.arguments[n+2]);const o=await re(e,t.arguments[n+2]);if(!1===_(o))throw new s(e,"ModuleExportNotFound",t.arguments[n+2]);return qe(e,t,n+2,o)}function Pe(){const e=Object.create(null);K(e,X),P(e,X),U(e,X,Ee),L(e,X),G(e,X),q(e,X),W(e,X),Z({functions:e,compiled:!1,signatures:null,evaluateIdentifier:null,mode:"async",standardFunction:X,standardFunctionAsync:ne}),e.iif=Ke,e.defaultvalue=Ue,e.decode=Ze,e.when=Le;const t=function(){this.textformatting={value:l.textFormatting()}};t.prototype=Object.create(null),t.prototype.infinity=Object.freeze({value:Number.POSITIVE_INFINITY}),t.prototype.pi=Object.freeze({value:Math.PI});for(const[n,r]of Object.entries(e))t.prototype[n]=Object.freeze({value:new f(r)});return t}const We=Pe();function ze(e){const t={mode:"async",compiled:!1,functions:Object.create(null),signatures:[],standardFunction:X,standardFunctionAsync:ne,evaluateIdentifier:Ee};for(let n=0;n<e.length;n++)e[n].registerFunctions(t);for(const[n,r]of Object.entries(t.functions))We.prototype[n]=Object.freeze({value:new f(r)});for(let n=0;n<t.signatures.length;n++)E(t.signatures[n],"async")}function Ve(e,t,n){const r=new We;null==e&&(e={}),null==t&&(t={});for(const o in t)r[o]={value:new f(t[o])};for(const o in e)r[o]={value:T(e[o])?u.createFromGraphic(e[o],n):e[o]};return r}function Te(e){console.log(e)}async function _e(t,n){const o=n.spatialReference??V.WebMercator;let a=null;t.usesModules&&(a=new r(new Map,t.loadedModules));const i=Ve(n.vars,n.customfunctions,n.timeZone),l={spatialReference:o,services:n.services,exports:{},libraryResolver:a,abortSignal:n.abortSignal??e,globalScope:i,console:n.console??Te,timeZone:n.timeZone??null,lrucache:n.lrucache,interceptor:n.interceptor,localScope:null,depthCounter:{depth:1},track:n.track},c=await ve(l,t);if(c instanceof h||c instanceof g){const e=c.value;if(m(e))return null;if(y(e))throw new s(l,"IllegalResult",null);return e}if(m(c))return null;if(c===b)throw new s(l,"IllegalResult",null);if(c===v)throw new s(l,"IllegalResult",null);throw new s(l,"NeverReach",null)}ze([D]),ze([B]);export{_e as executeScript,ze as extend};
5
+ import{toSymbolId as e,neverAbortedSignal as t}from"./arcadeEnvironment.js";import{ArcadeModule as n}from"./ArcadeModule.js";import{ArcadeModuleLoader as r}from"./ArcadeModuleLoader.js";import{collectDeclaredGlobalNames as o,collectDeclaredLocalNames as a}from"./compilerUtils.js";import{getNestedOptionalValue as i,geometryMember as s,getGeometryKeys as c}from"./containerUtils.js";import l from"./Dictionary.js";import{ArcadeExecutionError as u,ensureArcadeExecutionError as f}from"./executionError.js";import p from"./Feature.js";import{NativeFunction as w,ScopeMarshalledFunction as d,ArcadeFunction as h,wrapModuleScopedResponse as m}from"./FunctionWrapper.js";import{R as g,I as y,q as b,i as v,z as x,A as S,B as F,v as k,x as I,s as j,u as O,w as M,y as R,r as A,j as N,k as C,m as E,h as B}from"../chunks/languageUtils.js";import{addFunctionDeclaration as G}from"./treeAnalysis.js";import{A as U}from"../chunks/aiServices.js";import{A as K}from"../chunks/array.js";import{registerFunctions as L}from"./functions/date.js";import{registerFunctions as _}from"./functions/feature.js";import{registerFunctions as D}from"./functions/geomasync.js";import{registerFunctions as Z}from"./functions/geometry.js";import{registerFunctions as z}from"./functions/maths.js";import{registerFunctions as q}from"./functions/stats.js";import{registerFunctions as P}from"./functions/string.js";import{registerFunctions as W}from"./functions/track.js";import"../core/has.js";import V from"../core/Logger.js";import T from"../geometry/Geometry.js";import Y from"../geometry/SpatialReference.js";import{isGraphic as $,isBoolean as H,isString as J,isArray as Q,isNumber as X}from"../support/guards.js";const ee=()=>V.getLogger("esri.arcade.arcadeAsyncRuntime"),te=Symbol("uninitialized");function ne(e){if(e===te)throw new u(null,"InvalidIdentifier",null)}function re(e){return ne(e),e}function oe(t,n){const r=e(n);if(null!==t.localScope){const e=t.localScope[r];if(void 0!==e)return{scope:t.localScope,id:r,var:e}}const o=t.globalScope[r];if(void 0!==o)return{scope:t.globalScope,id:r,var:o};throw new u(t,"InvalidIdentifier",n)}function ae(t,n,r="InvalidIdentifier"){const o=e(n);if(null!==t.localScope){const e=t.localScope[o];if(void 0!==e)return ne(e),e.value}const a=t.globalScope[o];if(void 0!==a)return ne(a),a.value;throw new u(t,r,n)}const ie=function(){};async function se(e,t){const n=[];for(let r=0;r<t.arguments.length;r++)n.push(await we(e,t.arguments[r]));return n}async function ce(e,t,n){if(!0===t.preparsed)return n(e,null,t.arguments);return n(e,t,await se(e,t))}ie.prototype=Object.freeze(Object.create(null));class le extends h{constructor(e,t,n,r){super(),this.definition=e,this.context=t,this._params=n,this._locals=r}createFunction(e){return(...t)=>{const n={spatialReference:this.context.spatialReference,console:this.context.console,lrucache:this.context.lrucache,timeZone:this.context.timeZone??null,exports:this.context.exports,libraryResolver:this.context.libraryResolver,interceptor:this.context.interceptor,services:this.context.services,abortSignal:this.context.abortSignal,localScope:new ie,depthCounter:{depth:e.depthCounter.depth+1},globalScope:this.context.globalScope,track:this.context.track};if(n.depthCounter.depth>64)throw new u(e,"MaximumCallDepth",null);return ue(n,this.definition.body,this._params,this._locals,t,null)}}call(e,t){return pe(e,t,(n,r,o)=>{const a={spatialReference:e.spatialReference,services:e.services,console:e.console,libraryResolver:e.libraryResolver,exports:e.exports,lrucache:e.lrucache,timeZone:e.timeZone??null,interceptor:e.interceptor,localScope:new ie,abortSignal:e.abortSignal,globalScope:e.globalScope,depthCounter:{depth:e.depthCounter.depth+1},track:e.track};if(a.depthCounter.depth>64)throw new u(e,"MaximumCallDepth",t);return ue(a,this.definition.body,this._params,this._locals,o,t)})}marshalledCall(e,t,n,r){return r(e,t,async(o,a,i)=>{const s={spatialReference:e.spatialReference,services:e.services,globalScope:n.globalScope,depthCounter:{depth:e.depthCounter.depth+1},libraryResolver:e.libraryResolver,exports:e.exports,console:e.console,abortSignal:e.abortSignal,lrucache:e.lrucache,timeZone:e.timeZone??null,interceptor:e.interceptor,localScope:new ie,track:e.track};return i=i.map(t=>!v(t)||t instanceof d?t:m(t,e,r)),m(await ue(s,this.definition.body,this._params,this._locals,i,t),n,r)})}}async function ue(e,t,n,r,o,a){if(n.length!==o.length)throw new u(e,"WrongNumberOfParameters",a);if(null!=e.localScope){for(let t=0;t<n.length;t++)e.localScope[n[t]]={value:o[t]};for(const t of r)e.localScope[t]=te}const i=await de(e,t);if(i instanceof g)return i.value;if(i===x)throw new u(e,"UnexpectedToken",a);if(i===S)throw new u(e,"UnexpectedToken",a);return i instanceof y?i.value:i}class fe extends n{constructor(e){super(),this.moduleGlobalContext=e}global(t){const n=e(t),r=this.moduleGlobalContext.globalScope[n];if(ne(r),v(r.value)&&!(r.value instanceof d)){const e=new d;return e.fn=r.value,e.parameterEvaluator=ce,e.context=this.moduleGlobalContext,this.moduleGlobalContext.globalScope[n]={value:e},e}return r.value}setGlobal(t,n){if(v(n))throw new u(null,"AssignModuleFunction",null);const r=e(t);if(void 0===this.moduleGlobalContext.globalScope[r])throw new u(null,"ModuleExportNotFound",null);this.moduleGlobalContext.globalScope[r]={value:n}}hasGlobal(t){return this.moduleGlobalContext.exports.has(e(t))}static async load(e,n){const{globals:a,exports:i}=o(n),s=new Xe;for(const t of a)t in s||(s[t]=te);const c=e.spatialReference??Y.WebMercator,l={lrucache:e.lrucache,interceptor:e.interceptor,services:e.services,console:e.console??tt,abortSignal:e.abortSignal??t,timeZone:e.timeZone??null,spatialReference:c,track:null,depthCounter:{depth:1},libraryResolver:new r(e.libraryResolver._moduleSingletons,n.loadedModules),exports:i,localScope:null,globalScope:s};return await Ae(l,n),new fe(l)}}async function pe(e,t,n){if(!0===t.preparsed)return n(e,null,t.arguments);return n(e,t,await se(e,t))}async function we(e,t){t.breakpoint&&await t.breakpoint();try{switch(t.type){case"UpdateExpression":return await Ie(e,t);case"AssignmentExpression":return await Oe(e,t);case"TemplateLiteral":return await We(e,t);case"Identifier":return qe(e,t);case"MemberExpression":return await Le(e,t);case"Literal":return t.value;case"CallExpression":return await Pe(e,t);case"UnaryExpression":return await _e(e,t);case"BinaryExpression":return await Ze(e,t);case"LogicalExpression":return await ze(e,t);case"ArrayExpression":return await De(e,t);case"ObjectExpression":return await he(e,t);default:throw new u(e,"Unrecognized",t)}}catch(n){throw f(e,t,n)}}async function de(e,t){t.breakpoint&&await t.breakpoint();try{switch(t.type){case"ImportDeclaration":return await Be(e,t);case"ExportNamedDeclaration":return await Ge(e,t);case"VariableDeclaration":return await Ue(e,t);case"BlockStatement":return await Ae(e,t);case"FunctionDeclaration":return await Ee(e,t);case"ReturnStatement":return await Ce(e,t);case"IfStatement":return await Re(e,t);case"ExpressionStatement":return await Me(e,t);case"ForStatement":return await ge(e,t);case"WhileStatement":return await me(e,t);case"ForInStatement":return await Fe(e,t);case"ForOfStatement":return await ke(e,t);case"BreakStatement":return x;case"EmptyStatement":return k;case"ContinueStatement":return S;default:throw new u(e,"Unrecognized",t)}}catch(n){throw f(e,t,n)}}async function he(e,t){const n=[];for(let i=0;i<t.properties.length;i++){const r=t.properties[i],o=await we(e,r.value),a="Identifier"===r.key.type?r.key.name:await we(e,r.key);n[i]={key:a,value:o}}const r=Object.create(null),o=new Map;for(let i=0;i<n.length;i++){const a=n[i];if(v(a.value))throw new u(e,"NoFunctionInDictionary",t);if(!1===J(a.key))throw new u(e,"KeyMustBeString",t);let s=a.key.toString();const c=s.toLowerCase();o.has(c)?s=o.get(c):o.set(c,s),a.value===k?r[s]=null:r[s]=a.value}const a=new l(r);return a.immutable=!1,a}async function me(e,t){let n=await we(e,t.test);if(!1===n)return k;if(!0!==n)throw new u(e,"BooleanConditionRequired",t);for(;!0===n;){const r=await de(e,t.body);if(r===x)break;if(r instanceof g)return r;if(n=await we(e,t.test),!0!==n&&!1!==n)throw new u(e,"BooleanConditionRequired",t)}return k}async function ge(e,t){try{for(null!==t.init&&("VariableDeclaration"===t.init.type?await de(e,t.init):await we(e,t.init));;){if(null!==t.test){const n=await we(e,t.test);if(!0===e.abortSignal?.aborted)throw new u(e,"Cancelled",t);if(!1===n)break;if(!0!==n)throw new u(e,"BooleanConditionRequired",t)}const n=await de(e,t.body);if(n===x)break;if(n instanceof g)return n;null!==t.update&&await we(e,t.update)}return k}catch(n){throw n}}async function ye(e,t,n,r,o="i"){const a=n.length;for(let i=0;i<a;i++){if("k"===o){if(i>=n.length)throw new u(e,"OutOfBounds",t);r.scope[r.id]={value:n[i]}}else r.scope[r.id]={value:i};const a=await de(e,t.body);if(a===x)break;if(a instanceof g)return a}return k}async function be(e,t,n,r,o="i"){const a=n.length();for(let i=0;i<a;i++){r.scope[r.id]="k"===o?{value:n.get(i)}:{value:i};const a=await de(e,t.body);if(a===x)break;if(a instanceof g)return a}return k}async function ve(e,t,n,r){const o=n.iterator(e.abortSignal);let a;for(;null!=(a=await o.next());){const o=p.createFromGraphicLikeObject(a.geometry,a.attributes,n,e.timeZone);o._underlyingGraphic=a,r.scope[r.id]={value:o};const i=await de(e,t.body);if(i===x)break;if(i instanceof g)return i}return k}async function xe(e,t,n,r){for(const o of n.keys()){const a=n.field(o);r.scope[r.id]={value:l.containerEntry(o,a)};const i=await de(e,t.body);if(i===x)break;if(i instanceof g)return i}return k}async function Se(e,t,n,r){for(const o of c(n)){const a=s(n,o,e,t,1);r.scope[r.id]={value:l.containerEntry(o,a)};const i=await de(e,t.body);if(i===x)break;if(i instanceof g)return i}return k}async function Fe(e,t){const n=await we(e,t.right);"VariableDeclaration"===t.left.type&&await de(e,t.left);const r=oe(e,"VariableDeclaration"===t.left.type?t.left.declarations[0].id:t.left);return Q(n)||J(n)?await ye(e,t,n,r):N(n)?await be(e,t,n,r):n instanceof l||A(n)?await ye(e,t,n.keys(),r,"k"):E(n)?await ve(e,t,n,r):B(n)?await ye(e,t,c(n),r,"k"):k}async function ke(e,t){const n=await we(e,t.right);"VariableDeclaration"===t.left.type&&await de(e,t.left);const r=oe(e,"VariableDeclaration"===t.left.type?t.left.declarations[0].id:t.left);return Q(n)||J(n)?await ye(e,t,n,r,"k"):N(n)?await be(e,t,n,r,"k"):n instanceof l||A(n)?await xe(e,t,n,r):E(n)?await ve(e,t,n,r):B(n)?await Se(e,t,n,r):k}async function Ie(e,t){const n=t.argument;if("CallExpression"===n.type)throw new u(e,"NeverReach",t);if("MemberExpression"===n.type){const r=await we(e,n.object);let o,a;if(!0===n.computed)o=await we(e,n.property);else{if("Identifier"!==n.property.type)throw new u(e,"Unrecognized",t);o=n.property.name}if(Q(r)){if(!X(o))throw new u(e,"ArrayAccessMustBeNumber",t);if(o<0&&(o=r.length+o),o<0||o>=r.length)throw new u(e,"OutOfBounds",t);a=j(r[o]),r[o]="++"===t.operator?a+1:a-1}else if(r instanceof l){if(!1===J(o))throw new u(e,"KeyAccessorMustBeString",t);if(!0!==r.hasField(o))throw new u(e,"FieldNotFound",t,{key:o});a=j(r.field(o)),r.setField(o,"++"===t.operator?a+1:a-1)}else if(r instanceof fe){if(!1===J(o))throw new u(e,"ModuleAccessorMustBeString",t);if(!0!==r.hasGlobal(o))throw new u(e,"ModuleExportNotFound",t);a=j(r.global(o)),r.setGlobal(o,"++"===t.operator?a+1:a-1)}else{if(!C(r))throw N(r)?new u(e,"Immutable",t):new u(e,"InvalidParameter",t);if(!1===J(o))throw new u(e,"KeyAccessorMustBeString",t);if(!0!==r.hasField(o))throw new u(e,"FieldNotFound",t,{key:o});a=j(r.field(o)),r.setField(o,"++"===t.operator?a+1:a-1)}return!1===t.prefix?a:"++"===t.operator?a+1:a-1}const r=oe(e,n),o=j(re(r.var).value),a="++"===t.operator?o+1:o-1;return r.scope[r.id]={value:a},!1===t.prefix?o:"++"===t.operator?o+1:o-1}function je(e,t,n,r,o){switch(t){case"=":return e===k?null:e;case"/=":return j(n)/j(e);case"*=":return j(n)*j(e);case"-=":return j(n)-j(e);case"+=":return J(n)||J(e)?O(n)+O(e):j(n)+j(e);case"%=":return j(n)%j(e);default:throw new u(o,"UnsupportedOperator",r)}}async function Oe(e,t){const n=t.left;if("MemberExpression"===n.type){const r=await we(e,n.object);let o;if(!0===n.computed)o=await we(e,n.property);else{if("Identifier"!==n.property.type)throw new u(e,"InvalidIdentifier",t);o=n.property.name}const a=await we(e,t.right);if(Q(r)){if(!X(o))throw new u(e,"ArrayAccessMustBeNumber",t);if(o<0&&(o=r.length+o),o<0||o>r.length)throw new u(e,"OutOfBounds",t);if(o===r.length){if("="!==t.operator)throw new u(e,"OutOfBounds",t);r[o]=je(a,t.operator,r[o],t,e)}else r[o]=je(a,t.operator,r[o],t,e)}else if(r instanceof l){if(!1===J(o))throw new u(e,"KeyAccessorMustBeString",t);if(!0===r.hasField(o))r.setField(o,je(a,t.operator,r.field(o),t,e));else{if("="!==t.operator)throw new u(e,"FieldNotFound",t,{key:o});r.setField(o,je(a,t.operator,null,t,e))}}else if(r instanceof fe){if(!1===J(o))throw new u(e,"KeyAccessorMustBeString",t);if(!0!==r.hasGlobal(o))throw new u(e,"ModuleExportNotFound",t);r.setGlobal(o,je(a,t.operator,r.global(o),t,e))}else{if(!C(r))throw N(r)?new u(e,"Immutable",t):new u(e,"InvalidParameter",t);if(!1===J(o))throw new u(e,"KeyAccessorMustBeString",t);if(!0===r.hasField(o))r.setField(o,je(a,t.operator,r.field(o),t,e));else{if("="!==t.operator)throw new u(e,"FieldNotFound",t,{key:o});r.setField(o,je(a,t.operator,null,t,e))}}return k}const r=oe(e,n),o=await we(e,t.right);return r.scope[r.id]={value:je(o,t.operator,"="!==t.operator?re(r.var).value:null,t,e)},k}async function Me(e,t){const n=await we(e,t.expression);return n===k?k:new y(n)}async function Re(e,t){const n=await we(e,t.test);if(!0===n)return de(e,t.consequent);if(!1===n)return null!==t.alternate?de(e,t.alternate):k;throw new u(e,"BooleanConditionRequired",t)}async function Ae(e,t){return Ne(e,t,0)}async function Ne(e,t,n){if(n>=t.body.length)return k;const r=await de(e,t.body[n]);return r instanceof g||r===x||r===S||n===t.body.length-1?r:Ne(e,t,n+1)}async function Ce(e,t){if(null===t.argument)return new g(k);const n=await we(e,t.argument);return new g(n)}async function Ee(t,n){if(null!=t.localScope)throw ee().error("Function declarations are only valid in global scope."),new u(t,"NeverReach",n);const r=e(n.id);if(!(r in t.globalScope))throw ee().error(`Function "${r}" not declared.`),new u(t,"NeverReach",n);const o=a(n),i=n.params.map(t=>e(t)),s=Array.from(o).filter(e=>!i.includes(e));return t.globalScope[r]={value:new le(n,t,i,s)},k}async function Be(e,t){const n=oe(e,t.specifiers[0].local),r=e.libraryResolver;if(null==r)throw ee().error("Internal error: module loader not initialized"),new u(e,"NeverReach",t);const o=r.loadLibrary(n.id);let a;return r._moduleSingletons?.has(o.uri)?a=r._moduleSingletons.get(o.uri):(a=await fe.load(e,o.syntax),r._moduleSingletons?.set(o.uri,a)),n.scope[n.id]={value:a},k}async function Ge(e,t){return await de(e,t.declaration),k}async function Ue(e,t){for(const n of t.declarations)await Ke(e,n);return k}async function Ke(e,t){let n=null;n=null===t.init?null:await we(e,t.init),n===k&&(n=null);const r=oe(e,t.id);r.scope[r.id]={value:n}}async function Le(e,t){const n=await we(e,t.object);if(null===n)throw new u(e,"MemberOfNull",t);if(!1===t.computed){if("Identifier"===t.property.type){if(n instanceof l||A(n))return n.field(t.property.name);if(n instanceof T)return s(n,t.property.name,e,t);if(n instanceof fe){if(!n.hasGlobal(t.property.name))throw new u(e,"InvalidIdentifier",t);return n.global(t.property.name)}throw new u(e,"InvalidMemberAccessKey",t)}throw new u(e,"InvalidMemberAccessKey",t)}let r=await we(e,t.property);if(n instanceof l||A(n)){if(J(r))return n.field(r);throw new u(e,"InvalidMemberAccessKey",t)}if(n instanceof fe){if(J(r))return n.global(r);throw new u(e,"InvalidMemberAccessKey",t)}if(n instanceof T){if(J(r))return s(n,r,e,t);throw new u(e,"InvalidMemberAccessKey",t)}if(Q(n)){if(X(r)&&isFinite(r)&&Math.floor(r)===r){if(r<0&&(r=n.length+r),r>=n.length||r<0)throw new u(e,"OutOfBounds",t);return n[r]}throw new u(e,"InvalidMemberAccessKey",t)}if(N(n)){if(X(r)&&isFinite(r)&&Math.floor(r)===r){if(r<0&&(r=n.length()+r),r>=n.length()||r<0)throw new u(e,"OutOfBounds",t);return n.get(r)}throw new u(e,"InvalidMemberAccessKey",t)}if(J(n)){if(X(r)&&isFinite(r)&&Math.floor(r)===r){if(r<0&&(r=n.length+r),r>=n.length||r<0)throw new u(e,"OutOfBounds",t);return n[r]}throw new u(e,"InvalidMemberAccessKey",t)}throw new u(e,"InvalidMemberAccessKey",t)}async function _e(e,t){const n=await we(e,t.argument);if(H(n)){if("!"===t.operator)return!n;if("-"===t.operator)return-1*j(n);if("+"===t.operator)return 1*j(n);if("~"===t.operator)return~j(n);throw new u(e,"UnsupportUnaryOperator",t)}if("-"===t.operator)return-1*j(n);if("+"===t.operator)return 1*j(n);if("~"===t.operator)return~j(n);throw new u(e,"UnsupportUnaryOperator",t)}async function De(e,t){const n=[];for(let r=0;r<t.elements.length;r++)n.push(await we(e,t.elements[r]));for(let r=0;r<n.length;r++){if(v(n[r]))throw new u(e,"NoFunctionInArray",t);n[r]===k&&(n[r]=null)}return n}async function Ze(e,t){const n=await we(e,t.left),r=await we(e,t.right);switch(t.operator){case"|":case"<<":case">>":case">>>":case"^":case"&":return R(j(n),j(r),t.operator);case"==":return I(n,r);case"!=":return!I(n,r);case"<":case">":case"<=":case">=":return M(n,r,t.operator);case"+":return J(n)||J(r)?O(n)+O(r):j(n)+j(r);case"-":return j(n)-j(r);case"*":return j(n)*j(r);case"/":return j(n)/j(r);case"%":return j(n)%j(r);default:throw new u(e,"UnsupportedOperator",t)}}async function ze(e,t){const n=await we(e,t.left);if(!H(n))throw new u(e,"LogicalExpressionOnlyBoolean",t);switch(t.operator){case"||":{if(!0===n)return n;const r=await we(e,t.right);if(H(r))return r;throw new u(e,"LogicExpressionOrAnd",t)}case"&&":{if(!1===n)return n;const r=await we(e,t.right);if(H(r))return r;throw new u(e,"LogicExpressionOrAnd",t)}default:throw new u(e,"LogicExpressionOrAnd",t)}}function qe(e,t){return ae(e,t)}async function Pe(e,t){if("MemberExpression"===t.callee.type){const n=await we(e,t.callee.object);if(!(n instanceof fe))throw new u(e,"FunctionNotFound",t);const r=!1===t.callee.computed?t.callee.property.name:await we(e,t.callee.property);if(!n.hasGlobal(r))throw new u(e,"FunctionNotFound",t);const o=n.global(r);if(!v(o))throw new u(e,"CallNonFunction",t);return o.call(e,t)}if("Identifier"!==t.callee.type)throw new u(e,"FunctionNotFound",t);const n=ae(e,t.callee,"FunctionNotFound");if(v(n))return n.call(e,t);throw new u(e,"CallNonFunction",t)}async function We(e,t){let n="",r=0;for(const o of t.quasis)if(n+=o.value?o.value.cooked:"",!1===o.tail){if(t.expressions[r]){const o=await we(e,t.expressions[r]);if(v(o))throw new u(e,"NoFunctionInTemplateLiteral",t);n+=O(o)}r++}return n}async function Ve(e,t){F(null===t.arguments?[]:t.arguments,3,3,e,t);const n=await we(e,t.arguments[0]);if(!1===H(n))throw new u(e,"BooleanConditionRequired",t);return we(e,n?t.arguments[1]:t.arguments[2])}async function Te(e,t){F(null===t.arguments?[]:t.arguments,2,3,e,t);const n=await we(e,t.arguments[0]);if(3===t.arguments.length){const r=await we(e,t.arguments[1]),o=i(n,r);return null!=o&&""!==o?o:we(e,t.arguments[2])}return null==n||""===n?we(e,t.arguments[1]):n}async function Ye(e,t){if(t.arguments.length<2)throw new u(e,"WrongNumberOfParameters",t);if(2===t.arguments.length)return we(e,t.arguments[1]);if((t.arguments.length-1)%2==0)throw new u(e,"WrongNumberOfParameters",t);return $e(e,t,1,await we(e,t.arguments[0]))}async function $e(e,t,n,r){const o=await we(e,t.arguments[n]);if(I(o,r))return we(e,t.arguments[n+1]);const a=t.arguments.length-n;return 1===a?we(e,t.arguments[n]):2===a?null:3===a?we(e,t.arguments[n+2]):$e(e,t,n+2,r)}async function He(e,t){if(t.arguments.length<3)throw new u(e,"WrongNumberOfParameters",t);if(t.arguments.length%2==0)throw new u(e,"WrongNumberOfParameters",t);const n=await we(e,t.arguments[0]);if(!1===H(n))throw new u(e,"BooleanConditionRequired",t.arguments[0]);return Je(e,t,0,n)}async function Je(e,t,n,r){if(!0===r)return we(e,t.arguments[n+1]);if(3===t.arguments.length-n)return we(e,t.arguments[n+2]);const o=await we(e,t.arguments[n+2]);if(!1===H(o))throw new u(e,"ModuleExportNotFound",t.arguments[n+2]);return Je(e,t,n+2,o)}function Qe(){const e=Object.create(null);L(e,ce),P(e,ce),_(e,ce,qe),z(e,ce),Z(e,ce),q(e,ce),W(e,ce),D({functions:e,compiled:!1,signatures:null,evaluateIdentifier:null,mode:"async",standardFunction:ce,standardFunctionAsync:pe}),e.iif=Ve,e.defaultvalue=Te,e.decode=Ye,e.when=He;const t=function(){this.textformatting={value:l.textFormatting()}};t.prototype=Object.create(null),t.prototype.infinity=Object.freeze({value:Number.POSITIVE_INFINITY}),t.prototype.pi=Object.freeze({value:Math.PI});for(const[n,r]of Object.entries(e))t.prototype[n]=Object.freeze({value:new w(r)});return t}const Xe=Qe();function et(e){const t={mode:"async",compiled:!1,functions:Object.create(null),signatures:[],standardFunction:ce,standardFunctionAsync:pe,evaluateIdentifier:qe};for(let n=0;n<e.length;n++)e[n].registerFunctions(t);for(const[n,r]of Object.entries(t.functions))Xe.prototype[n]=Object.freeze({value:new w(r)});for(let n=0;n<t.signatures.length;n++)G(t.signatures[n],"async")}function tt(e){console.log(e)}function nt(n,a){const i=new Set(Object.keys(a?.vars||{}).map(t=>e(t))),s=new Set(Object.keys(a?.customfunctions||{}).map(t=>e(t))),{globals:c,exports:l}=o(n);return async e=>{const o=e.spatialReference??Y.WebMercator;let a=null;n.usesModules&&(a=new r(new Map,n.loadedModules));const f=new Xe;for(const t of s)null!=e.customfunctions&&t in e.customfunctions?f[t]={value:new w(e.customfunctions[t])}:f[t]=te;for(const t of i){if(null==e.vars||!(t in e.vars)){t in f||(f[t]=te);continue}const n=e.vars[t]??null;$(n)?f[t]={value:p.createFromGraphic(n,e.timeZone??null)}:f[t]={value:n}}for(const t of c)t in f||(f[t]=te);const d={lrucache:e.lrucache,interceptor:e.interceptor,services:e.services,console:e.console??tt,abortSignal:e.abortSignal??t,timeZone:e.timeZone??null,spatialReference:o,track:e.track,depthCounter:{depth:1},libraryResolver:a,exports:l,localScope:null,globalScope:f},h=await Ae(d,n);if(h instanceof g||h instanceof y){const e=h.value;if(b(e))return null;if(v(e))throw new u(d,"IllegalResult",null);return e}if(b(h))return null;if(h===x)throw new u(d,"IllegalResult",null);if(h===S)throw new u(d,"IllegalResult",null);throw new u(d,"NeverReach",null)}}function rt(e,t){return nt(e,t)(t)}et([K]),et([U]);export{rt as executeScript,et as extend,nt as prepareScript};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{neverAbortedSignal as e,toSymbolId as n}from"./arcadeEnvironment.js";import{ArcadeModule as t}from"./ArcadeModule.js";import{ArcadeModuleLoader as r}from"./ArcadeModuleLoader.js";import{getNestedOptionalValue as l,geometryMember as o,getGeometryKeys as a}from"./containerUtils.js";import i from"./Dictionary.js";import{ArcadeCompilationError as s,ArcadeExecutionError as u,ArcadeUncompilableError as c}from"./executionError.js";import p from"./Feature.js";import{NativeFunction as d,ArcadeFunction as f,ScopeMarshalledFunction as m,wrapModuleScopedResponse as g}from"./FunctionWrapper.js";import{p as h,R as y,I as w,v,q as b,r as $,i as S,s as x,j as F,k as C,u as M,w as A,x as O,y as k,z as I,h as j,n as N}from"../chunks/languageUtils.js";import{addFunctionDeclaration as E}from"./treeAnalysis.js";import{A as B}from"../chunks/aiServices.js";import{A as R}from"../chunks/array.js";import{registerFunctions as _}from"./functions/date.js";import{registerFunctions as D}from"./functions/feature.js";import{registerFunctions as G}from"./functions/geometry.js";import{registerFunctions as L}from"./functions/geomsync.js";import{registerFunctions as U}from"./functions/maths.js";import{registerFunctions as K}from"./functions/stats.js";import{registerFunctions as P}from"./functions/string.js";import{registerFunctions as W}from"./functions/track.js";import{neverReached as V}from"../core/compilerUtils.js";import{isPromiseLike as T}from"../core/promiseUtils.js";import Z from"../geometry/Geometry.js";import q from"../geometry/SpatialReference.js";import{isString as z,isArray as J,isNumber as Y,isBoolean as H,isGraphic as Q}from"../support/guards.js";function X(e){return e.symbols.symbolCounter++,`_T${e.symbols.symbolCounter}`}function ee(e){return e.symbols.symbolCounter++,`_Tvar${e.symbols.symbolCounter}`}function ne(e,n,t,r="InvalidIdentifier"){const l=e.localScope?.variables.get(n);if(null!=l)return{type:"local",var:l};if(e.globalScope.provided.has(n))return{type:"global",var:n};const o=e.globalScope.variables.get(n);if(null!=o)return{type:"global",var:o};if(null!=e.localScope){const r=e.undeclaredGlobalsInFunctions.get(n);if(null!=r)return{type:"undeclared-global",var:r.mangledName};const l={mangledName:X(e),node:t};return e.undeclaredGlobalsInFunctions.set(n,l),{type:"undeclared-global",var:l.mangledName}}throw new s(null,r,t)}function te(e,n){if(null!=e.localScope){let t=e.localScope?.variables.get(n);return null==t&&(t=X(e),e.localScope.variables.set(n,t),e.mangleMap[n]=t),{type:"local",var:t}}if(e.globalScope.provided.has(n))return{type:"global",var:n};let t=e.globalScope.variables.get(n);if(null!=t)return{type:"global",var:t};if(e.undeclaredGlobalsInFunctions.has(n)){const t=e.undeclaredGlobalsInFunctions.get(n).mangledName;return e.globalScope.variables.set(n,t),e.mangleMap[n]=t,e.undeclaredGlobalsInFunctions.delete(n),{type:"resolved-undeclared-global",var:t}}return t=X(e),e.globalScope.variables.set(n,t),e.mangleMap[n]=t,{type:"global",var:t}}class re extends f{constructor(e,n){super(),this.paramCount=n,this.fn=e}createFunction(e){return(...n)=>{if(n.length!==this.paramCount)throw new u(e,"WrongNumberOfParameters",null);return this.fn(...n)}}call(e,n){return this.fn(...n.arguments)}marshalledCall(e,n,t,r){return r(e,n,(n,l,o)=>{o=o.map(n=>!S(n)||n instanceof m?n:g(n,e,r));const a=this.call(t,{arguments:o});return T(a)?a.then(e=>g(e,t,r)):a})}}function le(e,n,t){try{return t(e,null,n.arguments)}catch(r){throw r}}function oe(e,n){switch(n.type){case"AssignmentExpression":return he(e,n);case"UpdateExpression":return me(e,n);case"TemplateLiteral":return je(e,n);case"Identifier":return Be(e,n);case"MemberExpression":return Oe(e,n);case"Literal":return null===n.value||void 0===n.value?"null":JSON.stringify(n.value);case"CallExpression":return Re(e,n);case"UnaryExpression":return ke(e,n);case"BinaryExpression":return Ne(e,n);case"LogicalExpression":return Ee(e,n);case"ArrayExpression":return Ie(e,n);case"ObjectExpression":return ie(e,n);default:throw new s(null,"Unrecognized",n)}}function ae(e,n){switch(n.type){case"EmptyStatement":return"lc.voidOperation";case"VariableDeclaration":return Me(e,n);case"BlockStatement":return be(e,n);case"FunctionDeclaration":return Ce(e,n);case"ImportDeclaration":return Se(e,n);case"ExportNamedDeclaration":return xe(e,n);case"ReturnStatement":return $e(e,n);case"IfStatement":return ve(e,n);case"ExpressionStatement":return ye(e,n);case"BreakStatement":return"break";case"ContinueStatement":return"continue";case"ForStatement":return fe(e,n);case"ForInStatement":return pe(e,n);case"ForOfStatement":return de(e,n);case"WhileStatement":return ge(e,n);default:throw new s(null,"Unrecognized",n)}}function ie(e,n){let t="lang.dictionary([";for(let r=0;r<n.properties.length;r++){const l=n.properties[r];let o;"Identifier"===l.key.type?(Fe(l.key.name),o="'"+l.key.name+"'"):o=oe(e,l.key);r>0&&(t+=","),t+="lang.strCheck("+o+",'ObjectExpression'),lang.aCheck("+oe(e,l.value)+", 'ObjectExpression')"}return t+="])",t}function se(e,n,t,r,l=(e,n)=>`${e} = ${n}`){const o=ee(e),a=ee(e);return[`var ${o} = ${t};`,`for (var ${a} = 0; ${a} < ${o}; ${a}++) {`,` ${l(n,a)}`,` ${ae(e,r)}`,"}","lastStatement = lc.voidOperation;"].join("\n")}function ue(e,n,t,r,l=e=>e){const o=ee(e),a=ee(e);return[`var ${o} = ${t};`,`for (var ${a} of ${o}) {`,` ${n} = ${l(a)};`,` ${ae(e,r)}`,"}","lastStatement = lc.voidOperation;"].join("\n")}function ce(e,n,t,r){const l=ee(e);return[`var ${l} = ${t}.iterator(runtimeCtx.abortSignal);`,`while ((${n} = lang.graphicToFeature(yield ${l}.next(), ${t}, runtimeCtx)) != null) {`,` ${ae(e,r)}`,"}","lastStatement = lc.voidOperation;"].join("\n")}function pe(e,t){const r=ee(e);let l="var "+r+" = "+oe(e,t.right)+";\n";"VariableDeclaration"===t.left.type&&(l+=ae(e,t.left));const o=n("VariableDeclaration"===t.left.type?t.left.declarations[0].id:t.left);Fe(o);const a=ne(e,o,t.left);let i;switch(a.type){case"local":i=`lscope['${a.var}']`;break;case"global":i=`gscope['${a.var}']`;break;case"undeclared-global":i=`gscope['${a.var}']`,l+="lang.chkAssig('"+a.var+"',runtimeCtx); \n";break;default:throw V(a.type),new s(null,"NeverReach",t.left)}return l+="if ("+r+"===null) { lastStatement = lc.voidOperation; }\n ",l+="else if (lc.isArray("+r+") || lc.isString("+r+")) {\n",l+=se(e,i,`${r}.length`,t.body),l+="}\n",l+="else if (lc.isImmutableArray("+r+")) {\n",l+=se(e,i,`${r}.length()`,t.body),l+="}\n",l+="else if (( "+r+" instanceof lang.Dictionary) || lc.isDictionaryLike("+r+")) {\n",l+=ue(e,i,`${r}.keys()`,t.body),l+="}\n",e.isAsync&&(l+="else if (lc.isFeatureSet("+r+")) {\n",l+=ce(e,i,r,t.body),l+="}\n"),l+=`else if (lc.isGeometry(${r})) {\n`,l+=ue(e,i,`lang.getGeometryKeys(${r})`,t.body),l+="}\n",l+="else { lastStatement = lc.voidOperation; } \n",l}function de(e,t){const r=ee(e);let l="var "+r+" = "+oe(e,t.right)+";\n";"VariableDeclaration"===t.left.type&&(l+=ae(e,t.left));const o=n("VariableDeclaration"===t.left.type?t.left.declarations[0].id:t.left);Fe(o);const a=ne(e,o,t.left);let i;switch(a.type){case"local":i=`lscope['${a.var}']`;break;case"global":i=`gscope['${a.var}']`;break;case"undeclared-global":i=`gscope['${a.var}']`,l+="lang.chkAssig('"+a.var+"',runtimeCtx); \n";break;default:throw V(a.type),new s(null,"NeverReach",t.left)}return l+="if ("+r+"===null) { lastStatement = lc.voidOperation; }\n ",l+="else if (lc.isArray("+r+") || lc.isString("+r+")) {\n",l+=se(e,i,`${r}.length`,t.body,(e,n)=>[`if (${n} >= ${r}.length) {`," lang.error('OutOfBounds');","}",`${e} = ${r}[${n}];`].join("\n")),l+="}\n",l+="else if (lc.isImmutableArray("+r+")) {\n",l+=se(e,i,`${r}.length()`,t.body,(e,n)=>`${e} = ${r}.get(${n});`),l+="}\n",l+="else if (( "+r+" instanceof lang.Dictionary) || lc.isDictionaryLike("+r+")) {\n",l+=ue(e,i,`${r}.keys()`,t.body,e=>`lang.entry(${e}, ${r}.field(${e}))`),l+="}\n",e.isAsync&&(l+="else if (lc.isFeatureSet("+r+")) {\n",l+=ce(e,i,r,t.body),l+="}\n"),l+=`else if (lc.isGeometry(${r})) {\n`,l+=ue(e,i,`lang.getGeometryKeys(${r})`,t.body,e=>`lang.entry(${e}, lang.geometryMember(${r}, ${e}, runtimeCtx, null, 1))`),l+="}\n",l+="else { lastStatement = lc.voidOperation; } \n",l}function fe(e,n){let t="lastStatement = lc.voidOperation; \n";null!==n.init&&("VariableDeclaration"===n.init.type?t+=ae(e,n.init):t+=oe(e,n.init)+"; ");const r=ee(e),l=ee(e);return t+="var "+r+" = true; ",t+="\n do { ",null!==n.update&&(t+=" if ("+r+"===false) {\n "+oe(e,n.update)+" \n}\n "+r+"=false; \n"),null!==n.test&&(t+="var "+l+" = "+oe(e,n.test)+"; ",t+="if ("+l+"===false) { break; } else if ("+l+"!==true) { lang.error('BooleanConditionRequired'); }\n"),t+=ae(e,n.body),null!==n.update&&(t+="\n "+oe(e,n.update)),t+="\n"+r+" = true; \n} while(true); lastStatement = lc.voidOperation; ",t}function me(e,t){if("CallExpression"===t.argument.type)throw new s(null,"NeverReach",t);let r;if("MemberExpression"===t.argument.type){const n=oe(e,t.argument.object);return!0===t.argument.computed?r=oe(e,t.argument.property):(Fe(t.argument.property.name),r="'"+t.argument.property.name+"'"),"lang.memberupdate("+n+","+r+",'"+t.operator+"',"+t.prefix+")"}const l=n(t.argument);Fe(l);const o=ne(e,l,t.argument);switch(o.type){case"local":return`lang.update(lscope, '${o.var}', '${t.operator}', ${t.prefix})`;case"global":return`lang.update(gscope, '${o.var}', '${t.operator}', ${t.prefix})`;case"undeclared-global":return`lang.update(gscope, lang.chkAssig('${o.var}',runtimeCtx), '${t.operator}', ${t.prefix})`;default:throw V(o.type),new s(null,"NeverReach",t.argument)}}function ge(e,n){let t="lastStatement = lc.voidOperation; \n";const r=ee(e);return t+=`\n var ${r} = true;\n do {\n ${r} = ${oe(e,n.test)};\n if (${r}==false) {\n break;\n }\n if (${r}!==true) {\n lang.error('BooleanConditionRequired');\n }\n ${ae(e,n.body)}\n }\n while (${r} !== false);\n lastStatement = lc.voidOperation;\n `,t}function he(e,t){const r=oe(e,t.right);if("MemberExpression"===t.left.type){let n;const l=oe(e,t.left.object);return!0===t.left.computed?n=oe(e,t.left.property):(n="'"+t.left.property.name+"'",Fe(t.left.property.name)),"lang.assignmember("+l+","+n+",'"+t.operator+"',"+r+")"}const l=n(t.left);Fe(l);const o=ne(e,l,t.left);switch(o.type){case"local":return`lscope['${o.var}']=lang.assign(${r},'${t.operator}', lscope['${o.var}'])`;case"global":return`gscope['${o.var}']=lang.assign(${r},'${t.operator}', gscope['${o.var}'])`;case"undeclared-global":return`gscope[lang.chkAssig('${o.var}',runtimeCtx)]=lang.assign(${r},'${t.operator}', gscope['${o.var}'])`;default:throw V(o.type),new s(null,"NeverReach",t.left)}}function ye(e,n){return"AssignmentExpression"===n.expression.type?"lastStatement = lc.voidOperation; "+oe(e,n.expression)+"; \n ":"lastStatement = "+oe(e,n.expression)+"; "}function we(e,n){return"BlockStatement"===n.type?ae(e,n):"ReturnStatement"===n.type||"BreakStatement"===n.type||"ContinueStatement"===n.type?ae(e,n)+"; ":"ExpressionStatement"===n.type?ae(e,n):ae(e,n)+"; "}function ve(e,n){return`if (lang.mustBoolean(${oe(e,n.test)}, runtimeCtx) === true) {\n ${we(e,n.consequent)}\n } `+(null!==n.alternate?"IfStatement"===n.alternate.type?" else "+ve(e,n.alternate):` else {\n ${we(e,n.alternate)}\n }\n`:" else {\n lastStatement = lc.voidOperation;\n }\n")}function be(e,n){let t="";for(let r=0;r<n.body.length;r++)"EmptyStatement"!==n.body[r].type&&("ReturnStatement"===n.body[r].type||"BreakStatement"===n.body[r].type||"ContinueStatement"===n.body[r].type?t+=ae(e,n.body[r])+"; \n":t+=ae(e,n.body[r])+" \n");return t}function $e(e,n){if(null===n.argument)return"return lc.voidOperation";return"return "+oe(e,n.argument)}function Se(e,t){const r=n(t.specifiers[0].local);Fe(r);const l=e.libraryResolver?.loadLibrary(r),o=X(e);void 0===e.moduleFactory[l.uri]&&(e.moduleFactory[l.uri]=en(l.syntax,{moduleFactory:e.moduleFactory,libraryResolver:e.libraryResolver},e.isAsync)),e.moduleFactoryMap[o]=l.uri;let a="";a=e.isAsync?"(yield lang.loadModule('"+o+"', runtimeCtx) ); ":"lang.loadModule('"+o+"', runtimeCtx); ";const i=te(e,r);switch(i.type){case"global":return`gscope['${i.var}']=${a}`;case"resolved-undeclared-global":return`gscope[lang.setAssig('${i.var}', runtimeCtx)]=${a}`;default:throw new s(null,"NeverReach",t.specifiers[0].local)}}function xe(e,t){const r=ae(e,t.declaration);if("FunctionDeclaration"===t.declaration.type)e.exports[n(t.declaration.id)]="function";else if("VariableDeclaration"===t.declaration.type)for(const l of t.declaration.declarations)e.exports[n(l.id)]="variable";return r}function Fe(e){if("iif"===e)throw new c;if("decode"===e)throw new c;if("when"===e)throw new c;if("defaultvalue"===e)throw new c}function Ce(e,t){const r=n(t.id);Fe(r);const l=te(e,r),o={isAsync:e.isAsync,exports:e.exports,undeclaredGlobalsInFunctions:e.undeclaredGlobalsInFunctions,moduleFactory:e.moduleFactory,moduleFactoryMap:e.moduleFactoryMap,libraryResolver:e.libraryResolver,symbols:e.symbols,mangleMap:e.mangleMap,localScope:{variables:new Map},depthCounter:e.depthCounter,globalScope:e.globalScope};let a="new lang.UserDefinedCompiledFunction( lang.functionDepthchecker(function() { var lastStatement = lc.voidOperation; \n var lscope = runtimeCtx.localStack[runtimeCtx.localStack.length-1];\n";for(let i=0;i<t.params.length;i++){const e=n(t.params[i]);Fe(e);const r=te(o,e);if("local"!==r.type)throw new s(null,"NeverReach",t.params[i]);a+=`lscope['${r.var}']=arguments[${i.toString()}];\n`}switch(!0===e.isAsync?(a+="return lang.__awaiter(this, void 0, void 0, function* () {\n",a+=be(o,t.body)+"\n return lastStatement; ",a+="}); }",a+=", runtimeCtx),"+t.params.length+")",a+="\n lastStatement = lc.voidOperation; \n"):(a+=be(o,t.body)+"\n return lastStatement; }, runtimeCtx),"+t.params.length+")",a+="\n lastStatement = lc.voidOperation; \n"),l.type){case"global":return`gscope['${l.var}']=${a}`;case"resolved-undeclared-global":return`gscope[lang.setAssig('${l.var}', runtimeCtx)]=${a}`;default:throw new s(null,"NeverReach",t.id)}}function Me(e,n){const t=[];for(let r=0;r<n.declarations.length;r++)t.push(Ae(e,n.declarations[r]));return t.join("\n")+" \n lastStatement= lc.voidOperation; \n"}function Ae(e,t){const r=null===t.init?"null":oe(e,t.init),l=n(t.id);Fe(l);const o=te(e,l);switch(o.type){case"local":return`lscope['${o.var}']=${r};`;case"global":return`gscope['${o.var}']=${r};`;case"resolved-undeclared-global":return`gscope[lang.setAssig('${o.var}', runtimeCtx)]=${r};`;default:throw V(o.type),new s(null,"NeverReach",t.id)}}function Oe(e,n){try{let t;return!0===n.computed?t=oe(e,n.property):(Fe(n.property.name),t="'"+n.property.name+"'"),"lang.member("+oe(e,n.object)+","+t+")"}catch(t){throw t}}function ke(e,n){try{return"lang.unary("+oe(e,n.argument)+",'"+n.operator+"')"}catch(t){throw t}}function Ie(e,n){try{const t=[];for(let r=0;r<n.elements.length;r++)"Literal"===n.elements[r].type?t.push(oe(e,n.elements[r])):t.push("lang.aCheck("+oe(e,n.elements[r])+",'ArrayExpression')");return"["+t.join(",")+"]"}catch(t){throw t}}function je(e,n){try{const t=[];let r=0;for(const l of n.quasis)t.push(l.value?JSON.stringify(l.value.cooked):JSON.stringify("")),!1===l.tail&&(t.push(n.expressions[r]?"lang.castString(lang.aCheck("+oe(e,n.expressions[r])+", 'TemplateLiteral'))":""),r++);return"(["+t.join(",")+"]).join('')"}catch(t){throw t}}function Ne(e,n){try{return"lang.binary("+oe(e,n.left)+","+oe(e,n.right)+",'"+n.operator+"')"}catch(t){throw t}}function Ee(e,n){try{if("AssignmentExpression"===n.left.type||"UpdateExpression"===n.left.type)throw new s(null,"LogicalExpressionOnlyBoolean",n);if("AssignmentExpression"===n.right.type||"UpdateExpression"===n.right.type)throw new s(null,"LogicalExpressionOnlyBoolean",n);if("&&"===n.operator||"||"===n.operator)return"(lang.logicalCheck("+oe(e,n.left)+") "+n.operator+" lang.logicalCheck("+oe(e,n.right)+"))";throw new s(null,"LogicExpressionOrAnd",null)}catch(t){throw t}}function Be(e,t){const r=n(t);Fe(r);const l=ne(e,r,t);switch(l.type){case"local":return`lscope['${l.var}']`;case"global":return`gscope['${l.var}']`;case"undeclared-global":return`gscope[lang.chkAssig('${l.var}',runtimeCtx)]`;default:throw V(l.type),new s(null,"NeverReach",t)}}function Re(e,t){try{if("MemberExpression"===t.callee.type){let n;!0===t.callee.computed?n=oe(e,t.callee.property):(Fe(t.callee.property.name),n="'"+t.callee.property.name+"'");let r="[";for(let l=0;l<t.arguments.length;l++)l>0&&(r+=", "),r+=oe(e,t.arguments[l]);return r+="]",e.isAsync?"(yield lang.callModuleFunction("+oe(e,t.callee.object)+","+r+","+n+",runtimeCtx))":"lang.callModuleFunction("+oe(e,t.callee.object)+","+r+","+n+",runtimeCtx)"}if("Identifier"!==t.callee.type)throw new s(null,"FunctionNotFound",t);const r=n(t.callee);if("iif"===r)return _e(e,t);if("when"===r)return Ge(e,t);if("defaultvalue"===r)return De(e,t);if("decode"===r)return Le(e,t);const l=ne(e,r,t.callee,"FunctionNotFound");let o;switch(l.type){case"local":o=`lscope['${l.var}']`;break;case"global":o=`gscope['${l.var}']`;break;case"undeclared-global":o=`gscope[lang.chkAssig('${l.var}',runtimeCtx)]`;break;default:throw V(l.type),new s(null,"NeverReach",t.callee)}let a="[";for(let n=0;n<t.arguments.length;n++)n>0&&(a+=", "),a+=oe(e,t.arguments[n]);return a+="]",e.isAsync?"(yield lang.callfunc("+o+","+a+",runtimeCtx) )":"lang.callfunc("+o+","+a+",runtimeCtx)"}catch(r){throw r}}function _e(e,n){try{if(3!==n.arguments.length)throw new s(null,"WrongNumberOfParameters",n);const t=ee(e);return`${e.isAsync?"(yield (function() { \n return lang.__awaiter(this, void 0, void 0, function* () {":"function() {"}\n var ${t} = ${oe(e,n.arguments[0])};\n\n if (${t} === true) {\n return ${oe(e,n.arguments[1])};\n }\n else if (${t} === false) {\n return ${oe(e,n.arguments[2])};\n }\n else {\n lang.error('ExecutionErrorCodes.BooleanConditionRequired');\n }\n ${e.isAsync?"})}()))":"}()"}`}catch(t){throw t}}function De(e,n){try{if(n.arguments.length<2||n.arguments.length>3)throw new s(null,"WrongNumberOfParameters",n);const t=ee(e),r=ee(e);return 3===n.arguments.length?`${e.isAsync?"(yield (function() { \n return lang.__awaiter(this, void 0, void 0, function* () {":"function() {"}\n var ${t} = ${oe(e,n.arguments[0])};\n var ${r} = ${oe(e,n.arguments[1])};\n ${t} = lang.getNestedOptionalValue(${t}, ${r});\n return ${t} != null && ${t} !== "" ? ${t} : ${oe(e,n.arguments[2])};\n ${e.isAsync?"})}()))":"}()"}`:`${e.isAsync?"(yield (function() { \n return lang.__awaiter(this, void 0, void 0, function* () {":"function() {"}\n var ${t} = ${oe(e,n.arguments[0])};\n if (${t} === null) {\n return ${oe(e,n.arguments[1])};\n }\n if (${t} === "") {\n return ${oe(e,n.arguments[1])};\n }\n if (${t} === undefined) {\n return ${oe(e,n.arguments[1])};\n }\n return ${t};\n ${e.isAsync?"})}()))":"}()"}`}catch(t){throw t}}function Ge(e,n){try{if(n.arguments.length<3)throw new s(null,"WrongNumberOfParameters",n);if(n.arguments.length%2==0)throw new s(null,"WrongNumberOfParameters",n);const t=ee(e);let r="var ";for(let l=0;l<n.arguments.length-1;l+=2)r+=`${t} = lang.mustBoolean(${oe(e,n.arguments[l])}, runtimeCtx);\n if (${t} === true ) {\n return ${oe(e,n.arguments[l+1])}\n }\n`;return`${e.isAsync?"(yield (function() { \n return lang.__awaiter(this, void 0, void 0, function* () {":"function() {"}\n ${r}\n return ${oe(e,n.arguments[n.arguments.length-1])}\n ${e.isAsync?"})}()))":"}()"}`}catch(t){throw t}}function Le(e,n){try{if(n.arguments.length<2)throw new s(null,"WrongNumberOfParameters",n);if(2===n.arguments.length)return`(${oe(e,n.arguments[1])})`;if((n.arguments.length-1)%2==0)throw new s(null,"WrongNumberOfParameters",n);const t=ee(e),r=ee(e);let l="var ";for(let o=1;o<n.arguments.length-1;o+=2)l+=`${r} = ${oe(e,n.arguments[o])};\n if (lang.binary(${r}, ${t}, "==") === true ) {\n return ${oe(e,n.arguments[o+1])}\n }\n`;return`${e.isAsync?"(yield (function() { \n return lang.__awaiter(this, void 0, void 0, function* () {":"function() {"}\n var ${t} = ${oe(e,n.arguments[0])};\n ${l}\n return ${oe(e,n.arguments[n.arguments.length-1])}\n ${e.isAsync?"})}()))":"}()"}`}catch(t){throw t}}function Ue(e,n){try{return le(e,n,(e,n)=>{throw new u(e,"Unrecognized",n)})}catch(t){throw t}}function Ke(e){const n=function(){this._SymbolsMap=new Set(["textformatting","infinity","pi"]),this.textformatting=i.textFormatting()};n.prototype=Object.create(null),n.provided=new Set(["textformatting","infinity","pi"]),n.prototype.infinity=Number.POSITIVE_INFINITY,n.prototype.pi=Math.PI;for(const[t,r]of Object.entries(e))n.prototype[t]=new d(r),n.provided.add(t);return n}function Pe(){const e=Object.create(null);_(e,le),P(e,le),D(e,le,ze),U(e,le),G(e,le),K(e,le),W(e,le),e.iif=Ue,e.decode=Ue,e.when=Ue,e.defaultvalue=Ue;const n=Ke(e);L(e,le);return{ScopeSync:Ke(e),ScopeAsync:n}}const{ScopeSync:We,ScopeAsync:Ve}=Pe();function Te(e,n){const t={mode:n,compiled:!0,functions:Object.create(null),signatures:[],standardFunction:le,standardFunctionAsync:le,evaluateIdentifier:ze};for(const r of e)r.registerFunctions(t);if("sync"===n)for(const[r,l]of Object.entries(t.functions))We.prototype[r]=new d(l),We.provided.add(r);else for(const[r,l]of Object.entries(t.functions))Ve.prototype[r]=new d(l),Ve.provided.add(r);for(const r of t.signatures)E(r,n)}function Ze(e,n,t){const r=new Set(e?Ve.provided:We.provided);for(const l in t)r.add(l);for(const l in n)r.add(l);return r}function qe(e,n,t,r){const l=e?new Ve:new We;for(const o in t)l[o]=t[o],l._SymbolsMap.add(o);for(const o in n){const e=n[o];l._SymbolsMap.add(o),Q(e)?l[o]=p.createFromGraphic(e,r??null):l[o]=e}return l}function ze(e,n){const t=n.name;if("_SymbolsMap"===t)throw new u(e,"InvalidIdentifier",null);if(e.localStack.length>0){const n=e.localStack[e.localStack.length-1];if(!t.toLowerCase().startsWith("_t")&&void 0!==n[t])return n[t];const r=e.mangleMap[t];if(void 0!==r&&void 0!==n[r])return n[r]}if(!t.toLowerCase().startsWith("_t")&&void 0!==e.globalScope[t])return e.globalScope[t];if(e.globalScope._SymbolsMap.has(t))return e.globalScope[t];const r=e.mangleMap[t];return void 0!==r?e.globalScope[r]:void 0}Te([R],"sync"),Te([R],"async"),Te([B],"async");const Je={isNumber:e=>Y(e),isArray:e=>J(e),isImmutableArray:e=>F(e),isDictionaryLike:e=>x(e),isString:e=>z(e),isDictionary:e=>N(e),isGeometry:e=>j(e),getGeometryKeys:e=>a(e),geometryMember:(e,n,t,r,l=1)=>o(e,n,t,r,l),error(e){throw new u(null,e,null)},__awaiter(e,n,t,r){const l=r.apply(e,n||[]);let o=l.next();for(;!o.done&&!T(o.value);)o=l.next(o.value);return o.done?o.value:new Promise((e,n)=>{function t(r){for(;!r.done;){if(T(r.value))return void Promise.resolve(r.value).then(e=>{try{t(l.next(e))}catch(r){n(r)}},e=>{try{t(l.throw(e))}catch(r){n(r)}});try{r=l.next(r.value)}catch(o){return void n(o)}}e(r.value)}t(o)})},functionDepthchecker:(e,n)=>function(){if(n.depthCounter.depth++,n.localStack.push({}),n.depthCounter.depth>64)throw new u(null,"MaximumCallDepth",null);const t=e.apply(this,arguments);return T(t)?t.then(e=>(n.depthCounter.depth--,n.localStack.length=n.localStack.length-1,e)):(n.depthCounter.depth--,n.localStack.length=n.localStack.length-1,t)},chkAssig(e,n){if(void 0===n.gdefs[e])throw new u(n,"InvalidIdentifier",null);return e},mustBoolean(e,n){if(!0===e||!1===e)return e;throw new u(n,"BooleanConditionRequired",null)},setAssig:(e,n)=>(n.gdefs[e]=1,e),castString:e=>A(e),aCheck(e,n){if(S(e)){if("ArrayExpression"===n)throw new u(null,"NoFunctionInArray",null);if("ObjectExpression"===n)throw new u(null,"NoFunctionInDictionary",null);throw new u(null,"NoFunctionInTemplateLiteral",null)}return e===v?null:e},Dictionary:i,Feature:p,UserDefinedCompiledFunction:re,dictionary(e){const n=Object.create(null),t=new Map;for(let l=0;l<e.length;l+=2){if(S(e[l+1]))throw new u(null,"NoFunctionInDictionary",null);if(!1===z(e[l]))throw new u(null,"KeyMustBeString",null);let r=e[l].toString();const o=r.toLowerCase();t.has(o)?r=t.get(o):t.set(o,r),e[l+1]===v?n[r]=null:n[r]=e[l+1]}const r=new i(n);return r.immutable=!1,r},entry:(e,n)=>i.containerEntry(e,n),strCheck(e){if(!1===z(e))throw new u(null,"KeyMustBeString",null);return e},unary(e,n){if(H(e)){if("!"===n)return!e;if("-"===n)return-1*M(e);if("+"===n)return 1*M(e);if("~"===n)return~M(e);throw new u(null,"UnsupportUnaryOperator",null)}if("-"===n)return-1*M(e);if("+"===n)return 1*M(e);if("~"===n)return~M(e);throw new u(null,"UnsupportUnaryOperator",null)},logicalCheck(e){if(!1===H(e))throw new u(null,"LogicExpressionOrAnd",null);return e},logical(e,n,t){if(H(e)&&H(n))switch(t){case"||":return e||n;case"&&":return e&&n;default:throw new u(null,"LogicExpressionOrAnd",null)}throw new u(null,"LogicExpressionOrAnd",null)},binary(e,n,t){switch(t){case"|":case"<<":case">>":case">>>":case"^":case"&":return I(M(e),M(n),t);case"==":case"=":return k(e,n);case"!=":return!k(e,n);case"<":case">":case"<=":case">=":return O(e,n,t);case"+":return z(e)||z(n)?A(e)+A(n):M(e)+M(n);case"-":return M(e)-M(n);case"*":return M(e)*M(n);case"/":return M(e)/M(n);case"%":return M(e)%M(n);default:throw new u(null,"UnsupportedOperator",null)}},assign(e,n,t){switch(n){case"=":return e===v?null:e;case"/=":return M(t)/M(e);case"*=":return M(t)*M(e);case"-=":return M(t)-M(e);case"+=":return z(t)||z(e)?A(t)+A(e):M(t)+M(e);case"%=":return M(t)%M(e);default:throw new u(null,"UnsupportedOperator",null)}},update(e,n,t,r){const l=M(e[n]);return e[n]="++"===t?l+1:l-1,!1===r?l:"++"===t?l+1:l-1},graphicToFeature:(e,n,t)=>null===e?null:p.createFromGraphicLikeObject(e.geometry,e.attributes,n,t.timeZone),memberupdate(e,n,t,r){let l;if(J(e)){if(!Y(n))throw new u(null,"ArrayAccessMustBeNumber",null);if(n<0&&(n=e.length+n),n<0||n>=e.length)throw new u(null,"OutOfBounds",null);l=M(e[n]),e[n]="++"===t?l+1:l-1}else if(e instanceof i){if(!1===z(n))throw new u(null,"KeyAccessorMustBeString",null);if(!0!==e.hasField(n))throw new u(null,"FieldNotFound",null,{key:n});l=M(e.field(n)),e.setField(n,"++"===t?l+1:l-1)}else if(C(e)){if(!1===z(n))throw new u(null,"KeyAccessorMustBeString",null);if(!0!==e.hasField(n))throw new u(null,"FieldNotFound",null);l=M(e.field(n)),e.setField(n,"++"===t?l+1:l-1)}else{if(F(e))throw new u(null,"Immutable",null);if(!(e instanceof Xe))throw new u(null,"InvalidIdentifier",null);if(!1===z(n))throw new u(null,"ModuleAccessorMustBeString",null);if(!0!==e.hasGlobal(n))throw new u(null,"ModuleExportNotFound",null);l=M(e.global(n)),e.setGlobal(n,"++"===t?l+1:l-1)}return!1===r?l:"++"===t?l+1:l-1},assignmember(e,n,t,r){if(J(e)){if(!Y(n))throw new u(null,"ArrayAccessMustBeNumber",null);if(n<0&&(n=e.length+n),n<0||n>e.length)throw new u(null,"OutOfBounds",null);if(n===e.length){if("="!==t)throw new u(null,"OutOfBounds",null);e[n]=this.assign(r,t,e[n])}else e[n]=this.assign(r,t,e[n])}else if(e instanceof i){if(!1===z(n))throw new u(null,"KeyAccessorMustBeString",null);if(!0===e.hasField(n))e.setField(n,this.assign(r,t,e.field(n)));else{if("="!==t)throw new u(null,"FieldNotFound",null);e.setField(n,this.assign(r,t,null))}}else if(C(e)){if(!1===z(n))throw new u(null,"KeyAccessorMustBeString",null);if(!0===e.hasField(n))e.setField(n,this.assign(r,t,e.field(n)));else{if("="!==t)throw new u(null,"FieldNotFound",null);e.setField(n,this.assign(r,t,null))}}else{if(F(e))throw new u(null,"Immutable",null);if(!(e instanceof Xe))throw new u(null,"InvalidIdentifier",null);if(!1===z(n))throw new u(null,"ModuleAccessorMustBeString",null);if(!e.hasGlobal(n))throw new u(null,"ModuleExportNotFound",null);e.setGlobal(n,this.assign(r,t,e.global(n)))}},member(e,n){if(null===e)throw new u(null,"MemberOfNull",null);if(e instanceof i||x(e)){if(z(n))return e.field(n);throw new u(null,"InvalidMemberAccessKey",null)}if(e instanceof Z){if(z(n))return o(e,n,null,null);throw new u(null,"InvalidMemberAccessKey",null)}if(J(e)){if(Y(n)&&isFinite(n)&&Math.floor(n)===n){if(n<0&&(n=e.length+n),n>=e.length||n<0)throw new u(null,"OutOfBounds",null);return e[n]}throw new u(null,"InvalidMemberAccessKey",null)}if(z(e)){if(Y(n)&&isFinite(n)&&Math.floor(n)===n){if(n<0&&(n=e.length+n),n>=e.length||n<0)throw new u(null,"OutOfBounds",null);return e[n]}throw new u(null,"InvalidMemberAccessKey",null)}if(F(e)){if(Y(n)&&isFinite(n)&&Math.floor(n)===n){if(n<0&&(n=e.length()+n),n>=e.length()||n<0)throw new u(null,"OutOfBounds",null);return e.get(n)}throw new u(null,"InvalidMemberAccessKey",null)}if(e instanceof Xe){if(z(n))return e.global(n);throw new u(null,"InvalidMemberAccessKey",null)}throw new u(null,"InvalidMemberAccessKey",null)},callfunc:(e,n,t)=>e.call(t,{arguments:n,preparsed:!0}),loadModule(e,n){const t=n.moduleFactoryMap[e];if(n.moduleSingletons[t])return n.moduleSingletons[t];const r=n.moduleFactory[t]({moduleSingletons:n.moduleSingletons,depthCounter:n.depthCounter,lrucache:n.lrucache,interceptor:n.interceptor,services:n.services,console:n.console,abortSignal:n.abortSignal,timeZone:n.timeZone??null,spatialReference:n.spatialReference});return n.moduleSingletons[t]=r,r},callModuleFunction(e,n,t,r){if(!(e instanceof Xe))throw new u(null,"FunctionNotFound",null);const l=e.global(t);if(!1===S(l))throw new u(null,"CallNonFunction",null);return l.call(r,{preparsed:!0,arguments:n})},getNestedOptionalValue:(e,n)=>l(e,n)};function Ye(e){console.log(e)}function He(n,t,l=!1){null==t&&(t={vars:{},customfunctions:{}});let o=null;n.usesModules&&(o=new r(null,n.loadedModules));const a={isAsync:l,globalScope:{provided:Ze(l,t.vars,t.customfunctions),variables:new Map},moduleFactory:{},moduleFactoryMap:{},undeclaredGlobalsInFunctions:new Map,libraryResolver:o,localScope:null,mangleMap:{},depthCounter:{depth:1},exports:{},symbols:{symbolCounter:0}};let i=be(a,n);""===i&&(i="lc.voidOperation; "),a.undeclaredGlobalsInFunctions.size>0&&a.undeclaredGlobalsInFunctions.forEach(e=>{throw new s(null,"InvalidIdentifier",e.node)});let c="";c=l?"var runtimeCtx=this.prepare(context, true);\n var lc = this.lc; var lang = this.lang; var gscope=runtimeCtx.globalScope; \nreturn lang.__awaiter(this, void 0, void 0, function* () {\n\n function mainBody() {\n var lastStatement=lc.voidOperation;\n return lang.__awaiter(this, void 0, void 0, function* () {\n"+i+"\n return lastStatement; }); } \n return this.postProcess(yield mainBody()); }); ":"var runtimeCtx=this.prepare(context, false);\n var lc = this.lc; var lang = this.lang; var gscope=runtimeCtx.globalScope; \n function mainBody() {\n var lastStatement=lc.voidOperation;\n "+i+"\n return lastStatement; } \n return this.postProcess(mainBody()); ";const p=a.moduleFactory,d=a.moduleFactoryMap,f=a.exports,m={};let g;for(g in f)m[g]=a.mangleMap[g]??g;const x={lc:h,lang:Je,mangles:a.mangleMap,postProcess(e){if(e instanceof y&&(e=e.value),e instanceof w&&(e=e.value),e===v&&(e=null),e===b)throw new u(null,"IllegalResult",null);if(e===$)throw new u(null,"IllegalResult",null);if(S(e))throw new u(null,"IllegalResult",null);return e},prepare(n,t){const r=n.spatialReference??q.WebMercator,l=qe(t,n.vars,n.customfunctions,n.timeZone);return{localStack:[],moduleFactory:p,moduleFactoryMap:d,mangleMap:this.mangles,moduleSingletons:{},exports:f,gdefs:{},exportmangle:m,spatialReference:r,globalScope:l,abortSignal:n.abortSignal??e,services:n.services,console:n.console??Ye,lrucache:n.lrucache,timeZone:n.timeZone??null,interceptor:n.interceptor,depthCounter:{depth:1},track:n.track}}};return new Function("context",c).bind(x)}async function Qe(){return Te([await import("./functions/geomasync.js")],"async"),!0}class Xe extends t{constructor(e){super(),this.moduleContext=e}hasGlobal(e){return void 0===this.moduleContext.exports[e]&&(e=e.toLowerCase()),void 0!==this.moduleContext.exports[e]}setGlobal(e,n){const t=this.moduleContext.globalScope,r=e.toLowerCase();if(S(n))throw new u(null,"AssignModuleFunction",null);t[this.moduleContext.exportmangle[r]]=n}global(e){const n=this.moduleContext.globalScope,t=e.toLowerCase(),r=n[this.moduleContext.exportmangle[t]];if(void 0===r)throw new u(null,"InvalidIdentifier",null);if(S(r)&&!(r instanceof m)){const e=new m;return e.fn=r,e.parameterEvaluator=le,e.context=this.moduleContext,n[this.moduleContext.exportmangle[t]]=e,e}return r}}function en(n,t,l){const o={isAsync:l,moduleFactory:t.moduleFactory,moduleFactoryMap:{},libraryResolver:new r(null,n.loadedModules),globalScope:{provided:Ze(l,null,null),variables:new Map},localScope:null,mangleMap:{},undeclaredGlobalsInFunctions:new Map,depthCounter:{depth:1},exports:{},symbols:{symbolCounter:0}};let a=be(o,n);""===a&&(a="lc.voidOperation; ");let i="";i=l?"var runtimeCtx=this.prepare(context, true);\n var lc = this.lc; var lang = this.lang; var gscope=runtimeCtx.globalScope; \nreturn lang.__awaiter(this, void 0, void 0, function* () {\n\n function mainBody() {\n var lastStatement=lc.voidOperation;\n return lang.__awaiter(this, void 0, void 0, function* () {\n"+a+"\n return lastStatement; }); } \n yield mainBody(); \n return this.prepareModule(runtimeCtx); }); ":"var runtimeCtx=this.prepare(context, false);\n var lc = this.lc; var lang = this.lang; var gscope=runtimeCtx.globalScope; \n function mainBody() {\n var lastStatement=lc.voidOperation;\n "+a+"\n return lastStatement; } \n mainBody(); \n return this.prepareModule(runtimeCtx); ";const s=o.moduleFactory,u=o.moduleFactoryMap,c=o.exports,p={};let d;for(d in c)p[d]=o.mangleMap[d]??d;const f={lc:h,lang:Je,mangles:o.mangleMap,prepareModule:e=>new Xe(e),prepare(n,t){const r=n.spatialReference??q.WebMercator,l=qe(t,null,null,n.timeZone);return{localStack:[],exports:c,exportmangle:p,gdefs:{},moduleFactory:s,moduleFactoryMap:u,moduleSingletons:n.moduleSingletons,mangleMap:this.mangles,spatialReference:r,globalScope:l,abortSignal:n.abortSignal??e,services:n.services,console:n.console??Ye,lrucache:n.lrucache,timeZone:n.timeZone??null,interceptor:n.interceptor,depthCounter:n.depthCounter,track:null}}};return new Function("context",i).bind(f)}export{re as UserDefinedCompiledFunction,He as compileScript,Qe as enableAsyncSupport,Te as extend};
5
+ import{toSymbolId as e,neverAbortedSignal as n}from"./arcadeEnvironment.js";import{ArcadeModule as t}from"./ArcadeModule.js";import{ArcadeModuleLoader as r}from"./ArcadeModuleLoader.js";import{collectDeclaredGlobalNames as o,collectDeclaredLocalNames as l}from"./compilerUtils.js";import{getNestedOptionalValue as a,geometryMember as s,getGeometryKeys as i}from"./containerUtils.js";import u from"./Dictionary.js";import{ArcadeExecutionError as c,ArcadeCompilationError as m,ArcadeUncompilableError as f}from"./executionError.js";import p from"./Feature.js";import{NativeFunction as d,ArcadeFunction as g,ScopeMarshalledFunction as h,wrapModuleScopedResponse as y}from"./FunctionWrapper.js";import{p as w,q as b,i as v,r as $,j as S,k as x,s as F,u as M,v as I,w as O,x as C,y as j,h as A,n as k}from"../chunks/languageUtils.js";import{addFunctionDeclaration as N}from"./treeAnalysis.js";import{A as E}from"../chunks/aiServices.js";import{A as B}from"../chunks/array.js";import{registerFunctions as _}from"./functions/date.js";import{registerFunctions as V}from"./functions/feature.js";import{registerFunctions as R}from"./functions/geometry.js";import{registerFunctions as L}from"./functions/geomsync.js";import{registerFunctions as T}from"./functions/maths.js";import{registerFunctions as D}from"./functions/stats.js";import{registerFunctions as U}from"./functions/string.js";import{registerFunctions as G}from"./functions/track.js";import{neverReached as K}from"../core/compilerUtils.js";import q from"../core/Logger.js";import{isPromiseLike as P}from"../core/promiseUtils.js";import{addMany as z}from"../core/SetUtils.js";import W from"../geometry/Geometry.js";import Z from"../geometry/SpatialReference.js";import{isGraphic as J,isString as Y,isArray as H,isNumber as Q,isBoolean as X}from"../support/guards.js";const ee=()=>q.getLogger("esri.arcade.arcadeCompiler");class ne{constructor(){this._symbolCounter=0}nextVarId(){return this._symbolCounter+=1,`_T${this._symbolCounter}`}nextTempVarId(){return this._symbolCounter+=1,`_Tvar${this._symbolCounter}`}nextLocalsSymbolMapId(){return this._symbolCounter+=1,`_Locals${this._symbolCounter}`}}function te(e,n){const t=e.localScope?.get(n);if(null!=t)return{scope:"local",name:n,var:t};const r=e.globalScope.get(n);return null!=r?{scope:"global",name:n,var:r}:e.standardGlobals.has(n)?{scope:"global",name:n,var:n}:null}function re(n,t,r="InvalidIdentifier"){const o=te(n,e(t));if(null!=o)return o;throw new m(null,r,t)}function oe(n,t,r){const o=te(n,e(t));if(null==o)throw ee().error(`Internal error: Symbol "${t.name}" not declared.`),new m(null,"NeverReach",t);if(null!=r&&o.scope!==r)throw ee().error(`Internal error: Expected to resolve "${t.name}" in the ${r} scope but is in the ${o.scope} scope.`),new m(null,"NeverReach",t);return o}function le(n,t){const r=e(t),o=n.symbolMetadata;if(n.localStack.length>0){const e=n.localStack[n.localStack.length-1],t=o.locals.get(e._SymbolsMapId);if(null==t)return void ee().error(`Internal error: no reflection metadata for ${e._SymbolsMapId}`);const l=t.get(r);if(null!=l)return Qe.requireInitialized(e[l])}const l=o.globals.get(r);if(null!=l)return Qe.requireInitialized(n.globalScope[l]);if(o.standardGlobals.has(r))return Qe.requireInitialized(n.globalScope[r]);throw new c(null,"InvalidIdentifier",null)}class ae extends g{constructor(e,n){super(),this.paramCount=n,this.fn=e}createFunction(e){return(...n)=>{if(n.length!==this.paramCount)throw new c(e,"WrongNumberOfParameters",null);return this.fn(...n)}}call(e,n){return this.fn(...n.arguments)}marshalledCall(e,n,t,r){return r(e,n,(n,o,l)=>{l=l.map(n=>!v(n)||n instanceof h?n:y(n,e,r));const a=this.call(t,{arguments:l});return P(a)?a.then(e=>y(e,t,r)):a})}}function se(e,n,t){try{return t(e,null,n.arguments)}catch(r){throw r}}function ie(e,n,t,r,l,a){const{globals:s,exports:i}=o(e);z(s,t);const u=new ne,c=[],m=new Map;for(const o of s)if(t.has(o)||n.has(o))m.set(o,o);else{const e=u.nextVarId();m.set(o,e),c.push(`gscope[${JSON.stringify(e)}] = ${Ye};`)}const f=new Map,p=Object.create(null),d={isAsync:r,symbols:u,standardGlobals:n,globalScope:m,exports:i,localScope:null,allLocalSymbolMetadata:f,moduleFactory:a,moduleFactoryMap:p,libraryResolver:l};return{body:[...c,"var lastStatement = lc.voidOperation;",Fe(d,e),"return lastStatement;"].join("\n"),symbolMetadata:{standardGlobals:n,exports:i,globals:m,locals:f},moduleFactoryMap:p}}function ue(e,n){switch(n.type){case"AssignmentExpression":return ve(e,n);case"UpdateExpression":return we(e,n);case"TemplateLiteral":return Be(e,n);case"Identifier":return Re(e,n);case"MemberExpression":return ke(e,n);case"Literal":return null===n.value||void 0===n.value?"null":JSON.stringify(n.value);case"CallExpression":return Le(e,n);case"UnaryExpression":return Ne(e,n);case"BinaryExpression":return _e(e,n);case"LogicalExpression":return Ve(e,n);case"ArrayExpression":return Ee(e,n);case"ObjectExpression":return me(e,n);default:throw new m(null,"Unrecognized",n)}}function ce(e,n){switch(n.type){case"EmptyStatement":return"lc.voidOperation";case"VariableDeclaration":return je(e,n);case"BlockStatement":return Fe(e,n);case"FunctionDeclaration":return Ce(e,n);case"ImportDeclaration":return Ie(e,n);case"ExportNamedDeclaration":return ce(e,n.declaration);case"ReturnStatement":return Me(e,n);case"IfStatement":return xe(e,n);case"ExpressionStatement":return $e(e,n);case"BreakStatement":return"break";case"ContinueStatement":return"continue";case"ForStatement":return ye(e,n);case"ForInStatement":return ge(e,n);case"ForOfStatement":return he(e,n);case"WhileStatement":return be(e,n);default:throw new m(null,"Unrecognized",n)}}function me(e,n){let t="lang.dictionary([";for(let r=0;r<n.properties.length;r++){const o=n.properties[r];let l;l="Identifier"===o.key.type?"'"+o.key.name+"'":ue(e,o.key);r>0&&(t+=","),t+="lang.strCheck("+l+",'ObjectExpression'),lang.aCheck("+ue(e,o.value)+", 'ObjectExpression')"}return t+="])",t}function fe(e,n,t,r,o=(e,n)=>`${e} = ${n}`){const l=e.symbols.nextTempVarId(),a=e.symbols.nextTempVarId();return[`var ${l} = ${t};`,`for (var ${a} = 0; ${a} < ${l}; ${a}++) {`,` ${o(n,a)}`,` ${ce(e,r)}`,"}","lastStatement = lc.voidOperation;"].join("\n")}function pe(e,n,t,r,o=e=>e){const l=e.symbols.nextTempVarId(),a=e.symbols.nextTempVarId();return[`var ${l} = ${t};`,`for (var ${a} of ${l}) {`,` ${n} = ${o(a)};`,` ${ce(e,r)}`,"}","lastStatement = lc.voidOperation;"].join("\n")}function de(e,n,t,r){const o=e.symbols.nextTempVarId();return[`var ${o} = ${t}.iterator(runtimeCtx.abortSignal);`,`while ((${n} = lang.graphicToFeature(yield ${o}.next(), ${t}, runtimeCtx)) != null) {`,` ${ce(e,r)}`,"}","lastStatement = lc.voidOperation;"].join("\n")}function ge(e,n){const t=e.symbols.nextTempVarId();let r,o,l="var "+t+" = "+ue(e,n.right)+";\n";switch("VariableDeclaration"===n.left.type?(r=oe(e,n.left.declarations[0].id),l+=ce(e,n.left)):r=re(e,n.left),r.scope){case"local":o=`lscope['${r.var}']`;break;case"global":o=`gscope['${r.var}']`;break;default:throw K(r.scope),new m(null,"NeverReach",n.left)}return l+="if ("+t+"===null) { lastStatement = lc.voidOperation; }\n ",l+="else if (lc.isArray("+t+") || lc.isString("+t+")) {\n",l+=fe(e,o,`${t}.length`,n.body),l+="}\n",l+="else if (lc.isImmutableArray("+t+")) {\n",l+=fe(e,o,`${t}.length()`,n.body),l+="}\n",l+="else if (( "+t+" instanceof lang.Dictionary) || lc.isDictionaryLike("+t+")) {\n",l+=pe(e,o,`${t}.keys()`,n.body),l+="}\n",e.isAsync&&(l+="else if (lc.isFeatureSet("+t+")) {\n",l+=de(e,o,t,n.body),l+="}\n"),l+=`else if (lc.isGeometry(${t})) {\n`,l+=pe(e,o,`lang.getGeometryKeys(${t})`,n.body),l+="}\n",l+="else { lastStatement = lc.voidOperation; } \n",l}function he(e,n){const t=e.symbols.nextTempVarId();let r,o,l="var "+t+" = "+ue(e,n.right)+";\n";switch("VariableDeclaration"===n.left.type?(r=oe(e,n.left.declarations[0].id),l+=ce(e,n.left)):r=re(e,n.left),r.scope){case"local":o=`lscope['${r.var}']`;break;case"global":o=`gscope['${r.var}']`;break;default:throw K(r.scope),new m(null,"NeverReach",n.left)}return l+="if ("+t+"===null) { lastStatement = lc.voidOperation; }\n ",l+="else if (lc.isArray("+t+") || lc.isString("+t+")) {\n",l+=fe(e,o,`${t}.length`,n.body,(e,n)=>[`if (${n} >= ${t}.length) {`," lang.error('OutOfBounds');","}",`${e} = ${t}[${n}];`].join("\n")),l+="}\n",l+="else if (lc.isImmutableArray("+t+")) {\n",l+=fe(e,o,`${t}.length()`,n.body,(e,n)=>`${e} = ${t}.get(${n});`),l+="}\n",l+="else if (( "+t+" instanceof lang.Dictionary) || lc.isDictionaryLike("+t+")) {\n",l+=pe(e,o,`${t}.keys()`,n.body,e=>`lang.entry(${e}, ${t}.field(${e}))`),l+="}\n",e.isAsync&&(l+="else if (lc.isFeatureSet("+t+")) {\n",l+=de(e,o,t,n.body),l+="}\n"),l+=`else if (lc.isGeometry(${t})) {\n`,l+=pe(e,o,`lang.getGeometryKeys(${t})`,n.body,e=>`lang.entry(${e}, lang.geometryMember(${t}, ${e}, runtimeCtx, null, 1))`),l+="}\n",l+="else { lastStatement = lc.voidOperation; } \n",l}function ye(e,n){let t="lastStatement = lc.voidOperation; \n";null!==n.init&&("VariableDeclaration"===n.init.type?t+=ce(e,n.init):t+=ue(e,n.init)+"; ");const r=e.symbols.nextTempVarId(),o=e.symbols.nextTempVarId();return t+="var "+r+" = true; ",t+="\n do { ",null!==n.update&&(t+=" if ("+r+"===false) {\n "+ue(e,n.update)+" \n}\n "+r+"=false; \n"),null!==n.test&&(t+="var "+o+" = "+ue(e,n.test)+"; ",t+="if ("+o+"===false) { break; } else if ("+o+"!==true) { lang.error('BooleanConditionRequired'); }\n"),t+=ce(e,n.body),null!==n.update&&(t+="\n "+ue(e,n.update)),t+="\n"+r+" = true; \n} while(true); lastStatement = lc.voidOperation; ",t}function we(e,n){if("CallExpression"===n.argument.type)throw new m(null,"NeverReach",n);let t;if("MemberExpression"===n.argument.type){const r=ue(e,n.argument.object);return t=!0===n.argument.computed?ue(e,n.argument.property):"'"+n.argument.property.name+"'","lang.memberupdate("+r+","+t+",'"+n.operator+"',"+n.prefix+")"}const r=re(e,n.argument);switch(Oe(r),r.scope){case"local":return`lang.update(lscope, '${r.var}', '${n.operator}', ${n.prefix})`;case"global":return`lang.update(gscope, '${r.var}', '${n.operator}', ${n.prefix})`;default:throw K(r.scope),new m(null,"NeverReach",n.argument)}}function be(e,n){let t="lastStatement = lc.voidOperation; \n";const r=e.symbols.nextTempVarId();return t+=`\n var ${r} = true;\n do {\n ${r} = ${ue(e,n.test)};\n if (${r}==false) {\n break;\n }\n if (${r}!==true) {\n lang.error('BooleanConditionRequired');\n }\n ${ce(e,n.body)}\n }\n while (${r} !== false);\n lastStatement = lc.voidOperation;\n `,t}function ve(e,n){const t=ue(e,n.right);if("MemberExpression"===n.left.type){let r;const o=ue(e,n.left.object);return r=!0===n.left.computed?ue(e,n.left.property):"'"+n.left.property.name+"'","lang.assignmember("+o+","+r+",'"+n.operator+"',"+t+")"}const r=re(e,n.left);switch(Oe(r),r.scope){case"local":return`lscope['${r.var}']=lang.assign(${t},'${n.operator}', ${"="===n.operator?"null":He(`lscope['${r.var}']`)})`;case"global":return`gscope['${r.var}']=lang.assign(${t},'${n.operator}', ${"="===n.operator?"null":He(`gscope['${r.var}']`)})`;default:throw K(r.scope),new m(null,"NeverReach",n.left)}}function $e(e,n){return"AssignmentExpression"===n.expression.type?"lastStatement = lc.voidOperation; "+ue(e,n.expression)+"; \n ":"lastStatement = "+ue(e,n.expression)+"; "}function Se(e,n){return"BlockStatement"===n.type?ce(e,n):"ReturnStatement"===n.type||"BreakStatement"===n.type||"ContinueStatement"===n.type?ce(e,n)+"; ":"ExpressionStatement"===n.type?ce(e,n):ce(e,n)+"; "}function xe(e,n){return`if (lang.mustBoolean(${ue(e,n.test)}, runtimeCtx) === true) {\n ${Se(e,n.consequent)}\n } `+(null!==n.alternate?"IfStatement"===n.alternate.type?" else "+xe(e,n.alternate):` else {\n ${Se(e,n.alternate)}\n }\n`:" else {\n lastStatement = lc.voidOperation;\n }\n")}function Fe(e,n){let t="";for(let r=0;r<n.body.length;r++)"EmptyStatement"!==n.body[r].type&&("ReturnStatement"===n.body[r].type||"BreakStatement"===n.body[r].type||"ContinueStatement"===n.body[r].type?t+=ce(e,n.body[r])+"; \n":t+=ce(e,n.body[r])+" \n");return t}function Me(e,n){if(null===n.argument)return"return lc.voidOperation";return"return "+ue(e,n.argument)}function Ie(e,n){const t=oe(e,n.specifiers[0].local,"global"),r=e.libraryResolver?.loadLibrary(t.name),o=e.symbols.nextVarId();void 0===e.moduleFactory[r.uri]&&(e.moduleFactory[r.uri]=rn(r.syntax,e.moduleFactory,e.isAsync)),e.moduleFactoryMap[o]=r.uri;let l="";return l=e.isAsync?"(yield lang.loadModule('"+o+"', runtimeCtx) ); ":"lang.loadModule('"+o+"', runtimeCtx); ",Oe(t),`gscope['${t.var}']=${l}`}function Oe(e){if("global"===e.scope)switch(e.name){case"iif":case"when":case"defaultvalue":case"decode":throw new f}}function Ce(n,t){const r=new Set(t.params.map(n=>e(n))),o=l(t);z(o,r);const a=n.symbols,s=new Map;for(const e of o)s.set(e,a.nextVarId());const i=a.nextLocalsSymbolMapId();n.allLocalSymbolMetadata.set(i,s);const u={...n,localScope:s},c=[`lscope._SymbolsMapId = ${JSON.stringify(i)};`];for(let e=0;e<t.params.length;e++){const n=oe(u,t.params[e],"local");Oe(n),c.push(`lscope['${n.var}'] = arguments[${e}];`)}for(const[e,l]of s)r.has(e)||c.push(`lscope['${l}'] = ${Ye};`);const m=Fe(u,t.body),f=!0===n.isAsync?["return lang.__awaiter(this, void 0, void 0, function* () {",` ${m}`," return lastStatement;","});"]:[m,"return lastStatement;"],p=["new lang.UserDefinedCompiledFunction("," lang.functionDepthchecker("," function() {"," var lastStatement = lc.voidOperation;"," var lscope = runtimeCtx.localStack[runtimeCtx.localStack.length-1];",...c,...f," },"," runtimeCtx,"," ),",` ${t.params.length},`,")"].join("\n"),d=oe(n,t.id,"global");return Oe(d),`gscope['${d.var}']=${p}; lastStatement = lc.voidOperation;`}function je(e,n){const t=[];for(let r=0;r<n.declarations.length;r++)t.push(Ae(e,n.declarations[r]));return t.join("\n")+" \n lastStatement= lc.voidOperation; \n"}function Ae(e,n){const t=null===n.init?"null":ue(e,n.init),r=oe(e,n.id);switch(Oe(r),r.scope){case"local":return`lscope['${r.var}']=${t};`;case"global":return`gscope['${r.var}']=${t};`;default:throw K(r.scope),new m(null,"NeverReach",n.id)}}function ke(e,n){try{let t;return t=!0===n.computed?ue(e,n.property):"'"+n.property.name+"'","lang.member("+ue(e,n.object)+","+t+")"}catch(t){throw t}}function Ne(e,n){try{return"lang.unary("+ue(e,n.argument)+",'"+n.operator+"')"}catch(t){throw t}}function Ee(e,n){try{const t=[];for(let r=0;r<n.elements.length;r++)"Literal"===n.elements[r].type?t.push(ue(e,n.elements[r])):t.push("lang.aCheck("+ue(e,n.elements[r])+",'ArrayExpression')");return"["+t.join(",")+"]"}catch(t){throw t}}function Be(e,n){try{const t=[];let r=0;for(const o of n.quasis)t.push(o.value?JSON.stringify(o.value.cooked):JSON.stringify("")),!1===o.tail&&(t.push(n.expressions[r]?"lang.castString(lang.aCheck("+ue(e,n.expressions[r])+", 'TemplateLiteral'))":""),r++);return"(["+t.join(",")+"]).join('')"}catch(t){throw t}}function _e(e,n){try{return"lang.binary("+ue(e,n.left)+","+ue(e,n.right)+",'"+n.operator+"')"}catch(t){throw t}}function Ve(e,n){try{if("AssignmentExpression"===n.left.type||"UpdateExpression"===n.left.type)throw new m(null,"LogicalExpressionOnlyBoolean",n);if("AssignmentExpression"===n.right.type||"UpdateExpression"===n.right.type)throw new m(null,"LogicalExpressionOnlyBoolean",n);if("&&"===n.operator||"||"===n.operator)return"(lang.logicalCheck("+ue(e,n.left)+") "+n.operator+" lang.logicalCheck("+ue(e,n.right)+"))";throw new m(null,"LogicExpressionOrAnd",null)}catch(t){throw t}}function Re(e,n){const t=re(e,n);switch(Oe(t),t.scope){case"local":return He(`lscope['${t.var}']`);case"global":return He(`gscope['${t.var}']`);default:throw K(t.scope),new m(null,"NeverReach",n)}}function Le(e,n){try{if("MemberExpression"===n.callee.type){let t;t=!0===n.callee.computed?ue(e,n.callee.property):"'"+n.callee.property.name+"'";let r="[";for(let o=0;o<n.arguments.length;o++)o>0&&(r+=", "),r+=ue(e,n.arguments[o]);return r+="]",e.isAsync?"(yield lang.callModuleFunction("+ue(e,n.callee.object)+","+r+","+t+",runtimeCtx))":"lang.callModuleFunction("+ue(e,n.callee.object)+","+r+","+t+",runtimeCtx)"}if("Identifier"!==n.callee.type)throw new m(null,"FunctionNotFound",n);const t=re(e,n.callee,"FunctionNotFound");if("global"===t.scope)switch(t.name){case"iif":return Te(e,n);case"when":return Ue(e,n);case"defaultvalue":return De(e,n);case"decode":return Ge(e,n)}let r;switch(t.scope){case"local":r=He(`lscope['${t.var}']`);break;case"global":r=He(`gscope['${t.var}']`);break;default:throw K(t.scope),new m(null,"NeverReach",n.callee)}let o="[";for(let l=0;l<n.arguments.length;l++)l>0&&(o+=", "),o+=ue(e,n.arguments[l]);return o+="]",e.isAsync?"(yield lang.callfunc("+r+","+o+",runtimeCtx) )":"lang.callfunc("+r+","+o+",runtimeCtx)"}catch(t){throw t}}function Te(e,n){try{if(3!==n.arguments.length)throw new m(null,"WrongNumberOfParameters",n);const t=e.symbols.nextTempVarId();return`${e.isAsync?"(yield (function() { \n return lang.__awaiter(this, void 0, void 0, function* () {":"function() {"}\n var ${t} = ${ue(e,n.arguments[0])};\n\n if (${t} === true) {\n return ${ue(e,n.arguments[1])};\n }\n else if (${t} === false) {\n return ${ue(e,n.arguments[2])};\n }\n else {\n lang.error('ExecutionErrorCodes.BooleanConditionRequired');\n }\n ${e.isAsync?"})}()))":"}()"}`}catch(t){throw t}}function De(e,n){try{if(n.arguments.length<2||n.arguments.length>3)throw new m(null,"WrongNumberOfParameters",n);const t=e.symbols.nextTempVarId(),r=e.symbols.nextTempVarId();return 3===n.arguments.length?`${e.isAsync?"(yield (function() { \n return lang.__awaiter(this, void 0, void 0, function* () {":"function() {"}\n var ${t} = ${ue(e,n.arguments[0])};\n var ${r} = ${ue(e,n.arguments[1])};\n ${t} = lang.getNestedOptionalValue(${t}, ${r});\n return ${t} != null && ${t} !== "" ? ${t} : ${ue(e,n.arguments[2])};\n ${e.isAsync?"})}()))":"}()"}`:`${e.isAsync?"(yield (function() { \n return lang.__awaiter(this, void 0, void 0, function* () {":"function() {"}\n var ${t} = ${ue(e,n.arguments[0])};\n if (${t} === null) {\n return ${ue(e,n.arguments[1])};\n }\n if (${t} === "") {\n return ${ue(e,n.arguments[1])};\n }\n if (${t} === undefined) {\n return ${ue(e,n.arguments[1])};\n }\n return ${t};\n ${e.isAsync?"})}()))":"}()"}`}catch(t){throw t}}function Ue(e,n){try{if(n.arguments.length<3)throw new m(null,"WrongNumberOfParameters",n);if(n.arguments.length%2==0)throw new m(null,"WrongNumberOfParameters",n);const t=e.symbols.nextTempVarId();let r="var ";for(let o=0;o<n.arguments.length-1;o+=2)r+=`${t} = lang.mustBoolean(${ue(e,n.arguments[o])}, runtimeCtx);\n if (${t} === true ) {\n return ${ue(e,n.arguments[o+1])}\n }\n`;return`${e.isAsync?"(yield (function() { \n return lang.__awaiter(this, void 0, void 0, function* () {":"function() {"}\n ${r}\n return ${ue(e,n.arguments[n.arguments.length-1])}\n ${e.isAsync?"})}()))":"}()"}`}catch(t){throw t}}function Ge(e,n){try{if(n.arguments.length<2)throw new m(null,"WrongNumberOfParameters",n);if(2===n.arguments.length)return`(${ue(e,n.arguments[1])})`;if((n.arguments.length-1)%2==0)throw new m(null,"WrongNumberOfParameters",n);const t=e.symbols.nextTempVarId(),r=e.symbols.nextTempVarId();let o="var ";for(let l=1;l<n.arguments.length-1;l+=2)o+=`${r} = ${ue(e,n.arguments[l])};\n if (lang.binary(${r}, ${t}, "==") === true ) {\n return ${ue(e,n.arguments[l+1])}\n }\n`;return`${e.isAsync?"(yield (function() { \n return lang.__awaiter(this, void 0, void 0, function* () {":"function() {"}\n var ${t} = ${ue(e,n.arguments[0])};\n ${o}\n return ${ue(e,n.arguments[n.arguments.length-1])}\n ${e.isAsync?"})}()))":"}()"}`}catch(t){throw t}}function Ke(e,n){try{return se(e,n,(e,n)=>{throw new c(e,"Unrecognized",n)})}catch(t){throw t}}function qe(e){const n=function(){this.textformatting=u.textFormatting()};n.prototype=Object.create(null),n.provided=new Set(["textformatting","infinity","pi"]),n.prototype.infinity=Number.POSITIVE_INFINITY,n.prototype.pi=Math.PI;for(const[t,r]of Object.entries(e))n.prototype[t]=new d(r),n.provided.add(t);return n}function Pe(){const e=Object.create(null);_(e,se),U(e,se),V(e,se,le),T(e,se),R(e,se),D(e,se),G(e,se),e.iif=Ke,e.decode=Ke,e.when=Ke,e.defaultvalue=Ke;const n=qe(e);L(e,se);return{ScopeSync:qe(e),ScopeAsync:n}}const{ScopeSync:ze,ScopeAsync:We}=Pe();function Ze(e,n){const t={mode:n,compiled:!0,functions:Object.create(null),signatures:[],standardFunction:se,standardFunctionAsync:se,evaluateIdentifier:le};for(const r of e)r.registerFunctions(t);if("sync"===n)for(const[r,o]of Object.entries(t.functions))ze.prototype[r]=new d(o),ze.provided.add(r);else for(const[r,o]of Object.entries(t.functions))We.prototype[r]=new d(o),We.provided.add(r);for(const r of t.signatures)N(r,n)}Ze([B],"sync"),Ze([B],"async"),Ze([E],"async");const Je=Symbol("uninitialized"),Ye="lang.uninitialized";function He(e){return`lang.requireInitialized(${e})`}const Qe={uninitialized:Je,requireInitialized(e){if(e===Je)throw new c(null,"InvalidIdentifier",null);return e},isNumber:e=>Q(e),isArray:e=>H(e),isImmutableArray:e=>S(e),isDictionaryLike:e=>$(e),isString:e=>Y(e),isDictionary:e=>k(e),isGeometry:e=>A(e),getGeometryKeys:e=>i(e),geometryMember:(e,n,t,r,o=1)=>s(e,n,t,r,o),error(e){throw new c(null,e,null)},__awaiter(e,n,t,r){const o=r.apply(e,n||[]);let l=o.next();for(;!l.done&&!P(l.value);)l=o.next(l.value);return l.done?l.value:new Promise((e,n)=>{function t(r){for(;!r.done;){if(P(r.value))return void Promise.resolve(r.value).then(e=>{try{t(o.next(e))}catch(r){n(r)}},e=>{try{t(o.throw(e))}catch(r){n(r)}});try{r=o.next(r.value)}catch(l){return void n(l)}}e(r.value)}t(l)})},functionDepthchecker:(e,n)=>function(){if(n.depthCounter.depth++,n.localStack.push({}),n.depthCounter.depth>64)throw new c(null,"MaximumCallDepth",null);const t=e.apply(this,arguments);return P(t)?t.then(e=>(n.depthCounter.depth--,n.localStack.length=n.localStack.length-1,e)):(n.depthCounter.depth--,n.localStack.length=n.localStack.length-1,t)},mustBoolean(e,n){if(!0===e||!1===e)return e;throw new c(n,"BooleanConditionRequired",null)},castString:e=>M(e),aCheck(e,n){if(v(e)){if("ArrayExpression"===n)throw new c(null,"NoFunctionInArray",null);if("ObjectExpression"===n)throw new c(null,"NoFunctionInDictionary",null);throw new c(null,"NoFunctionInTemplateLiteral",null)}return e===I?null:e},Dictionary:u,Feature:p,UserDefinedCompiledFunction:ae,dictionary(e){const n=Object.create(null),t=new Map;for(let o=0;o<e.length;o+=2){if(v(e[o+1]))throw new c(null,"NoFunctionInDictionary",null);if(!1===Y(e[o]))throw new c(null,"KeyMustBeString",null);let r=e[o].toString();const l=r.toLowerCase();t.has(l)?r=t.get(l):t.set(l,r),e[o+1]===I?n[r]=null:n[r]=e[o+1]}const r=new u(n);return r.immutable=!1,r},entry:(e,n)=>u.containerEntry(e,n),strCheck(e){if(!1===Y(e))throw new c(null,"KeyMustBeString",null);return e},unary(e,n){if(X(e)){if("!"===n)return!e;if("-"===n)return-1*F(e);if("+"===n)return 1*F(e);if("~"===n)return~F(e);throw new c(null,"UnsupportUnaryOperator",null)}if("-"===n)return-1*F(e);if("+"===n)return 1*F(e);if("~"===n)return~F(e);throw new c(null,"UnsupportUnaryOperator",null)},logicalCheck(e){if(!1===X(e))throw new c(null,"LogicExpressionOrAnd",null);return e},logical(e,n,t){if(X(e)&&X(n))switch(t){case"||":return e||n;case"&&":return e&&n;default:throw new c(null,"LogicExpressionOrAnd",null)}throw new c(null,"LogicExpressionOrAnd",null)},binary(e,n,t){switch(t){case"|":case"<<":case">>":case">>>":case"^":case"&":return j(F(e),F(n),t);case"==":case"=":return C(e,n);case"!=":return!C(e,n);case"<":case">":case"<=":case">=":return O(e,n,t);case"+":return Y(e)||Y(n)?M(e)+M(n):F(e)+F(n);case"-":return F(e)-F(n);case"*":return F(e)*F(n);case"/":return F(e)/F(n);case"%":return F(e)%F(n);default:throw new c(null,"UnsupportedOperator",null)}},assign(e,n,t){switch(n){case"=":return e===I?null:e;case"/=":return F(t)/F(e);case"*=":return F(t)*F(e);case"-=":return F(t)-F(e);case"+=":return Y(t)||Y(e)?M(t)+M(e):F(t)+F(e);case"%=":return F(t)%F(e);default:throw new c(null,"UnsupportedOperator",null)}},update(e,n,t,r){const o=F(this.requireInitialized(e[n]));return e[n]="++"===t?o+1:o-1,!1===r?o:"++"===t?o+1:o-1},graphicToFeature:(e,n,t)=>null===e?null:p.createFromGraphicLikeObject(e.geometry,e.attributes,n,t.timeZone),memberupdate(e,n,t,r){let o;if(H(e)){if(!Q(n))throw new c(null,"ArrayAccessMustBeNumber",null);if(n<0&&(n=e.length+n),n<0||n>=e.length)throw new c(null,"OutOfBounds",null);o=F(e[n]),e[n]="++"===t?o+1:o-1}else if(e instanceof u){if(!1===Y(n))throw new c(null,"KeyAccessorMustBeString",null);if(!0!==e.hasField(n))throw new c(null,"FieldNotFound",null,{key:n});o=F(e.field(n)),e.setField(n,"++"===t?o+1:o-1)}else if(x(e)){if(!1===Y(n))throw new c(null,"KeyAccessorMustBeString",null);if(!0!==e.hasField(n))throw new c(null,"FieldNotFound",null);o=F(e.field(n)),e.setField(n,"++"===t?o+1:o-1)}else{if(S(e))throw new c(null,"Immutable",null);if(!(e instanceof tn))throw new c(null,"InvalidIdentifier",null);if(!1===Y(n))throw new c(null,"ModuleAccessorMustBeString",null);if(!0!==e.hasGlobal(n))throw new c(null,"ModuleExportNotFound",null);o=F(e.global(n)),e.setGlobal(n,"++"===t?o+1:o-1)}return!1===r?o:"++"===t?o+1:o-1},assignmember(e,n,t,r){if(H(e)){if(!Q(n))throw new c(null,"ArrayAccessMustBeNumber",null);if(n<0&&(n=e.length+n),n<0||n>e.length)throw new c(null,"OutOfBounds",null);if(n===e.length){if("="!==t)throw new c(null,"OutOfBounds",null);e[n]=this.assign(r,t,e[n])}else e[n]=this.assign(r,t,e[n])}else if(e instanceof u){if(!1===Y(n))throw new c(null,"KeyAccessorMustBeString",null);if(!0===e.hasField(n))e.setField(n,this.assign(r,t,e.field(n)));else{if("="!==t)throw new c(null,"FieldNotFound",null);e.setField(n,this.assign(r,t,null))}}else if(x(e)){if(!1===Y(n))throw new c(null,"KeyAccessorMustBeString",null);if(!0===e.hasField(n))e.setField(n,this.assign(r,t,e.field(n)));else{if("="!==t)throw new c(null,"FieldNotFound",null);e.setField(n,this.assign(r,t,null))}}else{if(S(e))throw new c(null,"Immutable",null);if(!(e instanceof tn))throw new c(null,"InvalidIdentifier",null);if(!1===Y(n))throw new c(null,"ModuleAccessorMustBeString",null);if(!e.hasGlobal(n))throw new c(null,"ModuleExportNotFound",null);e.setGlobal(n,this.assign(r,t,e.global(n)))}},member(e,n){if(null===e)throw new c(null,"MemberOfNull",null);if(e instanceof u||$(e)){if(Y(n))return e.field(n);throw new c(null,"InvalidMemberAccessKey",null)}if(e instanceof W){if(Y(n))return s(e,n,null,null);throw new c(null,"InvalidMemberAccessKey",null)}if(H(e)){if(Q(n)&&isFinite(n)&&Math.floor(n)===n){if(n<0&&(n=e.length+n),n>=e.length||n<0)throw new c(null,"OutOfBounds",null);return e[n]}throw new c(null,"InvalidMemberAccessKey",null)}if(Y(e)){if(Q(n)&&isFinite(n)&&Math.floor(n)===n){if(n<0&&(n=e.length+n),n>=e.length||n<0)throw new c(null,"OutOfBounds",null);return e[n]}throw new c(null,"InvalidMemberAccessKey",null)}if(S(e)){if(Q(n)&&isFinite(n)&&Math.floor(n)===n){if(n<0&&(n=e.length()+n),n>=e.length()||n<0)throw new c(null,"OutOfBounds",null);return e.get(n)}throw new c(null,"InvalidMemberAccessKey",null)}if(e instanceof tn){if(Y(n))return e.global(n);throw new c(null,"InvalidMemberAccessKey",null)}throw new c(null,"InvalidMemberAccessKey",null)},callfunc:(e,n,t)=>e.call(t,{arguments:n,preparsed:!0}),loadModule(e,n){const t=n.moduleFactoryMap[e];if(n.moduleSingletons[t])return n.moduleSingletons[t];const r=n.moduleFactory[t]({moduleSingletons:n.moduleSingletons,depthCounter:n.depthCounter,lrucache:n.lrucache,interceptor:n.interceptor,services:n.services,console:n.console,abortSignal:n.abortSignal,timeZone:n.timeZone??null,spatialReference:n.spatialReference});return n.moduleSingletons[t]=r,r},callModuleFunction(e,n,t,r){if(!(e instanceof tn))throw new c(null,"FunctionNotFound",null);const o=e.global(t);if(!1===v(o))throw new c(null,"CallNonFunction",null);return o.call(r,{preparsed:!0,arguments:n})},getNestedOptionalValue:(e,n)=>a(e,n)};function Xe(e){console.log(e)}function en(t,o,l=!1){let a=null;t.usesModules&&(a=new r(null,t.loadedModules));const s=Object.create(null),i=new Set(Object.keys(o?.vars||{}).map(n=>e(n))),u=new Set(Object.keys(o?.customfunctions||{}).map(n=>e(n))),m=ie(t,l?We.provided:ze.provided,new Set([...i,...u]),l,a,s);let f;f=l?["var runtimeCtx = this.prepare(context, true);","var lc = this.lc;","var lang = this.lang;","var gscope = runtimeCtx.globalScope;","return lang.__awaiter(this, void 0, void 0, function* () {"," function mainBody() {"," return lang.__awaiter(this, void 0, void 0, function* () {",` ${m.body}`," });"," }"," return this.postProcess(yield mainBody());","});"].join("\n"):["var runtimeCtx = this.prepare(context, false);","var lc = this.lc;","var lang = this.lang;","var gscope = runtimeCtx.globalScope;","function mainBody() {",` ${m.body}`,"}","return this.postProcess(mainBody());"].join("\n");const{symbolMetadata:d,moduleFactoryMap:g}=m,h={lc:w,lang:Qe,postProcess(e){if(b(e))return null;if(v(e))throw new c(null,"IllegalResult",null);return e},prepare(e,t){const r=e.spatialReference??Z.WebMercator,o=t?new We:new ze;for(const n of u)null!=e.customfunctions&&n in e.customfunctions?o[n]=e.customfunctions[n]??null:o[n]=Je;for(const n of i){if(null==e.vars||!(n in e.vars)){n in o||(o[n]=Je);continue}const t=e.vars[n]??null;J(t)?o[n]=p.createFromGraphic(t,e.timeZone??null):o[n]=t}return{lrucache:e.lrucache,interceptor:e.interceptor,services:e.services,console:e.console??Xe,abortSignal:e.abortSignal??n,timeZone:e.timeZone??null,spatialReference:r,track:e.track,globalScope:o,localStack:[],depthCounter:{depth:1},symbolMetadata:d,moduleFactory:s,moduleFactoryMap:g,moduleSingletons:Object.create(null)}}};return new Function("context",f).bind(h)}async function nn(){return Ze([await import("./functions/geomasync.js")],"async"),!0}class tn extends t{constructor(e){super(),this.moduleContext=e}hasGlobal(n){const t=this.moduleContext.symbolMetadata.exports;return t.has(n)||t.has(e(n))}setGlobal(n,t){if(v(t))throw new c(null,"AssignModuleFunction",null);const r=this.moduleContext.symbolMetadata.globals.get(e(n));if(null==r)throw new c(null,"ModuleExportNotFound",null);this.moduleContext.globalScope[r]=t}global(n){const t=this.moduleContext.symbolMetadata.globals.get(e(n));if(null==t)throw new c(null,"ModuleExportNotFound",null);const r=this.moduleContext.globalScope,o=Qe.requireInitialized(r[t]);if(v(o)&&!(o instanceof h)){const e=new h;return e.fn=o,e.parameterEvaluator=se,e.context=this.moduleContext,r[t]=e,e}return o}}function rn(e,t,o){const l=new r(null,e.loadedModules),a=ie(e,o?We.provided:ze.provided,new Set,o,l,t);let s;s=o?["var runtimeCtx = this.prepare(context, true);","var lc = this.lc;","var lang = this.lang;","var gscope = runtimeCtx.globalScope;","return lang.__awaiter(this, void 0, void 0, function* () {"," function mainBody() {"," return lang.__awaiter(this, void 0, void 0, function* () {",` ${a.body}`," });"," }"," yield mainBody();"," return this.prepareModule(runtimeCtx);","});"].join("\n"):["var runtimeCtx = this.prepare(context, false);","var lc = this.lc;","var lang = this.lang;","var gscope = runtimeCtx.globalScope;","function mainBody() {",` ${a.body}`,"}","mainBody();","return this.prepareModule(runtimeCtx);"].join("\n");const{symbolMetadata:i,moduleFactoryMap:u}=a,c={lc:w,lang:Qe,prepareModule:e=>new tn(e),prepare(e,r){const o=e.spatialReference??Z.WebMercator,l=r?new We:new ze;return{lrucache:e.lrucache,interceptor:e.interceptor,services:e.services,console:e.console??Xe,abortSignal:e.abortSignal??n,timeZone:e.timeZone??null,spatialReference:o,track:null,globalScope:l,localStack:[],depthCounter:e.depthCounter,symbolMetadata:i,moduleFactory:t,moduleFactoryMap:u,moduleSingletons:e.moduleSingletons}}};return new Function("context",s).bind(c)}export{ae as UserDefinedCompiledFunction,en as compileScript,nn as enableAsyncSupport,Ze as extend};