@vertigis/arcgis-extensions 38.0.5 → 38.1.0

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 (748) hide show
  1. package/AccessDeniedError.js +1 -1
  2. package/AppConfig.schema.json +35 -39
  3. package/ArgumentMissingError.js +1 -1
  4. package/ArgumentOutOfRangeError.js +1 -1
  5. package/Entity.js +1 -1
  6. package/FailureMode.d.ts +1 -1
  7. package/Hyperlink.js +1 -1
  8. package/LanguageResources.d.ts +1 -3
  9. package/LanguageResources.js +1 -1
  10. package/NotFoundError.js +1 -1
  11. package/PortalUri.js +1 -1
  12. package/data/ArcGISServiceTableExtension.js +1 -1
  13. package/data/Attachment.js +1 -1
  14. package/data/Feature.js +1 -1
  15. package/data/FeatureList.d.ts +3 -3
  16. package/data/FeatureList.js +1 -1
  17. package/data/FeatureSaveError.js +1 -1
  18. package/data/FeatureSet.js +1 -1
  19. package/data/FeatureSettings.js +1 -1
  20. package/data/FeatureSourceBase.js +1 -1
  21. package/data/FeatureStream.js +1 -1
  22. package/data/FieldExtension.js +1 -1
  23. package/data/PopupContentExtension.js +1 -1
  24. package/data/Relationship.js +1 -1
  25. package/data/RelationshipBase.js +1 -1
  26. package/data/Schema.js +1 -1
  27. package/data/Table.js +1 -1
  28. package/data/TableExtension.js +1 -1
  29. package/data/TaskSettings.js +1 -1
  30. package/data/_Relationship.d.ts +3 -3
  31. package/data/_Relationship.js +1 -1
  32. package/data/_TableExtension.js +1 -1
  33. package/data/convert.js +1 -1
  34. package/data/support/DefaultRelationshipFactory.js +1 -1
  35. package/data/support/DefaultTableExtensionFactory.js +1 -1
  36. package/data/support/attachments.js +1 -1
  37. package/docs/html/assets/main.js +56 -52
  38. package/docs/html/assets/search.js +1 -1
  39. package/docs/html/assets/style.css +23 -0
  40. package/docs/html/classes/data_FeatureSet.FeatureSet.html +2 -2
  41. package/docs/html/classes/data_FeatureStream.FeatureStream.html +1 -1
  42. package/docs/html/classes/utilities_ObservableMap.ObservableMap.html +2 -2
  43. package/docs/html/classes/utilities_ObservableSet.ObservableSet.html +2 -2
  44. package/docs/html/classes/utilities_ObservableWeakSet.ObservableWeakSet.html +1 -1
  45. package/docs/html/classes/utilities_asyncIterable.AsyncQueue.html +1 -1
  46. package/docs/html/classes/utilities_date.DateFormatter.html +1 -1
  47. package/docs/html/classes/utilities_string.StringFormatter.html +6 -24
  48. package/docs/html/functions/utilities_string.format.html +2 -18
  49. package/docs/html/interfaces/LanguageResources.LanguageResourcesProperties.html +2 -7
  50. package/docs/html/interfaces/data_support_attachments.AttachmentEnabledLayer.html +4 -6
  51. package/docs/html/interfaces/mapping_BuildingSceneLayerExtension.BuildingSceneLayerProperties.html +1 -1
  52. package/docs/html/interfaces/mapping_FeatureLayerExtension.FeatureLayerProperties.html +1 -1
  53. package/docs/html/interfaces/mapping_FeatureLayerExtensionBase.FeatureLayerBaseProperties.html +1 -1
  54. package/docs/html/interfaces/mapping_PointCloudLayerExtension.PointCloudLayerProperties.html +1 -1
  55. package/docs/html/interfaces/portal_ApplicationProperties.ApplicationProperties.html +15 -12
  56. package/docs/html/interfaces/portal_Background.ColorBackground.html +3 -2
  57. package/docs/html/interfaces/portal_BaseMap.BaseMap-1.html +2 -1
  58. package/docs/html/interfaces/portal_BaseMapLayer.BaseMapLayerBase.html +2 -1
  59. package/docs/html/interfaces/portal_BingLayer.BingLayer.html +2 -1
  60. package/docs/html/interfaces/portal_Bookmark.Bookmark.html +2 -1
  61. package/docs/html/interfaces/portal_BuildingSceneLayer.BuildingSceneLayer-1.html +1 -1
  62. package/docs/html/interfaces/portal_CIMSymbol.CIMSymbol.html +2 -1
  63. package/docs/html/interfaces/portal_CSVLayer.CSVLayer-1.html +3 -2
  64. package/docs/html/interfaces/portal_Camera.Camera-1.html +2 -1
  65. package/docs/html/interfaces/portal_ClassBreaksRenderer.ClassBreakInfo.html +2 -1
  66. package/docs/html/interfaces/portal_ClassBreaksRenderer.ClassBreaksRenderer.html +2 -1
  67. package/docs/html/interfaces/portal_CodedValueDomain.CodedValue.html +1 -1
  68. package/docs/html/interfaces/portal_CodedValueDomain.CodedValueDomain-1.html +1 -1
  69. package/docs/html/interfaces/portal_ColorClassBreakInfo.ColorClassBreakInfo.html +2 -1
  70. package/docs/html/interfaces/portal_ColorUniqueValueInfos.ColorUniqueValueInfos.html +2 -1
  71. package/docs/html/interfaces/portal_DataSource.DataSourceBase.html +2 -2
  72. package/docs/html/interfaces/portal_DefinitionEditor.DefinitionEditor.html +2 -1
  73. package/docs/html/interfaces/portal_DefinitionEditor.Input.html +1 -1
  74. package/docs/html/interfaces/portal_DefinitionEditor.Parameter.html +1 -1
  75. package/docs/html/interfaces/portal_DrawingInfo.DrawingInfo-1.html +2 -1
  76. package/docs/html/interfaces/portal_DynamicDataLayer.DynamicDataLayer.html +2 -2
  77. package/docs/html/interfaces/portal_DynamicMapLayer.DynamicMapLayer.html +1 -1
  78. package/docs/html/interfaces/portal_ElevationInfo.ElevationInfo-1.html +1 -1
  79. package/docs/html/interfaces/portal_ElevationLayer.ElevationLayer-1.html +3 -2
  80. package/docs/html/interfaces/portal_Environment.Environment-1.html +2 -1
  81. package/docs/html/interfaces/portal_Extent.Extent.html +1 -1
  82. package/docs/html/interfaces/portal_ExtrudeSymbol3DLayer.ExtrudeSymbol3DLayer.html +2 -1
  83. package/docs/html/interfaces/portal_Feature.Feature-1.html +2 -1
  84. package/docs/html/interfaces/portal_FeatureCollection.FeatureCollection.html +2 -1
  85. package/docs/html/interfaces/portal_FeatureLayer.FeatureLayer-1.html +3 -2
  86. package/docs/html/interfaces/portal_FeatureSet.FeatureSet.html +2 -1
  87. package/docs/html/interfaces/portal_Field.Field-1.html +1 -1
  88. package/docs/html/interfaces/portal_FieldInfo.FieldInfo.html +2 -1
  89. package/docs/html/interfaces/portal_FillSymbol3DLayer.FillSymbol3DLayer.html +2 -1
  90. package/docs/html/interfaces/portal_FormInfo.FormAttachmentElement.html +1 -1
  91. package/docs/html/interfaces/portal_FormInfo.FormBarcodeScannerInput.html +1 -1
  92. package/docs/html/interfaces/portal_FormInfo.FormComboBoxInput.html +1 -1
  93. package/docs/html/interfaces/portal_FormInfo.FormDateTimePickerInput.html +1 -1
  94. package/docs/html/interfaces/portal_FormInfo.FormExpressionInfo.html +1 -1
  95. package/docs/html/interfaces/portal_FormInfo.FormFieldElement.html +1 -1
  96. package/docs/html/interfaces/portal_FormInfo.FormGroupElement.html +1 -1
  97. package/docs/html/interfaces/portal_FormInfo.FormInfo-1.html +1 -1
  98. package/docs/html/interfaces/portal_FormInfo.FormRadioButtonsInput.html +1 -1
  99. package/docs/html/interfaces/portal_FormInfo.FormRelationshipElement.html +1 -1
  100. package/docs/html/interfaces/portal_FormInfo.FormSwitchInput.html +1 -1
  101. package/docs/html/interfaces/portal_FormInfo.FormTextAreaInput.html +1 -1
  102. package/docs/html/interfaces/portal_FormInfo.FormTextBoxInput.html +1 -1
  103. package/docs/html/interfaces/portal_Format.Format.html +2 -1
  104. package/docs/html/interfaces/portal_GeoRSSLayer.GeoRSSLayer-1.html +3 -2
  105. package/docs/html/interfaces/portal_GroupLayer.GroupLayer-1.html +3 -2
  106. package/docs/html/interfaces/portal_HeatmapRenderer.ColorStop.html +2 -1
  107. package/docs/html/interfaces/portal_HeatmapRenderer.HeatmapRenderer.html +2 -1
  108. package/docs/html/interfaces/portal_IconSymbol3DLayer.IconSymbol3DLayer.html +2 -1
  109. package/docs/html/interfaces/portal_ImageServiceLayer.ImageServiceLayer-1.html +3 -2
  110. package/docs/html/interfaces/portal_ImageServiceVectorLayer.ImageServiceVectorLayer.html +3 -2
  111. package/docs/html/interfaces/portal_InheritedDomain.InheritedDomain-1.html +1 -1
  112. package/docs/html/interfaces/portal_InitialState.InitialState-1.html +2 -1
  113. package/docs/html/interfaces/portal_IntegratedMeshLayer.IntegratedMeshLayer-1.html +3 -2
  114. package/docs/html/interfaces/portal_Item.Item-1.html +3 -2
  115. package/docs/html/interfaces/portal_JoinTableDataSource.JoinTableDataSource.html +2 -2
  116. package/docs/html/interfaces/portal_KMLLayer.KMLLayer-1.html +3 -2
  117. package/docs/html/interfaces/portal_LabelSymbol3D.LabelSymbol3D.html +2 -1
  118. package/docs/html/interfaces/portal_LabelingInfo.LabelingInfo-1.html +3 -2
  119. package/docs/html/interfaces/portal_Layer.Layer-1.html +1 -1
  120. package/docs/html/interfaces/portal_LayerDefinition.FieldOverride.html +1 -1
  121. package/docs/html/interfaces/portal_LayerDefinition.LayerDefinition-1.html +4 -3
  122. package/docs/html/interfaces/portal_LayerDefinition.LayerTimeInfo.html +2 -2
  123. package/docs/html/interfaces/portal_Lighting.SunLighting.html +2 -1
  124. package/docs/html/interfaces/portal_Lighting.VirtualLighting.html +2 -1
  125. package/docs/html/interfaces/portal_LineSymbol3D.LineSymbol3D.html +2 -1
  126. package/docs/html/interfaces/portal_LineSymbol3DLayer.LineSymbol3DLayer.html +2 -1
  127. package/docs/html/interfaces/portal_LocationInfo.LocationInfo.html +2 -1
  128. package/docs/html/interfaces/portal_MapFloorInfo.FacilityLayerInfo.html +1 -1
  129. package/docs/html/interfaces/portal_MapFloorInfo.LevelLayerInfo.html +1 -1
  130. package/docs/html/interfaces/portal_MapFloorInfo.MapFloorInfo-1.html +1 -1
  131. package/docs/html/interfaces/portal_MapFloorInfo.SiteLayerInfo.html +1 -1
  132. package/docs/html/interfaces/portal_MapRangeInfo.MapRangeInfo.html +2 -1
  133. package/docs/html/interfaces/portal_MapServiceLayer.MapServiceLayer-1.html +3 -2
  134. package/docs/html/interfaces/portal_MeshSymbol3D.MeshSymbol3D.html +2 -1
  135. package/docs/html/interfaces/portal_MosaicRule.MosaicRule-1.html +2 -1
  136. package/docs/html/interfaces/portal_Multipoint.Multipoint.html +1 -1
  137. package/docs/html/interfaces/portal_ObjectSymbol3DLayer.ObjectSymbol3DLayer.html +2 -1
  138. package/docs/html/interfaces/portal_OpenStreetMapLayer.OpenStreetMapLayer-1.html +2 -1
  139. package/docs/html/interfaces/portal_OperationalLayer.OperationalLayerBase.html +1 -1
  140. package/docs/html/interfaces/portal_PathSymbol3DLayer.PathSymbol3DLayer.html +2 -1
  141. package/docs/html/interfaces/portal_PictureFillSymbol.PictureFillSymbol.html +2 -1
  142. package/docs/html/interfaces/portal_PictureMarkerSymbol.PictureMarkerSymbol.html +2 -1
  143. package/docs/html/interfaces/portal_Point.Point.html +2 -1
  144. package/docs/html/interfaces/portal_PointCloudBitfieldFilter.PointCloudBitfieldFilter.html +2 -1
  145. package/docs/html/interfaces/portal_PointCloudClassBreaksRenderer.PointCloudClassBreaksRenderer.html +4 -2
  146. package/docs/html/interfaces/portal_PointCloudFixedSizeAlgorithm.PointCloudFixedSizeAlgorithm.html +2 -1
  147. package/docs/html/interfaces/portal_PointCloudLayer.PointCloudLayer-1.html +3 -2
  148. package/docs/html/interfaces/portal_PointCloudRGBRenderer.PointCloudRGBRenderer.html +4 -2
  149. package/docs/html/interfaces/portal_PointCloudRenderer.PointCloudRendererBase.html +4 -2
  150. package/docs/html/interfaces/portal_PointCloudReturnFilter.PointCloudReturnFilter.html +2 -1
  151. package/docs/html/interfaces/portal_PointCloudSplatAlgorithm.PointCloudSplatAlgorithm.html +2 -1
  152. package/docs/html/interfaces/portal_PointCloudStretchRenderer.PointCloudStretchRenderer.html +4 -2
  153. package/docs/html/interfaces/portal_PointCloudUniqueValueRenderer.PointCloudUniqueValueRenderer.html +4 -2
  154. package/docs/html/interfaces/portal_PointCloudValueFilter.PointCloudValueFilter.html +2 -1
  155. package/docs/html/interfaces/portal_PointSymbol3D.PointSymbol3D.html +3 -2
  156. package/docs/html/interfaces/portal_Polygon.Polygon.html +1 -1
  157. package/docs/html/interfaces/portal_PolygonSymbol3D.PolygonSymbol3D.html +2 -1
  158. package/docs/html/interfaces/portal_Polyline.Polyline.html +1 -1
  159. package/docs/html/interfaces/portal_PopupExpressionInfo.PopupExpressionInfo.html +2 -1
  160. package/docs/html/interfaces/portal_PopupInfo.OrderByFields.html +2 -1
  161. package/docs/html/interfaces/portal_PopupInfo.RelatedRecordsInfo.html +2 -1
  162. package/docs/html/interfaces/portal_PredominanceRenderer.PredominanceRenderer.html +2 -1
  163. package/docs/html/interfaces/portal_Presentation.Presentation-1.html +2 -1
  164. package/docs/html/interfaces/portal_QueryTableDataSource.QueryTableDataSource.html +2 -2
  165. package/docs/html/interfaces/portal_RangeDomain.RangeDomain-1.html +1 -1
  166. package/docs/html/interfaces/portal_RangeInfo.RangeInfo.html +2 -1
  167. package/docs/html/interfaces/portal_RasterDataSource.RasterDataSource.html +2 -2
  168. package/docs/html/interfaces/portal_Renderer.AuthoringInfo.html +2 -1
  169. package/docs/html/interfaces/portal_Renderer.ColorRamp.html +1 -1
  170. package/docs/html/interfaces/portal_Renderer.RendererBase.html +2 -1
  171. package/docs/html/interfaces/portal_RenderingRule.RenderingRule-1.html +3 -2
  172. package/docs/html/interfaces/portal_SceneLayer.SceneLayer-1.html +3 -2
  173. package/docs/html/interfaces/portal_SimpleFillSymbol.SimpleFillSymbol.html +2 -1
  174. package/docs/html/interfaces/portal_SimpleLineSymbol.SimpleLineSymbol.html +2 -1
  175. package/docs/html/interfaces/portal_SimpleMarkerSymbol.SimpleMarkerSymbol.html +2 -1
  176. package/docs/html/interfaces/portal_SimpleRenderer.SimpleRenderer.html +2 -1
  177. package/docs/html/interfaces/portal_Slide.Slide-1.html +4 -4
  178. package/docs/html/interfaces/portal_SpatialReference.SpatialReference-1.html +2 -1
  179. package/docs/html/interfaces/portal_StreamLayer.StreamLayer-1.html +2 -2
  180. package/docs/html/interfaces/portal_StyleSymbolReference.StyleSymbolReference.html +2 -1
  181. package/docs/html/interfaces/portal_SubtypeGroupLayer.SubtypeGroupLayer-1.html +3 -2
  182. package/docs/html/interfaces/portal_SubtypeGroupLayer.SubtypeSubtypeGroupLayer.html +2 -2
  183. package/docs/html/interfaces/portal_SubtypeSublayer.SubtypeSublayer-1.html +3 -2
  184. package/docs/html/interfaces/portal_Symbol.Font.html +1 -1
  185. package/docs/html/interfaces/portal_Symbol3D.Material.html +2 -1
  186. package/docs/html/interfaces/portal_Symbol3D.Outline.html +2 -1
  187. package/docs/html/interfaces/portal_Symbol3D.ResourceIconSymbol.html +2 -1
  188. package/docs/html/interfaces/portal_Symbol3D.ResourceObjectSymbol.html +2 -1
  189. package/docs/html/interfaces/portal_Table.Table.html +1 -1
  190. package/docs/html/interfaces/portal_TableDataSource.TableDataSource.html +2 -2
  191. package/docs/html/interfaces/portal_Template.Template-1.html +2 -1
  192. package/docs/html/interfaces/portal_TemporalRenderer.TemporalRenderer.html +2 -1
  193. package/docs/html/interfaces/portal_TextSymbol.TextSymbol.html +2 -1
  194. package/docs/html/interfaces/portal_TextSymbol3DLayer.TextSymbol3DLayer.html +2 -1
  195. package/docs/html/interfaces/portal_TileInfo.TileInfo-1.html +3 -2
  196. package/docs/html/interfaces/portal_TiledImageServiceLayer.TiledImageServiceLayer-1.html +3 -2
  197. package/docs/html/interfaces/portal_TiledMapServiceLayer.TiledMapServiceLayer-1.html +4 -3
  198. package/docs/html/interfaces/portal_Type.Type-1.html +3 -8
  199. package/docs/html/interfaces/portal_UniqueValueFromStyle.UniqueValueFromStyle.html +2 -1
  200. package/docs/html/interfaces/portal_UniqueValueRenderer.UniqueValueInfo.html +2 -1
  201. package/docs/html/interfaces/portal_UniqueValueRenderer.UniqueValueRenderer.html +2 -1
  202. package/docs/html/interfaces/portal_UtilityNetwork.TraceConfiguration.html +1 -1
  203. package/docs/html/interfaces/portal_UtilityNetwork.UtilityNetwork-1.html +1 -1
  204. package/docs/html/interfaces/portal_Value.Value.html +1 -1
  205. package/docs/html/interfaces/portal_VectorTileLayer.VectorTileLayer-1.html +3 -2
  206. package/docs/html/interfaces/portal_VerticalOffset.VerticalOffset.html +1 -1
  207. package/docs/html/interfaces/portal_Viewpoint.Viewpoint-1.html +2 -1
  208. package/docs/html/interfaces/portal_VisualVariable.ColorInfo.html +3 -2
  209. package/docs/html/interfaces/portal_VisualVariable.RotationInfo.html +3 -2
  210. package/docs/html/interfaces/portal_VisualVariable.Size.html +2 -1
  211. package/docs/html/interfaces/portal_VisualVariable.SizeInfo.html +3 -2
  212. package/docs/html/interfaces/portal_VisualVariable.TransparencyInfo.html +2 -1
  213. package/docs/html/interfaces/portal_VisualVariable.VisualVariableBase.html +1 -1
  214. package/docs/html/interfaces/portal_WMSLayer.WMSLayer-1.html +3 -2
  215. package/docs/html/interfaces/portal_WMSSublayer.WMSSublayer-1.html +2 -1
  216. package/docs/html/interfaces/portal_WMTSInfo.WMTSInfo-1.html +1 -1
  217. package/docs/html/interfaces/portal_Weather.CloudyWeather.html +2 -1
  218. package/docs/html/interfaces/portal_Weather.FoggyWeather.html +2 -1
  219. package/docs/html/interfaces/portal_Weather.RainyWeather.html +2 -1
  220. package/docs/html/interfaces/portal_Weather.SnowyWeather.html +2 -1
  221. package/docs/html/interfaces/portal_Weather.SunnyWeather.html +2 -1
  222. package/docs/html/interfaces/portal_WebMap.WebMap-1.html +3 -3
  223. package/docs/html/interfaces/portal_WebScene.WebScene-1.html +5 -3
  224. package/docs/html/interfaces/portal_WebSceneBaseMap.WebSceneBaseMap-1.html +2 -1
  225. package/docs/html/interfaces/portal_WebTileLayer.WebTileLayer-1.html +3 -2
  226. package/docs/html/interfaces/portal_Widgets.FloorFilter.html +1 -1
  227. package/docs/html/interfaces/portal_Widgets.Range.html +1 -1
  228. package/docs/html/interfaces/portal_Widgets.TimeSlider.html +3 -2
  229. package/docs/html/interfaces/portal_Widgets.Widgets.html +2 -1
  230. package/docs/html/interfaces/support_Serializable.PropertyDef.html +2 -2
  231. package/docs/html/interfaces/tasks_identify_IdentifyOptions.IdentifyOptions-1.html +2 -2
  232. package/docs/html/interfaces/tasks_search_SearchOptions.SearchOptions-1.html +2 -2
  233. package/docs/html/interfaces/utilities_array.CompareOptions.html +8 -8
  234. package/docs/html/interfaces/utilities_geometry.GeographicTransformationJson.html +1 -1
  235. package/docs/html/types/portal_DataSource.DataSource.html +1 -0
  236. package/docs/html/types/portal_Domain.Domain-1.html +2 -1
  237. package/docs/html/types/portal_Geometry.Geometry.html +1 -1
  238. package/docs/html/types/portal_PointCloudFilter.PointCloudFilter.html +2 -1
  239. package/docs/html/types/portal_Symbol.Color.html +1 -1
  240. package/docs/html/types/portal_Symbol.Symbol.html +1 -1
  241. package/docs/html/types/portal_Symbol3D.Symbol3D.html +2 -1
  242. package/docs/html/types/portal_VisualVariable.VisualVariable.html +2 -1
  243. package/docs/html/variables/mapping_BasemapExtension.defaultBasemapExtensionFactory.html +2 -2
  244. package/docs/html/variables/version.version.html +1 -1
  245. package/forked-libs/dbf/src/fields.js +1 -1
  246. package/forked-libs/dbf/src/structure.js +1 -1
  247. package/forked-libs/shp-write/src/download.js +1 -1
  248. package/forked-libs/shp-write/src/fields.js +1 -1
  249. package/forked-libs/shp-write/src/geojson.js +1 -1
  250. package/forked-libs/shp-write/src/multipoint.js +1 -1
  251. package/forked-libs/shp-write/src/points.js +1 -1
  252. package/forked-libs/shp-write/src/poly.js +1 -1
  253. package/forked-libs/shp-write/src/write.js +1 -1
  254. package/forked-libs/shp-write/src/zip.js +1 -1
  255. package/layer-preset/LayerPreset.d.ts +1 -1
  256. package/layer-preset/LayerPreset.js +1 -1
  257. package/layer-preset/LayerPresetSettings.d.ts +1 -1
  258. package/layer-preset/LayerPresetSettings.js +1 -1
  259. package/locale/_registry.js +1 -1
  260. package/locale/af.js +1 -1
  261. package/locale/ar-MA.js +1 -1
  262. package/locale/ar-SA.js +1 -1
  263. package/locale/ar-TN.js +1 -1
  264. package/locale/ar.js +1 -1
  265. package/locale/az.js +1 -1
  266. package/locale/be.js +1 -1
  267. package/locale/bg.js +1 -1
  268. package/locale/bn.js +1 -1
  269. package/locale/bs.js +1 -1
  270. package/locale/ca.js +1 -1
  271. package/locale/cs.js +1 -1
  272. package/locale/cv.js +1 -1
  273. package/locale/cy.js +1 -1
  274. package/locale/da.js +1 -1
  275. package/locale/de-AT.js +1 -1
  276. package/locale/de.js +1 -1
  277. package/locale/el.js +1 -1
  278. package/locale/en-AU.js +1 -1
  279. package/locale/en-CA.js +1 -1
  280. package/locale/en-GB.js +1 -1
  281. package/locale/en.js +1 -1
  282. package/locale/es.js +1 -1
  283. package/locale/et.js +1 -1
  284. package/locale/eu.js +1 -1
  285. package/locale/fa.js +1 -1
  286. package/locale/fi.js +1 -1
  287. package/locale/fo.js +1 -1
  288. package/locale/fr-CA.js +1 -1
  289. package/locale/fr.js +1 -1
  290. package/locale/gl.js +1 -1
  291. package/locale/he.js +1 -1
  292. package/locale/hi.js +1 -1
  293. package/locale/hr.js +1 -1
  294. package/locale/hu.js +1 -1
  295. package/locale/hy.js +1 -1
  296. package/locale/id.js +1 -1
  297. package/locale/inv.js +1 -1
  298. package/locale/is.js +1 -1
  299. package/locale/it.js +1 -1
  300. package/locale/ja.js +1 -1
  301. package/locale/ka.js +1 -1
  302. package/locale/km.js +1 -1
  303. package/locale/ko.js +1 -1
  304. package/locale/language.js +1 -1
  305. package/locale/lt.js +1 -1
  306. package/locale/lv.js +1 -1
  307. package/locale/mk.js +1 -1
  308. package/locale/ml.js +1 -1
  309. package/locale/mr.js +1 -1
  310. package/locale/ms-MY.js +1 -1
  311. package/locale/ms.js +1 -1
  312. package/locale/my.js +1 -1
  313. package/locale/nb.js +1 -1
  314. package/locale/ne.js +1 -1
  315. package/locale/nl.js +1 -1
  316. package/locale/nn.js +1 -1
  317. package/locale/no.js +1 -1
  318. package/locale/pl.js +1 -1
  319. package/locale/pt-BR.js +1 -1
  320. package/locale/pt.js +1 -1
  321. package/locale/ro.js +1 -1
  322. package/locale/ru.js +1 -1
  323. package/locale/si.js +1 -1
  324. package/locale/sk.js +1 -1
  325. package/locale/sl.js +1 -1
  326. package/locale/sq.js +1 -1
  327. package/locale/sr-Cyrl.js +1 -1
  328. package/locale/sr-ME.js +1 -1
  329. package/locale/sr.js +1 -1
  330. package/locale/sv.js +1 -1
  331. package/locale/ta.js +1 -1
  332. package/locale/th.js +1 -1
  333. package/locale/tl.js +1 -1
  334. package/locale/tr.js +1 -1
  335. package/locale/tzm-Latn.js +1 -1
  336. package/locale/tzm.js +1 -1
  337. package/locale/uk.js +1 -1
  338. package/locale/uz.js +1 -1
  339. package/locale/vi.js +1 -1
  340. package/locale/zh-TW.js +1 -1
  341. package/locale/zh.js +1 -1
  342. package/locale.js +1 -1
  343. package/mapping/ArcGISSublayerExtension.js +1 -1
  344. package/mapping/BasemapExtension.js +1 -1
  345. package/mapping/Bookmark.d.ts +1 -1
  346. package/mapping/Bookmark.js +1 -1
  347. package/mapping/BuildingComponentSublayerExtension.js +1 -1
  348. package/mapping/BuildingGroupSublayerExtension.js +1 -1
  349. package/mapping/BuildingSceneLayerExtension.js +1 -1
  350. package/mapping/BuildingSublayerExtension.js +1 -1
  351. package/mapping/CSVLayerExtension.js +1 -1
  352. package/mapping/ElevationLayerExtension.js +1 -1
  353. package/mapping/FeatureCollectionLayerExtension.js +1 -1
  354. package/mapping/FeatureLayerExtension.js +1 -1
  355. package/mapping/FeatureLayerExtensionBase.js +1 -1
  356. package/mapping/GeoRSSLayerExtension.js +1 -1
  357. package/mapping/GraphicsLayerExtension.js +1 -1
  358. package/mapping/GroundExtension.d.ts +1 -1
  359. package/mapping/GroundExtension.js +1 -1
  360. package/mapping/GroupLayerExtension.js +1 -1
  361. package/mapping/ImageryLayerExtension.js +1 -1
  362. package/mapping/ImageryTileLayerExtension.js +1 -1
  363. package/mapping/IntegratedMeshLayerExtension.js +1 -1
  364. package/mapping/KMLLayerExtension.js +1 -1
  365. package/mapping/KMLSublayerExtension.js +1 -1
  366. package/mapping/LayerExtension.js +1 -1
  367. package/mapping/MapConstraints.js +1 -1
  368. package/mapping/MapExtension.d.ts +5 -5
  369. package/mapping/MapExtension.js +1 -1
  370. package/mapping/MapImageLayerExtension.d.ts +1 -1
  371. package/mapping/MapImageLayerExtension.js +1 -1
  372. package/mapping/MapImageSublayerExtension.js +1 -1
  373. package/mapping/OpenStreetMapLayerExtension.js +1 -1
  374. package/mapping/PointCloudLayerExtension.js +1 -1
  375. package/mapping/SceneLayerExtension.js +1 -1
  376. package/mapping/StreamLayerExtension.js +1 -1
  377. package/mapping/SublayerExtension.js +1 -1
  378. package/mapping/SubtypeGroupLayerExtension.js +1 -1
  379. package/mapping/SubtypeSublayerExtension.js +1 -1
  380. package/mapping/TileLayerExtension.js +1 -1
  381. package/mapping/TileSublayerExtension.js +1 -1
  382. package/mapping/UnsupportedLayerExtension.js +1 -1
  383. package/mapping/VectorTileLayerExtension.js +1 -1
  384. package/mapping/WMSLayerExtension.js +1 -1
  385. package/mapping/WMSSublayerExtension.js +1 -1
  386. package/mapping/WMTSLayerExtension.js +1 -1
  387. package/mapping/WMTSSublayerExtension.js +1 -1
  388. package/mapping/WebTileLayerExtension.js +1 -1
  389. package/mapping/_LayerExtension.d.ts +1 -1
  390. package/mapping/_LayerExtension.js +1 -1
  391. package/mapping/_SublayerExtension.d.ts +1 -1
  392. package/mapping/_SublayerExtension.js +1 -1
  393. package/mapping/convert.js +1 -1
  394. package/mapping/support/ArrayWrappedCollection.js +1 -1
  395. package/mapping/support/DefaultLayerExtensionFactory.js +1 -1
  396. package/mapping/support/DefaultSublayerExtensionFactory.js +1 -1
  397. package/mapping/support/LayerListSettings.js +1 -1
  398. package/mapping/support/PopupTemplateFeatureSettings.js +1 -1
  399. package/mapping/support/WfsCapabilities.js +1 -1
  400. package/mapping/support/WfsFeatureType.js +1 -1
  401. package/mapping/support/_LayerExtensionCollection.js +1 -1
  402. package/mapping/support/_SublayerExtensionCollection.js +1 -1
  403. package/mapping/support/_kml.js +1 -1
  404. package/mapping/support/ogc.js +1 -1
  405. package/menus/Menu.js +1 -1
  406. package/menus/MenuItem.js +1 -1
  407. package/package.json +36 -35
  408. package/portal/ApplicationProperties.d.ts +16 -13
  409. package/portal/Background.d.ts +3 -2
  410. package/portal/Background.js +1 -1
  411. package/portal/BaseMap.d.ts +1 -0
  412. package/portal/BaseMap.js +1 -1
  413. package/portal/BaseMapLayer.d.ts +3 -2
  414. package/portal/BingLayer.d.ts +1 -0
  415. package/portal/Bookmark.d.ts +1 -0
  416. package/portal/BuildingSceneLayer.d.ts +1 -1
  417. package/portal/BuildingSceneLayer.js +1 -1
  418. package/portal/BuildingSceneSublayer.js +1 -1
  419. package/portal/CIMSymbol.d.ts +1 -0
  420. package/portal/CSVLayer.d.ts +1 -0
  421. package/portal/CSVLayer.js +1 -1
  422. package/portal/Camera.d.ts +1 -0
  423. package/portal/Camera.js +1 -1
  424. package/portal/ClassBreaksRenderer.d.ts +4 -2
  425. package/portal/CodedValueDomain.d.ts +2 -2
  426. package/portal/CodedValueDomain.js +1 -1
  427. package/portal/ColorClassBreakInfo.d.ts +1 -0
  428. package/portal/ColorUniqueValueInfos.d.ts +1 -0
  429. package/portal/DataSource.d.ts +5 -4
  430. package/portal/DefinitionEditor.d.ts +3 -2
  431. package/portal/Domain.d.ts +3 -2
  432. package/portal/Domain.js +1 -1
  433. package/portal/DrawingInfo.d.ts +1 -0
  434. package/portal/DrawingInfo.js +1 -1
  435. package/portal/DynamicDataLayer.d.ts +2 -2
  436. package/portal/DynamicMapLayer.d.ts +1 -1
  437. package/portal/Edges.d.ts +1 -1
  438. package/portal/Edges.js +1 -1
  439. package/portal/Effect.d.ts +2 -2
  440. package/portal/ElevationInfo.d.ts +2 -2
  441. package/portal/ElevationInfo.js +1 -1
  442. package/portal/ElevationLayer.d.ts +1 -0
  443. package/portal/ElevationLayer.js +1 -1
  444. package/portal/Environment.d.ts +1 -0
  445. package/portal/Environment.js +1 -1
  446. package/portal/Extent.d.ts +1 -1
  447. package/portal/ExtrudeSymbol3DLayer.d.ts +1 -0
  448. package/portal/Feature.d.ts +1 -0
  449. package/portal/Feature.js +1 -1
  450. package/portal/FeatureCollection.d.ts +1 -0
  451. package/portal/FeatureLayer.d.ts +2 -1
  452. package/portal/FeatureLayer.js +1 -1
  453. package/portal/FeatureReduction.d.ts +1 -1
  454. package/portal/FeatureReduction.js +1 -1
  455. package/portal/FeatureSet.d.ts +1 -0
  456. package/portal/Field.d.ts +2 -2
  457. package/portal/Field.js +1 -1
  458. package/portal/FieldInfo.d.ts +2 -1
  459. package/portal/FillSymbol3DLayer.d.ts +1 -0
  460. package/portal/FormInfo.d.ts +13 -13
  461. package/portal/FormInfo.js +1 -1
  462. package/portal/Format.d.ts +2 -1
  463. package/portal/GeoRSSLayer.d.ts +1 -0
  464. package/portal/GeoRSSLayer.js +1 -1
  465. package/portal/Geometry.d.ts +3 -3
  466. package/portal/Geometry.js +1 -1
  467. package/portal/Ground.d.ts +1 -1
  468. package/portal/Ground.js +1 -1
  469. package/portal/GroupLayer.d.ts +2 -1
  470. package/portal/GroupLayer.js +1 -1
  471. package/portal/HeatmapRenderer.d.ts +2 -0
  472. package/portal/IconSymbol3DLayer.d.ts +1 -0
  473. package/portal/ImageServiceLayer.d.ts +1 -0
  474. package/portal/ImageServiceLayer.js +1 -1
  475. package/portal/ImageServiceVectorLayer.d.ts +1 -0
  476. package/portal/InheritedDomain.d.ts +1 -1
  477. package/portal/InheritedDomain.js +1 -1
  478. package/portal/InitialState.d.ts +1 -0
  479. package/portal/InitialState.js +1 -1
  480. package/portal/IntegratedMeshLayer.d.ts +1 -0
  481. package/portal/IntegratedMeshLayer.js +1 -1
  482. package/portal/Item.d.ts +2 -1
  483. package/portal/Item.js +1 -1
  484. package/portal/JoinTableDataSource.d.ts +2 -2
  485. package/portal/KMLLayer.d.ts +1 -0
  486. package/portal/KMLLayer.js +1 -1
  487. package/portal/LabelSymbol3D.d.ts +1 -0
  488. package/portal/LabelingInfo.d.ts +3 -2
  489. package/portal/LabelingInfo.js +1 -1
  490. package/portal/Layer.d.ts +1 -1
  491. package/portal/Layer.js +1 -1
  492. package/portal/LayerBase.js +1 -1
  493. package/portal/LayerDefinition.d.ts +8 -7
  494. package/portal/LayerDefinition.js +1 -1
  495. package/portal/Lighting.d.ts +3 -1
  496. package/portal/Lighting.js +1 -1
  497. package/portal/LineSymbol3D.d.ts +1 -0
  498. package/portal/LineSymbol3DLayer.d.ts +1 -0
  499. package/portal/LocationInfo.d.ts +1 -0
  500. package/portal/MapFloorInfo.d.ts +4 -4
  501. package/portal/MapFloorInfo.js +1 -1
  502. package/portal/MapRangeInfo.d.ts +1 -0
  503. package/portal/MapServiceLayer.d.ts +1 -0
  504. package/portal/MapServiceLayer.js +1 -1
  505. package/portal/MediaInfo.d.ts +1 -1
  506. package/portal/MediaInfo.js +1 -1
  507. package/portal/MeshSymbol3D.d.ts +1 -0
  508. package/portal/MosaicRule.d.ts +3 -2
  509. package/portal/MosaicRule.js +1 -1
  510. package/portal/Multipoint.d.ts +1 -1
  511. package/portal/ObjectSymbol3DLayer.d.ts +1 -0
  512. package/portal/OpenStreetMapLayer.d.ts +1 -0
  513. package/portal/OpenStreetMapLayer.js +1 -1
  514. package/portal/OperationalLayer.d.ts +3 -3
  515. package/portal/PathSymbol3DLayer.d.ts +1 -0
  516. package/portal/PictureFillSymbol.d.ts +1 -0
  517. package/portal/PictureMarkerSymbol.d.ts +1 -0
  518. package/portal/Point.d.ts +2 -1
  519. package/portal/PointCloudBitfieldFilter.d.ts +1 -0
  520. package/portal/PointCloudClassBreaksRenderer.d.ts +1 -0
  521. package/portal/PointCloudFilter.d.ts +2 -1
  522. package/portal/PointCloudFixedSizeAlgorithm.d.ts +1 -0
  523. package/portal/PointCloudLayer.d.ts +1 -0
  524. package/portal/PointCloudLayer.js +1 -1
  525. package/portal/PointCloudRGBRenderer.d.ts +1 -0
  526. package/portal/PointCloudRenderer.d.ts +3 -1
  527. package/portal/PointCloudRenderer.js +1 -1
  528. package/portal/PointCloudReturnFilter.d.ts +1 -0
  529. package/portal/PointCloudSplatAlgorithm.d.ts +1 -0
  530. package/portal/PointCloudStretchRenderer.d.ts +1 -0
  531. package/portal/PointCloudUniqueValueRenderer.d.ts +1 -0
  532. package/portal/PointCloudValueFilter.d.ts +1 -0
  533. package/portal/PointSymbol3D.d.ts +2 -1
  534. package/portal/Polygon.d.ts +1 -1
  535. package/portal/PolygonSymbol3D.d.ts +1 -0
  536. package/portal/Polyline.d.ts +1 -1
  537. package/portal/PopupExpressionInfo.d.ts +2 -1
  538. package/portal/PopupInfo.d.ts +3 -1
  539. package/portal/PopupInfo.js +1 -1
  540. package/portal/PredominanceRenderer.d.ts +1 -0
  541. package/portal/Presentation.d.ts +1 -0
  542. package/portal/Presentation.js +1 -1
  543. package/portal/QueryTableDataSource.d.ts +1 -1
  544. package/portal/RangeDomain.d.ts +1 -1
  545. package/portal/RangeDomain.js +1 -1
  546. package/portal/RangeInfo.d.ts +1 -0
  547. package/portal/RasterDataSource.d.ts +1 -1
  548. package/portal/Renderer.d.ts +8 -6
  549. package/portal/Renderer.js +1 -1
  550. package/portal/RenderingRule.d.ts +3 -2
  551. package/portal/RenderingRule.js +1 -1
  552. package/portal/SceneLayer.d.ts +1 -0
  553. package/portal/SceneLayer.js +1 -1
  554. package/portal/SimpleFillSymbol.d.ts +2 -1
  555. package/portal/SimpleLineSymbol.d.ts +2 -1
  556. package/portal/SimpleMarkerSymbol.d.ts +2 -1
  557. package/portal/SimpleRenderer.d.ts +1 -0
  558. package/portal/Slide.d.ts +4 -4
  559. package/portal/Slide.js +1 -1
  560. package/portal/SpatialReference.d.ts +1 -0
  561. package/portal/SpatialReference.js +1 -1
  562. package/portal/StreamLayer.d.ts +1 -1
  563. package/portal/StreamLayer.js +1 -1
  564. package/portal/StyleSymbolReference.d.ts +1 -0
  565. package/portal/SubtypeGroupLayer.d.ts +3 -2
  566. package/portal/SubtypeGroupLayer.js +1 -1
  567. package/portal/SubtypeSublayer.d.ts +1 -0
  568. package/portal/SubtypeSublayer.js +1 -1
  569. package/portal/Symbol.d.ts +11 -11
  570. package/portal/Symbol.js +1 -1
  571. package/portal/Symbol3D.d.ts +7 -2
  572. package/portal/Table.d.ts +3 -3
  573. package/portal/Table.js +1 -1
  574. package/portal/TableDataSource.d.ts +1 -1
  575. package/portal/Template.d.ts +2 -1
  576. package/portal/Template.js +1 -1
  577. package/portal/TemporalRenderer.d.ts +1 -0
  578. package/portal/TextSymbol.d.ts +1 -0
  579. package/portal/TextSymbol3DLayer.d.ts +1 -0
  580. package/portal/TileInfo.d.ts +2 -1
  581. package/portal/TileInfo.js +1 -1
  582. package/portal/TiledImageServiceLayer.d.ts +1 -0
  583. package/portal/TiledImageServiceLayer.js +1 -1
  584. package/portal/TiledMapServiceLayer.d.ts +2 -1
  585. package/portal/TiledMapServiceLayer.js +1 -1
  586. package/portal/Type.d.ts +2 -4
  587. package/portal/Type.js +1 -1
  588. package/portal/UniqueValueFromStyle.d.ts +1 -0
  589. package/portal/UniqueValueRenderer.d.ts +2 -0
  590. package/portal/UtilityNetwork.d.ts +2 -2
  591. package/portal/UtilityNetwork.js +1 -1
  592. package/portal/Value.d.ts +1 -1
  593. package/portal/VectorFieldRenderer.d.ts +1 -1
  594. package/portal/VectorTileLayer.d.ts +1 -0
  595. package/portal/VectorTileLayer.js +1 -1
  596. package/portal/VerticalOffset.d.ts +1 -1
  597. package/portal/Viewpoint.d.ts +1 -0
  598. package/portal/Viewpoint.js +1 -1
  599. package/portal/VisualVariable.d.ts +10 -4
  600. package/portal/WMSLayer.d.ts +1 -0
  601. package/portal/WMSLayer.js +1 -1
  602. package/portal/WMSSublayer.d.ts +1 -0
  603. package/portal/WMSSublayer.js +1 -1
  604. package/portal/WMTSInfo.d.ts +1 -1
  605. package/portal/WMTSInfo.js +1 -1
  606. package/portal/Weather.d.ts +6 -1
  607. package/portal/Weather.js +1 -1
  608. package/portal/WebMap.d.ts +3 -3
  609. package/portal/WebMap.js +1 -1
  610. package/portal/WebScene.d.ts +3 -1
  611. package/portal/WebScene.js +1 -1
  612. package/portal/WebSceneBaseMap.d.ts +1 -0
  613. package/portal/WebSceneBaseMap.js +1 -1
  614. package/portal/WebTileLayer.d.ts +1 -0
  615. package/portal/WebTileLayer.js +1 -1
  616. package/portal/Widgets.d.ts +6 -4
  617. package/portal/Widgets.js +1 -1
  618. package/portal/_LayerBase.d.ts +2 -2
  619. package/portal/_layerHelper.js +1 -1
  620. package/portal/_utils.js +1 -1
  621. package/support/Action.d.ts +4 -4
  622. package/support/ArcGISRequestHelper.js +1 -1
  623. package/support/Cancellable.d.ts +1 -1
  624. package/support/Cancellable.js +1 -1
  625. package/support/FormatSettings.js +1 -1
  626. package/support/InitializableBase.d.ts +1 -1
  627. package/support/InitializableBase.js +1 -1
  628. package/support/InitializableCollectionProxy.js +1 -1
  629. package/support/InitializeError.js +1 -1
  630. package/support/Observable.js +1 -1
  631. package/support/ReadOnlyInitializableCollection.js +1 -1
  632. package/support/Serializable.d.ts +4 -4
  633. package/support/Serializable.js +1 -1
  634. package/support/Settings.js +1 -1
  635. package/support/_ArcGISRelationshipCollection.js +1 -1
  636. package/support/_esriInternal.js +1 -1
  637. package/support/_graphicsQuery.js +1 -1
  638. package/support/_query.js +1 -1
  639. package/support/_requestCache.js +1 -1
  640. package/support/_restApiJson.d.ts +1 -1
  641. package/support/esri.d.ts +76 -76
  642. package/support/esri.js +1 -1
  643. package/tasks/geocoding/ArcGISGeocoder.js +1 -1
  644. package/tasks/geocoding/Geocoder.d.ts +1 -1
  645. package/tasks/geocoding/Geocoder.js +1 -1
  646. package/tasks/geocoding/utilities.js +1 -1
  647. package/tasks/identify/ArcGISSublayerQueryIdentifyProvider.js +1 -1
  648. package/tasks/identify/BuildingComponentSublayerClientSideIdentifyProvider.js +1 -1
  649. package/tasks/identify/BuildingComponentSublayerHitTestIdentifyProvider.js +1 -1
  650. package/tasks/identify/CSVLayer3DHitTestIdentifyProvider.js +1 -1
  651. package/tasks/identify/CSVLayerClientSideQueryIdentifyProvider.js +1 -1
  652. package/tasks/identify/ClientSideIdentifyProvider.d.ts +2 -2
  653. package/tasks/identify/ClientSideIdentifyProvider.js +1 -1
  654. package/tasks/identify/FeatureLayer3DHitTestIdentifyProvider.js +1 -1
  655. package/tasks/identify/FeatureLayerClientSideIdentifyProvider.js +1 -1
  656. package/tasks/identify/FeatureLayerQueryIdentifyProvider.js +1 -1
  657. package/tasks/identify/GeoRSSLayerIdentifyProvider.js +1 -1
  658. package/tasks/identify/GraphicsLayerQueryIdentifyProvider.js +1 -1
  659. package/tasks/identify/HitTestIdentifyProvider.d.ts +2 -2
  660. package/tasks/identify/HitTestIdentifyProvider.js +1 -1
  661. package/tasks/identify/IdentifyError.js +1 -1
  662. package/tasks/identify/IdentifyProviderBase.js +1 -1
  663. package/tasks/identify/IdentifyService.js +1 -1
  664. package/tasks/identify/ImageryLayerIdentifyProvider.js +1 -1
  665. package/tasks/identify/KMLLayerQueryIdentifyProvider.js +1 -1
  666. package/tasks/identify/PointCloudLayerHitTestIdentifyProvider.js +1 -1
  667. package/tasks/identify/SceneLayerClientSideIdentifyProvider.js +1 -1
  668. package/tasks/identify/SceneLayerHitTestIdentifyProvider.js +1 -1
  669. package/tasks/identify/SceneLayerQueryIdentifyProvider.js +1 -1
  670. package/tasks/identify/StreamLayerClientSideQueryIdentifyProvider.js +1 -1
  671. package/tasks/identify/StreamLayerQueryIdentifyProvider.js +1 -1
  672. package/tasks/identify/SubtypeSublayerClientSideIdentifyProvider.js +1 -1
  673. package/tasks/identify/SubtypeSublayerQueryIdentifyProvider.js +1 -1
  674. package/tasks/identify/WMSSublayerIdentifyProvider.js +1 -1
  675. package/tasks/query/ArcGISRelationship.js +1 -1
  676. package/tasks/query/ArcGISServiceTableQueryProvider.js +1 -1
  677. package/tasks/query/ArcGISSublayerQueryProvider.js +1 -1
  678. package/tasks/query/BuildingComponentSublayerClientSideQueryProvider.js +1 -1
  679. package/tasks/query/CSVLayerClientSideQueryProvider.js +1 -1
  680. package/tasks/query/CSVLayerQueryProvider.js +1 -1
  681. package/tasks/query/ClientSideQueryProvider.d.ts +2 -2
  682. package/tasks/query/ClientSideQueryProvider.js +1 -1
  683. package/tasks/query/FeatureLayerQueryProvider.js +1 -1
  684. package/tasks/query/GeoRSSLayerQueryProvider.js +1 -1
  685. package/tasks/query/GraphicsLayerQueryProvider.js +1 -1
  686. package/tasks/query/ImageryLayerQueryProvider.js +1 -1
  687. package/tasks/query/KMLLayerQueryProvider.js +1 -1
  688. package/tasks/query/QueryBasedRelationship.js +1 -1
  689. package/tasks/query/QueryError.js +1 -1
  690. package/tasks/query/QueryProviderBase.js +1 -1
  691. package/tasks/query/QueryService.js +1 -1
  692. package/tasks/query/SceneLayerClientSideQueryProvider.js +1 -1
  693. package/tasks/query/SceneLayerQueryProvider.js +1 -1
  694. package/tasks/query/StreamLayerClientSideQueryProvider.js +1 -1
  695. package/tasks/query/StreamLayerQueryProvider.js +1 -1
  696. package/tasks/query/SubtypeSublayerQueryProvider.js +1 -1
  697. package/tasks/search/ArcGISGeocoderSearchProvider.js +1 -1
  698. package/tasks/search/GeocoderSearchProvider.js +1 -1
  699. package/tasks/search/QuerySearchProvider.js +1 -1
  700. package/tasks/search/SearchError.js +1 -1
  701. package/tasks/search/SearchProviderBase.js +1 -1
  702. package/tasks/search/SearchService.js +1 -1
  703. package/tasks/search/_utilities.js +1 -1
  704. package/utilities/CollectionProxy.js +1 -1
  705. package/utilities/CopyOnWriteCollection.js +1 -1
  706. package/utilities/GeometryServiceError.js +1 -1
  707. package/utilities/MapTransformCollection.js +1 -1
  708. package/utilities/ObservableMap.js +1 -1
  709. package/utilities/ObservableSet.js +1 -1
  710. package/utilities/ObservableWeakSet.js +1 -1
  711. package/utilities/ReadOnlyCollection.js +1 -1
  712. package/utilities/ReadOnlyMap.js +1 -1
  713. package/utilities/_layers.js +1 -1
  714. package/utilities/_ogc.js +1 -1
  715. package/utilities/arcade.js +1 -1
  716. package/utilities/array.js +1 -1
  717. package/utilities/asyncIterable.d.ts +1 -1
  718. package/utilities/asyncIterable.js +1 -1
  719. package/utilities/basemaps.js +1 -1
  720. package/utilities/checkArg.js +1 -1
  721. package/utilities/collection.js +1 -1
  722. package/utilities/date.js +1 -1
  723. package/utilities/esri.js +1 -1
  724. package/utilities/extensions.js +1 -1
  725. package/utilities/geometry.d.ts +2 -2
  726. package/utilities/geometry.js +1 -1
  727. package/utilities/iterable.js +1 -1
  728. package/utilities/log.d.ts +1 -1
  729. package/utilities/log.js +1 -1
  730. package/utilities/mapping.js +1 -1
  731. package/utilities/math.js +1 -1
  732. package/utilities/number.js +1 -1
  733. package/utilities/object.js +1 -1
  734. package/utilities/portal.d.ts +3 -3
  735. package/utilities/portal.js +1 -1
  736. package/utilities/promise.d.ts +1 -1
  737. package/utilities/promise.js +1 -1
  738. package/utilities/query.js +1 -1
  739. package/utilities/relationships.js +1 -1
  740. package/utilities/scaleRanges.d.ts +1 -1
  741. package/utilities/set.js +1 -1
  742. package/utilities/string.d.ts +6 -21
  743. package/utilities/string.js +1 -1
  744. package/utilities/symbol.js +1 -1
  745. package/utilities/uri.js +1 -1
  746. package/utilities/watch.js +1 -1
  747. package/version.d.ts +1 -1
  748. package/version.js +1 -1
@@ -1 +1 @@
1
- import{isSceneLayerExtension}from"../../utilities/extensions.js";import{isSceneLayer}from"../../utilities/layers.js";import{SceneLayerQueryProvider}from"../query/SceneLayerQueryProvider.js";import{IdentifyProviderBase}from"./IdentifyProviderBase.js";export class SceneLayerQueryIdentifyProvider extends IdentifyProviderBase{constructor(){super(...arguments),this.queryProvider=new SceneLayerQueryProvider}isSupported(e,r,i){return isSceneLayerExtension(e)&&isSceneLayer(e.layer)&&!e.enableClientSideData&&this._supportsQuery(e)}_identify(e,r,i){const t=this,s={...i};return async function*(){s.spatialFilter=r,yield*t.queryProvider.query(e,"1=1",s)}()}_count(e,r,i){const t={...i};return t.spatialFilter=r,this.queryProvider.count(e,"1=1",t)}_supportsQuery(e){return!!e.layer?.associatedLayer}}
1
+ import{isSceneLayerExtension as r}from"../../utilities/extensions.js";import{isSceneLayer as e}from"../../utilities/layers.js";import{SceneLayerQueryProvider as t}from"../query/SceneLayerQueryProvider.js";import{IdentifyProviderBase as i}from"./IdentifyProviderBase.js";export class SceneLayerQueryIdentifyProvider extends i{constructor(){super(...arguments),this.queryProvider=new t}isSupported(t,i,s){return r(t)&&e(t.layer)&&!t.enableClientSideData&&this._supportsQuery(t)}_identify(r,e,t){const i=this,s={...t};return async function*(){s.spatialFilter=e,yield*i.queryProvider.query(r,"1=1",s)}()}_count(r,e,t){const i={...t};return i.spatialFilter=e,this.queryProvider.count(r,"1=1",i)}_supportsQuery(r){return!!r.layer?.associatedLayer}}
@@ -1 +1 @@
1
- import{isStreamLayer}from"../../utilities/_layers.js";import{isWebScene}from"../../utilities/mapping.js";import{ClientSideIdentifyProvider}from"./ClientSideIdentifyProvider.js";export class StreamLayerClientSideQueryIdentifyProvider extends ClientSideIdentifyProvider{isSupported(e,i,r){const t=e._layerView&&isWebScene(e.mapExtension?.map),{layer:s}=e;return isStreamLayer(s)&&!t}_createQuery(e,i,r){const t=super._createQuery(e,i,r),s=t.outFields?.findIndex((e=>"__esri_stream_id__"===e));return s>=0&&t.outFields.splice(s,1),t}}
1
+ import{isStreamLayer as e}from"../../utilities/_layers.js";import{isWebScene as r}from"../../utilities/mapping.js";import{ClientSideIdentifyProvider as i}from"./ClientSideIdentifyProvider.js";export class StreamLayerClientSideQueryIdentifyProvider extends i{isSupported(i,t,s){const o=i._layerView&&r(i.mapExtension?.map),{layer:n}=i;return e(n)&&!o}_createQuery(e,r,i){const t=super._createQuery(e,r,i),s=t.outFields?.findIndex((e=>"__esri_stream_id__"===e));return s>=0&&t.outFields.splice(s,1),t}}
@@ -1 +1 @@
1
- import{getLogger}from"../../utilities/log.js";import{StreamLayerClientSideQueryIdentifyProvider}from"./StreamLayerClientSideQueryIdentifyProvider.js";const log=getLogger("StreamLayerQueryIdentifyProvider");log.warn("StreamLayerQueryIdentifyProvider is now deprecated as of 2021 and will removed by 2022. Use StreamLayerClientSideQueryIdentifyProvider instead.");export const StreamLayerQueryIdentifyProvider=StreamLayerClientSideQueryIdentifyProvider;
1
+ import{getLogger as e}from"../../utilities/log.js";import{StreamLayerClientSideQueryIdentifyProvider as r}from"./StreamLayerClientSideQueryIdentifyProvider.js";e("StreamLayerQueryIdentifyProvider").warn("StreamLayerQueryIdentifyProvider is now deprecated as of 2021 and will removed by 2022. Use StreamLayerClientSideQueryIdentifyProvider instead.");export const StreamLayerQueryIdentifyProvider=r;
@@ -1 +1 @@
1
- import{isPoint}from"../../utilities/geometry.js";import{isSubtypeSublayer}from"../../utilities/layers.js";import{ClientSideIdentifyProvider}from"./ClientSideIdentifyProvider.js";export class SubtypeSublayerClientSideIdentifyProvider extends ClientSideIdentifyProvider{isSupported(e,r,t){return isSubtypeSublayer(e?.sublayer)&&e.sublayer.layer&&e.layerExtension.enableClientSideData&&r&&!!e.layerExtension._layerView?.view?.extent?.intersects(isPoint(r)?r:r.extent)}_createQuery(e,r,t,i){const s=super._createQuery(e,r,t,i),{subtypeField:y}=e.sublayer.layer,l=e.sublayer.subtypeCode;return y&&(s.where=`${y}=${l}`),s}}
1
+ import{isPoint as e}from"../../utilities/geometry.js";import{isSubtypeSublayer as r}from"../../utilities/layers.js";import{ClientSideIdentifyProvider as t}from"./ClientSideIdentifyProvider.js";export class SubtypeSublayerClientSideIdentifyProvider extends t{isSupported(t,i,s){return r(t?.sublayer)&&t.sublayer.layer&&t.layerExtension.enableClientSideData&&i&&!!t.layerExtension._layerView?.view?.extent?.intersects(e(i)?i:i.extent)}_createQuery(e,r,t,i){const s=super._createQuery(e,r,t,i),{subtypeField:l}=e.sublayer.layer,y=e.sublayer.subtypeCode;return l&&(s.where=`${l}=${y}`),s}}
@@ -1 +1 @@
1
- import{executeQuery,executeCount}from"../../support/_query.js";import{isSubtypeSublayerExtension}from"../../utilities/extensions.js";import{removeZValues}from"../../utilities/geometry.js";import{isSubtypeSublayer}from"../../utilities/layers.js";import{IdentifyProviderBase}from"./IdentifyProviderBase.js";export class SubtypeSublayerQueryIdentifyProvider extends IdentifyProviderBase{isSupported(e,t,r){return isSubtypeSublayerExtension(e)&&isSubtypeSublayer(e.sublayer)&&!!e.sublayer.layer}_identify(e,t,r){const u=e,{layer:s}=u.sublayer,i=s.createQuery();let o=t;return o&&(s.hasZ||s.capabilities?.data?.supportsZ)&&(o=removeZValues(o.clone())),i.geometry=o,i.outFields=e.featureSettings.outFields,i.returnGeometry=r.returnGeometry,i.outSpatialReference=r.outSpatialReference,i.maxAllowableOffset=r.maxAllowableOffset,i.where=`${s.subtypeField}=${u.sublayer.subtypeCode}`,s.capabilities.query.supportsPagination&&(i.num=r.maxResults),executeQuery(i,u,s,r.cancelToken)}_count(e,t,r){const u=e,{layer:s}=u.sublayer,i=s.createQuery();let o=t;return o&&(s.hasZ||s.capabilities?.data?.supportsZ)&&(o=removeZValues(o.clone())),i.geometry=o,i.num=r.maxResults,i.returnGeometry=r.returnGeometry,i.outFields=e.featureSettings.outFields,i.where=`${s.subtypeField}=${u.sublayer.subtypeCode}`,executeCount(i,u,s,r.cancelToken)}}
1
+ import{executeQuery as e,executeCount as t}from"../../support/_query.js";import{isSubtypeSublayerExtension as r}from"../../utilities/extensions.js";import{removeZValues as s}from"../../utilities/geometry.js";import{isSubtypeSublayer as u}from"../../utilities/layers.js";import{IdentifyProviderBase as o}from"./IdentifyProviderBase.js";export class SubtypeSublayerQueryIdentifyProvider extends o{isSupported(e,t,s){return r(e)&&u(e.sublayer)&&!!e.sublayer.layer}_identify(t,r,u){const o=t,{layer:a}=o.sublayer,i=a.createQuery();let l=r;return l&&(a.hasZ||a.capabilities?.data?.supportsZ)&&(l=s(l.clone())),i.geometry=l,i.outFields=t.featureSettings.outFields,i.returnGeometry=u.returnGeometry,i.outSpatialReference=u.outSpatialReference,i.maxAllowableOffset=u.maxAllowableOffset,i.where=`${a.subtypeField}=${o.sublayer.subtypeCode}`,a.capabilities.query.supportsPagination&&(i.num=u.maxResults),e(i,o,a,u.cancelToken)}_count(e,r,u){const o=e,{layer:a}=o.sublayer,i=a.createQuery();let l=r;return l&&(a.hasZ||a.capabilities?.data?.supportsZ)&&(l=s(l.clone())),i.geometry=l,i.num=u.maxResults,i.returnGeometry=u.returnGeometry,i.outFields=e.featureSettings.outFields,i.where=`${a.subtypeField}=${o.sublayer.subtypeCode}`,t(i,o,a,u.cancelToken)}}
@@ -1 +1 @@
1
- import SpatialReference from"@arcgis/core/geometry/SpatialReference";import{ArgumentError}from"../../ArgumentError.js";import{wfsFeatureCollectionToFeatures}from"../../mapping/support/ogc.js";import{DefaultRequestHelper}from"../../utilities/RequestHelper.js";import{OgcNamespace,inferGmlVersion,getEpsgCode,WfsVersions}from"../../utilities/_ogc.js";import{checkArg}from"../../utilities/checkArg.js";import{isWMSSublayerExtension}from"../../utilities/extensions.js";import{esriToGml,project,esriWktToWkid}from"../../utilities/geometry.js";import{IdentifyProviderBase}from"./IdentifyProviderBase.js";export class WMSSublayerIdentifyProvider extends IdentifyProviderBase{constructor(){super(...arguments),this.requestHelper=new DefaultRequestHelper}isSupported(e,t,r){return isWMSSublayerExtension(e)&&void 0!==e.layerExtension&&void 0!==e.layerExtension.wfsUrl&&void 0!==e.layerExtension.wfsCapabilities}_identify(e,t,r){const s=(async()=>{const s=e;await s.layerExtension.wfsCapabilities.initialize();const i=this._resolveWfsFeatureType(s),a=await this._createGetFeatureSpatialQuery(e,t,i,r),n={method:"post",body:(new XMLSerializer).serializeToString(a),headers:{"Content-Type":"text/xml; charset=utf-8"}};return this.requestHelper.request(s.layerExtension.wfsUrl,n)})();return async function*(){const t=await s,r=await t.text(),i=(new DOMParser).parseFromString(r,"text/xml");if(!t||!i||i.childNodes.length<1)throw new Error("Response to WFS GetFeature request was invalid.");yield*wfsFeatureCollectionToFeatures(i.childNodes[0],e)}()}async _count(e,t,r={}){const s=(async()=>{const s=e;await s.initialize(),await s.layerExtension.wfsCapabilities.initialize();const i=this._resolveWfsFeatureType(s),a=await this._createGetFeatureSpatialQuery(e,t,i,r),n={method:"post",body:(new XMLSerializer).serializeToString(a),headers:{"Content-Type":"text/xml; charset=utf-8"}};return this.requestHelper.request(s.layerExtension.wfsUrl,n)})(),i=await s,a=await i.text(),n=(new DOMParser).parseFromString(a,"text/xml");if(!i||!n||n.childNodes.length<1)throw new Error("Response to WFS GetFeature request was invalid.");const o=wfsFeatureCollectionToFeatures(n.childNodes[0],e);return{source:e,count:o.length}}_resolveWfsFeatureType(e){checkArg("sublayerX",e).isNotMissing().satisfies((e=>e.layerExtension?.wfsCapabilities?.featureTypes?.length>0),"Could not find a matching WFS feature type.");let t=e.layerExtension.wfsCapabilities.featureTypes.filter((t=>t.name===e.sublayer.name));if(t.length>0||(t=e.layerExtension.wfsCapabilities.featureTypes.filter((t=>this._spliceName(t.name)===e.sublayer.name))),!(t.length>0))throw new ArgumentError("sublayerX","Could not find a matching WFS feature type");return t[0]}_spliceName(e){checkArg("name",e).isNotNull();const t=e.indexOf(":");return t<0?e:e.slice(t+1,e.length)}async _createGetFeatureSpatialQuery(e,t,r,s){checkArg("source",e).isNotMissing().satisfies((e=>isWMSSublayerExtension(e))),checkArg("geometry",t).isNotMissing().satisfies((e=>["extent","point","polygon","polyline"].includes(e.type)));const i=e,a=i.layerExtension.wfsCapabilities,n=this._createGetFeatureElement(a,s),o=await this._createQueryElement(r,t);n.appendChild(o);let l=r.attributes;const{outFields:c}=e.featureSettings;c&&c.length>0&&(c.includes("*")||(l=c));for(const e of l){const t=this._createElement("wfs","PropertyName");t.textContent=e,o.appendChild(t)}const u=this._createFilterElement(i);o.appendChild(u);const m=this._createSpatialOperatorElement(i);u.appendChild(m);const p=this._createGeometryFieldElement(i,r);m.appendChild(p);const f=await this._createGeometryElement(i,t,a,r);return m.appendChild(f),n}_createGetFeatureElement(e,t){const r=this._createElement("wfs","GetFeature");r.setAttribute("service","WFS"),r.setAttribute("version",`${e.wfsVersion}`),r.setAttribute("xmlns:xs",OgcNamespace.XS),r.setAttribute("xmlns:ogc",OgcNamespace.OGC),r.setAttribute("xmlns:wfs",this._getWfsNameSpace(e.wfsVersion)),r.setAttribute("xmlns:gml",this._getGmlNameSpace(e.wfsVersion)),r.setAttribute("outputFormat",this._getOutputFormat(e));let s=1e3;if(t?.maxResults&&(s=t.maxResults),r.setAttribute("count",s.toString()),"2.0.0"===e.wfsVersion)r.setAttribute("xmlns:fes",OgcNamespace.FES_2_0);else r.setAttribute("xmlns:fes",OgcNamespace.FES);return r}async _createQueryElement(e,t){const r=this._createElement("wfs","Query"),s=await this._getSrsName(e,t);return r.setAttribute("typeNames",e.name),r.setAttribute("srsName",s),r}_createFilterElement(e){return"2.0.0"===e.layerExtension.wfsCapabilities.wfsVersion?this._createElement("fes","Filter"):this._createElement("ogc","Filter")}_createSpatialOperatorElement(e){return"2.0.0"===e.layerExtension.wfsCapabilities.wfsVersion?this._createElement("fes","Intersects"):this._createElement("ogc","Intersects")}_createGeometryFieldElement(e,t){if(checkArg("featureType.geometryField",t.geometryField).isNotMissing("The WFS feature type does not have a geometry field"),"2.0.0"===e.layerExtension.wfsCapabilities.wfsVersion){const e=this._createElement("fes","ValueReference");return e.textContent=t.geometryField,e}{const e=this._createElement("ogc","PropertyName");return e.textContent=t.geometryField,e}}async _createGeometryElement(e,t,r,s){checkArg("geometry",t).isNotMissing(),checkArg("geometry.spatialReference",t.spatialReference).isNotMissing();const i={gmlVersion:inferGmlVersion(r.wfsVersion)};if(i.srsName=await this._getSrsName(s,t),i.srsName===s.defaultCrs){const e=getEpsgCode(s.defaultCrs),r=await this.projectGeometry(t,e);return esriToGml(r,i)}return esriToGml(t,i)}async projectGeometry(e,t){const r=await project([e],new SpatialReference({wkid:t}));if(r&&r.length>0)return r[0];throw new Error("Unable to create a geometry element.")}_createElement(e,t){checkArg("name",t).isNotMissing();const r=document.implementation.createDocument(void 0,"temp",void 0);return e?r.createElement(`${e}:${t}`):r.createElement(t)}_getWfsNameSpace(e){switch(e){case"1.0.0":case"1.1.0":return OgcNamespace.WFS;default:return OgcNamespace.WFS_2_0}}_getGmlNameSpace(e){switch(e){case"1.0.0":case"1.1.0":return OgcNamespace.GML;default:return OgcNamespace.GML_3_2}}_getOutputFormat(e){const t=["text/xml; version=gml/","text/xml; subType=gml/","application/gml+xml; version="],r=["2.1","2.1.2","2.1.1","2.0.0"],s=["3.2","3.2.1","3.1","3.1.1","3.1.0","3.0.1","3.0.0"];let i;switch(e.wfsVersion){case WfsVersions.WFS1_0_0:return i=this._matchOutputFormat(t,r,e),i||"GML2";case WfsVersions.WFS1_1_0:return i=this._matchOutputFormat(t,s,e),i||"text/xml; subtype=gml/3.1.1";default:return i=this._matchOutputFormat(t,s,e),i||"text/gml+xml; version=3.2"}}_matchOutputFormat(e,t,r){for(const s of t)for(const t of e){const e=r.getFeatureOutputFormats.filter((e=>e===`${t}${s}`));if(e&&e.length>0)return e[0]}}async _getSrsName(e,t){checkArg("wfsFeatureType",e).isNotMissing(),checkArg("geometry",t).isNotMissing();const r=t.spatialReference.wkid?t.spatialReference.wkid:await esriWktToWkid(t.spatialReference.wkt);if(r===getEpsgCode(e.defaultCrs))return`EPSG:${r}`;for(const t of e.otherCrs)if(r===getEpsgCode(t))return`EPSG:${r}`;return e.defaultCrs}}
1
+ import e from"@arcgis/core/geometry/SpatialReference";import{ArgumentError as t}from"../../ArgumentError.js";import{wfsFeatureCollectionToFeatures as s}from"../../mapping/support/ogc.js";import{DefaultRequestHelper as r}from"../../utilities/RequestHelper.js";import{OgcNamespace as i,inferGmlVersion as a,getEpsgCode as n,WfsVersions as o}from"../../utilities/_ogc.js";import{checkArg as l}from"../../utilities/checkArg.js";import{isWMSSublayerExtension as u}from"../../utilities/extensions.js";import{esriToGml as m,project as c,esriWktToWkid as p}from"../../utilities/geometry.js";import{IdentifyProviderBase as f}from"./IdentifyProviderBase.js";export class WMSSublayerIdentifyProvider extends f{constructor(){super(...arguments),this.requestHelper=new r}isSupported(e,t,s){return u(e)&&void 0!==e.layerExtension&&void 0!==e.layerExtension.wfsUrl&&void 0!==e.layerExtension.wfsCapabilities}_identify(e,t,r){const i=(async()=>{const s=e;await s.layerExtension.wfsCapabilities.initialize();const i=this._resolveWfsFeatureType(s),a=await this._createGetFeatureSpatialQuery(e,t,i,r),n={method:"post",body:(new XMLSerializer).serializeToString(a),headers:{"Content-Type":"text/xml; charset=utf-8"}};return this.requestHelper.request(s.layerExtension.wfsUrl,n)})();return async function*(){const t=await i,r=await t.text(),a=(new DOMParser).parseFromString(r,"text/xml");if(!t||!a||a.childNodes.length<1)throw new Error("Response to WFS GetFeature request was invalid.");yield*s(a.childNodes[0],e)}()}async _count(e,t,r={}){const i=(async()=>{const s=e;await s.initialize(),await s.layerExtension.wfsCapabilities.initialize();const i=this._resolveWfsFeatureType(s),a=await this._createGetFeatureSpatialQuery(e,t,i,r),n={method:"post",body:(new XMLSerializer).serializeToString(a),headers:{"Content-Type":"text/xml; charset=utf-8"}};return this.requestHelper.request(s.layerExtension.wfsUrl,n)})(),a=await i,n=await a.text(),o=(new DOMParser).parseFromString(n,"text/xml");if(!a||!o||o.childNodes.length<1)throw new Error("Response to WFS GetFeature request was invalid.");const l=s(o.childNodes[0],e);return{source:e,count:l.length}}_resolveWfsFeatureType(e){l("sublayerX",e).isNotMissing().satisfies((e=>e.layerExtension?.wfsCapabilities?.featureTypes?.length>0),"Could not find a matching WFS feature type.");let s=e.layerExtension.wfsCapabilities.featureTypes.filter((t=>t.name===e.sublayer.name));if(s.length>0||(s=e.layerExtension.wfsCapabilities.featureTypes.filter((t=>this._spliceName(t.name)===e.sublayer.name))),!(s.length>0))throw new t("sublayerX","Could not find a matching WFS feature type");return s[0]}_spliceName(e){l("name",e).isNotNull();const t=e.indexOf(":");return t<0?e:e.slice(t+1,e.length)}async _createGetFeatureSpatialQuery(e,t,s,r){l("source",e).isNotMissing().satisfies((e=>u(e))),l("geometry",t).isNotMissing().satisfies((e=>["extent","point","polygon","polyline"].includes(e.type)));const i=e,a=i.layerExtension.wfsCapabilities,n=this._createGetFeatureElement(a,r),o=await this._createQueryElement(s,t);n.appendChild(o);let m=s.attributes;const{outFields:c}=e.featureSettings;c&&c.length>0&&(c.includes("*")||(m=c));for(const e of m){const t=this._createElement("wfs","PropertyName");t.textContent=e,o.appendChild(t)}const p=this._createFilterElement(i);o.appendChild(p);const f=this._createSpatialOperatorElement(i);p.appendChild(f);const y=this._createGeometryFieldElement(i,s);f.appendChild(y);const h=await this._createGeometryElement(i,t,a,s);return f.appendChild(h),n}_createGetFeatureElement(e,t){const s=this._createElement("wfs","GetFeature");s.setAttribute("service","WFS"),s.setAttribute("version",`${e.wfsVersion}`),s.setAttribute("xmlns:xs",i.XS),s.setAttribute("xmlns:ogc",i.OGC),s.setAttribute("xmlns:wfs",this._getWfsNameSpace(e.wfsVersion)),s.setAttribute("xmlns:gml",this._getGmlNameSpace(e.wfsVersion)),s.setAttribute("outputFormat",this._getOutputFormat(e));let r=1e3;if(t?.maxResults&&(r=t.maxResults),s.setAttribute("count",r.toString()),"2.0.0"===e.wfsVersion)s.setAttribute("xmlns:fes",i.FES_2_0);else s.setAttribute("xmlns:fes",i.FES);return s}async _createQueryElement(e,t){const s=this._createElement("wfs","Query"),r=await this._getSrsName(e,t);return s.setAttribute("typeNames",e.name),s.setAttribute("srsName",r),s}_createFilterElement(e){return"2.0.0"===e.layerExtension.wfsCapabilities.wfsVersion?this._createElement("fes","Filter"):this._createElement("ogc","Filter")}_createSpatialOperatorElement(e){return"2.0.0"===e.layerExtension.wfsCapabilities.wfsVersion?this._createElement("fes","Intersects"):this._createElement("ogc","Intersects")}_createGeometryFieldElement(e,t){if(l("featureType.geometryField",t.geometryField).isNotMissing("The WFS feature type does not have a geometry field"),"2.0.0"===e.layerExtension.wfsCapabilities.wfsVersion){const e=this._createElement("fes","ValueReference");return e.textContent=t.geometryField,e}{const e=this._createElement("ogc","PropertyName");return e.textContent=t.geometryField,e}}async _createGeometryElement(e,t,s,r){l("geometry",t).isNotMissing(),l("geometry.spatialReference",t.spatialReference).isNotMissing();const i={gmlVersion:a(s.wfsVersion)};if(i.srsName=await this._getSrsName(r,t),i.srsName===r.defaultCrs){const e=n(r.defaultCrs),s=await this.projectGeometry(t,e);return m(s,i)}return m(t,i)}async projectGeometry(t,s){const r=await c([t],new e({wkid:s}));if(r&&r.length>0)return r[0];throw new Error("Unable to create a geometry element.")}_createElement(e,t){l("name",t).isNotMissing();const s=document.implementation.createDocument(void 0,"temp",void 0);return e?s.createElement(`${e}:${t}`):s.createElement(t)}_getWfsNameSpace(e){switch(e){case"1.0.0":case"1.1.0":return i.WFS;default:return i.WFS_2_0}}_getGmlNameSpace(e){switch(e){case"1.0.0":case"1.1.0":return i.GML;default:return i.GML_3_2}}_getOutputFormat(e){const t=["text/xml; version=gml/","text/xml; subType=gml/","application/gml+xml; version="],s=["2.1","2.1.2","2.1.1","2.0.0"],r=["3.2","3.2.1","3.1","3.1.1","3.1.0","3.0.1","3.0.0"];let i;switch(e.wfsVersion){case o.WFS1_0_0:return i=this._matchOutputFormat(t,s,e),i||"GML2";case o.WFS1_1_0:return i=this._matchOutputFormat(t,r,e),i||"text/xml; subtype=gml/3.1.1";default:return i=this._matchOutputFormat(t,r,e),i||"text/gml+xml; version=3.2"}}_matchOutputFormat(e,t,s){for(const r of t)for(const t of e){const e=s.getFeatureOutputFormats.filter((e=>e===`${t}${r}`));if(e&&e.length>0)return e[0]}}async _getSrsName(e,t){l("wfsFeatureType",e).isNotMissing(),l("geometry",t).isNotMissing();const s=t.spatialReference.wkid?t.spatialReference.wkid:await p(t.spatialReference.wkt);if(s===n(e.defaultCrs))return`EPSG:${s}`;for(const t of e.otherCrs)if(s===n(t))return`EPSG:${s}`;return e.defaultCrs}}
@@ -1 +1 @@
1
- import{__decorate}from"tslib";import RelationshipQuery from"@arcgis/core/rest/support/RelationshipQuery";import{isSublayerExtension}from"../../ItemType.js";import{toFeature}from"../../data/Feature.js";import{FeatureSet}from"../../data/FeatureSet.js";import{cancelifyWithAbortSignal}from"../../support/Cancellable.js";import{serializable}from"../../support/Serializable.js";import{isFeatureLayer,isMapImageSublayer as isSublayer,isSubtypeGroupLayer}from"../../utilities/_layers.js";import{isArcGISServiceTableExtension,isFeatureLayerExtension,isSubtypeGroupLayerExtension,isSubtypeSublayerExtension}from"../../utilities/extensions.js";import{QueryBasedRelationship}from"./QueryBasedRelationship.js";const SUBLAYER_CACHE=new WeakMap;let ArcGISRelationship=class extends QueryBasedRelationship{constructor(e){super(e),this.relationshipType="ArcGISRelationship",this.relationshipTableId=e.relationshipTableId,this.originForeignKey=e.originForeignKey,this.destinationForeignKey=e.destinationForeignKey}get isAttributed(){return"number"==typeof this.relationshipTableId}_getSerializableProperties(){return{...super._getSerializableProperties(),$relationshipType:{serializeModes:["initial"],serialize:()=>"ArcGISRelationship"},destinationForeignKey:"initial",originForeignKey:"initial",relationshipTableId:"initial"}}async _getRelatedFeatures(e,t){return cancelifyWithAbortSignal((async t=>(await queryRelatedFeatures([e],getQueryable(this.source),this.relatedSource,{relationshipId:+this.id,signal:t})).get(e)),t?.cancelToken)}async _getAllRelatedFeatures(e,t){return queryRelatedFeatures(e,getQueryable(this.source),this.relatedSource,{relationshipId:+this.id})}};ArcGISRelationship=__decorate([serializable],ArcGISRelationship);export{ArcGISRelationship};function getQueryable(e){let t;if(isArcGISServiceTableExtension(e))t=e.table;else if(isFeatureLayerExtension(e))t=e.layer;else if(isSublayerExtension(e)&&isSublayer(e.sublayer))t=e.sublayer;else if(isSubtypeSublayerExtension(e)&&e.sublayer?.layer)t=e.sublayer.layer;else{if(!isSubtypeGroupLayerExtension(e))throw new Error(`Cannot query for related records. Unsupported FeatureSource: ${e.title} (${e.itemType}/${e.id})`);t=e.layer}return t}const DEFAULT_RELATIONSHIP_QUERY_PROPERTIES={returnGeometry:!0};async function queryRelatedFeatures(e,t,i,r){const a=e.map((e=>+e?.primaryKey)),{signal:s,...o}=r,n=new RelationshipQuery({...DEFAULT_RELATIONSHIP_QUERY_PROPERTIES,objectIds:a.filter((e=>!isNaN(e)&&"number"==typeof e)),outFields:i?.featureSettings.outFields??["*"],...o});let l;if(isFeatureLayer(t)||isSubtypeGroupLayer(t))l=t;else{const e=t;SUBLAYER_CACHE.has(e)||SUBLAYER_CACHE.set(e,await e.createFeatureLayer()),l=SUBLAYER_CACHE.get(e)}const u=await l.queryRelatedFeatures(n,{signal:s}),y=new Map;return a.forEach(((t,r)=>{y.set(e[r],new FeatureSet({source:i,features:u[t]?.features.map((e=>toFeature(e,{source:i})))??[]}))})),y}
1
+ import{__decorate as e}from"tslib";import t from"@arcgis/core/rest/support/RelationshipQuery";import{isSublayerExtension as r}from"../../ItemType.js";import{toFeature as i}from"../../data/Feature.js";import{FeatureSet as s}from"../../data/FeatureSet.js";import{cancelifyWithAbortSignal as a}from"../../support/Cancellable.js";import{serializable as o}from"../../support/Serializable.js";import{isFeatureLayer as n,isMapImageSublayer as l,isSubtypeGroupLayer as u}from"../../utilities/_layers.js";import{isArcGISServiceTableExtension as p,isFeatureLayerExtension as y,isSubtypeGroupLayerExtension as c,isSubtypeSublayerExtension as d}from"../../utilities/extensions.js";import{QueryBasedRelationship as m}from"./QueryBasedRelationship.js";const f=new WeakMap;let h=class extends m{constructor(e){super(e),this.relationshipType="ArcGISRelationship",this.relationshipTableId=e.relationshipTableId,this.originForeignKey=e.originForeignKey,this.destinationForeignKey=e.destinationForeignKey}get isAttributed(){return"number"==typeof this.relationshipTableId}_getSerializableProperties(){return{...super._getSerializableProperties(),$relationshipType:{serializeModes:["initial"],serialize:()=>"ArcGISRelationship"},destinationForeignKey:"initial",originForeignKey:"initial",relationshipTableId:"initial"}}async _getRelatedFeatures(e,t){return a((async t=>(await F([e],g(this.source),this.relatedSource,{relationshipId:+this.id,signal:t})).get(e)),t?.cancelToken)}async _getAllRelatedFeatures(e,t){return F(e,g(this.source),this.relatedSource,{relationshipId:+this.id})}};h=e([o],h);export{h as ArcGISRelationship};function g(e){let t;if(p(e))t=e.table;else if(y(e))t=e.layer;else if(r(e)&&l(e.sublayer))t=e.sublayer;else if(d(e)&&e.sublayer?.layer)t=e.sublayer.layer;else{if(!c(e))throw new Error(`Cannot query for related records. Unsupported FeatureSource: ${e.title} (${e.itemType}/${e.id})`);t=e.layer}return t}const b={returnGeometry:!0};async function F(e,r,a,o){const l=e.map((e=>+e?.primaryKey)),{signal:p,...y}=o,c=new t({...b,objectIds:l.filter((e=>!isNaN(e)&&"number"==typeof e)),outFields:a?.featureSettings.outFields??["*"],...y});let d;if(n(r)||u(r))d=r;else{const e=r;f.has(e)||f.set(e,await e.createFeatureLayer()),d=f.get(e)}const m=await d.queryRelatedFeatures(c,{signal:p}),h=new Map;return l.forEach(((t,r)=>{h.set(e[r],new s({source:a,features:m[t]?.features.map((e=>i(e,{source:a})))??[]}))})),h}
@@ -1 +1 @@
1
- import Query from"@arcgis/core/rest/support/Query";import{executeQuery,executeCountByQuery}from"../../support/_query.js";import{isFeatureLayer}from"../../utilities/layers.js";import{QueryProviderBase}from"./QueryProviderBase.js";export class ArcGISServiceTableQueryProvider extends QueryProviderBase{isSupported(e){const{table:r}=e;return isFeatureLayer(r)&&e.capabilities.supportsQuery}_query(e,r,t){const{table:u}=e,s=u.createQuery();return s.where=r,s.outFields=t.outFields,u.capabilities?.query?.supportsPagination&&(s.num=t.maxResults),executeQuery(s,e,u,t.cancelToken)}_count(e,r,t){const{table:u}=e,s=new Query({returnGeometry:!1});return s.where=r,u.capabilities?.query?.supportsPagination&&(s.num=t.maxResults),executeCountByQuery(s,e,u,t.cancelToken)}}
1
+ import e from"@arcgis/core/rest/support/Query";import{executeQuery as r,executeCountByQuery as t}from"../../support/_query.js";import{isFeatureLayer as s}from"../../utilities/layers.js";import{QueryProviderBase as o}from"./QueryProviderBase.js";export class ArcGISServiceTableQueryProvider extends o{isSupported(e){const{table:r}=e;return s(r)&&e.capabilities.supportsQuery}_query(e,t,s){const{table:o}=e,i=o.createQuery();return i.where=t,i.outFields=s.outFields,o.capabilities?.query?.supportsPagination&&(i.num=s.maxResults),r(i,e,o,s.cancelToken)}_count(r,s,o){const{table:i}=r,u=new e({returnGeometry:!1});return u.where=s,i.capabilities?.query?.supportsPagination&&(u.num=o.maxResults),t(u,r,i,o.cancelToken)}}
@@ -1 +1 @@
1
- import{executeQuery,executeCountByQuery}from"../../support/_query.js";import{isMapImageSublayerExtension}from"../../utilities/extensions.js";import{QueryProviderBase}from"./QueryProviderBase.js";export class ArcGISSublayerQueryProvider extends QueryProviderBase{isSupported(e){return isMapImageSublayerExtension(e)&&e.capabilities.supportsQuery}_query(e,r,t){const{sublayer:s}=e,u=s.createQuery();return u.where=r,u.outFields=t.outFields,u.returnGeometry=t.returnGeometry,u.outSpatialReference=t.outSpatialReference,u.maxAllowableOffset=t.maxAllowableOffset,t.spatialFilter&&(u.spatialRelationship="intersects",u.geometry=t.spatialFilter),e.supportsPagination&&(u.num=t.maxResults),executeQuery(u,e,s,t.cancelToken)}_count(e,r,t){const{sublayer:s}=e,u=s.createQuery();return u.where=r,u.returnGeometry=t.returnGeometry,u.outFields=t.outFields,t.spatialFilter&&(u.spatialRelationship="intersects",u.geometry=t.spatialFilter),u.num=t.maxResults,executeCountByQuery(u,e,s,t.cancelToken)}}
1
+ import{executeQuery as e,executeCountByQuery as t}from"../../support/_query.js";import{isMapImageSublayerExtension as r}from"../../utilities/extensions.js";import{QueryProviderBase as s}from"./QueryProviderBase.js";export class ArcGISSublayerQueryProvider extends s{isSupported(e){return r(e)&&e.capabilities.supportsQuery}_query(t,r,s){const{sublayer:a}=t,i=a.createQuery();return i.where=r,i.outFields=s.outFields,i.returnGeometry=s.returnGeometry,i.outSpatialReference=s.outSpatialReference,i.maxAllowableOffset=s.maxAllowableOffset,s.spatialFilter&&(i.spatialRelationship="intersects",i.geometry=s.spatialFilter),t.supportsPagination&&(i.num=s.maxResults),e(i,t,a,s.cancelToken)}_count(e,r,s){const{sublayer:a}=e,i=a.createQuery();return i.where=r,i.returnGeometry=s.returnGeometry,i.outFields=s.outFields,s.spatialFilter&&(i.spatialRelationship="intersects",i.geometry=s.spatialFilter),i.num=s.maxResults,t(i,e,a,s.cancelToken)}}
@@ -1 +1 @@
1
- import{isBuildingComponentSublayer}from"../../utilities/_layers.js";import{empty}from"../../utilities/asyncIterable.js";import{isWebScene}from"../../utilities/mapping.js";import{ClientSideQueryProvider}from"./ClientSideQueryProvider.js";export class BuildingComponentSublayerClientSideQueryProvider extends ClientSideQueryProvider{isSupported(e){const r=isWebScene(e?.layerExtension?.mapExtension?.map),{sublayer:i}=e;return isBuildingComponentSublayer(i)&&r}_query(e,r,i){return e._layerView?super._query(e,r,i):empty()}async _count(e,r,i){return e._layerView?super._count(e,r,i):{source:e,count:0}}_createQuery(e,r,i){const t=super._createQuery(e,r,i);return"mesh"===e.sublayer.geometryType&&(t.returnGeometry=!1),t}}
1
+ import{isBuildingComponentSublayer as e}from"../../utilities/_layers.js";import{empty as r}from"../../utilities/asyncIterable.js";import{isWebScene as t}from"../../utilities/mapping.js";import{ClientSideQueryProvider as i}from"./ClientSideQueryProvider.js";export class BuildingComponentSublayerClientSideQueryProvider extends i{isSupported(r){const i=t(r?.layerExtension?.mapExtension?.map),{sublayer:u}=r;return e(u)&&i}_query(e,t,i){return e._layerView?super._query(e,t,i):r()}async _count(e,r,t){return e._layerView?super._count(e,r,t):{source:e,count:0}}_createQuery(e,r,t){const i=super._createQuery(e,r,t);return"mesh"===e.sublayer.geometryType&&(i.returnGeometry=!1),i}}
@@ -1 +1 @@
1
- import{executeQuery,executeCount}from"../../support/_query.js";import{isCSVLayer}from"../../utilities/_layers.js";import{removeZValues}from"../../utilities/geometry.js";import{QueryProviderBase}from"./QueryProviderBase.js";export class CSVLayerClientSideQueryProvider extends QueryProviderBase{isSupported(e){const{layer:r}=e;return isCSVLayer(r)}_query(e,r,t){const{layer:s}=e,a=s.createQuery();a.where=r,a.outFields=t.outFields,a.returnGeometry=t.returnGeometry,a.outSpatialReference=t.outSpatialReference,a.maxAllowableOffset=t.maxAllowableOffset,a.returnZ="scene"===e.mapExtension?.viewMode;let o=t.spatialFilter;return o&&(a.spatialRelationship="intersects",s.capabilities?.data?.supportsZ||(o=removeZValues(o.clone())),a.geometry=o),s.capabilities.query.supportsPagination&&(a.num=t.maxResults),executeQuery(a,e,s,t.cancelToken)}async _count(e,r,t){const{layer:s}=e,a=s.createQuery();a.where=r,a.outFields=t.outFields,a.returnGeometry=t.returnGeometry;let o=t.spatialFilter;return o&&(a.spatialRelationship="intersects",o&&!s.capabilities?.data?.supportsZ&&(o=removeZValues(o.clone())),a.geometry=o),a.num=t.maxResults,executeCount(a,e,s,t.cancelToken)}}
1
+ import{executeQuery as e,executeCount as t}from"../../support/_query.js";import{isCSVLayer as r}from"../../utilities/_layers.js";import{removeZValues as s}from"../../utilities/geometry.js";import{QueryProviderBase as i}from"./QueryProviderBase.js";export class CSVLayerClientSideQueryProvider extends i{isSupported(e){const{layer:t}=e;return r(t)}_query(t,r,i){const{layer:a}=t,o=a.createQuery();o.where=r,o.outFields=i.outFields,o.returnGeometry=i.returnGeometry,o.outSpatialReference=i.outSpatialReference,o.maxAllowableOffset=i.maxAllowableOffset,o.returnZ="scene"===t.mapExtension?.viewMode;let l=i.spatialFilter;return l&&(o.spatialRelationship="intersects",a.capabilities?.data?.supportsZ||(l=s(l.clone())),o.geometry=l),a.capabilities.query.supportsPagination&&(o.num=i.maxResults),e(o,t,a,i.cancelToken)}async _count(e,r,i){const{layer:a}=e,o=a.createQuery();o.where=r,o.outFields=i.outFields,o.returnGeometry=i.returnGeometry;let l=i.spatialFilter;return l&&(o.spatialRelationship="intersects",l&&!a.capabilities?.data?.supportsZ&&(l=s(l.clone())),o.geometry=l),o.num=i.maxResults,t(o,e,a,i.cancelToken)}}
@@ -1 +1 @@
1
- import{getLogger}from"../../utilities/log.js";import{CSVLayerClientSideQueryProvider}from"./CSVLayerClientSideQueryProvider.js";const log=getLogger("CSVLayerQueryProvider");log.warn("CSVLayerQueryProvider is now deprecated as of 2021 and will removed by 2022. Use CSVLayerClientSideQueryProvider instead.");export const CSVLayerQueryProvider=CSVLayerClientSideQueryProvider;
1
+ import{getLogger as e}from"../../utilities/log.js";import{CSVLayerClientSideQueryProvider as r}from"./CSVLayerClientSideQueryProvider.js";e("CSVLayerQueryProvider").warn("CSVLayerQueryProvider is now deprecated as of 2021 and will removed by 2022. Use CSVLayerClientSideQueryProvider instead.");export const CSVLayerQueryProvider=r;
@@ -13,11 +13,11 @@ import { QueryProviderBase } from "./QueryProviderBase.js";
13
13
  /**
14
14
  * The types of LayerExtensions that support client-side queries.
15
15
  */
16
- export declare type ClientSideQueryableLayerExtension = CSVLayerExtension | FeatureLayerExtension | SceneLayerExtension | StreamLayerExtension | SubtypeGroupLayerExtension;
16
+ export type ClientSideQueryableLayerExtension = CSVLayerExtension | FeatureLayerExtension | SceneLayerExtension | StreamLayerExtension | SubtypeGroupLayerExtension;
17
17
  /**
18
18
  * The types of SublayerExtensions that support client-side queries.
19
19
  */
20
- export declare type ClientSideQueryableSublayerExtension = BuildingComponentSublayerExtension | SubtypeSublayerExtension;
20
+ export type ClientSideQueryableSublayerExtension = BuildingComponentSublayerExtension | SubtypeSublayerExtension;
21
21
  /**
22
22
  * A query provider that only uses client-side data.
23
23
  */
@@ -1 +1 @@
1
- import{toFeature}from"../../data/Feature.js";import{cancelify,cancelifyWithAbortSignal}from"../../support/Cancellable.js";import*as asyncIterable from"../../utilities/asyncIterable.js";import{isSubtypeSublayerExtension}from"../../utilities/extensions.js";import{isBuildingComponentSublayer}from"../../utilities/layers.js";import{QueryProviderBase}from"./QueryProviderBase.js";export class ClientSideQueryProvider extends QueryProviderBase{get _waitForUpdatingFinished(){return!0}_query(e,t,r){const i=this;return async function*(){const a=await i._getClientSideLayerGraphics(e,t,r);a&&a.length?yield*a.map((t=>toFeature(t,{source:e}))):yield*asyncIterable.empty()}()}async _count(e,t,r){const i=await this._getClientSideLayerGraphics(e,t,r);return{source:e,count:i?i.length:0}}_createQuery(e,t,r){const i=isSubtypeSublayerExtension(e)?e.layerExtension:e,{_layerView:a,featureSettings:n}=i,s=isBuildingComponentSublayer(i.sublayer)?e.layerExtension?.mapExtension:e.mapExtension,o=a.createQuery();return o.where=t,o.geometry=r.spatialFilter,o.outFields=n.outFields,o.returnGeometry=r.returnGeometry,o.outSpatialReference=r.outSpatialReference,o.maxAllowableOffset=r.maxAllowableOffset,o.num=r.maxResults,o.returnZ="scene"===s?.viewMode,o}async _getClientSideLayerGraphics(e,t,r){const i=isSubtypeSublayerExtension(e)?e.layerExtension:e,{_layerView:a}=i;if(!a)return;this._waitForUpdatingFinished&&await cancelify(new Promise(((e,t)=>{a.updating||e();const r=a.watch("updating",(t=>{t||(r.remove(),e())}))})),r.cancelToken);return(await cancelifyWithAbortSignal((async i=>a.queryFeatures(this._createQuery(e,t,r),{signal:i})),r.cancelToken))?.features}}
1
+ import{toFeature as e}from"../../data/Feature.js";import{cancelify as t,cancelifyWithAbortSignal as r}from"../../support/Cancellable.js";import*as i from"../../utilities/asyncIterable.js";import{isSubtypeSublayerExtension as a}from"../../utilities/extensions.js";import{isBuildingComponentSublayer as n}from"../../utilities/layers.js";import{QueryProviderBase as s}from"./QueryProviderBase.js";export class ClientSideQueryProvider extends s{get _waitForUpdatingFinished(){return!0}_query(t,r,a){const n=this;return async function*(){const s=await n._getClientSideLayerGraphics(t,r,a);s?.length?yield*s.map((r=>e(r,{source:t}))):yield*i.empty()}()}async _count(e,t,r){const i=await this._getClientSideLayerGraphics(e,t,r);return{source:e,count:i?i.length:0}}_createQuery(e,t,r){const i=a(e)?e.layerExtension:e,{_layerView:s,featureSettings:o}=i,l=n(i.sublayer)?e.layerExtension?.mapExtension:e.mapExtension,u=s.createQuery();return u.where=t,u.geometry=r.spatialFilter,u.outFields=o.outFields,u.returnGeometry=r.returnGeometry,u.outSpatialReference=r.outSpatialReference,u.maxAllowableOffset=r.maxAllowableOffset,u.num=r.maxResults,u.returnZ="scene"===l?.viewMode,u}async _getClientSideLayerGraphics(e,i,n){const s=a(e)?e.layerExtension:e,{_layerView:o}=s;if(!o)return;this._waitForUpdatingFinished&&await t(new Promise(((e,t)=>{o.updating||e();const r=o.watch("updating",(t=>{t||(r.remove(),e())}))})),n.cancelToken);return(await r((async t=>o.queryFeatures(this._createQuery(e,i,n),{signal:t})),n.cancelToken))?.features}}
@@ -1 +1 @@
1
- import{executeQuery,executeCount}from"../../support/_query.js";import{isFeatureLayer}from"../../utilities/_layers.js";import{removeZValues}from"../../utilities/geometry.js";import{QueryProviderBase}from"./QueryProviderBase.js";export class FeatureLayerQueryProvider extends QueryProviderBase{isSupported(e){const{layer:r}=e;return isFeatureLayer(r)&&e.capabilities.supportsQuery}_query(e,r,t){const{layer:s}=e,a=s.createQuery();a.where=r,a.outFields=t.outFields,a.returnGeometry=t.returnGeometry,a.outSpatialReference=t.outSpatialReference,a.maxAllowableOffset=t.maxAllowableOffset,a.returnZ="scene"===e.mapExtension?.viewMode;let o=t.spatialFilter;return o&&(a.spatialRelationship="intersects",!o||s.hasZ&&s.capabilities?.data?.supportsZ||(o=removeZValues(o.clone())),a.geometry=o),s.capabilities.query.supportsPagination&&(a.num=t.maxResults),executeQuery(a,e,s,t.cancelToken)}_count(e,r,t){const{layer:s}=e,a=s.createQuery();a.where=r,a.outFields=t.outFields,a.returnGeometry=t.returnGeometry;let o=t.spatialFilter;return o&&(a.spatialRelationship="intersects",!o||s.hasZ&&s.capabilities?.data?.supportsZ||(o=removeZValues(o.clone())),a.geometry=o),a.num=t.maxResults,executeCount(a,e,s,t.cancelToken)}}
1
+ import{executeQuery as e,executeCount as t}from"../../support/_query.js";import{isFeatureLayer as r}from"../../utilities/_layers.js";import{removeZValues as s}from"../../utilities/geometry.js";import{QueryProviderBase as a}from"./QueryProviderBase.js";export class FeatureLayerQueryProvider extends a{isSupported(e){const{layer:t}=e;return r(t)&&e.capabilities.supportsQuery}_query(t,r,a){const{layer:i}=t,o=i.createQuery();o.where=r,o.outFields=a.outFields,o.returnGeometry=a.returnGeometry,o.outSpatialReference=a.outSpatialReference,o.maxAllowableOffset=a.maxAllowableOffset,o.returnZ="scene"===t.mapExtension?.viewMode;let l=a.spatialFilter;return l&&(o.spatialRelationship="intersects",!l||i.hasZ&&i.capabilities?.data?.supportsZ||(l=s(l.clone())),o.geometry=l),i.capabilities.query.supportsPagination&&(o.num=a.maxResults),e(o,t,i,a.cancelToken)}_count(e,r,a){const{layer:i}=e,o=i.createQuery();o.where=r,o.outFields=a.outFields,o.returnGeometry=a.returnGeometry;let l=a.spatialFilter;return l&&(o.spatialRelationship="intersects",!l||i.hasZ&&i.capabilities?.data?.supportsZ||(l=s(l.clone())),o.geometry=l),o.num=a.maxResults,t(o,e,i,a.cancelToken)}}
@@ -1 +1 @@
1
- import{executeQuery,executeCount}from"../../support/_graphicsQuery.js";import{isGeoRssLayer}from"../../utilities/_layers.js";import{map}from"../../utilities/promise.js";import{QueryProviderBase}from"./QueryProviderBase.js";export class GeoRSSLayerQueryProvider extends QueryProviderBase{isSupported(e){const{layer:r}=e;return isGeoRssLayer(r)}async*_query(e,r,o){const s=e;for(const e of s._featureLayerExtensions){const t=executeQuery(r,s,e.layer.source,o);for await(const r of t)r.schema.parent=e.schema,yield r}}async _count(e,r,o){const s=e,t=await map(s._featureLayerExtensions,(e=>executeCount(r,s,e.layer.source,o)));let u=0;for(const e of t)u+=e.count;return{source:e,count:u}}}
1
+ import{executeQuery as r,executeCount as e}from"../../support/_graphicsQuery.js";import{isGeoRssLayer as o}from"../../utilities/_layers.js";import{map as s}from"../../utilities/promise.js";import{QueryProviderBase as t}from"./QueryProviderBase.js";export class GeoRSSLayerQueryProvider extends t{isSupported(r){const{layer:e}=r;return o(e)}async*_query(e,o,s){const t=e;for(const e of t._featureLayerExtensions){const a=r(o,t,e.layer.source,s);for await(const r of a)r.schema.parent=e.schema,yield r}}async _count(r,o,t){const a=r,i=await s(a._featureLayerExtensions,(r=>e(o,a,r.layer.source,t)));let n=0;for(const r of i)n+=r.count;return{source:r,count:n}}}
@@ -1 +1 @@
1
- import{executeQuery,executeCount}from"../../support/_graphicsQuery.js";import{isGraphicsLayer}from"../../utilities/_layers.js";import{QueryProviderBase}from"./QueryProviderBase.js";export class GraphicsLayerQueryProvider extends QueryProviderBase{isSupported(r){const{layer:e}=r;return isGraphicsLayer(e)&&r.capabilities.supportsQuery}_query(r,e,s){const t=r.layer;return executeQuery(e,r,t.graphics,s)}_count(r,e,s){const t=r.layer;return executeCount(e,r,t.graphics,s)}}
1
+ import{executeQuery as r,executeCount as e}from"../../support/_graphicsQuery.js";import{isGraphicsLayer as s}from"../../utilities/_layers.js";import{QueryProviderBase as t}from"./QueryProviderBase.js";export class GraphicsLayerQueryProvider extends t{isSupported(r){const{layer:e}=r;return s(e)&&r.capabilities.supportsQuery}_query(e,s,t){const i=e.layer;return r(s,e,i.graphics,t)}_count(r,s,t){const i=r.layer;return e(s,r,i.graphics,t)}}
@@ -1 +1 @@
1
- import{executeQueryJSON,executeForCount}from"@arcgis/core/rest/query";import Query from"@arcgis/core/rest/support/Query";import{InvalidOperationError}from"../../InvalidOperationError.js";import{executeQuery,executeCount}from"../../support/_query.js";import{isImageryLayer}from"../../utilities/_layers.js";import{QueryProviderBase}from"./QueryProviderBase.js";export class ImageryLayerQueryProvider extends QueryProviderBase{isSupported(e){const{layer:r}=e;return isImageryLayer(r)&&e.capabilities.supportsQuery}_query(e,r,t){const u=this._getQueryable(e),o=createQuery();return o.where=r,o.outFields=t.outFields,o.num=t.maxResults,executeQuery(o,e,u,t.cancelToken)}async _count(e,r,t){const u=this._getQueryable(e),o=createQuery();return o.where=r,o.outFields=t.outFields,o.num=t.maxResults,executeCount(o,e,u,t.cancelToken)}_getQueryable(e){return{queryFeatures(r,t){const u=executeQueryJSON(e.layer.url,r??createQuery(),t);if(!e.capabilities.supportsQuery)throw new InvalidOperationError("Querying features not supported");return u},queryFeatureCount(r,t){const u=executeForCount(e.layer.url,r??createQuery(),t);if(!e.capabilities.supportsQuery)throw new InvalidOperationError("Querying features not supported");return u}}}}function createQuery(){return new Query({where:"1=1",outFields:["*"],returnGeometry:!0})}
1
+ import{executeQueryJSON as r,executeForCount as e}from"@arcgis/core/rest/query";import t from"@arcgis/core/rest/support/Query";import{InvalidOperationError as u}from"../../InvalidOperationError.js";import{executeQuery as s,executeCount as o}from"../../support/_query.js";import{isImageryLayer as i}from"../../utilities/_layers.js";import{QueryProviderBase as n}from"./QueryProviderBase.js";export class ImageryLayerQueryProvider extends n{isSupported(r){const{layer:e}=r;return i(e)&&r.capabilities.supportsQuery}_query(r,e,t){const u=this._getQueryable(r),o=a();return o.where=e,o.outFields=t.outFields,o.num=t.maxResults,s(o,r,u,t.cancelToken)}async _count(r,e,t){const u=this._getQueryable(r),s=a();return s.where=e,s.outFields=t.outFields,s.num=t.maxResults,o(s,r,u,t.cancelToken)}_getQueryable(t){return{queryFeatures(e,s){const o=r(t.layer.url,e??a(),s);if(!t.capabilities.supportsQuery)throw new u("Querying features not supported");return o},queryFeatureCount(r,s){const o=e(t.layer.url,r??a(),s);if(!t.capabilities.supportsQuery)throw new u("Querying features not supported");return o}}}}function a(){return new t({where:"1=1",outFields:["*"],returnGeometry:!0})}
@@ -1 +1 @@
1
- import{executeQuery,executeCount}from"../../support/_graphicsQuery.js";import{isKMLLayer}from"../../utilities/_layers.js";import{QueryProviderBase}from"./QueryProviderBase.js";export class KMLLayerQueryProvider extends QueryProviderBase{isSupported(e){return isKMLLayer(e.layer)}_query(e,r,u){return executeQuery(r,e,e._graphics,u)}_count(e,r,u){return executeCount(r,e,e._graphics,u)}}
1
+ import{executeQuery as r,executeCount as e}from"../../support/_graphicsQuery.js";import{isKMLLayer as s}from"../../utilities/_layers.js";import{QueryProviderBase as t}from"./QueryProviderBase.js";export class KMLLayerQueryProvider extends t{isSupported(r){return s(r.layer)}_query(e,s,t){return r(s,e,e._graphics,t)}_count(r,s,t){return e(s,r,r._graphics,t)}}
@@ -1 +1 @@
1
- import{__decorate}from"tslib";import{FeatureSet}from"../../data/FeatureSet.js";import{RelationshipBase}from"../../data/RelationshipBase.js";import{serializable}from"../../support/Serializable.js";import{escape}from"../../support/_query.js";import{checkArg}from"../../utilities/checkArg.js";import{QueryService}from"./QueryService.js";let QueryBasedRelationship=class extends RelationshipBase{constructor(e){super(e),this.relationshipType="QueryBasedRelationship",checkArg("properties",e).isNotMissing(),checkArg("properties.relatedSource",e.relatedSource).isNotMissing(),checkArg("properties.keyField",e.keyField).isNotMissing().isNotEmpty(),checkArg("properties.relatedKeyField",e.relatedKeyField).isNotMissing().isNotEmpty(),this.relatedSource=e.relatedSource,this.keyField=e.keyField,this.relatedKeyField=e.relatedKeyField,this.queryService=e.queryService||new QueryService,this.cardinality=e.cardinality||"many-to-many"}_getSerializableProperties(){return{...super._getSerializableProperties(),keyField:"initial",relatedKeyField:"initial",$relationshipType:{serializeModes:["initial"],serialize:()=>"QueryBasedRelationship"},cardinality:"initial",relatedSource:"initial",queryService:{serialize:!1}}}async _getRelatedFeatures(e,t){const i=e.attributes.get(this.keyField);if(null==i)return new FeatureSet({source:this.relatedSource});const r="string"==typeof i?`${this.relatedKeyField}='${escape(i)}'`:`${this.relatedKeyField}=${i}`;return FeatureSet.fromFeatureStream(this.queryService.query(this.relatedSource,r,t))}async _getAllRelatedFeatures(e,t){const i=new Map,r=[],s=new Set;e.forEach((e=>{const t=e.attributes.get(this.keyField);null==t?i.set(e,new FeatureSet({source:this.relatedSource})):(r.push(e),s.add("string"==typeof t?`'${escape(t)}'`:`${t}`))}));const a=`${this.relatedKeyField} IN (${[...s].join(", ")})`,l=await FeatureSet.fromFeatureStream(this.queryService.query(this.relatedSource,a,t));return r.forEach((e=>{const t=e.attributes.get(this.keyField),r=new FeatureSet({source:this.relatedSource});l.forEach((e=>{t===e.attributes.get(this.relatedKeyField)&&r.add(e)})),i.set(e,r)})),i}};QueryBasedRelationship=__decorate([serializable],QueryBasedRelationship);export{QueryBasedRelationship};
1
+ import{__decorate as e}from"tslib";import{FeatureSet as t}from"../../data/FeatureSet.js";import{RelationshipBase as i}from"../../data/RelationshipBase.js";import{serializable as r}from"../../support/Serializable.js";import{escape as s}from"../../support/_query.js";import{checkArg as a}from"../../utilities/checkArg.js";import{QueryService as l}from"./QueryService.js";let o=class extends i{constructor(e){super(e),this.relationshipType="QueryBasedRelationship",a("properties",e).isNotMissing(),a("properties.relatedSource",e.relatedSource).isNotMissing(),a("properties.keyField",e.keyField).isNotMissing().isNotEmpty(),a("properties.relatedKeyField",e.relatedKeyField).isNotMissing().isNotEmpty(),this.relatedSource=e.relatedSource,this.keyField=e.keyField,this.relatedKeyField=e.relatedKeyField,this.queryService=e.queryService||new l,this.cardinality=e.cardinality||"many-to-many"}_getSerializableProperties(){return{...super._getSerializableProperties(),keyField:"initial",relatedKeyField:"initial",$relationshipType:{serializeModes:["initial"],serialize:()=>"QueryBasedRelationship"},cardinality:"initial",relatedSource:"initial",queryService:{serialize:!1}}}async _getRelatedFeatures(e,i){const r=e.attributes.get(this.keyField);if(null==r)return new t({source:this.relatedSource});const a="string"==typeof r?`${this.relatedKeyField}='${s(r)}'`:`${this.relatedKeyField}=${r}`;return t.fromFeatureStream(this.queryService.query(this.relatedSource,a,i))}async _getAllRelatedFeatures(e,i){const r=new Map,a=[],l=new Set;e.forEach((e=>{const i=e.attributes.get(this.keyField);null==i?r.set(e,new t({source:this.relatedSource})):(a.push(e),l.add("string"==typeof i?`'${s(i)}'`:`${i}`))}));const o=`${this.relatedKeyField} IN (${[...l].join(", ")})`,d=await t.fromFeatureStream(this.queryService.query(this.relatedSource,o,i));return a.forEach((e=>{const i=e.attributes.get(this.keyField),s=new t({source:this.relatedSource});d.forEach((e=>{i===e.attributes.get(this.relatedKeyField)&&s.add(e)})),r.set(e,s)})),r}};o=e([r],o);export{o as QueryBasedRelationship};
@@ -1 +1 @@
1
- import{format}from"../../utilities/string.js";export class QueryError extends Error{constructor(r,t,e,...o){super(format(e||'Failed to query features for source "{0}" (ID: {1})',...e?o:[r.title,r.id])),this.name="QueryError",this.source=r,this.error=t}}
1
+ import{format as r}from"../../utilities/string.js";export class QueryError extends Error{constructor(e,t,s,...o){super(r(s||'Failed to query features for source "{0}" (ID: {1})',...s?o:[e.title,e.id])),this.name="QueryError",this.source=e,this.error=t}}
@@ -1 +1 @@
1
- import{InvalidOperationError}from"../../InvalidOperationError.js";import{checkArg}from"../../utilities/checkArg.js";import{QueryOptions}from"./QueryOptions.js";export class QueryProviderBase{query(r,e,i){if(checkArg("source",r).isNotMissing(),checkArg("where",e).isNotMissing(),!this.isSupported(r))throw new InvalidOperationError("Unsupported feature source.");const o=this;return async function*(){await r.initialize(),yield*o._query(r,e,{...QueryOptions.DEFAULTS,...QueryOptions.fromFeatureSource(r),...i})}()}async count(r,e,i){if(checkArg("source",r).isNotMissing(),checkArg("where",e).isNotMissing(),!this.isSupported(r))throw new InvalidOperationError("Unsupported feature source.");await r.initialize();const o={returnGeometry:!1,outFields:void 0};return this._count(r,e,{...QueryOptions.fromFeatureSource(r),...i,...o})}}
1
+ import{InvalidOperationError as r}from"../../InvalidOperationError.js";import{checkArg as i}from"../../utilities/checkArg.js";import{QueryOptions as e}from"./QueryOptions.js";export class QueryProviderBase{query(t,o,s){if(i("source",t).isNotMissing(),i("where",o).isNotMissing(),!this.isSupported(t))throw new r("Unsupported feature source.");const u=this;return async function*(){await t.initialize(),yield*u._query(t,o,{...e.DEFAULTS,...e.fromFeatureSource(t),...s})}()}async count(t,o,s){if(i("source",t).isNotMissing(),i("where",o).isNotMissing(),!this.isSupported(t))throw new r("Unsupported feature source.");await t.initialize();const u={returnGeometry:!1,outFields:void 0};return this._count(t,o,{...e.fromFeatureSource(t),...s,...u})}}
@@ -1 +1 @@
1
- import{InvalidOperationError}from"../../InvalidOperationError.js";import{isCancellation}from"../../support/utilities.js";import{checkArg}from"../../utilities/checkArg.js";import{Collection}from"../../utilities/collection.js";import{ArcGISServiceTableQueryProvider}from"./ArcGISServiceTableQueryProvider.js";import{ArcGISSublayerQueryProvider}from"./ArcGISSublayerQueryProvider.js";import{BuildingComponentSublayerClientSideQueryProvider}from"./BuildingComponentSublayerClientSideQueryProvider.js";import{CSVLayerClientSideQueryProvider}from"./CSVLayerClientSideQueryProvider.js";import{FeatureLayerQueryProvider}from"./FeatureLayerQueryProvider.js";import{GeoRSSLayerQueryProvider}from"./GeoRSSLayerQueryProvider.js";import{ImageryLayerQueryProvider}from"./ImageryLayerQueryProvider.js";import{KMLLayerQueryProvider}from"./KMLLayerQueryProvider.js";import{QueryError}from"./QueryError.js";import{QueryOptions}from"./QueryOptions.js";import{SceneLayerClientSideQueryProvider}from"./SceneLayerClientSideQueryProvider.js";import{SceneLayerQueryProvider}from"./SceneLayerQueryProvider.js";import{StreamLayerClientSideQueryProvider}from"./StreamLayerClientSideQueryProvider.js";import{SubtypeSublayerQueryProvider}from"./SubtypeSublayerQueryProvider.js";export class QueryService{constructor(){this.providers=new Collection,this.providers.add(new ArcGISServiceTableQueryProvider),this.providers.add(new ArcGISSublayerQueryProvider),this.providers.add(new CSVLayerClientSideQueryProvider),this.providers.add(new FeatureLayerQueryProvider),this.providers.add(new GeoRSSLayerQueryProvider),this.providers.add(new ImageryLayerQueryProvider),this.providers.add(new KMLLayerQueryProvider),this.providers.add(new BuildingComponentSublayerClientSideQueryProvider),this.providers.add(new SceneLayerClientSideQueryProvider),this.providers.add(new SceneLayerQueryProvider),this.providers.add(new StreamLayerClientSideQueryProvider),this.providers.add(new SubtypeSublayerQueryProvider)}isSupported(r){return!!this.providers.find((e=>e.isSupported(r)))}query(r,e,i){checkArg("source",r).isNotMissing(),checkArg("where",e).isNotMissing().isNotEmpty();const o=this.providers.find((e=>e.isSupported(r)));if(!o)throw new InvalidOperationError("Unable to query: no provider registered for this type of feature source.");return async function*(){try{await r.initialize();const t={...QueryOptions.DEFAULTS,...QueryOptions.fromFeatureSource(r),...i},d=o.query(r,e,t);for await(const r of d)t.outSpatialReference&&(r.schema.spatialReference=t.outSpatialReference),yield r}catch(e){throw isCancellation(e)?e:new QueryError(r,e)}}()}async count(r,e,i){checkArg("source",r).isNotMissing(),checkArg("where",e).isNotMissing();const o=this.providers.find((e=>e.isSupported(r)));if(!o)throw new InvalidOperationError("Unable to query: no provider registered for this type of feature source.");try{await r.initialize();const t={returnGeometry:!1,outFields:void 0};return await o.count(r,e,{...QueryOptions.fromFeatureSource(r),...i,...t})}catch(e){throw isCancellation(e)?e:new QueryError(r,e)}}}
1
+ import{InvalidOperationError as r}from"../../InvalidOperationError.js";import{isCancellation as e}from"../../support/utilities.js";import{checkArg as i}from"../../utilities/checkArg.js";import{Collection as o}from"../../utilities/collection.js";import{ArcGISServiceTableQueryProvider as t}from"./ArcGISServiceTableQueryProvider.js";import{ArcGISSublayerQueryProvider as s}from"./ArcGISSublayerQueryProvider.js";import{BuildingComponentSublayerClientSideQueryProvider as d}from"./BuildingComponentSublayerClientSideQueryProvider.js";import{CSVLayerClientSideQueryProvider as n}from"./CSVLayerClientSideQueryProvider.js";import{FeatureLayerQueryProvider as a}from"./FeatureLayerQueryProvider.js";import{GeoRSSLayerQueryProvider as p}from"./GeoRSSLayerQueryProvider.js";import{ImageryLayerQueryProvider as u}from"./ImageryLayerQueryProvider.js";import{KMLLayerQueryProvider as m}from"./KMLLayerQueryProvider.js";import{QueryError as y}from"./QueryError.js";import{QueryOptions as c}from"./QueryOptions.js";import{SceneLayerClientSideQueryProvider as f}from"./SceneLayerClientSideQueryProvider.js";import{SceneLayerQueryProvider as v}from"./SceneLayerQueryProvider.js";import{StreamLayerClientSideQueryProvider as h}from"./StreamLayerClientSideQueryProvider.js";import{SubtypeSublayerQueryProvider as w}from"./SubtypeSublayerQueryProvider.js";export class QueryService{constructor(){this.providers=new o,this.providers.add(new t),this.providers.add(new s),this.providers.add(new n),this.providers.add(new a),this.providers.add(new p),this.providers.add(new u),this.providers.add(new m),this.providers.add(new d),this.providers.add(new f),this.providers.add(new v),this.providers.add(new h),this.providers.add(new w)}isSupported(r){return!!this.providers.find((e=>e.isSupported(r)))}query(o,t,s){i("source",o).isNotMissing(),i("where",t).isNotMissing().isNotEmpty();const d=this.providers.find((r=>r.isSupported(o)));if(!d)throw new r("Unable to query: no provider registered for this type of feature source.");return async function*(){try{await o.initialize();const r={...c.DEFAULTS,...c.fromFeatureSource(o),...s},e=d.query(o,t,r);for await(const i of e)r.outSpatialReference&&(i.schema.spatialReference=r.outSpatialReference),yield i}catch(r){throw e(r)?r:new y(o,r)}}()}async count(o,t,s){i("source",o).isNotMissing(),i("where",t).isNotMissing();const d=this.providers.find((r=>r.isSupported(o)));if(!d)throw new r("Unable to query: no provider registered for this type of feature source.");try{await o.initialize();const r={returnGeometry:!1,outFields:void 0};return await d.count(o,t,{...c.fromFeatureSource(o),...s,...r})}catch(r){throw e(r)?r:new y(o,r)}}}
@@ -1 +1 @@
1
- import{isSceneLayer}from"../../utilities/_layers.js";import{isWebScene}from"../../utilities/mapping.js";import{ClientSideQueryProvider}from"./ClientSideQueryProvider.js";export class SceneLayerClientSideQueryProvider extends ClientSideQueryProvider{isSupported(e){const r=!!e._layerView&&isWebScene(e.mapExtension?.map),{layer:i}=e;return isSceneLayer(i)&&r&&(e.enableClientSideData||!e.layer.associatedLayer)}_createQuery(e,r,i){const t=super._createQuery(e,r,i);return"mesh"===e.layer.geometryType&&(t.returnGeometry=!1),t}}
1
+ import{isSceneLayer as e}from"../../utilities/_layers.js";import{isWebScene as r}from"../../utilities/mapping.js";import{ClientSideQueryProvider as t}from"./ClientSideQueryProvider.js";export class SceneLayerClientSideQueryProvider extends t{isSupported(t){const i=!!t._layerView&&r(t.mapExtension?.map),{layer:a}=t;return e(a)&&i&&(t.enableClientSideData||!t.layer.associatedLayer)}_createQuery(e,r,t){const i=super._createQuery(e,r,t);return"mesh"===e.layer.geometryType&&(i.returnGeometry=!1),i}}
@@ -1 +1 @@
1
- import{executeQuery,executeCount}from"../../support/_query.js";import{isSceneLayer}from"../../utilities/_layers.js";import{QueryProviderBase}from"./QueryProviderBase.js";export class SceneLayerQueryProvider extends QueryProviderBase{isSupported(e){const{layer:r}=e;return isSceneLayer(r)&&!!r.associatedLayer}_query(e,r,t){const{layer:a}=e,s=a.associatedLayer.createQuery();return s.where=r,s.outFields=t.outFields,s.returnGeometry=t.returnGeometry,s.outSpatialReference=t.outSpatialReference,s.maxAllowableOffset=t.maxAllowableOffset,t.spatialFilter&&(s.spatialRelationship="intersects",s.geometry=t.spatialFilter),s.num=t.maxResults,s.returnZ=!0,executeQuery(s,e,a.associatedLayer,t.cancelToken)}async _count(e,r,t){const{layer:a}=e,s=a.associatedLayer.createQuery();return s.where=r,s.outFields=t.outFields,s.returnGeometry=t.returnGeometry,t.spatialFilter&&(s.spatialRelationship="intersects",s.geometry=t.spatialFilter),s.num=t.maxResults,executeCount(s,e,a.associatedLayer,t.cancelToken)}}
1
+ import{executeQuery as e,executeCount as r}from"../../support/_query.js";import{isSceneLayer as t}from"../../utilities/_layers.js";import{QueryProviderBase as a}from"./QueryProviderBase.js";export class SceneLayerQueryProvider extends a{isSupported(e){const{layer:r}=e;return t(r)&&!!r.associatedLayer}_query(r,t,a){const{layer:s}=r,o=s.associatedLayer.createQuery();return o.where=t,o.outFields=a.outFields,o.returnGeometry=a.returnGeometry,o.outSpatialReference=a.outSpatialReference,o.maxAllowableOffset=a.maxAllowableOffset,a.spatialFilter&&(o.spatialRelationship="intersects",o.geometry=a.spatialFilter),o.num=a.maxResults,o.returnZ=!0,e(o,r,s.associatedLayer,a.cancelToken)}async _count(e,t,a){const{layer:s}=e,o=s.associatedLayer.createQuery();return o.where=t,o.outFields=a.outFields,o.returnGeometry=a.returnGeometry,a.spatialFilter&&(o.spatialRelationship="intersects",o.geometry=a.spatialFilter),o.num=a.maxResults,r(o,e,s.associatedLayer,a.cancelToken)}}
@@ -1 +1 @@
1
- import{isStreamLayer}from"../../utilities/_layers.js";import{isWebScene}from"../../utilities/mapping.js";import{ClientSideQueryProvider}from"./ClientSideQueryProvider.js";export class StreamLayerClientSideQueryProvider extends ClientSideQueryProvider{get _waitForUpdatingFinished(){return!1}isSupported(e){const r=e._layerView&&isWebScene(e.mapExtension?.map),{layer:i}=e;return isStreamLayer(i)&&!r}_createQuery(e,r,i){const t=super._createQuery(e,r,i),s=t.outFields?.findIndex((e=>"__esri_stream_id__"===e));return s>=0&&t.outFields.splice(s,1),t}}
1
+ import{isStreamLayer as e}from"../../utilities/_layers.js";import{isWebScene as r}from"../../utilities/mapping.js";import{ClientSideQueryProvider as i}from"./ClientSideQueryProvider.js";export class StreamLayerClientSideQueryProvider extends i{get _waitForUpdatingFinished(){return!1}isSupported(i){const t=i._layerView&&r(i.mapExtension?.map),{layer:s}=i;return e(s)&&!t}_createQuery(e,r,i){const t=super._createQuery(e,r,i),s=t.outFields?.findIndex((e=>"__esri_stream_id__"===e));return s>=0&&t.outFields.splice(s,1),t}}
@@ -1 +1 @@
1
- import{getLogger}from"../../utilities/log.js";import{StreamLayerClientSideQueryProvider}from"./StreamLayerClientSideQueryProvider.js";const log=getLogger("StreamLayerQueryProvider");log.warn("StreamLayerQueryProvider is now deprecated as of 2021 and will removed by 2022. Use StreamLayerClientSideQueryProvider instead.");export const StreamLayerQueryProvider=StreamLayerClientSideQueryProvider;
1
+ import{getLogger as e}from"../../utilities/log.js";import{StreamLayerClientSideQueryProvider as r}from"./StreamLayerClientSideQueryProvider.js";e("StreamLayerQueryProvider").warn("StreamLayerQueryProvider is now deprecated as of 2021 and will removed by 2022. Use StreamLayerClientSideQueryProvider instead.");export const StreamLayerQueryProvider=r;
@@ -1 +1 @@
1
- import{executeQuery,executeCount,concatenateWhereClauses}from"../../support/_query.js";import{isSubtypeSublayer}from"../../utilities/_layers.js";import{removeZValues}from"../../utilities/geometry.js";import{QueryProviderBase}from"./QueryProviderBase.js";export class SubtypeSublayerQueryProvider extends QueryProviderBase{isSupported(e){const{sublayer:r}=e;return isSubtypeSublayer(r)&&r.layer&&e.layerExtension?.capabilities.supportsQuery}_query(e,r,t){const{sublayer:a}=e,s=a.layer.createQuery();s.where=concatenateWhereClauses(`${a.layer.subtypeField}=${a.subtypeCode}`,r),s.outFields=t.outFields,s.returnGeometry=t.returnGeometry,s.outSpatialReference=t.outSpatialReference,s.maxAllowableOffset=t.maxAllowableOffset;let l=t.spatialFilter;return l&&(s.spatialRelationship="intersects",!l||a.layer.hasZ&&a.layer.capabilities?.data?.supportsZ||(l=removeZValues(l.clone())),s.geometry=l),a.layer.capabilities.query.supportsPagination&&(s.num=t.maxResults),executeQuery(s,e,a.layer,t.cancelToken)}_count(e,r,t){const{sublayer:a}=e,s=a.layer.createQuery();s.where=concatenateWhereClauses(`${a.layer.subtypeField}=${a.subtypeCode}`,r),s.outFields=t.outFields,s.returnGeometry=t.returnGeometry;let l=t.spatialFilter;return l&&(s.spatialRelationship="intersects",!l||a.layer.hasZ&&a.layer.capabilities?.data?.supportsZ||(l=removeZValues(l.clone())),s.geometry=l),s.num=t.maxResults,executeCount(s,e,a.layer,t.cancelToken)}}
1
+ import{executeQuery as e,executeCount as r,concatenateWhereClauses as t}from"../../support/_query.js";import{isSubtypeSublayer as a}from"../../utilities/_layers.js";import{removeZValues as s}from"../../utilities/geometry.js";import{QueryProviderBase as l}from"./QueryProviderBase.js";export class SubtypeSublayerQueryProvider extends l{isSupported(e){const{sublayer:r}=e;return a(r)&&r.layer&&e.layerExtension?.capabilities.supportsQuery}_query(r,a,l){const{sublayer:i}=r,o=i.layer.createQuery();o.where=t(`${i.layer.subtypeField}=${i.subtypeCode}`,a),o.outFields=l.outFields,o.returnGeometry=l.returnGeometry,o.outSpatialReference=l.outSpatialReference,o.maxAllowableOffset=l.maxAllowableOffset;let u=l.spatialFilter;return u&&(o.spatialRelationship="intersects",!u||i.layer.hasZ&&i.layer.capabilities?.data?.supportsZ||(u=s(u.clone())),o.geometry=u),i.layer.capabilities.query.supportsPagination&&(o.num=l.maxResults),e(o,r,i.layer,l.cancelToken)}_count(e,a,l){const{sublayer:i}=e,o=i.layer.createQuery();o.where=t(`${i.layer.subtypeField}=${i.subtypeCode}`,a),o.outFields=l.outFields,o.returnGeometry=l.returnGeometry;let u=l.spatialFilter;return u&&(o.spatialRelationship="intersects",!u||i.layer.hasZ&&i.layer.capabilities?.data?.supportsZ||(u=s(u.clone())),o.geometry=u),o.num=l.maxResults,r(o,e,i.layer,l.cancelToken)}}
@@ -1 +1 @@
1
- import{SCORE_FIELD,SCORE_FIELD_ORIGINAL}from"../../data/Feature.js";import{isArcGISGeocoder}from"../geocoding/utilities.js";import{GeocoderSearchProvider}from"./GeocoderSearchProvider.js";const SCORE_DECREMENT_UNIT=.001,SCORE_EXACT_MATCH=100,SCORE_NON_MATCH_MAX=99,MATCH_ADDR_FIELD="Match_addr";export class ArcGISGeocoderSearchProvider extends GeocoderSearchProvider{isSupported(e){return isArcGISGeocoder(e)}async*_search(e,t,r){const[a]=e,{cancelToken:o,currentScale:s,initialSearchArea:c,outSpatialReference:i,maxResults:E}=r??{},S={cancelToken:o,searchPoint:s&&c?.extent?.center,searchArea:!s&&c,outFields:a.featureSettings.outFields,outSpatialReference:i,maxResults:E};if(!t)return;const _=t.replace(/^"*|"*$/g,"");let d=0,I=.001;for await(const e of a.geocode(_,S)){if(e.attributes.get("Match_addr")===_)e.attributes.set(SCORE_FIELD,100),e.attributes.set(SCORE_FIELD_ORIGINAL,100);else{let t=e.attributes.get(SCORE_FIELD);t=t>99?99:t,e.attributes.set(SCORE_FIELD,t),e.attributes.set(SCORE_FIELD_ORIGINAL,t),t===d?(e.attributes.set(SCORE_FIELD,d-I),e.attributes.set(SCORE_FIELD_ORIGINAL,d-I),I+=.001):(d=t,I=.001)}yield e}}}
1
+ import{SCORE_FIELD as e,SCORE_FIELD_ORIGINAL as t}from"../../data/Feature.js";import{isArcGISGeocoder as r}from"../geocoding/utilities.js";import{GeocoderSearchProvider as s}from"./GeocoderSearchProvider.js";const a=.001;export class ArcGISGeocoderSearchProvider extends s{isSupported(e){return r(e)}async*_search(r,s,i){const[o]=r,{cancelToken:c,currentScale:n,initialSearchArea:u,outSpatialReference:l,maxResults:d}=i??{},f={cancelToken:c,searchPoint:n&&u?.extent?.center,searchArea:!n&&u,outFields:o.featureSettings.outFields,outSpatialReference:l,maxResults:d};if(!s)return;const p=s.replace(/^"*|"*$/g,"");let S=0,b=a;for await(const r of o.geocode(p,f)){if(r.attributes.get("Match_addr")===p)r.attributes.set(e,100),r.attributes.set(t,100);else{let s=r.attributes.get(e);s=s>99?99:s,r.attributes.set(e,s),r.attributes.set(t,s),s===S?(r.attributes.set(e,S-b),r.attributes.set(t,S-b),b+=a):(S=s,b=a)}yield r}}}
@@ -1 +1 @@
1
- import{isGeocoder}from"../../ItemType.js";import{SCORE_FIELD,SCORE_FIELD_ORIGINAL}from"../../data/Feature.js";import{SearchProviderBase}from"./SearchProviderBase.js";const SCORE_DECREMENT_UNIT=.001;export class GeocoderSearchProvider extends SearchProviderBase{isSupported(e){return isGeocoder(e)}async*_search(e,t,a){const[r]=e,{cancelToken:c,currentScale:s,initialSearchArea:n,outSpatialReference:o,maxResults:i}=a??{},u={cancelToken:c,searchPoint:s&&n?.extent?.center,searchArea:!s&&n,outFields:r.featureSettings.outFields,outSpatialReference:o,maxResults:i};if(!t)return;let l=0,S=.001;for await(const e of r.geocode(t,u)){const t=e.attributes.get(SCORE_FIELD);t===l?(e.attributes.set(SCORE_FIELD,l-S),e.attributes.set(SCORE_FIELD_ORIGINAL,l-S),S+=.001):(l=t,S=.001),yield e}}async _count(e,t,a){const[r]=e,{cancelToken:c,currentScale:s,initialSearchArea:n,maxResults:o}=a??{},i={cancelToken:c,searchPoint:s&&n?.extent?.center,searchArea:!s&&n,maxResults:o};if(t)return[await r.count(t,i)]}async _suggest(e,t,a){const[r]=e,{cancelToken:c,currentScale:s,initialSearchArea:n,outSpatialReference:o,maxSuggestions:i}=a??{},u={cancelToken:c,searchPoint:s&&n?.extent?.center,searchArea:!s&&n,outFields:["*"],outSpatialReference:o,maxResults:i},l=await r.suggest(t,u);let S=100;return l.map((e=>(S-=.001,{suggestion:e,score:S})))}}
1
+ import{isGeocoder as e}from"../../ItemType.js";import{SCORE_FIELD as t,SCORE_FIELD_ORIGINAL as a}from"../../data/Feature.js";import{SearchProviderBase as r}from"./SearchProviderBase.js";const c=.001;export class GeocoderSearchProvider extends r{isSupported(t){return e(t)}async*_search(e,r,s){const[n]=e,{cancelToken:o,currentScale:i,initialSearchArea:u,outSpatialReference:l,maxResults:S}=s??{},m={cancelToken:o,searchPoint:i&&u?.extent?.center,searchArea:!i&&u,outFields:n.featureSettings.outFields,outSpatialReference:l,maxResults:S};if(!r)return;let f=0,h=c;for await(const e of n.geocode(r,m)){const r=e.attributes.get(t);r===f?(e.attributes.set(t,f-h),e.attributes.set(a,f-h),h+=c):(f=r,h=c),yield e}}async _count(e,t,a){const[r]=e,{cancelToken:c,currentScale:s,initialSearchArea:n,maxResults:o}=a??{},i={cancelToken:c,searchPoint:s&&n?.extent?.center,searchArea:!s&&n,maxResults:o};if(t)return[await r.count(t,i)]}async _suggest(e,t,a){const[r]=e,{cancelToken:s,currentScale:n,initialSearchArea:o,outSpatialReference:i,maxSuggestions:u}=a??{},l={cancelToken:s,searchPoint:n&&o?.extent?.center,searchArea:!n&&o,outFields:["*"],outSpatialReference:i,maxResults:u},S=await r.suggest(t,l);let m=100;return S.map((e=>(m-=c,{suggestion:e,score:m})))}}
@@ -1 +1 @@
1
- import{difference}from"@arcgis/core/geometry/geometryEngine";import{SCORE_FIELD,SCORE_FIELD_ORIGINAL}from"../../data/Feature.js";import{escape}from"../../support/_query.js";import{AsyncQueue}from"../../utilities/asyncIterable.js";import{isCodedValueDomain}from"../../utilities/esri.js";import{getBounds,getScreenExtent}from"../../utilities/geometry.js";import{average,standardDeviation}from"../../utilities/math.js";import{format,NumberFormat,NumberFormatter}from"../../utilities/number.js";import{map}from"../../utilities/promise.js";import{expandExtentToScale,getNextScale,getScaleRange}from"../../utilities/scaleRanges.js";import{QueryService}from"../query/QueryService.js";import{SearchOptions}from"./SearchOptions.js";import{SearchProviderBase}from"./SearchProviderBase.js";import{getSearchableValue}from"./_utilities.js";export class QuerySearchProvider extends SearchProviderBase{constructor(){super(...arguments),this.queryService=new QueryService,this.separatorRegex=/(\s|-(?![\d,.]))+/,this.quotedTermsRegex=/(?:"(.*?)")|(?:“(.*?)”)|(?:«(.*?)»)|(?:„(.*?)”)|(?:„(.*?)“)|(?:»(.*?)«)/g}isSupported(e){return this.queryService.isSupported(e)}getSearchTerms(e,t){const r=e.match(this.quotedTermsRegex),n=t(e.replace(this.quotedTermsRegex,""));return r?n.concat(r.map((e=>e.replace(/"|“|”|«|»|„/g,"")))):n}_search(e,t,r){const n=new AsyncQueue,i=new Map,s="__id";let a=0;const o=initializeElasticlunrIndex(this.separatorRegex);return e.forEach((c=>{(async()=>{try{const{index:u,tokenizer:l}=await o;u.setRef(s);const m={...SearchOptions.DEFAULTS,...SearchOptions.fromFeatureSource(c),spatialFilter:r?.initialSearchArea,...r},d=u.pipeline.run(this.getSearchTerms(t,l)),f=getSearchableFields(c),p=getWhereClause(c,d,f,m);if(!d.length||!f.length||!p)return;const g={...m,maxResults:Math.max(m.maxQueryResults||m.maxResults,m.maxResults)};let h=0,S=g.currentScale;const F=new Map,x=c.getFullExtent();for(const e of f)u.addField(e.name.toLowerCase());for(;;){if(n.isDone)return;const e=this.queryService.query(c,p,g),r=new Map;for await(const t of e){if(n.isDone)return;const e={};for(const r of f)e[r.name.toLowerCase()]=getSearchableValue(t,r);const s=`${c.id}-${t.primaryKey}`;e.__id=s,u.addDoc(e),r.set(s,t),i.set(s,t)}const s=u.search(t,{expand:!0});normalizeScores(s);for(const e of s){const t=i.get(e.ref);if(t&&(t.attributes.set(SCORE_FIELD,e.score),t.attributes.set(SCORE_FIELD_ORIGINAL,e.score)),r.has(e.ref)&&!F.has(e.ref)&&(F.set(e.ref,t),r.delete(e.ref),n.add(t),h++),h>=m.maxResults)break}for(const[e,t]of r){if(h>=m.maxResults)break;t.attributes.set(SCORE_FIELD,50),t.attributes.set(SCORE_FIELD_ORIGINAL,50),F.has(e)||(F.set(e,t),n.add(t),h++)}if(h>=m.maxResults)break;const{scale:a,geometry:o}=this._expandSearchArea(g.spatialFilter?.extent,x,S,0===h?3:1);if(!o)break;g.spatialFilter=o,S=a}}catch(e){n.reject(e)}finally{++a===e.length&&n.done()}})()})),n}_expandSearchArea(e,t,r,n){if(!t||!e||!r||e.contains(t))return{};const i=getNextScale(r,n),s=!i||i>=getScaleRange("continent")?t:expandExtentToScale(e,r,i);return{geometry:isInBounds([s])?difference(s,e):s,scale:i}}async _count(e,t,r){return map(e,(async e=>{const{index:n,tokenizer:i}=await initializeElasticlunrIndex(this.separatorRegex),s={...SearchOptions.fromFeatureSource(e),...r,spatialFilter:r?.initialSearchArea,returnGeometry:!1},a=n.pipeline.run(this.getSearchTerms(t,i)),o=getSearchableFields(e);if(!a.length||!o.length)return{source:e,count:0};const c=getWhereClause(e,a,o,s);let u=s.currentScale;const l=e.getFullExtent();let m;for(;;){if(m=await this.queryService.count(e,c,s),m.count>=s.maxResults)break;const{scale:t,geometry:r}=this._expandSearchArea(s.spatialFilter?.extent,l,u,0===m.count?3:1);if(!r)break;s.spatialFilter=r.extent,u=t}return m}))}async _suggest(e,t,r){return[]}}function getSearchableFields(e){const{outFields:t}=e.featureSettings,r=!t.includes("*");return e.schema.fieldExtensions.initializedItems.filter((e=>e.searchable&&(!r||t.includes(e.field.name)))).map((e=>e.field)).toArray()}async function initializeElasticlunrIndex(e){const t=(await import("elasticlunr")).default;t.tokenizer.setSeperator(e),t.Pipeline.getRegisteredFunction("gcx.trimmer")||t.Pipeline.registerFunction(trimmer,"gcx.trimmer");const r=t();return r.pipeline.reset(),r.pipeline.add(trimmer),r.pipeline.add(t.Pipeline.getRegisteredFunction("stopWordFilter")),r.saveDocument(!1),{index:r,tokenizer:t.tokenizer}}function getWhereClause(e,t,r,n){const i=[],s=new NumberFormatter({locale:n.locale,defaultParseFormat:[NumberFormat.CURRENCY,NumberFormat.FIXED_POINT,NumberFormat.PERCENT,NumberFormat.NUMBER,NumberFormat.ROUND_TRIP]});for(const n of r){let r=[];n.domain&&isCodedValueDomain(n.domain)&&(r=r.concat(n.domain.codedValues));for(const t of e.schema.types.toArray()){const e=t.domains;e?.[n.name]?.codedValues&&(r=r.concat(e[n.name].codedValues))}for(const a of t)if(e.schema.types.length>0&&n.name===e.schema.typeIdField){const t=e.schema.types.findIndex((e=>e.name.toLowerCase()===a.toLowerCase()));if(t>-1){const r=e.schema.types.getItemAt(t).id;"string"==typeof r?i.push(`${e.schema.typeIdField} = '${escape(r)}'`):i.push(`${e.schema.typeIdField} = ${r}`)}}else if(r.length>0){const e=r.findIndex((e=>e.name.toLowerCase().includes(a.toLowerCase())));e>-1&&("string"==typeof r[e].code?i.push(`${n.name} = '${escape(r[e].code)}'`):i.push(`${n.name} = ${r[e].code}`))}else switch(n.type){case"string":i.push(`lower(${n.name}) like '%${escape(a.toLowerCase())}%'`);break;case"integer":case"small-integer":case"single":case"double":{const e=zeroOutEsriInsignificantDigits(a),t=s.parse({format:[NumberFormat.DEFAULT,NumberFormat.FIXED_POINT,NumberFormat.NUMBER]},e);if(isNaN(t))continue;const r=getSearchRange(t);t<0?i.push(`(${n.name} > ${r.lower} and ${n.name} <= ${r.upper})`):i.push(`(${n.name} >= ${r.lower} and ${n.name} < ${r.upper})`);break}}}return i.join(" or ")}function getSearchRange(e){let t,r=0;const n=format(NumberFormat.ROUND_TRIP,e),i=countEsriInsignificantDigits(n);n.includes(".")&&(r=n.length-n.indexOf(".")-1);let s=e;return 0===i&&r>0?t=Math.pow(10,-(r-1)):r>i?(s=Number(e.toFixed(r-i)),t=Math.pow(10,-r)):t=1,t/=2,{lower:(s-t).toFixed(r+1),upper:(s+t).toFixed(r+1)}}function normalizeScores(e){const t=e.map((e=>e.score)),r=average(t),n=standardDeviation(t);for(const t of e)n?(t.score=(t.score-r)/n,t.score=Math.max(-2,t.score),t.score=Math.min(2,t.score),t.score=t.score/4+.5,t.score*=100):t.score=100}function trimmer(e){if(null==e)throw new Error("token should not be undefined");return e.replace(/^[^a-zA-Z0-9\u007F-\uFFFF-]+/,"").replace(/[^a-zA-Z0-9\u007F-\uFFFF-]+$/,"")}function zeroOutEsriInsignificantDigits(e){let t=countEsriInsignificantDigits(e);const r=format(-123456780.9),n=_localNumberSymbols();if(t>0){const i=new RegExp(`[${r}]`,"g"),s=e.match(i),a=s.length;let o=0;for(;t>0&&o<=a;){const e=a-o-1;n.includes(s[e])||(s[e]=format(0).toString(),t--),o++}if(s)return s.join("")}return e}function _localNumberSymbols(){const e=format(1234567890);return format(-123456780.9).split("").filter((t=>!e.includes(t))).join("")}function countEsriInsignificantDigits(e){const t=format(1234567890),r=new RegExp(`[${t}]`,"g"),n=e.match(r);return n?n.length-14:void 0}function isInBounds(e){const t=e.filter((e=>!!e?.spatialReference));if(!t.length)return!0;const{spatialReference:r}=t[0],{isWebMercator:n,isWGS84:i}=r;if(!n&&!i)return!0;const{xmax:s,xmin:a}=getScreenExtent(t),{max:o,min:c}=getBounds(r);return s<=o&&a>=c}
1
+ import{difference as e}from"@arcgis/core/geometry/geometryEngine";import{SCORE_FIELD as t,SCORE_FIELD_ORIGINAL as r}from"../../data/Feature.js";import{escape as s}from"../../support/_query.js";import{AsyncQueue as n}from"../../utilities/asyncIterable.js";import{isCodedValueDomain as o}from"../../utilities/esri.js";import{getBounds as i,getScreenExtent as a}from"../../utilities/geometry.js";import{average as c,standardDeviation as u}from"../../utilities/math.js";import{format as l,NumberFormat as m,NumberFormatter as p}from"../../utilities/number.js";import{map as f}from"../../utilities/promise.js";import{expandExtentToScale as d,getNextScale as h,getScaleRange as g}from"../../utilities/scaleRanges.js";import{QueryService as x}from"../query/QueryService.js";import{SearchOptions as y}from"./SearchOptions.js";import{SearchProviderBase as F}from"./SearchProviderBase.js";import{getSearchableValue as R}from"./_utilities.js";export class QuerySearchProvider extends F{constructor(){super(...arguments),this.queryService=new x,this.separatorRegex=/(\s|-(?![\d,.]))+/,this.quotedTermsRegex=/(?:"(.*?)")|(?:“(.*?)”)|(?:«(.*?)»)|(?:„(.*?)”)|(?:„(.*?)“)|(?:»(.*?)«)/g}isSupported(e){return this.queryService.isSupported(e)}getSearchTerms(e,t){const r=e.match(this.quotedTermsRegex),s=t(e.replace(this.quotedTermsRegex,""));return r?s.concat(r.map((e=>e.replace(/"|“|”|«|»|„/g,"")))):s}_search(e,s,o){const i=new n,a=new Map,c="__id";let u=0;const l=S(this.separatorRegex);return e.forEach((n=>{(async()=>{try{const{index:m,tokenizer:p}=await l;m.setRef(c);const f={...y.DEFAULTS,...y.fromFeatureSource(n),spatialFilter:o?.initialSearchArea,...o},d=m.pipeline.run(this.getSearchTerms(s,p)),h=w(n),g=$(n,d,h,f);if(!d.length||!h.length||!g)return;const x={...f,maxResults:Math.max(f.maxQueryResults||f.maxResults,f.maxResults)};let F=0,S=x.currentScale;const b=new Map,E=n.getFullExtent();for(const e of h)m.addField(e.name.toLowerCase());for(;;){if(i.isDone)return;const e=this.queryService.query(n,g,x),o=new Map;for await(const t of e){if(i.isDone)return;const e={};for(const r of h)e[r.name.toLowerCase()]=R(t,r);const r=`${n.id}-${t.primaryKey}`;e[c]=r,m.addDoc(e),o.set(r,t),a.set(r,t)}const u=m.search(s,{expand:!0});j(u);for(const e of u){const s=a.get(e.ref);if(s&&(s.attributes.set(t,e.score),s.attributes.set(r,e.score)),o.has(e.ref)&&!b.has(e.ref)&&(b.set(e.ref,s),o.delete(e.ref),i.add(s),F++),F>=f.maxResults)break}for(const[e,s]of o){if(F>=f.maxResults)break;s.attributes.set(t,50),s.attributes.set(r,50),b.has(e)||(b.set(e,s),i.add(s),F++)}if(F>=f.maxResults)break;const{scale:l,geometry:p}=this._expandSearchArea(x.spatialFilter?.extent,E,S,0===F?3:1);if(!p)break;x.spatialFilter=p,S=l}}catch(e){i.reject(e)}finally{++u===e.length&&i.done()}})()})),i}_expandSearchArea(t,r,s,n){if(!r||!t||!s||t.contains(r))return{};const o=h(s,n),c=!o||o>=g("continent")?r:d(t,s,o);return{geometry:function(e){const t=e.filter((e=>!!e?.spatialReference));if(!t.length)return!0;const{spatialReference:r}=t[0],{isWebMercator:s,isWGS84:n}=r;if(!s&&!n)return!0;const{xmax:o,xmin:c}=a(t),{max:u,min:l}=i(r);return o<=u&&c>=l}([c])?e(c,t):c,scale:o}}async _count(e,t,r){return f(e,(async e=>{const{index:s,tokenizer:n}=await S(this.separatorRegex),o={...y.fromFeatureSource(e),...r,spatialFilter:r?.initialSearchArea,returnGeometry:!1},i=s.pipeline.run(this.getSearchTerms(t,n)),a=w(e);if(!i.length||!a.length)return{source:e,count:0};const c=$(e,i,a,o);let u=o.currentScale;const l=e.getFullExtent();let m;for(;;){if(m=await this.queryService.count(e,c,o),m.count>=o.maxResults)break;const{scale:t,geometry:r}=this._expandSearchArea(o.spatialFilter?.extent,l,u,0===m.count?3:1);if(!r)break;o.spatialFilter=r.extent,u=t}return m}))}async _suggest(e,t,r){return[]}}function w(e){const{outFields:t}=e.featureSettings,r=!t.includes("*");return e.schema.fieldExtensions.initializedItems.filter((e=>e.searchable&&(!r||t.includes(e.field.name)))).map((e=>e.field)).toArray()}async function S(e){const t=(await import("elasticlunr")).default;t.tokenizer.setSeperator(e),t.Pipeline.getRegisteredFunction("gcx.trimmer")||t.Pipeline.registerFunction(E,"gcx.trimmer");const r=t();return r.pipeline.reset(),r.pipeline.add(E),r.pipeline.add(t.Pipeline.getRegisteredFunction("stopWordFilter")),r.saveDocument(!1),{index:r,tokenizer:t.tokenizer}}function $(e,t,r,n){const i=[],a=new p({locale:n.locale,defaultParseFormat:[m.CURRENCY,m.FIXED_POINT,m.PERCENT,m.NUMBER,m.ROUND_TRIP]});for(const n of r){let r=[];n.domain&&o(n.domain)&&(r=r.concat(n.domain.codedValues));for(const t of e.schema.types.toArray()){const e=t.domains;e?.[n.name]?.codedValues&&(r=r.concat(e[n.name].codedValues))}for(const o of t)if(e.schema.types.length>0&&n.name===e.schema.typeIdField){const t=e.schema.types.findIndex((e=>e.name.toLowerCase()===o.toLowerCase()));if(t>-1){const r=e.schema.types.getItemAt(t).id;"string"==typeof r?i.push(`${e.schema.typeIdField} = '${s(r)}'`):i.push(`${e.schema.typeIdField} = ${r}`)}}else if(r.length>0){const e=r.findIndex((e=>e.name.toLowerCase().includes(o.toLowerCase())));e>-1&&("string"==typeof r[e].code?i.push(`${n.name} = '${s(r[e].code)}'`):i.push(`${n.name} = ${r[e].code}`))}else switch(n.type){case"string":i.push(`lower(${n.name}) like '%${s(o.toLowerCase())}%'`);break;case"integer":case"small-integer":case"single":case"double":{const e=k(o),t=a.parse({format:[m.DEFAULT,m.FIXED_POINT,m.NUMBER]},e);if(isNaN(t))continue;const r=b(t);t<0?i.push(`(${n.name} > ${r.lower} and ${n.name} <= ${r.upper})`):i.push(`(${n.name} >= ${r.lower} and ${n.name} < ${r.upper})`);break}}}return i.join(" or ")}function b(e){let t,r=0;const s=l(m.ROUND_TRIP,e),n=I(s);s.includes(".")&&(r=s.length-s.indexOf(".")-1);let o=e;return 0===n&&r>0?t=Math.pow(10,-(r-1)):r>n?(o=Number(e.toFixed(r-n)),t=Math.pow(10,-r)):t=1,t/=2,{lower:(o-t).toFixed(r+1),upper:(o+t).toFixed(r+1)}}function j(e){const t=e.map((e=>e.score)),r=c(t),s=u(t);for(const t of e)s?(t.score=(t.score-r)/s,t.score=Math.max(-2,t.score),t.score=Math.min(2,t.score),t.score=t.score/4+.5,t.score*=100):t.score=100}function E(e){if(null==e)throw new Error("token should not be undefined");return e.replace(/^[^a-zA-Z0-9\u007F-\uFFFF-]+/,"").replace(/[^a-zA-Z0-9\u007F-\uFFFF-]+$/,"")}function k(e){let t=I(e);const r=l(-123456780.9),s=function(){const e=l(1234567890),t=l(-123456780.9).split("");return t.filter((t=>!e.includes(t))).join("")}();if(t>0){const n=new RegExp(`[${r}]`,"g"),o=e.match(n),i=o.length;let a=0;for(;t>0&&a<=i;){const e=i-a-1;s.includes(o[e])||(o[e]=l(0).toString(),t--),a++}if(o)return o.join("")}return e}function I(e){const t=l(1234567890),r=new RegExp(`[${t}]`,"g"),s=e.match(r);return s?s.length-14:void 0}
@@ -1 +1 @@
1
- import{format}from"../../utilities/string.js";export class SearchError extends Error{constructor(r,e,...o){super(e&&format(e,...o)||"One or more sources could not be searched."),this.name="SearchError",this.errors=new Map(r)}}
1
+ import{format as r}from"../../utilities/string.js";export class SearchError extends Error{constructor(e,o,...s){super(o&&r(o,...s)||"One or more sources could not be searched."),this.name="SearchError",this.errors=new Map(e)}}
@@ -1 +1 @@
1
- import{InvalidOperationError}from"../../InvalidOperationError.js";import{checkArg}from"../../utilities/checkArg.js";import*as promiseUtils from"../../utilities/promise.js";import{SearchOptions}from"./SearchOptions.js";export class SearchProviderBase{search(r,i,s){checkArg("source",r).isNotMissing();const e=Array.isArray(r)?r:[r];if(!e.every((r=>this.isSupported(r))))throw new InvalidOperationError("Unsupported feature source.");const t=this;return async function*(){i&&(await promiseUtils.parallelEach(e,(r=>r.initialize())),yield*t._search(e,i,s))}()}async suggest(r,i,s){checkArg("source",r).isNotMissing();const e=Array.isArray(r)?r:[r];if(!e.every((r=>this.isSupported(r))))throw new InvalidOperationError("Unsupported feature source.");return i?this._suggest(e,i,{...SearchOptions.DEFAULTS,...s}):[]}async count(r,i,s){checkArg("source",r).isNotMissing();const e=Array.isArray(r)?r:[r];if(!e.every((r=>this.isSupported(r))))throw new InvalidOperationError("Unsupported feature source.");if(i)return await promiseUtils.parallelEach(e,(r=>r.initialize())),this._count(e,i,s)}}
1
+ import{InvalidOperationError as r}from"../../InvalidOperationError.js";import{checkArg as s}from"../../utilities/checkArg.js";import*as i from"../../utilities/promise.js";import{SearchOptions as e}from"./SearchOptions.js";export class SearchProviderBase{search(e,t,o){s("source",e).isNotMissing();const a=Array.isArray(e)?e:[e];if(!a.every((r=>this.isSupported(r))))throw new r("Unsupported feature source.");const n=this;return async function*(){t&&(await i.parallelEach(a,(r=>r.initialize())),yield*n._search(a,t,o))}()}async suggest(i,t,o){s("source",i).isNotMissing();const a=Array.isArray(i)?i:[i];if(!a.every((r=>this.isSupported(r))))throw new r("Unsupported feature source.");return t?this._suggest(a,t,{...e.DEFAULTS,...o}):[]}async count(e,t,o){s("source",e).isNotMissing();const a=Array.isArray(e)?e:[e];if(!a.every((r=>this.isSupported(r))))throw new r("Unsupported feature source.");if(t)return await i.parallelEach(a,(r=>r.initialize())),this._count(a,t,o)}}
@@ -1 +1 @@
1
- import Point from"@arcgis/core/geometry/Point";import{distance}from"@arcgis/core/geometry/geometryEngine";import{isLayerExtension,isMapExtension,isSublayerExtension}from"../../ItemType.js";import{SCORE_FIELD,SCORE_FIELD_ORIGINAL}from"../../data/Feature.js";import{MapExtension}from"../../mapping/MapExtension.js";import{cancelify}from"../../support/Cancellable.js";import{isCancellation}from"../../support/utilities.js";import{groupBy}from"../../utilities/array.js";import{AsyncQueue}from"../../utilities/asyncIterable.js";import{checkArg}from"../../utilities/checkArg.js";import{Collection}from"../../utilities/collection.js";import{isMap}from"../../utilities/mapping.js";import{parallelEach}from"../../utilities/promise.js";import{ArcGISGeocoderSearchProvider}from"./ArcGISGeocoderSearchProvider.js";import{GeocoderSearchProvider}from"./GeocoderSearchProvider.js";import{QuerySearchProvider}from"./QuerySearchProvider.js";import{SearchError}from"./SearchError.js";import{SearchOptions}from"./SearchOptions.js";export class SearchService{constructor(){this.providers=new Collection,this.providers.add(new QuerySearchProvider),this.providers.add(new ArcGISGeocoderSearchProvider),this.providers.add(new GeocoderSearchProvider)}isSupported(e){return!!this.providers.find((r=>r.isSupported(e)))}search(e,r,t){checkArg("sources",e).isNotMissing();const i={...SearchOptions.DEFAULTS,...t},{outSpatialReference:o,onSourceComplete:a}=i,n=_getMaxDistanceFromPointOfInterest(i);let s,c=[];Collection.isCollection(e)?c=e.toArray():isMapExtension(e)?s=e:isMap(e)?s=new MapExtension({map:e}):c=[...e];let l=0;const p=new AsyncQueue,u=new Map,f=(e,i)=>{if(!i||0===e.length)return;l++;const s=new Map;for(const r of e)s.set(r,{source:r,count:0,time:-1});(async()=>{const c=[];try{if(p.isDone)return;const l=Date.now();await parallelEach(e,(e=>e.initialize()));for await(const a of i.search(e,r,t)){const e=s.get(a.source);if(e&&(e.count++,e.time<0&&(e.time=Date.now()-l)),p.isDone)return;o&&(a.schema.spatialReference=o),_adjustScoreByDistance(a,n,t);let r=!1;c.push(a.attributes.on("change",(()=>{r||(r=!0,_adjustScoreByDistance(a,n,t),r=!1)}))),p.add(a)}for(const r of e){const e=s.get(r);e&&e.time<0&&(e.time=Date.now()-l)}}catch(r){for(const t of e){s.get(t).failureReason=r}if(isCancellation(r))return void p.reject(r);u.set(e,r)}finally{c.forEach((e=>e.remove()));for(const r of e){const e=s.get(r);a?.(e)}}0==--l&&(u.size?p.reject(new SearchError(u)):p.done())})()};return(async()=>{try{s&&(await s.initialize(),c=s.getAllFeatureSources(isSearchable))}catch(e){p.reject(new Error("Map failed to initialize.",{cause:e}))}groupBy(c,(e=>this.providers.find((r=>r.isSupported(e))))).forEach(f),0===l&&p.done()})(),p}count(e,r,t){checkArg("sources",e).isNotMissing();const i={...t,returnGeometry:!1};let o,a=[];Collection.isCollection(e)?a=e.toArray():isMapExtension(e)?o=e:isMap(e)?o=new MapExtension({map:e}):a=[...e];let n=0;const s=new AsyncQueue,c=new Map,l=(e,t)=>{t&&(n++,(async()=>{if(!s.isDone){try{if(await parallelEach(e,(e=>e.initialize())),s.isDone)return;s.addMany(await t.count(e,r,i))}catch(r){if(isCancellation(r))return void s.reject(r);c.set(e,r)}0==--n&&(c.size?s.reject(new SearchError(c)):s.done())}})())};return(async()=>{try{o&&(await o.initialize(),a=o.getAllFeatureSources(isSearchable))}catch(e){s.reject(new Error("Map failed to initialize.",{cause:e}))}groupBy(a,(e=>this.providers.find((r=>r.isSupported(e))))).forEach(l),0===n&&s.done()})(),s}async suggest(e,r,t){checkArg("sources",e).isNotMissing();const i={...SearchOptions.DEFAULTS,...t};return cancelify(this._suggest(e,r,i),i.cancelToken)}async _suggest(e,r,t){let i,o=[];Collection.isCollection(e)?o=e.toArray():isMapExtension(e)?i=e:isMap(e)?i=new MapExtension({map:e}):o=[...e];const a=[];if(i)try{await i.initialize(),o=i.getAllFeatureSources(isSearchable)}catch(e){throw new Error("Map failed to initialize.",{cause:e})}const n=groupBy(o,(e=>this.providers.find((r=>r.isSupported(e)))));return await parallelEach(n.entries(),(async([e,i])=>{if(e)try{const o=await e.suggest(i,r,t);for(const e of o){const r=a.findIndex((r=>r.suggestion===e.suggestion));r>=0?e.score>a[r].score&&(a[r]=e):a.push(e)}}catch(e){throw isCancellation(e)?e:new SearchError([[i,e]])}})),a.sort(((e,r)=>r.score-e.score)).slice(0,t.maxSuggestions)}}export function isSearchable(e){return!!e.taskSettings.enableSearch&&(isLayerExtension(e)?e.layer?.visible:!isSublayerExtension(e)||e.sublayer?.visible)}function _getMaxDistanceFromPointOfInterest(e){if(!(e.near&&e.initialSearchArea&&e.initialSearchArea.extent&&e.initialSearchArea.extent.spatialReference.equals(e.near.spatialReference)))return;const{extent:r}=e.initialSearchArea,{spatialReference:t}=r,i=distance(new Point({x:r.xmin,y:r.ymin,spatialReference:t}),e.near,void 0),o=distance(new Point({x:r.xmin,y:r.ymax,spatialReference:t}),e.near,void 0),a=distance(new Point({x:r.xmax,y:r.ymin,spatialReference:t}),e.near,void 0),n=distance(new Point({x:r.xmax,y:r.ymax,spatialReference:t}),e.near,void 0);return Math.max(i,o,a,n)}function _adjustScoreByDistance(e,r,t){if(!(r&&t.near&&t.initialSearchArea&&e.geometry&&t.near.spatialReference.equals(e.geometry.spatialReference)&&e.attributes.has(SCORE_FIELD)))return;const i=(r-distance(e.geometry,t.near,void 0))/r,o=(2*e.attributes.get(SCORE_FIELD_ORIGINAL)+i)/3;e.attributes.set(SCORE_FIELD,o)}
1
+ import e from"@arcgis/core/geometry/Point";import{distance as t}from"@arcgis/core/geometry/geometryEngine";import{isLayerExtension as r,isMapExtension as i,isSublayerExtension as o}from"../../ItemType.js";import{SCORE_FIELD as s,SCORE_FIELD_ORIGINAL as a}from"../../data/Feature.js";import{MapExtension as n}from"../../mapping/MapExtension.js";import{cancelify as c}from"../../support/Cancellable.js";import{isCancellation as l}from"../../support/utilities.js";import{groupBy as p}from"../../utilities/array.js";import{AsyncQueue as u}from"../../utilities/asyncIterable.js";import{checkArg as f}from"../../utilities/checkArg.js";import{Collection as m}from"../../utilities/collection.js";import{isMap as d}from"../../utilities/mapping.js";import{parallelEach as h}from"../../utilities/promise.js";import{ArcGISGeocoderSearchProvider as g}from"./ArcGISGeocoderSearchProvider.js";import{GeocoderSearchProvider as y}from"./GeocoderSearchProvider.js";import{QuerySearchProvider as w}from"./QuerySearchProvider.js";import{SearchError as S}from"./SearchError.js";import{SearchOptions as j}from"./SearchOptions.js";export class SearchService{constructor(){this.providers=new m,this.providers.add(new w),this.providers.add(new g),this.providers.add(new y)}isSupported(e){return!!this.providers.find((t=>t.isSupported(e)))}search(r,o,s){f("sources",r).isNotMissing();const a={...j.DEFAULTS,...s},{outSpatialReference:c,onSourceComplete:g}=a,y=function(r){if(!(r.near&&r.initialSearchArea&&r.initialSearchArea.extent&&r.initialSearchArea.extent.spatialReference.equals(r.near.spatialReference)))return;const{extent:i}=r.initialSearchArea,{spatialReference:o}=i,s=t(new e({x:i.xmin,y:i.ymin,spatialReference:o}),r.near,void 0),a=t(new e({x:i.xmin,y:i.ymax,spatialReference:o}),r.near,void 0),n=t(new e({x:i.xmax,y:i.ymin,spatialReference:o}),r.near,void 0),c=t(new e({x:i.xmax,y:i.ymax,spatialReference:o}),r.near,void 0);return Math.max(s,a,n,c)}(a);let w,x=[];m.isCollection(r)?x=r.toArray():i(r)?w=r:d(r)?w=new n({map:r}):x=[...r];let A=0;const b=new u,M=new Map,R=(e,t)=>{if(!t||0===e.length)return;A++;const r=new Map;for(const t of e)r.set(t,{source:t,count:0,time:-1});(async()=>{const i=[];try{if(b.isDone)return;const a=Date.now();await h(e,(e=>e.initialize()));for await(const n of t.search(e,o,s)){const e=r.get(n.source);if(e&&(e.count++,e.time<0&&(e.time=Date.now()-a)),b.isDone)return;c&&(n.schema.spatialReference=c),v(n,y,s);let t=!1;i.push(n.attributes.on("change",(()=>{t||(t=!0,v(n,y,s),t=!1)}))),b.add(n)}for(const t of e){const e=r.get(t);e&&e.time<0&&(e.time=Date.now()-a)}}catch(t){for(const i of e){r.get(i).failureReason=t}if(l(t))return void b.reject(t);M.set(e,t)}finally{i.forEach((e=>e.remove()));for(const t of e){const e=r.get(t);g?.(e)}}0==--A&&(M.size?b.reject(new S(M)):b.done())})()};return(async()=>{try{w&&(await w.initialize(),x=w.getAllFeatureSources(isSearchable))}catch(e){b.reject(new Error("Map failed to initialize.",{cause:e}))}p(x,(e=>this.providers.find((t=>t.isSupported(e))))).forEach(R),0===A&&b.done()})(),b}count(e,t,r){f("sources",e).isNotMissing();const o={...r,returnGeometry:!1};let s,a=[];m.isCollection(e)?a=e.toArray():i(e)?s=e:d(e)?s=new n({map:e}):a=[...e];let c=0;const g=new u,y=new Map,w=(e,r)=>{r&&(c++,(async()=>{if(!g.isDone){try{if(await h(e,(e=>e.initialize())),g.isDone)return;g.addMany(await r.count(e,t,o))}catch(t){if(l(t))return void g.reject(t);y.set(e,t)}0==--c&&(y.size?g.reject(new S(y)):g.done())}})())};return(async()=>{try{s&&(await s.initialize(),a=s.getAllFeatureSources(isSearchable))}catch(e){g.reject(new Error("Map failed to initialize.",{cause:e}))}p(a,(e=>this.providers.find((t=>t.isSupported(e))))).forEach(w),0===c&&g.done()})(),g}async suggest(e,t,r){f("sources",e).isNotMissing();const i={...j.DEFAULTS,...r};return c(this._suggest(e,t,i),i.cancelToken)}async _suggest(e,t,r){let o,s=[];m.isCollection(e)?s=e.toArray():i(e)?o=e:d(e)?o=new n({map:e}):s=[...e];const a=[];if(o)try{await o.initialize(),s=o.getAllFeatureSources(isSearchable)}catch(e){throw new Error("Map failed to initialize.",{cause:e})}const c=p(s,(e=>this.providers.find((t=>t.isSupported(e)))));return await h(c.entries(),(async([e,i])=>{if(e)try{const o=await e.suggest(i,t,r);for(const e of o){const t=a.findIndex((t=>t.suggestion===e.suggestion));t>=0?e.score>a[t].score&&(a[t]=e):a.push(e)}}catch(e){throw l(e)?e:new S([[i,e]])}})),a.sort(((e,t)=>t.score-e.score)).slice(0,r.maxSuggestions)}}export function isSearchable(e){return!!e.taskSettings.enableSearch&&(r(e)?e.layer?.visible:!o(e)||e.sublayer?.visible)}function v(e,r,i){if(!(r&&i.near&&i.initialSearchArea&&e.geometry&&i.near.spatialReference.equals(e.geometry.spatialReference)&&e.attributes.has(s)))return;const o=(r-t(e.geometry,i.near,void 0))/r,n=(2*e.attributes.get(a)+o)/3;e.attributes.set(s,n)}
@@ -1 +1 @@
1
- import{DateFormat}from"../../utilities/date.js";import{isCodedValueDomain}from"../../utilities/esri.js";import{format,NumberFormat}from"../../utilities/number.js";const SEPARATOR="\t";export function getSearchableValue(t,e){const r=Array.from(t.attributes.keys()).find((t=>t.toLowerCase()===e.name.toLowerCase())),a=t.attributes.get(r);if(null==a)return"";if(isCodedValueDomain(t.type?.domains?.[r])||isCodedValueDomain(e.domain))return t.presentableAttributes.get(r);switch(e.type){case"integer":case"small-integer":case"double":case"single":case"oid":return[t.presentableAttributes.get(r),t.format(`{${r}:#.####################}`),t.format(`{${r}:#,#.####################}`),format(NumberFormat.ROUND_TRIP,a)].join("\t");case"date":return[t.presentableAttributes.get(r),t.format(`{${r}:${DateFormat.FULL}}`),t.format(`{${r}:${DateFormat.DATE_SHORT}}`)].join("\t");default:return t.presentableAttributes.get(r)}}
1
+ import{DateFormat as e}from"../../utilities/date.js";import{isCodedValueDomain as t}from"../../utilities/esri.js";import{format as r,NumberFormat as i}from"../../utilities/number.js";const s="\t";export function getSearchableValue(a,o){const n=Array.from(a.attributes.keys()).find((e=>e.toLowerCase()===o.name.toLowerCase())),u=a.attributes.get(n);if(null==u)return"";if(t(a.type?.domains?.[n])||t(o.domain))return a.presentableAttributes.get(n);switch(o.type){case"integer":case"small-integer":case"double":case"single":case"oid":return[a.presentableAttributes.get(n),a.format(`{${n}:#.####################}`),a.format(`{${n}:#,#.####################}`),r(i.ROUND_TRIP,u)].join(s);case"date":return[a.presentableAttributes.get(n),a.format(`{${n}:${e.FULL}}`),a.format(`{${n}:${e.DATE_SHORT}}`)].join(s);default:return a.presentableAttributes.get(n)}}
@@ -1 +1 @@
1
- import{Observable}from"../support/Observable.js";import{onCollectionPropertyChange}from"./watch.js";export class CollectionProxy extends Observable{constructor(t){super(),this._destroyed=!1,this._initialized=!0,this._collectionField=t,onCollectionPropertyChange(this,"_collectionField",(t=>{this.emit("change",t)})),this.watch("_collectionField.length",(()=>this.notifyChange("length")))}get length(){return this._collection.length}get declaredClass(){return"esri.core.Collection"}get destroyed(){return this._destroyed}set destroyed(t){this._destroyed=t}get initialized(){return this._initialized}set initialized(t){this._initialized=t}get _collection(){if(void 0===this._collectionField)throw new Error("CollectionProxy requires a backing collection.");return this._collectionField}set _collection(t){this._collectionField=t}add(t,e){return this._collection.add(t,e),this}addMany(t,e){if(!t)return this;let i=e;if(arguments.length>1)for(let e=0;e<t.length;e++)"function"==typeof t.getItemAt?this.add(t.getItemAt(e),i++):this.add(t[e],i++);else for(let e=0;e<t.length;e++)"function"==typeof t.getItemAt?this.add(t.getItemAt(e)):this.add(t[e]);return this}clone(){const t=Object.create(Object.getPrototypeOf(this));return t._collection=this._collection,t}concat(t){return this._collection.concat(t)}destroy(){}every(t){return this._collection.every(t)}filter(t){return this._collection.filter(t)}find(t){return this._collection.find(t)}findIndex(t){return this._collection.findIndex(t)}flatten(t){return this._collection.flatten(t)}forEach(t){return this._collection.forEach(t)}getItemAt(t){return this._collection.getItemAt(t)}includes(t){return this._collection.includes(t)}indexOf(t,e){return this._collection.indexOf(t,e)}join(t){return this._collection.join(t)}lastIndexOf(t,e){return this._collection.lastIndexOf(t,e)}map(t){return this._collection.map(t)}pop(){return this.removeAt(this.length-1)}push(t){return this.add(t,this.length),this.length}reduce(t,e){return this._collection.reduce(t,e)}reduceRight(t,e){return this._collection.reduceRight(t,e)}remove(t){this.removeAt(this.indexOf(t))}removeAll(){for(;this.length;)this.pop()}removeAt(t){return this._collection.removeAt(t)}removeMany(t){if(!t)return;const e=[];for(let i=0;i<t.length;i++){const r="function"==typeof t.getItemAt?t.getItemAt(i):t[i],o=this.indexOf(r);o>=0&&e.push(this.removeAt(o))}return e}reorder(t,e){return this._collection.reorder(t,e)}reverse(){return this._collection.reverse(),this}shift(){return this.removeAt(0)}slice(t,e){return this._collection.slice(t,e)}some(t){return this._collection.some(t)}sort(t){return this._collection.sort(t),this}splice(t,e,...i){const r=[];for(let i=e;i>0;i--)r.push(this.removeAt(t));let o=t;return i.forEach((t=>{this.add(t,o),o++})),r}toArray(){return this._collection.toArray()}unshift(t){return this.add(t,0),this.length}_get(t){throw Error()}_set(t,e){throw Error()}}
1
+ import{Observable as t}from"../support/Observable.js";import{onCollectionPropertyChange as e}from"./watch.js";export class CollectionProxy extends t{get length(){return this._collection.length}get declaredClass(){return"esri.core.Collection"}get destroyed(){return this._destroyed}set destroyed(t){this._destroyed=t}get initialized(){return this._initialized}set initialized(t){this._initialized=t}get _collection(){if(void 0===this._collectionField)throw new Error("CollectionProxy requires a backing collection.");return this._collectionField}set _collection(t){this._collectionField=t}constructor(t){super(),this._destroyed=!1,this._initialized=!0,this._collectionField=t,e(this,"_collectionField",(t=>{this.emit("change",t)})),this.watch("_collectionField.length",(()=>this.notifyChange("length")))}add(t,e){return this._collection.add(t,e),this}addMany(t,e){if(!t)return this;let i=e;if(arguments.length>1)for(let e=0;e<t.length;e++)"function"==typeof t.getItemAt?this.add(t.getItemAt(e),i++):this.add(t[e],i++);else for(let e=0;e<t.length;e++)"function"==typeof t.getItemAt?this.add(t.getItemAt(e)):this.add(t[e]);return this}clone(){const t=Object.create(Object.getPrototypeOf(this));return t._collection=this._collection,t}concat(t){return this._collection.concat(t)}destroy(){}every(t){return this._collection.every(t)}filter(t){return this._collection.filter(t)}find(t){return this._collection.find(t)}findIndex(t){return this._collection.findIndex(t)}flatten(t){return this._collection.flatten(t)}forEach(t){return this._collection.forEach(t)}getItemAt(t){return this._collection.getItemAt(t)}includes(t){return this._collection.includes(t)}indexOf(t,e){return this._collection.indexOf(t,e)}join(t){return this._collection.join(t)}lastIndexOf(t,e){return this._collection.lastIndexOf(t,e)}map(t){return this._collection.map(t)}pop(){return this.removeAt(this.length-1)}push(t){return this.add(t,this.length),this.length}reduce(t,e){return this._collection.reduce(t,e)}reduceRight(t,e){return this._collection.reduceRight(t,e)}remove(t){this.removeAt(this.indexOf(t))}removeAll(){for(;this.length;)this.pop()}removeAt(t){return this._collection.removeAt(t)}removeMany(t){if(!t)return;const e=[];for(let i=0;i<t.length;i++){const r="function"==typeof t.getItemAt?t.getItemAt(i):t[i],o=this.indexOf(r);o>=0&&e.push(this.removeAt(o))}return e}reorder(t,e){return this._collection.reorder(t,e)}reverse(){return this._collection.reverse(),this}shift(){return this.removeAt(0)}slice(t,e){return this._collection.slice(t,e)}some(t){return this._collection.some(t)}sort(t){return this._collection.sort(t),this}splice(t,e,...i){const r=[];for(let i=e;i>0;i--)r.push(this.removeAt(t));let o=t;return i.forEach((t=>{this.add(t,o),o++})),r}toArray(){return this._collection.toArray()}unshift(t){return this.add(t,0),this.length}_get(t){throw Error()}_set(t,e){throw Error()}}
@@ -1 +1 @@
1
- import{Collection}from"../utilities/collection.js";import{CollectionProxy}from"./CollectionProxy.js";import{checkArg}from"./checkArg.js";export class CopyOnWriteCollection extends CollectionProxy{constructor(o){super(o),checkArg("collection",o).isNotMissing(),this._originalCollection=o}get originalCollection(){return this._originalCollection}set originalCollection(o){checkArg("value",o).isNotMissing(),this.isModified||(this._collection=o),this._originalCollection=o}get isModified(){return this._collection!==this.originalCollection}clone(){const o=new CopyOnWriteCollection(this.originalCollection);return this.isModified&&(o._collection=this._cloneCollection(this._collection)),o}add(o,i){return this._copy(),super.add(o,i)}removeAt(o){return this._copy(),super.removeAt(o)}reorder(o,i){return this._copy(),super.reorder(o,i)}reset(){this.isModified&&(this._collection=this._originalCollection)}sort(o){return this._copy(),super.sort(o)}_copy(){this.isModified||(this._collection=this._cloneCollection(this.originalCollection))}_cloneCollection(o){return new Collection(o.toArray())}}
1
+ import{Collection as i}from"../utilities/collection.js";import{CollectionProxy as o}from"./CollectionProxy.js";import{checkArg as t}from"./checkArg.js";export class CopyOnWriteCollection extends o{get originalCollection(){return this._originalCollection}set originalCollection(i){t("value",i).isNotMissing(),this.isModified||(this._collection=i),this._originalCollection=i}get isModified(){return this._collection!==this.originalCollection}constructor(i){super(i),t("collection",i).isNotMissing(),this._originalCollection=i}clone(){const i=new CopyOnWriteCollection(this.originalCollection);return this.isModified&&(i._collection=this._cloneCollection(this._collection)),i}add(i,o){return this._copy(),super.add(i,o)}removeAt(i){return this._copy(),super.removeAt(i)}reorder(i,o){return this._copy(),super.reorder(i,o)}reset(){this.isModified&&(this._collection=this._originalCollection)}sort(i){return this._copy(),super.sort(i)}_copy(){this.isModified||(this._collection=this._cloneCollection(this.originalCollection))}_cloneCollection(o){return new i(o.toArray())}}
@@ -1 +1 @@
1
- import{format}from"../utilities/string.js";export class GeometryServiceError extends Error{constructor(r,e,...o){super(e&&format(e,...o)||"The geometry service encountered an error."),this.name="GeometryServiceError",this.error=r}}
1
+ import{format as r}from"../utilities/string.js";export class GeometryServiceError extends Error{constructor(e,o,...t){super(o&&r(o,...t)||"The geometry service encountered an error."),this.name="GeometryServiceError",this.error=e}}
@@ -1 +1 @@
1
- import{ReadOnlyCollection}from"./ReadOnlyCollection.js";import{checkArg}from"./checkArg.js";export class MapTransformCollection extends ReadOnlyCollection{constructor(e,l){super(),checkArg("originalCollection",e).isNotMissing(),this._callback=l,this._originalCollection=e,e.on("change",(e=>{this.emit("change",{added:e.added.map(this._callback),removed:e.removed.map(this._callback),moved:e.moved.map(this._callback),target:this})})),e.watch("length",(()=>this.notifyChange("length")))}get _collection(){return this._originalCollection.map(this._callback)}}
1
+ import{ReadOnlyCollection as t}from"./ReadOnlyCollection.js";import{checkArg as o}from"./checkArg.js";export class MapTransformCollection extends t{get _collection(){return this._originalCollection.map(this._callback)}constructor(t,e){super(),o("originalCollection",t).isNotMissing(),this._callback=e,this._originalCollection=t,t.on("change",(t=>{this.emit("change",{added:t.added.map(this._callback),removed:t.removed.map(this._callback),moved:t.moved.map(this._callback),target:this})})),t.watch("length",(()=>this.notifyChange("length")))}}
@@ -1 +1 @@
1
- import{Observable}from"../support/Observable.js";import{toJSON}from"./object.js";export class ObservableMap extends Observable{constructor(){super(),this._originalMap=new Map}get size(){return this._originalMap.size}clear(){if(!this.size)return;this.notifyChange("size");const t=Array.from(this.entries());this._originalMap.clear(),this.emit("change",{added:[],removed:t,target:this})}delete(t){if(!this.has(t))return!1;const e=this.get(t);return this.notifyChange("size"),this._originalMap.delete(t),this.emit("change",{added:[],removed:[[t,e]],target:this}),!0}forEach(t,e){this._originalMap.forEach(t,e)}get(t){return this._originalMap.get(t)}has(t){return this._originalMap.has(t)}set(t,e){const i=!this.has(t),r=this.get(t);return this.notifyChange("size"),this._originalMap.set(t,e),this.emit("change",{added:[[t,e]],removed:i?[]:[[t,r]],target:this}),this}entries(){return this._originalMap.entries()}keys(){return this._originalMap.keys()}values(){return this._originalMap.values()}[(Symbol.toStringTag,Symbol.iterator)](){return this._originalMap[Symbol.iterator]()}toJSON(){return toJSON([...this])}on(t,e){return super.on(t,e)}}
1
+ import{Observable as t}from"../support/Observable.js";import{toJSON as e}from"./object.js";export class ObservableMap extends t{get size(){return this._originalMap.size}constructor(){super(),this._originalMap=new Map}clear(){if(!this.size)return;this.notifyChange("size");const t=Array.from(this.entries());this._originalMap.clear(),this.emit("change",{added:[],removed:t,target:this})}delete(t){if(!this.has(t))return!1;const e=this.get(t);return this.notifyChange("size"),this._originalMap.delete(t),this.emit("change",{added:[],removed:[[t,e]],target:this}),!0}forEach(t,e){this._originalMap.forEach(t,e)}get(t){return this._originalMap.get(t)}has(t){return this._originalMap.has(t)}set(t,e){const i=!this.has(t),r=this.get(t);return this.notifyChange("size"),this._originalMap.set(t,e),this.emit("change",{added:[[t,e]],removed:i?[]:[[t,r]],target:this}),this}entries(){return this._originalMap.entries()}keys(){return this._originalMap.keys()}values(){return this._originalMap.values()}[(Symbol.toStringTag,Symbol.iterator)](){return this._originalMap[Symbol.iterator]()}toJSON(){return e([...this])}on(t,e){return super.on(t,e)}}
@@ -1 +1 @@
1
- import{Observable}from"../support/Observable.js";import{toJSON}from"./object.js";export class ObservableSet extends Observable{constructor(){super(),this._originalSet=new Set}get size(){return this._originalSet.size}add(e){return this.has(e)||(this.notifyChange("size"),this._originalSet.add(e),this.emit("change",{added:[e],removed:[],moved:[],target:this})),this}addMany(e){const t=[];for(const i of e)this.has(i)||(t.push(i),this._originalSet.add(i));return t.length&&(this.notifyChange("size"),this.emit("change",{added:t,removed:[],moved:[],target:this})),this}clear(){if(!this.size)return;this.notifyChange("size");const e=Array.from(this.values());this._originalSet.clear(),this.emit("change",{added:[],removed:e,moved:[],target:this})}delete(e){return!!this.has(e)&&(this.notifyChange("size"),this._originalSet.delete(e),this.emit("change",{added:[],removed:[e],moved:[],target:this}),!0)}deleteMany(e){const t=[];for(const i of e)this.has(i)&&(t.push(i),this._originalSet.delete(i));return t.length&&(this.notifyChange("size"),this.emit("change",{added:[],removed:t,moved:[],target:this})),!!t.length}forEach(e,t){this._originalSet.forEach(e,t)}has(e){return this._originalSet.has(e)}entries(){return this._originalSet.entries()}keys(){return this._originalSet.keys()}values(){return this._originalSet.values()}[(Symbol.toStringTag,Symbol.iterator)](){return this._originalSet[Symbol.iterator]()}toJSON(){return toJSON([...this.values()])}on(e,t){return super.on(e,t)}}
1
+ import{Observable as e}from"../support/Observable.js";import{toJSON as t}from"./object.js";export class ObservableSet extends e{get size(){return this._originalSet.size}constructor(){super(),this._originalSet=new Set}add(e){return this.has(e)||(this.notifyChange("size"),this._originalSet.add(e),this.emit("change",{added:[e],removed:[],moved:[],target:this})),this}addMany(e){const t=[];for(const i of e)this.has(i)||(t.push(i),this._originalSet.add(i));return t.length&&(this.notifyChange("size"),this.emit("change",{added:t,removed:[],moved:[],target:this})),this}clear(){if(!this.size)return;this.notifyChange("size");const e=Array.from(this.values());this._originalSet.clear(),this.emit("change",{added:[],removed:e,moved:[],target:this})}delete(e){return!!this.has(e)&&(this.notifyChange("size"),this._originalSet.delete(e),this.emit("change",{added:[],removed:[e],moved:[],target:this}),!0)}deleteMany(e){const t=[];for(const i of e)this.has(i)&&(t.push(i),this._originalSet.delete(i));return t.length&&(this.notifyChange("size"),this.emit("change",{added:[],removed:t,moved:[],target:this})),!!t.length}forEach(e,t){this._originalSet.forEach(e,t)}has(e){return this._originalSet.has(e)}entries(){return this._originalSet.entries()}keys(){return this._originalSet.keys()}values(){return this._originalSet.values()}[(Symbol.toStringTag,Symbol.iterator)](){return this._originalSet[Symbol.iterator]()}toJSON(){return t([...this.values()])}on(e,t){return super.on(e,t)}}
@@ -1 +1 @@
1
- import{Observable}from"../support/Observable.js";export class ObservableWeakSet extends Observable{constructor(){super(),this._originalSet=new WeakSet}add(e){return this.has(e)||(this.notifyChange("size"),this._originalSet.add(e),this.emit("change",{added:[e],removed:[],moved:[],target:this})),this}addMany(e){const t=[];for(const s of e)this.has(s)||(t.push(s),this._originalSet.add(s));return t.length&&(this.notifyChange("size"),this.emit("change",{added:t,removed:[],moved:[],target:this})),this}delete(e){return!!this.has(e)&&(this.notifyChange("size"),this._originalSet.delete(e),this.emit("change",{added:[],removed:[e],moved:[],target:this}),!0)}deleteMany(e){const t=[];for(const s of e)this.has(s)&&(t.push(s),this._originalSet.delete(s));return t.length&&(this.notifyChange("size"),this.emit("change",{added:[],removed:t,moved:[],target:this})),!!t.length}has(e){return this._originalSet.has(e)}on(e,t){return super.on("change",t)}}Symbol.toStringTag;
1
+ import{Observable as e}from"../support/Observable.js";export class ObservableWeakSet extends e{constructor(){super(),this._originalSet=new WeakSet}add(e){return this.has(e)||(this.notifyChange("size"),this._originalSet.add(e),this.emit("change",{added:[e],removed:[],moved:[],target:this})),this}addMany(e){const t=[];for(const i of e)this.has(i)||(t.push(i),this._originalSet.add(i));return t.length&&(this.notifyChange("size"),this.emit("change",{added:t,removed:[],moved:[],target:this})),this}delete(e){return!!this.has(e)&&(this.notifyChange("size"),this._originalSet.delete(e),this.emit("change",{added:[],removed:[e],moved:[],target:this}),!0)}deleteMany(e){const t=[];for(const i of e)this.has(i)&&(t.push(i),this._originalSet.delete(i));return t.length&&(this.notifyChange("size"),this.emit("change",{added:[],removed:t,moved:[],target:this})),!!t.length}has(e){return this._originalSet.has(e)}on(e,t){return super.on("change",t)}}Symbol.toStringTag;
@@ -1 +1 @@
1
- import{InvalidOperationError}from"../InvalidOperationError.js";import{CollectionProxy}from"./CollectionProxy.js";const ERROR_READ_ONLY="This collection is read-only.";export class ReadOnlyCollection extends CollectionProxy{add(r,o){throw new InvalidOperationError(ERROR_READ_ONLY)}removeAt(r){throw new InvalidOperationError(ERROR_READ_ONLY)}removeAll(){throw new InvalidOperationError(ERROR_READ_ONLY)}reorder(r,o){throw new InvalidOperationError(ERROR_READ_ONLY)}reverse(){throw new InvalidOperationError(ERROR_READ_ONLY)}sort(r){throw new InvalidOperationError(ERROR_READ_ONLY)}splice(r,o,...e){throw new InvalidOperationError(ERROR_READ_ONLY)}}
1
+ import{InvalidOperationError as o}from"../InvalidOperationError.js";import{CollectionProxy as e}from"./CollectionProxy.js";const r="This collection is read-only.";export class ReadOnlyCollection extends e{add(e,t){throw new o(r)}removeAt(e){throw new o(r)}removeAll(){throw new o(r)}reorder(e,t){throw new o(r)}reverse(){throw new o(r)}sort(e){throw new o(r)}splice(e,t,...n){throw new o(r)}}
@@ -1 +1 @@
1
- import{InvalidOperationError}from"../InvalidOperationError.js";import{ObservableMap}from"./ObservableMap.js";const ERROR_READ_ONLY="This map is read-only.";export class ReadOnlyMap extends ObservableMap{constructor(r){super(),this._originalMap=r,r.on("change",(r=>this.emit("change",r))),this.watch("_originalMap.size",(()=>this.notifyChange("size")))}clear(){throw new InvalidOperationError(ERROR_READ_ONLY)}delete(r){throw new InvalidOperationError(ERROR_READ_ONLY)}set(){throw new InvalidOperationError(ERROR_READ_ONLY)}}
1
+ import{InvalidOperationError as e}from"../InvalidOperationError.js";import{ObservableMap as r}from"./ObservableMap.js";const t="This map is read-only.";export class ReadOnlyMap extends r{constructor(e){super(),this._originalMap=e,e.on("change",(e=>this.emit("change",e))),this.watch("_originalMap.size",(()=>this.notifyChange("size")))}clear(){throw new e(t)}delete(r){throw new e(t)}set(){throw new e(t)}}