@vertigis/arcgis-extensions 38.0.4 → 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.
- package/AccessDeniedError.js +1 -1
- package/AppConfig.schema.json +35 -39
- package/ArgumentMissingError.js +1 -1
- package/ArgumentOutOfRangeError.js +1 -1
- package/Entity.js +1 -1
- package/FailureMode.d.ts +1 -1
- package/Hyperlink.js +1 -1
- package/LanguageResources.d.ts +1 -3
- package/LanguageResources.js +1 -1
- package/NotFoundError.js +1 -1
- package/PortalUri.js +1 -1
- package/data/ArcGISServiceTableExtension.js +1 -1
- package/data/Attachment.js +1 -1
- package/data/Feature.js +1 -1
- package/data/FeatureList.d.ts +3 -3
- package/data/FeatureList.js +1 -1
- package/data/FeatureSaveError.js +1 -1
- package/data/FeatureSet.js +1 -1
- package/data/FeatureSettings.js +1 -1
- package/data/FeatureSourceBase.js +1 -1
- package/data/FeatureStream.js +1 -1
- package/data/FieldExtension.js +1 -1
- package/data/PopupContentExtension.js +1 -1
- package/data/Relationship.js +1 -1
- package/data/RelationshipBase.js +1 -1
- package/data/Schema.js +1 -1
- package/data/Table.js +1 -1
- package/data/TableExtension.js +1 -1
- package/data/TaskSettings.js +1 -1
- package/data/_Relationship.d.ts +3 -3
- package/data/_Relationship.js +1 -1
- package/data/_TableExtension.js +1 -1
- package/data/convert.js +1 -1
- package/data/support/DefaultRelationshipFactory.js +1 -1
- package/data/support/DefaultTableExtensionFactory.js +1 -1
- package/data/support/attachments.js +1 -1
- package/docs/html/assets/main.js +56 -52
- package/docs/html/assets/search.js +1 -1
- package/docs/html/assets/style.css +23 -0
- package/docs/html/classes/data_FeatureSet.FeatureSet.html +2 -2
- package/docs/html/classes/data_FeatureStream.FeatureStream.html +1 -1
- package/docs/html/classes/utilities_ObservableMap.ObservableMap.html +2 -2
- package/docs/html/classes/utilities_ObservableSet.ObservableSet.html +2 -2
- package/docs/html/classes/utilities_ObservableWeakSet.ObservableWeakSet.html +1 -1
- package/docs/html/classes/utilities_asyncIterable.AsyncQueue.html +1 -1
- package/docs/html/classes/utilities_date.DateFormatter.html +1 -1
- package/docs/html/classes/utilities_string.StringFormatter.html +6 -24
- package/docs/html/functions/utilities_string.format.html +2 -18
- package/docs/html/interfaces/LanguageResources.LanguageResourcesProperties.html +2 -7
- package/docs/html/interfaces/data_support_attachments.AttachmentEnabledLayer.html +4 -6
- package/docs/html/interfaces/mapping_BuildingSceneLayerExtension.BuildingSceneLayerProperties.html +1 -1
- package/docs/html/interfaces/mapping_FeatureLayerExtension.FeatureLayerProperties.html +1 -1
- package/docs/html/interfaces/mapping_FeatureLayerExtensionBase.FeatureLayerBaseProperties.html +1 -1
- package/docs/html/interfaces/mapping_PointCloudLayerExtension.PointCloudLayerProperties.html +1 -1
- package/docs/html/interfaces/portal_ApplicationProperties.ApplicationProperties.html +15 -12
- package/docs/html/interfaces/portal_Background.ColorBackground.html +3 -2
- package/docs/html/interfaces/portal_BaseMap.BaseMap-1.html +2 -1
- package/docs/html/interfaces/portal_BaseMapLayer.BaseMapLayerBase.html +2 -1
- package/docs/html/interfaces/portal_BingLayer.BingLayer.html +2 -1
- package/docs/html/interfaces/portal_Bookmark.Bookmark.html +2 -1
- package/docs/html/interfaces/portal_BuildingSceneLayer.BuildingSceneLayer-1.html +1 -1
- package/docs/html/interfaces/portal_CIMSymbol.CIMSymbol.html +2 -1
- package/docs/html/interfaces/portal_CSVLayer.CSVLayer-1.html +3 -2
- package/docs/html/interfaces/portal_Camera.Camera-1.html +2 -1
- package/docs/html/interfaces/portal_ClassBreaksRenderer.ClassBreakInfo.html +2 -1
- package/docs/html/interfaces/portal_ClassBreaksRenderer.ClassBreaksRenderer.html +2 -1
- package/docs/html/interfaces/portal_CodedValueDomain.CodedValue.html +1 -1
- package/docs/html/interfaces/portal_CodedValueDomain.CodedValueDomain-1.html +1 -1
- package/docs/html/interfaces/portal_ColorClassBreakInfo.ColorClassBreakInfo.html +2 -1
- package/docs/html/interfaces/portal_ColorUniqueValueInfos.ColorUniqueValueInfos.html +2 -1
- package/docs/html/interfaces/portal_DataSource.DataSourceBase.html +2 -2
- package/docs/html/interfaces/portal_DefinitionEditor.DefinitionEditor.html +2 -1
- package/docs/html/interfaces/portal_DefinitionEditor.Input.html +1 -1
- package/docs/html/interfaces/portal_DefinitionEditor.Parameter.html +1 -1
- package/docs/html/interfaces/portal_DrawingInfo.DrawingInfo-1.html +2 -1
- package/docs/html/interfaces/portal_DynamicDataLayer.DynamicDataLayer.html +2 -2
- package/docs/html/interfaces/portal_DynamicMapLayer.DynamicMapLayer.html +1 -1
- package/docs/html/interfaces/portal_ElevationInfo.ElevationInfo-1.html +1 -1
- package/docs/html/interfaces/portal_ElevationLayer.ElevationLayer-1.html +3 -2
- package/docs/html/interfaces/portal_Environment.Environment-1.html +2 -1
- package/docs/html/interfaces/portal_Extent.Extent.html +1 -1
- package/docs/html/interfaces/portal_ExtrudeSymbol3DLayer.ExtrudeSymbol3DLayer.html +2 -1
- package/docs/html/interfaces/portal_Feature.Feature-1.html +2 -1
- package/docs/html/interfaces/portal_FeatureCollection.FeatureCollection.html +2 -1
- package/docs/html/interfaces/portal_FeatureLayer.FeatureLayer-1.html +3 -2
- package/docs/html/interfaces/portal_FeatureSet.FeatureSet.html +2 -1
- package/docs/html/interfaces/portal_Field.Field-1.html +1 -1
- package/docs/html/interfaces/portal_FieldInfo.FieldInfo.html +2 -1
- package/docs/html/interfaces/portal_FillSymbol3DLayer.FillSymbol3DLayer.html +2 -1
- package/docs/html/interfaces/portal_FormInfo.FormAttachmentElement.html +1 -1
- package/docs/html/interfaces/portal_FormInfo.FormBarcodeScannerInput.html +1 -1
- package/docs/html/interfaces/portal_FormInfo.FormComboBoxInput.html +1 -1
- package/docs/html/interfaces/portal_FormInfo.FormDateTimePickerInput.html +1 -1
- package/docs/html/interfaces/portal_FormInfo.FormExpressionInfo.html +1 -1
- package/docs/html/interfaces/portal_FormInfo.FormFieldElement.html +1 -1
- package/docs/html/interfaces/portal_FormInfo.FormGroupElement.html +1 -1
- package/docs/html/interfaces/portal_FormInfo.FormInfo-1.html +1 -1
- package/docs/html/interfaces/portal_FormInfo.FormRadioButtonsInput.html +1 -1
- package/docs/html/interfaces/portal_FormInfo.FormRelationshipElement.html +1 -1
- package/docs/html/interfaces/portal_FormInfo.FormSwitchInput.html +1 -1
- package/docs/html/interfaces/portal_FormInfo.FormTextAreaInput.html +1 -1
- package/docs/html/interfaces/portal_FormInfo.FormTextBoxInput.html +1 -1
- package/docs/html/interfaces/portal_Format.Format.html +2 -1
- package/docs/html/interfaces/portal_GeoRSSLayer.GeoRSSLayer-1.html +3 -2
- package/docs/html/interfaces/portal_GroupLayer.GroupLayer-1.html +3 -2
- package/docs/html/interfaces/portal_HeatmapRenderer.ColorStop.html +2 -1
- package/docs/html/interfaces/portal_HeatmapRenderer.HeatmapRenderer.html +2 -1
- package/docs/html/interfaces/portal_IconSymbol3DLayer.IconSymbol3DLayer.html +2 -1
- package/docs/html/interfaces/portal_ImageServiceLayer.ImageServiceLayer-1.html +3 -2
- package/docs/html/interfaces/portal_ImageServiceVectorLayer.ImageServiceVectorLayer.html +3 -2
- package/docs/html/interfaces/portal_InheritedDomain.InheritedDomain-1.html +1 -1
- package/docs/html/interfaces/portal_InitialState.InitialState-1.html +2 -1
- package/docs/html/interfaces/portal_IntegratedMeshLayer.IntegratedMeshLayer-1.html +3 -2
- package/docs/html/interfaces/portal_Item.Item-1.html +3 -2
- package/docs/html/interfaces/portal_JoinTableDataSource.JoinTableDataSource.html +2 -2
- package/docs/html/interfaces/portal_KMLLayer.KMLLayer-1.html +3 -2
- package/docs/html/interfaces/portal_LabelSymbol3D.LabelSymbol3D.html +2 -1
- package/docs/html/interfaces/portal_LabelingInfo.LabelingInfo-1.html +3 -2
- package/docs/html/interfaces/portal_Layer.Layer-1.html +1 -1
- package/docs/html/interfaces/portal_LayerDefinition.FieldOverride.html +1 -1
- package/docs/html/interfaces/portal_LayerDefinition.LayerDefinition-1.html +4 -3
- package/docs/html/interfaces/portal_LayerDefinition.LayerTimeInfo.html +2 -2
- package/docs/html/interfaces/portal_Lighting.SunLighting.html +2 -1
- package/docs/html/interfaces/portal_Lighting.VirtualLighting.html +2 -1
- package/docs/html/interfaces/portal_LineSymbol3D.LineSymbol3D.html +2 -1
- package/docs/html/interfaces/portal_LineSymbol3DLayer.LineSymbol3DLayer.html +2 -1
- package/docs/html/interfaces/portal_LocationInfo.LocationInfo.html +2 -1
- package/docs/html/interfaces/portal_MapFloorInfo.FacilityLayerInfo.html +1 -1
- package/docs/html/interfaces/portal_MapFloorInfo.LevelLayerInfo.html +1 -1
- package/docs/html/interfaces/portal_MapFloorInfo.MapFloorInfo-1.html +1 -1
- package/docs/html/interfaces/portal_MapFloorInfo.SiteLayerInfo.html +1 -1
- package/docs/html/interfaces/portal_MapRangeInfo.MapRangeInfo.html +2 -1
- package/docs/html/interfaces/portal_MapServiceLayer.MapServiceLayer-1.html +3 -2
- package/docs/html/interfaces/portal_MeshSymbol3D.MeshSymbol3D.html +2 -1
- package/docs/html/interfaces/portal_MosaicRule.MosaicRule-1.html +2 -1
- package/docs/html/interfaces/portal_Multipoint.Multipoint.html +1 -1
- package/docs/html/interfaces/portal_ObjectSymbol3DLayer.ObjectSymbol3DLayer.html +2 -1
- package/docs/html/interfaces/portal_OpenStreetMapLayer.OpenStreetMapLayer-1.html +2 -1
- package/docs/html/interfaces/portal_OperationalLayer.OperationalLayerBase.html +1 -1
- package/docs/html/interfaces/portal_PathSymbol3DLayer.PathSymbol3DLayer.html +2 -1
- package/docs/html/interfaces/portal_PictureFillSymbol.PictureFillSymbol.html +2 -1
- package/docs/html/interfaces/portal_PictureMarkerSymbol.PictureMarkerSymbol.html +2 -1
- package/docs/html/interfaces/portal_Point.Point.html +2 -1
- package/docs/html/interfaces/portal_PointCloudBitfieldFilter.PointCloudBitfieldFilter.html +2 -1
- package/docs/html/interfaces/portal_PointCloudClassBreaksRenderer.PointCloudClassBreaksRenderer.html +4 -2
- package/docs/html/interfaces/portal_PointCloudFixedSizeAlgorithm.PointCloudFixedSizeAlgorithm.html +2 -1
- package/docs/html/interfaces/portal_PointCloudLayer.PointCloudLayer-1.html +3 -2
- package/docs/html/interfaces/portal_PointCloudRGBRenderer.PointCloudRGBRenderer.html +4 -2
- package/docs/html/interfaces/portal_PointCloudRenderer.PointCloudRendererBase.html +4 -2
- package/docs/html/interfaces/portal_PointCloudReturnFilter.PointCloudReturnFilter.html +2 -1
- package/docs/html/interfaces/portal_PointCloudSplatAlgorithm.PointCloudSplatAlgorithm.html +2 -1
- package/docs/html/interfaces/portal_PointCloudStretchRenderer.PointCloudStretchRenderer.html +4 -2
- package/docs/html/interfaces/portal_PointCloudUniqueValueRenderer.PointCloudUniqueValueRenderer.html +4 -2
- package/docs/html/interfaces/portal_PointCloudValueFilter.PointCloudValueFilter.html +2 -1
- package/docs/html/interfaces/portal_PointSymbol3D.PointSymbol3D.html +3 -2
- package/docs/html/interfaces/portal_Polygon.Polygon.html +1 -1
- package/docs/html/interfaces/portal_PolygonSymbol3D.PolygonSymbol3D.html +2 -1
- package/docs/html/interfaces/portal_Polyline.Polyline.html +1 -1
- package/docs/html/interfaces/portal_PopupExpressionInfo.PopupExpressionInfo.html +2 -1
- package/docs/html/interfaces/portal_PopupInfo.OrderByFields.html +2 -1
- package/docs/html/interfaces/portal_PopupInfo.RelatedRecordsInfo.html +2 -1
- package/docs/html/interfaces/portal_PredominanceRenderer.PredominanceRenderer.html +2 -1
- package/docs/html/interfaces/portal_Presentation.Presentation-1.html +2 -1
- package/docs/html/interfaces/portal_QueryTableDataSource.QueryTableDataSource.html +2 -2
- package/docs/html/interfaces/portal_RangeDomain.RangeDomain-1.html +1 -1
- package/docs/html/interfaces/portal_RangeInfo.RangeInfo.html +2 -1
- package/docs/html/interfaces/portal_RasterDataSource.RasterDataSource.html +2 -2
- package/docs/html/interfaces/portal_Renderer.AuthoringInfo.html +2 -1
- package/docs/html/interfaces/portal_Renderer.ColorRamp.html +1 -1
- package/docs/html/interfaces/portal_Renderer.RendererBase.html +2 -1
- package/docs/html/interfaces/portal_RenderingRule.RenderingRule-1.html +3 -2
- package/docs/html/interfaces/portal_SceneLayer.SceneLayer-1.html +3 -2
- package/docs/html/interfaces/portal_SimpleFillSymbol.SimpleFillSymbol.html +2 -1
- package/docs/html/interfaces/portal_SimpleLineSymbol.SimpleLineSymbol.html +2 -1
- package/docs/html/interfaces/portal_SimpleMarkerSymbol.SimpleMarkerSymbol.html +2 -1
- package/docs/html/interfaces/portal_SimpleRenderer.SimpleRenderer.html +2 -1
- package/docs/html/interfaces/portal_Slide.Slide-1.html +4 -4
- package/docs/html/interfaces/portal_SpatialReference.SpatialReference-1.html +2 -1
- package/docs/html/interfaces/portal_StreamLayer.StreamLayer-1.html +2 -2
- package/docs/html/interfaces/portal_StyleSymbolReference.StyleSymbolReference.html +2 -1
- package/docs/html/interfaces/portal_SubtypeGroupLayer.SubtypeGroupLayer-1.html +3 -2
- package/docs/html/interfaces/portal_SubtypeGroupLayer.SubtypeSubtypeGroupLayer.html +2 -2
- package/docs/html/interfaces/portal_SubtypeSublayer.SubtypeSublayer-1.html +3 -2
- package/docs/html/interfaces/portal_Symbol.Font.html +1 -1
- package/docs/html/interfaces/portal_Symbol3D.Material.html +2 -1
- package/docs/html/interfaces/portal_Symbol3D.Outline.html +2 -1
- package/docs/html/interfaces/portal_Symbol3D.ResourceIconSymbol.html +2 -1
- package/docs/html/interfaces/portal_Symbol3D.ResourceObjectSymbol.html +2 -1
- package/docs/html/interfaces/portal_Table.Table.html +1 -1
- package/docs/html/interfaces/portal_TableDataSource.TableDataSource.html +2 -2
- package/docs/html/interfaces/portal_Template.Template-1.html +2 -1
- package/docs/html/interfaces/portal_TemporalRenderer.TemporalRenderer.html +2 -1
- package/docs/html/interfaces/portal_TextSymbol.TextSymbol.html +2 -1
- package/docs/html/interfaces/portal_TextSymbol3DLayer.TextSymbol3DLayer.html +2 -1
- package/docs/html/interfaces/portal_TileInfo.TileInfo-1.html +3 -2
- package/docs/html/interfaces/portal_TiledImageServiceLayer.TiledImageServiceLayer-1.html +3 -2
- package/docs/html/interfaces/portal_TiledMapServiceLayer.TiledMapServiceLayer-1.html +4 -3
- package/docs/html/interfaces/portal_Type.Type-1.html +3 -8
- package/docs/html/interfaces/portal_UniqueValueFromStyle.UniqueValueFromStyle.html +2 -1
- package/docs/html/interfaces/portal_UniqueValueRenderer.UniqueValueInfo.html +2 -1
- package/docs/html/interfaces/portal_UniqueValueRenderer.UniqueValueRenderer.html +2 -1
- package/docs/html/interfaces/portal_UtilityNetwork.TraceConfiguration.html +1 -1
- package/docs/html/interfaces/portal_UtilityNetwork.UtilityNetwork-1.html +1 -1
- package/docs/html/interfaces/portal_Value.Value.html +1 -1
- package/docs/html/interfaces/portal_VectorTileLayer.VectorTileLayer-1.html +3 -2
- package/docs/html/interfaces/portal_VerticalOffset.VerticalOffset.html +1 -1
- package/docs/html/interfaces/portal_Viewpoint.Viewpoint-1.html +2 -1
- package/docs/html/interfaces/portal_VisualVariable.ColorInfo.html +3 -2
- package/docs/html/interfaces/portal_VisualVariable.RotationInfo.html +3 -2
- package/docs/html/interfaces/portal_VisualVariable.Size.html +2 -1
- package/docs/html/interfaces/portal_VisualVariable.SizeInfo.html +3 -2
- package/docs/html/interfaces/portal_VisualVariable.TransparencyInfo.html +2 -1
- package/docs/html/interfaces/portal_VisualVariable.VisualVariableBase.html +1 -1
- package/docs/html/interfaces/portal_WMSLayer.WMSLayer-1.html +3 -2
- package/docs/html/interfaces/portal_WMSSublayer.WMSSublayer-1.html +2 -1
- package/docs/html/interfaces/portal_WMTSInfo.WMTSInfo-1.html +1 -1
- package/docs/html/interfaces/portal_Weather.CloudyWeather.html +2 -1
- package/docs/html/interfaces/portal_Weather.FoggyWeather.html +2 -1
- package/docs/html/interfaces/portal_Weather.RainyWeather.html +2 -1
- package/docs/html/interfaces/portal_Weather.SnowyWeather.html +2 -1
- package/docs/html/interfaces/portal_Weather.SunnyWeather.html +2 -1
- package/docs/html/interfaces/portal_WebMap.WebMap-1.html +3 -3
- package/docs/html/interfaces/portal_WebScene.WebScene-1.html +5 -3
- package/docs/html/interfaces/portal_WebSceneBaseMap.WebSceneBaseMap-1.html +2 -1
- package/docs/html/interfaces/portal_WebTileLayer.WebTileLayer-1.html +3 -2
- package/docs/html/interfaces/portal_Widgets.FloorFilter.html +1 -1
- package/docs/html/interfaces/portal_Widgets.Range.html +1 -1
- package/docs/html/interfaces/portal_Widgets.TimeSlider.html +3 -2
- package/docs/html/interfaces/portal_Widgets.Widgets.html +2 -1
- package/docs/html/interfaces/support_Serializable.PropertyDef.html +2 -2
- package/docs/html/interfaces/tasks_identify_IdentifyOptions.IdentifyOptions-1.html +2 -2
- package/docs/html/interfaces/tasks_search_SearchOptions.SearchOptions-1.html +2 -2
- package/docs/html/interfaces/utilities_array.CompareOptions.html +8 -8
- package/docs/html/interfaces/utilities_geometry.GeographicTransformationJson.html +1 -1
- package/docs/html/types/portal_DataSource.DataSource.html +1 -0
- package/docs/html/types/portal_Domain.Domain-1.html +2 -1
- package/docs/html/types/portal_Geometry.Geometry.html +1 -1
- package/docs/html/types/portal_PointCloudFilter.PointCloudFilter.html +2 -1
- package/docs/html/types/portal_Symbol.Color.html +1 -1
- package/docs/html/types/portal_Symbol.Symbol.html +1 -1
- package/docs/html/types/portal_Symbol3D.Symbol3D.html +2 -1
- package/docs/html/types/portal_VisualVariable.VisualVariable.html +2 -1
- package/docs/html/variables/mapping_BasemapExtension.defaultBasemapExtensionFactory.html +2 -2
- package/docs/html/variables/version.version.html +1 -1
- package/forked-libs/dbf/src/fields.js +1 -1
- package/forked-libs/dbf/src/structure.js +1 -1
- package/forked-libs/shp-write/src/download.js +1 -1
- package/forked-libs/shp-write/src/fields.js +1 -1
- package/forked-libs/shp-write/src/geojson.js +1 -1
- package/forked-libs/shp-write/src/multipoint.js +1 -1
- package/forked-libs/shp-write/src/points.js +1 -1
- package/forked-libs/shp-write/src/poly.js +1 -1
- package/forked-libs/shp-write/src/write.js +1 -1
- package/forked-libs/shp-write/src/zip.js +1 -1
- package/layer-preset/LayerPreset.d.ts +1 -1
- package/layer-preset/LayerPreset.js +1 -1
- package/layer-preset/LayerPresetSettings.d.ts +1 -1
- package/layer-preset/LayerPresetSettings.js +1 -1
- package/locale/_registry.js +1 -1
- package/locale/af.js +1 -1
- package/locale/ar-MA.js +1 -1
- package/locale/ar-SA.js +1 -1
- package/locale/ar-TN.js +1 -1
- package/locale/ar.js +1 -1
- package/locale/az.js +1 -1
- package/locale/be.js +1 -1
- package/locale/bg.js +1 -1
- package/locale/bn.js +1 -1
- package/locale/bs.js +1 -1
- package/locale/ca.js +1 -1
- package/locale/cs.js +1 -1
- package/locale/cv.js +1 -1
- package/locale/cy.js +1 -1
- package/locale/da.js +1 -1
- package/locale/de-AT.js +1 -1
- package/locale/de.js +1 -1
- package/locale/el.js +1 -1
- package/locale/en-AU.js +1 -1
- package/locale/en-CA.js +1 -1
- package/locale/en-GB.js +1 -1
- package/locale/en.js +1 -1
- package/locale/es.js +1 -1
- package/locale/et.js +1 -1
- package/locale/eu.js +1 -1
- package/locale/fa.js +1 -1
- package/locale/fi.js +1 -1
- package/locale/fo.js +1 -1
- package/locale/fr-CA.js +1 -1
- package/locale/fr.js +1 -1
- package/locale/gl.js +1 -1
- package/locale/he.js +1 -1
- package/locale/hi.js +1 -1
- package/locale/hr.js +1 -1
- package/locale/hu.js +1 -1
- package/locale/hy.js +1 -1
- package/locale/id.js +1 -1
- package/locale/inv.js +1 -1
- package/locale/is.js +1 -1
- package/locale/it.js +1 -1
- package/locale/ja.js +1 -1
- package/locale/ka.js +1 -1
- package/locale/km.js +1 -1
- package/locale/ko.js +1 -1
- package/locale/language.js +1 -1
- package/locale/lt.js +1 -1
- package/locale/lv.js +1 -1
- package/locale/mk.js +1 -1
- package/locale/ml.js +1 -1
- package/locale/mr.js +1 -1
- package/locale/ms-MY.js +1 -1
- package/locale/ms.js +1 -1
- package/locale/my.js +1 -1
- package/locale/nb.js +1 -1
- package/locale/ne.js +1 -1
- package/locale/nl.js +1 -1
- package/locale/nn.js +1 -1
- package/locale/no.js +1 -1
- package/locale/pl.js +1 -1
- package/locale/pt-BR.js +1 -1
- package/locale/pt.js +1 -1
- package/locale/ro.js +1 -1
- package/locale/ru.js +1 -1
- package/locale/si.js +1 -1
- package/locale/sk.js +1 -1
- package/locale/sl.js +1 -1
- package/locale/sq.js +1 -1
- package/locale/sr-Cyrl.js +1 -1
- package/locale/sr-ME.js +1 -1
- package/locale/sr.js +1 -1
- package/locale/sv.js +1 -1
- package/locale/ta.js +1 -1
- package/locale/th.js +1 -1
- package/locale/tl.js +1 -1
- package/locale/tr.js +1 -1
- package/locale/tzm-Latn.js +1 -1
- package/locale/tzm.js +1 -1
- package/locale/uk.js +1 -1
- package/locale/uz.js +1 -1
- package/locale/vi.js +1 -1
- package/locale/zh-TW.js +1 -1
- package/locale/zh.js +1 -1
- package/locale.js +1 -1
- package/mapping/ArcGISSublayerExtension.js +1 -1
- package/mapping/BasemapExtension.js +1 -1
- package/mapping/Bookmark.d.ts +1 -1
- package/mapping/Bookmark.js +1 -1
- package/mapping/BuildingComponentSublayerExtension.js +1 -1
- package/mapping/BuildingGroupSublayerExtension.js +1 -1
- package/mapping/BuildingSceneLayerExtension.js +1 -1
- package/mapping/BuildingSublayerExtension.js +1 -1
- package/mapping/CSVLayerExtension.js +1 -1
- package/mapping/ElevationLayerExtension.js +1 -1
- package/mapping/FeatureCollectionLayerExtension.js +1 -1
- package/mapping/FeatureLayerExtension.js +1 -1
- package/mapping/FeatureLayerExtensionBase.js +1 -1
- package/mapping/GeoRSSLayerExtension.js +1 -1
- package/mapping/GraphicsLayerExtension.js +1 -1
- package/mapping/GroundExtension.d.ts +1 -1
- package/mapping/GroundExtension.js +1 -1
- package/mapping/GroupLayerExtension.js +1 -1
- package/mapping/ImageryLayerExtension.js +1 -1
- package/mapping/ImageryTileLayerExtension.js +1 -1
- package/mapping/IntegratedMeshLayerExtension.js +1 -1
- package/mapping/KMLLayerExtension.js +1 -1
- package/mapping/KMLSublayerExtension.js +1 -1
- package/mapping/LayerExtension.js +1 -1
- package/mapping/MapConstraints.js +1 -1
- package/mapping/MapExtension.d.ts +5 -5
- package/mapping/MapExtension.js +1 -1
- package/mapping/MapImageLayerExtension.d.ts +1 -1
- package/mapping/MapImageLayerExtension.js +1 -1
- package/mapping/MapImageSublayerExtension.js +1 -1
- package/mapping/OpenStreetMapLayerExtension.js +1 -1
- package/mapping/PointCloudLayerExtension.js +1 -1
- package/mapping/SceneLayerExtension.js +1 -1
- package/mapping/StreamLayerExtension.js +1 -1
- package/mapping/SublayerExtension.js +1 -1
- package/mapping/SubtypeGroupLayerExtension.js +1 -1
- package/mapping/SubtypeSublayerExtension.js +1 -1
- package/mapping/TileLayerExtension.js +1 -1
- package/mapping/TileSublayerExtension.js +1 -1
- package/mapping/UnsupportedLayerExtension.js +1 -1
- package/mapping/VectorTileLayerExtension.js +1 -1
- package/mapping/WMSLayerExtension.js +1 -1
- package/mapping/WMSSublayerExtension.js +1 -1
- package/mapping/WMTSLayerExtension.js +1 -1
- package/mapping/WMTSSublayerExtension.js +1 -1
- package/mapping/WebTileLayerExtension.js +1 -1
- package/mapping/_LayerExtension.d.ts +1 -1
- package/mapping/_LayerExtension.js +1 -1
- package/mapping/_SublayerExtension.d.ts +1 -1
- package/mapping/_SublayerExtension.js +1 -1
- package/mapping/convert.js +1 -1
- package/mapping/support/ArrayWrappedCollection.js +1 -1
- package/mapping/support/DefaultLayerExtensionFactory.js +1 -1
- package/mapping/support/DefaultSublayerExtensionFactory.js +1 -1
- package/mapping/support/LayerListSettings.js +1 -1
- package/mapping/support/PopupTemplateFeatureSettings.js +1 -1
- package/mapping/support/WfsCapabilities.js +1 -1
- package/mapping/support/WfsFeatureType.js +1 -1
- package/mapping/support/_LayerExtensionCollection.js +1 -1
- package/mapping/support/_SublayerExtensionCollection.js +1 -1
- package/mapping/support/_kml.js +1 -1
- package/mapping/support/ogc.js +1 -1
- package/menus/Menu.js +1 -1
- package/menus/MenuItem.js +1 -1
- package/package.json +36 -35
- package/portal/ApplicationProperties.d.ts +16 -13
- package/portal/Background.d.ts +3 -2
- package/portal/Background.js +1 -1
- package/portal/BaseMap.d.ts +1 -0
- package/portal/BaseMap.js +1 -1
- package/portal/BaseMapLayer.d.ts +3 -2
- package/portal/BingLayer.d.ts +1 -0
- package/portal/Bookmark.d.ts +1 -0
- package/portal/BuildingSceneLayer.d.ts +1 -1
- package/portal/BuildingSceneLayer.js +1 -1
- package/portal/BuildingSceneSublayer.js +1 -1
- package/portal/CIMSymbol.d.ts +1 -0
- package/portal/CSVLayer.d.ts +1 -0
- package/portal/CSVLayer.js +1 -1
- package/portal/Camera.d.ts +1 -0
- package/portal/Camera.js +1 -1
- package/portal/ClassBreaksRenderer.d.ts +4 -2
- package/portal/CodedValueDomain.d.ts +2 -2
- package/portal/CodedValueDomain.js +1 -1
- package/portal/ColorClassBreakInfo.d.ts +1 -0
- package/portal/ColorUniqueValueInfos.d.ts +1 -0
- package/portal/DataSource.d.ts +5 -4
- package/portal/DefinitionEditor.d.ts +3 -2
- package/portal/Domain.d.ts +3 -2
- package/portal/Domain.js +1 -1
- package/portal/DrawingInfo.d.ts +1 -0
- package/portal/DrawingInfo.js +1 -1
- package/portal/DynamicDataLayer.d.ts +2 -2
- package/portal/DynamicMapLayer.d.ts +1 -1
- package/portal/Edges.d.ts +1 -1
- package/portal/Edges.js +1 -1
- package/portal/Effect.d.ts +2 -2
- package/portal/ElevationInfo.d.ts +2 -2
- package/portal/ElevationInfo.js +1 -1
- package/portal/ElevationLayer.d.ts +1 -0
- package/portal/ElevationLayer.js +1 -1
- package/portal/Environment.d.ts +1 -0
- package/portal/Environment.js +1 -1
- package/portal/Extent.d.ts +1 -1
- package/portal/ExtrudeSymbol3DLayer.d.ts +1 -0
- package/portal/Feature.d.ts +1 -0
- package/portal/Feature.js +1 -1
- package/portal/FeatureCollection.d.ts +1 -0
- package/portal/FeatureLayer.d.ts +2 -1
- package/portal/FeatureLayer.js +1 -1
- package/portal/FeatureReduction.d.ts +1 -1
- package/portal/FeatureReduction.js +1 -1
- package/portal/FeatureSet.d.ts +1 -0
- package/portal/Field.d.ts +2 -2
- package/portal/Field.js +1 -1
- package/portal/FieldInfo.d.ts +2 -1
- package/portal/FillSymbol3DLayer.d.ts +1 -0
- package/portal/FormInfo.d.ts +13 -13
- package/portal/FormInfo.js +1 -1
- package/portal/Format.d.ts +2 -1
- package/portal/GeoRSSLayer.d.ts +1 -0
- package/portal/GeoRSSLayer.js +1 -1
- package/portal/Geometry.d.ts +3 -3
- package/portal/Geometry.js +1 -1
- package/portal/Ground.d.ts +1 -1
- package/portal/Ground.js +1 -1
- package/portal/GroupLayer.d.ts +2 -1
- package/portal/GroupLayer.js +1 -1
- package/portal/HeatmapRenderer.d.ts +2 -0
- package/portal/IconSymbol3DLayer.d.ts +1 -0
- package/portal/ImageServiceLayer.d.ts +1 -0
- package/portal/ImageServiceLayer.js +1 -1
- package/portal/ImageServiceVectorLayer.d.ts +1 -0
- package/portal/InheritedDomain.d.ts +1 -1
- package/portal/InheritedDomain.js +1 -1
- package/portal/InitialState.d.ts +1 -0
- package/portal/InitialState.js +1 -1
- package/portal/IntegratedMeshLayer.d.ts +1 -0
- package/portal/IntegratedMeshLayer.js +1 -1
- package/portal/Item.d.ts +2 -1
- package/portal/Item.js +1 -1
- package/portal/JoinTableDataSource.d.ts +2 -2
- package/portal/KMLLayer.d.ts +1 -0
- package/portal/KMLLayer.js +1 -1
- package/portal/LabelSymbol3D.d.ts +1 -0
- package/portal/LabelingInfo.d.ts +3 -2
- package/portal/LabelingInfo.js +1 -1
- package/portal/Layer.d.ts +1 -1
- package/portal/Layer.js +1 -1
- package/portal/LayerBase.js +1 -1
- package/portal/LayerDefinition.d.ts +8 -7
- package/portal/LayerDefinition.js +1 -1
- package/portal/Lighting.d.ts +3 -1
- package/portal/Lighting.js +1 -1
- package/portal/LineSymbol3D.d.ts +1 -0
- package/portal/LineSymbol3DLayer.d.ts +1 -0
- package/portal/LocationInfo.d.ts +1 -0
- package/portal/MapFloorInfo.d.ts +4 -4
- package/portal/MapFloorInfo.js +1 -1
- package/portal/MapRangeInfo.d.ts +1 -0
- package/portal/MapServiceLayer.d.ts +1 -0
- package/portal/MapServiceLayer.js +1 -1
- package/portal/MediaInfo.d.ts +1 -1
- package/portal/MediaInfo.js +1 -1
- package/portal/MeshSymbol3D.d.ts +1 -0
- package/portal/MosaicRule.d.ts +3 -2
- package/portal/MosaicRule.js +1 -1
- package/portal/Multipoint.d.ts +1 -1
- package/portal/ObjectSymbol3DLayer.d.ts +1 -0
- package/portal/OpenStreetMapLayer.d.ts +1 -0
- package/portal/OpenStreetMapLayer.js +1 -1
- package/portal/OperationalLayer.d.ts +3 -3
- package/portal/PathSymbol3DLayer.d.ts +1 -0
- package/portal/PictureFillSymbol.d.ts +1 -0
- package/portal/PictureMarkerSymbol.d.ts +1 -0
- package/portal/Point.d.ts +2 -1
- package/portal/PointCloudBitfieldFilter.d.ts +1 -0
- package/portal/PointCloudClassBreaksRenderer.d.ts +1 -0
- package/portal/PointCloudFilter.d.ts +2 -1
- package/portal/PointCloudFixedSizeAlgorithm.d.ts +1 -0
- package/portal/PointCloudLayer.d.ts +1 -0
- package/portal/PointCloudLayer.js +1 -1
- package/portal/PointCloudRGBRenderer.d.ts +1 -0
- package/portal/PointCloudRenderer.d.ts +3 -1
- package/portal/PointCloudRenderer.js +1 -1
- package/portal/PointCloudReturnFilter.d.ts +1 -0
- package/portal/PointCloudSplatAlgorithm.d.ts +1 -0
- package/portal/PointCloudStretchRenderer.d.ts +1 -0
- package/portal/PointCloudUniqueValueRenderer.d.ts +1 -0
- package/portal/PointCloudValueFilter.d.ts +1 -0
- package/portal/PointSymbol3D.d.ts +2 -1
- package/portal/Polygon.d.ts +1 -1
- package/portal/PolygonSymbol3D.d.ts +1 -0
- package/portal/Polyline.d.ts +1 -1
- package/portal/PopupExpressionInfo.d.ts +2 -1
- package/portal/PopupInfo.d.ts +3 -1
- package/portal/PopupInfo.js +1 -1
- package/portal/PredominanceRenderer.d.ts +1 -0
- package/portal/Presentation.d.ts +1 -0
- package/portal/Presentation.js +1 -1
- package/portal/QueryTableDataSource.d.ts +1 -1
- package/portal/RangeDomain.d.ts +1 -1
- package/portal/RangeDomain.js +1 -1
- package/portal/RangeInfo.d.ts +1 -0
- package/portal/RasterDataSource.d.ts +1 -1
- package/portal/Renderer.d.ts +8 -6
- package/portal/Renderer.js +1 -1
- package/portal/RenderingRule.d.ts +3 -2
- package/portal/RenderingRule.js +1 -1
- package/portal/SceneLayer.d.ts +1 -0
- package/portal/SceneLayer.js +1 -1
- package/portal/SimpleFillSymbol.d.ts +2 -1
- package/portal/SimpleLineSymbol.d.ts +2 -1
- package/portal/SimpleMarkerSymbol.d.ts +2 -1
- package/portal/SimpleRenderer.d.ts +1 -0
- package/portal/Slide.d.ts +4 -4
- package/portal/Slide.js +1 -1
- package/portal/SpatialReference.d.ts +1 -0
- package/portal/SpatialReference.js +1 -1
- package/portal/StreamLayer.d.ts +1 -1
- package/portal/StreamLayer.js +1 -1
- package/portal/StyleSymbolReference.d.ts +1 -0
- package/portal/SubtypeGroupLayer.d.ts +3 -2
- package/portal/SubtypeGroupLayer.js +1 -1
- package/portal/SubtypeSublayer.d.ts +1 -0
- package/portal/SubtypeSublayer.js +1 -1
- package/portal/Symbol.d.ts +11 -11
- package/portal/Symbol.js +1 -1
- package/portal/Symbol3D.d.ts +7 -2
- package/portal/Table.d.ts +3 -3
- package/portal/Table.js +1 -1
- package/portal/TableDataSource.d.ts +1 -1
- package/portal/Template.d.ts +2 -1
- package/portal/Template.js +1 -1
- package/portal/TemporalRenderer.d.ts +1 -0
- package/portal/TextSymbol.d.ts +1 -0
- package/portal/TextSymbol3DLayer.d.ts +1 -0
- package/portal/TileInfo.d.ts +2 -1
- package/portal/TileInfo.js +1 -1
- package/portal/TiledImageServiceLayer.d.ts +1 -0
- package/portal/TiledImageServiceLayer.js +1 -1
- package/portal/TiledMapServiceLayer.d.ts +2 -1
- package/portal/TiledMapServiceLayer.js +1 -1
- package/portal/Type.d.ts +2 -4
- package/portal/Type.js +1 -1
- package/portal/UniqueValueFromStyle.d.ts +1 -0
- package/portal/UniqueValueRenderer.d.ts +2 -0
- package/portal/UtilityNetwork.d.ts +2 -2
- package/portal/UtilityNetwork.js +1 -1
- package/portal/Value.d.ts +1 -1
- package/portal/VectorFieldRenderer.d.ts +1 -1
- package/portal/VectorTileLayer.d.ts +1 -0
- package/portal/VectorTileLayer.js +1 -1
- package/portal/VerticalOffset.d.ts +1 -1
- package/portal/Viewpoint.d.ts +1 -0
- package/portal/Viewpoint.js +1 -1
- package/portal/VisualVariable.d.ts +10 -4
- package/portal/WMSLayer.d.ts +1 -0
- package/portal/WMSLayer.js +1 -1
- package/portal/WMSSublayer.d.ts +1 -0
- package/portal/WMSSublayer.js +1 -1
- package/portal/WMTSInfo.d.ts +1 -1
- package/portal/WMTSInfo.js +1 -1
- package/portal/Weather.d.ts +6 -1
- package/portal/Weather.js +1 -1
- package/portal/WebMap.d.ts +3 -3
- package/portal/WebMap.js +1 -1
- package/portal/WebScene.d.ts +3 -1
- package/portal/WebScene.js +1 -1
- package/portal/WebSceneBaseMap.d.ts +1 -0
- package/portal/WebSceneBaseMap.js +1 -1
- package/portal/WebTileLayer.d.ts +1 -0
- package/portal/WebTileLayer.js +1 -1
- package/portal/Widgets.d.ts +6 -4
- package/portal/Widgets.js +1 -1
- package/portal/_LayerBase.d.ts +2 -2
- package/portal/_layerHelper.js +1 -1
- package/portal/_utils.js +1 -1
- package/support/Action.d.ts +4 -4
- package/support/ArcGISRequestHelper.js +1 -1
- package/support/Cancellable.d.ts +1 -1
- package/support/Cancellable.js +1 -1
- package/support/FormatSettings.js +1 -1
- package/support/InitializableBase.d.ts +1 -1
- package/support/InitializableBase.js +1 -1
- package/support/InitializableCollectionProxy.js +1 -1
- package/support/InitializeError.js +1 -1
- package/support/Observable.js +1 -1
- package/support/ReadOnlyInitializableCollection.js +1 -1
- package/support/Serializable.d.ts +4 -4
- package/support/Serializable.js +1 -1
- package/support/Settings.js +1 -1
- package/support/_ArcGISRelationshipCollection.js +1 -1
- package/support/_esriInternal.js +1 -1
- package/support/_graphicsQuery.js +1 -1
- package/support/_query.js +1 -1
- package/support/_requestCache.js +1 -1
- package/support/_restApiJson.d.ts +1 -1
- package/support/esri.d.ts +76 -76
- package/support/esri.js +1 -1
- package/tasks/geocoding/ArcGISGeocoder.js +1 -1
- package/tasks/geocoding/Geocoder.d.ts +1 -1
- package/tasks/geocoding/Geocoder.js +1 -1
- package/tasks/geocoding/utilities.js +1 -1
- package/tasks/identify/ArcGISSublayerQueryIdentifyProvider.js +1 -1
- package/tasks/identify/BuildingComponentSublayerClientSideIdentifyProvider.js +1 -1
- package/tasks/identify/BuildingComponentSublayerHitTestIdentifyProvider.js +1 -1
- package/tasks/identify/CSVLayer3DHitTestIdentifyProvider.js +1 -1
- package/tasks/identify/CSVLayerClientSideQueryIdentifyProvider.js +1 -1
- package/tasks/identify/ClientSideIdentifyProvider.d.ts +2 -2
- package/tasks/identify/ClientSideIdentifyProvider.js +1 -1
- package/tasks/identify/FeatureLayer3DHitTestIdentifyProvider.js +1 -1
- package/tasks/identify/FeatureLayerClientSideIdentifyProvider.js +1 -1
- package/tasks/identify/FeatureLayerQueryIdentifyProvider.js +1 -1
- package/tasks/identify/GeoRSSLayerIdentifyProvider.js +1 -1
- package/tasks/identify/GraphicsLayerQueryIdentifyProvider.js +1 -1
- package/tasks/identify/HitTestIdentifyProvider.d.ts +2 -2
- package/tasks/identify/HitTestIdentifyProvider.js +1 -1
- package/tasks/identify/IdentifyError.js +1 -1
- package/tasks/identify/IdentifyProviderBase.js +1 -1
- package/tasks/identify/IdentifyService.js +1 -1
- package/tasks/identify/ImageryLayerIdentifyProvider.js +1 -1
- package/tasks/identify/KMLLayerQueryIdentifyProvider.js +1 -1
- package/tasks/identify/PointCloudLayerHitTestIdentifyProvider.js +1 -1
- package/tasks/identify/SceneLayerClientSideIdentifyProvider.js +1 -1
- package/tasks/identify/SceneLayerHitTestIdentifyProvider.js +1 -1
- package/tasks/identify/SceneLayerQueryIdentifyProvider.js +1 -1
- package/tasks/identify/StreamLayerClientSideQueryIdentifyProvider.js +1 -1
- package/tasks/identify/StreamLayerQueryIdentifyProvider.js +1 -1
- package/tasks/identify/SubtypeSublayerClientSideIdentifyProvider.js +1 -1
- package/tasks/identify/SubtypeSublayerQueryIdentifyProvider.js +1 -1
- package/tasks/identify/WMSSublayerIdentifyProvider.js +1 -1
- package/tasks/query/ArcGISRelationship.js +1 -1
- package/tasks/query/ArcGISServiceTableQueryProvider.js +1 -1
- package/tasks/query/ArcGISSublayerQueryProvider.js +1 -1
- package/tasks/query/BuildingComponentSublayerClientSideQueryProvider.js +1 -1
- package/tasks/query/CSVLayerClientSideQueryProvider.js +1 -1
- package/tasks/query/CSVLayerQueryProvider.js +1 -1
- package/tasks/query/ClientSideQueryProvider.d.ts +2 -2
- package/tasks/query/ClientSideQueryProvider.js +1 -1
- package/tasks/query/FeatureLayerQueryProvider.js +1 -1
- package/tasks/query/GeoRSSLayerQueryProvider.js +1 -1
- package/tasks/query/GraphicsLayerQueryProvider.js +1 -1
- package/tasks/query/ImageryLayerQueryProvider.js +1 -1
- package/tasks/query/KMLLayerQueryProvider.js +1 -1
- package/tasks/query/QueryBasedRelationship.js +1 -1
- package/tasks/query/QueryError.js +1 -1
- package/tasks/query/QueryProviderBase.js +1 -1
- package/tasks/query/QueryService.js +1 -1
- package/tasks/query/SceneLayerClientSideQueryProvider.js +1 -1
- package/tasks/query/SceneLayerQueryProvider.js +1 -1
- package/tasks/query/StreamLayerClientSideQueryProvider.js +1 -1
- package/tasks/query/StreamLayerQueryProvider.js +1 -1
- package/tasks/query/SubtypeSublayerQueryProvider.js +1 -1
- package/tasks/search/ArcGISGeocoderSearchProvider.js +1 -1
- package/tasks/search/GeocoderSearchProvider.js +1 -1
- package/tasks/search/QuerySearchProvider.js +1 -1
- package/tasks/search/SearchError.js +1 -1
- package/tasks/search/SearchProviderBase.js +1 -1
- package/tasks/search/SearchService.js +1 -1
- package/tasks/search/_utilities.js +1 -1
- package/utilities/CollectionProxy.js +1 -1
- package/utilities/CopyOnWriteCollection.js +1 -1
- package/utilities/GeometryServiceError.js +1 -1
- package/utilities/MapTransformCollection.js +1 -1
- package/utilities/ObservableMap.js +1 -1
- package/utilities/ObservableSet.js +1 -1
- package/utilities/ObservableWeakSet.js +1 -1
- package/utilities/ReadOnlyCollection.js +1 -1
- package/utilities/ReadOnlyMap.js +1 -1
- package/utilities/_layers.js +1 -1
- package/utilities/_ogc.js +1 -1
- package/utilities/arcade.js +1 -1
- package/utilities/array.js +1 -1
- package/utilities/asyncIterable.d.ts +1 -1
- package/utilities/asyncIterable.js +1 -1
- package/utilities/basemaps.js +1 -1
- package/utilities/checkArg.js +1 -1
- package/utilities/collection.js +1 -1
- package/utilities/date.js +1 -1
- package/utilities/esri.js +1 -1
- package/utilities/extensions.js +1 -1
- package/utilities/geometry.d.ts +2 -2
- package/utilities/geometry.js +1 -1
- package/utilities/iterable.js +1 -1
- package/utilities/log.d.ts +1 -1
- package/utilities/log.js +1 -1
- package/utilities/mapping.js +1 -1
- package/utilities/math.js +1 -1
- package/utilities/number.js +1 -1
- package/utilities/object.js +1 -1
- package/utilities/portal.d.ts +3 -3
- package/utilities/portal.js +1 -1
- package/utilities/promise.d.ts +1 -1
- package/utilities/promise.js +1 -1
- package/utilities/query.js +1 -1
- package/utilities/relationships.js +1 -1
- package/utilities/scaleRanges.d.ts +1 -1
- package/utilities/set.js +1 -1
- package/utilities/string.d.ts +6 -21
- package/utilities/string.js +1 -1
- package/utilities/symbol.js +1 -1
- package/utilities/uri.js +1 -1
- package/utilities/watch.js +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
package/mapping/MapExtension.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import{ArgumentError}from"../ArgumentError.js";import{EntityBase}from"../Entity.js";import{InvalidOperationError}from"../InvalidOperationError.js";import{isBasemapExtension,isBookmark,isGroundExtension,isLayerPreset,isMenu,isTableExtension,ItemType}from"../ItemType.js";import{TableExtension}from"../data/TableExtension.js";import{LayerPreset}from"../layer-preset/LayerPreset.js";import{Menu}from"../menus/Menu.js";import{WebMap as WebMapJson}from"../portal/WebMap.js";import{WebScene as WebSceneJson}from"../portal/WebScene.js";import{resolveRelativeHrefs}from"../portal/_utils.js";import{DefaultArcGISRequestHelper}from"../support/ArcGISRequestHelper.js";import{FormatSettings}from"../support/FormatSettings.js";import{InitializableCollectionProxy}from"../support/InitializableCollectionProxy.js";import{ReadOnlyInitializableCollection}from"../support/ReadOnlyInitializableCollection.js";import{serializable}from"../support/Serializable.js";import{WellKnownBasemap}from"../support/esri.js";import{ReadOnlyCollection}from"../utilities/ReadOnlyCollection.js";import{basemapsAreEquivalent,createStandardBasemap,isStandardBasemap}from"../utilities/basemaps.js";import{checkArg}from"../utilities/checkArg.js";import{Collection,compare}from"../utilities/collection.js";import{load}from"../utilities/esri.js";import{isGroupLayerExtension}from"../utilities/extensions.js";import{project}from"../utilities/geometry.js";import{find}from"../utilities/iterable.js";import{layersAreEquivalent}from"../utilities/layers.js";import{getLogger}from"../utilities/log.js";import{getMapSpatialReference,isMap,isWebMap,isWebScene}from"../utilities/mapping.js";import{toPortalItem as toPortalItemBase}from"../utilities/portal.js";import{parallelEach}from"../utilities/promise.js";import{onCollectionPropertyChange,onEach}from"../utilities/watch.js";import{BasemapExtension}from"./BasemapExtension.js";import{Bookmark}from"./Bookmark.js";import{GroundExtension}from"./GroundExtension.js";import{MapConstraints}from"./MapConstraints.js";import{UnsupportedLayerExtension}from"./UnsupportedLayerExtension.js";import{_assignLayerExtensions,LayerExtension}from"./_LayerExtension.js";import{LayerExtensionCollectionBase}from"./support/_LayerExtensionCollection.js";const log=getLogger("MapExtension");let MapExtension=class extends EntityBase{constructor(e){super(e),this.isSwitchingMap=!1,this._layerViews=new Collection,this._itemType=ItemType.MAP_EXTENSION,this._skipBasemapOptions=!1;let t={...e};this._basemapOptions=new BasemapExtensionCollection(this),this._groundExtensions=new WeakMap,this._layerExtensions=this._createLayerExtensionCollection(),this.tableExtensions=this._createTableExtensionCollection(),this.formatSettings=this._createFormatSettings(),this._bookmarks=new Collection,this.constraints=new MapConstraints,this.watch(["_map","_scene"],(e=>{e&&(onEach(e.layers,"layerview-create",(e=>{this._layerViews.add(e.layerView)})),onEach(e.layers,"layerview-destroy",(e=>{this._layerViews.remove(e.layerView)})))}));const{webMap:i,webScene:s,initialViewMode:a,map:n,basemapOptions:r}=t;if(this._webMap=i,this._webScene=s,this._webMapItem=toPortalItem(i),this._webSceneItem=toPortalItem(s),this.initialViewMode=a,isWebScene(n)&&s)throw new ArgumentError("Cannot specify webScene property if map is initialized to a WebScene instance.");if(isMap(n)&&i)throw new ArgumentError("Cannot specify webMap property if map is initialized to a 2D Map instance.");if(isWebScene(n)||isWebMap(n)||isMap(n))this.assignProperties({basemapOptions:r}),this._skipBasemapOptions=!!r;else{const{map:e,layerExtensions:i,tableExtensions:s,groundExtension:a,basemapOptions:n,basemapExtension:r,...o}=t;this._deferredProperties={map:e,layerExtensions:i,tableExtensions:s,groundExtension:a,basemapOptions:n,basemapExtension:r},t=o,n&&(this._skipBasemapOptions=!0)}this._initMapFromProperties(t),this.watch("map.basemap",(()=>this._onBasemapChange()),!0),this.watch("map.ground",(()=>this._onGroundChange()),!0),this.allLayerExtensions=new AllLayerExtensionCollectionImpl(this),this.map?.basemap&&this._onBasemapChange()}get webMap(){return this._webMap}get webScene(){return this._webScene}get map(){return this._currentMap}get viewMode(){return this.map?isWebScene(this.map)?"scene":"map":this.initialViewMode}get initialViewMode(){return this.webMap&&this.webScene?this._initialViewMode||"map":isWebScene(this.map)||this.webScene&&!this.webMap?"scene":"map"}set initialViewMode(e){this._initialViewMode=e}get requestHelper(){return this._requestHelper||(this._requestHelper=new DefaultArcGISRequestHelper),this._requestHelper}set requestHelper(e){this._requestHelper=e}get basemapExtension(){return this._basemapExtension}set basemapExtension(e){const t=this._basemapExtension;if(t!==e)if(t&&t._setMapExtension(void 0),e){if(e._setMapExtension(this),this.isInitialized&&!e.basemap){if(e.isInitialized)throw e._setMapExtension(void 0),new InvalidOperationError("Cannot set MapExtension.basemapExtension without a valid Esri Basemap object");e.initialize()}this._ensureIsBasemapOption(e),this.map&&e.basemap&&e.basemap!==this.map.basemap?this.map.basemap=e.basemap:this._basemapExtension=e}else this.map.basemap=void 0,this._basemapExtension=void 0}get groundExtension(){return this._groundExtension||(this.groundExtension=new GroundExtension({ground:this.map?.ground})),this._groundExtension}set groundExtension(e){if(!e)throw new InvalidOperationError("Cannot set map.ground to undefined");const t=this._groundExtension;t!==e&&(t&&t._setMapExtension(void 0),e._setMapExtension(this),e._resolveGround(),e.ground?(this._groundExtensions.set(e.ground,e),this.map&&e.ground!==this.map.ground?this.map.ground=e.ground:this._groundExtension=e):this._groundExtension=e)}get basemapOptions(){return this._basemapOptions}get bookmarks(){return this._bookmarks}get initialBasemapExtension(){return this._initialBasemapExtension}get initialLayerPreset(){return this._initialLayerPreset}set initialLayerPreset(e){if(!e)return void(this._initialLayerPreset=void 0);const t=isLayerPreset(e)?e:new LayerPreset(e);this._initialLayerPreset=t}get _spatialReference(){return getMapSpatialReference(this.map)}get webMapItemTitle(){if(this._webMapItem)return this._webMapItem.title}get webSceneItemTitle(){if(this._webSceneItem)return this._webSceneItem.title}get title(){return this._title?this._title:this._webMapItem&&"map"===this.viewMode?this.webMapItemTitle:this._webSceneItem&&"scene"===this.viewMode?this.webSceneItemTitle:void 0}set title(e){this._title=e}get contextMenu(){return this._contextMenu}set contextMenu(e){this._contextMenu=e,e&&this.isInitialized&&!e.isInitialized&&(async()=>{try{await e.initialize()}catch(e){e instanceof Error&&log.error({message:"An error occurred while initializing context menu.",error:e})}})()}get _allLayerViews(){const e=t=>{const i=[t];return Collection.isCollection(t.sublayerViews)?i.push(...t.sublayerViews.toArray().flatMap(e)):Collection.isCollection(t.layerViews)&&i.push(...t.layerViews.toArray().flatMap(e)),i};return this._layerViews.toArray().flatMap(e)}get layerExtensions(){return this._layerExtensions}getAllFeatureSources(e=(()=>!0)){const t=[],i=a=>{a.hasFeatures&&t.push(a);for(const t of a.sublayerExtensions.initializedItems.filter(e).toArray())s(t);if(isGroupLayerExtension(a))for(const t of a.layerExtensions.initializedItems.filter(e).toArray())i(t)},s=i=>{t.push(i);for(const t of i.sublayerExtensions.initializedItems.filter(e).toArray())s(t)};for(const t of this.layerExtensions.initializedItems.filter(e).toArray())i(t);for(const i of this.tableExtensions.initializedItems.filter(e).toArray())t.push(i);if(this.basemapExtension){for(const t of this.basemapExtension.baseLayerExtensions.initializedItems.filter(e).toArray())i(t);for(const t of this.basemapExtension.referenceLayerExtensions.initializedItems.filter(e).toArray())i(t)}return t}isSupportedViewMode(e){return e===this.viewMode||!(!this.webMap&&!this.webScene)&&("scene"===e?!!this.webScene:!!this.webMap)}async switchViewMode(e){if(checkArg("viewMode",e).isNotMissing().satisfies((e=>this.isSupportedViewMode(e)),"Unsupported view mode."),this.viewMode===e)return;let t;"scene"===e?(await this._createScene(),t=this._scene):(await this._createMap(),t=this._map),t.basemap=this.map.basemap,await this.switchMap(t),this.notifyChange("viewMode"),this.notifyChange("title")}async switchMap(e){if(checkArg("newMap",e).isNotMissing(),e===this.map)return;if(!this.map)return void this._setMap(e);this.isSwitchingMap=!0,this.isInitialized&&await load(e);const t=new Map;this.map.layers.forEach((e=>t.set(e,this.layerExtensions.forLayer(e))));const{basemapExtension:i}=this;this._setMap(e),this._updateBookmarks();const s=[];for(const e of this.map.layers.toArray()){const i=find(t.entries(),(([t])=>layersAreEquivalent(t,e)));if(i)s.push((async()=>{const t=i[1];await t._switchLayer(e),this._layerExtensions._register(t)})());else{const t=this._layerExtensions._forLayer(e);t?.layer!==e&&s.push(t._switchLayer(e))}}this.map.basemap&&i&&basemapsAreEquivalent(this.map.basemap,i.basemap)&&s.push((async()=>{await i._switchBasemap(this.map.basemap),this.basemapExtension=i})()),this.isInitialized&&s.push(this._initializeChildren()),await Promise.all(s),this.isSwitchingMap=!1}async setWebMap(e){if(!e&&this.webMap&&!this.webScene)throw new InvalidOperationError("Cannot unset both webMap and webScene.");this._webMap=e,this._map=void 0,this._createMapPromise=void 0,this._webMapItem=toPortalItem(e),await load(this._webMapItem),"map"===this.viewMode&&(e?(this._basemapOptions.isExplicitlyModified||this._basemapOptions.removeAllInternal(),await this._createMap(),await this.switchMap(this._map),await this._createStandardBasemapOptions(),this._basemapOptions.reorderInternal(this.basemapExtension,0),this._initialBasemapExtension=this.basemapExtension):await this.switchViewMode("scene")),this.notifyChange("webMap"),this.notifyChange("initialViewMode"),this.notifyChange("title")}async setWebScene(e){if(!e&&this.webScene&&!this.webMap)throw new InvalidOperationError("Cannot unset both webMap and webScene.");this._webScene=e,this._scene=void 0,this._createScenePromise=void 0,this._webSceneItem=toPortalItem(e),await load(this._webSceneItem),"scene"===this.viewMode&&(e?(this._basemapOptions.isExplicitlyModified||this._basemapOptions.removeAllInternal(),await this._createScene(),await this.switchMap(this._scene),await this._createStandardBasemapOptions(),this._basemapOptions.reorderInternal(this.basemapExtension,0),this._initialBasemapExtension=this.basemapExtension):await this.switchViewMode("map")),this.notifyChange("webScene"),this.notifyChange("initialViewMode"),this.notifyChange("title")}getDefaults(){const e=super.getDefaults();return e.initialViewMode="map",e}async _createScene(){if(!this._scene&&this.webScene)return this._createScenePromise=this._createScenePromise??(async()=>{if(isPortalItem(this.webScene)){const e=new((await import("@arcgis/core/WebScene")).default);await this._loadAndApplyPortalItemData(this._webSceneItem,e),this._scene=e}else this._scene=await WebSceneJson.toEsriApiWebScene(this.webScene)})()}async _createMap(){if(!this._map&&this.webMap)return this._createMapPromise=this._createMapPromise??(async()=>{if(isPortalItem(this.webMap)){const e=new((await import("@arcgis/core/WebMap")).default);await this._loadAndApplyPortalItemData(this._webMapItem,e),this._map=e}else this._map=await WebMapJson.toEsriApiWebMap(this.webMap)})()}_getSerializableProperties(){return{...super._getSerializableProperties(),layerExtensions:{serializeModes:["initial","project"],deserialize:e=>{if(this.map&&e){const t=("map"===this.viewMode?this._scene:this._map)?.layers.toArray()??[],i=e.filter((e=>!t.includes(e.layer)&&!t.some((t=>e.layer&&(LayerExtension._matchesRef(t,e.layer)||layersAreEquivalent(t,e.layer))))));_assignLayerExtensions(this.layerExtensions,i)}},serialize:e=>{if(this._deferredProperties?.layerExtensions)return this._deferredProperties.layerExtensions;{const t="map"===this.viewMode,i=(t?this._map:this._scene)?.layers.toArray();let s=(t?this._scene:this._map)?.layers.toArray()??[];return s=s.filter((e=>!i.find((t=>layersAreEquivalent(t,e))))),this.layerExtensions.concat(s.map((e=>this._layerExtensions._forLayer(e)))).filter((t=>!(t instanceof UnsupportedLayerExtension||"initial"===e)||!t.dynamicallyAddedLayer)).toArray()}}},tableExtensions:{serializeModes:["initial","project"],deserialize:e=>{this.map?compare(this.tableExtensions,e,{onNew:(e,t)=>{this.tableExtensions.add(isTableExtension(e)?e:TableExtension.create(e),t)},onMatch:(e,t,i,s)=>{isTableExtension(t)||e.assignProperties(t),i!==s&&this.tableExtensions.reorder(e,s)},equals:(e,t)=>isTableExtension(t)?t===e:!!TableExtension._matchesRef(e,t.table)||e.id===t.id}):this._deferredProperties={...this._deferredProperties,tableExtensions:e}},serialize:()=>this._deferredProperties?.tableExtensions?this._deferredProperties?.tableExtensions:this.tableExtensions.toArray()},basemapExtension:{serializeModes:["project"],deserialize:e=>{this.map?e?isBasemapExtension(e)?this.basemapExtension=e:this.basemapExtension?this.basemapExtension.assignProperties(e):this.basemapExtension=BasemapExtension.create(e):this.basemapExtension=void 0:this._deferredProperties={...this._deferredProperties,basemapExtension:e}},serialize:()=>this._deferredProperties?.basemapExtension?this._deferredProperties?.basemapExtension:this.basemapExtension},basemapOptions:{serializeModes:["initial"],deserialize:e=>{this._skipBasemapOptions?this._skipBasemapOptions=!1:(compare(this.basemapOptions,e,{onNew:(e,t)=>{this.basemapOptions.add(isBasemapExtension(e)?e:BasemapExtension.create(e),t)},onMatch:(e,t,i,s)=>{isBasemapExtension(t)||e.assignProperties(t),i!==s&&this.basemapOptions.reorder(e,s)},onMissing:e=>{this.basemapOptions.remove(e)},equals:(e,t)=>{if(isBasemapExtension(t))return t===e;if(e.id&&t.id)return e.id===t.id;{const i=e.toJSON();return basemapsAreEquivalent(i.basemap,t.basemap||t.baseMap)}}}),this.basemapExtension&&this._ensureIsBasemapOption(this.basemapExtension),this.isInitialized&¶llelEach(this.basemapOptions.toArray(),(e=>e._createBackingBasemap())))},serialize:()=>this._deferredProperties?.basemapOptions?this._deferredProperties?.basemapOptions:this.basemapOptions.toArray()},groundExtension:{serializeModes:["initial"],deserialize:e=>{this.map?isGroundExtension(e)?this.groundExtension=e:this.groundExtension.assignProperties(e):this._deferredProperties={...this._deferredProperties,groundExtension:e}},serialize:()=>this._deferredProperties?.groundExtension?this._deferredProperties?.groundExtension:this.groundExtension},bookmarks:{serialize:()=>this.bookmarks.map((e=>e.toJSON())).toArray(),deserialize:e=>{this.bookmarks.addMany(e.map((e=>isBookmark(e)?e:new Bookmark(e))))}},webMap:{serializeModes:["initial"],deserialize:!1},webScene:{serializeModes:["initial"],deserialize:!1},initialLayerPreset:"initial",initialViewMode:{serializeModes:["initial","project"],serialize:e=>"project"===e?this.viewMode:"scene"!==this.initialViewMode||!this.webScene&&this.webMap?"map":"scene",deserialize:e=>{this.viewMode!==e&&(this._deserializedViewMode=e),this._initialViewMode=e},isDefault:(e,t)=>"project"!==t&&"map"===e},formatSettings:"initial",constraints:"initial",title:"initial",onClick:"initial",onHover:"initial",onHoverEnd:"initial",onInitialized:"initial",onViewpointChanged:"initial",contextMenu:{serializeModes:["initial"],deserialize:e=>{e?isMenu(e)?this.contextMenu=e:this.contextMenu?this.contextMenu.assignProperties(e):this.contextMenu=Menu.create(e):this.contextMenu=void 0}},map:{serializeModes:["project"],serialize:()=>({operationalLayers:this.layerExtensions.toArray().filter((e=>e.layer)).map((e=>e._getProjectWebmapJSON())),tables:this.tableExtensions.toArray().filter((e=>e.table)).map((e=>({id:e.table.id,title:e.table.title})))}),deserialize:e=>{if(this.map)if(isMap(e)||isWebMap(e)||isWebScene(e)){if(e!==this.map)throw new ArgumentError("properties.map","Property 'map' is read-only.")}else this._deserializedMapPromise=(async()=>{this._deserializedViewMode&&this.webMap&&this.webScene&&(this._deserializedViewModePromise=this.switchViewMode(this._deserializedViewMode),await this._deserializedViewModePromise,this._deserializedViewMode=void 0,this._deserializedViewModePromise=void 0),await this._applyMapProperties(e,this.map),this._deserializedMapPromise=void 0})();else this._deferredProperties={...this._deferredProperties,map:e}}},requestHelper:{serialize:!1}}}async _applyMapProperties(e,t,i){await parallelEach(this.basemapOptions.toArray(),(e=>e._createBackingBasemap()));let s=e;const a=this.basemapOptions.find((e=>basemapsAreEquivalent(e.basemap,s.baseMap)));a&&(t.basemap=a.basemap,s={...s,baseMap:{...s.baseMap,title:t.basemap.title}}),isWebScene(t)?await WebSceneJson.applyToEsriApiWebScene(s,t,i):await WebMapJson.applyToEsriApiMap(s,t,i)}_createFormatSettings(){return new FormatSettings}_createLayerExtensionCollection(){return new LayerExtensionCollectionImpl(this)}_createTableExtensionCollection(){return new TableExtensionCollectionImpl(this)}async _onInitialize(){await super._onInitialize();const{basemapExtension:e,basemapOptions:t,groundExtension:i,webMap:s,webScene:a,map:n,...r}=this._deferredProperties??{};if(t&&this.assignProperties({basemapOptions:t}),this.map||("scene"===this.initialViewMode?this._setMap(new((await import("@arcgis/core/WebScene")).default)):this._setMap(new((await import("@arcgis/core/WebMap")).default))),this.map.basemap&&this._onBasemapChange(),(s||a)&&await this._applyMapProperties("scene"===this.initialViewMode?a:s,this.map),e&&(this.assignProperties({basemapExtension:e}),await this.basemapExtension._createBackingBasemap()),i&&this.assignProperties({groundExtension:i}),this._webMapItem||this._webSceneItem){await Promise.all([load(this.map),load(this._webMapItem),load(this._webSceneItem)]),validatePortalItem(this._webMapItem,"webMap","Web Map"),validatePortalItem(this._webSceneItem,"webScene","Web Scene");const e=isWebScene(this.map)?this._webSceneItem:this._webMapItem;await this._loadAndApplyPortalItemData(e)}else await load(this.map);n&&await this._applyMapProperties(n,this.map),this.assignProperties(r),this._deferredProperties=void 0,this._initialBasemapExtension=this.basemapExtension,this._updateBookmarks(),this.contextMenu&&await this.contextMenu.initialize();for(const e of this.layerExtensions.toArray())await e._createBackingLayer();await Promise.all(this.tableExtensions.map((e=>e._createBackingTable())).toArray())}async _postInitialize(){await super._postInitialize(),await this._createStandardBasemapOptions(),await parallelEach(this.basemapOptions.toArray(),(e=>e._createBackingBasemap())),this.initialLayerPreset&&await this.initialLayerPreset.applyTo(this)}*_initializableChildCollections(){yield*super._initializableChildCollections();const e=new Collection(this.layerExtensions.filter((e=>!!e.layer)));e.remove=e=>{this.layerExtensions.remove(e)};const t=new Collection(this.tableExtensions.filter((e=>!!e.table)));if(t.remove=e=>{this.tableExtensions.remove(e)},yield e,yield t,this.basemapExtension){const e=new Collection;e.add(this.basemapExtension),yield e}const i=new Collection;i.add(this.groundExtension),yield i}_initMapFromProperties(e){const t=e.map;isMap(t)||isWebMap(t)||isWebScene(t)?this._setMap(t):"scene"===this.initialViewMode?e.webScene&&!isPortalItem(e.webScene)&&(this._deferredProperties={webScene:e.webScene,...this._deferredProperties}):e.webMap&&!isPortalItem(e.webMap)&&(this._deferredProperties={webMap:e.webMap,...this._deferredProperties})}_setMap(e){isWebScene(e)?this._scene=e:this._map=e,this._currentMap=e,this.basemapExtension?.basemap&&!e.basemap&&(e.basemap=this.basemapExtension.basemap),this.groundExtension?.ground&&!e.ground&&(e.ground=this.groundExtension.ground),this.notifyChange("map")}async _loadAndApplyPortalItemData(e,t){await load(e);const i=await e.fetchData();resolveRelativeHrefs(i,e),await this._inferLayerTypes(i),this.basemapExtension?.basemap&&!t&&delete i.baseMap,GroundExtension.isDefaultGround(this.groundExtension.ground)||t||delete i.ground;const s=t||this.map;await load(s),await this._applyMapProperties(i,s,e),s.portalItem=e;const{viewpoint:a,spatialReference:n}=s.initialViewProperties;a&&a.targetGeometry&&!a.targetGeometry.spatialReference.equals(n)&&(s.initialViewProperties.viewpoint.targetGeometry=(await project([a.targetGeometry],n))[0]),a&&a.camera&&(a.camera.position.spatialReference=n.clone())}_onBasemapChange(){if(this._basemapExtension){if(this.basemapExtension.basemap==this.map.basemap)return;this._basemapExtension._setMapExtension(void 0)}if(this.map.basemap){let e=this.basemapOptions.find((e=>e.basemap===this.map.basemap));e||(e=BasemapExtension.create({basemap:this.map.basemap}),this._basemapOptions.addInternal(e,0)),e.mapExtension!==this&&e._setMapExtension(this),this._basemapExtension=e}else this._basemapExtension=void 0;this.notifyChange("basemapExtension")}_onGroundChange(){if(this._groundExtension){if(this.groundExtension.ground===this.map.ground)return void(this._groundExtensions.has(this.map.ground)||this._groundExtensions.set(this.map.ground,this.groundExtension));this.groundExtension._setMapExtension(void 0)}this._groundExtensions.has(this.map.ground)||this._groundExtensions.set(this.map.ground,new GroundExtension({ground:this.map.ground}));const e=this._groundExtensions.get(this.map.ground);e.mapExtension!==this&&e._setMapExtension(this),this._groundExtension=e,this.notifyChange("groundExtension")}async _inferLayerTypes(e){const t=[];if(e.operationalLayers)for(const i of e.operationalLayers)t.push(this._inferLayerType(i));if(e.baseMap&&t.push(this._inferBasemapLayerTypes(e.baseMap)),e.hasOwnProperty("ground")&&t.push(this._inferGroundLayerTypes(e.ground)),e.presentation?.slides)for(const i of e.presentation.slides)i.baseMap&&"string"!=typeof i.baseMap&&t.push(this._inferBasemapLayerTypes(i.baseMap));await Promise.all(t)}async _inferBasemapLayerTypes(e){const t=[];if(e.baseMapLayers)for(const i of e.baseMapLayers)t.push(this._inferLayerType(i));await Promise.all(t)}async _inferGroundLayerTypes(e){const t=[];if(e.layers)for(const i of e.layers)t.push(this._inferLayerType(i));await Promise.all(t)}async _inferLayerType(e){if(!e.layerType)if(e.type)e.layerType=e.type;else if(e.url){const t=e.url;if(t.match(".*MapServer/\\d{1,}/?$")||t.match(".*FeatureServer/\\d{1,}/?$"))e.layerType="ArcGISFeatureLayer";else if(t.match(".*StreamServer/?$"))e.layerType="ArcGISStreamLayer";else if(t.match(".*ImageServer/?$")){const i=await this._getLayerData(t);i.cacheType?"Map"===i.cacheType?e.layerType="ArcGISTiledImageServiceLayer":"Elevation"===i.cacheType&&(e.layerType="ArcGISTiledElevationServiceLayer"):e.layerType="ArcGISImageServiceLayer"}else if(t.match(".*MapServer/?$")){const i=await this._getLayerData(t);e.layerType=i.tileInfo?"ArcGISTiledMapServiceLayer":"ArcGISMapServiceLayer"}else if(t.match(".*\\.(csv|txt)$"))e.layerType="CSV";else if(t.match(".*\\.kml$"))e.layerType="KML";else if(t.match(".*SceneServer/layers/\\d{1,}/?$")){const i=await this._getLayerData(t);"3DObject"===i.layerType?e.layerType="ArcGISSceneServiceLayer":"IntegratedMesh"===i.layerType?e.layerType="IntegratedMeshLayer":"PointCloud"===i.layerType&&(e.layerType="PointCloudLayer")}else t.match(".*(\\.xml|rss/?)$")&&(e.layerType="GeoRSS")}else if(e.layers){e.layerType="GroupLayer";const t=[];for(const i of e.layers)t.push(this._inferLayerType(i));await Promise.all(t)}else e.templateUrl&&e.tileInfo?e.layerType="WebTiledLayer":e.featureCollection?e.layerType="ArcGISFeatureLayer":e.styleUrl?e.layerType="VectorTileLayer":e.mapUrl&&(e.layerType="WMS")}async _getLayerData(e){const t=await this.requestHelper.request(e,{query:{f:"json"}});if(!t||!t.data)throw new Error(`Response to request for url ${e} was invalid.`);return t.data}async _createStandardBasemapOptions(){const e=this._spatialReference;!this._basemapOptions.isExplicitlyModified&&e&&e.isWebMercator&&await parallelEach([WellKnownBasemap.SATELLITE,WellKnownBasemap.HYBRID_VECTOR,WellKnownBasemap.STREETS_VECTOR,WellKnownBasemap.TOPO_VECTOR,WellKnownBasemap.STREETS_NAVIGATION_VECTOR,WellKnownBasemap.STREETS_NIGHT_VECTOR,WellKnownBasemap.TERRAIN_VECTOR,WellKnownBasemap.DARK_GRAY_VECTOR,WellKnownBasemap.GRAY_VECTOR,WellKnownBasemap.OCEANS_VECTOR,WellKnownBasemap.OPEN_STREET_MAP_VECTOR],(async e=>{const t=await createStandardBasemap(e);basemapsAreEquivalent(this.map.basemap,t)?this._basemapOptions.addInternal(this.basemapExtension):this._basemapOptions.addInternal(BasemapExtension.create({basemap:t}),void 0,!1)}))}_ensureIsBasemapOption(e){const t=this.basemapOptions.findIndex((t=>t.basemap===e.basemap));t>=0?this._basemapOptions.getItemAt(t)!==e&&(this._basemapOptions.removeAtInternal(t),this._basemapOptions.addInternal(e,t)):this._basemapOptions.addInternal(e,0)}_updateBookmarks(){this.bookmarks.removeMany(this.bookmarks.filter((e=>"map"===e.source))),isWebMap(this.map)&&this.map.bookmarks?.length>0?this.map.bookmarks.forEach((e=>{this.bookmarks.add(new Bookmark({source:"map",title:e.name,viewpoint:e.viewpoint}))})):isWebScene(this.map)&&this.map.presentation?.slides?.length>0&&this.map.presentation.slides.forEach((e=>{const t={source:"map",title:e.title.text,viewpoint:e.viewpoint},i=new Bookmark(t);this.bookmarks.add(i)}))}};MapExtension=__decorate([serializable],MapExtension);export{MapExtension};class LayerExtensionCollectionImpl extends LayerExtensionCollectionBase{constructor(e){super(e,"map.layers")}get _mapExtension(){return this._parent}toJSON(){const e=[];return this.forEach((t=>{e.push(`item://${encodeURIComponent(ItemType.LAYER_EXTENSION)}/${encodeURIComponent(t.id)}`)})),e}}class BasemapExtensionCollection extends InitializableCollectionProxy{constructor(e){super(new Collection),this.isExplicitlyModified=!1,this._mapExtension=e}add(e,t){return super.add(e,t),this.isExplicitlyModified=!0,1===this.length&&this._mapExtension.map&&!this._mapExtension.basemapExtension&&(this._mapExtension.basemapExtension=e),this}addMany(e,t){return super.addMany(e,t),this.isExplicitlyModified=!0,this}addInternal(e,t,i=!0){const s=e=>{const t="-vector";return e?.endsWith(t)?e.substring(0,e.length-t.length):e};let a;if(e.basemap){const t=s(e.basemap.id);if(a=this.findIndex((e=>s(e.basemap?.id)===t)),isStandardBasemap(e.basemap)&&a>=0){if(!i)return;super.removeAt(a)}}super.add(e,t??(a>=0?a:void 0))}removeAt(e){const t=super.removeAt(e);return t&&(this.isExplicitlyModified=!0,t===this._mapExtension.basemapExtension&&(e<this.length?this._mapExtension.basemapExtension=this.getItemAt(e):this.length?this._mapExtension.basemapExtension=this.getItemAt(e-1):this._mapExtension.basemapExtension=void 0)),t}removeAll(){this._mapExtension.basemapExtension=void 0,super.removeAll()}removeAtInternal(e){return super.removeAt(e)}removeAllInternal(){for(;this.length;)this.removeAtInternal(this.length-1)}reorder(e,t){return super.reorder(e,t),this.isExplicitlyModified=!0,e}reorderInternal(e,t){return super.reorder(e,t)}_itemIsInitialized(e){return super._itemIsInitialized(e)&&!!e.basemap}}class TableExtensionCollectionImpl extends InitializableCollectionProxy{constructor(e){super(),this._tableExtensionMap=new WeakMap,this._uninitializedTableExtensions=new Set,this._mapExtension=e,onCollectionPropertyChange(this._mapExtension,"map.tables",(e=>{const t={added:(e.added||[]).map((e=>this._forTable(e))),moved:(e.moved||[]).map((e=>this._forTable(e))),removed:(e.removed||[]).map((e=>this._forTable(e))),target:this};this.emit("change",t)})),this._mapExtension.watch("map.tables.length",(()=>this.notifyChange("length")))}get _collection(){return this._tables.map((e=>this._forTable(e))).concat(Array.from(this._uninitializedTableExtensions))}get _tables(){return this._mapExtension.map?.tables??new ReadOnlyCollection(new Collection)}toJSON(){const e=[];return this.forEach((t=>{e.push(`item://${encodeURIComponent(ItemType.TABLE_EXTENSION)}/${encodeURIComponent(t.id)}`)})),e}clone(){const e=new TableExtensionCollectionImpl(this._mapExtension);return e._tableExtensionMap=this._tableExtensionMap,e}findById(e){return checkArg("id",e).isNotMissing(),this.find((t=>t.id===e))}findByTableId(e){return checkArg("id",e).isNotMissing(),this.find((t=>t.table.id===e))}forTable(e){if(checkArg("table",e).isNotMissing(),this._tables.includes(e))return this._forTable(e)}add(e,t){if(checkArg("tableX",e).isNotMissing(),e.mapExtension&&e.mapExtension.tableExtensions.remove(e),e._setMapExtension(this._mapExtension),e.table){const i=this._tableExtensionMap.get(e.table);if(this._tableExtensionMap.set(e.table,e),i&&i!==e&&this._onRemoved(i),this._tables.includes(e.table))if(void 0===t){const t={added:[e],moved:[],removed:i?[i]:[],target:this};this.emit("change",t)}else this._tables.reorder(e.table,t);else this._tables.add(e.table,t)}else{this._uninitializedTableExtensions.add(e);const t={added:[e],moved:[],removed:[],target:this};this.emit("change",t)}return this._onAdded(e),this}removeAt(e){const t=this.getItemAt(e);if(void 0!==t){if(this._uninitializedTableExtensions.has(t)){this._uninitializedTableExtensions.delete(t);const e={added:[],moved:[],removed:[t],target:this};this.emit("change",e)}else this._tables.remove(t.table);return this._onRemoved(t),t}}reorder(e,t){if(e&&this._tables.includes(e.table))return this._tables.reorder(e.table,t),e}sort(e){return this._tables.sort(((t,i)=>e(this._forTable(t),this._forTable(i)))),this}_itemIsInitialized(e){return super._itemIsInitialized(e)&&!!e.table}_onAdded(e){}_onRemoved(e){e._setMapExtension(void 0)}_forTable(e){for(const e of this._uninitializedTableExtensions)e._resolveTable(),e.table&&(this._tableExtensionMap.set(e.table,e),this._uninitializedTableExtensions.delete(e));if(!this._tableExtensionMap.has(e)){const t=TableExtension.create({table:e});this._tableExtensionMap.set(e,t),t._setMapExtension(this._mapExtension),this._onAdded(t)}return this._tableExtensionMap.get(e)}}class AllLayerExtensionCollectionImpl extends ReadOnlyInitializableCollection{constructor(e){super(),this._mapExtension=e}get _collection(){let e=this._mapExtension.layerExtensions.flatten((e=>isGroupLayerExtension(e)?e.layerExtensions:[]));return this._mapExtension.basemapExtension&&(e=e.concat(this._mapExtension.basemapExtension.baseLayerExtensions.toArray()).concat(this._mapExtension.basemapExtension.referenceLayerExtensions.toArray())),e=e.concat(this._mapExtension.groundExtension.layerExtensions.toArray()),e}findById(e){return checkArg("id",e).isNotMissing(),this.find((t=>t.id===e))}findByLayerId(e){return checkArg("id",e).isNotMissing(),this.find((t=>t.layer.id===e))}forLayer(e){return checkArg("layer",e).isNotMissing(),this.findByLayerId(e.id)}emit(e,t){if("change"===e){const i=new Collection;i.addMany(t.added);const s=i.flatten((e=>isGroupLayerExtension(e)?e.layerExtensions:[])).toArray(),a=new Collection;a.addMany(t.removed);const n=a.flatten((e=>isGroupLayerExtension(e)?e.layerExtensions:[])).toArray(),r=new Collection;r.addMany(t.moved);const o=r.flatten((e=>isGroupLayerExtension(e)?e.layerExtensions:[])).toArray();super.emit(e,{added:s,removed:n,moved:o,target:this})}return super.emit(e,t)}_itemIsInitialized(e){return super._itemIsInitialized(e)&&!!e.layer}}function toPortalItem(e){if("object"!=typeof e||!e||!e.baseMap)return toPortalItemBase(e)}function isPortalItem(e){return"object"!=typeof e||e&&!e.baseMap}function validatePortalItem(e,t,i){if(e?.type&&e.type!==i)throw new Error(`Invalid portal item type "${e.type}" for property ${t}.`)}
|
|
1
|
+
import{__decorate as e}from"tslib";import{ArgumentError as t}from"../ArgumentError.js";import{EntityBase as i}from"../Entity.js";import{InvalidOperationError as s}from"../InvalidOperationError.js";import{isBasemapExtension as a,isBookmark as n,isGroundExtension as r,isLayerPreset as o,isMenu as p,isTableExtension as h,ItemType as l}from"../ItemType.js";import{TableExtension as m}from"../data/TableExtension.js";import{LayerPreset as d}from"../layer-preset/LayerPreset.js";import{Menu as c}from"../menus/Menu.js";import{WebMap as b}from"../portal/WebMap.js";import{WebScene as _}from"../portal/WebScene.js";import{resolveRelativeHrefs as y}from"../portal/_utils.js";import{DefaultArcGISRequestHelper as u}from"../support/ArcGISRequestHelper.js";import{FormatSettings as f}from"../support/FormatSettings.js";import{InitializableCollectionProxy as w}from"../support/InitializableCollectionProxy.js";import{ReadOnlyInitializableCollection as E}from"../support/ReadOnlyInitializableCollection.js";import{serializable as x}from"../support/Serializable.js";import{WellKnownBasemap as M}from"../support/esri.js";import{ReadOnlyCollection as g}from"../utilities/ReadOnlyCollection.js";import{basemapsAreEquivalent as I,createStandardBasemap as S,isStandardBasemap as v}from"../utilities/basemaps.js";import{checkArg as T}from"../utilities/checkArg.js";import{Collection as A,compare as P}from"../utilities/collection.js";import{load as z}from"../utilities/esri.js";import{isGroupLayerExtension as O}from"../utilities/extensions.js";import{project as L}from"../utilities/geometry.js";import{find as C}from"../utilities/iterable.js";import{layersAreEquivalent as V}from"../utilities/layers.js";import{getLogger as j}from"../utilities/log.js";import{getMapSpatialReference as k,isMap as B,isWebMap as R,isWebScene as N}from"../utilities/mapping.js";import{toPortalItem as G}from"../utilities/portal.js";import{parallelEach as W}from"../utilities/promise.js";import{onCollectionPropertyChange as D,onEach as $}from"../utilities/watch.js";import{BasemapExtension as q}from"./BasemapExtension.js";import{Bookmark as H}from"./Bookmark.js";import{GroundExtension as F}from"./GroundExtension.js";import{MapConstraints as U}from"./MapConstraints.js";import{UnsupportedLayerExtension as J}from"./UnsupportedLayerExtension.js";import{_assignLayerExtensions as X,LayerExtension as Y}from"./_LayerExtension.js";import{LayerExtensionCollectionBase as K}from"./support/_LayerExtensionCollection.js";const Q=j("MapExtension");let Z=class extends i{get webMap(){return this._webMap}get webScene(){return this._webScene}get map(){return this._currentMap}get viewMode(){return this.map?N(this.map)?"scene":"map":this.initialViewMode}get initialViewMode(){return this.webMap&&this.webScene?this._initialViewMode||"map":N(this.map)||this.webScene&&!this.webMap?"scene":"map"}set initialViewMode(e){this._initialViewMode=e}get requestHelper(){return this._requestHelper||(this._requestHelper=new u),this._requestHelper}set requestHelper(e){this._requestHelper=e}get basemapExtension(){return this._basemapExtension}set basemapExtension(e){const t=this._basemapExtension;if(t!==e)if(t&&t._setMapExtension(void 0),e){if(e._setMapExtension(this),this.isInitialized&&!e.basemap){if(e.isInitialized)throw e._setMapExtension(void 0),new s("Cannot set MapExtension.basemapExtension without a valid Esri Basemap object");e.initialize()}this._ensureIsBasemapOption(e),this.map&&e.basemap&&e.basemap!==this.map.basemap?this.map.basemap=e.basemap:this._basemapExtension=e}else this.map.basemap=void 0,this._basemapExtension=void 0}get groundExtension(){return this._groundExtension||(this.groundExtension=new F({ground:this.map?.ground})),this._groundExtension}set groundExtension(e){if(!e)throw new s("Cannot set map.ground to undefined");const t=this._groundExtension;t!==e&&(t&&t._setMapExtension(void 0),e._setMapExtension(this),e._resolveGround(),e.ground?(this._groundExtensions.set(e.ground,e),this.map&&e.ground!==this.map.ground?this.map.ground=e.ground:this._groundExtension=e):this._groundExtension=e)}get basemapOptions(){return this._basemapOptions}get bookmarks(){return this._bookmarks}get initialBasemapExtension(){return this._initialBasemapExtension}get initialLayerPreset(){return this._initialLayerPreset}set initialLayerPreset(e){if(!e)return void(this._initialLayerPreset=void 0);const t=o(e)?e:new d(e);this._initialLayerPreset=t}get _spatialReference(){return k(this.map)}get webMapItemTitle(){if(this._webMapItem)return this._webMapItem.title}get webSceneItemTitle(){if(this._webSceneItem)return this._webSceneItem.title}get title(){return this._title?this._title:this._webMapItem&&"map"===this.viewMode?this.webMapItemTitle:this._webSceneItem&&"scene"===this.viewMode?this.webSceneItemTitle:void 0}set title(e){this._title=e}get contextMenu(){return this._contextMenu}set contextMenu(e){this._contextMenu=e,e&&this.isInitialized&&!e.isInitialized&&(async()=>{try{await e.initialize()}catch(e){e instanceof Error&&Q.error({message:"An error occurred while initializing context menu.",error:e})}})()}get _allLayerViews(){const e=t=>{const i=[t];return A.isCollection(t.sublayerViews)?i.push(...t.sublayerViews.toArray().flatMap(e)):A.isCollection(t.layerViews)&&i.push(...t.layerViews.toArray().flatMap(e)),i};return this._layerViews.toArray().flatMap(e)}get layerExtensions(){return this._layerExtensions}constructor(e){super(e),this.isSwitchingMap=!1,this._layerViews=new A,this._itemType=l.MAP_EXTENSION,this._skipBasemapOptions=!1;let i={...e};this._basemapOptions=new te(this),this._groundExtensions=new WeakMap,this._layerExtensions=this._createLayerExtensionCollection(),this.tableExtensions=this._createTableExtensionCollection(),this.formatSettings=this._createFormatSettings(),this._bookmarks=new A,this.constraints=new U,this.watch(["_map","_scene"],(e=>{e&&($(e.layers,"layerview-create",(e=>{this._layerViews.add(e.layerView)})),$(e.layers,"layerview-destroy",(e=>{this._layerViews.remove(e.layerView)})))}));const{webMap:s,webScene:a,initialViewMode:n,map:r,basemapOptions:o}=i;if(this._webMap=s,this._webScene=a,this._webMapItem=ae(s),this._webSceneItem=ae(a),this.initialViewMode=n,N(r)&&a)throw new t("Cannot specify webScene property if map is initialized to a WebScene instance.");if(B(r)&&s)throw new t("Cannot specify webMap property if map is initialized to a 2D Map instance.");if(N(r)||R(r)||B(r))this.assignProperties({basemapOptions:o}),this._skipBasemapOptions=!!o;else{const{map:e,layerExtensions:t,tableExtensions:s,groundExtension:a,basemapOptions:n,basemapExtension:r,...o}=i;this._deferredProperties={map:e,layerExtensions:t,tableExtensions:s,groundExtension:a,basemapOptions:n,basemapExtension:r},i=o,n&&(this._skipBasemapOptions=!0)}this._initMapFromProperties(i),this.watch("map.basemap",(()=>this._onBasemapChange()),!0),this.watch("map.ground",(()=>this._onGroundChange()),!0),this.allLayerExtensions=new se(this),this.map?.basemap&&this._onBasemapChange()}getAllFeatureSources(e=(()=>!0)){const t=[],i=a=>{a.hasFeatures&&t.push(a);for(const t of a.sublayerExtensions.initializedItems.filter(e).toArray())s(t);if(O(a))for(const t of a.layerExtensions.initializedItems.filter(e).toArray())i(t)},s=i=>{t.push(i);for(const t of i.sublayerExtensions.initializedItems.filter(e).toArray())s(t)};for(const t of this.layerExtensions.initializedItems.filter(e).toArray())i(t);for(const i of this.tableExtensions.initializedItems.filter(e).toArray())t.push(i);if(this.basemapExtension){for(const t of this.basemapExtension.baseLayerExtensions.initializedItems.filter(e).toArray())i(t);for(const t of this.basemapExtension.referenceLayerExtensions.initializedItems.filter(e).toArray())i(t)}return t}isSupportedViewMode(e){return e===this.viewMode||!(!this.webMap&&!this.webScene)&&("scene"===e?!!this.webScene:!!this.webMap)}async switchViewMode(e){if(T("viewMode",e).isNotMissing().satisfies((e=>this.isSupportedViewMode(e)),"Unsupported view mode."),this.viewMode===e)return;let t;"scene"===e?(await this._createScene(),t=this._scene):(await this._createMap(),t=this._map),t.basemap=this.map.basemap,await this.switchMap(t),this.notifyChange("viewMode"),this.notifyChange("title")}async switchMap(e){if(T("newMap",e).isNotMissing(),e===this.map)return;if(!this.map)return void this._setMap(e);this.isSwitchingMap=!0,this.isInitialized&&await z(e);const t=new Map;this.map.layers.forEach((e=>t.set(e,this.layerExtensions.forLayer(e))));const{basemapExtension:i}=this;this._setMap(e),this._updateBookmarks();const s=[];for(const e of this.map.layers.toArray()){const i=C(t.entries(),(([t])=>V(t,e)));if(i)s.push((async()=>{const t=i[1];await t._switchLayer(e),this._layerExtensions._register(t)})());else{const t=this._layerExtensions._forLayer(e);t?.layer!==e&&s.push(t._switchLayer(e))}}this.map.basemap&&i&&I(this.map.basemap,i.basemap)&&s.push((async()=>{await i._switchBasemap(this.map.basemap),this.basemapExtension=i})()),this.isInitialized&&s.push(this._initializeChildren()),await Promise.all(s),this.isSwitchingMap=!1}async setWebMap(e){if(!e&&this.webMap&&!this.webScene)throw new s("Cannot unset both webMap and webScene.");this._webMap=e,this._map=void 0,this._createMapPromise=void 0,this._webMapItem=ae(e),await z(this._webMapItem),"map"===this.viewMode&&(e?(this._basemapOptions.isExplicitlyModified||this._basemapOptions.removeAllInternal(),await this._createMap(),await this.switchMap(this._map),await this._createStandardBasemapOptions(),this._basemapOptions.reorderInternal(this.basemapExtension,0),this._initialBasemapExtension=this.basemapExtension):await this.switchViewMode("scene")),this.notifyChange("webMap"),this.notifyChange("initialViewMode"),this.notifyChange("title")}async setWebScene(e){if(!e&&this.webScene&&!this.webMap)throw new s("Cannot unset both webMap and webScene.");this._webScene=e,this._scene=void 0,this._createScenePromise=void 0,this._webSceneItem=ae(e),await z(this._webSceneItem),"scene"===this.viewMode&&(e?(this._basemapOptions.isExplicitlyModified||this._basemapOptions.removeAllInternal(),await this._createScene(),await this.switchMap(this._scene),await this._createStandardBasemapOptions(),this._basemapOptions.reorderInternal(this.basemapExtension,0),this._initialBasemapExtension=this.basemapExtension):await this.switchViewMode("map")),this.notifyChange("webScene"),this.notifyChange("initialViewMode"),this.notifyChange("title")}getDefaults(){const e=super.getDefaults();return e.initialViewMode="map",e}async _createScene(){if(!this._scene&&this.webScene)return this._createScenePromise=this._createScenePromise??(async()=>{if(ne(this.webScene)){const e=new((await import("@arcgis/core/WebScene")).default);await this._loadAndApplyPortalItemData(this._webSceneItem,e),this._scene=e}else this._scene=await _.toEsriApiWebScene(this.webScene)})()}async _createMap(){if(!this._map&&this.webMap)return this._createMapPromise=this._createMapPromise??(async()=>{if(ne(this.webMap)){const e=new((await import("@arcgis/core/WebMap")).default);await this._loadAndApplyPortalItemData(this._webMapItem,e),this._map=e}else this._map=await b.toEsriApiWebMap(this.webMap)})()}_getSerializableProperties(){return{...super._getSerializableProperties(),layerExtensions:{serializeModes:["initial","project"],deserialize:e=>{if(this.map&&e){const t=("map"===this.viewMode?this._scene:this._map)?.layers.toArray()??[],i=e.filter((e=>!t.includes(e.layer)&&!t.some((t=>e.layer&&(Y._matchesRef(t,e.layer)||V(t,e.layer))))));X(this.layerExtensions,i)}},serialize:e=>{if(this._deferredProperties?.layerExtensions)return this._deferredProperties.layerExtensions;{const t="map"===this.viewMode,i=(t?this._map:this._scene)?.layers.toArray();let s=(t?this._scene:this._map)?.layers.toArray()??[];return s=s.filter((e=>!i.find((t=>V(t,e))))),this.layerExtensions.concat(s.map((e=>this._layerExtensions._forLayer(e)))).filter((t=>!(t instanceof J||"initial"===e)||!t.dynamicallyAddedLayer)).toArray()}}},tableExtensions:{serializeModes:["initial","project"],deserialize:e=>{this.map?P(this.tableExtensions,e,{onNew:(e,t)=>{this.tableExtensions.add(h(e)?e:m.create(e),t)},onMatch:(e,t,i,s)=>{h(t)||e.assignProperties(t),i!==s&&this.tableExtensions.reorder(e,s)},equals:(e,t)=>h(t)?t===e:!!m._matchesRef(e,t.table)||e.id===t.id}):this._deferredProperties={...this._deferredProperties,tableExtensions:e}},serialize:()=>this._deferredProperties?.tableExtensions?this._deferredProperties?.tableExtensions:this.tableExtensions.toArray()},basemapExtension:{serializeModes:["project"],deserialize:e=>{this.map?e?a(e)?this.basemapExtension=e:this.basemapExtension?this.basemapExtension.assignProperties(e):this.basemapExtension=q.create(e):this.basemapExtension=void 0:this._deferredProperties={...this._deferredProperties,basemapExtension:e}},serialize:()=>this._deferredProperties?.basemapExtension?this._deferredProperties?.basemapExtension:this.basemapExtension},basemapOptions:{serializeModes:["initial"],deserialize:e=>{this._skipBasemapOptions?this._skipBasemapOptions=!1:(P(this.basemapOptions,e,{onNew:(e,t)=>{this.basemapOptions.add(a(e)?e:q.create(e),t)},onMatch:(e,t,i,s)=>{a(t)||e.assignProperties(t),i!==s&&this.basemapOptions.reorder(e,s)},onMissing:e=>{this.basemapOptions.remove(e)},equals:(e,t)=>{if(a(t))return t===e;if(e.id&&t.id)return e.id===t.id;{const i=e.toJSON();return I(i.basemap,t.basemap||t.baseMap)}}}),this.basemapExtension&&this._ensureIsBasemapOption(this.basemapExtension),this.isInitialized&&W(this.basemapOptions.toArray(),(e=>e._createBackingBasemap())))},serialize:()=>this._deferredProperties?.basemapOptions?this._deferredProperties?.basemapOptions:this.basemapOptions.toArray()},groundExtension:{serializeModes:["initial"],deserialize:e=>{this.map?r(e)?this.groundExtension=e:this.groundExtension.assignProperties(e):this._deferredProperties={...this._deferredProperties,groundExtension:e}},serialize:()=>this._deferredProperties?.groundExtension?this._deferredProperties?.groundExtension:this.groundExtension},bookmarks:{serialize:()=>this.bookmarks.map((e=>e.toJSON())).toArray(),deserialize:e=>{this.bookmarks.addMany(e.map((e=>n(e)?e:new H(e))))}},webMap:{serializeModes:["initial"],deserialize:!1},webScene:{serializeModes:["initial"],deserialize:!1},initialLayerPreset:"initial",initialViewMode:{serializeModes:["initial","project"],serialize:e=>"project"===e?this.viewMode:"scene"!==this.initialViewMode||!this.webScene&&this.webMap?"map":"scene",deserialize:e=>{this.viewMode!==e&&(this._deserializedViewMode=e),this._initialViewMode=e},isDefault:(e,t)=>"project"!==t&&"map"===e},formatSettings:"initial",constraints:"initial",title:"initial",onClick:"initial",onHover:"initial",onHoverEnd:"initial",onInitialized:"initial",onViewpointChanged:"initial",contextMenu:{serializeModes:["initial"],deserialize:e=>{e?p(e)?this.contextMenu=e:this.contextMenu?this.contextMenu.assignProperties(e):this.contextMenu=c.create(e):this.contextMenu=void 0}},map:{serializeModes:["project"],serialize:()=>({operationalLayers:this.layerExtensions.toArray().filter((e=>e.layer)).map((e=>e._getProjectWebmapJSON())),tables:this.tableExtensions.toArray().filter((e=>e.table)).map((e=>({id:e.table.id,title:e.table.title})))}),deserialize:e=>{if(this.map)if(B(e)||R(e)||N(e)){if(e!==this.map)throw new t("properties.map","Property 'map' is read-only.")}else this._deserializedMapPromise=(async()=>{this._deserializedViewMode&&this.webMap&&this.webScene&&(this._deserializedViewModePromise=this.switchViewMode(this._deserializedViewMode),await this._deserializedViewModePromise,this._deserializedViewMode=void 0,this._deserializedViewModePromise=void 0),await this._applyMapProperties(e,this.map),this._deserializedMapPromise=void 0})();else this._deferredProperties={...this._deferredProperties,map:e}}},requestHelper:{serialize:!1}}}async _applyMapProperties(e,t,i){await W(this.basemapOptions.toArray(),(e=>e._createBackingBasemap()));let s=e;const a=this.basemapOptions.find((e=>I(e.basemap,s.baseMap)));a&&(t.basemap=a.basemap,s={...s,baseMap:{...s.baseMap,title:t.basemap.title}}),N(t)?await _.applyToEsriApiWebScene(s,t,i):await b.applyToEsriApiMap(s,t,i)}_createFormatSettings(){return new f}_createLayerExtensionCollection(){return new ee(this)}_createTableExtensionCollection(){return new ie(this)}async _onInitialize(){await super._onInitialize();const{basemapExtension:e,basemapOptions:t,groundExtension:i,webMap:s,webScene:a,map:n,...r}=this._deferredProperties??{};if(t&&this.assignProperties({basemapOptions:t}),this.map||("scene"===this.initialViewMode?this._setMap(new((await import("@arcgis/core/WebScene")).default)):this._setMap(new((await import("@arcgis/core/WebMap")).default))),this.map.basemap&&this._onBasemapChange(),(s||a)&&await this._applyMapProperties("scene"===this.initialViewMode?a:s,this.map),e&&(this.assignProperties({basemapExtension:e}),await this.basemapExtension._createBackingBasemap()),i&&this.assignProperties({groundExtension:i}),this._webMapItem||this._webSceneItem){await Promise.all([z(this.map),z(this._webMapItem),z(this._webSceneItem)]),re(this._webMapItem,"webMap","Web Map"),re(this._webSceneItem,"webScene","Web Scene");const e=N(this.map)?this._webSceneItem:this._webMapItem;await this._loadAndApplyPortalItemData(e)}else await z(this.map);n&&await this._applyMapProperties(n,this.map),this.assignProperties(r),this._deferredProperties=void 0,this._initialBasemapExtension=this.basemapExtension,this._updateBookmarks(),this.contextMenu&&await this.contextMenu.initialize();for(const e of this.layerExtensions.toArray())await e._createBackingLayer();await Promise.all(this.tableExtensions.map((e=>e._createBackingTable())).toArray())}async _postInitialize(){await super._postInitialize(),await this._createStandardBasemapOptions(),await W(this.basemapOptions.toArray(),(e=>e._createBackingBasemap())),this.initialLayerPreset&&await this.initialLayerPreset.applyTo(this)}*_initializableChildCollections(){yield*super._initializableChildCollections();const e=new A(this.layerExtensions.filter((e=>!!e.layer)));e.remove=e=>{this.layerExtensions.remove(e)};const t=new A(this.tableExtensions.filter((e=>!!e.table)));if(t.remove=e=>{this.tableExtensions.remove(e)},yield e,yield t,this.basemapExtension){const e=new A;e.add(this.basemapExtension),yield e}const i=new A;i.add(this.groundExtension),yield i}_initMapFromProperties(e){const t=e.map;B(t)||R(t)||N(t)?this._setMap(t):"scene"===this.initialViewMode?e.webScene&&!ne(e.webScene)&&(this._deferredProperties={webScene:e.webScene,...this._deferredProperties}):e.webMap&&!ne(e.webMap)&&(this._deferredProperties={webMap:e.webMap,...this._deferredProperties})}_setMap(e){N(e)?this._scene=e:this._map=e,this._currentMap=e,this.basemapExtension?.basemap&&!e.basemap&&(e.basemap=this.basemapExtension.basemap),this.groundExtension?.ground&&!e.ground&&(e.ground=this.groundExtension.ground),this.notifyChange("map")}async _loadAndApplyPortalItemData(e,t){await z(e);const i=await e.fetchData();y(i,e),await this._inferLayerTypes(i),this.basemapExtension?.basemap&&!t&&delete i.baseMap,F.isDefaultGround(this.groundExtension.ground)||t||delete i.ground;const s=t||this.map;await z(s),await this._applyMapProperties(i,s,e),s.portalItem=e;const{viewpoint:a,spatialReference:n}=s.initialViewProperties;a&&a.targetGeometry&&!a.targetGeometry.spatialReference.equals(n)&&(s.initialViewProperties.viewpoint.targetGeometry=(await L([a.targetGeometry],n))[0]),a&&a.camera&&(a.camera.position.spatialReference=n.clone())}_onBasemapChange(){if(this._basemapExtension){if(this.basemapExtension.basemap==this.map.basemap)return;this._basemapExtension._setMapExtension(void 0)}if(this.map.basemap){let e=this.basemapOptions.find((e=>e.basemap===this.map.basemap));e||(e=q.create({basemap:this.map.basemap}),this._basemapOptions.addInternal(e,0)),e.mapExtension!==this&&e._setMapExtension(this),this._basemapExtension=e}else this._basemapExtension=void 0;this.notifyChange("basemapExtension")}_onGroundChange(){if(this._groundExtension){if(this.groundExtension.ground===this.map.ground)return void(this._groundExtensions.has(this.map.ground)||this._groundExtensions.set(this.map.ground,this.groundExtension));this.groundExtension._setMapExtension(void 0)}this._groundExtensions.has(this.map.ground)||this._groundExtensions.set(this.map.ground,new F({ground:this.map.ground}));const e=this._groundExtensions.get(this.map.ground);e.mapExtension!==this&&e._setMapExtension(this),this._groundExtension=e,this.notifyChange("groundExtension")}async _inferLayerTypes(e){const t=[];if(e.operationalLayers)for(const i of e.operationalLayers)t.push(this._inferLayerType(i));if(e.baseMap&&t.push(this._inferBasemapLayerTypes(e.baseMap)),e.hasOwnProperty("ground")&&t.push(this._inferGroundLayerTypes(e.ground)),e.presentation?.slides)for(const i of e.presentation.slides)i.baseMap&&"string"!=typeof i.baseMap&&t.push(this._inferBasemapLayerTypes(i.baseMap));await Promise.all(t)}async _inferBasemapLayerTypes(e){const t=[];if(e.baseMapLayers)for(const i of e.baseMapLayers)t.push(this._inferLayerType(i));await Promise.all(t)}async _inferGroundLayerTypes(e){const t=[];if(e.layers)for(const i of e.layers)t.push(this._inferLayerType(i));await Promise.all(t)}async _inferLayerType(e){if(!e.layerType)if(e.type)e.layerType=e.type;else if(e.url){const t=e.url;if(t.match(".*MapServer/\\d{1,}/?$")||t.match(".*FeatureServer/\\d{1,}/?$"))e.layerType="ArcGISFeatureLayer";else if(t.match(".*StreamServer/?$"))e.layerType="ArcGISStreamLayer";else if(t.match(".*ImageServer/?$")){const i=await this._getLayerData(t);i.cacheType?"Map"===i.cacheType?e.layerType="ArcGISTiledImageServiceLayer":"Elevation"===i.cacheType&&(e.layerType="ArcGISTiledElevationServiceLayer"):e.layerType="ArcGISImageServiceLayer"}else if(t.match(".*MapServer/?$")){const i=await this._getLayerData(t);e.layerType=i.tileInfo?"ArcGISTiledMapServiceLayer":"ArcGISMapServiceLayer"}else if(t.match(".*\\.(csv|txt)$"))e.layerType="CSV";else if(t.match(".*\\.kml$"))e.layerType="KML";else if(t.match(".*SceneServer/layers/\\d{1,}/?$")){const i=await this._getLayerData(t);"3DObject"===i.layerType?e.layerType="ArcGISSceneServiceLayer":"IntegratedMesh"===i.layerType?e.layerType="IntegratedMeshLayer":"PointCloud"===i.layerType&&(e.layerType="PointCloudLayer")}else t.match(".*(\\.xml|rss/?)$")&&(e.layerType="GeoRSS")}else if(e.layers){e.layerType="GroupLayer";const t=[];for(const i of e.layers)t.push(this._inferLayerType(i));await Promise.all(t)}else e.templateUrl&&e.tileInfo?e.layerType="WebTiledLayer":e.featureCollection?e.layerType="ArcGISFeatureLayer":e.styleUrl?e.layerType="VectorTileLayer":e.mapUrl&&(e.layerType="WMS")}async _getLayerData(e){const t=await this.requestHelper.request(e,{query:{f:"json"}});if(!t?.data)throw new Error(`Response to request for url ${e} was invalid.`);return t.data}async _createStandardBasemapOptions(){const e=this._spatialReference;!this._basemapOptions.isExplicitlyModified&&e&&e.isWebMercator&&await W([M.SATELLITE,M.HYBRID_VECTOR,M.STREETS_VECTOR,M.TOPO_VECTOR,M.STREETS_NAVIGATION_VECTOR,M.STREETS_NIGHT_VECTOR,M.TERRAIN_VECTOR,M.DARK_GRAY_VECTOR,M.GRAY_VECTOR,M.OCEANS_VECTOR,M.OPEN_STREET_MAP_VECTOR],(async e=>{const t=await S(e);I(this.map.basemap,t)?this._basemapOptions.addInternal(this.basemapExtension):this._basemapOptions.addInternal(q.create({basemap:t}),void 0,!1)}))}_ensureIsBasemapOption(e){const t=this.basemapOptions.findIndex((t=>t.basemap===e.basemap));t>=0?this._basemapOptions.getItemAt(t)!==e&&(this._basemapOptions.removeAtInternal(t),this._basemapOptions.addInternal(e,t)):this._basemapOptions.addInternal(e,0)}_updateBookmarks(){this.bookmarks.removeMany(this.bookmarks.filter((e=>"map"===e.source))),R(this.map)&&this.map.bookmarks?.length>0?this.map.bookmarks.forEach((e=>{this.bookmarks.add(new H({source:"map",title:e.name,viewpoint:e.viewpoint}))})):N(this.map)&&this.map.presentation?.slides?.length>0&&this.map.presentation.slides.forEach((e=>{const t={source:"map",title:e.title.text,viewpoint:e.viewpoint},i=new H(t);this.bookmarks.add(i)}))}};Z=e([x],Z);export{Z as MapExtension};class ee extends K{get _mapExtension(){return this._parent}constructor(e){super(e,"map.layers")}toJSON(){const e=[];return this.forEach((t=>{e.push(`item://${encodeURIComponent(l.LAYER_EXTENSION)}/${encodeURIComponent(t.id)}`)})),e}}class te extends w{constructor(e){super(new A),this.isExplicitlyModified=!1,this._mapExtension=e}add(e,t){return super.add(e,t),this.isExplicitlyModified=!0,1===this.length&&this._mapExtension.map&&!this._mapExtension.basemapExtension&&(this._mapExtension.basemapExtension=e),this}addMany(e,t){return super.addMany(e,t),this.isExplicitlyModified=!0,this}addInternal(e,t,i=!0){const s=e=>{const t="-vector";return e?.endsWith(t)?e.substring(0,e.length-t.length):e};let a;if(e.basemap){const t=s(e.basemap.id);if(a=this.findIndex((e=>s(e.basemap?.id)===t)),v(e.basemap)&&a>=0){if(!i)return;super.removeAt(a)}}super.add(e,t??(a>=0?a:void 0))}removeAt(e){const t=super.removeAt(e);return t&&(this.isExplicitlyModified=!0,t===this._mapExtension.basemapExtension&&(e<this.length?this._mapExtension.basemapExtension=this.getItemAt(e):this.length?this._mapExtension.basemapExtension=this.getItemAt(e-1):this._mapExtension.basemapExtension=void 0)),t}removeAll(){this._mapExtension.basemapExtension=void 0,super.removeAll()}removeAtInternal(e){return super.removeAt(e)}removeAllInternal(){for(;this.length;)this.removeAtInternal(this.length-1)}reorder(e,t){return super.reorder(e,t),this.isExplicitlyModified=!0,e}reorderInternal(e,t){return super.reorder(e,t)}_itemIsInitialized(e){return super._itemIsInitialized(e)&&!!e.basemap}}class ie extends w{get _collection(){return this._tables.map((e=>this._forTable(e))).concat(Array.from(this._uninitializedTableExtensions))}get _tables(){return this._mapExtension.map?.tables??new g(new A)}constructor(e){super(),this._tableExtensionMap=new WeakMap,this._uninitializedTableExtensions=new Set,this._mapExtension=e,D(this._mapExtension,"map.tables",(e=>{const t={added:(e.added||[]).map((e=>this._forTable(e))),moved:(e.moved||[]).map((e=>this._forTable(e))),removed:(e.removed||[]).map((e=>this._forTable(e))),target:this};this.emit("change",t)})),this._mapExtension.watch("map.tables.length",(()=>this.notifyChange("length")))}toJSON(){const e=[];return this.forEach((t=>{e.push(`item://${encodeURIComponent(l.TABLE_EXTENSION)}/${encodeURIComponent(t.id)}`)})),e}clone(){const e=new ie(this._mapExtension);return e._tableExtensionMap=this._tableExtensionMap,e}findById(e){return T("id",e).isNotMissing(),this.find((t=>t.id===e))}findByTableId(e){return T("id",e).isNotMissing(),this.find((t=>t.table.id===e))}forTable(e){if(T("table",e).isNotMissing(),this._tables.includes(e))return this._forTable(e)}add(e,t){if(T("tableX",e).isNotMissing(),e.mapExtension&&e.mapExtension.tableExtensions.remove(e),e._setMapExtension(this._mapExtension),e.table){const i=this._tableExtensionMap.get(e.table);if(this._tableExtensionMap.set(e.table,e),i&&i!==e&&this._onRemoved(i),this._tables.includes(e.table))if(void 0===t){const t={added:[e],moved:[],removed:i?[i]:[],target:this};this.emit("change",t)}else this._tables.reorder(e.table,t);else this._tables.add(e.table,t)}else{this._uninitializedTableExtensions.add(e);const t={added:[e],moved:[],removed:[],target:this};this.emit("change",t)}return this._onAdded(e),this}removeAt(e){const t=this.getItemAt(e);if(void 0!==t){if(this._uninitializedTableExtensions.has(t)){this._uninitializedTableExtensions.delete(t);const e={added:[],moved:[],removed:[t],target:this};this.emit("change",e)}else this._tables.remove(t.table);return this._onRemoved(t),t}}reorder(e,t){if(e&&this._tables.includes(e.table))return this._tables.reorder(e.table,t),e}sort(e){return this._tables.sort(((t,i)=>e(this._forTable(t),this._forTable(i)))),this}_itemIsInitialized(e){return super._itemIsInitialized(e)&&!!e.table}_onAdded(e){}_onRemoved(e){e._setMapExtension(void 0)}_forTable(e){for(const e of this._uninitializedTableExtensions)e._resolveTable(),e.table&&(this._tableExtensionMap.set(e.table,e),this._uninitializedTableExtensions.delete(e));if(!this._tableExtensionMap.has(e)){const t=m.create({table:e});this._tableExtensionMap.set(e,t),t._setMapExtension(this._mapExtension),this._onAdded(t)}return this._tableExtensionMap.get(e)}}class se extends E{get _collection(){let e=this._mapExtension.layerExtensions.flatten((e=>O(e)?e.layerExtensions:[]));return this._mapExtension.basemapExtension&&(e=e.concat(this._mapExtension.basemapExtension.baseLayerExtensions.toArray()).concat(this._mapExtension.basemapExtension.referenceLayerExtensions.toArray())),e=e.concat(this._mapExtension.groundExtension.layerExtensions.toArray()),e}constructor(e){super(),this._mapExtension=e}findById(e){return T("id",e).isNotMissing(),this.find((t=>t.id===e))}findByLayerId(e){return T("id",e).isNotMissing(),this.find((t=>t.layer.id===e))}forLayer(e){return T("layer",e).isNotMissing(),this.findByLayerId(e.id)}emit(e,t){if("change"===e){const i=new A;i.addMany(t.added);const s=i.flatten((e=>O(e)?e.layerExtensions:[])).toArray(),a=new A;a.addMany(t.removed);const n=a.flatten((e=>O(e)?e.layerExtensions:[])).toArray(),r=new A;r.addMany(t.moved);const o=r.flatten((e=>O(e)?e.layerExtensions:[])).toArray();super.emit(e,{added:s,removed:n,moved:o,target:this})}return super.emit(e,t)}_itemIsInitialized(e){return super._itemIsInitialized(e)&&!!e.layer}}function ae(e){if("object"!=typeof e||!e||!e.baseMap)return G(e)}function ne(e){return"object"!=typeof e||e&&!e.baseMap}function re(e,t,i){if(e?.type&&e.type!==i)throw new Error(`Invalid portal item type "${e.type}" for property ${t}.`)}
|
|
@@ -11,7 +11,7 @@ import { LayerExtension, LayerExtensionProperties, LayerProperties } from "./_La
|
|
|
11
11
|
* Properties that can be specified for the
|
|
12
12
|
* {@link MapImageLayerExtensionProperties.layer} property.
|
|
13
13
|
*/
|
|
14
|
-
export
|
|
14
|
+
export type MapImageLayerProperties = PortalMapServiceLayer & LayerProperties;
|
|
15
15
|
/**
|
|
16
16
|
* Properties that can be passed into the constructor for
|
|
17
17
|
* {@link MapImageLayerExtension}.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import{MapServiceLayer as
|
|
1
|
+
import{__decorate as e}from"tslib";import{MapServiceLayer as r}from"../portal/MapServiceLayer.js";import{serializable as a}from"../support/Serializable.js";import{isMapImageLayer as t}from"../utilities/_layers.js";import{MapImageSublayerExtension as i}from"./MapImageSublayerExtension.js";import{LayerExtension as s,LayerExtensionSchema as n}from"./_LayerExtension.js";let o=class extends s{get layer(){return super.layer}get sublayerExtensions(){return super.sublayerExtensions}get supportsSublayers(){return!0}get sublayersAreReadOnly(){const e=this.layer?.capabilities;return!e||!e.exportMap.supportsDynamicLayers}_getProjectWebmapJSON(){const e=super._getProjectWebmapJSON();if(!e||this.dynamicallyAddedLayer)return e;const{visibleLayers:a,layers:t}=r.fromEsriApiMapImageLayer(this.layer);return e.visibleLayers=a,t&&(e.layers=t.map((e=>{const{id:r,layerDefinition:a,parentLayerId:t}=e,i={id:r,parentLayerId:t},{definitionExpression:s,drawingInfo:n}=a??{};return s&&(i.layerDefinition={...i.layerDefinition,definitionExpression:s}),n&&this.layer?.capabilities?.exportMap?.supportsDynamicLayers&&(i.layerDefinition={...i.layerDefinition,drawingInfo:n}),i}))),e}_createSublayerExtension(e){return new i(e)}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"ArcGISMapServiceLayer"}}}}_isSupportedLayer(e){return t(e)}_createSchema(){return new p(this)}async _applyPortalItemProperties(e){if("Map Service"!==e.type)throw new Error(`Cannot create Map Image Layer from Portal item that has type: ${e.type}`);if(e.typeKeywords.includes("Tiled"))throw new Error("Cannot create Map Image Layer from Portal item that references Tile Map Service");const a={layerType:"ArcGISMapServiceLayer",url:e.url},t=await e.fetchData();return t?.layers&&(a.layers=t.layers),r.applyToEsriApiLayer(a,this.layer)}};o=e([a],o);export{o as MapImageLayerExtension};let p=class extends n{_getPropertyBindings(){return{spatialReference:{property:"spatialReference",readonly:!0}}}};p=e([a],p);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var
|
|
1
|
+
var e;import{__decorate as r}from"tslib";import{serializable as s}from"../support/Serializable.js";import{ArcGISSublayerExtension as a}from"./ArcGISSublayerExtension.js";let t=e=class extends a{get layerExtension(){return super.layerExtension}get sublayerExtensions(){return super.sublayerExtensions}get canChangeOpacity(){const e=this.layerExtension.layer.capabilities;return!(this.sublayerExtensions.length>0)&&e?.exportMap.supportsDynamicLayers}get canChangeRenderer(){return this.layerExtension.layer.capabilities?.exportMap.supportsDynamicLayers}get canChangeLabels(){return this.layerExtension.layer.capabilities?.exportMap.supportsDynamicLayers}async _switchSublayer(e){e.layer?.capabilities?.exportMap?.supportsDynamicLayers&&(e.labelsVisible=this.sublayer.labelsVisible),await super._switchSublayer(e)}async _onInitialize(){await super._onInitialize(),this.sublayer?.renderer&&"tile"!==this.sublayer?.layer?.type&&this.sublayer?.layer?.capabilities?.exportMap?.supportsDynamicLayers&&(this.sublayer.renderer=this.sublayer.renderer.clone())}_createSublayerExtension(r){return new e(r)}};t=e=r([s],t);export{t as MapImageSublayerExtension};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import{serializable}from"../support/Serializable.js";import{isOpenStreetMapLayer}from"../utilities/_layers.js";import{LayerExtension,LayerExtensionSchema}from"./_LayerExtension.js";let
|
|
1
|
+
import{__decorate as e}from"tslib";import{serializable as r}from"../support/Serializable.js";import{isOpenStreetMapLayer as t}from"../utilities/_layers.js";import{LayerExtension as a,LayerExtensionSchema as s}from"./_LayerExtension.js";let i=class extends a{get layer(){return super.layer}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"OpenStreetMap"}}}}_isSupportedLayer(e){return t(e)}_createSchema(){return new l(this)}};i=e([r],i);export{i as OpenStreetMapLayerExtension};let l=class extends s{_getPropertyBindings(){return{spatialReference:{property:"spatialReference",readonly:!0}}}};l=e([r],l);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import
|
|
1
|
+
import{__decorate as e}from"tslib";import t from"@arcgis/core/layers/support/CodedValueDomain";import r from"@arcgis/core/popup/ExpressionInfo";import i from"@arcgis/core/popup/FieldInfo";import{serializable as s}from"../support/Serializable.js";import{ReadOnlyCollection as a}from"../utilities/ReadOnlyCollection.js";import{isPointCloudLayer as n}from"../utilities/_layers.js";import{LayerExtension as l,LayerExtensionSchema as o}from"./_LayerExtension.js";import{ArrayWrappedCollection as p}from"./support/ArrayWrappedCollection.js";import{PopupTemplateFeatureSettings as u}from"./support/PopupTemplateFeatureSettings.js";import{addOutFields as d}from"./support/layers.js";let f=class extends l{get layer(){return super.layer}get _layerView(){return this.layer&&this.mapExtension?._allLayerViews.find((e=>e.layer===this.layer))}get hasFeatures(){return!0}get enableClientSideData(){return this._enableClientSideData}set enableClientSideData(e){this._enableClientSideData=e,this._updateClientSideFields()}get canChangeOpacity(){return!1}_getProjectWebmapJSON(){const e=super._getProjectWebmapJSON();return e&&delete e.opacity,e}async _onInitialize(){await super._onInitialize(),this._updateClientSideFields(),this._watchHandles.push(this.watch("layer",(()=>{this._updateClientSideFields()}),!0))}async _postInitialize(){await super._postInitialize(),await this._setDecodedPopupFieldInfos()}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"PointCloudLayer"}},enableClientSideData:{serializeModes:["initial"],default:!0}}}_isSupportedLayer(e){return n(e)}_createSchema(){return new m(this)}_createFeatureSettings(){return new u(this)}_updateClientSideFields(){this.layer&&this._enableClientSideData&&d(this.layer,this.featureSettings.outFields)}async _setDecodedPopupFieldInfos(){const e=this.schema.fields.find((e=>"CLASS_CODE"===e.name));if(e){const r=(await this.layer.queryCachedStatistics("CLASS_CODE"))?.labels?.labels;r&&(e.domain=new t({codedValues:r.map((e=>({code:e.value,name:e.label})))}))}if(this.featureSettings.popupTemplate.expressionInfos=this.featureSettings.popupTemplate.expressionInfos??[],this.schema.fields.some((e=>"RGB"===e.name))){this.featureSettings.popupTemplate.fieldInfos.find((e=>"RGB"===e.fieldName)).visible=!1,this.featureSettings.popupTemplate.fieldInfos.push(new i({fieldName:"expression/__gcx-rgb"})),this.featureSettings.popupTemplate.expressionInfos.push(new r({expression:"var rgb = $feature.RGB; var red = Floor(rgb/65536,0); var green = Floor((rgb-(red*65536))/256,0); var blue = rgb-(red*65536)-(green*256); return 'rgb(' + red + ',' + green + ',' + blue + ')';",name:"__gcx-rgb",returnType:"string",title:"RGB"}))}if(this.schema.fields.some((e=>"RETURNS"===e.name))){this.featureSettings.popupTemplate.fieldInfos.find((e=>"RETURNS"===e.fieldName)).visible=!1,this.featureSettings.popupTemplate.fieldInfos.push(new i({fieldName:"expression/__gcx-returns"})),this.featureSettings.popupTemplate.expressionInfos.push(new r({expression:"var returnnumber = $feature.RETURNS % 16; var numberofreturns = Floor($feature.RETURNS / 16); return returnnumber + ' / ' + numberofreturns;",name:"__gcx-returns",returnType:"string",title:"RETURNS"}))}}};f=e([s],f);export{f as PointCloudLayerExtension};let m=class extends o{constructor(e){super(e),this._fieldCollection=new a(new p({parent:e,targetProperty:"layer",arrayProperty:"fields"}))}get _fields(){return this._fieldCollection}_getPropertyBindings(){return{spatialReference:{property:"spatialReference",readonly:!0}}}};m=e([s],m);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import{SceneLayer as
|
|
1
|
+
import{__decorate as e}from"tslib";import{SceneLayer as t}from"../portal/SceneLayer.js";import{serializable as r}from"../support/Serializable.js";import{ReadOnlyCollection as i}from"../utilities/ReadOnlyCollection.js";import{isSceneLayer as a}from"../utilities/_layers.js";import{LayerExtension as s,LayerExtensionSchema as l}from"./_LayerExtension.js";import{ArrayWrappedCollection as n}from"./support/ArrayWrappedCollection.js";import{PopupTemplateFeatureSettings as o}from"./support/PopupTemplateFeatureSettings.js";import{addOutFields as p}from"./support/layers.js";let y=class extends s{get layer(){return super.layer}get enableClientSideData(){return this._enableClientSideData}set enableClientSideData(e){this._enableClientSideData=e,this._updateClientSideFields()}get renderer(){return this.layer?.renderer}get hasFeatures(){return!0}get canChangeLabels(){return!0}get _layerView(){return this.layer&&this.mapExtension?._allLayerViews.find((e=>e.layer===this.layer))}async _onInitialize(){await super._onInitialize(),this._updateClientSideFields(),this._watchHandles.push(this.watch("layer",(()=>{this._updateClientSideFields()}),!0)),this.layer.associatedLayer||this.layer.outFields||(this.layer.outFields=this.layer.fields.map((e=>e.name)),this.layer.outFields&&!this.layer.outFields.includes(this.layer.objectIdField)&&this.layer.outFields.push(this.layer.objectIdField))}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"ArcGISSceneServiceLayer"}},enableClientSideData:{serializeModes:["initial"],default:!1}}}_isSupportedLayer(e){return a(e)}_createSchema(){return new d(this)}_createFeatureSettings(){return new o(this)}async _applyPortalItemProperties(e){if("Scene Service"!==e.type)throw new Error(`Cannot create Scene Layer from Portal item that has type: ${e.type}`);if(!e.typeKeywords.includes("3DObject")&&!e.typeKeywords.includes("Point"))throw new Error("Cannot create Scene Layer from Portal item that does not reference a Scene layer");const r={layerType:"ArcGISSceneServiceLayer",url:e.url};return t.applyToEsriApiLayer(r,this.layer)}_updateClientSideFields(){this.layer&&this._enableClientSideData&&p(this.layer,this.featureSettings.outFields)}};y=e([r],y);export{y as SceneLayerExtension};let d=class extends l{constructor(e){super(e),this._fieldsCollection=new i(new n({parent:e,targetProperty:"layer",arrayProperty:"fields"}))}_getPropertyBindings(){return{spatialReference:"spatialReference"}}get _fields(){return this._fieldsCollection}};d=e([r],d);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import{Layer as
|
|
1
|
+
import{__decorate as e}from"tslib";import{Layer as r}from"../portal/Layer.js";import{StreamLayer as t}from"../portal/StreamLayer.js";import{serializable as i}from"../support/Serializable.js";import{ReadOnlyCollection as a}from"../utilities/ReadOnlyCollection.js";import{isStreamLayer as o}from"../utilities/_layers.js";import{LayerExtension as s,LayerExtensionSchema as l}from"./_LayerExtension.js";import{ArrayWrappedCollection as n}from"./support/ArrayWrappedCollection.js";import{PopupTemplateFeatureSettings as y}from"./support/PopupTemplateFeatureSettings.js";let p=class extends s{get layer(){return super.layer}get _layerView(){return this.layer&&this.mapExtension?._allLayerViews.find((e=>e.layer===this.layer))}get hasFeatures(){return!0}get renderer(){return this.layer.renderer}get canChangeLabels(){return!0}_getProjectWebmapJSON(){const e=super._getProjectWebmapJSON();if(!e||this.dynamicallyAddedLayer)return e;const{layerDefinition:r}=t.fromEsriApiStreamLayer(this.layer),{definitionExpression:i,drawingInfo:a}=r;return i&&(e.layerDefinition={...e.layerDefinition,definitionExpression:i}),a&&(e.layerDefinition={...e.layerDefinition,drawingInfo:a}),e}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"ArcGISStreamLayer"}}}}_createSchema(){return new m(this)}_isSupportedLayer(e){return o(e)}_createFeatureSettings(){return new c(this)}async _applyPortalItemProperties(e){if("Stream Service"!==e.type)throw new Error(`Cannot create Stream Layer from Portal item that has type: ${e.type}`);const i={layerType:"ArcGISStreamLayer",url:e.url};await t.applyToEsriApiLayer(i,this.layer);const a=await e.fetchData();a&&Object.keys(a).length>0&&await r.applyToEsriApiLayer(a,this.layer)}};p=e([i],p);export{p as StreamLayerExtension};let m=class extends l{constructor(e){super(e),this._fieldCollection=this._createFieldCollection()}get _fields(){return this._fieldCollection}_createFieldCollection(){return new a(new n({parent:this._layerExtension,targetProperty:"layer",arrayProperty:"fields"}))}_getPropertyBindings(){return{primaryKeyField:"objectIdField",geometryType:"geometryType",spatialReference:"spatialReference",displayField:"displayField"}}};m=e([i],m);export{m as StreamLayerSchema};let c=class extends y{get zoomScale(){const e="point"===this._layerExtension.schema.geometryType?this._layerExtension.layer.maxScale:void 0;return this._getSetting("zoomScale",e)}set zoomScale(e){this._setSetting("zoomScale",e)}};c=e([i],c);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{SublayerExtension,SublayerSchema,SubSublayerExtensionCollection,getSublayerType}from"./_SublayerExtension.js";import{DefaultSublayerExtensionFactory}from"./support/DefaultSublayerExtensionFactory.js";
|
|
1
|
+
import{SublayerExtension as o,SublayerSchema as r,SubSublayerExtensionCollection as t,getSublayerType as e}from"./_SublayerExtension.js";import{DefaultSublayerExtensionFactory as a}from"./support/DefaultSublayerExtensionFactory.js";o.factory=a.instance;export{o as SublayerExtension,r as SublayerSchema,t as SubSublayerExtensionCollection,e as getSublayerType};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import
|
|
1
|
+
import{__decorate as e}from"tslib";import t from"@arcgis/core/layers/support/FeatureType.js";import r from"@arcgis/core/rest/support/AttachmentQuery";import{toAttachment as a}from"../data/Attachment.js";import{toGraphic as s}from"../data/Feature.js";import{FeatureSaveError as i}from"../data/FeatureSaveError.js";import{addAttachment as l,deleteAttachments as o,supportsAttachmentEditing as n}from"../data/support/attachments.js";import{SubtypeGroupLayer as p}from"../portal/SubtypeGroupLayer.js";import{SubtypeSublayer as u}from"../portal/SubtypeSublayer.js";import{Template as y}from"../portal/Template.js";import{cancelify as d}from"../support/Cancellable.js";import{serializable as c}from"../support/Serializable.js";import{ArcGISRelationshipCollection as h}from"../support/_ArcGISRelationshipCollection.js";import{executeQuery as m}from"../support/_query.js";import{ReadOnlyCollection as f}from"../utilities/ReadOnlyCollection.js";import{isFeatureLayer as b,isSubtypeGroupLayer as _}from"../utilities/_layers.js";import{parse as g}from"../utilities/number.js";import{ArrayWrappedCollection as w}from"./LayerExtension.js";import{SubtypeSublayerExtension as F}from"./SubtypeSublayerExtension.js";import{LayerExtension as E,LayerExtensionReadOnlySchema as S}from"./_LayerExtension.js";import{addOutFields as C,getGlobalIdField as j,isGlobalIdUsed as x}from"./support/layers.js";let I=class extends E{get enableClientSideData(){return this._enableClientSideData}set enableClientSideData(e){this._enableClientSideData=e,this._updateClientSideFields()}get layer(){return super.layer}get sublayerExtensions(){return super.sublayerExtensions}get supportsSublayers(){return!0}get sublayersAreReadOnly(){return!1}get hasFeatures(){return!0}get _layerView(){return this.layer&&this.mapExtension?._allLayerViews.find((e=>e.layer===this.layer))}_getProjectWebmapJSON(){const e=super._getProjectWebmapJSON();return!e||this.dynamicallyAddedLayer||(e.layers=this.sublayerExtensions.toArray().map((e=>{const{layerDefinition:t,visibility:r,subtypeCode:a,layerType:s}=u.fromEsriApiSubtypeSublayer(e.sublayer),i={layerType:s,visibility:r,subtypeCode:a};return t?.drawingInfo&&(i.layerDefinition={drawingInfo:t.drawingInfo}),i}))),e}_createRelationships(){return new SubtypeGroupLayerRelationshipCollection(this)}async _onInitialize(){await super._onInitialize(),await this.relationships.initialize();const e=this.layer.sourceJSON?.templates?.map((e=>y.toEsriApiFeatureTemplate(e)));if(this.sublayerExtensions.filter((e=>!!e.sublayer)).forEach((t=>{let r=e;1!==e.length||1===this.sublayerExtensions.length||t.sublayer.templates?function(e){return 1===e.sublayer.templates.length&&"New Feature"===e.sublayer.templates[0].name}(t)&&(t.sublayer.templates[0].name=t.sublayer.title):(r=e.map((e=>{const r=y.toEsriApiFeatureTemplate(y.fromEsriApiFeatureTemplate(e));r.name=t.title;const a=r.prototype?.attributes;return"number"==typeof a?.[this.layer.subtypeField]&&(a[this.layer.subtypeField]=t.sublayer.subtypeCode),r})),t.sublayer.templates=r)})),this.layer.subtypes){this._subtypes=this.layer.subtypes.map((e=>new t({id:e.code,name:e.name,domains:e.domains??{},templates:this.sublayerExtensions.map((e=>e.sublayer)).find((t=>t.subtypeCode===e.code)).templates})));for(const e of this._subtypes)for(const[t,r]of Object.entries(e.domains)){const e=this.layer.fields.find((e=>e.name===t));e&&!e.domain&&(e.domain=r)}}}async _postInitialize(){await super._postInitialize(),this._updateClientSideFields(),this._watchHandles.push(this.watch("layer",(()=>{this._updateClientSideFields()}),!0))}_capabilities(){const e=n(this.layer);return this.layer?.capabilities?.operations?{...this.layer.capabilities.operations,supportsAttachmentEditing:e}:{...super._capabilities(),supportsAttachmentEditing:e}}_createSublayerExtension(e){return new F(e)}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"SubtypeGroupLayer"}},enableClientSideData:{serializeModes:["initial"],default:!1},attachmentTypes:["initial"]}}_isSupportedLayer(e){return _(e)}_createSchema(){return new A(this)}async _getAttachments(e){if(!this.layer?.capabilities?.data?.supportsAttachment)return[];const t=+e.primaryKey,s=new r({objectIds:[t]}),i=await this.layer.queryAttachments(s);return i?.[t]?.length?i[t].map((e=>a(e,e.url))):[]}async _addAttachment(e,t){return l(e,this.layer,t,{attachmentTypes:this.attachmentTypes})}async _deleteAttachments(e,t){return o(e,this.layer,t)}async _applyPortalItemProperties(e){if("Feature Service"!==e.type)throw new Error(`Cannot create SubtypeGroupLayer from Portal item that has type: ${e.type}`);const t={layerType:"SubtypeGroupLayer"};let{url:r}=e;r.match(".*MapServer/\\d{1,}/?$")||r.match(".*FeatureServer/\\d{1,}/?$")||(r=`${r}/0`),t.url=r,await p.applyToEsriApiLayer(t,this.layer);const a=await e.fetchData();a&&await p.applyToEsriApiLayer(a,this.layer)}_getFeatures(e,t){if(!this.layer)return super._getFeatures(e,t);const r=this.layer.createQuery();return r.objectIds=e.map((e=>g(e))),r.where=void 0,r.outFields=t.outFields,r.returnGeometry=t.returnGeometry,m(r,this,this.layer,t.cancelToken)}async _addFeatures(e,t){const r=Array.from(e);if(0===r.length||!this.layer)return;const a=await this._applyEdits({addFeatures:r.map(s)},t);if(!a.addFeatureResults||a.addFeatureResults.length!==r.length)throw new i("Received malformed response from server while saving feature(s).");let l;if(a.addFeatureResults.forEach(((e,t)=>{const{objectId:a,globalId:s,error:o}=e,n=r[t];if(o){l=l||new i("Errors encountered when adding features.");const{title:r}=n;l.errors.set(`${r}-${t}`,new Error(`Failed to add feature '${r}'. ${e.error.name} : ${e.error.message}`))}else{const{primaryKeyField:e}=n.schema;n.attributes.set(e,a);const t=j(this.layer);t&&s&&n.attributes.set(t,s)}})),l)throw l}async _updateFeatures(e,t){const r=Array.from(e);if(0===r.length)return;const a=await this._applyEdits({updateFeatures:Array.from(e).map(s)},t);if(!a.updateFeatureResults||a.updateFeatureResults.length!==r.length)throw new i("Received malformed response from server while saving feature(s).");let l;if(a.updateFeatureResults.forEach(((e,t)=>{if(e.error){l=l||new i("Errors encountered when updating features.");const{primaryKey:a}=r[t];l.errors.set(a,new Error(`Failed to update feature with id ${a}. ${e.error.name} : ${e.error.message}`))}})),l)throw l}async _deleteFeatures(e,t){if(0===e.length)return;const r=await this._applyEdits({deleteFeatures:e.map((e=>({objectId:e})))},t);if(!r.deleteFeatureResults)throw new i("Received malformed response from server while saving feature(s).");let a;if(r.deleteFeatureResults.forEach(((t,r)=>{if(t.error){a=a||new i("Errors encountered when deleting features.");const s=e[r];a.errors.set(s,new Error(`Failed to delete feature with id ${s}. ${t.error.name} : ${t.error.message}`))}})),a)throw a}async _applyEdits(e,t={}){const r=x(this.layer,e),a=this.layer.applyEdits(e,{globalIdUsed:r}),s=await d(a,t.cancelToken);if(!s)throw new i("Received malformed response from server while saving feature(s).");return s}_updateClientSideFields(){this.layer&&this._enableClientSideData&&(C(this.layer,this.featureSettings.outFields),this.allSublayerExtensions.forEach((e=>C(this.layer,e.featureSettings.outFields))))}};I=e([c],I);export{I as SubtypeGroupLayerExtension};let A=class extends S{constructor(e){super(e),this._fieldCollection=this._createFieldCollection(),this._typesCollection=this._createTypesCollection()}get types(){return this._typesCollection}get _types(){return this._typesCollection}get _fields(){return this._fieldCollection}_createFieldCollection(){return new f(new w({parent:this._layerExtension,targetProperty:"layer",arrayProperty:"fields"}))}_createTypesCollection(){return new f(new w({parent:this._layerExtension,arrayProperty:"_subtypes"}))}_getPropertyBindings(){return{primaryKeyField:"objectIdField",geometryType:"geometryType",spatialReference:"spatialReference",displayField:"displayField",typeIdField:"subtypeField"}}};A=e([c],A);export{A as SubtypeGroupLayerSchema};export class SubtypeGroupLayerRelationshipCollection extends h{get _sourceUrl(){const e=this._source.layer;if(e)return`${e.url}/${e.layerId}`}get _sourceLayerId(){return this._source.layer?.layerId}_findRelatedSource(e){if(!this._source.mapExtension||!this._source.layer||!this._sourceUrl)return;const t=this._sourceUrl.slice(0,this._sourceUrl.length-`${this._sourceLayerId}`.length-1),r=this._source.mapExtension.allLayerExtensions.initializedItems.find((r=>(b(r.layer)||_(r.layer))&&r.layer.url===t&&r.layer.layerId===e));return r||this._source.mapExtension.tableExtensions.initializedItems.find((r=>b(r.table)&&r.table.url===t&&r.table.layerId===e))}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import
|
|
1
|
+
import{__decorate as e}from"tslib";import t from"@arcgis/core/rest/support/AttachmentQuery";import{InvalidOperationError as r}from"../InvalidOperationError.js";import{toAttachment as s}from"../data/Attachment.js";import{toGraphic as a}from"../data/Feature.js";import{FeatureSaveError as i}from"../data/FeatureSaveError.js";import{addAttachment as n,deleteAttachments as l}from"../data/support/attachments.js";import{Layer as o}from"../portal/Layer.js";import{cancelify as u}from"../support/Cancellable.js";import{serializable as y}from"../support/Serializable.js";import{ArcGISRelationshipCollection as p}from"../support/_ArcGISRelationshipCollection.js";import{executeQuery as d}from"../support/_query.js";import{Collection as c}from"../support/esri.js";import{ReadOnlyCollection as h}from"../utilities/ReadOnlyCollection.js";import{isFeatureLayer as m,isSubtypeGroupLayer as b,isSubtypeSublayer as f}from"../utilities/layers.js";import{parse as _}from"../utilities/number.js";import{SublayerExtension as g,SublayerSchema as w}from"./_SublayerExtension.js";import{ArrayWrappedCollection as E}from"./support/ArrayWrappedCollection.js";import{ExtensionBaseLayerListSettings as F}from"./support/LayerListSettings.js";import{PopupTemplateFeatureSettings as x}from"./support/PopupTemplateFeatureSettings.js";import{getGlobalIdField as S,isGlobalIdUsed as I}from"./support/layers.js";let j=class extends g{get supportsSublayers(){return!1}get layerExtension(){return super.layerExtension}get renderer(){return this.sublayer?.renderer}get hasFeatures(){return!0}get sublayer(){return super.sublayer}get sublayerExtensions(){return super.sublayerExtensions}get attachmentTypes(){return this.layerExtension?.attachmentTypes}get canChangeRenderer(){return!0}get canChangeOpacity(){return!1}async _addAttachment(e,t){return n(e,this.sublayer.layer,t,{attachmentTypes:this.layerExtension?.attachmentTypes})}async _deleteAttachments(e,t){return l(e,this.sublayer.layer,t)}_isSupportedSublayer(e){return f(e)}_createLayerListSettings(e){return new v(e,this)}_createFeatureSettings(){return new T(this)}_createSublayer(e){return o.toEsriApiSublayer(e,"SubtypeGroupLayer")}_createSchema(){return new R(this)}_createRelationships(){return new SubtypeSublayerRelationshipCollection(this)}async _applySublayerProperties(e,t){return o.applyToEsriApiSublayer(e,t)}_capabilities(){return this.layerExtension?.capabilities}async _onInitialize(){await super._onInitialize(),await this.relationships.initialize(),this._watchHandles.push(this.watch("layerExtension.attachmentTypes",(()=>this.notifyChange("attachmentTypes"))))}async _postInitialize(){await super._postInitialize(),this.layerListSettings.onLayerExtensionInitialized()}_getFeatures(e,t){if(!this.sublayer?.layer)return super._getFeatures(e,t);const r=this.sublayer?.layer.createQuery();return r.objectIds=e.map((e=>_(e))),r.where=void 0,r.outFields=t.outFields,r.returnGeometry=t.returnGeometry,d(r,this,this.sublayer.layer,t.cancelToken)}async _getAttachments(e){if(!this.sublayer?.layer?.capabilities?.data?.supportsAttachment)return[];const r=+e.primaryKey,a=new t({objectIds:[r]}),i=await this.sublayer.layer.queryAttachments(a);return i?.[r]?.length?i[r].map((e=>s(e,e.url))):[]}async _addFeatures(e,t){const r=Array.from(e);if(0===r.length||!this.sublayer?.layer)return;const s=await this._applyEdits({addFeatures:r.map(a)},t);if(!s.addFeatureResults||s.addFeatureResults.length!==r.length)throw new i("Received malformed response from server while saving feature(s).");let n;if(s.addFeatureResults.forEach(((e,t)=>{const{objectId:s,globalId:a,error:l}=e,o=r[t];if(l){n=n||new i("Errors encountered when adding features.");const{title:r}=o;n.errors.set(`${r}-${t}`,new Error(`Failed to add feature '${r}'. ${e.error.name} : ${e.error.message}`))}else{const{primaryKeyField:e}=o.schema;o.attributes.set(e,s);const t=S(this.sublayer.layer);t&&a&&o.attributes.set(t,a)}})),n)throw n}async _updateFeatures(e,t){const r=Array.from(e);if(0===r.length)return;const s=await this._applyEdits({updateFeatures:Array.from(e).map(a)},t);if(!s.updateFeatureResults||s.updateFeatureResults.length!==r.length)throw new i("Received malformed response from server while saving feature(s).");let n;if(s.updateFeatureResults.forEach(((e,t)=>{if(e.error){n=n||new i("Errors encountered when updating features.");const{primaryKey:s}=r[t];n.errors.set(s,new Error(`Failed to update feature with id ${s}. ${e.error.name} : ${e.error.message}`))}})),n)throw n}async _deleteFeatures(e,t){if(0===e.length)return;const r=await this._applyEdits({deleteFeatures:e.map((e=>({objectId:e})))},t);if(!r.deleteFeatureResults)throw new i("Received malformed response from server while saving feature(s).");let s;if(r.deleteFeatureResults.forEach(((t,r)=>{if(t.error){s=s||new i("Errors encountered when deleting features.");const a=e[r];s.errors.set(a,new Error(`Failed to delete feature with id ${a}. ${t.error.name} : ${t.error.message}`))}})),s)throw s}_serializeSublayer(e){return o.fromEsriApiSublayer(e)}async _applyEdits(e,t={}){const r=I(this.sublayer.layer,e),s=this.sublayer.layer.applyEdits(e,{globalIdUsed:r}),a=await u(s,t.cancelToken);if(!a)throw new i("Received malformed response from server while saving feature(s).");return a}};j=e([y],j);export{j as SubtypeSublayerExtension};const C="This schema property is read-only.";let R=class extends w{get primaryKeyField(){return this._sublayerExtension.sublayer?.layer?.objectIdField}set primaryKeyField(e){throw new r(C)}get geometryType(){return this._sublayerExtension.sublayer?.layer?.geometryType}set geometryType(e){throw new r(C)}get displayField(){return this._sublayerExtension.sublayer?.layer?.displayField}set displayField(e){throw new r(C)}get typeIdField(){return this._sublayerExtension.sublayer?.layer?.subtypeField}set typeIdField(e){throw new r(C)}get types(){return this._readonlyTypesCollection}constructor(e){super(e),this._fieldCollection=this._createFieldCollection(),this._typesCollection=new c,this._readonlyTypesCollection=new h(this._typesCollection);const t=()=>this._sublayerExtension.sublayer?.subtypeCode,r=()=>{const e=this._sublayerExtension.layerExtension?._subtypes?.find((e=>e.id===t()));return!!e&&(this._typesCollection.add(e),!0)};if(this._sublayerExtension.layerExtension?._subtypes?.some((e=>e.id===t())))r();else{const e=this._sublayerExtension.watch("layerExtension._subtypes",(()=>{r()&&e.remove()}),!0)}}get _fields(){return this._fieldCollection}_createFieldCollection(){return new h(new E({parent:this._sublayerExtension,targetProperty:"sublayer",arrayProperty:"layer.fields"}))}_getPropertyBindings(){return{primaryKeyField:"layer.objectIdField",geometryType:"layer.geometryType",spatialReference:"layer.spatialReference",displayField:"layer.displayField",typeIdField:"layer.typeIdField"}}};R=e([y],R);export{R as SubtypeSublayerSchema};let T=class extends x{get zoomScale(){const e="point"===this._layerExtension.schema.geometryType?this._layerExtension.sublayer.maxScale:void 0;return this._getSetting("zoomScale",e)}set zoomScale(e){this._setSetting("zoomScale",e)}};T=e([y],T);let v=class extends F{get _layerSupportsHideChildren(){return!1}get _esriLayer(){return this._extension.sublayer}get _listModePath(){return"sublayer.listMode"}get _supportsChildren(){return!1}};v=e([y],v);export class SubtypeSublayerRelationshipCollection extends p{get _sourceUrl(){const e=this._source.sublayer?.layer;if(e)return`${e.url}/${e.layerId}`}get _sourceLayerId(){const e=this._source.sublayer?.layer;return e?.layerId}_findRelatedSource(e){if(!this._source.layerExtension?.mapExtension||!this._source.sublayer||!this._sourceUrl)return;const t=this._sourceUrl.slice(0,this._sourceUrl.length-`${this._sourceLayerId}`.length-1),r=this._source.layerExtension.mapExtension.allLayerExtensions.initializedItems.find((r=>(m(r.layer)||b(r.layer))&&r.layer.url===t&&r.layer.layerId===e));return r||this._source.layerExtension.mapExtension.tableExtensions.initializedItems.find((r=>m(r.table)&&r.table.url===t&&r.table.layerId===e))}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import{InvalidOperationError}from"../InvalidOperationError.js";import{LayerBase as
|
|
1
|
+
import{__decorate as e}from"tslib";import{InvalidOperationError as r}from"../InvalidOperationError.js";import{LayerBase as t}from"../portal/LayerBase.js";import{TiledMapServiceLayer as a}from"../portal/TiledMapServiceLayer.js";import{ERR_LAYER_TYPE_MISMATCH as i}from"../portal/_layerHelper.js";import{DefaultArcGISRequestHelper as s}from"../support/ArcGISRequestHelper.js";import{serializable as o}from"../support/Serializable.js";import{isTileLayer as l}from"../utilities/_layers.js";import{checkArg as n}from"../utilities/checkArg.js";import{TileSublayerExtension as p}from"./TileSublayerExtension.js";import{LayerExtension as y,LayerExtensionLayerListSettings as c,LayerExtensionSchema as m}from"./_LayerExtension.js";let u=class extends y{get layer(){return super.layer}get supportsSublayers(){return!0}_createSublayerExtension(e){return new p(e)}_applyLayerProperties(e,r){n("layerJson",e).isNotMissing();const a=e.layerType||e.type;return n("layerJson.layerType",a).satisfies((e=>!e||"ArcGISTiledMapServiceLayer"===e),i),n("layer",r).isNotMissing().satisfies((e=>this._isSupportedLayer(e)),i),t.applyToEsriApiLayer(e,r)}_createLayerListSettings(e){return new c(e,this,!1)}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"ArcGISTiledMapServiceLayer"}}}}_isSupportedLayer(e){return l(e)}_createSchema(){return new f(this)}async _initializeLayer(){if(await super._initializeLayer(),!this.layer.url)throw new r("Tile layer must have a URL.")}async _onInitialize(){if(await super._onInitialize(),!this.layer.tileInfo)throw new Error(`The layer at URL "${this.layer.url}" is not a tile layer or does not have a tiling scheme defined.`)}async _applyPortalItemProperties(e){if("Map Service"!==e.type)throw new Error(`Cannot create Tile Layer from Portal item that has type: ${e.type}`);const r=await y._getLayerData(e.url,new s);if("Elevation"===r.cacheType)throw new Error("Cannot create Tile Layer from Portal item that references an Elevation layer");if(!r.tileInfo)throw new Error("Cannot create Tile Layer from Portal item that does not reference a tiled map service");const t={layerType:"ArcGISTiledMapServiceLayer",url:e.url};await a.applyToEsriApiLayer(t,this.layer)}};u=e([o],u);export{u as TileLayerExtension};let f=class extends m{_getPropertyBindings(){return{spatialReference:{property:"spatialReference",readonly:!0}}}};f=e([o],f);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var
|
|
1
|
+
var e;import{__decorate as i}from"tslib";import{serializable as t}from"../support/Serializable.js";import{getLogger as r}from"../utilities/log.js";import{ArcGISSublayerExtension as s}from"./ArcGISSublayerExtension.js";const n=r("TileSublayerExtension");let o=e=class extends s{get layerExtension(){return super.layerExtension}get sublayerExtensions(){return super.sublayerExtensions}get canToggleVisibility(){return!1}get canChangeOpacity(){return!1}get canChangeScale(){return!1}_createSublayerExtension(i){return new e(i)}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,visibilityMode:{...this._toPropertyDef(e.visibilityMode),serialize:()=>"inherited",deserialize:e=>{"inherited"!==e&&n.error(`SublayerExtension (id: ${this.id}, title: ${this.title}) visibilityMode cannot be set to ${e}.`)},default:"inherited"}}}};o=e=i([t],o);export{o as TileSublayerExtension};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import{serializable}from"../support/Serializable.js";import{LayerExtension}from"./_LayerExtension.js";let
|
|
1
|
+
import{__decorate as e}from"tslib";import{serializable as r}from"../support/Serializable.js";import{LayerExtension as t}from"./_LayerExtension.js";let a=class extends t{_isSupportedLayer(e){return!0}get dynamicallyAddedLayer(){return!0}set dynamicallyAddedLayer(e){}};a=e([r],a);export{a as UnsupportedLayerExtension};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import{InvalidOperationError}from"../InvalidOperationError.js";import{VectorTileLayer as
|
|
1
|
+
import{__decorate as e}from"tslib";import{InvalidOperationError as r}from"../InvalidOperationError.js";import{VectorTileLayer as t}from"../portal/VectorTileLayer.js";import{serializable as a}from"../support/Serializable.js";import{isVectorTileLayer as i}from"../utilities/_layers.js";import{LayerExtension as l,LayerExtensionSchema as o}from"./_LayerExtension.js";let s=class extends l{get layer(){return super.layer}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"VectorTileLayer"}}}}_isSupportedLayer(e){return i(e)}_createSchema(){return new y(this)}async _initializeLayer(){if(await super._initializeLayer(),!this.layer.url)throw new r("Vector tile layer must have a URL.")}async _onInitialize(){if(await super._onInitialize(),!this.layer.tileInfo)throw new Error(`The layer at URL "${this.layer.url}" is not a vector tile layer or does not have a tiling scheme defined.`)}async _applyPortalItemProperties(e){if("Vector Tile Service"!==e.type)throw new Error(`Cannot create Vector Tiled Layer from Portal item that has type: ${e.type}`);let r=`${e.itemUrl}/resources/styles/root.json`;try{await this.requestHelper.request(r,{query:{f:"json"}})}catch(t){r=e.url}const a={layerType:"VectorTileLayer",styleUrl:r};return t.applyToEsriApiLayer(a,this.layer)}};s=e([a],s);export{s as VectorTileLayerExtension};let y=class extends o{_getPropertyBindings(){return{spatialReference:{property:"spatialReference",readonly:!0,sync:!1}}}};y=e([a],y);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import{InvalidOperationError}from"../InvalidOperationError.js";import{WMSLayer as
|
|
1
|
+
import{__decorate as e}from"tslib";import{InvalidOperationError as r}from"../InvalidOperationError.js";import{WMSLayer as t}from"../portal/WMSLayer.js";import{serializable as s}from"../support/Serializable.js";import{isWMSLayer as i}from"../utilities/_layers.js";import{checkArg as a}from"../utilities/checkArg.js";import{WMSSublayerExtension as o}from"./WMSSublayerExtension.js";import{LayerExtension as l}from"./_LayerExtension.js";import{WfsCapabilities as n}from"./support/WfsCapabilities.js";import{SublayerExtensionCollectionBase as y}from"./support/_SublayerExtensionCollection.js";const p="SublayerExtension collection for WMSLayerExtension is readonly";let u=class extends l{get layer(){return super.layer}get sublayerExtensions(){return super.sublayerExtensions}get supportsSublayers(){return!0}get wfsUrl(){return this._wfsUrl}set wfsUrl(e){this._wfsUrl=e,this.wfsCapabilities=new n({url:this._wfsUrl})}_createSublayerExtension(e){return new o(e)}_getProjectWebmapJSON(){const e=super._getProjectWebmapJSON();if(!e||this.dynamicallyAddedLayer)return e;const{visibleLayers:r}=t.fromEsriApiLayer(this.layer);return e.visibleLayers=r,e}async _onInitialize(){await super._onInitialize(),this._deferredSublayerProperties&&(this.assignProperties({layer:{layerType:"WMS",layers:this._deferredSublayerProperties}}),this._deferredSublayerProperties=void 0)}_isSupportedLayer(e){return i(e)}_createSublayerExtensionCollection(){return new f(this)}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,wfsUrl:"initial",layer:{...this._toPropertyDef(e.layer),default:{layerType:"WMS"},deserialize:r=>{if(this._toPropertyDef(e.layer).deserialize(r),r&&!i(r)&&r.layers&&!this.layer?.sublayers){this._deferredSublayerProperties=this._deferredSublayerProperties||[];for(const e of r.layers){const r=this._deferredSublayerProperties.findIndex((r=>r.name===e.name));r>=0?this._deferredSublayerProperties[r]={...this._deferredSublayerProperties[r],...e}:this._deferredSublayerProperties.push({...e})}}}}}}async _applyPortalItemProperties(e){if("WMS"!==e.type)throw new Error(`Cannot create WMS layer from Portal item that has type: ${e.type}`);const r={layerType:"WMS",...await e.fetchData()};return t.applyToEsriApiLayer(r,this.layer)}};u=e([s],u);export{u as WMSLayerExtension};class f extends y{constructor(e){super(e,"layer.sublayers"),this._layerExtension=e}add(e,t){if(a("sublayerX",e).isNotMissing(),e.sublayer&&this._parent.layer.sublayers&&!this._parent.layer.sublayers.includes(e.sublayer))throw new r(p);return super.add(e,t)}removeAt(e){throw new r(p)}reorder(e,t){throw new r(p)}reverse(){throw new r(p)}sort(e){throw new r(p)}splice(e,t,...s){throw new r(p)}_createSublayerExtension(e){return this._parent._createSublayerExtension(e)}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var
|
|
1
|
+
var e;import{__decorate as r}from"tslib";import{InvalidOperationError as t}from"../InvalidOperationError.js";import{WMSSublayer as s}from"../portal/WMSSublayer.js";import{serializable as n}from"../support/Serializable.js";import{isWMSSublayer as a}from"../utilities/_layers.js";import{checkArg as i}from"../utilities/checkArg.js";import{SublayerExtension as l,SubSublayerExtensionCollection as u}from"./_SublayerExtension.js";const o="SublayerExtension collection for WMSLayerExtension is readonly";let y=e=class extends l{get sublayer(){return super.sublayer}get sublayerExtensions(){return super.sublayerExtensions}get layerExtension(){return super.layerExtension}get supportsSublayers(){return!0}get effectiveFullExtent(){return this.sublayer?this.sublayer.fullExtent:this.parentSublayerExtension?this.parentSublayerExtension.effectiveFullExtent:this.layerExtension?this.layerExtension.effectiveFullExtent:void 0}get hasFeatures(){return!0}get canChangeOpacity(){return!1}_createSublayerExtension(r){return new e(r)}_isSupportedSublayer(e){return a(e)}_createSublayer(e){return s.toEsriApiWMSSublayer({...e})}async _applySublayerProperties(e,r){return s.applyToEsriApiWMSSublayer(e,r)}_serializeSublayer(e){return s.fromEsriApiWMSSublayer(e)}_createSublayerExtensionCollection(){return new p(this)}};y=e=r([n],y);export{y as WMSSublayerExtension};class p extends u{add(e,r){if(i("sublayerX",e).isNotMissing(),e.sublayer&&this._parent.sublayer.sublayers&&!this._parent.sublayer.sublayers.includes(e.sublayer))throw new t(o);return super.add(e,r)}removeAt(e){throw new t(o)}reorder(e,r){throw new t(o)}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import{InvalidOperationError}from"../InvalidOperationError.js";import{WebTileLayer as
|
|
1
|
+
import{__decorate as e}from"tslib";import{InvalidOperationError as r}from"../InvalidOperationError.js";import{WebTileLayer as t}from"../portal/WebTileLayer.js";import{serializable as i}from"../support/Serializable.js";import{isWMTSLayer as a}from"../utilities/_layers.js";import{checkArg as s}from"../utilities/checkArg.js";import{getLogger as o}from"../utilities/log.js";import{WMTSSublayerExtension as n}from"./WMTSSublayerExtension.js";import{LayerExtension as l,LayerExtensionLayerListSettings as y}from"./_LayerExtension.js";import{SublayerExtensionCollectionBase as p}from"./support/_SublayerExtensionCollection.js";const u=o("WMTSLayerExtension"),h="SublayerExtension collection for WMTSLayerExtension is readonly";let c=class extends l{get supportsSublayers(){return!0}get layer(){return super.layer}get sublayerExtensions(){return super.sublayerExtensions}get _layerSupportsHideChildren(){return!1}_createSublayerExtension(e){return new n(e)}toJSON(e="all"){const r=super.toJSON(e);return r.layer.$ref&&(r.layer.wmtsInfo={}),r}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"WebTiledLayer",wmtsInfo:{}}}}}_createLayerListSettings(e){return new y(e,this,!1)}async _onInitialize(){try{await super._onInitialize()}catch(e){if("RESTful"!==this.layer.serviceMode)throw e;{u.warn(`WMTS Layer '${this.id}' failed to load with the 'RESTful' service mode. Now attempting to load the layer with the 'KVP' service mode...`);const{fromEsriApiLayer:e,toEsriApiLayer:r}=t,i=this.layer;await this._switchLayer(await r(e(i))),this.mapExtension?.map?.layers.remove(i),this.layer.serviceMode="KVP",this.mapExtension?.map?.layers.add(this.layer),await super._onInitialize()}}this.layer.watch("activeLayer",(e=>{this.layer.title=e.title,this.notifyChange("title")}),!0)}_isSupportedLayer(e){return a(e)}_createSublayerExtensionCollection(){return new m(this)}async _applyPortalItemProperties(e){if("WMTS"!==e.type)throw new Error(`Cannot create WMTS layer from Portal item that has type: ${e.type}`);const r={layerType:"WebTiledLayer",...await e.fetchData()};return t.applyToEsriApiLayer(r,this.layer)}};c=e([i],c);export{c as WMTSLayerExtension};class m extends p{constructor(e){super(e,"layer.sublayers"),this._layerExtension=e}add(e,t){if(s("sublayerX",e).isNotMissing(),e.sublayer&&this._parent.layer.sublayers&&!this._parent.layer.sublayers.includes(e.sublayer))throw new r(h);return super.add(e,t)}removeAt(e){throw new r(h)}reorder(e,t){throw new r(h)}reverse(){throw new r(h)}sort(e){throw new r(h)}splice(e,t,...i){throw new r(h)}_createSublayerExtension(e){return this._parent._createSublayerExtension(e)}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import{InvalidOperationError}from"../InvalidOperationError.js";import{serializable}from"../support/Serializable.js";import{isWMTSSublayer}from"../utilities/_layers.js";import{getLogger}from"../utilities/log.js";import{SublayerExtension}from"./_SublayerExtension.js";const
|
|
1
|
+
import{__decorate as e}from"tslib";import{InvalidOperationError as t}from"../InvalidOperationError.js";import{serializable as r}from"../support/Serializable.js";import{isWMTSSublayer as i}from"../utilities/_layers.js";import{getLogger as s}from"../utilities/log.js";import{SublayerExtension as l}from"./_SublayerExtension.js";const n=s("WMTSSublayerExtension"),a="WMTS sublayers cannot be created or configured from JSON. They must be created with an ESRI WMTSSublayer object.";let o=class extends l{get sublayer(){return super.sublayer}get layerExtension(){return super.layerExtension}get canToggleVisibility(){return!1}get canChangeOpacity(){return!1}get canChangeScale(){return!1}get effectiveFullExtent(){return this.sublayer?this.sublayer.fullExtent:this.parentSublayerExtension?this.parentSublayerExtension.effectiveFullExtent:this.layerExtension?this.layerExtension.effectiveFullExtent:void 0}constructor(e){if(super(e),!this.sublayer&&!this._deferredSublayerProperties?.$ref)throw new t(a)}_isSupportedSublayer(e){return i(e)}_createSublayer(e){throw new t(a)}async _applySublayerProperties(e,t){}_serializeSublayer(e){return this._createSublayerRef()}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,visibilityMode:{...this._toPropertyDef(e.visibilityMode),serialize:()=>"inherited",deserialize:e=>{"inherited"!==e&&n.error(`SublayerExtension (id: ${this.id}, title: ${this.title}) visibilityMode cannot be set to ${e}.`)},default:"inherited"}}}};o=e([r],o);export{o as WMTSSublayerExtension};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import{serializable}from"../support/Serializable.js";import{isWebTileLayer}from"../utilities/_layers.js";import{LayerExtension,LayerExtensionSchema}from"./_LayerExtension.js";let
|
|
1
|
+
import{__decorate as e}from"tslib";import{serializable as r}from"../support/Serializable.js";import{isWebTileLayer as t}from"../utilities/_layers.js";import{LayerExtension as a,LayerExtensionSchema as i}from"./_LayerExtension.js";let s=class extends a{get layer(){return super.layer}_getSerializableProperties(){const e=super._getSerializableProperties();return{...e,layer:{...this._toPropertyDef(e.layer),default:{layerType:"WebTiledLayer"}}}}_isSupportedLayer(e){return t(e)}_createSchema(){return new l(this)}};s=e([r],s);export{s as WebTileLayerExtension};let l=class extends i{_getPropertyBindings(){return{spatialReference:{property:"spatialReference",readonly:!0}}}};l=e([r],l);
|
|
@@ -417,7 +417,7 @@ export declare abstract class LayerExtension<TProperties extends LayerExtensionP
|
|
|
417
417
|
/**
|
|
418
418
|
* Represents a binding between a schema setting and a Layer property.
|
|
419
419
|
*/
|
|
420
|
-
export
|
|
420
|
+
export type LayerExtensionSchemaPropertyBinding = string | {
|
|
421
421
|
/**
|
|
422
422
|
* Value that will always be return for this binding.
|
|
423
423
|
*/
|