Constructs a Legends LayerSet to manage layers legends.
The map viewer
The controller registry
The layer domain
ProtectedcontrollerThe controller registry to work with
ProtectedlayerThe LayerDomain to work with
ProtectedmapThe MapViewer to work with
A quick getter to help identify which layerset class the current instance is coming from.
The constructor name of the current layerset class instance
ProtectedgetGets the MapId for the layer set.
The map id
Gets the registered layer config paths based on the registered layer configs.
An array of layer config paths
Gets the registered layer paths based on the registered layers.
An array of layer paths
Unregisters a layer config registered event callback.
The callback to stop being called whenever the event is emitted
Unregisters a layer registered event callback.
The callback to stop being called whenever the event is emitted
Unregisters a legend queried event handler.
The callback to stop being called whenever the event is emitted
Returns a promise that resolves the next time a layer config registered event fires.
Optionalfilter: (event: LayerConfigRegisteredEvent) => boolean
Optional filter predicate. When provided, only events passing the filter resolve the promise
A promise that resolves with the event payload when layer config registered fires (and passes the filter)
Returns a promise that resolves the next time a layer registered event fires.
Optionalfilter: (event: LayerRegisteredEvent) => boolean
Optional filter predicate. When provided, only events passing the filter resolve the promise
A promise that resolves with the event payload when layer registered fires (and passes the filter)
Registers a one-shot legend queried event handler that resolves a promise.
Optionalfilter: (event: LegendQueriedEvent) => boolean
Optional filter predicate to skip non-matching events without unsubscribing
A promise that resolves with the legend queried event
ProtectedonOverrides the behavior to apply when deleting from the store.
The layer path to delete from the store
Registers a layer config registered event callback.
The callback to be executed whenever the event is emitted
The callback delegate that was registered
Registers a layer registered event callback.
The callback to be executed whenever the event is emitted
The callback delegate that was registered
Registers a legend queried event handler.
The callback to be executed whenever the event is emitted
ProtectedonOverrides the behavior to apply when a legends-layer-set wants to register a layer in its set.
The layer
ProtectedonOverrides the behavior to apply when an all-feature-info-layer-set wants to check for condition to register a layer in its set.
The layer
True when the layer should be registered to this legends-layer-set
ProtectedonOverrides the behavior to apply when a legends-layer-set wants to register a layer in its set.
The layer config
ProtectedonOverrides the behavior to apply when an all-feature-info-layer-set wants to check for condition to register a layer in its set.
The layer config
True when the layer should be registered to this legends-layer-set
ProtectedonOverrides the behavior to apply when a legends-layer-set wants to unregister a layer in its set.
The layer config
ProtectedqueryProcesses layer data to query features on it, if the layer path can be queried.
The geoview layer
The query type
The location for the query
Optional whether to query geometry
The display language to use for the query
OptionalabortController: AbortController
Optional abort controller
A promise that resolves with the query results
Queries the legend for the given layer path.
Whether to force the query even if already queried
Registers the layer in the layer-set.
If the layer is already registered, the function returns immediately.
If the layer hasn't reached the loaded status yet, this method subscribes to the layer
config's status change event and waits until the status becomes loaded before registering.
This await is important when devs call this method directly to register ad-hoc layers.
The layer to register
A promise that resolves once the layer has been registered (or skipped)
Registers the layer config in the layer-set.
The layer config
ProtectedshouldChecks if a pixel coordinate should be queried for a layer considering swiper clipping.
The layer path to check
The pixel coordinate relative to the map viewport
True if the coordinate should be queried (not clipped by swiper)
Unregisters the layer config and layer from the layer-set.
The layer path
Waits for a layer config to be registered in the all-feature-info-layer-set.
This method returns a promise that resolves when the given layerPath is included in the registered layer config paths of the set.
The unique path identifying the layer to check for registration
A promise that resolves when the layer is registered
Waits for a layer config to be registered in the all-feature-info-layer-set.
This method returns a promise that resolves when the given layerPath is included in the registered layer config paths of the set.
The unique path identifying the layer to check for registration
A promise that resolves when the layer is registered
Waits for the legend of the given layer path to be queried.
Sync-checks the store first and resolves immediately when the legend query status is already queried.
Otherwise, subscribes to the legend-queried event and resolves when a valid legend payload arrives.
Payloads without a legend are ignored, and no data icon payloads are also ignored unless acceptNoData
is true, allowing the waiter to keep listening until a real legend is available.
The layer path to wait on
Optional flag. When true, a legend whose first icon is no data is treated as a valid resolution. Defaults to false
A promise that resolves once the layer legend has been queried
Protected StaticalignAligns records with information provided by OutFields from layer config.
This will update fields in and delete unwanted fields from the arrayOfRecords.
The layer entry config object
Features to delete fields from
Protected StaticisChecks if the layer is of queryable type based on its class definition.
The layer
True if the layer is of queryable type
Protected StaticisChecks if the layer config source is queryable.
The layer
True if the source is queryable or undefined
Protected StaticrecordsDetermines whether the retrieved feature info records contain real attribute fields
(i.e., key-value properties) or whether they were returned in a fallback
HTML/plain-text form, which commonly occurs with WMS GetFeatureInfo responses.
This is used primarily to detect when a WMS service cannot return structured
feature attributes and instead provides the feature data as a single HTML or
plain-text block.
Logic summary:
OgcWmsLayerEntryConfig):
html or plain_text, the method considers the response not
to contain actual fields.The layer configuration used to determine whether special WMS handling applies
The retrieved feature info entries representing attributes or raw text content
true if the feature info records contain real attribute fields;
false if they consist only of fallback HTML or plain-text content
A Layer-set working with the LayerSetController at handling a result set of registered layers and synchronizing events happening on them (in this case when the layers are going through the layer statuses and legend querying) with a store for UI updates.