PortalBasemapsSource
require(["esri/widgets/BasemapGallery/support/PortalBasemapsSource"], function(PortalBasemapsSource) { /* code goes here */ });
esri/widgets/BasemapGallery/support/PortalBasemapsSource
The PortalBasemapsSource class is a Portal-driven Basemap source in the BasemapGalleryViewModel or BasemapGallery widget.
Constructors
- new PortalBasemapsSource(properties)
- Parameter:properties Objectoptional
See the properties for a list of all the properties that may be passed into the constructor.
Property Overview
Name | Type | Summary | Class | |
---|---|---|---|---|
Collection<Basemap> | A collection of Basemaps fetched from the source's Portal. more details | more details | PortalBasemapsSource | |
String | The name of the class. more details | more details | Accessor | |
BasemapFilter | Function used to filter basemaps after being fetched from the Portal. more details | more details | PortalBasemapsSource | |
Portal | The Portal from which to fetch basemaps. more details | more details | PortalBasemapsSource | |
Object|String | An object with key-value pairs used to create a custom basemap gallery group query. more details | more details | PortalBasemapsSource | |
String | The source's state. more details | more details | PortalBasemapsSource | |
UpdateBasemapsCallback | Callback for updating basemaps after being fetched and filtered. more details | more details | PortalBasemapsSource |
Property Details
- basemaps Collection<Basemap>
A collection of Basemaps fetched from the source's Portal.
- Since: ArcGIS API for JavaScript 4.7
The name of the class. The declared class name is formatted as
esri.folder.className
.
- filterFunction BasemapFilter
Function used to filter basemaps after being fetched from the Portal.
- portal Portal
The Portal from which to fetch basemaps.
- Since: ArcGIS API for JavaScript 4.5
An object with key-value pairs used to create a custom basemap gallery group query. Note that all parameters will be joined using the
AND
operator. A query string can also be provided for more advanced use cases.Examples:// query portal basemaps with an object var source = new PortalBasemapsSource({ query: { title: "United States Basemaps", owner: "Esri_cy_US" } });
// query portal basemaps with a string var source = new PortalBasemapsSource({ query: "title:\"United States Basemaps\" AND owner:Esri_cy_US" });
- state Stringreadonly
The source's state.
Possible Values:"not-loaded"|"loading"|"ready"
- Default Value:not-loaded
- updateBasemapsCallback UpdateBasemapsCallbackSince: ArcGIS API for JavaScript 4.8
Callback for updating basemaps after being fetched and filtered. This can be useful if you want to add a custom basemap after fetching the portal basemaps.
Method Overview
Name | Return Type | Summary | Class | |
---|---|---|---|---|
Refreshes basemaps by fetching them from the Portal. more details | more details | PortalBasemapsSource |
Method Details
- refresh()
Refreshes basemaps by fetching them from the Portal.
Type Definitions
- BasemapFilter(item, index, array){Boolean}
This function is used by the filterFunction property to filter basemaps after they are fetched from the Portal.
Parameters:item BasemapThe current Basemap item being assessed in the array.
index NumberThe index of the Basemap being assessed.
The array of of basemaps being filtered.
Returns:Type Description Boolean - Returns true if the test passes, false otherwise.
This function is used by the updateBasemapsCallback property for updating basemaps after being fetched and filtered.
Parameter:An array of basemaps that have been fetched and filtered from the Portal.
Returns:Type Description Basemap[] The array of basemaps to display in the BasemapGallery widget. Example:var basemapGallery = new BasemapGallery({ view: view, source: { query: { title: "United States Basemaps", owner: "Esri_cy_US" }, updateBasemapsCallback: function(items) { // create custom basemap to be added to the array of portal basemaps var bm = new Basemap({ portalItem: { id: "8dda0e7b5e2d4fafa80132d59122268c" // WGS84 Streets Vector webmap } }); // add basemap to the array items.push(bm); // return the array of basemaps return items; } } });