UNPKG

@arcgis/core

Version:

ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API

67 lines (65 loc) 2.36 kB
import type { JSONSupport } from "../../core/JSONSupport.js"; /** @since 5.0 */ export interface DynamicMapLayerProperties extends Partial<Pick<DynamicMapLayer, "gdbVersion" | "mapLayerId">> {} /** * A dynamic map layer refers to a layer published in a map service that has * dynamic layers enabled. * This layer type may be used to create multiple [Sublayer.sublayers](https://developers.arcgis.com/javascript/latest/references/core/layers/support/Sublayer/#sublayers) * that point to the same service layer, but are assigned different definition * expressions, renderers, and other properties. * * @since 5.0 * @see [Sample - MapImageLayer: create dynamic map layers](https://developers.arcgis.com/javascript/latest/sample-code/layers-dynamicmaplayer/) * @see [ArcGIS REST API - Dynamic map layer](https://developers.arcgis.com/rest/services-reference/enterprise/layer-source-object/#dynamic-map-layer) * @example * // Creates two sublayers that point to the same map service layer. * // Each layer presents different features in the data using * // definition expressions and renderers. * let mapImageLayer = new MapImageLayer({ * sublayers: [{ * id: 10, * definitionExpression: "POP < 50000", * renderer: { * type: "class-breaks" // autocasts as new ClassBreaksRenderer() * // set renderer properties here * }, * source: { * type: "map-layer", * mapLayerId: 0 * } * }, { * id: 11, * definitionExpression: "GRADUATED_HS > 0.449", * renderer: { * type: "class-breaks" // autocasts as new ClassBreaksRenderer() * // set renderer properties here * }, * source: { * type: "map-layer", * mapLayerId: 0 * } * }] * }); */ export default class DynamicMapLayer extends JSONSupport { constructor(properties?: DynamicMapLayerProperties); /** * An optional property for specifying the GDB version. * * @since 5.0 */ accessor gdbVersion: string; /** * The [Sublayer.id](https://developers.arcgis.com/javascript/latest/references/core/layers/support/Sublayer/#id) of the service sublayer. * * @since 5.0 */ accessor mapLayerId: number; /** * This value is always `map-layer` and is inferred when * the `mapLayerId` property is set. * * @since 5.0 */ get type(): "map-layer"; }