@arcgis/core 4.33.0-next.20250306 → 4.33.0-next.20250308

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 (246) hide show
  1. package/arcade/arcadeAsyncRuntime.js +1 -1
  2. package/arcade/arcadeCompiler.js +1 -1
  3. package/arcade/featureSetUtils.js +1 -1
  4. package/arcade/featureset/actions/GroupBy.js +1 -1
  5. package/arcade/featureset/actions/OrderBy.js +1 -1
  6. package/arcade/functions/aiServices.js +5 -0
  7. package/arcade/functions/date.js +1 -1
  8. package/arcade/functions/feature.js +1 -1
  9. package/arcade/functions/featuresetbase.js +1 -1
  10. package/arcade/functions/featuresetstring.js +1 -1
  11. package/arcade/functions/fieldStats.js +1 -1
  12. package/arcade/functions/geometry.js +1 -1
  13. package/arcade/functions/maths.js +1 -1
  14. package/arcade/functions/string.js +1 -1
  15. package/arcade/languageUtils.js +1 -1
  16. package/arcade/treeAnalysis.js +1 -1
  17. package/arcade.js +1 -1
  18. package/assets/esri/core/workers/RemoteClient.js +1 -1
  19. package/assets/esri/core/workers/chunks/028e2e0fa6971aaaaae8.js +1 -0
  20. package/assets/esri/core/workers/chunks/0576b035c1654a43ad5c.js +1 -0
  21. package/assets/esri/core/workers/chunks/081699532b183db1e7c2.js +1 -0
  22. package/assets/esri/core/workers/chunks/087a09b4c41abef6b516.js +1 -0
  23. package/assets/esri/core/workers/chunks/{7ec2f531217718e76469.js → 0b4e63e705db09dbe171.js} +1 -1
  24. package/assets/esri/core/workers/chunks/0c9e933b392616460e62.js +1 -0
  25. package/assets/esri/core/workers/chunks/{c3d23c45db427a29d596.js → 0f4a2bdf5bb2f4303b7f.js} +1 -1
  26. package/assets/esri/core/workers/chunks/{f995a74bd9b58c069c07.js → 10631680abe7607616ca.js} +1 -1
  27. package/assets/esri/core/workers/chunks/{567aa24d7e99e0b5a6cb.js → 1263391920fbb8926ced.js} +1 -1
  28. package/assets/esri/core/workers/chunks/186387a561364a11e574.js +1 -0
  29. package/assets/esri/core/workers/chunks/1cc7bbd0f4a8cf06050a.js +1 -0
  30. package/assets/esri/core/workers/chunks/1d0473dd43c88ab5776d.js +1 -0
  31. package/assets/esri/core/workers/chunks/{ef46613c3aa363dc1cfc.js → 285e573aa6f3acf70b32.js} +1 -1
  32. package/assets/esri/core/workers/chunks/2bb508701ad8ccc3d6ab.js +1 -0
  33. package/assets/esri/core/workers/chunks/36fe6b8228e622407ec2.js +1 -0
  34. package/assets/esri/core/workers/chunks/37a3533f004bf2e888da.js +1 -0
  35. package/assets/esri/core/workers/chunks/3be465c653236d6d8c1f.js +1 -0
  36. package/assets/esri/core/workers/chunks/3e4204502f6e09483c60.js +1 -0
  37. package/assets/esri/core/workers/chunks/3e9cd82325c473ddbf1f.js +1 -0
  38. package/assets/esri/core/workers/chunks/{1e7a70a1871fea29169e.js → 400951e3e742452a5fe2.js} +16 -16
  39. package/assets/esri/core/workers/chunks/{370ab4b33fb7292bb3b8.js → 424e2058228e5f6a183d.js} +1 -1
  40. package/assets/esri/core/workers/chunks/4496ef270c700078df0c.js +1 -0
  41. package/assets/esri/core/workers/chunks/458f4c6c8820c1f62f69.js +1 -0
  42. package/assets/esri/core/workers/chunks/49c346d2fb8538990f45.js +1 -0
  43. package/assets/esri/core/workers/chunks/4bb65ef7b3a02ebe416e.js +1 -0
  44. package/assets/esri/core/workers/chunks/4c765464288b6d096d08.js +1 -0
  45. package/assets/esri/core/workers/chunks/4eb1a2433f675bde12ad.js +1 -0
  46. package/assets/esri/core/workers/chunks/4ffdff269aae8c293cb4.js +1 -0
  47. package/assets/esri/core/workers/chunks/55f7b1de8882569861c0.js +1 -0
  48. package/assets/esri/core/workers/chunks/564cc81c232c97646833.js +1 -0
  49. package/assets/esri/core/workers/chunks/5a6f7360183693f8490d.js +1 -0
  50. package/assets/esri/core/workers/chunks/5f8028928ae8e5d27dda.js +1 -0
  51. package/assets/esri/core/workers/chunks/{c03e6e35082beaec02a6.js → 5fa5bfc70512994f5ec1.js} +1 -1
  52. package/assets/esri/core/workers/chunks/605eddec7aac891ed141.js +1 -0
  53. package/assets/esri/core/workers/chunks/66cba22c09f595bba3bf.js +1 -0
  54. package/assets/esri/core/workers/chunks/6cb5ce0a6bb85c624a21.js +1 -0
  55. package/assets/esri/core/workers/chunks/{bf9b45604249520b596a.js → 74c01de62ccaed0666e0.js} +1 -1
  56. package/assets/esri/core/workers/chunks/7a4413a188a8f1affb2f.js +1 -0
  57. package/assets/esri/core/workers/chunks/{b66e8a48ce7098ca43d5.js → 7c3cd6aefd16fcc1a7fd.js} +1 -1
  58. package/assets/esri/core/workers/chunks/7e0e9ca84490a0c67197.js +1 -0
  59. package/assets/esri/core/workers/chunks/{3315de71eb8791189c05.js → 835fa4484c58d9b31c78.js} +1 -1
  60. package/assets/esri/core/workers/chunks/88a7780b1c689afff8bd.js +1 -0
  61. package/assets/esri/core/workers/chunks/8d636075e5aa053940fc.js +1 -0
  62. package/assets/esri/core/workers/chunks/{7ca33e03a2fd217b9443.js → 9dfdd8e91897d166d888.js} +1 -1
  63. package/assets/esri/core/workers/chunks/{790f86ddf57be50e0dd5.js → 9ef509e0853ad41f7690.js} +1 -1
  64. package/assets/esri/core/workers/chunks/a2377969f76640f1d6fe.js +1 -0
  65. package/assets/esri/core/workers/chunks/aa3a45e8228216c1739b.js +1 -0
  66. package/assets/esri/core/workers/chunks/b2289c18c02c868a2939.js +1 -0
  67. package/assets/esri/core/workers/chunks/b5f44cf03c4e5cc07bc4.js +1 -0
  68. package/assets/esri/core/workers/chunks/b948fe33b4d650eea796.js +1 -0
  69. package/assets/esri/core/workers/chunks/bdeac9196f28aff93e68.js +1 -0
  70. package/assets/esri/core/workers/chunks/c591527543fd75a917d4.js +1 -0
  71. package/assets/esri/core/workers/chunks/{ca4af35af02e3804042e.js → c6580fdcdc33153008b0.js} +1 -1
  72. package/assets/esri/core/workers/chunks/{fe8ee1938d196a70d809.js → ca0572fe5614005acceb.js} +1 -1
  73. package/assets/esri/core/workers/chunks/{67c1e2c17ea3ca27248c.js → cbbbaccc0d3683e1c0fe.js} +1 -1
  74. package/assets/esri/core/workers/chunks/ccc6f6f7052985bebdab.js +1 -0
  75. package/assets/esri/core/workers/chunks/d72d993b36daf6ec2a10.js +1 -0
  76. package/assets/esri/core/workers/chunks/eb9d2bb8b44a93347274.js +1 -0
  77. package/assets/esri/core/workers/chunks/f809cbfb744adb4fad29.js +1 -0
  78. package/assets/esri/core/workers/chunks/fa011ad649c05201e92a.js +1 -0
  79. package/assets/esri/core/workers/chunks/fa7ddf3c89cdb8052b26.js +1 -0
  80. package/assets/esri/core/workers/chunks/fdc9bd8f309af610fa62.js +1 -0
  81. package/assets/esri/themes/base/widgets/_ElevationProfile.scss +2 -2
  82. package/assets/esri/themes/dark/main.css +1 -1
  83. package/assets/esri/themes/light/main.css +1 -1
  84. package/assets/esri/themes/light/view.css +1 -1
  85. package/chunks/LineMarker.glsl.js +2 -2
  86. package/chunks/aiServices.js +5 -0
  87. package/chunks/array.js +1 -1
  88. package/chunks/languageUtils.js +1 -1
  89. package/copyright.txt +38 -0
  90. package/core/MapUtils.js +1 -1
  91. package/editing/sharedTemplates/executor/createTemplateExecutor.js +1 -1
  92. package/interfaces.d.ts +11 -3
  93. package/layers/graphics/controllers/FeatureTileController3D.js +1 -1
  94. package/layers/graphics/data/AttributesBuilder.js +1 -1
  95. package/layers/graphics/data/QueryEngineResult.js +1 -1
  96. package/layers/graphics/data/queryValidationUtils.js +1 -1
  97. package/layers/graphics/editingSupport.js +1 -1
  98. package/layers/support/TitleCreator.js +1 -1
  99. package/layers/support/fieldUtils.js +1 -1
  100. package/layers/support/labelFormatUtils.js +1 -1
  101. package/package.json +1 -1
  102. package/renderers/ClassBreaksRenderer.js +1 -1
  103. package/renderers/DictionaryRenderer.js +1 -1
  104. package/renderers/UniqueValueRenderer.js +1 -1
  105. package/renderers/support/DictionaryControlString.js +5 -0
  106. package/renderers/support/DictionaryLoader.js +1 -1
  107. package/renderers/support/DictionaryScriptEvaluator.js +5 -0
  108. package/rest/featureService/FeatureService.js +1 -1
  109. package/rest/print.js +1 -1
  110. package/rest/support/TranslateContent.js +5 -0
  111. package/rest/support/TranslateParameters.js +5 -0
  112. package/rest/support/TranslateResult.js +5 -0
  113. package/rest/translate.js +5 -0
  114. package/rest/utils.js +1 -1
  115. package/smartMapping/statistics/support/attributeDensity.js +1 -1
  116. package/smartMapping/statistics/support/utils.js +1 -1
  117. package/smartMapping/support/adapters/InMemoryLayerAdapter.js +1 -1
  118. package/smartMapping/support/utils.js +1 -1
  119. package/support/ArcadeExpression.js +5 -0
  120. package/support/loadArcade.js +5 -0
  121. package/support/revision.js +1 -1
  122. package/symbols/cim/OverrideHelper.js +1 -1
  123. package/symbols/cim/cimAnalyzer.js +1 -1
  124. package/symbols/cim/utils.js +1 -1
  125. package/symbols/support/symbolUtils.js +1 -1
  126. package/views/2d/arcade/callExpressionWithCursor.js +1 -1
  127. package/views/2d/arcade/callExpressionWithFeature.js +1 -1
  128. package/views/2d/engine/webgl/mesh/factories/ResourceProxy.js +1 -1
  129. package/views/2d/engine/webgl/shaderGraph/techniques/GraphicInstanceStore.js +1 -1
  130. package/views/2d/engine/webgl/shaderGraph/techniques/createGraphicSymbolMeshSchemas.js +1 -1
  131. package/views/2d/engine/webgl/shaderGraph/techniques/mesh/MeshWriterInputEvaluator.js +1 -1
  132. package/views/2d/engine/webgl/shaderGraph/techniques/mesh/MeshWriterRegistry.js +1 -1
  133. package/views/2d/engine/webgl/util/DictionaryMatcher.js +1 -1
  134. package/views/2d/engine/webgl/util/MatcherContext.js +1 -1
  135. package/views/2d/layers/FeatureLayerView2D.js +1 -1
  136. package/views/2d/layers/MediaLayerView2D.js +1 -1
  137. package/views/2d/layers/TileLayerView2D.js +1 -1
  138. package/views/2d/layers/features/FeaturePipelineWorker.js +1 -1
  139. package/views/2d/layers/features/Processor.js +1 -1
  140. package/views/2d/layers/features/processor/AAggregateStrategy.js +1 -1
  141. package/views/2d/layers/features/processor/AProcessorStrategy.js +1 -1
  142. package/views/2d/layers/features/processor/TrackStrategy.js +1 -1
  143. package/views/2d/layers/features/schema/processor/MatcherSchema.js +1 -1
  144. package/views/2d/layers/features/schema/processor/symbols/ComplexSymbolSchema.js +1 -1
  145. package/views/2d/layers/features/schema/processor/symbols/SymbolSchema.js +1 -1
  146. package/views/2d/layers/features/sources/FeatureSource.js +1 -1
  147. package/views/2d/layers/features/sources/strategies/StreamLoadStrategy.js +1 -1
  148. package/views/2d/layers/features/support/AttributeStore.js +1 -1
  149. package/views/2d/layers/features/support/ComputedAttributeStorage.js +1 -1
  150. package/views/2d/layers/features/support/ComputedExpression.js +1 -1
  151. package/views/2d/layers/features/support/DictionaryTemplate.js +5 -0
  152. package/views/2d/layers/graphics/GraphicsView2D.js +1 -1
  153. package/views/3d/environment/EnvironmentManager.js +1 -1
  154. package/views/3d/environment/Precipitation.js +1 -1
  155. package/views/3d/layers/DynamicLayerView3D.js +1 -1
  156. package/views/3d/layers/FeatureLikeLayerView3D.js +1 -1
  157. package/views/3d/layers/GraphicsLayerView3D.js +1 -1
  158. package/views/3d/layers/I3SMeshView3D.js +1 -1
  159. package/views/3d/layers/RouteLayerView3D.js +1 -1
  160. package/views/3d/layers/SceneLayerView3D.js +1 -1
  161. package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
  162. package/views/3d/layers/graphics/Graphics3DIconSymbolLayer.js +1 -1
  163. package/views/3d/layers/graphics/Graphics3DPathSymbolLayer.js +1 -1
  164. package/views/3d/layers/graphics/featureExpressionInfoUtils.js +1 -1
  165. package/views/3d/layers/graphics/queryForSymbologySnapping.js +1 -1
  166. package/views/3d/layers/i3s/I3SIndex.js +1 -1
  167. package/views/3d/layers/i3s/I3SMeshViewFilter.js +1 -1
  168. package/views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js +7 -7
  169. package/views/3d/webgl-engine/lib/GLTextureMaterial.js +1 -1
  170. package/views/3d/webgl-engine/lib/PathBuilder.js +1 -1
  171. package/views/3d/webgl-engine/lib/PathGeometryData.js +1 -1
  172. package/views/3d/webgl-engine/materials/LineMarkerMaterial.js +1 -1
  173. package/views/3d/webgl-engine/materials/PathMaterial.js +1 -1
  174. package/views/3d/webgl-engine/materials/PathTechnique.js +1 -1
  175. package/views/VideoView.js +1 -1
  176. package/views/layers/FeatureLayerView.js +1 -1
  177. package/views/layers/support/MapServiceLayerViewHelper.js +1 -1
  178. package/views/overlay/CrosshairOverlayItem.js +1 -1
  179. package/views/support/projectionUtils.js +1 -1
  180. package/widgets/Editor/CreateFeaturesWorkflow.js +1 -1
  181. package/widgets/Editor/CreateFeaturesWorkflowData.js +1 -1
  182. package/widgets/Editor/EditorViewModel.js +1 -1
  183. package/widgets/Editor/Edits.js +1 -1
  184. package/widgets/Editor/UpdateWorkflow.js +1 -1
  185. package/widgets/Editor/components/PendingFeatureList.js +1 -1
  186. package/widgets/Editor/components/UpdateFeaturePanelContent.js +1 -1
  187. package/widgets/Editor/support/dependencySort.js +5 -0
  188. package/widgets/Editor/workflowUtils.js +1 -1
  189. package/widgets/Feature/FeatureRelationship/FeatureRelationshipViewModel.js +1 -1
  190. package/widgets/Feature/FeatureRelationship.js +1 -1
  191. package/widgets/Feature/support/featureUtils.js +1 -1
  192. package/widgets/FeatureForm/FeatureFormViewModel.js +1 -1
  193. package/widgets/FeatureForm/RelationshipInput.js +1 -1
  194. package/widgets/FeatureForm.js +1 -1
  195. package/widgets/FeatureTemplates/FeatureTemplatesViewModel.js +1 -1
  196. package/widgets/OrientedImageryViewer/adapters/sketch/MeasurementAdapter.js +1 -1
  197. package/widgets/Popup.js +1 -1
  198. package/widgets/Print.js +1 -1
  199. package/widgets/Sketch.js +1 -1
  200. package/widgets/support/LabeledSwitch.js +1 -1
  201. package/assets/esri/core/workers/chunks/0121702bc9a1f3a85f1f.js +0 -1
  202. package/assets/esri/core/workers/chunks/05b7c739115be0490583.js +0 -1
  203. package/assets/esri/core/workers/chunks/0ce1bfcdcccb679569f8.js +0 -1
  204. package/assets/esri/core/workers/chunks/1007c1a908b6e503e0db.js +0 -1
  205. package/assets/esri/core/workers/chunks/1439f1d84e21e6295e3f.js +0 -1
  206. package/assets/esri/core/workers/chunks/1912d25f8007685c7aee.js +0 -1
  207. package/assets/esri/core/workers/chunks/1bd58eaac6f4906bbdae.js +0 -1
  208. package/assets/esri/core/workers/chunks/2c091edee3601f345f5f.js +0 -1
  209. package/assets/esri/core/workers/chunks/2e40f2527345ad85d800.js +0 -1
  210. package/assets/esri/core/workers/chunks/30f271bbc34f66cbfc23.js +0 -1
  211. package/assets/esri/core/workers/chunks/36b406131cd864567033.js +0 -1
  212. package/assets/esri/core/workers/chunks/4395b7263a299a8020d4.js +0 -1
  213. package/assets/esri/core/workers/chunks/4c15de6b2b8eefd76b61.js +0 -1
  214. package/assets/esri/core/workers/chunks/4c596cb20baaae5166de.js +0 -1
  215. package/assets/esri/core/workers/chunks/4d16b1e50caad0da7838.js +0 -1
  216. package/assets/esri/core/workers/chunks/5802406d0a239a27a9a3.js +0 -1
  217. package/assets/esri/core/workers/chunks/5c86df2a5e16877ba614.js +0 -1
  218. package/assets/esri/core/workers/chunks/62c9171a58160ea099f8.js +0 -1
  219. package/assets/esri/core/workers/chunks/6a4731b47629604a9ca0.js +0 -1
  220. package/assets/esri/core/workers/chunks/7975ada96e4540a37c83.js +0 -1
  221. package/assets/esri/core/workers/chunks/81c507c0d901448835f4.js +0 -1
  222. package/assets/esri/core/workers/chunks/8278d9263e9b7e3bf2d1.js +0 -1
  223. package/assets/esri/core/workers/chunks/8926f672397620591740.js +0 -1
  224. package/assets/esri/core/workers/chunks/8bf623f560b1ed440004.js +0 -1
  225. package/assets/esri/core/workers/chunks/924176d9ab2e070248a8.js +0 -1
  226. package/assets/esri/core/workers/chunks/988efc508c33ca341e49.js +0 -1
  227. package/assets/esri/core/workers/chunks/98cbfc72430a378a9451.js +0 -1
  228. package/assets/esri/core/workers/chunks/9fde9309cb64f1a9301c.js +0 -1
  229. package/assets/esri/core/workers/chunks/a901c445d36f1a9e7df8.js +0 -1
  230. package/assets/esri/core/workers/chunks/ab525991f71240d68471.js +0 -1
  231. package/assets/esri/core/workers/chunks/af27a3f646a4404d3b8d.js +0 -1
  232. package/assets/esri/core/workers/chunks/c15c3fec95f365580902.js +0 -1
  233. package/assets/esri/core/workers/chunks/c1e343cdf85da40ac10e.js +0 -1
  234. package/assets/esri/core/workers/chunks/c3806be4a760735e6082.js +0 -1
  235. package/assets/esri/core/workers/chunks/c3dc8d1958ddc71e1129.js +0 -1
  236. package/assets/esri/core/workers/chunks/c7b0f58550e63ce6ad5b.js +0 -1
  237. package/assets/esri/core/workers/chunks/ccf8a423eee7ef4ffe4c.js +0 -1
  238. package/assets/esri/core/workers/chunks/d24321b1eeabe9ec553c.js +0 -1
  239. package/assets/esri/core/workers/chunks/dd913cb7cf3bb172b34c.js +0 -1
  240. package/assets/esri/core/workers/chunks/e3e049311bced533c853.js +0 -1
  241. package/assets/esri/core/workers/chunks/e3e5a215dcd531b1196f.js +0 -1
  242. package/assets/esri/core/workers/chunks/e8a19f9144df8f155e30.js +0 -1
  243. package/assets/esri/core/workers/chunks/f31986ea5cadfade8344.js +0 -1
  244. package/assets/esri/core/workers/chunks/f350aefc5e348ebad1da.js +0 -1
  245. package/support/arcadeOnDemand.js +0 -5
  246. package/views/3d/layers/support/projectExtentUtils.js +0 -5
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.33/esri/copyright.txt for details.
4
4
  */
5
- import e from"../../Graphic.js";import{ArcadeDate as t}from"../ArcadeDate.js";import n from"../ArcadePortal.js";import i from"../Dictionary.js";import{ArcadeExecutionError as a,ExecutionErrorCodes as r}from"../executionError.js";import o from"../Feature.js";import{convertToFeatureSet as s,constructFeatureSetFromPortalItem as l,constructFeatureSet as f,constructFeatureSetFromRelationship as d,constructFeatureSetFromUrl as u,constructAssociationMetaDataFeatureSetFromUrl as c}from"../featureSetUtils.js";import m from"../ImmutableArray.js";import{D as p,k as y,j as w,p as h,f as I,h as g,L as F,g as b,o as T,K as D,e as x,n as E,m as N,i as A,t as v,a0 as S,X as L}from"../../chunks/languageUtils.js";import{getPortal as j}from"../portalUtils.js";import{SqlExpressionAdapted as C,StringToCodeAdapted as Z,FieldRename as k,AdaptedFeatureSet as $,OriginalField as P}from"../featureset/actions/Adapted.js";import U from"../featureset/actions/AttributeFilter.js";import M from"../featureset/actions/OrderBy.js";import R from"../featureset/actions/Top.js";import O from"../featureset/sources/Empty.js";import z from"../featureset/sources/FeatureLayerMemory.js";import W from"../featureset/support/OrderbyClause.js";import{isSupportedLayer as H,cloneField as G}from"../featureset/support/shared.js";import{isSingleField as V}from"../featureset/support/sqlUtils.js";import{calculateStat as _}from"./fieldStats.js";import{isPromiseLike as K}from"../../core/promiseUtils.js";import q from"../../core/sql/WhereClause.js";import B from"../../layers/FeatureLayer.js";import Q from"../../layers/support/Field.js";import J from"../../portal/Portal.js";import{queryAssociations as X}from"../../rest/networks/queryAssociations.js";import Y from"../../rest/networks/support/NetworkElement.js";import ee from"../../rest/networks/support/QueryAssociationsParameters.js";import{isString as te,isArray as ne,isInteger as ie}from"../../support/guards.js";function ae(e){if(1===e.length){if(ne(e[0]))return _("distinct",e[0],-1);if(N(e[0]))return _("distinct",e[0].toArray(),-1)}return _("distinct",e,-1)}function re(e,t,n){const i=e.getVariables();if(i.length>0){const a={};for(const e of i)a[e]=t.evaluateIdentifier(n,{name:e});e.parameters=a}return e}function oe(e,t,n=null){for(const i in e)if(i.toLowerCase()===t.toLowerCase())return e[i];return n}function se(e){if(null===e)return null;const t={type:oe(e,"type",""),name:oe(e,"name","")};if("range"===t.type)t.range=oe(e,"range",[]);else{t.codedValues=[];for(const n of oe(e,"codedValues",[]))t.codedValues.push({name:oe(n,"name",""),code:oe(n,"code",null)})}return t}function le(e){if(null===e)return null;const t={},n=oe(e,"wkt");null!==n&&(t.wkt=n);const i=oe(e,"wkid");return null!==i&&(t.wkid=i),t}function fe(e){if(null===e)return null;const t={hasZ:oe(e,"hasz",!1),hasM:oe(e,"hasm",!1)},n=oe(e,"spatialreference");null!=n&&(t.spatialReference=le(n));const i=oe(e,"x",null);if(null!==i)return t.x=i,t.y=oe(e,"y",null),t.hasZ&&(t.z=oe(e,"z",null)),t.hasM&&(t.m=oe(e,"m",null)),t;const a=oe(e,"rings",null);if(null!==a)return t.rings=a,t;const r=oe(e,"paths",null);if(null!==r)return t.paths=r,t;const o=oe(e,"points",null);if(null!==o)return t.points=o,t;for(const s of["xmin","xmax","ymin","ymax","zmin","zmax","mmin","mmax"]){const n=oe(e,s,null);null!==n&&(t[s]=n)}return t}function de(e,t){for(const n of t)if(n===e)return!0;return!1}function ue(e){return!!e.layerDefinition&&(!!e.featureSet&&(!1!==de(e.layerDefinition.geometryType,["",null,"esriGeometryNull","esriGeometryPoint","esriGeometryPolyline","esriGeometryPolygon","esriGeometryMultipoint","esriGeometryEnvelope"])&&(!1!==ne(e.layerDefinition.fields)&&!1!==ne(e.featureSet.features))))}function ce(e){return"utc"===e?.toLowerCase()?"UTC":"unknown"===e?.toLowerCase()?"Unknown":e}async function me(t,n,i,o,s,l,d){const u=await t.getFeatureSetInfo();if(null===(u?.layerId??null))return null;if(!s.layerIdLookup.get(u.layerId))return null;const c=t.serviceUrl().replace(/\/FeatureServer/i,"/UtilityNetworkServer"),m=[];switch(i){case"connected":m.push("connectivity"),m.push("junction-edge-from-connectivity"),m.push("junction-edge-to-connectivity"),m.push("junction-edge-midspan-connectivity"),m.push("junction-junction-connectivity");break;case"container":case"content":m.push("containment");break;case"structure":case"attached":m.push("attachment");break;case"junctionedge":m.push("junction-edge-from-connectivity"),m.push("junction-edge-to-connectivity");break;case"midspan":m.push("junction-edge-midspan-connectivity");break;default:throw new a(l,r.InvalidParameter,d)}let p=null,y=!1;if(null!==o&&""!==o&&void 0!==o){for(const e of s.terminals)e.terminalName===o&&(p=e.terminalId);null===p&&(y=!0)}const w=[];if(!y){const a=new Y({globalId:n.field(t.globalIdField),networkSourceId:s.layerIdLookup.get(u.layerId).sourceId,...p?{terminalId:p}:""}),r=await X(c,new ee({types:m,elements:[a]}));let o=0;for(const t of r.associations){let n=null,r="",l="";if(t.fromNetworkElement?.globalId===a.globalId?(n=t.toNetworkElement,l="to"):t.toNetworkElement?.globalId===a.globalId&&(n=t.fromNetworkElement,l="from"),!n)continue;switch(i){case"attached":if("attachment"!==t.associationType)continue;if("to"!==l)continue;break;case"structure":if("attachment"!==t.associationType)continue;if("from"!==l)continue;break;case"container":if("containment"!==t.associationType)continue;if("from"!==l)continue;break;case"content":if("containment"!==t.associationType)continue;if("to"!==l)continue;break;case"connected":break;case"junctionedge":"junction-edge-to-connectivity"===t.associationType?r="to":"junction-edge-from-connectivity"===t.associationType&&(r="from");break;case"midspan":if("junction-edge-midspan-connectivity"!==t.associationType)continue}const f=s.sourceIdLookup.get(n.networkSourceId)?.className??"";w.push(new e({geometry:null,attributes:{objectId:o++,globalId:n.globalId,percentAlong:t.percentAlong??0,isContentVisible:t.isContentVisible?0:1,className:f,side:r}}))}}const h=new B({source:w,geometryType:null,objectIdField:"objectId",globalIdField:"globalId",fields:[new Q({name:"objectId",alias:"objectId",type:"oid"}),new Q({name:"globalId",alias:"globalId",type:"global-id"}),new Q({name:"percentAlong",alias:"percentAlong",type:"double"}),new Q({name:"side",alias:"side",type:"string"}),new Q({name:"isContentVisible",alias:"isContentVisible",type:"integer"}),new Q({name:"className",alias:"className",type:"string"})]});return f(h)}function pe(e){"async"===e.mode&&(e.functions.timezone=function(n,o){return e.standardFunctionAsync(n,o,(async(e,s,l)=>{if(p(l,1,2,n,o),y(l[0]))return"Unknown";if(w(l[0]))return"Unknown";if(h(l[0])){if(await l[0].load(),1===l.length||null===l[1])return l[0].datesInUnknownTimezone?ce("unknown"):ce(l[0].dateFieldsTimeZone);if(!(l[1]instanceof i)||!1===l[1].hasField("type"))throw new a(n,r.InvalidParameter,o);const e=l[1].field("type");if(!1===te(e))throw new a(n,r.InvalidParameter,o);switch(I(e).toLowerCase()){case"preferredtimezone":return ce(l[0].preferredTimeZone);case"editfieldsinfo":return ce(l[0].editFieldsInfo?.timeZone??null);case"timeinfo":return ce(l[0].timeInfo?.timeZone??null);case"field":if(l[1].hasField("fieldname")&&te(l[1].field("fieldname")))return ce(l[0].fieldTimeZone(I(l[1].field("fieldname"))))}throw new a(n,r.InvalidParameter,o)}const f=g(l[0],F(n));if(null===f)return null;const d=f.timeZone;return"system"===d?t.systemTimeZoneCanonicalName:"utc"===d.toLowerCase()?"UTC":"unknown"===d.toLowerCase()?"Unknown":d}))},e.functions.sqltimestamp=function(t,n){return e.standardFunctionAsync(t,n,(async(e,i,o)=>{p(o,1,3,t,n);const s=o[0];if(b(s)){if(1===o.length)return s.toSQLWithKeyword();if(2===o.length)return s.changeTimeZone(I(o[1])).toSQLWithKeyword();throw new a(t,r.InvalidParameter,n)}if(w(s))return s.toSQLWithKeyword();if(h(s)){if(3!==o.length)throw new a(t,r.InvalidParameter,n);await s.load();const e=I(o[1]);if(w(o[2]))return o[2].toSQLWithKeyword();if(!1===b(o[2]))throw new a(t,r.InvalidParameter,n);const i=s.fieldTimeZone(e);return null==i?o[2].toSQLWithKeyword():o[2].changeTimeZone(i).toSQLWithKeyword()}throw new a(t,r.InvalidParameter,n)}))},e.signatures.push({name:"sqltimestamp",min:2,max:4}),e.functions.featuresetbyid=function(t,n){return e.standardFunctionAsync(t,n,((e,i,o)=>{if(p(o,2,4,t,n),T(o[0])){const e=I(o[1]);let i=D(o[2],null);const s=x(D(o[3],!0));if(null===i&&(i=["*"]),!1===ne(i))throw new a(t,r.InvalidParameter,n);return o[0].featureSetById(e,s,i)}throw new a(t,r.InvalidParameter,n)}))},e.signatures.push({name:"featuresetbyid",min:2,max:4}),e.functions.getfeatureset=function(t,n){return e.standardFunctionAsync(t,n,(async(e,i,o)=>{if(p(o,1,2,t,n),E(o[0])){let e=D(o[1],"datasource");return null===e&&(e="datasource"),e=I(e).toLowerCase(),s(o[0].fullSchema(),e,t.lrucache,t.interceptor,t.spatialReference)}throw new a(t,r.InvalidParameter,n)}))},e.signatures.push({name:"getfeatureset",min:1,max:2}),e.functions.featuresetbyportalitem=function(t,i){return e.standardFunctionAsync(t,i,((e,o,s)=>{if(p(s,2,5,t,i),null===s[0])throw new a(t,r.PortalRequired,i);if(s[0]instanceof n){const e=I(s[1]),n=I(s[2]);let o=D(s[3],null);const f=x(D(s[4],!0));if(null===o&&(o=["*"]),!1===ne(o))throw new a(t,r.InvalidParameter,i);let d;return d=t.services?.portal?t.services.portal:J.getDefault(),d=j(s[0],d),l(e,n,t.spatialReference,o,f,d,t.lrucache,t.interceptor)}if(!1===te(s[0]))throw new a(t,r.PortalRequired,i);const f=I(s[0]),d=I(s[1]);let u=D(s[2],null);const c=x(D(s[3],!0));if(null===u&&(u=["*"]),!1===ne(u))throw new a(t,r.InvalidParameter,i);return l(f,d,t.spatialReference,u,c,t.services?.portal??J.getDefault(),t.lrucache,t.interceptor)}))},e.signatures.push({name:"featuresetbyportalitem",min:2,max:5}),e.functions.featuresetbyname=function(t,n){return e.standardFunctionAsync(t,n,((e,i,o)=>{if(p(o,2,4,t,n),T(o[0])){const e=I(o[1]);let i=D(o[2],null);const s=x(D(o[3],!0));if(null===i&&(i=["*"]),!1===ne(i))throw new a(t,r.InvalidParameter,n);return o[0].featureSetByName(e,s,i)}throw new a(t,r.InvalidParameter,n)}))},e.signatures.push({name:"featuresetbyname",min:2,max:4}),e.functions.featureset=function(t,n){return e.standardFunction(t,n,((e,o,s)=>{p(s,1,1,t,n);const l={layerDefinition:{geometryType:"",objectIdField:"",globalIdField:"",typeIdField:"",hasM:!1,hasZ:!1,fields:[]},featureSet:{geometryType:"",features:[]}};if(te(s[0])){const e=JSON.parse(s[0]);void 0!==e.layerDefinition?(l.layerDefinition=e.layerDefinition,l.featureSet=e.featureSet,e.layerDefinition.spatialReference&&(l.layerDefinition.spatialReference=e.layerDefinition.spatialReference)):(l.featureSet.features=e.features,l.featureSet.geometryType=e.geometryType,l.layerDefinition.geometryType=l.featureSet.geometryType,l.layerDefinition.objectIdField=e.objectIdFieldName??"",l.layerDefinition.typeIdField=e.typeIdFieldName,l.layerDefinition.globalIdField=e.globalIdFieldName,l.layerDefinition.fields=e.fields,e.spatialReference&&(l.layerDefinition.spatialReference=e.spatialReference))}else{if(!(s[0]instanceof i))throw new a(t,r.InvalidParameter,n);{const e=JSON.parse(s[0].castToText(!0)),i=oe(e,"layerdefinition");if(null!==i){l.layerDefinition.geometryType=oe(i,"geometrytype",""),l.featureSet.geometryType=l.layerDefinition.geometryType,l.layerDefinition.globalIdField=oe(i,"globalidfield",""),l.layerDefinition.objectIdField=oe(i,"objectidfield",""),l.layerDefinition.typeIdField=oe(i,"typeidfield",""),l.layerDefinition.hasZ=!0===oe(i,"hasz",!1),l.layerDefinition.hasM=!0===oe(i,"hasm",!1);const t=oe(i,"spatialreference");t&&(l.layerDefinition.spatialReference=le(t));const n=[];for(const e of oe(i,"fields",[])){const t={name:oe(e,"name",""),alias:oe(e,"alias",""),type:oe(e,"type",""),nullable:oe(e,"nullable",!0),editable:oe(e,"editable",!0),length:oe(e,"length",null),domain:se(oe(e,"domain"))};n.push(t)}l.layerDefinition.fields=n;const a=oe(e,"featureset");if(a){const e={};for(const t of n)e[t.name.toLowerCase()]=t.name;for(const t of oe(a,"features",[])){const n={},i=oe(t,"attributes",{});for(const t in i)n[e[t.toLowerCase()]]=i[t];l.featureSet.features.push({attributes:n,geometry:fe(oe(t,"geometry"))})}}}else{l.layerDefinition.hasZ=!0===oe(e,"hasz",!1),l.layerDefinition.hasM=!0===oe(e,"hasm",!1),l.layerDefinition.geometryType=oe(e,"geometrytype",""),l.featureSet.geometryType=l.layerDefinition.geometryType,l.layerDefinition.objectIdField=oe(e,"objectidfieldname",""),l.layerDefinition.typeIdField=oe(e,"typeidfieldname","");const i=oe(e,"spatialreference");i&&(l.layerDefinition.spatialReference=le(i));const o=[],s=oe(e,"fields",null);if(!ne(s))throw new a(t,r.InvalidParameter,n);for(const e of s){const t={name:oe(e,"name",""),alias:oe(e,"alias",""),type:oe(e,"type",""),nullable:oe(e,"nullable",!0),editable:oe(e,"editable",!0),length:oe(e,"length",null),domain:se(oe(e,"domain"))};o.push(t)}l.layerDefinition.fields=o;const f={};for(const e of o)f[e.name.toLowerCase()]=e.name;let d=oe(e,"features",null);if(ne(d))for(const e of d){const t={},n=oe(e,"attributes",{});for(const e in n)t[f[e.toLowerCase()]]=n[e];l.featureSet.features.push({attributes:t,geometry:fe(oe(e,"geometry",null))})}else d=null,l.featureSet.features=d}}}if(!1===ue(l))throw new a(t,r.InvalidParameter,n);return l.layerDefinition.geometryType||(l.layerDefinition.geometryType="esriGeometryNull"),z.create(l,t.spatialReference)}))},e.signatures.push({name:"featureset",min:1,max:1}),e.functions.filter=function(t,n){return e.standardFunctionAsync(t,n,(async(i,o,s)=>{if(p(s,2,2,t,n),ne(s[0])||N(s[0])){const e=[];let i,o=s[0];if(o instanceof m&&(o=o.toArray()),!A(s[1]))throw new a(t,r.InvalidParameter,n);i=s[1].createFunction(t);for(const t of o){const n=i(t);K(n)?!0===await n&&e.push(t):!0===n&&e.push(t)}return e}if(h(s[0])){const n=await s[0].load(),i=q.create(s[1],{fieldsIndex:n.getFieldsIndex(),timeZone:n.dateFieldsTimeZoneDefaultUTC}),a=i.getVariables();if(a.length>0){const n={};for(const i of a)n[i]=e.evaluateIdentifier(t,{name:i});i.parameters=n}return new U({parentfeatureset:s[0],whereclause:i})}throw new a(t,r.InvalidParameter,n)}))},e.signatures.push({name:"filter",min:2,max:2}),e.functions.orderby=function(t,n){return e.standardFunctionAsync(t,n,(async(e,i,o)=>{if(p(o,2,2,t,n),h(o[0])){const e=new W(o[1]);return new M({parentfeatureset:o[0],orderbyclause:e})}throw new a(t,r.InvalidParameter,n)}))},e.signatures.push({name:"orderby",min:2,max:2}),e.functions.top=function(t,n){return e.standardFunctionAsync(t,n,(async(e,i,o)=>{if(p(o,2,2,t,n),h(o[0]))return new R({parentfeatureset:o[0],topnum:o[1]});if(ne(o[0]))return v(o[1])>=o[0].length?o[0].slice():o[0].slice(0,v(o[1]));if(N(o[0]))return v(o[1])>=o[0].length()?o[0].slice():o[0].slice(0,v(o[1]));throw new a(t,r.InvalidParameter,n)}))},e.signatures.push({name:"top",min:2,max:2}),e.functions.first=function(t,n){return e.standardFunctionAsync(t,n,(async(e,i,a)=>{if(p(a,1,1,t,n),h(a[0])){const n=await a[0].first(e.abortSignal);if(null!==n){const e=o.createFromGraphicLikeObject(n.geometry,n.attributes,a[0],t.timeZone);return e._underlyingGraphic=n,e}return n}return ne(a[0])?0===a[0].length?null:a[0][0]:N(a[0])?0===a[0].length()?null:a[0].get(0):null}))},e.signatures.push({name:"first",min:1,max:1}),e.functions.attachments=function(t,n){return e.standardFunctionAsync(t,n,(async(e,o,s)=>{p(s,1,2,t,n);const l={minsize:-1,maxsize:-1,types:null,returnMetadata:!1};if(s.length>1)if(s[1]instanceof i){if(s[1].hasField("minsize")&&(l.minsize=v(s[1].field("minsize"))),s[1].hasField("metadata")&&(l.returnMetadata=x(s[1].field("metadata"))),s[1].hasField("maxsize")&&(l.maxsize=v(s[1].field("maxsize"))),s[1].hasField("types")){const e=S(s[1].field("types"),!1);e.length>0&&(l.types=e)}}else if(null!==s[1])throw new a(t,r.InvalidParameter,n);if(E(s[0])){const e=s[0]._layer;let n;if(h(e))n=e;else{if(null==e||!H(e))return[];n=f(e,t.spatialReference,["*"],!0,t.lrucache,t.interceptor)}return await n.load(),n.queryAttachments(s[0].field(n.objectIdField),l.minsize,l.maxsize,l.types,l.returnMetadata)}if(null===s[0])return[];throw new a(t,r.InvalidParameter,n)}))},e.signatures.push({name:"attachments",min:1,max:2}),e.functions.featuresetbyrelationshipname=function(t,n){return e.standardFunctionAsync(t,n,(async(e,i,o)=>{p(o,2,4,t,n);const s=o[0],l=I(o[1]);let c=D(o[2],null);const m=x(D(o[3],!0));if(null===c&&(c=["*"]),!1===ne(c))throw new a(t,r.InvalidParameter,n);if(null===o[0])return null;if(!E(o[0]))throw new a(t,r.InvalidParameter,n);const y=s._layer;let w;if(h(y))w=y;else{if(null==y||!H(y))return null;w=f(y,t.spatialReference,["*"],!0,t.lrucache,t.interceptor)}w=await w.load();const g=w.relationshipMetaData().filter((e=>e.name===l));if(0===g.length)return null;if(void 0!==g[0].relationshipTableId&&null!==g[0].relationshipTableId&&g[0].relationshipTableId>-1)return d(w,g[0],s.field(w.objectIdField),w.spatialReference,c,m,t.lrucache,t.interceptor);let F=w.serviceUrl();if(!F)return null;F="/"===F.charAt(F.length-1)?F+g[0].relatedTableId.toString():F+"/"+g[0].relatedTableId.toString();const b=await u(F,w.spatialReference,c,m,t.lrucache,t.interceptor);await b.load();let T=b.relationshipMetaData();if(T=T.filter((e=>e.id===g[0].id)),!1===s.hasField(g[0].keyField)||null===s.field(g[0].keyField)){const e=await w.getFeatureByObjectId(s.field(w.objectIdField),[g[0].keyField]);if(e){const t=q.create(T[0].keyField+"= @id",{fieldsIndex:b.getFieldsIndex(),timeZone:b.dateFieldsTimeZoneDefaultUTC});return t.parameters={id:e.attributes[g[0].keyField]},b.filter(t)}return new O({parentfeatureset:b})}const N=q.create(T[0].keyField+"= @id",{fieldsIndex:b.getFieldsIndex(),timeZone:b.dateFieldsTimeZoneDefaultUTC});return N.parameters={id:s.field(g[0].keyField)},b.filter(N)}))},e.signatures.push({name:"featuresetbyrelationshipname",min:2,max:4}),e.functions.featuresetbyassociation=function(t,n){return e.standardFunctionAsync(t,n,(async(e,i,o)=>{p(o,2,3,t,n);const s=o[0],l=I(D(o[1],"")).toLowerCase(),d=te(o[2])?I(o[2]):null;if(null===o[0])return null;if(!E(o[0]))throw new a(t,r.InvalidParameter,n);let u=s._layer;if(u instanceof B&&(u=f(u,t.spatialReference,["*"],!0,t.lrucache,t.interceptor)),null===u)return null;if(!1===h(u))return null;await u.load();const m=u.serviceUrl(),y=await c(m,t.spatialReference,!0);if(y.unVersion>=8)return await me(u,s,l,d,y,t,n);const w=y.associations;let g=null,F=null,b=!1;if(null!==d&&""!==d&&void 0!==d){for(const e of y.terminals)e.terminalName===d&&(F=e.terminalId);null===F&&(b=!0)}const T=w.getFieldsIndex(),x=T.get("TOGLOBALID").name,N=T.get("FROMGLOBALID").name,A=T.get("TOTERMINALID").name,v=T.get("FROMTERMINALID").name,S=T.get("FROMNETWORKSOURCEID").name,j=T.get("TONETWORKSOURCEID").name,U=T.get("ASSOCIATIONTYPE").name,M=T.get("ISCONTENTVISIBLE").name,R=T.get("OBJECTID").name;for(const t of u.fields)if("global-id"===t.type){g=s.field(t.name);break}let O=null,z=new C(new Q({name:"percentalong",alias:"percentalong",type:"double"}),q.create("0",{fieldsIndex:w.getFieldsIndex(),timeZone:w.dateFieldsTimeZoneDefaultUTC})),W=new C(new Q({name:"side",alias:"side",type:"string"}),q.create("''",{fieldsIndex:w.getFieldsIndex(),timeZone:w.dateFieldsTimeZoneDefaultUTC}));const H="globalid",V="globalId",_={};for(const t in y.lkp)_[t]=y.lkp[t].sourceId;const K=new Z(new Q({name:"classname",alias:"classname",type:"string"}),null,_);let J="";switch(l){case"midspan":{J=`((${x}='${g}') OR ( ${N}='${g}')) AND (${U} IN (5))`,K.codefield=q.create(`CASE WHEN (${x}='${g}') THEN ${S} ELSE ${j} END`,{fieldsIndex:w.getFieldsIndex(),timeZone:w.dateFieldsTimeZoneDefaultUTC});const e=G($.findField(w.fields,N));e.name=H,e.alias=H,O=new C(e,q.create(`CASE WHEN (${N}='${g}') THEN ${x} ELSE ${N} END`,{fieldsIndex:w.getFieldsIndex(),timeZone:w.dateFieldsTimeZoneDefaultUTC})),z=y.unVersion>=4?new P($.findField(w.fields,T.get("PERCENTALONG").name)):new C(new Q({name:"percentalong",alias:"percentalong",type:"double"}),q.create("0",{fieldsIndex:w.getFieldsIndex(),timeZone:w.dateFieldsTimeZoneDefaultUTC}));break}case"junctionedge":{J=`((${x}='${g}') OR ( ${N}='${g}')) AND (${U} IN (4,6))`,K.codefield=q.create(`CASE WHEN (${x}='${g}') THEN ${S} ELSE ${j} END`,{fieldsIndex:w.getFieldsIndex(),timeZone:w.dateFieldsTimeZoneDefaultUTC});const e=G($.findField(w.fields,N));e.name=H,e.alias=H,O=new C(e,q.create(`CASE WHEN (${N}='${g}') THEN ${x} ELSE ${N} END`,{fieldsIndex:w.getFieldsIndex(),timeZone:w.dateFieldsTimeZoneDefaultUTC})),W=new C(new Q({name:"side",alias:"side",type:"string"}),q.create(`CASE WHEN (${U}=4) THEN 'from' ELSE 'to' END`,{fieldsIndex:w.getFieldsIndex(),timeZone:w.dateFieldsTimeZoneDefaultUTC}));break}case"connected":{let e=`${x}='@T'`,t=`${N}='@T'`;null!==F&&(e+=` AND ${A}=@A`,t+=` AND ${v}=@A`),J="(("+e+") OR ("+t+"))",J=L(J,"@T",g??""),e=L(e,"@T",g??""),null!==F&&(e=L(e,"@A",F.toString()),J=L(J,"@A",F.toString())),K.codefield=q.create("CASE WHEN "+e+` THEN ${S} ELSE ${j} END`,{fieldsIndex:w.getFieldsIndex(),timeZone:w.dateFieldsTimeZoneDefaultUTC});const n=G($.findField(w.fields,N));n.name=H,n.alias=H,O=new C(n,q.create("CASE WHEN "+e+` THEN ${N} ELSE ${x} END`,{fieldsIndex:w.getFieldsIndex(),timeZone:w.dateFieldsTimeZoneDefaultUTC}));break}case"container":J=`${x}='${g}' AND ${U} = 2`,null!==F&&(J+=` AND ${A} = `+F.toString()),K.codefield=S,J="( "+J+" )",O=new k($.findField(w.fields,N),H,H);break;case"content":J=`(${N}='${g}' AND ${U} = 2)`,null!==F&&(J+=` AND ${v} = `+F.toString()),K.codefield=j,J="( "+J+" )",O=new k($.findField(w.fields,x),H,H);break;case"structure":J=`(${x}='${g}' AND ${U} = 3)`,null!==F&&(J+=` AND ${A} = `+F.toString()),K.codefield=S,J="( "+J+" )",O=new k($.findField(w.fields,N),H,V);break;case"attached":J=`(${N}='${g}' AND ${U} = 3)`,null!==F&&(J+=` AND ${v} = `+F.toString()),K.codefield=j,J="( "+J+" )",O=new k($.findField(w.fields,x),H,V);break;default:throw new a(t,r.InvalidParameter,n)}b&&(J="1 <> 1");return new $({parentfeatureset:w,adaptedFields:[new P($.findField(w.fields,R)),new P($.findField(w.fields,M)),O,W,K,z],extraFilter:J?q.create(J,{fieldsIndex:w.getFieldsIndex(),timeZone:w.dateFieldsTimeZoneDefaultUTC}):null})}))},e.signatures.push({name:"featuresetbyassociation",min:2,max:6}),e.functions.groupby=function(t,n){return e.standardFunctionAsync(t,n,(async(o,s,l)=>{if(p(l,3,3,t,n),!h(l[0]))throw new a(t,r.InvalidParameter,n);const f=await l[0].load(),d=[],u=[];let c=!1,m=[];if(te(l[1]))m.push(l[1]);else if(l[1]instanceof i)m.push(l[1]);else if(ne(l[1]))m=l[1];else{if(!N(l[1]))throw new a(t,r.InvalidParameter,n);m=l[1].toArray()}for(const e of m)if(te(e)){const t=q.create(I(e),{fieldsIndex:f.getFieldsIndex(),timeZone:f.dateFieldsTimeZoneDefaultUTC}),n=!0===V(t)?I(e):"%%%%FIELDNAME";d.push({name:n,expression:t}),"%%%%FIELDNAME"===n&&(c=!0)}else{if(!(e instanceof i))throw new a(t,r.InvalidParameter,n);{const i=e.hasField("name")?e.field("name"):"%%%%FIELDNAME",o=e.hasField("expression")?e.field("expression"):"";if("%%%%FIELDNAME"===i&&(c=!0),!i)throw new a(t,r.InvalidParameter,n);d.push({name:i,expression:q.create(o||i,{fieldsIndex:f.getFieldsIndex(),timeZone:f.dateFieldsTimeZoneDefaultUTC})})}}if(m=[],te(l[2]))m.push(l[2]);else if(ne(l[2]))m=l[2];else if(N(l[2]))m=l[2].toArray();else{if(!(l[2]instanceof i))throw new a(t,r.InvalidParameter,n);m.push(l[2])}for(const e of m){if(!(e instanceof i))throw new a(t,r.InvalidParameter,n);{const i=e.hasField("name")?e.field("name"):"",o=e.hasField("statistic")?e.field("statistic"):"",s=e.hasField("expression")?e.field("expression"):"";if(!i||!o||!s)throw new a(t,r.InvalidParameter,n);u.push({name:i,statistic:o.toLowerCase(),expression:q.create(s,{fieldsIndex:f.getFieldsIndex(),timeZone:f.dateFieldsTimeZoneDefaultUTC})})}}if(c){const e={};for(const n of f.fields)e[n.name.toLowerCase()]=1;for(const n of d)"%%%%FIELDNAME"!==n.name&&(e[n.name.toLowerCase()]=1);for(const n of u)"%%%%FIELDNAME"!==n.name&&(e[n.name.toLowerCase()]=1);let t=0;for(const n of d)if("%%%%FIELDNAME"===n.name){for(;1===e["field_"+t.toString()];)t++;e["field_"+t.toString()]=1,n.name="FIELD_"+t.toString()}}for(const n of d)re(n.expression,e,t);for(const n of u)re(n.expression,e,t);return l[0].groupby(d,u)}))},e.signatures.push({name:"groupby",min:3,max:3}),e.functions.distinct=function(t,n){return e.standardFunctionAsync(t,n,(async(o,s,l)=>{if(h(l[0])){p(l,2,2,t,n);const o=await l[0].load(),s=[];let f=[];if(te(l[1]))f.push(l[1]);else if(l[1]instanceof i)f.push(l[1]);else if(ne(l[1]))f=l[1];else{if(!N(l[1]))throw new a(t,r.InvalidParameter,n);f=l[1].toArray()}let d=!1;for(const e of f)if(te(e)){const t=q.create(I(e),{fieldsIndex:o.getFieldsIndex(),timeZone:o.dateFieldsTimeZoneDefaultUTC}),n=!0===V(t)?I(e):"%%%%FIELDNAME";s.push({name:n,expression:t}),"%%%%FIELDNAME"===n&&(d=!0)}else{if(!(e instanceof i))throw new a(t,r.InvalidParameter,n);{const i=e.hasField("name")?e.field("name"):"%%%%FIELDNAME",l=e.hasField("expression")?e.field("expression"):"";if("%%%%FIELDNAME"===i&&(d=!0),!i)throw new a(t,r.InvalidParameter,n);s.push({name:i,expression:q.create(l||i,{fieldsIndex:o.getFieldsIndex(),timeZone:o.dateFieldsTimeZoneDefaultUTC})})}}if(d){const e={};for(const n of o.fields)e[n.name.toLowerCase()]=1;for(const n of s)"%%%%FIELDNAME"!==n.name&&(e[n.name.toLowerCase()]=1);let t=0;for(const n of s)if("%%%%FIELDNAME"===n.name){for(;1===e["field_"+t.toString()];)t++;e["field_"+t.toString()]=1,n.name="FIELD_"+t.toString()}}for(const n of s)re(n.expression,e,t);return l[0].groupby(s,[])}return ae(l)}))},e.functions.getfeaturesetinfo=function(t,n){return e.standardFunctionAsync(t,n,(async(e,a,r)=>{if(p(r,1,1,t,n),!h(r[0]))return null;const o=await r[0].getFeatureSetInfo();return o?i.convertObjectToArcadeDictionary({layerId:o.layerId,layerName:o.layerName,itemId:o.itemId,serviceLayerUrl:o.serviceLayerUrl,webMapLayerId:o.webMapLayerId??null,webMapLayerTitle:o.webMapLayerTitle??null,className:null,objectClassId:null},F(t),!1,!1):null}))},e.signatures.push({name:"getfeaturesetinfo",min:1,max:1}),e.functions.filterbysubtypecode=function(t,n){return e.standardFunctionAsync(t,n,(async(e,i,o)=>{if(p(o,2,2,t,n),h(o[0])){const e=await o[0].load(),i=o[1];if(!ie(i))throw new a(t,r.InvalidParameter,n);if(e.subtypeField){const t=q.create(`${e.subtypeField}= ${o[1]}`,{fieldsIndex:e.getFieldsIndex(),timeZone:e.dateFieldsTimeZoneDefaultUTC});return new U({parentfeatureset:o[0],whereclause:t})}if(null===e.typeIdField||""===e.typeIdField)throw new a(t,r.FeatureSetDoesNotHaveSubtypes,n);const s=q.create(`${e.typeIdField}= ${o[1]}`,{fieldsIndex:e.getFieldsIndex(),timeZone:e.dateFieldsTimeZoneDefaultUTC});return new U({parentfeatureset:o[0],whereclause:s})}throw new a(t,r.InvalidParameter,n)}))},e.signatures.push({name:"filterbysubtypecode",min:2,max:2}))}export{pe as registerFunctions};
5
+ import e from"../../Graphic.js";import{ArcadeDate as t}from"../ArcadeDate.js";import n from"../ArcadePortal.js";import i from"../Dictionary.js";import{ArcadeExecutionError as a,ExecutionErrorCodes as r}from"../executionError.js";import o from"../Feature.js";import{convertToFeatureSet as s,constructFeatureSetFromPortalItem as l,constructFeatureSet as f,constructFeatureSetFromRelationship as d,constructFeatureSetFromUrl as u,constructAssociationMetaDataFeatureSetFromUrl as c}from"../featureSetUtils.js";import m from"../ImmutableArray.js";import{D as p,k as y,j as w,p as h,f as I,h as g,L as F,g as b,o as T,K as D,e as x,n as E,m as N,i as A,t as v,M as S,Y as L}from"../../chunks/languageUtils.js";import{getPortal as j}from"../portalUtils.js";import{SqlExpressionAdapted as C,StringToCodeAdapted as Z,FieldRename as k,AdaptedFeatureSet as $,OriginalField as P}from"../featureset/actions/Adapted.js";import U from"../featureset/actions/AttributeFilter.js";import M from"../featureset/actions/OrderBy.js";import R from"../featureset/actions/Top.js";import O from"../featureset/sources/Empty.js";import z from"../featureset/sources/FeatureLayerMemory.js";import W from"../featureset/support/OrderbyClause.js";import{isSupportedLayer as H,cloneField as G}from"../featureset/support/shared.js";import{isSingleField as V}from"../featureset/support/sqlUtils.js";import{calculateStat as _}from"./fieldStats.js";import{isPromiseLike as K}from"../../core/promiseUtils.js";import q from"../../core/sql/WhereClause.js";import B from"../../layers/FeatureLayer.js";import Q from"../../layers/support/Field.js";import J from"../../portal/Portal.js";import{queryAssociations as Y}from"../../rest/networks/queryAssociations.js";import X from"../../rest/networks/support/NetworkElement.js";import ee from"../../rest/networks/support/QueryAssociationsParameters.js";import{isString as te,isArray as ne,isInteger as ie}from"../../support/guards.js";function ae(e){if(1===e.length){if(ne(e[0]))return _("distinct",e[0],-1);if(N(e[0]))return _("distinct",e[0].toArray(),-1)}return _("distinct",e,-1)}function re(e,t,n){const i=e.getVariables();if(i.length>0){const a={};for(const e of i)a[e]=t.evaluateIdentifier(n,{name:e});e.parameters=a}return e}function oe(e,t,n=null){for(const i in e)if(i.toLowerCase()===t.toLowerCase())return e[i];return n}function se(e){if(null===e)return null;const t={type:oe(e,"type",""),name:oe(e,"name","")};if("range"===t.type)t.range=oe(e,"range",[]);else{t.codedValues=[];for(const n of oe(e,"codedValues",[]))t.codedValues.push({name:oe(n,"name",""),code:oe(n,"code",null)})}return t}function le(e){if(null===e)return null;const t={},n=oe(e,"wkt");null!==n&&(t.wkt=n);const i=oe(e,"wkid");return null!==i&&(t.wkid=i),t}function fe(e){if(null===e)return null;const t={hasZ:oe(e,"hasz",!1),hasM:oe(e,"hasm",!1)},n=oe(e,"spatialreference");null!=n&&(t.spatialReference=le(n));const i=oe(e,"x",null);if(null!==i)return t.x=i,t.y=oe(e,"y",null),t.hasZ&&(t.z=oe(e,"z",null)),t.hasM&&(t.m=oe(e,"m",null)),t;const a=oe(e,"rings",null);if(null!==a)return t.rings=a,t;const r=oe(e,"paths",null);if(null!==r)return t.paths=r,t;const o=oe(e,"points",null);if(null!==o)return t.points=o,t;for(const s of["xmin","xmax","ymin","ymax","zmin","zmax","mmin","mmax"]){const n=oe(e,s,null);null!==n&&(t[s]=n)}return t}function de(e,t){for(const n of t)if(n===e)return!0;return!1}function ue(e){return!!e.layerDefinition&&(!!e.featureSet&&(!1!==de(e.layerDefinition.geometryType,["",null,"esriGeometryNull","esriGeometryPoint","esriGeometryPolyline","esriGeometryPolygon","esriGeometryMultipoint","esriGeometryEnvelope"])&&(!1!==ne(e.layerDefinition.fields)&&!1!==ne(e.featureSet.features))))}function ce(e){return"utc"===e?.toLowerCase()?"UTC":"unknown"===e?.toLowerCase()?"Unknown":e}async function me(t,n,i,o,s,l,d){const u=await t.getFeatureSetInfo();if(null===(u?.layerId??null))return null;if(!s.layerIdLookup.get(u.layerId))return null;const c=t.serviceUrl().replace(/\/FeatureServer/i,"/UtilityNetworkServer"),m=[];switch(i){case"connected":m.push("connectivity"),m.push("junction-edge-from-connectivity"),m.push("junction-edge-to-connectivity"),m.push("junction-edge-midspan-connectivity"),m.push("junction-junction-connectivity");break;case"container":case"content":m.push("containment");break;case"structure":case"attached":m.push("attachment");break;case"junctionedge":m.push("junction-edge-from-connectivity"),m.push("junction-edge-to-connectivity");break;case"midspan":m.push("junction-edge-midspan-connectivity");break;default:throw new a(l,r.InvalidParameter,d)}let p=null,y=!1;if(null!==o&&""!==o&&void 0!==o){for(const e of s.terminals)e.terminalName===o&&(p=e.terminalId);null===p&&(y=!0)}const w=[];if(!y){const a=new X({globalId:n.field(t.globalIdField),networkSourceId:s.layerIdLookup.get(u.layerId).sourceId,...p?{terminalId:p}:""}),r=await Y(c,new ee({types:m,elements:[a]}));let o=0;for(const t of r.associations){let n=null,r="",l="";if(t.fromNetworkElement?.globalId===a.globalId?(n=t.toNetworkElement,l="to"):t.toNetworkElement?.globalId===a.globalId&&(n=t.fromNetworkElement,l="from"),!n)continue;switch(i){case"attached":if("attachment"!==t.associationType)continue;if("to"!==l)continue;break;case"structure":if("attachment"!==t.associationType)continue;if("from"!==l)continue;break;case"container":if("containment"!==t.associationType)continue;if("from"!==l)continue;break;case"content":if("containment"!==t.associationType)continue;if("to"!==l)continue;break;case"connected":break;case"junctionedge":"junction-edge-to-connectivity"===t.associationType?r="to":"junction-edge-from-connectivity"===t.associationType&&(r="from");break;case"midspan":if("junction-edge-midspan-connectivity"!==t.associationType)continue}const f=s.sourceIdLookup.get(n.networkSourceId)?.className??"";w.push(new e({geometry:null,attributes:{objectId:o++,globalId:n.globalId,percentAlong:t.percentAlong??0,isContentVisible:t.isContentVisible?0:1,className:f,side:r}}))}}const h=new B({source:w,geometryType:null,objectIdField:"objectId",globalIdField:"globalId",fields:[new Q({name:"objectId",alias:"objectId",type:"oid"}),new Q({name:"globalId",alias:"globalId",type:"global-id"}),new Q({name:"percentAlong",alias:"percentAlong",type:"double"}),new Q({name:"side",alias:"side",type:"string"}),new Q({name:"isContentVisible",alias:"isContentVisible",type:"integer"}),new Q({name:"className",alias:"className",type:"string"})]});return f(h)}function pe(e){"async"===e.mode&&(e.functions.timezone=function(n,o){return e.standardFunctionAsync(n,o,(async(e,s,l)=>{if(p(l,1,2,n,o),y(l[0]))return"Unknown";if(w(l[0]))return"Unknown";if(h(l[0])){if(await l[0].load(),1===l.length||null===l[1])return l[0].datesInUnknownTimezone?ce("unknown"):ce(l[0].dateFieldsTimeZone);if(!(l[1]instanceof i)||!1===l[1].hasField("type"))throw new a(n,r.InvalidParameter,o);const e=l[1].field("type");if(!1===te(e))throw new a(n,r.InvalidParameter,o);switch(I(e).toLowerCase()){case"preferredtimezone":return ce(l[0].preferredTimeZone);case"editfieldsinfo":return ce(l[0].editFieldsInfo?.timeZone??null);case"timeinfo":return ce(l[0].timeInfo?.timeZone??null);case"field":if(l[1].hasField("fieldname")&&te(l[1].field("fieldname")))return ce(l[0].fieldTimeZone(I(l[1].field("fieldname"))))}throw new a(n,r.InvalidParameter,o)}const f=g(l[0],F(n));if(null===f)return null;const d=f.timeZone;return"system"===d?t.systemTimeZoneCanonicalName:"utc"===d.toLowerCase()?"UTC":"unknown"===d.toLowerCase()?"Unknown":d}))},e.functions.sqltimestamp=function(t,n){return e.standardFunctionAsync(t,n,(async(e,i,o)=>{p(o,1,3,t,n);const s=o[0];if(b(s)){if(1===o.length)return s.toSQLWithKeyword();if(2===o.length)return s.changeTimeZone(I(o[1])).toSQLWithKeyword();throw new a(t,r.InvalidParameter,n)}if(w(s))return s.toSQLWithKeyword();if(h(s)){if(3!==o.length)throw new a(t,r.InvalidParameter,n);await s.load();const e=I(o[1]);if(w(o[2]))return o[2].toSQLWithKeyword();if(!1===b(o[2]))throw new a(t,r.InvalidParameter,n);const i=s.fieldTimeZone(e);return null==i?o[2].toSQLWithKeyword():o[2].changeTimeZone(i).toSQLWithKeyword()}throw new a(t,r.InvalidParameter,n)}))},e.signatures.push({name:"sqltimestamp",min:2,max:4}),e.functions.featuresetbyid=function(t,n){return e.standardFunctionAsync(t,n,((e,i,o)=>{if(p(o,2,4,t,n),T(o[0])){const e=I(o[1]);let i=D(o[2],null);const s=x(D(o[3],!0));if(null===i&&(i=["*"]),!1===ne(i))throw new a(t,r.InvalidParameter,n);return o[0].featureSetById(e,s,i)}throw new a(t,r.InvalidParameter,n)}))},e.signatures.push({name:"featuresetbyid",min:2,max:4}),e.functions.getfeatureset=function(t,n){return e.standardFunctionAsync(t,n,(async(e,i,o)=>{if(p(o,1,2,t,n),E(o[0])){let e=D(o[1],"datasource");return null===e&&(e="datasource"),e=I(e).toLowerCase(),s(o[0].fullSchema(),e,t.lrucache,t.interceptor,t.spatialReference)}throw new a(t,r.InvalidParameter,n)}))},e.signatures.push({name:"getfeatureset",min:1,max:2}),e.functions.featuresetbyportalitem=function(t,i){return e.standardFunctionAsync(t,i,((e,o,s)=>{if(p(s,2,5,t,i),null===s[0])throw new a(t,r.PortalRequired,i);if(s[0]instanceof n){const e=I(s[1]),n=I(s[2]);let o=D(s[3],null);const f=x(D(s[4],!0));if(null===o&&(o=["*"]),!1===ne(o))throw new a(t,r.InvalidParameter,i);let d;return d=t.services?.portal?t.services.portal:J.getDefault(),d=j(s[0],d),l(e,n,t.spatialReference,o,f,d,t.lrucache,t.interceptor)}if(!1===te(s[0]))throw new a(t,r.PortalRequired,i);const f=I(s[0]),d=I(s[1]);let u=D(s[2],null);const c=x(D(s[3],!0));if(null===u&&(u=["*"]),!1===ne(u))throw new a(t,r.InvalidParameter,i);return l(f,d,t.spatialReference,u,c,t.services?.portal??J.getDefault(),t.lrucache,t.interceptor)}))},e.signatures.push({name:"featuresetbyportalitem",min:2,max:5}),e.functions.featuresetbyname=function(t,n){return e.standardFunctionAsync(t,n,((e,i,o)=>{if(p(o,2,4,t,n),T(o[0])){const e=I(o[1]);let i=D(o[2],null);const s=x(D(o[3],!0));if(null===i&&(i=["*"]),!1===ne(i))throw new a(t,r.InvalidParameter,n);return o[0].featureSetByName(e,s,i)}throw new a(t,r.InvalidParameter,n)}))},e.signatures.push({name:"featuresetbyname",min:2,max:4}),e.functions.featureset=function(t,n){return e.standardFunction(t,n,((e,o,s)=>{p(s,1,1,t,n);const l={layerDefinition:{geometryType:"",objectIdField:"",globalIdField:"",typeIdField:"",hasM:!1,hasZ:!1,fields:[]},featureSet:{geometryType:"",features:[]}};if(te(s[0])){const e=JSON.parse(s[0]);void 0!==e.layerDefinition?(l.layerDefinition=e.layerDefinition,l.featureSet=e.featureSet,e.layerDefinition.spatialReference&&(l.layerDefinition.spatialReference=e.layerDefinition.spatialReference)):(l.featureSet.features=e.features,l.featureSet.geometryType=e.geometryType,l.layerDefinition.geometryType=l.featureSet.geometryType,l.layerDefinition.objectIdField=e.objectIdFieldName??"",l.layerDefinition.typeIdField=e.typeIdFieldName,l.layerDefinition.globalIdField=e.globalIdFieldName,l.layerDefinition.fields=e.fields,e.spatialReference&&(l.layerDefinition.spatialReference=e.spatialReference))}else{if(!(s[0]instanceof i))throw new a(t,r.InvalidParameter,n);{const e=JSON.parse(s[0].castToText(!0)),i=oe(e,"layerdefinition");if(null!==i){l.layerDefinition.geometryType=oe(i,"geometrytype",""),l.featureSet.geometryType=l.layerDefinition.geometryType,l.layerDefinition.globalIdField=oe(i,"globalidfield",""),l.layerDefinition.objectIdField=oe(i,"objectidfield",""),l.layerDefinition.typeIdField=oe(i,"typeidfield",""),l.layerDefinition.hasZ=!0===oe(i,"hasz",!1),l.layerDefinition.hasM=!0===oe(i,"hasm",!1);const t=oe(i,"spatialreference");t&&(l.layerDefinition.spatialReference=le(t));const n=[];for(const e of oe(i,"fields",[])){const t={name:oe(e,"name",""),alias:oe(e,"alias",""),type:oe(e,"type",""),nullable:oe(e,"nullable",!0),editable:oe(e,"editable",!0),length:oe(e,"length",null),domain:se(oe(e,"domain"))};n.push(t)}l.layerDefinition.fields=n;const a=oe(e,"featureset");if(a){const e={};for(const t of n)e[t.name.toLowerCase()]=t.name;for(const t of oe(a,"features",[])){const n={},i=oe(t,"attributes",{});for(const t in i)n[e[t.toLowerCase()]]=i[t];l.featureSet.features.push({attributes:n,geometry:fe(oe(t,"geometry"))})}}}else{l.layerDefinition.hasZ=!0===oe(e,"hasz",!1),l.layerDefinition.hasM=!0===oe(e,"hasm",!1),l.layerDefinition.geometryType=oe(e,"geometrytype",""),l.featureSet.geometryType=l.layerDefinition.geometryType,l.layerDefinition.objectIdField=oe(e,"objectidfieldname",""),l.layerDefinition.typeIdField=oe(e,"typeidfieldname","");const i=oe(e,"spatialreference");i&&(l.layerDefinition.spatialReference=le(i));const o=[],s=oe(e,"fields",null);if(!ne(s))throw new a(t,r.InvalidParameter,n);for(const e of s){const t={name:oe(e,"name",""),alias:oe(e,"alias",""),type:oe(e,"type",""),nullable:oe(e,"nullable",!0),editable:oe(e,"editable",!0),length:oe(e,"length",null),domain:se(oe(e,"domain"))};o.push(t)}l.layerDefinition.fields=o;const f={};for(const e of o)f[e.name.toLowerCase()]=e.name;let d=oe(e,"features",null);if(ne(d))for(const e of d){const t={},n=oe(e,"attributes",{});for(const e in n)t[f[e.toLowerCase()]]=n[e];l.featureSet.features.push({attributes:t,geometry:fe(oe(e,"geometry",null))})}else d=null,l.featureSet.features=d}}}if(!1===ue(l))throw new a(t,r.InvalidParameter,n);return l.layerDefinition.geometryType||(l.layerDefinition.geometryType="esriGeometryNull"),z.create(l,t.spatialReference)}))},e.signatures.push({name:"featureset",min:1,max:1}),e.functions.filter=function(t,n){return e.standardFunctionAsync(t,n,(async(i,o,s)=>{if(p(s,2,2,t,n),ne(s[0])||N(s[0])){const e=[];let i,o=s[0];if(o instanceof m&&(o=o.toArray()),!A(s[1]))throw new a(t,r.InvalidParameter,n);i=s[1].createFunction(t);for(const t of o){const n=i(t);K(n)?!0===await n&&e.push(t):!0===n&&e.push(t)}return e}if(h(s[0])){const n=await s[0].load(),i=q.create(s[1],{fieldsIndex:n.getFieldsIndex(),timeZone:n.dateFieldsTimeZoneDefaultUTC}),a=i.getVariables();if(a.length>0){const n={};for(const i of a)n[i]=e.evaluateIdentifier(t,{name:i});i.parameters=n}return new U({parentfeatureset:s[0],whereclause:i})}throw new a(t,r.InvalidParameter,n)}))},e.signatures.push({name:"filter",min:2,max:2}),e.functions.orderby=function(t,n){return e.standardFunctionAsync(t,n,(async(e,i,o)=>{if(p(o,2,2,t,n),h(o[0])){const e=new W(o[1]);return new M({parentfeatureset:o[0],orderbyclause:e})}throw new a(t,r.InvalidParameter,n)}))},e.signatures.push({name:"orderby",min:2,max:2}),e.functions.top=function(t,n){return e.standardFunctionAsync(t,n,(async(e,i,o)=>{if(p(o,2,2,t,n),h(o[0]))return new R({parentfeatureset:o[0],topnum:o[1]});if(ne(o[0]))return v(o[1])>=o[0].length?o[0].slice():o[0].slice(0,v(o[1]));if(N(o[0]))return v(o[1])>=o[0].length()?o[0].slice():o[0].slice(0,v(o[1]));throw new a(t,r.InvalidParameter,n)}))},e.signatures.push({name:"top",min:2,max:2}),e.functions.first=function(t,n){return e.standardFunctionAsync(t,n,(async(e,i,a)=>{if(p(a,1,1,t,n),h(a[0])){const n=await a[0].first(e.abortSignal);if(null!==n){const e=o.createFromGraphicLikeObject(n.geometry,n.attributes,a[0],t.timeZone);return e._underlyingGraphic=n,e}return n}return ne(a[0])?0===a[0].length?null:a[0][0]:N(a[0])?0===a[0].length()?null:a[0].get(0):null}))},e.signatures.push({name:"first",min:1,max:1}),e.functions.attachments=function(t,n){return e.standardFunctionAsync(t,n,(async(e,o,s)=>{p(s,1,2,t,n);const l={minsize:-1,maxsize:-1,types:null,returnMetadata:!1};if(s.length>1)if(s[1]instanceof i){if(s[1].hasField("minsize")&&(l.minsize=v(s[1].field("minsize"))),s[1].hasField("metadata")&&(l.returnMetadata=x(s[1].field("metadata"))),s[1].hasField("maxsize")&&(l.maxsize=v(s[1].field("maxsize"))),s[1].hasField("types")){const e=S(s[1].field("types"),!1);e.length>0&&(l.types=e)}}else if(null!==s[1])throw new a(t,r.InvalidParameter,n);if(E(s[0])){const e=s[0]._layer;let n;if(h(e))n=e;else{if(null==e||!H(e))return[];n=f(e,t.spatialReference,["*"],!0,t.lrucache,t.interceptor)}return await n.load(),n.queryAttachments(s[0].field(n.objectIdField),l.minsize,l.maxsize,l.types,l.returnMetadata)}if(null===s[0])return[];throw new a(t,r.InvalidParameter,n)}))},e.signatures.push({name:"attachments",min:1,max:2}),e.functions.featuresetbyrelationshipname=function(t,n){return e.standardFunctionAsync(t,n,(async(e,i,o)=>{p(o,2,4,t,n);const s=o[0],l=I(o[1]);let c=D(o[2],null);const m=x(D(o[3],!0));if(null===c&&(c=["*"]),!1===ne(c))throw new a(t,r.InvalidParameter,n);if(null===o[0])return null;if(!E(o[0]))throw new a(t,r.InvalidParameter,n);const y=s._layer;let w;if(h(y))w=y;else{if(null==y||!H(y))return null;w=f(y,t.spatialReference,["*"],!0,t.lrucache,t.interceptor)}w=await w.load();const g=w.relationshipMetaData().filter((e=>e.name===l));if(0===g.length)return null;if(void 0!==g[0].relationshipTableId&&null!==g[0].relationshipTableId&&g[0].relationshipTableId>-1)return d(w,g[0],s.field(w.objectIdField),w.spatialReference,c,m,t.lrucache,t.interceptor);let F=w.serviceUrl();if(!F)return null;F="/"===F.charAt(F.length-1)?F+g[0].relatedTableId.toString():F+"/"+g[0].relatedTableId.toString();const b=await u(F,w.spatialReference,c,m,t.lrucache,t.interceptor);await b.load();let T=b.relationshipMetaData();if(T=T.filter((e=>e.id===g[0].id)),!1===s.hasField(g[0].keyField)||null===s.field(g[0].keyField)){const e=await w.getFeatureByObjectId(s.field(w.objectIdField),[g[0].keyField]);if(e){const t=q.create(T[0].keyField+"= @id",{fieldsIndex:b.getFieldsIndex(),timeZone:b.dateFieldsTimeZoneDefaultUTC});return t.parameters={id:e.attributes[g[0].keyField]},b.filter(t)}return new O({parentfeatureset:b})}const N=q.create(T[0].keyField+"= @id",{fieldsIndex:b.getFieldsIndex(),timeZone:b.dateFieldsTimeZoneDefaultUTC});return N.parameters={id:s.field(g[0].keyField)},b.filter(N)}))},e.signatures.push({name:"featuresetbyrelationshipname",min:2,max:4}),e.functions.featuresetbyassociation=function(t,n){return e.standardFunctionAsync(t,n,(async(e,i,o)=>{p(o,2,3,t,n);const s=o[0],l=I(D(o[1],"")).toLowerCase(),d=te(o[2])?I(o[2]):null;if(null===o[0])return null;if(!E(o[0]))throw new a(t,r.InvalidParameter,n);let u=s._layer;if(u instanceof B&&(u=f(u,t.spatialReference,["*"],!0,t.lrucache,t.interceptor)),null===u)return null;if(!1===h(u))return null;await u.load();const m=u.serviceUrl(),y=await c(m,t.spatialReference,!0);if(y.unVersion>=8)return await me(u,s,l,d,y,t,n);const w=y.associations;let g=null,F=null,b=!1;if(null!==d&&""!==d&&void 0!==d){for(const e of y.terminals)e.terminalName===d&&(F=e.terminalId);null===F&&(b=!0)}const T=w.getFieldsIndex(),x=T.get("TOGLOBALID").name,N=T.get("FROMGLOBALID").name,A=T.get("TOTERMINALID").name,v=T.get("FROMTERMINALID").name,S=T.get("FROMNETWORKSOURCEID").name,j=T.get("TONETWORKSOURCEID").name,U=T.get("ASSOCIATIONTYPE").name,M=T.get("ISCONTENTVISIBLE").name,R=T.get("OBJECTID").name;for(const t of u.fields)if("global-id"===t.type){g=s.field(t.name);break}let O=null,z=new C(new Q({name:"percentalong",alias:"percentalong",type:"double"}),q.create("0",{fieldsIndex:w.getFieldsIndex(),timeZone:w.dateFieldsTimeZoneDefaultUTC})),W=new C(new Q({name:"side",alias:"side",type:"string"}),q.create("''",{fieldsIndex:w.getFieldsIndex(),timeZone:w.dateFieldsTimeZoneDefaultUTC}));const H="globalid",V="globalId",_={};for(const t in y.lkp)_[t]=y.lkp[t].sourceId;const K=new Z(new Q({name:"classname",alias:"classname",type:"string"}),null,_);let J="";switch(l){case"midspan":{J=`((${x}='${g}') OR ( ${N}='${g}')) AND (${U} IN (5))`,K.codefield=q.create(`CASE WHEN (${x}='${g}') THEN ${S} ELSE ${j} END`,{fieldsIndex:w.getFieldsIndex(),timeZone:w.dateFieldsTimeZoneDefaultUTC});const e=G($.findField(w.fields,N));e.name=H,e.alias=H,O=new C(e,q.create(`CASE WHEN (${N}='${g}') THEN ${x} ELSE ${N} END`,{fieldsIndex:w.getFieldsIndex(),timeZone:w.dateFieldsTimeZoneDefaultUTC})),z=y.unVersion>=4?new P($.findField(w.fields,T.get("PERCENTALONG").name)):new C(new Q({name:"percentalong",alias:"percentalong",type:"double"}),q.create("0",{fieldsIndex:w.getFieldsIndex(),timeZone:w.dateFieldsTimeZoneDefaultUTC}));break}case"junctionedge":{J=`((${x}='${g}') OR ( ${N}='${g}')) AND (${U} IN (4,6))`,K.codefield=q.create(`CASE WHEN (${x}='${g}') THEN ${S} ELSE ${j} END`,{fieldsIndex:w.getFieldsIndex(),timeZone:w.dateFieldsTimeZoneDefaultUTC});const e=G($.findField(w.fields,N));e.name=H,e.alias=H,O=new C(e,q.create(`CASE WHEN (${N}='${g}') THEN ${x} ELSE ${N} END`,{fieldsIndex:w.getFieldsIndex(),timeZone:w.dateFieldsTimeZoneDefaultUTC})),W=new C(new Q({name:"side",alias:"side",type:"string"}),q.create(`CASE WHEN (${U}=4) THEN 'from' ELSE 'to' END`,{fieldsIndex:w.getFieldsIndex(),timeZone:w.dateFieldsTimeZoneDefaultUTC}));break}case"connected":{let e=`${x}='@T'`,t=`${N}='@T'`;null!==F&&(e+=` AND ${A}=@A`,t+=` AND ${v}=@A`),J="(("+e+") OR ("+t+"))",J=L(J,"@T",g??""),e=L(e,"@T",g??""),null!==F&&(e=L(e,"@A",F.toString()),J=L(J,"@A",F.toString())),K.codefield=q.create("CASE WHEN "+e+` THEN ${S} ELSE ${j} END`,{fieldsIndex:w.getFieldsIndex(),timeZone:w.dateFieldsTimeZoneDefaultUTC});const n=G($.findField(w.fields,N));n.name=H,n.alias=H,O=new C(n,q.create("CASE WHEN "+e+` THEN ${N} ELSE ${x} END`,{fieldsIndex:w.getFieldsIndex(),timeZone:w.dateFieldsTimeZoneDefaultUTC}));break}case"container":J=`${x}='${g}' AND ${U} = 2`,null!==F&&(J+=` AND ${A} = `+F.toString()),K.codefield=S,J="( "+J+" )",O=new k($.findField(w.fields,N),H,H);break;case"content":J=`(${N}='${g}' AND ${U} = 2)`,null!==F&&(J+=` AND ${v} = `+F.toString()),K.codefield=j,J="( "+J+" )",O=new k($.findField(w.fields,x),H,H);break;case"structure":J=`(${x}='${g}' AND ${U} = 3)`,null!==F&&(J+=` AND ${A} = `+F.toString()),K.codefield=S,J="( "+J+" )",O=new k($.findField(w.fields,N),H,V);break;case"attached":J=`(${N}='${g}' AND ${U} = 3)`,null!==F&&(J+=` AND ${v} = `+F.toString()),K.codefield=j,J="( "+J+" )",O=new k($.findField(w.fields,x),H,V);break;default:throw new a(t,r.InvalidParameter,n)}b&&(J="1 <> 1");return new $({parentfeatureset:w,adaptedFields:[new P($.findField(w.fields,R)),new P($.findField(w.fields,M)),O,W,K,z],extraFilter:J?q.create(J,{fieldsIndex:w.getFieldsIndex(),timeZone:w.dateFieldsTimeZoneDefaultUTC}):null})}))},e.signatures.push({name:"featuresetbyassociation",min:2,max:6}),e.functions.groupby=function(t,n){return e.standardFunctionAsync(t,n,(async(o,s,l)=>{if(p(l,3,3,t,n),!h(l[0]))throw new a(t,r.InvalidParameter,n);const f=await l[0].load(),d=[],u=[];let c=!1,m=[];if(te(l[1]))m.push(l[1]);else if(l[1]instanceof i)m.push(l[1]);else if(ne(l[1]))m=l[1];else{if(!N(l[1]))throw new a(t,r.InvalidParameter,n);m=l[1].toArray()}for(const e of m)if(te(e)){const t=q.create(I(e),{fieldsIndex:f.getFieldsIndex(),timeZone:f.dateFieldsTimeZoneDefaultUTC}),n=!0===V(t)?I(e):"%%%%FIELDNAME";d.push({name:n,expression:t}),"%%%%FIELDNAME"===n&&(c=!0)}else{if(!(e instanceof i))throw new a(t,r.InvalidParameter,n);{const i=e.hasField("name")?e.field("name"):"%%%%FIELDNAME",o=e.hasField("expression")?e.field("expression"):"";if("%%%%FIELDNAME"===i&&(c=!0),!i)throw new a(t,r.InvalidParameter,n);d.push({name:i,expression:q.create(o||i,{fieldsIndex:f.getFieldsIndex(),timeZone:f.dateFieldsTimeZoneDefaultUTC})})}}if(m=[],te(l[2]))m.push(l[2]);else if(ne(l[2]))m=l[2];else if(N(l[2]))m=l[2].toArray();else{if(!(l[2]instanceof i))throw new a(t,r.InvalidParameter,n);m.push(l[2])}for(const e of m){if(!(e instanceof i))throw new a(t,r.InvalidParameter,n);{const i=e.hasField("name")?e.field("name"):"",o=e.hasField("statistic")?e.field("statistic"):"",s=e.hasField("expression")?e.field("expression"):"";if(!i||!o||!s)throw new a(t,r.InvalidParameter,n);u.push({name:i,statistic:o.toLowerCase(),expression:q.create(s,{fieldsIndex:f.getFieldsIndex(),timeZone:f.dateFieldsTimeZoneDefaultUTC})})}}if(c){const e={};for(const n of f.fields)e[n.name.toLowerCase()]=1;for(const n of d)"%%%%FIELDNAME"!==n.name&&(e[n.name.toLowerCase()]=1);for(const n of u)"%%%%FIELDNAME"!==n.name&&(e[n.name.toLowerCase()]=1);let t=0;for(const n of d)if("%%%%FIELDNAME"===n.name){for(;1===e["field_"+t.toString()];)t++;e["field_"+t.toString()]=1,n.name="FIELD_"+t.toString()}}for(const n of d)re(n.expression,e,t);for(const n of u)re(n.expression,e,t);return l[0].groupby(d,u)}))},e.signatures.push({name:"groupby",min:3,max:3}),e.functions.distinct=function(t,n){return e.standardFunctionAsync(t,n,(async(o,s,l)=>{if(h(l[0])){p(l,2,2,t,n);const o=await l[0].load(),s=[];let f=[];if(te(l[1]))f.push(l[1]);else if(l[1]instanceof i)f.push(l[1]);else if(ne(l[1]))f=l[1];else{if(!N(l[1]))throw new a(t,r.InvalidParameter,n);f=l[1].toArray()}let d=!1;for(const e of f)if(te(e)){const t=q.create(I(e),{fieldsIndex:o.getFieldsIndex(),timeZone:o.dateFieldsTimeZoneDefaultUTC}),n=!0===V(t)?I(e):"%%%%FIELDNAME";s.push({name:n,expression:t}),"%%%%FIELDNAME"===n&&(d=!0)}else{if(!(e instanceof i))throw new a(t,r.InvalidParameter,n);{const i=e.hasField("name")?e.field("name"):"%%%%FIELDNAME",l=e.hasField("expression")?e.field("expression"):"";if("%%%%FIELDNAME"===i&&(d=!0),!i)throw new a(t,r.InvalidParameter,n);s.push({name:i,expression:q.create(l||i,{fieldsIndex:o.getFieldsIndex(),timeZone:o.dateFieldsTimeZoneDefaultUTC})})}}if(d){const e={};for(const n of o.fields)e[n.name.toLowerCase()]=1;for(const n of s)"%%%%FIELDNAME"!==n.name&&(e[n.name.toLowerCase()]=1);let t=0;for(const n of s)if("%%%%FIELDNAME"===n.name){for(;1===e["field_"+t.toString()];)t++;e["field_"+t.toString()]=1,n.name="FIELD_"+t.toString()}}for(const n of s)re(n.expression,e,t);return l[0].groupby(s,[])}return ae(l)}))},e.functions.getfeaturesetinfo=function(t,n){return e.standardFunctionAsync(t,n,(async(e,a,r)=>{if(p(r,1,1,t,n),!h(r[0]))return null;const o=await r[0].getFeatureSetInfo();return o?i.convertObjectToArcadeDictionary({layerId:o.layerId,layerName:o.layerName,itemId:o.itemId,serviceLayerUrl:o.serviceLayerUrl,webMapLayerId:o.webMapLayerId??null,webMapLayerTitle:o.webMapLayerTitle??null,className:null,objectClassId:null},F(t),!1,!1):null}))},e.signatures.push({name:"getfeaturesetinfo",min:1,max:1}),e.functions.filterbysubtypecode=function(t,n){return e.standardFunctionAsync(t,n,(async(e,i,o)=>{if(p(o,2,2,t,n),h(o[0])){const e=await o[0].load(),i=o[1];if(!ie(i))throw new a(t,r.InvalidParameter,n);if(e.subtypeField){const t=q.create(`${e.subtypeField}= ${o[1]}`,{fieldsIndex:e.getFieldsIndex(),timeZone:e.dateFieldsTimeZoneDefaultUTC});return new U({parentfeatureset:o[0],whereclause:t})}if(null===e.typeIdField||""===e.typeIdField)throw new a(t,r.FeatureSetDoesNotHaveSubtypes,n);const s=q.create(`${e.typeIdField}= ${o[1]}`,{fieldsIndex:e.getFieldsIndex(),timeZone:e.dateFieldsTimeZoneDefaultUTC});return new U({parentfeatureset:o[0],whereclause:s})}throw new a(t,r.InvalidParameter,n)}))},e.signatures.push({name:"filterbysubtypecode",min:2,max:2}))}export{pe as registerFunctions};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.33/esri/copyright.txt for details.
4
4
  */
5
- import n from"../Dictionary.js";import{ArcadeExecutionError as a,ExecutionErrorCodes as e}from"../executionError.js";import{D as t,n as r,P as o,f as i,p as c,a1 as s,U as d,L as u,S as m,a2 as f,Q as l,a3 as y,K as v,s as w,T as p}from"../../chunks/languageUtils.js";import{layerFieldEsriConstants as h}from"../featureset/support/shared.js";function T(a,e){return a&&a.domain?"coded-value"===a.domain.type||"codedValue"===a.domain.type?n.convertObjectToArcadeDictionary({type:"codedValue",name:a.domain.name,dataType:h[a.field.type],codedValues:a.domain.codedValues.map((n=>({name:n.name,code:n.code})))},u(e)):n.convertObjectToArcadeDictionary({type:"range",name:a.domain.name,dataType:h[a.field.type],min:a.domain.minValue,max:a.domain.maxValue},u(e)):null}function b(h){"async"===h.mode&&(h.functions.domain=function(n,d){return h.standardFunctionAsync(n,d,(async(u,m,f)=>{if(t(f,2,3,n,d),r(f[0])){return T(o(f[0],i(f[1]),void 0===f[2]?void 0:f[2]),n)}if(c(f[0])){await f[0]._ensureLoaded();return T(s(i(f[1]),f[0],null,void 0===f[2]?void 0:f[2]),n)}throw new a(n,e.InvalidParameter,d)}))},h.functions.subtypes=function(o,i){return h.standardFunctionAsync(o,i,(async(s,m,f)=>{if(t(f,1,1,o,i),r(f[0])){const a=d(f[0]);return a?n.convertObjectToArcadeDictionary(a,u(o)):null}if(c(f[0])){await f[0]._ensureLoaded();const a=f[0].subtypeMetaData();return a?n.convertObjectToArcadeDictionary(a,u(o)):null}throw new a(o,e.InvalidParameter,i)}))},h.functions.domainname=function(n,o){return h.standardFunctionAsync(n,o,(async(d,u,l)=>{if(t(l,2,4,n,o),r(l[0]))return m(l[0],i(l[1]),l[2],void 0===l[3]?void 0:l[3]);if(c(l[0])){await l[0]._ensureLoaded();const n=s(i(l[1]),l[0],null,void 0===l[3]?void 0:l[3]);return f(n,l[2])}throw new a(n,e.InvalidParameter,o)}))},h.signatures.push({name:"domainname",min:2,max:4}),h.functions.domaincode=function(n,o){return h.standardFunctionAsync(n,o,(async(d,u,m)=>{if(t(m,2,4,n,o),r(m[0]))return l(m[0],i(m[1]),m[2],void 0===m[3]?void 0:m[3]);if(c(m[0])){await m[0]._ensureLoaded();const n=s(i(m[1]),m[0],null,void 0===m[3]?void 0:m[3]);return y(n,m[2])}throw new a(n,e.InvalidParameter,o)}))},h.signatures.push({name:"domaincode",min:2,max:4}),h.functions.text=function(n,r){return h.standardFunctionAsync(n,r,(async(o,i,s)=>{if(t(s,1,2,n,r),c(s[0])){const t=v(s[1],"");if(""===t)return s[0].castToText();if("schema"===t.toLowerCase())return s[0].convertToText("schema",o.abortSignal);if("featureset"===t.toLowerCase())return s[0].convertToText("featureset",o.abortSignal);throw new a(n,e.InvalidParameter,r)}return w(s[0],s[1])}))},h.functions.gdbversion=function(n,o){return h.standardFunctionAsync(n,o,(async(i,s,d)=>{if(t(d,1,1,n,o),r(d[0]))return d[0].gdbVersion();if(c(d[0])){return(await d[0].load()).gdbVersion}throw new a(n,e.InvalidParameter,o)}))},h.functions.schema=function(o,i){return h.standardFunctionAsync(o,i,(async(s,d,m)=>{if(t(m,1,1,o,i),c(m[0]))return await m[0].load(),n.convertObjectToArcadeDictionary(m[0].schema(),u(o));if(r(m[0])){const a=p(m[0]);return a?n.convertObjectToArcadeDictionary(a,u(o)):null}throw new a(o,e.InvalidParameter,i)}))})}export{b as registerFunctions};
5
+ import n from"../Dictionary.js";import{ArcadeExecutionError as a,ExecutionErrorCodes as e}from"../executionError.js";import{D as t,n as r,Q as o,f as i,p as c,a1 as s,V as d,L as u,T as m,a2 as f,S as l,a3 as y,K as v,s as w,U as p}from"../../chunks/languageUtils.js";import{layerFieldEsriConstants as h}from"../featureset/support/shared.js";function T(a,e){return a&&a.domain?"coded-value"===a.domain.type||"codedValue"===a.domain.type?n.convertObjectToArcadeDictionary({type:"codedValue",name:a.domain.name,dataType:h[a.field.type],codedValues:a.domain.codedValues.map((n=>({name:n.name,code:n.code})))},u(e)):n.convertObjectToArcadeDictionary({type:"range",name:a.domain.name,dataType:h[a.field.type],min:a.domain.minValue,max:a.domain.maxValue},u(e)):null}function b(h){"async"===h.mode&&(h.functions.domain=function(n,d){return h.standardFunctionAsync(n,d,(async(u,m,f)=>{if(t(f,2,3,n,d),r(f[0])){return T(o(f[0],i(f[1]),void 0===f[2]?void 0:f[2]),n)}if(c(f[0])){await f[0]._ensureLoaded();return T(s(i(f[1]),f[0],null,void 0===f[2]?void 0:f[2]),n)}throw new a(n,e.InvalidParameter,d)}))},h.functions.subtypes=function(o,i){return h.standardFunctionAsync(o,i,(async(s,m,f)=>{if(t(f,1,1,o,i),r(f[0])){const a=d(f[0]);return a?n.convertObjectToArcadeDictionary(a,u(o)):null}if(c(f[0])){await f[0]._ensureLoaded();const a=f[0].subtypeMetaData();return a?n.convertObjectToArcadeDictionary(a,u(o)):null}throw new a(o,e.InvalidParameter,i)}))},h.functions.domainname=function(n,o){return h.standardFunctionAsync(n,o,(async(d,u,l)=>{if(t(l,2,4,n,o),r(l[0]))return m(l[0],i(l[1]),l[2],void 0===l[3]?void 0:l[3]);if(c(l[0])){await l[0]._ensureLoaded();const n=s(i(l[1]),l[0],null,void 0===l[3]?void 0:l[3]);return f(n,l[2])}throw new a(n,e.InvalidParameter,o)}))},h.signatures.push({name:"domainname",min:2,max:4}),h.functions.domaincode=function(n,o){return h.standardFunctionAsync(n,o,(async(d,u,m)=>{if(t(m,2,4,n,o),r(m[0]))return l(m[0],i(m[1]),m[2],void 0===m[3]?void 0:m[3]);if(c(m[0])){await m[0]._ensureLoaded();const n=s(i(m[1]),m[0],null,void 0===m[3]?void 0:m[3]);return y(n,m[2])}throw new a(n,e.InvalidParameter,o)}))},h.signatures.push({name:"domaincode",min:2,max:4}),h.functions.text=function(n,r){return h.standardFunctionAsync(n,r,(async(o,i,s)=>{if(t(s,1,2,n,r),c(s[0])){const t=v(s[1],"");if(""===t)return s[0].castToText();if("schema"===t.toLowerCase())return s[0].convertToText("schema",o.abortSignal);if("featureset"===t.toLowerCase())return s[0].convertToText("featureset",o.abortSignal);throw new a(n,e.InvalidParameter,r)}return w(s[0],s[1])}))},h.functions.gdbversion=function(n,o){return h.standardFunctionAsync(n,o,(async(i,s,d)=>{if(t(d,1,1,n,o),r(d[0]))return d[0].gdbVersion();if(c(d[0])){return(await d[0].load()).gdbVersion}throw new a(n,e.InvalidParameter,o)}))},h.functions.schema=function(o,i){return h.standardFunctionAsync(o,i,(async(s,d,m)=>{if(t(m,1,1,o,i),c(m[0]))return await m[0].load(),n.convertObjectToArcadeDictionary(m[0].schema(),u(o));if(r(m[0])){const a=p(m[0]);return a?n.convertObjectToArcadeDictionary(a,u(o)):null}throw new a(o,e.InvalidParameter,i)}))})}export{b as registerFunctions};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.33/esri/copyright.txt for details.
4
4
  */
5
- import{Z as e,w as t,B as r}from"../../chunks/languageUtils.js";import{isNumber as n,isString as s}from"../../support/guards.js";function a(e){let t=0;for(let r=0;r<e.length;r++)t+=e[r];return t/e.length}function u(e){const t=a(e);let r=0;for(let n=0;n<e.length;n++)r+=(t-e[n])**2;return r/e.length}function c(e){let t=0;for(let r=0;r<e.length;r++)t+=e[r];return t}function o(e,a){const u=[],c={},o=[];for(let i=0;i<e.length;i++){if(void 0!==e[i]&&null!==e[i]&&e[i]!==t){const t=e[i];if(n(t)||s(t))void 0===c[t]&&(u.push(t),c[t]=1);else{let e=!1;for(let n=0;n<o.length;n++)!0===r(o[n],t)&&(e=!0);!1===e&&(o.push(t),u.push(t))}}if(u.length>=a&&-1!==a)return u}return u}function i(e){switch(e.toLowerCase()){case"distinct":return"distinct";case"avg":case"mean":return"avg";case"min":return"min";case"sum":return"sum";case"max":return"max";case"stdev":case"stddev":return"stddev";case"var":case"variance":return"var";case"count":return"count"}return""}function l(t,r,n=1e3){switch(t.toLowerCase()){case"distinct":return o(r,n);case"avg":case"mean":return a(e(r));case"min":return Math.min.apply(Math,e(r));case"sum":return c(e(r));case"max":return Math.max.apply(Math,e(r));case"stdev":case"stddev":return Math.sqrt(u(e(r)));case"var":case"variance":return u(e(r));case"count":return r.length}return 0}export{l as calculateStat,i as decodeStatType};
5
+ import{_ as e,w as t,B as r}from"../../chunks/languageUtils.js";import{isNumber as n,isString as s}from"../../support/guards.js";function a(e){let t=0;for(let r=0;r<e.length;r++)t+=e[r];return t/e.length}function u(e){const t=a(e);let r=0;for(let n=0;n<e.length;n++)r+=(t-e[n])**2;return r/e.length}function c(e){let t=0;for(let r=0;r<e.length;r++)t+=e[r];return t}function o(e,a){const u=[],c={},o=[];for(let i=0;i<e.length;i++){if(void 0!==e[i]&&null!==e[i]&&e[i]!==t){const t=e[i];if(n(t)||s(t))void 0===c[t]&&(u.push(t),c[t]=1);else{let e=!1;for(let n=0;n<o.length;n++)!0===r(o[n],t)&&(e=!0);!1===e&&(o.push(t),u.push(t))}}if(u.length>=a&&-1!==a)return u}return u}function i(e){switch(e.toLowerCase()){case"distinct":return"distinct";case"avg":case"mean":return"avg";case"min":return"min";case"sum":return"sum";case"max":return"max";case"stdev":case"stddev":return"stddev";case"var":case"variance":return"var";case"count":return"count"}return""}function l(t,r,n=1e3){switch(t.toLowerCase()){case"distinct":return o(r,n);case"avg":case"mean":return a(e(r));case"min":return Math.min.apply(Math,e(r));case"sum":return c(e(r));case"max":return Math.max.apply(Math,e(r));case"stdev":case"stddev":return Math.sqrt(u(e(r)));case"var":case"variance":return u(e(r));case"count":return r.length}return 0}export{l as calculateStat,i as decodeStatType};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.33/esri/copyright.txt for details.
4
4
  */
5
- import{geometryMember as e,getNestedOptionalValue as t}from"../containerUtils.js";import n from"../Dictionary.js";import{ArcadeExecutionError as r,ExecutionErrorCodes as a}from"../executionError.js";import i from"../Feature.js";import l from"../ImmutablePointArray.js";import{D as o,m as s,u as f,V as c,F as u,n as m,w as p,q as h,l as w,f as g,g as R,k as y,j as d,i as P,d as v,L as I,W as b,z as O,B as j,H as S}from"../../chunks/languageUtils.js";import{angle2D as N,angleBetween2D as x,bearing2D as J,bearingBetween2D as F,pathsSelfIntersecting as k}from"./centroid.js";import{constructGeometryFromDictionary as Z}from"../geometry/constructors.js";import z from"../../geometry/Extent.js";import W from"../../geometry/Geometry.js";import q from"../../geometry/Multipoint.js";import A from"../../geometry/Point.js";import D from"../../geometry/Polygon.js";import M from"../../geometry/Polyline.js";import{isClockwise as G}from"../../geometry/support/coordsUtils.js";import{fromJSON as L}from"../../geometry/support/jsonUtils.js";import{isArray as U,isString as _,isNumber as E,isBoolean as T}from"../../support/guards.js";function B(B,C){B.ringisclockwise=function(e,t){return C(e,t,((n,i,f)=>{o(f,1,1,e,t);let c=[];if(null===f[0])return!1;if(U(f[0]))for(const l of f[0]){if(!(l instanceof A))throw new r(e,a.InvalidParameter,t);c.push(l.hasZ?l.hasM?[l.x,l.y,l.z,l.m]:[l.x,l.y,l.z]:[l.x,l.y])}else if(f[0]instanceof l)c=f[0]._elements;else{if(!s(f[0]))throw new r(e,a.InvalidParameter,t);for(const n of f[0].toArray()){if(!(n instanceof A))throw new r(e,a.InvalidParameter,t);c.push(n.hasZ?n.hasM?[n.x,n.y,n.z,n.m]:[n.x,n.y,n.z]:[n.x,n.y])}}return!(c.length<3)&&G(c)}))},B.polygon=function(e,t){return C(e,t,((i,l,s)=>{let u;if(o(s,1,1,e,t),s[0]instanceof n){const t=f(Z(s[0],e.spatialReference,"polygon"),e.spatialReference);if(null==t)return null;u=t}else if(s[0]instanceof D)u=L(s[0].toJSON());else{const t=JSON.parse(s[0]);t&&!t.spatialReference&&(t.spatialReference=e.spatialReference),u=f(new D(t),e.spatialReference)}if(null!==u&&!1===u.spatialReference.equals(e.spatialReference))throw new r(e,a.WrongSpatialReference,t);return c(u)}))},B.polyline=function(e,t){return C(e,t,((i,l,s)=>{let u;if(o(s,1,1,e,t),s[0]instanceof n){const t=f(Z(s[0],e.spatialReference,"polyline"),e.spatialReference);if(null==t)return null;u=t}else if(s[0]instanceof M)u=L(s[0].toJSON());else{const t=JSON.parse(s[0]);t&&!t.spatialReference&&(t.spatialReference=e.spatialReference),u=f(new M(t),e.spatialReference)}if(null!==u&&!1===u.spatialReference.equals(e.spatialReference))throw new r(e,a.WrongSpatialReference,t);return c(u)}))},B.point=function(e,t){return C(e,t,((i,l,s)=>{let u;if(o(s,1,1,e,t),s[0]instanceof n){const t=f(Z(s[0],e.spatialReference,"point"),e.spatialReference);if(null==t)return null;u=t}else if(s[0]instanceof A)u=L(s[0].toJSON());else{const t=JSON.parse(s[0]);t&&!t.spatialReference&&(t.spatialReference=e.spatialReference),u=f(new A(t),e.spatialReference)}if(null!==u&&!1===u.spatialReference.equals(e.spatialReference))throw new r(e,a.WrongSpatialReference,t);return c(u)}))},B.multipoint=function(e,t){return C(e,t,((i,l,s)=>{let u;if(o(s,1,1,e,t),s[0]instanceof n){const t=f(Z(s[0],e.spatialReference,"multipoint"),e.spatialReference);if(null==t)return null;u=t}else if(s[0]instanceof q)u=L(s[0].toJSON());else{const t=JSON.parse(s[0]);t&&!t.spatialReference&&(t.spatialReference=e.spatialReference),u=f(new q(t),e.spatialReference)}if(null!==u&&!1===u.spatialReference.equals(e.spatialReference))throw new r(e,a.WrongSpatialReference,t);return c(u)}))},B.extent=function(e,t){return C(e,t,((i,l,s)=>{s=u(s),o(s,1,1,e,t);let m=null;if(s[0]instanceof n)m=f(Z(s[0],e.spatialReference),e.spatialReference);else if(s[0]instanceof A){const e={xmin:s[0].x,ymin:s[0].y,xmax:s[0].x,ymax:s[0].y,spatialReference:s[0].spatialReference.toJSON()},t=s[0];t.hasZ&&(e.zmin=t.z,e.zmax=t.z),t.hasM&&(e.mmin=t.m,e.mmax=t.m),m=L(e)}else if(s[0]instanceof D)m=L(s[0].extent?.toJSON());else if(s[0]instanceof M)m=L(s[0].extent?.toJSON());else if(s[0]instanceof q)m=L(s[0].extent?.toJSON());else if(s[0]instanceof z)m=L(s[0].toJSON());else{const t=JSON.parse(s[0]);t&&!t.spatialReference&&(t.spatialReference=e.spatialReference),m=f(new z(t),e.spatialReference)}if(null!==m&&!1===m.spatialReference.equals(e.spatialReference))throw new r(e,a.WrongSpatialReference,t);return c(m)}))},B.geometry=function(e,t){return C(e,t,((i,l,s)=>{o(s,1,1,e,t);let u=null;if(null===s[0])return null;if(m(s[0]))u=f(s[0].geometry(),e.spatialReference);else if(s[0]instanceof n)u=f(Z(s[0],e.spatialReference),e.spatialReference);else{const t=JSON.parse(s[0]);t&&!t.spatialReference&&(t.spatialReference=e.spatialReference),u=f(L(t),e.spatialReference)}if(null!==u&&!1===u.spatialReference.equals(e.spatialReference))throw new r(e,a.WrongSpatialReference,t);return c(u)}))},B.setgeometry=function(e,t){return C(e,t,((n,i,l)=>{if(o(l,2,2,e,t),!m(l[0]))throw new r(e,a.InvalidParameter,t);if(!0===l[0].immutable)throw new r(e,a.Immutable,t);if(!(l[1]instanceof W||null===l[1]))throw new r(e,a.InvalidParameter,t);return l[0]._geometry=l[1],p}))},B.feature=function(e,t){return C(e,t,((l,o,s)=>{if(0===s.length)throw new r(e,a.WrongNumberOfParameters,t);let c;if(1===s.length)if(_(s[0]))c=i.fromJson(JSON.parse(s[0]),e.timeZone);else if(m(s[0]))c=i.createFromArcadeFeature(s[0]);else if(s[0]instanceof W)c=i.createFromGraphicLikeObject(s[0],null,null,e.timeZone);else{if(!(s[0]instanceof n))throw new r(e,a.InvalidParameter,t);{const n=s[0].hasField("geometry")?s[0].field("geometry"):null,l=s[0].hasField("attributes")?s[0].field("attributes"):null;let o,f;if(h(n))o=Z(n,e.spatialReference);else{if(null!=n&&!w(n))throw new r(e,a.InvalidParameter,t);o=n}if(h(l))f=i.parseAttributesFromDictionary(l);else{if(null!=l)throw new r(e,a.InvalidParameter,t);f=null}c=i.createFromGraphicLikeObject(o,f,null,e.timeZone)}}else if(2===s.length){let l=null,o=null;if(null!==s[0])if(s[0]instanceof W)l=s[0];else{if(!(s[0]instanceof n))throw new r(e,a.InvalidParameter,t);l=Z(s[0],e.spatialReference)}if(null!==s[1]){if(!(s[1]instanceof n))throw new r(e,a.InvalidParameter,t);o=i.parseAttributesFromDictionary(s[1])}c=i.createFromGraphicLikeObject(l,o,null,e.timeZone)}else{let l=null;const o={};if(null!==s[0])if(s[0]instanceof W)l=s[0];else{if(!(s[0]instanceof n))throw new r(e,a.InvalidParameter,t);l=Z(s[0],e.spatialReference)}for(let n=1;n<s.length;n+=2){const i=g(s[n]),l=s[n+1];if(!(null==l||_(l)||isNaN(l)||R(l)||E(l)||y(l)||d(l)||T(l)))throw new r(e,a.InvalidParameter,t);if(P(l)||!1===v(l))throw new r(e,a.InvalidParameter,t);o[i]=l===p?null:l}c=i.createFromGraphicLikeObject(l,o,null,e.timeZone)}return c._geometry=f(c.geometry(),e.spatialReference),c.immutable=!1,c}))},B.dictionary=function(e,t){return C(e,t,((i,l,o)=>{if(0===o.length||1===o.length&&null===o[0]){const e=new n;return e.immutable=!1,e}if(1===o.length&&_(o[0]))try{const t=JSON.parse(o[0]),r=n.convertObjectToArcadeDictionary(t,I(e),!1);return r.immutable=!1,r}catch(u){throw new r(e,a.InvalidParameter,t)}if(1===o.length&&o[0]instanceof W)try{const t=o[0].toJSON();t.hasZ=!0===o[0].hasZ,t.hasM=!0===o[0].hasM;const r=n.convertObjectToArcadeDictionary(t,I(e),!1);return r.immutable=!1,r}catch(u){throw new r(e,a.InvalidParameter,t)}if(1===o.length&&m(o[0]))try{const e=new n;e.immutable=!1,e.setField("geometry",o[0].geometry());const t=new n;t.immutable=!1,e.setField("attributes",t);for(const n of o[0].keys())t.setField(n,o[0].field(n));return e}catch(u){throw new r(e,a.InvalidParameter,t)}if(1===o.length&&(h(o[0])||b(o[0])))try{const e=new n;e.immutable=!1;for(const t of o[0].keys())e.setField(t,o[0].field(t));return e}catch(u){throw new r(e,a.InvalidParameter,t)}if(2===o.length&&o[0]instanceof n&&T(o[1]))try{if(!(!0===o[1])){const e=new n;e.immutable=!1;for(const t of o[0].keys())e.setField(t,o[0].field(t));return e}return o[0].deepClone()}catch(u){throw new r(e,a.InvalidParameter,t)}if(o.length%2!=0)throw new r(e,a.WrongNumberOfParameters,t);const f={};for(let n=0;n<o.length;n+=2){const i=g(o[n]),l=o[n+1];if(!(null==l||_(l)||isNaN(l)||R(l)||E(l)||T(l)||d(l)||y(l)||U(l)||s(l)))throw new r(e,a.InvalidParameter,t);if(P(l))throw new r(e,a.InvalidParameter,t);f[i]=l===p?null:l}const c=new n(f);return c.immutable=!1,c}))},B.haskey=function(t,i){return C(t,i,((l,s,f)=>{o(f,2,2,t,i);const c=g(f[1]);if(O(f[0])||f[0]instanceof n)return f[0].hasField(c);if(f[0]instanceof W){const t=e(f[0],c,null,null,2);return!t||"notfound"!==t.keystate}throw new r(t,a.InvalidParameter,i)}))},B.hasvalue=function(e,n){return C(e,n,((r,a,i)=>(o(i,2,2,e,n),null!=t(i[0],i[1]))))},B.indexof=function(e,t){return C(e,t,((n,i,l)=>{o(l,2,2,e,t);const f=l[1];if(U(l[0])){for(let e=0;e<l[0].length;e++)if(j(f,l[0][e]))return e;return-1}if(s(l[0])){const e=l[0].length();for(let t=0;t<e;t++)if(j(f,l[0].get(t)))return t;return-1}throw new r(e,a.InvalidParameter,t)}))},B.angle=function(e,t){return C(e,t,((n,i,l)=>{if(l=u(l),o(l,2,3,e,t),!(l[0]instanceof A))throw new r(e,a.InvalidParameter,t);if(!(l[1]instanceof A))throw new r(e,a.InvalidParameter,t);if(l.length>2&&!(l[2]instanceof A))throw new r(e,a.InvalidParameter,t);return 2===l.length?N(l[0],l[1]):x(l[0],l[1],l[2])}))},B.bearing=function(e,t){return C(e,t,((n,i,l)=>{if(l=u(l),o(l,2,3,e,t),!(l[0]instanceof A))throw new r(e,a.InvalidParameter,t);if(!(l[1]instanceof A))throw new r(e,a.InvalidParameter,t);if(l.length>2&&!(l[2]instanceof A))throw new r(e,a.InvalidParameter,t);return 2===l.length?J(l[0],l[1]):F(l[0],l[1],l[2])}))},B.isselfintersecting=function(e,t){return C(e,t,((n,r,a)=>{a=u(a),o(a,1,1,e,t);let i=a[0];if(i instanceof D)return i.isSelfIntersecting;if(i instanceof M)return k(i.paths);if(i instanceof q){const e=i.points;for(let t=0;t<e.length;t++)for(let n=0;n<e.length;n++)if(n!==t){let r=!0;for(let a=0;a<e[t].length;a++)if(e[t][a]!==e[n][a]){r=!1;break}if(!0===r)return!0}}if(U(i)||s(i)){const t=S(i,e.spatialReference);return null!==t&&(i=t.paths),k(i)}return!1}))}}export{B as registerFunctions};
5
+ import{geometryMember as e,getNestedOptionalValue as t}from"../containerUtils.js";import n from"../Dictionary.js";import{ArcadeExecutionError as r,ExecutionErrorCodes as a}from"../executionError.js";import i from"../Feature.js";import l from"../ImmutablePointArray.js";import{D as o,m as s,u as f,W as c,F as u,n as m,w as p,q as h,l as w,f as g,g as R,k as y,j as d,i as P,d as v,L as I,X as b,z as O,B as j,H as S}from"../../chunks/languageUtils.js";import{angle2D as N,angleBetween2D as x,bearing2D as J,bearingBetween2D as F,pathsSelfIntersecting as k}from"./centroid.js";import{constructGeometryFromDictionary as Z}from"../geometry/constructors.js";import z from"../../geometry/Extent.js";import W from"../../geometry/Geometry.js";import q from"../../geometry/Multipoint.js";import A from"../../geometry/Point.js";import D from"../../geometry/Polygon.js";import M from"../../geometry/Polyline.js";import{isClockwise as G}from"../../geometry/support/coordsUtils.js";import{fromJSON as L}from"../../geometry/support/jsonUtils.js";import{isArray as U,isString as _,isNumber as E,isBoolean as T}from"../../support/guards.js";function B(B,C){B.ringisclockwise=function(e,t){return C(e,t,((n,i,f)=>{o(f,1,1,e,t);let c=[];if(null===f[0])return!1;if(U(f[0]))for(const l of f[0]){if(!(l instanceof A))throw new r(e,a.InvalidParameter,t);c.push(l.hasZ?l.hasM?[l.x,l.y,l.z,l.m]:[l.x,l.y,l.z]:[l.x,l.y])}else if(f[0]instanceof l)c=f[0]._elements;else{if(!s(f[0]))throw new r(e,a.InvalidParameter,t);for(const n of f[0].toArray()){if(!(n instanceof A))throw new r(e,a.InvalidParameter,t);c.push(n.hasZ?n.hasM?[n.x,n.y,n.z,n.m]:[n.x,n.y,n.z]:[n.x,n.y])}}return!(c.length<3)&&G(c)}))},B.polygon=function(e,t){return C(e,t,((i,l,s)=>{let u;if(o(s,1,1,e,t),s[0]instanceof n){const t=f(Z(s[0],e.spatialReference,"polygon"),e.spatialReference);if(null==t)return null;u=t}else if(s[0]instanceof D)u=L(s[0].toJSON());else{const t=JSON.parse(s[0]);t&&!t.spatialReference&&(t.spatialReference=e.spatialReference),u=f(new D(t),e.spatialReference)}if(null!==u&&!1===u.spatialReference.equals(e.spatialReference))throw new r(e,a.WrongSpatialReference,t);return c(u)}))},B.polyline=function(e,t){return C(e,t,((i,l,s)=>{let u;if(o(s,1,1,e,t),s[0]instanceof n){const t=f(Z(s[0],e.spatialReference,"polyline"),e.spatialReference);if(null==t)return null;u=t}else if(s[0]instanceof M)u=L(s[0].toJSON());else{const t=JSON.parse(s[0]);t&&!t.spatialReference&&(t.spatialReference=e.spatialReference),u=f(new M(t),e.spatialReference)}if(null!==u&&!1===u.spatialReference.equals(e.spatialReference))throw new r(e,a.WrongSpatialReference,t);return c(u)}))},B.point=function(e,t){return C(e,t,((i,l,s)=>{let u;if(o(s,1,1,e,t),s[0]instanceof n){const t=f(Z(s[0],e.spatialReference,"point"),e.spatialReference);if(null==t)return null;u=t}else if(s[0]instanceof A)u=L(s[0].toJSON());else{const t=JSON.parse(s[0]);t&&!t.spatialReference&&(t.spatialReference=e.spatialReference),u=f(new A(t),e.spatialReference)}if(null!==u&&!1===u.spatialReference.equals(e.spatialReference))throw new r(e,a.WrongSpatialReference,t);return c(u)}))},B.multipoint=function(e,t){return C(e,t,((i,l,s)=>{let u;if(o(s,1,1,e,t),s[0]instanceof n){const t=f(Z(s[0],e.spatialReference,"multipoint"),e.spatialReference);if(null==t)return null;u=t}else if(s[0]instanceof q)u=L(s[0].toJSON());else{const t=JSON.parse(s[0]);t&&!t.spatialReference&&(t.spatialReference=e.spatialReference),u=f(new q(t),e.spatialReference)}if(null!==u&&!1===u.spatialReference.equals(e.spatialReference))throw new r(e,a.WrongSpatialReference,t);return c(u)}))},B.extent=function(e,t){return C(e,t,((i,l,s)=>{s=u(s),o(s,1,1,e,t);let m=null;if(s[0]instanceof n)m=f(Z(s[0],e.spatialReference),e.spatialReference);else if(s[0]instanceof A){const e={xmin:s[0].x,ymin:s[0].y,xmax:s[0].x,ymax:s[0].y,spatialReference:s[0].spatialReference.toJSON()},t=s[0];t.hasZ&&(e.zmin=t.z,e.zmax=t.z),t.hasM&&(e.mmin=t.m,e.mmax=t.m),m=L(e)}else if(s[0]instanceof D)m=L(s[0].extent?.toJSON());else if(s[0]instanceof M)m=L(s[0].extent?.toJSON());else if(s[0]instanceof q)m=L(s[0].extent?.toJSON());else if(s[0]instanceof z)m=L(s[0].toJSON());else{const t=JSON.parse(s[0]);t&&!t.spatialReference&&(t.spatialReference=e.spatialReference),m=f(new z(t),e.spatialReference)}if(null!==m&&!1===m.spatialReference.equals(e.spatialReference))throw new r(e,a.WrongSpatialReference,t);return c(m)}))},B.geometry=function(e,t){return C(e,t,((i,l,s)=>{o(s,1,1,e,t);let u=null;if(null===s[0])return null;if(m(s[0]))u=f(s[0].geometry(),e.spatialReference);else if(s[0]instanceof n)u=f(Z(s[0],e.spatialReference),e.spatialReference);else{const t=JSON.parse(s[0]);t&&!t.spatialReference&&(t.spatialReference=e.spatialReference),u=f(L(t),e.spatialReference)}if(null!==u&&!1===u.spatialReference.equals(e.spatialReference))throw new r(e,a.WrongSpatialReference,t);return c(u)}))},B.setgeometry=function(e,t){return C(e,t,((n,i,l)=>{if(o(l,2,2,e,t),!m(l[0]))throw new r(e,a.InvalidParameter,t);if(!0===l[0].immutable)throw new r(e,a.Immutable,t);if(!(l[1]instanceof W||null===l[1]))throw new r(e,a.InvalidParameter,t);return l[0]._geometry=l[1],p}))},B.feature=function(e,t){return C(e,t,((l,o,s)=>{if(0===s.length)throw new r(e,a.WrongNumberOfParameters,t);let c;if(1===s.length)if(_(s[0]))c=i.fromJson(JSON.parse(s[0]),e.timeZone);else if(m(s[0]))c=i.createFromArcadeFeature(s[0]);else if(s[0]instanceof W)c=i.createFromGraphicLikeObject(s[0],null,null,e.timeZone);else{if(!(s[0]instanceof n))throw new r(e,a.InvalidParameter,t);{const n=s[0].hasField("geometry")?s[0].field("geometry"):null,l=s[0].hasField("attributes")?s[0].field("attributes"):null;let o,f;if(h(n))o=Z(n,e.spatialReference);else{if(null!=n&&!w(n))throw new r(e,a.InvalidParameter,t);o=n}if(h(l))f=i.parseAttributesFromDictionary(l);else{if(null!=l)throw new r(e,a.InvalidParameter,t);f=null}c=i.createFromGraphicLikeObject(o,f,null,e.timeZone)}}else if(2===s.length){let l=null,o=null;if(null!==s[0])if(s[0]instanceof W)l=s[0];else{if(!(s[0]instanceof n))throw new r(e,a.InvalidParameter,t);l=Z(s[0],e.spatialReference)}if(null!==s[1]){if(!(s[1]instanceof n))throw new r(e,a.InvalidParameter,t);o=i.parseAttributesFromDictionary(s[1])}c=i.createFromGraphicLikeObject(l,o,null,e.timeZone)}else{let l=null;const o={};if(null!==s[0])if(s[0]instanceof W)l=s[0];else{if(!(s[0]instanceof n))throw new r(e,a.InvalidParameter,t);l=Z(s[0],e.spatialReference)}for(let n=1;n<s.length;n+=2){const i=g(s[n]),l=s[n+1];if(!(null==l||_(l)||isNaN(l)||R(l)||E(l)||y(l)||d(l)||T(l)))throw new r(e,a.InvalidParameter,t);if(P(l)||!1===v(l))throw new r(e,a.InvalidParameter,t);o[i]=l===p?null:l}c=i.createFromGraphicLikeObject(l,o,null,e.timeZone)}return c._geometry=f(c.geometry(),e.spatialReference),c.immutable=!1,c}))},B.dictionary=function(e,t){return C(e,t,((i,l,o)=>{if(0===o.length||1===o.length&&null===o[0]){const e=new n;return e.immutable=!1,e}if(1===o.length&&_(o[0]))try{const t=JSON.parse(o[0]),r=n.convertObjectToArcadeDictionary(t,I(e),!1);return r.immutable=!1,r}catch(u){throw new r(e,a.InvalidParameter,t)}if(1===o.length&&o[0]instanceof W)try{const t=o[0].toJSON();t.hasZ=!0===o[0].hasZ,t.hasM=!0===o[0].hasM;const r=n.convertObjectToArcadeDictionary(t,I(e),!1);return r.immutable=!1,r}catch(u){throw new r(e,a.InvalidParameter,t)}if(1===o.length&&m(o[0]))try{const e=new n;e.immutable=!1,e.setField("geometry",o[0].geometry());const t=new n;t.immutable=!1,e.setField("attributes",t);for(const n of o[0].keys())t.setField(n,o[0].field(n));return e}catch(u){throw new r(e,a.InvalidParameter,t)}if(1===o.length&&(h(o[0])||b(o[0])))try{const e=new n;e.immutable=!1;for(const t of o[0].keys())e.setField(t,o[0].field(t));return e}catch(u){throw new r(e,a.InvalidParameter,t)}if(2===o.length&&o[0]instanceof n&&T(o[1]))try{if(!(!0===o[1])){const e=new n;e.immutable=!1;for(const t of o[0].keys())e.setField(t,o[0].field(t));return e}return o[0].deepClone()}catch(u){throw new r(e,a.InvalidParameter,t)}if(o.length%2!=0)throw new r(e,a.WrongNumberOfParameters,t);const f={};for(let n=0;n<o.length;n+=2){const i=g(o[n]),l=o[n+1];if(!(null==l||_(l)||isNaN(l)||R(l)||E(l)||T(l)||d(l)||y(l)||U(l)||s(l)))throw new r(e,a.InvalidParameter,t);if(P(l))throw new r(e,a.InvalidParameter,t);f[i]=l===p?null:l}const c=new n(f);return c.immutable=!1,c}))},B.haskey=function(t,i){return C(t,i,((l,s,f)=>{o(f,2,2,t,i);const c=g(f[1]);if(O(f[0])||f[0]instanceof n)return f[0].hasField(c);if(f[0]instanceof W){const t=e(f[0],c,null,null,2);return!t||"notfound"!==t.keystate}throw new r(t,a.InvalidParameter,i)}))},B.hasvalue=function(e,n){return C(e,n,((r,a,i)=>(o(i,2,2,e,n),null!=t(i[0],i[1]))))},B.indexof=function(e,t){return C(e,t,((n,i,l)=>{o(l,2,2,e,t);const f=l[1];if(U(l[0])){for(let e=0;e<l[0].length;e++)if(j(f,l[0][e]))return e;return-1}if(s(l[0])){const e=l[0].length();for(let t=0;t<e;t++)if(j(f,l[0].get(t)))return t;return-1}throw new r(e,a.InvalidParameter,t)}))},B.angle=function(e,t){return C(e,t,((n,i,l)=>{if(l=u(l),o(l,2,3,e,t),!(l[0]instanceof A))throw new r(e,a.InvalidParameter,t);if(!(l[1]instanceof A))throw new r(e,a.InvalidParameter,t);if(l.length>2&&!(l[2]instanceof A))throw new r(e,a.InvalidParameter,t);return 2===l.length?N(l[0],l[1]):x(l[0],l[1],l[2])}))},B.bearing=function(e,t){return C(e,t,((n,i,l)=>{if(l=u(l),o(l,2,3,e,t),!(l[0]instanceof A))throw new r(e,a.InvalidParameter,t);if(!(l[1]instanceof A))throw new r(e,a.InvalidParameter,t);if(l.length>2&&!(l[2]instanceof A))throw new r(e,a.InvalidParameter,t);return 2===l.length?J(l[0],l[1]):F(l[0],l[1],l[2])}))},B.isselfintersecting=function(e,t){return C(e,t,((n,r,a)=>{a=u(a),o(a,1,1,e,t);let i=a[0];if(i instanceof D)return i.isSelfIntersecting;if(i instanceof M)return k(i.paths);if(i instanceof q){const e=i.points;for(let t=0;t<e.length;t++)for(let n=0;n<e.length;n++)if(n!==t){let r=!0;for(let a=0;a<e[t].length;a++)if(e[t][a]!==e[n][a]){r=!1;break}if(!0===r)return!0}}if(U(i)||s(i)){const t=S(i,e.spatialReference);return null!==t&&(i=t.paths),k(i)}return!1}))}}export{B as registerFunctions};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.33/esri/copyright.txt for details.
4
4
  */
5
- import{D as n,g as t,k as r,j as u,X as e,t as o,w as i,e as a,m as s}from"../../chunks/languageUtils.js";import{decimalAdjust as f}from"../../core/mathUtils.js";import{parse as c}from"../../core/number.js";import{isNumber as l,isBoolean as N,isArray as h,isString as m}from"../../support/guards.js";function p(p,M){function b(n,t,r){const u=o(n);return isNaN(u)?u:isNaN(t)||isNaN(r)||t>r?NaN:u<t?t:u>r?r:u}p.number=function(o,i){return M(o,i,((a,s,f)=>{n(f,1,2,o,i);const p=f[0];if(l(p))return p;if(null===p)return 0;if(t(p)||r(p)||u(p))return p.toNumber();if(N(p))return Number(p);if(h(p))return NaN;if(""===p)return Number(p);if(void 0===p)return Number(p);if(m(p)){if(void 0!==f[1]){let n=e(f[1],"‰","");return n=e(n,"¤",""),c(p,{pattern:n})}return Number(p.trim())}return Number(p)}))},p.abs=function(t,r){return M(t,r,((u,e,i)=>(n(i,1,1,t,r),Math.abs(o(i[0])))))},p.acos=function(t,r){return M(t,r,((u,e,i)=>(n(i,1,1,t,r),Math.acos(o(i[0])))))},p.asin=function(t,r){return M(t,r,((u,e,i)=>(n(i,1,1,t,r),Math.asin(o(i[0])))))},p.atan=function(t,r){return M(t,r,((u,e,i)=>(n(i,1,1,t,r),Math.atan(o(i[0])))))},p.atan2=function(t,r){return M(t,r,((u,e,i)=>(n(i,2,2,t,r),Math.atan2(o(i[0]),o(i[1])))))},p.ceil=function(t,r){return M(t,r,((u,e,i)=>{if(n(i,1,2,t,r),2===i.length){let n=o(i[1]);return isNaN(n)&&(n=0),f("ceil",o(i[0]),-1*n)}return Math.ceil(o(i[0]))}))},p.round=function(t,r){return M(t,r,((u,e,i)=>{if(n(i,1,2,t,r),2===i.length){let n=o(i[1]);return isNaN(n)&&(n=0),f("round",o(i[0]),-1*n)}return Math.round(o(i[0]))}))},p.floor=function(t,r){return M(t,r,((u,e,i)=>{if(n(i,1,2,t,r),2===i.length){let n=o(i[1]);return isNaN(n)&&(n=0),f("floor",o(i[0]),-1*n)}return Math.floor(o(i[0]))}))},p.cos=function(t,r){return M(t,r,((u,e,i)=>(n(i,1,1,t,r),Math.cos(o(i[0])))))},p.isnan=function(t,r){return M(t,r,((u,e,o)=>(n(o,1,1,t,r),"number"==typeof o[0]&&isNaN(o[0]))))},p.exp=function(t,r){return M(t,r,((u,e,i)=>(n(i,1,1,t,r),Math.exp(o(i[0])))))},p.log=function(t,r){return M(t,r,((u,e,i)=>(n(i,1,1,t,r),Math.log(o(i[0])))))},p.pow=function(t,r){return M(t,r,((u,e,i)=>(n(i,2,2,t,r),o(i[0])**o(i[1]))))},p.random=function(t,r){return M(t,r,((u,e,o)=>(n(o,0,0,t,r),Math.random())))},p.sin=function(t,r){return M(t,r,((u,e,i)=>(n(i,1,1,t,r),Math.sin(o(i[0])))))},p.sqrt=function(t,r){return M(t,r,((u,e,i)=>(n(i,1,1,t,r),Math.sqrt(o(i[0])))))},p.tan=function(t,r){return M(t,r,((u,e,i)=>(n(i,1,1,t,r),Math.tan(o(i[0])))))},p.isempty=function(t,r){return M(t,r,((u,e,o)=>(n(o,1,1,t,r),null===o[0]||(""===o[0]||(void 0===o[0]||o[0]===i)))))},p.boolean=function(t,r){return M(t,r,((u,e,o)=>{n(o,1,1,t,r);const i=o[0];return a(i)}))},p.constrain=function(t,r){return M(t,r,((u,e,i)=>{n(i,3,3,t,r);const a=o(i[1]),f=o(i[2]);if(h(i[0])){const n=[];for(const t of i[0])n.push(b(t,a,f));return n}if(s(i[0])){const n=[];for(let t=0;t<i[0].length();t++)n.push(b(i[0].get(t),a,f));return n}return b(i[0],a,f)}))}}export{p as registerFunctions};
5
+ import{D as n,g as t,k as r,j as u,Y as e,t as o,w as i,e as a,m as s}from"../../chunks/languageUtils.js";import{decimalAdjust as f}from"../../core/mathUtils.js";import{parse as c}from"../../core/number.js";import{isNumber as l,isBoolean as N,isArray as h,isString as m}from"../../support/guards.js";function p(p,M){function b(n,t,r){const u=o(n);return isNaN(u)?u:isNaN(t)||isNaN(r)||t>r?NaN:u<t?t:u>r?r:u}p.number=function(o,i){return M(o,i,((a,s,f)=>{n(f,1,2,o,i);const p=f[0];if(l(p))return p;if(null===p)return 0;if(t(p)||r(p)||u(p))return p.toNumber();if(N(p))return Number(p);if(h(p))return NaN;if(""===p)return Number(p);if(void 0===p)return Number(p);if(m(p)){if(void 0!==f[1]){let n=e(f[1],"‰","");return n=e(n,"¤",""),c(p,{pattern:n})}return Number(p.trim())}return Number(p)}))},p.abs=function(t,r){return M(t,r,((u,e,i)=>(n(i,1,1,t,r),Math.abs(o(i[0])))))},p.acos=function(t,r){return M(t,r,((u,e,i)=>(n(i,1,1,t,r),Math.acos(o(i[0])))))},p.asin=function(t,r){return M(t,r,((u,e,i)=>(n(i,1,1,t,r),Math.asin(o(i[0])))))},p.atan=function(t,r){return M(t,r,((u,e,i)=>(n(i,1,1,t,r),Math.atan(o(i[0])))))},p.atan2=function(t,r){return M(t,r,((u,e,i)=>(n(i,2,2,t,r),Math.atan2(o(i[0]),o(i[1])))))},p.ceil=function(t,r){return M(t,r,((u,e,i)=>{if(n(i,1,2,t,r),2===i.length){let n=o(i[1]);return isNaN(n)&&(n=0),f("ceil",o(i[0]),-1*n)}return Math.ceil(o(i[0]))}))},p.round=function(t,r){return M(t,r,((u,e,i)=>{if(n(i,1,2,t,r),2===i.length){let n=o(i[1]);return isNaN(n)&&(n=0),f("round",o(i[0]),-1*n)}return Math.round(o(i[0]))}))},p.floor=function(t,r){return M(t,r,((u,e,i)=>{if(n(i,1,2,t,r),2===i.length){let n=o(i[1]);return isNaN(n)&&(n=0),f("floor",o(i[0]),-1*n)}return Math.floor(o(i[0]))}))},p.cos=function(t,r){return M(t,r,((u,e,i)=>(n(i,1,1,t,r),Math.cos(o(i[0])))))},p.isnan=function(t,r){return M(t,r,((u,e,o)=>(n(o,1,1,t,r),"number"==typeof o[0]&&isNaN(o[0]))))},p.exp=function(t,r){return M(t,r,((u,e,i)=>(n(i,1,1,t,r),Math.exp(o(i[0])))))},p.log=function(t,r){return M(t,r,((u,e,i)=>(n(i,1,1,t,r),Math.log(o(i[0])))))},p.pow=function(t,r){return M(t,r,((u,e,i)=>(n(i,2,2,t,r),o(i[0])**o(i[1]))))},p.random=function(t,r){return M(t,r,((u,e,o)=>(n(o,0,0,t,r),Math.random())))},p.sin=function(t,r){return M(t,r,((u,e,i)=>(n(i,1,1,t,r),Math.sin(o(i[0])))))},p.sqrt=function(t,r){return M(t,r,((u,e,i)=>(n(i,1,1,t,r),Math.sqrt(o(i[0])))))},p.tan=function(t,r){return M(t,r,((u,e,i)=>(n(i,1,1,t,r),Math.tan(o(i[0])))))},p.isempty=function(t,r){return M(t,r,((u,e,o)=>(n(o,1,1,t,r),null===o[0]||(""===o[0]||(void 0===o[0]||o[0]===i)))))},p.boolean=function(t,r){return M(t,r,((u,e,o)=>{n(o,1,1,t,r);const i=o[0];return a(i)}))},p.constrain=function(t,r){return M(t,r,((u,e,i)=>{n(i,3,3,t,r);const a=o(i[1]),f=o(i[2]);if(h(i[0])){const n=[];for(const t of i[0])n.push(b(t,a,f));return n}if(s(i[0])){const n=[];for(let t=0;t<i[0].length();t++)n.push(b(i[0].get(t),a,f));return n}return b(i[0],a,f)}))}}export{p as registerFunctions};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.33/esri/copyright.txt for details.
4
4
  */
5
- import t from"../ArcadePortal.js";import e from"../Attachment.js";import r from"../Dictionary.js";import{ArcadeExecutionError as n,ExecutionErrorCodes as a}from"../executionError.js";import{D as o,f as i,M as u,t as s,w as l,K as p,e as c,s as f,m as d,X as h,L as y,Y as g,g as m,j as A,k as w,n as I,i as U,p as v,o as j}from"../../chunks/languageUtils.js";import{convertDirection as x}from"./convertdirection.js";import{XXH as N}from"./hash.js";import{hasSamePortal as C}from"../../core/urlUtils.js";import{generateUUID as k}from"../../core/uuid.js";import P from"../../geometry/Extent.js";import L from"../../geometry/Multipoint.js";import z from"../../geometry/Point.js";import O from"../../geometry/Polygon.js";import S from"../../geometry/Polyline.js";import F from"../../geometry/SpatialReference.js";import T from"../../portal/Portal.js";import{isArray as R,isString as M,isBoolean as b,isNumber as D}from"../../support/guards.js";function H(t){if("loaded"===t.loadStatus&&t.user?.sourceJSON){return t.user.sourceJSON}return null}function J(t,e){return!!t&&C(t,e?.restUrl||"")}function W(t,e){if(!t||!e)return t===e;if(t.x===e.x&&t.y===e.y){if(t.hasZ){if(t.z!==e.z)return!1}else if(e.hasZ)return!1;if(t.hasM){if(t.m!==e.m)return!1}else if(e.hasM)return!1;return!0}return!1}function B(o,i,u){if(null!==o)if(R(o)){if(i.updateUint8Array([61]),u.map.has(o)){const t=u.map.get(o);i.updateIntArray([61237541^t])}else{u.map.set(o,u.currentLength++);for(const t of o)B(t,i,u);u.map.delete(o),u.currentLength--}i.updateUint8Array([199])}else if(d(o)){if(i.updateUint8Array([61]),u.map.has(o)){const t=u.map.get(o);i.updateIntArray([61237541^t])}else{u.map.set(o,u.currentLength++);for(const t of o.toArray())B(t,i,u);u.map.delete(o),u.currentLength--}i.updateUint8Array([199])}else{if(m(o))return i.updateIntArray([o.toNumber()]),void i.updateUint8Array([241]);if(A(o))return i.updateIntArray([o.toNumber()]),void i.updateIntArray([257]);if(w(o))return i.updateIntArray([o.toNumber()]),void i.updateIntArray([263]);if(M(o))return i.updateIntArray([o.length]),i.updateWithString(o),void i.updateUint8Array([41]);if(b(o))i.updateUint8Array([!0===o?1:0,113]);else{if(D(o))return i.updateFloatArray([o]),void i.updateUint8Array([173]);if(o instanceof e)throw new n(u.context,a.UnsupportedHashType,u.node);if(o instanceof t)throw new n(u.context,a.UnsupportedHashType,u.node);if(!(o instanceof r)){if(I(o))throw new n(u.context,a.UnsupportedHashType,u.node);if(o instanceof z)return i.updateIntArray([3833836621]),i.updateIntArray([0]),i.updateFloatArray([o.x]),i.updateIntArray([1]),i.updateFloatArray([o.y]),o.hasZ&&(i.updateIntArray([2]),i.updateFloatArray([o.z])),o.hasM&&(i.updateIntArray([3]),i.updateFloatArray([o.m])),i.updateIntArray([3765347959]),void B(o.spatialReference.wkid,i,u);if(o instanceof O){i.updateIntArray([1266616829]);for(let t=0;t<o.rings.length;t++){const e=o.rings[t],r=[];let n=null,a=null;for(let i=0;i<e.length;i++){const u=o.getPoint(t,i);if(0===i)n=u;else if(W(a,u))continue;a=u,i===e.length-1&&W(n,u)||r.push(u)}i.updateIntArray([1397116793,r.length]);for(let t=0;t<r.length;t++){const e=r[t];i.updateIntArray([3962308117,t]),B(e,i,u),i.updateIntArray([2716288009])}i.updateIntArray([2278822459])}return i.updateIntArray([3878477243]),void B(o.spatialReference.wkid,i,u)}if(o instanceof S){i.updateIntArray([4106883559]);for(let t=0;t<o.paths.length;t++){const e=o.paths[t];i.updateIntArray([1397116793,e.length]);for(let r=0;r<e.length;r++)i.updateIntArray([3962308117,r]),B(o.getPoint(t,r),i,u),i.updateIntArray([2716288009]);i.updateIntArray([2278822459])}return i.updateIntArray([2568784753]),void B(o.spatialReference.wkid,i,u)}if(o instanceof L){i.updateIntArray([588535921,o.points.length]);for(let t=0;t<o.points.length;t++){const e=o.getPoint(t);i.updateIntArray([t]),B(e,i,u)}return i.updateIntArray([1700171621]),void B(o.spatialReference.wkid,i,u)}if(o instanceof P)return i.updateIntArray([3483648373]),i.updateIntArray([0]),i.updateFloatArray([o.xmax]),i.updateIntArray([1]),i.updateFloatArray([o.xmin]),i.updateIntArray([2]),i.updateFloatArray([o.ymax]),i.updateIntArray([3]),i.updateFloatArray([o.ymin]),o.hasZ&&(i.updateIntArray([4]),i.updateFloatArray([o.zmax]),i.updateIntArray([5]),i.updateFloatArray([o.zmin])),o.hasM&&(i.updateIntArray([6]),i.updateFloatArray([o.mmax]),i.updateIntArray([7]),i.updateFloatArray([o.mmin])),i.updateIntArray([3622027469]),void B(o.spatialReference.wkid,i,u);if(o instanceof F)return i.updateIntArray([14]),void 0!==o.wkid&&null!==o.wkid&&i.updateIntArray([o.wkid]),o.wkt&&i.updateWithString(o.wkt),void(o.wkt2&&i.updateWithString(o.wkt2));if(U(o))throw new n(u.context,a.UnsupportedHashType,u.node);if(v(o))throw new n(u.context,a.UnsupportedHashType,u.node);if(j(o))throw new n(u.context,a.UnsupportedHashType,u.node);if(o===l)throw new n(u.context,a.UnsupportedHashType,u.node);throw new n(u.context,a.UnsupportedHashType,u.node)}if(i.updateUint8Array([223]),u.map.has(o)){const t=u.map.get(o);i.updateIntArray([61237541^t])}else{u.map.set(o,u.currentLength++);for(const t of o.keys()){i.updateIntArray([t.length]),i.updateWithString(t),i.updateUint8Array([251]);B(o.field(t),i,u),i.updateUint8Array([239])}u.map.delete(o),u.currentLength--}i.updateUint8Array([73])}}else i.updateUint8Array([0,139])}function E(e,m){e.portal=function(e,r){return m(e,r,((n,a,u)=>(o(u,1,1,e,r),new t(i(u[0])))))},e.typeof=function(t,e){return m(t,e,((r,i,s)=>{o(s,1,1,t,e);const l=u(s[0]);if("Unrecognized Type"===l)throw new n(t,a.UnrecognizedType,e);return l}))},e.trim=function(t,e){return m(t,e,((r,n,a)=>(o(a,1,1,t,e),i(a[0]).trim())))},e.tohex=function(t,e){return m(t,e,((r,n,a)=>{o(a,1,1,t,e);const i=s(a[0]);return isNaN(i)?i:i.toString(16)}))},e.upper=function(t,e){return m(t,e,((r,n,a)=>(o(a,1,1,t,e),i(a[0]).toUpperCase())))},e.proper=function(t,e){return m(t,e,((r,n,a)=>{o(a,1,2,t,e);let u=1;2===a.length&&"firstword"===i(a[1]).toLowerCase()&&(u=2);const s=/\s/,l=i(a[0]);let p="",c=!0;for(let t=0;t<l.length;t++){let e=l[t];if(s.test(e))1===u&&(c=!0);else{e.toUpperCase()!==e.toLowerCase()&&(c?(e=e.toUpperCase(),c=!1):e=e.toLowerCase())}p+=e}return p}))},e.lower=function(t,e){return m(t,e,((r,n,a)=>(o(a,1,1,t,e),i(a[0]).toLowerCase())))},e.guid=function(t,e){return m(t,e,((r,n,a)=>{if(o(a,0,1,t,e),a.length>0)switch(i(a[0]).toLowerCase()){case"digits":return k().replace("-","").replace("-","").replace("-","").replace("-","");case"digits-hyphen":return k();case"digits-hyphen-braces":return"{"+k()+"}";case"digits-hyphen-parentheses":return"("+k()+")"}return"{"+k()+"}"}))},e.standardizeguid=function(t,e){return m(t,e,((r,n,a)=>{o(a,2,2,t,e);let u=i(a[0]);if(""===u||null===u)return"";const s=/^(\{|\()?(?<partA>[0-9a-z]{8})(-?)(?<partB>[0-9a-z]{4})(-?)(?<partC>[0-9a-z]{4})(-?)(?<partD>[0-9a-z]{4})(-?)(?<partE>[0-9a-z]{12})(\}|\))?$/gim.exec(u);if(!s)return"";const l=s.groups;switch(u=l.partA+"-"+l.partB+"-"+l.partC+"-"+l.partD+"-"+l.partE,i(a[1]).toLowerCase()){case"digits":return u.replace("-","").replace("-","").replace("-","").replace("-","");case"digits-hyphen":return u;case"digits-hyphen-braces":return"{"+u+"}";case"digits-hyphen-parentheses":return"("+u+")"}return"{"+u+"}"}))},e.console=function(t,e){return m(t,e,((e,r,n)=>(0===n.length||(1===n.length?t.console(i(n[0])):t.console(i(n))),l)))},e.mid=function(t,e){return m(t,e,((r,n,a)=>{o(a,2,3,t,e);let u=s(a[1]);if(isNaN(u))return"";if(u=Math.max(0,u),2===a.length)return i(a[0]).slice(u);let l=s(a[2]);return isNaN(l)?"":(l<0&&(l=0),i(a[0]).slice(u,u+l))}))},e.find=function(t,e){return m(t,e,((r,n,a)=>{o(a,2,3,t,e);let u=0;if(a.length>2){if(u=s(p(a[2],0)),isNaN(u))return-1;u<0&&(u=0)}return i(a[1]).indexOf(i(a[0]),u)}))},e.left=function(t,e){return m(t,e,((r,n,a)=>{o(a,2,2,t,e);let u=s(a[1]);return isNaN(u)?"":(u<0&&(u=0),i(a[0]).slice(0,u))}))},e.right=function(t,e){return m(t,e,((r,n,a)=>{o(a,2,2,t,e);const u=s(a[1]);if(isNaN(u)||u<=0)return"";return i(a[0]).slice(-u)}))},e.split=function(t,e){return m(t,e,((r,n,a)=>{let u;o(a,2,4,t,e);let l=s(p(a[2],-1));const f=c(p(a[3],!1));if(-1===l||null===l||!0===f?u=i(a[0]).split(i(a[1])):(isNaN(l)&&(l=-1),l<-1&&(l=-1),u=i(a[0]).split(i(a[1]),l)),!1===f)return u;const d=[];for(let t=0;t<u.length&&!(-1!==l&&d.length>=l);t++)""!==u[t]&&void 0!==u[t]&&d.push(u[t]);return d}))},e.text=function(t,e){return m(t,e,((r,n,a)=>(o(a,1,2,t,e),f(a[0],a[1]))))},e.concatenate=function(t,e){return m(t,e,((t,e,r)=>{const n=[];if(r.length<1)return"";if(R(r[0])){const t=p(r[2],"");for(let e=0;e<r[0].length;e++)n[e]=f(r[0][e],t);return r.length>1?n.join(r[1]):n.join("")}if(d(r[0])){const t=p(r[2],"");for(let e=0;e<r[0].length();e++)n[e]=f(r[0].get(e),t);return r.length>1?n.join(r[1]):n.join("")}for(let a=0;a<r.length;a++)n[a]=f(r[a]);return n.join("")}))},e.reverse=function(t,e){return m(t,e,((r,i,u)=>{if(o(u,1,1,t,e),R(u[0])){const t=u[0].slice();return t.reverse(),t}if(d(u[0])){const t=u[0].toArray().slice();return t.reverse(),t}throw new n(t,a.InvalidParameter,e)}))},e.replace=function(t,e){return m(t,e,((r,n,a)=>{o(a,3,4,t,e);const u=i(a[0]),s=i(a[1]),l=i(a[2]);return 4!==a.length||c(a[3])?h(u,s,l):u.replace(s,l)}))},e.urlencode=function(t,e){return m(t,e,((n,a,u)=>{if(o(u,1,1,t,e),null===u[0])return"";if(u[0]instanceof r){let t="";for(const e of u[0].keys()){const r=u[0].field(e);""!==t&&(t+="&"),t+=null===r?encodeURIComponent(e)+"=":encodeURIComponent(e)+"="+encodeURIComponent(r)}return t}return encodeURIComponent(i(u[0]))}))},e.hash=function(t,e){return m(t,e,((r,n,a)=>{o(a,1,1,t,e);const i=new N(0);return B(a[0],i,{context:t,node:e,map:new Map,currentLength:0}),i.digest()}))},e.convertdirection=function(t,e){return m(t,e,((r,n,a)=>(o(a,3,3,t,e),x(a[0],a[1],a[2]))))},e.fromjson=function(t,e){return m(t,e,((u,s,l)=>{if(o(l,1,1,t,e),!1===M(l[0]))throw new n(t,a.InvalidParameter,e);return r.convertJsonToArcade(JSON.parse(i(l[0])),y(t))}))},e.tocharcode=function(t,e){return m(t,e,((r,u,l)=>{o(l,1,2,t,e);const c=s(p(l[1],0)),f=i(l[0]);if(0===f.length&&1===l.length)return null;if(f.length<=c||c<0)throw new n(t,a.OutOfBounds,e);return f.charCodeAt(c)}))},e.tocodepoint=function(t,e){return m(t,e,((r,u,l)=>{o(l,1,2,t,e);const c=s(p(l[1],0)),f=i(l[0]);if(0===f.length&&1===l.length)return null;if(f.length<=c||c<0)throw new n(t,a.OutOfBounds,e);return f.codePointAt(c)}))},e.fromcharcode=function(t,e){return m(t,e,((r,o,i)=>{if(i.length<1)throw new n(t,a.WrongNumberOfParameters,e);const u=i.map((t=>Math.trunc(s(t)))).filter((t=>t>=0&&t<=65535));return 0===u.length?null:String.fromCharCode.apply(null,u)}))},e.fromcodepoint=function(t,e){return m(t,e,((r,o,i)=>{if(i.length<1)throw new n(t,a.WrongNumberOfParameters,e);let u;try{u=i.map((t=>Math.trunc(s(t)))).filter((t=>t<=1114111&&t>>>0===t))}catch(l){return null}return 0===u.length?null:String.fromCodePoint.apply(null,u)}))},e.getuser=function(e,u){return m(e,u,((s,l,c)=>{o(c,0,2,e,u);let f=p(c[1],"");if(f=!0===f||!1===f?"":i(f),null!==f&&""!==f)return null;if(0===c.length||c[0]instanceof t){let t=null;if(t=e.services?.portal?e.services.portal:T.getDefault(),c.length>0){if(!J(c[0].field("url"),t))return null}if(!t)return null;if(""===f){const n=H(t);if(n){const t=JSON.parse(JSON.stringify(n));for(const e of["lastLogin","created","modified"])void 0!==t[e]&&null!==t[e]&&(t[e]=new Date(t[e]));return r.convertObjectToArcadeDictionary(t,y(e))}}return null}throw new n(e,a.InvalidParameter,u)}))},e.getenvironment=function(t,e){return m(t,e,((n,a,i)=>(o(i,0,0,t,e),r.convertObjectToArcadeDictionary(g(y(t),t.spatialReference),y(t),!0))))},e.standardizefilename=function(t,e){return m(t,e,((t,e,r)=>{o(r,1,1,t,e);const[i]=r;if(null==i)return"";if(!M(i))throw new n(t,a.InvalidParameter,e);return i.replaceAll(/[<>"?*]/g,"_").replaceAll(/[/\\|]/g,"-").replaceAll(":",", ")}))}}export{E as registerFunctions};
5
+ import t from"../ArcadePortal.js";import e from"../Attachment.js";import r from"../Dictionary.js";import{ArcadeExecutionError as n,ExecutionErrorCodes as a}from"../executionError.js";import{D as o,f as i,N as u,t as s,w as l,K as p,e as c,s as f,m as d,Y as h,L as y,Z as g,g as m,j as A,k as w,n as I,i as U,p as v,o as j}from"../../chunks/languageUtils.js";import{convertDirection as x}from"./convertdirection.js";import{XXH as N}from"./hash.js";import{hasSamePortal as C}from"../../core/urlUtils.js";import{generateUUID as k}from"../../core/uuid.js";import P from"../../geometry/Extent.js";import L from"../../geometry/Multipoint.js";import z from"../../geometry/Point.js";import O from"../../geometry/Polygon.js";import S from"../../geometry/Polyline.js";import F from"../../geometry/SpatialReference.js";import T from"../../portal/Portal.js";import{isArray as R,isString as b,isBoolean as M,isNumber as D}from"../../support/guards.js";function H(t){if("loaded"===t.loadStatus&&t.user?.sourceJSON){return t.user.sourceJSON}return null}function J(t,e){return!!t&&C(t,e?.restUrl||"")}function W(t,e){if(!t||!e)return t===e;if(t.x===e.x&&t.y===e.y){if(t.hasZ){if(t.z!==e.z)return!1}else if(e.hasZ)return!1;if(t.hasM){if(t.m!==e.m)return!1}else if(e.hasM)return!1;return!0}return!1}function Z(o,i,u){if(null!==o)if(R(o)){if(i.updateUint8Array([61]),u.map.has(o)){const t=u.map.get(o);i.updateIntArray([61237541^t])}else{u.map.set(o,u.currentLength++);for(const t of o)Z(t,i,u);u.map.delete(o),u.currentLength--}i.updateUint8Array([199])}else if(d(o)){if(i.updateUint8Array([61]),u.map.has(o)){const t=u.map.get(o);i.updateIntArray([61237541^t])}else{u.map.set(o,u.currentLength++);for(const t of o.toArray())Z(t,i,u);u.map.delete(o),u.currentLength--}i.updateUint8Array([199])}else{if(m(o))return i.updateIntArray([o.toNumber()]),void i.updateUint8Array([241]);if(A(o))return i.updateIntArray([o.toNumber()]),void i.updateIntArray([257]);if(w(o))return i.updateIntArray([o.toNumber()]),void i.updateIntArray([263]);if(b(o))return i.updateIntArray([o.length]),i.updateWithString(o),void i.updateUint8Array([41]);if(M(o))i.updateUint8Array([!0===o?1:0,113]);else{if(D(o))return i.updateFloatArray([o]),void i.updateUint8Array([173]);if(o instanceof e)throw new n(u.context,a.UnsupportedHashType,u.node);if(o instanceof t)throw new n(u.context,a.UnsupportedHashType,u.node);if(!(o instanceof r)){if(I(o))throw new n(u.context,a.UnsupportedHashType,u.node);if(o instanceof z)return i.updateIntArray([3833836621]),i.updateIntArray([0]),i.updateFloatArray([o.x]),i.updateIntArray([1]),i.updateFloatArray([o.y]),o.hasZ&&(i.updateIntArray([2]),i.updateFloatArray([o.z])),o.hasM&&(i.updateIntArray([3]),i.updateFloatArray([o.m])),i.updateIntArray([3765347959]),void Z(o.spatialReference.wkid,i,u);if(o instanceof O){i.updateIntArray([1266616829]);for(let t=0;t<o.rings.length;t++){const e=o.rings[t],r=[];let n=null,a=null;for(let i=0;i<e.length;i++){const u=o.getPoint(t,i);if(0===i)n=u;else if(W(a,u))continue;a=u,i===e.length-1&&W(n,u)||r.push(u)}i.updateIntArray([1397116793,r.length]);for(let t=0;t<r.length;t++){const e=r[t];i.updateIntArray([3962308117,t]),Z(e,i,u),i.updateIntArray([2716288009])}i.updateIntArray([2278822459])}return i.updateIntArray([3878477243]),void Z(o.spatialReference.wkid,i,u)}if(o instanceof S){i.updateIntArray([4106883559]);for(let t=0;t<o.paths.length;t++){const e=o.paths[t];i.updateIntArray([1397116793,e.length]);for(let r=0;r<e.length;r++)i.updateIntArray([3962308117,r]),Z(o.getPoint(t,r),i,u),i.updateIntArray([2716288009]);i.updateIntArray([2278822459])}return i.updateIntArray([2568784753]),void Z(o.spatialReference.wkid,i,u)}if(o instanceof L){i.updateIntArray([588535921,o.points.length]);for(let t=0;t<o.points.length;t++){const e=o.getPoint(t);i.updateIntArray([t]),Z(e,i,u)}return i.updateIntArray([1700171621]),void Z(o.spatialReference.wkid,i,u)}if(o instanceof P)return i.updateIntArray([3483648373]),i.updateIntArray([0]),i.updateFloatArray([o.xmax]),i.updateIntArray([1]),i.updateFloatArray([o.xmin]),i.updateIntArray([2]),i.updateFloatArray([o.ymax]),i.updateIntArray([3]),i.updateFloatArray([o.ymin]),o.hasZ&&(i.updateIntArray([4]),i.updateFloatArray([o.zmax]),i.updateIntArray([5]),i.updateFloatArray([o.zmin])),o.hasM&&(i.updateIntArray([6]),i.updateFloatArray([o.mmax]),i.updateIntArray([7]),i.updateFloatArray([o.mmin])),i.updateIntArray([3622027469]),void Z(o.spatialReference.wkid,i,u);if(o instanceof F)return i.updateIntArray([14]),void 0!==o.wkid&&null!==o.wkid&&i.updateIntArray([o.wkid]),o.wkt&&i.updateWithString(o.wkt),void(o.wkt2&&i.updateWithString(o.wkt2));if(U(o))throw new n(u.context,a.UnsupportedHashType,u.node);if(v(o))throw new n(u.context,a.UnsupportedHashType,u.node);if(j(o))throw new n(u.context,a.UnsupportedHashType,u.node);if(o===l)throw new n(u.context,a.UnsupportedHashType,u.node);throw new n(u.context,a.UnsupportedHashType,u.node)}if(i.updateUint8Array([223]),u.map.has(o)){const t=u.map.get(o);i.updateIntArray([61237541^t])}else{u.map.set(o,u.currentLength++);for(const t of o.keys()){i.updateIntArray([t.length]),i.updateWithString(t),i.updateUint8Array([251]);Z(o.field(t),i,u),i.updateUint8Array([239])}u.map.delete(o),u.currentLength--}i.updateUint8Array([73])}}else i.updateUint8Array([0,139])}function B(e,m){e.portal=function(e,r){return m(e,r,((n,a,u)=>(o(u,1,1,e,r),new t(i(u[0])))))},e.typeof=function(t,e){return m(t,e,((r,i,s)=>{o(s,1,1,t,e);const l=u(s[0]);if("Unrecognized Type"===l)throw new n(t,a.UnrecognizedType,e);return l}))},e.trim=function(t,e){return m(t,e,((r,n,a)=>(o(a,1,1,t,e),i(a[0]).trim())))},e.tohex=function(t,e){return m(t,e,((r,n,a)=>{o(a,1,1,t,e);const i=s(a[0]);return isNaN(i)?i:i.toString(16)}))},e.upper=function(t,e){return m(t,e,((r,n,a)=>(o(a,1,1,t,e),i(a[0]).toUpperCase())))},e.proper=function(t,e){return m(t,e,((r,n,a)=>{o(a,1,2,t,e);let u=1;2===a.length&&"firstword"===i(a[1]).toLowerCase()&&(u=2);const s=/\s/,l=i(a[0]);let p="",c=!0;for(let t=0;t<l.length;t++){let e=l[t];if(s.test(e))1===u&&(c=!0);else{e.toUpperCase()!==e.toLowerCase()&&(c?(e=e.toUpperCase(),c=!1):e=e.toLowerCase())}p+=e}return p}))},e.lower=function(t,e){return m(t,e,((r,n,a)=>(o(a,1,1,t,e),i(a[0]).toLowerCase())))},e.guid=function(t,e){return m(t,e,((r,n,a)=>{if(o(a,0,1,t,e),a.length>0)switch(i(a[0]).toLowerCase()){case"digits":return k().replace("-","").replace("-","").replace("-","").replace("-","");case"digits-hyphen":return k();case"digits-hyphen-braces":return"{"+k()+"}";case"digits-hyphen-parentheses":return"("+k()+")"}return"{"+k()+"}"}))},e.standardizeguid=function(t,e){return m(t,e,((r,n,a)=>{o(a,2,2,t,e);let u=i(a[0]);if(""===u||null===u)return"";const s=/^(\{|\()?(?<partA>[0-9a-z]{8})(-?)(?<partB>[0-9a-z]{4})(-?)(?<partC>[0-9a-z]{4})(-?)(?<partD>[0-9a-z]{4})(-?)(?<partE>[0-9a-z]{12})(\}|\))?$/gim.exec(u);if(!s)return"";const l=s.groups;switch(u=l.partA+"-"+l.partB+"-"+l.partC+"-"+l.partD+"-"+l.partE,i(a[1]).toLowerCase()){case"digits":return u.replace("-","").replace("-","").replace("-","").replace("-","");case"digits-hyphen":return u;case"digits-hyphen-braces":return"{"+u+"}";case"digits-hyphen-parentheses":return"("+u+")"}return"{"+u+"}"}))},e.console=function(t,e){return m(t,e,((e,r,n)=>(0===n.length||(1===n.length?t.console(i(n[0])):t.console(i(n))),l)))},e.mid=function(t,e){return m(t,e,((r,n,a)=>{o(a,2,3,t,e);let u=s(a[1]);if(isNaN(u))return"";if(u=Math.max(0,u),2===a.length)return i(a[0]).slice(u);let l=s(a[2]);return isNaN(l)?"":(l<0&&(l=0),i(a[0]).slice(u,u+l))}))},e.find=function(t,e){return m(t,e,((r,n,a)=>{o(a,2,3,t,e);let u=0;if(a.length>2){if(u=s(p(a[2],0)),isNaN(u))return-1;u<0&&(u=0)}return i(a[1]).indexOf(i(a[0]),u)}))},e.left=function(t,e){return m(t,e,((r,n,a)=>{o(a,2,2,t,e);let u=s(a[1]);return isNaN(u)?"":(u<0&&(u=0),i(a[0]).slice(0,u))}))},e.right=function(t,e){return m(t,e,((r,n,a)=>{o(a,2,2,t,e);const u=s(a[1]);if(isNaN(u)||u<=0)return"";return i(a[0]).slice(-u)}))},e.split=function(t,e){return m(t,e,((r,n,a)=>{let u;o(a,2,4,t,e);let l=s(p(a[2],-1));const f=c(p(a[3],!1));if(-1===l||null===l||!0===f?u=i(a[0]).split(i(a[1])):(isNaN(l)&&(l=-1),l<-1&&(l=-1),u=i(a[0]).split(i(a[1]),l)),!1===f)return u;const d=[];for(let t=0;t<u.length&&!(-1!==l&&d.length>=l);t++)""!==u[t]&&void 0!==u[t]&&d.push(u[t]);return d}))},e.text=function(t,e){return m(t,e,((r,n,a)=>(o(a,1,2,t,e),f(a[0],a[1]))))},e.concatenate=function(t,e){return m(t,e,((t,e,r)=>{const n=[];if(r.length<1)return"";if(R(r[0])){const t=p(r[2],"");for(let e=0;e<r[0].length;e++)n[e]=f(r[0][e],t);return r.length>1?n.join(r[1]):n.join("")}if(d(r[0])){const t=p(r[2],"");for(let e=0;e<r[0].length();e++)n[e]=f(r[0].get(e),t);return r.length>1?n.join(r[1]):n.join("")}for(let a=0;a<r.length;a++)n[a]=f(r[a]);return n.join("")}))},e.reverse=function(t,e){return m(t,e,((r,i,u)=>{if(o(u,1,1,t,e),R(u[0])){const t=u[0].slice();return t.reverse(),t}if(d(u[0])){const t=u[0].toArray().slice();return t.reverse(),t}throw new n(t,a.InvalidParameter,e)}))},e.replace=function(t,e){return m(t,e,((r,n,a)=>{o(a,3,4,t,e);const u=i(a[0]),s=i(a[1]),l=i(a[2]);return 4!==a.length||c(a[3])?h(u,s,l):u.replace(s,l)}))},e.urlencode=function(t,e){return m(t,e,((n,a,u)=>{if(o(u,1,1,t,e),null===u[0])return"";if(u[0]instanceof r){let t="";for(const e of u[0].keys()){const r=u[0].field(e);""!==t&&(t+="&"),t+=null===r?encodeURIComponent(e)+"=":encodeURIComponent(e)+"="+encodeURIComponent(r)}return t}return encodeURIComponent(i(u[0]))}))},e.hash=function(t,e){return m(t,e,((r,n,a)=>{o(a,1,1,t,e);const i=new N(0);return Z(a[0],i,{context:t,node:e,map:new Map,currentLength:0}),i.digest()}))},e.convertdirection=function(t,e){return m(t,e,((r,n,a)=>(o(a,3,3,t,e),x(a[0],a[1],a[2]))))},e.fromjson=function(t,e){return m(t,e,((u,s,l)=>{if(o(l,1,1,t,e),!1===b(l[0]))throw new n(t,a.InvalidParameter,e);return r.convertJsonToArcade(JSON.parse(i(l[0])),y(t))}))},e.tocharcode=function(t,e){return m(t,e,((r,u,l)=>{o(l,1,2,t,e);const c=s(p(l[1],0)),f=i(l[0]);if(0===f.length&&1===l.length)return null;if(f.length<=c||c<0)throw new n(t,a.OutOfBounds,e);return f.charCodeAt(c)}))},e.tocodepoint=function(t,e){return m(t,e,((r,u,l)=>{o(l,1,2,t,e);const c=s(p(l[1],0)),f=i(l[0]);if(0===f.length&&1===l.length)return null;if(f.length<=c||c<0)throw new n(t,a.OutOfBounds,e);return f.codePointAt(c)}))},e.fromcharcode=function(t,e){return m(t,e,((r,o,i)=>{if(i.length<1)throw new n(t,a.WrongNumberOfParameters,e);const u=i.map((t=>Math.trunc(s(t)))).filter((t=>t>=0&&t<=65535));return 0===u.length?null:String.fromCharCode.apply(null,u)}))},e.fromcodepoint=function(t,e){return m(t,e,((r,o,i)=>{if(i.length<1)throw new n(t,a.WrongNumberOfParameters,e);let u;try{u=i.map((t=>Math.trunc(s(t)))).filter((t=>t<=1114111&&t>>>0===t))}catch(l){return null}return 0===u.length?null:String.fromCodePoint.apply(null,u)}))},e.getuser=function(e,u){return m(e,u,((s,l,c)=>{o(c,0,2,e,u);let f=p(c[1],"");if(f=!0===f||!1===f?"":i(f),null!==f&&""!==f)return null;if(0===c.length||c[0]instanceof t){let t=null;if(t=e.services?.portal?e.services.portal:T.getDefault(),c.length>0){if(!J(c[0].field("url"),t))return null}if(!t)return null;if(""===f){const n=H(t);if(n){const t=JSON.parse(JSON.stringify(n));for(const e of["lastLogin","created","modified"])void 0!==t[e]&&null!==t[e]&&(t[e]=new Date(t[e]));return r.convertObjectToArcadeDictionary(t,y(e))}}return null}throw new n(e,a.InvalidParameter,u)}))},e.getenvironment=function(t,e){return m(t,e,((n,a,i)=>(o(i,0,0,t,e),r.convertObjectToArcadeDictionary(g(y(t),t.spatialReference),y(t),!0))))},e.standardizefilename=function(t,e){return m(t,e,((t,e,r)=>{o(r,1,1,t,e);const[i]=r;if(null==i)return"";if(!b(i))throw new n(t,a.InvalidParameter,e);return i.replaceAll(/[<>"?*]/g,"_").replaceAll(/[/\\|]/g,"-").replaceAll(":",", ")}))}}export{B as registerFunctions};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.33/esri/copyright.txt for details.
4
4
  */
5
- import"../config.js";import"../kernel.js";import"./ArcadeDate.js";import"./ArcadeModule.js";import"./executionError.js";import"./FunctionWrapper.js";import"./ImmutableArray.js";import"./ImmutablePathArray.js";import"./ImmutablePointArray.js";import"./featureset/support/shared.js";import"../core/number.js";import"../core/sql/DateOnly.js";import"../core/sql/TimeOnly.js";import"../geometry/Extent.js";import"../geometry/Geometry.js";import"../geometry/Multipoint.js";import"../geometry/Point.js";import"../geometry/Polygon.js";import"../geometry/Polyline.js";import"../geometry/SpatialReference.js";import"../geometry/support/coordsUtils.js";import"../geometry/support/jsonUtils.js";import"../intl/locale.js";export{isArray,isBoolean,isGraphic,isInteger,isDate as isJsDate,isNumber,isString}from"../support/guards.js";import"luxon";export{I as ImplicitResult,R as ReturnResult,O as absRound,ab as arcadeVersion,J as autoCastArrayOfPointsToMultiPoint,G as autoCastArrayOfPointsToPolygon,H as autoCastArrayOfPointsToPolyline,F as autoCastFeatureToGeometry,C as binaryOperator,x as breakResult,a as castAsJson,b as castAsJsonAsync,c as castRecordToText,y as continueResult,Y as defaultExecutingContext,L as defaultTimeZone,K as defaultUndefined,B as equalityTest,Q as featureDomainCodeLookup,S as featureDomainValueLookup,P as featureFullDomain,T as featureSchema,U as featureSubtypes,V as fixNullGeometry,u as fixSpatialReference,a7 as formatDate,a6 as formatNumber,a1 as getDomain,a3 as getDomainCode,a2 as getDomainValue,M as getType,A as greaterThanLessThan,g as isDate,j as isDateOnly,q as isDictionary,z as isDictionaryLike,n as isFeature,p as isFeatureSet,o as isFeatureSetCollection,i as isFunctionParameter,l as isGeometry,m as isImmutableArray,r as isKnowledgeGraph,a4 as isModule,a5 as isObject,d as isSimpleType,aa as isSubtypeGrouplayer,_ as isSubtypeSublayer,k as isTime,E as isVoid,W as isVoxel,X as multiReplace,a8 as parseGeometryFromJson,D as pcCheck,a9 as stableStringify,N as standardiseDateFormat,$ as tick,e as toBoolean,h as toDate,t as toNumber,Z as toNumberArray,f as toString,a0 as toStringArray,s as toStringExplicit,w as voidOperation}from"../chunks/languageUtils.js";
5
+ import"../config.js";import"../kernel.js";import"./ArcadeDate.js";import"./ArcadeModule.js";import"./executionError.js";import"./FunctionWrapper.js";import"./ImmutableArray.js";import"./ImmutablePathArray.js";import"./ImmutablePointArray.js";import"./featureset/support/shared.js";import"../core/number.js";import"../core/sql/DateOnly.js";import"../core/sql/TimeOnly.js";import"../geometry/Extent.js";import"../geometry/Geometry.js";import"../geometry/Multipoint.js";import"../geometry/Point.js";import"../geometry/Polygon.js";import"../geometry/Polyline.js";import"../geometry/SpatialReference.js";import"../geometry/support/coordsUtils.js";import"../geometry/support/jsonUtils.js";import"../intl/locale.js";export{isArray,isBoolean,isGraphic,isInteger,isDate as isJsDate,isNumber,isString}from"../support/guards.js";import"luxon";export{I as ImplicitResult,R as ReturnResult,P as absRound,ab as arcadeVersion,J as autoCastArrayOfPointsToMultiPoint,G as autoCastArrayOfPointsToPolygon,H as autoCastArrayOfPointsToPolyline,F as autoCastFeatureToGeometry,C as binaryOperator,x as breakResult,a as castAsJson,b as castAsJsonAsync,c as castRecordToText,y as continueResult,Z as defaultExecutingContext,L as defaultTimeZone,K as defaultUndefined,B as equalityTest,S as featureDomainCodeLookup,T as featureDomainValueLookup,Q as featureFullDomain,U as featureSchema,V as featureSubtypes,W as fixNullGeometry,u as fixSpatialReference,a7 as formatDate,a6 as formatNumber,a1 as getDomain,a3 as getDomainCode,a2 as getDomainValue,N as getType,A as greaterThanLessThan,g as isDate,j as isDateOnly,q as isDictionary,z as isDictionaryLike,n as isFeature,p as isFeatureSet,o as isFeatureSetCollection,i as isFunctionParameter,l as isGeometry,m as isImmutableArray,r as isKnowledgeGraph,a4 as isModule,a5 as isObject,d as isSimpleType,aa as isSubtypeGrouplayer,$ as isSubtypeSublayer,k as isTime,E as isVoid,X as isVoxel,Y as multiReplace,a8 as parseGeometryFromJson,D as pcCheck,a9 as stableStringify,O as standardiseDateFormat,a0 as tick,e as toBoolean,h as toDate,t as toNumber,_ as toNumberArray,f as toString,M as toStringArray,s as toStringExplicit,w as voidOperation}from"../chunks/languageUtils.js";
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.33/esri/copyright.txt for details.
4
4
  */
5
- import{toSymbolId as e}from"./arcadeEnvironment.js";import"../core/has.js";const n={all:{min:2,max:2},time:{min:0,max:4},dateonly:{min:0,max:3},getenvironment:{min:0,max:0},none:{min:2,max:2},any:{min:2,max:2},reduce:{min:2,max:3},map:{min:2,max:2},filter:{min:2,max:2},fromcodepoint:{min:1,max:-1},fromcharcode:{min:1,max:-1},tocodepoint:{min:1,max:2},tocharcode:{min:1,max:2},concatenate:{min:0,max:-1},expects:{min:1,max:-1},getfeatureset:{min:1,max:2},week:{min:1,max:2},fromjson:{min:1,max:1},length3d:{min:1,max:2},tohex:{min:1,max:1},hash:{min:1,max:1},timezone:{min:1,max:1},timezoneoffset:{min:1,max:1},changetimezone:{min:2,max:2},isoweek:{min:1,max:1},isoweekday:{min:1,max:1},hasvalue:{min:2,max:2},isomonth:{min:1,max:1},isoyear:{min:1,max:1},resize:{min:2,max:3},slice:{min:0,max:-1},splice:{min:0,max:-1},push:{min:2,max:2},pop:{min:1,max:1},includes:{min:2,max:2},array:{min:0,max:2},front:{min:1,max:1},back:{min:1,max:1},insert:{min:3,max:3},erase:{min:2,max:2},split:{min:2,max:4},guid:{min:0,max:1},standardizeguid:{min:2,max:2},today:{min:0,max:0},angle:{min:2,max:3},bearing:{min:2,max:3},urlencode:{min:1,max:1},now:{min:0,max:0},timestamp:{min:0,max:0},day:{min:1,max:1},month:{min:1,max:1},year:{min:1,max:1},hour:{min:1,max:1},second:{min:1,max:1},millisecond:{min:1,max:1},minute:{min:1,max:1},weekday:{min:1,max:1},toutc:{min:1,max:1},tolocal:{min:1,max:1},date:{min:0,max:8},datediff:{min:2,max:4},dateadd:{min:2,max:3},trim:{min:1,max:1},text:{min:1,max:2},left:{min:2,max:2},right:{min:2,max:2},mid:{min:2,max:3},upper:{min:1,max:1},proper:{min:1,max:2},lower:{min:1,max:1},find:{min:2,max:3},iif:{min:3,max:3},decode:{min:2,max:-1},when:{min:2,max:-1},defaultvalue:{min:2,max:3},isempty:{min:1,max:1},domaincode:{min:2,max:4},domainname:{min:2,max:4},polygon:{min:1,max:1},point:{min:1,max:1},polyline:{min:1,max:1},extent:{min:1,max:1},multipoint:{min:1,max:1},ringisclockwise:{min:1,max:1},geometry:{min:1,max:1},count:{min:0,max:-1},number:{min:1,max:2},acos:{min:1,max:1},asin:{min:1,max:1},atan:{min:1,max:1},atan2:{min:2,max:2},ceil:{min:1,max:2},floor:{min:1,max:2},round:{min:1,max:2},cos:{min:1,max:1},exp:{min:1,max:1},log:{min:1,max:1},min:{min:0,max:-1},constrain:{min:3,max:3},console:{min:0,max:-1},max:{min:0,max:-1},pow:{min:2,max:2},random:{min:0,max:0},sqrt:{min:1,max:1},sin:{min:1,max:1},tan:{min:1,max:1},abs:{min:1,max:1},isnan:{min:1,max:1},stdev:{min:0,max:-1},average:{min:0,max:-1},mean:{min:0,max:-1},sum:{min:0,max:-1},variance:{min:0,max:-1},distinct:{min:0,max:-1},first:{min:1,max:1},top:{min:2,max:2},boolean:{min:1,max:1},dictionary:{min:0,max:-1},typeof:{min:1,max:1},reverse:{min:1,max:1},replace:{min:3,max:4},sort:{min:1,max:2},feature:{min:1,max:-1},haskey:{min:2,max:2},indexof:{min:2,max:2},disjoint:{min:2,max:2},intersects:{min:2,max:2},touches:{min:2,max:2},crosses:{min:2,max:2},within:{min:2,max:2},contains:{min:2,max:2},overlaps:{min:2,max:2},equals:{min:2,max:2},relate:{min:3,max:3},intersection:{min:2,max:2},union:{min:1,max:2},difference:{min:2,max:2},symmetricdifference:{min:2,max:2},clip:{min:2,max:2},cut:{min:2,max:2},area:{min:1,max:2},areageodetic:{min:1,max:2},length:{min:1,max:2},lengthgeodetic:{min:1,max:2},distancegeodetic:{min:2,max:3},distance:{min:2,max:3},densify:{min:2,max:3},densifygeodetic:{min:2,max:3},generalize:{min:2,max:4},buffer:{min:2,max:3},buffergeodetic:{min:2,max:3},offset:{min:2,max:6},rotate:{min:2,max:3},issimple:{min:1,max:1},simplify:{min:1,max:1},convexhull:{min:1,max:1},centroid:{min:1,max:1},nearestcoordinate:{min:2,max:2},nearestvertex:{min:2,max:2},isselfintersecting:{min:1,max:1},multiparttosinglepart:{min:1,max:1},setgeometry:{min:2,max:2},portal:{min:1,max:1},getuser:{min:0,max:2},subtypes:{min:1,max:1},subtypecode:{min:1,max:1},subtypename:{min:1,max:1},domain:{min:2,max:3},convertdirection:{min:3,max:3},sqltimestamp:{min:1,max:3},schema:{min:1,max:1},measuretocoordinate:{min:2,max:2},distancetocoordinate:{min:2,max:2},pointtocoordinate:{min:2,max:2}},a={functionDefinitions:new Map,constantDefinitions:new Map},t={functionDefinitions:new Map,constantDefinitions:new Map};for(const h of["pi","infinity"])t.constantDefinitions.set(h,{type:"constant"}),a.constantDefinitions.set(h,{type:"constant"});t.constantDefinitions.set("textformatting",{type:"namespace",key:"textformatting",members:[{key:"backwardslash",type:"constant"},{key:"doublequote",type:"constant"},{key:"forwardslash",type:"constant"},{key:"tab",type:"constant"},{key:"singlequote",type:"constant"},{key:"newline",type:"constant"}]}),a.constantDefinitions.set("textformatting",{type:"namespace",key:"textformatting",members:[{key:"backwardslash",type:"constant"},{key:"tab",type:"constant"},{key:"singlequote",type:"constant"},{key:"doublequote",type:"constant"},{key:"forwardslash",type:"constant"},{key:"newline",type:"constant"}]});for(const h in n){const e=n[h];t.functionDefinitions.set(h,{overloads:[{type:"function",parametersInfo:{min:e.min,max:e.max}}]}),a.functionDefinitions.set(h,{overloads:[{type:"function",parametersInfo:{min:e.min,max:e.max}}]})}const i=new Set(["attachments","featureset","featuresetbyassociation","featuresetbyid","featuresetbyname","featuresetbyportalitem","featuresetbyrelationshipname","featuresetbyurl","filterbysubtypecode","getfeatureset","getfeaturesetinfo","getuser","knowledgegraphbyportalitem","querygraph"]),m=new Set(["area","areageodetic","buffer","buffergeodetic","centroid","clip","contains","convexhull","crosses","cut","densify","densifygeodetic","difference","disjoint","distance","distancegeodetic","distancetocoordinate","equals","generalize","intersection","intersects","issimple","length","length3d","lengthgeodetic","measuretocoordinate","multiparttosinglepart","nearestcoordinate","nearestvertex","offset","overlaps","pointtocoordinate","relate","rotate","simplify","symmetricdifference","touches","union","within"]);function s(e,n){const i="sync"===n?a:t;i.functionDefinitions.has(e.name.toLowerCase())?i.functionDefinitions.get(e.name.toLowerCase())?.overloads.push({type:"function",parametersInfo:{min:e.min,max:e.max}}):i.functionDefinitions.set(e.name.toLowerCase(),{overloads:[{type:"function",parametersInfo:{min:e.min,max:e.max}}]})}function o(e,n){if(e)for(const a of e)r(a,n)}function r(e,n){if(e&&!1!==n(e))switch(e.type){case"ImportDeclaration":o(e.specifiers,n),r(e.source,n);break;case"ExportNamedDeclaration":r(e.declaration,n);break;case"ArrayExpression":o(e.elements,n);break;case"AssignmentExpression":case"BinaryExpression":case"LogicalExpression":r(e.left,n),r(e.right,n);break;case"BlockStatement":case"Program":o(e.body,n);break;case"BreakStatement":case"ContinueStatement":case"EmptyStatement":case"Identifier":case"Literal":break;case"CallExpression":r(e.callee,n),o(e.arguments,n);break;case"ExpressionStatement":r(e.expression,n);break;case"ForInStatement":case"ForOfStatement":r(e.left,n),r(e.right,n),r(e.body,n);break;case"ForStatement":r(e.init,n),r(e.test,n),r(e.update,n),r(e.body,n);break;case"WhileStatement":r(e.test,n),r(e.body,n);break;case"FunctionDeclaration":r(e.id,n),o(e.params,n),r(e.body,n);break;case"IfStatement":r(e.test,n),r(e.consequent,n),r(e.alternate,n);break;case"MemberExpression":r(e.object,n),r(e.property,n);break;case"ObjectExpression":o(e.properties,n);break;case"Property":r(e.key,n),r(e.value,n);break;case"ReturnStatement":case"UnaryExpression":case"UpdateExpression":r(e.argument,n);break;case"VariableDeclaration":o(e.declarations,n);break;case"VariableDeclarator":r(e.id,n),r(e.init,n);break;case"TemplateLiteral":o(e.expressions,n),o(e.quasis,n)}}function c(e){return"Literal"===e?.type&&"string"==typeof e.value}function x(e,n){let a=!1;const t=n.toLowerCase();return r(e,(e=>!a&&("Identifier"===e.type&&e.name&&e.name.toLowerCase()===t&&(a=!0),!0))),a}function l(n){const a=[];return r(n,(n=>("ImportDeclaration"===n.type&&n.source&&n.source.value&&a.push({libname:e(n.specifiers[0].local),source:n.source.value}),!0))),a}function u(e,n){let a=!1;const t=n.toLowerCase();return r(e,(e=>!a&&("CallExpression"!==e.type||"Identifier"!==e.callee.type||!e.callee.name||e.callee.name.toLowerCase()!==t||(a=!0,!1)))),a}function p(n){const a=[];return r(n,(n=>"MemberExpression"!==n.type||"Identifier"!==n.object.type||(("Identifier"===n.property.type||"Literal"===n.property.type&&"string"==typeof n.property.value)&&a.push({varId:e(n.object),memberId:e(n.property)}),!1))),a}function f(n){const a=[];return r(n,(n=>{if("CallExpression"===n.type&&"Identifier"===n.callee.type)switch(e(n.callee)){case"expects":if(n.arguments.length>1){const[t,...i]=n.arguments;if("Identifier"===t?.type){const n=e(t);for(const e of i)c(e)&&a.push({varId:n,memberNamePattern:e.value})}}return!1;case"domainname":case"domaincode":case"domain":case"haskey":case"hasvalue":if(n.arguments.length>=2){const[t,i]=n.arguments;"Identifier"===t?.type&&c(i)&&a.push({varId:e(t),memberNamePattern:i.value})}return!0;case"defaultvalue":if(n.arguments.length>2){const[t,i]=n.arguments;"Identifier"===t?.type&&c(i)&&a.push({varId:e(t),memberNamePattern:i.value})}return!0;default:return!0}return"MemberExpression"!==n.type||"Identifier"!==n.object.type||(n.computed?!!c(n.property)&&(a.push({varId:e(n.object),memberNamePattern:n.property.value}),!1):(a.push({varId:e(n.object),memberNamePattern:n.property.name}),!1))})),a}function d(e,n){const a=[];if(void 0!==n.params&&null!==n.params)for(let t=0;t<n.params.length;t++)a.push("any");return{name:e,return:"any",params:a}}function y(e){const n=[];return r(e,(e=>("CallExpression"===e.type&&"Identifier"===e.callee.type&&n.push(e.callee.name.toLowerCase()),!0))),n}function b(e,n=[]){let a=null;if(void 0===e.usesFeatureSet){null===a&&(a=y(e)),e.usesFeatureSet=!1;for(let n=0;n<a.length;n++)i.has(a[n])&&(e.usesFeatureSet=!0,e.isAsync=!0);if(!1===e.usesFeatureSet&&n&&n.length>0)for(const a of n)if(x(e,a)){e.usesFeatureSet=!0,e.isAsync=!0;break}}if(void 0===e.usesModules){e.usesModules=!1;l(e).length>0&&(e.usesModules=!0)}if(void 0===e.usesGeometry){e.usesGeometry=!1,null===a&&(a=y(e));for(let n=0;n<a.length;n++)m.has(a[n])&&(e.usesGeometry=!0)}}function g(e){const n=y(e);for(let a=0;a<n.length;a++)if(i.has(n[a]))return!0;return!1}export{s as addFunctionDeclaration,d as extractFunctionDeclaration,f as findExpectedFieldLiterals,y as findFunctionCalls,p as findLiteralMemberAccesses,l as findModuleImports,b as findScriptDependencies,t as fullArcadeApiAsync,a as fullArcadeApiSync,u as referencesFunction,x as referencesMember,g as scriptUsesFeatureSet,r as walk};
5
+ import{toSymbolId as e}from"./arcadeEnvironment.js";import"../core/has.js";const n={all:{min:2,max:2},time:{min:0,max:4},dateonly:{min:0,max:3},getenvironment:{min:0,max:0},none:{min:2,max:2},any:{min:2,max:2},reduce:{min:2,max:3},map:{min:2,max:2},filter:{min:2,max:2},fromcodepoint:{min:1,max:-1},fromcharcode:{min:1,max:-1},tocodepoint:{min:1,max:2},tocharcode:{min:1,max:2},concatenate:{min:0,max:-1},expects:{min:1,max:-1},getfeatureset:{min:1,max:2},week:{min:1,max:2},fromjson:{min:1,max:1},length3d:{min:1,max:2},tohex:{min:1,max:1},hash:{min:1,max:1},timezone:{min:1,max:1},timezoneoffset:{min:1,max:1},changetimezone:{min:2,max:2},isoweek:{min:1,max:1},isoweekday:{min:1,max:1},hasvalue:{min:2,max:2},isomonth:{min:1,max:1},isoyear:{min:1,max:1},resize:{min:2,max:3},slice:{min:0,max:-1},splice:{min:0,max:-1},push:{min:2,max:2},pop:{min:1,max:1},includes:{min:2,max:2},array:{min:0,max:2},front:{min:1,max:1},back:{min:1,max:1},insert:{min:3,max:3},erase:{min:2,max:2},split:{min:2,max:4},guid:{min:0,max:1},standardizeguid:{min:2,max:2},today:{min:0,max:0},angle:{min:2,max:3},bearing:{min:2,max:3},urlencode:{min:1,max:1},now:{min:0,max:0},timestamp:{min:0,max:0},day:{min:1,max:1},month:{min:1,max:1},year:{min:1,max:1},hour:{min:1,max:1},second:{min:1,max:1},millisecond:{min:1,max:1},minute:{min:1,max:1},weekday:{min:1,max:1},toutc:{min:1,max:1},tolocal:{min:1,max:1},date:{min:0,max:8},datediff:{min:2,max:4},dateadd:{min:2,max:3},trim:{min:1,max:1},text:{min:1,max:2},left:{min:2,max:2},right:{min:2,max:2},mid:{min:2,max:3},upper:{min:1,max:1},proper:{min:1,max:2},lower:{min:1,max:1},find:{min:2,max:3},iif:{min:3,max:3},decode:{min:2,max:-1},when:{min:2,max:-1},defaultvalue:{min:2,max:3},isempty:{min:1,max:1},domaincode:{min:2,max:4},domainname:{min:2,max:4},polygon:{min:1,max:1},point:{min:1,max:1},polyline:{min:1,max:1},extent:{min:1,max:1},multipoint:{min:1,max:1},ringisclockwise:{min:1,max:1},geometry:{min:1,max:1},count:{min:0,max:-1},number:{min:1,max:2},acos:{min:1,max:1},asin:{min:1,max:1},atan:{min:1,max:1},atan2:{min:2,max:2},ceil:{min:1,max:2},floor:{min:1,max:2},round:{min:1,max:2},cos:{min:1,max:1},exp:{min:1,max:1},log:{min:1,max:1},min:{min:0,max:-1},constrain:{min:3,max:3},console:{min:0,max:-1},max:{min:0,max:-1},pow:{min:2,max:2},random:{min:0,max:0},sqrt:{min:1,max:1},sin:{min:1,max:1},tan:{min:1,max:1},abs:{min:1,max:1},isnan:{min:1,max:1},stdev:{min:0,max:-1},average:{min:0,max:-1},mean:{min:0,max:-1},sum:{min:0,max:-1},variance:{min:0,max:-1},distinct:{min:0,max:-1},first:{min:1,max:1},top:{min:2,max:2},boolean:{min:1,max:1},dictionary:{min:0,max:-1},typeof:{min:1,max:1},reverse:{min:1,max:1},replace:{min:3,max:4},sort:{min:1,max:2},feature:{min:1,max:-1},haskey:{min:2,max:2},indexof:{min:2,max:2},disjoint:{min:2,max:2},intersects:{min:2,max:2},touches:{min:2,max:2},crosses:{min:2,max:2},within:{min:2,max:2},contains:{min:2,max:2},overlaps:{min:2,max:2},equals:{min:2,max:2},relate:{min:3,max:3},intersection:{min:2,max:2},union:{min:1,max:2},difference:{min:2,max:2},symmetricdifference:{min:2,max:2},clip:{min:2,max:2},cut:{min:2,max:2},area:{min:1,max:2},areageodetic:{min:1,max:2},length:{min:1,max:2},lengthgeodetic:{min:1,max:2},distancegeodetic:{min:2,max:3},distance:{min:2,max:3},densify:{min:2,max:3},densifygeodetic:{min:2,max:3},generalize:{min:2,max:4},buffer:{min:2,max:3},buffergeodetic:{min:2,max:3},offset:{min:2,max:6},rotate:{min:2,max:3},issimple:{min:1,max:1},simplify:{min:1,max:1},convexhull:{min:1,max:1},centroid:{min:1,max:1},nearestcoordinate:{min:2,max:2},nearestvertex:{min:2,max:2},isselfintersecting:{min:1,max:1},multiparttosinglepart:{min:1,max:1},setgeometry:{min:2,max:2},portal:{min:1,max:1},getuser:{min:0,max:2},subtypes:{min:1,max:1},subtypecode:{min:1,max:1},subtypename:{min:1,max:1},domain:{min:2,max:3},convertdirection:{min:3,max:3},sqltimestamp:{min:1,max:3},schema:{min:1,max:1},measuretocoordinate:{min:2,max:2},distancetocoordinate:{min:2,max:2},pointtocoordinate:{min:2,max:2}},a={functionDefinitions:new Map,constantDefinitions:new Map},t={functionDefinitions:new Map,constantDefinitions:new Map};for(const k of["pi","infinity"])t.constantDefinitions.set(k,{type:"constant"}),a.constantDefinitions.set(k,{type:"constant"});t.constantDefinitions.set("textformatting",{type:"namespace",key:"textformatting",members:[{key:"backwardslash",type:"constant"},{key:"doublequote",type:"constant"},{key:"forwardslash",type:"constant"},{key:"tab",type:"constant"},{key:"singlequote",type:"constant"},{key:"newline",type:"constant"}]}),a.constantDefinitions.set("textformatting",{type:"namespace",key:"textformatting",members:[{key:"backwardslash",type:"constant"},{key:"tab",type:"constant"},{key:"singlequote",type:"constant"},{key:"doublequote",type:"constant"},{key:"forwardslash",type:"constant"},{key:"newline",type:"constant"}]});for(const k in n){const e=n[k];t.functionDefinitions.set(k,{overloads:[{type:"function",parametersInfo:{min:e.min,max:e.max}}]}),a.functionDefinitions.set(k,{overloads:[{type:"function",parametersInfo:{min:e.min,max:e.max}}]})}const i=new Set(["attachments","featureset","featuresetbyassociation","featuresetbyid","featuresetbyname","featuresetbyportalitem","featuresetbyrelationshipname","featuresetbyurl","filterbysubtypecode","getfeatureset","getfeaturesetinfo","getuser","knowledgegraphbyportalitem","querygraph"]),m=new Set(["translatetext"]),s=new Set(["area","areageodetic","buffer","buffergeodetic","centroid","clip","contains","convexhull","crosses","cut","densify","densifygeodetic","difference","disjoint","distance","distancegeodetic","distancetocoordinate","equals","generalize","intersection","intersects","issimple","length","length3d","lengthgeodetic","measuretocoordinate","multiparttosinglepart","nearestcoordinate","nearestvertex","offset","overlaps","pointtocoordinate","relate","rotate","simplify","symmetricdifference","touches","union","within"]);function o(e,n){const i="sync"===n?a:t;i.functionDefinitions.has(e.name.toLowerCase())?i.functionDefinitions.get(e.name.toLowerCase())?.overloads.push({type:"function",parametersInfo:{min:e.min,max:e.max}}):i.functionDefinitions.set(e.name.toLowerCase(),{overloads:[{type:"function",parametersInfo:{min:e.min,max:e.max}}]})}function r(e,n){if(e)for(const a of e)c(a,n)}function c(e,n){if(e&&!1!==n(e))switch(e.type){case"ImportDeclaration":r(e.specifiers,n),c(e.source,n);break;case"ExportNamedDeclaration":c(e.declaration,n);break;case"ArrayExpression":r(e.elements,n);break;case"AssignmentExpression":case"BinaryExpression":case"LogicalExpression":c(e.left,n),c(e.right,n);break;case"BlockStatement":case"Program":r(e.body,n);break;case"BreakStatement":case"ContinueStatement":case"EmptyStatement":case"Identifier":case"Literal":break;case"CallExpression":c(e.callee,n),r(e.arguments,n);break;case"ExpressionStatement":c(e.expression,n);break;case"ForInStatement":case"ForOfStatement":c(e.left,n),c(e.right,n),c(e.body,n);break;case"ForStatement":c(e.init,n),c(e.test,n),c(e.update,n),c(e.body,n);break;case"WhileStatement":c(e.test,n),c(e.body,n);break;case"FunctionDeclaration":c(e.id,n),r(e.params,n),c(e.body,n);break;case"IfStatement":c(e.test,n),c(e.consequent,n),c(e.alternate,n);break;case"MemberExpression":c(e.object,n),c(e.property,n);break;case"ObjectExpression":r(e.properties,n);break;case"Property":c(e.key,n),c(e.value,n);break;case"ReturnStatement":case"UnaryExpression":case"UpdateExpression":c(e.argument,n);break;case"VariableDeclaration":r(e.declarations,n);break;case"VariableDeclarator":c(e.id,n),c(e.init,n);break;case"TemplateLiteral":r(e.expressions,n),r(e.quasis,n)}}function x(e){return"Literal"===e?.type&&"string"==typeof e.value}function l(e,n){let a=!1;const t=n.toLowerCase();return c(e,(e=>!a&&("Identifier"===e.type&&e.name&&e.name.toLowerCase()===t&&(a=!0),!0))),a}function u(n){const a=[];return c(n,(n=>("ImportDeclaration"===n.type&&n.source&&n.source.value&&a.push({libname:e(n.specifiers[0].local),source:n.source.value}),!0))),a}function p(e,n){let a=!1;const t=n.toLowerCase();return c(e,(e=>!a&&("CallExpression"!==e.type||"Identifier"!==e.callee.type||!e.callee.name||e.callee.name.toLowerCase()!==t||(a=!0,!1)))),a}function f(n){const a=[];return c(n,(n=>"MemberExpression"!==n.type||"Identifier"!==n.object.type||(("Identifier"===n.property.type||"Literal"===n.property.type&&"string"==typeof n.property.value)&&a.push({varId:e(n.object),memberId:e(n.property)}),!1))),a}function d(n){const a=[];return c(n,(n=>{if("CallExpression"===n.type&&"Identifier"===n.callee.type)switch(e(n.callee)){case"expects":if(n.arguments.length>1){const[t,...i]=n.arguments;if("Identifier"===t?.type){const n=e(t);for(const e of i)x(e)&&a.push({varId:n,memberNamePattern:e.value})}}return!1;case"domainname":case"domaincode":case"domain":case"haskey":case"hasvalue":if(n.arguments.length>=2){const[t,i]=n.arguments;"Identifier"===t?.type&&x(i)&&a.push({varId:e(t),memberNamePattern:i.value})}return!0;case"defaultvalue":if(n.arguments.length>2){const[t,i]=n.arguments;"Identifier"===t?.type&&x(i)&&a.push({varId:e(t),memberNamePattern:i.value})}return!0;default:return!0}return"MemberExpression"!==n.type||"Identifier"!==n.object.type||(n.computed?!!x(n.property)&&(a.push({varId:e(n.object),memberNamePattern:n.property.value}),!1):(a.push({varId:e(n.object),memberNamePattern:n.property.name}),!1))})),a}function y(e,n){const a=[];if(void 0!==n.params&&null!==n.params)for(let t=0;t<n.params.length;t++)a.push("any");return{name:e,return:"any",params:a}}function b(e){const n=[];return c(e,(e=>("CallExpression"===e.type&&"Identifier"===e.callee.type&&n.push(e.callee.name.toLowerCase()),!0))),n}function g(e,n=[]){let a=null;if(void 0===e.usesFeatureSet){null===a&&(a=b(e)),e.usesFeatureSet=!1;for(let n=0;n<a.length;n++)i.has(a[n])&&(e.usesFeatureSet=!0,e.isAsync=!0);if(!1===e.usesFeatureSet&&n&&n.length>0)for(const a of n)if(l(e,a)){e.usesFeatureSet=!0,e.isAsync=!0;break}}if(void 0===e.isAsync&&(null===a&&(a=b(e)),a.some((e=>m.has(e)))&&(e.isAsync=!0)),void 0===e.usesModules){e.usesModules=!1;u(e).length>0&&(e.usesModules=!0)}if(void 0===e.usesGeometry){e.usesGeometry=!1,null===a&&(a=b(e));for(let n=0;n<a.length;n++)s.has(a[n])&&(e.usesGeometry=!0)}}function h(e){const n=b(e);for(let a=0;a<n.length;a++)if(i.has(n[a]))return!0;return!1}export{o as addFunctionDeclaration,y as extractFunctionDeclaration,d as findExpectedFieldLiterals,b as findFunctionCalls,f as findLiteralMemberAccesses,u as findModuleImports,g as findScriptDependencies,t as fullArcadeApiAsync,a as fullArcadeApiSync,p as referencesFunction,l as referencesMember,h as scriptUsesFeatureSet,c as walk};
package/arcade.js CHANGED
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.33/esri/copyright.txt for details.
4
4
  */
5
- import e from"./Graphic.js";import{ArcadeDate as t}from"./arcade/ArcadeDate.js";import r from"./arcade/ImmutableArray.js";import"./core/has.js";import{deprecated as a}from"./core/deprecate.js";import n from"./core/Error.js";import{clone as o}from"./core/lang.js";import c from"./core/Logger.js";import{DateOnly as i}from"./core/sql/DateOnly.js";import{TimeOnly as p}from"./core/sql/TimeOnly.js";import s from"./layers/FeatureLayer.js";import u from"./portal/Portal.js";import l from"./rest/support/FeatureSet.js";import{loadArcade as m}from"./support/arcadeOnDemand.js";let y=null;function f(e,t,a,n={}){const o=t.elementType,c="value",i="array"===o.type?[{name:c,type:o.type,elementType:o.elementType}]:"dictionary"===o.type?[{name:c,type:o.type,properties:o.properties}]:[{name:c,type:o.type}];return new r(e.map((e=>{const t={};return g(t,i,{[c]:e},a,n),t[c]})))}function d(e,t,r={}){const a=e instanceof l?new s({source:e.features,geometryType:e.geometryType,fields:e.fields,spatialReference:e.spatialReference}):e;return t.constructFeatureSet(a,r.spatialReference,null,!0,r.lruCache,r.interceptor)}function b(e,t,r={}){const{spatialReference:a,interceptor:n,lruCache:o}=r;return"string"==typeof e?t.createFeatureSetCollectionFromService(e,a,o,n):t.createFeatureSetCollectionFromMap(e,a,o,n)}function v(e,t,r,a={}){const n={};return g(n,t.properties,e,r,a),new y.Dictionary(n)}function g(e,r,a,n,o={}){const c={};for(const t of Object.keys(a))c[t.toLowerCase()]=a[t];for(const s of r){const r=s.name.toLowerCase();if(o.variablesPreProcessed)e[r]=c[r];else switch(s.type){case"array":{const t=c[r];e[r]=null==t?null:f(t,s,n,o);break}case"feature":{const t=c[r];e[r]=null==t?null:y.Feature.createFromGraphic(t,o?.timeZone);break}case"featureSet":{const t=c[r];e[r]=null==t?null:n?d(t,n,o):null;break}case"featureSetCollection":{const t=c[r];e[r]=null==t?null:n?b(t,n,o):null;break}case"dictionary":{const t=c[r];e[r]=null==t?null:v(t,s,n,o);break}case"date":{const a=c[r];e[r]=a?a instanceof t?a:o?.timeZone?t.dateJSAndZoneToArcadeDate(a,o?.timeZone):t.dateJSToArcadeDate(a):null;break}case"dateOnly":{const t=c[r];e[r]=t?t instanceof i?t:i.fromReader(t):null;break}case"time":{const t=c[r];e[r]=t?t instanceof p?t:p.fromReader(t):null;break}case"knowledgeGraph":case"geometry":case"boolean":case"text":case"number":e[r]=c[r];break;case"voxel":{const t=c[r];e[r]=null==t?null:new y.Voxel(t,o?.timeZone);break}}}}function S(e,t){for(const r of e)t.push(r),"dictionary"===r.type&&S(r.properties,t);return t}function w(e,t,r,a,n){const{spatialReference:o,interceptor:c,lruCache:i,console:p,abortSignal:s,timeZone:l,services:m={portal:u.getDefault()}}=r,y={vars:{},spatialReference:o,interceptor:c,timeZone:l,lrucache:i,useAsync:n,services:m,console:p,abortSignal:s};return t?(g(y.vars,e.variables,t,a,r),y):y}function $(t,r){switch(r.getArcadeType(t)){case"number":case"text":case"boolean":case"point":case"polygon":case"polyline":case"multipoint":case"extent":return t;case"date":return t.toJSDate();case"time":case"dateOnly":return t.toString();case"feature":{const r=(t.type,t),a="geometry"in r?r.geometry():null,n="readAttributes"in r?r.readAttributes():r.attributes;return new e({geometry:a,attributes:n})}case"dictionary":{const e=t,a=e.attributes,n={};for(const t of Object.keys(a))n[t]=$(e.field(t),r);return n}case"array":return("toArray"in t?t.toArray():t).map((e=>$(e,r)))}return t}const h={variables:[{name:"$feature",type:"feature"},{name:"$layer",type:"featureSet"},{name:"$datastore",type:"featureSetCollection"},{name:"$map",type:"featureSetCollection"},{name:"$userInput",type:"geometry"},{name:"$graph",type:"knowledgeGraph"},{name:"$view",type:"dictionary",properties:[{name:"scale",type:"number"},{name:"timeProperties",type:"dictionary",properties:[{name:"currentStart",type:"date"},{name:"currentEnd",type:"date"},{name:"startIncluded",type:"boolean"},{name:"endIncluded",type:"boolean"}]}]}]},C={variables:[{name:"$feature",type:"feature"},{name:"$aggregatedFeatures",type:"featureSet"},{name:"$view",type:"dictionary",properties:[{name:"scale",type:"number"},{name:"timeProperties",type:"dictionary",properties:[{name:"currentStart",type:"date"},{name:"currentEnd",type:"date"},{name:"startIncluded",type:"boolean"},{name:"endIncluded",type:"boolean"}]}]}]},x={variables:[{name:"$voxel",type:"voxel"}]},j=new Map([["aggregate-field",{variables:[{name:"$feature",type:"feature"}]}],["form-constraint",{variables:[{name:"$feature",type:"feature"}]}],["feature-z",{variables:[{name:"$feature",type:"feature"}]}],["field-calculation",{variables:[{name:"$feature",type:"feature"},{name:"$datastore",type:"featureSetCollection"}]}],["form-calculation",{variables:[{name:"$feature",type:"feature"},{name:"$originalFeature",type:"feature"},{name:"$layer",type:"featureSet"},{name:"$featureSet",type:"featureSet"},{name:"$datastore",type:"featureSetCollection"},{name:"$map",type:"featureSetCollection"},{name:"$editContext",type:"dictionary",properties:[{name:"editType",type:"text"}]}]}],["labeling",{variables:[{name:"$feature",type:"feature"},{name:"$view",type:"dictionary",properties:[{name:"scale",type:"number"},{name:"timeProperties",type:"dictionary",properties:[{name:"currentStart",type:"date"},{name:"currentEnd",type:"date"},{name:"startIncluded",type:"boolean"},{name:"endIncluded",type:"boolean"}]}]}]}],["popup",h],["popup-element",h],["popup-feature-reduction",C],["popup-element-feature-reduction",C],["visualization",{variables:[{name:"$feature",type:"feature"},{name:"$view",type:"dictionary",properties:[{name:"scale",type:"number"},{name:"timeProperties",type:"dictionary",properties:[{name:"currentStart",type:"date"},{name:"currentEnd",type:"date"},{name:"startIncluded",type:"boolean"},{name:"endIncluded",type:"boolean"}]}]}]}],["popup-voxel",x],["popup-element-voxel",x]]);function A(e){"feature-reduction-popup"===e?(a(c.getLogger("esri.arcade"),'profile name: "feature-reduction-popup"',{replacement:'"popup-feature-reduction"',version:"4.32",warnOnce:!0}),e="popup-feature-reduction"):"feature-reduction-popup-element"===e&&(a(c.getLogger("esri.arcade"),'profile name: "feature-reduction-popup-element"',{replacement:'"popup-element-feature-reduction"',version:"4.32",warnOnce:!0}),e="popup-element-feature-reduction");const t=j.get(e);if(!t){const t=Array.from(j.keys()).map((e=>`'${e}'`)).join(", ");throw new n("createArcadeProfile:invalid-profile-name",`Invalid profile name '${e}'. You must specify one of the following values: ${t}`)}return o(t)}async function k(e,t,r={}){y||(y=await m());const{arcade:a,arcadeUtils:o}=y,{loadScriptDependencies:c,referencesMember:i,scriptIsAsync:p}=a,s=S(t.variables,[]),u=s.filter((e=>"featureSet"===e.type||"featureSetCollection"===e.type)).map((e=>e.name.toLowerCase())),l=a.parseScript(e,u);if(!l)throw new n("arcade:invalid-script","Unable to create SyntaxTree");const f=o.extractFieldNames(l),d=a.scriptTouchesGeometry(l),b=s.map((e=>e.name.toLowerCase())).filter((e=>i(l,e))),v=p(l,u);await c(l,v,u);const g={vars:{},useAsync:v};for(const n of b)g.vars[n]="any";const{lruCache:h}=r,C=a.compileScript(l,g),x=a.featureSetUtils(),{services:j}=r;return{execute:(e,r={})=>{if(v)throw new n("arcade:invalid-execution-mode","Cannot execute the script in synchronous mode");const a=C(w(t,e,{lruCache:h,...r},x,v));return r.rawOutput?a:$(a,o)},executeAsync:async(e,r={})=>{const a=await C(w(t,e,{lruCache:h,services:j,...r},x,v));return r.rawOutput?a:$(a,o)},isAsync:v,variablesUsed:b,fieldsUsed:f,geometryUsed:d,syntaxTree:l}}export{k as createArcadeExecutor,A as createArcadeProfile};
5
+ import e from"./Graphic.js";import{ArcadeDate as t}from"./arcade/ArcadeDate.js";import r from"./arcade/ImmutableArray.js";import"./core/has.js";import{deprecated as a}from"./core/deprecate.js";import n from"./core/Error.js";import{clone as o}from"./core/lang.js";import c from"./core/Logger.js";import{DateOnly as i}from"./core/sql/DateOnly.js";import{TimeOnly as p}from"./core/sql/TimeOnly.js";import s from"./layers/FeatureLayer.js";import u from"./portal/Portal.js";import l from"./rest/support/FeatureSet.js";import{loadArcade as m}from"./support/loadArcade.js";let y=null;function f(e,t,a,n={}){const o=t.elementType,c="value",i="array"===o.type?[{name:c,type:o.type,elementType:o.elementType}]:"dictionary"===o.type?[{name:c,type:o.type,properties:o.properties}]:[{name:c,type:o.type}];return new r(e.map((e=>{const t={};return g(t,i,{[c]:e},a,n),t[c]})))}function d(e,t,r={}){const a=e instanceof l?new s({source:e.features,geometryType:e.geometryType,fields:e.fields,spatialReference:e.spatialReference}):e;return t.constructFeatureSet(a,r.spatialReference,null,!0,r.lruCache,r.interceptor)}function b(e,t,r={}){const{spatialReference:a,interceptor:n,lruCache:o}=r;return"string"==typeof e?t.createFeatureSetCollectionFromService(e,a,o,n):t.createFeatureSetCollectionFromMap(e,a,o,n)}function v(e,t,r,a={}){const n={};return g(n,t.properties,e,r,a),new y.Dictionary(n)}function g(e,r,a,n,o={}){const c={};for(const t of Object.keys(a))c[t.toLowerCase()]=a[t];for(const s of r){const r=s.name.toLowerCase();if(o.variablesPreProcessed)e[r]=c[r];else switch(s.type){case"array":{const t=c[r];e[r]=null==t?null:f(t,s,n,o);break}case"feature":{const t=c[r];e[r]=null==t?null:y.Feature.createFromGraphic(t,o?.timeZone);break}case"featureSet":{const t=c[r];e[r]=null==t?null:n?d(t,n,o):null;break}case"featureSetCollection":{const t=c[r];e[r]=null==t?null:n?b(t,n,o):null;break}case"dictionary":{const t=c[r];e[r]=null==t?null:v(t,s,n,o);break}case"date":{const a=c[r];e[r]=a?a instanceof t?a:o?.timeZone?t.dateJSAndZoneToArcadeDate(a,o?.timeZone):t.dateJSToArcadeDate(a):null;break}case"dateOnly":{const t=c[r];e[r]=t?t instanceof i?t:i.fromReader(t):null;break}case"time":{const t=c[r];e[r]=t?t instanceof p?t:p.fromReader(t):null;break}case"knowledgeGraph":case"geometry":case"boolean":case"text":case"number":e[r]=c[r];break;case"voxel":{const t=c[r];e[r]=null==t?null:new y.Voxel(t,o?.timeZone);break}}}}function S(e,t){for(const r of e)t.push(r),"dictionary"===r.type&&S(r.properties,t);return t}function w(e,t,r,a,n){const{spatialReference:o,interceptor:c,lruCache:i,console:p,abortSignal:s,timeZone:l,services:m={portal:u.getDefault()}}=r,y={vars:{},spatialReference:o,interceptor:c,timeZone:l,lrucache:i,useAsync:n,services:m,console:p,abortSignal:s};return t?(g(y.vars,e.variables,t,a,r),y):y}function $(t,r){switch(r.getArcadeType(t)){case"number":case"text":case"boolean":case"point":case"polygon":case"polyline":case"multipoint":case"extent":return t;case"date":return t.toJSDate();case"time":case"dateOnly":return t.toString();case"feature":{const r=(t.type,t),a="geometry"in r?r.geometry():null,n="readAttributes"in r?r.readAttributes():r.attributes;return new e({geometry:a,attributes:n})}case"dictionary":{const e=t,a=e.attributes,n={};for(const t of Object.keys(a))n[t]=$(e.field(t),r);return n}case"array":return("toArray"in t?t.toArray():t).map((e=>$(e,r)))}return t}const h={variables:[{name:"$feature",type:"feature"},{name:"$layer",type:"featureSet"},{name:"$datastore",type:"featureSetCollection"},{name:"$map",type:"featureSetCollection"},{name:"$userInput",type:"geometry"},{name:"$graph",type:"knowledgeGraph"},{name:"$view",type:"dictionary",properties:[{name:"scale",type:"number"},{name:"timeProperties",type:"dictionary",properties:[{name:"currentStart",type:"date"},{name:"currentEnd",type:"date"},{name:"startIncluded",type:"boolean"},{name:"endIncluded",type:"boolean"}]}]}]},C={variables:[{name:"$feature",type:"feature"},{name:"$aggregatedFeatures",type:"featureSet"},{name:"$view",type:"dictionary",properties:[{name:"scale",type:"number"},{name:"timeProperties",type:"dictionary",properties:[{name:"currentStart",type:"date"},{name:"currentEnd",type:"date"},{name:"startIncluded",type:"boolean"},{name:"endIncluded",type:"boolean"}]}]}]},x={variables:[{name:"$voxel",type:"voxel"}]},A=new Map([["aggregate-field",{variables:[{name:"$feature",type:"feature"}]}],["form-constraint",{variables:[{name:"$feature",type:"feature"}]}],["feature-z",{variables:[{name:"$feature",type:"feature"}]}],["field-calculation",{variables:[{name:"$feature",type:"feature"},{name:"$datastore",type:"featureSetCollection"}]}],["form-calculation",{variables:[{name:"$feature",type:"feature"},{name:"$originalFeature",type:"feature"},{name:"$layer",type:"featureSet"},{name:"$featureSet",type:"featureSet"},{name:"$datastore",type:"featureSetCollection"},{name:"$map",type:"featureSetCollection"},{name:"$editContext",type:"dictionary",properties:[{name:"editType",type:"text"}]}]}],["labeling",{variables:[{name:"$feature",type:"feature"},{name:"$view",type:"dictionary",properties:[{name:"scale",type:"number"},{name:"timeProperties",type:"dictionary",properties:[{name:"currentStart",type:"date"},{name:"currentEnd",type:"date"},{name:"startIncluded",type:"boolean"},{name:"endIncluded",type:"boolean"}]}]}]}],["popup",h],["popup-element",h],["popup-feature-reduction",C],["popup-element-feature-reduction",C],["visualization",{variables:[{name:"$feature",type:"feature"},{name:"$view",type:"dictionary",properties:[{name:"scale",type:"number"},{name:"timeProperties",type:"dictionary",properties:[{name:"currentStart",type:"date"},{name:"currentEnd",type:"date"},{name:"startIncluded",type:"boolean"},{name:"endIncluded",type:"boolean"}]}]}]}],["popup-voxel",x],["popup-element-voxel",x]]);function j(e){"feature-reduction-popup"===e?(a(c.getLogger("esri.arcade"),'profile name: "feature-reduction-popup"',{replacement:'"popup-feature-reduction"',version:"4.32",warnOnce:!0}),e="popup-feature-reduction"):"feature-reduction-popup-element"===e&&(a(c.getLogger("esri.arcade"),'profile name: "feature-reduction-popup-element"',{replacement:'"popup-element-feature-reduction"',version:"4.32",warnOnce:!0}),e="popup-element-feature-reduction");const t=A.get(e);if(!t){const t=Array.from(A.keys()).map((e=>`'${e}'`)).join(", ");throw new n("createArcadeProfile:invalid-profile-name",`Invalid profile name '${e}'. You must specify one of the following values: ${t}`)}return o(t)}async function k(e,t,r={}){y||(y=await m());const{arcade:a,arcadeUtils:o}=y,{loadScriptDependencies:c,referencesMember:i,scriptIsAsync:p}=a,s=S(t.variables,[]),u=s.filter((e=>"featureSet"===e.type||"featureSetCollection"===e.type)).map((e=>e.name.toLowerCase())),l=a.parseScript(e,u);if(!l)throw new n("arcade:invalid-script","Unable to create SyntaxTree");const f=o.extractFieldNames(l),d=a.scriptTouchesGeometry(l),b=s.map((e=>e.name.toLowerCase())).filter((e=>i(l,e))),v=p(l,u);await c(l,v,u);const g={vars:{},useAsync:v};for(const n of b)g.vars[n]="any";const{lruCache:h}=r,C=a.compileScript(l,g),x=a.featureSetUtils(),{services:A}=r;return{execute:(e,r={})=>{if(v)throw new n("arcade:invalid-execution-mode","Cannot execute the script in synchronous mode");const a=C(w(t,e,{lruCache:h,...r},x,v));return r.rawOutput?a:$(a,o)},executeAsync:async(e,r={})=>{const a=await C(w(t,e,{lruCache:h,services:A,...r},x,v));return r.rawOutput?a:$(a,o)},isAsync:v,variablesUsed:b,fieldsUsed:f,geometryUsed:d,syntaxTree:l}}export{k as createArcadeExecutor,j as createArcadeProfile};